@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css?family=Lato:100,100i,300,300i,400,400i,700,700i,900,900i');
@import url('https://fonts.googleapis.com/css?family=Roboto:100,100i,300,300i,400,400i,500,500i,700,700i,900,900i');
@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap');
@import url('https://fonts.googleapis.com/earlyaccess/notosansjapanese.css');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&display=swap');
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
.font-roboto {
  font-family: 'Roboto', sans-serif;
  font-weight: bold;
}
.font-lato {
  font-family: 'Lato', sans-serif;
}
.font-mplus {
  font-family: 'M PLUS Rounded 1c', sans-serif;
}
.font-noto {
  font-family: 'Noto Sans Japanese';
}
.font-kosugi {
  font-family: 'Kosugi Maru', sans-serif;
}
html, body {
  height: 100%;
}
*, *::after, *::before {
  box-sizing: border-box;
}
* {
  margin: 0;
  padding: 0;
  font-size: inherit;
  line-height: inherit;
}
body {
  color: #000000;

  font-family: "Noto Sans Japanese", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Lucida Grande", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif;
  overflow-x: hidden;
  font-size: 1.4em;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;

}
p {
  line-height: 1.8;
  letter-spacing: 0.05rem;
  text-align: center;
}
main {
  display: block;
  width:100%;
}

img{
  max-width:100%;
  height:auto;

}
li {
  list-style-type: none;
}
a {
  text-decoration: none;
  color: #fff;
}
.br-pc {
  display: block;
}
.br-sp {
  display: none;
}
sup, sub {
  font-size: 1.2rem;
}


@media only screen and (max-width: 1024px) {
  body {
    font-size: 1.4rem;
  }
  .inner {
    width: 80%;
  }
}
@media only screen and (max-width:750px) {
  .inner {
    width: 90%;
  }
  body {
    font-size: 1.35rem;
  }
  .br-pc {
    display: none;
  }
  .br-sp {
    display: block;
  }
}
.wrap {
  background-color: rgba(255, 255, 60, 1);
  background-blend-mode: lighten;
  z-index: 20;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  text-align: center;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.wrap img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  animation: fadeIn 1s;
  animation-fill-mode: backwards;
  -webkit-animation: fadeIn 1s;
  -webkit-animation-fill-mode: backwards;
  max-width: 500px;
  width: 80%;
  height: auto;
}
.wrap.active {
  -webkit-transition: all 3s ease;
  -moz-transition: all 3s ease;
  -o-transition: all 3s ease;
  transition: all 3s ease;
  background-color: rgba(255, 255, 255, 0);
}
.wrap.active img {
  display: none;
}
/*-------------------
header
-------------------*/
header {
  width: 100%;
  position: relative;
  background-color:#ffff3c;
}

header .mainhead{
  width: 100%;
  position: relative;
  background:url(../images/head_bg_mainimg_pc.jpg) no-repeat center top;
  background-size:100% auto;
}

header .mainhead-in{
  max-width:1000px;
  margin:0 auto;
  width: 100%;
  position: relative;
  background:url(../images/head_mainimg_co_pc.png) no-repeat center bottom;
  background-size:100% auto;
  padding-top:calc(100vw /.85);
}


header img{
  max-width:100%;
  height:auto;
  vertical-align:bottom;
}



header .head_lg{
  
  z-index:5;
  background:#000000;
  text-align:center;
  padding:5vw 0 2vw 0;
}


header .head_lg a{
  animation: fadeInBottom 1s;
  animation-delay: 1.8s;
  animation-fill-mode: backwards;
  -webkit-animation: fadeInBottom 1s;
  -webkit-animation-delay: 1.8s;
  -webkit-animation-fill-mode: backwards;
-moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  opacity: 1;
  display:inline-block;
  width:20%;
  max-width:100px;

}

header .head_lg a:hover{
  opacity: .7;
}


header .mainhead-in h1 {
  position: absolute;
  top: 2%;
  left: 3%;
  right:3%;
  width:;
  animation: fadeInTop 1s;
  animation-delay: 2.8s;
  animation-fill-mode: backwards;
  -webkit-animation: fadeInTop 1s;
  -webkit-animation-delay: 2.8s;
  -webkit-animation-fill-mode: backwards;
  margin: auto;
  text-align: center;
  z-index:5;
}

