@charset "UTF-8";

/* 共通
================= */
.c-red{
 color:#E62334;
}

.main{
 margin-top:80px;
}
.main-bg-color{
 background:#F9E7E0;
}
.container{
 padding-bottom:85px;
}
.container-bg-color{
 background:#FFF;
 border-radius:0 130px 0 0;
}
.container-top-line{
 position:relative;
}
.container-top-line::before{
 content:url(/materials/common/img/bussiness/vertical-line.svg);
 position: absolute;
 top: -31px;
 left: calc((100% - 2px) / 2);
}
@media screen and (max-width: 768px){
 .container-top-line::before{
  transform: scaleY(0.6);
  
 }
}
.container{
 width:100%;
 
}
.container-in{
 max-width:1000px;
 width:100%;
 margin: auto;
 padding:80px 0 0;
}

@media screen and (max-width: 768px){
 .main{
   margin-top:50px;
  }
 .container-bg-color{
  background:#FFF;
  border-radius:0 68px 0 0;
 }
 .container-in{
  max-width:initial;
  width:100%;
  padding:50px 25px 0;
 }
}

.h2-area{
 height:200px;
 text-align: center;
 padding: 65px 0 0;
}
.h2-title-txt{
 font-size:32px;
 font-weight:bold;
 line-height:1;
 margin-bottom:68px;
}
.h2-title-img{
 display:block;
 margin-bottom:24px;
}
@media screen and (max-width: 768px){
 .h2-area{
  height:136px;
  padding: 35px 0 0;
 }
 .h2-title-txt{
  font-size:28px;
  margin-bottom:48px
 }
 .h2-title-img{
  margin-bottom:15px;
 }
}
.subhead-area{
 margin-bottom:50px;
}
.h3-subhead-txt{
 font-size:20px;
 font-weight:bold;
 text-align:center;
 line-height:1.8;
}
.h3-txt{
 font-size:26px;
 font-weight:bold;
}
.h3-under-bd{
 position:relative;
 padding-bottom:22px;
 border-bottom:4px solid #DDDDDD;
}
.h3-under-bd::after{
 position:absolute;
 content:"";
 display: block;
 background: #E62334;
 width: 80px;
 height: 4px;
 bottom: -4px;
}

@media screen and (max-width: 768px){
 .subhead-area{
  margin-bottom:36px;
 }
 .h3-subhead-txt{
  font-size:18px;
  text-align:left;
 }
 .h3-txt{
  font-size:20px;
 }
 .h3-under-bd{
  padding-bottom:20px;
 }
}

.p-mb{
 margin-bottom:40px;
}
.p-mb-note{
 margin-bottom:20px;
}
@media screen and (max-width: 768px){
 .p-mb{
  margin-bottom:30px;
 }
}

/* =======共通ここまで==========
================= */ 

.content-wrap{
 background:#FBF6EC;
 border-radius:20px;
 padding:60px;
 font-size:16px;
 margin-bottom:60px;
}
.content-wrap p{
 line-height:1.8;
}
.content-wrap p:first-line{
 /* line-height:1; */
}
@media screen and (max-width: 768px){
 .content-wrap{
  padding:30px 20px 28px;
  margin-bottom:40px;
 }
}
.content-wrap .h3-under-bd.first-con{
 margin-bottom:30px;
}
@media screen and (max-width: 768px){
 .content-wrap .h3-under-bd.first-con{
  margin-bottom:20px;
 }

}

.w-content-bg{
 background:#fff;
 border-radius:10px;
 padding:30px 30px 30px 40px;
 display: flex;
 margin-bottom:20px;
}
.w-content-bg > div:first-child{
 padding-right:30px;
}
.w-content-bg > div:last-child{
 flex-shrink: 0;
 max-width: 320px
}
.w-content-bg .h4-txt{
  font-size:20px;
  display:inline-block;
  position:relative;
  margin-bottom:26px;
}
.w-content-bg .h4-txt:before{
 content:"";
 display:inline-block;
 width:30px;
 height:4px;
 background:#E62334;
 position: absolute;
 left: -40px;
 top: 12px;
}

.w-content-bg.last-margin{
 margin-bottom:88px;
}

@media screen and (max-width: 768px){
 .w-content-bg{
  display:block;
  padding:22px 20px 30px 20px;
 }
 .w-content-bg > div:first-child{
  padding-right:0;
  padding-bottom:16px;
}
.w-content-bg.last{
  margin-bottom:0;
 }
 .w-content-bg .h4-txt{
  font-size:18px;
  margin-bottom:12px;
 }
 .w-content-bg .h4-txt:before{
  width:14px;
  height:3px;
  left: -20px;
  top: 12px;
 }
 .w-content-bg p{
  font-size:14px;
 }
 .w-content-bg.last-margin{
  margin-bottom:56px;
 }
}

.content-wrap .h3-under-bd.last-con{
 margin-bottom:30px;
}
@media screen and (max-width: 768px){
 .content-wrap .h3-under-bd.last-con{
  margin-bottom:30px;
 }

}
.h3-under-bd + .h4-txt{
 font-size:22px;
 margin-bottom:16px;
}

@media screen and (max-width: 768px){
 .h3-under-bd + .h4-txt{
  font-size:18px;
  margin-bottom:16px;
 }
}

.content-wrap p.note{
 color:#666666;
 font-size:14px;
 line-height:1.6;
 margin-bottom:40px;
}

