@charset "utf-8";

/* Google font Icon */
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
/* =================================================
Foundation
================================================= */
:root {
	--font-family-min: "Zen Old Mincho", '游明朝','Yu Mincho', '游明朝体', 'YuMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
	--font-family-goc: "Noto Sans JP", sans-serif;
	--font-ct: "Crimson Text", serif;
	--font-eb: "EB Garamond", serif;
	--font-weight-500: 500;
	--color-main: #121212;
	--color-white: #ffffff;
	--color-black: #000000;
	--color-gray: #989a97;
	--color-gray-2: #7b7b7b;
	--color-red: #a5212f;
	--color-green-2: #1e221b;
	--hover-option: .3s ease-in-out;
	--background-option: no-repeat 0 0 / 100%;
	--cont_margin-side: 100px;
	--cont_margin-top: 120px;
	--cont_margin-top02: 100px;
	--cont_margin-bottom: 200px;
	--cont_margin-bottom02: 150px;
	--cont_margin-bottom03: 100px;
	--cont_margin-bottom03b: 80px;
	--cont_margin-bottom04: 40px;
     --cont_margin-btf03: 3rem;

	/* inline */
	--inline-page: 100px;
}
@media (max-width: 1300px) {
	:root {
		--cont_margin-side: 60px;
   }
}
@media screen and (max-width: 1024px) {
	:root {
		--inline-page: 40px;
		--cont_margin-bottom02: 120px;
	}
}
@media (max-width: 960px) {
	:root {
		--cont_margin-side: 50px;
	}
}
@media screen and (max-width: 767px) {
	:root {
		--inline-page: 5%;
		--cont_margin-side: 5%;
	    --cont_margin-top02: 80px;
		--cont_margin-bottom02: 80px;
    --cont_margin-bottom03: 80px;
	--cont_margin-bottom03b: 50px;	
	}
}

:target::before {
    content:"";
    display:block;
    height:200px;       
    margin:-200px 0 0;  
}




/* Base
------------------------------------------------- */
* {
	margin: 0;
	padding: 0;
	color: #412e1d;
	font-weight: 400;
	font-style: normal;
	font-family: var(--font-family-min);
	letter-spacing: .1em;
	line-height: 1.75;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	/*font-feature-settings: 'palt';*/
}
html {
	font-size: 62.5%;
}
body {
	font-size: 16px;
	font-size: 1.6rem;
	word-wrap: break-word;
	background: #f7f7f7;
	overflow-wrap: break-word;
	font-display: swap;
	overflow-x: hidden;
}
@media screen and (max-width: 767px) {
	body {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 374px) {
	html {
		font-size: 2.667vw;
	}
}
html.is-overflow,
body.is-overflow {
	width: 100%;
	position: fixed !important;
	overflow: hidden;
	z-index: 99999;
}
img {
	border: 0;
	vertical-align: bottom;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

.mnimg_none{display: none;}

.c_red01{ color: #a5212f!important;}
.cl_red01{ color: #a5212f!important;}
strong { font-weight: bold!important;}

body * p {font-family: var(--font-family-goc);}
p font,p span,p strong,p a,ol,ul,li,li span,dt,dt,dd, dd span{ font-family: var(--font-family-goc); }

table p ,table span { font-family: var(--font-family-goc); }
table *{ font-family: var(--font-family-goc);}

.ic_strng{font-weight: bold;}

.ic_mt20 {margin-top: 20px!important;}
.ic_mt40 {margin-top: 40px!important;}
.ic_mt60 {margin-top: 60px!important;}
.ic_mt80 {margin-top: 80px!important;}
.ic_mt100 {margin-top: 100px!important;}

.ic_mt3r {margin-top: 3rem!important;}
.ic_mt5r {margin-top: 5rem!important;}
.ic_mt7r {margin-top: 7rem!important;}

.ic_mb10 {margin-bottom: 10px!important;}
.ic_mb20 {margin-bottom: 20px!important;}
.ic_mb40 {margin-bottom: 40px!important;}

.ic_mb5r {margin-bottom: 5rem!important;}
.ic_mb7r {margin-bottom: 7rem!important;}


.tpic_ptpb1 {
	padding-top: 80px!important;
	padding-bottom: 40px!important;
}

.ic_red01{color:#a5212f!important;}

/* =================================================
Animation
================================================= */
@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes translete {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
		transform : translate(0, 0);
	}
}
@keyframes blur {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity: 1;
		-ms-filter: blur(0);
		filter: blur(0);
	}
}
@keyframes blur2 {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity: .7;
		-ms-filter: blur(0);
		filter: blur(0);
	}
}
@keyframes blur3 {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity: .5;
		-ms-filter: blur(0);
		filter: blur(0);
	}
}
@keyframes blur3_sp {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity: .3;
		-ms-filter: blur(0);
		filter: blur(0);
	}
}
@keyframes blur4 {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity: .1;
		-ms-filter: blur(0);
		filter: blur(0);
	}
}

.-fadein {
	opacity: 0;
}
.-translete {
	opacity: 0;
	transform : translate(0, 20px);
}
.-blur {
	opacity: 0;
}
.fv-fadein {
	opacity: 0;
	animation: fadeIn 0.5s ease-in-out 0.5s forwards;
}
.fv-translete {
	opacity: 0;
	animation: translete 1.0s ease-in-out 1s forwards;
}
.fv-blur {
	opacity: 0;
	animation: blur 1.0s ease-in-out 1.0s forwards;
}
.js-effect__fade {
	animation: fadeIn 0.5s ease-in-out 0.5s forwards;
}
.js-effect__blur {
	animation: blur 0.5s ease-in-out 0.2s forwards;
}
.js-effect__translete {
	animation: translete 0.5s ease-in-out 0.5s forwards;
}
@media screen and (max-width: 767px) {
	.-translete {
		opacity: 1;
		transform : none;
	}
	.js-effect__translete {
		animation: none;
	}
}


/* =================================================
Layout
================================================= */
#l-container {
	overflow: hidden;
}

/* Header
------------------------------------------------- */
.l-header {
	width: 100%;
	padding-block: 30px;
	padding-inline: 50px;
	display: flex;
	justify-content: space-between;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	transition: all .3s;
	opacity: 0;
	animation: blur 1.0s ease-in-out 1s forwards;
	color: #4a3722!important;
	border-top:3px solid #917d65;
}
@media screen and (max-width: 1200px) {
	.l-header {
		padding-block: 30px;
		padding-inline: 50px 160px;
	}
}
@media screen and (max-width: 1024px) {
	.l-header {
		padding-inline: var(--inline-page) 120px;
	}
}
@media screen and (max-width: 767px) {
	.l-header {
		padding-block: 20px;
		padding-inline: var(--inline-page);
		z-index: 2;
	}
}
.l-header.is-fixed {
	padding-block: 30px;
}
.l-header:before {
	width: 100%;
	height: 130px;/*130 280*/
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	pointer-events: none;
	background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 100%);
}
.l-header.is-fixed:before {
	pointer-events: none;
	background: rgba(255, 255, 255, 0.9);
}
@media screen and (max-width: 1200px) {
	.l-header:before {
		height: 120px;
	}
}
@media screen and (max-width: 1024px) {
	.l-header:before {
		height: 100px;
	}
}
/*
@media screen and (max-width: 767px) {
	.l-header:before {
		height: 120px;
	}
}
*/
.l-header__logo {
	width: 420px;/*380*/
}
@media screen and (max-width: 1440px) {
	.l-header__logo {
		width: 320px;/*296*/
	}
}
@media screen and (max-width: 1024px) {
	.l-header__logo {
		width: 237px;/*237*/
	}
}
@media screen and (max-width: 767px) {
	.l-header__logo {
		width: 280px;/*214*/
	}
}
.l-header__logo img {
	width: 100%;
}
.l-header-nav ul {
	justify-content: flex-end;
}
.l-header-nav ul li {
	font-size: 0;
}
.l-header-nav a {
	display: block;
	position: relative;
	font-size: 1.4rem;
	letter-spacing: 0;
	line-height: 1;
}
.l-header__utility a {
   text-align: center;
   letter-spacing:unset;
	height: 40px;
	line-height: 1.8;
}
.l-header__utility {
	margin-bottom: 20px;
	gap: 0 15px;
}
@media screen and (max-width: 1440px) {
	.l-header__utility {
		gap: 0 10px;
	}
}
@media screen and (max-width: 1200px) {
	.l-header__utility {
		margin-top: 20px;
		margin-bottom: 0;
	}
}
@media screen and (max-width: 1024px) {
	.l-header__utility {
		margin-top: 0px;
		gap: 0 10px;
	}
}
@media screen and (max-width: 768px) {
	.l-header__utility {
		display: none !important;
	}
}
@media screen and (max-width: 1024px) {
	.l-header-utility__item a {
		font-size: 1.6rem;
	}
}
.l-header-utility__item a:before {
	margin-right: 10px;
	content: '';
	display: inline-block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
}

.l-header-utility__item.-tenki {
	width: 128px;/*110*/
	border: 1px solid #0fa0cf;
	background:#0fa0cf;
}
.l-header-utility__item.-tenki　a {
	display: inline-flex;
    align-items: center;
}
.l-header-utility__item.-tenki span.ic_tenki{
	vertical-align:-5px;	
}
.l-header-utility__item.-tenki a:before {
	width: 16px;
	aspect-ratio: 1;
	vertical-align:-5px;
	font-family: "Material Icons";
	content: "\ebcc";	
	font-size: 2.2rem;
}

.l-header-utility__item.-hdtel a:before {
	width: 18px;
	aspect-ratio: 18 / 14;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\e325";	
    font-size: 3.2rem;
}
span.hdtel_ttl {
    font-size: 1.2rem;	
	margin-right: 0.5rem;
}
span.hdtel_num {
font-family: var(--font-ct);
line-height: 1;	
font-size: 3rem;
/*font-feature-settings: "palt" 1;*/
letter-spacing: 0.05em;
margin-right: 1rem;
}
span.hdtel_num2 {
font-family: var(--font-ct);
line-height: 2.2;	
font-size: 1.8rem;
letter-spacing: 0.05em;
bottom:0;
}
.l-header-utility__item.-access {
	width: 94px;
	border: 1px solid #4b3621;
}
.l-header-utility__item.-access a:before {
	width: 12px;
	aspect-ratio: 12 / 16;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\e0c8";	
	color:#4b3621;
	font-size: 2.2rem;
}
.l-header-utility__item.-access a:hover:before {
	color:#8b7a68;
}
.l-header-utility__item.-ykonline {
	width: 200px;
	background: #a62230;
}
.l-header-utility__item.-ykonline a,
.l-header-utility__item.-tenki a {
	color:#ffffff!important;
	font-weight: 700;
}
.l-header-utility__item.-ykonline a:before {
	width: 18px;
    aspect-ratio: 12 / 16;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\eb45";	
    font-size: 2.2rem;
}
.l-header-utility__item.-tenki a:after {
	width: calc(100% - 26px);
	left: 26px;
}
.l-header-utility__item.-access a:after {
	width: calc(100% - 22px);
	left: 22px;
}
.l-header-utility__item.-ykonline a:after {
	width: calc(100% - 28px);
	left: 28px;
}




@media (hover: hover) and (pointer: fine) {
/*
	.l-header-utility__item a:hover {
		color: #8b7a68;
	}
*/
.l-header-utility__item.-tenki a:hover {
	color: #066ea4!important;
	border-bottom:2px solid  #0fa0cf;
	background:  #c1e7fb;
}
.l-header-utility__item.-access a:hover	{
	color: #8b7a68;
	border:  #8b7a68;
}
.l-header-utility__item.-ykonline a:hover {
	color: #a62230!important;
	background: #f7c8cd;
   }		
}

@media screen and (max-width: 1200px) {
    .l-header-utility__item.-hdtel{
		display: none;
    }
}
@media screen and (max-width: 430px) {
    .l-header-utility__item.-hdtel,
	.l-header-utility__item.-tenki,
	.l-header-utility__item.-access,
	.l-header-utility__item.-ykonline {
		display: none;
    }
}



/* ---------- グローバルナビ ----------*/
.l-header-nav__ul {
	gap: 0 30px;
}
@media screen and (max-width: 1440px) {
	.l-header-nav__ul {
		gap: 0 30px;
	}
}
@media screen and (max-width: 1200px) {
	.l-header-nav__ul {
		display: none !important;
	}
}
.l-header-nav__li a {
	display: block;
	position: relative;
	padding:0 10px 5px;
	padding:0 10px 5px;
}
.l-header-nav__li a:after {
/*	
	width: 1px;
	height: 10px;
	content: '';
	position: absolute;
	left: 50%;
	top: calc(100% + 10px);
	background: white;
	transform: translateX(-50%);
	transition: all var(--hover-option);*/
	width: 100%;
	height: 1px;
	content: '';
	position: absolute;
	left: 0;
	bottom: -3px;
	background: #4a3722;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .2s;	
}
@media (hover: hover) and (pointer: fine) {
	.l-header-nav__li a:hover:after {
		/*height: 20px;*/
		transform: scale(1, 1);
		transform-origin: left top;	
	}
}


/* Footer
------------------------------------------------- */
.l-footer {
	padding-bottom: 90px;
	padding-inline: var(--inline-page);
	position: relative;
	background: #e7e2dd;
}
@media screen and (max-width: 959px) {
	.l-footer {
		padding-bottom: 60px;
	}
}
@media screen and (max-width: 767px) {
	.l-footer {
		padding-bottom: 60px;
	}
}
.l-footer:before {
	width: 100%;
/*	height: 715px;*/
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
}
@media screen and (max-width: 959px) {
	.l-footer:before {
/*		height: 500px;*/
	}
}

.l-footer__inner {
	padding-top: 110px;
	padding-inline: var(--inline-page0);
	display: flex;
	justify-content: space-between;
	position: relative;
}
@media screen and (max-width: 1440px) {
	.l-footer__inner {
		padding-inline: 0;
	}
}
@media screen and (max-width: 959px) {
	.l-footer__inner {
		padding-top: 80px;
		flex-direction: column;
		align-items: center;
	}
}
@media screen and (max-width: 959px) {
	.l-footer__inner {
		padding-top: 60px;
	}
}
@media screen and (max-width: 767px) {
	.l-footer__inner {
		padding-top: 60px;
	}
}

@media screen and (max-width: 1024px) {
	.l-footer__logoarea .sp__info2 {
		display: flex;
		flex-direction: column;
		align-items: center;
		order: 2;
	}
}


	.l-footer__logoarea {
		display: flex;
		flex-direction: column;
		align-items: center;		
	}

