@charset "utf-8";

/*PCSP共通設定*/

html {scroll-behavior: smooth;}/*smooth scroll*/

/*759px以下*/
@media screen and (max-width: 759.9px) {
#wrapper {line-height: 1.4;}
.spnone{display:none;}

/* CSS */
#dirPathBlock,
#anchorLinkBlock {
font-size: 10px;
margin: 1% 1% 0 1%;
}
#dirPathBlock p,
#anchorLinkBlock a{font-size: 12px;}
h1 {
font-size: 12px;
margin: 0 1%;
}

.inner{
width: 96%;
margin: 0 2%;
padding: 24px 0;
box-sizing: border-box;
}
}

/*760px以上*/
@media screen and (min-width: 760px),print {
/* CSS */
#wrapper {line-height: 1.231;}
#dirPathBlock,
h1,
.iframe_end-content_gadget,
#anchorLinkBlock{
width: 100%;
max-width:970px;
min-width:760px;
margin: auto;
}

/*panlist&back*/
#dirPathBlock,
#anchorLinkBlock {
width: 100%;
margin: 0 auto;
display: block;
font-size: 12px;
}
#dirPathBlock p,
#anchorLinkBlock a{font-size: 12px;}
h1 {
font-size: 14px;
width: auto;
max-width: 970px;
margin: 0 auto 5px;
}
.inner{
width: 96%;
max-width:970px;
margin: 0 auto;
padding:50px 0;
display: block;
}
}


/*============================================
ORIGINAL SETTING
============================================*/

main {overflow-x: hidden;}
main img {
width: 100%;
height: auto;
}

.visible_sp {display: block;}
.visible_pc {display: none;}

.flex {
display: flex;
align-items: flex-start;
flex-wrap: wrap;
}

.page_traive * {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}

.page_traive {
font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
font-size:14px;
line-height: 1.5;
}

.page_traive figure {
margin: 0;
padding: 0;
}

.page_traive .mv_inner {position: relative;}
.page_traive .mv_inner .summary {
position: absolute;
z-index: 2;
}

.page_traive .intro_wrap {text-align: center;}

.page_traive .intro_wrap h2 {
font-size:18px;
/*font-weight: 700;*/
line-height: 3;
margin:24px auto;
text-shadow: 0 0 2px #dd9751,
0 0 6px #dd9751,
8px 8px 10px #f4d6b8,
-8px -8px 10px #f4d6b8;
width: 21em;
position: relative;
letter-spacing: 0.15em;
}
@media screen and (max-width: 759.9px) {
.page_traive .intro_wrap h2 {
    font-size:4.5vw;
}
}
.page_traive .intro_wrap h2::before,
.page_traive .intro_wrap h2::after {
content:'';
display: inline-block;
height: 32px;
width: 24px;
position: absolute;
}
.page_traive .intro_wrap h2::before {
border-top:1px solid #f4d6b8;
border-left:1px solid #f4d6b8;
top:0;
left:0;
}
.page_traive .intro_wrap h2::after {
border-bottom:1px solid #f4d6b8;
border-right:1px solid #f4d6b8;
bottom:0;
right:0;
}

.page_traive .intro_wrap dl {margin-top:56px;}
.page_traive .intro_wrap dt {
margin:auto;
max-width: 490px;
width: 90%;
}
.page_traive .intro_wrap dd {
margin-top:40px;
}

.page_traive .links_wrap {margin-top:-32px;}
.page_traive .links_wrap h2 {
font-size:24px;
margin-bottom: 16px;
text-align: center;
position: relative;
}
.page_traive .links_wrap h2 > span {
background-color: #fff;
display: inline-block;
padding: 0 .5em;
}
.page_traive .links_wrap h2::before {
background-color: #dad6d2;
content:'';
display: inline-block;
height:1px;
width: 12em;
position: absolute;
top:50%;
left: 50%;
transform: translate(-50%,-50%);
z-index: -1;
}

.page_traive .links_wrap ul {
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
gap:24px;
}

.page_traive .links_wrap li {
margin:auto;
max-width: 384px;
width: 46%;
}
.page_traive .links_wrap li a {
color:#fff;
display: flex;
align-items: center;
justify-content: center;
position: relative;
}
.page_traive .links_wrap p {
font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
font-size:20px;
font-weight: 700;
text-align: center;
position: absolute;
z-index: 2;
}
.page_traive .links_wrap figure {
background-color: #000;
border-radius: 10px;
line-height: 0;
margin:0;
overflow: hidden;
padding: 0;
}
.page_traive .links_wrap a img {
border-radius: 10px;
opacity: .4;
scale: 1;
transition: .5s;
}
.page_traive .links_wrap a:hover img {
opacity: .8;
scale: 1.2;
}

