@charset "UTF-8";

@media screen and (max-width: 750px) {
    #template .frm{
        padding: 24px 5% 32px;
        background: #f4f6f9;
    }

/*////////////////////////////////////////////////////////////////////
#mv-slide　RHDのメインビジュアル
////////////////////////////////////////////////////////////////////*/
#mv-slide {
margin-bottom: 30px;
}
#mv-slide ul {
}
#mv-slide ul.slick-slider::after {
content: "";
display: block;
background: linear-gradient(to right, #073c67, #4dc6ff);
width: 100%;
height: 6px;
}
#mv-slide ul li {
}
#mv-slide ul li .img {
position: relative;
width: 100%;
padding-bottom: 56.25%;
height: 0;
}
#mv-slide ul li .img video,
#mv-slide ul li .img img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
#mv-slide ul li:nth-child(1) .img {
display: flex;
align-items: center;
}
#mv-slide ul li:nth-child(1) .img img {
max-height: 60%;
width: auto;
height: auto;
right: 0;
top: 20%;
}
#mv-slide ul li .catch {
left: 0;
right: 0;
margin: auto;
width: 100%;
height: auto;
background: #025dac;
background: linear-gradient(to right, #073c67, #376c85);
}
    #mv-slide ul li .catch .non{
        pointer-events: none;
        padding: 35px 0 40px;
    }
    #mv-slide ul li .catch .non_more{
        padding: 35px 0 40px;
    }
    #mv-slide ul li .catch .non:before,#mv-slide ul li .catch .non_more:before {
        content: none;
    }
#mv-slide ul li .catch a {
display: flex;
width: 100%;
height: 100%;
flex-wrap: wrap;
padding: 15px 0 60px;
position: relative;
}
#mv-slide ul li .catch a::before {
content: "MORE";
display: flex;
justify-content: center;
align-items: center;
font-size: 1.2rem;
margin: auto;
background-image: url(../img/common/cmn-arw1-white.png);
background-size: 6px auto;
background-repeat: no-repeat;
background-position: center right 8px;
border: 1px solid rgba(255,255,255,0.5);
color: #fff;
width: 50%;
height: 30px;
position: absolute;
bottom: 12px;
left: 0;
right: 0;
font-family: 'Josefin Sans', sans-serif;
}
#mv-slide ul li .catch a span {
font-size: 1.4rem;
font-weight: 600;
display: block;
color: #fff;
}
#mv-slide ul li .catch a span.catch-upper {
position: relative;
margin-bottom: 20px;
text-align: center;
width: 100%;
}
#mv-slide ul li .catch a span.catch-upper::before {
content: "";
position: absolute;
display: block;
width: 70%;
height: 2px;
background: #fff;
bottom: -12px;
left: 0;
right: 0;
margin: auto;
}
.mv-slide-controller {
display: flex;
justify-content: center;
align-items: center;
}
.mv-slide-controller__buttons {
position: relative;
flex: 0 0 40px;
height: 24px;
margin: 0 9px 0 0;
padding: 0 15px 0 0;
border-right: 1px solid #dadada;
}
.mv-slide-controller__play,
.mv-slide-controller__pause {
position: absolute;
top: 0;
left: 0;
visibility: hidden;
width: 24px;
height: 24px;
padding: 0;
border: none;
background-color: transparent;
background-repeat: no-repeat;
background-position: center;
background-size: 100% auto;
opacity: 0;
text-indent: -9999px;
outline: none;
cursor: pointer;
transition: visibility 0.4s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}
.mv-slide-controller__play.is-show,
.mv-slide-controller__pause.is-show {
visibility: visible;
opacity: 1;
}
.mv-slide-controller__play {
background-image: url(../img/top/icon-mv-play.png);
}
.mv-slide-controller__pause {
background-image: url(../img/top/icon-mv-pause.png);
}
#mv-slide .slick-dots {
position: static;
flex: 0 1 fit-content;
line-height: 1px;
}
#mv-slide .slick-dots li {
width: 12px;
height: 12px;
margin: 0 6px;
}
#mv-slide .slick-dots li button {
background: #dededc;
border-radius: 0;
width: 100%;
height: 100%;
}
#mv-slide .slick-dots li.slick-active {
}
#mv-slide .slick-dots li.slick-active button {
background: #025dad;
}
/*////////////////////////////////////////////////////////////////////
#mv-top　共通トップタイトル
////////////////////////////////////////////////////////////////////*/
#mv-top {
position: relative;
background-color: #718493;
margin-bottom: 32px;
}
#mv-top img {
object-fit: cover;
width: 100%;
height: 100%
}
#mv-top .mv-inner {
position: absolute;
display: flex;
align-items: center;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
#mv-top .mv-inner .ttl1 {
color: #fff;
text-align: left;
width: 100%;
padding-left: 5%;
}
#mv-top .mv-inner .ttl1 .en {
color: inherit;
font-family: 'Josefin Sans', sans-serif;
font-size: 2.2rem;
line-height: 1.3;
font-weight: 400;
}
#mv-top .mv-inner .ttl1 .jp {
color: inherit;
display: block;
font-size: 1.3rem;
font-weight: 400;
margin-top: 2px;
}
/*////////////////////////////////////////////////////////////////////
mv-sub　共通下層タイトル
////////////////////////////////////////////////////////////////////*/
#mv-sub {
height: 160px;
position: relative;
background-color: #718493;
}
#mv-sub img {
object-fit: cover;
width: 100%;
height: 100%
}
#mv-sub .mv-inner {
position: absolute;
display: flex;
align-items: center;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
#mv-sub .mv-inner .ttl1 {
color: #fff;
}
#mv-sub .mv-inner .ttl1 .en {
color: inherit;
font-family: 'Josefin Sans', sans-serif;
font-size: 2.6rem;
line-height: 1;
font-weight: 400;
}
#mv-sub .mv-inner .ttl1 .large {
color: inherit;
font-family: 'Josefin Sans', 'Noto Sans JP', sans-serif;
font-size: 2.6rem;
line-height: 1;
font-weight: 400;
}
#mv-sub .mv-inner .ttl1 .jp {
color: inherit;
display: block;
font-size: 1.3rem;
font-weight: 400;
margin-top: 2px;
}
    #mv-sub .mv-inner .ttl1 .jp.exception {
        color: inherit;
        display: block;
        font-size: 1.6rem;
        font-weight: 600;
    }
    .platform{
        margin-top: 40px;
    }
/*////////////////////////////////////////////////////////////////////
#ttl-box　下層のタイトル
////////////////////////////////////////////////////////////////////*/
#ttl-box {
margin-bottom: 24px;
}
#ttl-box .ttl-box-inner {
position: relative;
display: flex;
flex-wrap: wrap;
}
#ttl-box .ttl-box-inner .ttl2 {
font-size: 2.1rem;
font-weight: 400;
padding: 0 10px 0 40px;
position: relative;
margin: 0;
background: #fff;
order: 2;
width: 100%;
line-height: 1.4;
text-align: left;
}
#ttl-box .ttl-box-inner .ttl2::before {
content: "";
display: block;
position: absolute;
background: #4dc6ff;
width: 22px;
height: 4px;
top: 0;
bottom: 0;
left: 0;
margin: auto;
}
#ttl-box .ttl-box-inner::before {
}
#ttl-box .ttl-box-inner .breadcrumbs {
display: flex;
justify-content: flex-end;
background: #fff;
order: 1;
margin: 0 0 0 auto;
padding: 10px 12px 24px;
flex-wrap: wrap;
}
#ttl-box .ttl-box-inner .breadcrumbs li {
padding-left: 20px;
position: relative;
font-size: 1.0rem;
text-align: left;
margin: 0;
}
#ttl-box .ttl-box-inner .breadcrumbs li:nth-child(1) {
padding-left: 15px;
padding: 0;
}
#ttl-box .ttl-box-inner .breadcrumbs li:nth-child(1)::before {
content: "";
}
#ttl-box .ttl-box-inner .breadcrumbs li::before {
content: ">";
position: absolute;
display: block;
left: 8px;
color: #c7c7c7;
}
#ttl-box .ttl-box-inner .breadcrumbs li a {
text-decoration: underline;
color: #c7c7c7;
}
/*////////////////////////////////////////////////////////////////////
#top-news　トップのニュース [RHD][RDC][REC][RMK]
////////////////////////////////////////////////////////////////////*/
#top-news {
}
#top-news .nav {
}

/*////////////////////////////////////////////////////////////////////
.top-important-news　重要なお知らせ
////////////////////////////////////////////////////////////////////*/
.top-important-news {
    max-width: 90%;
}
.top-important-news__item {
    margin: 0 0 15px;
    padding: 20px;
    border: 4px solid #E4EDF9;
    text-align: left;
    line-height: 1.7;
}
.top-important-news__item:last-child {
    margin-bottom: 0;
}
.top-important-news__item p {
    margin: 0 0 1em;
    font-size: 1.4rem;
}
.top-important-news__item p:last-child {
    margin-bottom: 0;
}
.top-important-news__item ul,
.top-important-news__item ol {
    margin: 0 0 1em;
    padding: 0 0 0 1em;
    font-size: 1.4rem;
}
.top-important-news__item ul:last-child,
.top-important-news__item ol:last-child {
    margin-bottom: 0;
}
.top-important-news__item li {
    margin: 0 0 0.5em;
}
.top-important-news__item li:last-child {
    margin-bottom: 0;
}
.top-important-news__item ul li {
    list-style: disc;
}
.top-important-news__item ol li {
    list-style: decimal;
}
.top-important-news__item h1 {
    margin: 0 0 1em;
    font-size: 2rem;
    font-weight: bold;
}
.top-important-news__item h1:last-child {
    margin-bottom: 0;
}
.top-important-news__item h2 {
    margin: 0 0 1em;
    font-size: 1.8rem;
    font-weight: bold;
}
.top-important-news__item h2:last-child {
    margin-bottom: 0;
}
.top-important-news__item h3 {
    margin: 0 0 1em;
    font-size: 1.6rem;
    font-weight: bold;
}
.top-important-news__item h3:last-child {
    margin-bottom: 0;
}
.top-important-news__item h4,
.top-important-news__item h5,
.top-important-news__item h6 {
    margin: 0 0 1em;
    font-size: 1.4rem;
    font-weight: bold;
}
.top-important-news__item h1:last-child,
.top-important-news__item h2:last-child,
.top-important-news__item h3:last-child {
    margin-bottom: 0;
}
.top-important-news__item a {
    color: #134b7a;
    text-decoration: underline;
}

/*////////////////////////////////////////////////////////////////////
.top-emergency　緊急告知欄
////////////////////////////////////////////////////////////////////*/
.top-emergency {
    max-width: 90%;
    margin: 0 auto 32px;
}
.top-emergency__block {
    padding: 10px 0;
}
.top-emergency__text {
    margin: 0 0 1em;
    font-size: 1.4rem;
    line-height: 1.5;
}
.top-emergency__text:last-child {
    margin-bottom: 0;
}
.top-emergency__text a {
    color: #005eac;
    text-decoration: underline;
}
/*////////////////////////////////////////////////////////////////////
#top-banner　トップのバナー一覧
////////////////////////////////////////////////////////////////////*/
#top-banner {
background: #fff;
margin-top: 24px;
margin-bottom: 24px;
}
.h-top #top-banner {
margin-bottom: 32px;
}
#top-banner .img-list {
max-width: 90%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#top-banner .img-list section {
width: 49%;
margin: 0 0 8px 0;
}
#top-banner .img-list section > a {
}
    #top-banner .img-list section.non{
        pointer-events: none;
    }
    #top-banner .img-list section.non > a::after {
        content: none;
    }
