﻿@charset "UTF-8";
@import "base.css";
@import "fonts.css";
@import "style_sp.css";
/*==========================================================================*/
/*//////////////////////////////////////////////////////////////////////////*/
/*//////                                                              //////*/
/*//////  Copyright (C) 2009 株式会社フリーセル All Rights Reserved.  //////*/
/*//////                                                              //////*/
/*//////////////////////////////////////////////////////////////////////////*/
/*                                                                          */
/*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/
/*==========================================================================*/
/*                           Common-Setting                                 */
/*==========================================================================*/
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
    font-size: 190%;
    -webkit-text-size-adjust: none;
}
img {
    vertical-align: bottom;
}
h1 {} /* Header内で設定 */
h2 {}
h3 {}
h4 {}
a {
    color: #195CB1;
}
a:hover, a:active {
    color: #195CB1;
    text-decoration: none;
}
a:visited {}
ul {}
li {}
dl {}
dt {}
dd {}
table {
    width: 100%
}
th, td {}
th {}
td {}
p {
    margin: 0 0 2.43em;
}
p, dd, td, th, li {
    line-height: 2.43em;
}
.section {
    padding: 0 0 55px 0;
}
.section .section {
    padding: 0 0 35px;
}
.image_l {
    float: left;
    margin: 0 30px 20px 0;
}
.image_r {
    float: right;
    margin: 0 0 20px 20px;
}

#toTop {
    border: none;
    bottom: 25px;
    cursor: pointer;
    overflow: hidden;
    position: fixed;
    right: -5px;
    text-decoration: none;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s linear;
    text-align: center;
    z-index: 99;
    margin-bottom: 0px;
    text-indent: -9999px;
    display: block;
}
.box_contact_pc_fix {
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s linear;
    z-index: 99;
    position: fixed;
}
#toTop {
    background: url("../images/to_top.png") no-repeat center top;
    width: 104px;
    height: 105px;
}
#toTop a {
    display: block;
    width: 104px;
    height: 105px;
}
#toTop.show, .box_contact_pc_fix.show {
    opacity: 1;
    visibility: visible;
}
.b_copy {
    font-size: 300%;
    font-weight: bold;
    margin: 20px auto -10px !important;
}
.tag_copy {
    font-size: 250%;
    font-weight: bold;
    margin: 20px auto -10px !important;
    font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}
/* add
------------------------------------------------------------------------*/
/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/
html {
    background: none;
}
body {
    color: #000;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
}
#wrapper {
    min-width: 1260px;
    max-width: 1920px;
    margin: 0 auto;
    overflow: hidden;
}
.inner {
    width: 1720px;
    margin: 0 auto;
}
/*==========================================================================*/
/*                               Header                                     */
/*==========================================================================*/
#logo {
    margin-bottom: 0px;
    padding-top: 13px;
}
#header h1 {
    font-size: 12px;
    color: #333;
    display: none;
}
#header_t {
    height: 130px;
    margin: 0 auto;
    position: fixed;
    width: 100%;
    background: #fff;
    top: 0;
    z-index: 99;
    left: 0;
    right: 0;
}
/*#index #header_t {
	opacity:0;
	position: absolute;
}*/
#index #header_t.acitve {
    opacity: 1;
    position: fixed;
}
#header_t .inner {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header_link_t {
    margin-bottom: 0px;
    display: flex;
    padding-top: 20px;
}
.header_link_t a {
    border: 1px #040000 solid;
    width: 150px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #040000;
    font-weight: 500;
    font-size: 15px;
    letter-spacing: 1px;
    box-sizing: border-box;
    padding-right: 10px;
    position: relative;
    transition: all 0.3s;
    padding-top: 1px;
}
.header_link_t a:before {
    position: absolute;
    content: "";
    width: 7px;
    height: 7px;
    border-top: 1px #e7211a solid;
    border-right: 1px #e7211a solid;
    transform: rotate(45deg);
    right: 11px;
    top: calc(50% - 4px);
    transition: all 0.3s;
}
#logo img {
    width: 100% !important;
    max-width: 200px !important;
}
@media all and (-ms-high-contrast: none) {
    .header_link_t a {
        border: 1px #040000 solid;
        width: 150px;
        height: 34px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-decoration: none;
        color: #040000;
        font-weight: 500;
        font-size: 15px;
        letter-spacing: 1px;
        box-sizing: border-box;
        padding-right: 10px;
        position: relative;
        transition: all 0.3s;
        padding-top: 1px;
        padding-bottom: 10px;
    }
    .header_link_t a:before {
        position: absolute;
        content: "";
        width: 7px;
        height: 7px;
        border-top: 1px #e7211a solid;
        border-right: 1px #e7211a solid;
        transform: rotate(45deg);
        right: 11px;
        top: calc(50% - 4px);
        transition: all 0.3s;
    }
}
.header_link_t a + a {
    margin-left: 18px;
}
.header_r {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-bottom: 0px;
}
/*==========================================================================*/
/*                               TOPINFO                                    */
/*==========================================================================*/
#top_info {
    margin-top: 130px;
}
#index #top_info {
/*    height: 860px;*/
    width: 100%;
    background-size: cover;
    position: relative;
    overflow: hidden;
}
#index #top_info > video {
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#index #top_info .inner {
    height: 100%;
    position: relative;
    position: absolute;
    top: 0;
}
div.iframe_wrapper{
  position: relative;
  width: 100%; /* ここは適時編集してください（px指定してmin-widthと組み合わせるなり） */
}

