@charset "utf-8";

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;
}

body  {
    font-size: 1.8rem;
    line-height: 1.6;
    color:#333;
    font-family: "source-han-sans-japanese", sans-serif;
    font-weight: 400;
    font-style: normal;
}

/*-----------------------------------------------
共通
-----------------------------------------------*/

/*レイアウト*/
.container{
    max-width: 850px;
    margin: auto;
}

.wrap{
    max-width: 800px;
    margin: 0 auto;
}

/*ボタン：ホバー*/
a.rollover:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

/*PC表示・SP非表示*/
body .pc-item {
    display: block; 
}

body .sp-item {
    display: none; 
}

/*PC改行なし*/
.br-sp {
    display: none; 
}

/*PC改行*/
.br-pc {
    display: block; 
}

/*-----------------------------------------------
ここからコンテンツ
-----------------------------------------------*/

/*FV*/
.target-bg{
    background-color: #009DE7;
    padding: 2rem 0;
    text-align: center;
}

.target-copy{
    font-size: 3rem;
    font-weight: bold;
    color: #fff;
}

.fv-bg{
    background: url(../images/fv-bg.jpg);
    background-size:  cover;
    background-repeat: no-repeat;
    padding: 6rem 0;
}

.fv-img{
    max-width: 1000px;
    margin: auto;
}

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

/*CTA*/
.cta-bg{
    background-color: #009DE7;
    padding: 8rem 0;
}

.cta-box{
    background-color: #fff;
    border-radius: 0px 0px 10px 10px;
    padding: 2rem;
}

.cta-title{
    max-width: 850px;
    margin: auto;
}

