﻿@-webkit-keyframes sizeScale {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(100%, -100%, 0);
        transform: translate3d(100%, -100%, 0)
    }

    75% {
        -webkit-transform: translate3d(0%, 0%, 0);
        transform: translate3d(0%, 0%, 0);
        opacity: 1
    }

    to {
        -webkit-transform: translate3d(-100%, 100%, 0);
        transform: translate3d(-100%, 100%, 0);
        opacity: 0
    }
}

@keyframes sizeScale {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(100%, -100%, 0);
        transform: translate3d(100%, -100%, 0)
    }

    75% {
        -webkit-transform: translate3d(0%, 0%, 0);
        transform: translate3d(0%, 0%, 0);
        opacity: 1
    }

    to {
        -webkit-transform: translate3d(-100%, 100%, 0);
        transform: translate3d(-100%, 100%, 0);
        opacity: 0
    }
}

.vertmiddle:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle
}

.vertmiddle>* {
    display: inline-block;
    vertical-align: middle
}

html {
    font-family: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
    font-size: 100px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    color: #e0e0e0
}

@media print,
screen and (min-width:461px) {
    html {
        overflow-x: hidden;
        line-height: 1.5
    }
}

@media screen and (max-width:460px) {
    html {
        -webkit-text-size-adjust: 100%
    }
}

@media print,
screen and (min-width:1440px) and (max-width:1599px) {
    html {
        font-size: 90px
    }
}

@media print,
screen and (min-width:1366px) and (max-width:1439px) {
    html {
        font-size: 85px
    }
}

@media print,
screen and (min-width:1280px) and (max-width:1365px) {
    html {
        font-size: 80px
    }
}

@media print,
screen and (min-width:461px) and (max-width:1279px) {
    html {
        font-size: 75px
    }
}

@media screen and (min-width:376px) and (max-width:460px) {
    html {
        font-size: 110px
    }
}

@media screen and (min-width:321px) and (max-width:375px) {
    html {
        font-size: 95px
    }
}

@media screen and (min-width:1px) and (max-width:320px) {
    html {
        font-size: 80px
    }
}

html.edge {
    -ms-text-size-adjust: 100%
}

html.safari {
    -webkit-font-smoothing: antialiased
}

@media print,
screen and (min-width:461px) {
    html.safari {
        -webkit-font-feature-settings: "pkna";
        font-feature-settings: "pkna"
    }
}

body {
    position: relative;
    margin: 0;
    padding: 0;
    font-size: .11rem;
	
}

@media print,
screen and (min-width:461px) {
    body {
        min-width: 1024px
    }
}

.touchevents * {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.chrome body {
    image-rendering: -webkit-optimize-contrast
}

dd,
dl,
dt,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
td,
th,
ul {
    margin: 0;
    padding: 0
}

article,
aside,
figcaption,
figure,
footer,
header,
main,
nav,
section {
    display: block
}

img {
    -ms-interpolation-mode: bicubic;
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

hr {
    height: 0;
    overflow: visible;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

b,
strong {
    font-weight: inherit;
    font-weight: bolder
}

a {
    outline: 0;
    text-decoration: none;
    color: inherit;
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

li {
    list-style: none
}

sub,
sup {
    position: relative;
    vertical-align: baseline;
    line-height: 0
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

audio,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

canvas {
    display: inline-block
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    border: none;
    outline: 0;
    margin: 0;
    padding: 0
}

button,
input {
    overflow: visible
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

button:-moz-focusring,
input:-moz-focusring {
    outline: 1px dotted ButtonText
}

button,
select {
    cursor: pointer;
    text-transform: none
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border: none
}

select::-ms-expand {
    display: none
}

[data-hidePrintMessageArea] {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 10px;
    pointer-events: none;
    opacity: 0
}

@media print {
    body {
        position: relative;
        top: 100px
    }

    body:before {
        content: "ページを印刷する際は一番下までスクロールして下さい。";
        display: none;
        white-space: pre;
        font-size: 20px;
        padding: 10px 10px;
        border: 3px solid #000;
        background-color: #FFF;
        color: #000;
        position: absolute;
        top: -100px;
        left: 0px;
        right: 0px;
        text-align: center;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    .chrome body:before {
        content: "ページを印刷する際は一番下までスクロールして下さい。\A画像を表示させる場合は、「基本設定」→「背景のグラフィック」を有効にして下さい。"
    }

    .ie body:before {
        content: "ページを印刷する際は一番下までスクロールして下さい。\A画像を表示させる場合は、「印刷プレビュー」→「ページ設定」→「背景の色とイメージを印刷する」を有効にして下さい。"
    }

    .safari body:before {
        content: "ページを印刷する際は一番下までスクロールして下さい。\A画像を表示させる場合は、「詳細を表示」→「背景をプリント」を有効にして下さい。"
    }

    .edge body:before {
        content: "※Microsoft Edgeは背景や画像を印刷できません。"
    }

    .addPrintMessage body:before {
        display: block
    }

    * {
        background-attachment: scroll !important
    }
}

@media print,
screen and (min-width:461px) {
    [data-sc-sp] {
        display: none !important
    }
}

@media screen and (max-width:460px) {
    [data-sc-pc] {
        display: none !important
    }
}

.mod_main {
    position: relative;
    overflow: hidden;
    background-color: #191b22
}

.mod_main:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 9.9rem 6.7rem 0 0;
    border-color: #25272d transparent transparent transparent
}

@media screen and (max-width:460px) {
    .mod_main:before {
        border-width: 5.3rem 73.33vw 0 0
    }
}

.mod_main:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    margin: 0 auto;
    opacity: 0.03;
    background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 20%, white 80%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 20%, white 80%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(20%, white), color-stop(80%, white), to(rgba(255, 255, 255, 0)));
    background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 20%, white 80%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, white 20%, white 80%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#00ffffff', GradientType=1);
    pointer-events: none
}

@media print,
screen and (min-width:461px) {
    .mod_main:after {
        max-width: 1100px;
        width: 100%
    }
}

@media screen and (max-width:460px) {
    .mod_main:after {
        width: 80%
    }
}

[data-bgline] {
    position: relative
}

[data-bgline]>* {
    position: relative
}

[data-bgline] [data-bgline-target] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

[data-bgline] [data-bgline-target] svg {
    overflow: visible;
    position: absolute
}

[data-bgline] [data-bgline-target] div {
    position: absolute;
    top: 100px;
    left: 100px;
    width: 3px;
    height: 100px;
    background-color: #f00;
    -webkit-transform: skewX(-30deg);
    -ms-transform: skewX(-30deg);
    transform: skewX(-30deg);
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)
}

.device-tablet .mod_main {
    width: calc(100% + 1px)
}

[data-autoheight],
[data-pc-autoheight],
[data-sp-autoheight] {
    -webkit-transition: none !important;
    -o-transition: none !important;
    transition: none !important
}

[data-lf] {
    opacity: 0;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    -webkit-transition: opacity 1s;
    -o-transition: opacity 1s;
    transition: opacity 1s
}

[data-lf].load_view,
[data-lf][src],
[data-lf][style*=background-image] {
    opacity: 1
}

@media print,
screen and (min-width:461px) {
    @supports (display: flow-root) {
        .col_base.col_1 {
            display: flow-root
        }
    }

    @supports not (display:flow-root) {
        .col_base.col_1 {
            display: block
        }

        .col_base.col_1:after {
            content: '';
            display: block;
            clear: both
        }
    }

    .ie .col_base.col_1 {
        display: block;
        width: calc(100% + 1px)
    }

    .ie .col_base.col_1:after {
        content: '';
        display: block;
        clear: both
    }

    .col_base.col_1>* {
        margin: 0px 0 0 0px;
        width: calc(100% / 1 - 0px);
        float: left
    }

    .ie .col_base.col_1>* {
        width: calc(calc(100% - 1px) / 1 - 0px)
    }

    .col_base.col_1>:nth-child(1n+1) {
        margin-left: 0
    }

    .col_base.col_1>:nth-child(-n+1) {
        margin-top: 0
    }
}

@media print,
screen and (min-width:461px) {
    @supports (display: flow-root) {
        .col_base.col_2 {
            display: flow-root
        }
    }

    @supports not (display:flow-root) {
        .col_base.col_2 {
            display: block
        }

        .col_base.col_2:after {
            content: '';
            display: block;
            clear: both
        }
    }

    .ie .col_base.col_2 {
        display: block;
        width: calc(100% + 1px)
    }

    .ie .col_base.col_2:after {
        content: '';
        display: block;
        clear: both
    }

    .col_base.col_2>* {
        margin: 0px 0 0 0px;
        width: calc(100% / 2 - 0px);
        float: left
    }

    .ie .col_base.col_2>* {
        width: calc(calc(100% - 1px) / 2 - 0px)
    }

    .col_base.col_2>:nth-child(odd) {
        margin-left: 0
    }

    .col_base.col_2>:nth-child(-n+2) {
        margin-top: 0
    }
}

@media print,
screen and (min-width:461px) {
    @supports (display: flow-root) {
        .col_base.col_3 {
            display: flow-root
        }
    }

    @supports not (display:flow-root) {
        .col_base.col_3 {
            display: block
        }

        .col_base.col_3:after {
            content: '';
            display: block;
            clear: both
        }
    }

    .ie .col_base.col_3 {
        display: block;
        width: calc(100% + 1px)
    }

    .ie .col_base.col_3:after {
        content: '';
        display: block;
        clear: both
    }

    .col_base.col_3>* {
        margin: 0px 0 0 0px;
        width: calc(100% / 3 - 0px);
        float: left
    }

    .ie .col_base.col_3>* {
        width: calc(calc(100% - 1px) / 3 - 0px)
    }

    .col_base.col_3>:nth-child(3n+1) {
        margin-left: 0
    }

    .col_base.col_3>:nth-child(-n+3) {
        margin-top: 0
    }
}

@media print,
screen and (min-width:461px) {
    @supports (display: flow-root) {
        .col_base.col_4 {
            display: flow-root
        }
    }

    @supports not (display:flow-root) {
        .col_base.col_4 {
            display: block
        }

        .col_base.col_4:after {
            content: '';
            display: block;
            clear: both
        }
    }

    .ie .col_base.col_4 {
        display: block;
        width: calc(100% + 1px)
    }

    .ie .col_base.col_4:after {
        content: '';
        display: block;
        clear: both
    }

    .col_base.col_4>* {
        margin: 0px 0 0 0px;
        width: calc(100% / 4 - 0px);
        float: left
    }

    .ie .col_base.col_4>* {
        width: calc(calc(100% - 1px) / 4 - 0px)
    }

    .col_base.col_4>:nth-child(4n+1) {
        margin-left: 0
    }

    .col_base.col_4>:nth-child(-n+4) {
        margin-top: 0
    }
}

@media print,
screen and (min-width:461px) {
    @supports (display: flow-root) {
        .col_base.col_5 {
            display: flow-root
        }
    }

    @supports not (display:flow-root) {
        .col_base.col_5 {
            display: block
        }

        .col_base.col_5:after {
            content: '';
            display: block;
            clear: both
        }
    }

    .ie .col_base.col_5 {
        display: block;
        width: calc(100% + 1px)
    }

    .ie .col_base.col_5:after {
        content: '';
        display: block;
        clear: both
    }

    .col_base.col_5>* {
        margin: 0px 0 0 0px;
        width: calc(100% / 5 - 0px);
        float: left
    }

    .ie .col_base.col_5>* {
        width: calc(calc(100% - 1px) / 5 - 0px)
    }

    .col_base.col_5>:nth-child(5n+1) {
        margin-left: 0
    }

    .col_base.col_5>:nth-child(-n+5) {
        margin-top: 0
    }
}

.clearfix {
    content: "";
    display: block;
    clear: both
}

.mod_link_btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: calc(2.5rem - 0.75px);
    height: calc(0.6rem - 0.75px);
    border: 0.75px solid #e0e0e0;
    position: relative
}

@media screen and (max-width:460px) {
    .mod_link_btn {
        width: calc(2rem - 1px);
        height: calc(0.4rem - 1px);
        border: 0.5px solid #e0e0e0
    }
}

.mod_link_btn:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 1;
    -webkit-transition: background-color .3s;
    -o-transition: background-color .3s;
    transition: background-color .3s
}

@media screen and (max-width:460px) {
    .mod_link_btn:before {
        top: 0.5px;
        left: 0.5px;
        width: calc(100% - 1px);
        height: calc(100% - 1px)
    }
}

.mod_link_btn span {
    font-size: 0.18rem;
    letter-spacing: 0.1em;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    position: relative;
    z-index: 1;
    -webkit-transition: color .3s;
    -o-transition: color .3s;
    transition: color .3s;
    color: #000000;
}

@media screen and (max-width:460px) {
    .mod_link_btn span {
        font-size: 0.14rem
    }
}

.mod_link_btn .btn_txt_more {
    color: #A5A5A5;
    font-weight: 700;
    margin-left: 0.08rem;
    padding-left: 0.16rem;
    position: relative
}

@media screen and (max-width:460px) {
    .mod_link_btn .btn_txt_more {
        margin-left: 0.05rem;
        padding-left: 0.12rem
    }
}

/*.mod_link_btn .btn_txt_more:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0.06rem;
    height: 1px;
    background-color: #e0e0e0;
    -webkit-transition: background-color .3s;
    -o-transition: background-color .3s;
    transition: background-color .3s
}

@media screen and (max-width:460px) {
    .mod_link_btn .btn_txt_more:before {
        width: 0.05rem;
        height: 0.5px
    }
}*/

.mod_link_btn:hover:before {
    background-color: #ad1c21
}

.mod_link_btn:hover .btn_txt {
    color: #fff;
}

.mod_link_btn:hover .btn_txt_more {
    color: #e0e0e0
}

.mod_link_btn:hover .btn_txt_more:before {
    background-color: #ad1c21
}

.mod_sec_box {
    position: relative
}

.mod_sec_box .mod_title_box {
    max-width: 1100px;
    margin: 0 auto;
    padding: 1.95rem 0.4rem 0.75rem 0.4rem;
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

@media print,
screen and (min-width:461px) {
    .mod_sec_box .mod_title_box {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
}

@media screen and (max-width:460px) {
    .mod_sec_box .mod_title_box {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        padding: 0.825rem 0.3rem 0.3rem 0.3rem
    }
}

.mod_sec_box .mod_title_box .mod_page_title {
    font-size: 0.24rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1;
    color: #ad1c21
}

@media print,
screen and (min-width:461px) {
    .mod_sec_box .mod_title_box .mod_page_title {
        margin-left: 0.4rem
    }
}

@media screen and (max-width:460px) {
    .mod_sec_box .mod_title_box .mod_page_title {
        font-size: 0.19rem;
        margin-top: 0.2rem
    }
}

.mod_sec_box .mod_title_box .mod_page_title_sub {
    position: relative;
    font-size: .88rem;
    line-height: 1;
    font-weight: 700;
    font-family: 'Montserrat', sans-serif;
    
    @-webkit-keyframes sizeScale {
    0% {
        opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0)}

    75% {
    -webkit-transform: translate3d(0%, 0%, 0);
    transform: translate3d(0%, 0%, 0);
    opacity: 1}

    to {
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
    opacity: 0}
}
    @keyframes sizeScale {
    0% {
        opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0)}

    75% {
    -webkit-transform: translate3d(0%, 0%, 0);
    transform: translate3d(0%, 0%, 0);
    opacity: 1}

    to {
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
    opacity: 0}
}

.mod_main:
    before {
    display: none}

.mv_sec {
    background-color: #000;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box}
    @media print,
screen and (min-width:461px) {
    .mv_sec {
        height: 100vh;
    padding: 1.45rem 0 0.8rem 0}
}
    @media screen and (max-width:460px) {
    .mv_sec {
        height: 90vh;
    padding: 0.7rem 0 0 0}
}

.mv_sec:
    before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 6;
    pointer-events: none}
    @media screen and (max-width:460px) {
    .mv_sec:before {
        height: 100%}
}

.mv_sec .mv_wrap {
    position: relative}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap {
        height: calc(100% - 0.7rem)}
}

.mv_sec .mv_wrap .txt_box {
    max-width: 1290px;
    padding: 3rem 0.4rem 0 0.4rem;
    margin: 0 auto;
    position: relative;
    z-index: 6;
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap .txt_box {
        height: 98%;
    padding: 0 0.3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    pointer-events: none}
}

.mv_sec .mv_wrap .txt_box .mv_deco_title {
    pointer-events: none;
    font-size: 0.7rem;
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap .txt_box .mv_deco_title {
        position: absolute;
    top: 0;
    left: 0.3rem;
    font-size: .5rem;
    }
}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer {
    position: absolute;
    top: 0;
    left: 0.4rem;
    width: 4.78rem;
    pointer-events: none}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap .txt_box .mv_deco_title_layer {
        left: 0.3rem;
    width: 2.575rem}
}

