@charset "UTF-8";

/*------------------------------
COMMON CSS
------------------------------*/
* { margin: 0; padding: 0; }

html, #top, .wrapper { width: 100%; height: 100%; }

html { font-size: 16px; line-height: 2em; color: #000000; }

body { font-family: YuGothic, "Hiragino Kaku Gothic Pro", Meiryo, Osaka, "MS PGothic", sans-serif; margin: 0; padding: 0; word-break: break-all; width: 100%; -webkit-text-size-adjust: 100%; overflow-x: hidden; }

/*Link*/
a:link { text-decoration: underline; color: #4e220f; text-decoration: underline; -webkit-transition: 0.2s ease; -moz-transition: 0.2s ease; -o-transition: 0.2s ease; transition: 0.2s ease; }

a:visited { text-decoration: underline; color: #4e220f; }

a:hover { text-decoration: underline; color: #c95b2c; }

a:active { text-decoration: underline; color: #c95b2c; }

/*clearfix*/
.clear { clear: both; height: 0px; font-size: 0px; margin: 0px; padding: 0px; overflow: hidden; }

.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }

.clearfix { display: inline-block; }

/*imgHover*/
.imgHover a:link { opacity: 1.0; filter: alpha(opacity=100); -ms-filter: "alpha( opacity=100 )"; -webkit-transition: 0.2s ease; -moz-transition: 0.2s ease; -o-transition: 0.2s ease; transition: 0.2s ease; }

.imgHover a:hover { opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha( opacity=70 )"; }

.imgHover2 a:link { opacity: 1.0; filter: alpha(opacity=100); -ms-filter: "alpha( opacity=100 )"; -webkit-transition: 0.2s ease; -moz-transition: 0.2s ease; -o-transition: 0.2s ease; transition: 0.2s ease; }

.imgHover2 a:hover { opacity: 0.4; filter: alpha(opacity=40); -ms-filter: "alpha( opacity=40 )"; }

/*縦書き*/
.vertical { -ms-writing-mode: tb-rl; /* for MS IE8+ */ -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; }

/*caution*/
ul.caution { margin:10px 0 20px 12px; }
ul.caution li { list-style: none; font-size: 12px; width: 100%; text-align: left; line-height: 1.8em; }
ul.caution li:before { content: "※ "; margin-left: -12px; }

ul.caution2 { margin-left: 16px; margin-top: 10px; }
ul.caution2 li { list-style: none; font-size: 13px; width: 100%; line-height: 1.3em; text-align: left; }
ul.caution2 li:before { content: "・ "; margin-left: -16px; }
@media (max-width: 650px) {
	ul.caution2 {
		margin-left: 0;
		padding-left: 0;
	}
	ul.caution2 li:before {
		margin-left: 0;
	}
}

/*文字装飾*/
.red { color: #ff1616; }

/*よせ*/
.CENTER { display: block; width: 100%; text-align: center; }

/*wrapper*/
.wrapper { width: 100%; margin: 0; padding: 0; }
@media (max-width: 1140px) {
	.wrapper {
		margin-top: 69px;
	}
}
.wrapperIn { position: relative; width: 100%; margin: 0 auto; padding: 0; max-width: 1400px; }

/*MAIN・MOVIE*/
/* 動画のコンテナ */
/* 動画とマスクの共通コンテナ */
.movie {
  position: relative; /* 子要素の絶対配置の基準 */
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}
.movie img {
	width: 100%;
}

/* マスクのコンテナ */
.mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1; /* 動画の上に配置 */
  background: url(../img/common/mask.png) no-repeat center center/contain;
}

/* 動画の親要素の縦横比を維持 */
.movie > div {
  position: relative;
  height: 0;
  padding-top: 34.21%; /* (479 / 1400) * 100 */
}

/* 動画プレイヤー本体 */
.movie .video-js {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
#other .wrapper .wrapperIn .mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: url(../img/common/mask-2.png) no-repeat center center/contain;
}
#other .wrapper .wrapperIn .movie {
  position: relative;
  height: 0;
  padding-top: 23.5%; /* (300px / 1276px) * 100% を指定 */
  text-align: center;
}
#other .wrapper .wrapperIn .movie h1 {
	position: absolute;
	top: 0;
	left: 0;
}

/*layout*/
.contents {
    max-width: 1100px;
    display: flex !important;
    margin: 0 auto;
    padding: 0;
}
@media (max-width: 1140px) {
  .contents {
    flex-direction: column;
  }
}

/* PC表示では非表示にする */
#header-container {
  display: none;
}

#mobile-nav {
  display: none;
}

/* モバイル表示用のスタイル */
@media (max-width: 1140px) {
  /* ヘッダー全体を固定 */
  #header-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 10px 20px;
    box-sizing: border-box;
    z-index: 1000;
    background-color: #fff; /* 背景色を設定 */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  }

  /* .leftContents全体を非表示にする */
  .leftContents {
    display: none !important;
  }

  /* ロゴのスタイル */
  .logo img {
    height: 40px; /* ロゴの高さを調整 */
  }

  /* ハンバーガーメニューボタンのスタイル */
  .hamburger-menu {
    display: block;
    width: 40px;
    height: 30px;
    background: none;
    border: none;
    position: relative;
    cursor: pointer;
    z-index: 1001;
  }
  .hamburger-menu span {
    display: block;
    width: 100%;
    height: 3px;
    background-color: #000;
    position: absolute;
    left: 0;
    transition: all 0.3s ease;
  }
  .hamburger-menu span:nth-child(1) { top: 0; }
  .hamburger-menu span:nth-child(2) { top: 50%; transform: translateY(-50%); }
  .hamburger-menu span:nth-child(3) { bottom: 0; }

  /* メニューを開いたときのボタンのアニメーション */
  .hamburger-menu.is-active span:nth-child(1) {
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
  }
  .hamburger-menu.is-active span:nth-child(2) {
    opacity: 0;
  }
  .hamburger-menu.is-active span:nth-child(3) {
    bottom: 50%;
    transform: translateY(50%) rotate(-45deg);
  }

  /* メニューリストのスタイル */
  #mobile-nav {
    display: block;
    position: fixed;
    top: 0;
    right: -100%; /* 画面外に隠す */
    width: 100%;
    height: 100vh;
    background-color: #fff;
    transition: right 0.3s ease;
    z-index: 999;
    padding-top: 80px; /* 固定ヘッダーの高さ分、メニューを下にずらす */
    box-sizing: border-box;
  }
  #mobile-nav.is-active {
    right: 0; /* アクティブ時にスライド表示 */
  }

  #mobile-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center;
  }
  #mobile-nav ul li a {
    display: block;
    padding: 15px;
    border-bottom: 1px solid #eee;
    text-decoration: none;
    color: #000;
  }
}

