@charset "UTF-8";
/*　====================== 基本設定 ======================　*/
*,
*::before,
*::after {
-webkit-box-sizing: inherit;
box-sizing: border-box;
}
html {
-webkit-box-sizing: border-box;
box-sizing: border-box;
scroll-behavior: smooth;
overflow-x: hidden;
}
body{
margin:0;
padding: 0;
overflow-x: hidden;
color: #333333;
}
ul,ol {
list-style: none;
padding: 0;
margin: 0;
}
img{
width:100%;
max-width:100%;
display: block;
}
a,
button{
transition: opacity 0.3s ease;
cursor: pointer;
}
a:hover,
button:hover{
opacity: 0.7;
}

/*　====================== フォント設定 ======================　*/
h1,h2,h3,h4,h5,h6{
font-weight: bold;
line-height: 1.5;
width: 100%;
font-family: "Zen Kaku Gothic Antique", sans-serif;
font-weight: 400;
font-style: normal;
}
h2{
font-size: 50px;
font-weight: 900;
margin:0 auto 48px auto;
text-align: center;
}
p,a,div,ul,ol,dl{
font-size: 16px;
font-weight: 500;
letter-spacing: 0.07em;
line-height: 1.8;
width: 100%;
font-family: "Zen Kaku Gothic Antique", sans-serif;
font-style: normal;
color: inherit;
}
input,textarea{
font-size: 16px;
padding: 5px;
line-height: 1.8;
}
@media screen and (max-width:1080px){
h2{
font-size: 45px;
}
}
@media screen and (max-width:767px){
p,a,div,ul,ol,dl{
font-size: 16px;
}
input,textarea{
font-size: 15px;
}
h2{
font-size: 32px;
margin: 0 auto 40px auto !important; 
}
}

/*　====================== レスポンシブ設定 ======================　*/
.pc-only {
display: block;
}
.sp-only {
display: none;
}
@media screen and (max-width:767px){
.pc-only {
display: none;
}
.sp-only {
display: block;
}
}

/*　====================== コンテンツ幅設定 ======================　*/
section{
padding: 96px 0;
}
.container{
max-width: 1080px;
margin: 0 auto;
width: 90%;
}
@media screen and (max-width:767px){
section{
padding: 80px 0;
}
}