/*760px以上*/
@media screen and (min-width: 760px),print {
.visible_sp {display: none;}
.visible_pc {display: block;}

.page_traive {
font-size:16px;
line-height: 1.8;
}

.page_traive .intro_wrap h2 {
font-size:24px;
margin:32px auto;
width: 23em;
}
.page_traive .intro_wrap h2::before,
.page_traive .intro_wrap h2::after {
height: 48px;
width: 40px;
}

.page_traive .intro_wrap dl {margin-top:64px;}

.page_traive .links_wrap {margin-top:-88px;}
.page_traive .links_wrap ul {
justify-content: space-between;
flex-wrap: nowrap;
gap:3%;
}
.page_traive .links_wrap li {width: 31.33%;}
}



/*========= サブページ =========*/
.subpage_wrap {
font-size:16px;
margin-top:64px;
position: relative;
overflow: hidden;
}
.subpage_wrap .headline {
background: rgb(247,244,241);
background: linear-gradient(0deg, rgba(247,244,241,1) 0%, rgba(218,214,210,1) 100%);
font-size:24px;
margin-bottom: 1.5em;
padding: .25em 1em;
text-align: center;
position: relative;
}
.subpage_wrap .headline::before,
.subpage_wrap .headline::after {
border:1px solid #dad6d2;
content:'';
display: inline-block;
height: 98%;
width: 24px;
position: absolute;
top:0;
}
.subpage_wrap .headline::before {
border-right:none;
left:0;
}
.subpage_wrap .headline::after {
border-left:none;
right:0;
}


.subpage_wrap .overview {
display: flex;
align-items: flex-start;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 72px;
position: relative;
}

.subpage_wrap .overview figure {
margin:auto;
width: 100%;
position: relative;
}
.subpage_wrap .overview figure > img {border-radius: 0 32px 0 32px;}
.subpage_wrap .overview figcaption {
color:#fff;
font-size:10px;
text-shadow: 0 0 2px #000,
1px 1px 2px #000,
-1px -1px 2px #000;
position: absolute;
bottom:1em;
right:.5em;
}

.subpage_wrap .overview .summary {
margin-top:24px;
width: 100%;
position: relative;
z-index: 2;
}
.subpage_wrap .overview .summary h3 {
color:#dad6d2;
display: inline-block;
font-size:72px;
font-feature-settings: 'palt';
line-height: 1;
margin-bottom: 16px;
}
.subpage_wrap .overview .summary h3 > span {
display: block;
font-size:24%;
letter-spacing: .25em;
}
.subpage_wrap .overview .summary p {
background-color: rgba(240,236,232,.7);
padding: 1em;
}

.subpage_wrap .intro_municipality figure {
line-height: 0;
position: relative;
}
.subpage_wrap .intro_municipality .summary {
border-bottom: 1px dotted #999;
display: flex;
justify-content: center;
align-items: center;
line-height: 1.6;
padding: 0 16px 0 0;
}
.subpage_wrap .intro_municipality .summary img {
margin:0;
width: 72px;
}
.subpage_wrap .intro_municipality .summary p {
font-size:16px;
margin-left:16px;
}
.subpage_wrap .intro_municipality .txt_caption {
font-size:12px;
text-align: right;
}

.subpage_wrap .intro_municipality .subttl {
color:#948f89;
font-size:21px;
line-height: 1.2;
margin:0 0 40px;
position: relative;
}
.subpage_wrap .intro_municipality .subttl::before {
border-bottom:1px dotted #948f89;
content:'';
display: block;
height:100%;
width: 100%;
position: absolute;
bottom:-8px;
}

.subpage_wrap .intro_municipality .subttl em {
color:#f4d6b8;
display: block;
font-size: 16px;
}

.subpage_wrap .intro_municipality h5 {
    font-size:18px;
    font-weight: 700;
    margin-bottom: 1em;
    text-align: center;
}
.subpage_wrap .intro_municipality h5 span {
    display: block;
    font-size:14px;
    font-weight: 300;
}

.subpage_wrap .intro_municipality .detail_municipality {margin:40px auto 0;}

.subpage_wrap .intro_municipality .outline .graph {
margin:auto;
max-width: 480px;
width:100%;
}
.subpage_wrap .intro_municipality .outline .graph figcaption {
font-size:12px;
line-height: 2;
margin:8px 0 24px;
text-align: right;
position: relative;
bottom:auto;
right:auto;
}

.subpage_wrap .intro_municipality .txt_extend {
background-color: #efefef;
border:1px solid #dad6d2;
font-size:12px;
padding: 1em;
text-align: center;
}
.subpage_wrap .intro_municipality .txt_extend > em {
color:#dd9751;
font-weight: 700;
}

