﻿article {
    display: block;
}

aside {
    display: block;
}

figure {
    display: block;
}

figcaption {
    display: block;
}

footer {
    display: block;
}

header {
    display: block;
}

nav {
    display: block;
}

section {
    display: block;
}

body {
    color: rgb(29, 29, 29);
    line-height: 1.6;
    font-size: 15px;
    -webkit-text-size-adjust: 100%;
}

@media screen and (max-width:1500px) and (min-width:769px) {
    body {
        font-size: 13px;
    }
}

@media screen and (max-width:768px) {
    body {
        /* overflow: hidden; */
        font-size: 13px;
        min-width: 2px;
    }
}

body {
    font-family: "�q���M�m�p�S Pro", "Hiragino Kaku Gothic Pro", "���C���I", "Meiryo", sans-serif;
}

input {
    font-family: "�q���M�m�p�S Pro", "Hiragino Kaku Gothic Pro", "���C���I", "Meiryo", sans-serif;
}

textarea {
    font-family: "�q���M�m�p�S Pro", "Hiragino Kaku Gothic Pro", "���C���I", "Meiryo", sans-serif;
}

select {
    font-family: "�q���M�m�p�S Pro", "Hiragino Kaku Gothic Pro", "���C���I", "Meiryo", sans-serif;
}

button {
    font-family: "�q���M�m�p�S Pro", "Hiragino Kaku Gothic Pro", "���C���I", "Meiryo", sans-serif;
}

body {
    margin: 0px;
    padding: 0px;
}

div {
    margin: 0px;
    padding: 0px;
}

pre {
    margin: 0px;
    padding: 0px;
}

p {
    margin: 0px;
    padding: 0px;
}

blockquote {
    margin: 0px;
    padding: 0px;
}

dl {
    margin: 0px;
    padding: 0px;
}

dt {
    margin: 0px;
    padding: 0px;
}

dd {
    margin: 0px;
    padding: 0px;
}

ul {
    margin: 0px;
    padding: 0px;
}

ol {
    margin: 0px;
    padding: 0px;
}

li {
    margin: 0px;
    padding: 0px;
}

h1 {
    margin: 0px;
    padding: 0px;
}

h2 {
    margin: 0px;
    padding: 0px;
}

h3 {
    margin: 0px;
    padding: 0px;
}

h4 {
    margin: 0px;
    padding: 0px;
}

h5 {
    margin: 0px;
    padding: 0px;
}

h6 {
    margin: 0px;
    padding: 0px;
}

form {
    margin: 0px;
    padding: 0px;
}

fieldset {
    margin: 0px;
    padding: 0px;
}

th {
    margin: 0px;
    padding: 0px;
}

td {
    margin: 0px;
    padding: 0px;
}

button {
    margin: 0px;
    padding: 0px;
}

figure {
    margin: 0px;
    padding: 0px;
}

figcaption {
    margin: 0px;
    padding: 0px;
}

input {
    margin: 0px;
    font-size: 100%;
}

textarea {
    margin: 0px;
    font-size: 100%;
}

input {
}

textarea {
}

select {
}

textarea {
    resize: none;
}

button {
    background: none;
    border: currentColor;
    border-image: none;
    color: inherit;
    overflow: visible;
    font-size: 100%;
    vertical-align: top;
    cursor: pointer;
    -webkit-appearance: none;
}

label {
    cursor: pointer;
}

table {
    font-size: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

fieldset {
    border: 0px currentColor;
    border-image: none;
}

img {
    border: 0px currentColor;
    border-image: none;
}

img {
    height: auto;
    vertical-align: top;
}

address {
    font-style: normal;
    font-weight: normal;
}

caption {
    font-style: normal;
    font-weight: normal;
}

code {
    font-style: normal;
    font-weight: normal;
}

em {
    font-style: normal;
    font-weight: normal;
}

th {
    font-style: normal;
    font-weight: normal;
}

ol {
    list-style: none;
}

ul {
    list-style: none;
}

caption {
    text-align: left;
}

th {
    text-align: left;
}

h1 {
    font-size: 100%;
    font-weight: normal;
}

h2 {
    font-size: 100%;
    font-weight: normal;
}

h3 {
    font-size: 100%;
    font-weight: normal;
}

h4 {
    font-size: 100%;
    font-weight: normal;
}

h5 {
    font-size: 100%;
    font-weight: normal;
}

h6 {
    font-size: 100%;
    font-weight: normal;
}

strong {
    font-size: 100%;
    font-weight: normal;
}

em {
    font-size: 100%;
    font-weight: normal;
}

a {
}

input {
}

sup {
    font-size: 63%;
}

sub {
    font-size: 63%;
}

sup {
    vertical-align: top;
}

sub {
    vertical-align: baseline;
}

* {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

a {
    color: rgb(225, 128, 7);
    text-decoration: none;
}

    a:visited {
    }

    a:hover {
        text-decoration: underline;
    }

    a:active {
        text-decoration: underline;
    }

    a:focus {
        text-decoration: underline;
    }

.clearfix::before {
    display: table;
    content: "";
}

.clearfix::after {
    display: table;
    content: "";
}

.contents::before {
    display: table;
    content: "";
}

.contents::after {
    display: table;
    content: "";
}

.clearfix::after {
    clear: both;
}

.contents::after {
    clear: both;
}

.clearfix {
}

.contents {
}

html {
    /* -ms-overflow-y: scroll; */
}

    html.is-screen-locked {
        left: 0px;
        top: 0px;
        right: 0px;
        overflow: hidden;
        position: fixed;
    }

body {
    text-align: left;
}

.wrapper {
    margin: 0px auto;
    width: 100%;
    /*padding-top: 40px;*/
    min-width: 200px;
    max-width: 1800px;
    /* min-width 1200→200に変更しました */
}

@media screen and (max-width:768px) {
    .wrapper {
        /*padding-top: 59px; 20240419_コメントアウト*/
        min-width: 200px;
        overflow: hidden; /*20240419_修正*/
    }
    .container {
        min-width: unset;/*20240419_修正*/
    }
    .ml-5 {
        margin-left: unset!important;/*20240419_修正*/
    }
}


.header {
    left: 0px;
    top: 0px;
    width: 100%;
    height: 70px;
    right: 0px;
    position: fixed;
    z-index: 200;
    min-width: 1200px;
    background-color: rgb(255, 255, 255);
}

.header-in {
    margin: 0px auto;
    /*width: 1200px;*/
    width: 100%;
    text-align: left;
    position: relative;
}

.header-logo {
    left: 10px;
    top: 10px;
    position: absolute;
}

.header-utility {
    padding: 20px 0px;
    display: flex;
    justify-content: flex-end;
}

.header-search {
    width: 220px;
    height: 30px;
    position: relative;
}

#inputSearchTxt {
    padding: 0px 30px 0px 10px;
    border-radius: 0px;
    border: 1px solid rgb(206, 206, 206);
    border-image: none;
    width: 220px;
    height: 30px;
    font-size: 16px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

:-ms-input-placeholder#inputSearchTxt {
    color: rgb(124, 124, 124);
}

#inputSearchBtn {
    top: 6px;
    width: 19px;
    height: 19px;
    right: 10px;
    position: absolute;
}

.header-btn {
    display: none;
}

.header-link {
    margin-left: 30px;
}

    .header-link a {
        color: rgb(29, 29, 29);
        font-size: 18px;
    }

@media screen and (max-width:768px) {
    .header {
        height: 59px;
        border-bottom-color: rgb(211, 211, 211);
        border-bottom-width: 1px;
        border-bottom-style: solid;
        min-width: inherit;
    }

    .header-in {
        width: 100%;
    }

    .header-logo {
        left: 13px;
        top: 13px;
    }

        .header-logo img {
            width: 194px;
            height: auto;
        }

    .header-utility {
        padding: 0px;
    }

    .header-search {
        padding: 10px 8px;
        left: 0px;
        top: 59px;
        width: 100%;
        height: 66px;
        right: 0px;
        display: none;
        position: absolute;
        background-color: rgb(225, 128, 7);
    }

    .is-active.header-search {
        display: block;
    }

    #inputSearchTxt {
        padding: 0px 12px;
        border: currentColor;
        border-image: none;
        width: 100%;
        height: 46px;
        font-size: 15px;
    }

    :-ms-input-placeholder#inputSearchTxt {
        color: rgb(151, 151, 151);
    }

    #inputSearchBtn {
        display: none;
    }

    .header-link {
        margin: 0px;
        background-color: rgb(29, 29, 29);
    }

        .header-link a {
            padding: 12px 20px;
            color: rgb(255, 255, 255);
            display: block;
        }

        .header-link .ico-arrow-01 {
            padding-left: 18px;
            position: relative;
        }

            .header-link .ico-arrow-01::after {
                border-width: 4px 0px 4px 5px;
            }

    .header-btn {
        display: flex;
    }

    .header-btn-search {
        width: 59px;
        height: 59px;
        text-indent: 100%;
        overflow: hidden;
        white-space: nowrap;
    }

    .header-btn-menu {
        width: 59px;
        height: 59px;
        text-indent: 100%;
        overflow: hidden;
        white-space: nowrap;
    }

    .is-active.header-btn-search {
        background: url("/common/img/ico_close_01.png") no-repeat center / 22px auto rgb(29, 29, 29);
    }

    .is-active.header-btn-menu {
        background: url("/common/img/ico_close_01.png") no-repeat center / 22px auto rgb(29, 29, 29);
    }

    .header-btn-search {
        background: url("/common/img/ico_search_01_sp.png") no-repeat center / 27px auto;
    }

    .header-btn-menu {
        background: url("/common/img/ico_hamburger_01.png") no-repeat center / auto 24px;
    }
}

.nav-global {
    background: rgba(19, 16, 0, 0.8);
    left: 0px;
    top: 70px;
    width: 100%;
    right: 0px;
    overflow: hidden;
    position: fixed;
    z-index: 100;
    min-width: 1200px;
}

.nav-global-in {
    margin: 0px auto;
    width: 1200px;
    text-align: left;
}

.nav-global ul {
    display: flex;
    justify-content: space-between;
}

    .nav-global ul ul {
        display: none;
    }

.nav-global li {
    font-size: 18px;
}

    .nav-global li a {
        padding: 18px 24px;
        color: rgb(255, 255, 255);
        text-decoration: none;
        display: block;
        position: relative;
    }

    .nav-global li.nav09 .ico-blank-01::after {
        display: none;
    }

    .nav-global li.nav10 {
        width: 270px;
        text-align: center;
    }

        .nav-global li.nav10 a {
            background: rgba(225, 128, 7, 1);
            padding: 18px 0px;
            transition: 0.3s;
            font-weight: bold;
            display: block;
            -webkit-transition: all .3s;
        }

            .nav-global li.nav10 a:hover {
                background: rgba(225, 128, 7, 0.5);
                color: rgb(255, 255, 255);
            }

            .nav-global li.nav10 a::after {
                display: none;
            }

        .nav-global li.nav10 .ico-mail {
            background: url("/common/img/ico_mail_01.png") no-repeat left;
            padding-left: 35px;
        }

.has-sub {
    display: none;
}

.has-sub-in {
    display: none;
}

@media screen and (max-width:1500px) {
    .nav-global li {
        font-size: 16px;
    }

        .nav-global li a {
            padding: 15px 29px;
        }

        .nav-global li.nav10 a {
            padding: 15px 0px;
        }
}

@media screen and (min-width:769px) {
    .nav-global li a::after {
        background: rgb(225, 128, 7);
        transform-origin: right top;
        transition: transform 0.3s;
        left: 0px;
        width: 100%;
        height: 5px;
        bottom: 0px;
        position: absolute;
        content: "";
        transform: scale(0, 1);
    }

    body#g01 .nav-global li.nav01 > a {
        color: rgb(225, 128, 7);
    }

    body#g02 .nav-global li.nav02 > a {
        color: rgb(225, 128, 7);
    }

    body#g03 .nav-global li.nav03 > a {
        color: rgb(225, 128, 7);
    }

    body#g04 .nav-global li.nav04 > a {
        color: rgb(225, 128, 7);
    }

    body#g05 .nav-global li.nav05 > a {
        color: rgb(225, 128, 7);
    }

    body#g06 .nav-global li.nav06 > a {
        color: rgb(225, 128, 7);
    }

    body#g01 .nav-global li.nav01 a::after {
        background: rgb(225, 128, 7);
        left: 0px;
        width: 100%;
        height: 5px;
        bottom: 0px;
        position: absolute;
        content: "";
        transform: scale(1);
    }

    body#g02 .nav-global li.nav02 a::after {
        background: rgb(225, 128, 7);
        left: 0px;
        width: 100%;
        height: 5px;
        bottom: 0px;
        position: absolute;
        content: "";
        transform: scale(1);
    }

    body#g03 .nav-global li.nav03 a::after {
        background: rgb(225, 128, 7);
        left: 0px;
        width: 100%;
        height: 5px;
        bottom: 0px;
        position: absolute;
        content: "";
        transform: scale(1);
    }

    body#g04 .nav-global li.nav04 a::after {
        background: rgb(225, 128, 7);
        left: 0px;
        width: 100%;
        height: 5px;
        bottom: 0px;
        position: absolute;
        content: "";
        transform: scale(1);
    }

    body#g05 .nav-global li.nav05 a::after {
        background: rgb(225, 128, 7);
        left: 0px;
        width: 100%;
        height: 5px;
        bottom: 0px;
        position: absolute;
        content: "";
        transform: scale(1);
    }

    body#g06 .nav-global li.nav06 a::after {
        background: rgb(225, 128, 7);
        left: 0px;
        width: 100%;
        height: 5px;
        bottom: 0px;
        position: absolute;
        content: "";
        transform: scale(1);
    }

    .nav-global li a:hover {
        color: rgb(225, 128, 7);
    }

        .nav-global li a:hover::after {
            transform-origin: left top;
            transform: scale(1);
        }
}

