@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&family=Roboto+Condensed:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Anton&display=swap');

*{
  box-sizing: border-box;
}

:root { 
  --key-Color: #f5a523;
  --og-color: #ff6b04;
  --blue: #022e78;
  --Gray: #f3f3f3;
  --Gray02: #dce3e7;
  --darkGray: #f4f4f4;
  --corner: 2.46em;
  --row-space : 6.25vw;
  --col-space : 11.2vh;
  --w50-space: 45%;
  --s1-space: 7.5vh;
  --s2-space: 5vh;
  --s3-space: 2.5vh;
  --containner: 1100px;
  --containner_small: 1000px;
  --negative_margin_bottom: -16.5vh;
  --h1 :2.841rem;
  --h2 :2.0rem;
  --h3 : 1.8rem;
  --h4 : 1.25rem;
  --h2_en : 5.0rem;
  --Text-normal: 16px;
  --navi-ft-size: 1.0rem;
  --flex_hurf : calc(98% / 2);
  --flex_third : calc((100% - 5vw) / 3);
  --flex_third_space : calc((100% - 6%) / 3);
  --flex_five : calc((100% - 5vw) / 5);
  --flex_six : calc(100% / 3);
  --flex_concept01 : 55%;
  --flex_concept02 : 40%;
  --logo_wide: 290px;
  --nav_ft_size: 17px;
  --out_image: -25%;
  --out_image02: -15%;
  --fix_head_margin: 71px;
  --inter: 'Inter';
  }
  
  @media screen and (min-width: 768px) and (max-width: 1350px) {
  
    :root { 
      --logo_wide: 200px;
      --nav_ft_size: 16px;
      --row-space : 5vw;
      --negative_margin_bottom: -10vh;
    }
  
  }
  
  @media screen and (min-width: 768px) and (max-width: 1024px) {
  
    :root { 
      --logo_wide: 200px;
      --h3: 1.6rem;
      --nav_ft_size: 16px;
      --row-space : 1.5em;
      --col-space : 5vh;
      --s2-space: 3vh;
      --negative_margin_bottom: -10vh;
      --w50-space :100%;
      --h2_en: 3.4rem;
    }
  
  }
  
  @media screen and (max-width: 767px) {
  
    :root { 
      --row-space : 4vw;
      --col-space : 5vh;
      --s1-space: 5vh;
      --s2-space: 2.5vh;
      --s3-space: 1.5vh;
      --containner: 1200px;
      --negative_margin_bottom: -5vh;
      --h1 :1.6rem;
      --h2 :1.6rem;
      --h3 : 1.25rem;
      --h4 : 1.1rem;
      --h2_en : 2.066rem;
      --Text-normal: 15px;
      --flex_hurf : 100%;
      --flex_third : calc(96% / 2);
      --flex_third_space : calc(100% / 1);
      --flex_five : calc(100% / 1);
      --flex_six : calc(100% / 2);
      --flex_third :100%;
      --sp-none: none;
      --fix_head_margin: 50px;
      --flex_concept01 : calc(100% / 2);
      --flex_concept02 : calc(100% / 2);
      --w50-space: 100%;
      }
  
      .sp-none{
        display:none;
      }
  
  }
:root {
    --color: #1a1a1a;
    --White: #fff;
    --Red: #ec2127;
    --Blue: #063fb1;
    --Orange: #f69529;
    --row-space: 3.58vw;
    --column-space: 5.5vh;
    --space: 1em;
    --s1: 5vh;
    --s2: 2em;
    --s3: 4em;
    --kv_caption: 4.825vw;
    --size_22: 22px;
    --size_24: 24px;
    --size_30: 30px;
    --size_40: 40px;
    --en: 'Bebas Neue';
    --text2: 24px;
    --Black : #000;
    --Gray :  #232323;
    --Cream: #fefae5;
    --LBlue: #f1f9fc;
}

@media screen and (max-width: 767px) {
  :root {
    --space: 1em;
    --s2: 1em;
    --text2: 18px;
    --size_22: 18px;
    --size_24: 20px;
    --size_30: 21px;
    --size_40: 26px;
    --column-space: 3vh;
    --s3: 1em;
  }
  .fv__img__small{
    max-width: 95%;
    margin:0 auto 1em;
  }
}

@media screen and (min-width: 768px) {

  .sp{
    display:none;
  }
}

.skip-link{
  display:none;
}

/*******************************

Common

*********************************************/

ul{
  list-style: none;
}

html{
    overflow-x: hidden;
}

body{
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
margin:0;
padding:0;
font-size:17px;
background: var(--White);
color: var(--color);
font-weight: var(--normal-font-weight);
overflow-x:hidden;
line-height:1.8;
}

body:not(.singular) main > article:first-of-type{
	padding-top:0;
}

header .Inner__wrap{
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
  flex-wrap: wrap;
}
@media screen and (min-width: 1921px) {
	header .Inner__wrap{
		max-width:1600px;
	}
	h1.header-main__text{
		font-size:5.6vw !important;
	}
}