#top-banner .img-list section > a > img {
}
#top-banner .img-list section > a > p {
}
#top-banner .img-list section > a > p .wrap {
}
#top-banner .img-list section > a > p .wrap.double {
margin-top: 1.2rem;
}
#top-banner .img-list section > a > p .wrap span {
color: #fff;
display: block;
}
#top-banner .img-list section > a > p .wrap .en {
font-size: 1.0rem;
}
#top-banner .img-list section > a > p .wrap .jn {
position: relative;
font-size: 1.0rem;
margin-top: 0.6em;
padding-top: 0.4em;
}
#top-banner .img-list section > a > p .wrap .jn::before {
content: "";
display: block;
width: 52px;
height: 1px;
background: #4dc6ff;
position: absolute;
top: 0;
left: 0;
right: 0;
margin: 0 auto;
}
/*////////////////////////////////////////////////////////////////////
#top-links　ショッピングボタン等 [REC]
////////////////////////////////////////////////////////////////////*/
#top-links {
max-width: 90%;
margin: 50px auto;
}
#top-links .list {
}
#top-links .list section {
width: 100%;
margin: 10px 0;
}
#top-links .list section a {
position: relative;
display: block;
}
#top-links .list section a::after {
content: "";
display: block;
position: absolute;
bottom: 0;
right: 0;
background: #fff url(../img/common/cmn-arw1.png) no-repeat center / 6px auto;
width: 28px;
height: 28px;
border: 1px solid #dcdcdc;
}
/*////////////////////////////////////////////////////////////////////
#top-business　トップの事業紹介 [RHD,RMK]
////////////////////////////////////////////////////////////////////*/
#top-business {
}
.h-rhd.h-top #top-business {
margin: 0 0 40px;
padding: 32px 0 16px;
background: #f4f6f9;
}
.h-rec.h-top #top-business {
}
.h-rdc.h-top #top-business {
}
.h-rmk.h-top #top-business {
margin: 32px auto 64px;
}
#top-business h2 {
}
/*////////////////////////////////////////////////////////////////////
#top-outline　トップの会社情報 [RMK]
////////////////////////////////////////////////////////////////////*/
#top-outline {
}
.h-rhd.h-top #top-outline {
}
.h-rec.h-top #top-outline {
}
.h-rdc.h-top #top-outline {
}
.h-rmk.h-top #top-outline {
    margin-top: 40px;
background: #f4f6f9;
padding: 32px 0;
}
#top-outline .outline-list {
max-width: 90%;
margin-top: 16px;
}
#top-outline .outline-list dl {
width: 100%;
}
#top-outline .outline-list dl dt {
}
#top-outline .outline-list dl dd {
}
/*////////////////////////////////////////////////////////////////////
#top-company　トップの事業紹介 [RHD,RMK]
////////////////////////////////////////////////////////////////////*/
#top-company {
}
.h-rhd.h-top #top-company {
}
.h-rec.h-top #top-company {
}
.h-rdc.h-top #top-company {
}
.h-rmk.h-top #top-company {
}
#top-company h2 {
}
/*////////////////////////////////////////////////////////////////////
#top-solution　トップのソリューション [REC]
////////////////////////////////////////////////////////////////////*/
#top-solution {
}
.h-rhd.h-top #top-solution {
}
.h-rec.h-top #top-solution {
margin: 64px 0 0;
}
.h-rdc.h-top #top-solution {
}
.h-rmk.h-top #top-solution {
}
#top-solution h2 {
}
#top-solution .img-list {
width: 90%;
margin: 32px auto 0;
box-sizing: content-box;
}
#top-solution .img-list section {
width: 100%;
}
#top-solution .img-list section a {
}
#top-solution .img-list section a img {
}
#top-solution .img-list section div p ,
#top-solution .img-list section a p {
font-size: 3.3rem;
}
#top-solution .img-list section .txt {
font-size: 1.4rem;
text-align: left;
padding: 1em 0 3em;
}
/*////////////////////////////////////////////////////////////////////
#top-message　トップのメッセージ [RDC]
////////////////////////////////////////////////////////////////////*/
#top-message {
}
.h-rhd.h-top #top-message {
}
.h-rec.h-top #top-message {
}
.h-rdc.h-top #top-message {
padding: 32px 0 32px;
}
.h-rmk.h-top #top-message {
}
#top-message h2 {
}
/*////////////////////////////////////////////////////////////////////
#top-special　トップのスペシャルコンテンツ一覧
////////////////////////////////////////////////////////////////////*/
#top-special {
background: #e4edf9;
}
#top-special h2 {
}
.h-rhd.h-top #top-special {
padding: 32px 0 32px;
}
.h-rec.h-top #top-special {
}
.h-rdc.h-top #top-special {
}
.h-rmk.h-top #top-special {
}
#top-special h2 {
}
/*////////////////////////////////////////////////////////////////////
#greeting　ごあいさつ
////////////////////////////////////////////////////////////////////*/
#greeting {
width: 100%;
background: #f7f8fb;
padding: 24px 10% 48px;
}
#greeting .greeting-inner {
}
#greeting .greeting-inner .greeting-text {
text-align: left;
font-size: 1.4rem;
margin-bottom: 2em;
}
#greeting .greeting-inner .greeting-text p {
margin-bottom: 1.5em;
}
#greeting .greeting-inner .greeting-text p:last-child {
margin-bottom: 0;
}
#greeting .greeting-inner .greeting-text a {
color: #134b7a;
text-decoration: underline;
}
#greeting .greeting-inner .signature li .name img {
width: 110px;
}

    #greeting .greeting-inner .signature {
        display: block;
        text-align: right;
    }
    #greeting .greeting-inner .signature li {

        margin: 5px 0 0;
        width: 100%;
        font-size: 1.5rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-items:baseline;
    }
    #greeting .greeting-inner .signature li .position {
        margin: 0;
    }
    #greeting .greeting-inner .signature li .name {
        font-size: 1.8rem;
        line-height: 1;
        margin: 0;
        margin-left: 20px;
        width: 120px;
        text-align: left;

    }
    #greeting .greeting-inner .caution{
        text-align: right;
        margin-top: 20px;
        font-size: 110%;
    }
    #greeting .greeting-company{
        text-align: right;
        font-size: 1.6rem;
        /* margin-right: 30px; */
        font-weight: bold;

    }
/*////////////////////////////////////////////////////////////////////
#company-philosophy　経営理念
////////////////////////////////////////////////////////////////////*/
#company-philosophy {
width: 90%;
position: relative;
margin-bottom: 32px;
}
#company-philosophy::before {
content: "";
position: absolute;
display: block;
bottom: 0;
left: 0;
width: 100%;
height: calc(100% - 45px);
background: url(../img/philosophy/philosophy-bg.png) no-repeat center / 100% 100%;
}
#company-philosophy section {
position: relative;
padding-bottom: 1em;
}
#company-philosophy section h2 {
position: relative;
line-height: 60px;
height: 60px;
color: #4dc6ff;
text-align: left;
}
#company-philosophy section h2::after {
position: absolute;
bottom: 13px;
left: 0;
content: "";
display: block;
width: 100%;
height: 1px;
line-height: 0;
border-bottom: 1px dotted #0e3a6a;
}
#company-philosophy section h2 .en {
font-size: 3.6rem;
font-family: 'Josefin Sans', sans-serif;
font-weight: 400;
display: inline-block;
height: 60px;
}
#company-philosophy section h2 .jp {
font-size: 1.4rem;
padding-left: 0.5em;
}
#company-philosophy section p {
font-size: 1.4rem;
color: #0e3a6a;
font-weight: 600;
text-align: left;
margin: 1em 0;
}
#company-philosophy section:nth-of-type(1) p {
}
#company-philosophy section p a {
text-decoration: underline;
}

/*////////////////////////////////////////////////////////////////////
#company-overview　会社概要
////////////////////////////////////////////////////////////////////*/
#company-overview {
}
#company-overview .company-overview-detail {
background: #f5f5f8;
padding: 24px 5% 32px;
}
#company-overview .company-overview-detail ul {
}
#company-overview .company-overview-detail ul li {
display: flex;
background: #fff;
align-items: center;
position: relative;
padding: 8px 0;
margin-bottom: 2px;
}
#company-overview .company-overview-detail ul li:nth-child(1) {
margin-top: 0;
}
#company-overview .company-overview-detail ul li::before {
content: "";
display: block;
position: absolute;
width: 4px;
height: 100%;
background: #4dc6ff;
left: 0;
top: 0;
}
#company-overview .company-overview-detail ul li .ttl {
width: 140px;
text-align: left;
margin: 0;
align-items: center;
height: 100%;
display: block;
padding-left: 16px;
font-weight: 600;
font-size: 1.2rem;
}
#company-overview .company-overview-detail ul li .txt {
text-align: left;
flex: 1;
padding-right: 16px;
font-size: 1.4rem;
}
ul li .txt .post1 {
letter-spacing: 0.01em;
}
#company-overview .company-overview-detail ul li .txt img {
margin-bottom: 5px;
height: 13.4px;
}
    #company-overview .company-overview-detail ul li .txt.pdf a{
        position: relative;
        padding-left: 25px;
        transition: opacity .3s;
        color: #1b4f7e;
    }
    #company-overview .company-overview-detail ul li .txt a:hover{
        opacity: .6;
    }
    #company-overview .company-overview-detail ul li .txt.pdf a:before{
        content: '';
        width: 15px;
        height: 17px;
        position: absolute;
        background: center center no-repeat;
        background-size: contain;
        left: 0;
        top:3px;
    }
    #company-overview .company-overview-detail ul li .txt.pdf a:before {
        background-image: url(../img/common/cmn-icon-pdf.png);
    }
#company-overview .company-overview-detail ul li .txt .license {
    display: block;
    margin: 0 0 8px;
}
#company-overview .company-overview-detail ul li .txt .license:last-child {
    margin-bottom: 0;
}

/*////////////////////////////////////////////////////////////////////
#company-officers　役員一覧
////////////////////////////////////////////////////////////////////*/
#company-officers {
}
#company-officers h4 {
}
#company-officers .company-officers-detail {
max-width: 90%;
padding: 24px 0;
}
#company-officers .company-officers-detail ul {
}
#company-officers .company-officers-detail ul li {
position: relative;
padding-left: 16px;
background: #fff;
margin-bottom: 16px;
}
#company-officers .company-officers-detail ul li::before {
content: "";
display: block;
position: absolute;
width: 4px;
height: 100%;
background: #4dc6ff;
left: 0;
top: 0;
}
#company-officers .company-officers-detail ul li .ttl {
margin: 0;
text-align: left;
font-size: 1.2rem;
font-weight: 600;
}
#company-officers .company-officers-detail ul li .txt {
margin: 0;
text-align: left;
font-size: 1.4rem;
font-weight: 400;
}
#company-officers .company-officers-detail ul li .txt img {
height: 13.5px;
}
/*////////////////////////////////////////////////////////////////////
#acceass　アクセス
////////////////////////////////////////////////////////////////////*/
#access {
}
#access h4 {
}
#access .access-detail {
background: #f5f5f8;
}
#access .access-detail .gmap {
position: relative;
width: 100%;
padding-bottom: 50%;
background: skyblue;
}
#access .access-detail .gmap iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
#access .access-detail .time-required {
width: 90%;
padding: 24px 0 48px;
}
#access .access-detail .time-required li {
text-align: left;
font-size: 1.4rem;
font-weight: 600;
}
#access .access-detail .time-required li span {
display: block;
font-weight: 400;
}
#access .access-detail .time-required li span:nth-child(2) {
margin-bottom: 24px;
}
/*////////////////////////////////////////////////////////////////////
#company-histor　会社沿革
////////////////////////////////////////////////////////////////////*/
.company-history-block {
    max-width: 90%;
    margin: 0 auto 48px;
    text-align: left;
}
.company-history-heading {
    margin: 0 0 4px;
    padding: 10px;
    background: #0E3A6A;
    font-size: 1.6rem;
    font-weight: 600;
    color: #fff;
    text-align: center;
}
.company-history--first,
.company-history--second,
.company-history--third {
    position: relative;
    padding: 0 0 0 8px;
}
.company-history--first::before,
.company-history--second::before,
.company-history--third::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 4px;
    height: calc(100% - 4px);
}
.company-history--first::before {
    background: #0E3A6A;
}
.company-history--second::before {
    background: #005FAD;
}
.company-history--third::before {
    background: #4BA3EB;
}
.company-history-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    font-size: 1.2rem;
}
.company-history-table th,
.company-history-table td {
    padding: 10px;
    border-bottom: 4px solid #fff;
}
.company-history-table th {
    text-align: center;
}
.company-history-table thead th {
    background: #EBEBEB;
    border-bottom: 4px solid #fff;
    font-weight: 600;
}
.company-history-table thead th:first-child {
    border-right: 4px solid #fff;
}
.company-history-table tbody th,
.company-history-table tbody td {
    background: #F7F9FA;
}
.company-history-table tbody th {
    width: 8em;
    border-right: 4px solid #fff;
}
.company-history-table tbody td {
    width: calc(100% - 8em);
}
.company-history-note {
    margin: 11px 0 0 15px;
    padding: 0 0 19px;
    font-size: 1rem;
}
.company-history-note + .company-history-tab-block {
    margin-top: -4px;
}
.company-history-tab-block {
    margin: 11px 0 0;
}
.company-history-tab-menu--second,
.company-history-tab-menu--third {
    display: flex;
    justify-content: space-between;
    margin: 0 0 4px;
    border-bottom-width: 4px;
    border-bottom-style: solid;
    font-size: 1.2rem;
    font-weight: 600;
}
.company-history-tab-menu--second {
    border-bottom-color: #005FAD;
}
.company-history-tab-menu--third {
    border-bottom-color: #4BA3EB;
}
.company-history-tab-menu__item {
    flex: 0 1 calc((100% - 4px) / 2);
    margin: 0;
}
.company-history-tab-menu__item button {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 10px 28px 10px 10px;
    border: none;
    border-bottom: 4px solid #fff;
    background: none;
    outline: none;
    color: #fff;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.4s cubic-bezier(0.23, 1, 0.32, 1), border-bottom-color 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}
.company-history-tab-menu__item button::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 12px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 6px 0 6px;
    border-color: #FFFFFF transparent transparent transparent;
    transform: translateY(calc(-50% + 2px));
    transition: transform 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}