.ie .mv_sec .mv_wrap .txt_box .mv_deco_title_layer .other {
    display: none}

.ie .mv_sec .mv_wrap .txt_box .mv_deco_title_layer .colorloop {
    opacity: 0}

.ie .mv_sec .mv_wrap .txt_box .mv_deco_title_layer .colorloop.active {
    opacity: 1}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_trigger {
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-timing-function: cubic-bezier(0.8, 0.01, 0.26, 1);
    -o-transition-timing-function: cubic-bezier(0.8, 0.01, 0.26, 1);
    transition-timing-function: cubic-bezier(0.8, 0.01, 0.26, 1);
    fill: #000000}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_trigger.other {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_trigger.other.hide {
    -webkit-clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
    clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%)}
    @-webkit-keyframes charaloop01 {
    0% {
        fill: #ad1c21}

    25% {
    fill: #7e8d9b}

    50% {
    fill: #444457}

    75% {
    fill: #FFF}

    to {
    fill: #ad1c21}
}
    @keyframes charaloop01 {
    0% {
        fill: #ad1c21}

    25% {
    fill: #7e8d9b}

    50% {
    fill: #444457}

    75% {
    fill: #FFF}

    to {
    fill: #ad1c21}
}
    @-webkit-keyframes charaloop02 {
    0% {
        fill: #FFF}

    25% {
    fill: #ad1c21}

    50% {
    fill: #7e8d9b}

    75% {
    fill: #444457}

    to {
    fill: #FFF}
}
    @keyframes charaloop02 {
    0% {
        fill: #FFF}

    25% {
    fill: #ad1c21}

    50% {
    fill: #7e8d9b}

    75% {
    fill: #444457}

    to {
    fill: #FFF}
}
    @-webkit-keyframes charaloop03 {
    0% {
        fill: #7e8d9b}

    25% {
    fill: #444457}

    50% {
    fill: #FFF}

    75% {
    fill: #ad1c21}

    to {
    fill: #7e8d9b}
}
    @keyframes charaloop03 {
    0% {
        fill: #7e8d9b}

    25% {
    fill: #444457}

    50% {
    fill: #FFF}

    75% {
    fill: #ad1c21}

    to {
    fill: #7e8d9b}
}
    @-webkit-keyframes charaloop04 {
    0% {
        fill: #444457}

    25% {
    fill: #FFF}

    50% {
    fill: #ad1c21}

    75% {
    fill: #7e8d9b}

    to {
    fill: #444457}
}
    @keyframes charaloop04 {
    0% {
        fill: #444457}

    25% {
    fill: #FFF}

    50% {
    fill: #ad1c21}

    75% {
    fill: #7e8d9b}

    to {
    fill: #444457}
}
    @-webkit-keyframes charaloop05 {
    0% {
        fill: #CACED5}

    25% {
    fill: #ad1c21}

    50% {
    fill: #FFF}

    75% {
    fill: #444457}

    to {
    fill: #CACED5}
}
    @keyframes charaloop05 {
    0% {
        fill: #CACED5}

    25% {
    fill: #ad1c21}

    50% {
    fill: #FFF}

    75% {
    fill: #444457}

    to {
    fill: #CACED5}
}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_1.active {
    fill: #ad1c21}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_1.loop {
    -webkit-animation: charaloop01 10s linear infinite;
    animation: charaloop01 10s linear infinite}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_2.active {
    fill: #444457}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_2.loop {
    -webkit-animation: charaloop04 10s linear infinite;
    animation: charaloop04 10s linear infinite}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_3.active {
    fill: #ad1c21}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_3.loop {
    -webkit-animation: charaloop01 10s linear infinite;
    animation: charaloop01 10s linear infinite}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_4.active {
    fill: #CACED5}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_4.loop {
    -webkit-animation: charaloop05 10s linear infinite;
    animation: charaloop05 10s linear infinite}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_5.active {
    fill: #7e8d9b}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_5.loop {
    -webkit-animation: charaloop03 10s linear infinite;
    animation: charaloop03 10s linear infinite}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_6.active {
    fill: #ffffff}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_6.loop {
    -webkit-animation: charaloop02 10s linear infinite;
    animation: charaloop02 10s linear infinite}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_7.active {
    fill: #CACED5}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_7.loop {
    -webkit-animation: charaloop05 10s linear infinite;
    animation: charaloop05 10s linear infinite}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_8.active {
    fill: #444457}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_8.loop {
    -webkit-animation: charaloop04 10s linear infinite;
    animation: charaloop04 10s linear infinite}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_9.active {
    fill: #7e8d9b}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_9.loop {
    -webkit-animation: charaloop03 10s linear infinite;
    animation: charaloop03 10s linear infinite}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_10.active {
    fill: #ad1c21}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_10.loop {
    -webkit-animation: charaloop01 10s linear infinite;
    animation: charaloop01 10s linear infinite}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_11.active {
    fill: #7e8d9b}

.mv_sec .mv_wrap .txt_box .mv_deco_title_layer .path_11.loop {
    -webkit-animation: charaloop03 10s linear infinite;
    animation: charaloop03 10s linear infinite}

.mv_sec .mv_wrap .txt_box .title {
    pointer-events: none}
    @media print,
screen and (min-width:461px) {
    .mv_sec .mv_wrap .txt_box .title {
        margin-top: 0.85rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end}
}

.mv_sec .mv_wrap .txt_box .title .logo {
    width: 3.18rem;
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap .txt_box .title .logo {
        display: block}
}

.mv_sec .mv_wrap .txt_box .title .txt {
    font-size: 0.22rem;
    line-height: 1;
    letter-spacing: 0.1em;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    color: #ad1c21}
    @media print,
screen and (min-width:461px) {
    .mv_sec .mv_wrap .txt_box .title .txt {
        margin-left: 0.35rem}
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap .txt_box .title .txt {
        display: block;
    font-size: 0.16rem;
    line-height: 1.3125;
    margin-top: 0.1rem}
}

.mv_sec .mv_wrap .txt_box .service_box {
    pointer-events: none;
    margin-top: 0.35rem}
    @media print,
screen and (min-width:461px) {
    .mv_sec .mv_wrap .txt_box .service_box {
        display: -webkit-box;
    display: -ms-flexbox;
    display: flex}
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap .txt_box .service_box {
        margin-top: 0.12rem}
}
    @media print,
screen and (min-width:461px) {
    .mv_sec .mv_wrap .txt_box .service_box li+li {
        margin-left: 0.36rem}
}

.mv_sec .mv_wrap .txt_box .service_box
    li .txt {
    font-size: 0.25rem;
    line-height: 2.28571;
    letter-spacing: 0.28em;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap .txt_box .service_box li .txt {
        font-size: 0.15rem;
    line-height: 1.9585}
}
    @media print,
screen and (min-width:461px) {
    .mv_sec .mv_wrap .txt_box .sns_box {
        display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 0.95rem}

    .mv_sec .mv_wrap .txt_box .sns_box .link_sns {
    position: relative}

    .mv_sec .mv_wrap .txt_box .sns_box .link_sns+.link_sns {
    margin-left: 0.2rem}

    .mv_sec .mv_wrap .txt_box .sns_box .link_sns:
    before {
        content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0.4rem;
    height: 0.4rem;
    background-size: cover;
    pointer-events: none;
    opacity: 0;
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s}

    .mv_sec .mv_wrap .txt_box .sns_box .link_sns:
    first-of-type::before {
        background-image: url(../image/insta_hover.png)}

    .mv_sec .mv_wrap .txt_box .sns_box .link_sns:nth-of-type(2):
    before {
        background-image: url(../image/youtube_hover.png)}

    .mv_sec .mv_wrap .txt_box .sns_box .link_sns:nth-of-type(3):
    before {
        background-image: url(../image/line_hover.png)}

    .mv_sec .mv_wrap .txt_box .sns_box .link_sns:
    hover:before {
        opacity: 1}

    .mv_sec .mv_wrap .txt_box .sns_box .link_sns .img {
    width: 0.4rem}
}
    @media print,
screen and (min-width:461px) and (max-height:900px) {
    .mv_sec .mv_wrap .txt_box .title {
        margin-top: 0.55rem}

    .mv_sec .mv_wrap .txt_box .service_box {
    margin-top: 0.15rem}

    .mv_sec .mv_wrap .txt_box .sns_box {
    margin-top: 0.35rem}
}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 {
    height: 100vh;
    position: absolute;
    top: -1.45rem;
    right: 0}
    @media print,
screen and (min-width:461px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01:before {
        content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100vw;
    height: 2rem;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(15%, #191b22), color-stop(85%, transparent));
    background: -webkit-linear-gradient(bottom, #191b22 15%, transparent 85%);
    background: -o-linear-gradient(bottom, #191b22 15%, transparent 85%);
    background: linear-gradient(to top, #191b22 15%, transparent 85%);
    z-index: 4}
}
    @media print,
screen and (min-width:1850px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 {
        width: calc(100% - 7.25rem)}
}
    @media print,
screen and (min-width:1600px) and (max-width:1849px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 {
        width: calc(100% - 6.25rem)}
}
    @media print,
screen and (min-width:1440px) and (max-width:1599px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 {
        width: calc(100% - 5.25rem)}
}
    @media print,
screen and (min-width:481px) and (max-width:1439px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 {
        width: calc(100% - 4.25rem)}
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 {
        top: -0.7rem;
    right: 0;
    width: 100%;
    height: calc(100% + 0.7rem)}
}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap {
    height: 100%;
    position: relative}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover {
    position: absolute;
    top: 0;
    overflow: visible;
    z-index: 5}
    @media print,
screen and (min-width:461px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_wrap .cover {
        margin-right: -40%;
    height: 100vh;
    right: 50%}
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_wrap .cover {
        left: 0;
    width: 100%;
    height: 100%}
}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .st0 {
    fill: #191b22}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .st0.active {
    -webkit-transition: -webkit-transform 0.7s cubic-bezier(0.42, 0, 1, 1);
    transition: -webkit-transform 0.7s cubic-bezier(0.42, 0, 1, 1);
    -o-transition: transform 0.7s cubic-bezier(0.42, 0, 1, 1);
    transition: transform 0.7s cubic-bezier(0.42, 0, 1, 1);
    transition: transform 0.7s cubic-bezier(0.42, 0, 1, 1), -webkit-transform 0.7s cubic-bezier(0.42, 0, 1, 1)}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .st0.type01 {
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    transform: translate(0%, 0%)}
    @media print,
screen and (min-width:461px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_wrap .cover .st0.type01.active {
        -webkit-transform: translate(43%, 115%);
    -ms-transform: translate(43%, 115%);
    transform: translate(43%, 115%)}
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_wrap .cover .st0.type01.active {
        -webkit-transform: translate(139%, 123%);
    -ms-transform: translate(139%, 123%);
    transform: translate(139%, 123%)}
}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .st0.type02 {
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    transform: translate(0%, 0%)}
    @media print,
screen and (min-width:461px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_wrap .cover .st0.type02.active {
        -webkit-transform: translate(43%, -109%);
    -ms-transform: translate(43%, -109%);
    transform: translate(43%, -109%)}
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_wrap .cover .st0.type02.active {
        -webkit-transform: translate(133%, -119%);
    -ms-transform: translate(133%, -119%);
    transform: translate(133%, -119%)}
}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .kakushi {
    display: none !important;
    fill: #191b22;
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    -webkit-transition: -webkit-clip-path 0.5s;
    transition: -webkit-clip-path 0.5s;
    -o-transition: clip-path 0.5s;
    transition: clip-path 0.5s;
    transition: clip-path 0.5s, -webkit-clip-path 0.5s}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .kakushi.type01.active {
    -webkit-clip-path: polygon(100% 100%, 100% 0%, 100% 100%, 100% 100%);
    clip-path: polygon(100% 100%, 100% 0%, 100% 100%, 100% 100%);
    -webkit-transition-timing-function: cubic-bezier(0.42, 0, 1, 1);
    -o-transition-timing-function: cubic-bezier(0.42, 0, 1, 1);
    transition-timing-function: cubic-bezier(0.42, 0, 1, 1)}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .kakushi.type02.active {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 100% 0%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 100% 0%);
    -webkit-transition-timing-function: cubic-bezier(0, 0, 0.58, 1);
    -o-transition-timing-function: cubic-bezier(0, 0, 0.58, 1);
    transition-timing-function: cubic-bezier(0, 0, 0.58, 1)}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .beta {
    fill: #191b22}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .line {
    stroke: #ad1c21;
    stroke-width: 1px;
    fill: transparent;
    -webkit-transition: stroke-dasharray 1.0s;
    -o-transition: stroke-dasharray 1.0s;
    transition: stroke-dasharray 1.0s}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .line.type01 {
    stroke-dasharray: 0 540}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .line.type01.active {
    stroke-dasharray: 180 540}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .line.type02 {
    stroke-dasharray: 0 1080}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .line.type02.active {
    stroke-dasharray: 360 1080}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .line.type03 {
    stroke-dasharray: 0 1080}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_wrap .cover .line.type03.active {
    stroke-dasharray: 360 1080}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_link {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    opacity: 0 !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: right;
    object-position: right}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_link {
        -o-object-position: bottom;
    object-position: bottom}
}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_link:nth-child(2n) {
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_link:nth-child(odd) {
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_link.active {
    opacity: 1 !important;
    -webkit-transform: scale(1.08);
    -ms-transform: scale(1.08);
    transform: scale(1.08)}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_pager {
    position: absolute;
    bottom: 0.8rem;
    left: 35%;
    z-index: 6}
    @media print,
screen and (min-width:461px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_pager {
        -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)}
}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_pager {
        bottom: 0;
    -webkit-transform: translateY(50%);
    -ms-transform: translateY(50%);
    transform: translateY(50%)}
}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_pager button {
    width: 0.08rem;
    height: 0.2rem;
    position: relative;
    display: inline-block;
    vertical-align: top}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_pager button {
        width: 0.04rem;
    height: 0.09rem}
}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_pager button+button {
    margin-left: 0.16rem}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_pager button+button {
        margin-left: 0.08rem}
}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_pager button:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #444457;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    -webkit-transform: skewX(45deg);
    -ms-transform: skewX(45deg);
    transform: skewX(45deg);
    -webkit-transition: background-color .3s;
    -o-transition: background-color .3s;
    transition: background-color .3s}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_pager button.active:before,
.no-touchevents .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_pager button:hover:before {
    background-color: #ad1c21}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_pager button.active {
    cursor: default;
    pointer-events: none}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_pager button.active:before {
    background-color: #ad1c21}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_imgpager {
    margin-top: 10px;
    text-align: center}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_imgpager_btn {
    width: 90px;
    height: 100px;
    position: relative;
    display: inline-block;
    vertical-align: top;
    cursor: pointer;
    -webkit-transition: opacity 0.2s;
    -o-transition: opacity 0.2s;
    transition: opacity 0.2s}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_imgpager_btn {
        width: 30px;
    height: 30px}
}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_imgpager_btn:after {
    content: "";
    position: absolute;
    display: block;
    top: 3px;
    left: 3px;
    right: 3px;
    bottom: 3px;
    border: 2px solid #FFF;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    opacity: 0;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_imgpager_btn+.photogallery01_btn {
    margin-left: 10px}
    @media screen and (max-width:460px) {
    .mv_sec .mv_wrap [data-slidephotofade].type01 .slidephotofade_imgpager_btn+.photogallery01_btn {
        margin-left: 0}
}

.no-touchevents .mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_imgpager_btn:hover {
    opacity: 0.6}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_imgpager_btn.active {
    cursor: default;
    pointer-events: none}

.mv_sec .mv_wrap [
    data-slidephotofade].type01 .slidephotofade_imgpager_btn.active:after {
    opacity: 1}

.service_sec {
    position: relative;
    padding: 1.2rem 0 2.4rem 0;
    background-color: #191b22;
    z-index: 6}
    @media screen and (max-width:460px) {
    .service_sec {
        padding: 0.7rem 0}
}

.service_sec .video_wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden}

.service_sec .video_wrap:
    after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #09090d;
    width: 100%;
    height: 100%;
}

.service_sec .video_wrap .video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transition: opacity .5s;
    -o-transition: opacity .5s;
    transition: opacity .5s}

.service_sec .video_wrap .video.load_ok {
    opacity: 1}

.not-ie .service_sec .video_wrap .video {
    -o-object-fit: cover;
    object-fit: cover}

.service_sec .txt_box {
    position: relative;
    max-width: 1100px;
    padding: 0 0.4rem;
    margin: 0 auto}
    @media screen and (max-width:460px) {
    .service_sec .txt_box {
        padding: 0 0.3rem}
}

.service_sec .txt_box .catch {
    font-size: 0.4rem;
    font-weight: 700;
    line-height: 2.05882;
    letter-spacing: 0.1em;
    color: #7D7D7D;
    margin-top: 0.1rem;
}
    @media screen and (max-width:460px) {
    .service_sec .txt_box .catch {
        font-size: 0.21rem;
    line-height: 1.66667;
    margin-top: 0.35rem}
}

.service_sec .txt_box .txt {
    font-size: 0.2rem;
    font-weight: 500;
    line-height: 2;
    color: #1D1D1D;
    width: 90%;
    max-width: 820px;
}
    @media screen and (max-width:460px) {
    .service_sec .txt_box .txt {
        font-size: 0.14rem;
    line-height: 2;
    margin-top: 0.16rem}
}

.service_sec .txt_box .mod_link_btn {
    margin: 0.75rem 0 0 0}
    @media screen and (max-width:460px) {
    .service_sec .txt_box .mod_link_btn {
        margin: 0.45rem auto 0 auto}
}

.safe_sec {
    padding: .7rem 0;
    position: relative;
    background-color: #222329}
    @media screen and (max-width:460px) {
    .safe_sec {
        padding: 0.6rem 0}
}

.safe_sec .cnt_wrap {
    padding: 0 0.4rem;
    max-width: 1100px;
    margin: 0 auto}
    @media screen and (max-width:460px) {
    .safe_sec .cnt_wrap {
        padding: 0;
    position: relative;
    left: -0.3rem}
}

.safe_sec .cnt_wrap .txt_box {
    position: relative;
    background-color: rgba(0, 0, 0, 0.5);
}
    @media print,
screen and (min-width:461px) {
    .safe_sec .cnt_wrap .txt_box {
        padding: 0.8rem 0.8rem 1.2rem 0.8rem;
    }
}
    @media screen and (max-width:460px) {
    .safe_sec .cnt_wrap .txt_box {
        padding: 0.625rem 0.5rem 1.35rem 0.5rem;
    }
}

.safe_sec .cnt_wrap .txt_box .lines {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%}

.safe_sec .cnt_wrap .txt_box .lines .bottom,
.safe_sec .cnt_wrap .txt_box .lines .left,
.safe_sec .cnt_wrap .txt_box .lines .right,
.safe_sec .cnt_wrap .txt_box .lines .top {
    position: absolute;
    background-color: #A5A5A5;
    -webkit-transition: 1.0s;
    -o-transition: 1.0s;
    transition: 1.0s}

.safe_sec .cnt_wrap .txt_box .lines .top {
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0)}

.safe_sec .cnt_wrap .txt_box .lines .top.active {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1)}

.safe_sec .cnt_wrap .txt_box .lines .left {
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0)}

.safe_sec .cnt_wrap .txt_box .lines .left.active {
    -webkit-transform: scaleY(1);
    -ms-transform: scaleY(1);
    transform: scaleY(1)}

.safe_sec .cnt_wrap .txt_box .lines .right {
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0)}

.safe_sec .cnt_wrap .txt_box .lines .right.active {
    -webkit-transform: scaleY(1);
    -ms-transform: scaleY(1);
    transform: scaleY(1)}

.safe_sec .cnt_wrap .txt_box .lines .bottom {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0)}

.safe_sec .cnt_wrap .txt_box .lines .bottom.active {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1)}

.safe_sec .cnt_wrap .txt_box .en_txt {
    font-size: 0.28rem;
    line-height: 1.5;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    letter-spacing: 0.1em;
    margin-top: 0.24rem}
    @media screen and (max-width:460px) {
    .safe_sec .cnt_wrap .txt_box .en_txt {
        font-size: 0.16rem;
    line-height: 1.3125;
    margin-top: 0.16rem}
}

.safe_sec .cnt_wrap .txt_box .txt {
    font-size: 0.4rem;
    font-weight: 700;
    line-height: 2.05882;
    letter-spacing: 0.1em;
    color: #7D7D7D;
    margin-top: 0.1rem;
}
    @media screen and (max-width:460px) {
    .safe_sec .cnt_wrap .txt_box .txt {
        font-size: 0.21rem;
    line-height: 1.66667;
    margin-top: 0.25rem}
}

.safe_sec .cnt_wrap .txt_box .txt_sub {
    font-size: 0.2rem;
    font-weight: 500;
    line-height: 2;
    position: relative;
    z-index: 1}
    @media screen and (max-width:460px) {
    .safe_sec .cnt_wrap .txt_box .txt_sub {
        font-size: 0.14rem;
    line-height: 2;
    margin-top: 0.16rem}
}
    @media print,
screen and (min-width:461px) {
    .safe_sec .cnt_wrap .txt_box .mod_link_btn {
        margin-top: 0.6rem}
}
    @media screen and (max-width:460px) {
    .safe_sec .cnt_wrap .txt_box .mod_link_btn {
        position: absolute;
    bottom: 0.5rem;
    left: calc(50% + 0.3rem);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)}
}

.safe_sec .cnt_wrap .txt_box .safe_img_01 {
    position: absolute;
    top: 0.8rem;
    right: -1rem;
    width: 6.1rem}
    @media screen and (max-width:460px) {
    .safe_sec .cnt_wrap .txt_box .safe_img_01 {
        top: 0.5rem;
    right: -0.3rem;
    width: calc(100% - 0.3rem)}
}

.lineup_sec {
    padding: 1.2rem 0 2.7rem 0;
    background-color: #191b22;
    position: relative;
    overflow: hidden}
    @media screen and (max-width:460px) {
    .lineup_sec {
        padding: 0.625rem 0 .85rem 0;
    }
}

.lineup_sec:
    before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, right top, from(#000000), to(transparent));
    background: -webkit-linear-gradient(left, #000000, transparent);
    background: -o-linear-gradient(left, #000000, transparent);
    background: linear-gradient(to right, #000000, transparent);
}

.lineup_sec .txt_box {
    padding: 0 0.4rem;
    max-width: 1100px;
    margin: 0 auto;
    position: relative;
    z-index: 3}
    @media screen and (max-width:460px) {
    .lineup_sec .txt_box {
        padding: 0 0.3rem}
}

.lineup_sec .txt_box .title
    img {
    height: 0.58rem}
    @media screen and (max-width:460px) {
    .lineup_sec .txt_box .title img {
        height: 0.36rem}
}

.lineup_sec .txt_box .catch {
    font-size: 0.4rem;
    font-weight: 700;
    line-height: 1.76471;
    letter-spacing: 0.1em;
    color: #7D7D7D;
    margin-top: 0.1rem;
}
    @media screen and (max-width:460px) {
    .lineup_sec .txt_box .catch {
        font-size: 0.21rem;
    line-height: 1.52381;
    margin-top: 0.32rem}
}

.lineup_sec .txt_box .mod_link_btn {
    margin: 0.64rem 0 0 0}
    @media screen and (max-width:460px) {
    .lineup_sec .txt_box .mod_link_btn {
        margin: 0.45rem auto 0 auto}
}

.lineup_sec .img_deco_box {
    position: absolute;
    top: 0;
    left: 50%;
    max-width: 1100px;
    height: 100%;
    width: 100%}
    @media print,
screen and (min-width:461px) {
    .lineup_sec .img_deco_box {
        -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)}
}
    @media screen and (max-width:460px) {
    .lineup_sec .img_deco_box {
        left: 0}
}

.lineup_sec .img_deco_box .bg_01,
.lineup_sec .img_deco_box .bg_02,
.lineup_sec .img_deco_box .bg_03,
.lineup_sec .img_deco_box .img_car,
.lineup_sec .img_deco_box .img_car_bg {
    position: absolute;
    pointer-events: none}

.lineup_sec .img_deco_box .img_car_bg {
    top: 0;
    left: -4.9rem;
    z-index: 2}
    @media print,
screen and (min-width:461px) {
    .lineup_sec .img_deco_box .img_car_bg {
        height: 100%}
}
    @media screen and (max-width:460px) {
    .lineup_sec .img_deco_box .img_car_bg {
        top: 0;
    left: 0;
    width: 100%}
}

.lineup_sec .img_deco_box .bg_01 {
    right: -600px;
    opacity: 0;
    z-index: 0}

.lineup_sec .img_deco_box .bg_01.active {
    right: 0;
    opacity: 1;
    -webkit-transition: 1.0s;
    -o-transition: 1.0s;
    transition: 1.0s}
    @media print,
screen and (min-width:461px) {
    .lineup_sec .img_deco_box .bg_01 {
        top: 0;
    height: 100%;
    width: 50vw;
    background-color: #09090d;
    -webkit-transform: translateX(90%);
    -ms-transform: translateX(90%);
    transform: translateX(90%)}
}
    @media print,
screen and (min-width:1366px) and (max-width:1439px) {
    .lineup_sec .img_deco_box .bg_01 {
        -webkit-transform: translateX(80%);
    -ms-transform: translateX(80%);
    transform: translateX(80%)}
}
    @media print,
screen and (min-width:1280px) and (max-width:1365px) {
    .lineup_sec .img_deco_box .bg_01 {
        -webkit-transform: translateX(70%);
    -ms-transform: translateX(70%);
    transform: translateX(70%)}
}
    @media print,
screen and (min-width:461px) and (max-width:1279px) {
    .lineup_sec .img_deco_box .bg_01 {
        -webkit-transform: translateX(60%);
    -ms-transform: translateX(60%);
    transform: translateX(60%)}
}
    @media screen and (max-width:460px) {
    .lineup_sec .img_deco_box .bg_01 {
        width: 100%;
    height: 2.875rem;
    bottom: 0}
}

.lineup_sec .img_deco_box .bg_01:
    before {
    content: '';
    position: absolute;
    left: -4.8rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 7.8rem 4.8rem;
    border-color: transparent transparent #09090d transparent}
    @media print,
screen and (min-width:461px) {
    .lineup_sec .img_deco_box .bg_01:before {
        top: 0}
}
    @media screen and (max-width:460px) {
    .lineup_sec .img_deco_box .bg_01:before {
        bottom: 0;
    left: 0.875rem;
    border-width: 0 0 4.5rem 100vw}
}

.lineup_sec .img_deco_box .bg_02 {
    z-index: 1;
    opacity: 0}

.lineup_sec .img_deco_box .bg_02.active {
    opacity: 1;
    -webkit-transition: 1.0s ease 0.2s;
    -o-transition: 1.0s ease 0.2s;
    transition: 1.0s ease 0.2s}
    @media print,
screen and (min-width:461px) {
    .lineup_sec .img_deco_box .bg_02 {
        top: 0;
    right: -6.8rem;
    height: 100%;
    width: 50vw;
    background-color: #ad1c21;
    -webkit-transform: translateX(90%);
    -ms-transform: translateX(90%);
    transform: translateX(90%)}

    .lineup_sec .img_deco_box .bg_02.active {
    right: -8rem}
}
    @media print,
screen and (min-width:1440px) and (max-width:1620px) {
    .lineup_sec .img_deco_box .bg_02 {
        -webkit-transform: translateX(80%);
    -ms-transform: translateX(80%);
    transform: translateX(80%)}

    .lineup_sec .img_deco_box .bg_02.active {
    right: -7.5rem}
}
    @media print,
screen and (min-width:1366px) and (max-width:1439px) {
    .lineup_sec .img_deco_box .bg_02 {
        -webkit-transform: translateX(80%);
    -ms-transform: translateX(80%);
    transform: translateX(80%)}

    .lineup_sec .img_deco_box .bg_02.active {
    right: -7rem}
}
    @media print,
screen and (min-width:1280px) and (max-width:1365px) {
    .lineup_sec .img_deco_box .bg_02 {
        -webkit-transform: translateX(70%);
    -ms-transform: translateX(70%);
    transform: translateX(70%)}

    .lineup_sec .img_deco_box .bg_02.active {
    right: -6.9rem}
}
    @media print,
screen and (min-width:461px) and (max-width:1279px) {
    .lineup_sec .img_deco_box .bg_02 {
        -webkit-transform: translateX(60%);
    -ms-transform: translateX(60%);
    transform: translateX(60%)}

    .lineup_sec .img_deco_box .bg_02.active {
    right: -6.8rem}
}
    @media screen and (max-width:460px) {
    .lineup_sec .img_deco_box .bg_02 {
        width: 100%;
    height: 2.875rem;
    bottom: 0;
    right: -2.8rem}

    .lineup_sec .img_deco_box .bg_02.active {
    right: -0.3rem}
}

.lineup_sec .img_deco_box .bg_02:
    before {
    content: '';
    position: absolute;
    left: -4.8rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 7.8rem 4.8rem;
    border-color: transparent transparent #ad1c21 transparent}
    @media print,
screen and (min-width:461px) {
    .lineup_sec .img_deco_box .bg_02:before {
        top: 0}
}
    @media screen and (max-width:460px) {
    .lineup_sec .img_deco_box .bg_02:before {
        bottom: 0;
    left: 2.575rem;
    border-width: 0 0 4.5rem 100vw}
}

.lineup_sec .img_car {
    position: absolute;
    pointer-events: none;
    right: 0;
    z-index: 3}
    @media print,
screen and (min-width:461px) {
    .lineup_sec .img_car {
        top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    height: calc(100% - 0.5rem)}
}
    @media screen and (max-width:460px) {
    .lineup_sec .img_car {
        bottom: 0.65rem;
    right: 0;
    width: calc(100% - 0.3rem)}
}

.flow_sec {
    padding: 1.1rem 0 2rem 0;
    background-color: #191b22}
    @media screen and (max-width:460px) {
    .flow_sec {
        padding: 0.7rem 0}
}

.flow_sec .video_wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden}

.flow_sec .video_wrap:
    after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #09090d;
    width: 100%;
    height: 100%;
    opacity: .7}

.flow_sec .video_wrap .video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s}

.flow_sec .video_wrap .video.load_ok {
    opacity: 1}

.not-ie .flow_sec .video_wrap .video {
    -o-object-fit: cover;
    object-fit: cover}

.flow_sec .txt_box {
    max-width: 1100px;
    padding: 0 0.4rem;
    margin: 0 auto;
    position: relative}
    @media screen and (max-width:460px) {
    .flow_sec .txt_box {
        padding: 0 0.3rem}
}

.flow_sec .txt_box .title
    img {
    height: 0.58rem}
    @media screen and (max-width:460px) {
    .flow_sec .txt_box .title img {
        height: 0.37rem}
}

.flow_sec .txt_box .catch,
.company_sec .txt_box .catch {
    font-size: 0.4rem;
    font-weight: 700;
    line-height: 1.76471;
    letter-spacing: 0.1em;
    color: #B3B3B3;
    margin-top: 0.1rem;
}
    @media screen and (max-width:460px) {

    .flow_sec .txt_box .catch,
    .company_sec .txt_box .catch {
        font-size: 0.21rem;
    line-height: 1.66667;
    margin-top: 0.1rem;
    }
}

.flow_sec .txt_box .txt,
.lineup_sec .txt_box .txt {
    font-size: 0.2rem;
    font-weight: 500;
    line-height: 2}
    @media screen and (max-width:460px) {

    .flow_sec .txt_box .txt,
    .lineup_sec .txt_box .txt {
        font-size: 0.14rem;
    line-height: 2;
    margin-top: 0.2rem}
}

.flow_sec .txt_box .mod_link_btn {
    margin: 0.75rem 0 0 0}
    @media screen and (max-width:460px) {
    .flow_sec .txt_box .mod_link_btn {
        margin: 0.45rem auto 0 auto}
}

.uservoice_sec {
    padding: .7rem 0;
    position: relative}
    @media print,
screen and (min-width:461px) {
    .uservoice_sec:before {
        content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left bottom, left top, from(#000000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000000, transparent);
    background: -o-linear-gradient(bottom, #000000, transparent);
    background: linear-gradient(to top, #000000, transparent);
    }
}
    @media screen and (max-width:460px) {
    .uservoice_sec {
        padding: 0.5rem 0 0 0}
}

.uservoice_sec .cnt_wrap {
    padding: 0 0.4rem;
    max-width: 1345px;
    margin: 0 auto;
    width: 96%;
}
    @media screen and (max-width:460px) {
    .uservoice_sec .cnt_wrap {
        padding: 0;
    position: relative;
    left: -0.3rem}
}

.uservoice_sec .cnt_wrap .txt_box {
    position: relative;
    background-color: rgba(255, 255, 255, .8);
}
    @media print,
screen and (min-width:461px) {
    .uservoice_sec .cnt_wrap .txt_box {
        padding: 1rem 0.8rem 0.8rem 0.8rem}
}
    @media screen and (max-width:460px) {
    .uservoice_sec .cnt_wrap .txt_box {
        padding: 0.825rem 0.3rem 0.825rem 0.55rem;
    }
}

.uservoice_sec .cnt_wrap .txt_box .lines {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%}

.uservoice_sec .cnt_wrap .txt_box .lines .bottom,
.uservoice_sec .cnt_wrap .txt_box .lines .left,
.uservoice_sec .cnt_wrap .txt_box .lines .right,
.uservoice_sec .cnt_wrap .txt_box .lines .top {
    position: absolute;
    background-color: #A5A5A5;
    -webkit-transition: 1.0s;
    -o-transition: 1.0s;
    transition: 1.0s}

.uservoice_sec .cnt_wrap .txt_box .lines .top {
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0)}

.uservoice_sec .cnt_wrap .txt_box .lines .top.active {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1)}

.uservoice_sec .cnt_wrap .txt_box .lines .left {
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0)}

.uservoice_sec .cnt_wrap .txt_box .lines .left.active {
    -webkit-transform: scaleY(1);
    -ms-transform: scaleY(1);
    transform: scaleY(1)}

.uservoice_sec .cnt_wrap .txt_box .lines .right {
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0)}

.uservoice_sec .cnt_wrap .txt_box .lines .right.active {
    -webkit-transform: scaleY(1);
    -ms-transform: scaleY(1);
    transform: scaleY(1)}

.uservoice_sec .cnt_wrap .txt_box .lines .bottom {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0)}

.uservoice_sec .cnt_wrap .txt_box .lines .bottom.active {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1)}

.uservoice_sec .cnt_wrap .txt_box .cmntit01,
.safe_sec .cnt_wrap .txt_box .cmntit01,
.service_sec .txt_box .cmntit01,
.flow_sec .txt_box .cmntit01,
.lineup_sec .txt_box .cmntit01,
.company_sec .txt_box .cmntit01 {
    position: relative;
    z-index: 1;
    font-size: .88rem;
    color: #000000;
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
}
    @media screen and (max-width:460px) {
    .uservoice_sec .cnt_wrap .txt_box .cmntit01 img {
        height: 0.97rem}
}

.uservoice_sec .cnt_wrap .txt_box .txt {
    font-size: 0.34rem;
    font-weight: bold;
    line-height: 1.76471;
    letter-spacing: 0.1em;
    color: #7D7D7D;
    margin-top: 0.1rem;
    position: relative;
    z-index: 1}
    @media screen and (max-width:460px) {
    .uservoice_sec .cnt_wrap .txt_box .txt {
        font-size: 0.21rem;
    line-height: 1.66667;
    margin-top: 0.15rem}
}

.uservoice_sec .cnt_wrap .txt_box .mod_link_btn {
    margin-left: auto;
}

.uservoice_sec .cnt_wrap .txt_box .mod_link_btn:
    before,
.service_sec .mod_link_btn:before,
.lineup_sec .mod_link_btn:before {
    background-color: #000;
}

.uservoice_sec .cnt_wrap .txt_box .mod_link_btn
    span.btn_txt,
.service_sec .mod_link_btn span.btn_txt,
.lineup_sec .mod_link_btn span.btn_txt {
    color: #fff;
}

.uservoice_sec .cnt_wrap .txt_box .mod_link_btn:
    hover:before,
.service_sec .mod_link_btn:hover:before,
.lineup_sec .mod_link_btn:hover:before {
    background-color: #ad1c21;
}
    @media print,
screen and (min-width:461px) {
    .uservoice_sec .cnt_wrap .txt_box .mod_link_btn {
        margin-top: 0.74rem}
}
    @media screen and (max-width:460px) {
    .uservoice_sec .cnt_wrap .txt_box .mod_link_btn {
        position: absolute;
    bottom: 0.5rem;
    left: calc(50% + 0.3rem);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)}
}

.uservoice_sec .cnt_wrap .txt_box .uservoice_img_01 {
    position: absolute;
    top: 0.8rem;
    right: -1rem;
    width: 6.1rem}
    @media screen and (max-width:460px) {
    .uservoice_sec .cnt_wrap .txt_box .uservoice_img_01 {
        top: 0.5rem;
    right: -0.3rem;
    width: calc(100% - 0.3rem)}
}

.company_sec {
    padding: 1rem 0;
    background-color: #444444;
    position: relative}
    @media screen and (max-width:460px) {
    .company_sec {
        padding: 0.75rem 0 0.825rem 0}
}

.company_sec .cnt_wrap {
    padding: 0 0.4rem;
    max-width: 1100px;
    margin: 0 auto}
    @media print,
screen and (min-width:461px) {
    .company_sec .cnt_wrap {
        display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between}
}
    @media screen and (max-width:460px) {
    .company_sec .cnt_wrap {
        padding: 0 0.3rem}
}
    @media print,
screen and (min-width:461px) {
    .company_sec .cnt_wrap .txt_box {
        width: calc(100% - 5.9rem)}
}

.company_sec .cnt_wrap .txt_box .title
    img {
    height: 0.58rem}
    @media screen and (max-width:460px) {
    .company_sec .cnt_wrap .txt_box .title img {
        height: 0.37rem}
}

.company_sec .cnt_wrap .txt_box .company_info {
    font-size: 0.2rem;
    line-height: 2.32;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
    @media screen and (max-width:460px) {
    .company_sec .cnt_wrap .txt_box .company_info {
        font-size: 0.14rem;
    line-height: 2.07143;
    margin-top: 0.35rem}
}

.company_sec .cnt_wrap .txt_box .company_info .space_01 {
    line-height: 1.68}
    @media screen and (max-width:460px) {
    .company_sec .cnt_wrap .txt_box .company_info .space_01 {
        line-height: 1.5}
}

.company_sec .cnt_wrap .txt_box
    table {
    margin-top: 0.42rem;
    width: 100%;
}

.company_sec .cnt_wrap .txt_box .company_info
    dt,
.company_sec .cnt_wrap .txt_box .company_info .company_info_title {
    display: inline-block;
    width: 1.12rem}
    @media screen and (max-width:460px) {

    .company_sec .cnt_wrap .txt_box .company_info dt,
    .company_sec .cnt_wrap .txt_box .company_info .company_info_title {
        width: 0.775rem;
    }
}

.company_sec .cnt_wrap .txt_box .company_info
    dt.company_info_title,
.company_sec .cnt_wrap .txt_box .company_info .company_info_title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between}

.company_sec .cnt_wrap .txt_box .company_info
    dd,
.company_sec .cnt_wrap .txt_box .company_info td:not(.company_info_title) {
    display: inline-block;
    width: calc(100% - 1.12rem - 0.7rem);
    margin-left: 0.28rem;
    padding-left: 0.32rem;
    position: relative}
    @media screen and (max-width:460px) {

    .company_sec .cnt_wrap .txt_box .company_info dd,
    .company_sec .cnt_wrap .txt_box .company_info td:not(.company_info_title) {
        width: calc(100% - 0.775rem - 0.275rem);
    margin-left: 0.075rem;
    padding-left: 0.2rem}
}

.company_sec .cnt_wrap .txt_box .company_info
    dd:before,
.company_sec .cnt_wrap .txt_box .company_info td:not(.company_info_title):before {
    content: '：';
    position: absolute;
    top: 0;
    left: 0;
    font-size: 0.2rem}
    @media screen and (max-width:460px) {

    .company_sec .cnt_wrap .txt_box .company_info dd:before,
    .company_sec .cnt_wrap .txt_box .company_info td:not(.company_info_title):before {
        font-size: 0.14rem}
}

.company_sec .cnt_wrap .txt_box .mod_link_btn {
    margin: 0.4rem 0 0 0}
    @media screen and (max-width:460px) {
    .company_sec .cnt_wrap .txt_box .mod_link_btn {
        margin: 0.25rem auto 0 auto}
}

.company_sec .cnt_wrap .googlemap_box {
    width: 5.1rem;
    height: 5.1rem;
    position: relative}
    @media screen and (max-width:460px) {
    .company_sec .cnt_wrap .googlemap_box {
        position: relative;
    width: 100%;
    height: 0;
    padding-top: 88.8888%;
    margin-top: 0.5rem}
}

.company_sec .cnt_wrap .googlemap_box .inview_googlemap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%}

.company_sec .cnt_wrap .googlemap_box .inview_googlemap
    iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_item {
    display: flex;
    display: inline-flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
    position: relative;
}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_l {}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r {
    width: calc(100% - 250px);
}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r
    ul {}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r
    ul li {
    margin-bottom: 0.3rem;
    padding-bottom: 0.3rem;
    border-bottom: 1px solid #FFFFFF;
}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r
    ul li>a {
    display: flex;
    display: inline-flex;
    flex-wrap: wrap;
    width: 100%;
    align-items: center;
}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r
    ul li>a p.date {
    font-size: 0.2rem;
    color: #000000;
    font-weight: 500;
}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r
    ul li>a p.cat {
    background: #00000080;
    font-size: 0.2rem;
    color: #fff;
    padding: 2px 14px;
    margin: 0 30px;
}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r
    ul li>a p.tit {
    font-size: 0.2rem;
    color: #000;
    font-weight: 700;
}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r
    ul li>a:hover {}

.uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r
    ul li>a:hover p.tit {
    color: #ad1c21;
}


.safe_sec .cnt_wrap .txt_box .cmntit01,
.flow_sec .txt_box .cmntit01,
.company_sec .txt_box .cmntit01 {
    color: #fff;
}

.lineup_sec .txt_box .txt {
    color: #000000;
    width: 90%;
    max-width: 410px;
}

.flow_sec .mod_link_btn:
    before {
    background-color: rgba(0, 0, 0, .5);
}

.flow_sec .mod_link_btn
    span {
    color: #fff;
}

.flow_sec .mod_link_btn:
    hover:before {
    background-color: #ad1c21;
}
    @media screen and (max-width:992px) {

    .uservoice_sec .cnt_wrap .txt_box .cmntit01,
    .safe_sec .cnt_wrap .txt_box .cmntit01,
    .service_sec .txt_box .cmntit01,
    .flow_sec .txt_box .cmntit01,
    .lineup_sec .txt_box .cmntit01,
    .company_sec .txt_box .cmntit01 {
        font-size: .5rem;
    }

    .uservoice_sec .cnt_wrap .txt_box .uservoice_sec_l,
    .uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r {
    display: block;
    width: 100%;
    }

    .uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r {
    margin-top: 30px;
    padding-bottom: 100px;
    }

    .uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r ul li>a p.cat {
    margin: 0 10px;
    font-size: .15rem;
    }

    .uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r ul li>a p.date {
    font-size: .15rem;
    }

    .uservoice_sec .cnt_wrap .txt_box .uservoice_sec_r ul li>a p.tit {
    margin-top: 6px;
    }

    .company_sec .cnt_wrap .txt_box table {
    margin-top: .1rem;
    }

    .company_sec .cnt_wrap .txt_box .company_info:
    last-child td:nth-child(1) {
        display: block;
    width: 100%;
    }
};
}

.mod_sec_box .mod_title_box .mod_page_title_sub img {
    width: auto
}

@media print,
screen and (min-width:461px) {
    .mod_sec_box .mod_title_box .mod_page_title_sub img {
        height: 58px
    }
}

@media screen and (max-width:460px) {
    .mod_sec_box .mod_title_box .mod_page_title_sub img {
        height: 40px
    }
}

.flowbottomSP {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.45rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    -webkit-transition: padding-bottom 0.1s, -webkit-transform 1.0s;
    transition: padding-bottom 0.1s, -webkit-transform 1.0s;
    -o-transition: transform 1.0s, padding-bottom 0.1s;
    transition: transform 1.0s, padding-bottom 0.1s;
    transition: transform 1.0s, padding-bottom 0.1s, -webkit-transform 1.0s;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    z-index: 999;
    background-color: #ad1c21
}

.flowbottomSP:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% / 2);
    height: 100%;
    background-color: #191b22;
    z-index: -1
}

.flowbottomSP:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: calc(100% / 2);
    height: 100%;
    background-color: #a22c2a;
    z-index: -1
}

.flowbottomSP.active {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none
}

.flowbottomSP a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: calc(100% / 2);
    height: 100%
}

.flowbottomSP span {
    font-size: .12rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    margin-left: 0.08rem;
    position: relative
}

.flowbottomSP span .icon {
    width: 0.16rem;
    position: absolute;
    top: 0;
    left: -0.08rem;
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%)
}

.flowbottomSPinview {
    position: absolute;
    top: 105vh;
    bottom: 0;
    pointer-events: none;
    width: 0
}

.pagetopbtn {
    position: fixed;
    bottom: 60px;
    right: 10px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    -webkit-filter: opacity(0%);
    filter: opacity(0%);
    pointer-events: none;
    -webkit-transition: opacity 0.2s, -webkit-filter 1.0s;
    transition: opacity 0.2s, -webkit-filter 1.0s;
    -o-transition: filter 1.0s, opacity 0.2s;
    transition: filter 1.0s, opacity 0.2s;
    transition: filter 1.0s, opacity 0.2s, -webkit-filter 1.0s;
    background-color: #fff;
    z-index: 999
}

.pagetopbtn:before {
    content: "";
    display: block;
    position: absolute;
    top: 7px;
    bottom: 0;
    right: 0;
    left: 0;
    width: 12px;
    height: 12px;
    margin: auto;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.pagetopbtn.active {
    -webkit-filter: opacity(100%);
    filter: opacity(100%);
    pointer-events: auto
}

.no-touchevents .pagetopbtn:hover {
    opacity: 0.6
}

.pagetopbtnInview {
    position: absolute;
    top: 200vh;
    bottom: 0;
    pointer-events: none;
    width: 0
}

.mod_header .row01 {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 1000;
    -webkit-transition: background-color .5s;
    -o-transition: background-color .5s;
    transition: background-color .5s
}

@media print,
screen and (min-width:461px) {
    .mod_header .row01 {
        padding: 0 0.6rem
    }
}

.mod_header .row01.mv_over {
    background-color: #191b22
}

.mod_header .row01.under_page {
    background-color: #191b22
}

.mod_header .row01 .in {
    width: 100%;
    max-width: 1320px;
    height: 100px;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    position: relative
}

@media screen and (max-width:460px) {
    .mod_header .row01 .in {
        height: 60px
    }
}

.mod_header .row01 .logo {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s
}

@media screen and (max-width:460px) {
    .mod_header .row01 .logo {
        left: 0.2rem;
        top: 0.3rem;
    }
}

.mod_header .row01 .logo .logoimg {
    width: 1.6rem
}

@media screen and (max-width:460px) {
    .mod_header .row01 .logo .logoimg {
        width: 1.5rem;
    }
}

.mod_header .row01 .logo:hover {
    opacity: .5
}

.mod_header .row01 .one {
    display: inline-block;
    font-size: 0.16rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 2.625;
    letter-spacing: 0.08em;
    position: relative;
    -webkit-transition: color 0.5s;
    -o-transition: color 0.5s;
    transition: color 0.5s
}

.mod_header .row01 .one:hover {
    color: #ad1c21
}

.mod_header .row01 .one.current {
    color: #ad1c21
}

.mod_header .row01 .one+.one {
    margin-left: 0.2rem
}

@media screen and (max-width:460px) {
    .mod_header .row02 {
        background-color: #0f1016;
        position: fixed;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        top: 0;
        left: 0;
        width: 100%;
        bottom: 0;
        opacity: 0;
        z-index: 1000;
        pointer-events: none;
        -webkit-transition: opacity 0.4s;
        -o-transition: opacity 0.4s;
        transition: opacity 0.4s;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .spmenuopen .mod_header .row02 {
        opacity: 1;
        pointer-events: auto
    }

    .mod_header .row02 .in {
        width: 100%
    }

    .mod_header .row02 .link {
        margin-top: 20px
    }

    .mod_header .row02 .one {
        font-size: 0.2rem;
        color: #FFF;
        font-weight: bold;
        display: block;
        text-align: center
    }

    .mod_header .row02 .one+.one {
        margin-top: 0.2rem
    }
}

@media screen and (max-width:460px) {
    .mod_header .menu {
        width: 0.28rem;
        height: 0.18rem;
        position: fixed;
        top: 0.2rem;
        right: 0.15rem;
        z-index: 1000
    }

    .mod_header .menu .open .bar {
        position: absolute;
        top: 0;
        bottom: 0;
        height: 1.5px;
        margin: auto;
        background-color: #a22c2a;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s
    }

    .mod_header .menu .open .bar:first-child {
        top: -16px;
        left: 0;
        width: 50%
    }

    .mod_header .menu .open .bar:nth-child(2) {
        left: 0;
        right: 0;
        width: 100%
    }

    .mod_header .menu .open .bar:nth-child(3) {
        bottom: -16px;
        right: 0;
        width: 50%
    }

    .mod_header .menu .close .bar {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        width: 0;
        height: 1.5px;
        margin: auto;
        background-color: #a22c2a;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s
    }

    .mod_header .menu .close .bar:first-child {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    .mod_header .menu .close .bar:nth-child(2) {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .spmenuopen .mod_header .menu .open .bar {
        width: 0
    }

    .spmenuopen .mod_header .menu .close .bar {
        width: 24px
    }
}

.mod_footer {
    position: relative;
    z-index: 10;
}

@media screen and (max-width:460px) {
    .mod_footer.not_form {
        padding-bottom: 0.44rem
    }
}

.mod_footer .nav_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #0f1016
}

@media print,
screen and (min-width:461px) {
    .mod_footer .nav_wrap {
        background-color: #000000;
        background-size: cover;
        padding: 1rem 60px 0.95rem 60px;
    }
}

@media screen and (max-width:460px) {
    .mod_footer .nav_wrap .logo_box {
        width: 100%;
        text-align: center;
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
}

.mod_footer .nav_wrap .logo_box .link_logo {
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s
}

@media print,
screen and (min-width:461px) {
    .mod_footer .nav_wrap .logo_box .link_logo .img {
        width: 4.93rem;
    }
}

@media screen and (max-width:460px) {
    .mod_footer .nav_wrap .logo_box .link_logo .img {
        width: 1.69rem
    }
}

.mod_footer .nav_wrap .logo_box .link_logo:hover {
    opacity: .5
}

.mod_footer .nav_wrap .sns_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

@media print,
screen and (min-width:461px) {
    .mod_footer .nav_wrap .sns_box {
        margin-top: 0.6rem
    }
}

@media screen and (max-width:460px) {
    .mod_footer .nav_wrap .sns_box {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 100%;
        padding: 0.3rem 0 0.4rem 0
    }
}

.mod_footer .nav_wrap .sns_box .link_sns {
    position: relative
}

.mod_footer .nav_wrap .sns_box .link_sns+.link_sns {
    margin-left: 0.2rem
}

@media screen and (max-width:460px) {
    .mod_footer .nav_wrap .sns_box .link_sns+.link_sns {
        margin-left: 0.4rem
    }
}

.mod_footer .nav_wrap .sns_box .link_sns:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0.4rem;
    height: 0.4rem;
    background-size: cover;
    pointer-events: none;
    opacity: 0;
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s
}

.mod_footer .nav_wrap .sns_box .link_sns:first-of-type::before {
    background-image: url(../image/insta_hover.png)
}

.mod_footer .nav_wrap .sns_box .link_sns:nth-of-type(2):before {
    background-image: url(../image/youtube_hover.png)
}

.mod_footer .nav_wrap .sns_box .link_sns:nth-of-type(3):before {
    background-image: url(../image/line_hover.png)
}

.mod_footer .nav_wrap .sns_box .link_sns:hover:before {
    opacity: 1
}

.mod_footer .nav_wrap .sns_box .link_sns .img {
    width: 0.4rem
}

@media print,
screen and (min-width:461px) {
    .mod_footer .nav_wrap .link_box {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-top: 0.66rem;
    }
}

@media screen and (max-width:460px) {
    .mod_footer .nav_wrap .link_box {
        width: 100%;
        background-image: url(../image/foot_bg_sp.png);
        background-size: cover
    }
}

.mod_footer .nav_wrap .link_box .one {
    font-size: 0.2rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    line-height: 2.625;
    letter-spacing: 0.1em;
    position: relative;
    -webkit-transition: color 0.5s;
    -o-transition: color 0.5s;
    transition: color 0.5s;
    color: #fff;
}

@media print,
screen and (min-width:461px) {
    .mod_footer .nav_wrap .link_box .one {
        display: inline-block
    }

    .mod_footer .nav_wrap .link_box .one+.one {
        margin-left: 0.24rem
    }
}

@media screen and (max-width:460px) {
    .mod_footer .nav_wrap .link_box .one {
        font-size: 0.17rem;
        line-height: 1.23529;
        text-align: center;
        display: block;
        width: 100%;
        padding: 0.2rem 0;
        border-top: 1px solid #25272d;
        position: relative
    }

    .mod_footer .nav_wrap .link_box .one:last-of-type {
        border-bottom: 1px solid #25272d
    }

    .mod_footer .nav_wrap .link_box .one:before {
        content: '';
        position: absolute;
        top: 50%;
        right: 0.2rem;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 0.09rem;
        height: 0.15rem;
        background-image: url(../image/arrow1.png);
        background-size: cover
    }
}

.mod_footer .nav_wrap .link_box .one:hover {
    color: #ad1c21
}

.mod_footer .nav_wrap .link_box .one.current {
    color: #ad1c21;
}

.mod_footer .copylight_wrap {
    background-color: #000000;
    border-top: 1px solid #fff;
    padding-top: 20px;
    padding-bottom: 20px;
}

.mod_footer .copylight_wrap .link_wrap {
    max-width: 10rem;
    margin: 0 auto;
}

@media screen and (max-width:460px) {
    .mod_footer .copylight_wrap .link_wrap {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

.mod_footer .copylight_wrap .link_wrap .link_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

@media screen and (max-width:460px) {
    .mod_footer .copylight_wrap .link_wrap .link_box {
        display: none
    }
}

.mod_footer .copylight_wrap .link_wrap .link_box .one {
    display: inline-block;
    font-size: 0.12rem;
    font-weight: 500;
    line-height: 4.16667;
    letter-spacing: 0.05em;
    color: #fff;
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s
}

.mod_footer .copylight_wrap .link_wrap .link_box .one+.one {
    margin-left: 0.26rem
}

.mod_footer .copylight_wrap .link_wrap .link_box .one:hover {
    opacity: .5
}

.mod_footer .copylight_wrap .link_wrap .copylight_txt {
    font-size: 0.15rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    line-height: 1.75;
    color: #fff;
    text-align: center;
}

@media screen and (max-width:460px) {
    .mod_footer .copylight_wrap .link_wrap .copylight_txt {
        font-size: 0.1rem;
        line-height: 2.1
    }
}

.pankuzu {
    max-width: 1100px;
    width: calc(100% - 0.8rem);
    position: absolute;
    top: 1.2rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 5;
    padding: 0 0.4rem
}

.pankuzu .link {
    position: relative
}

.pankuzu .link+.link {
    margin-left: 10px
}

.pankuzu .link:not(:last-of-type) {
    padding-right: 0.14rem
}

.pankuzu .link:not(:last-of-type):before {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0.05rem;
    height: 0.08rem;
    background-image: url(../image/arrow1.png);
    background-size: cover
}

.pankuzu .link .linkin {
    font-size: 0.12rem;
    letter-spacing: 0.05em;
    color: #ad1c21;
    text-decoration: underline
}

.no-touchevents .pankuzu .link .linkin:hover {
    text-decoration: none
}

.pankuzu .link:last-of-type .linkin {
    text-decoration: none;
    color: #e0e0e0
}

.no-touchevents .pankuzu .link:last-of-type .linkin:hover {
    text-decoration: underline
}

.mod_link01[href] {
    color: #ad1c21;
    text-decoration: underline
}

.no-touchevents .mod_link01[href]:hover {
    text-decoration: none
}

[data-pararax01] {
    position: relative
}

[data-pararax01-inview] {
    position: absolute !important;
    top: 120px;
    bottom: 120px;
    left: 0;
    right: 0;
    width: 0%;
    margin-left: auto;
    margin-right: auto;
    pointer-events: none;
    opacity: 0
}

@media print,
screen and (min-width:461px) and (max-height:800px) {
    [data-pararax01-inview] {
        top: 120px;
        bottom: 120px
    }
}

@media print,
screen and (min-width:461px) and (max-height:650px) {
    [data-pararax01-inview] {
        top: 50px;
        bottom: 50px
    }
}

@media screen and (max-width:460px) {
    [data-pararax01-inview] {
        top: 100px;
        bottom: 100px
    }
}

[data-pararax01-opacity01] {
    opacity: 0 !important
}

[data-pararax01-opacity01].active {
    opacity: 1 !important;
    -webkit-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1)
}

[data-pararax01-opacity02] {
    opacity: 0 !important;
    -webkit-transform: translateX(-20px) !important;
    -ms-transform: translateX(-20px) !important;
    transform: translateX(-20px) !important
}

[data-pararax01-opacity02].active {
    opacity: 1 !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    -webkit-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1)
}

@media screen and (max-width:460px) {

    .safe_sec .mod_link_btn[data-pararax01-opacity02],
    .uservoice_sec .mod_link_btn[data-pararax01-opacity02] {
        -webkit-transform: translateX(calc(-50% - 20px)) !important;
        -ms-transform: translateX(calc(-50% - 20px)) !important;
        transform: translateX(calc(-50% - 20px)) !important
    }

    .safe_sec .mod_link_btn[data-pararax01-opacity02].active,
    .uservoice_sec .mod_link_btn[data-pararax01-opacity02].active {
        -webkit-transform: translateX(-50%) !important;
        -ms-transform: translateX(-50%) !important;
        transform: translateX(-50%) !important
    }
}

[data-pararax01-opacity03] {
    opacity: 0 !important;
    -webkit-transform: translateX(20px) !important;
    -ms-transform: translateX(20px) !important;
    transform: translateX(20px) !important
}

[data-pararax01-opacity03].active {
    opacity: 1 !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    -webkit-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1)
}

@media print,
screen and (min-width:461px) {
    [data-pararax01-opacity03].img_car {
        -webkit-transform: translateX(20px) translateY(-50%) !important;
        -ms-transform: translateX(20px) translateY(-50%) !important;
        transform: translateX(20px) translateY(-50%) !important
    }

    [data-pararax01-opacity03].img_car.active {
        -webkit-transform: translateY(-50%) !important;
        -ms-transform: translateY(-50%) !important;
        transform: translateY(-50%) !important
    }
}

[data-pararax01-opacity04] {
    opacity: 0 !important;
    -webkit-transform: translateY(20px) !important;
    -ms-transform: translateY(20px) !important;
    transform: translateY(20px) !important
}

[data-pararax01-opacity04].active {
    opacity: 1 !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    -webkit-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1)
}

[data-pararax01-opacity05] {
    opacity: 0 !important;
    -webkit-transform: translateY(-20px) !important;
    -ms-transform: translateY(-20px) !important;
    transform: translateY(-20px) !important
}

[data-pararax01-opacity05].active {
    opacity: 1 !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    -webkit-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1)
}

[data-pararax01-opacity06] {
    opacity: 0 !important;
    -webkit-transform: scale(0.8) !important;
    -ms-transform: scale(0.8) !important;
    transform: scale(0.8) !important
}

[data-pararax01-opacity06].active {
    opacity: 1 !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    -webkit-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1)
}

[data-pararax01-opacity07] {
    opacity: 0 !important;
    -webkit-transform: scale(1.2) !important;
    -ms-transform: scale(1.2) !important;
    transform: scale(1.2) !important
}

[data-pararax01-opacity07].active {
    opacity: 1 !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    -webkit-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-transform 0.8s cubic-bezier(0.515, 0.005, 0.505, 1)
}

[data-pararax01-opacity08] {
    -webkit-perspective: 1000px;
    perspective: 1000px
}

[data-pararax01-opacity08] [data-pararax01-opacity08-target] {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    opacity: 0;
    -webkit-transform: rotateY(720deg) scale(0.2);
    transform: rotateY(720deg) scale(0.2);
    overflow: hidden
}

[data-pararax01-opacity08] [data-pararax01-opacity08-target]:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 0.5;
    -webkit-clip-path: polygon(0px 0%, 100% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0px 0%, 100% 0%, 100% 100%, 0% 100%)
}

[data-pararax01-opacity08].active [data-pararax01-opacity08-target] {
    opacity: 1;
    -webkit-transform: rotateY(0deg) scale(1);
    transform: rotateY(0deg) scale(1);
    -webkit-transition: 1.6s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: 1.6s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: 1.6s cubic-bezier(0.515, 0.005, 0.505, 1)
}

[data-pararax01-opacity08].active [data-pararax01-opacity08-target]:after {
    left: 100%;
    -webkit-transition: 0.8s cubic-bezier(0.515, 0.005, 0.505, 1) 0.7s;
    -o-transition: 0.8s cubic-bezier(0.515, 0.005, 0.505, 1) 0.7s;
    transition: 0.8s cubic-bezier(0.515, 0.005, 0.505, 1) 0.7s;
    -webkit-clip-path: polygon(50px 0%, 100% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(50px 0%, 100% 0%, 100% 100%, 0% 100%)
}

[data-pararax01-opacity09] {
    -webkit-clip-path: polygon(0% 50%, 100% 50%, 100% 50%, 0% 50%);
    clip-path: polygon(0% 50%, 100% 50%, 100% 50%, 0% 50%);
    opacity: 0
}

[data-pararax01-opacity09].active {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    opacity: 1;
    -webkit-transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: clip-path 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: clip-path 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: clip-path 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 0.8s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 0.8s cubic-bezier(0.515, 0.005, 0.505, 1)
}

[data-pararax01-opacity10] {
    -webkit-clip-path: polygon(0% 0%, 100% -100%, -100% 100%);
    clip-path: polygon(0% 0%, 100% -100%, -100% 100%);
    opacity: 0
}

[data-pararax01-opacity10].active {
    -webkit-clip-path: polygon(0% 0%, 200% 0%, 0% 200%);
    clip-path: polygon(0% 0%, 200% 0%, 0% 200%);
    opacity: 1;
    -webkit-transition: opacity 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 1.6s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 1.6s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1)
}

[data-pararax01-opacity11] {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
    opacity: 0
}

[data-pararax01-opacity11].active {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    opacity: 1;
    -webkit-transition: opacity 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: opacity 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1);
    -o-transition: clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 1.6s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 1.6s cubic-bezier(0.515, 0.005, 0.505, 1);
    transition: clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), opacity 1.6s cubic-bezier(0.515, 0.005, 0.505, 1), -webkit-clip-path 1.6s cubic-bezier(0.515, 0.005, 0.505, 1)
}

.pararax01_pattern01 {
    font-size: 20px;
    line-height: 2;
    font-weight: bold
}

.pararax01_pattern01 .pararax01_pattern01_underline {
    background-image: -webkit-gradient(linear, left top, left bottom, from(#f00), to(#f00));
    background-image: -webkit-linear-gradient(#f00 0%, #f00 100%);
    background-image: -o-linear-gradient(#f00 0%, #f00 100%);
    background-image: linear-gradient(#f00 0%, #f00 100%);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 0% 2px
}

.pararax01_pattern01.active .pararax01_pattern01_underline {
    background-size: 100% 2px;
    -webkit-transition: background-size 1.6s cubic-bezier(0.2, 0, 0.18, 1);
    -o-transition: background-size 1.6s cubic-bezier(0.2, 0, 0.18, 1);
    transition: background-size 1.6s cubic-bezier(0.2, 0, 0.18, 1)
}

[data-pararax01-photo01a],
[data-pararax01-photo01b],
[data-pararax01-photo02a],
[data-pararax01-photo02b],
[data-pararax01-photo03a],
[data-pararax01-photo03b],
[data-pararax01-photo03c],
[data-pararax01-photo04a],
[data-pararax01-photo04b] {
    display: inline-block;
    position: relative;
    opacity: 0;
    font-size: 0
}

.ie [data-pararax01-photo01a]>*,
.ie [data-pararax01-photo01b]>*,
.ie [data-pararax01-photo02a]>*,
.ie [data-pararax01-photo02b]>*,
.ie [data-pararax01-photo03a]>*,
.ie [data-pararax01-photo03b]>*,
.ie [data-pararax01-photo03c]>*,
.ie [data-pararax01-photo04a]>*,
.ie [data-pararax01-photo04b]>* {
    opacity: 0
}

[data-pararax01-photo01a].active,
[data-pararax01-photo01b].active,
[data-pararax01-photo02a].active,
[data-pararax01-photo02b].active,
[data-pararax01-photo03a].active,
[data-pararax01-photo03b].active,
[data-pararax01-photo03c].active,
[data-pararax01-photo04a].active,
[data-pararax01-photo04b].active {
    opacity: 1
}

.ie [data-pararax01-photo01a].active>*,
.ie [data-pararax01-photo01b].active>*,
.ie [data-pararax01-photo02a].active>*,
.ie [data-pararax01-photo02b].active>*,
.ie [data-pararax01-photo03a].active>*,
.ie [data-pararax01-photo03b].active>*,
.ie [data-pararax01-photo03c].active>*,
.ie [data-pararax01-photo04a].active>*,
.ie [data-pararax01-photo04b].active>* {
    opacity: 1
}

.edge [data-pararax01-photo01a],
.edge [data-pararax01-photo01b],
.edge [data-pararax01-photo02a],
.edge [data-pararax01-photo02b],
.edge [data-pararax01-photo03a],
.edge [data-pararax01-photo03b],
.edge [data-pararax01-photo03c],
.edge [data-pararax01-photo04a],
.edge [data-pararax01-photo04b],
.ie [data-pararax01-photo01a],
.ie [data-pararax01-photo01b],
.ie [data-pararax01-photo02a],
.ie [data-pararax01-photo02b],
.ie [data-pararax01-photo03a],
.ie [data-pararax01-photo03b],
.ie [data-pararax01-photo03c],
.ie [data-pararax01-photo04a],
.ie [data-pararax01-photo04b] {
    background-color: #FFF;
    opacity: 1 !important
}

[data-pararax01-photo01a] svg,
[data-pararax01-photo01b] svg,
[data-pararax01-photo02a] svg,
[data-pararax01-photo02b] svg,
[data-pararax01-photo03a] svg,
[data-pararax01-photo03b] svg,
[data-pararax01-photo03c] svg,
[data-pararax01-photo04a] svg,
[data-pararax01-photo04b] svg {
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none
}

[data-pararax01-photo01a] rect,
[data-pararax01-photo01b] rect,
[data-pararax01-photo02a] rect,
[data-pararax01-photo02b] rect,
[data-pararax01-photo03a] rect,
[data-pararax01-photo03b] rect,
[data-pararax01-photo03c] rect,
[data-pararax01-photo04a] rect,
[data-pararax01-photo04b] rect {
    fill: #FFF
}

[data-pararax01-photo01a].init,
[data-pararax01-photo01b].init,
[data-pararax01-photo02a].init,
[data-pararax01-photo02b].init,
[data-pararax01-photo03a].init,
[data-pararax01-photo03b].init,
[data-pararax01-photo03c].init,
[data-pararax01-photo04a].init,
[data-pararax01-photo04b].init {
    opacity: 1
}

.cmntit01 span {
    display: inline-block;
    position: relative;
    -webkit-clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%)
}

.cmntit01 span.active {
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)
}

.cmntit01 span.active svg * {
    -webkit-transition: 0.6s ease 0.2s;
    -o-transition: 0.6s ease 0.2s;
    transition: 0.6s ease 0.2s;
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)
}

.ie .cmntit01 span.active svg * {
    opacity: 1
}

.cmntit01 img {
    display: block;
    height: 0.59rem;
    width: auto
}

@media screen and (max-width:460px) {
    .cmntit01 img {
        height: 0.37rem
    }
}

.cmntit01 svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.cmntit01 svg * {
    fill: #FFF;
    -webkit-clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%)
}

.ie .cmntit01 svg * {
    opacity: 0
}

@media screen and (max-width:992px) {
    .mod_sec_box .mod_title_box .mod_page_title_sub {
        font-size: 0.5rem;
    }
}
