@charset "UTF-8";
/* CSS Document */
body {	font-size: 14px;}
a {text-decoration: none; color: #fff;}
a:hover {color: #fff;}
a:visited {color: #fff;}

.f-11 {font-size: 11px;}
.f-12 {font-size: 12px;}
.f-13 {font-size: 13px;}
.f-14 {font-size: 14px;}
.f-15 {font-size: 15px;}
.f-16 {font-size: 16px;}
.f-17 {font-size: 17px;}
.f-18 {font-size: 18px;}
.f-20 {font-size: 20px;}
.f-22 {font-size: 22px;}
.f-24 {font-size: 24px;}
.f-25 {font-size: 25px;}
.f-26 {font-size: 26px;}
.f-28 {font-size: 28px;}
.f-30 {font-size: 30px;}
.f-36 {font-size: 36px;}
.f-61 {font-size: 61px;}
.f-80 {font-size: 80px;}
.f-white {color: #fff;}
.f-blue {color: #00abc7;}
.f-gray {color: #808080;}
.f-400 {font-weight: 400;}
.f-500 {font-weight: 500;}
.f-600 {font-weight: 600;}
.f-700 {font-weight: 700;}
.f-800 {font-weight: 800;}
.t-justify {text-align:justify !important;}

@media (min-width:1051px) {
	
	/* ファーストビュー */
	#fv .container{width: 100%;	aspect-ratio: 12 / 7;min-height: 800px;max-height: 900px;	position: relative;overflow: hidden}
	
	#fv .container .photo_area{display: flex;width: 100%;height: 100%;}
	#fv .container .photo_area::after {	content: "";	background: rgba(0, 137, 164, 0.5);	position: absolute;	top: 0;	left: 0;	width: 100%;	height: 100%;	}
	#fv .container .photo_area div{height: 100%;overflow: hidden;}
	#fv .container .photo_area div.img01 img {	width: 100%;	height: 100%;	object-fit: cover;	object-position: 40% 0;}
	#fv .container .photo_area div.img02 img {	width: 100%;	height: 100%;	object-fit: cover;}
	#fv .container .photo_area div.img03 img {	width: 100%;	height: 100%;	object-fit: cover;	object-position: 60% 0;}
	#fv .container .photo_area div.img04 img {	width: 100%;	height: 100%;	object-fit: cover;	object-position: 55% 0;}
	
	#fv .container .white_bar{position:absolute;bottom:0px;left:0;width:100%;height: 30%;background: url(../img/fv-white.png);background-size:100% 100% ;background-repeat: no-repeat;  background-position: bottom left;  z-index: 1;opacity: 1}
	
	
	#fv .container .text_primary{position:absolute;top:50%;left:50%;transform: translate(-50%,-50%);width: 800px;z-index: 2;}
	#fv .container .text_primary .img{position:absolute;top:0%;right:0%;width: 260px;}
	#fv .container .text_primary .img img{width:100%;}
	#fv .container .text_primary .text{position:relative;padding: 70px 0 0 0;}
	#fv .container .text_primary .text::before{content: '';position:absolute;top: 0;left: 0;width: 50%;height: 60px;background: url("../img/fv-img-06.png")no-repeat;background-position: 0% 50%;background-size:auto 100% ;}
	#fv .container .text_primary .text p{color:white;font-weight: 800;padding: 0;margin: 0;line-height: 1.2; text-shadow: 0px 0px 20px rgba(0, 87, 99, 0.8);}
	#fv .container .text_primary .text p:nth-of-type(1){font-size: 60px;}
	#fv .container .text_primary .text p:nth-of-type(1) span{font-size:40px;}
	#fv .container .text_primary .text p:nth-of-type(2){font-size: 80px;}
	
	#fv .container .text_secondary{position:absolute;bottom:50px;left:50%;transform: translateX(-50%);width: 900px;z-index: 2;}
	#fv .container .text_secondary .banner{margin:0 auto 40px auto;width: 500px;}
	#fv .container .text_secondary .banner a{display: block;position: relative;padding: 20px 0;}
	#fv .container .text_secondary .banner a:before{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -1;  top: 0;left:0; border-radius:10px; transition:0.5s;  background:linear-gradient(#ffbf00,#ffa20f);}
	#fv .container .text_secondary .banner a:after{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -2;  top: 0; left:0;border-radius:10px;background:linear-gradient(#ff632f,#ff3131);}
	#fv .container .text_secondary .banner a:hover:before{  opacity:0;}
	
	#fv .container .text_secondary .banner a .inner{position: relative;height: 100%}
	#fv .container .text_secondary .banner a .inner .img{position: absolute;bottom: -20px;left: -10%;height: 160px;}
	#fv .container .text_secondary .banner a .inner .img img{height: 100%;}
	#fv .container .text_secondary .banner a .inner .text{text-align:center;}
	#fv .container .text_secondary .banner a .inner .text span{display:block;font-weight: 600;line-height: 1}
	#fv .container .text_secondary .banner a .inner .text span:nth-of-type(1){font-size: 18px;margin-bottom: 10px}
	#fv .container .text_secondary .banner a .inner .text span:nth-of-type(2){font-size: 30px;}
	
	#fv .container .text_secondary .banner a .inner .icon{position: absolute;top:50%;transform: translateY(-50%);right: 10%;width: 30px; height:30px;background: white;border-radius: 50%;color:#ff9a16;display: flex;justify-content: center;align-items: center;font-size: 20px;}
	
	#fv .container .text_secondary .point{display: flex;	gap: 12px;z-index: 2;align-items: center;justify-content: center}
	#fv .container .text_secondary .point p {	background-color: #ff632f;	width: 180px;	border-radius: 50px;	text-align: center;	line-height: 1;	padding: 12px;color: white;font-size: 22px;letter-spacing: 1px;font-weight: 600}
	
	
	/* 固定CTA */	
	#fixed-cta{position: fixed;	right: 0;	bottom: 20%;z-index: 99}
	#fixed-cta .contact_area{display:none;}	
	#fixed-cta .engineer_area{}
	#fixed-cta .engineer_area a{position: relative;width:300px;height: 80px;display: block;border-radius: 10px 0 0 10px;border: 1px solid #047399;	box-shadow: 5px 0 5px 2px #b3b3b3;	padding: 0 18px 0 15px;	}
	#fixed-cta .engineer_area a:before{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -1;  top: 0;left:0; transition:0.5s;background:linear-gradient(#00adff,#4354ff);border-radius: 9px 0 0 9px;}
	#fixed-cta .engineer_area a:after{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -2;  top: 0; left:0;background:linear-gradient(#25a3c9,#0089a4);border-radius: 9px 0 0 9px;}
	#fixed-cta .engineer_area a:hover:before{  opacity:0;}
	
	#fixed-cta .engineer_area a .inner{display: flex;align-items: center;justify-content: center}
	#fixed-cta .engineer_area a .inner .img{width: 80px;}
	#fixed-cta .engineer_area a .inner .img img{width:100%;}
	
	
	#fixed-cta .engineer_area a .inner .text span{display:block;text-align: center;font-weight: 600}
	#fixed-cta .engineer_area a .inner .text span:nth-of-type(1){font-size:18px;}
	#fixed-cta .engineer_area a .inner .text span:nth-of-type(2){font-size:15px;}
	
	#fixed-cta .engineer_area a .inner .icon{display:none;}
	
	/* 規定 */
	#rules {	width:90%;min-width: 1000px;max-width: 1200px;	margin: 0 auto;	margin-top: 50px;}
	#rules .h2-box {	display: flex;	flex-direction: column;	align-items: center;}
	.rules-bubble {  position: relative;  display: inline-block;  width: 300px;  margin-bottom: 30px;  padding: 11px 16px;  border-radius: 50px;  background: linear-gradient(90deg, #0089a4, #25a3c9);  text-align: center;  line-height: 1.5;}
	.rules-bubble::after {  content: "";  position: absolute;  bottom: -17px;  left: 50%;  width: 22px;  height: 18px;  background: linear-gradient(90deg, #0089a4, #25a3c9);  clip-path: polygon(50% 100%, 0 0, 100% 0);  transform: translateX(-50%);}
	#rules span {	color: #000000;margin: 0 10px;	/*text-shadow: rgb(0, 171, 199) 3px 0px 0px, rgb(0, 171, 199) 2.83487px 0.981584px 0px, rgb(0, 171, 199) 2.35766px 1.85511px 0px, rgb(0, 171, 199) 1.62091px 2.52441px 0px, rgb(0, 171, 199) 0.705713px 2.91581px 0px, rgb(0, 171, 199) -0.287171px 2.98622px 0px, rgb(0, 171, 199) -1.24844px 2.72789px 0px, rgb(0, 171, 199) -2.07227px 2.16926px 0px, rgb(0, 171, 199) -2.66798px 1.37182px 0px, rgb(0, 171, 199) -2.96998px 0.42336px 0px, rgb(0, 171, 199) -2.94502px -0.571704px 0px, rgb(0, 171, 199) -2.59586px -1.50383px 0px, rgb(0, 171, 199) -1.96093px -2.27041px 0px, rgb(0, 171, 199) -1.11013px -2.78704px 0px, rgb(0, 171, 199) -0.137119px -2.99686px 0px, rgb(0, 171, 199) 0.850987px -2.87677px 0px, rgb(0, 171, 199) 1.74541px -2.43999px 0px, rgb(0, 171, 199) 2.44769px -1.73459px 0px, rgb(0, 171, 199) 2.88051px -0.838247px 0px;*/	}
	
	/*.rules-inner {	display: flex;	align-items: stretch;justify-content: space-between;	gap: 10px;	margin-top: 35px;}
	.rules-inner .box h3{font-size: 24px;text-align: center;}
	.rules-inner .box {	width: 32%;	display: flex;	flex-direction: column;	align-items: center;	gap: 25px;	padding: 50px 5px;	border-top: 1px solid #61cecb;border-bottom: 1px solid #61cecb;}
	.rules-inner .box p {	text-align: center;}
	.rules-inner .box .sub_title{font-size: 18px}*/
	
	.rules-inner {	display: flex;	justify-content:space-between; 	gap: 10px;	margin-top: 80px;}
	.rules-inner .box{	width: 32%;display: flex;  flex-direction: column;	padding: 50px 0px 0 0;	background: #fbfced;border-radius: 10px;box-shadow: 0px 0px 15px 0px #e0e2d3;}
	
	.rules-inner .box .number{width:65px;height: 65px;display: flex;align-items: center;justify-content: center;background: #00b4d6;border-radius: 50%;color: white;font-size:30px;font-weight: 800;text-align: center;margin:-80px auto 20px auto;}
	.rules-inner .box h3{font-size: 30px;text-align: center;font-weight: 700;color: #004966;margin-bottom: 20px}
	.rules-inner .box figure{width: 36%;margin:0 auto 20px auto;padding: 20px;border-radius: 50%;background: white;border:1px solid #0095c0;}
	.rules-inner .box figure img{width:100%;}
	.rules-inner .box .sub_title{margin:0 auto 20px auto;padding-bottom: 10px;font-size: 25px;text-align: center;color: #00334c;font-weight: 600;border-bottom: 1px solid #007ab8;width: fit-content}
	.rules-inner .box .text{flex-grow: 1;font-size: 17px;line-height: 1.5;width:80%;		margin: 0 auto 20px auto}
	
	.rules-inner .box .point{position: relative;background: linear-gradient(0deg, #23a6d3, #1e73b8);border-radius: 0 0 10px 10px;padding:26px 0 18px 0;text-align: center;color: white;font-size: 26px;letter-spacing: 1px;font-weight: 600 }
	.rules-inner .box .point::before{content:'';position: absolute;top: 0%;left: 50%;transform: translateX(-50%);border-style: solid;  border-right: 30px solid transparent;  border-left: 30px solid transparent;  border-top: 20px solid #fcfff3;  border-bottom: 0;}
	

	/* 交換 */
	#replace {width:1000px;	margin: 70px auto 60px;	position: relative;}
	#replace::after {    content: "";    width: 300px;    height: 75px;    background-color: #fff;    position: absolute;    bottom: -135px;	left: calc(50% - 150px);	clip-path: polygon(50% 100%, 0 0, 100% 0);}
	
	.replace-img-box {	text-align: center;	margin-bottom: -35px;}
	.replace-img-box img{width:30%;}
	
	.replace-inner {	background-color: #f7ffff;	border: 1px solid #0ab0dd;padding: 75px 0 0;}
	.replace-inner .text-box {	width:85%;	margin: 0 auto 30px;	display: flex;	flex-direction: column;	align-items: center;	gap: 20px;}
	.replace-inner .text-box h2{font-size: 28px;letter-spacing: 1px;color: black;font-weight: 700;}
	.replace-inner .text-box p{line-height:1.8;letter-spacing: 1px}
	
	.replace-inner .h2-box {width: 90%;margin: 0 auto;	/*display: flex;	justify-content: center;	align-items: flex-end;	gap: 13px;*/}
	.replace-inner .h2-box h2{width: fit-content; font-size: 24px;color: #008eb7;text-align: center;border-top: 1px solid #0ab0dd;border-bottom: 1px solid #0ab0dd;padding: 10px 20px;margin: 0 auto 30px auto}
	
	.round-bubble {  position: relative;   width: 300px; margin: 0 auto 10px auto;padding: 8px 0; text-align: center;  background: #ff632f;  border-radius:30px;  box-sizing: border-box;}
	.round-bubble:before {  content: "";  position: absolute;  bottom: -25px;  left: 50%; transform: translateX(-50%); border: 15px solid transparent;  border-top: 20px solid #ff632f;  z-index: 0;}

	.replace-inner .point {width:90%;	display: flex;flex-wrap: wrap;align-items: stretch;justify-content: space-between;	gap: 20px 0;	margin: 25px auto 0;	padding-bottom: 40px;}
	.replace-inner .point .box {	background-color: #00abd3;	border-radius: 5px;	width: 49%;	padding: 25px 30px;box-sizing: border-box}
	.replace-inner .point .box h3 {	text-align: center;font-size: 20px;color: white;margin: 0 0 10px 0;font-weight: 600;letter-spacing: 1px;}
	.replace-inner .point .box p {color: white;font-size: 15px;letter-spacing: 1px;line-height: 1.5}

	
	/* 製品紹介 */
	#products {background-color: #fbfcd6;	}
	.products-wrapper {	max-width: 1000px;	margin: 0 auto;}
	#products .h2-box {	display: flex;	flex-direction: column;	justify-content: center;	align-items: center;	padding-top: 100px;	margin-bottom: 120px;}
	.products-bubble {  position: relative;  display: inline-block;  width: 300px;  margin-bottom: 30px;  padding: 11px 16px;  border-radius: 50px;  background: linear-gradient(0deg, #ff9a16, #ffd82a);  text-align: center;  line-height: 1.5;}
	.products-bubble::after {  content: "";  position: absolute;  bottom: -15px;  left: 50%;  width: 42px;  height: 16px;  background:#ff9a16;  clip-path: polygon(50% 100%, 0 0, 100% 0);  transform: translateX(-50%);}

	
	#products .h2-box .title01{font-weight: 700;position: relative;}
	#products .h2-box .title01::before {  content: "";  position: absolute;  bottom:0px;  left: 50%;  width:100%;  height:30px;  background: white;   transform: translateX(-50%);}
	#products .h2-box .title01 .primary{color: #ff7c1e;font-size: 40px;padding:5px 10px;position: relative}
	#products .h2-box .title01 .secondary{color: #003140;font-size: 35px;position: relative}
	
	#products .h2-box .title02{color: #003140;font-size: 35px;font-weight: 700}
	
	.products-box01 {	display: flex;	gap: 15px;	position: relative;	margin-bottom: 80px;}
	.products-box01 .icon {	background: linear-gradient(0deg, #ff9a16, #ffd82a);width: 70px;height: 70px;position: absolute;top: calc(50% - 35px);left: calc(50% - 35px);	display: flex;	justify-content: center;	align-items: center;border-radius: 50%;font-size: 24px}
	.products-box01 .inner {	background-color: #fff;	width: 50%;	border: 3px solid #ffe49f;	display: flex;	flex-direction: column;	justify-content: center;	align-items: center;	gap: 15px;	padding: 0 30px 35px;}
	.products-box01 .inner img {	margin-top: -90px;width: 260px;}
	.products-box01 .inner h3 {	margin-bottom: 15px;font-size: 26px;text-align: center;color: #ff8700;	position: relative;}
	.products-box01 .inner h3 span{ background: linear-gradient(90deg, #6dc300, #74e3e1);display: block;color: white;font-size:18px;padding: 3px 0 ;border-radius: 50px;margin: 0 auto 10px auto;width: 60%}
	.products-box01 .inner p{font-size: 16px;letter-spacing: 1px;line-height: 1.5}
	.products-box01 .inner .round-icon {	position: absolute;	bottom: 110%;	right: 0;	 background: linear-gradient(90deg, #6dc300, #74e3e1); 	width:110px;	height:110px;	border-radius: 50%;	text-align: center;	padding-top: 50px;font-size: 18px;line-height: 1;}
	
	#products .recommend {	border-radius: 10px;	margin-bottom: 80px;	}
	#products .recommend h3 {position: relative;	text-align: center;	margin-bottom: 25px;color: #113a5b;font-size: 30px}
	#products .recommend h3::before{content:"!";position:absolute;top:0%;left:8%;	border: 1px solid #113a5b;width:50px;height:50px;border-radius: 50%;color:#113a5b;	background-color: #fff;	font-size: 40px;font-weight: 700;	transform: rotate(-15deg);}
	#products .recommend-inner {	display: flex;	gap: 10px;justify-content: space-around;}
	#products .recommend-inner .box {	background-color: #3a474f;	width: 25%;	height: 160px;	display: flex;	justify-content: center;	align-items: center;border-radius: 10px;}
	#products .recommend-inner .box .inner{text-align: center}
	#products .recommend-inner .box .inner img{width:35%;}
	#products .recommend-inner .box .inner p {	text-align: center;color: white;font-size: 18px}
	
	#products .banner {	width: 100%;}
	#products .banner a {display: block;position: relative;	width: 100%;	height:400px;/*border-radius: 10px;*/overflow: hidden}
	#products .banner a::before{ content: "";  position: absolute;bottom:0px;  left: 0%;  width:100%;  height:50%;  background:url("../img/products-banner-orange.png") no-repeat;background-size:100% auto;background-position: 50% 100%;z-index: 2}
	#products .banner a::after{ content: "";  position: absolute;top:0px;  left: 0%;  width:100%;  height:100%; /* background:rgba(000,000,000,0.5);*/ background: linear-gradient(90deg, #00a4ff, #00326c);opacity: 0.7; z-index: 0}
	#products .banner a .photo_area{position: absolute;top: 0;left: 0;	width: 100%;height: 100%;overflow: hidden}
	#products .banner a .photo_area img{width: 100%;height: 100%;object-fit: cover;transition: transform .6s ease; }
	#products .banner a .text_area{position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);text-align: center;z-index: 1;}
	#products .banner a .text_area .sub{font-size: 20px;width: fit-content;  background: linear-gradient(0deg, #ff9a16, #ffd82a); margin: 0 auto 20px auto;padding: 5px 30px;border-radius: 50px;font-weight: 600}
	#products .banner a .text_area .primary{font-size: 36px;font-weight: 600;display: flex;align-items: center}
	#products .banner a .text_area .primary span{border:1px solid white;padding: 5px 30px;margin-left: 20px;border-radius: 50px;font-size: 20px;line-height: 1}
	
	#products .banner a:hover::after{ background:rgba(000,000,000,0.6);}
	#products .banner a:hover .photo_area img{transform: scale(1.1);}

	/* ポイント */
	#point {	max-width: 915px;	width: 90%;	margin: 0 auto 65px;}
	#point h2 {	text-align: center;	margin: 80px auto 80px;}
	#point h2 span{display:block;color: #00a7af;font-size: 40px}
	#point .point-inner {	display: flex;	justify-content: space-between;	row-gap:50px;	flex-wrap: wrap;}
	#point .point-inner .box {position: relative;	background-color: #f9f9f9;	width: 49.18%;	border-radius: 10px;		padding: 0px 0px;}
	
	#point .point-inner .box .number_area{position: absolute;top: -20px; left: 50%;transform: translateX(-50%);	background: linear-gradient(90deg, #4cb7d3, #3f7ec9);	width: 50%;	border-radius: 50px;	padding: 0px 0px;;text-align: center;color: white}
	#point .point-inner .box .number_area span{position: relative;font-size: 40px;font-weight: 900;}
	#point .point-inner .box .number_area span::before{content: 'POINT';position: absolute;top:50%;right: 100%;transform: translateY(-50%);	font-size: 16px;padding-right: 10px}
	
	#point .point-inner .box figure{margin:0;padding: 0;aspect-ratio:1.8/1;border-radius: 10px 10px 0 0;overflow: hidden}
	#point .point-inner .box figure img{width: 100%;height: 100%;object-fit: cover}
	#point .point-inner .box .text_area{padding: 20px 20px 0px}
	
	#point .point-inner .box .text_area h3 {	margin-bottom: 15px;	text-align: center;color: #00a7af;font-size: 24px;}
	#point .point-inner .box .text_area p {	margin-bottom: 25px;	line-height: 1.5;font-size: 16px;letter-spacing: 1px}
	
	
	/* 導入の流れ */
	#flow {	background-color: #f5fcfc;	padding: 85px 0 70px;}
	#flow h2 {	text-align: center;	margin-bottom: 35px;}
	.flow-inner {width:1000px;	margin: 0 auto;}
	
	.flow-inner .box {	background-color: #fff;	border: 1px solid #00bcc1;	border-radius: 10px;margin-bottom: 20px;	display: flex;flex-wrap: wrap;justify-content: space-between;overflow: hidden}
	
	.flow-inner .box .number_area{width: 20%;	background: linear-gradient(90deg, #4cb7d3, #3fd3cc);margin: 0;padding: 0;color: white;display: flex;align-items: center;  justify-content:center;}
	.flow-inner .box .number_area p{text-align: center}
	.flow-inner .box .number_area p span{display:block;font-size: 50px}
	
	.flow-inner .box .text{width: 80%;margin: 0;padding: 30px 30px}
	.flow-inner .box .text h3{color: #00bcc1;font-size: 22px}
	.flow-inner .box .text p{line-height: 1.5;font-size: 16px;letter-spacing: 1px}
	
	
	/* サポート */
	#support {	width:1000px;margin: 80px auto 75px;}
	#support h2 {	text-align: center;	margin-bottom: 42px;}
	#support .introduction_text {width: 65%;margin: 0 auto;	text-align: center;	margin-bottom: 42px;font-size: 18px;letter-spacing: 1px}	
	
	#support .inner{display: flex;flex-wrap: wrap; justify-content: center;gap:20px}
	#support .inner .box{position: relative;width:32%;background: linear-gradient(90deg, #e2effd, #e5f8ff);padding: 30px 30px}
	#support .inner .box::before{content: 'SUPPORT';position: absolute;bottom:10%;left:50%;transform: translateX(-50%);	font-size:46px;color: white;z-index: 0;font-weight: 900}
	#support .inner .box h3 {font-size: 20px;	text-align: center;	margin-bottom: 15px;padding: 10px 0;color: white;background: linear-gradient(90deg, #366fd5, #45a1ff);border-radius: 50px}
	#support .inner .box p{position: relative;line-height: 1.5;font-size: 16px;letter-spacing: 0px;color: #252e4f}
	
	
	/* 実績紹介 */
	#example {	background-color: #f5fcfc;	padding:80px 0px;}
	#example h2 {	text-align: center;	margin-bottom: 40px;}
	/*.example-text {	text-align: center;	margin-bottom: 50px;}
	.example-inner {	max-width: 1000px;	width: 90%;	display: flex;	gap: 20px;	margin: 0 auto;}
	.example-inner .box {	width: 33.33%;	background-color: #fff;	border: 1px solid #c5e2de;	border-radius: 10px;	padding: 35px 0 50px;}
	.example-inner .box .icon {	width: fit-content;	background-color: #5fbbff;	padding: 5px 20px 4px;	line-height: 1;	margin-bottom: 10px;}
	.example-inner .box .icon-new {	width: fit-content;	background-color: #fc7e8d;	padding: 5px 20px 4px;	line-height: 1;	margin-bottom: 10px;}
	.example-inner .box img {	width: 100%;	aspect-ratio: 8 / 5;	object-fit: cover;	margin: 20px 0 45px;}
	.example-table td {	vertical-align: top;}
	.example-table {	margin-bottom: 35px;}
	.example-inner .box .icon,.icon-new,.h3,.example-table,.p {	margin-left: 20px;	margin-right: 20px;}*/
	#example .container{	width: 1000px;	display: flex;justify-content: space-between;	gap: 20px;	margin: 0 auto;}
	#example .container .unit{width: 32%;padding: 20px 20px;background: white;border: 1px solid #c5e2de;}
	#example .container .unit .number{width: fit-content;margin-bottom: 15px;background:#def2fa;padding: 5px 20px;line-height: 1;color: #128cb9; }
	#example .container .unit figure{height:200px;margin: 0 auto 20px auto;padding: 0;}
	#example .container .unit figure img{width:100%;height: 100%;object-fit: cover;}
	#example .container .unit .name h3{padding-bottom: 5px;margin-bottom: 20px;font-size: 18px;font-weight: 600;border-bottom: 1px solid #128cb9;}
	#example .container .unit .category ul {margin: 0 0 20px 20px;padding: 0;color: #128cb9}
	#example .container .unit .category ul li{margin: 0;padding: 0;font-weight: 500;}
	#example .container .unit h4{background: #128cb9;color: white;padding:5px 10px;margin-bottom: 10px;font-weight: 500;line-height: 1;}
	#example .container .unit p{font-size:13px;}
	#example .container .unit .background{margin-bottom: 20px}
	

	/* FAQ */
	#faq {	max-width: 900px;	width: 90%;	margin: 60px auto 75px;}
	#faq h2 {	text-align: center;	margin-bottom: 30px;}
	.faq-box {		border: 1px solid #128cb9;border-radius: 10px;	padding: 25px 30px 30px;}
	.faq-box .q {	background-color: #128cb9; 	width: 35px;	height: 35px;	border-radius: 50%;	display: flex;	justify-content: center;	align-items: center;}
	.faq-box .question {	color: #128cb9;	display: flex;	align-items: center;	gap: 22px;	margin-bottom: 15px;}
	.faq-box .line {	border-top: 1px solid #bacace;	padding-top: 20px;}
	.faq-box:not(:last-child) {	margin-bottom: 20px;}

	
	/* お悩み */
	#solution {	background-color: #ffffe3;	padding: 90px;}
	.solution-inner {width: 1000px;	margin: 0 auto;}
	
	.solution-inner .h2-box {	display: flex;	flex-direction: column;	align-items: center;	margin-bottom: 45px;}
	
	.text-gray40 {	color: #666666;}
	.text-gray30 {	color: #4d4d4d;}
	.text-navy {	color: #4a5a70;}
	.solution-bubble {  position: relative;  display: inline-block;  width: 500px;  margin-bottom: 18px;  padding: 11px 16px;  border-radius: 50px; background: linear-gradient(90deg, #18c8f5, #4354ff,#00adff); text-align: center;  line-height: 1.5;}
	.solution-bubble::after {  content: "";  position: absolute;  bottom: -11px;  left: 50%;  width: 22px;  height: 12px;  background-color: #4354ff;  clip-path: polygon(50% 100%, 0 0, 100% 0);  transform: translateX(-50%);}
	
	.solution-inner .h2-box .inner {	display: flex;	align-items: flex-end;	gap: 15px;}
	.solution-inner .h2-box .inner h2 {	text-align: center;	margin-bottom: 20px;}
	.solution-inner .h2-box .inner h2 span{display:block;color: #0043af}
	
	.text-blue {	color: #128cb9;}
	
	.solution-bubble-b {  position: relative;  display: inline-block;  width: 100%;  margin-bottom: 18px;  padding: 11px 16px;  border-radius: 20px;  background-color: #e6e6e6;  text-align: center;  line-height: 1.5;  margin-bottom: 60px;}
	.solution-bubble-b::after {  content: "";  position: absolute;  bottom: -39px;  left: 50%;  width: 115px;  height: 40px;  background-color:#e6e6e6;  clip-path: polygon(50% 100%, 0 0, 100% 0);  transform: translateX(-50%);}
	.solution-bubble-b h3 {	text-align: center;	margin-top: 45px;}
	.solution-bubble-b h3 span{display:block;font-size: 30px}
	
	
	.solution-bubble-b .inner {margin-top: -10px;	margin-bottom: 30px;position: relative;width: 85%;height: 230px;margin: 0 auto;}
	.solution-bubble-b .inner .illustration{position:absolute;bottom: 20%;left: 50%;transform: translateX(-50%);width: 300px;z-index: 1}
	.solution-bubble-b .inner .illustration img {	width:100%;}
	
	.solution-bubble-b .inner .bubble_style{background: url("../img/solution-worries-bubble.png") no-repeat;background-position: 50% 50%;background-size: 100% auto;width: 300px;height: 250px;display: flex;align-items: center;}
	
	.solution-bubble-b .inner .bubble01{position: absolute;top: -10%;left: 0;}	
	.solution-bubble-b .inner .bubble02{position: absolute;top: -10%;right: 0}	
	.solution-bubble-b .inner .bubble01 p,
	.solution-bubble-b .inner .bubble02 p{	text-align: center;	width: 55%;margin: 0 auto;font-weight: 600;padding: 0;}
	
	
	.solution-text {	text-align: center;	position: relative;	margin-bottom: 35px;font-size: 32px;}
	.solution-text .sub{display: block;font-size: 22px}
	.solution-text .text-color{color:#0043af}
	.solution-text::before {	content: "";	position: absolute;	bottom: 0;	left: calc(50% - 300px);background: linear-gradient(0deg, #18c8f5, #4354ff,#00adff);	width: 4px;	height: 40px;	transform: rotate(-20deg)}
	.solution-text::after {	content: "";	position: absolute;	bottom: 0;	left: calc(50% + 300px);background: linear-gradient(0deg, #18c8f5, #4354ff,#00adff);width: 4px;	height: 40px;	transform: rotate(20deg)}
	
	
	.solution-inner .h3-box {	background: linear-gradient(90deg, #8271ff, #4354ff,#00adff);	border-radius: 10px;	padding: 23px 0 25px;	margin-bottom: 20px;}
	.solution-inner .h3-box p {	text-align: center;}
	.solution-inner .h3-box p:nth-child(1) {	width: fit-content;background: #fff;	border-radius: 50px;	margin: 0 auto 15px;	padding: 12px 50px;	line-height: 1;color: #00118e}
	
	.solution-box {	display: flex;	justify-content: space-between;	flex-wrap: wrap;	row-gap: 20px;}
	.solution-box .box {	width: 49%;	background-color: #fff;	display: flex;	align-items: center;	flex-direction: column;border-radius: 10px;	padding: 20px 0 30px;border: 1px solid #4354ff;}
	.solution-box .box .icon{background: linear-gradient(45deg, #8271ff, #4354ff,#00adff);width: 120px;height: 120px;border-radius: 50%;display: flex;align-items: center;justify-content: center;margin-bottom: 10px}
	.solution-box .box .icon img{width:70%;}
	.solution-box .box h4{color: #261558;margin: 0 auto 5px auto;padding: 0}
	

	/* お問い合わせ */
	#contact {	background-color: #f5fcfc;	padding: 70px 0 80px;}
	#contact h2, #contact p {	width: fit-content;	margin: 0 auto;}
	#contact h2 {	margin-bottom: 35px;}
	#contact p {	margin-bottom: 30px;}
	/*.contact-table {	max-width: 800px;	width: 90%;	margin: 0 auto;}
	.contact-table tr {	display: flex;	flex-direction: column;	justify-content: center;}
	.contact-table th {	padding-left: 5px;}
	.contact-table input, .contact-table textarea, .contact-table select {	width: 800px;	resize: none;	border: 1px solid #e7f1f7;	border-radius: 5px;	margin: 10px 0 18px;}
	.contact-table .required {	background-color: #ff6464;	line-height: 1;	margin-left: 16px;	padding: 4px 15px;}
	.contact-table input, .contact-table select {	height: 50px;}
	.contact-table textarea {	height: 150px;}
	.contact-table select {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	padding: 0 10px;}
	.pp {	width: fit-content;	text-align: center;	margin: 0 auto;}
	.pp a {	color: #29abe2;	text-align: center;}
	.pp p {	margin: 0 !important;}
	.pp label {	margin: 12px 0 26px;}
	.pp .check {	display: flex;	justify-content: center;	align-items: center;	gap: 12px;}
	.pp .check input {	accent-color: #128cb9;	width: 22px;	height: 22px;	border: 1px solid #ccc;}
	.pp input {  display: none;}
	.pp span {  width: 22px;  height: 22px;  border: 2px solid #ccc;  display: inline-block;  position: relative;}
	.pp span::after {  content: "✓";  font-size: 18px;  color: #fff;  position: absolute;  top: 50%;  left: 50%;  transform: translate(-50%, -50%);  opacity: 0;  transition: 0.2s;}
	.pp input:checked + span {	border: 1px solid #128cb9;	background: #128cb9;}	
	.pp input:checked + span::after {  opacity: 1;}
	.submit {	color: #fff;	font-size: 17px;	font-weight: 700;	background-color: #128cb9;	max-width: 800px;	width: 90%;	height: 60px;	text-align: center;	border: 0;	display: block;	margin: 0 auto;}*/
	
	#contact #form_group{width: 1000px;margin: 0 auto 100px auto}	
	
	#contact #form_group .unit .q{position:relative;margin: 0 auto 10px auto;padding: 0 0 0 20px;font-size: 18px;letter-spacing: 1px;font-weight: 500;}
	#contact #form_group .unit .q::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: #0043af;}
	
	#contact #form_group span.require{margin-left: 10px;padding:2px 8px;background: #ff632f;font-size:14px;color: white;font-weight: 500;}
	
	#contact #form_group .unit .a{margin: 0 auto 30px auto;}
	
	#contact #form_group form input[type=text],
	#contact #form_group form input[type=tel],
	#contact #form_group form input[type=email],
	#contact #form_group form textarea{outline: 0;border:1px solid #4d4d4d; width:96%; margin: 0 ;padding:14px 2%;font-size: 16px;letter-spacing:1px;box-sizing: border-box;border-radius: 5px}
	#contact #form_group form textarea{height:200px;}	
	
	#contact #form_group form input[type=text]:focus,
	#contact #form_group form input[type=tel]:focus,
	#contact #form_group form input[type=email]:focus,
	#contact #form_group form textarea:focus{border:1px solid #0043af;}
	
	
	#contact #form_group form #attached label {display:inline-block;margin-top:5px;margin-right:10px;padding:12px 10%;font-size:16px;letter-spacing:1px;font-weight:500;background:white;border:1px solid #4d4d4d; cursor: pointer;  border-radius:5px;  transition: .3s;}
	#contact #form_group form #attached label:hover {  background:#0043af;color:white;}
	#contact #form_group form #attached input[type="file"] {  display: none;}
	#contact #form_group form #attached span{font-size: 14px;letter-spacing: 1px}
	
	
	#contact #form_group .unit_pp{margin: 50px auto 30px auto;font-size: 18px;letter-spacing: 1px;font-weight: 500;text-align: center}	
	#contact #form_group form input[type="checkbox"] {position: relative;width: 30px;height:30px;border: 1px solid #000;background:white;border-radius: 3px;vertical-align: -10px;-webkit-appearance: none;  -moz-appearance: none;     appearance: none;}
	#contact #form_group form input[type="checkbox"]:checked:before {  position: absolute;  top:4px;left:9px;transform: rotate(45deg);  width: 8px;  height: 12px;  border-right:3px solid white;  border-bottom:3px solid white;  content: '';}
	#contact #form_group form input[type="checkbox"]:checked{background:#0043af;border: 1px solid #0043af;}
	#contact #form_group .unit_pp p{text-align:center;margin: 10px auto 0px auto;padding: 0;font-size:16px;letter-spacing: 1px;font-weight: 500;}
	#contact #form_group .unit_pp p a{color:#0043af;text-decoration:underline }
	#contact #form_group .unit_pp p a:hover{}
	
	#contact #form_group .unit_submit{}
	#contact #form_group form input[type=submit],
	#contact #form_group form input[type=reset]{-webkit-appearance: none; outline: 0;border:0;display: block; width:100% !important;padding: 40px 0; margin: 0 auto;font-size:20px;letter-spacing:1px;font-weight:600;color: white;background:#0043af;border-radius: 5px}
	#contact #form_group form input[type=submit]:hover,
	#contact #form_group form input[type=reset]:hover{background: #128cb9;}
	
	#contact #privacy_policy{width:1000px;margin: 0 auto 0px auto;border-top: 1px solid #0043af;border-bottom: 1px solid #0043af;padding: 60px 0 30px 0}
	#contact #privacy_policy h3{margin: 0 auto 30px auto;padding: 0;text-align:center;}
	#contact #privacy_policy .period{margin: 0 auto 30px auto;}
	#contact #privacy_policy .period h4{position:relative;margin: 0 auto 15px auto;padding:20px 0 0 0;letter-spacing: 1px;color:#0043af;}
	#contact #privacy_policy .period h4::before{content: '';position:absolute;top: 0%;left: 0px;width:30px;height:1px;background:#0043af;}
	#contact #privacy_policy .period p{margin: 0 ;padding: 0;font-size:14px;line-height: 1.5;letter-spacing: 0px}	
	#contact #privacy_policy .period ul{padding: 10px 0 0 30px;}
	#contact #privacy_policy .period ul li{margin: 0 ;font-size:14px;line-height: 1.5;letter-spacing: 1px}
	
	/* お問い合わせ 確認・完了*/
	#confirmation,
	#sent{background-color: #f5fcfc;	margin:0px auto 0px auto;padding:200px 0 100px 0;}
	
	#confirmation h2,
	#sent h2{text-align: center;margin:0px auto 50px auto;}
	
	#confirmation .message,
	#confirmation .text{width:700px;margin: 0 auto 50px auto;padding: 0;font-size: 18px;line-height: 1.5;letter-spacing: 1px;font-weight: 500;text-align:center;}
	#confirmation .message{color: #ff3131;}
	
	#confirmation .error_messe{position:relative;width:700px;margin: 0 auto 10px auto;padding: 0 0 0 20px;font-size:16px;line-height: 1.5;letter-spacing: 1px;font-weight: 500;}
	#confirmation .error_messe::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background:#ff3131;}
	
	#confirmation .button_area{text-align: center;width:700px;margin: 50px auto 0 auto}
	#confirmation input[type=button],
	#confirmation input[type=submit]{-webkit-appearance:none;outline:0;border:0;display:inline-block;width:49%;margin:0 auto;padding:30px 0px;font-size:20px;letter-spacing:1px;font-weight: 500;background: #0043af;color: white;border-radius: 5px;box-sizing: border-box;}
	#confirmation input[type=button]:hover,
	#confirmation input[type=submit]:hover{background:#128cb9;}
	
	#confirmation .input_all table{width:700px;margin: 0 auto 50px auto;border-collapse:collapse;font-size:16px;letter-spacing: 1px;font-weight:500;line-height: 1.5}
	#confirmation .input_all table th{position:relative;display: inline-block;width: 100%;text-align: left;font-weight: 500;color:#0043af;margin: 0 auto 10px auto;padding: 0 0 0 20px;}
	#confirmation .input_all table th::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background:#0043af;}	
	#confirmation .input_all table td{display: inline-block;width: 100%;margin-bottom: 20px}
	
	#sent .text{width:600px;margin: 0 auto 40px auto;padding: 0;font-size: 16px;line-height: 1.7;letter-spacing: 1px;font-weight: 500;}
	#sent a{display:block;width:600px;margin: 0 auto;padding: 30px 0px;font-size:20px;letter-spacing:1px;font-weight: 500;background: #0043af;color: white;border-radius: 5px;box-sizing: border-box;text-align: center;text-decoration: none;}
	#sent a:hover{background: #128cb9;}
}

@media (max-width: 1050px) {	
	/****************************タブレット・スマホ共通****************************/	
	
	/* 規定 */
	#rules {	width:100%;	margin: 0 auto;	margin-top: 30px;}
	#rules .h2-box {	display: flex;	flex-direction: column;	align-items: center;}
	.rules-bubble {  position: relative;  display: inline-block;  width: 300px;  margin-bottom: 30px;  padding: 11px 16px;  border-radius: 50px;  background: linear-gradient(90deg, #0089a4, #25a3c9);  text-align: center;  line-height: 1.5;}
	.rules-bubble::after {  content: "";  position: absolute;  bottom: -17px;  left: 50%;  width: 22px;  height: 18px;  background: linear-gradient(90deg, #0089a4, #25a3c9);  clip-path: polygon(50% 100%, 0 0, 100% 0);  transform: translateX(-50%);}
	#rules span {	color: #000000;margin: 0 10px;	}
	/*.rules-inner {width:80%;		margin: 35px auto 0 auto;}
	.rules-inner .box h3{font-size: 28px;text-align: center;margin-bottom: 10px}
	.rules-inner .box {	padding: 30px 5px;	border-top: 1px solid #61cecb;}
	.rules-inner .box p {	text-align: center;}
	.rules-inner .box .sub_title{font-size: 18px;margin-bottom: 10px}*/
	
	
	
	/* 交換 */
	#replace {width:85%;	margin: 35px auto 60px;	position: relative;}
	#replace::after {    content: "";    width: 300px;    height: 75px;    background-color: #fff;    position: absolute;    bottom: -135px;	left: calc(50% - 150px);	clip-path: polygon(50% 100%, 0 0, 100% 0);}
	
	.replace-img-box {	text-align: center;	margin-bottom: -35px;}
	.replace-img-box img{width:30%;min-width:150px}
	
	
	.replace-inner {	background-color: #f7ffff;	border: 1px solid #0ab0dd;padding: 75px 0 0;}
	.replace-inner .text-box {	width:85%;	margin: 0 auto 30px;	display: flex;	flex-direction: column;	align-items: center;	gap: 20px;}
	.replace-inner .text-box h2{font-size: 26px;letter-spacing: 0px;color: black;font-weight: 700;}
	.replace-inner .text-box p{line-height:1.8;letter-spacing: 1px}
	
	.replace-inner .h2-box {width: 90%;margin: 0 auto;	/*display: flex;	justify-content: center;	align-items: flex-end;	gap: 13px;*/}
	.replace-inner .h2-box h2{width: fit-content; font-size: 24px;color: #008eb7;text-align: center;border-top: 1px solid #0ab0dd;border-bottom: 1px solid #0ab0dd;padding: 10px 20px;margin: 0 auto 30px auto}
	
	.round-bubble {  position: relative;   width: 300px; margin: 0 auto 10px auto;padding: 8px 0; text-align: center;  background: #ff632f;  border-radius:30px;  box-sizing: border-box;}
	.round-bubble:before {  content: "";  position: absolute;  bottom: -25px;  left: 50%; transform: translateX(-50%); border: 15px solid transparent;  border-top: 20px solid #ff632f;  z-index: 0;}

	.replace-inner .point {width:95%;	display: flex;flex-wrap: wrap;align-items: stretch;justify-content: space-between;	gap: 20px 0;	margin: 25px auto 0;	padding-bottom: 40px;}
	.replace-inner .point .box {	background-color: #00abd3;	border-radius: 5px;	width: 49%;	padding: 25px 30px;box-sizing: border-box}
	.replace-inner .point .box h3 {	text-align: center;font-size: 18px;color: white;margin: 0 0 10px 0;font-weight: 600;letter-spacing: 1px;}
	.replace-inner .point .box p {color: white;font-size: 15px;letter-spacing: 1px;line-height: 1.5}

	
	/* 製品紹介 */
	#products {background-color: #fbfcd6;	}
	.products-wrapper {width:90%;	margin: 0 auto;}
	#products .h2-box {	display: flex;	flex-direction: column;	justify-content: center;	align-items: center;	padding-top: 100px;	margin-bottom: 120px;}
	.products-bubble {  position: relative;  display: inline-block;  width: 300px;  margin-bottom: 30px;  padding: 11px 16px;  border-radius: 50px;  background: linear-gradient(0deg, #ff9a16, #ffd82a);  text-align: center;  line-height: 1.5;}
	.products-bubble::after {  content: "";  position: absolute;  bottom: -15px;  left: 50%;  width: 42px;  height: 16px;  background:#ff9a16;  clip-path: polygon(50% 100%, 0 0, 100% 0);  transform: translateX(-50%);}

	
	#products .h2-box .title01{font-weight: 700;position: relative;}
	#products .h2-box .title01::before {  content: "";  position: absolute;  bottom:0px;  left: 50%;  width:100%;  height:30px;  background: white;   transform: translateX(-50%);}
	#products .h2-box .title01 .primary{color: #ff7c1e;font-size: 40px;padding:5px 10px;position: relative}
	#products .h2-box .title01 .secondary{color: #003140;font-size: 35px;position: relative}
	
	#products .h2-box .title02{color: #003140;font-size: 35px;font-weight: 700}
	
	.products-box01 {	display: flex;	gap: 15px;	position: relative;	margin-bottom: 80px;}
	.products-box01 .icon {	background: linear-gradient(0deg, #ff9a16, #ffd82a);width: 70px;height: 70px;position: absolute;top: calc(50% - 35px);left: calc(50% - 35px);	display: flex;	justify-content: center;align-items: center;border-radius: 50%;font-size: 24px}
	.products-box01 .inner {	background-color: #fff;	width: 50%;	border: 3px solid #ffe49f;	display: flex;	flex-direction: column;	justify-content: center;	align-items: center;	gap: 15px;	padding: 0 30px 35px;}
	.products-box01 .inner img {	margin-top: -90px;width: 260px}
	.products-box01 .inner h3 {	margin-bottom: 15px;font-size: 26px;text-align: center;color: #ff8700;	position: relative;}
	.products-box01 .inner h3 span{ background: linear-gradient(90deg, #6dc300, #74e3e1);display: block;color: white;font-size:18px;padding: 3px 20px ;border-radius: 50px;margin: 0 auto 10px auto;width: 100%}
	.products-box01 .inner p{font-size: 16px;letter-spacing: 1px;line-height: 1.5}
	.products-box01 .inner .round-icon {	position: absolute;	bottom: 110%;	right: 0;	 background: linear-gradient(90deg, #6dc300, #74e3e1); 	width:110px;	height:110px;	border-radius: 50%;	text-align: center;	padding-top: 50px;font-size: 18px;line-height: 1;}
	
	#products .recommend {	border-radius: 10px;	margin-bottom: 80px;	}
	#products .recommend h3 {position: relative;	text-align: center;	margin:0 auto 25px auto;color: #113a5b;font-size: 25px;width: fit-content;text-align: center }
	#products .recommend h3::before{content:"!";position:absolute;top:0%;left:-10%;	border: 1px solid #113a5b;width:40px;height:40px;border-radius: 50%;color:#113a5b;	background-color: #fff;	font-size: 30px;font-weight: 700;	transform: rotate(-15deg);}
	#products .recommend-inner {	display: flex;	gap: 10px;justify-content: space-around;}
	#products .recommend-inner .box {	background-color: #3a474f;	width: 25%;	height: 160px;	display: flex;	justify-content: center;	align-items: center;border-radius: 10px;}
	#products .recommend-inner .box .inner{text-align: center}
	#products .recommend-inner .box .inner img{width:45%;}
	#products .recommend-inner .box .inner p {width: 80%;margin:10px auto 0 auto;text-align: center;color: white;font-size: 16px}
	
	#products .banner {	width: 100%;}
	#products .banner a {display: block;position: relative;	width: 100%;	height:400px;/*border-radius: 10px;*/overflow: hidden}
	#products .banner a::before{ content: "";  position: absolute;bottom:0px;  left: 0%;  width:100%;  height:50%;  background:url("../img/products-banner-orange.png") no-repeat;background-size:100% auto;background-position: 50% 100%;z-index: 2}
	#products .banner a::after{ content: "";  position: absolute;top:0px;  left: 0%;  width:100%;  height:100%; /* background:rgba(000,000,000,0.5);*/ background: linear-gradient(90deg, #00a4ff, #00326c);opacity: 0.7; z-index: 0}
	#products .banner a .photo_area{position: absolute;top: 0;left: 0;	width: 100%;height: 100%;overflow: hidden}
	#products .banner a .photo_area img{width: 100%;height: 100%;object-fit: cover;transition: transform .6s ease; }
	#products .banner a .text_area{position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);text-align: center;z-index: 1;width: 100%}
	#products .banner a .text_area .sub{font-size: 20px;width: fit-content;  background: linear-gradient(0deg, #ff9a16, #ffd82a); margin: 0 auto 20px auto;padding: 5px 30px;border-radius: 50px;font-weight: 600}
	#products .banner a .text_area .primary{font-size: 36px;font-weight: 600;text-align: center}
	#products .banner a .text_area .primary span{display: block;border:1px solid white;padding: 5px 0px;margin:10px auto 0 auto;border-radius: 50px;font-size: 20px;line-height: 1;width: 20%;}
	
	#products .banner a:hover::after{ background:rgba(000,000,000,0.6);}
	#products .banner a:hover .photo_area img{transform: scale(1.1);}

	/* ポイント */
	#point {	max-width: 915px;	width: 90%;	margin: 0 auto 65px;}
	#point h2 {	text-align: center;	margin: 80px auto 50px;}
	#point h2 span{display:block;color: #00a7af;font-size: 40px}
	#point .point-inner {	display: flex;	justify-content: space-between;	row-gap:50px;	flex-wrap: wrap;}
	#point .point-inner .box {position: relative;	background-color: #f9f9f9;	width: 49.18%;	border-radius: 10px;		padding: 0px 0px;}
	
	#point .point-inner .box .number_area{position: absolute;top: -20px; left: 50%;transform: translateX(-50%);	background: linear-gradient(90deg, #4cb7d3, #3f7ec9);	width: 90%;	border-radius: 50px;	padding: 0px 0px;;text-align: center;color: white}
	#point .point-inner .box .number_area span{position: relative;font-size: 30px;font-weight: 900;}
	#point .point-inner .box .number_area span::before{content: 'POINT';position: absolute;top:50%;right: 100%;transform: translateY(-50%);	font-size: 16px;padding-right: 10px}
	
	#point .point-inner .box figure{margin:0;padding: 0;aspect-ratio:1.8/1;border-radius: 10px 10px 0 0;overflow: hidden}
	#point .point-inner .box figure img{width: 100%;height: 100%;object-fit: cover}
	#point .point-inner .box .text_area{padding: 20px 20px 0px}
	
	#point .point-inner .box .text_area h3 {	margin-bottom: 15px;	text-align: center;color: #00a7af;font-size: 20px;}
	#point .point-inner .box .text_area p {	margin-bottom: 20px;	line-height: 1.5;font-size: 15px;letter-spacing: 0px}
	
	
	/* 導入の流れ */
	#flow {	background-color: #f5fcfc;	padding: 85px 0 70px;}
	#flow h2 {	text-align: center;	margin-bottom: 35px;}
	.flow-inner {width:80%;	margin: 0 auto;}
	
	.flow-inner .box {	background-color: #fff;	border: 1px solid #00bcc1;	border-radius: 10px;margin-bottom: 20px;	display: flex;flex-wrap: wrap;justify-content: space-between;overflow: hidden}
	
	.flow-inner .box .number_area{width: 16%;	background: linear-gradient(90deg, #4cb7d3, #3fd3cc);margin: 0;padding: 0;color: white;display: flex;align-items: center;  justify-content:center;}
	.flow-inner .box .number_area p{text-align: center}
	.flow-inner .box .number_area p span{display:block;font-size: 50px}
	
	.flow-inner .box .text{width: 84%;margin: 0;padding: 20px 30px}
	.flow-inner .box .text h3{color: #00bcc1;font-size: 22px}
	.flow-inner .box .text p{line-height: 1.5;font-size: 14px;letter-spacing: 1px}
	
	
	/* サポート */
	#support {	width:80%;margin: 80px auto 75px;}
	#support h2 {	text-align: center;	margin-bottom: 42px;}
	#support .introduction_text {margin: 0 auto;	text-align: center;	margin-bottom: 42px;font-size: 18px;letter-spacing: 1px}	
	
	#support .inner{}
	#support .inner .box{position: relative;background: linear-gradient(90deg, #e2effd, #e5f8ff);padding: 30px 30px;margin-bottom: 20px}
	#support .inner .box::before{content: 'SUPPORT';position: absolute;bottom:10%;left:50%;transform: translateX(-50%);	font-size:46px;color: white;z-index: 0;font-weight: 900}
	#support .inner .box h3 {font-size: 20px;	text-align: center;	margin-bottom: 15px;padding: 5px 0;color: white;background: linear-gradient(90deg, #366fd5, #45a1ff);border-radius: 50px}
	#support .inner .box p{position: relative;line-height: 1.5;font-size: 16px;letter-spacing: 0px;color: #252e4f}
	
	
	/* 実績紹介 */
	#example {	background-color: #f5fcfc;	padding:80px 0px;}
	#example h2 {	text-align: center;	margin-bottom: 40px;}

	#example .container{	width: 80%;margin: 0 auto;}
	#example .container .unit{margin-bottom: 20px;padding: 20px 20px;background: white;border: 1px solid #c5e2de;}
	#example .container .unit .number{width: fit-content;margin-bottom: 15px;background:#def2fa;padding: 5px 20px;line-height: 1;color: #128cb9; }
	#example .container .unit .name h3{padding-bottom: 5px;margin-bottom: 20px;font-size: 18px;font-weight: 600;border-bottom: 1px solid #128cb9;}
	#example .container .unit figure{aspect-ratio: 10 / 7;margin: 0 auto 20px auto;padding: 0;}
	#example .container .unit figure img{width:100%;height: 100%;object-fit: cover;}
	#example .container .unit .category ul {margin: 0 0 20px 20px;padding: 0;color: #128cb9}
	#example .container .unit .category ul li{margin: 0;padding: 0;font-weight: 500;}
	#example .container .unit h4{background: #128cb9;color: white;padding:5px 10px;margin-bottom: 10px;font-weight: 500;line-height: 1;}
	#example .container .unit p{font-size:13px;}
	#example .container .unit .background{margin-bottom: 20px}
	

	/* FAQ */
	#faq {	width: 80%;	margin: 60px auto 75px;}
	#faq h2 {	text-align: center;	margin-bottom: 30px;}
	.faq-box {		border: 1px solid #128cb9;border-radius: 10px;	padding: 25px 30px 30px;}
	.faq-box .q {	background-color: #128cb9; 	width: 35px;	height: 35px;	border-radius: 50%;	display: flex;	justify-content: center;	align-items: center;}
	.faq-box .question {	color: #128cb9;	display: flex;	align-items: center;	gap: 22px;	margin-bottom: 15px;}
	.faq-box .line {	border-top: 1px solid #bacace;	padding-top: 20px;}
	.faq-box:not(:last-child) {	margin-bottom: 20px;}

	
	/* お悩み */
	#solution {	background-color: #ffffe3;	padding: 80px 0;}
	.solution-inner {	margin: 0 auto;}
	
	.solution-inner .h2-box {	display: flex;	flex-direction: column;	align-items: center;	margin-bottom: 45px;}
	
	.text-gray40 {	color: #666666;}
	.text-gray30 {	color: #4d4d4d;}
	.text-navy {	color: #4a5a70;}
	.solution-bubble {  position: relative;  display: inline-block;  width: 500px;  margin-bottom: 18px;  padding: 11px 16px;  border-radius: 50px; background: linear-gradient(90deg, #18c8f5, #4354ff,#00adff); text-align: center;  line-height: 1.5;}
	.solution-bubble::after {  content: "";  position: absolute;  bottom: -11px;  left: 50%;  width: 22px;  height: 12px;  background-color: #4354ff;  clip-path: polygon(50% 100%, 0 0, 100% 0);  transform: translateX(-50%);}
	
	.solution-inner .h2-box .inner {	display: flex;	align-items: flex-end;	gap: 15px;}
	.solution-inner .h2-box .inner h2 {	text-align: center;	margin-bottom: 20px;}
	.solution-inner .h2-box .inner h2 span{display:block;color: #0043af}
	
	.text-blue {	color: #128cb9;}
	
	.solution-bubble-b {  position: relative;  width: 80%;  padding: 11px 16px;  border-radius: 20px;  background-color: #e6e6e6;  text-align: center;  line-height: 1.5;  margin:0 auto 60px auto;}
	.solution-bubble-b::after {  content: "";  position: absolute;  bottom: -39px;  left: 50%;  width: 115px;  height: 40px;  background-color:#e6e6e6;  clip-path: polygon(50% 100%, 0 0, 100% 0);  transform: translateX(-50%);}
	.solution-bubble-b h3 {	text-align: center;	margin-top: 30px;}
	.solution-bubble-b h3 span{display:block;font-size: 30px}
	
	
	.solution-bubble-b .inner {	margin-bottom: 30px;position: relative;width: 95%;height: 230px;margin: 0 auto;}
	.solution-bubble-b .inner .illustration{position:absolute;bottom: 20%;left: 50%;transform: translateX(-50%);width:30%;z-index: 1}
	.solution-bubble-b .inner .illustration img {	width:100%;}
	
	.solution-bubble-b .inner .bubble_style{background: url("../img/solution-worries-bubble.png") no-repeat;background-position: 50% 50%;background-size: 100% auto;width: 300px;height: 250px;display: flex;align-items: center;}
	
	.solution-bubble-b .inner .bubble01{position: absolute;top: -10%;left: 0;}	
	.solution-bubble-b .inner .bubble02{position: absolute;top: -10%;right: 0}	
	.solution-bubble-b .inner .bubble01 p,
	.solution-bubble-b .inner .bubble02 p{	text-align: center;	width: 55%;margin: 0 auto;font-weight: 600;padding: 0;}
	
	
	.solution-text {	text-align: center;	position: relative;	margin-bottom: 35px;font-size: 32px;}
	.solution-text .sub{display: block;font-size: 22px}
	.solution-text .text-color{color:#0043af}
	.solution-text::before {	content: "";	position: absolute;	bottom: 0;	left: calc(50% - 300px);background: linear-gradient(0deg, #18c8f5, #4354ff,#00adff);	width: 4px;	height: 40px;	transform: rotate(-20deg)}
	.solution-text::after {	content: "";	position: absolute;	bottom: 0;	left: calc(50% + 300px);background: linear-gradient(0deg, #18c8f5, #4354ff,#00adff);width: 4px;	height: 40px;	transform: rotate(20deg)}
	
	
	.solution-inner .h3-box {	background: linear-gradient(90deg, #8271ff, #4354ff,#00adff);	border-radius: 10px;	width: 80%;padding: 23px 30px 25px 30px;	margin:0 auto 20px auto;}
	.solution-inner .h3-box p {	text-align: center;}
	.solution-inner .h3-box p:nth-child(1) {	width: fit-content;background: #fff;	border-radius: 50px;	margin: 0 auto 15px;	padding: 12px 50px;	line-height: 1;color: #00118e}
	
	.solution-box {width:80%;margin: 0 auto;	display: flex;	justify-content: space-between;	flex-wrap: wrap;	row-gap: 20px;}
	.solution-box .box {	width: 49%;	background-color: #fff;	display: flex;	align-items: center;	flex-direction: column;border-radius: 10px;	padding: 20px 20px 30px;border: 1px solid #4354ff;}
	.solution-box .box .icon{background: linear-gradient(45deg, #8271ff, #4354ff,#00adff);width: 90px;height: 90px;border-radius: 50%;display: flex;align-items: center;justify-content: center;margin-bottom: 10px}
	.solution-box .box .icon img{width:70%;}
	.solution-box .box h4{color: #261558;margin: 0 auto 5px auto;padding: 0;font-size: 20px}
	.solution-box .box p{font-size:14px;}

	/* お問い合わせ */
	/*#contact {	background-color: #f5fcfc;	padding: 70px 0 50px 0;}
	
	#contact h2 {width: fit-content;	margin: 0 auto;}
	#contact p {width: 80%;	margin: 0 auto;}
	
	#contact h2 {margin-bottom: 35px;}
	#contact p {margin-bottom: 30px;}
	
	.contact-table {	width: 90%;	margin: 0 auto;}
	.contact-table tr {	display: flex;	flex-direction: column;	justify-content: center;}
	.contact-table th {	padding-left: 5px;}
	
	.contact-table input, 
	.contact-table textarea, 
	.contact-table select {	width:100%;	resize: none;	border: 1px solid #e7f1f7;	border-radius: 5px;	margin: 10px 0 18px;}
	
	.contact-table .required {	background-color: #ff6464;	line-height: 1;	margin-left: 16px;	padding: 4px 15px;}
	
	.contact-table input, 
	.contact-table select {	height: 50px;}
	
	.contact-table textarea {	height: 150px;}
	.contact-table select {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	padding: 0 10px;}
	.pp {	width: fit-content;	text-align: center;	margin: 0 auto;}
	.pp a {	color: #29abe2;	text-align: center;}
	.pp p {	margin: 0 !important;}
	.pp label {	margin: 12px 0 26px;}
	.pp .check {	display: flex;	justify-content: center;	align-items: center;	gap: 12px;}
	.pp .check input {	accent-color: #128cb9;	width: 22px;	height: 22px;	border: 1px solid #ccc;}
	.pp input {  display: none;}
	.pp span {  width: 22px;  height: 22px;  border: 2px solid #ccc;  display: inline-block;  position: relative;}
	.pp span::after {  content: "✓";  font-size: 18px;  color: #fff;  position: absolute;  top: 50%;  left: 50%;  transform: translate(-50%, -50%);  opacity: 0;  transition: 0.2s;}
	.pp input:checked + span {	border: 1px solid #128cb9;	background: #128cb9;}	
	.pp input:checked + span::after {  opacity: 1;}
	.submit {	color: #fff;	font-size: 17px;	font-weight: 700;	background-color: #128cb9;	max-width: 800px;	width: 90%;	height: 80px;	text-align: center;	border: 0;	display: block;	margin: 0 auto;}*/
	
}

@media screen and (min-width:701px) and ( max-width:1050px)  {
	/*FV*/
	#fv .container{width: 100%;	aspect-ratio: 1.2 /1;min-height: 800px;position: relative;overflow: hidden}
	
	#fv .container .photo_area{display: flex;width: 100%;height: 100%;}
	#fv .container .photo_area::after {	content: "";	background: rgba(0, 137, 164, 0.5);	position: absolute;	top: 0;	left: 0;	width: 100%;	height: 100%;	}
	#fv .container .photo_area div{height: 100%;overflow: hidden;}
	#fv .container .photo_area div.img01 img {	width: 100%;	height: 100%;	object-fit: cover;	object-position: 40% 0;}
	#fv .container .photo_area div.img02 img {	width: 100%;	height: 100%;	object-fit: cover;}
	#fv .container .photo_area div.img03 img {	width: 100%;	height: 100%;	object-fit: cover;	object-position: 60% 0;}
	#fv .container .photo_area div.img04 img {	width: 100%;	height: 100%;	object-fit: cover;	object-position: 55% 0;}
	
	#fv .container .white_bar{position:absolute;bottom:0px;left:0;width:100%;height: 30%;background: url(../img/fv-white.png);background-size:100% 100% ;background-repeat: no-repeat;  background-position: bottom left;  z-index: 1;opacity: 1}
	
	
	#fv .container .text_primary{position:absolute;top:50%;left:50%;transform: translate(-50%,-50%);width:80%;z-index: 2;}
	#fv .container .text_primary .img{position:absolute;top:-20%;right:0%;width:35%;}
	#fv .container .text_primary .img img{width:100%;}
	#fv .container .text_primary .text{position:relative;padding: 70px 0 0 0;}
	#fv .container .text_primary .text::before{content: '';position:absolute;top: 0;left: 0;width: 40%;aspect-ratio: 5 /1;min-height: 50px;background: url("../img/fv-img-06.png")no-repeat;background-position: 0% 50%;background-size: 100% auto;}
	#fv .container .text_primary .text p{color:white;font-weight: 800;padding: 0;margin: 0;line-height: 1.2; text-shadow: 0px 0px 20px rgba(0, 87, 99, 0.8);}
	#fv .container .text_primary .text p:nth-of-type(1){font-size: clamp(50px, 5.8vw, 70px);}
	#fv .container .text_primary .text p:nth-of-type(1) span{font-size: clamp(30px, 3.8vw, 40px);}
	#fv .container .text_primary .text p:nth-of-type(2){font-size: clamp(70px, 8.8vw,90px);}
	
	#fv .container .text_secondary{position:absolute;bottom:50px;left:50%;transform: translateX(-50%);width: 80%;z-index: 2;}
	#fv .container .text_secondary .banner{margin:0 auto 40px auto;width: 500px;}
	#fv .container .text_secondary .banner a{display: block;position: relative;padding: 20px 0;}
	#fv .container .text_secondary .banner a:before{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -1;  top: 0;left:0; border-radius:10px; transition:0.5s;  background:linear-gradient(#ffbf00,#ffa20f);}
	#fv .container .text_secondary .banner a:after{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -2;  top: 0; left:0;border-radius:10px;background:linear-gradient(#ff632f,#ff3131);}
	#fv .container .text_secondary .banner a:hover:before{  opacity:0;}
	
	#fv .container .text_secondary .banner a .inner{position: relative;height: 100%}
	#fv .container .text_secondary .banner a .inner .img{position: absolute;bottom: -20px;left: -10%;height: 160px;}
	#fv .container .text_secondary .banner a .inner .img img{height: 100%;}
	#fv .container .text_secondary .banner a .inner .text{text-align:center;}
	#fv .container .text_secondary .banner a .inner .text span{display:block;font-weight: 600;line-height: 1}
	#fv .container .text_secondary .banner a .inner .text span:nth-of-type(1){font-size: 18px;margin-bottom: 10px}
	#fv .container .text_secondary .banner a .inner .text span:nth-of-type(2){font-size: 30px;}
	
	#fv .container .text_secondary .banner a .inner .icon{position: absolute;top:50%;transform: translateY(-50%);right: 10%;width: 30px; height:30px;background: white;border-radius: 50%;color:#ff9a16;display: flex;justify-content: center;align-items: center;font-size: 20px;}
	
	#fv .container .text_secondary .point{display: flex;	gap: 5px;z-index: 2;align-items: center;justify-content: center}
	#fv .container .text_secondary .point p {	background-color: #ff632f;	width:24%;	border-radius: 50px;	text-align: center;	line-height: 1;	padding: 12px;color: white;font-size: clamp(19px, 1.0vw, 22px);letter-spacing: 1px;font-weight: 600}

	
	/*固定CTA*/
	#fixed-cta{position: fixed;	right: 0;	bottom: 0%;z-index: 99;background:rgba(255,255,255,0.8);display: flex;flex-wrap: wrap;justify-content: space-between;width: 100%;padding: 16px 3%}
	
	#fixed-cta .contact_area{width: 49%;}	

	#fixed-cta .contact_area a{position: relative;width:100%;margin: 0 auto;display: block;border-radius: 10px;border: 1px solid #f7931e;	padding: 16px 0 ;	}
	#fixed-cta .contact_area a:before{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -1;  top: 0;left:0; transition:0.5s;background:linear-gradient(#ffb72a,#ff9a16);border-radius: 9px 0 0 9px;}
	#fixed-cta .contact_area a:after{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -2;  top: 0; left:0;background:linear-gradient(#ff9a16,#ff632f);border-radius: 9px 0 0 9px;}
	#fixed-cta .contact_area a:hover:before{  opacity:0;}
	#fixed-cta .contact_area a .inner{display: flex;align-items: center;justify-content: center}
	#fixed-cta .contact_area a .inner .text span{display:block;text-align: center;font-weight: 600}
	#fixed-cta .contact_area a .inner .text span:nth-of-type(1){font-size:15px;}
	#fixed-cta .contact_area a .inner .text span:nth-of-type(2){font-size:20px;}
	#fixed-cta .contact_area a .inner .icon{position: absolute;top:50%;transform: translateY(-50%);right: 10%;width: 30px; height:30px;background: white;border-radius: 50%;color:#ff9a16;display: flex;justify-content: center;align-items: center;font-size:18px;}
	
	
	#fixed-cta .engineer_area{width: 49%;}
	#fixed-cta .engineer_area a{position: relative;width:100%;margin: 0 auto;display: block;border-radius: 10px;border: 1px solid #047399;	padding: 16px 0 ;	}
	#fixed-cta .engineer_area a:before{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -1;  top: 0;left:0; transition:0.5s;background:linear-gradient(#00adff,#4354ff);border-radius: 9px 0 0 9px;}
	#fixed-cta .engineer_area a:after{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -2;  top: 0; left:0;background:linear-gradient(#25a3c9,#0089a4);border-radius: 9px 0 0 9px;}
	
	#fixed-cta .engineer_area a:hover:before{  opacity:0;}
	
	#fixed-cta .engineer_area a .inner{display: flex;align-items: center;justify-content: center}
	#fixed-cta .engineer_area a .inner .img{display: none}
	
	
	#fixed-cta .engineer_area a .inner .text span{display:block;text-align: center;font-weight: 600}
	#fixed-cta .engineer_area a .inner .text span:nth-of-type(1){font-size:20px;}
	#fixed-cta .engineer_area a .inner .text span:nth-of-type(2){font-size:15px;}
	
	#fixed-cta .engineer_area a .inner .icon{position: absolute;top:50%;transform: translateY(-50%);right: 10%;width: 30px; height:30px;background: white;border-radius: 50%;color:#4354ff;display: flex;justify-content: center;align-items: center;font-size:18px;}
	
	/*規定*/
	#rules {	width:95%;	margin: 0 auto;	margin-top: 50px;}
	.rules-inner {	display: flex;	justify-content:space-between; 	gap: 10px;	margin-top: 80px;}
	.rules-inner .box{	width: 32%;display: flex;  flex-direction: column;	padding: 50px 0px 0 0;	background: #fbfced;border-radius: 10px;box-shadow: 0px 0px 15px 0px #e0e2d3;}
	
	.rules-inner .box .number{width:50px;height: 50px;display: flex;align-items: center;justify-content: center;background: #00b4d6;border-radius: 50%;color: white;font-size:20px;font-weight:600;text-align: center;margin:-80px auto 20px auto;}
	.rules-inner .box h3{font-size: 24px;text-align: center;font-weight: 600;color: #004966;margin-bottom: 20px;line-height: 1.2}
	.rules-inner .box figure{width:50%;margin:0 auto 20px auto;padding: 20px;border-radius: 50%;background: white;border:1px solid #0095c0;}
	.rules-inner .box figure img{width:100%;}
	.rules-inner .box .sub_title{width:90%;margin:0 auto 20px auto;padding-bottom: 10px;font-size: 20px;text-align: center;color: #00334c;font-weight: 600;border-bottom: 1px solid #007ab8;line-height: 1.2}
	.rules-inner .box .text{flex-grow: 1;font-size: 14px;line-height: 1.5;width:85%;		margin: 0 auto 20px auto}
	
	.rules-inner .box .point{position: relative;background: linear-gradient(0deg, #23a6d3, #1e73b8);border-radius: 0 0 10px 10px;padding:26px 10px 16px 10px;text-align: center;color: white;font-size: 20px;letter-spacing: 1px;font-weight: 600; line-height: 1.2;}
	.rules-inner .box .point::before{content:'';position: absolute;top: 0%;left: 50%;transform: translateX(-50%);border-style: solid;  border-right: 20px solid transparent;  border-left: 20px solid transparent;  border-top: 15px solid #fcfff3;  border-bottom: 0;}
	
	
	/* お問い合わせ */
	#contact {	background-color: #f5fcfc;	padding: 70px 0 50px 0;}
	
	#contact h2 {width: fit-content;	margin: 0 auto 35px auto;}
	#contact > p {width: 80%;	margin: 0 auto 30px auto;}
	
	#contact #form_group{width: 80%;margin: 0 auto 100px auto}	
	
	#contact #form_group .unit .q{position:relative;margin: 0 auto 10px auto;padding: 0 0 0 20px;font-size: 18px;letter-spacing: 1px;font-weight: 500;}
	#contact #form_group .unit .q::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: #0043af;}
	
	#contact #form_group span.require{margin-left: 10px;padding:2px 8px;background: #ff632f;font-size:14px;color: white;font-weight: 500;}
	
	#contact #form_group .unit .a{margin: 0 auto 30px auto;}
	
	#contact #form_group form input[type=text],
	#contact #form_group form input[type=tel],
	#contact #form_group form input[type=email],
	#contact #form_group form textarea{outline: 0;border:1px solid #4d4d4d; width:96%; margin: 0 ;padding:14px 2%;font-size: 16px;letter-spacing:1px;box-sizing: border-box;border-radius: 5px}
	#contact #form_group form textarea{height:200px;}	
	
	#contact #form_group form input[type=text]:focus,
	#contact #form_group form input[type=tel]:focus,
	#contact #form_group form input[type=email]:focus,
	#contact #form_group form textarea:focus{border:1px solid #0043af;}	
	
	#contact #form_group form #attached label {display:inline-block;margin-top:5px;margin-right:10px;padding:12px 20%;font-size:16px;letter-spacing:1px;font-weight:500;background:white;border:1px solid #4d4d4d; cursor: pointer;  border-radius:5px;  transition: .3s;}
	#contact #form_group form #attached label:hover {  background:#0043af;color:white;}
	#contact #form_group form #attached input[type="file"] {  display: none;}
	#contact #form_group form #attached span{font-size: 14px;letter-spacing: 1px}
	
	#contact #form_group .unit_pp{margin: 50px auto 30px auto;font-size: 18px;letter-spacing: 1px;font-weight: 500;text-align: center}	
	#contact #form_group form input[type="checkbox"] {position: relative;width: 30px;height:30px;border: 1px solid #000;background:white;border-radius: 3px;vertical-align: -10px;-webkit-appearance: none;  -moz-appearance: none;     appearance: none;}
	#contact #form_group form input[type="checkbox"]:checked:before {  position: absolute;  top:4px;left:9px;transform: rotate(45deg);  width: 8px;  height: 12px;  border-right:3px solid white;  border-bottom:3px solid white;  content: '';}
	#contact #form_group form input[type="checkbox"]:checked{background:#0043af;border: 1px solid #0043af;}
	#contact #form_group .unit_pp p{text-align:center;margin: 10px auto 0px auto;padding: 0;font-size:16px;letter-spacing: 1px;font-weight: 500;}
	#contact #form_group .unit_pp p a{color:#0043af;text-decoration:underline }
	#contact #form_group .unit_pp p a:hover{}
	
	#contact #form_group .unit_submit{}
	#contact #form_group form input[type=submit],
	#contact #form_group form input[type=reset]{-webkit-appearance: none; outline: 0;border:0;display: block; width:100% !important;padding: 40px 0; margin: 0 auto;font-size:20px;letter-spacing:1px;font-weight:600;color: white;background:#0043af;border-radius: 5px}
	#contact #form_group form input[type=submit]:hover,
	#contact #form_group form input[type=reset]:hover{background: #128cb9;}
	
	#contact #privacy_policy{width:80%;margin: 0 auto 0px auto;border-top: 1px solid #0043af;border-bottom: 1px solid #0043af;padding: 60px 0 30px 0}
	#contact #privacy_policy h3{margin: 0 auto 30px auto;padding: 0;text-align:center;}
	#contact #privacy_policy .period{margin: 0 auto 30px auto;}
	#contact #privacy_policy .period h4{position:relative;margin: 0 auto 15px auto;padding:20px 0 0 0;letter-spacing: 1px;color:#0043af;}
	#contact #privacy_policy .period h4::before{content: '';position:absolute;top: 0%;left: 0px;width:30px;height:1px;background:#0043af;}
	#contact #privacy_policy .period p{margin: 0 ;padding: 0;font-size:14px;line-height: 1.5;letter-spacing: 0px}	
	#contact #privacy_policy .period ul{padding: 10px 0 0 30px;}
	#contact #privacy_policy .period ul li{margin: 0 ;font-size:14px;line-height: 1.5;letter-spacing: 1px}
	
	/* お問い合わせ 確認・完了*/
	#confirmation,
	#sent{background-color: #f5fcfc;	margin:0px auto 0px auto;padding:200px 0 100px 0;}
	
	#confirmation h2,
	#sent h2{text-align: center;margin:0px auto 50px auto;}
	
	#confirmation .message,
	#confirmation .text{width:90%;margin: 0 auto 50px auto;padding: 0;font-size: 18px;line-height: 1.5;letter-spacing: 1px;font-weight: 500;text-align:center;}
	#confirmation .message{color: #ff3131;}
	
	#confirmation .error_messe{position:relative;width:80%;margin: 0 auto 10px auto;padding: 0 0 0 20px;font-size:16px;line-height: 1.5;letter-spacing: 1px;font-weight: 500;}
	#confirmation .error_messe::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background:#ff3131;}
	
	#confirmation .button_area{text-align: center;width:90%;margin: 50px auto 0 auto}
	#confirmation input[type=button],
	#confirmation input[type=submit]{-webkit-appearance:none;outline:0;border:0;display:inline-block;width:49%;margin:0 auto;padding:30px 0px;font-size:20px;letter-spacing:1px;font-weight: 500;background: #0043af;color: white;border-radius: 5px;box-sizing: border-box;}
	#confirmation input[type=button]:hover,
	#confirmation input[type=submit]:hover{background:#128cb9;}
	
	#confirmation .input_all table{width:80%;margin: 0 auto 50px auto;border-collapse:collapse;font-size:16px;letter-spacing: 1px;font-weight:500;line-height: 1.5}
	#confirmation .input_all table th{position:relative;display: inline-block;width: 100%;text-align: left;font-weight: 500;color:#0043af;margin: 0 auto 10px auto;padding: 0 0 0 20px;}
	#confirmation .input_all table th::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background:#0043af;}	
	#confirmation .input_all table td{display: inline-block;width: 100%;margin-bottom: 20px}
	
	#sent .text{width:80%;margin: 0 auto 40px auto;padding: 0;font-size: 16px;line-height: 1.7;letter-spacing: 1px;font-weight: 500;}
	#sent a{display:block;width:600px;margin: 0 auto;padding: 30px 0px;font-size:20px;letter-spacing:1px;font-weight: 500;background: #0043af;color: white;border-radius: 5px;box-sizing: border-box;text-align: center;text-decoration: none;}
	#sent a:hover{background: #128cb9;}
}

@media (max-width: 700px) {
	/*FV*/
	#fv .container{width: 100%;	aspect-ratio: 1/1.4;min-height: 300px;position: relative;overflow: hidden}
	
	#fv .container .photo_area{display: flex;width: 100%;height: 100%;}
	#fv .container .photo_area::after {	content: "";	background: rgba(0, 137, 164, 0.5);	position: absolute;	top: 0;	left: 0;	width: 100%;	height: 100%;	}
	#fv .container .photo_area div{height: 100%;overflow: hidden;}
	#fv .container .photo_area div.img01 img {	width: 100%;	height: 100%;	object-fit: cover;	object-position: 40% 0;}
	#fv .container .photo_area div.img02 img {	width: 100%;	height: 100%;	object-fit: cover;}
	#fv .container .photo_area div.img03 img {	width: 100%;	height: 100%;	object-fit: cover;	object-position: 60% 0;}
	#fv .container .photo_area div.img04 img {	width: 100%;	height: 100%;	object-fit: cover;	object-position: 55% 0;}
	
	#fv .container .white_bar{position:absolute;bottom:0px;left:0;width:100%;height: 60%;background: url(../img/fv-white.png);background-size:100% auto;background-repeat: no-repeat;  background-position: bottom left;  z-index: 1;opacity: 1}
	
	#fv .container .text_primary{position:absolute;top:50%;left:50%;transform: translate(-50%,-50%);width:85%;z-index: 2;}
	#fv .container .text_primary .img{position:absolute;bottom:30%;right:0%;width:40%;}
	#fv .container .text_primary .img img{width:100%;}
	#fv .container .text_primary .text{position:relative;padding: 0px 0 0 0;}
	#fv .container .text_primary .text::before{content: '';position:absolute;bottom: 100%;left: 0;width:50%;aspect-ratio: 3 /1;min-height: 40px;background: url("../img/fv-img-06.png")no-repeat;background-position: 0% 50%;background-size: 100% auto;}
	#fv .container .text_primary .text p{color:white;font-weight: 800;padding: 0;margin: 0;line-height: 1.2; text-shadow: 0px 0px 20px rgba(0, 87, 99, 0.8);}
	#fv .container .text_primary .text p:nth-of-type(1){font-size: clamp(30px, 4.8vw, 50px);}
	#fv .container .text_primary .text p:nth-of-type(1) span{font-size: clamp(24px, 2.8vw, 30px);}
	#fv .container .text_primary .text p:nth-of-type(2){font-size: clamp(50px, 8.0vw,90px);}
	
	#fv .container .text_secondary{position:absolute;bottom:0px;left:50%;transform: translateX(-50%);width: 80%;z-index: 2;}
	#fv .container .text_secondary .banner{margin:0 auto 30px auto;width:100%;}
	#fv .container .text_secondary .banner a{display: block;position: relative;padding: 14px 0;}
	#fv .container .text_secondary .banner a:before{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -1;  top: 0;left:0; border-radius:10px; transition:0.5s;  background:linear-gradient(#ffbf00,#ffa20f);}
	#fv .container .text_secondary .banner a:after{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -2;  top: 0; left:0;border-radius:10px;background:linear-gradient(#ff632f,#ff3131);}
	#fv .container .text_secondary .banner a:hover:before{  opacity:0;}
	
	#fv .container .text_secondary .banner a .inner{position: relative;height: 100%}
	#fv .container .text_secondary .banner a .inner .img{position: absolute;bottom: -14px;left: -5%;width: 20%;}
	#fv .container .text_secondary .banner a .inner .img img{width: 100%;}
	#fv .container .text_secondary .banner a .inner .text{text-align:center;}
	#fv .container .text_secondary .banner a .inner .text span{display:block;font-weight: 600;line-height: 1}
	#fv .container .text_secondary .banner a .inner .text span:nth-of-type(1){font-size: clamp(14px, 0.8vw,18px);margin-bottom: 5px}
	#fv .container .text_secondary .banner a .inner .text span:nth-of-type(2){font-size: clamp(20px,2.8vw,30px);}
	
	#fv .container .text_secondary .banner a .inner .icon{position: absolute;top:50%;transform: translateY(-50%);right:5%;width: 20px; height:20px;background: white;border-radius: 50%;color:#ff9a16;display: flex;justify-content: center;align-items: center;font-size: 14px;}
	
	#fv .container .text_secondary .point{display: flex;flex-wrap: wrap;	gap: 5px;z-index: 2;align-items: center;justify-content: space-between}
	#fv .container .text_secondary .point p {	background-color: #ff632f;	width:49%;	border-radius: 50px;	text-align: center;	line-height: 1;	padding: 12px;color: white;font-size: clamp(16px, 0.8vw, 22px);letter-spacing: 0px;font-weight: 600}
	
	
	/*固定CTA*/
	#fixed-cta{position: fixed;	right: 0;	bottom: 0%;z-index: 99;background:rgba(255,255,255,0.8);display: flex;flex-wrap: wrap;justify-content: space-between;width: 100%;padding: 10px 1%}
	
	#fixed-cta .contact_area{width: 49.5%;}	

	#fixed-cta .contact_area a{position: relative;width:100%;margin: 0 auto;display: block;border-radius: 10px;border: 1px solid #f7931e;	padding: 12px 0 ;	}
	#fixed-cta .contact_area a:before{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -1;  top: 0;left:0; transition:0.5s;background:linear-gradient(#ffb72a,#ff9a16);border-radius: 9px 0 0 9px;}
	#fixed-cta .contact_area a:after{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -2;  top: 0; left:0;background:linear-gradient(#ff9a16,#ff632f);border-radius: 9px 0 0 9px;}
	#fixed-cta .contact_area a:hover:before{  opacity:0;}
	#fixed-cta .contact_area a .inner{display: flex;align-items: center;justify-content: center}
	#fixed-cta .contact_area a .inner .text span{display:block;text-align: center;font-weight: 600;letter-spacing: 0;}
	#fixed-cta .contact_area a .inner .text span:nth-of-type(1){font-size:11px;}
	#fixed-cta .contact_area a .inner .text span:nth-of-type(2){font-size:15px;}
	#fixed-cta .contact_area a .inner .icon{display: none;}
	
	
	#fixed-cta .engineer_area{width: 49.5%;}
	#fixed-cta .engineer_area a{position: relative;width:100%;margin: 0 auto;display: block;border-radius: 10px;border: 1px solid #047399;	padding: 12px 0 ;	}
	#fixed-cta .engineer_area a:before{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -1;  top: 0;left:0; transition:0.5s;background:linear-gradient(#00adff,#4354ff);border-radius: 9px 0 0 9px;}
	#fixed-cta .engineer_area a:after{  content:"";  width:100%;  height:100%;  position:absolute; z-index: -2;  top: 0; left:0;background:linear-gradient(#25a3c9,#0089a4);border-radius: 9px 0 0 9px;}
	
	#fixed-cta .engineer_area a:hover:before{  opacity:0;}
	
	#fixed-cta .engineer_area a .inner{display: flex;align-items: center;justify-content: center}
	#fixed-cta .engineer_area a .inner .img{display: none}	
	
	#fixed-cta .engineer_area a .inner .text span{display:block;text-align: center;font-weight: 600;letter-spacing: 0;}
	#fixed-cta .engineer_area a .inner .text span:nth-of-type(1){font-size:15px;}
	#fixed-cta .engineer_area a .inner .text span:nth-of-type(2){font-size:11px;}
	
	#fixed-cta .engineer_area a .inner .icon{display: none}
	
	
	/* 規定 */
	#rules {	width:100%;	margin: 0 auto;	padding-top: 50px}
	
	.rules-bubble { width: 80%;  margin-bottom: 30px;  padding: 8px 10px;  font-size: 16px}
	#rules h2{width:80%;	margin: 0 auto;	font-size:22px;text-align: center;line-height: 1.4}
	#rules h2 span{display:block;	font-size:28px;}
	
	.rules-inner {width:80%;		margin: 0px auto 30px auto;}
	.rules-inner .box{margin:50px auto 0 auto ;padding:40px 0px 0 0;	background: #fbfced;border-radius: 10px;box-shadow: 0px 0px 15px 0px #e0e2d3;}
	
	.rules-inner .box .number{width:50px;height: 50px;display: flex;align-items: center;justify-content: center;background: #00b4d6;border-radius: 50%;color: white;font-size:20px;font-weight:600;text-align: center;margin:-70px auto 20px auto;}
	.rules-inner .box h3{font-size: 22px;text-align: center;font-weight: 600;color: #004966;margin-bottom: 10px;line-height: 1.2}
	.rules-inner .box figure{width:30%;margin:0 auto 10px auto;padding:15px;border-radius: 50%;background: white;border:1px solid #0095c0;}
	.rules-inner .box figure img{width:100%;}
	.rules-inner .box .sub_title{width:90%;margin:0 auto 15px auto;padding-bottom: 10px;font-size: 18px;text-align: center;color: #00334c;font-weight: 600;border-bottom: 1px solid #007ab8;line-height: 1.2}
	.rules-inner .box .text{flex-grow: 1;font-size: 13px;line-height: 1.5;width:85%;		margin: 0 auto 10px auto}
	
	.rules-inner .box .point{position: relative;background: linear-gradient(0deg, #23a6d3, #1e73b8);border-radius: 0 0 10px 10px;padding:22px 10px 16px 10px;text-align: center;color: white;font-size: 18px;letter-spacing: 1px;font-weight: 600; line-height: 1.2;}
	.rules-inner .box .point::before{content:'';position: absolute;top: 0%;left: 50%;transform: translateX(-50%);border-style: solid;  border-right:15px solid transparent;  border-left: 15px solid transparent;  border-top: 10px solid #fcfff3;  border-bottom: 0;}

	/* 交換 */
	#replace {	margin: 0px auto 30px;	}
	#replace::after {    content: "";    width: 50%;    height: 55px;    background-color: #fff;    position: absolute;    bottom: -65px;	left:50%;transform: translateX(-50%);clip-path: polygon(50% 100%, 0 0, 100% 0);}
	.replace-inner {padding: 50px 0 0;}
	.round-bubble {    width: 90%; padding: 5px 0;font-size: 15px}
	.round-bubble:before {          border-top: 10px solid #ff632f;            }
	.replace-inner .text-box h2{font-size: 20px;letter-spacing: 0px;font-weight: 700;text-align: center;}
	.replace-inner .text-box p{font-size: 14px;letter-spacing: 0px; line-height: 1.5;}
	.replace-inner .h2-box h2{ font-size: 20px;padding: 10px 0px;margin: 0 auto 20px auto}
	
	.replace-inner .point {width:95%;		gap:10px 0;	padding-bottom: 20px;margin-top: 10px}
	.replace-inner .point .box {	width: 100%;	padding: 20px 20px;box-sizing: border-box}
	.replace-inner .point .box h3 {font-size: 16px;margin: 0 0 10px 0;font-weight: 600;letter-spacing: 0px;}
	.replace-inner .point .box p {font-size: 13px;letter-spacing: 0px;line-height: 1.5}
	
	/* 製品紹介 */
	.products-wrapper {width:100%;	margin: 0 auto;}
	
	#products .h2-box {padding-top: 50px;	margin-bottom: 50px;}
	.products-bubble {  width: 80%;  margin-bottom: 30px;  padding:6px 16px; font-size: 18px }
	.products-bubble::after {  content: "";  position: absolute;  bottom: -15px;  left: 50%;  width: 42px;  height: 16px;  background:#ff9a16;  clip-path: polygon(50% 100%, 0 0, 100% 0);  transform: translateX(-50%);}
	
	#products .h2-box .title01{font-weight: 700;position: relative;}
	#products .h2-box .title01::before {  content: "";  position: absolute;  bottom:0px;  left: 50%;  width:100%;  height:30px;  background: white;   transform: translateX(-50%);}
	#products .h2-box .title01 .primary{color: #ff7c1e;font-size: 26px;padding:5px 10px;position: relative}
	#products .h2-box .title01 .secondary{color: #003140;font-size: 25px;position: relative}
	
	#products .h2-box .title02{color: #003140;font-size: 25px;font-weight: 700}
	
	.products-box01 { width: 95%; margin: 0 auto 30px auto;gap:8px}
	.products-box01 .inner {	width: 50%;	border: 1px solid #ffe49f;	padding: 0 18px 15px;}
	.products-box01 .inner img {	margin-top: -30px;width: 80%}
	.products-box01 .inner h3 {	margin-bottom: 10px;font-size:17px;line-height: 1.2;font-weight: 500;}
	.products-box01 .inner h3 span{ font-size:14px;padding: 3px 0 ;border-radius: 50px;margin: 0 auto 10px auto;width: 100%;letter-spacing: 0}
	.products-box01 .inner p{font-size:13px;}
	.products-box01 .icon {width: 40px;height: 40px;position: absolute;top: calc(50% - 20px);left: calc(50% - 20px);	display: flex;	justify-content: center;	align-items: center;border-radius: 50%;font-size: 14px}

	#products .recommend {	 width: 85%; margin: 0 auto 30px auto;border-radius: 10px;		}
	#products .recommend h3 {width: 70%; 	font-size: 18px; margin-bottom: 20px;line-height: 1.2}
	#products .recommend h3::before{left:-15%;	width:30px;height:30px;font-size: 25px;}
	
	#products .recommend-inner {	display: flex;flex-wrap: wrap;	gap: 10px;justify-content: space-around;}
	#products .recommend-inner .box {	background-color: #3a474f;	width:48%;	height: 120px;	display: flex;	justify-content: center;	align-items: center;border-radius: 5px;}
	#products .recommend-inner .box .inner{text-align: center}
	#products .recommend-inner .box .inner img{width:30%;}
	#products .recommend-inner .box .inner p {	text-align: center;color: white;font-size: 16px}

	#products .banner {	}
	#products .banner a {	height:240px;}
	
	#products .banner a .photo_area{position: absolute;top: 0;left: 0;	width: 100%;height: 100%;overflow: hidden}
	#products .banner a .photo_area img{width: 100%;height: 100%;object-fit: cover;transition: transform .6s ease; }
	#products .banner a .text_area{width: 95%; text-align: center;}
	#products .banner a .text_area .sub{font-size: 16px;margin: 0 auto 10px auto;}
	#products .banner a .text_area .primary{font-size: 26px;font-weight: 600;display: inherit;text-align: center}
	#products .banner a .text_area .primary span{width: 20%;padding: 5px 0px;display: block;margin:10px auto 0 auto}
	
	/* ポイント */
	#point {width:100%;	margin: 50px auto 30px auto;}
	#point h2 {	margin: 0px auto 50px;font-size: 18px}
	#point h2 span{display:block;color: #00a7af;font-size: 30px}
	
	#point .point-inner {	width: 90%;margin: 0 auto;	row-gap:35px;	}
	#point .point-inner .box {	width: 100%;	border-radius:5px;}
	
	#point .point-inner .box .number_area{top: -16px;	width: 80%;	border-radius: 50px;	}
	#point .point-inner .box .number_area span{font-size: 26px;font-weight: 900;}
	#point .point-inner .box .number_area span::before{font-size: 14px;padding-right: 10px}
	
	#point .point-inner .box figure{aspect-ratio:2/1;}
	
	#point .point-inner .box .text_area h3 {	margin-bottom: 10px;font-size:18px;font-weight: 600}
	#point .point-inner .box .text_area p {	margin-bottom: 20px;	line-height: 1.5;font-size: 14px;letter-spacing: 0px}
	
	
	/* 導入の流れ */
	#flow {	padding: 40px 0 30px;}
	#flow h2 {	font-size: 25px;	margin-bottom: 20px;}
	
	.flow-inner{width: 90%;margin: 0 auto;}
	.flow-inner .box {margin-bottom: 10px;}	
	.flow-inner .box .number_area{width: 16%;	}
	.flow-inner .box .number_area p{font-size:13px;}
	.flow-inner .box .number_area p span{font-size: 28px}
	
	.flow-inner .box .text{width: 84%;margin: 0;padding: 20px 18px}
	.flow-inner .box .text h3{color: #00bcc1;font-size: 18px;margin-bottom: 5px}
	.flow-inner .box .text p{line-height: 1.4;font-size: 13px;letter-spacing: 0px}

	/* サポート */
	#support {width: 90%;margin: 40px auto 30px;}
	#support h2 {	font-size: 25px;	margin-bottom: 10px;}
	#support .introduction_text {	text-align:left;	margin-bottom: 10px;font-size: 15px;letter-spacing: 0px}	
	
	#support .inner .box{padding: 20px 20px;margin-bottom: 10px}
	
	#support .inner .box h3 {font-size: 17px;		margin-bottom: 15px;padding: 2px 0;font-weight: 500;letter-spacing: 1px;}
	#support .inner .box p{line-height: 1.4;font-size: 14px;letter-spacing: 0px;}
	
	
	/* 実績紹介 */
	#example {	padding:40px 0px 20px 0;}
	#example h2 {	font-size: 25px;	margin-bottom: 10px;}
	#example .container{width: 90%;margin:0px auto 30px auto;}
	
	/* FAQ */
	#faq {width: 90%;padding:40px 0px;margin: 0 auto}
	#faq h2 {	font-size: 25px;	margin-bottom: 10px;}	
	.faq-box {		border: 1px solid #128cb9;border-radius: 10px;	padding: 25px 20px 20px;}
	.faq-box .q {	background-color: #128cb9; 	width: 30px;	height: 30px;	border-radius: 50%;	display: flex;	justify-content: center;	align-items: center;font-size: 14px}
	.faq-box .question {	gap: 14px;	margin-bottom: 10px;font-size: 16px;line-height: 1.2}
	.faq-box .line {	border-top: 1px solid #bacace;	padding-top: 15px;}
	
	/* お悩み */
	#solution {padding: 40px 0;}
	
	.solution-inner .h2-box {width:80%;margin: 0 auto;	margin-bottom: 10px;}	
	.solution-bubble {  width:100%;  margin-bottom: 18px;  padding: 6px 16px;  font-size: 16px;line-height: 1.5;font-weight: 500}
	.solution-bubble::after {  content: "";  position: absolute;  bottom: -11px;  left: 50%;  width: 22px;  height: 12px;  background-color: #4354ff;  clip-path: polygon(50% 100%, 0 0, 100% 0);  transform: translateX(-50%);}
	
	.solution-inner .h2-box .inner {	display: flex;	align-items: flex-end;	gap: 0px;}
	.solution-inner .h2-box .inner h2 {	margin-bottom: 0px;font-size:16px;line-height: 1.3}	
	.solution-inner .h2-box .inner h2 span{font-size:22px;margin-top: 10px}
	.solution-inner .h2-box .inner img{display:none;}
	
	
	.solution-bubble-b {  position: relative;  width: 80%;  padding: 11px 16px 20px 16px;  border-radius: 10px;  background-color: #e6e6e6;  text-align: center;  line-height: 1.5;  margin:0 auto 40px auto;}
	.solution-bubble-b::after { bottom: -20px;  left: 50%;  width: 115px;  height: 30px; }
	.solution-bubble-b h3 {	margin-top: 10px;font-size: 16px}
	.solution-bubble-b h3 span{display:block;font-size: 24px}
	
	
	.solution-bubble-b .inner {	margin-bottom: 30px;position:inherit;width: 90%;height:auto;margin: 0 auto;}
	.solution-bubble-b .inner .illustration{position:inherit;top:inherit;left:inherit;bottom: inherit;z-index: inherit;transform: inherit;width:60%;margin: 0 auto 10px auto}
	.solution-bubble-b .inner .illustration img {	width:100%;}
	
	.solution-bubble-b .inner .bubble_style{background: url("../img/solution-worries-bubble.png") no-repeat;background-position: 50% 50%;background-size: auto 100%;width:100%;height:auto;margin:15px auto 0px auto;padding: 20px 0;display: flex;align-items: center;}
	
	.solution-bubble-b .inner .bubble01{position:inherit;top:inherit;left:inherit;}	
	.solution-bubble-b .inner .bubble02{position: inherit;top:inherit;left:inherit;}	
	.solution-bubble-b .inner .bubble01 p,
	.solution-bubble-b .inner .bubble02 p{	text-align: center;	width: 100%;margin: 0 auto;font-weight: 600;padding: 0;font-size: 16px}
	
	
	.solution-text {width: 80%;	margin:0 auto 20px auto;font-size:22px;}
	.solution-text .sub{display: block;font-size: 18px}
	.solution-text .text-color{color:#0043af}
	.solution-text::before {	left:0%;	width: 3px;	height: 30px;}
	.solution-text::after {		left:100%;width: 3px;	height: 30px;}
	
	.solution-inner .h3-box {padding: 23px 25px 25px 25px;	margin:0 auto 10px auto;}	
	.solution-inner .h3-box p:nth-child(1) {width: 100%;	margin: 0 auto 15px;	padding: 8px 20px;	line-height: 1.3;font-size: 16px}
	.solution-inner .h3-box p:nth-child(2) {font-size:18px;}
	
	.solution-box {	row-gap: 10px;}
	.solution-box .box {	width: 100%;border-radius: 10px;	padding: 14px 14px;}
	.solution-box .box .icon{width: 60px;height: 60px;border-radius: 50%;display: flex;align-items: center;justify-content: center;margin-bottom: 10px}
	.solution-box .box .icon img{width:70%;}
	.solution-box .box h4{margin: 0 auto 5px auto;font-size: 16px}
	.solution-box .box p{font-size:13px;line-height: 1.3}
	
	/* お問い合わせ */
	#contact {	background-color: #f5fcfc;	padding: 30px 0 30px 0;}
	
	#contact h2 {width: fit-content;	margin: 0 auto 10px auto;font-size: 25px}
	#contact > p {width: 80%;	margin: 0 auto 30px auto;font-size: 14px}
	
	#contact #form_group{width: 80%;margin: 0 auto 50px auto}	
	
	#contact #form_group .unit .q{position:relative;margin: 0 auto 10px auto;padding: 0 0 0 15px;font-size: 16px;letter-spacing:0px;font-weight: 400;}
	#contact #form_group .unit .q::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: #0043af;}
	
	#contact #form_group span.require{margin-left: 10px;padding:2px 8px;background: #ff632f;font-size:12px;color: white;font-weight: 400;}
	
	#contact #form_group .unit .a{margin: 0 auto 20px auto;}
	
	#contact #form_group form input[type=text],
	#contact #form_group form input[type=tel],
	#contact #form_group form input[type=email],
	#contact #form_group form textarea{outline: 0;border:1px solid #4d4d4d; width:100%; margin: 0 ;padding:12px 2%;font-size: 16px;letter-spacing:1px;box-sizing: border-box;border-radius: 5px}
	#contact #form_group form textarea{height:200px;}	
	
	#contact #form_group form input[type=text]:focus,
	#contact #form_group form input[type=tel]:focus,
	#contact #form_group form input[type=email]:focus,
	#contact #form_group form textarea:focus{border:1px solid #0043af;}	
	
	#contact #form_group form #attached label {display:block;margin:5px auto;padding:12px 0%;font-size:15px;letter-spacing:0px;font-weight:400;background:white;border:1px solid #4d4d4d; cursor: pointer;  border-radius:5px;  transition: .3s;text-align: center}
	#contact #form_group form #attached label:hover {  background:#0043af;color:white;}
	#contact #form_group form #attached input[type="file"] {  display: none;}
	#contact #form_group form #attached span{display:block;font-size: 13px;letter-spacing: 1px;text-align: center}
	
	#contact #form_group .unit_pp{margin: 30px auto 30px auto;font-size: 16px;letter-spacing: 0px;font-weight: 400;text-align: center}	
	#contact #form_group form input[type="checkbox"] {display:block;position: relative;width: 30px;height:30px;margin: 0px auto 10px auto;border: 1px solid #000;background:white;border-radius: 3px;vertical-align: -10px;-webkit-appearance: none;  -moz-appearance: none;     appearance: none;}
	#contact #form_group form input[type="checkbox"]:checked:before {  position: absolute;  top:4px;left:9px;transform: rotate(45deg);  width: 8px;  height: 12px;  border-right:3px solid white;  border-bottom:3px solid white;  content: '';}
	#contact #form_group form input[type="checkbox"]:checked{background:#0043af;border: 1px solid #0043af;}
	#contact #form_group .unit_pp p{text-align:center;margin: 10px auto 0px auto;padding: 0;font-size:14px;letter-spacing: 1px;font-weight: 500;}
	#contact #form_group .unit_pp p a{color:#0043af;text-decoration:underline }
	#contact #form_group .unit_pp p a:hover{}
	
	#contact #form_group .unit_submit{}
	#contact #form_group form input[type=submit],
	#contact #form_group form input[type=reset]{-webkit-appearance: none; outline: 0;border:0;display: block; width:100% !important;padding: 22px 0; margin: 0 auto;font-size:18px;letter-spacing:0px;font-weight:400;color: white;background:#0043af;border-radius: 5px}
	#contact #form_group form input[type=submit]:hover,
	#contact #form_group form input[type=reset]:hover{background: #128cb9;}
	
	#contact #privacy_policy{width:80%;margin: 0 auto 0px auto;border-top: 1px solid #0043af;border-bottom: 1px solid #0043af;padding: 30px 0 10px 0}
	#contact #privacy_policy h3{margin: 0 auto 20px auto;padding: 0;text-align:center;font-size: 20px}
	#contact #privacy_policy .period{margin: 0 auto 20px auto;}
	#contact #privacy_policy .period h4{position:relative;margin: 0 auto 5px auto;padding:20px 0 0 0;letter-spacing: 0px;color:#0043af;font-size: 16px}
	#contact #privacy_policy .period h4::before{content: '';position:absolute;top: 0%;left: 0px;width:30px;height:1px;background:#0043af;}
	#contact #privacy_policy .period p{margin: 0 ;padding: 0;font-size:14px;line-height: 1.5;letter-spacing: 0px}	
	#contact #privacy_policy .period ul{padding: 10px 0 0 20px;}
	#contact #privacy_policy .period ul li{margin: 0 ;font-size:14px;line-height: 1.5;letter-spacing: 1px}
	
	/* お問い合わせ 確認・完了*/
	#confirmation,
	#sent{background-color: #f5fcfc;	margin:0px auto 0px auto;padding:120px 0 30px 0;}
	
	#confirmation h2,
	#sent h2{text-align: center;margin:0px auto 30px auto;font-size:20px;font-weight: 500}
	
	#confirmation .message,
	#confirmation .text{width:80%;margin: 0 auto 30px auto;padding: 0;font-size: 15px;line-height: 1.5;letter-spacing: 0px;font-weight: 300;}
	#confirmation .message{color: #ff3131;}
	
	#confirmation .error_messe{position:relative;width:80%;margin: 0 auto 10px auto;padding: 0 0 0 15px;font-size:14px;line-height: 1.5;letter-spacing: 1px;font-weight: 400;}
	#confirmation .error_messe::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background:#ff3131;}
	
	#confirmation .button_area{text-align: center;width:90%;margin: 20px auto 0 auto}
	#confirmation input[type=button],
	#confirmation input[type=submit]{-webkit-appearance:none;outline:0;border:0;display:inline-block;width:49%;margin:0 auto;padding:20px 0px;font-size:16px;letter-spacing:0px;font-weight: 500;background: #0043af;color: white;border-radius: 5px;box-sizing: border-box;}
	#confirmation input[type=button]:hover,
	#confirmation input[type=submit]:hover{background:#128cb9;}
	
	#confirmation .input_all table{width:80%;margin: 0 auto 0px auto;border-collapse:collapse;font-size:14px;letter-spacing: 1px;font-weight:400;line-height: 1.5}
	#confirmation .input_all table th{position:relative;display: inline-block;width: 100%;text-align: left;font-weight: 500;color:#0043af;margin: 0 auto 5px auto;padding: 0 0 0 15px;}
	#confirmation .input_all table th::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background:#0043af;}	
	#confirmation .input_all table td{display: inline-block;width: 100%;margin-bottom: 15px}
	
	#sent .text{width:80%;margin: 0 auto 30px auto;padding: 0;font-size: 14px;line-height: 1.5;letter-spacing: 1px;font-weight: 400;}
	#sent a{display:block;width:80%;margin: 0 auto;padding: 20px 0px;font-size:16px;letter-spacing:0px;font-weight: 500;background: #0043af;color: white;border-radius: 5px;box-sizing: border-box;text-align: center;text-decoration: none;}
	#sent a:hover{background: #128cb9;}
}