@charset "utf-8";
/* CSS Documentss */

/*-------------------------------------------
　　reset
-------------------------------------------*/
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, caption, canvas, center, cite, code, dd, del, details, dfn, dialog, div, dl, dt, em, embed, fieldset, figcaption, figure, form, footer, header, hgroup, h1, h2, h3, h4, h5, h6, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, tt, table, tbody, textarea, tfoot, thead, time, tr, th, td, u, ul, var, video, input, select {
	font-size:100%;
	font-weight:inherit;
	font-style:inherit;
	vertical-align:baseline;
	white-space:normal;
	text-align:left;
	margin:0;
	padding:0;
	border:0;
	outline:0;
	background:transparent;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block;}
ol, ul {list-style:none;}
blockquote, q {quotes:none;}
:focus {outline:0;}
table {border-collapse:collapse; border-spacing:0;}
img {vertical-align:top;}
input, textarea, select, button {-webkit-appearance:none; -moz-appearance:none; appearance:none;}



/*-------------------------------------------
　　clearfix
-------------------------------------------*/
.clearfix {zoom:1;}
.clearfix:after{
	content:"";
	display:block;
	clear:both;
}



/*-------------------------------------------
　　loading
-------------------------------------------*/
#loadin {position: fixed; top:0; left: 0; width: 100%; height: 100%; z-index:150; background: #000;}
#loadin img {
	display: block;
	width: 160px;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;}


/*-------------------------------------------
　　common
-------------------------------------------*/
body {
	font-family: 'Fira Sans','Roboto Condensed', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	margin:0 !important;
	padding-top: 90px;
	width: 100vw;
	overflow-x: hidden;
}

p {font-weight: normal;}