/*640px以上*/
@media screen and (min-width: 640px) {
.subpage_wrap .intro_municipality figcaption {
position: absolute;
bottom:8px;
right: 8px;
}
.subpage_wrap .intro_municipality .summary {
background-color: rgba(255,255,255,.8);
border-bottom: none;
box-shadow: 2px 2px 4px rgba(0,0,0,.5);
line-height: 1.6;
padding: 0 16px 0 0;
}
.subpage_wrap .intro_municipality .summary img {
margin:0;
width: 96px;
}
.subpage_wrap .intro_municipality .summary p {
font-size:18px;
}
}

/*760px以上*/
@media screen and (min-width: 760px),print {
.subpage_wrap {
font-size:21px;
margin-top:80px;
}

.subpage_wrap .headline {font-size:32px;}

.subpage_wrap .overview {margin-bottom: 72px;}

.subpage_wrap .overview figure {
width: 63.97%;
position: absolute;
top:0;
right: 0;
}
.subpage_wrap .overview figure > img {border-radius: 0 48px 0 48px;}
.subpage_wrap .overview figcaption {font-size:14px;}

.subpage_wrap .overview .summary {
margin-top:2.5em;
width: 68%;
}
.subpage_wrap .overview .summary h3 {font-size:96px;}


.subpage_wrap .intro_municipality .subttl {
font-size:28px;
margin: 0;
writing-mode: vertical-rl;
position: relative;
}
.subpage_wrap .intro_municipality .subttl::before {
border-left:1px solid #000;
border-bottom:none;
bottom:0;
left:18px;
z-index: -1;
}
.subpage_wrap .intro_municipality .ref .subttl::before {
content:'';
border-left:none;
border-right:1px solid #000;
left:auto;
right:38px;
}

.subpage_wrap .intro_municipality .subttl span {
background-color: #fff;
padding-bottom: .5em;
}
.subpage_wrap .intro_municipality .subttl em {font-size: 18px;}

.subpage_wrap .intro_municipality h5 {
    font-size:22px;
}
.subpage_wrap .intro_municipality h5 span {
    font-size:16px;
}

.subpage_wrap .intro_municipality .detail_municipality {
display: flex;
align-items: stretch;
justify-content: space-between;
flex-wrap: wrap;
margin:56px auto 0;
}
.subpage_wrap .intro_municipality .detail_municipality.ref {flex-direction:row-reverse;}

.subpage_wrap .intro_municipality .outline .graph {
margin:auto;
max-width:auto;
width:57.93%;
}
.subpage_wrap .intro_municipality .access .graph,
.subpage_wrap .intro_municipality .ranking .graph {width:82.28%;}

.subpage_wrap .intro_municipality .txt_extend {font-size:16px;}
}

/*======================================================
TOWN DETAIL
======================================================*/

.subpage_wrap .town_detail {margin: 48px 0;}
.subpage_wrap .town_detail .town_detail__inner {
margin:auto;
max-width: 970px;
width: 96%;
}
.subpage_wrap .town_detail .town_detail__sc3.overside {
padding: 48px 0 0;
}
.subpage_wrap .town_detail .overside {
background-color: #f4f2ef;
margin: 0 calc(50% - 50vw);
padding: 48px 0;
width: 100vw;
}

.subpage_wrap .town_detail__sc1,
/*.subpage_wrap .town_detail__sc3 {margin-bottom: 48px;}*/
.subpage_wrap .town_detail__sc2,
.subpage_wrap .town_detail__sc4 {padding:48px 0;}

.subpage_wrap .town_detail .detail_headline {
font-size:21px;
text-align: center;
}
.subpage_wrap .town_detail .detail_headline span {
color:#dd9751;
display: block;
font-size:16px;
line-height: 1;
}


/*760px以上*/
@media screen and (min-width: 760px),print {
.subpage_wrap .town_detail {margin: 80px 0;}
.subpage_wrap .town_detail .overside {padding: 80px 0;}
.subpage_wrap .town_detail .town_detail__sc3.overside {padding: 80px 0;}

.subpage_wrap .town_detail__sc1,
.subpage_wrap .town_detail__sc3 {margin-bottom: 80px;}
.subpage_wrap .town_detail__sc2,
.subpage_wrap .town_detail__sc4 {padding:80px 0;}

.subpage_wrap .town_detail .detail_headline {font-size:32px;}
.subpage_wrap .town_detail .detail_headline span {font-size:20px;}

}

.subpage_wrap .town_detail__sc1 .txt_lead {
font-size:14px;
margin: 8px 0 24px;
text-align: center;
}

.subpage_wrap .town_detail__sc1 .detail_intro {position: relative;}
.subpage_wrap .town_detail__sc1 .detail_intro p {
font-size:14px;
line-height: 2;
text-align: center;
}
.subpage_wrap .town_detail__sc1 .detail_intro p > sup,
.subpage_wrap .town_detail__sc1 .detail_intro p .txt_note {font-size:10px;}

