@charset "utf-8";
html #wpadminbar{top:-46px}
:root{margin-top:0 !important}
/* reset
---------------------------------------------*/
*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}
html{
  font-size:62.5%;
  height:100%;
}
body{
  color:#222;
  display:flex;
  flex-direction:column;
  font-family:"Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size:1.6rem;
  min-height:100%;
  -webkit-text-size-adjust:none;
}
main{flex:1}
img{
  height:auto;
  max-width:100%;
}
ol,ul,li{list-style:none}
a{text-decoration:none}
a:hover{opacity:.7}
@media screen and (min-width:768px){
 body{min-width:920px}
}

/* common
---------------------------------------------*/
/* layout */
.tac{text-align:center}
.tar{text-align:right}
.tal{text-align:left}
.center{margin:auto}
.right{margin-left:auto}

/* link */
a.link, .link a{
  border-bottom:1px solid #2660a1;
  color:#2660a1;
  display:inline-block;
  font-size:1.4rem;
  font-weight:bold;
  padding-bottom:8px;
  position:relative;
}
a.link::after, .link a::after{
  border-top:solid 1px #2660a1;
  border-right:solid 1px #2660a1;
  content:"";
  height:6px;
  right:-20px;
  position:absolute;
  transform:rotate(45deg);
  top:9px;
  width:6px;
}
.bg-grad a.link{
  border-bottom:1px solid #fff;
  color:#fff;
}
.bg-grad a.link::after{
  border-top:solid 1px #fff;
  border-right:solid 1px #fff;
}
@media screen and (max-width:768px){
  .tacs{text-align:center}
}
@media screen and (min-width:768px){
  a.link, .link a{padding-bottom:10px}
}

