@charset "UTF-8";
html {
	scroll-behavior: smooth;
}

body {
	font-family: "Noto Sans JP", sans-serif!important;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;	
	font-size: 14px;
	color: #000;
	background-color: #fff;
	letter-spacing: normal;
	width: 100%;
	overflow-x: hidden;
	line-height: 1.7!important;
}

body a {
	color: #131313;
	text-decoration: none;
	-webkit-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}

h1 {
	
}

h2 {
	
}

h3 {
	
}

#move_header{
	display:none;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	background-color: #FF716E;
}

#move-page-top{
   color:#ccc;
   text-decoration:none;
   display:block;
   cursor:pointer;
}

.grecaptcha-badge { visibility: hidden; }

.contact_kome{
	text-align: right;
	margin-top: 30px;
	font-size: 12px;
	color: #666;
}

.pc_none{
	display: none;
}

.tb_none{
	display: none;
}

.slash{
	width:100%;
	height:0px;
    position:relative;
    clear:both;
}

.link{
	margin-top: -100px;
	padding-top: 100px;
}

.no_br{
	display: none;
}

.link_anchor{
	margin-top: -78px;
	padding-top: 78px;
}

.header_lang{
	padding-left: 20px;
	color: #fff;
}

.lang_link{
	color: #fff;
}

.text_center{
	text-align: center;
}

/*==========================================================================
= header
========================================================================== */

header{
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 999;
}

.header_container{
	display: flex;
	justify-content: space-between;
	padding-top: 30px;
}

.header_center{
	width: 20%;
	text-align: center;
}

.header_left{
	width: 40%;
	padding: 0px 4%;
	box-sizing: border-box;
}

.header_right{
	width: 40%;
}

@media screen and (max-width: 1299px) {

.header_right .header_lang{
	display: none;
}

.header_right .header_sns_icon{
	display: none;
}

}
	
.header_nav{
	display: flex;
	justify-content: flex-start;
    height: 113px;
    align-items: center;
}

.header_menu{
	padding: 3% 2%;
}

.header_key{
	color: #fff;
}

.header_center img {
	max-width: 150px;
	margin: auto;
	font-size: 0;
}

.header_sns_icon{
	width: 25px;
	margin-left: 20px;
	margin-right: 10px;
}

.first_view_left_top{
	width: 22%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 30;
}

.first_view_left_strawberry{
	width: 20%;
	max-width: 350px;  
	position: absolute;
	top: 120px;
	left: 4%;
	z-index: 35;
}

.first_view_left_top_text{
	width: 48%;
	max-width: 240px;
	position: relative;
	margin-top: 10px;
	z-index: 35;
}

.first_view_right_top{
	width: 12.5%;
	max-width: 200px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 20;
}

.first_view_right_catch{
	position: absolute;
        right: 10%;
        top: 50%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        color: #fff;
        width: 22%;
        z-index: 40;
}

.first_view_btm_text{
	width: 22%;
        min-width: 250px;
        position: absolute;
        -ms-transform: translateX(-50%);
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 45;
}



/*==========================================================================
= section
========================================================================== */

.top01{
	background-color: #D40D0D;
	position: relative;
	/*padding: 30px 0px 120px;*/
}

.top02{
	padding: 70px 0px;
}


.top03{
	padding: 50px 0px;
	background: url("../images/main/03_bg.webp")no-repeat;
	background-size: cover;
}

.top04{
	border-bottom-left-radius: 50%;
	border-bottom-right-radius: 50%;
	overflow: hidden;
	color: #fff;
	text-align: center;
}

.top04_bg{
	clip-path: inset(0);
	padding-bottom: 15%;
}

.top04_bg::after{
	content: '';
  position: fixed;
  top: 0;
  left: 0;
  z-index: -10;
  width:100%;
  height:100%;
	background-image: url("../images/main/04_bg.webp");
  background-repeat: no-repeat;
  background-size: cover;
}

.top05{
	padding: 50px 0px 70px;
}

