body{
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
:root{
	--main-color:#e5f8fe;
	--sub-color:#fed872;
	--contact-color1:#01befc;
	--contact-color2:#0410c4;
	--contact-color3:#fdf8a1;
	--contact-color4:#fca601;
}
.text-color-blue{
	color: var(--contact-color2);
}
.bg-color-main{
	background-color: var(--main-color);
}
.bg-color-sub{
	background-color: var(--sub-color);
	background-image: url(../img/back.png);
}
.box-contact a{
	background-color: var(--contact-color4);
}
.main-visual{
	background: url(../img/main-bg.png) no-repeat;
	background-size: cover;
	background-position: center center;
}
.main-visual .container{
	background-color: rgba(225, 240, 253, 0.6);
}
.contact-us{
	background-color: var(--contact-color3);
}
.contact-us a.btn-contact{
	background-color: var(--contact-color2);
}
.contact-us-text{
	border: 4px solid var(--contact-color3);
	background-color: var(--contact-color1);
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
	font-style: italic;
	position: relative;
}
.contact-us-text:after{
	content: "";
	display: block;
	position: absolute;
	border-width: 1.5rem .9rem;
	border-style: solid;
	bottom: -2.7rem;
	left: calc(50% - .75rem);
	border-color: var(--contact-color1) transparent transparent transparent;
}
.arial{
	font-family: "Arial Black",sans-serif;
}
.tel-supplement{
	border: 2px solid var(--contact-color2);
	color: var(--contact-color2);
}
.worries .worry{
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}
.worries .worry:nth-child(1){
	background-image: url(../img/bector_01.png);
}
.worries .worry:nth-child(2){
	background-image: url(../img/bector_02.png);
}
.worries .worry:nth-child(3){
	background-image: url(../img/bector_03.png);
}
.worries:nth-of-type(2) .worry:nth-child(1){
	background-image: url(../img/bector_04.png);
}
.worries:nth-of-type(2) .worry:nth-child(2){
	background-image: url(../img/bector_05.png);
}
.worries:nth-of-type(2) .worry:nth-child(3){
	background-image: url(../img/bector_06.png);
}
.reason{
	
}
.reason .reason-text h3{
	border-bottom: 1px solid #CCC;
}
.reason .reason-text h3 span{
	background-color: #CCC;
}
.reasons .reason:nth-child(2) .reason-text h3{
	border-bottom-color: #9da3fb;
	color: #9da3fb;
}
.reasons .reason:nth-child(4) .reason-text h3{
	border-bottom-color:#fb9da1;
	color: #fb9da1;
}
.reasons .reason:nth-child(5) .reason-text h3{
	border-bottom-color:#fbd09d;
	color: #fbd09d;
}
.reasons .reason:nth-child(6) .reason-text h3{
	border-bottom-color:#efdd66;
	color: #efdd66;
}
.reasons .reason:nth-child(7) .reason-text h3{
	border-bottom-color:#b4e773;
	color: #b4e773;
}
.reasons .reason:nth-child(8) .reason-text h3{
	border-bottom-color:#b5b5b5;
	color: #b5b5b5;
}
.reason .reason-text h3:after{
	display: block;
	position: absolute;
	right: 2.4%;
    bottom: -10.1%;
	content:"";
	width: 1px;
	height: 120%;
	background-color:#CCC;
	transform: rotate(-35deg);
}
.reasons .reason:nth-child(2) .reason-text h3:after{
	right: 3%;
    bottom: -10.2%;
    background-color: #9da3fb;
}
.reasons .reason:nth-child(2) .reason-text h3 span{
	background-color: #9da3fb;
}
.reasons .reason:nth-child(4) .reason-text h3:after{
	background-color: #fb9da1;
}
.reasons .reason:nth-child(4) .reason-text h3 span{
	background-color: #fb9da1;
}
.reasons .reason:nth-child(5) .reason-text h3:after{
	background-color:#fbd09d;
}
.reasons .reason:nth-child(5) .reason-text h3 span{
	background-color: #fbd09d;
}
.reasons .reason:nth-child(6) .reason-text h3:after{
	background-color:#efdd66;
}
.reasons .reason:nth-child(6) .reason-text h3 span{
	background-color: #efdd66;
}
.reasons .reason:nth-child(7) .reason-text h3:after{
	background-color:#b4e773;
}
.reasons .reason:nth-child(7) .reason-text h3 span{
	background-color: #b4e773;
}
.reasons .reason:nth-child(8) .reason-text h3:after{
	background-color:#b5b5b5;
}
.reasons .reason:nth-child(8) .reason-text h3 span{
	background-color: #b5b5b5;
}
.labo{
	background-color: #9fe5fc;
}
.labo h3{
	background-color: var(--contact-color2);
}
.labo h3:after{
	content: "";
	display: block;
	position: absolute;
	right: -2.5rem;
	bottom:0;
	border-color:transparent transparent var(--contact-color2) var(--contact-color2);
	border-width: 1.3rem;
	border-style: solid;
}
.types h3{
	background-color: #fbc45a;
}
.types .type:nth-child(2) h3{
	background-color: #fdef84;
}
.box-price{
	border-radius: 15px;
	border: 2px solid #fe1402;
}
.box-price .box-price-supplement{
	color: #FFF;
	background-color: #fe1402;
}
.box-price box-price-cost{
}
.balloon-left {
  position: relative;
  display: inline-block;
  margin: 1.5em 0 1.5em 15px;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
  background: #FFF;
  border: solid 3px #fbc45a;
  box-sizing: border-box;
  border-radius: 10px;
  padding: 2rem 3rem;
  font-weight: bold;
}

.balloon-left:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -24px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 12px solid #FFF;
  z-index: 2;
}