.cta-title img{
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

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

.warning{
    font-size: 1.6rem;
}

.from{
    padding: 4rem 0;
}

.email-txt{
    font-size: 3rem;
    font-weight: 800;
    text-align: center;
}

.required{
    background-color: #009DE7;
    border-radius: 1rem;
    font-size: 2rem;
    font-weight: 800;
    color: #fff;
    padding: 0.2rem 1rem;
}

.email-box{
    padding-top: 1rem;
    padding-bottom: 2rem;
}

.email-item{
    width: 100%;
    background-color: #EFEFEF;
    border-radius: 10px;
    padding: 4rem 2rem;
}

.age-txt{
    font-size: 3rem;
    font-weight: 800;
    text-align: center;
}

.age-box{
    padding-top: 1rem;
    padding-bottom: 2rem;
}

.age-item{
    width: 100%;
    background-color: #EFEFEF;
    border-radius: 10px;
    padding: 4rem 2rem;
}

::placeholder {
    font-size: 2.8rem;
    text-align: center;
}

.submit-btn{
    width: 100%;
    height: auto;
}

/*お客様の声01*/
.voice-bg01{
    background-color: #F4F1E0;
}

.voice-cotent01{
    background-color: #fff;
    padding: 6rem 0;
}

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

.voice-joint{
    padding: 4rem 0;
}

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

.voice-box01{
    border: 4px solid #CA512F;
    padding: 2rem;
    margin-bottom: 6rem;
}

.voice-box01:last-child{
    margin-bottom: 0rem;
}

.voice-box01__h3{
    background-color: #CA512F;
    padding: 2rem 3rem;
}

.voice-box01__h3 h3{
    color: #fff;
    font-weight: 800;
    font-size: 2.4rem;
    line-height: 1.2;
}

.text-line-left{
	display: flex;
	align-items: center;
    padding-bottom: 2rem;
}

.text-line-left:before {
	content: "";
	flex-grow: 1;
	height: 1px;
	display: block;

}

.text-line-left:before {
	margin-left: 20rem;
    margin-right: 1rem;
	background: #333333;
}

.name{
    font-size: 2rem;
    font-weight: 800;
}

.voice-img{
    max-width: 750px;
    margin: auto;
    padding-bottom: 2rem;
}

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

/*悩み*/
.nayami-bg{
    background: url(../images/nayami-bg.jpg);
    background-size:  cover;
    background-repeat: no-repeat;
    padding: 6rem 0;
}

.nayami-title{
    max-width: 468px;
    margin: auto;
    padding-bottom: 4rem;
}

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

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

/*原因*/
.cause-title{
    background-color: #E73366;
    padding:4rem 0;
    text-align: center;
    color: #fff;
    font-size: 4.2rem;
    font-weight: 800;
    line-height: 1.2;
}

.small-txt{
    font-size: 3rem;
}

.yellow-txt{
    color: #FFFF00;
}

.cause-bg{
    padding: 6rem 0;
}

.cause-box{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6rem 0;
}

.cause-item01{
    width: 240px;
}

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

.cause-item02{
    width: 580px;
}

.cause-title__h3{
    font-size: 3.8rem;
    color: #E73366;
}

.cause-title__h3 span img{
    vertical-align: middle;
    margin-right: 0.5rem;
}

/*解決策*/
.solution-title{
    background-color: #4EBBB3;
    padding:4rem 0;
    text-align: center;
    color: #fff;
    font-size: 4.2rem;
    font-weight: 800;
    line-height: 1.2;
}

.solution-bg{
    padding: 6rem 0;
}

.solution-img01{
    padding-bottom: 4rem;
}

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

.solution-img02{
    padding-bottom: 4rem;
}

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

.solution-img03{
    padding: 4rem 0;
}

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

.solution-img04{
    padding-bottom: 4rem;
    margin: auto;
}

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

.solution-txt{
    padding-top: 4rem;
}

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

/*改善に必要な3ステップ*/
.step-bg{
    background-color: #EBF4F7;
    padding: 6rem 0;
}

.step-title{
    max-width: 585px;
    margin: auto;
}

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

.step-img{
    padding: 4rem 0;
}

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

.step-box{
    display: flex;
    justify-content: space-between;
    background-color: #fff;
    border-radius: 10px;
    padding: 2rem;
    margin-bottom: 4rem;
}

.step-box:last-child{
    margin-bottom: 0rem;
}

.step-title__box{
    display: flex;
    align-items: center;
    margin-bottom: 2rem;
}

.step-item01{
    max-width: 560px;
}

.step-title__h3{
    font-size: 3rem;
    font-weight: 800;
    color: #2A68AE;
}

.step-img__h3{
    margin-right: 1rem;
}

.step-item02{
    max-width: 220px;
}

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

/*お客さまの声02*/
.voice-bg02{
    background-color: #EBF4F7;
}

.voice-box02{
    background-color: #fff;
}

.voice-title02{
    padding-top: 6rem;
    padding-bottom: 4rem;
}

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

.voice-video {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin-top: 6rem;
}

.voice-video iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.voice-title02__h3{
    font-size: 3.2rem;
    font-weight: 800;
    color: #E83366;
    line-height: 1.2;
    padding: 3rem 0 2rem 0;
}

.voice02-photo{
    padding: 6rem 0;
}

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

/*オファー＋特典紹介*/
.ofer-title01 img{
    width: 100vw;
    height: auto;
}

.ofer-img01{
    max-width: 1320px;
    margin: auto;
    padding: 6rem 0;
}

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

.tokuten-hukidashi{
    max-width: 375px;
    margin: auto;
    padding-bottom: 4rem;
}

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

.tokuten-title{
    max-width: 980px;
    margin: auto;
}

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

.tokuten-box{
    max-width: 800px;
    margin: 6rem auto;
    background-color: #fff;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
    padding: 2rem;
}

.tokuten-line{
    border: 10px solid #E6C993;
    padding: 2rem;
}

.tokuten-img{
    max-width: 700px;
    padding: 3rem 0;
    border-bottom: 2px solid #E6C993;
}

.tokuten-img:last-child{
    border-bottom: 0px solid #E6C993;
}

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

.ofer-tunagi{
    padding-bottom: 6rem;
}

.ofer-tunagi img{
    width: 100vw;
    height: auto;
}

/*オファー紹介*/
.ofer-title02{
    background-color: #009DE7;
    padding:4rem 0;
    text-align: center;
    color: #fff;
    font-size: 4.2rem;
    font-weight: 800;
    line-height: 1.2;
}

.ofer-bg{
    background-color: #EBF4F7;
}

.ofer-contets{
    background-color: #fff;
    padding: 6rem 0;
}

.ofer-box{
    width: 800px;
    margin: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 6rem;
}

.ofer-item01{
    max-width: 430px;
}

.day{
    background-color: #2A68AD;
    border-radius: 10px;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 800;
    padding: 0.3rem 1rem;
}

.ofer-item01 h3{
    color: #2A68AD;
    font-size: 3.2rem;
    font-weight: 800;
    line-height: 1.2;
    padding-top: 0.5rem;
    padding-bottom: 2rem;
}

.ofer-item02{
    max-width: 330px;
}

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

.ofer-day04-08{
    max-width: 800px;
    margin: auto;
}

.ofer-day04-08 img{
    width: 100%;
    height: auto;
}

/*おすすめ*/
.osusume-title {
    position: relative;
    background: #E73366;
    padding: 3rem 0;
    color: #fff;
    text-align: center;
    font-size: 4.2rem;
}

.osusume-title:after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -60px;
    left: 0;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #E73366 transparent transparent transparent;
    border-width: 60px 60px 0 60px;
}

