@charset "utf-8";
/*==================================================

Global Default
==================================================*/

body {
    font-family:
    "Noto sans Japanese", YuGothic, 'Yu Gothic Medium', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
    line-height: 1.5rem;
    font-size: 100%;
    font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (1920 - 320)));
    color: #444;
    letter-spacing: 1px;
}
h1, h2, h3, h4, h5, h6 {
    line-hight: 1.2rem;
}

main, section {
    position: relative;
}
a {
    color: inherit;
    transition: .3s ease;
}
a:hover {
   
    opacity: .8;
}
a:visited {
    color: inherit;
}
a:active {
    color: inherit;
}
img {
    height: auto;
    width: 100%;
}
i{font-style: normal;}
.text_center {
    text-align: center;
}

[class*="viewport"] {
    width: 100%;
    max-width: 1366px;
    padding: 0 2%;
    margin: 0 auto;
    box-sizing: border-box;
    position: relative;
}
.viewport-l {
    max-width: 1200px;
}
.viewport-m {
    max-width: 1024px;
}
.viewport-s {
    max-width: 768px;
}
.section-spacing {
    padding-top: 11vmin;
    padding-bottom: 11vmin;
}
p{padding:.4rem 0;}
.flex{display: flex;align-items: center;justify-content: center;}

/*==================================================

Customize Global Standard Style
==================================================*/
.std_h2{font-size:1.7rem;text-align: center;position: relative;margin: 20px 0;line-height: 2.3rem;}
.std_h2::after{
    content:
    "";width:120px;
    height: 7px;background:#0097DD;
    display: block;
    margin: 20px auto 0;
}
.std_h3{color: #0095e1;font-size: 1.4rem;text-align: center;margin: 30px 0 10px;}
.fs26{font-size: 1.4rem;text-shadow: 0 0 6px #fff;font-weight: 500;line-height: 1.8rem;}
.fs30{font-size:1.3rem;line-height: 2rem;}
.fs40{font-size:1.7rem;line-height: 2.5rem;}
.fs50{font-size:2.3rem;font-weight: 600;line-height: 2rem;}
.fcb{color:#0097DD;}
.fco{color: #F89016;}
.pb0{padding-bottom: 0 !important;}
/*==================================================

Main Header
==================================================*/
#main-header {
    box-sizing: border-box;
    padding: 8px 0 5px;
    background: #fff;
    position: sticky;
    top: 0;
    width: 100%;
    z-index: 999;
    transition: .5s;
    box-shadow: 0 0 5px #777;
}
#main-header .viewport-l{justify-content: space-between;}
#main-header.hide {
    transform: translateY(-100%);
}
#menu {
    display: none;
}
.logo img{max-width: 380px;}
#main-header .hdbtn{background: #0097DD;border-radius:5px;color: #fff;padding: 3px 10px;}
#main-header .hdbtn p{
    font-size: 1.5rem;
    line-height: 1em;
    margin-left: 10px;
}
#main-header .hdbtn span{
    font-size: .8rem;
    display:
    block;
}
#main-header .hdbtn img{max-width: 40px;}
/*==================================================

Main Content
==================================================*/
.mv{background: url(../img/bg_mv.jpg)no-repeat center center;background-size: cover;padding: 3%;}
.mv h1{font-size: 3.3rem;line-height: 4rem;font-weight: 600;margin: 1% 0;text-shadow: 0 0 6px #fff;}
.mv1{
    justify-content: flex-start;
}
.mv1 li{color:#fff;box-shadow: 0 2px 3px rgb(0 0 0 / 16%);padding: 8px 10px;font-size: 1.2rem;margin-right: .8em;}
.mv1 li:nth-child(1){background: #F89016;}
.mv1 li:nth-child(2){background: #4B99C1}
.mv2 img{max-width: 450px;}
.cta{background:url(../img/bg_factory.jpg)no-repeat;background-size: cover;text-align: center;padding: 2% 0;}
.ctabtn{background: #0097DD;border-radius: 7px;color: #fff;display: block;border-bottom: #1a6d93 5px solid;max-width: 420px;margin: 0 auto;padding: 5px 15px;}
.ctabtn .flex img{
    max-width: 55px;
}
.cta ul{display:flex;justify-content: center;}
.cta li{
    background: #F89016;
    color: #fff;
    padding: 2px 10px;
    border-radius: 5px;
    margin: 0 5px 8px;
}
.ctabtn .flex p{
    font-size: 2.3rem;
    font-weight: 600;
    margin-left: 12px;
}.ctabtn .flex span{
    display: block;
    font-size: 1rem;
    font-weight: normal;
    margin-top: 3px;
}
.ctabtn>p{
    padding: 0.4rem 0 0;
}
.task h2{text-align: center;position: relative;background: #0097DD;color:#fff;font-size: 2rem;font-weight: 500;padding: 20px 0;}.task h2:after{content: "";background: url(../img/line_arrow.png) no-repeat;display: block;width: 85px;height: 97px;background-size: contain;position: absolute;transform: translate(-50%, 0);left: 50%;z-index: -1;}
.task section{
    max-width: 1100px;
}
.task1{background: url(../img/img_man1.png) no-repeat right bottom;background-size: contain;padding: 30px 0;}
.task1 .fs40 img{max-width: 30px;margin-right: 4px;}
.task1 .fs40{font-weight: bold;font-size: 1.3rem;line-height: 1.5rem;}
.task1 ul{
    display: flex;
    flex-wrap: wrap;
    max-width: 730px;
    margin: 15px 0 0;
}
.task1 ul li{
    width: 48%;
}
.task1 ul li:before{
                   content:
                   "";background:#0097DD;width:10px;height:10px;
                   display:
                   inline-block;
                   border-radius: 20px;
                   margin-right: 3px;
                   }
.task2 {align-items: flex-start;margin: 2% 0;}
.bg_g{
    background: #fbfbfb;
    padding: 10px 15px;
    margin: 2% 0;
}
.task2 img{max-width:400px;margin-left: 30px;}
.task2 .fs30{
    font-size: 1.7rem;
    font-weight: 600;
}
.task3{background: #EBF9FF;line-height: 2.4rem;padding: 20px 2%;}
.task3 span{
    background: #A7A7A7;
    color: #fff;
    text-shadow: none;
    padding: 5px 20px;
    display: inline-block;
    border-radius: 100px;
    margin: 6px;
}
.feature{
    background: #fbfbfb;
    padding: 40px 0 20px;
    text-align: center;
}.feature ul{
    justify-content: space-between;
    align-items: stretch;
    margin-bottom: 20px;
}
.feature li{
    background: #fff;
    padding: 25px 20px 15px;
    text-align: center;
    width: 31%;
    box-shadow: 0 2px 6px rgb(0 0 0 / 16%);
    box-sizing: border-box;
}
.feature li img{max-width:100px;}
.feature li span{display:block;margin: 2% 0;}
.feature li .fs26{
    font-size: 1.2rem;
    line-height: 1.5rem;
}
.feature .fs30{
    font-weight: bold;
    font-size: 1.5rem;
    line-height: 2.3rem;
    margin: 15px 0;
}
.case{padding: 30px 0;}
.case ul{display:flex;flex-wrap:wrap;justify-content: space-around;margin-bottom: 30px;}
.case ul li{
    width: 32%;
    margin: 2% 0 1%;
}
.case dl{
    display: flex;
    flex-wrap: wrap;
    margin: 2% 0 2% 2%;
}
.case dl dt{
    width: 25%;
    font-weight: 500;
}
.case dl dd{width: 72%;}
.price{background: #EBF9FF;padding: 20px 2% 40px;}
table{
    background: #fff;
    margin: 30px auto;
}
th,td{border:1px solid #ccc;padding: 10px;vertical-align: middle;text-align: center;}
table th{background:#0095e1;color:#fff;width: 25%;}
.step{padding:20px 0;}
.step ul{margin:50px auto;}
.step li{margin:2% 0}
.step li div{
    width: 60%;
    margin-left: 20px;
}
.step li img{max-width:360px;}
.step li div p.fs30{
    font-weight: bold;
    font-size: 1.5rem;
}
.step li div span{
    margin-right: 6px;
}
.step .bg_g a{color:#0095e1;text-decoration:underline;}
.start{background:#e9faff;padding: 15px 2% 3%;}
.start th{width:30%;}
.start table{margin-bottom: 10px;}
.support{background:#fbfbfb;padding: 20px 0 50px;text-align: center;}
.support li{background:#fff;width: 26%;position:relative;padding: 2% 1%;box-shadow: 0 2px 6px rgb(0 0 0 / 16%);}
.support li img{
    max-width: 70px;
}
.support ul{align-items: stretch;}
.support li:nth-child(2){margin: 0 5%;}
.support li:nth-child(2)::before,.support li:nth-child(2)::after{
  content:
  "";
  border-top: 25px solid transparent;
  border-bottom: 25px solid transparent;
  border-left: 25px solid #0095e1;
  position:
  absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  left: -8%;
  }

.support li:nth-child(2)::after{left:inherit;right: -19%;}
.support li p span{display:block;}
.support li h3{margin:10px 0 0;}
.qna{padding:20px 0 30px;}
.accordion-container {
    position: relative;
    width: 100%;
    outline: 0;
    margin: 50px auto;
  }
  .accordion-container .article-title {
    display: block;
    position: relative;
    margin: 30px 0 10px;
    padding: 1em 2.5em 1em 1.5em;
    background: #f5f5f5;
    cursor: pointer;
    letter-spacing: 2px;
    transition: .5s;
    font-size: 1.2rem;
  }
  .accordion-container .article-title:hover {
    opacity: .6;
  }
  .article-title {
    position: relative;
  }
  .article-title:before {
    content: 'Q.';
    display: inline-block;
    font-family: "eng-b";
    padding-right: 10px;
  }
  .article-title:after {
    content: "";
    position: absolute;
    right: 25px;
    top: 38%;
    transition: all 0.2s ease-in-out;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #a5a5a5;
    border-right: solid 2px #a5a5a5;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  .article-title.open:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 45%;
  }
  .accordion-content {
    display: none;
    padding: 10px 50px;
    line-height: 30px;
  }
.qualify{background: #fbfbfb;padding: 40px 0 50px;}
.qualify img{max-width:360px;margin-left: 50px;}
.qualify .bg_g{background:#fff;}
/*==================================================

Main Footer
==================================================*/
#main-footer {
    position: relative;
    background: #4b99c1;
    color: #fff;
    padding: 2% 0;
}
#main-footer .viewport-l {
    justify-content: space-around;
}
#main-footer img{max-width:380px;}
#copyright{text-align:center;font-size:.8rem;}
.ft_l{width: 45%;}
.ft_r{width: 55%;}
.ftr1{
    display: flex;
    flex-wrap: wrap;
}
.ftr1 li{position:relative;}
.ftr1 li:before {
    content: '';
    display: inline-block;
    width: 6px;
    background: url(../img/ico_arw_w.png) no-repeat;
    background-size: contain;
    height: 10px;
    position: absolute;
    left: -1em;
    top: 30%;
    transition: .5s ease;
}
.ftr1 li{
    width: 48%;
}
.ftr2{text-decoration:underline;display:flex;}
.ftr2 li{margin: 2% 5% 0 0;}
#pageTop {
    position: fixed;
    bottom: 30px;
    right: 15px;
    z-index: 999;
  }
  #pageTop a {
    width: 50px;
    height: 50px;
    background:url(../img/ico_top.png) no-repeat;
    display: block;
    background-size: contain;
  }
/*==================================================

Media Quaries, max-width: 1024px
==================================================*/
@media only screen and (max-width: 1024px) {
/*----------------- Global default -----------------*/
    .fs40 br,.fs30 br{display: none;}
}
@media only screen and (max-width: 960px) {
  html {
   font-size: 80%;
  }
    .flex{flex-wrap: wrap;}
  .ft_l{
    width: 100%;text-align:center;
}
  .ft_r ul{
    justify-content: center;
    flex-wrap: wrap;
    margin: 5% auto;
    width: 100%;
}
    .ft_r ul li{width: 100%;}
.task2{text-align:center;}
  .task1 ul li{width:100%;}
  #main-header .viewport-l{flex-wrap:nowrap;}
  #main-header .viewport-l .hdbtn img{width:40px;padding:5px 3px;}
  #main-header .hdbtn p{display:none;}
  .logo{margin-right:10px;}
  .mv h1 br{display:none}
.mv {
    background: url(../img/bg_mv.jpg)no-repeat 62% center;
    background-size:
    cover;
    padding: 8% 2%;
}
.task2 img{margin-left:0;}
  .cta li{font-size:90%;}
.fs50 {
    line-height: 2.5rem;
}
.mv .fs26 br{display:none;}
  .task3 br{display:none;}
  .task3 span{display:block;}
  .feature li{width:100%;margin:2%;}
  .feature li img{max-width:80px;}
  .case ul li{width:48%;margin: 1% auto;}
  .step li div,.qualify img{width:100%;margin-left: 0;}
.support li:nth-child(2)::before, .support li:nth-child(2)::after{display:none;}
.support li{width:100%;margin: 2%;}
  .support li:nth-child(2){
    margin: 2%;
}
  .ftr2{text-align:center;}
  .ftr1{max-width: 320px;}

}

@media only screen and (max-width: 640px) {
.task1 {
    background:none;
}
.task1 ul{padding:5%;background:#fbfbfb;}
    .task1 .fs40{
    padding-left: 2em;
    text-indent: -2em;
}
  .case dl dt{
    width: 40%;
}
  .case dl dd{
    width: 60%;
    margin-bottom: 6px;
}
}
