/* toho-style-ng2026.css（自動生成・手で編集しない）
 * toho-style.css から旧デザインのヘッダー/フッター関連セレクタのみを除外した複製。
 * 生成: docs/02.設計/tools/ng2026_css_build.py
 */
/*
    toho-style.css
    Cascade Style for toho-ace.co.jp
    author: RENATUS Co., Ltd.
*/@charset "UTF-8";
/* Import Setting ------------------------- */
@import url(https://use.fontawesome.com/releases/v5.3.1/css/all.css);
@import url('https://fonts.googleapis.com/css2?family=Cormorant:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=Noto+Sans+JP:wght@300;400;500&family=PT+Sans:ital,wght@0,400;0,700;1,400;1,700&family=PT+Serif:ital,wght@0,400;0,700;1,400;1,700&family=Shippori+Mincho:wght@400;500;600;700&display=swap');
/* ROOT Setting -------------------------- */
:root{
    /* key colors */
    --blue: #2169b3;
    --darkblue: #0e2f83;
    --lightblue: #92b6dc;
    --morelightblue: #dbf8ff;
    --subblue: #bcdadc;
    --ucblue: #eef2f3; /* background for undercolumn pages */
    --gray: #cccccc;
    --lightgray: #f0f0f0;
    /* font family */
    --font_jp: '游ゴシック体', 'Yu Gothic', 'Noto Sans JP', sans-serif;
    --font_jp_min: 'Shippori Mincho', serif;
    --font_en: 'Cormorant', serif;
    --font_en_pt: 'PT Serif', serif;
    --font_header: 'Montserrat', '游ゴシック体', 'Yu Gothic', 'Noto Sans JP', sans-serif;
    /* font size */
    --base_font_size: 16pt;
}
/* reset -------------------------------- */*{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box;border-collapse:collapse;position:relative;font-variant: no-common-ligatures proportional;-webkit-font-variant-ligatures:none;font-variant-ligatures:none;}html{overflow-y:scroll;}body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td{margin:0;padding:0;}address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var{font-style:normal;}table{ border-collapse:collapse;border-spacing:0;}h1,
h2,
h3,
h4,
h5,
h6{font-size:100%;text-align:left;font-weight:normal;}img,
abbr,
acronym,
fieldset{border:0;}ol,
ul,
li{list-style-type:none;}img{vertical-align:middle;}audio,
canvas,
iframe,
img,
svg,
video{vertical-align:middle}audio,
video{display:inline-block}audio:not([controls]){display:none;height:0}iframe{border-style:none}img{border-style:none}svg:not([fill]){fill:currentColor}svg:not(:root){overflow:hidden}button{border:0;border-radius:0;background:transparent;outline:none;-webkit-appearance: none;}a{text-decoration: none;}a:hover{text-decoration:underline;}*[data-href]{
    cursor: pointer !important;
}
/* -------------------------------------------
    Body
------------------------------------------- */body{
    background: #FFF;
    color: #202020;
    font-family: var(--font_jp);
}
/* -------------------------------------------
    link
------------------------------------------- */a{color: #202020;}
/* ----------------------------- */
/* -----   product under   ----- */
/* -----    anchor links    ---- */
/* ----------------------------- */@media all and (min-width: 768px){body.page-lp_gas .anchor,
body.page-hp_gas .anchor,
body.page-medical .anchor,
body.page-consumer .anchor,
body.page-industrial .anchor{
        width: 100%;
        height: 0;
        margin-top: 100px !important;
        padding-top: -100px !important;
    }body.page-tech .anchor{
        width: 100%;
        height: 0;
        margin-top: -130px !important;
        padding-top: 130px !important;
    }body.page-tech #tech01.anchor{
        width: 100%;
        height: 0;
        margin-top: -100px !important;
        padding-top: 100px !important;
    }}@media all and (max-width: 767.98px){body.page-lp_gas .anchor,
body.page-hp_gas .anchor,
body.page-medical .anchor,
body.page-consumer .anchor,
body.page-industrial .anchor{
        width: 100%;
        height: 1px;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }body.page-tech .anchor{
        width: 100%;
        height: 0;
        margin-top: -53vw !important;
        padding-top: 53vw !important;
    }}

/* -------------------------------------------
    module
------------------------------------------- */
/* margin-top */.mt_0{margin-top: 0 !important;}.mt_5{margin-top: 5px !important;}.mt_10{margin-top: 10px !important;}.mt_15{margin-top: 15px !important;}.mt_20{margin-top: 20px !important;}.mt_25{margin-top: 25px !important;}.mt_30{margin-top: 30px !important;}.mt_35{margin-top: 35px !important;}.mt_40{margin-top: 40px !important;}.mt_45{margin-top: 45px !important;}.mt_50{margin-top: 50px !important;}.mt_55{margin-top: 55px !important;}.mt_60{margin-top: 60px !important;}.mt_65{margin-top: 65px !important;}.mt_70{margin-top: 70px !important;}.mt_75{margin-top: 75px !important;}.mt_80{margin-top: 80px !important;}.mt_85{margin-top: 85px !important;}.mt_90{margin-top: 90px !important;}.mt_95{margin-top: 95px !important;}.mt_100{margin-top: 100px !important;}
/* margin-bottom */.mb_0{margin-bottom: 0 !important;}.mb_5{margin-bottom: 5px !important;}.mb_10{margin-bottom: 10px !important;}.mb_15{margin-bottom: 15px !important;}.mb_20{margin-bottom: 20px !important;}.mb_25{margin-bottom: 25px !important;}.mb_30{margin-bottom: 30px !important;}.mb_35{margin-bottom: 35px !important;}.mb_40{margin-bottom: 40px !important;}.mb_45{margin-bottom: 45px !important;}.mb_50{margin-bottom: 50px !important;}.mb_55{margin-bottom: 55px !important;}.mb_60{margin-bottom: 60px !important;}.mb_65{margin-bottom: 65px !important;}.mb_70{margin-bottom: 70px !important;}.mb_75{margin-bottom: 75px !important;}.mb_80{margin-bottom: 80px !important;}.mb_85{margin-bottom: 85px !important;}.mb_90{margin-bottom: 90px !important;}.mb_95{margin-bottom: 95px !important;}.mb_100{margin-bottom: 100px !important;}
/* margin-left */.ml_0{margin-left: 0 !important;}.ml_5{margin-left: 5px !important;}.ml_10{margin-left: 10px !important;}.ml_15{margin-left: 15px !important;}.ml_20{margin-left: 20px !important;}.ml_25{margin-left: 25px !important;}.ml_30{margin-left: 30px !important;}.ml_35{margin-left: 35px !important;}.ml_40{margin-left: 40px !important;}.ml_45{margin-left: 45px !important;}.ml_50{margin-left: 50px !important;}.ml_55{margin-left: 55px !important;}.ml_60{margin-left: 60px !important;}.ml_65{margin-left: 65px !important;}.ml_70{margin-left: 70px !important;}.ml_75{margin-left: 75px !important;}.ml_80{margin-left: 80px !important;}.ml_85{margin-left: 85px !important;}.ml_90{margin-left: 90px !important;}.ml_95{margin-left: 95px !important;}.ml_100{margin-left: 100px !important;}
/* margin-right */.mr_0{margin-right: 0 !important;}.mr_5{margin-right: 5px !important;}.mr_10{margin-right: 10px !important;}.mr_15{margin-right: 15px !important;}.mr_20{margin-right: 20px !important;}.mr_25{margin-right: 25px !important;}.mr_30{margin-right: 30px !important;}.mr_35{margin-right: 35px !important;}.mr_40{margin-right: 40px !important;}.mr_45{margin-right: 45px !important;}.mr_50{margin-right: 50px !important;}.mr_55{margin-right: 55px !important;}.mr_60{margin-right: 60px !important;}.mr_65{margin-right: 65px !important;}.mr_70{margin-right: 70px !important;}.mr_75{margin-right: 75px !important;}.mr_80{margin-right: 80px !important;}.mr_85{margin-right: 85px !important;}.mr_90{margin-right: 90px !important;}.mr_95{margin-right: 95px !important;}.mr_100{margin-right: 100px !important;}
/* padding-top */.pt_0{padding-top: 0 !important;}.pt_5{padding-top: 5px !important;}.pt_10{padding-top: 10px !important;}.pt_15{padding-top: 15px !important;}.pt_20{padding-top: 20px !important;}.pt_25{padding-top: 25px !important;}.pt_30{padding-top: 30px !important;}.pt_35{padding-top: 35px !important;}.pt_40{padding-top: 40px !important;}.pt_45{padding-top: 45px !important;}.pt_50{padding-top: 50px !important;}.pt_55{padding-top: 55px !important;}.pt_60{padding-top: 60px !important;}.pt_65{padding-top: 65px !important;}.pt_70{padding-top: 70px !important;}.pt_75{padding-top: 75px !important;}.pt_80{padding-top: 80px !important;}.pt_85{padding-top: 85px !important;}.pt_90{padding-top: 90px !important;}.pt_95{padding-top: 95px !important;}.pt_100{padding-top: 100px !important;}
/* padding-bottom */.pb_0{padding-bottom: 0 !important;}.pb_5{padding-bottom: 5px !important;}.pb_10{padding-bottom: 10px !important;}.pb_15{padding-bottom: 15px !important;}.pb_20{padding-bottom: 20px !important;}.pb_25{padding-bottom: 25px !important;}.pb_30{padding-bottom: 30px !important;}.pb_35{padding-bottom: 35px !important;}.pb_40{padding-bottom: 40px !important;}.pb_45{padding-bottom: 45px !important;}.pb_50{padding-bottom: 50px !important;}.pb_55{padding-bottom: 55px !important;}.pb_60{padding-bottom: 60px !important;}.pb_65{padding-bottom: 65px !important;}.pb_70{padding-bottom: 70px !important;}.pb_75{padding-bottom: 75px !important;}.pb_80{padding-bottom: 80px !important;}.pb_85{padding-bottom: 85px !important;}.pb_90{padding-bottom: 90px !important;}.pb_95{padding-bottom: 95px !important;}.pb_100{padding-bottom: 100px !important;}
/* padding-left */.pl_0{padding-left: 0 !important;}.pl_5{padding-left: 5px !important;}.pl_10{padding-left: 10px !important;}.pl_15{padding-left: 15px !important;}.pl_20{padding-left: 20px !important;}.pl_25{padding-left: 25px !important;}.pl_30{padding-left: 30px !important;}.pl_35{padding-left: 35px !important;}.pl_40{padding-left: 40px !important;}.pl_45{padding-left: 45px !important;}.pl_50{padding-left: 50px !important;}.pl_55{padding-left: 55px !important;}.pl_60{padding-left: 60px !important;}.pl_65{padding-left: 65px !important;}.pl_70{padding-left: 70px !important;}.pl_75{padding-left: 75px !important;}.pl_80{padding-left: 80px !important;}.pl_85{padding-left: 85px !important;}.pl_90{padding-left: 90px !important;}.pl_95{padding-left: 95px !important;}.pl_100{padding-left: 100px !important;}
/* padding-right */.pr_0{padding-right: 0 !important;}.pr_5{padding-right: 5px !important;}.pr_10{padding-right: 10px !important;}.pr_15{padding-right: 15px !important;}.pr_20{padding-right: 20px !important;}.pr_25{padding-right: 25px !important;}.pr_30{padding-right: 30px !important;}.pr_35{padding-right: 35px !important;}.pr_40{padding-right: 40px !important;}.pr_45{padding-right: 45px !important;}.pr_50{padding-right: 50px !important;}.pr_55{padding-right: 55px !important;}.pr_60{padding-right: 60px !important;}.pr_65{padding-right: 65px !important;}.pr_70{padding-right: 70px !important;}.pr_75{padding-right: 75px !important;}.pr_80{padding-right: 80px !important;}.pr_85{padding-right: 85px !important;}.pr_90{padding-right: 90px !important;}.pr_95{padding-right: 95px !important;}.pr_100{padding-right: 100px !important;}

/* --- fadeInUp Animation --- */.fadeInUpTrigger{
    opacity:0;
    will-change: opacity;
    -webkit-transition: 1.2s;
    transition: 1.2s;
}.fadeInUpTrigger.animate__animated.animate__fadeInUp{
    opacity:1;
}
/* -------------------------------------------
    container
------------------------------------------- */.container{
    display: block;
    position: relative;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    height: auto;
}@media all and (min-width: 767.98px){.conteiner{
        overflow-x: hidden;
    }}
/* -------------------------------------------
    header
------------------------------------------- */
/* for desktop */
/* for smartphone */
/* -------------------------------------------
    sp-menu
------------------------------------------- */

/* -------------------------------------------
    footer breadcrumb
------------------------------------------- */#bc_wrapper{
    margin: 30px auto 0 auto;
    padding: 0 0 30px 0;
    display: block;
}.breadcrumb{
    width: 1000px;
    margin: 0 auto;
    display: block;
}.breadcrumb > *{font-size:12px;}@media screen and (max-width:767.98px){#bc_wrapper{display: none;}}
/* -------------------------------------------
    footer
------------------------------------------- */
/* for desktop */@media screen and (min-width:768px){#page_top{
        /* background: #FFF; */
        background: transparent;
        /* border-top: 1px solid var(--lightblue);*/
        padding: 0 0 36px 0;
        width: 100%;
        height: 90px;
    }body.home #page_top{
        height: 135px;
        padding: 35px 0;
    }#page_top img{
        display: block;
        margin: 0 auto;
        width: 60px;
        height: 40px;
    }}
