@charset "UTF-8";
/* ! ---------- initial ---------- ---------- ---------- ---------- */
/* ---------- setting ---------- ---------- */
/* ----------------------------------------------------------
arrow
---------------------------------------------------------- */
/* ----------------------------------------------------------
preset icon
---------------------------------------------------------- */
/* ! ---------- area ---------- ---------- ---------- ---------- */
/* リセットCSS */
html, body { width: 100%; height: 100%; }

body, h1, h2, h3, h4, h5, h6, p, ol, ul, li, blockquote, pre, a, div { margin: 0; padding: 0; font-size: 100%; line-height: inherit; box-sizing: border-box; }

body { -webkit-text-size-adjust: 100%; line-height: 1; color: #333; }

ol, ul { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

th, td { vertical-align: top; text-align: left; font-weight: normal; }

img { border: 0; vertical-align: bottom; }

a { text-decoration: none; }

body { font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif; }

main { display: block; }

main p { margin-top: 1em; line-height: 1.8; }

main p.is-no-margin { margin-top: 0; }

/* ----------------------------------------------------------
.area-wrapper
---------------------------------------------------------- */
.area-wrapper { position: relative; }

/* ----------------------------------------------------------
.area-inner
---------------------------------------------------------- */
.area-inner { position: relative; }

/* ----------------------------------------------------------
.block-inner
---------------------------------------------------------- */

/* ----------------------------------------------------------
.area-header
---------------------------------------------------------- */
.area-header { position: fixed; top: 0px; left: 0px; right: 0px; color: #222; z-index: 100; }

.area-header a { color: #222; }

.area-header ._row-logos { position: relative; }

.area-header ._row-logos ._logo { position: absolute; top: 15px; left: 30px; font-weight: bold; transition-duration: 0.2s; }

.area-header ._row-logos ._logo:hover { opacity: 0.8; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.area-header ._row-logos ._btns { position: absolute; z-index: 1000; display: -ms-flexbox; display: flex; }

.area-header ._row-logos ._btns ._btn { display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; -ms-flex-pack: center; justify-content: center; border: 1px solid #6277B6; color: #6277B6; font-weight: bold; margin: 0 5px; }

body.js-sp-menu-active .area-header ._row-logos ._btns ._btn { border: 1px solid #fff; color: #fff; }

.area-header ._menu-btn, .area-menu-sp ._menu-btn { position: absolute; }

.area-menu-sp ._menu-btn { height: 50px; }

.area-menu-sp ._menu-btn span { background: #fff; }

/* ----------------------------------------------------------
.area-header-sp
---------------------------------------------------------- */
/* ----------------------------------------------------------
.area-menu-sp
---------------------------------------------------------- */
.area-menu-sp { position: fixed; top: 0; right: 0px; bottom: 0; z-index: 100; color: #fff; z-index: -1; visibility: hidden; }

.area-menu-sp a { color: #fff; }

body.js-sp-menu-active .area-menu-sp { z-index: 105; visibility: visible; }

.area-menu-sp:before { content: ""; display: block; position: fixed; top: 0; right: 0; height: 0; background: #002C5A; opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; transition-duration: 0.2s; }

body.js-sp-menu-active .area-menu-sp:before { opacity: 1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; transition-duration: 0.2s; height: 100%; }

.area-menu-sp ._inner { position: absolute; opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; transition-duration: 0s; transition-delay: 0; }

body.js-sp-menu-active .area-menu-sp ._inner { opacity: 1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; transition-duration: 0.2s; transition-delay: 0.2s; }

.area-menu-sp ._inner ._body { position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; overflow-y: auto; -webkit-overflow-scrolling: touch; }

.area-menu-sp ._title { position: relative; font-weight: bold; }

.area-menu-sp ._title.is-line { border-top: 1px solid #fff; margin-top: 20px; padding-top: 20px; }

.area-menu-sp ._title img { display: block; margin-top: 10px; }

.area-menu-sp ._title span { vertical-align: middle; }

.area-menu-sp ._title span:nth-child(1) { display: inline-block; font-family: "Roboto", sans-serif; padding: 5px; }

.area-menu-sp ._title span:nth-child(2) { display: inline-block; padding: 5px; font-weight: normal; }

.area-menu-sp a { position: relative; display: block; }

.area-menu-sp .js-sp-menu-head a:after { display: none; }

/* ----------------------------------------------------------
area-body
---------------------------------------------------------- */
/* ----------------------------------------------------------
.area-footer
---------------------------------------------------------- */
.area-footer { margin-top: 60px; position: relative; background: #666666; color: #fff; font-size: 12px; }

.area-footer a { color: #fff; }

.area-footer a:hover { text-decoration: underline; }

.area-footer-corp { position: relative; background: #303030; color: #fff; }

.area-footer-corp a { color: #fff; }

.area-footer-corp a:hover { text-decoration: underline; }

.area-copy { background: #D9D9D9; padding: 30px 0 60px 0; text-align: center; }

/* ----------------------------------------------------------
.btn-pagetop
---------------------------------------------------------- */
.btn-pagetop { position: fixed; display: block; bottom: 10px; right: 20px; width: 40px; height: 40px; background: #000; color: #fff; text-align: center; cursor: pointer; border-radius: 50%; opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; transition-duration: 0.2s; transition-property: opacity; visibility: hidden; }

.btn-pagetop:after { content: ""; position: absolute; top: 18px; left: 10px; width: 12px; height: 1px; background: #fff; -ms-transform: rotate(-45deg); transform: rotate(-45deg); }

.btn-pagetop:before { content: ""; position: absolute; top: 18px; right: 10px; width: 12px; height: 1px; background: #fff; -ms-transform: rotate(45deg); transform: rotate(45deg); }

.btn-pagetop.js-show { opacity: 1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; visibility: visible; }

.btn-pagetop.js-show:hover { opacity: 0.6; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; }

.btn-pagetop.js-fixed { top: -60px; bottom: auto; position: absolute; }

/* ----------------------------------------------------------
.area-modal
---------------------------------------------------------- */
.area-modal { visibility: hidden; opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; transition-duration: 0.2s; position: fixed; top: 0px; left: 0px; right: 0px; bottom: 0px; z-index: 1000; }

.area-modal.js-show { visibility: visible; opacity: 1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.area-modal ._modal-bg { position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; background: rgba(0, 0, 0, 0.85); }

.area-modal ._modal-btn-close { position: absolute; cursor: pointer; border-radius: 50%; z-index: 10; transition-duration: 0.2s; }

.area-modal ._modal-btn-close:hover { opacity: 0.8; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.area-modal ._modal-btn-close:after, .area-modal ._modal-btn-close:before { content: ""; position: absolute; top: 18px; left: 8px; width: 25px; height: 4px; -ms-transform: rotate(-45deg); transform: rotate(-45deg); }

.area-modal ._modal-btn-close:before { -ms-transform: rotate(45deg); transform: rotate(45deg); }

.area-modal ._modal-box { position: absolute; background: #fff; box-sizing: border-box; border-radius: 5px; }

.area-modal ._modal-box ._modal-body { position: absolute; top: 0; bottom: 0; left: 0px; right: 0px; padding: 10px; background: #fff; box-sizing: border-box; text-align: center; }

.area-modal ._modal-box ._modal-body ._t1 { font-size: 18px; line-height: 1.2; font-weight: bold; }

.area-modal ._modal-box ._modal-body ._t2 { font-size: 14px; line-height: 1.8; }

.area-modal ._modal-box ._modal-body ._t3 { font-size: 12px; line-height: 1.8; }

@media screen and (min-width: 768px){
 main{ font-size: 16px; } }

@media screen and (max-width: 767px){
 main{ font-size: 12px; margin-top: 50px; }
 main img{ max-width: 100%; }
 .area-wrapper{ margin-top: 50px; }
 .area-inner{ margin: 0 10px; }
 .block-inner-sp{ padding-right: 15px; padding-left: 15px; }
 .area-header{ height: 50px; box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.05); background: #fff; }
 .area-header ._row-logos ._logo{ top: 10px; left: 10px; width: 50px; }
 .area-header ._row-logos ._logo img{ width: 100%; }
 .area-header ._row-logos ._btns{ top: 15px; right: 50px; font-size: 10px; }
 .area-header ._row-logos ._btns ._btn{ height: 20px; padding: 0 5px; }
 .area-header ._menu-btn, .area-menu-sp ._menu-btn{ top: 0; right: 0; width: 50px; height: 50px; }
 .area-header ._menu-btn span, .area-menu-sp ._menu-btn span{ transition-duration: 0.2s; position: absolute; background: #6277B6; height: 2px; left: 10px; right: 10px; }
 .area-header ._menu-btn span:nth-child(1), .area-menu-sp ._menu-btn span:nth-child(1){ top: 15px; }
 .area-header ._menu-btn span:nth-child(2), .area-menu-sp ._menu-btn span:nth-child(2){ top: 24px; }
 .area-header ._menu-btn span:nth-child(3), .area-menu-sp ._menu-btn span:nth-child(3){ bottom: 15px; }
 body.js-sp-menu-active .area-header ._menu-btn span, body.js-sp-menu-active .area-menu-sp ._menu-btn span{ background: #fff; }
 body.js-sp-menu-active .area-header ._menu-btn span:nth-child(1), body.js-sp-menu-active .area-menu-sp ._menu-btn span:nth-child(1){ position: absolute; top: 25px; -ms-transform: rotate(45deg); transform: rotate(45deg); }
 body.js-sp-menu-active .area-header ._menu-btn span:nth-child(2), body.js-sp-menu-active .area-menu-sp ._menu-btn span:nth-child(2){ display: none; }
 body.js-sp-menu-active .area-header ._menu-btn span:nth-child(3), body.js-sp-menu-active .area-menu-sp ._menu-btn span:nth-child(3){ position: absolute; top: 25px; -ms-transform: rotate(-45deg); transform: rotate(-45deg); }
 .area-menu-sp{ left: 0; }
 .area-menu-sp:before{ left: 0; }
 .area-menu-sp ._inner{ top: 50px; left: 20px; right: 20px; bottom: 0px; }
 .area-menu-sp ._title{ padding: 5px 0; }
 .area-menu-sp ._title img{ width: 200px; }
 .area-menu-sp ._title span:nth-child(1){ font-size: 18px; }
 .area-menu-sp ._title span:nth-child(2){ font-size: 10px; }
 .area-footer-corp{ font-size: 10px; padding: 40px 15px; }
 .area-footer-corp ._spec ._logo{ text-align: center; }
 .area-footer-corp ._spec ._add{ margin-top: 15px; line-height: 1.8; }
 .area-copy small{ font-size: 10px; }
 .area-modal ._modal-btn-close{ top: 5px; right: 5px; width: 40px; height: 40px; }
 .area-modal ._modal-btn-close:after, .area-modal ._modal-btn-close:before{ background: #000; }
 .area-modal ._modal-box{ top: 10px; left: 10px; bottom: 10px; right: 10px; width: auto; height: auto; margin: 0; } }

@media print, screen and (min-width: 768px){
 .area-wrapper{ margin-top: 90px; }
 body.page-index .area-wrapper{ margin-top: 0; }
 .area-inner{ margin: 0 auto; width: 1100px; }
 .block-inner{ margin: 0 auto; width: 1100px; }
 .area-header{ height: 90px; background: rgba(255, 255, 255, 0.8); }
 .area-header ._row-logos ._logo{ top: 15px; left: 30px; }
 .area-header ._row-logos ._btns{ top: 25px; right: 120px; font-size: 14px; }
 .area-header ._row-logos ._btns ._btn{ min-width: 100px; height: 40px; padding: 0 20px; }
 .area-header ._menu-btn, .area-menu-sp ._menu-btn{ top: 15px; right: 30px; width: 60px; height: 60px; }
 .area-header ._menu-btn span, .area-menu-sp ._menu-btn span{ transition-duration: 0.2s; position: absolute; background: #6277B6; height: 4px; left: 10px; right: 10px; }
 .area-header ._menu-btn span:nth-child(1), .area-menu-sp ._menu-btn span:nth-child(1){ top: 15px; }
 .area-header ._menu-btn span:nth-child(2), .area-menu-sp ._menu-btn span:nth-child(2){ top: 28px; }
 .area-header ._menu-btn span:nth-child(3), .area-menu-sp ._menu-btn span:nth-child(3){ bottom: 15px; }
 body.js-sp-menu-active .area-header ._menu-btn span, body.js-sp-menu-active .area-menu-sp ._menu-btn span{ background: #fff; }
 body.js-sp-menu-active .area-header ._menu-btn span:nth-child(1), body.js-sp-menu-active .area-menu-sp ._menu-btn span:nth-child(1){ position: absolute; top: 25px; -ms-transform: rotate(45deg); transform: rotate(45deg); }
 body.js-sp-menu-active .area-header ._menu-btn span:nth-child(2), body.js-sp-menu-active .area-menu-sp ._menu-btn span:nth-child(2){ display: none; }
 body.js-sp-menu-active .area-header ._menu-btn span:nth-child(3), body.js-sp-menu-active .area-menu-sp ._menu-btn span:nth-child(3){ position: absolute; top: 25px; -ms-transform: rotate(-45deg); transform: rotate(-45deg); }
 .area-menu-sp{ left: 50%; }
 .area-menu-sp:before{ left: 50%; }
 .area-menu-sp ._inner{ top: 100px; left: 40px; right: 40px; bottom: 0px; }
 .area-menu-sp ._title{ font-size: 15px; padding: 15px 0; }
 .area-menu-sp ._title span:nth-child(1){ font-size: 24px; }
 .area-menu-sp ._title span:nth-child(2){ font-size: 14px; }
 .area-footer-corp{ font-size: 12px; padding: 30px 0; }
 .area-footer-corp ._spec{ display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; }
 .area-footer-corp ._spec ._logo{ width: 200px; }
 .area-footer-corp ._spec ._add{ width: calc(100% - 220px); line-height: 1.6; }
 .area-copy small{ font-size: 12px; }
 .area-modal ._modal-btn-close{ top: -50px; right: 0px; width: 40px; height: 40px; }
 .area-modal ._modal-btn-close:after, .area-modal ._modal-btn-close:before{ background: #fff; }
 .area-modal ._modal-box{ top: 50%; left: 50%; width: 800px; height: 600px; margin: -300px 0 0 -400px; } }

@media screen and (min-width: 768px) and (max-width: 1140px){
 .area-wrapper{ min-width: 1140px; }
 .area-inner{ margin: 0 20px; }
 .block-inner{ margin: 0 20px; } }

/*# sourceMappingURL=maps/site.css.map */