header .tl{
  position:absolute;
  bottom:-4vw;
  left:0;
  right:0;
  z-index:5;
  width:90%;
  max-width:900px;
  margin:0 auto;
}

header .btlbg{
  position:absolute;
  bottom:-22vw;
  left:0;
  right:0;
  z-index:5;
  width:98%;
  max-width:900px;
  margin:0 auto;
}

header .head_date{
  background:url(../images/head_bg_bbl_pc.png) no-repeat center 8vw;
  background-size:100% auto;
  max-width:900px;
  margin:0 auto;
  padding:13vw 0 5vw 0;
}

header .head_date dt {
  width:50%;
  max-width:500px;
  margin:0 auto;
  line-height:1;
}

header .head_date dd {
  width:70%;
  max-width:700px;
  margin:0 auto;
  padding:1vw 0;
  line-height:1;
}

header .head-date-img {
  position: absolute;
  top:80%;
  right:5%;
  left:70%;
  animation: fadeInBottom 1s;
  animation-delay: 2.8s;
  animation-fill-mode: backwards;
  -webkit-animation: fadeInBottom 1s;
  -webkit-animation-delay: 2.8s;
  -webkit-animation-fill-mode: backwards;
  z-index:3;
}

header .mainimg {
  position: relative;
  margin:0 auto;
  padding: 0;
  text-align: center;
  max-width:1500px;
}



header .head_date .head_date_img{


  position:relative;
  z-index:5;
  text-align:center;
  padding:2vw 0;
}

header .head_date .head_date_img img{
  width:70%;
  max-width:700px;
  margin:0 auto;
}

header .head_date .disable{
  opacity:.2;
}



header.disable:after{
  content:'';
  display:block;
  background:rgba(0,0,0, .5);
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:30%;
  width:100%;
  margin:auto;
  z-index:10;
  transform:skewY(0deg);
}

header.disable .disablea{
  position:absolute;
  left:50%;
  bottom:5%;
  margin:auto;
  z-index:11;
  width:40%;

  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  text-align:center;
}

header.disable .disablea img{
  max-width:100%;
  height:auto;
}

@media only screen and (min-width:1000px) {


  header .mainhead{

  }
  header .mainhead-in{
    padding-top:1220px;
  }

  header .head_lg{
    padding:1rem 0;
  }

  header .tl{
    bottom:-3rem;
  }

  header .head_date{
    background-position:center 5em;
    padding:7em 0 2em 0;
  }

  header .btlbg{
    bottom:-210px;
  }

  header .head_date dd {
    padding:.5rem 0;
  }

  
}

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

  


}

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

  header .mainhead{
    background:url(../images/head_bg_mainimg_sp.jpg) no-repeat center top;
    background-size:100% auto;
  }

  header .mainhead-in{
    background:url(../images/head_mainimg_co_sp.png) no-repeat center bottom;
    background-size:100% auto;
  }



  header.disable:after{
    height:35%;
  }

  header.disable .disablea{
    position:absolute;
    left:50%;
    bottom:5%;
    margin:auto;
    z-index:11;
    width:60%;

    transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    text-align:center;
  }
}


@media only screen and (max-width:480px) {
  header {
    background-position:center 18vw;
  }
}




/*-------------------
animation
-------------------*/
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@-webkit-keyframes fadeInTop {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInTop {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(50%, 0, 0);
    transform: translate3d(50%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(50%, 0, 0);
    transform: translate3d(50%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInBottom {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInBottom {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}


#obbutton{
  bottom:100px;
  display: none;

}

#obbutton .cpbt{
  max-width: 700px;
  margin: 0 auto;
  display: flex;
  justify-content: space-evenly;
  width: 90%;
}


#obbutton.fixed{
  position:fixed;
  z-index:15;
  bottom:0;
  left:0;
  right:0;
  background:none;
}

#obbutton .cpbt a {
  overflow:hidden;
  padding: 0;
  -webkit-backface-visibility: hidden;
    backface-visibility: hidden;

}

#obbutton .cpbt a:hover {
  
}

#obbutton .cpbt a img{
    vertical-align:bottom;
    -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  transform: scale(1,1);
  opacity: .9;
  }

  #obbutton .cpbt a img:hover{
   opacity: 1;
  transform: scale(1.1,1.1);
  }

