@charset "UTF-8";
body {
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size: 16px;
	*font-size:small;
	*font:x-small;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.news #wrapper::before { content: none !important;}
#wrapper { background: #f5f4f0;}
#ft-conf:after { content: none;}
#ft-conf .copyright { background: none;}
#ft-conf .copyright p { text-align: left;}

#hd-conf { position: fixed; left: 0; top: 0; width: 100%; background: #fff; box-shadow: 0 0 8px #ccc; z-index: 101;}
#hd-conf .inner-hd { width: 94%; margin: 0 auto; padding: 15px 0;}
#hd-conf .hd-ctn { position: relative; display: flex; justify-content: space-between; align-items: center;}
#hd-conf .hd-name { width: 220px;}
#hd-conf .hd-nav { width: calc(100% - 220px);}
#hd-conf .hd-name p { color: var(--base-color); font-size: clamp(14px,2.4vw,26px); font-weight: 700; letter-spacing: 0.05rem; line-height: 1.2;}
#hd-conf .hd-name p a { color: var(--base-color); text-decoration: none;}
#hd-conf .hd-nav ul { font-size: 0; text-align: right;}
#hd-conf .hd-nav ul li { display: inline-block; font-size: 18px; line-height: 1.4;}
#hd-conf .hd-nav ul li a { position: relative; font-weight: 700; text-decoration: none;}
#hd-conf .hd-nav ul.sub-nav { margin-bottom: 16px;}
#hd-conf .hd-nav ul.sub-nav li { padding: 0 8px; font-size: clamp(10px,1.6vw,16px);}
#hd-conf .hd-nav ul.sub-nav li:last-child { padding-right: 0;}
#hd-conf .hd-nav ul.sub-nav li a { display: block; padding: 4px 20px; background: #eee; border-radius: 50px;}
#hd-conf .hd-nav ul.sub-nav li a svg { display: inline-block; width: 20px; height: 20px; margin-right: 8px; vertical-align: middle;}
#hd-conf .hd-nav ul.sub-nav li a span{ display: inline-block; vertical-align: middle;}

#hd-conf .hd-nav ul.main-nav li { padding: 0 20px; font-size: clamp(12px,1.8vw,18px);}
#hd-conf .hd-nav ul.main-nav li:last-child { padding-right: 0;}
#hd-conf .hd-nav ul.main-nav li a { display: block; padding-bottom: 6px;}
#hd-conf .hd-nav ul.main-nav li a:before { content: ''; display: block; width: 0%; height: 2px; background: var(--base-color);
 position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); transition: 0.3s ease;
}
#hd-conf .hd-nav ul.main-nav li.on a:before { width: 100%;}
#hd-conf .hd-nav ul.main-nav li a:hover:before { width: 100%;}

#hd-conf .sp-menu { display: none; width: 36px; height: 36px; position: absolute; right: 20px; top: 50%; transform: translateY(-50%);}
#hd-conf .sp-menu div { position: relative; width: 100%; height: 100%;}
#hd-conf .sp-menu div span { display: block; width: 100%; height: 2px; background: var(--base-color); position: absolute; left: 50%; transform: translate(-50%,0px)}
#hd-conf .sp-menu div span:nth-child(1) { top: 8px;}
#hd-conf .sp-menu div span:nth-child(2) { top: 16px; transition: 0.3s ease;}
#hd-conf .sp-menu div span:nth-child(3) { top: 25px;}
#hd-conf .sp-menu.active div span:nth-child(1) { animation: 0.3s menu-1 linear forwards;}
#hd-conf .sp-menu.active div span:nth-child(2) { opacity: 0;}
#hd-conf .sp-menu.active div span:nth-child(3) { animation: 0.3s menu-2 linear forwards;}
@media (max-width: 1201px) {
	#hd-conf .hd-nav ul.sub-nav { margin-bottom: 10px;}
	#hd-conf .hd-nav ul.main-nav li { padding: 0 0.6vw;}
}
@media (max-width: 1001px) {
	#hd-conf .inner-hd { padding: 12px 0 10px;}
	#hd-conf .hd-name { width: 200px;}
	#hd-conf .hd-nav { width: calc(100% - 200px);}
	#hd-conf .hd-nav ul.main-nav li a { padding-bottom: 4px;}
}
@media (max-width: 801px) {
	#hd-conf .inner-hd {}
	#hd-conf .hd-ctn { display: block;}
	#hd-conf .hd-nav{ display: none;}
	#hd-conf .sp-menu { display: block;}
}
@media (max-width: 481px) {
	#hd-conf .sp-menu { right: 12px;}
}
@keyframes menu-1{
   0%{ transform: translate(-50%,0px) rotate(0deg);}
  40%{ transform: translate(-50%,8px) rotate(0deg);}
  80%{ transform: translate(-50%,8px) rotate(0deg);}
 100%{ transform: translate(-50%,8px) rotate(30deg);}
}
@keyframes menu-2{
   0%{ transform: translate(-50%,0px) rotate(0deg);}
  40%{ transform: translate(-50%,-9px) rotate(0deg);}
  80%{ transform: translate(-50%,-9px) rotate(0deg);}
 100%{ transform: translate(-50%,-9px) rotate(-30deg);}
}


