/* ----------
	common
---------- */
body {
	color: #000;
	font-family: Hiragino Sans,sans-serif,"a，，a?´a?・a??a?￣a?“","Yu Gothic","a?’a?ca?Ra??e§’a?´ Pro","Hiragino Kaku Gothic Pro","a?!a??a?aa?a","Meiryo";
}
@media (min-width: 768px) {
	body {
		min-width: 1000px;
	}
}
.container {
	overflow-x: hidden;
	width: 100%;
	background: #fff;
	margin:0 auto;
}

.b {
	font-weight: 600;
}
.big {
	font-size: 1.25em;
}
.small {
	font-size: .8em;
	line-height: 100%;
	font-weight: 200;
	color:#8e8e8e;
}
.kana{
	font-size: 80px;
	font-weight: 500;
	letter-spacing: -0.5rem;
	padding-right: 10px;
	background: linear-gradient(90deg,#db2c35,#ff887c);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.num{
	font-family: "Arial";
	font-size: 66px;
	font-weight: 400;
}
.num1{
	font-family: "Arial";
	font-size: 32px;
	font-weight: 300;
}
.num2{
	font-family: Futura;
	font-size: 25px;
	letter-spacing: -0.05rem;
	margin-right: 2px;
	font-style: italic;
/*	filter: drop-shadow(2px 2px 0.5px rgba(0,0,0,.2));
	-webkit-text-fill-color: transparent;
	-webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #db2c35;
  text-shadow: 1px 1px rgba(0,0,0,.1), 1px 1px 0px #db2c35;*/
}
.br_sp{
	display: none;
}
@media (max-width: 767px) {
	.br_sp{
		display: block;
	}
}
.br{
	display: block;
}
@media (max-width: 767px) {
	.br{
		display: none;
	}
}
@media (max-width: 767px) {
	.num{
		font-size: 50px;
	}
	.num1{
		font-size: 25px;
	}
	.num2{
		font-size: 20px;
	}

}
/* ----------
	fadein
---------- */

.fadeIn{
animation-name:fadeInAnime;
animation-duration:1s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}



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

#site-header {
	background: #fcf8f7;
	display: flex;
	justify-content: space-between;
	padding: 24px;
	width: 100%;
	font-weight: normal;
}
@media (max-width: 767px) {
	#site-header {
		align-items: center;
		filter: drop-shadow(0 3px 3px rgba(0,0,0,.2));
		left: 0;
		padding: 8px 12px;
		position: fixed;
		top: 0;
		z-index: 999;
		height: 65px;
	}
}

#site-header .brand {
	width: 160px;
}
@media (max-width: 767px) {
	#site-header .brand {
		width: 130px;
	}
}

#site-header #nav-switch,
#site-header #nav-close {
	display: none;
}
@media (max-width: 767px) {
	#site-header #nav-switch {
		color: #222;
		display: block;
		font-size: 24px;
		transition: .5s;
	}
	#site-header nav {
		background: #fcf8f7;
		bottom: 0;
		filter: opacity(1);
		min-height: 100vh;
		padding: 40px 20px;
		position: fixed;
		right: 0;
		top: 0;
		transform: translateX(100%);
		transition: .5s;
		width: 100%;
		z-index: 1000;
	}
	#site-header #nav-close {
		color: #222;
		display: block;
		font-size: 24px;
		position: absolute;
		right: 12px;
		top: 8px;
	}
	#site-header button {
	  border-color: transparent;
	  background: transparent;
	  cursor: pointer;
	}
	#site-header .hamburger {
	  width: 39px;
	  height: 29px;
	  position: absolute;
	  top: 17px;
	  right: 16px;
	  z-index: 1001;
	}

	#site-header #nav-switch .hamburger_bar {
		display: block;
		width: 90%;
		height: 2px;
		position: absolute;
		left: 0;
		background: #3e3e3e;
		transition: top 0.5s, transform 0.5s, opacity 0.5s;
		z-index: 1;
	}
	#site-header #nav-switch .hamburger_bar:nth-child(1) {
		top: 0;
	}
	#site-header #nav-switch .hamburger_bar:nth-child(2) {
		top: 50%;
		transform: translateY(-50%);
	}
	#site-header #nav-switch .hamburger_bar:nth-child(3) {
		top: 100%;
  		transform: translateY(-100%);
	}

	#site-header #nav-switch.open .hamburger_bar:nth-child(1) {
		top: 50%;
  		transform: translateY(-50%) rotate(135deg);
	}
	#site-header #nav-switch.open .hamburger_bar:nth-child(2) {
		transform: translate(50%, -50%);
		opacity: 0;
	}
	#site-header #nav-switch.open .hamburger_bar:nth-child(3) {
		top: 50%;
  		transform: translateY(-50%) rotate(-135deg);
	}

	/*------------------------------------
	メニュークリック後メニュー外の背景 ↓
	------------------------------------*/
	.overlay {
	  background-color: #000;
	  cursor: pointer;
	  height: 100vh;
	  left: 0;
	  opacity: 0;
	  position: fixed;
	  top: 0;
	  transition: all 0.6s;
	  visibility: hidden;
	  width: 100vw;
	  z-index: 1;
	}

	/* open */
	#site-header #nav-switch.open {