.company-history-tab-menu__item button.is-opened::after {
    transform: translateY(-50%) rotate(180deg);
}
.company-history-tab-menu--second .company-history-tab-menu__item button {
    background: #2D88D3;
}
.company-history-tab-menu--second .company-history-tab-menu__item button.is-opened {
    background: #005FAD;
    border-bottom-color: #005FAD;
}
.company-history-tab-menu--third .company-history-tab-menu__item button {
    background: #75BFFA;
}
.company-history-tab-menu--third .company-history-tab-menu__item button.is-opened {
    background: #4BA3EB;
    border-bottom-color: #4BA3EB;
}
.company-history-tab-content {
    position: relative;
    height: 0;
    overflow: hidden;
    opacity: 0;
    transition: opacity 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}
.company-history-tab-content.is-opened {
    height: auto;
    overflow: visible;
    opacity: 1;
}

/*////////////////////////////////////////////////////////////////////
#group-list　グループ事業領域
////////////////////////////////////////////////////////////////////*/
#group-list {
margin-bottom: 64px;
}
#group-list section {
margin-bottom: 48px;
}
#group-list section .ttl-navy {
}
#group-list section dl {
padding: 0 20px;
margin: 24px auto;
    text-align: left;

}
#group-list section dl dt {
font-size: 1.8rem;
font-weight: 600;
border-left: 4px solid #4dc6ff;
padding: 8px 0 8px 16px;
margin-bottom: 16px;
}
#group-list section dl dd {
font-size: 1.4rem;
line-height: 1.6;
color: #666;
margin-bottom: 24px;
}
/*////////////////////////////////////////////////////////////////////
#kihan-intro　行動規範のリード文
////////////////////////////////////////////////////////////////////*/
#kihan-lead {
}
#kihan-lead .share-lead {
}
#kihan-lead .share-lead p {
}
/*////////////////////////////////////////////////////////////////////
#kihan-fundamental　基本姿勢
////////////////////////////////////////////////////////////////////*/
#kihan-fundamental {
}
#kihan-fundamental .ttl-navy {
}
#kihan-fundamental .detail {
text-align: left;
font-size: 1.4rem;
width: 90%;
padding: 24px 0 24px;
}
#kihan-fundamental .detail li {
margin-bottom: 20px;
text-indent: -1.9em;
padding-left: 1.9em;
}
/*////////////////////////////////////////////////////////////////////
#kihan-compliance　遵守事項
////////////////////////////////////////////////////////////////////*/
#kihan-compliance {
}
#kihan-compliance .ttl-navy {
}
#kihan-compliance .headline {

text-align: left;
font-size: 1.4rem;
width: 90%;
padding: 24px 0;
}
#kihan-compliance .headline section {
}
#kihan-compliance .headline section h3 {
font-size: 1.6rem;
display: flex;
padding-left: 24px;
align-items: center;
position: relative;
margin-bottom: 17px;
}
#kihan-compliance .headline section h3::before {
content: "";
display: block;
position: absolute;
width: 3px;
height: 100%;
background: #4dc6ff;
left: 0;
top: 0;
}
#kihan-compliance .headline section .compliance-child {
margin-bottom: 32px;
font-size: 1.4rem;
}
#kihan-compliance .headline section .compliance-child li {
margin-bottom: 20px;
text-indent: -1.9em;
padding-left: 1.9em;
}
#kihan-compliance .headline section .compliance-child li .compliance-grandchild {
}
#kihan-compliance .headline section .compliance-child li .compliance-grandchild li {
margin-bottom: 2px;
}
/*////////////////////////////////////////////////////////////////////
#company-top-list　会社情報トップのリスト
////////////////////////////////////////////////////////////////////*/
#company-top-list {
}
#company-top-list .img-list {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
max-width: 90%;
}
#company-top-list .img-list section {
width: 48%;
margin: 0 0.2% 0 0;
}
#company-top-list .img-list section:nth-child(3n) {
margin: 0;
}
#company-top-list .img-list section .list-ttl {
text-align: left;
font-family: 'Josefin Sans', sans-serif;
font-weight: 400;
padding-bottom: 10px;
font-size: 1.2rem;
line-height: 1.0;
}
#company-top-list .img-list section > img {
}
#company-top-list .img-list section > a > p {
color: #fff;
font-weight: 600;
font-size: 1.4rem;
}
#company-top-list .img-list section .list-txt {
    text-align: left;
padding: 16px 0 32px 0;
font-size: 1.2rem;
}
/*////////////////////////////////////////////////////////////////////
#business-top-list　事業紹介トップのリスト
////////////////////////////////////////////////////////////////////*/
#business-top-list {
padding-bottom: 32px;
}
#business-top-list section {
text-align: left;
width: 90%;
}
#business-top-list section:nth-child(2n) {
}
#business-top-list section figure {
position: relative;
}
#business-top-list section figure figcaption {
position: absolute;
top: 24px;
left: 24px;
color: #fff;
padding: 2px 0 2px 16px;
line-height: 1;
}
#business-top-list section figure figcaption::before {
content: "";
display: block;
width: 3px;
background: #4dc6ff;
position: absolute;
top: 0;
left: 0;
height: 100%;
}
#business-top-list section figure figcaption span {
display: block;
}

#business-top-list section figure figcaption br {
display: none;
}
#business-top-list section figure figcaption .jp {
font-size: 1.4rem;
font-weight: 600;
}
#business-top-list section figure figcaption .en {
font-size: 1.2rem;
font-family: 'Josefin Sans', sans-serif;
font-weight: 400;
padding-top: 0.5rem;
}
#business-top-list section figure img {
}
#business-top-list section ul {
margin: 0;
width: 100%;
display: flex;
flex-wrap: wrap;
padding: 8px 0 24px;
}
#business-top-list section ul li {
margin: 1px 0;
}
#business-top-list section ul li a {
font-size: 1.4rem;
margin-right: 2em;
text-decoration: underline;
}
#business-top-list section ul li a::after {
content: "";
display: inline-block;
width: 6px;
height: 8px;
background: #fff url(../img/common/cmn-arw1.png) no-repeat center / 6px auto;
margin-left: 1em;
}
/*////////////////////////////////////////////////////////////////////
#business-technology　技術
////////////////////////////////////////////////////////////////////*/
#business-technology {
}
#business-technology .img {
}
#business-technology .img img {
}
#business-technology .share-lead {
}
#business-technology .share-lead p {
padding-bottom: 48px
}

/*////////////////////////////////////////////////////////////////////
 business new （2024年4月〜）
////////////////////////////////////////////////////////////////////*/

/* トップ */
#business-lead {
    margin: 0 0 32px;
}

.business2-top-list-block {
    max-width: 90%;
    margin: 0 auto 48px;
    text-align: left;
}
.business2-top-list {
}
.business2-top-list__item {
    width: 100%;
    margin: 0 0 20px;
}
.business2-top-list__item a {
    position: relative;
    display: block;
}
.business2-top-list__heading {
    position: absolute;
    top: 25px;
    left: 25px;
    display: flex;
    align-items: center;
    min-height: 38px;
    padding: 0 0 0 18px;
    border-left: 4px solid #70C3FA;
    color: #fff;
    z-index: 1;
}
.business2-top-list__heading-text {
    display: block;
    font-size: 1.4rem;
}
.business2-top-list__heading-text-sub {
    display: block;
    font-size: 1.2rem;
}
.business2-top-list__image {
}
.business2-top-list__image img {
    width: 100%;
}

/* 株式会社レスター */
.business2-restar-block {
    max-width: 90%;
    margin: 0 auto 48px;
    text-align: left;
}
.business2-restar-list {
}
.business2-restar-list__item {
    margin: 0 0 32px;
}
.business2-restar-list__item:last-child {
    margin-bottom: 0;
}
.business2-restar-list__heading {
    margin: 0 0 20px;
    padding: 10px 0 10px 18px;
    border-left: 4px solid #70C3FA;
    font-size: 1.8rem;
    font-weight: 600;
}
.business2-restar-list__box {
}
.business2-restar-list__image {
    margin: 0 0 20px;
}
.business2-restar-list__image img {
    width: 100%;
}
.business2-restar-list__desc {
}
.business2-restar-list__text {
    margin: 0 0 20px;
    font-size: 1.4rem;
    line-height: 1.8;
}
.business2-restar-list__button {
    width: 100%;
    font-family: 'Josefin Sans', 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    text-align: center;
}
.business2-restar-list__button a {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    width: 100%;
    height: 100%;
    padding: 15px 0;
    border: 1px solid #dadada;
    color: #134b7a;
}

/* レスターグループ */
.business2-group-block {
    max-width: 90%;
    margin: 0 auto 48px;
    text-align: left;
}
.business2-group-image {
    margin: 0 0 40px;
}
.business2-group-image img {
    width: 100%;
}
.business2-group-list {
}
.business2-group-list__item {
    margin: 0 0 40px;
}
.business2-group-list__item:last-child {
    margin-bottom: 0;
}
.business2-group-list__heading {
    margin: 0 0 20px;
    padding: 10px 0 10px 18px;
    border-left: 4px solid #70C3FA;
    font-size: 1.8rem;
    font-weight: 600;
}
.business2-group-list__block {
    margin: 0 0 24px;
    padding: 0 0 24px;
    border-bottom: 1px solid #dadada;
}
.business2-group-list__block:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}
.business2-group-list__desc {
    margin: 0 0 20px;
}
.business2-group-list__text {
    font-size: 1.4rem;
    line-height: 1.8;
}
.business2-group-list__link {
    padding: 15px;
    background: #f4f6f9;
}
.business2-group-list__link-item {
    margin: 0 0 10px 1em;
    font-size: 1.4rem;
    color: #134b7a;
    list-style: disc;
}
.business2-group-list__link-item:last-child {
    margin-bottom: 0;
}
.business2-group-list__link-item a {
    color: #134b7a;
    text-decoration: underline;
}

    /*////////////////////////////////////////////////////////////////////
    #network-btns　グループネットワークナビ
    ////////////////////////////////////////////////////////////////////*/
    #network-btns {
        margin-top: 24px;
        margin-bottom: 24px;
    }
    #network-btns .img-left-list {
    }
    #network-btns .img-left-list section {
        width: 80%;
    }
    #network-btns .img-left-list section > a {
    }
    #network-btns .img-left-list section > a .img {
    }
    #network-btns .img-left-list section > a .img img {
    }
    #network-btns .img-left-list section > a:hover .img img {
        transform: scale(1.1);
    }
    #network-btns .img-left-list section > a .txt {
        transition: 0.2s ease;
        justify-content: center;
        font-size: 1.6rem;
    }
    #network-btns .img-left-list section > a:hover .txt {
        background-color: #e4edf9;
    }
    #network-btns .img-left-list section > a .txt::after {
    }
