@charset "UTF-8";
/*! sanitize.css | CC0 Public Domain | github.com/jonathantneal/sanitize.css */
/* Normalization */
:root { -ms-overflow-style: -ms-autohiding-scrollbar; overflow-y: scroll; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

audio:not([controls]) { display: none; }

details { display: block; }

input[type="number"] { width: auto; }

input[type="search"] { -webkit-appearance: textfield; }

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

main { display: block; }

summary { display: block; }

pre { overflow: auto; }

progress { display: inline-block; }

small { font-size: 75%; }

template { display: none; }

textarea { overflow: auto; }

[hidden] { display: none; }

[unselectable] { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

/* Universal inheritance */
*, ::before, ::after { box-sizing: inherit; }

* { font-size: inherit; line-height: inherit; }

::before, ::after { text-decoration: inherit; vertical-align: inherit; }

/* Opinionated defaults */
*, ::before, ::after { border-style: solid; border-width: 0; }

* { margin: 0; padding: 0; }

:root { box-sizing: border-box; cursor: default; font: 16px / 1.5 sans-serif; text-rendering: optimizeLegibility; }

html { background-color: #FFFFFF; }

a { text-decoration: none; }

audio, canvas, iframe, img, svg, video { vertical-align: middle; }

button, input, select, textarea { background-color: transparent; }

button, input, select, textarea { color: inherit; font-family: inherit; font-style: inherit; font-weight: inherit; }

button, [type="button"], [type="date"], [type="datetime"], [type="datetime-local"], [type="email"], [type="month"], [type="number"], [type="password"], [type="reset"], [type="search"], [type="submit"], [type="tel"], [type="text"], [type="time"], [type="url"], [type="week"], select, textarea { min-height: 1.5em; }

code, kbd, pre, samp { font-family: monospace, monospace; }

nav ol, nav ul { list-style: none; }

select { -moz-appearance: none; -webkit-appearance: none; }

select::-ms-expand { display: none; }

select::-ms-value { color: currentColor; }

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

textarea { resize: vertical; }

::-moz-selection { background-color: #B3D4FC; text-shadow: none; }

::selection { background-color: #B3D4FC; text-shadow: none; }

@media screen { [hidden~="screen"] { display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) { clip: rect(0 0 0 0) !important; position: absolute !important; } }

/*
#styleguide
基本スタイル

```
<p>特に何も指定しないときの状態</p>
```
*/
body { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-smoothing: antialiased; text-rendering: auto; font-size: 14px; font-family: "Noto Serif JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; color: #f8f8f8; background-color: #1c1c1c; }

.clr { zoom: 1; }

.clr:before, .clr:after { content: " "; display: table; }

.clr:after { clear: both; }

.icon { display: inline-block; background-repeat: no-repeat; }

.icon.icon-web-navigation-line-craft-1-109681 { background-image: url("../images/icon.png"); background-position: 0px 0px; background-size: 1536px 1024px; width: 512px; height: 512px; }

.icon.icon-web-navigation-line-craft-2-109682 { background-image: url("../images/icon.png"); background-position: -512px 0px; background-size: 1536px 1024px; width: 512px; height: 512px; }

.icon.icon-web-navigation-line-craft-3-109688 { background-image: url("../images/icon.png"); background-position: 0px -512px; background-size: 1536px 1024px; width: 512px; height: 512px; }

.icon.icon-web-navigation-line-craft-4-109689 { background-image: url("../images/icon.png"); background-position: -512px -512px; background-size: 1536px 1024px; width: 512px; height: 512px; }

.icon.icon-web-navigation-line-craft-5-109690 { background-image: url("../images/icon.png"); background-position: -1024px 0px; background-size: 1536px 1024px; width: 512px; height: 512px; }

* { letter-spacing: .15em; box-sizing: border-box; }

* ul, * ol { list-style: none; }

* a { transition: all ease .3s; }

.container { width: 1140px; margin-left: auto; margin-right: auto; }

.en { font-family: "Montserrat", sans-serif; }

.header { padding: 20px 0; background: #eee; }

.header .container { display: flex; align-items: center; }

.header .container .sitename { width: 30%; }

.header .container .sitename a { display: block; }

.header .container .sitename a img { display: block; max-width: 100%; height: auto; }

.header .container .global-menu { width: 70%; display: flex; justify-content: flex-end; }

.header .container .global-menu .toggle { display: none; }

.header .container .global-menu ul { display: flex; justify-content: flex-end; }

.header .container .global-menu ul li { margin-left: 60px; }

.header .container .global-menu ul li a { color: #1c1c1c; }

.header .container .global-menu ul li a:hover { color: #999; }

.service-content { padding-top: 80px; padding-bottom: 80px; }

.service-content .service-content-col { display: flex; flex-wrap: wrap; align-items: center; }

.service-content .service-content-col .thumb { width: 40%; padding-right: 20px; }

.service-content .service-content-col .thumb img { display: block; max-width: 100%; height: auto; }

.service-content .service-content-col .text { width: 60%; padding-left: 20px; }

.service-content .service-content-col .text h3 { font-size: 1.25rem; line-height: 1; margin-bottom: 20px; }

.service-content .service-content-col .text p { font-size: 1.143rem; }

.service-content .service-content-col .text p:not(:last-child) { margin-bottom: 12px; }

.infomation-content { display: flex; align-items: center; padding-top: 80px; padding-bottom: 80px; }

.infomation-content h3 { width: 15%; text-align: center; color: #1c1c1c; font-size: 1.125rem; padding: 10px 17px 10px 20px; margin-right: 30px; background: #f8f8f8; }

.infomation-content .list { width: 85%; }

.infomation-content .list dl { display: flex; flex-wrap: nowrap; align-items: center; width: 100%; }

.infomation-content .list dl:not(:last-child) {margin-bottom: 20px;}

.infomation-content .list dl dt { width: 200px; padding-right: 20px; font-weight: bold; }

.infomation-content .list dl dd{width: calc(100% - 201px);}

.infomation-content .list dl dd a img {max-width: 20%;}

.access-content { width: 100%; }

.access-content iframe { max-width: 100%; }

.home-image { width: 100%; height: 500px; background-position: center center; background-repeat: no-repeat; background-size: cover; background-attachment: fixed; }

.home-image.home-image-1 { background-image: url(../images/home-image-1.jpg); }

.home-image.home-image-2 { background-image: url(../images/home-image-2.jpg); }

.kv { position: relative; width: 100%; height: 600px; overflow: hidden; }

.kv .kv-text { color: #1c1c1c; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 2.5rem; font-weight: normal; letter-spacing: .25em; z-index: 999; }

.footer { padding-top: 40px; padding-bottom: 40px; }

.footer .footer-cols { display: flex; flex-wrap: wrap; }

.footer .footer-cols .footer-col { width: 30%; }

.footer .footer-cols .footer-col h3 { font-size: 1.143rem; margin-bottom: 10px; }

.footer .footer-cols .footer-col p:not(:last-child) { margin-bottom: 12px; }

.footer .footer-cols .footer-col address { font-style: normal; margin-bottom: 12px; }

.footer .footer-cols .footer-col:first-child { width: 70%; }

.copyright { text-align: center; color: #fff; padding: 10px 20px; background: #000; }

.page-title { position: relative; width: 100%; height: 300px; background-position: center center; background-repeat: no-repeat; background-size: cover; }

.page-title.service-page-title { background-image: url(../images/service-page-title.jpg); }

.page-title.company-page-title { background-image: url(../images/company-page-title.jpg); }

.page-title.access-page-title { background-image: url(../images/access-page-title.jpg); }

.page-title.recruit-page-title { background-image: url(../images/recruit-page-title.jpg); }

.page-title.contact-page-title { background-image: url(../images/contact-page-title.jpg); }

.page-title.menu-page-title { background-image: url(../images/menu-page-title.jpg); }

.page-title:after { position: absolute; top: 0; left: 0; display: block; content: ""; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.6); }

.page-title h3 { color: #1c1c1c; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 2.5rem; font-weight: normal; letter-spacing: .25em; z-index: 999; }

.page-menu { padding-top: 40px; padding-bottom: 80px; }

.page-menu .page-menu-list { max-width: 1280px; display: flex; flex-wrap: wrap; align-items: center; margin-left: auto; margin-right: auto; margin-bottom: 40px; }

.page-menu .page-menu-list li { text-align: center; width: calc(100% / 4); padding-left: 10px; padding-right: 10px; margin-top: 10px; margin-bottom: 10px; }

.page-menu .page-menu-list li:not(:last-child) { border-right: 1px solid rgba(255, 255, 255, 0.3); }

.page-menu .page-menu-list li:nth-child(4n) { border-right: none; }

.page-menu .page-menu-list li a { color: #f8f8f8; }

.page-menu .page-menu-wrap .page-menu-col:not(:last-child) { margin-bottom: 60px; }

.page-menu .page-menu-wrap .page-menu-col h3 { position: relative; display: inline-block; color: #fff; font-size: 1.25rem; padding: 15px 20px; margin-bottom: 20px; background: #a90329; background: linear-gradient(to right, #a90329 0%, #96031b 44%, #96031b 100%); }

.page-menu .page-menu-wrap .page-menu-col h3:before { display: block; content: ""; position: absolute; top: 5px; left: 5px; width: calc(100% - 10px); height: 1px; background: #fff; }

.page-menu .page-menu-wrap .page-menu-col h3:after { display: block; content: ""; position: absolute; bottom: 5px; left: 5px; width: calc(100% - 10px); height: 1px; background: #fff; }

.page-menu .page-menu-wrap .page-menu-col .note { margin-bottom: 20px; }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content { display: flex; flex-wrap: wrap; }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .text { width: 50%; padding-right: 20px; }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .text ul li { display: flex; flex-wrap: wrap; align-items: center; font-size: 1rem; }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .text ul li p { width: 85%; padding-right: 20px; }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .text ul li p small { display: block; font-size: .893rem; }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .text ul li span { color: #ad9138; text-align: right; width: 15%; font-weight: bold; }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .text ul li.subtitle { color: #a90329; font-size: 1.143rem; font-weight: bold; padding-bottom: 15px; margin-bottom: 15px; border-bottom: 1px solid rgba(255, 255, 255, 0.3); }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .text ul li:not(:last-child):not(.subtitle) { padding-bottom: 15px; margin-bottom: 15px; border-bottom: 1px solid rgba(255, 255, 255, 0.3); }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .images { display: flex; flex-wrap: wrap; align-items: flex-start; width: 50%; padding-left: 20px; margin: -10px -10px 0 0; }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .images li { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; position: relative; width: 50%; background: #fff; border: 10px solid #1c1c1c; }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .images li img { display: block; max-width: 100%; height: auto; }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .images li p { position: absolute; bottom: 0; left: 0; width: 100%; padding: 5px 10px; background: rgba(0, 0, 0, 0.8); }

.page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .images li.full { width: 100%; }

.page-menu .page-menu-wrap .page-menu-col .lightbox-content { display: flex; flex-wrap: wrap; margin-left: -20px; margin-right: -20px; }

.page-menu .page-menu-wrap .page-menu-col .lightbox-content li { width: 50%; padding-left: 20px; padding-right: 20px; }

.page-menu .page-menu-wrap .page-menu-col .lightbox-content li a { display: block; }

.page-menu .page-menu-wrap .page-menu-col .lightbox-content li a img { display: block; max-width: 100%; height: auto; }

.page-menu .page-menu-wrap .page-menu-col .lightbox-content.full li { width: 100%; }

.page-content { padding-top: 40px; padding-bottom: 40px; }

.page-content p:not(:last-child) { margin-bottom: 12px; }

.page-content h4 { font-size: 1rem; margin-bottom: 10px; }

.page-content dl { display: table; width: 100%; }

.page-content dl:not(:last-child) { padding-bottom: 15px; margin-bottom: 15px; border-bottom: 1px solid rgba(255, 255, 255, 0.3); }

.page-content dl dt { display: table-cell; width: 20%; font-weight: bold; }

.page-content dl dd { display: table-cell; width: 80%; }

.contact-content dl dt { vertical-align: middle; }

.contact-content dl dt .require { color: #a90329; padding-left: 10px; }

.contact-content dl dd input { color: #111; width: 100%; height: 35px; padding: 5px; background: #f5f5f5; }

.contact-content dl dd textarea {color: #111; width: 100%; height: 200px; padding: 5px; background: #f5f5f5; }

.contact-content dl dd input[type="checkbox"] { width: auto; height: auto; margin-right: 5px; }

.contact-content dl dd p { display: flex; align-items: center; float: left; margin-right: 30px; margin-bottom: 0 !important; }

.contact-content .submit { display: block; font-size: 1.143rem; width: 200px; height: 50px; background: #a90329; margin-left: auto; margin-right: auto; }

.recruit-content .recruit-content-col:not(:last-child) { padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid rgba(255, 255, 255, 0.3); }

@media screen and (max-width: 1140px) { .container { width: 100%; }
  .header { padding-bottom: 0; }
  .header .container { flex-wrap: wrap; }
  .header .container .sitename { width: 100%; float: none; margin-bottom: 20px; }
  .header .container .sitename a img { margin-left: auto; margin-right: auto; }
  .header .container .global-menu { flex-wrap: wrap; width: 100%; float: none; margin-top: 0; }
  .header .container .global-menu .toggle { display: block; width: 100%; text-align: center; padding: 10px 20px; background: #a90329; }
  .header .container .global-menu .toggle i { color: #fff; font-size: 1.25em; }
  .header .container .global-menu ul { display: none; float: none; width: 100%; }
  .header .container .global-menu ul.active { display: block; }
  .header .container .global-menu ul li { float: none; width: 100%; margin: 0; text-align: center; border-bottom: 1px solid #d5d5d5; }
  .header .container .global-menu ul li a { display: block; padding: 10px 20px; }
  .kv .kv-text, .kv h3, .page-title .kv-text, .page-title h3 { text-align: center; padding-left: 20px; padding-right: 20px; width: 100%; }
  .page-contents { padding-left: 20px; padding-right: 20px; }
  .page-contents .main-contnet { float: none; width: 100%; padding-right: 0; }
  .page-contents .aside-content { float: none; width: 100%; }
  .service-content { padding-left: 20px; padding-right: 20px; }
  .service-content .service-content-col .thumb { width: 100%; padding-right: 0; }
  .service-content .service-content-col .text { width: 100%; padding: 20px 0 0 0; }
  .infomation-content { flex-wrap: wrap; padding-left: 20px; padding-right: 20px; }
  .infomation-content h3 { width: 100%; margin-right: 0; margin-bottom: 20px; }
  .infomation-content .list { display: block; width: 100%; }
  .infomation-content .list dl { display: block; width: 100%; padding: 0 0 10px 0; }
  .infomation-content .list dd { display: block; width: 100%; }
  .footer .footer-cols { padding-left: 20px; padding-right: 20px; }
  .footer .footer-cols .footer-col { width: 100%; }
  .footer .footer-cols .footer-col:first-child { width: 100%; margin-bottom: 20px; }
  .page-menu { padding-left: 20px; padding-right: 20px; }
  .page-menu .page-menu-list li { width: 50%; }
  .page-menu .page-menu-list li:nth-child(even) { border-right: none !important; }
  .page-menu .page-menu-wrap .page-menu-col h3 { display: block; text-align: center; margin-left: auto; margin-right: auto; }
  .page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .text { width: 100%; padding-right: 0; }
  .page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .text ul li p { width: 70%; }
  .page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .text ul li span { width: 30%; font-size: .893rem; }
  .page-menu .page-menu-wrap .page-menu-col .page-menu-col-content .images { width: 100%; padding-left: 0; margin-top: 20px; }
  .page-content { padding-left: 20px; padding-right: 20px; }
  .page-content dl { display: block; width: 100%; }
  .page-content dl dt { display: block; width: 100%; padding-bottom: 5px; }
  .page-content dl dd { display: block; width: 100%; } }
/*# sourceMappingURL=maps/style.css.map */