@charset "utf-8";
/* CSS Document */
body { font-size:14px; }

.pc { display: none; }
.sp { display: unset; }
.sp_left {text-align: left;}
.sp_center {margin-left: auto; margin-right: auto;}
.pc_inline {display: none;}


/* class */
.sp_full {width:100%;}
.middle_inner .half_i {max-width:100%;}
.middle_inner .half_i .half_i {max-width:48.5%;}
.middle_inner .half_i .half_i.sp_full {max-width:100%;}
.subttl { font-size: 24px; margin: 15px auto 30px auto;}
.catch,.slug {font-size:1.65em;}
.catch .small {font-size:0.675em;}
.slug::before {position:absolute; top:-20px;; width:110px; height:2px;}
.sub_catch {font-size:1.25em;}
.ttl {font-size:1.5em;}
.ttl .sub {font-size:12px;}
.ttl2::before {top:-20px; width:90px; height:2px;}
.ttl3 {font-size:1.3125em; margin-top: 1em;}
.ttl4 {font-size:1.3125em; margin-top: 1em;}
.sub_ttl {font-size:1.2em; margin:0.875em auto;}
.sub_ttl .small {font-size:0.71875em;}
.sp_text_left {text-align: left;}
.btn3, .btn4 {font-size:1em; width:90%; line-height: 1.35em; letter-spacing: -0.02em;}
.fs18 {font-size:1em;}
.fs21 {font-size:1.0625em;}
.fs25 {font-size: 1.1875em;}
.fs30 {font-size:1.5em;}
.img_box figcaption {font-size:0.875em;}
.flex.sp_column {flex-direction: column;}
.flex.btn_box {flex-direction: column; justify-content: center;}
.pc_space1, .pc_space0_5 {margin-left: 0;}
.sp_fill_gap {margin-top:0;}

/* header */
header#header { height: 90px;}
header#header .middle_inner { width: 68%; float: left; margin-left: 10px;}
header#header #header_logo { width: 100%; }
header#header #header_logo p { margin: 9px 0 9px 0; font-size:9px;}
header#header #header_logo img { width: 160px; }
header#header .glob1 { display: none; }

header#header #menu_btn { width: 100px; height: 90px; padding: 15px;margin-left: 0;}
header#header #menu_btn i { font-size: 36px;}
header#header #menu_btn span { margin-top: 5px;}

header.page_global .middle_inner .slug.lines3 { padding: 1.25em 0 0 0; letter-spacing: -0.04em;}

