@charset "utf-8";

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
common
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ----------------------------------------------------
element base setting (common)
---------------------------------------------------- */
body {
  color: #162938;
  line-height: 1.8; 
  background: #fff;
}
a {
  color: #162938; 
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
.clickable a, .clickable a:hover {
  color: #162938;
}
img {width: 100%; height: auto;}
.img--auto {width: auto; max-width: 100%;}
.flex {display: flex; display: -webkit-flex; justify-content: space-between; flex-wrap: wrap;}
.inner {width: 90%; max-width: 1000px; margin-right: auto; margin-left: auto;}
.inner--m {max-width: 1100px;}
.inner--s {width: 90%; max-width: 1000px; margin-right: auto; margin-left: auto;}
.inner--xs {max-width: 815px !important;}
.align--c {text-align: center;}
.align--r{text-align: right;}
.ff--serif {font-family: var(--ff-serif-01); font-weight: 500;}
.fs--S {font-size: 90%;}
.fs--SS {font-size: 50%;}

:root {
--ff-serif-01:YuMincho, 'Yu Mincho', serif;
--ff-serif-02:'Shippori Mincho', serif;
--ff-sans-01:"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", arial, helvetica, sans-serif; 
}


.annual_link 
{
	position: relative;
	border:1px solid #ccbe79;
	color:#ccbe79;
	padding: 10px 40px 10px 25px;
	margin:3vw ;
	background-color: rgba(18,42,76,1);
	font-size: 2rem;
}
.annual_link::after 
{
    content: '';
	width: 13px;
	height: 13px;
	border: 0;
	border-top: solid 1px #ccbe79;
	border-right: solid 1px #ccbe79;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	right: 15px;
	bottom: 0;
	margin: auto;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
header (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#header {height: min(8.75vw, 105px); color: #fff; font-size: min(1.2vw, 1.8rem); display: flex; display: -webkit-flex; justify-content: space-between; align-items: center; background: rgb(34,59,104);
background: linear-gradient(90deg, rgba(34,59,104,1) 0%, rgba(18,42,76,1) 100%); font-family: var(--ff-serif-01);}
#siteID {margin-left: min(3vw, 60px);}
#siteID span {display: none;}
#siteID img {width: min( 23.33vw, 280px);}

#header .header__btn {height: min(8.75vw, 105px); display: flex; display: -webkit-flex; margin-left: min(1.2vw, 24px); }
#header .header__btn li {width: min( 11.5vw , 153px); font-size: min(1.2vw , 1.7rem);}
#header .header__btn li a {height: 100%; display: flex; display: -webkit-flex; align-items: center; justify-content: center; text-align: center; color: #fff; line-height: 1.4; font-weight: 500;}
#header .header__btn li:first-child a {background: #000000;}
#header .header__btn li:nth-child(2) a {background: #42210b;}
#header .header__btn li:nth-child(3) a {background: #af810e;}


@media (min-width: 1230px) { 
#header .header__info {display: flex; display: -webkit-flex; justify-content: flex-end; align-items: center;}
#header .header__info a {color: #fff;}

/* global navi */
#btnGlobal {display: none;}
#grandMenu, .navChild__wrap{display: flex; display: -webkit-flex; justify-content: space-between; flex-wrap: wrap; position: relative;}
.navGlobal, .navGlobal ul {display: flex; display: -webkit-flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.navGlobal ul li a {display: flex; height: 100%; align-items: center;}

.navGlobal ul.navMainGlobal {font-size: min(1.3vw, 1.6rem);}
.navGlobal ul.navMainGlobal > li {height: min(8.75vw, 105px);}
.navGlobal ul.navMainGlobal > li:not(:first-child) {margin-left: min(2.5vw, 30px);}
.navGlobal ul.navMainGlobal > li span {position: relative;}
.navGlobal ul.navMainGlobal > li:hover span::before {content: ""; width: min(1.66vw, 20px); height: 1px; background: #fff; position: absolute; left: 50%; bottom:  max(-0.83vw, -10px); transform: translateX(-50%);}
.navGlobal ul.navMainGlobal li {}

.navPopGlobal {position: absolute; width: max-content; z-index: 10; text-align: center; display: none; left: 0; right:0; top: 125px;}
.navPopGlobal.active {display: block;}

.navPopGlobal .navChild { font-size: min(1.95vw, 2.4rem); padding: min(0.7vw, 8px) min(7.5vw, 90px); display: inline-block; color: #333 !important; background: #efefef; box-shadow: 5px 5px 3px 0px rgba(0, 0, 0, 0.1);}

#grandMenu .annual_area{position: absolute; top:35px; right:0; display: flex;}
#grandMenu .annual_area a
{
	position: relative;
	border:1px solid #ccbe79;
	color:#ccbe79;
	padding: 4px 16px 1px 12px;
	margin:0px 4px 0px 10px;
	background-color: rgba(18,42,76,1);
    font-size: min(1.04vw, 1.26rem);
}
#grandMenu .annual_area a::after 
{
    content: '';
	width: 6.4px;
	height: 6.4px;
	border: 0;
	border-top: solid 1px #ccbe79;
	border-right: solid 1px #ccbe79;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	right: 8px;
	bottom: 0;
	margin: auto;
}

body.home .navPopGlobal .navChild {background: #fff;}
.navPopGlobal .navChild .navChild__title {padding: min(1.25vw, 15px) min(1.66vw, 20px) min(0.4vw, 5px) 0; border-right: 1px solid #ccc; box-shadow: none;}
.navPopGlobal .navChild .navChild__title h2 {line-height: 1; font-weight: 500;}
.navPopGlobal .navChild .navChild__title  p {font-size:1.5rem; ;  font-weight: 500;}
.navPopGlobal .navChild ul {margin-left:min(2.5vw, 30px);  font-family:var(--ff-sans-01);font-size: min(1.5vw, 2.1rem);  }
.navPopGlobal .navChild ul li  {padding-right: min(0.83vw, 10px); position: relative; height: auto;}
.navPopGlobal .navChild ul li a {color: #333 !important;}
.navPopGlobal .navChild ul li a:hover {text-decoration: underline;}
.navPopGlobal .navChild ul li:not(:last-child) {margin-right: min(1.66vw, 20px);}
.navPopGlobal .navChild ul li::before  {content: ""; width: min(0.5vw, 6px); height: min(0.5vw, 6px); border-top: 1px solid #333; border-right: 1px solid #333; position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(45deg);}

/*
.navPopGlobal .navChild { padding: min(0.83vw, 10px) min(5vw, 60px); display: inline-block; color: #333 !important; background: #efefef; box-shadow: 5px 5px 3px 0px rgba(0, 0, 0, 0.1);}
.navPopGlobal .navChild .navChild__title  p {font-size:1rem; transform: scale(0.8);  font-weight: 500;}
.navPopGlobal .navChild ul {margin-left:min(2.5vw, 30px);  font-family:var(--ff-sans-01);font-size: min(1.16vw, 1.4rem);  }
*/

.navGlobal ul.navSubGlobal {font-size: min(1.08vw, 1.3rem); margin-left: min(3.3vw, 40px); font-family:var(--ff-sans-01); }
.navGlobal ul.navSubGlobal li {padding-right: min(0.83vw, 10px); position: relative;}
.navGlobal ul.navSubGlobal li::before {content: ""; width: min(0.5vw, 6px); height: min(0.5vw, 6px); border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(45deg);}
.navGlobal ul.navSubGlobal li:not(:first-child) {margin-left: min(1.66vw, 20px);}

.header__sns {font-size: 0; display: flex; display: -webkit-flex; align-items: center; margin-left: min(1.2vw, 24px); padding-top: 30px;}
.header__sns li {width: min(1.83vw, 22px); margin: 0 min(0.4vw, 5px);}
.header__sns li.sns_youtube{width: min(2.5vw, 30px);}

.middle {display: none;}
.middle_invisible{display: none !important;}

}

@media (min-width: 1731px) {
	.navGlobal{padding-top: 40px;}
}

@media (max-width: 1730px) and (min-width: 1230px)  {
	.navGlobal{padding-top: 40px;}
	.navPopGlobal {top: min(8.75vw, 95px);  left: -6vw; }

	.navGlobal ul.navMainGlobal > li:not(:first-child) {margin-left: 1.2vw;}
	.navGlobal ul.navSubGlobal {margin-left: 20px; }
	.navGlobal ul.navSubGlobal li:not(:first-child) {margin-left: 0.7vw;}
	
}

@media (max-width: 1672px) and (min-width: 1230px)  {
	#siteID {margin-left: 2vw;}
	#siteID img {width: max(240px, 18vw);}
	#header .header__btn {margin-left: 1vw; }
	#header .header__btn li {width: 9.2vw; font-size: 1.4rem;}
	.navPopGlobal {top: min(8.75vw, 95px);  left: -5vw; }

	#grandMenu {flex-direction: column-reverse; margin-right: 2vw;  }
	.navGlobal ul.navMainGlobal {font-size: 1.5rem;}
	.navGlobal ul.navMainGlobal > li {height:auto;}
	.header__sns {width: 100%; justify-content: flex-end; /*margin-bottom: 10px; padding-top: 10px;*/}
	.navGlobal ul.navSubGlobal {font-size: 1.2rem; }
	.navGlobal {margin: 5px 0; padding-top: 0;}
	.header__sns li {width: 18px;}
	/* .header__sns li:last-child {width: 24px;}*/

	#grandMenu .annual_area{right: 100px; top: 18px; }

}

@media (max-width: 1229px)  
{
	#btnGlobal {display: flex; display: -webkit-flex; justify-content: center; align-items: center; height: min(8.75vw, 105px); width:min(8.75vw, 105px); position: absolute; right: 0; top: 0; z-index: 120; cursor: pointer;}
	#btnGlobal.active {position: fixed;}
	.btnWrapGlobal {position: relative; width: min(3vw,30px); height: min(2vw, 25px);}
	.btnLine {background: #fff; width: 100%; height: 2px; position: absolute; left: 0; }
	.btnLineT{top: 0;}
	.btnLineM{top: 50%; transform: translateY(-50%); transform-origin: center center; transition: all 0.3s ease-in-out;}
	.btnLineB {bottom: 0;}
	#btnGlobal.active .btnLineM {transform: translateY(-50%) rotate(45deg);}
	#btnGlobal.active .btnLineM::before {content: ""; background: #fff; width: 100%; height: 2px; position: absolute; left: 0; top: 50%; transform: translateY(-50%)rotate(-90deg); transform-origin: center center;}
	#btnGlobal.active .btnLineT, 	#btnGlobal.active .btnLineB {display: none;}
	
	#header .header__btn {margin: 0 min(8.75vw, 105px) 0 0; }
	#header .header__btn li {width: min( 13vw , 180px); font-size: min(1.4vw , 1.7rem);}
	
	#grandMenu{background: rgba(0,0,0,0.8); width: 100%; height: 100%; position: fixed; left: 0; top:0; z-index: 100; padding: min( 20vw, 135px) 0; display: none; overflow: auto; }
	#grandMenu a {color: #fff;}
	.navGlobal {width: 80%; max-width: 960px; margin: 0 auto;}
	
	.navMainGlobal {border-bottom: 1px solid #fff;}
	.navChild__title {display: none !important;}
	.navMainGlobal li {border-top: 1px solid #fff; font-size: clamp(1.4rem, 4.2vw, 2.2rem); }
	.navMainGlobal li a {display: block; padding: min(3vw, 15px) 0; position: relative; }
	.navMainGlobal li a::before{content: ""; width: min(3vw, 15px); height: min(3vw, 15px); border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; right: min(2vw, 10px ); top: 50%; transform: translateY(-50%) rotate(45deg); transition: all 0.3s ease-in-out;}
	.navMainGlobal li.btn-navChild a::before{ transform: translateY(-50%) rotate(135deg); }
	.navMainGlobal li.btn-navChild a.active::before{ transform: translateY(-50%) rotate(-45deg); }
	
	.navSubGlobal {margin: min(8vw , 40px) auto; font-family: var(--ff-sans-01); font-size: clamp(1.3rem, 3.8vw, 1.8rem);}
	.navSubGlobal li {margin: min(1vw , 5px) 0; padding-left: min(4vw , 20px); position: relative;}
	.navSubGlobal li::before {content: ""; width: min(1.6vw, 8px); height: min(1.6vw, 8px); border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; left: 0; top: 50%; transform: translateY(-50%)rotate(45deg) !important;} 
	
	.navPopGlobal {display: none;}
	.navChild ul {margin: 0 0 min(4vw, 20px) min(2vw,10px) ; font-family: var(--ff-sans-01);}
	.navChild ul li {font-size: clamp(1.2rem, 4vw, 1.8rem);border: none;}
	.navChild ul li a {padding: min(2vw, 10px) 0; position: relative;  padding-left: min(4vw, 1.8rem);  }
	.navChild ul li a::before {content: ""; width: min(1.6vw, 8px); height: min(1.6vw, 8px); border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; left: 0; top: 50%; transform: translateY(-50%)rotate(45deg) !important;} 

	.header__sns {font-size: 0; text-align: center;}
	.header__sns li {display: inline-block; width: min(6vw , 30px); margin: 0 min(2vw,10px);}

	.middle
	{
		display: block;
	}
	
	/**/
	#grandMenu .annual_area
	{
		display: none;
	}
	div .annual_area 
	{
        display: flex;
        justify-content: center;
	}
	
	div.annual_area a
	{
		position: relative;
		border:1px solid #ccbe79;
		color:#ccbe79;
		padding: 10px 40px 10px 25px;
		margin:3vw 5vw ;
		background-color: rgba(18,42,76,1);
        font-size: min(3vw, 4rem);
	}
	div .annual_area a::after {
		content: '';
		width: 2vw;
		height: 2vw;
		border: 0;
		border-top: solid 1px #ccbe79;
		border-right: solid 1px #ccbe79;
		transform: rotate(45deg);
		position: absolute;
		top: 0;
		right: 2vw;
		bottom: 0;
		margin: auto;
	}

}

@media (max-width: 767px) { /* sp */
	#header {display: block; background: none; height: auto; position: fixed; width: 100%; left: 0; top: 0; z-index: 100;}
	#siteID {margin-left: 0;}
	#siteID a {display: flex; align-items: center; justify-content: center;  height: 13vw; background: #122a4c;}
	#siteID a span { display: block; color: #fff; text-align: center; font-size: min( 4.4vw , 3.3rem);}
	#siteID img {display: none;}
	#btnGlobal {height:13vw; width:13vw; }
	.btnWrapGlobal {width: 6vw; height: 4.5vw;}
	#header .header__btn {display: none;}

	div .annual_area a::after {
		right: 3vw;
	}
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
footer (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#footer { }
.footer__wrapper {background: #122a4c; color: #fff; position: relative;}
.footer__wrapper::before {content: ""; width: 35.5%; height: 100%; background: #223b68; position: absolute; left: 0; top: 0;}
.footer__wrapper a {color: #fff;}
.footer__flex {width: 92%; max-width: 1510px; margin: 0 auto; display: flex; display: -webkit-flex;justify-content: space-between; position: relative;}
.footer__info {width: 34%;  font-family: var(--ff-serif-02); padding:  min(5vw , 60px) 0; }
.footer__links {width: 66%; text-align: center;  font-family: var(--ff-serif-01); padding:  min(7.5vw , 90px) 0 min(5vw , 60px); }

.footer__logo {width: min( 26vw , 312px); margin-bottom: min( 3.3vw, 40px);}
.footer__info__address_course { font-size: min(1.16vw, 1.4rem); display: flex; display: -webkit-flex; align-items: center; flex-wrap: wrap; margin: min(2.5vw,30px) 0;}
.footer__info__address p {line-height: 1.4; margin: 0;}
.footer__info__address p.footer__info__map {margin-left: min(0.8vw, 20px); line-height: 1;  font-size: min(0.83vw, 1rem);}
.footer__info__address p.footer__info__map a {border: 1px solid #fff; display: inline-block; padding: min(0.4vw,5px) min(1vw, 12px);}

.footer__info__link {margin: min(4.4vw , 50px) 0 min(1.16vw, 20px);  font-size: 0; }
.footer__info__link li {font-size: min(1.42vw , 1.7rem); display: inline-block; line-height: 1;}
.footer__info__link li a {display: block; padding: min(0.8vw, 10px) min(2.5vw , 30px); }
.footer__info__link li.ft__info__member  {margin-right: min(1.16vw, 20px); }
.footer__info__link li.ft__info__member a {border: 1px solid #fff;}
.footer__info__link li.ft__info__member a span {position: relative; padding-right: min(2vw , 25px);}
.footer__info__link li.ft__info__member a span::before {content: ""; width: min( 1.16vw, 14px); height:min( 1.42vw, 17px) ; background: url("../img/common/ic-lock-01.svg") center center /contain no-repeat; position: absolute; right: 0; top: 50%; transform: translateY(-50%);}
.footer__info__link li.ft__info__recruit a {border: 1px solid #000; background: #000; color: #fff;}

.footer__sns li {display: inline-block; width: min(2.17vw, 26px); margin-right: min(0.83vw, 10px);}
.footer__sns li.sns_youtube {width: min(3.17vw, 38px);}

/* footer links */
.footer__links__inner {width: 90%; max-width: 800px; margin: 0  0 0 10%; text-align: left; }
.footer__lnks__navi {display: flex; display: -webkit-flex; justify-content: space-between; width: 90%; margin: 0 auto min(1.66vw, 20px);}
.footer__lnks__navi dl { width: 22%; text-align: left; font-family: var(--ff-sans-01);}
.footer__lnks__navi dl dt {font-size: min( 1.42vw, 1.7rem); font-weight: 600; margin-bottom: min( 2.5vw, 30px); padding-bottom: min( 2.5vw, 30px); position: relative;}
.footer__lnks__navi dl dt::before {content: ""; width: min(1.58vw, 19px); height: 1px; position: absolute; left: 0; bottom: 0; background: rgba(255, 255, 255, 0.5);}
.footer__lnks__navi dl dd {font-size: min(1vw, 1.2rem); margin: min(0.83vw, 10px) 0;}

.footer__links__sub {font-size: 0;  width: 90%; margin: 0 auto min(2.5vw, 30px); text-align: left;}
.footer__links__sub li {font-size: min(1vw, 1.2rem); margin-right: min(2.5vw, 30px); display: inline-block;}

.footer__links p {font-size: min(1.5vw, 1.8rem); margin-bottom: min(1.25vw, 15px);}
.footer__links__btn {display: flex; display: -webkit-flex; justify-content: space-between;}
.footer__links__btn li {font-size: min(1.66vw, 2rem); line-height: 1.3; width: 31%; max-width: 245px; height: min( 7.25vw , 87px); }
.footer__links__btn li:nth-child(2) {margin: 0  3.5%;}
.footer__links__btn li a {width: 100%; height: 100%; display: flex; display: -webkit-flex; justify-content: center; align-items: center; background: #000; border: 0.5px solid rgba(255,255,255,0.5); box-shadow: 0 0 10px 0 rgba(255,255,255,0.5); text-align: center;}
.footer__links__btn li:nth-child(2) a {background: #42210b;}
.footer__links__btn li:nth-child(3) a {background: #af810e;}
.footer__links__btn li:nth-child(2) a p {margin: 0;}

.copy {text-align: center; font-size: min(1.5vw, 1.8rem); padding: min(2.5vw, 30px) min(0.83vw, 10px);}

@media (max-width: 1030px){
	.footer__info__address_course {}	
	.footer__info__address_course div {width: 100%;}
	.footer__info__address p.footer__info__map {width: 100%; margin: min(0.6vw, 8px) 0 0;}
}

@media (max-width: 767px) {
.footer__wrapper::before {content: none;}
.footer__wrapper a {color: #fff;}
.footer__flex {width: 100%; flex-direction: column-reverse; }
.footer__info {width: 100%; padding: 8vw 5vw; display: flex; display: -webkit-flex; justify-content: center; }
.footer__links {width: 100%; padding: 5vw; background: #e5e5e5;}

.footer__info__sp { padding-left: 25vw; position: relative;}
.footer__info__sp ::before {content: ""; width: min( 16vw , 123px); height: min(18vw ,135px); position: absolute; left: 3vw; top: 50%; background: url("../img/common/lg-footer-02.svg") center top / contain no-repeat; transform: translateY(-50%);}
.footer__logo {width: inherit; margin-bottom: 0; font-size: min(4.5vw , 3.7rem);}
.footer__logo img {display: none;}
.footer__info__address_course {font-size: clamp(1rem, 3.4vw, 1.4rem); margin: 5vw 0;}
.footer__info__address p.footer__info__map {font-size: clamp(1rem, 3.4vw, 1.4rem);  margin: 2vw 0 0;}
.footer__info__address p.footer__info__map a {padding: 1.2vw 2vw;}

.footer__info__link {margin: 10vw 0 4vw;  display: flex; display: -wbkit-flex; justify-content: space-between;}
.footer__info__link li {font-size: 4vw; display: block;  width: 49%;}
.footer__info__link li a {padding: 3vw; text-align: center;}
.footer__info__link li.ft__info__member  {margin-right:0; }
.footer__info__link li.ft__info__member a span {padding-right: 5vw;}
.footer__info__link li.ft__info__member a span::before {width: 2.8vw; height:2.8vw; }

.footer__sns {text-align: center;}
.footer__sns li { width: 5.1vw; margin: 0 1vw;}
/* .footer__sns li:last-child {width: 7.6vw;} */

/* footer links */
.footer__links__inner {width: 100%; max-width: inherit; margin: 0;}
.footer__lnks__navi , .footer__links__sub  {display: none;}

.footer__links__btn {justify-content: space-between; flex-wrap: wrap;}
.footer__links__btn li {font-size: clamp(1.4rem, 4vw , 3.2rem); width: 49%; max-width: inherit; height: 12vw; }
.footer__links__btn li:first-child {order: 2;}
.footer__links__btn li:nth-child(2) {margin: 0; order: 3;}
.footer__links__btn li:last-child {width: 100%; order: 1; margin-bottom: 2vw;} 
.footer__links__btn li a {font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";  position: relative;}
.footer__links__btn li a::before {content: ""; width: 4.2vw; height: 4.2vw; position: absolute; right: 2vw; top: 50%; transform: translateY(-50%); background: url("../img/common/ic-arrow-01.svg") center center / contain no-repeat;}
.footer__links__btn li:nth-child(2) a p {color: #fff; margin: 0; font-size: clamp(1.4rem, 4vw , 3.2rem); line-height: 1.1; }
.footer__links__btn li:nth-child(2) a p span {font-size: clamp(1.2rem, 3.2vw, 2.3rem);}

.copy {font-size: clamp( 1rem , 3.2vw, 1.8rem); padding: 3vw; font-weight: 600;}

}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
module  (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* btn */
.homBtn{text-align: center; margin: 60px 23%;}
.homBtn p{position:relative; color:#fff;text-align: center; font-size: min(1.6vw, 2rem);background: #162938; padding: 15px 50px 15px 30px; }
.homBtn p::after{	position: absolute;  content: "";  border-top: solid 2px #fff;  border-right: solid 2px #fff; width: 10px; height: 10px; transform: rotate(45deg); top: 41%; right: 30px;}

.btn--black--02 {margin: 0 auto; width: min(33.3vw, 400px);}
.btn--black--02 a {display: block; background: rgba(0,0,0,0.9); color: #fff; text-align: center; padding: min(1.66vw,20px); border: 1px solid rgba(255,255,255,0.9); font-family: var(--ff-serif-01);}
.btn--black--02 a span { position: relative; }
.btn--black--02 a span::before {content: ""; width:min( 2.1vw, 26px); height: 1px; background: #fff; position: absolute; right: max(-5vw , -60px); top: 50%;}
.btn--black--02 a span::after {content: ""; width:min(0.83vw, 10px); height: 1px; background: #fff; position: absolute; right: max(-5vw , -60px); top: 50%; transform-origin: right bottom; transform: rotate(45deg);}

/* copy */
.readcopy {font-size: min(1.83vw , 2.2rem); font-family: var(--ff-serif-01); font-weight: 500;}
.readcopy span {font-size: min(1.08vw, 1.3rem); font-family: var(--ff-sans-01);}

@media (max-width: 767px) { /* sp */
.btn--black--02 {width:100%;}
.btn--black--02 a { padding: 4vw; }
.btn--black--02 a span::before {width: 5vw; right: -12vw; }
.btn--black--02 a span::after {width: 2vw; right: -12vw;}

.readcopy  {font-size: 4.2vw}
.readcopy span {font-size: 3.6vw; }
}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
home (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* home common */
.homBtnMore { width: 100%; max-width: 235px; margin: 0; font-family: var(--ff-serif-01);}
.homBtnMore a { display: block; text-align: left; position: relative;}
.homBtnMore a::before {content: ""; width: 100%; height: 1px; background: #333; position: absolute; left: 0; bottom: 0;}
.homBtnMore a::after {content: ""; width: min(1vw, 12px); height: 1px; background: #333; position: absolute; right: 0; bottom: 0; transform-origin: right bottom; transform:rotate(40deg);}
.homBtnMore.fc-wh a {color: #fff;}
.homBtnMore.fc-wh a::before, .homBtnMore.fc-wh a::after {background: #fff;}
.homInner{width: 90%; max-width: 1200px; margin: 0 auto;}

.homHeading {position: relative; opacity: 0; transform: translateY(60%);}
.homHeading.is_visible{animation:slideUp  ease-in-out 0.5s forwards , fadeIn 0.4s ease 0.3s forwards; }

.homHeading h2 {font-family: var(--ff-serif-01); font-size: min(6.25vw, 7.5rem); line-height: 1;  position: relative;}
.homHeading h2::before {content: ""; width: 60%; height: 1px; background: #000; position: absolute; right: 0; bottom: min(0.83vw, 10px);}
.homHeading h2 span {display: inline-block; font-style: normal; background: #fff; position:relative; z-index: 1; padding-right: min(1.25vw, 15px);  }
.homHeading p {margin: 0; font-size: min(1.9vw, 2.3rem); font-weight: 600;}

@keyframes fadeIn{
	0% {opacity: 0;	}
	100% {opacity: 1;}
}
@keyframes slideUp{
	0% {transform:translateY(60%);	}
	100% {transform:translateY(0);}
}

.homPost__content {margin-bottom: min( 5vw, 60px);}
.homPost__content .homHeading { padding: min(2.9vw, 35px) 0; }
.homPost__content .homPost__link { border-left: 1px solid #333;}
.homPost__content .homPost__link { font-size: min(1.08vw, 1.3rem); padding: min(2.9vw, 35px) 0; }
.homPost__content .homPost__link ul {margin: 0;}
.homPost__content .homPost__link ul li {margin-bottom: min(1vw, 12px); position: relative; padding-left: min(15.8vw, 190px);}
.homPost__content .homPost__link ul li span {position: absolute; left: 0;}
.homPost__content .homPost__link ul li:last-child {margin-bottom: 0;}

@media (max-width: 767px) { /* sp */
	.homBtnMore a::after {width: 3vw; }

	.homHeading h2 {font-size: min(8vw, 7.5rem); }
	.homHeading h2::before { bottom: min(2vw, 10px);}
	.homHeading h2 span {padding-right:3vw;  }
	.homHeading p { font-size: min(4.2vw, 2.3rem); }

	.homPost__content {margin-bottom: 5vw;}
	.homPost__content .homHeading {width: 100%; padding: 0; }
	.homPost__content .homPost__link { border-left: none;}
	.homPost__content .homPost__link {width: 100%; font-size: min(4vw, 1.6rem); padding: 7vw 0; }
	.homPost__content .homPost__link ul li {margin-bottom: 2vw; padding-left: 0;}
	.homPost__content .homPost__link ul li span {position: relative; left: inherit; display: block;}
}

/* visual */
#mainVisual {position: relative; width: 100%;  height: min( 60vw, 775px);}
.homSlider {width: 100%; height: min( 60vw, 775px);}
#mainVisual .slick-slide{margin: 0; height: min( 60vw, 775px);  }
.homSliderImg {width: 100%; overflow: hidden;}
.homSliderImg img {object-fit: cover; width: 100%; height: 100%; object-position: center center; }
.homSliderImg img.sp {display: none;}
.homSliderImg img.pc {display: block;}

.mainVis__text {position: absolute; bottom: min(3.75vw , 45px); background: rgba(0,0,0,0.85); color: #fff; font-family: var(--ff-serif-01); padding: min( 0.25vw, 3px); box-shadow: 0 0 5px 0 rgba(255,255,255,0.9);}
.mainVis__text__inner {border: 1px solid rgba(216,173,53,0.9);   }
.mainVis__text__inner a {color: #fff; padding: min(1.66vw ,20px) min(2.5vw, 30px) ; display: block; margin: 0 auto; max-width: min( 30vw, 365px);}
.mainVis__text--01 {left: 0;}
.mainVis__text--02{right: 0;}
.mainVis__text p {margin: 0; line-height: 1.4; font-size: min(1.25vw, 1.5rem); }
.mainVis__text h2 {font-size: min( 2.08vw , 2.5rem); line-height: 1.2; margin-bottom: min(0.66vw , 8px);}
.mainVis__text h2 span {margin-left: min(1.66vw, 20px); font-size: min(1.5vw, 1.8rem);}
.mainVis__text .mainVis__text__link {font-size: min(1.3vw, 1.6rem); margin-top: min(0.83vw, 10px);}
.mainVis__text .mainVis__text__link span {text-decoration: underline; padding-right: min(1.25vw, 15px); position: relative; }
.mainVis__text .mainVis__text__link span::before {content: ""; width: min(0.66vw, 8px); height: min(0.66vw, 8px); border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(45deg);}
.mainVis__logo {margin: 0; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);width: min( 26.6vw , 320px);}
.mainVis__badge {position: absolute; width: min( 24vw , 290px); right: min( 2.5vw , 30px); top: 0;}

@media (max-width: 767px) { /* sp */
	#mainVisual {height: auto; aspect-ratio: 150/227;}
	#mainVisual .slick-slide{height: auto; aspect-ratio: 150/227;}
	.homSlider {height: auto; aspect-ratio: 150/227;}
	.homSliderImg img.sp {display: block;}
	.homSliderImg img.pc {display: none;}
	.mainVis__text { padding: 0.6vw;}
	.mainVis__text__inner { width: 52vw;}
	.mainVis__text__inner a {padding: 3vw ;max-width: inherit}
	.mainVis__text--01 {bottom: inherit; top: 3vw; left: 3vw; }
	.mainVis__text--02{right: 3vw; bottom: 3vw;}
	.mainVis__text p {font-size: clamp(0.8rem, 2.5vw, 1.2rem); }
	.mainVis__text p br {display: none;}
	.mainVis__text h2 {font-size: clamp(1.2rem, 2.9vw , 2rem); margin-bottom:1.2vw;}
	.mainVis__text h2 span {margin-left: 2vw; font-size:  clamp(1.2rem, 3.2vw, 1.5rem);}
	.mainVis__text .mainVis__text__link {font-size:  clamp(0.8rem, 2.5vw, 1.2rem);}
	.mainVis__text .mainVis__text__link span {padding-right: 3vw; }
	.mainVis__text .mainVis__text__link span::before {width: 1.6vw; height: 1.6vw; }
	.mainVis__logo {width: 40vw; transform: translate(-50%, -70%);}
	.mainVis__badge { width: 35vw; left: 1.5vw; top: inherit; bottom: 1vw;}
}

/* homCourse */
#homCourse {color: #fff;  text-align: center; padding: min(9.17vw, 110px) 0 min( 8.3vw, 100px); background: url("../img/home/bg-homCourse-01.jpg") center center / cover no-repeat;}
#homCourse h2 {font-family: var(--ff-serif-01); font-size: min(2.75vw, 3.3rem); margin-bottom: min(3.75vw, 45px);}
#homCourse h2 span {font-size: min(3.66vw	, 4.4rem);}
#homCourse .read {line-height: 3; margin-bottom: min( 5.8vw, 70px);}
#homCourse .homBtnMore {margin: 0 auto;}

@media (max-width: 767px) { /* sp */
	#homCourse { padding: 15vw 0; }
	#homCourse h2 {font-size: min(5.8vw, 3.3rem); margin-bottom: 6vw; line-height: 1.5;}
	#homCourse h2 span {font-size: min(7vw	, 4.4rem);}
	#homCourse .read {line-height: 2; margin-bottom:10vw; text-align: left;}
}

/* homLink */
#homeLink {}
.homLink__cont {width: 25%; padding: min(9vw, 110px) 0 ;  display: flex; flex-direction: column; background-size: cover; background-position: center center; background-repeat: no-repeat;}
.homLink__cont__text {width: 82%; margin: 0 auto; background: rgba(255,255,255,0.8); padding: min( 3.3vw, 40px) 10% min( 2.5vw, 30px);  flex-grow: 1; display: flex; flex-direction: column;}
.homLink__cont__text h2 {font-family: var(--ff-serif-01); font-size: min(3vw, 5.5rem); line-height: 1.5; margin-bottom: min( 2.5vw, 30px);}
.homLink__cont__text h2 span { font-size: min(1.9vw, 2.3rem); display: block; font-weight: 500; }
.homLink__cont__text .homLink__read {font-size: min( 1.15vw, 1.5rem);  flex-grow: 1; margin-bottom: min(2.9vw, 35px);}
.homLink__course {background-image:url("../img/home/bg-homLink-course.jpg"); }
.homLink__price  {background-image:url("../img/home/bg-homLink-price.jpg"); }
.homLink__facility  {background-image:url("../img/home/bg-homLink-facility.jpg"); }
.homLink__restaurant  {background-image:url("../img/home/bg-homLink-restaurant.jpg"); }

@media (max-width: 767px) { /* sp */
	.homLink__cont {width: 100%; padding: 8vw 0 ; }
	.homLink__cont__text {width: 82%; padding: 6vw;}
	.homLink__cont__text h2 { font-size: min(8.4vw, 6.6rem); margin-bottom: 4vw;}
	.homLink__cont__text h2 span { font-size: min(4.2vw, 2.3rem); }
	.homLink__cont__text .homLink__read {font-size: min( 3.8vw, 1.5rem); margin-bottom: 4vw;}
}

/* homPlan */
#homPlan {padding: min(12.5vw, 150px) 0; overflow: hidden;}
#homPlan .homHeading {text-align: center; margin-bottom: min(5vw, 60px);}
#homPlan .homHeading h2::before {content: none;}
.homPlan__wrap {text-align: center; margin: min(4vw, 50px) auto min(6.67vw , 80px);}
.homPlan__list {font-size: min(1.25vw, 1.5rem); display: inline-block; max-width: 860px; text-align: left;}
.homPlan__list  li {margin:  min(0.83vw, 10px) 0;}
.homPlan__list a {display: block; position: relative; padding-right: min(21.6vw, 260px); padding-left:10px;}
.homPlan__list a.byoubuzan {    background: #000088; color: white;}
.homPlan__list a.kougen {    background: #006600; color: white;}
.homPlan__list a::before {content: ""; width: min(0.5vw, 6px); height: min(0.5vw, 6px); border-top: 1px solid #000; border-right: 1px solid #000; position: absolute; right: 10px; top: 50%; transform: translateY(-50%) rotate(45deg);}
.homPlan__list a.byoubuzan::before , .homPlan__list a.kougen::before {content: ""; width: min(0.5vw, 6px); height: min(0.5vw, 6px); border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; right: 10px; top: 50%; transform: translateY(-50%) rotate(45deg);}
.homPlan__list a p {margin: 0;}
.homPlan__list a .homPlan__price {position: absolute; right: min( 1.66vw, 20px);  top: 50%; transform: translateY(-50%);}
.homPlan__list a .homPlan__price span {color:  #ad1212;}
.homPlan__list a.byoubuzan .homPlan__price span ,.homPlan__list a.kougen .homPlan__price span {color: /*#ad1212*/ #fff;}
.homBtnMore {float: right;}

@media (max-width: 767px) { /* sp */
	#homPlan {padding: 15vw 0;}
	#homPlan .homHeading { margin-bottom: 8vw;}
	.homPlan__wrap { margin: 8vw auto;}
	.homPlan__list {font-size: 3.8vw; display: block; max-width: inherit; }
	.homPlan__list  li {margin: 2.5vw 0; padding: 2.5vw 0; border-bottom: 1px dotted #000;}
	.homPlan__list a {padding-right: 4vw;}
	.homPlan__list a::before { width: 1.2vw; height: 1.2vw; }
	.homPlan__list a .homPlan__price {position: relative; right:inherit;  top: inherit; transform: none;}
	.homBtnMore {float: none; margin: 0 auto;}
}

/* homNews */
#homNews {background: #e8e8e8; padding: min(12.5vw, 150px) 0;}
#homNews .homPost__content .homHeading {width: 29%;}
#homNews .homPost__content .homPost__link {width: 71%; padding-left: 7%; }
#homNews .homHeading h2 span {background: none;}
#homNews .homHeading h2::before {content: none;}
#homNews .homInner {overflow: hidden;}
#homNews .homBtnMore {float: right; }

@media (max-width: 767px) { /* sp */
	#homNews {padding: 15vw 0;}
	#homNews .homPost__content .homHeading {width: 100%;}
	#homNews .homPost__content .homPost__link {width: 100%; padding: 0; }
	#homNews .homBtnMore {float: none; margin: 0 auto; }
}

/* homStreaming */
#homStreaming {padding: min(12.5vw, 150px) 0; }
#homStreaming .homHeading {text-align: center; margin-bottom: min(5vw, 60px);}
#homStreaming .homHeading h2::before {content: none;}
#homStreaming .homMovie__list {margin: min(7.5vw , 90px) auto 0;}

@media (max-width: 767px) { /* sp */

}


/* homPlay9 */
#homPlay9 {padding: min(12.5vw, 150px) 0; background: #f0f0f0; }
#homPlay9 .homHeading h2 span {background: #f0f0f0; }
#homPlay9 .homHeading h2 em {font-size: min(8vw, 9.7rem); background: #f0f0f0; font-style: normal; position:relative; z-index: 1;}
#homPlay9 .homHeading {margin-bottom: min(4.17vw, 50px);}
.homPlay__content {flex-direction: row-reverse;}
.homPlay__cont__text {width: 32.5%; overflow: hidden; position: relative;}
.homPlay__cont__img {width: 62%; position: relative; min-height: min(36vw, 500px);}
.homPlay__cont__text h3 {font-family: var(--ff-serif-01);  font-size: min(1.83vw, 2.2rem); margin-bottom: min( 3.3vw, 40px); font-weight: 500;}
.homPlay__cont__text .read {font-size: min(1vw, 1.3rem); }
.homPlay__cont__text .homBtnMore { position: absolute; bottom: 0; right: 0; /*float: right; margin-top: 7.2vw;*/}
.homPlay__cont__img p {margin: 0; position: absolute; width: min( 26vw, 360px);}
.homPlay__cont__img .homPlay__img--01 {left:0; top: 0; }
.homPlay__cont__img .homPlay__img--02 {right:0; top: 0; }
.homPlay__cont__img .homPlay__img--03 {left:0; bottom: 0; }
.homPlay__cont__img .homPlay__img--04 {right:0; bottom: 0; }

@media (min-width: 1260px) 
{
.homPlay__cont__text .homBtnMore {float: right; margin-top:204px; }
}

@media (max-width: 767px) { /* sp */
	#homPlay9 {padding: 14vw 0 10vw;}
	#homPlay9 .homHeading h2 em {font-size: min(11vw, 9.7rem); }
	#homPlay9 .homHeading {margin-bottom: 10vw;}
	.homPlay__content {flex-direction: column;}
	.homPlay__cont__text {width: 100%; margin-bottom: 1vw; }
	.homPlay__cont__img {width: 100%; /*min-height: inherit;*/}
	.homPlay__cont__text h3 {font-size: min(5vw, 2.2rem); margin-bottom: 8vw; }
	.homPlay__cont__text .read {font-size: min(4vw, 1.5rem); }
	.homPlay__cont__text .homBtnMore {float: none; margin-top: 6vw; position: static;}
	.homPlay__cont__img p { /*position: relative;*/ width:50%;    height: 6vw;	}
	.homPlay__BtnMore {margin-top: 30vw;}
	/*
	.homPlay__cont__img .homPlay__img--01 {width: 80vw;}
	.homPlay__cont__img .homPlay__img--02 {width: 70vw; float: right; margin-top: 10vw;}
	*/
}

/* homInfo */
#homInfo {padding: min(12.5vw , 150px) 0;}

@media (max-width: 767px) { /* sp */
	#homInfo {padding: 15vw 0;}
}

/* homRecommended */
#homRecommended {}
#homRecommended .homHeading {text-align: center; margin-bottom: min(5vw, 60px);}
#homRecommended .homHeading h2::before {content: none;}
#homRecommended .slick-slide {margin: 0 min(1.66vw, 20px); opacity: 0.5; width: min( 45.8vw, 550px);}
#homRecommended .slick-slide.slick-current {opacity: 1;}

@media (max-width: 767px) { /* sp */
	#homRecommended {margin-bottom: 20vw;}
	#homRecommended .homHeading {margin-bottom: 5vw;}
	#homRecommended .slick-slide {margin: 0 2vw; width: 70vw;}
}

/* homWeather / homCalendar */
#homWeather, #homCalendar  {margin-top: min(12.5vw, 150px);}
#homWeather .homHeading, #homCalendar .homHeading {margin-bottom: min(3.3vw, 40px);}

@media (max-width: 767px) { /* sp */
	#homWeather, #homCalendar  {margin-top: 10vw;}
	#homWeather .homHeading, #homCalendar .homHeading {margin-bottom: 5vw;}
}

/* homEvent */
#homEvent {background: url("../img/home/bg-event-01.jpg") center center /cover no-repeat; padding: min(10.8vw, 130px) 0 min(7.5vw, 90px);}
#homEvent .homPost__content {background: rgba(255, 255, 255, 0.7); padding: min( 4.58vw, 55px) min( 7.5vw, 90px); }
#homEvent .homPost__content .homHeading {width: 35%;}
#homEvent .homPost__content .homPost__link {width: 65%; padding-left: 10%;}
#homEvent .homHeading h2 span {background: none;}
#homEvent .homHeading h2::before {content: none;}
#homEvent .homPost__content {overflow: hidden;}
#homEvent .homBtnMore {float: right; margin: min(2.5vw, 30px) 0 0;}

@media (max-width: 767px) { /* sp */
	#homEvent {padding: 15vw 0 10vw;}
	#homEvent .homPost__content {padding: 10vw  5vw; }
	#homEvent .homPost__content .homHeading {width: 100%;}
	#homEvent .homPost__content .homPost__link {width: 100%; padding-left: 0; }
	#homEvent .homBtnMore {float: none; margin: 0 auto;}
}

/* homMovie */
#homMovie {padding: min(10.4vw, 125px) 0 min(12.5vw, 150px);}
#homMovie .homHeading  {margin-bottom: min(7.5vw , 90px);}
#homMovie .homInner {overflow: hidden;}
#homMovie .homBtnMore {float: right; }
.homMovie__list {margin-bottom: min(7.5vw , 90px);}
.homMovie__cont {width: 48%; text-align: center; }
.homMovie__cont .homMovie__movie {margin-bottom: min(1.16vw, 20px);  aspect-ratio: 16/9;}
.homMovie__cont .homMovie__movie iframe {width: 100%; height: 100%;}

@media (max-width: 767px) { /* sp */
	#homMovie {padding: 15vw 0 10vw;}
	#homMovie .homHeading  {margin-bottom: 8vw;}
	#homMovie .homBtnMore {float: none; margin: 0 auto;}
	.homMovie__list {margin-bottom:6vw}
	.homMovie__cont {width: 100%; margin-bottom: 6vw;}
	.homMovie__cont .homMovie__movie {margin-bottom: 1vw; }
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
underlayer common (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* visual*/
#ul-visual {position: relative; width: 100%;  height: min( 60vw, 775px);  padding-top: min(7vw, 120px); background: url("../img/page/common/bg-visual-01.jpg") center bottom / 100% auto   no-repeat;}
#ul-visual .ul-visual__inner {width: 90%; max-width: 1635px; margin: 0 auto;}
#ul-visual .ul-visual__inner h1 {font-family: var(--ff-serif-01); font-weight: 600; line-height: 1; margin-bottom: min(3.3vw, 40px); font-size: min(1.83vw , 2.2rem);} 
#ul-visual .ul-visual__inner h1 span {font-size: min(3.75vw, 4.5rem); margin-right: min(2.5vw, 30px);}
#ul-visual .ul-visual__inner .ul-visual__img { margin: 0; width: 100%; height: min( 42vw, 488px); overflow: hidden; }
#ul-visual .ul-visual__inner .ul-visual__img img {width: 100%; height: 100%; object-fit: cover; }

/* containe / layout   */
#mainContent {padding: min(10vw, 120px) 0 min(15vw, 180px);}
.wrapContent {margin-bottom: min( 11.6vw, 140px);}
.wrapContent:last-child {margin-bottom: 0;}
.content { margin-bottom: min(9.17vw, 110px);}
.content:last-child {margin-bottom: 0;}

.bgGray {background: #eee;}
.bgGray .inner {padding: min( 8.3vw, 100px) 0 0;}
.bgGray .inner:last-child {padding-bottom: min(15vw, 180px);}

/* page-title */
.ul-title {text-align: center; width: 90%; margin: 0 auto min(6.67vw, 80px); }
.ul-title h2 {position: relative; font-size: min(6.25vw, 7.5rem); font-family: var(--ff-serif-01); line-height: 1; margin-bottom: min(0.83vw, 10px); font-weight: 600;}
.ul-title h2::before {content: ""; width:100%; max-width: 1111px; height: 1px; background: #000; position: absolute; left: 50%; bottom: min(0.83vw , 10px); transform: translateX(-50%);}
.ul-title p {font-size: min(1.92vw , 2.3rem); margin: 0; font-weight: 600;}

/* heading */
.hA {background: #333; color: #fff; text-align: center; padding: min(1.25vw, 15px) ; margin: 0 max( -1.88vw, -22.5px) min( 3.3vw, 40px);font-family: var(--ff-serif-01);  font-weight: 600; font-size: min(1.92vw , 2.3rem);}
.hB {text-align: center; font-size: min(1.92vw , 2.3rem ); font-family: var(--ff-serif-01); margin: 0 0 min( 3.3vw, 40px); font-weight: 600; }
.hC {font-weight: 600; margin: 0 0 min( 1.66vw, 20px);}
.hD {font-weight: 600; margin: 0 0 min(5vw, 60px) 0; line-height: 1; text-align: center; font-family: var(--ff-serif-01); font-size: min(5vw, 6rem); position: relative; z-index: 1;}
.hD span {display: block; font-size: min(1.92vw , 2.3rem); margin-top: min(1.25vw, 15px); font-family: var(--ff-sans-01);}
.hD.hD--mb0 { margin: 0 0 max(-0.83vw, -10px) 0; }


.hW {background: none; border: #000 1px solid; text-align: center; padding: min(1vw, 10px) ; margin: 0 max( -1.88vw, -22.5px) min( 3.3vw, 40px);font-family: var(--ff-serif-01);  font-weight: 600; font-size: 2.0rem;}


/* color */
.fc-blue {color: #0072bf;}
.fc-red {color: #d20023;}

/* ul */
.listDot li, .listData dd {padding-left: min(1.3vw, 1.6rem);  text-indent: max(-1.3vw, -1.6rem); position: relative;}
.listDot li::before {content: "・"; }
.listData dd::before {content: "◇ ";}
.listData dt {font-weight: 600;position: relative; }
.listData dt::before {content: "●";}
.listNum {padding-left: min(1.3vw, 1.6rem);}
.listNum li {list-style: decimal;}
.listNote {font-size: min( 1.25vw, 1.5rem);}
.listNote li {padding-left: min( 1.25vw, 1.5rem); text-indent: max(-1.25vw, -1.5rem);}

/* tab */
.tabBtn {font-size: 0; text-align: center; margin: 0 auto;}
.tabBtn li {font-size: min( 2.5vw, 3rem); font-family: var(--ff-serif-01); width: 48%; max-width: 520px; background: #e3e3e3; position: relative; display: inline-block; padding: min(1.25vw, 15px); cursor: pointer; }
.tabBtn li.active {background: #062a4f; color: #fff; cursor: default;}
.tabBtn li.active::before {content: ""; width: min(1.66vw, 20px); height: min(1.66vw, 20px); background: #062a4f; position: absolute; left: 50%; bottom: 0; transform: translate(-50%, 50%) rotate(45deg);}
.tabBtn li span {position: relative; padding-left: min(3.3vw, 40px); }
.tabBtn li span::before {content: "";  position: absolute; left: 0; top: 50%; width: min(1.66vw, 20px); height: min(1.66vw, 20px);  border: 1px solid #333; border-radius: 50%; transform: translate(0 , -50%);}
.tabBtn li span::after {content: ""; position: absolute; left: 0; top: 50%; width: min(0.5vw, 6px); height: min(0.5vw, 6px);  border-right: 1px solid #333;  border-bottom: 1px solid #333;transform: translate(95% , -50%) rotate(-45deg);}
.tabBtn li.active span::before, .tabBtn li.active span::after  {border-color: #fff;}
.tabBtn li.active span::after {transform: translate(115% , -50%) rotate(45deg);}
.tab--contents {display: none;}
.tab--contents.active {display: block;}

/* table */
table {width: 100%; border: 1px solid #000; background: #fff;}
table th, table td {border: 1px solid #000; text-align: center; padding: min( 1.25vw, 15px) min( 0.83vw, 10px); line-height: 1.4;}

.tbl--price { margin: min( 5vw, 60px) 0  min( 8.3vw, 100px);}
.tbl--price:last-child {margin-bottom: 0;}
.tbl--price th {background: #c9c9c9;}
.tbl--price th:nth-child(2) {background: #ecebe3;}
.tbl--price td span {font-weight: 600; margin-left: min(0.83vw, 10px);}
.tbl--price .heading th {font-size: min( 1.66vw, 2rem); background: #b2c0cc;}
.tbl--price .heading th:first-child {background: #2a4360; color: #fff;}
.tbl--price td > div.price_value {
    display: flex;
    justify-content: center;
    align-items: center;
}

.tbl--price td > div.price_value span.price {
    font-weight:1;
}
.tbl--price td > div.price_value span.tax_price,
.tblA td > div.price_value span.tax_price
 {
    font-weight:1;
    font-size:1.4rem;
}
.btm_ext
{
	margin-top: 20px;
	font-size: 1.5rem;
}

.price_play9_ext
{
	margin: 50px auto ;
	text-align: center;
}
.price_play9_ext div.play_num  
{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.price_play9_ext div.play_num > span
{
    margin: 10px;
	font-weight: 600;
    padding: 5px 20px;
    background: #193b6b;
    color: white;
    border-radius: 30px;
}
.price_play9_ext div > span.order_text
{
   font-size: 2.5rem;
}

.price_guidance
{
	display: flex;
    flex-wrap: wrap;
	justify-content: space-between;

}
.price_guidance li
{
	/*width: 50%;*/
}

.tbl--hole {font-size: min(1.3vw, 1.6rem);}
.tbl--hole .tbl--hole__th--01 {background: #d6d2b5;}
.tbl--hole .tbl--hole__th--02 {background: #bbd3cb;}
.tbl--hole .tbl--hole__th--03 {background: #d7e1e4;}

.tblA--title {display: none;}
.tblA {margin: min( 3.3vw, 40px) auto 0;}
.tblA th {background: #b2c0cc;}
.tblA th.tbl--heading {background: #2a4360; color: #fff;}

.tblB th {background: #e5e5e5; font-weight: normal; width: 20%;}
.tblB td {text-align: left; padding-left: min( 3.3vw, 40px) ; }

.tblC {border: none;}
.tblC th, .tblC td {border: none; text-align: left; vertical-align: top; line-height: 2;  padding: min(2vw, 25px) 0; }
.tblC tr {border-bottom: 1px dotted #ccc; }
.tblC th {width: 30%; font-weight: normal;}

.tblD {font-size: min(1.3vw, 1.6rem);}
.tblD th {background: #b6c6d6;}

.tbl__none__border{width :auto; border:0px ; background:none; margin-bottom: 0px;}
.tbl__none__border th , .tbl__none__border td {width :auto; padding: 2px 10px; border:0px; text-align: left;background:none;}
.tbl__none__border th {padding-left: 0px;}

@media (max-width: 767px) { /* sp */
.tblD {font-size: 3.6vw;}
}

/* link */
a.linkPDF {position: relative; text-decoration: underline; font-size: min(1.3vw, 1.6rem); text-indent:  min(2.5vw ,30px); display: inline-block;}
a.linkPDF::before {content: ""; background: url("../img/page/common/ic-pdf-01.svg") center center / contain no-repeat; width: min(1.92vw , 23px); height: min(2.17vw , 26px); position: absolute; left: 0;}

@media (max-width: 767px) { /* sp */
/* visual*/
#ul-visual {height: 60vw;  padding-top: 6vw; }
#ul-visual .ul-visual__inner h1 {margin-bottom: 4vw;  font-size: 3.2vw; line-height: 1.2;} 
#ul-visual .ul-visual__inner h1 span {font-size: 6vw; margin-right: 0; display: block;}
#ul-visual .ul-visual__inner .ul-visual__img {height:34vw; }

/* containe / layout   */
#mainContent {padding:10vw 0 15vw;}
.wrapContent {margin-bottom: 15vw;}
.content { margin-bottom: 6vw;}
.bgGray .inner {padding: 10vw 0 ;}
.bgGray .inner:last-child {padding-bottom:15vw;}

/* page-title */
.ul-title {margin: 0 auto 5vw; }
.ul-title h2 {font-size: clamp(2rem , 9.6vw, 7.2rem); margin-bottom:2vw; }
.ul-title h2::before {max-width: inherit; bottom: 1vw; }
.ul-title p {font-size: clamp(1.6rem, 4.5vw, 2.4rem); }

/* heading */
.hA { padding: 2.5vw ; margin: 0 0 6vw;  font-size: 4.6vw;}
.hB {font-size: 4.5vw;  margin: 0 0 5vw;}
.hC {margin: 0 0 4vw;}
.hD {font-size: 6vw; margin: 0 0 6vw 0; }
.hD span {font-size: 3.6vw; margin-top: 3vw;}
.hD.hD--mb0 { margin: 0 0 -2vw 0; }

/* tab */
.tabBtn li {font-size: min( 4.2vw, 3rem); padding: 3vw;}
.tabBtn li.active::before { width: 4vw; height: 4vw;}
.tabBtn li span { padding-left: 5vw; }
.tabBtn li span::before {width: 4vw; height: 4vw; }
.tabBtn li span::after {width: 1.2vw; height: 1.2vw;}

/* ul */
.listDot li, .listData dd {padding-left:  min( 3.8vw, 1.5rem);  text-indent:  max(-3.8vw, -1.5rem); }
.listNum {padding-left:  4.5vw;}
.listNote {font-size: min( 3.8vw, 1.5rem);}
.listNote li {padding-left: min( 3.8vw, 1.5rem); text-indent: max(-3.8vw, -1.5rem); }

/* table */
.table-slider {overflow: scroll; width: 100%;  white-space: nowrap;}
table th, table td {padding: 10px;}

.tbl--price { margin: 12vw 0  8vw;}
.tbl--price td span {margin-left: 2vw;}
.tbl--price .heading th {font-size: min( 4vw, 2rem); }


.price_play9_ext div.play_num  
{
	flex-direction: column;

}

.price_play9_ext div > span.order_text
{
   font-size: inherit;
}

.tbl--hole {font-size: min(4vw, 1.6rem);}

.tblA {margin: 17vw auto 0; position: relative; border: none; }
.tblA tbody {display: flex; display: -webkit-flex; justify-content: space-between;}
.tblA tr {width: 50%; display: block; border: none; }
.tblA th, .tblA td {display: block; border: none; border-bottom: 1px solid #000;}
.tblA th.tbl--heading {display: block; position: absolute; left: 0; top: 0; width: 100%; padding: 3vw; transform: translateY(-100%); }

.tblB {border: none; border-top: 1px solid #000; margin: 0;}
.tblB th {border-bottom: none; border-top: none;}
.tblB th, .tblB td {display: block; width: 100%;}
.tblB td {padding-left: 10px; }

.tblC th {padding:  4vw 0 2vw 0; font-weight: 600;}
.tblC td {padding: 0 0 4vw 0;}
.tblC tr {border-bottom: 1px dotted #ccc; }
.tblC th, .tblC td {display: block; width: 100%;}


/* link */
a.linkPDF {font-size: 3.6vw; text-indent:  5.5vw;}
a.linkPDF::before { width: 4.6vw; height: 5.2vw; }

.tbl__none__border {width: 66vw;}
.tbl__none__border td {display: inline-block; max-width: 25%; padding-left: 0px; padding-right: 20px;}

}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
concept (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.concept__catch{text-align: center; margin-bottom: min(5vw, 60px); font-family: var(--ff-serif-01); font-size: min( 2.75vw, 3.3rem); font-weight: 500; letter-spacing: 0.2rem;}
.concept__catch span {font-size:min(3.67vw, 4.4rem);}
.concept__read p {text-align: center; line-height: 2.4;}
.concept__read p:last-child{margin-bottom: 0;}
.concept__image {display: flex;justify-content: space-between; margin-bottom: min(5vw, 60px);}
.concept__image > img {width:49%;}

@media (max-width: 767px) { /* sp */
	.concept__catch {font-size: min(5.8vw, 3.3rem); margin-bottom: 6vw; line-height: 1.5;}
	.concept__catch span {font-size: min(7vw	, 4.4rem);}
	.concept__read  p {text-align: left; line-height: 2;}
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
price (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#price #mainContent {padding-bottom: 0;}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
course (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#kougen #mainContent, #byoubuyama #mainContent, #facility #mainContent  {padding-bottom: 0;}
.inner--course {max-width: 1110px !important; }

.course__photo__gallery {margin-top: 80px;}
.course__photo__gallery h2{ line-height: 2.5;  margin-bottom: 40px; }
.course__photo__gallery ul{display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-evenly;}
.course__photo__gallery ul li{width: 24%;}
.course__photo__gallery ul li:nth-of-type(n+5){	margin-top:min(1vw , 10px);}

.course__info {font-family: var(--ff-serif-01); text-align: center;}
.courseTitle {display: flex; display: -webkit-flex; justify-content: center; align-items: center; margin-bottom: min( 3.75vw, 45px);}
.courseTitle__course {text-align: center; font-size: min(4.17vw, 5rem); line-height: 1.2; font-weight: 500; margin: 0 min(1.16vw, 20px);}
.courseTitle__course p {margin: 0; font-size: min( 2.1vw, 2.6rem);}
.courseTitle__hole {width: min(10.8vw, 130px); height: min(10.8vw, 130px); border: 1px solid #000; border-radius: 50%; display: flex; display: -webkit-flex; justify-content: center; align-items: center;  margin: 0 min(1.16vw, 20px);}
.courseTitle__hole p {margin: 0; line-height: 1; font-size: min(4.17vw, 5rem);}
.courseTitle__hole p span {font-size: min( 2.5vw, 3rem);}
.course__feature {font-size: 0; text-align: center; margin-bottom: min(7vw, 85px);}
.course__feature li {display: inline-block; margin:  0 min(1vw, 14px); font-size: min(1.83vw, 2.2rem); position: relative; font-weight: 500;}
.course__feature li::before {content: "■";}
.course__Img {display: flex; display: -webkit-flex; justify-content: space-between; margin: 0;}
.course__Img li {width: 47%;}
.course__map {margin: min(7.5vw, 90px) auto min(8.4vw , 100px);}
.course__map img {width: auto; max-width: 100%;}
.hole__info h3 {font-weight: 600; font-family: var(--ff-serif-01); font-size: min(3.3vw, 4rem);}

.course__hole__detail {background: #fff; padding: min(4.58vw, 55px); align-items: center; margin:min(4.58vw, 55px) auto; }
.course__hole__detail:last-of-type {margin-bottom: 0;}
.course__hole__movie {width: 45%; }
.course__hole__info {width:52%;}
.course__hole__info table {font-size: min(1.16vw, 1.4rem);}
.course__hole__info table th, .course__hole__info table td {padding: min(0.4vw, 5px)  min(0.17vw, 2px);}
.course__hole__info table td  {width: 13%;}
.course__kougen .course__hole__info table td  {width: 20%;}
.youtube_modal { display: block; position: relative; width: 100%; aspect-ratio: 16/9;}
.youtube_modal iframe, .youtube_modal a { position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.course__hole__detail h4 , .course__hole__info h4 {font-weight: 600; font-family: var(--ff-serif-01); font-size: min(2.83vw, 3.4rem);}
.course__hole__detail h4 span , .course__hole__info h4 span {font-size: min(1.3vw, 1.6rem); margin-left: min(0.83vw, 10px); font-family: var(--ff-sans-01); }
.hole__info__img {width: 32%; position: relative;}
.hole__info__text {width: 65%; font-size: min(1.16vw, 1.4rem);}
.hole__info__img::before {content: ""; position: absolute; right: 0; top: 0; background: url("../img/page/course/ic-popup-01.png") center  center /contain no-repeat; width: min(3vw, 37px); height: min(3vw, 37px);}
.hole__info__img ul ,.hole__info__img p { margin-bottom: 0;}

#tee_detail
{
	padding: 10px 20px;
	background: #000;
	color: #fff;
	margin-top: 50px;
	font-size: 2.5rem;
}

.course__play9 {flex-direction: row-reverse;}
.course__play9__text{ width: 37%; text-align: left;}
.course__play9__img {width: 57%; position: relative; min-height: min(41.6vw , 520px); /*overflow: hidden;*/}
.course__play9__heading {font-weight: 600; font-size: min(2.9vw , 3.5rem); margin-bottom: min( 3.3vw, 40px);  padding-bottom: min( 2.5vw, 30px);  border-bottom: 1px solid #000; }
.course__play9__heading  span {display: block; font-size: min(1.83vw , 2.2rem); letter-spacing: -0.1rem}
.course__play9__body h3 {font-weight: 600; font-size: min(1.66vw, 2rem); margin-bottom: min(2.5vw, 30px);}
.course__play9__body p {font-family: var(--ff-sans-01); font-size: min(1.16vw, 1.4rem); line-height: 1.8;}
.course__play9__body p:last-child {margin-bottom: 0;}
.course__play9__img p {margin: 0;   position: absolute;}

.course__play9__img--01 {left: 0; top: 0;}
.course__play9__img--02 {right: 0; top: min( 8vw, 100px);}
.course__play9__img--03 {left: 0; top: min( 17.6vw, 220px); z-index: 1;}
.course__play9__img--04 {right: 0; top: min( 25.6vw, 320px); z-index: 1; }
.course__play9__img--05 {right: -10px; top: min( 25.6vw, 470px); z-index: 2; }

.course__play9__img p > img { /*width: min( 24.4vw, 305px); */}
/*
.course__play9__img--01 img {width: min( 27.33vw, 328px); }
.course__play9__img--02 img {width: min( 27.83vw, 334px); }
*/

@media (max-width: 767px) { /* sp */
	.courseTitle {margin-bottom: 5vw;}
	.courseTitle__course {font-size: 7vw; margin: 0 2vw;}
	.courseTitle__course p {font-size: 4vw;}
	.courseTitle__hole {width: 20vw; height: 20vw; margin: 0 2vw;}
	.courseTitle__hole p { font-size:7vw;}
	.courseTitle__hole p span {font-size: 5vw;}
	.course__feature {margin-bottom: 8vw;}
	.course__feature li {margin:  0 1.5vw; font-size: 3.8vw;}
	.course__Img li {width: 49%;}
	.course__map {margin:8vw auto;}
	.course__read {text-align: left;}
	.course__read br {display: none;}
	.hole__info h3 {font-size: 5vw;}
	
	.course__hole__detail {padding: 4vw;  margin: 6vw auto; flex-direction: /*column-reverse*/column;}
	.course__hole__movie {width: 100%; margin-top: 7vw; }
	.course__hole__info {width:100%; margin: 20px 0px;}
	.course__hole__info table {font-size: clamp(1.2rem, 3.4vw , 1.6rem); display: block; position: relative; border: none; }
	.course__hole__info table tbody {display: flex; display: -webkit-flex; justify-content: center; }
	.course__hole__info table th, .course__hole__info table td {padding: 2vw 1vw; display: flex; display: -webkit-flex; justify-content: center; align-items: center;width: 100%; border: none; height: 10vw;}
	.course__kougen .course__hole__info table td  {width: auto;}

	.course__hole__info table tr {display: block; width: 33%;}
	.course__hole__info table tr:nth-child(3){ display: none;}
	.course__hole__info table tr {border-top: 1px solid #000;}
	.course__hole__info table tr:last-child {border-right: 1px solid #000;}
	.course__hole__info table tr:first-child th {background: #eee !important; }
	.course__hole__info table th {border:1px solid #000; border-right: 0; border-top: 0; }
	.course__hole__info table td {border-bottom: 1px solid #000; border-left: 1px solid #000;}
	
	.course__byoubuzan .course__hole__info table tr {display: block; width: 40%;}

	.course__photo__gallery ul li{width: 47%;}
	.course__photo__gallery ul li:nth-of-type(n+5){	margin-top:auto;}
	.course__photo__gallery ul li:nth-of-type(n+3){margin-top:min(2vw , 10px);}

	.course__hole__detail h4 , .course__hole__info h4 { font-size: 5vw; margin-bottom: 3vw;}
	.course__hole__detail h4 span ,.course__hole__info h4 span {font-size: 3.8vw; margin-left:2vw; }
	.hole__info__img {width: 70%; margin: 5vw auto;}
	.hole__info__text {width: 100%; font-size: 3.8vw;}
	.hole__info__img::before {width: 7.4vw; height:  7.4vw;}

	.course__play9 {flex-direction:column;}
	.course__play9__text{ width: 100%;  margin-bottom:10vw;}
	.course__play9__img {width: 100%; min-height: 72vw; /*overflow:hidden;*/}
	.course__play9__heading {font-size: 7vw; margin-bottom: 6vw;  padding-bottom: 4vw;     text-align: center;	}
	.course__play9__heading  span {font-size: 4.8vw; }
	.course__play9__body h3 { font-size: 5vw; margin-bottom: 5vw;}
	.course__play9__body p {font-size: 4vw; line-height: 1.6;}
	.course__play9__img p {width: 100%; }
	.course__play9__img p > img {width: 100%; }
	.course__play9__img--02 {top:12vw;}
	.course__play9__img--03 {top:31vw;}
	.course__play9__img--04 {top:43vw;}
	.course__play9__img--05 {top:48vw;}
	.course__play9__img--05 > img {width: 86px; }

	.course__byoubuzan__table{display:flex;}
	/*
	.course__play9__img--02 {margin-top: 3vw !important;}
	.course__play9__img--03 {width: auto; text-align: right; margin-top: 3vw !important;}
	.course__play9__img--01 img {width: 80vw;}
	.course__play9__img--02 img {width: 60vw;}
	.course__play9__img--03 img {width: 50vw; position: relative; right: inherit; bottom: inherit;}

	*/
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
restaurant (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.rest__info {margin-bottom: min( 5.83vw, 70px); }
.rest__info__read {text-align: center; margin-bottom: min( 5.83vw, 70px); }
.rest__info__read p {font-size: min(1.25vw, 1.75rem); }
.rest__info__menu {margin: 0 auto;  text-align: center;}
.rest__info__menu  img {width: auto; max-width: 100%;}
.rest__info__link {text-align: center; font-size: min( 1.66vw, 2rem); font-family: var( --ff-serif-01); font-weight: 500;}
.rest__info__link  a {position: relative; padding: 0 min(4.17vw , 50px) min(0.83vw, 10px) min(1.25vw , 15px); border-bottom: 1px solid #000; transition: all 0.3s ease-in-out;}
.rest__info__link  a:hover {border: none;}
.rest__info__link  a::before {content: ""; position: absolute; right: min(0.83vw, 10px); top: 50%; transform: translateY(-50%); background: url("../img/page/common/ic-search-01.svg") center center / contain no-repeat; width: min( 2.67vw, 32px); height: min( 2.67vw, 32px); margin-top: max(-0.4vw, -5px);}
.rest__info__notes {text-align: center; }
.rest__info__notes p{width: fit-content;  margin: 0px auto;	color: #fff; background-color: #000; }
.rest__info__lounge {margin-top: min( 5.83vw, 100px); }

.rest__img {margin-top: min(6.67vw , 80px);}
.rest__img li {	margin-top: min(2.5vw, 30px);    display: flex;    justify-content: space-between;    margin-bottom: min(5vw, 60px);}
.rest__img li img {	width :49%; }


.rest__topmenu{ display: flex; justify-content: space-between; }
.rest__topmenu li {max-width: 294px; }
.rest__topmenu p{ margin-bottom: 5px; }
.rest__topmenu p.menu__name{ font-size: 2.2rem; line-height:2.2rem; margin-top: 15px;}

.rest__menu{ display: flex; justify-content: space-between; margin: min( 7vw , 100px ) 0px ;}
.rest__menu:nth-child(even){ flex-direction: row-reverse;}
.rest__menu p{ margin-bottom: 0px; line-height: normal;}
.rest__menu p.menu__name{ font-size: min(2.5vw , 3rem); }

.rest__menu p.menu__notes__text
{
	margin-top: 20px;
	margin-bottom: min(10vw , 100px);
}

.rest__menu__detail {position: relative; width: 32%;}


#recommend__info { max-width: 684px; margin: 0 auto;}
#recommend__info img {}
#recommend__info ul { list-style-type: disc;  list-style-position: inside; margin: 10px; text-align: center;}
#recommend__info ul li {  }


.MenuSlider{ max-width: 684px; width: 65%; height: auto; overflow: hidden;}
.RecommendSlider{width: auto;}

.MenuSlider .slick-slide {
	width: auto;
}
.MenuSlider .slick-slide img {
	width: 100%;
	height: auto;
}
.MenuSlider .slick-next ,.MenuSlider .slick-prev 
{
    width: min(2.5vw, 66px);
    height: min(2.5vw, 66px);
}

.MenuSlider .slick-next , .MenuSlider .slick-prev 
{
	position: absolute;
	top: 45%;
	z-index: 1;
    background: #000;
    font-size: 0;
    width:  32px;
    height: 32px;
    border-radius: 50%;
}

.MenuSlider .slick-next 
{
	right: 0;
}
.MenuSlider .slick-prev 
{
	left: 0;
}
.MenuSlider .slick-next:before , .MenuSlider .slick-prev:before 
{
	content: '';
    width: 12px;
    height: 12px;
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    position: absolute;
    top: 45%;
    margin-top: -4px;
}

.MenuSlider .slick-next:before 
{
    left: 6px;
	transform: rotate(45deg);
}

.MenuSlider .slick-prev:before 
{

    right: 6px;
	transform: rotate(225deg);
}


.menu__example p, .menu__example p::after 
{
	vertical-align: middle;
}
  
.menu__example p::after 
{
	content: '';
	background-color: #888;
	height: 1px; 
    width: calc((100% - 120px));
    display: inline-block;
    margin-left: 25px;
}


.menu__example ul
{
	list-style-type: disc;list-style-position: inside;
}

.spelling { font-family: var(--ff-serif-01);  font-style: italic; color:#888888; line-height: 1.8rem;}

@media (max-width: 767px) 
{
	 /* sp */
	.rest__info {margin-bottom: 10vw; }
	.rest__info__read {text-align: left; margin-bottom: 10vw; }
	.rest__info__read p {font-size: 3.8vw; }
	.rest__info__link {font-size: 3.8vw; }
	.rest__info__link  a {padding: 0 10vw 2vw 3vw; }
	.rest__info__link  a::before { right: 2vw;  width:6.4vw; height: 6.4vw; margin-top: -1vw;}
	.rest__menu p.menu__name{ font-size: 2.5rem; }

	.rest__menu p.menu__notes__text
	{
		margin-bottom: 20px;
	}
	.menu__example 
	{
		margin-bottom: 20px;
	}

	.MenuSlider{ width: 100%; height: auto; overflow: hidden;}
	.MenuSlider img{ width: 100%;}


	.rest__topmenu{ flex-direction: column;}
	.rest__menu{ flex-direction: column; margin-bottom: 60px;}
	.rest__menu:nth-child(even){ flex-direction: column;}
	#recommend__info img {max-width: 100%;}
	#recommend__info ul li {margin-left: auto; }
	#recommend__info ul { text-align: left;}

	
	.rest__topmenu li{ max-width: none;margin-bottom: 30px;}
	.rest__topmenu .menu__name{line-height: normal;	margin-bottom: 0px; margin-top: 10px;}

	.rest__img {margin-top: 15vw;}
	.rest__img li {margin-top: 5vw;}

	.rest__menu__detail {width: auto;}

	.MenuSlider{ width: 100%; height: auto; overflow: hidden;}

}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
facility (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.fac__wrapper {padding:  min( 10vw , 120px) 0 0;}
.fac__content { padding-bottom:  min( 12.5vw , 150px);}

.fac__title {font-family: var(--ff-serif-01); font-size: min(3.3vw, 4rem); line-height: 1.5; font-weight:500; margin-bottom: min(2.5vw, 30px)}
.fac__title span {display: block; font-size: min(1.25vw, 1.5rem);}
.fac__read {font-size: min(1.25vw, 1.5rem); }
.fac__cont__img {margin-bottom: 0;}

.fac__content--01 {flex-direction: row-reverse; align-items: flex-end;}
.fac__content--01 .fac__cont__text {width: 38%; padding-right: 9%;}
.fac__content--01 .fac__cont__img {width: 56%; }
.fac__content--01  .fac__text__img {margin: min(3.3vw, 40px) auto 0;}

.fac__content--02 {margin-right: auto; margin-left: auto; width: min( 41% , 792px);}

.fac__content--03{    align-items: flex-end;}
.fac__container {position: relative;  }
.fac__container .fac__title__img { width: 57%; position: absolute; right: 0; top:0;}
.fac__container .fac__title__wrap {margin: 0 auto; width: 90%; max-width: 1300px; align-items: flex-end;}
.fac__container .fac__title__wrap .fac__title__inner {width: 35%; padding-bottom: min( 4.4vw, 50px);}
.fac__container .fac__title__wrap .fac__title__blanc {width: 60%; aspect-ratio:390/307; }

.fac__content--03 .fac__cont__text {width: 38%; padding-left: 9%;}

.fac__content--03 .fac__text__img {margin: min(3.3vw, 40px) auto 0;}

.fac__content--03 .fac__listImg {margin: min(7.5vw, 90px) auto 0; width: 90%; max-width: 1330px; position: relative;}
.fac__content--03 .fac__listImg::after{content: ""; display: block; width: 32%;}
.fac__content--03 .fac__listImg li {width: 32%; margin-bottom: 2%;}

.fac__content--04 {text-align: center;}
.fac__content--04 .fac__title {display: inline-block; text-align: left;}
.fac__listCont.fac__listCont--s {width: 90%;  max-width: 1300px; margin: min(6vw, 50px) auto 0;}
.fac__listCont__cont {width: 50%;}
.fac__listCont__read {font-size: min(1.83vw , 2.2rem);}
.fac__listCont__read span {margin-left: min(1.66vw, 20px); font-size: min(1.25vw, 1.5rem);}

.fac__content--05 {overflow: hidden;}
.fac__content--05 .flex {flex-direction: row-reverse; align-items: center;}
.fac__content--05 .fac__cont__text {width: 31%;}
.fac__content--05 .fac__cont__img {width: 63%; }
.fac__content--05 .fac__listImg {width: 85%; float: right; margin-top: min(7.5vw , 90px); flex-direction: row;}
.fac__content--05 .fac__listImg li {width: 32%;}
.fac__content--05 .fac__listImg p {text-align: center; margin: min(1.66vw, 20px) auto 0;}

@media (max-width: 767px) { /* sp */
	.fac__wrapper {padding:  10vw 0 0;}
	.fac__content { padding-bottom: 15vw; width: 90%;  margin: 0 auto;}

	.fac__title {font-size: 6vw; margin-bottom: 4vw;}
	.fac__title span { font-size: 3.8vw;}
	.fac__read {font-size: 4vw; }

	.fac__content--01 {flex-direction: column; }
	.fac__content--01 .fac__cont__text {width: 100%;  padding-right: 0; }
	.fac__content--01 .fac__cont__img {width: 100%; margin: 5vw auto 0; }
	.fac__content--01  .fac__text__img {margin: 8vw auto 0;}

	.fac__content--02 { width:90%;}

	.fac__container .fac__title__img { width: 100%; top: inherit; bottom: 0;}
	.fac__container .fac__title__wrap {width: 100%; }
	.fac__container .fac__title__wrap .fac__title__inner {width: 100%; padding-bottom: 0; margin-bottom: 4vw;}
	.fac__container .fac__title__wrap .fac__title__blanc {width: 100%;  aspect-ratio: 1096/615;}

	.fac__content--03 .fac__cont__text {width: 100%;  padding-left: 0; }

	.fac__content--03 .fac__listImg {margin: 3vw  auto 0; width: 100%; }
	.fac__content--03 .fac__text__img {margin: 8vw auto 2vw;}
	.fac__content--03 .fac__listImg::after{content: none;}
	.fac__content--03 .fac__listImg li {width: 100%; margin-bottom: 3vw;}

	.fac__content--04 .fac__title {display: block; }
	.fac__listCont.fac__listCont--s {width: 100%; margin: 3vw auto 0 ;}
	.fac__listCont__cont {width: 100%; margin-top: 3vw;}
	.fac__listCont__read {font-size: 4vw;}
	.fac__listCont__read span {margin-left: 0; font-size:3.4vw; display: block;}

	.fac__content--05 .flex {flex-direction: column; }
	.fac__content--05 .fac__cont__text {width: 100%;}
	.fac__content--05 .fac__cont__img {width: 100%; }
	.fac__content--05 .fac__listImg {width:100%; float: none; margin-top: 3vw;}
	.fac__content--05 .fac__listImg li {margin-top: 3vw; width: 100%;}
	.fac__content--05 .fac__listImg p { margin: 2vw auto 0;}

}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
rules (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#rules .listNum li {margin: min(0.83vw, 10px) 0;}
.rule__dress {margin: min( 8.3vw, 100px) auto 0; text-align: center;}
.rule__dress img {width: auto; max-width: 100%;}

@media (max-width: 767px) { /* sp */
#rules .listNum li {margin:2vw 0;}
.rule__dress {margin: 6vw auto 0; }
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
access (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.acs__content {width: 50%; display: flex; display: -webkit-flex; flex-direction: column;}
.acs__byoubuyama {border-left: 1px dotted #999;}
.acs__wrapper {flex-grow: 1; overflow: hidden; max-width:1039px;}
.acs__inner {padding-bottom: min(10vw, 120px);}
.acs__kougen .acs__inner {max-width:500px; width: 95%; padding-right: min(6.6vw , 80px); float: right;}
.acs__kougen .acs__inner_L {max-width:540px; width: 100%; padding-right: min(6.6vw , 40px); float: right;}
.acs__byoubuyama .acs__inner {max-width:500px; width: 95%; padding-left: min(6.6vw , 80px); }
.acs__byoubuyama .acs__inner_L {max-width:540px; width: 100%; padding-left: min(6.6vw , 40px); }

.acs__inner h2, .acs__inner_L h2 {text-align: center; font-family: var(--ff-serif-01); font-size: min(2.5vw, 3rem); margin-bottom: min(5vw, 60px);}
.acs__inner p {margin: 0;}
.acs__inner h3 {margin-top: min(2.5vw, 30px);}
.acs__inner p.btn--gmap {margin-top: min(0.4vw , 5px);}
.acs__inner p.btn--gmap a {display: inline-block; background: #000; color: #fff; padding: min(0.6vw, 8px) min(2.5vw , 30px);}
.acs__inner p.btn--gmap a span { position: relative; padding-right: min(1.66vw, 20px);}
.acs__inner p.btn--gmap a span::before {content: ""; width: min(1.08vw , 13px); height: min(1.08vw , 13px); background: url("../img/page/common/ic-ex-black-01.png")center center / contain no-repeat; position: absolute; right: 0; top: 50%; transform: translateY(-50%);}
.acs__inner p.acs__access {position: relative; padding-left: 3em;}
.acs__inner p.acs__access span {position: absolute; left: 0;}

.acs__gmap{width: 100%; height: min(50vw , 600px);}
.acs__gmap iframe {width: 100%; height: 100%;}

@media (min-width:768px) {
#access #mainContent {padding-bottom: 0;}
}

@media (max-width: 767px) { /* sp */
.acs__content {width: 100%;}
.acs__byoubuyama {border-top: 1px dotted #999; border-left: 0;}
.acs__wrapper {flex-grow: inherit;}
.acs__inner {padding-bottom:10vw; margin: 0 auto;}
.acs__inner_L {padding-bottom:2vw; margin: 0 auto;}
.acs__kougen .acs__inner , .acs__kougen .acs__inner_L {max-width:inherit;  width: 90%; padding-right:0; float: none; }
.acs__byoubuyama .acs__inner , .acs__byoubuyama .acs__inner_L {max-width:inherit;  width: 90%; padding-left:0; padding-top: 10vw }
.acs__inner h2 , .acs__inner_L h2{ font-size: 6vw; margin-bottom: 5vw;}
.acs__inner h3 {margin-top: 5vw;}
.acs__inner p.btn--gmap {margin-top: 1vw;}
.acs__inner p.btn--gmap a {padding: 1.6vw 6vw;}
.acs__inner p.btn--gmap a span { padding-right: 4vw}
.acs__inner p.btn--gmap a span::before {width: 2.6vw; height: 2.6vw; }
.acs__gmap{height: 60vw;}
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
history (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#history #mainContent {padding-bottom: 0;}

.his__list {margin: 0;}
.his__list li {position: relative; /*padding-left: 7em;*/}
.his__list li:first-child {margin-bottom: 10px;}
.his__list li span {position: absolute; left: 0;}
.his__list li.flex{    justify-content: flex-start;}
.his__list li.flex p{margin-right: 20px; margin-bottom: 0px;}
.his__overview {margin: 0 -128px;}

@media (max-width: 767px) { /* sp */
.his__overview {margin: 0px -3.8vw;}

.his__list li.sp p{ margin-bottom: 0px;}
.his__list li.sp div.flex {justify-content: flex-start;}
.his__list li.sp div.flex p{margin-right: 20px; margin-bottom: 0px;}


}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
news / event (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* index*/
.indexPosts {}
.indexPosts li {border-bottom: 1px dotted #aaa; padding: min(1.25vw, 15px) 0; display: flex; display: -webkit-flex;justify-content: space-between;}
.indexPosts li span {padding: 0 min(1.66vw, 20px); width: 18%;}
.indexPosts li  a {width: 82%;}
.indexPosts li  a:hover {color: #1e7f9b;}

.wp-pagenavi {text-align: center; margin-top: min(6.6vw , 80px); }
.wp-pagenavi a, .wp-pagenavi span {padding: min(0.83vw, 10px) min(1vw, 12px) !important; border: none !important;}
.wp-pagenavi  span.pages {display: none;}

/* detail */
.postHead {margin: 0;}
.postHead th {font-weight: normal; background: #e3e3e3; width: 20%;}
.postHead td {text-align: left; padding-left: min(2.5vw, 30px); font-size: min(1.9vw, 2.3rem);}

.postBody {border: 1px solid #000; border-top:none; padding: 5%; margin-bottom: min(10.8vw, 100px);}
.postBody img {width: auto; max-width: 100%; margin-bottom: min(1.25vw, 10px);}

.postBody .single__img { text-align: center; margin: min(5vw, 60px) auto ;}
.postBody .post__img {margin: 0;}
.postBody .post__caption {font-size: min( 1.3vw, 1.6rem);}
.postBody .post__pdf{text-align: center;}

.postBody .multi__img {display: flex; display: -webkit-flex; justify-content: center; gap: min(2.5vw, 30px);  margin: min(5vw, 60px) auto ;}
.postBody .multi__img li {flex: 1; text-align: center; font-size: min( 1.3vw, 1.6rem);}

.postNavi {text-align: center; font-size: 0;  margin-bottom: min(10.8vw, 100px);}
.postNavi p { display: inline-block; font-size: min(1.66vw, 2rem); margin: 0 min(1.66vw, 20px);}
.postNavi p a {padding:  min(0.83vw, 10px); position: relative;}
.postNavi p.postBack a {border: 1px solid #000; padding: min(0.83vw, 10px) min(3.3vw, 40px);  }
.postNavi p.postPrev a {padding-left: 1em;}
.postNavi p.postNext a {padding-right: 1em;}
.postNavi p.postPrev a::before,.postNavi p.postNext a::before{content: ""; position: absolute; width: min(1vw, 12px); height: min(1vw, 12px); border-top: 1px solid #000; border-left: 1px solid #000; ;top: 50%; }
.postNavi p.postPrev a::before {left: 0;  transform: translateY(-50%) rotate(-45deg);}
.postNavi p.postNext a::before {right: 0;  transform: translateY(-50%) rotate(135deg);}

@media (max-width: 767px) { /* sp */
	/* index*/
	.indexPosts li {padding: 3vw 0; display: block;}
	.indexPosts li span {padding: 0; width: 100%; display: block;}
	.indexPosts li  a {width: 100%;}
	.wp-pagenavi {margin-top: 10vw; }
	.wp-pagenavi a, .wp-pagenavi span {padding: 2vw !important; }

	/* detail */
	.postHead th {width: 100%; font-size: 3.6vw; display: block; text-align: left; border:none;}
	.postHead td {width: 100%;  display: block; padding-left:2vw; border:none; font-size: 4.5vw;}

	.postBody { padding: 5vw; margin-bottom: 15vw;}
	.postBody img {margin-bottom: 2vw;}

	.postBody .single__img { margin: 10vw auto ;}
	.postBody .post__caption {font-size: 3.6vw;}

	.postBody .multi__img {display: block;  margin: 10vw auto ;}
	.postBody .multi__img li {width: 100%; font-size: 3.6vw; margin-bottom: 6vw;}

	.postNavi {margin-bottom: 5vw;}
	.postNavi p { font-size: 3.6vw; margin: 0 1.5vw;}
	.postNavi p a {padding:2vw; }
	.postNavi p.postBack a {padding: 2vw 4vw;  }
	.postNavi p.postPrev a::before,.postNavi p.postNext a::before{width: 2vw; height: 2vw; }
	
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
settlementofaccounts (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.list__notice li {margin-bottom: min(2.5vw, 30px);}
.list__notice li a {color: #0072bf;}

@media (max-width: 767px) { /* sp */
.list__notice li {margin-bottom: 6vw;}
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
moive (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.mov__content { margin: 0 auto min(7.5vw ,90px); max-width: 780px;}
.mov__content .mov__wrap {margin: 0 auto min(2vw, 25px);}
.mov__content .mov__wrap iframe {width: 100%; height: auto; aspect-ratio: 16/9;}
.mov__content p {font-size: min(1.25vw, 1.5rem);}

@media (max-width: 767px) { /* sp */
	.mov__content { margin: 0 auto 12vw; }
	.mov__content .mov__wrap {margin: 0 auto 5vw;}
	.mov__content p {font-size: 3.6vw;}
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
corporateregularmember (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.crm__content {}
.crm__content p, .crm__content table {font-size: min( 1.16vw, 1.4rem);}
.crm__apply {max-width: 890px; margin: min(8.3vw, 100px) auto 0;}
.crm__apply li {width: 48%; }
.crm__apply li p{margin: min(2vw, 25px) auto 0; font-size: min( 1.4vw, 1.7rem); font-weight: 600;}

.crm__list {margin: min(6.6vw, 80px) auto 0;}
.crm__list li {margin: min(1.25vw, 15px) 0; font-size: min(1.3vw, 1.6rem);}
.crm__list li a {color: #0072bf;}

.crm__noName {width: 47%; position: relative; z-index: 2;}
.crm__noName::before {content: ""; width: 100%; height: 100%; position: absolute; right: max(-0.4vw , -5px); bottom: max(-0.4vw , -5px); border: 1px solid #062a4f; background:#c9c9c9; z-index: -1; }
.crm__noName a {display: block; color: #fff; text-align: center; background: rgb(18,42,76);background: linear-gradient(310deg, rgba(18,42,76,1) 0%, rgba(34,59,104,1) 100%); padding: min( 1.25vw, 15px);}
.crm__noName a h3 {font-size: min( 2.9vw, 3.5rem); font-weight: 600; letter-spacing: 0.2rem;}
.crm__noName a h3 span {position: relative;}
.crm__noName a h3 span em {font-style: normal; position: absolute; left: 0; top: 50%; transform: translate(-120%, -50%); background: #fff; color: #183b6b; font-size: min(2.08vw, 2.5rem); border-radius: 50%; width: min(3.3vw , 40px); height: min(3.3vw , 40px); display: block; text-align: center; line-height: min(3.3vw , 40px); }
.crm__noName a p {margin: 0; border-top: 1px solid #fff; padding-top: min(0.83vw, 10px); font-size: min( 2.4vw , 2.9rem); line-height: 1.2;}

@media (max-width: 767px) { /* sp */
	.crm__content p, .crm__content table {font-size: 3.8vw; }
	.crm__content p {text-align: left;}

	.crm__noName {width: 100%; margin-bottom: 5vw;}
	.crm__noName::before {right: -1vw; bottom: -1vw;  }
	.crm__noName a {padding: 3vw;}
	.crm__noName a h3 {font-size: 6vw; }
	.crm__noName a h3 span em {font-size: 4.5vw; width: 8vw; height: 8vw; line-height: 8vw;}
	.crm__noName a p {text-align: center; padding-top: 3vw; margin-top: 2vw;font-size:4.2vw; }
}




/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
member (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* login */
.login_form {text-align: center; width: 73%; margin: min(4vw, 50px) auto 0; }
.login_form p {margin-bottom: min(4vw, 50px);}
.login_form input {width: 100%; padding: min(0.83vw, 10px); border:1px solid  #ccc; outline: none;}
.login_form button {display: inline-block; background: #000; color: #fff; border: none; min-width: 225px; padding: min(1.25vw, 15px); position: relative; transition: 0.3s all ease-in-out;}
.login_form button::before {content: ""; width: min(0.83vw, 10px); height: min(0.83vw, 10px); border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; right: min(1.25vw, 15px); top: 50%; transform: translateY(-50%) rotate(45deg);}
.login_form button:hover {background: #444;}

@media (max-width: 767px) { /* sp */
	.login_form {width: 100%; margin: 5vw auto 0; }
	.login_form p {margin-bottom: 6vw;}
	.login_form input {padding: 2vw;}
	.login_form button {display: block; min-width: inherit; padding: 3vw; margin: 0 auto; width: 80%;}
	.login_form button::before {width: 2vw; height: 2vw; right: 3vw; }
}

/* index */
.navMember {margin: 0; display: flex; display: -webkit-flex; justify-content: center; flex-wrap: wrap;column-gap: min(2.5vw, 30px);}
.navMember li { font-family: var(--ff-serif-01);  min-width: min(20.83vw , 250px); text-align: center;}
.linkMember {border: 1px solid #122a4c; padding: min(0.25vw, 3px);}
.linkMember a {display: block; padding: min(1.25vw, 15px); color: #fff; background: rgb(18,42,76);background: linear-gradient(310deg, rgba(18,42,76,1) 0%, rgba(34,59,104,1) 100%);}
.memNews {margin: 0 0 min(4.17vw, 50px) min(4.17vw, 50px); font-size: min( 1.08vw, 1.3rem);}
.memNews li {display: flex; display: -webkit-flex; margin-bottom: min(1.25vw, 15px);}
.memNews li  span {width: 15%; }
.memNews li a {text-decoration: underline;}
.memNews li a:hover {text-decoration: none;}
.memBtnMore {float: right;}
.memInner {overflow: hidden; width: 90%; max-width: 1000px; padding: min( 6.6vw, 80px) 0; margin: 0 auto; }

#memOrder {margin-bottom: min(14.17vw , 170px); }
.order__list { justify-content: center; flex-wrap: wrap; column-gap: 2.5%; margin: min(4.4vw , 50px) auto;}
.order__item {width: 23%; margin-bottom: min(3.3vw, 40px);}
.order__item__img {overflow: hidden; background: #eee; aspect-ratio: 23/16;}
.order__item__img img { width: 100%; height: 100%;}
.order__item__text {font-size: min(1.08vw, 1.4rem); text-align: justify; margin-bottom: min(0.83vw, 10px);}
.order__item__price {font-size: min( 1.3vw, 1.6rem); font-weight: 600;}


.tabBtn--member {border-bottom: 1px solid #000; display: flex; display: -webkit-flex; justify-content: center; column-gap: min(1.25vw, 15px); width: 100%; margin-bottom: min(6.67vw , 80px);}
.tabBtn--member li {width: 22%; border: 1px solid #000; background: #e4e4e4; margin-bottom: -1px; text-align: center; padding: min(1.25vw, 15px); line-height: 1.2; font-size: min(1.16vw, 2rem);}
.tabBtn--member li:not(.active) {cursor: pointer;}
.tabBtn--member li.active {background: #fff; border-bottom: none;}

.tbl--compe {margin: 0;}
.compe--day {width: 15%;}
.compe--license {width: 19%;}
.compe--method{width: 19%;}
.compe--combination{width: 10%;}
.compe--result{width: 10%;}
.tbl--compe  td img {width: min(2vw, 24px);}

@media (max-width: 767px) { /* sp */
	.navMember {column-gap: inherit; justify-content: space-between;}
	.navMember li {width: 49%; margin-bottom:2%;}
	.linkMember {padding: 0.6vw;}
	.linkMember a {padding: 2.5vw; }
	.memNews {margin: 0 0 8vw 0; font-size: 3.8vw;}
	.memNews li {display: block; margin-bottom: 3vw;}
	.memNews li  span {width: 100%; display: block;}
	.memNews li a {display: block;}
	.memBtnMore {float: none; margin: 0 auto;}
	.memInner { width: 90%; max-width: 1000px; padding: 14vw 0; }
	
	#memOrder {margin-bottom: 20vw }
	.order__list { column-gap: inherit; justify-content: space-between; margin: 5vw auto 5vw;}
	.order__item {width: 48%; margin-bottom: 5vw;}
	.order__item__text {font-size: 3.5vw; line-height: 1.5;}
	.order__item__price {font-size: 4vw;}
	.tabBtn--member { column-gap: 2vw;   margin-bottom:10vw;}
	.tabBtn--member li {width: 25%;  padding: 3vw;  font-size: 4vw;}
	.tbl--compe  td img {width: 4.6vw;}
}

/* club officer */
.memOfficer {text-align: center;}
.tbl--officer {display: inline-block;  width: auto; font-size: min(1.25vw, 1.5rem); margin: 0 auto; border: none;}
.tbl--officer th,.tbl--officer td {border: none; padding: min(0.8vw, 10px) min(2.5vw, 30px); font-family: var(--ff-serif-01); font-weight: 600;}

@media (max-width: 767px) { /* sp */
	.tbl--officer {display:table;  width: 100%; font-size: 3.8vw; }
	.tbl--officer th,.tbl--officer td {padding: 1.5vw 3vw;}
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
order (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.order .ul-title {position: relative;}
.order .ul-title .order__title {position: absolute; left: 50%; top: 0; transform: translate(-50% , -100%); font-family: var(--ff-serif-01);}
.order__wrapper {margin-bottom: min(6.6vw, 80px);}

.order__item__inner{position: relative;}
.order__soldout {display: none; margin: 0; color: #fff; font-weight: 600; position: absolute; left: 0; top:50%; width: 100%; text-align: center; transform: translateY(-50%);}
.order__quantity {margin-bottom: min(1.66vw, 20px);}
.order__quantity  p {margin: 0; font-size: min(1.08vw, 1.3rem); color: #666;}
.order__quantity__select {display: flex; display: -webkit-flex; }
.order__quantity__input {border: 1px solid #979797; width: min(3.3vw , 40px); aspect-ratio: 1/1; font-size: min(1.66vw, 2rem); font-weight: 600;}
.order__quantity__num {width: calc( 100% - min( 6.6vw, 80px)); border: 1px solid #979797; border-left: none; border-right: none; text-align: center; outline: none;}

.order__btn {}
.order__btn__common {width: 100%; padding: min(0.83vw, 10px); font-size: min(1.3vw, 1.6rem); font-weight: 600; border: none;  color: #fff;}
.order__btn__purchase {background: #ad1212;}
.order__btn__cancel {background: #666; display: none;}

.order__item.soldout  .order__item__inner::before{content: ""; width: calc(100% + min(0.8vw, 10px)) ; height: calc(100% + min(0.8vw, 10px)); background: rgba(0,0,0,0.5); position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
.order__item.soldout .order__soldout {display: block; }
.order__item.soldout .order__btn__purchase {display: none;}
.order__item.soldout .order__btn__cancel {display: block;}

.order__amount{ font-weight: 600;}
.order__amount__total {justify-content: center; column-gap: min(3.3vw, 40px); font-size: min(2.25vw, 2.7rem); font-family: var(--ff-serif-01); align-items: center;}
.order__amount__total  p {margin: 0;}
.order__amount__total  .order__amount__money {font-size: min(2.5vw, 3rem); color: #ad1212;}
.order__amount__text {margin: min(2vw, 25px) auto 0; font-size: min(1.25vw, 1.5rem); }

@media (max-width: 767px) { /* sp */
.order .ul-title .order__title {position: relative; left: inherit; top: inherit; transform: none; }
.order__wrapper {margin-bottom: 15vw;}
.order__quantity {margin-bottom: 4vw;}
.order__quantity  p {font-size: 3.6vw; }
.order__quantity__input {width: 8vw; font-size: 4.2vw; }
.order__quantity__num {width: calc( 100% - 16vw); }
.order__btn__common {padding: 2vw; font-size:3.8vw; }
.order__item.soldout  .order__item__inner::before{width: calc(100% + 2vw) ; height: calc(100% +2vw);}
.order__amount__total {column-gap: 0; font-size: 5vw; display: block; text-align: center;}
.order__amount__total  .order__amount__money {font-size: 6vw; }
.order__amount__text {margin: 5vw auto 0; font-size: 3.8vw; }

}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
contact (common)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ic--ssl {position: relative;}
.ic--ssl::before {content: "";background: url("../img/page/common/ic-ssl.png") center center / contain no-repeat;  position: absolute; width:min(1.58vw, 19px); height: min( 1.67vw, 20px); left: 0; top: 50%; transform: translate(-150%, -50%);}
.cont__read {font-weight: 600; margin-bottom: min(6.67vw, 80px); font-size: min( 1.16vw, 1.4rem);}

.cont_body {font-size: min(1.42vw, 1.7rem);}
.cont__row {display: flex; display: -webkit-flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: min(2.5vw, 30px);}
.cont__row__head {width: 23%; position: relative; min-height: min(2.5vw, 30px); margin: min(0.4vw, 5px) 0; font-size: min(1.5vw, 1.8rem);}
.cont__row__data {width: 71.5%;}
.ic-option {position: absolute; right: 0; top: 0; width: min( 5.75vw, 69px); height: min(2.5vw, 30px); text-align: center; display: flex; display: -webkit-flex; justify-content: center; align-items: center; background: #808080; color: #fff; line-height: 1; font-size: min(1.42vw, 1.7rem);}
.ic-option.ic-required {background: #820f0f;}

.cont__list {text-align: center; font-size: 0; margin-bottom: min(4.4vw, 50px);}
.cont__list li {font-size: min(1.5vw, 1.8rem); display: inline-block; margin: 0 min(1.25vw, 15px);}
.cont__list li input {margin-right: min(0.6vw, 8px);}

.error {color: red; margin: min(0.4vw, 5px) 0 0;}
.input-S {width: 31%; padding: min(0.4vw, 5px) min(0.83vw, 10px); height: min( 3.3vw , 40px);}
.input-M {width: 76%; padding: min(0.4vw, 5px) min(0.83vw, 10px); height: min( 3.3vw , 40px);}
.input-L {width: 100%; padding: min(0.4vw, 5px) min(0.83vw, 10px); height: min( 3.3vw , 40px);}
.textArea {width: 100%; padding: min(0.4vw, 5px) min(0.83vw, 10px);white-space:pre-wrap; }
.textArea--content {height: min(18.33vw, 220px);}
.select-Pref {margin: min(1.66vw, 20px) 0;}
#btn--postcode { height: min( 3.3vw , 40px); background: #333333; color: #fff; padding: 0 min(2.5vw, 30px); border: none; margin-left: min(1.66vw, 20px);}

.cont__mail__confirm {margin: min(1.66vw, 20px) 0 min(0.4vw, 5px);}
.cont__mail__note {margin:min(1.66vw, 20px) 0 0 ; font-size: min( 1.08vw, 1.3rem); }
.cont__mail__note  span {color: #ad1212; font-weight: 600;}

.cont__btn {margin: min(6.67vw, 80px) auto 0; text-align: center;}
.btnCommon {display: inline-block; position: relative; margin: 0;}
.btnCommon input {border: none; background: none; padding:  min(1.25vw, 15px) min(2.5vw, 30px);  letter-spacing: 0.1rem;  font-size: min(1.66vw, 2rem);}
.btnPrimay  input {min-width: min(20vw, 240px);}
.btnPrimay {background: #333; color: #fff; transition: 0.3s all ease-in-out;}
.btnPrimay:hover {background: #555;}
.btnPrimay::before {content: ""; width: min(0.83vw, 10px); height: min(0.83vw, 10px); border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; right: min(0.83vw, 10px); top: 50%; transform: translateY(-50%) rotate(45deg);}

.cont__privacy {margin-top: min(6.6vw, 80px);}
.cont__privacy h2 {font-weight: 600; font-size: min(1.66vw , 2rem); margin-bottom: min(2vw, 25px);}
.cont__privacy p {margin: 0; font-size: min( 1.16vw, 1.4rem);}
.cont__privacy p a {color: #0071ba; text-decoration: underline;}
.cont__privacy p a:hover {text-decoration: none;}

/* confirm */
.cont__confirm .cont__row {border-bottom: 1px solid #ccc; padding-bottom: min(2.5vw, 30px);}
.cont__confirm .cont__row__head {margin: 0;}
.btnNegative {display: inline-block; margin-right: min(1.66vw, 20px);}
.btnNegative a {font-size: min(1.66vw, 2rem); background: #eee;   padding:  min(1.58vw, 19px) min(4vw, 50px); }

/* thanks */
.cont__thanks h3 {font-weight: 600; font-size: min(1.66vw , 2rem); margin-bottom: min(2vw, 25px);}

@media (max-width: 767px) {
.ic--ssl {padding-left: 4vw;}
.ic--ssl::before { width:3.8vw; height:4vw; transform: translate(0, -50%);}
.cont__read {margin-bottom: 10vw;  font-size: clamp(1.2rem, 3vw, 2.2rem);}

.cont_body {font-size: clamp( 1.4rem,  4vw, 1.7rem);}
.cont__row { flex-direction: column; margin-bottom: 6vw;}
.cont__row__head {width: 100%; min-height: 6vw; margin:0; display: flex; display: -webkit-flex; font-weight: 600; margin-bottom: 2vw; align-items: center; font-size: clamp( 1.4rem,  4vw, 1.8rem);}
.cont__row__data {width: 100%;}
.ic-option {position: relative; right: inherit; top: inherit; width:13.8vw; height: 6vw; margin-left: 3vw; font-size: clamp( 1.2rem,  4vw, 1.6rem); font-weight: 500;}

.cont__list {margin-bottom: 10vw; text-align: left;}
.cont__list li {font-size: clamp( 1.4rem,  4vw, 1.7rem); margin: 1vw 0; display: block;}
.cont__list li input {margin-right: 1.2vw;}

.input-S {width: 48%; padding: 1vw 2vw; height: 10vw;}
.input-M {width: 100%; padding: 1vw 2vw; height: 10vw;}
.input-L { padding: 1vw 2vw; height: 10vw;}
.textArea {width: 100%;  padding: 1vw 2vw; }
.textArea--content {height: 44vw;}
.select-Pref {margin: 3vw 0;}
#btn--postcode { height: 10vw;  padding: 0 4vw; margin-left: 2%; }

.cont__mail__confirm {margin: 4vw 0 1vw;}
.cont__mail__note {margin: 4vw 0 0 ; font-size: clamp( 1rem, 3.2vw, 1.3rem); }

.cont__btn {margin: 10vw auto 0; }
.btnCommon { display: block;}
.btnCommon input { padding: 4vw;  display: block; width: 100%; text-align: center; font-size: clamp( 1.6rem,  4.2vw, 2rem);}
.btnPrimay  input {min-width:inherit; }

.btnPrimay::before { width: 3vw; height: 3vw;   right: 4vw; }

.cont__privacy {margin-top: 10vw;}
.cont__privacy h2 {font-size: clamp( 1.8rem,  5vw , 2.4rem); margin-bottom:5vw;}
.cont__privacy p { font-size: clamp( 1.2rem, 3.6vw, 1.4rem); }


/* confirm */
.cont__confirm .cont__row { padding-bottom: 6vw;}
.cont__confirm .cont__btn {display: flex; display:-webkit-flex; flex-direction: column-reverse;}
.btnNegative {display:block; margin-right: 0;}
.btnNegative a {font-size: clamp( 1.6rem, 4.2vw, 2rem); display: block; padding: 4vw; margin-top: 3vw; }

/* thanks */
.cont__thanks h3 {font-size: clamp( 1.8rem,  5vw , 2.4rem); margin-bottom:5vw;}
.cont__thanks p {font-size: clamp( 1.2rem, 3.6vw, 1.4rem); }
	
}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
pcSetting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

@media (min-width:768px) {
/* ----------------------------------------------------
common(pc)
---------------------------------------------------- */
/* hover */
a:hover {
  opacity: .8 !important; filter: alpha(opacity=80);
  text-decoration: none;
  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}
a img:hover {
  opacity: .8 !important; filter: alpha(opacity=80);
  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}
.clickable:hover {
  filter: alpha(opacity=80) !important;	opacity: .8 !important;
  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}
.clickable:hover {
  opacity: 0.7;
  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}


.sp {display: none;}
.pc{display: block;}
.pc_invisible{display: none !important;}

}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
tabletSetting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

@media (max-width: 1200px) and (min-width: 768px) {
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
spSetting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

@media (max-width: 767px) {
body {padding-top: 13vw;}
#mainContainer{ width: 100%; position: relative; }
.sp {display: block;}
.middle {display: block;}
.pc{display: none;}
.middle_invisible{display: none !important;}
.sp_invisible{display: none !important;}

 }



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
DR ADD
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

#cource__popup
{
	margin-top: max( 3vw , 50px);
}

#cource__popup__btn img
{
	max-width: 400px;
	height: auto;
}

/* common class */
.fs_small{
  font-size: min(1.2vw, 1.4rem);
}

.caption-border {
	font-family: var(--ff-serif-01);
    position: relative;
    display: inline-block;
    padding: 0 55px;
	font-size: 2.5rem;
}

.caption-border:before,
.caption-border:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 45px;
    height: 2px;
    background-color: #666;
}

.caption-border:before {
    left: 0;
}

.caption-border:after {
    right: 0;
}