@charset "UTF-8";
/*! sanitize.css | CC0 Public Domain | github.com/jonathantneal/sanitize.css */
/* Normalization */
@import url("https://fonts.googleapis.com/css?family=Lato:400,700");
: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: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; color: #333; background-color: #fff; }

.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; }

a { transition: all ease .3s; }

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

.en { font-family: 'Lato', sans-serif; text-transform: uppercase; }

.light-bg { background: #f5f5f5; }

.flex-cols { display: flex; flex-wrap: wrap; justify-content: space-between; }

.center { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

.responsive-img { display: block; margin-left: auto; margin-right: auto; max-width: 100%; height: auto; }

.header { position: absolute; top: 0; left: 0; width: 100%; z-index: 9999; padding-top: 20px; }

.header .left { float: left; }

.header .left .sitename a { color: #333; font-size: 1.25rem; }

.header .left .global-menu { list-style: none; margin-top: 10px; }

.header .left .global-menu li { float: left; }

.header .left .global-menu li:not(:first-child) { position: relative; }

.header .left .global-menu li:not(:first-child):before { content: "/"; padding: 0 15px; }

.header .left .global-menu li a { color: #333; }

.header .header-contact { float: right; list-style: none; }

.header .header-contact li { float: left; }

.header .header-contact li a { position: relative; display: inline-block; padding: 7px 30px 10px; color: #fff; background: linear-gradient(135deg, #003c7a 0%, #00798e 100%); overflow: hidden; }

.header .header-contact li a:hover { transform: scale(1.025, 1.025); }

.header .header-contact li a i { display: inline-block; font-size: 1.5rem; text-align: center; padding-right: 10px; }

.header .header-contact li a p { display: inline-block; font-size: 1.5rem; letter-spacing: .1rem; }

.header .header-contact li a span { display: block; text-align: right; }

.kv { position: relative; top: 0; left: 0; width: 100%; height: 720px; }

.kv .slides { width: 100%; height: 720px; }

.kv .slides .slide { width: 100%; height: 720px; background-position: center center; background-repeat: no-repeat; background-size: cover; }

.kv .slides .slide.slide-1 { background-image: url(../images/slide-1.jpg); }

.kv .kv-text { position: absolute; top: 40%; left: calc((100% - 1040px)/2); letter-spacing: .1rem; font-size: 3rem; font-weight: normal; }

.kv .kv-text span { color: #003c7a; }

.page-content { padding: 40px 0; }

.page-content .home-title { text-align: center; margin-bottom: 20px; }

.page-content .home-title h3 { font-size: 1.5rem; }

.page-content .home-title h3 span { display: block; font-size: 1.25rem; color: #003c7a; }

.page-content .home-title h3 span:after { content: ""; display: block; width: 10%; height: 3px; margin: 5px auto; background: linear-gradient(135deg, #003c7a 0%, #00798e 100%); }

.reason-content .reason-cols { margin-top: 40px; }

.reason-content .reason-cols .reason-col { display: block; position: relative; width: 30%; }

.reason-content .reason-cols .reason-col span { top: 0; font-size: 1.5rem; text-align: center; color: #fff; width: 40px; height: 40px; line-height: 40px; border-radius: 50%; background: linear-gradient(135deg, #003c7a 0%, #00798e 100%); z-index: 999; }

.reason-content .reason-cols .reason-col .thumb { position: relative; }

.reason-content .reason-cols .reason-col .thumb img { margin-bottom: 10px; }

.reason-content .reason-cols .reason-col .thumb:before { position: absolute; top: 0; left: 0; content: ""; background: linear-gradient(135deg, #003c7a 0%, #00798e 100%); width: 100%; height: 100%; opacity: .4; transition: all ease .3s; }

.reason-content .reason-cols .reason-col .thumb:after { content: ""; position: absolute; right: 10px; bottom: 10px; width: 50px; height: 50px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; }

.reason-content .reason-cols .reason-col h4 { color: #333; margin-bottom: 5px; }

.reason-content .reason-cols .reason-col h4 i { color: #003c7a; padding-right: 5px; }

.reason-content .reason-cols .reason-col p { color: #333; line-height: 1.7; }

.flow-content .flow-cols { margin-top: 40px; }

.flow-content .flow-cols .flow-col { position: relative; width: 48%; margin-bottom: 30px; }

.flow-content .flow-cols .flow-col:before { position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ""; box-shadow: -10px -10px #003c7a; background: #f5f5f5; }

.flow-content .flow-cols .flow-col .thumb { position: relative; }

.flow-content .flow-cols .flow-col .thumb:before { position: absolute; top: 0; left: 0; display: block; content: ""; width: 100%; height: 100%; background: linear-gradient(135deg, #003c7a 0%, #00798e 100%); opacity: .5; }

.flow-content .flow-cols .flow-col .thumb span { color: #fff; font-size: 2rem; line-height: 1; z-index: 999; }

.flow-content .flow-cols .flow-col h4 { color: #003c7a; text-align: center; position: relative; font-size: 1.25em; padding: 20px 20px 15px 20px; }

.flow-content .flow-cols .flow-col p { position: relative; text-align: center; line-height: 1.7; padding: 0 20px 20px 20px; }

.contact-content dl { display: table; width: 70%; padding-bottom: 25px; margin-bottom: 25px; margin-left: auto; margin-right: auto; border-bottom: 1px solid #d5d5d5; }

.contact-content dl dt { display: table-cell; width: 20%; font-weight: bold; vertical-align: middle; }

.contact-content dl dt .require { display: block; color: red; }

.contact-content dl dd { display: table-cell; width: 80%; vertical-align: middle; }

.contact-content dl dd input[type="text"] { width: 100%; height: 35px; padding: 3px 8px; background: #eee; }

.contact-content dl dd textarea { width: 100%; height: 200px; padding: 3px 8px; background: #eee; }

.contact-content .submit { display: block; width: 300px; height: 50px; color: #fff; text-align: center; font-weight: bold; font-size: 1.25em; line-height: 50px; margin-left: auto; margin-right: auto; background: #003c7a; }

.office-content dl { display: table; width: 70%; padding-bottom: 25px; margin-bottom: 25px; margin-left: auto; margin-right: auto; border-bottom: 1px solid #d5d5d5; }

.office-content dl dt { display: table-cell; width: 20%; font-weight: bold; vertical-align: middle; }

.office-content dl dd { display: table-cell; width: 80%; vertical-align: middle; }

.office-content dl dd input[type="text"] { width: 100%; height: 35px; padding: 3px 8px; background: #eee; }

.office-content dl dd textarea { width: 100%; height: 200px; padding: 3px 8px; background: #eee; }

.footer .footer-contact-cols { padding: 30px 0; background: #f5f5f5; }

.footer .footer-contact-cols h4 { color: #003c7a; letter-spacing: .1em; font-size: 1.25em; text-align: center; }

.footer .footer-contact-cols .flex-cols { margin-top: 20px; }

.footer .footer-contact-cols .flex-cols .footer-contact-col { text-align: center; width: 45%; padding: 20px; background: linear-gradient(135deg, #003c7a 0%, #00798e 100%); }

.footer .footer-contact-cols .flex-cols .footer-contact-col:hover { transform: scale(1.025, 1.025); }

.footer .footer-contact-cols .flex-cols .footer-contact-col i { font-size: 2.5em; color: #fff; }

.footer .footer-contact-cols .flex-cols .footer-contact-col.tel p, .footer .footer-contact-cols .flex-cols .footer-contact-col.mail p { color: #fff; font-weight: bold; font-size: 2em; letter-spacing: .1em; }

.footer .footer-contact-cols .flex-cols .footer-contact-col.tel span, .footer .footer-contact-cols .flex-cols .footer-contact-col.mail span { color: #fff; }

.footer .footer-contact-cols .flex-cols .footer-contact-col.mail p { font-size: 1.5em; margin-top: 7px; margin-bottom: 4px; }

.footer .footer-content { padding: 30px 0; background: #333; }

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

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

.footer .footer-content .footer-content-cols .footer-content-col .footer-menu li a { color: #fff; }

.footer .footer-content .footer-content-cols .footer-content-col .footer-infomation { color: #fff; text-align: center; }

.footer .footer-content .footer-content-cols .footer-content-col .footer-infomation h3 { font-size: 1.25em; margin-bottom: 10px; }

.footer .footer-content .footer-content-cols .footer-content-col .footer-infomation p { margin-bottom: 10px; }

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

.footer .copyright h2 { float: left; }

.footer .copyright p { text-align: right; }

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

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

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

.page-title h2 { position: relative; display: inline-block; color: #fff; font-size: 3rem; font-weight: normal; padding: 20px 80px; background: #003c7a; }

.page-title h2:before { content: ""; position: absolute; left: 15px; top: 15px; width: 50px; height: 50px; border-left: 1px solid #fff; border-top: 1px solid #fff; }

.page-title h2:after { content: ""; position: absolute; right: 15px; bottom: 15px; width: 50px; height: 50px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; }

@media screen and (max-width: 1040px) { .container { width: 100%; }
  .header { padding-left: 20px; padding-right: 20px; }
  .header .left { float: none; }
  .header .left h1 { text-align: center; }
  .header .left .global-menu { text-align: center; margin-bottom: 30px; }
  .header .left .global-menu li { float: none; display: inline-block; }
  .header .header-contact { float: none; text-align: center; }
  .header .header-contact li { float: none; display: inline-block; }
  .kv .kv-text { font-size: 2rem; text-align: center; width: 100%; left: 50%; transform: translate(-50%, -45%); padding-left: 20px; padding-right: 20px; }
  .kv .kv-text br { display: none; }
  .page-content { padding-left: 20px; padding-right: 20px; }
  .reason-content .reason-cols .reason-col { width: 100%; }
  .reason-content .reason-cols .reason-col:not(:last-child) { margin-bottom: 40px; }
  .flow-content .flow-cols .flow-col { width: 100%; }
  .flow-content .flow-cols .flow-col:not(:last-child) { margin-bottom: 40px; }
  .contact-content .contact-form dl { display: block; width: 100%; }
  .contact-content .contact-form dl dt { display: block; width: 100%; }
  .contact-content .contact-form dl dd { display: block; width: 100%; }
  .office-content dl { display: block; width: 100%; }
  .office-content dl dt { display: block; width: 100%; }
  .office-content dl dd { display: block; width: 100%; }
  .footer .footer-contact-cols { padding-left: 20px; padding-right: 20px; }
  .footer .footer-contact-cols .flex-cols .footer-contact-col { display: block; width: 100%; }
  .footer .footer-contact-cols .flex-cols .footer-contact-col.tel { margin-bottom: 20px; }
  .footer .footer-content { padding-left: 20px; padding-right: 20px; }
  .footer .footer-content .footer-content-cols .footer-content-col { width: 100%; }
  .footer .footer-content .footer-content-cols .footer-content-col:not(:last-child) { margin-bottom: 20px; }
  .footer .copyright { padding-left: 20px; padding-right: 20px; }
  .footer .copyright h2 { float: none; }
  .footer .copyright p { text-align: center; }
  .page-title { padding-left: 20px; padding-right: 20px; }
  .page-title h2 { font-size: 1.75rem; text-align: center; width: 100%; left: 50%; transform: translate(-50%, -10%); } }
/*# sourceMappingURL=maps/style.css.map */

.online{
  position: fixed;
  right: 0;
  top: 50%;
  margin-top: -150px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 300px;
  background: linear-gradient(135deg, #003c7a 0%, #00798e 100%);
  z-index: 999;
}

.online:hover{
  opacity: .9;
}

.online span{
  color:  #fff;
  font-size: 18px;
  font-weight: bold;
  writing-mode: vertical-rl;
}