/* for smartphone */@media screen and (max-width:767.98px){#page_top{
        border-top: 1px solid var(--lightblue);
        height: 26vw;
        padding: 7vw 0 8vw 0;
    }#page_top img{
        display: block;
        margin: 0 auto;
        width: 15.2vw;
        height: 10.4vw;
    }}
/* -------------------------------------------
    main
------------------------------------------- */body.page,
body.error404,
body.archive,
body.body.page-template-category,
body.page-product,
body.page-ir,
body.page-csr,
body.page-csr_preview,
body.page-technology,
body.page-contact,
body.page-privacy-policy{
    background: var(--ucblue);
}body.page-front-page{
    background: #FFF;
}main{
    margin: 0 auto;
    padding: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
    min-height: 100vh;
}@media all and (min-width: 768px){main{
        margin-top: 100px;
    }}@media screen and (min-width: 767px) and (max-width: 1116.98px){main{
        margin-top: 13vw;
    }}@media all and (max-width: 767.98px){main{
        margin-top: 13vw;
    }}main .title_box{
    background: var(--blue);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    text-align: center;
    color: #FFF;
}main.animation .title_box:before{
    content: "";
    background: var(--ucblue);
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 1;
    /*
    will-change: opacity, filter;
    transition: all 2s ease;
    transition-delay: 1s;
    filter: none;
     */
}main.animation .title_box:before{
    will-change: opacity, filter;
    -webkit-transition: all 2s ease;
    transition: all 2s ease;
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
    -webkit-filter: none;
    filter: none;
}main.animation .title_box.active:before{
    opacity: 0;
    -webkit-filter: blur(600px);
    filter: blur(600px);
}main .title_box .title_box_wrap{
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: auto;
    height: 200px;
    overflow: hidden;
    color: #FFF;
    /*
    opacity: 0;
    will-change: opacity;
    transition: all .5s ease;
    transition-delay: .5s;
     */
}main.animation .title_box .title_box_wrap{
    opacity: 0;
    will-change: opacity;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transition-delay: .5s;
    transition-delay: .5s;
}main.animation .title_box.active .title_box_wrap{
    opacity: 0.5;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transition-delay: .5s;
    transition-delay: .5s;
}main .title_box .title_box_wrap.active,
main .title_box.active .title_box_wrap.active{
    opacity: 1;
}main .title_box .title_box_wrap h2{
    font-family: var(--font_jp_min);
    font-size: 38px;
    font-weight: 400;
    letter-spacing: 5px;
    text-align: center;
    margin: -30px auto 0 auto;
    padding: 0 0 14px 0;
    /*
    transform: translateY(30px);
    transition: all .5s ease;
    transition-delay: 2s;
    color: #FFF;
    display: none;
    opacity: 0;
    will-change: opacity;
     */
}main.animation .title_box .title_box_wrap h2{
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transition-delay: 2s;
    transition-delay: 2s;
    color: #FFF;
    display: none;
    opacity: 0;
    will-change: opacity;
}main.animation .title_box.active .title_box_wrap.active h2{
    display: inline;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transition-delay: 2s;
    transition-delay: 2s;
    opacity: 0;
}main.animation .title_box.active .title_box_wrap.active h2.active{
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
}.title_box .title_box_wrap i{
    margin: 0;
    padding: 0;
    height: 1px;
    background: #fff;
    /*
    display: none;
    opacity: 0;
    will-change: opacity, width;
    transition: all 1s ease;
     */
}main.no-animation .title_box .title_box_wrap i{
    width: 100%;
}main.animation .title_box .title_box_wrap i{
    display: none;
    opacity: 0;
    width: 0;
    will-change: opacity, width;
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
}main.animation .title_box.active .title_box_wrap.active i{
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transition-delay: 1.5s;
    transition-delay: 1.5s;
    opacity: 1;
    width: 1%;
    display: block;
}main .title_box.active .title_box_wrap.active i.active{
    width: 100%;
}main .title_box .title_box_wrap p{
    margin: 0 auto;
    padding: 20px 0 0 0;
    font-family: var(--font_en);
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 2px;
    text-align: center;
    text-transform: uppercase;
    /*
    display: none;
    will-change: opacity, transform;
    transform: translateY(-30px);
    transition: all .5s ease;
    transition-delay: 2s;
    color: #FFF;
    opacity: 0;
     */
}main.animation .title_box .title_box_wrap p{
    display: none;
    will-change: opacity, transform;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transition-delay: 2s;
    transition-delay: 2s;
    color: #FFF;
    opacity: 0;
}main.animation .title_box .title_box_wrap.active p{
    display: inline;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transition-delay: 2s;
    transition-delay: 2s;
    opacity: 0;
}main.animation .title_box .title_box_wrap.active p.active{
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
}@media all and (max-width: 767.98px){main .title_box .title_box_wrap h2{
        margin: 0 auto;
        padding: 8vw 0 7vw 0;
    }main .title_box .title_box_wrap h2{
        font-size: 9.333vw;
        padding: 0 0 2vw 0;
    }}body.page .content,