.sp-nav { display: none; visibility: hidden; position: fixed; left: 0; top: -800px; width: 100%; background: #f2efe6; z-index: 100;}
.sp-nav .inner { padding: 68px 0 0;}
.sp-nav .scroll{ width: 100%; max-width: 400px; margin: 0 auto; padding: 20px 30px 40px;}
.sp-nav ul { font-size: 0;}
.sp-nav ul.main-nav { margin-bottom: 16px;}
.sp-nav ul.main-nav li { display: block; padding: 6px; border-bottom: solid 1px #e1e0db; font-size: 18px; font-weight: 700; line-height: 1.4;}
.sp-nav ul.main-nav li a { position: relative; display: block; padding: 5px; color: #323232; text-decoration: none;}

.sp-nav ul.sub-nav { width: 80%; margin: 0 auto; text-align: center;}
.sp-nav ul.sub-nav li { padding: 6px; font-size: 16px; font-weight: 700;}
.sp-nav ul.sub-nav li a { display: block; padding: 8px 20px; background: #fff; border-radius: 50px; box-shadow: 0 0 6px #ccc; color: #323232; text-decoration: none;}
.sp-nav ul.sub-nav li a svg { display: inline-block; width: 20px; height: 20px; margin-right: 8px; vertical-align: middle;}
.sp-nav ul.sub-nav li a span{ display: inline-block; vertical-align: middle;}
@media (max-width: 801px) {
	.sp-nav { display: block; visibility: hidden; transition: 0.4s ease;}
	.sp-nav.open { visibility: visible; top: 0;}
}
@media (max-width: 481px) {
	.sp-nav .scroll{ padding: 12px 24px 40px;}

	.sp-nav ul.main-nav li { font-size: 16px;}
	.sp-nav ul.sub-nav li { font-size: 14px;}
}

.pagetop { position: fixed; right: 4%; bottom: 50px; width: 56px; height: 56px;}
.pagetop a { position: relative; display: block; width: 100%; height: 100%; border: solid 1px #fff; border-radius: 50%;}
.pagetop a:before { content: ''; display: block; width: 0px; height: 0px; border: solid 9px transparent; border-bottom: solid 14px #fff; border-top: none; 
 position: absolute; left: 50%; top: 50%; transform: translate(-50%,-55%);
}
@media (max-width: 481px) {
	.pagetop { bottom: 30px; width: 40px; height: 40px;}
	.pagetop a:before { border: solid 6px transparent; border-bottom: solid 10px #fff; border-top: none; }
}


#ft-conf { background: var(--base-color);}
#ft-conf .inner-ft {  width: 88%; max-width: 1080px; margin: 0 auto; padding: 60px 0;}
#ft-conf .ft-flex { display: flex; justify-content: space-between; }
#ft-conf .ft-left { width: 58%;}
#ft-conf .ft-right { width: 40%;}

#ft-conf .ft-name {}
#ft-conf .ft-name p { margin-bottom: 20px; font-size: clamp(20px,3.0vw,28px); font-weight: 700;}
#ft-conf .ft-sns { margin-bottom: 30px;}
#ft-conf .ft-sns ul { font-size: 0;}
#ft-conf .ft-sns ul li { display: inline-block; width: 72px;}
#ft-conf .ft-sns ul li a { display: block; width: 50px; }
#ft-conf .ft-sns ul li a svg { width: 100%;}
#ft-conf .ft-txt { margin-bottom: 30px;}
#ft-conf .ft-txt dl {}
#ft-conf .ft-txt dl dt { margin-bottom: 10px; font-size: 18px; line-height: 1;}
#ft-conf .ft-txt dl dt span { display: inline-block; padding: 5px 20px; border-radius: 50px;}
#ft-conf .ft-txt dl dd { margin: 0; font-size: 16px;}
#ft-conf .ft-txt dl dd span { display: inline-block; padding-left: 12px;}
#ft-conf .copyright p { font-size: 12px;}
#ft-conf ul.nav { font-size: 0;}
#ft-conf ul.nav li { display: inline-block; width: 50%; vertical-align: top;}
#ft-conf ul.nav li ul { padding-left: 72px;}
#ft-conf ul.nav li ul li { display: block; width: 100%; margin-bottom: 40px; font-size: 18px;}
#ft-conf ul.nav li ul li:last-child { margin-bottom: 0px;}
#ft-conf ul.nav li ul li a { text-decoration: none; font-weight: 700;}
#ft-conf ul.nav li ul li a:hover { text-decoration: underline; text-underline-offset: 2px; text-decoration-thickness: 1px;}
@media (max-width: 1001px) {
	#ft-conf ul.nav li ul { padding-left: 32px;}
	#ft-conf ul.nav li ul li { font-size: 16px;}
}
@media (max-width: 801px) {
	#ft-conf .ft-flex { display: block;}
	#ft-conf .ft-left { width: 100%;}
	#ft-conf .ft-right { display: none;}
}
@media (max-width: 481px) {
	#ft-conf .inner-ft { padding: 40px 0;}
	#ft-conf .ft-name p { margin-bottom: 12px;}
	#ft-conf .ft-sns ul li { width: 60px;}
	#ft-conf .ft-sns ul li a { width: 40px; }

	#ft-conf .ft-txt dl dt { margin-bottom: 6px; font-size: 13px;}
	#ft-conf .ft-txt dl dt span { padding: 4px 10px; border-width: 0.8px !important;}
	#ft-conf .ft-txt dl dd { font-size: 12px;}
	#ft-conf .ft-txt dl dd span { display: block; padding-left: 0px;}
	#ft-conf .copyright p { font-size: 10px;}
}


.wrap { padding-top: 100px;}
@media (max-width: 1001px) {
	.wrap { padding-top: 9vw;}
}
@media (max-width: 481px) {
	.wrap { padding-top: 14vw;}
}

aside.bnr { padding: 50px 0;}
aside.bnr ul { width: 92%; max-width: 1080px; margin: 0 auto; font-size: 0;}
aside.bnr ul li { display: inline-block; width: 33%; padding: 0 25px;}
aside.bnr ul li a { display: block; width: 100%; padding: 3px;}
aside.bnr ul li a img { width: 100%;}
@media (max-width: 801px) {
	aside.bnr ul li { padding: 0 12px;}
}
@media (max-width: 481px) {
	aside.bnr ul { width: 88%;}
	aside.bnr ul li { display: block; width: 100%; padding: 10px 0;}
	aside.bnr ul li a { padding: 2px;}
}


#top-news {}
#top-news .inner-sct { padding: 60px 0;}
#top-news .ctn { width: 90%; max-width: 1000px; margin: 0 auto;}
#top-news .ctn h3 { margin-bottom: 30px; font-size: 16px; font-weight: 700; line-height: 1;}
#top-news .ctn h3 span { display: inline-block; vertical-align: middle;}
#top-news .ctn h3 span.eng { margin-right: 20px; color: var(--base-color); font-size: 38px;}
#top-news .ctn h3 span.jp { padding-top: 8px; color: #000;}
#top-news .ctn .scrollarea { width: 100%; }
#top-news .ctn .row { position: relative; padding: 20px; padding-left: 140px; border-top: solid 1px #c8c8c8;}
#top-news .ctn .row:last-child { border-bottom: solid 1px #c8c8c8;}
#top-news .ctn .row time { position: absolute; left: 10px; top: 23px; font-size: 18px; line-height: 1.2;}
#top-news .ctn .row p { font-size: clamp(13px,2.0vw,18px);}
@media (max-width: 1001px) {
}
@media (max-width: 641px) {
}
@media (max-width: 481px) {
	#top-news .inner-sct { padding: 40px 0;}
	#top-news .ctn h3 { margin-bottom: 20px; font-size: 13px;}
	#top-news .ctn h3 span.eng { margin-right: 12px; font-size: 24px;}
	#top-news .ctn h3 span.jp { padding-top: 6px;}
	#top-news .ctn .row { padding: 12px;}
	#top-news .ctn .row time { position: relative; left: auto; top: auto; font-size: 13px;}
}


/* 下層ページ */
.page-ttl {}
.page-ttl div { width: 100%; padding: 80px 0;}
.page-ttl h1 { font-size: clamp(24px,4.2vw,42px); font-weight: 700; letter-spacing: 0.2rem; line-height: 1.2; text-align: center;}

.ttl:after { content: ''; display: block; width: 60px; height: 3px; margin: 0 auto; background: var(--base-color);}
.ttl h2 { margin-bottom: 15px; font-size: clamp(20px,3.6vw,36px); font-weight: 700; text-align: center;}

.stl { position: relative;}
.stl:after { content: ''; display: block; width: 100%; height: 3px; background: var(--base-color);}
.stl h3 { margin-bottom: 6px; font-size: clamp(18px,3.0vw,24px); font-weight: 700;}
@media (max-width: 481px) {
	.page-ttl div { padding: 50px 0;}
	.ttl:after { width: 40px; height: 2px;}
	.ttl h2 { margin-bottom: 8px;}
	.ttl h2 span { display: block;}
	.stl:after { height: 2px;}

	.stl h3 { margin-bottom: 8px;}
}


span.bold { font-weight: 700;}

.table {  width: 100%; margin: 0 auto; background: #f2efe6; border: solid 2px #e1e0db;}
.table.mb { margin-bottom: 40px;}
.table ul { margin: 0;}
.table ul li { padding: 10px; border-top: solid 2px #e1e0db;}
.table ul li:first-child { border-top: none;}
.table ul li dl { display: table; width: 100%;}
.table ul li dl dt,
.table ul li dl dd { display: table-cell; padding: 15px;}
.table ul li dl dt { border-right: solid 2px #e1e0db; color: var(--base-color); text-align: center;}
.table ul li dl dd { width: auto;}
.table ul li dl dd span.kome { display: block; padding-top: 8px;}
.table ul li dl.mid dt,
.table ul li dl.mid dd { vertical-align: middle;}
.table ul li dl.row dt { border-right: none;  border-bottom: solid 2px #e1e0db; }
@media (max-width: 801px) {
	.table ul li dl dt,
	.table ul li dl dd { padding: 12px 0;}
	.table ul li dl dd { padding-left: 20px;}
}
@media (max-width: 641px) {
	.table.mb { margin-bottom: 30px;}
	.table ul li { padding: 10px;}
	.table ul li dl dt,
	.table ul li dl dd { display: block;}
	.table ul li dl dt { padding: 0px 12px 8px; border-right: 0px;  border-bottom: solid 1px #e1e0db; text-align: left;}
	.table ul li dl dd { padding: 12px 12px 0;}
}


ol.number li { position: relative; margin-bottom: 2px; padding: 30px; padding-left: 72px; background: #fff; font-size: 16px; list-style-type: none;}
ol.number li span.no { position: absolute; left: 32px; top: 26px; color: var(--base-color); font-size: 20px; font-weight: 700;}
ul.disc li { position: relative; padding: 4px; padding-left: 40px;}
ul.disc li:before { content: ''; display: block; width: 12px; height: 12px; background: var(--base-color); border-radius: 50%;
 position: absolute; left: 12px; top: 11px;
}
ul.disc li a { color: #000;}
ul.disc li a:hover { text-decoration: none;}
ul.disc li span.kome { display: block; font-size: 14px;}

ul.caution li { position: relative; margin-bottom: 2px; padding: 30px; padding-left: 72px; font-size: 16px; background: #fff;}
ul.caution li:before { content: ''; display: block; width: 12px; height: 12px; background: var(--base-color); border-radius: 50%;
 position: absolute; left: 42px; top: 38px;
}
ul.caution li a { color: #000;}
ul.caution li span.kome { display: block; font-size: 14px;}
hr { background: none !important;}
@media (max-width: 641px) {
	ul.caution li { font-size: 14px;}
	ul.caution li span.kome { font-size: 12px;}
}
@media (max-width: 481px) {
	ol.number li { padding: 20px; padding-left: 45px; font-size: 13px;}
	ol.number li span.no { left: 15px; top: 15px; font-size: 18px;}
	ol.number li span.kome { font-size: 11px;}
	ul.disc li { padding-left: 24px; font-size: 13px;}
	ul.disc li:before { width: 8px; height: 8px; left: 4px; top: 10px;}
	ul.caution li { padding: 12px; padding-left: 32px; font-size: 13px;}
	ul.caution li:before { width: 8px; height: 8px; left: 15px; top: 18px;}
}



#greeting .inner-sct { padding: 100px 0 80px;}
#greeting .ttl { margin-bottom: 40px;}
#greeting .ctn { width: 88%; max-width: 900px; margin: 0 auto;}
#greeting .ctn p { margin-bottom: 40px;font-size: 16px; letter-spacing: 0.075rem; line-height: 2;}
#greeting .ctn p.name { margin-bottom: 0px; font-size: 20px; font-weight: 700; text-align: right;}
@media (max-width: 801px) {
	#greeting .ctn p { font-size: 14px;}
	#greeting .ctn p.name { font-size: 16px;}
}
@media (max-width: 481px) {
	#greeting .inner-sct { padding: 60px 0 40px;}
	#greeting .ttl { margin-bottom: 20px;}
	#greeting .ttl:after { width: 40px; height: 2px;}
	#greeting .ttl h2 { margin-bottom: 8px;}
	#greeting .ttl h2 span { display: block;}
	#greeting .ctn p { margin-bottom: 20px; font-size: 13px; letter-spacing: 0.05rem; line-height: 1.8;}
	#greeting .ctn p.name { font-size: 13px; letter-spacing: 0rem;}
}



#overview .inner-sct {}
#overview .ttl { margin-bottom: 40px;}
#overview .ctn-1 { padding: 100px 0 80px;}
#overview .ctn-2 { padding: 60px 0 80px;}

#overview .table { width: 88%; max-width: 900px;}
#overview .table ul li dl dt,
#overview .table ul li dl dd { font-size: 18px; font-weight: 700;}
#overview .table ul li dl dt { width: 260px;}
#overview .table ul li dl dd { width: auto; padding-left: 40px;}

#overview .schedule { width: 88%; max-width: 900px; margin: 0 auto; background: #fff;}
#overview .schedule ul li { padding: 20px 10px; border-top: solid 2px #e9e7e0;}
#overview .schedule ul li:first-child { border-top: none;}
#overview .schedule ul li dl { display: table; width: 100%;}
#overview .schedule ul li dl dt,
#overview .schedule ul li dl dd { display: table-cell; padding: 8px 0;}
#overview .schedule ul li dl.mid dt,
#overview .schedule ul li dl.mid dd { vertical-align: middle;}
#overview .schedule ul li dl dt { width: 240px; padding-left: 30px; border-right: solid 1px #e1e0db; color: var(--base-color); font-size: 18px; font-weight: 700;}
#overview .schedule ul li dl dd { width: auto; padding-left: 40px; font-size: 16px;}
#overview .schedule ul li dl dd span { display: block; position: relative; padding: 2px 20px;}
#overview .schedule ul li dl dd span:before { content: ''; display: block; width: 12px; height: 12px; background: var(--base-color); border-radius: 50%;
 position: absolute; left: 0; top: 9px;
}
@media (max-width: 801px) {
	#overview .table ul li dl dt,
	#overview .table ul li dl dd { font-size: 16px; }
	#overview .table ul li dl dt { width: 200px;}
	#overview .table ul li dl dd { padding-left: 12px;}
}
@media (max-width: 641px) {
	#overview .table ul li dl dt,
	#overview .table ul li dl dd { width: 100%; font-size: 14px;}

	#overview .schedule ul li { padding: 10px 20px;}
	#overview .schedule ul li dl dt,
	#overview .schedule ul li dl dd { display: block; padding: 6px 12px;}
	#overview .schedule ul li dl dt { width: 100%; border-right: 0px;  border-bottom: solid 1px #e1e0db; font-size: 14px;}
	#overview .schedule ul li dl dd { width: 100%; font-size: 13px;}
	#overview .schedule ul li dl dd span { padding: 2px; padding-left: 16px;}
	#overview .schedule ul li dl dd span:before { width:8px; height: 8px; top: 8px;}
}
@media (max-width: 481px) {
	#overview .ctn-1 { padding: 40px 0px;}
	#overview .ctn-2 { padding: 40px 0 60px;}
	#overview .ttl { margin-bottom: 20px;}
	#overview .ctn p { margin-bottom: 20px; font-size: 13px; letter-spacing: 0.05rem; line-height: 1.8;}
	#overview .ctn p.name { font-size: 13px; letter-spacing: 0rem;}
}



#registra .inner-sct { padding: 100px 0 80px;}
#registra .ctn { width: 88%; max-width: 900px; margin: 0 auto;}
#registra .ctn p { font-size: 16px; letter-spacing: 0.05rem; line-height: 1.8;}
#registra .ctn p.mb { margin-bottom: 30px;}
#registra .ctn p a { color: #000; word-break: break-all;}
#registra .ctn p span.kome { display: block; padding-top: 8px; font-size: 14px;}

#registra .table ul li dl dt { width: 250px; font-size: 18px; font-weight: 700;}
#registra .table ul li dl dd { width: auto; padding-left: 30px; font-size: 16px;}
#registra .table ul li dl dd span.kome { font-size: 14px;}
#registra table.price { width: 100%; margin-bottom: 12px; border: solid 1px #e1e0db; background: #fff;}
#registra table.price thead { background: #f2efe6;}
#registra table.price tr { border-bottom: solid 1px #e1e0db;}
#registra able.price tr:last-child { border-bottom: none;}
#registra table.price tr td { padding: 5px; border-right: solid 1px #e1e0db; font-size: 15px; text-align: center;}
#registra table.price tr td:last-child { border-right: 0;}
#registra table.price thead td { font-size: 16px; font-weight: 700;}

#registra hr { margin: 50px auto; width: 100%; height: 1px; border: none;}
#registra .stl { margin-bottom: 30px;}
#registra .ctn h4 { margin-bottom: 8px; font-size: 18px; font-weight: 700;}
#registra .ctn ol.mb,
#registra .ctn ul.mb{ margin-bottom: 40px;}

#registra .ctn picture { display: block; width: 100%; margin: 0 auto;}
#registra .ctn picture img { width: 100%;}
#registra .note p { font-size: 14px; }
#registra #a2 { position: absolute; top: -120px;}
@media (max-width: 801px) {
	#registra .table ul li dl dt,
	#registra .table ul li dl dd { font-size: 16px; }
	#registra .table ul li dl dt { width: 200px;}
	#registra .table ul li dl dd { padding-left: 12px; padding-right: 12px;}
}
@media (max-width: 641px) {
	#registra .inner-sct { padding: 40px 0px;}
	#registra .stl { margin-bottom: 20px;}
	#registra .ctn p { font-size: 13px; line-height: 1.65;}

	#registra .table ul li dl dt { width: 100%; font-size: 14px;}
	#registra .table ul li dl dt br.pc { display: none;}
	#registra .table ul li dl dd { width: 100%; font-size: 13px;}
	#registra .table ul li dl dd span.kome { font-size: 12px;}
	#registra .table ul li dl dd ul.note li { font-size: 12px;}
	
	#registra table.price tr td { font-size: 11px;}
	#registra table.price thead td { font-size: 12px;}
}
@media (max-width: 481px) {
	#registra .ctn p.mb { margin-bottom: 18px;}
	#registra .ctn ol.mb,
	#registra .ctn ul.mb{ margin-bottom: 30px;}
	#registra .ctn picture { margin-bottom: 30px;}

	#registra .ctn h4 { margin-bottom: 4px; font-size: 16px;}
	#registra .ctn ul.disc li { font-size: 13px;}
	#registra #a2 { top: -80px;}
}


#presentation .inner-sct { padding: 100px 0 80px;}
#presentation .ctn { width: 88%; max-width: 900px; margin: 0 auto;}
#presentation .ctn p { font-size: 16px; letter-spacing: 0.05rem; line-height: 1.8;}
#presentation .ctn p.mb { margin-bottom: 30px;}
#presentation .ctn p.mb2{ margin-bottom: 50px;}
#presentation .ctn p.date { font-size: 20px; font-weight: 700;}
#presentation .ctn p a { color: #000;}

#presentation .table ul li dl dt { width: 200px; font-size: 18px; font-weight: 700;}
#presentation .table ul li dl dd { width: auto; padding-left: 30px; font-size: 16px;}
#presentation .table ul li dl dd span.kome { font-size: 14px;}

#presentation hr { margin: 50px auto; width: 100%; height: 1px; border: none;}
#presentation .stl { margin-bottom: 30px;}
#presentation .ctn h4 { margin-bottom: 12px; padding-left: 12px; border-left: solid 4px var(--base-color);; font-size: 20px; font-weight: 700; line-height: 1.4;}

#presentation .ctn ul.mb { margin-bottom: 20px;}
#presentation .ctn ul.mb2 { margin-bottom: 50px;}
#presentation .ctn .box { padding: 30px; background: #fff;}
@media (max-width: 801px) {
	#presentation .table ul li dl dt,
	#presentation .table ul li dl dd { font-size: 16px; }
	#presentation .table ul li dl dt { width: 180px;}
	#presentation .table ul li dl dd { padding-left: 12px; padding-right: 12px;}
	#presentation .table ul li dl dd a.btn { max-width: 320px; font-size: 16px;}
	#presentation .table ul li dl dd a.btn br { display: block;}
}
@media (max-width: 641px) {
	#presentation .inner-sct { padding: 40px 0px;}
	#presentation .stl { margin-bottom: 18px;}
	#presentation .ctn p { font-size: 13px; line-height: 1.65;}
	#presentation .ctn p.mb { margin-bottom: 20px;}
	#presentation .ctn p.date { font-size: 16px;}

	#presentation .table ul li dl dt { font-size: 14px;}
	#presentation .table ul li dl dd { font-size: 13px;}
	#presentation .table ul li dl dd span.tt { font-size: 14px;}
	#presentation .table ul li dl dd a.btn { font-size: 14px;}
	#presentation .table ul li dl dd span.kome { font-size: 12px;}
	#presentation .table ul li dl dd ul.note li { font-size: 12px;}
	
	#presentation .ctn .box { padding: 20px;}
}
@media (max-width: 481px) {
	#presentation .ctn p.date { font-size: 15px;}
}


#symposium .inner-sct { padding: 100px 0 80px;}
#symposium .ctn { width: 88%; max-width: 900px; margin: 0 auto;}
#symposium .ctn p { font-size: 16px; letter-spacing: 0.05rem; line-height: 1.8;}
#symposium .ctn p.mb { margin-bottom: 30px;}
#symposium .ctn p.date { font-size: 20px; font-weight: 700;}
#symposium .ctn p a { color: #000;}

#symposium .table { width: 100%; margin: 0 auto; background: #f2efe6; border: solid 2px #e1e0db;}
#symposium .table.mb { margin-bottom: 40px;}
#symposium .table ul li { padding: 10px; border-top: solid 2px #e1e0db;}
#symposium .table ul li:first-child { border-top: none;}
#symposium .table ul li dl dt { width: 180px; font-size: 18px; font-weight: 700;}
#symposium .table ul li dl dd { width: auto; padding-left: 30px; font-size: 16px;}
#symposium .table ul li dl dd span.kome { font-size: 14px;}
#symposium .table ul li dl dd span.disc { display: block; position: relative; padding: 2px 20px;}
#symposium .table ul li dl dd span.disc:before { content: ''; display: block; width: 12px; height: 12px; background: var(--base-color); border-radius: 50%;
 position: absolute; left: 0; top: 9px;
}
#symposium hr { margin: 50px auto; width: 100%; height: 1px; border: none;}
#symposium .stl { margin-bottom: 30px;}
#symposium .ctn h4 { margin-bottom: 8px; font-size: 18px; font-weight: 700;}
#symposium .ctn ol.number { margin-bottom: 40px;}
@media (max-width: 801px) {
	#symposium .table ul li dl dt,
	#symposium .table ul li dl dd { font-size: 16px; }
	#symposium .table ul li dl dt { width: 200px;}
	#symposium .table ul li dl dd { padding-left: 12px; padding-right: 12px;}
	#symposium .ctn ol li { padding: 12px; padding-left: 40px; font-size: 14px;}
	#symposium .ctn ol li span { left: 15px; top: 12px;}
}
@media (max-width: 641px) {
	#symposium .inner-sct { padding: 40px 0px;}
	#symposium .stl { margin-bottom: 20px;}
	#symposium .ctn p { font-size: 13px; line-height: 1.65;}
	#symposium .ctn p.mb { margin-bottom: 20px;}
	#symposium .ctn p.date { font-size: 16px;}

	#symposium .table ul li dl dt { width: 100%; font-size: 14px;}
	#symposium .table ul li dl dd { width: 100%; font-size: 13px;}
	#symposium .table ul li dl dd span.kome { font-size: 12px;}
	#symposium .table ul li dl dd ul.note li { font-size: 12px;}
	#symposium .table ul li dl dd span.disc { padding: 2px; padding-left: 16px;}
	#symposium .table ul li dl dd span.disc:before { width:8px; height: 8px; top: 8px;}
}
@media (max-width: 481px) {
	#symposium hr { margin: 40px auto;}
	#symposium .ctn h4 { font-size: 15px;}
	#symposium .ctn p.date { font-size: 15px;}
	#symposium .ctn ul.disc li { font-size: 13px;}
}


#program .inner-sct { padding: 100px 0 80px;}
#program .ctn { width: 88%; max-width: 900px; margin: 0 auto;}
#program .ctn p { font-size: 16px; letter-spacing: 0.05rem; line-height: 1.8;}
#program .ctn p.mb { margin-bottom: 12px;}
#program .ctn p a { color: #000; word-break: break-all;}
#program .table { margin-bottom: 40px;}
#program .table.mb { margin-bottom: 100px;}
#program .table ul li dl dt { width: 200px; font-size: 18px; font-weight: 700;}
#program .table ul li dl dd { width: auto; padding-left: 30px; font-size: 16px;}
#program .table ul li dl dd span.kome { font-size: 14px;}

#program hr { margin: 50px auto; width: 100%; height: 1px; border: none;}
#program .stl { margin-bottom: 30px;}
#program .ctn h4 { margin-bottom: 18px; padding-left: 12px; border-left: solid 4px var(--base-color); font-size: 20px; font-weight: 700; line-height: 1.4;}
#program ul.disc { margin-bottom: 30px;}
@media (max-width: 801px) {
	#program .table ul li dl dt,
	#program .table ul li dl dd { font-size: 16px; }
	#program .table ul li dl dt { width: 180px;}
	#program .table ul li dl dd { padding-left: 12px; padding-right: 12px;}
}
@media (max-width: 641px) {
	#program .inner-sct { padding: 40px 0px;}

	#program .table { margin-bottom: 30px;}
	#program .table.mb { margin-bottom: 50px;}
	#program .table ul li dl dt { width: 100%; font-size: 14px;}
	#program .table ul li dl dd { font-size: 13px;}
	#program .table ul li dl dd span.kome { font-size: 12px;}
	#program .table ul li dl dd ul.note li { font-size: 12px;}
	#program .schedule ul li dl dd span.disc { padding: 2px; padding-left: 16px;}
	#program .schedule ul li dl dd span.disc:before { width:8px; height: 8px; top: 8px;}
	
	#program hr { margin: 40px auto;}
	#program .stl { margin-bottom: 25px;}
	#program .ctn h4 { margin-bottom: 12px; font-size: 15px;}
	#program .ctn p { font-size: 13px; line-height: 1.65;}
	#program ul.disc { margin-bottom: 20px;}
	#program ul.disc li { font-size: 13px;}
}





#childcare .inner-sct { padding: 80px 0;}
#childcare .ctn { width: 88%; max-width: 900px; margin: 0 auto;}
#childcare .table { width: 100%; background: #f2efe6; border: solid 2px #e1e0db;}
#childcare .table ul li dl dt { width: 260px; font-size: 18px; font-weight: 700;}
#childcare .table ul li dl dd { width: auto; padding-left: 30px; padding-right:20px; font-size: 16px;}
#childcare .table ul li dl dd a { color: #000;}
#childcare .table ul li dl dd a:hover { text-decoration: none;}
#childcare .table ul li dl dd a.btn { display: block; width: 100%; max-width: 520px; margin: 0 0 24px; padding: 12px 20px;
 background: var(--base-color); border-radius: 50px; box-shadow: 0 4px 6px #bbb;
 color: #fff; font-size: 18px; font-weight: 700; text-align: center; text-decoration: none;
}
#childcare .table ul li dl dd a.btn br { display: none;}
#childcare .table ul li dl dd a.btn:hover { opacity: 0.8;}
#childcare .table ul li dl dd span.tt { display: block; margin-bottom: 24px; font-size: 18px; font-weight: 700;}
#childcare .table ul li dl dd ul.note { padding-left: 1.2em;}
#childcare .table ul li dl dd ul.note li { padding: 2px; border: none; list-style-type: disc;}
@media (max-width: 801px) {
	#childcare .table ul li dl dt,
	#childcare .table ul li dl dd { font-size: 16px; }
	#childcare .table ul li dl dt { width: 200px;}
	#childcare .table ul li dl dd { padding-left: 12px; padding-right: 12px;}
	#childcare .table ul li dl dd a.btn { max-width: 320px; font-size: 16px;}
	#childcare .table ul li dl dd a.btn br { display: block;}
	#childcare .table ul li dl dd span.tt { font-size: 15px;}
}
@media (max-width: 641px) {
	#childcare .inner-sct { padding: 40px 0px;}

	#childcare .table ul li dl dt { width: 100%; font-size: 14px; text-align: left;}
	#childcare .table ul li dl dd { width: 100%; font-size: 13px;}
	#childcare .table ul li dl dt br { display: none;}
	#childcare .table ul li dl dd span.kome { font-size: 12px;}
	#childcare .table ul li dl dd ul.note li { font-size: 12px;}
	#childcare .table ul li dl dd a.btn { padding: 8px 0px; font-size: 14px;}
}
@media (max-width: 481px) {
	#childcare .table ul li dl dd span.tt { font-size: 14px;}
	#childcare .table ul li dl dd a.btn { padding: 6px 0px; font-size: 13px;}
}


#access .inner-sct { padding: 100px 0 80px;}
#access .ctn { width: 90%; max-width: 900px; margin: 0 auto;}
#access .ctn .stl { margin-bottom: 20px;}
#access .ctn p { margin-bottom: 40px; font-size: 18px;}
#access .ctn dl.addr { margin-bottom: 20px;}
#access .ctn dl.addr dt { font-size: 18px; font-weight: 700;}
#access .ctn dl dd { margin: 0;}
#access .ctn dl dd span { display: inline-block; padding: 0 10px;}
#access .ctn .map { width: 100%; height: 350px; margin: 0 auto 60px;}
#access .ctn .map iframe { width: 100%; height: 100%; border: none;}
#access .ctn h4 { margin-bottom: 12px; padding-left: 10px; border-left: solid 3px var(--base-color); font-size: 21px; font-weight: 700; line-height: 1.2}
#access .ctn ul.access-1 { margin-bottom: 40px;}
#access .ctn ul.access-1 li a { color: #000;}
#access .ctn ul.access-2 { margin-bottom: 40px;}
#access .ctn dl.access-3 {}
#access .ctn dl.access-3 dt { font-weight: 700;}
#access .ctn dl.access-3 dd { margin-bottom: 20px;}
@media (max-width: 801px) {
	#access .ctn p { font-size: 16px;}
	#access .ctn dl.addr dt { font-size: 14px;}
	#access .ctn dl dd { font-size: 13px;}
	#access .ctn h4 { font-size: 18px;}
	#access .ctn ul.access-1 li,
	#access .ctn ul.access-2 li,
	#access .ctn dl.access-3 dt { font-size: 14px;}	
}
@media (max-width: 641px) {
	#access .inner-sct { padding: 40px 0px;}
}
@media (max-width: 481px) {
	#access .ctn p { font-size: 14px;}
	#access .ctn p { font-size: 14px;}
	#access .ctn h4 { font-size: 16px;}
	#access .ctn .map { height: 250px;}
}

#contact .inner-sct {}
#contact .ttl { margin-bottom: 40px;}
#contact .ctn-1 { padding: 100px 0 80px;}
#contact .ctn-2 { padding: 60px 0 80px;}
#contact .ctn { width: 88%; margin: 0 auto;}
#contact .ctn-1 .ctn { max-width: 540px; padding-left: 30px;}
#contact .ctn-2 .ctn { max-width: 460px;}
#contact .ctn p { font-size: 16px;}
#contact .ctn p.addr {}
#contact .ctn p.addr span { display: inline-block; margin-right: 20px;}
#contact .ctn dl dt { font-size: 18px; font-weight: 400; }
#contact .ctn dl dd { margin: 0; font-size: 16px;}
#contact .ctn dl dd span { display: inline-block; padding-left: 20px;}
@media (max-width: 641px) {
	#contact .ctn-1 .ctn { padding-left: 0px;}
}
@media (max-width: 481px) {
	#contact .ttl { margin-bottom: 20px;}

	#contact .ctn-1 { padding: 60px 0 40px;}
	#contact .ctn-2 { padding: 40px 0px;}

	#contact .ctn p { font-size: 16px;}
	#contact .ctn p.addr span { display: block; margin-right: 0px;}
	#contact .ctn dl dt { font-size: 15px;}
	#contact .ctn dl dd { font-size: 15px;}
	#contact .ctn dl dd span { display: block; padding-left: 0px;}
}