@charset "UTF-8";
/* CSS Document */


/*contents00*/

.contents00 ul {
	display: flex;
  justify-content: center;
	flex-wrap: wrap;
}

.contents00 ul li {
	margin: 0px 10px;
	width: 430px;
	margin-bottom: 10px;
}

.contents00 ul li a {
	font-size: 18px;
color: #22b573;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 500;
	border-style : solid;
border-color : #22b573;
border-width : 2px;
	border-radius: 10px;
	display: block;
	padding: 15px 0px;
	background-image: url("../common/images/link-arrow02.svg");
background-position: right 20px center;
background-repeat: no-repeat;
}

.contents00 ul li a:hover {
color: #FFF;
	background-color: #22b573;
	opacity: 1;
	background-image: url("../common/images/link-arrow01.svg");
}


/*contents01*/

.contents01 {
	padding: 60px 0px;
	width: 100%;
	background-color: #a0dd62;
	position: relative;
	margin-bottom: 70px;
}

.contents01:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(160, 221, 98, 0);
	border-top-color: #a0dd62;
	border-width: 30px;
	margin-left: -30px;
}

.midashi-box {
	width: 1100px;
	text-align: center;
	margin-bottom: 50px;
	position: relative;
	margin-top: 37px;
}

.midashi-box::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("../common/images/text01.svg");
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 31px;
	margin-top: -37px
}

.contents01 .midashi-box::before {
	background-image: url("../common/images/text01.svg");
}

.contents02 .midashi-box::before {
	background-image: url("images/text02.svg");
}

.midashi-box h3 {
	font-size: 32px;
line-height: 1.2;
font-weight: 600;
	letter-spacing: 0.1em;
	padding: 16px 0px;
	position: relative;
	border-radius: 70px;
}

.contents01 .midashi-box h3 {
color: #8cc63f;
	background-color: #FFF;
}

.contents02 .midashi-box h3 {
color: #FFF;
	background-color: #8cc63f;
}

.midashi-box h3:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #FFF;
	border-width: 20px;
	margin-left: -20px;
}

.contents02 .midashi-box h3:after {
	border-color: rgba(140, 198, 63, 0);
	border-top-color: #8cc63f;
}

.contents01 .box-in {
	width: 1100px;
	position: relative;
}

.contents01 .box-in .box01 {
	text-align: right;
	background-image: url("../common/images/img-back.png");
background-position: right 50px bottom;
	padding-bottom: 38px;
background-repeat: no-repeat;
}

.contents01 .box-in .box02 {
	position: absolute;
   top: 50%;
   left: 50%;
   -webkit-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
	width: 100%;
}

.contents01 .box {
	width: 540px;
	border-style : solid;
border-color : #8cc63f;
border-width : 3px;
	padding: 15px 30px;
	background-color: #FFF;
}


.contents01 .box ul li {
color: #000;
line-height: 1.3;
letter-spacing: 0.05em;
font-weight: 500;
	position: relative;
	padding: 15px 5px;
	border-bottom-style : dotted;
border-bottom-color : #8cc63f;
border-bottom-width : 3px;
	padding-left: 37px;
}

.contents01 .box ul li:last-child {
	border-bottom-style : none;
}