div.iframe_wrapper::before {
  content:'';
  display: block;
    padding-top: 56.25%;
}
div.iframe_wrapper iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.box_h2 {
    height: 100%;
    box-sizing: border-box;
    padding-top: 100px;
    padding-left: 100px;
    position: relative;
}
.under #top_info .inner:before {
    left: -100%;
    position: absolute;
    content: "";
    width: 300px;
    height: 1px;
    background: #e7211a;
    /* top: 113px; */
    transition: all 1.2s;
}
.index_bnr01 {
    position: absolute;
    margin-bottom: 0px;
    z-index: 99;
    bottom: 200px;
    right: 0px;
}
.index_bnr01 a {
    width: 260px;
    height: 86px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #000309;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    font-size: 18px;
    box-sizing: border-box;
    padding-left: 50px;
    border: 5px #ff281c solid;
    line-height: 1.6;
    position: relative;
    text-align: center;
    transition: all 0.3s
}
.index_bnr01 a:before {
    position: absolute;
    content: "";
    background: url(../images/index_bnr01.png) no-repeat left top/72px;
    width: 72px;
    height: 70px;
    left: -15px;
    top: 6px;
}
.index_bnr01 a::after {
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    border-top: 5px #fff solid;
    border-right: 5px #fff solid;
    transform: rotate(45deg);
    right: 10px;
    top: calc(50% - 4px);
    transition: all 0.3s;
}
.index_bnr02 {
    bottom: 100px;
}
.index_bnr02 a {
    font-size: 17px;
    padding-left: 35px;
}
.index_bnr02 a:before {
    position: absolute;
    content: "";
    background: url(../images/index_bnr02.png) no-repeat left top/82px;
    width: 82px;
    height: 100%;
    left: -15px;
    top: 2px;
}

.index_bnr03 a {
    font-size: 17px;
    padding-left: 35px;
}
.index_bnr03 a::before {
    position: absolute;
    content: "";
    background: url(../images/index_bnr01.png) no-repeat left top/72px;
        background-size: 72px;
    width: 72px;
    height: 70px;
    left: -15px;
    top: 6px;
}

.index_bnr05 {
    bottom: 200px;
}

.index_bnr05 a {
    font-size: 17px;
    padding-left: 35px;
}

.index_bnr05 a::before {
    position: absolute;
    content: "";
    background: url(../images/youtube_logo.png) no-repeat left top/72px;
    background-size: 60px;
    width: 60px;
    height: 70px;
    left: 6px;
    top: 16px;
}

