/* CSS Document */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■   　デフォルト   　■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

html, body, div, span, iframe,article,figure,
p, a, img, small, dl, dt, dd, ol, ul, li,
h1, h2, h3, h4, h5,h6{
  border: 0;
  margin: 0;
  padding: 0;
  font-size:14px;
  font-family: "roboto", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.05em;
  color: #000;
  font-feature-settings: "palt";
}
h1, h2, h3, h4, h5,h6{
  font-family: "din-2014", sans-serif;
  font-weight: 700;
  letter-spacing: 0.02em;
}

body {
  background: #FFF;
}

html,body {
  line-height: 1;
  width: 100%;
  height: 100vh;
  position: relative;
}
ol, ul {
  list-style: none;
}
a{
  outline:none;
  text-decoration:none;
  cursor: pointer;
  }
a img {
  border: none;
  border-style:none;
}

img{
  width: 100%;
  height: auto;
}

li{
  list-style:none;
}
.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: '';
  display: table;
  clear: both;
}

@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}

/*■■■■■■■■　common　■■■■■■■■*/


#nav_flag{
  width:40px;
  height:40px;
  position: fixed;
  top:20px;
  right:20px;
  z-index: 999;
  background: #FFF;
  border-radius: 40px;
/*  box-shadow: 0px 0px 3px rgba(0,0,0,.2);*/
  overflow: hidden;
  cursor: pointer;
  transition: 0.2s ease;
}

#nav_flag span{
  width: 20px;
  height: 1px;
  background: #707070;
  position: absolute;
  left:10px;
}

#nav_flag span.bar01{ top: 13px; }
#nav_flag span.bar02{ top: 19px; }
#nav_flag span.bar03{ top: 25px; }


#nav_flag span:after{
  content:"";
  display: block;
  width: 100%;
  height:1px;
  background: #FFF;
  transform: scaleX(0);
  transition: transform 0.5s ease;
  transform-origin: top right;
}



.amazon_btn{
  width: 100%;
}
.amazon_btn a{
  display: block;
  width: 100%;
  background: rgba(0,0,0,0.05);
}
.amazon_btn a dl{
  font-size: 0;
  text-align: center;
  padding:15px 0 20px;
}
.amazon_btn a dl dt{
  text-align: center;
  font-size:16px;
  font-family: "din-2014", sans-serif;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height:36px;
  color: #151515;
  margin-bottom:5px;
}
.amazon_btn a dl dd{
  width: 70px;
  margin: 0 auto;
  padding: 15px 100px 8px;
  background: #FFB100;
  border-radius: 50px;
}

footer{
  width: 85%;
  margin: 0 auto;
  padding-bottom:35px;
}

footer .left h2{
  width: 200px;
  margin: 0 auto 20px;
}
footer .left p{
  font-size: 13px;
  line-height: 20px;
  text-align: center;
  color: #4C4C4C;
  margin-bottom:30px;
}
footer .right ul{
  text-align: center;
  font-size: 0;
  margin-bottom:40px;
}
footer .right ul li{
  width: 30px;
  margin-right:15px;
  display: inline-block;
}
footer .right ul li:last-child{
  margin-right: 0;
}
footer .right small{
  display: block;
  font-size: 12px;
  color: #4C4C4C;
  text-align: center;
}

nav{
    width: 100%;
    height:100%;
    background:rgba(173,54,31,0.95);
    position: fixed;
    top: 0;
    left: 0;
    z-index:998;
    transition:opacity 0.7s ease; 
    opacity: 0;
    transform:scaleX(0); 
    animation: bg-color 30s ease 2s infinite forwards;
}

nav.action{
    transform:scaleX(1); 
    opacity: 1;

}


nav ul{
  width:200px;
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%,-50%);
}
nav ul li {
  width: 100%;
  display: inline-block;
  text-align: center;
  border-bottom: 2px solid #FFF;
}
nav ul li:last-child{
  border-bottom: none;
}
nav ul li a{
  font-size: 30px;
  text-align: center;
  color: #FFF;
  font-family: "din-2014", sans-serif;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 20px 0;
  display: block;
}

/*
nav.action{
    transform:translateX(0); 
}*/

