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

@font-face {
  font-family: 'Noto Sans JP';
  src: url('../fonts/NotoSansJP-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Noto Sans JP';
  src: url('../fonts/NotoSansJP-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Noto Sans JP';
  src: url('../fonts/NotoSansJP-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

html, body, div, span, iframe,article,figure,
p, a, img, small, dl, dt, dd, ol, ul, li,
h1, h2, h3, h4, h5,h6,header,footer{
  border: 0;
  margin: 0;
  padding: 0;
  letter-spacing: 0.1em;
  font-style: normal;
  line-height:1.0em;
  color: #000;
  font-feature-settings: "palt";
  vertical-align: top;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400; /* Regular */
}
html {
    scroll-behavior: smooth;
}
html {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}

html.wf-active {
  opacity: 1;
  visibility: visible;
}

.mid{
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  font-style: normal;
}
.bold{
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-style: normal;
}


.en{
  font-family: "commuters-sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing:0;
}
.en_bold{
  font-family: "commuters-sans", sans-serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing:0;
}

::selection {
  background:#00469B;
  color:#FFF;
}

::-moz-selection {
  background:#00469B;
  color:#FFF;
}


html,body {
  line-height:0;
  width: 100%;
  height: 100%;
  position: relative;
}
body {
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%; /* Safari */
}
ol, ul {
  list-style: none;
}
a{
  outline:none;
  text-decoration:none;
  cursor: pointer;
  display: block;
  }
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;
}

.br_sp{
  display: none;
}

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

input,textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type="text"] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
}

textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    resize: none;
    padding: 0;
    border: 0;
    background: transparent;
}

.mgn_btm10{margin-bottom:10px;}
.mgn_btm20{margin-bottom:20px;}
.mgn_btm30{margin-bottom:30px;}
.mgn_btm40{margin-bottom:40px;}
.mgn_btm50{margin-bottom:50px;}
.mgn_btm60{margin-bottom:60px;}
.mgn_btm70{margin-bottom:70px;}
.mgn_btm80{margin-bottom:80px;}
.mgn_btm90{margin-bottom:90px;}
.mgn_btm100{margin-bottom:100px;}

.txt_left{text-align:left !important;}
.txt_center{text-align:center !important;}
.txt_right{text-align:right !important;}

.img_width100{width: 100px; margin: 0 auto;}
.img_width150{width: 150px; margin: 0 auto;}
.img_width200{width: 200px; margin: 0 auto;}
.img_width250{width: 250px; margin: 0 auto;}




/*common*/

.sp_header{
  width: 100%;
  padding:20px 15px 15px;
  box-sizing: border-box;
  position: fixed;
  top: 0;
  left: 0;
  z-index:1000;
  background: #FFF;
}
.sp_header h1{
  width: 120px;
  float: left;
}
.sp_header .sp_head_menu{
  height: 22px;
  padding: 14px 0;
  display:flex;
  flex-wrap: wrap;
  float: right;
}
.sp_header .sp_head_menu ul.language{
  display:flex;
  flex-wrap: wrap;
  margin-right: 15px;
}
.sp_header ul.language li:first-child{
  padding-right:8px;
  border-right:1px solid #000;
  margin-right:8px;
}
.sp_header ul.language li a{
  font-size: 14px;
  line-height: 22px;
  display: block;
  transition: all 0.2s ease-in-out;
}
.sp_header ul.language li a.on,
.sp_header ul.language li a:hover{
  color:#00469B;
}
.sp_header .sp_head_menu .search{
  width: 22px;
  margin-right:20px;
}

.sp_header .sp_head_menu .gnav_trigger{
  width: 28px;
  height: 22px;
  position: relative;
  cursor: pointer;
}


.sp_header .sp_head_menu .gnav_trigger span{
  width:28px;
  height:2px;
  background: #000;
  display: block;
  position: absolute;
  right: 0;
}

.sp_header .sp_head_menu .gnav_trigger span.top{
  top:7px;
}
.sp_header .sp_head_menu .gnav_trigger span.bottom{
  width:16px !important;
  top: 14px;
}



header{
  width: 100%;
  height: 100%;
  min-height:100vh;
  background:url(../../english/images/nav_bg.svg) no-repeat bottom center #FFF;
  background-size: 100%;
  position: fixed;
  top:0;
  left: 0;
  transition: all 0.3s ease;
  z-index:-1;
  opacity:0;
}
header.active{
  opacity: 1;
  z-index:9999;
}


header .wrap{
  width: 90%;
  margin: 0 auto;
  padding:5%;
  background: #FFF;
}
header .wrap h1{
  width: 120px;
}
header .wrap .nav_box{
  width: 100%;
  height: 100%;
}

header .wrap .nav_box .sub_bar ul.small_nav,
header .wrap .nav_box .sub_bar .font_size_chenge{
  display: none;
}

header .wrap .nav_box .sub_bar{
  height: 22px;
  padding: 18px 0 0;
  display:flex;
  flex-wrap: wrap;
  position: absolute;
  top: 16px;
  right: 5%;
}
header .wrap .nav_box .sub_bar ul.language{
  display:flex;
  flex-wrap: wrap;
  margin-right: 15px;
}
header .wrap .nav_box .sub_bar ul.language li:first-child{
  padding-right:8px;
  border-right:1px solid #000;
  margin-right:8px;
}
header .wrap .nav_box .sub_bar ul.language li a{
  font-size: 14px;
  line-height: 22px;
  display: block;
  transition: all 0.2s ease-in-out;
}
header .wrap .nav_box .sub_bar ul.language li a.on,
header .wrap .nav_box .sub_bar ul.language li a:hover{
  color:#00469B;
}
header .wrap .nav_box .sub_bar .search{
  width: 22px;
  margin-right:20px;
}

header .wrap .nav_box .sub_bar .gnav_trigger{
  width: 28px;
  height: 22px;
  position: relative;
  cursor: pointer;
}
header .wrap .nav_box .sub_bar .gnav_trigger span{
  width:34px;
  height:2px;
  background: #000;
  display: block;
  position: absolute;
  left:-3px;
}

header .wrap .nav_box .sub_bar .gnav_trigger span.top{
  top:10px;
  transform: rotate(37deg);
}
header .wrap .nav_box .sub_bar .gnav_trigger span.bottom{
  top:10px;
  transform: rotate(-37deg);
}



header .wrap .nav_box .sub_bar ul.small_nav li{
  margin-right:25px;
}
header .wrap .nav_box .sub_bar ul.small_nav li a{
  font-size: 14px;
  line-height: 24px;
}



header .wrap .nav_box .sub_bar{
}
header .wrap .nav_box .sub_bar .font_size_chenge{
  display: none;
}
header .wrap .nav_box .sub_bar .font_size_chenge h5{
  font-size: 14px;
  line-height: 20px;
}
header .wrap .nav_box .sub_bar .font_size_chenge ul li{
  margin-left:5px;
}
header .wrap .nav_box .sub_bar .font_size_chenge ul li a{
  font-size: 14px;
  line-height: 20px;
  letter-spacing:0;
  padding: 0 2px;
  color: #A3A3A3;
  border: 1px solid #A3A3A3;
}
header .wrap .nav_box .sub_bar .font_size_chenge ul.f_btn{
}
header .wrap .nav_box .sub_bar .font_size_chenge ul.f_btn li a.on,
header .wrap .nav_box .sub_bar .font_size_chenge ul.f_btn li a:hover{
  color:#00469B;
  border: 1px solid #00469B;
}
header .wrap .nav_box .sub_bar ul.language li:first-child{
  padding-right:8px;
  border-right:1px solid #000;
  margin-right:8px;
}
header .wrap .nav_box .sub_bar ul.language li a{
  font-size: 14px;
  line-height: 20px;
  display: block;
  transition: all 0.2s ease-in-out;
}
header .wrap .nav_box .sub_bar ul.language li a.on,
header .wrap .nav_box .sub_bar ul.language li a:hover{
  color:#00469B;
}

header .wrap .g_navi{
  width:40%;
  margin-right: 10%;
  margin-top:35px;
}
header .wrap ul.g_navi li{
  margin-bottom:10px;
}
header .wrap ul.g_navi li:last-child{
  margin-bottom:0;
}
header .wrap .g_navi li a{
  transition: all 0.2s ease-in-out;
  padding:5px 0;
  letter-spacing: 0.01em;
}

header .wrap .g_navi li a.arrow{
  padding-right: 15px;
/*  background: url(../images/gnavi_arrow.svg) no-repeat;
  background-size: 10px;*/
  background-position: center right;
  position: relative;
}

header .wrap .g_navi li a.arrow:before{
  content: "";
  display: block;
  width: 6px;
  height: 1px;
  background:#000;
  position: absolute;
  top: 15px;
  right: 0px;
  transform: rotate(132deg);
}
header .wrap .g_navi li a.arrow:after{
  content: "";
  display: block;
  width: 6px;
  height: 1px;
  background:#000;
  position: absolute;
  top: 11px;
  right: 0px;
  transform: rotate(-132deg);
}

header .wrap .g_navi li a.arrow.active:before{
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background:#000;
  position: absolute;
  top: 13px;
  right: 0px;
  transform: rotate(0);
}
header .wrap .g_navi li a.arrow.active:after{
  content: "";
  display: block;
  width:10px;
  height: 1px;
  background:#000;
  position: absolute;
  top: 13px;
  right: 0px;
  transform: rotate(0);
}
header .wrap .g_navi li a.active{
  color:#00469B;
}

header .wrap .sp_block{
  width:40%;
  padding-top:20px;
  border-top: 1px solid #000;
  margin-top: 20px;
}
header .wrap .sp_block ul li{
  margin-bottom:15px;
}


.acd_product{
  width:45%;
  position: absolute;
  top:110px;
  right:5%;
  z-index: 50;
  transition: all ease-out 0.4s;
  background: #FFF;
  opacity:0;
  display:none;
}
.acd_product .subnav_close{
  display: none;

}
.acd_product.active{
  opacity: 1;
}
.acd_product .inner{
  width:100%;
  margin: 0 auto;
  padding:0;
  display: flex;
  flex-wrap: wrap;
}
.acd_product .left{
  width:100%;
  margin-right:calc(100% - 1130px);
}
.acd_product .right{
  width:100%;
  position: fixed;
  bottom: 0;
  left:0;
  background: #DEDEDE;
  padding: 5% 5%;
  box-sizing: border-box;
}
.product_info .acd_product .right{
  padding: 5% 5% 40px;
}


.acd_product .left h3 a,
.acd_product .flex h3 a{
  font-size: 16px;
  line-height:24px;
  color: #00469B;
  padding: 0 !important;
  margin-bottom:10px;
}
.acd_product .left .sub_btn_list{
  display: flex;
  flex-wrap: wrap;
}
.acd_product .left .sub_btn_list .row{
  margin-bottom:10px;
}
.acd_product .left .sub_btn_list .row ul li{
  width: 100%;
  margin-bottom:5px;
}

.acd_product .flex .sub_btn_list ul li a,
.acd_product .left .sub_btn_list .row ul li a{
  padding: 0;
  font-size: 12px;
  line-height:18px;
  background: url(../images/acd_arrow_icon.png) no-repeat left top 3px;
  background-size:5px;
  padding-left: 15px;
}
.acd_product .flex .sub_btn_list ul li a br,
.acd_product .left .sub_btn_list .row ul li a br{
  display: none;
}
.acd_product .flex .sub_btn_list ul li:last-child,
.acd_product .left .sub_btn_list .row ul li:last-child{
  margin-bottom: 0;
}
.acd_product .left .sub_btn_list .sub_btm_btn_list{
  width:100%;
  display: none;
}
.acd_product .left .sub_btn_list .sub_btm_btn_list ul{
}
.acd_product .left .sub_btn_list .sub_btm_btn_list ul li{
  width: auto;
  margin-bottom:10px;
}
.acd_product .left .sub_btn_list .sub_btm_btn_list ul li:last-child{
  margin-right: 0;
}
.acd_product .left .sub_btn_list .sub_btm_btn_list ul li a{
  font-size: 12px;
  background: url(../images/blank_icon.png) no-repeat right center;
  background-size: 12px;
}
.acd_product .left .sub_btn_list .sub_btm_btn_list ul li a:hover{
  background: url(../images/blank_icon_ho.png) no-repeat right center;
  background-size: 12px;
}
.acd_product .right .gnav_product_slider .swiper-slide{
}
.acd_product .right .gnav_product_slider .swiper-slide dl dt{
  width: 35%;
  float: left;
  margin-right:5%;
}
.acd_product .right .gnav_product_slider .swiper-slide dl dd{
  width: 60%;
  float: left;
}
.acd_product .right .gnav_product_slider h3{
  font-size: 16px;
  line-height:24px;
  margin-bottom:10px;
}
.acd_product .right .gnav_product_slider h3 br{
  display: none;
}
.acd_product .right .gnav_product_slider p{
  font-size: 10px;
  line-height:15px;
}

.acd_product .right .slider_btn{
  width:200px;
  height:20px;
  position: absolute;
  bottom:5px;
  left: 50%;
  transform: translateX(-50%);
}
.acd_product .right .slider_btn .swiper-button-prev{
  width: 8px;
  height: 20px;
  background: url(../images/product_syosai_slider_arrow_prev.png) no-repeat left center;
  background-size: 8px;
}
.acd_product .right .slider_btn .swiper-button-next{
  width: 8px;
  height: 20px;
  background: url(../images/product_syosai_slider_arrow_next.png) no-repeat right center;
  background-size: 8px;
}
.acd_product .right .slider_btn .swiper-button-next:after,
.acd_product .right .slider_btn .swiper-button-prev:after{
  display: none;
}

.acd_product .right .gnav_slider_indicator.swiper-pagination{
  width:100px;
  position: absolute;
  top: auto;
  bottom:3px;
  left:50%;
  transform: translateX(-50%);
  text-align: center;
  position: relative;
}
.acd_product .right .gnav_slider_indicator.swiper-pagination span.swiper-pagination-bullet-active{
  background: #00479B !important;
  animation: gnav_loading 4s ease-out;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 0;
  left: 0;
  z-index:100 !important;
}
@keyframes gnav_loading{
  0%{
    transform:scaleX(0);
    transform-origin: top left;
  }
  100%{
    transform:scaleX(1);
    transform-origin: top left;
  }
}
.acd_product .right .gnav_slider_indicator.swiper-pagination span.swiper-pagination-bullet{
  background:transparent;
  opacity: 1;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.acd_product .right .gnav_company dl dt{
  width: 50%;
  float: left;
  margin-right:10%;
}
.acd_product .right .gnav_company dl dd{
  width: 40%;
  float: left;
}
.acd_product .right .gnav_company h4{
  font-size: 14px;
  line-height: 22px;
  color: #00479B;
}
.acd_product .right .gnav_company h3{
  font-size: 16px;
  line-height:24px;
  margin-bottom:5px;
}
.acd_product .right .gnav_company h3 br{
  display: none;
}
.acd_product .right .gnav_company p{
  font-size: 10px;
  line-height:15px;
}

 

  
#top #mv{
  width: 100%;
  height:calc(100% - 90px);
  position: relative;
  overflow: hidden;
  position: fixed;
  top:90px;
  z-index: 0;
}
#top #mv .bg {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index:-1;
}
#top #mv .bg:before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index:2;
  background: linear-gradient(0deg, rgba(0,0,0,.65), transparent 50%);
}
#top #mv .bg video.pc_movie{
  display: none;
}
#top #mv .bg video{
  width: 100%;
  height: 100%;
  object-fit: cover;

}


#top #mv:before{
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: #00469B;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
  animation:video_bar 30s linear infinite;
}
@keyframes video_bar {
  0%{
    transform: scaleX(0);
    transform-origin:top left;
  }
  100%{
    transform: scaleX(1);
    transform-origin:top left;
  }
}
#top #mv:after{
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: #FFF;
  position: absolute;
  bottom: 0;
  left: 0;
}

#top #mv h2{
  position: absolute;
  bottom:90px;
  left:20px;
}

#top #mv h2 span{
  font-size:24px;
  line-height:30px;
  color: #FFF;
  font-family: "commuters-sans", sans-serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing:0;

}
#top #mv h2 div{
  display: inline-block;
  vertical-align: baseline;
}
#top #mv h2 div a{
  color: #FFF;
  font-size:20px;
}
#top #mv h3{
  font-size:20px;
  line-height:30px;
  color: #FFF;
  position: absolute;
  top:20px;
  left:20px;
}

#top #mv .pc_movie{
  display: none;
}


#top #mv .txt_area{
  position: absolute;
  bottom:20px;
  left:20px;
}
#top #mv .txt_area ul li{
  margin-bottom:10px;
}


#top #mv .txt_area ul li a,
#top #mv .txt_area ul li a span{
  color: #FFF;
  font-size:14px;
  line-height:16px;
  vertical-align: bottom;
  display: inline-block;
}

#top #mv .txt_area ul li a{
  position: relative;
  padding-bottom:3px;
}
#top #mv .txt_area ul li a:after{
  content: "";
  width: 100%;
  height: 1px;
  background: #FFF;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: transform 0.2s ease;
  transform-origin: top left;
  transform: scaleX(1);
}

#top #mv .txt_area ul li a:hover:after{
  transform-origin: top right;
  transform: scaleX(0);
}


#top #mv small{
  font-size:12px;
  color: #FFF;
  position: absolute;
  top:100px;
  right:-80px;
  transform: rotate(90deg);
}
#top #mv .scroll{
  width: 50px;
  position: absolute;
  bottom:20px;
  right:10px;
}
#top #mv .scroll a{
  padding-top:20px;
  font-size:12px;
  text-align: center;
  color: #FFF;
  
}
#top #mv .scroll .obj{
  width:8px;
  height:8px;
  background: #FFF;
  display: block;
  border-radius:10px;
  position: absolute;
  left:20px;
  top: 0;
}