/*////////////////////////////////////////////////////////////////////
#network-japan　グループネットワーク　日本
////////////////////////////////////////////////////////////////////*/
#network-japan,
#network-group-japan,
#network-group-foreign {
margin-bottom: 32px;
margin-top: -54px;
padding-top: 54px;
}
#network-japan .ttl-bg-line + .offices-list::before,
#network-japan .ttl-navy + .offices-list::before,
#network-group-japan .ttl-bg-line + .offices-list::before,
#network-group-japan .ttl-navy + .offices-list::before,
#network-group-foreign .ttl-bg-line + .offices-list::before,
#network-group-foreign .ttl-navy + .offices-list::before {
display: none;
}
#network-japan .offices-list,
#network-group-japan .offices-list,
#network-group-foreign .offices-list {
position: relative;
}
#network-group-japan .offices-list,
#network-group-foreign .offices-list {
padding-top: 32px;
}
#network-japan .offices-list::before,
#network-group-japan .offices-list::before,
#network-group-foreign .offices-list::before {
content: "";
display: block;
position: absolute;
top: 0;
left: 10%;
width: 80%;
border-top: 1px solid #e6e6e6;
}
#network-japan .offices-list::after,
#network-group-japan .offices-list::after,
#network-group-foreign .offices-list::after {
}
#network-japan .offices-list h4,
#network-group-japan .offices-list h4,
#network-group-foreign .offices-list h4 {
border-left: 4px solid #4dc6ff;
font-size: 1.8rem;
color: #0e3a6a;
padding: 0 0 0 16px;
width: 90%;
font-weight: 600;
}
#network-japan .offices-list .head-office,
#network-group-japan .offices-list .head-office,
#network-group-foreign .offices-list .head-office {
}
#network-japan .offices-list .caution,
#network-group-japan .offices-list .caution,
#network-group-foreign .offices-list .caution {
font-size: 1.4rem;
margin-top: 15px;
width: 100%;
padding: 0 20px;
}
#network-japan .offices-list .head-office dl,
#network-group-japan .offices-list .head-office dl,
#network-group-foreign .offices-list .head-office dl {
width: 80%;
}
#network-japan .offices-list .branch-office,
#network-group-japan .offices-list .branch-office,
#network-group-foreign .offices-list .branch-office {
}
#network-japan .offices-list .branch-office dl,
#network-group-japan .offices-list .branch-office dl,
#network-group-foreign .offices-list .branch-office dl {
}
#network-japan .offices-list .branch-office dl:nth-of-type(1),
#network-group-japan .offices-list .branch-office dl:nth-of-type(1) {
border-top: 1px solid #e6e6e6;
}
#network-japan .offices-list dl:last-of-type,
#network-group-japan .offices-list dl:last-of-type,
#network-group-foreign .offices-list dl:last-of-type {
border-bottom: none;
}
/*////////////////////////////////////////////////////////////////////
#network-foreign　グループネットワーク　海外
////////////////////////////////////////////////////////////////////*/
#network-foreign {
margin-top: -54px;
padding-top: 54px;
margin-bottom: 32px;
}
#network-foreign .worldmap {
margin-top: 24px;
margin-bottom: 0px;
position: relative;
}
#network-foreign .worldmap .bg {
width: 100%;
}
#network-foreign .worldmap .bg img {
width: 100%;
}
#network-foreign .worldmap .pin {
position: absolute;
width: 0.968%;
}
#network-foreign .worldmap .pin a {
display: block;
width: 100%;
line-height: 0;
}
#network-foreign .worldmap .pin img {
width: 100%;
}
#network-foreign .worldmap .pin.pin1 {
top: 58.2%;
left: 32.8%;
}
#network-foreign .worldmap .pin.pin2 {
top: 51.2%;
left: 32.3%;
}
#network-foreign .worldmap .pin.pin3 {
top: 53.1%;
left: 33.7%;
}
#network-foreign .worldmap .pin.pin4 {
top: 39.8%;
left: 70.6%;
}
    #network-foreign .worldmap .pin.pin5 {
        top: 27.8%;
        left: 8.3%;
    }
#network-foreign .worldmap .pin.pin6 {
top: 42%;
left: 32.7%;
}
#network-foreign .worldmap .pin.pin7 {
top: 45.8%;
left: 35.6%;
}
#network-foreign .worldmap .pin.pin8 {
top: 44.2%;
left: 37.7%;
}
#network-foreign .worldmap .pin.pin9 {
top: 36.7%;
left: 39.4%;
}
#network-foreign .ttl-navy {
position: relative;
z-index: 1;
margin-bottom: 0;
}
#network-foreign .ttl-bg-line {
}
#network-foreign .network-eastasia-main {
background: #f4f6f9;
margin-bottom: 32px;
}
#network-foreign .network-eastasia-main .offices-list:nth-of-type(1) {
border-top: none;
}
#network-foreign .ttl-bg-line + .offices-list {
border-top: none;
}
#network-foreign .offices-list {
border-top: 1px solid #e6e6e6;
}

#network-foreign .offices-list dl {
}
#network-foreign .offices-list dl:last-of-type {
border-bottom: none;
}
#network-foreign .offices-list dl dt {
text-align: left;
letter-spacing: 0;
color: #1b4f7e;
color: #0e3a6a;
font-weight: 600;
}
#network-foreign .offices-list dl .address {
text-align: left;
letter-spacing: 0;
}
#network-foreign .offices-list dl .tel {
}
#network-eastasia,
#network-singapore,
#network-thailand,
#network-vietnam,
#network-usa,
#network-germany {
margin-top: -54px;
padding-top: 54px;
}

    /*////////////////////////////////////////////////////////////////////
		#ir-description　業績ハイライト
		////////////////////////////////////////////////////////////////////*/
    #highlight1 p,#highlight2 p,#highlight3 p,#highlight4 p{
        font-size: 1.4rem;
        margin: 1em 0;
    }

    #ir-description .lead{
        margin-top: 30px;
        margin-bottom: 40px;
        font-size: 1.4rem;
        background: #f4f6f9;
        padding: 1em;
        /*color:#666666;*/
        max-width: 1240px;
        text-align: left;
    }
    #ir-description .lead li{
        position: relative;
        padding-left: 1em;
    }
    #ir-description .lead li span{
        position: absolute;
        top:0;left:0;
    }
    #ir-highlight-list ul{
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center;
    }
    #ir-highlight-list li{
        width: 46%;
        text-align: center;
        margin-bottom: 2em;
    }
    #ir-highlight-list li a{
        color:#fff;
        background-color: #7eb0c8;
        display: flex;
        position: relative;
        align-items: center;
        justify-content: center;
        transition: all 0.3s ease;
        padding: 1em 1em 1.5em;
        font-size: 1.4rem;
    }
    #ir-highlight-list li a:after{
        content: "";
        display: block;
        width: 0.7em;height: 0.7em;
        border: 1px solid transparent;
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff;
        position: absolute;
        left:50%;bottom:0.5em;
        transform: translate3d(-50%,0,0) rotate(45deg);
    }

    #ir-highlight-list li a:hover{background-color: #134b7a;}
    .overflow{
        width: 96%;
        margin: 0 auto 40px;
        overflow-x: scroll;
    }
    .ir-iframe{
        width: 1240px;
        margin: 0 auto 40px;
    }
/*////////////////////////////////////////////////////////////////////
#ir-top-news　投資家情報トップのニュース
////////////////////////////////////////////////////////////////////*/
#ir-top-news {
}
#ir-top-news .ttl-ir {
}
/*////////////////////////////////////////////////////////////////////
#ir-top-list　投資家情報トップのリスト
////////////////////////////////////////////////////////////////////*/
    #ir-top-list {
        background: #f4f6f9;
    }
    #ir-top-list .img-left-list {
        width: 90%;
        padding: 12px 0 24px;
    }
    #ir-top-list .img-left-list section {
        margin-bottom: 40px;
    }
    #ir-top-list .img-left-list section:last-child{
        margin-bottom: 0;
    }
    #ir-top-list .img-left-list section > a {
        margin: 12px 0 0;
    }
    #ir-top-list .img-left-list section > a .img {
        align-self: flex-start;
    }
    #ir-top-list .img-left-list section > a .img img {
    }
    #ir-top-list .img-left-list section > a .txt {
    }
    #ir-top-list .img-left-list section > a .txt::after {
    }
    #ir-top-list .img-left-list section > a .txt h3 {
        border-bottom: 2px solid #4dc6ff;
        font-size: 1.4rem;
        font-weight: 600;
        padding-bottom: 10px;
    }
    #ir-top-list .img-left-list section .sub {
    }
    #ir-top-list .img-left-list section .sub ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 0;
        text-align: left;
        font-size: 1.2rem;
    }
    #ir-top-list .img-left-list section .sub ul li {
        width: 48%;
        margin: 0;
        border-bottom: 1px solid #dadada;
    }
    #ir-top-list .img-left-list section .sub ul li a {
        padding: 0.8em 20% 0.8em 5%;
        background: rgba(255,255,255,0.0) url(../img/common/cmn-arw1.png) no-repeat center right 10px / 6px auto;
        height: 100%;
        display: flex;
        align-items: center;
    }
    #ir-top-list .img-left-list section .sub ul li span {
        padding: 0.8em 5%;
        display: block;
    }
    /*////////////////////////////////////////////////////////////////////
    #ir-calendar　投資家情報カレンダー
    ////////////////////////////////////////////////////////////////////*/
    #ir-calendar {
        margin-top: 32px;
        margin-bottom: 48px;
    }
    #ir-calendar .ir-cal {
        margin-top: 40px;
        width: 90%;
    }
    #ir-calendar .ttl-ir {
        margin-bottom: 12px;
    }
    #ir-calendar .ttl-ir::after {
        content: "";
        display: block;
        border-bottom: 3px solid #4dc6ff;
        width: 90%;
        margin: 0 auto;
        margin-top: 24px;
    }
    #ir-calendar section {
        margin-bottom: 24px;
        width: 90%;
    }
    #ir-calendar section h3 {
        font-size: 2.1rem;
        padding: 0 0 12px;
        text-align: left;
    }
    #ir-calendar section ul {

    }
    #ir-calendar section ul li {
        font-size: 1.4rem;
        display: flex;
        flex-wrap: wrap;
    }
    #ir-calendar section ul li p {
        padding: 8px 0;

    }
    #ir-calendar section ul li .quarter {
        width: 50%;
        background: #134b7a;
        color: #fff;
    }
    #ir-calendar section ul li .date {
        width: 50%;
        background: #d2d2d2;
    }
    #ir-calendar section ul li .txt {
        flex: 1;
        padding-left: 20px;
        padding-right: 20px;
        border-left: 1px solid #d2d2d2;
        border-right: 1px solid #d2d2d2;
        text-align: left;
    }
    #ir-calendar section ul li:last-child .quarter,
    #ir-calendar section ul li:last-child .date {
        border-bottom: none;
    }
    #ir-calendar section ul li:last-child .txt {
        border-bottom: 1px solid #d2d2d2;
    }
/*////////////////////////////////////////////////////////////////////
ir-management-policy-links　経営方針ページのリンクボタン
////////////////////////////////////////////////////////////////////*/
#ir-management-policy-links {
margin-bottom: 32px;
}
#ir-management-policy-links .list {
width: 80%;
}
#ir-management-policy-links .list section {
width: 100%;
margin-top: 12px;
}
#ir-management-policy-links .list section a {
border: 1px solid #dcdcdc;
width: 100%;
height: 100%;
display: flex;
padding: 5px;
transition: all 0.3s ease;
color: #1b4f7e;
}
#ir-management-policy-links .list section a img {
width: 64px;
align-self: flex-start;
}
#ir-management-policy-links .list section a p {
color: inherit;
position: relative;
flex: 1;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.4rem;
font-weight: 600;
}
#ir-management-policy-links .list section a p::after {
position: absolute;
top: 50%;
right: 18px;
content: "";
display: block;
width: 6px;
height: 10px;
margin-top: -5px;
background-position: center;
background-size: contain;
background-repeat: no-repeat;
background-image: url(../img/common/cmn-arw1.png);
}
/*////////////////////////////////////////////////////////////////////
#ir-governance　ガバナンス体制
////////////////////////////////////////////////////////////////////*/
#ir-governance {
}
#ir-governance h2 {
}
#ir-governance .frm {
padding: 24px 5% 32px;
background: #f4f6f9;
}
#ir-governance .frm .pdf-btn {
width: 100%;
    margin: 5px auto;
background: #fff;
}
/*////////////////////////////////////////////////////////////////////
#ir-governance-think　コーポレート・ガバナンス体制の概要
////////////////////////////////////////////////////////////////////*/
#ir-governance-think {
}
#ir-governance-think h2 {
}
#ir-governance-think p {
    text-align: left;