@keyframes bg-color {
  0% { background:rgba(173,54,31,0.95); }
  10% { background:rgba(60,151,187,0.95); }
  20% { background:rgba(225,208,32,0.95); }
  30% { background:rgba(117,58,150,0.95); }
  40% { background:rgba(106,156,95,0.95); }
  50% { background:rgba(25,92,150,0.95); }
  60% { background:rgba(148,191,197,0.95); }
  70% { background:rgba(234,197,144,0.95); }
  80% { background:rgba(180,182,181,0.95); }
  90% { background:rgba(176,134,112,0.95); }
  100% { background:rgba(38,36,37,0.95); }
}


/*■■■■■■■■　common　■■■■■■■■*/

.page_cover{
  background-color: #FFF;
}


#top .top-mv{
  width: 100%;
  height: 60%;
  margin-bottom: 60px;
}
#top .top-mv #slide_box,
#top .top-mv #slide_box .swiper-container,
#top .top-mv #slide_box .swiper-wrapper{
  width: 100%;
  height: 100%;
  position: relative;
}
h1{
  width: 200px;
  color: #FFF;
  position: fixed;
  top: 25px;
  left:25px;
  z-index:997;
/*  mix-blend-mode: difference; */
}

#top h1 svg polygon,
#top h1 svg rect,
#top h1 svg path {
  fill: #d82210;
}

#top .top-mv h2{
  font-size: 45px;
  color: #FFF;
  position: absolute;
  bottom: -8px;
  left: 20px;
  z-index:5;
}


#top .top-mv #slide_box .swiper-container .swiper-slide{
  width: 100%;
  height:0;
  padding-bottom:130%;
  background-position: center;
  background-size: cover;
}

#top .top-mv #slide_box .swiper-container .slide01{
  background-image:url(../images/mv01_sp.jpg);
}
#top .top-mv #slide_box .swiper-container .slide02{
  background-image:url(../images/mv02_sp.jpg);
}
/*#top .top-mv #slide_box .swiper-container .slide03{
  background-image:url(../images/mv03_sp.jpg);
}*/
#top .top-mv #slide_box .swiper-container .slide04{
  background-image:url(../images/mv04_sp.jpg);
}
/* ページネーション */
#top .pagination_area{
  width:20px;
  height:80px;
  position: absolute;
  right: 40px; 
  bottom:40px;
  z-index: 1;
  color:＃FFF;
}
#top .top-mv #slide_box .swiper-pagination{
  width:1px;
  height:65px;
  position: absolute;
  left: 30px;
  top: 0;
}
#top .top-mv #slide_box .swiper-pagination:after{
  content: "";
  display: block;
  width:1px;
  height:65px;
  background: rgba(255, 255, 255, 0.5);
  position: absolute;
  left: 0;
  top:0;
  z-index: -1;
}
#top .top-mv #slide_box .swiper-pagination span.swiper-pagination-bullet{
  width:100%;
  height:100%;
  margin: 0;
  border-radius: 0;
  background-color:＃FFF;
  position: absolute;
  top:0px;
  left: 0;
  transform: scale(0, 1);
  transform-origin: left top;
}
#top .top-mv #slide_box .swiper-pagination span.swiper-pagination-bullet-active{
  animation: loadingbar 8s ease-in-out;
  opacity: 1;
}
@keyframes loadingbar {
    0% {
      transform: scale(1, 0);
      transform-origin: left top;
    }
    49%{
      transform: scale(1, 1);
      transform-origin:left top;
    }
    50%{
      transform: scale(1, 1);
      transform-origin: left bottom;
    }
    99% {
      transform: scale(1,0);
      transform-origin: left bottom;
    }
    100% {
      transform: scale(1, 0);
      transform-origin: left top;
    }
}


#top .pagination_area .swiper-fraction{
  font-family: din-2014, sans-serif;
  font-size: 14px;
  line-height: 18px;
  color: #FFF;
  letter-spacing: 0.1em;
  position: absolute;
  top:80px;
  left:0;
}

#top .pagination_area .swiper-button-prev,
#top .pagination_area .swiper-button-next{
  display: none;
}

.top_banner{
  width: 80%;
  margin: 0 auto 50px;
}
.top_banner a{
  transition: 0.2s all ease;
  opacity:1;
}
.top_banner a:hover{
  opacity:0.5;
}


