@charset "UTF-8";

/*---------------------------------

 color setting

---------------------------------*/
header .b-ttls{
  /* background: #D2E5A5; */
  background: linear-gradient(150deg, #C49D00 0% ,#E6DA65 20% ,#F1E991 35% ,#FFFBC7 50% ,#F1E991 65% ,#E6DA65 80% ,#C49D00 100%);
}
header .b-nv{
  background: linear-gradient(140deg, rgba(234,227,195,1) 40%, rgba(229,215,137,1) 100%);
}
header .b-nv li+li{
  border-top: 2px solid #d6b900;
}
@media screen and (max-width: 767px){
  header .b-ttls a{
    height: 10vw;
    max-height: 40px;
  }
  header .b-ttls .e-lpTtl{
    width: 60%;
    max-width: 400px;
  }
}
@media screen and (min-width: 768px){
  header .b-ttls a{
    height: 53px;
  }
  header .b-ttls .e-lpTtl{
    width: 300px;
  }
}

/*---------------------------------

 parts

---------------------------------*/

/* b-lnks --------------*/
.b-lnks a{
  display: block;
  margin: auto;
  border: 1px solid #fff;
  color: #fff;
  font-weight: 700;
  position: relative;
  box-shadow: 2px 1px 8px rgba(0,0,0,0.5);
  border-radius: 10px;
}
.b-lnks a .inner,
.b-lnks a::before{
  width: 100%;
  height: 100%;
}
.b-lnks a .inner{
  display: flex;
  align-items: center;
  justify-content: center;
  background: #EF8200;
  transition: .3s all;
  position: relative;
  z-index: 2;
  border-radius: 10px;
}
.b-lnks a::before{
  content: "";
  display: block;
  background: #ff6400;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  border-radius: 10px;
}
.b-lnks a span{
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  width: 27px;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  top: 50%;
  right: .7em;
  transform: translateY(-50%);
  background: url(images/lnk-arw.png) center center / contain no-repeat;
}
/*
.b-lnks a span::before{
  content: "";
  display: block;
  width: 33%;
  height: 33%;
  border-top: 1px solid #ff6400;
  border-right: 1px solid #ff6400;
  transform-origin: center center;
  transform: translateX(-20%) rotate(45deg);
  position: relative;
  z-index: 1;
  opacity: 1;
  border-color: #ff6400;
}
*/
/* active */
.b-lnks a:active .inner,
.b-lnks a:active:hover .inner{
  background: #aa4c0d;
  opacity: 1;
}
.b-lnks a:active span{
  background: url(assets/images/lnk-arw-active.png) center center / contain no-repeat;
}
/*
.b-lnks a:active span::before{
  border-color: #aa4c0d;
}
*/
/* hover */
.b-lnks a:hover{
  opacity: 1;
}
@media screen and (max-width: 767px){
  .b-lnks a{
    width: 100%;
    height: 19.5vw;
    font-size: min(6vw,25px);
  }
}
@media screen and (min-width: 768px){
  .b-lnks a{
    width: 400px;
    height: 80px;
    font-size: 25px;
  }
  .b-lnks a:hover .inner{
    background: transparent;
  }
}

/* b-content --------------*/
.b-content{
  padding-top: 50px;
  background-size: 100%;
  background-position: top center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px){
  .b-content{
    padding-top: 30px;
    background-size: 180%;
  }
}
.e-tokuten{
  filter: drop-shadow(0px 0px 5px rgb(0 0 0 / .3));
}
@media screen and (min-width: 1024px){
  .b-content{
    background-size: 1024px;
    background-repeat: repeat-x;
  }
}

/* b-leaf --------------*/
.b-leaf{
  position: relative;
}
.b-leaf::before,
.b-leaf::after{
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  top: 0;
}
.b-leaf .container{
  position: relative;
  z-index: 1;
}
.b-leaf::before{
  left: 0;
}
.b-leaf::after{
  right: 0;
}

/* e-caution --------------*/
.e-caution{
  line-height: 1.467;
  text-align: justify;
}
@media screen and (max-width: 768px){
  .e-caution{
    font-size: 3.75vw;
  }
}
@media screen and (min-width: 768px){
  .e-caution{
    font-size: 15px;
  }
}

/*---------------------------------

 other

---------------------------------*/

/* b-section --------------*/
.b-section+.b-section::before{
  content: "";
  display: block;
  width: 100%;
  /*background: linear-gradient(140deg, rgba(230,193,47,1) 0%, rgba(246,237,140,1) 15%, rgba(230,193,47,1) 50%, rgba(246,242,151,1) 76%, rgba(164,120,35,1) 100%);*/
}
@media screen and (max-width: 767px){
  .b-section{
    padding-bottom: 60px;
  }
  /*
  .b-section+.b-section::before{
    height: 9.4vw;
  }
  */
}
@media screen and (min-width: 768px){
  .b-section{
    padding-bottom: 90px;
  }
}

/* b-btnBox --------------*/
.b-btnBox {
  padding: 20px 0;
}
.b-btnBox .container{
  max-width: 864px;
}
.b-btnBox .e-bt{
  display: block;
}
.b-btnBox .e-bt:hover{
  opacity: 1;
}
@media screen and (min-width: 768px){
  .b-btnBox .container{
    display: flex;
    align-items: center;
  }
}

/* b-tokuten --------------*/
.e-tokutenMds{
  text-align: center;
  font-weight: 700;
  line-height: 1.438;
}
.e-tokutenMds span{
  display: inline-block;
  font-weight: inherit;
}
@media screen and (max-width: 767px){
  .b-tokuten{
    padding-top: 8vw;
  }
  .e-tokutenMds{
    font-size: 6.5vw;
    margin-bottom: 3vw;
  }
  .e-tokuten+.b-lnks{
    margin-top: 30px;
  }
}
@media screen and (min-width: 768px){
  .b-tokuten{
    padding-top: 60px;
  }
  .e-tokutenMds{
    font-size: 40px;
    margin-bottom: 18px;
  }
  .e-tokuten+.b-lnks{
    margin-top: 35px;
  }
}

/* b-lnks+.e-caution --------------*/
@media screen and (max-width: 767px){
  .b-section .b-lnks+.e-caution{
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px){
  .b-section .b-lnks+.e-caution{
    margin-top: 25px;
  }
}

/* smart -----------*/

.sec-smart .b-lead{
  background: #D1EBF9;
}
.sec-smart .b-content{
  padding-top: 0;
}
.sec-smart .b-01{
  background: #EAF3E1;
}
.sec-smart .b-01 .e-ttl{
  background: #1F8D51;
}
.sec-smart .b-02{
  background: #E4DFDD;
  margin-bottom: 30px;
}
.sec-smart .b-lead .container,
.sec-smart .b-01 .e-ttl .container{
  max-width: 936px;
}
@media screen and (max-width: 767px){
  .sec-smart .b-lead{
    padding: 2vw 0 0;
  }
  .sec-smart .b-01,
  .sec-smart .b-02{
    padding-bottom: 10vw;
  }
  .sec-smart .b-01 .e-ttl .container,
  .sec-smart .b-02 .e-ttl .container{
    width: 100%;
  }
  .sec-smart .b-02 .e-ttl{
    margin-bottom: 7vw;
  }
}
@media screen and (min-width: 768px){
  .sec-smart .b-lead{
    padding: 50px 0;
  }
  .sec-smart .b-01,
  .sec-smart .b-02{
    padding-bottom: 50px;
  }
  .sec-smart .b-02 .e-ttl{
    position: relative;
  }
  .sec-smart .b-02 .e-ttl .container{
    position: relative;
    z-index: 1;
  }
  .sec-smart .b-02 .e-ttl::before,
  .sec-smart .b-02 .e-ttl::after{
    content: "";
    display: block;
    width: 50%;
    height: 100%;
    background-size: contain;
    position: absolute;
    top: 0;
  }
  .sec-smart .b-02 .e-ttl::before{
    background-image: url(images/02-bg-left.png);
    left: 0;
  }
  .sec-smart .b-02 .e-ttl::after{
    background-image: url(images/02-bg-right.png);
    right: 0;
  }
}

/* catalog */

@media screen and (max-width: 767px){
  .b-catalogs {
    margin-top: 40px;
  }
  .b-catalogs .e-img {
    width: 100dvw;
    margin-left: 50%;
    transform: translateX(-50dvw);
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px){
  .b-catalogs {
    margin-top: 40px;
  }
  .b-catalogs .e-img {
    margin-bottom: 30px;
  }
}