@media only screen and (max-width:640px) {
  #obbutton .cpbt{
    margin: 0 auto;
    display: flex;
    justify-content: space-evenly;
    width:100%;

  }

  #obbutton .cpbt a img {
    transform: none;
    opacity:1;

  }

  #obbutton .cpbt a img:hover {
    opacity: .8;
    transform: none;
  }



}






/*present
--------------*/
#present {
  background-color: #ff5f00;
  text-align: center;
  padding: 0 0 5vw 0;
  position:relative;
}


#present img{
  max-width:100%;
  height:auto;
}

#present h1  {
  padding-top:5vw;
  width:100%;
  max-width:1000px;
  margin:0 auto;
}

#present h1 img {
  margin: 0 auto;
  animation: fadeInBottom 1s;
  animation-delay: 3s;
  animation-fill-mode: backwards;
  -webkit-animation: fadeInBottom 1s;
  -webkit-animation-delay: 3s;
  -webkit-animation-fill-mode: backwards;
}


#present .primg {
  max-width:1000px;
  width:100%;
  margin:0 auto;
  position:relative;

}

#present .primg li{
  position:relative;
}

#present .primg li.pr01{
  z-index:2;
}

#present .primg li.pr02{
  z-index:1;
}


#present .primg li .bblbg01{
  position:absolute;
  top:18%;
  right:-13%;
  left:73%;
}

#present .primg li .bblbg02{
  position:absolute;
  top:58%;
  right:-2%;
  left:76%;
}

#present .primg li.disable .dis{
  opacity:.2;
}

#present .primg li.disable .disablea{
  position:absolute;
  top:50%;
  transform: translateY(-50%);
  left:0;
  right:0;
  font-size:clamp(1.6rem, 4vw, 3rem);
  font-weight:800;
  opacity:1;
}


@media only screen and (min-width:1000px) {
  #present {
    padding: 0 0 3em 0;
  }

  #present h1  {
    padding-top:2em;
  }

  #present .primg {
    max-width:1500px;
    width:100%;
    margin:0 auto;
    display:flex;
  }

  #present .primg li .bblbg01{
    position:absolute;
    top:16%;
    right:-10%;
    left:73%;
  }

  #present .primg li.pr01.disable .disablea{
    position:absolute;
    top:35%;
  }
}

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

}


/*howto
--------------*/
#howto {
  text-align: center;
  padding:5vw 0 0 0;
  position: relative;
  background:#de52b8;
}

#howto img{
  max-width:100%;
  height:auto;
}

#howto .bgbbl01{
  position:absolute;
  top:-3vw;
  right:20%;
  left:73%;
}

#howto h2 {
  margin: 0 auto;
  position: relative;
  padding:3vw 0 1vw 0;
  z-index:2;
}

#howto h2 img{
  width:70%;
  max-width:650px;
  margin:0 auto;
}



@media only screen and (min-width:1000px) {
  #howto {
    padding:3em 0 0 0;
  }
  #howto .bgbbl01{
    top:-2em;
    right:20%;
    left:73%;
  }

  #howto h2 {
    padding:1em 0 1em 0;
  }
}


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


}


#howto .htbx{
  background:#FFFFFF;
  border-radius:5rem;
  border-top:5px solid #000000;
  border-bottom:15px solid #000000;
  border-left:5px solid #000000;
  border-right:15px solid #000000;
  position:relative;
  width: 90%;
  margin: 0 auto;
  max-width: 800px;
  padding:0;
  box-shadow: 7px 7px 0 rgba(184, 0, 124, 1);
}

#howto .htbx .bgbbl02{
  position:absolute;
  top:22%;
  left:85%;
  right:-3%;
}

#howto .htbx .bgbbl03{
  position:absolute;
  top:90%;
  right:92%;
  left:-3%;
}

#howto .htstep {
  padding:5%;
}


#howto .htstep li {
  padding:2vw 0;
}

#howto .htstep li .btbox{
  padding:3vw 0;
}

#howto .htstep li .btbox dt{
  width:70%;
  margin:0 auto;
}

#howto .htstep li .btbox dd{
  display:flex;
  justify-content: space-between;
}

#howto .htstep li .btbox dd a{
  width:48%;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  opacity:1;
}