#top .sec03{
  width: 80%;
  margin: 0 auto;
  position: relative;
  padding: 0 0 50px;
}
#top .sec03 h3{
  font-size:40px;
  color:#101010;
  text-align: center;
  margin-bottom:30px;
}
#top .sec03 p{
  font-size: 14px;
  line-height: 24px;
  text-align: center;
  margin-bottom:50px;
}
#top .sec03 ul{
  width:100%;
  margin: 0 auto;
  font-size: 0;
}
#top .sec03 ul li{
  width:47.5%;
  display: inline-block;
  padding-right:5%;
  padding-bottom:35px;
  vertical-align: top;
}
#top .sec03 ul li:nth-child(2n){
  padding-right: 0;
}
#top .sec03 ul li a dl dt{
  width: 100%;
  height:100%;
  border-radius:3px;
  margin-bottom: 15px;
}
#top .sec03 ul li a dl dd{
  font-size: 12px;
  text-align: center;
}

#top .sec02{
  background: url(../images/sec02_bg.jpg) right no-repeat;
  background-size: cover;
  position: relative;
  overflow: hidden;
}
#top .sec02 h3{
  font-size: 140px;
  text-align: center;
  color:rgba(255, 255, 255, 0.1);
  margin-top: -25px;
}
#top .sec02 .wrap{
  width: 100%;
  margin: 0 auto;
  position: relative;
}
#top .sec02 .wrap p{
  font-size: 14px;
  line-height:22px;
  color: #FFF;
  padding: 0 10% 50px;
}



#top .sec01{
  width: 100%;
  margin: 50px auto;
  position: relative;
}
#top .sec01 h3{
  font-size: 50px;
  color: #E2E2E2;
  position: absolute;
  top:70px;
  left: -65px;
  transform: rotate(90deg);
  background: #FFF;
  z-index: 5;
  padding-right:20px;
}
#top .sec01 .wrap{
  width: 70%;
  padding-left:25%;
  position: relative;
}
#top .sec01 .wrap figure{
  width: 100%;
  padding-bottom: 20px;
}
#top .sec01 .wrap h4{
  font-size:28px;
  line-height:42px;
  letter-spacing:-0.01em;
  margin-bottom: 25px;
}
#top .sec01 .wrap h4 span{
  font-size:26px;
}

#top .sec01 .wrap:after{
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background: #E2E2E2;
  position: absolute;
  top: 0;
  left: 35px;
  z-index: 0;
}
#top .sec01 .wrap p{
  font-size: 14px;
  line-height:24px;
  padding-bottom:20px;
}
#top .sec01 .wrap p.short{
  padding-bottom: 40px;
}
#top .sec01 .wrap h5{
  font-size:18px;
  line-height: 26px;
  padding-bottom: 25px;
}
#top .sec01 .wrap .cap{
  font-size: 12px;
}

div.vid_contents {
    width: 90%;/*背景色を横幅いっぱいに広げる*/
    text-align: center;
    margin:0 auto 50px;
}

video.vid_main{
    width: 100%;
}


#top .event_snap{
  background:#F4F4F4;
  padding:50px 0;
  margin: 0 auto 50px;
  text-align: center;
}
#top .event_snap h2{
  font-size:32px;
  color:#101010;
  margin-bottom:30px;
}
#top .event_snap ul{
}
#top .event_snap ul li{
  width:80%;
  margin: 0 auto 30px;
}

#top .event_snap ul li figure{
  margin: 0 auto 15px;
  transition: all ease 0.2s;
}
#top .event_snap ul li dl dt{
  font-size:20px;
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  color:#101010;
  letter-spacing: 0.05em;
  margin-bottom:5px;
}
#top .event_snap ul li dl dd{
  font-size:13px;
  line-height: 24px;
  font-family: "din-2014", sans-serif;
  font-weight: 500;
  color:#101010;
  letter-spacing: 0.05em;
  margin-bottom:10px;
}
#top .event_snap ul li .icon{
  font-size: 10px;
  border-radius: 10px;
  padding: 8px 15px;
  color: #FFF;
  display: inline-block;
}
#top .event_snap ul li .icon.red{
  background: #EB9494;
}
#top .event_snap ul li .icon.blue{
  background: #6FB1D9;
}





#top .dealer{
  width:90%;
  margin: 0 auto 100px;
  text-align: center;
}
#top .dealer h2{
  font-size:32px;
  color:#101010;
  margin-bottom:40px;
}
#top .dealer ul{
  display: flex;
  flex-wrap: wrap;
}
#top .dealer ul li{
  width:45%;
  margin-right:10%;
}
#top .dealer ul li:nth-child(2n){
  margin-right: 0;
}

#top .dealer ul li a figure{
  width:70%;
  margin: 0 auto 20px;
  transition: all ease 0.2s;
}