/*		filter: opacity(0);*/
	}
	#site-header nav.open {
		transform: translateX(0); /*元の位置に戻すcss*/
	}

	.open .overlay{
		opacity: 0.5;
		visibility: visible;
	}
}

#site-header ul {
	display: flex;
	height: 100%;
	margin: 0;
}
@media (max-width: 767px) {
	#site-header ul {
		align-content: flex-start;
		flex-wrap: wrap;
	}
	#site-header li {
		width: 100%;
	}
}

#site-header li a {
	align-items: center;
	color: #222;
	display: flex;
	justify-content: center;
	height: 100%;
	padding: 0 15px;
	text-decoration: none;
	transition: .2s;
}
@media (max-width: 767px) {
	#site-header li a {
		color: #222;
		margin: 20px auto;
		padding: 0 20px;
	}
}

#site-header li a:hover {
/*	background: linear-gradient(90deg,#db2c35,#ff887c);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;*/
	color:#db2c35;
}
#site-header .btn_a{
	width: 200px;
}
#site-header .btn_a:before{
	content: "";
	display: none;

}
/* ----------
	スマホ版問合せボタン固定
---------- */
@media (min-width: 768px) {
	.contact_sp_fixed{
		display: none;
	}	
}
@media (max-width: 767px) {
	.contact_sp_fixed{
		display: block;
		position: fixed;
		right: 0px;
    bottom: 0px;
    z-index: 9999;
    width:100%;
	}
}


/* ----------
	footer
---------- */
#site-footer {
	padding: 30px;
	text-align: center;
	width: 100%;
}
#site-footer img{
	width:230px;
}


/* ----------
	index
---------- */