.zdo_drawer_bg .inner { margin: 92px auto 24px auto; padding: 20px 15px 20px 15px;}
.zdo_drawer_bg .inner ul.first li { width: 100%; margin: 0 0 10px 0;}
.zdo_drawer_bg .inner ul.first li.mypage { width: 100%; }
.zdo_drawer_bg .inner ul.first li a { font-size: 14px; padding: 10px; }
.zdo_drawer_bg .inner ul.first li a i { font-size: 16px; top: 13px; right: 8px; }
.zdo_drawer_bg .inner ul.first li a.prepared::after { left: 100px;}
.zdo_drawer_bg .inner ul.resort { padding: 12px; font-size:12px; }
.zdo_drawer_bg .inner ul.information li { width:100%; }
.zdo_drawer_bg .inner ul.information li.sp_half { width: 100%; }
.zdo_drawer_bg .inner ul.information li a { font-size: 13px; padding: 12px; }
.zdo_drawer_bg .inner ul.information li a i { font-size:16px; top: 13px; right: 8px; }
.zdo_drawer_bg .inner .logo { margin-top: 25px; }
.zdo_drawer_bg .inner .glob3 ul {display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;justify-content: space-between; flex-wrap: wrap; align-items: stretch;}
.zdo_drawer_bg .inner .glob3 ul li { width: 48.5%;  border-right: none; border-bottom: solid 1px #333 !important; padding: 0;}
.zdo_drawer_bg .inner .glob3 ul li a { position: relative; display: block; text-align: left; font-size: 12px; padding: 12px 5px 12px 5px; }
.zdo_drawer_bg .inner .glob3 ul li i { position:absolute; color:#E16374; font-size: 16px; top: 13px; right: 5px; }
.zdo_drawer_bg .inner .logo a img { width:60%; max-width:239px; }

/* fv */
section#fv { position:relative; height:min(calc(680vw /7.68),680px); }
section#fv #fv_slider1 { background-image:url(../img/green_season/top/fv_slider/sp_1.jpg); background-size:100%; width:100%; height:min(calc(680vw /7.68),680px); }
section#fv #fv_slider2 { background-image:url(../img/green_season/top/fv_slider/sp_2.jpg); background-size:100%; width:100%; height:min(calc(680vw /7.68),680px); }
section#fv #fv_slider3 { background-image:url(../img/green_season/top/fv_slider/sp_3.jpg); background-size:100%; width:100%; height:min(calc(680vw /7.68),680px); }
section#fv #fv_slider4 { background-image:url(../img/green_season/top/fv_slider/sp_4.jpg); background-size:100%; width:100%; height:min(calc(680vw /7.68),680px); }
section#fv .circle { width: min(calc(400vw /10.8),400px); height: min(calc(400vw /10.8),400px);}
section#fv .circle img.sum { width:min(calc(240vw /10.8),240px); margin: min(calc(80vw /10.8),80px) auto auto auto; }
section#fv::after { height: 82px; bottom: -41px;}
.swiper-button-next, .swiper-rtl .swiper-button-prev { right: 0; left: auto;}
.swiper-button-prev, .swiper-rtl .swiper-button-next { left: 0; right: auto;}
header.page_greenseason.iwatake {background-position: left center;}


/* contents_page */
header.page_greenseason {height:280px; padding: 3.5em 0; background-position: center;}
section.course .ticket {margin:2em 0;}


/****** aside ********/
aside.pan { padding:30px 0 30px 0; }
aside.pan p {font-size:0.9375em;}
aside.pan a {display: inline-block;}

/* main */
main { padding-top:90px; }
main.page { padding-bottom: 3em;}
aside.pan { padding: 20px 0 20px 0;}
section.page_content { padding: 10px 0 10px 0;}

/* top */
section#top_service {padding:2.5em 0 2em 0;}
section#top_service .s_bgi {background-position:center;}
section#top_service .ticket .ticket_ttl {font-size: 1.2em; line-height: 1.5;}
section#top_service .ticket {margin-top:0.5em; margin-bottom: 1em;}
section#top_service .ticket:nth-of-type(2n) {margin-top: 3em;}
section#top_service .ticket dt, section#top_course .course dt  {font-size:1.25em; line-height:1.25; margin-bottom: 0.4em;}
section#top_service .ticket dt .upper, section#top_course .course dt .upper {font-size:9px;}
section#top_service .ticket dt .number, section#top_course .course dt .number {font-size:1.8em; margin-bottom:0.15em; line-height: 1;}
section#top_service .ticket .ticket_ttl {font-size:1.125em; margin-top:0.35em;}
section#top_service .ticket .ticket_ttl i {padding:0.65em;}
section#top_service .ticket .description {font-size:0.8125em; margin-top:0.25em; min-height:auto;}
section#top_service .ticket_lower {flex-direction: column; align-items: center;}
section#top_service .ticket_l {display:none;}
section#top_service .ticket_r {width:100%; max-width:480px; margin-top: -1em !important;}
section#top_service .ticket .ticket_ttl {font-size:1em;}
section#top_service .ticket .btn3 {padding:0.45em 0.5em;font-size:0.875em; width:100%; max-width: 100%;}
section#top_service .ticket .btn3 i.fa-angle-right {top:calc(50% - 0.5em); right:0.25em; font-size:1em;}
section#top_acc {padding:1em 0 2.5em 0;}
.acc_container {flex-direction: column; align-items: center;}
dl.acc {width: 94%; max-width:750px; margin-top:0;}
dl.acc dt.acc_ttl {font-size:1.25em; margin-bottom: 0.35em;}
dl.acc dd.acc_outline .description {min-height:auto;}
dl.acc dd.acc_outline ul.icon_list li {font-size:0.875em; padding:0.15em 0.35em;}
dl.acc dd.acc_outline .btn_box .btn1 {letter-spacing: -0.05em;}

#top_bnr {padding-block: 0 2.5em;}
#top_bnr .lower_inner {inline-size: min(1000px,90%);}
#top_bnr .bnr_box .bnr_txt {font-size:0.935em;}

section.page_acc {margin:0.5em auto; padding: 2em 0 2em 0;}

/* top_course */
section#top_course {padding:2.5em 0 3em 0;}
section#top_course .inner {padding: 5em 0 3em 0;}
.top_course_container {flex-direction: column;}
dl.course {width: 100%; max-width: 100%;}
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;}
section#top_course::before {height:7em; top:1em;;}
section#top_course .top_course_img1 {top:-1.75em; left:calc(10vw / 7.5); width:calc(270vw / 7.5); max-width: 210px;}
section#top_course .top_course_img2 {top:-1.25em; right:calc(20vw / 7.5); width:calc(210vw / 7.5);max-width: 160px;}

/* serch */
section#search_box {padding:2.5em 0 3em 0;}
main.page section#search_box {padding:1.5em 0 3em 0;}
#search_box .box {width: 100%;}
section#search_box .inner_box {padding: 0.5em 0 1.5em 0;}
#search_box .box { width: 96%; }
section#search_box .ttl {margin-bottom:0;}
section#search_box .sub_catch {margin-top:0.25em;}
#search_box form .select_container { width: 100%;}
#search_box .box dl dt { font-size: 16px; width: 100px; padding-left: 0;}
section#search_box form dl.table {margin: 0.85em auto;}
#search_box dl.table,#search_box dl.table dt { display:block; margin: 5px 0 5px 0; }
#search_box dl.table dd { display:block; margin: 5px 0 16px 0; line-height: 1.8;}

#search_box form .ui-datepicker-trigger { margin-right: 2px;}
#search_box form .select_datepicker_container { width: 79px; margin-left:2px; }
#search_box form .select_datepicker_container.many { margin: 10px 5px 10px 2px; /*margin: 10px 10px 10px 46px;*/}
#search_box form select.stay {margin:0;}
#search_box form .fa-calendar-days {font-size: 1.5em;}
#search_box form p.undecided { /*margin: 5px 0 0 10px;*/ margin: 5px 0 0 1.5em; display: block;}
#search_box form .undecided_label {margin-left:0;}
form button.search { width: 100%; max-width:280px;}
form button.search i {font-size: 0.85em;}
form button.search { height: 46px; font-size: 1.2em;}

form input[type=text].datepicker { width: 110px; margin:0;}

main.page section#search_box .frame_box {margin-top:1em; padding: 1em 2% 1.25em 2%;}
main.page section#search_box .frame_box .btn_box {width: 100%; max-width: 100%; flex-direction: row;justify-content: space-between;}

section#search_box .frame_box .ttl4 {font-size:1.1875em;}
main.page section#search_box .frame_box .btn_box .ttl4 {margin-bottom:0;}
main.page section#search_box .frame_box .flex.sp_column .btn_box {margin-bottom: 0.5em;}

/* contents_page */

section.page_navi .btn2 {width:100%; margin-left:auto; margin-right:auto; font-size:1em;}
.page_navi {padding-top: 2.25em;}
section.course {margin:1.5em auto 2em auto; padding: 2em 0 2em 0;}
section.course dl.guide dt {font-size:1.1875em;}
section.course .activity .act_ietm, section.course .activity .act_ietm2 {width:48%; margin:0;}
section.course .activity .act_ietm dt {font-size:1.0625em; letter-spacing: -0.02em;}
section.course .activity .act_ietm dt .sp_small {font-size:0.8125em;}
section.course .activity .act_ietm dd {margin-bottom: 1em;}
section.course .activity .act_ietm dd::before {height:30px;}
section.course .activity .act_ietm dd.text_box {font-size:0.875em;}
section.course .map_container iframe {height:300px;}
section.course .btn5 {line-height: 1.5; padding: 0.65em 0.5em;}
section.course .course_upper {margin:1.25em 0;}
section.course .course_upper .half {width:100%; max-width:100%;}
section.course .course_upper .half:nth-of-type(2n) {margin-top:1em;}
section.course .btn3, section.course .btn4 {margin-top:0.5em;}
section.course .course_img .img_l, section.course .course_img div.half {width:100%; max-width:100%; margin-bottom: 1em;}
section.course .frame_box {margin-top:2em;}
section.course .frame_box.right_wide {padding-top:1em;}

/* model_course */
.model_course .time_table .col1 {display: none;}
.model_course .time_table .col2 {width:1.1em; font-size:0.8125em;}
.model_course .time_table .col2 .fa-circle {top:-0.5em;}
.model_course .time_table .col3 {padding-bottom: 1.5em;}
.model_course .time_table .col3 .time {display: block; margin-top: 0.1em; margin-bottom: 0.5em;}
.model_course .time_table .tourism dt.tourism_ttl .num {font-size:0.8125em; margin-right: 0.25em;}
.model_course .time_table .tourism dt.tourism_ttl .sub_ttl {font-size: 1.1875em; padding: 0.15em 0.5em; letter-spacing: -0.02em;}
.model_course .time_table .col3 .ttl4 {font-size:1.125em;}
.model_course .time_table .col3 .btn_box {margin-top:0.5em;}

.model_course .img_box .column3, .model_course .img_box .column2 {width:48.5%; margin: 0.5em 0;}

.model_course .time_table.start, .model_course .time_table.end {padding-bottom: 1em;}
.model_course .time_table.start .col1_2, .model_course .time_table.end .col1_2 {width:auto; margin-right: 1em; padding-left:0;}
.model_course .time_table.start  .col3 {}

.model_course .explanatory_box .flex {flex-direction: column;}
.model_course .explanatory_box .left_side {width:100%; padding-right:0; padding-bottom:0.5em; box-sizing: border-box; border-right:none; border-bottom:1px solid #004E35;}
.model_course .explanatory_box .right_side {padding-left:0; padding-top:0.5em;}

.model_course .right_wide .flex {flex-direction: column}
.model_course .right_wide img.left_side {width:100%; max-width: 100%; margin-top: 1em; margin-bottom: 0.5em;}
.model_course .right_wide .right_side {width:100%; max-width: 100%; padding-left:0;}
.model_course .right_wide .right_side p:first-of-type {margin-top: 1em;}

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

/* guide_map */
zoomimg.box {width:100%; height:600px;}
zoomimg.box img#zoomImg { height:100%;}

.green_season .mfp-content {margin-top:-13em;}
.green_season .mfp-iframe-scaler iframe {/*height: 100vmax;*/ overflow-y: scroll;}
.green_season .mfp-iframe-holder .mfp-close {display:block; max-width:100%; height:2em; color:#FFF;opacity: 1; font-size:1.125em; padding:0.5em 0.5em; left: 0; right:auto;}


/* footer */
footer#footer .glob_menu { padding: 50px 0 40px 0;}
footer#footer .glob_menu ul.glob2 { padding: 0;margin: 0;}
footer#footer .glob_menu ul.glob2 li { display: block; font-size: 18px; padding: 0 20px 20px 20px; border-right: none; }
footer#footer .glob_menu ul.glob2 li a.prepared {  display: inline-block; margin: 0 0 20px 0;}

footer#footer .glob_menu ul.glob4 { padding: 0;margin: 0;}
footer#footer .glob_menu ul.glob4 li { display: block; font-size: 18px; padding: 0 20px 20px 20px; border-right: none; }
footer#footer .glob_menu ul.glob4 li a.prepared {  display: inline-block; margin: 0 0 20px 0;}

footer#footer #glob_footer .company_box.flex { display:block; text-align: center; }
footer#footer #glob_footer .company_box.flex address { margin:0 0 32px 0; }

footer#footer #glob_footer .glob3 ul li { padding: 0 12px 0 12px;  margin-bottom: 12px; font-size: 12px; line-height: 12px;}
footer#footer .copy { font-size:12px; }

/* footer grean_season */
footer#footer .greenseason_menu { padding: 30px 0 30px 0;}
footer#footer .greenseason_menu dl.resort, footer#footer .greenseason_menu dl.information {display:block;}
footer#footer .greenseason_menu dl.resort dt, 
footer#footer .greenseason_menu dl.information dt {display:block; width:100%; border:none; border-bottom: solid 1px #FFF; padding:0 0 5px 0;}
footer#footer .greenseason_menu dl.resort dd, footer#footer .greenseason_menu dl.information dd {display:block; margin: 0; padding: 16px 0;}
footer#footer .greenseason_menu dl.information ul li {font-size:1em;}

footer#footer .greenseason_menu ul.glob2 {padding:0; margin: 20px 0 0 0;}
footer#footer .greenseason_menu ul.glob2 li { display: block; font-size: 1em; padding: 0 20px 15px 20px; border-right: none; }
footer#footer .greenseason_menu ul.glob2 li a.prepared {  display: inline-block; margin: 0 0 20px 0;}
footer#footer .greenseason_menu ul.glob4 { margin:0 0 30px 0; padding: 0;}
footer#footer .greenseason_menu ul.glob4 li { display:block; padding:0 20px 10px 20px; border-right:none; font-size:1em; margin-bottom: 0.5em;}

.ptop {width: 60px; height: 60px; line-height: 60px;}
.ptop i { font-size:24px; }

/* search_box_bottom */
#search_box_bottom { width: 100%; background-color: rgba(0, 78, 53, 0.8); padding:10px 0 10px 0; }
#search_box_bottom .inner { background-color: #FFF; padding: 5px 0 5px 0; }

#search_box_bottom .box dl dt { color:#004E35; font-size: 16px; width: 100px; padding-left:0; font-weight:900;}
#search_box_bottom dl.table,#search_box_bottom dl.table dt { display:block; margin: 5px 0 5px 0; }
#search_box_bottom dl.table dd { display:block; margin: 5px 0 16px 0; }

#search_box_bottom_btn { display:block; position:fixed; bottom: 0; z-index:998; background-color:#FFF; width:100%; padding:5px; }

#search_box_bottom_btn span.open { display:block; font-size:18px; text-align:center; background-color: #F37365; color:#FFF; padding: 5px; font-weight: 900;}
#search_box_bottom_btn span.open i.fa-bars-filter { color: #FFF; font-size: 20px; margin-right:5px; }

#search_box_bottom_btn span.close { display:none; font-size:18px; text-align:center;background-color: #FFF; padding: 5px; }
#search_box_bottom_btn span.close i { color: #444; font-size: 20px; margin-right:5px; }

#search_box_bottom_btn.active span.open { display:none; }
#search_box_bottom_btn.active span.close { display:block; }

#search_box_bottom 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_bottom form .select_container {position: relative; width: 100%;}
#search_box_bottom form .select_datepicker_container { position: relative; width: 79px; display:inline-block; margin-left:2px; }
#search_box_bottom form .select_datepicker_container.many { margin: 10px 10px 10px 5px; /*margin: 10px 10px 10px 46px;*/}

#search_box_bottom form .select_container::after,
#search_box_bottom form .select_datepicker_container::after {
	content: "\f107"; font-family:"Font Awesome 6 Pro";line-height: 1;
	position: absolute; top: 12px; right: 8px; pointer-events: none;
}

#search_box_bottom form input[type="checkbox"] {
	position: relative; appearance: none; -webkit-appearance: none; -moz-appearance: none;	width: 18px; height: 18px;　margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none;　cursor: pointer; padding-left: 30px; vertical-align: middle;}

#search_box_bottom form input[type="checkbox"]:checked::after { opacity: 1; }
#search_box_bottom form input[type="checkbox"]::before {
	content: ""; display: block; position: absolute;
	background-color: #FFF7F7; border-radius: 0%; border: 1px solid #9CABAF;
	width: 20px; height: 20px; transform: translateY(-50%); top: 50%; left: 5px;
}
#search_box_bottom 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_bottom form .ui-datepicker-trigger { margin-right:2px; }
#search_box_bottom form .undecided { margin: 5px 0 0 10px; display: inline-block; }

#search_box_bottom 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; margin: 20px auto 15px auto; cursor:pointer; font-weight:900;
}
#search_box_bottom label.sipp {font-weight: 900; color: #004C33;}