.top06{
	padding: 50px 0px 0px;
	background: url("../images/main/05_bg.webp")no-repeat;
	background-size: cover;
}

.top07{
	background-color: #D40D0D;
	padding: 30px 0px 60px;
}


/*==========================================================================
= all
========================================================================== */

.main_container{
	width: 100%;
	max-width: 90vw;
	margin: 0 auto;
}

.main_container2{
	width: 100%;
	max-width: 1040px;
	margin: 0 auto;
}

.color_line01{
	position: relative;
	border-bottom: 6px solid #FF716E;/*真ん中*/
}

.color_line01::before{
  content: '';
  position: absolute;
  bottom: -6px;
  width: 33.3%;
  height: 6px;
  background: #E8EB81;/*左*/
}
.color_line01::after{
  content: '';
  position: absolute;
  right: 0;
  bottom: -6px;
  width: 33.3%;
  height: 6px;
  background: #1C9F16;/*右*/
}

.color_line02{
	position: relative;
	border-bottom: 6px solid #FF716E;/*真ん中*/
}
.color_line02::before{
  content: '';
  position: absolute;
  bottom: -6px;
  width: 33.3%;
  height: 6px;
  background: #1C9F16;/*左*/
}
.color_line02::after{
  content: '';
  position: absolute;
  right: 0;
  bottom: -6px;
  width: 33.3%;
  height: 6px;
  background: #E8EB81;/*右*/
}



/*----------------------------------
= 001
----------------------------------*/
.full_width_container{
	width: 100vw;
	padding: 40px 0 70px;
	box-sizing: border-box;
	position: relative;
	z-index: 40;
}