#top #mv .scroll .obj:after{
  content: "";
  width:8px;
  height:8px;
  display: block;
  border: 1px solid #FFF;
  box-sizing: border-box;
  border-radius:10px;
  position: absolute;
  left: 0;
  top: 0;
  animation:scale_up_down 3s ease-out infinite;
  opacity: 1;
}
@keyframes scale_up_down {
  0%{
    transform: scale(0.8);
    opacity: 0;
  }
  50%{
    transform: scale(2);
    opacity:0.4;
  }
  100%{
    transform: scale(0);
  }
}

#top .pickup_news{
  margin: 0 auto;
  position: relative;
  margin-top:100vh;
  width: 100%;
  background: #FFF;
}
#top .pickup_news .wrap{
  border-bottom: 1px solid #DEDEDE;
  padding:10px 0;
  width:92%;
  margin: 0 auto;
}
#top .pickup_news h2{
  padding-bottom:5px;
  border-bottom: 1px solid #DEDEDE;
  margin-bottom:10px;
  width: 100%;
  box-sizing: border-box;
}
#top .pickup_news h2 span{
  font-size:20px;
  line-height: 30px;
  color: #00479B;
  font-family: "commuters-sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing:0;
}
#top .pickup_news .wrap .swiper-container{
  width:100%;
  height:50px;
  overflow: hidden;
}
#top .pickup_news .wrap ul li{
  background: url(../images/pickup_arrow.svg) no-repeat right 5px center;
  background-size:10px;
}
#top .pickup_news .wrap ul li a{
}
#top .pickup_news .wrap ul li a span{
  font-size: 10px;
  color: #A3A3A3;
  line-height:18px;
  margin-bottom:10px;
  display: block;
  position: absolute;
  top:0;
  left:0;
}
#top .pickup_news .wrap ul li a{
  font-size:14px;
  line-height:22px;
  vertical-align: middle;
  padding-left:80px;
  padding-right:30px;
}
#top .pickup_news .wrap ul li .icon{
  width:50px;
  line-height:18px;
  border: 1px solid #00479B;
  border-radius:18px;
  padding: 0 5px;
  font-size: 10px;
  text-align: center;
  color: #00479B;
  position: absolute;
  top:20px;
  left:0;
}


#top .strong_point{
  width: 100%;
  padding:50px 0;
  position: relative;
  overflow: hidden;
  background: #FFF;
}
#top .strong_point .wrap{
  width:90%;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#top .strong_point .text_box{
  width: 100%;
  box-sizing: border-box;
}
#top .strong_point h2{
  margin-bottom:20px;
}
#top .strong_point h2 span{
  font-size:16px;
  font-weight: 600;
}
#top .strong_point h2 span.en_bold{
  display: block;
}
#top .strong_point h2 span.en_bold span{
  padding-top:5px;
  margin-bottom:0px;
  font-size:40px;
  color: #00469B;
  font-family: "commuters-sans", sans-serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing:0;
}
#top .strong_point h3{
  font-size:24px;
  line-height:40px;
  letter-spacing: 0.05em;
  margin-bottom:20px;
}
#top .strong_point p{
  font-size: 14px;
  line-height:28px;
  margin-bottom:30px;
}
#top .strong_point .movie_box{
  width:100%;
  position: relative;
  z-index: 0;
}
#top .strong_point .movie_box figure{
  width:100%;
  height: 0;
  padding-bottom:100%;
  z-index: 0;
  overflow: hidden;
}
#top .strong_point figure video{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius:50%;
  position: absolute;
  top: 0;
  left: 0;
}
#top .strong_point .btn{
  margin-bottom: 30px;
}
#top .strong_point .btn a{
  border: 1px solid #DCDCDC;
  color: #000;
}
#top .strong_point .btn a:after{
  background: #00469A;
}

#top .product{
  width: 100%;
  overflow: hidden;
  background: #00469b;
}
#top .product .wrap{
  width:100%;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  background: #00469b;
}

#top .product .product_head{
  position: relative;
  z-index:500;
  height:400px;
  overflow: hidden;
}
#top .product .product_head figure{
  width: 100%;
  height:600px;
}
#top .product .product_head figure.img01{
  background: url(../images/top_product01.jpg) no-repeat center;
  background-size: cover;
}
#top .product .product_head figure.img02{
  background: url(../images/top_product02.jpg) no-repeat center;
  background-size: cover;
}
#top .product .product_head figure.img03{
  background: url(../images/top_product03.jpg) no-repeat center;
  background-size: cover;
}
#top .product .product_head figure.img04{
  background: url(../images/top_product04.jpg) no-repeat center;
  background-size: cover;
}
#top .product .text_box{
  margin-top:-80px;
  padding-left:5%;
  position: relative;
  z-index: 500;
}
#top .product h2{
  margin-bottom:20px;
}
#top .product h2 span{
  font-size: 16px;
  color: #FFF;
}
#top .product h2 span.en_bold{
  display: block;
}

#top .product h2 span.en_bold span{
  font-size:40px;
  color: #FFF;
  padding-top:10px;
  font-family: "commuters-sans", sans-serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing:0;
}


#top .product h3{
  font-size:24px;
  line-height:34px;
  margin-bottom: 30px;
  color: #FFF;
}
#top .product p{
  width:95%;
  font-size: 14px;
  line-height: 32px;
  margin-bottom:40px;
  color: #FFF;
  text-align: justify;
}
#top .product_slide{
  position: relative;
  padding-bottom:75px;
  z-index:0;
  background:#00469B;
}
#top .product_slide:before{
  content:"";
  display: block;
  width:100%;
  height: 100%;
  position: absolute;
  top:0;
  left:0;
  z-index:-1;
}
#top .product_slide:after{
  content:"";
  display: block;
  width:calc(100% - 100px);
  height: 100%;
  background:#00469B;
  position: absolute;
  top: 0;
  left: 50px;
  z-index:-1;
}
#top .product_slide .inner{
  width: 100%;
}
#top .product .slideshow_overflow{
  width: 100%;
  height:75px;
  overflow: hidden;
  display:block !important;
  position: relative;
  z-index:10;
  margin-top: -38px;
}
#top .product .slideshow_wrap {
  display: flex;
  align-items: center;
  width: 100%;
  height:75px; 
  transform: translate3d(0,0,0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  will-change: transform,animation,position;
  background: none;
}

#top .product .slideshow {
  display: flex;
  position: relative;
}

#top .product .slideshow span{
  position: relative;
  font-size:60px;
  color: #000;
  letter-spacing: 0.02em;
  animation: loop-slide 40s infinite linear 1s forwards;
  transform: translate3d(0,0,0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  will-change: transform,animation,position;
  white-space: nowrap;
  animation-duration: 20s;
  margin-right: 30px;
}
@keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
} 

#top .btn a{
  border: 1px solid #FFF;
  display: inline-block;
  padding: 25px 50px;
  color: #FFF;
}


#top .news{
  margin-top: -38px;
  padding-top:88px;
  background: #FFF;
  position: relative;
  z-index: 0;
  padding-bottom: 38px;
}

#top .news h2{
  text-align: center;
  margin-bottom:30px;
}
#top .news h2 span{
  font-size: 18px;
  display: block;
}
#top .news h2 span.en_bold span{
  font-size:32px;
  text-align: center;
  display: block;
  margin-bottom: 10px;  
  font-family: "commuters-sans", sans-serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing:0;
}


#top .news .news_list_block{
}
#top .news .news_list_block .left,
#top .news .news_list_block .right{
  width:90%;
  margin: 0 auto;
}
#top .news .news_list_block .left{
  margin-bottom:50px;
}
#top .news .news_list_block .left h3,
#top .news .news_list_block .right h3{
  font-size: 20px;
  padding-bottom:15px;
  border-bottom: 1px solid #CCCCCC;
  margin-bottom: 10px;
}
#top .news .news_list_block .left ul li,
#top .news .news_list_block .right ul li{
  padding-bottom: 10px;
  border-bottom: 1px solid #CCCCCC;
  margin-bottom: 10px;
}
#top .news .news_list_block .left ul li dl dt,
#top .news .news_list_block .right ul li dl dt{
  font-size: 12px;
  line-height: 22px;
  margin-bottom:5px;
  color: #00479B;
}
#top .news .news_list_block .left ul li dl dt span,
#top .news .news_list_block .right ul li dl dt span{
  font-size: 12px;
  line-height: 22px;
  color: #A3A3A3;
  display: inline-block;
  border: 1px solid #A3A3A3;
  padding:0 10px;
  margin-left: 10px;
  border-radius: 22px;
}
#top .news .news_list_block .left ul li dl dd,
#top .news .news_list_block .right ul li dl dd{
  font-size: 14px;
  line-height:24px;
  color: #000;
}
#top .news .news_list_block .left .btn,
#top .news .news_list_block .right .btn{
  width: 100%;
  margin-top:20px;
  text-align: center;

}
#top .news .news_list_block .left .btn a,
#top .news .news_list_block .right .btn a{
  width:100%;
  border: 1px solid #dcdcdc;
  color: #000;
  position: relative;
  box-sizing: border-box;
}
#top .news .news_list_block .left .btn a:after,
#top .news .news_list_block .right .btn a:after{
  background: #00469A;
}


#top .company_common_foot ul.menu_link{
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
#top .company_common_foot ul.menu_link li{
  width:50%;
  height:250px;
  border-right: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  box-sizing: border-box;
  position: relative;
}
#top .company_common_foot ul li:last-child{
  margin-right: 0;
}
#top .company_common_foot ul li:last-child{
  border-right: none;
}
#top .company_common_foot ul > li h4{
  position: absolute;
  bottom:15px;
  right:15px;
  color: #FFF;
}
#top .company_common_foot ul li{
  width: 100%;
  display: block;
  cursor: pointer;
}
#top .company_common_foot ul li:nth-child(1),
#top .company_common_foot ul.menu_link li.menu__single:nth-child(1) .sub_menu.active .right{
  background: url(../images/company_list01.jpg) no-repeat center;
  background-size: cover;
}
#top .company_common_foot ul li:nth-child(2){
  background: url(../images/company_list02.jpg) no-repeat center;
  background-size: cover;
}
#top .company_common_foot ul li:nth-child(1) .pc{
  display: none;
}


#top .company_common_foot ul.menu_link li.menu__single:nth-child(1) a,
#top .company_common_foot ul.menu_link li.menu__single:nth-child(2) a,
#top .company_common_foot ul.menu_link li.menu__single:nth-child(3) a,
#top .company_common_foot ul.menu_link li.menu__single:nth-child(4) a{
  width: 100%;
  height: 100%;
  display: block;
  transition: all 0.2s ease;
}
#top .company_common_foot ul.menu_link li.menu__single:nth-child(2) a:hover,
#top .company_common_foot ul.menu_link li.menu__single:nth-child(3) a:hover,
#top .company_common_foot ul.menu_link li.menu__single:nth-child(4) a:hover{
  background:rgba(255, 255, 255, 0.2);
}

#top .company_common_foot ul li:nth-child(3),
#top .company_common_foot ul.menu_link li.menu__single:nth-child(3) .sub_menu.active .right{
  background: url(../images/company_list03.jpg) no-repeat center;
  background-size: cover;
}

#top .company_common_foot ul li:nth-child(4),
#top .company_common_foot ul.menu_link li.menu__single:nth-child(4) .sub_menu.active .right{
  background: url(../images/company_list04.jpg) no-repeat center;
  background-size: cover;
}



#top .company_common_foot ul.menu_link li.menu__single .sub_menu{
  display: none;
} 

#top .company_common_foot ul.menu_link li.menu__single .sub_menu{
  display: none;
}
#top .company_common_foot ul.menu_link li.menu__single .sub_menu .left,
#top .company_common_foot ul.menu_link li.menu__single .sub_menu .right{
  width: 50%;
}

#top .company_common_foot ul.menu_link li.menu__single .sub_menu .left{
  padding: 100px;
  box-sizing: border-box;
}

#top .company_common_foot ul.menu_link li.menu__single .sub_menu .left h5{
  font-size: 26px;
  color: #FFF;
  margin-bottom: 30px;
}
#top .company_common_foot ul.menu_link li.menu__single .sub_menu .left p{
  font-size:14px;
  line-height: 26px;
  color: #FFF;
  margin-bottom: 30px;
  text-align: left;
}
#top .company_common_foot ul.menu_link li.menu__single .sub_menu .left ul{
  display: flex;  
  flex-wrap: wrap;
}
#top .company_common_foot ul.menu_link li.menu__single .sub_menu .left ul li{
  width:calc(50% - 15px);
  position: relative;
  margin-bottom: 20px;
  margin-left: 15px;
}
#top .company_common_foot ul.menu_link li.menu__single .sub_menu .left ul li:after{
  content: "";
  width: 5px;
  height: 1px;
  display: block;
  background: #FFF;
  position: absolute;
  left: -15px;
  top:13px;
}
#top .company_common_foot ul.menu_link li.menu__single .sub_menu .left ul li a{
  font-size:16px;
  line-height: 26px;
  color: #FFF;
  display: inline-block;
  transition: all 0.2s ease;
  text-underline-offset: 5px;
}
#top .company_common_foot ul.menu_link li.menu__single .sub_menu .left ul li a:hover{
  text-decoration: underline;
}


#top .company_common_foot ul.menu_link li.menu__single .sub_menu ul{
  display: block;
}
#top .company_common_foot ul.menu_link li.menu__single .sub_menu ul li{
  width: 100%;
  height: auto;
  border-right: 0;
}
#top .company_common_foot ul.menu_link li.menu__single .sub_menu ul li{
  background: none;
}

#top .company_common_foot ul.menu_link li.menu__single .sub_menu.active{
  visibility: initial;
  opacity: 1;
  z-index:50;
}


#top .external_list{
  width:60%;
  padding:30px 20%;
  background: #FFF;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
#top .external_list .swiper {
  overflow: visible;
}
#top .external_list li a{
  width:100%;
  height: 0;
  padding-bottom:48.4%;
  position: relative;
  transition: all 0.2s ease;
}
#top .external_list li a span{
  width: 100%;
  font-size:16px;
  line-height:24px;
  color: #FFF;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  text-align: center;
}
#top .external_list li a{
  background:  no-repeat center;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
#top .external_list li a:hover{
  background-size: 110%;
}

#top .other_sites .column_2{
  background: #FFF;
  display: flex;
  flex-wrap: wrap;
  position: relative;
  z-index: 0;
}
#top .other_sites .column_2 .left,
#top .other_sites .column_2 .right{
  width:100%;
  padding:20px;
  box-sizing: border-box;
}
#top .other_sites .column_2 .left{
  background:#C7A37F;

}
#top .other_sites .column_2 .right{
  background:#008ABA;
  
}
#top .other_sites .column_2 .left a figure,
#top .other_sites .column_2 .right a figure{
  margin-bottom: 30px;
  overflow: hidden;
}
#top .other_sites .column_2 .left a figure img,
#top .other_sites .column_2 .right a figure img{
  transition: all 0.2s ease;
}
#top .other_sites .column_2 .left a:hover figure img,
#top .other_sites .column_2 .right a:hover figure img{
  transform: scale(1.1);
}

#top .other_sites .column_2 .left dl dt,
#top .other_sites .column_2 .right dl dt{
  font-size: 20px;
  margin-bottom: 10px;
  color: #FFF;
}
#top .other_sites .column_2 .left dl dd,
#top .other_sites .column_2 .right dl dd{
  font-size:14px;
  line-height: 28px;
  color: #FFF;
}


#top .movie_modal,
#strengths .movie_modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(15,47,96,0.95);
  cursor: pointer;
}
#top .movie_modal .movie_modal_content,
#strengths .movie_modal .movie_modal_content{
  background-color: transparent;
  padding: 0;
  border-radius: 0;
  width:85%;
  position: absolute;
  top: 50%;
  left: 50%;
  text-align: center;
  transform:translate(-50%,-50%);
}
#top .movie_modal .movie_modal_content video,
#strengths .movie_modal .movie_modal_content video{
  width: 100%; /* 動画をレスポンシブ化 */
}
#top .movie_modal .movie_modal_close,
#strengths .movie_modal .movie_modal_close{
  position: fixed;
  top:-50px;
  right:0;
  cursor: pointer;
  width: 40px;
  height: 40px;
  display: block;
}
#top .movie_modal span:before,
#strengths .movie_modal span:before{
  content: "";
  width:40px;
  height: 1px;
  background: #FFF;
  display: block;
  transform: rotate(45deg);
  position:absolute;
  top:20px;
  right: 0;
}
#top .movie_modal span:after,
#strengths .movie_modal span:after{
  content: "";
  width:40px;
  height: 1px;
  background: #FFF;
  display: block;
  transform:rotate(-45deg);
  position:absolute;
  top:20px;
  right: 0;
}







#product_single{
  overflow-x: hidden;
}
#product_single .side_btn{
  width:30px;
  position: fixed;
  top: 90px;
  right: 0;
  z-index:10;
}


.pan{
  display: none;
}


#product_list .product_header,
#product_single .product_header{
  margin:110px 5% 0;
}
#product_list .product_header .title,
#product_single .product_header .title{
  position: relative;
  margin-bottom:10px;
}
#product_list .product_header .title .title_box,
#product_single .product_header .title .title_box{
  margin-bottom:10px;
}
#product_list .product_header .title h1,
#product_single .product_header .title h1{
  font-size:16px;
  line-height: 18px;
  color: #00479B;
  padding-bottom:10px;
}