header .Inner__wrap
input, select, textarea{
  font-weight:400;
  font-family:'Noto Sans JP', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

p{
font-family:'Noto Sans JP', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
line-height:1.8;
font-weight: var(--normal-font-weight);
font-size:17px;
font-weight:400;
margin-bottom:1em;
text-align: justify;
text-justify: inter-ideograph;
}

p:last-child{
 margin-bottom:0;
}

.site_headdiscription {
  display: none;
}

a{
 color: var(--color);
 border:none;
 -webkit-transition: all .3s;
 transition: all .3s;
}

a:hover{
  opacity:0.8;
}

img{
 vertical-align:bottom;
 max-width:100%;
}

b{
  font-weight:600;
  }

.Center{
 text-align:center;
 position: relative;
 z-index: 2;
}

strong.big{
 font-size: var(--text2);
 font-weight:bold;
}

.underine{
 text-decoration:underline;
}

ul{
 padding:0;
}

p.Left{
 text-align:left;
}

p.min{
 font-size:12px;
 line-height:1.555;
}

p.big{
  font-size: calc(var(--kv_caption) * 0.5);
  font-weight: 900;
  line-height:1.25;
  margin: 0 auto;
}

span.blue{
  color: #063fb1;
}

.right{
  text-align: right !important;
}

h2.underline{
  padding-bottom: .5em;
  border-bottom: 5px solid #063fb1;
  text-decoration: none !important;
}

span.txt__orange{
  color: #fe6f07;
}

span.marker-wh{
  background:linear-gradient(transparent 60%, #ffffff 60%);
}

.box__blue{
  background:#f19300;
  padding:var(--s3);
  margin: auto;
  margin: var(--s2) calc(50% - 50vw);
  width: 100vw;
  text-align: center;
}

.box__blue .Inner{
  max-width: 1100px;
  margin:auto;
}

.box__blue .title{
  background: #fff;
  color:#f19300;
  padding: .5em;
  text-align: center;
  display: inline-block;
  min-width: 60%;
  font-weight: bold;
  margin-bottom: 1em;
  font-size: var(--h3);
}

.box__blue p{
  color: #fff;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 2.05;
  text-align: center;
  margin-top: 0;
}

p.middle{
  font-size: calc(var(--kv_caption) / 3);
  font-weight: 600;
  margin-bottom:0;
  line-height:1.4;
}

p.orange{
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 2.05;
  text-align: center;
  color:#f19300;
}

p.s22__no{
  font-size: var(--size_22);
  font-weight: 400;
  margin-bottom:1.5em;
  line-height:1.75;
}

p.s22{
  font-size: var(--size_22);
  font-weight: 600;
  margin-bottom:.5em;
  line-height:1.75;
}

p.s24{
  font-size: var(--size_24);
  font-weight: 600;
  margin-bottom:1em;
  line-height:1.45;
}


p.s30{
  font-size: var(--size_30);
  font-weight: 600;
  margin-bottom:.5em;
  line-height:1.75;
}

.txt__red{
  color: var(--Red);
}

.txt__pink{
  color: var(--Pink);
}

.txt__orange{
  color: var(--Orange);
}

.underline{
  text-decoration: underline !important;
}

p a{
 text-decoration:underline;
}

img.round{
  border-top-right-radius:1.4em;
  border-bottom-left-radius:1.4em;
 }

/***********

SP

***********************/

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

  .box__blue p{
    font-size: 1.0rem;
    text-align: left;
  }

  p.orange{
    font-size: 1.0rem !important;
    text-align: left;
    padding: 0 1em;
  }

  p.orange br{
    display: none;
  }

.br-pc{
  display:none;
 }

 .sp-none{
 display:none;
 }

 p{
  font-size:15.5px;
 }

 .contact__wrap p.s24{
  font-size:1.1rem;
 }

 .contact__wrap p.Center{
  text-align: center;
 }

 .Inner__wrap + .box__blue{
  margin-top: 1em;
 }

}


/***********

pc

***********************/

@media screen and (min-width: 768px) {

   body{
    overflow-y:hidden;
   }

  .br-sp{
    display:none;
   }

   .pc-none{
   display:none;
   }
  
  }

/*******************************

Header

*********************************************/

header{
 padding: 0;
 background:url(../images/fv_bg.jpg)no-repeat center top;
 background-size:cover;
 position: relative;
 min-height:calc(100vh - 65px);
 display: flex;
 flex-direction: column;
 flex-wrap: wrap;
 justify-content:center;
 }

header .top__wrap{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content:space-between;
  padding:.33em 1em;
  align-items:center;
  background:#fff;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}

header .Inner__wrap{
  text-align:center;
  margin:auto 0;
  position:relative;
  padding:.5em var(--row-space) 3em;
 }

 header .Inner__wrap h1{
  margin:0;
  padding:0;
  text-align:center;
 }

 header .top__wrap .contact--wrap{
   width:calc(100% - 282px);
   display: flex;
   flex-direction: row;
   flex-wrap: nowrap;
   justify-content:flex-end;
   align-items: center;
 }

 header .Inner__wrap .lead--img{
  max-width: 1100px;
  position: relative;
 }

 header .Inner__wrap .lead--img .Left_img{
  position: absolute;
  top:0;
  left:-15vw;
  max-width: 250px;
 }
 @media screen and (min-width: 768px){
	 header .Inner__wrap .lead--img .Left_img{
		 display:none;
	 }
 }
header a.btn{
    margin-left:.5em;
    display:block;
    background: #ff9000;
    padding:.55em .35em .35em;
    color:#fff;
    text-align: center;
    border-radius:.25em;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: 1px;
	font-size:15px;
	min-height:44px;
	display:flex;
	justify-content: center;
	flex-direction:column;
	  line-height:1.2;
	min-width:220px;
 }

 a.btn__contact{
      background: linear-gradient(to bottom, rgba(255, 61, 70, 1) 0%, rgba(163, 0, 8, 1) 100%) !important;
      border-radius: 0.46em !important;
 }

 header a.btn span{
  display: block;
  font-size: 11px;
  font-weight: normal;
 }

 header a.btn > div{
  font-size: 25px;
  font-family: Arial;
 }

a.btn.he-download{
  margin-right:.5em;
  margin-left:.5em;
  display:block;
  background: #47d10b;
  line-height:1.2;

}

header .flex__box a.btn{
  padding:1em 1.5em;
  font-size: 1.5rem;
  min-width:40%;
  border-radius:1.45em;
  box-shadow: 0px 5px 16px -6px rgba(0,0,0,0.6);
  display:block;
}

header a.btn i{
 font-weight: normal;
  vertical-align: middle;
  margin-right: .15em;
}

header .flex__box a.btn i{
  font-weight: normal;
  vertical-align: middle;
  margin-right: .5em;
}

header ul.gloval{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content:center;
  margin:0;
  list-style: none;
  width: 100%;
  background: #f6f6f6;
  padding: 1em;
  border-bottom: 6px solid #e3e3e3;
}

header ul.gloval li{
  margin:0 .5em;
}

header ul.gloval li a{
  text-decoration: none;
  font-weight:600;
  font-size: 0.95rem;
}

h1.Logo{
 margin:0;
 padding-top:0;
 max-width: 240px;
 line-height: 1.0;
}

header .tel{
  color: var(--Blue);
  font-size:36px;
  font-weight:900;
  line-height:1.4;
  font-family: 'Lato', sans-serif;
}

header .medal__wrap{
  display: flex;
justify-content: space-around;
max-width: 65%;
margin: auto;
}

header .medal{
  font-weight: 900;
  font-size: clamp(1.2rem,1.78rem,1.9rem);
      width: calc(98% / 3);
}
header .medal div{
    border-radius: 100%;
  text-align: center;
  position: relative;
  padding: .5em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  line-height: 1.4;
    border: 6px solid #ff8512;
  background: url(../images/medal.png)no-repeat center #fff;
  background-size:80%;
}
header .medal div:before{
 content: '';
 display: block;
 padding-top: 100%;
}

header .medal div .text{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: clamp(1.2rem,32px,50px);
  line-height: 1.4;
  width: 100%;
}

header .medal span.blue{
  color:#063fb1;
}

a.tel span.time{
  font-size: 12px;
  display: block;
  text-align: center;
  color: var(--Black);
  font-weight:400;
}

.image img {
  border-radius:0;
  display: block;
  max-width:100%;
}

.Caption__wrap{
 position: absolute;
 right:0;
 bottom: 0;
}

.Caption__wrap div{
  display: block;
  padding: .25em;
  line-height: 1.0;
  background: #000;
  color: #fff;
  font-size: calc(var(--kv_caption) / 1.5);
  font-family: var(--en), sans-serif;
  font-weight: 900;
  letter-spacing: 0.085em;
}

.Caption__wrap div span{
  font-size: var(--kv_caption);
  margin-left:.25em;
  display: inline-block;
}

.Caption__wrap div:nth-of-type(even){
  background: var(--Red);
}

@media screen and (min-width: 768px){
	header a.btn font{
		display:none;
	}
}

@media screen and (min-width: 768px) and (max-width: 1370px) {
	h1.Logo{
    max-width: 180px;
   }
	

	header .top__wrap{
		padding-left:1em;
		padding-right:1em;
	}
	
	header .top__wrap .contact--wrap ul.gloval li a{
		font-size:0.8rem;
	}
	
	header .top__wrap .contact--wrap a.btn{
		padding: 0.35em .5em;
		font-size: 14px;
        min-width: 140px;
	}
	header .medal__wrap{
		max-width:60%;
		padding-bottom:2.5vh;
			margin-left:0;
	}
	header .medal div .text{
		font-size:32px;
	}
}

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

  header .top__wrap .contact--wrap ul.gloval{
    display:none;
  }

  p.middle {
    font-size: 24px;
  }

  p.big{
    font-size: 30px;
  }

}

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

  h1.Logo img{
    vertical-align: middle;
  }

  header .Inner__wrap .lead--img .Left_img{
    display: none;
  }

  header .Inner__wrap{
    max-width: 100%;
  }

  header{
    min-height: auto;
    background: url(../images/fv_bg_sp.jpg) no-repeat center top 5vh;
    background-size: cover;
  }

  header .top__wrap .contact--wrap ul.gloval{
    display: none;
  }

  header .top__wrap .contact--wrap a.btn{
    font-size: 13px;
    padding:.5em .5em;
	 min-width:auto;
   border: none;
  }
  header .top__wrap .contact--wrap a.btn > div{
    font-size:17px;
  }
  header .top__wrap .contact--wrap a.btn:last-of-type{
    margin-right: 0;
    line-height: 1.0;
    padding-top: .7em;
    padding-bottom: .35em;
  }
	header a.btn{
		min-height:auto;
	}
	
	header a.btn span{
		display:none;
	}

  header a.btn i{
    font-size: 19px;
  }

  header .tel{
    max-width: 110px;
  }

  header .Inner__wrap{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding:1em 1em 1em;
  }

  .header__achivement{
    font-size: 34px;
    text-align: center;
  }

  header .medal div{
    border-width: 3px;
  }

  a.btn{
    display:none;
  }

  header .medal div .text{
    font-size: 19px;
    line-height: 1.2;
  }

  header .tel{
    font-size:24px;
    line-height:1.255;
    width:27vw;
  }

  header .flex__box a.btn{
    padding:1em .35em;
    margin:.3em auto .7em;
    width:90%;
	  font-size:1.3rem;
  }

  h1.Logo{
    max-width: 160px;
    margin-bottom: 0;
    line-height: 1.0;
   }

   header .top__wrap .contact--wrap{
    width:calc(100% - 110px);
    margin-top: 3px;
   }

   header .top__wrap{
    align-items:center;
    flex-wrap: nowrap;
    padding-left: .25em;
    padding-right: .25em;
    padding-bottom: .4em;
   }

   header .Inner__wrap .lead--img{
    max-width: 100%;
    }

    .lead--img .curcle{
      max-width: 55%;
      margin: auto;
    }

   a.tel::before {
    content: '';
    width: 25px;
    height: 20px;
    vertical-align:middle;
}

  .Caption__wrap{
    min-width:90%;
  }

  .Caption__wrap div{
    font-size: calc(var(--kv_caption) / 1.0);
  }

  .Caption__wrap div span{
    font-size: calc(var(--kv_caption) * 3);
  }


  a.tel span.time{
    font-size:10px;
  }

}


/*******************************

悩み

*********************************************/

section{
  padding: var(--column-space) var(--row-space);
}

section#worries{   
  background: #f5f7f8;
  background-size: contain;  
  padding-top:var(--s1);
}

section .Inner__wrap{
  max-width:1100px;
  margin:auto;
  position: relative;
  z-index: 5;
}

h2.Center{
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  font-family:'Noto Sans JP', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 900;
  letter-spacing: 0;
  font-size: calc(var(--h2) * 1.5);
  line-height: 1.655;
}

h2.Center.small::before{
  display: none;
}

h2.border{
  padding-bottom: .5em;
  border-bottom: 4px solid #063fb1;
  margin-bottom: 1em;
  max-width: max-content;
}

h2.Center .jan{
 position: relative;
 font-style: italic;
 font-size: calc(var(--h2) * 4.5);
 color:#3985db;
 font-weight: 500;
 line-height: 1.15;
 display: block;
 text-align: center;
 font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

h2.Center .jan font{
  font-size: calc(var(--h2) * 3);
}

h2.bg{
  background: #2866ad;
  color:#fff;
  padding: .5em var(--row-space);
  text-align: center;
  font-size: var(--h1);
  position: relative;
}

h2.bg::before{
  content: '';
  background: #f1e800;
  width: 150px;
  height: 5px;
  position: absolute;
  top:0;
  left: 50%;
  transform: translateX(-50%);
}

ul.check{
  margin:0 auto 0;
}

ul.check li{
  padding-left: 50px;
  border-radius:0.45em;
  padding: 1em 1em 1em 60px;
  font-size: var(--size_22);
  position: relative;
  background: #e3e7f2;
  color: #202020;
  font-weight: 600;
}

ul.check li:not(:last-child){
  margin-bottom: 1em;
}

ul.check li::before{
  content: '';
  background: url(../images/check-bk.svg)no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left:1em;
  width: 40px;
  height:35px;
}

dl.service{
  display: flex;
  flex-wrap: nowrap;
  border-bottom: 1px solid #ddd;
  margin-bottom: 0;
}

dl.service dt{
  width: 35%;
  padding: 1em;
  background: #eef2f5;
  text-align: center;
  font-size: clamp(19px,21px,25px);
  display: flex;
  justify-content: center;
  flex-direction: column;
}

dl.service dt span.tax{
  font-size: 14px;
}

dl.service dd{
  width: 65%;
  padding: 1em;
  background: #f7f7f7;
  text-align: left;
  font-size: clamp(19px,21px,25px);
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.remarks{
  font-size: 14px;
  display: block;
}

article#merit{
  background: #eef5fa;
}

article#merit .flex__box{
  background: #fff;
  padding: var(--row-space);
}

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

  h2.bg{
    line-height: 1.455;
  }

  dl.service dt, dl.service dd{
    width: 100%;
    font-size: 15px;
    padding: .5em;
  }

  ul.check li::before{
    width: 30px;
    height:25px;
    top: 50%;
    transform: translateY(-50%);
  }

  ul.check li{
    padding-left: 50px;
    line-height: 1.4;
  }

  ul.check{
  margin-bottom:0;
  }

  h2.Center::before{
    width:200px;
    height:150px;
  }

  h2.Center{
    font-size: calc(var(--h2) * 0.9);
    margin-bottom: 1em;
  }

  h2.Center .jan{
    font-size: calc(var(--h2) * 1.8);
  }
	h2.Center .jan font{
  font-size: calc(var(--h2) * 1.6);
}
	
	#achivement  h2.Center .jan{
    font-size: calc(var(--h2) * 1.6);
  }

}

