@charset "utf-8";

/* ======================================================
 * layout_pc.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Common
 * - Header
 * - Gnav
 * - Main
 * - Assist
 * - Footer
 * - Other
 * - Clearfix
 * Media Queries
 * Print
====================================================== */

@media print,
screen and (min-width: 768px) {

    /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
    .pc_hid {
        display: none;
    }

    #super-wrapper-outer {
        max-width: 1200px;
        margin: 0 auto;
    }

    #top-ishibashi {
        max-width: 1200px;
        margin: 0 auto;
        flex: 1;
    }

    .ir_column {
        margin: 0 20px;
    }

    .container .section_head {
        margin: 0 20px;
    }

    .container .news_wrap {
        margin: 0 20px;
    }

    .container .articles {
        margin: 0 20px;
    }

    /* bar */
    .bar {
        margin: 0 auto 10px auto;
        width: 257px;
        text-align: center;
        position: relative;
        padding: 20px 0 0 0;
    }

    .bar ol.bar_text {
        position: relative;
        left: 0;
        top: 0;
    }

    .bar ol {
        padding: 0;
        margin: 0;
    }

    .bar_text .current {
        font-weight: bold;
    }

    .bar_text .input {
        position: absolute;
        left: 15px;
    }

    .bar ol li {
        display: inline-block;
        list-style: none;
        padding: 0px;
        margin: 0px;
        color: #666;
    }

    .bar ol li.input:before {
        position: absolute;
        left: 28%;
        top: -20px;
        content: '';
        z-index: 2;
        border-radius: 30px;
        width: 16px;
        height: 16px;
        background: #d3d3d3;
    }

    .bar ol li.input:after {
        position: absolute;
        left: 30%;
        top: -14px;
        content: '';
        z-index: 1;
        width: 110px;
        height: 4px;
        background: #d3d3d3;
    }

    .bar ol li.confirm:before {
        position: absolute;
        left: 47%;
        top: -20px;
        content: '';
        z-index: 2;
        width: 16px;
        height: 16px;
        background: #d3d3d3;
        border-radius: 30px;
    }

    .bar ol li.confirm:after {
        position: absolute;
        left: 47%;
        top: -14px;
        content: '';
        z-index: 1;
        width: 110px;
        height: 4px;
        background: #d3d3d3;
    }

    .bar_text .comple {
        position: absolute;
        left: 212px;
    }

    .bar ol li.comple:before {
        position: absolute;
        left: 21%;
        top: -20px;
        content: '';
        z-index: 2;
        width: 16px;
        height: 16px;
        background: #d3d3d3;
        border-radius: 30px;
    }

    .bar ol li.past:before {
        background: #dae3f3;
    }

    .bar ol li.past_line:after {
        background: #dae3f3;
    }

    .bar ol li.now:before {
        background: #1f3451;
    }

    .mail-submit {
        width: 230px;
        margin: 0 auto;
    }

    .mail-submit ul {
        list-style: none;
        margin: 26px 0 25px 0;
    }

    .mail-submit ul li {
        margin: 0 0 15px 0;
    }

    .mail-submit ul li.primary {
        width: 230px;
        background: #1f3451;
        border-radius: 4px;
        color: #fff;
        text-align: center;
    }

    .mail-submit ul li.primary a {
        display: block;
        padding: 14px 0px;
        color: #1f3451;
        text-decoration: none;
    }

    li.primary a span {
        font-size: 18px;
        font-weight: bold;
        color: #fff;
        vertical-align: middle;
    }

    .mail-submit ul li:hover {
        opacity: 0.8;
    }

    .mail-submit ul li.btnView {
        width: 226px;
        background: #fff;
        border: solid 3px #1f3451;
        border-radius: 4px;
        text-align: center;
    }

    .mail-submit ul li.btnView a {
        display: block;
        padding: 12px 0px;
        color: #1f3451;
        text-decoration: none;
    }

    li.btnView a span {
        font-size: 18px;
        font-weight: bold;
        color: #1f3451;
        vertical-align: middle;
    }

    /** inputarea */
    .form-textarea {
        font-size: 17px;
        line-height: 1.23536;
        font-weight: 400;
        letter-spacing: -.022em;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
        width: 100%;
        height: 56px;
        border-radius: 12px;
        border-width: 1px;
        border-style: solid;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-bottom: .82353rem;
        padding: 18px 16px 0 16px;
        text-align: left;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        height: auto;
        padding: 1.88235rem .17647rem .17647rem .17647rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .form-textarea textarea {
        font-size: 17px;
        line-height: 1.23536;
        font-weight: 400;
        letter-spacing: -.022em;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
        width: 100%;
        height: 120px;
        text-align: left;
        outline: none;
        border: 0;
        padding: 18px 16px 0 16px;
        resize: vertical;
    }

    .form-textarea.focused ~ .form-textbox-label,
    .form-textarea:focus ~ .form-textbox-label,
    .form-textarea:valid[required] ~ .form-textbox-label,
    .form-textarea[placeholder] ~ .form-textbox-label,
    .form-textarea.form-textbox-entered ~ .form-textbox-label,
    .form-textarea-input.focused ~ .form-textbox-label,
    .form-textarea-input:focus ~ .form-textbox-label,
    .form-textarea-input:valid[required] ~ .form-textbox-label,
    .form-textarea-input[placeholder] ~ .form-textbox-label,
    .form-textarea-input.form-textbox-entered ~ .form-textbox-label {
        font-size: 12px;
        line-height: 1.33337;
        font-weight: 400;
        letter-spacing: -.01em;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
        top: .58824rem;
    }

    .form-textbox {
        position: relative;
        width: 80%;
        margin: 0 auto;
    }

    .form-textbox-input {
        font-size: 17px;
        line-height: 1.23536;
        font-weight: 400;
        letter-spacing: -.022em;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
        width: 100%;
        height: 56px;
        border-radius: 12px;
        border-width: 1px;
        border-style: solid;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-bottom: .82353rem;
        padding: 18px 16px 0 16px;
        text-align: left;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }

    .form-textbox .form-textbox-label {
        color: #86868b;
    }

    .form-textbox-label {
        position: absolute;
        pointer-events: none;
        -webkit-transition-timing-function: ease-in;
        transition-timing-function: ease-in;
        -webkit-transition-duration: .125s;
        transition-duration: .125s;
        top: 17px;
        white-space: nowrap;
        overflow: hidden;
        max-width: calc(100% - 32px);
        left: 17px;
        font-size: 17px;
        line-height: 1.23536;
        font-weight: 400;
        letter-spacing: -.022em;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
    }

    .form-message-wrapper {
        font-size: 12px;
        line-height: 1.33337;
        font-weight: 400;
        letter-spacing: -.01em;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
        color: #e30000;
        position: relative;
        margin-top: .47059rem;
        margin-bottom: .70588rem;
        display: none;
    }

    .form-message-wrapper::before {
        padding-right: .17647rem;
        top: .17647rem;
    }

    .form-message-wrapper::before {
        padding-right: .3em;
        display: inline-block;
        top: 0;
    }

    .form-message-wrapper::before,
    .form-message-wrapper::after {
        text-decoration: none;
    }

    .form-message-wrapper::before,
    .form-message-wrapper::after {
        font-family: "SF Pro Icons";
        color: inherit;
        display: inline-block;
        font-style: normal;
        font-weight: inherit;
        font-size: inherit;
        line-height: 1;
        text-decoration: underline;
        position: relative;
        z-index: 1;
        alt: '';
    }

    .form-textbox.is-error .form-textarea:not(.focused),
    .form-textbox.is-error .form-textbox-input:not(:focus) {
        border-color: #e30000;
        background-color: #fff2f4;
    }

    .form-textbox.is-error .form-textarea:not(.focused) .form-textarea-input {

        border-color: #e30000;
        background-color: #fff2f4;
    }

    .is-error .form-textbox-input {
        margin-bottom: 0;
    }

    .form-textbox .form-textarea,
    .form-textbox .form-textbox-input {
        color: #1d1d1f;
        border-color: #d2d2d7;
        background-color: rgba(255, 255, 255, 0.8);
    }

    .form-textbox.is-error .form-textbox-label {
        color: #e30000;
    }

    .is-error .form-message-wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .visuallyhidden {
        position: absolute;
        clip: rect(1px, 1px, 1px, 1px);
        -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
        clip-path: inset(0px 0px 99.9% 99.9%);
        overflow: hidden;
        height: 1px;
        width: 1px;
        padding: 0;
        border: 0;
    }

    .sosumi .typography-caption {
        width: 80%;
        margin: 0 auto;
        color: #86868b;
    }

    .form-textbox .form-textarea:focus,
    .form-textbox .form-textarea.focused,
    .form-textbox .form-textbox-input:focus,
    .form-textbox .form-textbox-input.focused {
        border-color: #0071e3;
    }

    .form-textbox-input.focused,
    .form-textbox-input:focus {
        -webkit-box-shadow: 0 0 0 4px rgb(0 125 250 / 60%);
        box-shadow: 0 0 0 4px rgb(0 125 250 / 60%);
        outline: none;
    }

    .form-textbox-input.focused ~ .form-textbox-label,
    .form-textbox-input:focus ~ .form-textbox-label,
    .form-textbox-input:valid[required] ~ .form-textbox-label,
    .form-textbox-input[placeholder] ~ .form-textbox-label,
    .form-textbox-input.form-textbox-entered ~ .form-textbox-label {
        font-size: 12px;
        line-height: 1.33337;
        font-weight: 400;
        letter-spacing: -.01em;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
        top: .58824rem;
    }

    .form-textarea.focused {
        border-color: #0071e3;
        -webkit-box-shadow: 0 0 0 4px rgb(0 125 250 / 60%);
        box-shadow: 0 0 0 4px rgb(0 125 250 / 60%);
    }

    .form-textarea-input.form-textbox-entered:disabled {
        background-color: white;
    }

    .form-dropdown {
        width: 80%;
        position: relative;
        margin: 0 auto;
    }

    .form-dropdown-select:focus {
        -webkit-box-shadow: 0 0 0 4px rgb(0 125 250 / 60%);
    box-shadow: 0 0 0 4px rgb(0 125 250 / 60%);
    outline: none;
    }

    .form-dropdown.is-error .form-dropdown-select {
        color: red;
        border-color: #e30000;
        background-color: #fff2f4;
    }

    .form-dropdown.is-error .form-dropdown-label {
        color: red;
    }

    .form-dropdown .form-dropdown-select {
        color: #1d1d1f;
        border-color: #d2d2d7;
        background-color: rgba(255, 255, 255, 0.8);
        letter-spacing: 0em;
    }

    .form-dropdown-select {
        font-size: 17px;
        line-height: 1.23536;
        font-weight: 400;
        letter-spacing: -.022em;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
        width: 100%;
        height: 56px;
        border-radius: 12px;
        border-width: 1px;
        border-style: solid;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-bottom: .82353rem;
        padding: 1.05882rem 2.35294rem 0 .94118rem;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }

    .form-dropdown .form-dropdown-select option:not(:disabled) {
        color: #1d1d1f;
    }

    .form-dropdown .form-dropdown-chevron {
        color: #86868b;
    }

    .form-dropdown-chevron {
        font-size: 20px;
        line-height: 1.4;
        font-weight: 400;
        letter-spacing: .006em;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
        position: absolute;
        pointer-events: none;
        right: 2rem;
        top: 1.3rem;
    }

    .form-dropdown-chevron::after {
        content: "";
        background-image: url(/assets_cms/img/icon-arrow-down.png);
        width: 20px;
        height: 13px;
    }

    .form-dropdown-chevron::before,
    .form-dropdown-chevron::after {
        text-decoration: none;
    }

    .form-dropdown-chevron::before,
    .form-dropdown-chevron::after {
        font-family: "SF Pro Icons";
        color: inherit;
        display: inline-block;
        font-style: normal;
        font-weight: inherit;
        font-size: inherit;
        line-height: 1;
        text-decoration: underline;
        position: relative;
        z-index: 1;
        alt: '';
    }

    .form-dropdown .form-dropdown-label {
        color: #6e6e73;
    }

    .form-dropdown-label {
        position: absolute;
        pointer-events: none;
        -webkit-transition-timing-function: ease-in;
        transition-timing-function: ease-in;
        -webkit-transition-duration: .125s;
        transition-duration: .125s;
        top: .58824rem;
        left: 1rem;
        font-size: 12px;
        line-height: 1.33337;
        font-weight: 400;
        letter-spacing: -.01em;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
    }

    .result-message {
        margin: 0 auto;
        width: 650px;
    }

    .menu-box {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        max-width: 1200px;
    }

    .menu-box a:hover {
        opacity: 0.8;
    }

    .menu-box .menu-box-item {
        width: calc(50% - 0.8em);
        margin-bottom: 20px;
        background: transparent;
        border: 1px;
        border-style: solid;
        border-color: #1D5D9C;
        border-radius: 10px;
        overflow: hidden;
    }

    .menu-box .menu-box-item .menu-box-item-inner {
        padding: 30px;
        display: table;
        width: 100%;
        text-decoration: none;
        position: relative;
        box-sizing: border-box;
        z-index: 1;
        height: auto !important;
        background-color: #fff;
        border-radius: 10px;

    }

    .menu-box-icon {
        display: table-cell;
        vertical-align: middle;
        width: 70px;
        transition: 0.3s;
    }

    .menu-box-text {
        display: table-cell;
        vertical-align: top;
        padding: 0 30px;
        box-sizing: border-box;
        vertical-align: middle !important;
    }

    .menu-box-text p {
        font-size: 24px;
        line-height: 1.41;
        color: #000;
        font-weight: bold;
        box-sizing: border-box;
    }

    .menu-box-item-inner:hover:after {
        animation: arrowR 0.4s 2;
    }

    .menu-box-item-inner:after {
        border-color: #1D5D9C;
        content: "";
        display: block;
        border-top: solid 2px #1D5D9C;
        border-right: solid 2px #1D5D9C;
        vertical-align: middle;
        width: 8px;
        height: 8px;
        position: absolute;
        top: 50%;
        right: 30px;
        margin-top: -4px;
        transform: rotate(45deg);
        z-index: 0;
    }


    .menu-ul {
        margin-right: auto;
        margin-left: auto;
        margin-bottom: -24px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .menu-li:nth-child(odd) {
        margin-left: 0;
    }

    .menu-li {
        margin-left: 24px;
        margin-bottom: 24px;
        background-color: #DBE7F3;
        width: calc(50% - 12px);
        border: solid 1px #1D5D9C;
    }

    .menu-section {
        padding: 25px 40px 40px;
        background-color: #DBE7F3;
        color: #000;
    }

    .menu-section-title {
        margin-bottom: 12px;
        padding-top: 7px;
        padding-bottom: 5px;
        border-bottom: solid 1px #1D5D9C;
        height: 3.27778em;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        position: relative;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        font-weight: bold;
        line-height: 1.33333;
        font-size: 112.5%;
        padding-left: 49px;
        position: relative;
    }

    .menu-section-title::before {
        content: '';
        margin: auto;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        background-repeat: no-repeat;
        background-position: 0 50%;
        background-size: auto 100%;
        width: 36px;
        height: 36px;
    }

    .kensetsu-icon::before {
        background-image: url(/assets_cms/img/service_kensetsu.png);
    }

    .realestate-icon::before {
        background-image: url(/assets_cms/img/service_realestate.png);
    }

    .recruit-icon::before {
        background-image: url(/assets_cms/img/recruit_info.png);
    }

    .recruit-apply-icon::before {
        background-image: url(/assets_cms/img/recruit_apply.png);
    }

    .menu-message {
        line-height: 1.73333;
        font-size: 93.75%;
        height: 75px;
    }

    .menu-btn {
        margin-top: 37px;
        margin-right: auto;
        margin-left: auto;
        max-width: 355px;
    }

    .menu-btn-link {
        color: #fff !important;
        text-decoration: none !important;
        padding-right: 36px;
        padding-left: 20px;
        border-radius: 6px;
        height: 3.33333em;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        position: relative;
        overflow: hidden;
        font-weight: bold;
        line-height: 1.38889;
        text-align: center;
        font-size: 112.5%;
        background-color: #1f3451;
    }

    .menu-btn-link:hover {
        opacity: 0.8;
    }

    .menu-btn-link::after {
        content: '';
        margin: auto;
        width: 9px;
        height: 12px;
        display: block;
        position: absolute;
        top: 0;
        right: 20px;
        bottom: 0;
        background-image: url(/assets_cms/img/icon-arrow-02.svg);
        background-repeat: no-repeat;
        background-position: 100% 50%;
        background-size: auto 100%;
    }



    /* ------------------------------------------------------
   * Header
  ------------------------------------------------------ */
    .Header {
        height: 100px;
    }

    .HeaderBody {
        width: 100%;
        position: fixed;
        background: #fff;
        box-shadow: 0px 1px 3px 2px rgba(0, 0, 0, 0.2);
        z-index: 999;
    }

    .HeaderBody .header-block {
        display: -webkit-flex;
        display: flex;
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 10px;
    }

    .Header.is-tablet .HeaderBody {
        width: 1240px;
        max-width: 1240px;
    }

    .HeaderBody .header-identity {
        width: 160px;
        -webkit-flex: 0 0 320px;
        flex: 0 0 320px;
        margin-right: 16px;
        -webkit-align-self: center;
        align-self: center;
    }

    .Header.is-simple .HeaderBody {
        position: static;
        max-width: inherit;
    }

    .Header.is-simple .HeaderBody .header-block {
        height: 100px;
    }

    /* ------------------------------------------------------
   * Layout
  ------------------------------------------------------ */
    .top-ftr {
        margin: 0;
        display: flex;
        flex-flow: column;
        min-height: 100vh;
    }

    #top-page .container {
        max-width: 100%;
        padding-bottom: 0;
    }

    #top-page .top-inline {
        margin: 0 auto;
    }

    #top-sp-nav {
        display: none !important;
    }

    /* ------------------------------------------------------
   * Gnav
  ------------------------------------------------------ */
    .Gnav {
        margin-left: auto;
    }

    .Gnav .GnavBody {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: column;
        flex-flow: column;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        height: 100px;
    }

    .Gnav .gnavUtil,
    .Gnav .gnavList,
    .Gnav .gnavList > li.has-child,
    .Gnav .gnavList_child {
        display: -webkit-flex;
        display: flex;
    }

    .Gnav .gnavUtil {
        -webkit-align-self: flex-end;
        align-self: flex-end;
        #border-left: 1px solid #ddd;
        #border-bottom: 1px solid #ddd;
        margin-top: 1px;
    }

    .Gnav .gnavUtil > li {
        height: 38px;
        margin-left: 10px;
        #border-right: 1px solid #ddd;
    }

    .Gnav .gnavUtil > li > a {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        height: 100%;
        color: #333;
        text-decoration: none;
    }

    .Gnav .gnavUtil > li > a:hover {
        background: #f4f4f4;
    }

    .Gnav .gnavUtil > .contact > a,
    .Gnav .gnavUtil > .sitemap > a {
        padding: 3px 18px;
        font-size: 13px;
    }

    .Gnav .gnavUtil > .language > a {
        padding: 3px 15px;
        font-size: 12px;
    }

    .Gnav .gnavUtil > .search > a {
        position: relative;
        width: 43px;
        text-indent: -9999px;
        outline: none;
    }

    .Gnav .gnavUtil > .search > a::after {
        position: absolute;
        display: block;
        width: 19px;
        height: 19px;
        top: 50%;
        left: 50%;
        margin-top: -9px;
        margin-left: -9px;
        background: url(/shared/img/com_menu_sprite01.png) 0 0 no-repeat;
        content: "";
    }

    .Gnav .gnavUtil > .sp-menu {
        display: none;
    }

    .Gnav .gnavList,
    .Gnav .gnavList > li.has-child,
    .Gnav .gnavList_child {
        -webkit-align-items: flex-end;
        align-items: flex-end;
    }

    .Gnav .gnavList .sp-menu_bottom {
        display: none;
    }

    .Gnav .gnavList > li.list_primary {
        margin-left: 34px;
    }

    .Gnav .gnavList > li.has-child > a {
        margin-right: 34px;
    }

    .Gnav .gnavList_child li.list_secondary {
        margin-right: 28px;
    }

    .Gnav .gnavList > li.list_primary:first-child {
        margin-left: 0;
    }

    .Gnav .gnavList_child > li.list_secondary:last-child {
        margin-right: 0;
    }

    .Gnav .gnavList > li > a,
    .Gnav .gnavList_child > li > a {
        display: block;
        padding-bottom: 14px;
        color: #333;
        text-decoration: none;
        outline: none;
    }

    .Gnav .gnavList_child > li > a {
        padding-bottom: 12px;
    }

    .Gnav .gnavList > li.list_primary > a {
        border-bottom: 4px solid transparent;
        font-size: 18px;
        font-weight: bold;
        line-height: 1.0;
    }

    .Gnav .gnavList > li.list_primary > a:hover,
    .Gnav .gnavList > li.list_primary > a.is-open,
    .Gnav .gnavList > li.list_primary.is-current > a {
        color: #1D5D9C;
        border-color: #1D5D9C;
    }

    .Gnav .gnavList_child li.list_secondary > a {
        position: relative;
        padding-left: 26px;
        border-bottom: 4px solid transparent;
        font-size: 14px;
        outline: none;
    }

    .Gnav .gnavList_child li.list_secondary > a:hover,
    .Gnav .gnavList_child li.list_secondary > a.is-open,
    .Gnav .gnavList_child li.list_secondary.is-current > a {
        color: #1D5D9C;
        border-color: #1D5D9C;
    }

    .Gnav .gnavList_child li.list_secondary > a::before {
        display: block;
        position: absolute;
        background-image: url(/shared/img/com_menu_sprite01.png);
        background-repeat: no-repeat;
        top: 0;
        left: 0;
        content: "";
    }

    .Gnav .gnavList_child li.list_secondary.i-about > a::before {
        width: 17px;
        height: 14px;
        margin-top: 2px;
        background-position: -50px 0;
    }

    .Gnav .gnavList_child li.list_secondary.i-about > a:hover::before,
    .Gnav .gnavList_child li.list_secondary.i-about.is-current > a::before,
    .Gnav .gnavList_child li.list_secondary.i-about > a.is-open::before {
        background-position: -250px 0;
    }

    .Gnav .gnavList_child li.list_secondary.i-ir > a::before {
        width: 20px;
        height: 15px;
        margin-top: 2px;
        background-position: -100px 0;
    }

    .Gnav .gnavList_child li.list_secondary.i-ir > a:hover::before,
    .Gnav .gnavList_child li.list_secondary.i-ir.is-current > a::before,
    .Gnav .gnavList_child li.list_secondary.i-ir > a.is-open::before {
        background-position: -300px 0;
    }

    .Gnav .gnavList_child li.list_secondary.i-csr > a::before {
        width: 24px;
        height: 17px;
        margin-top: 2px;
        background-position: -150px 0;
    }

    .Gnav .gnavList_child li.list_secondary.i-csr > a:hover::before,
    .Gnav .gnavList_child li.list_secondary.i-csr.is-current > a::before,
    .Gnav .gnavList_child li.list_secondary.i-csr > a.is-open::before {
        background-position: -350px 0;
    }

    .Gnav .gnavList_child li.list_secondary.i-recruite > a::before {
        width: 21px;
        height: 14px;
        margin-top: 3px;
        background-position: -200px 0;
    }

    .Gnav .gnavList_child li.list_secondary.i-recruite > a:hover::before,
    .Gnav .gnavList_child li.list_secondary.i-recruite.is-current > a::before,
    .Gnav .gnavList_child li.list_secondary.i-recruite > a.is-open::before {
        background-position: -400px 0;
    }

    .Gnav .mega-menu {
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        height: calc(100vh - 100px);
        background: rgba(0, 0, 0, 0.5);
    }

    .Gnav .mega-block {
        max-height: 100%;
        padding: 20px 0;
        background: #eee;
        overflow: scroll;
    }

    .Gnav .mega-block .block_inner {
        width: 1240px;
        margin: 0 auto;
        padding: 0 20px;
    }

    .Gnav .mega-block .block_headline {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        margin-bottom: 18px;
    }

    .Gnav .category-ss .mega-block .block_headline {
        margin-bottom: 0;
    }

    .Gnav .mega-menu .mega_title {
        display: flex;
    }

    .Gnav .mega-menu .mega_title-top {
        margin-right: 20px;
        font-size: 23px;
        line-height: 1.76;
    }

    .Gnav .mega-menu .mega_link-top a {
        position: relative;
        display: inline-block;
        padding: 10px 20px 10px 40px;
        font-size: 16px;
        color: #333;
        text-decoration: none;
        background-color: #fff;
        border: 1px solid #ddd;
        line-height: 1.1;
    }

    .Gnav .mega-menu .mega_link-top a > span {
        position: relative;
        display: inline-block;
    }

    .Gnav .mega-menu .mega_link-top a > span::before {
        position: absolute;
        display: block;
        top: .4em;
        left: -20px;
        width: 6px;
        height: 6px;
        border-top: 1px solid #666;
        border-right: 1px solid #666;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }

    .Gnav .mega-menu .mega_link-top a:hover span {
        text-decoration: underline;

    }

    .Gnav .mega-menu .mega_close {
        border: 1px solid #ddd;
    }

    .Gnav .mega-menu .mega_close a {
        display: block;
        padding: 14px 18px;
        background: #fff;
        color: #333;
        text-decoration: none;
    }

    .Gnav .mega-menu .mega_close a span {
        position: relative;
        display: inline-block;
        padding-left: 22px;
    }

    .Gnav .mega-menu .mega_close a:hover span {
        text-decoration: underline;
    }

    .Gnav .mega-menu .mega_close a span::before,
    .Gnav .mega-menu .mega_close a span::after {
        position: absolute;
        display: block;
        top: 50%;
        left: 0;
        margin-top: -1px;
        width: 15px;
        height: 2px;
        background: #666;
        content: "";
    }

    .Gnav .mega-menu .mega_close a span::before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .Gnav .mega-menu .mega_close a span::after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .Gnav .mega-block .block_column {
        margin-top: 10px;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }

    .Gnav .mega-block .column_item {
        -webkit-flex-grow: 0;
        flex-grow: 0;
        -webkit-flex-shrink: 0;
        flex-shrink: 0;
    }

    .Gnav .mega-block .column_item[data-size-pc="1/4"] {
        -webkit-flex-basis: 273px;
        flex-basis: 273px;
    }

    .Gnav .mega-block .column_item[data-size-pc="3/4"] {
        -webkit-flex-basis: 891px;
        flex-basis: 891px;
    }

    .Gnav .mega-block .column_item[data-size-pc="1/3"] {
        -webkit-flex-basis: 382px;
        flex-basis: 382px;
    }

    .Gnav .mega-block .column_item[data-size-pc="2/3"] {
        -webkit-flex-basis: 788px;
        flex-basis: 788px;
    }

    .Gnav .mega-menu {
        display: none;
    }

    .Gnav .mega-menu .block_ss_search {
        margin-top: 20px;
    }

    .Gnav .mega-menu .hd-ss-search {
        position: relative;
        display: -webkit-flex;
        display: flex;
        border: 1px solid #ccc;
    }

    .Gnav .mega-menu .hd-ss-search .hd-ss-search_input {
        width: 751px;
        height: 45px;
        margin: 0;
        padding: 0 30px;
        background: #fff;
        border: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-appearance: none;
        appearance: none;
        -webkit-border-radius: 0;
        border-radius: 0;
        font-size: 18px;
        line-height: 43px;
    }

    .Gnav .mega-menu .hd-ss-search .hd-ss-search_submit {
        width: 138px;
        height: 45px;
        margin: 0;
        padding: 0 30px 0 53px;
        border: none;
        background: #00307c;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-border-radius: 0;
        border-radius: 0;
        -webkit-appearance: none;
        appearance: none;
        font-size: 20px;
        color: #fff;
        line-height: 45px;
        -webkit-transition: background .3s;
        transition: background .3s;
        cursor: pointer;
    }

    .Gnav .mega-menu .hd-ss-search .hd-ss-search_icon {
        position: absolute;
        display: block;
        width: 23px;
        height: 23px;
        top: 50%;
        right: 84px;
        margin-top: -14px;
        background: url(/shared/img/com_menu_sprite01.png) -450px 0 no-repeat;
        text-indent: -9999px;
        cursor: pointer;
    }

    .Gnav .mega-menu .hd-ss-search .hd-ss-search_submit:hover,
    .Gnav .mega-menu .hd-ss-search .hd-ss-search_icon:hover + .hd-ss-search_submit {
        background: #1D5D9C;
    }

    .Gnav .mega-menu .mega_link-list > li + li {
        margin-top: .5em;
    }

    .Gnav .mega-menu .mega_link-list > li > a {
        display: inline-block;
        position: relative;
        padding-left: 15px;
        color: #333;
        text-decoration: none;
    }

    .Gnav .mega-menu .mega_link-list > li > a:hover {
        text-decoration: underline;
    }

    .Gnav .mega-menu .mega_link-list > li > a::before {
        position: absolute;
        display: block;
        top: .5em;
        left: 0;
        width: 6px;
        height: 6px;
        border-top: 1px solid #666;
        border-right: 1px solid #666;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }

    .Gnav .mega-menu .mega_tab-list {
        position: relative;
        background: #eee;
    }

    .Gnav .mega-menu .mega_tab-list > li > a {
        display: block;
        padding: 12px 5px;
        background: #00307c;
        font-size: 18px;
        text-align: center;
        outline: none;
        color: #fff;
    }

    .Gnav .mega-menu .mega_tab-list[data-tabs="2"] > li > a {
        width: 50%;
    }

    .Gnav .mega-menu .mega_tab-list[data-tabs="3"] > li > a {
        width: calc(100% / 3);
    }

    .Gnav .mega-menu .mega_tab-list > li.is-current > a {
        color: #333;
        background: #fff;
        cursor: default;
    }

    .Gnav .mega-menu .mega_tab-list > li:nth-child(2) > a,
    .Gnav .mega-menu .mega_tab-list > li:nth-child(3) > a {
        position: absolute;
        top: 0;
        border-left: 1px solid #eee;
    }

    .Gnav .mega-menu .mega_tab-list[data-tabs="2"] > li:nth-child(2) > a {
        right: 0;
    }

    .Gnav .mega-menu .mega_tab-list[data-tabs="3"] > li:nth-child(2) > a {
        left: 33.3%;
    }

    .Gnav .mega-menu .mega_tab-list[data-tabs="3"] > li:nth-child(3) > a {
        right: 0;
    }

    .Gnav .mega-menu .mega_tab-list > li:not(.is-current) > a:hover {
        background: #1D5D9C;
    }

    .Gnav .mega-menu .mega_tab-list > li > a > span {
        position: relative;
        display: inline-block;
        padding: 0 15px;
    }

    .Gnav .mega-menu .mega_tab-list > li > a > span::before {
        position: absolute;
        display: block;
        top: .5em;
        left: 0;
        width: 8px;
        height: 8px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }

    .Gnav .mega-menu .mega_link-panel {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
        background: #fff;
    }

    .Gnav .mega-menu .mega_link-panel > li {
        border-top: 1px solid #eee;
        border-left: 1px solid #eee;
    }

    .Gnav .mega-menu[data-megamenu="01"] .mega_link-panel > li {
        border: none;
    }

    .Gnav .mega-menu .mega_tab-list .mega_link-panel {
        display: none;
    }

    .Gnav .mega-menu .mega_tab-list .is-current .mega_link-panel {
        position: relative;
        padding: 10px 10px 40px;
        display: -webkit-flex;
        display: flex;
    }

    .Gnav .mega-menu .mega_link-panel[data-grid-pc="3"] > li,
    .Gnav .mega-menu .mega_link-panel > li[data-size-pc="1/3"] {
        width: 33.3%;
    }

    .Gnav .mega-menu .mega_link-panel[data-grid-pc="4"] > li,
    .Gnav .mega-menu .mega_link-panel > li[data-size-pc="1/4"] {
        width: 25%;
    }

    .Gnav .mega-menu .mega_link-panel[data-grid-pc="5"] > li,
    .Gnav .mega-menu .mega_link-panel > li[data-size-pc="1/5"] {
        width: 20%;
    }

    .Gnav .mega-menu .mega_link-panel[data-grid-pc="4"] > li:nth-child(-n+4),
    .Gnav .mega-menu .mega_link-panel[data-grid-pc="5"] > li:nth-child(-n+5) {
        border-top: none;
    }

    .Gnav .mega-menu .mega_link-panel[data-grid-pc="4"] > li:nth-child(4n+1),
    .Gnav .mega-menu .mega_link-panel[data-grid-pc="5"] > li:nth-child(5n+1) {
        border-left: none;
    }

    .Gnav .mega-menu .mega_link-panel > li > a {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: column;
        flex-flow: column;
        -webkit-justify-content: flex-end;
        justify-content: flex-end;
        -webkit-align-items: center;
        align-items: center;
        width: 100%;
        height: 110px;
        padding-left: 10px;
        padding-right: 10px;
        text-decoration: none;
        color: #333;
    }

    .Gnav .mega-menu[data-megamenu="01"] .mega_link-panel > li > a {
        -webkit-flex-flow: row;
        flex-flow: row;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        height: 60px;
        color: #34649f;
    }

    .Gnav .mega-menu .mega_link-panel.is-size-M > li > a,
    .Gnav .mega-menu .mega_link-panel > li.is-size-M > a {
        height: 145px;
        padding-bottom: 36px;
    }

    .Gnav .mega-menu .mega_link-panel > li > a:hover {
        color: #1D5D9C;
    }

    .Gnav .mega-menu .mega_link-panel .link_label {

        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-flex-basis: 44px;
        flex-basis: 44px;
        font-size: 16px;
        text-align: center;
        line-height: 1.375;
        white-space: nowrap;
    }

    .Gnav .mega-menu[data-megamenu="01"] .mega_link-panel .link_label {
        margin-left: 18px;
        -webkit-flex-basis: 140px;
        flex-basis: 140px;
        font-size: 14px;
        line-height: 1.3;
        white-space: inherit;
        text-align: left;
    }

    .Gnav .mega-menu .mega_link-panel.is-size-M .link_label,
    .Gnav .mega-menu .mega_link-panel > li.is-size-M .link_label {
        -webkit-flex-basis: auto;
        flex-basis: auto;
    }

    .Gnav .mega-menu .mega_link-panel [class*="i-mega"] {
        margin-bottom: 6px;
        background-image: url(/shared/img/com_menu_sprite01.png);
        background-repeat: no-repeat;
        -webkit-transition: opacity .3s;
        transition: opacity .3s;
    }

    .Gnav .mega-menu[data-megamenu="01"] .mega_link-panel [class*="i-mega"] {
        width: 40px;
        background-image: url(/shared/img/com_menu_ic01.png);
        background-repeat: no-repeat;
    }

    .Gnav .mega-menu .mega_link-panel > li > a:hover [class*="i-mega"] {
        opacity: .5;
    }

    .Gnav .mega-menu[data-megamenu="01"] .mega_link-panel > li > a:hover [class*="i-mega"] {
        background-image: url(/shared/img/com_menu_ic02.png);
        opacity: 1;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega01 {
        height: 28px;
        background-position: -138px -3px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega02 {
        height: 24px;
        background-position: -70px -5px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega03 {
        height: 29px;
        background-position: 0 -59px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega04 {
        height: 32px;
        background-position: 0 0;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega05 {
        height: 28px;
        background-position: -204px -3px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega06 {
        height: 32px;
        background-position: 0 -119px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega07 {
        height: 30px;
        background-position: -70px -58px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega08 {
        height: 29px;
        background-position: -204px -58px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega09 {
        height: 27px;
        background-position: -70px -123px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega10 {
        height: 30px;
        background-position: -138px -58px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega11 {
        height: 31px;
        background-position: -138px -120px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega12 {
        height: 25px;
        background-position: -204px -123px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega14 {
        height: 21px;
        background-position: 0 -187px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega15 {
        height: 26px;
        background-position: 0 -242px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega16 {
        height: 27px;
        background-position: -70px -242px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega17 {
        height: 26px;
        background-position: -138px -242px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega18 {
        height: 32px;
        background-position: -204px -239px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega19 {
        height: 29px;
        background-position: 0 -304px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega20 {
        height: 27px;
        background-position: -70px -307px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega21 {
        height: 32px;
        background-position: -138px -304px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega22 {
        height: 16px;
        background-position: -204px -312px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega23 {
        width: 45px;
        height: 49px;
        background-position: -150px -200px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega24 {
        width: 52px;
        height: 46px;
        background-position: -200px -200px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega25 {
        width: 48px;
        height: 47px;
        background-position: -350px -200px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega26 {
        width: 32px;
        height: 47px;
        background-position: -400px -200px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega27 {
        width: 52px;
        height: 46px;
        background-position: 0 -250px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega28 {
        width: 41px;
        height: 41px;
        background-position: -100px -250px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega29 {
        width: 39px;
        height: 48px;
        background-position: -150px -250px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega30 {
        width: 41px;
        height: 41px;
        background-position: -200px -250px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega31 {
        width: 48px;
        height: 43px;
        background-position: -250px -250px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega32 {
        width: 54px;
        height: 42px;
        background-position: -300px -250px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega33 {
        width: 38px;
        height: 50px;
        background-position: -400px -250px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega34 {
        width: 56px;
        height: 48px;
        background-position: 0 -300px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega35 {
        width: 39px;
        height: 49px;
        background-position: -100px -300px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega36 {
        width: 59px;
        height: 53px;
        background-position: -150px -300px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega37 {
        width: 63px;
        height: 48px;
        background-position: -250px -300px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega38 {
        width: 50px;
        height: 51px;
        background-position: -350px -300px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega39 {
        width: 73px;
        height: 42px;
        background-position: 0 -350px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega40 {
        width: 60px;
        height: 43px;
        background-position: -100px -350px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega41 {
        width: 49px;
        height: 53px;
        background-position: -250px -350px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega42 {
        width: 59px;
        height: 40px;
        background-position: 0 -400px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega43 {
        width: 38px;
        height: 46px;
        background-position: -100px -400px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega44 {
        width: 38px;
        height: 48px;
        background-position: -150px -400px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega45 {
        width: 51px;
        height: 43px;
        background-position: -300px -400px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega46 {
        width: 72px;
        height: 47px;
        background-position: -400px -400px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega47 {
        width: 46px;
        height: 38px;
        background-position: 0 -450px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega48 {
        width: 66px;
        height: 44px;
        background-position: -50px -450px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega49 {
        width: 58px;
        height: 42px;
        background-position: -150px -450px;
    }

    .Gnav .mega-menu .mega_link-panel .i-mega37 + .link_label,
    .Gnav .mega-menu .mega_link-panel .i-mega41 + .link_label,
    .Gnav .mega-menu .mega_link-panel .i-mega48 + .link_label {
        margin-bottom: -1em;
    }

    .Gnav .mega-menu .mega_link-panel > .mega_link-panel_top {
        position: absolute;
        right: 30px;
        bottom: 20px;
        width: 100% !important;
        text-align: right;
    }

    .Gnav .mega-menu .mega_link-panel > .mega_link-panel_top > a {
        display: inline-block;
        height: auto !important;
        padding: 0;
        color: #333 !important;
    }

    .Gnav .mega-menu .mega_link-panel > .mega_link-panel_top > a > span {
        padding-left: 15px;
        position: relative;
    }

    .Gnav .mega-menu .mega_link-panel > .mega_link-panel_top > a > span::before {
        position: absolute;
        display: block;
        top: .4em;
        left: 0;
        width: 6px;
        height: 6px;
        border-top: 1px solid #666;
        border-right: 1px solid #666;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }

    .Gnav .mega-menu .mega_link-panel > .mega_link-panel_top > a:hover {
        background: none;
        color: #1D5D9C !important;
        text-decoration: underline;
    }

    .Gnav .mega-menu .mega_link-panel > .mega_link-panel_top > a:hover > span::before {
        border-color: #1D5D9C;
    }

    .Gnav .mega-menu .mega_more-box {
        display: -webkit-flex;
        display: flex;
        margin-top: 24px;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
    }

    .Gnav .mega-menu .mega_more_lead {
        font-size: 16px;
        font-weight: bold;
    }

    .Gnav .mega-menu .mega_more_lead + .mega_more_btn {
        margin-left: 20px;
    }

    .Gnav .mega-menu .mega_more_btn a {
        position: relative;
        display: -webkit-flex;
        display: flex;
        height: 50px;
        min-width: 273px;
        padding: 12px 14px;
        border: 1px solid #ddd;
        background: #fff;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        text-decoration: none;
        color: #333;
        -webkit-transition: background .3s, color .3s, border .3s;
        -o-transition: background .3s, color .3s, border .3s;
        transition: background .3s, color .3s, border .3s;
    }

    .Gnav .mega-menu .mega_more_btn a:hover {
        background: #eff8f6;
        border-color: #d6efe9;
        color: #1D5D9C;
    }

    .Gnav .mega-menu .mega_more_btn a::after {
        position: absolute;
        display: block;
        width: 41px;
        height: 34px;
        left: 14px;
        top: 50%;
        margin-top: -17px;
        background: url(/shared/img/com_menu_sprite01.png) -250px -450px no-repeat;
        content: "";
    }

    .Gnav .mega-menu .mega_more_btn a > span {
        position: relative;
        display: inline-block;
        padding-left: 18px;
    }

    .Gnav .mega-menu .mega_more_btn a > span::after {
        position: absolute;
        display: block;
        top: .5em;
        left: 0;
        width: 6px;
        height: 6px;
        border-top: 1px solid #666;
        border-right: 1px solid #666;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
        -webkit-transition: border .3s;
        -o-transition: border .3s;
        transition: border .3s;
    }

    .Gnav .mega-menu .mega_more_btn a:hover > span::after {
        border-color: #1D5D9C;
    }

    .Gnav .mega-menu .mega_banner-list > li + li {
        margin-top: 30px;
    }

    .Gnav .mega-menu .mega_banner-list > li {
        background: #fff;
    }

    .Gnav .mega-menu .mega_banner-list > li > a {
        position: relative;
        display: block;
        color: #333;
    }

    .Gnav .mega-menu .mega_banner-list > li > a:hover {
        opacity: .7;
    }

    .Gnav .mega-menu .mega_banner-list .banner_label {
        position: absolute;
        top: 0;
        left: 0;
        -webkit-display: flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        width: 100%;
        height: 100%;
        padding-left: 30px;
    }

    .Gnav .mega-menu .mega_banner-list .banner_label > span {
        position: relative;
        display: inline-block;
        padding-left: 20px;
        font-size: 24px;
        font-weight: bold;
    }

    .Gnav .mega-menu .mega_banner-list .banner_label > span::before {
        position: absolute;
        display: block;
        top: .4em;
        left: 0;
        width: 12px;
        height: 12px;
        border-top: 2px solid #666;
        border-right: 2px solid #666;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }

    .Gnav .gnavSearch {
        display: none;
        position: fixed;
        width: 100vw;
        height: 100vh;
        top: 0;
        left: 0;
        background: rgba(0, 0, 0, 0.5);
    }

    .Gnav .gnavSearch .search_block {
        position: relative;
        width: 1000px;
        min-height: 160px;
        top: 50%;
        margin: -80px auto 0;
    }

    .Gnav .gnavSearch .site-search {
        position: relative;
        border: 1px solid #fff;
    }

    .Gnav .gnavSearch .site-search .search_input {
        width: 800px;
        height: 56px;
        float: left;
        border: 0;
        margin: 0;
        padding: 0 20px;
        font-size: 18px;
        background: #fff;
        -webkit-border-radius: 0;
        border-radius: 0;
        -webkit-appearance: none;
        appearance: none;
    }

    .Gnav .gnavSearch .site-search .search_submit {
        position: relative;
        width: 198px;
        height: 56px;
        float: left;
        background: #00307c;
        border: 0;
        margin: 0;
        padding: 0;
        text-align: center;
        font-size: 20px;
        color: #fff;
        cursor: pointer;
        -webkit-border-radius: 0;
        border-radius: 0;
        -webkit-appearance: none;
        appearance: none;
        -webkit-transition: background .3s;
        transition: background .3s;
    }

    .Gnav .gnavSearch .site-search .search_icon {
        position: absolute;
        display: block;
        width: 23px;
        height: 23px;
        top: 50%;
        right: 126px;
        margin-top: -12px;
        background: url(/shared/img/com_menu_sprite01.png) -450px 0 no-repeat;
        text-indent: -9999px;
        z-index: 2;
        cursor: pointer;
    }

    .Gnav .gnavSearch .site-search .search_submit:hover,
    .Gnav .gnavSearch .site-search .search_icon:hover + .search_submit {
        background: #1D5D9C;
    }

    .Gnav .gnavSearch .search_block .search_close {
        width: 280px;
        margin: 50px auto 0;
    }

    .Gnav .gnavSearch .search_block .search_close a {
        display: block;
        padding: 12px 0;
        border: 1px solid #fff;
        font-size: 16px;
        color: #fff;
        text-align: center;
        text-decoration: none;
    }

    .Gnav .gnavSearch .search_block .search_close a > span {
        position: relative;
        display: inline-block;
        padding-left: 20px;
    }

    .Gnav .gnavSearch .search_block .search_close a > span::before,
    .Gnav .gnavSearch .search_block .search_close a > span::after {
        display: block;
        position: absolute;
        width: 15px;
        height: 2px;
        background: #fff;
        top: 50%;
        left: 0;
        margin-top: -1px;
        content: "";
        -webkit-transition: background .3s;
        transition: background .3s;
    }

    .Gnav .gnavSearch .search_block .search_close a > span::before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .Gnav .gnavSearch .search_block .search_close a > span::after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .Gnav .gnavSearch .search_block .search_close a:hover {
        background: #eff8f6;
        color: #1D5D9C;
    }

    .Gnav .gnavSearch .search_block .search_close a:hover > span::before,
    .Gnav .gnavSearch .search_block .search_close a:hover > span::after {
        background: #1D5D9C;
    }

    .Gnav .mega-menu .mega-frontline {
        margin-top: 30px;
    }

    .Gnav .mega-menu .mega-frontline .content_heading {
        font-size: 16px;
        font-weight: bold;
    }

    .Gnav .mega-menu .mega-frontline .mega-fl_column {
        margin-top: 12px;
    }

    .Gnav .mega-menu .mega-frontline .mega-fl_column .column_item > a {
        text-decoration: none;
        color: #333;
    }

    .Gnav .mega-menu .mega-frontline .mega-fl_column .column_item > a:hover {
        text-decoration: underline;
        color: #1D5D9C;
    }

    .Gnav .mega-menu .mega-frontline .mega-fl_column .mega-fl_title {
        margin-top: 12px;
        position: relative;
        padding-left: 15px;
        font-weight: bold;
    }

    .Gnav .mega-menu .mega-frontline .mega-fl_column .mega-fl_title::before {
        position: absolute;
        display: block;
        top: .5em;
        left: 0;
        width: 6px;
        height: 6px;
        border-top: 1px solid #666;
        border-right: 1px solid #666;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: ""
    }

    .Gnav .mega-menu .mega-frontline .mega-fl_column .column_item > a:hover .mega-fl_title::before {
        border-color: #1D5D9C;
    }

    .Gnav .twitter > .twitter-link > img {
        height: 48px;
    }

    .Gnav .instagram > .instagram-link > img {
        height: 48px;
    }

    /* ------------------------------------------------------
   * Main
  ------------------------------------------------------ */
    .MainBody {}

    /* ----- pageGuide ----- */
    .pageGuide {}

    .pageGuide > *:first-child {
        margin-top: 0 !important;
    }

    /* breadcrumbs */
    .breadcrumbs {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
        width: 1200px;
        margin: 0 auto;
        padding: 17px 0 12px;
        border-bottom: 1px solid #eee;
    }

    .breadcrumbs > li {
        position: relative;
        padding-left: 30px;
        font-size: 1.3rem;
    }

    .breadcrumbs > li:first-child {
        padding-left: 0;
    }

    .breadcrumbs > li::after {
        position: absolute;
        display: block;
        top: 0;
        left: 1.0em;
        color: #ddd;
        content: "/";
    }

    .breadcrumbs > li:first-child::after {
        display: none;
    }

    .breadcrumbs > li a {
        text-decoration: none;
    }

    /* ----- pageHead ----- */
    .pageHead > *:first-child {
        margin-top: 0 !important;
    }

    /*.pageHead .heading-lv1 {
    width: 1240px;
    margin: 0 auto;
    padding: 25px 20px;
  }*/
    .pageHead .pageHeadBody {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        width: 1200px;
        margin: 0 auto;
        padding: 25px 0;
    }

    .pageHead .pageHeadBody .heading-lv1 {
        margin: 0;
        padding: 0;
    }

    .pageHead > .heading-lv1 {
        width: 1200px;
        margin: 0 auto;
        padding: 25px 0;
    }

    /* ----- fontSize ----- */
    .pageHead .fontSize {
        margin-left: auto;
        -webkit-flex: 0 0 288px;
        flex: 0 0 288px;
    }

    .pageHead .fontSize > dl {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: flex-end;
        justify-content: flex-end;
        font-size: 1.3rem;
    }

    .pageHead .fontSize > dl > dt {
        padding-right: 1em;
    }

    .pageHead .fontSize > dl > dd > a {
        display: inline-block;
        width: 50px;
        padding: 0.3em 0;
        border: 1px solid #ddd;
        background: #fff;
        text-align: center;
        text-decoration: none;
        color: #333;
    }

    .pageHead .fontSize > dl > dd > a.is-active {
        background: #ddd;
        color: #666;
    }

    /* ----- container ----- */
    .container {
        width: 1200px;
        margin: 0 auto;
        padding: 0 0 75px;
    }

    .container[data-wide="true"] {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    /* contents */
    [data-sidebar="true"] .contents {
        float: left;
        width: 912px;
    }

    .contents > *:first-child,
    .contents > section:first-child > *:first-child {
        margin-top: 0 !important;
    }

    /* pageLead */
    .pageLead {
        padding: 40px 0 0;
    }

    /* sidebar */
    [data-sidebar="true"] .sidebar {
        float: right;
        width: 240px;
    }

    .sidebar-nav a {
        position: relative;
        display: block;
        text-decoration: none;
        color: #333;
    }

    .sidebar-nav .nav_head {
        background: #fff;
        border-top: 4px solid #00307c;
        border-bottom: 2px solid #ddd;
    }

    .sidebar-nav .nav_head > a,
    .sidebar-nav .nav_head > span {
        display: block;
        padding: 23px 10px 22px 17px;
        font-size: 2.2rem;
        font-weight: bold;
        line-height: 1.5;
        text-decoration: none;
    }

    .sidebar-nav .nav_head > a {
        color: #00307c;
    }

    .sidebar-nav .nav_head > a:hover {
        color: #1D5D9C;
        text-decoration: underline;
    }

    .sidebar-nav .nav_category.stage1 > li {
        border-bottom: 1px solid #eee;
    }

    .sidebar-nav .nav_category.stage1 > li > a {
        padding: 17px 5px 17px 20px;
    }

    .sidebar-nav .nav_category.stage1 > li:not(.is-current) > a::before {
        position: absolute;
        display: block;
        width: 4px;
        height: calc(100% + 2px);
        top: -1px;
        left: 0;
        background: #1D5D9C;
        opacity: 0;
        -webkit-transition: opacity .3s;
        transition: opacity .3s;
        content: "";
    }

    .sidebar-nav .nav_category.stage1 > li > a:hover {
        background: #eff8f6;
        text-decoration: underline;
        color: #1D5D9C;
    }

    .sidebar-nav .nav_category.stage1 > li > a:hover::before {
        opacity: 1;
    }

    .sidebar-nav .nav_category.stage1 > li.is-current > a {
        background: #1D5D9C;
        font-weight: bold;
        color: #fff;
    }

    .sidebar-nav .nav_category.stage1 > li.is-open > a {
        background: #f9f9f9;
        font-weight: bold;
    }

    .sidebar-nav .nav_category.stage1 > li > a > span {
        position: relative;
        display: inline-block;
        padding-left: 15px;
    }

    .sidebar-nav .nav_category.stage1 > li > a > span::before {
        position: absolute;
        top: .55em;
        left: -2px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        width: 5px;
        height: 5px;
        border-top: 1px solid #555;
        border-right: 1px solid #555;
        content: "";
        -webkit-transition: border .3s;
        transition: border .3s;
    }

    .sidebar-nav .nav_category.stage1 > li > a:hover > span {
        text-decoration: underline;
    }

    .sidebar-nav .nav_category.stage1 > li > a:hover > span::before {
        border-color: #1D5D9C;
    }

    .sidebar-nav .nav_category.stage1 > li.is-current > a > span::before {
        display: none;
    }

    .sidebar-nav .nav_category.stage2 > li {
        border-top: 1px solid #fff;
    }

    .sidebar-nav .nav_category.stage2 > li > a {
        padding: 13px 5px 12px 26px;
        background: #f9f9f9;
        font-size: 1.3rem;
    }

    .sidebar-nav .nav_category.stage2 > li:not(.is-current) > a::before {
        position: absolute;
        display: block;
        width: 4px;
        height: calc(100% + 2px);
        top: -1px;
        left: 0;
        background: #1D5D9C;
        opacity: 0;
        -webkit-transition: opacity .3s;
        transition: opacity .3s;
        content: "";
    }

    .sidebar-nav .nav_category.stage2 > li > a:hover {
        background: #eff8f6;
        color: #1D5D9C;
    }

    .sidebar-nav .nav_category.stage2 > li > a:hover::before {
        opacity: 1;
    }

    .sidebar-nav .nav_category.stage2 > li.is-current > a {
        background: #1D5D9C;
        font-weight: bold;
        color: #fff;
    }

    .sidebar-nav .nav_category.stage2 > li > a > span {
        position: relative;
        display: inline-block;
        padding-left: 15px;
    }

    .sidebar-nav .nav_category.stage2 > li > a > span::before {
        position: absolute;
        top: .55em;
        left: -2px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        width: 5px;
        height: 5px;
        border-top: 1px solid #555;
        border-right: 1px solid #555;
        content: "";
        -webkit-transition: border .3s;
        transition: border .3s;
    }

    .sidebar-nav .nav_category.stage2 > li > a:hover > span {
        text-decoration: underline;
    }

    .sidebar-nav .nav_category.stage2 > li > a:hover > span::before {
        border-color: #1D5D9C;
    }

    .sidebar-nav .nav_category.stage2 > li.is-current > a > span::before {
        display: none;
    }

    /* sidebar */
    .sidebar .sidebar-banner {
        margin-top: 30px;
    }

    .sidebar .sidebar-banner .banner_list > li {
        text-align: center;
    }

    .sidebar .sidebar-banner .banner_list > li + li {
        margin-top: 20px;
    }

    .sidebar .sidebar-banner .banner_list > li a {
        display: block;
        background: #fff;
    }

    .sidebar .sidebar-banner .banner_list > li a:hover {
        opacity: .7;
    }

    /* sidebar-contact */
    .sidebar .sidebar-contact {
        margin-top: 30px;
        padding: 15px 18px 30px;
        background: #ecf2fe;
    }

    .sidebar .sidebar-contact .contact_title {
        font-weight: bold;
        text-align: center;
    }

    .sidebar .sidebar-contact .contact_link > li {
        margin-top: 10px;
    }

    .sidebar .sidebar-contact .contact_link > li > a {
        display: block;
        position: relative;
        padding: 13px 20px 12px;
        border: 1px solid #00307c;
        background-color: #00307c;
        font-weight: bold;
        color: #fff;
        line-height: 1.5;
        text-align: center;
        text-decoration: none;
    }

    .sidebar .sidebar-contact .contact_link > li > a:hover {
        background-color: #1D5D9C;
        border-color: #1D5D9C;
    }

    .sidebar .sidebar-contact .contact_link > li.link01 > a {
        padding-left: 47px;
    }

    .sidebar .sidebar-contact .contact_link > li.link02 > a {
        padding-left: 48px;
    }

    .sidebar .sidebar-contact .contact_link > li > a::before {
        position: absolute;
        display: block;
        top: 50%;
        left: 20px;
        width: 5px;
        height: 5px;
        margin-top: -3px;
        content: "";
    }

    .sidebar .sidebar-contact .contact_link > li.link01 > a::before {
        width: 27px;
        height: 21px;
        margin-top: -11px;
        background-image: url(/shared/img/com_sprite01.png);
        background-position: -250px 0px;
        background-repeat: no-repeat;
    }

    .sidebar .sidebar-contact .contact_link > li.link02 > a::before {
        width: 28px;
        height: 25px;
        margin-top: -12px;
        background-image: url(/shared/img/com_sprite01.png);
        background-position: -300px 0px;
        background-repeat: no-repeat;
    }

    .sidebar .sidebar-contact .contact_link .link_label {
        display: inline-block;
        line-height: 1.5;
    }

    /* ------------------------------------------------------
   * Assist
  ------------------------------------------------------ */
    .Assist {}

    /* ------------------------------------------------------
   * Footer
  ------------------------------------------------------ */


    .Footer {
        text-align: center;
        margin: 20px 0 20px 0;
    }

    .Footer.is-simple {
        border-top: 1px solid #ddd;
    }

    .Footer .footer_inner {
        width: 1200px;
        margin: 0 auto;
    }

    .FooterUtility {
        padding: 55px 0 45px;
        background: #444;
    }

    .FooterUtility,
    .FooterUtility a {
        color: #fff;
    }

    .FooterUtility a {
        text-decoration: none;
    }

    .FooterUtility a:hover {
        text-decoration: underline;
    }

    .FooterUtility .footer-column {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }

    .FooterUtility .footer-column .col_item[data-size-pc="1/2"] {
        width: calc((100% - 36px) / 2);
    }

    .FooterUtility .footer-column .col_item[data-size-pc="1/3"] {
        width: calc((100% - 120px) / 3);
    }

    .FooterUtility .footer-column .col_item[data-size-pc="2/3"] {
        width: calc((100% / 3) * 2);
    }

    .FooterUtility .footer-column .col_item[data-size-pc="1/4"] {
        width: calc((100% - 48px) / 4);
    }

    .FooterUtility .footer-column .col_item[data-size-pc="3/4"] {
        width: calc(((100% - 48px) / 4) * 3);
    }

    .FooterUtility .footer_link {
        font-size: 14px;
        margin-bottom: 20px;
    }

    .FooterUtility .footer_link-child {
        margin-top: -5px;
        padding-left: 14px;
    }

    .FooterUtility .footer_link.category-lv01 {
        margin-bottom: .5em;
        font-size: 20px;
        font-weight: bold;
    }

    .FooterUtility .footer_link.category-lv02 {
        margin-bottom: .5em;
        font-size: 16px;
        font-weight: bold;
    }

    .FooterUtility .footer_link a {
        color: #ddd;
    }

    .FooterUtility .footer_link a.a-blank::after {
        display: inline-block;
        margin: .3em 8px 0 8px;
    }

    .FooterUtility .footer_link.category-lv01 a.a-blank::after {
        margin-top: .45em;
    }

    .FooterUtility .footer_link.category-lv01 a,
    .FooterUtility .footer_link.category-lv02 a {
        color: #fff;
    }

    .FooterUtility .footer_link > li + li {
        margin-top: .8em;
    }

    .FooterBody {
        background: #fff;
    }

    .FooterBody .footer-column {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center;
        height: 70px;
    }

    .FooterBody .footer_link {
        display: -webkit-flex;
        display: flex;
        font-size: 14px;
    }

    .FooterBody .footer_link a {
        color: #333;
        text-decoration: none;
    }

    .FooterBody .footer_link a:hover {
        text-decoration: underline;
    }

    .FooterBody .footer_link > li + li {
        margin-left: 30px;
    }

    .FooterBody .footer-copyright {
        margin-left: auto;
        font-size: 12px;
        color: #999;
    }

    .FooterBody .footer-copyright.is-copyright-only {
        margin: 0 auto;
    }

    .Pagetop a {
        display: block;
        position: fixed;
        right: 0;
        bottom: 0;
        width: 70px;
        height: 70px;
        background: url(/shared/img/com_sprite01.png) -400px 0 no-repeat;
        outline: none;
        z-index: 100;
    }

    /* ------------------------------------------------------
   * ServiceDetail
  ------------------------------------------------------ */
    .service-detail img.img-responsive {
        margin: 0;
    }

    .service-detail {
        background-color: #fff;
    }

    .service-detail > ul > li {
        padding: 30px 0;
    }

    .service-detail h2 {
        margin-bottom: 15px;
        font-size: 42px;
        color: #555;
        font-family: "MS Mincho", "MS 明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN";
    }

    .service-detail p {
        font-size: 13px;
        line-height: 2em;
    }

    /* position */
    .service-detail li > div {
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }

    .service-detail li > div > div:first-of-type {
        flex: 0 1 55%;
        display: flex;
        justify-content: flex-end;
        padding: 20px;
    }

    .service-detail li > div > div:last-of-type {
        flex: 0 1 45%;
        display: flex;
    }

    .service-detail li .detail {
        /*        max-width: 400px;*/
    }

    .service-detail > ul > li:nth-of-type(even) {
        background-color: rgba(0, 79, 172, 0.1);
    }

    .service-detail > ul > li:nth-of-type(even) > div > div:first-of-type {
        #justify-content: flex-start;
    }

    .service-detail > ul > li:nth-of-type(even) > div > div:last-of-type {
        #order: -1;
        #justify-content: flex-end;
    }

    .service-detail li.vertically > div > div:first-of-type,
    .service-detail li.vertically > div > div:last-of-type {
        flex: 0 0 50%;
    }

    .service-detail li > div > div:first-of-type img {
        flex: 0 0 auto;
    }

    .service-detail img.img-responsive {
        margin: 0 auto;
    }

    .service-detail li .detail {
        margin: 0 auto 50px;
    }


    .service-detail h2 {
        text-align: center;
    }

    .service-detail > ul > li {
        padding: 30px 0 0;
    }

    .service-detail > ul > li {
        padding: 0;
    }

    .service-detail h2 + p {
        margin-bottom: 50px;
        padding: 0 10px;
    }

    .googlemap {
        margin-top: 30px;
    }

    .price-description {
        margin-bottom: 40px;
    }

    .lv2 .c-btn-group,
    .lv3 .c-btn-group {
        margin: 0;
    }
}

.lv2 .c-btn-group > *,
.lv3 .c-btn-group > * {
    padding-bottom: 30px;
    padding-left: 10px;
    padding-right: 10px;
}

@media (max-width: 767.98px) {

    .lv2 .c-btn-group > *,
    .lv3 .c-btn-group > * {
        padding-bottom: 20px;
        padding-left: 0;
        padding-right: 0;
    }
}

.lv2 .c-btn-group .c-btn,
.lv3 .c-btn-group .c-btn {
    width: 100%;
}

@media (max-width: 767.98px) {

    .lv2 .c-btn-group .c-btn,
    .lv3 .c-btn-group .c-btn {
        height: 50px;
    }
}

.lv2 .c-btn-group .c-btn.c-btn-l,
.lv3 .c-btn-group .c-btn.c-btn-l {
    height: 70px;
}

@media (max-width: 767.98px) {

    .lv2 .c-btn-group .c-btn.c-btn-l,
    .lv3 .c-btn-group .c-btn.c-btn-l {
        height: 65px;
        font-size: 18px;
        letter-spacing: -1px;
    }
}

@media (min-width: 768px) {

    .lv2 .c-btn-group .c-btn.c-btn-l.c-btn-md-l,
    .lv3 .c-btn-group .c-btn.c-btn-l.c-btn-md-l {
        height: 70px;
    }
}

@media (max-width: 767.98px) {

    .lv2 .c-btn-group .c-btn.c-btn-l span,
    .lv3 .c-btn-group .c-btn.c-btn-l span {
        font-size: 18px;
    }
}

@media (max-width: 767.98px) {

    .lv2 .c-btn-group .c-btn.c-btn-l small,
    .lv3 .c-btn-group .c-btn.c-btn-l small {
        font-size: 13px;
    }
}


.p-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

::after,
::before,
:not(hr):not(legend) {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.lv2 .p-row__main,
.lv3 .p-row__main {
    width: 70.91%;
}

.p-row__main {
    width: 100%;
    max-width: 1200px;
}

.lv2 .c-box:not(.c-box--gray):not(.c-box--info),
.lv3 .c-box:not(.c-box--gray):not(.c-box--info) {
    padding: 42px 50px 50px;
}

.lv3 .c-box ~ .c-box {
    margin-top: 50px;
}

.c-box ~ .c-box {
    margin-top: 2.5em;
}

.c-box {
    padding: 2.5em;
    background: #FFF;
    -webkit-box-shadow: 0px 8px 27.6px 2.4px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 8px 27.6px 2.4px rgba(0, 0, 0, 0.1);
    word-break: break-all;
}

.lv3 .c-heading-2 {
    padding-bottom: 18px;
    margin-bottom: 28px;
    font-size: 24px;
}

.c-heading-2 {
    position: relative;
    font-weight: bold;
    padding-bottom: 0.71429em;
    margin-bottom: 1.07143em;
    font-size: 1.5rem;
    line-height: 1.5;
}

.c-heading-2::before,
.c-heading-2::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: #ccc;
}

.c-heading-2::after {
    background: #1D5D9C;
    width: 4.5em;
}

.c-txt {
    margin-bottom: 1rem;
}

.c-btn-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: -0.83333em;
    margin-right: -0.83333em;
    margin-bottom: -1.66667em;
    text-align: center;
}

.c-btn-group ~ .c-btn-group {
    margin-top: 1.66667em;
}

.c-btn-group > * {
    padding-bottom: 1.66667em;
}

.c-btn-group .c-btn {
    min-width: 0;
    width: 100%;
    height: 60px;
    border: 1px;
    border-style: solid;
    border-color: #1D5D9C;
    border-radius: 10px;
}

.c-btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    min-width: 367px;
    height: 70px;
    line-height: 1.33333em;
    text-align: center;
    text-decoration: none !important;
    border: 1px solid;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    cursor: pointer;
}

.lv2 .c-btn {
    font-size: 16px;
    height: 60px;
}

.lv3 .c-btn {
    font-size: 16px;
    height: 60px;
}

.c-btn:after {
    content: "";
    display: block;
    position: absolute;
    right: .6em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 12px;
    padding-top: .7em;
    background: no-repeat center;
    background-size: 100%;
}

.c-btn > span {
    padding: 0 1.8em 0 1em;
    margin: 0 auto;
    width: 100%;
}

.c-btn small {
    display: block;
    white-space: nowrap;
    font-size: 0.66667rem;
    margin-bottom: .2em;
}

.c-btn[disabled] {
    pointer-events: none;
    opacity: 0.4;
}

.c-btn--primary {
    color: #FFF !important;
    background-color: #1D5D9C;
    border-color: #1D5D9C;
}

.c-btn--primary:after {
    content: "";
    display: block;
    position: absolute;
    right: .6em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 12px;
    padding-top: .7em;
    background: url(/common/img/icon/ar_02_left_wh.svg) no-repeat center;
    background-size: 100%;
}

.c-btn--primary:hover {
    border-color: #cc686d;
    background-color: #cc686d;
}

.c-btn--primary:focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(202, 60, 65, 0.5);
    box-shadow: 0 0 0 0.2rem rgba(202, 60, 65, 0.5);
}

.c-btn--primary.c-btn--icon svg,
.c-btn--primary.c-btn--pdf svg {
    fill: #fff;
}

.lv2 .c-btn--primary small {
    color: #FFF !important;
}

.lv3 .c-btn--primary small {
    color: #FFF !important;
}

.c-btn--primary-co {
    color: #FFF !important;
    background-color: #0f2566;
    border-color: #0f2566;
}

.c-btn--primary-co:after {
    background-image: url(/common/img/icon/ar_02_left_wh.svg);
}

.c-btn--primary-co:hover {
    border-color: #00468c;
    background-color: #00468c;
}

.c-btn--primary-co:focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(202, 60, 65, 0.5);
    box-shadow: 0 0 0 0.2rem rgba(202, 60, 65, 0.5);
}

.c-btn--gray {
    color: #FFF !important;
    background-color: #666;
    border-color: #666;
}

.c-btn--gray:after {
    content: "";
    display: block;
    position: absolute;
    right: .6em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 12px;
    padding-top: .7em;
    background: url(/common/img/icon/ar_02_left_wh.svg) no-repeat center;
    background-size: 100%;
}

.c-btn--gray:hover {
    border-color: #aaaaaa;
    background-color: #aaaaaa;
}

.c-btn--gray:focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(170, 170, 170, 0.5);
    box-shadow: 0 0 0 0.2rem rgba(170, 170, 170, 0.5);
}

.c-btn--outline {
    color: #000;
    background-color: #FFF;
}

.c-btn--outline:after {
    background-image: url(/assets_cms/img/ar_02_left_red.png);
}

.c-btn--outline:hover {
    opacity: 0.8;
}

.c-btn--outline:focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(97, 97, 102, 0.5);
    box-shadow: 0 0 0 0.2rem rgba(97, 97, 102, 0.5);
}

.c-btn--outline-co {
    color: #000;
    background-color: #FFF;
}

.c-btn--outline-co:after {
    content: "";
    display: block;
    position: absolute;
    right: .7em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 12px;
    padding-top: .7em;
    background: url(/common/img/icon/ar_02_left_blue.svg) no-repeat center;
    background-size: 100%;
}

.c-btn--outline-co:hover {
    color: #666;
    background-color: #FFF;
    border-color: #E1E1E1;
}

.c-btn--outline-co:focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(97, 97, 102, 0.5);
    box-shadow: 0 0 0 0.2rem rgba(97, 97, 102, 0.5);
}

.c-btn--w {
    width: 100%;
    min-width: 0;
}

.c-btn--back::after {
    right: auto;
    left: .6em;
    -webkit-transform: scale(-1, 1) translateY(-50%);
    -ms-transform: scale(-1, 1) translateY(-50%);
    transform: scale(-1, 1) translateY(-50%);
}

.c-btn--sm {
    height: 60px;
}

.c-btn--xs {
    font-size: 0.88889rem;
    height: 2.5em;
    min-width: 0;
}

.c-btn--icon:after,
.c-btn--pdf:after {
    content: none;
}

.c-btn--icon svg,
.c-btn--pdf svg {
    position: absolute;
    top: 50%;
    right: .6em;
    width: 1em;
    height: 1em;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    fill: #1D5D9C;
}

.c-btn--icon > span,
.c-btn--pdf > span {
    padding-right: 2em;
}

.c-btn--pdf svg {
    width: 1.2em;
    height: 1.2em;
}

.c-btn--no-icon:after {
    content: none;
}

.c-btn--no-icon > span {
    padding-right: 1em;
}

/* ------------------------------------------------------
   * Other
  ------------------------------------------------------ */

/* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
.breadcrumbs::after,
.container::after,
.Gnav .gnavSearch .site-search::after {
    display: block;
    clear: both;
    content: "";
}
}

/* ------------------------------------------------------
 * Media Queries
------------------------------------------------------ */
@media print,
screen and (max-width: 1200px) and (min-width: 768px) {
    .Gnav .gnavList > li.list_primary {
        margin-left: 24px;
    }

    .Gnav .gnavList > li.has-child > a {
        margin-right: 24px;
    }

    .Gnav .gnavList_child li.list_secondary {
        margin-right: 20px;
    }
}

@media print,
screen and (max-width: 1140px) and (min-width: 768px) {
    .Gnav .gnavList > li.list_primary > a {
        font-size: 17px;
    }

    .Gnav .gnavList_child li.list_secondary > a {
        font-size: 13px;
    }
}

@media print,
screen and (max-width: 1100px) and (min-width: 768px) {

    .Gnav .gnavList,
    .Gnav .gnavList > li.has-child,
    .Gnav .gnavList_child {
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
    }

    .Gnav .gnavList > li.has-child {
        width: 100%;
        margin-top: 5px;
        margin-left: 0;
        -webkit-justify-content: flex-end;
        justify-content: flex-end;
    }

    .Gnav .gnavList_child li.list_secondary {
        margin-right: 14px;
    }

    .Gnav .gnavList > li > a,
    .Gnav .gnavList_child > li > a {
        padding-bottom: 5px;
    }

    .Gnav .gnavList > li.list_primary > a,
    .Gnav .gnavList_child li.list_secondary > a {
        border-bottom-width: 3px;
    }
}

/* ======================================================
 * Print
====================================================== */
@media print {

    /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
    .HeaderBody {
        position: static !important;
        box-shadow: none !important;
        border-bottom: 1px solid #ccc !important;
    }

    .HeaderBody .header-block {}

    .container {
        width: 1200px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .pc-hidden,
    .Pagetop {
        display: none !important;
    }
}
