/*
Theme Name: ヨシダ検品株式会社
Theme URI: https://www.anttoweb.com
Author:  Antto Team
Author URI: https://www.anttoweb.com
Description: <a target="_blank" href="http://www.anttoweb.com/">网站建设</a>： <a target="_blank" href="http://www.anttoweb.com/">安拓网络</a> <a target="_blank" href="http://www.anttoweb.com/">Web Design</a>.
Version: 1.0
*/

/******
 ****** Global
 ******/
html{
    font-size: 10px;
}
body {
    margin: 0;
    /* font-family: "FP-こぶりなゴシック StdN W3", Kozuka Gothic Pro, sans-serif; */
    font-family: "Verdana", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", "Meiryo", "sans-serif";
    color: #474443;
    font-size: 13px;
    background-color: #fff;
}
p {
    font-size: 12px;
    margin-bottom: 25px;
    line-height: 1.8;
    font-weight: normal;
    color: #474443;
}
h1 {
    font-size: 22x;
}
h2 {
    font-size: 20px;
}
h3 {
    font-size: 18px;
}
h4 {
    font-size: 16px;
}
h5 {
    font-size: 14px;
}
h6 {
    font-size: 12px;
}
h1, h2, h3, h4, h5 {
    color: #222222;
    margin-top: 0;
    /* font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP", Hiragino Mincho ProN,Yu Mincho,YuMincho,serif; */
}
.global-font{
    font-family: "Verdana", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", "Meiryo", "sans-serif" !important;
    /* font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP", Hiragino Mincho ProN,Yu Mincho,YuMincho,serif !important; */
}

@media (min-width: 576px) {
    .container { max-width: 568px; }
  }
   
  @media (min-width: 768px) {
    .container { max-width: 756px; }
  }
   
  @media (min-width: 992px) {
    .container { max-width: 1020px; }
  }
   
  @media (min-width: 1200px) {
    .container { max-width: 1200px; } 
  }