/* common */
.index section {
//	padding: 85px 0;
}
.index h2 {
	color: #222;
	font-size: 40px;
	font-weight:500;
	margin:0 auto;
	margin-bottom:50px;
	text-align: center;
	width:100%;
}
.index h3 {
	font-size: 21px;
	font-weight:400;
	margin:0px;
}
.index h4 {
	font-family: Futura;
	font-size: 84px;
	font-weight:normal;
	letter-spacing: 0.1rem;
	color:#fcf8f7;
	text-align: center;
	margin:0;
}
@media (max-width: 767px) {
	.index h2 {
		font-size: 35px;
	}
	.index h4 {
		font-size: 11vw;
	}
}
.index p {
//	font-size: 16px;
	font-weight:normal;
//	line-height: 165%;
//	letter-spacing: 0.02rem;
}
.index a span{
	background: linear-gradient(90deg,#db2c35,#ff887c);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	display: flex;
  justify-content: center;
  width: 100%;
  padding: 0px 20px 0px 0px;
}
@media (max-width: 767px) {
	.index ul {
		padding: 0;
	}
	.index li {
		padding: 0;
	}
}
/*font-family: Futura;
font-family: "Arial";*/
.index button{
	background: none;
	border: none;
}
.index .btn_a{
	margin: 0px auto 0;
	padding: 16px 60px;
	text-decoration: none;
	color:#222;
	width: 300px;
	display: block;
	position: relative;
	border:1px solid #fff;
	border-radius: 31px;
	background: linear-gradient(90deg, #fcf8f7, #f6f3f3);
	box-shadow: 8px 8px 15px #dfdfdf, -8px -8px 15px #fff;
	transition: .2s;

}
.index .btn_a:hover{
	box-shadow:  3px 3px 6px #dfdfdf,
	             -3px -3px 6px #fff;
}
.index .btn_a:before{
	content: "";
	display: block;
	width: 40px;
	height: 40px;
	border-radius: 100%;
	background-image: url("../img/button_key.png");
	background-repeat: no-repeat, no-repeat;
	background-size: 35px auto, 100%;
	background-position: center, center;
	position: absolute;
	right: 14px;
	top: calc(50% - 20px);
}
.index .btn_b{
	margin: 0px auto 0;
	padding: 16px 60px;
	text-decoration: none;
	color:#222;
	width: 300px;
	display: block;
	position: relative;
	border:1px solid #fff;
	border-radius: 31px;
	background: linear-gradient(90deg, #ffffff, #f7f7f7);
	box-shadow: 8px 8px 15px #dfdfdf, -8px -8px 15px #fafafa;
	transition: .3s;
}
.index .btn_b:hover{
	box-shadow:  3px 3px 6px #dfdfdf,
	             -3px -3px 6px #fafafa;
}
.index .btn_b:before{
	content: "";
	display: block;
	width: 40px;
	height: 40px;
	border-radius: 100%;
	background-image: url("../img/button_key.png");
	background-repeat: no-repeat, no-repeat;
	background-size: 35px auto, 100%;
	background-position: center, center;
	position: absolute;
	right: 14px;
	top: calc(50% - 20px);
}
@media (max-width: 767px) {
	.index .btn_a{
		width:95%;
	}
	.index .btn_b{
		width:95%;
	}
}

.index .body {
	padding: 0 0px;
	max-width: 1000px;
}
@media (max-width: 767px) {
	.index .body {
		padding: 0 10px;
	}
}
.sma{
    display: none;
}
@media (max-width: 767px) {
	.index .sma{
		display: block;
	}
}
.smanot{
    display: block;
}
@media (max-width: 767px) {
	.index .smanot{
		display: none;
	}
}
.index .bg_red{
	background: linear-gradient(90deg,#db2c35,#ff887c);
	color:#fff;
	padding:5px 2px;
	line-height: 100%;
}
.index .bg_red_sm{
	font-size:20px;
	font-weight:300;
	line-height: 100%;
}
@media (max-width: 767px) {
	.index .bg_red_sm{
		font-size:18px;
	}
}
.index .bd_bt{
	padding: 0.4rem 0;
  margin-bottom: 0.2rem;
  background-image: linear-gradient(90deg,rgba(219,44, 53, .65),rgba(255,136, 124, .65));
  background-repeat: no-repeat;
  background-size: 100% 14px;
  background-position: bottom;
}


/* /common */

.index .kv {
	height: calc(100vw / 3 + 430px);
	overflow: hidden;
	width: 100%;
	margin: auto;
/*	display: flex;
	flex-wrap: wrap;*/
}
@media (max-width: 767px) {
	.index .kv {
		width: 97vw;
		padding-top:65px;
	}
}

.index .kv .img{
	position: relative;
	margin:0 auto;
	width:100%;
	height: calc(100vw / 3 - 0px);
}
@media (max-width: 767px) {
	.index .kv .img{
		height:auto;
	}
}
.index .kv .img_base{
	height: auto;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
  	right: 0;
}
@media (min-width: 768px) {
	.index .kv .img_base_sp{
		display: none;
	}
}
@media (max-width: 767px) {
	.index .kv .img_base{
		display: none;
	}
	.index .kv .img_base_sp{
		display: block;
	}
}
.index .kv .btn_a{
	position: absolute;
	top:calc(96.4vw / 3 - 58px - 5px);
	right:0;
}
@media (max-width: 767px) {
	.index .kv .btn_a{
		top:calc(100vw * 165 / 375 + 6px);
		right:0%;
		left: 0%;
	}
}

@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.d-demo__list {
  display: flex;
  list-style: none;
}
.d-demo__list--left{
animation :infinity-scroll-left 30s infinite linear 0.5s both;
}
.d-demo__wrap {
	   position: relative;
	   display: flex;
	   width: 100vw;
	   overflow: hidden;
    margin-top:0px;
}
@media (max-width: 767px) {
	.d-demo__wrap {
		margin-top:50px;
	}
}
.d-demo__wrap ul {
        padding: 0;
        width: 100vw;
        display: flex;
        flex-shrink: 0;
}
.d-demo__wrap li {
		display: inline-block;
		width: 100%;
		min-width: 200px;
		margin-right: 20px;
		list-style: none;
		text-align: center;
}
.d-demo__wrap li img {
	 	display: block;
	 	width: 100%;
	 	height: auto;
}

@media (max-width: 767px) {
	.d-demo__wrap li {
		min-width: 130px;
	}
	.d-demo__wrap ul {
        width: 200vw;
  }
}


/* ----------
	section
---------- */

/* section_1 */
.index #section_1 {
	background-image: url("../img/section1_base.png");
	background-position: bottom;
  background-size: cover;
  background-repeat: no-repeat;
}
@media (max-width: 767px) {
	.index #section_1 {
	background-image: url("../img/section1_base_sp.png");
	}
}
.index #section_1 .body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.section1_img{
		display: none;
	}
}
@media (min-width: 768px) {
	.section1_sp_img{
		display: none;
	}
}
/* section-2 */
.index #section_2{
	position: relative;
}
.index #section_2 img{
	z-index: -1;
	position: absolute;
	top:3%;
	left:5%;
	width:auto;
}

