@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
body{
	font-family:
		"Noto Sans JP",
		"Helvetica Neue",
	 	Arial,
		"Hiragino Kaku Gothic ProN",
		"Hiragino Sans",
		Meiryo,
		sans-serif;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: 16px;
	min-height: calc(100vh - 20px);
	position: relative;
	box-sizing: border-box;
	background-color:#FFF;
	color:#000;
}
img.ofit{
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
h1,h2,h3,h4{
	padding:0;
	margin:0;
	font-size:1em;
	font-weight: 400;
}
.bg-bk{
	background-color:#000;
}
.content{}
.content-in{
	width:392px;
	height: calc(100vh - 40px);
	margin:0 auto;
	margin-top:20px;
	margin-bottom:20px;
	background-color:#DDD;
	overflow-y:scroll;
	scrollbar-width: thin;
	position:relative;
}
.content-in-in{
	position:relative;
	width:345px;
	margin:0 auto;
	max-width:100%;
}
.top{}
.top-logo{
	padding-top:12px;
	padding-bottom:15px;
}
.top-flex{
	display:flex;
	padding-bottom:12px;
}
.top-flex-text{
	width:70%;
	position:relative;
	top:-5px;
}
.top-flex-text-mini{
	color:#FFF;
	font-weight:700;
	font-size:15px;
	line-height:19px;
	padding-bottom:1px;
}
.top-flex-mark{
	width:30%;
	text-align:right;
}
.top-flex-mark{
	display:inline-block;
}
.top-flex-text-title{}
.top-flex-text-title h1{
	color:#BBA15C;
	font-weight:900;
	font-size:24px;
	line-height: 28px;
	padding-top: 8px;
}
.top-main-ph{
	position:relative;
}
.top-main-ph img{
	width:100%;
	height:auto;
}
.top-main-ph-catch {
	position:relative;
	top: -70px;
	margin-bottom: -70px;
	left:-17px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  display: inline;
  padding: 0px 11px 2px;
  font-size: 30px;
  font-weight: 900;
  line-height: 53px;
}
.top-camp-img{
	position:relative;
	top:-60px;
}
.top-camp-img img{
	width:100%;
}
.cta{
	background-color:#BBA15C;
	padding-top:20px;
	padding-bottom:25px;
}
.cta-catch{
	text-align:center;
	font-weight:900;
	font-size:14px;
}
.cta-catch-button a {
    font-size: 16px;
    font-weight: 700;
    display: inline-block;
    line-height: 1;
    background-color: #000;
    padding: 15px;
    text-decoration: none;
    transition: all 0.2s ease 0s;
    margin: 2px 0px -2px;
    border-radius: 5px;
    position: relative;
    width:100%;
    text-align:center;
}
.cta-catch-button a:hover {
    margin: 0 0 0 0;
}
.cta-catch-button a:active {
    margin: 7px 0 -7px 0;
}
.cta-button-2{
	padding-top:19px;
	text-align:center;
}
.cta-button-2 a{
	text-decoration:none;
	color:#BBA15C;
	font-weight:700;
	font-size:14px;
	line-height:1em;
	border-radius:2px;
	text-align:center;
	width:172px;
	padding:9px;
	background-color:#FFF;
	display:inline-block;
	transition:0.2s;
	border:2px solid #FFF;
}
.cta-button-2 a:hover{
	color:#FFF;
	background-color:#BBA15C;
}
.s03-01{
	background-color:#FFF;
	padding-top:30px;
	padding-bottom:35px;
}
.s03-02{
	background-color:#F0EFF0;
	padding:30px 0px;
}
.concept{
	background-color:#000;
}
.concept-foot{
	background-color:#000;
}
.concept-foot img{
	width:100%;
}
.target{}
.target-text-1{
	font-size:19px;
	font-weight:900;
}
.target-text-2{
	font-size:31px;
	font-weight:900;
	line-height:40px;
	color:#BBA15C;
	padding-bottom:15px;
}
.target-flex-1{
	display:flex;
}
.target-flex-2{
	display:flex;
}
.target-flex-icon{
	width:22%;
	position:relative;
}
.target-flex-icon span {
    position: absolute;
    top: 20px;
    left: 15px;
    font-size: 32px;
}
.target-flex-icon-fukidashi{
	padding-top:5px;
}
.target-flex-icon-fukidashi img{}
.target-flex-icon-fukidashi2{
	padding-top:5px;
	padding-left:8px;
}
.target-flex-icon-fukidashi2 img{}
.target-flex-list{
	width:78%;
}
.target-flex-list{
	font-size:15px;
	font-weight:700;
	line-height:24px;
	color:#BBA15C;
	position:relative;
}
.dakedo:after{
	content:"だけど…";
	position:absolute;
	bottom:-45px;
	color:#000;
	font-size:22px;
	font-weight:900;
	left:0;
}
.f-bk{
	color:#000;
}
.fukidashi {
  position: absolute;
  top: -29px;
  right: 4px;
  display: inline-block;
  margin: 1.5em 0;
  padding: 9px 10px;
  min-width: 175px;
  max-width: 100%;
  color: #000;
  font-size: 17px;
  border-radius: 5px;
  font-weight:900;
  text-align:center;
  transform: rotate(8deg);

}

.fukidashi:before {
  content: "";
  position: absolute;
  top: 90%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;

}
.concept-text01{
	padding-top:50px;
	font-size:20px;
	color:#FFF;
	font-weight:900;
	padding-bottom:15px;
}
.concept-text02{
	font-size:32px;
	font-weight:900;
	line-height:40px;
	color:#BBA15C;
	padding-bottom:15px;
}
.concept-text03{
	font-size:13px;
	font-weight:700;
	line-height:28px;
	color:#FFF;
}
.point {
	background-color:#FFF;
	padding-top:50px;
	padding-bottom:40px;
}
.point-headline-01{
	font-size:20px;
	font-weight:900;
	line-height:28px;
}
.point-headline-02{
	line-height: 1em;
	position: relative;
	padding-left: 43px;
	padding-bottom: 40px;
	padding-top: 20px;
	font-size: 32px;
	font-weight: 900;
	color:#BBA15C;
}
.point-headline-02 span{
	position:absolute;
	color:#BBA15C;
	top:20px;
	left:0;
	font-family: "Open Sans", sans-serif;
	  font-optical-sizing: auto;
	  font-weight: 800;
	  font-style: normal;
	  font-variation-settings:
	    "wdth" 100;
	  font-size:69px;
}
.point-left-ph{
	width:350px;
	margin-left: 0;
	margin-right: auto;
}
.point-left-ph img{
	width:100%;
}
.point-right-ph{
	width:350px;
	margin-left: auto;
	margin-right: 0;
}
.point-right-ph img{
	width:100%;
}
.point-left-box-num{
	position:relative;
	color:#BBA15C;
	top: -50px;
	margin-bottom:-50px;
	left: 8px;
	font-family: "Open Sans", sans-serif;
	  font-optical-sizing: auto;
	  font-weight: 800;
	  font-style: normal;
	  font-variation-settings:
	    "wdth" 100;
	  font-size:69px;
	  line-height:1em;
}
.point-left-box-headline{
	font-size:20px;
	font-weight:900;
	line-height:28px;
	padding-left:12px;
}
.point-left-box-text{
	padding-left:12px;
	padding-right:14px;
	font-size:14px;
	line-height:22px;
	padding-top:4px;
	padding-bottom:35px;
}
.point-right-box{
	position:relative;
}
.point-right-box-num{
	position:absolute;
	top:-48px;
	right:14px;
	font-family: "Open Sans", sans-serif;
	  font-optical-sizing: auto;
	  font-weight: 800;
	  font-style: normal;
	  font-variation-settings:
	    "wdth" 100;
	  font-size:69px;
	  line-height:1em;
	  color:#BBA15C;
}
.point-right-box-headline{
	font-size:20px;
	font-weight:900;
	line-height:28px;
	padding-left:12px;
	padding-right:14px;
	padding-top:15px;
}
.point-right-box-text{
	padding-left:12px;
	padding-right:14px;
	font-size:14px;
	line-height:22px;
	padding-top:5px;
	padding-bottom:35px;
}
.point-right-box-text span{
	display:block;
	font-size:10px;
	line-height:15px;
    padding-top:5px;
}
.price{
	background-color:#FFF;
	padding:30px 0px;
}
.price-box-headline{
	font-size:32px;
	font-weight:900;
	color:#BBA15C;
	line-height:40px;
	padding-bottom:23px;
}
.price-box-headline-2{
	font-size:18px;
	line-height:28px;
	font-weight:900;
	color:#BBA15C;
	padding-top:20px;
}
.price-box-text{
	font-size:12px;
	font-weight:700;
	line-height:20px;
	padding-top:5px;
	padding-bottom:18px;
}
.price-box-trainer{
	display:flex;
	gap:10px;
}
.price-box-trainer img{
	width:calc(100%/3 - 7px);
}
.tokuten{
	background-color:#000;
	padding-top:50px;
	padding-bottom:35px;
	padding-right:18px;
}
.tokuten img{
	width:100%;
	height:auto;
}
.voice{
	background-color:#000;
	padding-top:40px;
	padding-bottom:50px;
}
.voice-catch{
	color:#FFF;
	font-weight:900;
	font-size:20px;
	line-height:28px;
	padding-bottom:5px;
}
.voice-headline{
	color:#BBA15C;
	font-size:32px;
	line-height:40px;
	font-weight:900;
	padding-bottom:30px;
}
.voice-box-item{
	margin:0 10px;
	background-color:#FFF;
	border-radius:7px;
	padding:25px 20px;
	min-height:210px;
}
.voice-name{
	font-weight:900;
	font-size:19px;
	line-height:24px;
}
.voice-star{
	font-weight:900;
	font-size:19px;
	line-height:24px;
	color:#BBA15C;
	padding-bottom:10px;
}
.voice-text{
	font-size:12px;
	line-height:20px;
}
.flow{
	background-color:#FFF;
	padding-top:50px;
	padding-bottom:47px;
}
.flow-catch{
	color:#000;
	font-weight:900;
	font-size:20px;
	line-height:28px;
	padding-bottom:5px;
}
.flow-headline{
	color:#BBA15C;
	font-size:32px;
	line-height:40px;
	font-weight:900;
	padding-bottom:30px;
}
.qa{
	padding-top:50px;
	padding-bottom:40px;
	background-color:#F0EFF0;
}
.qa-catch{
	color:#000;
	font-weight:900;
	font-size:20px;
	line-height:28px;
	padding-bottom:5px;
}
.qa-headline{
	color:#BBA15C;
	font-size:32px;
	line-height:40px;
	font-weight:900;
	padding-bottom:30px;
}
.gmap iframe{
	width:100%;
	height:345px;
}
.footer{
	padding:40px 0px;
	background-color:#000;
}
.footer-logo{
	padding-bottom:15px;
}
.footer-logo img{}
.footer-address{
	color:#FFF;
	font-weight:700;
	font-size:15px;
}
.footer-tel{}
.footer-tel a{
	text-decoration:none;
	color:#FFF;
	font-family: "Open Sans", sans-serif;
	  font-optical-sizing: auto;
	  font-weight: 700;
	  font-style: normal;
	  font-variation-settings:
	    "wdth" 100;
	  font-size:43px;
	  line-height:1em;
}
.footer-openclose{
	font-size:9px;
	line-height:22px;
	color:#FFF;
	padding-bottom:5px;
}
.footer-button{
	padding-top:5px;
}
.footer-button a {
    font-size: 16px;
    font-weight: 700;
    display: inline-block;
    line-height: 1;
    background-color: #000;
    padding: 15px;
    text-decoration: none;
    transition: all 0.2s ease 0s;
    margin: 2px 0px -2px;
    border-radius: 5px;
    position: relative;
    width:100%;
    text-align:center;
    color:#BBA15C;
    border:2px solid #BBA15C;
    box-shadow:#806D3D 0px 5px 0px;
}
.footer-button a:hover {
    margin: 0 0 0 0;
    box-shadow: 0 7px 0 #806D3D;
}
.footer-button a:active {
    margin: 7px 0 -7px 0;
    box-shadow: 0 0 0 #806D3D;
}
.copyright{
	background-color:#FFF;
	padding:5px;
	font-family: "Open Sans", sans-serif;
	  font-optical-sizing: auto;
	  font-weight: 700;
	  font-style: normal;
	  font-variation-settings:
	    "wdth" 100;
	  font-size:9px;
	  line-height:1em;
}
.accordion-item{
	background-color:#FFF;
	border-radius:7px;
	padding:13px;
	margin-bottom:10px;
}
.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-out;
  font-size:12px;
  line-height:20px;
  padding-left:12px;
}
.qa-a{
	padding-top:10px;
	padding-right:24px;
}
.accordion-label {
  cursor: pointer;
  display:block;
  position:relative;
  font-size:14px;
  font-weight:700;
  line-height:20px;
  padding-right:40px;
}
.accordion-label span{
	position:absolute;
	top:-1px;
	right:0px;
}
.toggle-icon{
	color:#BBA15C;
	font-size:20px;
	font-weight:900;
}
.cp-term{
	font-size:15px;
	font-weight:700;
	color:#BBA15C;
	text-align:center;
	padding-bottom:4px;
}
.cp-term-box{
	border:2px solid #BBA15C;
	padding:5px 15px;
	border-radius:7px;
	margin-top:5px;
}
.cp-term-box-item{
	padding-bottom:15px;
	transition:0.2s;
}
.cp-term-box-item:nth-child(n+2) {
	padding-top:25px;
  border-top: 2px solid #BBA15C;
  padding-bottom:25px;
}
.cp-term-box-item a{
	display:block;
	text-align:center;
	width:140px;
	padding:8px;
	margin:0 auto;
	position:relative;
	border:1.5px solid #BBA15C;
	text-decoration:none;
	color:#BBA15C;
	font-size:13px;
	transition: 0.2s;
	margin-top:20px;
	margin-bottom:10px;
}
.cp-term-box-item a:hover{}
.cp-term-box-item a:after{
	position:relative;
	content:"→";
	transition: 0.2s;
	left:0;
}
.cp-term-box-item a:hover:after{
	left:5px;
    transition: 0.2s;
}
.foot-cp-text{
	top:0;
	margin-bottom:30px;
}
.tokuten-2{
	background-color:#000;
	padding-top:50px;
	padding-bottom:35px;
}
.tokuten-2 img{
	width:100%;
	height:auto;
}
.fpd{
	padding-top:30px;
}


/* ================================================== */
@media screen and (max-width: 1100px) {

}
/* ================================================== */
@media screen and (max-width: 1024px) {

}
/* ================================================== */
@media screen and (max-width: 768px) {

}
/* ================================================== */
@media screen and (max-width: 480px) {
	.content-in{
		width:100%;
		height:100vh;
		margin:0;
	}
	.content-in-in{
		width:345px;
		margin:0 auto;
		max-width:100%;
	}
}
/* ================================================== */
@media screen and (max-width: 375px) {

}
@media screen and (max-width: 345px) {
	.content-in-in{
		width:100%;
		margin:0 auto;
		max-width:100%;
		padding:0px 10px;
	}
}