/*　====================== flexデフォルト設定 ======================　*/
.flex {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
/*　====================== fv ======================　*/
.fv{
background-color: #333333;
position: relative;
height: auto;
padding: 96px 0 0 0;
}
.fv::before,
.fv::after{
content: "";
position: absolute;
background-image: url(../image/mv-line.png);
background-size: cover;
background-repeat: no-repeat;
width: 100vw;
height:50px;
z-index: 0;
}
.fv::before{
top: 0;
left: 0;
}
.fv::after{
bottom: 0;
left: 0;
}
.fv .fv-text{
max-width: 990px;
margin: 0 auto;
position: relative;
bottom: 100px;
}
.fv .fv-text::before{
content: "";
position: absolute;
display: inline-block;
background-image: url(../image/mv2.png);
background-repeat: no-repeat;
background-size: contain;
width: 260px;
height: 260px;
top: -70px;
left: -100px;
}
.fv .fv-text .mv1{
width: 100%;
height: auto;
margin: 0 auto;
position: relative;
left: 20px;
}
.fv .fv-text .mv2 p{
width: fit-content;
margin: 32px auto 0 auto;
font-size: 25px;
background-color: #C4302F;
padding:4px 16px;
color: #fff;
font-weight: 800;
}
.fv .fv-text .mv2 .strong{
background-color: #fff;
padding: 0 8px;
color: #333333;
font-size: 30px;
font-weight: 800;
box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.25);
margin:0 8px;
}
.fv .fv-text .mv2 .strong2{
font-size: 30px;
font-weight: 800;
}
@media screen and (max-width:1190px){
.fv .fv-text {
max-width: 1190px;
margin: 0 auto;
position: relative;
bottom: 80px;
}
.fv .fv-text::before {
width: 230px;
height: 230px;
top: -68px;
left: 0;
}
.fv .fv-text .mv1 {
width: 95%;
}
}
@media screen and (max-width:1000px){
.fv .fv-text::before {
width: 200px;
height: 200px;
top: -70px;
left: 0;
}
}
@media screen and (max-width:767px){
.fv {
padding: 80px 0 0 0;
}
.fv .fv-text .mv1 {
left: 0;
}
.fv .fv-text::before {
width: 150px;
height: 150px;
top: -70px;
left: 0;
}
.fv .fv-text {
bottom: 50px;
}
.fv .fv-text .mv1{
width: 90%;
position: relative;
bottom: 25px;
}
.fv .fv-text .mv2 p {
margin: 0 auto;
text-align: center;
font-size: 16.5px;
padding: 0;
}
.fv .fv-text .mv2 .strong,
.fv .fv-text .mv2 .strong2{
font-size: 19px;
}
.fv::before, 
.fv::after {
height: 30px;
}
}
/*　====================== sec1 problem======================　*/
.problem{
background-image: url(../image/sec1-back.webp);
background-size: cover;
background-repeat: no-repeat;
background-position: center center;
}
.problem h2.flex{
background-color: #333333;
border: #C4302F solid 3px;
border-radius: 50px;
text-align: center;
color: #fff;
padding: 10px 0;
justify-content: center;
}
.problem h2.flex::before{
content: "";
display: inline-block;
background-image: url(../image/sec1-1.webp);
background-repeat: no-repeat;
background-size: contain;
width: 43px;
height: 38px;
margin-right: 8px;
}

.problem .problem-list.flex{
flex-direction: column;
gap: 40px;
margin-bottom: 40px;
}
.problem .problem-list li h3{
background-color: #333333;
border-radius: 40px;
font-size: 25px;
font-weight: 800;
color: #fff;
padding: 16px 0;
}
.problem .problem-list li h3{
background-color: #333333;
border-radius: 40px;
font-size: 25px;
font-weight: 700;
color: #fff;
padding: 16px 0;
}
.problem .problem-list li h3 .case{
background-color: #c4302f;
border-radius: 40px 0 0 40px;
padding: 16px 16px 17px 16px;
margin-right: 16px;
}
.problem .problem-list li div.flex{
width: 80%;
margin: 24px auto 0 auto;
gap: 24px;
}
.problem .problem-list li div.flex p.left{
width: 70%;
}
.problem .problem-list li div.flex p.left span.red{
font-size: 18px;
font-weight: 900;
color: #C4302F;
}
.problem .problem-list li div.flex img.right{
width: 28%;
}
.problem .banner{
background-color: #fff;
border: #C4302F solid 5px;
}
.problem .banner h3{
background-color: #c4302f;
color: #fff;
text-align: center;
font-size: 32px;
font-weight: 700;
padding: 8px 0;
}
.problem .banner h3 span{
font-size: 20px;
}
.problem .banner .banner-list.flex{
justify-content: center;
gap: 24px;
padding: 32px 0;
}
.problem .banner .banner-list.flex span.border{
background: linear-gradient(transparent 65%, #FFCBCA 65%);
}
.problem .banner .banner-list.flex li{
font-weight: 700;
font-size: 18px;
}
.problem .banner .banner-list.flex li a{
font-weight: 800;
font-size: 20px;
border-radius: 42px;
background-color: #fff;
border: #C4302F solid 2px;
box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.25);
padding: 24px;
color: #C4302F;
display: block;
text-align: center;
}
@media screen and (max-width:1080px){
.problem .problem-list li div.flex {
width: 100%;
}
.problem .problem-list li h3 {
text-align: center;
padding: 0 0 16px 0;
font-size: 20px;
}
.problem .problem-list li h3 .ttl{
display: inline-block;
width: 90%;
margin: 0 auto;
line-height: 1.8;
text-align: left;
}
.problem .problem-list li h3 .case {
border-radius: 40px 40px 0 0;
display: inline-block;
width: 100%;
text-align: center;
padding: 4px;
margin-right: 0;
margin-bottom: 16px;
}
.problem .banner .banner-list.flex {
flex-direction: column;
}
.problem .banner .banner-list.flex li {
text-align: center;
}
}
@media screen and (max-width:767px){
.problem h2.flex {
font-size: 30px;
}
.problem h2.flex::before {
width: 30px;
height: 24px;
margin-right: 0;
margin-top: 3px;
}
.problem .problem-list li div.flex {
flex-direction: column;
}
.problem .problem-list li div.flex p.left{
width: 100%;
line-height: 2;
}
.problem .problem-list li div.flex img.right{
width: 75%;
}
.problem h2.flex span{
font-size: 18px;
align-self: flex-end;
position: relative;
bottom: 2px;
}
.problem .problem-list.flex li:nth-of-type(1) .flex img.right,
.problem .problem-list.flex li:nth-of-type(3) .flex img.right{
order: 1;
}
.problem .problem-list.flex li:nth-of-type(1) .flex p.left,
.problem .problem-list.flex li:nth-of-type(3) .flex p.left{
order: 2;
}
.problem .banner .banner-list.flex li {
text-align: left;
width: 90%;
margin: 0 auto;
}
.problem .banner .banner-list.flex li a {
font-size: 15px;
}
.problem .banner h3 {
font-size: 28px;
}
.problem .banner .banner-list.flex li{
font-size: 15px;
}
.problem h2.flex{
padding: 4px 0;
}
.problem .problem-list li h3{
border-radius: 20px;
}
.problem .problem-list li h3 .case {
border-radius: 20px 20px 0 0;
font-size: 22px;
}
.problem .problem-list li h3 .ttl{
width: 90%;
text-align: left;
}
}
/*　====================== sec2 warning ======================　*/
.warning{
background-image: url(../image/sec2-back.webp);
background-size: cover;
background-repeat: no-repeat;
background-position: center;
}