a, a:visited, a:hover, a:focus, a:active {text-decoration:none; color:#000;}
a:hover			  {-moz-opacity:0.7; opacity:0.7; filter:alpha(opacity=40);}
header h1 a:hover {-moz-opacity:1; opacity:1; filter:alpha(opacity=100);}

.pc_br {
	display: block;
}


/* header */
#header {height:90px; position: fixed; top:0; width: 100%; z-index: 101; background: #fff;}
#news_page #header,
#location_page #header,
#gallery_page #header,
#contact_page #header,
#trial_page #header {border-bottom:1px solid #DCDCDC;}
#header #header_above {font-weight:300; border-bottom:1px solid #DCDCDC; height:36px; box-sizing:border-box; padding:12px 0;}
#header #header_above .clearfix {width:1100px; margin:0 auto 0 auto; padding: 0 30px;}
#header #header_above p {float:left; width:160px; font-size:11px; letter-spacing:0.1em;padding-left: 2px;}
#header #header_above nav {float:right; width:230px;}
#header #header_above nav ul {display:flex; justify-content:flex-end /*space-between*/;}
#header #header_above nav ul li {font-size:11px; letter-spacing:0.04em; margin-left: 15px;}
#header #header_below {font-weight:700; width:1100px; margin:0 auto 0 auto;}
#header #header_below h1 {float:left; width:160px; margin-top:10px;}
#header #header_below nav {float:right; width:520px; margin-top:20px;}
#header #header_below nav ul {display:flex; justify-content:space-between;}
#header #header_below nav ul li {font-size:13px; letter-spacing:0.06em;}

/* PAGE TOP */
#pageTop {width:1100px; margin:0 auto 10px auto; font-size:10px; font-weight:bold; text-align:right;}

/* footer */
footer {padding:25px 0 20px 0; background:#000;}
footer #footer_above {font-weight:300; border-bottom:1px solid #666; width:1100px; margin:0 auto 20px auto; padding-bottom:18px;}
footer #footer_above h1 {float:left; width:160px; font-size:11px; letter-spacing:0.04em; line-height:2.3;}
footer #footer_above nav {float:right; width:240px; margin-top:22px; line-height:1.0;}
footer #footer_above nav ul {display:flex; justify-content:flex-end /*space-between*/; align-items:flex-end;}
footer #footer_above nav ul li {font-size:11px; letter-spacing:0.04em; margin-left: 15px;}
footer #footer_below {font-weight:700; width:1100px; margin:0 auto 0 auto;}
footer #footer_below nav {float:left; width:500px;}
footer #footer_below nav ul {display:flex; justify-content:space-between;}
footer #footer_below nav ul li {font-size:13px; letter-spacing:0.04em;}
footer #footer_below nav:last-child {float:right; width:160px;}
footer #footer_below nav:last-child ul {display:block;}
footer #footer_below nav:last-child ul li {text-align:right;}
footer li a, footer li a:visited, footer li a:hover, footer li a:focus, footer li a:active {color:#FFF;}
footer p {font-size:10px; text-align:center; color:#FFF; margin-top:80px; letter-spacing:0.1em;}

/* .btn */
.btn a {display:block; width:130px; background:#000; color:#FFF; margin:0 auto; text-align:center; font-weight:300; padding:9px 0 9px 0; font-size:12px;}


/* ------ 2ndPage common ------ */

/* ビジュアルありのページタイトル */
#page_visual {background:#000; width:100%; height:400px; position:relative;}
#page_visual img {position:absolute; top:0; left:50%; width:550px; height:400px; object-fit:cover;}
#page_visual .text_box {position:absolute; width:100%; height:400px;}
#page_visual .text_box .inner {width:1100px; margin:0 auto;}
#page_visual .text_box h1 {font-size:19px; color:#fff; padding-top:115px; letter-spacing: 0.08em;}
#page_visual .text_box div {font-size:42px; color:#fff; line-height:0.9; margin:20px 0; font-weight:700;}
#page_visual .text_box p {font-size:13px; color:#fff; line-height:1.5;}

/* テキストのみのページタイトル */
h1.page_title {font-size:30px; font-weight:700; text-align:center; margin:50px 0 50px 0;}

/* 左右線ありのページタイトル */
#main_contents h2 {position:relative; text-align:center; font-size:30px; font-weight:700;}
#main_contents h2:before {border-top:1px solid #dedede; content:""; position:absolute; top:50%; left:0; width:100%;}
#main_contents h2 span {background:#fff; display:inline-block; padding:0 20px; position:relative;}

/* swiper.js */
.swiper-pagination {}
.swiper-pagination .swiper-pagination-bullet {border-radius:0; margin-right:6px;}



/*-------------------------------------------
　　TOP PAGE
-------------------------------------------*/

/* h2 */
#top_page h2 {font-size:22px; font-weight:700; line-height:1.1; letter-spacing: 0.05em;}
#top_page h2 small {font-size:11px; font-weight:300; margin-left:10px; vertical-align:2px;}

/* slide */
#top_main {width:100%; height:calc(100vh - 190px);}
#top_main .viewer {width:100%; height:calc(100vh - 190px); text-align:left; overflow:hidden;}
#top_main .viewer ul {width:100%; height:calc(100vh - 190px); text-align:left; overflow:hidden; position:relative;}
#top_main .viewer ul li {top:0; left:0; width:100%; height:calc(100vh - 190px); display:none; position:absolute;}
#top_main .viewer ul li img {height:calc(100vh - 190px); width:100%; object-fit:cover;}
#sc_ar{width: 100%; text-align: center; margin: 0 auto; position: relative; top: -50px; z-index: 100;}

/* slide（タブレット） */
#top_main_tablet {width:100%; height:40vh;}
#top_main_tablet .viewer {width:100%; height:40vh; text-align:left; overflow:hidden;}
#top_main_tablet .viewer ul {width:100%; height:40vh; text-align:left; overflow:hidden; position:relative;}
#top_main_tablet .viewer ul li {top:0; left:0; width:100%; height:40vh; display:none; position:absolute;}
#top_main_tablet .viewer ul li img {height:40vh; width:100%; object-fit:cover;}

/* menu btn */
#top_menu {border-bottom:1px solid #dedede;}
#top_menu ul {width:1100px; margin:0 auto 0 auto; height:100px; display:flex; justify-content:space-between; border-left:1px solid #dedede;}
#top_menu ul li {width:25%; border-right:1px solid #dedede; background:url(../images/arrow_lr.png) no-repeat right 6px bottom 6px;}
#top_menu ul li a {display:block; text-align:center; font-size:19px; padding-top:20px; font-weight:700; letter-spacing: 0.04em;}
#top_menu ul li span {display:block; text-align:center; font-size:10px; color:#666; margin-top: 6px; font-weight:300;letter-spacing: 0em;}

/* INSTAGRAM */
#top_page #instagram_area {background:#dcdcdc; padding: 50px 0; display: none;/*←2023.12.09非表示*/}
#top_page #instagram_area header {display:flex; justify-content:space-between; width:1100px; margin:0 auto 15px auto;}
#top_page #instagram_area ul {
	display:flex;
	justify-content:space-between;
	align-items:center;
	width:1100px; margin:0 auto;
}
#top_page #instagram_area ul li {background: #eee;}
#top_page #instagram_area ul li img {width: 210px; height: 210px; object-fit: cover;}

/* NEWS */
#top_page #news_area {background:#000; padding:50px 0; width:100%;}
#top_page #news_area .inner {width:1100px; margin:0 auto 0 auto;}
#top_page #news_area header {display:flex; justify-content:space-between; margin:0 0 15px 0;}
#top_page #news_area header h2 {color:#fff;}
#top_page #news_area header .btn a {background:#fff; color:#000;}
#top_page #news_area .article_area {display:flex; justify-content:space-between;}
#top_page #news_area article {box-sizing:border-box; width:250px; padding:15px 15px 20px 15px; background:#fff;}
#top_page #news_area article p {font-size:13px; text-align:center; margin-top:18px; height:33px; line-height: 1.1em; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;}
#top_page #news_area article p.data {font-size:10px; margin:6px 0 17px 0; height:auto; letter-spacing: 0.05em;}
#top_page #news_area article .btn a {width:104px; font-size:11px; padding: 6px;}
#top_page #news_area article img {width:100%; height:160px; object-fit:cover;}

/* LESSON */
#top_page #lesson_area {background:#dcdcdc; padding:50px 0; margin-bottom:60px;}
#top_page #lesson_area .lesson_img {display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; width:1100px; margin:0 auto;}
#top_page #lesson_area .lesson_img div {position:relative; width:550px; height:306px;}
#top_page #lesson_area .lesson_img img {position:absolute; top:0; left:0; width:550px; height:306px; object-fit: cover;}
#top_page #lesson_area .lesson_img p {position:absolute; color:#fff; text-align:center; font-size:26px; width:100%; margin:100px 0 0 0; font-weight: bold; letter-spacing: 0.05em;}
#top_page #lesson_area .lesson_img p span {display:block; text-align:center; font-size:10px; font-weight: 300; letter-spacing: 0em; padding-top: 4px;}
#top_page #lesson_area .lesson_img .lesson_btn {position:absolute; width: 100px; text-align: center; color: #ccc; margin-top: 174px; padding: 8px 0; height: 14px; font-size:12px; font-weight: bold; left: calc(50% - 50px); border: 1px solid #ccc;}
#top_page #lesson_area h2 {text-align:center; font-size:30px; letter-spacing:0.03em; margin-bottom:26px;}
#top_page #lesson_area p {text-align:center; font-size:13px; margin:30px 0 20px 0;}
#top_page #lesson_area .btn a {width:140px; font-size:12px; padding: 12px;}

/* PRICE・INSTRUCTOR */
#top_page section.pickup {width:1100px; margin:50px auto 0 auto; position:relative; height:450px;}
#top_page section.pickup .text_box {width:450px; height:290px; box-sizing:border-box; padding:40px 0 0 40px; background:#FFF;}
#top_page section.pickup .text_box h2 {font-size:15px; margin-bottom:15px;}
#top_page section.pickup .text_box h3 {font-weight:700; font-size:38px; letter-spacing:-0.03em; overflow:visible; white-space: nowrap; line-height:1;}
#top_page section.pickup .text_box p {font-size:12px; margin:20px 0 25px 0; line-height:1.4;}
#top_page section.pickup .text_box .btn a {display:block; width:140px; margin:0; padding:8px 0 8px 0;}

#top_page section.pickup .price .text_box      {position:absolute; right:50px; top:80px; z-index:2;}
#top_page section.pickup .price img            {position:absolute; left:0;   top:0;    z-index:1; width: 660px;}
#top_page section.pickup .instructor .text_box {position:absolute; left:50px;   top:80px; z-index:2;}
#top_page section.pickup .instructor img       {position:absolute; right:0; top:0;    z-index:1; width: 660px;}

/* CONCEPT */
#top_page #concept_area {background:url(/img/top-concept.jpg) no-repeat left center; background-size:100%; height:500px; margin:80px 0;}	
#top_page #concept_area h2 {color:#FFF; text-align:center; font-size:40px; letter-spacing:0.03em; padding:80px 0 50px 0;}
#top_page #concept_area h3 {color:#FFF; text-align:center; font-size:28px; letter-spacing:0.1em; font-weight:700; line-height:1.6;}
#top_page #concept_area h3 .jap {text-align:center; font-size:15px; letter-spacing:0.3em;}
#top_page #concept_area p {color:#FFF; text-align:center; font-size:13px; line-height:2.0; margin-top:30px;}

/* MOVIE */
#top_page #movie_area h2 {text-align:center; font-size:30px; letter-spacing:0.03em; margin:0 0 30px 0;}
#top_page #movie_area {width:750px; margin:0 auto;}
#top_page #movie_area .movie {
	background:#000;
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	margin-bottom: 90px;
}
#top_page #movie_area .movie iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* GALLERY */
#top_page #gallery_area h2 {text-align:center; font-size:30px; letter-spacing:0.03em; margin:0 0 10px 0;}
#top_page #gallery_area p {text-align:center; font-size:12px;}
#top_page #gallery_area ul {display:flex; justify-content:space-between; flex-wrap:wrap; width:1100px; margin:30px auto 50px auto;}
#top_page #gallery_area li {width:250px; margin-bottom:30px;}
#top_page #gallery_area li img {width: 100%; height: 167px; object-fit: cover;}

/* LOCATION */
#top_page #location_area h2 {text-align:center; font-size:30px; letter-spacing:0.03em; margin:0 0 30px 0;}
#top_page #location_area .wrapper {background:#000; margin:0; padding:0; width:100%;}
#top_page #location_area .inner {display:flex; justify-content:flex-start; width:1100px; margin:0 auto;}
#top_page #location_area .inner img {width: 550px; height: 370px; object-fit: cover;}
#top_page #location_area .text_area {padding:30px 0 0 50px;}
#top_page #location_area .text_area p,
#top_page #location_area .text_area p a {color:#fff; margin-bottom:12px; font-size:14px;}
#top_page #location_area .text_area dt {border-bottom:1px solid #fff; font-size:12px; color:#fff; padding:2px 0 6px 0;}
#top_page #location_area .text_area dd {font-size:12px; color:#fff; padding-top:6px;}
#top_page #location_area .text_area .btn a {background:#fff; color:#000; width:150px; margin:20px 0 0 0;}

/* JOIN US FOR TRIAL LESSON */
#top_page #trial_area {padding-bottom:60px;}
#top_page #trial_area h2 {text-align:center; font-size:30px; letter-spacing:0.03em; margin:90px 0 10px 0;}
#top_page #trial_area p {text-align:center; font-size:12px;}
#top_page #trial_area ul {display:flex; justify-content:space-between; width:1100px; margin:30px auto 30px auto;}
#top_page #trial_area ul li {width: calc(100% / 3);}
#top_page #trial_area ul li img {width:100%;}


#staffcrejit{
	width: 100%;
	text-align: center;
	font-size: 11px;
	line-height: 1.6em;
	margin: 20px 0 40px;
	letter-spacing: 0.05em;
}
#staffcrejit strong{
	font-weight: bold !important;
	display: block;
	padding-bottom: 5px;
	margin: 0 auto;
	text-align: center;
}


/*-------------------------------------------
　　NEWS PAGE
-------------------------------------------*/
#news_page #contents {width:660px; margin:0 auto 50px auto;}
#news_page #contents {display:flex; justify-content:space-between;}
/* side */
#news_page #contents #side_contents {width:210px;}
#news_page #contents #side_contents section {margin-bottom:60px;}
#news_page #contents #side_contents section h2 {position:relative; margin-bottom:26px; font-weight:700;}
#news_page #contents #side_contents section h2:after {width:25px; content: ""; border-bottom:1px solid #dedede; position:absolute; top:0; left:0; right:0; bottom:-14px; margin:0;}
#news_page #contents #side_contents section ul li {line-height:1.8; font-size:13px;}
/* main */
#news_page #contents #main_contents {width:450px;}
#news_page #contents #main_contents article header h1 {font-size:15px; line-height:1.5; font-weight:700; border-bottom:1px solid #dedede; padding-bottom:12px;}
#news_page #contents #main_contents article header p {font-size:11px; padding-top:15px; margin-bottom:20px;}
#news_page #contents #main_contents article p {font-size:12px; margin-bottom:30px; text-align:justify;}
#news_page #contents #main_contents article img {width:100%; height:auto;}

#news_page #contents #main_contents article.news_archive_page {margin-bottom:70px;}
#news_page #contents #main_contents article.news_archive_page:last-child {margin-bottom:0;}
#news_page #contents #main_contents article.news_archive_page p {margin:15px 0;}
#news_page #contents #main_contents article.news_archive_page header p {margin-top:0;}

#posts_navi {width:100%;}
#posts_navi .post_prev a {display:block; border:1px solid #dedede; width:76px; float:right; font-size:11px; text-align:center; padding:4px; line-height:1.2;}
#posts_navi .post_next a {display:block; border:1px solid #dedede; width:76px; float:left; font-size:11px; text-align:center; padding:4px; line-height:1.2;}




/*-------------------------------------------
　　LESSON PAGE
-------------------------------------------*/
#lesson_page .page_scroll_link ul {display:flex; justify-content:space-between; width:300px; margin:70px auto 60px auto;}
#lesson_page .page_scroll_link ul li {font-size:22px;}
/* lesson_area */
#lesson_page #lesson_area {margin-bottom:100px;}
#lesson_page #lesson_area .page_scroll_link_2 {width:1100px; margin:40px auto 60px auto; border-top:1px solid #dedede; border-left:1px solid #dedede;}
#lesson_page #lesson_area .page_scroll_link_2 li {text-align:center; background:url(../images/arrow_l.png) no-repeat center bottom 10px; border-right:1px solid #dedede; border-bottom:1px solid #dedede; font-size:16px; letter-spacing: 0.05em;}
#lesson_page #lesson_area .page_scroll_link_2 li a {display: block; height:60px; padding-top:20px; text-align:center; font-weight: bold;}
#lesson_page #lesson_area .page_scroll_link_2 li a span {display:block; font-size:10px; text-align:center; font-weight: 400;}
#lesson_page #lesson_area .page_scroll_link_2 .upper {display:flex; justify-content:space-around;}
#lesson_page #lesson_area .page_scroll_link_2 .upper li {width:100%;}
#lesson_page #lesson_area .page_scroll_link_2 .lower {display:flex; justify-content:space-around;}
#lesson_page #lesson_area .page_scroll_link_2 .lower li {width:100%;}

#lesson_page .lesson_box {width:1100px; margin:0 auto 40px auto; display:flex; justify-content:space-between; align-items:center;}
#lesson_page .lesson_box:nth-child(odd) .text_box {order:1;}
#lesson_page .lesson_box:nth-child(odd) .swiper_box {order:2;}
#lesson_page .lesson_box .text_box {overflow:visible; width:330px; padding-left:70px;}
#lesson_page .lesson_box .text_box_right{padding-right:30px !important;}
#lesson_page .lesson_box h3 {font-size:35px; font-weight:700; margin:0 0 30px 0; line-height:1.2; text-wrap: nowrap;}
#lesson_page .lesson_box h3 span {font-size:13px; display:block;}
#lesson_page .lesson_box p {font-size:13px; width:300px; text-align:justify; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;}
#lesson_page .lesson_box .btn a {margin:30px 0 0 0;}

#lesson_page .swiper_box {position:relative;}
#lesson_page .swiper-container {width:650px; height:420px;}
#lesson_page .swiper-container img {width: 650px; height: 420px; object-fit: cover;}
#lesson_page .swiper-pagination1,
#lesson_page .swiper-pagination2,
#lesson_page .swiper-pagination3,
#lesson_page .swiper-pagination4,
#lesson_page .swiper-pagination5,
#lesson_page .swiper-pagination6,
#lesson_page .swiper-pagination7 {bottom:-25px; position:absolute;}
#lesson_page .swiper-pagination1 .swiper-pagination-bullet,
#lesson_page .swiper-pagination2 .swiper-pagination-bullet,
#lesson_page .swiper-pagination3 .swiper-pagination-bullet,
#lesson_page .swiper-pagination4 .swiper-pagination-bullet,
#lesson_page .swiper-pagination5 .swiper-pagination-bullet,
#lesson_page .swiper-pagination6 .swiper-pagination-bullet,
#lesson_page .swiper-pagination7 .swiper-pagination-bullet {border-radius:0; margin-right:6px;}
#lesson_page .swiper-pagination2,
#lesson_page .swiper-pagination4,
#lesson_page .swiper-pagination6 {right:-6px;}

#lesson_page #schedule_area {width:900px; margin:40px auto 60px auto;}
#lesson_page #schedule_area .note {background:#eee; margin-top: 30px; padding:15px 20px 20px 20px; box-sizing:border-box;}
#lesson_page #schedule_area p {
	text-indent: -1em;
	padding-left: 1em;
	font-size: 12px;
	margin-top: 6px;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}