#howto .htstep li .btbox dd a:hover{
  opacity:.7;
}



#howto .htbutton {
  width:60%;
  margin:0 auto;
  padding:3vw 0;
}

#howto .htbutton.hush {
  padding-top: 0;
}

#howto .htbutton a {
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  opacity: 1;
}
#howto .htbutton a:hover {
  opacity: .7;
}

#howto .htbx .atten {
  font-size:clamp(.7rem, 2vw, 1.2rem);
  line-height:1.2;
  text-indent:-1em;
  padding-left:1em;
}

#howto .htbx .atten br{
  display:none;
}

.htbx.ist.disable{
  position:relative;
}

.htbx.disable:after{
  content:'';
  display:block;
  background:rgba(0,0,0, .7);
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:100%;
  width:100%;
  margin:auto;
  border-radius:20px;
}

.htbx.disable .disablea{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  top:0;
  margin:auto;
  z-index:100;
  width:60%;
  display:flex;
  align-items: center;
    justify-content: center;
    align-content: center;
}

.htbx.disable .disablea img{
  max-width:100%;
  height:auto;
}



#howto .htbx-grn.disable{
  position:relative;
}

#howto .htbx-grn.disable:after{
  content:'';
  display:block;
  background:rgba(0,0,0, .5);
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:100%;
  width:100%;
  margin:auto;
  z-index:10;
}

#howto .htbx-grn.disable .disablea{
  position:absolute;
  left:50%;
  top:50%;
  margin:auto;
  z-index:11;
  width:90%;
  transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    font-weight:800;
  color:#FFFFFF;
  font-size:4vw;
}

#howto .htbx-grn.disable .disablea img{
  max-width:100%;
  height:auto;
}

@media only screen and (min-width:1000px) {
  #howto .htbx{
    border-top:7px solid #000000;
    border-bottom:17px solid #000000;
    border-left:7px solid #000000;
    border-right:17px solid #000000;
    box-shadow: 10px 10px 0 rgba(184, 0, 124, 1);
  }

  #howto .htstep li .btbox{
    padding:2em 0;
  }

  #howto .htbutton {
    padding:2em 0;
  }
}

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

  #howto .htbx{
    background:#FFFFFF;
    border-radius:2rem;
    border-top:3px solid #000000;
    border-bottom:8px solid #000000;
    border-left:3px solid #000000;
    border-right:8px solid #000000;
    position:relative;
    width: 90%;
    margin: 0 auto;
    max-width: 800px;
    padding:0;
    box-shadow: 5px 5px 0 rgba(184, 0, 124, 1);
  }

  #howto .htbx .atten br{
    display:block;
  }
}


/*attention
--------------*/

#attention{
  text-align:center;
  border-top:3px solid #FFFFFF;
  padding:5vw 2vw;
  margin-top:5vw;
  color:#FFFFFF;
  position:relative;
}

#attention .bgbbl01{
  position:absolute;
  top:-3vw;
  right:10%;
  left:85%;
}

#attention .howcmw{
  font-size:clamp(.5rem, 2vw, 1.2rem);
  font-weight:500;
  margin:0 auto;
  width:90%;
  max-width:750px;
}

#attention .howcmw dt{
  font-size:180%;
  font-weight:bold;
}

#attention .howcmw .attlead{
  font-size:140%;
  font-weight:600;
}

#attention .howcmw .cracount{
  padding:0.3em 0;
  margin:2vw auto;
  border-top:1px solid #FFFFFF;
  border-bottom:1px solid #FFFFFF;
}

#attention .howcmw .cracount a{
  font-weight:600;
  font-size:150%;
  transition: all .3s ease-in;
  -o-transition: all .3s ease-in;
  -moz-transition: all .3s ease-in;
  -webkit-transition: all .3s ease-in;
  padding:0 0.5em;
  
  display:inline-block;
}

#attention .howcmw .cracount a:hover{
  background: #FFFFFF;
  color:#000000;
}


#attention .hcmatten{
  padding:0 0.5em;
}


@media only screen and (min-width:1000px) {
  #attention{
    padding:3em 1em;
    margin-top:3em;
  }

  #attention .howcmw .cracount{
    margin:1em auto;
  }
}

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

  #attention{
    border-top:2px solid #FFFFFF;
    margin-top:8vw;
  }

  #attention .bgbbl01{
    position:absolute;
    top:-7vw;
  }
}