font-size: 1.4rem;
margin: 24px auto 32px;
padding: 0 5%;

}
/*////////////////////////////////////////////////////////////////////
#ir-governance-outline　コーポレート・ガバナンス体制の概要
////////////////////////////////////////////////////////////////////*/
#ir-governance-outline {
}
#ir-governance-outline h2 {
}
#ir-governance-outline .frm {
padding: 24px 5% 32px;
background: #f4f6f9;
}
#ir-governance-outline .frm .img {
width: 100%;
padding: 20px;
background: #fff;
}
#ir-governance-outline .frm .pdf-btn {
width: 100%;
margin-top: 16px;
}
/*////////////////////////////////////////////////////////////////////
#ir-risk　事業等のリスク
////////////////////////////////////////////////////////////////////*/
#ir-risk {
width: 100%;
margin-bottom: 64px;
}
#ir-risk h2 {
margin-bottom: 32px;
}
#ir-risk > p,
#ir-risk > h3,
#ir-risk > div {
font-size: 1.4rem;
text-align: left;
width: 90%;
}
#ir-risk > p {
margin-bottom: 24px;
}
#ir-risk > h3 {
}
#ir-risk > div {
}
#ir-risk > div > h4 {
padding-left: 1em;
}
#ir-risk > div > p {
margin-bottom: 32px;
padding-left: 3em;
}

/*////////////////////////////////////////////////////////////////////
#ir-gov　グループガバナンスとコンプライアンスへの取り組み
////////////////////////////////////////////////////////////////////*/
#ir-gov {
    width: 100%;
    margin-bottom: 64px;
    }
    #ir-gov h2 {
    margin-bottom: 32px;
    }
    #ir-gov h3 {
    margin-bottom: 1em;
    }
    #ir-gov > p,
    #ir-gov > h3,
    #ir-gov > div {
    font-size: 1.4rem;
    text-align: left;
    width: 90%;
    }
    #ir-gov > p {
    margin-bottom: 24px;
    }
    #ir-gov > h3 {
    }
    #ir-gov > div {
    }
    #ir-gov > div > h4 {
    padding-left: 1em;
    }
    #ir-gov > div > p {
    margin-bottom: 32px;
    padding-left: 3em;
    }

/*////////////////////////////////////////////////////////////////////
#ir-documents-list　最新資料一覧
////////////////////////////////////////////////////////////////////*/
#ir-documents-list {
}
#ir-documents-list .documents-list {
margin-top: 16px;
margin-bottom: 24px;
display: flex;
flex-wrap: wrap;
}
#ir-documents-list .documents-list li {
width: 100%;
margin: 0;
}
#ir-documents-list .documents-list li a {
font-size: 1.6rem;
padding: 8px 10%;
color: #1b4f7e;
display: flex;
align-items: center;
    text-align: left;
}
#ir-documents-list .documents-list li a::before {
content: "";
display: inline-block;
width: 18px;
height: 29px;
background-repeat: no-repeat;
background-position: center;
background-size: contain;
background-image: url(../img/common/cmn-icon-pdf.png);
margin-right: 0.5em;
}
/*////////////////////////////////////////////////////////////////////
ir-documents-archives　過去資料はこちら
////////////////////////////////////////////////////////////////////*/
    #ir-documents-archives .ttl-navy {
        padding: 0;
        max-width: 350px;
        font-size: 180%;
        margin-bottom: 40px;
    }
    #ir-documents-archives .ttl-navy a{
        display: block;
        padding: 12px 0;
        position: relative;
        background: #fff;
        color: #1b4f7e;
        border: 1px solid;
        transition: .3s;
    }
    #ir-documents-archives .ttl-navy a:hover{
        background: #1b4f7e;
        color: #fff;
    }
    #ir-documents-archives .ttl-navy a::after,#ir-documents-archives .ttl-navy a:hover::after {
        transition: .3s;
        position: absolute;
        content: "";
        display: inline-block;
        width: 15px;
        height: 15px;
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        background-image: url(../img/common/cmn-arw1.png);
        right: 15px;
        transform: translateY(-50%);
        top:50%;
    }
    #ir-documents-archives .ttl-navy a:hover::after{
        background-image: url(../img/common/cmn-arw1-white.png);
    }
#ir-documents-archives .lead {
font-size: 1.4rem;
background: #f4f6f9;
padding: 24px 10% 32px;
text-align: left;
}
#ir-documents-archives .lead a {
    color: #134b7a;
    text-decoration: underline;
}

/*////////////////////////////////////////////////////////////////////
ir-library-top　ライブラリ（資料室）トップ
////////////////////////////////////////////////////////////////////*/
#ir-library-top {
}
#ir-library-top .share-lead {
}
#ir-library-top .share-lead p {
}
/*////////////////////////////////////////////////////////////////////
#ir-library-restar　ライブラリ（資料室）RESTAR
////////////////////////////////////////////////////////////////////*/
#ir-library-restar {
    padding-bottom: 40px;
}
#ir-library-restar .ttl-navy {
}
#ir-library-restar section {
padding: 24px 5% 32px;
background: #f4f6f9;
}
#ir-library-restar section .ir-library-restar-inner {
background: #fff;
}
#ir-library-restar section .ir-library-restar-inner h2 {
background: #eaeaea;
font-size: 1.8rem;
padding: 16px 0;
display: flex;
}
#ir-library-restar section .ir-library-restar-inner h2 span {
font-size: 1.8rem;
padding-bottom: 8px;
border-bottom: 2px solid #4dc6ff;
font-weight: bold;
}
#ir-library-restar section .ir-library-restar-inner .list {
padding: 16px 32px 32px;
}
#ir-library-restar section .ir-library-restar-inner .list dl {
border-bottom: 1px solid #e6e6e6;
padding: 16px 0;
text-align: left;
}
#ir-library-restar section .ir-library-restar-inner .list dl dt {
font-size: 1.6rem;
margin: 0;
float: left;
padding: 4px 0;
}
#ir-library-restar section .ir-library-restar-inner .list dl dt::before {
content: "■";
display: inline-block;
margin-right: 0.5em;
color: #4dc6ff;
}
#ir-library-restar section .ir-library-restar-inner .list dl dd {
margin-left: 80px;
padding: 4px 0;
    display: flex;
    flex-wrap: wrap;
}
#ir-library-restar section .ir-library-restar-inner .list dl dd a {
font-size: 1.4rem;
    margin: 0;
    margin-right: 15px;
    margin-bottom: 3px;
}
#ir-library-restar section .ir-library-restar-inner .list dl dd a::before,
#ir-library-restar section .ir-library-restar-inner .list dl dd a::after {
content: "";
display: inline-block;
}
#ir-library-restar section .ir-library-restar-inner .list dl dd a::before {
border-left: 8px solid #4dc6ff;
border-top: 7.5px solid transparent;
border-bottom: 7.5px solid transparent;
margin-right: 6px;
vertical-align: -2px;
}
#ir-library-restar section .ir-library-restar-inner .list dl dd a::after {
width: 10px;
height: 12px;
background: url(../img/common/cmn-icon-pdf.png) no-repeat center / contain;
margin-left: 5px;
vertical-align: -1px;
}
#ir-library-restar .button-wrapper {
width: 180px;
margin: 32px auto 64px;
}
#ir-library-restar .more {
}
#ir-library-restar .more:first-child {
margin-bottom: 20px;
}
#ir-library-restar .more a {
display: block;
border: 1px solid #dadada;
color: #134b7a;
font-size: 1.4rem;
transition: ease 0.2s;
padding: 0.8em 24px;
}
#ir-library-restar .more .small {
display: block;
font-size: 1.1rem;
}
/*////////////////////////////////////////////////////////////////////
#ir-ukcvitec-list　ライブラリ（資料室） UKC・VITEC
////////////////////////////////////////////////////////////////////*/
#ir-ukcvitec-list {
margin-top: 32px;
}
#ir-ukcvitec-list .ir-ukcvitec-company {
width: 100%;
text-align: left;
margin: 0;
margin-top: 32px;
}
#ir-ukcvitec-list .ir-ukcvitec-company h2 {
border-left: 4px solid #4dc6ff;
padding: 10px 0 10px 24px;
margin-bottom: 16px;
font-weight: 600;
font-size: 1.6rem;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm {
background: #f6f9fb;
padding: 24px 5% 48px;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section {
width: 100%;
background: #fff;
padding: 16px 5%;
margin-top: 12px;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section:nth-of-type(1) {
margin: 0;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section h3 {
position: relative;
padding-left: 30px;
font-size: 1.8rem;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section h3::before {
content: "";
display: block;
position: absolute;
background: #4dc6ff;
width: 18px;
height: 3px;
top: calc(50% - 1.5px);
bottom: 0;
left: 0;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul {
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li {
padding-left: 30px;
width: 100%;
font-size: 1.4rem;
position: relative;
margin-top: 14px;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li::before {
content: "";
display: block;
border-top: 6px solid transparent;
border-bottom: 6px solid transparent;
border-left: 8px solid #4dc6ff;
position: absolute;
top: 4px;
left: 9px;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li h4 {
font-weight: 400;
    width: 100%;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li h4 a {
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li h4 a:hover {
text-decoration: underline;
}
    #ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li{
        display: flex;
        flex-wrap: wrap;
    }
    #ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li.non-flex{
        display: block;
    }
#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li p {
    min-width: 50%;
    margin: 0;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li p a {
text-decoration: underline;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li p a.pdf {
text-decoration: none;
}
#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li p a.pdf:hover {
text-decoration: underline;
}
    #ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li p a.pdf::before,#ir-ukcvitec-list .ir-ukcvitec-company .frm section ul li p.pdf::before  {
content: "";
display: inline-block;
width: 10px;
height: 12px;
background: url(../img/common/cmn-icon-pdf.png) no-repeat center / contain;
margin: 0;
        margin-right: 10px;
}
/*////////////////////////////////////////////////////////////////////
#ir-stock-base　株式関連　基本情報 / 事務手続
////////////////////////////////////////////////////////////////////*/
#ir-stock-base {
    margin-top: -75px;
    padding-top: 75px;
}
#ir-stock-base .ttl-navy {
}
#ir-stock-base section {
max-width: 90%;
margin: 36px auto 44px;
}
#ir-stock-base section .ttl-left-line {
}
#ir-stock-base section .table {
margin-bottom: 24px;
margin-top: 24px;
}
#ir-stock-base section.stock-info .table {
margin-top: 0;
}
#ir-stock-base section .table dt {
width: 100%;
text-align: left;
font-size: 1.3rem;
color: #666666;
padding: 6px 4%;
font-weight: 600;
background: #f0f0f0;
}
#ir-stock-base section .table dd {
margin: 0;
font-size: 1.4rem;
text-align: left;
width: 100%;
padding: 6px 4%;
}
#ir-stock-base section .date {
text-align: right;
font-size: 1.4rem;
margin-bottom: 10px;
}
#ir-stock-base section dl {
}
#ir-stock-base section dl dt {
}
#ir-stock-base section dl dd {
}
/*////////////////////////////////////////////////////////////////////
#ir-stock-stockholders　株主構成（大株主名簿等）
////////////////////////////////////////////////////////////////////*/
#ir-stock-stockholders {
    margin-top: -75px;
    padding-top: 75px;
}
#ir-stock-stockholders .ttl-navy {
}
#ir-stock-stockholders section {
max-width: 90%;
margin-bottom: 48px;
margin-top: 32px;
}
#ir-stock-stockholders section .ttl-left-line {
}
#ir-stock-stockholders section p {
text-align: left;
font-size: 1.4rem;
margin: 0.5em 0;
}
    #ir-stock-stockholders section .date{
        text-align: right;
        font-size: 1.6rem;
        margin-bottom: 10px;
    }