/*******************************

CTA

*********************************************/

section#cta{
  padding: var(--column-space) var(--row-space);
  background: url(../images/cta__bg.webp)no-repeat center center;
  background-size: cover;
}

section#cta .cta__wrap{
  max-width:1100px;
  margin: auto;
}

section#cta .Inner__wrap{
  max-width:1000px;
  margin:auto;
}

section#cta .Inner__wrap .contents{
  background:#fff;
  padding:1em;
  border-radius:.55em;
}

section#cta h2{
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight:700;
  margin:0 auto .5em;
  background-image: -webkit-linear-gradient(left, transparent, #fff 25%, #fff 75%, transparent);
  background-image: linear-gradient(to right, transparent, #fff 25%, #fff 75%, transparent);
  display: block;
  text-align: center;
  font-size: 20x;
  color:#1a1a1a;
  line-height:1.4;
  padding:.55em var(--row-space);
  text-align: center;
  letter-spacing: 0;
}

section#cta h2 font{
  color: var(--Red);
}

.fukidashi{
  background: #222222;
  padding:.75em var(--row-space);
  border-radius: 0.46em;
  text-align: left;
  color:#fff;
  font-size: var(--size_22);
  font-weight:500;
  letter-spacing: 0.05em;
  position: relative;
  margin-bottom: 20px;
}

.fukidashi::after{
  content: '';
  position: absolute;
  bottom:-15px;
  left:20px;
  width: 0;
height: 0;
border-style: solid;
border-width: 30px 20px 0 20px;
border-color: #222222 transparent transparent transparent;
}

section#cta a.btn{
  display:block;
  background: rgb(255,61,70);
  background: -moz-linear-gradient(top,  rgba(255,61,70,1) 0%, rgba(163,0,8,1) 100%);
  background: -webkit-linear-gradient(top,  rgba(255,61,70,1) 0%,rgba(163,0,8,1) 100%);
  background: linear-gradient(to bottom,  rgba(255,61,70,1) 0%,rgba(163,0,8,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff3d46', endColorstr='#a30008',GradientType=0 );
  padding:1em 1.5vw;
  color:#fff;
  font-size:  var(--size_40);
  text-align: center;
  border-radius:1.25em;
  text-decoration: none;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 0;
  width: 100%;
  max-width: 800px;
}

section#cta a.btn.cta-download{
display:block;
background: rgb(1,207,25,1);
background: -moz-linear-gradient(top,  rgba(1,207,25,1) 0%, rgba(0,148,7,1) 100%);
background: -webkit-linear-gradient(top,  rgba(1,207,25,1) 0%,rgba(0,148,7,1) 100%);
background: linear-gradient(to bottom,  rgba(1,207,25,1) 0%,rgba(0,148,7,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#01cf19', endColorstr='#009407',GradientType=0 );

}

section#cta a.btn i{
  font-size: 35px;
  vertical-align: middle;
  margin-right: 10px;
  font-weight: normal;
}

.flex__box{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content:space-between;
}

.flex__box.center{
  justify-content: center;
}

.flex__box + .flex__box{
  margin-top: var(--row-space);
}

.flex__box.row__reverse{
  flex-direction: row-reverse;
}

.flex__box .full{
  margin-bottom: var(--row-space);
  width: 100%;
}

.flex__box.align-items-center{
  align-items: center;
}

.flex__box.align-start{
  align-items: flex-start;
}

.flex__box .Hurf{
  width:calc(98% / 2);  
}

.flex__box .Hurf.spacebetween{
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}

.flex__box .three{
  width:calc(96% / 3); 
}

.flex__box .three .staff{
  padding: 0 2em;
  box-sizing: border-box;
}
.flex__box .three .staff p{
  font-size: 0.9rem;
}

 .flex__box.center .three{
  margin-right:2%;
}

.flex__box.center .three:nth-of-type(3n){
  margin-right:0;
}

.flex__box .three:not(:last-child){
  margin-bottom: 2em;
}

.flex__box.center{
  justify-content: center;
}

.cta__tel_wrap{
  padding:.3em;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content:center;
  align-items: center;
  text-align: center;
  background:rgba(255,255,255,0.8);
  border:4px solid #fff;;
  margin: 1em auto 0;
  max-width:700px;
}

.cta__tel_wrap a{
  text-decoration: none;
}

.cta__tel_wrap a:hover{
  color:#000;
}

.cta__tel_wrap .tel__left{
  padding: .5em 3vw;
  border-radius: 0.46em;
  text-align:center;
  display: inline-block;
  margin: 1em auto .5em;
  line-height: 1.0;
  font-weight:500;
  background: #063fb1;
  color: #fff;
  font-size: var(--size_24);
}

.cta__tel_wrap .number{
  color: #063fb1;
  font-size:4.5vw;
  font-weight:900;
  font-family:  var(--en), sans-serif;
  line-height:1.0;
  text-decoration: none;
}

.cta__tel_wrap i{
  color: #063fb1;
}

.cta__tel_wrap .number::before{
  content: '';
  width:50px;
  height:50px;
  background:url(../images/phone.svg)no-repeat left center;
  display: inline-block;
  margin-right: 0;
}

.cta__tel_wrap .time{
  font-size: calc(var(--size_22) / 1.45);
  font-weight:400;
  line-height:1.4;
  margin-top:.15em;
  letter-spacing: 0.08em;
}


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


  section#cta a.btn{
    font-size:24px;
  }

  section#cta .cta__wrap{
    padding-top:1.5em;
    padding-bottom:1.5em;
  }

}



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

  section#cta h2{
    font-size:21px;
  }

  section#cta a.btn{
    margin-bottom:1em;
    padding:.55em;
  }

  .fukidashi{
    width:95%;
    margin-left:auto;
    margin-right:auto;
  }

  .contents--sub{
    font-size:16px;
  }

  .cta__tel_wrap .number{
    font-size:56px;
    margin-top:5px;
  }

  .cta__tel_wrap .number::before{
    content: '';
    width:30px;
    height:30px;
    background:url(../images/website-lp/free-dial.svg)no-repeat left top 5px;
  }

  section#cta .Inner__wrap .contents{
    padding:.5em;
  }

  .flex__box .Hurf {
    width: 100%;
}

.flex__box .Hurf:not(:last-child) {
  margin-bottom: .5em;
}

.flex__box.center .three{
  margin-right:auto;
}

.cta__tel_wrap .tel__left{
display:block;
width:100%;
margin: 0 auto 0em;
padding:.25em;
}

.cta__tel_wrap{
  margin-top:0;
}

.flex__box.nowrap{
  flex-wrap: nowrap !important;
}
}

/*******************************

サービス

*********************************************/

body {
  counter-reset: number 0;
}

.service__cont{
  position: relative;
background: rgb(213,243,238);
background: -moz-linear-gradient(left,  rgba(213,243,238,1) 0%, rgba(221,241,254,1) 100%);
background: -webkit-linear-gradient(left,  rgba(213,243,238,1) 0%,rgba(221,241,254,1) 100%);
background: linear-gradient(to right,  rgba(213,243,238,1) 0%,rgba(221,241,254,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d5f3ee', endColorstr='#ddf1fe',GradientType=1 );
}
.service__cont a{
padding:1em 0 1em 80px;
background: transparent;
color: var(--Blue);
font-size: var(--size_24);
font-weight: 600;
position: relative;
justify-content: flex-start;
cursor: pointer;
line-height: 1.3;
background: rgb(213,243,238);
background: -moz-linear-gradient(left,  rgba(213,243,238,1) 0%, rgba(221,241,254,1) 100%);
background: -webkit-linear-gradient(left,  rgba(213,243,238,1) 0%,rgba(221,241,254,1) 100%);
background: linear-gradient(to right,  rgba(213,243,238,1) 0%,rgba(221,241,254,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d5f3ee', endColorstr='#ddf1fe',GradientType=1 );
}

.service__cont a i{
  margin-left: .5em;
  vertical-align: middle;
}

.service__cont a::before{
  font-family: 'Roboto Condensed', sans-serif;
font-weight: 900;
font-size:68px;
line-height: 1.0;
position: absolute;
left:0.15em;
top: 50%;
  transform: translateY(-50%);
color:#fff;
opacity:0.85;
counter-increment: number 1;
  content: "0" counter(number) ; 
}

.service__cont:nth-of-type(n+10) a::before{
  content: counter(number) ; 
}


.service__cont a::after{
  color: var(--Blue);
  position: absolute;
}

.service__cont:last-child{
  margin-bottom: 1.2em;
}


.flex__box .Hurf.service__cont:not(:last-child){
  margin-bottom: 1.2em;
}

section#types .service__cont a::before{
  display:none;
}

section#types .service__cont{
  padding-top:30px;
  padding-bottom:30px;
  margin-top:var(--s3);
}

section#types .service__cont .icon{
  width:80px;
  display: block;
  position: absolute;
  top:-40px;
  left: 50%;
  transform:translateX(-50%);
  z-index: 3;
}

section#types .service__cont a{
  padding:1em;
  justify-content: center;
}

