@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Roboto+Mono:300italic,300,500,500italic,700,700italic,400italic,400);
html { font-size: 80%; }
body { letter-spacing: 1px; font-family: Avenir, "Roboto Mono", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

/* = Selected Text
----------------------------------------------- */
::-moz-selection { background: #9fe0ff;  /* Safari */ }
::selection { background: #9fe0ff;  /* Safari */ }
::-moz-selection { background: #9fe0ff;  /* Firefox */ }
h1 { margin-top: 0 !important; }
h2 { font-weight: bold; font-size: 1.25rem; color: #004892; text-align: center; }
.title { margin-bottom: 30px; font-weight: bold; margin: 20px 0 30px; color: #424753; text-align: center; font-style: normal; font-size: 2.3125rem; line-height: 1.4; text-rendering: optimizeLegibility; }
.border-title { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -ms-flex-align: center; margin-bottom: 30px; text-align: center; font-weight: bold; -webkit-box-align: center; align-items: center; }
.border-title:before, .border-title:after { display: inline; border-top: 1px solid #ccc; content: ""; -ms-flex-positive: 1; -webkit-box-flex: 1; flex-grow: 1; }
.border-title:before { margin-right: 0.5em; }
.border-title:after { margin-left: 0.5em; }
h3 { margin-bottom: 20px; font-size: 1.5rem; }
ul { margin: 0; list-style: none; }
dl dt { font-weight: normal; }
address { font-style: normal; }
figure { margin: 0; }
.pt_wrap { position: relative; }
.page_top { position: absolute; right: 10px; bottom: 50px; display: block; z-index: 5; }
.page_top a:hover { opacity: 0.7; transition: 0.6s; -moz-transition: 0.6s; -webkit-transition: 0.6s; }
.zsiq_custommain.siq_bR { right: 10px; bottom: 50px; }
.zsiq_custommain.siq_bR:hover { opacity: 0.7; transition: 0.6s; -moz-transition: 0.6s; -webkit-transition: 0.6s; }
/* Header
=================================================== */
header.cd-main-header { position: fixed; z-index: 10; top: 0; height: 50px; width: 100%; }
header .cd-logo { margin: 0; line-height: 1.4; }
header .cd-logo img { width: 130px; }
header .cd-logo .con_area li { float: right; }
header .cd-logo .con_area li dt, header .cd-logo .con_area li dd { line-height: 1em; font-size: 12px; }
.fadeInDown { -webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-name: fadeInDown; animation-name: fadeInDown; visibility: visible !important; }
@-webkit-keyframes fadeInDown {
  0% { opacity: 0; -webkit-transform: translateY(-20px); }
  100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
  0% { opacity: 0; -webkit-transform: translateY(-20px); transform: translateY(-20px); }
  100% { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }
}

/* Main Contents
=================================================== */
.cd-main-content { background: url(../img/bg.gif) repeat; width: 100%; }
.kv-area { background: #eee; }
.kv-area h2 { margin: 0; padding: 30px 20px; text-align: center; }
.kv-area h2 span { display: inline-block; margin: 0 auto; color: #000; font-size: 1.8rem; }
.kv-area h2 span small { color: #000; }
.breadcrumbs { padding-top: 20px; border: 0; background: none; }
.breadcrumbs .fi-home { padding-right: 5px; }
.footer-breadcrumbs { padding-bottom: 30px; }

/* Side Contents
=================================================== */
.page-top { margin: 0; background: rgba(255, 255, 255, 0.4); text-align: center; }
.page-top a { color: #fff; font-size: 30px; }
.ie9 .contact { background: url(/common/img/bg_contact_ie9.jpg) fixed; background-size: cover; }
.no-touch .contact .button:hover { background: none; color: #fff; }
.sns-list li { display: inline-block; margin: 0 20px; }
.utility-area { position: fixed; bottom: 0; z-index: 9998; width: 100%; height: 41px; border-top: 1px solid #b3b3b3; background: rgba(35, 24, 21, 0.7); text-align: center; }
.utility-area ul { overflow: hidden; }
.utility-area ul li { float: left; width: 20%; }
.utility-area ul li a { display: inline-block; padding: 5px 0; color: #fff; }
.utility-area ul span { display: none; }
.utility-area ul i:before { vertical-align: middle; font-size: 28px; }
.reveal-modal .sns-list { margin: 50px auto 0; width: 220px; }
.reveal-modal .sns-list li { margin: 0; width: 48%; text-align: center; }
.reveal-modal .sns-list li a { color: #585858; font-size: 4.5rem; }
.reveal-modal form { margin-top: 50px !important; }
.reveal-modal form .search-box { border: none; height: 3rem; padding: 3px 1rem; font-size: 1.13rem; }
.cta_area { background: #fff; margin-bottom: 70px; padding: 30px 0; }
.cta_area_inner { max-width: 1000px; margin: 0 auto; text-align: center; }
.cta_area_inner h3 { margin-bottom: 40px !important; position: relative; }
.cta_area_inner h3::after { position: absolute; content: ""; bottom: -10px; right: 0; left: 0; margin: 0 auto; width: 130px; height: 2px; background: #00a8e8; }
.cta_area_inner i { margin-right: 10px; color: #00A8E8; display: inline-block; padding: 0 2px 0 7px; font-size: 40px; line-height: 1em; vertical-align: middle; }
.cta_area_inner span { font-size: 1.6rem; color: #00A8E8; letter-spacing: -2px; line-height: 36px; vertical-align: middle; }
.cta_area_inner dl, .cta_area_inner dl dd { margin-bottom: 0; }
.cta_area_inner dt, .cta_area_inner small { color: #204783; }
.cta_area_inner dt { font-size: 1rem; }
.cta_area_inner .cta_mail dd a { display: block; margin-top: 20px; }
.cta_area_inner small { font-size: 1.2rem; }
.cta_area_inner .icon-right-open-big { font-size: 1.8rem; }
.cta_area_inner a:hover { opacity: .8; }
.cta_area_inner img { width: 60%; }

/* Footer
=================================================== */
footer { padding: 50px 0 71px; background: #85c5e8; font-size: 1.63rem; color: #fff; }
footer nav { margin-bottom: 50px; }
footer nav a { color: #fff; }
footer nav a:hover { color: #c7f0ff; }
footer nav a.icon-right-open-big:before { margin: 0; }
footer nav .inline-list > li { float: none; width: 100%; }
footer nav .inline-list li ul.f_list > li { font-weight: normal; text-indent: -15px; padding-left: 15px; margin-bottom: 1.2rem; }
footer nav .inline-list > li .f_nest { font-weight: lighter; padding-left: 1em; font-size: 0.88rem; }
footer nav .sub-navlist li { margin: 5px 0; }
footer nav .sub-navlist li a { color: #fff; }
footer nav .sub-navlist li a:hover { color: #c7f0ff; }
footer .banner-list { margin: 10px 0 50px; }
footer .banner-list li { margin: 0; padding: 10px 0; width: 100%; text-align: center; }
footer .banner-list li:last-child img { border: 1px solid #174F9E; }
footer .footer-logo { text-align: center; }
footer address span { display: block; padding-right: 1em; }
footer .copy { margin: 0; color: #fff; text-align: right; font-size: 0.8rem; }
footer .con_area { color: #000; margin: 0 auto; }
footer .con_area a { color: #000; }
footer .con_area a:hover { opacity: 0.6; }
footer .con_area a:hover, footer .con_area a:focus { color: #000; }
footer .con_area li { float: left; margin-left: 0; padding: 7px 0 0 0; }
footer .con_area li dl { float: left; }
footer .con_area li dl { padding: 6px 0 0 0; }
footer .con_area li dl dt, footer .con_area li dl dd { line-height: 1em; text-align: left; margin: 0; padding: 0; }
footer .con_area li dl dt img { height: 15px; }
footer .con_area li dl dd { margin: 3px 0 0 0; }
footer .con_area li .fi-telephone, footer .con_area li .fi-mail { font-size: 2.8rem; }
footer .con_area li .fi-mail { font-size: 3.5rem; line-height: 3.5rem; padding-left: 1rem; }
footer .con_area li .h_tel { width: 70%; margin-bottom: 2em; }
footer .con_area li .tel_wrap { display: inline-block; }
footer .place { color: #000; }
footer .banner_area { margin: 0 auto; }
footer .banner_area li { width: 100%; margin: 0 auto; padding: 10px; text-align: center; }
footer .banner_area li img { width: 80%; }
@media print, screen and (min-width:48em) {
  html { font-size: 80%; }
  .kv-area .table { height: 180px; }
  .kv-area .left-cell { display: table-cell; width: 30%; background: #3b9ccf; }
  .kv-area .left-cell p { color: #fff; text-align: center; font-size: 2.7rem; }
  .kv-area .right-cell { padding: 20px; width: 70%; }
  main .button { margin: 30px 0 0; font-size: 1.5rem; }
  header .con_area li { float: right; margin-left: 12px; }
  header .con_area li dl, header .con_area li i { display: inline-block; }
  header .con_area li dl { padding: 6px 0 0 0; }
  header .con_area li dl dt, header .con_area li dl dd { font-size: 12px; line-height: 1em; text-align: left; }
  .utility-area ul li { width: 25%; }
  .cta_area_inner span { font-size: 2rem;}
  .cta_area_inner img { width: 80%; }
  .cta_area_inner .cta_mail dd a { margin-top: 0; }
  .cta_area_inner i { font-size: 50px;}
  footer .footer-logo { text-align: left; }
  footer .footer-logo span { display: block; padding-bottom: 10px; color: #fff; }
  footer .banner-list li { margin: 0; width: 33.33%; }
  footer nav ul { margin: 0; }
  footer nav .inline-list > li { float: left; margin-right: 10px; padding: 0; width: 24%; }
  footer nav .inline-list > li:first-child { width: 34%; }
  footer nav .inline-list li ul.f_list > li { text-indent: -18px; padding-left: 18px; font-size: 0.88rem; }
  footer .con_area { margin: 0 !important; padding: 0 !important; }
  footer .con_area a { color: #000; }
  footer .con_area a:hover { opacity: 0.6; }
  footer .con_area a:hover, footer .con_area a:focus { color: #000; }
  footer .con_area li { float: left; margin-left: 0; padding: 7px 0 0 0; }
  footer .con_area li dl { float: none; display: inline-block; }
  footer .con_area li dl { padding: 6px 0 0 0; margin: 0 0 1em 0; }
  footer .con_area li dl dt, footer .con_area li dl dd { line-height: 1em; text-align: right; margin: 0; padding: 0; }
  footer .con_area li dl dd { margin: 3px 0 0 0; font-size: 0.88rem; }
  footer .con_area li dl dt img { height: 20px; }
  footer .con_area li .fi-telephone, footer .con_area li .fi-mail { color: #000; display: inline-block; padding: 0 2px 0 7px; font-size: 44px; line-height: 1em; }
  footer .con_area li .fi-mail { margin-top: -7px; font-size: 58px; }
  footer .con_area li .h_tel { display: inline-block !important; width: 272px; margin: -27px 20px 0 0; }
  footer .place { font-size: 0.88rem; }
  footer .banner_area { max-width: 1032px; }
  footer .banner_area li { width: 25%; margin: 0; padding: 10px; }
  footer .con_area li p.tel_btn { display: inline-block !important; }
}
@media print, screen and (min-width:64em) {
  html { font-size: 100%; }
  .sp { display: none; }
  .page_top { right: 10px; bottom: 20px; }
  .zsiq_custommain.siq_bR { right: 10px; bottom: 20px; }
  header { padding-right: 80px; }
  header h1 { font-size: 12px; padding: 5px 0 10px 30px; color: #004892; }
  header .con_area { color: #004892; }
  header .con_area a { color: #004892; }
  header .con_area a:hover { opacity: 0.6; }
  header .con_area a:hover, header .con_area a:focus { color: #004892; }
  header .con_area li { float: right; margin-left: 12px; padding: 7px 0 0 0; }
  header .con_area li dl { padding: 6px 0 0 0; }
  header .con_area li dl dt, header .con_area li dl dd { font-size: 12px; line-height: 1em; text-align: right; margin: 0; padding: 0; }
  header .con_area li dl dd { margin: 3px 0 0 0; }
  header .con_area li .h_tel { display: inline-block !important; margin: -23px 0 0 0; }
  header.cd-main-header { position: relative; height: 100px; width: 100%; z-index: 100; }
  header .cd-logo { font-size: 12px; color: #004892; }
  header .cd-logo a { float: left; }
  header .cd-logo span { float: left; display: block; line-height: 1em; padding: 40px 0 0 10px; }
  header .cd-logo img { width: 205px; }
  .header-contact { position: absolute; right: 80px; }
  .header-contact ul { margin: 0; }
  .header-contact ul .fi-telephone, .header-contact ul .fi-mail { color: #00A8E8; display: inline-block; padding: 0 2px 0 7px; font-size: 44px; line-height: 1em; }
  .header-contact ul .fi-mail { margin-top: -7px; font-size: 58px; }
  .header-contact .h_tel { width: 200px; }
  .nav_wrap { position: relative; z-index: 100; }
  .dropmenu { *zoom: 1; list-style-type: none; width: 960px; margin: 5px auto 30px; padding: 0; }
  .dropmenu:before, .dropmenu:after { content: ""; display: table; }
  .dropmenu:after { clear: both; }
  .dropmenu li { position: relative; }
  .dropmenu li ul { width: 170%; list-style: none; position: absolute; z-index: 9999; left: 0; margin: 0 0 0 -35%; padding: 0 30px; opacity: 0; top: 80%; visibility: hidden; -webkit-transition: .6s; transition: .6s; background: rgba(0, 72, 146, 0.9); }
  .dropmenu li ul li { border-bottom: #fff 2px dashed; }
  .dropmenu li ul li:last-child { border-bottom: none; }
  .dropmenu li ul li a { padding: 4px 8px; text-align: center; border: none; }
  .dropmenu li ul li a:hover { color: #00A8E8; -webkit-transition: .5s; transition: .5s; }
  .dropmenu li:hover ul { top: 100%; visibility: visible; opacity: 1; }
  .dropmenu li ul .linefeed a { padding: 8px; line-height: 1.4; }
  .no-touch .header-contact .button:hover { background: #fff; color: #f18c24; }
  .fixed-wrap.fixed .cd-main-header { padding-right: 80px; height: 70px; box-shadow: 0px 6px 3px -3px rgba(0, 0, 0, 0.4); }
  .fixed-wrap.fixed .cd-main-header .header-contact { display: none !important; }
  .fixed-wrap.fixed .cd-main-header .cd-logo { top: 10px; }
  .fixed-wrap.fixed .cd-main-header .cd-logo span { display: none !important; }
  .fixed-wrap.fixed .cd-main-header .cd-primary-nav { margin-top: 15px !important; }
  .breadcrumbs { padding-left: 3.2rem; }
  .reveal-modal .sns-list li { margin: 0 20px; width: auto; }
  footer { padding-bottom: 30px; }
  footer .f_inner { max-width: 1920px; padding: 0 20px 60px 20px; }
  footer nav { width: 100%; margin: 0; }
  footer nav .inline-list > li { width: 28%; margin: 0; padding: 0 10px; }
  footer nav .inline-list > li:first-child { width: 42%; }
  footer nav .inline-list li ul.f_list > li { text-indent: -21px; padding-left: 21px; font-size: 1rem; }
  footer .banner-list { margin: 10px 0; }
  .no-touch footer nav .sub-navlist li a:hover { color: #c7f0ff; }
  .utility-area ul li { width: 20%; }
  .tooltip { z-index: 9999; margin-top: -5px !important; }
  .tooltip.tip-top { width: 230px !important; text-align: center; font-size: 1.38rem; }
  .utility-area .has-tip { border: none !important; }
  .utility-area .has-tip:hover { opacity: .7; color: #FFF; }
  .utility-area ul li a:hover { opacity: .7; }
  .cta_area { margin-bottom: 0; }
  .cta_area_inner img { width: auto; }
}
@media print, screen and (max-width:63.9375em) {
  .reveal-modal { width: 100%; background: none; border: 0; top: 0 !important; }
  .reveal-modal .close-reveal-modal, .reveal-modal .sns-list li a { color: #fff; }
}
@media print, screen and (min-width:80em) {
  .page_top { right: 80px; bottom: 20px; }
  .zsiq_custommain.siq_bR { right: 80px; bottom: 20px; }
  .utility-area { top: 0; right: 0; width: 60px; height: 100%; border-top: 0; }
  .utility-area ul { position: absolute; top: 50%; overflow: visible; margin-top: -218px; width: 100%; }
  .utility-area ul li { float: none; width: auto; }
  .utility-area ul li a { display: block; margin: 30px 5px 0; padding: 5px 0 0; }
  .utility-area ul li a:hover { opacity: .7; }
  .utility-area ul span { display: inline; letter-spacing: 0; font-size: 12px; }
  .utility-area ul i:before { font-size: 32px; }
  footer .f_inner { margin: 0 auto; max-width: 1920px; padding: 0 80px 0 20px; }
  footer nav .inline-list li ul.f_list > li { text-indent: -21px; padding-left: 21px; font-size: 1rem; }
  .header-contact .h_tel { width: 309px; }
  .tooltip { z-index: 9999; margin-right: 50px; }
  .tooltip.tip-left { width: 250px !important; text-align: center; font-size: 1.5rem; }
}
@media print {
  html { font-size: 60% !important; }
  a { text-decoration: none !important; }
  h2, h3, h4 { -webkit-background-size: 60% !important; -o-background-size: 60% !important; background-size: 60% !important; }
  .nav_area, header .con_area, .utility-area { display: none !important; }
  footer .columns { float: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; position: relative !important; left: 0 !important; }
  footer .footer-logo { text-align: left; }
  footer .footer-logo span { display: block; padding-bottom: 10px; color: #fff; }
  footer .banner-list li { margin: 0; width: 33.33%; }
  footer nav ul { margin: 0; }
  footer nav .inline-list > li { float: left; margin-right: 10px; padding: 0; width: 24%; }
  footer nav .inline-list > li:first-child { width: 34%; }
  footer nav .inline-list li ul.f_list > li { text-indent: -18px; padding-left: 18px; font-size: 0.88rem; }
  footer .con_area { margin: 0 !important; padding: 0 !important; }
  footer .con_area a { color: #000; }
  footer .con_area a:hover { opacity: 0.6; }
  footer .con_area a:hover, footer .con_area a:focus { color: #000; }
  footer .con_area li { float: left; margin-left: 0; padding: 7px 0 0 0; }
  footer .con_area li dl { float: none; display: inline-block; }
  footer .con_area li dl { padding: 6px 0 0 0; margin: 0 0 1em 0; }
  footer .con_area li dl dt, footer .con_area li dl dd { line-height: 1em; text-align: right; margin: 0; padding: 0; }
  footer .con_area li dl dd { margin: 3px 0 0 0; font-size: 0.88rem; }
  footer .con_area li dl dt img { height: 20px; }
  footer .con_area li .fi-telephone, footer .con_area li .fi-mail { color: #000; display: inline-block; padding: 0 2px 0 7px; font-size: 44px; line-height: 1em; }
  footer .con_area li .fi-mail { margin-top: -7px; font-size: 58px; }
  footer .con_area li .h_tel { display: inline-block !important; width: 272px; margin: -27px 20px 0 0; }
  footer .place { font-size: 0.88rem; }
  footer .banner_area { max-width: 1290px; }
  footer .banner_area li { width: 20%; margin: 0; padding: 10px; }
}
@media print, screen and (max-width:48em) {
  .zsiq_custommain.siq_bR {
    width: 64px;
    height: 64px;
    background: url(/common/img/icon_balloon_x2.png) no-repeat 0 0;
    background-size: 64px;
    cursor: pointer;
  }
  .zsiq_custommain img {
    display: none !important;
  }
}