.warning h2{
width: 50%;
margin: 0 auto 48px auto;
}
.warning .warning-content.flex{
justify-content: center;
margin-bottom: 40px;
}
.warning picture.sec2-2{
width: 50%;
position: relative;
left: 8%;
z-index: 10;
}
.warning img.sec2-3{
width: 30%;
}
@media screen and (max-width:1080px){
.warning picture.sec2-2 {
width: 60%;
}
}
@media screen and (max-width:767px){
.warning h2{
width: 100%;
}
.warning picture.sec2-2{
width: 90%;
position: static;
left: 0;
margin: 0 auto;
}
}
/*　====================== cta ======================　*/
.cta{
position: relative;
}
.cta ul.cta-list.flex{
position: absolute;
width: 90%;
top: 78%;
left: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
}
.cta ul.cta-list.flex li{
width: 32%;
}
@media screen and (max-width:767px){
.cta ul.cta-list.flex{
flex-direction: column;
gap: 24px;
top: 66%;
}
.cta ul.cta-list.flex li{
width: 100%;
}
}

/*　====================== sec3 point ======================　*/
.point{
background-color: #00A65A;
position: relative;
z-index: -2;
}
.point::before{
content: "";
display: inline-block;
background-image: url(../image/sec3-2.webp);
background-repeat: no-repeat;
background-size: contain;
width: 312px;
height: 228px;
position: absolute;
top: 18%;
left: 9%;
z-index: -1;
}
.point h2.flex{
flex-direction: column;
color: #fff;
gap: 8px;
margin-bottom: 32px;
text-align: center;
}
.point h2.flex picture.sec3-1{
width: 70%;
}
.point p.read{
width: fit-content;
margin: 0 auto 48px auto;
font-size: 18px;
color: #fff;
}
.point .point-list.flex{
width: 90%;
margin: 0 auto;
flex-wrap: wrap;
}
.point .point-list.flex li.flex{
width: 19%;
flex-direction: column;
justify-content: center;
}
.point .point-list.flex li.flex p{
width: 100%;
background-color: #fff;
text-align: center;
font-size: 18px;
font-weight: 800;
padding: 16px 0;
line-height: 1.4;
}
.point .sec3-only{
display: none;
}
@media screen and (max-width:1280px){
.point .sec3-only{
display: block;
}
.point::before{
left: 0;
}
.point .point-list.flex {
justify-content: center;
gap: 24px;
}
.point .point-list.flex li.flex{
width: 30%;
flex-direction: column;
justify-content: center;
}
}
@media screen and (max-width:1000px){
.point::before{
top: 11%;
width: 220px;
height: 160px;
}
.point .point-list.flex li.flex{
width: 48%;
}
}
@media screen and (max-width:767px){
.point::before {
top: 5%;
width: 100px;
height: 73px;
}
.point .point-list.flex {
width: 90%;
}
.point .point-list.flex li.flex{
width: 90%;
}
.point h2.flex {
margin-bottom: 16px !important;
}
.point p.read {
margin: 0 auto 40px auto;
}
.point .point-list.flex li.flex p{
font-size: 22px;
}
}