/*products
--------------*/
#products {
  text-align: center;
  padding: 10vw 0 5vw 0 ;
  position: relative;
  margin:0 auto;
  background-color:#4479fa;
}

#products .bg01{
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:5;
  max-width:950px;
  margin:0 auto;
}

#products img{
  max-width:100%;
  height:auto;
}

@media only screen and (min-width:1500px) {
  #products .bg01{
    position:absolute;
    top:0;
    left:0;
    right:0;
    z-index:5;
    max-width:1100px;
    margin:0 auto;
  }
}

@media only screen and (min-width:1000px) {

  #products {
    padding: 4em 0 2em 0 ;
  }
}

#products .products-bx{
  background:#FFFFFF;
  border-radius:5rem;
  border-top:5px solid #000000;
  border-bottom:15px solid #000000;
  border-left:5px solid #000000;
  border-right:15px solid #000000;
  position:relative;
  width: 90%;
  margin: 0 auto;
  max-width: 800px;
  padding:0 0 5vw 0;
  box-shadow: 5px 5px 0 rgba(50, 89, 184, 1);
}



#products .products-bx .bg02{
  position:absolute;
  top:-1.5%;
  left:67%;
  right:-10%;
  z-index:6;
}

#products .products-bx .bg03{
  position:absolute;
  bottom:13%;
  left:-15%;
  right:60%;
  z-index:6;
}

#products h2 {
  width:65%;
  max-width:500px;
  margin: 0 auto;
  position: relative;
  padding-top:10vw;
  z-index:2;
}

#products .prol-atten{
  padding:0.5em;
}

#products .product-list{
  width:90%;
  max-width:1300px;
  margin:2vw auto 0 auto;
  display:flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}

#products .product-list li.pr{
  padding:3vw 1.5%;
  width:calc(100% / 2);

}

#products .product-list .fuki{

}

#products .product-list .pht{
  width:80%;
  margin:0 auto;
}

#products .product-list .lead{
  border-top:1px solid #000000;
  border-bottom:1px solid #000000;
  font-size:clamp(.4rem, 1.3vw, 1.1rem);
  font-weight:500;
  margin-top:2vw;
  line-height:1.4;
  padding:1vw 0;
}

#products .product-list .lead .atten{
  font-size:90%;
  font-weight:400;
}

#products .product-list .prnm{
  font-size:clamp(.55rem, 1.8vw, 1.5rem);
  font-weight:bold;
  padding:2vw 0;
  line-height:1.4;
}

#products .product-list .prnm .prct{
  font-size:90%;
}

#products .product-list .prbt{
  width:90%;
  margin:0 auto;
}

#products .product-list .prbt li{
  padding:1vw 0;
}
#products .product-list .prbt a{
  font-size:clamp(.5rem, 1.8vw, 1.4rem);
  font-weight:500;
  color:#FFFFFF;
  transition: all .3s ease-in;
  -o-transition: all .3s ease-in;
  -moz-transition: all .3s ease-in;
  -webkit-transition: all .3s ease-in;
  border-top:3px solid #000000;
  border-left:3px solid #000000;
  border-bottom:5px solid #000000;
  border-right:3px solid #000000;
  border-radius:10rem;
  display:block;
  padding:2vw 0;
}

#products .product-list .prbt a:hover{
}

#products .product-list .prbt .bt-nlab{
  background:#0076ff;
}

#products .product-list .prbt .bt-amzn{
  background:#eb8500;
}

#products .product-list .prbt .bt-nlab:hover{
  background:#eb8500;
}

#products .product-list .prbt .bt-amzn:hover{
  background:#0076ff;
}