#product_list .product_header h2,
#product_single .product_header h2{
  font-size:35px;
}
#product_list .product_header .title p,
#product_single .product_header .title p{
  font-size: 13px;
  line-height: 24px;
}
#product_list .product_header .title p br,
#product_single .product_header .title p br{
  display: none;
}
#product_list .aside_flag,
#product_single .aside_flag{
  width:80%;
  cursor: pointer;
  font-size: 16px;
  line-height: 50px;
  font-weight: 500;
  text-align: center;
  background: #FFF;
  color: #00479B;
  border: 1px #00479B solid;
  position: fixed;
  bottom:15px;
  left:5%;
  z-index: 999;
  border-radius:10px;
}
#product_list .aside_flag.is_hidden,
#product_single .aside_flag.is_hidden{
  display: none;
}


#product_list .cover,
#product_single .cover{
  position: relative;
  width: 100%;
}

#product_list .cover .wrap,
#product_single .cover .wrap{
  width:100%;
}
#product_single .cover aside{
  transform: translateX(-100%);
  width:100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index:9998;
  transition: all 0.2s ease;
}
#product_single .cover aside .aside_close{
  width:30px;
  height:30px;
  position: absolute;
  top:25px;
  right:25px;
  display: block;
  cursor: pointer;
}
#product_single .cover aside .aside_close:before{
  content: "";
  display: block;
  width:40px;
  height:2px;
  background: #FFF;
  transform: rotate(45deg);
  position: absolute;
  top: 14px;
  left: -5px;
}
#product_single .cover aside .aside_close:after{
  content: "";
  display: block;
  width:40px;
  height:2px;
  background: #FFF;
  transform: rotate(-45deg);
  position: absolute;
  top: 14px;
  left: -5px;
}

#product_single .cover aside.active{
  transform: translateX(0);
}
#product_single .cover aside:before{
  content: "";
  display: block;
  width:30%;
  height: 100%;
  position: absolute;
  top: 0;
  right:0%;
  background:rgba(0, 0, 0, 0.6);
  transition: all 0.2s ease;
  transition-delay: 0.2s;
  opacity: 0;
}
#product_single .cover aside.active:before{
  opacity: 1;
}
#product_single .cover aside .inner{
  width:70%;
  height: 100%;
  padding: 30px 10% 0;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left:0;
  background: #FFF;
}

#product_single .cover aside .inner ul{
  padding-bottom:15px;
  border-bottom: 1px solid #000;
  margin-bottom:15px;
}
#product_single .cover aside .inner ul li a{
  font-size: 15px;
  line-height: 20px;
  padding: 5px 0;
  position: relative;
}
#product_single .cover aside .inner ul li a:before{
  content: "";
  display: block;
  width: 5px;
  height:30px;
  background:transparent;
  position: absolute;
  top: 0;
  left: -37px;
}
#product_single .cover aside .inner ul li a.on{
  color: #00368E;
}
#product_single .cover aside .inner ul li a.on:before{
  content: "";
  display: block;
  width: 5px;
  height:30px;
  background:#00368E;
  position: absolute;
  top: 0;
  left: -37px;
}

#product_single .cover aside .inner .stack_btn_list{

}




#product_single .cover .product_detail{
  width:100%;
  padding-bottom:50px;
}

#product_single .cover .product_detail .detail_head{
  width:100%;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
#product_single .cover .product_detail .detail_head:after{
  content: "";
  display: block;
  width:100%; 
  height:100%;
  position: absolute;
  top:0;
  left:0;
  z-index: -1;
  background: url(../../english/images/syosai_hori.jpg) no-repeat bottom right;
  background-size: cover;
}



#product_single .cover .product_detail .detail_head .detail_txt{
  width:80%;
  margin: 0 15% 30px 5%;
  padding-top:30px;
}
#product_single .cover .product_detail .detail_head .product_image{
  width:80%;
  margin: 0 10%;
  padding:15px 0 20px;
  position: relative;
}

#product_single .cover .product_detail .detail_head .product_image .swiper-wrapper{
  width: 100% !important;
  margin:0;
}

#product_single .cover .product_detail .detail_head .product_image article{
  position: relative;
}
#product_single .cover .product_detail .detail_head .slider_indicator.swiper-pagination{
  width: 190px;
  margin: 0 auto;
  position:relative;
  top: auto;
  bottom:auto;
  left:auto;
  text-align: center;
}
#product_single .detail_head .slider_indicator.swiper-pagination span.swiper-pagination-bullet-active{
  background: #00479B !important;
}
#product_single .detail_head .slider_indicator.swiper-pagination span.swiper-pagination-bullet{
  background: #FFF;
  opacity: 1;
}



#product_single .cover .product_detail .detail_head .slider_btn{
  width:250px;
  margin:0 auto;
  height:20px;
  position: relative;
}
#product_single .cover .product_detail .detail_head .slider_btn .swiper-button-prev{
  width: 10px;
  height: 20px;
  top:35px;
  left: 0;
  background: url(../images/product_syosai_slider_arrow_prev.png) no-repeat left center;
  background-size: 10px;
}
#product_single .cover .product_detail .detail_head .slider_btn .swiper-button-next{
  width: 10px;
  height: 20px;
  top:35px;
  right: 0;
  background: url(../images/product_syosai_slider_arrow_next.png) no-repeat right center;
  background-size: 10px;
}
.detail_head .slider_btn .swiper-button-next:after,
.detail_head .slider_btn .swiper-button-prev:after{
  display: none;
}


#product_single .cover .product_detail .detail_head .product_image p{
  width: 100%;
  font-size: 12px;
  line-height: 16px;
  text-align: center;
  padding-top: 10px;
}
#product_single .cover .product_detail .detail_head .detail_txt h2{
  font-size:24px;
  line-height:32px;
  letter-spacing: 0.15em;
  margin-bottom:10px;
}
#product_single .cover .product_detail .detail_head .detail_txt h2 span{
  font-size:16px;
  line-height:32px;
  letter-spacing: 0.15em;
}
#product_single .cover .product_detail .detail_head .detail_txt h3{
  font-size: 16px;
  letter-spacing: 0.15em;
  line-height: 28px;
  margin-bottom: 20px;
}
#product_single .cover .product_detail .detail_head .detail_txt p{
  font-size: 14px;
  line-height:24px;
  letter-spacing: 0em;
  text-align: justify;
  margin-bottom:15px;
}
#product_single .cover .product_detail .detail_head .detail_txt p.cap{
  font-size: 12px;
  line-height:20px;
  letter-spacing: 0em;
  text-indent: -12px;
  padding-left:12px;
}
#product_single .cover .product_detail .detail_head .product_image .vertical{
  transform: scale(0.9);
}
#product_single .product_content{
  padding-top:50px;
}

#product_single .product_content h2{
  font-size: 20px;
  line-height:32px;
  padding-bottom: 10px;
  color: #00469B;
  border-bottom: 1px solid #DEDEDE;
  margin-bottom:30px;
  position: relative;
}
#product_single .product_content h2:before{
  content: "";
  display: block;
  width: 20px;
  height: 2px;
  background: #00469B;
  position: absolute;
  bottom: -1px;
  left: 0;
}

#product_single .product_content{
}

#product_single .product_content .inner{
  width:85%;
  margin: 0 10% 0 5%;
}
#product_single #features .inner ul li{
  font-size: 14px;
  line-height:22px;
  background: #EAEDF0;
  padding: 15px 20px;
  margin-bottom:5px;
}
#product_single #features .inner ul li span.cap{
  font-size: 12px;
  line-height: 26px;
  display: block;
}

#product_single #kinds{
  width:100% !important;
  margin: 0 !important;
}
#product_single #kinds .inner{
  width:95%;
  margin: 0 0 0 5%;
}

#product_single .product_table_style{
  width: 100%;
  background: #F2F2F2;
  padding: 20px;
  box-sizing: border-box;
  overflow-x: scroll;
}
#product_single .product_table_style table{
  background: #FFF;
  width:900px;
  border-left: 1px solid #A3A3A3;
  border-top: 1px solid #A3A3A3;
  border-right: 2px solid #A3A3A3;
  border-bottom: 2px solid #A3A3A3;
  overflow-x: clip;
}
#product_single .product_table_style table thead.fixed{
  position: sticky;
  top:0;
  background: #FDFDFD;
}
#product_single .product_table_style table th,
#product_single .product_table_style table td{
  border-left: 1px solid #A3A3A3;
  border-top: 1px solid #A3A3A3;
  font-size: 13px;
  line-height: 18px;
  font-weight: 400;
  text-align: center;
  padding: 5px 5px;
}
#product_single .product_table_style table th.bold{
  font-weight: 700;
  color: #00469B;
}



.accordion{
  margin-bottom: 5px;
}
.summary {
  font-size:15px;
  line-height: 22px;
  display: block;
  cursor: pointer;
  padding:10px 30px 10px 15px;
  border: #00479B 1px solid;
  color:#00479B;
  position: relative;
  transition: 0.2s all ease;
  text-indent: -22px;
}

summary {
  position: relative;
  display: block;
  cursor: pointer;
}
summary::-webkit-details-marker {
  display: none;
}

details.accordion .summary:hover,
details.accordion[open] .summary{
  background:#00479B;
  color: #FFF;
}


.summary span.icon{
  display: block;
  width:14px;
  height:11px;
  position: absolute;
  top:16px;
  right:15px;
}
details.accordion .summary span.icon:before{
  content: "";
  display: block;
  width:10px;
  height: 1px;
  background: #00479B;
  position: absolute;
  top:5px;
  left:0px;
  transform: rotate(43deg);
  transition: all ease 0.2s;
}
details.accordion .summary span.icon:after{
  content: "";
  display: block;
  width:10px;
  height: 1px;
  background: #00479B;
  position: absolute;
  top:5px;
  left:7px;
  transform: rotate(-43deg);
  transition: all ease 0.2s;
}
details.accordion[open] .summary span.icon:before{
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background: #fff;
  position: absolute;
  top:5px;
  left:0;
  transform: rotate(0);
}
details.accordion[open] .summary span.icon:after{
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background: #fff;
  position: absolute;
  top:5px;
  right:0;
  transform: rotate(0);
}



.summary::-webkit-details-marker {
  display: none;
}
.acd_container {
  overflow: hidden;
  background: #F2F2F2;
  padding:15px;
}
.acd_container h3{
  font-size: 16px;
  margin-bottom: 10px;
}
.acd_container ul{
  margin-bottom:20px;
}
.acd_container ul:last-child{
  margin-bottom:0;
}
.acd_container ul li dl{
  margin-bottom: 5px;

}
.acd_container ul li dl dt{
  width:100%;
  font-size: 14px;
  line-height:24px;
  letter-spacing: 0;
  padding: 12px 10px;
  background: #DEDEDE;
  box-sizing: border-box;
}
.acd_container ul li dl dd{
  width:100%;
  font-size: 14px;
  line-height:24px;
  letter-spacing: 0;
  padding: 12px 10px;
  background: #FFF;
  box-sizing: border-box;
}


/*タブ切り替え全体のスタイル*/
.tabs {
  width: 100%;
  background-color: #fff;
  margin: 0 auto;
  padding: 10px 10px  5px;
  box-sizing: border-box;
}
.tabs{
  text-align: center;
}

/*タブのスタイル*/
.tab_item {
  width: 100%;
  height:40px;
  line-height:40px;
  font-size: 12px;
  padding: 0 15px;
  text-align: center;
  color: #565656;
  display:inline-block;
  text-align: center;
  font-weight: bold;
  transition: all 0.4s ease;
  box-sizing: border-box;
}
.tab_item:hover {
  color: #00479B;
  background: #F2F2F2;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  width: 100%;
  display: none;
  padding: 20px 0 0;
  clear: both;
  overflow: hidden;
}


/*選択されているタブのコンテンツのみを表示*/
#menu01:checked ~ #menu01_content,
#menu02:checked ~ #menu02_content,
#menu03:checked ~ #menu03_content,
#menu04:checked ~ #menu04_content,
#menu05:checked ~ #menu05_content,
#menu06:checked ~ #menu06_content,
#menu07:checked ~ #menu07_content,
#menu08:checked ~ #menu08_content,
#menu09:checked ~ #menu09_content,
#menu10:checked ~ #menu10_content,
#menu11:checked ~ #menu11_content,
#menu12:checked ~ #menu12_content,
#menu13:checked ~ #menu13_content,
#menu14:checked ~ #menu14_content,
#menu15:checked ~ #menu15_content,
#menu16:checked ~ #menu16_content,
#menu17:checked ~ #menu17_content,
#menu18:checked ~ #menu18_content,
#menu19:checked ~ #menu19_content,
#menu20:checked ~ #menu20_content,
#menu21:checked ~ #menu21_content,
#menu22:checked ~ #menu22_content,
#menu23:checked ~ #menu23_content,
#menu24:checked ~ #menu24_content,
#menu25:checked ~ #menu25_content,
#menu26:checked ~ #menu26_content,
#menu27:checked ~ #menu27_content,
#menu28:checked ~ #menu28_content,
#menu29:checked ~ #menu29_content,
#menu30:checked ~ #menu30_content,
#menu31:checked ~ #menu31_content,
#menu32:checked ~ #menu32_content,
#menu33:checked ~ #menu33_content,
#menu34:checked ~ #menu34_content,
#menu35:checked ~ #menu35_content,
#menu36:checked ~ #menu36_content,
#menu37:checked ~ #menu37_content,
#menu38:checked ~ #menu38_content,
#menu39:checked ~ #menu39_content,
#menu40:checked ~ #menu40_content,
#menu41:checked ~ #menu41_content,
#menu42:checked ~ #menu42_content,
#menu43:checked ~ #menu43_content,
#menu44:checked ~ #menu44_content,
#menu45:checked ~ #menu45_content,
#menu46:checked ~ #menu46_content,
#menu47:checked ~ #menu47_content,
#menu48:checked ~ #menu48_content,
#menu49:checked ~ #menu49_content,
#menu50:checked ~ #menu50_content,
#menu51:checked ~ #menu51_content,
#menu52:checked ~ #menu52_content,
#menu53:checked ~ #menu53_content,
#menu54:checked ~ #menu54_content,
#menu55:checked ~ #menu55_content,
#menu56:checked ~ #menu56_content,
#menu57:checked ~ #menu57_content,
#menu58:checked ~ #menu58_content,
#menu59:checked ~ #menu59_content,
#menu60:checked ~ #menu60_content,
#menu61:checked ~ #menu61_content,
#menu62:checked ~ #menu62_content,
#menu63:checked ~ #menu63_content,
#menu64:checked ~ #menu64_content,
#menu65:checked ~ #menu65_content,
#menu66:checked ~ #menu66_content,
#menu67:checked ~ #menu67_content,
#menu68:checked ~ #menu68_content,
#menu69:checked ~ #menu69_content,
#menu70:checked ~ #menu70_content,
#menu71:checked ~ #menu71_content,
#menu72:checked ~ #menu72_content,
#menu73:checked ~ #menu73_content,
#menu74:checked ~ #menu74_content,
#menu75:checked ~ #menu75_content,
#menu76:checked ~ #menu76_content,
#menu77:checked ~ #menu77_content,
#menu78:checked ~ #menu78_content,
#menu79:checked ~ #menu79_content,
#menu80:checked ~ #menu80_content,
#menu81:checked ~ #menu81_content,
#menu82:checked ~ #menu82_content,
#menu83:checked ~ #menu83_content,
#menu84:checked ~ #menu84_content,
#menu85:checked ~ #menu85_content,
#zenkan:checked ~ #zenkan_content,
#gaikei300A:checked ~ #gaikei300A_content,
#outdoor:checked ~ #outdoor_content,
#indoor:checked ~ #indoor_content{
  display: block;
}