/* font */
.bold{font-weight:bold}
.eng{font-family:"Avenir Next", Arial}
.noto{font-family:'Noto Serif JP', serif}
/* color */
.bg-grad{
  background:linear-gradient(135deg, #2aa5a4 0%,#3cafb5 50%, #1a84d5 100%);
  color:#fff;
}
.bg-lgreen{background-color:#ecf8f9}
.bg-green{background-color:#2660a1}
.bg-blue{background-color:#1a84d5}
.bg-lgray{background-color:#cfd2d3}
.fc-white{color:#fff}
.fc-lgreen{color:#daf2f3}
.fc-green{color:#2660a1}
.fc-lgray{color:#cfd2d3}
.fc-red{color:#ce3b28}

/* layout */
.inner, .inner-m, .inner-s{
  margin:auto;
  width:90%;
}
@media screen and (max-width:768px){
  .inner-sp{
    margin:auto;
    width:92%;
  }
  .pc-only{display:none !important}
}
@media screen and (min-width:768px){
  .inner{width:920px}
  .inner-pc{
    margin:auto;
    width:920px;
  }
  .inner-m{width:840px}
  .inner-s{width:760px}
  .inner-pcs{
    margin:auto;
    width:760px;
  }
  .col{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
  }
  .sp-only{display:none !important}
}

/* box */
.border-box{
  border-bottom:1px solid #c6e7e8;
  line-height:1.75;
  padding:18px 0;
}
.border-box.first{border-top:1px solid #c6e7e8}
.box{border-radius:20px}
@media screen and (min-width:768px){
  .border-box{padding:36px 0}
  .lbox{width:440px}
  .mbox{width:360px}
}

/* header */
.head{
  top:0;
  position:relative;
  width:100%;
  z-index:500;
}
.st0{fill:#2aa5a4}
.gnav{width:100%}
.gnav a{
  display:block;
  color:#fff;
}
.nav-toggle span:nth-child(1){top:14px}
.nav-toggle span:nth-child(2){top:21px}
.nav-toggle span:nth-child(3){top:28px}
.nav-toggle.menu-on span:nth-child(1){
  top:20px;
  transform:rotate(-45deg);
}
.nav-toggle.menu-on span:nth-child(2){opacity:0}
.nav-toggle.menu-on span:nth-child(3){
  top:20px;
  transform:rotate(45deg);
}
@media(max-width:768px){
  .head .logo{
    display:block;
    margin:20px 5% 8px;
  }
  .nav-toggle{
    background:#2660a1;
    border-radius:50%;
    cursor:pointer;
    height:44px;
    right:12px;
    position:fixed;
    top:14px;
    width:44px;
    z-index:501;
  }
  .nav-toggle span{
    display:block;
    position:absolute;
    height:2px;
    width:18px;
    background-color:#fff;
    left:13px;
    -webkit-transition:.35s ease-in-out;
    -moz-transition:.35s ease-in-out;
    transition:.35s ease-in-out;
  }
  .nav-toggle.menu-on{background:#fff}
  .nav-toggle.menu-on span{background-color:#2660a1}
  .gnav{
    background-color:#2660a1;
    font-size:1.8rem;
    position:fixed;
    top:-200vh;
    transition:.35s ease-in-out;
  }
  .gnav > ul{
    overflow:scroll;
    margin-top:68px;
    padding:0 10px 10px;
  }
  .gnav ul ul{
    font-size:1.6rem;
    margin-top:10px;
  }
  .gnav ul ul a{color:#c4cfe0}
  .gnav li{
    padding:4px 20px;
    position:relative;
  }
  .gnav li + li{margin-top:10px}
  .menu-on + .gnav .st0{fill:#fff}
  .menu-on + .gnav{
    top:0;
    bottom:0;
    display:block;
    overflow:scroll;
  }
  .gnav .hr:after{
    background-color:#c4cfe0;
    top:-6px;
    content:"";
    height:1px;
    left:-5%;
    position:absolute;
    width:190px;
  }
}
@media(min-width:769px){
  .head{padding:34px 0}
  .header-inner{margin:0 100px}
  .gnav{
    font-size:1.4rem;
    font-weight:bold;
  }
  .gnav ul{
    display:flex;
    justify-content:center;
  }
  .gnav li{position:relative}
  .gnav a{
    color:#222;
    font-family:"Avenir Next", Arial;
    font-weight:bold;
    line-height:1;
    padding:0 16px;
  }
  .gnav li:not(:nth-of-type(2)){border-left:1px solid}
}

/* footer */
.contact-box{
  font-weight:bold;
  padding:46px 0;
}
.contact-box h2{
  font-family:"Avenir Next", Arial;
  font-size:1.8rem;
}
.contact-box p{
  font-size:2.4rem;
  line-height:1.5;
}
.contact-box .btn{
  border-radius:40px;
  display:inline-block;
  font-size:2rem;
  margin-top:20px;
  padding:22px;
  width:100%;
}
.contact-box .sns{margin-top:22px}
.sns{
  align-items:center;
  display:flex;
  justify-content:center;
}
.sns li +li{margin-left:24px}
.link-box{padding:40px 0}
.link-box a{
  color:#000;
  display:block;
  font-size:1.4rem;
  text-align:center;
}
.link-box a:hover{opacity:.7}
.link-box p{margin-top:6px}
.footer{
  background-color:#5d676c;
  padding:42px 0 20px;
    width:100%;
}
.footer-inner{
  margin:auto;
  width:90%;
}
.footer-nav a{color:#fff}
.footer-nav ul a{color:#cfd2d3}
.footer-nav ul{margin:14px 0 0 1.5rem}
.footer-nav li + li{margin-top:14px}
.copyright{
  color:#cfd2d3;
  font-size:1.4rem;
  margin-top:40px;
  text-align:center;
}
.toppage footer{
  bottom:10px;
  position:absolute;
  right:5%;
  text-align:right;
}
@media screen and (max-width:768px){
  .link-box a + a{margin-top:22px}
  .footer-nav-wrap{margin-bottom:44px}
  .footer-nav + .footer-nav{margin-top:14px}
}
@media screen and (min-width:768px){
  .contact-box{padding:40px 0}
  .contact-box h2{
    font-size:2.2rem;
    margin-bottom:8px;
  }
  .contact-box p{font-size:3.2rem}
  .contact-box .btn{
    border-radius:45px;
    margin-top:16px;
    padding:26px;
    width:504px;
  }
  .contact-box .sns{margin-top:30px}
  .link-box{padding:60px 0}
  .footer{padding:36px 0}
  .footer-inner{
    min-width:920px;
    width:80%;
  }
  .footer-wrap{
    align-items:flex-start;
    display:flex;
    justify-content:space-between;
  }
  .footer-nav-wrap{display:flex}
  .footer-nav + .footer-nav{margin-left:80px}
  .footer-nav li + li{margin-top:14px}
  .copyright{
    font-size:1.4rem;
    margin-top:10px;
    text-align:right;
  }
}

/* パンくず */
.breadcrumb{
  color:#222;
  overflow-x:scroll;
  -ms-overflow-style:none;
  padding:16px 5% 10px;
  scrollbar-width:none;
  white-space:nowrap;
}
.breadcrumb::-webkit-scrollbar{display:none}
.breadcrumb a{color:#808080}
.breadcrumb ul{
  font-size:1.1rem;
  line-height:1;
}
.breadcrumb li{
  display:inline-block;
  position:relative;
  white-space:nowrap;
}
.breadcrumb li + li{
  margin-left:7px;
  padding-left:14px;
}
.breadcrumb li + li::before{
  content:"";
  border-top:solid 1px #808080;
  border-right:solid 1px #808080;
  height:4px;
  left:0;
  position:absolute;
  top:3px;
  transform:rotate(45deg);
  width:4px;
}
@media(min-width:769px){
  .breadcrumb{padding:8px 100px}
  .breadcrumb a{text-decoration:underline}
}

/* 見出し */
.ttl01{
  background-color:#ecf8f9;
  position:relative;
  overflow:hidden;
}
.ttl01::after{
  bottom:-40px;
  color:#e1f3f5;
  content:attr(data-text)"";
  font-family:"Avenir Next", Arial;
  font-size:10.5rem;
  font-weight:bold;
  position:absolute;
  right:0;
  z-index:0;
}
.ttl01 h1{
  color:#2f3031;
  font-size:2rem;
  font-weight:normal;
  line-height:1.6;
  margin:auto;
  padding-left:50px;
  position:relative;
  width:90%;
  z-index:1;
}
.ttl01 h1::before{
  background:linear-gradient(135deg, #2aa5a4 0%,#3cafb5 50%, #1a84d5 100%);
  content:"";
  height:2px;
  left:0;
  position:absolute;
  top:15px;
  width:37px;
}
.ttl02{
  color:#2660a1;
  font-size:2.4rem;
}
.ttl03{
  align-items:center;
  display:flex;
  font-size:1.8rem;
  justify-content:center;
  position:relative;
}
.ttl03::before{
  color:rgba(236,248,249,.2);
  content:"0"counter(box-num);
  counter-increment:box-num 1;
  font-family:"Avenir Next", Arial;
  font-size:14.1rem;
  font-style:italic;
  font-weight:normal;
  letter-spacing:-1.4rem;
  line-height:1;
  position:absolute;
  right:1rem;
}
.desc{line-height:1.75}
.desc p+p{margin-top:2.8rem}
@media screen and (max-width:768px){
  .ttl01{padding:34px 0}
}
@media screen and (min-width:768px){
  .ttl01{
    align-items:center;
    display:flex;
    height:298px;
    margin-top:10px;
  }
  .ttl01 h1{
    font-size:2.8rem;
    padding-left:90px;
    width:920px;
  }
.ttl01 h1::before{
  top:20px;
  width:64px;
}
  .ttl01::after{
    bottom:-90px;
    font-size:23rem;
  }
  .ttl02{font-size:3.2rem}
  .ttl03{font-size:2.4rem}
  .ttl03::before{
    font-size:23rem;
    letter-spacing:-2.2rem;
    right:0.6rem;
  }
}

/* top
---------------------------------------------*/
.toppage section{
  position:relative;
  overflow:hidden;
}
.toppage section::after{
  bottom:0;
  color:#daf2f3;
  font-family:"Avenir Next", Arial;
  font-size:13.7rem;
  font-weight:bold;
  position:absolute;
  z-index:-1;
}
.top-wrap01{
  color:#fff;
  height:800px;
  position:relative;
  overflow:hidden;
}
.top-wrap01 .head{position:absolute}
.top-wrap01 .st0{fill:#fff}
.top-wrap01 .gnav a{color:#fff}
.top-wrap01::before{
  content:url(img/ico-scroll.svg)"";
  height:139px;
  position:absolute;
  right:20px;
  width:27px;
  z-index:1;
}
.top-wrap01::after{
  background:#1f927d;
  background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(31, 146, 125, 0.8)), color-stop(100%,rgba(235, 229, 133, 0.8)));
  background:linear-gradient(to bottom, rgba(31, 146, 125, 0.8) 0%,rgba(235, 229, 133, 0.8) 100%);
  content:"";
  filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='rgba(31, 146, 125, 0.8)', endColorstr='rgba(235, 229, 133, 0.8)',GradientType=0 );
  height:100%;
  left:0;
  position:absolute;
  top:0;
  width:100%;
  z-index:0;
}
.top-wrap01 video{
  min-height:100%;
  min-width:100%;
}
.top-wrap01 h1{
  font-size:4rem;
  left:5%;
  line-height:1.8;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:1;
}
.top-wrap01 h1 .top-txt01{font-size:3.1rem}
.top-wrap01 h1 .top-txt02{
  border-bottom:2px solid;
  padding-bottom:6px;
}
.top-box{padding:48px 5%}
.top-box h2{font-size:1.6rem}
.top-box h3{
  font-size:2.4rem;
  line-height:1.5;
}
.top-box p{
  line-height:1.75;
  margin-top:4px;
}
.top-box .link{margin-top:14px}
.top-box02-wrap{
  padding-bottom:50px;
  position:relative;
}
.top-box02{background-color:#fff}
.top-box02::before{
  background:linear-gradient(135deg, #2aa5a4 0%,#3cafb5 50%, #1a84d5 100%);
  border-radius:20px 0 0 20px;
  content:"";
  height:79%;
  height:calc(100% - 96px);
  position:absolute;
  right:0;
  top:96px;
  width:71%;
  z-index:-1;
}
.top-wrap03{margin-top:44px}
.top-wrap03::after{content:"SERVICE"}
.top-box03-wrap{
  padding-bottom:76px;
  position:relative;
}
.top-box03{margin-left:auto}
.top-wrap04{margin-bottom:42px}
.top-wrap04::after{content:"NEWS"}
.top-news{
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  padding-bottom:190px;
}
.top-news .news-cat{margin-top:10px}
.top-news .news-title{
  font-size:1.6rem;
  margin-top:8px;
}
.top-news .news-date{margin-top:8px}
.top-news-img{
  border-radius:8px;
  height:105px;
  object-fit:cover;
  width:100%;
}
@media(max-width:768px){
  .toppage section::after{
    left:50%;
    transform:translateX(-50%);
  }
  .top-box{width:92%}
  .top-wrap01::before{
    top:50vh;
    top:calc(100vh - 159px);
  }
  .top-box02{border-radius:0 20px 20px 0}
  .top-box02::before{filter:drop-shadow(0 6px 10px rgba(0,0,0,.2))}
  .top-box02-img{
    background-color:#effbfc;
    padding:120px 5% 140px;
    position:relative;
    overflow:hidden;
    top:-50px;
    z-index:-2;
  }
  .top-box02-img::after{
    bottom:-24px;
    color:#daf2f3;
    content:"ABOUT";
    font-family:"Avenir Next", Arial;
    font-size:13.7rem;
    font-weight:bold;
    left:50%;
    line-height:1;
    position:absolute;
    transform:translateX(-50%);
    z-index:-1;
  }
  .top-box03{border-radius:20px 0 0 20px}
  .top-box03::before{
    background-color:#effbfc;
    content:"";
    height:79%;
    height:calc(100% - 96px);
    position:absolute;
    right:0;
    top:96px;
    width:100%;
    z-index:-1;
  }
  .top-box03-img{padding-bottom:198px}
  .top-news li{width:48%}
  .top-news li:nth-of-type(n+3){margin-top:40px}
}
@media(min-width:769px){
  .toppage section::after{
    font-size:23rem;
    z-index:-2;
  }
  .toppage .inner-pc{width:1040px}
  .top-wrap01{height:720px}
    .top-wrap01::before{bottom:20px}
  .top-wrap01 h1{
    font-size:4.3rem;
    left:100px;
  }
  .top-wrap01 h1 .top-txt01{font-size:3.4rem}
  .top-wrap01 h1 .top-txt02{
    font-size:4.1rem;
    padding-bottom:8px;
  }
  .top-wrap01::before{right:40px}
  .top-box{padding:40px 40px 80px}
  .top-box h2{font-size:2.2rem}
  .top-box h3{
    font-size:3.2rem;
    margin-top:8px;
  }
  .top-box p{margin-top:10px}
  .top-wrap02{padding-bottom:200px}
  .top-wrap02::after{
    content:"ABOUT";
    left:0;
  }
  .top-box02{margin-top:80px}
  .top-box02::before{
    border-radius:20px;
    height:514px;
    width:440px;
  }
  .top-box02::before{
    top:170px;
    left:80px;
  }
  .top-box02-img img{margin-top:64px}
  .top-box02-img::before{
    background-color:#effbfc;
    content:"";
    height:587px;
    position:absolute;
    right:0;
    width:79%;
    z-index:-2;
  }
  .top-wrap03{padding-bottom:200px}
  section.top-wrap03::after{
    bottom:170px;
    left:0;
  }
  .top-box03-wrap{order:2}
  .top-box03-img{order:1}
  .top-box03-img::before{
    background-color:#effbfc;
    content:"";
    height:506px;
    position:absolute;
    right:0;
    top:100px;
    width:42%;
    z-index:-2;
  }
  .top-wrap04{padding-bottom:200px}
  .top-wrap04::after{right:0}
  .top-box04{
    padding:0;
    width:200px;
  }
  .top-news{
    height:324px;
    margin-right:40px;
    overflow:hidden;
    padding-bottom:82px;
    width:680px;
  }
  .top-news li{width:200px}
  .top-news li:nth-of-type(n+4){margin-top:200px}
  .top-news .news-title{margin-top:8px}
  .top-news .news-date{font-size:1.2rem}
}

/* page
---------------------------------------------*/
/* about */
.about-wrap01{padding-top:98px}
.about-wrap01 h2{margin-bottom:18px}
.about-wrap02{padding-top:88px}
.about-wrap02 h2{margin-bottom:20px}
.about-wrap03{
  line-height:0;
  padding-top:98px;
}
.map iframe{
  border:none;
  height:450px;
  width:100%;
}
@media screen and (max-width:768px){
  .dllist dd{margin-left:1rem}
}
@media screen and (min-width:768px){
  .about-wrap01{padding-top:56px}
  .about-wrap01 h2{margin-bottom:30px}
  .about-wrap02{padding-top:152px}
  .about-wrap02 h2{margin-bottom:32px}
  .about-wrap03{padding-top:160px}
  .map iframe{height:320px}
  .dllist div{display:flex}
  .dllist dt{width:220px}
  .dllist dd{width:630px}
}

/* service */
.service-container{padding-bottom:100px}
.service-wrap01{padding-top:88px}
.service-box{
  line-height:1.75;
  margin:auto;
}
.service-wrap01 h2{margin-bottom:16px}
.service-box h3{
  font-size:2rem;
  margin-bottom:2px;
}
.service-box img{width:47%}
.service-box a{margin-top:14px}
.service01-wrap{
  counter-reset:box-num;
  padding:94px 0 82px;
}
.service01-box{line-height:1.75}
.service01-box h2{
  border-radius:20px;
  height:160px;
  margin-bottom:16px;
  overflow:hidden;
}
.service01-box h2::before{bottom:-24px}
.service01-box p+p{margin-top:2.8rem}
.service02-container .desc{margin-top:40px}
.service02-wrap{
  counter-reset:box-num;
  padding:60px 0 98px;
}
.service02-box h2{
  height:102px;
  line-height:1.3;
  padding:10px 16px 0;
  position:relative;
  overflow:hidden;
}
.service02-box h2::before{
  color:#ecf8f9;
  top:-14px;
  z-index:-1;
}
.service02-box h2::after{
  border-bottom:1px solid #c6e7e8;
  border-top:1px solid #c6e7e8;
  bottom:0;
  content:"";
  display:block;
  height:90px;
  left:0;
  position:absolute;
  width:100%;
}
.service02-box p{
  line-height:1.75;
  margin-top:18px;
}
.service03-container .desc{margin-top:40px}
.service03-wrap{
  counter-reset:box-num;
  margin:138px 0 90px;
  padding:50px 0 84px;
  position:relative;
}
.service03-wrap::before{
  background-color:#e0e0e0;
  border-radius:20px 0 0 20px;
  content:"";
  height:95%;
  position:absolute;
  right:0;
  top:-44px;
  width:76%;
  z-index:-2;
}
.service03-wrap::after{
  background:linear-gradient(135deg, #2aa5a4 0%,#3cafb5 50%, #1a84d5 100%);
  border-radius:0 20px 20px 0;
  bottom:0;
  content:"";
  height:100%;
  left:0;
  position:absolute;
  width:76%;
  z-index:-1;
}
.service03-box{
  background-color:#fff;
  filter:drop-shadow(0 3px 15px rgba(0,0,0,.1));
  line-height:1.75;
  padding:40px 16px;
  position:relative;
}
.service03-box h2{
  font-size:1.8rem;
  line-height:1.3;
  margin-bottom:14px;
}
.bnr-area h3{
  font-size:2.4rem;
  line-height:1.5;
  margin-bottom:16px;
}
.service03-container .bnr-area{margin-bottom:90px}
.bnr-seedsms{
  border:1px solid #fc804c;
  border-radius:8px;
}
.bnr-seedsms p{
  background-color:#fc804c;
  border-radius:6px 6px 0 0;
  color:#fff;
  font-size:1.4rem;
  padding:4px;
}
.service04-container .desc{margin-top:40px}
.service-link{
  background-color:#f7f7f7;
  margin-bottom:60px;
  padding:38px 0 20px;
  text-align:center;
}
.service-link a{
  color:#000;
  font-size:1.8rem;
  font-weight:bold;
}
.service-link a:hover{opacity:.7}
.service-link img{margin-top:4px}
.service-menu-wrap{
  overflow:hidden;
  margin-bottom:96px;
  padding-top:6.3rem;
  position:relative;
}
.service-menu-wrap h2{
  color:#ecf8f9;
  font-size:6.3rem;
  line-height:1;
  position:absolute;
  top:0;
}
.service-menu-wrap h2 span + span{margin-left:2rem}
.service-menu{margin-top:8px}
.service-menu img{
  margin-right:10px;
  vertical-align:middle;
}
@media screen and (max-width:768px){
  .service-box .mbox + .mbox{margin-top:50px}
  .service01-box + .service01-box{margin-top:44px}
  .service02-box + .service02-box{margin-top:48px}
  .bnr-seedsms p{font-weight:bold}
  .service-menu{width:95%}
  .service-menu-wrap h2{
    height:6.3rem;
    margin-right:-4px;
    right:0;
  }
  .service-menu img{
    margin-right:6px;
    width:70px;
  }
  .service-menu li + li{margin-top:14px}
}
@media screen and (min-width:768px){
  .service-container{padding-bottom:160px}
  .service-wrap01{padding-top:56px}
  .service-wrap01 h2{margin-bottom:38px}
  .service-box{width:760px}
  .service-box .mbox:nth-of-type(n+3){margin-top:42px}
  .service-box h3{
    font-size:2.4rem;
    margin-bottom:10px;
  }
  .service-box img{width:59%}
  .service01-wrap{padding:80px 0 186px}
  .service01-box h2{
    margin-bottom:20px;
    height:240px;
  }
  .service01-box h2::before{bottom:-42px}
  .service01-box:nth-of-type(n+3){margin-top:76px}
  .service02-container{padding-bottom:20px}
  .service02-container .desc{margin-top:34px}
  .service02-wrap{padding:160px 0 186px}
  .service02-box{padding:40px 0}
  .service02-box:nth-of-type(n+3){margin-top:80px}
  .service02-box h2{
    height:170px;
    padding-top:24px;
  }
  .service02-box h2::after{height:146px}
  .service02-box p{margin-top:34px}
  .service03-container .desc{margin-top:34px}
  .service03-wrap{
    margin:72px 0 128px;
    padding:92px 0 80px;
  }
  .service03-wrap::before{
    background-color:#f6f6f6;
    height:360px;
    min-width:860px;
    top:0;
    width:67%;
  }
  .service03-wrap::after{
    min-width:1180px;
    height:242px;
    width:92%;
  }
  .service03-box{padding:26px 40px 42px}
  .service03-box h2{
    font-size:2.4rem;
    margin-bottom:14px;
  }
  .service03-container .bnr-area{margin-bottom:194px}
  .bnr-area h3{
    font-size:3.2rem;
    margin-bottom:34px;
  }
  .bnr-seedsms p{
    font-size:1.8rem;
    padding:6px;
  }
  .bnr-seedsms img{margin:6px}
  .service04-container .desc{margin-top:34px}
  .service-link{
    margin-bottom:160px;
    padding:70px 0 42px;
  }
  .service-link a{font-size:2.4rem}
  .service-link img{margin-top:8px}
  .service-menu-wrap{
    margin-bottom:80px;
    padding-top:17rem;
  }
  .service-menu-wrap .inner{width:940px}
  .service-menu-wrap h2{
    font-size:17rem;
    left:50%;
    transform:translateX(-50%);
  }
  .service-menu-wrap h2 span + span{margin-left:4rem}
  .service-menu{margin-top:14px}
  .service-menu li{width:50%}
  .service-menu li:nth-of-type(n+3){margin-top:14px}
}

/* contact */
.inquiry-container, .confirm-container{padding:26px 0 100px}
.inquiry-container h1, .confirm-container h1{margin-bottom:14px}
.inquiry-container h1 + p{
  line-height:1.75;
  margin-bottom:18px;
}
.form-wrap{margin:60px auto 0}
.form-box .error{
  color:#ce3b28;
  display:inline-block;
  font-size:1.3rem;
  margin-top:4px;
}
.form-label{
  display:block;
  font-size:1.8rem;
  font-weight:bold;
  margin-bottom:8px;
}
.label-att{
  background-color:#ce3b28;
  border-radius:3px;
  color:#fff;
  font-size:1.6rem;
  font-weight:normal;
  line-height:1;
  margin-right:20px;
  padding:0 6px;
}
.label-att.any{background-color:#707070}
.form-box input[type="text"], .form-box input[type="email"], .form-box input[type="tel"],.form-box textarea{
  appearance:none;
  border:1px solid #666;
  border-radius:7px;
  font-size:1.8rem;
  padding:10px 16px;
}
.form-box textarea{height:272px}
.fs{width:70%}
.fm{width:90%}
.fl{width:100%}
.form-box p{margin-top:6px}
.form-box + .form-box{margin-top:32px}
.form-privacy{margin:34px 0 28px}
.form-privacy-box{
  background-color:#f7f7f7;
  border:20px solid #f7f7f7;
  border-radius:4px;
  height:170px;
  line-height:1.7;
  margin:10px 0 46px;
  overflow-x:scroll;
  width:100%;
}
.form-privacy .check{
  accent-color:#2660a1;
  display:block;
  line-height:1;
  text-align:center;
}
.wpcf7-list-item{margin:0 !important}
.wpcf7-spinner{display:none !important}
.conf-btn-wrap{
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  gap:20px 30px;
  justify-content:center;
  margin-top:80px;
}
.btn-send, .btn-back{
  border:none;
  border-radius:8px;
  cursor:pointer;
  font-size:2rem;
  font-weight:bold;
  padding:20px;
  width:240px;
}
.btn-send{
  background:#2660a1;
  color:#fff;
}
.btn-back{
  background:#cfd2d3;
  color:#000;
}
.btn-send:hover, .btn-back:hover{opacity:.7}
.form-step{
  align-items:center;
  display:flex;
  font-size:1.4rem;
  margin-top:50px;
  line-height:36px;
}
.form-step li{
  background-color:#cfd2d3;
  border-radius:8px;
  color:#fff;
  position:relative;
  text-align:center;
  width:30%;
}
.form-step li:not(:last-of-type){margin-right:5%}
.form-step li:not(:last-of-type)::before{
  background:url(img/bg-square-gray.svg) no-repeat;
  background-size:contain;
  content:"";
  height:36px;
  position:absolute;
  right:-24px;
  width:30px;
}
.form-step .on:not(:last-of-type)::before{
  background:url(img/bg-square-green.svg) no-repeat;
  background-size:contain;
}
.form-step .on{background-color:#2660a1}
.thanks-container{padding:32px 0 94px}
.thanks-wrap .form-step{margin-top:0}
.thanks-wrap h1{margin-bottom:12px}
.thanks-wrap p{line-height:1.75}
.thanks-wrap .link{margin-top:40px}
.grecaptcha-badge{visibility:hidden}
@media(max-width:768px){
  .form-privacy .check{font-weight:bold}
}
@media(max-width:959px){
  .form-privacy-box{font-size:1.4rem}
}
@media(min-width:769px){
  .inquiry-container, .confirm-container{padding:66px 0 188px}
  .form-wrap{width:520px}
  .form-label{margin-bottom:10px}
  .form-step{
    font-size:1.8rem;
    line-height:56px;
  }
  .form-step li:not(:last-of-type)::before{height:56px}
  .fs{width:294px}
  .fm{width:422px}
  .form-privacy{margin:120px 0 40px}
  .form-privacy-box{margin-bottom:38px}
  .thanks-container{padding:74px 0 130px}
  .thanks-wrap .link{margin-top:64px}
}
/* 404 */
.notfound-container{padding-bottom:100px}
.notfound-container .inner{
  line-height:1.75;
  padding-top:60px;
}
.notfound-container .inner p+p{margin-top:4rem}
@media(min-width:769px){
  .notfound-container{padding-bottom:160px}
  .notfound-container .inner{padding-top:100px}
  .notfound-container .inner p+p{margin-top:6rem}
}

/* news
---------------------------------------------*/
.post-img{
  border-radius:8px;
  width:50%;
}
.news-cat{
  color:#2660a1;
  font-size:1.2rem;
}
.news-title{
  color:#2f3031;
  font-size:1.6rem;
  line-height:1.5;
}
.news-date{
  color:#222;
  font-size:1.4rem;
}
.archive-container{padding:16px 0 98px}
.archive-wrap{margin:40px 0 42px}
.archive-img img{
  border-radius:8px;
  object-fit:cover;
}
.post-container{padding-bottom:96px}
.post-container .news-cat{margin-top:18px}
.post-container .news-title{
  font-size:2.2rem;
  margin-top:10px;
}
.post-container .news-date{margin-top:14px}
.post-container .news-content{margin:40px 0 38px}
.post-container .news-content p+p{margin-top:2rem}
.pagination span, .pagination a{
  display:inline-block;
  height:26px;
  line-height:25px;
  margin:0 5px;
  text-align:center;
  width:26px;
}
.pagination a{color:#808080}
.pagination .current{
  background-color:#2660a1;
  border-radius:4px;
  color:#fff;
}
@media(max-width:768px){
  .archive-wrap{
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
  }
  .archive-wrap article{width:48%}
  .archive-wrap article:nth-of-type(n+3){margin-top:44px}
  .archive-txt{margin-top:8px}
  .archive-img img{
    height:105px;
    width:100%;
  }
}
@media(min-width:769px){
  .archive-container{padding:66px 0 160px}
  .archive-img img{
    height:148px;
    width:280px;
  }
  .archive-txt{width:520px}
  .archive-wrap{
    border-bottom:1px solid #c6e7e8;
    margin:30px auto 40px;
    width:840px;
  }
  .archive-wrap article{
    border-top:1px solid #c6e7e8;
    padding:38px 0;
  }
  .archive-txt .news-title{
    font-size:2.4rem;
    margin-top:8px;
  }
  .archive-txt .news-date{margin-top:6px}
  .post-container{padding:74px 0 160px}
  .post-container .news-title{font-size:3rem}
  .post-container .news-content{margin:32px 0 64px}
}