.service__cont .submenu li{
  margin:auto;
  padding:.5em;
  font-size:0.95rem;
  line-height: 1.655;
}

.service__cont.auto{
  margin-left: auto;
  margin-right: auto;
}

/*******************************

5つの理由

*********************************************/

section {
 position: relative;
}

section.points{
    background:url(../images/detail-bg.webp)no-repeat center top;
    background-size:cover;
 position: relative;
}

.points__icon{
 position: absolute;
 top:-2em;
 left: 50%;
 transform:translateX(-50%);
}

h3.border{
  border-left: 15px solid #ff9f23;
  padding-left: 20px;
  font-size: var(--size_24);
  margin-bottom: 1em;
  text-align: left;
  color:#00a0db;
}

.reason__box{
  padding:var(--s2) calc(var(--s3) / 2) calc(var(--s3) / 2);
  background: #fff;
  border-radius: .85em;
  position: relative;
}

.reason__box h3{
  margin:2.5em 0 1em 0;
  font-size: calc(var(--size_30) * 1.5);
  position: relative;
  padding-bottom: .5em;
  padding-left:100px;
  border-bottom:8px solid #f1f0ef;
  text-align: center;
  line-height: 1.45;
  font-weight: 900;
  letter-spacing: 0;
}

.reason__box{
  margin-top: 4em;
}

.flex__box .Image{
   width:40%;
}

.flex__box .Text{
  width:55%;
}
p.name{
  font-weight: bold;
  font-size: 1.25rem;
  text-align: left;
  margin-bottom: .25em;
}
.reason__box .flex__box{
  padding:1em var(--s2);
}

.ri-play-circle-fill{
  color: var(--Red);
  display: inline-block;
  margin-right:5px;
  margin-top:-5px;
  vertical-align: middle;
}

p.play__number{
  font-size: calc(var(--size_30) * 1.45);
  font-family: var(--en);
  letter-spacing: 0;
	margin-bottom:.5em;
	text-align:center;
	line-height:1.25;
   font-weight:900;
}

p.play__number span{
	font-size:16px;
	display:block;
}

p.play__number font{
	font-size:18px;
}

span.marker{
background:linear-gradient(transparent 60%, #ff6 60%);
}

.slider-line{
	margin-bottom: var(--s2) !important;
	margin-left:auto;
	margin-right:auto;
}

#points .flex__box{
  column-gap:1%;
  row-gap:2.75vh;
}

.points__wrap{
  width: var(--flex_hurf);
  display: flex;
  background: #fff;
  padding: 1em;
  align-items: center;
  column-gap: 10px;
}

.points__wrap .Image{
  width: 30%;
}

.points__wrap .Text{
  width: 67%;
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .page h2.bk__title{
    font-size: 32px;
  }

  p.play__number{
    font-size:24px;
  }
	
}

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

  .points__wrap .Image{
    width: 40%;
    margin: 0 auto .5em;
  }
  
  .points__wrap .Text{
    width: 100%;
  }

  section#types .service__cont .icon{
    width:45px;
    height:45px;
   top:-20px;
  }

  section#reason{
    padding-top:0;
  }

  section#types .service__cont{
    padding-top:10px;
    padding-bottom:10px;
  }

  .service__cont a::before{
    font-size:32px;
  }

  .service__cont a{
    padding-left:40px;
  }
	
	.reason__box h3{
		padding-bottom:.5em;
		border-bottom:4px solid #f6dede;
	}
	
  section#youtuber{
	padding-left:var(--column-space);
	padding-right:var(--column-space);
}

  .page h2.bk__title{
    font-size: calc(var(--size_30) * 1.1);
  }

  section#reason .flex__box{
    margin-bottom:1em;
  }

   .flex__box .Image{
      width:100%;
      text-align: center;
      margin:0 auto 1em;
  }
  .points__wrap .Image{
    width: 20%;
    position: absolute;
    opacity: 0.3;
  }

  .points__wrap{
    align-items: flex-start;
  }

  .reason__box h3::before{
    content: '';
    width:45px;
    height: 45px;
  }
  
  .reason__box h3{
    font-size:1.255rem;
	  padding-left:0;
  }

 .flex__box .Text {
    width: 100%;
    z-index: 3;
}

.reason__box:not(:last-child) {
  margin-bottom: 1em;
}

.reason__box .flex__box{
  padding: 1em 0 0;
  margin-bottom:1em;
}

}

/*******************************

プラン紹介

*********************************************/

section#plan{
  background:#fdf7d3;
}

.price__title__wrap{
  display: flex;
  align-items: flex-end;
}
.price__title__wrap_right{
  background: #fff;
  padding: .5em;
  font-size: clamp(1.4rem,2.2rem,2.45rem);
  border:5px solid #81dc3f;
  font-weight: bold;
  line-height: 1.25;
  width: 100%;
}

.price__title__wrap_left{
  font-size: 110px;
  color:#fff;
  text-shadow: 
	#81dc3f 4px 0px 4px, #81dc3f -4px 0px 4px,
	#81dc3f 0px -4px 4px, #81dc3f -4px 0px 4px,
	#81dc3f 4px 4px 4px, #81dc3f -4px 4px 4px,
	#81dc3f 4px -4px 4px, #81dc3f -4px -4px 4px,
	#81dc3f 1px 4px 4px, #81dc3f -1px 4px 4px,
	#81dc3f 1px -4px 4px, #81dc3f -1px -4px 4px,
	#81dc3f 4px 1px 4px, #81dc3f -4px 1px 4px,
	#81dc3f 4px -1px 4px, #81dc3f -4px -1px 4px,
	#81dc3f 1px 1px 4px, #81dc3f -1px 1px 4px,
	#81dc3f 1px -1px 4px, #81dc3f -1px -1px 4px;
  line-height: 1.0;
  font-weight: 900;
}

.price__contents{
  background: #fff;
  border:5px solid #81dc3f;
  padding: 1em;
  position: relative;
  z-index: 3;
  margin-top: -10px;
  font-size: clamp(1rem,1.25rem,1.3rem);
  font-weight: 600;
  max-width: 95%;
  margin-left: auto;
  margin-right: auto;
   box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3);
   min-height: 90%;
}

.price__contents .plan{
  background: #81dc3f;
  padding: .25em;
  display: flex;
  justify-content: center;
  align-items: center;
  color:#fff;
  font-size: clamp(1.2rem,1.6rem,1.7rem);
  font-weight: 900;
  text-align: center;
  margin-bottom: .5em;
  border-radius: 0.26em;
  column-gap: .5em;
}

.price__title__wrap_right02, .price__contents02{
  border-color: #e6a927;
}

.price__contents .plan02{
    background: #e6a927;
}

.price__title__wrap_left02{
    text-shadow: 
	#e6a927 4px 0px 4px, #e6a927 -4px 0px 4px,
	#e6a927 0px -4px 4px, #e6a927 -4px 0px 4px,
	#e6a927 4px 4px 4px, #e6a927 -4px 4px 4px,
	#e6a927 4px -4px 4px, #e6a927 -4px -4px 4px,
	#e6a927 1px 4px 4px, #e6a927 -1px 4px 4px,
	#e6a927 1px -4px 4px, #e6a927 -1px -4px 4px,
	#e6a927 4px 1px 4px, #e6a927 -4px 1px 4px,
	#e6a927 4px -1px 4px, #e6a927 -4px -1px 4px,
	#e6a927 1px 1px 4px, #e6a927 -1px 1px 4px,
	#e6a927 1px -1px 4px, #e6a927 -1px -1px 4px;
}

.price__title__wrap_right02, .price__contents02{
  border-color: #e6a927;
}

.price__contents .plan02{
    background: #e6a927;
}

.price__title__wrap_left02{
    text-shadow: 
	#e6a927 4px 0px 4px, #e6a927 -4px 0px 4px,
	#e6a927 0px -4px 4px, #e6a927 -4px 0px 4px,
	#e6a927 4px 4px 4px, #e6a927 -4px 4px 4px,
	#e6a927 4px -4px 4px, #e6a927 -4px -4px 4px,
	#e6a927 1px 4px 4px, #e6a927 -1px 4px 4px,
	#e6a927 1px -4px 4px, #e6a927 -1px -4px 4px,
	#e6a927 4px 1px 4px, #e6a927 -4px 1px 4px,
	#e6a927 4px -1px 4px, #e6a927 -4px -1px 4px,
	#e6a927 1px 1px 4px, #e6a927 -1px 1px 4px,
	#e6a927 1px -1px 4px, #e6a927 -1px -1px 4px;
}


.price__title__wrap_right03, .price__contents03{
  border-color: #27bbe6;
}

.price__contents .plan03{
    background: #27bbe6;
}
.price__contents03{
    background: #fff;
  border:5px solid #27bbe6;
  padding: 1em;
  position: relative;
  z-index: 3;
  margin-top: -10px;
  font-size: clamp(1rem,1.25rem,1.3rem);
  font-weight: 600;
  max-width: 95%;
  margin-left: auto;
  margin-right: auto;
   box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3);
   min-height: auto;
}

.price__title__wrap_left03{
    text-shadow: 
	#27bbe6 4px 0px 4px, #27bbe6 -4px 0px 4px,
	#27bbe6 0px -4px 4px, #27bbe6 -4px 0px 4px,
	#27bbe6 4px 4px 4px, #27bbe6 -4px 4px 4px,
	#27bbe6 4px -4px 4px, #27bbe6 -4px -4px 4px,
	#27bbe6 1px 4px 4px, #27bbe6 -1px 4px 4px,
	#27bbe6 1px -4px 4px, #27bbe6 -1px -4px 4px,
	#27bbe6 4px 1px 4px, #27bbe6 -4px 1px 4px,
	#27bbe6 4px -1px 4px, #27bbe6 -4px -1px 4px,
	#27bbe6 1px 1px 4px, #27bbe6 -1px 1px 4px,
	#27bbe6 1px -1px 4px, #27bbe6 -1px -1px 4px;
}