.osusume-bg{
    background-color: #FAE8E2;
    padding: 10rem 0 6rem 0;
}

.osusume-box{
    background-color: #fff;
    padding: 4rem 0;
}

.osusume-list{
    max-width: 780px;
    margin: auto;
}

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

/*講師プロフィール*/
.profile-title{
    background-color: #4EBBB3;
    padding:4rem 0;
    text-align: center;
    color: #fff;
    font-size: 4.2rem;
    font-weight: 800;
    line-height: 1.2;
}

.profile-bg{
    padding: 6rem 0;
}

.profile-wrap{
    border: 10px solid #EBE5DC;
    padding: 4rem 2rem;
}

.profile-box{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 4rem;
    border-bottom: 5px solid #EBE5DC;
}

.profile-item01{
    max-width: 322px;
}

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

.profile-item02{
    max-width: 465px;
    line-height: 1.3;
}

.profile-item02 .method{
    font-size: 2.8rem;
    font-weight: 800;
    color: #4EBBB3;
}

.profile-item02 .katagaki{
    font-size: 3.8rem;
    font-weight: 800;
}

.profile-item02 h3{
    font-size: 5.7rem;
    font-weight: 800;
}

.profile-item02 .alphabet{
    font-size: 3.6rem;
    font-family: "futura-pt-bold", sans-serif;
    font-weight: 400;
    font-style: italic;
}

.profile-txt{
    padding-top: 4rem;
}

.sikaku-list{
    padding-top: 6rem;
}

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

/*追伸*/
.tuishin-title{
    background-color: #009DE7;
    padding:4rem 0;
    text-align: center;
    color: #fff;
    font-size: 4.2rem;
    font-weight: 800;
    line-height: 1.2;
}

.tuishin-bg{
    background-color: #EBF4F7;
}

.tuishin-contents{
    background-color: #fff;
    padding: 8rem 2rem;
}

.keiko {
    font-size: 2rem;
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ff6 60%);
}

.tuishin-img{
    padding-top: 4rem;
}

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

/*フッター*/
footer{
    background-color: #009DE7;
    padding: 30px 0;
    color: #fff;
    text-align: center;
}

.footer_link {
    font-size: 17px;
    padding: 10px 0;
}

.footer_link a {
    color: #fff;
    text-decoration: none;
}

.copy {
    font-size: 15px;
}

/*-----------------------------------------------
タブレット
-----------------------------------------------*/

@media screen and (max-width: 1024px) {

}