.tabs input#menu01:checked + .tab_item,
.tabs input#menu02:checked + .tab_item,
.tabs input#menu03:checked + .tab_item,
.tabs input#menu04:checked + .tab_item,
.tabs input#menu05:checked + .tab_item,
.tabs input#menu06:checked + .tab_item,
.tabs input#menu07:checked + .tab_item,
.tabs input#menu08:checked + .tab_item,
.tabs input#menu09:checked + .tab_item,
.tabs input#menu10:checked + .tab_item,
.tabs input#menu11:checked + .tab_item,
.tabs input#menu12:checked + .tab_item,
.tabs input#menu13:checked + .tab_item,
.tabs input#menu14:checked + .tab_item,
.tabs input#menu15:checked + .tab_item,
.tabs input#menu16:checked + .tab_item,
.tabs input#menu17:checked + .tab_item,
.tabs input#menu18:checked + .tab_item,
.tabs input#menu19:checked + .tab_item,
.tabs input#menu20:checked + .tab_item,
.tabs input#menu21:checked + .tab_item,
.tabs input#menu22:checked + .tab_item,
.tabs input#menu23:checked + .tab_item,
.tabs input#menu24:checked + .tab_item,
.tabs input#menu25:checked + .tab_item,
.tabs input#menu26:checked + .tab_item,
.tabs input#menu27:checked + .tab_item,
.tabs input#menu28:checked + .tab_item,
.tabs input#menu29:checked + .tab_item,
.tabs input#menu30:checked + .tab_item,
.tabs input#menu31:checked + .tab_item,
.tabs input#menu32:checked + .tab_item,
.tabs input#menu33:checked + .tab_item,
.tabs input#menu34:checked + .tab_item,
.tabs input#menu35:checked + .tab_item,
.tabs input#menu36:checked + .tab_item,
.tabs input#menu37:checked + .tab_item,
.tabs input#menu38:checked + .tab_item,
.tabs input#menu39:checked + .tab_item,
.tabs input#menu40:checked + .tab_item,
.tabs input#menu41:checked + .tab_item,
.tabs input#menu42:checked + .tab_item,
.tabs input#menu43:checked + .tab_item,
.tabs input#menu44:checked + .tab_item,
.tabs input#menu45:checked + .tab_item,
.tabs input#menu46:checked + .tab_item,
.tabs input#menu47:checked + .tab_item,
.tabs input#menu48:checked + .tab_item,
.tabs input#menu49:checked + .tab_item,
.tabs input#menu50:checked + .tab_item,
.tabs input#menu51:checked + .tab_item,
.tabs input#menu52:checked + .tab_item,
.tabs input#menu53:checked + .tab_item,
.tabs input#menu54:checked + .tab_item,
.tabs input#menu55:checked + .tab_item,
.tabs input#menu56:checked + .tab_item,
.tabs input#menu57:checked + .tab_item,
.tabs input#menu58:checked + .tab_item,
.tabs input#menu59:checked + .tab_item,
.tabs input#menu60:checked + .tab_item,
.tabs input#menu61:checked + .tab_item,
.tabs input#menu62:checked + .tab_item,
.tabs input#menu63:checked + .tab_item,
.tabs input#menu64:checked + .tab_item,
.tabs input#menu65:checked + .tab_item,
.tabs input#menu66:checked + .tab_item,
.tabs input#menu67:checked + .tab_item,
.tabs input#menu68:checked + .tab_item,
.tabs input#menu69:checked + .tab_item,
.tabs input#menu70:checked + .tab_item,
.tabs input#menu71:checked + .tab_item,
.tabs input#menu72:checked + .tab_item,
.tabs input#menu73:checked + .tab_item,
.tabs input#menu74:checked + .tab_item,
.tabs input#menu75:checked + .tab_item,
.tabs input#menu76:checked + .tab_item,
.tabs input#menu77:checked + .tab_item,
.tabs input#menu78:checked + .tab_item,
.tabs input#menu79:checked + .tab_item,
.tabs input#menu80:checked + .tab_item,
.tabs input#menu81:checked + .tab_item,
.tabs input#menu82:checked + .tab_item,
.tabs input#menu83:checked + .tab_item,
.tabs input#menu84:checked + .tab_item,
.tabs input#menu85:checked + .tab_item,
.tabs input#zenkan:checked + .tab_item,
.tabs input#gaikei300A:checked + .tab_item,
.tabs input#outdoor:checked + .tab_item,
.tabs input#indoor:checked + .tab_item{
  color: #00479B;
  background: #F2F2F2;
  display: block;
}





summary {
  display: block;
  list-style: none;
}

/* 一部ブラウザで消えなかった場合は以下も追記 */
summary::-webkit-details-marker {
  display:none;
}



.qa_accordion{
  padding-bottom:15px;
  border-bottom: 1px solid #DEDEDE;
  margin-bottom:15px;
}
.qa_accordion summary,
.qa_accordion summary::-webkit-details-marker {
  display: block;
  list-style: none;
}
.qa_summary dl{
  width: 100%;
  display: table;
}
.qa_summary dl dt{
  width: 40px;
  display: table-cell;
  vertical-align: top;
}
.qa_summary dl dt span{
  width: 40px;
  height: 40px;
  font-size:15px;
  line-height: 40px;
  letter-spacing: 0.1em;
  border-radius: 46px;
  border: 2px solid #00479B;
  background:#FFF;
  color: #00479B;
  text-align: center;
  display: block;
  transition: 0.2s ease all;
}
.qa_summary:hover dl dt span{
  background:#00479B;
  color: #FFF;
}
.qa_summary dl dd{
  width: calc(100% - 65px);
  font-size: 14px;
  line-height: 24px;
  display: block;
  cursor: pointer;
  color:#000;
  position: relative;
  display: table-cell;
  vertical-align: middle;
  box-sizing: border-box;
  padding:0 50px 0 20px;
}
.qa_summary:hover dl dd{
  transition: 0.2s ease all;
  padding:0 50px 0 25px;
}


details.qa_accordion[open] .qa_summary dl dt span.en_bold{
  color: #FFF;
  border: 2px solid #00479B;
  background:#00479B;
}


.qa_summary span.icon{
  display: block;
  width:10px;
  height:11px;
  position: absolute;
  top:16px;
  right:23px;
}
details.qa_accordion .qa_summary span.icon:before{
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background: #00479B;
  position: absolute;
  top:5px;
  left:0px;
  transform: rotate(43deg);
  transition: all ease 0.2s;
}
details.qa_accordion .qa_summary span.icon:after{
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background: #00479B;
  position: absolute;
  top:5px;
  left:7px;
  transform: rotate(-43deg);
  transition: all ease 0.2s;
}
details.qa_accordion[open] .qa_summary span.icon:before{
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background: #00479B;
  position: absolute;
  top:5px;
  left:0;
  transform: rotate(0);
}
details.qa_accordion[open] .qa_summary span.icon:after{
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background: #00479B;
  position: absolute;
  top:5px;
  right:0;
  transform: rotate(0);
}
.qa_acd_container {
  margin-top:15px;
  overflow: hidden;
  background: #EAEDF0;
  padding:20px;
  font-size: 14px;
  line-height: 24px;
}
.product_content p.copy{
  font-size: 12px;
  line-height: 18px;
  margin-bottom: 20px;
}

.qa_acd_container .image_column{
  margin: 20px 0;
}
.qa_acd_container .image_column.column2{
}
.qa_acd_container .image_column dl{
  width:100%;
}
.qa_acd_container .image_column dl:first-child{
  margin-bottom: 20px;
}
.qa_acd_container .image_column dl dt{
  font-size: 12px;
  margin-bottom:15px;
  text-align: center;
}
.qa_acd_container .image_column dl dd{
  width:100%;
}

.qa_acd_container ul{
  margin-bottom:20px;
}
.qa_acd_container ul:last-child{
  margin-bottom:0;
}


.caption_box{
  margin-top:20px;
  border:1px solid #DEDEDE;
  box-sizing: border-box;
  padding:15px 20px;
}
.caption_box h4{
  font-size: 14px;
  line-height:24px;
  margin-bottom:15px;
}
.caption_box .column2{
  display: flex;
  flex-wrap: wrap;
}
.caption_box .column2 .left,
.caption_box .column2 .right{
  width: 47.5%;
}
.caption_box .column2 .left{
  margin-right: 5%;
}
.caption_box dl dt,
.caption_box dl dd{
  padding-left:15px;
}
.caption_box dl dt{
  font-size: 16px;
  line-height: 28px;
  background: url(../images/product_syosai_list_icon.png) no-repeat center left;
  background-size: 8px;
}
.caption_box dl dd{
  font-size: 14px;
  line-height: 26px;
}

#control_power ul li{
  font-size: 14px;
  line-height:24px;
  background: url(../images/product_syosai_list_icon.png) no-repeat top 8px left;
  background-size: 8px;
  padding-left:16px;
}
#ground ul li{
  font-size: 14px;
  line-height:24px;
  background: url(../images/product_syosai_list_icon.png) no-repeat top 8px left;
  background-size: 8px;
  padding-left:16px;
}
#ground .cap{
  font-size: 12px;
  line-height:18px;
  padding-top: 10px;
}
#ground .caption_box ul li{
  list-style: disc;
  background: none;
  padding-left: 0;
  margin-left: 20px;
}
.product_content .gray_box{
  background: #F2F2F2;
  padding:20px;
  margin-bottom:20px;
}
.product_content .gray_box .box_inner{
}
.product_content .gray_box .box_inner .left,
.product_content .gray_box .box_inner .right{
  width:100%;
  background: #FFF;
}
.product_content .gray_box .box_inner .left{
  margin-bottom: 10px;
}
.product_content .gray_box .box_inner h4{
  font-size: 16px;
  line-height: 50px;
  background: #A3A3A3;
  color: #FFF;
  padding: 0 20px;
  box-sizing: border-box;
}
.product_content .gray_box .box_inner ul{
  padding:15px 20px;
}
.product_content .gray_box .box_inner ul li{
  padding-bottom:10px;
}
.product_content .gray_box .box_inner ul li:last-child{
  margin-bottom:0;
}
.product_content .gray_box .box_inner ul li dl dt{
  font-size: 14px;
  line-height: 26px;
  padding-bottom:5px;
  border-bottom: 1px solid #000;
  margin-bottom:5px;
}
.product_content .gray_box .box_inner ul li dl dd{
  font-size: 14px;
  line-height: 24px;
}
.product_content .gray_box .cap_list ul{
  padding-top: 20px;
}
.product_content .gray_box .cap_list ul li{
  font-size: 12px;
  line-height: 18px;
  text-indent: -30px;
  padding-left: 30px;
  padding-bottom: 10px;
}
.product_content .gray_box .cap_list ul li:last-child{
  padding-bottom: 0;
}
.product_content .gray_box .cap_list ul li span{
  font-size: 12px;
  line-height: 18px;
  padding-right:10px;
}
.product_content .btn_list ul{
  display: flex;
  flex-wrap: wrap;
}
.product_content .btn_list ul li{
  width:32%;
  text-align: center;
  margin-right:2%;
}
.product_content .btn_list ul li:nth-child(3n){
  margin-right: 0;
}
.product_content .btn_list ul li a{
  font-size: 13px;
  line-height:40px;
  letter-spacing: 0;
  display: block;
  border:#00479B 1px solid;
  color:#00479B;
  border-radius:40px;
  transition: 0.2s ease all;
}
.product_content .btn_list ul li a:hover{
  background:#00479B;
  color:#FFF;
}

.product_content ul.related_list{
  display: flex;
  flex-wrap:wrap;
}
.product_content ul.related_list li{
  width:47.5%;
  margin-right:5%;
  margin-bottom:10%;
}
.product_content ul.related_list li:nth-child(2n){
  margin-right: 0;
}
.product_content ul.related_list li dl dt{
  padding-bottom:30px;
}
.product_content ul.related_list li dl dd{
  font-size: 12px;
  text-align: center;
}




/*COMMON*/
.ft_pan{
  display: none;
}

.ft_contact{
  width:100%;
  background: url(../../english/images/ft_contact_bg_sp.jpg) no-repeat bottom left;
  background-size: cover;
  position: relative;
  padding: 40px 0 320px;
  position: relative;
  z-index: 1;
}
.ft_contact .wrap{
  width:90%;
  margin: 0 auto;
  text-align: center;
}
.ft_contact .wrap h3{
  font-size:42px;
  text-align: center;
  padding-bottom:10px;
  color: #FFF;
}
.ft_contact .wrap h4{
  font-size:14px;
  line-height: 24px;
  color: #FFF;
  padding-bottom:30px;
}
.ft_contact .wrap ul{
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 25w0px;
}
.ft_contact .wrap ul li{
  width:48.5%;
  margin-right:3%;
  margin-bottom:10px;
  color: #00479B;
}
.ft_contact .wrap ul li:nth-child(2n){
  margin-right:0;
}
.ft_contact .wrap ul li a{
  font-size: 12px;
  line-height:40px;
  letter-spacing: 0;
  text-align: center;
  color: #00479B;
  position: relative;
  box-sizing: border-box;
  background: #FFF;
  border-radius:20px;
}


#pagetop{
  width:17px;
  position: fixed;
  bottom:20px;
  right:10px;
  z-index: 999;
}

footer{
  background: #00479B;
  padding:30px 0;
  position: relative;
  z-index: 1;
}

footer .wrap.main{
  width:85%;
  margin: 0 auto;
}
footer .wrap .left{
  width: 100%;
  margin-bottom:30px;
}
footer .wrap .left h2{
  width:150px;
  margin-bottom:20px;
}
footer .wrap .left ul{
  width:100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  padding:10px 0;
}
footer .wrap .left ul li{
  margin-right: 15px;
}
footer .wrap .left ul li a{
  font-size: 12px;
  text-align: center;
  padding:5px 0;
  display: block;
  color: #FFF;
}
footer .wrap .right h3{
  margin-bottom:15px;
}  
footer .wrap .right{
  width:100%;
}
footer .wrap .right .row{
  width:100%;
}
footer .wrap .right .row h3 a{
  font-size:16px;
  color: #FFF;
}
footer .wrap .right .row ul{
  padding-bottom:15px;
  display: flex;
  flex-wrap: wrap;
}
footer .wrap .right .row ul li{
  width:45%;
  margin-right: 5%;
  margin-bottom:5px;
  padding-left: 10px;
  box-sizing: border-box;
  position: relative;
}
footer .wrap .right .row ul li:nth-child(2n){
  width:50%;
  margin-right:0;
}
footer .wrap .right .row ul li:before{
  content: "";
  display: block;
  width: 5px;
  height: 1px;
  background: #8AB4D6;
  position: absolute;
  top: 8px;
  left: 0;
}

footer .wrap .right .row ul li a{
  font-size: 10px;
  line-height:16px;
  color: #8AB4D6;
}

footer .wrap .right .row ul li a br{
  display: none;
}


footer .wrap.sub{
  width:85%;
  padding-top:20px;
  border-top:#FFF 1px solid;
  margin:40px auto 0;
}
footer .wrap ul.sub_menu{
  align-items: center;
  width:100%;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
footer .wrap ul.sub_menu li{
  margin-bottom:10px;
  margin-right:10px;
  box-sizing: border-box;
}
footer .wrap ul.sub_menu li:last-child{
  width:25px;
  margin-right: 0;
  margin-bottom: 3px;
}
footer .wrap ul.sub_menu li a{
  font-size: 10px;
  line-height:25px;
  color: #FFF;
  display: block;
}
footer .wrap .copyright{
  width:100%;

}
footer .wrap .copyright small{
  font-size: 10px;
  color: #FFF;
  display: block;
}


#strengths .cover{
  position: relative;
}
#strengths .cover:after{
  content: "";
  display: block;
  width:100%;
  height: 100%;
  background:#00469A;
  position: absolute;
  left:0%;
  top: 0;
  z-index: -1;
}
#strengths .mv{
  position: relative;
}

#strengths .mv .figure{
  width:100%;
  height:0;
  padding-bottom:60%;
  position: relative;
  overflow: hidden;
}

#strengths .mv .figure figure{
    position: absolute;
    top:80%;
    left:50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    will-change: transform;
}
#strengths .mv .figure figure video{
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;

}


#strengths .mv .figure .txt_block{
  z-index: 50;
}
#strengths .mv .figure .txt_block,
#strengths .mv .txt_block{
  position: absolute;
  bottom:-50px;
  left:5%;
}
#strengths .mv .figure .txt_block h4,
#strengths .mv .txt_block h4{
  font-size:32px;
  line-height:50px;
}

#strengths .mv .txt_block.white h4{color: #fff;}
#strengths .mv .txt_block.black h4{color: #FFF;}
  
#strengths .message{
  padding:70px 5% 30px;
}
#strengths .message p{
  font-size: 14px;
  line-height:26px;
  text-align: justify;
  color: #FFF;
  margin-bottom:30px;
}

#strengths .message .btn{
  width: 284px;
}

#strengths .message .btn a{
  border: 1px solid #FFF;
  display: inline-block;
  padding: 20px 40px;
  color: #FFF;
  box-sizing: border-box;
  position: relative;
}
#strengths .message .btn a:after{
  content:"";
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #FFF;
  position: absolute;
  top: -4px;
  left:10px;
}
#strengths .message .btn a:hover:after{
  animation:0.5s linear btn_anime;
}

#strengths .challenging{
  width:100%;
  position: relative;
  background: #FFF;
  padding: 30px 0 0;
}
#strengths .challenging .title{
  width: 90%;
  margin: 0 auto;
}
#strengths .challenging .title h3{
  font-size:30px;
  margin-bottom: 15px;
}
#strengths .challenging .title h2{
  font-size:16px;
  margin-bottom:20px;
}
#strengths .challenging .title p{
  font-size:14px;
  line-height:24px;
  text-align: justify;
  padding-bottom:20px;
}

#strengths .challenging .title a{
  display: inline-block;
  background: #00469A;
  color: #FFF;
  padding:15px 20px;
  border-radius:30px;
  margin-bottom:30px;

}
#strengths .challenging .swiper figure{
  width:100%;
  /*padding-left: 420px;
  padding-top:100px;*/
}

#strengths .challenging .swiper .slide-content{
  width:100%;
  background: #F2F2F2;
  padding:20px 5%;
  box-sizing: border-box;
}
#strengths .challenging .swiper .slide-content dl{
  height:150px;
}
#strengths .challenging .swiper .slide-content dl dt{
  font-size:20px;
  line-height:28px;
  color:#00469A;
  margin-bottom:5px;
}
#strengths .challenging .swiper .slide-content dl dt span{
  font-size:16px;
  line-height:28px;
  color:#00469A;
}
#strengths .challenging .swiper .slide-content dl dd{
  font-size: 14px;
  line-height: 24px;
  text-align: justify;
}
#strengths .challenging .swiper .slide-content dl dd a{
  display:block;
  width: 140px;
  margin: 10px auto;
  background: #00469A;
  color: #FFF;
  font-size: 14px;
  padding:15px 20px;
  border-radius:30px;
  text-align: center;
}
#strengths .challenging .swiper .swiper-pagination{
  width:100%;
  text-align: center;
  position: absolute;
  bottom: 20px;
  left: 0;
}

#strengths .challenging .swiper .swiper-pagination span.swiper-pagination-bullet-active{
  background:#14469A;
}

#strengths .strong_point{
  width: 100%;
  position: relative;
  z-index:0;
  background: #00469A;
}
#strengths .strong_point .movieblock01,
#strengths .strong_point .movieblock02,
#strengths .strong_point .movieblock03{
  position: relative;
  display: block;
  width: 100%;
}