/*　====================== sec4 reason ======================　*/
.reason{
background-image: url(../image/sec4-back.webp);
background-repeat: no-repeat;
background-size: cover;
position: relative;
z-index: -2;
}
.reason picture.balloon{
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
z-index: -1;
width: 100%;
}
.reason h2{
width: 80%;
}
.reason .reason-list.flex{
flex-direction: column;
justify-content: center;
gap: 48px;
}
.reason .reason-list.flex li{
background-color: #fff;
}
.reason .reason-list.flex li h3{
font-weight: 800;
color: #fff;
background: linear-gradient(to bottom, #00A65A, #72AF2D);
position: relative;
}
.reason .reason-list.flex li h3 span{
padding-left: 13%;
font-size: 30px;
}
.reason .reason-list.flex li h3 span strong{
font-size: 40px;
color: #FFF528;
}
.reason .reason-list.flex li h3 img.sec4-point{
position: absolute;
top: -28%;
left: 0;
width: 10%;
}
.reason .reason-list.flex .reason-about.flex{
justify-content: center;
gap: 48px;
padding: 32px 0;
}
.reason .reason-list.flex .reason-about img{
width: 25%;
}
.reason .reason-list.flex .reason-about .reason-about-right{
width: 60%;
}
.reason .reason-list.flex li:nth-of-type(2) .reason-about img,
.reason .reason-list.flex li:nth-of-type(3) .reason-about img,
.reason .reason-list.flex li:nth-of-type(4) .reason-about img{
width: 20%;
}
.reason .reason-list.flex li:nth-of-type(2) .reason-about .reason-about-right,
.reason .reason-list.flex li:nth-of-type(3) .reason-about .reason-about-right,
.reason .reason-list.flex li:nth-of-type(4) .reason-about .reason-about-right{
width: 52%;
}
.reason .reason-list.flex .reason-about .reason-about-right span.ttl{
color: #fff;
background-color: #00A65A;
border-radius: 14px;
display: inline-block;
width: 100%;
text-align: center;
font-weight: 700;
font-size: 20px;
margin-bottom: 32px;
}
.reason .reason-list.flex .reason-about .reason-about-right p:not(:last-of-type){
margin-bottom: 16px;
}
.reason .reason-list.flex .reason-about .reason-about-right p span{
color: #00A65A;
font-weight: 800;
}
@media screen and (max-width:1080px){
.reason h2 {
width: 90%;
}
.reason .reason-list.flex li h3 span{
font-size: 25px;
}
.reason .reason-list.flex li h3 span strong {
font-size: 35px;
}
}
@media screen and (max-width:767px){
.reason picture.balloon{
position: absolute;
top: 1%;
}
.reason .reason-list.flex{
gap: 40px;
}
.reason .reason-list.flex li h3 span{
display: inline-block;
font-size: 20px;
padding-left: 0;
padding: 8px 0 8px 20%;
}
.reason .reason-list.flex li h3 span strong{
font-size: 25px;
color: #FFF528;
}
.reason .reason-list.flex li h3 img.sec4-point {
position: absolute;
top: -10%;
left: 0;
width: 16%;
}
.reason .reason-list.flex .reason-about.flex {
flex-direction: column;
gap: 24px;
}
.reason .reason-list.flex .reason-about img {
width: 70%;
}
.reason .reason-list.flex .reason-about .reason-about-right {
width: 90%;
}
.reason .reason-list.flex li:nth-of-type(2) .reason-about img, 
.reason .reason-list.flex li:nth-of-type(3) .reason-about img, 
.reason .reason-list.flex li:nth-of-type(4) .reason-about img {
width: 60%;
}
.reason .reason-list.flex li:nth-of-type(2) .reason-about .reason-about-right, 
.reason .reason-list.flex li:nth-of-type(3) .reason-about .reason-about-right, 
.reason .reason-list.flex li:nth-of-type(4) .reason-about .reason-about-right {
width: 90%;
}
}

/*　====================== sec5 service ======================　*/
.service{
padding: 0 0 96px 0;
background: linear-gradient(
to bottom,
#EAF8DB 0%,
#C5E1A5 50%, 
#72AF2D 100% 
);
position: relative;
z-index: 1;
overflow: hidden;
}
.service .sec5-back{
position: absolute;
top: 10%;
left: 50%;
transform: translateX(-50%);
z-index: 2;
width: 90%;
}
.service .container{
position: relative;
z-index: 3;
}
.service .ttl-back{
background-color: #72AF2D;
padding: 24px 0;
position: relative;
z-index: 3;
}
.service .ttl-back::before,
.service .ttl-back::after{
content: "";
height: 2px;
width: 100%;
background-color: #fff;
position: absolute;
}
.service .ttl-back::before{
right: 0;
top: 16px;
}
.service .ttl-back::after{
left: 0;
bottom: 16px;
}
.service .ttl-back h2{
width: 50%;
margin: 0 auto;
}
.service .service-list.flex{
margin-top: 96px;
}
.service .service-list.flex li{
width: 200px;
height: 200px;
box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.25);
background-color: #fff;
padding: 16px;
position: relative;
}
.service .service-list.flex li:before{
content: "";
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
width: 184px;
height: 184px;
background-color: transparent;
border: solid #F66B20 1px;
}
.service .service-list.flex li .service-wrap.flex{
flex-direction: column;
justify-content: center;
align-items: center;
gap: 16px;
height: 100%;
}
.service .service-list.flex li .service-wrap.flex img{
width: 50%;
}
.service .service-list.flex li:nth-of-type(2) .service-wrap.flex img,
.service .service-list.flex li:nth-of-type(4) .service-wrap.flex img,
.service .service-list.flex li:nth-of-type(5) .service-wrap.flex img{
width: 45%;
}
.service .service-list.flex li .service-wrap.flex p{
text-align: center;
font-size: 17px;
}
.service .triangle {
display:block;
width: 138px;
height: 50px;
background: #f66b20;
clip-path: polygon(0 0, 100% 0%, 50% 100%);
margin: 32px auto;
}
.service .service-protect.flex{
margin-bottom: 40px;
}
.service .service-protect.flex picture{
width: 90%;
margin: 0 auto;
}
@media screen and (max-width:1080px){
.service .ttl-back h2 {
width: 70%;
}
.service .service-list.flex {
margin-top: 40px;
flex-wrap: wrap;
justify-content: center;
gap: 24px;
}
.service .service-list.flex li {
width: 250px;
height: 250px;
box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.25);
background-color: #fff;
padding: 16px;
position: relative;
}
.service .service-list.flex li:before {
width: 236px;
height: 236px;
}
}

