@charset "UTF-8";
/* CSS Document */

body{font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; color: #333; font-size: 18px;}

.inner{ width: 100vw; max-width: 1160px; padding: 0 30px; margin: 0 auto;}
section + section{ padding-top: 75px;}
.noto{font-family: 'Noto Sans JP',sans-serif;}
.pop{ font-family: 'Poppins', sans-serif;}

.sp-br{ display: inherit; text-align: center;}

.pc-br{ display: none;}

a[href^="tel:"] {pointer-events: none;}

/*animetion*/
.slide-up-out {
  opacity: 0;
  -webkit-transform: translate(0, 20px);
          transform: translate(0, 20px);
  -webkit-transition: opacity .2s ease-in-out, -webkit-transform .2s ease-in-out;
  transition: opacity .2s ease-in-out, -webkit-transform .2s ease-in-out;
  transition: opacity .2s ease-in-out, transform .2s ease-in-out;
  transition: opacity .2s ease-in-out, transform .2s ease-in-out, -webkit-transform .2s ease-in-out;
}

.slide-up-in {
  opacity: 1.0;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.anime-delay-1 {
  -webkit-transition-delay: 0s;
}

.anime-delay-2 {
  -webkit-transition-delay: .3s;
          transition-delay: .3s;
}

.anime-delay-3 {
  -webkit-transition-delay: .4s;
          transition-delay: .4s;
}


h2{ font-weight: 800;}
h2.line_ttl{ color: #e6608c; text-align: center; background: url("../img/line.png") no-repeat top center/auto,url("../img/line.png") no-repeat bottom center/auto; padding: .88em; font-size: 30px;}

/*key*/
.main_key{background: #f7f7f7;}
.key_wp{ width: 100vw; max-width: 1400px; padding: 45px 50px 135px; margin: 0 auto;
  background: url("../img/key_visual.png") no-repeat 130% bottom/75%;}

.main_key .inner{ display: flex; flex-direction: column; align-items: baseline; margin: 40px 0; max-width: 70%;}
.keyin_01{ background: #fff; padding: 50px 40px;}
.keyin_01 p.ttl{ font-size: 2.44em; font-weight: 900; color: #e6608c; margin-bottom: 1em;}
.keyin_01 ul{ font-size: 1.24em;}
.keyin_01 ul li{ background: url("../img/check.svg") no-repeat left center/1em;}
.keyin_01 ul li p{ padding-left: 1.24em;}
.keyin_01 ul li + li{ margin-top: 1em;}
.keyin_02{ font-size: 2.44em; font-weight: 500; line-height: 1.4; margin-top: 20px;}

/*sec-06_block*/
.sec-06{background: #f5e9ec;}

.sec-06_wp{ width: 100vw; max-width: 1400px; padding: 12.1vw 50px 8.4vw; margin: 0 auto;
  background: url("../img/sec06_key_vis.png") no-repeat 99.5% bottom/54%;}

@media screen and (max-width: 769px) {
.sec-06_wp{ width: 100vw; padding: 10vw 5vw 10vw; background-size: 50%; margin: 0 auto;
  background: url("../img/sec06_key_vis.png") no-repeat 127% bottom/74%;}
}

.sec-06 .inner{ display: flex; flex-direction: column; align-items: baseline; margin: 40px 0; max-width: 70%;}
.keyin_01{ background: #fff; padding: 50px 40px;}
.keyin_01 p.ttl{ font-size: 2.44em; font-weight: 900; color: #e6608c; margin-bottom: 1em;}
.keyin_01 ul{ font-size: 1.24em;}
.keyin_01 ul li{ background: url("../img/check.svg") no-repeat left center/1em;}
.keyin_01 ul li p{ padding-left: 1.24em;}
.keyin_01 ul li + li{ margin-top: 1em;}
.keyin_02{ font-size: 2.44em; font-weight: 500; line-height: 1.4; margin-top: 20px;}

.keyin_02 span.svg_edge_text {
  display: inline-block;
}
.keyin_02 span svg {
  width: 100%;
  height: 10px;
  overflow: visible;
}
.svg_edge_text text {
  stroke: #f7f7f7;
  fill: #333;
}
.svg_edge_text > svg > use:nth-of-type(1) {
  stroke-width: 10px;
  paint-order: stroke;
  stroke-linejoin: round ;
}
.svg_edge_text > svg > use:nth-of-type(2) {
  stroke-width: 0;
}

/*cv*/
.sec-cv_block{ background:repeating-linear-gradient(-45deg, #3ea98f 0, #3ea98f 10px, #1c9a7b 10px, #1c9a7b 20px); display: flex; justify-content: center; padding-bottom: 20px;}
.sec-cv_box{ background: #fff; padding: 35px 45px; display: flex; justify-content: center; align-items: center; border: 5px solid #e3e5e5; margin-top: -4%;}
.sec-cv_cat p.cmnt{ font-size: 1.24em; font-weight: bold;}

.cv-tel { margin-bottom: 1em;}
.num_block{ display: flex; font-size: 4em; font-weight: bold; letter-spacing: .045em; padding: .25em 0 0;}
.num_block span + a{ padding-left: .25em; display: block;}
.num_block  span.icn{ width: 1.24em;}
.cv-tel p.time{ text-align: right; font-weight: bold;}

.mail_block{ background: #53b635/*f3b611*/;}
.mail_block a{ color: #fff; display: flex; justify-content: center; align-items: center; font-size: 1.24em; font-weight: bold; padding: .5em 0;}
.mail_block span{ width: 1.66em; margin-right: .88em;}


/*このサイトで解答・解決できること*/
.sec-02-block{ padding-top: 75px;}
.sec-02-box{ display: flex; align-items: center;}
.sec-02-box p.img{ margin-top: -60px; margin-left: -60px; width: 35%;}
.sec-02-box p.img img { vertical-align: bottom;}
.sec-02-box p.cmnt{line-height: 1.6; width: 65%; text-align: justify;}


/*相談事例*/
.sec-03_block{ background: #e9f2f6; padding-top: 100px;}
.sec-03_block .inner{padding-bottom: 75px;}

h3.review{ display: flex; justify-content: center;}
h3.review p{color: #248cc8; font-weight: 800; padding: 0 1em; font-size: 40px; display: flex; align-items: center;}

h3.review p::after{ content:''; width: 3px; height: 1.44em; display: block; background: #248cc8; transform: rotate(45deg); position: absolute; right: 0; top: 0; }
h3.review p::before{ content:'';width: 3px; height: 1.44em; display: block; background: #248cc8; transform: rotate(-45deg); position: absolute; left: 0; top: 0;}

.sec-03-box{ display: flex; flex-wrap: wrap; justify-content: center; margin-top: 80px; margin-bottom: 20px;}
.sec-03-box > div{     width: 30%;
    margin-bottom: 50px; border-radius: 10px; border: 1px solid #E1879E; background: #fff; position: relative; margin-left: 18px; margin-right: 18px; min-height: 6.5em;}

.sec-03-box > div::before,.sec-03-box > div::after{ content: ''; position: absolute; border: 15px solid transparent; left: 50%; margin-left: -15px;}
.sec-03-box > div::before{ border-top-color: #E1879E; bottom: -30px;}
.sec-03-box > div::after{ border-top-color: #FFFFFF; bottom: -29px;}


.sec-03-box > div .intxt { line-height: 1.6; font-size: .92em; text-align: justify; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 90%;}
.sec-03-box > div .intxt span {font-weight: bold; color: #E6608C;}
.sec-03_block p.btm-txt{ text-align: center; font-weight: bold;}

/*体験談*/
.sec-04_block{ padding-top: 75px; margin-bottom: 75px;}
h2.bdr_ttl{ display: flex; justify-content: center;}
h2.bdr_ttl p{ border: 2px solid #e9e9e9; text-align: center;padding: .5em;}
h2.bdr_ttl p { font-size: 50px;}
h2.bdr_ttl p span:nth-child(1){ display: block; font-size: 32px; margin-bottom: .15em;}
h2.bdr_ttl p span:nth-child(2){ display: inline-block; color: #9259d2; font-size: 1.14em; font-weight: 900;}
h2.bdr_ttl p span:nth-child(2) span{ display: inline-block; font-size: 1.14em; margin-bottom: 0;}

/*sec06*/
.sec06_pc_title{
	bottom: 3.9vw;
	margin: 0 auto;
	position: relative;
	text-align: center;
	width: 74%;
}
.sec06_pc_text_a{
	bottom: 2.4vw;
	left: 5.5vw;
	margin: 0 auto;
	position: relative;
	text-align: center;
	width: 100%;
  filter: drop-shadow(0px 2px 4px rgba(160, 160, 160, 0.6));
}


@media screen and (max-width: 769px) {
.sec06_pc_text_a{
	margin: 0 auto;
	text-align: center;
	width: 100%;
}
}

@media screen and (max-width: 769px) {
.sec06_sp_text_a{
	margin: 0 auto;
	position: relative;
	right: 3%;
	text-align: center;
	width: 75%;
}
}

.in_head{ display: flex; align-items: center; width: 58%; margin: 60px auto;}
.in_head .prof_box{ width: 100%; background: url("../img/line.png") no-repeat center top/100%, url("../img/line.png") no-repeat center bottom/100%;display: flex; justify-content: flex-end;}
.in_head .prof_box p{ padding: 1.44em 0;font-size: 30px; line-height: 1.6;}
.in_head p.thum { position: absolute; width: 40%; z-index: 1;}
.in_head p.thum img{ width: 100%;}

.sec-04_block .in_cmnt{ width: 88%; margin: 0 auto;}
.sec-04_block .in_cmnt p{ line-height: 1.6;}
.sec-04_block .in_cmnt p span{ background: linear-gradient(0deg, #ffed69 50%, transparent 50%); font-weight: bold;}


/*担当者紹介*/
.sec-05_block{background:repeating-linear-gradient(-45deg, #bbe2e8 0, #bbe2e8 10px, #c5e6eb 10px, #c5e6eb 20px); padding-bottom: 75px;}
h3.w_ttl{ display: flex; justify-content: center; margin-bottom: 50px;}
h3.w_ttl p{ background: #fff; border-radius: 34px; font-size: 30px; font-weight: 700; padding: .5em 1.44em;}

.sec-05_box{ display: flex; align-items: center; border-bottom: 1px solid #6a9ea6; border-top: 1px solid #6a9ea6; padding: 50px 0; width: 80%; margin: 0 auto;}
.sec-05_box .thum{ width: 35%;}
.sec-05_box .intxt{ width: 65%; padding-left: 5%; line-height: 1.4;}

.in-cv{ display: flex; justify-content: center; padding-top: 75px;}
.in-cv > .sec-cv_box{ margin-top: auto;}

footer{ text-align: center; font-size: .8em; padding: 1em 0;}
.footer_text_a{ margin: 0 auto 1%; font-size: 1.3em;}