#ir-stock-stockholders section .table {
border-collapse: collapse;
width: 100%;
font-size: 1.4rem;
}
#ir-stock-stockholders section .table thead {
}
#ir-stock-stockholders section .table thead tr {
}
#ir-stock-stockholders section .table thead tr th {
border-left: 1px solid #aaaaaa;
border-right: 1px solid #aaaaaa;
padding: 15px 20px;
padding: 6px 10px;
border-bottom: 1px solid #aaaaaa;
border-top: 1px solid #aaaaaa;
}
#ir-stock-stockholders section .table thead tr td {
border-right: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
border-top: 1px solid #aaaaaa;
white-space: nowrap;
padding: 6px 10px;
}
#ir-stock-stockholders section .table tbody {
}
#ir-stock-stockholders section .table tbody tr {
}
#ir-stock-stockholders section .table tbody tr th {
border-left: 1px solid #aaaaaa;
border-right: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
text-align: left;
padding: 15px 20px;
padding: 6px 10px;
}
#ir-stock-stockholders section .table tbody tr td {
border-right: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
padding: 6px 10px;
}
/*////////////////////////////////////////////////////////////////////
#ir-stock-dividend　配当金関連
////////////////////////////////////////////////////////////////////*/
#ir-stock-dividend {
    margin-top: -75px;
    padding-top: 75px;
}
#ir-stock-dividend .ttl-navy {
}
#ir-stock-dividend section {
max-width: 90%;
margin: 32px auto;
}
#ir-stock-dividend section .ttl-left-line {
margin-bottom: 24px;
}
#ir-stock-dividend section p {
text-align: left;
font-size: 1.4rem;
margin-bottom: 32px;
}
#ir-stock-dividend section .table {
width: 100%;
border-collapse: collapse;
color: #666666;
text-align: center;
font-size: 1.4rem;
margin-bottom: 44px;
}
#ir-stock-dividend section .table thead {
border-top: 1px solid #aaaaaa;
border-left: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
}
#ir-stock-dividend section .table thead tr {
}
#ir-stock-dividend section .table thead tr th {
border-right: 1px solid #aaaaaa;
padding: 15px 20px;
padding: 6px 10px;
}
#ir-stock-dividend section .table thead tr td {
border-right: 1px solid #aaaaaa;
padding: 15px 20px;
padding: 6px 10px;
}
#ir-stock-dividend section .table tbody {
border-left: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
}
#ir-stock-dividend section .table tbody tr {
}
#ir-stock-dividend section .table tbody tr th {
border-top: 1px solid #aaaaaa;
border-right: 1px solid #aaaaaa;
color: #666666;
padding: 15px 20px;
padding: 6px 10px;
}
#ir-stock-dividend section .table tbody tr td {
border-right: 1px solid #aaaaaa;
color: #666666;
padding: 15px 20px;
padding: 6px 10px;
border-top: 1px solid #aaaaaa;
}
/*////////////////////////////////////////////////////////////////////
#ir-stock-general-meeting　株主総会
////////////////////////////////////////////////////////////////////*/
#ir-stock-general-meeting {
padding-bottom: 32px;

}
#ir-stock-general-meeting .ttl-navy {
margin-bottom: 32px;
}
#ir-stock-general-meeting section {
max-width: 90%;
    padding: 0 20px 40px;
}
#ir-stock-general-meeting section .ttl-left-line {
}
#ir-stock-general-meeting section p {
text-align: left;
font-size: 1.4rem;
margin-bottom: 32px;
line-height: 1.4;
}
#ir-stock-general-meeting section .pdf-btn {
}
#ir-stock-general-meeting section .pdf-btn a {
}
#ir-stock-general-meeting section .pdf-btn a:before {
}
#ir-stock-general-meeting section .pdf-btn a:after {
}
    #ir-stock-general-meeting .ir-stock-general-meeting_wrap{
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 40px;
    }

    #ir-stock-general-meeting .meeting-detail{
        width: 100%;
        margin-bottom: 0;
    }
    #ir-stock-general-meeting .meeting-list{
        width: 100%;
        margin: 20px 0;
        text-align: left;
        color: #1b4f7e;
        font-size: 1.4rem;
        display: flex;
        flex-wrap: wrap;
    }
    #ir-stock-general-meeting .meeting-list li{
        margin: 0 25px 10px 0;
    }
    #ir-stock-general-meeting .meeting-list li a{
        position: relative;
        padding-left: 25px;
        transition: opacity .3s;
    }
    #ir-stock-general-meeting .meeting-list li a:hover{
        opacity: .6;
    }
    #ir-stock-general-meeting .meeting-list li.pdf a:before,
    #ir-stock-general-meeting .meeting-list li.link a:before{
        content: '';
        width: 15px;
        height: 17px;
        position: absolute;
        background: center center no-repeat;
        background-size: contain;
        left: 0;
        top:3px;
    }
    #ir-stock-general-meeting .meeting-list li.link a:before{
        background-image: url(../img/common/cmn-icon-out-navy.png);
        left: 1px;
    }
    #ir-stock-general-meeting .meeting-list li.pdf a:before{
        background-image: url(../img/common/cmn-icon-pdf.png);

    }

/*////////////////////////////////////////////////////////////////////
#ir-other-links　IRその他ページのリンクボタン
////////////////////////////////////////////////////////////////////*/
#ir-other-links {
}
#ir-other-links .list {
margin: 32px auto;
width: 80%;
}
#ir-other-links .list section {
margin: 0;
margin-top: 10px;
}
#ir-other-links .list section a {
background: #7eb0c8;
color: #fff;
width: 100%;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.4rem;
transition: all 0.3s ease;
padding: 16px 0;
}
#ir-other-links .list section a::after {
content: "";
display: block;
width: 7px;
height: 10px;
background-repeat: no-repeat;
background-position: center;
background-size: contain;
background-image: url(../img/common/cmn-arw1-white.png);
margin-left: 0.5em;
}
#ir-other-links .list section a.out::after {
width: 10px;
hegiht: 10px;
background-image: url(../img/common/cmn-icon-out.png);
}
/*////////////////////////////////////////////////////////////////////
ir-basic-policy　IR 基本方針
////////////////////////////////////////////////////////////////////*/
#ir-basic-policy {
margin-bottom: 48px;
}
#ir-basic-policy h2 {
}
#ir-basic-policy .lead {
margin-top: 24px;
color: #666;
font-size: 1.4rem;
width: 90%;
text-align: left;
}
#ir-basic-policy section {
margin-bottom: 32px;
text-align: left;
width: 90%;
margin-top: 16px;
}
#ir-basic-policy section h3 {
color: #333;
font-size: 1.6em;
font-weight: 600;
}
#ir-basic-policy section h3::before {
content: "■";
display: inline-block;
margin-right: 0.75em;
color: #4dc6ff;
}
#ir-basic-policy section p {
font-size: 1.4rem;
margin-top: 10px;
}
#ir-basic-policy section ul {
margin-top: 1em;
}
#ir-basic-policy section ul li {
text-indent: -1.2em;
padding-left: 1.2em;
font-size: 1.4rem;
margin-top: 0.5em;
}
#ir-basic-policy section figure {
margin-top: 1em;
width: 100%;
}
#ir-basic-policy section figure img {
width: 100%;
}
/*////////////////////////////////////////////////////////////////////
ir-disclaimer　免責事項
////////////////////////////////////////////////////////////////////*/
#ir-disclaimer {
margin-bottom: 64px;
}
#ir-disclaimer h2 {
}
#ir-disclaimer h3 {
position: relative;
font-size: 1.8rem;
margin-top: 24px;
text-align: left;
font-weight: 600;
padding-left: 44px;
}
#ir-disclaimer h3::before {
content: "";
display: block;
position: absolute;
top: 0;
left: 18px;
width: 4px;
height: 100%;
background: #4dc6ff;
}
#ir-disclaimer p {
margin-top: 16px;
margin-bottom: 32px;
font-size: 1.4rem;
text-align: left;
padding: 0 20px 0 64px;
}

/*////////////////////////////////////////////////////////////////////
ir-plan　中期経営計画
////////////////////////////////////////////////////////////////////*/
.ir-plan-lead {
    margin: 0 0 32px;
    padding: 24px 5%;
    background: #F4F6F9;
    text-align: left;
}
.ir-plan-lead__inner {
}
.ir-plan-lead__inner p {
    margin: 0 0 25px;
    font-size: 1.4rem;
    line-height: 2;
}
.ir-plan-lead__inner p:last-child {
    margin-bottom: 0;
}
.ir-plan-lead__inner a {
    color: #0e3a6a;
    text-decoration: underline;
}
.ir-plan-content {
    margin: 0 0 42px;
    padding: 0 5%;
    text-align: left;
}
.ir-plan-content h2 {
    margin: 42px 0 0;
    padding: 8px 0 8px 20px;
    border-left: 4px solid #4DC6FF;
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.4;
}
.ir-plan-content p {
    margin: 25px 0 0;
    font-size: 1.4rem;
}
.ir-plan-content h2 + p {
    margin-top: 20px;
}
.ir-plan-content a {
    color: #0e3a6a;
    text-decoration: underline;
}
.ir-plan-content .wp-block-image {
    margin: 32px 0 0;
}
.ir-plan-content h2 + .wp-block-image {
    margin-top: 20px;
}
.ir-plan-pdf {
    margin: 42px 0 50px;
    padding: 30px 5%;
    background: #F4F6F9;
}
.ir-plan-pdf__inner {
}
.ir-plan-pdf__button {
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.4;
}
.ir-plan-pdf__button a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 54px;
    padding: 10px 60px;
    border: 1px solid #DADADA;
    background: #fff;
    color: #0e3a6a;
}
.ir-plan-pdf__button a::before,
.ir-plan-pdf__button a::after {
    content: "";
    position: absolute;
    top: 50%;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% auto;
    transform: translateY(-50%);
}
.ir-plan-pdf__button a::before {
    left: 24px;
    width: 24px;
    height: 29px;
    background-image: url(../img/common/cmn-icon-pdf.png);
}
.ir-plan-pdf__button a::after {
    right: 38px;
    width: 6px;
    height: 9px;
    background-image: url(../img/common/cmn-arw1.png);
}

