@charset "utf-8";

/*共通スタイル*/

* { margin:0; padding:0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

body { background:#f7f5f2 /*url(../img/common/bg_beige.jpg) repeat top left*/; color:#53403c; -webkit-text-size-adjust:100%; overflow-x: hidden;
	font-family: "HarenosoraMincho","Hiragino Kaku Gothic ProN", "Hiragino Sans", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ",  sans-serif; font-weight: 400; font-style: normal; font-size:16px; line-height:1.8;  display:none;  min-width:350px; }

body,html { position:relative; }

#wrapper { min-width:350px; overflow-x: hidden;/**/ }

	@font-face {
		font-family: 'HarenosoraMincho';
		font-style: "normal";
		font-weight: 400;
		src: url('../fonts/HarenosoraMincho/HarenosoraMincho_subset.eot') format('eot'),
	       url('../fonts/HarenosoraMincho//HarenosoraMincho_subset.woff2') format('woff2'),
	       url('../fonts/HarenosoraMincho/HarenosoraMincho_subset.woff') format('woff');
	}
	
	@font-face {
		font-family: 'Bellota-Bold';
		font-style: "normal";
		font-weight: 400;
		src: url('../fonts/Bellota-Bold/Bellota-Bold_subset.eot') format('eot'),
	       url('../fonts/Bellota-Bold//Bellota-Bold_subset.woff2') format('woff2'),
	       url('../fonts/Bellota-Bold/Bellota-Bold_subset.woff') format('woff');
	}
	
	@font-face {
		font-family: 'Berliner-Grotesk-Regular';
		font-style: "normal";
		font-weight: 400;
		src: url('../fonts/Berliner-Grotesk-Regular/Berliner-Grotesk-Regular_subset.eot') format('eot'),
	       url('../fonts/Berliner-Grotesk-Regular//Berliner-Grotesk-Regular_subset.woff2') format('woff2'),
	       url('../fonts/Berliner-Grotesk-Regular/Berliner-Grotesk-Regular_subset.woff') format('woff');
	}
	
	@font-face {
		font-family: 'ShigotoMemogaki';
		font-style: "normal";
		font-weight: 400;
		src: url('../fonts/ShigotoMemogaki/ShigotoMemogaki_subset.eot') format('eot'),
	       url('../fonts/ShigotoMemogaki//ShigotoMemogaki_subset.woff2') format('woff2'),
	       url('../fonts/ShigotoMemogaki/ShigotoMemogaki_subset.woff') format('woff');
	}


	.bellota { font-family: "Bellota-Bold", "HarenosoraMincho"; font-weight: 400; font-style: normal; }
	.berliner { font-family: "Berliner-Grotesk-Regular", "HarenosoraMincho"; font-weight: 400; font-style: normal; }
	.memogaki { font-family: "ShigotoMemogaki", "HarenosoraMincho"; font-weight: 400; font-style: normal; }
	.hiragino { font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
	
	.noto_reg { font-family:noto-sans-cjk-jp,sans-serif; font-weight:400; font-style:normal; }
	.noto_bold { font-family:noto-sans-cjk-jp, sans-serif; font-weight:700; font-style:normal; }
	
	@keyframes fade {
	    0% {opacity: 0}
	    100% {opacity: 1}
	}
	@keyframes fade-in-up {
		0% { opacity: 0; transform: translate3d(0, 20px, 0); }
		100% { opacity: 1; transform: translate3d(0, 0, 0); }
	}
	@keyframes fade-in-up2 {
		0% { opacity: 0; transform: translate3d(0, 40px, 0); }
		100% { opacity: 1; transform: translate3d(0, 0, 0); }
	}
	@keyframes fade-in-side {
		0% { opacity: 0; transform: translate3d(30px, 0, 0); }
		100% { opacity: 1; transform: translate3d(0, 0, 0); }
	}
	@keyframes fade-in-side2 {
		0% { opacity: 0; transform: translate3d(-30px, 0, 0); }
		100% { opacity: 1; transform: translate3d(0, 0, 0); }
	}
	@keyframes blur {
	  0% { filter: blur(10px); }
	  100% { filter: blur(0); }
	}



	@media only screen and (min-width: 768px) {
		.onlySp { display: none!important; }
	}
	@media only screen and (max-width: 767px) {
		.onlyPc { display: none!important; }
	}


/* ----------------------------------------------------
library
---------------------------------------------------- */

.regular { font-weight:400; }
.bold { font-weight:700; }

img { max-width:100%; }
ul { list-style:none outside; }

.clr:after { /*content: ".";*/ display: block; clear: both; height: 0; visibility: hidden; }
.clr { min-height:1px; clear:both; }
* html .clr { height: 1px; /*\*//*/ height: auto; overflow: hidden; /**/ }

a { text-decoration:none; transition:0.3s; color:#431507; }
a:focus, *:focus { outline:none; }

	@media screen and (min-width: 768px) {	
		a[href^="tel:"] { pointer-events:none; text-decoration:none!important; }
	}

.block { display:block; }
.inline { display:inline; }
.inline_block { display:inline-block; }
.normal { font-weight:normal; }

.centerText { text-align:center; }
.leftText { text-align:left; }
.rightText { text-align:right; }

.centerBlock { margin-right:auto; margin-left:auto; display:block; text-align:center; }
.fleft { float:left; }
.fright { float:right; }

.flex { display:flex; }
.flex_wrap { flex-wrap:wrap; }
.item_center { align-items:center; }
.flex_center { justify-content:center; }
.flex_left { justify-content:flex-start; }
.flex_auto { justify-content:space-between; }

.bg_white { background:#fff; }

.red { color:#b51d00; }
.brown { color:#604c3f; }
.light_brown { color:#796a56; }
.blue { color:#53ad9e; }
.green { color:#1db9ac; }

.small { font-size:13px; }
.size14 { font-size:14px; }
.size15 { font-size:15px; }
.size16 { font-size:16px; }
.size17 { font-size:17px; }
.size18 { font-size:18px; }
.size20 { font-size:20px; }
.size22 { font-size:22px; }

.shorten { letter-spacing:-0.0025em; }

.relative { position:relative; z-index:1; }
.fixed { position:fixed; width:100%; }

.w_100 { width:100%; }

.fadein { opacity : 0.1; transform : translate(0, 50px); transition : all 500ms; }
.fadein.scrollin { opacity : 1; transform : translate(0, 0); }

.fadeinImg { opacity:0.5; transform:scale(1.065); overflow:hidden;/**/ }
.fadeinImg.scrollin { transition-duration:1s; opacity:1; transform: scale(1.0); }

.fadeinBg { opacity:0.5; transform: scale(1.065); overflow:hidden;/**/ }
.fadeinBg.scrollin { transition-duration:1s; opacity:1; transform: scale(1.0); }


.animation-box { opacity:0.1; margin-top:100px; transition:0.5s; }
.animation-box.active { opacity:1; margin-top:0; }

.btn { display:inline-block; border:1px solid #432a25; color:#432a25; text-align:center; transition:0.3s; text-decoration:none; font-size:18px; padding:0 60px; width:auto; position:relative; height:40px; line-height:34px; margin-right:auto; margin-left:auto; text-indent:-0.5em; border-radius:30px; }
.btn:hover { background:#432a25; color:#fff; text-decoration:none; }

.normal_btn { display:flex; justify-content:flex-start; }
.normal_btn li { margin-right:15px; }
.normal_btn a { display:block; background:#fff; border:1px solid #432a25; text-align:center; transition:0.3s; text-decoration:none; font-size:18px; font-weight:bold; padding:0 40px; width:auto; position:relative; height:40px; line-height:34px; margin:0 auto 5px; border-radius:30px; }
.normal_btn a:hover { background:#432a25; color:#fff; }

.blue_btn { display:flex; justify-content:flex-start; }
.blue_btn li { margin-right:15px; }
.blue_btn a { display:block; background:#7ac2c1; color:#fff; text-align:center; transition:0.3s; text-decoration:none; font-size:18px;  padding:0 40px; width:auto; position:relative; height:40px; line-height:34px; margin:0 auto 5px; border-radius:30px; }
.blue_btn a:hover { background:#56acac; }


.bg_beige { background:url(../img/common/bg_beige.jpg) repeat top left; }



	@media screen and (max-width: 767px) {
		.btn { font-size:16px; height:40px; line-height:40px; margin-bottom:20px; }
		.btn::after { width:10px; height:10px; top:calc(50% - 5px); }
	}
	
	/* mobile only */
	@media (hover: none) and (pointer: coarse) {
		.btn { line-height:40px; }
		.blue_btn a { line-height:40px; }
	}


/* ----------------------------------------------------
Menu
---------------------------------------------------- */

.menu { height:70px; position:fixed; right: 4%; top: 40px; width: 70px; z-index:102; background:#7ac2c1; border-radius:50%; cursor:pointer;  }
	#top .menu { background:#fff; }
	#top .menu.exBg { background:#7ac2c1; }
.menu__line{
background: #fff; display: block; height: 2px; position: absolute; transition:transform .3s; width: 47%; left:calc(50% - 23.5%); }
	#top .menu__line { background:#57a5a5; }
	#top .exBg .menu__line { background:#fff; }
.menu__line--top{ top:30px; }
.menu__line--bottom{ bottom:30px; }
.menu__line--top.active{ top: 35px; transform: rotate(45deg); }
.menu__line--bottom.active{ bottom: 33px; transform: rotate(135deg); }

/*gnav*/
.gnav{ background:url(../img/common/bg_menu.png) repeat top left; display: none; height: 100%; position: fixed; width: 100%; z-index: 101;  }
.gnav__wrap { align-items:center; display: flex; height: 100%; justify-content: center; position: absolute; width: 50%; left: 50%; background: #62b6b6; }
.gnav__inner { width:50%; }
.gnav__menu { width:; }
.gnav__menu__item { margin:20px 0; }
.gnav__menu__item a { color: #fff; font-size: 24px; font-weight: bold; padding:0 5%; text-decoration: none; transition: .5s; display: flex; justify-content: space-between; align-items: center; }
.gnav__menu__item a:hover, .gnav__menu_right p a:hover { color: #666; }
.gnav__menu__item a span { font-size:13px; font-weight:normal; }
.gnav__menu_right { margin: 20px 0; width:; }
.gnav__menu_right p { margin:0 0 10px 0; }
.gnav__menu_right p a {	color:#fff; padding: 5%; }
.instagram_btn { margin:30px 5% 0;}
.instagram_btn a { border-radius:50%; display:block; width: 50px; height: 50px; background:#7ac2c1 url(../img/common/ico_insta.png) no-repeat center center / 30px auto; text-indent:-9999px; }

/*
.gnav a[href*="news"],
.gnav a[href*="privacy"] { pointer-events:none; opacity:0.5; }*/


/*PC*/
html.open body { overflow-y:hidden!important; }


	@media screen and (max-width: 767px) {
		.menu  { height:50px; top:20px; width:50px; }
		.menu__line--top{ top:20px; }
		.menu__line--bottom{ bottom:20px; }
		.menu__line--top.active{ top:25px; }
		.menu__line--bottom.active{ bottom:23px; }
		.gnav__wrap { width:100%;  left:0; }
		.gnav__menu, .gnav__menu_right { width: 100%; }
		.gnav__inner { width:70%; margin-top:50px; }
		.gnav__menu__item { margin: 10px 0; }
		.gnav__menu__item a { font-size: 20px; line-height:1.5; }
	}
	
	/* mobile only */
	@media (hover: none) and (pointer: coarse) {
		/*html.open { overflow-y:hidden; }*/
		html.open body {  touch-action: none;-ms-touch-action: none;  }
	}


/* ----------------------------------------------------
main
---------------------------------------------------- */

.lower #main { padding:380px 0 0; position:relative; }
#privacy-policy.lower #main:before,
#news_archive.lower #main:before,
#news_single.lower #main:before,
#contact.lower #main:before,
#contact-confirm.lower #main:before,
#contact-complete.lower #main:before { content:""; position:absolute; top:0; left:0; width:100%; height:90%; background:url(../img/common/bg_header.png) repeat top left; }
#privacy-policy.lower #main:before { height:80%; }

h1 { position:absolute; top:46px; left:4%; }


.main_lead { margin:30px 0; }

	@media screen and (max-width: 767px) {
		.lower #main { padding:300px 0 0; }
		#privacy-policy.lower #main:before, #contact.lower #main:before, #contact-confirm.lower #main:before, #contact-complete.lower #main:before { height:; }
		#privacy-policy.lower #main:before { height:60%; }
		h1 { top:15px; left:5%; }
	}
	
	@media screen and (max-width: 600px) {
		/*h1 { max-width:200px; }*/
		.lower #main { padding:250px 0 0; }
		.lower h1 { max-width: 240px; }
		#news_archive.lower #main:before,
		#news_single.lower #main:before,
		#contact.lower #main:before,
		#contact-confirm.lower #main:before,
		#contact-complete.lower #main:before { height:%; background-size: 250% auto; }
		#privacy-policy.lower #main:before { height:55%; background-size: 250% auto; }
	}


/* ----------------------------------------------------
contents
---------------------------------------------------- */

#contents { padding:5% 0;  }
.content_inner { max-width:1100px; margin:0 auto; padding:0 30px; }
.content_inner_nosp { max-width:1100px; margin:0 auto; }


.contentTitle01 { font-size:64px; line-height:1.25; color:#432a25; letter-spacing:0.025em; }
.contentTitle01 span { display:block; font-size:16px; font-weight: bold; }
.contentTitle02 { font-size:60px; line-height:1; color:#78c4c2; display:flex; align-items:center; padding-left:60px; }
	.lower .contentTitle02 { padding-left:0; }
	#privacy-policy.lower .contentTitle02 { display:block; }
.contentTitle02 span { font-size:16px; display:block; margin:15px 0 0 25px; }
	#privacy-policy.lower .contentTitle02 span { margin: 15px 0 0 0; }
	
#aboutBox { padding:50px 0 200px; position:relative; }
#aboutBox:after { content:""; position:absolute; z-index:1; bottom:0; left:calc(50% - 550px); width:28%; height:auto; padding-top:12%; background:url(../img/common/bg_bear.png) no-repeat top left / 100% auto;  }
#aboutBox h2 { font-size:75px; letter-spacing:0.025em; position:absolute; left:27%; top:95px; line-height: 1; }
.about_topBox { max-width:; margin:0 0 80px; position:relative; z-index:2; }
.about_topBox_txt { position:absolute; left:35%; top:200px; }
.about_topBox_txt strong { display:block; font-size:24px; margin-bottom:20px; line-height:1.5; }
.about_topBox_txt p { font-size:16px; margin-bottom:30px; }
.about_topBox_txt ul { margin-bottom:30px; }
.about_topBox_txt ul li { position:relative; margin: 5px 0; padding: 0 0 0 40px; }
.about_topBox_txt ul .about_address { }
.about_topBox_txt ul .about_tel { font-weight:bold; font-size:24px; }
.about_topBox_txt ul li:before { content: ""; position: absolute; top: 0;left: 0; width: 26px; height: 50px; background-position: center 9px; background-repeat: no-repeat; background-size: contain; }
.about_topBox_txt ul .about_address:before { background-image: url(../img/about/ico_map.png); width:20px; height:29px; background-position: center 0; left:2px; }
.about_topBox_txt ul .about_tel:before { background-image: url(../img/about/ico_tel.png); }

.about_topBox img { display:block; }
.about_bottomBox { width:100%; }
.about_bottomBox_img { display:flex; justify-content:space-between; align-items: center;}
.about_bottomBox_img li:last-child { margin-top:-80px; }


#schedule { position: relative; z-index: 2; padding-top:200px; }
#schedule:before { content:""; position:absolute; z-index:-1; top:0; left:0; width:100%; height:690px; background:url(../img/common/bg_menu.png) repeat top left; }
.schedule_wrap { background:#fff; padding:50px 0; width:calc(50% + 550px); margin:0 0 0 auto; }
.schedule_wrap:after { /* background:#fff;  z-index:-1; top:0; right:0; width:90%; height:100%;content:""; position:absolute; margin-top:100px;*/  }
#schedule .contentTitle01 { margin-bottom:40px; }
.schedule_inner {  }
.scheduleDay { position:relative; border-top:1px solid #614f4b; }
.scheduleDay.tuesday,.scheduleDay.thursday,.scheduleDay.saturday { border-top:1px solid #978c88; }
.scheduleDay:before { position:absolute; top:-5px; left:-10px; font-size:66px; font-weight:bold; color:#54413d; line-height:1; transform: rotate(90deg); transform-origin:left top; letter-spacing:0.025em; font-family: "Berliner-Grotesk-Regular", "HarenosoraMincho"; }
.scheduleDay.monday:before { content:"MON"; }
.scheduleDay.tuesday:before { content:"TUE"; color:#7ac2c1; }
.scheduleDay.wednesday:before { content:"WED"; }
.scheduleDay.thursday:before { content:"THU"; color:#7ac2c1; }
.scheduleDay.friday:before { content:"FRI"; }
.scheduleDay.saturday:before { content:"SAT"; color:#7ac2c1; }
.scheduleDay.sunday:before { content:"SUN"; }
.schedule_innerBox { display:flex; justify-content:space-between; margin-bottom:0; position:relative; cursor:pointer; padding:10px 20px; }

.scheduleDay .schedule_inner { border-bottom:1px dotted #54413d;  }
.scheduleDay .schedule_inner.btm { border:none; }

	.schedule_innerBox:before { content: ''; position:absolute; z-index:1; right:1.1%; top:30%; width:32px; height:32px; background:url(../img/common/ico_toggle_brown.png?20210120) no-repeat center center / 100% auto; /*border-left: 8px solid #54413d;  border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-top:6px solid #fff; border-left:6px solid transparent; border-right:6px solid transparent;*/ }
	
		.scheduleDay.tuesday .schedule_innerBox:before,
		.scheduleDay.thursday .schedule_innerBox:before,
		.scheduleDay.saturday .schedule_innerBox:before { background:url(../img/common/ico_toggle_green.png?20210120) no-repeat center center / 100% auto; }
	
	.schedule_innerBox.close:before { /*border:none; border-top:6px solid #fff; border-left:6px solid transparent; border-right:6px solid transparent;*/ transform:rotate(180deg); }
	
	/*.schedule_innerBox:after { content: ''; position:absolute; z-index:0; right:0; top:28%; background:#53403c; border-radius:50%; width:35px; height:35px; }*/
	
	/*.scheduleDay.tuesday .schedule_innerBox:after,
	.scheduleDay.thursday .schedule_innerBox:after,
	.scheduleDay.saturday .schedule_innerBox:after { background:#7ac2c1; }*/
	

.schedule_time_name { display:flex; justify-content:space-between; align-items:baseline; padding:5px 0; width:100%; }
.schedule_time_name li:first-child { font-weight:bold; font-size:20px; width:7em; font-family: "Berliner-Grotesk-Regular", "HarenosoraMincho";}
.schedule_time_name li:first-child  span { padding:0 5px; }
.schedule_time_name li:last-child { width:calc(100% - 7em); font-size:24px; }
.schedule_info { display:flex; justify-content:space-between; padding:10px 20px 40px; }
.schedule_info_img { width:35%; }
.schedule_info_about { width:65%; padding:0 5%; font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;  }
.schedule_info_txt li { padding:10px 0; position:relative; }
.schedule_info_txt li:first-child:after { position:absolute; top:15px; right:0; font-size:16px; font-weight:normal; }
	.schedule_info_txt li.yoga:first-child:after { content:"ヨガ"; }
	.schedule_info_txt li.stretch:first-child:after { content:"コンディショニング"; }
	.schedule_info_txt li.ballet:first-child:after { content:"バレエ"; }
	.schedule_info_txt li.dance:first-child:after { content:"ダンス"; }
	.schedule_info_txt li.pilates:first-child:after { content:"ピラティス"; }

.schedule_info_txt li:first-child { font-size:20px; font-weight:bold; border-bottom:1px solid #e6dcdb; }
.schedule_info_txt p { margin-bottom:10px; }
.schedule_btn { /*display:flex; justify-content:space-between;*/ margin-top:30px; }
.schedule_btn li { width: auto; } 
.schedule_btn li:first-child { margin-bottom:15px; }
.schedule_btn li:last-child { width:; /*padding:0 0 0 5%;*/ }
.schedule_btn a { display:inline-block; background:#7ac2c1; color:#fff; text-align:center; transition:0.3s; text-decoration:none; font-size:16px; padding:0; width:250px; position:relative; height:40px; line-height:40px; margin:0 auto 5px; border-radius:30px; }
.schedule_btn a:hover { background:#62b6b5; }
.schedule_btn span { display:inline-block; text-align:center; margin:10px 0 0 20px; }
.schedule_btn .comingsoon { color:#7ac2c1; }

#instructorBox { padding:10% 0 15%; }
body#instructor .contentTitle02,
#instructorBox .contentTitle02 { /*position:relative; display: flex; justify-content: flex-start; flex-wrap: wrap;*/ }
body#instructor .contentTitle02:before,
#instructorBox .contentTitle02:before { content:""; position:absolute; top: -258%; left: -15%; z-index:-1; width:464px; height:261px;  background:url(../img/common/bg_title_bear2.png) no-repeat top center / contain; }


.instructor_slider_wrap { position:relative; min-height: 650px; }
.instructor_inner { position:absolute; top:0; /*left:calc(50% - 550px);*/ left:30px; z-index: 1; padding-top:30px; }
.instructor_slider img { margin-right:50px;  }
.instructor_slider_list { transition:0.3s; font-size:13px; }
.instructor_slider_list:hover { opacity:0.75; }
.instructor_slider_list:nth-child(odd) { margin-top:30px; }
.instructor_slider_list strong { display:block; font-size:64px; text-indent:5px; letter-spacing:0.025em; font-family: "Berliner-Grotesk-Regular", "HarenosoraMincho"; color:#f7f5f2; text-shadow:0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25,0 0 2.5px #432a25; }
	.instructor_slider_list strong.name_jp { font-size:45px; font-family:noto-sans-cjk-jp, sans-serif; font-weight:700; font-style:normal; }

.link { position:absolute; /*top:30px; right:0%;*/ font-size:14px; color:#78c4c2; transition:0.3s; width:120px; }
.link:before { content:""; position:absolute; left:-60px; top:12px; width:50px; height:1px; background:#78c4c2; }
.link:hover { color:#57a5a5; }
.link:hover:before { left:-50px; width:40px; background:#57a5a5; }

.arrows { position: absolute; text-align: center; top: -51px; right:9%; margin: 24px 0; width: 55px; z-index: 100; display: flex; justify-content: space-between; }

#schedule .schedule_wrap:nth-child(2) { background:none; padding:0; position:relative; }
#schedule .schedule_wrap:nth-child(2):after { content:""; position:absolute; z-index:-1; top:0; right:0; width:50%; height:100%; background:#fff; }
#schedule .schedule_wrap:nth-child(2) .content_inner { margin:0 auto; }

.about_reservation_wrap { display:flex; justify-content:flex-end; }
.about_reservation {  width:450px; margin-bottom:50px; }
.about_reservation h4 { font-size:24px; border-bottom:2px solid #432a25; padding:0 0 10px; background:url(../img/common/bg_title_bear.png) no-repeat 98% 0%; }
.about_reservation p { margin:20px 0; }

#schedule .content_inner:nth-of-type(1) { margin-bottom:50px;  }

	.lower .contentTitle02 { position:relative; }
	.lower .contentTitle02:before { content:""; position:absolute; z-index:-1; top:-348%; }
	body#about .contentTitle02:before { left:-15%; background:url(../img/common/bg_title_bear3.png) no-repeat top center / contain; width:395px; height:267px; }
	body#reservation .contentTitle02:before { left:-10%; background:url(../img/common/bg_title_bear4.png) no-repeat top center / contain; width:336px; height:246px; }
	body#instructor .contentTitle02:before { top:-355%; left:-15%; width:513px; height:291px; background:url(../img/instructor/bg_title_bear2.png) no-repeat top center / contain; }
	body#price .contentTitle02:before { top:-300%; left:-13%; width:303px; height:193px; background:url(../img/common/bg_title_bear5.png) no-repeat top center / contain; }



	@media screen and (min-width: 1500px) {
		.link { top:30px; right:calc(50% - 540px); }
		.arrows { top: -51px; right: calc(50% - 620px); }
	}
	
	@media screen and (min-width: 1200px) {
		
		.instructor_inner { left:calc(50% - 550px); margin-left:30px; }
	}
	
	@media screen and (max-width: 1499px) {	
		.link { top:-30px; right:0; }
	}
	
	@media screen and (max-width: 1360px) {	
		.schedule_wrap { width:100%; }
		.schedule_wrap .content_inner { padding: 0 30px 0 60px; }
		.link { top:-30px; }
	}
	
	@media screen and (max-width: 1100px) {	
		.instructor_slider_wrap { min-height:700px; }
	}
	
	@media screen and (max-width: 1024px) {
		#aboutBox:after { left:5%; width: 40%; height: auto; padding-top: 17%; }
		#schedule { margin-bottom: 15%; }
		#schedule { padding-top:20%; }
		.scheduleDay:before { font-size:33px; left:-5px; }
		/*.schedule_innerBox:before { right:11px; top:53%; }*/
		.schedule_time_name { line-height:1.5; }
		.schedule_time_name li:first-child { font-size:18px; }
		.schedule_time_name li:last-child { font-size:20px; }
		#schedule .schedule_wrap:nth-child(2):after { width:100%; }
		.about_reservation { width: 100%; }
		#instructorBox { padding:100px 0 5%; }
		
	}
	
	@media screen and (max-width: 767px) {
		.about_topBox { background:url(../img/top/img_about01.jpg) no-repeat center center / cover; padding:30% 0 30%; margin:0; }
		#aboutBox h2 { font-size:45px; left: calc(50% - 3.5em); }
		.about_topBox_txt { position:relative; top:80px; left:auto; padding: 30px 30px; width:100%; background: rgba(255,255,255,0.5); }
		.about_bottomBox_img { align-items: flex-end; }
		.about_bottomBox_img li:last-child { margin-top:80px; }
		.about_bottomBox_img li:first-child { display:none; }
		
		
		.schedule_wrap .content_inner { padding: 0 30px 0 40px; }
		.schedule_innerBox { padding:10px 20px 10px 10px; }
		
		.schedule_time_name li:first-child { font-size:16px; }
		.schedule_time_name li:last-child { font-size:20px; }
		.schedule_info { flex-wrap:wrap; padding:10px 10px 40px 0; }
		.schedule_info_img,.schedule_info_about { width:100%; }
		.schedule_info_img { text-align:center; }
		.schedule_info_txt li:first-child { padding-top:20px; margin-top:15px; }
		.schedule_info_txt li:first-child:after { font-size:12px; top:0; }
		
		
		#instructorBox .contentTitle02:before { top: -225%; width: 70%; }
		.instructor_slider img { margin-right:30px;  }
		#instructorBox .arrows { top:-9%; }
		.link { left:auto; right:30px; }
		
		body#about .contentTitle02:before { left:-10%; background-position:bottom left; background-size:70% auto; }
		body#reservation .contentTitle02:before { left:-5%; background-position:bottom left; background-size:70% auto; }
		body#instructor .contentTitle02:before { left:-15%; background-position:bottom left; background-size:80% auto; }
		body#price .contentTitle02:before { top:-310%; background-position:bottom left; background-size:80% auto; }
		
	}
	
	@media screen and (max-width: 600px) {
		.about_reservation .normal_btn { flex-wrap:wrap; }
		.about_reservation .normal_btn li { width:80%; margin-bottom:10px; }
		.contentTitle02, .contentTitle01 { font-size:40px; }
		#schedule .contentTitle01 { margin-bottom:20px; }
		
		.instructor_inner { padding-top:0; }
		#instructorBox .contentTitle02:before { top: -120px; }
		#instructorBox .contentTitle02 { display:block; padding-left:0; }
		#instructorBox .contentTitle02 span { margin:0; }
		#instructorBox .arrows { top:35%; right:6.5%; width:92%; }
		
		.link { right:20px; }
		
		.lower .contentTitle02 { display:block; }
		.lower .contentTitle02 span { margin:0; }
		.lower .contentTitle02:before { background-position:top left; top:auto; bottom:30%; }
		body#about .contentTitle02:before { left:-20%; }
		body#reservation .contentTitle02:before { left:-15%; }
		body#instructor .contentTitle02:before { left:-20%; top:auto; bottom:20%; background-size:70% auto; }
	}
	
	@media screen and (max-width: 550px) {
		#aboutBox { padding: 50px 0 30%; }
		.schedule_time_name { flex-wrap:wrap; }
		.schedule_time_name li:first-child,.schedule_time_name li:last-child { width:100%; }
		.schedule_info_about { padding:0; }
		.schedule_btn { flex-wrap:wrap; }
		.schedule_btn li:first-child,.schedule_btn li:last-child { width: 100%; padding:0; }
		.schedule_btn li:first-child { margin-bottom:10px; }
		.schedule_btn a { display: block; }
		.schedule_btn span { display: block; margin: 10px auto; }
		.schedule_innerBox:before { width:25px; height:25px; top:35%; }
		
		.instructor_slider { margin-top:50px; }
	}
	
	/* mobile only */
	@media (hover: none) and (pointer: coarse) {
		.normal_btn a { line-height:40px; }
	}


/* ----------------------------------------------------
about
---------------------------------------------------- */
.about_main { position:relative; text-align:right; }
.about_main:before { content:""; position:absolute; z-index:-1; top:-5%; left:-43%; background:#f2ede9; width:100%; height:108.5%; }
.about_main img { margin-right:-10%; }
.about_main_txt { position:absolute; top:10%; left:3%; text-align:left; }
.about_main_txt strong { font-size:27px; line-height:1.5; display:block; margin-bottom:40px; }

.about_message { text-align:left; max-width:1000px; margin:50px auto; position:relative; }
.about_message:after { content:""; position:absolute; z-index:-1; bottom:-5%; right:3%; background:url(../img/about/bg_message.png) no-repeat bottom right; width:100%; height:100%; }
.about_message .memogaki { font-size:23px; font-weight:bold; letter-spacing:0.2em; }
.about_message strong { font-size:24px; display:block; margin-top:5%; }

.about_philosophy { margin:10% 0 0; padding:0 0 0 3%; position:relative; }
.about_philosophy:before { content:""; position:absolute; z-index:-1; top:25px; left:-50%; background:#f2ede9; width:200%; height:calc(100% - 25px); }
.aboutTitle { font-size:61px; letter-spacing: 0.025em; line-height: 1; text-shadow:4px 3px 5px #f0ff00; }
.about_philosophy .aboutTitle span { display:block; font-size:15px; margin-top:30px; text-shadow:none; }
.about_philosophy_profile { display:flex; justify-content:space-between; align-items:flex-end; }
.about_philosophy_profile img { display:block; }
.about_philosophy_profile_txt { margin-bottom:80px; }
.about_philosophy_profile li:last-child { margin-bottom:80px; }
.about_philosophy_profile_txt strong { color:#7ac2c1; display:block; font-size:16px; letter-spacing: 0.025em; }
.about_philosophy_profile_txt p:nth-of-type(1) { font-size:18px; }
.about_philosophy_profile_txt p:nth-of-type(2),
.about_philosophy_profile_txt p:nth-of-type(1) span { font-size:12px; }

.about_features { padding-bottom:150px; }
.about_features .aboutTitle { text-align:center; margin:10% 0 0; }
.about_features_img { display:flex; justify-content:space-between; align-items:flex-end; margin:5% auto; }
.about_features_img.second { margin:0 0 10%; }
.about_features_txt { display:flex; justify-content:space-between; flex-wrap:wrap; margin:0 0 5%;}
.about_features_txt li { width:30%; margin-bottom:50px; text-align:center; }
.about_features_txt strong { font-size:24px; display:block; position:relative; margin-bottom:20px; padding-bottom:10px; position:relative; }
.about_features_txt strong:after { content:""; position:absolute; bottom:0; left:calc(50% - 35%); height:2px; width:70%; background:#432a25; }
.about_features_point { display:flex; justify-content:space-between; align-items:center; margin:5% 0; }
.about_features_point strong { font-size:24px; line-height:1.5; display:block; margin-bottom:30px; }
.about_features_point li { width:50%; }
.about_features_point li:nth-child(2) { padding:0 0 0 4%; }
.about_features .about_features_point:last-of-type li:nth-child(1) { padding:0 4% 0 0; }
.about_features .about_features_point:last-of-type li:nth-child(2) { padding:0; text-align:right; }
.about_features_point .blue_btn { margin-top:30px; width:90%; flex-wrap:wrap; }
.about_features_point .blue_btn li { width:auto; }
.about_features_point .blue_btn li { margin-bottom:10px; }
.about_features .about_features_point:last-of-type .blue_btn li:nth-child(1) { padding:0; }

.about_access { padding:50px 0; position:relative; margin:0 0 0 0;  }
.about_access:before { content:""; background:#93cccb; position:absolute; z-index:-1; top:-5%; right:calc(50% - 13.4%); width:100%; height:85%; }
.about_access .content_inner_nosp { max-width:1100px; padding:70px 60px 70px; background:#fff; margin:0 auto; position:relative; left:3%; }
.about_access .aboutTitle { text-shadow:none; font-size:52px; }
.about_access .aboutTitle span { display:block; font-size:15px; margin:10px 0 30px; text-shadow:none; }
.about_access_inner { display:flex; justify-content:space-between; }
.about_access_logo { border-bottom:1px dashed #53403c; margin-bottom:10px; padding-bottom:10px; }
.about_access_inner ul { font-size:14px; width:50%; margin-right:5%; }
.about_access_inner p { position:relative; margin:5px 0; padding:0 0 0 40px; }
.about_access_inner p.tel { font-weight:bold; font-size:24px; }
.about_access_inner p.train { margin-top:40px; font-weight:bold; }
.about_access_inner p:before { content:""; position:absolute; top:0; left:0; width:26px; height:50px; background-position:center 9px; background-repeat:no-repeat; background-size:contain; }
.about_access_inner p.tel:before { background-image:url(../img/about/ico_tel.png); }
.about_access_inner p.web:before { background-image:url(../img/about/ico_web.png); background-position:center 5px; }
.about_access_inner p.mail:before { background-image:url(../img/about/ico_mail.png); background-position:center 5px; }
.about_access_inner p.train:before { background-image:url(../img/about/ico_train.png); height:50px; background-position:center 0px; }
.about_access_inner .normal_btn { width:auto; }


	@media screen and (max-width: 1100px) {
		.about_access .content_inner_nosp { left:0; }
	}
	
	@media screen and (max-width: 1024px) {
		.about_features { padding-bottom:100px; }
		.about_access:before { display:none; }
		
	}
	
	@media screen and (max-width: 900px) {
		
		.about_philosophy_profile { flex-wrap:wrap; justify-content:center; margin-top:50px; }
		.about_philosophy_profile li:nth-child(1) { order:3; width:50%; }
		.about_philosophy_profile li:nth-child(2) { order:2; width:40%; padding-right:5%; }
		.about_philosophy_profile li:nth-child(3) { order:1; width:100%; }
		.about_philosophy_profile img { margin:0 auto; }
		.about_access .content_inner_nosp { padding:50px 30px 40px; }
		.about_access_inner ul { width:60%; margin-right:5%; }
	}
	
	@media screen and (max-width: 767px) {
		
		.aboutTitle { font-size: 45px; }
		.about_main:before { height:106%; }
		.about_main:before { top:-2%; left:-10%; width:150%; }
		.about_main_txt { position:relative; left:0; }
		.about_main img { margin-right:0%; margin-top:30px; }
		.about_main_txt strong { font-size:24px; margin-bottom:0; }
		.about_message { padding-bottom:50%; margin: 30px auto 100px; }
		.about_message:after { right:-3%; background:url(../img/about/bg_message.png) no-repeat bottom right / 45% auto; }
		.about_message .memogaki { font-size:20px; }
		.about_philosophy .aboutTitle span { margin-top:15px; }
		.about_features { padding-bottom:0; }
		.about_features_txt li { width:48%; margin-bottom:50px; text-align:center; }
		.about_features_point { flex-wrap:wrap; margin: 50px 0; }
		.about_features_point li { width:100%; text-align:center; }
		.about_features .about_features_point:last-of-type li:nth-child(1) { padding:0; }
		.about_features_point li p { text-align:left; }
		.about_features_point li img { margin:5% auto; }
		.about_features_point .blue_btn { justify-content:center; width:100%; }
		.about_features_point .blue_btn li { margin:0 10px; width:45%; }
		.about_features .about_features_point:last-of-type li:first-child { order:2; }
		.about_features .about_features_point:last-of-type li:last-child { order:1; }
		.about_features .about_features_point:last-of-type li:nth-child(2) { text-align:center; }
		.about_access .aboutTitle { font-size:42px; }
		.about_access_inner { flex-wrap:wrap; }
		.about_access_inner ul { width:100%; margin:0; }
		.about_access_inner .img_map { width:75%; margin:50px auto 0; }
		.about_access_inner .normal_btn { margin:0 auto 0; }
		
    }

	@media screen and (max-width: 600px) {
		.about_message { padding-bottom:75%; }
		.about_philosophy { margin:20% 0 0; padding:0; }
		.about_philosophy_profile li:nth-child(1){ width:15em; margin:30px auto 0; }
		.about_philosophy_profile li:nth-child(2) { width:70%; padding-right:0; }
		.about_philosophy_profile li:nth-child(3) { width:120%; margin-left:0%; }
		.about_philosophy_profile li:last-child { margin-bottom:40px; }
		.about_features_img { flex-wrap:wrap; }
		.about_features_img li:nth-child(1) { order:2; width:50%; }
		.about_features_img li:nth-child(2) { order:1; width:100%; text-align:center; }
		.about_features_img li:nth-child(3) { order:3; width:50%; }
		.about_features_txt li { width:100%; }
		.about_access_inner .normal_btn a { font-size:16px; padding:0 30px; height:35px; line-height:30px; }
		.about_access_inner .img_map { width:100%; }
	}
	
	@media screen and (max-width: 550px) {
		.about_features_point .blue_btn { flex-wrap:wrap; }
		.about_features_point .blue_btn li { margin:10px 10px 5px; width:100%; }
	}



/* ----------------------------------------------------
price
---------------------------------------------------- */
.price_list_wrap { position:relative; display:flex; justify-content:space-between; }
.price_list_wrap:before { content:""; position:absolute; z-index:-1; top:-3%; left:-43%; background:#f2ede9; width:100%; height:500px; }
.price_list_wrap h3 { margin:30px 30px 0 0; }
.price_list_wrap h3 img { display:block; }
.price_list { max-width:840px; background:#fff; padding:0 30px 50px; margin: 0 0 0 auto; }
.price_list ul { margin:0 auto; text-align: center; padding:50px 0 0; }
.price_list li:not(:last-child) { margin-bottom:50px; }


	@media screen and (max-width: 767px) {
		.price_list_wrap { display:block; }
		.price_list_wrap:before { top:-1%; left:-4%; width:115%; }
		.price_list_wrap h3 img { margin:0 auto 20px; }
		#price #contents .content_inner { padding:0; }
		.price_list { margin-bottom:50px; }
	}

/* ----------------------------------------------------
reservation
---------------------------------------------------- */
.reservationTitle { font-size:52px; letter-spacing: 0.025em; line-height:1; text-shadow:4px 3px 5px #f0ff00; }
.reservationTitle span { display:block; font-size:15px; margin-top:10px; text-shadow:none; }
.reservation_studio_lesson_inner { display:flex; justify-content:space-between; margin:5% 20px; }
.reservation_studio_lesson_inner_img { width:28%; }
.reservation_studio_lesson_inner_txt { width:72%; margin-left:70px; }
.reservation_studio_lesson_inner_txt strong { font-size:24px; font-weight:bold; line-height:1.5; display:block; margin-bottom:15px; padding-bottom:15px; position:relative; border-bottom:1px solid #9d8f8b; }
.reservation_studio_lesson_inner_txt strong:after { content:""; position:absolute; bottom:-4px; right:0; width:8px; height:8px; border-radius:50%; background:#9d8f8b; }
.reservation_studio_lesson_inner_txt p { }

.reservation_online_lesson { padding:50px 0; }
.reservation_online_lesson_wrap { padding:50px 0 0; position:relative; margin:50px 0 0 0; }
.reservation_online_lesson_wrap:before { content:""; background:#f2ede9; position:absolute; z-index:-1; top:-10px; right:calc(50% - 13.4%); width:100%; height:85%; }
.reservation_online_lesson_wrap .content_inner_nosp { max-width:1100px; /**/ margin:0 auto; position:relative; left:30px; display:flex; justify-content:space-between; }
.reservation_online_lesson_inner { background:#fff; width:75%; padding:70px 60px 70px; }
.reservation_step { margin-top:70px; }
.reservation_online_lesson .reservation_studio_lesson_inner_txt { margin-left:0px;  width:100%;}
.reservation_online_lesson_inner .size14 a { text-decoration:underline; }
.reservation_online_lesson_inner .size14  a:hover { text-decoration:none; }

.reservation_notes { max-width:1000px; margin:0 auto; }
.reservation_notes .reservation_studio_lesson_inner_txt { margin:0 0 50px; width:100%; }
.reservation_notes .reservation_studio_lesson_inner_txt:last-of-type { margin-bottom:0; }
.reservation_notes ul li { margin-left:1em; text-indent:-1em; }


	@media screen and (max-width: 1024px) {
		.reservation_online_lesson_wrap:before { right:0; }
		.reservation_online_lesson_wrap { padding:25px 0 0; }
		.reservation_online_lesson_wrap .content_inner_nosp { display:block; left:0; }
		.reservation_online_lesson_inner { margin:0 30px; width:auto; padding: 30px 30px 50px; }
		.reservation_step { margin:0 auto 20px; text-align:center; width:20%; }
	}

	@media screen and (max-width: 767px) {
		.reservation_studio_lesson_inner { flex-wrap:wrap; margin: 5% 0px; }
		.reservation_studio_lesson_inner_img { width:100%; text-align:right; }
		.reservation_studio_lesson_inner_txt { width:100%; margin-left:0px; }
		.reservation_step { width:30%; }
		.reservationTitle { font-size: 45px; }
		.reservation_studio_lesson_inner_txt .blue_btn { flex-wrap:wrap; }
		.reservation_notes { margin-bottom:50px; }
		
	}
	
	@media screen and (max-width: 600px) {
		.reservation_online_lesson_inner { padding: 20px 20px 30px; }
		.reservation_studio_lesson_inner_txt .blue_btn li { width:100%; margin:10px 10px 5px; }
	}


/* ----------------------------------------------------
instructor
---------------------------------------------------- */
.instructor_profileBox { position:relative; z-index:1; background:#7ac2c1; border-radius:30px 30px 0 0; min-height:230px; margin-bottom:100px; }
	.instructor_profileBox:nth-of-type(even) { background:#d8c7b4; }
	.instructor_profileBox.on { border-radius:30px; }

.instructor_profile { display:flex; justify-content:space-between;/**/ }
.instructor_profile:after { /*content:""; position:absolute; z-index:1; top:0px; left:0; width:100%; background:#7ac2c1; border-radius:30px 30px 0 0; min-height:230px;*/ }

.instructor_profile_mainPic { margin-left:50px; width:41%; position:absolute; top:-30px; z-index:2; }
.instructor_profile_mainTxt { color:#fff; width:100%; padding:20px 0 0 50%; position:relative; z-index:2; min-height:230px; }
.instructor_profile_mainTxt strong { display: block; font-size: 119px; line-height:1; text-indent: 5px; letter-spacing: 0.025em; font-family: "Berliner-Grotesk-Regular", "HarenosoraMincho"; color: #7ac2c1; text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff; }
	.instructor_profileBox:nth-of-type(even) .instructor_profile_mainTxt strong { color: #d8c7b4; }
	.instructor_profile_mainTxt strong.name_jp { font-size:80px; line-height:1.5; font-family:noto-sans-cjk-jp, sans-serif; font-weight:700;font-style: normal; }

.instructor_profile_mainTxt p { font-size:14px; padding-right:20px; }

.instructor_profile_btn { width:70px; height:70px; background:#fff url(../img/common/ico_arrow_blue.png) no-repeat center center / 40% auto; border-radius:50%; border:1px solid #7ac2c1; position:absolute; z-index:5; top:185px; right:50px;/* */ transform:rotate(180deg); cursor:pointer; }
	.instructor_profileBox:nth-of-type(even) .instructor_profile_btn { border:1px solid #d8c7b4; background:#fff url(../img/common/ico_arrow_camel.png) no-repeat center center / 40% auto; }

.instructor_profile_btm { background:#fff; border-radius:0 0 30px 30px; padding:10% 5% 10% 10%; position:relative; /*top:-70px;*/ width:100%; }
.instructor_profile_btm.open { display:block!important; }

.instructor_profile_btm .schedule_inner { border-top:1px solid #a99f9d; }
.instructor_profile_btm .schedule_innerBox:before { /*border:none; border-top:10px solid #54413d; border-left:8px solid transparent; border-right:8px solid transparent; */}

.instructor_profile_btm .scheduleDay.tuesday:before,
.instructor_profile_btm .scheduleDay.thursday:before,
.instructor_profile_btm .scheduleDay.saturday:before { color:#533f3b; }

.instructor_profile_info li { position:relative; border-top:1px solid #a99f9d; padding:20px 15px; font-family:"Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }
.instructor_profile_info li:before { position:absolute; top:-15px; left:-60px; font-size:18px; font-family:"HarenosoraMincho", sans-serif; }
.instructor_profile_info li.career:before { content:"指導歴"; }
.instructor_profile_info li.history:before { content:"活動歴"; }
.instructor_profile_info li.etc:before { content:"その他"; }
.instructor_profile_info li.certification:before { content:"指導資格"; font-size:14px; }


	@media screen and (max-width: 1024px) {
		.instructor_profile_mainTxt strong { font-size:5.5rem; }
		.instructor_profile_mainTxt strong.name_jp { font-size:3.5rem; }
	}

	@media screen and (max-width: 767px) {
		.instructor_profileBox#aso { margin-top:30px; }
		.instructor_profile { display:block; padding-bottom:50px; }
		.instructor_profile:after { height:100%; }
		.instructor_profile_mainPic,
		.instructor_profile_mainTxt { width:100%; min-height:auto; margin-top:-50px; }
		.instructor_profile_mainPic { position:relative; text-align:center; margin:0; }
		.instructor_profile_mainPic img { width:90%; max-width:452px; }
		.instructor_profile_mainTxt { padding:0 30px; }
		.instructor_profile_btn { top:auto; right:calc(50% - 35px); margin-top:-30px; }
		.instructor_profile_info { margin-top:50px; }
		.instructor_profile_info li { padding:20px 0 25px; margin-bottom:50px; }
		.instructor_profile_info li:last-child { margin-bottom:0; }
		.instructor_profile_info li:before { top:-40px; left:0px; font-size:16px; }
		.instructor_profile_info li.certification:before { font-size:16px; }
	}
	
	@media screen and (max-width: 550px) {
		.instructor_profile_mainTxt strong { font-size:4.5rem; }
		.instructor_profile_mainTxt strong.name_jp { font-size:2.5rem; }
		.instructor_profile_btn { right:calc(50% - 25px); width:50px; height:50px; }
	}


/* ----------------------------------------------------
news
---------------------------------------------------- */
#news { padding:50px 0; position:relative; }
.news_wrap {}
#news:before { content:""; background:#93cccb; position:absolute; z-index:-1; top:-15%; right:calc(50% - 13.4%); width:100%; height:100%; }
/*#news:after { content:""; background:#fff; position:absolute; z-index:-1; top:0%; left:calc(50% - 34%); width:100%; height:100%; }*/
#news .content_inner_nosp { display:flex; justify-content: flex-end; margin:0 auto; position:relative; left:3%; }
.news_inner { max-width: 1100px; margin: 0 0 0 0; padding: 50px 60px 90px; background: #fff; }
	.news_wrap { position:relative; }
	/*.news_wrap:after { content:""; background:#fff; position:absolute; z-index:-1; top:0%; left:calc(50% - 34%); width:100%; height:100%; }*/

#news h4 { font-size:55px; position:relative; }
#news h4 span { padding-left:10px; font-weight:bold; }
.news_title_wrap { display:flex; justify-content:space-between; align-items:center; margin-bottom:20px;  }
#news h4 span { font-size:16px; }
#news .normal_btn li { margin:0; }
.news_post { display:flex; justify-content:flex-start; width:100%; }
.news_post li { width:31%; }
/*.news_post li:nth-child(2)*/ .news_post li:nth-child(3n-1) { margin:0 3.5%; }

	.news_post.archive { flex-wrap:wrap; }
	.news_post.archive li { margin-bottom:50px; }
	
.news_thumb { width:100%; height:auto; padding-top:69%; background-repeat:no-repeat; background-position:center center; background-size:cover; transition:0.3s; background-image:url(../img/common/img_logo2.png); }
.news_thumb.noimg { background-size:30% auto; background-color:#fff; box-sizing: border-box; border:1px solid #9d8f8b; opacity:0.75; }
.news_post strong { font-size:20px; line-height:1.5; display:block; position:relative; margin:10px 0 25px; padding-bottom:10px; }
.news_post strong:after { content:""; position:absolute; bottom:-10px; left:0; width:43px; height:2px; background:#432a25; transition:0.3s; }
.news_post p { font-size:15px; margin-bottom:15px; }
.news_post a:hover .news_thumb { opacity:0.75; }
.news_post a:hover strong:after { width:50px; background:#93cccb; }

.news_archive li { margin-bottom:50px; }
.news_archive li a { display:flex; justify-content:space-between; align-items:center; }
.news_archive li:hover .news_img { opacity:0.75; }
.news_archive_title { font-size: 24px; font-weight:bold; line-height:1.5; }
.news_archive .news_img { width:30%; background-repeat:no-repeat; background-position:center center; background-size:cover; height:200px; transition: 0.3s;}
.news_archive .news_text { width:65%; }

.news_title { margin:0 0 50px; }
.news_title h3 { font-size: 24px; font-weight:bold; line-height:1.5; }
.news_list { max-width:1000px; margin:0 auto; }
.news_pic { margin:0 auto 30px; }
.news_content strong { font-weight:bold; }
.news_content p { margin:0 0 20px; }
.news_content pre { white-space:normal; }
.news_content img { margin:0 0 20px; height:auto; }

.news_footer { border-top:1px dotted #9d8f8b; margin-top:50px; }
.news_footer .blue_btn { justify-content: center; }
.news_next_prev .next { position:relative; text-align:right; padding-right:25px; margin-bottom:20px; }
.news_next_prev .prev { position:relative; padding-left:25px; }
.news_next_prev .prev:after,
.news_next_prev .next:after { content:""; position:absolute; top:5px; width:20px; height:20px; background:url(../img/common/ico_arrow_blue.png) no-repeat center center / contain;  }
.news_next_prev .prev:after { transform:rotate(-90deg); left:0; }
.news_next_prev .next:after { transform:rotate(90deg); right:0; }


	@media screen and (max-width: 1100px) {
		#news .content_inner_nosp { left:0; }
	}
	
	@media screen and (max-width: 1024px) {
		#news:before { display:none; }
		.news_inner { padding: 30px 30px 50px; }
	}
	
	@media screen and (max-width: 767px) {
		.news_post { flex-wrap:wrap; }
		.news_post li { width:100%; }
		.news_post li:nth-child(2) { margin:50px 0; }
		
		.news_archive li a { display:block; }
		.news_archive .news_img { width:100%; height:auto; padding-top:69%; margin-bottom:30px; }
		.news_archive .news_text { width:100%; }
		.news_archive_title { font-size:20px; }
	}
	
	@media screen and (max-width: 600px) {
		#news h4 { font-size:35px; }
		#news .normal_btn a { font-size:16px; padding:0 30px; height:35px; line-height:30px; }
	}
	
	/* mobile only */
	@media (hover: none) and (pointer: coarse) {
		#news .normal_btn a { line-height:34px; }
	}


/* ----------------------------------------------------
privacy policy
---------------------------------------------------- */
.privacyBox ol li { margin-bottom:50px; }
.privacyBox .title { position:relative; border-bottom:1px solid #9d8f8b; margin-bottom:15px; padding:0 0 15px 45px; font-size:24px; line-height:1.5; }
.privacyBox .title:before { position:absolute; top:0; left:0; font-size:41px; line-height:1; color:#7ac2c1; font-family: "Berliner-Grotesk-Regular", "HarenosoraMincho"; }
.privacyBox .title:after { content:""; position:absolute; bottom:-4px; right:0; width:8px; height:8px; border-radius:50%; background:#9d8f8b; }
.privacyBox .no_01:before { content:"1."; }
.privacyBox .no_02:before { content:"2."; }
.privacyBox .no_03:before { content:"3."; }
.privacyBox .no_04:before { content:"4."; }
.privacyBox .no_05:before { content:"5."; }
.privacyBox .no_06:before { content:"6."; }
.privacyBox .no_07:before { content:"7."; }
.privacyBox ul li { margin:0 0 10px 1em; text-indent:-1em; }
.contactUs { position:relative; background:#fff; padding:5%; border-radius:0 30px 30px 30px; font-size:16px; }
.contactUs:before { content:""; position:absolute; top:-29px; left:0; width:38px; height:29px; background:url(../img/common/bg_bubble.png) no-repeat bottom left; }
.contactUs h3 { font-size:42px; color:#7ac2c1; }
.contactUs h3 span { font-size:16px; padding-left:10px; }
.contactUs strong { display:block; font-size:20px; font-weight:bold; margin-top:10px; }


	@media screen and (max-width: 600px) {
		.privacyBox .title { font-size:20px; }
		.contactUs { padding:8%; }
		.contactUs p { font-size:14px; }
		.contactUs h3 { font-size:32px; }
	}



/* ----------------------------------------------------
contact
---------------------------------------------------- */
#contactBox { background:#f7f5f2; padding:250px 0 200px; text-align:center; }
#contactBox h4 { font-size:24px; position:relative; }
#contactBox h4:before { content:""; position:absolute; top:-150px; left:calc(50% - 143px); width:286px; height:142px; background:url(../img/common/bg_contact.png) no-repeat top center / 100% auto; }
.contact_lead { position:relative; margin:15px 0 90px; }
.contact_lead:after { content:""; position:absolute; bottom:-60px; left:50%; width:1px; height:40px; background:#432a25; }
#contactBox .normal_btn { justify-content: center; }
#contactBox .normal_btn li { margin:0;}

.contactTitle { font-size:42px; letter-spacing: 0.025em; line-height:1; margin-bottom:30px; text-shadow: 4px 3px 5px #f0ff00; }
.contactTitle span { font-size:16px; text-shadow:none; padding-left:10px; }
.contactTitle_thanks { font-size:30px; display:block; margin-bottom:50px; line-height: 1.5; }
.contactBox .require { font-size:14px; color:#b51d00; padding-left:10px; text-shadow:none; }
.telBox,.contactBox { max-width:1000px; margin:0 auto; }
.telBox { margin-bottom:50px; padding:50px 0 30px; position: relative; border-bottom:1px solid #9d8f8b }
.telBox:after { content:""; position:absolute; bottom:-4px; right:0; width:8px; height:8px; border-radius:50%; background:#9d8f8b; }
.telBox .tel { font-weight: bold; font-size:31px; position: relative; margin: 5px 0; padding: 0 0 0 40px; }
.telBox .tel:before { content: ""; position: absolute; top: 0; left: 0; width: 26px; height: 50px; background-position: center 16px; background-repeat: no-repeat; background-size: contain;background-image: url(../img/about/ico_tel.png); }
	#contact-complete .telBox { border-bottom:none; max-width:100%; }
	#contact-complete .telBox:after { display:none; }

.contact_leadTxt { text-align:left; }
.contact_fieldbox { margin-bottom:10px; padding:20px 0; align-items:flex-start; border-bottom:1px dotted #9d8f8b; }
.contact_fieldbox.btm { border:none; padding:20px 0 0; }
.contact_btn_box { display:flex; justify-content:center; max-width:450px; }
.contact_btn_box .btn_blue { display:block; background:#7ac2c1; color:#fff; text-align:center; transition:0.3s; text-decoration:none; font-size:18px; padding:0 40px; width:auto; position:relative; height:40px; line-height:34px; margin:0 auto 5px; border-radius:30px; border:none; cursor:pointer; }
.contact_col { width:40%; }
.contact_col:first-of-type {/* text-align:right; padding-right:50px;*/ }
.contact_col:last-of-type { width:100%; }
.contactBox input[type=text], .contactBox input[type=email], .contactBox textarea, .contactBox select { width:100%; padding:10px; border:1px solid #9d8f8b; font-size:16px; }
.contactBox input[type=text], .contactBox input[type=email], .contactBox input[type=tel], .contactBox input[type=number], .contactBox textarea, .contactBox select { background:#fff; transition:0.3s; }
.mwform-checkbox-field input, .mwform-radio-field input { margin-right:0px; }
.contact_col label { font-size:18px; }

#contact-complete #contents .blue_btn { justify-content: center; }
::placeholder { font-size:14px; color:#999; }

#contact input[type="submit"][disabled] { background-color:#ccc; cursor:default; }
#contact input[type="submit"][disabled]:hover { box-shadow:0px 0px 0px rgba(86, 86, 86, 0); transform:translateY(0); }
#contact input:focus, #contact textarea:focus { }
#contact .underline { text-decoration:underline; }
#contact .underline:hover { text-decoration:none; }
.chkbox strong { font-weight:bold; margin-bottom:10px; display:block; }
#contact-confirm .chkbox { display:none; }

input[type=text] ,input[type=submit] ,input[type=email] , textarea , select { -webkit-border-radius : 0; -webkit-appearance : none; -webkit-tap-highlight-color : rgba(0,0,0,0); }

.selectBox { position:relative; }
.selectBox:after { content:""; position:absolute; top:45%; right:10px; border-top: 8px solid #54413d; border-left: 6px solid transparent; border-right: 6px solid transparent; }
#contact-confirm .selectBox:after { display:none; }


	@media screen and (max-width:767px) {
		.contactTitle span { display:block; padding:5px 0 0 0px; }
		.telBox { padding:0px 0 30px; }
		.contactBox .require { padding-top:10px; }
		.contact_leadTxt { text-align:left; }
		.contact_fieldbox { display:block; }
		.contact_col { width:100%; }
		.contact_col:last-of-type { width:100%; margin-top:10px; }
		.chkbox span { display:block; }
	}
	
	@media screen and (max-width: 600px) {
		.contactTitle_thanks { font-size:24px; }
		#contactBox { padding:200px 0 150px; }
		#contactBox h4:before { left:calc(50% - 100px); width:200px; height:auto; padding-top:35%; top:-120px; }
	}
	
	@media (hover: none) and (pointer: coarse) {
		.normal_btn a { line-height:40px; }
	}


/* ----------------------------------------------------
footer
---------------------------------------------------- */

#footer { padding:80px 0 50px 0; background:#fff; position:relative; }
.footer_inner { text-align:center; }
.footer_logo { position:absolute; top:-120px; left:calc(50% - 110px); width:220px; height:220px; }
.footer_logo a { position: relative; display:inline-block; width:100%; height:100%; border-radius:50%; background:#fff url(../img/common/img_logo2.png) no-repeat center center / 130px auto; text-indent:-9999px; }
address, .copyright {  font-size:13px; }
address { margin-top:20px; }

.pageTop { position: fixed; z-index: 90; bottom: 90px; right: calc(50% - 600px); cursor: pointer; width: 50px; height: 50px; display: flex;
text-align: center; align-items: center; justify-content: center;background: #78c4c2;  border-radius: 50%; transition:0.3s; }
.pageTop:before { position: absolute; top: 15px; left: 50%; margin-left: -15px; content: "";opacity: 0.5; width: 30px; height: 30px; background: url(../img/common/ico_pagetop.png) no-repeat top center / 65% auto; transform: translate(0px,0px); transition: 0.3s; }
.pageTop span { display: none; }
.pageTop:hover { background:#62b6b5; }

	@media screen and (min-width: 1366px) {
		.pageTop { right:3%; }
	}

	@media screen and (min-width: 769px) {
		.p-footer__inner { min-width:auto; }
    }
    
    @media screen and (max-width: 1280px) {
    	.pageTop { right:3%; }
    }
    
    @media screen and (max-width: 600px) {
    	.footer_logo { position:absolute; top:-80px; left: calc(50% - 75px); width: 150px; height: 150px; }
		.footer_logo a { background:#fff url(../img/common/img_logo2.png) no-repeat center center / 90px auto; }
		.pageTop { visibility:hidden; }
	}


/* ----------------------------------------------------
margin
---------------------------------------------------- */
.mt00 { margin-top:0px!important; }
.mt05 { margin-top:5px!important; }
.mt10 { margin-top:10px!important; }
.mt15 { margin-top:15px!important; }
.mt20 { margin-top:20px!important; }
.mt25 { margin-top:25px!important; }
.mt30 { margin-top:30px!important; }
.mt35 { margin-top:35px!important; }
.mt40 { margin-top:40px!important; }
.mt50 { margin-top:50px!important; }
.mt60 { margin-top:60px!important; }
.mt70 { margin-top:70px!important; }
.mt80 { margin-top:80px!important; }
.mr00 { margin-right:0px!important; }
.mr05 { margin-right:5px!important; }
.mr10 { margin-right:10px!important; }
.mr15 { margin-right:15px!important; }
.mr20 { margin-right:20px!important; }
.mr25 { margin-right:25px!important; }
.mr30 { margin-right:30px!important; }
.mr35 { margin-right:35px!important; }
.mr40 { margin-right:40px!important; }
.mr50 { margin-right:50px!important; }
.mr60 { margin-right:60px!important; }
.mr70 { margin-right:70px!important; }
.mr80 { margin-right:80px!important; }
.mb00 { margin-bottom:0px!important; }
.mb05 { margin-bottom:5px!important; }
.mb10 { margin-bottom:10px!important; }
.mb15 { margin-bottom:15px!important; }
.mb20 { margin-bottom:20px!important; }
.mb25 { margin-bottom:25px!important; }
.mb30 { margin-bottom:30px!important; }
.mb35 { margin-bottom:35px!important; }
.mb40 { margin-bottom:40px!important; }
.mb50 { margin-bottom:50px!important; }
.mb60 { margin-bottom:60px!important; }
.mb70 { margin-bottom:70px!important; }
.mb80 { margin-bottom:80px!important; }
.ml00 { margin-left:0px!important; }
.ml05 { margin-left:5px!important; }
.ml10 { margin-left:10px!important; }
.ml15 { margin-left:15px!important; }
.ml20 { margin-left:20px!important; }
.ml25 { margin-left:25px!important; }
.ml30 { margin-left:30px!important; }
.ml35 { margin-left:35px!important; }
.ml40 { margin-left:40px!important; }
.ml50 { margin-left:50px!important; }
.ml60 { margin-left:60px!important; }
.ml70 { margin-left:70px!important; }
.ml80 { margin-left:80px!important; }

/* ----------------------------------------------------
padding
---------------------------------------------------- */
.pt00 { padding-top:0px!important; }
.pt05 { padding-top:5px!important; }
.pt10 { padding-top:10px!important; }
.pt15 { padding-top:15px!important; }
.pt20 { padding-top:20px!important; }
.pt25 { padding-top:25px!important; }
.pt30 { padding-top:30px!important; }
.pt35 { padding-top:35px!important; }
.pt40 { padding-top:40px!important; }
.pt50 { padding-top:50px!important; }
.pt60 { padding-top:60px!important; }
.pt70 { padding-top:70px!important; }
.pt80 { padding-top:80px!important; }
.pr00 { padding-right:0px!important; }
.pr05 { padding-right:5px!important; }
.pr10 { padding-right:10px!important; }
.pr15 { padding-right:15px!important; }
.pr20 { padding-right:20px!important; }
.pr25 { padding-right:25px!important; }
.pr30 { padding-right:30px!important; }
.pr35 { padding-right:35px!important; }
.pr40 { padding-right:40px!important; }
.pr50 { padding-right:50px!important; }
.pr60 { padding-right:60px!important; }
.pr70 { padding-right:70px!important; }
.pr80 { padding-right:80px!important; }
.pb00 { padding-bottom:0px!important; }
.pb05 { padding-bottom:5px!important; }
.pb10 { padding-bottom:10px!important; }
.pb15 { padding-bottom:15px!important; }
.pb20 { padding-bottom:20px!important; }
.pb25 { padding-bottom:25px!important; }
.pb30 { padding-bottom:30px!important; }
.pb35 { padding-bottom:35px!important; }
.pb40 { padding-bottom:40px!important; }
.pb50 { padding-bottom:50px!important; }
.pb60 { padding-bottom:60px!important; }
.pb70 { padding-bottom:70px!important; }
.pb80 { padding-bottom:80px!important; }
.pl00 { padding-left:0px!important; }
.pl05 { padding-left:5px!important; }
.pl10 { padding-left:10px!important; }
.pl15 { padding-left:15px!important; }
.pl20 { padding-left:20px!important; }
.pl25 { padding-left:25px!important; }
.pl30 { padding-left:30px!important; }
.pl35 { padding-left:35px!important; }
.pl40 { padding-left:40px!important; }
.pl50 { padding-left:50px!important; }
.pl60 { padding-left:60px!important; }
.pl70 { padding-left:70px!important; }
.pl80 { padding-left:80px!important; }
