﻿.js-lazy-load {
    transform: translateY(30px);
    opacity: 0;
    transition: opacity .8s cubic-bezier(0.5, 0, 0, 1) .1s,transform .9s cubic-bezier(0.5, 0, 0, 1) .1s
}

    .js-lazy-load.loading {
        transform: translateY(0);
        opacity: 1
    }

img.js-lazy-load {
    background: #f8f8f8 url("../../system/images/marker/icon-lazy-load-image.svg") no-repeat center/40px 40px
}

    img.js-lazy-load.loaded {
        background: none
    }

.js-lazy-load.is-movie {
    background: #f8f8f8 url("../../system/images/marker/icon-lazy-load-movie.svg") no-repeat center/40px 40px
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td, figure {
    margin: 0;
    padding: 0
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

fieldset, img {
    border: 0
}

address, caption, cite, code, dfn, em, th, var {
    font-weight: normal;
    font-style: normal
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    line-height: 1
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom
}

br {
    letter-spacing: 0
}

a {
    text-decoration: none
}

main, section, header, footer, nav, figure, address, picture {
    display: block
}

address {
    font-weight: normal;
    font-style: normal
}

ul, ol {
    margin: 0;
    padding: 0;
    list-style: none
}

mark {
    color: inherit;
    background-color: rgba(0,0,0,0)
}

sub {
    font-size: x-small;
    vertical-align: baseline
}

input[type=text], input[type=email], input[type=tel], input[type=password], input[type=url], textarea, select {
    box-sizing: border-box;
    font-family: inherit;
    -webkit-appearance: none
}

input[type=button], input[type=submit] {
    border: none;
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button
}

input[type=checkbox], input[type=radio] {
    vertical-align: middle
}

label {
    cursor: pointer
}

button {
    padding: 0;
    background: rgba(0,0,0,0);
    border: none;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

    button img {
        display: block
    }

textarea {
    resize: vertical
}

body {
    -webkit-text-size-adjust: 100%
}

input[type=image] {
    max-width: 100%;
    background-color: #fff
}

p {
    max-height: 100%
}

html {
    height: 100%;
    font-size: 62.5%
}

body {
    color: #333;
    font-family: "Noto Sans JP",sans-serif;
    line-height: 1.85;
    background: #f1f1f1;
    -webkit-font-smoothing: antialiased;
    font-size: 1.4rem
}

@media print {
    body {
        font-size: 1.4rem
    }
}

@media screen and (min-width: 768px) {
    body {
        font-size: 1.5rem
    }
}

a {
    color: #044093;
    text-decoration: none;
    border: none
}

@media screen and (min-width: 768px) {
    a {
        transition: all .3s
    }
}

a:active {
    text-decoration: none;
    opacity: .6
}

a:hover {
    opacity: .6
}

@keyframes fade-in {
    0% {
        opacity: 0
    }

    20% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes fade-in {
    0% {
        opacity: 0
    }

    20% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes scale-up {
    0% {
        transform: scale(1)
    }

    50% {
        transform: scale(1.03)
    }

    100% {
        transform: scale(1)
    }
}

@-webkit-keyframes scale-up {
    0% {
        transform: scale(1)
    }

    50% {
        transform: scale(1.03)
    }

    100% {
        transform: scale(1)
    }
}

@keyframes fade-in-down {
    0% {
        opacity: 0
    }

    20% {
        transform: translate(0, -10px);
        opacity: 0
    }

    100% {
        transform: translate(0);
        opacity: 1
    }
}

@-webkit-keyframes fade-in-down {
    0% {
        opacity: 0
    }

    20% {
        transform: translate(0, -10px);
        opacity: 0
    }

    100% {
        transform: translate(0);
        opacity: 1
    }
}

.acms-container {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 20px;
    padding-left: 20px;
    box-sizing: border-box
}

.acms-grid, .acms-grid-r {
    margin-right: -20px;
    margin-left: -20px
}

    .acms-grid:before, .acms-grid:after, .acms-grid-r:before, .acms-grid-r:after {
        display: table;
        content: " "
    }

    .acms-grid:after, .acms-grid-r:after {
        clear: both
    }

.acms-grid-negative {
    margin-right: 0;
    margin-left: 0
}

[class*=acms-col] {
    min-height: 1px;
    padding-right: 20px;
    padding-left: 20px
}

@media(min-width: 768px) {
    .acms-grid, .acms-grid-r {
        margin-right: -20px;
        margin-left: -20px
    }

    [class*=acms-col] {
        padding-right: 20px;
        padding-left: 20px
    }
}

[class*=acms-col], [class*=acms-col]:before, [class*=acms-col]:after {
    box-sizing: border-box
}

.acms-col-1 {
    float: left;
    width: 8.3333333333%
}

.acms-col-2 {
    float: left;
    width: 16.6666666667%
}

.acms-col-3 {
    float: left;
    width: 25%
}

.acms-col-4 {
    float: left;
    width: 33.3333333333%
}

.acms-col-5 {
    float: left;
    width: 41.6666666667%
}

.acms-col-6 {
    float: left;
    width: 50%
}

.acms-col-7 {
    float: left;
    width: 58.3333333333%
}

.acms-col-8 {
    float: left;
    width: 66.6666666667%
}

.acms-col-9 {
    float: left;
    width: 75%
}

.acms-col-10 {
    float: left;
    width: 83.3333333333%
}

.acms-col-11 {
    float: left;
    width: 91.6666666667%
}

.acms-col-12 {
    float: none;
    width: 100%
}

[class*=acms-push], [class*=acms-pull] {
    position: relative
}

.acms-push-1 {
    left: 8.3333333333%
}

.acms-push-2 {
    left: 16.6666666667%
}

.acms-push-3 {
    left: 25%
}

.acms-push-4 {
    left: 33.3333333333%
}

.acms-push-5 {
    left: 41.6666666667%
}

.acms-push-6 {
    left: 50%
}

.acms-push-7 {
    left: 58.3333333333%
}

.acms-push-8 {
    left: 66.6666666667%
}

.acms-push-9 {
    left: 75%
}

.acms-push-10 {
    left: 83.3333333333%
}

.acms-push-11 {
    left: 91.6666666667%
}

.acms-pull-1 {
    right: 8.3333333333%
}

.acms-pull-2 {
    right: 16.6666666667%
}

.acms-pull-3 {
    right: 25%
}

.acms-pull-4 {
    right: 33.3333333333%
}

.acms-pull-5 {
    right: 41.6666666667%
}

.acms-pull-6 {
    right: 50%
}

.acms-pull-7 {
    right: 58.3333333333%
}

.acms-pull-8 {
    right: 66.6666666667%
}

.acms-pull-9 {
    right: 75%
}

.acms-pull-10 {
    right: 83.3333333333%
}

.acms-pull-11 {
    right: 91.6666666667%
}

@media(min-width: 480px) {
    .acms-col-sm-1 {
        float: left;
        width: 8.3333333333%
    }

    .acms-col-sm-2 {
        float: left;
        width: 16.6666666667%
    }

    .acms-col-sm-3 {
        float: left;
        width: 25%
    }

    .acms-col-sm-4 {
        float: left;
        width: 33.3333333333%
    }

    .acms-col-sm-5 {
        float: left;
        width: 41.6666666667%
    }

    .acms-col-sm-6 {
        float: left;
        width: 50%
    }

    .acms-col-sm-7 {
        float: left;
        width: 58.3333333333%
    }

    .acms-col-sm-8 {
        float: left;
        width: 66.6666666667%
    }

    .acms-col-sm-9 {
        float: left;
        width: 75%
    }

    .acms-col-sm-10 {
        float: left;
        width: 83.3333333333%
    }

    .acms-col-sm-11 {
        float: left;
        width: 91.6666666667%
    }

    .acms-col-sm-12 {
        float: none;
        width: 100%
    }

    [class*=acms-push-sm] {
        position: relative;
        right: auto
    }

    .acms-push-sm-auto {
        left: auto
    }

    .acms-push-sm-1 {
        left: 8.3333333333%
    }

    .acms-push-sm-2 {
        left: 16.6666666667%
    }

    .acms-push-sm-3 {
        left: 25%
    }

    .acms-push-sm-4 {
        left: 33.3333333333%
    }

    .acms-push-sm-5 {
        left: 41.6666666667%
    }

    .acms-push-sm-6 {
        left: 50%
    }

    .acms-push-sm-7 {
        left: 58.3333333333%
    }

    .acms-push-sm-8 {
        left: 66.6666666667%
    }

    .acms-push-sm-9 {
        left: 75%
    }

    .acms-push-sm-10 {
        left: 83.3333333333%
    }

    .acms-push-sm-11 {
        left: 91.6666666667%
    }

    [class*=acms-pull-sm] {
        position: relative;
        left: auto
    }

    .acms-pull-sm-auto {
        right: auto
    }

    .acms-pull-sm-1 {
        right: 8.3333333333%
    }

    .acms-pull-sm-2 {
        right: 16.6666666667%
    }

    .acms-pull-sm-3 {
        right: 25%
    }

    .acms-pull-sm-4 {
        right: 33.3333333333%
    }

    .acms-pull-sm-5 {
        right: 41.6666666667%
    }

    .acms-pull-sm-6 {
        right: 50%
    }

    .acms-pull-sm-7 {
        right: 58.3333333333%
    }

    .acms-pull-sm-8 {
        right: 66.6666666667%
    }

    .acms-pull-sm-9 {
        right: 75%
    }

    .acms-pull-sm-10 {
        right: 83.3333333333%
    }

    .acms-pull-sm-11 {
        right: 91.6666666667%
    }
}

@media(min-width: 768px) {
    .acms-col-md-1 {
        float: left;
        width: 8.3333333333%
    }

    .acms-col-md-2 {
        float: left;
        width: 16.6666666667%
    }

    .acms-col-md-3 {
        float: left;
        width: 25%
    }

    .acms-col-md-4 {
        float: left;
        width: 33.3333333333%
    }

    .acms-col-md-5 {
        float: left;
        width: 41.6666666667%
    }

    .acms-col-md-6 {
        float: left;
        width: 50%
    }

    .acms-col-md-7 {
        float: left;
        width: 58.3333333333%
    }

    .acms-col-md-8 {
        float: left;
        width: 66.6666666667%
    }

    .acms-col-md-9 {
        float: left;
        width: 75%
    }

    .acms-col-md-10 {
        float: left;
        width: 83.3333333333%
    }

    .acms-col-md-11 {
        float: left;
        width: 91.6666666667%
    }

    .acms-col-md-12 {
        float: none;
        width: 100%
    }

    [class*=acms-push-md] {
        position: relative;
        right: auto
    }

    .acms-push-md-auto {
        left: auto
    }

    .acms-push-md-1 {
        left: 8.3333333333%
    }

    .acms-push-md-2 {
        left: 16.6666666667%
    }

    .acms-push-md-3 {
        left: 25%
    }

    .acms-push-md-4 {
        left: 33.3333333333%
    }

    .acms-push-md-5 {
        left: 41.6666666667%
    }

    .acms-push-md-6 {
        left: 50%
    }

    .acms-push-md-7 {
        left: 58.3333333333%
    }

    .acms-push-md-8 {
        left: 66.6666666667%
    }

    .acms-push-md-9 {
        left: 75%
    }

    .acms-push-md-10 {
        left: 83.3333333333%
    }

    .acms-push-md-11 {
        left: 91.6666666667%
    }

    [class*=acms-pull-md] {
        position: relative;
        left: auto
    }

    .acms-pull-md-auto {
        right: auto
    }

    .acms-pull-md-1 {
        right: 8.3333333333%
    }

    .acms-pull-md-2 {
        right: 16.6666666667%
    }

    .acms-pull-md-3 {
        right: 25%
    }

    .acms-pull-md-4 {
        right: 33.3333333333%
    }

    .acms-pull-md-5 {
        right: 41.6666666667%
    }

    .acms-pull-md-6 {
        right: 50%
    }

    .acms-pull-md-7 {
        right: 58.3333333333%
    }

    .acms-pull-md-8 {
        right: 66.6666666667%
    }

    .acms-pull-md-9 {
        right: 75%
    }

    .acms-pull-md-10 {
        right: 83.3333333333%
    }

    .acms-pull-md-11 {
        right: 91.6666666667%
    }
}

@media(min-width: 1080px) {
    .acms-col-lg-1 {
        float: left;
        width: 8.3333333333%
    }

    .acms-col-lg-2 {
        float: left;
        width: 16.6666666667%
    }

    .acms-col-lg-3 {
        float: left;
        width: 25%
    }

    .acms-col-lg-4 {
        float: left;
        width: 33.3333333333%
    }

    .acms-col-lg-5 {
        float: left;
        width: 41.6666666667%
    }

    .acms-col-lg-6 {
        float: left;
        width: 50%
    }

    .acms-col-lg-7 {
        float: left;
        width: 58.3333333333%
    }

    .acms-col-lg-8 {
        float: left;
        width: 66.6666666667%
    }

    .acms-col-lg-9 {
        float: left;
        width: 75%
    }

    .acms-col-lg-10 {
        float: left;
        width: 83.3333333333%
    }

    .acms-col-lg-11 {
        float: left;
        width: 91.6666666667%
    }

    .acms-col-lg-12 {
        float: none;
        width: 100%
    }

    [class*=acms-push-lg] {
        position: relative;
        right: auto
    }

    .acms-push-lg-auto {
        left: auto
    }

    .acms-push-lg-1 {
        left: 8.3333333333%
    }

    .acms-push-lg-2 {
        left: 16.6666666667%
    }

    .acms-push-lg-3 {
        left: 25%
    }

    .acms-push-lg-4 {
        left: 33.3333333333%
    }

    .acms-push-lg-5 {
        left: 41.6666666667%
    }

    .acms-push-lg-6 {
        left: 50%
    }

    .acms-push-lg-7 {
        left: 58.3333333333%
    }

    .acms-push-lg-8 {
        left: 66.6666666667%
    }

    .acms-push-lg-9 {
        left: 75%
    }

    .acms-push-lg-10 {
        left: 83.3333333333%
    }

    .acms-push-lg-11 {
        left: 91.6666666667%
    }

    [class*=acms-pull-lg] {
        position: relative;
        left: auto
    }

    .acms-pull-lg-auto {
        right: auto
    }

    .acms-pull-lg-1 {
        right: 8.3333333333%
    }

    .acms-pull-lg-2 {
        right: 16.6666666667%
    }

    .acms-pull-lg-3 {
        right: 25%
    }

    .acms-pull-lg-4 {
        right: 33.3333333333%
    }

    .acms-pull-lg-5 {
        right: 41.6666666667%
    }

    .acms-pull-lg-6 {
        right: 50%
    }

    .acms-pull-lg-7 {
        right: 58.3333333333%
    }

    .acms-pull-lg-8 {
        right: 66.6666666667%
    }

    .acms-pull-lg-9 {
        right: 75%
    }

    .acms-pull-lg-10 {
        right: 83.3333333333%
    }

    .acms-pull-lg-11 {
        right: 91.6666666667%
    }
}

@media(min-width: 1280px) {
    .acms-col-xl-1 {
        float: left;
        width: 8.3333333333%
    }

    .acms-col-xl-2 {
        float: left;
        width: 16.6666666667%
    }

    .acms-col-xl-3 {
        float: left;
        width: 25%
    }

    .acms-col-xl-4 {
        float: left;
        width: 33.3333333333%
    }

    .acms-col-xl-5 {
        float: left;
        width: 41.6666666667%
    }

    .acms-col-xl-6 {
        float: left;
        width: 50%
    }

    .acms-col-xl-7 {
        float: left;
        width: 58.3333333333%
    }

    .acms-col-xl-8 {
        float: left;
        width: 66.6666666667%
    }

    .acms-col-xl-9 {
        float: left;
        width: 75%
    }

    .acms-col-xl-10 {
        float: left;
        width: 83.3333333333%
    }

    .acms-col-xl-11 {
        float: left;
        width: 91.6666666667%
    }

    .acms-col-xl-12 {
        float: none;
        width: 100%
    }

    [class*=acms-push-xl] {
        position: relative;
        right: auto
    }

    .acms-push-xl-auto {
        left: auto
    }

    .acms-push-xl-1 {
        left: 8.3333333333%
    }

    .acms-push-xl-2 {
        left: 16.6666666667%
    }

    .acms-push-xl-3 {
        left: 25%
    }

    .acms-push-xl-4 {
        left: 33.3333333333%
    }

    .acms-push-xl-5 {
        left: 41.6666666667%
    }

    .acms-push-xl-6 {
        left: 50%
    }

    .acms-push-xl-7 {
        left: 58.3333333333%
    }

    .acms-push-xl-8 {
        left: 66.6666666667%
    }

    .acms-push-xl-9 {
        left: 75%
    }

    .acms-push-xl-10 {
        left: 83.3333333333%
    }

    .acms-push-xl-11 {
        left: 91.6666666667%
    }

    [class*=acms-pull-xl] {
        position: relative;
        left: auto
    }

    .acms-pull-xl-auto {
        right: auto
    }

    .acms-pull-xl-1 {
        right: 8.3333333333%
    }

    .acms-pull-xl-2 {
        right: 16.6666666667%
    }

    .acms-pull-xl-3 {
        right: 25%
    }

    .acms-pull-xl-4 {
        right: 33.3333333333%
    }

    .acms-pull-xl-5 {
        right: 41.6666666667%
    }

    .acms-pull-xl-6 {
        right: 50%
    }

    .acms-pull-xl-7 {
        right: 58.3333333333%
    }

    .acms-pull-xl-8 {
        right: 66.6666666667%
    }

    .acms-pull-xl-9 {
        right: 75%
    }

    .acms-pull-xl-10 {
        right: 83.3333333333%
    }

    .acms-pull-xl-11 {
        right: 91.6666666667%
    }
}

.acms-entry .acms-col-12 {
    clear: both
}

button, input, select, textarea {
    box-sizing: border-box;
    margin: 0
}

    button, input[type=button], input[type=reset], input[type=submit] {
        cursor: pointer;
        -webkit-appearance: button
    }

    input[type=checkbox], input[type=radio], select {
        cursor: pointer
    }

textarea {
    overflow: auto;
    vertical-align: top
}

label {
    display: inline-block
}

.acms-form input[type=text], .acms-form input[type=password], .acms-form input[type=datetime], .acms-form input[type=datetime-local], .acms-form input[type=date], .acms-form input[type=month], .acms-form input[type=time], .acms-form input[type=week], .acms-form input[type=number], .acms-form input[type=email], .acms-form input[type=url], .acms-form input[type=search], .acms-form input[type=tel] {
    min-height: 32px;
    padding: 4px 8px;
    color: #333;
    font-size: 1.6rem;
    line-height: 1;
    vertical-align: middle;
    background: #fbfbfb;
    border: 1px solid rgba(0,0,0,.2);
    border-radius: 3px;
    box-shadow: 0 1px 1px rgba(0,0,0,.1) inset;
    transition: background-color .2s;
    -webkit-appearance: none
}

@media print {
    .acms-form input[type=text], .acms-form input[type=password], .acms-form input[type=datetime], .acms-form input[type=datetime-local], .acms-form input[type=date], .acms-form input[type=month], .acms-form input[type=time], .acms-form input[type=week], .acms-form input[type=number], .acms-form input[type=email], .acms-form input[type=url], .acms-form input[type=search], .acms-form input[type=tel] {
        font-size: 1.6rem
    }
}

.acms-form input[type=text]:hover, .acms-form input[type=password]:hover, .acms-form input[type=datetime]:hover, .acms-form input[type=datetime-local]:hover, .acms-form input[type=date]:hover, .acms-form input[type=month]:hover, .acms-form input[type=time]:hover, .acms-form input[type=week]:hover, .acms-form input[type=number]:hover, .acms-form input[type=email]:hover, .acms-form input[type=url]:hover, .acms-form input[type=search]:hover, .acms-form input[type=tel]:hover {
    background: #fff;
    border-color: rgba(0,0,0,.3)
}

.acms-form input[type=text]:focus, .acms-form input[type=password]:focus, .acms-form input[type=datetime]:focus, .acms-form input[type=datetime-local]:focus, .acms-form input[type=date]:focus, .acms-form input[type=month]:focus, .acms-form input[type=time]:focus, .acms-form input[type=week]:focus, .acms-form input[type=number]:focus, .acms-form input[type=email]:focus, .acms-form input[type=url]:focus, .acms-form input[type=search]:focus, .acms-form input[type=tel]:focus {
    background: #fff;
    border-color: #137af3;
    outline: none;
    box-shadow: 0 0 0 2px rgba(19,122,243,.4),0 1px 1px rgba(0,0,0,.1) inset
}

.acms-form input[type=text]:disabled, .acms-form input[type=password]:disabled, .acms-form input[type=datetime]:disabled, .acms-form input[type=datetime-local]:disabled, .acms-form input[type=date]:disabled, .acms-form input[type=month]:disabled, .acms-form input[type=time]:disabled, .acms-form input[type=week]:disabled, .acms-form input[type=number]:disabled, .acms-form input[type=email]:disabled, .acms-form input[type=url]:disabled, .acms-form input[type=search]:disabled, .acms-form input[type=tel]:disabled {
    color: #999;
    background-color: #f5f5f5;
    border-color: #ddd;
    cursor: not-allowed
}

.acms-form input[type=text].acms-form-large, .acms-form input[type=password].acms-form-large, .acms-form input[type=datetime].acms-form-large, .acms-form input[type=datetime-local].acms-form-large, .acms-form input[type=date].acms-form-large, .acms-form input[type=month].acms-form-large, .acms-form input[type=time].acms-form-large, .acms-form input[type=week].acms-form-large, .acms-form input[type=number].acms-form-large, .acms-form input[type=email].acms-form-large, .acms-form input[type=url].acms-form-large, .acms-form input[type=search].acms-form-large, .acms-form input[type=tel].acms-form-large {
    min-height: 44px;
    font-size: 2rem
}

@media print {
    .acms-form input[type=text].acms-form-large, .acms-form input[type=password].acms-form-large, .acms-form input[type=datetime].acms-form-large, .acms-form input[type=datetime-local].acms-form-large, .acms-form input[type=date].acms-form-large, .acms-form input[type=month].acms-form-large, .acms-form input[type=time].acms-form-large, .acms-form input[type=week].acms-form-large, .acms-form input[type=number].acms-form-large, .acms-form input[type=email].acms-form-large, .acms-form input[type=url].acms-form-large, .acms-form input[type=search].acms-form-large, .acms-form input[type=tel].acms-form-large {
        font-size: 2rem
    }
}

.acms-form input[type=text].acms-form-small, .acms-form input[type=password].acms-form-small, .acms-form input[type=datetime].acms-form-small, .acms-form input[type=datetime-local].acms-form-small, .acms-form input[type=date].acms-form-small, .acms-form input[type=month].acms-form-small, .acms-form input[type=time].acms-form-small, .acms-form input[type=week].acms-form-small, .acms-form input[type=number].acms-form-small, .acms-form input[type=email].acms-form-small, .acms-form input[type=url].acms-form-small, .acms-form input[type=search].acms-form-small, .acms-form input[type=tel].acms-form-small {
    min-height: 26px;
    font-size: 1.6rem
}

@media print {
    .acms-form input[type=text].acms-form-small, .acms-form input[type=password].acms-form-small, .acms-form input[type=datetime].acms-form-small, .acms-form input[type=datetime-local].acms-form-small, .acms-form input[type=date].acms-form-small, .acms-form input[type=month].acms-form-small, .acms-form input[type=time].acms-form-small, .acms-form input[type=week].acms-form-small, .acms-form input[type=number].acms-form-small, .acms-form input[type=email].acms-form-small, .acms-form input[type=url].acms-form-small, .acms-form input[type=search].acms-form-small, .acms-form input[type=tel].acms-form-small {
        font-size: 1.6rem
    }
}

.acms-form input[type=search] {
    -webkit-appearance: none
}

.acms-form textarea, .acms-form .entryFormLiteEditor {
    font-size: 1.6rem;
    padding: 5px 5px 4px;
    overflow: auto;
    color: #333;
    line-height: 1.7;
    background: #fbfbfb;
    border: 1px solid rgba(0,0,0,.2);
    border-radius: 3px;
    box-shadow: 0 1px 1px rgba(0,0,0,.1) inset;
    transition: background-color .2s;
    resize: vertical
}

@media print {
    .acms-form textarea, .acms-form .entryFormLiteEditor {
        font-size: 1.6rem
    }
}

.acms-form textarea:hover, .acms-form .entryFormLiteEditor:hover {
    background: #fff;
    border-color: rgba(0,0,0,.3)
}

.acms-form textarea:focus, .acms-form .entryFormLiteEditor:focus {
    background: #fff;
    border-color: #137af3;
    outline: none;
    box-shadow: 0 0 0 2px rgba(19,122,243,.4),0 1px 1px rgba(0,0,0,.1) inset
}

.acms-form textarea:disabled, .acms-form .entryFormLiteEditor:disabled {
    color: #999;
    background-color: #f5f5f5;
    border-color: #ddd;
    cursor: not-allowed
}

.acms-form textarea.acms-form-large, .acms-form .entryFormLiteEditor.acms-form-large {
    font-size: 2rem;
    vertical-align: middle
}

@media print {
    .acms-form textarea.acms-form-large, .acms-form .entryFormLiteEditor.acms-form-large {
        font-size: 2rem
    }
}

.acms-form textarea.acms-form-small, .acms-form .entryFormLiteEditor.acms-form-small {
    font-size: 1rem
}

@media print {
    .acms-form textarea.acms-form-small, .acms-form .entryFormLiteEditor.acms-form-small {
        font-size: 1rem
    }
}

.acms-form .entryFormLiteEditor img {
    max-width: 100%
}

.acms-form input[type=text]:-moz-input-placeholder, .acms-form input[type=password]:-moz-input-placeholder, .acms-form input[type=search]:-moz-input-placeholder, .acms-form input[type=url]:-moz-input-placeholder, .acms-form input[type=tel]:-moz-input-placeholder, .acms-form input[type=email]:-moz-input-placeholder, .acms-form textarea:-moz-input-placeholder {
    color: #aaa
}

.acms-form input[type=text]:-ms-input-placeholder, .acms-form input[type=password]:-ms-input-placeholder, .acms-form input[type=search]:-ms-input-placeholder, .acms-form input[type=url]:-ms-input-placeholder, .acms-form input[type=tel]:-ms-input-placeholder, .acms-form input[type=email]:-ms-input-placeholder, .acms-form textarea:-ms-input-placeholder {
    color: #aaa
}

.acms-form input[type=text]::-webkit-input-placeholder, .acms-form input[type=password]::-webkit-input-placeholder, .acms-form input[type=search]::-webkit-input-placeholder, .acms-form input[type=url]::-webkit-input-placeholder, .acms-form input[type=tel]::-webkit-input-placeholder, .acms-form input[type=email]::-webkit-input-placeholder, .acms-form textarea::-webkit-input-placeholder {
    color: #aaa
}

.acms-form select, .acms-form .acms-form-select {
    position: relative;
    display: inline-block;
    min-height: 32px;
    padding: 6px 30px 6px 10px;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    background: url(../../system/images/marker/arrow_black03.png) right center;
    background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSI1IiB2aWV3Qm94PSIwIDAgMTggNSI+PGc+PGc+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxOHY1SDB6Ii8+PHBhdGggZmlsbD0iIzk5OSIgZD0iTTQuMjIgMGg0LjIyTDYuMzMgMi41IDQuMjIgNSAyLjExIDIuNSAwIDBoNC4yMnoiLz48L2c+PC9nPjwvc3ZnPg==") right center;
    background-color: #f7f7f7;
    background-repeat: no-repeat;
    border: 1px solid #ccc;
    border-radius: 3px;
    transition: border-color .2s;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 1.6rem;
    text-align: left
}

@media print {
    .acms-form select, .acms-form .acms-form-select {
        font-size: 1.6rem
    }
}

.acms-form select:hover, .acms-form .acms-form-select:hover {
    border-color: 1px solid #aaa
}

.acms-form select:focus, .acms-form .acms-form-select:focus {
    border-color: #137af3;
    outline: none
}

.acms-form select:disabled, .acms-form .acms-form-select:disabled {
    color: #999;
    background-color: #f5f5f5;
    border-color: #ddd;
    cursor: not-allowed
}

.acms-form select::-ms-expand {
    display: none
}

.acms-form select[multiple=multiple] {
    padding: 7px 10px;
    background: #fff;
    box-shadow: 0 1px 1px rgba(0,0,0,.1) inset;
    -webkit-appearance: none
}

    .acms-form select[multiple=multiple]:focus {
        border-color: #137af3;
        outline: none;
        box-shadow: 0 0 0 2px rgba(19,122,243,.4)
    }

    .acms-form select[multiple=multiple]:disabled {
        color: #999;
        background-color: #f5f5f5;
        border-color: #ddd;
        cursor: not-allowed
    }

@media(min-width: 768px) {
    .acms-form input[type=text], .acms-form input[type=password], .acms-form input[type=datetime], .acms-form input[type=datetime-local], .acms-form input[type=date], .acms-form input[type=month], .acms-form input[type=time], .acms-form input[type=week], .acms-form input[type=number], .acms-form input[type=email], .acms-form input[type=url], .acms-form input[type=search], .acms-form input[type=tel] {
        min-height: 26px;
        padding: 4px;
        line-height: 1;
        font-size: 1.4rem
    }
}

@media print and (min-width: 768px) {
    .acms-form input[type=text], .acms-form input[type=password], .acms-form input[type=datetime], .acms-form input[type=datetime-local], .acms-form input[type=date], .acms-form input[type=month], .acms-form input[type=time], .acms-form input[type=week], .acms-form input[type=number], .acms-form input[type=email], .acms-form input[type=url], .acms-form input[type=search], .acms-form input[type=tel] {
        font-size: 1.4rem
    }
}

@media(min-width: 768px) {
    .acms-form input[type=text].acms-form-small, .acms-form input[type=password].acms-form-small, .acms-form input[type=datetime].acms-form-small, .acms-form input[type=datetime-local].acms-form-small, .acms-form input[type=date].acms-form-small, .acms-form input[type=month].acms-form-small, .acms-form input[type=time].acms-form-small, .acms-form input[type=week].acms-form-small, .acms-form input[type=number].acms-form-small, .acms-form input[type=email].acms-form-small, .acms-form input[type=url].acms-form-small, .acms-form input[type=search].acms-form-small, .acms-form input[type=tel].acms-form-small {
        min-height: 22px;
        font-size: 1.2rem
    }
}

@media print and (min-width: 768px) {
    .acms-form input[type=text].acms-form-small, .acms-form input[type=password].acms-form-small, .acms-form input[type=datetime].acms-form-small, .acms-form input[type=datetime-local].acms-form-small, .acms-form input[type=date].acms-form-small, .acms-form input[type=month].acms-form-small, .acms-form input[type=time].acms-form-small, .acms-form input[type=week].acms-form-small, .acms-form input[type=number].acms-form-small, .acms-form input[type=email].acms-form-small, .acms-form input[type=url].acms-form-small, .acms-form input[type=search].acms-form-small, .acms-form input[type=tel].acms-form-small {
        font-size: 1.2rem
    }
}

@media(min-width: 768px) {
    .acms-form input[type=text].acms-form-large, .acms-form input[type=password].acms-form-large, .acms-form input[type=datetime].acms-form-large, .acms-form input[type=datetime-local].acms-form-large, .acms-form input[type=date].acms-form-large, .acms-form input[type=month].acms-form-large, .acms-form input[type=time].acms-form-large, .acms-form input[type=week].acms-form-large, .acms-form input[type=number].acms-form-large, .acms-form input[type=email].acms-form-large, .acms-form input[type=url].acms-form-large, .acms-form input[type=search].acms-form-large, .acms-form input[type=tel].acms-form-large {
        min-height: 38px;
        font-size: 1.6rem
    }
}

@media print and (min-width: 768px) {
    .acms-form input[type=text].acms-form-large, .acms-form input[type=password].acms-form-large, .acms-form input[type=datetime].acms-form-large, .acms-form input[type=datetime-local].acms-form-large, .acms-form input[type=date].acms-form-large, .acms-form input[type=month].acms-form-large, .acms-form input[type=time].acms-form-large, .acms-form input[type=week].acms-form-large, .acms-form input[type=number].acms-form-large, .acms-form input[type=email].acms-form-large, .acms-form input[type=url].acms-form-large, .acms-form input[type=search].acms-form-large, .acms-form input[type=tel].acms-form-large {
        font-size: 1.6rem
    }
}

@media(min-width: 768px) {
    .acms-form textarea {
        font-size: 1.4rem
    }
}

@media print and (min-width: 768px) {
    .acms-form textarea {
        font-size: 1.4rem
    }
}

@media(min-width: 768px) {
    .acms-form .entryFormLiteEditor {
        font-size: 1.4rem
    }
}

@media print and (min-width: 768px) {
    .acms-form .entryFormLiteEditor {
        font-size: 1.4rem
    }
}

@media(min-width: 768px) {
    .acms-form select {
        min-height: 26px;
        padding: 5px 30px 4px 8px;
        font-size: 1.2rem
    }
}

@media print and (min-width: 768px) {
    .acms-form select {
        font-size: 1.2rem
    }
}

@media all and (-ms-high-contrast: none) {
    .acms-form select {
        padding-right: 30px
    }
}

.acms-form-block {
    display: block
}

.acms-form-inline, .acms-form-inline label {
    display: inline
}

.acms-form-group {
    margin-bottom: 10px
}

    .acms-form-group:before, .acms-form-group:after {
        display: table;
        content: " "
    }

    .acms-form-group:after {
        clear: both
    }

.acms-form-action {
    display: table;
    border-collapse: separate;
    border-spacing: 0
}

    .acms-form-action .acms-form-side, .acms-form-action .acms-form-side-btn, .acms-form-action input {
        display: table-cell
    }

    .acms-form-action .acms-form-side {
        width: 1%;
        padding: 0 6px;
        color: #333;
        line-height: 1;
        font-size: 1.4rem;
        vertical-align: middle;
        background: #ececec;
        border: 1px solid rgba(0,0,0,.2);
        border-radius: 3px
    }

@media print {
    .acms-form-action .acms-form-side {
        font-size: 1.4rem
    }
}

.acms-form-action .acms-form-side:link, .acms-form-action .acms-form-side:hover, .acms-form-action .acms-form-side:visited, .acms-form-action .acms-form-side:active, .acms-form-action .acms-form-side:focus {
    color: #333
}

.acms-form-action a.acms-form-side {
    text-decoration: none
}

    .acms-form-action a.acms-form-side:hover {
        text-decoration: none;
        background: #f1f1f1;
        border-color: rgba(0,0,0,.3)
    }

.acms-form-action .acms-form-side:first-child {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.acms-form-action .acms-form-side:last-child {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.acms-form-action .acms-form-side-btn {
    position: relative;
    width: 1%;
    white-space: nowrap;
    vertical-align: middle
}

    .acms-form-action .acms-form-side-btn:first-child > .acms-btn, .acms-form-action .acms-form-side-btn:first-child > .acms-btn-admin {
        vertical-align: top;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0
    }

    .acms-form-action .acms-form-side-btn:last-child > .acms-btn, .acms-form-action .acms-form-side-btn:last-child > .acms-btn-admin {
        vertical-align: top;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0
    }

.acms-form-action .acms-form-side .acms-form-checkbox, .acms-form-action .acms-form-side .acms-form-radio {
    padding: 0
}

.acms-form-action .acms-form-side .acms-ico-radio, .acms-form-action .acms-form-side .acms-ico-checkbox {
    margin-right: 0
}

.acms-form-action input[type=text], .acms-form-action input[type=search], .acms-form-action input[type=email], .acms-form-action input[type=password], .acms-form-action input[type=url] {
    width: 100%;
    height: 32px
}

@media(min-width: 768px) {
    .acms-form-action input[type=text], .acms-form-action input[type=search], .acms-form-action input[type=email], .acms-form-action input[type=password], .acms-form-action input[type=url] {
        height: 26px
    }
}

.acms-form-action:not(.acms-form-action-separate) input[type=text]:first-child, .acms-form-action:not(.acms-form-action-separate) input[type=search]:first-child, .acms-form-action:not(.acms-form-action-separate) input[type=email]:first-child, .acms-form-action:not(.acms-form-action-separate) input[type=password]:first-child, .acms-form-action:not(.acms-form-action-separate) input[type=url]:first-child {
    border-right: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.acms-form-action:not(.acms-form-action-separate) input[type=text]:last-child, .acms-form-action:not(.acms-form-action-separate) input[type=search]:last-child, .acms-form-action:not(.acms-form-action-separate) input[type=email]:last-child, .acms-form-action:not(.acms-form-action-separate) input[type=password]:last-child, .acms-form-action:not(.acms-form-action-separate) input[type=url]:last-child {
    border-left: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.acms-form-action.acms-form-action-separate .acms-form-side-btn:first-child {
    padding: 0 10px 0 0
}

    .acms-form-action.acms-form-action-separate .acms-form-side-btn:first-child > .acms-btn, .acms-form-action.acms-form-action-separate .acms-form-side-btn:first-child > .acms-btn-admin {
        vertical-align: top;
        border-radius: 3px
    }

.acms-form-action.acms-form-action-separate .acms-form-side-btn:last-child {
    padding: 0 0 0 10px
}

    .acms-form-action.acms-form-action-separate .acms-form-side-btn:last-child > .acms-btn, .acms-form-action.acms-form-action-separate .acms-form-side-btn:last-child > .acms-btn-admin {
        vertical-align: top;
        border-radius: 3px
    }

.acms-form-error {
    color: #c91032;
    background: #fff8f8;
    border-color: #dc8d99
}

.acms-text-error {
    display: block;
    color: #c91032
}

.acms-text-helper {
    color: #707070;
    font-size: 1.2rem
}

@media print {
    .acms-text-helper {
        font-size: 1.2rem
    }
}

.acms-form-width-full {
    width: 100%
}

.acms-form-width-3quarters {
    width: 75%
}

.acms-form-width-half {
    width: 50%
}

.acms-form-width-quarter {
    width: 25%
}

.acms-form-width-large {
    width: 100%;
    max-width: 540px
}

.acms-form-width-medium {
    width: 100%;
    max-width: 380px
}

.acms-form-width-small {
    width: 100%;
    max-width: 220px
}

.acms-form-width-mini {
    width: 100%;
    max-width: 140px
}

.acms-ico-checkbox, .acms-ico-radio {
    display: inline-block;
    width: 20px;
    *width: auto;
    _width: auto;
    height: 20px;
    *height: auto;
    _height: auto;
    margin: 0 5px 0 0;
    vertical-align: middle
}

.acms-ico-checkbox {
    background: url("../../system/images/marker/ico_input.png") no-repeat left top;
    *background-image: none;
    _background-image: none;
    background-size: 40px 80px
}

.acms-form-checkbox input {
    position: absolute;
    margin: 0;
    padding: 0;
    font-size: 100%;
    opacity: 0
}

    .acms-form-checkbox input:focus + label .acms-ico-checkbox, .acms-form-checkbox input:focus + .acms-ico-checkbox {
        background: url("../../system/images/marker/ico_input.png") no-repeat left -60px;
        background-size: 40px 80px
    }

    .acms-form-checkbox input:checked + label .acms-ico-checkbox, .acms-form-checkbox input:checked + .acms-ico-checkbox {
        background: url("../../system/images/marker/ico_input.png") no-repeat left -20px;
        background-size: 40px 80px
    }

    .acms-form-checkbox input:disabled + label .acms-ico-checkbox, .acms-form-checkbox input:disabled + .acms-ico-checkbox {
        background: url("../../system/images/marker/ico_input.png") no-repeat left -40px;
        background-size: 40px 80px;
        cursor: not-allowed
    }

    .acms-form-checkbox input:disabled + label {
        opacity: .6
    }

        .acms-form-checkbox input:disabled + label:hover {
            cursor: not-allowed
        }

.acms-form-checkbox label:hover {
    cursor: pointer
}

.acms-ico-radio {
    background: url("../../system/images/marker/ico_input.png") no-repeat -20px top;
    background-size: 40px 80px
}

.acms-form-radio input {
    position: absolute;
    margin: 0;
    padding: 0;
    font-size: 100%;
    opacity: 0
}

    .acms-form-radio input:focus + label .acms-ico-radio, .acms-form-radio input:focus + .acms-ico-radio {
        background: url("../../system/images/marker/ico_input.png") no-repeat -20px -60px;
        background-size: 40px 80px
    }

    .acms-form-radio input:checked + label .acms-ico-radio, .acms-form-radio input:checked + .acms-ico-radio {
        background: url("../../system/images/marker/ico_input.png") no-repeat -20px -20px;
        background-size: 40px 80px
    }

    .acms-form-radio input:disabled + label .acms-ico-radio, .acms-form-radio input:disabled + .acms-ico-radio {
        background: url("../../system/images/marker/ico_input.png") no-repeat -20px -40px;
        background-size: 40px 80px;
        cursor: not-allowed
    }

    .acms-form-radio input:disabled + label {
        opacity: .6
    }

        .acms-form-radio input:disabled + label:hover {
            cursor: not-allowed
        }

.acms-form-radio label:hover {
    cursor: pointer
}

.acms-form-checkbox, .acms-form-radio {
    position: relative;
    display: inline-block;
    margin-right: 15px;
    cursor: pointer
}

    .acms-form-radio:before, .acms-form-radio::before {
        width: 16px;
        height: 16px;
        border-radius: 10px
    }

.acms-btn-checkbox label, .acms-btn-radio label {
    width: auto
}

.acms-btn-checkbox {
    display: none
}

    .acms-btn-checkbox + label {
        position: relative;
        display: inline-block;
        padding: 9px;
        background-color: #fafafa;
        border: 1px solid #cacece;
        border-radius: 3px;
        box-shadow: 0 1px 2px rgba(0,0,0,.05),inset 0 -15px 10px -12px rgba(0,0,0,.05)
    }

        .acms-btn-checkbox + label:active, .acms-btn-checkbox:checked + label:active {
            box-shadow: 0 1px 2px rgba(0,0,0,.05),inset 0 1px 3px rgba(0,0,0,.1)
        }

    .acms-btn-checkbox:checked + label {
        color: #fff;
        background-color: #bbb;
        border: 1px solid #adb8c0;
        box-shadow: 0 1px 2px rgba(0,0,0,.05),inset 0 -15px 10px -12px rgba(0,0,0,.05),inset 15px 10px -12px rgba(255,255,255,.1)
    }

        .acms-btn-checkbox:checked + label:after {
            position: absolute;
            top: 0;
            left: 3px;
            color: #99a1a7;
            content: "";
            font-size: 1.4rem
        }

@media print {
    .acms-btn-checkbox:checked + label:after {
        font-size: 1.4rem
    }
}

.acms-btn-radio {
    display: none
}

    .acms-btn-radio + label {
        position: relative;
        display: inline-block;
        padding: 9px;
        background-color: #fafafa;
        border: 1px solid #cacece;
        border-radius: 50px;
        box-shadow: 0 1px 2px rgba(0,0,0,.05),inset 0 -15px 10px -12px rgba(0,0,0,.05);
        -webkit-appearance: none
    }

    .acms-btn-radio:checked + label:after {
        position: absolute;
        top: 3px;
        left: 3px;
        width: 12px;
        height: 12px;
        text-shadow: 0;
        content: "";
        font-size: 3.2rem
    }

@media print {
    .acms-btn-radio:checked + label:after {
        font-size: 3.2rem
    }
}

.acms-btn-radio:checked + label {
    color: #fff;
    background-color: #bbb;
    border: 1px solid #adb8c0;
    box-shadow: 0 1px 2px rgba(0,0,0,.05),inset 0 -15px 10px -12px rgba(0,0,0,.05),inset 15px 10px -12px rgba(255,255,255,.1),inset 0 0 10px rgba(0,0,0,.1)
}

.acms-btn-radio + label:active, .acms-btn-radio .acms-btn-radio:checked + label:active {
    box-shadow: 0 1px 2px rgba(0,0,0,.05),inset 0 1px 3px rgba(0,0,0,.1)
}

.acms-table {
    width: 100%;
    max-width: 100%;
    border-top: 1px solid #ddd;
    border-collapse: collapse
}

    .acms-table th, .acms-table td {
        padding: 10px;
        vertical-align: top;
        border-bottom: 1px solid #ddd
    }

    .acms-table th {
        text-align: left;
        vertical-align: top
    }

    .acms-table.acms-table-none {
        border-top: 0
    }

        .acms-table.acms-table-none th, .acms-table.acms-table-none td {
            border-bottom: 0
        }

.panel-body .acms-table th, .panel-body .acms-table td {
    padding: 5px
}

.panel-body .acms-table .acms-table-container {
    padding: 10px 5px
}

.acms-table, .acms-table:before, .acms-table:after, .acms-table-admin-edit, .acms-table-admin-edit th, .acms-table-admin-edit td, .acms-table-heading, .acms-table-heading th, .acms-table-heading td {
    box-sizing: border-box
}

    .acms-table-heading th, .acms-table-heading td {
        border-bottom: 1px solid #ccc
    }

    .acms-table-heading th {
        color: #404040;
        background: #f5f5f5
    }

.acms-table-bordered {
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd
}

    .acms-table-bordered th, .acms-table-bordered td {
        border-right: 1px solid #ddd;
        border-bottom: 1px solid #ddd
    }

.acms-table-striped tr:nth-of-type(odd), .acms-table-striped tr.odd {
    background: #fff
}

.acms-table-striped tr:nth-of-type(even), .acms-table-striped tr.even {
    background: #f5f5f5
}

.acms-table-hover td, .acms-table-hover-line tr {
    transition: .2s background-color
}

.acms-table-hover tr:hover td, .acms-table-hover tr:focus-within td, .acms-table-hover tr.hover td {
    background: #e8f2ff;
    cursor: pointer
}

.acms-table-hover-line tr:hover, .acms-table-hover-line tr:focus-within, .acms-table-hover tr.hover {
    background: #e8f2ff
}

.acms-table-edit {
    border-top: none
}

    .acms-table-edit th, .acms-table-edit td {
        vertical-align: middle
    }

    .acms-table-edit th {
        text-align: right
    }

.acms-table-sortable-active th, .acms-table-sortable-active td, .acms-table-sortable-active tr:nth-of-type(even) th, .acms-table-sortable-active tr:nth-of-type(even) td, .acms-table-sortable-active tr.even th, .acms-table-sortable-active tr.even td {
    background-color: #fff
}

[class*=acms-table-scroll-], .acms-table-responsive {
    border: 1px solid #ddd
}

@media(max-width: 479px) {
    .acms-table-scroll-xs {
        margin-bottom: 15px;
        overflow-x: scroll;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch
    }

        .acms-table-scroll-xs th:not([style*=max-width]), .acms-table-scroll-xs td:not([style*=max-width]) {
            white-space: nowrap
        }
}

@media(min-width: 480px)and (max-width: 767px) {
    .acms-table-scroll-sm {
        margin-bottom: 15px;
        overflow-x: scroll;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch
    }

        .acms-table-scroll-sm th:not([style*=max-width]), .acms-table-scroll-sm td:not([style*=max-width]) {
            white-space: nowrap
        }
}

@media(min-width: 768px)and (max-width: 1079px) {
    .acms-table-scroll-md {
        margin-bottom: 15px;
        overflow-x: scroll;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch
    }

        .acms-table-scroll-md th:not([style*=max-width]), .acms-table-scroll-md td:not([style*=max-width]) {
            white-space: nowrap
        }
}

@media(min-width: 1080px)and (max-width: 1279px) {
    .acms-table-scroll-lg {
        margin-bottom: 15px;
        overflow-x: scroll;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch
    }

        .acms-table-scroll-lg th:not([style*=max-width]), .acms-table-scroll-lg td:not([style*=max-width]) {
            white-space: nowrap
        }
}

@media(min-width: 1280px) {
    .acms-table-scroll-xl {
        margin-bottom: 15px;
        overflow-x: scroll;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch
    }

        .acms-table-scroll-xl th:not([style*=max-width]), .acms-table-scroll-xl td:not([style*=max-width]) {
            white-space: nowrap
        }
}

@media(max-width: 767px) {
    .acms-table-responsive {
        margin-bottom: 15px;
        overflow-x: scroll;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch
    }

        .acms-table-responsive th, .acms-table-responsive td {
            white-space: nowrap
        }

    .acms-table-scrollable th, .acms-table-scrollable td, .js-table-unit-scroll-hint th, .js-table-unit-scroll-hint td {
        display: table-cell !important;
        white-space: nowrap
    }

    .acms-table-entry th, .acms-table-entry td {
        display: block;
        box-sizing: border-box;
        width: 100%;
        padding-right: 0;
        padding-left: 0
    }

    .acms-table-entry th {
        padding-bottom: 0;
        text-align: left
    }

    .acms-table-entry td {
        padding-top: 3px
    }

    .acms-table-entry .detail-fade-body th, .acms-table-entry .detail-fade-body td {
        padding-right: 10px;
        padding-left: 10px
    }
}

.acms-table-info th, .acms-table-info td, .acms-table-info, .acms-table-hover .acms-table-info:hover th, .acms-table-hover .acms-table-info:hover td, .acms-table-hover .acms-table-info:hover {
    background: #bccce2
}

.acms-table-success th, .acms-table-success td, .acms-table-success, .acms-table-hover .acms-table-success:hover th, .acms-table-hover .acms-table-success:hover td, .acms-table-hover .acms-table-success:hover {
    background: #aad9cd
}

.acms-table-warning th, .acms-table-warning td, .acms-table-warning, .acms-table-hover .acms-table-warning:hover th, .acms-table-hover .acms-table-warning:hover td, .acms-table-hover .acms-table-warning:hover {
    background: #e1d7bb
}

.acms-table-danger th, .acms-table-danger td, .acms-table-danger, .acms-table-hover .acms-table-danger:hover th, .acms-table-hover .acms-table-danger:hover td, .acms-table-hover .acms-table-danger:hover {
    background: #e1bcc4
}

.acms-table-center {
    text-align: center
}

.acms-table-admin-edit .acms-table-center, .acms-table-admin-edit-bordered .acms-table-center, .acms-table-admin .acms-table-center {
    text-align: center
}

.acms-table-left {
    text-align: left
}

.acms-table-admin-edit .acms-table-left, .acms-table-admin-edit-bordered .acms-table-left, .acms-table-admin .acms-table-left {
    text-align: left
}

.acms-table-nowrap {
    width: 1%;
    white-space: nowrap
}

.acms-table-break-word {
    word-break: break-word
}

.clearHidden {
    display: block;
    clear: both;
    height: 0;
    margin: 0;
    border: none;
    visibility: hidden
}

.entry-container [class*=acms-col-] {
    padding: 0
}

.entry-container [class*=column-image] {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box
}

.entry-container [class*=column-file] {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box
}

.entry-container [class*=column-map] {
    border-right: 20px solid rgba(0,0,0,0);
    border-left: 20px solid rgba(0,0,0,0);
    box-sizing: border-box
}

.entry-container [class*=column-yolp] {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box
}

.entry-container [class*=column-street-view]:not(.column-street-view-inner) {
    padding-right: 20px;
    padding-left: 20px
}

.entry-container [class*=column-youtube] {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box
}

.entry-container [class*=column-video] {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box
}

.entry-container [class*=column-eximage] {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box
}

.entry-container [class*=column-media] {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box
}

.entry-container [class*=column-quote] {
    margin-right: 20px;
    margin-left: 20px
}

.entry-container [class*=column-module] {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box
}

[class*=column-image] {
    margin-bottom: 40px
}

[class*=column-file] {
    margin-bottom: 40px
}

[class*=column-map] {
    margin-bottom: 40px
}

[class*=column-yolp] {
    margin-bottom: 40px
}

[class*=column-street-view] {
    margin-bottom: 40px
}

[class*=column-youtube] {
    margin-bottom: 40px
}

[class*=column-video] {
    margin-bottom: 40px
}

[class*=column-eximage] {
    margin-bottom: 40px
}

[class*=column-media] {
    margin-bottom: 40px
}

[class*=column-quote] {
    margin-bottom: 40px
}

[class*=column-module] {
    margin-bottom: 40px
}

[class*=column-image], [class*=column-media], [class*=column-eximage] {
    display: block
}

    [class*=column-image].caption, [class*=column-media].caption, [class*=column-eximage].caption {
        margin-bottom: 20px
    }

    [class*=column-image] a, [class*=column-media] a, [class*=column-eximage] a {
        display: block
    }

    [class*=column-image] img, [class*=column-media] img, [class*=column-eximage] img {
        max-width: 100%;
        height: auto;
        vertical-align: top
    }

    [class*=column-image] .caption, [class*=column-media] .caption, [class*=column-eximage] .caption {
        margin: 5px 0 0 0
    }

    [class*=column-image][style*=width] {
        max-width: 100%
    }

    [class*=column-media] a[href*=media-download] {
        display: inline-block;
        width: 100%
    }

[class*=column-map] > img, [class*=column-yolp] > img {
    max-width: 100%
}

[class*=column-map] img, [class*=column-yolp] img {
    width: auto;
    height: auto
}

[class*=column-map] > div {
    max-width: 100%
}

[class*=column-yolp] {
    width: auto !important
}

[class*=column-quote] blockquote {
    padding: 20px 10px 20px 20px
}

[class*=column-quote] .quoteImageContainer {
    position: relative;
    float: left;
    max-width: 154px;
    margin-right: 25px
}

[class*=column-quote] .quoteImage {
    display: block;
    max-width: 100%;
    height: auto
}

[class*=column-quote] .quoteTitle {
    margin: 0 0 5px 0;
    padding: 0;
    line-height: 1.4;
    font-size: 1.8rem
}

@media print {
    [class*=column-quote] .quoteTitle {
        font-size: 1.8rem
    }
}

[class*=column-quote] .quoteTitleLink {
    color: #006cd8
}

[class*=column-quote] .quoteSiteName {
    margin: 0 0 10px 0;
    padding: 0;
    color: #666;
    font-size: 1.1rem
}

@media print {
    [class*=column-quote] .quoteSiteName {
        font-size: 1.1rem
    }
}

[class*=column-quote] .quoteDescription {
    margin: 0;
    padding: 0;
    color: #333;
    line-height: 1.6;
    font-size: 1.2rem
}

@media print {
    [class*=column-quote] .quoteDescription {
        font-size: 1.2rem
    }
}

.column-image-left {
    float: left;
    text-align: left
}

.column-image-right {
    float: right;
    text-align: right
}

.column-image-center {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.column-image-auto {
    float: none
}

.column-file-left {
    text-align: left;
    float: left;
    text-align: left
}

    .column-file-left + .caption {
        text-align: left
    }

.column-file-right {
    text-align: right;
    float: right;
    text-align: right
}

    .column-file-right + .caption {
        text-align: right
    }

.column-file-center {
    text-align: center;
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

    .column-file-center + .caption {
        text-align: center
    }

.column-file-auto {
    text-align: auto;
    float: none
}

    .column-file-auto + .caption {
        text-align: auto
    }

.column-map-left {
    float: left;
    text-align: left
}

.column-map-right {
    float: right;
    text-align: right
}

.column-map-center {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.column-map-auto {
    float: none
}

.column-yolp-left {
    float: left;
    text-align: left
}

.column-yolp-right {
    float: right;
    text-align: right
}

.column-yolp-center {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.column-yolp-auto {
    float: none
}

.column-street-view-left {
    float: left;
    text-align: left
}

.column-street-view-right {
    float: right;
    text-align: right
}

.column-street-view-center {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.column-street-view-auto {
    float: none
}

.column-youtube-left {
    float: left;
    text-align: left
}

.column-youtube-right {
    float: right;
    text-align: right
}

.column-youtube-center {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.column-youtube-auto {
    float: none
}

.column-video-left {
    float: left;
    text-align: left
}

.column-video-right {
    float: right;
    text-align: right
}

.column-video-center {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.column-video-auto {
    float: none
}

.column-eximage-left {
    float: left;
    text-align: left
}

.column-eximage-right {
    float: right;
    text-align: right
}

.column-eximage-center {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.column-eximage-auto {
    float: none
}

.column-media-left {
    float: left;
    text-align: left
}

    .column-media-left :not([href*=media-download]) + .caption {
        text-align: center
    }

.column-media-right {
    float: right;
    text-align: right
}

    .column-media-right :not([href*=media-download]) + .caption {
        text-align: center
    }

.column-media-center {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

    .column-media-center :not([href*=media-download]) + .caption {
        text-align: center
    }

.column-media-auto {
    float: none
}

    .column-media-auto :not([href*=media-download]) + .caption {
        text-align: center;
        font-family: Georgia;
    }

.column-quote-left {
    float: left;
    text-align: left
}

.column-quote-right {
    float: right;
    text-align: right
}

.column-quote-center {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.column-quote-auto {
    float: none
}

.column-module-left {
    float: left;
    text-align: left
}

.column-module-right {
    float: right;
    text-align: right
}

.column-module-center {
    display: block;
    float: none;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.column-module-auto {
    float: none
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-image] {
    width: auto !important;
    max-width: 100%
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-file] {
    width: auto !important;
    max-width: 100%
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-map] {
    width: auto !important;
    max-width: 100%
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-yolp] {
    width: auto !important;
    max-width: 100%
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-street-view] {
    width: auto !important;
    max-width: 100%
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-youtube] {
    width: 100% !important
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-video] {
    width: 100% !important
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-eximage] {
    width: auto !important;
    max-width: 100%
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-media] {
    width: auto !important;
    max-width: 100%
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-quote] {
    width: auto !important;
    max-width: 100%
}

.acms-entry-unit-full:not(.acms-unit-size-inherit) [class*=column-module] {
    width: auto !important;
    max-width: 100%
}

@media(max-width: 480px) {
    [class*=acms-col-][class*=-right] {
        float: left
    }

        [class*=acms-col-][class*=-right] + * {
            clear: both
        }
}

.entry-container {
    margin-right: 20px;
    margin-left: 20px
}

.column-pdf-image {
    width: 100%;
    border: solid 1px #aaa
}

.column-inner-street-view {
    width: 100%;
    padding-bottom: 100%
}

.column-youtube, .column-iframe {
    position: relative;
    width: 100%;
    height: 100%;
    padding-top: 30px;
    padding-bottom: 56.25%;
    overflow: hidden
}

    .column-youtube iframe, .column-youtube object, .column-youtube embed, .column-iframe iframe, .column-iframe object, .column-iframe embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }

.highlight1 {
    background-color: #ff6
}

.highlight2 {
    background-color: #a0ffff
}

.highlight3 {
    background-color: #9f9
}

.highlight4 {
    background-color: #f99
}

.highlight5 {
    background-color: #f6f
}

.highlight6 {
    background-color: #800
}

.clearHidden {
    display: block;
    clear: both;
    height: 0;
    margin: 0;
    border: none;
    visibility: hidden
}

.clearfix:after {
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
    content: "."
}

.clearfix {
    _display: inline-table;
    zoom: 1
}

.acms-float-right {
    float: right
}

.acms-float-left {
    float: left
}

.acms-clear {
    clear: both
}

.acms-text-center {
    text-align: center
}

.acms-text-right {
    text-align: right
}

.acms-text-left {
    text-align: left
}

.acms-text-nowrap {
    white-space: nowrap
}

.acms-align-top {
    vertical-align: top
}

.acms-align-middle {
    vertical-align: middle
}

.acms-align-bottom {
    vertical-align: bottom
}

.acms-text-primary {
    color: #004cc5
}

.acms-text-info {
    color: #4b4b4b
}

.acms-text-success {
    color: #618e00
}

.acms-text-warning {
    color: #c57300
}

.acms-text-danger {
    color: #c5001d
}

.acms-cell-text-center {
    text-align: center !important
}

.acms-cell-text-right {
    text-align: right !important
}

.acms-cell-text-left {
    text-align: left !important
}

.acms-cell-text-nowrap {
    white-space: nowrap !important
}

.acms-cell-text-bold {
    font-weight: bold !important
}

.acms-cell-text-top {
    vertical-align: top !important
}

.acms-cell-text-middle {
    vertical-align: middle !important
}

.acms-cell-text-bottom {
    vertical-align: bottom !important
}

.acms-round {
    border-radius: 10%
}

.acms-circle {
    border-radius: 50%
}

.acms-icon-bg {
    padding: 8px;
    font-size: 1.8rem;
    color: #fff;
    background-color: #999
}

@media print {
    .acms-icon-bg {
        font-size: 1.8rem
    }
}

.acms-icon-bg-info {
    background-color: #7096cd
}

.acms-icon-bg-success {
    background-color: #4ac0a4
}

.acms-icon-bg-warning {
    background-color: #cdb770
}

.acms-icon-bg-danger {
    background-color: #cd7086
}

.acms-icon-bg > [class*=acms-icon-] {
    vertical-align: baseline
}

.acms-padding-none {
    padding: 0 !important
}

.acms-padding-mini {
    padding: 5px !important
}

.acms-padding-small {
    padding: 10px !important
}

.acms-padding-medium {
    padding: 15px !important
}

.acms-padding-large {
    padding: 20px !important
}

.acms-margin-none {
    margin: 0 !important
}

.acms-margin-top-mini {
    margin-top: 5px !important
}

.acms-margin-top-small {
    margin-top: 10px !important
}

.acms-margin-top-medium {
    margin-top: 20px !important
}

.acms-margin-top-large {
    margin-top: 30px !important
}

.acms-margin-right-mini {
    margin-right: 5px !important
}

.acms-margin-right-small {
    margin-right: 10px !important
}

.acms-margin-right-medium {
    margin-right: 20px !important
}

.acms-margin-right-large {
    margin-right: 30px !important
}

.acms-margin-bottom-mini {
    margin-bottom: 5px !important
}

.acms-margin-bottom-small {
    margin-bottom: 10px !important
}

.acms-margin-bottom-medium {
    margin-bottom: 20px !important
}

.acms-margin-bottom-large {
    margin-bottom: 30px !important
}

.acms-margin-left-mini {
    margin-left: 5px !important
}

.acms-margin-left-small {
    margin-left: 10px !important
}

.acms-margin-left-medium {
    margin-left: 20px !important
}

.acms-margin-left-large {
    margin-left: 30px !important
}

.acms-inline-space {
    display: inline;
    margin-right: 10px
}

.acms-inline-space-left {
    display: inline;
    margin-left: 10px
}

@media(max-width: 767px) {
    .acms-clear-sp {
        clear: both
    }

    .acms-float-none-sp {
        float: none
    }

    .acms-width-sp {
        width: 100% !important
    }

    .acms-width-auto-sp {
        width: auto !important
    }

    .acms-margin-sp {
        margin-bottom: 10px !important;
        margin-left: 10px !important
    }

    .acms-margin-top-bottom-sp {
        margin-top: 10px !important;
        margin-bottom: 10px !important
    }

    .acms-margin-top-bottom-small-sp {
        margin-top: 5px !important;
        margin-bottom: 5px !important
    }

    .acms-margin-bottom-sp {
        margin-bottom: 10px !important
    }

    .acms-border-top-sp {
        border-top: 1px solid #ddd !important
    }

    .acms-border-bottom-sp {
        border-bottom: 1px solid #ddd !important
    }

    .acms-table-admin-edit .acms-border-bottom-sp {
        border-bottom: 1px solid #ddd !important
    }

    .acms-title-sp {
        font-size: 16px !important
    }

    .acms-form textarea, .acms-form input[type=text] {
        width: 100%
    }
}

.acms-img-responsive {
    display: block;
    max-width: 100%;
    height: auto
}

.acms-width-max {
    width: 100% !important
}

.acms-height-max {
    height: 100% !important
}

.acms-width-height-max, .acms-width-height-max html, .acms-width-height-max body {
    width: 100%;
    height: 100%
}

.acms-block {
    display: block !important
}

.acms-inline {
    display: inline !important
}

.acms-inline-block {
    display: inline-block !important
}

.acms-table-cell {
    display: table-cell !important
}

.acms-hide {
    display: none !important
}

@media(max-width: 767px) {
    .acms-show-sp {
        display: block !important
    }

    .acms-show-inline-sp {
        display: inline !important
    }

    .acms-hide-sp {
        display: none !important
    }
}

@media(min-width: 768px) {
    .acms-show-tablet {
        display: block !important
    }

    .acms-hide-tablet {
        display: none !important
    }
}

@media(min-width: 1080px) {
    .acms-show-pc {
        display: block !important
    }

    .acms-hide-pc {
        display: none !important
    }
}

@media(max-width: 479px) {
    .acms-block-xs {
        display: block !important
    }

    .acms-inline-xs {
        display: inline !important
    }

    .acms-inline-block-xs {
        display: inline-block !important
    }

    .acms-table-cell-xs {
        display: table-cell !important
    }

    .acms-hide-xs {
        display: none !important
    }
}

@media(min-width: 480px)and (max-width: 767px) {
    .acms-block-sm {
        display: block !important
    }

    .acms-inline-sm {
        display: inline !important
    }

    .acms-inline-block-sm {
        display: inline-block !important
    }

    .acms-table-cell-sm {
        display: table-cell !important
    }

    .acms-hide-sm {
        display: none !important
    }
}

@media(min-width: 768px)and (max-width: 1079px) {
    .acms-block-md {
        display: block !important
    }

    .acms-inline-md {
        display: inline !important
    }

    .acms-inline-block-md {
        display: inline-block !important
    }

    .acms-table-cell-md {
        display: table-cell !important
    }

    .acms-hide-md {
        display: none !important
    }
}

@media(min-width: 1080px)and (max-width: 1279px) {
    .acms-block-lg {
        display: block !important
    }

    .acms-inline-lg {
        display: inline !important
    }

    .acms-inline-block-lg {
        display: inline-block !important
    }

    .acms-table-cell-lg {
        display: table-cell !important
    }

    .acms-hide-lg {
        display: none !important
    }
}

@media(min-width: 1280px) {
    .acms-block-xl {
        display: block !important
    }

    .acms-inline-xl {
        display: inline !important
    }

    .acms-inline-block-xl {
        display: inline-block !important
    }

    .acms-table-cell-xl {
        display: table-cell !important
    }

    .acms-hide-xl {
        display: none !important
    }
}

.acms-hide-visually {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    border: 0;
    clip: rect(0 0 0 0)
}

@media(max-width: 479px) {
    .acms-hide-visually-xs {
        position: absolute;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        overflow: hidden;
        border: 0;
        clip: rect(0 0 0 0)
    }
}

@media(min-width: 480px)and (max-width: 767px) {
    .acms-hide-visually-sm {
        position: absolute;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        overflow: hidden;
        border: 0;
        clip: rect(0 0 0 0)
    }
}

@media(min-width: 768px)and (max-width: 1079px) {
    .acms-hide-visually-md {
        position: absolute;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        overflow: hidden;
        border: 0;
        clip: rect(0 0 0 0)
    }
}

@media(min-width: 1080px)and (max-width: 1279px) {
    .acms-hide-visually-lg {
        position: absolute;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        overflow: hidden;
        border: 0;
        clip: rect(0 0 0 0)
    }
}

@media(min-width: 1280px) {
    .acms-hide-visually-xl {
        position: absolute;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        overflow: hidden;
        border: 0;
        clip: rect(0 0 0 0)
    }
}

@media print {
    .acms-print-block {
        display: block !important
    }

    .acms-print-inline {
        display: inline !important
    }

    .acms-print-inline-block {
        display: inline-block !important
    }

    .acms-print-hide {
        display: none !important
    }
}

.l-entry-section {
    position: relative;
    left: 50%;
    width: 100vw;
    margin-bottom: 40px;
    padding: 60px 0 80px;
    transform: translateX(-50%)
}

@media screen and (min-width: 768px) {
    .l-entry-section {
        margin-bottom: 80px;
        padding: 10px 0;
    }
}

.l-entry-section__background {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.l-footer {
    position: relative;
    padding: 50px 0;
    background: #fff
}

@media screen and (min-width: 768px) {
    .l-footer {
        padding: 30px 0 24px
    }
}

@media screen and (min-width: 768px) {
    .l-footer__inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between
    }
}

.l-footer__brand {
    margin-bottom: 24px
}

@media screen and (min-width: 768px) {
    .l-footer__brand {
        margin-bottom: 48px
    }
}

.l-footer__sitemap {
    margin-bottom: 40px
}

@media screen and (min-width: 768px) {
    .l-footer__sitemap {
        margin-bottom: 48px
    }
}

.l-footer__copyright {
    display: block;
    font-family: Helvetica;
    text-align: center
}

.l-footer__totop {
    position: absolute;
    right: 20px;
    bottom: 50px
}

@media screen and (min-width: 768px) {
    .l-footer__totop {
        right: 50px
    }
}

.l-header {
    position: relative;
    z-index: 100;
    padding: 20px 0;
    background: #fff
}

@media screen and (min-width: 1080px) {
    .l-header {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        left: 0;
        width: 100%;
        padding: 0
    }
}

@media screen and (min-width: 1080px) {
    .l-header__inner {
        display: flex;
        align-items: center;
        justify-content: space-between
    }
}

.l-header__logo a {
    display: inline-block
}

@media screen and (min-width: 768px) {
    .l-header__logo img {
        width: auto;
        height: 70px
    }
}

.l-header__menu {
    position: fixed;
    top: 10px;
    right: 20px;
    display: block
}

@media screen and (min-width: 1080px) {
    .l-header__menu {
        display: none
    }
}

@media screen and (max-width: 1079px) {
    .l-header__nav {
        position: fixed;
        top: 70px;
        left: 0;
        width: 100%;
        background: #fff;
        opacity: 0;
        transition: opacity .3s;
        pointer-events: none
    }
}

.l-header__nav.is-active {
    opacity: 1;
    pointer-events: all
}

.l-main {
    margin-bottom: 60px
}

@media screen and (min-width: 768px) {
    .l-main {
        margin-bottom: 100px
    }
}

.l-page-title {
    padding: 40px 0;
    color: #fff;
    font-weight: 500;
    font-family: Helvetica;
    text-align: center;
    background-color: #044093;
    font-size: 2rem
}

@media print {
    .l-page-title {
        font-size: 2rem
    }
}

@media screen and (min-width: 768px) {
    .l-page-title {
        padding: 82px 0;
        font-size: 3.6rem
    }
}

.l-section {
    padding: 50px 0
}

@media screen and (min-width: 768px) {
    .l-section {
        padding: 80px 0
    }
}

.l-section--sub {
    background-color: #edf4fa
}

.l-section__lead {
    margin-bottom: 3em;
    font-family: Georgia;
}

@media screen and (min-width: 768px) {
    .l-section__lead {
        text-align: center
    }
}

.c-banner {
    position: relative;
    display: block;
    height: 158px
}

@media screen and (min-width: 768px) {
    .c-banner {
        height: 290px
    }
}

.c-banner__background {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.c-banner__label {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    text-align: center;
    background: rgba(0,0,0,.8);
    font-size: 1.4rem;
    font-family: Helvetica;
}

@media print {
    .c-banner__label {
        font-size: 1.4rem
    }
}

@media screen and (min-width: 768px) {
    .c-banner__label {
        padding: 16px 0;
        font-size: 1.8rem
    }
}

.c-banner-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 20px;
    justify-content: center
}

@media screen and (min-width: 768px) {
    .c-banner-list {
        grid-template-columns: repeat(auto-fill, minmax(0, 290px));
        gap: 13px
    }
}

@media screen and (min-width: 768px) {
    .c-banner-list--wideGap {
        grid-template-columns: repeat(auto-fill, minmax(0, 530px));
        gap: 40px
    }
}

.c-button, .c-link-button {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    padding: 10px 25px;
    color: #fff;
    text-align: left;
    background: linear-gradient(to right, #044093, #0C68C8);
    border: 1px solid currentColor;
    font-size: 1.6rem;
    font-family: Helvetica;
}

@media print {
    .c-button, .c-link-button {
        font-size: 1.6rem
    }
}

@media screen and (min-width: 768px) {
    .c-button, .c-link-button {
        width: 300px;
        padding-top: 12px;
        padding-bottom: 13px;
        font-size: 1.8rem;
        transition: all .3s
    }
}

@media screen and (min-width: 768px) {
    .c-button:hover, .c-link-button:hover {
        color: #044093;
        background: #fff;
        opacity: 1
    }
}

.c-button::after, .c-link-button::after {
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    display: block;
    width: 20px;
    height: 2px;
    background: currentColor;
    content: ""
}

@media screen and (min-width: 768px) {
    .c-button::after, .c-link-button::after {
        width: 30px
    }
}

@media screen and (min-width: 768px) {
    .c-link-button--wide {
        width: auto;
        padding-top: 42px;
        padding-bottom: 43px;
        font-weight: bold
    }
}

.c-button {
    font-family: inherit
}

.c-button-wrapper {
    margin-top: 40px;
    text-align: center
}

[class*=c-container] {
    padding-right: 20px;
    padding-left: 20px
}

@media screen and (min-width: 768px) {
    [class*=c-container] {
        padding-right: 40px;
        padding-left: 40px
    }
}

.c-container {
    max-width: 1200px;
    margin: 0 auto
}

.c-container_aboutus {
    max-width: 1500px;
    margin: 0 auto
}

.c-container-md {
    max-width: 1100px;
    margin: 0 auto
}

.c-container-sm {
    max-width: 800px;
    margin: 0 auto
}

.c-date {
    font-size: 1.2rem
}

@media print {
    .c-date {
        font-size: 1.2rem
    }
}

@media screen and (min-width: 768px) {
    .c-date {
        font-size: 1.3rem
    }
}

.c-heading-title {
    font-weight: normal;
    font-family: Helvetica;
    line-height: 1.5;
    font-size: 2rem
}

@media print {
    .c-heading-title {
        font-size: 2rem
    }
}

@media screen and (min-width: 768px) {
    .c-heading-title {
        font-size: 3.4rem
    }
}

.c-heading-xlarge {
    margin: 0 0 1.5em 0;
    font-weight: 500;
    font-family: Helvetica;
    line-height: 1.5;
    /*letter-spacing: .05em;*/
    text-align: center;
    font-size: 1.8rem;
    position: relative;
    padding-top: calc(.5em + 4px)
}

@media print {
    .c-heading-xlarge {
        font-size: 1.8rem
    }
}

@media screen and (min-width: 768px) {
    .c-heading-xlarge {
        margin-bottom: 1em;
        line-height: 1.625;
        font-size: 4rem
    }
}

.c-heading-xlarge::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 1.5em;
    height: 3px;
    background: #044093;
    transform: translateX(-50%);
    content: ""
}

@media screen and (min-width: 768px) {
    .c-heading-xlarge::before {
        height: 4px
    }
}

.c-heading-xlarge span {
    display: block;
    font-size: 1.4rem;
    color: #044093
}

@media print {
    .c-heading-xlarge span {
        font-size: 1.4rem
    }
}

@media screen and (min-width: 768px) {
    .c-heading-xlarge span {
        font-size: 2rem;
        font-weight:700;
    }
}

.c-heading-large {
    margin: 0 0 1.5em 0;
    font-weight: 500;
    font-family: Helvetica;
    line-height: 1.5;
    /*letter-spacing: .05em;*/
    text-align: center;
    font-size: 1.8rem;
    position: relative;
    padding-top: calc(.5em + 4px)
}

@media print {
    .c-heading-large {
        font-size: 1.8rem
    }
}

@media screen and (min-width: 768px) {
    .c-heading-large {
        margin-bottom: 1em;
        line-height: 1.625;
        font-size: 3rem
    }
}

.c-heading-large::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 1.5em;
    height: 3px;
    background: #044093;
    transform: translateX(-50%);
    content: ""
}

@media screen and (min-width: 768px) {
    .c-heading-large::before {
        height: 4px
    }
}

.c-heading-large span {
    display: block;
    font-size: 1.4rem;
    color: #044093;
    font-weight: 700;
}

@media print {
    .c-heading-large span {
        font-size: 1.4rem
    }
}

@media screen and (min-width: 768px) {
    .c-heading-large span {
        font-size: 2rem
    }
}

.c-heading-medium {
    font-weight: 500;
    font-family: Helvetica;
    line-height: 1.8;
    font-size: 1.8rem;
    color: #044093
}

@media print {
    .c-heading-medium {
        font-size: 1.8rem
    }
}

@media screen and (min-width: 768px) {
    .c-heading-medium {
        line-height: 1.625;
        font-size: 2.5rem
    }
}

.c-lead {
    text-align: center;
    margin-bottom: .5em;
    font-weight: 500;
    font-family: Helvetica;
    line-height: 1.8;
    font-size: 1.8rem;
    color: #044093
}

@media print {
    .c-lead {
        font-size: 1.8rem
    }
}

@media screen and (min-width: 768px) {
    .c-lead {
        margin-bottom: 1em;
        line-height: 1.625;
        font-size: 2.5rem
    }
}

.c-list-point {
    list-style: none
}

    .c-list-point li {
        padding: 11px 35px 12px;
        background: #fff url(../themes/develop/images/style/icon-list-check.svg) no-repeat 13px center/15px 15px;
        border: 1px solid #ddd
    }

@media screen and (min-width: 768px) {
    .c-list-point li {
        padding: 9px 60px 10px;
        font-weight: bold;
        background-position-x: 20px;
        background-size: 18px 18px;
        font-size: 2rem;
        font-family: Georgia;
    }
}

.c-list-point li + li {
    margin-top: .5em
}

.c-list-step {
    counter-reset: step
}

    .c-list-step li {
        position: relative;
        background: #fff;
        border: 1px solid #ddd;
        counter-increment: step
    }

@media screen and (min-width: 768px) {
    .c-list-step li {
        display: flex;
        align-items: center;
        padding: 32px 32px 32px 0;
        font-family: Georgia;
    }
}

.c-list-step li::before {
    display: block;
    width: 100%;
    color: #fff;
    text-align: center;
    background: #044093;
    content: "Format " counter(step);
    font-size: 1.6rem
}

@media print {
    .c-list-step li::before {
        font-size: 1.6rem
    }
}

@media screen and (min-width: 768px) {
    .c-list-step li::before {
        width: 100px
    }
}

.c-list-step li + li {
    margin-top: 40px
}

@media screen and (min-width: 768px) {
    .c-list-step li + li {
        margin-top: 74px
    }
}

.c-list-step li + li::after {
    position: absolute;
    top: -32px;
    left: 50%;
    display: block;
    width: 33px;
    height: 22px;
    background: url(../themes/develop/images/style/arrow-flow.svg) no-repeat center center/contain;
    transform: translateX(-50%);
    content: ""
}

@media screen and (min-width: 768px) {
    .c-list-step li + li::after {
        top: -49px;
        width: 41px;
        height: 24px
    }
}

.p-entry-body .c-list-step {
    margin-right: 20px;
    margin-left: 20px
}

.c-list-step__title {
    margin-top: 16px;
    padding: 0 20px;
    color: #044093
}

@media screen and (min-width: 768px) {
    .c-list-step__title {
        width: 225px;
        margin-top: 0;
        margin-left: 16px;
        padding: 0;
        font-weight: 500;
        font-size: 2rem
    }
}

.c-list-step__caption {
    margin-top: 12px;
    padding: 0 20px 14px
}

@media screen and (min-width: 768px) {
    .c-list-step__caption {
        margin-top: 0;
        margin-left: 16px;
        padding: 0
    }
}

@media screen and (min-width: 1080px) {
    .c-nav__inner > .c-nav__list {
        display: flex;
        align-items: center
    }
}

.c-nav__inner > .c-nav__list > li {
    position: relative
}

@media screen and (max-width: 1079px) {
    .c-nav__inner > .c-nav__list > li {
        border-top: 1px solid #ddd
    }
}

@media screen and (min-width: 1080px) {
    .c-nav__inner > .c-nav__list > li + li {
        margin-left: 20px
    }
}

@media screen and (min-width: 1280px) {
    .c-nav__inner > .c-nav__list > li + li {
        margin-left: 25px
    }
}

.c-nav__inner > .c-nav__list > li > a {
    position: relative;
    display: block
}

@media screen and (max-width: 1079px) {
    .c-nav__inner > .c-nav__list > li > a {
        padding: 10px 28px;
        color: #333
    }
}

@media screen and (min-width: 1080px) {
    .c-nav__inner > .c-nav__list > li > a:not(.button) {
        position: relative;
        display: flex;
        align-items: center;
        padding: 26px 0 27px;
        color: #333;
        font-weight: bold;
        transition: .3s all
    }
}

.c-nav__inner > .c-nav__list > li > a:not(.button) .fa-chevron-down {
    height: 12px;
    margin-top: 1px;
    margin-left: .5em
}

@media screen and (max-width: 1079px) {
    .c-nav__inner > .c-nav__list > li > a:not(.button) .fa-chevron-down {
        position: absolute;
        top: 50%;
        right: 25px;
        color: #044093;
        transform: translateY(-50%)
    }
}

@media screen and (min-width: 1080px) {
    .c-nav__inner > .c-nav__list > li > a:not(.button)::before {
        position: absolute;
        bottom: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 3px;
        background: #044093;
        opacity: 0;
        transition: .3s all;
        content: ""
    }
}

@media screen and (min-width: 1080px) {
    .c-nav__inner > .c-nav__list > li:hover > a:not(.button) {
        color: #044093;
        opacity: 1
    }
}

@media screen and (min-width: 1080px) {
    .c-nav__inner > .c-nav__list > li:hover > a:not(.button)::before {
        opacity: 1
    }
}

.c-nav__inner > .c-nav__list > li.parent > a::after {
    display: none;
    font-size: .7rem;
    font-weight: 900;
    font-family: "Font Awesome 5 Free",sans-serif;
    content: ""
}

@media print {
    .c-nav__inner > .c-nav__list > li.parent > a::after {
        font-size: .7rem
    }
}

@media screen and (min-width: 1080px) {
    .c-nav__inner > .c-nav__list .button {
        padding: 14px 18px 15px;
        color: #fff;
        font-weight: bold;
        background: #044093;
        border: 1px solid #044093
    }
}

@media screen and (min-width: 1080px) {
    .c-nav__inner > .c-nav__list .button:hover {
        color: #044093;
        background-color: #fff;
        opacity: 1
    }
}

.c-nav__list .c-nav__list {
    background: #044093
}

@media screen and (min-width: 1080px) {
    .c-nav__list .c-nav__list {
        position: absolute;
        top: 80px;
        left: 50%;
        padding: 14px 0;
        white-space: nowrap;
        border: 1px solid #f1f1f1;
        transform: translateX(-50%);
        opacity: 0;
        transition: .3s all;
        pointer-events: none
    }
}

@media screen and (max-width: 1079px) {
    .c-nav__list .c-nav__list li {
        box-sizing: border-box;
        max-height: 0;
        overflow: hidden;
        border-top: 0;
        transition: all .3s
    }
}

.c-nav__list .c-nav__list a {
    display: block;
    padding: 8px 40px;
    color: #fff
}

@media screen and (min-width: 1080px) {
    .c-nav__list .c-nav__list a {
        padding: .25em 1em;
        font-size: 1.4rem
    }
}

@media screen and (min-width: 1080px) {
    .c-nav__list li.parent:hover .c-nav__list {
        opacity: 1;
        pointer-events: all
    }
}

@media screen and (max-width: 1079px) {
    .c-nav__list li.parent.is-active .c-nav__list li {
        max-height: 42px;
        border-top: 1px dashed #ddd
    }
}

.c-pager-wrap {
    display: flex;
    justify-content: center;
    padding-top: 24px
}

@media screen and (min-width: 768px) {
    .c-pager-wrap {
        padding-top: 50px
    }
}

.c-pager {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 64px;
    font-weight: bold;
    text-align: center;
    font-size: 1.4rem
}

@media print {
    .c-pager {
        font-size: 1.4rem
    }
}

@media screen and (min-width: 768px) {
    .c-pager {
        padding: 0 70px;
        font-size: 1.6rem
    }
}

.c-pager li + li {
    margin-left: 5px
}

@media screen and (min-width: 768px) {
    .c-pager li + li {
        margin-left: 4px
    }
}

.c-pager a, .c-pager li.cur span {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 40px;
    height: 40px
}

@media screen and (min-width: 768px) {
    .c-pager a, .c-pager li.cur span {
        width: 50px;
        height: 50px
    }
}

.c-pager a {
    color: #333;
    background: #fff;
    border: 1px solid #ddd
}

    .c-pager a:hover {
        text-decoration: none
    }

@media screen and (min-width: 768px) {
    .c-pager a:hover {
        background: #ddd
    }
}

.c-pager li.cur span {
    color: #fff;
    background: #044093
}

.p-summary + .c-pager {
    margin-top: 20px
}

@media screen and (min-width: 768px) {
    .p-summary + .c-pager {
        margin-top: 0
    }
}

.c-pager__arrow {
    position: absolute;
    top: 0;
    font-size: 1.2rem
}

@media print {
    .c-pager__arrow {
        font-size: 1.2rem
    }
}

@media screen and (min-width: 768px) {
    .c-pager__arrow {
        font-size: 1.4rem
    }
}

.c-pager__arrow--back {
    left: 0
}

.c-pager__arrow--forward {
    right: 0
}

.c-tag {
    display: inline-block;
    box-sizing: border-box;
    min-width: 116px;
    padding: 0 1em;
    text-align: center;
    background: #fff;
    border: 1px solid #ddd;
    font-size: 1.2rem
}

@media print {
    .c-tag {
        font-size: 1.2rem
    }
}

@media screen and (min-width: 768px) {
    .c-tag {
        font-size: 1.3rem
    }
}

.c-tag--wide {
    min-width: 210px
}

.c-tag--large {
    font-weight: bold;
    font-size: 1.3rem;
    height: 120px;
    line-height: 120px;
    margin: 5px auto;
}

@media print {
    .c-tag--large {
        font-size: 1.3rem;
        width: 224px !important;
        height: 120px;
        line-height: 120px;
        margin: 5px auto;
    }
}

@media screen and (min-width: 488px) {
    .c-tag--large {
        font-size: 1.8rem;
        width: 224px !important;
        height: 120px;
        line-height: 120px;
        margin: 5px auto;
    }
}

.c-round-tag {
    display: inline-block;
    box-sizing: border-box;
    text-align: center;
    background: #fff;
    font-size: 1.3rem;
    border-radius: 20px;
    margin: 5px;
}

@media print {
    .c-round-tag {
        font-size: 1.3rem
    }
}

@media screen and (min-width: 768px) {
    .c-round-tag {
        height: 60px;
        line-height: 60px;
        font-size: 1.5rem
    }
}

.c-tag-list, .c-tag-list--thinGap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /*gap: 5px*/
}

@media screen and (min-width: 768px) {
    .c-tag-list, .c-tag-list--thinGap {
        grid-template-columns: repeat(auto-fit, minmax(224px, 1fr));
        /*gap: 15px 20px*/
    }
}

/*.c-tag-list--thinGap {
    gap: 10px 5px
}*/

@media screen and (min-width: 768px) {
    .c-tag-list--thinGap {
        /*grid-template-columns: repeat(auto-fit, minmax(195px, 1fr))*/
        font-family: Georgia;
    }
}

.c-topicpath {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 10px 0 40px;
    font-weight: 500;
    font-size: 1.2rem
}

@media print {
    .c-topicpath {
        font-size: 1.2rem
    }
}

.c-topicpath li + li::before {
    display: inline-block;
    margin: 0 8px;
    content: ">"
}

.c-topicpath a {
    text-decoration: underline
}

    .c-topicpath a:hover {
        text-decoration: none
    }

.c-totop {
    box-sizing: border-box;
    width: 30px;
    height: 30px;
    padding-top: 3px;
    color: #044093;
    text-align: center;
    border: 2px solid currentColor;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center
}

@media screen and (min-width: 768px) {
    .c-totop {
        width: 50px;
        height: 50px;
        padding-top: 6px;
        transition: all .3s
    }
}

.c-totop svg {
    display: inline-block;
    fill: currentColor
}

@media screen and (min-width: 768px) {
    .c-totop svg {
        width: 16px;
        height: 16px;
        transition: all .3s
    }
}

@media screen and (min-width: 768px) {
    .c-totop:hover {
        color: #fff;
        background-color: #044093
    }
}

.p-brand {
    text-align: center;
    font-family: Helvetica;
}

@media screen and (min-width: 768px) {
    .p-brand {
        text-align: left;
        font-family: Helvetica;
    }
}

.p-brand__logo a {
    display: block
}

.p-brand__info {
    margin-top: 16px
}

@media screen and (min-width: 768px) {
    .p-brand__info {
        font-size: 1.3rem
    }
}

.p-brand__info__address {
    margin-top: .5em;
    line-height: 1.5
}

.p-caption-bold {
    display: block;
    font-weight: bold;
    text-align: center;
    font-size: 1.4rem
}

@media print {
    .p-caption-bold {
        font-size: 1.4rem
    }
}

@media screen and (min-width: 768px) {
    .p-caption-bold {
        font-size: 1.6rem
    }
}

.p-card-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px 26px
}

@media screen and (max-width: 767px) {
    .p-card-wrapper {
        max-width: 480px;
        margin: 0 auto
    }
}

@media screen and (min-width: 768px) {
    .p-card-wrapper {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media screen and (min-width: 1080px) {
    .p-card-wrapper {
        grid-template-columns: repeat(3, 1fr)
    }
}

.p-card {
    border: 1px solid #ddd;
    box-shadow: 0 3px 6px rgba(0,0,0,.16)
}

    .p-card a {
        display: block;
        height: 100%;
        color: #333;
        background: #fff
    }

.p-card__thumbnail {
    width: 100%;
    aspect-ratio: 1.5625/1
}

    .p-card__thumbnail img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }

.p-card__body {
    padding: 14px 16px
}

@media screen and (min-width: 768px) {
    .p-card__body {
        padding: 20px
    }
}

.p-card__title {
    margin-top: 14px;
    line-height: 1.55
}

@media screen and (min-width: 768px) {
    .p-card__title {
        font-size: 1.8rem
    }
}

.p-card__summary {
    margin-top: 6px
}

@media screen and (min-width: 768px) {
    .p-card__summary {
        margin-top: 8px;
        font-size: 1.5rem
    }
}

@media screen and (max-width: 767px) {
    .p-card-carousel {
        width: 100%;
        overflow: auto
    }
}

@media screen and (max-width: 767px) {
    .p-card-carousel__inner {
        display: flex;
        margin-right: -20px;
        padding-bottom: 16px
    }

        .p-card-carousel__inner .p-card {
            flex: 0 0 300px;
            width: 300px;
            margin-right: 20px
        }
}

@media screen and (min-width: 768px) {
    .p-card-carousel__inner {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-columns: repeat(2, 1fr);
        gap: 40px 26px
    }
}

@media screen and (min-width: 1080px) {
    .p-card-carousel__inner {
        grid-template-columns: repeat(3, 1fr)
    }
}

#i-prolist-en .content {
    height: auto !important;
}


@media screen and (min-width: 1200px) {
    #i-prolist-en .content {
        height: 760px !important;
    }
}
.menu-report-left {
    width: auto !important;
}

@media screen and (min-width: 1200px) {
    .menu-report-left {
        width: 25% !important;
    }
}

.p-combination-Contact {
    display: flex;
    flex-direction: column;
}

@media screen and (min-width: 1200px) {
    .p-combination-Contact {
        flex-direction: row
    }
}

.p-combination-Contact-img {
    float: left;
    padding: 0 35px;
}

@media screen and (min-width: 1200px) {
    .p-combination-Contact-img {
        width: 30%;
        float: left;
        padding: 0 35px;
    }
}

.p-combination-Contact-table {
    margin-top: 31px;
}

@media screen and (min-width: 1200px) {
    .p-combination-Contact-table {
        margin-top: 31px;
        width: 50%;
    }
}

.p-combination-report {
    display: flex;
    flex-direction: column;
    margin-right: -20px;
    margin-left: -20px
}

@media screen and (min-width: 1200px) {
    .p-combination-report {
        flex-direction: row
    }
}

.p-combination {
    display: flex;
    flex-direction: column-reverse;
    margin-right: -20px;
    margin-left: -20px
}

@media screen and (min-width: 1200px) {
    .p-combination {
        flex-direction: row
    }
}

@media screen and (min-width: 1200px) {
    .p-combination--reverse {
        flex-direction: row-reverse
    }
}

.p-entry-body .p-combination {
    margin-right: 0;
    margin-left: 0
}

.p-combination__body, .p-combination__image {
    margin-right: 20px;
    margin-left: 20px
}

.p-combination__body, .p-combination__image_industryin {
    margin-right: 20px;
    margin-left: 20px
}

.p-combination__body {
    flex: 1 1 auto
}

.p-combinaion__heading {
    margin-bottom: .5em;
    font-weight: 500;
    font-family: Helvetica;
    line-height: 1.8;
    font-size: 1.8rem;
    position: relative;
    border-top: 1px solid #666;
    padding-top: .5em
}

@media print {
    .p-combinaion__heading {
        font-size: 1.8rem
    }
}

@media screen and (min-width: 768px) {
    .p-combinaion__heading {
        margin-bottom: 1em;
        line-height: 1.625;
        font-size: 2.5rem
    }
}

.p-combinaion__heading::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 40px;
    height: 3px;
    background: #044093;
    transform: translateY(-50%);
    content: ""
}

@media screen and (min-width: 768px) {
    .p-combinaion__heading::before {
        width: 80px
    }
}

.p-combinaion__caption {
    margin-bottom: 30px;
    font-family: Georgia;
}

.p-combination__image {
    margin-bottom: 20px;
    flex: 0 0 270px;
    text-align: center;
}

.p-combination__image_industryin {
    margin-bottom: 20px;
    flex: 0 0 270px;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .p-combination__image {
        flex: 0 0 320px;
        margin-bottom: 0
    }
}

@media screen and (min-width: 768px) {
    .p-combination__image_industryin {
        flex: 0 0 320px;
        margin-bottom: 0
    }
}

@media screen and (min-width: 1080px) {
    .p-combination__image {
        flex: 0 0 320px;
        text-align: center;
    }
}

@media screen and (min-width: 1080px) {
    .p-combination__image_industryin {
        flex: 0 0 880px;
        text-align: center;
    }
}

.p-combination__image img {
    width: 100%;
    height: auto
}

.p-combination__image_industryin img {
    width: 100%;
    height: auto
}

.p-combination__image__caption {
    margin-top: 16px;
    text-align: center;
    font-family: Georgia;
}

    .p-combination__image__caption small {
        font-size: 1.2rem
    }

@media print {
    .p-combination__image__caption small {
        font-size: 1.2rem
    }
}

.p-comment {
    margin-right: -20px;
    margin-left: -20px
}

@media screen and (min-width: 768px) {
    .p-comment {
        display: flex;
        flex-direction: column-reverse;
        flex-direction: row
    }
}

@media screen and (min-width: 768px) {
    .p-comment--reverse {
        flex-direction: row-reverse
    }
}

.p-entry-body .p-comment {
    margin-right: 0;
    margin-left: 0
}

.p-comment__thumbnail, .p-comment__body {
    margin-right: 20px;
    margin-left: 20px
}

.p-comment__thumbnail {
    text-align: center
}

@media screen and (min-width: 768px) {
    .p-comment__thumbnail {
        flex: 0 0 120px;
        width: 120px;
        padding-left: 40px
    }
}

@media screen and (min-width: 768px) {
    .p-comment--reverse .p-comment__thumbnail {
        padding-right: 40px;
        padding-left: 0
    }
}

.p-comment__thumbnail__image {
    display: inline-block;
    width: 80px;
    height: 80px;
    overflow: hidden;
    border-radius: 50%
}

@media screen and (max-width: 767px) {
    .p-comment__thumbnail__image {
        box-shadow: 0 3px 6px rgba(0,0,0,.16)
    }
}

@media screen and (min-width: 768px) {
    .p-comment__thumbnail__image {
        width: 120px;
        height: 120px
    }
}

.p-comment__thumbnail__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.p-comment__thumbnail__name {
    margin-top: .25em;
    font-size: 1.3rem
}

@media print {
    .p-comment__thumbnail__name {
        font-size: 1.3rem
    }
}

@media screen and (min-width: 768px) {
    .p-comment__thumbnail__name {
        margin-top: .5em;
        font-size: 1.5rem
    }
}

.p-comment__body {
    margin-top: 14px;
    padding: 20px;
    background: #fff
}

@media screen and (min-width: 768px) {
    .p-comment__body {
        margin-top: 0;
        padding: 42px 40px 44px
    }
}

.p-comment__body__title {
    line-height: 1.5;
    font-size: 1.6rem
}

@media print {
    .p-comment__body__title {
        font-size: 1.6rem
    }
}

@media screen and (min-width: 768px) {
    .p-comment__body__title {
        font-size: 2rem
    }
}

.p-comment__body__text {
    margin-top: 16px
}

@media screen and (min-width: 768px) {
    .p-comment__body__text {
        margin-top: 20px
    }
}

.p-download {
    box-sizing: border-box;
    max-width: 1100px;
    margin-right: auto;
    margin-left: auto;
    padding: 25px 20px;
    color: #fff;
    background: #044093;
    border-radius: 10px
}

@media screen and (min-width: 768px) {
    .p-download {
        display: flex;
        align-items: center;
        padding: 30px 40px
    }
}

.p-download__image {
    aspect-ratio: 3/2;
    width: 100%
}

@media screen and (min-width: 768px) {
    .p-download__image {
        flex: 0 0 300px;
        width: 300px
    }
}

.p-download__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.p-download__body {
    margin-top: 22px
}

@media screen and (min-width: 768px) {
    .p-download__body {
        margin-top: 0;
        margin-left: 40px
    }
}

.p-entry-body .p-download__body * {
    margin-right: 0;
    margin-left: 0
}

.p-download__body__heading {
    font-weight: 500;
    font-size: 1.8rem;
    font-family: "Noto Serif JP",serif
}

@media print {
    .p-download__body__heading {
        font-size: 1.8rem
    }
}

@media screen and (min-width: 768px) {
    .p-download__body__heading {
        font-size: 2.5rem
    }
}

.p-download__body__caption {
    margin-top: 16px;
    margin-bottom: 28px
}

@media screen and (min-width: 768px) {
    .p-download__body__caption {
        margin-top: 20px
    }
}

.p-entry-list {
    padding: 12px 0;
    border-top: 1px solid #ddd
}

    .p-entry-list:last-child {
        border-bottom: 1px solid #ddd
    }

    .p-entry-list a {
        display: block;
        color: #333
    }

.p-entry-list__meta {
    display: flex;
    align-items: center
}

.p-entry-list__meta__date {
    width: 5em
}

.p-entry-list__title {
    margin-top: 5px;
    padding-left: 5em;
    font-weight: normal;
    line-height: 1.85
}

.p-entry-header {
    margin-bottom: 70px
}

.p-entry-header__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 16px
}

.p-entry-header__meta__category {
    margin-left: 10px
}

.entry-container {
    word-break: break-word
}

.entry-text-unit {
    font-size: 1.4rem;
    color: #333;
    font-weight: 400;
    word-break: break-word
}

@media print {
    .entry-text-unit {
        font-size: 1.4rem
    }
}

.entry-text-unit h2, .entry-text-unit h3, .entry-text-unit h4, .entry-text-unit h5, .entry-text-unit h6, .entry-text-unit p, .entry-text-unit dl {
    margin-right: 20px;
    margin-left: 20px
}

.entry-text-unit blockquote {
    margin-right: 0;
    margin-left: 0
}

.entry-text-unit a, .entry-text-unit a:focus, .entry-text-unit a:visited {
    color: #044093;
    text-decoration: underline
}

    .entry-text-unit a:hover, .entry-text-unit a:active {
        text-decoration: none
    }

.entry-text-unit em {
    font-weight: 700;
    font-style: normal
}

.entry-text-unit small {
    font-size: 1.4rem
}

@media print {
    .entry-text-unit small {
        font-size: 1.4rem
    }
}

@media screen and (min-width: 768px) {
    .entry-text-unit small {
        font-size: 1.5rem;
        font-family: Georgia;
    }
}

.entry-text-unit strong {
    font-weight: 700;
    font-style: normal
}

@media screen and (min-width: 768px) {
    .entry-text-unit {
        font-size: 1.5rem
    }
}

.entry-text-unit h2:not([class]) {
    margin: 0 0 1.5em 0;
    font-weight: 500;
    font-family: Helvetica;
    line-height: 1.5;
    /*letter-spacing: .05em;*/
    text-align: center;
    font-size: 1.8rem;
    margin-right: 20px;
    margin-left: 20px;
    position: relative;
    padding-top: calc(.5em + 4px)
}

@media print {
    .entry-text-unit h2:not([class]) {
        font-size: 1.8rem
    }
}

@media screen and (min-width: 768px) {
    .entry-text-unit h2:not([class]) {
        margin-bottom: 10px;
        line-height: 1.625;
        font-size: 3rem
    }
}

.entry-text-unit h2:not([class])::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 1.5em;
    height: 3px;
    background: #044093;
    transform: translateX(-50%);
    content: ""
}

@media screen and (min-width: 768px) {
    .entry-text-unit h2:not([class])::before {
        height: 4px
    }
}

.entry-text-unit h2:not([class]) span {
    display: block;
    font-size: 1.4rem;
    color: #044093
}

@media print {
    .entry-text-unit h2:not([class]) span {
        font-size: 1.4rem
    }
}

@media screen and (min-width: 768px) {
    .entry-text-unit h2:not([class]) span {
        font-size: 2rem
    }
}

.entry-text-unit h3:not([class]) {
    margin-bottom: .5em;
    font-weight: 500;
    font-family: Helvetica;
    line-height: 1.8;
    font-size: 1.8rem;
    margin-right: 20px;
    margin-left: 80px;
    position: relative;
    border-top: 1px solid #666;
    padding-top: .5em
}

@media print {
    .entry-text-unit h3:not([class]) {
        font-size: 1.8rem
    }
}

@media screen and (min-width: 768px) {
    .entry-text-unit h3:not([class]) {
        margin-bottom: 1em;
        line-height: 1.625;
        font-size: 2.5rem
    }
}

.entry-text-unit h3:not([class])::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 40px;
    height: 3px;
    background: #044093;
    transform: translateY(-50%);
    content: ""
}

@media screen and (min-width: 768px) {
    .entry-text-unit h3:not([class])::before {
        width: 80px
    }
}

.entry-text-unit h4:not([class]) {
    margin-bottom: 1em;
    font-weight: 500;
    font-family: Helvetica;
    line-height: 1.625;
    font-size: 1.6rem;
    margin-right: 20px;
    margin-left: 20px;
    padding: 4px 14px 5px;
    color: #fff;
    background: #666
}

@media print {
    .entry-text-unit h4:not([class]) {
        font-size: 1.6rem
    }
}

@media screen and (min-width: 768px) {
    .entry-text-unit h4:not([class]) {
        font-size: 2rem
    }
}

@media screen and (min-width: 768px) {
    .entry-text-unit h4:not([class]) {
        padding: 7px 28px 8px
    }
}

.entry-text-unit h5:not([class]) {
    margin-bottom: 1em;
    font-weight: 500;
    font-family: Helvetica;
    line-height: 1.625;
    font-size: 1.5rem;
    margin-right: 20px;
    margin-left: 20px
}

@media print {
    .entry-text-unit h5:not([class]) {
        font-size: 1.5rem
    }
}

@media screen and (min-width: 768px) {
    .entry-text-unit h5:not([class]) {
        font-size: 1.8rem
    }
}

.entry-text-unit p:not([class]), .entry-text-unit p.c-lead {
    margin-top: 0;
    margin-bottom: 70px;
    font-weight: 400;
    line-height: 1.85;
    font-family: Georgia;
}

.entry-text-unit ul {
    margin: 0 0 70px 0;
    padding: 0 20px
}

    .entry-text-unit ul:not([class]) li {
        position: relative;
        display: block;
        margin: 0 0 .25em 0;
        padding: 0 0 0 18px;
        font-weight: 400;
        line-height: 1.85
    }

        .entry-text-unit ul:not([class]) li::before {
            position: absolute;
            top: .5em;
            left: 12px;
            width: 0px;
            height: 0px;
            border: 3px solid #044093;
            border-radius: 50%;
            content: ""
        }

        .entry-text-unit ul:not([class]) li ul {
            margin: .25em 0
        }

.entry-text-unit ol {
    margin: 0 0 70px 0;
    padding: 0 20px;
    list-style: none
}

    .entry-text-unit ol:not([class]) {
        counter-reset: ol-counter
    }

        .entry-text-unit ol:not([class]) li {
            position: relative;
            margin: 0 0 .25em 0;
            padding: 0 0 0 18px;
            line-height: 1.85
        }

            .entry-text-unit ol:not([class]) li:before {
                position: absolute;
                top: .4em;
                left: 8px;
                display: inline-block;
                color: #044093;
                line-height: 1;
                content: counter(ol-counter) ".";
                counter-increment: ol-counter
            }

            .entry-text-unit ol:not([class]) li ol {
                margin-top: .25em
            }

.entry-text-unit dl {
    margin-top: 0;
    margin-bottom: 90px;
    padding: 18px 0;
    line-height: 1.85;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd
}

    .entry-text-unit dl dt {
        position: relative;
        margin: 0 0 5px 0;
        padding-left: 14px;
        font-weight: 700
    }

        .entry-text-unit dl dt::before {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            border-left: 4px solid #044093;
            content: ""
        }

    .entry-text-unit dl dd {
        margin-left: 0;
        padding-left: 14px
    }

        .entry-text-unit dl dd + dt {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #ddd
        }

            .entry-text-unit dl dd + dt::before {
                top: 18px
            }

[class*=column-quote] blockquote, .entry-text-unit blockquote {
    box-sizing: border-box;
    width: 100%;
    margin-top: 0;
    margin-bottom: 90px;
    padding: 30px !important;
    line-height: 1.85;
    background: #edf4fa;
    border-left: 4px solid #044093
}

.entry-text-unit pre {
    box-sizing: border-box;
    width: 100%;
    margin: 0 0 90px 0
}

    .entry-text-unit pre ol {
        margin: 0;
        padding: 0 0 0 2em;
        list-style: decimal
    }

        .entry-text-unit pre ol li {
            margin: 0 0 3px 0;
            padding-left: 12px;
            line-height: 1.7
        }

            .entry-text-unit pre ol li::before {
                content: none
            }

.entry-text-unit table, [class^=column-table-] table {
    width: calc(100% - 40px);
    margin: 0 20px 90px;
    border-collapse: collapse
}

.entry-text-unit th, [class^=column-table-] th, .entry-text-unit td, [class^=column-table-] td {
    display: block;
    padding: .75em 10px;
    font-size: 1.4rem;
    line-height: 1.85;
    border: 0 solid #ddd
}

@media print {
    .entry-text-unit th, [class^=column-table-] th, .entry-text-unit td, [class^=column-table-] td {
        font-size: 1.4rem
    }
}

@media screen and (min-width: 768px) {
    .entry-text-unit th, [class^=column-table-] th, .entry-text-unit td, [class^=column-table-] td {
        display: table-cell;
        padding: 16px 30px
    }
}

.entry-text-unit th:not([align]), [class^=column-table-] th:not([align]), .entry-text-unit td:not([align]), [class^=column-table-] td:not([align]) {
    text-align: left
}

.entry-text-unit th:not([class*=acms-cell-text-]), [class^=column-table-] th:not([class*=acms-cell-text-]), .entry-text-unit td:not([class*=acms-cell-text-]), [class^=column-table-] td:not([class*=acms-cell-text-]) {
    vertical-align: top
}

.entry-text-unit th, [class^=column-table-] th {
    font-weight: bold;
    border-top-width: 1px;
    border-bottom-width: 0
}

@media screen and (max-width: 767px) {
    .entry-text-unit th, [class^=column-table-] th {
        padding-bottom: 0
    }
}

@media screen and (min-width: 768px) {
    .entry-text-unit th, [class^=column-table-] th {
        border-color: #044093;
        border-top-width: 2px;
        border-bottom-width: 2px
    }
}

@media screen and (min-width: 768px) {
    .entry-text-unit td, [class^=column-table-] td {
        border-top-width: 1px;
        border-bottom-width: 1px
    }
}

[class^=column-table-] .entry-container {
    margin-bottom: 90px;
    overflow-x: auto;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch
}

    [class^=column-table-] .entry-container table {
        width: 100%;
        margin-right: 0;
        margin-bottom: 0;
        margin-left: 0;
        font-family: Georgia;
    }

.entry-text-unit .entry-container table {
    width: 100%;
    margin-right: 0;
    margin-left: 0
}

[class^=column-table-] .acms-table-scrollable th, [class^=column-table-] .acms-table-scrollable td, [class^=column-table-] .js-table-unit-scroll-hint th, [class^=column-table-] .js-table-unit-scroll-hint td, .entry-text-unit .acms-table-scrollable th, .entry-text-unit .acms-table-scrollable td, .entry-text-unit .js-table-unit-scroll-hint th, .entry-text-unit .js-table-unit-scroll-hint td {
    display: table-cell;
    white-space: nowrap
}

[class*=acms-col] [class*=acms-col] {
    padding-right: 0;
    padding-left: 0
}

[class*=column-media] .caption {
    margin-top: 16px;
    font-size: 1.2rem;
    text-align: left !important
}

@media print {
    [class*=column-media] .caption {
        font-size: 1.2rem
    }
}

.entry-container > .c-link-button {
    margin-bottom: 70px
}

.entry-container .p-download {
    margin-bottom: 70px
}

.p-entry-body .p-combination {
    margin-bottom: 70px
}

.p-entry-body .c-list-step {
    margin-bottom: 70px
}

.p-entry-body .p-comment {
    margin-bottom: 70px
}

.p-entry-body .p-staff-list {
    margin-bottom: 70px;
    font-family: Georgia;
}

.p-entry-body .p-report-wrapper {
    margin-bottom: 70px
}

.p-entry-body__back {
    text-align: center
}

.p-feature-wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, 480px));
    gap: 60px 40px;
    justify-content: center
}

@media screen and (min-width: 768px) {
    .p-feature-wrapper {
        grid-template-columns: repeat(auto-fit, minmax(0, 325px))
    }
}

.p-feature__icon {
    display: block;
    margin: 0 auto
}

@media screen and (min-width: 768px) {
    .p-feature__icon {
        width: 180px;
        height: auto
    }
}

.p-feature__heading {
    margin: .25em 0 .5em;
    text-align: center;
    font-family: Helvetica;
}

.p-filter {
    box-sizing: border-box;
    margin-bottom: 40px;
    padding: 20px 10px;
    background: #fff
}

@media screen and (max-width: 767px) {
    .p-filter {
        max-width: 480px;
        margin-right: auto;
        margin-left: auto
    }
}

@media screen and (min-width: 768px) {
    .p-filter {
        margin-bottom: 60px;
        padding: 32px 50px 24px
    }
}

.p-filter__row {
    padding: 20px 0;
    border-bottom: 1px solid #ddd
}

@media screen and (min-width: 768px) {
    .p-filter__row {
        display: grid;
        grid-template-columns: 120px auto;
        align-items: center;
        padding: 20px 0
    }
}

.p-filter__row:first-child {
    padding-top: 0
}

.p-filter__row__heading {
    margin-bottom: 26px;
    text-align: center
}

@media screen and (min-width: 768px) {
    .p-filter__row__heading {
        margin-bottom: 0;
        text-align: left
    }
}

.p-filter__button {
    padding-top: 12px;
    text-align: center
}

@media screen and (min-width: 768px) {
    .p-filter__button {
        padding-top: 20px
    }
}

.p-hero {
    box-sizing: border-box;
    min-height: 500px;
    padding: 30px 0 16px;
    background: url("/themes/develop/images/style/bg-hero-pc.jpg") no-repeat center center/cover
}

@media screen and (min-width: 768px) {
    .p-hero {
        min-height: 650px;
        padding: 50px 0;
        background-image: url("/themes/develop/images/style/bg-hero-pc.jpg")
    }
}

.p-hero__catch {
    font-weight: normal;
    font-family: Helvetica;
    line-height: 1.67;
    /*letter-spacing: .025em;*/
    text-align: center;
    font-size: 3rem
}

@media print {
    .p-hero__catch {
        font-size: 3rem
    }
}

@media screen and (min-width: 768px) {
    .p-hero__catch {
        line-height: 1.5;
        font-size: 4rem;
        text-align: left
    }
}

.p-hero__caption {
    margin-top: 10px;
    text-align: center
}

@media screen and (min-width: 768px) {
    .p-hero__caption {
        margin-top: 70px;
        text-align: left;
        font-size: 2rem
    }
}

.p-hero__caption span {
    display: inline-block
}

@media screen and (min-width: 768px) {
    .p-hero__caption span {
        padding: 5px 14px;
        font-family: Helvetica;
        background: rgba(255,255,255,.8)
    }
}

@media screen and (min-width: 768px) {
    .p-hero__caption span ~ span {
        margin-top: 10px
    }
}

.p-hero__links {
    display: grid;
    grid-template-columns: repeat(auto-fit, 100%);
    gap: 4px;
    margin-top: 30px;
    align-items: center;
}

@media screen and (min-width: 768px) {
    .p-hero__links {
        grid-template-columns: repeat(auto-fit, 395px);
        gap: 7px;
        justify-content: center;
        margin-top: 60px
    }
}

.p-inquiry-wrapper {
    padding: 64px 20px;
    background: url("/themes/develop/images/style/bg-cta-sp.jpg") no-repeat center center/cover
}

@media screen and (min-width: 1080px) {
    .p-inquiry-wrapper {
        padding: 50px
    }
}

.p-inquiry {
    box-sizing: border-box;
    max-width: 480px;
    margin: 0 auto;
    padding: 30px 20px;
    text-align: center;
    background: #fff
}

@media screen and (min-width: 1080px) {
    .p-inquiry {
        max-width: 930px;
        padding: 40px 50px 30px
    }
}

.p-inquiry__heading, .p-inquiry__message {
    color: #0d3162;
    font-weight: 500;
    font-family: Helvetica;
    /*letter-spacing: .025em*/
}

.p-inquiry__heading {
    font-size: 1.8rem
}

@media print {
    .p-inquiry__heading {
        font-size: 1.8rem
    }
}

@media screen and (min-width: 1080px) {
    .p-inquiry__heading {
        font-size: 2.6rem
    }
}

.p-inquiry__message {
    margin-top: .5em
}

@media screen and (min-width: 1080px) {
    .p-inquiry__message {
        font-size: 1.8rem
    }
}

.p-inquiry__contact {
    display: inline-block;
    width: 100%;
    margin-top: 20px;
    padding: 14px 0;
    color: #fff;
    font-weight: 500;
    background: linear-gradient(to right, #044194, #0C68C8);
    font-size: 1.8rem
}

@media print {
    .p-inquiry__contact {
        font-size: 1.8rem;
    }
}

@media screen and (min-width: 1080px) {
    .p-inquiry__contact {
        width: 240px;
        padding: 10px 0;
        font-family: Helvetica;
    }
}

.p-inquiry__tel {
    margin-top: 20px;
}

@media screen and (min-width: 1080px) {
    .p-inquiry__tel {
        margin-top: 40px;
        border-top: 1px solid #ddd
    }
}

.p-menu {
    position: fixed;
    top: 10px;
    right: 20px;
    flex: 0 0 auto;
    width: 50px;
    height: 50px;
    color: #fff;
    background: 0;
    background: #044093;
    border: 0;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.p-menu__icon {
    position: absolute;
    top: 12px;
    left: 50%;
    display: block;
    width: 20px;
    height: 14px;
    transform: translate(-50%, 0);
    transition: all .3s
}

    .p-menu__icon span {
        position: absolute;
        width: 20px;
        height: 2px;
        background: #fff;
        transition: all .3s
    }

        .p-menu__icon span:first-child {
            top: 0;
            left: 0;
            transform-origin: left bottom
        }

        .p-menu__icon span:nth-child(2) {
            top: 50%;
            left: 0;
            transform: translateY(-50%)
        }

        .p-menu__icon span:last-child {
            bottom: 0;
            left: 0;
            transform-origin: left top
        }

.p-menu.is-active .p-menu__icon {
    top: 50%;
    transform: translate(-8px, -50%)
}

    .p-menu.is-active .p-menu__icon span:first-child {
        transform: translate(0, -1px) rotate(45deg)
    }

    .p-menu.is-active .p-menu__icon span:nth-child(2) {
        opacity: 0
    }

    .p-menu.is-active .p-menu__icon span:last-child {
        transform: translate(0px, 2px) rotate(-45deg)
    }

.p-menu__label {
    position: absolute;
    bottom: 5px;
    left: 0;
    width: 100%;
    font-weight: bold;
    text-align: center;
    font-size: 1.2rem;
    transition: all .3s
}

@media print {
    .p-menu__label {
        font-size: 1.2rem
    }
}

.p-menu.is-active .p-menu__label {
    transform: translateY(25%);
    opacity: 0
}

.p-record {
    margin: 0 0 20px
}

@media screen and (min-width: 768px) {
    .p-record {
        margin: 0 50px 30px
    }
}

@media screen and (min-width: 768px) {
    .p-report-wrapper {
        display: flex;
        flex-wrap: wrap;
        margin: -20px -10px 0
    }
}

.p-report-wrapper .p-report {
    margin: 20px 10px 0
}

@media screen and (min-width: 1200px) {
    .p-report-wrapper .p-report {
        flex: 0 0 calc(50% - 20px);
        width: calc(50% - 20px)
    }
}

.p-report {
    box-sizing: border-box;
    padding: 20px;
    background-color: #fff;
    border: 1px solid #ddd
}

@media screen and (min-width: 480px) {
    .p-report {
        display: flex;
        width: 100%;
    }
}

.p-entry-body .p-report h3, .p-entry-body .p-report p {
    margin-right: 0;
    margin-left: 0
}

.p-report__thumbnail {
    text-align: center
}

@media screen and (min-width: 480px) {
    .p-report__thumbnail {
        flex: 0 0 100px
    }

        .p-report__thumbnail img {
            width: 100%;
            height: auto
        }
}

@media screen and (min-width: 1080px) {
    .p-report__thumbnail {
        flex: 0 0 150px
    }
}

.p-report_news_thumbnail {
    text-align: center
}

@media screen and (min-width: 480px) {
    .p-report_news_thumbnail {
        flex: 0 0 180px
    }

        .p-report_news_thumbnail img {
            width: 100%;
            height: 180px;
        }
}

@media screen and (min-width: 1080px) {
    .p-report_news_thumbnail {
        flex: 0 0 280px
    }
}

.p-report__body {
    margin-top: 15px
}

@media screen and (min-width: 480px) {
    .p-report__body {
        width: 100%;
        margin-top: 0;
        margin-left: 20px
    }
}

.p-report__body__title {
    margin-top: 15px;
    font-weight: 500;
    line-height: 1.5;
    display: -webkit-box;
    word-break: break-all;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media screen and (min-width: 768px) {
    .p-report__body__title {
        margin-top: 10px;
        font-size: 1.8rem;
        display: -webkit-box;
        word-break: break-all;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

.p-report__body__caption {
    margin-top: 12px;
    display: -webkit-box;
    word-break: break-all;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media screen and (min-width: 768px) {
    .p-report__body__caption {
        margin-top: 15px;
        display: -webkit-box;
        word-break: break-all;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

.p-report__body__date {
    margin-top: 12px
}

@media screen and (min-width: 768px) {
    .p-report__body__date {
        margin-top: 15px
    }
}

.p-simple-card {
    padding: 48px 0 40px;
    text-align: center;
    background: #fff
}

@media screen and (min-width: 768px) {
    .p-simple-card {
        padding: 5px 0;
    }
}

.p-simple-card__caption {
    font-weight: 500;
    font-family: Helvetica;
    line-height: 2.2;
    font-size: 1.6rem
}

@media print {
    .p-simple-card__caption {
        font-size: 1.6rem
    }
}

@media screen and (min-width: 768px) {
    .p-simple-card__caption {
        font-size: 2rem
    }
}

.p-simple-card-wrapper {
    display: grid;
    gap: 20px
}

@media screen and (min-width: 768px) {
    .p-simple-card-wrapper {
        grid-template-columns: repeat(auto-fit, minmax(590px, 100%))
    }
}

.p-sitemap {
    font-size: 1.4rem
}

@media print {
    .p-sitemap {
        font-size: 1.4rem
    }
}

@media screen and (max-width: 767px) {
    .p-sitemap {
        padding: 12px 20px;
        border: 0 solid #ddd;
        border-top-width: 1px;
        border-bottom-width: 1px
    }
}

@media screen and (min-width: 768px) {
    .p-sitemap {
        display: flex
    }
}

.p-sitemap a {
    color: #333;
    font-family: Helvetica;
}

@media screen and (min-width: 768px) {
    .p-sitemap__row {
        padding: 5px 20px;
        border-left: 1px solid #ddd
    }
}

.p-sitemap__row + .p-sitemap__row {
    margin-top: 10px
}

@media screen and (min-width: 768px) {
    .p-sitemap__row + .p-sitemap__row {
        margin-top: 0
    }
}

.p-sitemap__list li + li {
    margin-top: 10px
}

.p-sitemap__list__child {
    margin-top: 10px;
    padding-left: 10px
}

    .p-sitemap__list__child a::before {
        display: inline;
        content: "┗ "
    }

.p-staff {
    padding: 10px 10px 20px;
    background: #fff;
    border: 1px solid #ddd
}

@media screen and (max-width: 767px) {
    .p-staff {
        max-width: 300px;
        margin-right: auto;
        margin-left: auto
    }
}

@media screen and (min-width: 768px) {
    .p-staff {
        padding: 20px 20px 30px
    }
}

.p-staff__thumbnail {
    aspect-ratio: 1.1/1
}

    .p-staff__thumbnail img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }

@media screen and (max-width: 767px) {
    .p-staff__title, .p-staff__name, .p-staff__caption {
        margin-right: 10px;
        margin-left: 10px
    }
}

.p-staff__title {
    margin-top: 20px
}

.p-staff__name {
    margin-top: .75em;
    text-align: center
}

@media screen and (min-width: 768px) {
    .p-staff__name {
        font-size: 1.8rem
    }
}

.p-staff__caption {
    margin-top: .75em
}

.p-staff-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(0, 270px));
    gap: 10px;
    justify-content: center
}

@media screen and (min-width: 1080px) {
    .p-tel {
        display: flex;
        align-items: center;
        justify-content: center;
        padding-top: 15px;
        font-family: Georgia;
    }
}

.p-tel__heading {
    font-size: 1.6rem;
    font-weight: 500;
    font-family: Georgia;
}

@media print {
    .p-tel__heading {
        font-size: 1.6rem
    }
}

@media screen and (max-width: 1079px) {
    .p-tel__call {
        display: block;
        margin-top: 10px;
        padding: 10px 0 6px;
        border: 3px solid #08408f
    }
}

@media screen and (min-width: 1080px) {
    .p-tel__call {
        display: flex;
        align-items: center;
        margin-left: 16px;
        pointer-events: none
    }
}

.p-tel__call__number {
    font-size: 2.4rem;
    font-weight: bold;
    font-family: "Roboto",sans-serif;
    line-height: 1
}

@media print {
    .p-tel__call__number {
        font-size: 3.4rem
    }
}

.p-tel__call__number span + span {
    margin-left: 2px
}

.p-tel__call__number img {
    vertical-align: baseline
}

.p-tel__call__time {
    color: #333;
    font-weight: 500;
    font-size: 1.3rem
}

@media print {
    .p-tel__call__time {
        font-size: 1.3rem
    }
}

@media screen and (min-width: 1080px) {
    .p-tel__call__time {
        font-size: 1.5rem
    }
}

.u-mt-medium {
    margin-top: 50px
}

@media screen and (min-width: 1080px) {
    .u-mt-medium {
        margin-top: 80px
    }
}


/*提交用户信息表单*/
.layui-input {
    padding-left: 25px !important;
    height:30px;
}

.important {
    color: #ff0000 !important;
    font-weight: normal;
    margin-left: 0px;
    padding: 0;
}

.layui-btn-normal {
    background-color: #044093;
}

.backgroundSecBg {
    margin: 0;
    padding: 0;
}
.templateWidth {
    padding: 30px 30px 30px 30px;
    margin: 0 auto;
}

.topContainer {
    display: none;
}

@media only screen and (min-width: 1024px) {
    .topContainer {
        background-size: contain;
        background-position: center bottom;
    }
}

.contact_from_div_en {
    float: left;
    width: 100%;
    margin-top: 20px;
}

.warningMessage {
    font: 12px Arial, Arimo, Helvetica, sans-serif;
    color: #ff0000;
    padding-top: 5px;
    display: none;
    word-wrap: break-word;
}

.errorMessage {
    font: 12px Arial, Arimo, Helvetica, sans-serif;
    color: #ff0000;
    padding-top: 5px;
    display: none;
    word-wrap: break-word;
}

.p-feature__caption {
    text-align: center;
    font-family: Georgia;
}