body.archive .content,
body.error404 .content{
    display: block;
    margin: 0 auto;
    width: 100%;
    height: auto;
}.page .content_wrap,
.archive .content_wrap,
body.error404 .content_wrap{
    margin: 0 auto;
    width: 100%;
    height: auto;
}body.page .content_wrap,
.archive .content_wrap,
body.error404 .content_wrap{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 45px 0 0 0;
}
/* headings */h3.h3_row{
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    width: 100%;
    height: 50px;
    color: var(--blue);
    font-size: 31px;
    line-height: 35px;
}h3.h3_row span{
    color: #bcdadc;
    font-family: var(--font_en);
    font-size: 30px;
    line-height: 42px;
    letter-spacing: 1px;
    text-transform: capitalize;
}h3.h3_row:before,
h3.h3_row:after{
    content: "";
    position: absolute;
    width: 84px;
    /*height: 3px;*/
    height: 5px;
    bottom: 0;
    left: 0;
    background: var(--blue);
}h3.h3_row:after{
    width: calc(100% - 84px);
    background: var(--ucblue);
    left: auto;
    right: 0;
}.page-environment h3.h3_row span{
    font-size: 28px;
    letter-spacing: 0;
}h4.h4_num{
    color: var(--blue);
    font-size: 22px;
    margin-bottom: 20px;
}h4.h4_row{
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    width: 100%;
    height: 37px;
    /*padding: 7px 25px;*/
    padding: 7px 15px;
    background: var(--blue);
    color: #FFF;
    font-size: 21px;
    text-transform: capitalize;
    line-height: 24px;
}h4.h4_row span{
    font-family: var(--font_en);
    font-size: 18px;
}h4.h4_lblue{
    color: var(--blue);
    background: var(--morelightblue);
    font-size: 18px;
    font-weight: normal;
    line-height: 100%;
    padding: 6px 15px;
    height: 30px;
}h4.h4_min{
    font-family: var(--font_jp_min);
    color: #202020;
    font-size: 27px;
    font-weight: 500;
    line-height: 1.8em;
    margin-bottom: 30px;
}.page-tech h4.h4_min{
    font-size: 22px;
    line-height: 1.8em;
    margin: -14px 0 11px 0;
}h4.h4_gothic{
    font-family: var(--font_jp);
    color: #202020;
    font-size: 26px;
    line-height: 1.8em;
}@media all and (max-width: 767.98px){h4.h4_gothic{
        font-weight: 600;
        font-size: 4.6vw !important;
    }}.content_box p{
    font-size: 14px;
    line-height: 1.8em;
}h5.h5_row{
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    width: 100%;
    height: 20px;
    padding: 7px 0;
    color: var(--blue);
    font-size: 21px;
    text-transform: capitalize;
    line-height: 24px;
}h5.h5_row span,
h5.h5_row time{
    font-family: var(--font_jp);
    font-size: 14px;
    color: #202020;
}h5.h5_blue{
    font-size: 18px;
    color: var(--blue);
    margin: 20px auto 20px 0;
    padding: 0 0 0 15px;
    position: relative;
}h5.h5_blue.mt_0{
    margin: 0 auto 20px 0;
}h5.h5_blue:before{
    content: "";
    background: var(--blue);
    width: 6px;
    height: 20px;
    position: absolute;
    left: 0;
    top: 4px;
    bottom: 0;
}
/* dl border box */.content_box dl.dl_border_box{
    margin: 30px auto 0 auto;
    padding: 25px;
    width: 100%;
    border: 1px solid var(--blue);
}.content_box dl.dl_border_box dt{
    color: var(--blue);
    padding-bottom: 15px;
    font-weight: bold;
}
/* dl table property */.content_box dl.dl_table_property{
    width: 100%;
}.content_box dl.dl_table_property dt{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}.content_box dl.dl_table_property dt h5{
    background: #a3a3a3;
    color: #FFF;
    font-size: 12px;
    line-height: 30px;
    text-align: center;
    width: 110px;
    height: 30px;
}.content_box dl.dl_table_property dt span{
    font-size: 10px;
}.content_box dl.dl_table_property dd{
    border: 1px solid #ccc;
    padding: 17px;
    height: 76px;
}.content_box dl.dl_table_property dd > ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    height: 100%;
}.content_box dl.dl_table_property dd > ul > li{
    margin: 0;
    padding: 1px;
    width: 14%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}.content_box dl.dl_table_property h6,