.index #section_2 .body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}
.index #section_2 .body h2{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.index #section_2 .body .br {
display: block;
content: "";
margin: -10px 0;
}
.index #section_2 .pentagon{
	background-image: url("../img/section2_img.png");
	background-position: bottom;
  background-size: contain;
  background-repeat: no-repeat;
}

.index #section_2 p{
	width:275px;
	text-align: center;
}
.index #section_2 .pentagon{
	width: 100%;
	height: 1000px;
	position: relative;
}
@media (max-width: 767px) {
	.index #section_2 .pentagon {
	background-image: url("../img/section2_img_sp.png");
	width: 340px;
	height: 885px;
	margin: 0 auto;
	}
}
.index #section_2 .pentagon1{
	position:absolute;
	left:36%;
	top: 18%;
}
.index #section_2 .pentagon2{
	position:absolute;
	left:5%;
	top: 42%;
}
.index #section_2 .pentagon3{
	position:absolute;
	right:5%;
	top: 42%;
}
.index #section_2 .pentagon4{
	position:absolute;
	left:16%;
	top: 79%;
}
.index #section_2 .pentagon5{
	position:absolute;
	right:16%;
	top: 79%;
}
.index #section_2 .pentagon6{
	position:absolute;
	left:36%;
	top: 51%;
}
@media (max-width: 767px) {
	.index #section_2 .pentagon1{
	position:absolute;
	left: 50%;
	transform: translate(-50%, -50%);
	top:calc(885px - 784px);
	}
	.index #section_2 .pentagon2{
		position:absolute;
		left: 50%;
		transform: translate(-50%, -50%);
		top:calc(885px - 652px);
	}
	.index #section_2 .pentagon3{
		position:absolute;
		left: 50%;
		transform: translate(-50%, -50%);
		top:calc(885px - 508px);
		right:auto;
	}
	.index #section_2 .pentagon4{
		position:absolute;
		left: 50%;
		transform: translate(-50%, -50%);
		top:calc(885px - 365px);
	}
	.index #section_2 .pentagon5{
		position:absolute;
		left: 50%;
		transform: translate(-50%, -50%);
		top:calc(885px - 213px);
		right:auto;
	}
	.index #section_2 .pentagon6{
		position:absolute;
		left: 50%;
		transform: translate(-50%, -50%);
		top:calc(885px - 66px);
	}
}

/* section_3 */
.index #section_3 .body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}
.index #section_3 h3{
	padding: 0.01em 0.5em;/*上下 左右の余白*/
	background: transparent;/*背景透明に*/
	border-left: solid 3px #222;/*左線*/
	width: 80%;
}
.index #section_3 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
	margin: 0px auto;
	width: 100%;
	padding:0;
}

.index #section_3 li {
	width: 33.2%;
	display:flex;
	align-items: flex-start;
	justify-content: center;
	flex-wrap: wrap;
	background-color: #fcf8f7;
}
@media (max-width: 767px) {
	.index #section_3 li {
		width: 100%;
		height:320px;
	}
}
.index #section_3 li .curmark{
	width:auto;
}
.index #section_3 .cur_base{
	margin:20px 15px 0 15px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.index #section_3 .section3_imgbase{
	position: relative;
}
.index #section_3 .section3_img{
	position: absolute;
	top:0%;
	right:0%;
}