#top .dealer ul li a:hover figure{
  opacity: 0.8;
}


#top .dealer ul li dl dt{
  font-size:16px;
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  color:#101010;
  letter-spacing: 0.02em;
  margin-bottom: 15px;
}
#top .dealer ul li dl dd{
  font-size:12px;
  line-height:18px;
  font-family: "din-2014", sans-serif;
  font-weight: 500;
  color:#101010;
  letter-spacing: 0.05em;
}


/*
#top .sec04{
  width:100%;
  background: #F4F4F4;
  font-size: 0;
  padding-bottom: 20px;
  margin:0 auto 30px;
  box-sizing: border-box;
}

#top .sec04 .left .wrap{
  box-sizing: border-box;
  padding:50px 30px 20px;
}
#top .sec04 .left .wrap h5{
  font-size:14px;
  text-align: center;
  margin-bottom:20px;
  font-weight: 500;
  letter-spacing: 0.08em;
}
#top .sec04 .left .wrap h2{
  font-size:26px;
  text-align: center;
  margin-bottom: 10px;
  font-weight: 600;
  letter-spacing: 0.02em;
}
#top .sec04 .left .wrap h4{
  font-size:15px;
  text-align: center;
  margin-bottom:20px;
  font-weight: 600;
  letter-spacing: 0.05em;
}
#top .sec04 .left .wrap h3{
  border-top: 2px solid #000;
  font-size: 18px;
  line-height:28px;
  text-align: center;
  border-bottom: 2px solid #000;
  padding: 10px 0;
  margin-bottom: 20px;
}
#top .sec04 .left .wrap p{
  font-size: 14px;
  line-height: 24px;
  text-align: justify;
  margin-bottom: 20px;
}
#top .sec04 .left .wrap p br{
  display: none;
}
#top .sec04 .left .wrap .btn_area a.black{
  width: 100%;
  line-height: 50px;
  background: #000;
  font-size: 20px;
  color: #FFF;
  display: block;
  text-align: center;
  border-radius: 25px;
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  letter-spacing: 0.05em;
}

#top .sec04 .right figure{
  width: 90%;
  height: 0;
  padding-bottom: 141.3%;
  background: url(../images/poster.jpg) no-repeat center;
  background-size: cover;
  box-sizing: border-box;
  margin:0 auto;
}

*/




/*PRODUCT*/

#product .mv{
  width: 100%;
  height: 0;
  padding-bottom:50%;
  background: url(../images/product_mv.jpg) no-repeat center;
  background-size: cover;
  display: block;
  position: relative;
}
#product .mv h3{
  font-size: 40px;
  color: #FFF;
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
}

#product .sec01{
  position: relative;
  padding: 30px 0 50px;
}
#product .sec01 h3{
  font-size: 60px;
  color:#101010;
  text-align: center;
  margin-bottom: 50px;
}
#product .sec01 p{
  font-size: 14px;
  line-height: 24px;
  text-align: center;
  margin-bottom:30px;
}
#product .sec01 ul{
  width:80%;
  margin: 0 auto;
  font-size: 0;
}
#product .sec01 ul li{
  width:47.5%;
  display: inline-block;
  padding-right:5%;
  padding-bottom:35px;
  vertical-align: top;
}
#product .sec01 ul li:nth-child(2n){
  padding-right: 0;
}
#product .sec01 ul li a dl dt{
  width: 100%;
  height:100%;
  border-radius:3px;
  margin-bottom: 15px;
}
#product .sec01 ul li a dl dd{
  font-size: 12px;
  text-align: center;
}

#product .sec01 ul li a dl dt img{
  transition: all 0.3s ease;
}
#product .sec01 ul li a:hover dl dt img{
  transform: scale(1.1);
}



#company .page_cover{
  background: linear-gradient(#E34242,#E25050);
  margin-top:90px;
  padding-bottom: 30px;
}
#company .page_cover2{
  background: linear-gradient(#E34242,#E25050);
  padding-bottom:30px;
}


#company .page_cover h2{
  font-size: 40px;
  color: #FFF;
  text-align: center;
  padding:30px 0;
}
#company .sec02{
  width: calc(100% - 20px);
  margin-left: 20px;
  background: #FFF;
  border-radius:40px 0 0 40px;
  padding:40px 0;
}
#company .sec02 .inner{
  width: 80%;
  margin: 0 auto;
}
#company .sec02 .inner h3{
  font-size: 40px;
  margin-bottom: 30px;
}