.subpage_wrap .town_detail__sc1 .detail_intro .detail_intro__thumb1 {
display: flex;
justify-content: center;
gap:16px;
margin: 16px auto 0;
}

.detail_intro__thumb2 {
gap:16px;
flex-wrap: nowrap;
margin-top: 16px;
}


/*760px以上*/
@media screen and (min-width: 760px),print {
.subpage_wrap .town_detail__sc1 .txt_lead {
font-size:20px;
margin: 8px 0 40px;
}

.subpage_wrap .town_detail__sc1 .detail_intro p {font-size:16px;}
.subpage_wrap .town_detail__sc1 .detail_intro p > sup,
.subpage_wrap .town_detail__sc1 .detail_intro p .txt_note {font-size:12px;}

.subpage_wrap .town_detail__sc1 .detail_intro .detail_intro__thumb1 {margin: 24px auto 0;}
.detail_intro__thumb2 {
gap:16px;
flex-wrap: nowrap;
margin-top: 24px;
}

}

@media screen and (min-width: 1024px) {
.subpage_wrap .town_detail__sc1 .detail_intro .detail_intro__thumb1 {
display: block;
margin:0;
}
.subpage_wrap .town_detail__sc1 .detail_intro .detail_intro__thumb1 li {
max-width: 184px;
width: 100%;
}
.subpage_wrap .town_detail__sc1 .detail_intro .detail_intro__thumb1 li:nth-child(1) {
position: absolute;
left:-96px;
top:0;
}
.subpage_wrap .town_detail__sc1 .detail_intro .detail_intro__thumb1 li:nth-child(2) {
position: absolute;
right:-96px;
top:6em;
}

#goto.subpage_wrap .town_detail__sc1 .detail_intro .detail_intro__thumb1 li:nth-child(2) {top:3em;}
}


.subpage_wrap .town_detail__sc2 .spot_tab {
justify-content: space-between;
margin:24px auto 16px;
}
.subpage_wrap .town_detail__sc2 .spot_tab li {
background-color: #ede2d7;
cursor: pointer;
font-size:3.5vw;
padding: 1em .5em .5em;
text-align: center;
transition: .3s all;
width: 32%;
}
.subpage_wrap .town_detail__sc2 .spot_tab li.active {
background-color: #dd9751;
color:#fff;
}
.subpage_wrap .town_detail__sc2 .spot_tab li:hover {
background-color: #dd9751;
}
.subpage_wrap .town_detail__sc2 .spot_tab li span {
display: block;
font-size:2.8vw;
line-height: 1;
}

.subpage_wrap .town_detail__sc2 .spot_contents__box {display: none;}
.subpage_wrap .town_detail__sc2 .spot_contents__box.active {display: block;}
.subpage_wrap .town_detail__sc2 .spot_contents__box .txt_underconst {
font-size:14px;
margin-top: 3em;
text-align: center;
}

.subpage_wrap .town_detail__sc2 .item_inner {justify-content: space-between;}
.subpage_wrap .town_detail__sc2 .item_summary {margin-top:16px;}
.subpage_wrap .town_detail__sc2 .item_summary h5 {
font-size:16px;
margin-bottom: 8px;
}
.subpage_wrap .town_detail__sc2 .item_summary p {font-size:14px;}
.subpage_wrap .town_detail__sc2 .item_summary dl {
border-top:1px solid #ddd;
display: inline-flex;
justify-content: flex-start;
flex-wrap: wrap;
font-size:12px;
margin-top: .75em;
padding-top: .75em;
width: 100%;
}
.subpage_wrap .town_detail__sc2 .item_summary dt {
display: flex;
align-items: flex-start;
width: 5em;
}
.subpage_wrap .town_detail__sc2 .item_summary dd {
display: flex;
align-items: center;
width:calc(100% - 5.5em)
}
.subpage_wrap .town_detail__sc2 .item_equip {margin:16px auto;}
.subpage_wrap .town_detail__sc2 .item_equip p {
background-color: #ddd;
font-size:14px;
padding: .25em 1em
}
.subpage_wrap .town_detail__sc2 .item_equip .flex {
gap:8px;
margin-top:8px;
}
.subpage_wrap .town_detail__sc2 .item_equip li {
background: #eee;
border:1px solid #ddd;
border-radius: 8px;
font-size:12px;
padding: 0 .5em;
}
.subpage_wrap .town_detail__sc2 .item_equip .txt_note {
 background-color: #fff;
 font-size:10px;
 margin-top:8px;
 padding: 0;
}

