@charset "UTF-8";
/* ============================================================================= Reset style ============================================================================= */
/*
YUI 3.18.1 (build f7e7bcb)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
html { background: #fff; color: #000; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td { margin: 0; padding: 0; }

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

fieldset, img { border: 0; }

address, caption, cite, code, dfn, em, strong, th, var { font-style: normal; font-weight: normal; }

ol, ul { list-style: none; }

caption, th { text-align: left; }

h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }

q:before, q:after { content: ""; }

abbr, acronym { border: 0; font-variant: normal; }

sup { vertical-align: text-top; }

sub { vertical-align: text-bottom; }

input, textarea, select { font-family: inherit; font-size: inherit; *font-size: 100%; font-weight: inherit; }

legend { color: #000; }

#yui3-css-stamp.cssreset { display: none; }

/* ============================================================================= Basic style ============================================================================== */
body { -webkit-text-size-adjust: none; background: #fff; color: #000; font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, sans-serif; }

img { display: block; max-width: 100%; }

div, p, dl, dt, dd, ol, ul, li, h1, h2, h3, h4, h5, h6, form, input, button, textarea, table, tr, th, td, article, aside, header, footer, section, nav { -webkit-box-sizing: border-box; box-sizing: border-box; }

a { text-decoration: none; }

#wrapper { position: relative; width: 100%; margin: 0 auto; overflow: hidden; }

.red { color: #ff0000; }

.century { font-family: "Century Gothic", sans-serif; }

/*============================================================================== Responsive ============================================================================= */
/* SP側の設定 */
@media screen and (max-width: 768px) { html { font-size: 13.33333333vw; }
  body { font-size: 0.28rem; }
  .inner { position: relative; margin: 0 0.2rem; }
  .pc-only { display: none; }
  img { width: 100%; } }

/* PC側の設定 */
@media screen and (min-width: 769px) { .inner { position: relative; width: 980px; margin: 0 auto; padding: 0; }
  .sp-only { display: none; } }

/*============================================================================== header ============================================================================= */
@media screen and (min-width: 769px) { .header-bg { padding: 20px 0; }
  .header-block { -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-box-align: center; -ms-flex-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; justify-content: space-between; }
  .header-logo { width: 249px; }
  .header-box { -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-box-align: center; -ms-flex-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; justify-content: space-between; width: 708px; }
  .header-txt { font-size: 15px; font-weight: bold; letter-spacing: 0.05em; line-height: 1.5; vertical-align: middle; }
  .header-time { -webkit-box-align: center; -ms-flex-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; background-color: #fff000; line-height: 1.2; }
  .header-first { -webkit-box-align: center; -ms-flex-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; }
  .header-num { font-size: 24px; }
  .header-tel { position: relative; width: 105px; margin-right: 140px; }
  .header-tel:hover { -webkit-transform: scale(0.98, 0.98); -ms-transform: scale(0.98, 0.98); -webkit-transition: 0.3s ease; transform: scale(0.98, 0.98); opacity: 0.8; transition: 0.3s ease; }
  .header-tel .num { position: absolute; right: -160px; bottom: -10px; width: 230px; color: #063a62; font-size: 26px; font-weight: bold; letter-spacing: 0; }
  /*============================================================================== fv ============================================================================= */
  .fv-bg { padding: 35px 0 40px; background: url(../img/fv_bg01_pc.jpg) no-repeat center/cover; }
  .fv-box { position: relative; }
  .fv-ttl { position: relative; width: 737px; margin-bottom: 25px; }
  .fv-txt01 { position: relative; width: 576px; margin: 15px 0 0; }
  .fv-txt02 { position: relative; width: 534px; margin: 15px 0 15px; }
  .fv-note { display: table; position: absolute; bottom: 0; margin-left: 250px; color: #000000; font-size: 12px; letter-spacing: 0.08em; white-space: nowrap;}
  .fv-right { position: absolute; right: 0; bottom: 0; }
  .fv-img01 { width: 380px; margin-bottom: -20px; margin-left: auto; }
  .fv-txt03 { width: 400px; }
  .fv-white { color: #ffffff; font-size: 12px; letter-spacing: 0.08em; }
  /*============================================================================== area ============================================================================= */
  .area-bg { padding: 20px 0 50px; background: url(../img/area_bg01_pc.png) no-repeat center/cover; }
  .area-lead { -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-box-align: center; -ms-flex-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; justify-content: space-between; height: 233px; background: url(../img/area_bg04_pc.png) no-repeat center/cover; }
  .area-txt01 { -webkit-transform: rotate(-1.5deg); -ms-transform: rotate(-1.5deg); display: inline-block; position: relative; margin: 0 0 0 340px; padding: 0 0 5px 0; transform: rotate(-1.5deg); color: #ffffff; font-size: 51px; font-weight: bold; letter-spacing: 0.04em; line-height: 1.2; }
  .area-txt01 .italic { -webkit-transform: skewX(-10deg); -ms-transform: skewX(-10deg); display: inline-block; transform: skewX(-10deg); }
  .area-txt01 .deco { padding: 0 8px 0 0; font-size: 70px; line-height: 1; }
  .area-txt01::after { -webkit-transform: translate(-50%, 0); -ms-transform: translate(-50%, 0) rotate(1.5deg); position: absolute; top: -50px; left: -170px; width: 233px; height: 233px; transform: translate(-50%, 0) rotate(1.5deg); background: url(../img/area_bg02_pc.png) no-repeat 50% 0; background-size: contain; content: ""; }
  .area-ttl { position: relative; width: 693px; margin: 20px auto 0; }
  .area-ttl::before { position: absolute; top: -130px; right: -256px; width: 429px; height: 429px; background: url(../img/area_img02_pc.png) no-repeat center/contain; content: ""; }
  .area-subttl { position: relative; width: 579px; margin: 36px auto -15px; }
  .area-list { margin: 30px 0 0; }
  .area-term { z-index: 200; position: relative; width: 398px; margin: 0 auto; }
  .area-desc { z-index: 100; position: relative; margin: -32px 0 0; padding: 65px 0 45px 68px; background: #fff; font-size: 18px; font-weight: bold; letter-spacing: .12em; line-height: 2.1; }
  .area-desc.desc02 { -webkit-box-align: center; -ms-flex-align: center; -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; justify-content: space-between; padding: 70px 30px 33px 35px; }
  .area-txt02 { width: 475px; }
  .area-img { width: 373px; }
  .area-note { display: block; margin: 15px 0 -10px; font-size: 13px; letter-spacing: 0.04em; line-height: 1.8; text-align: right; }
  .area-txt05 { width: 859px; margin: 0 auto; }
  .area-txt03 { margin-top: -150px; margin-bottom: -80px; }
  /*============================================================================== cta ============================================================================= */
  .cta { background: -webkit-gradient(linear, left top, left bottom, from(#cae3ff), to(#cae3ff)); background: -webkit-linear-gradient(top, #cae3ff, #cae3ff); background: linear-gradient(to bottom, #cae3ff, #cae3ff); }
  .cta-bg { padding: 10px 0 60px; background: url(../img/cta_bg01_pc.png) no-repeat 50% 0/cover; }
  .cta-ttl { width: 1016px; margin: 0 auto -70px; }
  .cta-comment { width: 534px; margin: 0 auto -10px; }
  .cta-lead { width: 923px; margin: 10px auto 30px; }
  .cta-block { padding: 35px 90px 50px; background: url(../img/cta_bg02_pc.png) no-repeat left/100% 100%; }
  .cta-banner { width: 707px; margin: 0 auto; }
  .cta-tel { width: 690px; margin: 25px auto 35px; }
  .cta-tel:hover { -webkit-transform: scale(0.98, 0.98); -ms-transform: scale(0.98, 0.98); -webkit-transition: 0.3s ease; transform: scale(0.98, 0.98); cursor: pointer; opacity: 0.8; transition: 0.3s ease; }
  .cta-mail { display: table; margin: 25px auto 0; border-bottom: 1px solid #063a62; color: #063a62; font-size: 18px; font-weight: bold; }
  .cta-mail:hover { -webkit-transform: scale(0.98, 0.98); -ms-transform: scale(0.98, 0.98); -webkit-transition: 0.3s ease; transform: scale(0.98, 0.98); cursor: pointer; opacity: 0.8; transition: 0.3s ease; }
  .cta-flex { -webkit-box-align: center; -ms-flex-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; margin: 30px 0 0; background: #fff; }
  .cta-box { position: relative; width: 180px; padding: 16px 0; background: #000; }
  .cta-box::before { -webkit-transform: translate(100%, -50%); -ms-transform: translate(100%, -50%); position: absolute; top: 50%; right: 0; width: 0; height: 0; transform: translate(100%, -50%); border-width: 7.5px 0 7.5px 12px; border-style: solid; border-color: transparent transparent transparent #000; content: ""; }
  .cta-txt01 { width: 144px; margin: 0 auto; }
  .cta-time { padding: 15px 0 15px 30px; font-size: 17px; font-weight: bold; letter-spacing: 0.04em; line-height: 1.6; text-align: center; }
  .cta-time .deco { color: #ff0b04; }
  .cta-timer { color: #ff0b04; letter-spacing: 0.08em; }
  .cta-timer .js-cta-hour, .cta-timer .js-cta-minutes { font-size: 29px; }
  .cta-cash { margin: 8px 0 0; }
  .cta-note { margin: 10px 0 0; font-size: 12px; letter-spacing: 0.08em; }
  .cta02 { background: none; }
  .cta03 { background: #e3f0ff; }
  .fv-tel { -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-box-align: center; -ms-flex-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; justify-content: space-evenly; width: 760px; margin: 30px auto 0; letter-spacing: 0; }
  .fv-tel:hover { -webkit-transform: scale(0.98, 0.98); -ms-transform: scale(0.98, 0.98); -webkit-transition: 0.3s ease; transform: scale(0.98, 0.98); opacity: 0.8; transition: 0.3s ease; }
  .fv-tel .icon { width: 79px; }
  .fv-tel .txt { display: block; color: #063a62; font-size: 75px; letter-spacing: -0.02em; line-height: 1; }
  .cta .bold {font-weight: bold;}
  /*============================================================================== solution ============================================================================= */
  .solution-bg { padding-bottom: 100px; background: url(../img/solution_bg01_pc.png) repeat-y top left; }
  .solution-ttl01 { position: relative; left: -94px; width: 1060px; }
  .solution-list01 { -ms-flex-wrap: wrap; display: -webkit-box; display: -ms-flexbox; display: flex; flex-wrap: wrap; margin-bottom: -40px; }
  .solution-item01 { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; position: relative; justify-content: space-between; width: 480px; margin-right: 20px; margin-bottom: 40px; padding: 40px 20px 30px; border: 5px solid #acbbc7; border-radius: 10px; background-color: #ffffff; }
  .solution-item01:nth-child(2n) { margin-right: 0; }
  .solution-num01 { -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); position: absolute; top: 0; right: 0; left: 0; width: 200px; margin: 0 auto; padding: 5px 0; transform: translateY(-50%); border-radius: 17px; background-color: #063a63; color: #ffffff; font-size: 21px; font-weight: bold; line-height: 1; text-align: center; }
  .solution-right01 { width: 230px; }
  .solution-ttl02 { margin-bottom: 5px; padding-bottom: 3px; color: #063a63; font-size: 34px; font-weight: bold; letter-spacing: 5.87px; line-height: 1.2; }
  .solution-ttl02:after { display: block; width: 230px; height: 3px; border-radius: 2px; background-color: #acbbc7; content: ""; }
  .solution-txt01 { -webkit-box-align: center; -ms-flex-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; color: #063a63; font-size: 24px; font-weight: bold; letter-spacing: 0.09em; }
  .solution-txt01:before { display: block; width: 19px; height: 19px; margin-right: 5px; background: url(../img/solution_obj01_pc.png) no-repeat top left/contain; content: ""; }
  .solution-img01 { width: 180px; }
  .solution-ttl03 { margin-bottom: 20px; }
  .solution-list02 { -ms-flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; flex-wrap: wrap; justify-content: space-between; }
  .solution-item02 { -webkit-box-shadow: 0 0 24px rgba(0, 0, 0, 0.07); position: relative; width: 467px; padding: 20px 0 25px; border-radius: 10px; background-color: #ffffff; box-shadow: 0 0 24px rgba(0, 0, 0, 0.07); }
  .solution-ttl04 { -webkit-transform: translateX(-6px); -ms-transform: translateX(-6px); width: 480px; margin-bottom: 15px; transform: translateX(-6px); }
  .solution-txt02 { margin-bottom: 15px; color: #063a62; font-size: 34px; font-weight: bold; text-align: center; }
  .solution-img02 { height: 380px; }
  .solution-img02 img { height: 100%; margin: 0 auto; }
  /*============================================================================== repair ============================================================================= */
  .repair-bg { padding-top: 223px; padding-bottom: 80px; background: url(../img/repair_bg01_pc.png) no-repeat top center, #3375bd; }
  .repair-ttl01 { width: 678px; margin-bottom: 55px; margin-left: 136px; }
  .repair-item { margin-bottom: 40px; padding-bottom: 60px; border-radius: 10px; background-color: #ffffff; }
  .repair-item:last-child { margin-bottom: 0; }
  .repair-head { width: 980px; padding: 10px 0 25px; border-radius: 10px 10px 0 0; background-color: #fffde1; }
  .repair-num { width: 312px; margin-bottom: 10px; }
  .repair-ttl02 { margin-left: 60px; color: #000000; font-size: 36px; font-weight: bold; letter-spacing: 0.05em; line-height: 1.2; }
  .repair-ttl02-img { width: 740px; margin: 24px 0 0 53px; }
  .repair-ttl02 .red { color: #ff1f00; font-size: 50px; }
  .repair-ttl02 .red.big { font-size: 60px; }
  .repair-ttl02 .big { font-size: 50px; }
  .repair-ttl02 .under { border-bottom: 3px solid #000; }
  .repair-img01 { width: 900px; margin: 40px auto 0; }
  .repair-img02 { width: 629px; margin: 40px auto 0; }
  .repair-btn { display: block; width: 300px; margin: 30px auto 0; cursor: pointer; }
  .repair-btn:hover { -webkit-transform: scale(0.98, 0.98); -ms-transform: scale(0.98, 0.98); -webkit-transition: 0.3s ease; transform: scale(0.98, 0.98); opacity: 0.8; transition: 0.3s ease; }
  .repair-alert { margin-top: 10px; color: #000000; font-size: 14px; text-align: center; }
  .repair .js-more-content,.repair .js-more-content02 { display: none; }
  /*============================================================================== peace ============================================================================= */
  .peace { background-color: #3375bd; }
  .peace-bg { margin-bottom: -60px; padding-top: 120px; padding-bottom: 140px; background: url(../img/peace_bg01_pc.png) no-repeat top left/cover; }
  .peace-ttl02 { -webkit-transform: translateX(-10px); -ms-transform: translateX(-10px); width: 1000px; margin-bottom: -30px; transform: translateX(-10px); }
  .peace-box { -webkit-box-shadow: 0 0 24px rgba(0, 0, 0, 0.07); width: 961px; margin: 0 auto; padding: 60px 30px 30px; border-radius: 5px; background-color: #ffffff; box-shadow: 0 0 24px rgba(0, 0, 0, 0.07); }
  .peace-img01 { width: 840px; margin: 0 auto 40px; }
  .peace-img02 { margin-bottom: 70px; }
  .peace-box02 { padding: 0 30px 30px; border-radius: 10px; background-color: #f4f4f4; }
  .peace-txt02 { -webkit-transform: translateY(-30px); -ms-transform: translateY(-30px); width: 330px; margin: 0 auto -10px; transform: translateY(-30px); }
  .peace-txt04 { margin-top: 10px; color: #555555; font-size: 14px; line-height: 1.8; }
  /*============================================================================== anxiety ============================================================================= */
  .anxiety-bg { padding: 40px 0 70px; background-color: #dbd7ce; }
  .anxiety-inner { z-index: 1; position: relative; }
  .anxiety-bg01 { z-index: -1; position: absolute; top: -42px; right: -64px; width: 659px; }
  .anxiety-ttl01 { -webkit-transform: translateX(-10px); -ms-transform: translateX(-10px); width: 511px; margin-bottom: 10px; transform: translateX(-10px); }
  .anxiety-ttl02 { margin-bottom: 40px; }
  .anxiety-box01 { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; margin-bottom: 50px; }
  .anxiety-txt01 { width: 429px; color: #000000; font-size: 18px; }
  .anxiety-img01 { width: 513px; }
  .anxiety-box02 { margin-bottom: 34px; border-radius: 10px; background-color: #ffffff; }
  .anxiety-ttl03 { position: relative; padding: 15px; padding-left: 130px; border-radius: 10px 10px 0 0; background: url(../img/anxiety_bg02_pc.png) no-repeat top left/cover; color: #000000; font-size: 40px; font-weight: bold; }
  .anxiety-ttl03:after { display: block; position: absolute; top: -10px; left: 20px; width: 100px; height: 98px; background: url(../img/anxiety_obj01_pc.png) no-repeat top left/contain; content: ""; }
  .anxiety-box03 { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; padding: 40px; border-radius: 0 0 10px 10px; background-color: #ffffff; }
  .anxiety-box04 { width: 486px; }
  .anxiety-ttl04 { margin-bottom: 10px; font-size: 28px; font-weight: bold; }
  .anxiety-ttl04 .orange { color: #ff6c00; }
  .anxiety-txt02 { color: #000000; font-size: 18px; letter-spacing: 0.03em; line-height: 1.65; }
  .anxiety-img02 { width: 370px; }
  /*============================================================================== reason ============================================================================= */
  .reason-bg { padding: 85px 0 75px; background: #f6f6f6; background: url(../img/reason_bg01_pc.png) no-repeat top center/cover; }
  .reason-ttl01 { width: 679px; margin: 0 auto 75px; }
  .reason-item01 { margin-bottom: 40px; }
  .reason-num { margin-bottom: 30px; }
  .reason-txt01 { font-size: 24px; font-weight: bold; letter-spacing: 0.05em; line-height: 1.8; }
  .reason-txt01.ta-c { text-align: center; }
  .reason-list02 { -webkit-box-pack: justify; -ms-flex-pack: justify; -ms-flex-wrap: wrap; display: -webkit-box; display: -ms-flexbox; display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px; }
  .reason-item02 { position: relative; width: 470px; }
  .reason-item02:nth-child(2) { margin-bottom: 40px; }
  .reason-head01 { z-index: 2; position: relative; margin-bottom: -10px; padding: 10px; background: url(../img/reason_bg02_pc.png) no-repeat top center/cover; color: #ffffff; font-size: 28px; font-weight: bold; letter-spacing: 0.05em; text-align: center; }
  .reason-img01 { z-index: 1; position: relative; height: 200px; }
  .reason-txt02 { width: 427px; margin: 20px auto 0; color: #333333; font-size: 18px; letter-spacing: .04em; }
  .reason-box { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; }
  .reason-box .reason-txt01 { width: 500px; }
  .reason-box .reason-alert01.pc-only { margin-top: 45px; font-weight: normal; margin-left: 0; }
  .reason-img02 { width: 470px; }
  .reason-alert01 { display: block; margin-top: 5px; margin-left: 35px; font-size: 14px; letter-spacing: 0.05em; }
  .reason-alert01.sp-only { display: none; }
  /*============================================================================== check ============================================================================= */
  .check-bg { padding-bottom: 60px; background: url(../img/check_bg01_pc.jpg) repeat top left; }
  .check-ttl01 { -webkit-transform: translateY(-65px); -ms-transform: translateY(-65px); width: 784px; margin-left: 157px; transform: translateY(-65px); }
  .check-list01 { -webkit-box-pack: justify; -ms-flex-pack: justify; -ms-flex-wrap: wrap; display: -webkit-box; display: -ms-flexbox; display: flex; flex-wrap: wrap; justify-content: space-between; }
  .check-item01 { width: 470px; margin-bottom: 40px; }
  .check-box { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; height: 155px; padding: 20px; padding-left: 15px; border-radius: 0 0 10px 10px; background-color: #ffffff; }
  .check-img { width: 157px; }
  .check-txt01 { width: 260px; color: #333333; font-size: 18px; line-height: 1.5; }
  .check-note { display: block; margin-top: 5px; color: #000000; font-size: 12px; letter-spacing: 0.03em; }
  /*============================================================================== enginner ============================================================================= */
  .engineer-bg { padding: 30px 0 80px; background-color: #fffee1; }
  .engineer-list { z-index: 100; position: relative; margin: -55px 0 0; }
  .engineer-item { margin-bottom: 30px; border: 10px solid #bdd9ef; border-radius: 10px; background-color: #bdd9ef; }
  .engineer-term { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; padding: 20px 30px 20px 30px; background-color: #bdd9ef; }
  .engineer-pic { width: 151px; }
  .engineer-block { width: 700px; }
  .engineer-name { position: relative; padding: 5px 0 15px; color: #063a63; font-size: 22px; font-weight: bold; letter-spacing: 0.1em; }
  .engineer-name::before { position: absolute; bottom: 0; left: 0; width: 700px; height: 3px; background-image: -webkit-gradient(linear, left top, right top, from(#ffffff), color-stop(99%, #bdd9ef), to(#bdd9ef)); background-image: -webkit-linear-gradient(left, #ffffff 0%, #bdd9ef 99%, #bdd9ef 100%); background-image: linear-gradient(to right, #ffffff 0%, #bdd9ef 99%, #bdd9ef 100%); content: ""; }
  .engineer-lead { margin: 20px 0 0; color: #063a63; font-size: 28px; font-weight: bold; letter-spacing: 0.1em; line-height: 1.35; }
  .engineer-desc { padding: 35px 30px; background-color: #fff; font-size: 18px; letter-spacing: 0.06em; line-height: 1.55; }
  /*============================================================================== dispatch ============================================================================= */
  .dispatch-bg { padding: 80px 0; background: url(../img/dispatch_bg02_pc.png) no-repeat top center, #e3f0ff; }
  .dispatch-ttl01 { width: 552px; margin-bottom: 5px; }
  .dispatch-ttl02 { width: 734px; margin: 0 auto 40px; }
  .dispatch-list { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; margin-bottom: 25px; }
  .dispatch-item { width: 230px; }
  .dispatch-item:last-child .dispatch-img:after { content: none; }
  .dispatch-img { position: relative; margin-bottom: 25px; }
  .dispatch-img:after { display: block; z-index: 2; position: absolute; top: -10px; right: -30px; width: 36px; height: 178px; background: url(../img/dispatch_bg01_pc.png) no-repeat top left/contain; content: ""; }
  .dispatch-ttl03 { -webkit-box-align: center; -ms-flex-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; align-items: center; margin-bottom: 10px; color: #000000; font-size: 24px; font-weight: bold; }
  .dispatch-num { width: 37px; margin-right: 5px; }
  .dispatch-txt01 { color: #000000; font-size: 18px; }
  .dispatch-txt01 .small { font-size: 10px; vertical-align: text-top; }
  .dispatch-note { color: #333333; font-size: 14px; }
  /*============================================================================== reason ============================================================================= */
  .reason02-bg { padding: 70px 0; background: url(../img/reason02_bg01_pc.png) no-repeat 50% 0; background-size: cover; }
  .reason02-ttl { width: 955px; margin: 0 auto; }
  .reason02-list { -webkit-box-pack: justify; -ms-flex-pack: justify; -ms-flex-wrap: wrap; display: -webkit-box; display: -ms-flexbox; display: flex; flex-wrap: wrap; justify-content: space-between; margin: 60px 0 0; }
  .reason02-item { position: relative; width: 470px; margin-bottom: 40px; padding-top: 256px; padding-bottom: 30px; background-color: #ffffff; }
  .reason02-subttl { position: absolute; top: 20px; right: 0; left: 0; height: 210px; margin: 0 auto; }
  .reason02-subttl img { height: 100%; margin: 0 auto; }
  .reason02-subttl.row { height: 181px; }
  .reason02-txt01 { color: #000000; font-size: 20px; font-weight: bold; letter-spacing: 0.05em; text-align: center; }
  .reason02-note { color: #555555; font-size: 14px; }
  /*============================================================================== voice ============================================================================= */
  .voice-bg { padding: 15px 0 70px; background: url(../img/voice_bg01_pc.png) no-repeat top left/cover; }
  .voice-ttl { -webkit-transform: translateX(-100px); -ms-transform: translateX(-100px); width: 1069px; margin: 0 auto 40px; transform: translateX(-100px); }
  .voice-list { -webkit-box-pack: justify; -ms-flex-pack: justify; -ms-flex-wrap: wrap; display: -webkit-box; display: -ms-flexbox; display: flex; flex-wrap: wrap; justify-content: space-between; }
  .voice-item { position: relative; width: 480px; margin-bottom: 20px; padding: 40px 20px; background: url(../img/voice_bg02_pc.jpg) repeat top left; }
  .voice-item:after { display: block; position: absolute; top: 3px; right: 10px; width: 53px; height: 42px; background: url(../img/voice_obj01_pc.png) no-repeat top left/contain; content: ""; }
  .voice-lead { padding-bottom: 5px; border-bottom: 3px dotted #bd8533; color: #000000; font-size: 24px; font-weight: bold; }
  .voice-sub { margin-bottom: 35px; padding: 15px 0; border-bottom: 3px dotted #bd8533; color: #000000; font-size: 18px; }
  .voice-box01 { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; }
  .voice-block01 { width: 200px; margin: 7px 0 0;}
  .voice-block02 { width: 236px; color: #ff1f00; font-size: 20px; line-height: 1.8; font-weight: bold; letter-spacing: .1em; border-bottom: 3px dotted #bd8533; padding: 0 0 10px 1em;}
  .voice-btn { width: 196px; margin: 28px 0 0; cursor: pointer; }
  .voice-btn:hover { -webkit-transform: scale(0.98, 0.98); -ms-transform: scale(0.98, 0.98); -webkit-transition: 0.3s ease; transform: scale(0.98, 0.98); opacity: 0.8; transition: 0.3s ease; }
  .voice-pic01 {border: 2px solid #e3e3e3;}
  .voice-pic02 {width: 184px; margin: 10px auto 0;}
  .voice .right {margin: 0 0 0 12px;}
  .voice .right .sub-txt {font-size: 14px; text-align: right; margin: 10px 0 0;}
  .voice .right .block {padding: 0 0 45px;}
  /*============================================================================== company ============================================================================= */
  .company-bg { padding: 100px 0 80px; background-color: #3375bd; }
  .company-ttl01 { width: 941px; margin: 0 auto 40px; }
  .company-box01 { padding-bottom: 30px; background-color: #ffffff; }
  .company-head { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; margin-bottom: 30px; }
  .company-img01 { width: 440px; }
  .company-txt01 { width: 512px; padding: 10px 35px 0 0; color: #000000; font-size: 18px; letter-spacing: 0.06em; line-height: 1.9; }
  .company-ttl02 { width: 900px; margin: 0 auto 20px; padding: 5px; border-radius: 10px; background-color: #e5e5e5; color: #000000; font-size: 28px; font-weight: bold; letter-spacing: 0.05em; text-align: center; }
  .company-ttl03 { margin-bottom: 20px; color: #000000; font-size: 24px; font-weight: bold; letter-spacing: 0.05em; text-align: center; }
  .company-table01 { width: 750px; margin: 0 auto; }
  .company-table01 tbody { width: 100%; }
  .company-table01 tr { width: 100%; color: #000000; font-size: 16px; }
  .company-table01 th { width: 180px; font-weight: bold; text-align: left; vertical-align: text-top; }
  .company-table01 td { width: 570px; padding-bottom: 25px; line-height: 1.8; }
  /*============================================================================== best ============================================================================= */
  .best-bg { padding: 60px 0 100px; }
  .best-ttl01 { width: 947px; margin-bottom: 20px; }
  .best-list01 { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; }
  .best-item01 { width: 300px; height: 490px; border-radius: 10px; background-color: #f2f2f2; }
  .best-ttl02 { padding: 12px; border-radius: 10px 10px 0 0; background-color: #3375bd; color: #ffffff; font-size: 24px; font-weight: bold; letter-spacing: 0.05em; text-align: center; }
  .best-img01 { width: 240px; margin-top: 20px; margin-bottom: 25px; margin-left: 20px; }
  .best-txt { width: 252px; margin: 0 auto; color: #000000; font-size: 16px; line-height: 26px; }
  /*============================================================================== flow ============================================================================= */
  .flow-bg { padding: 45px 0 70px; background: url(../img/flow_bg01_pc.png) no-repeat 50% 0; background-size: cover; }
  .flow-ttl { width: 937px; margin: 0 auto; }
  .flow-lead { width: 808px; margin: 0 auto; }
  .flow-list { -webkit-box-pack: justify; -ms-flex-pack: justify; -ms-flex-wrap: wrap; display: -webkit-box; display: -ms-flexbox; display: flex; flex-wrap: wrap; justify-content: space-between; margin: -10px 0 0; }
  .flow-item { width: 314px; margin: 40px 0 0; }
  .flow-step { position: relative; margin: 30px 0 0 0; padding: 0 0 0 55px; font-size: 28px; font-weight: bold; letter-spacing: 0.02em; }
  .flow-step::before { -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); position: absolute; top: 50%; left: 0; width: 47px; height: 56px; transform: translateY(-50%); background: url(../img/flow_icon01_pc.png) no-repeat 50% 0; background-size: contain; content: ""; }
  .flow-item:nth-of-type(2) .flow-step::before { background: url(../img/flow_icon02_pc.png) no-repeat 50% 0; background-size: contain; }
  .flow-item:nth-of-type(3) .flow-step::before { background: url(../img/flow_icon03_pc.png) no-repeat 50% 0; background-size: contain; }
  .flow-item:nth-of-type(4) .flow-step::before { background: url(../img/flow_icon04_pc.png) no-repeat 50% 0; background-size: contain; }
  .flow-item:nth-of-type(5) .flow-step::before { background: url(../img/flow_icon05_pc.png) no-repeat 50% 0; background-size: contain; }
  .flow-item:nth-of-type(6) .flow-step::before { background: url(../img/flow_icon06_pc.png) no-repeat 50% 0; background-size: contain; }
  .flow-txt01 { margin: 20px 0 0; font-size: 20px; letter-spacing: 0.04em; line-height: 1.6; }
  .flow-txt01 .asterisk { position: relative; top: -6px; font-size: 12px; }
  .flow-note { display: block; margin: 10px 0 0; font-size: 13px; letter-spacing: 0.04em; line-height: 1.3; }
  .flow-note02 { margin: 3px 0 0 305px; font-size: 12px; letter-spacing: 0.04em; }
  .flow-note03 { display: block; margin: 10px 0 0; font-size: 13px; letter-spacing: 0.04em; line-height: 1.3; }
  /*============================================================================== warning ============================================================================= */
  .warning-bg { padding: 55px 0 80px; background: #616161; }
  .warning .inner { width: 1008px; }
  .warning .inner::before { -webkit-transform: translate(-50%, 0); -ms-transform: translate(-50%, 0); position: absolute; bottom: -125px; left: 50%; width: 0; height: 0; transform: translate(-50%, 0); border-width: 47px 26.5px 0 26.5px; border-style: solid; border-color: #616161 transparent transparent transparent; content: ""; }
  .warning-ttl { width: 1008px; }
  .warning-block { width: 980px; margin: -22px auto 0; padding: 35px 60px 55px; background: #000; }
  .warning-txt01 { color: #fff; font-size: 20px; letter-spacing: 0.04em; line-height: 2.1; }
  .warning-list { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; width: 860px; margin: 25px 0 0; }
  .warning-item { width: 410px; border-radius: 10px; background: #fff; }
  .warning-case { position: relative; padding: 7px 0 7px 185px; border-radius: 10px 10px 0 0; background-color: #e5cd00; background-image: -webkit-repeating-linear-gradient(135deg, transparent, transparent 10px, #ffe400 10px, #ffe400 20px); background-image: repeating-linear-gradient(-45deg, transparent, transparent 10px, #ffe400 10px, #ffe400 20px); background-size: auto auto; font-size: 24px; font-weight: bold; letter-spacing: 0.04em; }
  .warning-case::before { -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); position: absolute; top: 50%; left: 138px; width: 28px; height: 38px; transform: translate(0, -50%); background: url(../img/warning_icon01_pc.png) no-repeat 50% 0; background-size: cover; content: ""; }
  .warning-txt02 { padding: 22px 0; font-size: 22px; font-weight: bold; letter-spacing: 0.04em; line-height: 1.4; text-align: center; }
  .warning-txt03 { margin: 30px 0 0; color: #fffc00; font-size: 30px; font-weight: bold; letter-spacing: 0.04em; line-height: 1.66; text-align: center; }
  .warning-txt03 .deco { padding: 0 0 4px; border-bottom: 2px solid #fffc00; }
  /*============================================================================== relief ============================================================================= */
  .relief-bg { padding: 100px 0 90px; }
  .relief-ttl { width: 775px; margin: 0 auto; }
  .relief-list { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; margin: 50px 0 0; }
  .relief-item { width: 460px; }
  .relief-item:last-of-type .relief-txt01 { letter-spacing: 0.02em; }
  .relief-txt01 { margin: 30px 0 0; font-size: 18px; letter-spacing: 0.04em; line-height: 1.94; }
  .relief-txt01 .asterisk { position: relative; top: -7px; right: 0; font-size: 10px; }
  .relief-note { margin: 25px 0 0; font-size: 13px; letter-spacing: 0.04em; line-height: 1.84; text-align: right; }
  /*============================================================================== faq ============================================================================= */
  .faq-bg { padding: 90px 0 72px; background: url(../img/check_bg01_pc.jpg) repeat top left; }
  .faq-ttl { width: 543px; margin: 0 auto; }
  .faq-list { -ms-flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; flex-wrap: wrap; justify-content: space-between; margin: 62px 0 0; }
  .faq-item { width: 472px; }
  .faq-item:nth-child(n + 3) { margin: 42px 0 0; }
  .faq-item-question { -webkit-box-align: center; -ms-flex-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; position: relative; align-items: center; height: 106px; padding: 23px 0 23px 78px; border-radius: 10px; background-image: -webkit-gradient(linear, left top, left bottom, from(#135b93), to(#063a63)); background-image: -webkit-linear-gradient(top, #135b93 0%, #063a63 100%); background-image: linear-gradient(to bottom, #135b93 0%, #063a63 100%); color: #fff; font-size: 21px; font-weight: bold; letter-spacing: 0.04em; line-height: 1.4; cursor: pointer; }
  .faq-item-question::before { -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); position: absolute; top: 50%; left: 15px; width: 44px; height: 51px; transform: translateY(-50%); background: url(../img/faq_item01.png) no-repeat 50% 0/cover; content: ""; }
  .faq-item-question::after { -webkit-transform: rotate(135deg); -ms-transform: rotate(135deg); position: absolute; top: 42%; right: 38px; width: 12px; height: 12px; transform: rotate(135deg); border-top: 3px solid #fff; border-right: 3px solid #fff; content: ""; }
  .faq-item-question.open::after { -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); top: 45%; transform: rotate(-45deg); }
  .faq-item-answer { display: none; position: relative; margin: 20px 0 0; padding: 0 15px 0 78px; font-size: 18px; letter-spacing: 0.08em; line-height: 1.6; }
  .faq-item-answer::before { position: absolute; top: 0; left: 15px; width: 44px; height: 51px; background: url(../img/faq_item02.png) no-repeat 50% 0/cover; content: ""; }
  .faq-item-note { display: block; margin: 15px 0 0; font-size: 13px; }
  /*============================================================================== recruit ============================================================================= */
  .recruit-bg { padding-bottom: 60px; background-color: #cae3ff; }
  .recruit-block { -webkit-box-pack: justify; -ms-flex-pack: justify; display: -webkit-box; display: -ms-flexbox; display: flex; justify-content: space-between; width: 840px; margin: 0 auto 40px; }
  .recruit-pic { width: 347px; }
  .recruit-box { width: 430px; }
  .recruit-txt01 { margin-bottom: 40px; color: #000000; font-size: 24px; line-height: 1.7; }
  .recruit-btn { display: block; }
  .recruit-btn:hover { -webkit-transform: scale(0.98, 0.98); -ms-transform: scale(0.98, 0.98); -webkit-transition: 0.3s ease; transform: scale(0.98, 0.98); opacity: 0.8; transition: 0.3s ease; }
  .recruit-mail { display: table; margin: 0 auto; border-bottom: 1px solid #000000; color: #000000; font-size: 18px; font-weight: bold; }
  .recruit-mail:hover { -webkit-transform: scale(0.98, 0.98); -ms-transform: scale(0.98, 0.98); -webkit-transition: 0.3s ease; transform: scale(0.98, 0.98); cursor: pointer; opacity: 0.8; transition: 0.3s ease; }
  /*============================================================================== footer ============================================================================= */
  .footer-bg { padding: 55px 0; background: #000; }
  .footer-txt01 { text-align: center; }
  .footer-txt01 a { -webkit-transition: opacity 0.3s; padding: 0 0 3px; border-bottom: 1px solid #fff; color: #fff; font-size: 18px; font-weight: bold; transition: opacity 0.3s; }
  .footer-txt01 a:hover { opacity: 0.8; }
  .footer-copy { margin: 30px 0 0; color: #fff; font-size: 14px; font-weight: bold; text-align: center; }
  /*============================================================================== banner ============================================================================= */
  .banner { z-index: 400; position: fixed; right: 10px; bottom: 10px; }
  .banner-content { -webkit-transition: 0.3s; width: 295px; transition: 0.3s; }
  .banner-content.open:hover { -webkit-transform: scale(0.98, 0.98); -ms-transform: scale(0.98, 0.98); -webkit-transition: 0.3s ease; transform: scale(0.98, 0.98); opacity: 0.8; transition: 0.3s ease; }
  .banner-btn { -webkit-transition: 0.3s; position: absolute; top: -10px; right: 20px; width: 40px; cursor: pointer; transition: 0.3s; }
  .banner-btn img { -webkit-transition: 0.3s; transition: 0.3s; }
  .banner .num { position: absolute; right: 20px; bottom: 26px; color: #ffe400; font-size: 26px; font-weight: bold; line-height: 1; letter-spacing: .02em; }
  /*============================================================================== voice-modal ============================================================================= */
  .voice-modal { -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); display: none; z-index: 600; position: fixed; top: 50%; left: 50%; width: 450px; transform: translate(-50%, -50%); }
  .voice-modal-btn { position: absolute; top: -40px; right: 10px; width: 60px; cursor: pointer; }
  .modal-mask { display: none; z-index: 500; position: fixed; top: 0; left: 0; width: 100vw; height: 100%; background: #000; opacity: 0.7; } }