#company .sec02 .inner .block{
  padding-left:95px;
  position: relative;
  padding-top:10px;
  padding-bottom:30px;
}
#company .sec02 .inner .block.end{
  padding-bottom: 0;
}
#company .sec02 .inner .block.onegyo{
  padding-bottom: 80px;
  padding-top:25px;
} 
#company .sec02 .inner .block:after{
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 35px;
  content: "";
  display: block;
  background: #000;
}

#company .sec02 .inner .block figure{
  font-size:18px;
  width:70px;
  line-height:70px;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  background: #FFF;
  border: 1px solid #000;
  z-index: 20;
  box-sizing: border-box;
  border-radius:50%;
  font-family: "din-2014", sans-serif;
  font-weight: 300;
  letter-spacing: 0.05em;
  box-sizing: border-box;
}
#company .sec02 .inner .block p{
  font-size: 13px;
  line-height: 24px;
}
#company .sec02 .inner .block p a{
  font-size: 13px;
  line-height: 24px;
  text-decoration: underline;
  color: #E34242;
}


#company .story{
  background: url(../images/sec02_bg.jpg) right no-repeat;
  background-size: cover;
  position: relative;
  overflow: hidden;
}
#company .story h3{
  font-size: 140px;
  text-align: center;
  color:rgba(255, 255, 255, 0.1);
  margin-top: -25px;
}
#company .story .wrap{
  width: 100%;
  margin: 0 auto;
  position: relative;
}
#company .story .wrap p{
  font-size: 14px;
  line-height:22px;
  color: #FFF;
  padding: 0 10% 50px;
}

#company figure img{
  vertical-align: bottom;
}

#company .sec01{
  width: calc(100% - 20px);
  background: #FFF;
  padding:35px 0 50px;
  border-radius: 0 0 40px 0;
}

#company .sec01 .wrap{
  width: 80%;
  margin: 0 auto;
  box-sizing: border-box;
  position: relative;
}
#company .sec01 .wrap h3{
  font-size:35px;
  margin-bottom:25px;
}
#company .sec01 .wrap h4{
  font-size:20px;
  line-height:30px;
  margin-bottom: 20px;
}
#company .sec01 .wrap h4 span{
  font-size: 20px;
  line-height:30px;
}
#company .sec01 .wrap p{
  font-size: 14px;
  line-height:24px;
  padding-bottom:40px;
}
#company .sec01 .wrap p.short{
  padding-bottom: 30px;
}
#company .sec01 .wrap figure{
  width: 100%;
  height: 300px;
  background: #555;
  border-radius: 30px;
  margin-bottom: 30px;
}

#company .sec01 .wrap h5{
  font-size: 20px;
  line-height:30px;
  padding-bottom: 25px;
  position: relative;
 }
#company .sec01 .wrap span{
  font-size: 12px;
}

#company .sec03{
  width: 80%;
  margin: 0 auto;
  background: #FFF;
  padding: 50px 0;
}
#company .sec03 h3{
  font-size: 30px;
  margin-bottom: 20px;
}

#company .sec03 .wrap ul li{
  border-bottom: 1px solid #101010;
  padding: 15px 0;
}
#company .sec03 .wrap ul li:last-child{
  border-bottom: none;
}
#company .sec03 .wrap ul li dl{
  font-size: 0;
  vertical-align: top;
}
#company .sec03 .wrap ul li dl dt{
  font-size: 12px;
  line-height: 28px;
  margin-bottom:10px;
}
#company .sec03 .wrap ul li dl dd{
  font-size: 14px;
  line-height: 24px;
}



#product_syosai .mv{
  width: 100%;
  background: #FFF;
  margin-top:85px;
}

#product_syosai .mv .imgSlider{
  width: 100%;
  height: 100%;
  position: relative;
}
#product_syosai .mv .imgSlider img{
  vertical-align: bottom;
}
#product_syosai .mv .imgSlider .swiper-pagination{
  position: absolute;
  bottom:15px;
  left: 50%;
  transform: translateX(-50%);
}

#product_syosai .swiper-pagination-bullet{
  width: 8px;
  height: 8px;
  margin: 6px;
  background: #FFF;
  border: 1px solid #151515;
  opacity: 1;
}

#product_syosai .swiper-pagination-bullet-active{
  background: #151515;
}

#product_syosai .mv .detail{
  width:100%;
  padding: 30px 30px 50px;
  box-sizing: border-box;
  position: relative;
}

/*カラバリエイション*/

