@charset "UTF-8";
/******************************

 * style
 *
 * 1. Layout（共通要素）

******************************/
@import "root.css";
@import "util-2.css";
@import "section_top_banner.css";


* {
    box-sizing: border-box;
}

html,
body {
    font-size: var(--base-size) !important;
    font-family: Helvetica, Arial, sans-serif;
}

body *{
    font-size: var(--font-size-14);
}

div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video{
    font-size: var(--font-size-14);
}

.page{
    width: 100%;
    min-width: 1px;
}
.wrap {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    max-width: 1432px;
    padding: 0 20px;
}

.section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.section-title {
    font-size: 42px;
    font-family: "adobe-garamond-pro", serif;
    font-weight: 600;
    position: relative;
    line-height: 44px;
    color: #222222;
    padding: 25px 0 36px 0;
    margin: 0;
}

.section-title.section-title-top-border::before {
    content: "";
    width: 90px;
    height: 2px;
    background: #002368;
    position: absolute;
    top: 0px;
}

.section-title.section-title-top-border-gray::before {
    content: "";
    width: var(--width-title);
    height: 2px;
    background: #7D8595;
    position: absolute;
    top: 0px;
}

.hr-ken-primary {
    width: 100%;
    margin-bottom: 35px;
    position: relative;
}

.hr-ken-primary hr {
    margin: 0px;
    background: #D8D8D8;
}

.hr-ken-primary:after {
    content: "";
    width: 40%;
    height: 5px;
    background: #002368;
    left: 0px;
    display: block;
    top: -1px;
    position: relative;
}

@media screen and (max-width: 860px) {
    .pc-content {
        display: none!important;
    }
    .section-title {
        font-size: var(--font-size-26);
        padding: 12px 0 8px 0;
    }
    .section-title.section-title-top-border::before {
        width: var(--width-title-mobile);
    }
}

@media screen and (max-width:1440px){
    .wrap {
        max-width: var(--max-width-pc-md);
    }
}

@media screen and (min-width: 860px) {
    .mobile-content{
        display: none!important;
    }
}