@media screen and (max-width:767px){
.service .ttl-back h2 {
width: 90%;
margin: 0 auto !important;
}
.service .sec5-back {
top: 5%;
left: 50%;
width: 100%;
}
.service .ttl-back::before, 
.service .ttl-back::after {
height: 1px;
}
.service .ttl-back::before {
right: 0;
top: 8px;
}
.service .ttl-back::after {
left: 0;
bottom: 8px;
}
.service .service-list.flex {
gap: 16px;
}
.service .service-list.flex li {
width: 160px;
height: 160px;
white-space: nowrap;
}
.service .service-list.flex li:before {
width: 152px;
height: 152px;
}
.service .service-list.flex li .service-wrap.flex p {
width: fit-content;
font-size: 15px;
}
}

/*　====================== sec6 works ======================　*/
.works{
position: relative;
}
.works::after{
content: "";
display: inline-block;
background-image: url(../image/sec6-back.webp);
background-size: cover;
background-repeat: no-repeat;
background-position: center;
width: 100%;
height: 180px;
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
z-index: -1;
}
.works picture.balloon{
position: absolute;
top: 8%;
left: 50%;
transform: translateX(-50%);
z-index: -1;
width: 100%;
}
.works h2{
width: 43%;
}
.works .work-content.flex{
flex-wrap: wrap;
gap: 32px;
}
.works .work-content.flex li{
background-color: #fff;
border: solid 2px #C3C3C3;
border-radius: 20px;
box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.25);
padding: 32px 16px;
width: 48%;
}
.works .work-content.flex .works-img.flex{
align-items: flex-end;
}
.works .work-content.flex li .works-img.flex .before.flex{
flex-direction: column;
gap:8px;
width: 40%;
}
.works .work-content.flex li .works-img.flex .after.flex{
flex-direction: column;
gap:8px;
width: 55%;
}
.works .work-content.flex li .works-img.flex .before.flex:before{
content: "BEFORE";
font-family: "Roboto", sans-serif;
font-optical-sizing: auto;
width: 100px;
font-weight: 800;
border: solid 1px #333333;
padding: 0 4px;
text-align: center;
}
.works .work-content.flex li .works-img.flex .after.flex:before{
content: "AFTER";
font-family: "Roboto", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
border: solid 1px #F66B20;
padding: 0 4px;
color: #F66B20;
width: 100px;
text-align: center;
}
.works .work-content.flex li .category.flex{
justify-content: left;
gap: 8px;
margin: 16px 0 8px 0;
}
.works .work-content.flex li .category.flex span,
.works .work-content.flex li .category.flex p{
width: fit-content;
font-weight: 700;
}
.works .work-content.flex li .category.flex span{
font-size: 16px;
background-color: #F66B20;
border-radius: 25px;
color: #fff;
padding:0 8px ;
}
.works .work-content.flex li .category.flex p{
font-size: 20px;
}
.works .work-content.flex li .work-content-text.flex{
flex-direction: column;
gap: 8px;
}
.works .work-content.flex li .work-content-text.flex h3{
font-weight: 800;
color: #72AF2D;
font-size: 25px;
}
@media screen and (max-width:1023px){
.works .work-content.flex li {
width: 100%;
}
.works picture.balloon {
top: 4%;
}
}
@media screen and (max-width:1000px){
.works h2{
width: 55%;
}
}
@media screen and (max-width:767px){
.works picture.balloon {
top: 4.5%;
}
.works h2 {
width: 95%;
}
.works .work-content.flex li {
width: 100%;
}
.works::after {
height: 100px;
}
.works .work-content.flex li .work-content-text.flex h3 {
font-size: 20px;
}
.works .work-content.flex li .category.flex span {
font-size: 13px;
}
.works .work-content.flex li .category.flex p {
font-size: 15px;
}
}
/*　====================== sec7 service ======================　*/
.question h2{
width: 47%;
}
.question .question-list.flex{
flex-direction: column;
gap: 32px;
margin-bottom: 40px;
}
.question .question-list li{
background-color: #EAF8DB;
padding: 24px 0;
width: 85%;
margin: 0 auto;
}
.question .question-list li .question-about.flex{
flex-direction: column;
justify-content: center;
padding-left: 8%;
}
.question .question-list li .question-about h3{
font-size: 30px;
font-weight: 700;
}
.question .question-list li .question-about h3 span{
font-family: "Roboto", sans-serif;
font-optical-sizing: auto;
font-weight: 500;
color: #72AF2D;
font-size: 35px;
display: inline-block;
padding-right: 16px;
}
.question .question-list li .question-about p{
font-size: 20px;
}
.question .question-list li .question-about p span.answer{
font-family: "Roboto", sans-serif;
font-optical-sizing: auto;
font-weight: 500;
display: inline-block;
font-size: 24px;
padding:0 16px 0 5%;
}
.question .question-list li .question-about p span.red{
color: #C4302F;
}