#strengths .strong_point .movieblock01 .bgmovie,
#strengths .strong_point .movieblock02 .bgmovie,
#strengths .strong_point .movieblock03 .bgmovie{
  width: 100%;
  height:100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index:-1;
  overflow: hidden;
}
#strengths .strong_point .movieblock01 .bgmovie video,
#strengths .strong_point .movieblock02 .bgmovie video,
#strengths .strong_point .movieblock03 .bgmovie video{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
}

#strengths .strong_point .movieblock01 .bgmovie.blacklayer .blacklayer,
#strengths .strong_point .movieblock02 .bgmovie.blacklayer .blacklayer,
#strengths .strong_point .movieblock03 .bgmovie.blacklayer .blacklayer{
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index:3;
  background:rgba(0,0,0,0);
  transition: all ease 1s;
  opacity: 1;
}
#strengths .strong_point .movieblock01 .bgmovie .blacklayer,
#strengths .strong_point .movieblock02 .bgmovie .blacklayer,
#strengths .strong_point .movieblock03 .bgmovie .blacklayer{
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index:3;
  background:rgba(0,0,0,.8);
  transition: all ease 0s;
  opacity: 0;
}


#strengths .strong_point .movieblock01 .bgmovie video.pc_movie,
#strengths .strong_point .movieblock01 .bgmovie video.pc_movie,
#strengths .strong_point .movieblock01 .bgmovie video.pc_movie{
  display: none;
}

#strengths .strong_point .movieblock01 .bgmovie:after,
#strengths .strong_point .movieblock02 .bgmovie:after,
#strengths .strong_point .movieblock03 .bgmovie:after{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index:2;
  background: linear-gradient(0deg, rgba(0,0,0,.80), transparent 90%);
}



#strengths .strong_point .left_block{
  position: absolute;
  bottom:20px;
  left:5%;
}
#strengths .strong_point .left_block h2{
  font-size:16px;
  color: #FFF;
  margin-bottom: 15px;
}
#strengths .strong_point .left_block h3{
  font-size:24px;
  line-height:36px;
  border-left: 1px solid #FFF;
  padding-left:15px;
  color: #FFF;
  margin-bottom: 15px;
}
#strengths .strong_point .left_block h3 span{
  line-height:36px;
  
}
#strengths .strong_point .left_block p{
  width: 95%;
  font-size:12px;
  line-height:18px;
  color: #FFF;
  text-align: justify;
  margin-bottom: 20px;
}
#strengths .strong_point .left_block ul{
  font-size: 0;
}
#strengths .strong_point .left_block ul li{
  display: inline-block;
  margin-right:15px;
}
#strengths .strong_point .left_block ul li:last-child{
  margin-right: 0;
}
#strengths .strong_point .left_block ul a{
  font-size:12px;
  padding:0 10px;
  border:none;
  color: #FFF;
  width:100%;
  text-align: center;
  line-height:24px;
  opacity: 0.3;
  display: block;
  box-sizing: border-box;
}
#strengths .strong_point .left_block ul li a.current{
  border-bottom:1px solid #00469B;
  color:#FFF;
  opacity:1;
}

#strengths .strong_point .right_block{
  display: none;
}

#strengths .movie_wrap .left_block h2,
#strengths .movie_wrap .left_block h3,
#strengths .movie_wrap .left_block p{
  display: none;
}
#strengths .movie_wrap .bgmovie {
  opacity: 0;
}
#strengths .movie_wrap .left_block h2.current,
#strengths .movie_wrap .left_block h3.current,
#strengths .movie_wrap .left_block p.current {
  display: block;
}
#strengths .movie_wrap .bgmovie.current {
  opacity: 1;
}

/* タイピング文字のスタイルをリセット */
#strengths .movie_wrap h2>.char,#strengths .movie_wrap h3>.char {
  padding: inherit;
  display: inline;
  font-size: inherit;
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  padding: 0;
}

#strengths .movie_wrap {
  position: relative;
}



#company .contents_header .title{
  position: relative;
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  align-items:flex-end  ;
}
#company .contents_header .title p br{
  display: none;
}
#company .mv{
  width:100%;
}

#company .mv .cover{
  padding-top: 50px;
  overflow: clip;
}

#company .cover .wrap{
  width:100%;
  padding: 0 0 0 10%;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
}
#company .cover .wrap aside{
  display: none;
}

#company .cover .wrap .content .company_content{
}


#company .cover .wrap .content{
  position: relative;
  top: 0;
  opacity: 1;
  z-index: 0;
  width:100%;
  padding-top:30px;
}
#company .cover .wrap .content:after{
  content: "";
  display: block;
  width:80px;
  height: 100%;
  background: #00368E;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
#company .cover .wrap .content .message{
  position: relative;
  padding-bottom:50px;
}
#company .cover .wrap .content .title{
  margin-bottom:30px;
}

#company .cover .wrap .content .message .title{
  margin-bottom:160px;
}

#company .cover .wrap .content .title.border{
  padding-bottom: 20px;
  border-bottom: 1px solid #EBEBEB;
  position: relative;
  margin-bottom:20px;
}
#company .cover .wrap .content .title.border:after{
  content: "";
  display: block;
  width: 20px;
  height: 2px;
  position: absolute;
  left: 0;
  bottom:-1px;
  background: #00469B;
}
#company .cover .wrap .content .title h2{
  font-size:20px;
  line-height:28px;
  color: #00368E;
}
#company .cover .wrap .content .title h1{
  font-size:14px;
}

#company .cover .wrap .content h3{
  font-size:16px;
  line-height:24px;
}
#company .cover .wrap .content .message h3{
  font-size:24px;
  line-height:40px;
  color: #00368E;
  margin-bottom:20px;
  position: relative;
  z-index: 2;
}
#company .cover .wrap .content .message p{
  width: calc(95% - 80px);
  font-size: 14px;
  line-height:28px;
  position: relative;
  z-index: 2;
  margin-bottom:20px;
}
#company .cover .wrap .content .message p br{
  display: none;

}
#company .cover .wrap .content .message dl{
}
#company .cover .wrap .content .message dl dt{
  margin-bottom:10px;
}

#company .cover .wrap .content .message dl dt,
#company .cover .wrap .content .message dl dd{
  font-size:14px;
  line-height:28px;
}


#company .cover .wrap .content .message figure{
  width:90%;
  position: absolute;
  top:70px;
  left:10%;
  z-index:0;
}

#company .cover .wrap .content .philosophy{
   background: #EAEDF0;
   padding:30px 20px;
   box-sizing: border-box;
}
#company .cover .wrap .content .philosophy ul li{
  margin-bottom:30px;
}
#company .cover .wrap .content .philosophy ul li:last-child{
  margin-bottom: 0;
}
#company .cover .wrap .content .philosophy ul li dl dt{
  font-size:18px;
  margin-bottom:15px;
  color: #00368E;
}
#company .cover .wrap .content .philosophy ul li dl dd{
  font-size:13px;
  line-height:24px;
  letter-spacing: 0;
  text-align: justify;
}
#company .cover .wrap .content .overview{
  background:#FFF;
  padding-top:40px;
  width: 90%;
  padding-right:10%;
}

#company .cover .wrap .content .overview ul li:first-child{
  padding-top: 0;
}
#company .cover .wrap .content .overview ul li{
  border-bottom: 1px solid #DEDEDE;
  padding:15px 0;
}
#company .cover .wrap .content .overview ul li:last-child{
  border-bottom: none;
  padding-bottom: 15px;
}



#company .cover .wrap .content .overview ul li dl{
}
#company .cover .wrap .content .overview ul li dl dt,
#company .cover .wrap .content .overview ul li dl dd{
  font-size:14px;
  line-height: 24px;
}
#company .cover .wrap .content .overview ul li dl dt{
  margin-bottom:7px;
}

#company .cover .wrap .content .overview ul li dl dd dl{
  display: flex;
  flex-wrap: wrap;
  padding-bottom:15px;
}
#company .cover .wrap .content .overview ul li dl dd dl dt{
  padding-right:10px;
  margin-bottom:0px;
}
#company .cover .wrap .content .overview ul li dl dd dl dd{
  width: 100%;
}
#company .cover .wrap .content .overview p.cap{
  font-size: 12px;
  line-height: 16px;
}

#company .cover .wrap .content .business_introduction{
  background: #FFF;
  padding-top:40px;
  width: 90%;
  padding-right: 10%;
}
#company .cover .wrap .content .business_introduction p{
  font-size:14px;
  margin-bottom:30px;
}
#company .cover .wrap .content .business_introduction p a{
  display: inline-block;
  text-decoration: underline;
  text-underline-offset:5px;
  color:#00479B;
}
#company .cover .wrap .content .business_introduction ul{
  display: flex;
  flex-wrap: wrap;
}
#company .cover .wrap .content .business_introduction ul li{
  width:47.5%;
  margin-right:5%;
  margin-bottom:5%;
}
#company .cover .wrap .content .business_introduction ul li:nth-child(2n){
  margin-right: 0;
}
#company .cover .wrap .content .business_introduction ul li dl dt{
  margin-bottom:5px;
}
#company .cover .wrap .content .business_introduction ul li dl dd{
  font-size:12px;
  line-height:18px;
  letter-spacing: 0;
  text-align: center;
}

#company .cover .wrap .content .history{
  background: #FFF;
  padding-top:40px;
  width: 90%;
  padding-right: 10%;
}
#company .cover .wrap .content .tab-container {
  width:100%;
  margin: auto;
}
#company .cover .wrap .content .tab-buttons{
  display: flex;
  justify-content: space-between;
}
#company .cover .wrap .content .tab-button{
  width:50%;
  flex: 1;
  background: #CBCBCB;
  text-align: center;
  cursor: pointer;
  transition: background 0.3s ease;
  font-size:14px;
  line-height:40px;
  color: #FFF;
  letter-spacing: 0;
}
#company .cover .wrap .content .tab-button:first-child{
  margin-right:0px;
}
#company .cover .wrap .content .tab-button:hover {
  background: #00479B;
  color: #FFF;
}
#company .cover .wrap .content .tab-button.active {
  background: #00479B;
}
#company .cover .wrap .content .tab-content {
  display: none;
  padding:20px 0 0;
}
#company .cover .wrap .content .tab-content ul{
  position: relative;
}
#company .cover .wrap .content #tab1 ul:after{
  top: 10px;
  right:8px;
  z-index:0;
}
#company .cover .wrap .content .tab-content ul:after{
  content: "";
  display: block;
  width:2px;
  height: 100%;
  background: #00479B;
  position: absolute;
  top: 0;
  right:8px;
  z-index:0;
}
#company .cover .wrap .content .tab-content ul li{
  padding-bottom:20px;
  position: relative;
}

#company .cover .wrap .content .tab-content ul li:after{
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  border: 2px solid #00479B;
  background: #FFF;
  position: absolute;
  top: 9px;
  right:2px;
  border-radius:50%;
  box-sizing: border-box;
  z-index:1;
}

#company .cover .wrap .content .tab-content ul li dl{
}
#company .cover .wrap .content .tab-content ul li dl dt{
  background: url(../images/history_bg.png) no-repeat;
  background-size: 100%;
  width: 177px;
  font-size: 14px;
  line-height: 38px;
  text-align: center;
  color:#00479B;
  position: relative;
  margin-bottom: 10px;
}

#company .cover .wrap .content .tab-content ul li dl dd{
  width:90%;
  padding-top:3px;
  font-size: 14px;
  line-height:28px;
  letter-spacing: 0;
}


#company .cover .wrap .content .tab-content.active {
  display: block;
}

#company .cover .wrap .content .access{
  background: #FFF;
  padding-top:40px;
  width: 90%;
  padding-right: 10%;
}
.access_btn{
  position: absolute;
  top: 0;
  right: 0;
}
.access_btn a{
  font-size: 14px;
  width:140px;
  text-align: center;
  line-height: 40px;
  color: #FFF;
  background: #00479B;
  border-radius: 10px;
}
.accessmap_modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(15,47,96,0.95);
}

.accessmap_modal .modal-content {
  background-color: white;
  margin: 50% auto;
  padding:10px;
  border-radius: 10px;
  width:90%;
  box-sizing: border-box;
  position: relative;
  text-align: center;
}

.accessmap_modal .close {
  position: fixed;
  top:10px;
  right:10px;
  cursor: pointer;
  width: 35px;
  height: 35px;
  display: block;
}
.accessmap_modal span:before{
  content: "";
  width: 35px;
  height: 1px;
  background: #FFF;
  display: block;
  transform: rotate(45deg);
  position:absolute;
  top:25px;
  right: 0;
}
.accessmap_modal span:after{
  content: "";
  width: 35px;
  height: 1px;
  background: #FFF;
  display: block;
  transform:rotate(-45deg);
  position:absolute;
  top:25px;
  right: 0;
}


.soshiki_modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(15,47,96,0.95);
}

.soshiki_modal .modal-content {
  background-color: white;
  margin: 50% auto;
  padding:10px;
  border-radius: 10px;
  width:90%;
  box-sizing: border-box;
  position: relative;
  text-align: center;
}

.soshiki_modal .close {
  position: fixed;
  top:10px;
  right:10px;
  cursor: pointer;
  width: 35px;
  height: 35px;
  display: block;
}
.soshiki_modal span:before{
  content: "";
  width: 35px;
  height: 1px;
  background: #FFF;
  display: block;
  transform: rotate(45deg);
  position:absolute;
  top:25px;
  right: 0;
}
.soshiki_modal span:after{
  content: "";
  width: 35px;
  height: 1px;
  background: #FFF;
  display: block;
  transform:rotate(-45deg);
  position:absolute;
  top:25px;
  right: 0;
}





#company .cover .wrap .content .access .block{
  padding-bottom: 50px;
}
#company .cover .wrap .content .access .block.half ul li{
  width: 100%;
}


#company .cover .wrap .content .access .block h4{
  font-size:16px;
  color: #00479B;
  margin-bottom:15px;
}
#company .cover .wrap .content .access .block ul{
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid #DEDEDE;
  border-left: 1px solid #DEDEDE;
  box-sizing: border-box;
}
#company .cover .wrap .content .access .block ul li{
  width:100%;
  box-sizing: border-box;
  border-right: 1px solid #DEDEDE;
  border-bottom: 1px solid #DEDEDE;
  padding:20px;
  box-sizing: border-box;
}
#company .cover .wrap .content .access .block ul li .access_head{
  border-bottom: 1px solid #DEDEDE;
  padding-bottom:20px;
  margin-bottom:20px;
}
#company .cover .wrap .content .access .block ul li .access_head h5{
  font-size: 16px;
  line-height:28px;
  margin-bottom: 15px;
}
#company .cover .wrap .content .access .block ul li .access_head h5 a{
  font-size: 12px;
  color:#00479B;
  display: block;
  margin-top:3px;
  transition: all ease 0.2s;
}
#company .cover .wrap .content .access .block ul li .access_head h5 a:hover{
  text-decoration: underline;
}
#company .cover .wrap .content .access .block ul li .access_head .gmap_btn{
  width: 135px;
}
#company .cover .wrap .content .access .block ul li .access_head .gmap_btn a{
  font-size: 14px;
  line-height: 30px;
  display: block;
  background: #A3A3A3 url(../images/company_access_icon.png) no-repeat left 14px center;
  background-size: 18px;
  color: #FFF;
  border-radius: 7px;
  text-indent: 38px;
  letter-spacing: 0;
  transition: all ease 0.2s;
}
#company .cover .wrap .content .access .block ul li .access_head .gmap_btn a:hover{
  background: #646464 url(../images/company_access_icon.png) no-repeat left 14px center;
  background-size: 18px;
}
#company .cover .wrap .content .access .block ul li dl{
  display: flex;
  flex-wrap: wrap;
}
#company .cover .wrap .content .access .block ul li dl dt{
  width:80px;
  font-size: 14px;
  line-height:22px;
}
#company .cover .wrap .content .access .block ul li dl dd{
  width: calc(100% - 80px);
  font-size: 14px;
  line-height:22px;
}
#company .cover .wrap .content .meterial_procurement{
  background: #FFF;
  padding-top:40px;
  width: 90%;
  padding-right: 10%;
}
#company .cover .wrap .content .meterial_procurement .gray_box{
  background:#F2F2F2;
}
#company .cover .wrap .content .meterial_procurement .gray_box ul{
  padding:25px 20px;
}
#company .cover .wrap .content .meterial_procurement .gray_box ul li{
  margin-bottom:30px;
}
#company .cover .wrap .content .meterial_procurement .gray_box ul li:last-child{
  margin-bottom:0;
}
#company .cover .wrap .content .meterial_procurement .gray_box h4{
  font-size: 20px;
  letter-spacing: 0;
  margin-bottom:15px;
  color: #00479B;
}
#company .cover .wrap .content .meterial_procurement .gray_box p{
  font-size: 14px;
  line-height:24px;
}
#company .cover .wrap .content .meterial_procurement .gray_box .w_box{
  background: #FFF;
  padding:25px 20px;
  border: 1px solid #F2F2F2;
}
#company .cover .wrap .content .meterial_procurement .gray_box .w_box dl{
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #000;
  border-left: 1px solid #000;
  box-sizing: border-box;
}
#company .cover .wrap .content .meterial_procurement .gray_box .w_box dl .chotatsu{
  width: 100px;
}

#company .cover .wrap .content .meterial_procurement .gray_box .w_box dl dt{
  background:#F2F2F2;
}

#company .cover .wrap .content .meterial_procurement .gray_box .w_box dl dd.chotatsu{
  font-weight: bold;
}
#company .cover .wrap .content .meterial_procurement .gray_box .w_box dl dt,
#company .cover .wrap .content .meterial_procurement .gray_box .w_box dl dd{
  width:calc(100% - 100px);
  font-size: 14px;
  line-height:24px;
  padding: 10px 15px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  box-sizing: border-box;
}


