@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@400;700;800&display=swap');
/* ----------------------------------------
	common
---------------------------------------- */
html, body {
  margin: 0;
  padding: 0;
}
* {
  box-sizing: border-box;
}
body {
font-size:13px;
font-family: 'M PLUS 1p', sans-serif;
color:#333333;
font-weight: 500;
line-height:1.7;
background-color: #EEE8DA;
min-width: 1200px;
}

img {
	width:auto;
	max-width: 100%;
	height: auto;
	display: block; //ブロック要素化
	margin: 0 auto; //中央寄せ
}

a {text-decoration:none;}

a:hover {
	text-decoration: transparent;
	opacity: 0.7;
}
a:hover img{
	opacity: 0.7;
}

.pc_area { display: block !important; }
.sp_area { display: none !important; }

.sp_area2 { display: none !important; }
@media only screen and (max-width: 750px) {
	.pc_area { display: none !important; }
	.sp_area { display: block !important; }
	.sp_area-2 { display: block !important; }
	body {
	min-width: inherit;
	min-width: unset;
	}
}

@media only screen and (max-width: 500px) {
	.sp_area2 { display: none !important; }
}

.row { margin: 0; padding: 0 ; width: auto; overflow: hidden;}
.row02 { margin: 0; padding: 0 ; width: auto;  }

@media (min-width: 750px){
	.row {
		max-width: 1100px;
		margin: 0 auto;
		padding: 0;
	}
	.row02 {
		max-width: 1100px;
		margin: 0 auto;
		padding: 0;
	}
}

/* ----------------------------------------
	header-nemu
---------------------------------------- */

/* pc */
.inner {
	width: 1100px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
  padding: 0;
}

.head__flex{
	display: flex;
	box-sizing: border-box;
	justify-content: space-between;
}
.head__logo{
	padding: 30px 0 30px 0;
}

.head__line{
	padding: 15px;
}
.head__snsbox{
	display: flex;
}
.head__snsbox a{
	margin: 0 10px 0 0;
	box-sizing: border-box;
}
#top-head {
    position: absolute;
    width: 100%;
    margin: 0 auto 0;
    padding: 0 0 0 0;
    line-height: 1;
    z-index: 999;
    height: 45px;
    top: 0;
    border-bottom: 0 solid #ffffff;
    background-color: transparent;
}
#top-head a,
#top-head {
    text-decoration: none;
}

#top-head a:hover {
	transition: 1.0s ;
}
/* Fixed */
#top-head.fixed #mobile-head{
	position: fixed;
	 top: 0px;
	left: 0;
	width: 1100px;
	margin: 0 calc(50vw - 550px);
	}
#nav-toggle {
    display: block;
    position: absolute;
		right: -80px;
		top: 0px;
		width: 80px;
		height: 80px;
		cursor: pointer;
		z-index: 101;
		border-radius: 4px;
		padding: 15px 0 15px 0;
}
#nav-toggle div {
		width:80px;
		height: 80px;
		background-image:url(../image/menu_btn_han.svg);
		background-size: 100% 100%;
}
/* #nav-toggle 切り替えアニメーション */
.open #nav-toggle div {
    background-image:url(../image/menu_btn_batu.svg);
    background-size: 100% 100%;
}
/* #global-nav スライドアニメーション */
.open #global-nav {
  opacity: 1;
  display: block;
  height: auto;
}

    /* Fixed reset */
    #top-head.fixed .logo,
    #top-head .logo {
        position: absolute;
        top: 10px;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        max-width: 200px;
        width: 200px;
        height:auto;
    }
    #global-nav {
        position: absolute;
		    opacity: 0;
				display: none;
				height: 0;
        background: #fff;
        max-width: 260px;
				padding: 20px;
				right: -100px;
				top:130px;
				font-size: 18px;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
		#global-nav:after{
		  content: "";
		  position: absolute;
		  right: 0;
		  top: -24px;
		  width: 0px;
		  height: 0px;
		  margin: 0 30px 0 auto  ;
		  border-style: solid;
		  border-color: #fff transparent;
		  border-width:0 20px 25px 20px;
		}
    #global-nav ul {
        list-style: none;
        position: static;
        right: 0;
        bottom: 0;
        display: block;
    }
	#global-nav li a {
			padding: 0 0 15px 0;
			text-decoration: underline;
      color:#333333;

	}
	#global-nav li {
			padding: 0 0 15px 0;
	}
	#global-nav li a:hover::after {
	  bottom: 2px;
	  opacity: 1;
	  visibility: visible;
	}