.contents .leftContents { width: 278px; display: block; float: left; margin: 0; padding: 0; }
.contents .leftContents header .logo { margin: 0 0 33px 0; }
.contents .leftContents header nav ul li { float: left; }
.contents .leftContents aside ul.banner { padding: 28px 0 44px 0; }
.contents .leftContents aside ul.banner li { padding: 0; margin: 13px 0 0 0; }
.contents .leftContents aside ul.banner li.tel { padding: 0; margin: 0 0 10px 0; text-align: center; }
.contents .leftContents aside ul.banner li.fax { padding: 0; margin: 0 0 23px 0; text-align: center; }
.contents .leftContents aside .search { margin: 0 0 20px 0; }
.contents .rightContents { width: 768px; display: block; float: left; margin: 0 0 0 54px; padding: 0; line-height: 1.8em; }
.contents .rightContents .title { margin-bottom: 40px; }
.contents .rightContents section.box { margin-bottom: 80px; position: relative; }
.contents .rightContents h4 { margin-bottom: 20px; }
.contents .rightContents .noStyle { padding: 0; line-height: 0; }
.contents .rightContents p { padding-bottom: 1.6em; font-size: 14px; }
.contents .rightContents .fontMI { font-size: 16px; }

@media (max-width: 1140px) {
  /* .leftContents全体を非表示にする */
  .contents .rightContents {
    width: auto;
    margin: 0 2em;
  }
  .contents .rightContents img {
  	width: 100%;
  }
}
@media (max-width: 450px) {
  .contents .rightContents img {
  	margin-top: 1em;
  }
}

.narrow-menu {
  display: none;
}
@media (max-width: 450px) {
  .wide-menu {
    display: none;
  }
  .narrow-menu {
    display: block;
  }
}

/*#scrollUp*/
#scrollUp { position: fixed; bottom: 20px; right: 35px; z-index: 11; }
#scrollUp i { font-size: 10px; line-height: 46px; font-style: normal; }
#scrollUp a { text-decoration: none; width: 46px; height: 46px; display: block; color: #fff; background: #7c582e; text-align: center; z-index: 11; -webkit-border-radius: 15%; -moz-border-radius: 15%; border-radius: 15%; -webkit-transition: 0.3s ease; -moz-transition: 0.3s ease; -o-transition: 0.3s ease; transition: 0.3s ease; }
#scrollUp a:hover { -webkit-transform: translate(0px, -5px); -moz-transform: translate(0px, -5px); -o-transform: translate(0px, -5px); -ms-transform: translate(0px, -5px); transform: translate(0px, -5px); background: #8d6a41; }