/*赤色*/

#product_syosai .mv .detail.red_e73{
  background: #E34242;
}

#product_syosai .mv .detail.blue_m25{
  background: #007eb6;
}

#product_syosai .mv .detail.saxgold_s46{
  background: #f8ab1f;
}
#product_syosai .mv .detail.silver_74a{
  background: #ebeff2;
}
#product_syosai .mv .detail.milk_68a{
  background: #c79f82;
}
#product_syosai .mv .detail.shiny_pink{
  background: #f77878;
}
#product_syosai .mv .detail.botanical_green{
  background: #3e8759;
}
#product_syosai .mv .detail.sexy_violet{
  background: #cf0de9;
}
#product_syosai .mv .detail.black{
  background: #151515;
}
#product_syosai .mv .detail.steelblue{
  background: #74abc0;
}
#product_syosai .mv .detail.chocolatebrown{
  background: #996457;
}
#product_syosai .mv .detail.concretegray{
  background: #a7a7a7;
}
#product_syosai .mv .detail.champagnegold{
  background: #cda979;
}
#product_syosai .mv .detail.blessingblue{
  background: #93ebee;
}



#product_syosai .mv .detail.mojiwhite .wrap h4,
#product_syosai .mv .detail.mojiwhite .wrap h2,
#product_syosai .mv .detail.mojiwhite .wrap p{
  color: #FFF;
}

#product_syosai .mv .detail .wrap h3{
  color: rgba(0, 0, 0, 0.2);
}
#product_syosai .mv .detail.mojiwhite .wrap h3{
  color: rgba(255,255,255, 0.5);
}


#product_syosai .mv .detail .wrap{
}
#product_syosai .mv .detail .wrap h4{
  font-size: 14px;
  margin-bottom: 15px;
  font-weight: 300;
  letter-spacing: 0.08em;
  text-align: center;
}
#product_syosai .mv .detail .wrap h2{
  font-size:26px;
  margin-bottom:15px;
  text-align: center;
}
#product_syosai .mv .detail .wrap h3{
  font-size: 13px;
  margin-bottom:30px;
  color: rgba(0, 0, 0, 0.5);
  text-align: center;
}
#product_syosai .mv .detail .wrap p{
  font-size: 14px;
  line-height:24px;
  letter-spacing: 0.02em;
  margin-bottom: 30px;
}
#product_syosai .mv .detail .wrap .btn{
  width: 80%;
  margin: 0 auto;
  border: 2px solid #333;
  box-sizing: border-box;
  border-radius: 40px;
}
#product_syosai .mv .detail.mojiwhite .wrap .btn{
  width: 80%;
  margin: 0 auto;
  border: 2px solid #FFF;
  box-sizing: border-box;
  border-radius: 40px;
}

#product_syosai .mv .detail .wrap .btn a{
  width: 100%;
  background: url(../images/product_youtube_icon_bk.svg) no-repeat left 20px center;
  background-size:30px;
  display: block;
  text-align: left;
  color: #333;
  line-height:60px;
  font-size:20px;
  text-align: center;
  box-sizing: border-box;
}
#product_syosai .mv .detail.mojiwhite .wrap .btn a{
  background: url(../images/product_youtube_icon.svg) no-repeat left 30px center;
  color: #FFF;

}



#product_syosai .sec01{
  padding: 50px 0 80px;
}
#product_syosai .sec01 .wrap{
  width: 80%;
  margin: 0 auto;
}

#product_syosai .sec01 .concept{
  padding-bottom: 50px;
}
#product_syosai .sec01 .concept .left{
  width: 100%;
  font-size: 16px;
  line-height: 32px;
  margin-bottom: 30px;
}
#product_syosai .sec01 .concept .right{
  width: 100%;
  text-align: center;
}


#product_syosai .sec01 .wrap .award{
  border-top: 1px solid #CECECE;
  padding-top: 50px;
}

#product_syosai .sec01 .wrap .award .left{
  width:200px;
  margin: 0 auto 40px;
}
#product_syosai .sec01 .wrap .award .right{
  width:100%;
}
#product_syosai .sec01 .wrap .award .right dl{
  width:100%;
  text-align: center;
}
#product_syosai .sec01 .wrap .award .right dl:first-child{
  padding-bottom:30px;
}