@media only screen and (min-width:1500px) {
  #products .products-bx{
    max-width: 1500px;
  }

  #products .product-list li.pr{
    padding:1em 1.5%;
    width:calc(100% / 4);
  }

  #products .products-bx .bg02{
    top:-3.5em;
    left:78%;
    right:-10%;
    z-index:6;
  }

  #products .products-bx .bg03{
    position:absolute;
    bottom:7em;
    left:-15%;
    right:75%;
    z-index:6;
  }

  #products .product-list .lead{
    font-size:clamp(.9rem, 1.3vw, .9rem);
    margin-top:1em;
    padding:0.5em 0;
  }

  #products .product-list .prnm{
    font-size:clamp(1.2rem, 1.8vw, 1.2rem);
    padding:.8em 0;
  }

  #products .product-list li:nth-child(1) .prnm{
    padding:.8em 0 2.2em 0;
  }

  #products .product-list li:nth-child(2) .prnm{
    padding:.8em 0 2.2em 0;
  }

  #products .product-list li:nth-child(5) .pht{
    padding-top:1.5em;
  }

  #products .product-list li:nth-child(6) .pht{
    padding-top:1.5em;
  }

  #products .product-list li:nth-child(5) .lead{
    padding:2.6em 0;
  }

  #products .product-list li:nth-child(6) .lead{
    padding:2.6em 0;
  }

  #products .product-list .prbt li{
    padding:.3em 0;
  }

  #products .product-list .prbt a{
    font-size:clamp(1rem, 1.8vw, 1.2rem);
    padding:1em 0;
  }

}

@media only screen and (min-width:1000px) {
  #products .products-bx{
    border-top:7px solid #000000;
    border-bottom:17px solid #000000;
    border-left:7px solid #000000;
    border-right:17px solid #000000;
    box-shadow: 10px 10px 0 rgba(50, 89, 184, 1);
    padding:0 0 2em 0;
  }
}

@media only screen and (min-width:1000px) and (max-width:1499px) {

  

  #products .products-bx .bg02{
    top:-3em;
  }

  #products .products-bx .bg03{
    position:absolute;
    bottom:25em;
    left:-15%;
    right:60%;
    z-index:6;
  }

  #products h2 {
    padding-top:5em;
  }

  #products .product-list{
    margin:1em auto 0 auto;
  }

  #products .product-list li.pr{
    padding:1em 1.5%;
  }

  #products .product-list .lead{
    margin-top:1em;
    padding:0.5em 0;
  }

  #products .product-list .prnm{
    padding:.8em 0;
  }

  #products .product-list .prbt li{
    padding:.3em 0;
  }

  #products .product-list .prbt a{
    padding:1em 0;
  }
}

@media only screen and (max-width:640px) {
  #products .products-bx{
    border-radius:2rem;
    border-top:3px solid #000000;
    border-bottom:8px solid #000000;
    border-left:3px solid #000000;
    border-right:8px solid #000000;
    box-shadow: 5px 5px 0 rgba(50, 89, 184, 1);
  }

  #products .products-bx .bg02{
    top:-8vw;
  }

  #products .products-bx .bg03{
    position:absolute;
    bottom:10%;
    left:-23%;
    right:50%;
    z-index:6;
  }

  #products .product-list{
    width:98%;
  }

  #products .product-list .prbt a{
    border-top:2px solid #000000;
    border-left:3px solid #000000;
    border-bottom:3px solid #000000;
    border-right:3px solid #000000;
  }
}

#products .sns_list{
  padding:15vw 0 2vw 0;
  margin:10% auto 0 auto;
  width:100%;
  background:#ffff3c;
  position:relative;
}


#products .sns_list img{
  max-width:100%;
  height:auto;
}

#products .sns_list dt{
  position:absolute;
  top:-6vw;
  left:0;
  right:0;
  width:85%;
  max-width:800px;
  margin:0 auto;
  padding-right:5%;
}


#products .sns_list dd.sl{
  text-align:center;
    width:70%;
    margin:0 auto;
    max-width:700px;
}

#products .sns_list dd.comment{
  padding-top:2vw;
}

#products .pr-din .sns_list dd.sl{
  text-align:center;
    width:100%;
    margin:0 auto;
}

#products .sns_list dd ul{
  text-align:center;
   display: -webkit-flex;
    display: flex;
   -webkit-justify-content: space-around;
    justify-content: space-around;
}

#products .sns_list dd ul li{
  padding:0 3%;
}


#products .sns_list dd ul li a{
transition: all .3s ease-in;
  -o-transition: all .3s ease-in;
  -moz-transition: all .3s ease-in;
  -webkit-transition: all .3s ease-in;
  opacity:1;
}

#products .sns_list dd ul li a:hover{
  opacity:.6;
}

#products .stry{
  padding-top:5%;
}

