@charset "utf-8";
/* ----------------------------------------------------------------------------------------------------------------
カラー
---------------------------------------------------------------------------------------------------------------- */
/* !カラー */
html { background-color: #fff; }
body { /* border-top: #00427F 3px solid; */ }
/* font-color */
body { color: #fff; }
h1,h2,h3 { color: #fff; font-weight: bold; }
/* link-color */
a { color: #3c3c3c; }
h3 a:hover { text-decoration: none !important; }
/* other-font-color */
.fc1 { color: #AB0000; }
.fc2 { color: #58361E; }
/* header */
header { background-color: rgba(255,255,255,0.8); }
/* gnavi */
#gnavi { background-color: #e98b3c; }
#gnavi li a { color: #fff; }
#gnavi li a:hover { background-color: rgba(255,255,255,1.0); color: #e98b3c; }
/* footer */
footer { background-color: #f9f9f9; color: #3e5c69; }
#box_ft_nav { background-color: #fff; }
footer .nav_ft li { border-right: 1px solid #fff; }
footer .nav_ft li a { color: #fff; }
/* contents */
section { background-color: #262626; }
section:nth-child(even) { background-color: #3c3c3c; }
/* --------------------------------------------------------
フォント
-------------------------------------------------------- */
/* !フォント */
body {
font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
text-align: left;
font-feature-settings : "palt";
}
/* link-decoration */
a:link { text-decoration: none; }
a:visited { text-decoration: none; }
a:hover { text-decoration: underline; }
a:active { text-decoration: none; }
a.stay { text-decoration:none; }
a:hover,
a:hover img { /*画像リンク透過*/
opacity: 0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";
}
/* size */
/* PC */
@media only screen and (min-width : 1024px) {
body { font-size: 1.0rem; line-height: 150%.; }
h1 { font-size: 1.6rem; }
h2 { font-size: 2.2rem; }
h3 { font-size: 1.4rem; }
h4 { font-size: 1.4rem; }
h5, h6, p { font-size: 1.6rem; }
input, select { vertical-align:middle; }
th, td, li, select, input, label, dt, dd, time, li { font-size: 1.5rem; line-height: 160%; }
}
/* SP */
@media only screen and (max-width : 1024px) {
th, td, li, select, input, label, dt, dd, time, li { font-size: 1.4rem; }
}
/* --------------------------------------------------------
プリント箇所指定
-------------------------------------------------------- */
@media print{
  /* header */
  header { display: none; }
  footer { display: none; }
  .onepage-print p {
  /*A4縦*/
  width: 297mm;
  height: 200mm;
  page-break-after: always;
  font-size: 0;
  line-height: 1;
  margin: 0;
  padding: 0;
  margin-left: -13mm;
  }
  .onepage-print p img {
  width: 297mm;
  height: auto;
  margin: 0;
  padding: 0;
  }
  /*最後のページは改ページを入れない*/
  .onepage-print p.lastpage {
  page-break-after: auto;
  }
}
/* ----------------------------------------------------------------------------------------------------------------
レイアウト
---------------------------------------------------------------------------------------------------------------- */
#wrapper {
margin: 0 auto;
width: 900px;
min-height: 100%;
}
#header-in,
#gnavi ul,
#breadcrumb ol,
#footer-in,
#box_ft_nav nav,
footer p {
margin: 0 auto;
width: 1024px;
}
main.w-all {
width: 900px;
height: 100%;
min-height: 100%;
float: none;
}
section {
margin: 0px -500%;
padding: 6rem 500%;
display: block;
}
section:nth-child(even) {
}
/* SP */
@media only screen and (max-width : 1024px) {
  html { overflow: auto; }
  body { overflow: hidden; }
  #main-contents,
  #wrapper,
  #header-in,
  #gnavi ul,
  main,
  main.w-all,
  #side,
  #footer-in,
  footer p {
    box-sizing: border-box;
    width: 100%;
  }
  section {
    margin: 0 auto;
    padding: 3rem;
 }
}
/* ----------------------------------------------------------------------------------------------------------------
サイト全体の共通設定
---------------------------------------------------------------------------------------------------------------- */
/* --------------------------------------------------------
header
-------------------------------------------------------- */
header  {
position: fixed;
width: 100%;
z-index: 100;
}
header h1 a {
display: block;
text-indent:100%;
white-space: nowrap;
overflow: hidden;
width: 250px;
height: 50px;
background: url(../../imgs/_for_special/logo_hd.png) top left no-repeat;
background-size:100% 100%;
margin: 2rem auto;
}
/* SP */
@media only screen and (max-width : 1024px) {
  header h1 a {
  width: 180px;
  height: 36px;
  background: url(../../imgs/_for_special/logo_hd.png) top left no-repeat;
  background-size:100% 100%;
  margin: 2rem auto 1.75rem;
  }
}
/* --------------------------------------------------------
footer
-------------------------------------------------------- */
footer {
font-size:1.3rem;
}
footer #logo {
margin: 4rem auto 2rem;
text-align: center;
}
footer a:hover {
text-decoration: underline;
}
footer #logo img {
width: 50px;
height: auto;
}
/* footer-nav */
footer .nav_ft {
margin-bottom: 2rem;
text-align: center;
}
footer .nav_ft li {
display: inline-block;
padding-right: 1.2rem;
border-right: 1px solid;
margin-right: 1.2em;
}
footer .nav_ft li:last-child {
border-right: none;
margin-right: none;
}
#box_ft_nav {
padding: 1.5rem 0 1rem;
}
/* copy */
footer p {
text-align: center;
padding: 1.5rem;
font-size: 1.15rem;
}
/* SP */
@media only screen and (max-width : 1024px) {
  #footer-in {
  box-sizing: border-box;
  padding: 0 1.5rem;
  width: 100%;
  }
  footer #logo {
  margin: 2.5rem auto 1rem;
  }
  footer a {
  font-size:1.2rem;
  }
  footer #logo img {
  width: 12%;
  height: auto;
  }
  footer .nav_ft li {
  padding-right: 0.7rem;
  margin: 0.3rem 0;
  margin-right: 0.7rem;
  line-height: 100%;
  }
}
/* ----------------------------------------------------------------------------------------------------------------
main
---------------------------------------------------------------------------------------------------------------- */
section h2 { margin-bottom: 4rem; text-align: center; }
section p { line-height: 1.6; }
section p.read { font-weight: bold; margin-bottom: 1.5rem; }
section p.caption { font-size: 1.4rem; margin-bottom: 1.5rem; }
section span img {
  display: block;
  margin: 3rem 0;
}
section .img-box { 
  padding-bottom: 4rem;
  border-bottom: 1px dotted #717171;
  margin-bottom: 4rem;
}
section .img-box:last-child { 
  padding-bottom: 0;
  border-bottom: initial;
  margin-bottom: 0;
}
section dl {
  font-size: 0;
  width: 85%;
  margin: 5rem auto;
}
section dl dt {
  float: left;
  width: 15%;
  vertical-align: top;
}
section dl dd {
  float: left;
  width: 84%;
  vertical-align: top;
}
section dl dd:after {
  content: '';
  display: block;
  clear: both;
  padding-bottom: 1.5rem;
  border-bottom: 1px dotted #717171;
  margin-bottom: 1.5rem;
  width: 118%;
  margin-left: -18%;
}
.movie {
  height: 100vh;
  position: relative;
  width: 100vw;
  margin: 0 -500%;
  padding: 0 500%;
  background-color: rgba(0,0,0,0.25);
  display: block;
}
#bgVideo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.link_ems {
  margin: 4.5rem auto 0;
  text-align: center;
  display: block;
  padding: 1.6rem;
  background-color: #fff;
  width: 30%;
  font-size: 1.8rem;
  border-radius: 8px;
  border: 4px solid #fff;
}
a.link_ems:hover {
  border: 4px solid #507b8d;
  opacity: 1;
  filter: alpha( opacity=100 );
  -ms-filter: "alpha( opacity=100 )";
}
.link_ems img {
  padding-top: 1rem;
  width: 100%;
  height: auto;
}
/* SP */
@media only screen and (max-width : 1024px) {
  section p,
  section p.ac { line-height: 1.6; text-align: left; }
  section dl {
    font-size: 0;
    width: 100%;
    margin: 5rem auto;
  }
  section dl dt {
    width: 23%;
    margin-bottom: 1rem;
  }
  section dl dd {
    width: 76%;
    margin-bottom: 1rem;
  }
  section dl dd:after {
    content: '';
    display: block;
    clear: both;
    padding-bottom: 1.5rem;
    border-bottom: 1px dotted rgba(61, 91, 104, 0.3);
    margin-bottom: 1.5rem;
    width: 134%;
    margin-left: -34%;
  }
  .movie {
    display: none;
  }
  .video {
    position: relative;
    margin-top: 7.25rem;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
  }
  .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .link_ems {
    margin: 3.5rem auto 0;
    padding: 1.4rem;
    width: 74%;
  }
}
/* ----------------------------------------------------------------------------------------------------------------
en
---------------------------------------------------------------------------------------------------------------- */
/* 改行 */
.page_en body, .page_en h1, .page_en h2, .page_en h3, .page_en h4, .page_en h5, .page_en p, .page_en th, .page_en td, .page_en li, .page_en select, .page_en input, .page_en label, .page_en dt, .page_en dd ,time ,li { word-break: keep-all;}