.contents01 .box ul li::before {
	content: "";
	position: absolute;
left: 5px;
top: 15px;
	background-image: url("../common/images/check02.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 28px;
	height: 20px;
}


/*contents02*/

.contents02 {
	width: 100%;
}

.contents02 .box-in {
	width: 1040px;
	display: flex;
  justify-content: space-between;
}

.contents02 .box01 {
	width: 30%;
}

.contents02 .box02 {
	width: 65%;
	padding: 30px 35px;
	position: relative;
	background-color: #FFF;
	border-radius: 20px;
	border: 3px solid #8cc63f;
}

.contents02 h6 {
	padding-top: 30px;
	text-align: center;
}

.contents02 h6 a {
	font-size: 16px;
color: #FFF;
line-height: 1.2;
	font-weight: 500;
	letter-spacing: 0.05em;
	padding: 12px 60px;
	border-radius: 10px;
	background-color: #8cc63f;
	display: inline-block;
	text-align: center;
	background-image: url("../common/images/link-arrow01.svg");
background-position: right 20px center;
background-repeat: no-repeat;
}

/*contents03*/

.contents03 .box img {
	border-radius: 12px;
}

.contents03 .box h6 {
	text-align: center;
	padding-top: 15px;
	font-size: 20px;
color: #00a99d;
line-height: 1.2;
font-weight: 500;
}

.contents03 .box p {
	font-size: 14px;
	line-height: 1.6;
}

/*contents04*/

.contents04 .box {
	margin-bottom: 20px;
	padding-bottom: 30px;
	border-bottom-style : dotted;
border-bottom-color : #cccccc;
border-bottom-width : 3px;
}

.contents04 .box:last-child {
	margin-bottom: 0px;
	padding-bottom: 0px;
	border-style : none;
}


.contents04 .box01 h6 {
	font-size: 23px;
color: #333333;
line-height: 1.2;
font-weight: 600;
	letter-spacing: 0.1em;
	position: relative;
	padding-left: 85px;
	padding-top: 10px;
}

.contents04 .box01 h6::before {
	content: "";
	position: absolute;
left: 13px;
top: 0px;
	background-image: url("../common/images/question.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 57px;
	height: 50px;
}

.contents04 .box02 {
	padding: 15px 20px;
	background-color: #f2f2f2;
	border-radius: 12px;
	margin-top: 20px;
}

.contents04 .box02 p {
	position: relative;
	padding-left: 70px;
}

.contents04 .box02 p::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("../common/images/answer.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 47px;
	height: 41px;
}


summary {
  list-style: none;
  position: relative;
  cursor: pointer;
}

summary::-webkit-details-marker {
  display: none;
}

summary::after {
	content: '';
	background-image: url("../common/images/icon-qa.svg");
background-position: left top;
background-repeat: no-repeat;
	width: 25px;
	height: 25px;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	transition: transform 0.5s;
}

details[open] summary::after {
	transform: translateY(-50%) rotate(45deg);
}

details[open] .box02 {
  animation: fadein 0.5s ease;
}

@keyframes fadein {
  0% { opacity: 0; }
  100% { opacity: 1; }
}


/*contents05*/

.contents05 .box-in {
	margin: 20px 0px 10px;
	display: flex;
  justify-content: flex-start;
	align-items: center;
}

.contents05 h4 {
font-weight: 600;
	line-height: 1.2;
	color: #00a99d;
	font-size: 45px;
letter-spacing: 0.05em;
	position: relative;
	padding-left: 35px;
}

.contents05 h4:before {
	content: "";
	position: absolute;
left: 0px;
top: 12px;
	background-image: url("../common/images/tel-footer.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 26px;
	height: 37px;
}

.contents05 h5 {
font-weight: 600;
	line-height: 1.2;
	color: #00a99d;
	font-size: 20px;
letter-spacing: 0.05em;
	padding-left: 10px;
}

.contents05 h6 {
font-weight: 500;
	line-height: 1.2;
	font-size: 20px;
}


/* contact-box */


.cbn {
	vertical-align: top;
	display: inline-block;
	float: left;
	margin-right: 10px;
}

.contact-wrap {
	width: 900px;
}

.contact-wrap .midashi03 {
	width: 100%;
	margin-top: 40px;
}


.contact-wrap p {
	margin-bottom: 20px;
	color: #fb5373;
}

.contact-wrap p.text001 {
	color: #c0272d;
}

.contact-box {
width: 100%;
	padding: 10px;
	 background : #f6eef6;
	margin-top: 30px;
	margin-bottom: 30px;
	clear: both;
}

.contact-box2  {
	 background : #edf9f4;
}

.contact-box h6 {
	text-align: center;
	font-weight: normal;
	line-height: 1.2;
	font-size : 14px;
  color : #333333;
	background-color: #FFF;
	padding: 10px;
	margin-bottom: 20px;
}

.contact-box .radio-box {
	display: inline-block;
	margin-right: 20px;
    padding-top: 2px;
}


/*contact*/



form.contact {
	clear: both;
	margin-right: auto;
	margin-left: auto;
	padding-top: 0px;
	display: block;
}

label {
	font-size: 12px;
	color: #FFF;
	margin-right: auto;
	margin-left: auto;
}

.contact div.button {
	text-align: center;
	margin-top: 50px;
	margin-bottom: 70px;
}


.contact button {
	border: none;
	background-color: rgba(255,255,255,0);
	margin-right: 15px;
	margin-left: 15px;
}


/* dl
---------------------------------------------------- */

dl {
}

dl dt,dd {
	font-size: 16px;
	line-height: 1.6em;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

.radio-box {
	padding-bottom: 10px;
}



.com01 {
	width: 860px;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0;
	
}

	.com01 dt {
		float:left;
		width:198px;
		padding:10px 3px 8px 10px;
		line-height: 150%;
		clear:left;
		
	}
		
	.com01 dd {
	line-height: 150%;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 8px;
	padding-left: 195px;
	}
	
.com01:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

.com02 {
	width:860px;
	margin:0 0 0 0px;
}

	.com02 dt {
		float:left;
		width:198px;
		padding:10px 3px 8px 10px;
		line-height: 150%;
		clear:left;
	}
		
	.com02 dd {
	line-height: 150%;
	padding-top: 10px;
	padding-bottom: 8px;
	padding-right: 10px;
	padding-left: 212px;
	}
	
.com02:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

.com03 {
	width:860px;
	margin:0 0 0 0px;
}

	.com03 dt {
		float:left;
		width:198px;
		padding:10px 3px 8px 10px;
		line-height:1.8;
		clear:left;
	}
		
	.com03 dd {
		padding:10px 10px 8px 125px;
		line-height:1.8;
	}
	
.com03:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

/* お問い合わせページ
---------------------------------------------------- */
form,input,textarea,button{
	margin:0;
	padding:2px;
	font-size:100%;
}

p.cf.txtbo01.ta_center.input41 {
    font-size: 140%;
    padding: 20px 0 0 0;
}

.frm_p01 {
	margin:0 5px 0 0;
}

.frm_s01 {
	width:300px;
	font-size:12px;
}




.text01 {
	margin-bottom: 50px;
}

.text02 {
	margin-bottom: 40px;
}

.text03 {
	margin-bottom: 0px;
}

.text04 {
	margin-bottom: 60px;
}



.sp-view {
    display: none;
}

html, body {
    height: 100%;
}

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

.contents02 .box02:after, .contents02 .box02:before {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.contents02 .box02:after {
	border-color: rgba(255, 255, 255, 0);
	border-right-color: #FFF;
	border-width: 15px;
	margin-top: -15px;
}
.contents02 .box02:before {
	border-color: rgba(140, 198, 63, 0);
	border-right-color: #8cc63f;
	border-width: 19px;
	margin-top: -19px;
}
}


.sp-view {
    display: none;
}

html, body {
    height: 100%;
}