/*footer*/
footer {
	width: 100%;
	height: auto;
	background: url(../img/common/bgf.jpg) no-repeat center bottom;
	background-size: cover; 
	min-height: 230px; 
	padding: 11px 0 0 0; 
}
footer .container { text-align: center; color: #fff; }
footer .container .fnavi { display: block; width: 100%; text-align: center; padding: 10px 0 10px 0; }
footer .container .fnavi li { font-size: 13px; display: inline-block; padding: 0 30px 0 20px; border-right: 1px solid #fff; }
footer .container .fnavi li:last-child { border-right: none; }
footer .container .fnavi li a:link, footer .container .fnavi li a:visited { color: #fff; text-decoration: none; }
footer .container .fnavi li a:hover, footer .container .fnavi li a:active { color: #fff; text-decoration: underline; }
footer .container .finner {
    width: 100%;
    margin: 0px auto 0 auto;
    display: flex;
    gap: 2em;
}
footer .container .finner .flogo {
    float: left;
    text-align: left; 
}
footer .container .finner .flogo .cat { background: #fff; color: #5e3819; font-size: 13px; }
footer .container .finner .flogo img {
    margin-top: 15px;
    display: block;
    width: 100%;
    max-width: 230px;
    min-width: 110px;
    height: auto;
}
footer .container .finner .zip { float: left; width: 375px; display: inline-block; text-align: left; line-height: 1.4em; padding: 27px 0 0 0; font-size: 13px; }
footer .container .finner .banner { float: left; text-align: left; font-size: 13px; padding: 0; width: 30%; }
footer .container .finner .banner img { margin: 0 0 0.5em 0; }
footer .container .finner .banner a:link, footer .container .finner .banner a:visited { color: #fff; text-decoration: none; }
footer .container .finner .banner a:hover, footer .container .finner .banner a:active { color: #fff; text-decoration: underline; }
footer .container .copy { font-size: 10px; padding: 7px 0; border-top: 1px solid #967b63; width: auto; margin: 12px auto 0 auto; }

@media (max-width: 350px) {
	footer {
		min-height: 300px;
	}
}
@media (max-width: 600px) {
	footer .container .finner .flogo {
		margin: 0 auto;
	}
	footer .container .finner .zip {
		display: none;
	}
}
@media (max-width: 850px) {
	footer .container .finner .banner {
		display: none;
	}
}
@media (max-width: 1140px) {
	footer .container {
		max-width: none !important;
	}
}

/*margin adjust*/
.marB10 { margin-bottom: 10px; }

.marB20 { margin-bottom: 20px; }

.marB30 { margin-bottom: 30px; }

.marB60 { margin-bottom: 60px; }

.marB80 { margin-bottom: 80px; }

.marB90 { margin-bottom: 90px; }

.marB120 { margin-bottom: 120px; }

.marT30 { margin-top: 30px; }

.marT40 { margin-top: 40px; }

.marT50 { margin-top: 50px; }

.marT60 { margin-top: 60px; }

.marT95 { margin-top: 95px; }

/*table*/
table.ver00 { border-collapse: separate; border-spacing: 1px 1px; background: none; width: 100%; background: #000; font-size: 13px; }
table.ver00 tr th { padding: 10px; text-align: center; vertical-align: middle; color: #fff; font-weight: bold; background: #545454; }
table.ver00 tr td { padding: 10px; text-align: center; vertical-align: middle; background: #fff; }

table.ver00_l { border-collapse: separate; border-spacing: 1px 1px; background: none; width: 100%; background: #000; font-size: 13px; }
table.ver00_l tr th { padding: 10px; vertical-align: middle; color: #fff; font-weight: bold; background: #545454; text-align: left; }
table.ver00_l tr td { padding: 10px; vertical-align: middle; background: #fff; text-align: left; }



.line {
	width:700px;
	height:23px;
	background-image:url(../img/common/line.jpg);
	background-repeat:repeat-x;
}

.modal_box{width:auto; padding:21px 0; }
.modal_box h2{margin:0 0 10px 0; font-size:21px; color:#7d0022; text-align:center;}
.modal_box h3{margin:0 0 10px 0; font-size:20px; color:#7d0022; text-align:center;}
.modal_box a{text-decoration:none; color:#7d0022; font-weight:bold; outline:none;}
.modal_box p{text-align:left; line-height: 1.8em;font-size:17px;}
.modal_box .remodal-confirm{margin:20px 0 0 0;}
.modal_box .message{margin:0 0 25px 0;}
.modal_box .message p{text-align: center;}
.modal_box .info{text-align: center;}
.modal_box .info p{margin:0 0 10px 0; font-size:19px; text-align: center;}

.popup_3{position: fixed; bottom: 10px; z-index: 999;}
.popup_3.left{ left: 0;}
.popup_3.right{ right: 0;}
.popup_3.close{display: none;}
.popup_3.left .popup_btn{background: #333; border-radius: 50%; color: #fff; cursor: pointer; display: block; height: 27px;  width: 27px; position: absolute; right: -10px; top: -10px; text-align: center;}
.popup_3.right .popup_btn{background: #333; border-radius: 50%; color: #fff; cursor: pointer; display: block; height: 27px;  width: 27px; position: absolute; left: -10px; top: -10px; text-align: center;}


.popup_contents{width:250px; position: relative;}
.popup_contents a img{width:100%; height:auto; }
.popup_contents a{color:#7d0022; font-weight:bold; transition: opacity 0.5s ease-out;}
.popup_contents a:hover{opacity: .5;}

.remodal{padding: 55px; max-width:800px;}
.remodal .section_box{letter-spacing:0.15em; margin:0 0 20px 0;}
.remodal .message{padding:0 0 20px 0; }
.remodal .message p{padding:0 0 10px 0; }
.remodal h2{color:#7d0022;}
.remodal h3{margin:0 0 20px 0; color:#7d0022; }
.remodal h4{margin:0 0 10px 0; color:#59493f; }


.sp_on{display: none;}
.pc_on{display: block;}

@media only screen and (max-width: 767px){
.modal_box h2{margin:0 0 10px 0; font-size:19px; color:#7d0022; text-align:center;}
.modal_box h3{margin:0 0 10px 0; font-size:19px; color:#7d0022; text-align:center;}
.modal_box p{text-align:left;}
.modal_box .message p{text-align:left;}
    
.sp_on{display: block;}	
.pc_on{display: none;}    
    
}


.pannel { padding: 44px 0 58px 0; }
@media (min-width: 1140px) {
.pannel li { float: left; display: block; width: 235px; margin: 0 31px 0 0; }
.pannel li:last-child { margin: 0; }
}

.recommended { margin: 30px 0 70px 0; }
.recommended .planList { display: block; margin: 20px auto 0 auto; }
.recommended .planList li { display: block; margin: 0 0 1em 0; }
.recommended .planList li img { float: left; margin: 0 15px 5px 0; }
.recommended .planList li p { padding: 0; }

.plan-waku {
	background-color:#D9D1C6;
	padding:20px 20px 0 20px;
	margin-bottom:30px;
}



/* rss_content
----------------------------------------------------------- */
#plan_rss {
	width: 705px;
	float: left;
	padding: 0 0 0 0px;
}

/* 
----------------------------------------------------------- */
#mini {
	display: block;
	height: auto;
	border-bottom: 1px dotted #AEBC7D;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 10px;
	margin-left: 0px;
	width: 768px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 10px;
	padding-left: 0px;
}
#mini hr {width: 0px; height: 0px; margin: 0px; padding: 0px; clear: both; border-style: none; visibility: hidden;}

/*プラン*/
#mini #minileft {
	width: 630px;
	float: right;
	word-wrap: break-word;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 2px;
	padding-left: 0px;
}
#mini #minileft p {
	font-size: 12px;
	line-height: 24px;
	margin: 0 0px 10px 0;
	padding: 0px;
}
#mini #minileft h4 {
	margin: 0 0 5px 0;
	padding: 0 0 5px 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2em;
	border-bottom: 1px dashed #c95b2c;
}
#mini #minileft h4 a{
	margin: 0px;
	padding: 0;
	color: #c95b2c;
	text-decoration: none;
}
#mini #minileft h4 a:hover {
	color: #c95b2c;
	font-weight: bold;
	text-decoration: underline;
}

#mini #miniright {
	width: 119px;
	text-align: right;
	margin: 0px;
	padding: 0px;
	float: left;
}
#mini #miniright img {
	margin: 0px 0px 0px;
	padding: 0px;
	border-style: none;
}

@media (max-width: 1140px) {
  #mini {
    display: flex;
    flex-direction: row-reverse;
    width: 100%;
    gap: 20px;
  }
  #mini #minileft {
  	width: auto;
  }
  #mini #miniright img {
    min-width: 120px;
  }
}
@media (max-width: 450px) {
	    #mini {
        flex-direction: column-reverse;
    }
}

/*プランボタン*/
#mini #miniright p {margin: 0px; padding: 0px; display: block;}
#mini #miniright p a {
	display: block;
	margin: 0px;
	padding: 0px;
	width: 119px;
	height: 105px;
	background: url(m_plan02.gif) no-repeat;
}
#mini #miniright p a:hover { background: url(m_plan02_ov.gif) no-repeat;}

#mini #miniright strong {display: none;}
.plan_box hr {
	margin: 0px;
	padding: 0px;
	clear: both;
	float: none;
	border-width: 0px;
	border-style: none;
}


/*form*/
.fullw { width: 530px; padding: 0.5em; border: 1px solid #C0C0C0; }

.middlew { width: 140px; padding: 0.5em; border: 1px solid #C0C0C0; }

.shortw { width: 80px; padding: 0.5em; border: 1px solid #C0C0C0; }


.cui { padding: 30px 0 0 0; }
.cui li { width: 300px; margin: 0 26px 26px 0; float: left; }
.cui li:nth-child(2n) { margin: 0 0 26px 0; }

@media (max-width: 1140px) {
	.cui {
		display: flex !important;
	    flex-wrap: wrap;
	    gap: 20px;
	    justify-content: space-around;
	}
	.cui li {
		margin: 0;
		max-width: 300px;
		height: auto !important;
	}
}


body.cuisine .tab #container-1 { width: 100%; margin: 0; padding: 0; }
body.cuisine .tab #container-1 #fragment-1, body.cuisine .tab #container-1 #fragment-2, body.cuisine .tab #container-1 #fragment-3 { border: none; }
body.cuisine .tab #container-1 #fragment-1 .fragmentInner, body.cuisine .tab #container-1 #fragment-2 .fragmentInner, body.cuisine .tab #container-1 #fragment-3 .fragmentInner { width: 100%; margin: 0; padding: 22px 0; }
body.cuisine .tab #container-1 #fragment-1 .fragmentInner .inner, body.cuisine .tab #container-1 #fragment-2 .fragmentInner .inner, body.cuisine .tab #container-1 #fragment-3 .fragmentInner .inner { width: 100%; margin: 0 auto 71px auto; }
body.cuisine .tab #container-1 ul.pannelBtm { width: 100% !important; display: block !important; margin: 0; padding: 0; }
body.cuisine .tab #container-1 ul.pannelBtm li { margin: 0 !important; display: block !important; width: 33%; border: none !important; height: 35px !important; float: left; background-size: cover; cursor: pointer; }
body.cuisine .tab #container-1 ul.pannelBtm li a { display: block !important; height: 35px !important; }
body.cuisine .tab #container-1 ul.pannelBtm li:nth-child(1) a { background: url(../img/cuisine/img_c_tab01_off.jpg) no-repeat center center; }
body.cuisine .tab #container-1 ul.pannelBtm li:nth-child(1) a:hover { background: url(../img/cuisine/img_c_tab01_on.jpg) no-repeat center center; }
body.cuisine .tab #container-1 ul.pannelBtm li:nth-child(2) a { background: url(../img/cuisine/img_c_tab02_off.jpg) no-repeat center center; }
body.cuisine .tab #container-1 ul.pannelBtm li:nth-child(2) a:hover { background: url(../img/cuisine/img_c_tab02_on.jpg) no-repeat center center; }
body.cuisine .tab #container-1 ul.pannelBtm li:nth-child(3) a { background: url(../img/cuisine/img_c_tab03_off.jpg) no-repeat center center; }
body.cuisine .tab #container-1 ul.pannelBtm li:nth-child(3) a:hover { background: url(../img/cuisine/img_c_tab03_on.jpg) no-repeat center center; }
body.cuisine .tab #container-1 ul.pannelBtm li.ui-tabs-selected a { cursor: pointer; }
body.cuisine .tab #container-1 ul.pannelBtm li.ui-tabs-selected:nth-child(1) a { background: url(../img/cuisine/img_c_tab01_on.jpg) no-repeat center center; }
body.cuisine .tab #container-1 ul.pannelBtm li.ui-tabs-selected:nth-child(2) a { background: url(../img/cuisine/img_c_tab02_on.jpg) no-repeat center center; }
body.cuisine .tab #container-1 ul.pannelBtm li.ui-tabs-selected:nth-child(3) a { background: url(../img/cuisine/img_c_tab03_on.jpg) no-repeat center center; }


@media screen and (max-width: 710px) {
	body.cuisine .tab #container-1 ul.pannelBtm {
    display: flex;
    flex-direction: column;
	}
	body.cuisine .tab #container-1 ul.pannelBtm li {
		width: 100%;
	}
}



.H01 { height: 500px; }

.H02 { height: 1200px; }

.H03 { height: 321px; }

.H04 { height: 321px; }

.H05 { height: 329px; }

.H06 { height: 188px; }

.H07 { height: 274px; }

.H08 { height: 195px; }

section.box { margin-bottom: 80px; position: relative; }
section.box .poA0 { position: absolute; top: 0; left: 0; }
section.box .poA1 { position: absolute; top: 0; right: 0; }
section.box .poA2 { position: absolute; top: 323px; left: 0; }
section.box .poA3 { position: absolute; top: 323px; left: 276px; }
section.box .poA4 { position: absolute; top: 323px; right: 0; }
.poA5 {width: 768px; height: 100px; margin-bottom:100px; background: url(../img/facilities/img_f_06.jpg) no-repeat center top; }
.poA5 p { padding: 20px 20px 0 30px; line-height: 1.4em; }
section.box .dog { position: absolute; top: -30px; right: 0; }
section.box .gbox { background: #f1f1f1; padding: 20px; margin: -14px 0 0 0; line-height: 1.5em; }
section.box .poB0 { position: absolute; top: 0; right: 48px; }
section.box .poB1 { position: absolute; top: -12px; left: 0; }
section.box .poB2 { position: absolute; top: 280px; right: 143px; }
section.box .poB3 { position: absolute; top: 383px; right: 0; }
section.box .poB4 { position: absolute; top: 625px; right: 0; }
section.box .poB5 { position: absolute; top: 717px; right: 143px; }
section.box .poB6 { position: absolute; top: 954px; left: 0; }
section.box .poB7 { position: absolute; top: 954px; right: 49px; }
section.box .poC0 { position: absolute; top: 0; left: 0; }
section.box .poC1 { position: absolute; top: 0; right: 0; }
section.box .tC0 { position: absolute; top: 220px; left: 0; width: 242px; line-height: 1.7em; }
section.box .poD0 { position: absolute; top: 0; right: 0; }
section.box .poD1 { position: absolute; top: 0; left: 0; }
section.box .tD0 { position: absolute; top: 220px; right: 0; width: 251px; line-height: 1.7em; }
section.box .poE0 { position: absolute; top: 139px; right: 0; }
section.box .poE1 { position: absolute; top: 0; left: 0; }
section.box .poE1-single { position: absolute; top: 0; left: 0; display: none;}
section.box .tE0 { position: absolute; top: 275px; right: 260px; line-height: 1.7em; text-align: right; width: 552px; }
section.box .poF0 { position: absolute; top: 0; left: 0; }
section.box .poF1 { position: absolute; top: 0; right: 0; }
section.box .tF0 { position: absolute; top: 0; left: 220px; width: 250px; line-height: 1.7em; }
section.box .poG0 { position: absolute; top: 0; right: 0; }
section.box .poG1 { position: absolute; top: 0; left: 0; }
section.box .tG0 { position: absolute; top: 220px; right: 0; width: 310px; line-height: 1.7em; }
section.box .poH0 { position: absolute; top: 0; left: 0; }
section.box .tH0 { position: absolute; top: 20px; right: 49px; line-height: 1.7em; }
section.box .tH0 { position: absolute; top: 0; right: 0; width: 531px; line-height: 1.7em; }
section.box .tH1 { position: absolute; top: 60px; right: 0; width: 476px; padding: 20px 20px 20px 35px; background: #826d60; color: #fff; line-height: 1.7em; }
section.box .tH1 ul { margin: 0 !important; padding: 0 !important; }

@media (max-width: 1140px) {
	.contents .rightContents section.box {
		display: flex;
		flex-direction: column;
		position: static;
		height: auto;
		margin-bottom: 30px;
	}
	.contents .rightContents section.box > * {
	  position: static;
	}
	.H01, .H02, .H03, .H04, .H05, .H06, .H07 .H08 {
		height: auto;
	}
	section.box.H01, section.box.H02 {
		flex-direction: row !important;
		justify-content: space-around;
		flex-wrap: wrap;
		gap: 20px;
		align-items: flex-start;
	}
	h4.poG0, h4.poA0, h4.poB0 {
		width: 100%;
	}
	.poA1 {
	    width: 100%;
	}
	section.box.H01 .poA1 img {
		width: 100%;
		height: auto;
		display: block;
	}
	h4.poG0 img, h4.poA0 img, h4.poC0 img, h4.poD0 img, h4.poE0 img, h4.poF0 img, h4.poB0 img, h4.poH0 img {
		max-width: 191px;
        width: 40% !important;
        min-width: 90px;
        margin-top: 0 !important;
	}
	p.tG0, p.tC0, p.tD0, p.tE0, p.tF0, p.tH0, .tH1 {
		width: 100% !important;
		margin-top: 1rem;
	}
	section.box.H01 .poA2, section.box.H01 .poA3, section.box.H01 .poA4 {
		flex-basis: calc(33.3333% - 13.3333px);
		max-width: 400px !important;
		min-width: 180px;
		flex-grow: 1;
	}
	.box.H01 img, section.box.H02 a[class^="poB"] img {
		width: 100%;
		height: auto;
		display: block;
	}
	.poE1, .poE1-single {
		order: 2;
	}
	.poE0 {
		order: 1;
	}
	.tE0 {
		order: 3;
		text-align: left !important;
	}
	section.box .gbox {
		margin: 0;
	}
	.H06 {
		margin-bottom: 0 !important;
	}
	.poA5 {
		width: 100%;
		background: none;
		margin-bottom: 30px;
	}
	.poA5 p {
	    padding: 0;
	    font-size: 14px !important;
	}
	.dog {
		display: none;
	}
	section.box.H02 a[class^="poB"] {
		flex-grow: 0;
		flex-shrink: 1;
	}
}
@media (max-width: 570px) {
	.contents .rightContents {
		margin: 0px 1em;
	}
  .ver00_l th,
  .ver00_l td {
    display: block;
    width: 100% !important;
    box-sizing: border-box;
  }
  .ver00_l th {
    font-weight: bold;
    padding-bottom: 5px;
  }
  .ver00_l tr {
    display: block;
  }
  .ver00_l td[colspan] {
    padding-top: 5px;
    border-top: 1px dashed #eee;
  }

  section.box .poE1 { display: none; }
  section.box .poE1-single { display: block;}

  section.box.H07, section.box.H05, section.box.H03 {
  	margin-bottom: 0 !important;
  }
}

@media (max-width: 500px) {
	h5.CENTER.marT30 {
		margin-top: 30px;
		font-size: 1.1rem;
	}
}

.mapout { display: flex; margin-bottom: 40px; }
.mapout .map { float: left; margin: 0 27px 15px 0 !important; }

@media (max-width: 820px) {
	.mapout {
		flex-direction: column;
	}
	.mapout .map {
		width: 100%;
		margin: 0 0 1em 0 !important;
	}
	.map-text p {
		padding: 0 !important;
	}
}
/*タブ1*/
.ssbox01_01 { display: block; position: relative; width: 100%; height: 0; padding-top: 76.43%; background: url(../img/sightseeing/img_s_01.jpg) no-repeat center top; background-size: cover; }
.ssbox01_01 p { position: absolute; line-height: 1.6em; top: 50px; left: 246px; display: block; width: 336px; height: 91px; font-weight: bold; text-shadow: white 1px 1px 0px; }

.ssbox01_02 { display: block; position: relative; width: 100%; height: 0; padding-top: 70.44%; background: #def4ff url(../img/sightseeing/img_s_02.jpg) no-repeat center top; background-size: cover; }
.ssbox01_02 .txt { position: absolute; bottom: 5px; left: 28px; display: block; width: 711px; font-weight: bold; }

/*タブ2*/
.ssbox02_01 { display: block; position: relative; width: 100%; height: 0; padding-top: 60.55%; background: url(../img/sightseeing/img_s_03.jpg) no-repeat center top; background-size: cover; }
.ssbox02_01 p { position: absolute; line-height: 1.6em; top: 50px; left: 236px; display: block; width: 300px; height: 91px; font-weight: bold; text-shadow: white 2px 2px 0px, white -2px 2px 0px, white 2px -2px 0px, white -2px -2px 0px; }

.ssbox02_02 { display: block; position: relative; width: 100%; height: 0; padding-top: 86.33%; background: #def4ff url(../img/sightseeing/img_s_04.jpg) no-repeat center top; background-size: cover; }

/*タブ3*/
.ssbox03_01 { display: block; position: relative; width: 100%; height: 0; padding-top: 60.68%; background: url(../img/sightseeing/img_s_05.jpg) no-repeat center top; background-size: cover; }
.ssbox03_01 p { position: absolute; line-height: 1.6em; top: 50px; right: 50px; display: block; width: 336px; height: 91px; font-weight: bold; text-shadow: white 2px 2px 0px, white -2px 2px 0px, white 2px -2px 0px, white -2px -2px 0px; }

.ssbox03_02 { display: block; position: relative; width: 100%; height: 0; padding-top: 93.75%; background: #def4ff url(../img/sightseeing/img_s_06.jpg) no-repeat center top; background-size: cover; }
.ssbox03_02 .txt { position: absolute; top: 240px; right: 40px; display: block; width: 291px; }

/*タブ4*/
.ssbox04_01 { display: block; position: relative; width: 100%; height:0; padding-top: 17.06%; background: url(../img/sightseeing/img_s_07.jpg) no-repeat center top; background-size: cover; }
.ssbox04_01 p { position: absolute; line-height: 1.6em; top: 60px; left: 268px; display: block; width: 501px; }

.fragment-text-case-narrow {
	display: none;
}
.fragment-text-case-narrow p, div.fragmentInner p {
	padding: 0!important;
	margin-top: 1rem;
}
@media (max-width: 1140px) {
	.ssbox01_01, .ssbox01_01 p, .ssbox01_02, .ssbox01_02 .txt, .ssbox02_02, .ssbox03_01, .ssbox03_01 p, .ssbox03_02, .ssbox03_02 .txt, .ssbox04_01, .ssbox04_01 p {
		position: static;
	}
	.fragment-text-case-narrow {
		display: block;
	}
	.ssbox01_01 p, .ssbox01_02 .txt, .ssbox02_01 p, .ssbox03_01 p, .ssbox03_02 .txt, .ssbox04_01 p {
		display: none;
	}
	.fragmentInner .marT30 img {
		width: auto !important;
	}
}

@media (min-width: 1140px) {
    .ssbox01_02 {
        height: 761px;
        padding-top: 0;
        background: #def4ff url(../img/sightseeing/img_s_02.jpg) no-repeat center top;
        background-size: 100% 541px;
    }
}
@media (max-width: 450px) {
	.ssbox04_01 { display: block; position: relative; width: 100%; height:0; padding-top: 7.98%; background: url(../img/sightseeing/img_s_07-2.jpg) no-repeat center top; background-size: cover; }
}


body.sightseeing .tab #container-1 { width: 100%; margin: 0; padding: 0; }
body.sightseeing .tab #container-1 #fragment-1, body.sightseeing .tab #container-1 #fragment-2, body.sightseeing .tab #container-1 #fragment-3, body.sightseeing .tab #container-1 #fragment-4 { border: none; }
body.sightseeing .tab #container-1 #fragment-1 .fragmentInner, body.sightseeing .tab #container-1 #fragment-2 .fragmentInner, body.sightseeing .tab #container-1 #fragment-3 .fragmentInner, body.sightseeing .tab #container-1 #fragment-4 .fragmentInner { width: 100%; margin: 0; padding: 22px 0; }
body.sightseeing .tab #container-1 ul.pannelBtm { width: 100% !important; display: block !important; margin: 0; padding: 0; }
body.sightseeing .tab #container-1 ul.pannelBtm li { margin: 0 !important; display: block !important; width: 25%; border: none !important; height: 35px !important; float: left; background-size: cover; cursor: pointer; }
body.sightseeing .tab #container-1 ul.pannelBtm li a { display: block !important; height: 35px !important; }
body.sightseeing .tab #container-1 ul.pannelBtm li:nth-child(1) a { background: url(../img/sightseeing/img_s_tab01_off.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li:nth-child(1) a:hover { background: url(../img/sightseeing/img_s_tab01_on.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li:nth-child(2) a { background: url(../img/sightseeing/img_s_tab02_off.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li:nth-child(2) a:hover { background: url(../img/sightseeing/img_s_tab02_on.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li:nth-child(3) a { background: url(../img/sightseeing/img_s_tab03_off.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li:nth-child(3) a:hover { background: url(../img/sightseeing/img_s_tab03_on.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li:nth-child(4) a { background: url(../img/sightseeing/img_s_tab04_off.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li:nth-child(4) a:hover { background: url(../img/sightseeing/img_s_tab04_on.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li.ui-tabs-selected a { cursor: pointer; }
body.sightseeing .tab #container-1 ul.pannelBtm li.ui-tabs-selected:nth-child(1) a { background: url(../img/sightseeing/img_s_tab01_on.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li.ui-tabs-selected:nth-child(2) a { background: url(../img/sightseeing/img_s_tab02_on.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li.ui-tabs-selected:nth-child(3) a { background: url(../img/sightseeing/img_s_tab03_on.jpg) no-repeat center center; }
body.sightseeing .tab #container-1 ul.pannelBtm li.ui-tabs-selected:nth-child(4) a { background: url(../img/sightseeing/img_s_tab04_on.jpg) no-repeat center center; }

@media (max-width: 1140px) {
	body.sightseeing .tab #container-1 #fragment-1 .fragmentInner,
	 body.sightseeing .tab #container-1 #fragment-2 .fragmentInner,
	  body.sightseeing .tab #container-1 #fragment-3 .fragmentInner,
	   body.sightseeing .tab #container-1 #fragment-4 .fragmentInner { 
	   	padding: 50px 0; 
	   }
	.CENTER a img {
		width: 60% !important;
	}
}

@media screen and (max-width: 710px) {
	body.sightseeing .tab #container-1 ul.pannelBtm {
	    display: flex;
	    flex-direction: column;
	}
	body.sightseeing .tab #container-1 ul.pannelBtm li {
		width: 100%;
	}
	body.sightseeing .tab #container-1 #fragment-1 .fragmentInner,
	 body.sightseeing .tab #container-1 #fragment-2 .fragmentInner,
	  body.sightseeing .tab #container-1 #fragment-3 .fragmentInner,
	   body.sightseeing .tab #container-1 #fragment-4 .fragmentInner { 
	   	padding: 150px 0 50px; 
	}
	.CENTER a img {
		width: 100% !important;
	}
}


ul.clearfix.imgHover2 {
	margin: 0;
    padding: 0;
}
ul.banner.imgHover, ul.pannel.clearfix.imgHover {
	margin: 0 !important;
}
ul.planList.imgHover {
	padding: 0;
}
@media (max-width: 1140px) {
	ul.pannel.clearfix.imgHover{
		display: flex;
		justify-content: space-around;
		gap: 1em;
	}
	.clearfix:after {
		content: none !important;
	}
}
@media (max-width: 450px) {
	ul.pannel.clearfix.imgHover{
		display: none;
	}
}


/* Price */
table.ver00.narrow{
	display: none;
}

@media (max-width: 500px) {
	.customize-support .marT60, .customize-support .marT30 {
		margin-top: 0;
	}
	 table.ver00 {
	    display: none;
	  }
	 table.ver00.narrow {
	    display: table;
	  }
	.customize-support .box ul.caution {
		margin: 0;
		padding: 0;
	}
}



/* Gallery */
/*---------------------------------
	        Base CSS 
---------------------------------*/
body,ul{ 
	margin:0;padding:0;list-style:none;
}
img{border:0}
/* clearfix(削除不可) */
.clearfix:after { content:"."; display:block; clear:both; height:0; visibility:hidden; }
.clearfix { display:inline-block; }
/* for macIE \*/
* html .clearfix { height:1%; }
.clearfix { display:block; }

#gallery_wrap {
	width: 100%;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 50px;
	margin-left: auto;
	padding-top: 0px;
	z-index: 1;
	position: relative;
}
#gallery_list li{
	width: 200px;
	height: 135px;
	border: 1px solid #ccc;
	float: left;
	overflow: hidden;
	text-align: center;
	font-size: 12px;
	margin-top: 0;
	margin-right: 0px;
	margin-bottom: 18px;
	margin-left: 24px;
	padding: 5px;
}
#gallery_list a.photo{
	width: 200px;
	height: 135px;
	overflow: hidden;
	display: block;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
}

@media (max-width: 1140px) {
	ul#gallery_list {
		display: flex;
		flex-wrap: wrap;
        justify-content: space-around;
		gap: 20px;
		padding: 0;
	}
	ul#gallery_list li {
		margin: 0;
		padding: 0;
	}
}
/*---------------------------------
	       /Base CSS 
---------------------------------*/

/*---------------------------------
	      Pager style
---------------------------------*/
.pager_link{
	text-align: right;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	margin-left: 0px;
}
#gallery_list li img {
	height: 135px;
	width: 200px;
	margin: 0px;
	padding: 0px;
}
/*ページャーボタン*/
.pager_link a {
	border: 1px solid #aaa;
	border-radius: 5px 5px 5px 5px;
	color: #333;
	font-size: 12px;
	text-decoration: none;
	margin-top: 0;
	margin-right: 1px;
	margin-bottom: 0px;
	margin-left: 1px;
	padding-top: 3px;
	padding-right: 7px;
	padding-bottom: 2px;
	padding-left: 7px;
}
/*現在のページ、オーバーボタン*/
.pager_link a.current,.pager_link a:hover{

    color: #FFFFFF;
}
.overPagerPattern{
	padding:0 2px ;	
}
/*---------------------------------
	      /Pager style
---------------------------------*/
#gallery_wrap .kanri {
	text-align: right;
	padding: 0px;
	font-size: 14px;
	color: #333;
	margin-top: 0px;
	margin-right: 25px;
	margin-bottom: 0px;
	margin-left: 0px;
}
#gallery_wrap .kanri a {
	text-decoration: underline;
	color: #000;
}
#gallery_wrap .kanri a:hover {
	text-decoration: none;
	color: #000;
}



/*==============================================================================
  RM2
==============================================================================*/

#search-unity .search-booking-inner {
  width: var(--min_width);
  margin: var(--margin_with);
  background-color: #fff;
  padding: var(--padding_all);
  border-radius: 10px;
  position: relative;
  box-shadow: var(--box_shadow_glow);
  gap: 10px;
  box-shadow: 2px 2px 6px #999;
}
@media screen and (min-width: 880px) {
  #search-unity .search-booking-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-evenly;
  }
}
#search-unity .search-booking-inner a:hover {
	color: inherit;
}
#search-unity .search-booking-items {
  display: flex;
  flex-wrap: wrap
}
@media screen and (min-width: 1025px) {
  #search-unity .search-booking-items.w-3 {
    width: calc(100% / 3);
  }
  #search-unity .search-booking-items.w-100 {
    width: 100%
  }
}
@media screen and (max-width: 1024px) {
  #search-unity .search-booking-items {
    justify-content: flex-start;
    margin-bottom: 20px;
  }
}
#search-unity .search-booking-items .material-icons {
  color: #777;
  font-size: 24px;
}
#search-unity .search-booking-items .search-title {
  font-size: 1rem;
  color: #777
}
  #search-unity .search-booking-items p {
    padding: 0;
    margin: 0;
  }
