@charset "utf-8";
@import url(//fonts.googleapis.com/css?family=Roboto);
@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(//fonts.googleapis.com/css?family=Sawarabi+Mincho);
body {
  margin: 0;
  padding: 0;
  font-size: 14px;
  font-family: 'Noto Sans Japanese', sans-serif;
  color: #fff;
  background: #171c61;
}
.Roboto {
  font-family: 'Roboto', sans-serif;
}
.Sans {
  font-family: 'Noto Sans Japanese', sans-serif;
}
/* !Base Fonts -------------------------------------------------------------- */
html { font-size: 62.5%; } 
img { display: block; }
.fwN { font-weight: normal;}
.fwB { font-weight: bold;}
.fzSS  { font-size:  78%;}/* base 12px ->  8px */
.fzS   { font-size:  85%;}/* base 12px -> 10px */
.fzM   { font-size: 100%;}
.fzL   { font-size: 115%;}/* base 12px -> 14px */
.fzLL  { font-size: 130%;}/* base 12px -> 16px */
.fzLLL { font-size: 143%;}/* base 12px -> 18px */
/* !Inline Align ------------------------------------------------------------ */
.taL { text-align: left   !important;}
.taC { text-align: center !important;}
.taR { text-align: right  !important;}
.vaT { vertical-align: top    !important;}
.vaM { vertical-align: middle !important;}
.vaB { vertical-align: bottom !important;}
.blockC { margin-right: auto; margin-left: auto; text-align: left;}
* html .blockC { margin-right: 0; margin-left: 0;}
.blockR { margin-left: auto; text-align: left;}
* html .blockR { margin-left: 0;}

/* !Width ------------------------------------------------------------------- */
/* 960px Grid */
.w960   { width: 960px;}
.w800	{ width: 800px;}
.w640	{ width: 640px;}
.w480	{ width: 480px;}
.w320	{ width: 320px;}
.w160	{ width: 160px;}

.wHalf  { width: 48%;}
.wTri   { width: 33%;}
.wQuart { width: 24%;}
.wFull  { width: 99.9%;}
.wMax   { width: 100%;}

.w03per { width: 3%  !important;}
.w05per { width: 5%  !important;}
.w10per { width: 10% !important;}
.w13per { width: 13% !important;}
.w15per { width: 15% !important;}
.w20per { width: 20% !important;}
.w25per { width: 25% !important;}
.w30per { width: 30% !important;}
.w35per { width: 35% !important;}
.w40per { width: 40% !important;}
.w45per { width: 45% !important;}
.w50per { width: 50% !important;}
.w920 {
  max-width: 920px;
  margin: 0 auto;
}
.w750 {
  max-width: 750px;
  margin: 0 auto;
}
.w350 {
  max-width: 350px;
  margin: 0 auto;
}
.w250 {
  max-width: 250px;
  margin: 0 auto;
}
/* !Floats ------------------------------------------------------------------ */
.flL    { display: inline; float: left;}
.flR    { display: inline; float: right;}
.flImgL { display: inline; float: left; margin-right: 10px;}
.flImgR { display: inline; float: right; margin-left: 10px;}
.ftBox  { overflow: hidden; *zoom: 1;}

/* !Tools ------------------------------------------------------------------- */
.clear { clear: both;}
.block { display: block;}
.hide  { display: none;}
.bgN   { background: none !important;}
.tdU   { text-decoration: underline;}
.tdN   { text-decoration: none;}
.atode { border: 2px solid #96c; padding: 10px; text-align: center; background-color: #f9f; font-family: "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace; font-size: 30px; color: #fff;}

/* !JavaScript -------------------------------------------------------------- */
.over { /* ロールオーバー呼び出し用 */ }
.png  { /* DD_belatedPNG.js呼び出し用 */ }
.js_popup_width_height  {}
.js_page_print   {}
.js_window_close {}
/* ! background color-------------------------------------------------------------- */
.bgw{
  background: #fff;
}
.bd_gray {
  border-top: 50px solid #ebebeb;
}
.font_wh {
  color: #fff;
}
hr.red_line {
  border-top: 2px solid #fff;
}
/* !Margin ------------------------------------------------------------------ */
.mt00 { margin-top: 0   !important;}
.mt02 { margin-top: 2px   !important;}
.mt05 { margin-top: 5px !important;}
.mt10 { margin-top:10px !important;}
.mt12 { margin-top:12px !important;}
.mt15 { margin-top:15px !important;}
.mt20 { margin-top:20px !important;}
.mt25 { margin-top:25px !important;}
.mt30 { margin-top:30px !important;}
.mt35 { margin-top:35px !important;}
.mt40 { margin-top:40px !important;}
.mt45 { margin-top:45px !important;}
.mt50 { margin-top:50px !important;}
.mt80 { margin-top:80px !important;}
.mr00 { margin-right: 0   !important;}
.mr05 { margin-right: 5px !important;}
.mr10 { margin-right:10px !important;}
.mr12 { margin-right:12px !important;}
.mr15 { margin-right:15px !important;}
.mr20 { margin-right:20px !important;}
.mr25 { margin-right:25px !important;}
.mr30 { margin-right:30px !important;}
.mr35 { margin-right:35px !important;}
.mr40 { margin-right:40px !important;}
.mr45 { margin-right:45px !important;}
.mr50 { margin-right:50px !important;}
.mb00 { margin-bottom: 0   !important;}
.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom:10px !important;}
.mb12 { margin-bottom:12px !important;}
.mb15 { margin-bottom:15px !important;}
.mb20 { margin-bottom:20px !important;}
.mb25 { margin-bottom:25px !important;}
.mb30 { margin-bottom:30px !important;}
.mb35 { margin-bottom:35px !important;}
.mb40 { margin-bottom:40px !important;}
.mb45 { margin-bottom:45px !important;}
.mb50 { margin-bottom:50px !important;}
.mb60 { margin-bottom:60px !important;}
.mb70 { margin-bottom:70px !important;}
.mb80 { margin-bottom:80px !important;}
.mb90 { margin-bottom:90px !important;}
.ml00 { margin-left: 0   !important;}
.ml05 { margin-left: 5px !important;}
.ml10 { margin-left:10px !important;}
.ml12 { margin-left:12px !important;}
.ml15 { margin-left:15px !important;}
.ml20 { margin-left:20px !important;}
.ml25 { margin-left:25px !important;}
.ml30 { margin-left:30px !important;}
.ml35 { margin-left:35px !important;}
.ml40 { margin-left:40px !important;}
.ml45 { margin-left:45px !important;}
.ml50 { margin-left:50px !important;}

/* !Padding  ---------------------------------------------------------------- */
.pt00 { padding-top: 0   !important;}
.pt05 { padding-top: 5px !important;}
.pt08 { padding-top: 8px !important;}
.pt10 { padding-top:10px !important;}
.pt12 { padding-top:12px !important;}
.pt15 { padding-top:15px !important;}
.pt20 { padding-top:20px !important;}
.pt25 { padding-top:25px !important;}
.pt30 { padding-top:30px !important;}
.pt35 { padding-top:35px !important;}
.pt40 { padding-top:40px !important;}
.pt45 { padding-top:45px !important;}
.pt50 { padding-top:50px !important;}
.pt80 { padding-top:80px !important;}
.pr00 { padding-right: 0   !important;}
.pr05 { padding-right: 5px !important;}
.pr08 { padding-right: 8px !important;}
.pr10 { padding-right:10px !important;}
.pr12 { padding-right:12px !important;}
.pr15 { padding-right:15px !important;}
.pr20 { padding-right:20px !important;}
.pr25 { padding-right:25px !important;}
.pr30 { padding-right:30px !important;}
.pr35 { padding-right:35px !important;}
.pr40 { padding-right:40px !important;}
.pr45 { padding-right:45px !important;}
.pr50 { padding-right:50px !important;}
.pb00 { padding-bottom: 0   !important;}
.pb05 { padding-bottom: 5px !important;}
.pb08 { padding-bottom: 8px !important;}
.pb10 { padding-bottom:10px !important;}
.pb12 { padding-bottom:12px !important;}
.pb15 { padding-bottom:15px !important;}
.pb20 { padding-bottom:20px !important;}
.pb25 { padding-bottom:25px !important;}
.pb30 { padding-bottom:30px !important;}
.pb35 { padding-bottom:35px !important;}
.pb40 { padding-bottom:40px !important;}
.pb45 { padding-bottom:45px !important;}
.pb50 { padding-bottom:50px !important;}
.pb80 { padding-bottom:80px !important;}
.pl00 { padding-left: 0   !important;}
.pl05 { padding-left: 5px !important;}
.pl08 { padding-left: 8px !important;}
.pl10 { padding-left:10px !important;}
.pl12 { padding-left:12px !important;}
.pl15 { padding-left:15px !important;}
.pl20 { padding-left:20px !important;}
.pl25 { padding-left:25px !important;}
.pl30 { padding-left:30px !important;}
.pl35 { padding-left:35px !important;}
.pl40 { padding-left:40px !important;}
.pl45 { padding-left:45px !important;}
.pl50 { padding-left:50px !important;}


.fz8 { font-size: .8rem; }
.fz9 { font-size: .9rem; }
.fz10 { font-size: 1.0rem; }
.fz11 { font-size: 1.1rem; }
.fz12 { font-size: 1.2rem; }
.fz13 { font-size: 1.3rem; }
.fz14 { font-size: 1.4rem; }
.fz15 { font-size: 1.5rem; }
.fz16 { font-size: 1.6rem; }
.fz17 { font-size: 1.7rem; }
.fz18 { font-size: 1.8rem; }
.fz19 { font-size: 1.9rem; }
.fz20 { font-size: 2.0rem; }
.fz21 { font-size: 2.1rem; }
.fz22 { font-size: 2.2rem; }
.fz23 { font-size: 2.3rem; }
.fz24 { font-size: 2.4rem; }
.fz25 { font-size: 2.5rem; }
.fz26 { font-size: 2.6rem; }
.fz27 { font-size: 2.7rem; }
.fz28 { font-size: 2.8rem; }
.fz29 { font-size: 2.9rem; }
.fz30 { font-size: 3.0rem; }
.fz31 { font-size: 3.1rem; }
.fz32 { font-size: 3.2rem; }
.fz33 { font-size: 3.3rem; }
.fz34 { font-size: 3.4rem; }
.fz35 { font-size: 3.5rem; }
.fz36 { font-size: 3.6rem; }
.fz40 { font-size: 4.0rem; }

.ls1 { letter-spacing: 1px; }
.ls2 { letter-spacing: 2px; }
.ls3 { letter-spacing: 3px; }
.ls4 { letter-spacing: 4px; }
.ls5 { letter-spacing: 5px; }
.ls6 { letter-spacing: 6px; }
.ls7 { letter-spacing: 7px; }
.ls8 { letter-spacing: 8px; }
.ls9 { letter-spacing: 9px; }
.ls10 { letter-spacing: 10px; }
.ls16 { letter-spacing: 16px; }
.dp-ib { display: inline-block; }
.dp-il { display: inline; }
.dp-bl { display: block; }

.lh100 { line-height: 100%; }
.lh110 { line-height: 110%; }
.lh120 { line-height: 120%; }
.lh130 { line-height: 130%; }
.lh140 { line-height: 140%; }
.lh150 { line-height: 150%; }
.lh160 { line-height: 160%; }
.lh170 { line-height: 170%; }
.lh180 { line-height: 180%; }
.lh190 { line-height: 190%; }
.lh100 { line-height: 200%; }

@media (max-width: 991px) {
  .fz20 { font-size: 1.8rem; }
  .fz21 { font-size: 1.9rem; }
  .fz22 { font-size: 2.0rem; }
  .fz23 { font-size: 2.1rem; }
  .fz24 { font-size: 2.2rem; }
  .fz25 { font-size: 2.3rem; }
  .fz26 { font-size: 2.4rem; }
  .fz27 { font-size: 2.5rem; }
  .fz28 { font-size: 2.6rem; }
  .fz29 { font-size: 2.7rem; }
  .fz30 { font-size: 2.8rem; }
  .fz31 { font-size: 2.9rem; }
  .fz32 { font-size: 3.0rem; }
  .fz33 { font-size: 3.1rem; }
  .fz34 { font-size: 3.2rem; }
  .fz35 { font-size: 3.3rem; }
  .fz36 { font-size: 3.4rem; }
  .fz37 { font-size: 3.5rem; }
  .fz38 { font-size: 3.6rem; }
  .fz39 { font-size: 3.7rem; }
  .fz40 { font-size: 3.8rem; }
}

@media (max-width: 767px) {
  .fz20 { font-size: 1.6rem; }
  .fz21 { font-size: 1.7rem; }
  .fz22 { font-size: 1.8rem; }
  .fz23 { font-size: 1.9rem; }
  .fz24 { font-size: 2.0rem; }
  .fz25 { font-size: 2.1rem; }
  .fz26 { font-size: 2.2rem; }
  .fz27 { font-size: 2.3rem; }
  .fz28 { font-size: 2.4rem; }
  .fz29 { font-size: 2.5rem; }
  .fz30 { font-size: 2.6rem; }
  .fz31 { font-size: 2.7rem; }
  .fz32 { font-size: 2.8rem; }
  .fz33 { font-size: 2.9rem; }
  .fz34 { font-size: 3.0rem; }
  .fz35 { font-size: 3.1rem; }
  .fz36 { font-size: 3.2rem; }
  .fz40 { font-size: 3.8rem; }
  .ls7 { letter-spacing: 0; }
  .ls8 { letter-spacing: 0; }
  .ls9 { letter-spacing: 0; }
  .ls10 { letter-spacing: 0; }
  .ls16 { letter-spacing: 0; }
}
div.aligncenter {
  margin: 0 auto !important;
}
.header{
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 85px;
  z-index: 99999;
}
.header_inner {
  position: relative;
  padding: 15px;

}
.logo{
  position: absolute;
  top: 0;
  left: 0;
  padding-top: 10px;
  padding-left: 20px;
}
nav {
  display: block !important;
}
.nablink li a {
  padding:10px;
  display:block;
  position:relative;
  text-align:center;
  text-decoration: none;
}
.nablink li a.nw {
  padding:10px;
  display:block;
  position:relative;
  text-align:center;
  text-decoration: none;
}
.nablink li a:before,
.nablink li a:after {
  content:"";
  display:block;
  position:absolute;
  left:100%;
  right:100%;
  height:2px;
  background-color:#ffd700;
  -webkit-transition:left 0.2s ease, right 0.2s ease;
  -moz-transition:left 0.2s ease, right 0.2s ease;
  -o-transition:left 0.2s ease, right 0.2s ease;
  transition:left 0.2s ease, right 0.2s ease;
}
.nw {
/*  border-top:2px solid #fff;*/
  border-bottom: 2px solid #ffd700;
  color: #ffd700;
  font-weight: 600;
  padding: 8px 10px;
  display: block;
  position: relative;
  text-align: center;
  text-decoration: none;
}
.nablink li a:before {
  bottom:0;
}

.nablink li a:after {
  top:0;
}

.nablink li a:hover:before,
.nablink li a:hover:after {
  left:0;
  right:0;
}
a.btw{
  border: 1px solid #fff;
  color: #fff;
  background: transparent;
  transition: .4s;
  letter-spacing: 1px;
}
a.btw:hover{
  color: #fff;
  background: #fff;
  transition: .4s;
}
a.btr{
  border: 1px solid #fff;
  background: #fff;
  color: #000;
  transition: .4s;
  letter-spacing: 1px;
  text-decoration: none;
}
a.btr:hover{
  color: #fff;
  background: #fff;
  border: 1px solid #fff;
  transition: .4s;
}
div.mv {
  max-width: 1200px;
  margin: 85px auto 50px;
}
h2 {
  font-size: 3.0rem;
  text-align: center;
  font-family: "Sawarabi Mincho";
  margin-bottom: 0;
  letter-spacing: 3px;
}
h3 {
  font-size: 2.4rem;
  font-family: "Sawarabi Mincho";
  letter-spacing: 2px;
}
@media only screen and (max-width: 916px) {
  .nav {
    position: fixed;
    right: -320px;
    top: 0;
    width: 300px;
    height: 100vh;
    padding-top: 60px;
    background-color: #171c61;
    transition: all .6s;
    z-index: 200;
    overflow-y: auto;
  }
  .hamburger {
    position: absolute;
    right: 24px;
    top: 22px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    z-index: 300;
  }
  .nav_list {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .nav_item {
    text-align: center;
    padding: 0 14px;
    color: #000;
    font-weight: bold;
    margin-bottom: 10px;
  }
  .nav_item:last-child {
    padding: 0 14px;
    margin-top: 10px;
  }
  .nav_item a {
    display: block;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
    text-decoration: none;
    color: #fff;
  }
  .nav_item a:hover {
    background-color: #eee;
  }
  .hamburger_border {
    position: absolute;
    left: 5px;
    width: 30px;
    height: 2px;
    background-color: #fff;
    transition: all .6s;
  }
  .hamburger_border_top {
    top: 8px;
  }
  .hamburger_border_center {
    top: 18px;
  }
  .hamburger_border_bottom {
    top: 28px;
  }
  .black_bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 100;
    background-color: #333;
    opacity: 0;
    visibility: hidden;
    transition: all .6s;
    cursor: pointer;
  }
  .nav-open .nav {
    right: 0;
  }
  .nav-open .black_bg {
    opacity: .8;
    visibility: visible;
  }
  .nav-open .hamburger_border_top {
    transform: rotate(45deg);
    top: 20px;
  }
  .nav-open .hamburger_border_center {
    width: 0;
    left: 50%;
  }
  .nav-open .hamburger_border_bottom {
    transform: rotate(-45deg);
    top: 20px;
  }
}/* sp */

@media only screen and (min-width: 916px) {
  .header {
    height: 80px;
  }
  .header_inner{
    max-width: 1200px;
    width: 100%;
    padding: 20px 30px 5px;
    margin-left: auto;
    margin-right: auto;
  }
  .logo{
    padding-top: 10px;
  }
  .nav_list{
    text-align: right;
  }
  .nav_list li{
    display: inline-block;
    text-align: right;
    padding-left: 20px;
  }
  .nav_list li a{
    color: #fff;
    font-weight: 600;
    font-size: 1.4rem;
    letter-spacing: 1px;
  }
}/* pc */


.pcbr {
  display: block;
}
.tabbr {
  display: none;
}
.spbr {
  display: none;
}
.spbr_all {
  display: none;
}
section.items {
  background: #fff;
}
h7 {
  width: 244px;
  margin: 0 auto;
}
h7 img{
  width: 100%;
}
.mails{
  max-width: 768px;
  margin: 80px auto 30px;
  padding: 30px 10px;
  border-radius: 10px;
}
.mailtxt {
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  color: #fff;
}
.linkbt {
  max-width: 550px;
  margin: 0 auto;
}
.linkbt a{
  transition-duration: 0.3s;
  display: block;
}
.linkbt a:hover{
  opacity: 0.7;
  transition-duration: 0.3s;
}
ul.sns{
  margin: 0 auto 80px;
  width: 210px;
  padding: 0;
  overflow: hidden;
}
ul.sns li{
  list-style: none;
  width: 90px;
  float: left;
}
ul.sns li:first-child{
  padding-left: 10px;
  padding-right: 5px;
}
ul.sns li:last-child{
  padding-left: 5px;
  padding-right: 10px;
}
ul.sns li a{
  display: block;
  transition-duration: 0.3s;
}
ul.sns li a:hover{
  opacity: 0.7;
  transition-duration: 0.3s;
}
footer {
  background: #171c61;
  text-align: center;
  padding-top: 20px;
  padding-bottom: 20px;
}
footer p.policy a {
  color: #fff;
  font-family: 'Roboto', sans-serif;
}
@media only screen and (max-width: 991px) {
  .tabbr {
    display: block;
  }
  .spbr_all {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .pcbr {
    display: none;
  }
  .spbr {
    display: block;
  }
  .spbr_all {
    display: block;
  }
}
@media only screen and (max-width: 414px) {
  .tabbr {
    display: none;
  }
  .spbr {
    display: none;
  }
  .spbr_all {
    display: block;
  }
}

.pagetop {
  display: none;
  position: fixed;
  right: 17px;
  z-index: 99999;
}

.pagetop.fixed {
  position: fixed;
  bottom: 9px;
}
.mailtop {
  display: none;
  position: fixed;
  right: 10px;
  z-index: 99999;
}
.mailtop.fixed {
  position: fixed;
  bottom: 85px;
  display: block;

}
.mailtop a{
  transition-duration: 0.3s;
  display: block;
}
.mailtop a:hover{
  opacity: 0.7;
  transition-duration: 0.3s;
}
@media (max-width: 1199px) {
  .pagetop.fixed {
    bottom: 4px;
  }
  .mailtop.fixed {
    bottom: 85px;
  }
}

@media (max-width: 474px) {

  .pagetop.fixed {
    bottom: 4px;
  }
  .mailtop.fixed {
    bottom: 62px;
  }
}