.lesson_topbtn {font-weight: bold;}




/*-------------------------------------------
　　INSTRUCTOR PAGE
-------------------------------------------*/
#instructor_page #main_contents {margin-top:50px;}
#instructor_page .instructor_area ul {display:grid; grid-template-columns:1fr 1fr 1fr; width:1100px; margin:-17px auto 40px auto; border-left:1px solid #dedede;}
#instructor_page .instructor_area ul li {border-right:1px solid #dedede; border-bottom:1px solid #dedede; padding:50px 0; height:auto; overflow:hidden; position:relative;}
#instructor_page .instructor_area ul li .normal {width:280px; margin:0 auto; height:100%;}
#instructor_page .instructor_area ul li .normal img {width:280px; height: 340px; object-fit: cover;}
#instructor_page .instructor_area ul li .normal p {font-size:40px; line-height:0.9; margin-top:15px; font-weight: bold;}
#instructor_page .instructor_area ul li .normal p span {display:block; font-size:13px; margin-top:10px; font-weight: normal; letter-spacing: 0.1em;}
#instructor_page .instructor_area ul li .normal .info {margin-top:20px;}
#instructor_page .instructor_area ul li .normal .info p {font-size:12px; margin-top:8px; text-align:left; font-weight: normal; line-height:1.6; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;}
#instructor_page .instructor_area ul li .mask {position:absolute; top:0; left:0; opacity:0; background:#fff; width:100%; height:100%; padding:0 20px; box-sizing:border-box; -webkit-transition:all 0.2s ease; transition:all 0.2s ease; display:flex; flex-direction:column; justify-content:center;}
#instructor_page .instructor_area ul li:hover .mask {opacity:1; margin:20px 0; padding-bottom:20px;}
#instructor_page .instructor_area ul li .mask p.name {font-size:37px; line-height:0.9; text-align:center; margin:-20px 0 30px 0; font-weight: bold; font-family: 'Fira Sans','Roboto Condensed', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;}
#instructor_page .instructor_area ul li .mask p span {display:block; font-size:13px; margin-top:10px; text-align:center; font-weight: normal; letter-spacing: 0.1em;}
#instructor_page .instructor_area ul li .mask p {font-size:13px; margin-top:10px; text-align:center; line-height:1.3; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;}