.last-content-box{
 font-size:20px;
 font-weight:bold;
 text-align:center;
 max-width:740px;
 width:100%;
 padding:30px 0;
 margin:0 auto 85px;
 
 background-image:url(/materials/common/img/bussiness/border-a.svg),
 url(/materials/common/img/bussiness/border-b.svg),
 url(/materials/common/img/bussiness/border-b.svg),
 url(/materials/common/img/bussiness/border-a.svg);
 background-repeat: no-repeat;
 background-size: auto;
 background-position: top center,left center, right center,bottom center;
}

@media screen and (max-width: 768px){

 .last-content-box{
   background-image:url(/materials/common/img/bussiness/border-a-sp.svg),
   url(/materials/common/img/bussiness/border-b-sp.svg),
   url(/materials/common/img/bussiness/border-b-sp.svg),
   url(/materials/common/img/bussiness/border-a-sp.svg);
   font-size:18px;
   padding:24px 0;
   margin:0 auto 55px;
   font-feature-settings: "palt";
   background-position: top center,left center, right center,bottom center;
   
 }
}

/* 事業展開
--------------- */
.container-in.deployment{
 position:relative;
}
.content-wrap.deployment{
 position:relative;
 padding:70px 90px 90px;
 margin-bottom:0;
}
@media screen and (max-width: 768px){
 .content-wrap.deployment{
  padding:36px 28px 97px;
 }
}
.content-wrap.deployment:before{
 content:url(/materials/common/img/bussiness/ellipse-line-l.svg);
 position:absolute;
 top: -2px;
 left:-2px;
}
.content-wrap.deployment:after{
 content:url(/materials/common/img/bussiness/ellipse-line-r.svg);
 position:absolute;
 bottom: -2px;
 right: -2px;
}

@media screen and (max-width: 768px){
 .content-wrap.deployment:before{
  content:url(/materials/common/img/bussiness/ellipse-line-l-sp.svg);
 }
 .content-wrap.deployment:after{
  content:url(/materials/common/img/bussiness/ellipse-line-r-sp.svg);
 }

}

.deployment-img{
 max-width:780px;
 width:100%;
 margin:-50px auto 60px;
 position:relative;
}
@media screen and (max-width: 768px){
 .deployment-img{
  max-width:285px;
  margin:-60px auto 40px;
 }
}

/* 事業紹介
--------------- */
.content-wrap.bussiness-index{
 background: #fff;
 border-radius: 0;
 padding: 0;
 max-width: 880px;
 width: 100%;
 margin: auto;
 padding-bottom:80px;
}
.content-wrap.bussiness-index .p-txt{
 font-size:18px;
 font-weight:bold;
 margin-bottom:24px;
}
.content-wrap.bussiness-index .p-txt.last{
  margin-bottom:0;
 }
@media screen and (max-width: 768px){
 .topPage .subhead-area{
  margin-bottom:28px;
  font-feature-settings: "palt";
 }
 .content-wrap.bussiness-index{
  padding-bottom:60px;
 }
 .content-wrap.bussiness-index .p-txt{
  font-size:16px;
  margin-bottom:20px;
  
 }
  .content-wrap.bussiness-index .p-txt.last{
  margin-bottom:0;
 }

}

.content-wrap.bussiness-index .mv{
 display:block;
 margin:0 auto 40px;
}
@media screen and (max-width: 768px){
 .content-wrap.bussiness-index .mv{
  margin:0 auto 28px;
 }

}
.menu-area{
 width:100%;
 background-image: linear-gradient(
 to bottom, 
 #fff 0 100px, 
 #f9e7e0 100px 100%
 );
}
@media screen and (max-width: 768px){
 .menu-area{
  padding-bottom:64px;
 }
}
.menu-in{
 max-width: 880px;
 width: 100%;
 margin: auto;
 display:flex;
 padding-bottom:80px;
}
@media screen and (max-width: 768px){
 .menu-in{
  max-width: initial;
  margin: auto;
  display:block;
  padding-bottom:63px;
  padding:0 25px;
 }

}
.menu-in > div{
 max-width:420px;
 width:100%;
 border-radius: 20px;
 overflow: hidden;
 box-shadow:8px 8px 0px rgb(102 102 102 / 6%);
}

.menu-in > div:first-child{
 margin-right:calc(100% - 840px);
}
@media screen and (max-width: 768px){
 .menu-in > div:first-child{
  margin-right:0;
  margin-bottom:30px;
 }

}

.menu-in .menu-text{
 background:#fff;
 padding:30px;
 
}
@media screen and (max-width: 768px){
 .menu-in .menu-text{
  padding:24px;
  }

}
.menu-in .menu-text p{
 line-height:1.6;
}
.menu-in .menu-text a{
 display:inline-block;
 font-size:20px;
 font-weight:bold;
 margin-bottom:14px;
}
@media screen and (max-width: 768px){
 .menu-in .menu-text p{
  line-height:1.7;
 }
 .menu-in .menu-text a{
  font-size:18px;
 }
}

.bus-link{
 position:relative;
 transition:0.3s all;
}

.bus-link::after{
 content:url(/materials/common/img/bussiness/arrow-red.svg);
 display:inline-block;
 position:absolute;
 top: 2px;
 right: -30px;
}
@media screen and (max-width: 768px){
 .bus-link::after{
  transform:scale(0.9);
  top: 1px;
 }
}
.bus-link:hover{
 opacity:0.5;
 transition:0.3s all;
}

.topPage .pankuzu{
 padding-left:14px;
}