#product_syosai .sec01 .wrap .award .right dl dt{
  font-size: 24px;
  font-family: "din-2014", sans-serif;
  font-weight: 700;
  letter-spacing: 0.02em;
  margin-bottom: 15px;
}
#product_syosai .sec01 .wrap .award .right dl dd{
  font-size: 12px;
  line-height: 28px;
}



#product_syosai .sec02 .swiper{
  position: relative;
}
/* スライド全体 */
#product_syosai .sec02 .swiper-slide{
  width:200px;
  height:236px;
  background: #FFF;
  font-size: 0;
  overflow: hidden;
  border-radius:60px;
}

#product_syosai .sec02 .mvSwiper{
  margin-bottom:50px;
}


#product_syosai .sec02 .wrap{
  width: 80%;
  margin: 0 auto 50px;
}
#product_syosai .sec02 .wrap .left{
  width: 100%;
}
#product_syosai .sec02 .wrap .left h3{
  font-size:30px;
  text-align: center;
  margin-bottom: 30px;
}
#product_syosai .sec02 .wrap .left .btn{
  width: 90%;
  margin: 0 auto;
  background: linear-gradient(#89D89E, #40B4C4);
  border-radius: 40px;
  margin-bottom: 30px;
}

#product_syosai .sec02 .wrap .left .btn a{
  width: 100%;
  background: url(../images/product_youtube_icon.svg) no-repeat left 30px center;
  background-size: 30px;
  display: block;
  text-align: center;
  color: #FFF;
  line-height:60px;
  font-size:20px;
  box-sizing: border-box;
}
#product_syosai .sec02 .wrap .right{
  width: 100%;
  font-size: 13px;
  line-height:28px;
  text-align: justify;
}



#product_syosai .sec03{
  padding:50px 0;
  margin-bottom:50px;
  background: linear-gradient(#E34242, #ec6161);
}


#product_syosai .sec03 .wrap{
  width: 85%;
  margin: 0 auto;
}

#product_syosai .sec03 .wrap h3{
  font-size: 20px;
  line-height:40px;
  margin-bottom: 30px;
  color: #FFF;
  text-align: center;
  letter-spacing: 0.02em;
}
#product_syosai .sec03 .wrap ul.feature{
  font-size: 0;
}
#product_syosai .sec03 .wrap ul.feature li{
  width: 100%;
  display: inline-block;
  vertical-align: top;
  border-radius: 20px;
  background: #FFF;
  margin-bottom:30px;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  padding: 20px 40px 100px 80px;
}
#product_syosai .sec03 .wrap ul.feature li:nth-child(2n){
  margin-right: 0;
}

#product_syosai .sec03 .wrap ul.feature li figure{
  font-family: "din-2014", sans-serif;
  font-weight: 700;
  letter-spacing: 0.02em;
  font-size: 100px;
  position: absolute;
  bottom: -20px;
  left: 20px;
}

#product_syosai .sec03 .wrap ul.feature li h4{
  font-size: 30px;
  transform: rotate(90deg);
  position: absolute;
  top: 60px;
  left: -15px;
  opacity: 0.5;
}
#product_syosai .sec03 .wrap ul.feature li h5 br{
  display: none;
}

#product_syosai .sec03 .wrap ul.feature li:nth-child(1) figure,
#product_syosai .sec03 .wrap ul.feature li:nth-child(2) figure,
#product_syosai .sec03 .wrap ul.feature li:nth-child(1) h4,
#product_syosai .sec03 .wrap ul.feature li:nth-child(2) h4{
  color:#E34242;
}
#product_syosai .sec03 .wrap ul.feature li:nth-child(3) figure,
#product_syosai .sec03 .wrap ul.feature li:nth-child(4) figure,
#product_syosai .sec03 .wrap ul.feature li:nth-child(3) h4,
#product_syosai .sec03 .wrap ul.feature li:nth-child(4) h4{
  color:#ec6161;
}

#product_syosai .sec03 .wrap ul.feature li h5{
  font-size: 20px;
  line-height:32px;
  margin-bottom:10px;
}
#product_syosai .sec03 .wrap ul.feature li p{
  font-size:13px;
  line-height: 24px;
}




#product_syosai .sec03 .wrap .caption{
  border: 3px solid rgba(255, 255, 255, 0.5);
  border-radius: 20px;
  padding:20px 40px;
  vertical-align: top;
}
#product_syosai .sec03 .wrap .caption h6{
  color: #FFF;
  font-size:20px;
  line-height: 40px;
  display: inline-block;
  vertical-align: top;
  font-weight: 300;
  letter-spacing: 0.05em;
  padding-bottom:5px;
}
#product_syosai .sec03 .wrap .caption h6 br{
  display: none;
}
#product_syosai .sec03 .wrap .caption ul{
  display: inline-block;
  vertical-align: top;
}
#product_syosai .sec03 .wrap .caption ul li{
  color: #FFF;
  font-size: 14px;
  line-height: 28px;
  text-indent: -16px;
  padding-left: 16px;
}