.price__contents .plan .icon__image{
  background: url(../images/icon__price.png)no-repeat right center;
  background-size: contain;
  display: block;
  width: 70px;
  margin-left: -60px;
  height: 50px;
}
.price__contents .schedule .icon__image{
  background: url(../images/icon_calender.png)no-repeat center;
  background-size: contain;
  display: block;
  width: 60px;
  margin-left: -60px;
  height: 40px;
}
.price__contents .contents{
  margin-bottom: .75em;
  text-align: center;
  font-size: clamp(1rem,1.6rem,1.7rem);
  line-height: 1.655;
}
.price__contents .contents:last-of-type{
  margin-bottom: 0;
}

.price__contents span.orange{
  font-size: var(--h2);
  color:#ff6418 !important;
}

span.orange{
  color:var(--key-Color);
}
.price{
  color:#121212;
  font-size: var(--h3);
  font-weight: 600;
  text-align: left;
}

.three.price{
  margin-bottom: 2em;
}

.price span.min{
  font-size:1.1rem;
}

.price span.black{
  color:#000;
  font-size: 30px !important;
  display: inline-block;
  margin:0 10px;
}


#plan .plan__box{
  background:#fff1c1;
  overflow: hidden;
  margin-top: var(--s3);
  margin-bottom: 1em;
}

#plan .title{
background:#ff9806;
padding:.5em;
text-align: center;
font-weight: 600;
font-size: calc(var(--h2) * 1.5);
position: relative;
color:#fff;
line-height: 1.1;
}

#plan .plan__box.blue{
  background:#d1e5fc;
  overflow: hidden;
  margin-top: var(--s3);
  margin-bottom: 1em;
}

#plan .blue .title{
background:#3985db;
padding:.5em;
text-align: center;
font-weight: 600;
font-size: calc(var(--h2) * 1.5);
position: relative;
color:#fff;
line-height: 1.1;
}

#plan .text{
  padding: 1em;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
}

#plan .text .item{
  padding:.5em;
  text-align: center;
}

#plan .title span{
  font-size:var(--h2);
}

#plan .three.plan__detail{
  border-top-left-radius:0;
  border-top-right-radius:0;
}

.flex__box .mb{
  padding:0 1em;
}

ul.disc{
  margin:0;
}

ul.disc li{
  text-align: left;
  padding-left: 1em;
  text-indent: -1.2em;
}

section#plan .flex__box + .flex__box{
  margin-bottom: 1em;
}

.hikaku__title{
  background: #ff9806;
  padding:.5em 1em;
  color:#fff;
  text-align: center;
  font-weight: bold;
  margin: 0 auto 1em;
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
ul.disc li {
  text-align: left;
  padding-left: 0.3em;
  text-indent: -0.2em;
  font-size:0.95rem;
}

#plan .three .title{
  padding:.5em;
}

#plan .three .price{
  font-size:30px;
}
}


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

  .price__title__wrap_left{
    font-size: 70px;
  }

  .price__title__wrap_right{
    font-size: 1.45rem;
  }

  .price__contents{
    padding: .5em;
  }

  .flex__box .mb{
    padding:0;
    width:100%;
  }

  .price__contents .contents{
    font-size: 1.2rem;
  }
  .price__contents .plan{
    font-size: 1.3rem;
  }

  #plan .title span.min{
font-size: var(--h3);
}

#plan .title{
  font-size: calc(var(--h3) * 1.5);
}

#plan .text .item{
  width:calc(98% / 2);
  margin-bottom: .5em;
}
.price__contents{
  margin-top: -4px;
}

}

/*******************************

実績

*********************************************/

section#achievement{
  background:url(../images/seo-lp/achievement-bg.jpg) no-repeat center top;
  background-size: cover;
  margin-top:12.5vh;
}

.text__wh__bg{
  background:rgba(255,255,255,0.8);
  border:10px solid #fff;
  border-radius:0.86em;
  padding: var(--s2);
  margin:0 auto 1em;
  font-weight:500;
}
.text__wh__bg p{
  font-weight:600;
  font-size:1.1rem;
}

.top__title{
  background:#000;
  font-size:1.1rem;
  border-radius:1.86em;
  padding:.5em 1em;
  color:#fff;
  margin-bottom:1em;
  display:inline-block;
  min-width:160px;
}

#plan .op__title{
  color:#121212;
  padding-bottom: .35em;
  padding-left: .35em;
  border-bottom: 5px solid var(--Orange);
  font-size: var(--h3);
  font-weight: 600;
  margin-bottom: 1em;
  margin-top: 2em;
}

#plan .option{
  border:1px solid #ddd;
  padding:.75em;
  background: #fff;
  font-weight: 600;
  font-size: 1.25rem;
  margin-bottom: 1em;
}

.slick-slider{
  margin-bottom:0;
}

.slick-list {
  overflow: hidden !important;
}

.slick-next {
  right: 18px;
}

button.slick-next:hover, button.slick-prev:hover{
  background:transparent !important;
}

.slider li .slide__contents{
  background:#fff;
  border:8px solid  var(--Black);
  padding: var(--s2);
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content:space-between;
  align-items: center; 
  border-radius:1.4em;
}

.slider li .thumbnail{
   width:30%;
   margin-top:1em;
}

.slider li .Text{
  width:67%;
}

.slick-arrow:before{
	content:""!important;
}
.slick-prev {
  left: 0px;
}

.slick-prev, .slick-next{
  z-index: 5;
  top:42%;
}

.slick-next:before{
  width:45px;
  height:45px;
  background: url(../images/arrow_r.png)no-repeat !important;
  background-size: contain !important;
  display:block;
}

.slick-prev:before{
  width:45px;
  height:45px;
  background: url(../images/arrow_l.png)no-repeat !important;
  background-size: contain !important;
  display:block;
}

.slider li .thumbnail img{
 background: var(--lightblue);
 padding:7px;
border:5px solid var(--Black)
}

h3.acheve__title{
  padding-bottom:.5em;
  font-size: var(--text2);
  font-weight:600;
  margin-bottom:1em;
  border-bottom:10px solid var(--Yellow);
}

span.name{
  background:linear-gradient(transparent 60%, var(--lightblue) 60%);
  font-weight:bold;
  display: inline-block;
  font-size:17px;
}

p.detail{
  background: #f9f9f9;
  padding: var(--space);
  border-radius:0.56em;
  font-size:0.9rem;
}

@media screen and (max-width: 767px) {
 
  .text__wh__bg{
      border:5px solid #fff;
  }

  .slider li .thumbnail, .slider li .Text{
     width:100%;
  }
  .slider li .thumbnail{
    margin:0 auto 1em;
    width:80%;
  }

  ul.price{
    margin-bottom:1em;
  }

  header ul.gloval{
    display: none;
  }

}

/*******************************

他社との比較

*********************************************/

table.comparison{
  border: 0;
  margin: 0 auto 1em;
  border-spacing:0px;
}

span.table-min{
  font-size: 0.85rem;
  display: block;
  text-align: center;
  margin-top: 50px;
  font-weight: 400;
  color:#262626;
  line-height: 1.45;
}

table.comparison th, table.comparison td{
  border-top:1px solid #ddd;
  border-left:1px solid #ddd;
  border-bottom:1px solid #ddd;
  border-right:1px solid #ddd;
  padding: .75em;
  vertical-align: middle;
  width:25%;
}

table.comparison td{
  border-left: none;
  border-top: none;
}

table.comparison td{
  background: #fff;
  text-align: center;
}

table.comparison th{
  background:#515253;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.255;
}

table.comparison th.lightblue{
  background:#fff;
  color:#202020;
}

table.comparison th.bl{
  background:#ff9806;
  color:#fff;
}

table.comparison th.wh{
  border-top:0;
  border-left:0;
  background: #fff;
}

table.comparison td.big{
  text-align: center;
  color:#f11919;
  line-height: 0;
  font-size: 60px;
  font-weight:900;
}

table.comparison td.middle{
  text-align: center;
  color:#f11919;
  line-height: 0;
  font-size: 25px;
  font-weight:500;
}


table.comparison td.big span.maru{
	font-weight:200;
	font-size:50px;
  color:#419a1e;
}

table.comparison td.blue{
  color:#5496ee;
}

table.comparison td.orange{
  color:#fd9757;
}
@media screen and (max-width: 767px) {
  table.comparison th, table.comparison td{
    display:table-cell;
    font-weight: 400;
    font-size: 13px;
    padding:.75em .25em;
  }

  span.table-min{
    font-size: 10px;
    margin-top: 30px;
  }

  table.comparison th{
    width:25%;
  }

  table.comparison td{
    width:25%;
  }

  table.comparison td.big{
    font-size: 40px;
  }

  table.comparison td.middle{
    font-size: 22px;
  }

  table.comparison td.big-sp{
    font-size: 22px;
  }

  table.comparison td.middle-sp{
    font-size: 18px;
    line-height: 1.35;
  }

}

/*******************************

実績

*********************************************/

section#achivement{
  background: url(../images/achivement__bg.webp)no-repeat center center;
  background-size: cover;
}

section#flow{
  background:#fff;
}


section#achivement .slider-img{
  border:1px solid #ddd;
}

.step_slider .slick-track{
  padding:1em 0;
}
.slick-slider{
  margin-bottom:0;
}

.slick-list {
  overflow: hidden !important;
}

button.slick-next:hover, button.slick-prev:hover{
  background:transparent !important;
}