.balloon-left:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-right: 14px solid #fbc45a;
  z-index: 1;
}
.balloon-right {
  position: relative;
  display: inline-block;
  margin: 1.5em 15px 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
  background: #FFF;
  border: solid 3px #fbc45a;
  box-sizing: border-box;
  border-radius: 10px;
  padding: 2rem 3rem;
  font-weight: bold;
}

.balloon-right:before {
  content: "";
  position: absolute;
  top: 50%;
  right: -24px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-left: 12px solid #FFF;
  z-index: 2;
}

.balloon-right:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-left: 14px solid #fbc45a;
  z-index: 1;
}
footer{
	border-top: 3px solid #122a88;
}
.flows:not(:last-of-type){
	border-bottom: 1px solid #dbf5fd;
}
.flows h3{
	background-color: #25c7f9;
	position: relative;
}
.flows h3:after{
	content: "";
	display: block;
	border-width: 1rem;
	border-color: #25c7f9 transparent transparent transparent;
	border-style: solid;
	bottom: -2rem;
	right: calc(50% - 1rem);
	position: absolute;
}
.accrd{
	background-color: #95dbcd;
	padding: 1rem 2rem;
	margin: 2rem 5rem;
}
.accrd .q{
	font-weight: bold;
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	cursor: pointer;
}
.accrd .q:before{
	display: flex;
	content: "Q";
	color: #95dbcd;
	background-color: #FFF;
	border-radius: 100%;
	font-size: 1.5rem;
	justify-content: center;
	align-items: center;
	width: 3rem;
	height: 3rem;
	margin-right: 2rem;
}
.accrd .q:after{
	display: block;
	content:"▼";
	font-size: 1.5rem;
	margin-left: auto;
	margin-right: 0;
	transition: .4s;
}
.accrd .q.on:after{
	transform: rotate(180deg);
}
.accrd .a{
	padding: 1.2rem 3rem;
	display: none;
}
.copyright,
.copyright + P{
	color: #615f5f;
}
h2{
	background-image: url(../img/h2-before.png), url(../img/h2-after.png);
	background-position: 20% center, 80% center;
	background-repeat: no-repeat;
	background-size: contain;
}
h2.h2-adjust{
	background-position: 30% center, 70% center;
}
.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}
.btn-contact{
	display: flex;
	gap:.5rem;
	justify-content: center;
	align-items: center;
}
.btn-contact i{
	display: block;
	width: 1.4rem;
	height: 1.4rem;
	border-radius: 100%;
	background-color: #FFF;
	position: relative;
}
.btn-contact i:before {
    display: block;
    content: "";
    top: calc(50% - 0.2rem);
    right: 0.35rem;
    width: 0.6rem;
    height: 2px;
    border-radius: 2px;
    position: absolute;
    background-color: #0410c4;
    transform: rotate(35deg);
}
.btn-contact i:after {
    display: block;
    content: "";
    top: calc(50% + 0.095rem);
    right: 0.35rem;
    width: 0.6rem;
    height: 2px;
    border-radius: 2px;
    position: absolute;
    background-color: #0410c4;
    transform: rotate(-35deg);
}
.types .type h3{
	position: relative;
}
.types .type:nth-child(odd) h3:before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top:-1px;
	border-width: 3rem 1rem;
	border-style: solid;
	border-color: var(--main-color) transparent transparent var(--main-color);
}
.types .type:nth-child(even) h3:before{
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top:-1px;
	border-width: 3rem 1rem;
	border-style: solid;
	border-color: var(--main-color) var(--main-color) transparent transparent;
}
@media screen and (min-width:768px){
	.container{
		max-width: 1280px!important;
		margin-right: auto;
		margin-left: auto;
	}
}
@media screen and (max-width:768px){
	html,
	body{
		max-width: 100vw;
	}
	.main-visual{
		background: url(../img/main-bg_sp.png) no-repeat;
	}
	.fixed-footer{
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		background-color: #d3f296;
		box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.35);
	}
	.worries .worry:nth-child(4) {
	    background-image: url(../img/bector_04.png);
	}
	.worries .worry:nth-child(5) {
	    background-image: url(../img/bector_05.png);
	}
	.worries .worry:nth-child(6) {
	    background-image: url(../img/bector_06.png);
	}
	.balloon-left:before,
	.balloon-left:after,
	.balloon-right:before,
	.balloon-right:after{
		content: none;
	}
	.balloon-left,
	.balloon-right{
		margin: 1.5rem 0;
		padding: 1rem;
	}
	.voices .voice:first-child{
		margin-bottom: 2rem;
	}
	.accrd{
		margin: 2rem 0;
	}
	.nowrap{
		white-space: nowrap;
	}
	.worries .worry{
		background-size: 90%;
		background-position: center center;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: .8rem;
	}
	.reasons .reason:nth-child(2) .reason-text h3:after {
	    right: 5%;
	    bottom: -12.4%;
	}
	.labo h3:after{
		content: none;
	}
	.reason .reason-text h3:after {
	    right: 3.4%;
	}
	.flows:not(:last-of-type){
		border-bottom: none;
	}
	.accrd{
		padding: 1rem .5rem;
	}
	.accrd .q{
		font-size: 1rem;
	}
	.accrd .a{
		padding: 1rem;
	}
	.accrd .q:before{
		aspect-ratio:1/1;
		min-width: 40px;
		min-height: 40px;
		width: 40px;
		height: 40px;
		font-size: 1.2rem;
		margin-right: .5rem;
	}
	.fixed-footer a{
		text-shadow: 0px 2px rgba(0, 0, 0, 0.3);
		border-radius: 6px;
		padding: .3rem .5rem;
		border: 2px solid #FFF;
		transition: .2s;
	}
	.fixed-footer a:first-child{
		background-color: #03cd88;
		box-shadow: 0px 5px 0px #02704a;
	}
	.fixed-footer a:nth-child(2){
		background-color: #ea3b8d;
		box-shadow: 0px 5px 0px #80224e;
	}
	.fixed-footer a:nth-child(3){
		background-color: #fcc401;
		box-shadow: 0px 5px 0px #8b6c01;
	}
	.fixed-footer a:hover{
		transform: translateY(5px);
		box-shadow: none;
	}
	h2.h2-adjust{
		background-position: 15% center, 85% center;
	}
	h2{
		background-position: 2% center, 98% center;
	}
	.types .type:nth-child(odd) h3:before{
		border-width: 2rem 1rem;
	}
	.types .type:nth-child(even) h3:before{
		border-width: 2rem 1rem;
	}
}