.index_bnr04 a:before {
    background: initial;
}
.header_bnr a::after {
    position: absolute;
    content: "";
    width: 7px;
    height: 7px;
    border-top: 3px #fff solid;
    border-right: 3px #fff solid;
    transform: rotate(45deg);
    right: 7px;
    top: calc(50% - 4px);
    transition: all 0.3s;
}
@media screen and (min-width: 751px) {
    .sweetlink {
        text-decoration: none;
    }
    .under #top_info .inner:before {
        top: 0;
        bottom: 0;
        margin: auto 0;
    }
}
.under #top_info .inner.active:before {
    left: -225px;
}
.under #top_info .inner.active:before {
    left: -130px;
}
.box_h2 > h2, .box_h2 {
    display: flex;
    flex-direction: column;
}
.box_h2 > h2 .h2_en {
    font-family: 'Noto Serif JP', serif;
    font-weight: 100;
    font-size: 24px;
    letter-spacing: 1.5px;
    margin-bottom: 10px;
}
.box_h2 > h2 .h2_jp, .h2_txt {
    font-weight: bold;
}
.box_h2_G > h2, .box_h2_G {
    display: flex;
    flex-direction: column;
}
.box_h2_G > h2 .h2_en_G {
    font-family: 'Noto Serif JP', serif;
    font-weight: 100;
    font-size: 24px;
    letter-spacing: 1.5px;
    margin-bottom: 10px;
}
.box_h2_G > h2 .h2_jp_G, .h2_txt_G {
    font-weight: bold;
}
.box_h2 > h2 .h2_jp {
    font-size: 52px;
    line-height: 1.44;
    letter-spacing: 2.2px;
    margin-bottom: 30px
}
.box_h2 > h2 .h2_jp > span {
    font-size: 80%;
}
.h2_txt {
    letter-spacing: 2px;
}
.box_h2_G > h2 .h2_jp_G {
    font-size: 52px;
    line-height: 1.44;
    letter-spacing: 2.2px;
    margin-bottom: 30px
}
/*.box_h2_G > h2 .h2_jp_G > span {
  font-size: 80%;
}*/
.h2_txt_G {
    letter-spacing: 2px;
}
.box_h2 > h2 .font_a {
    font-size: 70px;
    margin-bottom: 0px
}
.box_h2 .font_b {
    font-size: 230%;
}
.box_h2_G > h2 .font_a {
    font-size: 70px;
    margin-bottom: 0px
}
.box_h2_G > h2 .font_a .color_red {
    color: #f00;
}
/*==========================================================================*/
/*                               gnavi                                   */
/*==========================================================================*/
#gnavi {
    width: 1000px;
    margin-right: 20px;
    margin-top: 21px;
}
#gnavi > ul > li > a:before {
    left: -12px;
    transform: rotate(30deg);
}
#gnavi > ul > li:last-child > a:after {
    right: -20px;
    transform: rotate(30deg);
}
#gnavi > ul {
    width: 100%;
    display: flex;
    justify-content: space-between;
}
#gnavi > ul > li {
    text-align: center;
    transition: all 0.3s linear;
}
#gnavi ul li {
    line-height: 1.9;
}
#gnavi > ul > li.sub01 > a {
    cursor: default;
    position: relative;
}
#gnavi > ul > li > a {
    white-space: nowrap;
}
#gnavi > ul > li .gnavi_tt {
    font-size: 16px;
    border-bottom: 1px #e7211a solid;
}
.gnavi_tt {
    margin-bottom: 15px;
}
#gnavi li a {
    text-decoration: none;
    letter-spacing: 0.7px;
    color: #fff;
    font-size: 14px;
    font-weight: 300;
}
#gnavi > ul > li > ul > li > a {
    transition: all 0.3s linear;
}
#gnavi > ul > li > a {
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 25px;
    width: 100%;
    position: relative;
    box-sizing: border-box;
    z-index: 1;
    line-height: 1.68;
    font-weight: 500;
    font-size: 18px;
    color: #040000;
    letter-spacing: 1.5px;
    transition: all 0.3s;
    display: flex;
    flex-direction: column;
}
#gnavi > ul > li > ul {
    display: flex;
    flex-wrap: wrap;
}
#gnavi > ul > li > ul > li {
    width: 32%;
    margin-right: 2%;
}
#gnavi > ul > li > ul > li:last-child {
    margin-bottom: 0px;
}
#gnavi > ul > li > div {
    width: 100%;
    padding: 25px 100px;
}
#gnavi > ul > li:nth-child(4) > div > ul:nth-child(2), #gnavi > ul > li:nth-child(5) > div > ul:nth-child(2) {
    /* #gnavi > ul > li:nth-child(6) > div > ul:nth-child(2) { */
    padding-top: 40px;
}
@-webkit-keyframes scrolltop {
    0% {
        transform: translateY(-130px);
        opacity: 0;
        transition: ease-in-out;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}
@-moz-keyframes scrolltop {
    0% {
        transform: translateY(-90px);
        opacity: 0;
        transition: ease-in-out;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}
@keyframes scrolltop {
    0% {
        transform: translateY(-90px);
        transform-origin: center;
        opacity: 0;
        transition: ease-in-out;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}
/*==========================================================================*/
/*                               box01                                   */
/*==========================================================================*/
#box01 {
    height: 630px;
}
#box01 .inner:before {
    position: absolute;
    content: "";
    width: 1360px;
    height: 100%;
    background: #f4f8fb;
    top: 0;
    left: 460px;
    z-index: -1;
}
#box01 .inner {
    height: 100%;
    display: flex;
    position: relative;
    z-index: 1;
}
.box01_list {
    display: flex;
}
.box01_list > li:nth-child(1) {
    padding-left: 80px;
    width: 520px;
    flex-shrink: 0;
    padding-top: 102px;
}
.box01_list > li:nth-child(2) {
    padding-left: 120px;
    padding-top: 185px;
}
.box01_txt {
    width: 920px;
}
/*==========================================================================*/
/*                               box02                                   */
/*==========================================================================*/
#box02 {
    margin-top: 300px;
}
.box02_list {
    display: flex;
    margin-bottom: 160px;
    position: relative;
    margin-top: -136px;
    z-index: 9;
}
.box02_list li {
    width: 50%;
    align-items: flex-start;
    display: block;
}
.box02_list li:nth-child(1) .box02_img {
    position: relative;
}
.box02_list li:nth-child(1) .box02_img:before {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background: #fff;
    right: 0;
    top: 0;
}
.box02_info {
    display: flex;
    flex-direction: column;
}
.box02_img img {
    width: 100%;
    max-width: 100%;
}
.box02_en {
    margin: 0 auto;
    font-size: 152px;
    font-family: 'Noto Serif JP', serif;
    line-height: 0.9;
    text-align: center;
    position: relative;
    top: 43px;
    color: #dfe6f1;
    mix-blend-mode: multiply;
    z-index: 1;
}
.box02_img {
    margin-bottom: 0px;
}
.box02_info {
    width: calc(100% - 200px);
    margin: -60px auto 0;
    background: linear-gradient(-45deg, transparent 0px, transparent 32px, rgba(247, 247, 247, 0.95) 32px, rgba(247, 247, 247, 0.95) 100%);
    position: relative;
    z-index: 1;
    border-top: 2px #ec4d48 solid;
    padding: 60px 80px 63px;
    /*min-height: 500px;*/
    height: 350px;
    box-sizing: border-box;
}
.box02_txt, .box02_info {
    flex-grow: 1;
}
.box02_info .index_btn01 {
    margin-top: auto;
    margin-bottom: 0px;
}
.box02_info .index_btn01 a {
    margin: 0 auto;
}
.box02_txt p {
    line-height: 2.15;
    margin-bottom: 10px;
}
/*==========================================================================*/
/*                               box03                                   */
/*==========================================================================*/
#box03 {
    border-bottom: 1px #fff solid;
}
#box03 .inner, .box03_info {
    display: flex;
}
#box03 .inner {
    align-items: center;
    background: url("../images/index_img_03.jpg")no-repeat center top/cover;
    height: 610px;
}
.box03_info {
    width: 680px;
    height: 410px;
    background: linear-gradient(-45deg, transparent 0px, transparent 32px, rgba(255, 255, 255, 0.90) 32px, rgba(255, 255, 255, 0.90) 100%);
    flex-direction: column;
    justify-content: center;
    padding: 20px 73px 20px 80px;
    box-sizing: border-box;
    border-top: 2px #ec4d48 solid;
}
.box03_en {
    width: 1720px;
    box-sizing: border-box;
    margin: 0 auto;
    font-size: 152px;
    font-family: 'Noto Serif JP', serif;
    line-height: 0.9;
    position: relative;
    top: 40px;
    color: #dfe6f1;
    mix-blend-mode: multiply;
    margin-bottom: 0px;
    padding-left: 50px;
}
/*==========================================================================*/
/*                                 box04                                    */
/*==========================================================================*/
#box04 {
    margin-bottom: 110px;
}
#box04 .index_btn01 a {
    margin: 0 auto;
}
.box04_list {
    display: flex;
    flex-wrap: wrap;
    width: 1720px;
    margin: 0 auto;
}
.box04_list > li {
    width: 50%;
    display: block;
    align-items: flex-start;
    flex-direction: column;
    border-right: 3px #fff solid;
    box-sizing: border-box;
    margin: 50px 0;
}
.box04_list > li:last-child {
    border-right: none;
}
.box04_img {
    margin-bottom: 0px;
}
.box04_img img {
    width: 100%;
    max-width: 100%;
}
.box04_info {
    width: calc(100% - 200px);
    margin: -60px auto 0;
    background: linear-gradient(-45deg, transparent 0px, transparent 32px, rgba(247, 247, 247, 0.95) 32px, rgba(247, 247, 247, 0.95) 100%);
    position: relative;
    z-index: 1;
    border-top: 2px #ec4d48 solid;
    padding: 50px 72px 20px;
    box-sizing: border-box;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    /*min-height: 410px;*/
    height: 350px;
}
.box04_info2 {
    height: 530px;
}
.box04_info3 {
    height: 400px;
}
.box04_info4 {
    height: 400px;
}
.box04_info .index_btn01 {
    margin-bottom: 25px;
    margin-top: auto;
}
.box04_txt {
    letter-spacing: -0.2px;
    margin-bottom: 20px;
    line-height: 1.90 !important;
}
.box04_list > li:nth-child(2) .box04_txt {
    letter-spacing: -0.5px;
}
.box04_en {
    margin-bottom: 0px;
    position: absolute;
    font-size: 38px;
    font-family: 'Noto Serif JP', serif;
    color: #dfe6f1;
    letter-spacing: 1.7px;
    right: -118px;
    top: 166px;
    line-height: 1;
    transform: rotate(90deg);
    width: 315px;
    mix-blend-mode: multiply;
}
.box04_list > li:nth-child(2) .box04_en {
    right: -128px;
}
.box04_list > li:nth-child(3) .box04_en {
    right: -118px;
}
/*==========================================================================*/
/*                               box05                                      */
/*==========================================================================*/
#box05 {
    position: relative;
    background: url("../images/index_bg01.jpg") no-repeat left bottom;
    padding-bottom: 110px;
}
.box05_list {
    display: flex;
    justify-content: space-between;
}
.box05_r > ul {
    display: flex;
    width: 1260px;
}
.box05_r > ul > li {
    flex: 1;
    position: relative;
    border-right: 1px #fff solid;
}
.box05_r > ul > li:last-child {
    border-right: none;
}
.box05_img, .box05_name {
    margin-bottom: 0px;
}
.box05_name {
    position: absolute;
    top: 100px;
    left: 0;
    width: 100px;
    height: 26px;
    line-height: 27px;
    font-size: 18px;
    fill: #FFFFFF;
    letter-spacing: 1px;
    font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    color: #fff;
    margin-bottom: 0px;
    text-align: center;
}
.box05_name_cate01 {
    background:
        linear-gradient(-135deg, transparent 3px, #cb9b53 0) top right, linear-gradient(-45deg, transparent 3px, #cb9b53 0) bottom right;
    background-size: 100% 50%;
    background-repeat: no-repeat;
}
.box05_name_cate02 {
    background:
        linear-gradient(-135deg, transparent 3px, #7bacba 0) top right, linear-gradient(-45deg, transparent 3px, #7bacba 0) bottom right;
    background-size: 100% 50%;
    background-repeat: no-repeat;
}
.box05_name_cate03 {
    background:
        linear-gradient(-135deg, transparent 3px, #cb5b57 0) top right, linear-gradient(-45deg, transparent 3px, #cb5b57 0) bottom right;
    background-size: 100% 50%;
    background-repeat: no-repeat;
}
.box05_img img {
    width: 100%;
    max-width: 100%;
}
.box05_img {
    position: relative;
}
.box05_img:before {
    left: 0;
    top: 0;
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 70px 70px 0 0;
    border-color: #fff transparent transparent transparent;
}
.box05_l {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 105px;
    margin-right: 60px;
}
.box05_txt {
    text-align: center;
    margin-bottom: 33px;
}
/*==========================================================================*/
/*                                   box06                                  */
/*==========================================================================*/
#box06 {
    position: relative;
    background: url("../images/index_bg02.jpg") no-repeat left bottom/cover;
}
#box06 .inner {
    align-items: center;
    height: 100%;
    box-sizing: border-box;
    /*padding-top: 20px;*/
}
#box06 .inner, .box06_list > li:nth-child(2) > dl {
    display: flex;
}
.box06_list {
    width: 1560px;
    margin: 0 auto;
    background: linear-gradient(-45deg, transparent 0px, transparent 32px, rgba(255, 255, 255, 0.95) 32px, rgba(255, 255, 255, 0.95) 100%);
    display: flex;
    justify-content: space-between;
    padding: 51px 130px 5px;
    height: 300px;
    box-sizing: border-box;
    border-top: 2px #ec4d48 solid;
}
.box06_list > li {
    padding-top: 10px;
}
.box06_list > li:nth-child(1) {
    padding-top: 20px;
}
.box06_list > li:nth-child(2) {
    width: 960px;
}
.box06_list > li:nth-child(2) > dl {
    padding: 14px 0 13px;
    border-bottom: 1px #e5e5e5 solid;
}
.box06_list > li:nth-child(2) > dl > dt {
    font-size: 12px;
    flex-shrink: 0;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
}
.box06_list > li:nth-child(2) > dl > dd {
    flex-grow: 1;
}
.box06_list > li:nth-child(2) > dl > dd a, #index .box_2col .news_list dl > dd a {
    color: #3e3a39;
    text-decoration: none;
    position: relative;
    background-image: linear-gradient(180deg, #c7c7c7 1.38%, transparent 2.38%, transparent 50%, #c7c7c7 50%, #c7c7c7 52.38%, transparent 52.38%, transparent 100%);
    background-size: 47.00px 47.00px;
    background-position: top 22px center;
}
/*.box06_list > li:nth-child(2) > dl > dd a:before {
  left: 0;
  bottom: 0px;
  border-bottom: 1px #e5e5e5 solid;
  position: absolute;
  content: "";
  width: 100%;
  transition: all 0.5s;
}
*/
.box06_cate {
    width: 90px;
    height: 26px;
    line-height: 26px;
    font-size: 14px;
    font-weight: 100;
    color: #fff;
    letter-spacing: 1px;
    text-align: center;
    flex-shrink: 0;
    margin-left: 73px;
}
/*サービス*/
.cate02 {
    background:
        linear-gradient(135deg, transparent 3px, #cc6d69 0) top left, linear-gradient(-135deg, transparent 3px, #cc6d69 0) top right, linear-gradient(-45deg, transparent 3px, #cc6d69 0) bottom right, linear-gradient(45deg, transparent 3px, #cc6d69 0) bottom left;
    background-size: 51% 51%;
    background-repeat: no-repeat;
}
/*リコール等*/
.cate03 {
    background:
        linear-gradient(135deg, transparent 3px, #cda466 0) top left, linear-gradient(-135deg, transparent 3px, #cda466 0) top right, linear-gradient(-45deg, transparent 3px, #cda466 0) bottom right, linear-gradient(45deg, transparent 3px, #cda466 0) bottom left;
    background-size: 51% 51%;
    background-repeat: no-repeat;
}
/*その他*/
.cate04 {
    background:
        linear-gradient(135deg, transparent 3px, #8eb4bf 0) top left, linear-gradient(-135deg, transparent 3px, #8eb4bf 0) top right, linear-gradient(-45deg, transparent 3px, #8eb4bf 0) bottom right, linear-gradient(45deg, transparent 3px, #8eb4bf 0) bottom left;
    background-size: 51% 51%;
    background-repeat: no-repeat;
}
/*環境・社会*/
.cate05 {
    background:
        linear-gradient(135deg, transparent 3px, #58a87b 0) top left, linear-gradient(-135deg, transparent 3px, #58a87b 0) top right, linear-gradient(-45deg, transparent 3px, #58a87b 0) bottom right, linear-gradient(45deg, transparent 3px, #58a87b 0) bottom left;
    background-size: 51% 51%;
    background-repeat: no-repeat;
}
/*製品*/
.cate06 {
    background:
        linear-gradient(135deg, transparent 3px, #74a69d 0) top left, linear-gradient(-135deg, transparent 3px, #74a69d 0) top right, linear-gradient(-45deg, transparent 3px, #74a69d 0) bottom right, linear-gradient(45deg, transparent 3px, #74a69d 0) bottom left;
    background-size: 51% 51%;
    background-repeat: no-repeat;
}
/*イベント*/
.cate07 {
    background:
        linear-gradient(135deg, transparent 3px, #b00 0 0) top left, linear-gradient(-135deg, transparent 3px, #b00 0 0) top right, linear-gradient(-45deg, transparent 3px, #b00 0 0) bottom right, linear-gradient(45deg, transparent 3px, #b00 0 0) bottom left;
    background-size: 51% 51%;
    background-repeat: no-repeat;
}
/*メディア*/
.cate08 {
    background:
        linear-gradient(135deg, transparent 3px, #e8724e 0) top left, linear-gradient(-135deg, transparent 3px, #e8724e 0) top right, linear-gradient(-45deg, transparent 3px, #e8724e 0) bottom right, linear-gradient(45deg, transparent 3px, #e8724e 0) bottom left;
    background-size: 51% 51%;
    background-repeat: no-repeat;
}
/*採用*/
.cate09 {
    background:
        linear-gradient(135deg, transparent 3px, #83c47b 0) top left, linear-gradient(-135deg, transparent 3px, #83c47b 0) top right, linear-gradient(-45deg, transparent 3px, #83c47b 0) bottom right, linear-gradient(45deg, transparent 3px, #83c47b 0) bottom left;
    background-size: 51% 51%;
    background-repeat: no-repeat;
}
/*コーポレート*/
.cate10 {
    background:
        linear-gradient(135deg, transparent 3px, #6881a8 0) top left, linear-gradient(-135deg, transparent 3px, #6881a8 0) top right, linear-gradient(-45deg, transparent 3px, #6881a8 0) bottom right, linear-gradient(45deg, transparent 3px, #6881a8 0) bottom left;
    background-size: 51% 51%;
    background-repeat: no-repeat;
    letter-spacing: 0.01em;
}
.box07_list {
    width: 1000px;
    margin: 0 auto 70px;
    background: linear-gradient(-45deg, transparent 0px, transparent 37px, rgba(247, 247, 247, 0.95) 37px, rgba(247, 247, 247, 0.95) 100%);
    display: flex;
    justify-content: space-between;
    padding: 30px;
    box-sizing: border-box;
    border-top: 2px #ec4d48 solid;
    margin-top: -52px;
    position: relative;
    z-index: 99;
}
#box_news, #box_news dl {
    width: 100%;
}
#box_news dl, #box_news dl dd {
    display: flex;
    align-items: center;
}
#box_news dl dd a {
    text-decoration: none;
    color: #333;
    transition: all 0.3s;
}
#box_news dl dt {
    font-size: 12px;
    display: flex;
    align-items: center;
    letter-spacing: 1px;
}
.box07_list .h4_tt05 {
    margin-bottom: 0px;
    line-height: 1.5;
}
/*==========================================================================*/
/*                               BOX08                                      */
/*==========================================================================*/
#box08 {
    padding-bottom: 100px;
}
#box08 .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
}
#box08 .inner .logo {
    width: 400px;
}
#box08 .inner > p {
    line-height: 1.8;
    padding: 20px 0;
    margin-bottom: 0;
}
#box08 .inner a {
    display: flex;
    align-items: center;
    /* text-decoration: none; */
    color: #333;
    font-size: 16px;
}
#box08 .inner a img {
    width: 60px;
    height: auto;
    margin-right: 10px;
}
/*==========================================================================*/
/*                               BOX09                                      */
/*==========================================================================*/
#box09 {
    padding-bottom: 100px;
}
#box09 .bnr_list {
    display: flex;
    justify-content: space-between;
    width: 92%;
    max-width: 730px;
    /*	max-width: 950px;*/
    margin: 0 auto;
}
#box09 .bnr_list li {
    width: 50%;
    margin: 0 10px;
}
#box09 .bnr_list li img {
    width: 220px;
}
#box09 .bnr_list li span img {
    width: 200px;
}
#box09 .bnr_list li a, #box09 .bnr_list li span {
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.4;
    text-align: center;
    color: #333;
    height: 100%;
    box-sizing: border-box;
    flex-direction: column;
    transition: all 0.3s;
}
#box09 .bnr_list li span {
    padding: 10px;
}
#box09 .bnr_list li a {
    text-decoration: none;
    border: 1px solid #000;
    font-weight: bold;
}
/*==========================================================================*/
/*                               BOX10                                      */
/*==========================================================================*/
#box10 {
    padding-bottom: 100px;
}
#box10 .bnr_list {
    display: flex;
    justify-content: space-between;
    width: 92%;
    max-width: 950px;
    margin: 0 auto;
}
#box10 .bnr_list li {
    width: 50%;
    margin: 0 10px;
}
#box10 .bnr_list li img {
    width: 220px;
}
#box10 .bnr_list li:first-child img {
    width: 120px;
}
#box10 .bnr_list li:nth-child(2) img {
    width: 140px;
}
#box10 .bnr_list li a, #box10 .bnr_list li span {
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.4;
    text-align: center;
    color: #333;
    height: 100%;
    box-sizing: border-box;
    flex-direction: column;
    transition: all 0.3s;
}
#box10 .bnr_list li span {
    padding: 10px;
}
#box10 .bnr_list li a {
    /*text-decoration: none;*/
    font-weight: bold;
    margin-top: -10px;
}
/*==========================================================================*/
/*                               BOX11                                     */
/*==========================================================================*/
#box11 {
    padding-bottom: 100px;
}
#box11 .bnr_list {
    display: flex;
    justify-content: space-between;
    width: 92%;
    max-width: 850px;
    margin: 50px auto 0;
}
#box11 .bnr_list li {
    width: 50%;
    margin: 0 10px;
}
/*#box11 .bnr_list li:nth-child(1) {
	padding-left: 110px;
}
#box11 .bnr_list li:nth-child(2) {
	padding-right: 110px;
}
#box11 .bnr_list li img {
    width: 260px;
}*/
#box11 .bnr_list li a, #box11 .bnr_list li span {
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.4;
    text-align: center;
    color: #333;
    height: 100%;
    box-sizing: border-box;
    flex-direction: column;
    transition: all 0.3s;
}
#box11 .bnr_list li span {
    padding: 10px;
}
#box11 .bnr_list li a {
    /*text-decoration: none;*/
    font-weight: bold;
    margin-top: -10px;
}
/*==========================================================================*/
/*                               h2->h5                                 */
/*==========================================================================*/
.h3_tt01, .h4_tt05 {
    color: #231815;
    display: flex;
    flex-direction: column;
    margin-bottom: 80px;
}
.h3_tt01 {
    position: relative;
    margin-bottom: 83px;
}
.h3_tt01_en {
    font-size: 24px;
    font-family: 'Noto Serif JP', serif;
    width: 100%;
    padding-bottom: 20px;
    margin-bottom: 39px;
}
.line {
    border-bottom: 1px #e7211a solid;
    display: block;
    position: absolute;
    left: 0;
    top: 41px;
    width: 0%;
    transition: all 1s;
}
.h3_tt01.active .line {
    width: 100%;
}
.h3_tt01_jp, .h4_tt01, .h4_tt02, .h4_tt03, .h4_tt04_jp, .h4_tt05_jp {}
.h3_tt01_jp {
    font-size: 20px;
    color: #000000;
    letter-spacing: -0.5px;
}
.h3_tt01_jp_lg {
    font-size: 36px;
    font-weight: bold;
    line-height: 1.65;
    letter-spacing: -3px;
    color: #231815;
}
.h3_tt01_jp_lg > span {
    color: #e7211a;
}
.h4_tt01 {
    text-align: center;
    font-size: 36px;
    padding-bottom: 27px;
    font-weight: bold;
    position: relative;
    color: #231815;
    margin-bottom: 20px;
}
.h4_tt02:before, .h4_tt05_en:before, .h4_tt01:before, .h4_tt03:before {
    position: absolute;
    content: "";
    width: 60px;
    height: 1px;
    background: #e7211a;
    left: 0;
    bottom: 0;
}
.h4_tt01:before, .h4_tt03:before {
    right: 0;
    margin: 0 auto;
}
.h4_tt02 {
    font-size: 36px;
    font-weight: bold;
    padding-bottom: 27px;
    margin-bottom: 19px;
    position: relative;
}
.h4_tt03 {
    text-align: center;
    font-weight: bold;
    font-size: 28px;
    position: relative;
    padding-bottom: 22px;
    margin-bottom: 23px;
    color: #231815;
    letter-spacing: 1px;
}
.h4_tt04 {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    color: #040000;
    margin-bottom: 134px;
    margin-left: 66px;
}
.h4_tt04_jp {
    width: 42px;
    font-size: 42px;
    font-weight: bold;
    word-break: break-all;
    padding-right: 14px;
    line-height: 1.05;
    position: relative;
}
#box05.active .h4_tt04_jp:before {
    height: 100%;
}
.h4_tt04_jp:before {
    position: absolute;
    content: "";
    border-right: 1px #c30d23 solid;
    height: 0%;
    top: 0;
    right: 0;
    transition: all 1s;
}
.h4_tt04_jp > span {
    color: #e7211a;
}
.h4_tt04_en, .h4_tt05_en {
    font-family: 'Noto Serif JP', serif;
    position: relative;
}
.h4_tt04_en {
    transform: rotate(90deg);
    font-size: 22px;
    letter-spacing: 1px;
    padding-top: 10px;
    top: 25px;
    right: 7px;
}
.h4_tt05_en {
    font-size: 18px;
    letter-spacing: 1px;
    padding-bottom: 22px;
    margin-bottom: 20px;
}
.h4_tt05 {
    color: #040000;
    margin-bottom: 49px;
    padding-top: 60px;
}
.h4_tt05_jp {
    font-size: 28px;
    letter-spacing: 2px;
}
.h4_tt06 {
    font-size: 36px;
    font-weight: bold;
    margin-top: 30px !important;
    margin-bottom: 30px !important;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
    background: #F6F6F6;
    border-bottom: #e7211a solid 3px;
}
/*==========================================================================*/
/*                               BUTTON                                 */
/*==========================================================================*/
.index_btn a {
    width: 220px;
    height: 46px;
    border: 1px #040000 solid;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 1px;
    /* font-family: 'Noto Serif JP', serif; */
    color: #040000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    transition: all 0.3s;
}
.index_btn a:before {
    position: absolute;
    content: "";
    background: url("../images/arr01.png") no-repeat right top;
    background-size: 38px auto;
    width: 38px;
    height: 8px;
    right: -20px;
    top: calc(50% - 7px);
    animation: slide1 1s ease-in-out infinite;
}
.under #content .index_btn2 a {
    width: 350px;
    margin-right: 70px;
}
@-webkit-keyframes slide1 {
    0%, 100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
    50% {
        -webkit-transform: translate(10px, 0);
        transform: translate(10px, 0);
    }
}
@keyframes slide1 {
    0%, 100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
    50% {
        -webkit-transform: translate(10px, 0);
        transform: translate(10px, 0);
    }
}
/*==========================================================================*/
/*                               footer                                   */
/*==========================================================================*/
#footer {
    position: relative;
}
#footer .inner:before {
    position: absolute;
    content: "";
    height: 100%;
    background: #cdced0;
    top: 0;
    width: 880px;
    left: -100px;
    z-index: -1;
}
#footer .inner {
    display: flex;
    position: relative;
    z-index: 1;
    padding: 70px 0;
}