.subpage_wrap .town_detail__sc2 .item_map {
margin-top: 16px;
padding-top: 48.62%;
width: 100%;
position: relative;
}
.subpage_wrap .town_detail__sc2 .item_map iframe {
height: 100%;
width: 100%;
position: absolute;
top: 0;
left: 0;
filter: grayscale(100%);
}

/*640px以上*/
@media screen and (min-width: 640px) {
.subpage_wrap .town_detail__sc2 .spot_tab li {font-size:16px;}
.subpage_wrap .town_detail__sc2 .spot_tab li span {font-size:12px;}
}

/*760px以上*/
@media screen and (min-width: 760px),print {
.subpage_wrap .town_detail__sc2 .spot_tab {
justify-content: center;
gap: 16px;
margin:40px auto 24px;
}
.subpage_wrap .town_detail__sc2 .spot_tab li {
font-size:18px;
width: 28%;
}
.subpage_wrap .town_detail__sc2 .spot_tab li span {font-size:14px;}

.subpage_wrap .town_detail__sc2 .spot_contents__box .txt_underconst {font-size:16px;}

.subpage_wrap .town_detail__sc2 .item_pic {width:49.48%;}
.subpage_wrap .town_detail__sc2 .item_summary {
margin-top:0;
width:47.42%;
}
.subpage_wrap .town_detail__sc2 .item_summary h5 {
font-size:20px;
margin-bottom: 8px;
}
.subpage_wrap .town_detail__sc2 .item_summary p {font-size:16px;}

.subpage_wrap .town_detail__sc2 .item_summary dl {font-size:14px;}

.subpage_wrap .town_detail__sc2 .item_equip {margin:16px auto 24px;}
.subpage_wrap .town_detail__sc2 .item_equip p {font-size:16px;}

.subpage_wrap .town_detail__sc2 .item_equip li {font-size:14px;}

.subpage_wrap .town_detail__sc2 .item_equip .txt_note {font-size:12px;}

.subpage_wrap .town_detail__sc2 .item_map {
margin-top: 16px;
padding-top: 26.94%;
}
}