/*　header */
.head__content{
	position: relative;
	background-image:url(../image/h_bg.svg);
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: bottom;
	height: calc(100vh - 50px);
  min-height: 700px;
}
.top-contentbox{
	padding: 190px 50px 30px 0;
	width:100%;
	height: calc(100vh - 50px);
  min-height: 700px;
	font-size: 16px;
	position: relative;
	z-index: 1;
}
.top-contentbox__text{
	padding: 50px 0 0 0;
	font-size: 16px;
  line-height: 1.4;
}
.top-contentbox__text span{
	font-size: 12px;
}
.top-contentbox__ttl{
	z-index: 2;
}
.top-contentbox__tel{
	padding: 30px 0 0 0;
  position: relative;
}
.top-contentbox__tel a{
	display: inline-block;
}
.top-contentbox__fukidasi{
	position: absolute;
	bottom:0;
	left:350px;
}
.top-contentbox02{
	position: absolute;
	top:270px;
	width:100%;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
}
.scroll__box{
	padding: 10px;
	margin-top: -30px;
	z-index: 9;
	position: relative;
}
.scroll__box a{
	left: 50%;
	transform: translate(-50%, 0);
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	position: absolute;
}
.top-contentbox__news{
	font-size: 16px;
	padding: 60px 0;
	max-width: 500px;
	width: 100%;
}
.top-contentbox__tag{
	width: 100%;
	border-bottom: solid 1px #333333;
}
.top-contentbox__tag span{
	width: 70px;
	display: inline-block;
}
@media (max-width: 1200px){
  #top-head.fixed #mobile-head {
    top: 0px;
    margin: 0;
    width: 100%;
  }
  #top-head.fixed #nav-toggle {
    right: 10px;
    top: 0px;
  }
  #top-head.fixed #global-nav {
    right: 10px;

  }
}
@media screen and (max-width: 750px) {
	header{
		height: auto;
	}
	.head__logo{
		padding: 10px 10px;
	}
	.head__logo img {
	    width: auto;
	    max-width: 75%;
	}
	.inner {
		width: auto;
	}
	#global-nav ul li a{
		font-size: 16px;
	}
	#nav-toggle{
		top: 0;
		right: 5px;
	    width: 60px;
	    height: 60px;
			padding: 5px 0 15px 0;
	}
	#nav-toggle div {
    width: 60px;
    height: 60px;
    background-image: url(../image/menu_btn_han.svg);
    background-size: 100% 100%;
}
	#top-head{
		display: block;
		position: absolute;
		height: 75px;
	}
	.top-contentbox{
		display: flex;
		flex-wrap: wrap;
		padding: 70px 10px 30px 10px;
		overflow: hidden;
		height: auto;
	}
	.top-contentbox02{
		display: none;
	}
	.top-contentbox__text{
		padding: 20px 0 0 0;
	}
	.head__bg {
		min-width: unset;
		margin: 0;
		width: 100%;
	}
	.head__content{
		background-image:url(../image/h_bg.svg);
		background-size: 100% auto;
		background-repeat: no-repeat;
		background-position: top 100vw right 0;
		height: auto;
	}
	#global-nav {
		right: 10px;
	}
	.open #global-nav {
    	top: 90px;
	}
  #global-nav:after {
    margin: 0 15px 0 auto;
    top: -19px;
    width: 0px;
    height: 0px;
    border-width: 0 16px 20px 16px;
  }
	.scroll__box{
		display: none;
	}
	.top-contentbox__ttl {
	  z-index: 2;
	  order: 3;
	  width: 100%;
	  box-sizing: border-box;
	}
	.top-contentbox__news{
	  order: 2;
	  padding: 40px 0 20px 0 ;
	}
	.top-contentbox__text{
	  order: 4;
	  width: 100%;
	  box-sizing: border-box;
	}
	.top-contentbox__tel{
	  order: 5;
	  width: 100%;
	  box-sizing: border-box;
	}
	.top-contentbox__tel a img{
	  width: 60vw;
	}
	.top-contentbox__fukidasi {
	  position: absolute;
	  bottom: 10px;
	  left: 62vw;
	  width: calc(30vw - 10px);
	}
  .head__snsbox a{
      width: 50px;
    }
  .head__snsbox a img{
    width: 100%
  }
}
@media screen and (max-width: 500px) {
	.nav-logo img{
		width: 200px;
	}
	.top-contentbox__news{
		font-size: 12px;
	}
	.top-contentbox__text{
		font-size: 14px;
	}
	.top-contentbox__text span{
		font-size: 10px;
	}
}
/* ----------------------------------------
	conslt
---------------------------------------- */
#conslt{
	padding: 100px 10px;
}
.conslt__box{
	max-width: 800px;
	width: 100%;
	border-radius: 0 30px 0 30px;
	background-color: #fff;
	padding: 0 30px;
	margin: 0 auto;
}
.conslt__box02{
	display: flex;
}
.conslt__ttl{
	border-bottom: solid 1px #333333;
}
.conslt__ttl img{
	margin: 0 auto;
	padding: 20px 0;
}
.conslt__tel{
	width: 50%;
	padding: 30px 15px 30px 0;
}
.conslt__line{
	width: 50%;
	padding: 30px 0 30px 15px;
}

@media screen and (max-width: 750px) {
	#conslt{
		padding: 50px 10px;
	}
	.conslt__tel{
		width: 50%;
		padding: 2vw 2% 2vw 0;
	}
	.conslt__line{
		width: 50%;
		padding: 2vw 0 2vw 2%;
	}
  .conslt__ttl img {
      margin: 0 auto;
      padding: 2vw 0;
  }

}
/* ----------------------------------------
	section1
---------------------------------------- */

#section01{
	padding: 100px 0 0 0;
}

.sec01__representative01{
	display: flex;
	background-image:url(../image/sec_01_bg.svg);
	background-size: auto auto;
	background-position: top right;
	background-repeat: no-repeat;
	padding: 40px 0;
}
.sec01__representative02{
	display: flex;
	padding: 50px 0;
}
.section1__box01{
	margin: 0 auto;
	display: flex;
}
.section1__ttl{
	width: 10%;
}
.section1__box02{
	width: 90%;
}
.section1__box02-ttl{
	font-size: 26px;
	padding: 20px 0 0 0;
}
.sec01__greeting-ttl{
		font-size: 26px;
		padding: 0px 0 10px 0;
}
.sec01__greeting-text{
	font-size: 15px;
}
.sec01__profile li{
	text-indent: -15px;
	margin: 0 0 0 15px;
	font-size: 15px;
}

.sec01__foto{
	width: 20%;
}
.sec01__profile{
	width: 80%;
}