#company .cover .wrap .content .quality_polcy{
  background: #FFF;
  padding-top:40px;
  width: 90%;
  padding-right: 10%;
}

#company .cover .wrap .content .quality_polcy .iso_list{
  display: flex;
  flex-wrap: wrap;
}
#company .cover .wrap .content .quality_polcy .iso_list div{
  width:40%;
}
#company .cover .wrap .content .quality_polcy .iso_list div.left{
  margin-right:10%;
}
#company .cover .wrap .content .quality_polcy .iso_list div a{
  transition: all 0.2s ease;
}
#company .cover .wrap .content .quality_polcy .iso_list div a:hover{
  opacity: 0.5;
}


#company .cover .wrap .content .helth_and_productivity_management{
  background: #FFF;
  padding-top: 40px;
  width: 90%;
  padding-right: 10%;
}
#company .cover .wrap .content .helth_and_productivity_management ul li{
  padding-bottom:30px;
  border-bottom: 1px solid #DEDEDE;
  margin-bottom:30px;
}
#company .cover .wrap .content .helth_and_productivity_management ul li:last-child{
  margin-bottom: 0;
}
#company .cover .wrap .content .helth_and_productivity_management ul li h4{
  font-size:20px;
  line-height:28px;
  letter-spacing: 0;
  margin-bottom:20px;
  color: #00479B;
}
#company .cover .wrap .content .helth_and_productivity_management ul li p{
  font-size: 14px;
  line-height:24px;
}
#company .cover .wrap .content .helth_and_productivity_management ul li p.txt_right{
  padding-top: 20px;
}
#company .cover .wrap .content .helth_and_productivity_management ul li .colum02{

}
#company .cover .wrap .content .helth_and_productivity_management ul li .colum02 .left{
  width:100%;
  margin-bottom:20px;
}
#company .cover .wrap .content .helth_and_productivity_management ul li .colum02 .right{
  width:100%;
}
#company .cover .wrap .content .helth_and_productivity_management ul li .colum02 .right figure{
  margin-bottom: 20px;
}




/*製品一覧*/

#product_list .cover{
/*  height: 100vh;*/
  background:#DEDEDE;
  background-size: cover;
}

#product_list .slideshow_overflow{
  width: 100%;
  height:100px;
  overflow: hidden;
  display:block !important;
  margin-bottom:0 !important;
  position: fixed;
  bottom:50px;
  left: 0;
  z-index:0;
  opacity: 0.2;
}
#product_list .slideshow_wrap {
  display: flex;
  align-items: center;
  width: 100%;
  height:100px; 
  transform: translate3d(0,0,0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  will-change: transform,animation,position;
}
#product_list .cover aside{
  transform: translateX(-100%);
  width:100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index:9998;
  transition: all 0.2s ease;
}
#product_list .cover aside.active{
  transform: translateX(0%);
}
#product_list .cover aside:before{
  content: "";
  display: block;
  width:30%;
  height: 100%;
  position: absolute;
  top: 0;
  right:0%;
  background:rgba(0, 0, 0, 0.6);
  transition: all 0.2s ease;
  transition-delay: 0.2s;
  opacity: 0;
}
#product_list .cover aside.active:before{
  opacity: 1;
}

#product_list .cover aside .aside_close{
  width:30px;
  height:30px;
  position: absolute;
  top:25px;
  right:25px;
  display: block;
  cursor: pointer;
}
#product_list .cover aside .aside_close:before{
  content: "";
  display: block;
  width:40px;
  height:2px;
  background: #FFF;
  transform: rotate(45deg);
  position: absolute;
  top: 14px;
  left: -5px;
}
#product_list .cover aside .aside_close:after{
  content: "";
  display: block;
  width:40px;
  height:2px;
  background: #FFF;
  transform: rotate(-45deg);
  position: absolute;
  top: 14px;
  left: -5px;
}
#product_list .cover aside .inner{
  width:70%;
  height: 100%;
  padding: 30px 20px 0;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left:0;
  background: #FFF;
}

#product_list .cover aside .inner ul{
  margin-bottom: 30px;
}
#product_list .cover aside .inner ul li a{
  font-size: 15px;
  line-height: 20px;
  padding: 5px 0;
  position: relative;
}
#product_list .cover aside .inner ul li a:before{
  content: "";
  display: block;
  width: 5px;
  height:30px;
  background:transparent;
  position: absolute;
  top: 0;
  left: -37px;
}
#product_list .cover aside .inner ul li a.on{
  color: #00368E;
}
#product_list .cover aside .inner ul li a.on:before{
  content: "";
  display: block;
  width: 5px;
  height:30px;
  background:#00368E;
  position: absolute;
  top: 0;
  left: -37px;
}

#product_list .cover aside .inner ul li a dl{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
#product_list .cover aside .inner ul li a dl dt{
  font-size: 14px;
  line-height: 22px;
  width:40px;
  color: #A3A3A3;
}
#product_list .cover aside .inner ul li a dl dd{
  font-size: 14px;
  line-height: 20px;
  position: relative;
  width: calc(100% - 40px);
  color: #A3A3A3;
}

#product_list .cover aside .inner ul li a:before{
  content: "";
  display: block;
  width: 5px;
  height:24px;
  opacity: 0;
  position: absolute;
  top: 0;
  left: -50px;
}
#product_list .cover aside .inner ul li a:hover dl dt,
#product_list .cover aside .inner ul li a:hover dl dd,
#product_list .cover aside .inner ul li a.on dl dt,
#product_list .cover aside .inner ul li a.on dl dd{
  color: #00479B;
}
#product_list .cover aside .inner ul li a.on:before{
  content: "";
  display: block;
  width: 5px;
  height:24px;
  background:#00479B !important;
  position: absolute;
  top: 0;
  left: -20px;
  opacity:1;
}

#product_list .cover aside .inner .btn a{
  width:100%;
  font-size: 14px;
  text-align: center;
  line-height:50px;
  height:50px;
  padding:0;
  border:#A3A3A3 solid 1px;
  color: #A3A3A3;
  border-radius: 50px;
  transition: all 0.2s ease;
  box-sizing: border-box;
}
#product_list .cover aside .inner .btn a:hover{
  border:#00479B solid 1px;
  color: #FFF;
  background: #00479B;
}


#product_list .slideshow {
  display: flex;
  position: relative;
}

#product_list .slideshow span{
  position: relative;
  font-size:100px;
  padding-right:50px;
  color: #FFF;
  letter-spacing: 0.02em;
  animation: loop-slide 40s infinite linear 1s forwards;
  transform: translate3d(0,0,0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  will-change: transform,animation,position;
  white-space: nowrap;
  animation-duration: 20s;
}
@keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
} 


#product_list .cover .wrap{
  width:100%;
}
#product_list .cover .product_detail{
  width:85%;
  margin: 0 auto;
  position: relative;
  padding:50px 0;
}

#product_list .cover .product_detail .product_list_box{
  width: 100%;
  margin: 0 auto 50px;
  height: auto;
  position: relative;
}
#product_list .cover .product_detail .product_list_box+.product_list_box {
  padding-top: 50px;
}
#product_list .cover .product_detail .product_list_box_content{
  position: relative;
  top: 0;
  opacity: 1;
  z-index: 2;
  width:100%;
  margin: 0 auto;
}
#product_list .cover .product_detail .product_list_box.active .product_list_box_content {
  opacity: 1;
  z-index: 1;
}
#product_list .cover .product_detail.middle .product_list_box_content{
  width: 100%;
  /* position: fixed;
  top:30px;
  left:7.5%; */

}
#product_list .cover .product_detail.end .product_list_box_content{
  width: 100%;
  position: initial;
  top:initial;
  bottom: 0;
}
#product_list .cover .product_detail .product_list_box .text_box{
  width:80%;
  margin-bottom:30px;
}
#product_list .cover .product_detail .product_list_box figure{
  width:95%;
}
#product_list .cover .product_detail .product_list_box .text_box h3{
  margin-bottom:15px;
}
#product_list .cover .product_detail .product_list_box .text_box h3 span{
  font-size:17px;
  line-height:28px;
  font-weight: 700;
}
#product_list .cover .product_detail .side_title{
  position: absolute;
  right:-15px;
  top:-10px;
  width:60px;
  overflow: hidden;
  height:400px;
}


#product_list .cover .product_detail .product_list_box .text_box p{
  font-size:12px;
  line-height:18px;
  margin-bottom:20px;
}

#product_list .cover .product_detail .product_list_box .text_box h3 .char {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

#product_list .cover .product_detail .product_list_box .text_box p {
  opacity: 1 !important;
  transform: translateY(0) !important;
}
#product_list .cover .product_detail .product_list_box .text_box ul li {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

#product_list .cover .product_detail .product_list_box figure{
  opacity: 1 !important;
  transform: translateY(0) !important;
}

#product_list .cover .product_detail .side_title h4{
  font-size:26px;
  color: #00479B;
  transform: rotate(90deg);
  position: absolute;
  top:70px;
  left: -51px;
}
#product_list .cover .product_detail .side_title h5{
  width: 60px;
  height: 60px;
  font-size:24px;
  line-height: 60px;
  text-align: center;
  color: #00479B;
  position: absolute;
  top: 180px;
  left: 0px;
}
#product_list .cover .product_detail .side_title h5 .loader {
  position: absolute;
  top: 0;
  left: 0;
  width: 60px;
  aspect-ratio: 1;
  border: 1px solid #DEDEDE;
  border-radius: 50%;
  transform: rotate(45deg);
  box-sizing: border-box;
}
#product_list .cover .product_detail .side_title h5 .loader>.line {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: 50%;
  border: 1px solid #00479B;
  box-sizing: border-box;
  clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0);
}
#product_list .cover .product_detail .product_list_box.active .side_title h5 .loader>.line.start:not(.complete) {
  animation:product_loader 7s linear;
}
#product_list .cover .product_detail .product_list_box .side_title h5 .loader>.line.complete {
  clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0);
}
@keyframes product_loader {
    0%{
      clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0);
    }
    25%{
      clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0)
    }
    50%{
      clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)
    }
    75%{
      clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%)
    }
    100%{
      clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0)
    }
}

#product_list .cover .product_detail .product_list_box .text_box ul li{
  margin-bottom:8px;
}
#product_list .cover .product_detail .product_list_box .text_box ul li a{
  font-size: 12px;
  line-height: 24px;
  letter-spacing: 0.05em;
  position: relative;
  padding-left: 15px;
  transition: all 0.2s ease;
  display: inline-block;
  width: 100%;
  box-sizing: border-box;
}
#product_list .cover .product_detail .product_list_box .text_box a span.newicon{
  background: #00479B;
  color: #FFF;
  font-size: 12px;
  line-height: 24px;
  padding: 0 10px;
  display:inline-block;
  margin-left: 10px;
}
#product_list .cover .product_detail .product_list_box .text_box a:hover span.newicon{
  color: #FFF;
}


#product_list .cover .product_detail .product_list_box .text_box ul li a span{
  font-size: 13px;
  line-height: 24px;
  letter-spacing: 0.05em;
  position: relative;
  transition: all 0.2s ease;
}
#product_list .cover .product_detail .product_list_box .text_box ul li a:hover,
#product_list .cover .product_detail .product_list_box .text_box ul li a:hover span{
  color: #00479B;
}
#product_list .cover .product_detail .product_list_box .text_box ul li a:after{
  content: "";
  width: 8px;
  height: 1px;
  background: #000;
  position: absolute;
  top: 12px;
  left:0;
}
#product_list .cover .product_detail .product_list_box .text_box ul li .sub_menu{
  padding-top: 10px;
  display: none;
}
#product_list .cover .product_detail .product_list_box .text_box ul li .sub_menu ul li{
  margin-bottom:0;
}
#product_list .cover .product_detail .product_list_box .text_box ul li.arrow a{
  background: url(../images/product_list_arrow.svg) no-repeat right 0 top 10px;
  background-size: 10px;
  cursor: pointer;
  user-select: none;
}
#product_list .cover .product_detail .product_list_box .text_box ul li.arrow a.active{
  background: url(../images/product_list_arrow_active.svg) no-repeat right 0 top 10px;
  background-size: 10px;
  cursor: pointer;
}
#product_list .cover .product_detail .product_list_box .text_box ul li .sub_menu ul li a{
  font-size: 13px;
  background: transparent;
  box-sizing: inherit;
}

#product_list .cover .product_detail .product_list_box .text_box ul li .sub_menu ul li a.active{
  background:none !important;
}
#product_list .cover .product_detail .product_list_box .text_box ul li .sub_menu ul li a:after{
  display: none;
}

#product_list .cover .product_detail .product_list_box figure{
  font-size: 12px;
  text-align: center;  
}


#product_list .product_post{
  position: relative;
  z-index: 500;
}
#product_list .product_post h2{
  font-size:20px;
  font-weight: bold;
  margin-bottom: 20px;
  color:#00479B;
}
#product_list .product_post ul{
  border-top: 1px solid #CCCCCC;
  margin-bottom: 50px;

}
#product_list .product_post ul li{
  padding: 25px 0;
  border-bottom: 1px solid #CCCCCC;
}
#product_list .product_post ul li dl{
  display: flex;
  flex-wrap: wrap;
}
#product_list .product_post ul li dl dt{
  width: 100%;
  font-size: 12px;
  line-height: 22px;
  margin-bottom: 5px;
}
#product_list .product_post ul li dl dt span{
  font-size: 12px;
  line-height: 22px;
  border: 1px solid #CCCCCC;
  border-radius: 22px;
  display: inline-block;
  padding: 0 6px;
  margin-left: 10px;
  color: #A3A3A3;
}
#product_list .product_post ul li dl dd{
  width:100%;
  font-size: 14px;
  line-height: 24px;
}


#product_list .product_post .pager{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: relative;
  margin-bottom:50px;
}

#product_list .product_post .pager div{
  border: none;
  padding:0;
}

#product_list .product_post .pager div a{
  padding: 10px 5px;
  margin:0 3px;
  font-size: 12px;
}

#product_list .product_post .pager div.current{
  background: #00479B;
  color: #FFF;
  width:32px;
  line-height: 32px;
  text-align: center;
  margin:0 3px;
  font-size: 12px;
  border-radius: 50%;
}

#product_list .product_post .pager .pg_before{
  margin-right:10px;
}
#product_list .product_post .pager .pg_after{
  margin-left:10px;
}



.other_product{
  width:100%;
  margin: 0 auto;
  padding:50px 0;
}
.other_product ul{
  width:70%;
  margin: 0 auto;
}
.other_product ul li{
  width:100%;
  margin-bottom:50px;
  position: relative;
}
.other_product ul li:last-child{
  margin-bottom:0;
}
.other_product ul li figure{
  margin-bottom:10px;
  overflow: hidden;
}
.other_product ul li a figure img{
  transition: all ease 0.3s;
  transform: scale(1.0);
}
.other_product ul li figure a{
  display: block;
}
.other_product ul li a dl dt{
  font-size:18px;
  line-height: 32px;
  margin-bottom: 10px;
}
.other_product ul li a dl dd{
  font-size:13px;
  line-height:20px;
  margin-bottom:10px;
}
.other_product ul li .btn{
  width: 100%;
}

.other_product ul li a:hover figure img{
  transform: scale(1.1);
}
.other_product ul li a:hover dl dt{
  color: #00479B;
}


.other_product ul li a .btn{
  width: 100%;
  font-size:14px;
  line-height:24px;
  margin-bottom: 10px;
  border: 0;
  color: #000;
  text-align:left;
  padding:0;
  display: block;
  background:url(../images/blank_icon.png) no-repeat right center;
  background-size: 15px;
}
.other_product ul li a:hover .btn{
  color: #00479B;
  background:url(../images/blank_icon_ho.png) no-repeat right center;
  background-size: 15px;
}

.product_slide .swiper {
  display: flex;
  flex-direction: row;
}


.product_slide .swiper-wrapper {
  --slide-direction: -1; /* スライド流れる向き(1:左方向,-1:右方向) */
  --slide-speed: .5s; /* スライドの秒数 */
  --slide-stop: 3s; /* スライドの停止時間 */
  transform: translateX(calc(-1 * (var(--slide-length) + var(--slide-active-index)) * 33vw));
  transition: transform var(--slide-speed) ease;
}

.product_slide .swiper-slide {
  width: 33vw;
  height: 50vw;
  display: flex;
  align-items: flex-end;
  transition: width var(--slide-speed) ease;
}

.product_slide .swiper-slide.active+.swiper-slide {
  width: 50vw;
}

.product_slide .swiper-wrapper.transition
,.product_slide .swiper-wrapper.transition .swiper-slide {
  transition:none !important;
}




.contents_header{
  margin:110px 5% 0;
}
.contents_header .title{
  position: relative;
  margin-bottom: 10px;
}
.contents_header .title .title_box{
  margin-bottom: 10px;
}
.contents_header .title h1{
  margin-right: 30px;
  font-size: 18px;
  line-height: 18px;
  color: #00479B;
  padding-bottom:10px;
}

.contents_header .title h2{
  font-size:30px;
}

.contents_header .title p{
  font-size: 14px;
  line-height: 24px;
  text-align: left;
}

#strengths #mv{
  margin-bottom: 150px;
}

#strengths #mv .figure{
  width:calc(100% - 182px);
  margin-left:182px;

}
#strengths #mv .figure figure{
  width:100%;
  height: auto;
  height:600px;

  background: url(../images/strengths_mv.png) no-repeat center;
  background-size:cover;
}

  

#ir .contents_header .title{
  position: relative;
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  align-items:flex-end  ;
}
#ir .contents_header .title h1{
  font-size: 16px;
  line-height: 18px;
  color: #00479B;
  padding-bottom: 10px;
}