@media screen and (max-width:768px) {
    .nav-global {
        left: 0px;
        top: 59px;
        height: auto;
        right: 0px;
        bottom: 0px;
        display: none;
        position: fixed;
        min-width: inherit;
    }

    .is-active.nav-global {
        display: block;
    }

    .nav-global-in {
        background: rgb(255, 255, 255);
        left: 0px;
        top: 0px;
        width: 100%;
        right: 0px;
        bottom: 0px;
        position: absolute;
        z-index: 5;
        -ms-overflow-y: scroll;
    }

        .nav-global-in li > a.is-current {
            color: rgb(255, 255, 255);
            background-color: rgb(225, 128, 7);
        }

            .nav-global-in li > a.is-current + .has-sub {
                background-color: rgb(225, 128, 7);
            }

                .nav-global-in li > a.is-current + .has-sub::before {
                    background-color: rgb(255, 255, 255);
                }

                .nav-global-in li > a.is-current + .has-sub::after {
                    background-color: rgb(255, 255, 255);
                }

    .nav-global ul {
        flex-direction: column;
    }

    .nav-global li {
        border-top-color: rgb(191, 191, 191);
        border-top-width: 1px;
        border-top-style: solid;
        position: relative;
    }

        .nav-global li:first-child {
            border-top-color: currentColor;
            border-top-width: medium;
            border-top-style: none;
        }

        .nav-global li a {
            padding: 5px 20px;
            height: 60px;
            color: rgb(29, 29, 29);
            font-weight: bold;
            text-decoration: none;
            display: flex;
            position: relative;
            flex-wrap: wrap;
            align-items: center;
            background-color: rgb(255, 255, 255);
            -webkit-flex-wrap: wrap;
            -ms-align-items: center;
        }

            .nav-global li a:not([target='_blank'])::before {
                border-width: 10px 0px 10px 12px;
                border-style: solid;
                border-color: transparent transparent transparent rgb(241, 133, 1);
                top: calc(50% - 11px);
                width: 0px;
                height: 0px;
                right: 26px;
                position: absolute;
                content: "";
            }

            .nav-global li a:not([target='_blank'])::after {
                border-width: 10px 0px 10px 12px;
                border-style: solid;
                border-color: transparent transparent transparent rgb(255, 255, 255);
                top: calc(50% - 11px);
                width: 0px;
                height: 0px;
                right: 29px;
                position: absolute;
                content: "";
            }

        .nav-global li > a.is-current::before {
            border-color: transparent transparent transparent rgb(255, 255, 255);
        }

        .nav-global li > a.is-current::after {
            border-color: transparent transparent transparent rgb(225, 128, 7);
        }

        .nav-global li.nav09 .ico-blank-01::after {
            display: inline-block;
        }

    .has-sub {
        top: 0px;
        width: 65px;
        height: 60px;
        right: 0px;
        display: block;
        position: absolute;
        z-index: 20;
        cursor: pointer;
        background-color: rgb(255, 255, 255);
    }

        .has-sub::before {
            left: calc(50% - 11px);
            top: 29px;
            width: 22px;
            height: 2px;
            position: absolute;
            content: "";
            background-color: rgb(225, 128, 7);
        }

        .has-sub::after {
            left: 32px;
            top: calc(50% - 11px);
            width: 2px;
            height: 22px;
            position: absolute;
            content: "";
            background-color: rgb(225, 128, 7);
        }

    .is-active.has-sub::after {
        display: none;
    }

    .is-active.has-sub + ul {
        display: block;
    }

    .has-sub-in {
        top: 0px;
        width: 65px;
        height: 60px;
        right: 0px;
        display: block;
        position: absolute;
        z-index: 20;
        cursor: pointer;
        background-color: rgb(254, 242, 228);
    }

        .has-sub-in::before {
            left: calc(50% - 11px);
            top: 29px;
            width: 22px;
            height: 2px;
            position: absolute;
            content: "";
            background-color: rgb(225, 128, 7);
        }

        .has-sub-in::after {
            left: 32px;
            top: calc(50% - 11px);
            width: 2px;
            height: 22px;
            position: absolute;
            content: "";
            background-color: rgb(225, 128, 7);
        }

    .is-active.has-sub-in::after {
        display: none;
    }

    .is-active.has-sub-in + ul {
        display: block;
    }

    .nav-global-bg {
        background: rgba(0, 0, 0, 0.6);
        left: 0px;
        top: 0px;
        width: 100%;
        height: 100%;
        right: 0px;
        bottom: 0px;
        position: fixed;
        z-index: 0;
    }
}

@media screen and (max-width:768px) {
    .nav-global-sub {
        border-top-color: rgb(191, 191, 191);
        border-top-width: 1px;
        border-top-style: solid;
    }

        .nav-global-sub li {
            font-size: 16px;
        }

            .nav-global-sub li a {
                padding: 5px 35px;
                color: rgb(29, 29, 29);
                background-color: rgb(254, 242, 228);
            }

                .nav-global-sub li a::after {
                    border-color: transparent transparent transparent rgb(254, 242, 228) !important;
                }

                .nav-global-sub li a.is-current {
                    color: rgb(255, 255, 255);
                    background-color: rgb(241, 133, 1);
                }

                    .nav-global-sub li a.is-current + .has-sub-in {
                        background-color: rgb(241, 133, 1);
                    }

                        .nav-global-sub li a.is-current + .has-sub-in::before {
                            background-color: rgb(255, 255, 255);
                        }

                        .nav-global-sub li a.is-current + .has-sub-in::after {
                            background-color: rgb(255, 255, 255);
                        }

                    .nav-global-sub li a.is-current::before {
                        border-color: transparent transparent transparent rgb(255, 255, 255) !important;
                    }

                    .nav-global-sub li a.is-current::after {
                        border-color: transparent transparent transparent rgb(241, 133, 1) !important;
                    }

    .nav-global-sub-in {
        border-top-color: rgb(191, 191, 191);
        border-top-width: 1px;
        border-top-style: solid;
    }

        .nav-global-sub-in li a {
            padding: 5px 50px;
            font-size: 12px;
        }
}

.nav-local {
}

    .nav-local .ttl {
        padding: 14px 0px 14px 30px;
        font-size: 24px;
        font-weight: bold;
        border-top-color: rgb(29, 29, 29);
        border-top-width: 5px;
        border-top-style: solid;
    }

    .nav-local ul {
        border-top-color: rgb(158, 158, 158);
        border-top-width: 1px;
        border-top-style: solid;
    }

    .nav-local li {
        border-bottom-color: rgb(158, 158, 158);
        border-bottom-width: 1px;
        border-bottom-style: solid;
    }

        .nav-local li li {
            border-bottom-color: currentColor;
            border-bottom-width: medium;
            border-bottom-style: none;
        }

        .nav-local li a {
            padding: 17px 0px 17px 48px;
            transition: 0.3s;
            color: rgb(29, 29, 29);
            font-size: 16px;
            display: block;
            background-color: rgb(255, 255, 255);
            -webkit-transition: all .3s;
        }

        .nav-local li li a {
            padding-left: 58px;
            font-size: 15px;
        }

        .nav-local li a:hover {
            text-decoration: none;
            background-color: rgb(222, 222, 222);
        }

body.l01 .lnav01 a {
    background-color: rgb(222, 222, 222);
}

body.l02 .lnav02 a {
    background-color: rgb(222, 222, 222);
}

body.l03 .lnav03 a {
    background-color: rgb(222, 222, 222);
}

body.l04 .lnav04 a {
    background-color: rgb(222, 222, 222);
}

body.l05 .lnav05 a {
    background-color: rgb(222, 222, 222);
}

body.l06 .lnav06 a {
    background-color: rgb(222, 222, 222);
}

body.l07 .lnav07 a {
    background-color: rgb(222, 222, 222);
}

body.l08 .lnav08 a {
    background-color: rgb(222, 222, 222);
}

body.l09 .lnav09 a {
    background-color: rgb(222, 222, 222);
}

body.l10 .lnav10 a {
    background-color: rgb(222, 222, 222);
}

body.l10-01 .lnav10-01 a {
    background-color: rgb(222, 222, 222);
}

body.l10-02 .lnav10-02 a {
    background-color: rgb(222, 222, 222);
}

body.l10-03 .lnav10-03 a {
    background-color: rgb(222, 222, 222);
}

body.l10-04 .lnav10-04 a {
    background-color: rgb(222, 222, 222);
}

.nav-local a.is-current {
    background-color: rgb(222, 222, 222);
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .nav-local .ttl {
        font-size: 20px;
    }

    .nav-local li a {
        font-size: 14px;
    }
}

@media screen and (max-width:768px) {
    .nav-local {
        margin-top: 50px;
    }

        .nav-local .ttl {
            padding: 12px 20px;
            font-size: 16px;
            border-top-color: rgb(43, 43, 43);
            border-top-width: 1px;
            border-top-style: solid;
            background-color: rgb(229, 229, 229);
        }

        .nav-local ul {
            border-top-color: rgb(43, 43, 43);
            border-top-width: 1px;
            border-top-style: solid;
            display: flex;
            position: relative;
            flex-wrap: wrap;
        }

            .nav-local ul ul {
                display: none;
            }

            .nav-local ul::after {
                left: 0px;
                width: 100%;
                height: 0px;
                right: 0px;
                bottom: 0px;
                border-bottom-color: rgb(43, 43, 43);
                border-bottom-width: 1px;
                border-bottom-style: solid;
                position: absolute;
                content: "";
            }

        .nav-local li {
            width: 50%;
            border-bottom-color: rgb(43, 43, 43);
            border-bottom-width: 1px;
            border-bottom-style: solid;
        }

            .nav-local li:nth-child(2n+1) {
                border-right-color: rgb(43, 43, 43);
                border-right-width: 1px;
                border-right-style: solid;
            }

            .nav-local li a {
                padding: 16px 0px 16px 20px;
                font-size: 11px;
            }

    body.l01 .lnav01 a {
        background-color: rgb(254, 242, 228);
    }

    body.l02 .lnav02 a {
        background-color: rgb(254, 242, 228);
    }

    body.l03 .lnav03 a {
        background-color: rgb(254, 242, 228);
    }

    body.l04 .lnav04 a {
        background-color: rgb(254, 242, 228);
    }

    body.l05 .lnav05 a {
        background-color: rgb(254, 242, 228);
    }

    body.l06 .lnav06 a {
        background-color: rgb(254, 242, 228);
    }

    body.l07 .lnav07 a {
        background-color: rgb(254, 242, 228);
    }

    body.l08 .lnav08 a {
        background-color: rgb(254, 242, 228);
    }

    body.l09 .lnav09 a {
        background-color: rgb(254, 242, 228);
    }

    body.l10 .lnav10 a {
        background-color: rgb(254, 242, 228);
    }

    .nav-local a.is-current {
        background-color: rgb(254, 242, 228);
    }
}

.nav-local-banner {
    margin: 20px auto 0px;
}

@media screen and (max-width:768px) {
    .nav-local-banner {
        margin: 20px auto 0px;
        text-align: center;
    }
}

.nav-breadcrumb {
    padding: 5px 0px;
    margin-bottom: 50px;
    border-bottom-color: rgb(218, 218, 218);
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.nav-breadcrumb-in {
    margin: 0px auto;
    width: 1200px;
    text-align: left;
    overflow: hidden;
}

.nav-breadcrumb li {
    padding: 0px 22px;
    color: rgb(118, 118, 118);
    font-size: 14px;
    float: left;
    white-space: nowrap;
    position: relative;
}

    .nav-breadcrumb li::before {
        left: 0px;
        vertical-align: middle;
        display: inline-block;
        position: absolute;
        content: "/";
    }

    .nav-breadcrumb li.home {
        padding: 0px 14px 0px 10px;
    }

        .nav-breadcrumb li.home::before {
            display: none;
        }

    .nav-breadcrumb li a {
        color: rgb(118, 118, 118);
    }

@media screen and (max-width:1500px) and (min-width:769px) {
    .nav-breadcrumb-in {
        width: 1000px;
    }
}

@media screen and (max-width:768px) {
    .nav-breadcrumb {
        padding: 6px 0px;
        margin-bottom: 20px;
    }

    .nav-breadcrumb-in {
        padding: 0px 20px;
        width: 100%;
    }

    .nav-breadcrumb li {
        padding: 0px 14px;
        font-size: 11px;
    }

        .nav-breadcrumb li.home {
            padding: 0px 14px 0px 0px;
        }

        .nav-breadcrumb li::before {
            top: -1px;
        }
}

.contents {
    margin: 0px auto 100px;
    width: 1200px;
    text-align: left;
}

.top.contents {
    width: 100%;
    margin-bottom: 0px;
    min-width: inherit;
    max-width: 1500px;
}

.contents-main {
    width: 780px;
    float: right;
}

.contents-sub {
    width: 360px;
    float: left;
}

.contents-aside .contents-main {
    float: left;
}

.contents-aside .contents-sub {
    float: right;
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .contents {
        width: 1000px;
    }

    .contents-main {
        width: 640px;
    }

    .contents-sub {
        width: 300px;
    }
}

@media screen and (max-width:768px) {
    .contents {
        margin-bottom: 65px;
    }

    .contents {
        width: 100%;
        min-width: inherit;
    }

    .top.contents {
        width: 100%;
        min-width: inherit;
    }

    .contents-main {
        width: 100%;
        min-width: inherit;
    }

    .contents-sub {
        width: 100%;
        min-width: inherit;
    }

    .contents-sub-in {
        padding: 0px 20px;
    }

    .contents-aside {
        margin-bottom: 50px;
    }

        .contents-aside + .nav-local {
            margin: 0px 0px 65px;
        }

    .contents-main :last-of-type.sec-cmn-01 {
        padding-bottom: 25px;
        margin-bottom: 25px;
        border-bottom-color: rgb(150, 150, 150);
        border-bottom-width: 1px;
        border-bottom-style: solid;
    }
}

.contents-with-features {
}

@media screen and (max-width:768px) {
    .contents-with-features {
        margin-bottom: 20px;
    }
}

.footer {
    width: 100%;
    border-top-color: rgb(215, 215, 215);
    border-top-width: 1px;
    border-top-style: solid;
    position: relative;
    min-width: 1200px;
    background-color: rgb(255, 255, 255);
}

body#g01 .footer {
    border-top-color: currentColor;
    border-top-width: medium;
    border-top-style: none;
}

.footer-in {
    margin: 0px auto;
    width: 1200px;
    text-align: left;
}

.footer a {
    transition: 0.2s;
    color: rgb(29, 29, 29);
    display: inline-block;
    transform: translateZ(0px);
    backface-visibility: hidden;
    -webkit-transition: all .2s ease 0s;
    -webkit-transform: translateZ(0);
    -webkit-backface-visibility: hidden;
}

    .footer a:hover {
        text-decoration: none;
        opacity: 0.5;
    }

