@charset "utf-8";
/*===============================================
 *	ブラウザリセット
===============================================*/
a:hover img {filter: alpha(opacity=85);-moz-opacity: 0.85;opacity: 0.85;}
html {overflow-x: hidden;overflow-y: scroll;-webkit-box-sizing: border-box;box-sizing: border-box;}
body {font-size: 100%;font-family: 'ヒラギノ角ゴ ProN W3', Meiryo, sans-serif;letter-spacing: 0;height: 100%;}
table {font-size: inherit;}
select, input, textarea {font: 99% arial, helvetica, clean, sans-serif;}
pre, code {font: 115% monospace; *font-size: 100%;}
br {letter-spacing: normal;}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, input, textarea, p, blockquote, th, td {margin: 0;padding: 0;font-style: normal;font-weight: normal;}
address, em {font-style: normal;}
strong, th {font-weight: normal;}
table {border-collapse: collapse;border-spacing: 0;border: none;}
th, td {text-align: left;border: none;font-weight: normal;}
hr {display: none;}
h1, h2, h3, h4, h5, h6 {font-size: 100%;}
img, fieldset {border: 0;vertical-align: bottom;}
li {list-style-type: none;}
ul, ol, dl {margin: 0;list-style-position: outside;list-style-type: none;}
li, dt, dd {font-size: 100%;}
dt {font-weight: normal;}
a {text-decoration: underline;outline: none;}
a:hover {text-decoration: none;}
form, input {padding: 0;margin: 0;}
iframe{border:none;}
picture{display: block;}
figure{margin: 0;}
img{display:block;height:auto;width:100%;}
.center{text-align: center;}
/* --------------このサイトオリジナル設定--------------- */
a {color: #444;outline: none;text-decoration:none;}
:root {
  --site-primary: #0ea9ed;
  --site-secondary: #231815;
  --site-bodycolor: #fff;
}
/*====================== clearFix ======================*/
.clearfix:before, .clearfix:after {content: "";display: block;overflow: hidden;}
.clearfix:after {clear: both;}
.clearfix {zoom: 1;}
/*=============================================== *
	パターン
===============================================*/
.base-fl {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: vertical;-webkit-box-direction: normal;}
.row {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-direction: row;flex-direction: row;}
.row-rev {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: horizontal;-webkit-box-direction: reverse;-ms-flex-direction: row-reverse;flex-direction: row-reverse;}
.wrap {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-wrap: wrap;flex-wrap: wrap;}
.space-btw {-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;}
.space-around {-ms-flex-pack: distribute;justify-content: space-around;}
.js-center {-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;}
.al-center {-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
.al-start {-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;}
.al-end {-webkit-box-align: end;-ms-flex-align: end;align-items: flex-end;}
.al-base {-webkit-box-align: baseline;-ms-flex-align: baseline;align-items: baseline;}
/*===============================================

 *	common

===============================================*/
html body {background: var(--site-bodycolor);color: var(--site-secondary);font-size: 16px;line-height: 1.6;-webkit-text-size-adjust: 100%;letter-spacing: .1em;margin-top: 76px;}
em {font-weight: bold;}
.sp {display: none;}
.inner {max-width: 1120px;margin: 0 auto;width: 95%;position: relative;}
@media screen and (min-width: 769px) {
a[href^="tel:"] {pointer-events: none;}
}
@media only screen and (max-width: 1024px) {
}
@media only screen and (max-width: 980px) {
html body {font-size: 15px;margin-top: 70px;}
}
@media only screen and (max-width: 568px) {
html {scroll-padding-top: 65px;}
html body {font-size: 14px;letter-spacing: 0;margin-top: 70px;}
.inner {width: 90%;}
.pc {display: none;}
.sp {display: block;}
}
/*===============================================
 *	br
===============================================*/
@media screen and (min-width:1021px){
.br-pc{display:block;}
.br-tb{display:none;}
.br-sp{display:none;}
}
@media screen and (min-width:481px) and (max-width: 1020px) {
.br-pc{display:none;}
.br-tb{display:block;}
.br-sp{display:none;}
}
@media screen and (max-width: 480px) {
.br-pc{display:none;}
.br-tb{display:none;}
.br-sp{display:block;}
}
/*===============================================
 *	header
===============================================*/
#header-area{background: #fff;padding: 15px 0;width: 100%;position: fixed;top: 0;z-index: 999;}
#header-wrap {max-width: 1120px;margin: 0 auto;}
#header-wrap .logo{max-width: 218px;margin-right: auto;}
#header-wrap .hd-btn_contact{max-width: 265px;}
#header-wrap .hd-btn_contact a{background: #075476;color:#fff;font-size: 20px;font-weight: bold;text-align: center;color: #fff;padding: 10px 1em;border-radius: 60px;}
#header-wrap .hd-btn_contact a:hover{opacity: .8;}

@media only screen and (max-width:1024px) {
#header-wrap {padding: 10px 20px;}

}
@media only screen and (max-width: 980px) {
#header-wrap {padding: 10px 2%;}
#header-wrap .logo{max-width: 175px;}
}
@media only screen and (max-width: 568px) {
#header-area{padding: 2%;width: 96%;}
#header-wrap .logo{max-width: 160px;}
#header-wrap .hd-btn_contact a{font-size: 14px;}
}
@media only screen and (max-width: 375px) {
#header-wrap .logo{max-width: 140px;}
}
/*===============================================
 *	FV visual
===============================================*/
#fv-wrap {background: url("../img/bg-blue.png") repeat;margin-bottom: 60px;}
#fv-wrap .fv-contents{max-width: 1120px;margin: 0 auto;position: relative;}
#fv-wrap .bg-blue{max-width: 775px;margin-left: auto;position: relative;z-index: 0;}
#fv-wrap .fv-txt{position: absolute;top: 50%;transform: translateY(-50%);left:0;width: 100%;max-width: 549px;}
#fv-wrap .fv-main_catch{margin: 0 0 20px 0;max-width: 549px;}
#fv-wrap .fv-sub_catch {font-size: 22px;color: #fff;font-weight: bold;}
#fv-wrap .fv-sub_catch span{background: var(--site-primary);display: block;text-align: center;line-height: 1.1;padding: 0 0 4px 0;}
@media only screen and (max-width: 980px) {
#fv-wrap .bg-blue {max-width: 485px;}
#fv-wrap .fv-main_catch {margin: 0 0 20px 0;max-width: 349px;}
#fv-wrap .fv-txt {max-width: 370px;left: 2%;}
#fv-wrap .fv-sub_catch {font-size: 16px;}
}
@media only screen and (max-width: 568px) {
#fv-wrap {margin-bottom: 30px;}
#fv-wrap .bg-blue {margin-left: 0;padding-top: 50%;}
#fv-wrap .fv-txt {left: 5%;width: 90%;top: 5%;transform: none;}
#fv-wrap .fv-sub_catch {font-size: 17px;}
}

/*===============================================
 *	intro-wrap
===============================================*/
.business-wrap{margin: 0 auto 60px;}
.basic-ttl {font-size: 24px;font-weight: bold;margin: 0 0 30px 0;}
.basic-ttl span {display: flex;align-items: center;color: var(--site-primary);font-size: 18px;text-transform: uppercase;}
.basic-ttl span::before {content: '';display: inline-block;margin-right: 15px;width: 40px;height: 1px;background-color: var(--site-primary);}
.business-left_box{max-width: 570px;padding-bottom: 200px;background: url("../img/photo-intro_small.png") left bottom no-repeat;}
.sub_business-ttl{font-size: 30px;font-weight: bold;}
.business-right_box{padding: 100px 0 0 0;max-width: 450px;background: url("../img/bg-intro.png") right top no-repeat;}
.business-right_box p {font-weight: 800;}
.business-right_box p:nth-of-type(-n+2){margin-bottom: 1.5em;}
@media only screen and (max-width: 980px) {
.basic-ttl {font-size: 20px;margin: 0 0 20px 0;}
.sub_business-ttl {font-size: 19px;}
.business-left_box{max-width: 370px;}
.business-right_box {max-width: 350px;}
.business-right_box {padding: 80px 0 0 0;max-width: 350px;background-size: 90%;}
}
@media only screen and (max-width: 568px) {
.business-wrap {margin: 0 auto 30px;}
.sub_business-ttl {font-size: 18px;}
.business-right_box {padding: 20px 0 0 0;max-width: initial;background: none;}
}

/*===============================================
 *	reason-wrap
===============================================*/
#reason-wrap {margin-bottom: 60px;}
.bg-blue{background: url("../img/bg-blue.png") repeat;}
.reason-contents{padding: 3% 0;}
.reason-ttl{font-size: 40px;font-weight: bold;text-align: center;line-height: 1.2;margin-bottom: 30px;}
.reason-ttl em{display:block;font-size: 60px;font-weight: bold;}
.reason-ttl em span{color: #fff;font-size: 100px;}
.box__ttl {color: #fff;position: relative;padding-top: 30px;font-size: 30px;font-weight: bold;border-bottom: 1px solid #fff;}
.box__ttl span {position: relative;z-index: 2;font-size: 30px;}
.box__ttl::before {content: attr(data-en);position: absolute;top: 0;left: 0;color: rgba(220,244,255,0.4);font-size: 26px;text-transform: uppercase;z-index: 1;}
.box{display: flex;flex-direction: row;}
.box:nth-of-type(odd){flex-direction: row-reverse;}
.box + .box{margin-top: 60px;}
.box__body{width: 50%;padding: 0 20px;}
.box__ttl {font-size: 20px;text-transform: uppercase;}
.box__txt {margin-top: 20px;color: #fff;}
.box__image{width: 50%;}
.box__image img{height: 100%;object-fit: cover;}
@media screen and (max-width:767px){
.box {display: block;}
.box + .box{margin-top: 60px;}
.box__body{width: 100%;padding: 0;}
.box__image{margin-top: 20px;width: 100%;}
}
@media only screen and (max-width: 980px) {
.box__ttl span {font-size: 24px;}
}
@media only screen and (max-width: 568px) {
#reason-wrap {margin-bottom: 30px;}
.reason-contents{padding: 30px 0;}
.reason-ttl {font-size: 26px;}
.reason-ttl em {font-size: 40px;}
.reason-ttl em span {font-size: 60px;}
.box__ttl span {font-size: 22px;}
.box + .box {margin-top: 30px;}
}
/*===============================================
 *	question-wrap
===============================================*/
#question-wrap{margin-bottom: 60px;}
.question-list dt {margin-bottom: 1em;font-weight: 600;}
.question-list dt::before,
.question-list dd::before {margin-right: .4em;}
.question-list dt::before {content: "Q.";color: var(--site-primary);font-size: 24px;font-weight: bold;}
.question-list dd {margin: 0 0 1.5em;padding: 1em 1.5em 1em 1em;background-color: #f2f2f2;}
.question-list dd::before {content: "A.";color: brown;font-size: 20px;font-weight: bold;}
@media only screen and (max-width: 568px) {
#question-wrap{margin-bottom: 30px;}
}
/*===============================================
 *	contact-wrap
===============================================*/
#contact-wrap{color: #fff;margin-bottom: 60px;}
#contact-wrap .basic-ttl {color: #fff;}
#contact-wrap .basic-ttl span {color: #fff;}
#contact-wrap .basic-ttl span::before {background-color: #fff;}
.Form {margin: 30px auto 0;max-width: 1120px;}
.Form-Item {border-top: 1px solid #ddd;padding-top: 24px;padding-bottom: 24px;width: 100%;display: flex;align-items: center;}
.Form-Item:nth-child(5) {border-bottom: 1px solid #ddd;}
.Form-Item-Label {width: 100%;max-width: 248px;letter-spacing: 0.05em;font-weight: bold;font-size: 18px;}
.Form-Item-Label.isMsg {margin-top: 8px;margin-bottom: auto;}
.Form-Item-Label-Required {border-radius: 6px;margin-right: 8px;padding-top: 8px;padding-bottom: 8px;width: 48px;display: inline-block;text-align: center;background: #bd0202;color: #fff;font-size: 14px;}
.Form-Item-Input {border: 1px solid #ddd;border-radius: 6px;margin-left: 40px;padding-left: 1em;padding-right: 1em;height: 48px;flex: 1;width: 100%;max-width: 760px;background: #eaedf2;font-size: 18px;}
.Form-Item-Textarea {border: 1px solid #ddd;border-radius: 6px;margin-left: 40px;padding-left: 1em;padding-right: 1em;height: 216px;flex: 1;width: 100%;max-width: 760px;background: #eaedf2;font-size: 18px;}
.Form-Btn {border-radius: 6px;margin-top: 32px;margin-left: auto;margin-right: auto;padding-top: 20px;padding-bottom: 20px;width: 280px;display: block;letter-spacing: 0.05em;background: #075476;color: #fff;font-weight: bold;font-size: 20px;}
@media screen and (max-width: 568px) {
#contact-wrap{margin-bottom: 30px;}
.Form {margin-top: 40px;}
.Form-Item {padding-left: 14px;padding-right: 14px;padding-top: 16px;padding-bottom: 16px;flex-wrap: wrap;width: auto;}
.Form-Item-Label {max-width: inherit;display: flex;align-items: center;font-size: 15px;}
.Form-Item-Label.isMsg {margin-top: 0;}
.Form-Item-Label-Required {border-radius: 4px;padding-top: 4px;padding-bottom: 4px;width: 32px;font-size: 10px;}
.Form-Item-Input {margin-left: 0;margin-top: 18px;height: 40px;flex: inherit;font-size: 15px;}
.Form-Item-Textarea {margin-top: 18px;margin-left: 0;height: 200px;flex: inherit;font-size: 15px;}
.Form-Btn {margin-top: 24px;padding: 15px 0;width: 80%;font-size: 18px;}
}
/*===============================================
 *	company-wrap
===============================================*/
#company-wrap{margin-bottom: 60px;}
table.company-tbl {width: 100%;border-collapse: collapse;border-spacing: 0;font-size: 14px;}
table.company-tbl th {color: #fff;width: 22%;background: var(--site-primary);border: 1px solid #ccc;box-sizing: border-box;padding: 15px;vertical-align: middle;font-weight: bold;text-align: center;}
table.company-tbl td {background: #fff;border: 1px solid #ccc;box-sizing: border-box;padding: 15px;vertical-align: top;text-align: left;}
@media all and (max-width: 600px) {
#company-wrap{margin-bottom: 30px;}
table.company-tbl th, table.company-tbl td {display: block;width: 100%;border-bottom: none;}
table.company-tbl tr:last-child td:last-child {border-bottom: 1px solid #ccc;}
}
/*******************************
 * 問い合わせフォーム全体のコンテナ
 *******************************/
 .contact_form_container {
  width: 100%;
  max-width: 800px;
  margin: auto;
  padding: 40px 20px;
}

/* 問い合わせフォーム全体の見出し */
.contact_form_container h2 {
  width: fit-content;
  margin: auto;
  display: grid;
  place-items: center;
}

/* 問い合わせフォーム全体の見出し(英字) */
.contact_form_container h2::after {
  content: attr(data-text);
  color: var(--darkRed);
}

/**********************************
 * 問い合わせ完了のメッセージ
 **********************************/
 .message_contents {
  margin: 20px 0;
  padding: 10px 20px;
  border: dashed 1px #505050;
}
.message_contents p {
  margin: 20px 0;
}

/*===============================================

 *	footer

===============================================*/
footer {background: var(--site-primary);font-size: 13px;color: #fff;padding: 10px 0;text-align: center;}
footer small{font-size: 13px;}
@media only screen and (max-width: 568px) {
footer {font-size: 10px;}
footer small{font-size: 11px;}
}
/*===============================================
 *	bookkeeping-wrap
===============================================*/
#bookkeeping-wrap{
  margin-bottom: 60px;
}

.bookkeeping-ttl{
  font-size: 40px;
  font-weight: bold;
  text-align: center;
  line-height: 1.2;
  margin-bottom: 30px;
}
.bookkeeping-ttl em{
  display:block;
  color: var(--site-primary);
  font-size: 50px;
  font-weight: bold;
}
.bookkeeping-ttl em span{
  color: #fff;
  font-size: 100px;
}
@media only screen and (max-width: 568px) {
  #bookkeeping-wrap{
    margin-bottom: 30px;
  }
  .bookkeeping-ttl {
    font-size: 26px;
    margin-bottom: 10px;
  }
  .bookkeeping-ttl em {
    font-size: 40px;
  }
  .bookkeeping-ttl em span {
    font-size: 60px;
  }

}

table.tbl-basic {
  margin: 0 auto;
  width: 100%;
}
table.tbl-basic th {
  text-align: center;
  font-weight: bold;
}
.tbl-bookkeeping th {
  background: var(--site-primary);
  border: solid 1px #ccc;
  color: #fff;
  padding: 10px;
}
.tbl-bookkeeping td {
border: solid 1px #ccc;
text-align: right;
  padding: 10px;
}
.tbl-bookkeeping td:first-child {
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .tbl-bookkeeping .thead {
    display: none;
  }
  .tbl-bookkeeping tr {
    width: 100%;
  }
  .tbl-bookkeeping td {
    display: block;
    text-align: right;
    font-size: 16px;
  }
  .tbl-bookkeeping td:first-child {
    background: var(--site-primary);
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
  }
  .tbl-bookkeeping td:before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    margin-right: 10px;
  }
}