#search-unity .search-booking-items label {
  display: inline-block;
  font-size: .9375rem;
  margin: 0 1em
}
#search-unity .search-booking-items input[type=text], #search-unity .search-booking-items input[type=date] {
  border: 1px solid #fff;
  background-color: #fff;
  padding: var(--padding_half_all);
  border-radius: 6px;
  font-size: 1.125rem
}
#search-unity .search-booking-items .search-label {
  color: #555
}
#search-unity .search-booking-btn {
  text-align: center
}
#search-unity .search-booking-btn button#search-booking-send {
  width: 140px;
  height: 50px;
  line-height: 50px;
  border: none;
  outline: none;
  background-color: #faa300;
  color: #fff;
  border-radius: 10px
}
#search-unity .search-booking-btn button#search-booking-send:hover {
  cursor: pointer
}
#search-unity .search-booking button.search-dates-decision, #search-unity .search-booking button.search-booking-counter-decision {
  width: min(90%, 160px);
  margin: var(--margin_with);
  height: 50px;
  line-height: 50px;
  border: none;
  outline: none;
  background-color: #0174be;
  color: #fff;
  font-weight: bold;
  border-radius: 5px;
  font-size: 1.1rem;

}
#search-unity .search-booking button.search-dates-decision a, #search-unity .search-booking button.search-booking-counter-decision a {
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
  text-decoration: none;
}
#search-unity .search-booking button.search-dates-decision a:hover, #search-unity .search-booking button.search-booking-counter-decision a:hover {
	text-decoration: underline;
}
#search-unity .search-booking button.search-dates-decision:hover, #search-unity .search-booking button.search-booking-counter-decision:hover {
  cursor: pointer;
}
#search-unity .search-booking .modal {
  display: none;
  height: 100vh;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000
}
#search-unity .search-booking .modal-bg {
  height: 100vh;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, .5);
  z-index: 1001
}
#search-unity .search-booking .modal-content {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  background-color: #fff;
  border-radius: 6px;
  padding: var(--padding_half_all);
  box-shadow: var(--box_shadow_glow);
  z-index: 1002
}
#search-unity .search-booking .modal-content .search-booking-counter p {
	padding: 1rem 0 0 0 !important;
	margin: 0 !important;
}
#search-unity .search-booking .modal-content dl {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center
}
#search-unity .search-booking .modal-content dl dt, #search-unity .search-booking .modal-content dl dd {
  width: 50%
}
#search-unity .search-booking .modal-content dl dt {
  text-align: right;
  padding-right: 1em
}
#search-unity .search-booking-counter-select {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 6px
}
#search-unity .search-booking-counter-select .count-button {
  cursor: pointer;
  display: inline-block;
  width: 40px;
  height: 40px;
  background-color: #0174be;
  color: #fff;
  border: none;
  outline: none;
  border-radius: 10px
}
#search-unity .search-booking-counter-select .count-button:disabled {
  opacity: .2
}
#search-unity .search-booking-counter-select input[type=number] {
  padding: .4em;
  border: 1px solid #eee;
  border-radius: 4px;
  width: 4em;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important
}