.content_box dl.dl_table_property p{
    display: inline-block;
    font-size: 12px;
    text-align: center;
    width: 100%;
    height: 22px;
    line-height: 22px;
}.content_box dl.dl_table_property h6{
    background: #d8e3e4;
}
/* dl table useful */.content_box dl.dl_table_useful{
    margin-top: 30px;
}.content_box dl.dl_table_useful.dt_wide.mt_0{
    margin-top: 0;
}.content_box dl.dl_table_useful > dt{
    color: var(--blue);
    font-size: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: auto;
    position: relative;
}.content_box dl.dl_table_useful > dt:before{
    content: "";
    background: var(--ucblue);
    height: 1px;
    width: 100%;
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
}.content_box dl.dl_table_useful > dt span{
    position: relative;
    padding: 0 1em 0 0;
    background: #fff;
}.content_box dl.dl_table_useful > dd{
    padding: 14px 0 0 0;
}.content_box dl.dl_table_useful > dd > dl{
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: 100%;
    font-size: 14px;
}.content_box dl.dl_table_useful > dd > dl > dt{
    width: 30%;
}.content_box dl.dl_table_useful > dd > dl dd{
    width: 68%;
}.content_box ol.ol_privacy{
    padding: 0 1em;
    list-style-type: decimal !important;
}.content_box ol.ol_privacy li{
    font-size: 14px;
    padding: 5px 1em;
    list-style-type: decimal !important;
}.content_box ol.ol_privacy li a{
    word-break: break-all;
}.content_box dl.dl_privacy{
    margin: 0 0 0 auto;
    padding: 40px 0 0 0;
    text-align: right;
    font-size: 14px;
}
/* for desktop */@media screen and (min-width:768px){main .title_box{
        height: 400px;
    }body.page .content,
body.archive .content,
body.error404 .content{
        padding: 45px 0 0 0;
        width: 1000px;
    }
    /* sidebar */.archive .sidebar,
body.page .sidebar{
        width: 250px;
    }.archive .sidebar_box,
body.page .sidebar_box{
        width: 100%;
        background: #FFF;
        padding: 30px;
        position: -webkit-sticky;
        position: sticky;
        top: 70px;
    }.archive .sidebar_box dl,
body.page .sidebar_box dl{
        margin: 0 auto;
        padding: 0 0 20px 0;
        width: 100%;
    }.archive .sidebar_box dt,
body.page .sidebar_box dt{
        width: 100%;
        color: var(--blue);
        font-size: 19px;
    }.archive .sidebar_box dt.active,
body.page .sidebar_box dt.active{
        padding-bottom: 10px;
    }.archive .sidebar_box dt a,
body.page .sidebar_box dt a{
        color: var(--blue);
        font-size: 19px;
        display: inline-block;
        position: relative;
        width: 100%;
    }.archive .sidebar_box dt a::after,
body.page .sidebar_box dt a::after{
        /*
        font-family: "Font Awesome 5 Free";
        content: '\f054';
        */
        content: '\25b6';
        color: var(--blue);
        font-size: 10px;
        width: 10px;
        position: absolute;
        top: 6px;
        right: 5px;
        -webkit-transform: scale(0.8);
        transform: scale(0.8);
        font-weight: 900;
    }.archive .sidebar_box dt.active a::after,
.archive .sidebar_box dt a.active::after,
body.page .sidebar_box dt.active a::after,
body.page .sidebar_box dt a.active::after{
        /*
        font-family: "Font Awesome 5 Free";
        content: '\f078';
        */
        content: '\25b6';
        color: var(--blue);
        font-size: 10px;
        position: absolute;
        top: 4px;
        right: 6px;
        font-weight: 900;
        -webkit-transform: scale(1, 0.6) rotate(90deg);
        transform: scale(1, 0.6) rotate(90deg);
    }.archive .sidebar_box dd.active,
body.page .sidebar_box dd.active{
        padding: 5px 0 20px 0;
        right: 4px;
    }.archive .sidebar_box dd li,
.page-news .sidebar_box dd li{
        border-bottom: 1px solid #cccccc;
        height: 40px;
        padding: 2px 0 0 0;
    }.archive .sidebar_box dd li,
.page-news .sidebar_box dd li{
        height: auto;
    }.archive .sidebar_box dd li::after,
body.page .sidebar_box dd li::after{
        font-family: "Font Awesome 5 Free";
        content: '\f054';
        color: var(--blue);
        font-size: 12px;
        width: 12px;
        position: absolute;
        top: 14px;
        right: -1px;
        font-weight: 700;
    }.archive .sidebar_box dd li > ul,
.page-news .sidebar_box dd li > ul{
        border-top: 1px solid #cccccc;
    }.archive .sidebar_box dd li > ul li,
.page-news .sidebar_box dd li > ul li{
        height: auto;
        padding-left: 20px;
    }.archive .sidebar_box dd li > ul li:last-child,
.page-news .sidebar_box dd li > ul li:last-child{
        border-bottom: 0;
    }body.archive .sidebar_box dd li > ul > li::after,
body.page-news .sidebar_box dd li > ul > li::after{
        display: none;
    }.archive .sidebar_box dd a,
body.page .sidebar_box dd a{
        color: #202020;
        font-size: 13px;
        line-height: 25px;
        display: block;
        width: 90%;
        height: 100%;
        padding: 5px 0;
    }body.page .content_wrap .content_main{
        background: #FFF;
        padding: 30px;
    }.archive .content_wrap .content_main,
body.page .content_wrap .content_main,
body.error404 .content_wrap .content_main{
        width: 100%;
    }.archive .content_wrap.two_column .content_main,
body.page .content_wrap.two_column .content_main{
        width: 720px;
    }main{margin-top:100px;}.content_box{
        padding: 30px 15px;
        width: 100%;
        height: auto;
    }.content_box figure{
        display: block;
        margin: 0 auto;
        /* padding: 20px 0; */
        padding: 30px 0;
    }.content_box figure img{
        width: 100%;
        height: auto;
    }.content_box .col_box{
        padding: 0 0 20px 0;
    }.content_box .row_box{
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 0 0 20px 0;
        width: 100%;
    }.content_box .row_box figure{
        display: block;
        width: 44%;
        min-width: 255px;
        height: auto;
        padding: 0 0 15px 0;
    }.content_box .row_box.row_box_3col figure{
        width: 32%;
        min-width: 32%;
    }.content_box .row_box p{
        width: 56%;
        padding-right: 2em;
        font-size: 14px;
    }.content_box .row_box div p{
        width: 100%;
        padding-right: 2em;
        font-size: 14px;
    }.content_box .row_box .col_box_01{
        width: 56%;
        padding-right: 20px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }.content_box .row_box .col_box_01 p{
        width: 100%;
    }}