#products .stry a{
  display:inline-block;
  transition: all .3s ease-in;
  -o-transition: all .3s ease-in;
  -moz-transition: all .3s ease-in;
  -webkit-transition: all .3s ease-in;
  opacity:1;
}

#products .stry a:hover{
  opacity:.6;
}

#products .copylight{
  color:#FFFFFF;
  font-size:clamp(.4rem, 1vw, 1rem);
  padding-top:3vw;
  position:relative;

}

#products .copylight:before{
  content:'';
  background:url(../images/tm_lg.png) no-repeat center center;
  background-size:100% auto;
  width:3.5vw;
  height:3.5vw;
  display:inline-block;
  vertical-align:middle;
  margin:0 .5vw 1vw 0;
}

@media only screen and (min-width:1000px) {
  #products .sns_list{
    padding:150px 0 1em 0;
    margin:6em auto 0 auto;
  }

  #products .sns_list dt{
    top:-3em;
  }

  #products .copylight:before{
    width:3.5em;
    height:3.5em;
    display:inline-block;
    vertical-align:middle;
    margin:0 .5em 1em 0;
  }
}

@media only screen and (max-width:640px) {
  #products .copylight{
    letter-spacing:-.3px;

  }

  #products .copylight:before{
    width:5vw;
    height:5vw;
  }
}

/*kiyaku
--------------*/
#kiyaku {
  text-align: center;
  padding: 0 0 2em 0;
  position: relative;
  background:#89000a;
}
#kiyaku h2 {
  background: #c50018;
  color: #FFFFFF;
  font-size: clamp(1.6rem, 3vw, 2.5rem);
  font-weight:800;
  padding: 2vw 0;
  letter-spacing: 10px;
}
#kiyaku .kiyaku_wp {
  width: 90%;
  max-width: 950px;
  margin: 20px auto;
  text-align: left;
  padding: 0.5em 1.5em;
  overflow: auto;
  height: 40em;
  box-sizing: border-box;
  font-size: 0.8em;
  background:#FFFFFF;
}
#kiyaku .kiyaku_wp dt.ky_tl {
  font-size: 110%;
  font-weight: bold;
  padding-top: 1em;
}
#kiyaku .kiyaku_wp dd.ky_mn {
  border-top: 2px solid #000;
  padding: 0.5em 0;
}
#kiyaku .kiyaku_wp dd.ky_mn dl.ky_eac {}
#kiyaku .kiyaku_wp dd.ky_mn dl.ky_eac dt {
  font-weight: bold;
}
#kiyaku .kiyaku_wp dd.ky_mn dl.ky_eac dd {
  padding-bottom: 1em;
}
#kiyaku .kiyaku_wp dd.ky_mn dl.ky_eac dd:last-child {
  padding-bottom: 0;
}
#kiyaku .kiyaku_wp dd.ky_mn dl.ky_eac dd .tx_nl {
  margin: 0.5em 0;
}
#kiyaku .kiyaku_wp dd.ky_mn dl.ky_eac dd .tx_nl.tl {
  display: inline-block;
  background: #000;
  color: #fff;
  padding: 0 1em;
}
#kiyaku .kiyaku_wp dd.ky_mn dl.ky_eac dd .tx_sl {
  padding-left: 1em;
  font-size: 90%;
  line-height: 1.4;
}
#kiyaku .kiyaku_wp ul {}
#kiyaku .kiyaku_wp ul li, #kiyaku .kiyaku_wp ol li {
  text-indent: -1em;
  padding-left: 1em;
}
#kiyaku .kiyaku_wp dd .ky_atten {
  font-size: 90%;
}
#kiyaku .kiyaku_wp a {
  color: #1272e9;
  text-decoration: underline;
}
#kiyaku .kiyaku_wp dd p {
  text-align: left;
}
@media only screen and (max-width:768px) {
  #kiyaku {
    font-size: 80%;
  }
}
@media only screen and (max-width:480px) {
  #kiyaku h2 {
    font-size: 5vw;
  }
  #kiyaku .kiyaku_wp {
    font-size: 0.8em;
  }
}
/*-----------------
footer
-----------------*/
.copyright {
  font-size: 0.9rem;
  letter-spacing: 0;
  color:#FFFFFF;
}