.sec01__box03{
	background-image:url(../image/sec_01_youtube_bg.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	margin: 0 0;
	padding: 80px 20px 60px 20px;
}
.sec01__box04-ttl{
	font-size: 26px;
}
.sec01__box04{
	display: flex;
}
.sec01__box04-2{
	width:77%;
	font-size: 15px;
}
.sec01__box04-img{
	width: 23%;
	padding: 0 0 0 20px;
}
.sec01__box05{
	display: flex;
}
.sec01__box05{
	display: flex;
	padding: 15px 0;
	margin: 0 -10px;
}
.sec01__box05-img{
	padding: 10px;
	margin: 0 auto;
}
.sec01__youtube-btn{
	text-align: center;
	padding: 20px;
}
.sec01__youtube-btn a{
	background-color: #333333;
	color: #fff;
	border-radius: 30px;
	padding: 20px;
	width: 310px;
	text-align: center;
	display: inline-block;
	position: relative;
}
.sec01__youtube-btn a:after{
	content: " ";
	position: absolute;
	width: 17px;
	height: 14px;
	background-image: url(../image/btn_point01.svg);
	background-repeat: no-repeat;
  right: 25px;
  top: 24px;
}
.sec01__table{
	margin: 0 0 40px 0;
}
.sec01__table th{
	border-right:solid 1px #333333;
	padding: 0 10px 5px 0;
	text-align: left;
	font-size: 15px;
	min-width: 80px;
}
.sec01__table td{
	padding:  0 10px 0 10px;
	font-size: 15px;
}
@media screen and (max-width: 750px) {
	#section01{
		padding: 50px 10px 0 10px;
	}
	.section1__box01{
		display: block;
	}
	.section1__ttl{
		width: 100%;
		padding: 0 0 30px 0;
	}
	.section1__box02{
		width: 100%;
	}
	.sec01__foto{
		width: 100%;
	}
	.sec01__profile{
		width: 100%;
	}
	.sec01__profile li{
		font-size: 13px;
		line-height: 1.4;
		 display: block;
    text-indent: -13px;
    margin: 0 0 0 13px;
}
  .sec01__table th {
      font-size: 13px;
      min-width: 60px;
      padding: 0 3px 0 0;
  }
	.sec01__table td {
	    font-size: 13px;
      padding: 0 0 0 3px;
	}

	.section1__box02-ttl {
    font-size: 18px;
    padding: 10px 0 0 0;
		text-align: center;
	}
	.sec01__representative01{
		display: block;
    background-size: 60%;
    background-position: center bottom;
    background-position: bottom 300px right;
		padding: 20px 0;
	}
	.sec01__representative02{
		display: block;
		padding: 20px 0;
	}
	.sec01__foto{
    margin: 0 auto;
    width: 60%;
	}
	.sec01__greeting-ttl{
    font-size: 18px;
		text-align: center;
	}
	.sec01__greeting-text{
		font-size: 13px;
		line-height: 1.4;

	}
	.sec01__box03 {
    background-image: url(../image/sec_01_youtube_bg_sp.svg),url(../image/sec_01_youtube_bg_sp.svg);
    background-size: 100% , 100%;
		background-position: top, bottom;
    background-repeat: no-repeat;
    margin: 50px 0;
		padding: 30px 20px 60px 20px;
	}
	.sec01__box04-img {
    width: 60%;
    margin: 0 auto;
		padding: 20px;
	}
	.sec01__box04{
		width: 100%;
		display: block;
	}
	.sec01__box04-2{
		width: 100%;
		font-size: 13px;
		line-height: 1.4;
	}
	.sec01__box05{
		flex-wrap: wrap;
		margin: 0 -2px;
	}
	.sec01__box04-ttl {
    font-size: 18px;
		text-align: center;
	}
	.sec01__box05-img{
		width: 50%;
		padding:2px;
	}
	.sec01__box05-img img{
		width: 100%;
	}
	.sec01__youtube-btn a {
	    padding: 12px;
			width: 240px;
	   	font-size: 12px;
	}
	.sec01__youtube-btn a:after {
    content: " ";
    position: absolute;
    width: 17px;
    height: 14px;
    background-repeat: no-repeat;
    right: 13px;
  top: 18px;
  background-size: 14px;
}
}
/* ----------------------------------------
	section2
---------------------------------------- */

#section02{
	padding: 100px 0 0 0;
}
.section2__box01{
	display: flex;
	flex-direction: row-reverse;
}
.section2__ttl{
 	width: 10%;
}
.section2__ttl img{
	margin: 0 0 0 auto;
}
.section2__box01-2{
 	width: 90%;
}
.section2__box01-2_ttl{
	font-size: 20px;
	padding: 20px 0;
}
.section2__box01-2_text{
	padding: 0 0 20px 0;
	font-size: 15px;
}
.section2__box01-2_text span{
	color:#CEA72B;
}
.section2__box01-2_img{
	padding: 10px 0 40px 0;
}
.section2__box01-2_img02{
	padding: 10px 0 60px 0;
}
@media screen and (max-width: 750px) {
	#section02{
		padding: 50px 10px 0 10px;
	}
	.section2__box01{
		display: block;
	}
	.section2__ttl{
	 	width: 100%;
	}
	.section2__box01-2{
	 	width: 100%;
	}
	.section2__box01-2_ttl{
		font-size: 16px;
		line-height: 1.4;
	}
	.section2__box01-2_text{
		font-size: 13px;
		line-height: 1.4;
	}
  .section2__box01-2_img02{
  	padding: 10px 0 30px 0;
  }
}
/* ----------------------------------------
	section03
---------------------------------------- */
#section03{
	padding: 100px;
}
.section03__box01{
	margin: 0 auto;
	display: flex;
}
.section03__ttl{
	width: 15%;
}
.section03__box01-2{
	width: 60%;
  padding: 40px 0 0 0;
}
.section03__box01-3{
	width: 25%;
	position: sticky;
}
.section03__box01-3 img{
	position: sticky;
	top:0;
}
.section03__item-ttl{
	font-size: 26px;
  font-weight: 800;
}
.section03__item-text{
	font-size: 15px;
	margin: 0 0 25px 20px;
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: bottom;
		  background-image: url(../image/sec_03_sen.svg);
      line-height: 1.4;
}
.section03__item01,
.section03__item02,
.section03__item03,
.section03__item04,
.section03__item05,
.section03__item06,
.section03__item07,
.section03__item08{
	background-size: auto;
	background-repeat: no-repeat;
	background-position: top 10px right;
	max-width: 500px;
}
.section03__item01{
	  background-image: url(../image/sec_03_n01.svg);
}
.section03__item02{
	  background-image: url(../image/sec_03_n02.svg);
}
.section03__item03{
	  background-image: url(../image/sec_03_n03.svg);
}
.section03__item04{
	  background-image: url(../image/sec_03_n04.svg);
}
.section03__item05{
	  background-image: url(../image/sec_03_n05.svg);
}
.section03__item06{
	  background-image: url(../image/sec_03_n06.svg);
}
.section03__item07{
	  background-image: url(../image/sec_03_n07.svg);
}
.section03__item08{
	  background-image: url(../image/sec_03_n08.svg);
}