/*////////////////////////////////////////////////////////////////////
#news　ニュースページ
////////////////////////////////////////////////////////////////////*/
#news {
}
#news .nav {
}
#news .nav li {
}
/*////////////////////////////////////////////////////////////////////
#contact-top　お問い合わせトップ
////////////////////////////////////////////////////////////////////*/
#contact-top {
margin: 24px auto;
max-width: 90%;
}
#contact-top section {
margin: 24px 0 50px;
}
#contact-top section .ttl-navy {
}
#contact-top section ul {
margin-top: 24px;
}
#contact-top section ul li {
width: 100%;
margin: 0;/*border-right: 1px solid #e6e6e6;*/
margin: 0 0 2.5em;
}
#contact-top section ul li::after {
content: "";
display: block;
clear: both;
}
#contact-top section ul li h3 {
width: 100%;
border-left: 4px solid #4dc6ff;
font-size: 1.4rem;
padding: 0.6em 0 0.6em 30px;
flex: 1;
margin-bottom: 10px;
text-align: left;
}
#contact-top section ul li p {
width: 100%;
}
#contact-top section ul li p a {
display: block;
padding: 0.8em 0;
font-size: 1.4rem;
color: #134b7a;
border: 1px solid #dcdcdc;
margin-bottom: 10px;
width: 100%;
margin: 0;
}
#contact-top section ul li p span {
width: 100%;
color: #666;
font-size: 1.3rem;
display: block;
margin: 0.5em 0 0;
}
.contact-recap {
    font-size: 1.0rem;
    line-height: 1.8;
    margin: 30px 0 0;
}
/*////////////////////////////////////////////////////////////////////
#complianceline-top　コンプライアンスライントップ
////////////////////////////////////////////////////////////////////*/
#complianceline-top {
padding: 0px 0 64px;
}
#complianceline-top h2 {
font-size: 1.8rem;
position: relative;
margin-bottom: 24px;
padding-bottom: 18px;
line-height: 1.4;
font-weight: 600;
text-align: center;
}
#complianceline-top h2::before {
content: "";
display: block;
position: absolute;
background: #4dc6ff;
width: 150px;
height: 2px;
bottom: 0;
left: 0;
right: 0;
margin: auto;
}
#complianceline-top .about {
margin: 0 0 50px;
padding: 30px 5%;
background: #f5f5f5;
font-weight: 600;
text-align: left;
}
#complianceline-top .about__intro {
margin: 0 0 30px;
font-size: 1.4rem;
}
#complianceline-top .about__heading {
margin: 30px 0 10px;
font-size: 1.4rem;
}
#complianceline-top .about__text {
font-size: 1.4rem;
}
#complianceline-top .about__list {
padding: 0 0 0 1em;
font-size: 1.4rem;
}
#complianceline-top .about__list-item {
margin: 10px 0 0;
list-style: disc;
}
#complianceline-top .consent {
font-size: 1.4rem;
text-align: center;
font-weight: 600;
margin-bottom: 50px;
width: 90%;

}
#complianceline-top .btn {
width: 90%;
margin-bottom: 24px;
}
#complianceline-top .btn a {
display: flex;
width: 100%;
align-items: center;
justify-content: center;
background: #f1f4f8;
font-size: 1.4rem;
font-weight: 600;
transition: ease 0.2s;
padding: 20px 0;
}
#complianceline-top .caution {
width: 90%;
font-size: 1.2rem;
font-weight: 600;

}
/*////////////////////////////////////////////////////////////////////
#term　サイト利用規約
////////////////////////////////////////////////////////////////////*/
#term {
max-width: 90%;
}
#term .lead {
text-align: left;
padding: 0 0 32px;
}
#term .lead h2 {
font-size: 1.6rem;
margin-bottom: 16px;
font-weight: 600;
}
#term .lead p {
background: #f6f9fb;
font-size: 1.2rem;
line-height: 2;
padding: 10px 14px;
}
#term .lead p a {
text-decoration: underline;
color: #0e3a6a;
transition: ease 0.2s;
}
#term section {
text-align: left;
margin-bottom: 32px;
}
#term section h2 {
font-size: 1.6rem;
height: 20px;
display: flex;
padding-left: 22px;
align-items: center;
position: relative;
margin-bottom: 18px;
font-weight: 600;
line-height: 1;
}
#term section h2::before {
content: "";
display: block;
position: absolute;
width: 3px;
height: 100%;
background: #4dc6ff;
left: 0;
top: 0;
}
#term section p {
font-size: 1.4rem;
}
#term section p a {
text-decoration: underline;
color: #0e3a6a;
transition: ease 0.2s;
}
#term p.over {
text-align: right;
font-size: 1.6rem;
}
    /* ///////////////////////////////////////////////////////////////////
    #interview インタビュー一覧 [interview]
    /////////////////////////////////////////////////////////////////// */
    #interview {
        margin-bottom: 48px;
    }
    #interview .interview-list-ttl {
        color: #666;
        font-size: 1.4rem;
        padding: 12px 0;
        width: 90%;
        font-weight: 600;
        margin-bottom: 16px;
        border-bottom: 1px solid #666;
        text-align: left;
    }
    #interview .interview-list-ttl-note {
        display: block;
        margin: 3px 0 0;
        font-size: 1.1rem;
        font-weight: 400;
    }
    #interview .img-left-list {
        width: 90%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    #interview .img-left-list section {
        margin: 2% 0;
        width: 48%;
    }
    #interview .img-left-list section a {
        display: block;
        width: 100%;
        height: 100%;
        position: relative;
    }
    #interview .img-left-list section a .img {
        display: block;
        width: 100%;
    }
    #interview .img-left-list section a .txt {
        display: block;
        text-align: left;
        padding: 10px 0 0;
    }
    #interview .img-left-list section a .txt span {
        font-size: 1.2rem;
        font-weight: 600;
        padding-bottom: 10px;
        margin-bottom: 8px;
        color: #1b4f7e;
        position: relative;
    }
    #interview .img-left-list section a .txt span br{
        display: none;
    }
    #interview .img-left-list section a .txt span::before {
        content: "";
        position: absolute;
        display: block;
        background: #4dc6ff;
        width: 100%;
        height: 2px;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
    }
    #interview .img-left-list section a .txt .name {
        font-size: 1.0rem;
        margin-top: 20px;
        margin-bottom: 2px;
    }
    #interview .img-left-list section a .txt .position {
        font-size: 1.0rem;
    }
    #interview .img-left-list section a .txt {
        padding: 12px 12px 32px;
        position: initial;
    }
    /* ///////////////////////////////////////////////////////////////////
    #interview-mv インタビュー最初のイメージ[interview][spread]
    /////////////////////////////////////////////////////////////////// */
    #interview-mv {
    }
    #interview-mv img {
    }
    #interview-mv::after {
        content: "";
        display: block;
        background: linear-gradient(to right, #073c67, #4dc6ff);
        width: 100%;
        height: 6px;
    }
    /* ///////////////////////////////////////////////////////////////////
    #interview-intro インタビュー最初のキャッチコピー等 [interview][spread]
    /////////////////////////////////////////////////////////////////// */
    #interview-intro {
        width: 90%;
    }
    #interview-intro .intro-ttl {
        font-size: 2.1rem;
        color: #1b4f7e;
        margin: 32px 0 24px;
        font-weight: 600;
        text-align: left;
    }
    #interview-intro .intro-ttl span {
        display: block;
        font-size: 1.8rem;
    }
    #interview-intro .intro-txt {
        font-size: 1.4rem;
        text-align: left;
        font-weight: 600;
        margin-bottom: 40px;
        line-height: 1.6;
    }
    #interview-intro .intro-txt a {
        color: #134b7a;
        text-decoration: underline;
    }
    /* ///////////////////////////////////////////////////////////////////
    #interview-profile プロフィール [interview][spread]
    /////////////////////////////////////////////////////////////////// */
    #interview-profile {
        margin-bottom: 40px;
        background: #f5f5f8;
        padding-bottom: 35px;
    }
    #interview-profile .ttl-navy {
    }
    #interview-profile section {
        margin-top: 38px;
        width: 90%;
    }
    #interview-profile section .photo {
        width: 55%;
        padding: 0 0 16px 32px;
        float: right;
    }
    #interview-profile section .photo img {
        border-radius: 50%;
    }
    #interview-profile section dl {
        text-align: left;
    }
    #interview-profile section dl dt {
        font-size: 2rem;
        font-weight: 600;
        color: #1b4f7e;
        border-bottom: 1px solid #666;
        display: inline-block;
        text-align: left;
        margin-bottom: 16px;
    }
    #interview-profile section dl dt span {
        font-size: 1.6rem;
        margin-left: 10px;
    }
    #interview-profile section dl dd {
        font-size: 1.4rem;
        margin-bottom: 16px;
        line-height: 1.6;
        display: block;
    }
    /* ///////////////////////////////////////////////////////////////////
    #interview-area インタビュー内容 [interview][spread]
    /////////////////////////////////////////////////////////////////// */
    #interview-area {
        text-align: left;
        max-width: 1060px;
    }
    #interview-area section {
        margin-bottom: 48px;
    }
    #interview-area section .ttl-blue-underline {
        font-size: 1.8rem;
        color: #1b4f7e;
        font-weight: 600;
        border-bottom: 4px solid #4DC6FF;
        margin-bottom: 24px;
        text-align: left;
        padding-bottom: 10px;
        width: 90%;
    }
    #interview-area section .heading-blue {
        font-size: 1.6rem;
        font-weight: 600;
        color: #1b4f7e;
        margin-bottom: 24px;
        width: 90%;
        text-indent: -1.0em;
        padding-left: 1.0em;
    }
    #interview-area section dl {
        margin-bottom: 35px;
        font-size: 1.4rem;
    }
    #interview-area section dl dt {
        font-weight: 600;
        color: #1b4f7e;
        margin-bottom: 24px;
        width: 90%;
    }
    #interview-area section dl dd {
    }
    #interview-area section .interview-txt {
        margin-bottom: 32px;
        font-size: 1.4rem;
        line-height: 1.6;
        width: 90%;
    }
    #interview-area section .interview-photo {
        margin-bottom: 32px;
    }
    #interview-area section .interview-photo img {
    }
    #interview-area section .alternate {
    }
    #interview-area section .alternate .heading-blue {
    }
    #interview-area section .alternate .alternate-detail {
    }
    #interview-area section .alternate .alternate-photo {
        margin-bottom: 32px;
    }
    #interview-area section .alternate .alternate-photo img {
    }


    /* ///////////////////////////////////////////////////////////////////
		#interview-area [initiatives]
		/////////////////////////////////////////////////////////////////// */
    #interview-area .initiatives-detail {
        margin: 0 20px 0;
        font-size: 1.4rem;
        line-height: 1.8;

    }
    #interview-area .initiatives-detail + .interview-photo{
        margin-top: 40px;
    }
    #interview-area .initiatives-detail .caution {
        font-size: 80%;
        display: block;
    }

    #interview-area .initiatives-detail .col3 {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-top: 40px;
    }

    #interview-area .initiatives-detail .col3 li {
        width: calc(50% - 10px);
        margin: 0;
        font-size: 90%;
        margin-bottom: 20px;
    }

    #interview-area .initiatives-detail .col3 li img {
        width: 100%;
        max-width: 400px;
    }

    #interview-area .initiatives-detail .flex-box {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }

    #interview-area .initiatives-detail .flex-box img {
        margin: 20px auto;
        height: auto;
    }

    #interview-area .initiatives-detail .flex-box .txt {
        order: 1;
        margin: 0;
    }
    #interview-area .initiatives-detail .flex-box figcaption{
        text-align: right;
        margin-bottom: 15px;
        font-size: 80%;
    }
    #interview-area .initiatives-detail .flex-box.ratio7-3 img{
        max-width: 250px;
    }
    #interview-area .initiatives-detail .flex-box.left img{
        order: 0;

    }
    #interview-area .initiatives-detail .flex-box.right img{
        order: 2;
    }

    /* ///////////////////////////////////////////////////////////////////
		#interview-area [dialogue]
    /////////////////////////////////////////////////////////////////// */
    #interview-profile section .photo img{
        max-width: 220px;
        width: 100%;
    }


    #interview-area .dialogue .ttl-blue-underline {
        display: block;
        font-size: 1.8rem;
        text-align: center;
        border-bottom: none;
        padding-bottom: 24px;
        position: relative;
    }
    #interview-area .dialogue .ttl-blue-underline:after{
        content: "";
        display: inline-block;
        width:150px;
        height: 4px;
        background-color: #4DC6FF;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
    }
    
    #interview-area .interview-contents dl{
        width: 90%;
        padding: 30px 20px 10px;
        border: 2px solid #0e3a6a;
        position: relative;
    }
    #interview-area .interview-contents dl dt{
        width: 60px;
        text-align: center;
        font-size: 1.6rem;
        display: inline-block;
        color: #0e3a6a;
        background-color: #fff;
        padding: 0 10px;
        position: absolute;
        top: -15px;
        margin-bottom: 0;
    }
    #interview-area .interview-contents dl dd{
        font-size: 1.4rem;
        color: #333;
        border-bottom: 1px dotted #d7d7d7;
        margin-bottom: 14px;
        padding: 10px 0 10px 30px;
        position: relative;
    }
    
    #interview-area .interview-contents dl dd::after{
        content: "";
        display: inline-block;
        width: 20px;
        height: 13px;
        background: url(../img/common/cmn-arw2.png) no-repeat center;
        background-size: cover;
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        margin: auto;
    }

    #interview-area .dialogue .comment{
        width: 82%;
        margin: 50px auto;
    }

    #interview-area .dialogue .comment.side_a,
    #interview-area .dialogue .comment.side_b{
        border: 3px solid #b9b9b9;
        background: #fff;
        border-radius: 10px;
        padding: 22px 30px;
        position: relative;
    }

    #interview-area .dialogue .comment.side_a .person,
    #interview-area .dialogue .comment.side_b .person{
        line-height: 1;
        text-align: center;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: row;
        align-items: center;
        width: 200px;
        height: 50px;
        position: absolute;
        top: -35px;
        left: -40px;
        z-index: 2;
    }
    #interview-area .dialogue .comment.side_a .person span,
    #interview-area .dialogue .comment.side_b .person span{
        width: 100px;
        text-align: left;
        font-size: 1.2rem;
        margin-bottom: 16px;
        margin-left: 10px;
    }

    #interview-area .dialogue .comment.side_a .person img,
    #interview-area .dialogue .comment.side_b .person img{
        width: 60px;
        margin-right: 0;
    }

    #interview-area .dialogue .comment.side_a p,
    #interview-area .dialogue .comment.side_b p{
        font-size: 1.4rem;
        line-height: 1.6;
    }

    #interview-area .dialogue .photo_box{
        margin-bottom: 30px;
    }
    #interview-area .dialogue .photo_box .photo_img{
        margin-bottom: 6px;
    }
    #interview-area .dialogue .photo_box .photo_info{
        width: 94%;
        font-size: 1.2rem;
    }

    /* ///////////////////////////////////////////////////////////////////
    #other-interview [interview]
    /////////////////////////////////////////////////////////////////// */
    #other-interview {
        margin-bottom: 48px;
    }
    #other-interview .ttl-left-line {
        color: #1b4f7e;
        font-weight: 600;
    }
    #other-interview .img-left-list {
    }
    #other-interview .img-left-list section {
        width: 90%;
        margin-bottom: 10px;
    }
    #other-interview .img-left-list section a {
    }
    #other-interview .img-left-list section a .img {
        width: 40%;
    }
    #other-interview .img-left-list section a .img img {
    }
    #other-interview .img-left-list section a .txt {
    }
    #other-interview .img-left-list section a .txt p {
        font-size: 1.6rem;
        font-weight: 600;
    }
    #other-interview .img-left-list section a .txt p span {
        display: block;
        font-size: 1.2rem;
        font-weight: 400;
        margin-top: 8px;
    }
    #other-interview .img-left-list section a .txt p span.am {
        font-size: 1rem;
    }
    /* ///////////////////////////////////////////////////////////////////
    #interview-pager [interview]
    /////////////////////////////////////////////////////////////////// */
    #interview-pager {
        width: 100%;
        background: #F6F9FB;
        padding: 32px 0;
    }
    #interview-pager .pager-inner {
        display: flex;
        justify-content: space-around;
        flex-wrap: wrap;
        width: 90%;
    }
    #interview-pager .pager-inner .prev,
    #interview-pager .pager-inner .next,
    #interview-pager .pager-inner .to-top {
        margin: 0;
        width: 49%;
        height: 45px;
    }
    #interview-pager .pager-inner .prev a,
    #interview-pager .pager-inner .next a,
    #interview-pager .pager-inner .to-top a {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        color: #fff;
    }
    #interview-pager .pager-inner .prev a,
    #interview-pager .pager-inner .next a {
        position: relative;
        background: #0E3A6E;
        border: 1px solid #0E3A6E;
        font-size: 1.2rem;
    }
    #interview-pager .pager-inner .prev a::before,
    #interview-pager .pager-inner .next a::before {
        content: "";
        display: block;
        position: absolute;
        background-size: cover;
        background-image: url(../img/common/cmn-icon-arw2.png);
        width: 9px;
        height: 16px;
        top: 1px;
        bottom: 0;
        margin: auto;
    }
    #interview-pager .pager-inner .prev {
        order: 1;
    }
    #interview-pager .pager-inner .prev a {
        padding-left: 12px;
    }
    #interview-pager .pager-inner .prev a::before {
        left: 5px;
        transform: rotate(180deg);
    }
    #interview-pager .pager-inner .next {
        order: 2;
    }
    #interview-pager .pager-inner .next a {
        padding-right: 12px;
    }
    #interview-pager .pager-inner .next a::before {
        right: 5px;
    }
    #interview-pager .pager-inner .to-top {
        margin-top: 15px;
        order: 3;
    }
    #interview-pager .pager-inner .to-top a {
        background: #005EAC;
        border: 1px solid #005EAC;
        font-size: 1.4rem;
    }