.footer-utility {
    padding: 62px 0px 127px;
}

.footer-ttl {
    padding-bottom: 16px;
    font-size: 18px;
    font-weight: bold;
    border-bottom-color: rgb(215, 215, 215);
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.footer-ttl-group {
    margin-bottom: 50px;
}

.footer-ttl-bnr {
    border-bottom-color: currentColor;
    border-bottom-width: medium;
    border-bottom-style: none;
}

.footer-links {
    margin: 25px 0px 45px;
    padding-left: 20px;
}

    .footer-links li {
        font-size: 16px;
        margin-top: 15px;
    }

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

.footer-grid-col {
    width: 280px;
}

.footer-grid-banner.footer-grid-col {
    width: 796px;
}

.footer-banner {
    overflow: hidden;
    padding-top: 17px;
}

    .footer-banner .footer-banner-row {
        margin: 0px -8px;
        display: flex;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
    }

        .footer-banner .footer-banner-row .footer-banner-col {
            margin: 0px 8px;
            flex: 0 1 auto;
            -webkit-flex: 0 1 auto;
        }

            .footer-banner .footer-banner-row .footer-banner-col .footer-banner-link {
                flex-flow: column wrap;
                display: flex;
                transform: translate3d(0px, 0px, 0px);
                -webkit-flex-wrap: wrap;
                -webkit-transform: translate3d(0, 0, 0);
                -webkit-flex-direction: column;
            }

            .footer-banner .footer-banner-row .footer-banner-col .footer-banner-img {
                transform: translate3d(0px, 0px, 0px) rotate(0.1deg);
                -webkit-transform: translate3d(0, 0, 0) rotate(0.1deg);
            }

            .footer-banner .footer-banner-row .footer-banner-col .footer-banner-ttl {
                transform: translate3d(0px, 0px, 0px);
                -webkit-transform: translate3d(0, 0, 0);
            }

            .footer-banner .footer-banner-row .footer-banner-col .footer-banner-ttl {
                font-size: 14px;
                font-weight: bold;
                margin-bottom: 10px;
                display: inline-block;
            }

            .footer-banner .footer-banner-row .footer-banner-col .ico-blank-01.footer-banner-ttl::after {
                top: 1px;
                position: absolute;
                transform: translate3d(0px, 0px, 0px) rotate(0.1deg);
                -webkit-transform: translate3d(0, 0, 0) rotate(0.1deg);
            }

            .footer-banner .footer-banner-row .footer-banner-col .footer-banner-img {
                display: block;
                max-width: 185px;
            }

.footer-nav-wrap {
    position: relative;
}

.footer-nav {
    padding: 14px 0px;
    background-color: rgb(43, 43, 43);
}

    .footer-nav li {
        margin-left: 50px;
        display: inline;
    }

        .footer-nav li:first-child {
            margin-left: 0px;
        }

        .footer-nav li a {
            color: rgb(255, 255, 255);
        }

.footer-copyright {
    padding: 5px 0px;
}

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

@media screen and (max-width:1500px) and (min-width:769px) {
    .footer-in {
        width: 1100px;
    }

    .footer-ttl {
        font-size: 16px;
    }

    .footer-links li {
        font-size: 13px;
        margin-top: 6px;
    }

    .footer-grid-col {
        width: 260px;
    }

    .footer-banner .footer-banner-row .footer-banner-col .footer-banner-ttl {
        font-size: 13px;
    }

    .footer-banner .footer-banner-row .footer-banner-col .footer-banner-img {
        display: block;
        max-width: 180px;
    }
}

@media screen and (max-width:768px) {
    .footer {
        min-width: inherit;
    }

    .footer-in {
        padding: 0px 20px;
        width: 100%;
    }

    .footer-nav {
        padding: 17px 0px;
    }

        .footer-nav ul {
            display: flex;
            justify-content: space-between;
        }

        .footer-nav li {
            font-size: 10px;
            margin-left: 0px;
        }

    .footer-copyright {
        padding: 8px 0px;
    }

    .footer-copyright-txt {
        text-align: center;
        font-size: 10px;
    }
}

.grid-two {
    margin: 15px 0px 0px;
    display: flex;
    flex-wrap: wrap;
}

    .grid-two > .col {
        padding: 0px 10px;
        width: 50%;
        margin-bottom: 20px;
    }

    .grid-two .title-C {
        margin-top: 4px;
        margin-bottom: 18px;
        display: inline-block;
    }

@media screen and (max-width:768px) {
    .grid-two {
        margin: 0px;
        flex-direction: column;
    }

        .grid-two > .col {
            padding: 0px;
            width: 100%;
            margin-bottom: 10px;
        }

        .grid-two .title-C {
            margin-bottom: 10px;
        }
}

.grid-two-full {
    overflow: hidden;
}

    .grid-two-full > .row {
        margin: -40px -30px 0px;
        display: flex;
        position: relative;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
    }

        .grid-two-full > .row > .col {
            padding: 0px 30px;
            width: 50%;
            margin-top: 40px;
            position: relative;
        }

            .grid-two-full > .row > .col .link-img {
            }

                .grid-two-full > .row > .col .link-img .image_wrap {
                    transition: 0.3s ease-in-out;
                    width: 100%;
                    position: relative;
                    -webkit-transition: .3s ease-in-out;
                    -o-transition: .3s ease-in-out;
                }

                    .grid-two-full > .row > .col .link-img .image_wrap .image {
                        width: 100%;
                    }

                .grid-two-full > .row > .col .link-img:hover .image_wrap {
                    opacity: 0.5;
                }

            .grid-two-full > .row > .col .link-txt {
                color: rgb(29, 29, 29);
                display: inline-block;
            }

                .grid-two-full > .row > .col .link-txt .text {
                    padding-left: 20px;
                    margin-top: 12px;
                    position: relative;
                }

                    .grid-two-full > .row > .col .link-txt .text::before {
                        border-width: 5px 0px 5px 9px;
                        border-style: solid;
                        border-color: transparent transparent transparent rgb(225, 128, 7);
                        left: 0px;
                        top: 6px;
                        width: 0px;
                        height: 0px;
                        position: absolute;
                        content: "";
                    }

@media screen and (max-width:1500px) and (min-width:769px) {
    .grid-two-full > .row {
        margin: -40px -15px 0px;
    }

        .grid-two-full > .row > .col {
            padding: 0px 15px;
        }
}

@media screen and (max-width:768px) {
    .grid-two-full > .row {
        margin: -22px -10px 0px;
        padding-top: 0px;
    }

        .grid-two-full > .row > .col {
            padding: 0px 10px;
            width: 100%;
            margin-top: 22px;
        }

            .grid-two-full > .row > .col .link-txt .text {
                padding-left: 15px;
                font-size: 14px;
                margin-top: 11px;
            }

                .grid-two-full > .row > .col .link-txt .text::before {
                    border-width: 3.5px 0px 3.5px 7px;
                    top: 6px;
                }
}

.grid-three-full {
    overflow: hidden;
}

    .grid-three-full > .row {
        margin: -40px -15px 0px;
        display: flex;
        position: relative;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
    }

        .grid-three-full > .row > .col {
            padding: 0px 15px;
            width: 33.33%;
            margin-top: 40px;
            position: relative;
        }

            .grid-three-full > .row > .col .link-img {
            }

                .grid-three-full > .row > .col .link-img .image_wrap {
                    transition: 0.3s ease-in-out;
                    width: 100%;
                    position: relative;
                    -webkit-transition: .3s ease-in-out;
                    -o-transition: .3s ease-in-out;
                }

                    .grid-three-full > .row > .col .link-img .image_wrap .image {
                        width: 100%;
                    }

                .grid-three-full > .row > .col .link-img:hover .image_wrap {
                    opacity: 0.5;
                }

            .grid-three-full > .row > .col .link-txt {
                color: rgb(29, 29, 29);
                display: inline-block;
            }

                .grid-three-full > .row > .col .link-txt .text {
                    padding-left: 20px;
                    margin-top: 12px;
                    position: relative;
                }

                    .grid-three-full > .row > .col .link-txt .text::before {
                        border-width: 5px 0px 5px 9px;
                        border-style: solid;
                        border-color: transparent transparent transparent rgb(225, 128, 7);
                        left: 0px;
                        top: 6px;
                        width: 0px;
                        height: 0px;
                        position: absolute;
                        content: "";
                    }

@media screen and (max-width:1500px) and (min-width:769px) {
    .grid-three-full > .row {
        margin: -40px -15px 0px;
    }

        .grid-three-full > .row > .col {
            padding: 0px 15px;
        }
}

@media screen and (max-width:768px) {
    .grid-three-full > .row {
        margin: -22px -10px 0px;
        padding-top: 0px;
    }

        .grid-three-full > .row > .col {
            padding: 0px 10px;
            width: 50%;
            margin-top: 22px;
        }

            .grid-three-full > .row > .col .link-txt .text {
                padding-left: 15px;
                font-size: 14px;
                margin-top: 11px;
            }

                .grid-three-full > .row > .col .link-txt .text::before {
                    border-width: 3.5px 0px 3.5px 7px;
                    top: 6px;
                }
}

.grid-three-flat {
    overflow: hidden;
}

    .grid-three-flat > .row {
        margin: -40px -30px 0px;
        display: flex;
        position: relative;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
    }

        .grid-three-flat > .row > .col {
            padding: 0px 5px;
            width: 33.33%;
            margin-top: 40px;
            position: relative;
        }

            .grid-three-flat > .row > .col figure {
                display: block;
            }

            .grid-three-flat > .row > .col figcaption {
                display: block;
            }

            .grid-three-flat > .row > .col figure img {
                width: 100%;
            }

@media screen and (max-width:768px) {
    .grid-three-flat > .row {
        margin: -22px -10px 0px;
        padding-top: 0px;
    }

        .grid-three-flat > .row > .col {
            padding: 0px 10px;
            width: 100%;
            margin-top: 22px;
        }
}

.grid-four-full {
    overflow: hidden;
}

    .grid-four-full > .row {
        margin: -40px -30px 0px;
        display: flex;
        position: relative;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
    }

        .grid-four-full > .row > .col {
            padding: 0px 30px;
            width: 25%;
            margin-top: 40px;
            position: relative;
        }

            .grid-four-full > .row > .col .link-img {
            }

                .grid-four-full > .row > .col .link-img .image_wrap {
                    transition: 0.3s ease-in-out;
                    width: 100%;
                    position: relative;
                    -webkit-transition: .3s ease-in-out;
                    -o-transition: .3s ease-in-out;
                }

                    .grid-four-full > .row > .col .link-img .image_wrap .image {
                        width: 100%;
                    }

                .grid-four-full > .row > .col .link-img:hover .image_wrap {
                    opacity: 0.5;
                }

            .grid-four-full > .row > .col .link-txt {
                color: rgb(29, 29, 29);
                display: inline-block;
            }

                .grid-four-full > .row > .col .link-txt .text {
                    padding-left: 20px;
                    margin-top: 12px;
                    position: relative;
                }

                    .grid-four-full > .row > .col .link-txt .text::before {
                        border-width: 5px 0px 5px 9px;
                        border-style: solid;
                        border-color: transparent transparent transparent rgb(225, 128, 7);
                        left: 0px;
                        top: 6px;
                        width: 0px;
                        height: 0px;
                        position: absolute;
                        content: "";
                    }

@media screen and (max-width:1500px) and (min-width:769px) {
    .grid-four-full > .row {
        margin: -40px -15px 0px;
    }

        .grid-four-full > .row > .col {
            padding: 0px 15px;
        }
}

@media screen and (max-width:768px) {
    .grid-four-full > .row {
        margin: -22px -10px 0px;
        padding-top: 0px;
    }

        .grid-four-full > .row > .col {
            padding: 0px 10px;
            width: 100%;
            margin-top: 22px;
        }

            .grid-four-full > .row > .col .link-txt .text {
                padding-left: 15px;
                font-size: 14px;
                margin-top: 11px;
            }

                .grid-four-full > .row > .col .link-txt .text::before {
                    border-width: 3.5px 0px 3.5px 7px;
                    top: 6px;
                }
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .sec-cmn {
        margin: 0px auto;
        width: 100%;
        max-width: 1100px;
    }
}

.sec-cmn-01 {
    padding-bottom: 40px;
    margin-bottom: 40px;
    border-bottom-color: rgb(150, 150, 150);
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

:last-of-type.sec-cmn-01 {
    padding-bottom: 0px;
    margin-bottom: 0px;
    border-bottom-color: currentColor;
    border-bottom-width: medium;
    border-bottom-style: none;
}

.no-border.sec-cmn-01 {
    padding-bottom: 0px !important;
    margin-bottom: 0px !important;
    border-bottom-color: currentColor !important;
    border-bottom-width: medium !important;
    border-bottom-style: none !important;
}

@media screen and (max-width:768px) {
    .sec-cmn-01 {
        padding-bottom: 15px;
        margin-bottom: 25px;
    }
}

.sec-cmn-02 {
    margin-bottom: 50px;
}

@media screen and (max-width:768px) {
    .sec-cmn-02 {
        margin-bottom: 25px;
    }
}

.sec-cmn-03 {
    margin-bottom: 50px;
}

:last-of-type.sec-cmn-03 {
    margin-bottom: 50px;
}

@media screen and (max-width:768px) {
    .sec-cmn-03 {
        margin-bottom: 25px;
    }

    :last-of-type.sec-cmn-03 {
        margin-bottom: 25px;
    }
}

@media screen and (max-width:768px) {
    .sec-cmn-in {
        padding: 0px 20px;
    }
}

.area-features {
    padding: 50px 0px;
    background-color: rgb(242, 242, 242);
}

.s-bd-t.area-features {
    border-top-color: rgb(215, 215, 215);
    border-top-width: 1px;
    border-top-style: solid;
}

.area-features-in {
    margin: 0px auto;
    width: 1200px;
    text-align: left;
}

.grid-five {
    display: flex;
    justify-content: space-between;
}

    .grid-five .col {
        width: 230px;
    }

.grid-three {
    display: flex;
    justify-content: space-between;
}

    .grid-three .col {
        width: 360px;
    }

.image-txt-05 {
}

    .image-txt-05 a {
        color: rgb(29, 29, 29);
    }

    .image-txt-05 img {
        width: 100%;
        height: auto;
        margin-bottom: 9px;
    }

    .image-txt-05 .txt {
        line-height: 1.8;
        letter-spacing: -0.05em;
        padding-left: 15px;
        font-weight: bold;
        position: relative;
    }

        .image-txt-05 .txt::before {
            left: 0px;
            top: 0px;
            width: 5px;
            height: 100%;
            position: absolute;
            content: "";
            background-color: rgb(225, 128, 7);
        }

@media screen and (max-width:1500px) and (min-width:769px) {
    .area-features-in {
        width: 1100px;
    }

    .grid-five .col {
        width: 205px;
    }

    .grid-three .col {
        width: 340px;
    }

    .image-txt-05 .txt {
        font-weight: normal;
    }
}

@media screen and (max-width:768px) {
    .area-features {
        padding: 25px 0px;
    }

        .area-features + .nav-local {
            margin: 0px 0px 65px;
        }

    .area-features-in {
        padding: 0px 20px;
        width: 100%;
    }

    .grid-five {
        margin: 0px -10px;
        flex-wrap: wrap;
    }

        .grid-five .col {
            padding: 0px 10px;
            width: 50%;
            margin-top: 27px;
        }

        .grid-five :nth-child(1).col {
            margin-top: 0px;
        }

        .grid-five :nth-child(2).col {
            margin-top: 0px;
        }

    .grid-three {
        flex-direction: column;
    }

        .grid-three .col {
            width: 100%;
            margin-top: 10px;
        }

        .grid-three :first-child.col {
            margin-top: 0px;
        }

    .image-txt-05 {
    }

        .image-txt-05 .txt {
            padding: 0px 12px;
            font-size: 11px;
        }
}

.sec-inner-01 {
    margin: 0px auto;
    width: 100%;
    max-width: 1300px;
}

.sec-inner-02 {
    margin: 0px auto;
    width: 100%;
    max-width: 1200px;
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .sec-inner-01 {
        margin: 0px auto;
        width: 100%;
        max-width: 1000px;
    }
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .sec-inner-02 {
        margin: 0px auto;
        width: 100%;
        max-width: 960px;
    }
}

@media screen and (max-width:768px) {
    .sec-inner-01 {
        margin: 0px 20px;
        width: auto;
    }

    .sec-inner-02 {
        margin: 0px 20px;
        width: auto;
    }
}

section:last-of-type {
    margin-bottom: 0px;
}

.box-cmn-01 {
    margin: -3px 0px;
}

@media screen and (max-width:768px) {
    .box-cmn-01 {
        margin: 0px;
    }
}

.box-frame-01 {
    padding: 18px 25px;
    border: 1px solid rgb(220, 220, 220);
    border-image: none;
}

@media screen and (max-width:768px) {
    .box-frame-01 {
        padding: 10px;
    }
}

.box-frame-gray {
    margin: 50px auto 0px;
    border: 1px solid rgb(242, 242, 242);
    border-image: none;
    width: 100%;
    max-width: 830px;
}

    .box-frame-gray .box-frame-inner {
        background: rgb(242, 242, 242);
        margin: 3px;
        padding: 20px 0px;
        display: flex;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
    }

        .box-frame-gray .box-frame-inner .box-frame-title {
            padding: 10px 20px;
            flex: 0 1 auto;
            width: 180px;
            display: flex;
            justify-content: center;
            align-items: center;
            -ms-align-items: center;
            -webkit-flex: 0 1 auto;
        }

            .box-frame-gray .box-frame-inner .box-frame-title .title-C {
                margin-bottom: 0px;
            }

        .box-frame-gray .box-frame-inner .box-frame-body {
            padding: 5px 20px;
            flex: 1 1 0px;
            border-left-color: rgb(213, 213, 213);
            border-left-width: 1px;
            border-left-style: solid;
            -webkit-flex: 1;
        }

@media screen and (max-width:1500px) and (min-width:769px) {
    .box-frame-gray {
        max-width: 780px;
    }
}

@media screen and (max-width:768px) {
    .box-frame-gray {
        width: auto;
        margin-top: 25px;
        max-width: 100%;
    }

        .box-frame-gray .box-frame-inner {
            padding: 20px 0px;
        }

            .box-frame-gray .box-frame-inner .box-frame-title {
                padding: 0px 20px 10px;
                width: 100%;
            }

            .box-frame-gray .box-frame-inner .box-frame-body {
                margin: 0px 20px;
                padding: 15px 0px 0px;
                border-top-color: rgb(213, 213, 213);
                border-left-color: currentColor;
                border-top-width: 1px;
                border-left-width: medium;
                border-top-style: solid;
                border-left-style: none;
            }
}

.box-cmn-caption {
    width: 100%;
    height: 100px;
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center;
    background-color: rgb(27, 27, 27);
    -ms-align-items: center;
}

    .box-cmn-caption > .txt-caption {
        color: rgb(255, 255, 255);
        font-family: "�q���M�m���� Pro", "Hiragino Mincho Pro", "��������", "Yu Mincho", YuMincho, serif;
        font-size: 30px;
    }

        .box-cmn-caption > .txt-caption span {
            color: rgb(225, 128, 7);
        }

    .box-cmn-caption > .btn-cmn-01 {
        margin-left: 30px;
    }

@media screen and (max-width:1500px) and (min-width:769px) {
    .box-cmn-caption {
        height: 70px;
    }

        .box-cmn-caption > .txt-caption {
            font-size: 26px;
        }
}

@media screen and (max-width:768px) {
    .box-cmn-caption {
        height: 57px;
    }

        .box-cmn-caption > .txt-caption {
            font-size: 20px;
        }

        .box-cmn-caption > .btn-cmn-01 {
            margin-left: 16px;
        }
}

.box-ir-analyst .fig-cmn-01 .img-cmn-adjust {
    width: auto;
}

.txt-image {
    margin-bottom: 30px;
    display: flex;
    justify-content: space-between;
}

.txt-image-full.txt-image {
    width: 780px;
    margin-right: auto;
    margin-left: auto;
}

.txt-image .txt {
    width: 430px;
}

.txt-image .txt-flex.txt {
    flex: 1 1 0px;
    margin-right: 35px;
}

.txt-image .img {
    width: 315px;
}

.txt-image .img-w180.img {
    width: 180px;
}

.txt-image .img-auto.img {
    width: auto;
    max-width: 100%;
}

.txt-image .img img {
    width: 100%;
    height: auto;
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .txt-image-full.txt-image {
        width: 660px;
    }

    .txt-image .txt {
        width: 360px;
    }

    .txt-image .img {
        width: 260px;
    }

    .txt-image .img-auto.img {
        width: auto;
        max-width: 100%;
    }
}

@media screen and (max-width:768px) {
    .txt-image {
        margin-bottom: 30px;
        flex-direction: column;
    }

    .txt-image-full.txt-image {
        width: auto;
    }

    .txt-image .txt-flex.txt {
        flex: 1 1 100%;
        margin-right: 0px;
    }

    .txt-image .txt {
        margin: 0px;
        width: 100%;
    }

    .txt-image .img {
        width: 100%;
        padding-top: 20px;
    }

    .txt-image .img-w180.img {
        margin-right: auto;
        margin-left: auto;
    }

    .txt-image .img-auto.img {
        width: auto;
        margin-right: auto;
        margin-left: auto;
        max-width: 100%;
    }

    .swap.txt-image .img {
        padding-top: 0px;
    }

    .swap.txt-image .txt {
        padding-top: 17px;
    }
}

.hero-cmn {
    padding: 0px 0px;
    border-bottom-color: white;
    border-bottom-width: 8px;
    border-bottom-style: solid;
}

.hero-cmn-in {
    margin: 20px auto;
    /*width: 1200px;*/
    width: 100%;
    text-align: left;
    overflow: hidden;
}

.hero-cmn .title {
    /*font-family: "�q���M�m���� Pro", "Hiragino Mincho Pro", "��������", "Yu Mincho", YuMincho, serif;*/
    font-size: 38px;
    font-weight: bold;
    vertical-align: middle;
    display: inline-block;
}

.hero-cmn .txt {
    color: rgb(225, 128, 7);
    font-size: 20px;
    margin-left: 10px;
    vertical-align: middle;
    display: inline-block;
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .hero-cmn-in {
        width: 1000px;
    }

    .hero-cmn .title {
        font-size: 30px;
    }

    .hero-cmn .txt {
        font-size: 16px;
    }
}

@media screen and (max-width:768px) {
    .hero-cmn {
        padding: 0px 0px;
        /* border-bottom-color: rgb(225, 128, 7); */
        border-bottom-color: #fff;
        border-bottom-width: 8px;
        border-bottom-style: solid;
    }

    .hero-cmn-in {
        padding: 0px 20px;
        width: 100%;
    }

    .hero-cmn .title {
        font-size: 22px;
    }

    .hero-cmn .txt {
        font-size: 14px;
    }
}

.image-txt {
}

    .image-txt li {
        margin-top: 30px;
    }

        .image-txt li:first-child {
            margin-top: 0px;
        }

    .image-txt a {
        color: rgb(29, 29, 29);
        font-size: 20px;
        display: block;
    }

    .image-txt span {
        color: rgb(29, 29, 29);
        font-size: 20px;
        display: block;
    }

    .image-txt span {
        display: inline;
    }

    .image-txt img {
        width: 100%;
        height: auto;
        margin-bottom: 10px;
    }

    .image-txt a:hover {
        text-decoration: none;
    }

        .image-txt a:hover span {
            border-bottom-color: rgb(0, 0, 0);
            border-bottom-width: 1px;
            border-bottom-style: solid;
        }

@media screen and (max-width:1500px) and (min-width:769px) {
    .image-txt a {
        font-size: 14px;
    }

    .image-txt span {
        font-size: 14px;
    }
}

@media screen and (max-width:768px) {
    .image-txt li {
        margin-top: 27px;
    }

    .image-txt a {
        font-size: 13px;
    }

    .image-txt span {
        font-size: 13px;
    }
}

.ttl-cmn-01 {
}

.ttl-cmn-02 {
}

.ttl-cmn-03 {
    line-height: 1.2;
    font-size: 40px;
    margin-bottom: 30px;
}

@media screen and (max-width:768px) {
    .ttl-cmn-03 {
        line-height: 1.2;
        font-size: 28px;
        margin-bottom: 20px;
    }
}

.title-A {
    margin-bottom: 35px;
    transform: translateY(-5px);
    -webkit-transform: translateY(-5px);
}

    .title-A .txt {
        color: rgb(225, 128, 7);
        margin-bottom: 4px;
        display: block;
    }

    .title-A .ttl {
        font-family: "�q���M�m���� Pro", "Hiragino Mincho Pro", "��������", "Yu Mincho", YuMincho, serif;
        font-size: 25px;
    }

@media screen and (max-width:1500px) and (min-width:769px) {
    .title-A .ttl {
        font-size: 23px;
    }
}

@media screen and (max-width:768px) {
    .title-A {
        margin-bottom: 20px;
        transform: translateY(-3px);
        -webkit-transform: translateY(-3px);
    }

        .title-A .txt {
            font-size: 11px;
            margin-bottom: 7px;
        }

        .title-A .ttl {
            font-size: 18px;
        }
}

.title-B {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 5px;
    transform: translateY(-5px);
    -webkit-transform: translateY(-5px);
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .title-B {
        font-size: 16px;
    }
}

@media screen and (max-width:768px) {
    .title-B {
        font-size: 14px;
        margin-bottom: 15px;
    }
}

.title-B .date {
    font-size: 77%;
    font-weight: normal;
    margin-left: 0.5em;
}

.title-C {
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 25px;
}

    .title-C a {
        color: rgb(29, 29, 29);
        display: inline-block;
    }

@media screen and (max-width:768px) {
    .title-C {
        margin-bottom: 10px;
    }
}

.title-D {
    color: rgb(225, 128, 7);
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 20px;
}

@media screen and (max-width:768px) {
    .title-D {
        margin-bottom: 15px;
    }
}

.title-E {
    margin-bottom: 25px;
}

    .title-E .txt {
        font-size: 25px;
        margin-bottom: 6px;
        display: block;
    }

    .title-E .ttl {
        color: rgb(225, 128, 7);
        font-size: 30px;
        font-weight: bold;
    }

@media screen and (max-width:1500px) and (min-width:769px) {
    .title-E .txt {
        font-size: 16px;
    }

    .title-E .ttl {
        font-size: 25px;
    }
}

@media screen and (max-width:768px) {
    .title-E {
        margin-bottom: 20px;
        transform: translateY(-3px);
        -webkit-transform: translateY(-3px);
    }

        .title-E .txt {
            font-size: 12px;
            margin-bottom: 7px;
        }

        .title-E .ttl {
            font-size: 20px;
        }
}

.title-F {
    padding: 10px 20px;
    color: rgb(255, 255, 255);
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 20px;
    background-color: rgb(225, 128, 7);
}

@media screen and (max-width:768px) {
    .title-F {
        margin-bottom: 15px;
    }
}

.title-G {
    padding: 10px 20px 9px;
    color: rgb(255, 255, 255);
    font-size: 16px;
    margin-bottom: 15px;
    background-color: rgb(82, 112, 200);
}

    .title-G a {
        color: rgb(255, 255, 255);
        padding-left: 1.2em;
        position: relative;
    }

        .title-G a::before {
            border-width: 5px 0px 5px 9px;
            border-style: solid;
            border-color: transparent transparent transparent rgb(255, 255, 255);
            left: 0px;
            top: 4.5px;
            width: 0px;
            height: 0px;
            position: absolute;
            content: "";
        }

@media screen and (max-width:768px) {
    .title-G {
        padding: 4% 3.5%;
        font-size: 15px;
        margin-top: 20px;
        margin-bottom: 15px;
    }
}

.txt-require {
    width: 50px;
    text-align: center;
    color: rgb(255, 255, 255);
    font-size: 14px;
    margin-top: 10px;
    display: inline-block;
    background-color: rgb(198, 58, 58);
}

@media screen and (max-width:768px) {
    .txt-require {
        top: 10px;
        width: 50px;
        right: 10px;
        font-size: 13px;
        margin-top: 0px;
        position: absolute;
    }
}

.txt-A {
    line-height: 1.7;
    margin-bottom: 30px;
}

@media screen and (max-width:768px) {
    .txt-A {
        margin-bottom: 15px;
    }
}

.txt-indent-01 {
    text-indent: 1em;
    display: block;
}

.txt-notes-dl {
    overflow: hidden;
    font-size: 12px;
}

    .txt-notes-dl dt {
        width: 4em;
        float: left;
    }

    .txt-notes-dl dd {
        overflow: hidden;
    }

.table-item + .txt-notes-dl {
    margin-top: 1em;
}

.txt-notes-dl-02 {
    overflow: hidden;
    font-size: 12px;
}

    .txt-notes-dl-02 dt {
        width: 2em;
        float: left;
    }

    .txt-notes-dl-02 dd {
        overflow: hidden;
    }

.txt-notice {
    color: rgb(226, 66, 66);
    font-weight: bold;
}

.list-cmn-01 {
    margin: 0px 35px 35px;
}

    .list-cmn-01 li {
        padding: 15px 0px;
        border-bottom-color: rgb(180, 180, 180);
        border-bottom-width: 1px;
        border-bottom-style: dotted;
        display: flex;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
    }

        .list-cmn-01 li .box-head {
            flex: 0 1 auto;
            display: flex;
            flex-wrap: wrap;
            -webkit-flex-wrap: wrap;
            -webkit-flex: 0 1 auto;
        }

            .list-cmn-01 li .box-head .date {
                font-size: 15px;
                font-weight: bold;
            }

            .list-cmn-01 li .box-head .tag-cmn {
                margin-left: 24px;
            }

        .list-cmn-01 li .box-detail {
            flex: 1 1 0px;
            -webkit-flex: 1;
        }

            .list-cmn-01 li .box-detail .link-detail {
                color: rgb(29, 29, 29);
                font-size: 15px;
            }

@media screen and (max-width:1500px) and (min-width:769px) {
    .list-cmn-01 li .box-head .date {
        font-size: 14px;
    }

    .list-cmn-01 li .box-detail .link-detail {
        font-size: 14px;
    }
}

.list-cmn-02 {
    padding-left: 20px;
    margin-top: 15px;
}

    .list-cmn-02 dt {
    }

    .list-cmn-02 dd {
        padding: 8px 0px;
        margin-bottom: 10px;
    }

        .list-cmn-02 dd:last-child {
            margin-bottom: 0px;
        }

@media screen and (max-width:768px) {
    .list-cmn-02 {
        padding-left: 15px;
        margin-top: 10px;
    }
}

.list-news {
    margin-bottom: 35px;
}

    .list-news dt {
        width: 120px;
        clear: both;
        float: left;
    }

    .list-news dd {
        padding: 0px 0px 20px 120px;
        margin-bottom: 20px;
        border-bottom-color: rgb(168, 168, 168);
        border-bottom-width: 1px;
        border-bottom-style: dotted;
    }

        .list-news dd:first-of-type {
            padding-bottom: 20px;
        }

        .list-news dd a {
            color: rgb(29, 29, 29);
        }

@media screen and (max-width:1500px) and (min-width:769px) {
    .list-news dt {
        width: 100px;
    }

    .list-news dd {
        padding: 0px 0px 20px 100px;
    }
}

@media screen and (max-width:768px) {
    .list-news {
        line-height: 1.85;
        margin-bottom: 25px;
    }

        .list-news dt {
            padding: 15px 0px 0px;
            width: 100%;
            font-weight: bold;
            float: none;
        }

        .list-news dd {
            padding: 10px 0px 15px;
            margin-bottom: 0px;
        }
}

.list-news-noborder.list-news {
    padding: 6px 0px;
    margin-bottom: 0px;
}

    .list-news-noborder.list-news dd {
        margin-bottom: 0px;
        border-bottom-color: currentColor;
        border-bottom-width: medium;
        border-bottom-style: none;
    }

.list-news dd p + p {
    margin-top: 0.5em;
}

.list-disc {
    padding: 10px 0px;
}

    .list-disc li {
        padding: 3px 0px 8px 20px;
        position: relative;
    }

        .list-disc li::before {
            border-radius: 10px;
            left: 0px;
            top: 8px;
            width: 10px;
            height: 10px;
            position: absolute;
            content: "";
            background-color: rgb(243, 139, 10);
        }

@media screen and (max-width:768px) {
    .list-disc {
        padding: 0px;
    }

        .list-disc li {
            padding: 0px 0px 0px 15px;
        }

            .list-disc li::before {
                top: 8px;
                width: 5px;
                height: 5px;
            }
}

.list-orange {
    margin-left: 20px;
}

    .list-orange li {
        padding: 4px 0px 4px 20px;
        margin-top: 5px;
        position: relative;
    }

        .list-orange li:first-child {
            margin-top: 0px;
        }

        .list-orange li::before {
            border-width: 5px 0px 5px 9px;
            border-style: solid;
            border-color: transparent transparent transparent rgb(243, 138, 10);
            left: 0px;
            top: 10px;
            width: 0px;
            height: 0px;
            position: absolute;
            content: "";
        }

@media screen and (max-width:768px) {
    .list-orange {
        margin-left: 0px;
    }

        .list-orange li {
            padding: 15px 12px 15px 25px;
            font-size: 13px;
            background-color: rgb(255, 239, 218);
        }

            .list-orange li::before {
                border-width: 3px 0px 3px 6px;
                left: 12px;
                top: 20px;
            }
}

.list-decimal-A {
    list-style: none;
    padding: 0px 20px;
    counter-reset: my-number-counter;
}

    .list-decimal-A > li {
        line-height: 1.78;
        padding-left: 35px;
        margin-top: 13px;
        position: relative;
        counter-increment: my-number-counter;
    }

        .list-decimal-A > li:first-child {
            margin-top: 0px;
        }

        .list-decimal-A > li::before {
            left: 0px;
            top: 0px;
            position: absolute;
            content: "(" counter(my-number-counter) ")";
        }

[start='2'].list-decimal-A {
    counter-reset: my-number-counter 1;
}

@media screen and (max-width:768px) {
    .list-decimal-A {
        padding: 0px;
    }

        .list-decimal-A > li {
            padding-left: 25px;
            margin-top: 10px;
        }
}

.list-decimal-B {
    list-style: none;
    padding: 0px 20px;
    counter-reset: my-number-counter;
}

    .list-decimal-B > li {
        line-height: 1.78;
        padding-left: 35px;
        margin-top: 13px;
        position: relative;
        counter-increment: my-number-counter;
    }

        .list-decimal-B > li:first-child {
            margin-top: 0px;
        }

        .list-decimal-B > li::before {
            left: 0px;
            top: 0px;
            position: absolute;
            content: counter(my-number-counter) ".";
        }

    .list-decimal-B .list-decimal-A {
        padding: 0px;
    }

.mg-guideline.list-decimal-B {
    margin: 20px 0px 0px;
    padding: 0px;
}

[start='2'].list-decimal-A {
    margin: 20px 0px 0px;
    padding: 0px;
}

.guideline-col .list-decimal-B {
    margin: 20px 0px 0px;
    padding: 0px;
}

@media screen and (max-width:768px) {
    .list-decimal-B {
        padding: 0px;
    }

        .list-decimal-B > li {
            padding-left: 20px;
            margin-top: 10px;
        }

    .mg-guideline.list-decimal-B {
        margin: 15px 0px 0px;
    }

    [start='2'].list-decimal-A {
        margin: 15px 0px 0px;
    }

    .guideline-col .list-decimal-B {
        margin: 15px 0px 0px;
    }
}

[data-start='2'].list-decimal-B {
    counter-reset: my-number-counter 1;
}

[data-start='3'].list-decimal-B {
    counter-reset: my-number-counter 2;
}

[data-start='4'].list-decimal-B {
    counter-reset: my-number-counter 3;
}

[data-start='5'].list-decimal-B {
    counter-reset: my-number-counter 4;
}

[data-start='6'].list-decimal-B {
    counter-reset: my-number-counter 5;
}

[data-start='7'].list-decimal-B {
    counter-reset: my-number-counter 6;
}

[data-start='8'].list-decimal-B {
    counter-reset: my-number-counter 7;
}

[data-start='9'].list-decimal-B {
    counter-reset: my-number-counter 8;
}

[data-start='10'].list-decimal-B {
    counter-reset: my-number-counter 9;
}

[data-start='11'].list-decimal-B {
    counter-reset: my-number-counter 10;
}

[data-start='12'].list-decimal-B {
    counter-reset: my-number-counter 11;
}

[data-start='13'].list-decimal-B {
    counter-reset: my-number-counter 12;
}

[data-start='14'].list-decimal-B {
    counter-reset: my-number-counter 13;
}

[data-start='15'].list-decimal-B {
    counter-reset: my-number-counter 14;
}

[data-start='16'].list-decimal-B {
    counter-reset: my-number-counter 15;
}

[data-start='17'].list-decimal-B {
    counter-reset: my-number-counter 16;
}

[data-start='18'].list-decimal-B {
    counter-reset: my-number-counter 17;
}

[data-start='19'].list-decimal-B {
    counter-reset: my-number-counter 18;
}

[data-start='20'].list-decimal-B {
    counter-reset: my-number-counter 19;
}

[data-start='21'].list-decimal-B {
    counter-reset: my-number-counter 20;
}

[data-start='22'].list-decimal-B {
    counter-reset: my-number-counter 21;
}

[data-start='23'].list-decimal-B {
    counter-reset: my-number-counter 22;
}

[data-start='24'].list-decimal-B {
    counter-reset: my-number-counter 23;
}

[data-start='25'].list-decimal-B {
    counter-reset: my-number-counter 24;
}

[data-start='26'].list-decimal-B {
    counter-reset: my-number-counter 25;
}

[data-start='27'].list-decimal-B {
    counter-reset: my-number-counter 26;
}

[data-start='28'].list-decimal-B {
    counter-reset: my-number-counter 27;
}

[data-start='29'].list-decimal-B {
    counter-reset: my-number-counter 28;
}

[data-start='30'].list-decimal-B {
    counter-reset: my-number-counter 29;
}

.list-decimal-C {
    list-style: none;
    padding: 0px 20px;
    font-size: 12px;
    counter-reset: my-number-counter;
}

    .list-decimal-C > li {
        line-height: 1.78;
        padding-left: 35px;
        margin-top: 5px;
        position: relative;
        counter-increment: my-number-counter;
    }

        .list-decimal-C > li:first-child {
            margin-top: 0px;
        }

        .list-decimal-C > li::before {
            left: 0px;
            top: 0px;
            position: absolute;
            content: "(��" counter(my-number-counter) ")";
        }

@media screen and (max-width:768px) {
    .list-decimal-C {
        padding: 0px;
    }

        .list-decimal-C > li {
            padding-left: 30px;
            margin-top: 10px;
        }
}

.list-csr-policy-conduct {
    margin-bottom: 30px;
    display: flex;
}

    .list-csr-policy-conduct dt {
        background: rgb(141, 177, 178);
        padding: 15px;
        width: 100px;
        text-align: center;
        color: rgb(255, 255, 255);
        font-size: 28px;
        vertical-align: middle;
        border-right-color: rgb(255, 255, 255);
        border-right-width: 1px;
        border-right-style: solid;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .list-csr-policy-conduct dd {
        background: rgb(242, 242, 242);
        padding: 25px;
        flex: 1 1 0px;
    }

        .list-csr-policy-conduct dd .txt {
            text-indent: 1em;
        }

@media screen and (max-width:768px) {
    .list-csr-policy-conduct {
        margin-bottom: 20px;
        flex-direction: column;
    }

        .list-csr-policy-conduct dt {
            padding: 10px;
            width: 100%;
        }

        .list-csr-policy-conduct dd {
            padding: 20px;
        }
}

.guideline-col {
    margin: 0px 0px 30px 20px;
    display: flex;
}

    .guideline-col div:first-child {
        flex: 0 0 60px;
        font-weight: bold;
    }

    .guideline-col div:last-child {
        flex: 1 1 0px;
    }

@media screen and (max-width:768px) {
    .guideline-col {
        margin: 0px 0px 20px 10px;
    }

        .guideline-col div:first-child {
            flex: 0 0 55px;
        }
}

.list-black {
}

    .list-black li {
        padding-left: 20px;
        margin-top: 10px;
        position: relative;
    }

        .list-black li:first-child {
            margin-top: 0px;
        }

        .list-black li::before {
            border-radius: 8px;
            left: 6px;
            top: 7px;
            width: 8px;
            height: 8px;
            position: absolute;
            content: "";
            background-color: rgb(0, 0, 0);
        }

@media screen and (max-width:768px) {
    .list-black {
    }

        .list-black li {
            padding-left: 15px;
        }

            .list-black li::before {
                top: 8px;
                width: 5px;
                height: 5px;
            }
}

.list-news-tab {
    margin-bottom: 35px;
    display: flex;
    justify-content: space-between;
}

    .list-news-tab li {
        width: 130px;
    }

        .list-news-tab li a {
            padding: 20px 0px;
            text-align: center;
            color: rgb(29, 29, 29);
            font-size: 16px;
            text-decoration: none;
            display: block;
            position: relative;
        }

            .list-news-tab li a:hover {
                color: rgb(225, 128, 7);
            }

            .list-news-tab li a.is-active {
                color: rgb(225, 128, 7);
            }

            .list-news-tab li a.is-active {
                font-weight: bold;
            }

            .list-news-tab li a::after {
                background: rgb(225, 128, 7);
                transform-origin: right top;
                transition: transform 0.3s;
                left: 0px;
                width: 100%;
                height: 5px;
                bottom: 0px;
                position: absolute;
                content: "";
                transform: scale(0, 1);
            }

            .list-news-tab li a.is-active::after {
                background: rgb(225, 128, 7);
                transform-origin: right top;
                transition: transform 0.3s;
                left: 0px;
                width: 100%;
                height: 5px;
                bottom: 0px;
                position: absolute;
                content: "";
                transform: scale(0, 1);
            }

            .list-news-tab li a:hover::after {
                transform-origin: left top;
                transform: scale(1);
            }

            .list-news-tab li a.is-active::after {
                transform-origin: left top;
                transform: scale(1);
            }

@media screen and (max-width:1500px) and (min-width:769px) {
    .list-news-tab li a {
        font-size: 14px;
    }
}

@media screen and (max-width:768px) {
    .list-news-tab {
        margin: 0px -20px;
        border-top-color: rgb(191, 191, 191);
        border-top-width: 1px;
        border-top-style: solid;
        flex-wrap: wrap;
    }

        .list-news-tab li {
            width: 50%;
            border-bottom-color: rgb(191, 191, 191);
            border-bottom-width: 1px;
            border-bottom-style: solid;
        }

            .list-news-tab li:nth-child(2n+1) {
                border-right-color: rgb(191, 191, 191);
                border-right-width: 1px;
                border-right-style: solid;
            }

            .list-news-tab li a {
                padding: 10px 0px;
                font-size: 14px;
            }

                .list-news-tab li a::after {
                    display: none;
                }

                .list-news-tab li a.is-active {
                    color: rgb(255, 255, 255);
                    background-color: rgb(225, 128, 7);
                }
}

.list-cmn-01 li .box-detail .link-detail:hover {
    color: rgb(90, 146, 174);
    text-decoration: underline;
}

@media screen and (min-width:769px) {
    .list-cmn-01 li .box-head .date {
        margin: 0px 16px;
    }

    .list-cmn-01 li .box-detail {
        margin-left: 40px;
    }
}

@media screen and (max-width:768px) {
    .list-cmn-01 {
        margin: 0px 0px 25px;
    }

        .list-cmn-01 li {
            padding: 15px 0px;
        }

            .list-cmn-01 li .box-head {
                width: 100%;
            }

                .list-cmn-01 li .box-head .date {
                    margin: 0px;
                    font-size: 15px;
                }

                .list-cmn-01 li .box-head .tag-cmn {
                    margin-left: 13px;
                }

            .list-cmn-01 li .box-detail {
                margin: 12px 0px 0px;
                width: 100%;
            }
}

.list-news-01 {
    overflow: hidden;
}

    .list-news-01 li {
        padding: 14px 0px;
        width: 100%;
        border-bottom-color: rgb(180, 180, 180);
        border-bottom-width: 1px;
        border-bottom-style: dotted;
        display: flex;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
    }

        .list-news-01 li .box-head {
            flex: 0 1 auto;
            display: flex;
            flex-wrap: wrap;
            -webkit-flex-wrap: wrap;
            -webkit-flex: 0 1 auto;
        }

            .list-news-01 li .box-head .date {
                margin: 0px 14px 0px 16px;
                font-size: 15px;
            }

            .list-news-01 li .box-head .tag-cmn {
            }

        .list-news-01 li .box-detail {
            flex: 1 1 0px;
            -webkit-flex: 1;
        }

            .list-news-01 li .box-detail .link-detail {
                color: rgb(29, 29, 29);
                padding-right: 15px;
                font-size: 15px;
            }

                .list-news-01 li .box-detail .link-detail:hover {
                    color: rgb(90, 146, 174);
                    text-decoration: underline;
                }

@media screen and (max-width:1500px) and (min-width:769px) {
    .list-news-01 li .box-head .date {
        margin: 0px 16px;
    }

    .list-news-01 li .box-detail {
        margin-left: 15px;
    }

    .list-news-01 li .box-head .date {
        font-size: 14px;
    }

    .list-news-01 li .box-detail .link-detail {
        font-size: 14px;
    }
}

@media screen and (max-width:768px) {
    .list-news-01 {
        margin: 0px 0px 25px;
    }

        .list-news-01 li {
            padding: 15px 0px;
        }

            .list-news-01 li .box-head {
                width: 100%;
            }

                .list-news-01 li .box-head .date {
                    margin: 0px;
                    font-size: 15px;
                    font-weight: bold;
                }

                .list-news-01 li .box-head .tag-cmn {
                    margin-left: 13px;
                }

            .list-news-01 li .box-detail {
                margin: 12px 0px 0px;
                flex: 0 1 auto;
                width: 100%;
                -webkit-flex: 0 1 auto;
            }
}

.list-video {
    margin: 0px -15px 54px;
    padding-top: 41px;
    display: flex;
    position: relative;
    flex-wrap: wrap;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
}

    .list-video .item {
        padding: 0px 15px;
        position: relative;
    }

        .list-video .item .link-img {
            display: block;
            position: relative;
        }

            .list-video .item .link-img .image_wrap {
                transition: 0.3s ease-in-out;
                width: 100%;
                position: relative;
                -webkit-transition: .3s ease-in-out;
                -o-transition: .3s ease-in-out;
            }

                .list-video .item .link-img .image_wrap .image {
                    width: 100%;
                }

            .list-video .item .link-img:hover .image_wrap {
            }

        .list-video .item .link-txt {
            color: rgb(29, 29, 29);
            margin-bottom: 46px;
            display: block;
            position: relative;
        }

@media screen and (max-width:768px) {
    .list-video {
        margin: 0px;
        width: 100%;
        padding-top: 30px;
    }

        .list-video .item {
            padding: 0px;
        }

            .list-video .item .link-txt {
                margin-bottom: 22px;
            }
}

.col-01.list-video .item {
    margin: 0px auto;
    width: 670px;
}

@media screen and (max-width:768px) {
    .col-01.list-video .item {
        padding: 0px;
        width: 100%;
    }
}

.list-video .eq-area-center .eq-center-icon-play div {
    background-position: center;
    width: 110px;
    height: 110px;
    text-indent: 100%;
    overflow: hidden;
    display: block;
    white-space: nowrap;
    cursor: pointer;
    opacity: 0.9;
    background-image: url("/video/img/ico_video_play.png");
    background-repeat: no-repeat;
}

@media screen and (max-width:768px) {
    .list-video .eq-small {
        height: 100%;
    }

    .list-video .jstream-eqPlayer {
        width: 100% !important;
        height: calc(100vw /1.9) !important;
    }

    .list-video .video .image_wrap {
        width: 100%;
        height: calc(100vw /1.9);
    }
}

.txt-link-video {
    color: rgb(29, 29, 29);
    line-height: 1.75;
    font-size: 15px;
    margin-top: 15px;
    position: relative;
}

.link-pdf.txt-link-video {
    /*background: url("/common/img/ico_pdf_01.png") no-repeat right;*/
    background: url("/Content/img/pdfIcon.png") no-repeat right; /*2020/9/9*/
    padding-right: 30px;
    display: inline-block;
}

@media screen and (max-width:768px) {
    .txt-link-video {
        font-size: 14px;
        margin-top: 11px;
    }

        .txt-link-video::before {
            width: 7px;
            height: 10px;
            background-size: contain;
            -webkit-background-size: contain;
        }

    .link-pdf.txt-link-video {
        padding-right: 23px;
        background-size: 15px 18px;
        -webkit-background-size: 15px 18px;
    }
}

.table-cmn {
}

    .table-cmn th {
    }

    .table-cmn td {
    }

    .table-cmn th {
    }

    .table-cmn td {
    }

.table-A {
    margin: 0px 10px 50px;
    border-bottom-color: rgb(207, 207, 207);
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

    .table-A th {
        padding: 22px 20px;
        border-top-color: rgb(207, 207, 207);
        border-top-width: 1px;
        border-top-style: solid;
    }

    .table-A td {
        padding: 22px 20px;
        border-top-color: rgb(207, 207, 207);
        border-top-width: 1px;
        border-top-style: solid;
    }

    .table-A th {
        width: 145px;
        text-align: center;
        font-size: 16px;
        font-weight: bold;
    }

    .table-A td {
    }

@media screen and (max-width:768px) {
    .table-A {
        margin: 0px 0px 25px;
        padding: 0px;
    }

        .table-A th {
            padding: 11px 10px;
            border-top-color: rgb(207, 207, 207);
            border-top-width: 1px;
            border-top-style: solid;
            display: block;
        }

        .table-A td {
            padding: 11px 10px;
            border-top-color: rgb(207, 207, 207);
            border-top-width: 1px;
            border-top-style: solid;
            display: block;
        }

        .table-A th {
            width: 100%;
            text-align: left;
            font-size: 13px;
        }

        .table-A td {
        }
}

.table-th-ws-nowrap.table-A th {
    white-space: nowrap;
}

.table-B {
    margin: -2px;
    width: calc(100% + 4px);
    padding-bottom: 15px;
    border-collapse: separate;
    border-spacing: 2px;
}

.table-C {
    margin: -2px;
    width: calc(100% + 4px);
    padding-bottom: 15px;
    border-collapse: separate;
    border-spacing: 2px;
}

.table-D {
    margin: -2px;
    width: calc(100% + 4px);
    padding-bottom: 15px;
    border-collapse: separate;
    border-spacing: 2px;
}

.table-scroll {
    margin: -2px;
    width: calc(100% + 4px);
    padding-bottom: 15px;
    border-collapse: separate;
    border-spacing: 2px;
}

.table-scroll-wrap {
    margin-bottom: 15px;
}

.table-scroll {
    margin: 0px;
    padding-bottom: 0px;
}

.table-B th {
    padding: 10px 16px;
    letter-spacing: -0.05em;
}

.table-B td {
    padding: 10px 16px;
    letter-spacing: -0.05em;
}

.table-C th {
    padding: 10px 16px;
    letter-spacing: -0.05em;
}

.table-C td {
    padding: 10px 16px;
    letter-spacing: -0.05em;
}

.table-D th {
    padding: 10px 16px;
    letter-spacing: -0.05em;
}

.table-D td {
    padding: 10px 16px;
    letter-spacing: -0.05em;
}

.table-scroll th {
    padding: 10px 16px;
    letter-spacing: -0.05em;
}

.table-scroll td {
    padding: 10px 16px;
    letter-spacing: -0.05em;
}

.table-B th {
    width: 175px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    background-color: rgb(222, 217, 208);
}

.table-C th {
    width: 175px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    background-color: rgb(222, 217, 208);
}

.table-D th {
    width: 175px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    background-color: rgb(222, 217, 208);
}

.table-scroll th {
    width: 175px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    background-color: rgb(222, 217, 208);
}

.table-B td {
    background-color: rgb(241, 239, 235);
}

.table-C td {
    background-color: rgb(241, 239, 235);
}

.table-D td {
    background-color: rgb(241, 239, 235);
}

.table-scroll td {
    background-color: rgb(241, 239, 235);
}

.table-B a {
    color: rgb(29, 29, 29);
}

.table-C a {
    color: rgb(29, 29, 29);
}

.table-D a {
    color: rgb(29, 29, 29);
}

.table-scroll a {
    color: rgb(29, 29, 29);
}

.table-B a[href^='tel:'] {
    display: inline-block;
    pointer-events: none;
}

.table-C a[href^='tel:'] {
    display: inline-block;
    pointer-events: none;
}

.table-D a[href^='tel:'] {
    display: inline-block;
    pointer-events: none;
}

.table-A .link-cmn-01 {
    display: inline-block;
}

.table-B .link-cmn-01 {
    display: inline-block;
}

.table-scroll .link-cmn-01 {
    display: inline-block;
}

.table-C .link-cmn-01 {
    display: inline-block;
}

.table-D .link-cmn-01 {
    display: inline-block;
}

.table-B a[href^='tel:']:visited {
}

.table-B a[href^='tel:']:focus {
}

.table-B a[href^='tel:']:active {
}

.table-B a[href^='tel:']:hover {
}

.table-scroll a[href^='tel:']:visited {
}

.table-scroll a[href^='tel:']:focus {
}

.table-scroll a[href^='tel:']:active {
}

.table-scroll a[href^='tel:']:hover {
}

.table-C a[href^='tel:']:visited {
}

.table-C a[href^='tel:']:focus {
}

.table-C a[href^='tel:']:active {
}

.table-C a[href^='tel:']:hover {
}

.table-D a[href^='tel:']:visited {
}

.table-D a[href^='tel:']:focus {
}

.table-D a[href^='tel:']:active {
}

.table-D a[href^='tel:']:hover {
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .table-B th {
        font-size: 14px;
    }

    .table-C th {
        font-size: 14px;
    }

    .table-D th {
        font-size: 14px;
    }

    .table-scroll th {
        font-size: 14px;
    }
}

@media screen and (max-width:768px) {
    .table-B {
        margin: -1px;
        width: calc(100% + 2px);
        border-spacing: 1px;
    }

    .table-C {
        margin: -1px;
        width: calc(100% + 2px);
        border-spacing: 1px;
    }

    .table-D {
        margin: -1px;
        width: calc(100% + 2px);
        border-spacing: 1px;
    }

    .table-scroll-wrap {
        -ms-overflow-x: auto;
        -ms-overflow-y: hidden;
    }

    .table-scroll {
        min-width: 768px;
    }

    .table-B th {
        padding: 10px;
        width: 100%;
        display: block;
        position: relative;
    }

    .table-B td {
        padding: 10px;
        width: 100%;
        display: block;
        position: relative;
    }

    .table-C th {
        padding: 10px;
        width: 100%;
        display: block;
        position: relative;
    }

    .table-C td {
        padding: 10px;
        width: 100%;
        display: block;
        position: relative;
    }

    .table-D th {
        padding: 10px;
        width: 100%;
        display: block;
        position: relative;
    }

    .table-D td {
        padding: 10px;
        width: 100%;
        display: block;
        position: relative;
    }

    .table-B th {
        width: 100%;
        font-size: 14px;
    }

    .table-C th {
        width: 100%;
        font-size: 14px;
    }

    .table-D th {
        width: 100%;
        font-size: 14px;
    }

    .table-B td {
    }

    .table-C td {
    }

    .table-D td {
    }
}

@media screen and (max-width:768px) {
    .table-B a[href^='tel:'] {
        pointer-events: visible;
    }

    .table-scroll a[href^='tel:'] {
        pointer-events: visible;
    }

    .table-C a[href^='tel:'] {
        pointer-events: visible;
    }

    .table-D a[href^='tel:'] {
        pointer-events: visible;
    }
}

.table-scroll caption {
    background: rgb(110, 110, 110);
    margin: 0px;
    padding: 5px 0px 5px 20px;
    text-align: left;
    color: rgb(255, 255, 255);
    line-height: 1;
    font-weight: bold;
    border-right-color: rgb(255, 255, 255);
    border-left-color: rgb(255, 255, 255);
    border-right-width: 2px;
    border-left-width: 2px;
    border-right-style: solid;
    border-left-style: solid;
}

.table-scroll .th-w-400 {
    width: 400px;
}

.table-scroll .th-w-auto {
    width: auto;
}

.table-scroll .th-ws-nowrap {
    width: auto;
    white-space: nowrap;
}

.table-B {
}

    .table-B tr.row-c th {
        background-color: rgb(250, 201, 148);
    }

.table-scroll tr.row-c th {
    background-color: rgb(250, 201, 148);
}

.table-B tr.row-c td {
    background-color: rgb(255, 241, 221);
}

.table-scroll tr.row-c td {
    background-color: rgb(255, 241, 221);
}

.table-C {
}

    .table-C tr.row-c th {
        background-color: rgb(250, 230, 148);
    }

    .table-C tr.row-c td {
        background-color: rgb(255, 248, 221);
    }

@media screen and (max-width:768px) {
    .table-D .list-orange li {
        padding-right: 30px;
    }

    .table-D .list-blue li {
        padding-right: 30px;
    }
}

.table-D td .ico-pdf-01 {
    padding-right: 30px;
    position: relative;
}

    .table-D td .ico-pdf-01::after {
        right: 0px;
    }

.table-D .list-news dd:first-of-type {
    padding-bottom: 0px;
}

@media screen and (max-width:768px) {
    .table-D .list-news dt {
        padding-top: 0px;
    }
}

.table-D-flat {
    margin: -2px;
    width: calc(100% + 4px);
    border-collapse: separate;
    border-spacing: 2px;
}

    .table-D-flat th {
        padding: 10px 16px;
        text-align: center;
        letter-spacing: -0.05em;
        font-size: 16px;
        font-weight: bold;
        background-color: rgb(222, 217, 208);
    }

@media screen and (max-width:768px) {
    .table-D-flat th {
        font-size: 14px;
    }
}

.table-D-flat td {
    padding: 10px 16px;
    letter-spacing: -0.05em;
    background-color: rgb(241, 239, 235);
}

@media screen and (max-width:768px) {
    .table-scroll-wrap .table-D-flat th {
        white-space: nowrap;
    }

    .table-scroll-wrap .table-D-flat td {
        white-space: nowrap;
    }
}

.table-E {
    margin: 0px 0px 50px;
    width: 100%;
    font-size: 14px;
    border-bottom-color: rgb(207, 207, 207);
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

    .table-E th {
        padding: 22px 10px;
        font-size: 14px;
        border-top-color: rgb(207, 207, 207);
        border-top-width: 1px;
        border-top-style: solid;
    }

    .table-E td {
        padding: 22px 10px;
        font-size: 14px;
        border-top-color: rgb(207, 207, 207);
        border-top-width: 1px;
        border-top-style: solid;
    }

    .table-E th {
        font-weight: bold;
    }

        .table-E th .textSmall {
            font-size: 0.7em;
            font-weight: normal;
        }

    .table-E .th-w-120 {
        width: 120px;
    }

    .table-E .th-miw-100 {
        min-width: 150px;
    }

.table-E-number thead th {
    text-align: right;
}

.table-E-number tbody td {
    text-align: right;
}

@media screen and (max-width:768px) {
    .table-E-scroll {
        min-width: 768px;
    }
}

.table-highlight-number.table-E-number {
    margin-bottom: 15px;
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .table-highlight-number.table-E-number th {
        padding-right: 5px;
        padding-left: 5px;
        font-size: 13px;
    }

    .table-highlight-number.table-E-number td {
        padding-right: 5px;
        padding-left: 5px;
        font-size: 13px;
    }

    .table-highlight-number.table-E-number tbody tr th:first-child {
        padding-left: 10px;
    }
}

.table-item {
    width: 100%;
}

    .table-item thead th {
        border-bottom-color: rgb(207, 207, 207);
        border-bottom-width: 1px;
        border-bottom-style: solid;
        white-space: nowrap;
    }

    .table-item th {
        padding: 15px 10px;
        font-size: 14px;
        border-bottom-color: rgb(207, 207, 207);
        border-bottom-width: 1px;
        border-bottom-style: solid;
    }

    .table-item td {
        padding: 15px 10px;
        font-size: 14px;
        border-bottom-color: rgb(207, 207, 207);
        border-bottom-width: 1px;
        border-bottom-style: solid;
    }

    .table-item th {
        font-weight: bold;
    }

    .table-item td {
        text-align: right;
    }

.table-item-resultrow th {
    font-weight: bold;
    border-bottom-color: rgb(207, 207, 207);
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.table-item-resultrow td {
    font-weight: bold;
    border-bottom-color: rgb(207, 207, 207);
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.table-item .table-item-subrow th {
    padding: 10px;
    border-bottom-color: currentColor;
    border-bottom-width: medium;
    border-bottom-style: none;
}

.table-item .table-item-subrow td {
    padding: 10px;
    border-bottom-color: currentColor;
    border-bottom-width: medium;
    border-bottom-style: none;
}

.table-item-totalrow th {
    font-weight: bold;
    background-color: rgb(255, 241, 221);
}

.table-item-totalrow td {
    font-weight: bold;
    background-color: rgb(255, 241, 221);
}

.table-item .ownShares th {
    padding-bottom: 0px;
    border-bottom-color: currentColor;
    border-bottom-width: medium;
    border-bottom-style: none;
}

.table-item .stocks th {
    text-align: right;
}

.table-item .amount th {
    text-align: right;
}

.table-item .stocks th {
    padding-top: 0px;
    border-bottom-color: currentColor;
    border-bottom-width: medium;
    border-bottom-style: none;
}

.table-item .stocks td {
    padding-top: 0px;
    border-bottom-color: currentColor;
    border-bottom-width: medium;
    border-bottom-style: none;
}

.table-item .amount th {
    padding-top: 0px;
    border-bottom-color: currentColor;
    border-bottom-width: medium;
    border-bottom-style: none;
}

.table-item .amount td {
    padding-top: 0px;
    border-bottom-color: currentColor;
    border-bottom-width: medium;
    border-bottom-style: none;
}

.table-item .amount th {
    border-bottom-color: rgb(207, 207, 207);
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.table-item .amount td {
    border-bottom-color: rgb(207, 207, 207);
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.table-item .ico-arrow-01 {
    color: rgb(51, 51, 51);
}

@media screen and (max-width:768px) {
    .table-scroll-wrap .table-item {
        min-width: 768px;
    }

    .table-item thead th {
        white-space: nowrap;
    }

    .table-item th {
        padding: 15px 8px;
    }

    .table-item td {
        padding: 15px 8px;
    }
}

.table-form {
}

    .table-form th {
        padding: 20px 30px;
        width: 300px;
        text-align: left;
    }

    .table-form td {
        padding: 25px;
    }

@media screen and (max-width:768px) {
    .table-form {
    }

        .table-form th {
            padding: 10px;
            width: 100%;
            display: block;
            position: relative;
        }

        .table-form td {
            padding: 10px;
            width: 100%;
            display: block;
            position: relative;
        }
}

.btn-cmn-02 {
    padding: 23px 0px;
    border: 1px solid rgb(220, 220, 220);
    transition: 0.3s;
    border-image: none;
    text-align: center;
    color: rgb(29, 29, 29);
    font-size: 20px;
    display: block;
    position: relative;
    background-color: rgb(255, 255, 255);
    -webkit-transition: all .3s;
}

    .btn-cmn-02:hover {
        text-decoration: none;
        background-color: rgb(222, 222, 222);
    }

.ico-arrow-01.btn-cmn-02::after {
    left: 32px;
}

@media screen and (max-width:768px) {
    .btn-cmn-02 {
        padding: 21px 0px;
        font-size: 13px;
    }

    .ico-arrow-01.btn-cmn-02::after {
        left: 20px;
    }
}

.btn-cmn-01 {
    border: 1px solid rgb(29, 29, 29);
    transition: 0.3s ease-in-out;
    border-image: none;
    width: 200px;
    height: 50px;
    color: rgb(29, 29, 29);
    overflow: hidden;
    padding-left: 16px;
    font-size: 16px;
    display: flex;
    position: relative;
    z-index: 1;
    justify-content: center;
    align-items: center;
    background-color: rgb(255, 255, 255);
    -webkit-transition: all 0.3s ease-in-out;
    -ms-align-items: center;
    -o-transition: all 0.3s ease-in-out;
}

    .btn-cmn-01::before {
        border-width: 5px 0px 5px 7px;
        border-style: solid;
        border-color: transparent transparent transparent rgb(225, 128, 7);
        transition: 0.3s ease-in-out;
        left: 16px;
        top: 50%;
        width: 0px;
        height: 0px;
        position: absolute;
        content: "";
        transform: translateY(-50%);
        -webkit-transition: all 0.3s ease-in-out;
        -webkit-transform: translateY(-50%);
        -o-transition: all 0.3s ease-in-out;
    }

    .btn-cmn-01::after {
        transition: 0.3s ease-in-out;
        left: -100%;
        top: 0px;
        width: 100%;
        height: 100%;
        position: absolute;
        z-index: -1;
        content: "";
        background-color: rgb(225, 128, 7);
        -webkit-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
    }

    .btn-cmn-01:hover {
        border: 1px solid rgb(255, 255, 255);
        border-image: none;
        color: rgb(255, 255, 255);
        text-decoration: none;
    }

        .btn-cmn-01:hover::before {
            border-color: transparent transparent transparent rgb(255, 255, 255);
        }

        .btn-cmn-01:hover::after {
            left: 0px;
        }

@media screen and (max-width:768px) {
    .btn-cmn-01 {
        width: 100%;
        font-size: 16px;
        max-width: 344px;
    }

        .btn-cmn-01::before {
            border-width: 4px 0px 4px 6px;
            left: 13px;
        }
}

.is-large.btn-cmn-01 {
    width: 320px;
    height: 55px;
}

.is-small.btn-cmn-01 {
    width: 90px;
    height: 40px;
}

@media screen and (max-width:768px) {
    .is-small.btn-cmn-01 {
        width: 57px;
        height: 26px;
    }
}

.is-center.btn-cmn-01 {
    margin: 0px auto;
}

.type-a.btn-cmn-01 {
    border: 1px solid rgb(255, 255, 255);
    border-image: none;
    color: rgb(255, 255, 255);
    background-color: transparent;
}

    .type-a.btn-cmn-01::before {
        border-color: transparent transparent transparent rgb(255, 255, 255);
    }

    .type-a.btn-cmn-01::after {
        background-color: rgb(255, 255, 255);
    }

    .type-a.btn-cmn-01:hover {
        border: 1px solid rgb(29, 29, 29);
        border-image: none;
        color: rgb(29, 29, 29);
        text-decoration: none;
    }

        .type-a.btn-cmn-01:hover::before {
            border-color: transparent transparent transparent rgb(29, 29, 29);
        }

@media screen and (max-width:768px) {
    .type-a.btn-cmn-01 {
        padding-left: 6px;
        font-size: 10px;
    }

        .type-a.btn-cmn-01::before {
            border-width: 3.5px 0px 3.5px 5px;
            left: 6px;
        }

        .type-a.btn-cmn-01::after {
            background-color: rgb(255, 255, 255);
        }

        .type-a.btn-cmn-01:hover {
            border: 1px solid rgb(29, 29, 29);
            border-image: none;
            color: rgb(29, 29, 29);
            text-decoration: none;
        }

            .type-a.btn-cmn-01:hover::before {
                border-color: transparent transparent transparent rgb(29, 29, 29);
            }
}

.btn-orange {
    padding: 11px 40px 9px 50px;
    border: currentColor;
    transition: 0.3s;
    border-image: none;
    text-align: center;
    color: rgb(255, 255, 255);
    font-size: 18px;
    display: inline-block;
    position: relative;
    min-width: 200px;
    background-color: rgb(225, 128, 7);
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
}

.btn-black {
    padding: 11px 40px 9px 50px;
    border: currentColor;
    transition: 0.3s;
    border-image: none;
    text-align: center;
    color: rgb(255, 255, 255);
    font-size: 18px;
    display: inline-block;
    position: relative;
    min-width: 200px;
    background-color: rgb(225, 128, 7);
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
}

.btn-orange:hover {
    text-decoration: none;
}

.btn-black:hover {
    text-decoration: none;
}

.btn-orange:hover {
    background-color: rgba(225, 128, 7, 0.5);
}

.btn-black:hover {
    background-color: rgba(73, 73, 73, 0.8);
}

.btn-black {
    display: block;
    background-color: rgb(73, 73, 73);
}

.btn-orange::before {
    border-width: 5px 0px 5px 7px;
    border-style: solid;
    border-color: transparent transparent transparent rgb(255, 255, 255);
    left: 17px;
    top: 50%;
    width: 0px;
    height: 0px;
    position: absolute;
    content: "";
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
}

.btn-black::before {
    border-width: 5px 0px 5px 7px;
    border-style: solid;
    border-color: transparent transparent transparent rgb(255, 255, 255);
    left: 17px;
    top: 50%;
    width: 0px;
    height: 0px;
    position: absolute;
    content: "";
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
}

@media screen and (max-width:768px) {
    .btn-orange {
        padding: 14px 17px 14px 25px;
        font-size: 15px;
        display: block;
    }

    .btn-black {
        padding: 14px 17px 14px 25px;
        font-size: 15px;
        display: block;
    }

    .btn-orange::before {
        border-width: 3px 0px 3px 4px;
        left: 12px;
    }

    .btn-black::before {
        border-width: 3px 0px 3px 4px;
        left: 12px;
    }
}

.btn-cmn-pagetop {
    transition: 0.2s ease-in-out;
    right: 0px;
    bottom: 50px;
    overflow: hidden;
    position: fixed;
    z-index: 150;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
}

    .btn-cmn-pagetop a {
        background: url("/common/img/btn_toppage_01.png") no-repeat 0px 0px / 50px auto;
        width: 50px;
        height: 50px;
        text-indent: -9999px;
        display: block;
    }

@media screen and (min-width:1300px) {
    .btn-cmn-pagetop {
        right: calc(50% - 650px);
    }
}

@media screen and (max-width:1299px) and (min-width:1200px) {
    .btn-cmn-pagetop {
        right: calc(50% - 600px);
    }
}

@media screen and (max-width:768px) {
    .btn-cmn-pagetop {
        right: 8px;
        bottom: 8px;
    }

        .btn-cmn-pagetop a {
            width: 46px;
            height: 46px;
            background-size: 46px auto;
        }
}

.link-cmn-01 {
    color: rgb(29, 29, 29);
    font-weight: bold;
    margin-left: 20px;
}

@media screen and (max-width:768px) {
    .link-cmn-01 {
        margin-left: 15px;
    }
}

.link-external {
    color: rgb(0, 0, 0);
}

.link-pdf {
    /*background: url("/common/img/ico_pdf_01.png") no-repeat right;*/
    background: url("/Content/img/pdfIcon.png") no-repeat right; /*2020/9/9*/
    padding-right: 30px;
    display: inline-block;
}

@media screen and (max-width:768px) {
    .link-pdf {
        padding-right: 23px;
        display: inline;
        background-size: 15px 18px;
        -webkit-background-size: 15px 18px;
    }
}

.link-new-window {
    background: url("/common/img/ico_new_window.png") no-repeat right / 17px;
    padding-right: 30px;
    display: inline;
    -webkit-background-size: 17px;
}

@media screen and (max-width:768px) {
    .link-new-window {
        padding-right: 25px;
        background-size: 15px;
        -webkit-background-size: 15px;
    }
}

.link-blue {
    color: rgb(62, 140, 189);
    text-decoration: underline;
}

    .link-blue:hover {
        text-decoration: none;
    }

.ico-cmn {
}

.ico-arrow-01 {
    padding-left: 20px;
    display: block;
    position: relative;
}

    .ico-arrow-01::after {
        border-width: 6.5px 0px 6.5px 9px;
        border-style: solid;
        border-color: transparent transparent transparent rgb(243, 138, 10);
        left: 0px;
        top: 50%;
        width: 0px;
        height: 0px;
        position: absolute;
        content: "";
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
    }

@media screen and (max-width:768px) {
    .ico-arrow-01 {
        padding-left: 12px;
    }

        .ico-arrow-01::after {
            border-width: 3.5px 0px 3.5px 5px;
        }
}

.fz-16.ico-arrow-01 .fz-16.ico-arrow-01::after {
    top: 13px;
    transform: translateY(0px);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
}

@media screen and (max-width:768px) {
    .fz-16.ico-arrow-01::after {
        top: 13px;
    }
}

.ico-arrow-01-top.ico-arrow-01::after {
    top: 0.75em;
}

.ico-arrow-02 {
    padding-left: 15px;
    position: relative;
}

    .ico-arrow-02::after {
        border-width: 5px 0px 5px 8px;
        border-style: solid;
        border-color: transparent transparent transparent rgb(0, 0, 0);
        left: 0px;
        top: 50%;
        width: 0px;
        height: 0px;
        position: absolute;
        content: "";
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
    }

@media screen and (max-width:768px) {
    .ico-arrow-02 {
        padding-left: 10px;
    }

        .ico-arrow-02::after {
            border-width: 3.5px 0px 3.5px 5px;
        }
}

.ico-blank-01 {
    position: relative;
}

    .ico-blank-01::after {
        background: url("/common/img/ico_blank_01.png") no-repeat 0px 0px / 16px auto;
        width: 16px;
        height: 16px;
        margin-left: 10px;
        display: inline-block;
        content: "";
    }

@media screen and (max-width:768px) {
    .ico-blank-01 {
    }

        .ico-blank-01::after {
            width: 14px;
            height: 14px;
            margin-left: 5px;
            background-size: 14px auto;
        }
}

.ico-blank-02::after {
    background: url("/common/img/ico_blank_01.png") no-repeat center 1px / contain;
    padding: 0px 8px;
    width: 16px;
    height: 16px;
    position: relative;
    content: " ";
}

@media screen and (max-width:768px) {
    .ico-blank-02::after {
        padding: 0px 6px;
        background-position-y: 4px;
    }
}

.ico-pdf-01 {
}

.space-right.ico-pdf-01 {
    padding-right: 30px;
}

.ico-pdf-01::after {
    /*background: url("/common/img/ico_pdf_01.png") no-repeat 0px 0px / 20px auto;*/
    background: url("/Content/img/pdfIcon.png") no-repeat 0px 0px / 20px auto; /*2020/9/9*/
    width: 20px;
    height: 30px;
    margin-left: 10px;
    position: absolute;
    content: "";
}

@media screen and (max-width:1500px) and (min-width:769px) {
    .ico-pdf-01::after {
        background-size: 16px auto;
    }
}

@media screen and (max-width:768px) {
    .ico-pdf-01 {
        position: relative;
    }

        .ico-pdf-01::after {
            width: 15px;
            height: 18px;
            margin-left: 15px;
            background-size: 15px auto;
        }
}

.tag-cmn {
    padding: 4px;
    border: 1px solid rgb(0, 0, 0);
    border-image: none;
    width: 105px;
    height: 25px;
    text-align: center;
    line-height: 1;
    font-size: 15px;
    font-weight: bold;
    display: block;
}

.tag-csr.tag-cmn {
    border: 1px solid rgb(143, 173, 96);
    border-image: none;
    color: rgb(143, 173, 96);
}

.tag-ir.tag-cmn {
    border: 1px solid rgb(83, 166, 187);
    border-image: none;
    color: rgb(83, 166, 187);
}

.tag-exhibition.tag-cmn {
    border: 1px solid rgb(194, 109, 115);
    border-image: none;
    color: rgb(194, 109, 115);
}

.tag-notice.tag-cmn {
    border: 1px solid rgb(73, 73, 73);
    border-image: none;
    color: rgb(73, 73, 73);
}

.tag-tech.tag-cmn {
    border: 1px solid rgb(75, 119, 173);
    border-image: none;
    color: rgb(75, 119, 173);
}

@media screen and (max-width:768px) {
    .tag-cmn {
        padding: 3px;
        width: 107px;
        height: 22px;
        font-size: 14px;
    }
}

.fig-cmn-01 {
    margin-bottom: 50px;
}

    .fig-cmn-01 img {
        width: 100%;
        height: auto;
    }

@media screen and (max-width:768px) {
    .fig-cmn-01 {
        margin-bottom: 25px;
    }
}

.fig-cmn-02 img {
    width: 100%;
    display: block;
}

.fig-cmn-03 {
    margin-bottom: 50px;
}

    .fig-cmn-03 img {
        height: auto;
        max-width: 100%;
    }

@media screen and (max-width:768px) {
    .fig-cmn-03 {
        margin-bottom: 25px;
    }
}

.fig-banner-01 {
    text-align: center;
}

    .fig-banner-01 a {
        text-align: left;
        display: inline-block;
    }

    .fig-banner-01 .fig-banner-01-image {
        height: auto;
        max-width: 100%;
    }

    .fig-banner-01 .fig-banner-01-text {
        margin-top: 1em;
    }

.img-cmn-adjust {
    width: auto;
    max-width: 100%;
}

input[type='text'] {
    border-radius: 0px;
    -webkit-appearance: none;
}

input[type='checkbox'] {
}

input[type='radio'] {
}

select {
}

textarea {
    border-radius: 0px;
    -webkit-appearance: none;
}

button {
}

.form-cmn-input {
    padding: 3px 5px;
    border: currentColor;
    border-image: none;
}

.s-w-full.form-cmn-input {
    width: 100%;
}

.s-w-70.form-cmn-input {
    width: 70%;
}

.s-w-50.form-cmn-input {
    width: 50%;
}

.form-cmn-check {
}

.form-cmn-radio {
}

    .form-cmn-radio input[type='radio'] {
        position: absolute;
        opacity: 0;
    }

    .form-cmn-radio label {
        padding-left: 25px;
        display: inline-block;
        position: relative;
    }

    .form-cmn-radio input[type='radio'] + label::before {
        border-radius: 15px;
        border: 4px solid rgb(255, 255, 255);
        border-image: none;
        left: 0px;
        top: 50%;
        width: 7px;
        height: 7px;
        position: absolute;
        content: "";
        transform: translateY(-50%);
        background-color: rgb(255, 255, 255);
        -webkit-transform: translateY(-50%);
    }

    .form-cmn-radio input[type='radio']:checked + label::before {
        background-color: rgb(81, 81, 81);
    }

.form-cmn-select {
    position: relative;
}

    .form-cmn-select::after {
        border-width: 8px 6px 0px;
        border-style: solid;
        border-color: rgb(0, 0, 0) transparent transparent;
        top: 50%;
        width: 0px;
        height: 0px;
        right: 18px;
        margin-top: -4px;
        position: absolute;
        content: "";
    }

.form-cmn-select-in {
    padding: 15px 40px 15px 12px;
    border-radius: 0px;
    border: currentColor;
    border-image: none;
    width: 100%;
    font-size: 16px;
    cursor: pointer;
    background-color: rgb(255, 255, 255);
    -webkit-appearance: none;
    appearance: none;
}

.form-cmn-textarea {
}

.form-cmn-button {
}

.is-opacity {
    opacity: 1;
}

    .is-opacity:hover {
        opacity: 0.7;
    }

.img-opacity {
    color: rgb(29, 29, 29);
}

    .img-opacity img {
        transition: 0.3s ease-in-out;
        opacity: 1;
        transform: translate3d(0px, 0px, 0px);
        -webkit-transition: .3s ease-in-out;
        -webkit-transform: translate3d(0, 0, 0);
    }

    .img-opacity:hover img {
        opacity: 0.5;
    }

.is-animate {
    transition: 0.2s;
    backface-visibility: hidden;
    -webkit-transition: all 0.2s ease 0s;
    -webkit-backface-visibility: hidden;
}

.s-fw-n {
    font-weight: normal;
}

.s-fw-b {
    font-weight: bold;
}

.s-ta-l {
    text-align: left !important;
}

.s-ta-c {
    text-align: center !important;
}

.s-ta-r {
    text-align: right !important;
}

.s-va-t {
    vertical-align: top !important;
}

.s-va-m {
    vertical-align: middle !important;
}

.s-va-b {
    vertical-align: bottom !important;
}

.s-ov-h {
    overflow: hidden;
}

.s-clear {
    clear: both;
}

.s-hide {
    display: none;
}

.s-txt-hide {
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
}

.s-bg-n {
    background: none !important;
}

.s-mt-00 {
    margin-top: 0px !important;
}

.s-mb-00 {
    margin-bottom: 0px !important;
}

.s-mb-00 {
    margin-bottom: 0px !important;
}

.s-ml-00 {
    margin-left: 0px !important;
}

.s-mr-00 {
    margin-right: 0px !important;
}

.s-mr-10 {
    margin-right: 10px !important;
}

.s-pt-00 {
    padding-top: 0px !important;
}

.s-pb-00 {
    padding-bottom: 0px !important;
}

.s-pl-00 {
    padding-left: 0px !important;
}

.s-pr-00 {
    padding-right: 0px !important;
}

.s-mb-05 {
    margin-bottom: 5px !important;
}

.s-mb-10 {
    margin-bottom: 10px !important;
}

.s-mb-15 {
    margin-bottom: 15px !important;
}

.s-mb-20 {
    margin-bottom: 20px !important;
}

.s-mb-25 {
    margin-bottom: 25px !important;
}

.s-mb-30 {
    margin-bottom: 30px !important;
}

.s-mb-35 {
    margin-bottom: 35px !important;
}

.s-mb-40 {
    margin-bottom: 40px !important;
}

.s-mb-50 {
    margin-bottom: 50px !important;
}

.s-ml-10 {
    margin-left: 10px !important;
}

.s-ml-20 {
    margin-left: 20px !important;
}

.s-mt-20 {
    margin-top: 20px !important;
}

.s-mt-30 {
    margin-top: 30px !important;
}

.s-ma-10 {
    margin: 10px !important;
}

.s-fz-ss {
    font-size: 87%;
}

.s-fz-s {
    font-size: 94%;
}

.s-fz-m {
    font-size: 100%;
}

.s-fz-ml {
    font-size: 107%;
}

.s-fz-l {
    font-size: 114%;
}

.s-fz-ll {
    font-size: 120%;
}

.s-fz-lll {
    font-size: 134%;
}

.font-ryomin {
    font-family: "�q���M�m���� Pro", "Hiragino Mincho Pro", "��������", "Yu Mincho", YuMincho, serif;
}

.sup-cmn {
    line-height: 1;
    font-size: 100%;
}

.only-pc {
}

.only-sp {
    display: none !important;
}

.no-pc {
    display: none !important;
}

.no-sp {
}

@media screen and (max-width:768px) {
    .only-pc {
        display: none !important;
    }

    .no-sp {
        display: none !important;
    }

    .only-sp {
        display: block !important;
    }

    .no-pc {
        display: block !important;
    }

    img.only-sp {
        display: block !important;
    }

    img.no-pc {
        display: block !important;
    }

    .s-ph-sp-15 {
        padding: 0px 15px;
    }
}

.title-partlist {
    padding: 0px 20px;
    border: 1px dashed rgb(225, 128, 7);
    border-image: none;
    color: rgb(225, 128, 7);
    font-size: 40px;
    margin-bottom: 20px;
}

.box-partlist {
    margin-bottom: 100px;
}

@media screen and (max-width:768px) {
    .box-partlist {
        margin-bottom: 50px;
    }

    .box-partlist-in {
        padding: 0px 20px;
    }
}

.table-form .form-row {
    margin-bottom: 5px;
    display: flex;
}

    .table-form .form-row input {
        margin-left: 5px;
    }

select.form-cmn-input {
    height: 29.31px;
}

.form-cmn-input + p {
    margin-top: 10px;
}

.table-form textarea {
    padding: 3px 5px;
    border: currentColor;
    border-image: none;
    width: 100%;
    resize: none;
}

@media print {
    .wrapper {
        width: auto;
        padding-top: 20px;
        min-width: auto;
    }

    .header {
        width: auto;
        position: static;
        min-width: auto;
    }

    .header-in {
        width: auto;
    }

    .header-utility {
        display: none;
    }

    .nav-global {
        display: none;
    }

    .hero-cmn {
        border-bottom-color: currentColor;
        border-bottom-width: 0px;
        border-bottom-style: none;
    }

    .hero-cmn-in {
        width: auto;
    }

    .nav-breadcrumb {
        display: none;
    }

    .area-features {
        display: none;
    }

    .footer {
        width: auto;
        border-top-color: currentColor;
        border-top-width: 0px;
        border-top-style: none;
        min-width: auto;
    }

    .footer-utility {
        display: none;
    }

    .btn-cmn-pagetop {
        display: none;
    }

    .footer-in {
        width: auto;
    }

    .footer-nav {
        display: none;
    }

    .contents {
        width: auto;
    }

    .contents-main {
        width: auto;
        float: none;
    }

    .contents-aside .contents-main {
        width: auto;
        float: none;
    }

    .contents-sub {
        display: none;
    }
}


.partner-col {
    padding-bottom: 30px;
}

@media screen and (max-width:768px) {
    .partner-col {
        padding-bottom: 0;
    }
}