.slider .slick-slide, .slider-youtuber .slick-slide{
  background:#fff;
  margin:0 5px;
  position: relative;
}


.ac-thumbnail{
   margin-bottom:.5em;
   max-width: 100%;
}


.slider .slick-slide .title, .slider-youtuber .slick-slide .title{
  padding:1em;
  font-size: var(--size_22);
  font-weight: 500;
  text-align: center;
  width: 100%;
  color:#fff;
  line-height: 1.55;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.slider-youtuber .slick-slide .title{
  padding: 1em .5em;
}

.slider-youtuber .slick-slide .title img{
  display: inline !important;
}

.achivement .slick-initialized .slick-slide{
  display:flex;
  flex-direction: column;
  justify-content: space-between;
}

.slider .slick-slide .Text, .slider-youtuber .slick-slide .Text{
  width:100%;
  padding:0;
  font-size: calc(var(--size_24));
  line-height:1.35;
  font-weight: 700;
  text-align: center;
}

.slider-youtuber .slick-slide .Text{
  font-size: calc(var(--size_24) / 1.5);
  margin-top: 1em;
}

.slider .slick-slide .Text__bottom, .slider-youtuber .slick-slide .Text__bottom{
  color:#ee0000;
  line-height: 1.55;
  padding:.75em;
}

.slider .slick-slide .Text span, .slider-youtuber .slick-slide .Text span{
  font-size: calc(var(--size_30) * 1.15);
  font-weight: 900;
  line-height:1.25;
  display: inline-block;
}

.slider .slick-slide .Text span.orange, .slider-youtuber .slick-slide .Text span.orange{
  line-height:1.5;
  font-size: var(--size_30);
}

.slider .slick-slide{
 padding:var(--row-space);
 text-align: center;
 font-size: 1.4rem;
 font-weight: 700;
 box-shadow: 0px 0px 15px -9px #777777;
 margin:.5em;
 border-radius: 1.46em;
}

.slider > div span{
  color:#ee0000;
}


.slick-arrow:before{
	content:""!important;
}
.slick-prev {
  left: 0px;
}

.slick-next:before{
  width:45px;
  height:45px;
  display:block;
}

.slick-prev:before{
  width:45px;
  height:45px;
  display:block;
}

.slider li .thumbnail img{
 background: var(--lightblue);
 padding:7px;
border:5px solid var(--Black)
}

h3.acheve__title{
  padding-bottom:.5em;
  font-size: var(--text2);
  font-weight:600;
  margin-bottom:1em;
  border-bottom:10px solid var(--Yellow);
}

span.name{
  background:linear-gradient(transparent 60%, var(--lightblue) 60%);
  font-weight:bold;
  display: inline-block;
  font-size:17px;
}

p.detail{
  background: #f9f9f9;
  padding: var(--space);
  border-radius:0.56em;
  font-size:0.9rem;
}

@media screen and (max-width: 767px) {
 
  .text__wh__bg{
      border:5px solid #fff;
  }

  .slider li .thumbnail, .slider li .Text{
     width:100%;
  }
  .slider li .thumbnail{
    margin:0 auto 1em;
    width:80%;
  }

  ul.price{
    margin-bottom:1em;
  }

  .slider .slick-slide .Text, .slider-youtuber .slick-slide .Text{
    font-size: 1.25rem;
  }

  .slider .slick-slide .Text span, .slider-youtuber .slick-slide .Text span{
    font-size: calc(var(--size_30) * 1.05);
  }

}

/*******************************

お客様の声

*********************************************/

.review__wrap{
  border:6px solid #ff9806;
  padding: 2em;
  background: #fff;
  margin-top: var(--row-space);
}

.review__wrap .Icon{
  padding: .25em;
  line-height: 1.0;
  background: #00a0db;
  color: #fff;
  text-align: center;
  display: block;
  max-width: 150px;
  font-size: 1.4rem;
}

.review__wrap .Inner__wrap{
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.review__wrap .title{
  position: relative;
  padding-bottom: .5em;
  font-size: 1.35rem;
  font-weight: bold;
}
.review__wrap .title:after{
  content: '';
  position: relative;
  display: block;
  height: 10px;
  width: 100%;
  margin-top: .5em;
background: url(../images/stripe.png);

}


.review__wrap .Inner__wrap .Image{
  min-width:150px;
  margin-right: 1em;
}

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

  .review__wrap .Inner__wrap{
    flex-wrap: wrap;
    flex-direction: column;
  }
  .review__wrap .Inner__wrap .Image {
    min-width: 100px;
    margin: 1em auto 1em;
}
.review__wrap{
  padding: .75em;
}
}

/*******************************

よくある質問

*********************************************/

section#faq {
  background: url(../images/faq_bg.jpg)no-repeat center bottom #d4edff;
}

.menu__item {
  cursor: pointer;
  display: block;
  margin-bottom: 1.5em;
  margin-left:0 !important;
  color:#151515;
  margin-left:2em;
}

.course__title{
 padding:.9em;
 position:relative;
 border:none;
}

.menu__item__link {
  padding: 0;
  position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap:wrap;
  justify-content:space-between;
 align-items:center;
 background:#000;
 color:#fff;
 text-decoration: none;
}

.menu__item__link.faq_wrap{
  background: #27b3c4;
  background: -moz-linear-gradient(left, #27b3c4 38%, #00a0db 99%);
  background: -webkit-linear-gradient(left, #27b3c4 38%,#00a0db 99%);
  background: linear-gradient(to right, #27b3c4 38%,#00a0db 99%);
  
  
}

.menu_item_wrap{
 width:calc(100% - 60px);
    display: flex;
    flex-direction: row;
    flex-wrap:wrap;
  justify-content:space-between;
 align-items:center;
 }

.flex_items_center{
 align-items:center;
 padding:.5em 0;
}

.menu__item__link:after {
  content: '＋';
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content:center;
    align-items: center;
  font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif !important;
  right: 0;
  text-align: center;
  width: 60px;
  height: 60px;
  color:#fff;
  font-size:30px;
}

.menu__item__link.on:after {
  content: '－';
}

ul.menu, ul.menu li{
 list-style:none;
 padding:0;
}

#sec--01 ul.menu{
 margin-bottom:0;
}

ul.menu{
 margin-bottom:1px;
 margin-left:0;
}

ul.submenu{
 list-style:none;
 margin-bottom:0;
 margin-top: 0;
 padding:.25em .5em .75em;
 margin-left:0;
 background:#fafaf9;
}

.service__cont .submenu{
  background: #fff;
}

.course__title ul.submenu{
 padding-left:0;
}

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

.menu__item__link div.sec-wrap{
 padding:0 1em 0 0;
 font-weight:normal;
 font-size:1.3rem;
 width:calc(100% - 60px);
 line-height:1.6;
}

.menu__item__link div.sec-wrap div{
  display:flex;
 text-align:left;
 line-height:1.5;
 align-items:center;
 flex-direction: row;
 position:relative;
 padding:.5em;
 }


.menu__item__link div.sec-wrap div.center{
 align-items:center;
}

.menu__item__link div.sec-wrap div:before{
  content:'Q';
  width: 50px;
  height: 50px;
  text-align: center;
  font-size: calc(var(--size_30) * 1.2);
  font-family: 'Zen Old Mincho', serif;
  font-weight:600;
  margin-right:.5em;
  line-height:1.0;
 }

.menu__item__link div.sec-wrap div.top:before{
  margin-top:-10px
 }

.sec-wrap-anther{
   display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content:flex-start;
  padding-top:1.25em;
  padding-left:40px;
  position:relative;
}

.anther-center{
 align-items:center;
 }

.sec-wrap-anther div{
 text-align:left;
 line-height:1.5;
 width:100%;
 color:#565656;
 padding: var(--space);
 background:#fff;
 }

.sec-wrap-anther div p:last-child{
 margin-bottom:0;
}

.sec-wrap-anther p{
 font-size:1.1rem;
}

.sec-wrap-anther:before{
  content:'';
  background: url(../images/a-icon.svg)no-repeat;
  background-size:contain;
  width:40px;
  height:40px;
  position:absolute;
  top:15px;
  left:10px;
 }

.submenu {
  display: none;
}
.submenu__item {
  padding: 0 !important;
  margin:0;
  min-height:50px;
}

.cta_wrap{
 border-top:1px solid #cec6ba;
 border-bottom:1px solid #cec6ba;
 background:#fff;
 padding:2em .5em;
}


/***********

SP

***********************/

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

 .menu__item__link div.sec-wrap{
	 font-size:1.15rem;
	}

	.menu__item__link div.sec-wrap{
	 font-size:1.1rem;
	 width: calc(100% - 30px);
	}

	.menu__item__link div.sec-wrap div:before {
	    display: block;
	    font-size: 24px;
	}

.menu__item__link div.sec-wrap div{
	 align-items:center;
	}

	.menu__item__link div.sec-wrap div.center{
	 align-items:center;
	}

  .menu__item__link div.sec-wrap div:before{

    min-width: 40px;
    min-height: 40px;
    max-width: 40px;
    max-height: 40px;
    line-height:30px;
   }

   .menu__item{
    margin-left:0;
   }

	ul.submenu{
	 padding-left:0;
	}

	.submenu__item {
	    padding: .9rem 0 !important;
	}

	.submenu__item{
	 padding-top:0 !important;
	}
	.menu__item__link:after{
	 font-size: 20px;
	 width:30px;
   right:5px;
	}

	.sec-wrap-anther{
	 font-size:1.0rem;
	 padding-left:35px;
	}

	.sec-wrap-anther p{
		 line-height:1.55;
	}

	.sec-wrap-anther:before {
	    width: 40px;
	    height: 40px;
	    top: 15px;
	    left: 0px;
	}

}

/*******************************

流れ

*********************************************/

.step__wrap{
  margin-bottom: var(--s2-space);  
}

.step__wrap .title{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  font-size: var(--h3);
  font-weight: bold;
}

.step__wrap .title span{
  display: inline-block;
  margin-right: .5em;
}

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

  .step__wrap .title span{
    max-width: 70px;
  }
  .step__wrap p{
    text-align: left !important;
  }
}