#ir .contents_header .title h2{
  font-size:35px;
}

#ir .contents_header .title p{
  font-size: 14px;
  line-height: 24px;
  text-align: left;
}
#ir .cover{
  overflow: clip;
}
#ir .cover .wrap{
  width: 100%;
  box-sizing: border-box;
}
#ir .cover .wrap aside{
  display: none;
}

#ir .cover .wrap .content{
  position: relative;
  z-index: 0;
  width:90%;
  margin: 0 auto;
  padding-top: 30px;
}



#ir .cover .wrap .content .sec01 h2{
  font-size:20px;
  font-weight: bold;
  margin-bottom: 20px;
  color:#00479B;
}
#ir .cover .wrap .content .sec01 ul{
  border-top: 1px solid #CCCCCC;
  margin-bottom: 50px;

}
#ir .cover .wrap .content .sec01 ul li{
  padding: 25px 0;
  border-bottom: 1px solid #CCCCCC;
}
#ir .cover .wrap .content .sec01 ul li dl{
  display: flex;
  flex-wrap: wrap;
}
#ir .cover .wrap .content .sec01 ul li dl dt{
  width: 100%;
  font-size: 12px;
  line-height: 22px;
  margin-bottom: 5px;
}
#ir .cover .wrap .content .sec01 ul li dl dt span{
  font-size: 12px;
  line-height: 22px;
  border: 1px solid #CCCCCC;
  border-radius: 22px;
  display: inline-block;
  padding: 0 6px;
  margin-left: 10px;
  color: #A3A3A3;
}
#ir .cover .wrap .content .sec01 ul li dl dd{
  width:100%;
  font-size: 14px;
  line-height: 24px;
}


#ir .cover .wrap .content .sec01 .pager{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: relative;
  margin-bottom:50px;
}

#ir .cover .wrap .content .sec01 .pager div{
  border: none;
  padding:0;
}

#ir .cover .wrap .content .sec01 .pager div a{
  padding: 10px 5px;
  margin:0 3px;
  font-size: 12px;
}

#ir .cover .wrap .content .sec01 .pager div.current{
  background: #00479B;
  color: #FFF;
  width:32px;
  line-height: 32px;
  text-align: center;
  margin:0 3px;
  font-size: 12px;
  border-radius: 50%;
}

#ir .cover .wrap .content .sec01 .pager .pg_before{
  margin-right:10px;
}
#ir .cover .wrap .content .sec01 .pager .pg_after{
  margin-left:10px;
}
#ir .cover .wrap .content .investor_list h2.row_title{
  font-size:20px;
  padding-bottom: 15px;
  border-bottom: 1px solid #DEDEDE;
  margin-bottom:20px;
  color: #00479B;
  position: relative;
}
#ir .cover .wrap .content .investor_list h2.row_title:after{
  content: "";
  display: block;
  width: 20px;
  height:1px;
  background: #00479B;
  position: absolute;
  bottom:-1px;
  left: 0;
}
#ir .cover .wrap .content .investor_list{
  position: relative;
  padding:50px 0;
}
#ir .cover .wrap .content .investor_list:before{
  content: "";
  display: block;
  background: #EEE;
  position:absolute;
  top: 0;
  left: -50%;
  width:200%;
  height: 100%;
  z-index:-1;
}
#ir .cover .wrap .content .investor_list ul{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
#ir .cover .wrap .content .investor_list ul li{
  width:50%;
  padding-bottom:30px;
  border-bottom: 1px solid #DEDEDE;
  box-sizing: border-box;
  position: relative;
}
#ir .cover .wrap .content .investor_list ul li:nth-child(1),
#ir .cover .wrap .content .investor_list ul li:nth-child(3){
  border-right: 1px solid #DEDEDE;
  box-sizing: border-box;  
}
#ir .cover .wrap .content .investor_list ul li:nth-child(2),
#ir .cover .wrap .content .investor_list ul li:nth-child(4){
  padding-left:40px;
}
#ir .cover .wrap .content .investor_list ul li:nth-child(3),
#ir .cover .wrap .content .investor_list ul li:nth-child(4){
  border-bottom:0;
  padding-bottom: 0;
  padding-top:40px;
}

#ir .cover .wrap .content .investor_list ul li figure{
  width: 120px;
  height: 110px;
  margin: 0 auto 20px;
}
#ir .cover .wrap .content .investor_list ul li h3 a{
  font-size:18px;
  color: #00479B;
  margin-bottom: 20px;
}
#ir .cover .wrap .content .investor_list ul li ol li{
  width: 100%;
  border-right:0 !important;
  border-bottom:0 !important;
  padding: 0 !important;
  margin:0 0 5px !important;
}
#ir .cover .wrap .content .investor_list ul li ol li:nth-child(3),
#ir .cover .wrap .content .investor_list ul li ol li:nth-child(4){
  border-bottom:0 !important;
}

#ir .cover .wrap .content .investor_list ul li ol li a{
  font-size: 12px;
  line-height:18px;
  position: relative;
  padding-left: 15px;
  width: 100%;
}
#ir .cover .wrap .content .investor_list ul li ol li a:before{
  content: "";
  display: block;
  width: 8px;
  height: 1px;
  background: #000;
  position: absolute;
  top: 10px;
  left: 0;
}

#ir .cover .wrap .content .investor_list ul li:nth-child(3) figure,
#ir .cover .wrap .content .investor_list ul li:nth-child(4) figure{
  top: 40px;
}



#ir .cover .wrap .content .kanren_info{
  position: relative;
  padding:50px 0;
}
#ir .cover .wrap .content .kanren_info h2.row_title{
  font-size:28px;
  padding-bottom: 15px;
  border-bottom: 1px solid #DEDEDE;
  margin-bottom:30px;
  color: #00479B;
  position: relative;
}
#ir .cover .wrap .content .kanren_info h2.row_title:after{
  content: "";
  display: block;
  width: 20px;
  height:1px;
  background: #00479B;
  position: absolute;
  bottom:-1px;
  left: 0;
}

#ir .cover .wrap .content .kanren_info ul{
  display: flex;
  flex-wrap: wrap;
}
#ir .cover .wrap .content .kanren_info ul li{
  width:100%;
}
#ir .cover .wrap .content .kanren_info ul li:first-child{
  margin-bottom:10px;
}
#ir .cover .wrap .content .kanren_info ul li a{
  width: 100%;
  height: 0;
  padding-bottom: 67%;
  position: relative;
}
#ir .cover .wrap .content .kanren_info ul li:nth-child(1) a{
  background: url(../images/ir_kanren_01.png) no-repeat;
  background-size: 100%;
}
#ir .cover .wrap .content .kanren_info ul li:nth-child(2) a{
  background: url(../images/ir_kanren_02.png) no-repeat;
  background-size:100%;
}
#ir .cover .wrap .content .kanren_info ul li a h3{
  color: #FFF;
  font-size: 18px;
  position: absolute;
  bottom: 15px;
  right: 15px;
}

/*sustainability*/

#sustainability .contents_header .title{
  position: relative;
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  align-items:flex-end  ;
}
#sustainability .contents_header .title .title_box{
  margin-right:30px;
}
#sustainability .contents_header .title h1{
  font-size: 16px;
  line-height: 18px;
  color: #00479B;
  padding-bottom: 10px;
}

#sustainability .contents_header .title h2{
  font-size:35px;
}

#sustainability .contents_header .title p{
  font-size: 14px;
  line-height: 24px;
  text-align: left;
}
#sustainability .cover{
  padding-bottom:50px ;
  overflow: clip;
}
#sustainability .cover .wrap{
  width: 90%;
  margin: 0 auto
}
#sustainability .cover .wrap aside{
  display: none;
}

#sustainability .cover .wrap .content{
  position: relative;
  top: 0;
  opacity: 1;
  z-index: 0;
  width:100%;
  padding-top:30px;
  padding-bottom:30px;
}


#sustainability .cover .wrap .content .sec01 h2{
  font-size:20px;
  font-weight: bold;
  margin-bottom: 20px;
  color:#00479B;
}
#sustainability .cover .wrap .content .sec01 ul{
  border-top: 1px solid #CCCCCC;
  margin-bottom: 50px;

}
#sustainability .cover .wrap .content .sec01 ul li{
  padding: 25px 0;
  border-bottom: 1px solid #CCCCCC;
}
#sustainability .cover .wrap .content .sec01 ul li dl{
}
#sustainability .cover .wrap .content .sec01 ul li dl dt{
  width: 100%;
  font-size: 12px;
  line-height: 22px;
  margin-bottom: 5px;
}
#sustainability .cover .wrap .content .sec01 ul li dl dt span{
  font-size: 12px;
  line-height: 22px;
  border: 1px solid #CCCCCC;
  border-radius: 22px;
  display: inline-block;
  padding: 0 6px;
  margin-left: 10px;
  color: #A3A3A3;
}
#sustainability .cover .wrap .content .sec01 ul li dl dd{
  width:100%;
  font-size: 14px;
  line-height: 24px;
}


#sustainability .cover .wrap .content .sec01 .pager{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: relative;
  margin-bottom:50px;
}

#sustainability .cover .wrap .content .sec01 .pager div{
  border: none;
  padding:0;
}

#sustainability .cover .wrap .content .sec01 .pager div a{
  padding: 10px 5px;
  margin:0 3px;
  font-size: 12px;
}

#sustainability .cover .wrap .content .sec01 .pager div.current{
  background: #00479B;
  color: #FFF;
  width:32px;
  line-height: 32px;
  text-align: center;
  margin:0 3px;
  font-size: 12px;
  border-radius: 50%;
}

#sustainability .cover .wrap .content .sec01 .pager .pg_before{
  margin-right:10px;
}
#sustainability .cover .wrap .content .sec01 .pager .pg_after{
  margin-left:10px;
}
#sustainability .cover .wrap .content .torikumi_list h2.row_title{
  font-size:20px;
  padding-bottom: 15px;
  border-bottom: 1px solid #DEDEDE;
  margin-bottom:20px;
  color: #00479B;
  position: relative;
}
#sustainability .cover .wrap .content .torikumi_list h2.row_title:after{
  content: "";
  display: block;
  width: 20px;
  height:1px;
  background: #00479B;
  position: absolute;
  bottom:-1px;
  left: 0;
}
#sustainability .cover .wrap .content .torikumi_list{
  position: relative;
  padding:50px 0 20px;
}
#sustainability .cover .wrap .content .torikumi_list:before{
  content: "";
  display: block;
  background: #EEE;
  position:absolute;
  top: 0;
  left: -50%;
  width:200%;
  height: 100%;
  z-index:-1;
}
#sustainability .cover .wrap .content .torikumi_list .bnr{
  width: 100%;
  height: 0;
  padding-bottom:50%;
  display: block;
  background: url(../images/sustainability_list01.png) no-repeat;
  background-size: cover;
  margin-bottom:30px;
  position: relative;
}


#sustainability .cover .wrap .content .torikumi_list .bnr .title{
  width:90%;
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left:5%;
  transform: translateY(-50%);
}
#sustainability .cover .wrap .content .torikumi_list .bnr h3{
  font-size:16px;
  line-height:24px;
  color: #00479B;
  margin-bottom:10px;
}
#sustainability .cover .wrap .content .torikumi_list .bnr .btn{
  font-size:12px;
  line-height:40px;
  border: 1px solid #000;
  display: inline-block;
  padding: 0 10px;
}



#sustainability .cover .wrap .content .torikumi_list ul{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
#sustainability .cover .wrap .content .torikumi_list ul li{
  width:90%;
  margin: 0 auto 30px;
  box-sizing: border-box;
  position: relative;
}

#sustainability .cover .wrap .content .torikumi_list ul li figure{
  width:100%;
  margin-bottom:10px;
}
#sustainability .cover .wrap .content .torikumi_list ul li h3{
  font-size:16px;
  color: #00479B;
  padding-bottom:10px;
  border-bottom: 1px solid #00479B;
  margin-bottom:10px;
}
#sustainability .cover .wrap .content .torikumi_list ul li ol li{
  width: 100%;
  border-right:0 !important;
  border-bottom:0 !important;
  padding: 0 !important;
  margin:0 0 5px !important;
}
#sustainability .cover .wrap .content .torikumi_list ul li ol li:nth-child(3),
#sustainability .cover .wrap .content .torikumi_list ul li ol li:nth-child(4){
  border-bottom:0 !important;
}

#sustainability .cover .wrap .content .torikumi_list ul li ol li a{
  font-size: 12px;
  line-height:18px;
  position: relative;
  padding-left: 10px;
  display: block;
}
#sustainability .cover .wrap .content .torikumi_list ul li ol li a:before{
  content: "";
  display: block;
  width:4px;
  height: 1px;
  background: #000;
  position: absolute;
  top: 10px;
  left: 0;
}

#sustainability .cover .wrap .content .torikumi_list ul li:nth-child(3) figure,
#sustainability .cover .wrap .content .torikumi_list ul li:nth-child(4) figure{
  top: 40px;
}

#sustainability .cover .wrap .content .kanren_info{
  position: relative;
  padding: 75px 0 0;
}
#sustainability .cover .wrap .content .kanren_info h2.row_title{
  font-size:28px;
  padding-bottom: 15px;
  border-bottom: 1px solid #DEDEDE;
  margin-bottom:30px;
  color: #00479B;
  position: relative;
}
#sustainability .cover .wrap .content .kanren_info h2.row_title:after{
  content: "";
  display: block;
  width: 20px;
  height:1px;
  background: #00479B;
  position: absolute;
  bottom:-1px;
  left: 0;
}
#sustainability .cover .wrap .content .kanren_info ul{
  display: flex;
  flex-wrap: wrap;
}
#sustainability .cover .wrap .content .kanren_info ul li{
  width:100%;
}
#sustainability .cover .wrap .content .kanren_info ul li:first-child{
  margin-bottom:10px;
}
#sustainability .cover .wrap .content .kanren_info ul li a{
  width: 100%;
  height: 0;
  padding-bottom: 67%;
  position: relative;
}
#sustainability .cover .wrap .content .kanren_info ul li:nth-child(1) a{
  background: url(../images/ir_kanren_01.png) no-repeat;
  background-size: 100%;
}
#sustainability .cover .wrap .content .kanren_info ul li:nth-child(2) a{
  background: url(../images/ir_kanren_02.png) no-repeat;
  background-size:100%;
}
#sustainability .cover .wrap .content .kanren_info ul li a h3{
  color: #FFF;
  font-size: 18px;
  position: absolute;
  bottom: 15px;
  right: 15px;
}






/*POST*/



#post .cover{
  overflow: clip;
}
#post .cover .wrap{
  width:100%;
  margin:0 auto 20px;
}
#post .cover .wrap aside{
  display: none;
}

#post .cover .wrap .content{
  position: relative;
  z-index: 0;
  width:90%;
  margin: 0 auto;
  padding-bottom:30px;
}
#post .cover .wrap .content .post_article .mv{
  margin-bottom:20px;
}

#post .cover .wrap .content .post_article dl.post_title{
  padding-bottom:20px;
  border-bottom: 1px solid #CCCCCC;
  margin-bottom:15px;
}
#post .cover .wrap .content .post_article dl.post_title dt h2{
  font-size:18px;
  line-height:28px;
  margin-bottom:10px;
}
#post .cover .wrap .content .post_article dl.post_title dd{
  font-size:12px;
  color: #A3A3A3;
}
#post .cover .wrap .content .post_article figure{
  margin-bottom:30px;
}
#post .cover .wrap .content .post_article h1{
  font-size:30px;
  line-height:40px;
  margin-bottom:20px;
}
#post .cover .wrap .content .post_article h2{
  font-size:24px;
  line-height:34px;
  margin-bottom:20px;
}
#post .cover .wrap .content .post_article h3{
  font-size:18px;
  line-height:28px;
  margin-bottom:20px;
}
#post .cover .wrap .content .post_article h4{
  font-size:18px;
  line-height:28px;
  color: #00479B;
  padding-bottom:15px;
  border-bottom: 1px solid #DEDEDE;
  margin-bottom:20px;
  position: relative;
}

#post .cover .wrap .content .post_article h4:after{
  content: "";
  display: block;
  width: 18px;
  height:1px;
  background: #00479B;
  position: absolute;
  bottom:-1px;
  left: 0;
}
#post .cover .wrap .content .post_article h5{
  font-size: 18px;
  line-height:28px;
  color: #00479B;
  border:1px solid #DEDEDE;
  padding: 20px;
  margin-bottom:20px;
}

#post .cover .wrap .content .post_article p{
  font-size:14px;
  line-height:24px;
  margin-bottom:20px;
}
#post .cover .wrap .content .post_article p a{
  font-size: 16px;
  line-height: 28px;
  color: #00479B;
  text-decoration: underline;
}
#post .cover .wrap .content .post_article p.btn a{
  font-size: 16px;
  line-height:50px;
  color: #FFF;
  background:#00479B;
  display:inline-block;
  text-decoration:none;
  padding: 0 32px;
  border-radius: 50px;
}
#post .cover .wrap .content .post_article p.caption{
  font-size:14px;
  line-height: 22px;
  margin-bottom: 30px;
}
#post .cover .wrap .content .post_article .column_2block,
#post .cover .wrap .content .post_article .column_3block{
  margin-bottom:30px;
}
#post .cover .wrap .content .post_article .column_2block div{
  width:100%;
}
#post .cover .wrap .content .post_article .column_2block div.left{
  margin-bottom:10px;
}
#post .cover .wrap .content .post_article .column_3block div{
  width:100%;
}
#post .cover .wrap .content .post_article .column_3block div.left,
#post .cover .wrap .content .post_article .column_3block div.center{
  margin-bottom:10px;
}