/* section_4 */
.index #section_4 .body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}
.index #section_4 ul img{
	width:auto;
	margin:0 10px;
}
@media (max-width: 767px) {
	.index #section_4 ul img{
		width:40px;
	}
}
.index #section_4 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
	margin: 0px auto 25px;
	width: 100%;
}
.index #section_4 li {
	width: 100%;
	display:flex;
	align-items: flex-start;
	margin:10px 0px;
}
.index .section_big{
	font-size:32px;
	font-weight: 300;
	line-height: 130%;
	margin: 0;
}
@media (max-width: 767px) {
	.index .section_big{
		font-size:24px;
	}
}
.index #section_4 .group{
	display: block;
	height:500px;
	position: relative;
	width:100%;
}
@media (max-width: 767px) {
	.index #section_4 .group{
		height:670px;
	}
}
.index #section_4 .group img{
	position: absolute;
	width:auto;
}
@media (max-width: 767px) {
	.index #section_4 .group img{
		width:100%;
	}
}
.index #section_4 .group .section4_text1{
	top:0%;
	left: 0%;
}
.index #section_4 .group .section4_text2{
	top:5%;
	right: 0px;
}
.index #section_4 .group .section4_text3{
	top:50%;
	left: 0px;
}
.index #section_4 .group .section4_text4{
	top:60%;
	right: 0px;
}
@media (max-width: 767px) {
	.index #section_4 .group .section4_text1{
		top:0%;
	}
	.index #section_4 .group .section4_text2{
		top:24%;
	}
	.index #section_4 .group .section4_text3{
		top:48%;
	}
	.index #section_4 .group .section4_text4{
		top:76%;
	}
}

/* section_5 */
.index #section_5 .body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}
.index #section_5 .section_5_big{
	font-size: 35px;
	font-weight: 400;
	text-align: center;
	margin: 10px auto 0;
	width: 100%;
	background: #ffffff;
}
.index #section_5 .section_5_big.bigprice img{
	width:40px;
	margin-top: -24px;
}
@media (max-width: 767px) {
	.index #section_5 .section_5_big{
		font-size: 30px;
	}
	.index #section_5 .section_5_big.bigprice{
/*		text-align:left;*/
	}
	.index #section_5 .smprice{
		display: flex;
		flex-wrap: wrap;
		align-items: flex-end;
		justify-content: center;
	}
}
.index #section_5 .section_5_big.bg{
	border-radius: 50px;
	box-shadow: inset 6px 6px 12px #d4d4d4,
	            inset -6px -6px 12px #ffffff;
  padding:10px 0;
}
@media (max-width: 767px) {
	.index #section_5 .section_5_big.bg{
		border-radius: 80px;
		padding:10px 15px;
	}
}
.index #section_5 .price{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 10px auto;
	width:100%;
}
@media (max-width: 767px) {
	.index #section_5 .price{
		width:100%;
	}
}
.index #section_5 .section_big{
	margin:15px 0px;
}
.index #section_5 .bg_red{
	padding: 14px 15px 3px 15px;
	border-radius: 25px;
}
.index #section_5 .small{
	margin: 0 0 15px 0;
	width: 100%;
	text-align: center;
}
.index #section_5 .table{
	margin:60px 0;
	position: relative;
}
@media (max-width: 767px) {
	.index #section_5 .table{
		margin:60px 0 150px;
	}
}
.index #section_5 .bubble{
	width:auto;
	position:absolute;
	bottom:0px;
	right: -155px;
	z-index:10;
}
.index #section_5 .bubble_sp{
	display: none;
}
@media (max-width: 767px) {
	.index #section_5 .bubble{
		display: none;
	}
	.index #section_5 .bubble_sp{
		display: block;
		width:auto;
		position:absolute;
		bottom:-142px;
		right: -2px;
		z-index:10;
	}
}

/* section_6 */
.index #section_6{
	background-color: #fcf8f7;
	margin: 85px 0;
}