/*-------------------------------------------
　　PRICE PAGE
-------------------------------------------*/
#price_page #main_contents {margin-top:70px;}
#price_page #price_area {width:1000px; margin:50px auto 70px auto;}
#price_page #price_area table {border-top:1px solid #dedede; border-left:1px solid #dedede; width:100%; margin-bottom: 70px;}
#price_page #price_area table th {border-right:1px solid #dedede; border-bottom:1px solid #dedede; background:#000; text-align:center; color:#fff; font-size:12px; padding:15px 0; letter-spacing: 0.05em; font-weight: bold;}
#price_page #price_area table td {border-right:1px solid #dedede; border-bottom:1px solid #dedede; text-align:center; font-size:20px; padding:40px 0; font-weight: 600; vertical-align: middle;}
#price_page #price_area table td span{font-size: 11px;}
#price_page #price_area table td .note {
	font-size: 10px;
	text-align: center;
	font-weight: normal;
	margin-top: 5px;
}
#price_page #price_area table td:first-child {font-size:15px; width:100px;}
#price_page #price_area p {font-size:13px; text-align:center; margin:10px 0 60px 40px; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;}
#price_page #price_area .price_other {margin-bottom: 60px;}
#price_page #price_area .price_other h3 {
	width: 400px;
	padding: 10px 0;
	margin: 100px auto 50px auto;
	background: #eee;
	text-align: center;
}
#price_page #price_area .price_other div {font-weight: bold; border-bottom: 1px solid #ccc; padding-bottom: 8px; font-size: 18px;}
#price_page #price_area .price_other div span {font-size: 13px;}
#price_page #price_area .price_other p {margin: 10px 0 60px 0; text-align: left; font-weight: normal;}
#price_page #price_area dl {width:100%; padding:20px; box-sizing:border-box; background:#eee; display:flex; justify-content:flex-start; align-items:center;}
#price_page #price_area dt {font-size:15px; width:200px; text-align:center;}
#price_page #price_area dd {font-size:15px; width: 659px; padding-left:40px; border-left:1px solid #999;}
#price_page #price_area dd p {font-size:14px; text-indent:-1em; padding-left:1em; margin:0; text-align:left;}




