/*
Theme Name: IZA
Author: IZA
Version: 1.0
Description: IZA theme
*/

@charset "UTF-8";
/* ===================================================================
// 基本スタイル
// ===================================================================*/

html {font-size: 62.5%; height: 100%; font-family: kinuta-shin-stdn, sans-serif; font-weight: 400; font-style: normal;}
body {margin: 0; padding: 0; background-color: #fff; font-size: 2.2rem; line-height: 1; color: #333333; font-weight: 400; height: 100%; max-width: 100%;}
html {visibility: hidden;}
html.wf-active {visibility: visible;}
@media screen and (max-width: 750px) {
body {font-size: 1.6rem;}
#index .header .btn{display: none;}
#index .mh .header .btn{display: inline;}
}

/* ボックスサイズ */
*, *:before, *:after {-webkit-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;}

/* 行間 */
p{line-height: 1.8; font-family: kinuta-shin-stdn, sans-serif; -webkit-text-stroke: 0.5px #333; text-stroke: 0.5px #333;}
h2{font-size: 4.5rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; margin-bottom: 4rem;}
img.img_r{border-radius: 45px;}
@media screen and (max-width: 750px) {
h2{font-size: 2.6rem;}
p{-webkit-text-stroke: 0.5px #333; text-stroke: 0.5px #333;}
img.img_r{border-radius: 20px;}
}

div, h1, h2, h3, h4, h5 {line-height: 1.2;}

/* リンク */
a {text-decoration: none; -webkit-transition: .3s; transition: .3s; color: #333;}
a:hover {opacity: .7;}

/*  パンくずリスト　*/
.bread {max-width: 1000px; margin: auto; padding: 3% 0% 5%;}
.bread ul {display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start;}
.bread ul li {margin-right: 1rem; -webkit-text-stroke: 0.5px #333; text-stroke: 0.5px #333; font-size: 1.6rem;}
.bread ul li a{}
.bread ul li:after {content: "\f105"; font-family: "Font Awesome 5 free"; font-weight: 700; margin-left: 1rem;}
.bread ul li:last-child:after {display: none;}

@media screen and (max-width: 450px) {
.bread {padding: 1.2rem 0; margin: 3% 10% 0%;}
.bread ul {-ms-flex-wrap: wrap; flex-wrap: wrap;}
.bread ul li {margin-right: .4rem; font-size: 1.3rem; display: -webkit-box; display: -ms-flexbox; display: flex;}
.bread ul li:after {margin-left: .4rem;}
.bread ul li:last-child:after {display: none;}
}

/* img */
img {max-width: 100%; height: auto;}
.object_fit_img {-o-object-fit: cover; object-fit: cover;}

/* flex */
.flex_wrap {display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between;}

@media screen and (max-width: 1000px) {
.flex_wrap {-ms-flex-wrap: wrap; flex-wrap: wrap;}
}

/* width */
.inner {width: 90%; margin: 0 5%;}

@media screen and (max-width: 750px) {
.inner {width: 80%; margin: auto 10%;}
}

/* pc & sp */
.pc {display: block;}
.sp {display: none;}
@media screen and (max-width: 750px) {
.pc {display: none;}
.sp {display: block;}
}

.btn_area {display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: center; padding: 0; margin: 2rem auto;}
.btn_area p {text-align: center;}

@media screen and (max-width: 1000px) {
.btn_area {width: 80%; margin: 2rem 10%!important;}
}

.btn{color: #fff; background-color: #333333; font-size: 3rem; font-style: normal; padding: 2rem 4rem; border-radius: 45px; -webkit-text-stroke: 2px #fff; text-stroke: 2px #fff; border: 2px solid #333;}
.btn:hover{color: #333333; background-color: #fff; -webkit-text-stroke: 2px #333333; text-stroke: 2px #333333; opacity: 1;}

@media screen and (max-width: 750px) {
.btn{font-size: 1.6rem; padding: 1rem 3rem;}
}

/* CSS Document */
.ttl_b{margin-bottom: 4rem;}
.ttl_b span {display: block; font-size: 1.8rem; font-weight: normal; letter-spacing: .2rem; font-style: normal; margin-bottom: 2.5rem; padding-bottom: 2.5rem;}
.ttl_b h2{font-size: 3rem; margin-bottom: 2rem;}

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

/* ===================================================================
// メインビジュアル、タイトル
// ===================================================================*/
#mainimg {display: block; z-index: 889; padding-top: 25rem; margin: 0 5%; border-radius: 30px;}
#mainimg .mainimg_contents {width: 100%; border-radius: 30px; height: 90vh; position: relative;}
#mainimg .mainimg_contents, #mainimg .mainimg_contents ul img{height: 90vh; border-radius: 30px; width: 100%;
}
@media screen and (max-width: 1000px) {
#mainimg .mainimg_contents{padding-top: 0; height: 90vh;}
#mainimg .mainimg_contents, #mainimg .mainimg_contents ul img{height: 90vh;}
}

@media screen and (max-width: 750px) {
#mainimg {padding-top: 7rem;}
#mainimg .mainimg_contents{padding-top: 0; height: 30vh;}
#mainimg .mainimg_contents, #mainimg .mainimg_contents ul img{height: 30vh;}
}
#mainimg .mainimg_contents .information {position: absolute; font-weight: bold; z-index: 2; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); width: 80%;text-align: center;}

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

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

/* ===================================================================
// main
// ===================================================================*/
main {margin: 12rem 0;}
main#index {margin-top: 0;}
main > section {padding: 1rem 0;}
main > section:first-child {padding-top: 0;}

@media screen and (max-width: 960px) {
main {margin: 4rem auto 0;}
}

@media screen and (max-width: 750px) {
main {margin: 2rem 0 0; overflow: hidden;}
main > section {padding: 4rem 0;}
}

/* ===================================================================
// ヘッダー,
// ===================================================================*/
header {width: 100%; -webkit-box-align: center; -ms-flex-align: center; align-items:flex-start; position: fixed; z-index: 1000; background-color: #fff; padding: 1rem 1rem 0 1rem;}
header .flex_wrap.spmenu{width: 100%; padding:0rem 2rem .5rem; justify-content: space-between;}
.head_reserve{padding: .5rem 1rem 0.5rem 1rem; border: 3px solid #333; border-radius: 8px; width: 20rem; background-color: #fff;}
.head_reserve a{display: flex; gap:5%; padding: 0; margin: 0; justify-content: space-around; align-items: center;}
.head_reserve a div p{font-size: 2.2rem; line-height: 1.8rem; text-align: center; -webkit-text-stroke: 2px #333; text-stroke: 2px #333;}
.head_reserve a div p span{font-size: 1.2rem; margin: 0;}

.head_reserve2 {}
.head_reserve2 a{display: flex; gap:5%; padding: 0; margin: 0; justify-content: space-around; align-items: center;}
.head_reserve2 a div p{font-size: 2.2rem; line-height: 1.8rem; text-align: center; -webkit-text-stroke: 2px #333; text-stroke: 2px #333;}
.head_reserve2 a div p span{font-size: 1.2rem; margin: 0;}

.head_reserve3{padding: .5rem 1rem 0.5rem 1rem; border: 3px solid #333; border-radius: 8px; width: 20rem; background-color: #fff;}
.head_reserve3 a{display: flex; gap:5%; padding: 0; margin: 0; justify-content: space-around; align-items: center;}
.head_reserve3 a div p{font-size: 1.8rem; line-height: 1.8rem; text-align: center; -webkit-text-stroke: 2px #333; text-stroke: 2px #333;}
.head_reserve3 a div p span{font-size: 1.2rem; margin: 0;}


header .logo{text-align: center; z-index: 999; width:100%; height:70px; position: relative;}
header .logo img {width: 100px; height:auto; margin:0; padding:0;}

@media screen and (max-width: 750px) {
header .logo{text-align: center; z-index: 999; width:100%; height:auto; position: relative;}
header .logo img {width: 100%; height: auto; margin:0;}
}

header .logo_home{ width: 100%; height: auto; position: relative;   padding: 5rem 0; margin:0;}
header .logo_home img {width: auto; height: 70px; margin: auto; display: block; }
header#header_top{position: relative;}
@media screen and (max-width: 750px) {
header .logo_home{ width: 100%; height: auto; position: relative;   padding: 1rem 0; margin:0;}
header .logo_home img {width: auto; height: 50px; margin: auto; display: block; }
}

/*========= 上部固定させるためのCSS ===============*/
@media screen and (max-width: 750px) {
header {top: 0; left: 0; padding: 2rem 0 0rem; background: #fff!important;}
header .logo{height: auto; font-size: 2rem; width: 8rem;}
header#header{position: fixed;}
header#header_top{position: relative;}
#header{z-index: 100;/*最前面へ*/ background: none;}
#header_top .logo{display: none;}
header .flex_wrap.spmenu{justify-content: center;}
}

#header_top nav{z-index: 999;}
.header-sec {padding: 0 5%; display: flex; justify-content: space-around;}
.header-logo {width: 107px; height: auto; font-size: 5rem;}
.header-ul {list-style: none; position: relative; display: flex; justify-content: space-around;}
#header .header-ul li {font-size:3vw;margin-right: 1.7vw;}
#header_top .header-ul li{font-size: 1.8vw; margin-right: 1.9vw;}
#header .header-ul li a {display: block; padding-bottom: 3px; padding: 1rem 1rem; font-size:2vw; text-align: center; line-height: 1.6vw; -webkit-text-stroke: 2px #333; text-stroke: 2px #333;}
#header .header-ul li a span{font-size:1.2vw;}
#header_top .header-ul li a{display: block; font-style: normal; padding-bottom: 3px; padding: 3rem 1rem;}
.header-ul li a .head_i{justify-content: flex-start;}
.header-ul li a .head_i i{color: #248DDA; border: 2px solid #248DDA; border-radius: 15px; margin-right: 2rem; padding: 3px 6px; width: 25px; height: 25px; display: block;}
#header_top .header-ul li.contactmenu a{background: #053F69; padding: 3rem 2rem;}
#header_top .header-ul li.contactmenu{font-size: 1.6rem; margin-right: 0;}
#header li.contactmenu a{background: #053F69; color: #fff; padding: 3rem 2rem;}
#header li.contactmenu{font-size: 1.6rem; margin-right: 0;}
.header-ul li a:hover {color: #999; transition: 0s;}
.header-ul li:last-child {margin-right: 0px;}

@media only screen and (max-width: 750px) {
#header .header-ul li {font-size: 1.4rem; margin-right: 1.8vw;}
#header_top .header-ul li{font-size: 1.4rem; margin-right: 1.8vw;}
#header_top .header-ul li.contactmenu{font-size: 1.4rem; margin-right: 0;}
#header li.contactmenu{font-size: 1.4rem; margin-right: 0;}
#header .header-ul li a {padding: 1rem 0;}
#header_top .header-ul li a{padding: 1rem 0;}
#header li.contactmenu a{background: #053F69; color: #fff; padding: 3rem 2rem;}
#header .header-ul{margin-top: -1.2rem;}
}

@media only screen and (max-width: 750px) {
  /* body
--------------------------------*/
.inner {position: relative; width: calc(100% - 40px); max-width: 1000px; margin: 0 auto; padding: 0;}
.header-sec {height: 55px; padding: 0 20px;}
.header-logo {width: 54px; height: auto;}
.header-ul {display: none;}
.photo-box p {font-size: 1.6rem;}
.text-sec p {font-size: 1.6rem; line-height: 1.9;}
}

/* ===================================================================
// ハンバーガーメニュー
// ===================================================================*/
nav.NavMenu{display: none;}

@media only screen and (max-width: 750px) {
	/* body
  --------------------------------*/
/*ナビのスタイル*/
nav.NavMenu{position: fixed; z-index: 12; top: 65px; left: 0; background: #fff; text-align: center; width: 100%; height: 100%; display: none;}
nav.NavMenu ul{width: 100%; margin: 0 auto; padding: 0; position: absolute; top: 25%; left: 50%; transform: translateY(-50%) translateX(-50%);}
nav.NavMenu ul li{font-size: 24px; list-style-type: none; width: 100%; padding-bottom: 0px; margin-bottom: 0; text-align: left;}
nav.NavMenu ul li:last-child{padding-bottom: 0;}
nav.NavMenu ul li a{display: block; color: #080C07; padding: 0.8rem 0 0.8rem 3rem; text-decoration :none; font-size: 22px; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}
nav.NavMenu ul li a span{font-size: 16px; margin-left: 1.5rem;padding-top: -15px;}
nav.NavMenu .head_reserve{width: 50%; position: absolute; bottom: 30%; left: 25%;}
nav.NavMenu .head_reserve a{justify-content: center;}
nav.NavMenu .head_reserve a p{font-size: 1.8rem;}
nav.NavMenu .head_reserve a p span{font-size: 1rem;}
nav.NavMenu .sns_flex{position: absolute; bottom: 20%; width: 100%;}
nav.NavMenu .sns_flex .flex_wrap{gap: 3rem;justify-content: center;}
 nav.NavMenu .sns_flex .flex_wrap a{width: 3rem;}
nav.NavMenu .line {position: absolute; bottom: 10%; width: 100%; }
nav.NavMenu .line img {margin:0 auto; width:40%;}
 
/*ボタンのスタイル*/
.Toggle {position: fixed; right:18px; top: 10px; width: 45px; height: 45px; cursor: pointer; z-index: 13; display: block;}
.Toggle span {display: block; position: absolute; width: 35px; border-bottom: solid 4px #333; -webkit-transition: .35s ease-in-out; -moz-transition: .35s ease-in-out; transition: .35s ease-in-out; left: 6px;}
.Toggle span:nth-child(1) {top: 15px;}
.Toggle span:nth-child(2) {top: 26px;}
.Toggle span:nth-child(3) {display: none;}
.Toggle.active span:nth-child(1) {top: 18px; left: 6px; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg); border-bottom: solid 3px #333;}
.Toggle.active span:nth-child(2), .Toggle.active span:nth-child(3) {top: 18px; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg); border-bottom: solid 3px #333;}
nav.globalMenuSp .head_reserve{width: 50%; position: absolute; bottom: 20%; left: 25%;}
nav.globalMenuSp .head_reserve a{justify-content: center;}
nav.globalMenuSp .head_reserve a p{font-size: 2.5rem;}
nav.globalMenuSp .head_reserve a p span{font-size: 1.2rem;}
nav.globalMenuSp .sns_flex{position: absolute; bottom: 10%; width: 100%;}
nav.globalMenuSp .sns_flex .flex_wrap{gap: 3rem; justify-content: center;}
nav.globalMenuSp .sns_flex .flex_wrap a{width: 3rem;}
.sp_bottom{position: fixed; bottom: 2rem; right: 0; z-index: 2000; width: 100%; text-align: center;}
.sp_bottom2{position: fixed; bottom: 1rem; right: 0; z-index: 2000; width: 100%; text-align: center;}
.sp_bottom2 img {width: 80%; }
}
 
.sp_bottom2{position: fixed; bottom: 1rem; right: 0; z-index: 2000; width: 100%; text-align: center;}
.sp_bottom2 img {max-width:300px; height:auto; }

 /*tabの形状*/
.tab{display: flex; flex-wrap: wrap; margin-left: 5%;}
.tab li a{display: block; background:#fff; border: 1px solid #000; border-radius: 15px; margin:0 2rem 0 0; padding: 2rem 5rem;}
 /*liにactiveクラスがついた時の形状*/
 .tab li.active a{color: #fff; background: #303030; border: 1px solid #000; border-radius: 15px;}

@media only screen and (max-width: 750px) {
.tab li a{padding: 2rem 3rem;}
}
  
/*エリアの表示非表示と形状*/
.area {display: none;/*はじめは非表示*/ opacity: 0;/*透過0*/ background: #fff; padding:50px 20px;}
  
/*areaにis-activeというクラスがついた時の形状*/
.area.is-active {display: block;/*表示*/ animation-name: displayAnime;/*ふわっと表示させるためのアニメーション*/ animation-duration: 2s; animation-fill-mode: forwards;}
  
@keyframes displayAnime{
from {opacity: 0;}
to {opacity: 1;}
 }
 
.youtubesm{background:#fff}
.youtubesm a{border:2px solid #fff; display:block;position:relative}
.youtubesm a:hover{opacity:.6}
.youtubesm a::before{background:url(ここにアイコンのURLを入れる) center center / 100px 64px no-repeat;content:""; display:block; width:100%; /*アイコンの幅調整*/ height:60px; /*アイコンの高さ調整*/ margin:-32px auto 0; position:absolute; top:50%; left:0; right:0; z-index:1}
.youtubesm a img{width:100%}

/* ===================================================================
// フッター
// ===================================================================*/
footer .copyright{font-size: 1.6rem; text-align: center; color: #fff; width: 100%; background: #333333; padding-top: 1rem; padding-bottom: 3rem;}
footer{}
footer .company{text-align: center; background:#333333; width: 100%;}
footer .head_reserve{text-align: center; justify-content: center; width: 100%; border: 0px; padding-top: 10%; background-color: rgba(255, 255, 255, 0); margin-bottom: 10%;}
footer .head_reserve a{text-align: center; justify-content: center; gap: 3%; padding: 1rem 1rem 0.5rem 1rem; border: 3px solid #333; border-radius: 8px; width:26%; background-color: #fff; margin: 0 37% 5%;}
footer .company .logo{width: 40%; margin: auto 30% 10%; padding:10% 0 0 0 ;}
footer .company .flex_wrap{justify-content: space-around; gap: 10%; color: #fff; padding-bottom: 3%; margin-bottom: 0; text-align: left; width: 90%; margin-left: 5%;}
footer .company .flex_wrap .footer_info{width: 55%; text-align: left;}
footer .company .flex_wrap .footer_info h2{font-size: 3.5rem; -webkit-text-stroke: 0px #fff; text-stroke: 0px #fff;}
footer .company .flex_wrap .footer_info .flex_wrap{justify-content: flex-start; gap: 3%; align-items: center;}
footer .company .flex_wrap .footer_info .fotter_info_img{width: 4rem; height: auto;}
footer .company .flex_wrap .footer_info .fotter_info_img img{width: 100%;}
footer .company .flex_wrap .footer_info .fotter_info_txt a, footer .company .flex_wrap .footer_info .fotter_info_txt p{color: #fff; -webkit-text-stroke: 0.5px #fff; text-stroke: 0.5px #fff;}
footer .company .flex_wrap .sns_flex{width: 35%; text-align: left;}
footer .company .flex_wrap .sns_flex .flex_wrap{flex-wrap: wrap; gap: 6%; justify-content: flex-start;}
footer .company .flex_wrap .sns_flex .flex_wrap a{width: 15%; margin-bottom: 8%;}
footer .company .flex_wrap .sns_flex .flex_wrap a img{width: 100%;}
footer .company .flex_wrap .sns_flex p{font-size: 3.5rem; line-height: 4.5rem; margin-bottom: 10%; -webkit-text-stroke: 0.5px #fff; text-stroke: 0.5px #fff;}
footer .footer_menu{padding:0% 5% 5%; color: #fff; background:#333333;}
footer .footer_menu ul{border-top: .5px solid #fff; margin: 0%; padding-top: 5%;}
footer .footer_menu ul li a{color: #fff; font-size: 1.8rem; -webkit-text-stroke: 0.5px #fff; text-stroke: 0.5px #fff;}
footer .company .flex_wrap .sns_flex .line{width:40%; margin:0 auto;}

@media screen and (max-width: 890px) {
footer .head_reserve a{width:50%; margin: 0 25% 5%;}
}

@media screen and (max-width: 750px) {
footer{margin-top: -10%; background-color: rgba(255, 255, 255, 0);}
footer .company .flex_wrap{flex-wrap: wrap;}
footer .company .flex_wrap .sns_flex{width: 100%;}
footer .company .flex_wrap .footer_info{width: 100%;}
footer .company .logo{width: 40%; margin: auto 30% 20%;}
footer .company{text-align: center; background:#333333;}
footer .head_reserve{text-align: center; justify-content: center; width: 100%; border: 0px; padding-top: 20%; background-color: rgba(255, 255, 255, 0); margin-bottom: 5%;}
footer .head_reserve a{width:70%; margin: 0 15% 5%;}
footer .company .flex_wrap .sns_flex{margin: 10% auto 0;}
footer .company .flex_wrap .sns_flex p{font-size: 2rem; line-height: 4.5rem; margin-bottom: 5%;}
footer .company .flex_wrap .sns_flex .flex_wrap{flex-wrap: wrap; gap: 10%;}
footer .company .flex_wrap .sns_flex .flex_wrap a{width: 12%; margin-bottom: 5%;}
footer .footer_menu{padding:3% 5% 5%; color: #fff; background:#333333;}
footer .footer_menu ul{border-top: .5px solid #fff; margin: 0%; padding-top: 5%;}
footer .footer_menu ul li{width: 50%; margin-top: 5%; text-align: left;}
footer .footer_menu ul li a{font-size: 1.6rem;}
}

/* ===================================================================
// メイン
// ===================================================================*/

.waves {position:relative; width: 100%; height:15vh; margin-bottom:-7px; /*Fix for safari gap*/ min-height:100px; max-height:150px; z-index: 10;}
.waves.waves2{transform:rotate(180deg);}

.content {position:relative;height:20vh; text-align:center;background-color: #F7F7F7;}
  
 /* Animation */ 
.parallax > use {animation: move-forever 25s cubic-bezier(.55,.5,.45,.5) infinite;}
.parallax > use:nth-child(1) {animation-delay: -1s;animation-duration: 20s;}

@keyframes move-forever {
0% {transform: translate3d(-90px,0,0);}
100% { transform: translate3d(85px,0,0);}
}

/*Shrinking for mobile*/
@media (max-width: 768px) {
.waves {height:40px; min-height:40px;}
.content { height:30vh;}
h1 {font-size:24px;}
  }

/* -------------------ABOUT ------------ */
.top_message{margin-bottom: 5%;}
.top_message .flex_wrap{gap:10%; align-items: center;}
.top_message .flex_wrap div{width: 45%;}
.top_message .flex_wrap div h2{font-size: 5rem; line-height: 9rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}
.top_message .flex_wrap div p{font-size: 2.5rem; margin-bottom: 8%; line-height: 5rem; font-family: kinuta-shin-stdn, sans-serif; font-weight: 400; font-style: normal;}
.top_message.top_villa{background-color: #F7F7F7; padding: 15% 0 15%; margin-bottom: 0;}
.top_message.top_villa img{margin-bottom: 10%;}
.wave_top2#sineCanvas1, .wave_top2#sineCanvas3, .wave_top2#sineCanvas5{transform:rotate(180deg);}

@media screen and (max-width: 750px) {
.top_message{margin: auto 5% 0;}
.top_message .flex_wrap div h2{font-size: 3.5rem; line-height: 3.5rem;}
.top_message .flex_wrap{flex-wrap: wrap;}
.top_message .flex_wrap div{width: 100%;}
.top_message .flex_wrap div p{font-size: 1.6rem;line-height: 4.5rem;}
}

/* -------------------各種villa ------------ */
.top_message.top_villa2{background-color: #fff; padding-top: 15%;}
.top_message.top_villa2 p{margin-left: 10%;}

/* -------------------ABOUT ------------ */
#iframe{width: 100%; padding: 15% 0; background-color: #F7F7F7;}
.iframe_video{max-width: 1000px; margin: auto;}

.youtube {cursor : pointer;}
.youtube img {border-radius: 30px; width: 90%; height:80vh; margin: auto 5%;border: 4px solid #333;}
.iframe_video video{width: 100%; height:auto; border: 4px solid #333; border-radius: 30px;margin: auto;}
#iframe .top_about{margin: 5% 5% 8% 25%;text-align: left;}
#iframe .top_about h2{margin: 10% auto 5%;}
#iframe .top_about p{margin-bottom: 3rem;}

@media screen and (max-width: 1000px) {
#iframe{width: 100%; padding: 20% 0;}
#iframe video{height:auto;}
.youtube img{height:30vh;}
#iframe .top_about{margin: 5% 10% 8% 10%;}
#iframe .top_about h2{margin: 15% auto 10%;}
.iframe_video{width: 90%; margin: auto 5%;}
}

/* -------------------各種コンテンツ ------------ */
.top_vacation{padding-bottom: 15%; padding-top: 15%;}
.top_vacation .top_vacation_cnt{padding: 5% 15%; width: 100%;}
.motto_ttl{margin-bottom: 6rem;}
.top_vacation .top_vacation_cnt img{margin-bottom: 5%;}
.top_vacation .top_vacation_cnt h2{font-size: 3.5rem; text-align: center;}
.top_vacation .top_vacation_cnt p{width: 80%; margin: 5% 10% 5%;}
.top_vacation .btn_area{margin-top: 5%;}
.top_vacation.top_sauna{background-color: #F7F7F7;}
.top_vacation img.ttl_bar{width: 50%; margin: -4% 25% auto;}

@media screen and (min-width: 2000px) {
.top_vacation img.ttl_bar{width: 30%; margin: -1% 35% auto;}
}

@media screen and (max-width: 750px) {
.motto_ttl{font-size: 2.2rem!important;}
.top_vacation{padding-bottom: 25%;}
.top_vacation .top_vacation_cnt{padding: 10% 10% 5%; width: 100%;}
.top_vacation .top_vacation_cnt img{width: 70%; margin: -10% 15%;}
.top_vacation .top_vacation_cnt p{width: 100%; margin: 5% 0 10%;}
}

/* -------------------スライドアニメーション ------------ */
.slider-2 .slick-slide, .slider-3 .slick-slide {width: 75vw; height: auto; margin: 0 30px; position: relative; overflow: hidden;}
.slider-2 .slick-slide img, .slider-3 .slick-slide img {display: block; width: 100%; object-fit: cover; }
.dots-2 .slick-dots, .dots-3 .slick-dots, .dots-4 .slick-dots, .dots-5 .slick-dots, .dots-6 .slick-dots, .dots-7 .slick-dots, .dots-9 .slick-dots, .dots-10 .slick-dots{text-align: center;}
.dots-2 .slick-dots li, .dots-3 .slick-dots li, .dots-4 .slick-dots li, .dots-5 .slick-dots li, .dots-6 .slick-dots li, .dots-7 .slick-dots li, .dots-9 .slick-dots li, .dots-10 .slick-dots li{display: inline-block;}
.dots-2 .slick-dots button, .dots-3 .slick-dots button, .dots-4 .slick-dots button, .dots-5 .slick-dots button, .dots-6 .slick-dots button, .dots-7 .slick-dots button, .dots-9 .slick-dots button, .dots-10 .slick-dots button{display: block; width: 10px; height: 10px; margin: 6px; font-size: 0; padding: 0; border: 0; outline: none; cursor: pointer; background: #ccc; border-radius: 50%;}
.dots-2 .slick-dots .slick-active button, .dots-3 .slick-dots .slick-active button, .dots-4 .slick-dots .slick-active button, .dots-5 .slick-dots .slick-active button, .dots-6 .slick-dots .slick-active button, .dots-7 .slick-dots .slick-active button, .dots-9 .slick-dots .slick-active button, .dots-10 .slick-dots .slick-active button{background: #666;}

@media screen and (min-width: 1200px) {
.slider-2 .slick-slide {width: 900px; height: auto; margin: 0 30px; position: relative; overflow: hidden;}
.slider-2 .slick-slide img, .slider-3 .slick-slide img{margin-bottom: 0;}
}

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

/* -----------ニュース---------------- */
.top_news{background-color: #F7F7F7; padding: 15% 5% 25%; margin-bottom: -20rem; z-index: -1!important;}
.top_news .news_ttl{text-align: center; width: 20%; margin: auto 40% 10%;}
.top_news .news_ttl h2{margin: 0;}
.top_news .news_ttl img{margin-top: 3%;}
.top_news .news_cnt{margin-bottom: 10%;}
.top_news .news_cnt a{margin-bottom: 5rem; justify-content: flex-start;}
.top_news .news_cnt .date{margin-right: 5%;}
.top_news .news_cnt img{border-radius: 45px;}

@media screen and (max-width: 750px) {
.top_news{background-color: #F7F7F7; padding: 15% 10% 25%; margin-bottom: -10%;}
.top_news .news_ttl{text-align: center; width: 100%; margin: auto 0% 10%;}
.top_news .news_ttl img{width: 10rem;}
.top_news .news_cnt li a{margin-bottom: 0;}
.top_news .news_cnt li a .date{width: 100%;}
.top_news .news_cnt li a .ttl{width: 100%; margin-top: -2rem;}
.top_news .news_cnt img{border-radius: 15px;}
}

/* -----------お問い合わせ---------------- */
 .top_contact{background: url(images/footcontact.png); background-repeat: no-repeat; background-size: cover; background-position: center; text-align: center; margin-bottom: -10%; padding: 0; color: #fff; padding: 8% 10%;}
.top_contact .ttl_b h2{color: #fff;}
.top_contact .ttl_b .btn_area{color: #fff;}
.top_contact p{font-size: 2rem; line-height: 4rem; margin-top: 3%;}
.top_contact .btn2{margin-top: 5%;}
.top_contact .contact_fil{background: rgba(0, 0, 0, 0.5); padding:5% 10%;}
.top_contact .ttl_b{color: #fff;}
.top_contact p{margin:5% auto 3%;}
.top_contact .btn_area{justify-content: center;}

@media screen and (max-width: 1200px) {
.top_contact{margin-bottom: -15%;}
}

@media screen and (max-width: 960px) {
.top_contact{margin-bottom: 0;}
}

@media screen and (max-width: 750px) {
.btn_area{justify-content: center;}
.top_contact p{font-size: 1.6rem;}
}

/* ===================================================================
// 下層ページ
// ===================================================================*/
#content{margin-top: 0; padding-top: 17rem;}
#mainttl{position: relative; text-align: center; max-width: 1000px; width: 100%; margin: auto; color: #fff; border-radius: 45px;}
#mainttl img.header_img{margin: 10% 20%; width: 60%; border-radius: 45px; text-align: center;}

@media screen and (min-width: 1000px) {
#mainttl img.header_img{margin: 0 0; width: 100%;}
}

@media screen and (max-width: 1000px) {
#mainttl {margin: auto 5%; width: 90%;}
#mainttl img.header_img{width: 100%; margin: 0;}
}

#mainttl .mainttl_txt_rboumi{position: absolute; right: 5%; bottom: 8%;}
#mainttl .mainttl_txt_rboumi h1 {margin:0; padding:0;}
#mainttl .mainttl_txt_rboumi img{width: 100%; height: auto; text-align: right; width:64%; max-width: 1000px;}
#mainttl .mainttl_txt_rb{position: absolute; right: 5%; bottom: 5%;}
#mainttl .mainttl_txt_lt{position: absolute; left: 5%; top: 5%;}
#mainttl .mainttl_txt_rt{position: absolute; right: 5%; top: 5%;}
#mainttl .mainttl_txt_lb{position: absolute; left: 5%; bottom: 5%;}
#mainttl h2{font-size: 8rem; margin-bottom: 0; -webkit-text-stroke: 1px #fff; text-stroke: 1px #fff; margin-bottom: 5%;}
#mainttl p{font-size: 4rem; line-height: 4rem; -webkit-text-stroke: 1px #fff; text-stroke: 1px #fff;}
#mainttl div img{width: 25rem; height: auto; text-align: right;}

@media screen and (max-width: 750px) {
#mainttl{border-radius: 15px;}
#mainttl img.header_img{border-radius: 15px;}
#content{padding-top: 8rem; margin: 0;}
#mainttl h2{font-size: 4rem;}
#mainttl p{font-size: 2rem; line-height: 2rem;}
#mainttl div img{width: 10rem;}
#mainttl .mainttl_txt_rboumi img{width: 20rem;}
#mainttl .mainttl_txt_rboumi{bottom: 12%;}
}

/* 
===================================================================
// IZA近江舞子
// ===================================================================*/
.iza_top2_page #iframe .btn_area{text-align: left; justify-content: flex-start; margin-left: 25%;}

/* -----------メッセージ---------------- */
.iza_top2_page .top_message{margin: auto; max-width: 1000px; padding-top: 10%; padding-bottom: 10%;}
.iza_top2_page .naginami_mes{position: relative; margin: 20% 5% 15%; text-align: center;}
.iza_top2_page .naginami_mes img.back{position: absolute; top: 50%; left: 50%; margin-right: -50%; transform: translate(-50%, -50%); z-index: -1;}
.iza_top2_page .naginami_mes .naginami_mes_cnt img{margin-bottom: 5%;}
.naginami_mes_cnt  .info_cnt a{-webkit-text-stroke: 1px #333; text-stroke: 1px #333;}

@media screen and (max-width: 1000px) {
.iza_top2_page .top_message{margin: auto 5%; width: 90%; padding-top: 10%; padding-bottom: 10%;}
.iza_top2_page .top_message .flex_wrap p{line-height: 4rem;}
}

/* -----------各種コンテンツ---------------- */
.naginami_cnt{text-align: center; max-width: 1000px; width: 100%; margin: auto;}
.naginami_cnt img.content_mainimg{margin: 10% 20%; width: 60%;}

@media screen and (min-width: 1000px) {
.naginami_cnt img.content_mainimg{margin:10% 0 0; width: 100%;}
}

.naginami_cnt img.content_icon{margin: 5% 5% 2%;}
.naginami_cnt p{text-align: left; margin: 5% 10% 5% 10%;}
.naginami_cnt .btn_area{gap: 5%;}

@media screen and (max-width: 1000px) {
.naginami_cnt{margin: 5% 5% 0; width: 90%;}
.naginami_cnt img.content_mainimg{margin: 10% 0%; width: 100%;}
.naginami_cnt p{text-align: left; margin: 5% 5% 5% 5%;}
.naginami_cnt img.content_icon{width: 8rem; margin-bottom: 2rem;}
.naginami_cnt .btn_area a{margin-top: 2rem;}
}

.iza_top2_page .top_vacation{background-color: #F7F7F7;}
.iza_top2_page .top_news{background-color: #fff;}

/* 
===================================================================
// IZA近江舞子 nagi / nami
// ===================================================================*/
.oumi_villa_page .iframe_video{margin-bottom: 10%;}
.oumi_villa_page .villa_info{background-color: #F7F7F7; padding: 10% 18% 5%;}
.oumi_villa_page .villa_info h2{font-size: 2.5rem; padding-bottom: 3rem; border-bottom: 1px solid #CCCCCC; margin-bottom: 5rem;}
.oumi_villa_page .villa_info h3{font-size: 2.2rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; margin-bottom: 1rem;}
.oumi_villa_page .villa_info p{margin-bottom: 4rem;}
.oumi_villa_page .btn_area{margin-top: 10%;}
.oumi_villa_page  .naginami_cnt{background-color: #fff;}
.oumi_villa_page  .naginami_cnt img{border-radius: 15px;}

@media screen and (max-width: 1000px) {
.oumi_villa_page .villa_info{background-color: #F7F7F7; padding: 25% 5% 10%;}
.oumi_villa_page .villa_info h2{font-size: 1.8rem;}
.oumi_villa_page .villa_info h3{font-size: 1.6rem;}
}

.mitorizu{text-align: center; max-width: 1000px; width: 100%; margin:10% auto;}
.mitorizu2{text-align: center; max-width: 1000px; width: 100%; margin:10% auto;}
.mitorizu2 img{width: 80%; margin:10% auto;}
.mitorizu2 h2, .mitorizu2 p{text-align: left;}
.mitorizu h2, .mitorizu p{text-align: left;}
.mitorizu .flex_wrap{margin-top: 5%; gap:5%; justify-content: space-around; flex-wrap: nowrap;}
.mitorizu .flex_wrap .flormap{width: 50%;}

@media screen and (max-width: 1000px) {
.mitorizu{width: 90%; margin: 10% 5%;}
.mitorizu2{width: 90%; margin: 10% 5%;}
}

.c {text-align: center;}

.overlay { /* グレーの背景 */position: fixed; background: rgba(0, 0, 0, 0.2); transition: all 0.5s 0s ease; visibility: hidden; opacity: 0; top: 0; left: 0; bottom: 0; right: 0;}
#pop-up {display: none;}
#pop-up:checked + .overlay {visibility: visible; opacity: 1; z-index: 100000; background-color: #000000D0; width: 100%;}
#pop-up2 {display: none;}
#pop-up2:checked + .overlay {visibility: visible; opacity: 1; z-index: 100000; background-color: #000000D0; width: 100%;}
#pop-up3 {display: none;}
#pop-up3:checked + .overlay {visibility: visible; opacity: 1; z-index: 100000; background-color: #000000D0; width: 100%;}
.popWindow {border-radius: 5px; overflow: auto; /* スクロールバー用 */ max-height: 95%; /* すき間 */ min-width: fit-content; /* 横幅が広い時に白の部分が大きくならないため */ max-width: 95%; /* すき間 */ position: fixed; top: 50%; /* 中央に */ left: 50%; /* 中央に */ transform: translate(-50%, -50%); /* 中央に */ z-index: 100010; font-size: 13px; line-height: 18px; margin: 10px auto; padding: 4px 10px; background: #FFFD; /* 枠の色 */ text-align: center; /* 文字を中央寄せ */ transition: all 500ms ease-in-out;}
.popWindow .ptitle {font-size: 15px; margin: 8px; color: #333;}
.popWindow .close {position: absolute; top: 8px; right: 10px; transition: all 300ms; font-size: 24px; line-height: inherit; font-weight: bold; text-decoration: none; color: #000; padding: 2px;}
.popWindow .close:hover {color: #06D85F;}
.popWindow::-webkit-scrollbar-track {background: none;}
.popWindow::-webkit-scrollbar {width: 10px; height: 10px;}
.popWindow::-webkit-scrollbar-thumb {background: #999; border-radius: 5px;}
.clickable:hover {cursor: pointer;}

@media screen and (max-width: 700px){
#pop-up:checked + .overlay {visibility: hidden; opacity: 0;}
}

.naginami_cntnaginami{margin-top: 10%;}
.oumi_villa_page .about_bed{}
.oumi_villa_page .about_bed .flex_wrap{gap:4%;	flex-wrap: wrap;}
.oumi_villa_page .about_bed .flex_wrap div{width: 48%;}
.oumi_villa_page .about_bed h2{margin-top: 8%; -webkit-text-stroke: 0px #333; text-stroke: 0px #333; margin-bottom: 5%; margin: auto; max-width: 1000px;}
.oumi_villa_page .about_bed .bed_ttl, .oumi_villa_page .about_bed .flex_wrap.bed_info{margin: 5% auto;	max-width: 1000px;}
.oumi_villa_page .about_bed .bed_ttl h2{margin-bottom: 5%; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}
.oumi_villa_page .about_bed .flex_wrap.bed_info div.bed_info2{margin-bottom: 2%; padding: 0;}
.oumi_villa_page .about_bed .flex_wrap.bed_info div.bed_info2 img.img_r{border-radius: 20px;}
.oumi_villa_page .about_bed .flex_wrap.bed_img div.bed_info2 img{width: 100%;}
.oumi_villa_page .about_bed .flex_wrap.bed_info div.bed_info2 img{margin-bottom: 0%; border-radius: 0px;}
.oumi_villa_page .about_bed .flex_wrap div.bed_info2 .bed_info3{width: 100%; gap:3%; align-items: center; justify-content: flex-start;}
.oumi_villa_page .about_bed .flex_wrap div.bed_info2 .bed_info3 img.content_icon{width: 7rem; height: auto;}
.oumi_villa_page .about_bed .flex_wrap.bed_info div.bed_info2 h3{font-size: 2.5rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; margin-bottom:0;}
.oumi_villa_page .about_bed .flex_wrap.bed_info div.bed_info2 p{font-size: 1.6rem; font-family: kinuta-shin-stdn, sans-serif;}
.oumi_villa_page .about_bed .garally{background-color: #fff; text-align: center;}
.oumi_villa_page .about_bed .garally ul, .oumi_villa_page .about_bed .garally ul li{margin: 0; padding: 0;}
.oumi_villa_page .about_bed .garally img{border-radius: 25px; margin: 0; padding: 0;}
.oumi_villa_page .about_bed.ryori .bed_ttl p.ryorittl{font-weight: 700; margin-bottom: 1rem;}
.oumi_villa_page .about_bed.ryori .ryorisec{margin: 0% 20% 15%;}
.oumi_villa_page .about_bed.ryori .ryorisec h3{font-weight: 700; font-size: 2.5rem; margin-top: 5%; margin-bottom: 2rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}

@media screen and (max-width: 1000px) {
.oumi_villa_page .about_bed{margin: auto 0% 0%;}
.oumi_villa_page .about_bed .flex_wrap.bed_info{margin: 10% 5% 10%;}
.oumi_villa_page .about_bed .bed_ttl{margin: 10% 5% 5%;}
.oumi_villa_page .about_bed .flex_wrap.bed_info div.bed_info2{padding:2% 0% 0; margin-bottom: 0%; width: 100%;}
.oumi_villa_page .about_bed .flex_wrap.bed_info div.bed_info2 img{width: 3rem;}
.oumi_villa_page .about_bed .flex_wrap.bed_info div.bed_info2 h3{margin-bottom: 1%; font-size: 1.8rem;}
.oumi_villa_page .about_bed .flex_wrap div.bed_info2 .bed_info3 img.content_icon{width: 4rem; height: auto;}
.oumi_villa_page .about_bed .flex_wrap.bed_info div.bed_info2 p{font-size: 1.6rem;}
}

@media screen and (max-width: 750px) {
.oumi_villa_page .about_bed.ryori .ryorisec{margin: 0% 10% 10%;}
.oumi_villa_page .about_bed.ryori .ryorisec h3{font-weight: 700; font-size: 2rem; margin-top: 10%; margin-bottom: 2rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}
}
.oumi_villa_page .amenity{margin: auto; max-width: 1000px;}
.oumi_villa_page .amenity h2{margin-bottom: 2%;}
.oumi_villa_page .amenity .amenity_p{margin-bottom: 5%;}
.oumi_villa_page .amenity .amenity_info{margin-bottom: 10%;}
.oumi_villa_page .amenity .amenity_info .flex_wrap{margin-bottom: 2%; gap: 3%; justify-content: flex-start; align-items: center;}
.oumi_villa_page .amenity .amenity_info h3{font-size: 3rem; margin-bottom: 3%; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}
.oumi_villa_page .amenity .amenity_info .flex_wrap img{width: 5rem; height: auto;}

@media screen and (max-width: 1000px) {
.oumi_villa_page .amenity{margin: 0% 5%; width: 90%;}
.oumi_villa_page .amenity h2{margin-bottom: 10%;}
.oumi_villa_page .amenity .amenity_info .flex_wrap img{width: 3rem; height: auto;}
.oumi_villa_page .amenity .amenity_info{margin-bottom: 10%;}
.oumi_villa_page .amenity .amenity_info h3{font-size: 2.3rem; margin-bottom: 5%;}
}

.oumi_villa_page .garally{background-color: #F7F7F7; padding-bottom: 5%;text-align: center;}
.oumi_villa_page .garally h2{margin:10% 5%;}
.garally p{font-size: 3rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; font-family: kinuta-shin-stdn, sans-serif;}

@media screen and (max-width: 750px) {
.oumi_villa_page .garally h2{margin:10%;}
.garally p{font-size: 2rem; line-height: 2rem; margin-top: 5%;}
.oumi_villa_page .garally{padding-bottom: 0;}
.oumi_villa_page .garally ul, .oumi_villa_page .garally ul li, .oumi_villa_page .garally ul li img{margin-bottom: 0;}
}

.review{margin: 10% 5%;}
.review h2{margin-bottom: 5%;}
.review .flex_wrap{gap: 5%; margin-bottom: 10%;}
.review .flex_wrap .review_img{width: 25%; text-align: center;}
.review .flex_wrap .review_txt{width: 70%;}

@media screen and (max-width: 750px) {
.review h2{margin-bottom: 10%;}
.review{margin: 10%;}
.review .flex_wrap{flex-wrap: wrap; margin-top: 20%;}
.review .flex_wrap .review_img{width: 100%; margin-bottom: 5%;}
.review .flex_wrap .review_txt{width: 100%;}
}

.cation{background-color: #F7F7F7; padding: 10% 5% 20%; margin-bottom: -20%;}
.cation h2{max-width: 1000px; margin: auto; padding-bottom: 5%;}
.cation h3{margin-bottom: 10%; font-size: 3rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}
.cation .flex_wrap {max-width: 1000px; margin: auto;}
.cation .flex_wrap div{width: 45%;}

@media screen and (max-width: 750px) {
.cation{background-color: #F7F7F7; padding: 20% 10% 30%;}
.cation h2{margin-bottom: 10%;}
.cation .flex_wrap{flex-wrap: wrap;}
.cation .flex_wrap div{width: 100%; margin-bottom: 10%;}
.cation h3{font-size: 2.2rem; margin-bottom: 5%;}
}

/* 
===================================================================
// フッターアクセス
// ===================================================================*/
.foot_access{background-color: #F7F7F7; text-align: center; padding: 10% 5% 20%; margin-bottom: -20%;}
.foot_access h2{margin: 0;}
.foot_access img{width: 15%; margin-top: 1%; margin-bottom: 5%;}
.foot_access iframe{width: 100%; height: 90vh; border-radius: 30px; margin-top: 5%; margin-bottom: 5%;}

@media screen and (max-width: 750px) {
.foot_access{padding: 20% 10% 50%; margin-bottom: -20%;}
.foot_access iframe{width: 100%; height: 30vh; margin-top: 10%; margin-bottom: 10%;}
}

/* ===================================================================
// ワーケーション
// ===================================================================*/
.workation_page h2{margin-top: 5rem;}
.workation_page .naginami_cnt{margin-top: 5%;}
.workation_page .naginami_cnt.modelplan img{margin-top: 0; border-radius: 0; margin-bottom: 10%;}
.workation_page .btn_area{justify-content: center; gap: 5%;}

@media screen and (max-width: 750px) {
.workation_page h2{margin-top: 0;}
.workation_page .naginami_cnt.modelplan{margin-bottom: 10%;}
.workation_page .naginami_cnt.modelplan img{margin-bottom: 0%;}
.workation_page .btn_area{margin-bottom: 10%;}
.workation_page .btn_area a{margin-bottom: 3%;}
}

/* ===================================================================
// 想いabout
// ===================================================================*/
.iza_about_page #mainttl{margin-bottom: 10%;}
.iza_about_page .top_message .flex_wrap{max-width: 1000px; margin:auto;}
.iza_about_page .top_message{margin-bottom: 10%;}

@media screen and (max-width: 750px) {
.iza_about_page .top_message .flex_wrap{width: 90%; margin: auto 5%;}
.iza_about_page .top_message p{width: 100%;}
}

/* -----------ロゴコンセプト---------------- */
.iza_about_page .about_logo{max-width: 1000px; margin:auto;}
.iza_about_page .about_logo img{width: 100%;}
.iza_about_page .about_logo .flex_wrap{gap: 10%; margin-top: 10%;}
.iza_about_page .about_logo .flex_wrap div{width: 35%;}
.about_logo_txt h2{text-align: center; margin-top: 20%;margin-bottom: 10%;}
.about_logo_txt p{margin-bottom: 5%;}
.iza_about_page .about_logo .about_logo_cnt.oner_img{ width: 34%;margin: auto 33%;}

@media screen and (max-width: 750px) {
.iza_about_page .about_logo{margin: auto 10% 10%; width: 80%;}
.iza_about_page .about_logo .flex_wrap{margin-bottom: 10%;}
.iza_about_page .about_logo .about_logo_cnt.oner_img{width: 50%; margin: 5% 25% 0;}
}

/* -----------各種想い・コンセプト---------------- */
.iza_about_page .top_message.about_cnt{margin-bottom: 0;}
.iza_about_page .top_message.about_cnt .flex_wrap div p{width: 100%; margin-left: 0; margin-bottom: 5%;}
.iza_about_page .top_message.about_cnt .flex_wrap div{text-align: left;}
.iza_about_page .top_message.about_cnt .message_img{text-align: right; margin-top: 5%; margin-right: 10%;margin-left: 10%;}
.iza_about_page .top_message.about_cnt.about_cnt_w{background-color: #fff;}
.iza_about_page .top_message.about_cnt.about_cnt_w .message_img{text-align: left;}
.iza_about_page .top_message.about_cnt h2{font-size: 4rem; line-height: 6rem;}

@media screen and (max-width: 750px) {
.iza_about_page .top_message.about_cnt{margin: 0; padding: 25% 5%;}
.iza_about_page .top_message.about_cnt h2{font-size: 3.5rem;}
}

/* -----------シェアボタン---------------- */
.share_btn{
	text-align: center;
	margin: 10%;
}
.share_btn h2{
	font-size: 4rem;
	margin-bottom: 5%;
}
.share_btn .flex_wrap{
	gap: 5%;
	justify-content: center;
}
@media screen and (max-width: 750px) {
	.share_btn h2{
		font-size: 3.5rem;
		margin-bottom: 10%;
	}
	.share_btn{
		margin-bottom: 15%;
	}
}
/* -----------スポンサー---------------- */
.sponser{
	padding: 5%;
	text-align: center;
	margin-bottom: 10%;
}
.sponser h3{
	font-size: 2.6rem;
	margin: 5% auto 3%;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
.sponser .flex_wrap{
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 3%
}
@media screen and (max-width: 750px) {
	.sponser h2{
		font-size: 3.5rem;
	}
	.sponser h3{
		font-size: 2rem;
	}
	.sponser .flex_wrap{
		margin-bottom: 20%;
		justify-content: space-around;
	}
}


/* ===================================================================
// 各種アーカイブページ
// ===================================================================*/
.archive_page .top_vacation,
.archive_page .top_news{
	background-color: #fff;
	max-width: 1000px;
	padding: 0;
	margin: auto;
}
.archive_page .top_vacation{
	margin-bottom: 0;
	padding-bottom: 0;
	padding-top: 0;
	margin-top: 0;
}
.archive_page .top_vacation .top_vacation_cnt{
	margin: 0;
	padding:10% 0 0;
}
.archive_page .top_vacation p{
	width: 100%;
	margin: 0;
}
.archive_page .top_news{
	margin-top: 0;
}
.archive_page .top_news .btn_area{
	text-align: left;
	justify-content: flex-start;
	margin-bottom: 15%;
}
.archive_page .top_news figure{
	margin-bottom: 3%;
	width: 100%;
}
.archive_page .top_news figure img{
	width: 100%;
	margin: 0;
}
.archive_page .top_news .villa_subttl{
	margin-bottom: 2%;
}
.archive_page .top_news li{
	margin-bottom: 15%;
}
.archive_page .top_news .news_cnt{
	margin: 0;
	margin-top: 15%;
}
@media screen and (max-width: 1000px) {
	.archive_page .top_news{
		width: 90%;
		margin: auto 5%;
	}
	.archive_page .top_vacation .top_vacation_cnt{
		margin: 0 5%;
		width: 90%;
	}
	.archive_page .top_vacation .top_vacation_cnt h2{
		font-size: 3rem;
	}
}


@media screen and (max-width: 750px) {
	.archive_page .top_vacation_cnt img{
		width: 90%;
		margin: auto 5% 10%;
	}
	.archive_page .top_news .btn_area{
		margin: 5% 0 15% 0!important;
		padding: 0;
		width: 100%;
	}
	.archive_page .top_news  h2{
		margin-bottom: 5%;
	}
}

/* ===================================================================
// 地図
// ===================================================================*/
.archive_page.access_page #mainttl{
	margin-bottom: 10%;
}
.archive_page.access_page .top_news{
	padding-top: 0;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
  margin-top: 10%;
}
.archive_page.access_page .top_news .btn_area{
	justify-content: center;
	gap: 10%;
	font-size: 3rem;
}
@media screen and (max-width: 750px) {
	.archive_page.access_page .top_news .btn_area{
		font-size: 2.2rem;
	}
	.archive_page.access_page .top_news .news_ttl img{ 
		margin-top: -1rem;
}
}

.access_page .iza_top2_page {
	background-color: #F7F7F7;
	padding-top: 5%;
	padding: auto 5%;
}
.access_page .iza_top2_page .naginami_mes .naginami_mes_cnt{
	margin: -10% 10% 5%;
	width: 80%;
}
.access_page .iza_top2_page .naginami_mes .flex_wrap{
	justify-content: flex-start;
	gap: 3rem;
	align-items: center;
	margin-bottom: 3%;
}
.access_page .iza_top2_page .naginami_mes .flex_wrap img{
	width: 50px;
	margin: 1rem;
	height: auto;
}
.access_page .iza_top2_page .naginami_mes .info_cnt{
	text-align: left;
	width: 70%;
	margin: 10% 15% auto;
}
.access_page .iza_top2_page .naginami_mes .info_cnt h2{
	font-size: 4rem;
	-webkit-text-stroke: 0px #333;
	text-stroke: 0px #333;
}
.access_page .iza_top2_page .naginami_mes .info_logo{
	width: 70%;
	margin: 5% 15% 10%;
}
@media screen and (max-width: 750px) {
	.access_page .iza_top2_page .naginami_mes .naginami_mes_cnt{
		margin: 10% 5% 5%;
		width: 90%;
	}
	.access_page .iza_top2_page .naginami_mes .info_cnt h2{
		font-size: 3rem;
		margin-top: 20%;
	}
	.access_page .iza_top2_page .naginami_mes .info_cnt{
		text-align: left;
		width: 100%;
		margin: 10% 0% auto;
	}
	.access_page .iza_top2_page .naginami_mes .flex_wrap img{
		width: 30px;
		margin: 0;
		height: auto;
	}
}


.access_page .iza_top2_page iframe{
	width: 90%;
	height:80vh;
	border: 4px solid #333;
	border-radius: 30px;
	margin: 5% 0 10%;
}
.access_page .iza_top2_page .btn_area{
	margin-bottom: 10%;
}
.access_page .iza_top2_page .from_station{
	background-color: #F7F7F7;
	margin-top: 20%;
}
.access_page .iza_top2_page .from_station .news_ttl h2{
	margin-bottom: 0;
}
.access_page .iza_top2_page .from_station .news_ttl img{
	width: 20%;
	margin-top: 1%;
}
.access_page .iza_top2_page .from_station_cnt img{
	width: 80%;
	margin: 15% 10% 5%;
	border-radius: 30px;
}
.access_page .iza_top2_page .from_station_cnt{
	text-align: left;
}
@media screen and (max-width: 750px) {
	.access_page .iza_top2_page iframe{
		width: 90%;
		height:30vh;
		margin: 5% 5% 5%;
	}
	.access_page .iza_top2_page .info_margin{
		width: 90%;
		margin: auto 5%;
	}
	.access_page .iza_top2_page .from_station{
		width: 90%;
		margin: 30% 5% 10%;
	}
	.access_page .iza_top2_page .from_station .news_ttl img{
		width: 50%;
		margin-top: 1%;
	}
	.access_page .iza_top2_page .from_station_cnt img{
		width: 90%;
		margin: 15% 5% 5%;
		border-radius: 30px;
	}
}

/* ===================================================================
// よくある質問
// ===================================================================*/
.faq_page .faq_ttl{text-align: center; margin-top: 10%;}
.faq_page .faq_ttl h2{margin-bottom: 1%; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}
.faq_page .faq_ttl img{width: 25%;}
.faq_page .faq_sec{max-width:800px; margin: 0 auto;}
.faq_page .faq_sec h2{
	margin: 15% auto 5%;
	text-align: left;-webkit-text-stroke: 1px #333;
	text-stroke: 1px #333;
	font-size: 2.6rem;
}

.faqcap{ color: #333; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; margin:3% auto;}
.faq_p{ color: #333; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; }

@media screen and (max-width: 750px) {
.faq_page .faq_ttl img{width: 40%;}
.faq_page .faq_sec{
		margin: 0% 10% 20%;
	}
	.faq_page .faq_sec h2{
		font-size: 2rem;
	margin: 15% auto 5%;
	}
}

/* FAQ */
.cp_qa *, .cp_qa *:after, .cp_qa *:before {-webkit-box-sizing: border-box; box-sizing: border-box;}
.cp_qa {overflow-x: hidden; margin: 0 auto; color: #000;}
.cp_qa .cp_actab {padding: 20px 0; border-bottom: 1px dotted #cccccc;}
.cp_qa label {position: relative; display: block; width: 100%; margin: 0; padding: 10px 10px 0 48px; cursor: pointer;}
.cp_qa .cp_actab-content {font-size:1.8rem; position: relative; overflow: hidden; height: 0; margin: 0 40px; padding: 0 14px; -webkit-transition: 0.4s ease; transition: 0.4s ease; opacity: 0;}
.cp_qa .cp_actab input[type=checkbox]:checked ~ .cp_actab-content {height: auto; padding: 14px; opacity: 1;}
.cp_qa .cp_plus { line-height: 100%; position: absolute; z-index: 5; margin: 10px 0 0 10px; -webkit-transition: 0.2s ease; transition: 0.2s ease;}
.cp_qa .cp_actab input[type=checkbox]:checked ~ .cp_plus {-webkit-transform: rotate(45deg); transform: rotate(45deg);}
.cp_qa .cp_actab input[type=checkbox] {display: none;}

@media screen and (max-width: 750px) {
.cp_qa .cp_actab-content {font-size:1.4rem; }	
}

/* ===================================================================
// アーカイブ
// ===================================================================*/
.news_page #mainttl{
	margin-bottom: 5%;
}
#content .archive_list{
 margin: auto 10%;
}
#content .archive_list .flex_wrap a{
	position: relative;
	width: 30%;
	height: 40vh;
	margin-bottom: 15%;
}
#content .archive_list h3{
	position: relative;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 1rem 2rem 1rem 2rem;
	color: #242424;
	font-weight: 700;
	text-align: center;
	font-size: 2.3rem;
	border-bottom: 1px solid #333;
	border-top: 1px solid #333;
	margin-top: 2rem;
}

#content .archive_list a{
	margin-bottom: 5%;
	height: auto;
}
#content .archive_list .flex_wrap{
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 5%;
	padding: 0;
}
#content .archive_list .flex_wrap a .archive_img{
	height: 300px;
	width: auto;
	text-align: center;
	position: relative;
}
#content .archive_list .flex_wrap a .archive_img img{
	height: auto;
	max-height: 300px;
	width: 100%;
	max-width: 300px;
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
#content .archive_list .arc_btn{
	text-align: center;
	justify-content: center;
	display: block;
	margin-bottom: 5%;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
#content .archive_list .arc_btn a{
	border: #053F69 1px solid;
	padding: 2rem 4rem;
	border-radius: 30px;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
#content .archive_list .arc_btn a:hover{
	background: #053F69;
	color: #fff;
}
@media screen and (max-width: 1000px) {
	#content .archive_list .flex_wrap a{
	position: relative;
	width: 47%;
	margin-bottom: 20%;
	display: block;
	}
}
@media screen and (max-width: 750px) {
	#content .archive_list .flex_wrap a{
		position: relative;
		width: 100%;
		margin-bottom: 30%;
		display: block;
		}
	#content .archive_list .flex_wrap a .archive_img{
		height: 300px;
		width: auto;
		text-align: center;
		position: relative;
	}
	#content .archive_list .flex_wrap a .archive_img img{
		height: auto;
		max-height: 300px;
		width: 100%;
		max-width: 300px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}
}



/* トピックスページネーション　*/
#content .news_archive .flex_wrap{
	max-width: 1000px;
	flex-wrap: wrap;
	margin: auto;
	gap: 3%;
	justify-content: flex-start;
}
#content .news_archive .flex_wrap a{
	position: relative;
	width: 30%;
	height: auto;
	margin-bottom: 5%;
	padding: 1rem;
	border-radius: 5px;
	margin-bottom: 10%;
}
#content .news_archive{
 margin: auto 5%;
}
#content .news_archive .flex_wrap a img{
	width: 25vw;
	height: 18vw;
	object-fit: cover;
	border-radius: 20px;
}
#content .news_archive h3{
	position: relative;
	color: #242424;
	background: #fff;
	height: auto;
	margin-bottom: 2rem;
}
#content .news_archive p.date{
	margin: 1rem auto auto;
	font-size: 2rem;
}
.category_name{
	border: 1px solid #333;
	border-radius: 30px;
	padding: 0 3rem;
	font-size: 1.8rem;
	display: inline-block;
	-webkit-text-stroke: 1px #333;
	text-stroke: 1px #333;
}
@media screen and (max-width: 1000px) {
	#content .news_archive .flex_wrap a{
	position: relative;
	width: 45%;
	}
	#content .news_archive .flex_wrap{
		width: 90%;
		margin: auto 5%;
		justify-content: space-around;
	}
}
@media screen and (max-width: 750px) {
	#content .news_archive{
	 margin: auto 0%;
	}
	#content .news_archive .flex_wrap a{
	position: relative;
	width: 100%;
	margin-bottom: 20%;
	}
	#content .news_archive .flex_wrap a img{
		width: 75vw;
		height: 75vw;
		object-fit: cover;
		border-radius: 20px;
	}
	.category_name{
		border: 1px solid #333;
		border-radius: 30px;
		padding: 0 3rem;
		font-size: 1.3rem;
	}
}

/* ページネーション　*/
.pagenavi{
	margin-bottom: 5%;
	margin-top: 5%;
}
.pagenavi .wp-pagenavi {
  text-align: center;
  padding: 2rem 0;
  font-size: 1.6rem;
}

.pagenavi .wp-pagenavi a, .pagenavi .wp-pagenavi span {
  border: 1px solid #333;
  color:  #333;
  padding: 3rem 3.2rem;
	border-radius: 80px;
	margin-right: 2rem;
	-webkit-text-stroke: 1px #333;
	text-stroke: 1px #333;
	font-size: 2rem;
	
}
.pagenavi .wp-pagenavi .pages {
  border: 0px solid #333;
  -webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
.pagenavi .wp-pagenavi span.current {
  background-color: #333;
  border: 1px solid #333;
  color: #fff;
  -webkit-text-stroke: 1px #fff;
  text-stroke: 1px #fff;
}

.btn_area.space{
	justify-content: center;
	column-gap: 10%;
	margin:15% auto 10%;
	width: 100%;
}
.btn_area.space a{
	color:#fff;
	-webkit-text-stroke: 1px #fff;
	text-stroke: 1px #fff;
	background-color: #333;
	font-size: 5rem;
	border-radius: 45px;
	padding: 1rem 1.6rem;
	border: 1px solid #333;
}
.btn_area.space a:hover{
	background-color: #fff;
	color: #333;
	opacity: 1;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
.arc_btn {
	text-align: center;
	margin-bottom: 0%;
	justify-content: center;
  padding:1.5rem 2rem;
}
.space .back_single{
	padding: 2rem 6rem!important;
	border-radius: 45px;
	color: #fff;
	background-color: #333;
	-webkit-text-stroke: 1px #fff;
  text-stroke: 1px #fff;
  border: 1px solid #333;
  font-size: 3rem!important;
}
.space .back_single:hover{
	background-color: #fff;
	color: #333;
	opacity: 1;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
@media screen and (max-width: 750px) {
	.btn_area.space{
	margin-bottom: 10%;
}
.pagenavi{
	margin-bottom: 30%;
	margin-top: 10%;
}
.pagenavi .wp-pagenavi a, .pagenavi .wp-pagenavi span {
  border: 1px solid #053F69;
  color:  #053F69;
  padding: 1.5rem 1.8rem;
	border-radius: 80px;
	margin-right: 1rem;
}
.btn_area.space{
	justify-content: center;
	column-gap: 10%;
	margin:15% 0 10%!important;
	width: 100%;
}
.btn_area.space a{
	font-size: 2rem;
	padding: 1rem 1.2rem;
}
.space .back_single{
	padding: 1.3rem 3rem!important;
  font-size: 1.5rem!important;
}
}

.news_single{
	margin-top: 10%;
}
.news_single .topics_ttl{
	font-size: 4rem;
}
.news_single h2{
	font-size: 3rem;
	margin: 1% auto 2%;
}
.news_single figure{
	margin-bottom: 5%;
	text-align: center;
	width: 100%;
	border-radius: 45px;
}
.news_single figure img{
	width: 100%;
	border-radius: 45px;
}
.news_single .news_content{
	margin-top: 10%;
}
.news_single .news_content p{
	margin-bottom: 2%;
}
.news_single .date{
	color: #053F69;
}
.news_single .news_content h2{
	border: 2px solid #333;
	border-radius: 15px;
	color: #333;
	padding: 2% 2%;
	font-size: 3rem;
	margin-top: 5%;
	margin-bottom: 4%;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
.news_single .news_content h3{
	border-bottom: 2px solid #333;
	border-top: 2px #333 solid;
	padding: 1% 2%;
	margin-top: 5%;
	font-size: 2.8rem;
	margin-bottom: 4%;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
.news_single .news_content h4{
	border-left: 8px solid #333;
	padding: 1% 2%;
	margin-top: 5%;
	font-size: 2.4rem;
	margin-bottom: 4%;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
.news_single .news_content img{
	width: 80%;
	margin: 5% 10%;
	border-radius: 45px;
}
.news_single .products_archive{
	max-width: 1000px;
	margin: auto;
}
@media screen and (max-width: 750px) {
	.news_single .products_archive{
		width: 80%;
		margin: auto 10% 10%;
	}
	.news_single .products_archive .btn_area{
		margin-top: 20%;
	}
	.news_single .products_archive .arc_btn{
		margin-top: 20%;
	}
}

/* ===================================================================
// お問い合わせページ
// ===================================================================*/
.contact_page .contact_ttl{
	text-align: center;
	margin-top: 10%;
}
.contact_page .contact_ttl h2{
	margin-bottom: 1%;
}
.contact_page .contact_ttl img{
	width: 30%;
}
.contact_p{
	margin: 3% auto;
	color: #ff3333;
	-webkit-text-stroke: 1px #ff3333;
  text-stroke: 1px #ff3333;
}

/* ------------------- フォーム ------------ */

.wpcf7-form-control-wrap .wpcf7-not-valid-tip{
	color: #ff3333;
	-webkit-text-stroke: 0.5px #ff3333;
  text-stroke: 0.5px #ff3333;
}

.contact_form{
	max-width: 1000px;
	margin: auto;
}
.contact_form table {
  width: 100%;
  margin: 80px auto;
}
.contact_form table tr{
	margin-bottom: 15%!important;
	padding-bottom: 10%!important;
}
.contact_form table{
	color: #333;
}
.contact_form table th {
  text-align: left;
  width: 15%;
	padding: 2rem 2rem 5%;
}
@media screen and (max-width: 1000px) {
	.contact_form{
		width: 90%;
		margin: auto 5% 15%;
	}
}

.contact_form table td {
  text-align: left;
	width: 85%;
	padding-bottom: 5%;
}
.contact_form table td input{
	width: 100%;
	height: 8vh;
	border: 1px solid #333;
	border-radius: 20px;
	padding: 1rem;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
.wpcf7-form .wpcf7-select, select{
	padding: 1rem 2rem;
	margin-left: 2rem;
	border: 0px;
}
.contact_form table td textarea{
	width: 100%;
	height: 20vh;
	border: 1px solid #333;
	border-radius: 25px;
	padding: 1rem;
}
.contact_form .sub-btn{
	background: #333333;
	padding: 1.5rem 4rem;
	text-align: center;
	width: 30%;
	margin: auto 35%;
	border-radius: 45px;
	color: #fff;
	border: 2px solid #333333;
	-webkit-text-stroke: 1px #fff;
  text-stroke: 1px #fff;
}
.contact_form .sub-btn:hover{
	background: #fff;
	color: #333333;
	border: 2px solid #333333;
	opacity: 1;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
@media screen and (max-width: 750px) {
	.contact_form table {
    width: 100%;
    margin: 40px auto;
  }
  .contact_form table th, table td {
    display: block;
    width: 100%;
	  margin: 0;
  }
	.contact_form table td {
  text-align: left;
  border-bottom: 2px solid #fff;
	width: 100%;
	margin: 0;
	padding: 0rem;
	}
	.contact_form table select{
		margin:1rem 2rem;
	}
  .contact_form table th {
    width: 100%;
	border-left: 1px solid #fff;
	 border-bottom: 1px solid #fff;
	 margin: 0;
	 padding: 1rem;
  }
  .contact_form table td input{
	width: 100%;
	margin: 0;
	height: 5vh;
	  border-radius: 10px;
  }
	.contact_form table td textarea{
	width: 100%;
	margin-left: 0%;
	border-radius: 10px;
}
.contact_form .sub-btn{
	padding: 1rem 1rem;
	width: 50%;
	margin: auto 25%;
	border-radius: 45px;
}
.contact_page .contact_ttl img{
	width: 50%;
}
}

.fadein {
    opacity : 0;
    transform : translate(0, 0px);
    transition:all 1s;
  display:block;
	animation-duration: 1s;
	animation-delay: .3s;
	transform: scale(1.05);
	animation-fill-mode:forwards;
}
.fadein.scrollin {
    opacity : 1;
	transform: scale(1);
	filter: blur(0);
}
.fadein1 {
    opacity : 0.2;
    transform : translate(0, 50px);
    transition:all 1s;
  display:block;
  margin:60px auto;
  text-align:center;
}
.fadein1.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}

/* その場で */


.fadeon{
animation-name:fadeUpAnime;
  animation-duration: 1.2s;
  animation-fill-mode:forwards;
	animation-delay: .3s;
	opacity: 0;
}

@keyframes fadeUpAnime{
  from {
	  opacity: 0;
  transform: scale(1.3);
  }

  to {
	  opacity: 1;
  filter: blur(0);
  transform: scale(1);
  }
}

/* ===================================================================
// 宿泊料金・空室カレンダー
// ===================================================================*/
.price_calendar{margin: 5% 10% 5%;}
.price_calendar .price_ttl h2{
	text-align: center;
	margin: 5% 0% 5%;
}
.price_calendar .price_sec{
	text-align: left;
	padding:0% 10% 0%;
}
.price_calendar .price_sec h2{
	font-size: 3rem;
	margin-top: 10%;
}
.price_calendare .price_sec h3{
	font-size: 2.4rem;
	margin-bottom: 2%;
	margin-top: 5%;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
.price_calendar .price_sec p{
	margin-bottom: 3%;
}

@media screen and (max-width: 750px) {
.price_calendar .price_ttl h2{
		text-align: center;
		margin-bottom: 0%;
	}
.price_calendar .price_sec h2{
		font-size: 2.5rem;
		margin-top: 5%;
	}
.price_calendar .price_sec{
		border-top-width: 80%;
		margin: auto 10%;
		padding:0% 0% 15%;
	}
.price_calendar .price_sec h3{
		font-size: 1.8rem;
		margin-top: 8%;
	}
}

/* ===================================================================
// プライバシーポリシー
// ===================================================================*/
.privacy_page{margin: 5% 10% 5%;}
.privacy_page .privacy_ttl h2{text-align: center;margin: 5% 0% 2%;}
.privacy_page .privacy_sec{text-align: left; padding:0% 10% 0%; }
.privacy_page .privacy_sec h2{
	font-size: 3rem;
	margin-top: 10%;
}
.privacy_page .privacy_sec h3{
	font-size: 2.4rem;
	margin-bottom: 2%;
	margin-top: 5%;
	-webkit-text-stroke: 1px #333;
  text-stroke: 1px #333;
}
.privacy_page .privacy_sec p{
	margin-bottom: 3%;
}

@media screen and (max-width: 750px) {
	.privacy_page .privacy_ttl h2{
		text-align: center;
		margin-bottom: 0%;
	}
	.privacy_page .privacy_sec h2{
		font-size: 2.5rem;
		margin-top: 5%;
	}
	.privacy_page .privacy_sec{
		border-top-width: 80%;
		margin: auto 10%;
		padding:0% 0% 15%;
	}
	.privacy_page .privacy_sec h3{
		font-size: 1.8rem;
		margin-top: 8%;
	}
}

/* ===================================================================
// サイトマップ
// ===================================================================*/
.sitemap_page{
	margin: 5% 20% 5%;
}

.sitemap_page .sitmap_ttl h2{
	text-align: center;
	margin: 5% 0% 2%;
}

.sitemap_page .sitemap_ttl_sec{
	padding:0% 10% 0%;
}
.sitemap_page .sitemap_ttl_sec h2{
	font-size: 3rem;
	margin-top: 5%;
}
.sitemap_page .sitemap_ttl_sec a{
	width: 100%;
}
.sitemap_page .sitemap_ttl_sec div{
	margin-bottom: 2%;
}
@media screen and (max-width: 750px) {
	.sitemap_page .sitemap_ttl_sec{
		margin: auto 10%;
	}
	.sitemap_page .sitemap_ttl_sec div{
		margin-bottom: 15%;
}
}
/*==================================================
じわっ
===================================*/

.blur{
  animation-name:blurAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
}

@keyframes blurAnime{
  from {
  filter: blur(10px);
  transform: scale(1.02);
  opacity: 0;
  }

  to {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  }
}
 
.blurTrigger{
    opacity: 0;
}


/*==================================================
スタート時は要素自体を透過0にするためのopacity:0;を指定する
===================================*/

.box{
  opacity: 0;
}

/*==================================================
ふわっ
===================================*/

.fadeUp {
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}


/*==================================================
背景色が伸びて出現
===================================*/

/*全共通*/

.bgextend{
	animation-name:bgextendAnimeBase;
	animation-duration:1s;
	animation-fill-mode:forwards;
	position: relative;
	overflow: hidden;/*　はみ出た色要素を隠す　*/
	opacity:0;
  }
  
  @keyframes bgextendAnimeBase{
	from {
	  opacity:0;
	}
  
	to {
	  opacity:1;  
  }
  }
  
  /*中の要素*/
  .bgappear{
	animation-name:bgextendAnimeSecond;
	animation-duration:1s;
	animation-delay: 0.6s;
	animation-fill-mode:forwards;
	opacity: 0;
  }
  
  @keyframes bgextendAnimeSecond{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
  }
  }
  
  /*左から右*/
  .bgLRextend::before{
	animation-name:bgLRextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
	  content: "";
	  position: absolute;
	  width: 100%;
	  height: 100%;
	  background-color: #053F69;/*伸びる背景色の設定*/
  }
  @keyframes bgLRextendAnime{
	0% {
	  transform-origin:left;
	  transform:scaleX(0);
	}
	50% {
	  transform-origin:left;
	  transform:scaleX(1);
	}
	50.001% {
	  transform-origin:right;
	}
	100% {
	  transform-origin:right;
	  transform:scaleX(0);
	}
  }
  
  /* スクロールをしたら出現する要素にはじめに透過0を指定　*/
  .bgappearTrigger,
  .bgLRextendTrigger{
	  opacity: 0;
  }


  /*タブ切り替え全体のスタイル*/
.tabs {
	max-width: 1000px;
	margin: auto;
}

  /*タブのスタイル*/
  .tab_item {
	width: calc(80%/4);
	text-align: center;
	display: block;
	float: left;
	text-align: center;
	font-weight: bold;
	transition: all 0.2s ease;
	margin-bottom: 5%;
  }
  .tab_item:hover {
	opacity: 0.75;
  }
  
  /*ラジオボタンを全て消す*/
  input[name="tab_item"] {
	display: none;
  }
  
  /*タブ切り替えの中身のスタイル*/
  .tab_content {
	display: none;
	padding: 40px 40px 0;
	clear: both;
	overflow: hidden;
  }
  
  
  /*選択されているタブのコンテンツのみを表示*/
  #all:checked ~ #all_content,
  #news:checked ~ #news_content,
  #dialy:checked ~ #dialy_content,
  #voice:checked ~ #voice_content {
	display: block;
  }
  
  /*選択されているタブのスタイルを変える*/
  .tabs input:checked + .tab_item {
	-webkit-text-stroke: 1px #333;
	  text-stroke: 1px #333;
  }
  @media screen and (max-width: 750px) {
	.tab_item {
		width: auto;
		margin: 1rem 1.2rem;
	}
  }

 .amenity_info .acd-check{
    display: none;
}
.amenity_info .acd-label{
    color: #000;
    display: block;
    margin-bottom: 1px;
    padding: 10px;
    position: relative;
	margin-bottom: 2rem;
	margin-top: 2rem;
}
.workation_page .amenity_info{
	text-align: left;
	-webkit-text-stroke: 0.5px #333;
	  text-stroke: 0.5px #333;
}
.amenity_info .acd-label:after{
    box-sizing: border-box;
    content: '＋';
    display: block;
    font-family: "Font Awesome 5 Free";
    height: 52px;
    padding: 10px 20px;
    position: absolute;
    left: 14rem;
    top: 0px;
}
.workation_page .amenity_info .acd-label:after{
    left: 8rem;

}
.amenity_info .acd-content{
    display: block;
    height: 0;
    opacity: 0;
    transition: .5s;
    visibility: hidden;
}
.amenity_info .acd-check:checked + .acd-label:after{
    content: 'ー';
}
.amenity_info .acd-check:checked + .acd-label + .acd-content{
    height: 100%;
    opacity: 1;
    visibility: visible;
}



/* 
===================================================================
// IZA SAUNA
// ===================================================================*/
.sauna_lead .sauna_mes{position: relative;margin: 5% 20% 8%; text-align: left;}

.sauna_lead .sauna_mes h2{margin-bottom: 2%;}
.sauna_lead .sauna_mes h3{margin:5% 0% 1%; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}
@media screen and (max-width: 750px) {
.sauna_lead .sauna_mes{position: relative; margin: 3% 10% 3%; text-align: left;}	}

.iza_sauna .sauna_info{background-color: #F7F7F7; padding: 10% 20% 5%;}
.iza_sauna .sauna_info h2{padding-bottom: 3rem; border-bottom: 1px solid #CCCCCC; margin-bottom: 5rem;}
.iza_sauna .sauna_info h3{font-size: 2.2rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; margin-bottom: 1rem;}
.iza_sauna .sauna_info p{margin-bottom: 4rem;}

@media screen and (max-width: 750px) {
.iza_sauna .sauna_info{padding: 10% 10% 5%;}
}

.iza_sauna .garally{background-color: #FFF; padding-bottom: 5%; text-align: center;}
.iza_sauna .garally img{ border-radius: 20px;}
 .garally p{font-size: 3rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; font-family: kinuta-shin-stdn, sans-serif;}
@media screen and (max-width: 750px) {
.garally p{ font-size: 2rem; line-height: 2rem; margin-top: 5%;}
}

#news_osaka{ padding:120px 0 100px 0;}

/* 
===================================================================
// IZA SAUNA osaka アクセス
// ===================================================================*/
.iza_sauna_access{background-color: #FFF; text-align: center; padding: 10% 5% 20%; margin-bottom: -20%;}
.iza_sauna_access h2{margin: 0;}
.iza_sauna_access img{width: 15%; margin-top: 1%; margin-bottom: 5%;}
.iza_sauna_access iframe{width: 80%; height: 70vh; border-radius: 30px; margin-top: 5%; margin-bottom: 5%;}
@media screen and (max-width: 750px) {
.iza_sauna_access{padding: 20% 10% 50%; margin-bottom: -20%;}
.iza_sauna_access iframe{width: 100%; height: 30vh; margin-top: 10%;margin-bottom: 3%;}
}

/* 
===================================================================
// IZA SAUNA osaka 問合せ
// ===================================================================*/
.sauna_contact_page .contact_ttl{text-align: center; margin-bottom: -20%; padding:10% 0 20% 0; background-color:#F7F7F7;}
.sauna_contact_page .contact_ttl h2{margin-bottom: 1%;}
.sauna_contact_page .contact_ttl img{width: 30%;}
.sauna_contact_p{margin: 3% auto; color: #ff3333; -webkit-text-stroke: 1px #ff3333;text-stroke: 1px #ff3333;}

/* ===================================================================
// スポンサーシップ
// ===================================================================*/

#mainttl .mainttl_txt_brl{position: absolute; right: 5%; top: 5%;}

.iza_tpl_page #mainttl{margin-bottom: 0;}
.iza_tpl_page .top_message .flex_wrap{max-width: 1000px;margin:auto;}
.iza_tpl_page .top_message{margin-bottom: 10%;}
@media screen and (max-width: 750px) {
.iza_tpl_page .top_message .flex_wrap{width: 90%;margin: auto 5%;}
.iza_tpl_page .top_message p{width: 100%;}
}
/* -----------リード---------------- */
.iza_tpl_page .tpl_lead{max-width: 1000px;margin:auto;}
.iza_tpl_page .tpl_lead img{width: 100%;}
.iza_tpl_page .tpl_lead .flex_wrap{gap: 10%; margin-top: 10%;}
.iza_tpl_page .tpl_lead .flex_wrap div{width: 35%;}
.tpl_lead_txt h2{text-align: center; margin-top: 10%;margin-bottom: 10%;}
.tpl_lead_txt p{margin-bottom: 5%;}
.iza_tpl_page .tpl_lead .tpl_lead_cnt .oner_img {width: 34%;margin: auto 33%;}

@media screen and (max-width: 750px) {
.iza_tpl_page .tpl_lead{margin: auto 10% 0;width: 80%;}
.iza_tpl_page .tpl_lead .flex_wrap{margin-bottom: 10%;}
.iza_tpl_page .tpl_lead .tpl_lead_cnt.oner_img{width: 50%;margin: 5% 25% 0;}
}

/* -----------各種想い・コンセプト---------------- */
.iza_tpl_page .top_message.about_cnt{margin-bottom: 0;}
.iza_tpl_page .top_message.about_cnt .flex_wrap div p{width: 100%;margin-left: 0;margin-bottom: 5%;}
.iza_tpl_page .top_message.about_cnt .flex_wrap div{text-align: left;}
.iza_tpl_page .top_message.about_cnt .message_img{text-align: right; margin:5% 0% 0 0%;} 
.iza_tpl_page .top_message.about_cnt.about_cnt_w{background-color: #fff;}
.iza_tpl_page .top_message.about_cnt.about_cnt_w .message_img{text-align: left;}
.iza_tpl_page .top_message.about_cnt h2{font-size: 4rem;line-height: 6rem;}
@media screen and (max-width: 750px) {
.iza_tpl_page .top_message.about_cnt{margin: 0;padding: 25% 5%;}
.iza_tpl_page .top_message.about_cnt h2{font-size: 3.5rem;}
}

.productArea {width:100%; background-color:#FFF;  }
.wrap-product {display: flex; flex-wrap: wrap; margin:0 auto; padding: 0 10%;}
.wrap-product img {margin:0; width:100%; object-fit:cover; border-radius:50%; object-position:0px 0px; background-color:#F7F7F7;}
/*.item-product {width: 18%; margin:0 1% 2% 1%;}*/
.item-product {width: 18%; margin:0 7% 3% 7%;}
.wrap-product p {font-size:14px; font-weight:bold; line-height:120%; margin:20px 0 0 0; text-align:center;}
.wrap-product a {color:#333; text-decoration:none;}
@media not all and (min-width: 768px) {
.item-product {width: 31%; margin:0 1% 3% 1%;}
}

.fancyArea {display: flex; flex-wrap: wrap; max-width: 1000px; margin: 0 auto 50px ; padding: 0 5%;  }
.fancyArea a {width: 20%; padding:1%; }
.fancyArea a img {max-width: 100%; height: auto; border-radius:20px;}
@media(max-width: 600px) {
.fancyArea {display: flex; flex-wrap: wrap; max-width: 600px; margin: 0 auto; padding: 0;}
.fancyArea a {width: 33.3%; padding:1%; }
}

/* -----------シェアボタン---------------- */
.share_btn{text-align: center;margin: 10%;}
.share_btn h2{font-size: 4rem;margin-bottom: 5%;}
.share_btn .flex_wrap{gap: 5%;justify-content: center;}
@media screen and (max-width: 750px) {
.share_btn h2{font-size: 3.5rem;margin-bottom: 10%;}
.share_btn{margin-bottom: 15%;}
}

/* -----------スポンサー---------------- */
.sponser{padding: 5%;text-align: center;margin-bottom: 10%;}
.sponser h3{font-size: 2.6rem; margin: 5% auto 3%; -webkit-text-stroke: 1px #333;text-stroke: 1px #333;}
.sponser .flex_wrap{flex-wrap: wrap; justify-content: flex-start;gap: 3%}
@media screen and (max-width: 750px) {
.sponser h2{font-size: 3.5rem;}
.sponser h3{font-size: 2rem;}
.sponser .flex_wrap{margin-bottom: 20%; justify-content: space-around;}
}


/* 
===================================================================
// 鎌倉・高島
// ===================================================================*/
#price_villa,#access_villa{ padding-top:200px;}
#facility_villa{ padding-top:150px;}
#contact_villa { padding-top:50px;}
.villa2 .iframe_video{margin-bottom: 10%;}
.villa2 .villa_info{background-color: #F7F7F7; padding: 10% 18% 5%;}
.villa2 .villa_info h2{font-size: 2.5rem; padding-bottom: 3rem; border-bottom: 1px solid #CCCCCC; margin-bottom: 5rem;}
.villa2 .villa_info h3{font-size: 2.2rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; margin-bottom: 1rem;}
.villa2 .villa_info p{margin-bottom: 4rem;}
.villa2 .btn_area{margin-top: 10%;}
.villa2 .villa_about_cnt{background-color: #fff;}
.villa2 .villa_about_cnt img{border-radius: 15px;}

.iza_top2_page .villa2_mes{position: relative; margin: 20% 5% 0%; text-align: center;}
.iza_top2_page .villa2_mes img.back{position: absolute; top: 50%; left: 50%; margin-right: -50%; transform: translate(-50%, -50%); z-index: -1;}
.iza_top2_page .villa2_mes .villa2_mes_cnt img{margin-bottom: 5%;}
.villa2_mes_cnt  .info_cnt a{-webkit-text-stroke: 1px #333; text-stroke: 1px #333;}

/* -----------各種コンテンツ---------------- */
.villa_about_cnt{text-align: center; max-width: 1000px; width: 100%; margin: auto;}
.villa_about_cnt img.content_mainimg{margin: 10% 20%; width: 60%;}

@media screen and (min-width: 1000px) {
.villa_about_cnt img.content_mainimg{margin:10% 0 0; width: 100%;}
}

.villa_about_cnt img.content_icon{margin: 5% 5% 2%;}
.villa_about_cnt p{text-align: left; margin: 5% 10% 5% 10%;}
.villa_about_cnt .btn_area{gap: 5%;}

@media screen and (max-width: 1000px) {
.villa_about_cnt{margin: 5% 5% 0; width: 90%;}
.villa_about_cnt img.content_mainimg{margin: 10% 0%; width: 100%;}
.villa_about_cnt p{text-align: left; margin: 5% 5% 5% 5%;}
.villa_about_cnt img.content_icon{width: 8rem; margin-bottom: 2rem;}
.villa_about_cnt .btn_area a{margin-top: 2rem;}
}

@media screen and (max-width: 1000px) {
.villa2 .villa_info{background-color: #F7F7F7; padding: 25% 5% 10%;}
.villa2 .villa_info h2{font-size: 1.8rem;}
.villa2 .villa_info h3{font-size: 1.6rem;}
}

.villa2 .about_bed{}
.villa2 .about_bed .flex_wrap{gap:4%;	flex-wrap: wrap;}
.villa2 .about_bed .flex_wrap div{width: 48%;}
.villa2 .about_bed h2{margin-top: 8%; -webkit-text-stroke: 0px #333; text-stroke: 0px #333; margin-bottom: 5%; margin: auto; max-width: 1000px;}
.villa2 .about_bed .bed_ttl, .villa2 .about_bed .flex_wrap.bed_info{margin: 2% auto 5%;	max-width: 1000px; padding:0 5%; width:90%;}
.villa2 .about_bed .bed_ttl h2{margin-bottom: 5%; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; }
.villa2 .about_bed .flex_wrap.bed_info div.bed_info2{margin-bottom: 2%; padding: 0;}
.villa2 .about_bed .flex_wrap.bed_info div.bed_info2 img.img_r{border-radius: 20px;}
.villa2 .about_bed .flex_wrap.bed_img div.bed_info2 img{width: 100%;}
.villa2 .about_bed .flex_wrap.bed_info div.bed_info2 img{margin-bottom: 0%; border-radius: 0px;}
.villa2 .about_bed .flex_wrap div.bed_info2 .bed_info3{width: 100%; gap:3%; align-items: center; justify-content: flex-start;}
.villa2 .about_bed .flex_wrap div.bed_info2 .bed_info3 img.content_icon{width: 7rem; height: auto;}
.villa2 .about_bed .flex_wrap.bed_info div.bed_info2 h3{font-size: 2.5rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; margin-bottom:0;}
.villa2 .about_bed .flex_wrap.bed_info div.bed_info2 p{font-size: 1.6rem; font-family: kinuta-shin-stdn, sans-serif;}
.villa2 .about_bed .garally{background-color: #fff; text-align: center;}
.villa2 .about_bed .garally ul, .villa2 .about_bed .garally ul li{margin: 0; padding: 0;}
.villa2 .about_bed .garally img{border-radius: 25px; margin: 0; padding: 0;}
.villa2 .about_bed.ryori .bed_ttl p.ryorittl{font-weight: 700; margin-bottom: 1rem;}
.villa2 .about_bed.ryori .ryorisec{margin: 0% 20% 15%;}
.villa2 .about_bed.ryori .ryorisec h3{font-weight: 700; font-size: 2.5rem; margin-top: 5%; margin-bottom: 2rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}

@media screen and (max-width: 1000px) {
.villa2 .about_bed{margin: auto 0% 0%;}
.villa2 .about_bed .flex_wrap.bed_info{margin: 10% 5% 10%;}
.villa2 .about_bed .bed_ttl{margin: 10% 5% 5%;}
.villa2 .about_bed .flex_wrap.bed_info div.bed_info2{padding:2% 0% 0; margin-bottom: 0%; width: 100%;}
.villa2 .about_bed .flex_wrap.bed_info div.bed_info2 img{width: 3rem;}
.villa2 .about_bed .flex_wrap.bed_info div.bed_info2 h3{margin-bottom: 1%; font-size: 1.8rem;}
.villa2 .about_bed .flex_wrap div.bed_info2 .bed_info3 img.content_icon{width: 4rem; height: auto;}
.villa2 .about_bed .flex_wrap.bed_info div.bed_info2 p{font-size: 1.6rem;}
}

@media screen and (max-width: 750px) {
.villa2 .about_bed.ryori .ryorisec{margin: 0% 10% 10%;}
.villa2 .about_bed.ryori .ryorisec h3{font-weight: 700; font-size: 2rem; margin-top: 10%; margin-bottom: 2rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}
}
.villa2 .amenity{margin: auto; max-width: 1000px;}
.villa2 .amenity h2{margin-bottom: 2%;}
.villa2 .amenity .amenity_p{margin-bottom: 5%;}
.villa2 .amenity .amenity_info{margin-bottom: 10%;}
.villa2 .amenity .amenity_info .flex_wrap{margin-bottom: 2%; gap: 3%; justify-content: flex-start; align-items: center;}
.villa2 .amenity .amenity_info h3{font-size: 3rem; margin-bottom: 3%; -webkit-text-stroke: 1px #333; text-stroke: 1px #333;}
.villa2 .amenity .amenity_info .flex_wrap img{width: 5rem; height: auto;}

@media screen and (max-width: 1000px) {
.villa2 .amenity{margin: 0% 5%; width: 90%;}
.villa2 .amenity h2{margin-bottom: 10%;}
.villa2 .amenity .amenity_info .flex_wrap img{width: 3rem; height: auto;}
.villa2 .amenity .amenity_info{margin-bottom: 10%;}
.villa2 .amenity .amenity_info h3{font-size: 2.3rem; margin-bottom: 5%;}
}

.villa2 .garally{background-color: #FFFFFF; padding-bottom: 5%;text-align: center;}
.villa2 .garally h2{margin:10% 5%;}
.garally p{font-size: 3rem; -webkit-text-stroke: 1px #333; text-stroke: 1px #333; font-family: kinuta-shin-stdn, sans-serif;}

@media screen and (max-width: 750px) {
.villa2 .garally h2{margin:10%;}
.garally p{font-size: 2rem; line-height: 2rem; margin-top: 5%;}
.villa2 .garally{padding-bottom: 0;}
.villa2 .garally ul, .villa2 .garally ul li, .villa2 .garally ul li img{margin-bottom: 0;}
}

/* 
===================================================================
// 鎌倉・高島 アクセス
// ===================================================================*/
.villa_access{background-color: #F7F7F7; text-align: center; padding: 10% 5% 10%; margin-bottom: 0%;}
.villa_access h2{margin: 0 0 20px 0;}
.villa_access img{width: 15%; margin-top: 1%; margin-bottom: 5%;}
.villa_access iframe{width: 80%; height: 70vh; border-radius: 30px; margin-top: 5%; margin-bottom: 5%;}
@media screen and (max-width: 750px) {
.villa_access{padding: 20% 10% 20%; margin-bottom: 0%;}
.villa_access iframe{width: 100%; height: 30vh; margin-top: 10%;margin-bottom: 3%;}
}

/* 
===================================================================
// 鎌倉・高島問合せ
// ===================================================================*/
.villa_contact_page .contact_ttl{text-align: center; margin-bottom: -20%; padding:10% 0 20% 0; background-color:#FFF;}
.villa_contact_page .contact_ttl h2{margin-bottom: 1%;}
.villa_contact_page .contact_ttl img{width: 30%;}
.villa_contact_p{margin: 3% auto; color: #ff3333; -webkit-text-stroke: 1px #ff3333;text-stroke: 1px #ff3333;}


/* ===================================================================
// IZAトップ
// ===================================================================*/
#iza_gtp{margin-top: 0; padding-top: 0;}
.iza_gtp_page .top_resorts{background-color: #fff; max-width: 1000px; padding: 0; margin: auto;}

.iza_gtp_page .top_resorts{margin-bottom:0; padding-bottom:0; padding-top: 0; margin-top: 0;}
.iza_gtp_page .top_resorts .top_resorts_cnt{margin: 0;padding:10% 0 0;}
.iza_gtp_page .top_resorts p{width:100%; margin: 0;}

#oumimaiko{width: 100%; padding: 2% 0; background-color: #F7F7F7;}
.iza_gtp_page .top_place{ max-width: 1000px; padding: 0; margin: 0 auto;}
.iza_gtp_page .top_place .btn_area{text-align: center; justify-content: center; }
.iza_gtp_page .top_place figure{margin-bottom: 3%;width: 100%;}
.iza_gtp_page .top_place figure img{width: 100%; margin: 0;}
.iza_gtp_page .top_place .resort_subttl{margin-bottom: 0;}
.iza_gtp_page .top_place li{margin-bottom: 0;}
.iza_gtp_page .top_place .place_cnt{margin: 0;margin-top: 15%;}

@media screen and (max-width: 1000px) {
.iza_gtp_page .top_place{width: 90%; margin: auto 5%;}
.iza_gtp_page .top_resorts .top_resorts_cnt{margin: 0 5%; width: 90%;}
.iza_gtp_page .top_resorts .top_resorts_cnt h2{font-size: 3rem;}
}


@media screen and (max-width: 750px) {
.iza_gtp_page .top_resorts .top_resorts_cnt img{width: 90%; margin: auto 5% 10%;}
.iza_gtp_page .top_place .btn_area{margin: 5% 0 15% 0!important;padding: 0; width: 100%;}
.iza_gtp_page .top_place  h2{margin-bottom: 5%;}
}

.top_resorts{padding-bottom: 15%; padding-top: 15%;}
.top_resorts .top_resorts_cnt{padding: 5% 15%; width: 100%;}
.motto_ttl{margin-bottom: 6rem;}
.top_resorts .top_resorts_cnt img{margin-bottom: 5%;}
.top_resorts .top_resorts_cnt h2{font-size: 3.5rem; text-align: center;}
.top_resorts .top_resorts_cnt p{width: 80%; margin: 5% 10% 5%;}
.top_resorts .btn_area{margin-top: 5%;}
.top_resorts img.ttl_bar{width: 50%; margin: -4% 25% auto;}

@media screen and (min-width: 2000px) {
.top_resorts img.ttl_bar{width: 30%; margin: -1% 35% auto;}
}

@media screen and (max-width: 750px) {
.motto_ttl{font-size: 2.2rem!important;}
.top_resorts{padding-bottom: 25%;}
.top_resorts .top_resorts_cnt{padding: 10% 10% 5%; width: 100%;}
.top_resorts .top_resorts_cnt img{width: 70%; margin: -10% 15%;}
.top_resorts .top_resorts_cnt p{width: 100%; margin: 5% 0 10%;}
}


.top_resorts.top_resorts2{background-color: #F7F7F7;}

.top_place .place_cnt{margin-bottom: 10%;}
.top_place .place_cnt a{margin-bottom: 5rem; justify-content: flex-start;}
.top_place .place_cnt .date{margin-right: 5%;}
.top_place .place_cnt img{border-radius: 45px;}

@media screen and (max-width: 750px) {
.top_place .place_cnt li a{margin-bottom: 0;}
.top_place .place_cnt li a .date{width: 100%;}
.top_place .place_cnt li a .ttl{width: 100%; margin-top: -2rem;}
.top_place .place_cnt img{border-radius: 15px;}
}


.top_place .top_message{margin: auto; max-width: 1000px; padding-top: 10%; padding-bottom: 5%;}

@media screen and (max-width: 1000px) {
.top_place .top_message{margin: auto 5%; width: 90%; padding-top: 10%; padding-bottom: 10%;}
.top_place .top_message .flex_wrap p{line-height: 4rem;}
}

/* ドロワーオーバーレイ */
.drawer-overlay {display: none; position: fixed; top: 0; left: 0; width:100%; height:100%; background-color: rgba(0, 0, 0, 0.5); z-index: 999; opacity: 0; transition: opacity 0.3s ease;}
.drawer-content {display: none; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 80%; height: 60vh; background-color:#F8F5F0; box-shadow: 0 4px 10px rgba(0,0,0,0.3); z-index: 1000; border-radius:10px; opacity: 0; transition: opacity 0.3s ease; overflow-y: auto; box-sizing: border-box; flex-direction: column; padding: 0 10px 0;}
@media (max-width: 1024px) { 
.drawer-content {display: none; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: 100vh; background-color:#F8F5F0; box-shadow: 0 4px 10px rgba(0,0,0,0.3); z-index: 1000; border-radius:10px; opacity: 0; transition: opacity 0.3s ease; overflow-y: auto; box-sizing: border-box; flex-direction: column; padding: 0 10px 0;}	
}

.drawer-overlay.show {display: block;opacity: 1;}
.drawer-content.show {display: flex; opacity: 1;}

.close-button {color: #000000; align-self: flex-end; font-size:40px; font-weight:bold;cursor: pointer;margin:0; padding:0; line-height: 1; position:absolute; top:20px; right:20px;}
.close-button:hover {color: #000000;}

.drawer-body {flex-grow: 1; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; position:relative; }

.drawer-body p {line-height: 1.6; color: #000000; margin-top:0; font-size:14px;}

/* tripla code */
#search-bar-wrap{width:100%; margin:0 auto; text-align:center; }
#tripla-searching-app{background-color:transparent; margin:0; }
#search-bar-wrap form{box-shadow:none; background-color:transparent; margin:0 auto;} 
@media (max-width: 992px) { 
#search-bar-wrap{width:100%; margin:0 auto; text-align:left; }
#search-bar-wrap form{box-shadow:none; background-color:transparent; margin:0 auto;} 	
}
@media (max-width: 600px) { 
#search-bar-wrap{width:100%; margin:0 auto; text-align:left;}
#search-bar-wrap form{box-shadow:none; background-color:transparent;margin:0 auto; padding:0;} 	
}

.grecaptcha-badge { visibility: hidden; }