/*////////////////////////////////////////////////////////////////////
#rec-supplier-top　取り扱いメーカートップ [REC]
////////////////////////////////////////////////////////////////////*/
#rec-supplier-top {
}
/*////////////////////////////////////////////////////////////////////
rec-supplier-semiconductor　取り扱いメーカーの半導体リスト [REC]
////////////////////////////////////////////////////////////////////*/
#rec-supplier-semiconductor {
}
/*////////////////////////////////////////////////////////////////////
#rdc-supplier-top　取り扱いメーカートップ [RDC]
////////////////////////////////////////////////////////////////////*/
#rdc-supplier-top {
}
/*////////////////////////////////////////////////////////////////////
#rdc-supplier-semiconductor　取り扱いメーカーの半導体リスト [RDC]
////////////////////////////////////////////////////////////////////*/
#rdc-supplier-semiconductor {
}
/*////////////////////////////////////////////////////////////////////
#rdc-supplier-electronic　取り扱いメーカーの電子部品リスト [RDC]
////////////////////////////////////////////////////////////////////*/
#rdc-supplier-electronic {
margin-bottom: 50px;
}

/*////////////////////////////////////////////////////////////////////
sustainability
////////////////////////////////////////////////////////////////////*/

/* 共通 */
.s-lead {
    margin: 0 0 32px;
    padding: 24px 5%;
    background: #F4F6F9;
}
.s-lead__text {
    margin: 0 0 1.5em;
    font-size: 1.4rem;
    text-align: left;
    line-height: 2;
}
.s-lead__text:last-child {
    margin-bottom: 0;
}
.s-lead__text a {
    text-decoration: underline;
}
.s-sustainability-content {
}
.s-sustainability-content-inner,
.s-sustainability-content-inner--left,
.s-sustainability-content-inner--right {
    padding: 0 5%;
}
.s-sustainability-block {
    margin: 0 0 32px;
}
.s-sustainability-table-wrapper {
    overflow: scroll;
}
.s-sustainability-table {
    width: 100%;
    border-collapse: collapse;
    text-align: center;
    white-space: nowrap;
}
.s-sustainability-table th,
.s-sustainability-table td {
    padding: 12px;
    border: 1px solid #ccc;
}
.s-sustainability-table th {
    background: #005EAD;
    font-size: 1.4rem;
    font-weight: bold;
    color: #fff;
}
.s-sustainability-table th.s-sustainability-table__th-small {
    font-size: 1.2rem;
    padding: 12px 8px;
}
.s-sustainability-table td {
    font-size: 1.2rem;
}
.s-sustainability-table__text-left {
    text-align: left;
}
.s-sustainability-table__text-right {
    text-align: right;
}
.s-sustainability-table__text-large {
    font-size: 1.4rem;
}
.s-sustainability-table__materiality-text {
    margin: 0 0 10px;
    font-weight: bold;
}
.s-sustainability-table__materiality-image {
}
.s-sustainability-content-heading {
    margin: 0 0 16px;
    padding: 8px 0 8px 16px;
    border-left: 4px solid #4dc6ff;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: left;
}
.s-link-list {
    background: #f4f6f9;
}
#ir-sdgsesg-list + .s-link-list {
    margin: -28px 0 0;
}
.s-link-list .img-left-list {
    width: 90%;
    padding: 12px 0 24px;
}
.s-link-list .img-left-list section {
    margin-bottom: 24px;
}
.s-link-list .img-left-list section:last-child{
    margin-bottom: 0;
}
.s-link-list .img-left-list section > a {
    margin: 12px 0 0;
}
.s-link-list .img-left-list section > a .img {
    align-self: flex-start;
}
.s-link-list .img-left-list section > a .img img {
}
.s-link-list .img-left-list section > a .txt {
}
.s-link-list .img-left-list section > a .txt::after {
}
.s-link-list .img-left-list section > a .txt h3 {
    padding-bottom: 10px;
    border-bottom: 2px solid #4dc6ff;
    font-size: 1.4rem;
    font-weight: 600;
}
.s-text-subscript {
    font-size: 75%;
}

/* トップページ */
.s-sustainability-index-block {
    margin: 0 0 32px;
}
.s-sustainability-index-block .ttl-navy {
    margin-bottom: 24px;
}
.s-sustainability-index-block__text {
    margin: 0 0 1.5em;
    font-size: 1.4rem;
    text-align: left;
    line-height: 2;
}
.s-sustainability-index-block__text:last-child {
    margin-bottom: 0;
}
.s-sustainability-index-block__text a {
    color: #134b7a;
    text-decoration: underline;
}
.s-sustainability-index-block-wrapper-column2 {
}
.s-sustainability-index-block-wrapper-column2__column {
}
.s-sustainability-index-philosophy {
    position: relative;
    padding: 0 0 30px;
    z-index: 1;
}
.s-sustainability-index-philosophy::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%;
    height: calc(100% - 30px);
    background:linear-gradient(to left bottom, transparent 50%, #ecfbff 51%) no-repeat scroll right top / 50% 100%, rgba(0, 0, 0, 0) linear-gradient(to right bottom, transparent 50%, #ecfbff 51%) no-repeat scroll left bottom / 50% 100%;
    z-index: -1;
}
.s-sustainability-index-philosophy__heading {
    margin: 0 0 12px;
    border-bottom: 1px dotted #0E3A6A;
    color: #4DC6FF;
    text-align: left;
    line-height: 1;
}
.s-sustainability-index-philosophy__heading-en {
    margin: 0 10px 0 0;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 3rem;
    font-weight: 600;
}
.s-sustainability-index-philosophy__heading-ja {
    font-size: 1.2rem;
    font-weight: bold;
}
.s-sustainability-index-philosophy__description {
    margin: 0 0 32px;
    font-size: 1.4rem;
    font-weight: bold;
    color: #0E3A6A;
    text-align: left;
    line-height: 1.7;
}
.s-sustainability-index-philosophy__description a {
    text-decoration: underline;
}
.s-sustainability-index-philosophy__description:last-of-type {
    margin-bottom: 0;
}
.s-sustainability-index-block__subheading {
    margin: 0 0 12px;
    font-size: 1.6em;
    font-weight: bold;
    text-align: left;
}
.s-sustainability-index-ordered-list {
    margin: 0 0 24px;
    font-size: 1.4rem;
    text-align: left;
    line-height: 2;
}
.s-sustainability-index-ordered-list__item {
    position: relative;
    padding: 0 0 0 3em;
    counter-increment: number;
}
.s-sustainability-index-ordered-list__item::before {
    content: "（"counter(number)"）";
    position: absolute;
    left: 0;
    top: 0;
}
.s-sustainability-index-button-more {
    max-width: 180px;
    margin: 0 auto;
}
.s-sustainability-index-button-more a {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.8em 0;
    border: 1px solid #0e3a6a;
    background: #fff;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 1.4rem;
    font-weight: 600;
    color: #0e3a6a;
}
.s-sustainability-index-committee {
}
.s-sustainability-index-committee__description {
    margin: 0 0 24px;
    font-size: 1.4rem;
    text-align: left;
    line-height: 2;
}
.s-sustainability-index-committee__image {
    width: 75%;
    margin: 0 auto;
}

/* pdf */
.s-sustainability-pdf-content {
    display: block;
}
.s-sustainability-pdf__image {
    width: 100%;
    margin: 0 0 10px;
}
.s-sustainability-pdf__text {
    width: 100%;
    font-size: 1.4rem;
    text-align: left;
    line-height: 2;
}
.s-sustainability-pdf-list__item {
    position: relative;
    padding: 0 0 0 15px;
}
.s-sustainability-pdf-list__item::before {
    display: block;
    content: '';
    width: 8px;
    height: 8px;
    background: #4dc6ff;
    /* border-left: 8px solid #4dc6ff;
    border-top: 7.5px solid transparent;
    border-bottom: 7.5px solid transparent;*/
    position: absolute;
    top:  10px;
    left: 0;
}

/* マテリアリティ */
.s-sustainability-materiality-process-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: left;
}
.s-sustainability-materiality-process-list__term {
    position: relative;
    display: flex;
    align-items: center;
    flex: 0 0 50px;
    margin: 0;
    background: #005EAD;
    font-size: 1.4rem;
    font-weight: bold;
    color: #fff;
}
.s-sustainability-materiality-process-list__term::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    display: inline-block;
    width: 100%;
    height: 16px;
    clip-path: polygon(50% 72%, 100% 0, 100% 28%, 50% 100%, 0 28%, 0 0);
    background: #fff;
    z-index: 1;
}
.s-sustainability-materiality-process-list__term:last-of-type::after {
    content: normal;
}
.s-sustainability-materiality-process-list__term-inner {
    writing-mode: vertical-rl;
}
.s-sustainability-materiality-process-list__description {
    flex: 0 1 calc(100% - 65px);
    margin: 0;
    padding: 24px 12px;
    border-bottom: 1px solid #ccc;
}
.s-sustainability-materiality-process-list__description:first-of-type {
    border-top: 1px solid #ccc;
}
.s-sustainability-materiality-process-list__description-layout {
}
.s-sustainability-materiality-process-list__textarea {
    margin-bottom: 24px;
}
.s-sustainability-materiality-process-list__text {
    font-size: 1.4rem;
    margin: 0 0 1.5em;
}
.s-sustainability-materiality-process-list__text:last-child {
    margin-bottom: 0;
}
.s-sustainability-materiality-process-list__image {
    width: 75%;
    margin: 0 auto;
}

/* TCFD */
.s-sustainability-tcfd-content-wrapper {
}
.s-sustainability-tcfd-table-note,
.s-sustainability-tcfd-table-note--02 {
    font-size: 1.2rem;
    text-align: left;
    line-height: 2;
    text-indent: -1.9em;
    padding-left: 1.9em;
}

.s-sustainability-tcfd-table-note {
    margin: 24px 0 0;
}

.s-sustainability-tcfd-table-note--02 {
    margin: 10px 0 0;
}

/* 脱炭素社会への取り組み */
.s-sustainability-co2-content-wrapper {
}
.s-sustainability-tcfd-table-unit {
    margin: 0 0 5px;
    font-size: 1.2rem;
    text-align: right;
}
}