
@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Kaisei+Decol:wght@500;700&display=swap');
h1,h2,h3,h4{ font-size: unset; font-weight: unset;}
ul{ list-style: none; margin: 0; padding: 0;}
li{ list-style: none; margin: 0; padding: 0;}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  list-style: none;
  text-decoration: none;
  letter-spacing: 0.05em;
  scroll-behavior: smooth;
}
body{ 
  color: #292668; 
  font-size: 14px; 
  font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
}
a{ transition: .5s; color: #292668; }
img{ display: block;  width:100%; }
/*  section block  */
section .block{ background-size: cover;}
.section-inner{ padding:60px 0;}
.wrap{ max-width: 1100px; margin:0 auto;}
.p-t0{ padding-top: 0;}
.p-t15{ padding-top: 15px;}
.p-b0{ padding-bottom: 0;}
.p-b5{ padding-bottom: 5px;}
.m-t10{ margin-top: 10px;}
.t-l{ text-align: left;}
.t-c{ text-align: center;}
.txt{ line-height: 2.0em;}
.f-bold{ font-weight: 600;}
.f-ss{ font-size: 18px;}
.sp{ display: none;}
/* ---------------------------------------------
*   root
--------------------------------------------- */
/*  header
--------------------------------------------- */
:root { --fixed-header-height: 80px;}
@media screen and (max-width: 768px) {
  :root { --fixed-header-height: 60px;}
}
/* ---------------------------------------------
*  header
--------------------------------------------- */
.header { width: 100%; height: var(--fixed-header-height); background: #fff; }
.header-container { display: flex; align-items: center; height: 100%;}
.header-logo { width: 220px; margin: 20px auto 0; }
.header-logo-link { display: block;}

@media (hover: hover) and (pointer: fine) {
  .header-logo-link { transition: opacity 0.3s;}
  .header-logo-link:hover { opacity: 0.8;}
}
.header-logo-link img { width: 100%; height: auto;}

/*  main-slide
--------------------------------------------- */
.c-slider .swiper-slide img { width: 100%;}
.swiper-pagination{ position: unset !important;}
.swiper-pagination-bullet-active{ background: #292174 !important;}

/*  ttl
---------------------------------------------------  */
.main-ttl{ margin: 0 auto; text-align: center;}
.main-ttl .jp{
  font-size: 2.6em;
  font-weight: 600;
  color: #292467;
  position: relative;
  line-height: 1.4;
  padding:0.1em 1em;
  display: inline-block;
  top:0;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-weight: 700;
  letter-spacing: -0.05em;
}  
.main-ttl .jp span{ display: block;}
.ttl-box{ padding-top: 40px; padding-bottom: 60px;}
.sub-ttl .en img{ width: auto; height: 130px; margin: 0 auto;}
.main-ttl .jp:before, .main-ttl .jp:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
.main-ttl .jp:before {
  border-left: solid 1px#292467;
  border-top: solid 1px #292467;
  border-bottom: solid 1px #292467;
  left: 0;
}
.main-ttl .jp:after {
  content: '';
  border-top: solid 1px #292467;
  border-right: solid 1px #292467;
  border-bottom: solid 1px #292467;
  right: 0;
}
.ttl span.color{ color: #FDDD56;}
.convenient .main-ttl .jp{ color: #fff;} 
.convenient .main-ttl .jp:before { border-left: solid 1px #fff; border-top: solid 1px #fff; border-bottom: solid 1px #fff;}
.convenient .main-ttl .jp:after { border-top: solid 1px #fff; border-right: solid 1px #fff; border-bottom: solid 1px #fff;}

/*  list
--------------------------------------------- */
.li1 ul ,.li2 ul , .li3 ul, .li4 ul{ display: flex; flex-wrap: wrap; justify-content: flex-start;}
.li1 ul li{ width: 100%;}
.li2 ul{ gap: 3%;}
.li2 ul li{ width: 48.5%;}
/*  
li-box
---------------------------------------------------  */
.li1-box.li1 .ttl,
.li2-box.li2 .ttl{
  background: #292668;
  padding: 20px 30px;
  border-radius: 10px 10px 0 0;
  color: #fff;
  font-size: 20px;
  font-weight: 600;
  text-align: center;
}
/*  bk-img
---------------------------------------------------  */
.bk-img1{ background: url(/image/bk-convenient.png); background-size: cover;}
.bk-img2{ background: url(/image/bk-pickup.png); background-size: cover;}
.bk-img3{ margin: 0 2%; background: url(/image/bk-btnarea.jpg); background-repeat: round; border-radius: 10px;}

li .img-txt{
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 20px;
  padding: 30px 30px 30px 20px;
  border-radius: 0 0 10px 10px;
}
.feature .section-inner{
  padding-top: 20px;
  padding-bottom: 80px;
}
.feature .ttl-box{
  position: relative;
  background: url(/image/feature-img.png) no-repeat;
  background-size: contain;
  background-position-x: 93%;
  background-position-y: bottom;
}
.feature .li2-box.li2 .ttl{
  background: none;
  padding: 0;
  text-align: left;
}
.feature .li2-box.li2 .ttl span{
  background: #292668;
  padding: 10px 15px;
  border-radius: 5px;
  display: inline-block;
}
.feature .li2 li{ margin-bottom: 40px;}
.feature .li2 li .img-txt img{ width: 220px;}
.feature .li2-box.li2 .txt{ margin-top: 10px;}
.feature li .img-txt{ padding: 0;}
.feature .ttl,
.convenient .ttl{ font-family: 'Kaisei Decol', serif; font-weight: 500 !important;}
.convenient .ttl-box{
  position: relative;
  background: url(/image/convenient-img.png) no-repeat;
  background-size: contain;
  background-position-x: 96%;
  background-position-y: bottom;
}
.convenient .airplane{ margin: 0 calc(50% - 50vw); width: 100vw; margin-bottom: -1px; margin-top: -50px;}
.convenient li .img-txt{ margin-top: 5px; background: #fff;}
.convenient .li1 li .img-txt{ gap: 3%; align-items: center;}
.convenient .li1 li .ttl{ font-size: 28px;}
.convenient .li1 li .img-txt .img1{ width: 27%;}
.convenient .li1 li .img-txt .img2{ width: 70%;}
.convenient .li2 li .img-txt img{ width: 130px;}
.convenient .li2{ margin-top: 35px;}
.pickup .ttl-box{
  position: relative;
  background: url(/image/pickuplocation-img.png) no-repeat;
  background-size: contain;
  background-position-x: right;
  background-position-y: bottom;
}
.card{ margin: 0 calc(50% - 50vw); width: 100vw;}
.btn-area .section-inner{ padding: 90px 0;}
.btn-area .li1,
.btn-area .li2{ width: 900px; margin: 0 auto;}
.btn-area .li2{ margin-top: 35px;}
.btn-area ul li a{
  background: #fff;
  display: flex;
  align-items: center;
  padding: 20px 30px;
  border-radius: 10px;
  position: relative;
}
.btn-area .li1 ul li a{ background: #FDDD56; padding: 60px 30px;}
.btn-area .li1 ul li a:hover{ background:#F2C91A;}
.btn-area .li2 ul li a{ background: #fff;}
.btn-area .li2 ul li a:hover{ opacity: .8;}
.btn-area ul li a::after{
  position: absolute;
  right: 30px;
  content: "";
  display: inline-block;
  width: 26px; 
  height: 26px; 
  background: url(/image/gaibu-icon.png) no-repeat;
  background-size: contain;
  margin-right: 3px;
}
.btn-area .li1 ul li a .img{
  width: 110px;
  margin-right: 20px;
  position: absolute;
  top: -15px;
}
.btn-area .li2 ul li a .img{
  width: 60px; margin-right: 20px;
}
.btn-area .li1 ul li a .ttl{
  font-size: 30px;
  font-weight: 600;
  width: 100%;
  text-align: center;
  position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.btn-area .li2 ul li a .ttl{ font-size: 20px; font-weight: 600;}
.btn-fixed{ position: fixed; right: 20px; bottom: 20px; z-index: 1; width: 200px;}

/*  ---------------------------------------------------  
footer
---------------------------------------------------  */
.footer a:hover{ opacity: .5;}
.footer .wrap{ padding: 40px 0;}
.f-logo img{ width: 240px; margin: 0 auto;}
.f-logo p{ color: #333;}
.f-copy{ font-size: 12px; color: #555; text-align: center; margin-top: 20px;}

/*  ---------------------------------------------------  
en page
---------------------------------------------------  */
.en-content .convenient .ttl-box{
  position: relative;
  background: url(/image/en-convenient-img.png) no-repeat;
  background-size: contain;
  background-position-x: 96%;
  background-position-y: bottom;
}
.en-content .main-ttl .jp{ font-size: 2.2vw; letter-spacing: 0;}
.en-content .f-ss{ font-size: 16px;}
.en-content .li1-box.li1 .ttl{ font-size: 20px;}
.en-content .li2-box.li2 .ttl{ font-size: 16px;}
.en-content .convenient .li2-box.li2 .ttl{ font-size: 16px;}

/*---------- pc end ----------*/
@media screen and (min-width: 769px) {
  .tb{ display: none !important;}
  .sp{ display: none;}
  .pc{ display: block !important;}
  .pctb{ display: block !important;}
  .tbsp{ display: none !important;}
}

/*  ---------------------------------------------------  */
/*  ---------------------------------------------------  */
/*  ---------------------------------------------------  */
@media  only screen and (max-width: 1100px){
  .pc{ display: none !important;}
  .tb{ display: block !important;}
  .sp{ display: none;}
  .tbsp{ display: block !important;}
  .wrap{ padding: 0 4%; }
  .txt{ line-height: 1.8em;}
  /*  ttl
  ---------------------------------------------------  */
  .ttl-box{ padding-top: 50px; padding-bottom: 50px;}
  .sub-ttl .en{ padding-bottom: 0;}
  .sub-ttl .en img{ height: 90px;}
  .main-ttl .jp{ font-size: 3.5vw;} 
  .li1-box.li1 .ttl,
  .li2-box.li2 .ttl{ background: #292668; padding: 20px 30px; color: #fff; font-size: 1.3em;}
  .feature .section-inner{ padding-top: 10px; padding-bottom: 60px;}
  .feature .li2 li{ margin-bottom: 20px;}
  .feature .li2 li .img-txt img{ width: 170px;}
  .convenient .li1 li .ttl{ font-size: 1.6em;}
  .convenient .li2 li .img-txt img{ width: 100px;}
  .btn-area .section-inner{ padding: 70px 0;}
  .btn-area .li2 ul li a .img{ margin-right: 10px;}
  .btn-area .li1 ul li a .ttl{ font-size: 1.9em;}
  .btn-area .li2 ul li a .ttl{ font-size: 1.3em;}
  .btn-area .li1, .btn-area .li2{ width: 100%;}
  .btn-area .li1 ul li a .img{ width: 90px; top: 2px;}
  }
/*  ---------------------------------------------------  */
/*  ---------------------------------------------------  */
/*  ---------------------------------------------------  */
@media screen and (max-width: 768px) {
  body {
    width: 100%;
    font-size: 14px;
    min-width: 320px;
    line-height: 1.8em;
  }
  .block{ width: 100%; max-width: 100%;}
  .wrap { box-sizing: border-box; padding: 0 4%;}
  .section-inner{ padding: 40px 0;}
  .pc{ display: none !important;}
  .tb{ display: none !important;}
  .sp{ display: block !important;}
  .pctb{ display: none !important;}
  .tbsp{ display: block !important;}
  .p-t0{ padding-top: 0;}
  .p-b0{ padding-bottom: 0;}
  .sp-p-t0{ padding-top: 0;}
  .sp-m-b0{ margin-bottom: 0;}
  .sp-t-l{ text-align: left;}
  .f-ss{ font-size: 1.2em;}
  .swiper-container{ margin: 0 2% !important;}
  
  /*  ttl
  ---------------------------------------------------  */
  .ttl-box{ padding-top: 50px; padding-bottom: 30px;}
  .sub-ttl .en img{ height: 80px; margin: 0 auto;}
  .main-ttl .jp{ font-size: 4.5vw;}
  .main-ttl .jp span{ font-size: 0.7em;}
  
  /*  list
  --------------------------------------------- */
  .li1 ul li{ width: 100%;}
  .li2 ul li{ width: 100%;}
  
  /*  li-box
  ---------------------------------------------------  */
  .li1-box.li1 .ttl,
  .li2-box.li2 .ttl{ font-size: 1.1em; padding: 15px 20px;}
  .feature .section-inner{ padding-top: 0px; padding-bottom: 80px;}
  .feature .ttl-box{ background-size: contain; background-position-x: right;}
  .feature .li2-box.li2 .ttl{ background: #292668; padding: 10px 20px; border-radius: 5px; display: inline-block; }
  .feature .li2-box.li2 .ttl span{ padding: 0;}
  .feature .li2 li{ margin-bottom: 30px;}
  .feature .li2 li:last-child{ margin-bottom: 0;}
  .feature .li2 li .img-txt img{ width: 180px;}
  .convenient .ttl-box{ background-size: contain;}
  .convenient .airplane{ margin-top: -30px;}
  .convenient .li1 li .ttl{ font-size: 1.2em; line-height: 1.4em;}
  .convenient .li2 li .img-txt img{ width: 110px;}
  .convenient .li2 li:first-child{ margin-bottom: 30px;}
  .pickup .ttl-box{ background-size: contain;}
  .pickup ul li:first-child{ margin-bottom: 40px;}
  .btn-area .section-inner{ padding: 50px 0;}
  .btn-area .li2{ margin-top: 20px;}
  .btn-area ul li a{ padding: 15px 20px;}
  .btn-area ul li a::after{ right: 20px;}
  .btn-area ul li:first-child{ margin-bottom: 20px;}
  .btn-area .li1 ul li a{ padding: 55px 20px;}
  .btn-area .li1 ul li a .img{ width: 80px; top: 10px;}
  .btn-area .li2 ul li a .img{ width: 12%; margin-right: 10px;}
  .btn-area .li1 ul li a .ttl{ font-size: 1.6em; line-height: 1.4em;}
  .btn-area .li2 ul li a .ttl{ font-size: 1.2em;}
  
  /*  ---------------------------------------------------  
  en page
  ---------------------------------------------------  */
  .en-content .f-ss{ font-size: 16px;}
  .en-content .main-ttl .jp{ font-size: 4vw;}
  .en-content .li1-box.li1 .ttl{ font-size: 15px;}
  .en-content .li2-box.li2 .ttl{ font-size: 14px;}
  .en-content .convenient .li2-box.li2 .ttl{ font-size: 14px;}
  }
  /*  ---------------------------------------------------  */
  /*  ---------------------------------------------------  */
  /*  ---------------------------------------------------  */
  @media screen and (max-width: 520px) {
    .header-logo { width: 180px; margin: 10px auto 0;}  
    .header-logo-link img{ width: 90%;}
    .ttl-box{ padding-top: 50px; padding-bottom: 30px;}
    .txt{ line-height: 1.7em;}
    .sub-ttl .en img{ height: 60px; margin: 0 auto 0 10px;}
    .main-ttl{ margin: 0 auto 0 10px; text-align: left;}
    .main-ttl .jp{ font-size: 5vw;}
    .main-ttl .jp span{ font-size: 0.9em;}
    li .img-txt{ padding: 20px 20px 20px 10px;}
    .feature .ttl-box{ background: url(/image/feature-img-sp.png) no-repeat; background-position-x: right; background-position-y: bottom; background-size: contain;}  
    .feature .li2-box.li2 .txt span{ font-size: 0.8em;}
    .feature .li2-box.li2 .txt{ margin-top: 0;}
    .feature .li2-box.li2 .ttl{ padding: 0; background-color: unset;}
    .feature .li2-box.li2 .ttl span{ background: #292668; padding: 5px 20px; border-radius: 5px; display: table; }
    .feature .li2 li .img-txt img{ width: 120px;}
    .convenient .li2 li .img-txt img{ width: 80px;}
    .btn-fixed{ width: 180px;}
    .btn-area .li1 ul li a .ttl{ font-size: 1.1em;} 
    .btn-area .li1 ul li a .img{ width: 60px; top: 5px;}
    .btn-area .li2 ul li a .ttl{ font-size: 1em;}
    .btn-area .li1 ul li a{ padding: 40px 20px;}  
    .btn-area .li2{ margin-top: 0;}
    .f-logo img{ width: 200px;}
    .f-logo p{ font-size:0.8em;}
    .f-copy{ font-size:0.8em;}
    .en-content .txt{ line-height: 1.5em;}
    .en-content .feature .li2-box.li2 .ttl span{ line-height: 1.5em; padding: 7px 15px;}
    .en-content .convenient .li2-box.li2 .ttl{ line-height: 1.5em;}
  
    }