@media screen and (max-width: 680px) {
	#search-unity .search-booking .modal-content dl {
		flex-direction: column;
	}
	#search-unity .search-booking .modal-content dl dt {
		width: 100%;
	}
}

/*==============================================================================
  Contact
==============================================================================*/
.contact-parts {
    width:100%;
    margin:var(--margin_auto);
    padding:var(--padding_half_all)
}
.contact-parts:last-of-type {
  border-bottom: none;
}
.contact-parts-outer {
    padding:var(--padding_all)
}
.contact-parts-inner {
    padding:.4em 0;
    text-align:left
}
@media screen and (min-width: 1025px) {
    .contact-parts {
        display:flex;
        flex-wrap:nowrap;
        justify-content:space-between;
        align-items:center
    }
    .contact-parts label.label-title {
        width:14em
    }
    .contact-parts-inner {
        width:calc(100% - 15em)
    }
}
.contact-parts label {
    font-size:1rem
}
.contact-parts span.required {
    background-color:#770100;
    color:#fff;
    border-radius:6px;
    padding:2px 6px;
    font-size:80%;
    display:inline-block;
    margin:0 6px
}
.contact-parts input[type=text],.contact-parts input[type=number],.contact-parts input[type=email],.contact-parts input[type=date],.contact-parts select,.contact-parts textarea {
    width:100%;
    display:inline-block;
    font-size:1rem;
    padding:var(--padding_half_all);
    border:1px solid #eee
}
.contact-parts input[type=text]:focus,.contact-parts input[type=number]:focus,.contact-parts input[type=email]:focus,.contact-parts input[type=date]:focus,.contact-parts select:focus,.contact-parts textarea:focus {
    outline:1px dashed #0174be !important
}
.contact-parts-btn {
    display:block;
    width:160px;
    height:50px;
    line-height:50px;
    background-color:#0c356a;
    color:#fff;
    text-align:center;
    border:none;
    border-radius:10px;
    font-size:1.25rem;
    margin:var(--margin_with);
    transition:all .6s
}
.contact-parts-btn:hover {
    cursor:pointer;
    text-decoration:none;
    opacity:.5
}
@media (max-width: 450px) {
	.contact-parts-btn {
	    width: 33%;
	    min-width: 90px;
	    font-size: 1rem;
	}
}