#product_syosai .sec04 .wrap{
  width: 80%;
  margin: 0 auto;
}
#product_syosai .sec04 .wrap h3{
  font-size: 30px;
  margin-bottom: 20px;
}
#product_syosai .sec04 .wrap ul{
  border-top: 3px solid #101010;
  border-bottom: 3px solid #101010;
}

#product_syosai .sec04 .wrap ul li{
  border-bottom: 1px solid #101010;
  padding: 15px 0;

}
#product_syosai .sec04 .wrap ul li dl{
  font-size: 0;
  vertical-align: top;
}
#product_syosai .sec04 .wrap ul li dl dt,
#product_syosai .sec04 .wrap ul li dl dd{
  vertical-align: top;
}
#product_syosai .sec04 .wrap ul li dl dt{
  font-size: 12px;
  line-height: 28px;
  padding-bottom: 10px;
}
#product_syosai .sec04 .wrap ul li dl dd{
  font-size: 14px;
  line-height: 28px;
}
#product_syosai .sec04 .wrap ul li dl dd h5{
  font-size: 14px;
  padding-bottom:5px;
}
#product_syosai .sec04 .wrap ul li dl dd p{
  font-size: 13px;
  line-height: 28px;
  padding-bottom: 20px;
}
#product_syosai .sec04 .wrap ul li dl dd p:last-child{
  padding-bottom: 0;
}

#product_syosai .sec04 .wrap ul li:last-child{
  border-bottom:none;
}






#product_syosai .sec05{
  position: relative;
  padding: 50px 0 ;
}
#product_syosai .sec05 h3{
  font-size: 30px;
  color:#101010;
  text-align: center;
  margin-bottom: 20px;
}
#product_syosai .sec05 p{
  font-size: 14px;
  line-height: 28px;
  text-align: center;
  margin-bottom: 30px;
}
#product_syosai .sec05 ul{
  width:80%;
  margin: 0 auto;
  font-size: 0;
}
#product_syosai .sec05 ul li{
  width:47.5%;
  display: inline-block;
  padding-right:5%;
  padding-bottom:35px;
  vertical-align: top;
}
#product_syosai .sec05 ul li:nth-child(2n){
  padding-right: 0;
}
#product_syosai .sec05 ul li a dl dt{
  width: 100%;
  height:100%;
  border-radius:3px;
  margin-bottom: 15px;
}
#product_syosai .sec05 ul li a dl dd{
  font-size: 12px;
  text-align: center;
}






#event_report .mv{
  margin-top: 80px;
  background: url(../event_snap/images/event_repo_mv_20230411_sp.jpg) no-repeat center;
  background-size: cover;
  width: 100%;
  height: 0;
  padding-bottom:50%;
  margin-bottom: 30px;
  text-align: center;
  position:relative;
}
#event_report .mv.la{
  background: url(../event_snap/images/event_repo_mv_20230623_sp.jpg) no-repeat center;
  background-size: cover;
}


#event_report .mv .title{
  width: 80%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);

}
#event_report .mv h3{
  font-size:36px;
  color: #FFF;
  text-align: center;
  display: inline-block;
  border-bottom: 2px solid #FFF;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
#event_report .mv h4{
  font-size: 20px;
  color: #FFF;
  padding-bottom: 5px;
}
#event_report .mv h5{
  font-size: 12px;
  color: #FFF;
}

#event_report .mv .icon{
  font-size: 10px;
  background: #FFF;
  color: #000;
  display: inline-block;
  padding:7px 13px;
  border-radius: 20px;
  margin-top: 10px;
}



#event_report .sec01{
  width: 90%;
  margin: 0 auto 40px;
}
#event_report .sec01 ul{
  display: flex;
  flex-wrap: wrap;
}
#event_report .sec01 ul li{
  width: 47%;
  margin-right:6%;
  margin-bottom:6%;
}
#event_report .sec01 ul li:nth-child(2n){
  margin-right: 0;
}

.modaal-image .modaal-container {
    width: auto !important;
    max-width: 70% !important;
}

