@charset "UTF-8";

@font-face {
    font-family: "Times new Roman";
    src: url("../fonts/optitimes-roman-webfont.eot");
    src: local("myfont Regular"), url("../fonts/optitimes-roman-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/optitimes-roman-webfont.woff") format("woff"), url("../fonts/OPTITimes-Roman.ttf") format("truetype"), url("../fonts/optitimes-roman-webfont.svg#svgFontName") format("svg")
}

* {
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased
}

*:focus {
    outline: none
}

*::before,
*::after {
    box-sizing: border-box
}

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    outline: 0;
    margin: 0;
    border: 0;
    padding: 0;
    background: transparent;
    font: inherit;
    vertical-align: baseline
}

body {
    line-height: 1
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
    display: block
}

ul,
ol {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: none
}

a {
    margin: 0;
    padding: 0;
    background: transparent;
    font: inherit;
    color: #3588BA;
    text-decoration: underline;
    vertical-align: baseline
}

a:hover,
a:focus,
a:active {
    text-decoration: none
}

@media (min-width:1024px) {
    a[href^="tel:"] {
        pointer-events: none
    }
}

img {
    max-width: 100%;
    max-height: 100%;
    vertical-align: top
}

img[src$=".svg"] {
    width: 100%
}

sup,
sub {
    font-size: 78%
}

sup {
    vertical-align: super
}

sub {
    vertical-align: sub
}

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none
}

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold
}

del {
    text-decoration: line-through
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

hr {
    display: block;
    margin: 1em 0;
    border: 0;
    padding: 0;
    height: 1px;
    border-top: 1px solid #cccccc
}

button {
    cursor: pointer
}

button,
fieldset,
form,
input,
label,
legend,
select,
textarea {
    -webkit-appearance: none;
    outline: none;
    border-radius: 0;
    border: none;
    margin: 0;
    padding: 0;
    font: inherit;
    vertical-align: baseline
}

input,
textarea {
    max-width: 100%
}

input[type=button],
input[type=reset],
input[type=submit],
button {
    cursor: pointer
}

:placeholder-shown,
::-webkit-input-placeholder,
:-moz-placeholder,
::-moz-placeholder,
:-ms-input-placeholder {
    color: #001b23;
    opacity: 1
}

::-webkit-search-cancel-button {
    -webkit-appearance: none
}

.clearFix::after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden
}

@media (min-width:768px) {
    ._font-sizeS {
        font-size: 1.2rem
    }
}

@media (min-width:768px) {
    ._font-sizeM {
        font-size: 1.4rem
    }
}

@media (min-width:768px) {
    ._font-sizeL {
        font-size: 1.8rem
    }
}

._hide {
    display: none
}

._align-right {
    text-align: right !important
}

._align-left {
    text-align: left !important
}

._align-center {
    text-align: center !important
}

._indent {
    text-indent: 1rem !important
}

._block-right {
    margin-right: 0 !important;
    margin-left: auto !important
}

._block-center {
    margin-right: auto !important;
    margin-left: auto !important
}

._block-left {
    margin-right: auto !important;
    margin-left: 0 !important
}

._font-normal {
    font-weight: normal !important
}

._font-bold {
    font-weight: bold !important
}

._text-italic {
    font-style: italic !important
}

._text-underline {
    text-decoration: underline !important
}

._text-blink {
    text-decoration: blink !important
}

._text-line_through {
    text-decoration: line-through !important
}

@media (min-width:768px) {
    ._only-SP {
        display: none !important
    }
}

@media (min-width:1024px) {
    ._under-TB {
        display: none !important
    }
}

._over-TB {
    display: none !important
}

@media (min-width:768px) {
    ._over-TB {
        display: block !important
    }
}

._over-PC {
    display: none !important
}

@media (min-width:1024px) {
    ._over-PC {
        display: block !important
    }
}

@font-face {
    font-family: "Times new Roman";
    src: url("../fonts/optitimes-roman-webfont.eot");
    src: local("myfont Regular"), url("../fonts/optitimes-roman-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/optitimes-roman-webfont.woff") format("woff"), url("../fonts/OPTITimes-Roman.ttf") format("truetype"), url("../fonts/optitimes-roman-webfont.svg#svgFontName") format("svg")
}

.local_inner,
.global_inner {
    position: relative;
    padding: 0 20px;
    transition: padding 0.3s ease
}

@media (min-width:768px) {

    .local_inner,
    .global_inner {
        margin: 0 auto;
        padding: 0 30px
    }
}

.module_card-01 li div.body .date .label {
    display: inline-block;
    border-radius: 5px;
    border: 1px solid #1a1a1a;
    padding: 0 0.5em
}

.module_button {
    padding: 0 40px
}

.module_button-05,
.module_button-04,
.module_button-03,
.module_button-02,
.module_button-01 {
    cursor: pointer;
    display: inline-block;
    position: relative;
    z-index: 1;
    overflow: visible;
    margin: 0 30px;
    padding: 0.9em 3em;
    min-width: 220px;
    min-height: 60px;
    border: 1px solid transparent;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    color: #fff !important;
    text-align: center;
    text-decoration: none;
    line-height: 1.8;
    transition: 0.3s
}