@media screen and (max-width: 750px) {
	#section03{
		padding: 50px 10px;
	}
	.section03__box01{
		display: block;
	}
	.section03__ttl{
	 	width: 100%;
	}
	.section03__box01-2{
	 	width: 100%;
    padding: 0
	}

	.section03__box01-3{
		width: 100%;
	}
	.section03__box01-3 img{
		margin: 30px auto;
		width:60%;
	}
	.section03__item-ttl{
		font-size: 16px;
	}
	.section03__item-text {
    font-size: 12px;
		line-height: 1.4;
        margin: 0 0 20px 15px;
  }
  .section03__item01{
    background-size: 10Vw;
  }
  .section03__item02,
  .section03__item03,
  .section03__item04,
  .section03__item05,
  .section03__item06,
  .section03__item07,
  .section03__item08 {
      background-size: 11Vw;
  }
}
@media screen and (max-width: 420px) {
  .section03__item-text {
    font-size: 11px;
    line-height: 1.4;
        margin: 0 0 10px 5px;
      }
}

/* ----------------------------------------
	section04
---------------------------------------- */

#section04{
	padding:0 0 40px 0;
}

.section04__flex > nav {
  position: sticky;
  top: 2rem;
  align-self: start;
}
.section04-nav {
  width: 18%;
}
.section04-nav a {
  text-decoration: none;
  display: block;
  padding: .125rem 0;
  color: #ccc;
}

.section04-nav a:hover {
  color: #666;
}

.section04__flex {
  display: flex;
}

.section04__step02 ul li{
	text-indent: -15px;
	margin: 0 15px 0 0 ;
}

.section04__img img{
	margin:40px auto  0;
}
.section04__txt01{
		font-size: 17px;
		line-height: 1.5;
		padding: 50px 0 30px;
}
	#section04 .tabBox .tab label {
	background-color: #FAD7D7;
	color: #FF0028;
}
 #section04 .tab-content {
	border-bottom: solid 1px #FF0028;
}
.section04__box01{
	display: flex;
	flex-direction: row-reverse;
}
.section04__ttl{
	width: 15%;
}
.section04__ttl img{
	margin: 0 0 0 auto;
}
.section04__box01-2ttl{
	font-size: 26px;
}
.section04__content{
	font-size: 15px;
	padding: 15px 0 50px 0;
}
.section04__box01-2{
	width: 85%;
}
.section04__nav-ul li a{
	background-image: url(../image/sec_04_pbg_off.svg);
	width: 132px;
	height: 132px;
	margin-bottom: 10px;
	background-repeat: no-repeat;
	text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  padding: 23px 0 0 0;
  color:#fff;
}
.section04__nav-ul li:nth-child(1) a,
.section04__nav-ul li:nth-child(4) a{
  padding: 32px 0 0 0;
}
.section04__nav-ul li a span{
  font-size: 12px;
  font-weight: 700;
}
.section04-nav li a:hover{
	opacity: 0.8;
}
.section04-nav li a.current {
	background-image: url(../image/sec_04_pbg_on.svg);
}
#section04__step01{
	background-image: url(../image/sec_04_step1.svg);
	padding:  110px 290px 0 10px;
    height: 400px;
    box-sizing: border-box;
    background-repeat: no-repeat;
}
.section04__step01-flex{
	display: flex;
	justify-content: space-between;
	padding: 0 0 10px 0;
}
.section04__step01-txt{
	font-size: 15px;
}

#section04__step02{
	background-image: url(../image/sec_04_step2.svg);
	padding: 110px 50px 0 250px;
    height: 300px;
    box-sizing: border-box;
    background-repeat: no-repeat;
}
.section04__step02-txt01{
	font-size: 15px;
}

#section04__step03{
	background-image: url(../image/sec_04_step3.svg);
	padding:  90px 290px 0 10px;
    height: 400px;
    box-sizing: border-box;
    background-repeat: no-repeat;
}
.section04__step03-txt{
	font-size: 15px;
	padding-bottom: 20px;
}


#section04__step04{
	background-image: url(../image/sec_04_step4.svg);
	padding: 110px 50px 0 250px;
    height: 450px;
    box-sizing: border-box;
    background-repeat: no-repeat;
}
.section04__step04-txt01{
	padding-bottom: 20px;
}

#section04__step05{
	background-image: url(../image/sec_04_step5.svg);
	padding:  110px 290px 0 10px;
    height: 400px;
    box-sizing: border-box;
    background-repeat: no-repeat;
}