/*-------------------------------------------
　　LOCATION PAGE
-------------------------------------------*/
#location_page #main_contents {width:800px; margin:0 auto 50px auto;}
#location_page #main_contents .info {display:flex; justify-content:space-between; align-items:center; margin-bottom:40px;}
#location_page #main_contents .info img {width: 400px; height: 300px; object-fit: cover;}
#location_page #main_contents .info .text_box {width:350px;}
#location_page #main_contents .info .text_box p {font-size:14px; margin:0 0 20px 0; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;}
#location_page #main_contents .info .text_box p.gym_name {font-weight: bold; font-size: 18px; letter-spacing: 0em;}
#location_page #main_contents .info .text_box dt {font-size:11px; padding:2px 0 5px 0; border-bottom: 1px solid #dedede; margin-bottom: 5px;}
#location_page #main_contents .info .text_box dd {font-size:14px; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;}




/*-------------------------------------------
　　GALLERY PAGE
-------------------------------------------*/
#gallery_page .gallery_box {width:900px; margin:0 auto 70px auto; display:flex; justify-content:space-between; align-items:center;}
#gallery_page .gallery_box:nth-child(even) .text_box {order:1;}
#gallery_page .gallery_box:nth-child(even) .swiper_box {order:2; position:relative;}
#gallery_page .gallery_box .text_box {overflow:visible; width:330px; padding-left:30px;}
#gallery_page .gallery_box h3 {font-size:37px; font-weight:700; margin:0 0 30px 0; line-height:1.2;}
#gallery_page .gallery_box p {font-size:13px; width:290px; text-align:justify;}
#gallery_page .swiper_box {position:relative;}
#gallery_page .swiper-container {width:540px; height:370px;}
#gallery_page .swiper-container img {width: 540px; height: 370px; object-fit: cover;}
#gallery_page .swiper-pagination1,
#gallery_page .swiper-pagination2,
#gallery_page .swiper-pagination3 {bottom:-25px; position:absolute;}
#gallery_page .swiper-pagination1 .swiper-pagination-bullet,
#gallery_page .swiper-pagination2 .swiper-pagination-bullet,
#gallery_page .swiper-pagination3 .swiper-pagination-bullet {border-radius:0; margin-right:6px;}
#gallery_page .swiper-pagination2 {right:-6px;}