@media screen and (max-width: 959px) {
	.l-footer__logoarea {
		order: 2;
		margin-bottom: 70px;
	}
	.l-footer__info {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
}
.l-footer-info__logo {
	width: 100%;
	margin-bottom: 40px;
}
@media screen and (max-width: 959px) {
	.l-footer-info__logo {
		width: 350px;
	}
}
@media screen and (max-width: 767px) {
	.l-footer-info__logo {
		width: 290px;
	}
}
.l-footer-info__logo img {
	width: 100%;
}

.l-footer-info__unit {
	margin-bottom: 20px;
	display: flex;
	gap: 0 20px;
}
.l-footer-info__add  {font-family: var(--font-family-min);}
.l-footer-info__add span {
	font-family: var(--font-ct);
	margin-right: 6px;
	display: inline-block;
	font-size: 1.6rem;
}
@media screen and (max-width: 1279px) {
	.l-footer-info__unit {
		flex-direction: column;
	}
}
@media screen and (max-width: 959px) {
	.l-footer-info__unit {
		align-items: center;
	}
}
@media screen and (max-width: 1279px) {
	.l-footer-info__add,
	.l-footer-info__add span {
		letter-spacing: .05em;
	}
}

.sp__info2　p.l-footer-info__map {
	margin: 0;
	padding: 0;
	display: inline-block;
	width: fit-content;
}
.l-footer-info__map a {
	font-family: var(--font-family-min);
	font-size: 1.4rem;
	position: relative;
}
.sp__info2 .l-footer-info__map a:before {
	width: 12px;
	aspect-ratio: 12 / 16;
	margin-right: 8px;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\e0c8";	
	color:#fff;
	font-size: 2.2rem;
}
.l-footer-info__map a:before {	
	width: 12px;
	aspect-ratio: 12 / 16;
	margin-right: 8px;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\e0c8";	
	color:#4a3722;
	font-size: 2.2rem;
}
/*
.l-footer-info__map a:after {
	width: calc(100% - 20px);
	height: 1px;
	content: '';
	position: absolute;
	left: 20px;
	bottom: -1px;
	background: white;
}*/

@media (hover: hover) and (pointer: fine) {
	.l-footer-info__map a:hover:after {
		opacity: 0;
	}
}
.l-footer-info__tf {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
}
@media screen and (max-width: 1279px) {
	.l-footer-info__tf {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
}
@media screen and (max-width: 959px) {
	.l-footer-info__tf {
		margin-bottom: 20px;
		flex-direction: row;
		gap: 15px;
	}
}
@media screen and (max-width: 767px) {
	.l-footer-info__tf {
		width: 100%;
		flex-direction: column;
		align-items: center;
		gap: 10px;
	}
}
@media screen and (max-width: 599px) {
	.l-footer-info__tf {
		margin-bottom: 20px;
	}
}
.l-footer-info__tf :where(p, a, span) {
	font-family: var(--font-ct);
	line-height: 1;
}
.l-footer-info__tf :where(p, a) {
	font-size: 2rem;
}
@media screen and (max-width: 959px) {
	.l-footer-info__tf :where(p, a) {
		font-size: 2rem;
	}
}
@media screen and (max-width: 767px) {
	.l-footer-info__tf :where(p, a) {
		font-size: 1.8rem;
	}
}
.l-footer-info__tf span {
	display: inline-block;
	font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
	.l-footer-info__tf span {
		font-size: 1.4rem;
	}
}
.l-footer-info__tf a {
	transition: opacity var(--hover-option);
}
.p-nav-sp .l-footer-info__tf a {
	font-size:1.5rem;
	color: var(--color-white);
	transition: opacity var(--hover-option);
}
@media (hover: hover) and (pointer: fine) {
	.l-footer-info__tf a:hover {
		opacity: .7;
	}
}


.l-footer-info__tel {
		width: 100%;
/*		height: 50px;
		max-width: 300px;*/
	}
.l-footer-info__tel :where(p, a, span) {
	font-family: var(--font-ct);
	line-height: 1;
}
.l-footer-info__tel span {
		font-size: 1.6rem;	
}
@media screen and (max-width: 767px) {
.l-footer-info__tel span {
		font-size: 1.4rem;
	}
}
.l-footer-info__tel a {
/*		height: 100%;*/
		padding-block: 14px;
		display: block;
        font-size: 2.2rem;
		text-align: center;
		border: 1px solid;
		border-radius: 40px;
	}

.l-footer-info__tel a:before {
	width: 14px;
    aspect-ratio: 12 / 16;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\e325";	
    font-size: 2.2rem;	
	}
@media screen and (max-width: 767px) {
	.l-footer-info__tel {
		width: 100%;
		height: 50px;
		max-width: 300px;
	}
}

.l-footer__copy {
/*	margin-right: var(--inline-page);
	position: absolute;
	right: 0;
	bottom: 0;*/
	font-family: var(--font-ct);
	font-size: 1.4rem;
	line-height: 1.5;
	
		order: 3;
		position: inherit;
		right: inherit;
		bottom: inherit;
		text-align: center;	
}
@media screen and (max-width: 959px) {
	.l-footer__copy {
		order: 3;
		position: inherit;
		right: inherit;
		bottom: inherit;
		text-align: center;
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 765px) {
	.l-footer__copy {
		margin-bottom: 100px;
		position: relative;
	}
}

.l-footer__navarea {
	padding-top: 0px;
	width: 100%;
	margin-left: 10%;
}
@media screen and (max-width: 959px) {
	.l-footer__navarea {
		padding-top: 0;
		order: 1;
		margin-left: 0%;	
	}
}
@media screen and (max-width: 767px) {
	.l-footer__navarea {
		width: 100%;
	}
}

/*---------- Navi ----------*/
.l-footer__nav {
	display: flex;
	justify-content: flex-end;
	gap: 0 25px;
	margin-bottom: 60px;
}
@media screen and (max-width: 959px) {
	.l-footer__nav {
		justify-content: center;
	}
}
@media screen and (max-width: 767px) {
	.l-footer__nav {
		margin-bottom: 50px;
		justify-content: center;
		gap: 0 0px;
	}
}
@media screen and (max-width: 400px) {
	.l-footer__nav {
		gap: 0;
	}
}

.l-footer-nav__ul {
	width: 250px;/*200*/
}
@media screen and (max-width: 400px) {
	.l-footer-nav__ul {
		width: 50%;
	}
}
.l-footer-nav__li {
	margin-bottom: 25px;
		    text-indent: -1.5em;
        padding-left: 1.5em;
}
@media screen and (max-width: 959px) {
	.l-footer-nav__li {
		margin-bottom: 20px;
	}
}
@media screen and (max-width: 767px) {
	.l-footer-nav__li {
		margin-bottom: 10px;
	}
}
.l-footer-nav__li:nth-last-of-type(1) {
	margin-bottom: 0;
}
.l-footer-nav__li a {
	letter-spacing: 0;
	line-height: 1;
	transition: all var(--hover-option);
}
.l-footer-nav__li a:before {
	width: 15px;
	height: 1px;
	margin-right: 10px;
	content: '';
	display: inline-block;
	background: var(--color-gray-2);
	vertical-align: 5px;
}
@media (hover: hover) and (pointer: fine) {
	.l-footer-nav__li a:hover {
		letter-spacing: .08em;
	}
}
@media screen and (max-width: 375px) {
	.l-footer-nav__li a:before {
		width: 10px;
	}
}

/*---------- Utility ----------*/
/*
.l-footer__utility {
	margin-bottom: 65px;
	display: flex;
	align-items: center;
	gap: 0 30px;
}
*/
.l-footer__utility {
  margin-bottom: 65px;
  display: flex;
  align-items: center;
  justify-content: flex-end; /* ← これが右寄せのポイント */
  gap: 0 30px;
}

@media screen and (max-width: 1279px) {
	.l-footer__utility {
		gap: 0 15px;
	}
}
@media screen and (max-width: 959px) {
	.l-footer__utility {
		margin-bottom: 50px;
		justify-content: center;
		gap: 0 30px;
	}
}
@media screen and (max-width: 767px) {
	.l-footer__utility {
		margin-bottom: 30px;
		flex-wrap: wrap;
		justify-content: center;
		gap: 15px 0px;
		width:100%;
		margin-left: auto;
		margin-right: auto;
	}
	.l-footer-utility__li {
		width: 44%;
	}
	
}
@media screen and (max-width: 395px) {
	.l-footer-utility__li {
		width: 40%;
	}
}
@media screen and (max-width: 374px) {
	.l-footer-utility__li {
		width: 40%;
	}
}
.l-footer-utility__li a {
	letter-spacing: 0;
	line-height: 1;
	transition: opacity var(--hover-option);
}
@media (hover: hover) and (pointer: fine) {
	.l-footer-utility__li a:hover {
		opacity: .7;
	}
}
.l-footer-utility__li a:before {
	margin-right: 10px;
	content: '';
	display: inline-block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
}
.l-footer-utility__li.-schedule a:before {
	width: 16px;
	aspect-ratio: 1;
	background-image: url("../images/ico_cal.svg");
	vertical-align: -2px;
}
.l-footer-utility__li.-access a:before {
	width: 12px;
	aspect-ratio: 12 / 16;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\e0c8";	
	color:#4b3621;
	font-size: 2.2rem;
}
.l-footer-utility__li.-contact a:before {
/*	width: 18px;
	aspect-ratio: 18 / 14;
	background-image: url("../images/ico_mail.svg");
	vertical-align: -1px;*/
	
	width: 12px;
	aspect-ratio: 12 / 16;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\ebcc";/*e158*/	
	color:#4b3621;
	font-size: 2rem;	
}
.l-footer-utility__li.-newsic a:before {
	width: 18px;
	aspect-ratio: 1;
	vertical-align:-5px;
	font-family: "Material Icons";
	content: "\e7f7";	
	color:#4b3621;
	font-size: 2.2rem;
}
.l-footer-utility__li.-ykonline a:before {
	width: 18px;
    aspect-ratio: 12 / 16;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\eb45";	
    font-size: 2.4rem;
}


/*---------- Bottom Utility ----------*/
.p-bottom-utility {
	display: none;
}
@media screen and (max-width: 767px) {
	.p-bottom-utility {
		width: 100%;
		height: 65px;
		display: block;
		position: fixed;
		bottom: 0;
		left: 0;
		opacity: 0;
		animation: blur 1.0s ease-in-out 1s forwards;
        z-index: 99999;	/***/	
	}
}
@media screen and (max-width: 599px) {
	.p-bottom-utility {
		height: 60px;
	}
}
.p-bottom-utility {
	width: 100%;
}
.p-bottom-utility__item {
	width: calc(100% / 3);
	height: 100%;
	position: relative;
}
.p-bottom-utility__item a {
	width: 100%;
	height: 100%;
	padding-block: 15px;
	display: block;
	font-size: 1.2rem;
	text-align: center;
	background: rgba(37, 21, 3, 0.95);
	
	color: var(--color-white);
	line-height: 1;
}
@media screen and (max-width: 599px) {
	.p-bottom-utility__item a {
		padding-block: 12px;
		letter-spacing: 0;
	}
}
.p-bottom-utility__item a:before {
	margin-bottom: 0;
	margin-inline: auto;
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
}
.p-bottom-utility__item.-schedule a:before {
	width: 16px;
	aspect-ratio: 1;
	margin-bottom: 1px;

	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\eb45";	
	color:#fff;
	font-size: 2.3rem;	
}
.p-bottom-utility__item.-access a:before {
	width: 12px;
	aspect-ratio: 12 / 16;
	margin-bottom: 1px;
	
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\e0c8";	
	color:#fff;
	font-size: 2.2rem;
}
.p-bottom-utility__item.-contact a:before {
	width: 18px;
	aspect-ratio: 18 / 14;
	margin-bottom: 3px;

	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\ebcc";/*e158*/	
	color:#fff;
	font-size: 2rem;		
}
.p-bottom-utility__item a:after {
	width: 1px;
	height: 100%;
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	background: var(--color-gray-2);
}
.p-bottom-utility__item:nth-last-of-type(1) a:after {
	display: none;
}



/* =================================================
Object
================================================= */

/*---------- コンテンツ幅 ----------*/
.c-cont-xl { /* デザインに合わせて変更 */
	max-width: 1660px;
	margin: auto;
}
.c-cont-lg { /* デザインに合わせて変更 */
	max-width: 1520px;
	margin: auto;
}
.c-cont-md { /* デザインに合わせて変更 */
	max-width: 1200px;
	margin: auto;
}
.c-cont-sm { /* デザインに合わせて変更 */
	max-width: 770px;
	margin: auto;
}
@media screen and (max-width: 1760px) {
	.c-cont-xl { width: calc(100% - 100px);}
}
@media screen and (max-width: 1620px) {
	.c-cont-lg { width: calc(100% - 100px);}
}
@media screen and (max-width: 1300px) {
	.c-cont-md { width: calc(100% - 100px);}
	#news_lesson .c-cont-md{ width: calc(100% - 0px);}
/*	#pg_lesson .c-cont-md{ width: calc(100% - 100px);}*/
}
@media screen and (max-width: 1100px) {
	.c-cont-sm { width: calc(100% - 100px);}
}
@media screen and (max-width: 1024px) {
	.c-cont-xl,
	.c-cont-lg,
	.c-cont-md,
	.c-cont-sm { width: calc(100% - 80px);}
}

@media screen and (max-width: 767px) {
	.c-cont-xl,
	.c-cont-lg,
	.c-cont-md,
	.c-cont-sm { width: 90%;}
}

/*---------- Button ----------*/
.c-btn-def {
	width: 180px;
}
.p-tp-news .c-btn-def {
	margin-top: 60px;
	margin-inline: auto;
}
.c-btn-def_nm{
	margin-top: 20px;
}
@media screen and (max-width: 767px) {
	.c-btn-def_nm {
		margin-top: 50px;
	}
	.c-btn-def_nm a {
	padding-block: 14px 16px;
	display: block;
	font-size: 1.4rem;
	letter-spacing: .05em;
	line-height: 1;
	text-align: center;
	border: 1px solid;
	border-radius: 30px;
}
	
	
	
}
.c-btn-def a {
	padding-block: 14px 16px;
	display: block;
	font-size: 1.4rem;
	letter-spacing: .05em;
	line-height: 1;
	text-align: center;
	border: 1px solid;
	border-radius: 30px;
}

.c-btn-archive a {
	padding-bottom: 15px;
	position: relative;
	line-height: 1;
	letter-spacing: .05em;
	border-bottom: 1px solid var(--color-gray-2);
}
.c-btn-archive a:after {
	width: 100%;
	height: 1px;
	content: '';
	position: absolute;
	bottom: -1px;
	left: 0;
	background: white;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .2s;
}
@media (hover: hover) and (pointer:fine) {
	.c-btn-archive a:hover:after {
		transform: scale(1, 1);
		transform-origin: left top;
	}
}

.c-btn-more {
	font-size: 0;
}
.c-btn-more a {
	display: block;
}
.p-tp-link.-even .c-btn-more {
	margin-right: 33px;
}
@media screen and (max-width: 767px) {
	.p-tp-link.-even .c-btn-more {
		margin-right: 25px;
	}
}
.p-facility-box__header .c-btn-more {
	padding-top: 10px;
	text-align: right;
}
@media screen and (max-width: 767px) {
	.p-facility-box__header .c-btn-more {
		width: 100%;
		padding-top: 5px;
	}
}
.c-btn-more .c-btn-more--inner {
	position: relative;
}
.c-btn-more .c-btn-more--inner:after {
	width: 20px;
	height: 1px;
	content: '';
	position: absolute;
	top: -5px;
	right: -30px;
	transition: all .3s ease-in-out;
	background: white;
}
@media screen and (max-width: 767px) {
	.c-btn-more .c-btn-more--inner:after {
		width: 10px;
		right: -20px;
	}
}
.c-btn-more .c-btn-more--inner span {
	display: inline-block;
	font-family: var(--font-ct);
	font-size: 1.4rem;
	letter-spacing: .2em;
	line-height: 1;
	transition: .5s ease-in-out;
}
@media screen and (max-width: 767px) {
	.c-btn-more .c-btn-more--inner span {
		font-size: 1.2rem;
	}
}
.c-btn-more .c-btn-more--inner span:nth-of-type(4) {
	margin-right: .5em;
}
@media (hover: hover) and (pointer: fine) {
	.c-btn-more a:hover .c-btn-more--inner span,
	.p-tp-link a:hover .c-btn-more .c-btn-more--inner span {
		margin-right: .1em;
	}
	.c-btn-more a:hover .c-btn-more--inner span:nth-of-type(1) {
		transition-delay: .02s;
	}
	.c-btn-more a:hover .c-btn-more--inner span:nth-of-type(2) {
		transition-delay: .04s;
	}
	.c-btn-more a:hover .c-btn-more--inner span:nth-of-type(3) {
		transition-delay: .06s;
	}
	.c-btn-more a:hover .c-btn-more--inner span:nth-of-type(4) {
		margin-right: .6em;
		transition-delay: .08s;
	}
	.c-btn-more a:hover .c-btn-more--inner span:nth-of-type(5) {
		transition-delay: .10s;
	}
	.c-btn-more a:hover .c-btn-more--inner span:nth-of-type(6) {
		transition-delay: .12s;
	}
	.c-btn-more a:hover .c-btn-more--inner span:nth-of-type(7) {
		transition-delay: .14s;
	}
	.c-btn-more a:hover .c-btn-more--inner span:nth-of-type(8) {
		transition-delay: .16s;
	}

	.p-tp-link a:hover .c-btn-more .c-btn-more--inner span:nth-of-type(1) {
		transition-delay: .52s;
	}
	.p-tp-link a:hover .c-btn-more .c-btn-more--inner span:nth-of-type(2) {
		transition-delay: .54s;
	}
	.p-tp-link a:hover .c-btn-more .c-btn-more--inner span:nth-of-type(3) {
		transition-delay: .56s;
	}
	.p-tp-link a:hover .c-btn-more .c-btn-more--inner span:nth-of-type(4) {
		margin-right: .6em;
		transition-delay: .58s;
	}
	.p-tp-link a:hover .c-btn-more .c-btn-more--inner span:nth-of-type(5) {
		transition-delay: .60s;
	}
	.p-tp-link a:hover .c-btn-more .c-btn-more--inner span:nth-of-type(6) {
		transition-delay: .62s;
	}
	.p-tp-link a:hover .c-btn-more .c-btn-more--inner span:nth-of-type(7) {
		transition-delay: .64s;
	}
	.p-tp-link a:hover .c-btn-more .c-btn-more--inner span:nth-of-type(8) {
		transition-delay: .66s;
	}
}

/*---------- Title ----------*/
.c-sec-hgroup {
	margin-bottom: 70px;
	text-align: center;
	letter-spacing: 0.1em;
	font-weight: 600;
}
.p-tp-fb h2.c-sec-hgroup {
	margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
	.c-sec-hgroup {
		margin-bottom: 40px;
	}
	.p-tp-fb h2.c-sec-hgroup {
	margin-bottom: 20px;
   }
}
.c-sec-hgroup span {
	display: block;
	line-height: 1;
}
span.c-sec-ttl--en {
	margin-bottom: 10px;
	font-family: var(--font-ct);
	font-size: 4.8rem;
}
@media screen and (max-width: 1024px) {
	span.c-sec-ttl--en {
		font-size: 4rem;
	}
}
@media screen and (max-width: 767px) {
	span.c-sec-ttl--en {
		margin-bottom: 5px;
		font-size: 3rem;
	}
}

span.c-sec-ttl--jp {
	margin-bottom: 10px;
	font-family: var(--font-ct);
	font-size: 4.0rem;
	line-height: 1.6;
	font-weight:600;
}
@media screen and (max-width: 1024px) {
	span.c-sec-ttl--jp {
		font-size: 3.6rem;
	}
}
@media screen and (max-width: 767px) {
	span.c-sec-ttl--jp {
		margin-bottom: 5px;
		font-size: 2.4rem;
		line-height: 1.6;
	}
}
span.c-sec-ttl--en2 {
	margin-bottom: 10px;
	font-family: var(--font-ct);
	font-size: 3.6rem;
	letter-spacing: 0.02em;
}
@media screen and (max-width: 1024px) {
	span.c-sec-ttl--en2 {
		font-size: 2.2rem;
	}
}
@media screen and (max-width: 767px) {
	span.c-sec-ttl--en2 {
		margin-bottom: 5px;
		font-size: 3rem;
	}
}
span.c-sec-ttl--ja {
	color: var(--color-gray);
	letter-spacing: .2em;
}
span.c-sec-ttl--sub {
	letter-spacing: .2em;
	font-family: var(--font-family-goc);
	font-size: 1.0em;
}
.p-tp-acfb span.c-sec-ttl--sub {
		font-size: 0.8em;
}
.c-tp-link__hgroup {
	margin-bottom: 30px;
	color: var(--color-white);
}
@media screen and (max-width: 1200px) {
	.c-tp-link__hgroup {
		margin-bottom: 25px;
	}
}
@media screen and (max-width: 1024px) {
	.c-tp-link__hgroup {
		margin-bottom: 20px;
	}
	span.c-sec-ttl--sub {
		font-size: 1.0em;
	}
}
@media screen and (max-width: 767px) {
	.c-tp-link__hgroup {
		margin-bottom: 15px;
	}
	span.c-sec-ttl--sub {
		font-size: 0.8em;
	}
}
.c-tp-link__hgroup span {
	/*display: block;*/
	letter-spacing: 0.1em;
	line-height: 1;
}
.c-tp-link__ttl--en {
	margin-bottom: 15px;
	font-family: var(--font-family-goc);
	font-size: 4.4rem;
	font-weight: 550;
	color: var(--color-white);
	letter-spacing: -0.02em!important;
}
.c-tp-link__ttl--ja {
	font-size: 1.6rem;
	color: var(--color-white);
}
@media screen and (max-width: 1200px) {
	.c-tp-link__ttl--en {
		font-size: 4.0rem;
	}
}
@media screen and (max-width: 1024px) {
	.c-tp-link__ttl--en {
		margin-bottom: 10px;
		font-size: 3.4rem;
	}
}
@media screen and (max-width: 767px) {
	.c-tp-link__ttl--en {
		margin-bottom: 8px;
		font-size: 2.8rem;
	}
	.c-tp-link__ttl--ja {
		font-size: 1.4rem;
		letter-spacing: .05em;
	}
}

.c-sec-ttl02 {
	margin-bottom: 45px;
	padding-bottom: 25px;
	position: relative;
	line-height: 1;
	border-bottom: 1px solid #4b3624;
	font-weight: 600;
	text-align: center;
}
.p-price-group .c-sec-ttl02 {
	margin-bottom: 25px;
}
.p-dresscode-sec .c-sec-ttl02 {
	margin-bottom: 30px;
}
.p-access-how__group .c-sec-ttl02 {
	margin-bottom: 15px;
}
.p-policy-sec .c-sec-ttl02 {
	margin-bottom: 30px;
}
.p-contact-sec .c-sec-ttl02 {
	margin-bottom: 30px;
}
.p-facility-cont .c-sec-ttl02 {
	margin-top: 7rem;
}
@media screen and (max-width: 767px) {
	.c-sec-ttl02 {
		font-size: 2.0rem;
		margin-bottom: 20px !important;
		padding-bottom: 20px;
		text-align: center!important;
	}
	.p-policy-sec .c-sec-ttl02 {
		margin-bottom: 20px !important;
	}
	.p-contact-sec .c-sec-ttl02 {
		margin-bottom: 25px !important;
	}
}

/*
.c-sec-ttl02:after {
	width: 50px;
	height: 1px;
	content: '';
	position: absolute;
	bottom: -1px;
	left: 0;
	background: #8e7e68;
}
@media screen and (max-width: 1024px) {
	.c-sec-ttl02:after {
		width: 40px;
	}
}
@media screen and (max-width: 767px) {
	.c-sec-ttl02:after {
		width: 30px;
	}
}
*/
.c-sec-ttl02 span {
	letter-spacing: .2em;
	line-height: 1;
}
span.c-sec-ttl02--main {
	font-size: 2.8rem;
	font-weight: 600;
}
.p-access-how__group span.c-sec-ttl02--main {
	line-height: 1.3;
}
span.c-sec-ttl02--main:nth-of-type(3) {
	margin-left: 15px;
}
@media screen and (max-width: 1024px) {
	span.c-sec-ttl02--main {
		font-size: 2rem;
	}
}
@media screen and (max-width: 767px) {
	span.c-sec-ttl02--main {
		font-size: 2rem;
	}
}
span.c-sec-ttl02--sub {
	margin-left: 35px;
	display: inline-block;
	color: #445832;
	font-size: 1.8rem;
}
span.c-sec-ttl02--sub.-white {
	color: white;
}
.p-history-tournament span.c-sec-ttl02--sub {
	margin-left: 10px;
}
@media screen and (max-width: 1024px) {
	span.c-sec-ttl02--sub {
		margin-left: 30px;
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	span.c-sec-ttl02--sub {
		margin-left: 25px;
		font-size: 1.4rem;
	}
}
.c-sec-ttl02--num {
	margin-inline: 14px 15px;
	color: var(--color-red);
	font-size: 2rem;
	vertical-align: 3px;
}
@media screen and (max-width: 1024px) {
	.c-sec-ttl02--num {
		margin-inline: 11px 12px;
		font-size: 1.6rem;
		vertical-align: 1px;
	}
}
@media screen and (max-width: 767px) {
	.c-sec-ttl02--num {
		margin-inline: 6px 7px;
		font-size: 1.4rem;
	}
}



.c-sbttl01 {
	margin-bottom: 25px;
	font-size: 2rem;
	letter-spacing: .2em;
	line-height: 1;
	font-weight: 600;
}
@media screen and (max-width: 1024px) {
	.c-sbttl01 {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 767px) {
	.c-sbttl01 {
		font-size: 1.8rem;
		letter-spacing: .1em;
	}
}
.c-sbttl01:before {
	width: 4px;
	height: 30px;
	margin-right: 15px;
	content: '';
	display: inline-block;
	background: #927e68;
	vertical-align: -8px;
}
@media screen and (max-width: 1024px) {
	.c-sbttl01:before {
		height: 24px;
		margin-right: 12px;
		vertical-align: -6px;
	}
}
@media screen and (max-width: 767px) {
	.c-sbttl01:before {
		height: 25px;
		vertical-align: -5px;
	}
}


.c-sbttl01b {
	margin-bottom: 25px;
	font-size: 2rem;
	letter-spacing: .2em;
	line-height: 1;
	font-weight: 600;
}
@media screen and (max-width: 1024px) {
	.c-sbttl01b {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 767px) {
	.c-sbttl01b {
		font-size: 1.8rem;
		letter-spacing: .1em;
	}
}
.c-sbttl01b:before {
	width: 4px;
	height: 30px;
	margin-right: 15px;
	content: '';
	display: inline-block;
	background: #bbc52e;
	vertical-align: -8px;
}
@media screen and (max-width: 1024px) {
	.c-sbttl01b:before {
		height: 24px;
		margin-right: 12px;
		vertical-align: -6px;
	}
}
@media screen and (max-width: 767px) {
	.c-sbttl01b:before {
		height: 25px;
		vertical-align: -5px;
	}
}







/* Page Title */
.c-page-mv {
	width: 100%;
	height: 60vh;
	height: 60svh;
	max-height: 500px;
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	opacity: 0;
	animation: blur 1.0s ease-in-out 0s forwards;
	margin-bottom: 20px;
}
@media screen and (max-width: 1024px) {
	.c-page-mv {
		height: 340px;
	}
}
@media screen and (max-width: 767px) {
	.c-page-mv {
		height: 260px;
	}
}
.c-page-mv.-outline {
	background-image: url("../images/outline_mv.jpg");
}
.c-page-mv.-lesson {
	background-image: url("../images/lesson_mv.jpg");
}
.c-page-mv.-facility {
	background-image: url("../images/facility_mv.jpg");
}
.c-page-mv.-instructors {
	background-image: url("../images/instructors_mv.jpg");
}
.c-page-mv.-news {
	background-image: url("../images/news_mv.jpg");
}
.c-page-mv.-access {
	background-image: url("../images/access_mv.jpg");
}
.c-page-mv.-schedule {
	background-image: url("../images/schedule_mv.jpg");
}
.c-page-mv.-privacypolicy {
	background-image: url("../images/privacypolicy_mv.jpg");
}
.c-page-mv.-sitepolicy {
	background-image: url("../images/sitepolicy_mv.jpg");
}
.c-page-mv.-acform {
	background-image: url("../images/acform_mv.jpg");
}
.c-page-mv.-company {
	background-image: url("../images/company_mv.jpg");
}
.c-page-mv.-sitepolicy {
	background-image: url("../images/sitepolicy_mv.jpg");
}
.c-page-mv.-privacypolicy {
	background-image: url("../images/privacypolicy_mv.jpg");
}
.c-page-mv.-sitemap {
	background-image: url("../images/sitemap_mv.jpg");
}

/*
.c-page-mv:before {
	width: 100%;
	height: 26vh;
	height: 26svh;
	max-height: 240px;
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
	background: linear-gradient(to bottom,  rgba(18, 18, 18, 0) 0%,rgba(18, 18, 18, 1) 90%);
}
@media screen and (max-width: 1024px) {
	.c-page-mv:before {
		height: 110px;
		background: linear-gradient(to bottom,  rgba(18, 18, 18, 0) 0%,rgba(18, 18, 18, 1) 80%);
	}
}
@media screen and (max-width: 767px) {
	.c-page-mv:before {
		height: 75px;
		background: linear-gradient(to bottom,  rgba(18, 18, 18, 0) 0%,rgba(18, 18, 18, 1) 60%);
	}
}
*/
.c-page-hgroup {
	width: 100%;
	padding-left: 160px;
	position: absolute;
	bottom: 180px;
	z-index: 1;
	opacity: 0;
	animation: blur 1.0s ease-in-out 0s forwards;
}
@media screen and (max-width: 1440px) {
	.c-page-hgroup {
		padding-left: 130px;
	}
}
@media screen and (max-width: 1200px) {
	.c-page-hgroup {
		padding-left: var(--inline-page);
	}
}
@media screen and (max-width: 1024px) {
	.c-page-hgroup {
		bottom: 80px;
	}
}
@media screen and (max-width: 767px) {
	.c-page-hgroup {
		bottom: 60px;
	}
}
@media screen and (max-height: 1350px) and (orientation: landscape) {
	.c-page-hgroup {
		bottom: 13vh;
		bottom: 13svh;
	}
}
.c-page-hgroup span {
	display: block;
/*	letter-spacing: .2em;*/
	line-height: 1;
	color: var(--color-white);
}
span.c-page-ttl--en {
	font-size: 2.6rem;
	font-family: var(--font-ct);
}
@media screen and (max-width: 1024px) {
	span.c-page-ttl--en {
		font-size: 2rem;
	}
}
@media screen and (max-width: 767px) {
	span.c-page-ttl--en {
		font-size: 1.5rem;
	}
}
span.c-page-ttl--ja {
	margin-bottom: 40px;
	font-size: 4rem;
}
@media screen and (max-width: 1440px) {
	span.c-page-ttl--ja {
		font-size: 5.5rem;
	}
}
@media screen and (max-width: 1200px) {
	span.c-page-ttl--ja {
		margin-bottom: 30px;
		font-size: 4.5rem;
	}
}
@media screen and (max-width: 1024px) {
	span.c-page-ttl--ja {
		margin-bottom: 24px;
		font-size: 3.5rem;
	}
}
@media screen and (max-width: 767px) {
	span.c-page-ttl--ja {
		margin-bottom: 15px;
		font-size: 3rem;
		letter-spacing: .1em;
	}
}

/*---------- Common ----------*/
.c-txt-def {
	margin-bottom: 30px;
	font-size: 1.6rem;
	letter-spacing: 0.15em;
	line-height: 2.2;
	color: var(--color-black);
}
.c-txt-def,
.c-txt-def span,
.c-txt-def strong{
	font-family: var(--font-family-goc);
}
@media screen and (max-width: 1024px) {
	.c-txt-def {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 767px) {
	.c-txt-def {
		margin-bottom: 30px;
		font-size: 1.4rem;
		letter-spacing: .1em;
		line-height: 2;
	}
}

/*---------- Form ----------*/
.c-form {
	width: 100%;
	height: 60px;
	padding: 15px 30px 15px 25px;
	background: #1e221b;
	border: none;
}
@media screen and (max-width: 767px) {
	.c-form {
		height: 50px;
	}
}
.c-form-txtarea {
	width: 100%;
	height: 300px;
	padding: 10px 15px;
	background: #1e221b;
	border: none;
}
@media screen and (max-width: 767px) {
	.c-form-txtarea {
		height: 200px;
	}
}

.c-set-btn {
	width: 400px;
}
.c-set-btn.back {
	display: none;
}
@media screen and (max-width: 767px) {
	.c-set-btn {
		width: 80%;
		max-width: 300px;
	}
}
.c-submit-btn {
	width: 100%;
	padding-block: 29px;
	display: block;
	color: #fff;
	font-size: 2rem;
	letter-spacing: .2em;
	line-height: 1;
	text-align: center;
	background: #8e7e68;
	border: none;
	transition: all .3s ease-in-out;
	cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
	.c-submit-btn:hover {
		background: #1e221b;
	}
}
@media screen and (max-width: 767px) {
	.c-submit-btn {
		padding-block: 20px;
		font-size: 1.6rem;
	}
}

/* Sp Header
------------------------------------------------- */
/*---------- Compornent ----------*/
.c-btn-nav {
	width: 80px;
	aspect-ratio: 1;
	display: none;
	position: fixed;
	top: 23px;
	right: 50px;
	z-index: 2000;
	overflow: hidden;
	opacity: 0;
	animation: blur 1.0s ease-in-out 1s forwards;
}
@media screen and (max-width: 1024px) {
	.c-btn-nav {
		width: 60px;
		top: 20px;
		right: var(--inline-page);
	}
}
@media screen and (max-width: 767px) {
	.c-btn-nav {
		width: 50px;
		top: 12px;
	}
}
.c-btn-nav__toggle {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 2000;/*0*/
	cursor: pointer;
	border: 1px solid #4a3722;
	border-radius: 100%;
	color: var(--color-white);
}
.c-btn-nav__toggle.is-active {
	border: none;
}
.c-btn-nav__toggle span {
	width: 36px;
	height: 1px;
	display: inline-block;
	position: absolute;
	left: 22px;
	z-index: 2000;/*2*/
	background: #4a3722;
	transition: all .2s ease-in-out;
}
.c-btn-nav__toggle span:nth-of-type(1) {
	top: 31px;
}
.c-btn-nav__toggle span:nth-of-type(2) {
	top: 39px;
}
.c-btn-nav__toggle span:nth-of-type(3) {
	top: 47px;
}
.c-btn-nav__toggle.is-active span:nth-of-type(1) {
	transform: translateY(8px) rotate(30deg);
    border: 1px solid #fff;
}
.c-btn-nav__toggle.is-active  span:nth-of-type(2) {
	opacity: 0;
}
.c-btn-nav__toggle.is-active span:nth-of-type(3) {
	transform: translateY(-8px) rotate(-30deg);
    border: 1px solid #fff;
}
@media (hover: hover) and (pointer: fine) {
	.c-btn-nav__toggle:hover span:nth-of-type(2) {
		width: 24px;
	}
	.c-btn-nav__toggle:hover span:nth-of-type(3) {
		width: 12px;
	}
	.c-btn-nav__toggle.is-active:hover span {
		width: 36px !important;
	}
}
@media screen and (max-width: 1024px) {
	.c-btn-nav__toggle span {
		width: 28px;
		left: 15px;
	}
	.c-btn-nav__toggle span:nth-of-type(1) {
		top: 21px;
	}
	.c-btn-nav__toggle span:nth-of-type(2) {
		top: 29px;
	}
	.c-btn-nav__toggle span:nth-of-type(3) {
		top: 37px;
	}

	@media (hover: hover) and (pointer: fine) {
		.c-btn-nav__toggle:hover span:nth-of-type(2) {
			width: 19px;
		}
		.c-btn-nav__toggle:hover span:nth-of-type(3) {
			width: 10px;
		}
	}
}
@media screen and (max-width: 767px) {
	.c-btn-nav__toggle span {
		width: 24px;
		left: 12px;
	}
	.c-btn-nav__toggle span:nth-of-type(1) {
		top: 18px;
	}
	.c-btn-nav__toggle span:nth-of-type(2) {
		top: 24px;
	}
	.c-btn-nav__toggle span:nth-of-type(3) {
		top: 30px;
	}
	.c-btn-nav__toggle.is-active span:nth-of-type(1) {
		transform: translateY(6px) rotate(20deg);
	    border: 1px solid #fff;
	}
	.c-btn-nav__toggle.is-active span:nth-of-type(3) {
		transform: translateY(-6px) rotate(-20deg);
		border: 1px solid #fff;
	}
}

/* ---------- Project ----------*/
.p-nav-sp {
	width: 100%;
	height: 100vh;
	height: 100svh;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	background: #281c0f;
/*background: rgb(252,251,249);
background: linear-gradient(180deg, rgba(252,251,249,1) 0%, rgba(26,14,1,1) 46%, rgba(26,14,1,1) 100%);*/
}
.p-nav-sp__outer {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	overflow: auto;
}
@media screen and (max-device-height: 844px) and (orientation: portrait) {
	.p-nav-sp__outer {
		padding-block: 30px 80px;
		display: block;
	}
}
.p-nav-sp__inner {
	width: 100%;
	padding-inline: var(--inline-page);
	position: relative;
	padding-top: 100px;
}

.p-nav-sp__utility {
	margin-bottom: 40px;
}
.p-nav-sp-utility__ul {
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
}
.p-nav-sp-utility__li {
	width: 35%;
	height: 36px;
}
@media screen and (max-width: 599px) {
	.p-nav-sp-utility__li {
		width: 48%;
	}
}
.p-nav-sp-utility__li a {
	width: 100%;
	height: 100%;
	padding-block: 9px;
	display: block;
	letter-spacing: .05em;
	line-height: 1;
	text-align: center;
	background: var(--color-white);
	border-radius: 20px;
	transition: all var(--hover-option);
}
.p-nav-sp-utility__li.-schedule a {
	color: var(--color-white);
	background: #a62230;
	
}
.p-nav-sp-utility__li.-contact a {
	color: var(--color-white);
	background: #4ba3d1;
	
}
@media (hover: hover) and (pointer: fine) {
	.p-nav-sp-utility__li a:hover {
		background: #595959;
	}
}
@media screen and (max-width: 599px) {
	.p-nav-sp-utility__li a {
		padding-block: 10px;
		font-size: 1.3rem;
	}
}
.p-nav-sp-utility__li a:before {
	margin-right: 10px;
	display: inline-block;
	content: '';
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
}
.p-nav-sp-utility__li.-schedule a:before {
	width: 16px;
	aspect-ratio: 1;

	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\eb45";	
    font-size: 2.2rem;	
}
.p-nav-sp-utility__li.-access a:before {
	width: 12px;
	aspect-ratio: 12 / 16;

	vertical-align:-5px;
	font-family: "Material Icons";
	content: "\e0c8";		
	color:#4b3621;
	font-size: 2.2rem;	
}

.p-nav-sp-utility__li.-contact a:before {
	width: 18px;
	aspect-ratio: 18 / 14;

	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\ebcc";/*e158*/	
	color: var(--color-white);
	font-size: 2rem;	
}

.p-nav-sp-utility__li.-newsic a:before {
	width: 18px;
	aspect-ratio: 1;

	vertical-align:-5px;
	font-family: "Material Icons";
	content: "\e7f7";	
	color:#4b3621;
	font-size: 2.2rem;	
}

@media screen and (max-width: 599px) {
	.p-nav-sp-utility__li a:before {
		margin-right: 6px;
	}
	.p-nav-sp-utility__li.-schedule a:before {
		width: 20px;
	}
	.p-nav-sp-utility__li.-access a:before {
		width: 20px;
	}
	.p-nav-sp-utility__li.-contact a:before {
		width: 20px;
	}
	.p-nav-sp-utility__li.-newsic a:before {
		width: 20px;
	}
}

.p-nav-sp__main {
	margin-bottom: 40px;
	padding-bottom: 40px;
	justify-content: center;
	gap: 10px;
	border-bottom: 1px solid #7b7b7b;
}
.p-nav-sp__main a{
	color: var(--color-white);
}
.p-nav-sp-main__ul {
	width: 35%;
}
@media screen and (max-width: 599px) {
	.p-nav-sp-main__ul {
		width: 48%;
	}
}
.p-nav-sp-main__li {
	margin-bottom: 10px;
}
.p-nav-sp-main__li:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-nav-sp-main__li a {
	letter-spacing: .05em;
}
@media screen and (max-width: 599px) {
	.p-nav-sp-main__li a {
		letter-spacing: 0;
	}
}
.p-nav-sp-main__li a:before {
	width: 15px;
	height: 1px;
	margin-right: 10px;
	content: '';
	display: inline-block;
	background: var(--color-gray-2);
	vertical-align: 5px;
}
@media screen and (max-width: 599px) {
	.p-nav-sp-main__li a:before {
		width: 10px;
	}
}

@media screen and (max-width: 767px) {
.p-nav-sp__info{
	    display: flex;
        flex-direction: column;
        align-items: center;
        order: 2;
        }
 }



.sp__info2 .l-footer-info__add,
.sp__info2 .l-footer-info__add span,
.sp__info2 .l-footer-info__map a,
.sp__info2 .l-footer-info__tel a,
.sp__info2 .l-footer-info__tel span,
.sp__info2 .l-footer-info__fax,
.sp__info2 .l-footer-info__fax span{
	color: var(--color-white);
}
.sp__info2 .l-footer-info__logo {
	width: 216px;
	margin-bottom: 20px;
}
.sp__info2 .l-footer-info__logo img {
	width: 100%;
}
.sp__info2 .l-footer-info__add,
.sp__info2 .l-footer-info__add span {
	font-size: 1.4rem;
	letter-spacing: .05em;
	line-height: 1;
}
.sp__info2 .l-footer-info__add {
	margin-bottom: 30px;
}
@media screen and (max-width: 1024px) {
.sp__info2 .l-footer-info__add {
	margin-bottom: 0px; 
	text-align: center;
	align-items: center;
  }	
.sp__info2 .l-footer-info__map a {
	text-align: center;
	align-items: center;
	justify-content: center;
  }		
}
@media screen and (max-width: 959px) {
.l-footer-info__add {
	font-size: 1.6rem;
	line-height: 1;
	margin-bottom: 0px;
 }
}

.sp__info2 .l-footer-info__tel,
.sp__info2 .l-footer-info__tel a {
	font-size: 1.5rem;
	line-height: 1;
}
.sp__info2 .l-footer-info__tel span,
.sp__info2 .l-footer-info__tel2 span,
.sp__info2 .l-footer-info__fax span {
	font-size: 1.2rem;
}	
.sp__info2 .l-footer-info__tel a,
.sp__info2 .l-footer-info__tel span,
.sp__info2 .l-footer-info__tel2,
.sp__info2 .l-footer-info__tel2 span {
	color: var(--color-white);
}
.sp__info2 .l-footer-info__tel2,
.sp__info2 .l-footer-info__fax {
	font-size: 1.5rem;
}
.sp__info2 .l-footer-info__tel a {
        height: 100%;
        padding-block: 14px;
        display: block;
        font-size: 2rem;
        text-align: center;
        border: 1px solid;
        border-radius: 40px;
    }

/* Index
------------------------------------------------- */
/* ---------- Main Visual ----------*/
/*----- Compornent -----*/

/*----- Project -----*/
.p-mv {
	width: 100%;
	height: 100vh;
	height: 100svh;
	margin-bottom: 0px;
	position: relative;
	z-index: 0;
	overflow: hidden;
}
.p-mv:before,
.p-mv:after {
	content: '';
	position: absolute;
}
.p-mv:before {
	width: 100%;
	height: 30vh;
	left: 0;
	bottom: 0;
	z-index: 1;
}
@media screen and (max-width: 1200px) {
	.p-mv:before {
		height: 24vh;
	}
}
@media screen and (max-width: 1024px) {
	.p-mv:before {
		height: 20vh;
	}
}
@media screen and (max-width: 767px) {
	.p-mv:before {
		height: 16vh;
	}
	.p-mv {
	margin-bottom: 0px;
    }
}

@media screen and (max-width: 1200px) {
	.p-mv:after {
		width: 564px;
		bottom: 4vh;
		bottom: 4svh;
	}
}
@media screen and (max-width: 1024px) {
	.p-mv:after {
		width: 451px;
		bottom: 3.2vh;
		bottom: 3.2svh;
	}
}
@media screen and (max-width: 767px) {
	.p-mv:after {
		width: 360px;
		bottom: calc(2.6vh + 50px);
		bottom: calc(2.6svh + 50px);
	}
}
.p-mv .slick-list,
.p-mv .slick-track {
	height: 100%;
}
.p-mv__slider {
	opacity: 0;
	animation: blur 1.0s ease-in-out 0s forwards;
}
.p-mv__slider,
.p-mv-slider__item {
	width: 100%;
	height: 100%;
}
.p-mv-slider__item picture {
	display: inline;
}
.p-mv-slider__item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Catch */
.p-mv__catch {
	position: absolute;
	top: 23vh;
	top: 23svh;
	right: 150px;
	z-index: 1;
	opacity: 0;
	animation: blur 1.0s ease-in-out 0s forwards;
	font-family: var(--font-family-goc);
	text-align: right; 
	font-size: 4.2rem;
	font-weight: 600;
	line-height: 1.6;
	
  text-shadow:
    0 0 4px white,
    0 0 8px white;
}
@media screen and (max-width: 1920px) {
	.p-mv__catch {
		right: 4.8%;
	}
}
@media screen and (max-width: 1200px) {
	.p-mv__catch {
		bottom: 10vh;
		bottom: 10svh;
	}
}
@media screen and (max-width: 1024px) {
	.p-mv__catch {
		bottom: 8.5vh;
		bottom: 8.5svh;
	}
}
@media screen and (max-width: 767px) {
	.p-mv__catch {
		bottom: calc(6.5vh + 50px);
		bottom: calc(6.5svh + 50px);
		left: var(--inline-page);
		font-size: 3.1rem;
		letter-spacing: -0.05em;
	}
}

.p-mv__catch__kana{
	font-size: 3.8rem;	
	font-weight: 600;
    font-family: var(--font-family-goc);
}
.p-mv__catch__sub{
	font-size: 2.6rem;	
	font-weight: 600;
    font-family: var(--font-family-goc);
}
.p-mv-catch__copy--en {
	margin-bottom: 20px;
	display: inline-block;
	position: relative;
	font-family: var(--font-eb);
	font-size: 1.3rem;
	letter-spacing: .2em;
	line-height: 1;
	color: var(--color-white);
}
@media screen and (max-width: 767px) {
.p-mv__catch__kana{
	font-size: 2.4rem;
	letter-spacing: -0.05em;
	}
	
.p-mv__catch__sub{
	font-size: 1.6rem;
	}
	.p-mv-catch__copy--en {
		font-size: 1.1rem;
		letter-spacing: .1em;
	}
}
.p-mv-catch__copy--en:after {
	width: 180px;
	height: 1px;
	content: '';
	position: absolute;
	top: 50%;
	right: -205px;
	background: white;
}
@media screen and (max-width: 1200px) {
	.p-mv-catch__copy--en:after {
		width: 140px;
		right: -165px;
	}
}
@media screen and (max-width: 1024px) {
	.p-mv-catch__copy--en:after {
		width: 110px;
		right: -135px;
	}
}
@media screen and (max-width: 767px) {
	.p-mv-catch__copy--en:after {
		width: 90px;
		right: -110px;
	}
}
.p-mv-catch__copy--ja {
	display: block;
	font-size: 3.6rem;
	letter-spacing: 0;
	line-height: 1.7;
	color: var(--color-white);
}
@media screen and (max-width: 1200px) {
	.p-mv-catch__copy--ja {
		font-size: 3rem;
	}
}
@media screen and (max-width: 1024px) {
	.p-mv-catch__copy--ja {
		font-size: 2.5rem;
	}
}
@media screen and (max-width: 767px) {
	.p-mv-catch__copy--ja {
		font-size: 2rem;
	}
}

/* ---------- Top News ----------*/
.p-tp-news {
	margin-bottom: 150px;
	justify-content: space-between;
	gap: 0 60px;
}
.p-tp-news h2.c-sec-hgroup {
	margin-bottom: 0;
}
@media screen and (max-width: 959px) {
	.p-tp-news {
		margin-bottom: 100px;
		flex-direction: column;
		align-items: center;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-news {
		display: block;
		margin-bottom: 80px;
	}
		.p-tp-news h2.c-sec-hgroup {
		margin: 0px;
			padding: 0;
			bottom:0;
			top:0;
			line-height: 1;
			vertical-align: bottom;
	}
}
/* Header */
.p-tp-news__header {
	width: 140px;
	padding-bottom: 13px;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	justify-content: space-between;
}
.p-tp-news__hgroup {
	text-align: left;
}
@media screen and (max-width: 959px) {
	.p-tp-news__header {
		width: 100%;
		margin-bottom: 50px;
		padding-bottom: 0;
	}
	.p-tp-news__hgroup {
		margin-bottom: 0;
		text-align: center;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-news__header {
		margin-bottom: 40px;
	}
}

/* Contents */
.p-news__cont{
    display: flex;
    justify-content: space-between;
/*    gap: 50px;*/
    margin-bottom: var(--cont_margin-bottom02);
}
.p-news__cont *{
/*	font-family: var(--font-family-goc);*/
    color: var(--color-black);
	font-size: 1.6rem;
}
.p-news__cont a:hover{
	text-decoration: underline;
	color: #4a3722;
}

@media screen and (max-width:820px) {
   .p-news__cont{
    display: block;
	padding-top: 0;
	margin-top: 0;  
    }
}

.p-news__list {
	width: 100%;
/*	border-top: 1px solid var(--color-black);*/
}
.p-news__list2 {
	width: 100%;
	background: #fff;
}
@media screen and (max-width: 959px) {
	.p-news__list,
	.p-news__list2 {
		width: 100%;
		display: block;
	}
		.p-news__list {
			margin-bottom: 40px;
	}
}
.p-news__item a {
	width: 100%;
	height: 100%;
	padding-block: 15px;
	padding-right: 15px;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
/*	gap: 50px;*/
	position: relative;
	border-bottom: 1px solid #eae7e5;/*c3bcb7*/
}
@media screen and (max-width: 767px) {
	.p-news__item a {
		padding-block: 20px;
		flex-direction: column;
		gap: 0;
	}
}
/*
.p-news__item a:before,
.p-news__item a:after {
	content: '';
	position: absolute;
}
.p-news__item a:before {
	width: 20px;
	height: 1px;
	position: absolute;
	top: 50%;
	right: 20px;
	background: var(--color-gray-2);
	transition: all .3s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.p-news__item a:hover:before {
		background: white;
		right: 10px;
	}
}
@media screen and (max-width: 767px) {
	.p-news__item a:before {
		width: 16px;
		right: 0;
	}
}
.p-news__item a:after {
	width: 100%;
	height: 1px;
	left: 0;
	bottom: -1px;
	background: white;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .6s;
}
@media (hover: hover) and (pointer: fine) {
	.p-news__item a:hover:after {
		transform: scale(1, 1);
		transform-origin: left top;
	}
}
*/
.p-news-item__date {
	width: 115px;
	padding-top: 3px;
	flex-shrink: 0;
font-family: var(--font-ct);
color: var(--color-black);	
font-size:1.8rem;	
}
@media screen and (max-width: 767px) {
	.p-news-item__date {
		width: 100%;
		margin-bottom: 5px;
		padding-top: 0;
	}
}
.p-news-item__ttl {
	width: calc(100% - 135px);
/*	padding-right: 50px;*/
	letter-spacing: .2em;
	font-family: var(--font-family-min);
	font-size:1.8rem;
}
.p-news-item__ttl2 {font-size:1.5rem;}
.p-news-item__ttl br {display: none;}
@media screen and (max-width: 767px) {
	.p-news-item__ttl {
		width: 100%;
		padding-right: 0px;
		line-height: 1.65;
		font-size:1.6rem;
	}
}

/* ---------- Top Link ----------*/
.p-tp-link {
	width: 100%;
	height: 600px;
	position: relative;
}
@media screen and (max-width: 1200px) {
	.p-tp-link {
		height: 480px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-link {
		height: 380px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-link {
		height: 300px;
	}
}
/*
.p-tp-link:after {
	position: absolute;
	bottom: -32px;
	color: rgba(255, 255, 255, .05);
	font-family: var(--font-ct);
	font-size: 16.5rem;
	letter-spacing: .1em;
	line-height: 1;
}
@media screen and (max-width: 1200px) {
	.p-tp-link:after {
		bottom: -26px;
		font-size: 13rem;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-link:after {
		bottom: -20px;
		font-size: 10rem;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-link:after {
		bottom: -16px;
		font-size: 8rem;
	}
}
@media screen and (max-width: 599px) {
	.p-tp-link:after {
		bottom: -13px;
		font-size: 6.5rem;
		letter-spacing: .05em;
	}
}
.p-tp-link.-odd:after {
	left: -20px;
}
.p-tp-link.-even:after {
	right: -20px;
}
.p-tp-link.-member:after {
	content: 'MEMBER';
}
.p-tp-link.-history:after {
	content: 'HISTORY';
}
.p-tp-link.-course:after {
	content: 'COURSE';
}
.p-tp-link.-facility:after {
	content: 'FACILITY';
}*/

.p-tp-link a {
	width: 100%;
	height: 100%;
	padding-top: 100px;
	display: block;
	position: relative;
	overflow: hidden;
}
@media screen and (max-width: 1200px) {
	.p-tp-link a {
		padding-top: 80px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-link a {
		padding-top: 65px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-link a {
		padding-top: 50px;
	}
}
.p-tp-link.-odd a {
	padding-left: var(--inline-page);
}
.p-tp-link.-even a {
	padding-right: var(--inline-page);
}
.p-tp-link a:before,
.p-tp-link a:after {
	width: 100%;
	height: 100%;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.p-tp-link a:before {
	background-repeat: no-repeat;
	background-size: cover;
	transition: transform .5s ease-in-out .5s;
}
.p-tp-link.-odd a:before {
	background-position: left center;
}
.p-tp-link.-even a:before {
	background-position: right center;
}
.p-tp-link.-member a:before {
	background-image: url("../images/top_link_bg01.jpg");
}
.p-tp-link.-history a:before {
	background-image: url("../images/top_link_bg02.jpg");
}
.p-tp-link.-course a:before {
	background-image: url("../images/top_link_bg03.jpg");
}
.p-tp-link.-facility a:before {
	background-image: url("../images/top_link_bg04.jpg");
}
@media (hover: hover) and (pointer: fine) {
	.p-tp-link a:hover:before {
		transform: scale(1.05);
	}
}
@media screen and (max-width: 767px) {
	.p-tp-link.-odd a:before {
		background-position: left 20% center;
	}
	.p-tp-link.-even a:before {
		background-position: right 20% center;
	}
}
.p-tp-link a:after {
	background: black;
	opacity: 0;
	transition: opacity .5s ease-in-out .5s;
}
@media (hover: hover) and (pointer: fine) {
	.p-tp-link a:hover:after {
		opacity: .7;
	}
}
.p-tp-link__num {
	margin-bottom: 100px;
	width: 60px;
	aspect-ratio: 1;
	position: relative;
	color: var(--color-red);
	font-family: var(--font-ct);
	letter-spacing: .2em;
	line-height: 1;
}
@media screen and (max-width: 1200px) {
	.p-tp-link__num {
		margin-bottom: 80px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-link__num {
		width: 50px;
		margin-bottom: 65px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-link__num {
		width: 40px;
		margin-bottom: 30px;
	}
}
.p-tp-link.-even .p-tp-link__num {
	margin-left: auto;
	text-align: right;
}
.p-tp-link__num:after {
	width: 1px;
	height: 80px;
	content: '';
	position: absolute;
	top: -10px;
	left: 50%;
	background: var(--color-red);
}
@media screen and (max-width: 1024px) {
	.p-tp-link__num:after {
		height: 64px;
		top: -6px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-link__num:after {
		height: 50px;
		top: -5px;
	}
}
.p-tp-link.-odd .p-tp-link__num:after {
	transform: rotate(45deg);
}
.p-tp-link.-even .p-tp-link__num:after {
	transform: rotate(-45deg);
}
.p-tp-link.-odd .p-tp-link__cont {
	margin-left: 100px;
}
.p-tp-link.-even .p-tp-link__cont {
	margin-right: 100px;
	text-align: right;
}
@media screen and (max-width: 1200px) {
	.p-tp-link.-odd .p-tp-link__cont {
		margin-left: 80px;
	}
	.p-tp-link.-even .p-tp-link__cont {
		margin-right: 80px;
		text-align: right;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-link.-odd .p-tp-link__cont {
		margin-left: var(--inline-page);
	}
	.p-tp-link.-even .p-tp-link__cont {
		margin-right: var(--inline-page);
	}
}
@media screen and (max-width: 767px) {
	.p-tp-link.-odd .p-tp-link__cont {
		margin-left: 0;
	}
	.p-tp-link.-even .p-tp-link__cont {
		margin-right: 0;
	}
}

/* ---------- Top Declaration ----------*/
.p-tp-declaration {
	margin-bottom: 150px;
	padding-top: 160px;
}
@media screen and (max-width: 1024px) {
	.p-tp-declaration {
		margin-bottom: 120px;
		padding-top: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-declaration {
		margin-bottom: 80px;
		padding-top: 80px;
	}
}
.p-tp-declaration__hgroup {
	width: fit-content;
	margin-inline: auto;
	position: relative;
	z-index: 1;
}

.p-tp-declaration__hgroup span {
	display: block;
	letter-spacing: .2em;
	line-height: 1;
	text-align: center;
}
span.p-tp-declaration__ttl--ja {
	margin-bottom: 30px;
	font-size: 3.6rem;
}
@media screen and (max-width: 1024px) {
	span.p-tp-declaration__ttl--ja {
		font-size: 3rem;
	}
}
@media screen and (max-width: 767px) {
	span.p-tp-declaration__ttl--ja {
		margin-bottom: 20px;
		font-size: 2.5rem;
	}
}
span.p-tp-declaration__ttl--en {
	color: #626262;
	font-family: var(--font-ct);
	font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
	span.p-tp-declaration__ttl--en {
		font-size: 1.4rem;
	}
}
.p-tp-declaration__cont {
	width: 100%;
	margin-top: -60px;
	padding-block: 130px 95px;
	padding-inline: 160px;
	display: flex;
	flex-direction: column;
	align-items: center;
	background: var(--color-green-2);
}
@media screen and (max-width: 1200px) {
	.p-tp-declaration__cont {
		padding-inline: 130px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tp-declaration__cont {
		padding-block: 100px 60px;
		padding-inline: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-declaration__cont {
		padding-block: 85px 40px;
		padding-inline: 7%;
		margin-top: -45px;
	}
}
.p-tp-declaration-cont__txt {
	color: #c3c3c3;
	letter-spacing: .2em;
	line-height: 2;
}
.p-tp-declaration-cont__txt:nth-of-type(1) {
	margin-bottom: 35px;
}
@media screen and (max-width: 767px) {
	.p-tp-declaration-cont__txt:nth-of-type(1) {
		margin-bottom: 20px;
	}
}
.p-tp-declaration-cont__txt.-last-end {
	margin-left: auto;
}

/* ---------- Top Tournament ----------*/

 .p-tp-acfb {
      display: flex;
      width: 100%;
      gap: 30px;
      flex-wrap: wrap;
	 background: #fff;
    }

    .p-tp-access, .p-tp-fb {
      box-sizing: border-box;
    }


    .p-tp-access {
      flex: 7;
/*      background-color: #e0f7fa;*/
    }

    .p-tp-fb {
      flex: 3;
/*      background-color: #ffe0b2;*/
    }

@media (max-width: 1024px) {
	 .p-tp-acfb {
		 width: 95%;
		 justify-content: space-between;
		gap: 0px; 
	} 
  .p-tp-access,
  .p-tp-fb {
	flex: 1;  
    width: 45%;     /* 明示的に幅を指定してもOK */
  }
	.p-tp-fbin{
		width: 90%;
	margin: auto;		
	}
	.fb-container{width: 100%;}
}
@media (max-width: 767px) {
  .p-tp-acfb {
    width: 90%;  
    flex-direction: column;
  }
  .p-tp-access,
  .p-tp-fb {
    flex: none;
    width: 100%;
  }
	.p-tp-fbin{
		width: 100%;
	}
}


.p-tp-access span.c-sec-ttl--en,
.p-tp-fb span.c-sec-ttl--en {
	margin-bottom: 35px;
}
.p-tp-access iframe{
	margin-bottom: 50px;
}
@media screen and (max-width: 1024px) {
/*
	.p-tp-access {
		margin-bottom: 150px;
	}
*/
}
@media screen and (max-width: 959px) {
	.p-tp-access iframe{
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 767px) {
/*
	.p-tp-access {
		margin-bottom: 100px;
	}
*/
.p-tp-access span.c-sec-ttl--en,
.p-tp-fb span.c-sec-ttl--en {
	margin-bottom: 30px;
   }
}
.p-tp-tounament-slider__item {
	margin-inline: 10px;
}
@media screen and (max-width: 767px) {
	.p-tp-tounament-slider__item {
		margin-inline: 0;
	}
}

.p-tp-tounament__slider {
	width: 100%;
	margin-inline: auto;
}
@media screen and (max-width: 767px) {
	.p-tp-tounament__slider {
		max-width: 292px;
	}
}
.p-tp-tounament__slider .slick-dots {
	bottom: -40px;
}
.p-tp-tounament__slider .slick-dots li {
	width: 70px;
	height: 2px;
}
.p-tp-tounament__slider .slick-dots li button {
	width: 100%;
	height: 100%;
}
.p-tp-tounament__slider .slick-dots li button:before {
	width: 100%;
	height: 100%;
	content: '';
	background: #989a97;
	opacity: 1;
}
.p-tp-tounament__slider .slick-dots li.slick-active button:before {
	background: white;
}
.slick-dots > li:first-child:last-child {
    display: none;
}
/* Contents */

/* ---------- Section ----------*/
/*----- Compornent -----*/

/*----- Project -----*/
/* Contents */

/* ---------- Section ----------*/
/*----- Compornent -----*/

/*----- Project -----*/
/* Contents */


/* =================================================
下層ページ
================================================= */


/* ---------- Section ----------*/
/* Textarea */

/* トップ　About
------------------------------------------------- */
.p-tpbnrar-cont {
	padding-top: 30px;
}
@media screen and (max-width: 1024px) {
	.p-tpbnrar-cont {
		padding-top: 30px;
	}
}
@media screen and (max-width: 767px) {
	.p-tpbnrar-cont {
		padding-top: 20px;
	}
}


/* トップ　About
------------------------------------------------- */
.p-tp-instrct,
.p-tpabout-cont,
.p-tp-access,
.p-tp-fb {
	padding-top: 130px;
	padding-bottom: 80px;
}
@media screen and (max-width: 1024px) {
.p-tp-instrct,	
.p-tpabout-cont,
.p-tp-access,
.p-tp-fb  {
		padding-top: 110px;
	    padding-bottom: 50px;
	}
}
@media screen and (max-width: 767px) {
.p-tp-instrct,	
.p-tpabout-cont,
.p-tp-access,
.p-tp-fb  {
		padding-top: 60px;
		padding-bottom: 40px;
	}
}
.p-tpabout-txtarea {
	margin-bottom: 100px;
	position: relative;
	text-align: center;
}
@media screen and (max-width: 1024px) {
	.p-tpabout-txtarea {
		margin-bottom: 80px;
	}
}
@media screen and (max-width: 767px) {
	.p-tpabout-txtarea {
		margin-bottom: 50px;
		text-align: left;
	}
}

@media screen and (max-width: 1440px) {
	.p-tpabout-txtarea:before {
		width: 629px;
		margin-right: -760px;
	}
}
@media screen and (max-width: 1200px) {
	.p-tpabout-txtarea:before {
		width: 503px;
		margin-right: -608px;
	}
}
@media screen and (max-width: 1024px) {
	.p-tpabout-txtarea:before {
		width: 402px;
		margin-right: -486px;
		top: -100px;
	}
}
@media screen and (max-width: 767px) {
	.p-tpabout-txtarea:before {
		width: 322px;
		margin-right: 0;
		top: -40px;
		right: -44px;
	}
}

/* Imagearea */
.p-greeting-img {
	width: 100%;
	max-width: 340px;
	margin-bottom: 40px;
	margin-inline: auto;
}
.p-greeting-img img {
	width: 100%;
}
.p-greeting-imgarea p {
	text-align: center;
	letter-spacing: .2em;
	line-height: 1;
}
.p-greeting-txt--post {
	margin-bottom: 15px;
}
.p-greeting-txt--name {
	font-size: 2.6rem;
}
@media screen and (max-width: 1024px) {
	.p-greeting-txt--name {
		font-size: 2.3rem;
	}
}
@media screen and (max-width: 767px) {
	.p-greeting-txt--name {
		font-size: 2rem;
	}
}


/* 倶楽部の歴史
------------------------------------------------- */
/* ---------- Intro ----------*/
.p-history-intro {
	margin-bottom: 200px;
	padding-top: 60px;
	justify-content: space-between;
	gap: 0 60px;
}
@media screen and (max-width: 959px) {
	.p-history-intro {
		margin-bottom: 150px;
		flex-direction: column;
		align-items: center;
	}
}
@media screen and (max-width: 767px) {
	.p-history-intro {
		margin-bottom: 100px;
		padding-top: 20px;
	}
}

/* Imagearea */
.p-history-intro__imgarea {
	width: min(39.5%, 600px);
	position: relative;
}
@media screen and (max-width: 959px) {
	.p-history-intro__imgarea {
		width: 100%;
		order: 2;
		display: flex;
		justify-content: space-between;
	}
}
.p-history-intro__img.-lg {
	width: 83.3%;
	max-width: 500px;
}
@media screen and (max-width: 959px) {
	.p-history-intro__img.-lg {
		width: 56.9%;
		margin-top: 40px;
	}
}
.p-history-intro__img.-sm {
	width: 53.3%;
	max-width: 320px;
	margin-top: -70px;
	margin-left: auto;
}
@media screen and (max-width: 1620px) {
	.p-history-intro__img.-sm {
		margin-top: -4.3vw;
	}
}
@media screen and (max-width: 959px) {
	.p-history-intro__img.-sm {
		width: 36.5%;
		margin: 0;
	}
}

.p-history-intro__imgarea img {
	width: 100%;
}

/* Contents */
.p-history-intro__cont {
	width: min(54%, 820px);
}
@media screen and (max-width: 959px) {
	.p-history-intro__cont {
		width: 100%;
		margin-bottom: 60px;
	}
}
@media screen and (max-width: 767px) {
	.p-history-intro__cont {
		margin-bottom: 30px;
	}
}
span.p-history-intro-txt-sm {
	font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
	span.p-history-intro-txt-sm {
		font-size: 1.3rem;
	}
}

/* ---------- Tabarea ----------*/
.p-history-tabarea {
	margin-bottom: 130px;
}
@media screen and (max-width: 959px) {
	.p-history-tabarea {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-history-tabarea {
		margin-bottom: 50px;
	}
}
.p-history-tabblock {
	justify-content: center;
	gap: 20px;
}
@media screen and (max-width: 767px) {
	.p-history-tabblock {
		gap: 15px;
	}
}
.p-history-tab {
	width: 350px;
	height: 80px;
}
@media screen and (max-width: 1024px) {
	.p-history-tab {
		height: 70px;
	}
}
@media screen and (max-width: 767px) {
	.p-history-tab {
		height: 50px;
	}
}
.p-history-tab a {
	width: 100%;
	height: 100%;
	padding-block: 23px;
	display: block;
	color: #445832;
	font-size: 2.8rem;
	letter-spacing: .2em;
	line-height: 1;
	text-align: center;
	border: 1px solid #445832;
	transition: all var(--hover-option);
}
@media screen and (max-width: 1024px) {
	.p-history-tab a {
		padding-block: 24px;
		font-size: 2rem;
	}
}
@media screen and (max-width: 767px) {
	.p-history-tab a {
		padding-block: 14px;
		font-size: 1.6rem;
		letter-spacing: .1em;
	}
}
.p-history-tab a.is-select {
	color: white;
	background: #445832;
}
@media (hover: hover) and (pointer: fine) {
	.p-history-tab a:hover {
		color: white;
		background: #445832;
	}
}

/* ---------- Tab Section ----------*/
.p-history-sec {
	display: none;
}
.p-history-sec.is-show {
	display: block;
}

/* Course */
.p-history-course {
	margin-bottom: 105px;
}
@media screen and (max-width: 1024px) {
	.p-history-course {
		margin-bottom: 60px;
	}
}
@media screen and (max-width: 767px) {
	.p-history-course {
		margin-bottom: 40px;
	}
}
.p-history-course:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-history-course__ttl {
	margin-bottom: 20px;
	padding-left: 15px;
	font-size: 2rem;
	letter-spacing: .2em;
	line-height: 1;
}
@media screen and (max-width: 1024px) {
	.p-history-course__ttl {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-history-course__ttl {
		padding-left: 0;
		font-size: 1.4rem;
	}
}
.p-history-course__imgarea {
	gap: 0 80px;
}
@media screen and (max-width: 1024px) {
	.p-history-course__imgarea {
		gap: 0 40px;
	}
}
@media screen and (max-width: 767px) {
	.p-history-course__imgarea {
		gap: 0 4%;
	}
}
.p-history-course__img {
	width: 720px;
}
.p-history-course__img img {
	width: 100%;
}

/* Tournament */
#tournament.p-history-sec {
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
}
.p-history-tournament {
	margin-bottom: 100px;
	display: flex;
	justify-content: space-between;
	gap: 0 60px;
}
.p-history-tournament:nth-last-of-type(1) {
	margin-bottom: 0;
}
@media screen and (max-width: 959px) {
	.p-history-tournament {
		flex-direction: column;
		align-items: center;
	}
}
@media screen and (max-width: 767px) {
	.p-history-tournament {
		margin-bottom: 60px;
	}
}
.p-history-tounament__cont {
	width: 480px;
}
.p-history-tournament.-col-1 .p-history-tounament__cont {
	width: 100%;
}
@media screen and (max-width: 959px) {
	.p-history-tounament__cont {
		width: 100%;
		margin-bottom: 60px;
	}
}
@media screen and (max-width: 767px) {
	.p-history-tounament__cont {
		margin-bottom: 35px;
	}
}
.p-history-tournament__date {
	width: fit-content;
	margin-top: 20px;
	padding: 14px 20px;
	display: block;
	font-size: 1.8rem;
	letter-spacing: .2em;
	line-height: 1;
	background: #1e221b;
}
@media screen and (max-width: 1024px) {
	.p-history-tournament__date {
		padding: 12px 20px 15px;
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-history-tournament__date {
		margin-top: 15px;
		padding: 8px 12px 10px;
		font-size: 1.4rem;
	}
}
.p-history-tounament__cont .p-history-course__ttl {
	margin-bottom: 40px;
}

.p-history-tournament__des {
	padding-left: 20px;
}
@media screen and (max-width: 767px) {
	.p-history-tournament__des {
		padding-left: 0;
	}
}
.p-history-tournament__des p {
	letter-spacing: .2em;
	line-height: 1.5;
}
@media screen and (max-width: 767px) {
	.p-history-tournament__des p {
		letter-spacing: .1em;
	}
}
.p-history-tournament__ttl {
	margin-bottom: 40px;
	font-size: 1.8rem;
}
@media screen and (max-width: 1024px) {
	.p-history-tournament__ttl {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-history-tournament__ttl {
		margin-bottom: 30px;
		font-size: 1.4rem;
	}
}
.p-history-tournament__txt {
	margin-bottom: 25px;
}
@media screen and (max-width: 767px) {
	.p-history-tournament__txt {
		margin-bottom: 10px;
		font-size: 1.2rem;
	}
}
.p-history-tournament__name {
	font-size: 3.6rem;
}
@media screen and (max-width: 1024px) {
	.p-history-tournament__name {
		font-size: 3rem;
	}
}
@media screen and (max-width: 767px) {
	.p-history-tournament__name {
		font-size: 2.5rem;
	}
}

.p-history-tounament__img {
	width: 660px;
}
@media screen and (max-width: 959px) {
	.p-history-tounament__img {
		width: 100%;
		max-width: 600px;
	}
}
.p-history-tounament__img img {
	width: 100%;
}


/* 施設ご案内
------------------------------------------------- */
.p-page-cont {
	padding-top: 50px;
}

/* ---------- Intro ----------*/
.p-facility-intro {
	text-align: center;
}
@media screen and (max-width: 767px) {
	.p-facility-intro {
		text-align: left;
		line-height: 1.8!important;
	}
}

/* ---------- Gallery ----------*/
/* Contents */
.p-facility-gallery {
	margin-bottom: 4rem;
}
@media screen and (max-width: 1024px) {
	.p-facility-gallery {
		margin-bottom: 3rem;
	}
}
@media screen and (max-width: 767px) {
	.p-facility-gallery {
		margin-bottom: 3rem;
	}
}
.p-facility-gallery :where(div, img) {
	width: 100%;
}
.p-facility-gallery__inner {
	margin-bottom: 10px;
}

/* Thumb */
.p-facility-thumb {
	display: flex;
	justify-content: center;
	gap: 10px;
}
.p-facility-thumb__item {
	width: 150px;
	aspect-ratio: 3 / 2;
	background: black;
	opacity: .6;
	transition: .3s ease-in-out;
}
.p-facility-thumb__item a {
	width: 100%;
	height: 100%;
	display: block;
}
.p-facility-thumb__item.thumbnail-current {
	opacity: 1;
}
@media (hover: hover) and (pointer: fine) {
	.p-facility-thumb__item:hover {
		opacity: 1;
	}
}
.p-facility-thumb__item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ---------- Facilities ----------*/
.p-facility-sec {
	display: flex;
	flex-wrap: wrap;
	gap: 60px 80px;
}
@media screen and (max-width: 1024px) {
	.p-facility-sec {
		gap: 40px 40px;
	}
}
@media screen and (max-width: 767px) {
	.p-facility-sec {
		gap: 30px 16px;
	}
}
.p-facility-box {
	width: calc((100% - 80px) / 2);
}
@media screen and (max-width: 1024px) {
	.p-facility-box {
		width: calc((100% - 40px) / 2);
	}
}
@media screen and (max-width: 767px) {
    .p-facility-sec {
	display: block;
	flex-wrap: nowrap;
	gap: 0p;
    }	
	.p-facility-box {
		width:100%;
		margin-bottom: 4rem;
	}
}
.p-facility-box__img,
.p-facility-box__img img {
	width: 100%;
}
.p-facility-box__img {
	margin-bottom: 5px;
}
.p-facility-box__header {
	padding-right: 32px;
	align-items: flex-start;
	justify-content: space-between;
}
@media screen and (max-width: 767px) {
	.p-facility-box__header {
		padding-right: 23px;
		flex-direction: column;
	}
}
.p-facility-box__txt {
	font-family: var(--font-family-min);
	font-size: 1.8rem;
	letter-spacing: .2em;
	font-weight: 600;
}
@media screen and (max-width: 1024px) {
	.p-facility-box__txt {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-facility-box__txt {
		font-size: 1.4rem;
		letter-spacing: .1em;
	}
}
.p-facility-box.-practice .p-facility-box__txt {
	margin-bottom: 10px;
}
.p-facility-box__cont dl {
	margin-bottom: 2px;
	display: flex;
	align-items: center;
}
@media screen and (max-width: 767px) {
	.p-facility-box__cont dl {
		margin-bottom: 10px;
		flex-direction: column;
		align-items: flex-start;
	}
}
.p-facility-box__cont dl:nth-last-of-type(1) {
	margin-bottom: 10px;
}
.p-facility-box__cont dt {
	width: 120px;
	padding-block: 3px;
	text-align: center;
	background: var(--color-green-2);
}
@media screen and (max-width: 767px) {
	.p-facility-box__cont dt {
		width: 100%;
		font-size: 1.3rem;
	}
}
.p-facility-box__cont dd {
	padding-left: 15px;
}
@media screen and (max-width: 767px) {
	.p-facility-box__cont dd {
		padding-top: 8px;
		padding-left: 0;
		font-size: 1.3rem;
	}
}
.p-facility-box__note {
	color: var(--color-red);
	font-size: 1.4rem;
	letter-spacing: .2em;
}
@media screen and (max-width: 767px) {
	.p-facility-box__note {
		font-size: 1.2rem;
		letter-spacing: .05em;
	}
}


/* 料金表
------------------------------------------------- */
/* ---------- Intro ----------*/
.p-price-intro {
	margin-bottom: 150px;
	text-align: center;
}
@media screen and (max-width: 1024px) {
	.p-price-intro {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-price-intro {
		margin-bottom: 80px;
		text-align: left;
	}
}
.p-price-intro span {
	color: var(--color-red);
	font-size: 2.6rem;
}
@media screen and (max-width: 1024px) {
	.p-price-intro span {
		font-size: 2.4rem;
	}
}
@media screen and (max-width: 767px) {
	.p-price-intro span {
		font-size: 2rem;
	}
}

/* ---------- Group ----------*/
.p-price-cont {
	margin-bottom: 100px;
	justify-content: space-between;
}
@media screen and (max-width: 1024px) {
	.p-price-cont {
		margin-bottom: 80px;
		flex-direction: column00;
		align-items: center0;
		gap: 50px;
	}
}
@media screen and (max-width: 767px) {
	.p-price-cont {
		margin-bottom: 60px;
	}
}
.p-price-group {
	width: calc((100% - 140px) / 3);
}
@media screen and (max-width: 1279px) {
	.p-price-group {
		width: calc((100% - 100px) / 3);
	}
}
@media screen and (max-width: 1115px) {
	.p-price-group {
		width: calc((100% - 40px) / 3);
	}
}
@media screen and (max-width: 1024px) {
	.p-price-group {
		width: 100%;
	}
}
.p-price-group__txt {
	margin-bottom: 30px;
	color: var(--color-red);
	font-size: 1.8rem;
	letter-spacing: .2em;
	line-height: 1;
}
@media screen and (max-width: 1024px) {
	.p-price-group__txt {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-price-group__txt {
		margin-bottom: 25px;
		font-size: 1.4rem;
	}
}
.p-price-table {
	width: 100%;
	margin-bottom: 5px;
}
.p-price-table__ttl {
	margin-bottom: 20px;
	font-size: 1.6rem;
	letter-spacing: .2em;
	line-height: 1;
}
@media screen and (max-width: 767px) {
	.p-price-table__ttl {
		font-size: 1.4rem;
	}
}
.p-price-table__ttl:before {
	width: 1px;
	height: 20px;
	margin-right: 12px;
	content: '';
	display: inline-block;
	background: #8e7e68;
	vertical-align: -4px;
}
@media screen and (max-width: 767px) {
	.p-price-table__ttl:before {
		height: 16px;
	}
}
.p-price-table table {
	width: 100%;
	border-top: 1px solid #4a4a4a;
	border-collapse: separate;
	border-spacing: 0;
}
.p-price-table table :where(th, td) {
	padding-block: 21px;
	font-size: 1.6rem;
	letter-spacing: .2em;
	line-height: 1;
	text-align: center;
	border-bottom: 1px solid #4a4a4a;
}
@media screen and (max-width: 1115px) {
	.p-price-table table :where(th, td) {
		letter-spacing: .1em;
	}
}
@media screen and (max-width: 767px) {
	.p-price-table table :where(th, td) {
		padding-block: 16px;
		font-size: 1.4rem;
		letter-spacing: .1em;
	}
}
.p-price-table table th {
	width: 50%;
	background: #1e221b;
}
.p-price-table table td span {
	font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
	.p-price-table table td span {
		font-size: 1.2rem;
	}
}
.p-price-group__note {
	font-size: 1.4rem;
	letter-spacing: .2em;
	line-height: 2;
}
@media screen and (max-width: 767px) {
	.p-price-group__note {
		font-size: 1.2rem;
		letter-spacing: .1em;
		line-height: 1.75;
	}
}

/* ---------- List ----------*/
.p-price-list {
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
	padding-block: 40px;
	padding-inline: 50px;
	background: #1e221b;
}
@media screen and (max-width: 767px) {
	.p-price-list {
		padding-block: 30px;
		padding-inline: 7%;
	}
}
.p-sec-list__li {
	margin-bottom: 10px;
	padding-left: 20px;
	position: relative;
	letter-spacing: .2em;
}
@media screen and (max-width: 767px) {
	.p-sec-list__li {
		padding-left: 15px;
		letter-spacing: .1em;
	}
}
.p-sec-list__li:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-sec-list__li:before {
	width: 8px;
	aspect-ratio: 1;
	content: '';
	position: absolute;
	top: 12px;
	left: 0;
	background: var(--color-red);
	border-radius: 100%;
}
@media screen and (max-width: 767px) {
	.p-sec-list__li:before {
		width: 6px;
		top: 10px;
	}
}


/* レストラン
------------------------------------------------- */
/* ---------- Menu ----------*/
.p-restaurant-sec {
	margin-bottom: 180px;
}
@media screen and (max-width: 1024px) {
	.p-restaurant-sec {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-sec {
		margin-bottom: 60px;
	}
}
.p-restaurant-sec:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-restaurant-menu {
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 50px 0;
}
@media screen and (max-width: 959px) {
	.p-restaurant-menu.-horsdoeuvre {
		gap: 50px 0;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-menu {
		gap: 50px 0;
	}
	.p-restaurant-menu.-horsdoeuvre {
		gap: 30px 0;
	}
}

.p-restaurant-menu__box {
	width: calc((100% - 80px) / 2);
	background: #fff;
}
@media screen and (max-width: 1024px) {
	.p-restaurant-menu__box {
		width: calc((100% - 40px) / 2);
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-menu__box {
		width: calc((100% - 20px) / 2);
	}
}

.otsumami-grid .p-restaurant-menu__box {
	width: calc((100% - 80px) / 4);
	background: #fff;
}
@media screen and (max-width: 1200px) {
.otsumami-grid .p-restaurant-menu__box {
	width: calc((100% - 80px) / 3);
	}
}
@media screen and (max-width: 959px) {
.otsumami-grid .p-restaurant-menu__box {
	width: calc((100% - 20px) / 2);
	}
}
/*
.p-restaurant-menu-box__img img{
	margin-bottom: 30px;
}
*/
.p-restaurant-menu-box__img img {
	width: 100%;
}
.p-restaurant-menu-box__head {
	font-family: var(--font-family-min);
	margin-bottom: 0px;
	display: flex;
/*	align-items: center;*/
	justify-content: space-between;
	font-size: 2rem;
	font-weight: 600;
}
.p-restaurant-menu-box__des{
	padding: 20px;
}
p.p-restaurant-menu-box__mname,
.p-restaurant-drink__list dt,
.p-restaurant-drink__list dd{font-family: var(--font-family-min);}

@media screen and (max-width: 767px) {
	.p-restaurant-menu-box__head {
		align-items: flex-start;
		flex-direction: column;
		font-size: 1.6rem;
	}
}
.p-restaurant-menu-box__ttl {
	font-size: 2.2rem;
	letter-spacing: .2em;
}
@media screen and (max-width: 1024px) {
	.p-restaurant-menu-box__ttl {
		font-size: 2rem;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-menu-box__ttl {
		font-size: 1.6rem;
		letter-spacing: .1em;
	}
}
.p-restaurant-menu-box__mname{
	position: relative;
	font-weight: 600;
}
.p-restaurant-menu-box__price,
.p-restaurant-menu-box__price span {
	color: #7c6444;
	margin-left: auto;
	text-align: right;
	font-weight: bold;
	font-family: var(--font-family-min);
}
.p-restaurant-menu-box__price {
	font-size: 1.8rem;
	width: 30%;
}
.p-restaurant-menu-box__price span {
	font-size: 1.6rem;
}
@media screen and (max-width: 1200px) {
	.p-restaurant-menu-box__price {
		width: 32%;
	}
}	
@media screen and (max-width: 1024px) {
	.p-restaurant-menu-box__price span {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-menu-box__price {
		margin-left: auto;
		font-size: 1.4rem;
		width: 45%;
	}
	.p-restaurant-menu-box__price span {
		font-size: 1.2rem;
	}
}
.p-restaurant-menu-box__txt,
.p-restaurant-menu-box__txt span {
	letter-spacing: .2em;
	line-height: 1.6;
	font-family: var(--font-family-goc);
    color: var(--color-black);
	font-size: 1.6rem;
	margin-top: 20px;
}
@media screen and (max-width: 767px) {
	.p-restaurant-menu-box__txt,
    .p-restaurant-menu-box__txt span {
		letter-spacing: .1em;
		line-height: 1.75;
		font-size: 1.4rem;
	}
}

/* ---------- Drink ----------*/
/* ---------- Drink ----------*/
.p-restaurant-drink {
	width: calc((100% - 80px) / 3);
}
@media screen and (max-width: 1024px) {
	.p-restaurant-drink {
		width: calc((100% - 40px) / 2);
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-drink {
		width: 100%;
	}
}
.p-restaurant-drink__ttl {
	margin-bottom: 25px;
	font-size: 2rem;
	letter-spacing: .2em;
	line-height: 1;
	font-weight: 600;
}
@media screen and (max-width: 1024px) {
	.p-restaurant-drink__ttl {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-drink__ttl {
		font-size: 1.8rem;
		letter-spacing: .1em;
	}
}
.p-restaurant-drink__ttl:before {
	width: 4px;
	height: 30px;
	margin-right: 15px;
	content: '';
	display: inline-block;
	background: #927e68;
	vertical-align: -8px;
}
@media screen and (max-width: 1024px) {
	.p-restaurant-drink__ttl:before {
		height: 24px;
		margin-right: 12px;
		vertical-align: -6px;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-drink__ttl:before {
		height: 25px;
		vertical-align: -5px;
	}
}

.p-restaurant-drink__list dl {
	padding: 18px 10px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 2px solid #fff;/*978570*/
	width: 100%;
	 flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
	.p-restaurant-drink__list dl {
		padding: 14px 10px;
	}
}
.p-restaurant-drink__list dt,
.p-restaurant-drink__list dd {
	font-size: 1.8rem;
	letter-spacing: .2em;
	line-height: 1;
}
.p-restaurant-drink__list dd.drink_yen1{
	margin-left: auto;
}
.p-restaurant-drink__list dd.drink_yen2{
	width: 100%;
	text-align: right;
}

@media screen and (max-width: 1024px) {
	.p-restaurant-drink__list dt,
	.p-restaurant-drink__list dd {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-drink__list dt,
	.p-restaurant-drink__list dd {
		font-size: 1.4rem;
		letter-spacing: .1em;
	}
}
.p-restaurant-drink__list dd {
	color: #7c6444;
}
.p-restaurant-drink__list dd span {
	color: #7c6444;
	font-size: 1.6rem;
}

/* ---------- Horsdoeuvre ----------*/
.p-restaurant-party-img,
.p-restaurant-party-cont {
	width: calc((100% - 80px) / 2);
}
@media screen and (max-width: 1024px) {
	.p-restaurant-party-img,
	.p-restaurant-party-cont {
		width: calc((100% - 40px) / 2);
	}
}
@media screen and (max-width: 959px) {
	.p-restaurant-party-img,
	.p-restaurant-party-cont {
		width: 100%;
	}
	.p-restaurant-party-img {
		max-width: 600px;
		margin-inline: auto;
	}
}
.p-restaurant-party-img img {
	width: 100%;
}
.p-restaurant-party-cont {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
@media screen and (max-width: 767px) {
	.p-restaurant-party-cont * {
		font-size: clamp(1.4rem, calc(0.75rem + 1vw), 1.8rem) !important;
	}
}

.p-restaurant-party__txt {
	margin-bottom: 5px;
	font-size: 1.8rem;
	letter-spacing: .2em;
}
@media screen and (max-width: 1024px) {
	.p-restaurant-party__txt {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-party__txt {
		font-size: 1.4rem;
	}
}
.p-restaurant-party__note {
	margin-bottom: 45px;
	letter-spacing: .2em;
}
@media screen and (max-width: 1024px) {
	.p-restaurant-party__note {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-party__note {
		margin-bottom: 20px;
		font-size: 1.2rem;
	}
}
.p-restaurant-party__ttl {
	margin-bottom: 10px;
	color: #8e7e68;
	font-size: 1.8rem;
	letter-spacing: .2em;
}
@media screen and (max-width: 1024px) {
	.p-restaurant-party__ttl {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-party__ttl {
		font-size: 1.4rem;
	}
}
.p-restaurant-party__cancel,
.p-restaurant-party__cancel span {
	letter-spacing: .2em;
}
@media screen and (max-width: 1024px) {
	.p-restaurant-party__cancel,
	.p-restaurant-party__cancel span {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 767px) {
	.p-restaurant-party__cancel,
	.p-restaurant-party__cancel span {
		font-size: 1.2rem;
	}
}


/* ドレスコード
------------------------------------------------- */
/* ---------- Intro ----------*/
.p-dresscode-intro {
	margin-bottom: 140px;
	text-align: center;
}
@media screen and (max-width: 1024px) {
	.p-dresscode-intro {
		margin-bottom: 100px;
		text-align: left;
	}
}
@media screen and (max-width: 767px) {
	.p-dresscode-intro {
		margin-bottom: 60px;
		text-align: left;
	}
}

/* ---------- Section ----------*/
.p-dresscode-main {
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
}
.p-dresscode-sec {
	margin-bottom: 100px;
}
@media screen and (max-width: 1024px) {
	.p-dresscode-sec {
		margin-bottom: 80px;
	}
}
@media screen and (max-width: 767px) {
	.p-dresscode-sec {
		margin-bottom: 50px;
	}
}
.p-dresscode-sec:nth-last-of-type(1) {
	margin-bottom: 120px;
}
@media screen and (max-width: 1024px) {
	.p-dresscode-sec:nth-last-of-type(1) {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-dresscode-sec:nth-last-of-type(1) {
		margin-bottom: 80px;
	}
}

/* ---------- Imagearea ----------*/
.p-dresscode-imgarea {
	justify-content: space-between;
}
@media screen and (max-width: 599px) {
	.p-dresscode-imgarea {
		flex-direction: column;
		gap: 10px;
	}
}
.p-dresscode-img {
	width: calc((100% - 20px) / 3);
}
@media screen and (max-width: 599px) {
	.p-dresscode-img {
		width: 100%;
	}
}
.p-dresscode-img img {
	width: 100%;
}


/* サイトマップ
------------------------------------------------- */
.p-sitemap-body {
	width: 100%;
	max-width: 855px;
	margin-inline: auto;
}
.p-sitemap-ul {
	padding-left: 20px;
	margin-bottom: 100px;
}
@media screen and (max-width: 767px) {
	.p-sitemap-ul {
		padding-left: 0;
	}
}
.p-sitemap-body :where(li, a) {
	font-size: 2rem;
	letter-spacing: .2em;
	line-height: 1;
}
@media screen and (max-width: 1024px) {
	.p-sitemap-body :where(li, a) {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 767px) {
	.p-sitemap-body :where(li, a) {
		font-size: 1.6rem;
		letter-spacing: .1em;
	}
}


.p-sitemap-li {
	width: 100%;
/*	display: flex;*/
	margin-bottom: 40px;
}
.p-sitemap-li h3 {
	display: inline-block;
	width: 30%;
	font-weight: 600;
}
.p-sitemap-li p {
	display: inline-block;
	width: 60%;
}
.p-sitemap-child__li {
	list-style-type: disc;
}
.p-sitemap-child__li a {
	font-size:18px;
	line-height: 2!important;
	font-weight: 600;
	margin-bottom: 15px!important;
	padding-left: 15px;
}
@media screen and (max-width: 767px) {
	.p-sitemap-li {
		margin-bottom: 30px;
	}
	.p-sitemap-ul .p-sitemap-li:nth-of-type(3) {
		margin-bottom: 40px;
	}
.p-sitemap-child__li a {
	font-size:14px;
	line-height: 1.6!important;	
	padding-left: 10px; 
    }
.p-sitemap-li h3 {
	width: 90%!important;
     }	
.p-sitemap-li p {
    width: 100%;
    }	
}	

.p-sitemap-ul .p-sitemap-li:nth-last-of-type(1) {
	margin-bottom: 0;
   }
.p-sitemap-li a {
	transition: all var(--hover-option);
}
	
@media (hover: hover) and (pointer: fine) {
	.p-sitemap-li a:hover {
		width: 100%;
		color: #8e7e68;
	}
	.p-sitemap-li a h3:hover {
		color: #8e7e68;
	}	
}
li.p-sitemap-li > a:before {
	width: 15px;
	height: 2px;
	margin-right: 20px;
	content: '';
	display: inline-block;
	background: #8e7e68;
	vertical-align: 7px;
}
@media screen and (max-width: 767px) {
	li.p-sitemap-li > a:before {
		width: 12px;
		margin-right: 15px;
		vertical-align: 5px;
	}
}

.p-sitemap-child {
	margin-top: 15px;
	padding-left: 55px;
}
@media screen and (max-width: 767px) {
	.p-sitemap-child {
		padding-left: 30px;
	}
}
.p-sitemap-child__ul {
	margin-bottom: 35px;
/*	display: flex;*/
}
@media screen and (max-width: 959px) {
/*
	.p-sitemap-child__ul {
		flex-wrap: wrap;
		gap: 15px 0;
	}
*/
}
.p-sitemap-child__ul:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-sitemap-child__li {
/*	width: 50px;*/
	margin-right: 0px;
}
@media screen and (max-width: 959px) {
	.p-sitemap-child__li {
		width: auto;
	}
}
/*
.p-sitemap-child__li:nth-of-type(1) {
	margin-right: 45px;
}
@media screen and (max-width: 959px) {
	.p-sitemap-child__li:nth-of-type(1) {
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
		padding-block: 10px;
		text-align: center;
		background: #1e221b;
	}
}
.p-sitemap-child__li:nth-last-of-type(1) {
	margin-right: 0;
}
*/


/* コースご案内
------------------------------------------------- */
/* ---------- Intro ----------*/
.p-course-intro {
	margin-bottom: 145px;
}
@media screen and (max-width: 1024px) {
	.p-course-intro {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-course-intro {
		margin-bottom: 80px;
	}
}
.p-course-intro__txt {
	margin-bottom: 40px;
	font-size: 4rem;
	letter-spacing: .2em;
	line-height: 1;
	text-align: center;
}
@media screen and (max-width: 1200px) {
	.p-course-intro__txt {
		font-size: 3.5rem;
	}
}
@media screen and (max-width: 1024px) {
	.p-course-intro__txt {
		font-size: 3rem;
	}
}
@media screen and (max-width: 767px) {
	.p-course-intro__txt {
		margin-bottom: 20px;
		font-size: 2.3rem;
		letter-spacing: .1em;
	}
}
.p-course-intro__meta {
	margin-bottom: 50px;
	justify-content: center;
	gap: 0 10px;
}
@media screen and (max-width: 767px) {
	.p-course-intro__meta {
		margin-bottom: 40px;
	}
}
.p-course-intro-meta__item,
.p-course-intro-meta__item span {
	color: var(--color-red);
	font-family: var(--font-ct);
	letter-spacing: .1em;
	line-height: 1;
}
.p-course-intro-meta__item {
	width: 160px;
	padding-block: 5px;
	font-size: 3rem;
	text-align: center;
	background: var(--color-green-2);
}
.p-course-intro-meta__item span {
	font-size: 2rem;
}
@media screen and (max-width: 1024px) {
	.p-course-intro-meta__item {
		width: 130px;
		font-size: 2.5rem;
	}
	.p-course-intro-meta__item span {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 767px) {
	.p-course-intro-meta__item {
		width: 105px;
		font-size: 2rem;
	}
	.p-course-intro-meta__item span {
		font-size: 1.4rem;
	}
}
.p-course-intro__map {
	width: 100%;
	max-width: 890px;
	margin-inline: auto;
}
.p-course-intro__map img {
	width: 100%;
}

/* ---------- Course Description ----------*/
.p-course-des {
	width: 100%;
	max-width: 1200px;
	margin-bottom: 100px;
	margin-inline: auto;
}
.p-course-des:nth-last-of-type(1) {
	margin-bottom: 200px;
}
@media screen and (max-width: 1024px) {
	.p-course-des {
		margin-bottom: 80px;
	}
	.p-course-des:nth-last-of-type(1) {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-course-des {
		margin-bottom: 60px;
	}
	.p-course-des:nth-last-of-type(1) {
		margin-bottom: 80px;
	}
}
.p-course-des__ttl {
	margin-bottom: 30px;
	font-family: var(--font-ct);
	font-size: 2.8rem;
	letter-spacing: .2em;
	line-height: 1;
}
@media screen and (max-width: 1024px) {
	.p-course-des__ttl {
		font-size: 2.2rem;
	}
}
@media screen and (max-width: 767px) {
	.p-course-des__ttl {
		font-size: 1.8rem;
	}
}

/* Table */
.p-course-table,
.p-course-table table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
}
.p-course-table {
	overflow: auto;
}
.p-course-table table {
	min-width: 500px;
	border-top: 1px solid #4b3624;
	border-right: 1px solid #4b3624;
}
table.course_tbl02 th.cel_1{
width:16%;	
}
table.course_tbl02 th.cel_2{
width:12%;	
}
table.course_tbl02 th.cel_3{
width:7.5%;	
}
@media screen and (max-width: 550px) {
table.course_tbl02 th.cel_1{
width:30%;	
	min-width:150px; 
}	
	.p-course-table {
		margin-bottom: 10px;
	}
	.p-course-table table {
		padding-bottom: 10px;
	}	
}

.p-course-table th,
.p-course-table td {
	padding-block: 10px 10px;
	text-align: center;
	letter-spacing: .2em;
	line-height: 1.4;
	border-bottom: 1px solid #4b3624;
	border-right: 1px solid #a99d8e;
	padding: 5px;
}
.p-course-table th:last-child,
.p-course-table td:last-child {
		border-right: none;
}




.tbl_ce_l01{
	border-left: 1px solid #4b3624;	
}

.p-course-table th.ce_bg01{background: #82d0be; font-weight: 600;}
.p-course-table td.ce_bg02{
	background: #e6ce85; font-weight: 600;
	padding: 10px;
}
.ce_bg01{background: #82d0be;}
.ce_bg02{background: #e6ce85;}

@media screen and (max-width: 767px) {
	.p-course-table th,
	.p-course-table td {
		padding-block: 14px 15px;
	}
	.course_tbl03 th {
	padding: 15px;	
	}
}
.p-course-table th {
	width: calc(100% / 6);
	color: var(--color-main);
	background: #ebe7e4;
}
.p-course-table td.-table-head {
	background: var(--color-main);
}

.p-scroll_txt {
	display: none;
}
@media screen and (max-width: 550px) {
.course_tbl02, 
.course_tbl03,	{
	font-size:1.3rem;
	}
.course_tbl03 .cel_1b{
	min-width: 170px;
	}
.p-course-table .course_tbl03 td.ce_bg02 {
	width: 1.5%;
	}	
	
.p-scroll_txt {
		display: block;
		font-size: 1.1rem;
		margin-bottom: 15px;
	font-family: var(--font-family-goc);
color: var(--color-black);
	}
}

/* ---------- Course List ----------*/
.couse_inout_cnt{
display: flex;
justify-content: space-between;
}
.couse_inout_cnt li{
width: 48%;	
}

.p-course-list {
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 30px 10px;
   margin-top: var(--cont_margin-top02);
}
.p-course-list__item {
	width: calc((100% - 50px) / 6);
}
@media screen and (max-width: 1024px) {
	.p-course-list__item {
		width: calc((100% - 30px) / 4);
	}
	.couse_inout_cnt{
   display: block;
    }
	.couse_inout_cnt li{
    width: 100%;
	margin-bottom: 80px;
   }
}
@media screen and (max-width: 767px) {
	.couse_inout_cnt li{
	margin-bottom: 50px;
   }
}

@media screen and (max-width: 599px) {
	.p-course-list__item {
		width: calc((100% - 20px) / 3);
	}
}
.p-course-list__item a {
	height: 100%;
	display: block;
}
.p-course-list-item__img {
	margin-bottom: 15px;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
.p-course-list-item__img img {
	width: 100%;
	transition: all .3s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.p-course-list__item a:hover .p-course-list-item__img img {
		transform: translate3d(0, 0, 0) scale(1.08);
	}
}
.p-course-list-item__txt,
.p-course-list-item__txt span {
	letter-spacing: .1em;
	line-height: 1;
}
.p-course-list-item__txt {
	font-family: var(--font-ct);
	font-size: 3rem;
	text-align: center;
}
.p-course-list-item__txt span {
	font-size: 2rem;
}
@media screen and (max-width: 1024px) {
	.p-course-list-item__txt {
		font-size: 2.5rem;
	}
	.p-course-list-item__txt span {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 767px) {
	.p-course-list-item__txt {
		font-size: 2rem;
	}
	.p-course-list-item__txt span {
		font-size: 1.4rem;
	}
}


/* コースご案内　ホール
------------------------------------------------- */
/* ---------- Link ----------*/
.p-course-link {
	width: 100%;
	margin-bottom: 60px;
	padding-bottom: 20px;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 10px;
	border-bottom: 1px solid #4b3624;/*2a2a2a*/
}
.p-course-link .lst_fst h3 {
	font-size:2.8rem;
}
@media screen and (max-width: 959px) {
.p-course-link {
	justify-content: flex-start;
	}

	.p-course-link .lst_fst h3 {
	font-size:2.4rem;
   }
}
@media screen and (max-width: 819px) {
	.p-course-link .lst_fst h3 {
	　　　　　flex-basis: 100%!important;
		width: 100%;	
	font-size:2.4rem;
   }
	.p-course-link .lst_fst {
　　　　　flex-basis: 100%!important;
		width: 100%;
	    font-size:2.0rem;
		text-align: left;
  }
}
@media screen and (max-width: 767px) {
	.p-course-link {
		margin-bottom: 40px;
	}
}

.p-course-link__item {
	width: 50px;
	aspect-ratio: 1;
	box-sizing: border-box;
}
.p-course-link__item_ttl {width: 30%;} 
.p-course-link__item_oth { width: 30%;}
.p-course-link__item a {
	width: 100%;/*100%*/
	height: 100%;
	padding-block: 14px!important;
	padding-left: 4px;
	display: block;
	color: white;
	letter-spacing: .2em;
	line-height: 1;
	text-align: center;
	background: #000;
/*	border-radius: 100%;*/
	transition: all .3s ease-in-out;
}
	.p-course-link__item a.carrent {
		color: white;
		background: var(--color-red);
	}
@media (hover: hover) and (pointer: fine) {
	.p-course-link__item a:hover,
	.course_btn_nx a:hover {
		color: white;
		background: var(--color-red);
	}
}
@media screen and (max-width: 820px) {
	.p-course-link__item a {
		flex-grow: 1;      
        flex-shrink: 1;  
	}
}
@media screen and (max-width: 767px) {
		.p-course-link__item {
		width: 40px;
	}
	.p-course-link__item a{
		width: 40px;
		padding-block: 12px;
	}
}


.course_btn_nx a {
/*	font-size: 1.4rem;*/

    padding-block: 17px;
    padding-left: 14px;
    display: block;
    color: white;
    letter-spacing: .2em;
    line-height: 1;
    text-align: center;
    background: #000;
    transition: all .3s ease-in-out;	
}
.course_btn_nx a::after {
    font-family: 'Material Icons';
    content: '\e5e1';
    padding-right: 5px;
    color: white;
}
@media screen and (max-width: 767px) {
	.course_btn_nx a {
	  padding-block: 14px;
	padding-left: 20px;	
		padding-right: 10px;
	}
}


/* ---------- Movie ----------*/
.p-course-mov,
.p-course-mov iframe {
	width: 100%;
}
.p-course-mov {
	margin-top:60px; 
	margin-bottom: 80px;
	aspect-ratio: 1200 / 676;
}
@media screen and (max-width: 767px) {
	.p-course-mov {
		margin-bottom: 50px;
	}
}
#youtube {
	width: 100%;
	height: 100%;
}
.p-course-mov iframe {
	height: 100%;
}

/* ---------- Description ----------*/
.p-course-block {
	justify-content: space-between;
	gap: 0 70px;
}
@media screen and (max-width: 959px) {
	.p-course-block {
		flex-direction: column;
		align-items: center;
	}
}
.p-course-block__des {
	width: 50%;
}
.p-course-block-des__ttl,
.p-course-block-des__ttl span {	
	font-family: var(--font-ct);
	letter-spacing: .1em;
	line-height: 1;
}
.p-course-block-des__ttl {
	margin-bottom: 0px;
	font-size: 10rem;
}
.p-course-block-des__ttl span {
	font-size: 2rem;
}
.p-course-block-des__ttl_in {
	font-size: 2rem;
	margin-bottom: 40px;
}
@media screen and (max-width: 1200px) {
	.p-course-block-des__ttl {
		font-size: 8rem;
	}
	.p-course-block-des__ttl span {
		font-size: 5rem;
	}
}
@media screen and (max-width: 1024px) {
	.p-course-block-des__ttl {
		font-size: 6.5rem;
	}
	.p-course-block-des__ttl span {
		font-size: 4rem;
	}
}
@media screen and (max-width: 767px) {
	.p-course-block-des__ttl {
		margin-bottom: 0px;
		font-size: 5rem;
	}
	.p-course-block-des__ttl span {
		font-size: 3rem;
	}
}

.p-course-block-des__txtarea {
	margin-bottom: 45px;
}
.p-course-block-des__txt {
	letter-spacing: .2em;
	line-height: 1.85;
	font-family: var(--font-family-goc);
    color: var(--color-black);
}
.p-course-block-des__txt:nth-last-of-type(1) {
	margin-bottom: 0;
}

.p-course-block__map {
	width: calc(50% - 70px);
}
.p-course-block__map_ct{
	margin-top: 15px;
}
@media screen and (max-width: 959px) {
	.p-course-block__des {
		width: 100%;
		margin-bottom: 60px;
	}
	.p-course-block__map {
		width: 100%;
		max-width: 600px;
	}
}
.p-course-block__map img {
	width: 100%
}

.p-course-block__cimg {
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
	column-gap: 15px;
}


/* Tabld */
.p-course-block-des__table {
	width: 100%;
	max-width: 400px;
}
@media screen and (max-width: 959px) {
	.p-course-block-des__table {
		max-width: none;
	}
}
.p-course-block-des__table table {
	width: 100%;
	border-top: 1px solid #4a4a4a;
	border-collapse: separate;
	border-spacing: 0;
}
.p-course-block-des__table th,
.p-course-block-des__table td {
	width: 50%;
	padding-block: 21px 22px;
	letter-spacing: .2em;
	line-height: 1;
	text-align: center;
	border-bottom: 1px solid #4a4a4a;
}
@media screen and (max-width: 767px) {
	.p-course-block-des__table th,
	.p-course-block-des__table td{
		padding-block: 14px 15px;
	}
}
.p-course-block-des__table th {
	background: rgb(235, 231, 228);;
}



/* アクセス
------------------------------------------------- */
/* ---------- Road ----------*/
.p-access-road {
	width: 100%;
	max-width: 1200px;
	margin-bottom: 150px;
	margin-inline: auto;
}
@media screen and (max-width: 1024px) {
	.p-access-road {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 599px) {
	.p-access-road {
		margin-bottom: 80px;
	}
}
.p-access-road__hgoup {
	margin-bottom: 20px;
}
.p-access-road__hgoup span {
	display: block;
	letter-spacing: .2em;
	line-height: 1;
}
span.p-access-road-ttl--ja {
	margin-bottom: 15px;
	font-size: 2.8rem;
}
span.p-access-road-ttl--en {
	color: var(--color-red);
	font-family: var(--font-ct);
	font-size: 1.6rem;
}
@media screen and (max-width: 1024px) {
	span.p-access-road-ttl--ja {
		margin-bottom: 12px;
		font-size: 2.5rem;
	}
	span.p-access-road-ttl--en {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 767px) {
	span.p-access-road-ttl--ja {
		margin-bottom: 10px;
		font-size: 2rem;
	}
	span.p-access-road-ttl--en {
		font-size: 1.2rem;
	}
}

.p-access-road__map iframe{
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
	height: 500px;
}

/* Contents */
.p-access-how {
	margin-bottom: 100px;
	justify-content: space-between;
	gap: 0 100px;
}
@media screen and (max-width: 1200px) {
	.p-access-how {
		gap: 0 50px;
	}
}
@media screen and (max-width: 1024px) {
	.p-access-how {
		flex-direction: column;
	}
}
@media screen and (max-width: 767px) {
	.p-access-how {
		margin-bottom: 80px;
	}
}
.p-access-how__group.-kita {
	width: 30.3%;
	max-width: 460px;
}
.p-access-how__group.-fuku {
	width: 63.2%;
	max-width: 960px;
}
@media screen and (max-width: 1024px) {
	.p-access-how__group.-kitakyushu {
		width: 100%;
		max-width: none;
		margin-bottom: 60px;
	}
	.p-access-how__group.-fukuoka {
		width: 100%;
		max-width: none;
	}
}
.p-access-how-group__txt {
	margin-bottom: 10px;
	color: var(--color-red);
	font-size: 1.8rem;
	letter-spacing: .02em;
}
@media screen and (max-width: 1024px) {
	.p-access-how-group__txt {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) {
	.p-access-how-group__txt {
		font-size: 1.4rem;
		letter-spacing: .1em;
	}
}
.p-access-how-group__cont {
	justify-content: space-between;
	gap: 0 40px;
}
@media screen and (max-width: 599px) {
	.p-access-how-group__cont {
		flex-direction: column;
		gap: 40px;
	}
}
.p-access-how-group__box {
	width: 460px;
}
@media screen and (max-width: 599px) {
	.p-access-how-group__box {
		width: 100%;
	}
}
.p-access-how-group__figure {
	width: 100%;
	max-width: 450px;
}
@media screen and (max-width: 1024px) {
	.p-access-how__group.-kitakyushu .p-access-how-group__figure {
		width: 47.7%;
		max-width: 450px;
	}
}
@media screen and (max-width: 599px) {
	.p-access-how-group__figure {
		width: 100% !important;
		max-width: 600px !important;
		margin-inline: auto;
	}
}
.p-access-how-group__figure img {
	width: 100%;
}

/* ---------- Other ----------*/
.p-access-other {
	width: 100%;
	max-width: 1200px;
	margin-bottom: 150px;
	margin-inline: auto;
	padding-block: 20px;
	background: #1e221b;
}
@media screen and (max-width: 959px) {
	.p-access-other {
		padding-block: 30px;
	}
}
@media screen and (max-width: 767px) {
	.p-access-other {
		margin-bottom: 80px;
	}
}
.p-access-other dl {
	width: 100%;
	display: flex;
	align-items: center;
}
@media screen and (max-width: 959px) {
	.p-access-other dl {
		padding-inline: 50px;
		flex-direction: column;
		align-items: center;
	}
}
@media screen and (max-width: 767px) {
	.p-access-other dl {
		padding-inline: 7%;
	}
}
.p-access-other dt {
	width: 386px;
	padding-block: 29px;
	font-size: 2.2rem;
	letter-spacing: .2em;
	line-height: 1;
	text-align: center;
	border-right: 1px solid #446431;
}
@media screen and (max-width: 1024px) {
	.p-access-other dt {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 959px) {
	.p-access-other dt {
		width: 100%;
		margin-bottom: 15px;
		padding-block: 0 20px;
		border-right: 0;
		border-bottom: 1px solid #446431;
	}
}
@media screen and (max-width: 767px) {
	.p-access-other dt {
		font-size: 1.6rem;
	}
}
.p-access-other dd {
	width: 814px;
	padding-inline: 55px;
}
@media screen and (max-width: 959px) {
	.p-access-other dd {
		width: 100%;
		text-align: center;
	}
}
@media screen and (max-width: 767px) {
	.p-access-other dd {
		width: 100%;
		padding-inline: 0;
		text-align: left;
	}
}

/* ---------- Googlemap ----------*/
.p-access-map {
	width: 100%;
	height: 650px;
}
@media screen and (max-width: 1024px) {
	.p-access-map {
		height: 500px;
	}
}
@media screen and (max-width: 767px) {
	.p-access-map {
		height: 30vh;
	}
}
.p-access-map iframe {
	width: 100%;
	height: 100%;
	border: none;
}


/* プライバシーポリシー
------------------------------------------------- */
.p-policy-intro {
	margin-bottom: 125px;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.p-policy-intro {
		margin-bottom: 60px;
		text-align: left;
	}
}
.p-policy-sec {
	margin-bottom: 90px;
}
@media screen and (max-width: 767px) {
	.p-policy-sec {
		margin-bottom: 50px;
	}
}
.p-policy-sec:nth-last-of-type(1) {
	margin-bottom: 0;
}


/* お問い合わせ
------------------------------------------------- */
.p-contact-cont {
	width: 100%;
	max-width: 1000px;
	margin-inline: auto;
}
@media screen and (max-width: 1100px) {
	.p-contact-cont {
		width: calc(100% - 100px);
	}
}
@media screen and (max-width: 1024px) {
	.p-contact-cont {
		width: calc(100% - 80px);
	}
}
@media screen and (max-width: 767px) {
	.p-contact-cont {
		width: 90%;
	}
}
.p-contact-intro {
	margin-bottom: 125px;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.p-contact-intro {
		margin-bottom: 60px;
		text-align: left;
	}
}

/* ---------- Tel ----------*/
.p-contact-sec {
	margin-bottom: 135px;
}
@media screen and (max-width: 1024px) {
	.p-contact-sec {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
	.p-contact-sec {
		margin-bottom: 50px;
	}
}
.p-contact-sec:nth-last-of-type(1) {
	margin-bottom: 0;
}

/* Contents */
.p-contact-tel {
	display: flex;
	align-items: center;
}
@media screen and (max-width: 959px) {
	.p-contact-tel {
		flex-direction: column;
		align-items: flex-start;
	}
}
.p-contact-tel__num {
	margin-right: 45px;
}
@media screen and (max-width: 959px) {
	.p-contact-tel__num {
		margin-right: 0;
		margin-bottom: 20px;
	}
}
.p-contact-tel__num a,
.p-contact-tel__num span {
	font-family: var(--font-ct);
	line-height: 1;
}
.p-contact-tel__num a {
	font-size: 6rem;
}
.p-contact-tel__num span {
	font-size: 2.4rem;
}
@media screen and (max-width: 1200px) {
	.p-contact-tel__num a {
		font-size: 5rem;
	}
	.p-contact-tel__num span {
		font-size: 2rem;
	}
}
@media screen and (max-width: 1024px) {
	.p-contact-tel__num a {
		font-size: 4rem;
	}
	.p-contact-tel__num span {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 767px) {
	.p-contact-tel__num a {
		font-size: 3rem;
	}
	.p-contact-tel__num span {
		font-size: 1.6rem;
	}
}
.p-contact-tel__info {
	line-height: 1.6;
}
@media screen and (max-width: 767px) {
	.p-contact-tel__info {
		letter-spacing: 0;
	}
}

/* ---------- Mail ----------*/
.p-contact-mail__txt {
	margin-bottom: 80px;
	line-height: 2.2;
}
@media screen and (max-width: 767px) {
	.p-contact-mail__txt {
		margin-bottom: 40px;
	}
}

/* Form */
.p-contact-form__body {
	margin-bottom: 100px;
}
@media screen and (max-width: 767px) {
	.p-contact-form__body {
		margin-bottom: 40px;
	}
}
.p-contact-form__body dl {
	margin-bottom: 20px;
	display: flex;
	border-left: 1px solid #8e7e68;
}
@media screen and (max-width: 959px) {
	.p-contact-form__body dl {
		margin-bottom: 30px;
		padding-left: 20px;
		flex-direction: column;
	}
}
@media screen and (max-width: 767px) {
	.p-contact-form__body dl {
		padding-left: 15px;
	}
}
.p-contact-form__body dl:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-contact-form__body dt,
.p-contact-form__body dt span {
	letter-spacing: .2em;
	line-height: 1;
}
.p-contact-form__body dt {
	width: 350px;
	padding-block: 18px;
	display: flex;
	padding-left: 18px;
}
@media screen and (max-width: 959px) {
	.p-contact-form__body dt {
		width: 100%;
		padding-block: 0 20px;
		padding-left: 0;
	}
}
.p-contact-form__body dt span {
	margin-top: 1px;
	margin-left: .5em;
	color: #8e7e68;
	font-size: 1.4rem;
}
.p-contact-form__body dd {
	width: 650px;
}
@media screen and (max-width: 959px) {
	.p-contact-form__body dd {
		width: 100%;
	}
}

.p-btn-area {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px 40px;
}
@media screen and (max-width: 767px) {
	.p-btn-area {
		flex-direction: column;
	}
}

.p-checkbox-field {
	margin-bottom: 100px;
	position: relative;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.p-checkbox-field {
		margin-bottom: 40px;
	}
}

.p-checkbox-field__link {
	width: 176px;
	height: 24px;
	margin-left: -153px;
	display: block;
	position: absolute;
	top: 3px;
	left: 50%;
	background: rgba(255, 255, 255, 0);
	border-bottom: 1px solid #fff;
}
@media (hover: hover) and (pointer: fine) {
	.p-checkbox-field__link:hover {
		border: none;
	}
}
@media screen and (max-width: 767px) {
	.p-checkbox-field__link {
		width: 154px;
		height: 20px;
		margin-left: -139px;
	}
}

.mwform-checkbox-field.horizontal-item {
	position: relative;
}
/*
.mwform-checkbox-field.horizontal-item:after {
	content: '[必須]';
	display: inline-block;
	color: #ff0000;
  font-size: 1.6rem;
}
@media screen and (max-width: 599px) {
	.mwform-checkbox-field.horizontal-item:after {
		font-size: 1.2rem;
	}
}
*/
.mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0px!important;
}

/*-- checkbox --*/
.contact-check__cont {
	display: none;
}
.mwform-checkbox-field-text {
	padding-top: 5px;
	padding-left: 45px;
	position:relative;
	margin-right: 0;
}
@media screen and (max-width: 767px) {
	.mwform-checkbox-field-text {
		padding-left: 30px;
		margin-right: 0;
	}
}
@media screen and (max-width: 599px) {
	.mwform-checkbox-field-text {
		padding-left: 35px;
	}
}
.mwform-checkbox-field-text a {
	text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
	.mwform-checkbox-field-text a:hover {
		text-decoration: none;
	}
}
@media screen and (max-width: 767px) {
	.mwform-checkbox-field-text a {
		letter-spacing: 0;
	}
}
.mwform-checkbox-field-text span.p-req {
	color: #8e7e68;
	font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
	.mwform-checkbox-field-text span.p-req {
		font-size: 1.2rem;
	}
}
.mwform-checkbox-field-text:before {
	content: "";
	display: block;
	position: absolute;
	top: 6px;
	left: 0;
	width: 24px;
	aspect-ratio: 1;
	background: #eae7e5;
	border: 1px solid #483724;
	cursor: pointer;
}
@media screen and (max-width: 767px) {
	.mwform-checkbox-field-text:before {
		width: 20px;
	}
}
.contact-check__cont:checked + .mwform-checkbox-field-text {
	color: #000;
/*	font-size:2rem ;****/
}
.contact-check__cont:checked + .mwform-checkbox-field-text:after {
	content: "";
	display: block;
	position: absolute;
	top: 10px;
	left: 4px;
	width: 16px;
	aspect-ratio: 1;
	background: #000;
	cursor: pointer;
}
@media screen and (max-width: 767px) {
	.contact-check__cont:checked + .mwform-checkbox-field-text:after {
		width: 12px;
	}
}




/* お問い合わせ（確認・完了ページ）
------------------------------------------------- */
/* 確認ページ */
.mw_wp_form .error {
	margin-top: 5px;
	color: #ff7800 !important;
	font-size: 1.3rem !important;
}

@media screen and (max-width: 959px) {
	.-confirm .p-contact-form__body dt {
		padding-block: 0 10px;
	}
}
.-confirm .p-contact-form__body dt span {
	display: none;
}
.-confirm .p-contact-form__body dd {
	padding-block: 11px;
}
@media screen and (max-width: 959px) {
	.-confirm .p-contact-form__body dd {
		padding-block: 0;
	}	
}
.-confirm .p-checkbox-field {
	display: none;
}
.-confirm .c-set-btn {
	width: 350px;
}
@media screen and (max-width: 767px) {
	.-confirm .c-set-btn {
		width: 80%;
	}
}
.-confirm .c-set-btn.back {
	display: block;
}
.c-submit-btn.-back {
	padding-block: 28px;
	border: 1px solid #fff;
	background: #121212;
}
@media (hover: hover) and (pointer: fine) {
	.c-submit-btn.-back:hover {
		background: #616161;
	}
}
@media screen and (max-width: 767px) {
	.c-submit-btn.-back {
		padding-block: 19px;
	}	
}

/* 完了ページ */
.-complete .p-complete-btn {
	width: 300px;
	margin-inline: auto;
}
.-complete .p-complete-btn a {
	width: 100%;
	padding-block: 16px;
	display: block;
	text-align: center;
	background: var(--color-red);
	transition: all .3s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.-complete .p-complete-btn a:hover {
		background: #1e221b;
	}
}
@media screen and (max-width: 767px) {
	.-complete .p-complete-btn {
		width: 80%;
		max-width: 300px;
	}
	.-complete .p-complete-btn a {
		padding-block: 13px;
	}	
}


/* お知らせ
------------------------------------------------- */
.p-news__archive .p-news-item__date {
	padding-left: 20px;
}
@media screen and (max-width: 959px) {
	.p-news__archive .p-news-item__date {
		padding-left: 0;
	}	
}

/*----- Pager -----*/
.p-pager {
/*	display: none;*/
	font-size: 0;
	text-align: center;
}
 
.page-numbers {
	width: 40px;
	aspect-ratio: 1;
	margin: 100px 10px 0 0;
	padding: 10px 16px 14px;
	display: inline-block;
	color: #927e67;
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
	background: #121212;
	border-radius: 100%;
	transition: all .3s ease-in-out;
}
@media screen and (max-width: 767px) {
	.page-numbers {
		width: 30px;
		margin: 50px 10px 0 0;
		padding: 7px 12px 10px;
		font-size: 1.3rem;
	}	
}
 
.next.page-numbers {
	margin: 0;
}
 
.page-numbers.current {
	color: #fff;
	background: #1e221b;
}
@media (hover: hover) and (pointer: fine) {
	.page-numbers:hover {
		color: #fff;
		background: #1e221b;
	}	
}


/* お知らせ 詳細記事
------------------------------------------------- */
.p-news-body {
	margin-bottom: 100px;
	padding: 0 20px 90px;
	border-bottom: 1px solid #8c7e72;/*2a2a2a*/
}
@media screen and (max-width: 1024px) {
	.p-news-body {
		margin-bottom: 80px;
		padding: 0 0px 50px;
	}	
}
@media screen and (max-width: 767px) {
	.p-news-body {
		margin-bottom: 50px;
		padding: 0 0 40px;
	}	
}

.p-news-header {
	margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
	.p-news-header {
		margin-bottom: 40px;
	}	
}
.p-news-date{
	margin-bottom: 20px;
	color: #94806a;
	font-family: var(--font-ct);
	letter-spacing: .2em;
}
.p-news-ttl {
	font-size: 3rem;
	font-weight: 600;
	letter-spacing: .2em;
	line-height: 2;
	padding: 7px 3rem;
	border-bottom: 3px dotted #bbc52e;
	background: #e6ed86;
}
.p-news-ttl br {display: none;}
#pg_lesson .p-news-ttl {
    margin-bottom: 60px;
}
@media screen and (max-width: 1024px) {
	.p-news-ttl {
		font-size: 2.2rem;
	}
}
@media screen and (max-width: 767px) {
	.p-news-ttl {
		font-size: 1.8rem;
		line-height: 1.4;
		text-align: center;
	}
	.p-news-ttl br {
       display: block;
	}	
#pg_lesson .p-news-ttl {
    margin-bottom: 40px;
    }	
}

.p-news-cont strong {
	font-weight: 700!important;
}
.p-news-cont strong a {
	font-weight: 700!important;
}

.p-news-cont p {
	margin-bottom: 0px;
	line-height: 2;
}
@media screen and (max-width: 767px) {
	.p-news-cont p {
		margin-bottom: 0px;
		line-height: 1.85;
		font-size: 16px;
	}	
}
.p-news-cont p:nth-last-of-type(1) {
	margin-bottom: 0;
}
.p-news-cont p a {
	color: #a5212f;
	text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
	.p-news-cont p a:hover {
		text-decoration: none;
	}	
}
.p-post-cont p img {
	max-width: 100%;
	margin-block: 45px 2.5pc;
}

/* Alignments */
img.alignright {
	margin: 0 auto;
	display: block;
}
img.alignleft {
	margin: 0 auto;
	display: block;
}
.alignright {
	float: none;
}
.alignleft {
	float: none;
}
@media only screen and (min-width: 768px) {
	img.centered {
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	img.alignright {
		margin: 0 0 0 10px;
		display: inline;
	}	 
	img.alignleft {
		margin: 0 10px 0 0;
		display: inline;
	}	 
	.alignright {
		float: right;
	} 
	.alignleft {
		float: left;
	}
}

.alignleft {
	float: left;
	margin-right: 1rem;
}
@media only screen and (min-width: 768px) {
	.alignleft {
		margin-right: calc(2 * 1rem);
	}
}
.alignright {
	float: right;
	margin-left: 1rem;
}
@media only screen and (min-width: 768px) {
	.alignright {
		margin-left: calc(2 * 1rem);
	}
}
.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/* content内装飾 */
.p-news-cont h3 {
	font-size: 20px;
	line-height: 1;
	font-weight: 600;
	margin: 0 0 20px;
	padding: 10px 0 10px 16px;
	position: relative;
}
.p-news-cont h3:before {
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	width: 6px;
	height: 30px;
	background: #bbc52e;
}
.p-news-cont .lesson_news_excc  h3 {margin: 30px 0 20px;}
@media screen and (max-width: 767px) {
	.p-news-cont h3 {
	font-size: 18px;
	}
}
.p-news-cont h4 {
	font-size: 18px;
	font-weight: 600;
	margin: 0 0 10px;
	padding: 0 0 0 0px;
	border-bottom: 2px dotted #988767;
}

.p-news-cont h5 {
	font-weight: 600
}
.p-news-cont h5 {
	font-size: 1pc;
	margin-bottom: 10px
}

/* Pagenation */
.p-pagenation * {font-family: var(--font-family-min);}
.p-pagenation {
	display: flex;
	justify-content: center;
	position: relative;
}
.p-pagenation__turn {
	position: absolute;
	top: -5px;
}
.p-pagenation__turn.-prev {
	left: 20px;
}
@media screen and (max-width: 767px) {
	.p-pagenation__turn.-prev {
		left: 0;
	}	
}
.p-pagenation__turn.-prev a {
	text-align: left;
}
.p-pagenation__turn.-next {
	right: 20px;
}
@media screen and (max-width: 767px) {
	.p-pagenation__turn.-next {
		right: 0;
	}	
}
.p-pagenation__turn.-next a {
	text-align: right;
}
.p-pagenation__turn a {
	font-size: 1.4rem;
	line-height: 1;
	transition: all .3s ease-in-out;
}
.p-pagenation__btn a {
	padding-bottom: 20px;
	display: block;
	position: relative;
	line-height: 1;
	transition: all .3s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.p-pagenation__turn a:hover,
	.p-pagenation__btn a:hover {
		letter-spacing: .15em;
	}
}
@media screen and (max-width: 767px) {
	.p-pagenation__btn a {
		padding-bottom: 10px;
		font-size: 1.3rem;
	}
	.p-pagenation__turn a {
		font-size: 1.2rem;
	}
}
.p-pagenation__turn.-prev a:before,
.p-pagenation__turn.-next a:after {
	width: 20px;
	height: 1px;
	content: '';
	display: inline-block;
	background: #7b7b7b;
	vertical-align: 4px;
}
.p-pagenation__turn.-prev a:before {
	margin-right: 15px;
}
.p-pagenation__turn.-next a:after {
	margin-left: 15px;
}
@media screen and (max-width: 767px) {
	.p-pagenation__turn.-prev a:before,
	.p-pagenation__turn.-next a:after {
		width: 10px;
		vertical-align: 4px;
	}	
	.p-pagenation__turn.-prev a:before {
		margin-right: 10px;
	}
	.p-pagenation__turn.-next a:after {
		margin-left: 10px;
	}
}
.p-pagenation__btn a:after {
	width: 100%;
	height: 1px;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background: #7b7b7b;
}


/* 年間スケジュール
------------------------------------------------- */
.p-schedule-cont {
	padding-top: 100px;
}
@media screen and (max-width: 1024px) {
	.p-schedule-cont {
		padding-top: 80px;
	}
}
@media screen and (max-width: 767px) {
	.p-schedule-cont {
		padding-top: 50px;
	}
}
.p-schedule-body {
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
}

/*--プラグイン--*/
.fc-event-container .fc-day-grid-event {
	padding: 5px 3px;
}
.fc-event-container .fc-day-grid-event .fc-title {
	color: #fff;
	line-height: 1.0;
}
.eo-fullcalendar-loading {
	padding-right: 35px;
	background: #121212 !important;
}
.eo-fullcalendar-loading-icon {
	display: inline-block !important;
}


.eo-event-toolip.qtip {
	display: none !important;
}


/*ツールバー*/
.eo-fullcalendar .fc-toolbar {
	margin-bottom: 15px !important;
}
.eo-fullcalendar .fc-toolbar .fc-left h2 {
	font-size: 2.8rem;
	line-height: 1;
}
@media screen and (max-width: 767px) {
	.eo-fullcalendar .fc-toolbar .fc-left h2 {
		font-size: 2.4rem;
	}
}
@media screen and (max-width: 599px) {
	.eo-fullcalendar .fc-toolbar .fc-left h2 {
		font-size: 2rem;
	}
}
.fc-toolbar button {
	border: none;
}
.fc-icon-left-single-arrow:after,
.fc-icon-right-single-arrow:after {
	color: #121212;
}
.fc-state-active, .fc-state-disabled, .fc-state-down, .fc-state-hover {
	color: #7a7a7a !important;
	font-family: '游ゴシック', 'Yu Gothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'Avenir','Helvetica Neue','Helvetica','Arial', sans-serif !important;
	background-color: #efefef !important;
}
.fc-state-hover {
	padding-top: 5px !important;
	background-color: #ccc !important;
	background-position: 0 0 !important;
}
.fc .fc-toolbar>*>* {
	float: left !important;
}
.fc-toolbar .fc-right {
	float: right !important;
}

/*曜日*/
.eo-fullcalendar .fc-day-header {
	color: #a5212f !important;
	line-height: 60px;
  background: #000 !important;
}
@media screen and (max-width: 767px) {
	.eo-fullcalendar .fc-day-header {
		line-height: 40px;
	}
}

/*枠の背景色*/
.eo-fullcalendar .fc-week {
	min-height: 6em !important;
}
@media screen and (max-width: 767px) {
	.eo-fullcalendar .fc-week {
		min-height: 100px !important;
	}
}
.eo-fullcalendar .fc-day {
	height: 100%;
	background: #121212 !important;
}
.fc td, .fc th {
	border-right: none !important;
	border-left: none !important;
}
.fc-unthemed .fc-popover, .fc-unthemed .fc-row, .fc-unthemed hr, .fc-unthemed tbody, .fc-unthemed td, .fc-unthemed th, .fc-unthemed thead {
    border-color: #4a4a4a !important;
}

/*今日の背景色*/
.eo-fullcalendar-reset.fc-unthemed .fc-today {
    background: #1e221b !important;
}

/*詳細ページに飛ばないように設定する*/
.eo-fullcalendar .fc-event {
	background-color: #233215 !important;
	border-color: #233215 !important;
	border-radius: 0;
  pointer-events: none;
}


/* Utility
------------------------------------------------- */
.u-last-sec {
	margin-bottom: 200px;
}
.u-last-sec2 {
	margin-bottom: 100px;
}
@media screen and (max-width: 1024px) {
	.u-last-sec {
		margin-bottom: 150px;
	}
	.u-last-sec2 {
		margin-bottom: 100px;
	}	
}
@media screen and (max-width: 767px) {
	.u-last-sec {
		margin-bottom: 100px;
	}
	.u-last-sec2 {
		margin-bottom: 80px;
	}	
}
.u-last-type {
	margin-bottom: 0;
}
.u-row {
	display: flex;
}


@media screen and (max-width: 767px) {
	.u-m-sm_ytel { display: block; margin-bottom: 15px;}
	.u-p-sm { display: none;}
}

/* ---------- Display ----------*/
.u-m-xxl,
.u-m-xl,
.u-m-lg,
.u-m-md,
.u-m-sm,
.u-m-sm2,
.u-m-xs { display: none;}

.u-p-xxl,
.u-p-xl,
.u-p-lg,
.u-p-lg2r,
.u-p-md,
.u-p-sm,
.u-p-xs { display: block;}
@media screen and (max-width: 1439px) {
	.u-m-xxl { display: block;}
	.u-p-xxl { display: none;}
}
@media screen and (max-width: 1200px) {
	.u-m-xl { display: block;}
	.u-p-xl { display: none;}
}
@media screen and (max-width: 1024px) {
	.u-m-lg { display: block;}
	.u-p-lg { display: none;}
	.u-p-lg2r { display: none;}	
}
@media screen and (max-width: 959px) {
	.u-m-md { display: block;}
	.u-p-md { display: none;}
	.u-p-lg2r { display: block;}		
}
@media screen and (max-width: 767px) {
	.u-m-sm { display: block; margin-bottom: 15px;}
	.u-m-sm2 { display: block;}	

	.u-p-sm { display: none;}
}
@media screen and (max-width: 599px) {
	.u-m-xs { display: block;}
	.u-p-xs { display: none;}
}



.p-tp-bnrar{
    display: flex;
    justify-content: space-between;
    gap: 50px;
    margin-bottom: var(--cont_margin-bottom02);
}
.p-tp-bnrar li{
    margin-bottom: 10px;
}
.p-tp-bnrar li img{
    width: 100%;
}
@media screen and (max-width: 767px) {	
.p-tp-bnrar{
    flex-wrap: wrap;
	gap:0px;
   }	
.p-tp-bnrar ul.lst_las{
	margin-bottom: var(--cont_margin-bottom04);
	}
.p-tp-bnrar li{
    margin-bottom: 7px;
}	
}



/*----- Contents Navi -----*/
.p-tp-contnav {
  width: 100%;
  height: 556px;
  margin-bottom: 0px;
}
/*
.p-tp-contnav.-drvrange {
  margin-bottom: 180px;
}
@media screen and (max-width: 1024px) {
	.p-tp-contnav.-drvrange {
		margin-bottom: 150px;
	}
}
@media screen and (max-width: 767px) {
	.p-tp-contnav.-drvrange {
		margin-bottom: 100px;
	}
}
*/
.p-tp-contnav__link {
  width: 100%;
  height: 100%;
  display: flex;
}
.p-tp-contnav.-swing .p-tp-contnav__link,
.p-tp-contnav.-drvrange .p-tp-contnav__link{
  flex-direction: row-reverse;
}

.p-tp-contnav__img {
  width: 72.604%;
  position: relative;
/*  z-index: 1;*/
  overflow: hidden;
}
.p-tp-contnav__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.5s ease-in-out;
  transform: translate3d(0, 0, 0);
}
@media (hover: hover) and (pointer: fine) {
  .p-tp-contnav__link:hover .p-tp-contnav__img img {
    transform: translate3d(0, 0, 0) scale(1.05);
  }
}

.p-tp-contnav__block {
  width: 35%;/*27.396*/
  padding: 0 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-tp-contnav.-academy .p-tp-contnav__block {
  background: #6f8f29;	
}
.p-tp-contnav.-swing .p-tp-contnav__block{
  background: #7d6c4a;	
}
.p-tp-contnav.-exhole .p-tp-contnav__block{
  background: #6f8f29;	
}
.p-tp-contnav.-drvrange .p-tp-contnav__block {
  background: #7d6c4a;	
}

.p-tp-contnav-block__inner {
  display: flex;
  flex-direction: column;
  /*gap: 16px 0;*/
}
.p-tp-contnav__ttl {
  line-height: 1;
}
.-clublife .p-tp-contnav__ttl {
  width: 210px;
  aspect-ratio: 210 / 66;
}
.-course .p-tp-contnav__ttl {
  width: 105px;
  aspect-ratio: 105 / 19;
}
.-facility .p-tp-contnav__ttl {
  width: 92px;
  aspect-ratio: 92 / 19;
}
.-academy .p-tp-contnav__ttl {
  width: 97px;
  aspect-ratio: 97 / 19;
}
.p-tp-contnav__ttl img {
  width: 100%;
}
.p-tp-contnav__txt {
  font-family: var(--font-family-goc);
  color: #fff;
  font-size: 2.5rem;
  letter-spacing: 0.08em;
  line-height: 1.6;
}
.p-tp-contnav__txt .-br-1,
.p-tp-contnav__txt .-br-2 {
  display: inline-block;
}

@media screen and (max-width: 1699px) {
  .p-tp-contnav__img {
    width: calc(100% - 470px);
  }
/*
  .p-tp-contnav__block {
    width: 470px;
  }
*/
}
@media screen and (max-width: 1279px) {
  .p-tp-contnav {
    height: 445px;
  }
  .p-tp-contnav__img {
    width: 63.25%;
  }
  .p-tp-contnav__block {
    width: 36.75%;
    max-width: 470px;
    padding: 0 30px;
  }
  .p-tp-contnav__txt {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 1024px) {
  .p-tp-contnav {
    height: 356px;
  }
  .-clublife .p-tp-contnav__ttl {
    width: 150px;
  }
  .-course .p-tp-contnav__ttl {
    width: 84px;
  }
  .-facility .p-tp-contnav__ttl {
    width: 74px;
  }
  .-academy .p-tp-contnav__ttl {
    width: 78px;
  }
  .p-tp-contnav__txt {
    font-size: 2.0rem;
  }
  .p-tp-contnav__txt .-br-2 {
    display: none;
  }
}
@media screen and (max-width: 959px) {
  .p-tp-contnav__txt .-br-1 {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .p-tp-contnav {
    width: 90%;
    height: auto;
    margin: 0 auto 25px;
  }
  .p-tp-contnav__link {
    flex-direction: column !important;
  }
  .p-tp-contnav__img,
  .p-tp-contnav__block {
    width: 100%;
  }
  .p-tp-contnav__img {
    height: 426px;
    height: 55.541vw;
  }
  .p-tp-contnav__img img {
    object-position: 50% 30%;
  }
  .p-tp-contnav__block {
    max-width: inherit;
    padding: 50px 5%;
    justify-content: flex-start;
  }
  .p-tp-contnav__txt .-br-1,
  .p-tp-contnav__txt .-br-2 {
    display: inline-block;
  }
}
@media screen and (max-width: 599px) {
  .p-tp-contnav__img {
    height: 76.6666vw;
  }
  .p-tp-contnav__block {
    padding: 30px 8%;
  }
  .-clublife .p-tp-contnav__ttl {
    width: 130px;
  }
  .-course .p-tp-contnav__ttl {
    width: 67px;
  }
  .-facility .p-tp-contnav__ttl {
    width: 59px;
  }
  .-academy .p-tp-contnav__ttl {
    width: 62px;
  }
  .p-tp-contnav__txt {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 1024px) {
  
  .p-tp-contnav.-clublife.p-tp-contnav__img img {
    border: 1px solid #ccc;
  }
}

.p-tp-acc__lst{
    display: flex;
	margin-bottom: 30px;
}
.p-tp-acc__lst li{
   flex:1;
   text-align: center;
   font-family: var(--font-family-goc);
   color: var(--color-black);	
	font-size: 1.0em;
	font-weight: 400;
}
.p-tp-acc__lst li:before {
    width: 18px;
    aspect-ratio: 12 / 16;
    vertical-align: -5px;
    font-family: "Material Icons";
    content: "\e531";
    font-size: 2.2rem;
}
@media screen and (max-width: 959px) {
	.p-tp-acc__lst li{
	font-size: 1.0em;
   }
}
@media screen and (max-width: 767px) {
.p-tp-acc__lst{
    display: block;
   }
}


/*
-------------View more2-----------------*/
/*

.tpbtn-wrap2 {
	display: block;
	margin-top: 20px;
}
.tpbtn-wrap2 .btn_mord {
  display: inline-block;	
  font-size: 1.5rem;
}

@media screen and (max-width:767px) {
 .tpbtn-wrap2 .btn_mord {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  font-weight: 500;
  border: 1px solid #000;
  text-align: center;
  text-decoration: none;
  padding: 7px 10px 3p;	 
    font-size: 1.2rem;
    min-height: 40px;
    min-width: 270px
  }
}
.tpbtn-wrap2 .btn_mored::before {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  width: 35px;
  height: 1px;
  transform: translateY(-50%);
  background-color: #000
}
@media screen and (max-width:767px) {
 .tpbtn-wrap2 .btn_mored::before {
    width: 26px
  }
}
.tpbtn-wrap2 .btn_mored::after {
  content: "";
  position: absolute;
  right: 19px;
  top: 50%;
  width: 8px;
  height: 1px;
  transform: rotate(25deg);
  margin-top: -2px;
  background-color: #000
}
@media screen and (max-width:767px) {
 .tpbtn-wrap2 .btn_mored::after {
    right: 20px;
    width: 6px
  }
}
@media screen and (min-width:768px) {
 .tpbtn-wrap2 .btn_mored:hover {
    background-color: #000;
    color: #fff;
    opacity: 1
  }
 .tpbtn-wrap2 .btn_mored:hover::before {
    content: "";
    background-color: #fff
  }
 .tpbtn-wrap2 .btn_mored:hover::after {
    background-color: #fff
  }
}
*/




.p-tp-2bnrar ul{
    display: flex;
    justify-content: space-between;
    gap: 50px;
    margin-bottom: var(--cont_margin-bottom02);
}
@media screen and (max-width:767px) {
   .p-tp-2bnrar ul{
    display: block;
    }
	.p-tp-2bnrar li{
    margin-bottom: 20px;
    }
}

/* c-sec-catch */
.c-sec-catch {
	font-size: 3rem;
	margin-bottom: 70px;
	letter-spacing: var(--font-letter01);
	font-family: var(--strong-font-family);
	line-height: 1.8;
	text-align: center;
	font-weight: 600;
}
@media screen and (max-width: 1024px) {
	.c-sec-catch {
		font-size: 2.8rem;
		margin-bottom: 50px;
	}
}
@media screen and (max-width: 769px) {
	.c-sec-catch {
		font-size: 2.2rem;
		margin-bottom: 30px;
	}
}

/*--pankuzu--*/
.c-breadcrumb {
	margin-top: 30px!important;
	margin-bottom: 30px!important;

}
.c-breadcrumb-ul {
	display: inline-block;
	font-family: var(--font-family-goc);
	width: 100%;
	/*
align-items: center;
flex-wrap: wrap;
*/
}

.c-breadcrumb-ul li {
	display: inline-block;
	margin: 0 30px 7px 0;
	position: relative;
	flex-shrink: 0;
}
.c-breadcrumb-ul li:nth-last-of-type(1) {
	flex-shrink: 1;
}
.c-breadcrumb-ul li:before {
	position: absolute;
	content: "";
	top: 11px;
	left: -20px;
	width: 10px;
	height: 1px;
	background: #585858;
}
.c-breadcrumb-ul li:first-child {
	margin: 3px 15px 10px 0;
}
.c-breadcrumb-ul li:first-child a {
	text-decoration: none;
}
.c-breadcrumb-ul li:first-child img {
	width: 15px;
	height: auto;
	display: inline-block;
}
.c-breadcrumb-ul li:first-child:before {
	display: none;
}
.c-breadcrumb-ul li span {
	display: block;
	font-size: 1.0rem;
	line-height: 1.8;
	color: var(--cmn-color02);
}
.c-breadcrumb-ul li span a span {
	display: inline-block;
	font-size: 1.0rem;
	line-height: 1.8;
	text-decoration: underline;
	color: var(--cmn-color02);
}

	/*--wrap--*/
.c-cont__f {
	margin: 0;
}
.c-cont__ll {
	margin: 0 var(--cont_margin-side);
}
.c-cont__l {
	max-width: 1620px;
	margin: 0 auto;
}
.c-cont__m {
	max-width: 1200px;
	margin: 0 auto;
}
.c-cont__s {
	max-width: 800px;
	margin: 0 auto;
}
.c-cont {
	padding-top: 150px;
	padding-bottom: 200px;
	position: relative;
}
@media screen and (max-width: 1720px) {
	.c-cont__ll, .c-cont__l {
		margin: 0 var(--cont_margin-side);
	}
}
@media screen and (max-width: 1300px) {
	.c-cont__ll, .c-cont__l {
		margin: 0 var(--cont_margin-side);
	}
	.c-cont__m {
		margin: 0 var(--cont_margin-side);
	}
}
@media screen and (max-width: 960px) {
	.c-cont__ll, .c-cont__l, .c-cont__m {
		margin: 0 var(--cont_margin-side);
	}
}
@media screen and (max-width: 769px) {
	.c-cont__ll, .c-cont__l, .c-cont__m, .c-cont__s {
		margin: 0 var(--cont_margin-side);
	}
	.c-cont {
		padding-top: 70px;
		padding-bottom: 100px;
	}
}



@media screen and (min-width:651px){
	.flex{display:flex;}
	.flex2{display:flex;}.flex2 li{width:48.5%;}
	.flex2_dl{display:flex;}.flex2_dl dt,.flex2_dl dd{width:48.5%;}
	.flex2_narrow{display:flex;}.flex2_narrow li{width:50%;}
	.flex2_64{display:flex;}.flex2_64 dt{width:60%;}.flex2_64 dd{width:38%;}
	.flex2_73{display:flex;}.flex2_73 dt{width:65%;}.flex2_73 dd{width:28%;}
	.flex2_82{display:flex;}.flex2_82 dt{width:80%;}.flex2_82 dd{width:18%;}
	.flex3{display:flex;}.flex3 li{width:32%;}
	.flex4{display:flex;}.flex4 li{width:23%;}
	.flex5{display:flex;}.flex5 li{width:18%;}
}
@media screen and (max-width:650px){
	.flex_sp{display:flex;}
	.flex2_sp{display:flex;}.flex2_sp li,.flex2_sp dt,.flex2_sp dd{width:48.5%;}
	.flex3_sp{display:flex;}.flex3_sp li,.flex3_sp dt,.flex3_sp dd{width:32%;}
}

.flex_jc_sb{justify-content:space-between;}
.t_center_left th{text-align:center;}.t_center_left td{text-align:left;}
.t_grey01 th{background:#ebe7e4;}/*e6e2de*/
.t_grey01 td{background:#f4f2ee;}/*f0ede9*/





.t_tlay_fixed{table-layout:fixed;}
.w100per{width:100%;}
.m_top10{margin-top:10px;}
.w25per{width:25%;}
.t_center_center th, .t_center_center td {
    text-align: center;
}


.about_lst_bx{
	margin-bottom: var(--cont_margin-bottom02);
}


.about_link_bx{
	flex-wrap: wrap;
	display: flex;
	justify-content: space-between;
	align-items: top
}
.about_link_bx li{
	background: #ebe7e4;/*e6e2de*/
	margin-bottom:10px;
	padding: 20px 25px;
    width: 48%;
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box
}
.lnk-ttl{
	font-family: var(--font-family-min);
	font-size: 1.8rem;
    line-height: 1;
	margin-bottom: 15px;
	font-weight: 500;
	
}
.lnk-ttl::after {
    font-family: 'Material Icons';
    content: '\e89e';
    padding-right: 5px;
}
.lnk-ttl--txt{
	font-size: 1.2rem;
    line-height: 1;
	font-family: var(--font-family-goc);
    color: var(--color-black);
}

@media screen and (max-width:767px) {
.about_lst_tbl{
	margin-bottom: 30px;
	}
 .about_lst_bx .c-sec-ttl02 {
   margin-bottom: 0!important;
 }	
.about_lst_bx li {
	margin-bottom: 50px;
	}
}





/*-------------View more-----------------*/

.tpbtn-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}
.tpbtn-wrap .btn_mord {
  display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    min-width: 300px;
    min-height: 50px;
    font-size: 1.5rem;
    font-weight: 500;
    border: 1px solid #000;
    text-align: center;
    text-decoration: none;
    padding: 7px 10px 3px;
}
@media screen and (max-width:767px) {
 .tpbtn-wrap .btn_mord {
    font-size: 1.2rem;
    min-height: 40px;
    min-width: 270px
  }
}
.tpbtn-wrap .btn_mored::before {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  width: 35px;
  height: 1px;
  transform: translateY(-50%);
  background-color: #000
}
@media screen and (max-width:767px) {
.tpbtn-wrap .btn_mored::before {
    width: 26px
  }
}
.tpbtn-wrap .btn_mored::after {
  content: "";
  position: absolute;
  right: 19px;
  top: 50%;
  width: 8px;
  height: 1px;
  transform: rotate(25deg);
  margin-top: -2px;
  background-color: #000
}
@media screen and (max-width:767px) {
.tpbtn-wrap .btn_mored::after {
    right: 20px;
    width: 6px
  }
}
@media screen and (min-width:768px) {
.tpbtn-wrap .btn_mored:hover {
    background-color: #000;
    color: #fff;
    opacity: 1
  }
 .tpbtn-wrap .btn_mored:hover::before {
    content: "";
    background-color: #fff
  }
 .tpbtn-wrap .btn_mored:hover::after {
    background-color: #fff
  }
}




.topBtn-wrap {
  display: flex;
  justify-content: center;
  align-items: center
}
.topBtn-viewall {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  min-width: 450px;
  min-height: 50px;
  font-size: 1.5rem;
  font-weight: 600;
  border: 2px solid #000;
  text-align: center;
  text-decoration: none;
  padding: 7px 0px 3px;
  background-color: #000;
  color: #fff;  
font-family: var(--font-family-goc);	
}
@media screen and (max-width:1024px) {
.p-tp-access .topBtn-viewall {
    min-width: 250px;
  }	
}

@media screen and (max-width:767px) {
.topBtn-viewall {
    font-size: 1.2rem;
    min-height: 40px;
    min-width: 270px;
  }
}
.topBtn-viewall::before {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  width: 35px;
  height: 1px;
  transform: translateY(-50%);
  background-color: #fff;
}
@media screen and (max-width:767px) {
.topBtn-viewall::before {
    width: 26px;
  }
}
.topBtn-viewall::after {
  content: "";
  position: absolute;
  right: 19px;
  top: 50%;
  width: 8px;
  height: 1px;
  transform: rotate(25deg);
  margin-top: -2px;
  background-color: #fff;
}
@media screen and (max-width:767px) {
  body.top .topBtn-contact::after,
  body.top .topBtn-viewall::after {
    right: 20px;
    width: 6px;
  }
}
@media screen and (min-width:768px) {
	.topBtn-viewall:hover {
    background-color: #f7f7f7;
    color: #000;
    opacity: 1;
  }
.topBtn-viewall:hover::before {
    content: "";
    background-color: #000;
  }
.topBtn-viewall:hover::after {
    background-color: #000;
  }
}


.btn_vm01 {
  display: flex;
  align-items: center
}
.btn_vm01_anco {
/*font-family: var(--font-family-goc);	*/
  display: block;
  position: relative;
  font-size: 1.8rem;
  margin: 20px 0 0 0;
  padding-left: 45px
}
@media screen and (max-width:768px) {
.btn_vm01_anco {
    font-size: 1.6rem
  }
}
.btn_vm01_anco::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 35px;
  height: 1px;
  transform: translateY(-50%);
  background-color: #000
}
@media screen and (max-width:767px) {
.btn_vm01_anco::before {
    width: 26px
  }
}
.btn_vm01_anco::after {
  content: "";
  position: absolute;
  left: 28px;
  top: 40%;
  width: 8px;
  height: 1px;
  transform: rotate(25deg);
  background-color: #000
}
@media screen and (max-width:767px) {
.btn_vm01_anco::after {
    left: 20px;
    margin-top: -2px;
    top: 50%;
    width: 6px
  }
}

.btn_vm02 a {
    background: #4b9fcb;
    border-radius: 9999px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto 40px;
    max-width: 450px;
    padding: 10px 25px;
    font-family: var(--font-family-goc);
    color: #fff;
    line-height: 1.8;
    text-decoration: none;
    transition: 0.3s ease-in-out;
    font-weight: 600;
		border: 2px solid #4b9fcb;
}
.btn_vm02 a:hover {
    background: #fff;
    color: #4b9fcb;
	border: 2px solid #4b9fcb;
}
.btn_vm02 a:after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 30px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.btn_vm02 a:hover:after {
    border-color: #4b9fcb;
}

.btn_vm04 a {
    background: #000;
/*    border-radius: 9999px;*/
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto 40px;
    max-width: 450px;
    padding: 10px 25px;
    font-family: var(--font-family-goc);
    color: #fff;
    line-height: 1.8;
    text-decoration: none;
    transition: 0.3s ease-in-out;
	font-size:1.8rem;
    font-weight: 600;
	border: 2px solid #000;
}
.btn_vm04 a:hover {
    background: #fff;
    color: #000;
	border: 2px solid #000;
}
.btn_vm04 a:after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 30px;
/*    border-radius: 1px;*/
    transition: 0.3s ease-in-out;
}
.btn_vm04 a:hover:after {
    border-color: #000;
}
@media screen and (max-width: 767px) {
.btn_vm04 a {	
	font-size:1.4rem;	
	}
}


dl.btn_2bx {
width: 100%;
	display: flex;
	justify-content: space-between;
}
dl.btn_2bx dd {
	width: 48%;
}
@media screen and (max-width: 767px) {
dl.btn_2bx {
	display: block;
 }	
dl.btn_2bx dd {
	width: 100%;
  }	
}

dl.btn_5bx {
  position: relative;
  z-index: 1;	
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  flex-direction: row;
}
dl.btn_5bx dd {
	width: 19%;
}
@media screen and (max-width: 1209px) {
dl.btn_5bx {
    flex-wrap: wrap; 
    justify-content: center; 
    gap: 10px; 
  }	
dl.btn_5bx dd {
	width: 32%;
  }	
dl.btn_5bx dd.btn_vm03 a {
	margin-bottom: 2rem;
	}
}
@media screen and (max-width: 767px) {
dl.btn_5bx {
    justify-content: center; 
	}
dl.btn_5bx dd {
	width: 48%;
  }	
dl.btn_5bx dd.btn_vm03 a {
	margin-bottom: 5px;	
	font-size:12px;
	}	
dl.btn_5bx dd.btn_vm03 a:after {
	right: 10px;
	}
	
}

.btn_vm03 a {
    background: #000;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto 40px;
/*    max-width: 450px;*/
    padding: 10px 25px;
    font-family: var(--font-family-goc);
    color: #fff;
    line-height: 1.8;
    text-decoration: none;
    transition: 0.3s ease-in-out;
    font-weight: 600;
	border:2px solid #000;	
}
.btn_vm03 a:hover {
    background: #fff;
    color: #000;
	border:2px solid #000;
}
.btn_vm03 a:after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 30px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.btn_vm03 a:hover:after {
    color: #000;
    border-color: #000;

}



/* アクセス */
.acs-map { margin: 60px 0 100px;}

.map-img {
  width: 100%;
  height: auto;
}

.acs-area { margin-bottom: 20px;}

.acs-conts {
  width: 31%;
}

.acs-conts * { 
	letter-spacing: 0.15em;   
	font-family: var(--font-family-goc);
}
.mac .acs-conts * { 
	letter-spacing: 0.1em;
}
@media screen and (max-width: 959px) {
.acs-conts {
  width: 32%;
   }
}
@media screen and (max-width: 767px) {
	.p-access-cont .u-row {
	display: block;
	}
	.acs-conts {
      width: 100%;
		margin-bottom: 40px;
   }
}




.acs-conts h3 {	
　width: 100%;
  padding: 20px 0;
  margin-bottom: 20px;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  color: #3e2f20;
  background-color: #e6e2de;
  border-bottom: 1px solid #dfe3e1;
  border-left: 1px solid #dfe3e1;
}
.acs-conts h3:before {
    width: 18px;
    aspect-ratio: 12 / 16;
    vertical-align: -5px;
    font-family: "Material Icons";
    content: "\e531";
    font-size: 2.2rem;
}
.acs-conts h4 {	
　width: 100%;
  padding:  0 0 10px;
  margin-bottom: 10px;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  color: #3e2f20;
  border-bottom: 3px solid #e6e2de;	
}
@media screen and (max-width: 767px) {
	.acs-conts h3 {
		padding: 15px 0;
		font-size: 1.4rem;
	}
}
.acs-area .acs-box {
  width: 100%;
  padding: 25px 20px;
  border-bottom: 1px solid #dfe3e1;
  border-left: 1px solid #dfe3e1;
}

.acs-box ul { background: url("../images/access_box_bg.jpg") no-repeat center top 4px;}

.acs-box .head-txt {
  margin-bottom: 20px;
  font-size: 1.6rem;
}

.acs-box li {
  width: 100%;
  padding-left: 20px;
	padding-top:10px;
	padding-bottom:10px;
  margin-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.8;
  background-color: #fff;
}

.acs-box li:nth-last-of-type(1) {
/*  color: #fff;*/
/*  background-color: #e6e2de;text-align: center;*/
}
@media screen and (max-width: 767px) {
	.acs-box li {
	 margin-bottom: 10px;
	}
}


.acs-conts-bot { display: table;}
.acs-conts-bot h3,
.acs-conts-bot p {
  display: table-cell;
  vertical-align: middle;
}

.acs-conts-bot p {
  width: 67.3%;
  padding-left: 20px;
  border-bottom: 1px solid #dfe3e1;
  border-left: 1px solid #dfe3e1;
}

.g-map iframe {
  width: 100%;
  height: 33.95vw;
  vertical-align: bottom;
}

.p-access-club {
	display: flex;
	justify-content: space-between;
}
.p-access-club li{
	width: 48%;
}
.p-access-club li table{
	margin-bottom: 40px;
}
.p-access-txt{
	margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
.p-access-club {
	display: block;
}
.p-access-club li{
	width: 100%;
	margin-bottom: 30px;
}
.p-access-club li table{
	margin-bottom: 30px;
}	
.p-access-txt{
	margin-bottom: 25px;
  }	
}

.p-sc-acc__ttl{
   flex:1;
   text-align: center;
   font-family: var(--font-family-goc);
   color: var(--color-black);	
	font-size: 1.2em;
	font-weight: 400;
}
.p-sc-acc__ttl:before {
    width: 18px;
    aspect-ratio: 12 / 16;
    vertical-align: -5px;
    font-family: "Material Icons";
    content: "\e530";
    font-size: 2.2rem;
}
@media screen and (max-width: 959px) {
.p-sc-acc__ttl{
	font-size: 1.0em;
   }
}

.p-tp-reserve{
		margin-bottom: 150px;
}
.p-tp-reserve iframe {
	width: 100%;
	height: 500px;

}
@media screen and (max-width: 959px) {
.p-tp-reserve {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 767px) {
.p-tp-reserve   {
		margin-bottom: 80px;
	}
	.p-tp-reserve p-scroll_txt {
	margin-bottom:0px;	
	}	
}



/* プライバシーポリシー */
.prs_ar p {
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: 0.15em;
font-family: var(--font-family-goc);
color: var(--color-black);
}
.mac .prs_ar p { letter-spacing: 0.1em;}

.prs_ar > p { margin-bottom: 70px;}

.prs_ar a {
font-family: var(--font-family-goc);	
border-bottom: 1px dotted #988767!important;
}

.prs_cnt:not(:nth-last-of-type(1)) { margin-bottom: 40px;}

.prs_cnt h3 {
  padding: 18px 0 15px 28px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #3e2f20;
  border-left: 2px solid #3e2f20;
}

.prs_cnt p {
  padding: 23px 0 33px 28px;
  border-left: 2px solid #e6e2de;
}
.al-cm_lst{
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: 0.15em;
padding: 0px 0 33px 28px;
    border-left: 2px solid #e6e2de;	
}
.al-cm_lst li{
	list-style: disc;
		margin: 0px 0 15px 22px;
	font-family: var(--font-family-goc);
color: var(--color-black);
}
.prs_cnt p :has(+ .al-cm_lst) {
 padding: 23px 0 20px 28px;
}
/*
 .p-sitepolicy-cont .prs_ar { padding-top: 35px;}
 .p-sitepolicy-cont .prs_ar > p { margin-bottom: 35px;}
  
  .prs_cnt h3 {
    padding: 18px 0 15px 15px;
    font-size: 1.6rem;
  }
  .prs_cnt p {
    padding: 18px 0 26px 15px;
    font-size: 1.4rem;
  }*/

	

/* マナー */	

.manner_ist li {
   text-indent: -2em;
   padding-left: 2em;
font-family: var(--font-family-goc);
color: var(--color-black);
line-height: 1.6;
margin-bottom: 15px;	
}
.manner_ist li:before {
    width: 18px;
    aspect-ratio: 12 / 16;
    vertical-align: -5px;
    font-family: "Material Icons";
    content: "\e5ca";
    font-size: 2.2rem;
　　color: var(--color-black);
   margin-right: 0.5em;
}

.manner_bx{
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.manner_bx_itm {
	width: 48%;
	margin-bottom:70px; 
}
@media screen and (max-width: 767px) {
.manner_ist li {
   text-indent: -2.5em;
   padding-left: 2.5em;
	}
	.manner_bx{
	display: block;
	}
 .manner_bx_itm {
	width: 100%; 
	margin-bottom:50px; 
 }	
}


/**************************************************************/

.fee_tbl_bx01,
.fee_tbl_bx02,
.fee_tbl_bx03 {
margin-bottom: var(--cont_margin-bottom03);
}
.p-fee-cont table{
margin-bottom: 20px;  
}

.course-imgbx{
  display: flex;
  justify-content: space-between;
}
.course-imgbx li{
  width: 32%;
}
.course-imgbx2 img{
 width: 45% ;
  margin:40px auto 30px;
}
@media screen and (max-width:959px) {
.course-imgbx2 img{
  width: 70% ;
  margin:30px auto 20px;
  }
}
@media screen and (max-width:767px) {
.course-imgbx2 img{
 width: 100% ;
  margin:20px auto;
  } 
}




.p-course-cont table th, 
.p-course-cont table td {
    padding: 15px 10px;
}
.p-course-cont table.course_tbl02 th,
.p-course-cont table.course_tbl03 th {
    padding: 15px 5px;
  line-height: 1.4;
}
table.course_tbl01{
margin-bottom: var(--cont_margin-bottom03);
}
.p-course-cont .topBtn-viewall {
  min-width: 430px;
  margin-top: 50px;
}
.lesson_news_excc .topBtn-viewall {
  min-width: 80%;
  margin-top: 50px;
}
@media screen and (max-width: 959px)  {
	.lesson_news_excc .topBtn-viewall {
  min-width: 100%;
  }
}
@media screen and (max-width: 767px)  {
.p-course-cont table.course_tbl02 th,
.p-course-cont table.course_tbl03 th {
  padding: 15px 10px;
  line-height: 1.4;
  letter-spacing: .1em;
  }  
.p-course-cont table.course_tbl03 th {
	  padding-block: 21px 20px;
	}
.t_p_tb10lr5 th,.t_p_tb10lr5 td{padding:15px 10px;}	
.course-imgbx{
  display: block;
  }
.course-imgbx li{
  width: 100%;
  margin-bottom: 15px;
  }    	
.p-course-cont .topBtn-viewall,
.lesson_news_excc .topBtn-viewall {
	text-align: left!important;
    font-size: 1.2rem;
    min-height: 40px;
    min-width: 95%;
    margin-top: 20px!important; 
    margin-bottom: 20px;
    padding: 7px 10px 7px;
  }
}



ul.tp_news_odlst {
	display:block!important;
	padding: 40px 10% 30px;
}
.tp_news_odlst li{
	list-style-type: circle;
	margin-bottom: 20px;
}
@media screen and (max-width:767px) {
	ul.tp_news_odlst {
	display:block!important;
	padding: 50px 5% 50px 10%;
    }
}


/************************/
ul.flx_cnt_bx {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	height:auto;
}
ul.flx_cnt_bx li {
	display:flex;
	flex-direction:column;
	width: 48%;
	height:auto;
	margin-bottom: var(--cont_margin-bottom03b);
	
}

@media screen and (max-width:767px) {
ul.flx_cnt_bx {
	display: block;
    }
ul.flx_cnt_bx li {
	display: block;
	width: 100%;
  }
	.flex_sp{display:flex;}
	.flex2_sp{display:flex;}.flex2_sp li,.flex2_sp dt,.flex2_sp dd{width:48.5%;}
	.flex3_sp{display:flex;}.flex3_sp li,.flex3_sp dt,.flex3_sp dd{width:32%;}	
}


.flx_cnt_bx .flex2_73 {
	justify-content: space-between; 
	margin-top: 25px;
}
.flx_cnt_bx .flex2_73 dt,
.flx_cnt_bx p,
.flx_cnt_bx .txt_list,
.list_check span{
font-family: var(--font-family-goc);
color: var(--color-black);
}
.list_check span {font-size: 1.2rem;}
.list_check:before{	font-family: 'Material Icons';  content: '\e5ca'; top:2px;}
.m_icon_arrow_down::before {  font-family: 'Material Icons';  content: '\e5db'; padding-right: 5px;}
.ttl_prf01,
h4.ttl_prf01{
font-family: var(--font-family-min);
font-size:	1.8rem;
font-weight: 600;	
}


.ttl_3a{
    margin-bottom: 20px;
    padding-bottom: 15px;
    position: relative;
    line-height: 1;
    border-bottom: 2px dotted #988767;	
	text-align: center!important;
	font-weight: 600;
}
.flx_cnt_bx .ttl_3a {
	margin-top: 30px;
	font-weight: 600;
}
.p-tp-reserve .ttl_3a {
	font-size:2.8rem;
}
@media screen and (max-width:767px) {
	.p-tp-reserve .ttl_3a {
	font-size:2rem;
  }
}

.event_lstbx_ttl {
    margin-bottom: 20px;
    padding-bottom: 15px;
    position: relative;
    line-height: 1;
    border-bottom: 1px solid rgb(75, 54, 36);	
	text-align: center!important;
	font-weight: 600;
	font-size:2rem;
}
.event_lstbx_ttl:before {
    width: 18px;
    aspect-ratio: 12 / 16;
    vertical-align: -5px;
    font-family: "Material Icons";
    content: "\e55a";
    font-size: 2.2rem;
　　color: var(--color-black);
   margin-right: 0.5em;
}
.event_lstbx dl{
	height:300px!important ;
	padding-bottom: 0px;
}
@media screen and (max-width:1024px) {
	.event_lstbx dl{
	height:290px!important ;
	padding-bottom: 0px;
     }
}
@media screen and (max-width:959px) {
		.event_lstbx dl{
	height:350px!important ;
	padding-bottom: 20px;
     }
}
@media screen and (max-width:767px) {
	.event_lstbx dl{
		display: block;
		width: 100%;
    height:500px!important ;
	padding-bottom: 20px;
	}
    .event_lstbx img {
	width: 60%;
	margin: 0 auto 20px;
  }
	.event_lstbx_int{
		display: block;
		width: 100%;
	}
	.event_lstbx_ttl {
		font-size:1.8rem;
	}

}
@media screen and (max-width:599px) {
	
.ttl_prf01,
h4.ttl_prf01 {
	width: 100%;
	display: block;
　　text-align: center!important;
　　}
}



/*event*/
/*.event_bg{background:url("../images/event/event_bg.jpg") no-repeat center center;background-size:cover;}*/
.event{border:7px solid rgb(235, 231, 228); margin-top:20px;}
.event dl dt img{width:100%;}
.event .title{font-size:2.3rem;border-top:3px #91765b double;border-bottom:3px #91765b double;padding:8px 0;margin-top:5px;margin-bottom:5px;color:#91765b;}
.event .fee{font-size:1.7rem;}
.event span{font-size:1.25rem;}

@media screen and (min-width:651px){
	.event{padding:40px 30px;}
	.event table th{width:20%;}
	.event dl{display:flex;justify-content:space-between;align-items:flex-start;}
	.event dl dt{width:40%;}
	.event dl dd{width:57%;}
}
@media screen and (max-width:650px){
	.event{padding:10px;}
	.event dl dt{margin-bottom:15px;}
	/*.event table th{display:block;text-align:left;}*/
	/*.event table td{display:block;}*/
}









/* リストタグ用 */
.ol_lst, .ul_lst { margin:0.5em 2em 0.5em 1.7em; }
.ol_lst li, .ul_lst li { margin-bottom:0.5em; line-height:1.5em; }
* .ol_lst li, * .ul_lst li .ol_lst li { list-style-type:decimal; }
* .ul_lst li, * .ol_lst li .ul_lst li { list-style-type:disc; }

.img_w100per{width:100%;max-width:100%;height:auto;}

.flex_jc_sb{justify-content:space-between;}

.btn_c_black{color:#FFF;background:#000;}a.btn_c_black:hover{color:#FFF;background:#cd0101;}
.btn_size_block_narrow{display:block;padding:10px 40px;margin:25px 10%;}
.m_bottom30{margin-bottom:30px;}
.m_bottom50{margin-bottom:50px;}
.m_top20{margin-top:20px;}

/* お知らせ追加 */
.lesson_news_text {
	width: 100%;
	padding: 30px;
  background: rgb(235, 231, 228);
	margin-bottom: var(--cont_margin-bottom03b);
	
}







/*-- Contact --*/
.p-mail-form {margin-bottom: 80px;}


.p-contact-body {
	margin-bottom: 200px;
}
.p-contact-sec + .p-contact-sec {
	margin-top: 150px;
}
.p-contact-sec__header {
	margin-bottom: 50px;
	position: relative;
}
/*
.p-contact-sec__header:after {
	width: 100%;
	height: 1px;
	content: '';
	position: absolute;
	top: 14px;
	left: 0;
	z-index: -1;
	background: #494848;
}
*/
.p-contact-sec__header * {
	letter-spacing: .1em;
	line-height: 1;
}
.p-contact-sec__ttl {
	margin-bottom: 20px;
	padding-right: 50px;
	display: inline-block;
/*	color: #fff;*/
	font-size: 2.5rem;
/*	background: #343333;*/
	text-align: center;
}
.p-contact-sec__en {
	color: var(--cmn-color02);
	font-size: 1.8rem;
}
@media screen and (max-width: 960px) {
	.p-contact-body {
		margin-bottom: 100px;
	}
	.p-contact-sec + .p-contact-sec {
		margin-top: 120px;
	}
}
@media screen and (max-width: 769px) {
	.p-contact-sec + .p-contact-sec {
		margin-top: 80px;
	}
}
@media screen and (max-width: 600px) {
	.p-contact-body {
		margin-bottom: 50px;
	}
	.p-contact-sec + .p-contact-sec {
		margin-top: 50px;
	}
}
/* tel */
.p-tel-unit {
	width: 100%;
/*	max-width: 996px;*/
	margin-top: 10px;
	display: flex;
	justify-content: space-between;
}
.p-tel-unit-block__ttl {
	margin-bottom: 10px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .1em;
}
.p-tel-unit-block__num, .p-tel-unit-block__num a {
	font-family: var(--font-ct);
	display: inline-block;
	font-size: 4rem;
	line-height: 1;
	letter-spacing: .1em;
	text-decoration: none;
	pointer-events: none;
}
/*
.p-tel-unit-block__num:before {
	margin-right: 12px;
	content: '';
	display: inline-block;
	vertical-align: -2px;
}
.p-tel-unit-block__num.-tel:before {
	width: 19px;
	aspect-ratio: 1;
	background: url("../images/icon_tel02_w.svg") no-repeat 0 0 / 100%;
}
.p-tel-unit-block__num.-fax:before {
	width: 21px;
	aspect-ratio: 21 / 17;
	background: url("../images/icon_fax.svg") no-repeat 0 0 / 100%;
}
.p-tel-unit-block__txt {
	font-size: 1.5rem;
	letter-spacing: .1em;
}
*/
@media screen and (max-width: 960px) {
	.p-tel-unit {
		gap: 30px 0;
	}
	.p-contact-sec__ttl {
		padding-right: 40px;
		font-size: 2.2rem;
	}
/*
	.p-contact-sec__header:after {
		top: 12px;
	}
*/
	.p-tel-unit-block__num, .p-tel-unit-block__num a {
		font-size: 3.2rem;
	}
}
@media screen and (max-width: 769px) {
	.p-contact-sec__header {
		margin-bottom: 40px;
	}
	.p-contact-sec__ttl {
		padding-right: 36px;
		font-size: 2rem;
	}
	.p-contact-sec__en {
		font-size: 1.6rem;
	}
	.p-tel-unit {
		gap: 20px 0;
	}
	.p-tel-unit-block__num, .p-tel-unit-block__num a {
		font-size: 3rem;
	}
	.p-tel-unit-block__num a {
		pointer-events: auto;
	}
	.p-tel-unit-block__txt {
		font-size: 1.3rem;
	}
}
@media screen and (max-width: 600px) {
	.p-contact-sec__header {
		margin-bottom: 30px;
	}
	.p-contact-sec__ttl {
		padding-right: 28px;
		font-size: 1.6rem;
	}
	.p-contact-sec__en {
		font-size: 1.3rem;
	}
	.p-tel-unit-block__num, .p-tel-unit-block__num a {
		font-size: 2.6rem;
	}
	.p-tel-unit {
	    display: block;
/*	　　flex-direction: column;*/
		gap: 20px 0;
		text-align: center;
	}
	.p-tel-unit__block {
		margin-bottom: 2rem;
	}
}
/* mail */
.p-mail-guide {
	margin-bottom: 44px;
	display: flex;
	justify-content: center;
	gap: 0 50px;
}
.p-mail-guide__item {
	width: 200px;
	padding: 15px 0 14px;
	position: relative;
	font-size: 1.5rem;
	line-height: 1;
	text-align: center;
	background: rgb(235, 231, 228);
	border: 1px solid #412e1d;
	border-radius: 30px;
}
.p-mail-guide__item.-current, .mw_wp_form_input .p-mail-guide__item:nth-of-type(1), .mw_wp_form_confirm .p-mail-guide__item:nth-of-type(2), .mw_wp_form_complete .p-mail-guide__item:nth-of-type(3) {
	background: #483724;
	border-color: #483724;
	color: #fff;
}
.p-mail-guide__item + .p-mail-guide__item:before {
	width: 52px;
	height: 1px;
	content: '';
	position: absolute;
	top: 50%;
	right: 100%;
	z-index: -1;
	background: #616161;
}
@media screen and (max-width: 960px) {
	.p-mail-guide {
		gap: 0 5vw;
	}
}
@media screen and (max-width: 769px) {
	.p-mail-guide__item {
		width: 160px;
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 600px) {
	.p-mail-guide__item {
		padding: 12px 0 11px;
		font-size: 1.3rem;
	}
}
/* form */
.p-form-table {
	margin-bottom: 50px;
	border-top: 1px solid #616161;
}
.p-form-table dl {
	padding: 30px 0;
	display: flex;
	align-items: center;
	border-bottom: 1px solid #616161;
}
.p-form-table dl.p-form-table__remarks {
	align-items: flex-start;
}
.p-form-table dt {
	width: 31.7%;
	max-width: 380px;
	padding-left: 45px;
	position: relative;
	font-weight: 600;
}
@media screen and (max-width: 1024px) {
.p-form-table dt {
	width: 40.7%;	
    }
}	
.p-form-table dd {
	width: 68.3%;
	max-width: 820px;
	padding: 0 30px 0 50px;
	display: flex;
}
.p-form-table.-recruit dt {
	width: 42.23%;
	padding-left: 30px;
}
.p-form-table.-recruit dd {
	width: 57.78%;
	max-width: 520px;
}
.p-form-table__txt {
	margin-bottom: 10px;
	font-size: 1.4rem;
	line-height: 1;
}
.p-form-table input[type="text"], .p-form-table input[type="email"], .p-form-table textarea {
	width: 100%;
	padding: 15px 30px 15px 20px;
	color: #000;
	font-family: var(--input-font-family);
	font-size: 1.5rem;
	font-weight: 400;
	background: #eae7e5;
	border: none;
}
.p-form-table input[type="text"], .p-form-table input[type="email"] {
	height: 46px;
	line-height: 1;
}
.p-form-table textarea {
	height: 240px;
}
.p-form-def input[type="text"] {
	width: 100%;
}
.p-form-s input[type="text"] {
/*	max-width: 250px;*/
	width:80%;
}
.p-form-m input[type="text"] {
	max-width: 550px;
}
.p-form-l input[type="text"], .p-form-l input[type="email"] {
	max-width: 550px;
}


/*確認画面で消す*/
.p-mail-area.-confirm .p-form-l2 {display: none;}

.p-form-check {
	display: block!important;
	width: 100%;
	text-align: left;
	padding-left: 0;
margin-left: 0;	
}
.p-form-check input {
	margin: 0;
	-webkit-appearance: none;
	appearance: none;
	background: none;
}
/*
.p-form-check input[type="checkbox"]:checked + label:before {
	font-size:3rem;
}
*/

.p-form-check span {
	width: 100%;
	padding-top: 0;
	margin-top: 0;
}
.p-form-table dd span{
	margin-right:15px;
}

.p-form-check .mwform-checkbox-field-text {
	display: inline-block;
	position: relative;
	font-size: 1.6rem;
	letter-spacing: .05em;
	line-height: 1.8;
}
.p-form-check .mwform-checkbox-field-text:before {
	width: 23px;
	aspect-ratio: 1;
	margin-right: 10px;
	content: '';
	display: inline-block;
	border: 1px solid #000;
	border-radius: 2px;
	cursor: pointer;
	vertical-align: -2px;
}
.p-form-check input:checked + .mwform-checkbox-field-text:after {
	content: '';
	display: block;
	position: absolute;
	top: 5px;
	left: 8px;
	width: 10px;
	height: 18px;
	transform: rotate(40deg);
	border-bottom: 2px solid #000;
	border-right: 2px solid #000;
}
.p-form-table__inner + .p-form-table__inner {
	margin-top: 20px;
}
.p-form-def label {
	margin-right: 1em;
}
.p-form-def input[type="radio"] {
	vertical-align: -1px;
}

.p-rec-icon {font-family: var(--font-family-goc);}

.p-form-day p {
margin-bottom: 30px;
line-height: 2;
}

@media screen and (max-width: 1070px) {
	.p-form-table.-recruit dl {
		flex-direction: column;
		gap: 20px 0;
	}
	.p-form-table.-recruit dt, .p-form-table.-recruit dd {
		width: 100%;
		max-width: inherit;
		padding: 0 !important;
	}
	.p-form-table.-recruit .p-rec-icon {
		margin-left: 20px;
		display: inline-block;
		position: inherit;
		top: inherit;
		right: inherit;
	}
}
@media screen and (max-width: 960px) {
	.p-form-table dl {
		flex-direction: column;
		gap: 20px 0;
	}
	.p-form-table dt, .p-form-table dd {
		width: 100%;
		max-width: inherit;
		padding: 0 !important;
	}
}
@media screen and (max-width: 769px) {
	.p-form-table {
		margin-bottom: 40px;
	}
}
@media screen and (max-width: 600px) {
	.p-form-table {
		margin-bottom: 32px;
	}
.p-form-table dd.p-form-age {
  display: flex;
  flex-wrap: wrap; /* 4個を2列にするなら必要 */
  gap: 10px; /* 間隔を調整 */
  }
.p-form-table dd.p-form-age span.mwform-radio-field {
  flex: 0 0 40%; /* 2等分に */
  box-sizing: border-box;
  }
}
/* button */
.p-form-btnarea {
	display: flex;
	justify-content: center;
	gap: 20px 40px;
}
@media screen and (max-width: 767px) {
	.p-form-btnarea {
		flex-direction: column;
		align-items: center;
	}

}
@media screen and (max-width: 599px) {
	.p-form-check {
	margin: 0 0 16px;
	text-align: left;
}
	.p-form-check .mwform-checkbox-field-text {
		font-size:1.6rem;
		line-height: 1.8;
	}	
	.p-form-check .mwform-checkbox-field-text:before {
	width: 20px;
  }
	.p-form-check p.p-form-m {
	padding-top: 0;
	margin-top: 0;
	line-height: 1;
	}
}

.p-btn-submit {
	width: 400px;
}
.p-btn-submit.-back {
	display: none;
}
.p-btn-submit input {
	width: 100%;
	padding: 30px 0;
	display: block;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 600;
	letter-spacing: .15em;
	line-height: 1;
	text-align: center;
	background: #000;
	border: 1px solid #000;
	border-radius: 50px !important;
	transition: all .3s ease-in-out;
	cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
	.p-btn-submit input:hover {
		color: #000;
		background: #fcfcfc;
	}
}
@media screen and (max-width: 769px) {
	.p-btn-submit {
		width: 300px;
	}
	.p-btn-submit input {
		padding: 28px 0;
	}
}
@media screen and (max-width: 600px) {
	.p-btn-submit input {
		padding: 22px 0;
		font-size: 1.6rem;
	}
}
/* 必須 */
.p-rec-icon {
	margin-top: -17px;
	padding: 10px 14px;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.0;
/*
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
*/
	background: #483724;
/*	border-radius: 0px;*/
}
@media screen and (max-width: 960px) {
	.p-rec-icon {
		margin-left: 20px;
		display: inline-block;
		position: inherit;
		top: inherit;
		right: inherit;
	}
}
@media screen and (max-width: 769px) {
	.p-rec-icon {
		font-size: 1.3rem;
		padding: 7px 11px;	
	}
	.p-form-table__txt {
		font-size: 1.3rem;
	}
}
@media screen and (max-width: 600px) {
	.p-rec-icon {
		font-size: 1.2rem;
	}
	.p-form-table__txt {
		font-size: 1.2rem;
	}
}

/**/
.p-form-pp {
	width: 100%;
	height: 300px;
	margin-top: 40px;
	border: 1px solid #616161;
	overflow-y: auto;
}
.p-form-pp__inner {
	padding: 30px 40px;
}
.p-form-pp__block + .p-form-pp__block {
	margin-top: 16px;
}
.p-form-pp__txt {
	font-size: 1.5rem;
	letter-spacing: .1em;
}
@media screen and (max-width: 769px) {
	.p-form-pp__inner {
		padding: 24px 30px;
	}
	.p-form-pp__txt {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 600px) {
	.p-form-pp__inner {
		padding: 24px;
	}
	.p-form-pp__txt {
		font-size: 1.3rem;
	}
}
/* nw wp form */
.mw_wp_form .error {
	margin-top: 10px;
	margin-left: 8px;
	display: block;
	color: #ff0000 !important;
	font-size: 1.3rem !important;
}
/*
.-confirm .p-rec-icon, .-confirm .p-form-table__txt, .-confirm .p-form-check, .-confirm .p-form-pp {
	display: none;
}
.mw_wp_form_confirm .p-rec-icon, .mw_wp_form_confirm .p-form-table__txt, .mw_wp_form_confirm .p-form-check, .mw_wp_form_confirm .p-form-pp {
	display: none;
}
*/
.-confirm .p-btn-submit {
	width: 350px;
}
.-confirm .p-btn-submit.-back {
	display: block;
}
.-confirm .p-btn-submit input {
	padding: 30px 0;
}
.-confirm .p-btn-submit.-back input {
	color: #000;
	background: none;
	border: 1px solid #000;
}
@media (hover: hover) and (pointer: fine) {
	.mw_wp_form_confirm .p-btn-submit.-back input:hover {
		background: #000;
		color:#fff;
	}
}
.mw_wp_form_confirm .p-btn-submit {
	width: 350px;
}
@media screen and (max-width: 767px) {
	.mw_wp_form_confirm .p-btn-submit {
		width: 80%;
		max-width: 350px;
	}
}
.mw_wp_form_confirm .p-btn-submit.-back {
	display: block;
}
.mw_wp_form_confirm .p-btn-submit input {
	padding: 30px 0;
}
@media screen and (max-width: 767px) {
	.mw_wp_form_confirm .p-btn-submit input {
		padding: 20px 0;
	}
}
.mw_wp_form_confirm .p-btn-submit.-back input {
	color: #000;
	background: none;
	border: 1px solid #000;
}
.p-mail-area__lead {
	margin-top: 100px;
	text-align: center;
}
.mwform-checkbox-field {
	position: relative;
}
.p-link-cover {
	width: 214px;
	height: 15px;
	position: absolute;
	top: 6px;
	left: 34px;
	border-bottom: 1px solid #fff;
}
/*-- Links --*/
.p-links__item + .p-links__item {
	margin-top: 24px;
}
.p-links__item a {
	padding: 0 25px 0 16px;
	position: relative;
	text-decoration: underline;
}
.p-links__item a:before, .p-links__item a:after {
	content: '';
	position: absolute;
}
.p-links__item a:before {
	width: 5px;
	aspect-ratio: 1;
	top: 8px;
	left: 0;
	background: #fff;
	border-radius: 30px;
}
.p-links__item a:after {
	width: 12px;
	aspect-ratio: 1;
	content: '';
	position: absolute;
	top: 4px;
	right: 0;
	background: url("../images/icon_links.svg") no-repeat 0 0 / 100%;
}
@media (hover: hover) and (pointer: fine) {
	.p-links__item a:hover {
		text-decoration: none;
	}
}

.p-mail-area-lead__txt{
margin-bottom: 25px;
	text-align: left;
}
.fm_scrmail{
 margin:0px auto 40px; 
padding:8px; 
border:2px solid #aa9679; 
font-size:14px; 
line-height: 24px;
text-align:center;
}
.fm_scrmail, .fm_scrmail strong , .fm_scrmail span {font-family: var(--font-family-goc); }
.fm_scrmail_txt {
	font-family: var(--font-family-goc);	
    margin-bottom: var(--cont_margin-bottom03b);
}

.mw_wp_form_preview .p-form-s{margin-right:3rem;}
.p-form-check .flb_ins{ display: block; margin-top:10px!important;}

.p-fee-cont .fm_scrmail strong {font-size:2rem;}
.p-fee-cont .fm_scrmail, .p-fee-cont .fm_scrmail strong , .p-fee-cont .fm_scrmail span {font-family: var(--font-family-goc); font-weight: bold;}

.news_ar{
display: flex;
justify-content: space-between;
}


/*--NEWS--*/
.p-news-sec {
	margin-bottom: 150px;
	display: flex;
	gap: 0 50px;
}
.p-news-archive {
	width: calc(100% - 250px);
	border-top: 1px solid #494848;
}
.p-news-box__meta {
	display: flex;
	align-items: center;
	gap: 0 12px;
}
.p-news-box__cat {
	padding: 3px 14px;
	color: var(--cmn-color02);
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1;
	background: #494848;
	border-radius: 10px;
}
.p-news-sec__sidebar {
	width: 250px;
}
@media screen and (max-width: 960px) {
	.p-news-sec {
		margin-bottom: 100px;
		flex-direction: column;
	}
	.p-news-archive, .p-news-sec__sidebar {
		width: 100%;
	}
	.p-news-sec__sidebar {
		margin-top: 100px;
	}
}
@media screen and (max-width: 769px) {
	.p-news-box__cat {
		font-size: 1.2rem;
	}
	.p-news-sec__sidebar {
		margin-top: 70px;
	}
}
@media screen and (max-width: 600px) {
	.p-news-sec {
		margin-bottom: 50px;
	}
	.p-news-sec__sidebar {
		margin-top: 50px;
	}
}
/*-- News Detail --*/
.p-news-sec.-entry {
	margin-bottom: 200px;
}
.p-news-entry {
	width: calc(100% - 300px);
}
.p-news-entry__inner {
	margin-bottom: 150px;
}
.p-news-entry__header {
	margin-bottom: 50px;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--cmn-color02);
}
.p-news-entry__ttl {
	margin-top: 18px;
	font-size: 3rem;
	font-weight: 400;
	line-height: 1.5;
}
.p-news-entry__cont img {
	max-width: 100%;
}
@media screen and (max-width: 960px) {
	.p-news-sec.-entry {
		margin-bottom: 100px;
	}
	.p-news-entry {
		width: 100%;
	}
	.p-news-entry__inner {
		margin-bottom: 100px;
	}
	.p-news-entry__ttl {
		font-size: 2.7rem;
	}
}
@media screen and (max-width: 769px) {
	.p-news-entry__inner {
		margin-bottom: 80px;
	}
	.p-news-entry__header {
		margin-bottom: 30px;
	}
	.p-news-entry__ttl {
		font-size: 2.4rem;
	}
}
@media screen and (max-width: 600px) {
	.p-news-sec.-entry {
		margin-bottom: 50px;
	}
	.p-news-entry__inner {
		margin-bottom: 60px;
	}
	.p-news-entry__header {
		margin-bottom: 20px;
	}
	.p-news-entry__ttl {
		font-size: 2rem;
	}
}
/*-- News Sidebar --*/
.p-news-sec-sidebar__block {
	padding: 25px 20px 30px;
/*	border: 1px solid #494848;*/
	background: #eae7e5;
}
.p-news-sec-sidebar__block + .p-news-sec-sidebar__block {
	margin-top: 40px;
}
.p-news-sec-sidebar-block__header {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #8c7e72;
}
.p-news-sec-sidebar-block__ttl {
	margin-bottom: 10px;
/*	color: #fff;*/
	font-size: 1.8rem;
	letter-spacing: .1em;
	line-height: 1;
}
.p-news-sec-sidebar-block__eng {
	color: var(--cmn-color02);
	font-size: 1.4rem;
	letter-spacing: .1em;
	line-height: 1;
}
.p-news-sec-sidebar-block__li, .p-news-sec-sidebar-block__li a {
	line-height: 1;
	text-decoration: none;
}
.p-news-sec-sidebar-block__li + .p-news-sec-sidebar-block__li {
	margin-top: 20px;
}
.p-news-sec-sidebar-block__li a {
	display: block;
	position: relative;
	padding-left: 26px;
}
.p-news-sec-sidebar-block__li a:before {
	width: 10px;
	height: 1px;
	content: '';
	display: inline-block;
	position: absolute;
	top: 7px;
	left: 0;
	background: var(--cmn-color02);
	transition: .3s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.p-news-sec-sidebar-block__li a:hover:before {
		width: 15px;
	}
}
@media screen and (max-width: 960px) {
	.p-news-sec-sidebar__block {
		padding: 25px 20px 10px;
	}
	.p-news-sec-sidebar-block__header {
		margin-bottom: 10px;
	}
	.p-news-sec-sidebar-block__ul {
		display: flex;
		flex-wrap: wrap;
	}
	.p-news-sec-sidebar-block__li {
		width: 50%;
	}
	.p-news-sec-sidebar-block__li + .p-news-sec-sidebar-block__li {
		margin-top: 0;
	}
	.p-news-sec-sidebar-block__li a {
		padding: 12px 0 12px 26px;
	}
	.p-news-sec-sidebar-block__li a:before {
		top: 19px;
	}
}
@media screen and (max-width: 600px) {
	.p-news-sec-sidebar__block + .p-news-sec-sidebar__block {
		margin-top: 30px;
	}
	.p-news-sec-sidebar-block__ttl {
		font-size: 1.6rem;
	}
	.cat-bx .p-news-sec-sidebar-block__ul {
		display: block;
/*
		 gap: 10%; 
  　　　　padding: 0;
  　　　　margin: 0;
  　　　　list-style: none;
*/
	}
	.p-news-sec-sidebar-block__li.cat-item {
		margin-bottom: 15px;
	}
	
}

ul#navs li {font-family: var(--font-family-min);}


/*display*/
.dis_block{display:block;}
.dis_inblock{display:inline-block;}
.dis_none{display:none;}
@media screen and (min-width:651px){
	.dis_none_wide{display:none;}
}
@media screen and (max-width:650px){
	.dis_none_sp{display:none;}
	.dis_block_sp{display:block;}
}



/*

.news-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.news-item {
    width: calc(25% - 15px); 
    box-sizing: border-box;
}

.news-thumbnail img {
    width: 100%;
    height: auto;
}

.news-title {
    font-size: 16px;
    margin-top: 10px;
}
*/





/* 全体セクション */
.a1-section {
    padding: 140px 10%;
    background-color: #fff;
}
@media screen and (max-width: 767px) {
.a1-section {
    padding: 50px 10%;
   }
}
.a1-section {
    font-size: 24px;
    margin-bottom: 20px;
    text-align: center;
}

.b1-section {
	 background-color: #fff;
}


.news-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: space-between;
	margin-bottom: 70px;
}
@media screen and (max-width: 767px) {
	.news-list {
	margin-bottom: 50px;
   }   	
}
.news-item {
    width: calc(25% - 15px); /* 4列用 */
    box-sizing: border-box;
}
.news-thumbnail {
    width: 100%;
    aspect-ratio: 4 / 3; /* 画像比率：4:3 */
    overflow: hidden;
    display: block;
    background-color: #ddd;
    position: relative;
}
.news-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 中央トリミング */
    display: block;
}
.news-title a {
	display: block;
    font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
    margin-top: 20px;
    text-align: center;
}

@media screen and (max-width: 820px) {
    .news-item {
        width: calc(50% - 10px); /* タブレットで2列 */
    }
}
/*
@media screen and (max-width: 600px) {
    .news-item {
        width: 100%; 
		margin-bottom: 30px;
    }
}
*/

/* お知らせ レッスン */

.informationAr .informationAr_cll {
	display: block;
	position: relative;
}

.eventNy {
	display: block;
	position: relative;
	height: auto;
	background-color: #ebe7e4;
	padding: 35px 24px;
	margin-bottom: 30px;
	overflow: hidden;
}

.eventNy .leftSC {
	float: left;
	width: 46%;
	padding: 0 ;
/*	padding-left: 45px;*/
/*	border-right: 1px solid #E1D9D2;*/
}
.eventNy .leftSC p {
	position: relative;
/*	margin-bottom: 8px;*/
}
.eventNy .leftSC p.fnt_s01:before {
	display: none;
}
.eventNy .leftSC p.fnt_s01 {
	margin-top: -10px;
}
.eventNy .rightSC p:last-child {
	margin-bottom: 30px;
}
.eventNy .rightSC p:last-child a {
	margin-left: 4px;
	padding: 0 5px 0 0;
/*	font-size: 13px;*/
	font-weight: bold;
	text-decoration: underline;
	transition: .5s;
	line-height: 1;
	color: #a5212f;
}
.eventNy .rightSC .lssn_ar p:last-child a {
	margin-left: 4px;
	padding: 0 5px 0 0;
	font-size: 13px;
	font-weight: bold;
	text-decoration: underline;
	transition: .5s;
	line-height: 1;
	color: #a5212f;
}
.eventNy .rightSC p:last-child a:hover {
	opacity: 0.6;
}
.eventNy .rightSC .lssn_ar p:last-child a:before {
    width: 12px;
    aspect-ratio: 12 / 16;
    margin-right: 0px;
    vertical-align: -5px;
    font-family: "Material Icons";
    content: "\e0c8";
    color: #a5212f;
    font-size: 2.2rem;
}
/*
.eventNy .leftSC p:first-child > span {
    font-weight: normal;
    font-size: 16px;
}
*/
.eventNy .leftSC p > span {
    font-weight: bold;
}
/*
.eventNy p b {
	position: relative;
	font-size: 20px;
	display: block;
}
*/
/*
.eventNy .leftSC p:before {
	z-index: 10;
	content: "";
	position: absolute;
	border-left: 5px solid #bbc52e;
	left: -12px;
	top: 7px;
	width: 3px;
	height: 20px;
	display: block;
}
*/
.eventNy .rightSC {
	float: right;
	width: 48%;
}
.eventNy .rightSC p {
	padding: 0px 0px;
	font-size: 14px;
/*	line-height: 2em;*/
}
.eventNy storng{
	font-size: 22px;
	line-height: 42px;
}
/*
.eventNy p * {
    font-size: 18px;
}
*/
.eventNy p,
.eventNy p a ,
.eventNy p b ,
.eventNy p u ,
.eventNy p:nth-last-of-type(1) {
	font-size: 16px;
	margin-bottom: 30px;
    font-family: var(--font-family-goc); 
}
.eventNy p b {
	font-family: var(--font-family-goc); 
	font-weight:700;
}
.eventNy p u {
  background: linear-gradient(to top, #ebe6b6 50%, transparent 50%);
  text-decoration: none;	
}

.eventNy .teiinn p ,
.eventNy .leftSC p span.fnt_s01 {
font-weight:700;
}




/*　タイムスケジュール　*/

.subText {
    display: block;
    margin-top: 12px;
    font-size: 14px !important;
	font-weight: normal !important;
	font-family: var(--font-family-goc);
}
	.tmSchedule h3 {
	font-size: 22px;
	position: relative;
	padding-left: 16px;			
	margin-left: 0px;
}
/*
.tmSchedule h3:before {
	z-index: 10;
	content: "";
	position: absolute;
	border-left: 5px solid #bbc52e;
	left: -12px;
	top: 7px;
	width: 3px;
	height: 1em;
	display: block;
}
*/
.tmSchedule {
	clear: both;
	margin-top: 60px;
}
.tmSchedule .tm_line {
	position: relative;
	display: block;
	margin-top: 48px;
}
.tmSchedule .tm_line:before {
	z-index: -10;
	content: "";
	position: absolute;
	border-left: 1px solid #E1D9D2;
	left: 30px;
	top: 18px;
	width: 1px;
	height: 100%;
}
.tmSchedule .tm_line > div {
    position: relative;
    clear: both;
}
.tmSchedule .sch_Lf {
	width: 10%;
	float: left;
}
.tmSchedule .sch_Lf h4 {
	font-size: 20px;
	position: relative;
	line-height: 1em;
	padding: 7px;
	background: #f4db52;
	border-bottom: 3px solid #f4db52;
	text-align: center;
}

#news_lesson .tmSchedule .sch_Lf h4:before {
	z-index: -10;
	content: "";
	position: absolute;
	left: 72px;
	border-radius: 60px;
	top: 3px;
	height: 16px;
	width: 16px;
}

.tmSchedule .sch_Rt {
	width: 85%;
	float: right;
}
.tmSchedule .sch_Rt h5 {
	font-family: var(--font-family-goc);
	font-size: 20px;
	line-height: 1em;
}
.tmSchedule .sch_Rt p.sch_numb {
	position: absolute;
	font-size: 20px;
	color: #483724;
	z-index: 100;
	left: 14px;
	top: 0px;	
/*
	left: 6px;
	top: -14px;
*/
}
.tmSchedule .sch_Rt p {
	margin-top: 12px;
	margin-bottom: 36px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.2;
}
.tmSchedule .sch_Rt img {
	width: 100% !important;
/*	max-width: 855px !important;*/
	position: relative;
}

.tmSchedule .sch_Rt div {
	position: relative;
}
.tmSchedule .sch_Rt .lastLesson {
	clear: both;
}

.tmSchedule .sch_Rt div::before {
	z-index: 10;
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 48px;             
	height: 48px;            
	background-color: #f4db52; 
}
.tmSchedule .sch_Rt div.schbg_non::before {
	z-index: 10;
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 48px;             
	height: 48px;            
	background-color: transparent;
}
.tmSchedule .sch_Rt div.img_onl1 {
	margin-bottom: 24px;
}
.tmSchedule .sch_Rt div.img_onl1::before {
	display: none;
}
.tmSchedule .sch_Rt .szfull {
	display: block;
	width: 100%;
}
/*
.tmSchedule .sch_Rt .szfull img {
	display: block;
	width: 100%;
}
*/
.p-lesson-list .tmSchedule .sch_Rt div::before {
	z-index: 10;
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 48px;             
	height: 48px;            
	background-color: #f4db52; 
}
.p-lesson-list .tmSchedule .sch_Rt .szhalf div {
	float: left;
	width: 100%;
	display: block;
}
.p-lesson-list .tmSchedule .sch_Rt p.sch_ny {
	margin-left: 70px!important;
}
.p-lesson-list .tmSchedule .sch_Rt .szhalf div:nth-child(even) {
    margin-left: 0px;
    width: 100%;
}



.tmSchedule .sch_Rt .szhalf div {
	float: left;
	width: 49%;
}
.tmSchedule .sch_Rt .szhalf div:nth-child(even) {
	margin-left: 6px;
	width: 49%;
}
.tmSchedule .tm_finish .sch_Rt h5 span.fnt_s01 {
	display: block;
	margin-bottom: 60px;
	margin-top: 10px;
}


.appAR {
	clear: both;
}
.tmSchedule .sch_Rt .szfull {
	clear: both;
}


.lesson_news_prf{
	width: 100%;
	display: flex;
	justify-content: space-between;
	gap: 5%;
	margin-bottom: 50px;
}
.news_prf_r {
	width: 40%;
	margin-bottom: 40px;
}
.news_prf_r img{
	width: 100%;
}


.informationAr {
  width: 100%;
  display: table;
}
.informationAr .informationAr__cell {
  display: table-cell;
  vertical-align: top;
}
.informationAr a {
  color: #b6002a;
  text-decoration: underline;
}
.tmSchedule .tm_finish .sch_Rt h5 {
	margin-top: 0px;
}
.prf_name{
	margin-bottom: 4rem;
}
a [href^="tel:"] { 
	cursor: default;
	color: #fff;
	text-decoration: none;
	pointer-events: none;
}
.teiinn{
width:90%; 
border-radius:0px;
/*border:2px solid #f4f0ed;*/
background: #f4f0ed;
padding: 20px 30px 5px;
}

@media only screen and (max-width: 1024px) {
.news_prf_r {
	flex: 1;
  }
.news_prf_l {
	flex: 2;
  }	
}
@media only screen and (max-width: 640px) {
.news_prf_r {
	width: 70%;
	margin:0 auto 40px;
   }
		.eventNy {
		height: auto !important;
	}
	.eventNy .leftSC {
		float: none;
		width: 100%;
		clear: both;
/*		padding-left: 20px;*/
		padding: 0 0 30px;
		margin-bottom: 30px;
		border-right: none;
		border-bottom: 1px solid #E1D9D2;
	}
/*
	.eventNy .leftSC p:before {
		border-left: 4px solid #B6002A;
		left: 0px;
		top: 5px;
		width: 2px;
		height: 15px;
	}
*/
	.eventNy .leftSC p > span {
		font-size: 18px;
	}
	.eventNy .leftSC p.fnt_s01 {
		margin-top: 0px;
		margin-bottom: 16px;
	}
/*
	.eventNy .leftSC p:nth-child(2) {
		margin-top: 16px;
	}
*/
	.eventNy .leftSC p:last-child b span {
		display: inline-block;
	}
	.eventNy p span.fnt_s01 {
		margin-bottom: 20px;
		display: block;
		font-weight: normal;
		margin-top: 6px;
	}
	.eventNy p span.small01 {
		margin-bottom: 20px;
		display: block;
		font-weight: normal;
		margin-top: 6px;
	}	
	.eventNy .leftSC p:last-child {
		margin-bottom: 24px;
	}
/*
	.eventNy p b {
		display: block;
		position: relative;
		font-size: 18px;
		margin-left: 10px;
		margin-bottom: 8px;
	}
*/
	
.eventNy p,
.eventNy p a ,
.eventNy p b ,
.eventNy p u ,	
.eventNy p:nth-last-of-type(1) {
	font-size: 16px;
	margin-bottom: 30px;
}	
	
	.eventNy p b span {
		display: block;
	}
	.eventNy p a span:last-child {
		display: inline-block;
	}
	.eventNy .leftSC p:last-child > span {
		font-weight: bold;
		font-size: 14px;
	}
	.eventNy .rightSC {
		float: none;
		width: 100%;
		clear: both;
	}
/*
	.eventNy .rightSC p {
		padding: 0px;
	}
*/
	.eventNy .rightSC p b {
		margin-left: 0px !important;
		font-size: 16px;
	}
	
	.tmSchedule {
		margin-top: 48px;
	}
	.tmSchedule .tm_line {
		margin-top: 0px;
	}
	.tmSchedule .tm_line:before {
		display: none;
	}
	.tmSchedule h3:before {
		top: 5px;
	}
	.tmSchedule .sch_Lf h4:before {
		left: 0px;
		top: -4px;
		height: 36px;
		width: 100%;
		border-radius: 0;
		background-color: #F1EEEB;
	}
	.tmSchedule .sch_Lf h4:after {
		display: none;
	}
	.tmSchedule .sch_Lf {
		width: 100%;
		margin-bottom: 24px;
	}
.p-news-cont .tmSchedule .sch_Lf h4 {
		font-size: 18px;
		text-align: center;
		margin-top: 36px;
		padding: 10px;
	}
	.tmSchedule .tm_am .sch_Lf h4 {
	    margin-top: 12px;
	}
	.tmSchedule .tm_finish .sch_Lf h4 {
	    margin-top: 12px;
	}
	.tmSchedule .sch_Rt .szhalf div {
		float: left;
		width: 100%;
	}
	.tmSchedule .tm_finish .sch_Rt .szfull p {
		margin-bottom: 0;
	}
	.tmSchedule .sch_Rt {
		width: 100%;
		clear: both;
		display: block;
	}
	.tmSchedule .sch_Rt p.sch_numb {
		top: 5px;
	}
/*
	.tmSchedule .leftSC .eventNy p b {
		margin-left: 12px;
	}
*/
	.tmSchedule .sch_Rt .szhalf {
		width: 100%;
	}
	.tmSchedule .sch_Rt .szhalf div:nth-child(even) {
		margin-left: 0;
		width: auto;
	}
	.tmSchedule .sch_Rt p {
		margin-top: 8px;
		margin-bottom: 24px;
		font-size: 16px;
	}
	.tmSchedule .sch_Rt p.fnt_s01 {
		font-weight: normal;
	}
	
	.instructorsSec div {
		float: none;
		width: 100%;
		border-right: none;
		border-bottom: 1px solid #E1D9D2;
		padding: 20px 5px;
		margin: 0px;
	}
	.instructorsSec div {
		margin-top: 20px;
		position: relative;
		margin: 0 auto;
		width: 100%;
		left: 50%;
		display: inline-block;
		margin-left: -150px;
	}
	.instructorsSec div img {
		margin-right: 20px;
	}
	.instructorsSec div.instructor1 {
	    margin-top: 20px;
	}
	.instructorsSec div.instructor3 {
	    margin-bottom: 20px;
		border: none;
	}
	.instructorsSec {
		padding-top: 32px;
		padding-bottom: 32px;
		margin-top: 160px;
	}
	.instructorsSec h3 {
		margin-bottom: 32px;
	}
	.instructorsSec h3:before {
		top: 5px;
	}
	.instructorsSec p a {
		font-size: 14px;
	}
	.instructorsSec div p {
		float: none;
	}
	.appAR h3 {
		margin-bottom: 32px;
	}
	.appAR > p {
		margin-top: -21px;
		margin-left: 18px;
		display: inline-block;
	}

	.tmSchedule .tm_finish {
		overflow: hidden;
	}
	.tmSchedule .tm_finish .sch_Rt h5 {
		margin-top: 8px;
	}
	
.lesson_news_prf{
	width: 100%;
	display: block;
	gap: 0rem;
   }
a [href^="tel:"] { 
		pointer-events: all;
	}	
.teiinn{
width:100%; 
padding: 20px 15px 5px;	
	}
	
}


.eyecatch-wrapper {
  width: 100%;
  aspect-ratio: 1 / 1;       /* 正方形にする（モダンブラウザ対応） */
  border-radius: 50%;        /* 丸くする */
  overflow: hidden;          /* はみ出しを隠す */
  display: flex;
  align-items: center;
  justify-content: center;
}

.eyecatch-img {
  width: 100%;
  height: 100%;
  object-fit: cover;         /* 中央から切り抜き */
  display: block;
}

.subimg-full {
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 50px;		
}

.p-newslesson-cont2 {
margin-top: 50px;	
}


.tp_movie {
  width:100%;
  position: relative;
  padding-top: calc(100% / (950 / 533)); 
　margin:0 auto;	
}

.tp_movie iframe  {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
　margin: 0px;
  padding-bottom: 50px;
　　}




/***********/  
.tp_cotent {
    width: 100%;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 50px;
	justify-content: space-between;
  }

.p-tp-enter .tp_cotent_itm {
    position: relative;
    width: 49%;
	
  }
.p-tp-enter .tp_cotent_itm a {
    display: block;
    text-decoration: none;
    color: inherit;
  }
.p-tp-enter .tp_cotent_itm a:hover .bx-img img {
    opacity: 0.7;
  }
.p-tp-enter .tp_cotent_itm .bx-img {
    position: relative;
    background-color: #222;
  }
.p-tp-enter .tp_cotent_itm .bx-img::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 30%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgb(0, 0, 0)));
    background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 100%);
    z-index: 2;
    opacity: 0.3;
  }
.p-tp-enter .tp_cotent_itm .bx-img img {
    width: 100%;
    position: relative;
    z-index: 1;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
.p-tp-enter .tp_cotent_itm .bx-txt {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 40%;
    z-index: 3;
    padding-right: 45px;
  }
.p-tp-enter .tp_cotent_itm .ttl-ent-en {
    margin-bottom: 11px;
    line-height: 0.5;
    height: 10px;
    color: #fff;
    font-family: "sweet-sans-pro", sans-serif;
    font-size: 12px;
  }
.p-tp-enter .tp_cotent_itm .ttl-ent-en img {
    height: 93%;
    width: auto;
  }
.p-tp-enter .tp_cotent_itm .ttl-ent-en.easy {
    height: 23px;
    margin-bottom: 5px;
  }
.p-tp-enter .tp_cotent_itm .ttl-brand-ja {
    font-size: 30px;
	font-weight: 700;
    line-height: 22px;
    color: #fff;
	font-family: var(--font-family-goc);
  }
/*
.p-tp-enter .tp_cotent_itm .ttl-brand-ja span {
    display: inline-block;
	    color: #fff;
  }
*/
.p-tp-enter .tp_cotent_itm .btn {
    position: absolute;
    right: 0;
    bottom: 4px;
    z-index: 5;
    width: 35px;
    height: 35px;
    cursor: pointer;
    border: 1px solid #fff;
    border-radius: 50%;
  }
/*
.p-tp-enter .tp_cotent_itm .btn::after {
	color:#fff;
	width: 18px;
	aspect-ratio: 18 / 14;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\e5cc";	
    font-size: 3.2rem;
  }
*/

.p-tp-enter .tp_cotent_itm .btn::after {
  color: #fff;
  width: 18px;
  aspect-ratio: 18 / 14;
  font-family: "Material Icons";
  content: "\e5cc";	
  font-size: 3.2rem;

  position: relative;
  top: -11px; /* ← ここで上にずらす。数値はお好みで調整 */
}

@media screen and (max-width: 767px) {
	.p-tp-enter .tp_cotent_itm .ttl-brand-ja {
    font-size: 28px;
	}
}
@media screen and (max-width: 767px) {
.tp_movie iframe  {
	padding-bottom: 20px;
　　}
.tp_cotent {display: block;}
.p-tp-enter .tp_cotent_itm {
    width: 100%;
	margin-bottom: 15px;
  }	
	
}

/*---------レッスン一覧---------*/
.lssn_bx01 {
display: flex;
	justify-content: space-between;
	width: 100%;
	padding: 20px 40px;	
	background: #fff;
}


.lssn_bx01 * {
font-family: var(--font-family-goc);
}
.lssn_bx01 h3,
.lssn_bx01 h4,
.lssn_bx01 h4 a,
.lssn_bx01 h5{
	font-weight: 700;
}

.lssn_bx01 h3.lssn_bx_l{
	width: 30%;
	height: auto;
	background: #4da48f;
	color:#fff;
	font-weight: 700;
	padding: 10px;
	display: flex;               
	justify-content: center;    
	align-items: center;         
	text-align: center; 
	margin-top: 40px;
}
.lssn_bx01 h3.lssn_bx_l2{
	width: 30%;
	height: auto;
	background: #e1bd4f;
	color:#fff;
	padding: 10px;
	display: flex;               
	justify-content: center;    
	align-items: center;         
	text-align: center; 
	margin-top: 40px;/* 20+20+30*/
}

.lssn_bx01 h4 a:before {
	width: 18px;
/*
	aspect-ratio: 18 / 14;
	vertical-align: -5px;
*/
	vertical-align: middle;
	font-family: "Material Icons";
	content: "\e5df";	
    font-size: 2.6rem;
	padding-left: 0;
	margin-left: -5px;;
}

.lssn_bx01 table.lssn_bx_r{
	width: 70%;
	color:#000;
    border-collapse: separate;  /* 表の線と線の間を空ける */
}

/*
.lssn_bx01 table.lssn_bx_r .mgb20 {
	margin-bottom: 20px;
}
*/
.lssn_bx01 table.lssn_bx_r th,
.lssn_bx01 table.lssn_bx_r td {
	padding: 15px;
}
.lssn_bx01 table.lssn_bx_r tr:nth-child(2) th,
.lssn_bx01 table.lssn_bx_r tr:nth-child(2) td {
  border-bottom: 7px solid #fff;
}
.lssn_bx01 table.lssn_bx_r th{
	width:30%;
	background: #ebe7e4;
	font-size: 18px;
	font-weight: 700;
	text-align: left;
}
.lssn_bx01 table.lssn_bx_r td{
	width:40%;
	background: #f4f2ef;
}
table.lssn_bx_r th.gb_non{
	background: none!important;
	height: 10px;
	padding: 5px 15px!important;
	font-size: 16px!important;
}



.lssn_name_lst {
	list-style-type: none;
}
.lssn_bx01 h5,
.lssn_name_lst li {
font-size: 16px;
	line-height: 1.2;
	margin-bottom: 0px;
}
.lssn_bx01 h5{
	margin: 15px 0;
}
.lssn_name_lst li a:before {
	width: 18px;
	aspect-ratio: 18 / 14;
	vertical-align: -5px;
	font-family: "Material Icons";
	content: "\e5df";	
    font-size: 2.2rem;
}




@media screen and (max-width: 1024px) {
	.lssn_bx01 h3.lssn_bx_l,
	.lssn_bx01 h3.lssn_bx_l2 {
		width: 25%;
	}
	.lssn_bx01 table.lssn_bx_r{
	width: 75%;
	}
	.lssn_bx01 table.lssn_bx_r th{
	width:35%;
	}
}
@media screen and (max-width: 820px) {
	.lssn_bx01 table.lssn_bx_r th{
	font-size: 16px;
	}
	.lssn_bx01 {
display: block;;
	}
	.lssn_bx01 h3.lssn_bx_l,
	.lssn_bx01 h3.lssn_bx_l2 {
		width: 100%;
	}
	.lssn_bx01 table.lssn_bx_r{
		width: 100%;
	}
	
}
@media screen and (max-width: 599px) {
    .lssn_bx01 table.lssn_bx_r th,
	.lssn_bx01 table.lssn_bx_r td {
		width: 100%;	
		display: block;
	}
	.lssn_bx01 table.lssn_bx_r tr:nth-child(2) th {
    border-bottom: 0px;
   }
	.lssn_bx01 table.lssn_bx_r tr:nth-child(2) td {
    border-bottom: 30px solid #fff;
   }
	.lssn_bx01 table.lssn_bx_r th.gb_non {
        display: none;
    }
/*
.p-lssn-cont .c-cont-md {
        width: 100%;
    }
*/
  .lssn_bx01 h3.lssn_bx_l {
	margin-top: 30px;
	}
  .lssn_bx01 h3.lssn_bx_l2 {
	margin-top: 20px;
	}
	
  .lssn_bx01 {
	padding: 20px 5%;	
	}
	
	.p-lesson-list .c-txt-def {
	width: 90%;
	margin:0 auto 30px;
	}

}



.lssn_movie_bx {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  width: 100%;
  margin:　0 auto;
	padding-top: 30px;
}

.mv_itm {
  width: 100%;
  margin-bottom: 30px;
}

/* 動画を16:9比率でレスポンシブに表示する */
.mv_itm .mvcnt{
  position: relative;
  width: 100%;
  padding-top: calc(100% * (533 / 950)); /* 16:9 */
  background: #000;
  overflow: hidden;
}

.mv_itm .mvcnt iframe, 
.mv_itm .mvcnt img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.mv_itm h4{
	font-family: var(--font-family-goc);
    font-size: 2rem;
	font-weight: 600;
	margin-top: 20px;
}

@media (max-width: 768px) {
  .lssn_movie_bx {
    grid-template-columns: 1fr; /* 1列にする */
  }
}



.acd-check {
    display: none;
}

.acd-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease;
}

.acd-label {
    cursor: pointer;
    display: block;
    background: #a69a82;
    color: #fff;
    padding: 10px;
    text-align: center;
    font-size: 2rem;
    font-weight: 600;
	font-family: var(--font-family-goc);
    position: relative;	
}

.acd-label::after {
    float: right;
    background: #95876b;
    box-sizing: border-box;
    content: '\e145';
    display: block;
    font-family: 'Material Icons';
	font-size:2rem;
    height: 53px;
    padding: 10px 20px;
    position: absolute;
    right: 0;
    top: 0px;	
}

.acd-label.open::after {
    content: '\e931';
	padding: 0px 20px;
}




/*インストラクター*/

/*資格タグ*/
.license-tags {
    display: flex;
    flex-wrap: wrap;
	justify-content: center;
    gap: 0.5em;
}
.tag {
    padding: 0.3rem 0.8rem;
    border-radius: 4px;
    font-size: 1.2rem;
    display: inline-block;
    white-space: nowrap;
}

.tag.tour {
	color: #fff;
    background-color: #b80028; /* ツアープロ： */
	border: 1px solid #b80028;
}

.tag.teachA {
	color: #b80028;
    background-color: #fff; /* ティーチングプロA級： */
	border: 1px solid #b80028;
}

.p-tp-instrct .tag {
    padding: 0.3rem 0.3rem;
    font-size: 0.8rem;
}

.prof_tantou{
	color: #b80028;	
	text-align: center;
	margin-bottom: 2rem;
}
.prof_license{
	margin: 2rem auto;
}

/*リスト*/
.p-tp-instrct .instrct_lst {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.p-tp-instrct .instrct_itm {
flex: 0 0 calc((100% - (20px * 5)) / 6); /* gapが3つなので20px * (4 - 1) */
max-width: calc((100% - (20px * 5)) / 6);
margin-bottom: 5rem;
}


.p-instrct_-list1 .instrct_lst {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.p-instrct_-list1 .instrct_itm {
flex: 0 0 calc((100% - (40px * 3)) / 4); /* gapが3つなので20px * (4 - 1) */
max-width: calc((100% - (40px * 3)) / 4);
margin-bottom: 5rem;
}

.instrct_prof img {
		width: 75%;
		margin: 0 auto 30px;
}
.instructor-list1 .instrct_lst {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap; 
	gap: 20px; /* ← 任意：要素間の余白を調整 */
}
/*
.instructor-list .instrct_itm {
flex: 0 0 29%;
margin-bottom: 5rem;
}
*/

/*
.p-tp-instrct .instrct_itm {
flex: 0 0 16%;
margin-bottom: 5rem;
}
*/
/* タブレット（4列） */
@media screen and (max-width: 1024px) {
 .p-tp-instrct .instrct_itm {
    flex: 0 0 calc((100% - 60px) / 4); /* 4列: gapが3つ → 20px * 3 */
    max-width: calc((100% - 60px) / 4);
  }
	
.p-instrct_-list1 .instrct_lst {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}	
.p-instrct_-list1 .instrct_itm {
    flex: 0 0 calc((100% - 60px) / 3); /* 4列: gapが3つ → 20px * 3 */
    max-width: calc((100% - 60px) / 3);
  }	
}
/* スマホ（3列） */
@media screen and (max-width: 767px) {
 .p-tp-instrct .instrct_itm {
    flex: 0 0 calc((100% - 40px) / 3); /* 3列: gapが2つ → 20px * 2 */
    max-width: calc((100% - 40px) / 3);
  }
	
  .p-instrct_-list1 .instrct_itm {
    flex: 0 0 100%;        /* スマホでは1列 */
    max-width: 100%;
  }
}


p.instrct_name {
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 2;
	margin-bottom: 15px;
	text-align: center;
}
p.instrct_name span{
	font-size: 1.6rem;
	font-weight:normal;
	line-height: 1;
	margin-bottom: 15px;
}

.p-tp-instrct p.instrct_name {
	font-size: 2.0rem;
		line-height: 1;
	margin-bottom: 10px;
}
.p-tp-instrct p.instrct_name span{
	font-size: 1.0rem;
	margin-bottom: 10px;	
}
@media screen and (max-width: 767px) {
	p.instrct_name {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 8px;
	text-align: center;
}
p.instrct_name span{
	font-size: 1.2rem;
	font-weight:normal;
	line-height: 1;
	margin-bottom: 5px;
}
	
	
.p-tp-instrct p.instrct_name {
	font-size: 1.2rem;
		line-height: 1;
	margin-bottom: 10px;
    }
}
/*
p.prof_link { 
margin-block-start: 0em;
    margin-block-end: 0em;	
line-height: 1;
}
*/
p.prof_link a{ 
text-decoration: underline;
color: #b80028;
}
.instructor-list p.prof_link { 
	text-align: center!important;
}
@media screen and (max-width: 820px) {
	.instrct_itm {
      flex: 0 0 50%;
    }
}
@media screen and (max-width: 767px) {
	.instrct_itm {
    flex: 0 0 100%;
    }
	.instrct_prof img{
		width: 70%;
		margin: 0 auto 15px;
	}
}

/*レッスン特徴ラベル*/
.ls_label {
    display: flex;
	justify-content: flex-start;
	flex-wrap: wrap; 
    gap: 0.5em;
	margin-bottom: 1.5em;
}
.ls_label .tag {
    padding: 0.3rem 0.8rem;
    border-radius: 30px;
    font-size: 1.2rem;
    display: inline-block;
    white-space: nowrap;
	
	color: #412e1d;
    background-color: #f4f0ed; 
	border: 1px solid #412e1d;	
	font-weight: 600;
}

.ls_label .tag.ls_extra {
	color: #fff;
    background-color: #4da48f; 
	border: 1px solid #4da48f;
}
.ls_label .tag.ls_18h {
	color: #fff;
    background-color: #dcb12d; 
	border: 1px solid #dcb12d;
}
.ls_label .tag.bgnr {
	color: #fff;
    background-color: #dc7b2d; 
	border: 1px solid #dc7b2d;
}

.lssn_bx_r a:hover {
Color:#a5212f;
text-decoration: underline;
}


/*施設*/

.p-facility-cont table {
	width: 95%;
	border-top: 1px solid #4b3624;
	border-right: 1px solid #4b3624;
	border-collapse: separate;
	border-spacing: 0;
	margin-left: 10px;
}

.p-facility-cont th,
.p-facility-cont td {
	padding-block: 10px 10px;
	text-align: center;
	letter-spacing: .2em;
	line-height: 1.4;
	border-bottom: 1px solid #4b3624;
	border-right: 1px solid #a99d8e;
	border-left: 1px solid #a99d8e;
	padding: 5px;
}
.p-facility-cont th{
	background: #ebe7e4;
}
.p-facility-cont th:last-child,
.p-facility-cont td:last-child {
		border-right: none;
}

.faci_tbl01 th, 
.faci_tbl01 td {
	font-weight:700;
}
.faci_tbl01 tr td:nth-child(2),
.faci_tbl01 tr th:nth-child(2) {
 color: #a5212f;
}

.p-facility-sec2 {
  display: flex;
  align-items: stretch;
  gap: 0;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 5rem;
}

/* 画像とテーブルの比率指定 */
.p-facility-sec2_itm.img-area {
  flex: 7;
}
.p-facility-sec2_itm:not(.img-area) {
  flex: 2;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  justify-content: flex-start;
/*  display: flex;*/
  align-items: center;
}

/* テーブルそのものの設定 */
.faci_tbl01 {
  margin: 0;
  padding: 0;
/*  width: 100%;*/
	min-width: 180px;
  height: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  box-sizing: border-box;
}
@media screen and (max-width: 1024px) {
  .p-facility-sec2_itm.img-area {
  flex: 7;
  }
  .p-facility-sec2_itm:not(.img-area) {
  flex: 2;
   }
  .faci_tbl01 {
   font-size: 1.0rem;
	}
	.p-facility-cont th, .p-facility-cont td {
     padding-block: 4px 5px;
	}
}
@media screen and (max-width: 767px) {
    .p-facility-sec2 {
    display: block;
	margin-bottom: 3rem;	
	}
	.p-facility-cont table {
    width: 100%;
	margin-left: 0px;	
	margin-top: 15px;	
	}
}



/*--outline--*/
.c-sec01 {
	margin-bottom: var(--cont_margin-bottom03b);
}
.c-sec02 {
	margin-bottom: var(--cont_margin-bottom02);
}
.p-outline {
	display: flex;
	justify-content: space-between;
	z-index: 1;
}
.p-outline-img {
	width: 50%;
}
.p-outline-img img {
	width: 100%;
	height: auto;
}
.p-outline-itm {
	width: 50%;
	padding: 50px var(--cont_margin-side) 0;
}
.p-outline-itm_lab {
	color:#fff;
	background: #483724;
	line-height: 1.4;
	font-size: 1.8rem;
		font-weight: 600;
	padding: 15px 50px;
	margin-bottom: 25px;
	display: inline-block;
}
.p-outline-itm_ct {
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 1.6;
	color: var(--cmn-color02);
	margin-bottom: 30px;
}
.p-outline-itm_txt {
	margin-bottom: 30px;
font-size: 1.6rem;
    letter-spacing: 0.15em;
    line-height: 2.2;
    color: var(--color-black);	
}
.p-outline-itm-img {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-right: calc(var(--cont_margin-side) * -1);
}
.p-outline-itm-img img {
	width: 100%;
	height: auto;
}
.p-outline-itm-img_01 {
	width: 60%;
}
.p-outline-itm-img__02 {
	width: 35%;
	margin-top: 50px;
}
/*
@media screen and (max-width: 1200px) {
	.p-outline-itm_lab {
		font-size: 1.3rem;
		padding: 5px 10px;
	}
	.p-outline-itm_ct {
		font-size: 2.2rem;
	}
	.p-outline-itm_txt {
		margin-bottom: 30px;
	}
}
*/
@media screen and (max-width: 820px) { /*960*/
	.p-outline {
		display: block;
	}
	.p-outline-img {
		width: 100%;
	}
	.p-outline-itm {
		width: 100%;
	}
}
@media screen and (max-width: 769px) {
	.p-outline-itm {
		padding: 30px var(--cont_margin-side) 50px;
	}
	.p-outline-itm_lab {
		font-size: 1.1rem;
	}
	.p-outline-itm_ct {
		font-size: 1.8rem;
		margin-bottom: 20px;
	}
}


.outline_sec {
    position: relative;
    overflow: hidden;
  }

  .bg-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
/*    opacity: 0.35;*/
    z-index: 0;
    transition: background-image 1s ease-in-out;

  }


.outline_sec .c-cont-lg {
		margin: 50px auto!important;  	
}

  .p-outline2-itm {
    position: relative;
/*    z-index: 1;*/
    padding: 40px;
    background-color: rgba(255, 255, 255, 0.9);
/*    border-radius: 8px;*/
  }

  .p-outline2 {
    display: flex;
    justify-content: space-between;
  }

  .p-outline2-itm,
  .p-outline2_imgar {
    width: 50%;
  }
@media screen and (max-width: 1200px) {
  .p-outline2 {
    display: block;
	}
  .p-outline2-itm,
  .p-outline2_imgar {
    width: 100%;
  }	
  .p-outline2_imgar img {
    width: 60%;
	  margin: 0 auto;
  }	
	
	.p-outline2-itm .p-outline-itm_ct{
		text-align: center;
	}	
}
@media screen and (max-width: 767px) {
	.p-outline2_imgar img {
    width: 95%;
	  margin: 0 auto;
		display: block;
  }	
}


.cm01_bx{
display: flex;
justify-content: space-between;
}
.cm01_bx_l{
width: 49%	
}
.cm01_bx_r img{
display: block;	
width: 100%	;
}
@media (max-width: 768px) {
  .cm01_bx {
    display: block;
  }
.cm01_bx_l{
width: 100%	;
	margin-bottom: 20px;
  }	
}





/* 共通ボックス */
.sc_cta {
border: 2px solid #927e67;	/*917d65*/
margin-bottom: 15px;	
}

p.cmbnr_txt01 {
	color: #fff;
	text-align: center;
	font-size: 1.4em;
	font-weight: 600;
background-color: #927e67;	/**f1cdd5*/
}
.cmbnr_txt01 span.d_sla {
    padding-right: 20px;
    padding-left: 20px;
    font-size: 3.5rem;
	font-weight: normal;
    color: #3e2f20;
    transform: rotate(-10deg);
}
p.cmbnr_txt02 {
	width: 100%;
	display: block;
	text-align: center;
	font-size: 1.2em;
	line-height: 1;
	margin-top: 20px;
}
.cmbnr_bx01 {
  width: 100%;
  display: flex;
  flex-wrap: wrap; /* 幅が狭いと縦並びに */
  justify-content: center;
  gap: 50px;
  padding: 1vw 1vw;

  box-sizing: border-box;
}

/* 左エリア */
.cmbnr_l {
  display: flex;
  align-items: flex-start;
  justify-content: center;
 text-align: center;	
}

.cmbnr_l2 {
  flex: 0 1 280px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cmbnr_l2 a {
  font-family: var(--font-family-goc);
  color: #fff;
  text-decoration: none;
  border: 3px solid #fff;
  padding: 0.6em 1.8em;
  font-size: clamp(16px, 2.4vw, 20px);
  font-weight: 600;
  border-radius: 100px;
  background-color: #4b9fcb;
  transition: 0.5s;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
margin-left: 0;	
}
.cmbnr_l2 a:before {
  content: '\ebcc';
  font-family: "Material Icons";
  font-weight: bold;
  color: #fff;
  font-size: clamp(24px, 4vw, 40px);
  line-height: 1;
}
.cmbnr_l2 a:hover {
    background: #fff;
    color: #4b9fcb;
	border: 3px solid #4b9fcb;
}
.cmbnr_l2 a:hover:before {
color: #4b9fcb;	
}

/* 「予約専用」ラベル */
.d_label {
  background-color: #3e2f20;
  font-size: clamp(16px, 2.2vw, 24px);
  padding: 1em;
  margin: 0 1em 0 0;
  color: #fff;
  line-height: 1.2em;
  white-space: nowrap;
}

/* 電話エリア全体 */
.d_tel {
  font-family: var(--font-ct);
  line-height: 1.2;
  font-size: clamp(24px, 4vw, 38px);
  font-weight: 600;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
	margin-top: 0.2em;
}

/* 電話リンク */
.d_tel a[href^="tel:"] {
  cursor: default;
  text-decoration: none;
  pointer-events: none;
  padding: 0;
  line-height: 1.2;
  letter-spacing: 0.05em;
  display: inline-flex;
  align-items: center;
  gap: 0.1em;
  color: inherit;
}

/* 電話アイコン */
.d_tel a::before {
  content: '\e325';
  font-family: "Material Icons";
  font-size: clamp(20px, 4vw, 38px);
  font-weight: bold;
  line-height: 1;
  margin-right: 0em;
}

/* 電話受付時間 */
.d_time {
  font-size: clamp(14px, 2vw, 18px);
  font-weight: 600;
  margin-top: 0.4em;
}

/* 右ボタンエリア */
.cmbnr_r {
  flex: 0 1 280px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ボタン本体 */
.cmbnr_r a {	
  font-family: var(--font-family-goc);
  color: #fff;
  text-decoration: none;
  border: 3px solid #fff;
  padding: 0.6em 1.8em;
  font-size: clamp(16px, 2.4vw, 20px);
  font-weight: 600;
  border-radius: 100px;
  background-color: #b50029;
  transition: 0.5s;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
margin-left: 0;	
}
.cmbnr_r a:before {
  content: '\eb45';
  font-family: "Material Icons";
  font-weight: bold;
  color: #fff;
  font-size: clamp(24px, 4vw, 40px);
  line-height: 1;
}
.cmbnr_r a:hover {
    background: #fff;
    color: #b50029;
	border: 3px solid #b50029;
}
.cmbnr_r a:hover:before {
color: #b50029;	
}
@media (max-width: 1330px) {
.cmbnr_bx01 {
gap:20px;
	}
.d_tel {
 font-size: clamp(24px, 4vw, 33px);	
	}
.d_label {
font-size: clamp(16px, 2.2vw, 20px);	
	}
}
@media (max-width: 1241px) {
.cmbnr_bx01 {
display: block;
margin-bottom: 15px;	
	}
.cmbnr_r {
  flex: 0 1 320px;
	}
.cmbnr_r a {	
padding: 0.6em 2.2em;	
gap: 15px;	
	margin-top: 30px;
	}
.cmbnr_l2 {
  flex: 0 1 320px;
	}
.cmbnr_l2 a {	
padding: 0.6em 2.2em;	
gap: 15px;	
	margin-top: 30px;
	}	
p.cmbnr_txt01 {
	margin-bottom: 15px!important;
	}
}
@media (max-width: 787px) {
  .d_tel a[href^="tel:"] {
    pointer-events: auto;
    cursor: pointer;
  }
 }

.googleCalendar iframe {
  width: 100%;
  height: 600px;
  margin: 40px 0% 50px; 	

}
@media all and (max-width: 767px) {
  .googleCalendar iframe {
	width: 95%;  
	height: 600px;
	margin: 40px 2.5% 50px;
   }
p.cmbnr_txt01 {
		font-size: 1.2em;
	}	
}






.p-schd-bx1 {
	padding: 60px 0 30px;
}
.p-schd-bx1 .schd_tbl {
	width: 100%;
	margin-top: 50px;	
	margin-bottom: 60px;
}
.p-schd-bx1 .schd_tbl th,
.p-schd-bx1 .schd_tbl td {
	line-height: 28px;
}
.p-schd-bx1 .schd_tbl th {
	padding: 0 0 20px;
	overflow: hidden;
}
.p-schd-bx1 .schd_tbl th a {
	color: #fff;
}
.p-schd-bx1 .schd_tbl th span {
	display: block;
	font-size: 14px;
	color: #fff;
	padding: 0 10px;
	background: #41a587;
	border-radius: 5px;
	white-space: nowrap;
}
.p-schd-bx1 .schd_tbl th span.color1 {
	background: #41a587;
}
.p-schd-bx1 .schd_tbl th span.color2 {
	background: #cf9911;
}
.p-schd-bx1 .schd_tbl th span.color3 {
	background: #cf9911;
}
.p-schd-bx1 .schd_tbl td.txt {
	padding: 0 20px;
	letter-spacing: -1px;
}
.p-schd-bx1 .schd_tbl th,
.p-schd-bx1 .schd_tbl td.txt,
.p-schd-bx1 .schd_tbl td.link {
	vertical-align: top;
	margin: 0;
}
.p-schd-bx1 .schd_tbl td.link a {
	display: block;
	font-size: 14px;
	padding: 0 10px 0 15px;
	border: 1px solid #412e1d;
	border-radius: 0px;
	text-decoration: none !important;
	transition: .5s;
	white-space: nowrap;
	position: relative;
	width: 170px;	
}
.p-schd-bx1 .schd_tbl td.link a:hover {
	opacity: 0.5;
}
.p-schd-bx1 .schd_tbl td.link a:after {
content: '';
    width: 7px;
    height: 7px;
    border-top: 1px solid #412e1d;
    border-right: 1px solid #412e1d;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 15px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.p-schd-bx1 .ex_txt {
	margin: 10px 0 0;
	padding: 20px 0 0;
	border-top: 1px solid #e1d9d2;
}
@media screen and (max-width: 1024px) {
	.p-schd-bx1 .schd_tbl th,	
	.p-schd-bx1 .schd_tbl td {
	padding-bottom: 10px!important;	
	}	
}
@media screen and (max-width: 767px) {
.p-schd-bx1 {
    padding: 0px 0 30px;
}	
	.p-schd-bx1 .schd_tbl th,
	.p-schd-bx1 .schd_tbl td{
	display: block;
	width: 100%;
	}
	.p-schd-bx1 .schd_tbl th {
    padding: 0 0 10px;
	}
	.p-schd-bx1 .schd_tbl td{
	margin-bottom: 30px!important;	
	}
.p-schd-bx1 .schd_tbl td.txt {
    padding: 0 10px;
	}
.p-schd-bx1 .schd_tbl td.link a {
	width: 60%;
	text-align: center;
	margin: 15px auto 0;
	}
}



.sitemp_lst dd a{
  display: flex;
  gap: 20px;
  width: 100%;
  margin-bottom: 10px;
  align-items: center; /* 縦位置をそろえる */
}

.sitemp_lst h3 {
  width: 30%;
  font-family: var(--font-family-goc);
  font-weight: 700;
  background: #e6e2de;
  border-bottom: 1px solid #dfe3e1;
  padding: 20px 0;
  text-align: center;
  margin: 0; /* 余計な余白をなくす */
}

.sitemp_lst p {
  width: 70%; /* h3と合わせて100%にする */
  padding: 20px 0;
  margin: 0;
}
@media screen and (max-width: 767px) {
.sitemp_lst h3 {
  width: 40%;
font-size: 14px;
	padding: 7px;
	}
}



.company_tbl{
width: 100%;
margin-bottom: 80px
}
.company_tbl th ,
.company_tbl td {
padding: 15px 10px;
}
.company_tbl th {
background: #ebe7e4;	
	
}
.company_tbl td {
    background: #f4f2ee;	
}