@media screen and (max-width: 750px) {
	#section04{
		padding:0 10px 40px;
	}
	.section04__box01{
		display: block;
		width: 100%;
	}
	.section04__ttl{
		width: 100%;
	}
	.section04__box01-2{
		width: 100%;
	}
	.section04-nav{
		display: none;
	}
	.section04__box01-2ttl{
		font-size: 18px;
		padding: 30px 0 0 0;
	}
  .section04__content{
    font-size: 13px;
    line-height: 1.4;
  }
	#section04__step01{
		background-image: url(../image/sec_04_step1_sp.svg);
		background-size: 100%;
		padding:  calc(100vw * 0.15) 25vw 0 10px;
	    height: calc(100vw * 0.7);
	    box-sizing: border-box;
	    background-repeat: no-repeat;
	}
	#section04__step02{
		background-image: url(../image/sec_04_step2_sp.svg);
		background-size: 100%;
		padding:  calc(100vw * 0.135)  10px 0 32vw;
			height: calc(100vw * 0.7);
			box-sizing: border-box;
			background-repeat: no-repeat;
	}
	.section04__step01-img02{
		padding-left: 10px;
	}
	#section04__step03{
		background-image: url(../image/sec_04_step3_sp.svg);
		background-size: 100%;
		padding:  calc(100vw * 0.135)  32vw 0 10px;
			height: calc(100vw * 0.8);
			box-sizing: border-box;
			background-repeat: no-repeat;
	}
	#section04__step04{
		background-image: url(../image/sec_04_step4_sp.svg);
		background-size: 100%;
		padding:  calc(100vw * 0.135)  10px 0 33vw;
			height: calc(100vw * 1);
			box-sizing: border-box;
			background-repeat: no-repeat;
	}
	#section04__step05{
		background-image: url(../image/sec_04_step5_sp.svg);
		background-size: 100%;
		padding:  calc(100vw * 0.135)  32vw 0 10px;
			height: calc(100vw * 0.5);
			box-sizing: border-box;
			background-repeat: no-repeat;
	}
  .section04__step03-img01 img{
    width: 185px;
  }
  .section04__step03-img02 img{
    width: 218px;
  }
  .section04__step04-img01 img{
    width: 181px;
  }
  .section04__step04-img02 img{
    width: 201px;
  }
  .section04__step02-txt li{
			font-size: 13px;
			text-indent: -13px;
			margin: 0 0 0 13px;

  }
}
@media screen and (max-width: 500px) {
	.section04__box01{
		line-height: 1.4;
	}
	.section04__step01-txt01{
		  font-size: 13px;
	}
	.section04__step02-txt{
	    font-size: 13px;
	}
	.section04__step03-txt {
	    font-size: 13px;
	    padding-bottom: 20px;
	}
	.section04__step05-txt01{
	  font-size: 13px;
	}
}

/* ----------------------------------------
	section05
---------------------------------------- */

#section05{
	padding: 100px 0;
}
.section05__box01{
	display: flex;
}
.section05__ttl{
 	width: 15%;
	background-image: url(../image/sec_04_step5bg.svg), url(../image/sec_04_step5bg.svg);
	background-repeat: no-repeat;
	background-position: center left, bottom left;
}
.section05__box01-2{
 	width: 85%;
}
.section05__box01-2_text{
	padding: 30px 0 50px 0;
	font-size: 15px;
	max-width: 800px;
}
.section05__box01-2_text span{
	color:#CEA72B;
}
@media screen and (max-width: 750px) {
	#section05{
		padding: 50px 10px;
	}
	.section05__box01{
		display: block;
	}
	.section05__ttl{
	 	width: 100%;
	}
	.section05__box01-2{
	 	width: 100%;
	}
	.section05__ttl{
		background: none;
	}
	.section05__box01-2_text{
		font-size: 13px;
		line-height: 1.4;
	}
}


/* ----------------------------------------
	section6
---------------------------------------- */
#section06{
	padding: 50px 0;
	background-image:url(../image/sec_06_bg02_pc.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: bottom;
}
.section06__ttl img{
 margin: 0 auto;
 padding: 30px 0;
}
.section06__box01{
	background-image:url(../image/sec_06_bg_pc.svg);
	background-size: 100%;
	background-repeat: no-repeat;
	padding: 0 0 100px 300px;
	font-size: 15px;

}
.section06__content{
	padding: 0 0 50px 0;
	font-size: 15px;
}
.section06__flex01{
	display: flex;
	margin: 0 -5px 0 -5px;
}
.section06__flex02{
	display: flex;
	padding: 0 0 50px 300px;
	position: relative;
}
.section06__flex02 ul{
	width: 33%;
	font-size: 15px;
}
.section06__box01-list{
	display: flex;
  margin: 0 5px;
  background: #E0D8C4;
  color: #333333;
  font-size: 18px;
  width: 100%;
  justify-content: center;
}
.section06__img{
	position: absolute;
  left: 0;

}
@media screen and (min-width: 750px) {
  .section06__flex02 ul{
  	width: 33%;
  	font-size: 15px;
  	background-image:url(../image/sec_06_bg03.svg);
  	background-size: 40%;
  	background-repeat: no-repeat;
    background-position: bottom right 40px;
  }
}
@media screen and (max-width: 750px) {
	#section06{
		background-image:url(../image/sec_06_bg02_sp.svg);
		background-size: 100%;
		background-repeat: no-repeat;
		background-position: bottom;
		padding: 30px 10px;
	}

	.section06__box01{
		background-image:url(../image/sec_06_bg_sp.svg);
		background-size: 100%;
		background-repeat: no-repeat;
		padding: 10px 10px 60px 35vw;
		font-size: 15px;
		position: relative;
		min-height: 110vw;
	}
	.section06__flex01{
    display: block;
    position: absolute;
    top: calc((100vw - 20px) * 0.4);
    left: 20px;
    width: 28vw;
	}

	.section06__flex02{
    display: block;
		padding: 0  0 30px 43%;
	}
	.section06__flex02 ul li{
			font-size: 13px;
			text-indent: -15px;
			margin: 0 0 0 15px;
	}
	.section06__flex02 ul{
		width: auto;
    background-image: none;
	}
	.section06__box01-list{
		margin: 0 0 10px 0;
		font-size: 16px;
	}
	.section06__img {
	    position: absolute;
	    left: 0;
	    top: 0;
	    width: 40%;
	}
}
@media screen and (max-width: 500px) {
	.section06__content{
		line-height: 1.4;
		font-size: 13px;
	}
}