html[lang=en] .module_button-05,
html[lang=en] .module_button-04,
html[lang=en] .module_button-03,
html[lang=en] .module_button-02,
html[lang=en] .module_button-01 {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_button-05,
html[lang^=zh] .module_button-04,
html[lang^=zh] .module_button-03,
html[lang^=zh] .module_button-02,
html[lang^=zh] .module_button-01 {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_button-05,
html[lang=vi] .module_button-04,
html[lang=vi] .module_button-03,
html[lang=vi] .module_button-02,
html[lang=vi] .module_button-01 {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_button-05,
html[lang=ko] .module_button-04,
html[lang=ko] .module_button-03,
html[lang=ko] .module_button-02,
html[lang=ko] .module_button-01 {
    font-family: "Noto Serif KR", sans-serif
}

.module_button-05::before,
.module_button-04::before,
.module_button-03::before,
.module_button-02::before,
.module_button-01::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 2
}

.module_button-05::before,
.module_button-04::before,
.module_button-03::before,
.module_button-02::before,
.module_button-01::before {
    top: 50%;
    left: -30px;
    overflow: hidden;
    width: 60px;
    height: 1px;
    font-size: 0;
    transition: 0.3s
}

@media (min-width:768px) {

    .module_button-05:not([disabled=disabled]):hover,
    .module_button-04:not([disabled=disabled]):hover,
    .module_button-03:not([disabled=disabled]):hover,
    .module_button-02:not([disabled=disabled]):hover,
    .module_button-01:not([disabled=disabled]):hover {
        background-color: #fff
    }
}

@media (min-width:768px) {

    .module_button-05:not([disabled=disabled]):hover::before,
    .module_button-04:not([disabled=disabled]):hover::before,
    .module_button-03:not([disabled=disabled]):hover::before,
    .module_button-02:not([disabled=disabled]):hover::before,
    .module_button-01:not([disabled=disabled]):hover::before {
        left: -15px
    }
}

.module_button-05:not([disabled=disabled]):hover input,
.module_button-04:not([disabled=disabled]):hover input,
.module_button-03:not([disabled=disabled]):hover input,
.module_button-02:not([disabled=disabled]):hover input,
.module_button-01:not([disabled=disabled]):hover input {
    color: #FFC300
}

[disabled=disabled].module_button-05,
[disabled=disabled].module_button-04,
[disabled=disabled].module_button-03,
[disabled=disabled].module_button-02,
[disabled=disabled].module_button-01 {
    cursor: not-allowed;
    background-color: #ccc
}

[disabled=disabled].module_button-05::before,
[disabled=disabled].module_button-04::before,
[disabled=disabled].module_button-03::before,
[disabled=disabled].module_button-02::before,
[disabled=disabled].module_button-01::before {
    background: linear-gradient(to left, white 1%, white 52%, white 52%, #ccc 52%, #ccc 100%)
}

.global_header .gh_links-01 li.ghl_menu button {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    background-color: #FFC300;
    color: #1a1a1a
}

.global_header .gh_links-01 li.ghl_menu button .icon {
    display: block;
    position: relative;
    top: 10px;
    margin: 0 auto;
    width: 20px;
    height: 2px;
    background-color: #fff;
    transition: 0.3s ease
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon {
        top: 4px;
        width: 36px;
        height: 3px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon {
    background-color: transparent
}

.global_header .gh_links-01 li.ghl_menu button .icon::before,
.global_header .gh_links-01 li.ghl_menu button .icon::after {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    transition: all 0.3s;
    background-color: #fff
}

@media (min-width:768px) {

    .global_header .gh_links-01 li.ghl_menu button .icon::before,
    .global_header .gh_links-01 li.ghl_menu button .icon::after {
        height: 3px
    }
}

.global_header .gh_links-01 li.ghl_menu button .icon::before {
    top: -6px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon::before {
        top: -10px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon::before,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon::before {
    top: 0;
    transform: rotate(45deg)
}

.global_header .gh_links-01 li.ghl_menu button .icon::after {
    top: 6px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon::after {
        top: 10px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon::after,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon::after {
    top: 0;
    transform: rotate(-45deg)
}

.global_header .gh_links-01 li.ghl_menu button i {
    margin-top: 23px;
    width: 100%;
    font-size: 12px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button i {
        font-size: 14px
    }
}

.file label,
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select,
textarea {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    border-radius: 0;
    border: 1px solid #F3F6F9;
    padding: 0.5em 1em;
    width: 100%;
    height: 50px;
    background-color: #F3F6F9;
    font-size: 16px;
    transition: border-color 0.3s
}

.file label:hover,
input:hover:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:hover,
textarea:hover {
    border-color: #FFC300 !important
}

.file label:focus,
input:focus:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:focus,
textarea:focus {
    border-color: #FFC300 !important;
    background-color: #fff
}

.file label:-webkit-autofill,
input:-webkit-autofill:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:-webkit-autofill,
textarea:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #fff inset
}

.file label[readonly=readonly],
input[readonly=readonly]:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select[readonly=readonly],
textarea[readonly=readonly],
.file label[readonly],
input[readonly]:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select[readonly],
textarea[readonly],
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) .file label,
.file form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) label,
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) select,
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) textarea {
    border-color: transparent !important;
    background-color: transparent !important;
    color: #000
}

[class*=module_title] {
    font-weight: 500
}

.module_map,
.module_movie {
    position: relative;
    overflow: hidden;
    padding: 0 0 56.25%;
    width: 100%;
    height: 0
}

.module_map iframe,
.module_movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important
}

ol.module_list-01,
ul.module_list-notes-01,
ul.module_list-01 {
    line-height: 1.875
}

ol.module_list-01 li,
ul.module_list-notes-01 li,
ul.module_list-01 li {
    position: relative;
    padding-left: 1.25em
}

ol.module_list-01 li::before,
ul.module_list-notes-01 li::before,
ul.module_list-01 li::before {
    content: "";
    position: absolute;
    left: 0
}

ol.module_list-01 li+li,
ul.module_list-notes-01 li+li,
ul.module_list-01 li+li {
    margin-top: 0.5em
}

.module_table-wrap {
    max-width: 100%;
    width: 100%
}

.module_table-01 {
    display: block;
    width: auto !important;
    height: auto !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    line-height: 1.4
}

@media (min-width:768px) {
    .module_table-01 {
        display: table;
        width: 100% !important;
        overflow-x: visible
    }
}

.module_table-01 tbody {
    display: table;
    width: 100%
}

@media (min-width:768px) {
    .module_table-01 tbody {
        display: table-row-group
    }
}

.module_table-01 tr th,
.module_table-01 tr td {
    border: 1px solid #001921 !important;
    padding: 1em;
    min-width: 15em;
    vertical-align: middle
}

@media (min-width:768px) {

    .module_table-01 tr th,
    .module_table-01 tr td {
        min-width: 5em
    }
}

.module_table-01 tr th {
    background-color: #FFC300;
    color: #FFC300;
    font-weight: bold;
    text-align: center
}

.module_column-col3,
.module_column-col2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media (min-width:1024px) {

    .module_column-col3,
    .module_column-col2 {
        flex-wrap: nowrap
    }
}

@media (min-width:1024px) {

    .module_column-col3,
    .module_column-col2 {
        justify-content: space-between
    }
}

.module_column-col3 img,
.module_column-col2 img {
    width: 100%
}

@media (min-width:1024px) {

    .module_column-col3 img,
    .module_column-col2 img {
        width: auto
    }
}

.module_column-col3+.module_column-col3,
.module_column-col2+.module_column-col3,
.module_column-col3+.module_column-col2,
.module_column-col2+.module_column-col2 {
    margin-top: 15px
}

@media (min-width:1024px) {

    .module_column-col3+.module_column-col3,
    .module_column-col2+.module_column-col3,
    .module_column-col3+.module_column-col2,
    .module_column-col2+.module_column-col2 {
        margin-top: 30px
    }
}

@font-face {
    font-family: "Times new Roman";
    src: url("../fonts/optitimes-roman-webfont.eot");
    src: local("myfont Regular"), url("../fonts/optitimes-roman-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/optitimes-roman-webfont.woff") format("woff"), url("../fonts/OPTITimes-Roman.ttf") format("truetype"), url("../fonts/optitimes-roman-webfont.svg#svgFontName") format("svg")
}

.local_inner,
.global_inner {
    position: relative;
    padding: 0 20px;
    transition: padding 0.3s ease
}

@media (min-width:768px) {

    .local_inner,
    .global_inner {
        margin: 0 auto;
        padding: 0 30px
    }
}

.module_card-01 li div.body .date .label {
    display: inline-block;
    border-radius: 5px;
    border: 1px solid #1a1a1a;
    padding: 0 0.5em
}

.module_button {
    padding: 0 40px
}

.module_button-05,
.module_button-04,
.module_button-03,
.module_button-02,
.module_button-01 {
    cursor: pointer;
    display: inline-block;
    position: relative;
    z-index: 1;
    overflow: visible;
    margin: 0 30px;
    padding: 0.9em 3em;
    min-width: 220px;
    min-height: 60px;
    border: 1px solid transparent;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    color: #FFC300 !important;
    text-align: center;
    text-decoration: none;
    line-height: 1.8;
    transition: 0.3s
}

html[lang=en] .module_button-05,
html[lang=en] .module_button-04,
html[lang=en] .module_button-03,
html[lang=en] .module_button-02,
html[lang=en] .module_button-01 {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_button-05,
html[lang^=zh] .module_button-04,
html[lang^=zh] .module_button-03,
html[lang^=zh] .module_button-02,
html[lang^=zh] .module_button-01 {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_button-05,
html[lang=vi] .module_button-04,
html[lang=vi] .module_button-03,
html[lang=vi] .module_button-02,
html[lang=vi] .module_button-01 {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_button-05,
html[lang=ko] .module_button-04,
html[lang=ko] .module_button-03,
html[lang=ko] .module_button-02,
html[lang=ko] .module_button-01 {
    font-family: "Noto Serif KR", sans-serif
}

.module_button-05::before,
.module_button-04::before,
.module_button-03::before,
.module_button-02::before,
.module_button-01::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 2
}

.module_button-05::before,
.module_button-04::before,
.module_button-03::before,
.module_button-02::before,
.module_button-01::before {
    top: 50%;
    left: -30px;
    overflow: hidden;
    width: 60px;
    height: 1px;
    font-size: 0;
    transition: 0.3s
}

@media (min-width:768px) {

    .module_button-05:not([disabled=disabled]):hover,
    .module_button-04:not([disabled=disabled]):hover,
    .module_button-03:not([disabled=disabled]):hover,
    .module_button-02:not([disabled=disabled]):hover,
    .module_button-01:not([disabled=disabled]):hover {
        background-color: #FFC300
    }
}

@media (min-width:768px) {

    .module_button-05:not([disabled=disabled]):hover::before,
    .module_button-04:not([disabled=disabled]):hover::before,
    .module_button-03:not([disabled=disabled]):hover::before,
    .module_button-02:not([disabled=disabled]):hover::before,
    .module_button-01:not([disabled=disabled]):hover::before {
        left: -15px
    }
}

.module_button-05:not([disabled=disabled]):hover input,
.module_button-04:not([disabled=disabled]):hover input,
.module_button-03:not([disabled=disabled]):hover input,
.module_button-02:not([disabled=disabled]):hover input,
.module_button-01:not([disabled=disabled]):hover input {
    color: #1a1a1a
}

[disabled=disabled].module_button-05,
[disabled=disabled].module_button-04,
[disabled=disabled].module_button-03,
[disabled=disabled].module_button-02,
[disabled=disabled].module_button-01 {
    cursor: not-allowed;
    background-color: #ccc
}

[disabled=disabled].module_button-05::before,
[disabled=disabled].module_button-04::before,
[disabled=disabled].module_button-03::before,
[disabled=disabled].module_button-02::before,
[disabled=disabled].module_button-01::before {
    background: linear-gradient(to left, white 1%, white 52%, white 52%, #ccc 52%, #ccc 100%)
}

.global_header .gh_links-01 li.ghl_menu button {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    background-color: #1a1a1a;
    color: #fff
}

.global_header .gh_links-01 li.ghl_menu button .icon {
    display: block;
    position: relative;
    top: 10px;
    margin: 0 auto;
    width: 20px;
    height: 2px;
    background-color: #fff;
    transition: 0.3s ease
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon {
        top: 4px;
        width: 36px;
        height: 3px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon {
    background-color: transparent
}

.global_header .gh_links-01 li.ghl_menu button .icon::before,
.global_header .gh_links-01 li.ghl_menu button .icon::after {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    transition: all 0.3s;
    background-color: #fff
}

@media (min-width:768px) {

    .global_header .gh_links-01 li.ghl_menu button .icon::before,
    .global_header .gh_links-01 li.ghl_menu button .icon::after {
        height: 3px
    }
}

.global_header .gh_links-01 li.ghl_menu button .icon::before {
    top: -6px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon::before {
        top: -10px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon::before,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon::before {
    top: 0;
    transform: rotate(45deg)
}

.global_header .gh_links-01 li.ghl_menu button .icon::after {
    top: 6px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon::after {
        top: 10px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon::after,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon::after {
    top: 0;
    transform: rotate(-45deg)
}

.global_header .gh_links-01 li.ghl_menu button i {
    margin-top: 23px;
    width: 100%;
    font-size: 12px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button i {
        font-size: 14px
    }
}

.file label,
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select,
textarea {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    border-radius: 0;
    border: 1px solid #F3F6F9;
    padding: 0.5em 1em;
    width: 100%;
    height: 50px;
    background-color: #F3F6F9;
    font-size: 16px;
    transition: border-color 0.3s
}

.file label:hover,
input:hover:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:hover,
textarea:hover {
    border-color: #1a1a1a !important
}

.file label:focus,
input:focus:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:focus,
textarea:focus {
    border-color: #1a1a1a !important;
    background-color: #fff
}

.file label:-webkit-autofill,
input:-webkit-autofill:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:-webkit-autofill,
textarea:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #fff inset
}

.file label[readonly=readonly],
input[readonly=readonly]:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select[readonly=readonly],
textarea[readonly=readonly],
.file label[readonly],
input[readonly]:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select[readonly],
textarea[readonly],
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) .file label,
.file form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) label,
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) select,
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) textarea {
    border-color: transparent !important;
    background-color: transparent !important;
    color: #000
}

[class*=module_title] {
    font-weight: 500
}

.module_map,
.module_movie {
    position: relative;
    overflow: hidden;
    padding: 0 0 56.25%;
    width: 100%;
    height: 0
}

.module_map iframe,
.module_movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important
}

ol.module_list-01,
ul.module_list-notes-01,
ul.module_list-01 {
    line-height: 1.875
}

ol.module_list-01 li,
ul.module_list-notes-01 li,
ul.module_list-01 li {
    position: relative;
    padding-left: 1.25em
}

ol.module_list-01 li::before,
ul.module_list-notes-01 li::before,
ul.module_list-01 li::before {
    content: "";
    position: absolute;
    left: 0
}

ol.module_list-01 li+li,
ul.module_list-notes-01 li+li,
ul.module_list-01 li+li {
    margin-top: 0.5em
}

.module_table-wrap {
    max-width: 100%;
    width: 100%
}

.module_table-01 {
    display: block;
    width: auto !important;
    height: auto !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    line-height: 1.4
}

@media (min-width:768px) {
    .module_table-01 {
        display: table;
        width: 100% !important;
        overflow-x: visible
    }
}

.module_table-01 tbody {
    display: table;
    width: 100%
}

@media (min-width:768px) {
    .module_table-01 tbody {
        display: table-row-group
    }
}

.module_table-01 tr th,
.module_table-01 tr td {
    border: 1px solid #001921 !important;
    padding: 1em;
    min-width: 15em;
    vertical-align: middle
}

@media (min-width:768px) {

    .module_table-01 tr th,
    .module_table-01 tr td {
        min-width: 5em
    }
}

.module_table-01 tr th {
    background-color: #1a1a1a;
    color: #FFC300;
    font-weight: bold;
    text-align: center
}

.module_column-col3,
.module_column-col2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media (min-width:1024px) {

    .module_column-col3,
    .module_column-col2 {
        flex-wrap: nowrap
    }
}

@media (min-width:1024px) {

    .module_column-col3,
    .module_column-col2 {
        justify-content: space-between
    }
}

.module_column-col3 img,
.module_column-col2 img {
    width: 100%
}

@media (min-width:1024px) {

    .module_column-col3 img,
    .module_column-col2 img {
        width: auto
    }
}

.module_column-col3+.module_column-col3,
.module_column-col2+.module_column-col3,
.module_column-col3+.module_column-col2,
.module_column-col2+.module_column-col2 {
    margin-top: 15px
}

@media (min-width:1024px) {

    .module_column-col3+.module_column-col3,
    .module_column-col2+.module_column-col3,
    .module_column-col3+.module_column-col2,
    .module_column-col2+.module_column-col2 {
        margin-top: 30px
    }
}

.wpcf7 {
    margin: 40px auto 0 !important;
    max-width: 840px
}

@media (min-width:768px) {
    .wpcf7 {
        margin-top: 60px !important
    }
}

.size-SS,
.size-SS input,
.size-SS select {
    width: 5em !important
}

.size-S,
.size-S input,
.size-S select {
    width: 8em !important
}

.size-M,
.size-M input,
.size-M select {
    width: 15em !important
}

.size-L,
.size-L input,
.size-L select {
    width: 20em !important
}

.size-LL,
.size-LL input,
.size-LL select {
    width: 100% !important
}

label {
    cursor: pointer;
    display: block
}

.file span.wpcf7-form-control-wrap {
    display: none
}

span.wpcf7-list-item {
    display: block
}

span.wpcf7-list-item+span.wpcf7-list-item {
    margin-top: 1em !important
}

span.text {
    display: inline-block;
    margin-right: 1em;
    white-space: nowrap
}

input[type=radio],
input[type=checkbox] {
    display: none
}

input[type=radio]+span,
input[type=checkbox]+span {
    display: inline-block;
    position: relative;
    padding-left: 1.5em;
    line-height: 1;
    font-size: 16px
}

input[type=radio]+span::before,
input[type=radio]+span::after,
input[type=checkbox]+span::before,
input[type=checkbox]+span::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    box-sizing: border-box;
    border: 1px solid #001921;
    width: calc(1em + 2px);
    height: calc(1em + 2px);
    background-color: transparent;
    transition: all 0.3s ease
}

input[type=radio]+span::after,
input[type=checkbox]+span::after {
    border-color: transparent
}

input[type=radio]:checked+span::after,
input[type=checkbox]:checked+span::after {
    color: #3588BA
}

input[type=radio]+span::before,
input[type=radio]+span::after {
    border-radius: 100%
}

input[type=radio]+span::after {
    transform: scale(0.6)
}

input[type=checkbox]+span::after {
    content: "";
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    line-height: 1;
    color: #fff
}

.select {
    display: inline-block;
    position: relative
}

.select::after {
    pointer-events: none;
    content: "";
    position: absolute;
    right: 0.5em;
    top: 0.5em;
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    font-size: 26px;
    color: #001921
}

.select select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    border-color: #f8f8f8;
    padding-right: 3em;
    background-color: #f8f8f8;
    color: #001921
}

.select select:hover {
    border-color: #1a1a1a
}

.select select::-ms-expand {
    display: none
}

form.custom-wpcf7c-confirmed .select select::after {
    display: none
}

.file {
    position: relative
}

.file input {
    display: none
}

.file label {
    position: relative;
    min-height: 50px;
    height: auto !important
}

.file label::before {
    content: "選択されていません";
    top: calc(50% - .5em);
    left: 1em
}

.file label._changed::before {
    content: ""
}

.file label._changed+.clear-file {
    display: block
}

.file .clear-file {
    content: "";
    display: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 50px;
    background-color: transparent;
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    color: #001921
}

textarea {
    max-width: 100%;
    height: 10em !important;
    transition: height 0.3s !important
}

textarea:focus {
    height: 20em !important
}

@media (min-width:768px) {
    textarea {
        padding: 2em
    }
}

.wpcf7-recaptcha>div {
    margin-right: auto;
    margin-left: auto
}

@media (min-width:768px) {
    .wpcf7-recaptcha>div {
        margin-right: 0;
        margin-left: 0
    }
}

.module_formList-01 {
    line-height: 1.8
}

.module_formList-01>div {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media (min-width:768px) {
    .module_formList-01>div {
        flex-wrap: nowrap
    }
}

.module_formList-01>div:not(:first-child) {
    margin-top: 30px
}

.module_formList-01>div dt {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-top: 0.5em;
    width: 100%;
    font-weight: bold
}

@media (min-width:768px) {
    .module_formList-01>div dt {
        align-items: flex-start;
        width: 15em
    }
}

.module_formList-01>div dt span.label-need,
.module_formList-01>div dt span.label-any {
    display: inline-block;
    margin-left: 1em;
    padding: 0 0.5em;
    color: #fff;
    font-size: 12px;
    white-space: nowrap
}

@media (min-width:768px) {

    .module_formList-01>div dt span.label-need,
    .module_formList-01>div dt span.label-any {
        margin-top: 0.3em
    }
}

.module_formList-01>div dt span.label-need {
    background-color: #db0000
}

.module_formList-01>div dt span.label-any {
    background-color: #3588BA
}

.module_formList-01>div dd {
    margin-top: 10px;
    width: 100%
}

@media (min-width:768px) {
    .module_formList-01>div dd {
        margin-top: 0;
        width: calc(100% - 15em - 50px)
    }
}

.module_formList-01>div dd ul li {
    display: flex;
    align-items: center
}

.module_formList-01>div dd ul li+li {
    margin-top: 10px
}

._acceptance {
    margin-bottom: 60px;
    text-align: center
}

._submit {
    position: relative
}

._submit [class*=module_button] {
    margin: 0 !important
}

._submit .ajax-loader {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%)
}

.module_formButton {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center
}

@media (min-width:768px) {
    .module_formButton {
        flex-wrap: nowrap
    }
}

.module_formButton [class*=module_button] {
    display: block;
    width: 100%
}

@media (min-width:768px) {
    .module_formButton [class*=module_button] {
        margin: 0 20px
    }
}

.module_formButton [class*=module_button] input {
    width: inherit
}

@media (min-width:768px) {
    .module_formButton [class*=module_button] input {
        font-size: 15px
    }
}

.module_formButton [class^=module_button]+[class^=module_button] {
    margin-top: 15px !important
}

@media (min-width:768px) {
    .module_formButton [class^=module_button]+[class^=module_button] {
        margin-top: 0 !important
    }
}

.grecaptcha-badge {
    z-index: 1000
}

span.wpcf7-not-valid-tip {
    color: #db0000 !important
}

.wpcf7-not-valid {
    border: 1px solid #db0000 !important;
    background: #fffded !important
}

div.wpcf7-response-output,
div.wpcf7-validation-errors,
div.wpcf7-mail-sent-ok {
    margin: 3em auto;
    padding: 1em !important;
    font-weight: bold;
    color: #db0000;
    text-align: center
}

div.wpcf7-response-output,
div.wpcf7-validation-errors {
    border: 1px solid #db0000 !important;
    color: #db0000
}

div.wpcf7-mail-sent-ok {
    border: 1px solid #1a1a1a !important;
    color: #1a1a1a;
    background: white !important
}

form.custom-wpcf7c-confirmed .select::after {
    display: none
}

form.custom-wpcf7c-confirmed .select select {
    color: inherit
}

@font-face {
    font-family: "Times new Roman";
    src: url("../fonts/optitimes-roman-webfont.eot");
    src: local("myfont Regular"), url("../fonts/optitimes-roman-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/optitimes-roman-webfont.woff") format("woff"), url("../fonts/OPTITimes-Roman.ttf") format("truetype"), url("../fonts/optitimes-roman-webfont.svg#svgFontName") format("svg")
}

.local_inner,
.global_inner {
    position: relative;
    padding: 0 20px;
    transition: padding 0.3s ease
}

@media (min-width:768px) {

    .local_inner,
    .global_inner {
        margin: 0 auto;
        padding: 0 30px
    }
}

.module_card-01 li div.body .date .label {
    display: inline-block;
    border-radius: 5px;
    border: 1px solid #1a1a1a;
    padding: 0 0.5em
}

.module_button {
    padding: 0 40px
}

.module_button-05,
.module_button-04,
.module_button-03,
.module_button-02,
.module_button-01 {
    cursor: pointer;
    display: inline-block;
    position: relative;
    z-index: 1;
    overflow: visible;
    margin: 0 30px;
    padding: 0.9em 3em;
    min-width: 220px;
    min-height: 60px;
    border: 1px solid transparent;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    color: #1a1a1a !important;
    text-align: center;
    text-decoration: none;
    line-height: 1.8;
    transition: 0.3s
}

html[lang=en] .module_button-05,
html[lang=en] .module_button-04,
html[lang=en] .module_button-03,
html[lang=en] .module_button-02,
html[lang=en] .module_button-01 {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_button-05,
html[lang^=zh] .module_button-04,
html[lang^=zh] .module_button-03,
html[lang^=zh] .module_button-02,
html[lang^=zh] .module_button-01 {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_button-05,
html[lang=vi] .module_button-04,
html[lang=vi] .module_button-03,
html[lang=vi] .module_button-02,
html[lang=vi] .module_button-01 {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_button-05,
html[lang=ko] .module_button-04,
html[lang=ko] .module_button-03,
html[lang=ko] .module_button-02,
html[lang=ko] .module_button-01 {
    font-family: "Noto Serif KR", sans-serif
}

.module_button-05::before,
.module_button-04::before,
.module_button-03::before,
.module_button-02::before,
.module_button-01::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 2
}

.module_button-05::before,
.module_button-04::before,
.module_button-03::before,
.module_button-02::before,
.module_button-01::before {
    top: 50%;
    left: -30px;
    overflow: hidden;
    width: 60px;
    height: 1px;
    font-size: 0;
    transition: 0.3s
}

@media (min-width:768px) {

    .module_button-05:not([disabled=disabled]):hover,
    .module_button-04:not([disabled=disabled]):hover,
    .module_button-03:not([disabled=disabled]):hover,
    .module_button-02:not([disabled=disabled]):hover,
    .module_button-01:not([disabled=disabled]):hover {
        background-color: #1a1a1a
    }
}

@media (min-width:768px) {

    .module_button-05:not([disabled=disabled]):hover::before,
    .module_button-04:not([disabled=disabled]):hover::before,
    .module_button-03:not([disabled=disabled]):hover::before,
    .module_button-02:not([disabled=disabled]):hover::before,
    .module_button-01:not([disabled=disabled]):hover::before {
        left: -15px
    }
}

.module_button-05:not([disabled=disabled]):hover input,
.module_button-04:not([disabled=disabled]):hover input,
.module_button-03:not([disabled=disabled]):hover input,
.module_button-02:not([disabled=disabled]):hover input,
.module_button-01:not([disabled=disabled]):hover input {
    color: #1a1a1a
}

[disabled=disabled].module_button-05,
[disabled=disabled].module_button-04,
[disabled=disabled].module_button-03,
[disabled=disabled].module_button-02,
[disabled=disabled].module_button-01 {
    cursor: not-allowed;
    background-color: #ccc
}

[disabled=disabled].module_button-05::before,
[disabled=disabled].module_button-04::before,
[disabled=disabled].module_button-03::before,
[disabled=disabled].module_button-02::before,
[disabled=disabled].module_button-01::before {
    background: linear-gradient(to left, white 1%, white 52%, white 52%, #ccc 52%, #ccc 100%)
}

.global_header .gh_links-01 li.ghl_menu button {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    background-color: #1a1a1a;
    color: #fff
}

.global_header .gh_links-01 li.ghl_menu button .icon {
    display: block;
    position: relative;
    top: 10px;
    margin: 0 auto;
    width: 20px;
    height: 2px;
    background-color: #fff;
    transition: 0.3s ease
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon {
        top: 4px;
        width: 36px;
        height: 3px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon {
    background-color: transparent
}

.global_header .gh_links-01 li.ghl_menu button .icon::before,
.global_header .gh_links-01 li.ghl_menu button .icon::after {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    transition: all 0.3s;
    background-color: #fff
}

@media (min-width:768px) {

    .global_header .gh_links-01 li.ghl_menu button .icon::before,
    .global_header .gh_links-01 li.ghl_menu button .icon::after {
        height: 3px
    }
}

.global_header .gh_links-01 li.ghl_menu button .icon::before {
    top: -6px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon::before {
        top: -10px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon::before,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon::before {
    top: 0;
    transform: rotate(45deg)
}

.global_header .gh_links-01 li.ghl_menu button .icon::after {
    top: 6px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon::after {
        top: 10px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon::after,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon::after {
    top: 0;
    transform: rotate(-45deg)
}

.global_header .gh_links-01 li.ghl_menu button i {
    margin-top: 23px;
    width: 100%;
    font-size: 12px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button i {
        font-size: 14px
    }
}

input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select,
textarea,
.file label {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    border-radius: 0;
    border: 1px solid #F3F6F9;
    padding: 0.5em 1em;
    width: 100%;
    height: 50px;
    background-color: #F3F6F9;
    font-size: 16px;
    transition: border-color 0.3s
}

input:hover:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:hover,
textarea:hover,
.file label:hover {
    border-color: #1a1a1a !important
}

input:focus:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:focus,
textarea:focus,
.file label:focus {
    border-color: #1a1a1a !important;
    background-color: #fff
}

input:-webkit-autofill:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:-webkit-autofill,
textarea:-webkit-autofill,
.file label:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #fff inset
}

input[readonly=readonly]:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select[readonly=readonly],
textarea[readonly=readonly],
.file label[readonly=readonly],
input[readonly]:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select[readonly],
textarea[readonly],
.file label[readonly],
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) select,
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) textarea,
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) .file label,
.file form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) label {
    border-color: transparent !important;
    background-color: transparent !important;
    color: #000
}

[class*=module_title] {
    font-weight: 500
}

.module_map,
.module_movie {
    position: relative;
    overflow: hidden;
    padding: 0 0 56.25%;
    width: 100%;
    height: 0
}

.module_map iframe,
.module_movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important
}

ol.module_list-01,
ul.module_list-notes-01,
ul.module_list-01 {
    line-height: 1.875
}

ol.module_list-01 li,
ul.module_list-notes-01 li,
ul.module_list-01 li {
    position: relative;
    padding-left: 1.25em
}

ol.module_list-01 li::before,
ul.module_list-notes-01 li::before,
ul.module_list-01 li::before {
    content: "";
    position: absolute;
    left: 0
}

ol.module_list-01 li+li,
ul.module_list-notes-01 li+li,
ul.module_list-01 li+li {
    margin-top: 0.5em
}

.module_table-wrap {
    max-width: 100%;
    width: 100%
}

.module_table-01 {
    display: block;
    width: auto !important;
    height: auto !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    line-height: 1.4
}

@media (min-width:768px) {
    .module_table-01 {
        display: table;
        width: 100% !important;
        overflow-x: visible
    }
}

.module_table-01 tbody {
    display: table;
    width: 100%
}

@media (min-width:768px) {
    .module_table-01 tbody {
        display: table-row-group
    }
}

.module_table-01 tr th,
.module_table-01 tr td {
    border: 1px solid #001921 !important;
    padding: 1em;
    min-width: 15em;
    vertical-align: middle
}

@media (min-width:768px) {

    .module_table-01 tr th,
    .module_table-01 tr td {
        min-width: 5em
    }
}

.module_table-01 tr th {
    background-color: #1a1a1a;
    color: #FFC300;
    font-weight: bold;
    text-align: center
}

.module_column-col3,
.module_column-col2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media (min-width:1024px) {

    .module_column-col3,
    .module_column-col2 {
        flex-wrap: nowrap
    }
}

@media (min-width:1024px) {

    .module_column-col3,
    .module_column-col2 {
        justify-content: space-between
    }
}

.module_column-col3 img,
.module_column-col2 img {
    width: 100%
}

@media (min-width:1024px) {

    .module_column-col3 img,
    .module_column-col2 img {
        width: auto
    }
}

.module_column-col3+.module_column-col3,
.module_column-col2+.module_column-col3,
.module_column-col3+.module_column-col2,
.module_column-col2+.module_column-col2 {
    margin-top: 15px
}

@media (min-width:1024px) {

    .module_column-col3+.module_column-col3,
    .module_column-col2+.module_column-col3,
    .module_column-col3+.module_column-col2,
    .module_column-col2+.module_column-col2 {
        margin-top: 30px
    }
}

@media (min-width:768px) {
    .global_inner {
        max-width: calc(1160px + 60px)
    }
}

.global_inner._column {
    display: flex;
    justify-content: space-between
}

@media (min-width:768px) {
    .local_inner {
        max-width: calc(800px + 60px)
    }
}

section {
    overflow-x: hidden;
    padding: 60px 0;
    transition: padding 0.3s ease
}

@media (min-width:768px) {
    section {
        padding: 100px 0
    }
}

p:not([class]),
p[class^=_] {
    line-height: 1.875
}

p:not([class])+p:not([class]),
p:not([class])+p[class^=_],
p[class^=_]+p:not([class]),
p[class^=_]+p[class^=_] {
    margin-top: 1.5em
}

p:not([class])+[class*=module_]:not([class*=module_title]):not([class*=module_button]),
p[class^=_]+[class*=module_]:not([class*=module_title]):not([class*=module_button]) {
    margin-top: 40px
}

p:not([class])+[class*=module_list],
p[class^=_]+[class*=module_list] {
    margin-top: 20px
}

[class*=top_]+[class*=top_],
[class*=top_]+p:not([class]),
[class*=top_]+[class*=module_]:not([class*=module_title]):not([class*=module_button-]),
[class*=module_]:not([class*=module_title]):not([class*=module_button-])+p:not([class]),
[class*=top_]+[class^=_]:not(section):not(img):not(li),
[class^=_]:not(section):not(img):not(li)+p:not([class]),
[class*=module_]:not([class*=module_title]):not([class*=module_button-])+[class*=top_],
[class*=module_]:not([class*=module_title]):not([class*=module_button-])+[class*=module_]:not([class*=module_title]):not([class*=module_button-]),
[class*=module_]:not([class*=module_title]):not([class*=module_button-])+[class^=_]:not(section):not(img):not(li),
[class^=_]:not(section):not(img):not(li)+[class*=top_],
[class^=_]:not(section):not(img):not(li)+[class*=module_]:not([class*=module_title]):not([class*=module_button-]),
[class^=_]:not(section):not(img):not(li)+[class^=_]:not(section):not(img):not(li) {
    margin-top: 40px
}

[class*=top_]~[class*=top_title-],
[class*=top_]~.module_imageBox-01:not(:nth-child(2)),
[class*=module_]:not([class*=module_title]):not([class*=module_button-])~[class*=top_title-],
[class*=module_]:not([class*=module_title]):not([class*=module_button-])~.module_imageBox-01:not(:nth-child(2)),
[class^=_]:not(section):not(img):not(li)~[class*=top_title-],
[class^=_]:not(section):not(img):not(li)~.module_imageBox-01:not(:nth-child(2)) {
    margin-top: 60px !important
}

@media (min-width:768px) {

    [class*=top_]~[class*=top_title-],
    [class*=top_]~.module_imageBox-01:not(:nth-child(2)),
    [class*=module_]:not([class*=module_title]):not([class*=module_button-])~[class*=top_title-],
    [class*=module_]:not([class*=module_title]):not([class*=module_button-])~.module_imageBox-01:not(:nth-child(2)),
    [class^=_]:not(section):not(img):not(li)~[class*=top_title-],
    [class^=_]:not(section):not(img):not(li)~.module_imageBox-01:not(:nth-child(2)) {
        margin-top: 100px !important
    }
}

[class*=module_]:not([class*=module_title])+.module_title-02,
[class*=module_]:not([class*=module_title])+.module_title-03,
p:not([class])+.module_title-02,
p:not([class])+.module_title-03,
p[class^=_]+.module_title-02,
p[class^=_]+.module_title-03 {
    margin-top: 10px
}

[class*=module_]:not([class*=module_title])~.module_title-01,
p:not([class])~.module_title-01,
p[class^=_]~.module_title-01 {
    margin-top: 80px
}

[class*=module_title]+.module_title-01 {
    margin-top: 80px
}

[class*=module_title]+.module_title-02 {
    margin-top: 40px
}

[class*=module_title]+.module_title-03 {
    margin-top: 30px
}

[class*=module_space-] {
    border: none;
    margin-bottom: 0
}

.module_space-10 {
    padding-top: 5px !important
}

@media (min-width:768px) {
    .module_space-10 {
        padding-top: 10px !important
    }
}

.module_space-20 {
    padding-top: 10px !important
}

@media (min-width:768px) {
    .module_space-20 {
        padding-top: 20px !important
    }
}

.module_space-30 {
    padding-top: 15px !important
}

@media (min-width:768px) {
    .module_space-30 {
        padding-top: 30px !important
    }
}

.module_space-40 {
    padding-top: 20px !important
}

@media (min-width:768px) {
    .module_space-40 {
        padding-top: 40px !important
    }
}

.module_space-50 {
    padding-top: 25px !important
}

@media (min-width:768px) {
    .module_space-50 {
        padding-top: 50px !important
    }
}

.module_space-60 {
    padding-top: 30px !important
}

@media (min-width:768px) {
    .module_space-60 {
        padding-top: 60px !important
    }
}

._bg_color-gray-01 {
    background-color: #f8f8f8
}

._bg_color-blue-01 {
    background-color: #1a1a1a
}

._bg_illust-world-01 {
    background: url("/wp/wp-content/themes/twla/images/common/bg_map_01.svg") no-repeat center top/110%
}

@media (min-width:768px) {
    ._bg_illust-world-01 {
        padding-bottom: 150px;
        background-size: contain
    }
}

._bg_picture-build-01 {
    padding: 0 0 160px;
    background: url("/wp/wp-content/themes/twla/images/home/bg_01.jpg") no-repeat center bottom/200%
}

@media (min-width:768px) {
    ._bg_picture-build-01 {
        padding-bottom: 25%;
        background-size: cover
    }
}

._bg_picture-build-01 p {
    line-height: 2.5;
    text-align: center
}

.module_line-01 {
    margin: 80px 0 !important;
    border-color: rgba(26, 75, 143, 0.3)
}

.module_date-01 {
    margin-top: 30px !important;
    font-weight: bold
}

.module_date-01 span._underLine {
    padding: 0 0.5em
}

span.caption {
    display: block;
    margin-top: 0.5em;
    font-size: 14px;
    color: #001b23;
    line-height: 1.43
}

span._underLine {
    background: linear-gradient(to bottom, transparent 60%, #FFED56 0%)
}

.global_contents strong {
    font-weight: bold
}

.global_contents em {
    font-style: italic
}

img.alignleft,
img.alignright {
    display: block;
    margin: 0 auto 10px;
    max-width: calc(50% - 12.5px)
}

@media (min-width:768px) {

    img.alignleft,
    img.alignright {
        max-width: calc(50% - 25px)
    }
}

img.alignleft {
    float: left;
    margin-right: 25px
}

@media (min-width:768px) {
    img.alignleft {
        margin-right: 30px
    }
}

img.alignright {
    float: right;
    margin-left: 25px
}

@media (min-width:768px) {
    img.alignright {
        margin-left: 30px
    }
}

img.aligncenter {
    display: block;
    margin: 0 auto;
    width: auto;
    height: auto
}

img.size-full {
    width: 100%
}

[class^=icon-]::after {
    display: inline-block;
    margin-right: 5px;
    margin-left: 5px;
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1
}

[class*=module_button-] [class^=icon-]::after {
    margin-left: 10px
}

.icon-pdf::after {
    content: ""
}

.icon-blank::after {
    content: ""
}

.icon-file::after {
    content: ""
}

.icon-facebook::before {
    content: "";
    margin-right: 5px;
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    line-height: 1;
    font-family: "Font Awesome 5 Brands";
    font-size: 18px
}

.module_link-more01 {
    display: table;
    position: relative;
    margin-left: auto;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    font-size: 16px;
    color: #1a1a1a;
    text-decoration: none;
    line-height: 1;
    transition: 0.3s
}

html[lang=en] .module_link-more01 {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_link-more01 {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_link-more01 {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_link-more01 {
    font-family: "Noto Serif KR", sans-serif
}

.module_link-more01::before {
    content: "";
    display: block;
    position: absolute;
    right: calc(100% + 1em);
    top: 50%;
    width: 40px;
    height: 1px;
    background-color: #1a1a1a;
    transition: 0.3s
}

@media (min-width:768px) {

    .module_link-more01:hover,
    .module_link-more01._hover {
        color: #1a1a1a
    }
}

@media (min-width:768px) {

    .module_link-more01:hover::before,
    .module_link-more01._hover::before {
        width: 0;
        background-color: #1a1a1a
    }
}

[class*=module_button-] {
    margin-bottom: 1.5em
}

[class*=module_button-]+[class*=module_button-] {
    margin-top: 40px
}

@media (min-width:768px) {
    [class*=module_button-]+[class*=module_button-] {
        margin-top: 0
    }
}

[class*=module_button-]:only-child {
    margin-right: 0;
    margin-left: 0
}

._align-center [class*=module_button-] {
    margin-bottom: 0
}

._align-center [class*=module_button-]:first-child {
    margin-left: 0
}

._align-center [class*=module_button-]:last-child {
    margin-right: 0
}

.module_button-01 {
    background-color: #FFC300
}

.module_button-01::before {
    background: linear-gradient(to left, #1a1a1a 1%, #1a1a1a 52%, #1a1a1a 52%, #FFC300 52%, #FFC300 100%)
}

.module_button-01:not([disabled=disabled]):hover {
    border-color: #FFC300;
    color: #FFC300 !important
}

.module_button-01:not([disabled=disabled]):hover::before {
    background: #FFC300
}

.module_button-02 {
    background-color: #1a1a1a
}

.module_button-02::before {
    background: linear-gradient(to left, #1a1a1a 1%, #1a1a1a 52%, #1a1a1a 52%, #1a1a1a 52%, #1a1a1a 100%)
}

.module_button-02:not([disabled=disabled]):hover {
    border-color: #1a1a1a;
    color: #1a1a1a !important
}

.module_button-02:not([disabled=disabled]):hover::before {
    background: #3588BA
}

.module_button-03 {
    margin: 0 20px;
    padding: 1em;
    max-width: 140px;
    height: 40px;
    background-color: #fff;
    color: #1a1a1a !important
}

.module_button-03::before {
    left: -20px;
    width: 40px;
    background: linear-gradient(to left, #1a1a1a 1%, #1a1a1a 52%, white 52%, white 52%, white 100%)
}

.module_button-03:not([disabled=disabled]):hover {
    border-color: #fff;
    background: #1a1a1a;
    color: #fff !important
}

.module_button-03:not([disabled=disabled]):hover::before {
    background: #fff
}

.module_button-04 {
    margin: 0 20px;
    padding: 1em;
    height: 40px;
    background-color: #FFED56;
    color: #1a1a1a !important
}

.module_button-04::before {
    left: -20px;
    width: 40px;
    background: linear-gradient(to left, #1a1a1a 1%, #1a1a1a 52%, #FFED56 52%, #FFED56 52%, #FFED56 100%)
}

.module_button-04:not([disabled=disabled]):hover {
    border-color: #FFED56;
    background: #1a1a1a;
    color: #FFED56 !important
}

.module_button-04:not([disabled=disabled]):hover::before {
    background: #FFED56
}

.module_button-05 {
    background-color: #FFED56;
    color: #1a1a1a !important
}

.module_button-05::before {
    background: #1a1a1a
}

.module_button-05:not([disabled=disabled]):hover {
    border-color: #1a1a1a
}

.module_search {
    display: block;
    position: relative;
    margin: 0 auto 30px;
    max-width: 350px
}

.module_search button[type=submit] {
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 50px;
    background-color: transparent;
    text-align: center;
    line-height: 50px
}

@media (min-width:768px) {
    .module_search button[type=submit] {
        width: 50px;
        height: 50px;
        line-height: 50px
    }
}

.module_search button[type=submit]::before {
    content: "";
    display: block;
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    color: #001b23;
    transition: 0.3s
}

.module_search button[type=submit] span {
    display: none
}

.module_search button[type=submit]:hover::before,
.module_search button[type=submit]:focus::before {
    color: #1a1a1a;
    transform: scale(1.5)
}

.module_password {
    text-align: center
}

.module_password .pwbox {
    position: relative;
    margin: 50px auto 30px;
    max-width: 350px
}

.module_password label {
    display: block
}

.module_password label[for*=pwbox] input {
    display: block;
    padding-right: calc(50px + 1em);
    font-family: monospace !important;
    font-size: 18px !important
}

.module_title-01 {
    margin-bottom: 30px;
    border-bottom: 1px solid #1a1a1a;
    padding-bottom: 0.5em;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    font-size: 26px;
    color: #1a1a1a
}

html[lang=en] .module_title-01 {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_title-01 {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_title-01 {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_title-01 {
    font-family: "Noto Serif KR", sans-serif
}

@media (min-width:768px) {
    .module_title-01 {
        font-size: 28px
    }
}

.module_title-02 {
    margin-bottom: 20px;
    font-size: 22px;
    font-weight: bold;
    color: #1a1a1a
}

.module_title-03 {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: bold
}

.top_title-01 {
    margin-bottom: 1em;
    margin-top: 1em;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    font-size: 32px;
    color: #1a1a1a;
    line-height: 1.3;
    letter-spacing: 0.05em;
    text-align: center
}

html[lang=en] .top_title-01 {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .top_title-01 {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .top_title-01 {
    font-family: "Noto Serif", serif
}

html[lang=ko] .top_title-01 {
    font-family: "Noto Serif KR", sans-serif
}

@media (min-width:768px) {
    .top_title-01 {
        font-size: 36px
    }
}

.top_title-01._font-sizeS {
    font-size: 26px
}

@media (min-width:768px) {
    .top_title-01._font-sizeS {
        font-size: 36px
    }
}

[class*=module_newsTitle-] {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 72px;
    font-size: 16px;
    font-weight: bold
}

.module_newsTitle-01 {
    background-color: #FFED56;
    color: #1a1a1a
}

.module_newsTitle-02 {
    margin-top: 80px !important;
    background-color: #1a1a1a;
    color: #fff
}

.module_newsTitle-02+.ln_links li,
.module_newsTitle-02+.ln_links ul {
    display: block !important
}

.module_map {
    padding-bottom: 0;
    height: 50vh
}

@media (min-width:768px) {
    .module_map {
        padding-bottom: 56.25%;
        height: 0
    }
}

ul.module_list-01 li::before {
    top: 0.6em;
    width: 8px;
    height: 8px;
    background-color: #1a1a1a
}

ul.module_list-notes-01 {
    font-size: 14px
}

ul.module_list-notes-01 li::before {
    content: "※"
}

ul.module_newsList-01 {
    line-height: 1.375
}

.local_navigation ul.module_newsList-01 {
    margin-top: 0 !important;
    font-size: 14px
}

ul.module_newsList-01>li {
    border-bottom: 1px solid #1a1a1a
}

ul.module_newsList-01>li a {
    display: flex;
    padding: 35px 0;
    color: #001921;
    text-decoration: none
}

@media (min-width:768px) {
    ul.module_newsList-01>li a {
        padding: 30px 0
    }
}

.local_navigation ul.module_newsList-01>li a {
    display: flex;
    align-items: center;
    padding: 20px;
    color: #00234B;
    text-decoration: underline
}

.local_navigation ul.module_newsList-01>li a:hover {
    text-decoration: none
}

ul.module_newsList-01>li a div.head {
    margin-right: 20px;
    width: 157px
}

@media (min-width:768px) {
    ul.module_newsList-01>li a div.head {
        width: 160px
    }
}

.local_navigation ul.module_newsList-01>li a div.head {
    width: 80px
}

ul.module_newsList-01>li a div.head .image {
    position: relative;
    overflow: hidden;
    padding: 0 0 calc(106 / 160 * 100%);
    width: 100%;
    height: 0
}

ul.module_newsList-01>li a div.head .image img {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    max-height: none;
    width: auto;
    height: 100%;
    transform: translate(-50%, -50%)
}

ul.module_newsList-01>li a div.body {
    width: calc(100% - 100px)
}

ul.module_newsList-01>li a div.body .date {
    margin-bottom: 0.5em
}

.local_navigation ul.module_newsList-01>li a div.body .date {
    margin-bottom: 0
}

ul.module_pager-01 {
    display: flex;
    justify-content: center;
    overflow-x: auto;
    margin-top: 50px !important
}

@media (min-width:768px) {
    ul.module_pager-01 {
        margin-top: 80px !important
    }
}

ul.module_pager-01 li {
    position: absolute;
    top: -9999px;
    left: -9999px;
    margin: 0 3px;
    width: 40px;
    height: 40px
}

ul.module_pager-01 li.prev,
ul.module_pager-01 li.next,
ul.module_pager-01 li.current_prev,
ul.module_pager-01 li.current_next {
    position: initial;
    top: initial;
    left: initial
}

@media (min-width:375) {

    ul.module_pager-01 li.prev,
    ul.module_pager-01 li.next,
    ul.module_pager-01 li.current_prev,
    ul.module_pager-01 li.current_next {
        position: absolute;
        top: -9999px;
        left: -9999px
    }
}

@media (min-width:375) {

    ul.module_pager-01 li.prev,
    ul.module_pager-01 li.next,
    ul.module_pager-01 li.current_prev,
    ul.module_pager-01 li.current_next {
        position: initial;
        top: initial;
        left: initial
    }
}

ul.module_pager-01 li.current_prev2,
ul.module_pager-01 li.current_next2 {
    position: absolute;
    top: -9999px;
    left: -9999px
}

@media (min-width:768px) {

    ul.module_pager-01 li.current_prev2,
    ul.module_pager-01 li.current_next2 {
        position: initial;
        top: initial;
        left: initial
    }
}

ul.module_pager-01 li.current {
    position: initial
}

ul.module_pager-01 li.prev.current_prev,
ul.module_pager-01 li.next.current_next {
    display: none
}

ul.module_pager-01 li a,
ul.module_pager-01 li span {
    display: block;
    overflow: hidden;
    width: inherit;
    height: inherit;
    background-color: #f8f8f8;
    font-size: 16px;
    font-weight: bold;
    color: #1a1a1a;
    line-height: 40px;
    text-align: center;
    text-decoration: none;
    transition: 0.3s
}

ul.module_pager-01 li a:hover,
ul.module_pager-01 li a:focus,
ul.module_pager-01 li a.current,
ul.module_pager-01 li span:hover,
ul.module_pager-01 li span:focus,
ul.module_pager-01 li span.current {
    background-color: #FFED56
}

ul.module_pager-01 li a.current,
ul.module_pager-01 li span.current {
    cursor: default;
    pointer-events: none
}

ul.module_pager-01 li.prev,
ul.module_pager-01 li.next {
    position: initial;
    top: initial;
    left: initial
}

ul.module_pager-01 li.prev a,
ul.module_pager-01 li.next a {
    background-color: transparent;
    font-size: 24px
}

@media (min-width:768px) {

    ul.module_pager-01 li.prev a,
    ul.module_pager-01 li.next a {
        transition: opacity 0.3s
    }
}

@media (min-width:768px) {

    ul.module_pager-01 li.prev a:hover,
    ul.module_pager-01 li.prev a:focus,
    ul.module_pager-01 li.next a:hover,
    ul.module_pager-01 li.next a:focus {
        opacity: 0.7
    }
}

ul.module_pager-02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media (min-width:768px) {
    ul.module_pager-02 {
        flex-wrap: nowrap
    }
}

ul.module_pager-02 li {
    width: calc(50% - 10px)
}

@media (min-width:768px) {
    ul.module_pager-02 li {
        width: 130px
    }
}

ul.module_pager-02 li a {
    max-width: none
}

ul.module_pager-02 li.back {
    order: 3;
    margin: 0 auto;
    width: 220px
}

@media (min-width:768px) {
    ul.module_pager-02 li.back {
        order: 2;
        width: 145px
    }
}

ul.module_pager-02 li.prev {
    order: 1
}

ul.module_pager-02 li.next {
    order: 2
}

@media (min-width:768px) {
    ul.module_pager-02 li.next {
        order: 3
    }
}

ul.module_pageLink-01 {
    overflow: hidden;
    margin: 0 -5px -20px;
    font-size: 14px
}

@media (min-width:768px) {
    ul.module_pageLink-01 {
        display: flex;
        flex-wrap: wrap
    }
}

ul.module_pageLink-01>li {
    float: left;
    margin: 0 5px 20px
}

ul.module_pageLink-01>li a {
    display: block;
    border: 1px solid #1a1a1a;
    padding: 0.25em 1em;
    background-color: #1a1a1a;
    color: #fff;
    text-decoration: none;
    transition: 0.3s
}

ul.module_pageLink-01>li a:hover {
    background-color: #fff;
    color: #1a1a1a
}

ul.module_pageLink-01>li a span {
    display: block;
    position: relative;
    padding-right: 1em
}

ul.module_pageLink-01>li a span::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: calc(50% - .4em);
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    font-size: 16px
}

ul.module_searchList-01 {
    border-top: 1px solid #001921
}

ul.module_searchList-01>li {
    position: relative;
    border-bottom: 1px solid #001921
}

ul.module_searchList-01>li a {
    display: block;
    padding: 1em;
    color: #001921;
    text-decoration: none
}

ul.module_searchList-01>li a::after {
    content: "";
    display: block;
    position: absolute;
    right: 1em;
    top: calc(50% - .5em);
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    font-size: 20px;
    transition: 0.3s
}

ul.module_searchList-01>li a:hover {
    color: #1a1a1a;
    text-decoration: none
}

ul.module_searchList-01>li a:hover::after {
    transform: translateX(0.5em)
}

ol.module_list-01 {
    counter-reset: number
}

ol.module_list-01 li::before {
    counter-increment: number;
    content: counter(number, decimal) ".";
    color: #3588BA;
    font-weight: bold
}

ol.module_flowList-01 {
    display: flex;
    overflow: hidden;
    height: 80px
}

ol.module_flowList-01 li {
    position: relative;
    height: inherit;
    width: calc(100% / 3 - 30px / 3)
}

@media (min-width:1024px) {
    ol.module_flowList-01 li {
        width: calc(100% / 3 - 100px / 3)
    }
}

ol.module_flowList-01 li::before {
    content: "";
    display: block;
    position: absolute;
    right: -12px;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 40px 0 40px 12px;
    border-color: transparent transparent transparent #1a1a1a
}

@media (min-width:1024px) {
    ol.module_flowList-01 li::before {
        right: -43px;
        border-width: 40px 0 40px 43px
    }
}

ol.module_flowList-01 li::after {
    content: "";
    display: block;
    position: absolute;
    right: -11px;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 40px 0 40px 12px;
    border-color: transparent transparent transparent #fff
}

@media (min-width:1024px) {
    ol.module_flowList-01 li::after {
        right: -42px;
        border-width: 40px 0 40px 43px
    }
}

ol.module_flowList-01 li+li {
    margin-left: 15px
}

@media (min-width:768px) {
    ol.module_flowList-01 li+li {
        margin-left: 50px
    }
}

ol.module_flowList-01 li:last-child::before,
ol.module_flowList-01 li:last-child::after {
    display: none
}

ol.module_flowList-01 li div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border: 1px solid #1a1a1a;
    width: 100%;
    height: inherit;
    font-weight: 500;
    color: #1a1a1a
}

@media (min-width:768px) {
    ol.module_flowList-01 li div {
        flex-direction: row
    }
}

ol.module_flowList-01 li div span {
    display: block
}

ol.module_flowList-01 li div span.title-sub {
    margin-bottom: 0.5em;
    font-size: 1.4rem
}

@media (min-width:768px) {
    ol.module_flowList-01 li div span.title-sub {
        margin: 0 1em 0 0;
        font-size: 2rem
    }
}

ol.module_flowList-01 li div span.title-main {
    font-size: 1.6rem
}

@media (min-width:768px) {
    ol.module_flowList-01 li div span.title-main {
        font-size: 2rem
    }
}

ol.module_flowList-01 li._current::after {
    border-color: transparent transparent transparent #1a1a1a
}

ol.module_flowList-01 li._current div {
    background-color: #1a1a1a;
    color: #fff
}

ol.module_timeLine-01>li {
    position: relative;
    padding-left: 40px
}

ol.module_timeLine-01>li::before,
ol.module_timeLine-01>li::after {
    content: "";
    box-sizing: border-box;
    display: block;
    position: absolute
}

ol.module_timeLine-01>li::before {
    left: 7px;
    top: 24px;
    width: 2px;
    height: 100%;
    background-color: #001921
}

ol.module_timeLine-01>li::after {
    left: 0;
    top: 0;
    border-radius: 100%;
    border: 2px solid #1a1a1a;
    background-color: #1a1a1a;
    width: 17px;
    height: 17px
}

ol.module_timeLine-01>li.type-02::after {
    background-color: #fff
}

ol.module_timeLine-01>li:last-child::before {
    display: none
}

ol.module_timeLine-01>li time {
    position: absolute;
    left: -7px;
    top: -4px;
    z-index: 2;
    border-radius: 100%;
    border: 2px solid #1a1a1a;
    width: 30px;
    height: 30px;
    background-color: #fff
}

ol.module_timeLine-01>li time::before,
ol.module_timeLine-01>li time::after {
    content: "";
    box-sizing: border-box;
    display: block;
    position: absolute;
    left: 52%;
    top: 54%;
    background-color: #1a1a1a;
    transform: translate(-100%, -100%)
}

ol.module_timeLine-01>li time::before {
    width: 2px;
    height: 11px
}

ol.module_timeLine-01>li time::after {
    width: 9px;
    height: 2px
}

ol.module_timeLine-01>li time span {
    display: none
}

ol.module_timeLine-01>li div.head .title-sub {
    margin-bottom: 1em;
    font-size: 14px
}

ol.module_timeLine-01>li div.head .title-main {
    font-size: 18px;
    font-weight: 500
}

@media (min-width:768px) {
    ol.module_timeLine-01>li div.head .title-main {
        font-size: 20px
    }
}

ol.module_timeLine-01>li div.body {
    margin: 0.5em 0 30px;
    border-bottom: 1px solid #f8f8f8;
    padding-bottom: 30px
}

.module_box-blue01 {
    padding: 35px 20px 40px;
    background-color: #e7eff7
}

@media (min-width:768px) {
    .module_box-blue01 {
        padding: 40px 50px
    }
}

[class*=module_column] .module_box-blue01 {
    height: 100%
}

.module_box-yellow01 {
    padding: 30px 20px;
    background-color: #fffded
}

@media (min-width:768px) {
    .module_box-yellow01 {
        padding: 30px
    }
}

[class*=module_column] .module_box-yellow01 {
    height: 100%
}

.module_blockquote-01 {
    position: relative;
    padding: 0 3em;
    line-height: 1.875
}

.module_blockquote-01::before,
.module_blockquote-01::after {
    content: "";
    display: block;
    position: absolute;
    font-family: "Font Awesome 5 Pro";
    font-weight: 700;
    line-height: 1;
    font-size: 20px;
    color: #001921
}

.module_blockquote-01::before {
    content: "";
    left: 0;
    top: 0
}

.module_blockquote-01::after {
    content: "";
    right: 0;
    bottom: 0
}

.module_imageBox-01 {
    position: relative;
    padding-top: calc(185 / 370 * 100% - 40px)
}

@media (min-width:1024px) {
    .module_imageBox-01 {
        padding-top: 84px
    }
}

.module_imageBox-01 div.head {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
    box-shadow: -5px 5px 15px -5px rgba(0, 0, 0, 0.5);
    width: calc(100% + 20px)
}

@media (min-width:768px) {
    .module_imageBox-01 div.head {
        right: auto;
        left: -30px;
        width: 720px
    }
}

@media (min-width:1024px) {
    .module_imageBox-01 div.head {
        right: 580px;
        left: auto;
        width: 720px
    }
}

.module_imageBox-01 div.body {
    position: relative;
    margin-right: -20px;
    box-shadow: 5px 5px 15px -5px rgba(0, 0, 0, 0);
    padding: 80px 20px 40px;
    position: relative;
    color: #fff;
    transition: 0.3s;
    transition-delay: 1.8s
}

.module_imageBox-01 div.body::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #1a1a1a;
    transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    transition-property: transform;
    transform: scaleX(0);
    transition-duration: 1s;
    transition-delay: 0.4s;
    transform-origin: left
}

.module_imageBox-01 div.body._scroll_anime::before {
    transform: scaleX(1)
}

@media (min-width:768px) {
    .module_imageBox-01 div.body {
        margin-right: -40px
    }
}

@media (min-width:1024px) {
    .module_imageBox-01 div.body {
        margin: 0 0 0 auto;
        padding: 40px 40px 40px 190px;
        max-width: 710px
    }
}

.module_imageBox-01 div.body>* {
    opacity: 0;
    transition: opacity 0.3s;
    transition-delay: 1.8s
}

.module_imageBox-01 div.body p:not([class]) {
    min-height: 5em
}

.module_imageBox-01 div.body [class^=module_button-]:first-child {
    margin-right: 0
}

@media (min-width:768px) {
    .module_imageBox-01 div.body [class^=module_button-]:first-child {
        margin-right: 20px
    }
}

.module_imageBox-01 div.body [class^=module_button-]:nth-child(n+2) {
    margin-left: 0
}

@media (min-width:768px) {
    .module_imageBox-01 div.body [class^=module_button-]:nth-child(n+2) {
        margin-left: 20px
    }
}

.module_imageBox-01 .top_title-01 {
    display: none;
    margin-left: auto;
    padding-left: 190px;
    max-width: 710px;
    text-align: left;
    opacity: 0;
    transition: opacity 0.3s;
    transition-delay: 1.8s
}

@media (min-width:1024px) {
    .module_imageBox-01 .top_title-01 {
        display: block
    }
}

.module_imageBox-01._order div.head {
    right: auto;
    left: 0;
    box-shadow: 5px 5px 15px -5px rgba(0, 0, 0, 0.5)
}

@media (min-width:768px) {
    .module_imageBox-01._order div.head {
        left: auto;
        right: -30px
    }
}

@media (min-width:1024px) {
    .module_imageBox-01._order div.head {
        left: 580px;
        right: auto;
        margin: 0 auto 0 0
    }
}

.module_imageBox-01._order div.body {
    margin-right: auto;
    margin-left: -20px;
    box-shadow: -5px 5px 15px -5px rgba(0, 0, 0, 0);
    position: relative;
    color: #fff
}

.module_imageBox-01._order div.body::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #1a1a1a;
    transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    transition-property: transform;
    transform: scaleX(0);
    transition-duration: 1s;
    transition-delay: 0.4s;
    transform-origin: right
}

.module_imageBox-01._order div.body._scroll_anime::before {
    transform: scaleX(1)
}

@media (min-width:768px) {
    .module_imageBox-01._order div.body {
        margin-right: auto;
        margin-left: -40px
    }
}

@media (min-width:1024px) {
    .module_imageBox-01._order div.body {
        margin-right: auto;
        margin-left: 0;
        padding-right: 190px;
        padding-left: 40px
    }
}

@media (min-width:1024px) {
    .module_imageBox-01._order .top_title-01 {
        margin-right: auto;
        margin-left: 0;
        padding-right: 190px;
        padding-left: 40px
    }
}

.module_imageBox-01._scroll_anime .top_title-01 {
    opacity: 1
}

.module_imageBox-01._scroll_anime div.body {
    box-shadow: 5px 5px 15px -5px rgba(0, 0, 0, 0.5)
}

.module_imageBox-01._scroll_anime div.body::before {
    transform: scaleX(1)
}

.module_imageBox-01._scroll_anime div.body>* {
    opacity: 1
}

.module_imageBox-01._scroll_anime._order div.body {
    box-shadow: -5px 5px 15px -5px rgba(0, 0, 0, 0.5)
}

.module_card-01 {
    margin-bottom: 40px;
    padding: 0 20px
}

.module_card-01 li {
    position: relative;
    background-color: #fff
}

.module_card-01 li+li {
    margin-top: 20px
}

@media (min-width:768px) {
    .module_card-01 li+li {
        margin-top: 0
    }
}

.module_card-01 li>a {
    display: block;
    position: relative;
    color: #001921;
    text-decoration: none
}

.module_card-01 li div.head {
    position: relative;
    overflow: hidden;
    padding: 0 0 calc(220 / 300 * 100%);
    width: 100%;
    height: 0
}

.module_card-01 li div.head .image img {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    max-height: none;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: 100%;
    transform: translate(-50%, -50%);
    transition: transform 0.3s ease
}

.module_card-01 li div.body {
    padding: 20px
}

.module_card-01 li div.body .title {
    overflow: hidden;
    margin-bottom: 0.5em;
    font-size: 16px;
    font-weight: bold;
    color: #1a1a1a;
    letter-spacing: 0.05em;
    white-space: nowrap;
    text-overflow: ellipsis
}

.module_card-01 li div.body .date {
    margin-top: 1.5em;
    font-size: 1.3rem
}

.module_card-01 li div.body .date time {
    color: #001b23
}

.module_card-01 li div.body .date .label {
    margin-left: 1em
}

.module_card-01 li div.body .module_link-more01 {
    position: absolute;
    right: 20px;
    bottom: 20px
}

.module_card-01 li:nth-child(n+2)>a {
    display: flex
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2)>a {
        display: block
    }
}

.module_card-01 li:nth-child(n+2) div {
    width: 50%
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div {
        width: 100%
    }
}

.module_card-01 li:nth-child(n+2) div.head {
    padding-bottom: calc(112 / 168 * 50%)
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div.head {
        padding-bottom: calc(220 / 300 * 100%)
    }
}

.module_card-01 li:nth-child(n+2) div.body {
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div.body {
        display: block;
        padding: 20px
    }
}

.module_card-01 li:nth-child(n+2) div.body .title {
    font-size: 14px
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div.body .title {
        font-size: 16px
    }
}

.module_card-01 li:nth-child(n+2) div.body .text {
    display: none
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div.body .text {
        display: block
    }
}

.module_card-01 li:nth-child(n+2) div.body .date {
    display: none
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div.body .date {
        display: block
    }
}

.module_card-01 li:nth-child(n+4) {
    display: none
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+4) {
        display: block
    }
}

.module_card-02 {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    width: 100%
}

.module_card-02 li {
    margin-left: 20px;
    width: calc(100% / 2 - 20px / 2)
}

@media (min-width:768px) {
    .module_card-02 li {
        margin-left: 40px;
        overflow: hidden;
        width: calc(100% / 3 - .1px - 80px / 3)
    }
}

.module_card-02 li:nth-child(2n+1) {
    margin-left: 0
}

@media (min-width:768px) {
    .module_card-02 li:nth-child(2n+1) {
        margin-left: 40px
    }
}

@media (min-width:768px) {
    .module_card-02 li:nth-child(3n+1) {
        margin-left: 0
    }
}

.module_card-02 li:nth-child(n+3) {
    margin-top: 40px
}

@media (min-width:768px) {
    .module_card-02 li:nth-child(n+3) {
        margin-top: 0
    }
}

@media (min-width:768px) {
    .module_card-02 li:nth-child(n+4) {
        margin-top: 60px
    }
}

.module_card-02 li a {
    display: block;
    height: 100%;
    color: #001921;
    text-decoration: none
}

.module_card-02 li a .image {
    position: relative;
    overflow: hidden;
    padding: 0 0 56.47668394%;
    width: 100%;
    height: 0
}

.module_card-02 li a .image img {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    max-height: none;
    width: 100%;
    height: auto;
    transition: 0.3s;
    transform: translate(-50%, -50%)
}

.module_card-02 li a>div {
    border: solid #f8f8f8;
    border-width: 0 1px 1px 1px;
    padding: 40px 30px;
    background-color: #fff
}

@media (min-width:768px) {
    .module_card-02 li a>div {
        border: solid #f8f8f8;
        border-width: 1px 1px 1px 0;
        height: 100%
    }
}

.module_card-02 li a .title {
    position: relative;
    margin-top: 0.5em;
    padding-left: 2em;
    font-size: 16px;
    line-height: 1.4
}

@media (min-width:768px) {
    .module_card-02 li a .title {
        padding-left: 3.5em;
        font-size: 18px
    }
}

.module_card-02 li a .title::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0.7em;
    width: 20px;
    height: 1px;
    background-color: #1a1a1a
}

@media (min-width:768px) {
    .module_card-02 li a .title::before {
        width: 40px
    }
}

.module_card-02 li a:hover .image img {
    transform: translate(-50%, -50%) scale(1.1)
}

.module_slider-01 {
    position: relative;
    width: 100%;
    font-size: 14px;
    line-height: 1.2
}

.module_slider-01 .ms_slide li {
    position: relative
}

.module_slider-01 .ms_slide li .head .image img {
    display: block;
    width: 100%
}

.module_slider-01 .ms_slide li .body {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 0.5em 1em;
    width: 100%;
    background: rgba(0, 0, 0, 0.3);
    color: #fff;
    text-align: center
}

.module_slider-01 .bx-controls-direction a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: calc(50% - 20px);
    width: 40px;
    height: 40px;
    border: 1px solid #3588BA;
    background-color: #3588BA;
    text-decoration: none;
    transition: background-color 0.3s
}

.module_slider-01 .bx-controls-direction a::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    font-size: 30px;
    color: #fff
}

.module_slider-01 .bx-controls-direction a:hover {
    background-color: #fff
}

.module_slider-01 .bx-controls-direction a:hover::before {
    color: #3588BA
}

.module_slider-01 .bx-controls-direction a span {
    display: none
}

.module_slider-01 .bx-controls-direction a.bx-prev {
    left: 0
}

.module_slider-01 .bx-controls-direction a.bx-prev::before {
    content: ""
}

.module_slider-01 .bx-controls-direction a.bx-next {
    right: 0
}

.module_slider-01 .bx-controls-direction a.bx-next::before {
    content: ""
}

[class*=module_gallery] ul {
    display: flex;
    flex-wrap: wrap
}

[class*=module_gallery] ul li {
    margin-left: 10px
}

@media (min-width:768px) {
    [class*=module_gallery] ul li {
        margin-left: 20px
    }
}

[class*=module_gallery] ul li:nth-child(2n+1) {
    margin-left: 0
}

@media (min-width:768px) {
    [class*=module_gallery] ul li:nth-child(2n+1) {
        margin-left: 20px
    }
}

[class*=module_gallery] ul li:nth-child(n+3) {
    margin-top: 10px
}

@media (min-width:768px) {
    [class*=module_gallery] ul li:nth-child(n+3) {
        margin-top: 0
    }
}

[class*=module_gallery] ul li a {
    display: block;
    position: relative;
    overflow: hidden;
    text-decoration: none
}

[class*=module_gallery] ul li a::before {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 3;
    width: 30px;
    height: 30px;
    background-color: rgba(0, 0, 0, 0.6);
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    font-size: 16px;
    color: #fff;
    line-height: 30px;
    text-align: center;
    transition: 0.3s
}

[class*=module_gallery] ul li a .head {
    position: relative;
    overflow: hidden;
    padding: 0 0 calc(360 / 360 * 100%);
    width: 100%;
    height: 0
}

[class*=module_gallery] ul li a img {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    max-height: none;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: 100%;
    transform: translate(-50%, -50%);
    transition: 0.3s
}

[class*=module_gallery] ul li a:hover::before {
    right: 50%;
    bottom: 50%;
    background-color: rgba(0, 0, 0, 0);
    transform: translate(50%, 50%) scale(5);
    color: rgba(255, 255, 255, 0.7)
}

[class*=module_gallery] ul li a:hover img {
    transform: translate(-50%, -50%), scale(1.1)
}

.module_gallery-02 ul li {
    width: calc(50% - 5px)
}

@media (min-width:768px) {
    .module_gallery-02 ul li {
        width: calc(50% - 10px)
    }
}

@media (min-width:768px) {
    .module_gallery-02 ul li:nth-child(2n+1) {
        margin-left: 0
    }
}

@media (min-width:768px) {
    .module_gallery-02 ul li:nth-child(n+3) {
        margin-top: 20px
    }
}

.module_gallery-03 ul li {
    width: calc(50% - 5px)
}

@media (min-width:768px) {
    .module_gallery-03 ul li {
        width: calc(100% / 3 - 20px * 2 / 3 - .01px)
    }
}

@media (min-width:768px) {
    .module_gallery-03 ul li:nth-child(3n+1) {
        margin-left: 0
    }
}

@media (min-width:768px) {
    .module_gallery-03 ul li:nth-child(n+4) {
        margin-top: 20px
    }
}

.module_gallery-04 ul li {
    width: calc(50% - 5px)
}

@media (min-width:768px) {
    .module_gallery-04 ul li {
        width: calc(100% / 4 - 20px * 3 / 4)
    }
}

@media (min-width:768px) {
    .module_gallery-04 ul li:nth-child(4n+1) {
        margin-left: 0
    }
}

@media (min-width:768px) {
    .module_gallery-04 ul li:nth-child(n+5) {
        margin-top: 20px
    }
}

.module_gallery-05 ul li {
    width: calc(50% - 5px)
}

@media (min-width:768px) {
    .module_gallery-05 ul li {
        width: calc(100% / 5 - 20px * 4 / 5)
    }
}

@media (min-width:768px) {
    .module_gallery-05 ul li:nth-child(5n+1) {
        margin-left: 0
    }
}

@media (min-width:768px) {
    .module_gallery-05 ul li:nth-child(n+6) {
        margin-top: 20px
    }
}

.module_gallery-06 ul li {
    width: calc(50% - 5px)
}

@media (min-width:768px) {
    .module_gallery-06 ul li {
        width: calc(100% / 6 - 20px * 5 / 6)
    }
}

@media (min-width:768px) {
    .module_gallery-06 ul li:nth-child(6n+1) {
        margin-left: 0
    }
}

@media (min-width:768px) {
    .module_gallery-06 ul li:nth-child(n+7) {
        margin-top: 20px
    }
}

.module_column-col1._left::after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden
}

.module_column-col1._left .img {
    float: left;
    margin-right: 20px;
    margin-bottom: 10px;
    max-width: calc(50% - 10px)
}

@media (min-width:768px) {
    .module_column-col1._left .img {
        margin-right: 30px;
        max-width: calc(50% - 20px)
    }
}

.module_column-col1._left._one_column {
    max-width: 100%;
    margin-right: 0
}

.module_column-col1._order::after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden
}

.module_column-col1._order .img {
    float: right;
    margin-left: 20px;
    margin-bottom: 10px;
    max-width: calc(50% - 10px)
}

@media (min-width:768px) {
    .module_column-col1._order .img {
        margin-left: 30px;
        max-width: calc(50% - 20px)
    }
}

.module_column-col1._order._one_column {
    max-width: 100%;
    margin-right: 0
}

.module_column-col2>.col {
    max-width: calc(50% - 10px);
    width: 100%
}

@media (min-width:1024px) {
    .module_column-col2>.col+.col {
        margin-top: 0
    }
}

.module_column-col2._order {
    flex-direction: row-reverse
}

.module_column-col2._order>.col+.col {
    margin-top: 0;
    margin-bottom: 15px
}

@media (min-width:1024px) {
    .module_column-col2._order>.col+.col {
        margin-bottom: 0
    }
}

.module_column-col2._one_column>.col {
    max-width: none;
    width: 100%
}

@media (min-width:1024px) {
    .module_column-col2._one_column>.col {
        width: calc(50% - 20px)
    }
}

.module_column-col2._one_column>.col+.col {
    margin-top: 15px
}

@media (min-width:1024px) {
    .module_column-col2._one_column>.col+.col {
        margin-top: 0
    }
}

@media (min-width:768px) {
    .module_column-col3>.col {
        width: calc((100% / 3) - 20px)
    }
}

.module_column-col3>.col+.col {
    margin-top: 15px
}

@media (min-width:768px) {
    .module_column-col3>.col+.col {
        margin-top: 0
    }
}

@media (min-width:768px) {
    .module_pointList-01 {
        display: flex
    }
}

.module_pointList-01 li {
    position: relative;
    margin-left: 10px;
    border: 1px solid #FFC300;
    width: calc(100% - 10px);
    background-color: #fffded;
    text-align: center
}

@media (min-width:768px) {
    .module_pointList-01 li {
        margin-left: 0;
        width: 100%
    }
}

.module_pointList-01 li+li {
    margin-top: 20px
}

@media (min-width:768px) {
    .module_pointList-01 li+li {
        margin-top: 0;
        margin-left: 40px
    }
}

.module_pointList-01 li>a {
    display: block;
    padding: 70px 20px 20px;
    height: 100%;
    text-decoration: none;
    color: #001921
}

@media (min-width:768px) {
    .module_pointList-01 li>a {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 70px 20px
    }
}

.module_pointList-01 li .label {
    position: absolute;
    left: -10px;
    top: 10px;
    padding: 0 1em 0 1.5em;
    background-color: #1a1a1a;
    height: 38px;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 400;
    font-size: 12px;
    color: #fff;
    line-height: 46px
}

html[lang=en] .module_pointList-01 li .label {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_pointList-01 li .label {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_pointList-01 li .label {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_pointList-01 li .label {
    font-family: "Noto Serif KR", sans-serif
}

@media (min-width:768px) {
    .module_pointList-01 li .label {
        left: 10px;
        top: -10px;
        padding: 1em 0;
        width: 64px;
        height: auto;
        text-align: center
    }
}

.module_pointList-01 li .label::before,
.module_pointList-01 li .label::after {
    content: "";
    display: block;
    position: absolute;
    left: 100%;
    width: 0;
    height: 0;
    border-style: solid
}

@media (min-width:768px) {

    .module_pointList-01 li .label::before,
    .module_pointList-01 li .label::after {
        left: auto;
        top: 100%
    }
}

.module_pointList-01 li .label::before {
    top: 0;
    border-width: 19px 6px 0 0;
    border-color: #1a1a1a transparent transparent transparent
}

@media (min-width:768px) {
    .module_pointList-01 li .label::before {
        top: 100%;
        left: 0;
        border-width: 9px 32px 0 0;
        border-color: #1a1a1a transparent transparent transparent
    }
}

.module_pointList-01 li .label::after {
    bottom: 0;
    border-width: 19px 0 0 6px;
    border-color: transparent transparent transparent #1a1a1a
}

@media (min-width:768px) {
    .module_pointList-01 li .label::after {
        bottom: auto;
        right: 0;
        border-width: 0 32px 9px 0;
        border-color: transparent #1a1a1a transparent transparent
    }
}

.module_pointList-01 li .label span {
    line-height: 1
}

@media (min-width:768px) {
    .module_pointList-01 li .label span {
        display: block
    }
}

.module_pointList-01 li .label span.number {
    margin-left: 5px;
    font-size: 24px
}

@media (min-width:768px) {
    .module_pointList-01 li .label span.number {
        margin-top: 5px;
        margin-left: auto
    }
}

.module_pointList-01 li div.body .title {
    margin-bottom: 0.5em;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    font-size: 22px;
    color: #1a1a1a;
    line-height: 1.636;
    letter-spacing: 0.05em
}

html[lang=en] .module_pointList-01 li div.body .title {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_pointList-01 li div.body .title {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_pointList-01 li div.body .title {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_pointList-01 li div.body .title {
    font-family: "Noto Serif KR", sans-serif
}

@media (min-width:768px) {
    .module_pointList-01 li div.body .title {
        font-size: 24px
    }
}

.module_pointList-01 li div.body .text {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6
}

.module_pointList-01 li div.body .notes {
    margin-top: 0.5em;
    font-size: 14px
}

.module_pointList-01 li .module_link-more01 {
    margin-top: 2em
}

@media (min-width:768px) {
    .module_pointList-01 li .module_link-more01 {
        position: absolute;
        right: 30px;
        bottom: 1em
    }
}

.module_voiceList-01 {
    overflow: hidden;
    font-size: 14px
}

.module_voiceList-01 li {
    position: relative;
    margin: 10px 0 0 10px;
    padding: 20px 20px 40px;
    background-color: #fffded
}

@media (min-width:768px) {
    .module_voiceList-01 li {
        display: flex;
        justify-content: space-between;
        overflow: hidden;
        margin: 0;
        padding: 0;
        background-color: transparent
    }
}

.module_voiceList-01 li+li {
    margin-top: 20px
}

@media (min-width:768px) {
    .module_voiceList-01 li+li {
        margin-top: 20px
    }
}

.module_voiceList-01 li::before {
    content: "";
    display: block;
    position: absolute;
    left: -10px;
    top: -10px;
    border: 1px solid #3588BA;
    width: 100%;
    height: 100%
}

@media (min-width:768px) {
    .module_voiceList-01 li::before {
        display: none
    }
}

.module_voiceList-01 li div.head .image {
    display: none
}

@media (min-width:768px) {
    .module_voiceList-01 li div.head .image {
        display: block;
        width: 160px
    }
}

.module_voiceList-01 li div.body {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body {
        position: relative;
        margin-top: 10px;
        padding: 20px;
        margin-left: 30px;
        background-color: #fffded
    }
}

@media (min-width:768px) {

    .module_voiceList-01 li div.body::before,
    .module_voiceList-01 li div.body::after {
        content: "";
        display: block;
        position: absolute
    }
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body::before {
        left: -10px;
        top: -10px;
        border: 1px solid #3588BA;
        border-left: none;
        width: 100%;
        height: 100%
    }
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body::after {
        content: "";
        display: block;
        position: absolute;
        left: -23px;
        top: calc(50% - 18px);
        width: 13px;
        height: 1px;
        background-color: #3588BA;
        transform: rotate(15deg)
    }
}

.module_voiceList-01 li div.body .title {
    margin-bottom: 1em;
    width: 100%;
    font-weight: bold
}

@media (min-width:768px) {

    .module_voiceList-01 li div.body .title::before,
    .module_voiceList-01 li div.body .title::after {
        content: "";
        display: block;
        position: absolute;
        left: -10px;
        width: 1px;
        height: calc(50% - 5px);
        background-color: #3588BA
    }
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body .title::before {
        top: -10px
    }
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body .title::after {
        bottom: 10px
    }
}

.module_voiceList-01 li div.body .image {
    display: block;
    width: 80px;
    height: 80px
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body .image {
        display: none
    }
}

.module_voiceList-01 li div.body .text {
    width: calc(100% - 100px);
    line-height: 1.85
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body .text {
        width: 100%
    }
}

#top_news .bx-wrapper {
    max-width: none !important
}

@media (min-width:768px) {
    #top_news .bx-wrapper {
        margin-bottom: 40px
    }
}

._ru {
    font-family: "Times new Roman", Calibri
}

@font-face {
    font-family: "Times new Roman";
    src: url("../fonts/optitimes-roman-webfont.eot");
    src: local("myfont Regular"), url("../fonts/optitimes-roman-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/optitimes-roman-webfont.woff") format("woff"), url("../fonts/OPTITimes-Roman.ttf") format("truetype"), url("../fonts/optitimes-roman-webfont.svg#svgFontName") format("svg")
}

.global_inner,
.local_inner {
    position: relative;
    padding: 0 20px;
    transition: padding 0.3s ease
}

@media (min-width:768px) {

    .global_inner,
    .local_inner {
        margin: 0 auto;
        padding: 0 30px
    }
}

.module_card-01 li div.body .date .label {
    display: inline-block;
    border-radius: 5px;
    border: 1px solid #FFC300;
    padding: 0 0.5em
}

.module_button {
    padding: 0 40px
}

.module_button-01,
.module_button-02,
.module_button-03,
.module_button-04,
.module_button-05 {
    cursor: pointer;
    display: inline-block;
    position: relative;
    z-index: 1;
    overflow: visible;
    margin: 0 30px;
    padding: 0.9em 3em;
    min-width: 220px;
    min-height: 60px;
    border: 1px solid transparent;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    color: #fff !important;
    text-align: center;
    text-decoration: none;
    line-height: 1.8;
    transition: 0.3s
}

html[lang=en] .module_button-01,
html[lang=en] .module_button-02,
html[lang=en] .module_button-03,
html[lang=en] .module_button-04,
html[lang=en] .module_button-05 {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_button-01,
html[lang^=zh] .module_button-02,
html[lang^=zh] .module_button-03,
html[lang^=zh] .module_button-04,
html[lang^=zh] .module_button-05 {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_button-01,
html[lang=vi] .module_button-02,
html[lang=vi] .module_button-03,
html[lang=vi] .module_button-04,
html[lang=vi] .module_button-05 {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_button-01,
html[lang=ko] .module_button-02,
html[lang=ko] .module_button-03,
html[lang=ko] .module_button-04,
html[lang=ko] .module_button-05 {
    font-family: "Noto Serif KR", sans-serif
}

.module_button-01::before,
.module_button-02::before,
.module_button-03::before,
.module_button-04::before,
.module_button-05::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 2
}

.module_button-01::before,
.module_button-02::before,
.module_button-03::before,
.module_button-04::before,
.module_button-05::before {
    top: 50%;
    left: -30px;
    overflow: hidden;
    width: 60px;
    height: 1px;
    font-size: 0;
    transition: 0.3s
}

@media (min-width:768px) {

    .module_button-01:not([disabled=disabled]):hover,
    .module_button-02:not([disabled=disabled]):hover,
    .module_button-03:not([disabled=disabled]):hover,
    .module_button-04:not([disabled=disabled]):hover,
    .module_button-05:not([disabled=disabled]):hover {
        background-color: #fff
    }
}

@media (min-width:768px) {

    .module_button-01:not([disabled=disabled]):hover::before,
    .module_button-02:not([disabled=disabled]):hover::before,
    .module_button-03:not([disabled=disabled]):hover::before,
    .module_button-04:not([disabled=disabled]):hover::before,
    .module_button-05:not([disabled=disabled]):hover::before {
        left: -15px
    }
}

.module_button-01:not([disabled=disabled]):hover input,
.module_button-02:not([disabled=disabled]):hover input,
.module_button-03:not([disabled=disabled]):hover input,
.module_button-04:not([disabled=disabled]):hover input,
.module_button-05:not([disabled=disabled]):hover input {
    color: #1a1a1a
}

[disabled=disabled].module_button-01,
[disabled=disabled].module_button-02,
[disabled=disabled].module_button-03,
[disabled=disabled].module_button-04,
[disabled=disabled].module_button-05 {
    cursor: not-allowed;
    background-color: #ccc
}

[disabled=disabled].module_button-01::before,
[disabled=disabled].module_button-02::before,
[disabled=disabled].module_button-03::before,
[disabled=disabled].module_button-04::before,
[disabled=disabled].module_button-05::before {
    background: linear-gradient(to left, white 1%, white 52%, white 52%, #ccc 52%, #ccc 100%)
}

.global_header .gh_links-01 li.ghl_menu button {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    background-color: #1a1a1a;
    color: #fff
}

.global_header .gh_links-01 li.ghl_menu button .icon {
    display: block;
    position: relative;
    top: 10px;
    margin: 0 auto;
    width: 20px;
    height: 2px;
    background-color: #fff;
    transition: 0.3s ease
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon {
        top: 4px;
        width: 36px;
        height: 3px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon {
    background-color: transparent
}

.global_header .gh_links-01 li.ghl_menu button .icon::before,
.global_header .gh_links-01 li.ghl_menu button .icon::after {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    transition: all 0.3s;
    background-color: #fff
}

@media (min-width:768px) {

    .global_header .gh_links-01 li.ghl_menu button .icon::before,
    .global_header .gh_links-01 li.ghl_menu button .icon::after {
        height: 3px
    }
}

.global_header .gh_links-01 li.ghl_menu button .icon::before {
    top: -6px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon::before {
        top: -10px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon::before,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon::before {
    top: 0;
    transform: rotate(45deg)
}

.global_header .gh_links-01 li.ghl_menu button .icon::after {
    top: 6px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button .icon::after {
        top: 10px
    }
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button .icon::after,
.global_header .gh_links-01 li.ghl_menu body._open-menu button .icon::after {
    top: 0;
    transform: rotate(-45deg)
}

.global_header .gh_links-01 li.ghl_menu button i {
    margin-top: 23px;
    width: 100%;
    font-size: 12px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_menu button i {
        font-size: 14px
    }
}

input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select,
textarea,
.file label {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    border-radius: 0;
    border: 1px solid #F3F6F9;
    padding: 0.5em 1em;
    width: 100%;
    height: 50px;
    background-color: #F3F6F9;
    font-size: 16px;
    transition: border-color 0.3s
}

input:hover:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:hover,
textarea:hover,
.file label:hover {
    border-color: #1a1a1a !important
}

input:focus:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:focus,
textarea:focus,
.file label:focus {
    border-color: #1a1a1a !important;
    background-color: #fff
}

input:-webkit-autofill:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select:-webkit-autofill,
textarea:-webkit-autofill,
.file label:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #fff inset
}

input[readonly=readonly]:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select[readonly=readonly],
textarea[readonly=readonly],
.file label[readonly=readonly],
input[readonly]:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
select[readonly],
textarea[readonly],
.file label[readonly],
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]),
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) select,
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) textarea,
form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) .file label,
.file form.custom-wpcf7c-confirmed:not([novalidate=novalidate]) label {
    border-color: transparent !important;
    background-color: transparent !important;
    color: #000
}

[class*=module_title] {
    font-weight: 500
}

.module_movie,
.module_map {
    position: relative;
    overflow: hidden;
    padding: 0 0 56.25%;
    width: 100%;
    height: 0
}

.module_movie iframe,
.module_map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important
}

ul.module_list-01,
ul.module_list-notes-01,
ol.module_list-01 {
    line-height: 1.875
}

ul.module_list-01 li,
ul.module_list-notes-01 li,
ol.module_list-01 li {
    position: relative;
    padding-left: 1.25em
}

ul.module_list-01 li::before,
ul.module_list-notes-01 li::before,
ol.module_list-01 li::before {
    content: "";
    position: absolute;
    left: 0
}

ul.module_list-01 li+li,
ul.module_list-notes-01 li+li,
ol.module_list-01 li+li {
    margin-top: 0.5em
}

.module_table-wrap {
    max-width: 100%;
    width: 100%
}

.module_table-01 {
    display: block;
    width: auto !important;
    height: auto !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    line-height: 1.4
}

@media (min-width:768px) {
    .module_table-01 {
        display: table;
        width: 100% !important;
        overflow-x: visible
    }
}

.module_table-01 tbody {
    display: table;
    width: 100%
}

@media (min-width:768px) {
    .module_table-01 tbody {
        display: table-row-group
    }
}

.module_table-01 tr th,
.module_table-01 tr td {
    border: 1px solid #001921 !important;
    padding: 1em;
    min-width: 15em;
    vertical-align: middle
}

@media (min-width:768px) {

    .module_table-01 tr th,
    .module_table-01 tr td {
        min-width: 5em
    }
}

.module_table-01 tr th {
    background-color: #1a1a1a;
    color: #FFC300;
    font-weight: bold;
    text-align: center
}

.module_column-col2,
.module_column-col3 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media (min-width:1024px) {

    .module_column-col2,
    .module_column-col3 {
        flex-wrap: nowrap
    }
}

@media (min-width:1024px) {

    .module_column-col2,
    .module_column-col3 {
        justify-content: space-between
    }
}

.module_column-col2 img,
.module_column-col3 img {
    width: 100%
}

@media (min-width:1024px) {

    .module_column-col2 img,
    .module_column-col3 img {
        width: auto
    }
}

.module_column-col2+.module_column-col2,
.module_column-col3+.module_column-col2,
.module_column-col2+.module_column-col3,
.module_column-col3+.module_column-col3 {
    margin-top: 15px
}

@media (min-width:1024px) {

    .module_column-col2+.module_column-col2,
    .module_column-col3+.module_column-col2,
    .module_column-col2+.module_column-col3,
    .module_column-col3+.module_column-col3 {
        margin-top: 30px
    }
}

@media (min-width:768px) {
    .global_inner {
        max-width: calc(1160px + 60px)
    }
}

.global_inner._column {
    display: flex;
    justify-content: space-between
}

@media (min-width:768px) {
    .local_inner {
        max-width: calc(800px + 60px)
    }
}

section {
    overflow-x: hidden;
    padding: 60px 0;
    transition: padding 0.3s ease
}

@media (min-width:768px) {
    section {
        padding: 100px 0
    }
}

p:not([class]),
p[class^=_] {
    line-height: 1.875
}

p:not([class])+p:not([class]),
p:not([class])+p[class^=_],
p[class^=_]+p:not([class]),
p[class^=_]+p[class^=_] {
    margin-top: 1.5em
}

p:not([class])+[class*=module_]:not([class*=module_title]):not([class*=module_button]),
p[class^=_]+[class*=module_]:not([class*=module_title]):not([class*=module_button]) {
    margin-top: 40px
}

p:not([class])+[class*=module_list],
p[class^=_]+[class*=module_list] {
    margin-top: 20px
}

[class*=top_]+[class*=top_],
[class*=top_]+p:not([class]),
[class*=top_]+[class*=module_]:not([class*=module_title]):not([class*=module_button-]),
[class*=module_]:not([class*=module_title]):not([class*=module_button-])+p:not([class]),
[class*=top_]+[class^=_]:not(section):not(img):not(li),
[class^=_]:not(section):not(img):not(li)+p:not([class]),
[class*=module_]:not([class*=module_title]):not([class*=module_button-])+[class*=top_],
[class*=module_]:not([class*=module_title]):not([class*=module_button-])+[class*=module_]:not([class*=module_title]):not([class*=module_button-]),
[class*=module_]:not([class*=module_title]):not([class*=module_button-])+[class^=_]:not(section):not(img):not(li),
[class^=_]:not(section):not(img):not(li)+[class*=top_],
[class^=_]:not(section):not(img):not(li)+[class*=module_]:not([class*=module_title]):not([class*=module_button-]),
[class^=_]:not(section):not(img):not(li)+[class^=_]:not(section):not(img):not(li) {
    margin-top: 40px
}

[class*=top_]~[class*=top_title-],
[class*=top_]~.module_imageBox-01:not(:nth-child(2)),
[class*=module_]:not([class*=module_title]):not([class*=module_button-])~[class*=top_title-],
[class*=module_]:not([class*=module_title]):not([class*=module_button-])~.module_imageBox-01:not(:nth-child(2)),
[class^=_]:not(section):not(img):not(li)~[class*=top_title-],
[class^=_]:not(section):not(img):not(li)~.module_imageBox-01:not(:nth-child(2)) {
    margin-top: 60px !important
}

@media (min-width:768px) {

    [class*=top_]~[class*=top_title-],
    [class*=top_]~.module_imageBox-01:not(:nth-child(2)),
    [class*=module_]:not([class*=module_title]):not([class*=module_button-])~[class*=top_title-],
    [class*=module_]:not([class*=module_title]):not([class*=module_button-])~.module_imageBox-01:not(:nth-child(2)),
    [class^=_]:not(section):not(img):not(li)~[class*=top_title-],
    [class^=_]:not(section):not(img):not(li)~.module_imageBox-01:not(:nth-child(2)) {
        margin-top: 100px !important
    }
}

[class*=module_]:not([class*=module_title])+.module_title-02,
[class*=module_]:not([class*=module_title])+.module_title-03,
p:not([class])+.module_title-02,
p:not([class])+.module_title-03,
p[class^=_]+.module_title-02,
p[class^=_]+.module_title-03 {
    margin-top: 50px
}

[class*=module_]:not([class*=module_title])~.module_title-01,
p:not([class])~.module_title-01,
p[class^=_]~.module_title-01 {
    margin-top: 80px
}

[class*=module_title]+.module_title-01 {
    margin-top: 80px
}

[class*=module_title]+.module_title-02 {
    margin-top: 40px
}

[class*=module_title]+.module_title-03 {
    margin-top: 30px
}

[class*=module_space-] {
    border: none;
    margin-bottom: 0
}

.module_space-10 {
    padding-top: 5px !important
}

@media (min-width:768px) {
    .module_space-10 {
        padding-top: 10px !important
    }
}

.module_space-20 {
    padding-top: 10px !important
}

@media (min-width:768px) {
    .module_space-20 {
        padding-top: 20px !important
    }
}

.module_space-30 {
    padding-top: 15px !important
}

@media (min-width:768px) {
    .module_space-30 {
        padding-top: 30px !important
    }
}

.module_space-40 {
    padding-top: 20px !important
}

@media (min-width:768px) {
    .module_space-40 {
        padding-top: 40px !important
    }
}

.module_space-50 {
    padding-top: 25px !important
}

@media (min-width:768px) {
    .module_space-50 {
        padding-top: 50px !important
    }
}

.module_space-60 {
    padding-top: 30px !important
}

@media (min-width:768px) {
    .module_space-60 {
        padding-top: 60px !important
    }
}

._bg_color-gray-01 {
    background-color: #f8f8f8
}

._bg_color-blue-01 {
    background-color: #e7eff7
}

._bg_illust-world-01 {
    background: url("/wp/wp-content/themes/twla/images/common/bg_map_01.svg") no-repeat center top/110%
}

@media (min-width:768px) {
    ._bg_illust-world-01 {
        padding-bottom: 150px;
        background-size: contain
    }
}

._bg_picture-build-01 {
    padding: 0 0 160px;
    background: url("/wp/wp-content/themes/twla/images/home/bg_01.jpg") no-repeat center bottom/200%
}

@media (min-width:768px) {
    ._bg_picture-build-01 {
        padding-bottom: 25%;
        background-size: cover
    }
}

._bg_picture-build-01 p {
    line-height: 2.5;
    text-align: center
}

.module_line-01 {
    margin: 80px 0 !important;
    border-color: rgba(26, 75, 143, 0.3)
}

.module_date-01 {
    margin-top: 30px !important;
    font-weight: bold
}

.module_date-01 span._underLine {
    padding: 0 0.5em
}

span.caption {
    display: block;
    margin-top: 0.5em;
    font-size: 14px;
    color: #001b23;
    line-height: 1.43
}

span._underLine {
    background: linear-gradient(to bottom, transparent 60%, #FFED56 0%)
}

.global_contents strong {
    font-weight: bold
}

.global_contents em {
    font-style: italic
}

img.alignleft,
img.alignright {
    display: block;
    margin: 0 auto 10px;
    max-width: calc(50% - 12.5px)
}

@media (min-width:768px) {

    img.alignleft,
    img.alignright {
        max-width: calc(50% - 25px)
    }
}

img.alignleft {
    float: left;
    margin-right: 25px
}

@media (min-width:768px) {
    img.alignleft {
        margin-right: 30px
    }
}

img.alignright {
    float: right;
    margin-left: 25px
}

@media (min-width:768px) {
    img.alignright {
        margin-left: 30px
    }
}

img.aligncenter {
    display: block;
    margin: 0 auto;
    width: auto;
    height: auto
}

img.size-full {
    width: 100%
}

[class^=icon-]::after {
    display: inline-block;
    margin-right: 5px;
    margin-left: 5px;
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1
}

[class*=module_button-] [class^=icon-]::after {
    margin-left: 10px
}

.icon-pdf::after {
    content: ""
}

.icon-blank::after {
    content: ""
}

.icon-file::after {
    content: ""
}

.icon-facebook::before {
    content: "";
    margin-right: 5px;
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    line-height: 1;
    font-family: "Font Awesome 5 Brands";
    font-size: 18px
}

.module_link-more01 {
    display: table;
    position: relative;
    margin-left: auto;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    font-size: 16px;
    color: #1a1a1a;
    text-decoration: none;
    line-height: 1;
    transition: 0.3s
}

html[lang=en] .module_link-more01 {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_link-more01 {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_link-more01 {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_link-more01 {
    font-family: "Noto Serif KR", sans-serif
}

.module_link-more01::before {
    content: "";
    display: block;
    position: absolute;
    right: calc(100% + 1em);
    top: 50%;
    width: 40px;
    height: 1px;
    background-color: #1a1a1a;
    transition: 0.3s
}

@media (min-width:768px) {

    .module_link-more01:hover,
    .module_link-more01._hover {
        color: #1a1a1ace
    }
}

@media (min-width:768px) {

    .module_link-more01:hover::before,
    .module_link-more01._hover::before {
        width: 0;
        background-color: #1a1a1ace
    }
}

[class*=module_button-] {
    margin-bottom: 1.5em
}

[class*=module_button-]+[class*=module_button-] {
    margin-top: 40px
}

@media (min-width:768px) {
    [class*=module_button-]+[class*=module_button-] {
        margin-top: 0
    }
}

[class*=module_button-]:only-child {
    margin-right: 0;
    margin-left: 0
}

._align-center [class*=module_button-] {
    margin-bottom: 0
}

._align-center [class*=module_button-]:first-child {
    margin-left: 0
}

._align-center [class*=module_button-]:last-child {
    margin-right: 0
}

.module_button-01 {
    background-color: #FFC300
}

.module_button-01::before {
    background: linear-gradient(to left, #1a1a1a 1%, #1a1a1a 52%, #1a1a1a 52%, #FFC300 52%, #FFC300 100%)
}

.module_button-01:not([disabled=disabled]):hover {
    border-color: #FFC300;
    color: #FFC300 !important
}

.module_button-01:not([disabled=disabled]):hover::before {
    background: #1a1a1a
}

.module_button-02 {
    background-color: #1a1a1a
}

.module_button-02::before {
    background: linear-gradient(to left, #FFC300 1%, #FFC300 52%, #FFC300 52%, #1a1a1a 52%, #1a1a1a 100%)
}

.module_button-02:not([disabled=disabled]):hover {
    border-color: #1a1a1a;
    color: #1a1a1a !important
}

.module_button-02:not([disabled=disabled]):hover::before {
    background: #3588BA
}

.module_button-03 {
    margin: 0 20px;
    padding: 1em;
    max-width: 140px;
    height: 40px;
    background-color: #FFC300;
    color: #1a1a1a !important
}

.module_button-03::before {
    left: -20px;
    width: 40px;
    background: linear-gradient(to left, #1a1a1a 1%, #1a1a1a 52%, white 52%, white 52%, white 100%)
}

.module_button-03:not([disabled=disabled]):hover {
    border-color: #fff;
    background: #1a1a1a;
    color: #fff !important
}

.module_button-03:not([disabled=disabled]):hover::before {
    background: #fff
}

.module_button-04 {
    margin: 0 20px;
    padding: 1em;
    height: 40px;
    background-color: #FFED56;
    color: #1a1a1a !important
}

.module_button-04::before {
    left: -20px;
    width: 40px;
    background: linear-gradient(to left, #1a1a1a 1%, #1a1a1a 52%, #FFED56 52%, #FFED56 52%, #FFED56 100%)
}

.module_button-04:not([disabled=disabled]):hover {
    border-color: #FFED56;
    background: #1a1a1a;
    color: #FFED56 !important
}

.module_button-04:not([disabled=disabled]):hover::before {
    background: #FFED56
}

.module_button-05 {
    background-color: #FFED56;
    color: #1a1a1a !important
}

.module_button-05::before {
    background: #1a1a1a
}

.module_button-05:not([disabled=disabled]):hover {
    border-color: #1a1a1a
}

.module_search {
    display: block;
    position: relative;
    margin: 0 auto 30px;
    max-width: 350px
}

.module_search button[type=submit] {
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 50px;
    background-color: transparent;
    text-align: center;
    line-height: 50px
}

@media (min-width:768px) {
    .module_search button[type=submit] {
        width: 50px;
        height: 50px;
        line-height: 50px
    }
}

.module_search button[type=submit]::before {
    content: "";
    display: block;
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    color: #001b23;
    transition: 0.3s
}

.module_search button[type=submit] span {
    display: none
}

.module_search button[type=submit]:hover::before,
.module_search button[type=submit]:focus::before {
    color: #1a1a1a;
    transform: scale(1.5)
}

.module_password {
    text-align: center
}

.module_password .pwbox {
    position: relative;
    margin: 50px auto 30px;
    max-width: 350px
}

.module_password label {
    display: block
}

.module_password label[for*=pwbox] input {
    display: block;
    padding-right: calc(50px + 1em);
    font-family: monospace !important;
    font-size: 18px !important
}

.module_title-01 {
    margin-bottom: 30px;
    border-bottom: 1px solid #1a1a1a;
    padding-bottom: 0.5em;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    font-size: 26px;
    color: #1a1a1a
}

html[lang=en] .module_title-01 {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_title-01 {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_title-01 {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_title-01 {
    font-family: "Noto Serif KR", sans-serif
}

@media (min-width:768px) {
    .module_title-01 {
        font-size: 28px
    }
}

.module_title-02 {
    margin-bottom: 20px;
    font-size: 22px;
    font-weight: bold;
    color: #1a1a1a
}

.module_title-03 {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: bold
}

.top_title-01 {
    margin-bottom: 1em;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    font-size: 32px;
    color: #1a1a1a;
    line-height: 1.3;
    letter-spacing: 0.05em;
    text-align: center
}

html[lang=en] .top_title-01 {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .top_title-01 {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .top_title-01 {
    font-family: "Noto Serif", serif
}

html[lang=ko] .top_title-01 {
    font-family: "Noto Serif KR", sans-serif
}

@media (min-width:768px) {
    .top_title-01 {
        font-size: 36px
    }
}

.top_title-01._font-sizeS {
    font-size: 26px
}

@media (min-width:768px) {
    .top_title-01._font-sizeS {
        font-size: 36px
    }
}

[class*=module_newsTitle-] {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 72px;
    font-size: 16px;
    font-weight: bold
}

.module_newsTitle-01 {
    background-color: #FFED56;
    color: #1a1a1a
}

.module_newsTitle-02 {
    margin-top: 80px !important;
    background-color: #1a1a1a;
    color: #fff
}

.module_newsTitle-02+.ln_links li,
.module_newsTitle-02+.ln_links ul {
    display: block !important
}

.module_map {
    padding-bottom: 0;
    height: 50vh
}

@media (min-width:768px) {
    .module_map {
        padding-bottom: 56.25%;
        height: 0
    }
}

ul.module_list-01 li::before {
    top: 0.6em;
    width: 8px;
    height: 8px;
    background-color: #1a1a1a
}

ul.module_list-notes-01 {
    font-size: 14px
}

ul.module_list-notes-01 li::before {
    content: "※"
}

ul.module_newsList-01 {
    line-height: 1.375
}

.local_navigation ul.module_newsList-01 {
    margin-top: 0 !important;
    font-size: 14px
}

ul.module_newsList-01>li {
    border-bottom: 1px solid #1a1a1a
}

ul.module_newsList-01>li a {
    display: flex;
    padding: 35px 0;
    color: #001921;
    text-decoration: none
}

@media (min-width:768px) {
    ul.module_newsList-01>li a {
        padding: 30px 0
    }
}

.local_navigation ul.module_newsList-01>li a {
    display: flex;
    align-items: center;
    padding: 20px;
    color: #00234B;
    text-decoration: underline
}

.local_navigation ul.module_newsList-01>li a:hover {
    text-decoration: none
}

ul.module_newsList-01>li a div.head {
    margin-right: 20px;
    width: 157px
}

@media (min-width:768px) {
    ul.module_newsList-01>li a div.head {
        width: 160px
    }
}

.local_navigation ul.module_newsList-01>li a div.head {
    width: 80px
}

ul.module_newsList-01>li a div.head .image {
    position: relative;
    overflow: hidden;
    padding: 0 0 calc(106 / 160 * 100%);
    width: 100%;
    height: 0
}

ul.module_newsList-01>li a div.head .image img {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    max-height: none;
    width: auto;
    height: 100%;
    transform: translate(-50%, -50%)
}

ul.module_newsList-01>li a div.body {
    width: calc(100% - 100px)
}

ul.module_newsList-01>li a div.body .date {
    margin-bottom: 0.5em
}

.local_navigation ul.module_newsList-01>li a div.body .date {
    margin-bottom: 0
}

ul.module_pager-01 {
    display: flex;
    justify-content: center;
    overflow-x: auto;
    margin-top: 50px !important
}

@media (min-width:768px) {
    ul.module_pager-01 {
        margin-top: 80px !important
    }
}

ul.module_pager-01 li {
    position: absolute;
    top: -9999px;
    left: -9999px;
    margin: 0 3px;
    width: 40px;
    height: 40px
}

ul.module_pager-01 li.prev,
ul.module_pager-01 li.next,
ul.module_pager-01 li.current_prev,
ul.module_pager-01 li.current_next {
    position: initial;
    top: initial;
    left: initial
}

@media (min-width:375) {

    ul.module_pager-01 li.prev,
    ul.module_pager-01 li.next,
    ul.module_pager-01 li.current_prev,
    ul.module_pager-01 li.current_next {
        position: absolute;
        top: -9999px;
        left: -9999px
    }
}

@media (min-width:375) {

    ul.module_pager-01 li.prev,
    ul.module_pager-01 li.next,
    ul.module_pager-01 li.current_prev,
    ul.module_pager-01 li.current_next {
        position: initial;
        top: initial;
        left: initial
    }
}

ul.module_pager-01 li.current_prev2,
ul.module_pager-01 li.current_next2 {
    position: absolute;
    top: -9999px;
    left: -9999px
}

@media (min-width:768px) {

    ul.module_pager-01 li.current_prev2,
    ul.module_pager-01 li.current_next2 {
        position: initial;
        top: initial;
        left: initial
    }
}

ul.module_pager-01 li.current {
    position: initial
}

ul.module_pager-01 li.prev.current_prev,
ul.module_pager-01 li.next.current_next {
    display: none
}

ul.module_pager-01 li a,
ul.module_pager-01 li span {
    display: block;
    overflow: hidden;
    width: inherit;
    height: inherit;
    background-color: #f8f8f8;
    font-size: 16px;
    font-weight: bold;
    color: #1a1a1a;
    line-height: 40px;
    text-align: center;
    text-decoration: none;
    transition: 0.3s
}

ul.module_pager-01 li a:hover,
ul.module_pager-01 li a:focus,
ul.module_pager-01 li a.current,
ul.module_pager-01 li span:hover,
ul.module_pager-01 li span:focus,
ul.module_pager-01 li span.current {
    background-color: #FFED56
}

ul.module_pager-01 li a.current,
ul.module_pager-01 li span.current {
    cursor: default;
    pointer-events: none
}

ul.module_pager-01 li.prev,
ul.module_pager-01 li.next {
    position: initial;
    top: initial;
    left: initial
}

ul.module_pager-01 li.prev a,
ul.module_pager-01 li.next a {
    background-color: transparent;
    font-size: 24px
}

@media (min-width:768px) {

    ul.module_pager-01 li.prev a,
    ul.module_pager-01 li.next a {
        transition: opacity 0.3s
    }
}

@media (min-width:768px) {

    ul.module_pager-01 li.prev a:hover,
    ul.module_pager-01 li.prev a:focus,
    ul.module_pager-01 li.next a:hover,
    ul.module_pager-01 li.next a:focus {
        opacity: 0.7
    }
}

ul.module_pager-02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media (min-width:768px) {
    ul.module_pager-02 {
        flex-wrap: nowrap
    }
}

ul.module_pager-02 li {
    width: calc(50% - 10px)
}

@media (min-width:768px) {
    ul.module_pager-02 li {
        width: 130px
    }
}

ul.module_pager-02 li a {
    max-width: none
}

ul.module_pager-02 li.back {
    order: 3;
    margin: 0 auto;
    width: 220px
}

@media (min-width:768px) {
    ul.module_pager-02 li.back {
        order: 2;
        width: 145px
    }
}

ul.module_pager-02 li.prev {
    order: 1
}

ul.module_pager-02 li.next {
    order: 2
}

@media (min-width:768px) {
    ul.module_pager-02 li.next {
        order: 3
    }
}

ul.module_pageLink-01 {
    overflow: hidden;
    margin: 0 -5px -20px;
    font-size: 14px
}

@media (min-width:768px) {
    ul.module_pageLink-01 {
        display: flex;
        flex-wrap: wrap
    }
}

ul.module_pageLink-01>li {
    float: left;
    margin: 0 5px 20px
}

ul.module_pageLink-01>li a {
    display: block;
    border: 1px solid #1a1a1a;
    padding: 0.25em 1em;
    background-color: #1a1a1a;
    color: #fff;
    text-decoration: none;
    transition: 0.3s
}

ul.module_pageLink-01>li a:hover {
    background-color: #fff;
    color: #1a1a1a
}

ul.module_pageLink-01>li a span {
    display: block;
    position: relative;
    padding-right: 1em
}

ul.module_pageLink-01>li a span::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: calc(50% - .4em);
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    font-size: 16px
}

ul.module_searchList-01 {
    border-top: 1px solid #001921
}

ul.module_searchList-01>li {
    position: relative;
    border-bottom: 1px solid #001921
}

ul.module_searchList-01>li a {
    display: block;
    padding: 1em;
    color: #001921;
    text-decoration: none
}

ul.module_searchList-01>li a::after {
    content: "";
    display: block;
    position: absolute;
    right: 1em;
    top: calc(50% - .5em);
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    font-size: 20px;
    transition: 0.3s
}

ul.module_searchList-01>li a:hover {
    color: #1a1a1a;
    text-decoration: none
}

ul.module_searchList-01>li a:hover::after {
    transform: translateX(0.5em)
}

ol.module_list-01 {
    counter-reset: number
}

ol.module_list-01 li::before {
    counter-increment: number;
    content: counter(number, decimal) ".";
    color: #3588BA;
    font-weight: bold
}

ol.module_flowList-01 {
    display: flex;
    overflow: hidden;
    height: 80px
}

ol.module_flowList-01 li {
    position: relative;
    height: inherit;
    width: calc(100% / 3 - 30px / 3)
}

@media (min-width:1024px) {
    ol.module_flowList-01 li {
        width: calc(100% / 3 - 100px / 3)
    }
}

ol.module_flowList-01 li::before {
    content: "";
    display: block;
    position: absolute;
    right: -12px;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 40px 0 40px 12px;
    border-color: transparent transparent transparent #1a1a1a
}

@media (min-width:1024px) {
    ol.module_flowList-01 li::before {
        right: -43px;
        border-width: 40px 0 40px 43px
    }
}

ol.module_flowList-01 li::after {
    content: "";
    display: block;
    position: absolute;
    right: -11px;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 40px 0 40px 12px;
    border-color: transparent transparent transparent #fff
}

@media (min-width:1024px) {
    ol.module_flowList-01 li::after {
        right: -42px;
        border-width: 40px 0 40px 43px
    }
}

ol.module_flowList-01 li+li {
    margin-left: 15px
}

@media (min-width:768px) {
    ol.module_flowList-01 li+li {
        margin-left: 50px
    }
}

ol.module_flowList-01 li:last-child::before,
ol.module_flowList-01 li:last-child::after {
    display: none
}

ol.module_flowList-01 li div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border: 1px solid #1a1a1a;
    width: 100%;
    height: inherit;
    font-weight: 500;
    color: #1a1a1a
}

@media (min-width:768px) {
    ol.module_flowList-01 li div {
        flex-direction: row
    }
}

ol.module_flowList-01 li div span {
    display: block
}

ol.module_flowList-01 li div span.title-sub {
    margin-bottom: 0.5em;
    font-size: 1.4rem
}

@media (min-width:768px) {
    ol.module_flowList-01 li div span.title-sub {
        margin: 0 1em 0 0;
        font-size: 2rem
    }
}

ol.module_flowList-01 li div span.title-main {
    font-size: 1.6rem
}

@media (min-width:768px) {
    ol.module_flowList-01 li div span.title-main {
        font-size: 2rem
    }
}

ol.module_flowList-01 li._current::after {
    border-color: transparent transparent transparent #1a1a1a
}

ol.module_flowList-01 li._current div {
    background-color: #1a1a1a;
    color: #fff
}

ol.module_timeLine-01>li {
    position: relative;
    padding-left: 40px
}

ol.module_timeLine-01>li::before,
ol.module_timeLine-01>li::after {
    content: "";
    box-sizing: border-box;
    display: block;
    position: absolute
}

ol.module_timeLine-01>li::before {
    left: 7px;
    top: 24px;
    width: 2px;
    height: 100%;
    background-color: #001921
}

ol.module_timeLine-01>li::after {
    left: 0;
    top: 0;
    border-radius: 100%;
    border: 2px solid #1a1a1a;
    background-color: #1a1a1a;
    width: 17px;
    height: 17px
}

ol.module_timeLine-01>li.type-02::after {
    background-color: #fff
}

ol.module_timeLine-01>li:last-child::before {
    display: none
}

ol.module_timeLine-01>li time {
    position: absolute;
    left: -7px;
    top: -4px;
    z-index: 2;
    border-radius: 100%;
    border: 2px solid #1a1a1a;
    width: 30px;
    height: 30px;
    background-color: #fff
}

ol.module_timeLine-01>li time::before,
ol.module_timeLine-01>li time::after {
    content: "";
    box-sizing: border-box;
    display: block;
    position: absolute;
    left: 52%;
    top: 54%;
    background-color: #1a1a1a;
    transform: translate(-100%, -100%)
}

ol.module_timeLine-01>li time::before {
    width: 2px;
    height: 11px
}

ol.module_timeLine-01>li time::after {
    width: 9px;
    height: 2px
}

ol.module_timeLine-01>li time span {
    display: none
}

ol.module_timeLine-01>li div.head .title-sub {
    margin-bottom: 1em;
    font-size: 14px
}

ol.module_timeLine-01>li div.head .title-main {
    font-size: 18px;
    font-weight: 500
}

@media (min-width:768px) {
    ol.module_timeLine-01>li div.head .title-main {
        font-size: 20px
    }
}

ol.module_timeLine-01>li div.body {
    margin: 0.5em 0 30px;
    border-bottom: 1px solid #f8f8f8;
    padding-bottom: 30px
}

.module_box-blue01 {
    padding: 35px 20px 40px;
    background-color: #e7eff7
}

@media (min-width:768px) {
    .module_box-blue01 {
        padding: 40px 50px
    }
}

[class*=module_column] .module_box-blue01 {
    height: 100%
}

.module_box-yellow01 {
    padding: 30px 20px;
    background-color: #fffded
}

@media (min-width:768px) {
    .module_box-yellow01 {
        padding: 30px
    }
}

[class*=module_column] .module_box-yellow01 {
    height: 100%
}

.module_blockquote-01 {
    position: relative;
    padding: 0 3em;
    line-height: 1.875
}

.module_blockquote-01::before,
.module_blockquote-01::after {
    content: "";
    display: block;
    position: absolute;
    font-family: "Font Awesome 5 Pro";
    font-weight: 700;
    line-height: 1;
    font-size: 20px;
    color: #001921
}

.module_blockquote-01::before {
    content: "";
    left: 0;
    top: 0
}

.module_blockquote-01::after {
    content: "";
    right: 0;
    bottom: 0
}

.module_imageBox-01 {
    position: relative;
    padding-top: calc(185 / 370 * 100% - 40px)
}

@media (min-width:1024px) {
    .module_imageBox-01 {
        padding-top: 84px
    }
}

.module_imageBox-01 div.head {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
    box-shadow: -5px 5px 15px -5px rgba(0, 0, 0, 0.5);
    width: calc(100% + 20px)
}

@media (min-width:768px) {
    .module_imageBox-01 div.head {
        right: auto;
        left: -30px;
        width: 720px
    }
}

@media (min-width:1024px) {
    .module_imageBox-01 div.head {
        right: 580px;
        left: auto;
        width: 720px
    }
}

.module_imageBox-01 div.body {
    position: relative;
    margin-right: -20px;
    box-shadow: 5px 5px 15px -5px rgba(0, 0, 0, 0);
    padding: 80px 20px 40px;
    position: relative;
    color: #fff;
    transition: 0.3s;
    transition-delay: 1.8s
}

.module_imageBox-01 div.body::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #1a1a1a;
    transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    transition-property: transform;
    transform: scaleX(0);
    transition-duration: 1s;
    transition-delay: 0.4s;
    transform-origin: left
}

.module_imageBox-01 div.body._scroll_anime::before {
    transform: scaleX(1)
}

@media (min-width:768px) {
    .module_imageBox-01 div.body {
        margin-right: -40px
    }
}

@media (min-width:1024px) {
    .module_imageBox-01 div.body {
        margin: 0 0 0 auto;
        padding: 40px 40px 40px 190px;
        max-width: 710px
    }
}

.module_imageBox-01 div.body>* {
    opacity: 0;
    transition: opacity 0.3s;
    transition-delay: 1.8s
}

.module_imageBox-01 div.body p:not([class]) {
    min-height: 5em
}

.module_imageBox-01 div.body [class^=module_button-]:first-child {
    margin-right: 0
}

@media (min-width:768px) {
    .module_imageBox-01 div.body [class^=module_button-]:first-child {
        margin-right: 20px
    }
}

.module_imageBox-01 div.body [class^=module_button-]:nth-child(n+2) {
    margin-left: 0
}

@media (min-width:768px) {
    .module_imageBox-01 div.body [class^=module_button-]:nth-child(n+2) {
        margin-left: 20px
    }
}

.module_imageBox-01 .top_title-01 {
    display: none;
    margin-left: auto;
    padding-left: 190px;
    max-width: 710px;
    text-align: left;
    opacity: 0;
    transition: opacity 0.3s;
    transition-delay: 1.8s
}

@media (min-width:1024px) {
    .module_imageBox-01 .top_title-01 {
        display: block
    }
}

.module_imageBox-01._order div.head {
    right: auto;
    left: 0;
    box-shadow: 5px 5px 15px -5px rgba(0, 0, 0, 0.5)
}

@media (min-width:768px) {
    .module_imageBox-01._order div.head {
        left: auto;
        right: -30px
    }
}

@media (min-width:1024px) {
    .module_imageBox-01._order div.head {
        left: 580px;
        right: auto;
        margin: 0 auto 0 0
    }
}

.module_imageBox-01._order div.body {
    margin-right: auto;
    margin-left: -20px;
    box-shadow: -5px 5px 15px -5px rgba(0, 0, 0, 0);
    position: relative;
    color: #fff
}

.module_imageBox-01._order div.body::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #1a1a1a;
    transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    transition-property: transform;
    transform: scaleX(0);
    transition-duration: 1s;
    transition-delay: 0.4s;
    transform-origin: right
}

.module_imageBox-01._order div.body._scroll_anime::before {
    transform: scaleX(1)
}

@media (min-width:768px) {
    .module_imageBox-01._order div.body {
        margin-right: auto;
        margin-left: -40px
    }
}

@media (min-width:1024px) {
    .module_imageBox-01._order div.body {
        margin-right: auto;
        margin-left: 0;
        padding-right: 190px;
        padding-left: 40px
    }
}

@media (min-width:1024px) {
    .module_imageBox-01._order .top_title-01 {
        margin-right: auto;
        margin-left: 0;
        padding-right: 190px;
        padding-left: 40px
    }
}

.module_imageBox-01._scroll_anime .top_title-01 {
    opacity: 1
}

.module_imageBox-01._scroll_anime div.body {
    box-shadow: 5px 5px 15px -5px rgba(0, 0, 0, 0.5)
}

.module_imageBox-01._scroll_anime div.body::before {
    transform: scaleX(1)
}

.module_imageBox-01._scroll_anime div.body>* {
    opacity: 1
}

.module_imageBox-01._scroll_anime._order div.body {
    box-shadow: -5px 5px 15px -5px rgba(0, 0, 0, 0.5)
}

.module_card-01 {
    margin-bottom: 40px;
    padding: 0 20px
}

.module_card-01 li {
    position: relative;
    background-color: #fff
}

.module_card-01 li+li {
    margin-top: 20px
}

@media (min-width:768px) {
    .module_card-01 li+li {
        margin-top: 0
    }
}

.module_card-01 li>a {
    display: block;
    position: relative;
    color: #001921;
    text-decoration: none
}

.module_card-01 li div.head {
    position: relative;
    overflow: hidden;
    padding: 0 0 calc(220 / 300 * 100%);
    width: 100%;
    height: 0
}

.module_card-01 li div.head .image img {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    max-height: none;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: 100%;
    transform: translate(-50%, -50%);
    transition: transform 0.3s ease
}

.module_card-01 li div.body {
    padding: 20px
}

.module_card-01 li div.body .title {
    overflow: hidden;
    margin-bottom: 0.5em;
    font-size: 16px;
    font-weight: bold;
    color: #1a1a1a;
    ;
    letter-spacing: 0.05em;
    white-space: nowrap;
    text-overflow: ellipsis
}

.module_card-01 li div.body .date {
    margin-top: 1.5em;
    font-size: 1.3rem
}

.module_card-01 li div.body .date time {
    color: #001b23
}

.module_card-01 li div.body .date .label {
    margin-left: 1em
}

.module_card-01 li div.body .module_link-more01 {
    position: absolute;
    right: 20px;
    bottom: 20px
}

.module_card-01 li:nth-child(n+2)>a {
    display: flex
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2)>a {
        display: block
    }
}

.module_card-01 li:nth-child(n+2) div {
    width: 50%
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div {
        width: 100%
    }
}

.module_card-01 li:nth-child(n+2) div.head {
    padding-bottom: calc(112 / 168 * 50%)
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div.head {
        padding-bottom: calc(220 / 300 * 100%)
    }
}

.module_card-01 li:nth-child(n+2) div.body {
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div.body {
        display: block;
        padding: 20px
    }
}

.module_card-01 li:nth-child(n+2) div.body .title {
    font-size: 14px
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div.body .title {
        font-size: 16px
    }
}

.module_card-01 li:nth-child(n+2) div.body .text {
    display: none
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div.body .text {
        display: block
    }
}

.module_card-01 li:nth-child(n+2) div.body .date {
    display: none
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+2) div.body .date {
        display: block
    }
}

.module_card-01 li:nth-child(n+4) {
    display: none
}

@media (min-width:768px) {
    .module_card-01 li:nth-child(n+4) {
        display: block
    }
}

.module_card-02 {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    width: 100%
}

.module_card-02 li {
    margin-left: 20px;
    width: calc(100% / 2 - 20px / 2)
}

@media (min-width:768px) {
    .module_card-02 li {
        margin-left: 40px;
        overflow: hidden;
        width: calc(100% / 3 - .1px - 80px / 3)
    }
}

.module_card-02 li:nth-child(2n+1) {
    margin-left: 0
}

@media (min-width:768px) {
    .module_card-02 li:nth-child(2n+1) {
        margin-left: 40px
    }
}

@media (min-width:768px) {
    .module_card-02 li:nth-child(3n+1) {
        margin-left: 0
    }
}

.module_card-02 li:nth-child(n+3) {
    margin-top: 40px
}

@media (min-width:768px) {
    .module_card-02 li:nth-child(n+3) {
        margin-top: 0
    }
}

@media (min-width:768px) {
    .module_card-02 li:nth-child(n+4) {
        margin-top: 60px
    }
}

.module_card-02 li a {
    display: block;
    height: 100%;
    color: #001921;
    text-decoration: none
}

.module_card-02 li a .image {
    position: relative;
    overflow: hidden;
    padding: 0 0 56.47668394%;
    width: 100%;
    height: 0
}

.module_card-02 li a .image img {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    max-height: none;
    width: 100%;
    height: auto;
    transition: 0.3s;
    transform: translate(-50%, -50%)
}

.module_card-02 li a>div {
    border: solid #f8f8f8;
    border-width: 0 1px 1px 1px;
    padding: 40px 30px;
    background-color: #fff
}

@media (min-width:768px) {
    .module_card-02 li a>div {
        border: solid #f8f8f8;
        border-width: 1px 1px 1px 0;
        height: 100%
    }
}

.module_card-02 li a .title {
    position: relative;
    margin-top: 0.5em;
    padding-left: 2em;
    font-size: 16px;
    line-height: 1.4
}

@media (min-width:768px) {
    .module_card-02 li a .title {
        padding-left: 3.5em;
        font-size: 18px
    }
}

.module_card-02 li a .title::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0.7em;
    width: 20px;
    height: 1px;
    background-color: #3588BA
}

@media (min-width:768px) {
    .module_card-02 li a .title::before {
        width: 40px
    }
}

.module_card-02 li a:hover .image img {
    transform: translate(-50%, -50%) scale(1.1)
}

.module_slider-01 {
    position: relative;
    width: 100%;
    font-size: 14px;
    line-height: 1.2
}

.module_slider-01 .ms_slide li {
    position: relative
}

.module_slider-01 .ms_slide li .head .image img {
    display: block;
    width: 100%
}

.module_slider-01 .ms_slide li .body {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 0.5em 1em;
    width: 100%;
    background: rgba(0, 0, 0, 0.3);
    color: #fff;
    text-align: center
}

.module_slider-01 .bx-controls-direction a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: calc(50% - 20px);
    width: 40px;
    height: 40px;
    border: 1px solid #3588BA;
    background-color: #3588BA;
    text-decoration: none;
    transition: background-color 0.3s
}

.module_slider-01 .bx-controls-direction a::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    font-size: 30px;
    color: #fff
}

.module_slider-01 .bx-controls-direction a:hover {
    background-color: #fff
}

.module_slider-01 .bx-controls-direction a:hover::before {
    color: #3588BA
}

.module_slider-01 .bx-controls-direction a span {
    display: none
}

.module_slider-01 .bx-controls-direction a.bx-prev {
    left: 0
}

.module_slider-01 .bx-controls-direction a.bx-prev::before {
    content: ""
}

.module_slider-01 .bx-controls-direction a.bx-next {
    right: 0
}

.module_slider-01 .bx-controls-direction a.bx-next::before {
    content: ""
}

[class*=module_gallery] ul {
    display: flex;
    flex-wrap: wrap
}

[class*=module_gallery] ul li {
    margin-left: 10px
}

@media (min-width:768px) {
    [class*=module_gallery] ul li {
        margin-left: 20px
    }
}

[class*=module_gallery] ul li:nth-child(2n+1) {
    margin-left: 0
}

@media (min-width:768px) {
    [class*=module_gallery] ul li:nth-child(2n+1) {
        margin-left: 20px
    }
}

[class*=module_gallery] ul li:nth-child(n+3) {
    margin-top: 10px
}

@media (min-width:768px) {
    [class*=module_gallery] ul li:nth-child(n+3) {
        margin-top: 0
    }
}

[class*=module_gallery] ul li a {
    display: block;
    position: relative;
    overflow: hidden;
    text-decoration: none
}

[class*=module_gallery] ul li a::before {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 3;
    width: 30px;
    height: 30px;
    background-color: rgba(0, 0, 0, 0.6);
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    font-size: 16px;
    color: #fff;
    line-height: 30px;
    text-align: center;
    transition: 0.3s
}

[class*=module_gallery] ul li a .head {
    position: relative;
    overflow: hidden;
    padding: 0 0 calc(360 / 360 * 100%);
    width: 100%;
    height: 0
}

[class*=module_gallery] ul li a img {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    max-height: none;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: 100%;
    transform: translate(-50%, -50%);
    transition: 0.3s
}

[class*=module_gallery] ul li a:hover::before {
    right: 50%;
    bottom: 50%;
    background-color: rgba(0, 0, 0, 0);
    transform: translate(50%, 50%) scale(5);
    color: rgba(255, 255, 255, 0.7)
}

[class*=module_gallery] ul li a:hover img {
    transform: translate(-50%, -50%), scale(1.1)
}

.module_gallery-02 ul li {
    width: calc(50% - 5px)
}

@media (min-width:768px) {
    .module_gallery-02 ul li {
        width: calc(50% - 10px)
    }
}

@media (min-width:768px) {
    .module_gallery-02 ul li:nth-child(2n+1) {
        margin-left: 0
    }
}

@media (min-width:768px) {
    .module_gallery-02 ul li:nth-child(n+3) {
        margin-top: 20px
    }
}

.module_gallery-03 ul li {
    width: calc(50% - 5px)
}

@media (min-width:768px) {
    .module_gallery-03 ul li {
        width: calc(100% / 3 - 20px * 2 / 3 - .01px)
    }
}

@media (min-width:768px) {
    .module_gallery-03 ul li:nth-child(3n+1) {
        margin-left: 0
    }
}

@media (min-width:768px) {
    .module_gallery-03 ul li:nth-child(n+4) {
        margin-top: 20px
    }
}

.module_gallery-04 ul li {
    width: calc(50% - 5px)
}

@media (min-width:768px) {
    .module_gallery-04 ul li {
        width: calc(100% / 4 - 20px * 3 / 4)
    }
}

@media (min-width:768px) {
    .module_gallery-04 ul li:nth-child(4n+1) {
        margin-left: 0
    }
}

@media (min-width:768px) {
    .module_gallery-04 ul li:nth-child(n+5) {
        margin-top: 20px
    }
}

.module_gallery-05 ul li {
    width: calc(50% - 5px)
}

@media (min-width:768px) {
    .module_gallery-05 ul li {
        width: calc(100% / 5 - 20px * 4 / 5)
    }
}

@media (min-width:768px) {
    .module_gallery-05 ul li:nth-child(5n+1) {
        margin-left: 0
    }
}

@media (min-width:768px) {
    .module_gallery-05 ul li:nth-child(n+6) {
        margin-top: 20px
    }
}

.module_gallery-06 ul li {
    width: calc(50% - 5px)
}

@media (min-width:768px) {
    .module_gallery-06 ul li {
        width: calc(100% / 6 - 20px * 5 / 6)
    }
}

@media (min-width:768px) {
    .module_gallery-06 ul li:nth-child(6n+1) {
        margin-left: 0
    }
}

@media (min-width:768px) {
    .module_gallery-06 ul li:nth-child(n+7) {
        margin-top: 20px
    }
}

.module_column-col1._left::after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden
}

.module_column-col1._left .img {
    float: left;
    margin-right: 20px;
    margin-bottom: 10px;
    max-width: calc(50% - 10px)
}

@media (min-width:768px) {
    .module_column-col1._left .img {
        margin-right: 30px;
        max-width: calc(50% - 20px)
    }
}

.module_column-col1._left._one_column {
    max-width: 100%;
    margin-right: 0
}

.module_column-col1._order::after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden
}

.module_column-col1._order .img {
    float: right;
    margin-left: 20px;
    margin-bottom: 10px;
    max-width: calc(50% - 10px)
}

@media (min-width:768px) {
    .module_column-col1._order .img {
        margin-left: 30px;
        max-width: calc(50% - 20px)
    }
}

.module_column-col1._order._one_column {
    max-width: 100%;
    margin-right: 0
}

.module_column-col2>.col {
    max-width: calc(50% - 10px);
    width: 100%
}

@media (min-width:1024px) {
    .module_column-col2>.col+.col {
        margin-top: 0
    }
}

.module_column-col2._order {
    flex-direction: row-reverse
}

.module_column-col2._order>.col+.col {
    margin-top: 0;
    margin-bottom: 15px
}

@media (min-width:1024px) {
    .module_column-col2._order>.col+.col {
        margin-bottom: 0
    }
}

.module_column-col2._one_column>.col {
    max-width: none;
    width: 100%
}

@media (min-width:1024px) {
    .module_column-col2._one_column>.col {
        width: calc(50% - 20px)
    }
}

.module_column-col2._one_column>.col+.col {
    margin-top: 15px
}

@media (min-width:1024px) {
    .module_column-col2._one_column>.col+.col {
        margin-top: 0
    }
}

@media (min-width:768px) {
    .module_column-col3>.col {
        width: calc((100% / 3) - 20px)
    }
}

.module_column-col3>.col+.col {
    margin-top: 15px
}

@media (min-width:768px) {
    .module_column-col3>.col+.col {
        margin-top: 0
    }
}

@media (min-width:768px) {
    .module_pointList-01 {
        display: flex
    }
}

.module_pointList-01 li {
    position: relative;
    margin-left: 10px;
    border: 1px solid #1a1a1a;
    width: calc(100% - 10px);
    background-color: #f4ea229f;
    text-align: center
}

@media (min-width:768px) {
    .module_pointList-01 li {
        margin-left: 0;
        width: 100%
    }
}

.module_pointList-01 li+li {
    margin-top: 20px
}

@media (min-width:768px) {
    .module_pointList-01 li+li {
        margin-top: 0;
        margin-left: 40px
    }
}

.module_pointList-01 li>a {
    display: block;
    padding: 70px 20px 20px;
    height: 100%;
    text-decoration: none;
    color: #001921
}

@media (min-width:768px) {
    .module_pointList-01 li>a {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 70px 20px
    }
}

.module_pointList-01 li .label {
    position: absolute;
    left: -10px;
    top: 10px;
    padding: 0 1em 0 1.5em;
    background-color: #1a1a1a;
    height: 38px;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 400;
    font-size: 12px;
    color: #FFC300;
    line-height: 46px
}

html[lang=en] .module_pointList-01 li .label {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_pointList-01 li .label {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_pointList-01 li .label {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_pointList-01 li .label {
    font-family: "Noto Serif KR", sans-serif
}

@media (min-width:768px) {
    .module_pointList-01 li .label {
        left: 10px;
        top: -10px;
        padding: 1em 0;
        width: 64px;
        height: auto;
        text-align: center
    }
}

.module_pointList-01 li .label::before,
.module_pointList-01 li .label::after {
    content: "";
    display: block;
    position: absolute;
    left: 100%;
    width: 0;
    height: 0;
    border-style: solid
}

@media (min-width:768px) {

    .module_pointList-01 li .label::before,
    .module_pointList-01 li .label::after {
        left: auto;
        top: 100%
    }
}

.module_pointList-01 li .label::before {
    top: 0;
    border-width: 19px 6px 0 0;
    border-color: #1a1a1a transparent transparent transparent
}

@media (min-width:768px) {
    .module_pointList-01 li .label::before {
        top: 100%;
        left: 0;
        border-width: 9px 32px 0 0;
        border-color: #1a1a1a transparent transparent transparent
    }
}

.module_pointList-01 li .label::after {
    bottom: 0;
    border-width: 19px 0 0 6px;
    border-color: transparent transparent transparent #1a1a1a
}

@media (min-width:768px) {
    .module_pointList-01 li .label::after {
        bottom: auto;
        right: 0;
        border-width: 0 32px 9px 0;
        border-color: transparent #1a1a1a transparent transparent
    }
}

.module_pointList-01 li .label span {
    line-height: 1
}

@media (min-width:768px) {
    .module_pointList-01 li .label span {
        display: block
    }
}

.module_pointList-01 li .label span.number {
    margin-left: 5px;
    font-size: 24px
}

@media (min-width:768px) {
    .module_pointList-01 li .label span.number {
        margin-top: 5px;
        margin-left: auto
    }
}

.module_pointList-01 li div.body .title {
    margin-bottom: 0.5em;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    font-size: 22px;
    color: #1a1a1a;
    line-height: 1.636;
    letter-spacing: 0.05em
}

html[lang=en] .module_pointList-01 li div.body .title {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .module_pointList-01 li div.body .title {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .module_pointList-01 li div.body .title {
    font-family: "Noto Serif", serif
}

html[lang=ko] .module_pointList-01 li div.body .title {
    font-family: "Noto Serif KR", sans-serif
}

@media (min-width:768px) {
    .module_pointList-01 li div.body .title {
        font-size: 24px
    }
}

.module_pointList-01 li div.body .text {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6
}

.module_pointList-01 li div.body .notes {
    margin-top: 0.5em;
    font-size: 14px
}

.module_pointList-01 li .module_link-more01 {
    margin-top: 2em
}

@media (min-width:768px) {
    .module_pointList-01 li .module_link-more01 {
        position: absolute;
        right: 30px;
        bottom: 1em
    }
}

.module_voiceList-01 {
    overflow: hidden;
    font-size: 14px
}

.module_voiceList-01 li {
    position: relative;
    margin: 10px 0 0 10px;
    padding: 20px 20px 40px;
    background-color: #fffded
}

@media (min-width:768px) {
    .module_voiceList-01 li {
        display: flex;
        justify-content: space-between;
        overflow: hidden;
        margin: 0;
        padding: 0;
        background-color: transparent
    }
}

.module_voiceList-01 li+li {
    margin-top: 20px
}

@media (min-width:768px) {
    .module_voiceList-01 li+li {
        margin-top: 20px
    }
}

.module_voiceList-01 li::before {
    content: "";
    display: block;
    position: absolute;
    left: -10px;
    top: -10px;
    border: 1px solid #1a1a1a;
    width: 100%;
    height: 100%
}

@media (min-width:768px) {
    .module_voiceList-01 li::before {
        display: none
    }
}

.module_voiceList-01 li div.head .image {
    display: none
}

@media (min-width:768px) {
    .module_voiceList-01 li div.head .image {
        display: block;
        width: 160px
    }
}

.module_voiceList-01 li div.body {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body {
        position: relative;
        margin-top: 10px;
        padding: 20px;
        margin-left: 30px;
        background-color: #fffded
    }
}

@media (min-width:768px) {

    .module_voiceList-01 li div.body::before,
    .module_voiceList-01 li div.body::after {
        content: "";
        display: block;
        position: absolute
    }
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body::before {
        left: -10px;
        top: -10px;
        border: 1px solid #3588BA;
        border-left: none;
        width: 100%;
        height: 100%
    }
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body::after {
        content: "";
        display: block;
        position: absolute;
        left: -23px;
        top: calc(50% - 18px);
        width: 13px;
        height: 1px;
        background-color: #3588BA;
        transform: rotate(15deg)
    }
}

.module_voiceList-01 li div.body .title {
    margin-bottom: 1em;
    width: 100%;
    font-weight: bold
}

@media (min-width:768px) {

    .module_voiceList-01 li div.body .title::before,
    .module_voiceList-01 li div.body .title::after {
        content: "";
        display: block;
        position: absolute;
        left: -10px;
        width: 1px;
        height: calc(50% - 5px);
        background-color: #3588BA
    }
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body .title::before {
        top: -10px
    }
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body .title::after {
        bottom: 10px
    }
}

.module_voiceList-01 li div.body .image {
    display: block;
    width: 80px;
    height: 80px
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body .image {
        display: none
    }
}

.module_voiceList-01 li div.body .text {
    width: calc(100% - 100px);
    line-height: 1.85
}

@media (min-width:768px) {
    .module_voiceList-01 li div.body .text {
        width: 100%
    }
}

#top_news .bx-wrapper {
    max-width: none !important
}

@media (min-width:768px) {
    #top_news .bx-wrapper {
        margin-bottom: 40px
    }
}

._ru {
    font-family: "Times new Roman", Calibri
}

html {
    font-size: 10px
}

body {
    position: relative;
    z-index: 0;
    background: #fff;
    font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    line-height: 1.2857142857;
    font-size: 1.6rem;
    color: #001921
}

html[lang=en] body {
    font-family: "Noto Sans", sans-serif
}

html[lang^=zh] body {
    font-family: "Noto Sans SC", sans-serif
}

html[lang=vi] body {
    font-family: "Noto Sans", sans-serif
}

html[lang=ko] body {
    font-family: "Noto Sans KR", sans-serif
}

.overlay {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%
}

body._open-menu .overlay,
body._open-lang .overlay {
    z-index: 90
}

.global_header {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 200;
    box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.1);
    width: 100%;
    height: 60px;
    background-color: #fff
}

@media (min-width:768px) {
    .global_header {
        height: 100px
    }
}

body._fixed .global_header {
    position: fixed
}

.global_header>.global_inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0;
    max-width: none;
    height: inherit
}

.global_header .gh_logo {
    margin-right: 20px;
    padding-left: 20px
}

@media (min-width:768px) {
    .global_header .gh_logo {
        margin-right: 40px;
        padding-left: 30px
    }
}

@media (min-width:1024px) {
    .global_header .gh_logo {
        padding-left: 80px
    }
}

html[lang|=en] .global_header .gh_logo,
html[lang=vi] .global_header .gh_logo {
    margin-right: 10px;
    padding-left: 10px
}

@media (min-width:768px) {

    html[lang|=en] .global_header .gh_logo,
    html[lang=vi] .global_header .gh_logo {
        margin-right: 40px;
        padding-left: 30px
    }
}

@media (min-width:1024px) {

    html[lang|=en] .global_header .gh_logo,
    html[lang=vi] .global_header .gh_logo {
        padding-left: 80px
    }
}

.global_header .gh_logo a {
    display: block;
    color: #001921;
    text-decoration: none
}

@media (min-width:768px) {
    .global_header .gh_logo a {
        transition: opacity 0.3s
    }
}

@media (min-width:768px) {

    .global_header .gh_logo a:hover,
    .global_header .gh_logo a:focus {
        opacity: 0.7
    }
}

.global_header .gh_logo a span img {
    max-width: 200px
}

@media (min-width:768px) {
    .global_header .gh_logo a span img {
        max-width: 386px
    }
}

html[lang|=en] .global_header .gh_logo a span img,
html[lang=vi] .global_header .gh_logo a span img {
    max-width: none;
    height: auto
}

.global_header .gh_links-01 {
    display: flex;
    height: inherit
}

.global_header .gh_links-01 li {
    width: 60px;
    height: inherit
}

@media (min-width:768px) {
    .global_header .gh_links-01 li {
        width: 100px
    }
}

.global_header .gh_links-01 li a,
.global_header .gh_links-01 li button {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    width: inherit;
    height: inherit
}

.global_header .gh_links-01 li a .icon,
.global_header .gh_links-01 li button .icon {
    display: block;
    margin: 0 auto;
    background: no-repeat left top
}

.global_header .gh_links-01 li a i,
.global_header .gh_links-01 li button i {
    display: block;
    margin-top: 5px;
    margin-bottom: 12px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1
}

@media (min-width:768px) {

    .global_header .gh_links-01 li a i,
    .global_header .gh_links-01 li button i {
        margin-bottom: 24px;
        font-size: 14px
    }
}

.global_header .gh_links-01 li>a {
    font-size: 12px;
    color: #1a1a1a;
    text-decoration: none;
    transition: 0.3s
}

.global_header .gh_links-01 li>a path {
    transition: 0.3s
}

.global_header
/* hover untuk global
.gh_links-01 li > a:hover{color:#0aa805}.global_header 
.gh_links-01 li > a:hover path{fill:#a305a8}@media (min-width:768px){.global_header .gh_links-01 li > button{transition:opacity 0.3s}}@media (min-width:768px){.global_header .gh_links-01 li > button:hover,.global_header .gh_links-01 li > button:focus{opacity:0.7}} */

.global_header .gh_links-01 li.ghl_lokasi,
.global_header .gh_links-01 li.ghl_mitra {
    display: none
}

@media (min-width:768px) {

    .global_header .gh_links-01 li.ghl_lokasi,
    .global_header .gh_links-01 li.ghl_mitra {
        display: flex
    }
}

.global_header .gh_links-01 li.ghl_lokasi .icon {
    width: 21px;
    height: 36px
}

.global_header .gh_links-01 li.ghl_lokasi i {
    margin-top: 9px
}

.global_header .gh_links-01 li.ghl_lokasi {
    background-color: #FFC300;
    color: #1a1a1a;
}

.global_header .gh_links-01 li.ghl_lokasi:hover {
    background-color: #f4ea2293;
}

.global_header .gh_links-01 li.ghl_mitra .icon {
    width: 36px;
    height: 26px
}

.global_header .gh_links-01 li.ghl_mitra i {
    margin-top: 12px
}

.global_header .gh_links-01 li.ghl_mitra {
    background-color: #1a1a1a;
    color: #FFC300;
}

.global_header .gh_links-01 li.ghl_mitra:hover {
    background-color: #1a1a1ac0;
}



.global_header .gh_links-01 li.ghl_lang .icon {
    width: 20px;
    height: 20px;
    background-size: 20px 20px
}

@media (min-width:768px) {
    .global_header .gh_links-01 li.ghl_lang .icon {
        width: 32px;
        height: 32px;
        background-size: 32px 32px
    }
}

.global_header .gh_links-01 li.ghl_lang button {
    background-color: #FFC300;
    color: #1a1a1a;
}

body._open-lang .global_header .gh_links-01 li.ghl_lang button i::before {
    content: "閉じる"
}

body._open-lang .global_header .gh_links-01 li.ghl_lang button i span {
    display: none
}

body._open-menu .global_header .gh_links-01 li.ghl_menu button i::before {
    content: "閉じる"
}


body._open-menu .global_header .gh_links-01 li.ghl_menu button i span {
    display: none
}

nav.global_navigation {
    position: fixed;
    right: 0;
    top: 60px;
    z-index: 100;
    max-width: 380px;
    width: 100%;
    height: calc(100% - 60px);
    transform: translateX(100%);
    transition: 0.3s;
    -webkit-overflow-scrolling: touch
}

@media (min-width:768px) {
    nav.global_navigation {
        top: 100px;
        width: 380px;
        height: calc(100% - 100px)
    }
}

body._open-menu nav.global_navigation {
    box-shadow: -5px 0 15px 1px rgba(0, 0, 0, 0.1);
    transform: translateX(0)
}

nav.global_navigation a {
    color: #001921;
    text-decoration: none;
    transition: 0.3s ease
}

nav.global_navigation a:hover {
    color: #FFC300
}

nav.global_navigation>.global_inner {
    overflow-y: auto;
    margin-right: 0;
    padding-top: 38px;
    padding-bottom: 38px;
    height: 100%;
    background-color: #fff
}

nav.global_navigation ul.gn_links-01 {
    margin-bottom: 60px;
    border-bottom: 1px solid #001921
}

nav.global_navigation ul.gn_links-01 li {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #001921
}

nav.global_navigation ul.gn_links-01 li:first-child {
    border-top: none
}

nav.global_navigation ul.gn_links-01 li a {
    order: 1;
    display: flex;
    align-items: center;
    position: relative;
    padding: 0.25em 2.5em 0.25em 1em;
    width: 100%;
    height: 50px
}

nav.global_navigation ul.gn_links-01 li a._current {
    color: #3588BA
}

nav.global_navigation ul.gn_links-01 li a::after {
    content: "";
    position: absolute;
    right: 22px;
    top: calc(50% - .5em);
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    line-height: 1;
    color: #1a1a1a
}

nav.global_navigation ul.gn_links-01 li a._open::after {
    transform: rotate(0deg)
}

nav.global_navigation ul.gn_links-01 li a._open~.gnl_inner {
    box-shadow: 0 15px 15px -15px rgba(0, 0, 0, 0.1);
    background-color: rgba(255, 255, 255, 0.95)
}

nav.global_navigation ul.gn_links-01 li a._open~.gnl_inner .global_inner {
    margin-top: 0;
    padding-top: 40px;
    padding-bottom: 40px
}

nav.global_navigation ul.gn_links-01 li .gnl_button {
    order: 2;
    position: relative;
    width: 50px;
    height: 50px;
    background-color: transparent
}

nav.global_navigation ul.gn_links-01 li .gnl_button::before,
nav.global_navigation ul.gn_links-01 li .gnl_button::after {
    content: "";
    display: block;
    position: absolute;
    left: calc(50% - 6px);
    border-radius: 1px;
    top: 50%;
    width: 12px;
    height: 2px;
    background-color: #3588BA;
    transition: 0.3s ease
}

nav.global_navigation ul.gn_links-01 li .gnl_button::after {
    transform: rotate(-90deg)
}

nav.global_navigation ul.gn_links-01 li .gnl_button span {
    display: none
}

nav.global_navigation ul.gn_links-01 li .gnl_button._open::after {
    transform: rotate(0deg)
}

nav.global_navigation ul.gn_links-01 li .gnl_button._open~.gnl_inner .global_inner {
    margin-top: 0
}

nav.global_navigation ul.gn_links-01 li .gnl_inner {
    order: 3;
    overflow: hidden;
    width: 100%
}

nav.global_navigation ul.gn_links-01 li .gnl_inner .global_inner {
    margin-top: -300%;
    padding: 0;
    transition: margin 0.3s
}

nav.global_navigation ul.gn_links-01 li .gnl_inner ul li a {
    padding-left: 2em
}

nav.global_navigation ul.gn_links-01 li .gnl_inner ul li a::after {
    display: none
}

nav.global_navigation ul.gn_links-01 li.child>a {
    width: calc(100% - 50px)
}

nav.global_navigation ul.gn_links-01 li.child>a::after {
    display: none
}

@media (min-width:768px) {
    nav.global_navigation ul.gn_links-01 li.child>a::after {
        content: "";
        display: block;
        position: absolute;
        top: auto;
        right: auto;
        left: calc(50% - .5em);
        bottom: 20%;
        width: auto;
        height: auto;
        background-color: transparent;
        font-family: "Font Awesome 5 Pro";
        font-weight: 400;
        line-height: 1;
        font-size: 15px;
        color: #1a1a1a;
        opacity: 0;
        transition: 0.3s ease
    }
}

.global_language {
    position: fixed;
    right: 0;
    top: 60px;
    z-index: 100;
    overflow: hidden;
    width: 100%;
    max-height: 0;
    background-color: #fff;
    font-size: 20px;
    transition: 0.3s
}

@media (min-width:768px) {
    .global_language {
        top: 100px;
        font-size: 24px
    }
}

body._open-lang .global_language {
    box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.1);
    max-height: 700px
}

.global_language a {
    color: #00234B;
    text-decoration: none
}

@media (min-width:768px) {
    .global_language a {
        transition: opacity 0.3s
    }
}

@media (min-width:768px) {

    .global_language a:hover,
    .global_language a:focus {
        opacity: 0.7
    }
}

.global_language>.global_inner {
    padding: 70px 0
}

.global_language .gl_links-01 {
    text-align: center
}

.global_language .gl_links-01 li+li {
    margin-top: 2em
}

.global_wrapper {
    padding-top: 60px
}

@media (min-width:768px) {
    .global_wrapper {
        padding-top: 100px
    }
}

.global_mainVisual {
    position: relative;
    overflow: hidden;
    height: 230px;
    color: #fff;
    transition: height 0.3s ease
}

@media (min-width:768px) {
    .global_mainVisual {
        height: 400px
    }
}

body.home .global_mainVisual {
    height: auto
}

.global_mainVisual>.gm_background::before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 20;
    background-color: #00192133
}

.global_mainVisual>.gm_background img {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    max-height: none;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: 100%;
    transform: translate(-50%, -50%)
}

@media (min-width:768px) {
    .global_mainVisual>.gm_background img {
        height: auto
    }
}

.global_mainVisual a {
    color: #fff
}

.global_mainVisual>.global_inner {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 50;
    height: inherit
}

.global_mainVisual>.global_inner .gm_title {
    font-size: 28px;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.05em
}

@media (min-width:768px) {
    .global_mainVisual>.global_inner .gm_title {
        font-size: 48px
    }
}

.global_mainVisual .gm_slider,
.global_mainVisual .gm_slider * {
    transition: none
}

.global_mainVisual .gm_slider li {
    position: relative;
    overflow: hidden;
    height: 360px
}

@media (min-width:768px) {
    .global_mainVisual .gm_slider li {
        height: 676px
    }
}

.global_mainVisual .gm_slider li .gm_background {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto
}

.global_mainVisual .gm_slider li .gm_background img {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    max-height: none;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    transform: translate(-50%, -50%)
}

.global_mainVisual .gm_slider li .global_inner {
    position: relative;
    color: #fff;
    position: absolute;
    left: 20px;
    bottom: 67px;
    z-index: 20;
    padding: 30px;
    max-width: 276px;
    font-size: 18px;
    color: #fff
}

.global_mainVisual .gm_slider li .global_inner::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #1a1a1ad3;
    transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
    transition-property: transform;
    transform: scaleX(0);
    transition-duration: 1s;
    transition-delay: 0.8s;
    transform-origin: left
}

.global_mainVisual .gm_slider li .global_inner._scroll_anime::before {
    transform: scaleX(1)
}

@media (min-width:768px) {
    .global_mainVisual .gm_slider li .global_inner {
        left: 110px;
        bottom: 178px;
        padding: 60px;
        max-width: 470px
    }
}

@media (min-width:768px) {

    html[lang|=en] .global_mainVisual .gm_slider li .global_inner,
    html[lang=vi] .global_mainVisual .gm_slider li .global_inner {
        max-width: 570px
    }
}

.global_mainVisual .gm_slider li .global_inner .gm_title {
    opacity: 0;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-property: opacity;
    transition-duration: 0.8s;
    transition-delay: 1s;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    line-height: 1.785
}

html[lang=en] .global_mainVisual .gm_slider li .global_inner .gm_title {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .global_mainVisual .gm_slider li .global_inner .gm_title {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .global_mainVisual .gm_slider li .global_inner .gm_title {
    font-family: "Noto Serif", serif
}

html[lang=ko] .global_mainVisual .gm_slider li .global_inner .gm_title {
    font-family: "Noto Serif KR", sans-serif
}

@media (min-width:768px) {
    .global_mainVisual .gm_slider li .global_inner .gm_title {
        font-size: 28px
    }
}

html[lang|=en] .global_mainVisual .gm_slider li .global_inner .gm_title,
html[lang=vi] .global_mainVisual .gm_slider li .global_inner .gm_title {
    font-size: 16px;
    line-height: 1.585
}

@media (min-width:768px) {

    html[lang|=en] .global_mainVisual .gm_slider li .global_inner .gm_title,
    html[lang=vi] .global_mainVisual .gm_slider li .global_inner .gm_title {
        font-size: 26px;
        letter-spacing: 0.05em
    }
}

.global_mainVisual .gm_slider li .global_inner .gm_text {
    position: absolute;
    left: -9px;
    bottom: -10px;
    width: 222px;
    height: 32px;
    transform: rotate(-6deg)
}

@media (min-width:768px) {
    .global_mainVisual .gm_slider li .global_inner .gm_text {
        left: -23px;
        bottom: -23px;
        width: 373px;
        height: 54px
    }
}

.global_mainVisual .gm_slider li .title {
    width: inherit;
    font-size: 14px;
    font-family: "Noto Serif JP", "游明朝", serif;
    font-weight: 600;
    letter-spacing: 0.07em
}

html[lang=en] .global_mainVisual .gm_slider li .title {
    font-family: "Noto Serif", sans-serif
}

html[lang^=zh] .global_mainVisual .gm_slider li .title {
    font-family: "Noto Serif SC", sans-serif
}

html[lang=vi] .global_mainVisual .gm_slider li .title {
    font-family: "Noto Serif", serif
}

html[lang=ko] .global_mainVisual .gm_slider li .title {
    font-family: "Noto Serif KR", sans-serif
}

@media (min-width:1024px) {
    .global_mainVisual .gm_slider li .title {
        font-size: 30px
    }
}

.global_mainVisual .gm_slider li .title strong {
    font-size: 19px
}

@media (min-width:1024px) {
    .global_mainVisual .gm_slider li .title strong {
        font-size: 44px
    }
}

.global_mainVisual .gm_slider li .title span {
    display: block;
    margin-top: 1em;
    font-size: 12px
}

@media (min-width:1024px) {
    .global_mainVisual .gm_slider li .title span {
        font-size: 24px
    }
}

.global_mainVisual .gm_slider li[aria-hidden=false] .global_inner::before {
    transform: scaleX(1)
}

.global_mainVisual .gm_slider li[aria-hidden=false] .global_inner .gm_title {
    opacity: 1
}

.global_mainVisual .bx-pager {
    position: absolute;
    display: flex;
    justify-content: center;
    left: 0;
    bottom: 20px;
    z-index: 90;
    width: 100%
}

@media (min-width:768px) {
    .global_mainVisual .bx-pager {
        bottom: 30px
    }
}

.global_mainVisual .bx-pager .bx-pager-item {
    margin: 0 5px
}

.global_mainVisual .bx-pager .bx-pager-item a {
    display: block;
    border-radius: 100%;
    width: 6px;
    height: 6px;
    background-color: #fff;
    transition: 0.3s
}

@media (min-width:768px) {
    .global_mainVisual .bx-pager .bx-pager-item a {
        width: 8px;
        height: 8px
    }
}

.global_mainVisual .bx-pager .bx-pager-item a:hover,
.global_mainVisual .bx-pager .bx-pager-item a._active {
    background-color: #FFC300
}

.global_mainVisual .bx-pager .bx-pager-item a span {
    display: none
}

.global_mainVisual .gm_breadCrumb {
    position: absolute;
    left: 0;
    bottom: 1em;
    z-index: 60;
    width: 100%;
    font-size: 14px;
    text-shadow: 0 0 6px #001921
}

@media (min-width:768px) {
    .global_mainVisual .gm_breadCrumb {
        font-size: 16px
    }
}

.global_mainVisual .gm_breadCrumb ul {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.global_mainVisual .gm_breadCrumb ul li {
    display: inline;
    overflow: hidden;
    text-overflow: ellipsis
}

.global_mainVisual .gm_breadCrumb ul li:not(:last-child)::after {
    content: "";
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    margin: 0 0.5em
}

.global_contents .gc_main {
    width: 100%
}

.global_contents .gc_main [class*=module_button-]:only-child {
    margin: 0 30px
}

@media (min-width:1024px) {
    .global_contents .gc_main {
        max-width: 800px;
        width: calc(100% - 360px)
    }
}

.global_contents .gc_sub {
    display: none
}

@media (min-width:1024px) {
    .global_contents .gc_sub {
        display: block;
        width: 300px
    }
}

.global_contents .gc_sub .local_navigation .ln_links {
    font-size: 16px
}

.global_contents .gc_sub .local_navigation .ln_links>li {
    display: none;
    flex-wrap: wrap;
    width: 100%
}

.global_contents .gc_sub .local_navigation .ln_links>li._parent {
    display: flex
}

.global_contents .gc_sub .local_navigation .ln_links>li._parent>ul {
    display: block
}

.global_contents .gc_sub .local_navigation .ln_links>li a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    padding: 1em;
    width: 100%;
    height: 60px;
    background-color: #3588BA;
    color: #fff;
    text-decoration: none;
    text-align: center;
    transition: 0.3s
}

.global_contents .gc_sub .local_navigation .ln_links>li a span {
    transition: 0.3s
}

.global_contents .gc_sub .local_navigation .ln_links>li a._current+ul {
    display: block
}

.global_contents .gc_sub .local_navigation .ln_links>li a:hover span {
    opacity: 0.7
}

.global_contents .gc_sub .local_navigation .ln_links>li ul {
    display: none;
    width: 100%
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li:last-child a {
    border-bottom-width: 0
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li.child {
    display: flex;
    flex-wrap: wrap
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li.child>a {
    width: calc(100% - 60px)
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li.child>a::after {
    display: none
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li a {
    justify-content: flex-start;
    border-bottom: 1px solid #1a1a1a;
    padding: 1em 2.5em 1em 1.5em;
    background-color: #fff;
    text-align: left;
    color: #001921
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li a::after {
    content: "";
    position: absolute;
    right: 22px;
    top: calc(50% - .5em);
    font-family: "Font Awesome 5 Pro";
    font-weight: 100;
    line-height: 1;
    font-size: 18px;
    color: #3588BA
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li a._current,
.global_contents .gc_sub .local_navigation .ln_links>li ul li a._current+.lnl_button {
    background-color: #fffded
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_button {
    position: relative;
    border-bottom: 1px solid #1a1a1a;
    width: 60px;
    height: 60px;
    background-color: transparent
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_button::before,
.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_button::after {
    content: "";
    display: block;
    position: absolute;
    left: calc(50% - 6px);
    border-radius: 1px;
    top: 50%;
    width: 12px;
    height: 2px;
    background-color: #3588BA;
    transition: 0.3s ease
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_button::after {
    transform: rotate(-90deg)
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_button span {
    display: none
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_button._open::after {
    transform: rotate(0deg)
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_button._open~.lnl_inner>div {
    margin-top: 0
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li:last-child a {
    border-bottom-width: 1px
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_inner {
    overflow: hidden;
    width: 100%
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_inner>div {
    margin-top: -300%;
    transition: margin 0.3s
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_inner>div ul {
    display: block
}

.global_contents .gc_sub .local_navigation .ln_links>li ul li .lnl_inner>div ul li a {
    padding-left: 2.5em
}

.global_footer {
    position: relative
}

@media (min-width:768px) {
    .global_footer {
        padding: 60px 0 120px;
        background-color: #f8f8f8
    }
}

.global_footer a {
    color: #001921;
    text-decoration: none
}

.global_footer .gf_information {
    text-align: center
}

@media (min-width:768px) {
    .global_footer .gf_information {
        display: flex;
        align-items: center
    }
}

.global_footer .gf_information .gf_logo {
    margin: 0 -20px;
    padding: 40px 0 84px;
    background-color: #f8f8f8
}

@media (min-width:768px) {
    .global_footer .gf_information .gf_logo {
        order: 1;
        margin: 0 auto 0 0;
        padding: 0
    }
}

body.home .global_footer .gf_information .gf_logo {
    margin-top: 40px
}

@media (min-width:768px) {
    body.home .global_footer .gf_information .gf_logo {
        margin-top: 0
    }
}

.global_footer .gf_information .gf_logo a {
    display: block
}

@media (min-width:768px) {
    .global_footer .gf_information .gf_logo a {
        transition: opacity 0.3s
    }
}

@media (min-width:768px) {

    .global_footer .gf_information .gf_logo a:hover,
    .global_footer .gf_information .gf_logo a:focus {
        opacity: 0.7
    }
}

.global_footer .gf_information .gf_logo a span img {
    max-width: 237px;
    width: 100%
}

html[lang|=en] .global_footer .gf_information .gf_logo a span img {
    max-width: 321px
}

html[lang|=zh] .global_footer .gf_information .gf_logo a span img {
    max-width: 182px
}

html[lang=ko] .global_footer .gf_information .gf_logo a span img {
    max-width: 167px
}

html[lang=vi] .global_footer .gf_information .gf_logo a span img {
    max-width: 316px
}

@media (min-width:768px) {
    .global_footer .gf_information .gf_logo a span img {
        max-width: 378px !important
    }
}

.global_footer .gf_information .gfi_button {
    display: none
}

@media (min-width:768px) {
    .global_footer .gf_information .gfi_button {
        display: block;
        order: 2;
        margin-left: 40px
    }
}

body.home .global_footer .gf_information .gfi_button {
    display: block;
    order: 2
}

@media (min-width:768px) {
    body.home .global_footer .gf_information .gfi_button {
        margin-left: 40px
    }
}

.global_footer .gf_information .gfi_button+.gfi_button {
    margin-top: 40px
}

@media (min-width:768px) {
    .global_footer .gf_information .gfi_button+.gfi_button {
        margin-top: 0
    }
}

@media (min-width:768px) {
    .global_footer .gf_information .gfi_button a {
        min-width: 220px
    }
}

.global_footer .gf_links-01 {
    display: none
}

@media (min-width:768px) {
    .global_footer .gf_links-01 {
        display: flex;
        justify-content: space-between;
        margin-top: 60px;
        font-size: 15px
    }
}

.global_footer .gf_links-01>li {
    width: calc(100% / 5 - 40px * 4 / 5)
}

.global_footer .gf_links-01>li>a {
    font-size: 16px;
    font-weight: bold;
    color: #1a1a1a;
    text-decoration: none
}

@media (min-width:768px) {
    .global_footer .gf_links-01>li>a {
        transition: opacity 0.3s
    }
}

@media (min-width:768px) {

    .global_footer .gf_links-01>li>a:hover,
    .global_footer .gf_links-01>li>a:focus {
        opacity: 0.7
    }
}

.global_footer .gf_links-01>li ul {
    margin-top: 1em;
    border-top: 1px solid #001921;
    padding-top: 0.5em
}

.global_footer .gf_links-01>li ul li {
    margin-top: 0.5em
}

.global_footer .gf_links-01>li ul li a {
    display: inline-block;
    position: relative;
    padding-left: 1em
}

@media (min-width:768px) {
    .global_footer .gf_links-01>li ul li a {
        transition: opacity 0.3s
    }
}

@media (min-width:768px) {

    .global_footer .gf_links-01>li ul li a:hover,
    .global_footer .gf_links-01>li ul li a:focus {
        opacity: 0.7
    }
}

.global_footer .gf_links-01>li ul li a::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0.5em;
    width: 8px;
    height: 1px;
    background-color: #3588BA
}

.global_footer .gf_copyright {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 44px;
    background-color: #1a1a1a;
    font-size: 14px;
    color: #FFC300
}

.global_footer .gf_copyright a {
    color: #FFC300;
    text-decoration: none
}

@media (min-width:768px) {
    .global_footer .gf_copyright a {
        transition: opacity 0.3s
    }
}

@media (min-width:768px) {

    .global_footer .gf_copyright a:hover,
    .global_footer .gf_copyright a:focus {
        opacity: 0.7
    }
}

.global_footer .gf_copyright .global_inner {
    display: flex;
    justify-content: center;
    align-items: center;
    height: inherit
}

@media (min-width:768px) {
    .global_footer .gf_copyright .global_inner {
        justify-content: space-between
    }
}

.global_footer .gf_copyright .gf_links-02 {
    display: none
}

@media (min-width:768px) {
    .global_footer .gf_copyright .gf_links-02 {
        display: flex
    }
}

.global_footer .gf_copyright .gf_links-02 li {
    margin-right: 2em
}

.global_footer .gf_copyright .copyright {
    font-size: 12px
}

.action_button {
    background-color: #FFC300;
    color: #1a1a1a;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    font-size: 16px;
    cursor: pointer;
}

.action_button:hover {
    background-color: #f4ea22af;
}