footer .exlink{
  font-size:clamp(.8rem, 2vw, 1.6rem);
  line-height:1.4;
  width:80%;
  max-width:700px;
  margin:0 auto;
  color:#000000;
  background:#FFFFFF;
  border:2px solid #000000;
  border-radius:100px;
  padding:3vw 10vw;
  display:inline-block;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  opacity: 1;
  position:relative;
}

footer .exlink:after{
  content:'';
  background-image:url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 46.53 11.53" style="enable-background:new 0 0 46.53 11.53;" xml:space="preserve"><polygon fill="%23333333" points="46.53,11.53 0,11.53 0,10.53 44.12,10.53 34.3,0.71 35,0 "/></svg>');
  background-size:100% auto;
  background-repeat:no-repeat;
  background-position:center center;
  width:60px;
  height:30px;
  display:block;
  position:absolute;
  top:50%;
  right:5%;
  transform: translatey(-50%);
  -webkit-transform: translatey(-50%);
  -ms-transform: translatey(-50%);
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

footer .exlink:hover{
  background:#ceb2b5;
}

footer .exlink:hover:after{
 right:4%;
}

footer {
  padding:0 0 1vw 0;
  text-align: center;
  position: relative;
  background:#000000;
}
footer .footer_wp {
  background: #c50018;
  padding: 1em;
  font-size: 0.8em;
  color: #FFFFFF;
  letter-spacing: 1px;
  margin-bottom: 1em;
}
footer .footer_wp dt {
  font-size: 110%;
  font-weight: bold;
}

footer .footer_wp dd.ftml {
  padding:1vw 0;
  
}
footer .footer_wp dd.ftml a {
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  font-size:clamp(1rem, 4vw, 2.2rem);
  
}
footer .footer_wp dd.ftml a:hover {
  opacity: .7;
}
footer .footer_wp dd.ftml img {
  max-width: 100%;
  margin: 0 auto;
  height: auto;
}
footer .footer_wp dd.ftatten {
  font-size:clamp(.5rem, 1.8vw, 0.9rem);
  line-height: 1.3;
}
footer .footer_wp dd.ftatten2 {
  width: 90%;
  margin: 0 auto;
  max-width: 650px;
  font-size:clamp(.5rem, 1.8vw, 0.9rem);
  line-height: 1.3;
  padding-top: 0.5em;
}

@media only screen and (min-width:1000px) {

  footer .exlink{
    padding:2rem 5rem;
  }
}

@media only screen and (max-width:640px) {
  footer .exlink{
    border:1px solid #000000;
  }
  footer .exlink:after{
    width:7vw;
    height:5vw;
  }
}


/* back to top */
#go-top {
  position: fixed;
  bottom: 5%;
  right: 3%;
  z-index: 10;
  width: 100%;
  text-align: center;
  display: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
#go-top .totop {
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100px;
  padding: 0;
}

#go-top .totop img{
  max-width:100%;
  height:auto;
}
#go-top .totop a {
  display: block;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
#go-top .totop a:hover {
  opacity: 0.5;
}
@media only screen and (min-width:1500px) {
  #go-top {
    bottom: 3em;
    right: 10%;
  }
}

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

  .copyright {
    font-size: 1.8vw;
    padding: 0 0.5em;
  }
  footer .footer_wp dd.ftatten2 {

  }
  #go-top {
    right: 1%;
    bottom: 10%;
  }

  #go-top .totop {
    width: 40px;

  }
}
@media only screen and (max-width:480px) {
  footer .footer_wp {
    font-size: 3.2vw;
    letter-spacing: 0;
  }

  #go-top .totop {
    width: 40px;
  }

  #go-top {
    right: 1%;
    bottom: 1vw;
  }


}
/*------------
animetion
------------*/
.fadein {
  opacity: 0;
  transform: translate(0, 30px);
  -webkit-transform: translate(0, 30px);
  -moz-transform: translate(0, 30px);
  transition: all 1000ms;
}
.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
}

.fadeinp {
  opacity: 0;
  transform: scale(1.1);
  -webkit-transform: scale(1.21);
  -moz-transform: scale(1.1);
  transition: all 1000ms;
}
.fadeinp.scrollin {
  opacity: 1;
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
}

.brc {
  display: block;
}
@media only screen and (max-width:750px) {
  .brc {
    display: none;
  }
}