/* ----------------------------------------
	section7
---------------------------------------- */
.sec07-08bg{
	background-image:url(../image/sec_07-08_bg_pc.svg);
	background-size: 1300px;
	background-repeat: no-repeat;
	background-position: bottom right;

}
#section07{
	padding: 50px 0;
}
.section07__ttl img{
 margin: 0 auto;
 padding: 30px 0;
}
.section07__box01{
	display: flex;
}
.section07__box01-1{
	font-size: 16px;
	padding: 0 20px 0 0;
	width: 40%;
	box-sizing: border-box;
}
.section07__address{
	padding: 20px 0 30px 0;
}
.section07__access{
	padding: 0 0 40px 120px;
	border-bottom:  2px dashed #333333;
	position: relative;
}
.section07__access-img{
	  position: absolute;
		width: 90px;
		top: -5px;
		left: 0;
		margin: 0 auto;
}
.section07__main-office{
	padding: 20px 0 30px 0;
}
.section07__map{
	width: 60%;
	box-sizing: border-box;
}
.section07__map iframe{
    width: 100%;
}
.section07__banner img{
	width: 100%;
}


@media screen and (max-width: 750px) {
	.sec07-08bg{
		background-image:url(../image/sec_07-08_bg_sp.svg);
		background-size: 90VW;
		background-position: bottom right;
	}
	#section07{
		padding: 50px 10px;
	}
	.section07__logo img{
		margin: 0 auto;
	}
	.section07__box01 {
	    display: block;
	}
	.section07__box01-1 {
    width: 100%;
		padding: 0;
		font-size: 12px;
	}
	.section07__map{
    width: 100%;
		padding: 0 0 50px 0;
	}
	.section07__banner{
		margin: 0 -10px;
		width: calc(100% + 20px);
	}
	.section07__access{
		padding: 0 0 20px 80px;
		border-bottom:  2px dashed #333333;
		position: relative;
	}
	.section07__access-img{
		  position: absolute;
			width: 60px;
			top: 0;
			left: 0;
			margin: 0 auto;
	}
	.section07__box01-1{
		font-size: 13px;
		line-height: 1.5;
	}
	.section07__main-office{
		padding: 10px 0 20px 0;
	}
	.section07__map iframe {
    width: 100%;
    height: calc(100VW*0.7);
	}
  .section07__address span{
  	display: inline-block;
    padding-top: 10px;
  }

}

/* ----------------------------------------
	section6
---------------------------------------- */
#section08{
	padding: 80px 0;
}
.section08__ttl img{
 margin: 0 auto;
 padding: 30px 0;
}
.section08_text{
	padding: 30px 300px 50px 0;
	font-size: 15px;
	background: url(../image/sec_08_bg_pc.svg);
	background-position: right top;
	background-repeat: no-repeat;
  background-size: auto calc(100% - 20px);
}
.section08_text span{
	color:#CEA72B;
}
.section08_flex{
	display: flex;
}
.section08_flex-item{
	width: 25%;
	text-align: center;
}
.section08__img img{
	margin:  0 auto 15px auto;
}
.section08_flex-item{
	font-size: 15px;
}
.sec08__youtube-btn{
	text-align: center;
	padding: 50px 0;
}

.sec08__youtube-btn a{
	background-color: #333333;
	color: #fff;
	border-radius: 30px;
	padding: 20px;
	width: 310px;
	text-align: center;
	display: inline-block;
	position: relative;
}
.sec08__youtube-btn a:after{
	content: " ";
	position: absolute;
	width: 17px;
	height: 14px;
	background-image: url(../image/btn_point01.svg);
	background-repeat: no-repeat;
  right: 25px;
  top: 24px;
}

.sec08__btn{
	text-align: center;
	padding: 20px;
	margin:30px  0 50px 0;
}
.sec08__btn a{
	background-color: #333333;
	color: #fff;
	border-radius: 30px;
	padding: 20px;
	width: 310px;
	text-align: center;
	display: inline-block;
	position: relative;
}
.sec08__btn a:after{
	content: " ";
	position: absolute;
	width: 17px;
	height: 14px;
	background-image: url(../image/btn_point01.svg);
	background-repeat: no-repeat;
  right: 25px;
  top: 24px;
}



@media screen and (max-width: 750px) {
	#section08{
		padding: 20px 10px 50px 10px;
	}
	.sec08__youtube-btn{
		padding: 50px 0;
	}
	.section08_flex{
		display: flex;
		flex-wrap: wrap;
	}
	.section08_flex-item{
		width: 50%;
		text-align: center;
	}
	.section08__img img{
		margin:  0 auto 10px auto;
		width: 80%;
	}
	.sec08__btn a {
	    padding: 13px;
	    width: 240px;
	    font-size: 12px;
	}
	.sec08__btn a:after {
	  content: " ";
	  position: absolute;
	  width: 17px;
	  height: 14px;
    right: 13px;
    top: 18px;
    background-size: 14px;
	}

	.section08_text {
		padding: 10px 0 30px 0;
		background: url(../image/sec_08_bg_sp.svg);
	  background-position: top right;
		background-repeat: no-repeat;
		top: 0;
    background-size: auto calc(100% - 20px);
		font-size: 13px;
		line-height: 1.4;
	}
	.section08_flex-item{
		padding-bottom: 18px;
    line-height: 1.4;
	}
}