/*******************************

お問い合わせ

*********************************************/

form{
  margin-bottom:0;
}

.contact__wrap{
 background:rgba(255,255,255,0.48);
 border-radius: .86em;
 border:4px solid #fff;
 padding: var(--s2);
}

.wpcf7 .wpcf7-submit:disabled{
  -moz-appearance: none;
  color: #fff;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  -moz-transition: background-color .2s ease-in-out, color .2s ease-in-out;
  -webkit-transition: background-color .2s ease-in-out, color .2s ease-in-out;
  -ms-transition: background-color .2s ease-in-out, color .2s ease-in-out;
  transition: background-color .2s ease-in-out, color .2s ease-in-out;
  background-color: #04be00 !important;
  border-radius:1.86em;
  border: 4px solid #000;
  cursor: pointer;
  font-weight: 600;
  padding:.75em 2em;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  height:auto;
  line-height:1.0;
  display:block;
  width:100%;
  font-size:32px !important;
  max-width:700px;
  letter-spacing: .1em;
  margin-left: auto;
  margin-right: auto;
}

input[type="submit"]{
  border-radius:1.86em;
  border: 4px solid #000;
  -moz-transition: background-color .2s ease-in-out, color .2s ease-in-out;
  -webkit-transition: background-color .2s ease-in-out, color .2s ease-in-out;
  -ms-transition: background-color .2s ease-in-out, color .2s ease-in-out;
  transition: background-color .2s ease-in-out, color .2s ease-in-out;
  background-color: #04be00 !important;
  font-weight: 600;
  padding:.75em 2em;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  height:auto;
  line-height:1.0;
  display:block;
  width:100%;
  font-size:32px !important;
  color:#fff;
  margin-left:auto;
  margin-right: auto;
  max-width:700px;
  letter-spacing: .1em;
}

input[type=radio], input[type=checkbox] {
  -moz-appearance: auto;
  -ms-appearance: auto;
  appearance: auto;
  display: inline-block;
  margin-right: 0;
  opacity: 1;
  width: 22px;
  z-index: 0;
  height: 22px;
  position: relative;
  top: 4px;
  float:none;
}

input[type=radio]+label, input[type=checkbox]+label {
  text-decoration: none;
  color: #000;
  cursor: pointer;
  display: inline-block;
  font-size: 17px;
  font-weight: 400;
  padding-left: 0.3em;
  padding-right: 0.5em;
  position: relative;
  margin: 0;
}

input[type=text], input[type=password], input[type=email], select{
height:auto;

}

span.wpcf7-list-item label{
  margin-bottom:0;
  font-size:1.0rem;
  font-weight:400;
}

.txt_red p{
  text-align:center !important;
}

p.error_messe{
 color:#ed5521;
}

a.download{
  width:100%;
  font-size:32px;
  max-width:700px;
  background:#ed5521;
  line-height:1.0;
  display:block;
  width:100%;
  font-size:32px;
  max-width:700px;
  letter-spacing: .1em;
  margin-left: auto;
  margin-right: auto;
  margin-bottom:1em;
  font-weight: 600;
  padding:.75em 2em;
  border-radius:1.86em;
  border: 4px solid #000;
  color:#fff;
  text-align: center;
}

input[type=text], input[type=password], input[type=email], input[type=tel], select, textarea{
  border: 3px solid #000;
  padding:1em;
  font-size:17px;
}

table{
  border-top:2px solid #ddd;
  margin:0 auto 2em;
}

table th{
  font-size: 17px;
  padding: 1em;
  border-bottom:1px solid #ddd;
  text-align: center;
  font-weight:600;
}

table.formTable{
  border-top:1px solid #ddd;
}

table th div{
  font-weight: 700;
}

table td{
  font-size: 17px;
  padding: 1em;
  border-bottom:1px solid #ddd;
  text-align: left;
}

.require {
  background: #e10900;
  display: inline-block;
  margin-left: 10px;
  border-radius: 0.95em;
  background: #e10900;
  color: #fff;
  text-align: center;
  padding: 5px 10px;
  font-size: 0.9rem;
  line-height: 1.0;
}

.red{
  color:#e10900;
}

.Tel-wrap p{
margin-bottom:.35em;
}

.Tel-wrap p a{
  text-decoration:none;
  font-family: 'Lato', sans-serif;
  font-weight:900;
}

.Tel-contact{
  font-size:40px;
  font-weight:700;
  line-height:1.0;
}

.Tel-contact::before{
  content:'';
  width:45px;
  height:30px;
  background:url(../images/seo-lp/free-dial.svg)no-repeat left center;
  display: inline-block;
  margin-right: 5px;
}

footer{
  background: #000;
  padding: 1em var(--row-space) 120px;
  color: #fff;
  margin-top:0;
}

footer.page{
  padding-bottom:var(--s3);
}

/***********

SP

***********************/

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

  .staff__wrap .flex__box{
    flex-direction: column;
  }

  .staff__wrap .Image{
    max-width: 70%;
  }

  .flex__box + .flex__box{
    margin-top: var(--col-space);
  }

  .staff__wrap .Inner__wrap .title{
    line-height: 1.455;
  }

  table th, table td{
    font-size:16px;
    display:block;
    width:100%;
  }

  table td{
    padding:1em 0;
  }

  table th{
    background: #edf0f7;
  }

  input[type=submit], a.download{
    font-size:18px !important;
  }

  input[type=radio]+label, input[type=checkbox]+label{
    font-size:15px;
  }

  a.download{
    padding: 0.75em .55em;
  }

  .Tel-contact{
    font-size:28px;
  }

  .Tel-contact::before {
    content: '';
    width: 25px;
    height: 20px;
}

}

footer ul{
  list-style: none;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
justify-content:center;
  margin:auto;
}

footer ul li{
  margin:0 ; 
}

footer ul li a{
  color:#fff;
  display:inline-block;
  padding:0;
  text-decoration: none;
}

footer ul li a:hover{
 text-decoration: none;
 color: #fff;
}

footer .copy{
  font-weight:300;
  font-size:13px;
  text-align:center;
}

/************ 追従フッター *************/

.Bnr{
  position: relative;
  margin: 0 auto;
  width:100%;
  display: none;
}

.Bnr .Bnr__img{
  position: fixed;
  bottom:0;
 width:100%;
 z-index: 999999;
 background:#fff;
 padding:.35em .75em;
 min-height: auto;
}

.Bnr__img__inner{
  box-sizing:border-box;
  padding: 15px 10px 10px 10px;
  max-width:1000px;
  margin:auto;
}

.Bnr .Bnr__img p.close{
  position: absolute;
  right: 20px;
  top:10px;
}
.Bnr .Bnr__img p.close a{
  display: block;
  width: 20px;
  height: 25px;
  text-align: center;
}
.Bnr .Bnr__img p.close a span{
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.Bnr .Bnr__img p.close a i{
  font-size: 22px;
  z-index: 888;
  color: #fff;
}

.Bnr__img__inner .Text_center{
 text-align:center;
 font-size:1.2rem;
 margin:0 auto 5px auto;
 color:#fff;
 padding:.2em;
 border:1px solid #fff;
 width:90%;
 max-width:400px;
}

.Bnr .Bnr__img__inner p{
 color:#fff;
     font-weight: 700;
 margin-bottom:0;
font-family:'Noto Sans JP', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;

}

.bottom_menu_contents_wrap {
width: 100%;
margin: 0 auto;
 max-width:1000px;
box-shadow: 0px -2px 16px -7px rgba(0,0,0,0.09);
}

.bottom_menu_contents{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content:center;
  align-items:center;
}

.bottom_menu_contents a.Tel{
  font-size:34px;
  font-weight:900;
  line-height:1.0;
  text-align: center;
  font-family: 'Lato', sans-serif;
}

.bottom_menu_contents a.Tel span.time{
  font-size:11px;
  display:block;
  font-weight:400;
  margin-top:1em;
  text-align: center;
}

.bottom_menu_contents a.Tel::before{
  content:'';
  width:30px;
  height:30px;
  background:url(../images/phone.svg)no-repeat left center;
  display: inline-block;
  margin-right: 5px;
}

.bottom_menu_contents a {
display: block;
width:calc(100% / 3);
}

.bottom_menu_contents .btn_tel{
 font-size:1.7rem;
 padding:.55em .3em;
 }


.Bnr a{
 font-size:1.65rem;
 max-width:600px;
}

/***********

SP

***********************/

@media screen and (max-width: 767px) {
  .bottom_menu_contents a.Tel{
    font-size:15px;
  }

  .bottom_menu_contents{
    flex-wrap: nowrap;
  }

  .bottom_menu_contents a:first-child{
    width:80%;
    font-size: 18px !important;
    padding: .5em !important;
  }


	.footer_links li a{
	 text-align:center;
	 padding:.5em 1em;
	}

  .bottom_menu_contents a.Tel::before {
    content: '';
    width: 20px;
    height: 14px;
}

	.footer_links li a:after{
	 display:none;
	}

	.footer_links{
	 padding:0;
   margin-bottom:1em;
	}

	footer{
	 padding-bottom:90px;
   padding-top: var(--space);
   margin-top:0;
	}

 .Bnr .Bnr__img{
    padding: 0.35em;
  }

  .bottom_menu_contents a.Tel span.time{
    font-size:9px;
    margin-top:.5em;
  }

  .Bnr a{
    margin-left:2px;
    margin-right: 2px;
  }

}

.tabs, .tabs__price{
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.tab_item {
  width: calc(90%/2);
  background-color: #525050;
  font-size: 22px !important;
  text-align: center;
  padding:1.25em 1em 1em !important;
  border-top-right-radius:0;
  border-top-left-radius:0;
  color: #fff !important;
  display: block;
  text-align: center;
  font-weight: 700 !important;
  transition: all 0.2s ease;
  margin-bottom:0;
}

.tab_item.price{
  background-color: var(--Blue);
  font-size: 16px !important;
  width: calc(100%/5);
  border-radius: 0;
}

.tab_item:hover {
  opacity: 0.75;
}

.tab_content{
  width:100%;
}

.price_content{
  width:100%;
  background-color: #f5fbff;
  padding:1em var(--s3);
}

.price_content .title{
  padding:1em;
  background:var(--Blue);
  color: #fff;
	text-align:center;
  font-size:1.35rem;
  margin-bottom:.75em;
  font-weight: 700;
}

input[name="tab_item"] {
  display: none;
}

input[name="tab_price_item"] {
  display: none;
}

.tab_content {
  display: none;
  clear: both;
  overflow: hidden;
}

.tabs__price .tab_content{
	display:block;
}

#contact:checked ~ #contact_content,
#filedate:checked ~ #filedate_content {
  display: block;
}

#lp:checked ~ #lp_content,
#ec:checked ~ #ec_content,
#recruit:checked ~ #recruit_content,
#btob:checked ~ #btob_content,
#corporate:checked ~ #corporate_content {
  display: block;
}