#contact .cover{
  width: 100%;
  padding:0;
  background: #EAEDF0;
}

#contact .cover .wrap{
  width:100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
#contact .cover .wrap .side{
  width:100%;
  padding:40px;
  order:2;
  background:#00479B;
  box-sizing: border-box;
}
#contact .cover .wrap .form_sec{
  width:100%;
  padding:20px;
  order:1;
  box-sizing: border-box;
}
#contact .cover .wrap .form_sec #form{
  padding-bottom:30px;
  background: #FFF;
}

#contact .cover .wrap .form_sec .situation{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 20px;
}

#contact .cover .wrap .form_sec p{
  font-size:1rem;
  line-height:32px;
  margin-bottom:20px;
  text-align: center;
}
#contact .cover .wrap .form_sec p span.hissu{
  font-size:10px;
  line-height:18px;
  color: #FFF;
  background:#00479B;
  display: inline-block;
  padding:0px 5px;
  margin: 3px 5px;
}
#contact .cover .wrap .form_sec table span.hissu{
  font-size:0.75rem;
  line-height: 20px;
  color: #FFF;
  background:#00479B;
  display: inline-block;
  padding:0px 10px;
  margin:3px 8px;
}



#contact .cover .wrap .form_sec table{
  border-collapse:collapse;
  border-spacing:0;
  width:90%;
  margin: 0 auto;
}
#contact .cover .wrap .form_sec table tr{
  border-bottom: 1px solid #EEE;
  padding: 20px 0;
  text-align:left;
  display:flex;
  flex-wrap: wrap;
}
#contact .cover .wrap .form_sec table tr th{
  width: 100%;
  font-size:14px;
  line-height:18px;
  font-weight:500;
  display: block;
  margin-bottom: 10px;
}
#contact .cover .wrap .form_sec table tr td{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  font-size:14px;
  line-height:24px;
  display: block;
}
#contact .cover .wrap .form_sec table tr td input[type="text"],
#contact .cover .wrap .form_sec table tr td textarea{
  background:#EEE;
  border-radius:4px;
  font-size:0.875rem;
  line-height: 24px;
  padding:5px 10px;
  width: 100%;
  display: inline-block;
  resize: vertical;
  box-sizing: border-box;
}
#contact .cover .wrap .form_sec table tr td input#tel1,
#contact .cover .wrap .form_sec table tr td input#tel2,
#contact .cover .wrap .form_sec table tr td input#tel3,
#contact .cover .wrap .form_sec table tr td input#fax1,
#contact .cover .wrap .form_sec table tr td input#fax2,
#contact .cover .wrap .form_sec table tr td input#fax3,
#contact .cover .wrap .form_sec table tr td input#zipcode1,
#contact .cover .wrap .form_sec table tr td input#zipcode2{
  width:85px;
  margin:0 5px;
  display: inline-block;
}


#contact .cover .wrap .form_sec table tr td.code1{
  width: 100px;
  margin-right: 30px;
}
#contact .cover .wrap .form_sec table tr td.code2{
  width: 200px;
}

#contact .cover .wrap .form_sec table tr td span{
  font-size: 12px;
  display: block;
  margin-top: 10px;
  width: 100%;
}

#investor,
#shizai{
  display: none;
}

#contact .cover .wrap .form_sec .situation dl{
  width: 33.33333%;
  background:#F2F2F2;
  text-align: center;
  padding:15px 0;
}
#contact .cover .wrap .form_sec .situation dl.on{
  background: #00479B;
}

#contact .cover .wrap .form_sec .situation dl dt,
#contact .cover .wrap .form_sec .situation dl dd{
  color:#A3A3A3;
  text-align: center;
}
#contact .cover .wrap .form_sec .situation dl.on dt,
#contact .cover .wrap .form_sec .situation dl.on dd{
  color:#FFF;
  text-align: center;
}

#contact .cover .wrap .form_sec .situation dl dt{
  font-size:10px;
  margin-bottom: 5px;
}
#contact .cover .wrap .form_sec .situation dl dd{
  font-size:12px;
  line-height:18px;
}
#contact .cover .wrap .form_sec h3{
  font-size:14px;
  line-height:18px;
  color: #000;
  margin-top:20px;
  margin-bottom:10px;
  text-align: center;
}
#contact .cover .wrap .form_sec p a{
  display: inline-block;
  font-size:12px;
  line-height:18px;
  color: #00479B;
}
#contact .cover .wrap .form_sec p{
  width: 90%;
  margin: 0 auto;
  font-size:12px;
  line-height:18px;
  color: #000;
  letter-spacing: 0;
}
#contact .cover .wrap .form_sec p br{
  display: none;
}

#contact input[type="checkbox"],
#contact input[type="radio"] {
  all: revert;
}
.attention{
  text-align: center;
  vertical-align: middle;
}
.attention label{
  font-size: 12px;
}

.form_btn{
  text-align: center;
}
.form_btn input[type="submit"]{
  -webkit-appearance: none; /* Chrome, Safari, Opera */
  -moz-appearance: none;    /* Firefox */
  appearance: none;
  
  /* 必要に応じて独自のスタイルを追加 */
  background: #00479B;
  color:#FFF;
  font-size:1rem;
  letter-spacing: 0;
  padding: 0 100px;
  line-height:40px;
  display: inline-block;
  border: none;
  border-radius:25px;
}

/*送信完了*/
#contact .cover .wrap .form_sec .send{
  width:85%;
  margin: 0 auto;
  padding:30px 0 50px;
}

#contact .cover .wrap .form_sec .send h2{
  font-size:18px;
  text-align: center;
  color: #00479B;
  margin-bottom:30px;
  border: 2px solid #00479B;
  padding:30px 0;
  border-radius: 5px;
}
#contact .cover .wrap .form_sec .send h2 span{
  font-size:12px;
  text-align: center;
  color: #00479B;
  display: block;
  margin-top: 10px;
}
#contact .cover .wrap .form_sec .send h3{
  font-size:16px;
  margin-bottom: 20px;
}
#contact .cover .wrap .form_sec .send p{
  font-size:14px;
  line-height: 24px;
}

/*送信エラー*/
#contact .cover .wrap .form_sec .attention{
  width:85%;
  margin: 0 auto;
  padding:20px 0 ;
}

#contact .cover .wrap .form_sec .attention h2{
  font-size:18px;
  text-align: center;
  color: #FF0031;
  margin-bottom:30px;
  border: 2px solid #FF0031;
  padding:30px 0;
  border-radius: 5px;
}
#contact .cover .wrap .form_sec .attention h2 span{
  font-size:12px;
  text-align: center;
  color: #FF0031;
  display: block;
  margin-top: 10px;
}
#contact .cover .wrap .form_sec .attention h3{
  font-size:16px;
  margin-bottom: 20px;
}
#contact .cover .wrap .form_sec .attention p{
  font-size:14px;
  line-height: 24px;
}




/*サイド*/

#contact .cover .wrap .side .service_window_section{
  position: sticky;
  top:140px;

}


#contact .cover .wrap .side .service_window_section h3{
  font-size:16px;
  line-height:28px;
  color: #FFF;
  margin-bottom:15px;
  border: 2px solid #FFF;
  padding: 10px;
  text-align: center;
}
#contact .cover .wrap .side .service_window_section .service_window{
  margin-bottom: 50px;
}
#contact .cover .wrap .side .service_window_section h4{
  font-size:20px;
  line-height:32px;
  margin-bottom:20px;
  color: #FFF;
  text-align: center;
}
#contact .cover .wrap .side .service_window_section h4 span{
  font-size:0.875rem;
  display: block;
  color: #FFF;
  padding-top: 10px;
}
#contact .cover .wrap .side .service_window_section .btn{
  text-align: center;

}
#contact .cover .wrap .side .service_window_section .btn a{
  background: #FFF;
  color:#00479B;
  font-size:1rem;
  letter-spacing: 0;
  padding: 0 30px;
  line-height:40px;
  display: inline-block;
  border-radius:25px;
}

/*プライバシーポリシー*/
#privacy .contents_header{
  margin:90px 5% 0;
}

#privacy .container{
  background:#EAEDF0;
  padding-bottom: 40px;
}

#privacy .content_head{
  background: #00479B;
  padding:25px 0;
}
#privacy .content_head h2{
  text-align: center;
  color: #FFF;
  font-size:1rem;
}
#privacy .content_head h2 span{
  font-size:1.5rem;
  color: #FFF;
  display: block;
  margin-bottom: 10px;
}

#privacy .container .block{
  width:90%;
  background: #FFF;
  padding:20px;
  margin:20px auto 0;
  box-sizing: border-box;
}

#privacy .container .block h3{
  font-size: 1.25rem;
  line-height:32px;
  color: #00479B;
  padding-bottom: 15px;
  border-bottom: 1px solid #DEDEDE;
  margin-bottom:20px;
  position: relative;
}
#privacy .container .block h3:after {
  content: "";
  display: block;
  width: 20px;
  height: 1px;
  background: #00479B;
  position: absolute;
  bottom: -1px;
  left: 0;
}
#privacy .container .block p{
  font-size:0.875rem;
  line-height:24px;
  margin-bottom:30px;
}
#privacy .container .block dl{
  margin-top: 20px;
  padding-left:30px;
  position: relative;
  margin-bottom: 20px;
  border-bottom:1px solid #DEDEDE;
  padding-bottom: 20px;
}
#privacy .container .block dl.border_none{
  border-bottom: none;
}

#privacy .container .block dl:before{
  font-size: 1rem;
  line-height: 24px;
  font-weight: 700;
  position: absolute;
  color: #00479B;
  top: 0;
  left: 0;
}
#privacy .container .block dl.no1:before{content:"1.";}
#privacy .container .block dl.no2:before{content:"2.";}
#privacy .container .block dl.no3:before{content:"3.";}
#privacy .container .block dl.no4:before{content:"4.";}
#privacy .container .block dl.no5:before{content:"5.";}
#privacy .container .block dl.no6:before{content:"6.";}
#privacy .container .block dl.no7:before{content:"7.";}
#privacy .container .block dl.no8:before{content:"8.";}
#privacy .container .block dl.no9:before{content:"9.";}
#privacy .container .block dl.no10:before{content:"10.";}
#privacy .container .block dl.no11:before{content:"11.";}


#privacy .container .block dl dt{
  font-size: 1rem;
  line-height:24px;
  font-weight: 700;
  color: #00479B;
  margin-bottom:10px;
}
#privacy .container .block dl dd p{
  font-size:0.875rem;
  line-height:24px;
  margin-bottom: 0;
}


#privacy .container .block dl dd ul li h4{
  font-size:0.875rem;
  line-height:24px;
  font-weight: 500;
  margin-top: 20px;
  padding-left:30px;
  position: relative;
  margin-bottom:5px;
}

#privacy .container .block dl dd ul li h4:before{
  font-size:0.875rem;
  line-height:24px;
  font-weight: 500;
  position: absolute;
  top: 0;
  left: 0;
}
#privacy .container .block dl dd ul li h4 sup{
  vertical-align: bottom;
}


#privacy .container .block dl dd ul li h4.no1:before{content:"（1）";}
#privacy .container .block dl dd ul li h4.no2:before{content:"（2）";}
#privacy .container .block dl dd ul li h4.no3:before{content:"（3）";}
#privacy .container .block dl dd ul li h4.no4:before{content:"（4）";}
#privacy .container .block dl dd ul li h4.no5:before{content:"（5）";}
#privacy .container .block dl dd ul li h4.no6:before{content:"（6）";}
#privacy .container .block dl dd ul li h4.no7:before{content:"（7）";}
#privacy .container .block dl dd ul li h4.no8:before{content:"（8）";}
#privacy .container .block dl dd ul li h4.no9:before{content:"（9）";}
#privacy .container .block dl dd ul li h4.no10:before{content:"（10）";}
#privacy .container .block dl dd ul li h4.no11:before{content:"（11）";}


#privacy .container .block dl dd p.b_copy{
  font-size:0.875rem;
  line-height:24px;
  padding-left:0;
}

#privacy .container .block dl dd p{
  font-size:0.875rem;
  line-height:24px;
  padding-left:25px;
}
#privacy .container .block dl dd p span,
#privacy .container .block dl dd p span a{
  display: block;
  font-size:0.75rem;
  line-height:18px;
}
#privacy .container .block dl dd p span{
  padding-top: 10px;
}


#privacy .container .block dl dd p span a{
  transition: all 0.2s ease;
  color: #00479B;
}
#privacy .container .block dl dd p span a:hover{
  opacity: 0.5;
}

#privacy .container .block dl dd ol li:before{
  content: "・";
  font-size:0.875rem;
  line-height:24px;
  display: block;
  position: absolute;
  top: 0;
  left:10px;
}
#privacy .container .block dl dd ol li{
  padding-left:25px;
  position: relative;
}

#privacy .container .block dl dd ul li,
#privacy .container .block dl dd ol li{
  font-size:0.875rem;
  line-height:24px;
}
#privacy .container .block dl dd ol li p{
  padding-left: 0;
}
#privacy .borderbox{
  border: 3px solid #00479B;
  padding:20px;
}
#privacy .container .block .borderbox h4{
  font-size:1rem;
  margin-bottom:15px;
  font-weight: 600;
  color: #00479B;
}
#privacy .container .block .borderbox h5{
  font-size:1rem;
  line-height: 24px;
  margin-bottom:15px;
  border-bottom: 1px solid #00479B;
  padding-bottom: 20px;
}
#privacy .container .block .borderbox p{
  font-size:0.875rem;
  line-height:24px;
  margin-bottom: 0;
}







#togai_town:after{
  content: "";
  display: block;
  background: #B1DEEC;
  width: 100%;
  height:50%;
  position: absolute;
  top: 0;
  left: 0;
  z-index:-1;
}

#togai_town{
  position: relative;
}
#togai_town .wrap{
  width: 100%;
  height: 800px;
  overflow: hidden;
  position: relative;
}
#togai_town .noise{
  width: 100%;
  height:800px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 25;
  background: url(../../english/images/noise.png) repeat;
  background-size: 400px 400px;
  mix-blend-mode: overlay;
  opacity: 0.8;
  animation: moving01 700s infinite linear;

}

#togai_town .layer{
  width: 100%;
  height: 800px;
  position: fixed;
  top:0;
  left:0;
}

#walkman{
  width:180px;
  height:282px;
  display: block;
  position: absolute;
  bottom:80px;
  left:100px;
  z-index:45;
}

#togai_town .layer01{
  background:url(../../english/images/front_layer.svg) no-repeat;
  background-size: auto 800px;
  z-index:50;
  background-position: 0 0;
  animation: moving01 1000s infinite linear;
}
#togai_town .layer02{
  background:url(../../english/images/cars_layer.svg) no-repeat;
  background-size: auto 800px;
  z-index:40;
  animation: moving01 100s infinite linear;
}
#togai_town .layer03{
  background:url(../../english/images/building_layer.svg) no-repeat;
  background-size: auto 800px;
  z-index:30;
  background-position: 0 0;
  animation: moving01 750s linear;
}
#togai_town .layer04{
  background:url(../../english/images/road_layer.svg) no-repeat;
  background-size: auto 800px;
  z-index:35;
}
#togai_town .layer05{
  background:url(../../english/images/back_layer.svg) repeat-x;
  background-size: auto 800px;
  z-index:10;
  background-position: 0 0;
  animation: moving01 700s linear;
}


@keyframes moving01 {
  0% {
    background-position:0px 0;
    transition-property: background-position;
  }
    100% {
    background-position:-111000px 0;
    transition-property: background-position;
    }
}
@keyframes moving02 {
  0% {
    background-position:0px 0;
    transition-property: background-position;
  }
    100% {
    background-position:-111000px 0;
    transition-property: background-position;
    }
}

/*サイトマップ*/

#sitemap .contents_header{
  margin:90px 5% 0;
}


#sitemap .container{
  background:#EAEDF0;
  padding-bottom: 40px;
}
#sitemap .content_head{
  background: #00479B;
  padding:25px 0;
}
#sitemap .content_head h2{
  text-align: center;
  color: #FFF;
  font-size:1rem;
}
#sitemap .content_head h2 span{
  font-size:1.5rem;
  color: #FFF;
  display: block;
  margin-bottom: 10px;
}
#sitemap .container .block{
  width:90%;
  background: #FFF;
  padding:20px;
  margin:25px auto 0;
  box-sizing: border-box;
}
#sitemap .container .block h3 a{
  font-size:1rem;
  color:#00479B;
  transition: all ease 0.2s;
}
#sitemap .container .block h3 a:hover{
  text-decoration: underline;
}
#sitemap .container .block .inner{
  margin-bottom:20px;
  border-bottom: 1px solid #EEE;
  padding-bottom:20px;
}
#sitemap .container .block .inner.boder_none{
  border-bottom:0px;
  margin-bottom:0;
  padding-bottom:0;
}

#sitemap .container .block .inner .summarize{
}
#sitemap .container .block .inner .summarize ul{
  margin-top:20px;
  width:100%;
}
#sitemap .container .block .inner .summarize ul:nth-child(3){
  margin-right: 0;
}
#sitemap .container .block .inner .summarize ul li{
  margin-bottom:5px;
}
#sitemap .container .block .inner .summarize ul li.mgn_btm30{
  margin-bottom:20px;
}
#sitemap .container .block .inner .summarize ul li:last-child{
  margin-bottom:0;
}


#sitemap .container .block .inner ul li a{
  font-size:0.875rem;
  line-height:24px;
  text-decoration: underline;
  margin-bottom: 0;
  color:#00479B;
  transition: all ease 0.2s;
}
#sitemap .container .block .inner ul li a:hover{
  opacity: 0.5;
}