/* ----------------------------------------
	slider
---------------------------------------- */
.slider{
  display: none;

}
.slider.slick-initialized{
  display: block;
}
.sliderArea {
  max-width: 50%;
  margin: 0 auto;
  padding: 0 25px;
	top:130px;
	position: absolute;
  width: auto;
	right: 20px;
	z-index: -1;
}
.sliderArea.w300 {
  max-width: 300px;
}
.slick-slide {
  margin: 0 5px;
}
.slick-slide img {
  width: 100%;
  height: auto;
}
.slick-prev, .slick-next {
  z-index: 1;
}
.slick-prev:before, .slick-next:before {
  color: #333333;
}
.slick-slide {
  transition: all ease-in-out .3s;
  opacity: .2;
}
.slick-active {
  opacity: 1;
}
.slick-current {
  opacity: 1;
}
.thumb {
  margin: 20px 0 0;
}
.thumb .slick-slide {
  cursor: pointer;
}
.thumb .slick-slide:hover {
  opacity: .7;
}
.slick-dots li:nth-child(1) button:before {
    content: '初回';
}
.slick-dots li:nth-child(2) button:before {
    content: '相談';
}
.slick-dots li:nth-child(3) button:before {
    content: '出張';
}
.slick-dots li:nth-child(4) button:before {
    content: '見積り';
}
.slick-dots li:nth-child(5) button:before {
    content: '対応';
}
.slick-dots {
    position: absolute;
    bottom: 5%;
    right: -50px;
    width: 60px;
    display: block;
}
.slick-dots li {
	display: block;
	width: 60px;
	margin: 0;
	padding: 21px
}
.slick-dots li button {
	width: 60px;
	text-align: center;

}
.slick-dots li button:before {
    color: #333333;
			width: 60px;
			text-align: center;
			opacity: 1;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before,.slick-dots li.slick-active button:before
{
    opacity: 1;
		color:#CEA72B;
}
.slick-dots:before {
    content: "";
    position: absolute;
    width: 60px;
    height: 220px;
    top: -270px;
    background-position: center;
    left: 0;
    background-repeat: no-repeat;
    margin: 0 auto;
    display: inline-block;
    background-image: url(../image/slider_txt.svg);
}
header .slick-dots li button:before {
    font-size: 16px;
		text-align: center;
}
header .slick-dots li::after {
  content: "";
	background: #333333;
	position: absolute;
	width: 1px;
	height: 18px;
	bottom : 3px;
}
header .slick-dots li:nth-child(1)::before {
  content: "";
	background: #333333;
	position: absolute;
	width: 1px;
	height: 25px;
	top : -25px;
}
header .slick-dots li:nth-child(5)::after {
  content: "";
	background: #333333;
	position: absolute;
	width: 1px;
	height: 25px;
	bottom : -2px;
}

.slider__hover {
  position: absolute;
  top:128px;
  right: 50px;
  z-index: 3;
  max-width: calc(50% - 60px);
  height: 600px;
  background-image: url(../image/h_sl_01c.png);
  background-repeat: no-repeat;
  background-size: 100%;
  margin: 0 0 0 26px;
  width: 100%;
  opacity: 0;
  transition: 0.5s;
  font-size: 16px;
}
.slider__hover:hover {
  opacity: 1;
}
.slider-tel a{
  position: absolute;
  top:200px;
  background: #fff;
  width: 80%;
  margin: 10px auto;
   border-radius: 30px;
  padding: 20px 0;
  text-align: center;
  color:#333333;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
}
.slider-LINE a{
  position: absolute;
  top:290px;
  background: #fff;
  width: 80%;
  margin: 10px auto;
   border-radius: 30px;
  padding: 20px 0;
  text-align: center;
  color:#333333;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
}
.slider-LINE a::after{
  background-image: url(../image/slider-LINE.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  content:" ";
  width: 30px;
  height: 30px;
  position: absolute;
  right: 20px;
  top:20px;

}


@media screen and (max-width: 750px) {
	.sliderArea {
	  display: block;
	  order: 1;
    max-width: calc(100vw - 10px);
    margin: 0 auto 0 0;
    padding: 0 25px;
    top: 10px;
    position: relative;
    width: auto;
    right: 20px;
    z-index: 2;
	}
  .slider__hover {
    display: none;
  }
	.slick-dots li {
    padding: 15px;
	}
	header .slick-dotted.slick-slider {
	    margin-bottom: 0;
	}
	header .slick-list {
	    height: 120vw;
			min-height: 300px;
	}
	header .slick-dots li button:before {
	    font-size: 13px;
	    text-align: center;
	}
	header .slick-dots li::after {
		height: 10px;
		bottom : 3px;
	}
	header .slick-dots li:nth-child(1)::before {
		height: 12px;
		top : -12px;
	}
	header .slick-dots li:nth-child(5)::after {
		height: 12px;
		bottom : -2px;
	}
	.slick-dots:before {
    	width: 60px;
	    height: 180px;
	    top: -200px;
	    background-position: center;
			background-size: auto 100%;
	    left: 0;
	    background-repeat: no-repeat;
	    background-image: url(../image/slider_txt.svg);
	}
}
@media screen and (max-width: 400px) {
	.slick-dots:before {
	    content: "";
	    position: absolute;
	    width: 60px;
	    height: 150px;
	    top: -170px;
	    background-image: url(../image/slider_txt.svg);
	}
	header .slick-dots li button:before {
			font-size: 11px;
			text-align: center;
	}
	header .slick-dots li::after {
		height: 6px;
		bottom : 2px;
	}
	header .slick-dots li:nth-child(1)::before {
		height: 8px;
		top : -7px;
	}
	header .slick-dots li:nth-child(5)::after {
		height: 8px;
		bottom : -1px;
	}
	.slick-dots {
    bottom: 2%;
	}
	.slick-dots li{
    padding: 13px;
	}
}
/* ----------------------------------------
	tab
---------------------------------------- */

.tabBox *, .tabBox *:after, .tabBox *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.tabBox .tab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin-bottom: 50px;
}
.tabBox .tab input {
	position: absolute;
	opacity: 0;
}
/* 質問 */
.tabBox .tab label {
	font-weight: bold;
	line-height: 1.6;
	font-size: 16px;
	position: relative;
	display: flex;
	margin: 0 0 0 0;
	padding: .5em 2em .5em 1em;
	cursor: pointer;
	text-align: left;
	border-bottom: solid 1px #333333;
}
.tab__text{
	padding: 0 20px;
	 display: grid;
	place-items: center;
}
.tab__text02{
	border-left: solid 1px #333333;
	padding: 0 10px;
	margin: 0 10px;
}
/* 答え */
.tabBox .tab .tab-content {
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.5s ease;
	        transition: max-height 0.5s ease;
					 display: grid;
				  place-items: center;
}
.tabBox .tab .tab-content p {
	margin: 1em;
}

/* --答えの高さ */
.tabBox .tab input:checked ~ .tab-content {
	max-height: none;
}
/* 質問をクリックした時のアイコンの動き */
.tabBox .tab label::after {
	line-height: 1;
	position: absolute;
	top: 40%;
	right: 25px;
	font-size: 15px;
	display: block;
	-webkit-transition: all 0.5s ease;
	        transition: all 0.5s ease;
	text-align: center;
}
.tabBox .tab input[type=checkbox] + label::after {
	content: '▶';
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
  margin: -5px 0 0 0;
}
.tabBox .tab input[type=checkbox]:checked + label::after {
  margin: -5px 1px 0 0;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}
.tab__answer{
    padding: 1em 2em 1em 6em;
    cursor: pointer;
    position: relative;
    display: flex;
    width: 100%;
    box-sizing: border-box;
}
@media screen and (max-width: 750px) {

	.tabBox .tab {
    position: relative;
    overflow: hidden;
    width: 100%;
    margin-bottom: 30px;
	}
	.tab__img{
		width: 30px;
    padding: 5px 0;
    flex-shrink: 0;
	}
  .tab__text{
    padding: 0 0 0 10px
  }
	.tab__answer{
		padding: 1em 0.5em 1em 1.5em;
	}
	.tabBox .tab label{
		font-size: 14px;
		line-height: 1.4;
    padding: 0.5em 1em 0.5em 0.5em;
	}
  .tabBox .tab label::after {
    right: 5px;
  }
  .tab__text02{
    padding: 0 0 0 10px;
    margin: 0 0 0 10px;
  }
}
/* ----------------------------------------
	footer
---------------------------------------- */
footer{
	background:#333333;
	color:#fff;
	padding: 100px 0;
}
.footer__company{
	display: flex;
}
.footer__logo{
	padding: 0  0 50px 0;
}
.footer__box01{
 width: 30%;
}
.footer__box02{
 width:40%;
 padding: 0 20px;
}
.footer__box03{
 width: 30%;
 padding: 0 20px;
 border-left:  solid 1px #fff;
 border-right:  solid 1px #fff;
	display: grid;
 place-items: center;
 text-align: center;


}

.footer__btn{
	text-align: center;
	padding: 20px 20px 0 0;
	margin:30px  0 0 0;
}
.footer__btn a{
	background-color: #333333;
	border: solid 1px  #fff;
	color:  #fff;
	border-radius: 30px;
	padding: 20px;
	width: 100%;
	text-align: center;
	display: inline-block;
	position: relative;
}
.footer__btn a:after{
	content: " ";
	position: absolute;
	width: 17px;
	height: 14px;
	background-image: url(../image/btn_point01.svg);
	background-repeat: no-repeat;
  right: 25px;
  top: 24px;
}
.footer__spnav{
	display: none;
	position: fixed;
	bottom:0;
}
.footer__spnav01{
	width: 50%;
}
.footer__spnav02{
	width: 50%;
}

@media screen and (max-width: 750px) {
	.footer__logo{
	 padding: 0;
	 max-width: 80%;
	 margin: 0 auto;
	}
	.footer__company{
	 display: block;
	}
	.footer__btn{
		margin: 0 auto;
		padding: 20px 0 0 0;
	}
	.footer__btn a {
	    padding: 13px;
	    width: 240px;
	    font-size: 12px;
	}
	.footer__btn a:after {
	  content: " ";
	  position: absolute;
	  width: 17px;
	  height: 14px;
    right: 13px;
    top: 18px;
    background-size: 14px;
	}
	.footer__box01{
	 width: 100%;
	 padding: 10px;
	 text-align: center;
	}
	.footer__box02{
	 width: 100%;
	 padding: 10px;
	}
	.footer__box03{
	 width: calc(100% - 20px);
	 padding: 5px;
	 margin: 10px;
	 box-sizing: border-box;

 }
 .footer__spnav{
	 display: flex;
	 z-index: 10;
 }
}
@media screen and (max-width: 500px) {
	.footer_box{
		padding: 60px 10px 0;
	}
	.about__ttl img{
		margin: 0 auto 30px;
	}
	.company__info{
		padding: 0;
		font-size: 14px;
	}

}
/* ----------------------------------------
	pagetop
---------------------------------------- */


#page_top{
  position: fixed;
  right: 30px;
  bottom: 0;
  transition: 1.0s ;
  z-index: 5;

}
#page_top a{
  position: relative;
  display: block;
  text-decoration: none;
  font-size: 13px;
  color: #6c8751;
  transition: 1.0s ;
}

#page_top a:hover{
  filter: contrast(200%);
   transition-duration: .2s;
}

#page_top img{width: 80px;}

#page_top a:hover img{
	opacity: 1;
}
@media (max-width: 750px){
	#page_top img{width: 60px;}
	#page_top {
    position: fixed;
    right: 0;
    bottom: 80px;
    transition: 1.0s;
    padding: 10px;
    display: inline-block;
}
footer {
    background: #333333;
    color: #fff;
    padding: 30px 0 100px 0;
}
}
@media (max-width: 500px){
	#page_top img{width: 60px;}
}