@media screen and (max-width:1080px){
.question .question-list li {
width: 100%;
}
.question .question-list li .question-about.flex {
flex-direction: column;
justify-content: center;
padding-left: 4%;
}
.question .question-list li .question-about h3 {
font-size: 28px;
}
}
@media screen and (max-width:1000px){

.question h2{
width: 58%;
}
}
@media screen and (max-width:767px){
.question .question-list li {
background-color: #EAF8DB;
padding: 24px 8px;
width: 100%;
margin: 0 auto;
}
.question h2 {
width: 100%;
padding-left: 5%;
}
.question .question-list li .question-about.flex{
gap: 16px;
padding: 2%;
}
.question .question-list li .question-about h3 {
font-size: 20px;
font-weight: 700;
}
.question .question-list li .question-about h3 span {
font-size: 25px;
padding-right: 8px;
}
.question .question-list li .question-about p {
font-size: 15px;
}
.question .question-list li .question-about p span.answer {
font-size: 20px;
padding: 0 8px 0 2%;
}
}

/*　====================== sec8 service ======================　*/
.area{
background-color: #EAF8DB;
}
.area h2 span.small{
font-size: 35px;
}
.area h2 span.orange{
color: #F66B20;
}
.area .area-about.flex .area-left,
.area .area-about.flex .area-right{
width: 48%;
}
.area .area-about.flex .area-left h3{
background-color: #00A65A;
border-radius: 29px;
padding: 4px 0;
font-size: 20px;
font-weight: 700;
text-align: center;
color: #fff;
margin-bottom: 24px;
}
.area .area-about.flex .area-left p:not(:last-of-type){
margin-bottom: 24px;
}
.area .area-about.flex .area-left p span{
font-weight: 700;
}
@media screen and (max-width:768px){
.area .area-about.flex{
flex-direction: column;
gap: 24px;
}
.area h2 span.small {
font-size: 20px;
}
.area .area-about.flex .area-left {
width: 100%;
}
.area .area-about.flex .area-right {
width: 85%;
}
.area .area-about.flex .area-left{
order: 2;
}
.area .area-about.flex .area-right{
order: 1;
}
}