.movie_container {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie_container iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

.top_01_bg{
	position: absolute;
	width: 15%;
	right: 0;
	bottom: 0;
	z-index: 30;
}

/*----------------------------------
= 002
----------------------------------*/

.top02_container{
	position: relative;
}

.top02_main_container{
	display: flex;
	margin-bottom: 40px;
	margin-top: 50px;
	align-items: center;
	position: relative;
	z-index: 20;
}

.top02_main_image{
	width: 60%;
	position: relative;
}

.top02_logo{
	margin-left: 4%;
	width: 25%;
}

.top02_bg{
	        position: absolute;
        top: 10%;
        left: 14%;
        width: 82%;
        height: 64%;
        border-radius: 25px;
        background-color: #FFD8D9;
	z-index: 10;
}

.top02_main_catch{
	position: absolute;
    width: 6%;
    min-width: 100px;
    top: -60px;
    left: 6%;
	z-index: 30;
}

.top02_point_container{
	width: 80%;
	margin-left: auto;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 40;
}

.top02_point{
	width: 32%;
	position: relative;
}

.top02_point_title{
	font-size: 24px;
	text-align: center;
	margin: 15px 0px;
	font-family: "Mochiy Pop P One", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 7px;
}

.top02_point_text{
	
}

.top02_point_num{
	position: absolute;
	width: 70px;
	top: -20px;
	left: -10px;
}

/*----------------------------------
= 003
----------------------------------*/

.top03_title{
	text-align: center;
	font-size: 32px;
	color: #fff;
	margin-bottom: 15px;
	font-family: "Mochiy Pop P One", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 7px;
}

.top03_text{
	text-align: center;
	font-size: 16px;
	margin-bottom: 40px;
}

.top03_container{
	max-width: 800px;
	margin: auto;
	background-color: #fff;
	padding: 30px 40px 40px;
	border: solid 8px #FF716E;
	box-sizing: border-box;
	margin-bottom: 35px;
	border-radius: 10px;
}

.top03_container_title{
	font-size: 26px;
	text-align: center;
	margin-bottom: 25px;
	font-family: "Mochiy Pop P One", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 7px;
}

.top03_calendar{
	margin-bottom: 15px;
}

.top03_container_inbox{
	max-width: 600px;
	margin: auto;
	text-align: center;
	background-color: #FFF2F2;
	border-radius: 20px;
	padding: 30px 20px;
	box-sizing: border-box;
	border: solid 2px #ff716e;
	margin-bottom: 60px;
}

.top03_container_inbox2{
	max-width: 500px;
	margin: auto;
	text-align: center;
	padding: 0px 20px 25px;
	box-sizing: border-box;
	border: solid 2px #ff716e;
	border-radius: 20px;
}

.top03_inbox_title{
	font-size: 28px;
	color: #D40C0D;
	margin-bottom: 20px;
	font-family: "Mochiy Pop P One", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 4px;
}

.top03_inbox_title::before {
    content: "";
    display: inline-block;
    width: 36px;
    height: 36px;
    background: url("../images/main/03_strawberry.webp") no-repeat;
    background-size: contain;
    margin-right: 10px;
    transform: translateY(6px);
}

.top03_inbox_title::after {
    content: "";
    display: inline-block;
    width: 36px;
    height: 36px;
    background: url("../images/main/03_strawberry.webp") no-repeat;
    background-size: contain;
    margin-left: 10px;
    transform: translateY(6px);
}

.top03_inbox_title2{
	font-size: 24px;
    background-color: #fff;
    position: relative;
    top: -25px;
    display: inline-block;
    padding: 5px 20px;
	font-family: "Mochiy Pop P One", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 7px;
}

.top03_inbox_title2::before {
    content: "";
    display: inline-block;
    width: 26px;
    height: 26px;
    background: url("../images/main/03_strawberry.webp") no-repeat;
    background-size: contain;
    margin-right: 10px;
    transform: translateY(4px);
}

.top03_inbox_title2::after {
    content: "";
    display: inline-block;
    width: 26px;
    height: 26px;
    background: url("../images/main/03_strawberry.webp") no-repeat;
    background-size: contain;
    margin-left: 10px;
    transform: translateY(4px);
}

.top03_container_price{
	font-size: 24px;
	line-height: 2;
	margin-bottom: 20px;
	font-weight: 800;
}

.top03_container_price2{
	font-size: 22px;
	margin: 10px 0px;
	font-weight: 800;
}

.top03_container_text{
	font-size: 18px;
	font-weight: 600;
}

.top03_container_textY{
	font-size: 18px;
	font-weight: 600;
	margin-top: -10px;
}

.top03_comingsoon_text{
	font-size: 18px;
	font-weight: 600;
	text-align: center;
	margin-bottom: 20px;
}

.top03_container_text2{
	font-size: 18px;
	line-height: 2;
}

.top03_container_text3{
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 10px;
}

.red_text{
	color: #D40C0D;
	font-weight: 600;
}

.top03_small{
	font-size: 18px;
	font-weight: 600;
}

.top03_container_inner{
	margin-bottom: 60px;
	text-align: center;
}

.top03_rsrv{
	max-width: 500px;
	margin: auto;
	margin-bottom: 30px;
}

.top03_rsrv:hover{
	position: relative;
	top: 2px;
	left: 2px;
}

.top03_contact{
	font-size: 18px;
        margin: auto;
        margin-top: 10px;
        border: solid 1px #FFD8D9;
        padding: 7px 0px;
        width: 350px;
        border-radius: 10px;
        background-color: #FFF2F2;
}

.top03_contact:hover{
	position: relative;
	top: 2px;
	left: 2px;
}

.top03_contact::after {
        content: "";
        display: inline-block;
        width: 18px;
        height: 18px;
        background: url(../images/main/03_next.png) no-repeat;
        background-size: contain;
        margin-left: 12px;
        transform: translateY(3px);
    }

.top03_cards{
	width: 400px;
	margin: auto;
	margin-top: 30px;
}

.top03_rule_box{
	border: dashed 2px #ff716e;
	border-radius: 20px;
	padding: 25px;
	text-align: left;
}

.top03_rule_title{
	font-size: 18px;
	margin-bottom: 10px;
}

.top03_rule_title2{
	font-size: 18px;
	margin-bottom: 10px;
	margin-top: 20px;
}

.top03_rule_inner{
	display: flex;
	justify-content: space-between;
}

.top03_rule_inner_text{
	width: 50%;
}

.top03_rule_inner_img{
	width: 48%;
	font-size: 0;
}



/*----------------------------------
= 004
----------------------------------*/
.top04_logo{
	padding-top: 15%;
	width: 250px;
	margin: auto;
}

.top04_title{
	font-size: 34px;
	margin-top: 20px;
	margin-bottom: 20px;
}

.top04_subtitle{
	font-size: 21px;
	margin-bottom: 15px;
}

.top04_text{
	line-height: 2;
}

/*----------------------------------
= 005
----------------------------------*/
.top05_title{
	text-align: center;
    font-size: 32px;
    margin-bottom: 20px;
	font-family: "Mochiy Pop P One", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 7px;
}

.color_red{
	color: #FF716E;
	font-size: 32px;
}

.slider .img{
	width: 100%;
	margin: 15px;
	border-radius: 20px;
	overflow: hidden;
}

.slider{
	margin-bottom: 30px;
}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
	z-index: 200;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

/*----------------------------------
= 006
----------------------------------*/

.top06_top_right{
	width: 50%;
	float: right;
}

.top06_top_left{
	width: 46%;
	float: left;
}

.top06_biei{
	width: 50%;
        min-width: 165px;
        margin-left: -15%;
        margin-bottom: -5%;	
}

.top06_title{
	font-size: 24px;
	margin-bottom: 30px;
}

.top06_subtitle{
	font-size: 18px;
	margin-bottom: 20px;
}

.top06_text{
	line-height: 2;
}

.top06_btm_container{
	margin-top: 50px;
	margin-bottom: 70px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.top06_btm_title{
	width: 18%;
	font-size: 22px;
	margin-left: 2%;
}

.top06_btm_town{
	
}

.top06_btm_townno{
	display: inline-block;
}

.top06_spot{
	width: 25%;
}

.top06_spot_cap{
	text-align: center;
	margin-top: 10px;
}



/*----------------------------------
= 007
----------------------------------*/

.top07_text{
	text-align: center;
	font-size: 16px;
	margin: 10px 0px 15px;
	color: #fff;
}

.top07_map{
	max-width: 960px;
	margin: auto;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 25%;
	border-radius: 20px;
	overflow: hidden;
}

.top07_map iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

.top07_container{
	max-width: 960px;
	margin: auto;
	background-color: #fff;
	padding: 30px 40px;
	margin-top: 25px;
	border-radius: 20px;
	background-image: repeating-linear-gradient(90deg, #ffd9d8, #ffd9d8 14px, #D40D0D 14px, #D40D0D 21px), repeating-linear-gradient(180deg, #ffd9d8, #ffd9d8 14px, #D40D0D 14px, #D40D0D 21px), repeating-linear-gradient(90deg, #ffd9d8, #ffd9d8 14px, #D40D0D 14px, #D40D0D 21px), repeating-linear-gradient(180deg, #ffd9d8, #ffd9d8 14px, #D40D0D 14px, #D40D0D 21px);
  background-position: left top, right top, left bottom, left top;
  background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
  background-size: 100% 4px, 4px 100%, 100% 4px, 4px 100%;
}

.top07_container_inner{
	margin-bottom: 25px;
}

.top07_container_title{
	font-size: 18px;
	color: #D40C0D;
	font-weight: 400;
	margin-bottom: 10px;
}

.top07_container_table{
	width: 100%;
}

.top07_container_table_tr{
	border-bottom: solid 2px #FFD9D8;
	display: flex;
}

.top07_container_table_tr2{
	border-bottom: solid 1px #333;
	display: flex;
}

.top07_container_table_td1{
	width: 20%;
	padding: 15px 20px;
}

.top07_container_table_td2{
	width: 80%;
	padding: 15px;
}

.top07_container_table_td3{
	width: 80%;
	padding: 15px;
	position: relative;
}

.top07_container_table_td3::after {
    content: "";
   position: absolute;
	right: 32.5px;
	top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 25px;
    height: 25px;
    background: url("../images/main/car_icon.webp") no-repeat;
    background-size: contain;
}

.top07_container_table_td4{
	width: 80%;
	padding: 15px;
	position: relative;
}

.top07_container_table_td4::after {
    content: "";
   position: absolute;
	right: 20px;
	top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 50px;
    height: 25px;
    background: url("../images/main/train_icon.webp") no-repeat;
    background-size: contain;
}

.top07_small{
	font-size: 12px;
}

.original-border {
  width: 280px;
  height: 100px;
  border-radius: 20px;
  background-color: #FFFFFF;
  border: 4px dashed #FFD9D8;
}

.top07_container_img{
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}

.top07_img{
	width: 32%;
}

.staff_photo{
	max-width: 960px;
	margin: auto;
	margin-top: 40px;
}

/*==========================================================================
= footer
========================================================================== */

footer{
	background-color: #131313;
	color: #fff;
	padding: 30px 0px;
}

.footer_logo{
	width: 120px;
	margin: auto;
}

.copy{
	text-align: center;
	font-size: 12px;
	padding: 15px 0px;
	background-color: #131313;
	color: #fff;
}

.sp_kotei_rsrv{
	display: none;
}

.pc_kotei_rsrv{
	position: fixed;
	right: 0px;
	width: 200px;
	bottom: 30px;
	z-index: 9999;
}

/*==========================================================================
= contact
========================================================================== */

.sub_header{
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	background-color: #FF716E;
}

.sub_header_container{
	display: flex;
	justify-content: space-between;
	padding: 12px 40px;
	align-items: center;
}

.sub_header_logo{
	width: 280px;
}

.sub_header_navi{
	        display: flex;
        justify-content: right;
        width: 100%;
}

.sub_header_menu{
	padding: 0 2%;
}



.contact_header{
	font-size: 0;
	margin-top: 72px;
}

.contact_header_title{
	background-color: #FFD8D9;
	padding: 20px 0px;
	font-size: 30px;
        text-align: center;
        font-family: "Mochiy Pop P One", sans-serif;
        font-weight: 400;
        font-style: normal;
}

.contact_sec{
	padding: 60px 0px;
}

.contact_container{
	max-width: 800px;
	margin: auto;
}

.formTable{
	width: 100%;
	table-layout: fixed;
}


table.formTable tr {
	margin-bottom: 15px;
}

table.formTable th {
	width: 25%;
        text-align: left;
        vertical-align: middle;
        padding: 10px;
        background-color: #eee;
	font-size: 15px;
}

table.formTable td{
	        width: 75%;
        vertical-align: middle;
        padding: 10px 15px;
}

table.formTable td textarea{width: 100%;padding: 5px;}
.formTableTd input{width: 100%;padding: 5px;}

.require{
	background-color: #FF716E;
	color: #fff;
	display: inline-block;
	padding: 0px 5px;
	font-size: 12px;
	margin-right: 5px;
	border-radius: 15px;
}

.form_submit{
	        width: 200px;
        text-align: center;
        color: #fff;
        background-color: #FF716E;
        padding: 10px 0px;
        border-radius: 30px;
        margin: auto;
        font-size: 16px;
        margin-top: 20px;
        border-style: none;
        letter-spacing: 16px;
        text-indent: 16px;
}

.f_radio{
	 margin-top: 30px;
	text-align: center;
}

.policy_agree{
	width: 150px;
	text-align: center;
	margin: auto;
}

.policyMail{
	border: 1px solid #333;
	padding: 20px;
	width: 80%;
	margin: auto;
	height: 300px;
	overflow: auto;
}

.policyText{
	text-align: center;
	font-size: 16px;
	margin-top: 30px;
	margin-bottom: 20px;
}