.contact-parts table {
    width:100%;
    margin:var(--margin_with)
}
.contact-parts table th,.contact-parts table td {
    display:block;
    width:100%
}
.contact-parts table th {
    margin-bottom:10px
}
.contact-parts table td {
    padding:0 2em;
    margin-bottom:30px
}
.contact-parts table .inline-box {
    display:inline !important
}
.contact-parts input[name=a-member],.contact-parts input[name=a-member-male],.contact-parts input[name=a-member-female] {
    width:100px !important
}
.wpcf7-form {
  border: 1px solid #bfbfbf;
  border-bottom: none;
  border-left: none;
  border-right: none;
}
.wpcf7-not-valid-tip {
    display:block;
    font-size:.875rem;
    color:#770100
}
.wpcf7-not-valid-tip:before {
    display:inline-block;
    vertical-align:middle;
    font-family:"Material Icons";
    content:"";
    font-size:1.25rem
}
.wpcf7-response-output {
    width:min(90%,1100px);
    margin:var(--margin_with);
    padding:var(--padding_all);
    color:#770100;
    font-size:1.25rem;
    text-align:center;
    border:2px solid #fff
}
.wpcf7-list-item-label {
    font-size:1rem;
    margin:6px auto
}

.contact-parts {
  border-top: 1px solid #bfbfbf;
  border-left: 1px solid #bfbfbf;
  border-right: 1px solid #bfbfbf;
  background: #f7f7f7;
}
.wpcf7-form .contact-parts:first-of-type {
  border-top: none;
}
.wpcf7-form > p {
  border-top: 1px solid #bfbfbf;
  border-bottom: none;
}
.contact-parts > p, .contact-parts-inner > p, .wpcf7-form > p {
    padding: 0 !important;
    margin: 0;
}
.contact-parts input[type=text], .contact-parts input[type=number], .contact-parts input[type=email], .contact-parts input[type=date], .contact-parts select, .contact-parts textarea {
    border: 1px solid #ccc;
}