.subpage_wrap .town_detail__sc3 .stay_schedule {margin-top:24px;}
.subpage_wrap .town_detail__sc3 .stay_schedule__day {
border-bottom:2px solid #ddd;
display: flex;
-webkit-flex-wrap: wrap;
-moz-flex-wrap: wrap;
-ms-flex-wrap: wrap;
-o-flex-wrap: wrap;
flex-wrap: wrap;
align-items: center;
justify-content: center;
margin-bottom: 24px;
padding-bottom: 24px;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day:last-child {border-bottom: none;}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_title {
margin-bottom: 20px;
background-color: #96abbd;
border-radius:100%;
color:#fff;
font-size:24px;
height: 72px;
line-height: 72px;
text-align: center;
width: 72px;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_title::before {
content: 'Day';
font-size:.8em;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary {
font-size:14px;
width: 100%;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li {position: relative;}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li:not(:last-child)::after {
content:'↓';
display: block;
line-height: 24px;
height: 24px;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li em {
font-size:1.2em;
font-weight: 700;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .baloon {
background-color: #dd9751;
border-radius: 50vh;
color:#fff;
display: inline-block;
font-size:14px;
padding: .5em 1.5em;
text-align: center;
width: auto;
position: relative;
animation-name:baloon;
animation-duration: 1.5s;
animation-iteration-count: infinite;
animation-timing-function: ease-in-out;
animation-direction: alternate;
}
@keyframes baloon{
0%{
transform: translateY(-4px);
}
100%{
transform: translateY(4px);
}
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .baloon a {
color:#fff;
text-decoration: underline;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .baloon a::before {
 content:'\0bb';
 font-size:2em;
 line-height: 0;
 margin-right:.25em;
 position: relative;
 top:.15em;
}

.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .baloon.holiday {background-color: #13a0a5;}
/*.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .baloon::after {
border-style: solid;
border-right: 6px solid transparent;
border-left: 6px solid transparent;
border-top: 6px solid #dd9751;
border-bottom: 0;
content: '';
display: block;
height: 0;
width: 0;
position: absolute;
bottom:-6px;
left:48px;
}*/

.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .day_spot_point {
    margin: 15px 0 0;
    padding: 15px;
    background:rgba(255,255,255,0.5);
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .day_spot_point strong {
display: block;
margin-bottom: 10px;
font-weight: bold;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .day_spot_point .day_spot_point_img {
margin-top: 15px;
}

/*.subpage_wrap .town_detail__sc3 .stay_recommend {margin-top:40px;}*/
.subpage_wrap .town_detail__sc3 .stay_recommend .detail_subttl {
background-color: #fff;
font-size:18px;
line-height: 2.4;
margin-bottom: 24px;
text-align: center;
}
.subpage_wrap .town_detail__sc3 .stay_recommend ul.stay_recommend_place {
justify-content: flex-start;
gap:3%;
margin-top: 30px;

opacity: 0;
height: 0;
transition: .3s ease-in-out;
pointer-events: none;
transform: translateY(-30px);
}
.subpage_wrap .town_detail__sc3 .stay_recommend ul.stay_recommend_place.is-open {
opacity: 1;
height: auto;
transform: translateY(0);
padding-bottom: 48px;
}
.subpage_wrap .town_detail__sc3 .stay_recommend li {
margin-bottom: 24px;
width:48.5%;
}
.subpage_wrap .town_detail__sc3 .stay_recommend p {font-size:14px;}
.subpage_wrap .town_detail__sc3 .stay_recommend .item_name {
font-size:15px;
font-weight: 700;
margin-bottom: 4px;
}

.subpage_wrap .town_detail__sc3 .stay_recommend dl {
font-size:12px;
margin-top:8px;
}

.subpage_wrap .town_detail__sc3 .stay_schedule {
opacity: 0;
height: 0;
transition: .3s ease-in-out;
pointer-events: none;
transform: translateY(-30px);
}
.subpage_wrap .town_detail__sc3 .stay_schedule.is-open {
opacity: 1;
height: auto;
transform: translateY(0);
padding-bottom: 25px;
}
.subpage_wrap .town_detail__sc3 .modelAC,
.subpage_wrap .town_detail__sc3 .stay_recommendAC {
position: relative;
width: 13em;
margin: 10px auto;
padding: 10px 0;
background: #656565;
border-radius: 10px;
font-size: 13px;
text-align: center;
font-weight: bold;
color: #fff;
line-height: 1;
}
.subpage_wrap .town_detail__sc3 .modelAC::before,
.subpage_wrap .town_detail__sc3 .modelAC::after,
.subpage_wrap .town_detail__sc3 .stay_recommendAC::before,
.subpage_wrap .town_detail__sc3 .stay_recommendAC::after{
position: absolute;
content:'';
width: 15px;
height: 2px;
background-color: #fff;
}
.subpage_wrap .town_detail__sc3 .modelAC::before,
.subpage_wrap .town_detail__sc3 .stay_recommendAC::before{
top:48%;
left: 15px;
transform: rotate(0deg);
}
.subpage_wrap .town_detail__sc3 .modelAC::after,
.subpage_wrap .town_detail__sc3 .stay_recommendAC::after{
top:48%;
left: 15px;
transform: rotate(90deg);
}
.subpage_wrap .town_detail__sc3 .modelAC.is-open::before,
.subpage_wrap .town_detail__sc3 .stay_recommendAC.is-open::before{transform: rotate(45deg);}
.subpage_wrap .town_detail__sc3 .modelAC.is-open::after,
.subpage_wrap .town_detail__sc3 .stay_recommendAC.is-open::after {transform: rotate(-45deg);}


/*640px以上*/
@media screen and (min-width: 640px) {}

/*760px以上*/
@media screen and (min-width: 760px),print {
.subpage_wrap .town_detail__sc3 .modelAC,
.subpage_wrap .town_detail__sc3 .stay_recommendAC {
display: none;
}
.subpage_wrap .town_detail__sc3 .stay_schedule {
margin-top:40px;
opacity: 1;
height: auto;
transition: 0s;
pointer-events: auto;
transform: none;
}

.subpage_wrap .town_detail__sc3 .stay_schedule__day {
justify-content: space-between;
align-items: flex-start;
margin-bottom: 32px;
padding-bottom: 32px;
}

.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_title {
margin-bottom: 0;
font-size:40px;
height: 120px;
line-height: 120px;
width: 120px;
}

.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary {
font-size:16px;
width: calc(100% - 160px);
}

.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li:not(:last-child)::after {
line-height: 40px;
height: 40px;
}

.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .baloon {font-size:16px;}

.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .day_spot_point strong {
margin-bottom: 0;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .day_spot_point.flex {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .day_spot_point .day_spot_point_text {
    width: 70%;
}
.subpage_wrap .town_detail__sc3 .stay_schedule__day .day_summary li .day_spot_point .day_spot_point_img {
    width: 25%;
}

.subpage_wrap .town_detail__sc3 .stay_recommend {margin-top:40px;}
.subpage_wrap .town_detail__sc3 .stay_recommend .detail_subttl {
font-size:24px;
line-height: 2.4;
margin-bottom: 40px;
}
.subpage_wrap .town_detail__sc3 .stay_recommend ul.stay_recommend_place {
opacity: 1;
height: auto;
transition: 0s;
pointer-events: auto;
transform: none;
margin: 0;
}
.subpage_wrap .town_detail__sc3 .stay_recommend li {
margin-bottom: 24px;
width:31.33%;
}
.subpage_wrap .town_detail__sc3 .stay_recommend p {font-size:16px;}
.subpage_wrap .town_detail__sc3 .stay_recommend .item_name {
font-size:18px;
margin-bottom: 8px;
}

.subpage_wrap .town_detail__sc3 .stay_recommend dl {
display: inline-flex;
justify-content: flex-start;
flex-wrap: wrap;
font-size:14px;
}
.subpage_wrap .town_detail__sc3 .stay_recommend dt {width: 6em;}
.subpage_wrap .town_detail__sc3 .stay_recommend dd {width:calc(100% - 6.5em)}


}


.subpage_wrap .town_detail__sc4 .hotels_contents {margin-top:24px;}

.subpage_wrap .town_detail__sc4 .hotels_cotents__item {margin-bottom: 40px;}
.subpage_wrap .town_detail__sc4 .hotels_cotents__item .flex {}
.subpage_wrap .town_detail__sc4 .hotels_cotents__item .item_summary {margin-top:16px;}
.subpage_wrap .town_detail__sc4 .item_summary h5 {
font-size:16px;
margin-bottom: 8px;
}
.subpage_wrap .town_detail__sc4 .item_summary p {font-size:14px;}
.subpage_wrap .town_detail__sc4 .item_summary dl {
border-top:1px solid #ddd;
display: inline-flex;
justify-content: flex-start;
flex-wrap: wrap;
font-size:12px;
margin-top: .75em;
padding-top: .75em;
width: 100%;
}
.subpage_wrap .town_detail__sc4 .item_summary dt {width: 7em;}
.subpage_wrap .town_detail__sc4 .item_summary dd {width:calc(100% - 7.5em)}
.subpage_wrap .town_detail__sc4 .item_summary dd.half {width:calc(50% - 7.5em)}
.subpage_wrap .town_detail__sc4 .item_equip {margin:16px auto;}
.subpage_wrap .town_detail__sc4 .item_equip p {
background-color: #ddd;
font-size:14px;
padding: .25em 1em
}

.subpage_wrap .town_detail__sc4 .hotels_point {
background-color: #eee;
font-size:14px;
margin-top:32px;
padding: 24px 16px 16px;
position: relative;
}
.subpage_wrap .town_detail__sc4 .hotels_point::before {
background-color: #444;
content:'ワーケーションにおすすめのPoint！';
color:#fff;
font-size:1.2em;
font-weight: 700;
padding: 0 1em;
position: absolute;
top:-.8em;
left:0;
}
.subpage_wrap .town_detail__sc4 .hotels_point  ul {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-wrap: wrap;
gap: 10px;
margin: 20px 0 0;
}
.subpage_wrap .town_detail__sc4 .hotels_point  ul li {
width: 48%;
}
.subpage_wrap .town_detail__sc4 .hotels_cotents__item .hotels_btn {
display: flex;
flex-flow: row wrap;
gap:16px;
justify-content: center;
font-size:16px;
line-height: 48px;
margin:16px auto 0;
/*max-width: 360px;*/
transition: .3s all;
}

.subpage_wrap .town_detail__sc4 .hotels_cotents__item .hotels_btn a {
background-color: #dd9751;
color:#fff;
display: block;
text-align: center;
width:calc((100% - 16px) / 2);
}
.subpage_wrap .town_detail__sc4 .hotels_cotents__item .hotels_btn a:hover {background-color:#f8a24d;}

.subpage_wrap .town_detail__sc4 .hotels_cotents__item .hotels_btn.col_3 a:first-child {width:100%;}

/*640px以上*/
@media screen and (min-width: 640px) {}

/*760px以上*/
@media screen and (min-width: 760px),print {

.subpage_wrap .town_detail__sc4 .hotels_contents {margin-top:40px;}

.subpage_wrap .town_detail__sc4 .hotels_cotents__item {margin-bottom: 56px;}

.subpage_wrap .town_detail__sc4 .hotels_cotents__item .flex {justify-content: space-between;}
.subpage_wrap .town_detail__sc4 .hotels_cotents__item .item_pic {width:49.48%;}
.subpage_wrap .town_detail__sc4 .hotels_cotents__item .item_summary {
margin-top:0;
width:47.42%;
}
.subpage_wrap .town_detail__sc4 .item_summary h5 {font-size:20px;}
.subpage_wrap .town_detail__sc4 .item_summary p {font-size:16px;}
.subpage_wrap .town_detail__sc4 .item_summary dl {font-size:14px;}

.subpage_wrap .town_detail__sc4 .item_equip {margin:16px auto 24px;}
.subpage_wrap .town_detail__sc4 .item_equip p {font-size:16px;}

.subpage_wrap .town_detail__sc4 .hotels_point {
font-size:16px;
margin-top:16px;
padding: 32px 24px 24px;
}
.subpage_wrap .town_detail__sc4 .hotels_point  ul {
flex-wrap: nowrap;
gap: 0 1%;
}
.subpage_wrap .town_detail__sc4 .hotels_point  ul li {
width: auto;
}
.subpage_wrap .town_detail__sc4 .hotels_cotents__item .hotels_btn {
font-size:20px;
line-height: 56px;
margin:24px auto 0;
}

.subpage_wrap .town_detail__sc4 .hotels_cotents__item .hotels_btn.col_3 a,
.subpage_wrap .town_detail__sc4 .hotels_cotents__item .hotels_btn.col_3 a:first-child {
width:calc((100% - 32px) / 3);
}
}


.subpage_wrap .town_detail__sc5 .faq_contents {margin-top:24px;}

.subpage_wrap .town_detail__sc5 .faq_title {
background-color: #96abbd;
border-bottom: 1px solid #fff;
color:#fff;
cursor: pointer;
font-size:15px;
padding: .5em .5em .5em 40px;
transition: all .5s ease;
position: relative;
}

.subpage_wrap .town_detail__sc5 .faq_title::before,
.subpage_wrap .town_detail__sc5 .faq_title::after{
position: absolute;
content:'';
width: 15px;
height: 2px;
background-color: #fff;
}
.subpage_wrap .town_detail__sc5 .faq_title::before{
top:48%;
left: 15px;
transform: rotate(0deg);
}
.subpage_wrap .town_detail__sc5 .faq_title::after{
top:48%;
left: 15px;
transform: rotate(90deg);
}
.subpage_wrap .town_detail__sc5 .faq_title.close::before{transform: rotate(45deg);}
.subpage_wrap .town_detail__sc5 .faq_title.close::after{transform: rotate(-45deg);}

.subpage_wrap .town_detail__sc5 .faq_txt {
background-color: #fff;
display: none;
font-size:14px;
padding: .5em .5em .5em 40px;
margin: 0 1em;
}

/*760px以上*/
@media screen and (min-width: 760px),print {
.subpage_wrap .town_detail__sc5 .faq_contents {margin-top:40px;}

.subpage_wrap .town_detail__sc5 .faq_title {
font-size:18px;
padding: .5em .5em .5em 48px;
}

.subpage_wrap .town_detail__sc5 .faq_txt {
font-size:18px;
padding: .5em .5em .5em 48px;
}
}



.subpage_wrap .special_event_bnr {margin:0 auto 40px;}

.subpage_wrap .special_event_detail {
background-color: #ebded7;
margin:0 calc(50% - 50vw);
padding: 48px 0;
width:100vw;
}
.subpage_wrap .special_event_detail__inner {
margin:auto;
max-width: 970px;
width: 90%;
}

.subpage_wrap .special_event_detail .event_pic {
margin: 15px 0 24px;
}
.subpage_wrap .special_event_detail .event_pic a span {
display: block;
text-align: right;
font-size: 12px;
margin: 0;
}


.subpage_wrap .special_event_detail .cv_event {
gap:16px;
justify-content: center;
margin-bottom: 32px;
}
.subpage_wrap .special_event_detail .cv_event li a {
background-color: #dd9751;
color:#fff;
display: block;
font-size:16px;
line-height: 48px;
padding: 0 2em;
}

.subpage_wrap .special_event_detail .special_event__caution h4 {
border-bottom: 1px solid #000;
font-size:14px;
font-weight: 700;
margin-bottom: 1em;
text-align: center;
}
.subpage_wrap .special_event_detail .special_event__caution li {
font-size:12px;
margin-bottom: .5em;
padding-left: 10px;
text-indent: -10px;
}
.subpage_wrap .special_event_detail .special_event__caution li::before {
content:'●';
display: inline-block;
font-size:10px;
margin-left: 10px;
}

/*760px以上*/
@media screen and (min-width: 760px),print {
.subpage_wrap .special_event_bnr {margin:0 auto 64px;}

.subpage_wrap .special_event_detail {padding: 80px 0;}
.subpage_wrap .special_event_detail .event_pic {
width: 40%;
margin: 15px auto 0;
margin-bottom:40px;
text-align: center;
}
.subpage_wrap .special_event_detail .event_pic img {width: 100%;}
.subpage_wrap .special_event_detail .event_pic a span {font-size: 14px;}

.subpage_wrap .special_event_detail .cv_event {
gap:32px;
margin-bottom: 64px;
}
.subpage_wrap .special_event_detail .cv_event li a {
font-size:20px;
line-height: 64px;
}

.subpage_wrap .special_event_detail .special_event__caution h4 {font-size:16px;}
.subpage_wrap .special_event_detail .special_event__caution li {font-size:14px;}
}