/*-------------------------------------------
　　CONTACT PAGE
-------------------------------------------*/
#contact_page .tab_wrap {width:400px; margin:60px auto 0 auto;}
#contact_page input#tab1,#contact_page input#tab2 {display:none;}
#contact_page .tab_area {display:flex; justify-content:space-between;}
#contact_page .tab_area label {width:190px; border:1px solid #dedede; padding:14px 0; text-align:center; font-size:12px; cursor:pointer; transition:ease 0.2s opacity;}
#contact_page .tab_area label:hover {opacity:0.7;}
#tab1:checked ~ .tab_area .tab1_label,
#tab2:checked ~ .tab_area .tab2_label {background:#000; color:#fff;}
.panel_area {position:relative; height:700px;}
.tab_panel {position:absolute; top:0; width:100%; padding:20px 0; pointer-events:none; opacity:0; transition:all 0.8s ease;}
#tab1:checked ~ .panel_area #panel1,
#tab2:checked ~ .panel_area #panel2 {opacity:1; pointer-events:auto;}
.tab_panel input {width:100%; border:1px solid #dedede; font-size:12px; padding:15px; margin-bottom:20px; box-sizing:border-box;} 
.tab_panel select {width:48%; border:1px solid #dedede; font-size:12px; padding:15px; margin-bottom:20px; box-sizing:border-box; color: #999; border-radius: 0;}
.tab_panel select#t_countm {margin-right: 4%;} 
.tab_panel option:first-child {color: #ccc;}
.tab_panel textarea {width:100%; border:1px solid #dedede; font-size:12px; padding:15px; box-sizing:border-box; height:10em; line-height:1.8; max-width:400px; max-height:250px; overflow:auto;}

::placeholder {color:#999;}

.tab_panel .message {background:#eee; width:100%; display:flex; justify-content:space-between; padding:15px; box-sizing:border-box;}
#contact_page .tab_panel .message p {font-size:11px; margin:0; text-align:left; line-height:1.6;}
.tab_panel .message .btn a {font-size:10px; background:#fff; color:#000; width:110px; letter-spacing:0; padding:10px 0;}
.tab_panel input[type="submit"] {display:block; width:190px; margin:30px auto; background:#000; color:#fff; text-align:center; cursor:pointer;}
.tab_panel input[type="submit"]:hover {opacity:0.7;}

/* 送信内容のご確認ページ */
#contact_page .page_title_2 {font-size:20px; font-weight:700; text-align:center; margin:50px 0 50px 0;}
#contact_page table {width:400px; margin:0 auto 0 auto; border-top:1px solid #dedede; border-left:1px solid #dedede;}
#contact_page table th {background:#000; color: #fff; font-size: 10px; padding:15px 0 15px 15px; width: 100px; border-bottom:1px solid #dedede; border-right:1px solid #dedede; line-height: 1.4; vertical-align: middle;}
#contact_page table td {border-bottom:1px solid #dedede; border-right:1px solid #dedede; padding:15px 10px 15px 15px; vertical-align: middle;}
#contact_page table td label {font-size: 10px; color: #333; margin-bottom: 3px; display: block;}
#contact_page table p {margin: 0; font-size:14px !important; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; text-align: left; display: inline; line-height: 1.6;}
#contact_page .contact_btn_area {width:400px; margin:30px auto 60px auto; display: flex; justify-content: space-between;}
#contact_page .contact_btn_area input[type="button"] {display:block; width:190px; background:#fff; color:#000; border:1px solid #dedede; text-align:center; cursor:pointer; font-size: 12px; padding: 10px 0;}
#contact_page .contact_btn_area button[type="submit"] {display:block; width:190px; background:#000; color:#fff; text-align:center; cursor:pointer; font-size: 12px; padding: 10px 0; border:1px solid #dedede;}
#contact_page .contact_btn_area input[type="button"]:hover {opacity:0.7;}
#contact_page .contact_btn_area button[type="submit"]:hover {opacity:0.7;}

/* THANKS YOUページ */
#contact_page p {text-align: center; line-height: 2.0; margin: 0 0 80px 0; font-size:12px !important;}
#contact_page a button[type="button"] {display:block; width:190px; background:#fff; color:#000; border:1px solid #dedede; text-align:center; cursor:pointer; font-size: 12px; padding: 10px 0; margin: 0 auto 100px auto;}




/*-------------------------------------------
　　TRIAL LESSON PAGE
-------------------------------------------*/
#trial_page h1.page_title {margin-bottom:20px;}
#trial_page h3  {font-size:16px; text-align:center; font-weight: bold;} 
#trial_page .trial_img ul {display:flex; justify-content:space-between; width:1100px; margin:30px auto 50px auto;}
#trial_page .trial_img ul li {width: calc(100% / 3);}
#trial_page .trial_img ul li img {width:100%;}
#trial_page .btn_area {margin:20px auto 40px auto; display:flex; justify-content:center;}
#trial_page .btn_area .btn a {width:140px; font-size:12px; padding:10px 0; border:1px solid #dedede; margin: 0 8px;}
#trial_page .btn_area .btn:first-child a {background:#fff; color:#000;}
#trial_page .need {background:#eee; width:560px; margin:20px auto 40px auto; padding:20px; box-sizing:border-box;}
#trial_page .need h3 {font-size:14px; margin-bottom:10px;}
#trial_page .need p:last-child {font-size:10px; margin-top:15px;}
#trial_page p {font-size:11px; text-align:center; line-height:2.0; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;}
#trial_page p.trial_01 {font-size:13px;}
#trial_page p.trial_02 {font-size:16px; margin:0 0 25px 0; font-weight: bold;}
#trial_page p.trial_05 {
	margin: 40px auto;
	max-width: 600px;
}
#trial_page p.trial_06 {
	margin: 20px auto;
}
#trial_page p.trial_06 .strong {
	text-align: center;
	display: block;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 8px;
	color: #c60031;
}
#line_yoyaku {
	border-top: 1px solid #ccc;
	padding: 40px 0 80px 0;
}
#line_yoyaku h3 {
	margin-bottom: 20px;
}
#line_yoyaku .qr_box {
	width: 220px;
	padding: 20px;
	margin: 15px auto 25px auto;
	background: #eee;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#line_yoyaku .text p,
#line_yoyaku .text .id {
	text-align: left;
	font-size: 12px;
	line-height: 1.6;
	margin: 8px 0;
}
#line_yoyaku .qr_code,
#line_yoyaku .qr_code img {
	width: 108px;
}
#line_yoyaku > p {
	max-width: 550px;
	margin: 0 auto;
}




/*-------------------------------------------
　　404 PAGE
-------------------------------------------*/
#error404_page {padding:100px 0;}
#error404_page #contents p {text-align:center; margin:100px 0;}



/*-------------------------------------------
　　company PAGE
-------------------------------------------*/
#company_page h1.page_title {margin-bottom:20px;}
main#company_page{width: 500px; margin: 0 auto; font-size: 13px; min-height: calc(100vh - 392px);}
#company_page #details {display: flex; flex-direction: column; justify-content: center; min-height: calc(100vh - 500px);}
#company_page .wp-block-columns{width: 100%; padding-top: 40px;}
#company_page .wp-block-columns1{width: 100px;}
#company_page .wp-block-columns2{width: 400px;}
#company_page hr {width: 100%; margin: 0;}




