@charset "utf-8";
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 500;
}


main ul,main dl,main dt,main dd{margin: 0;padding: 0;}
main li{ list-style-type: none;}
.contents_wrap img{
  display: block;
}


@media screen and (min-width: 769px) {
  .only_pc {
    display: block;
  }

  .only_sp {
    display: none;
  }

/*------------------------------------------------------------------------------------------
*
*
    Responsive / PC
*
*
------------------------------------------------------------------------------------------ */
#mv,.bg_wrap{
  color: #231815;
  position: relative;
}

.icon_scroll_ani{
  width: 60px;
  position: absolute;
  top: 160px;
  left: 50%;
  transform: translate(-50% , 0);
}
.icon_scroll_ani p{
  animation-name: scrollAnime;
  animation-iteration-count: infinite;
  animation-duration: 2s;
  opacity: 0.5;
}

.icon_scroll_ani p:nth-child(2){
  margin: -15px 0;
  animation-delay: 0.5s;
}

.icon_scroll_ani p:nth-child(3){
  animation-delay: 1s;
}

@keyframes scrollAnime{
  0% {
    opacity: 0.5;
  }
  33%{
    opacity: 1;
  }

  66% {
    opacity: 1;
  }
  100%{
    opacity: 0.5;
  }
}

  .mv_wrap{
    width: 100%;
    min-height:364px;
    position: relative;
  }

  .mv_cont_box{
    width: 100%;
    height: 364px;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .mv_cont_box h1{
    width: 100%;
    max-width: 441px;
    height: auto;
    transform: translateY(-20px);
  }

  .mv_cont_box h1 * {
    width: 100%;
  }

  #slider_cont {
    width: 100%;
    padding: 0 20px;
    position: absolute;
    left: 50%;
    top: calc(100% - 30px);
    overflow: hidden;
    transform: translateX(-50%);
    box-sizing: border-box;
    z-index: 2;
  }

  #slider_cont .swiper {
    max-width: 1120px;
    margin: 0 auto;
    overflow: visible;
  }

  #slider_cont .swiper a{
    text-decoration: none;
  }

  #slider_cont .swiper-slide {
      width: 242px;
  }

  #slider_cont .swiper-slide img {
    width: 100%;
    border-radius: 0;
  }

  #slider_cont .slide-content{
    font-size: 14px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    margin-top: 10px;
  }

  #slider_cont .swiper-button-prev,
  #slider_cont .swiper-button-next{
    width: 163px;
    top: 0;
    bottom: 0;
    transition: .2s;
  }
  #slider_cont .swiper-button-prev{
    background: rgb(181,187,196);
    background: -moz-linear-gradient(-90deg, rgba(181,187,196,0) 3%, rgba(0,0,0,70) 97%);
    background: -webkit-linear-gradient(-90deg, rgba(181,187,196,0) 3%, rgba(0,0,0,70) 97%);
    background: linear-gradient(-90deg, rgba(181,187,196,0) 3%, rgba(0,0,0,70) 97%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#b5bbc4",endColorstr="#0f0e17",GradientType=1);
    left: 0;
  }
  #slider_cont .swiper-button-prev.swiper-button-disabled{
    opacity: 0;
  }
  #slider_cont .swiper-button-next{
    background: rgb(181,187,196);
    background: -moz-linear-gradient(90deg, rgba(181,187,196,0) 0%, rgba(0,0,0,70) 97%);
    background: -webkit-linear-gradient(90deg, rgba(181,187,196,0) 0%, rgba(0,0,0,70) 97%);
    background: linear-gradient(90deg, rgba(181,187,196,0) 0%, rgba(0,0,0,70) 97%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#b5bbc4",endColorstr="#0f0e17",GradientType=1);
    right: 0;
  }
  #slider_cont .swiper-button-next.swiper-button-disabled{
    opacity: 0;
  }
  #slider_cont .swiper-button-prev:after, #slider_cont .swiper-rtl .swiper-button-next:after {
    content: "";
    width: 19px;
    height: 68px;
    background: url("../img/icon_slider_l.svg") 0 0 no-repeat;
    background-size: 100% auto;
  }
  #slider_cont .swiper-button-prev:after{
    transform: translateX(-35px);
  }

  #slider_cont .swiper-button-next:after, #slider_cont .swiper-rtl .swiper-button-prev:after{
    content: "";
    width: 19px;
    height: 68px;
    background: url("../img/icon_slider_r.svg") 0 0 no-repeat;
    background-size: 100% auto;
  }

  #slider_cont .swiper-button-next:after{
    transform: translateX(35px);
  }

  #slider_cont .slide-media{
    position: relative;
    overflow: hidden;
  }

  #slider_cont .slide-media video{
    width: 100%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: .2s;
    opacity: 0;
  }

  #slider_cont .swiper-slide:hover .slide-media video{
    opacity: 1;
  }

  .mv_movie_box{
    position: absolute;
    z-index: -1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
  }

  .mv_movie_box::before{
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position:absolute;
    top: 0;
    left: 0;
    background: url("../img/mv_noise.png") 0 0 repeat;
    background-size: 1180px auto;
    mix-blend-mode: soft-light;
  }

  .mv_movie_box #mv_bg_video {
    /*天地中央配置*/
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
  }

  .mv_movie_note{
    font-size: 0.85rem;
    color: #fff;
    width: 100%;
    max-width: 1160px;
    padding: 0 20px;
    position: absolute;
    left: 50%;
    top: calc(137% - 0px);
    transform: translateX(-50%);
    z-index: 9;
  }

  /*content*/
  .bg_wrap{
    font-family: "Yu Gothic";
    padding-top: 345px;
    background: rgb(181,187,196);
    background: -moz-linear-gradient(0deg, rgba(181,187,196,1) 0%, rgba(15,14,23,1) 97%);
    background: -webkit-linear-gradient(0deg, rgba(181,187,196,1) 0%, rgba(15,14,23,1) 97%);
    background: linear-gradient(0deg, rgba(181,187,196,1) 0%, rgba(15,14,23,1) 97%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#b5bbc4",endColorstr="#0f0e17",GradientType=1);
  }

  .contents_wrap{
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 0 56px ;
    box-sizing: border-box;
    position: relative;
  }

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

  #brandmovie{
    margin-bottom: 160px;
  }

  .specialmovie_video video{
    width: 100%;
    height: auto;
  }

  .brandmovie_movie_wrap{
    position: relative;
  }

  .brandmovie_movie_wrap .text01{
    width: 49.425%;
    position: absolute;
    top: 10%;
    right: -1.75%;
  }

  .brandmovie_movie_wrap .text02{
    width: 58.79%;
    position: absolute;
    bottom: -8.75%;
    left: -2.75%;
  }

  .contents_wrap video{
    vertical-align: bottom;
  }

  .content_layout02 .mov.mov-yt .specialmovie_video{
    background: #231815;
  }

  .contents_wrap .specialmovie_video{
    position: relative;
    aspect-ratio: 64/29;
  }
  #equipment .contents_wrap .specialmovie_video{
    border: 1px solid #ccc;
    box-sizing: border-box;
    overflow: hidden;
  }
  #access_mv .contents_wrap .c-card__image img{
    border: 1px solid #ccc;
    box-sizing: border-box;
    overflow: hidden;
  }
  .contents_wrap .specialmovie_video::before{
    content: "";
    display: block;
    width: 15%;
    aspect-ratio: 1 / 1;
    background: url("../img/icon_arrow.svg") 75% center no-repeat;
    background-size: 65% auto;
    border-radius: 50%;
    border: 1px solid #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
  }

  .contents_wrap a .specialmovie_video video{
    transition: .2s;
  }

  .contents_wrap a:hover .specialmovie_video video{
    opacity: 0.7;
  }

  .contents_wrap .textbox{
    font-feature-settings: "palt";
    color: #fff;
    margin-bottom: 80px;
    padding-top: 50px;
    position: relative;
    z-index: 1;
  }
  .contents_wrap .mov{
    position: relative;
    z-index: 1;
  }

  .content_layout02{
    margin-bottom: 126px;
  }

  .content_layout02 .textbox h2{
    margin-bottom: 24px;
  }

  .content_layout02 .textbox h2 *{
    width: auto;
    height: 27px;
  }

  #blackedition .content_layout02 .textbox h2 *{
    width: auto;
    height: 52px;
  }
  
  .content_layout02  .mov{
    width: 83%;
    max-width: 712px;
    display: block;
  }

  .contents_wrap .sec_image{
    width: 29%;
    max-width: 280px;
    position: absolute;
    top: 0;
    right: 56px;
    z-index: 0;
  }

  .connect_wrap{
    background: #fff;
    padding: 40px;
  }

  .connect_wrap h2 *{
    width: auto;
    height: 31px;
  }

  .connect_wrap .caption{
    text-align: center;
    margin: 32px 0 20px;
  }

  .connect_wrap .mov{
    width: 100%;
    max-width: 572px;
    display: block;
    margin: 0 auto;
  }

  #equipment{
    margin-top: 126px;
  }

  #equipment h2{
    margin-bottom: 44px;
  }

  #equipment h2 *{
    width: auto;
    height: 26px;
  }


  #equipment_slider .slick-box {
    display: flex;
    justify-content: space-between;
  }
  #equipment_slider .slide02{
    text-align: center;
    max-width: calc(100% / 3 - 10px);
  }

  #equipment_slider .swiper-controls{
    display: none;
  }

  #equipment_slider .c-card__image{
    margin-top: 10px;
    border: none;
    border-radius: 0;
  }

  #equipment_slider .c-card__text .label{
    font-size: 12px;
    margin-top: 5px;
    padding: 4px 8px 2px;
    display: inline-block;
    border: 1px solid #231815;
  }

  /*202401*/
  #access_mv{
    margin-top: 126px;
  }

  #access_mv h2{
    margin-bottom: 44px;
  }

  #access_mv h2 *{
    width: auto;
    height: 26px;
  }


  #access_mv_slider .slick-box {
    display: flex;
    justify-content: center;
  }

  #access_mv_slider .slide03{
    text-align: center;
    max-width: calc(100% / 3 - 10px);
    margin: 0 0.875em;
  }

  #access_mv_slider .swiper-controls{
    display: none;
  }

  #access_mv_slider .c-card__image{
    margin-top: 10px;
    border: none;
    border-radius: 0;
  }

  #access_mv_slider .c-card__text .label{
    font-size: 12px;
    margin-top: 5px;
    padding: 4px 8px 2px;
    display: inline-block;
    border: 1px solid #231815;
  }

  p.access_movie_note {
    font-size: 0.75em;
    margin-top: 1.5em;
    max-width: 640px;
    width: 100%;
    margin: 1.5em auto 0;
    display: block;
}
  /*202401*/

  #estimate{
    padding: 130px 0;
  }

  .estimate_btn_box{
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
  }

  .estimate_btn{
    width: 100%;
    height: auto;
    margin: 0 auto;
    display: block;
    transition: .3s;
  }

  .estimate_btn:hover{
    opacity: 0.7;
  }

  #splinklist,#spnotelist{
    padding-bottom: 130px;
  }

  #splinklist h2 picture{
    display: flex;
    justify-content: center;
  }

  #splinklist h2 img{
    width: 90%;
    max-width: 748px;
    display: inline-block;
  }

  #splinklist .linklist_wrap{
    margin-top: 54px;
    display: flex;
    justify-content: space-between;
  }

  #splinklist .linklist_wrap a{
    color: #231815;
    text-align: center;
    text-decoration: none;
    width: calc(25% - 8px);
    transition: 0.3s;
  }
  
  #splinklist .linklist_wrap a:hover{
    opacity: 0.7;
  }

  #splinklist .linklist_wrap .linklist_text{
    font-feature-settings: "palt";
    margin-top: 0.5em;
  }
  #splinklist .linklist_wrap .linklist_text .u-font-bold{
    font-family: "Yu Gothic" !important;
    font-weight: bold;
  }

  .obs_ani{
    opacity: 0;
    transform: translateY(60px);
    transition: 0.6s;
  }

  .obs_ani.in{
    opacity: 1;
    transform: translateX(0);
  }

}

.c-option__inner::before {
	border-top: 1px solid #231815;
	border-bottom: 1px solid #231815;
	z-index: 1;
}
.c-option__inner::after {
	border-top: 1px solid #231815;
	border-bottom: 1px solid #231815;
	z-index: 1;
}
.c-option__inner {
  border-left: 1px solid #231815;
  border-right: 1px solid #231815;
}