dl.price{
  border:1px solid #3c5ea2;
  background:#fff;
  margin:0 auto 1em;
  display: flex;
  font-size: 1.1rem;
	width:100%;
}

dl.price dt{
  background:#e7ebf5;
  padding:.5em;
  text-align: center;
  color:var(--Blue);
}

dl.price dd{
  background: #fff;
  padding:.5em;
}

dl.price dt, dl.price dd{
  margin:0;
}

div.spec{
  width:100%;
}

dl.spec{
  margin:0;
  display: flex;
  font-size: 1.1rem;
  width:100%;
}

dl.spec dt{
padding:.5em;
background:#e7ebf5;
text-align:center;
width:30%;
}

dl.spec dd{
  padding:.5em;
  background:#fff;
  text-align:center;
  width:70%;
  }

  dl.spec dt, dl.spec dd{
    margin:0;
  }

.tabs input:checked + .tab_item {
  background-color: var(--Orange);
  color: #fff;
}

.tabs__price input:checked + .tab_item.price {
  background-color: #f5fbff;
  color: var(--Blue) !important;  
}

.tabs input[type=radio]+label:before, .tabs input[type=radio]:checked+label:before{
  display:none;
}

.tabs__price input[type=radio]+label:before, .tabs__price input[type=radio]:checked+label:before{
  display:none;
}


.bg--gray{
  border:5px solid #ddd;
  padding:1em;
  margin-bottom:1em;
 }
 
 .bg--gray ul{
  margin-left:2em;
  margin-bottom:0;
 padding:0;
 }
 
 .bg--gray ul li:not(:last-child){
   margin-bottom:0;
 }

 footer ul li{
  padding-left:0;
 }

 footer ul li:first-child a::after{
 content:'|';
 padding:0 1em;
 letter-spacing: 1px;
 }

@media screen and (max-width: 767px) {
  .tab_item{
    font-size:16px !important;
    padding:1em .55em !important;
  }

  p.middle{
    font-size:1.25rem;
  }

  p.big {
      font-size: 1.55rem;
  }

  .wpcf7 .wpcf7-submit:disabled{
    font-size:18px !important;
  }

  input[type=text], input[type=password], input[type=email], input[type=tel], select, textarea{
    max-height:300px;
  }

  .tab_item.price{
    font-size: 14px !important;
    width: calc(100%/2);
    border:1px solid #fff;
  }

  div.spec{
    max-width:100%;
  }

  dl.spec{
    font-size:0.8rem;
  }

  dl.spec dt{
    width:50%;
  }

  dl.price{
    font-size:1.0rem;
    width:100%;
    margin-bottom:.5em;
  }

}

.accordion_container {
  max-width: 100%;
  margin: 0 auto;
}
.accordion_title {
  background-color: #4682b4;
  color: #fff;
  font-size: 26px;
  font-weight: bold;
  padding: 20px 5%;
  text-align: left;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition-duration: 0.2s;
}
.accordion_container:nth-of-type(2) .accordion_title {
    background-color: #4682b4;
}
.accordion_container:nth-of-type(3) .accordion_title {
    background-color: #4682b4;
} 
.accordion_title:hover {
  opacity: 0.8;
}
.icon_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 5%;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  box-sizing: border-box;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
}
.icon {
  display: block;
  width: 18px;
  height: 18px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  position: relative;
}
.accordion_title.open 
.icon_wrap {
  -webkit-transform: rotate(-360deg);
  transform: rotate(-360deg);
}
.icon:before, .icon:after {
  display: flex;
  content: '';
  background-color: #fff;
  border-radius: 10px;
  width: 18px;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 0;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  transform-origin: center center;
}
.icon:before {
  width: 4px;
  height: 18px;
  top: 0;
  left: 7px;
}
.accordion_title.open 
.icon_wrap .icon:before {
  content: none;
}
.accordion_title.open 
.icon_wrap .icon:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.accordion_inner {
  display: none;
  padding: 20px 20px;
  border-left: 2px solid #4682b4;
  border-right: 2px solid #4682b4;
  border-bottom: 2px solid #4682b4;
  box-sizing: border-box;
}

.ac_inner_wraper {
  height: auto;
}
p.txt_a_ac {
  margin: 0;
}
@media screen and (max-width: 1024px) {
  .accordion_title {
    font-size: 18px;
  }
  .icon_wrap {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
}
@media screen and (max-width: 767px) {
  .accordion_title {
    font-size: 16px;
    text-align: left;
    padding: 15px 60px 15px 15px;
  }
}

.strength{
  border: 8px solid var(--Orange);
  background: #faffd0;
  padding: clamp(1em,2vw,2.2vw);
  text-align: center;
  font-size: clamp(1.2rem,1.4rem,1.5rem);
  color:var(--Orange);
  margin: 0 auto 1em;
  font-weight: bold;
  position: relative;
}

.strength:after{
  content: '';
  position: absolute;
  right:0;
  bottom:0;
  width: 0;
height: 0;
border-style: solid;
border-color: transparent transparent var(--Orange) transparent;
border-width: 0px 0px 24px 24px;
}

.flex__box .Hurf:nth-of-type(n+3){
  margin-top: var(--row-space);
}
.flex__box .Hurf.center{
  margin-left: auto;
  margin-right: auto;
}

/*******************************

流れ

*********************************************/

section#achivement{
  background: #f7fffc;
  background-size: cover;
}

section#achivement .slider-img{
  border:1px solid #ddd;
}

.step_slider .slick-track{
  padding:1em 0;
}

.flow__wrap{
  background-color:#59afe9;
  padding:4px !important; 
  border-radius: 1.46em;
  position: relative;
  display: flex;
  margin:0 6px;
}

.flow__wrap .Inner__wrap{
  padding:1em .5em;
  background:#fff;
  border-radius: 1.46em;
  height:100%;
  position: relative;
  z-index:0;
}

.flow__wrap:last-child::after{
  display:none;
}

.flow__wrap .title{
  text-align: center;
  font-weight: 600;
  font-size:clamp(1.15rem,1.25rem,1.3rem);
  min-height:80px;
  line-height: 1.45;
  margin-top:2.75em;
}


.flow__wrap .Icon{
  width:60px;
  height:60px;
  line-height:65px;
  border-radius: 50%;
  text-align: center;
  background:#000;
  position:relative;
  color:#fff;
  z-index:5;
  counter-increment: number 1;
  content: "" counter(number) "";
  font-size:40px;
  font-family: var(--en);
  font-weight: 700;
  position:absolute;
  top:-.3em;
  left:-2px;
}

.slick-arrow:before{
	content:"" !important;
}

.slick-arrow {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  padding: 0;
  width: 20px;
  height: 38px;
  color: transparent;
  z-index: 1;
  transition: opacity 0.5s;
  z-index: 1;
}
.slick-arrow:hover {
  opacity: 0.7;
}

/* 共通設定 */

.slick-next::before,
.slick-next::after,
.slick-prev::before,
.slick-prev::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.slick-next::before,
.slick-prev::before {
  width: 36px;
  height: 1px;
  background: #000;
}
.slick-next::after,
.slick-prev::after {
  width: 26px;
  height: 26px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
}

/* next */

.slick-next {
  right: -23px;
}
.slick-next::before {
  right: 0;
}
.slick-next::after {
  right: 4px;
  transform: rotate(45deg);
}

/* prev */

.slick-prev {
  left: -23px;
}
.slick-prev::before {
  left: 0;
}
.slick-prev::after {
  left: 4px;
  transform: rotate(-135deg);
}

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


  .slick-next {
    right: 8px;
  }
  .slick-prev {
    left: 8px;
  }
  .slick-prev::before {
    left: 2px;
  }
  .slick-next::after {
    right: 2px;
  }
}

.slick-track {
  display: flex;
}
.slick-slide {
  height: auto !important;
}

.flow__wrap .Image{
  max-width:120px;
  margin:.5em auto 1em;
  text-align: center;
  min-height:116px;
  align-items: center;
  display: flex;
}

.flow__wrap .Image img{
  margin:auto;
}

button:focus{
  background: transparent !important;
}

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

  .flow__wrap .title{
    min-height:auto;
    font-size: var(--size_30);
  }

  section#flow .flex__box .three, .flex__box .three{
    width:100%;
  }

  .flow__wrap::after{
    top: 97%;
    transform: translateY(-97%);
    transform: translateX(-47%);
    left:47%;
    transform:rotate(90deg);
  }

  .flow__wrap:last-child{
    margin-bottom:0;
  }
  section#flow p.Center{
    text-align: left;
  }

}