/* for smartphone */@media screen and (max-width:767.98px){main{
        padding-bottom: 6vw;
    }main .title_box{
        height: 53.3vw;
    }main .title_box .title_box_wrap h2{
        font-size: 6.8vw;
        margin: 0;
        padding: 0 0 3.4vw 0;
    }main .title_box .title_box_wrap p{
        font-size: 2.8vw;
        padding: 3.4vw 0 0 0;
    }.archive .content,
body.page .content,
body.error404 .content{
        padding: 6vw 0 0 0;
    }body.page .content_wrap.two_column{
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        padding: 0;
    }.archive .content_wrap .content_main,
.archive .content_wrap.two_column .content_main,
body.page .content_wrap .content_main,
body.page .content_wrap.two_column .content_main,
body.error404 .content_wrap .content_main{
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        padding: 0;
    }h3.h3_row{
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        position: relative;
        width: 100%;
        height: auto;
        min-height: 1.7em;
        color: var(--blue);
        font-size: 24px;
        line-height: 100%;
        margin: 0 auto;
        padding: 0 0 2vw 0;
    }h3.h3_row span{
        color: #bcdadc;
        font-family: var(--font_en);
        font-size: 18px;
        height: 100%;
        padding: 1vw 0;
    }h3.h3_row:before,
h3.h3_row:after{
        content: "";
        position: absolute;
        width: 10vw;
        height: 4px;
        bottom: 0;
        left: 0;
        background: var(--blue);
    }h3.h3_row:after{
        width: calc(100% - 10vw);
        background: var(--ucblue);
        left: auto;
        right: 0;
    }h4.h4_row{
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        position: relative;
        width: 100%;
        height: 7.8vw;
        padding: 2vw 3vw;
        background: var(--blue);
        color: #FFF;
        font-size: 4vw;
        line-height: 100%;
    }h4.h4_row span{
        font-size: 2.2vw;
    }.page-template-page-product-2 h4.h4_row span{
        display: none;
    }.page-template-page-product-2 h4.h4_row:after{
        position: absolute;
        content: "+";
        color: #FFF;
        font-size: 21px;
        font-weight: 600;
        top: 20%;
        right: 2vw;
    }.page-template-page-product-2 h4.h4_row.active:after{
        content: "-";
    }h4.h4_min{
        margin: -0.3em auto 4vw -0.5vw;
        padding: 0;
        width: 100%;
        font-size: 5vw;
        line-height: 1.5em;
    }
    /* content main */.content_box p{
        font-size: 2.8vw;
        line-height: 1.9em;
    }.content_box figure{
        display: block;
        margin: 0 auto;
        padding: 4vw 0;
    }.page-template-page-product-2 .content_box figure{
        padding: 0 0 4vw 0;
    }.content_box figure img{
        width: 100%;
        height: auto;
    }.content_box .row_box{
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 0 0 5vw 0;
    }.content_box .row_box figure{
        display: block;
        width: 34vw;
        height: 28vw;
        padding: 0 0 4vw 0;
    }.content_box .row_box p{
        width: 49vw;
        padding-right: 5vw;
        font-size: 12px;
    }.content_box dl.dl_table_property,
.content_box dl.dl_table_useful > dl{
        margin: 0 auto 3vw auto;
        width: 100%;
    }.content_box dl.dl_table_useful{
        margin: 0 auto;
        width: 100%;
    }.content_box dl.dl_table_property dt h5{
        width:15.33333333vw;
        height: 4vw;
        line-height: 4vw;
        font-size: 2.4vw;
    }.content_box dl.dl_table_property dd{
        padding: 2vw;
    }.content_box dl.dl_table_property h5,
.content_box dl.dl_table_property p{
        font-size: 1.866666667vw;
    }.content_box dl.dl_table_useful dt,
.content_box dl.dl_table_useful dd,
.content_box dl.dl_table_useful > dl dt,
.content_box dl.dl_table_useful > dl dd{
        font-size: 12px;
    }.content_box dl.dl_table_useful > dd > dl > dt{
        width: 40%;
    }.content_box dl.dl_table_useful > dt:after{
        width: 70%;
    }.content_box dl.dl_table_useful > dd > dl > dd{
        width: 55%;
    }
    /* sidebar */.archive .sidebar,
body.page .sidebar{
        width: 100%;
    }.archive .sidebar_box,
body.page .sidebar_box{
        width: 100%;
        background: transparent;
        padding: 12vw 4vw 4vw 4vw;
    }.archive .sidebar_box dl,
body.page .sidebar_box dl{
        margin: 0 auto;
        padding: 0;
        width: 100%;
    }.archive .sidebar_box dt,
body.page .sidebar_box dt{
        width: 100%;
        height: 20vw;
        padding: 0 0 5vw 0;
    }.archive .sidebar_box dt a,
body.page .sidebar_box dt a{
        color: var(--blue);
        font-size: 19px;
        border: 1px solid var(--blue);
        display: block;
        margin: 0 auto;
        padding: 1vw 4vw;
        width: 100%;
        height: 15vw;
        line-height: 13vw;
    }.archive .sidebar_box dt a::after,
body.page .sidebar_box dt a::after{
        content: '\25b6';
        color: var(--blue);
        font-size: 20px;
        width: 20px;
        position: absolute;
        top: 4px;
        right: 4vw;
        font-weight: 900;
    }.archive .sidebar_box dt a.active::after,
body.page .sidebar_box dt a.active::after{
        content: '\25b6';
        color: var(--blue);
        position: absolute;
        top: 4px;
        right: 4vw;
        font-weight: 900;
    }.archive .sidebar_box dd,
body.page .sidebar_box dd{
        display: none;
    }.archive .sidebar_box dd a,
body.page .sidebar_box dd a{
        color: #202020;
        font-size: 13px;
    }.archive .content_wrap .content_main,
body.page .content_wrap .content_main,
body.error404 .content_wrap .content_main{
        background: #FFF;
        padding: 30px;
    }.archive .content_wrap .content_main,
body.page .content_wrap .content_main,
body.page .content_wrap.two_column .content_main,
body.error404 .content_wrap .content_main{
        margin: 0 auto;
        width: 92%;
        padding: 4vw;
    }.content_box{
        padding: 4vw 0;
        width: 100%;
        height: auto;
    }}

/**
 * グローバルメニューにグローバルサイトのアイコンを追加
 */

/* TOP page */