.grecaptcha-badge { visibility: hidden; }

/*==============================================================================
  Topics News
==============================================================================*/
.text-content {
	width: 100%;
}
.news-list-item a {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    color: #000;
    text-decoration: none;
}

.news-list-item h2.news-title {
    font-size: 18px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.news-title span {
    font-size: 1rem;
    margin-top: 0.3rem;
}

.news-list-item p.news-contents {
    flex-grow: 1;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #ccc;
}

.news-list-item .trim-image {
    width: 200px;
    flex-shrink: 0;
}

.news-list-item img {
    width: 100%;
    height: auto;
    display: block;
}

.news-list-item:last-of-type p.news-contents {
    border-bottom: none;
    padding-bottom: 0;
}

@media (max-width: 768px) {
    .news-list-item a {
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }
    .news-list-item a img {
    	width: 80% !important;
    	margin: 0 auto;
    }

    .news-list-item h2.news-title,
    .news-list-item p.news-contents,
    .news-list-item .trim-image {
        width: 100%;
    }
    
    .news-list-item h2.news-title {
        order: 1;
    }
    
    .news-list-item p.news-contents {
        order: 3;
    }
    
    .news-list-item .trim-image {
        order: 2;
        margin-bottom: 10px;
    }
    
    /* レスポンシブ時の最後の要素のボーダー設定 */
    .news-list-item:last-of-type p.news-contents {
        border-bottom: none;
        padding-bottom: 0;
    }
}


/*==============================================================================
  Topics - Single page
==============================================================================*/
article.post h3.title {
	margin: 20px 0 !important;
}
article.post .post-date {
	padding: 0;
}

img.attachment-full.size-full.wp-post-image {
	display: block;
	width: 80%;
	height: auto;
	margin: 0 auto 2rem;
}

.prev-next-buttons {
    overflow: hidden; /* clearfix または float 対策 */
    display: flex; /* flexboxでも横並び可能 */
    justify-content: center;
    gap: 20px;
}
p.button.button-prev, p.button.button-next {
	padding: 0;
	margin: 0;
}
.archive-button {
    text-align: right; /* 「投稿一覧へ」ボタンを中央に配置 */
    margin-top: 20px;
}
.post-navigation-container a {
	text-decoration: none;
}
.post-navigation-container a:hover {
	color: inherit;
	text-decoration: underline;
}
.prev-next-buttons.clearfix::after {
	content: none;
}