.index #section_6 .body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: -40px auto 0px;
	position: relative;
}
.index #section_6 .group{
	padding:0px 20px;
}
@media (max-width: 767px) {
	.index #section_6 .group{
	padding:0px;
	}
}
.index #section_6 img{
	position: absolute;
	right:0px;
	bottom:0px;
	width:auto;
}
@media (max-width: 767px) {
	.index #section_6 img{
		position: relative;
	}
}
.index #section_6 h4{
	margin-top: -175px;
}
.index #section_6 h2{
	margin-top: 30px;
}
@media (max-width: 767px) {
	.index #section_6 h4{
	margin-top: -130px;
	}
	.index #section_6 h2{
		margin-top: 45px;
	}
}


/* section_7 */
.index #section_7 .body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}
.index #section_7 h3{
	text-align: center;
	margin:0 auto 20px;
	width:100%;
}
.index #section_7 p{
	text-align: center;
	margin:0 auto;
}
.index #section_7 .worsks_sp {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
	margin: 0px auto 85px;
	width: 100%;
	padding:0;
}
@media (max-width: 767px) {
	.index #section_7 .works_sp_table div{
		font-size: 13px;
		letter-spacing: -0.03rem;
	}
}

.index #section_7 .section_7_table{
	width: 50%;
	padding: 0 10px;
}
.index #section_7 .section_7_works {
	width: 49%;
	margin:50px 0;
}
@media (max-width: 767px) {
	.index #section_7 .section_7_works {
		margin:10px 0;
	}
}
@media (max-width: 767px) {
	.index #section_7 .section_7_works {
		width: 100%;
	}
}
.index #section_7 .section_7_works_bg{
	height:250px;
	border-radius: 10px;
	background: linear-gradient(90deg, #ffffff, #f7f7f7);
	box-shadow: 8px 8px 15px #dfdfdf, -8px -8px 15px #fafafa;
	display:flex;
	align-content: center;
	align-items: center;
  justify-content: flex-start;
	flex-wrap: wrap;
	margin-top:100px;
}
.index #section_7 .works_sp_table {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
	width: 100%;
	padding:0px 0px;
}
.index #section_7 .section_7_workstable {
	display:flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: nowrap;
	border-bottom:1px #858483 dotted;
	align-items: flex-end;
	width: 100%;
}
.index #section_7 .section_7_workstable .num2_shrink{
	flex-shrink: 0;
}
.index #section_7 .section_7_works .table_sp_img{
	overflow: hidden;
	width:210px;
	filter:drop-shadow(0px 0px 5px rgba(133, 132, 131, 0.4));
}
@media (max-width: 767px) {
	.index #section_7 .section_7_works .table_sp_img{
		width:43vw;
	}
}


/* section_8 */
.index #section_8 .body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}
.index #section_8 .section_8_img_base {
	position: relative;
	height:39vw;
	width:100%;
	border-radius: 5px;
	background: #ffffff;
	box-shadow: inset 6px 6px 12px #d4d4d4,
            	inset -6px -6px 12px #ffffff;
}
@media (max-width: 767px) {
	.index #section_8 .section_8_img_base {
		height:1200px;
	}
}
.index #section_8 h3{
	text-align: center;
	margin:0px auto 20px;
}
.index #section_8 img{
	width:auto;
	position: absolute;
}
@media (max-width: 767px) {
	.index #section_8 img{
		height:400px;
		width:100%;
	}
}
.index #section_8 .ex_img1{
	top:0px;
	left:0px;
}
.index #section_8 .ex_img2{
	top:0px;
	right:50%;
	left:33%;
}
.index #section_8 .ex_img3{
	top:0px;
	right:0px;
}
@media (max-width: 767px) {
	.index #section_8 .ex_img1{
		top:0%;
		left:0px;
/*		width: 95vw;*/
	}
	.index #section_8 .ex_img2{
		top:36%;
		left:0%;
	}
	.index #section_8 .ex_img3{
		top:66%;
		left:2%;
	}
}

