@charset "utf-8";

/* CSS Document */

html { -webkit-text-size-adjust: 100%; }
body {
	color:#333333; font-size: 16px; line-height: 1.6; font-weight:500;
	font-family: 'Noto Sans JP',"Yu Gothic", "Meiryo", "Hiragino Kaku Gothic ProN", sans-serif;
	margin: 0 auto; height: 100%; overflow-x:hidden;
}
*{ font-family: inherit; }
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box;-o-box-sizing: border-box;  -ms-box-sizing: border-box;box-sizing: border-box;}

img { border: none; vertical-align: bottom; max-width:100%;}

address, em { font-style: normal; }

a { color: #333; text-decoration: none; }

a:hover, input[type="submit"]:hover, input[type="reset"]:hover {
	opacity: 0.9; filter: alpha(opacity=90); -ms-filter: "alpha( opacity=90 )";
}

.position_r { position:relative; }
.position_a { position:absolute; z-index:0 }

dd {margin-left:0;}

/*********** class ****************************************/

.c-both { clear: both; }
.clearfix:after { content: ""; clear: both; display: block; }
.left { float: left; }
.right { float: right; }
.center { display: block; margin-left: auto; margin-right: auto; text-align: center; }
.txt_right { text-align:right; }

.flex {display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;justify-content: space-between;}
.height {justify-content: space-between; flex-wrap: wrap; align-items: stretch;}
.flex.wrap {flex-wrap: wrap;}

.fit { object-fit: cover; font-family: 'object-fit: cover;'; max-width: 100%; }

.inner {width: 96%; max-width: 1700px; margin: 0 auto;}
.middle_inner {width: 96%; max-width: 1380px; margin: 0 auto; z-index:1;}
.low_inner {width: 96%; max-width: 1050px; margin: 0 auto; z-index:1;}
.half_i {width:48.5%;}
figure.half_i, .half_i figure {margin-left:0; margin-right: 0;}
.middle_inner .half_i {max-width:660px;}
.middle_inner .half_i .half_i {max-width:320px;}

dl.table { display:table; width:100%; }
dl.table dt,dl.table dd { display:table-cell; }
dl.item dd {margin-left:1em;}

.pc { display: unset; }
.sp { display: none; }

.red {color:#ED331F;}
.dark_green {color:#004C33;}
.bg_white {background-color:#FFF;}

.oswald {font-family: "Oswald", sans-serif;}
.sipp {font-family: 'Shippori Mincho', serif;}

.fs15 {font-size:0.9375em;}
.fs18 {font-size:1.125em;}
.fs21 {font-size:1.3125em;}
.fs25 {font-size: 1.5625em;}
.fs30 {font-size:1.875em;}

.fw900 {font-weight: 900;}

.indent {text-indent:-1em; padding-left:1em;}
span.indent {display:block;}

hr {background-color:#BBBBBB; height:1px; width:100%; border:none;}
.hr_1 {background-color:#C9DDC1;}
.hr_2 {background-color:#7EA196;}
.hr_3 {background-color:#004E35;}
.hr_4 {background-color:#A8D27F;}

span.caution {margin-top:7px; margin-bottom:10px;}

.fw_mid {font-size:500;}

.strapline {font-size:18px; font-weight:700;}
.catch,.slug {font-size:2.5em; font-weight: 900;}
.catch .small {font-size:0.75em; color:#52A500; display:block;}
.slug {color:#FFF; position:relative;}
.slug .small {padding-top: 0; font-size:0.6em; display: block;}
.slug::before {position:absolute; top:-20px; left: 0; right: 0; margin: auto; content:""; width:120px; height:2px; background-color:#FFF; }
.sub_catch {font-size:1.5em; font-weight: 900; color:#004C33;}
.ttl {font-size:1.875em; font-weight: 900; position: relative;}
.ttl2::before { position:absolute; top:-20px; left: 0; right: 0; margin: auto; content:""; width:100px; height:2px; background-color:#52A500; font-weight: 900;}
.ttl3 {font-size:1.6875em; font-weight:900; color:#004C33; border-bottom:1px solid #77AB61; padding-bottom:0.2em; margin-top: 2em; margin-bottom: 1em;}
.ttl3.u_line {border-top:1px solid #77AB61; padding-top:0.1em;}
.ttl3.no_line {border-bottom: none;}
.ttl3 i {margin-right:0.25em;}
.ttl4 {color:#52A500;font-size:1.5em; padding-bottom: 0.5em; margin-top: 1.5em; margin-bottom: 0.5em; font-weight: 900;}
.ttl4 i {color:#004C33; margin-right:0.25em;}
.ttl .sub {font-size:14px; color:#52A500; display:block;}
.ttl .small {font-size:0.8em; color:#004C33; display: block;}
.ttl2 .small {font-size:0.6em; color:inherit; display: block;}
.sub_ttl {font-size:1.5625em; font-weight: 900; color: #FFF; background-color:#004E35; padding:0.25em 0.5em; margin-top: 2.25em;}
.sub_ttl i {margin-right:0.35em;}
.sub_ttl .small {font-size:0.75em;}

.btn2 {background-color:#F37365; color:#FFF; border: 1px solid #F37365; padding: 0.5em; box-sizing: border-box; font-size:1.0625em; font-weight:900; text-align:center; border-radius:4px; position: relative;}
.btn2_on {background-color:#FFF; color:#F37365;}
.btn2 i {position:absolute; top:calc(50% - 0.53125em); right:0.5em; font-size:1.118em;}
.btn3, .btn4 {width:480px; color:#FFF; padding:0.65em 0.5em; box-sizing: border-box; font-size:1.0625em; font-weight:900; border-radius:4px; display: block; max-width: 100%; position: relative; text-align: center;}
.btn3 {background-color:#F37365;}
.btn4 {background-color:#52A500;}
.btn3 i, .btn4 i {font-size:1.0588em; margin-right:0.25em;}
.btn3 i.fa-angle-right {position:absolute; top:calc(50% - 0.53125em); right:0.5em; font-size:1.118em;}
.btn5 {background-color:#F37365; width:640px; color:#FFF; padding:0.85em 0.5em; box-sizing: border-box; font-size:1.125em; font-weight:900; border-radius:4px; display: block; max-width: 100%;}
.btn5 i {font-size:1.111em; margin-right:0.25em;}
.btn6 {color:#004D34; background-color:#FFF; border: 1px solid #004D34; box-sizing: border-box; font-size: 0.9375em; text-align: center; border-radius:4px; display: block; width:48%; position: relative; padding: 0.25em;}
.btn6 i.fa-angle-right {position:absolute; top:calc(50% - 0.53125em); right:0.5em; font-size:1.118em;}
.btn7 {color:#FFF; background-color:#F37365; text-align: center;  border-radius:4px; display: block; width:48%; position: relative; padding: 0.35em 0.25em; font-weight: 900;}
.btn7 i.fa-angle-right {position:absolute; top:calc(50% - 0.5em); right:0.5em;}
.btn8 {font-size:1.067em; color:#FFF; background-color:#F37365; border-radius:4px; font-weight:900; padding: 0.5em; position: relative; caret-color: transparent;}
.btn8 i {font-size:1.125em; position:absolute; top:calc(50% - 0.5625em); right:0.5em;}

.decimal {padding-left:1.5em;}
.decimal li {margin-top: 0.25em;}
.btn_box {width: 100%; max-width: 1010px; margin: 1.5em auto 0 auto; z-index:1;}
.frame_box {border:1px solid #004E35; padding:0.5em 2%; box-sizing: border-box;}
.frame_box.no_side {border-left: none; border-right: none;}
.img_box figcaption {margin-top: 0.75em;}
.pc_space1 {margin-left: 1em;}
.pc_space0_5 {margin-left: 0.5em;}
.no_margin {margin:0;}
.fill_gap {margin-top: 0;}
.no_border {border:none;}

/*********** header ****************************************/
header#header { position:fixed; z-index: 99; width: 100%; height:140px; background-color: #FFF; }
header#header #header_logo { width:420px; }
header#header #header_logo p { margin:12px 0 12px 0; }
header#header .glob1 { width: 890px; padding-top:68px; }

header#header .glob1 a.prepared { position:relative; pointer-events: none; }
header#header .glob1 a.prepared::after { content:"準備中"; pointer-events: none; position:absolute; bottom:-21px; left:calc(50% - 1.5em); }
header#header .glob1 a.active {color: #004D34; border-bottom: solid 1px #004D34;}
header#header #menu_btn {
	position: relative; z-index: 9999; top:0; right:0; caret-color: transparent;
	cursor:pointer; background-color:#004E35; color:#FFF; width:200px; height:140px; text-align:center; padding:26px; margin-left:calc(70vw / 19.2);
}
header#header #menu_btn:hover {caret-color: transparent; cursor:pointer;}
header#header #menu_btn i { font-size:48px; }
header#header #menu_btn span { display:block; margin-top:10px; }

#menu_btn .initial { display:block; }
#menu_btn .change { display:none; }
#menu_btn.active .initial { display:none; }
#menu_btn.active .change { display:block; }

/****** navi ********/
.zdo_drawer_bg {
	display: none; width: 100%;height: 100%;
	position: fixed;top: 0;left: 0;z-index: 9998; overflow-y: scroll;
	background-color: rgba(252, 237, 242, 0.8);
}

.zdo_drawer_bg .inner { background-color:#FFF; margin:140px auto 24px auto; padding:54px min(calc(160vw / 19.2),160px) 54px min(calc(160vw / 19.2),160px); font-weight: 600;}
.zdo_drawer_bg .inner ul.first { margin:0; padding:0; list-style-type:none; }
.zdo_drawer_bg .inner ul.first li { margin: 0 0 16px 0; padding:0; list-style-type:none; width:23.5%; }
.zdo_drawer_bg .inner ul.first li a { position:relative; font-size:18px; background-color:#FCF1F4; display:block; padding:16px; }
.zdo_drawer_bg .inner ul.first li a i { position:absolute; top: 16px; right:16px; color:#E16374; font-size:24px; }
.zdo_drawer_bg .inner ul.first li a.prepared::after { content:"準備中"; pointer-events: none; position:absolute; left:146px; }
.zdo_drawer_bg .inner ul.first::after { display: block; content:""; width:31.5%; }

.zdo_drawer_bg .inner p.cat { font-size:18px; color:#52A500; margin: 20px 0 12px 0; }
.zdo_drawer_bg .inner p.cat i { font-size:21px; }
.zdo_drawer_bg .inner ul.resort { margin:0; padding:16px; list-style-type:none; background-color:#FCF1F4; }
.zdo_drawer_bg .inner ul.resort li { display: inline-block; margin: 6px 25px 6px 0;}
.zdo_drawer_bg .inner ul.resort li a i {color:#E16374; margin-left:0.35em;}
.zdo_drawer_bg .inner ul.information { margin: 0; padding: 0 0 40px 0; list-style-type:none;}
.zdo_drawer_bg .inner ul.information li { width:320px; margin:0 0 16px 0; }
.zdo_drawer_bg .inner ul.information li a { position:relative; font-size:18px; background-color:#FCF1F4; display:block; padding:16px; }
.zdo_drawer_bg .inner ul.information li a i { position:absolute; top: 16px; right:16px; color:#E16374; font-size:24px; }
.zdo_drawer_bg .inner ul.information.flex::after {display: block;content:"";width:320px;}

.zdo_drawer_bg .inner .logo { mmargin-top:40px; padding-top: 25px;  border-top: solid 1px #BBBBBB; }
.zdo_drawer_bg .inner .glob3 { padding:20px 0 5px 0; }
.zdo_drawer_bg .inner .glob3 ul { margin:0; padding:0; }
.zdo_drawer_bg .inner .glob3 ul li { display:inline-block; padding:0 20px 0 20px; border-right:solid 1px #333; }
.zdo_drawer_bg .inner .glob3 ul li:last-child { border:none; }

/* contents_page */
header.page_greenseason { background-size:cover; height:425px; padding: 5.5em 0; background-position: center; box-sizing: border-box;}
header.page_greenseason .fv_inner {padding-top:2em;}
header.page_greenseason.tsugaike { background-image:url(../img/green_season/ticket/tsugaike_fv.jpg); }
header.page_greenseason.iwatake { background-image:url(../img/green_season/ticket/iwatake_fv.jpg); }
header.page_greenseason.happoone { background-image:url(../img/green_season/ticket/happoone_fv.jpg); }
header.page_greenseason.hakuba { background-image:url(../img/green_season/ticket/ticket_fv.jpg); }
header.page_greenseason.hakuba47 { background-image:url(../img/green_season/ticket/hakuba47_fv.jpg); }
header.page_greenseason.child { background-image:url(../img/green_season/course/child_fv.jpg); background-position: center 80%;}
header.page_greenseason.active { background-image:url(../img/green_season/course/active_fv.jpg); }
header.page_greenseason.relax { background-image:url(../img/green_season/course/relax_fv.jpg); }

/*********** main ****************************************/
main { padding-top:140px; }
main.page { background-color:#FDF4F7; padding-bottom:140px; }

section#fv { position:relative; height:min(calc(940vw /19.2),940px); }
section#fv .swiper-slide { background-position:center; background-size:cover; width:100%; height:100%; }
section#fv #fv_slider1 { background-image:url(../img/green_season/top/fv_slider/1.jpg); background-size:cover; width:100%; height:min(calc(940vw /19.2),940px); }
section#fv #fv_slider2 { background-image:url(../img/green_season/top/fv_slider/2.jpg); background-size:cover; width:100%; height:min(calc(940vw /19.2),940px); }
section#fv #fv_slider3 { background-image:url(../img/green_season/top/fv_slider/3.jpg); background-size:cover; width:100%; height:min(calc(940vw /19.2),940px); }
section#fv #fv_slider4 { background-image:url(../img/green_season/top/fv_slider/4.jpg); background-size:cover; width:100%; height:min(calc(940vw /19.2),940px); }
.swiper-button-prev, .swiper-button-next {display: none;}

section#fv .circle {
	position:absolute; top:17.5%; left:0; right:0; margin:auto; z-index: 10; text-align:center; border-radius:50%;
	background-color: rgba(0, 78, 53, 0.85); width:min(calc(320vw /19.2),320px); height:min(calc(320vw /19.2),320px);
}

section#fv .circle img.sum { width:min(calc(224vw /19.2),224px); margin: min(calc(50vw /19.2),50px) auto auto auto; }
section#fv::after { content:""; width:1px; height:160px; background-color:#E26375; position:absolute; bottom:-81px; left:0; right:0; margin:auto; z-index:10; }

/****** aside ********/
aside.pan { padding:35px 0 35px 0; }
aside.pan p { margin:0; }

/****** top ********/
section#top_service {padding:4em 0 3.5em 0;}
section#top_service .s_bgi {background-image:url(../img/green_season/top/ticket_bgi.png); background-size:contain; background-position: top center; background-repeat: no-repeat;}
section#top_service .ticket {width:48%; max-width:620px; margin-top:1.5em; margin-bottom: 2em;}
section#top_service .ticket_l, section#top_service .ticket_r {width:calc((100% - 480px) / 2);}
section#top_service .ticket:nth-of-type(2n) {margin-top: 4.25em;}
section#top_service .ticket dt, section#top_course .course dt {font-size:1.5em; font-weight:900; line-height: 1; margin-bottom:0.75em;}
section#top_service .ticket dt .upper, section#top_course .course dt .upper {font-size:14px; color:#52A500; display: block;}
section#top_service .ticket dt .number, section#top_course .course dt .number {font-size:2.5em; font-weight: 400; display: block; margin-bottom:0.15em;}
section#top_service .ticket dd {text-align: center;}
section#top_service .ticket .ticket_ttl {font-size:1.3125em; font-weight:900; color:#004C33; margin-top:0.5em; display: inline-block;}
section#top_service .ticket .ticket_ttl i {background-color:#004E35; color:#FFF; font-size:0.6em; display: inline-block; padding:0.75em; border-radius: 50%; margin-left:0.1em; position: relative; top:-0.5em;}
section#top_service .ticket .description {margin-top:0.35em; font-weight: 700; font-size: 1.125em;}
section#top_service .ticket dd.h_line {border-top:2px solid #53A600;} 
section#top_service .ticket .btn3 {margin-top:0.5em; max-width: 360px;}


/* top_course */
section#top_course {background-color: #FDF4F7; padding: 5.5em 0 5.5em 0;}
section#top_course .inner {padding: 7.5em 0 4.5em 0;}
dl.course {width: 30%; max-width: 400px;}
dl.course .txt_box {background-color: #FDF4F7; fong-size:1.125em; padding: 0.5em 4% 1.25em 4%; box-sizing: border-box; text-align: center;}
dl.course .txt_box p.text {margin-top: 0.5em;}
section#top_course::before { content:""; width:1px; height:10em; background-color:#E26375; position:absolute; top:2em;; left:0; right:0; margin:auto; z-index:10; }
section#top_course .top_course_img1 {top:-3em; left:calc(35vw / 19.2); width:calc(390vw / 19.2);}
section#top_course .top_course_img2 {top:-2em; right:calc(80vw / 19.2); width:calc(300vw / 19.2);}

/* serch */
section#search_box {background-image:url(../img/green_season/top/serch_bgi.jpg); background-size:cover; background-position: top center;  width:100%; padding:5em 0 5.5em 0;}
main.page section#search_box {background-image:none;padding:2.5em 0 5em 0;}
section#search_box .low_inner {max-width:1200px;}
section#search_box .inner_box {padding:0.5em 0 2em 0;}
main.page section#search_box .inner_box {padding:2em 0 2em 0;}
section#search_box form dl.table {max-width:890px; margin:1.85em auto;}
#search_box .box dl dt, #search_box form .undecided_label {color:#004D34; font-size:1.125em; font-weight:700;}
#search_box form .undecided_label {font-size:1em; display: inline-block; margin-left:0.25em;}
#search_box .box dl dt {width:7em;}

form input[type=text].datepicker {
	appearance: none;-webkit-appearance: none; -moz-appearance: none;
	border:solid 1px #9CABAF; background-color: #FFF7F7; width: 160px;padding: 5px 10px 5px 10px;
	font-size: 16px; border-radius:4px; cursor: pointer; position:relative; margin-right: 1em;
}

#search_box form select {
	border:solid 1px #9CABAF; background-color: #FFF7F7; width: 100%;padding: 5px 10px 5px 10px;
	font-size: 16px; border-radius:4px;
	position: relative; appearance: none;-webkit-appearance: none; -moz-appearance: none;
}

#search_box form .select_container {position: relative; width: 100%;}
#search_box form .select_datepicker_container { position: relative; width: 160px; display:inline-block; margin-left:5px; }
#search_box form .select_container::after,
#search_box form .select_datepicker_container::after {
	content: "\f107"; font-family:"Font Awesome 6 Pro";line-height: 1;
	position: absolute; top: 12px; right: 8px;color: #111111; pointer-events: none;
}

#search_box form input[type="checkbox"] {
	position: relative; appearance: none; -webkit-appearance: none; -moz-appearance: none;
	width: 18px; height: 18px; border:none;
	margin: 0; padding: 0; background:none; border-radius: 0; outline: none;	cursor: pointer; padding-left: 30px; vertical-align: middle;
}
#search_box form input[type="checkbox"]:checked::after { opacity: 1; }
#search_box form input[type="checkbox"]::before {
	content: ""; display: block; position: absolute;
	background-color: #FFF7F7; border-radius: 0%; border: solid 1px #9CABAF;
	width: 20px; height: 20px; transform: translateY(-50%); top: 50%; left: 5px;
}
#search_box form input[type="checkbox"]::after {
	content: ""; display: block; position: absolute;
	border-bottom: 2px solid #E26375; border-left: 2px solid #E26375; opacity: 0;
	height: 10px;width: 16px;transform: rotate(-45deg); top: 0;left: 9px;
}
#search_box form .ui-datepicker-trigger { margin-right:6px; }
#search_box form .undecided { margin:0.25em 0 0 2em; display: inline-block; /*vertical-align: top;*/}

form button.search {
	position: relative; appearance: none;-webkit-appearance: none; -moz-appearance: none; display: block; border:none; border-radius:100vmax;
	background-color:#F37365; color:#FFF; width:300px; height:60px; font-size:1.25em; margin: 20px auto 15px auto; cursor:pointer; font-weight: 900;
}
form button.search i {margin-right:0.5em;}
#search_box form .fa-calendar-days {font-size: 2em; vertical-align: middle; margin-right: 0.2em; color: #F37365;}

main.page section#search_box .frame_box  {padding:1.5em 2% 1.75em 2%;}
main.page section#search_box .frame_box .ttl3 {margin-top:0; margin-bottom: 0.5em;}
main.page section#search_box .frame_box .btn_box {width: 31%; max-width: 410px; margin: 0 auto; z-index:1;}
main.page section#search_box .frame_box .btn_box .ttl4 {margin-top:0; margin-bottom: 0.35em;}
main.page section#search_box .frame_box .btn_box .btn3 {width:46%; padding:0.35em 0.25em;}
main.page section#search_box .ttl2:nth-of-type(2) {margin-top:2.5em; margin-bottom: 0;}
main.page section#search_box .sub_catch {margin-top: 0;}

/* accomodation */
section#top_acc {padding:3em 0 6.5em 0;}
.acc_container {flex-wrap: wrap;}
dl.acc {width:30%; max-width:400px;}
dl.acc img.sum_s {width:48.75%; margin-top:0.4em;}
dl.acc dt.acc_ttl {font-size:1.3125em; font-weight: 900; color:#004D34; margin-bottom: 0.35em;}
dl.acc dt.acc_ttl .num {width: 1.7em; height: 1.7em; font-size: 0.7em; margin-right: 0.25em; background-color: #F0523F; color: #FFF;text-align: center;border-radius: 100vmax;line-height: 1.7em; aspect-ratio: 1/ 1; display: inline-block; margin-top: 0.25em;}
dl.acc dd.acc_outline {font-size:0.9375em; background-color:#FDF4F7;}
dl.acc dd.acc_outline .inner_box {padding: 0.5em 4% 1.25em 4%;}
dl.acc dd.acc_outline .description {min-height:4.65em; margin:0.5em 0;}
dl.acc dd.acc_outline ul.icon_list {margin-top: 0.45em; padding-left:0; list-style:none;}
dl.acc dd.acc_outline ul.icon_list li {font-size:0.93em; padding:0.25em 0.5em; display: inline; margin-right:0.25em;}
dl.acc dd.acc_outline ul.icon_list .icon1,section#top_acc dl.acc dd.acc_outline ul.icon_list .icon2 {background-color:#FFF; font-weight:700; border-radius:4px;}
dl.acc dd.acc_outline ul.icon_list .icon1 {color:#F37365; border:1px solid #F37365;}
dl.acc dd.acc_outline ul.icon_list .icon2 {color:#004F36; border:1px solid #004F36; border-radius: 4px; background-color: #FFF;}
dl.acc dd.acc_outline ul.access {padding-left:1em; margin-bottom:0.85em;}
dl.acc dd.acc_outline .btn_box .open {font-size:1.067em; color:#FFF; background-color:#F37365; border-radius:4px; font-weight:900; padding: 0.5em; position: relative;cursor: pointer;
caret-color: transparent;}
dl.acc dd.acc_outline .btn_box .open:hover {caret-color: transparent; cursor:pointer;}
dl.acc dd.acc_outline .btn_box .open i {font-size:1.125em; position:absolute; top:calc(50% - 0.5625em); right:0.5em; transition: all 0.5s;}
dl.acc dd.acc_outline .btn_box .active i{transform:rotate(180deg);}
dl.acc dd.acc_outline .btn_box .btn1 {color:#004C33; background-color:#FFF; border:1px solid #004C33; border-radius:4px; font-weight:900; padding: 0.4em; position: relative; display: block; width:100%; box-sizing: border-box; margin-top:0.5em; text-align: left;}
dl.acc dd.acc_outline .btn_box .btn1 i {font-size:1.067em; position:absolute; top:calc(50% - 0.535em); right:0.5em;}

dl.acc dd.acc_outline dl.select_btn {font-weight: 900;}
dl.acc dd.acc_outline dl.select_btn dt {margin-top: 0.75em; margin-bottom: 0.5em; font-size: 1.0625em;}

section.page_acc { margin:0.5em auto; padding: 3em 0 6em 0;}
section.page_acc .btn6 {color:#FFF; background-color:#F37365; border: 1px solid #F37365;}

/* top_bnr */
#top_bnr {padding-block: 2.25em 6em;}
#top_bnr .lower_inner {inline-size: min(1000px,70%);}
#top_bnr .bnr_box {margin-bottom:2em;}
#top_bnr .bnr_box .bnr_txt {font-size:1.125em; color: #1d1d1f; text-decoration: underline; margin-top: 0.45em;}
#top_bnr .bnr_img img {width:100%; max-width: 100%;}


/*********** contents_page ****************************************/
.page_navi {padding-top:2.5em;}
.page_navi .low_inner {max-width:1000px;}
section.page_navi .btn2 {width:48%; max-width:480px; margin-bottom:0.85em;}
section.course {background-color: #FFF; margin:3em auto; padding: 3em 0 6em 0;}
section.course .course_img {align-items:flex-start;}
section.course .course_img .half {width:49%; margin-bottom:0.25em;}
section.course .ticket {margin:4em 0 1em 0;}
section.course .schedule {margin:1.5em auto; font-weight:900;max-width: 890px;}
section.course .schedule dt {color:#52A500;font-size:1.125em; padding-bottom: 0.5em;} 
section.course .schedule dd {color:#F0523F; border-top:1px solid #F0523F; border-bottom:1px solid #F0523F; padding:0.5em 0; font-size:1.0625em;}
section.course .guide_map, section.course .map {background-color:#FFF7F7; padding:2em 0;}
section.course .guide_map {margin-top:1em;}

section.course .map_container {max-width:1280px;}
section.course .map_container iframe {height:400px;}
section.course .activity {align-items:flex-start;}
section.course .activity .act_ietm {width:28.9855%; max-width: 400px; margin:1em 0;}
section.course .activity2 .act_ietm {width:21.74%; max-width: 300px;}
section.course .activity .act_ietm dt {font-size:1.3125em; font-weight:900; color:#004C33;}
section.course .activity .act_ietm dd {position: relative; margin-top: 1.5em; margin-bottom:2em;}
section.course .activity .act_ietm dd::before { content:""; width:1px; height:50px; background-color:#59B200; position:absolute; top:-1em; left:0; right:0; margin:auto; z-index:10; }
section.course .activity .act_ietm.pc dd::before {display: none;}
section.course .activity2 .act_ietm dd::before {background-color:#F37365;}
section.course .activity .act_ietm dd.text_box {margin-top:-1em; font-size:0.9375em; margin-bottom: 1em;}
section.course .activity .act_ietm dd.text_box::before {display:none;}
section.course .btn3, section.course .btn4 {margin-top:1.5em;}
section.course .btn5 {margin-top:-1em;}
section.course dl.guide {margin-top:1.5em;}
section.course dl.guide dt {font-size:1.25em; font-weight:900; color:#004C33; border-bottom:1px solid #77AB61; padding-bottom:0.5em; margin-bottom: 1em;}
section.course .course_upper {margin:2.5em 0; align-items:flex-start;}
section.course .course_upper .half {width:49%; max-width:670px;}

.item_list, .caution_list {list-style:none; padding:0;}
.item_list li {text-indent: -1em; margin: 0.5em 0 0 1em;}
.item_list li .circle {color:#F27265;}
.caution_list li {margin-left:1em; text-indent: -1em;}
.item_list .caution_list li {margin:0.35em 0 0.35em 1em;}
section.course .ticket .half .item_list {margin:0;} 
section.course .ticket dl.flow dt.flow_ttl {font-size:1em; font-weight:900; color:#004C33;}
section.course .img_box_caption {margin-top:-0.5em;}

section.course .frame_box {padding: 0.5em 4% 1.5em 4%; margin-top:3.5em;}
section.course .frame_box .ttl4 {margin-top:0.5em;}

section#hakuba47 .frame_box.no_side {margin-bottom: 2em;}

/*********** model_course ****************************************/
.model_course .time_table {width: 100%; justify-content: flex-start; margin-top: 0; margin-bottom: 0;}
.model_course .time_table .col1 {width:5em; font-size: 1.3125em; margin-top: 0.25em;font-weight: 900;}
.model_course .time_table .col2 {width:3.5em; border-left:1px solid #004E35; margin-top: 0; padding-top: 1em;}
.model_course .time_table .col2.no_border {border:none;}
.model_course .time_table.first .col2 {margin-top: 1em; padding-top: 0;}
.model_course .time_table .col2 .fa-circle {position: relative; top:-0.35em; left:-0.55em;}
.model_course .time_table.last .col2 .fa-circle {top:auto; bottom:-0.15em;}
.model_course .time_table .col3 {width:100%; max-width: 1200px; padding-bottom: 3em;}
.model_course .time_table.last .col3 {padding-bottom: 0;}
.model_course .time_table .tourism dt.tourism_ttl {justify-content: flex-start; align-items: flex-start; margin-bottom: 1em;}
.model_course .time_table .tourism dt.tourism_ttl .num {width: 2em; font-size:1.6875em;height: 2em;margin-right: 0.35em;background-color: #52A500;color: #FFF;text-align: center;border-radius: 100vmax;line-height: 1.8em; font-weight: 900; aspect-ratio: 1/ 1;}
.model_course .time_table .tourism dt.tourism_ttl .sub_ttl {width:100%; margin: 0; padding: 0.25em 0.75em;}

.model_course .img_box .column3 {width:31.6666%; margin: 1em 0;}
.model_course .img_box .column2 {width:48.3333%; margin: 1em 0;}
.model_course .hr_4 {margin:1.5em 0;}
.model_course .time_table.start, .model_course .time_table.end {padding-bottom: 2em; align-items: center;}
.model_course .time_table.start .col1_2, .model_course .time_table.end .col1_2 {width:10em; padding-left:3em; text-align: center;}
.model_course .time_table.start .col3, .model_course .time_table.end .col3 {padding:0;}
.model_course .time_table.end {margin-top:2em;}

section.course .explanatory_box {padding: 1.5em 2% 1.5em 2%; margin-top:2em;}
.model_course .explanatory_box .left_side {width:85%; padding-right:1em; box-sizing: border-box; border-right:1px solid #004E35;}
.model_course .explanatory_box .right_side {padding-left:1em; box-sizing: border-box;}
.model_course .explanatory_box dl.table {margin:0.725em 0;}
.model_course .explanatory_box dl.table dt {width: 7.25em;}

section.course .frame_box.right_wide {padding-top:1.5em;}
.model_course .right_wide .flex {align-items: flex-start;}
.model_course .right_wide img.left_side {width:32%; max-width: 380px;}
.model_course .right_wide .right_side {width:66%; max-width: 790px;  padding-left:0.5em; box-sizing: border-box;}
.model_course .right_wide .right_side p:first-of-type {margin-top: 0;}
.model_course .right_wide .right_side dl.item {margin-bottom:1em;}
.model_course .right_wide .right_side dl.item:last-of-type {margin-bottom:0;}
.model_course .right_wide .right_side .btn_box {margin-top: 1em;}

.model_course .img_box .card dt.flex {justify-content: flex-start}
.model_course .img_box .card .num {width: 1.8em; height: 1.8em; font-size: 0.8em; margin-right: 0.15em; background-color: #52A500; color: #FFF;text-align: center;border-radius: 100vmax;line-height: 1.7em; aspect-ratio: 1/ 1; display: inline-block; margin-top: 0.25em;}
.model_course .img_box .card dd {margin-top: 0.5em;}

.model_course #tsugabase .ttl4 {margin-top:0;}

/*********** course_map ****************************************/
main.page section#course_map {padding:2.5em 0 3em 0;}
section#course_map .inner_box {padding:2.5em 0 5em 0;}
section#course_map .map_container iframe {height: 600px;}

/*********** guide_map ****************************************/
body.map_page main {padding-top:0;}
body.map_page .inner {width:100%; max-width:100%;}
.green_season .mfp-iframe-holder .mfp-content {width: 94%; max-width:2400px;}
.green_season .mfp-iframe-scaler iframe {background-color:#FFF; top:4em;}
.green_season .mfp-iframe-holder .mfp-close {display:block; max-width:240px; height:2.5em; color:#FFF;opacity: 1; font-size:1.25em; background-color:#F37365; padding:0.5em 2em; border-radius: 4px; text-align: center; box-sizing: border-box; line-height: 1; top:0; right:0;}

.mfp-fade1 .mfp-iframe-scaler iframe {aspect-ratio:1280 / 905; width:100%; height:auto;}
.mfp-fade2 .mfp-iframe-scaler iframe {aspect-ratio:1280 / 729; width:100%; height:auto;}
.mfp-fade3 .mfp-iframe-scaler iframe {aspect-ratio:1280 / 1819; width:100%; height:auto;}


/*********** footer ****************************************/
footer#footer { padding-bottom: 20px; }
footer#footer .greenseason_menu { background-color:#004E35; color:#FFF; padding:64px 0 70px 0; font-weight:600;}
footer#footer .greenseason_menu a { color:#FFF; }
footer#footer .greenseason_menu ul { list-style-type:none; }
footer#footer .greenseason_menu dl.resort,
footer#footer .greenseason_menu dl.information {margin-bottom: 2em;}
footer#footer .greenseason_menu dl.resort dt ,
footer#footer .greenseason_menu dl.information dt {margin:0; width:210px; border-right:solid 1px #FFF; font-size:18px; }
footer#footer .greenseason_menu dl.resort dd ,
footer#footer .greenseason_menu dl.information dd {margin:0; padding:0 0 0 30px;}
footer#footer .greenseason_menu dl.resort dd ul ,
footer#footer .greenseason_menu dl.information ul { margin:0; padding:0; }
footer#footer .greenseason_menu dl.resort dd ul li { display:inline-block; margin:6px 25px 6px 0; }
footer#footer .greenseason_menu dl.information ul li { display:inline-block; margin:7px 30px 7px 0; font-size:18px; }
footer#footer .greenseason_menu dl.information ul li i { font-size:20px; margin-right:10px; }

footer#footer .greenseason_menu ul.glob2 { margin:50px 0 0 0; }
footer#footer .greenseason_menu ul.glob2 li { display:inline-block; padding:0 20px 0 20px; border-right:solid 1px #FFF; font-size:18px; }
footer#footer .greenseason_menu ul.glob2 li:last-child { border:none; }
footer#footer .greenseason_menu ul.glob2 li a.prepared { position:relative; pointer-events: none; }
footer#footer .greenseason_menu ul.glob2 li a.prepared::after { content:"準備中"; position:absolute; bottom:-27px; left:27px; }

footer#footer #glob_footer .company_box.flex { justify-content: space-evenly; padding:40px 0 40px 0; border-bottom: solid 1px #BBBBBB; }
footer#footer #glob_footer .glob3 { padding:45px 0 45px 0; }
footer#footer #glob_footer .glob3 ul { margin:0; padding:0; }
footer#footer #glob_footer .glob3 ul li { display:inline-block; padding:0 20px 0 20px; border-right:solid 1px #333; font-size:18px; }
footer#footer #glob_footer .glob3 ul li:last-child { border:none; }

footer#footer .greenseason_menu ul.glob4 { margin:0 0 50px 0; padding: 0;}
footer#footer .greenseason_menu ul.glob4 li { display:inline-block; padding:0 20px 0 20px; border-right:solid 1px #FFF; font-size:18px; margin-bottom: 0.5em;}
footer#footer .greenseason_menu ul.glob4 li:last-child { border:none; }


#search_box_bottom_btn { display:none; }
#search_box_bottom { display:none; position:fixed; bottom: 3em;z-index: 9998; /*height: 430px;*/ overflow: auto; }


.ptop {
	cursor: pointer; position: fixed; z-index: 100; bottom: 22%; right: 2%; text-align: center; color: #FFF;
	background-color: #F37365; border-radius: 50%; width: 90px; height: 90px; line-height: 100px;
}
.ptop i { font-size:40px; }



@media (min-width: 1368px) and (max-width: 1669px) {
	header#header .middle_inner { max-width:none; width:calc(94% - 180px); }
	header#header #menu_btn { width:180px; }
	header#header #header_logo {width: 380px; font-size:15px;}		
	header#header .glob1 {  width: 700px; }
	.zdo_drawer_bg .inner ul.information li { width:31.5%; }
	.zdo_drawer_bg .inner ul.information li a {font-size:16px;}		
	.zdo_drawer_bg .inner ul.information.flex::after { width:31.5%;}
	.zdo_drawer_bg .inner ul.first li a { font-size:15px;}
	footer#footer .greenseason_menu ul.glob4 li {font-size:18px;}	
}

@media (min-width: 1080px) and (max-width: 1367px) {
	body {font-size:15px;}
	header#header .middle_inner { max-width:none; width: calc(96% - 160px); }
	header#header #menu_btn { width:160px; margin-left: calc(60vw / 19.2);}
	header#header #header_logo {width: 380px; font-size:14px;}	
	header#header .glob1 {  width: 640px; }
	.zdo_drawer_bg .inner ul.first li a { font-size:14px;}
	.zdo_drawer_bg .inner ul.information li { width:31.5%; }
	.zdo_drawer_bg .inner ul.information li a { font-size:15px;}
	.zdo_drawer_bg .inner ul.information.flex::after { width:31.5%;}
	.zdo_drawer_bg .inner {  padding: 54px min(calc(100vw / 19.2),160px) 54px min(calc(100vw / 19.2),160px);}
	.zdo_drawer_bg .inner ul.resort li {font-size: 14px;}
	section#fv::after {height:120px; bottom:-61px;}
	footer#footer .greenseason_menu ul.glob2 li {font-size: 15px;}	
	footer#footer .greenseason_menu ul.glob4 li {font-size:15px; padding:0 10px 0 10px;}
	footer#footer .greenseason_menu dl.information ul li {font-size:15px; }
}
@media (min-width: 1080px) and (max-width: 1259px) {
	body {font-size:12px;}
	header#header #header_logo {width: 300px; font-size:11px;}		
	header#header .glob1 {  width: 550px; }
	.zdo_drawer_bg .inner ul.first li { width: 48.5%; margin: 0 0 10px 0;}	
	.zdo_drawer_bg .inner ul.information li a { font-size:15px;}	
	footer#footer .greenseason_menu ul.glob4 li {font-size:15px; padding:0 10px 0 10px;}	
}