/*　====================== sec9 contact ======================　*/
.contact .container{
background-color: #fff;
border:solid 1px #72AF2D;
padding: 48px 0;
box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.25);
}
.contact .security-guarantee.flex{
background-color: #fff;
border: solid #C3C3C3 1px;
box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.25);
position: relative;
width: 90%;
margin: 0 auto;
justify-content: center;
padding: 24px 0;
gap: 32px;
}
.contact .security-guarantee.flex::after{
content: "";
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
height: 80%;
width: 2px;
background-color: #C3C3C3;
}
.contact .security-guarantee.flex p{
width: 45%;
position: relative;
right: 3%;
}
.contact .security-guarantee.flex p{
font-size: 14px;
}
.contact .security-guarantee.flex a{
width: 37%;
display: block;
}
.contact form {
width: 85%;
margin: 48px auto 0 auto;
}
.contact form .form-inner {
margin-bottom: 32px;
border-bottom: 1px solid #C3C3C3;
padding-bottom: 24px;
}
.contact form .form-inner label{
width: 90%;
margin: 0 auto;
}
.contact form .form-inner .title {
width: 35%;
}
.contact form .form-inner .title p{
font-size: 20px;
font-weight: 700;
}
.contact form .form-inner .title .req {
color: #E60013;
font-weight: 700;
padding-right: 30px;
display: inline-block;
font-size: 16px;
}
.contact form .form-inner .content{
background: #fff;
width: 100%;
line-height: 1.5;
}
.contact form .form-inner .content input,
.contact form .form-inner .content textarea{
width: 100%;
height: auto;
padding: 20px;
border: #C3C3C3 solid 1px;
border-radius: 8px;
}
.contact form button.flex{
flex-direction: column;
justify-content: center;
margin: 0 auto;
background-color: #72AF2D;
color: #fff;
width: 290px;
height: 60px;
font-size: 20px;
border: none;
}
.contact .policy a{
display: block;
width: fit-content;
font-size: 20px;
border-bottom: solid #333333 1px;
margin: 16px auto;
}
.contact .confirm{
font-size: 16px;
text-align: center;
margin-bottom: 48px;
}
@media screen and (max-width:767px){
.contact form {
width: 90%;
}
.contact .security-guarantee.flex {
flex-direction: column;
}
.contact .security-guarantee.flex p {
width: 85%;
right: 0;
}
.contact .security-guarantee.flex::after {
top: 70%;
height: 2px;
width: 85%;
}
.contact .security-guarantee.flex a {
width: 85%;
display: block;
}
.contact form .form-inner label.flex{
flex-direction: column;
width: 100%;
gap: 16px;
}
.contact form .form-inner .title {
width: 100%;
}
.contact form .form-inner .title p{
font-size: 18px;
font-weight: 700;
}
.contact .policy a {
display: block;
width: fit-content;
font-size: 18px;
border-bottom: solid #333333 1px;
margin: 16px auto;
}
.contact .confirm{
font-size: 14px;
}
}
/*　====================== sec10 contact ======================　*/
.company{
background-color: #EAF8DB;
}
.company .company-info-list{
width: 90%;
margin: 0 auto;
}
.company .info-item.flex{
padding: 24px 0;
border-bottom: solid #C3C3C3 1px;
position: relative;
}
.company .info-item.flex:before {
content: "";
position: absolute;
width: 30%;
height: 1px;
background: #72AF2D;
left: 0;
bottom: -1px;
}
.company .info-item.flex dt.label{
display: block;
width: 30%;
text-align: center;
color: #72AF2D;
font-weight: 800;
font-size: 20px;
}
.company .info-item.flex dt.label{
display: block;
width: 30%;
text-align: center;
color: #72AF2D;
font-weight: 800;
font-size: 20px;
}
.company .info-item.flex dd.value{
width: 70%;
font-size: 16px;
}
@media screen and (max-width:767px){
.company .info-item.flex {
flex-direction: column;
}
.company .info-item.flex dt.label {
width: 100%;
text-align: left;
}
.company .info-item.flex dd.value {
width: 100%;
font-size: 16px;
}
}
/*　====================== footer ======================　*/
footer{
padding: 24px 0;
background: linear-gradient(to bottom, #00A65A, #72AF2D);
}
footer p{
color: #fff;
text-align: center;
}

/*　====================== thanks ======================　*/
.thanks h2{
color: #f66b20;
}
.thanks p{
text-align: center;
}
.thanks button{
display: block;
text-align: center;
margin: 40px auto 0 auto;
background-color: #72AF2D;
color: #fff;
width: 290px;
height: 60px;
font-size: 20px;
border: none;
}