/* section_9 */
.index #section_9 .body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: -40px auto 0px;
	background-color: #fcf8f7;
	position: relative;
}
@media (max-width: 767px) {
	.index #section_9 .body {
		margin: -20px auto 0px;
	}
}
.index #section_9 h2{
	margin-top: 30px;
	margin-bottom: 30px;
}
.index #section_9 img{
	width: auto;
	margin-right:20px;
}
@media (max-width: 767px) {
	.index #section_9 img{
		width:3rem;
	}
}
.ques{
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.ques_text{
	width:85%;
}

.ques_ans{
	margin:0 auto;
	width:85%;
}
@media (max-width: 767px) {
	.ques_ans{
		width:100%;
	}
}
.acd-check{
  display: none;
}
.acd-label{
  background: #fff;
  color: #222;
  display: block;
  margin-bottom: 1px;
  padding: 20px 60px 20px 30px;
  width: 100%;
  position: relative;
}
@media (max-width: 767px) {
	.acd-label{
		padding: 10px 55px 10px 15px;
	}
}
.acd-label:after{
    box-sizing: border-box;
    content: url(../img/question_key.png);
    vertical-align: middle;
    display: block;
    height: 100px;
    padding: 20px 20px;
    position: absolute;
    right: 0;
    top: 0px;
}
@media (max-width: 767px) {
	.acd-label:after{
		padding: 20px 10px;
	}
}
.acd-content{
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: .5s;
  visibility: hidden;
}
.acd-check:checked + .acd-label:after{
    content: url(../img/question_key1.png);
}

.acd-check:checked + .acd-label + .acd-content{
  height: auto;
  opacity: 1;
  padding: 0px 10px;
  visibility: visible;
}


/* section_10 */
.index #section_10{
	background-color: #fcf8f7;
	margin:0 auto;
}
.index #section_10 .body{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}
.index #section_10 h2{
	margin-bottom: 30px;
}
.index #section_10 p{
	text-align: center;
	width:100%;
	margin: 0 0 30px 0;
}





/* form_section_1 */
#form_section_1 .body{
	display: flex;
  flex-wrap: wrap;
  width:90%;
  justify-content: center;
  align-items: flex-start;
  margin: 0px auto;
  position: relative;
	padding-top:50px;
}
#form_section_1 h3{
	position: relative;
	margin: 20px 0;
}
#form_section_1 h3:before{
	border-top: 1px solid #3e3e3e;
  content: "";
  width: 2.5em;
  display: inline-block;
  margin: 7px 5px 7px 0;
}
#form_section_1 h3:after{
	border-top: 1px solid #3e3e3e;
  content: "";
  width: 2.5em;
  display: inline-block;
  margin: 7px 0 7px 5px;
}
#form_section_1 form{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
#form_section_1 table{
//	border-collapse: collapse;
	border:none!important;
	width: 100%;
}
#form_section_1 tr, #form_section_1 th, #form_section_1 td {border:none!important;}
#form_section_1 tr{
	display: flex;
	align-items: stretch;
	border-bottom: solid 1px #e3beb5!important;
}
#form_section_1 tr:first-child{
	border-top: solid 1px #e3beb5!important;
}
#form_section_1 th{
	background: #fcf8f7;
	color: #222;
	text-align: left;
	padding: 30px 10px;
	width:20%;
	font-weight: 600;
}
#form_section_1 td{
	width:80%;
	padding: 30px 10px;
}
@media (max-width: 767px) {
	#form_section_1 tr{
		flex-wrap: wrap;
	}
	#form_section_1 th{
		width: 100%;
		font-size:14px;
	}
	#form_section_1 td{
		width:100%;
		font-size:14px;
	}
}
#form_section_1 .button{
	border-left: 0px;
	border-right: 0px;
	background: rgba(250,250,250,1);
	width:30%;
	margin: 30px auto;
}
@media (max-width: 767px) {
	#form_section_1 .button{
		width:100%;
	}
}
#form_section_1 input{
	width:100%;
	min-height: 30px;
	border: 1px solid #e3beb5;
	color: #333;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
	border-bottom-left-radius: 0px;
	padding: 10px;
}
.index #form_section_1 input.btn_b,
.index #form_section_1 button.btn_b,
.index #form_section_1 a.btn_b{
	margin: 0px auto 0;
	padding: 16px 60px;
	text-decoration: none;
	color:#222;
	width: 300px;
	display: block;
	position: relative;
	border:1px solid #fff;
	border-radius: 31px;
	background: linear-gradient(90deg, #ffffff, #f7f7f7);
	box-shadow: 8px 8px 15px #dfdfdf, -8px -8px 15px #fafafa;
	transition: .3s;
	margin-top: 30px;
	text-align: center;
}
.index #form_section_1 button.btn_b:before,
.index #form_section_1 a.btn_b:before{
	display: none;
}
#form_section_1 textarea{
	resize: vertical;
	width:100%;
	min-height: 100px;
	border: 1px solid #e3beb5;
	color: #333;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
	border-bottom-left-radius: 0px;
	font-family: "Hiragino Sans", sans-serif;
}
#form_section_1 .privacy{
	width:100%;
	display: flex;
	flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
}
#form_section_1 .privacy p{
	width: auto;
	margin: 0;
}
#form_section_1 .privacy a:hover{
	text-decoration:underline;
}
#form_section_1 label span{
	background: #db2c35;
	color: #fff;
	padding:2px 5px;
	margin-left:10px;
	font-weight:300;
}
#form_section_1 input[type="checkbox"]{
	position: relative;
	width:3%;
	border: 0px solid #e3beb5;
}
@media (max-width: 767px) {
	#form_section_1 input[type="checkbox"]{
		width:7%;
	}
}
input[type="checkbox"]::before,
  input[type="checkbox"]::after {
    content: "";
    display: block; 
    position: absolute;
  }
 
  input[type="checkbox"]::before {
    background-color: #fff;
    border-radius: 0%;
    border: 1px solid #666464;
    width: 30px;/*チェックボックスの横幅*/
    height: 30px;/*チェックボックスの縦幅*/
    transform: translateY(-50%);
    top: 50%;
    left: 0px;
  }
 
  input[type="checkbox"]::after {
    border-bottom: 3px solid #666464;/*チェックの太さ*/
    border-left: 3px solid #666464;/*チェックの太さ*/
    opacity: 0;/*チェック前は非表示*/
    height: 6px;/*チェックの高さ*/
    width: 11px;/*チェックの横幅*/
    transform: rotate(-45deg);
    top: 10px;/*チェック時の位置調整*/
    left: 10px;/*チェック時の位置調整*/
  }
 
  input[type="checkbox"]:checked::after {
    opacity: 1;/*チェック後表示*/
  }