.ftmenua a{font-weight: 100;}
@media (min-width: 768px){
    body {
        font-size: 14px;
    }
    p{
        font-size: 14px;
        margin-bottom: 30px;
    }
    h1 {
        font-size: 28px;
    }
    h2 {
        font-size: 26px;
    }
    h3 {
        font-size: 22px;
    }
    h4 {
        font-size: 18px;
    }
    h5 {
        font-size: 14px;
    }
    h6 {
        font-size: 12px;
    }
}
@media (min-width: 1200px){
    body {
        font-size: 15px;
    }
    p{
        font-size: 15px;
        margin-bottom: 35px;
    }
    h1 {
        font-size: 34px;
    }
    h2 {
        font-size: 32px;
    }
    h3 {
        font-size: 28px;
    }
    h4 {
        font-size: 22px;
    }
    h5 {
        font-size: 16px;
    }
    h6 {
        font-size: 14px;
    }
}
p:last-child{
    margin-bottom: 0;
}
a {
    color: #222222;
    cursor: pointer;
    outline: none;
}
a:hover,
a:focus {
    color:#BA3939;
    text-decoration: none;
    transition: all 0.5s;
}
.white {
    color: #fff !important;
}
.eee {
    color: #eee !important;
}
.blank {
    color: #000 !important;
}
.bold {
    font-weight: bold !important;
}
img{
    max-width: 100%;
    height: auto;
}
.alignleft {
    float: left;
}
.alignright {
    float: right;
}
.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.alignnone {
    float: none;
}
.zoom-out,
.zoom-in {
    position: relative;
    overflow: hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
}
.zoom-out img,
.zoom-in img {
    transition: all .3s ease-in-out;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
}
.zoom-in:hover img {
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
}
.zoom-out:hover img {
    -webkit-transform: scale(0.85);
    transform: scale(0.85);
}
.content-float {
    transition: all .2s linear;
}
.content-float:hover{
    transform: translate3d(0, -3px, 0);
    -webkit-transform: translate3d(0, -3px, 0);
}
.content-float:hover{
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.shadow-hover{
    transition: all .3s ease-in-out;
}
.shadow-hover:hover{
    background-color: #fff;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.08);
}
.transformXR{
    overflow: hidden;
}
.transformXR img{
    -webkit-transform: scale(1.05) translateX(-5px);
    -ms-transform: scale(1.05) translateX(-5px);
    transform: scale(1.05) translateX(-5px);
    -webkit-transition: .7s;
    -o-transition: .7s;
    transition: .7s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.transformXR:hover img{
    -webkit-transform: scale(1.05) translateX(5px);
    -ms-transform: scale(1.05) translateX(5px);
    transform: scale(1.05) translateX(5px);
}
.transformXL{
    overflow: hidden;
}
.transformXL img{
    -webkit-transform: scale(1.05) translateX(5px);
    -ms-transform: scale(1.05) translateX(5px);
    transform: scale(1.05) translateX(5px);
    -webkit-transition: .7s;
    -o-transition: .7s;
    transition: .7s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.transformXL:hover img{
    -webkit-transform: scale(1.05) translateX(-5px);
    -ms-transform: scale(1.05) translateX(-5px);
    transform: scale(1.05) translateX(-5px);
}
.transformYB{
    overflow: hidden;
}
.transformYB img{
    -webkit-transform: scale(1.08) translateY(-5px);
    -ms-transform: scale(1.08) translateY(-5px);
    transform: scale(1.08) translateY(-5px);
    -webkit-transition: .7s;
    -o-transition: .7s;
    transition: .7s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.transformYB:hover img{
    -webkit-transform: scale(1.08) translateY(5px);
    -ms-transform: scale(1.08) translateY(5px);
    transform: scale(1.08) translateY(5px);
}
.transformYT{
    overflow: hidden;
}
.transformYT img{
    -webkit-transform: scale(1.08) translateY(5px);
    -ms-transform: scale(1.08) translateY(5px);
    transform: scale(1.08) translateY(5px);
    -webkit-transition: .7s;
    -o-transition: .7s;
    transition: .7s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.transformYT:hover img{
    -webkit-transform: scale(1.08) translateY(-5px);
    -ms-transform: scale(1.08) translateY(-5px);
    transform: scale(1.08) translateY(-5px);
}

/******
 ****** Ratio
 ******/
.ratio {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
}
.ratio::before {
    display: block;
    content: "";
}
.ratio > .ratio-area {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
.ratio-1by1::before {
    padding-top: 100%;
}
.ratio-4by3::before {
    padding-top: 75%;
}
.ratio-2by1::before {
    padding-top: 50%;
}
.ratio-16by9::before {
    padding-top: 56.25%;
}
.ratio-21by9::before {
    padding-top: 42.857143%;
}
@media (min-width: 576px) {
    .ratio-sm-1by1::before {
        padding-top: 100%;
    }
    .ratio-sm-4by3::before {
        padding-top: 75%;
    }
    .ratio-sm-2by1::before {
        padding-top: 50%;
    }
    .ratio-sm-16by9::before {
        padding-top: 56.25%;
    }
    .ratio-sm-21by9::before {
        padding-top: 42.857143%;
    }
}
@media (min-width: 768px) {
    .ratio-md-1by1::before {
        padding-top: 100%;
    }
    .ratio-md-4by3::before {
        padding-top: 75%;
    }
    .ratio-md-2by1::before {
        padding-top: 50%;
    }
    .ratio-md-16by9::before {
        padding-top: 56.25%;
    }
    .ratio-md-21by9::before {
        padding-top: 42.857143%;
    }
}
@media (min-width: 992px) {
    .ratio-lg-1by1::before {
        padding-top: 100%;
    }
    .ratio-lg-4by3::before {
        padding-top: 75%;
    }
    .ratio-lg-2by1::before {
        padding-top: 50%;
    }
    .ratio-lg-16by9::before {
        padding-top: 56.25%;
    }
    .ratio-lg-21by9::before {
        padding-top: 42.857143%;
    }
}
@media (min-width: 1200px) {
    .ratio-xl-1by1::before {
        padding-top: 100%;
    }
    .ratio-xl-4by3::before {
        padding-top: 75%;
    }
    .ratio-xl-2by1::before {
        padding-top: 50%;
    }
    .ratio-xl-16by9::before {
        padding-top: 56.25%;
    }
    .ratio-xl-21by9::before {
        padding-top: 42.857143%;
    }
}

/******
 ****** Btn
 ******/
.btn,
.caldera-grid-wrap .caldera-grid .btn{
    font-size: 13px;
    line-height: 1;
    font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP", Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;
    padding: 12px 80px;
}
.btn-sm,
.caldera-grid-wrap .caldera-grid .btn-sm{
    font-size: 12px;
    padding: 2px 10px;
}
.btn-lg,
.caldera-grid-wrap .caldera-grid .btn-lg{
    font-size: 16px;
    padding: 12px 100px;
}
.btn-primary,
.caldera-grid-wrap .caldera-grid .btn-primary{
    border-radius: 0;
    outline: none;
    border: 0;
    color: #fff;
    background-color: #474443;
}
.btn-radius,
.caldera-grid-wrap .caldera-grid .btn-radius{
    border-radius: 4px;
}
.btn-icon i,
.caldera-grid-wrap .caldera-grid .btn-icon i{
    margin-right: 10px;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:not(:disabled):not(.disabled):hover,
.btn-primary:not(:disabled):not(.disabled):focus,
.caldera-grid-wrap .caldera-grid .btn-primary:not(:disabled):not(.disabled):hover,
.caldera-grid-wrap .caldera-grid .btn-primary:not(:disabled):not(.disabled):focus{
    background-color: #222222;
    color: #fff;
    box-shadow: none;
}
.btn-red,
.caldera-grid-wrap .caldera-grid .btn-red{
    color: #fff;
    background-color: #BA3939;
}
.btn-red:hover,
.btn-red:focus,
.btn-red:not(:disabled):not(.disabled):hover,
.btn-red:not(:disabled):not(.disabled):focus,
.caldera-grid-wrap .caldera-grid .btn-red:not(:disabled):not(.disabled):hover,
.caldera-grid-wrap .caldera-grid .btn-red:not(:disabled):not(.disabled):focus{
    background-color: #222222;
    color: #fff;
    box-shadow: none;
}
.btn-block,
.caldera-grid-wrap .caldera-grid .btn-block{
    padding-left: 0 !important;
    padding-right: 0 !important;
}
@media (min-width: 768px) {
    .btn,
    .caldera-grid-wrap .caldera-grid .btn{
        font-size: 16px;
    }
    .btn-small,
    .caldera-grid-wrap .caldera-grid .btn-small{
        font-size: 14px;
    }
    .btn-lg,
    .caldera-grid-wrap .caldera-grid .btn-lg{
        font-size: 20px;
    }
}
@media (min-width: 1200px) {
    .btn,
    .caldera-grid-wrap .caldera-grid .btn{
        font-size: 20px;
    }
    .btn-small,
    .caldera-grid-wrap .caldera-grid .btn-small{
        font-size: 16px;
    }
    .btn-lg,
    .caldera-grid-wrap .caldera-grid .btn-lg{
        font-size: 24px;
        padding: 18px 100px;
    }
}

/******
****** caldera form
******/
.caldera-grid .form-group .control-label{
    font-size: 12px;
    color: #222222;
    margin-bottom: 8px;
}
.caldera-grid .form-group .form-control {
    height: 32px;
    font-size: 12px;
    padding: 5px 10px;
    color: #222222;
    border-color: transparent;
    background-color: #eee;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.caldera-grid .form-group textarea.form-control {
    height: auto !important;
}
@media (max-width: 767px) {
    .caldera-grid-wrap .caldera-grid .row{
        margin: 0;
        padding: 0;
    }
    .caldera-grid-wrap .caldera-grid [class*="col"]{
        width: 100%;
        max-width: none;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        padding: 0;
    }
}
@media (min-width: 992px) {
    .caldera-grid .form-group .control-label{
        font-size: 14px;
    }
    .caldera-grid .form-group .form-control {
        height: 50px;
        font-size: 14px;
        padding: 15px;
    }
}

/******
 ****** Grid
 ******/
.zero-row {
    margin-left: 0;
    margin-right: 0;
}
.zero-row > [class*="col"] {
    padding-left: 0;
    padding-right: 0;
}
.tiny-row {
    margin-left: -5px;
    margin-right: -5px;
}
.tiny-row > [class*="col"] {
    padding-left: 5px;
    padding-right: 5px;
}
.small-row {
    margin-left: -10px;
    margin-right: -10px;
}
.small-row > [class*="col"] {
    padding-left: 10px;
    padding-right: 10px;
}
.small-row-5 {
    margin-left: -15px;
    margin-right: -15px;
}
.small-row-5 > [class*="col"] {
    padding-left: 15px;
    padding-right: 15px;
}
.mid-row {
    margin-left: -20px;
    margin-right: -20px;
}
.mid-row > [class*="col"] {
    padding-left: 20px;
    padding-right: 20px;
}
.mid-row-5 {
    margin-left: -25px;
    margin-right: -25px;
}
.mid-row-5 > [class*="col"] {
    padding-left: 25px;
    padding-right: 25px;
}
.big-row {
    margin-left: -30px;
    margin-right: -30px;
}
.big-row > [class*="col"] {
    padding-left: 30px;
    padding-right: 30px;
}
.big-row-5 {
    margin-left: -35px;
    margin-right: -35px;
}
.big-row-5 > [class*="col"] {
    padding-left: 35px;
    padding-right: 35px;
}
.large-row {
    margin-left: -40px;
    margin-right: -40px;
}
.large-row > [class*="col"] {
    padding-left: 40px;
    padding-right: 40px;
}
.large-row-5 {
    margin-left: -45px;
    margin-right: -45px;
}
.large-row-5 > [class*="col"] {
    padding-left: 45px;
    padding-right: 45px;
}
.col-55,
.col-sm-55,
.col-md-55,
.col-lg-55,
.col-xl-55,
.col-77,
.col-sm-77,
.col-md-77,
.col-lg-77,
.col-xl-77,
.col-88,
.col-sm-88,
.col-md-88,
.col-lg-88,
.col-xl-88,
.col-99,
.col-sm-99,
.col-md-99,
.col-lg-99,
.col-xl-99,
.col-1010,
.col-sm-1010,
.col-md-1010,
.col-lg-1010,
.col-xl-1010,
.col-1111,
.col-sm-1111,
.col-md-1111,
.col-lg-1111,
.col-xl-1111,
.col-1212,
.col-sm-1212,
.col-md-1212,
.col-lg-1212,
.col-xl-1212 {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
}
.col-55 {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
}
.col-77 {
    -ms-flex: 0 0 14.2857%;
    flex: 0 0 14.2857%;
    max-width: 14.2857%;
}
.col-88 {
    -ms-flex: 0 0 12.5%;
    flex: 0 0 12.5%;
    max-width: 12.5%;
}
.col-99 {
    -ms-flex: 0 0 11.1111%;
    flex: 0 0 11.1111%;
    max-width: 11.1111%;
}
.col-1010 {
    -ms-flex: 0 0 10%;
    flex: 0 0 10%;
    max-width: 10%;
}
.col-1111 {
    -ms-flex: 0 0 9.0909%;
    flex: 0 0 9.0909%;
    max-width: 9.0909%;
}
.col-1212 {
    -ms-flex: 0 0 8.3333%;
    flex: 0 0 8.3333%;
    max-width: 8.3333%;
}
@media (min-width: 576px) {
    .zero-sm-row {
        margin-left: 0;
        margin-right: 0;
    }
    .zero-sm-row > [class*="col"] {
        padding-left: 0;
        padding-right: 0;
    }
    .tiny-sm-row {
        margin-left: -5px;
        margin-right: -5px;
    }
    .tiny-sm-row > [class*="col"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .small-sm-row {
        margin-left: -10px;
        margin-right: -10px;
    }
    .small-sm-row > [class*="col"] {
        padding-left: 10px;
        padding-right: 10px;
    }
    .small-sm-row-5{
        margin-left: -15px;
        margin-right: -15px;
    }
    .small-sm-row-5 > [class*="col"] {
        padding-left: 15px;
        padding-right: 15px;
    }
    .mid-sm-row {
        margin-left: -20px;
        margin-right: -20px;
    }
    .mid-sm-row > [class*="col"] {
        padding-left: 20px;
        padding-right: 20px;
    }
    .mid-sm-row-5 {
        margin-left: -25px;
        margin-right: -25px;
    }
    .mid-sm-row-5 > [class*="col"] {
        padding-left: 25px;
        padding-right: 25px;
    }
    .big-sm-row {
        margin-left: -30px;
        margin-right: -30px;
    }
    .big-sm-row > [class*="col"] {
        padding-left: 30px;
        padding-right: 30px;
    }
    .big-sm-row-5 {
        margin-left: -35px;
        margin-right: -35px;
    }
    .big-sm-row-5 > [class*="col"] {
        padding-left: 35px;
        padding-right: 35px;
    }
    .large-sm-row {
        margin-left: -40px;
        margin-right: -40px;
    }
    .large-sm-row > [class*="col"] {
        padding-left: 40px;
        padding-right: 40px;
    }
    .large-sm-row-5 {
        margin-left: -45px;
        margin-right: -45px;
    }
    .large-sm-row-5 > [class*="col"] {
        padding-left: 45px;
        padding-right: 45px;
    }
    .col-sm-55 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    .col-sm-77 {
        -ms-flex: 0 0 14.2857%;
        flex: 0 0 14.2857%;
        max-width: 14.2857%;
    }
    .col-sm-88 {
        -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
        max-width: 12.5%;
    }
    .col-sm-99 {
        -ms-flex: 0 0 11.1111%;
        flex: 0 0 11.1111%;
        max-width: 11.1111%;
    }
    .col-sm-1010 {
        -ms-flex: 0 0 10%;
        flex: 0 0 10%;
        max-width: 10%;
    }
    .col-sm-1111 {
        -ms-flex: 0 0 9.0909%;
        flex: 0 0 9.0909%;
        max-width: 9.0909%;
    }
    .col-sm-1212 {
        -ms-flex: 0 0 8.3333%;
        flex: 0 0 8.3333%;
        max-width: 8.3333%;
    }
}
@media (min-width: 768px) {
    .zero-md-row {
        margin-left: 0;
        margin-right: 0;
    }
    .zero-md-row > [class*="col"] {
        padding-left: 0;
        padding-right: 0;
    }
    .tiny-md-row {
        margin-left: -5px;
        margin-right: -5px;
    }
    .tiny-md-row > [class*="col"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .small-md-row {
        margin-left: -10px;
        margin-right: -10px;
    }
    .small-md-row > [class*="col"] {
        padding-left: 10px;
        padding-right: 10px;
    }
    .small-md-row-5{
        margin-left: -15px;
        margin-right: -15px;
    }
    .small-md-row-5 > [class*="col"] {
        padding-left: 15px;
        padding-right: 15px;
    }
    .mid-md-row {
        margin-left: -20px;
        margin-right: -20px;
    }
    .mid-md-row > [class*="col"] {
        padding-left: 20px;
        padding-right: 20px;
    }
    .mid-md-row-5 {
        margin-left: -25px;
        margin-right: -25px;
    }
    .mid-md-row-5 > [class*="col"] {
        padding-left: 25px;
        padding-right: 25px;
    }
    .big-md-row {
        margin-left: -30px;
        margin-right: -30px;
    }
    .big-md-row > [class*="col"] {
        padding-left: 30px;
        padding-right: 30px;
    }
    .big-md-row-5 {
        margin-left: -35px;
        margin-right: -35px;
    }
    .big-md-row-5 > [class*="col"] {
        padding-left: 35px;
        padding-right: 35px;
    }
    .large-md-row {
        margin-left: -40px;
        margin-right: -40px;
    }
    .large-md-row > [class*="col"] {
        padding-left: 40px;
        padding-right: 40px;
    }
    .large-md-row-5 {
        margin-left: -45px;
        margin-right: -45px;
    }
    .large-md-row-5 > [class*="col"] {
        padding-left: 45px;
        padding-right: 45px;
    }
    .col-md-55 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    .col-md-77 {
        -ms-flex: 0 0 14.2857%;
        flex: 0 0 14.2857%;
        max-width: 14.2857%;
    }
    .col-md-88 {
        -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
        max-width: 12.5%;
    }
    .col-md-99 {
        -ms-flex: 0 0 11.1111%;
        flex: 0 0 11.1111%;
        max-width: 11.1111%;
    }
    .col-md-1010 {
        -ms-flex: 0 0 10%;
        flex: 0 0 10%;
        max-width: 10%;
    }
    .col-md-1111 {
        -ms-flex: 0 0 9.0909%;
        flex: 0 0 9.0909%;
        max-width: 9.0909%;
    }
    .col-md-1212 {
        -ms-flex: 0 0 8.3333%;
        flex: 0 0 8.3333%;
        max-width: 8.3333%;
    }
}
@media (min-width: 992px) {
    .zero-lg-row {
        margin-left: 0;
        margin-right: 0;
    }
    .zero-lg-row > [class*="col"] {
        padding-left: 0;
        padding-right: 0;
    }
    .tiny-lg-row {
        margin-left: -5px;
        margin-right: -5px;
    }
    .tiny-lg-row > [class*="col"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .small-lg-row {
        margin-left: -10px;
        margin-right: -10px;
    }
    .small-lg-row > [class*="col"] {
        padding-left: 10px;
        padding-right: 10px;
    }
    .small-lg-row-5{
        margin-left: -15px;
        margin-right: -15px;
    }
    .small-lg-row-5 > [class*="col"] {
        padding-left: 15px;
        padding-right: 15px;
    }
    .mid-lg-row {
        margin-left: -20px;
        margin-right: -20px;
    }
    .mid-lg-row > [class*="col"] {
        padding-left: 20px;
        padding-right: 20px;
    }
    .mid-lg-row-5 {
        margin-left: -25px;
        margin-right: -25px;
    }
    .mid-lg-row-5 > [class*="col"] {
        padding-left: 25px;
        padding-right: 25px;
    }
    .big-lg-row {
        margin-left: -30px;
        margin-right: -30px;
    }
    .big-lg-row > [class*="col"] {
        padding-left: 30px;
        padding-right: 30px;
    }
    .big-lg-row-5 {
        margin-left: -35px;
        margin-right: -35px;
    }
    .big-lg-row-5 > [class*="col"] {
        padding-left: 35px;
        padding-right: 35px;
    }
    .large-lg-row {
        margin-left: -40px;
        margin-right: -40px;
    }
    .large-lg-row > [class*="col"] {
        padding-left: 40px;
        padding-right: 40px;
    }
    .large-lg-row-5 {
        margin-left: -45px;
        margin-right: -45px;
    }
    .large-lg-row-5 > [class*="col"] {
        padding-left: 45px;
        padding-right: 45px;
    }
    .col-lg-55 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    .col-lg-77 {
        -ms-flex: 0 0 14.2857%;
        flex: 0 0 14.2857%;
        max-width: 14.2857%;
    }
    .col-lg-88 {
        -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
        max-width: 12.5%;
    }
    .col-lg-99 {
        -ms-flex: 0 0 11.1111%;
        flex: 0 0 11.1111%;
        max-width: 11.1111%;
    }
    .col-lg-1010 {
        -ms-flex: 0 0 10%;
        flex: 0 0 10%;
        max-width: 10%;
    }
    .col-lg-1111 {
        -ms-flex: 0 0 9.0909%;
        flex: 0 0 9.0909%;
        max-width: 9.0909%;
    }
    .col-lg-1212 {
        -ms-flex: 0 0 8.3333%;
        flex: 0 0 8.3333%;
        max-width: 8.3333%;
    }
}
@media (min-width: 1200px) {
    .zero-xl-row {
        margin-left: 0;
        margin-right: 0;
    }
    .zero-xl-row > [class*="col"] {
        padding-left: 0;
        padding-right: 0;
    }
    .tiny-xl-row {
        margin-left: -5px;
        margin-right: -5px;
    }
    .tiny-xl-row > [class*="col"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .small-xl-row {
        margin-left: -10px;
        margin-right: -10px;
    }
    .small-xl-row > [class*="col"] {
        padding-left: 10px;
        padding-right: 10px;
    }
    .small-xl-row-5 {
        margin-left: -15px;
        margin-right: -15px;
    }
    .small-xl-row-5 > [class*="col"] {
        padding-left: 15px;
        padding-right: 15px;
    }
    .mid-xl-row {
        margin-left: -20px;
        margin-right: -20px;
    }
    .mid-xl-row > [class*="col"] {
        padding-left: 20px;
        padding-right: 20px;
    }
    .mid-xl-row-5 {
        margin-left: -25px;
        margin-right: -25px;
    }
    .mid-xl-row-5 > [class*="col"] {
        padding-left: 25px;
        padding-right: 25px;
    }
    .big-xl-row {
        margin-left: -30px;
        margin-right: -30px;
    }
    .big-xl-row > [class*="col"] {
        padding-left: 30px;
        padding-right: 30px;
    }
    .big-xl-row-5 {
        margin-left: -35px;
        margin-right: -35px;
    }
    .big-xl-row-5 > [class*="col"] {
        padding-left: 35px;
        padding-right: 35px;
    }
    .large-xl-row {
        margin-left: -40px;
        margin-right: -40px;
    }
    .large-xl-row > [class*="col"] {
        padding-left: 40px;
        padding-right: 40px;
    }
    .large-xl-row-5 {
        margin-left: -45px;
        margin-right: -45px;
    }
    .large-xl-row-5 > [class*="col"] {
        padding-left: 45px;
        padding-right: 45px;
    }
    .col-xl-55 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
    .col-xl-77 {
        -ms-flex: 0 0 14.2857%;
        flex: 0 0 14.2857%;
        max-width: 14.2857%;
    }
    .col-xl-88 {
        -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
        max-width: 12.5%;
    }
    .col-xl-99 {
        -ms-flex: 0 0 11.1111%;
        flex: 0 0 11.1111%;
        max-width: 11.1111%;
    }
    .col-xl-1010 {
        -ms-flex: 0 0 10%;
        flex: 0 0 10%;
        max-width: 10%;
    }
    .col-xl-1111 {
        -ms-flex: 0 0 9.0909%;
        flex: 0 0 9.0909%;
        max-width: 9.0909%;
    }
    .col-xl-1212 {
        -ms-flex: 0 0 8.3333%;
        flex: 0 0 8.3333%;
        max-width: 8.3333%;
    }
}

/******
 ****** General
 ******/
.banner{
    padding: 5px 0;
    background-position: top right -100px;
    background-repeat: no-repeat;
    background-size: contain;
}
.breadcrumbs span,
.breadcrumbs a{
    font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP", Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;
    font-size: 12px;
    color: #333333;
}
.breadcrumbs .current-item{color: #ccc;}
@media(min-width: 768px){
    .banner{
        padding: 20px 0;
        background-position: top right;
    }
    .breadcrumbs span,
    .breadcrumbs a{color: #5b5b5b;
        font-size: 14px;
    }
}

/******
 ****** Pagenavi
 ******/
.wp-pagenavi{
	display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	-ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.wp-pagenavi span,
.wp-pagenavi a{
	cursor: pointer;
	font-family: "Montserrat-Regular";
	font-size: 13px;
	line-height: 1;
	color: #222222;
	font-weight: bold;
	margin-right: 10px;
	background-color: #F5F5F5;
	border: 0;
	padding: 0 3px;
	min-width: 30px;
	min-height: 30px;
	border-radius: 0 !important;
	display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
	-webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.wp-pagenavi .current,
.wp-pagenavi a:hover {
  color: #222222;
  background-color: rgba(186, 57, 57, 0.2);
}
.previouspostslink,
.nextpostslink{
	position: relative;
	color: transparent !important;
}
.previouspostslink::after,
.nextpostslink::after{
	content: '\f1c5';
	font-family: 'Flaticon';
	font-size: 12px;
	color: #222222;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -6px;
	margin-top: -6px;
}
.nextpostslink::after{
    -webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

/******
 ****** 404
 ******/
.error-404-wrapper{
    padding: 60px 0;
	text-align: center;
}
.img-404{
	line-height: 0;
}
.img-404 img{
    max-height: 150px;
}
@media(min-width: 768px){
    .error-404-wrapper{
        padding: 80px 0;
    }
	.img-404 img{
		max-height: 200px;
	}
}
@media(min-width: 992px){
    .error-404-wrapper{
        padding: 100px 0;
    }
	.img-404 img{
		max-height: 260px;
	}
}
@media(min-width: 1200px){
    .error-404-wrapper{
        padding: 150px 0;
    }
	.img-404 img{
		max-height: 320px;
	}
}

/******
 ****** Header
 ******/
.header-content-wrap{
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
}
.header-content-item{
    height: 86px;
    display: flex;
    align-items: center;
    padding: 0 30px;
    position: relative;
}
.header-content-item img{
    max-height: 16px;
    margin-right: 5px;
}
.header-content-item > a,
.header-content-item button{
    font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP",Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;
    font-size: 13px;
    padding: 0;
    margin: 0;
    border: 0;
    background-color: transparent;
    outline: none;
    color: #222222;
    line-height: 1;
}
.header-content-item > a:hover,
.header-content-item button:hover{
    color: #BA3939;
}
.header-content-item button i{
    margin-left: 5px;
}
.header-content-item p{
    margin-bottom: 0;
}
.header-language-list{
    left: auto;
    right: 0;
    padding: 12px 0;
    top: 100%;
    margin-bottom: 10px;
    border: 0;
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.16);
}

.header-language-list .dropdown-item{
    border-bottom: rgba(0,0,0,0.08) solid 1px;
    padding: 0.5rem 1.5rem;
}

.header-language-list a{
    font-size: 13px;
    display: block;
}
.search-content-item{
    position: relative;
    display: flex;
    align-items: center;
    height: 86px;
    padding: 0 30px;
}
.search-content-item::after{
    bottom: 0;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: 0;
    transform: skew(15deg);
    -webkit-transform: skew(15deg);
    -moz-transform: skew(15deg);
    -o-transform: skew(15deg);
    -ms-transform: skew(15deg);
    background-color: #fff;
    transition: all 0.5s;
    background-color: #F5F5F5;
}
.search-form {
    position: relative;
    z-index: 2;
}
.search-form > i{
    position: absolute;
    left: 0;
    top: 0;
    font-size: 14px;
    line-height: 1;
    color: #FFFFFF;
    background-color: #474443;
    border-radius: 100%;
    width: 32px;
    height: 32px;
    border-radius: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.search-form input {
    border-radius: 32px;
	outline: none;
	background-color: #474443;
	color: #fff;
	font-size: 13px;
	height: 32px;
	line-height: 1.2;
	padding: 5px 45px 5px 35px;
	width: 100%;
	border: 0;
    box-sizing: border-box;
    transition: all 0.3s;
}
.search-form button {
	background-color: transparent;
	border: 0 none;
	position: absolute;
	right: 10px;
	outline: none;
    top: 0;
    font-size: 15px;
    color: #fff;
    padding: 0;
    line-height: 1;
    height: 32px;
    display: flex;
    align-items: center;
    font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP", Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;
}
.search-form button:hover{
    color: #BA3939 !important;
}
@media(min-width: 768px){
    .header-content-item > a,
    .header-content-item button{
        font-size: 14px;
    }
    .header-content-item img{
        max-height: 24px;
        margin-right: 10px;
    }
}
@media(min-width: 1200px){
    .header-content-item > a,
    .header-content-item button{
        font-size: 15px;
        line-height: 24px;
    }
    .search-form input {
        background-color: transparent;
        width: 70px;
    }
    .search-form button {
        color: #474443;
    }
    .search-content-item:hover .search-form input{
        background-color: #474443;
        width: 210px;
    }
    .search-content-item:hover .search-form button{
        color: #fff;
    }
}

/******
 ****** Footer
 ******/

.footer-menu li:hover a{background-color: transparent;}
.footer-dark{
    background-color: #222222;
}
.footer-dark,
.footer-dark h2,
.footer-dark h3,
.footer-dark h4,
.footer-dark h5,
.footer-dark h6,
.footer-dark p,
.footer-dark a{
    color: #fff;
}
.footer-dark a:hover{
    color: rgba(255, 255, 255, 0.8);
}
.footer-light{
    background-color: transparent;
}
.footer-light,
.footer-light p,
.footer-light a{
    color: #bbb;
}
.footer-light a:hover{
    /* color:#BA3939; */
}
.footer-top{
    text-align: center;
    border-bottom: 1px solid #EEEEEE;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.footer-top .footer-logo{
    display: inline-block;
    line-height: 0;
}
.footer-top .footer-logo img{
    max-height: 24px;
}
.footer-mid .footer-menu-wrap{
    margin-bottom: 30px;
}
.footer-mid .footer-menu .widget-title{
    margin-bottom: 15px;
}
.footer-mid .footer-menu .menu,
.footer-mid .footer-menu .sub-menu{
    list-style: none;
    font-size: 12px;
    margin: 0;
}
.footer-mid .footer-menu .menu{
    padding: 0;
}
.footer-mid .footer-menu .sub-menu{
    padding: 10px 0 0 15px;
}
.footer-mid .footer-menu .menu li{
    margin-bottom: 10px;
}
.footer-mid .footer-menu ul:last-child li:last-child{
    margin-bottom: 0;
}
.footer-copyright{
    font-size: 12px;
    line-height: 1.6;
    border-top: 1px solid #EEEEEE;
    padding: 10px 15px;color: #c61825;
}
.footer-copyright a{color: #c61825;}
.footer-copyright a:hover{text-decoration: underline;}
.footer-bottom .widget{
    margin-bottom: 20px;
}
.footer-bottom .widget:not(:last-child){
    margin-right: 0;
}
.footer-bottom-item{
    display: flex;
    align-items: center;
}
.footer-bottom-item img{
    max-height: 16px;
    margin-right: 5px;
}
.footer-bottom-item > a,
.footer-bottom-item button{
    font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP",Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;
    font-size: 13px;
    padding: 0;
    margin: 0;
    border: 0;
    background-color: transparent;
    outline: none;
    color: #222222;
    line-height: 16px;
}
.footer-bottom-item a:hover,
.footer-bottom-item button:hover{
    color: #BA3939;
}
.footer-bottom-item button i{
    margin-left: 5px;
}
.footer-bottom-item p{
    margin-bottom: 0;
}
.footer-language-list{
    padding: 12px 0;
    top: 100%;
    margin-bottom: 0;
}
.footer-language-list a{
    font-size: 13px;
    color: #222222;
}
.footer-bottom .search-form{
    width: 100%;
}
.footer-bottom .search-content-item{
    height: auto;
    padding: 0;
}
.footer-bottom .search-content-item::after{
    content: none;
}
.footer-menu-wrap a:hover {color: #fff!important;}
.footer-menu li:hover{background: transparent!important;}
.sbricon{position:fixed;bottom:4rem;right:20px;display:flex;flex-direction:column;gap:8px;z-index:999;}.sbricon a{display:flex;align-items:center;justify-content:center;background-color:#474443;color:#fff;border-radius:4px;height:48px;width:48px;font-size:24px;text-decoration:none;transition:background-color 0.3s;}.sbricon a:hover{background-color:#c61825;}
.back-to-top {
    display: none;
    cursor: pointer;
    /*position: fixed;*/
    bottom: 0;
    right: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #474443;
    color: #fff;
    border-radius: 4px 4px 0 0;
    height: 48px;
    width: 48px;
    font-size: 24px;
    z-index: 999;
}
.back-to-top:hover,
.back-to-top:focus{
    background-color: #BA3939;
}
@media(min-width: 768px){
    .footer-top{
        padding-bottom: 30px;
        margin-bottom: 30px;
    }
    .footer-top .footer-logo img{
        max-height: 30px;
    }
    .footer-mid .footer-menu .widget-title{
        margin-bottom: 20px;
    }
    .footer-mid .footer-menu .menu{
        font-size: 13px;
    }
    .footer-mid .footer-menu .menu li{
        margin-bottom: 15px;
    }
    .footer-mid .footer-menu .sub-menu{
        padding: 15px 0 0 15px;
    }
    .footer-copyright{
        font-size: 13px;
        padding: 15px;
    }
    .footer-bottom{
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: row;
    }
    .footer-bottom .search-form{
        width: auto;
    }
    .footer-bottom .widget:not(:last-child){
        margin-right: 45px;
    }
    .footer-bottom-item > a,
    .footer-bottom-item button{
        font-size: 14px;
        line-height: 32px;
    }
    .footer-bottom-item img{
        max-height: 32px;
        margin-right: 10px;
    }
}
.footer-menu h5{
    color: #fff;
}
@media(min-width: 992px){
    .footer-mid .footer-menu-wrap:not(:last-child){
        /* border-right: 1px solid #EEEEEE; */
    }
}
@media(min-width: 1200px){
    .footer-top{
        padding-bottom: 40px;
        margin-bottom: 40px;
    }
    .footer-top .footer-logo img{
        max-height: 36px;
    }
    .footer-mid .footer-menu .widget-title{
        margin-bottom: 25px;
    }
    .footer-mid .footer-menu .menu li{
        margin-bottom: 20px;
    }
    .footer-mid .footer-menu .sub-menu{
        padding: 20px 0 0 15px;
    }
    .footer-mid .footer-menu-wrap{
        margin-bottom: 40px;
    }
    .footer-copyright{
        padding: 20px 15px;
    }
    .footer-bottom .widget:not(:last-child){
        margin-right: 60px;
    }
    .footer-bottom-item > a,
    .footer-bottom-item button{
        font-size: 15px;
        line-height: 32px;
    }
}

/******
 ****** swiper
 ******/
.swiper-container{
    --swiper-navigation-size: 30px;
}
.swiper-white{
    --swiper-theme-color: #ffffff;
    --swiper-navigation-color: #222222;
}
.swiper-black{
    --swiper-theme-color: #222222;
    --swiper-navigation-color: #ffffff;
}
@media(min-width: 992px){
    .swiper-container{
        --swiper-navigation-size: 48px;
    }
    .swiper-white{
        --swiper-theme-color: #ffffff;
        --swiper-navigation-color: #222222;
    }
    .swiper-black{
        --swiper-theme-color: #222222;
        --swiper-navigation-color: #ffffff;
    }
    .logos-swiper-list{
        --swiper-navigation-size: 30px;
    }
}

/******
 ****** siderbar
 ******/
.single-content,
.sidebar-wrap{
    margin-bottom: 30px;
}
.sidebar-wrap{
    margin-top: 30px;
}
.page-lastst-news-info.lastst-news-info,
.lastst-news-has-img-special .lastst-news-info{
    flex-direction: column;
}
.lastst-news-has-img-special.lastst-news-has-img .lastst-news-img{
    min-width: 100px;
    width: 100px;
}
.page-lastst-news-info.lastst-news-info .lastst-news-date,
.lastst-news-has-img-special .lastst-news-info .lastst-news-date{
    text-align: left;
}
.page-lastst-news-info.lastst-news-info .lastst-news-title,
.lastst-news-has-img-special .lastst-news-info .lastst-news-title {
    flex: unset;
}
.lastst-news-has-img-special .lastst-news-info .lastst-news-title{
    white-space: normal;
}
.sidebar-title{
    margin-bottom: 15px;
}
.sidebar-contact-wrap{
    margin-top: 30px;
    border-radius: 4px;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
    padding: 15px;
}
.sidebar-contact-wrap h6{
    color: #BA3939;
    margin-bottom: 0;
}
.sidebar-contact{
    font-size: 17px;
    color: #474443;
    font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP", Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;
}
.sidebar-contact img{
    position: relative;
    top: -2px;
    margin-right: 5px;
    max-width: 18px;
}
.sidebar-list .parent-title{
    margin-bottom: 15px;
}
.sidebar-list ul{
    list-style: none;
    padding: 0;
    margin: 0;
}
.sidebar-list .page_item > a{
    position: relative;
    font-size: 12px;
    line-height: 1.4;
    display: block;
    padding: 12px 15px 12px 30px;
    color: #666666;
    border-top: 1px solid #EEEEEE;
    font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP", Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;
}
.sidebar-list .children .children .page_item:first-child > a{
    border: 0;
}
.sidebar-list .page_item.current_page_item > a,
.sidebar-list .page_item > a:hover{
    color: #BA3939;
}
.sidebar-list .page_item > a:hover::before,
.sidebar-list .page_item.current_page_item > a::before{
    content: '';
    position: absolute;
    top: 16px;
    left: 15px;
    width: 7px;
    height: 7px;
    background: url('./assets/images/current.png') no-repeat center center /cover;
}
.sidebar-list > ul > .page_item_has_children {
    padding: 0 0 15px;
    border-bottom: 1px solid #666666;
    margin-bottom: 15px;
}
.sidebar-list > ul > .page_item_has_children:last-child{
    padding: 0;
    border: 0;
    margin: 0;
}
.sidebar-list .page_item_has_children > a{
    background-color: #F5F5F5;
    margin-bottom: 10px;
    padding: 12px 45px 12px 15px;
    position: relative;
    color: #222222;
    border: 0;
}
.sidebar-list > ul > .page_item_has_children > a {
    padding: 0;
    background-color: transparent;
    font-size: 14px;
    margin-bottom: 10px;
}
.sidebar-list > ul > .page_item_has_children > .children > .page_item_has_children{
    position: relative;
}
.sidebar-list > ul > .page_item_has_children > .children > .page_item_has_children::before{
    content: '';
    position: absolute;
    top: 14px;
    right: 15px;
    width: 14px;
    height: 14px;
    background: url('./assets/images/add.png') no-repeat center center /cover;
    z-index: 2;
}
.sidebar-list > ul > .page_item_has_children > .children > .page_item_has_children.show-children-page::before{
    background: url('./assets/images/remove.png') no-repeat center center /cover;
}
.sidebar-list .page_item_has_children > a::before{
    content: none !important;
}
.sidebar-list .children .children{
    /* display: none; */
}
.sidebar-list .children > .page_item_has_children > .children{
    margin-bottom: 15px;
}
.sidebar-list .children > .page_item_has_children:last-child > .children{
    margin-bottom: 0;
}
.page-lastst-news-list{
    margin-top: 30px;
}
.page-lastst-news-item{
    margin-bottom: 20px;
}
@media(min-width: 768px){
    .sidebar-contact-wrap{
        margin-top: 40px;
        padding: 20px;
    }
    .sidebar-list .page_item > a{
        font-size: 13px;
    }
    .sidebar-list .page_item.current_page_item > a::before{
        width: 8px;
        height: 8px;
    }
    .sidebar-list > ul > .page_item_has_children > a {
        font-size: 16px;
    }
}
@media(min-width: 992px){
    .sidebar-wrap{
        margin-top: 0;
    }
}
@media(min-width: 1200px){
    .sidebar-list > ul > .page_item_has_children > a {
        font-size: 18px;
    }
}
/******
 ****** blog & news
 ******/
.news-list,
.blog-list,
.blog-item{
    margin-bottom: 20px;
}
.blog-item{
    position: relative;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.blog-info{
    padding: 10px 15px;
}
.blog-title{
    line-height: 1.4;
    margin-bottom: 10px;
}
.single-blog-title{
    font-size: 32px;
    font-weight: 600;
    line-height: 140%;
    margin: 30px 0;
    text-align: center;
}
.blog-date,
.single-blog-date{
    font-size: 12px;
    color: #333
}
.single-blog-date{
    margin-bottom: 20px;
}
.blog-date i,
.sidebar-blog-date i,
.single-blog-date i{
    color: #EF0B0B;
    margin-right: 10px;
}
.single-blog-excerpt{
    position: relative;
    font-size: 13px;
    line-height: 2;
    color: #999;
    margin-bottom: 30px;
}
.single-blog-excerpt::before{
    content: '';
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 80px;
    height: 2px;
    background-color: #EEEEEE;
}
.single-blog-content-wrap{
    padding-bottom: 0;
}
.single-blog-content p{text-align: initial!important;}
@media(min-width: 768px){
    .blog-date,
    .single-blog-date{
        font-size: 13px;
    }
    .single-blog-excerpt{
        font-size: 14px;
    }
    .single-blog-excerpt{
        margin-bottom: 50px;
    }
    .single-blog-excerpt::before{
        bottom: -15px;
        width: 160px;
        height: 4px;
    }
}

/******
 ****** Main
 ******/
.section-title-wrap{
    overflow: hidden;
    width: 100%;
    margin-bottom: 25px;
}
.section-title-wrap,
.title-line{
    display: flex;
    align-items: center;
    justify-content: center;
}
.section-title-wrap-left{
    justify-content: flex-start;
}
.section-title-wrap-right{
    justify-content: flex-end;
}
.section-title-wrap-between{
    justify-content: space-between;
}
.section-title{
    position: relative;
    padding: 0 5px;
    text-align: center;
    margin-bottom: 0;
    z-index: 2;
}
.section-title-wrap-left .section-title{
    text-align: left;
}
.section-title::before{
    content: '';
    position: absolute;
    top: 50%;
    margin-top: -4px;
    left: 0;
    width: 100%;
    height: 9px;
    background-color: rgba(186, 57, 57, 0.2);
    z-index: 1;
}
.title-line{
    position: relative;
    padding: 0 15px;
}
.title-line::before,
.title-line::after{
    content: '';
    position: absolute;
    top: 50%;
    width: 200px;
    height: 1px;
    background-color: #CCCCCC;
}
.title-line::before{
    right: 100%;
}
.title-line::after{
    left: 100%;
}
.small-title-line::before,
.small-title-line::after{
    width: 100px;
}
.section-title-wrap-before .title-line::after,
.section-title-wrap-after .title-line::before{
    content: none;
}
.wrapper {
    /* padding: 10px 0 30px; */
}
.read-more{
    font-size: 12px;
    font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP", Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;
    text-decoration: underline;
}
.read-more:hover{
    color: #BA3939;
    text-decoration: underline;
}
.page-title-wrap{
    padding-bottom: 15px;
    border-bottom: 2px solid #474443;
    margin-bottom: 20px;
}
.page-title{
    color: #BA3939;
}
.main-title-wrap.section-title-wrap{
    margin-bottom: 5px;
}
.page-content h2
.page-content h3,
.page-content h4,
.page-content h5,
.page-content h6{
    margin-bottom: 15px;
}
.page-content ul{
    padding: 0;
    margin: 0 0 25px;
    list-style: none;
}
.page-content ul li{
    position: relative;
    padding-left: 22px;
    padding-bottom: 12px;
    border-bottom: 1px solid #DDDDDD;
    margin-bottom: 12px;
}
.page-content ul li::before{
    content: '';
    position: absolute;
    top: 3px;
    left: 0;
    width: 12px;
    height: 12px;
    background-color: #F1D7D7;
}
.page-content ul ul,
.page-content ul ol{
    padding-left: 15px;
}
@media(min-width: 768px){
    .wrapper {
        /* padding: 40px 0; */
    }
    .section-title-wrap{
        margin-bottom: 30px;
    }
    .section-title::before{
        margin-top: -6px;
        height: 13px;
    }
    .read-more{
        font-size: 14px;
    }
    .page-title-wrap{
        padding-bottom: 20px;
        margin-bottom: 30px;
    }
    .page-content ul{
        margin: 0 0 30px;
    }
    .page-content ul li{
        padding-bottom: 18px;
        margin-bottom: 18px;
    }
    .page-content h2
    .page-content h3,
    .page-content h4,
    .page-content h5,
    .page-content h6{
        margin-bottom: 20px;
    }
}
@media(min-width: 1200px){
    .read-more{
        font-size: 16px;
    }
    .page-content ul{
        margin: 0 0 35px;
    }
    .page-content ul li::before{
        top: 4px;
    }
}
/******
 ****** Home
 ******/
.slider-link{
    text-decoration: underline;
    color: #fff;
}
.slider-link:hover{
    color: #222;
}
.slider-radius{
    border-radius: 8px;
    overflow: hidden;
}
.home-section{
    margin-bottom: 30px;
}
.home-service-item{
    margin-bottom: 20px;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.home-service-item:hover{
    box-shadow: 0 3px 16px 0 rgba(0, 0, 0, 0.16);
}
.home-service-info{
    padding: 15px 20px;
}
.home-service-info h5{
    margin-bottom: 3px;
}
.home-service-info > a{
    font-size: 12px;
    color: #999;
    text-decoration: underline;
}
.home-service-info > a:hover{
    color: #BA3939;
}
.home-testing-item{
    margin-bottom: 20px;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
    display: flex;
    align-items: center;
    padding: 15px 10px;
    border: 2px solid transparent;
}
.home-testing-item:hover{
    border-color: #BA3939;
}
.home-testing-item:hover h5 a{
    color: #BA3939;
}
.home-testing-img{
    width: 40px;
    margin-right: 10px;
}
.home-testing-info{
    flex: 1;
}
.home-testing-info h5{
    margin-bottom: 3px;
}
.home-testing-info > a{
    font-size: 12px;
    color: #999;
    text-decoration: underline;
}
.home-testing-info > a:hover{
    color: #BA3939;
}
.home-about-us-content{
    margin-bottom: 20px;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.home-about-us-info{
    padding: 20px;
}
.home-about-us-info h2,
.home-about-us-info h3,
.home-about-us-info h4,
.home-about-us-info h5,
.home-about-us-info h6{
    margin-bottom: 15px;
}
.home-about-us-info p{
    font-size: 12px;
    line-height: 1.8;
    color: #333333;
}
.home-about-us-info p:not(:last-child){
    margin-bottom: 20px;
}
.home-about-us-info a{
    font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP", Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;
    font-size: 13px;
    text-decoration: underline;
}
.all-world-content{
    position: relative;
}
.all-world-btn-wrap{
    max-width: 650px;
    margin: 0 auto;
}
.all-world-btn-wrap .btn.btn-lg{
    font-size: 12px;
}
.lastst-news-item:not(:last-child){
    padding-bottom: 15px;
    border-bottom: 1px solid #CCCCCC;
    margin-bottom: 15px;
}
.lastst-news-info{
    display: flex;
}
.lastst-news-info .lastst-news-title{
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow:ellipsis;
}
.lastst-news-date{
    width: 90px;
    font-size: 12px;
    color: #999999;
    text-align: right;
    text-decoration: underline;
}
.lastst-news-has-img{
    display: flex;
}
.lastst-news-has-img .lastst-news-img{
    min-width: 100px;
    width: 100px;
    margin-right: 15px;
}
.lastst-news-has-img .lastst-news-info{
    flex: 1;
}
.lastst-news-has-img .lastst-news-info .lastst-news-title{
    white-space: normal;
}
.all-world-btn-wrapper{
    background-color: #fff;
    z-index: 998;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 10px 15px;
    width: 100%;
    box-shadow: 0 0 30px 0 rgba(0,0,0,0.16);
}
@media(min-width: 768px){
    .home-section{
        margin-bottom: 40px;
    }
    .home-service-item{
        margin-bottom: 0;
    }
    .home-service-info > a,
    .home-testing-info > a{
        font-size: 13px;
    }
    .home-testing-item{
        padding: 18px 13px;
    }
    .home-testing-img{
        width: 50px;
    }
    .home-service-item{
        margin-bottom: 0;
    }
    .home-about-us-info{
        padding: 20px 35px;
    }
    .home-about-us-info p{
        font-size: 13px;
    }
    .home-about-us-info a{
        font-size: 14px;
    }
    /* .all-world-btn-wrapper{
        position: absolute;
        left: 0;
        bottom: 10px;
        width: 100%;
    } */
    .lastst-news-date{
        width: 100px;
        font-size: 13px;
    }
    .lastst-news-has-img .lastst-news-img{
        min-width: 140px;
        width: 140px;
    }
    .all-world-btn-wrap .btn.btn-lg{
        font-size: 20px;
    }
    .all-world-btn-wrapper{
        padding: 20px 15px;
    }
}
@media(min-width: 1200px){
    .home-section{
        margin-bottom: 50px;
    }
    .home-testing-item{
        margin-bottom: 0;
    }
    .home-about-us-info a{
        font-size: 16px;
    }
}
/******
 ****** Downloads
 ******/
.file-item{
    display: flex;
    flex-direction: column;
    padding-bottom: 15px;
    border-bottom: 1px solid #CCCCCC;
    margin-bottom: 15px;
}
.downloads-list .col-12:last-child .file-item{
    border-bottom: 0;
}
.file-date{
    width: 100%;
    font-size: 12px;
    color: #999999;
    text-decoration: underline;
    margin-top: 15px;
    padding-left: 25px;
}
.file-info{
    position: relative;
    flex: 1;
    padding-left: 25px;
}
.file-info img{
    position: absolute;
    top: 2px;
    left: 0;
    max-height: 18px;
}
.file-info a{
    font-size: 14px;
    line-height: 1.4;
    color: #222222;
}
.file-info a:hover{
    color: #BA3939;
}
@media(min-width: 768px){
    .file-item{
        display: flex;
        flex-direction: row;
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    .file-date{
        width: 100px;
        text-align: right;
        font-size: 13px;
        margin-top: 0;
        padding-left: 0;
    }
    .file-info a{
        font-size: 16px;
    }
    .file-info{
        padding-left: 30px;
    }
    .file-info img{
        max-height: 20px;
    }
}
@media(min-width: 1200px){
    .file-item{
        padding-bottom: 25px;
        margin-bottom: 25px;
    }
    .file-info a{
        font-size: 18px;
    }
}

/******
 ****** Search
 ******/
 .search-item{
    display: flex;
    flex-direction: column;
    padding-bottom: 15px;
    border-bottom: 1px solid #CCCCCC;
    margin-bottom: 15px;
}
.search-list .col-12:last-child .search-item{
    border-bottom: 0;
}
.search-date{
    width: 100%;
    font-size: 12px;
    color: #999999;
    text-decoration: underline;
    margin-top: 15px;
    padding-left: 25px;
}
.search-info{
    position: relative;
    flex: 1;
}
.search-info a{
    font-size: 14px;
    line-height: 1.4;
    color: #222222;
}
.search-info a:hover{
    color: #BA3939;
}
@media(min-width: 768px){
    .search-item{
        display: flex;
        flex-direction: row;
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    .search-date{
        width: 100px;
        text-align: right;
        font-size: 13px;
        margin-top: 0;
        padding-left: 0;
    }
    .search-info a{
        font-size: 16px;
    }
}
@media(min-width: 1200px){
    .search-item{
        padding-bottom: 25px;
        margin-bottom: 25px;
    }
    .search-info a{
        font-size: 18px;
    }
}

/******
 ****** Tel
 ******/
.contact-tel-list{
    margin-top: 30px;
}
.contact-tel-item{
    font-size: 12px;
    padding:15px 40px;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
    margin-bottom: 30px;
    color: #222222;
    line-height: 1.2;
    position: relative;
}
.contact-tel-item::before{
    content: '';
    position: absolute;
    top: 17px;
    left: 20px;
    width: 12px;
    height: 12px;
    background-color: #F1D7D7;
}
.contact-item-address{
    color: #BA3939;
}
.contact-item-address,
.contact-item-tel{
    margin-bottom: 10px;
}
@media(min-width: 768px){
    .contact-tel-item{
        font-size: 14px;
    }
    .contact-tel-list{
        margin-top: 40px;
    }
}
@media(min-width: 1200px){
    .contact-tel-item{
        font-size: 15px;
    }
    .contact-tel-list{
        margin-top: 60px;
    }
}

.home-testing-plant-list-wrap{
    position: relative;
}
.home-testing-plant-list-wrap::before{
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 200px;
    height: 100%;
    z-index: -1;
    background-color: #000;
}
.home-testing-plant-list{
    transition: all 0.1s ease-in-out;
    position: relative;
}
.home-testing-plant-item{
    height: 300px;
    background-repeat: no-repeat;
    background-position: left top;
    background-size: cover;
    overflow: hidden;
}
.home-testing-plant-item img{
    max-height: 300px;
    max-width: none;
    position: relative;
    left: -100px;
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
    filter: gray;
}
.home-testing-plant-title{
    display: none;
}
.swiper-slide-active.home-testing-plant-item img{
    -webkit-filter: grayscale(0);
    -moz-filter: grayscale(0);
    -ms-filter: grayscale(0);
    -o-filter: grayscale(0);
    filter: grayscale(0);
    filter: none;
    transform: initial;
    left: 0;
}
.swiper-slide-active.home-testing-plant-item .home-testing-plant-title{
    display: block;
    position: absolute;
    left: 30px;
    bottom: 100px;
    z-index: 10;
    color: #fff;
    padding: 4px 10px;
    background-color: #BA3939;
    line-height: 1.2;
    margin-bottom: 0;
    max-width: 170px;
    border-radius: 4px;
}
.swiper-slide-active.home-testing-plant-item .home-testing-plant-title::before{
    content: '';
    position: absolute;
    left: 10px;
    top: -7px;
    width: 12px;
    height: 11px;
    background: url(./assets/images/title-icon.png) no-repeat center center /cover;

}
.swiper-slide-active.home-testing-plant-item{
    width: 200px !important;
    overflow: inherit;
    position: relative;
}
.home-testing-plant-main-title{
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 2;
    font-family: A-OTF Ryumin Pro B-KL, YakuHanMPs,"Noto Serif JP", Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;
    font-size: 16px;
    color: #fff;
    padding: 5px 75px 5px 10px;
    background: rgba(0,0,0,1);
    background: -moz-linear-gradient(left, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 76%, rgba(0,0,0,0) 100%);
    background: -webkit-gradient(left top, right top, color-stop(0%, rgba(0,0,0,1)), color-stop(76%, rgba(0,0,0,1)), color-stop(100%, rgba(0,0,0,0)));
    background: -webkit-linear-gradient(left, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 76%, rgba(0,0,0,0) 100%);
    background: -o-linear-gradient(left, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 76%, rgba(0,0,0,0) 100%);
    background: -ms-linear-gradient(left, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 76%, rgba(0,0,0,0) 100%);
    background: linear-gradient(to right, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 76%, rgba(0,0,0,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#000000', GradientType=1 );
}
@media(min-width: 768px){
    .home-testing-plant-list-wrap::before{
        content: '';
        position: absolute;
        left: 0;
        bottom: 0;
        width: 200px;
        height: 100%;
        z-index: -1;
        background-color: #000;
    }
    .home-testing-plant-list{
        transform: skew(25deg);
    }
    .home-testing-plant-list::before{
        content: '';
        position: absolute;
        right: 100%;
        top: 0;
        width: 15px;
        height: 100%;
        background-color: #fff;
        z-index: 100;
        transform: skew(-25deg);
    }
    .home-testing-plant-item img{
        transform: skew(-25deg);
    }
    .home-testing-plant-title{
        transform: skew(-25deg);
    }
    .swiper-slide-active.home-testing-plant-item img{
        -webkit-filter: grayscale(0);
        -moz-filter: grayscale(0);
        -ms-filter: grayscale(0);
        -o-filter: grayscale(0);
        filter: grayscale(0);
        filter: none;
        transform: initial;
        left: 0;
    }
    .swiper-slide-active.home-testing-plant-item .home-testing-plant-title{
        transform: skew(0);
    }
    .swiper-slide-active.home-testing-plant-item{
        transform: skew(-25deg);
    }
    .swiper-slide-active.home-testing-plant-item::before{
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-color: #222;
    }
}
.home-testing-plant-right-wrap{
    position: relative;
}
.home-testing-plant-right{
    text-align: right;
    margin-top: 30px;
}
.home-testing-plant-right img{
    max-height: 300px;
}
.home-testing-plant-right-content{
    position: absolute;
    top: 0;
    right: 25px;
    height: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    flex-direction: column;
}
.home-testing-plant-right .read-more{
    position: absolute;
    right: 30px;
    bottom: 20px;
}
.home-testing-plant-right-content h2{
    font-size: 36px;
    line-height: 1.4;
    color: #BA3939;
    margin-bottom: 0;
}
.home-testing-plant-right-content h3{
    margin-bottom: 0;
    font-size: 22px;
    line-height: 1.4;
}
@media(min-width: 768px){
    .home-testing-plant-right-content{
        padding-bottom: 30px;
    }
    .home-testing-plant-right-content h2{
        font-size: 52px;
    }
    .home-testing-plant-right-content h3{
        font-size: 32px;
    }
    .home-testing-plant-main-title{
        font-size: 20px;
    }
    .home-testing-plant-list::before{
        width: 80px;
    }
}
@media(min-width: 1200px){
    .home-testing-plant-right{
        margin-top: 0;
        position: absolute;
        top: 0;
        right: 15px;
    }
    .home-testing-plant-right img{
        max-width: none;
    }
    .home-testing-plant-main-title{
        font-size: 28px;
    }
}

.more {
    text-decoration:none !important;
}

.home-testing-plant-right .more{
    position: absolute;
    right: 30px;
    bottom: 20px;
    text-decoration:none !important;
}

.home-testing-plant-main-title a {
    color: #fff;
}

