@charset "UTF-8";

/*
Theme Name:  ZEAL
Theme URI: http://zeaplus.co.jp/
Description: ZEAL
Version: 1.1
Author: ZEALPLUS
Author URI: http://zeaplus.co.jp/
*/


/*
===== CONTENTS ================================================================================

Index:
- Base Style
- Layout

===============================================================================================
*/

@import url("https://use.typekit.net/ivb5uem.css");


/* 1: Base Style Setting
----------------------------------------------------------------------------------------------*/

/* Base Setting
==========================================================*/

body { font: 10px/1.5 "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; margin:0; padding: 0; -webkit-text-size-adjust: 100%; color: #000; background: #fff;}
.wrapper { width: 100%; overflow: hidden;}
@media screen and (max-width:800px) {
body { font-size: 9px; line-height: 1.75; letter-spacing: 0.05em;}
img { max-width: 100%; height: auto;}
}

a { text-decoration: none; color: #000; outline:none;}
img { -ms-interpolation-mode: bicubic; max-width:100%; height:auto; vertical-align: bottom; }
video { vertical-align: bottom;}
:focus { outline: 0; }

.box-sizing {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
a.disable { pointer-events: none;}
a.underline{ text-decoration: underline;}


/* button */
a,
a *,
a:after,
.cshover button,
.cshover input { -webkit-transition:all .3s;transition:all .3s; }
.cshover input:hover,
.cshover button:hover,
.cshover a:hover,
a.cshover:hover { -webkit-opacity: 0.6; opacity: 0.6; }
@media screen and (max-width:800px) {
.sp-cshover button,
.sp-cshover input,
.sp-cshover a,
a.sp-cshover{ -webkit-transition:all .3s;transition:all .3s; }
.sp-cshover input:hover,
.sp-cshover button:hover,
.sp-cshover a:hover,
a.sp-cshover:hover { -webkit-opacity: 0.6; opacity: 0.6; }
}
.anime3 { -webkit-transition:all .3s; transition:all .3s; }

.dis-inlin-b{ display: inline-blockl; }

.col-l{ float:left; }
.col-r{ float:right; }

.tellink { pointer-events: none; }
.nolink a{ pointer-events: none; }


.flex { display: flex; flex-wrap: wrap;}
.flex-jcs {display: flex; justify-content: space-between; flex-wrap: wrap; }
.flex-center {display: flex; justify-content: center; align-items: center; flex-wrap: wrap; }
.flex-aic { display: flex; align-items: center; flex-wrap: wrap; }
.flex-jcc { display: flex; justify-content: center; flex-wrap: wrap; }
.nowrap { flex-wrap: nowrap;}



/* hack
========================================================== */

.sp-hide { display: block;}
.sp-hide-inline { display: inline;}
.sp-show { display:none;}
.sp-show-inline { display:none;}
.sp-show-450, .sp-show-550, .sp-show-620 { display:none;}
.sp-hide-450, .sp-hide-550, .sp-hide-620 { display:inline;}

/* slider */
.slide ul{ display: none; }
.slide ul.slick-initialized { display: block; }

.indent li { margin-left: 1em; text-indent: -1em;}

/* object fit */
.obf { -o-object-fit: cover; object-fit: cover; -o-object-position: center; object-position: center; font-family: 'object-fit: cover; object-position: center;'; height: 100%; width: 100%; }
.obf.noborder { border: none;}

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



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

.sp-hide-inline, .sp-hide { display: none !important;}
.sp-show { display:block;}
.sp-show-inline { display:inline;}
.sp-br-none br, br.sp-br-none {display: none;}

.sp-no-flex { display: block;}

    @media screen and (max-width: 620px) {
      .sp-show-620 { display:inline;}
      .sp-hide-620 { display:none;}
    }

    @media screen and (max-width: 550px) {
      .sp-show-550 { display:inline;}
      .sp-hide-550 { display:none;}
    }

    @media screen and (max-width: 450px) {
      .sp-show-450 { display:inline;}
      .sp-hide-450 { display:none;}
    }
}





/* common
==========================================================*/

.bg-dg { background: #162759; }
.bg-g { background: #f0f0f0; }
.bg-w { background: #fff; }

.fn-AcuminB { font-family: acumin-pro, sans-serif; font-weight: 700; font-style: normal;}
.fn-AcuminSB { font-family: acumin-pro, sans-serif; font-weight: 600; font-style: normal;}
.fn-Acumin { font-family: acumin-pro, sans-serif; font-weight: 400; font-style: normal;}

.c_blue { color: #00296a;}
.c_orange { color: #F07800;}

/* header
==========================================================*/

@media screen and (min-width: 1111px) {
#menu {display: block !important;}
.navInner { display: none !important;}

}
@media screen and (max-width: 1110px) {
/* menu */
#menu { display: none; position: fixed; background: #000; left: 0; top: 0; width: 100%; height:100vh; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; z-index: 9901 !important; overflow: scroll !important; -ms-overflow-style: none; scrollbar-width: none;}
#menu::-webkit-scrollbar { display:none;}
.menu_inner { height:100vh;}

.navInner { cursor: pointer; display: block; position: fixed; right: 30px; top: 30px; box-sizing: border-box; padding: 13px 15px; width: 60px; height: 60px; background: #fff; z-index: 999999;  border-radius: 30px;}
.menu-trigger { width: 30px; height: 19px; line-height: inherit; cursor: pointer; position: relative; display: inline-block; transition: all .4s; box-sizing: border-box; top: 7px;}
      .menu-trigger span { display: inline-block; transition: all .4s; box-sizing: border-box; position: absolute; left: 0; width: 100%; height: 3px; background-color: #000 !important;}
      .menu-trigger span:nth-of-type(1) { top: 0; }
      .menu-trigger span:nth-of-type(2) { top: 8px; }
      .menu-trigger span:nth-of-type(3) { bottom: 0; }
      .menu-trigger:not(.active):hover span:nth-of-type(1) { top: 1px; }
      .menu-trigger:not(.active):hover span:nth-of-type(3) { bottom: 1px; }
      .menu-trigger.active span:nth-of-type(2) { -webkit-transform: translateY(3px) rotate(-45deg); transform: translateY(6px) rotate(-45deg); background-color: #000 !important; top: 2px;}
      .menu-trigger.active span:nth-of-type(1) { display: none;}
      .menu-trigger.active span:nth-of-type(3) { display: none;}
}
@media screen and (max-width: 800px) {
  .navInner { top: 20px; right: 20px;}
}
@media screen and (max-width: 560px) {
  .navInner { top: 12px; right: 12px;}
}



/* fixed */
  .header.fixed { background: #000;}
  .header.fixed #menu li:hover .gnavinul { top: 80px; }




/* Plugin
==========================================================*/

/* lity edit */
.lity-container { width: 100%;}
.lity-wrap { overflow: hidden; overflow-y: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; box-sizing: border-box; margin: 60px auto; width: calc(100% - 220px); max-width: 1000px;}
.lity-wrap::before { margin-right: 0;}
.lity { z-index: 99999; background: #000; background: rgba(0, 0, 0, 0.9);}
.lity-content::after { -webkit-box-shadow: none; box-shadow: none;}
.lity-close { /*display: none;*/ background: url(../js/lity/btn_close.png) center center no-repeat; background-size: contain; -webkit-transition:all .3s; transition:all .3s; right: 40px; top: 40px;}
.lity-close:active { top: 40px; }
.lity-close:hover { background: url(../js/lity/btn_close.png) center center no-repeat; background-size: contain; -webkit-opacity: 0.6; opacity: 0.6; }

@media screen and (max-width: 960px) {
    .lity-close:active,
    .lity-close:hover,
    .lity-close { right: 15px; top: 15px; width: 30px; height: 30px; background-size: 25px auto;}
    .lity-wrap { margin: 60px auto 30px; width: 95%;}
}
@media screen and (max-width: 600px) {
    .lity-close:active,
    .lity-close:hover,
    .lity-close { background: #000 url(../js/lity/btn_close.png) center center no-repeat; background-size: 20px auto; padding: 25px; border-radius: 50%;}
    .lity-wrap { margin: 0 auto; width: 100%;}
}



/* index
==========================================================*/




.header { width: 100%; padding: 0 70px; box-sizing: border-box; position: fixed; z-index: 999; top: 0; left: 0;}
.header a { display: block;}
.logo { line-height: 144px;}
.logo img { vertical-align: middle;}
.gnavul { text-align: center;}
.gnavul li.gnavlink { padding: 50px 20px; transition: .2s; position: relative;}/**/
.gnavul li a { display: block;}/**/
.gnaven { margin-bottom: 3px; font-size: 1.6em; font-family: acumin-pro, sans-serif; font-weight: 700; font-style: normal; letter-spacing: 0.1em;}
.gnavjp { font-size: 1.15em;}
.page-index .header,
.kasoumain .header,
.page-product .header,
.page-news .header,
.page-gallery .header,
.page-index .header a,
.page-about .header a,
.page-product .header a,
.page-news .header a,
.page-gallery .header a { color: #fff;}
.page-index .logo a,
.page-about .logo a,
.page-product .logo a,
.page-news .logo a,
.page-gallery .logo a
{ background: url("../images/common/logo-wh.png") no-repeat center; background-size: 100% auto; }
.page-index .logo img,
.page-about .logo img,
.page-product .logo img,
.page-news .logo img,
.page-gallery .logo img { opacity: 0;}


.gnavul li.gnavlink > a { position: relative; }   
.gnavul li.gnavlink > a.gnavlinkhover:before { position: absolute;  content:"";  z-index: -1;  background: rgba(0, 41, 106, 1);
    top: -25px; left: -20px; width: 2px; height: 0%; padding: 15px 0px 16px ; 
    transition: .4s .0s; opacity: 0;}
.gnavul li.gnavlink > a.gnavlinkhover.active:before { top: -15px; height: 100%; opacity: 1; }


.page-index .gnavul li.gnavlink > a.gnavlinkhover:before,
.page-about .gnavul li.gnavlink > a.gnavlinkhover:before,
.page-product .gnavul li.gnavlink > a.gnavlinkhover:before,
.page-news .gnavul li.gnavlink > a.gnavlinkhover:before,
.page-gallery .gnavul li.gnavlink > a.gnavlinkhover:before { background: rgba(255, 255, 255, 1); }
.is-show .gnavul li.gnavlink > a.gnavlinkhover:before { background: rgba(0, 41, 106, 1); }


.langul { font-size: 1.6em; font-family: acumin-pro, sans-serif; font-weight: 700; font-style: normal; width: 70px; margin-left: 20px; line-height: 144px;}
.langul li {}
.langul li:first-child { padding-right: 1em; margin-right: 0.5em; position: relative; }
.langul li:first-child:after { content: "/"; position: absolute; right: 0; top: 0; transition: .3s;}
.langul li a {}
.sp-nav_bnr { display: none;}

.page-about .langul li:first-child::after { color:#fff;}


.hovermenu { display: none; background: rgba(240, 240, 240, 1); transition: .2s; }
    #menu li .hovermenu.active { display: block !important; display: block; top: 110px; padding: 13px 0; width: 180px; animation: overanime 0.5s; position: absolute; left: 0; z-index: 2; box-sizing: border-box;}/**/
    #menu li .hovermenu.column3.active { width: 200px; }/**/
    #menu li:hover .hovermenu { /*display: block !important; display: block; top: 144px;  top: 120px; padding: 10px 0; width: 100%; animation: overanime 0.5s; position: absolute; left: 0; z-index: 2; box-sizing: border-box;*/}
    #menu li .hovermenu .hovermenuInner { width: 90%; margin: 0 auto;}
    #menu li .hovermenu ul::after { content:""; display: block; /*width: 24.5%;*/}
    #menu li .hovermenu li { /*border-bottom: 1px solid #ccc; */ box-sizing: border-box;}
    #menu li .hovermenu li:nth-child(-n+4) { /*border-top: 1px solid #ccc;*/}
    #menu li .hovermenu li a { display: block; padding: 5px 15px !Important; font-size: .9em; line-height: 1.7; box-sizing: border-box; color: #000; text-align: left; }
    #menu li .hovermenu li a .gnaven { margin-bottom: 0; line-height: 1.4; color: #194186;}
    #menu li .hovermenu li a .gnavjp{ font-size: 1.2em; }
    @keyframes overanime {
    0% { opacity: 0; margin-top: -10px; }
    100% { opacity: 1; margin-top: 0; }
    }


    #sp-head_shop_bnr { display: none;}
    #head_shop_bnr { /*! display: none; */ position: absolute; top: 120px; left: 0; background: #fcfcfc; width: 100%; padding: 30px 0; z-index: 99; cursor: pointer; }
    #head_shop_bnr ul { width: 90%; margin: 0 auto; max-width: 1000px;}
    #head_shop_bnr ul li { width: 31%; max-width: 300px;}

  @media screen and (min-width: 769px) {
    #sp-head_shop_bnr { display: none !important;}
    .btn_shopping:hover #head_shop_bnr { display: block !important; animation: overanime 0.5s; }
    @keyframes overanime {
    0% { opacity: 0; margin-top: -10px; }
    100% { opacity: 1; margin-top: 0; }
    }
  }


@media screen and (max-width: 1350px) {
  .header { padding: 0 50px;}
  .gnavul li.gnavlink { padding: 50px 12px;}
  .gnavul li a { /*padding: 50px 12px;*/}
  .gnaven { font-size: 1.4em;}
  .gnavjp { font-size: 1em; }
  .langul { font-size: 1.4em; width: 60px;}
  #menu li .hovermenu li a .gnavjp{ font-size: 1.1em; }
  #menu li .hovermenu li a { font-size: 1em; }
}

.gnavul-show-sp{ display: none; }

@media screen and (max-width: 1110px) {
  .gnavul-show-sp{ display: block; }
  .gnavul li.gnavlink > a.gnavlinkhover:hover:before { display: none;}
    
  .menu_inner { display: block; padding: 5% 0; height: 100%; position: relative; height: auto;}
  .gnavul { display: block;}
  .gnavul li.gnavlink {padding: 0px;}
  .gnavul li a { padding: 15px 10%; box-sizing: border-box; color:#fff;}
  .header { z-index: 999;}
  .header a { text-align: left;}
  .gnaven { font-size: 5em; font-size: 2.6em;  line-height: 1.2; }
  .gnavjp { font-size: 2.5em;font-size: 1.3em; line-height: 1.2; }
  .langul { font-size: 4.2em; font-size: 2em; width: 80%; margin: 40px auto 60px; line-height: 1;}
  .langul a,
  .langul li:first-child::after { color:#fff;}
  .sp-nav_bnr { display: block; margin-top: -200px; position: absolute; right: 8%; }
  #menu li .hovermenu.active { display: none !important;}
}
@media screen and (max-width: 800px) {

  
}
@media screen and (max-width: 800px) {
  .header { padding: 0 5%; }
  .logo { line-height: 70px;}
  .menu_inner { padding: 16vw 0 0;}
  .gnavul li a { padding: 2.6vw 10%;}
/*  .gnaven { font-size: 6vw;}
  .gnavjp { font-size: 3.5vw;}
  .langul { font-size: 5vw; margin: 10vw auto 100px; }*/
  .sp-nav_bnr { bottom: 0;}
}

@media screen and (max-width: 640px) {
  .gnaven { font-size: 5vw;}
  .gnavjp { font-size: 3.5vw;}
  .langul { font-size: 4.6vw; margin: 8vw auto 60px; }
  .sp-nav_bnr { width: 25vw;}
}




/* fixed */
#headerContainer { transition: .2s;}
#headerContainer.is-show { background: #fff; }
#headerContainer.is-show a { color: #000;}

.page-index #headerContainer.is-show .logo img,
.page-about #headerContainer.is-show .logo img,
.page-product #headerContainer.is-show .logo img,
.page-news #headerContainer.is-show .logo img,
.page-gallery #headerContainer.is-show .logo img { opacity: 1 !important;}
#headerContainer.is-show .langul li:first-child::after { color: #000;}
@media screen and (min-width: 1001px) {
/* #headerContainer.is-height { background: #fff; }
#headerContainer.is-height .logo,
#headerContainer.is-height .langul { line-height: 94px; }
#headerContainer.is-height .gnavul li.gnavlink { padding: 25px 20px;}
#headerContainer.is-height #menu li .hovermenu.active { top: 94px; } */
}
@media screen and (max-width: 1220px) {
  /* #headerContainer.is-height .gnavul li.gnavlink { padding: 25px 12px; } */
}
@media screen and (max-width: 1110px) {
  #headerContainer.is-show { background:none;}
  #headerContainer.is-show .logo { display: none;}
  /* #headerContainer.is-height .gnavul li.gnavlink { padding: 0px;}
  #headerContainer.is-height .gnavul li a { padding: 15px 10%; } */
  .page-index #headerContainer.is-show .logo img,
  .page-about #headerContainer.is-show .logo img,
  .page-product #headerContainer.is-show .logo img,
  .page-news #headerContainer.is-show .logo img,
  .page-gallery #headerContainer.is-show .logo img { opacity: 0 !important;}

  #headerContainer.is-show ul li a { color: #fff; }
  #headerContainer.is-show .langul li:first-child::after { color: #fff;}
}
@media screen and (max-width: 800px) {
  #headerContainer.is-show { padding: 0;}
  /* #headerContainer.is-height .gnavul li a { padding: 2.6vw 10%; } */
}





/* emergency NEWS HACK */
.page-index.emergencyChk .main:after { height: calc(100vh - 40px); height: calc(100vh - 100px); }
.page-index.emergencyChk .copy { padding-bottom: 30px; padding-bottom: 90px; }

.emergencyNewsInner {  position: fixed; bottom: 0; left: 0; width: 100%; background: #222; z-index: 990; text-align: center;}
.emergencyNewsInner a{ font-size: 1.4em;  display: block; color: #fff; height: 60px; line-height: 60px; box-sizing: border-box;}

@media screen and (max-width: 560px) {
    .emergencyNewsInner a{ font-size: 1.3em; height: 50px; line-height: 50px; }
    .page-index.emergencyChk .main:after { height: calc(100vh - 90px); }
}
@media screen and (max-width: 350px) {
    .emergencyNewsInner a{  font-size: 1.1em; }
}
@media screen and (min-width: 801px) {
.page-index.emergencyChk a.pagedown {  bottom: 90px; }
}
/* emergency NEWS HACK */

.page-index.fixed{ position: fixed;}


/* loading */
.loading {
position: fixed;
z-index: 10001; z-index: 995;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: #00296a ; color: #fff; width: 100%; height: 100vh;
    display: flex; justify-content: center;align-items: center;
}
.loading img{
  animation: loadFlash 1.5s infinite;
}
@keyframes loadFlash{
  50%{
    opacity: 0;
  }
}


@media screen and (max-width: 768px) {
/* Avoid Chrome to see Safari hack */
@supports (-webkit-touch-callout: none) {
  .loading {
    /* The hack for Safari */
    height: -webkit-fill-available;
  }
}
}


#bg-video{
 position: fixed;
 right: 0;
 bottom: 0;
 margin: 0;
 transform-origin: center center;
 min-width: 100%;
 min-height: 100%;
 width: auto;
 height: auto;
 z-index: -100;
 top: 50%;
 left: 48%; transform: translate(-48%,-50%); /* FV MOV HACK */
 background: #00296a ;
    /*background: #ccc url('') no-repeat;*/
 background-size: cover;
}
/*
@media screen and (max-width: 750px) {
    #bg-video{
     right: auto;
     bottom:auto;
     width: 100%;
     min-height: none;
    }
}
@media screen and (max-width: 560px) {
    #bg-video{
     top: -20%;
     left: 0%;
     transform: translate(0%,0%);
    }
}
*/

#bg-videogra{ position: fixed; z-index: -1; opacity: 0.3; width: 100%; height: 100vh;
    /*background: linear-gradient(45deg, #d5bb1a, #00849d, #432b67); */ 
    /*background: linear-gradient(45deg, #00296a, #00849d, #1d384e, #00296a);*/
    background: linear-gradient(45deg, #012660, #012660);
    background-size: 600% 600%; animation: mainbg 10s ease infinite;}
.main { width: 100%; height: 100vh;  color: #fff;  /* position: fixed; background: #ccc; */ }
@keyframes mainbg {
0%{background-position:0% 50%}
50%{background-position:100% 50%}
100%{background-position:0% 50%}
}
.main a { color: #fff;}
.main:after { width: calc(100% - 40px); height: calc(100vh - 40px); top: 20px; left: 20px; border: 1px solid #fff; content: ""; position: absolute;}
.main:before { width: 100%; height: 100vh ; top: 0px; left: 0px; content: ""; position: absolute; background: #00296a ;z-index: -101;}



.maintxtwrap { padding-left: 120px;}
.maintxten { font-size: 8em; margin-bottom: 40px; line-height: 1;}
.maintxtjp { font-size: 2.5em; margin-bottom: 10px; font-weight: bold;}
.maintxten02 { font-size: 2em;}
.mainbnr01 { position: absolute; bottom: 50px; bottom: 110px; right: 50px; z-index: 2;}


  @media screen and (max-width: 812px) {
      @media screen and (orientation: landscape) {
      /* 横向きの場合のスタイル */
      .maintxtwrap { padding-left: 5%; transform: translateY(0%);}
      .maintxten { font-size: 5em; line-height: 1.5; margin-bottom: 0.25em;}
      .maintxten br{ display: none;}
      .maintxtjp { font-size: 1.8em; }
          .maintxtjp br.sp-show-inline{ display: none;}
      .maintxten02 { font-size: 1.3em;  }
          .maintxten02 br{ display: none;}
      .mainbnr01 { width: 100px;  bottom: 80px; right: 5%; }
          
       }
  }  


  @media screen and (max-width: 800px) {
  .maintxtwrap { padding-left: 10vw; }
  .main:after { content: none;}
  }
  @media screen and (max-width: 560px) {
  .maintxtwrap { padding-left: 8vw; transform: translateY(5%);}
  .maintxten { font-size: 12vw; margin-bottom: 5vw;}
  .maintxtjp { font-size: 3.8vw;}
  .maintxten02 { font-size: 3.5vw; }
      .mainbnr01 { width: 120px;  bottom: 80px; right: 7vw; }

  }

/*.mainbnr20th_anime img {
   -webkit-animation: anim20th 1s;
　　animation: anim20th 1s;
　　transform-origin: 50% 50%;
}
@keyframes anim20th {
　　0% { transform: scale(0.4, 0.4); opacity: 0;}
　　40% { transform: scale(1.2, 1.2); }
　　60% { transform: scale(1, 1); }
　　80% { transform: scale(1.1, 1.1); }
　　100% { transform: scale(1, 1); }
}*/

/* mouse scroll */
a.pagedown { right: 0; left: 0; margin: auto; bottom: 60px; z-index: 2; display: inline-block; -webkit-transform: translate(0, -50%); transform: translate(0, -50%); text-decoration: none; font-size: 1.4em;}
a.pagedown p { letter-spacing: 0.1em;}
a.pagedown span {
  position: absolute;
  top: 30px;
  left: 0;
  right: 0;
  margin: auto;
  width: 1px;
  height: 80px;
  border-left: 1px solid #fff;
  -webkit-animation: sdb 2s infinite;
  animation: sdb 2s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotate(0) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(0) translate(0, 25px);
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    transform: rotate(0) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: rotate(0) translate(0, 25px);
    opacity: 0;
  }
}
  @media screen and (max-width: 800px) {
    a.pagedown { right: 20px; left: auto; bottom: 0; top: 0; -webkit-transform: translate(0, 55%); transform: translate(0, 55%); }
    a.pagedown p { transform: rotate(90deg);}
    a.pagedown span { top: -120px; left: 0; right: 3px; height: 60px;}
  }
  @media screen and (max-width: 560px) {
    a.pagedown { right: 5px;}
  }




.indwrap { /*background: #fff; top: 100vh; */ position: relative; z-index: 10;}
.indnewswrap { padding: 100px 0 80px;}
.inner800 { max-width: 800px; width: 90%; margin: 0 auto; }
.indnewsmid { font-size: 2.5em; width: 200px; height: 45px; line-height: 45px; margin: 0 auto 50px; text-align: center; background: #000; color: #fff; }
/*.indnewsul { margin-bottom: 60px; font-size: 1.4em; border-top: 1px solid #000; }
.indnewsul li { border-bottom: 1px solid #000;}
.indnewsul li a { padding: 15px 0; display: flex; align-items: center; position: relative; }
.indnewsul li a:after { content: ""; position: absolute; right: 10px; width: 8px; height: 8px; border-top: 1px solid #000; border-right: 1px solid #000; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
.indnewsul li a:before { width: 30px; height: 100%; background: #fff; content: ""; position: absolute; right: 0; top: 0; }
.indnewsdate { width: 100px; margin-right: 20px;border: 1px solid #000; text-align: center;}
.indnewsttl { height: 1.4em; overflow: hidden; flex-shrink: 100;}*/
.indnewsbtn { height: 46px; line-height: 46px; border-radius: 23px; font-size: 1.6em; border: 1px solid #000;  max-width: 400px; width: calc(100% - 40px); margin: 0 auto; display: block; text-align: center; }
.indnewsbtn:hover { background: #000; color: #fff;}


.informationList { margin-bottom: 60px; border-top: 1px solid #000; }
.informationList li { border-bottom: 1px solid #000;}
.informationList li a { padding: 26px 0; display: flex;  flex-wrap: wrap; align-items: center; position: relative; padding-right: 40px; }
.informationList li a:after { content: ""; position: absolute; right: 10px; width: 8px; height: 8px; border-top: 1px solid #000; border-right: 1px solid #000; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
.informationList li a:before { width: 30px; height: 100%; content: ""; position: absolute; right: 0; top: 0; }
.informationList li a:hover:after{ right: 5px;}
.infoList_date { width: 100px; font-size: 1.5em; opacity: 0.8; }
.infoList_cate { font-size: 1.4em;  width: 150px; padding: 0 5px; height: 26px; line-height: 26px; letter-spacing: 0;  display: inline-block; color:#fff; background: #F07800; background: #00296A; border: 1px solid #fff; box-sizing: border-box; text-align: center;}
.infoList_ttl { width: calc(100% - 250px); font-size: 1.6em; box-sizing: border-box; padding-left: 20px; }
.informationList li.is-hidden { opacity: 0; height: 0; margin: 0; padding-bottom: 0;}

.informationList .cat-news { background: #00296A; }
.informationList .cat-press { background: #F07800; }
.informationList .cat-topics { background: #0091FF;}


  @media screen and (max-width: 800px) {
    .indnewswrap { padding: 12vw 0 15vw;}
    /*.indnewsul  { margin-bottom: 10vw;}
    .indnewsul li a { display: block;}
    .indnewsul li a:after {top: 0; bottom: 0; margin: auto;}
    .indnewsdate { margin-right: 0; margin-bottom: 10px;}*/
      
.informationList { margin-bottom: 10vw;}
.informationList li a { padding: 16px 0;  padding-right: 40px; }
.infoList_date { width: 90px; order: 2;  }
.infoList_cate { width: auto; padding: 0 10px; order: 3; }
.infoList_ttl { width: 100%; font-size: 1.5em; padding-left: 0px; padding-bottom: 8px; order: 1; }
      
    .indnewsbtn { min-width: 200px; width: 50%;}
  }
  @media screen and (max-width: 560px) {
    .indnewsmid { font-size: 2em; width: 170px; height: 40px; line-height: 40px; margin: 0 auto 8vw;}
  }

.indtopicswrap { }
.inner1000 { max-width: 1000px; width: 90%; margin: 0 auto; }
.indnewsmid {}

#ind_Topics { background:rgba(240,240,240,0.8); background:rgba(240,240,240,1);}
/*  #ind_Topics .prodlistul { position: relative; z-index: 1;}
  #ind_Topics .prodlistul li { border-radius: 0; max-width: 313px; width: 32%; margin-bottom: 55px;}
  #ind_Topics .prodlistul .card_hover::before { border-radius: 0;}
  #ind_Topics .prodlistul .card_hover .prodlistimg,
  #ind_Topics .prodlistul .card_hover .prodlistimg img { width: 100%;}
  #ind_Topics .prodlistul .prodlisttxtwrap { padding: 25px 25px 30px;}
  #ind_Topics .prodlistul .prodlistbrn,
  #ind_Topics .prodlistul .prodlistdate { font-size: 1.4em;}
  #ind_Topics .prodlistul .indtopicsttl { font-size: 1.4em; margin-top: 10px;}

  #ind_Topics .prodlistul li a::after { content: none;}*/



@media screen and (max-width: 800px) {
    #ind_Topics_slide  { max-width: 55vw; margin: 0 auto;}
    #ind_Topics_slide .prodlistul { width: 100%; max-width: 100%; margin: 0 auto 120px;}
    #ind_Topics_slide .prodlistul li { border-radius: 0; padding: 0 10px; max-width: 55vw; width: 100%; margin-bottom: 0;}

    #ind_Topics .prodlistul .card_hover::before { border-radius: 0;}
    #ind_Topics .prodlistul .card_hover .prodlistimg,
    #ind_Topics .prodlistul .card_hover .prodlistimg img { width: 100%;}
    #ind_Topics .prodlistul .prodlistbrn,
    #ind_Topics .prodlistul .prodlistdate { font-size: 1.4em;}
    #ind_Topics .prodlistul .indtopicsttl { font-size: 1.4em; margin-top: 10px;}

    #ind_Topics_slide .prodlistul li::before { background: none;}
    #ind_Topics_slide .prodlistul li a { background: #fff;}
}
@media screen and (max-width: 600px) {
     #ind_Topics_slide  { max-width: 90vw; margin: 0 auto;}
     #ind_Topics_slide .prodlistul li { max-width: 90vw; width: 100%;}
}
  @media screen and (max-width: 812px) {
      @media screen and (orientation: landscape) {
      /* 横向きの場合のスタイル */
        #ind_Topics_slide  { max-width: 50vw; margin: 0 auto;}
        #ind_Topics_slide .prodlistul li { max-width: 50vw; width: 100%;}
       }
  }  



.ind_Topicsmid { font-size: 4em; padding: 0px 0 50px; letter-spacing: 0.1em;}
@media screen and (max-width: 520px) {
.ind_Topicsmid { font-size: 3em;}
}
#index-topics-pc{ padding-bottom: 30px;}


.indbnrwrap { margin: 100px 0 150px; }
.indbnrul {}
.indbnrul li { margin-bottom: 100px; height: 550px; position: relative;}
.indbnrul li:after { content: ""; position: absolute; top: 0; left: 0; width: 85vw; height: 100%;}
.indbnrul li:nth-child(2n):after { left: inherit; right: 0;}
.indbnrul li:nth-child(1):after { background: url("../images/index/indbg02_v2b.jpg?210203") no-repeat center; background-size: cover; }
.indbnrul li:nth-child(2):after { background: url("../images/index/indbg02_v2.jpg?210203") no-repeat center; background-size: cover; }
.indbnrul li:nth-child(3):after { background: url("../images/index/indbg03_v2.jpg?210203") no-repeat center; background-size: cover; }
.indbnrul li:nth-child(4):after { background: url("../images/index/indbg04_v2.jpg?210203") no-repeat center; background-size: cover; }
.indbnr { position: absolute; right: 0; bottom: 0; z-index: 2; background: #fff;}
.indbnrul li:nth-child(2n) .indbnr { right: inherit; left: 0;}
.indbnr a { width: 50vw; padding: 60px; box-sizing: border-box; background: #00296a; color: #fff; display: block; }
@media screen and (min-width: 801px) {
.indbnr a:hover { width: 60vw;}
}
.indbnrul li:nth-child(2) a { background: #f07800; }
.indbnrul li:nth-child(3) a { background: #009600; }
.indbnrul li:nth-child(4) a { background: #9619e6; }
.indbnrmiden { font-size: 4em; }
.indbnrmidjp { margin-bottom: 30px; font-size: 2em; font-weight: bold;}
.indbnrtxt {margin-bottom: 40px; font-size: 1.4em;}
.indbnrbtn { padding: 15px 80px; font-size: 1.6em; color: #00296a; line-height: 1; display: inline-block; background: #fff; }
.indbnrul li:nth-child(2) .indbnrbtn { color: #f07800; }
.indbnrul li:nth-child(3) .indbnrbtn{ color: #009600; }
.indbnrul li:nth-child(4) .indbnrbtn{ color: #9619e6; }

@media screen and (max-width: 800px) {
  .indbnrwrap { margin: 0; }
  .indbnrul li { margin-bottom: 0; height: auto; position: static;}
  .indbnrul li:after { content: none;}
  .indbnr { position: static;}
  .indbnr a { width: 100vw; padding: 4vw 10vw 6vw;}
  .indbnrmiden { display: inline-block;}
  .indbnrmidjp { display: inline-block; margin-left: 1em;}
  .indbnrbtn { padding: 12px 80px; display: block; margin-left: auto; width: 203px; box-sizing: border-box; }
}
  @media screen and (max-width: 560px) {
  .indbnr a { padding: 5vw 5% 8vw;}
  .indbnrmiden { font-size: 2.5em; }
  .indbnrmidjp { font-size: 1.4em; margin-bottom: 20px;}
  .indbnrtxt { margin-bottom: 25px;}
}






#ind_secbnr_Container { margin: 100px 0 50px;   margin: 0px 0 ; overflow: hidden;
    display: flex; flex-wrap:wrap; justify-content: space-between;  padding: 20px 20px 0; background-color: #000;}

/* ind_secbnr */

/* 2020.10 hide */
/*
.ind_secbnr { width: 100%; margin-bottom: 50px;}
  .ind_secbnr .ind_secbnr_img { width: 86%; height: 550px; position: relative; overflow: hidden;}
  .ind_secbnr .ind_secbnr_img img { -webkit-transition: all 0.8s ease; transition: all 0.8s ease; }

.ind_secbnr_ttl { letter-spacing: 0.1em; margin-bottom: 30px; }
  .ind_secbnr_ttl_en { font-size: 4em; margin-bottom: 20px; }
  .ind_secbnr_ttl_jp { font-size: 2em; }


.ind_secbnr .ind_secbnr_txt { background: #00296a; width: 50%; margin-left: auto; padding: 55px 60px 50px; box-sizing: border-box; color: #fff; margin-top: -350px; height: 350px; min-width: 520px; overflow: hidden;}
  .ind_secbnr .ind_secbnr_txtInner { }
  .ind_secbnr .ind_secbnr_txtInner p.ind_secbnr_p { letter-spacing: 0.1rem; font-size: 1.4em;}
  .ind_secbnr .ind_secbnr_btn { font-size: 1.6em; color: #00296a; background: #fff; max-width: 200px; width: 100%; margin-top: 40px; border: 1px solid #fff; box-sizing: border-box; padding: 15px 0; border-radius: 24px;}

@media screen and (min-width: 801px) {
  .ind_secbnr a:hover .ind_secbnr_img img { -webkit-transform: scale(1.1); transform: scale(1.1);}
  .ind_secbnr a:hover .ind_secbnr_btn { background: none; color: #fff !important;}
}
@media screen and (max-width: 800px) {
  #ind_secbnr_Container { margin: 0;}
  .ind_secbnr { margin-bottom: 0;}
  .ind_secbnr .ind_secbnr_img { width: 100%; height: auto;}
  .ind_secbnr .ind_secbnr_txt { margin-top: 0; width: 100%; padding: 5vw 8vw 7vw; height: auto; min-width: auto;}
  .ind_secbnr_ttl_en { display: inline-block;}
  .ind_secbnr_ttl_jp { display: inline-block; margin-left: 1em;}
  .ind_secbnr .ind_secbnr_txtInner { width: 100%;}
  .ind_secbnr .ind_secbnr_btn { margin-left: auto;}
}
@media screen and (max-width: 560px) {
  .ind_secbnr .ind_secbnr_txt { padding: 6vw 6% 7vw;}
  .ind_secbnr_ttl { margin-bottom: 5px;}
  .ind_secbnr_ttl_en { font-size: 2.5em; }
  .ind_secbnr_ttl_jp { font-size: 1.4em; margin-bottom: 20px;}
  .ind_secbnr .ind_secbnr_btn { margin-top: 25px;}
}
*/


/* 2020.11.04 hide */
/*.ind_secbnr { width: 100%;margin-bottom: 0px; background: rgba(255,255,255,0.8);}
  .ind_secbnr .ind_secbnr_img { width: 55.5%; height: 340px; position: relative; overflow: hidden;}
  .ind_secbnr .ind_secbnr_img img { -webkit-transition: all 0.8s ease; transition: all 0.8s ease; }

.ind_secbnr_ttl { letter-spacing: 0.1em; margin-bottom: 20px; }
  .ind_secbnr_ttl_en { font-size: 4em; margin-bottom: 20px; }
  .ind_secbnr_ttl_jp { font-size: 2em; }


.ind_secbnr .ind_secbnr_txt { background: #00296a; width: 45%; margin-left: auto; padding: 55px 60px 50px; box-sizing: border-box; color: #fff; margin-top: -340px; height: 340px; min-width: 520px; overflow: hidden;}
  .ind_secbnr .ind_secbnr_txtInner { }
  .ind_secbnr .ind_secbnr_txtInner p.ind_secbnr_p { letter-spacing: 0.1rem; font-size: 1.4em;}
  .ind_secbnr .ind_secbnr_btn { font-size: 1.6em; color: #00296a; background: #fff; max-width: 200px; width: 100%; margin-top: 40px; border: 1px solid #fff; box-sizing: border-box; padding: 15px 0; border-radius: 24px;}

@media screen and (min-width: 801px) {
  .ind_secbnr a:hover .ind_secbnr_img img { -webkit-transform: scale(1.1); transform: scale(1.1);}
  .ind_secbnr a:hover .ind_secbnr_btn { background: none; color: #fff !important;}
}
@media screen and (max-width: 800px) {
  #ind_secbnr_Container { margin: 0;}
  .ind_secbnr { margin-bottom: 0;}
  .ind_secbnr .ind_secbnr_img { width: 100%; height: auto;}
  .ind_secbnr .ind_secbnr_txt { margin-top: 0; width: 100%; padding: 5vw 8vw 7vw; height: auto; min-width: auto;}
  .ind_secbnr_ttl_en { display: inline-block;}
  .ind_secbnr_ttl_jp { display: inline-block; margin-left: 1em;}
  .ind_secbnr .ind_secbnr_txtInner { width: 100%;}
  .ind_secbnr .ind_secbnr_btn { margin-left: auto;}
}
@media screen and (max-width: 560px) {
  .ind_secbnr .ind_secbnr_txt { padding: 6vw 6% 7vw;}
  .ind_secbnr_ttl { margin-bottom: 5px;}
  .ind_secbnr_ttl_en { font-size: 2.5em; }
  .ind_secbnr_ttl_jp { font-size: 1.4em; margin-bottom: 20px;}
  .ind_secbnr .ind_secbnr_btn { margin-top: 25px;}
}*/


.ind_secbnr { width: calc(50% - 10px); margin-bottom: 20px; }
  .ind_secbnr .ind_secbnr_img { width: 100%; height: 350px; position: relative; overflow: hidden;}
  .ind_secbnr .ind_secbnr_img img { -webkit-transition: all 0.8s ease; transition: all 0.8s ease; }

#ind_secbnr_Container.type-en .ind_secbnr { width: calc(33.33% - 10px);  }

@media screen and (min-width: 801px) {
.ind_secbnr .ind_secbnr_img:before {background: linear-gradient(45deg, #00296a, #001b2f, #00296a); background-size: 600% 600%; animation: mainbg 5s ease infinite; z-index: 1; content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0.3; }
}


.ind_secbnr_ttl { letter-spacing: 0.1em; margin-bottom: 20px; width: 100%; }
  .ind_secbnr_ttl_en { font-size: 4em; margin-bottom: 20px; }
  .ind_secbnr_ttl_jp { font-size: 1.8em; }


.ind_secbnr .ind_secbnr_txt {/* background: rgba(0,0,0,0.2);*/ width: 100%; margin-left: auto; padding: 55px 10% 50px; box-sizing: border-box; color: #fff; margin-top: -350px; height: 350px; /*min-width: 520px;*/ overflow: hidden; position: relative;z-index: 2;
justify-content: center; text-align: center;}
  .ind_secbnr .ind_secbnr_txtInner { display: flex; flex-wrap: wrap; padding: 30px 0;}
  .ind_secbnr .ind_secbnr_txtInner p.ind_secbnr_p { letter-spacing: 0.1rem; font-size: 1.4em;}
  .ind_secbnr .ind_secbnr_btn { font-size: 1.6em; /*color: #00296a; background: #fff; */
      color: #fff; background: none;  max-width: 200px; width: 100%; margin-top: 40px; border: 1px solid #fff; box-sizing: border-box; padding: 15px 0; border-radius: 24px;}
  .ind_secbnr .ind_secbnr_txtInner a{ max-width: 200px; width: 100%;  margin: 0 auto;}
    
@media screen and (min-width: 801px) {
  .ind_secbnr a:hover .ind_secbnr_img img { -webkit-transform: scale(1.1); transform: scale(1.1);}
  .ind_secbnr a:hover .ind_secbnr_btn { background: #fff; color: #00296a !important;}
}
@media screen and (max-width: 1060px) {
  .ind_secbnr .ind_secbnr_txtInner p.ind_secbnr_p { font-size: 1.3em;}
}
@media screen and (max-width: 1000px) {
  #ind_secbnr_Container.type-en .ind_secbnr ,
  .ind_secbnr { width: 100%;  }
}
@media screen and (max-width: 800px) {
#ind_secbnr_Container { padding: 0px 0px 0px; }
  #ind_secbnr_Container { margin: 0;}
  .ind_secbnr { margin-bottom: 0;}
  .ind_secbnr .ind_secbnr_img { width: 100%; height: auto;}
  .ind_secbnr .ind_secbnr_txt { margin-top: 0; width: 100%; padding: 5vw 8vw 7vw; height: auto; min-width: auto;}
  .ind_secbnr_ttl_en { display: inline-block; margin-bottom: 0px;}
  .ind_secbnr_ttl_jp { display: inline-block; margin-left: 1em;}
  .ind_secbnr .ind_secbnr_txtInner { width: 100%;}
  .ind_secbnr .ind_secbnr_btn { margin-left: auto;}

/*#ind_About  { background: #00296a;}
#ind_Product  { background: #000c31;}
#ind_Recruit  { background: #003891; }
#ind_Access  { background: #001b52;}*/

#ind_About,
#ind_Product,
#ind_Recruit,
#ind_Access  { background: linear-gradient(45deg, #00296a, #001b2f, #00296a, #001b2f, #00296a); background-size: 600% 600%; animation: mainbg 3s ease infinite; }
}

@media screen and (max-width: 560px) {
  .ind_secbnr .ind_secbnr_txtInner { padding: 15px 0;}
  .ind_secbnr .ind_secbnr_txt { padding: 6vw 6% 7vw;}
  .ind_secbnr_ttl { margin-bottom: 5px;}
  .ind_secbnr_ttl_en { font-size: 2.5em; }
  .ind_secbnr_ttl_jp { font-size: 1.4em; margin-bottom: 0px;}
  .ind_secbnr .ind_secbnr_btn { margin-top: 25px;}
}





@keyframes btn-left {
  from {
    width: 0;
    opacity: 0; }
  to {
    width: 150px;
    opacity: 1; }
}




/* 2020.11.04 hide */
/*
.ind_secbnr.left .ind_secbnr_img { margin-left: auto;}
.ind_secbnr.left .ind_secbnr_txt { margin-left: 0; overflow: hidden; }
.ind_secbnr.left .ind_secbnr_txt { justify-content: flex-end;}
.ind_secbnr_txt { position: relative;}*/

/* mask */


.boxslideInner { opacity: 0; }


.isPlay {
  animation-name: play;
  animation-duration: .3s;
  animation-fill-mode: forwards;
  animation-timing-function: cubic-bezier(.8,0,.5,1);
  position: relative;
  /*opacity: 1 !important;*/
}

.isPlay:before {
  animation-name: maskOut;
  animation-duration: .4s;
  animation-delay: .2s;
  animation-fill-mode: forwards;
  animation-timing-function: cubic-bezier(.8,0,.5,1);
  content: '';
  position: absolute;
  display: inline-block;
  top: 0;
  right: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: #FFF;
}

.isPlay.ind_secbnr_img {animation-duration: .2s;}
.ind_secbnr_txt.isPlay:before{ animation-duration: .3s; }

#ind_secbnr_Container > .ind_secbnr:nth-child(2) .isPlay{animation-duration: .4s;}
#ind_secbnr_Container > .ind_secbnr:nth-child(3) .isPlay{animation-duration: .5s;}
#ind_secbnr_Container > .ind_secbnr:nth-child(4) .isPlay{animation-duration: .6s;}
#ind_secbnr_Container > .ind_secbnr:nth-child(2) .isPlay.ind_secbnr_img{animation-duration: .3s;}
#ind_secbnr_Container > .ind_secbnr:nth-child(3) .isPlay.ind_secbnr_img{animation-duration: .4s;}
#ind_secbnr_Container > .ind_secbnr:nth-child(4) .isPlay.ind_secbnr_img{animation-duration: .5s;}


/* 2020.11.04 hide */
/*#ind_About .ind_secbnr_txt.isPlay:before { background: #133d80;}
#ind_Product .ind_secbnr_txt.isPlay:before { background: #ee8c2a;}
#ind_Recruit .ind_secbnr_txt.isPlay:before { background: #45b645;}
#ind_Access .ind_secbnr_txt.isPlay:before { background: #a252d6;}

#ind_Product .ind_secbnr_img.isPlay:before,
#ind_Product.ind_secbnr .ind_secbnr_txt { background: #f07800;}
#ind_Recruit .ind_secbnr_img.isPlay:before,
#ind_Recruit.ind_secbnr .ind_secbnr_txt { background: #009600;}
#ind_Access .ind_secbnr_img.isPlay:before,
#ind_Access.ind_secbnr .ind_secbnr_txt { background: #9619e6;}

#ind_Product.ind_secbnr .ind_secbnr_btn { color: #f07800;}
#ind_Recruit.ind_secbnr .ind_secbnr_btn { color: #009600;}
#ind_Access.ind_secbnr .ind_secbnr_btn { color: #9619e6;}

@keyframes play {
  from {
    transform: translateX(-100%); transform: translateX(-10%); opacity: 0;
  }

  to {
    transform: translateX(0); opacity: 1;
  }
}

@keyframes maskOut {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(100%);
  }
}

*/


@keyframes play {
  from {
    transform: translateX(-20%); opacity: 0;
  }

  to {
    transform: translateX(0); opacity: 1;
  }
}

@keyframes maskOut {
  0% {
    transform: translateX(0); opacity: 1;
  }
  100% {
    transform: translateX(120%); opacity: 0;
  }
}








.footer { padding-top: 80px; background: #000; color: #fff; position: relative;}
.footer a { color: #fff;}
a.pagetopwrap { right: 60px; top: 60px; padding-top: 70px; position: absolute; font-size: 1.2em; display: block;}
a.pagetopwrap:before { content: ""; width: 1px; height: 50px; left: 50%; top: 0; background: #fff; position: absolute;}
a.pagetopwrap:after { content: ""; position: absolute; top: 0; left: calc(50% - 5px); width: 10px; height: 10px; border-top: 1px solid #fff; border-left: 1px solid #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
@media screen and (min-width: 802px) {
a.pagetopwrap:hover { padding: 60px 0 10px;}
}
.pagetop { width: 40px; height: 40px; border-radius: 50%; background: #fff; color: #000; position: relative;}
.inner1100 { max-width: 1100px; width: 90%; margin: 0 auto; }
.footlogo { margin-bottom: 40px;}
.footmenuul { margin-right: 50px;}
.footmenuul li { margin-bottom: 15px;}
.footmenuul li a { display: flex;}
.footmenujp { font-size: 1.5em;}

.footbnrwrap {}
.footbnrul { width: 410px;}
/*.footbnrul li:first-child { width: 100%; }*/
.footbnrul li { margin-bottom: 10px; width: calc(50% - 5px); }
.footbnrul li a {}
.copy { padding: 60px 40px 30px; font-size: 1.2em; text-align: right;}

@media screen and (max-width: 1400px) {
.footer .inner1100 { width: 82%;}
a.pagetopwrap { right: 30px;}
}
@media screen and (max-width: 1000px) {
.footer .inner1100 { width: 86%; transform: translateX(-2%);}
a.pagetopwrap { right: 20px;}
.footbnrul { width: 320px;}
.footmenujp { font-size: 1.3em;}
}
@media screen and (max-width: 800px) {
.footer { padding-top: 50px;}
.footer .inner1100 { width: 90%; max-width: 500px; transform: translateX(0); }
.footmenuul li { margin-bottom: 10px;}
.pagetop { width: 60px; height: 60px;}
a.pagetopwrap { font-size: 1.8em; top: 35px; padding-top: 0;}
a.pagetopwrap:before,a.pagetopwrap:after { content: none;}
.footbnrwrap { margin-top: 30px;}
.footbnrul { width: 100%; max-width: 500px; margin: 0 auto; }
.footbnrul li { margin-bottom: 12px; width: 48.5%; }
.copy { text-align: center; padding-top: 40px;}
}




/* about
==========================================================*/

.kasoumain { width: 100%; height: 360px; color: #fff; position: fixed; flex-direction: column;}
.kasoumain:after { width: calc(100% - 30px); height: calc(100% - 30px); top: 15px; left: 15px; border: 1px solid #fff; content: ""; position: absolute; z-index: 2;}
/*.page-about .kasoumain { background: url("../images/about/aboutmain.jpg?2011") no-repeat center; background-size: cover;}
.page-product .kasoumain { background:url("../images/product/productmain.jpg?2011") no-repeat center; background-size: cover;}
.page-news .kasoumain { background:url("../images/news/newsmain_v2.jpg?2011") no-repeat center; background-size: cover;}
.page-gallery .kasoumain { background:url("../images/gallery/gallerymain.jpg?2011") no-repeat center; background-size: cover; }*/
.page-about .kasoumain { background:url("../images/product/productmain_v2b.jpg?2101") no-repeat center; background-size: cover;}
.page-product .kasoumain { background:url("../images/product/productmain_v2.jpg?210201") no-repeat center; background-size: cover;}
.page-news .kasoumain { background: url("../images/about/aboutmain_v2.jpg?2101") no-repeat center; background-size: cover;}
.page-gallery .kasoumain { background:url("../images/gallery/gallerymain.jpg?2011") no-repeat center; background-size: cover; }
.page-gallery .kasoumain::before{ position: fixed; content: ""; display: block; width: 100%; height: 100%; top: 0; left: 0; background: rgba(0,41,106,0.3); z-index: 1; }

.kasoumainttlen { font-size: 6em; letter-spacing: .05em; position: relative; z-index: 3; margin-top: 20px;}
.kasoumainttljp { font-size: 1.8em; font-weight: bold; position: relative; z-index: 3; line-height: 1;}

.kasouwrap { top: 270px; background: #f0f0f0; position: relative; z-index: 10;}
.page-about .kasouwrap,
.page-product .kasouwrap,
.page-news .kasouwrap,
.page-gallery .kasouwrap { top: 360px; }

@media screen and (min-width: 801px) {
  @media screen and (min-height: 1000px) {
    .kasoumain { height: 42vh;}
    .page-about .kasouwrap,
    .page-product .kasouwrap,
    .page-news .kasouwrap,
    .page-gallery .kasouwrap { top: 42vh; }
  }
}

@media screen and (max-width: 800px) {
.kasouwrap { top: 180px;}
.kasoumain { height: 50vw;}
.kasoumain:after { content: none;}
.kasoumainttlen { font-size: 9vw; font-size: 7.4vw; letter-spacing: .05em; margin-bottom: 0.1em; line-height: 1.2;}
.kasoumainttljp { font-size: 3vw;}
.page-about .kasouwrap, .page-product .kasouwrap, .page-news .kasouwrap, .page-gallery .kasouwrap { top: 50vw;}
}
@media screen and (max-width: 520px) {
.kasoumain { height: 70vw;}
.page-about .kasouwrap, .page-product .kasouwrap, .page-news .kasouwrap, .page-gallery .kasouwrap { top: 70vw;}
}


/* .aboutul */


.page-about .kasousection { padding: 80px 0 70px;}
#About_list .prodlistul .card_hover:hover { -webkit-opacity: .8; opacity: .8; }
#About_list .prodlistul .prodlisttxtwrap { padding: 20px 25px 55px; }
#About_list .prodlistul .groupmid { margin-bottom: 5px; font-size: 2em;}

.About_common_link { padding: 80px 0 70px; margin-bottom: -120px; margin-top: 120px; }

@media screen and (max-width: 800px) {
  .page-about .kasousection { padding: 6vw 0 5vw;}
  #About_list .prodlistul li { margin-bottom: 3.5vw;}

  .About_common_link { padding: 6vw 0 5vw; margin-bottom: -18vw; margin-top: 15vw;}
}
@media screen and (max-width: 520px) {
  .page-about .kasousection { padding: 5vw 0 3vw;}
  #About_list .prodlistul li { margin-bottom: 4.5vw;}
  #About_list .prodlistul .groupmid { font-size: 2.2em;}

  .About_common_link { padding: 5vw 0 3vw;}
}




/* @media screen and (min-width: 901px) {
.aboutul li a:hover .aboutulen {font-size: calc(3.5em * 0.95);}
.aboutul li a:hover .aboutuljp {font-size: calc(2em * 0.95); }
}
@media screen and (min-width: 801px) {
.aboutul li a:hover { border: 10px solid #000;}
}
@media screen and (max-width: 1100px) {
.aboutulen { font-size: 3.1vw;}
.aboutuljp { font-size: 2vw;}
}

@media screen and (max-width: 550px) {
  .aboutul li a { height: 35vw;}
  .aboutulen { font-size: 4.6vw;}
  .aboutuljp { font-size: 2.9vw;}
  .aboutul li a::after { right: 12px; top: calc(50% - 5px); width: 10px; height: 10px;}
}
@media screen and (max-width: 420px) {
  .aboutul li a::after { right: 9px; top: calc(50% - 5px); width: 8px; height: 8px; border-top: 2px solid #000; border-right: 2px solid #000;}
} */

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

  .About_common_link { margin-bottom: -18vw; margin-top: 15vw;}
  .About_common_link .aboutul li a { height: 28vw;}
}




/* message
==========================================================*/

.pagettlwrap { height: 270px; width: 100%; position: fixed;}
.pagettlwrap .inner1100 { height: 100%; display: flex; flex-direction: column; justify-content: center; }
.pagettlen { font-size: 4em; color: #194186; padding-top: 70px; }
.pagettljp { font-size: 1.8em; font-weight: bold;}

.kasousection { padding: 80px 0 120px; }
.message_main { max-width: 900px; width: 90%; margin: 0 auto 80px; }
  .message_main .messageimg { z-index: -1; position: relative; text-align: right;}
  .message_main .messagename {background: #fff; padding: 25px 15px 30px 30px; 
      box-sizing: border-box; left: 0px; top: 9%; width: 44%;}
  .message_main .messagename .messagemid { margin-bottom: 18px; font-size: 2.7em; color: #194186; font-weight: bold; letter-spacing: -0.05rem;}
  .message_main .messagename .messagename_ceo { font-size: 1.6em; font-weight: bold; letter-spacing: .1em;}
  .message_main .messagename .messagename_ceo span { font-size: 1.5em; padding-right: 15px; }
.messagetxtul { font-size: 1.6em; line-height: 2;}
.messagetxtul li { margin-bottom: 20px;}
@media screen and (max-width: 1180px) {
  .message_main .messagename {  }
  .message_main .messagename .messagemid { margin-bottom: 18px; font-size: 2.3em; }
}
@media screen and (max-width: 880px) {
  .message_main { margin: 0 auto 60px; }
  .message_main .messagename { position: static; padding: 30px 30px 35px; width: 60%; margin-right: auto; margin-top: -40px;}
}
@media screen and (max-width: 800px) {
  .pagettlwrap { height: 180px; text-align: center;}
  .pagettlen { font-size: 3.5em; padding-top: 50px; line-height: 1.2;}
  .pagettljp { font-size: 1.4em; margin-top: 5px;}

  .kasousection { padding: 5% 0 18vw; }
  .message_main { margin: 0 auto 50px; }
  .message_main .messagename { position: static; padding: 30px 30px 35px; width: 100%; margin-top: 0;}
}
@media screen and (max-width: 620px) {
  .message_main .messagename { line-height: 1.5;}
}
@media screen and (max-width: 420px) {
  .message_main { margin: 0 auto 10vw; }
  .message_main .messagename { padding: 20px 20px 25px;}
  .message_main .messagename .messagemid { margin-bottom: 15px; font-size: 2em; }
  .message_main .messagename .messagename_ceo { font-size: 1.4em; }
  .message_main .messagename .messagename_ceo span { font-size: 1.5em; padding-right: 15px; }
}


/* company
==========================================================*/

.kasousection {}
.companydl { margin-bottom: 50px; font-size: 1.6em; }
.companydl dt { width: 200px; padding: 23px 0 23px; border-bottom: 2px solid #194186; font-weight: bold; color: #194186; }
.companydl dd { width: -webkit-calc(100% - 200px); width: -moz-calc(100% - 200px); width: calc(100% - 200px); padding: 23px 0 14px; border-bottom: 2px solid #999; }
.companydl dd p { margin-bottom: 10px;}
.gambawrap { background: #fff;}
.gamba-l { padding: 10px 20px; border-right: 1px solid #000; font-size: 1.8em; line-height: 1.2;}
.gamba-l p { padding-right: 5px;}
.gamba-l div {}
.gamba-r { padding: 0 20px;  font-size: 1.6em;}
@media screen and (max-width: 900px) {
  .companydl dt { width: 150px; }
  .companydl dd { width: -webkit-calc(100% - 150px); width: -moz-calc(100% - 150px); width: calc(100% - 150px); }
  .gamba-r { font-size: 1.4em;}
}
@media screen and (max-width: 800px) {
  .companydl { margin-bottom: 40px;}
  .companydl dt { width: 100%; border-bottom: none; padding: 20px 0 5px;}
  .companydl dd { width: 100%; border-bottom: 1px solid #000; padding: 0 0 10px;}
  .gamba-l { width: 100%; border-right: none; justify-content: space-between;}
  .gamba-l .gamba-l_txt { order: 1; width: 70%;}
  .gamba-l .gamba-l_img { order: -1; width: 25%;}
  .gamba-l .gamba-l_img img { width: 100%;}
}
@media screen and (max-width: 500px) {
  .gamba-l { padding: 15px 20px 15px 5px;}
  .gamba-l .gamba-l_txt { width: 62%;}
  .gamba-l .gamba-l_img { width: 36%;}
}
@media screen and (max-width: 420px) {
  .gamba-l { padding: 15px 10px 15px 5px;}
  .gamba-l p:nth-child(2) { font-size: .8em;}
}



/* ci
==========================================================*/

.inner900 { max-width: 900px; width: 90%; margin: 0 auto; }
.ciimg { margin-bottom: 50px;}
.page-ci .companydl { margin: 0;}
.page-ci .companydl dt:nth-child(1) { border-top: 2px solid #194186;}
.page-ci .companydl dd:nth-child(2) { border-top: 2px solid #999; }
@media screen and (max-width: 800px) {
.page-ci .companydl dt:nth-child(1),
.page-ci .companydl dd:nth-child(2) { border-top: none; }
.ciimg { margin-bottom: 20px; }
}

/* group
==========================================================*/

#Group_list { margin-bottom: -30px;}
.groupul li { max-width: 295px; width: 31.5%; border-radius: 10px; overflow: hidden;}
.groupmid { margin-bottom: 15px; font-size: 1.6em; font-weight: bold; color: #194186; line-height: 1.4;}
.grouptxt { font-size: 1.4em; }
.group_foodlink { margin-top: 20px; font-size: 1.3em;}
.group_foodlink a { color: #194186;}
.group_foodlink p { padding-left: 24px;}
.group_foodlink p:after { content: ""; width: 15px; height: 1px; background: #194186; position: absolute; top: 9px; left: 0; }
.group_foodlink p:before{ content: ""; width: 8px; height: 1px; transform: rotate(45deg); background: #194186; position: absolute; top: 6px; left: 8px; }

.group_foodlink p:not(:last-child) { margin-bottom: 10px;}
#Group_list .prodlisttxtwrap { padding: 25px 25px 40px; }

@media screen and (max-width: 800px) {
  .groupul li { width: 48%; max-width: 100%; margin-bottom: 30px;}
  .groupul li:last-child { margin-bottom: 0;}
  .group_foodlink p:after { top: 13px;}
  .group_foodlink p:before{ top: 10px;}

}
@media screen and (max-width: 520px) {
  .groupul li { width: 100%; max-width: 100%; margin-bottom: 30px;}
  .groupul li:last-child { margin-bottom: 0;}
  .group_foodlink { margin-top: 15px;}
  .group_foodlink p:not(:last-child) { margin-bottom: 5px;}
}




/* CSR
==========================================================*/

.comingsoon { font-size: 4em; letter-spacing: .1em; padding: 60px 0 40px;}
@media screen and (max-width: 800px) {
.comingsoon { font-size: 3em; padding: 120px 0 60px;}
}

/* access
==========================================================*/
/*
.page-access .pagettlen { color: #9619E6; }
.accessul li { margin-bottom: 40px}
.accessmid { font-size: 2em; margin-bottom: 10px; font-weight: bold; color: #9619E6;}
.accesstxt { font-size: 1.6em; margin-bottom: 30px; }
.accessimg { margin-bottom: 30px; width: 100%; }
.accessbtnwrap { font-size: 1.6em; justify-content: flex-end; }
.accessbtnwrap a { width: 180px; height: 30px; border-radius: 15px; background: #9619E6; color: #fff; display: flex; justify-content: center; align-items: center; border: 1px solid #9619E6; }
.accessbtnwrap a:hover { color: #9619E6; background: none; }
.accessbtnwrap a:nth-child(2) { margin-left: 15px; background: none; color: #00296A; border: 1px solid #00296A; }
.accessbtnwrap a:nth-child(2):hover {background: #00296A; color: #fff;}
*/

.page-access .pagettlen { color: #00296A; }
/* .accessul { margin-bottom: -40px;} */
.accessul li { margin-bottom: 40px}
.accessmid { font-size: 2em; margin-bottom: 10px; font-weight: bold; color: #00296A;}
.accesstxt { font-size: 1.6em; margin-bottom: 30px; }
.accessimg { margin-bottom: 30px; width: 100%; }
.accessbtnwrap { font-size: 1.6em; justify-content: flex-end; }
.accessbtnwrap a { width: 180px; height: 30px; border-radius: 15px; background: #00296A; color: #fff; display: flex; justify-content: center; align-items: center; border: 1px solid #00296A; }
.accessbtnwrap a:hover { color: #00296A; background: none; }
.accessbtnwrap a:nth-child(2) { margin-left: 15px; background: none; color: #00296A; border: 1px solid #00296A; }
.accessbtnwrap a:nth-child(2):hover {background: #00296A; color: #fff;}



@media screen and (max-width: 800px) {
  .accessimg { margin-bottom: 20px; }
  .accesstxt { margin-bottom: 20px;}
}
@media screen and (max-width: 520px) {
  .accessbtnwrap { justify-content: space-between;}
  .accessbtnwrap a { width: 48%;}
  .accessbtnwrap a:nth-child(2) { margin-left: 0;}
}


.accessIllustMap{ width: 100%; max-width: 520px; margin:0 auto 60px;}
.acceesspopwrap { padding: 80px 0 150px; width: 100%; box-sizing: border-box;position: relative; background: #fff; }
.accesspopclose { width: 30px; height: 30px; top: 40px; right: 40px; position: absolute; background: url("../images/access/close.png?a") no-repeat center; background-size: cover; border: none; cursor: pointer;}
.inner730 { max-width: 730px; margin: 0 auto; width: 90%;}
.accesspopttl { margin-bottom: 60px; font-size: 4.5em; text-align: center; color: #9619E6;color: #00296A;}
.accesspopul { margin-bottom: 70px;}
.accesspopul li { width: 48%; max-width: 350px; margin-bottom: 30px; position: relative;}
.accesspopul li .access_num { font-size: 3em; width: 50px; height: 50px; line-height: 46px; color: #fff; background: #9619e6; background: #00296A;position: absolute; top: 0; left: 0;}
.accesspopulimg {}
.accesspopultxt { background: #f0f0f0; padding: 20px 25px 22px; box-sizing: border-box; font-size: 1.3em;}
.accesspopmid { font-size: 3em; padding-bottom: 10px; margin-bottom: 30px; border-bottom: 1px solid #00296A; font-weight: bold; letter-spacing: 0.1em;}
.accesspopmidsub { margin-bottom: 40px; font-size: 2em; font-weight: bold;}
.trainulwrap { max-width: 540px; width: 100%; margin: 0 auto; }
.trainul {}
.trainul > li:not(:last-child) { margin-bottom: 50px;}
.trainulmid { margin-bottom: 20px; font-size: 1.6em; }
.trainulmid p { height: 30px; line-height: 30px; box-sizing: border-box; }
.trainulmid p:nth-child(1) { background: #B40000; color: #fff; border-radius: 15px 0 0 15px; padding: 0 8px 0 15px}
.trainulmid p:nth-child(2) { background: #fff; color: #000; border: 1px solid #B40000; border-radius: 0 15px 15px 0; padding: 0 15px 0 10px; }
.stationul { display: flex; justify-content: space-between; font-weight: bold; position: relative;}
.stationul:after { position: absolute; top: 49px; left: 0; content: ""; background: url('../images/common/border_dot.png') 0 bottom repeat-x; background-size: 18px 3px; width: 100%; height: 3px; }
.stationul li { position: relative; z-index: 1; }
.stationul li.sotomawari p { position: absolute; top: -40px; font-size: 0.8em;}
.stationul li:nth-child(2n-1) { width: 100px; height: 100px; font-size: 1.65em;  border-radius: 50%; color: #fff; background: #B40000; display: flex; justify-content: center; align-items: center; box-sizing: border-box;  }
.stationul li:nth-child(2n) { font-size: 2em; position: relative; top: 58px;}
.stationul li.arrow {font-size: 1.9em; transform: scale(1.1);}
.stationul li.arrow:before{ position: absolute; top: 0; bottom: 0; left: 0; margin: auto; content: ""; vertical-align: middle;}
.stationul li.arrow:before { left: -15px; width: 10px; height: 10px; border-top: 3px solid #000; border-right: 3px solid #000; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
.stationul li.arrow::after{ box-sizing: border-box; position: absolute; top: 3%; left: 3%; margin: auto; content: ""; width: 94%; height: 94%; border-radius: 50%; border: 1px solid #ffff;}
.osaka_blue .trainulmid p:nth-child(1),
.osaka_blue .stationul li:nth-child(2n-1) { background: #0082c8;}
.osaka_blue .trainulmid p:nth-child(2) { border: 1px solid #0082c8;}

.tokyo_green .trainulmid p:nth-child(1) { background: #009614; border-radius: 15px;}
.tokyo_green .stationul li:nth-child(2n-1) { background: #009614;}
.tokyo_green .trainulmid p:nth-child(2) { border: 1px solid #009614;}

.tokyo_blue .trainulmid p:nth-child(1),
.tokyo_blue .stationul li:nth-child(2n-1) { background: #0064b9;}
.tokyo_blue .trainulmid p:nth-child(2) { border: 1px solid #0064b9;}

.tokyo_pink .trainulmid p:nth-child(1),
.tokyo_pink .stationul li:nth-child(2n-1) { background: #d22864;}
.tokyo_pink .trainulmid p:nth-child(2) { border: 1px solid #d22864;}

.tokyo_red .trainulmid p:nth-child(1),
.tokyo_red .stationul li:nth-child(2n-1) { background: #a00000;}
.tokyo_red .trainulmid p:nth-child(2) { border: 1px solid #a00000;}

#pop01 .accesspopul li { background: #f0f0f0;}
#pop02 .accesspopul li:nth-child(3) { margin-top: -220px;}



@media screen and (max-width: 860px) {
  .accesspopul li { width: 100%; max-width: 400px; margin: 0 auto 30px;}
  #pop02 .accesspopul li:nth-child(3) { margin-top: 0;}
}
@media screen and (max-width: 600px) {
  .accesspopclose { right: 25px; top: 25px; position: fixed;}
  .acceesspopwrap { padding: 70px 0 80px; position: relative; top: 0; left: 0;}
  .accesspopttl { font-size: 3.5em; margin-bottom: 30px;}
  .accesspopul li { margin: 0 auto 20px;}
  .accesspopultxt { padding: 20px 20px 22px;}
  .accesspopul { margin-bottom: 50px;}
  .accesspopmid { font-size: 2.5em; padding-bottom: 5px; margin-bottom: 20px;}
  .accesspopmidsub { margin-bottom: 25px; font-size: 1.6em;}
  .stationul li:nth-child(2n-1) { width: 80px; height: 80px; font-size: 1.6em;}
  .stationul::after { top: 39px;}
  .stationul li:nth-child(2n) { font-size: 1.5em; top: 55px; }
  .stationul li.sotomawari p { display: none;}
  .stationul li.arrow::before { border-top: 2px solid #000; border-right: 2px solid #000; left: -14px;}
}
@media screen and (max-width: 450px) {
  .trainulmid { font-size: 2.9vw; }
  .stationul li:nth-child(2n-1) { width: 65px; height: 65px; font-size: 1.3em; }
  .accesspopultxt { padding: 15px 15px 17px; }
  .stationul::after { top: 31px; }
  .acceesspopwrap { padding: 60px 0 80px; }
  .accesspopclose { right: 15px; top: 15px; position: fixed; }
}




/* product
==========================================================*/


.disnon { display: none; }

.prodbtnwrap { padding: 45px 0; text-align: center;}
#tab { width: 90%; max-width: 530px; margin: 0 auto;}
#tab li { width: 48%; max-width: 250px; height: 50px; border-radius: 25px; line-height: 50px; border:1px solid #F07800; border:1px solid #00296A;font-size: 1.6em; cursor: pointer; transition: .3s;}
#tab li:hover { color: #fff; background: #F07800; background: #00296A;}
#tab li.active { background: #F07800; background: #00296A; color: #fff;}
#tab li.select { color: #fff; background: #F07800; background: #00296A;}
#tab li.select a{ color: #fff; display: block;}
.tab_cat_wrap{ /*transition: .3s;*/}
.prodyearwrap { padding: 25px 0; font-size: 1.6em; background: #F07800; background: #00296A;}
.prodyearul { margin-bottom: -15px; text-align: center;}
.prodyearul li { width: 20%; margin-bottom: 10px; border-left: 1px solid #fff; box-sizing: border-box; }
.prodyearul li a { padding: 10px 0; line-height: 1;color: #fff; display: block; }
.prodyearul li:nth-child(5),
.prodyearul li:last-child { border-right: 1px solid #fff; }

.prodyearul.category-hard li { width: auto;}
.prodyearul.category-hard li a { padding: 6px 15px; box-sizing: border-box; display: block; font-size: 0.95em;}
.prodyearul.category-hard li:nth-child(5),
.prodyearul.category-hard li:last-child { border-right: none; }
@media screen and (min-width: 1210px) {
.prodyearul.category-hard li:nth-child(9),
.prodyearul.category-hard li:nth-child(15),
.prodyearul.category-hard li:last-child { border-right: 1px solid #fff; }
}
.prodlistwrap { padding: 80px 0 120px;}
.inner945 { max-width: 945px; width: 90%; margin: 0 auto;}
.prodlistul::after { content:""; display: block; width: 31.5%; max-width: 295px;}
.prodlistul li { max-width: 295px; width: 31.5%; margin-bottom: 30px; border-radius: 10px; overflow: hidden;}
.prodlistul li a { display: block; position: relative; height: 100%;}
.prodlistimgwrap { /*display: flex; justify-content: center; align-items: center;*/}
.prodlisttxtwrap { padding: 25px 25px 60px;}
.prodlisttxt { margin-bottom: 10px; font-size: 1.6em; font-weight: bold;}
.prodlistbrn { font-size: 1.4em; min-width: 80px; padding: 0 10px; height: 26px; line-height: 26px; letter-spacing: 0;  display: inline-block; color:#fff; background: #F07800; background: #00296A; border: 1px solid #fff; box-sizing: border-box; text-align: center;}

.prodhead { padding: 60px 0 0;}
  .prodhead .prodhead_img { width: 360px;}
  .prodhead .prodhead_txt { width: -webkit-calc(100% - 430px); width: -moz-calc(100% - 430px); width: calc(100% - 430px); padding-top: 15px;}

.prodttl { font-size: 2.6em; margin-bottom: 35px; font-weight: bold; line-height: 1.4;}
.prod_jpnonly{font-size: 1.6em; margin-top: -25px; margin-bottom: 35px; font-weight: bold;}

.prodbtn { margin-top: 40px;}
.prodbtn ul li { max-width: 270px; width: 47.5%;}
.prodbtn ul li a { display: block; width: 100%; height: 46px; border-radius: 30px; font-size: 1.6em; color: #fff; background: #F07800; background: #00296A; border: 1px solid #F07800;  border: 1px solid #00296A; box-sizing: border-box; line-height: 46px; }
.prodbtn ul li.prodbtn_more a { color: #F07800; color: #00296A; background: #fff; border: 1px solid #F07800;border: 1px solid #00296A;}
@media screen and (min-width: 1210px) {
  .prodbtn .prodbtn_site a:hover { color: #F07800; color: #00296A; background: #fff;}
  .prodbtn .prodbtn_more a:hover { color: #fff; background: #F07800; background: #00296A;}
}
.prodheadul li { margin-bottom: 25px;}
  .prodheadul li dl { font-size: 0;}
  .prodheadul li dl dt { width: 110px; padding: 3px 0; text-align: center; color: #fff; background: #F07800; background: #00296A; display: inline-block; font-size: 14px;letter-spacing: -0.05rem;}
  .prodheadul dl dd { padding: 3px 0 3px 15px; display: inline-block; font-size: 14px; max-width: -webkit-calc(100% - 110px); max-width: -moz-calc(100% - 110px); max-width: calc(100% - 110px); vertical-align: top; box-sizing: border-box; /*word-break: keep-all;*/}

.prodpostwrap { padding: 80px 0 150px;}
.prodpost { margin-bottom: 120px; font-size: 1.6em;}
.prodpost h2 { /*font-size: 2em; margin-bottom: 20px; */}
.prodpost .prodpost_credit { padding: 50px 0 0; }
.prodpost .prodpost_credit p{ margin-bottom:inherit; font-size: 0.95em;  }

.prodpost strong {	font-weight: bold;}
.prodpost em { font-style: italic;}
.prodpost del { text-decoration:line-through;}
.prodpost ul { list-style: disc; margin:0 10px 15px; }
.prodpost ol { list-style: decimal; margin:0 10px 15px; }
.prodpost li { list-style:inherit; margin-bottom:0.3em; }
.prodpost blockquote { margin:15px 20px;}
.prodpost h1{ font-size:2em; line-height:1.5; margin: 1em 0 1em; font-weight: bold;}
.prodpost h2{ font-size:1.6em; line-height:1.5; margin: 1em 0 1em; font-weight: bold;}
.prodpost h3{ font-size:1.2em; margin: 1em 0 0.5em; font-weight: bold; }
.prodpost h4{ font-size:1.1em; }
.prodpost img{ margin:1.5em auto; max-width:100%; height:auto; }
.prodpost p{ margin:0px 0 1.5em;  line-height: 1.8; }
.prodpost a{ text-decoration:underline; }



.video_frame { position:relative; width:100%; padding-top: 56.25%; margin: 50px 0;}
.video_frame iframe { position:absolute; top:0; right:0; width:100%; height:100%; }
.prodpnul { font-size: 1.6em; font-weight: bold;}
.prodpnul a { height: 20px; line-height: 20px; display: block; position: relative;}
.prodpnul li:first-child a { padding-left: 30px; top: 10px;}
.prodpnul li:first-child a:hover { padding-left: 25px; padding-right: 5px; }
.prodpnul li:first-child a:after { content: ""; left: 0;width: 15px;height: 15px;
border-bottom: 3px solid #000;border-left: 3px solid #000;-webkit-transform: rotate(45deg);transform: rotate(45deg);  position: absolute;}
.prodpnul li:last-child a { padding-right: 30px; top: 10px;}
.prodpnul li:last-child a:hover {padding-right: 25px; padding-left: 5px; }
.prodpnul li:last-child a:after { content: ""; right: 0;width: 15px;height: 15px;
border-top: 3px solid #000;border-right: 3px solid #000;-webkit-transform: rotate(45deg);transform: rotate(45deg);  position: absolute;}
.prodpnul li:nth-child(2) a { padding: 10px}
.prodpnul li:nth-child(2) a:hover img { transform: scale(1.2,1.2); }

.prodlistul li { opacity: 1; transition: all 0.4s ease 0s;}
.prodlistul li.is-hidden { opacity: 0; height: 0; margin: 0; padding-bottom: 0;}
.prodmore a { display: block; font-size: 2em; letter-spacing: 0.1em; margin: 60px auto 30px; cursor: pointer; position: relative; z-index: 1; border-radius: 50px; border: 1px solid #00296A; color: #fff; background: #00296A; line-height: 70px; height: 70px; max-width: 500px;}
@media screen and (min-width: 769px) {
  .prodmore a:hover { color: #00296A; background: #f0f0f0;}
}

@media screen and (max-width: 1000px) {
  .prodlistbrn { font-size: 1.2em; }
  .prodyearwrap { font-size: 1.4em;}
  .prodlistul li a::after { top: 16.7vw;}
  .prodheadul { display: block;}
  .prodheadul li { display: block; margin-right: 0;}

  .prodhead .prodhead_img { width: 345px;}
  .prodhead .prodhead_txt { width: -webkit-calc(100% - 380px); width: -moz-calc(100% - 380px); width: calc(100% - 380px); padding-top: 10px;}

  .prodbtn ul li a { font-size: 1.5em;}
}
@media screen and (max-width: 900px) {
  .prodbtn ul { display: block;}
  .prodbtn ul li { max-width: 500px; width: 100%; margin: 0 auto;}
  .prodbtn ul li.prodbtn_site { margin-bottom: 10px;}
}
@media screen and (max-width: 800px) {
  .prodbtnwrap a { /*background: #F07800; color: #fff;*/}

  .prodyearwrap { padding: 40px 0;}
  .prodyearul { display: none;}

  #sp-prodyearul { cursor: pointer; font-size: 1.6em;}
    #sp-prodyearul p { box-sizing: border-box; width: 100%; margin:0 auto; padding: 0 5%; height: 50px; line-height: 50px; background:#fff; border-radius: 25px; padding-top: 1px;}
    #sp-prodyearul p:after { position: absolute; content: "▼"; right: 24px; color: #f07800; color: #00296a; top: 0; bottom: 0; margin: auto; font-size: 0.7em;}
  #sp-prodyearul ul { margin-top: 10px; display: none;}
    #sp-prodyearul ul li { height: 44px; line-height: 44px; margin:0; padding: 0 5%; border-bottom: solid 1px #fff; }
    #sp-prodyearul ul li a { color: #fff; font-size: 0.8em; display: block;}


  .prodhead { padding: 5vw 0 0; display: block;}
  .prodhead .prodhead_img { width: 100%; margin-bottom: 8vw;}
  .prodhead .prodhead_txt { width: 100%;}

  .prodheadul dl dd { max-width: -webkit-calc(100% - 125px); max-width: -moz-calc(100% - 125px); max-width: calc(100% - 125px);}

  .prodbtn ul li a { height: 52px; line-height: 52px; font-size: 1.6em;}
  .prodbtn ul li.prodbtn_site { margin-bottom: 16px;}

  .prodlistwrap { padding: 8% 0 100px; }
  .prodlistul  { max-width: 620px; margin: 0 auto;}
  .prodlistul li { width: 48%;}
  .prodlistul li a::after { content: none;}
  .prodlistimgwrap { border-bottom: 1px solid #ccc;}
  .prodttl { width: 100%; font-size: 3em; line-height: 1.6;}
  .prodpostwrap { padding: 12vw 0 15vw;}
  .prodpost h2 { text-align: left; line-height: 1.6; }
  .prodpost { margin-bottom: 18vw;}
}
@media screen and (max-width: 520px) {
  .prodbtnwrap { padding: 40px 0;}
  .prodlistwrap { padding: 6% 0 80px;}
  .prodttl { margin-bottom: 25px; font-size: 2em;}
  .prodlistul  { display: block;}
  .prodlistul li { width: 100%; max-width: 100%;}
  .prodlistul li .prodlistimg, .prodlistul li .prodlistimg img { width: 100%; max-width: 100%;}
  .page-product .prodlistul li .prodlistimg, .page-product .prodlistul li .prodlistimg img { width: auto;}
  .prodmore a { font-size: 1.8em; margin: 30px auto 30px;line-height: 60px; height: 60px;}
}
@media screen and (max-width: 450px) {
  .prodheadul li { margin-bottom: 15px;}
  .prodheadul li dl dt { font-size: 12px; letter-spacing: -1px; width: 90px;}
  .prodheadul li dl dd { font-size: 13px; letter-spacing: -1px; max-width: -webkit-calc(100% - 95px); max-width: -moz-calc(100% - 95px); max-width: calc(100% - 95px);}
  .prodbtn { margin-top: 7vw;}
  .prodpost { font-size: 1.4em; }
  .prodpost p {  }
  .video_frame { margin: 10vw 0;}

}



/* news
==========================================================*/

.page-news  {}
.newsbtnwrap { padding: 40px 0 30px; background: #fff;}
/*
.newsbtndl { margin-bottom: 15px; font-size: 1.5em; }
.newsbtndl dt { font-weight: bold; margin-top: 3px;}
.newsbtndl dd { margin-left: 15px; display: flex; flex-wrap: wrap;}
.newsbtndl a { min-width: 130px; height: 30px; border-radius: 15px; padding: 2px 15px 0; margin-left: 15px; box-sizing: border-box; border: 1px solid #000; display: flex; justify-content: center; align-items: center;}
.newsbtndl a:hover { background: #000; color: #fff;}
.newsbtndl a.active { pointer-events: none; background: #000; color: #fff;}
*/
.newsyearul {  font-size: 1.6em; text-align: center; margin: 0 auto; max-width: 750px; align-items: center;}
.newsyearul li { width: 25%; margin-bottom: 10px;  border-left: 1px solid #000; box-sizing: border-box; }
.newsyearul li a { padding: 10px 0; line-height: 1;  display: block; }
.newsyearul li:nth-of-type(4n) ,
.newsyearul li:last-child { border-right: 1px solid #000; }


.prodlistul .prodlistbrn { margin-bottom: 15px;}
.prodlistul .prodlistbrn.cat-news { color: #fff; border: 1px solid #00296A;}
.prodlistul .prodlistdate { font-size: 1.2em; line-height:  30px;}
.prodlistul .prodlisttxt { margin: 0;}
.prodlistul .cat-news { background: #00296A; }
.prodlistul .cat-press { background: #E60000; }
.prodlistul .cat-topics { background: #0091FF;}



.card_hover { background: #fff;}
  .card_hover .prodlistimgwrap { overflow: hidden; border-bottom: 1px solid #ccc; box-sizing: border-box;}
  .page-news .card_hover .prodlistimgwrap { /*border-bottom: none;*/}
  .card_hover .prodlistimgwrap .prodlistimg { -webkit-transition: all .5s ease; transition: all .5s ease;}

  .list_morelink { position: absolute; line-height: 1; bottom: 25px; right: 50px; font-size: 1.2em; letter-spacing: 0.1em;}
  .list_morelink:after { content: ""; width: 15px; height: 1px; background: #194186; position: absolute; bottom: 1px; right: -23px; }
  .list_morelink:before{ content: ""; width: 8px; height: 1px; transform: rotate(45deg); background: #194186; position: absolute; bottom: 4px; right: -24px; }
@media screen and (min-width: 801px) {
  .card_hover:hover .prodlistimgwrap .prodlistimg  { -webkit-transform: scale(1.12); transform: scale(1.12); }
  .card_hover:hover { -webkit-opacity: .7; opacity: .7;}
  .card_hover.non_link:hover .prodlistimgwrap .prodlistimg  { -webkit-transform: scale(1); transform: scale(1); }
  .card_hover.non_link:hover { -webkit-opacity: 1; opacity: 1;}
}
@media screen and (max-width: 800px) {
  .list_morelink { font-size: 1.6em;}
}

.page-product .card_hover { position: relative; z-index: 1;}
  .page-product .card_hover a.btn_detail { position: absolute; top: 0; left: 0; width: 100%; height: 100%; text-indent: -999px; z-index: 2;}
  .page-product .card_hover a.btn_official { position: absolute; bottom: 20px; left: 0; right: 0; margin: auto; z-index: 3; height: 26px; background: #00296A; color: #fff; border-radius: 30px; border: 1px solid #00296A; box-sizing: border-box; font-size: 1.3em; display: inline-block; padding: 0 10px; line-height: 26px; letter-spacing: -1px; width: 140px; text-align: center;}
  .page-product .card_hover a.btn_official:hover { background: #fff; color: #00296A; }
  .page-product .card_hover .prodlisttxtwrap { position: relative; padding: 25px 25px 95px;-webkit-transition: all .5s ease; transition: all .5s ease;}
  .page-product .card_hover .list_morelink { bottom: 70px;-webkit-transition: all .5s ease; transition: all .5s ease;}
  @media screen and (min-width: 801px) {
    .page-product .card_hover:hover { -webkit-opacity: 1; opacity: 1;}
    .page-product .card_hover:hover .prodlisttxtwrap,
    .page-product .card_hover:hover .list_morelink { -webkit-opacity: .6; opacity: .6;}
  }
  @media screen and (max-width: 520px) {
    .page-product .card_hover a.btn_official { height: 30px; line-height: 30px; width: 200px;}
    .page-product .card_hover .prodlisttxtwrap { padding: 25px 25px 115px;}
    .page-product .card_hover .list_morelink { bottom: 80px;}
  }




.page-news-d .kasouwrap { top: 100px; }
.newshead { padding: 30px 0 50px; background: #fff; }
.newscat { margin-bottom: 20px; }
.newscat a { padding: 0 15px; min-width: 140px; height: 36px; line-height: 36px; font-size: 1.6em; border-radius: 20px; display: flex; justify-content: center; align-items: center; color: #fff; box-sizing: border-box;}
.newscat-news a { background: #00296A; border: 1px solid #00296A; }
.newscat-news a:hover { background: #fff; color: #00296A;}
.newscat-press a { background: #E60000; border: 1px solid #E60000; }
.newscat-press a:hover { background: #fff; color: #E60000;}
.newscat-topics a { background: #0091FF; border: 1px solid #0091FF; }
.newscat-topics a:hover { background: #fff; color: #0091FF;}
.newsdate { font-size: 1.6em; line-height: 36px;}
.newsttl {font-size: 3em; font-weight: bold;}
.newspostwrap { padding: 80px 0 100px;}
.newspost { margin-bottom: 100px;font-size: 1.6em; line-height: 1.8;}
.newspost img { display: inline-block; margin-bottom: 40px;}
.newspost { }

@media screen and (max-width: 1000px) {
  .newsbtndl a { min-width: 100px;}
}
@media screen and (max-width: 800px) {
  .newsbtnwrap { padding: 20px 0 10px; padding: 20px 0 20px;} /**/
  .newsbtndl dd { margin-left: 0; margin-top: 6px;}
  .newsbtndl a { margin-right: 10px; margin-bottom: 10px; margin-left: 0;}

  .page-news-d .kasouwrap { top: 90px;}
  .newshead { padding: 0 0 8vw;}
  .newscat a { height: 35px;}
  .newsttl { font-size: 2.2em;}
  .newspostwrap { padding: 5% 0 15%; }
  .newspost img { margin-bottom: 30px; }
  .newspost { margin-bottom: 15%; }
}

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

  .newsyearul { display: none;}
  #sp-newsyearul { cursor: pointer; font-size: 1.6em;}
    #sp-newsyearul p { box-sizing: border-box; width: 100%; margin:0 auto; padding: 0 5%; height: 50px; line-height: 50px; background:#fff; border: 1px solid #000; border-radius: 25px; padding-top: 1px;}
    #sp-newsyearul p:after { position: absolute; content: "▼"; right: 24px; color: #f07800; color: #00296a; top: 0; bottom: 0; margin: auto; font-size: 0.7em;}
  #sp-newsyearul ul { margin-top: 10px; display: none;}
    #sp-newsyearul ul li { height: 44px; line-height: 44px; margin:0; padding: 0 5%; border-bottom: solid 1px #777; }
    #sp-newsyearul ul li a { font-size: 0.8em; display: block;}
}



/* POST */
.newspost_20thbg{ background: linear-gradient(45deg, #d5bb1a, #00849d, #432b67); background-size: 600% 600%; animation: mainbg 10s ease infinite; }
.newspost_20thbg{position: relative;}
.newspost_20thbg:after{position: absolute; content: ""; left: 0px; top: 0; width: 5px; height: 100%; background-color: #f0f0f0; z-index: 2;}
.newspost_20thbg:before{position: absolute; content: ""; right: 0px; top: 0; width: 5px; height: 100%; background-color: #f0f0f0; z-index: 2;}


/* gallery
==========================================================*/

/* 右クリック禁止+長押し禁止（スマホ対策）*/
.galleryul{-webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-touch-callout:none;
  -moz-user-select:none;
  touch-callout:none;
  user-select:none;}
.galleryulimg img{  pointer-events: none;  }
#swipebox-slider .slide img{ pointer-events: none; 
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-touch-callout:none;
  -moz-user-select:none;
  touch-callout:none;
  user-select:none;}



.page-gallery {}

.gallerymidwrap { padding: 60px 0; text-align: center;}
.gallerymid { font-size: 4em; margin-bottom: 30px; letter-spacing: 0.1em;}
.gallerytxt { font-size: 1.6em; line-height: 2.2;}
.galleryulwrap { padding: 100px 0 120px;}
.galleryul li img{ width: 100%;}
/*.galleryul li { width: 48%; max-width: 460px; margin-bottom: 45px; opacity: 1; transition: all 0.4s ease 0s;}*/
.galleryul { margin-left: -3.3%;}
.galleryul li { width: 30%; margin-left: 3.3%; max-width: 460px; margin-bottom: 45px; opacity: 1; transition: all 0.4s ease 0s;}
.galleryul li .galleryulimg { -webkit-transition: all .5s ease; transition: all .5s ease; overflow: hidden; background: #fff;}
.galleryul li a { display: block; }
.galleryul li.is-hidden { opacity: 0; height: 0; margin: 0; }
.galleryultxt { font-size: 1.8em; letter-spacing: 0.1em; margin-top: 20px; font-weight: bold;}
.gallerymore a { display: block; font-size: 2em; letter-spacing: 0.1em; margin-top: 40px; cursor: pointer; position: relative; z-index: 1;}
@media screen and (max-width: 900px) {
.galleryul li { width: 46.7%; margin-left: 3.3%; }

}

@media screen and (min-width: 801px) {
  .galleryul li a:hover img { -webkit-transform: scale(1.15); -ms-transform: scale(1.15); transform: scale(1.15); -webkit-opacity: .7; opacity: .7;}
}

@media screen and (max-width: 800px) {
.gallerymidwrap { padding: 8vw 0 8vw;}
}
@media screen and (max-width: 520px) {
.galleryul { display: block;}
.galleryul li { width: 100%; max-width: 100%; margin-bottom: 30px;}
.galleryulwrap { padding: 6% 0 80px;}
.gallerymidwrap { padding: 10% 0;}
.gallerymid { font-size: 3em;}
.galleryultxt { margin-top: 15px;}
}


/* privacy
==========================================================*/

.kasousection {}
.inner800 {}
.privacydl {}
.privacydl dt { font-weight: bold; font-size: 1.6em; letter-spacing: .1em; padding-bottom: 10px; border-bottom: 1px solid #000; margin-bottom: 20px; color: #00296A;}
.privacydl dd { margin-bottom: 30px; font-size: 1.4em;}
.privacyname { margin-top: 55px; font-size: 1.8em; line-height: 1.6;}

@media screen and (max-width: 800px) {
  .privacydl { margin-top: 5%;}
  .privacyname { margin-top: 40px; font-size: 1.6em;}
}


/* kiyaku
==========================================================*/

.page-kiyaku .companydl { font-size: 1em;}
  .page-kiyaku .companydl dt { font-size: 1.6em; letter-spacing: 0.05em;}
  .page-kiyaku .companydl dd { font-size: 1.4em; text-align: justify; text-justify: inter-ideograph;}
  .page-kiyaku .companydl dt:nth-child(1) { border-top: 2px solid #194186;}
  .page-kiyaku .companydl dd:nth-child(2) { border-top: 2px solid #999; }
  .page-kiyaku .companydl dd p:not(:last-child) { margin-bottom: 20px;}
  .page-kiyaku .companydl dd ul.Cookieul { margin-top: 10px; }

@media screen and (max-width: 800px) {
  .page-kiyaku .companydl { margin-top: 5%;}
  .page-kiyaku .pagettlen { padding-top: 75px;}
  .page-kiyaku .companydl dt { padding: 0 0 10px; border-bottom: 1px solid #000; margin-bottom: 20px;}
  .page-kiyaku .companydl dt:nth-child(1) { border-top: none;}
  .page-kiyaku .companydl dd { text-align: left; border-bottom: none;margin-bottom: 20px; padding-bottom: 0;}
  .page-kiyaku .companydl dd:nth-child(2) { border: none;}
}

/* sitemap
==========================================================*/


.sitemap-l { max-width: 380px; width: 47.5%; padding: 45px 0; border-top: 1px solid #000; border-bottom: 1px solid #000;}
.sptemapul li { margin-bottom: 15px; padding-left: 20px; box-sizing: border-box; letter-spacing: 0.1em;}
.sitemapen { font-size: 1.8em; display: inline-block; margin-right: 20px;}
.sitemapjp { font-size: 1.4em; display: inline-block;}
      a.sitemap_arrow::before,
      a.sitemap_arrow::after{ position: absolute; top: 0; bottom: 0; left: 0; margin: auto; content: ""; vertical-align: middle; }
      a.sitemap_arrow::before{ left: -20px; top: -6px; width: 6px; height: 6px; border-top: 2px solid #000; border-right: 2px solid #000; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.sitemapsubul { margin-top: 20px;}
.sitemapsubul li { margin-bottom: 10px; padding-left: 40px; box-sizing: border-box; position: relative;}
.sitemapsubul li:before { content: ""; width: 20px; height: 1px; background: #00246C; position: absolute; top: 0; left: 0; bottom: 0; margin: auto;}
.sitemapsubul li a { font-size: 1.4em;}

@media screen and (max-width: 960px) {
.sitemapen {  margin-right: 10px;}
.sitemapjp { font-size: 1.3em;}
}
@media screen and (max-width: 800px) {
.sitemapen {  margin-right: 10px;}
.sitemap-l { max-width: 100%; width: 100%; padding: 35px 0;}
.kasousection .sitemap-l:first-child { border-bottom: none; padding-bottom: 0; margin-top: 5vw}
.kasousection .sitemap-l:last-child { border-top: none; padding-top: 0;}
}
@media screen and (max-width: 420px) {
  .sitemapen { font-size: 1.6em;}
  .sitemapjp { font-size: 1.2em; }
}



/* download
==========================================================*/

.dlmid { font-size: 3.5em; padding-bottom: 5px; border-bottom: 2px solid #00296a; margin-bottom: 35px; letter-spacing: 0.1em;}
.dltxt { font-size: 1.6em;}
.dlredtxt { font-size: 1.6em; color: #c80000; margin-top: 20px;}

.dldl { font-size: 1.6em; margin: 55px 0 40px;}
.dldl dt { max-width: 240px; width: 30%; padding: 25px 0; border-bottom: 2px solid #194186; }
.dldl dd { max-width: 530px; width: 67%; padding: 15px 0; border-bottom: 1px solid #000;}
.dldl dt:nth-child(1) { border-top: 2px solid #194186; }
.dldl dd:nth-child(2) { border-top: 1px solid #000;}
.dldl .pdf img { vertical-align: middle;}
.dldltxtwrap { margin-left: 15px; justify-content: center; align-items: center;}

.dlsubtxt { font-size: 1.4em; margin-bottom: 20px;}
.ddltxt { font-size: 1.35em; margin: 50px 0 15px;}
.dlprivacylink a { display: inline-block; font-size: 1.4em; border-bottom: 1px solid #000;}

@media screen and (max-width: 800px) {
  .dlmid { font-size: 2em; padding-bottom: 0; border-bottom: none; margin-bottom: 20px; margin-top: 20px;}
  .dldl { display: block; margin: 40px 0 20px;}
  .dldl dt { max-width: 100%; width: 100%; padding: 0 0 10px; border-bottom: 1px solid #000; margin-bottom: 20px;}
  .dldl dd { max-width: 100%; width: 100%; padding: 0 0 20px; border-bottom: none;}
  .dldl dt:nth-child(1),
  .dldl dd:nth-child(2) { border-top: none;}
  .ddltxt { margin: 35px 0 15px; }
}
@media screen and (max-width: 420px) {
.dldltxtwrap { width: -webkit-calc(100% - 50px); width: -moz-calc(100% - 50px); width: calc(100% - 50px); justify-content: left;}
}

/* recruit
==========================================================*/

.recruit_main {}
.recruit_sub { margin-top: 50px;}
.recruit_sub li { width: 47.5%; max-width: 375px;}

@media screen and (max-width: 800px) {
  .recruit_sub { margin-top: 5%;}
}
@media screen and (max-width: 560px) {
  .recruit_sub  ul { display: block;}
  .recruit_sub  ul li,
  .recruit_sub  ul li img { width: 100%; max-width: 100%;}
  .recruit_sub  ul li { margin-top: 5%;}
}


/* like
==========================================================*/

.kasouwrap_bgnone { top: 144px; position: relative; z-index: 10; background: #fff;}

.likettl { font-size: 3.5em; padding-bottom: 5px; border-bottom: 2px solid #00296a; margin-bottom: 35px; letter-spacing: 0.06em;}
.liketxt { font-size: 1.6em;}
.likedl { font-size: 1.6em; margin: 80px 0 50px;}
.likehissu { color: #c80000; font-weight: normal;}
.likedltxt { font-size: 1.4em; margin-bottom: 15px;}
.likepriwrap a { display: inline-block; font-size: 1.4em; border-bottom: 1px solid #000;}


@media screen and (max-width: 800px) {
  .kasouwrap_bgnone { top: 80px; }
  .likettl { font-size: 2em; text-align: center; margin-bottom: 30px;}
  .likedl { margin: 10% 0 20px; display: block;}
}


/* bodyを引き継がせる（SP:16px以上必須） */
input, textarea, select {
font-size: 1em; line-height: 1.75; font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; font-weight: 400; color: #000;}

.form_template dt { max-width: 240px; width: 30%; padding: 28px 0; border-bottom: 2px solid #194186; letter-spacing: 0.1em;align-items: center;}
.form_template dd { max-width: 530px; width: 67%; padding: 28px 0; border-bottom: 1px solid #000;}
.form_template dt:nth-child(1) { border-top: 2px solid #194186; }
.form_template dd:nth-child(2) { border-top: 1px solid #000;}
.form_template dd input,
.form_template dd textarea { border: 1px solid #4F4F4F; -webkit-appearance: none; border-radius: 0; width: 100%; background: #fff; box-sizing: border-box; padding: 2px 10px;}

/* focus時 */
input, textarea { outline: none; -webkit-transition: all .3s; transition: all .3s; }
input:focus, textarea:focus { box-shadow: 0 0 2px #5b84cb; }

/* radioボタン */
input[type=radio] { display: none;}
  .radio { padding: 2px 25px 2px 32px; display: inline-block; box-sizing: border-box; position: relative; vertical-align: middle; cursor: pointer;}
  .radio:before { position: absolute; top: 50%; left: 0; display: block; margin-top: -12px; width: 20px; height: 20px; border-radius: 50%; content: ''; background: #fff; border: none; border: 1px solid #00296a;}
  .radio:after { -webkit-transition: all .2s linear; transition: all .2s linear; position: absolute; top: 50%; left: 6px; display: block; margin-top: -6px; width: 10px; height: 10px; border-radius: 50%; background-color: #00296a; content: ''; opacity: 0; z-index: 2; }
input[type=radio]:checked + .radio:after  { opacity: 1; }

/* セレクトボタン */
select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    margin: 0;
    padding: 0;
    background: none transparent;
    vertical-align: middle;
    color: inherit;
    box-sizing: border-box;
    outline: none;
    box-shadow: none;
    cursor: pointer;
    border: 1px solid #000;
    background:#fff url(../images/common/select.png) no-repeat;
    background-size: 38px;
    background-position: 100% center;
  	height: 38px;
  	line-height: 38px;
  	font-size: 16px;
    padding: 2px 5px;
    max-width: 220px;
    width: 100%;
  }
  select::-ms-expand {
      display: none;
  }

/* スマホオート入力の背景色削除 */
input:-webkit-autofill { -webkit-box-shadow: 0 0 0px 1000px #fff inset; box-shadow: 0 0 0px 1000px #fff inset;}

/* ie用 */
@media all and (-ms-high-contrast: none){ .selectyaji { display: none; } }
input::-ms-clear, input::-ms-reveal { visibility: hidden; } /* 右に出てくるアイコン削除 */

/* プライバシー */
input[type=radio], input[type=checkbox] { display: none; }
.checkbox { box-sizing: border-box; -webkit-transition: background-color 0.2s linear; transition: background-color 0.2s linear; position: relative; display: inline-block; vertical-align: middle; cursor: pointer; font-size: 1.6em;}
.checkbox:after { position: absolute; top: -3px; bottom: 0; margin: auto; right: -30px; display: block; background: #fff; width: 20px; height: 20px; border-radius: 50%; content: ''; border: 1px solid #000;}
.checkbox:before { -webkit-transition: opacity 0.2s linear; transition: opacity 0.2s linear; position: absolute; z-index: 2; top: -3px; bottom: 0; margin: auto; right: -24px; display: block; width: 10px; height: 10px; content: ''; opacity: 0; background: #00296a; border-radius: 50%;}
  input[type=checkbox]:checked + .checkbox:before { opacity: 1; }

/* エラーボックス */
.error_box { width: 100%; text-align: left; background: #FFF; border:1px solid #e21a1a; color:#e21a1a; display: none; margin: 60px auto; padding: 20px 30px; box-sizing: border-box; font-size: 1.6em; line-height: 1.8;}

/* 送信ボタン */
.submitwrap input[type=submit], .submitwrap input[type=button]
{ font-size: 2.4em; width:100%; max-width: 500px; height: 80px; line-height: 80px; margin: 70px auto 0; cursor: pointer; color: #fff; background: #00296a; -webkit-transition:all .3s; transition:all .3s; border-radius: 250px; box-sizing: border-box; -webkit-appearance: none;
    display: block; text-align: center; letter-spacing: .1em; box-shadow: none;  font-weight: bold; border: 2px solid #00296a;}
@media screen and (min-width: 769px) {
  .submitwrap input[type=submit]:hover, .submitwrap input[type=button]:hover { color: #00296a; background: #fff;}
}

/* OK・errorページ */
.contfrm-sended { text-align: center; margin: 65px 0 50px; }
.contfrm-sended .contact_sended_title { font-size: 4em; margin-bottom: 20px;letter-spacing: 0.2em;}
.contfrm-sended p { font-size: 2.5em;}


@media screen and (max-width: 800px) {
  .form_template dt { max-width: 100%; width: 100%; padding: 0 0 5px; border-bottom: 1px solid #000; margin-bottom: 20px;}
  .form_template dd { max-width: 100%; width: 100%; padding: 0 0 25px; border-bottom: none;}
  .form_template dt:nth-child(1),
  .form_template dd:nth-child(2) { border-top: none;}
  .form_template dd input, .form_template dd textarea { padding: 8px 10px; border: 1px solid #999;}

  input, textarea, select { font-size: 16px;}
  select { max-width: 260px; line-height: 50px; height: 50px; background:#fff url(../images/common/sp-select.png) no-repeat; background-size: 50px; background-position: 100% center; border: 1px solid #999}
  .submitwrap input[type="submit"], .submitwrap input[type="button"] { margin: 40px auto 20px; height: 60px; line-height: 60px;}

  .error_box { margin: 30px auto 40px;}

  .contfrm-sended { margin-top: -20px; padding: 80px 5%; margin-bottom: -20px;}
  .contfrm-sended .contact_sended_title { font-size: 2.4em; margin-bottom: 0; }
  .contfrm-sended p { font-size: 1.5em;}

}





/* contact
==========================================================*/

.formwrap { width: 86%; margin: 0 auto; max-width: 760px; padding: 65px 0 100px; }
.contactttl { font-size: 2.5em; letter-spacing: 0.06em; margin-bottom: 40px;}

.contactdl { font-size: 1.6em; margin: 0 0 40px;}
.form_template .contactdl dt { width: 245px; letter-spacing: 0.05em;}
.form_template .contactdl dd { width: -webkit-calc(100% - 275px); width: -moz-calc(100% - 275px); width: calc(100% - 275px); }
.form_template .contactdl dd input, .form_template .contactdl dd textarea { border: 1px solid #c8c8c8;}

.contacthissu { display: inline-block; color: #fff; background: #00296a; font-size: 12px; padding: 0 8px; border-radius: 50px; font-weight: normal; line-height: 20px; height: 20px; margin-left: 10px; position: relative; top: -1px;}

.contactdltxt { font-size: 1.6em;}
.contactpriwrap { padding: 30px 5% 25px; margin: 50px 0 30px;}
.contactpriwrap p { font-size: 1.5em; margin-bottom: 15px;}
.contactpriwrap a { display: inline-block; font-size: 2em; border-bottom: 1px solid #000;}
.douibtn_box { -webkit-transition:all .3s; transition:all .3s;}
@media screen and (min-width: 769px) {
 .douibtn_box:hover { -webkit-opacity: .6; opacity: .6; }
}

@media screen and (max-width: 960px) {
  .form_template .contactdl .radioul { display: block;}
  .form_template .contactdl .radioul .radio { padding: 6px 25px 6px 32px;}
}
@media screen and (max-width: 800px) {
  .formwrap { width: 100%; margin: 20px auto 0; max-width: 100%; padding: 0; }
  .page-contact .bg-w { background: none;}
  .contactttl { margin-bottom: 30px;}
  .form_template .contactdl dt { width: 100%; max-width: 100%; font-size: 16px; border-bottom: none; padding-bottom: 0; margin-bottom: 10px;}
  .form_template .contactdl dd { width: 100%; max-width: 100%;}
  .form_template .contactdl dd input, .form_template .contactdl dd textarea { border: none; border-radius: 5px; padding: 14px 15px;}
  .contactdl { margin: 0 0 10px;}
  .contactpriwrap { padding: 25px 5% 30px; margin: 35px 0 30px; background: #fff;}
  .douibtn_box { text-align: left; padding-left: 40px;}
  .checkbox::after { right: auto; left: -35px; top: -28px;}
  .checkbox::before { right: auto; left: -29px; top: -28px;}
}
@media screen and (max-width: 520px) {
  .contactttl { font-size: 2em;}
  .form_template .contactdl dt { margin-bottom: 5px;}
  .contactdltxt,
  .contactpriwrap p { font-size: 1.3em;}
  .contactpriwrap a { font-size: 1.6em;}
  .error_box { padding: 20px 20px; font-size: 1.4em;}

}


/* 確認ページ */
.contactform_kakunin.form_template .contactdl dt,
.contactform_kakunin.form_template .contactdl dd { padding: 8px 0; border-bottom: none; }
.contactform_kakunin.form_template .contactdl dt:last-of-type,
.contactform_kakunin.form_template .contactdl dd:last-of-type,
.contactform_kakunin.form_template .contactdl dt.last { border-bottom: 2px solid #194186; padding-bottom: 35px;}
.contactform_kakunin.form_template .contactdl dd.last { border-bottom: 1px solid #000; padding-bottom: 35px;}
.contactform_kakunin.form_template .contactdl dt:first-of-type,
.contactform_kakunin.form_template .contactdl dd:first-of-type,
.contactform_kakunin.form_template .contactdl dt.first,
.contactform_kakunin.form_template .contactdl dd.first { padding-top: 35px; }

.submitwrap.cancelbtn input[type=submit], .submitwrap.cancelbtn input[type=button] { color: #00296a; background: #fff; margin-bottom: -50px;}
@media screen and (min-width: 769px) {
  .submitwrap.cancelbtn input[type=submit]:hover, .submitwrap.cancelbtn input[type=button]:hover { color: #fff; background: #999999; border: 2px solid #999999;}
  .contactform_kakunin .submitwrap input[type=submit]:hover, .submitwrap input[type=button]:hover { color: #fff; background: #00296a; -webkit-opacity: .6; opacity: .6;}
}

@media screen and (max-width: 800px) {
  .contactform_kakunin.form_template .contactdl { border-bottom: 2px solid #194186; border-top: 2px solid #194186; margin-bottom: 50px;}
  .contactform_kakunin.form_template .contactdl dt { padding: 0; margin-bottom: 5px;}
  .contactform_kakunin.form_template .contactdl dd { padding: 0; margin-bottom:20px; }
  .contactform_kakunin.form_template .contactdl dd:first-of-type,
  .contactform_kakunin.form_template .contactdl dd.first { padding-top: 0;}
  .contactform_kakunin.form_template .contactdl dt:last-of-type,
  .contactform_kakunin.form_template .contactdl dt.last { border-bottom: none; padding-bottom: 5px; }
   .contactform_kakunin.form_template .contactdl dd:last-of-type,
  .contactform_kakunin.form_template .contactdl dd.last { border-bottom: none; padding-bottom: 10px; }
  .submitwrap.cancelbtn input[type="submit"], .submitwrap.cancelbtn input[type="button"] { margin-bottom: -25px; }
}






/* 英語ページ
==========================================================*/


.EN-none { display: none;} /* h1・h2などは削除せず非表示 */

[lang=en] body { font-family: acumin-pro, "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; }
[lang=en] input, textarea, select {
font-size: 1em; line-height: 1.75; font-family: acumin-pro, "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; font-weight: 400; color: #000;}

[lang=en] #headerContainer li.gnavlink .gnaven { margin-top: 10px; margin-bottom: 0;}
[lang=en] #headerContainer li .hovermenu .gnaven { margin-top: 0;}

[lang=en] .maintxtjp { letter-spacing: .08rem;}
[lang=en] .bold { font-weight: 600;}
[lang=en] .contfrm-sended .contact_sended_title { letter-spacing: .06em;}
[lang=en] .privacydl dt { letter-spacing: .06em;}
[lang=en] .page-product .card_hover a.btn_official { line-height: 23px;}
@media screen and (max-width: 520px) {
  [lang=en] .page-product .card_hover a.btn_official { line-height: 27px;}
}

/* フェードイン */

/* .fade.delighter {
   transition: all 1s ease-out;
   transform: none;
   opacity: 0;
 }
 .fade.delighter.started {
   transform: none;
   opacity: 1;
 }
 .fadeup.delighter {
   transition: all 0.5s ease-out;
   transform: translateY(80px);
   opacity: 0;
 }
 .fadeup.delighter.started {
   transform: none;
   opacity: 1;
 }
.fadeup.delighter .fadeup-delay1s {
  transition: all 0.5s ease-out;
  transform: translateY(80px);
  opacity: 0;
  transition-delay: .1s;
 }
.fadeup.delighter .fadeup-delay2s {
  transition: all 0.5s ease-out;
  transform: translateY(80px);
  opacity: 0;
  transition-delay: .2s;
 }
.fadeup.delighter .fadeup-delay3s {
  transition: all 0.5s ease-out;
  transform: translateY(80px);
  opacity: 0;
  transition-delay: .3s;
 }
.fadeup.delighter .fadeup-delay4s {
  transition: all 0.5s ease-out;
  transform: translateY(80px);
  opacity: 0;
  transition-delay: .4s;
 }
.fadeup.delighter .fadeup-delay5s {
  transition: all 0.5s ease-out;
  transform: translateY(80px);
  opacity: 0;
  transition-delay: .5s;
 }
.fadeup.delighter .fadeup-delay6s {
  transition: all 0.5s ease-out;
  transform: translateY(80px);
  opacity: 0;
  transition-delay: .6s;
 }
.fadeup.delighter.started .fadeup-delay1s,
.fadeup.delighter.started .fadeup-delay2s,
.fadeup.delighter.started .fadeup-delay3s,
.fadeup.delighter.started .fadeup-delay4s,
.fadeup.delighter.started .fadeup-delay5s,
.fadeup.delighter.started .fadeup-delay6s{
  transform: none;
  opacity: 1;
 }

.delighter.left {
    transform: translate(100%);
    opacity: 0;
    transition: all .9s ease-Out;
    transition-delay: .1s;
}
.delighter.left.started {
    transform: none;
    opacity: 1;
}
.delighter.right {
    transform: translate(-100%);
    opacity: 0;
    transition: all .9s ease-Out;
    transition-delay: .1s;
}
.delighter.right.started {
    transform: none;
    opacity: 1;
}

#Group_list .fadeup.delighter li:nth-child(1),
#ind_Topics .fadeup.delighter .sp-hide li:nth-child(1) {
  transition: all 0.5s ease-out;
  transform: translateY(80px);
  opacity: 0;
  transition-delay: .1s;
}
#Group_list .fadeup.delighter li:nth-child(2),
#ind_Topics .fadeup.delighter .sp-hide li:nth-child(2) {
  transition: all 0.5s ease-out;
  transform: translateY(80px);
  opacity: 0;
  transition-delay: .2s;
}
#Group_list .fadeup.delighter li:nth-child(3),
#ind_Topics .fadeup.delighter .sp-hide li:nth-child(3) {
  transition: all 0.5s ease-out;
  transform: translateY(80px);
  opacity: 0;
  transition-delay: .3s;
}

#Group_list .fadeup.delighter.started li:nth-child(1) ,
#Group_list .fadeup.delighter.started li:nth-child(2) ,
#Group_list .fadeup.delighter.started li:nth-child(3) ,
#ind_Topics .fadeup.delighter.started .sp-hide li:nth-child(1) ,
#ind_Topics .fadeup.delighter.started .sp-hide li:nth-child(2) ,
#ind_Topics .fadeup.delighter.started .sp-hide li:nth-child(3)  {
  transform: none;
  opacity: 1;
 } */


/*
 .delighter li { opacity: 0; transform: translatey(400%); transition: all .7s ease-out; }
 .delighter.started li { opacity: 1; transform: none; }
 .delighter.started li:nth-child(1) { transition: all .7s ease-out .1s; }
 .delighter.started li:nth-child(2) { transition: all .7s ease-out .3s; }
 .delighter.started li:nth-child(3) { transition: all .7s ease-out .5s; }
 .delighter.started li:nth-child(4) { transition: all .7s ease-out .7s; }
 .delighter.started li:nth-child(5) { transition: all .7s ease-out .9s; }
 .delighter.started li:nth-child(6) { transition: all .7s ease-out 1.1s; }
 .delighter.started li:nth-child(7) { transition: all .7s ease-out 1.3s; } */

/*  */