@media (max-width: 767px) {
	#form_section_1 textarea{
		width:100%;
	}
}
#form_section_1 .button:hover{
  border-top: 1px solid rgba(30, 32, 87, 0);
  border-bottom: 1px solid rgba(30, 32, 87, 0);
  background: rgba(30, 32, 87, .05);
  border-bottom-right-radius: 30px;
}
#form_section_1 h4{
	width: 100%;
	margin-bottom: 20px;
}
#form_section_1 p{
	width: 100%;
	margin-bottom: 20px;
	text-align: center;
}

/*バリデーションチェック*/
label.error{
	color:#e60012;
	margin-left: 20px;
}


#form_section_1 .entry tr:first-child td{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
#form_section_1 .entry tr:nth-child(2) td{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
#form_section_1 .entry tr:nth-child(5) td{
	display: flex;
	align-items: center;
}
#form_section_1 .ma tr:nth-child(n+10):nth-child(-n+13) td{
	display: flex;
	align-items: center;
}
#form_section_1 tr td input[type="radio"]{
	width:3%;
}
#form_section_1 .entry tr td input[type="text"]{
	width:50%;
}
#form_section_1 .ma tr td input[type="text"]{
	width:50%;
}
#form_section_1 .entry tr td input[type="email"], #form_section_1 .ma tr td input[type="email"]{
	width:50%;
}
@media (max-width: 767px) {
	#form_section_1 .entry tr td input[type="text"]{
		width:100%;
	}
	#form_section_1 .ma tr td input[type="text"]{
		width:100%;
	}
	#form_section_1 .entry tr td input[type="email"], #form_section_1 .ma tr td input[type="email"]{
		width:100%;
	}
}
#form_section_1 .entry tr:first-child td input, #form_section_1 .entry tr:nth-child(2) td input{
	margin-right: 5px;
	margin-left: 10px;
}
#form_section_1 .entry tr:nth-child(5) td input{
	margin-right: 5px;
	margin-left: 10px;
}
#form_section_1 .ma tr:nth-child(n+10):nth-child(-n+13) td input{
	margin-right: 5px;
	margin-left: 10px;
}
#form_section_1 .entry tr:first-child td input:first-child,
#form_section_1 .entry tr:nth-child(2) td input:first-child,
#form_section_1 .entry tr:nth-child(5) td input:first-child,
#form_section_1 .ma tr:nth-child(n+10):nth-child(-n+13) td input:first-child{
	margin-right: 5px;
	margin-left: 0px;
}