.footer_t {
    flex-grow: 1;
    display: flex;
    background: linear-gradient(135deg, transparent 0px, transparent 32px, rgba(255, 255, 255, 1) 32px, rgba(255, 255, 255, 1) 100%);
    padding: 80px 128px 24px 100px;
}
.footer_info {
    width: 390px;
    flex-shrink: 0;
}
#footer_link {
    flex-grow: 1;
}
#footer_link .flex {
    display: flex;
}
#footer_link .flex > ul {
    width: 25%;
    margin-bottom: 20px;
}
#footer_link .flex > ul > li {
    line-height: 1.6;
}
#footer_link .flex > ul > li.footer_tt {
    font-weight: 500;
    font-size: 14px;
    position: relative;
}
#footer_link .flex > ul > li.footer_tt::after {
    content: "";
    width: 100%;
    max-width: 170px;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #ec4d48;
}
#footer_link .flex > ul > li.footer_tt:nth-child(n+2) {
    margin-top: 20px;
}
#footer_link .flex > ul > li > a {
    font-size: 13px;
    text-decoration: none;
    color: #595757;
    position: relative;
}
#footer_link .flex > ul > li > a:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: -1px;
    left: 0;
    background-color: #333;
    transform: scaleX(0);
    transform-origin: bottom right;
    transition: transform 0.3s;
}
#footer_link .flex > ul > li > a:hover:after {
    transform-origin: bottom left;
    transform: scaleX(1);
}
.footer_tt01 {
    width: 320px;
    flex-shrink: 0;
    padding-top: 120px;
    box-sizing: border-box;
    padding-left: 32px;
}
.footer_tt01 span {
    color: #fff;
    font-size: 56px;
    font-family: 'Noto Serif JP', serif;
    transform: rotate(90deg);
    display: block;
    line-height: 1.0;
    letter-spacing: 2.2px;
}
.footer_logo {
    margin-bottom: 27px;
}
.footer_add, .footer_fax {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 0px;
}
.footer_tel {
    margin-bottom: 0px;
    line-height: 1.2;
}
.footer_tel a {
    font-size: 28px;
    color: #231815;
    text-decoration: none;
    background: url("../images/icon_phone.png") no-repeat left top 9px/18px;
    padding-left: 23px;
}
.footer_txt dl:nth-child(1) {
    margin-bottom: 18px;
}
.footer_txt dl:nth-child(2) {
    margin-bottom: 18px;
}
.footer_txt dt {
    margin-bottom: 4px;
}
address {
    text-align: right;
    font-weight: 100;
    letter-spacing: 1px;
    top: -28px;
    font-size: 13px;
    position: relative;
    width: 1560px;
    margin: -13px auto 0;
}
.box_h2_G {
    height: 100%;
    box-sizing: border-box;
    padding-top: 100px;
    padding-left: 100px;
    position: relative;
    animation: mask 2s linear infinite 0s;
    opacity: 0;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-delay: 5s;
    transition: all 0.3s linear;
    text-shadow: rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 10px;
    position: absolute;
}
#loading {
    background: #fff;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    position: fixed;
    z-index: 999999;
}
.intro {
    display: none;
    background: #fff;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    animation: opacity_01 1s linear infinite 0s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-delay: 3s;
    opacity: 1;
    position: fixed;
    z-index: 99999;
    margin-bottom: 0px;
    overflow: hidden;
    top: 0;
    left: 0;
}
.intro.first_time {
    display: flex;
}
.intro_logo {
    animation: mask 2s linear infinite 0s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-delay: 0.5s;
    opacity: 0;
    margin-bottom: 0px;
    /* top:calc(50% - 55px); */
    display: flex;
    flex-direction: column;
    align-items: center;
}
.intro_logo img:nth-child(1) {
    width: 400px;
    max-width: 100%;
}
.intro_logo img:nth-child(2) {
    width: 349px;
    max-width: 100%;
    margin-top: 30px;
    animation: mask 2s linear infinite 0s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-delay: 1s;
    opacity: 0;
}
/*.intro_txt {
  font-weight: bold;
  font-size: 50px;
  text-align: center;
  line-height: 1.5;
  position: absolute;
  left: 0;
  right: 0;
	top:calc(50% - 75px);
  margin: 0 auto;
  animation: slide 2s linear infinite 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  animation-delay: 2.5s;
  opacity: 0;
}
.intro_txt > span {
  color: #f00;
}*/
/* #index #header {
	animation: mask 2s linear infinite 0s;
	opacity: 0;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
	animation-delay: 4.2s;
	transition: all 0.3s linear;
	position: relative;
	z-index: 9999;
}
#index #header.nofirst {
	animation-delay: 0s;
	transition: all 0.1s linear;
} */
#index #header {
    opacity: 1;
    position: relative;
    z-index: 9999;
}
#index #header.first_time {
    animation-delay: 0s;
    transition: all 0.1s linear;
}
.header_bnr {
    right: auto;
    left: 300px;
    bottom: 35px;
}
.header_bnr a {
    border-width: 3px;
    line-height: 1.3;
    font-size: 16px;
    height: 52.5px;
    width: 200px;
    padding-left: 26px;
}
.index_bnr04 a {
    padding-left: 0px;
}
.header_bnr a:before {
    background-size: 50px auto;
    width: 50px;
    height: 58px;
}
.line01 {
    left: -100%;
    width: 300px;
    height: 1px;
    background: #e7211a;
    top: 113px;
    position: absolute;
    animation: line 2s linear infinite 0s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-delay: 5.2s;
    transition: all 0.3s linear;
}
#box10 .bnr_list li .bnr_list_2 {
    width: 180px;
    margin-top: -20px;
}
/*1/3/2021*/
#index .box_2col {
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding: 70px 0;
}
#index .box_2col .h4_tt01 {
    margin-bottom: 10px;
    padding-bottom: 20px;
}
#index .box_2col > .box_2col_sub_r, #index .box_2col .box_2col_sub_01 {
    border-top: 2px #ec4d48 solid;
    background: linear-gradient(-45deg, transparent 0px, transparent 20px, rgba(247, 247, 247, 0.95) 20px, rgba(247, 247, 247, 0.95) 100%);
    padding: 30px;
    height: 100%;
}
#index .box_2col .box_2col_sub_01 + .box_2col_sub_01 {
    margin-top: auto;
}
#index .box_2col > div:not(:last-child) {
    margin-right: 50px;
}
#index .box_2col .frame01 {
    width: 100%;
    display: inline-block;
    box-sizing: border-box;
}
#index .box_2col .news_list dl {
    padding: 14px 0 13px;
    border-bottom: 1px #e5e5e5 solid;
    display: flex;
}
#index .box_2col .link02 {
    background: rgba(79, 94, 105, 1);
    color: #fff;
    text-decoration: none;
    display: inline-block;
    height: 40px;
    line-height: 51px;
    width: 90px;
    font-size: 13px;
    text-align: center;
    margin-left: 30px;
    position: relative;
}
#index .box_2col h3 .link02 {
    top: -9px;
    height: 30px;
    line-height: 31px;
}
#index .box_2col .txt01 {
    font-size: 16px;
}
#index .box_2col .news_list dl > dd {
    font-size: 18px;
}
#index .box_2col .news_list dl > dd a {
    color: #3e3a39;
    text-decoration: none;
}
#index .box_2col .news_list dl dt {
    font-size: 12px;
    flex-shrink: 0;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
}
/*#top_info .inner.active  .line{
	animation-delay: 5s;
}*/
@keyframes line {
    0% {
        left: -100%;
    }
    100% {
        left: -225px;
    }
}
@keyframes slide {
    0% {
        opacity: 0;
        transform: scale(0);
        filter: blur(50px)
    }
    20% {
        opacity: 1;
        transform: scale(1.1);
        filter: blur(0)
    }
    40% {
        opacity: 1;
        transform: scale(1)
    }
    80% {
        opacity: 1;
        transform: scale(1);
        filter: blur(0)
    }
    95% {
        opacity: 0;
        filter: blur(50px)
    }
    100% {
        opacity: 0;
        filter: blur(50px)
    }
}
@keyframes opacity_01 {
    0% {
        opacity: 1;
        animation-timing-function: linear;
    }
    20% {
        opacity: 1;
        animation-timing-function: linear;
    }
    100% {
        opacity: 0;
        visibility: hidden;
    }
}
@keyframes mask {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes slide_op {
    0% {
        opacity: 0;
        transform: translateX(-20px);
    }
    100% {
        opacity: 1;
        transform: translateX(0px);
    }
}
/*==============FIX IE==================*/
@media screen\0 {
    .box02_en {
        color: rgba(182, 198, 221, 0.4);
    }
    /*#index #top_info > video {
		 height: auto;
		width: 100%;
	}*/
    .box05_name {
        line-height: 31px;
    }
    .header_link_t a {
        padding-top: 7px;
    }
    #gnavi > ul > li > a {
        padding-top: 4px;
    }
    #index #header {
        /* animation: mask 2s linear infinite 0s;
		opacity: 0;
		animation-iteration-count: 1;
		animation-fill-mode: forwards;
		animation-delay: 3.5s;
		transition: all 0.3s linear; */
    }
    .index_bnr01 a {
        padding-bottom: 2px;
    }
}
/*==============FIX GG==================*/
@media screen and (-webkit-min-device-pixel-ratio: 0) {}
.ualitypolicy_text {
    font-size: 28px;
    font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    font-weight: 500;
}

.box04_list .li-center{
	margin: 50px auto;
}

.list_3col{
	display: flex;
justify-content: space-between;
width: 100%;
max-width: 730px;
max-width: 1080px;
margin: 50px auto 0;
}
.list_3col li {
margin: 0 10px;
}
.list_3col_2{
max-width: 780px;
}
.flort_right {
	float: right;
}
.float_left {
  float: left;
  clear: both;
}

/**/

.c-video{

  //追記
  &__frame{
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    background: #000;

    &.is-loaded{
      iframe{
        opacity: 1;
        visibility: visible;
      }
    }
  }

  iframe{
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: -60px;
    left: 0;
    width: 100%;
    height: calc(100% + 120px);
    transition:$transition;
    transition-property: opacity, visibility;
  }
}