@charset "utf-8";

/* =======================================

	 CSS BrowserReset BaseElements

 ======================================= */
html,
body,
div,
span,
nav,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
button,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
    font-style: inherit;
    font-weight: inherit;
    background: transparent;
}

html {
    font-size: 14px;
    line-height: 1;
    overflow-y: scroll;
}

img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    vertical-align: bottom;
}

strong {
    font-weight: bold;
}

sup {
    font-size: 70%;
    vertical-align: super;
}

sub {
    font-size: 70%;
    vertical-align: sub;
}

ul {
    list-style: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

caption,
th,
td {
    font-weight: normal;
    text-align: left;
    vertical-align: top;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: none;
}

/* form */
input {
    vertical-align: middle;
    font-family: inherit;
    outline: none;
    border: none;
    border-radius: 0;
    background: none;
}

input[type='radio'],
input[type='checkbox'] {
    margin: 0;
}

textarea {
    resize: vertical;
    font-family: inherit;
    outline: none;
    border: none;
    border-radius: 0;
    background: none;
}

button {
    font-family: inherit;
    cursor: pointer;
    /* outline: none; */
    border: none;
    border-radius: 0;
    background: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

select {
    vertical-align: middle;
    font-family: inherit;
    cursor: pointer;
    outline: none;
    border: none;
    border-radius: 0;
    background: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* for IE select */
select::-ms-expand {
    display: none;
}

/* for IE clear */
input::-ms-clear {
    display: none;
}

/* for IE password */
input::-ms-reveal {
    display: none;
}

option {
    padding-right: 10px;
}

/* ------------------------------
	HTML5 ELEMENTS
------------------------------ */
header,
footer,
article,
section,
aside,
main,
nav,
menu,
details,
summary,
figcaption,
figure {
    display: block;
}

*,
*:before,
*:after {
    box-sizing: border-box;
}

@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700&family=Noto+Sans+JP:wght@400;500;700&display=swap');

/* =======================================

  CommonElements

======================================= */
:root {
    --logo-blue: #1c63b7;
    --a-blue: #0080ff;
    --h-blue: #bce5ef80;
    --m-gray: #98a6b5;
    --l-gray: #f0f3f5;
    --d-gray: #707f89;
    --b-black: #333333;
    --white: #ffffff;
    --spacing-xxs: 12px;
    --spacing-xs: 20px;
    --spacing-s: 40px;
    --spacing-m: 60px;
    --spacing-l: 72px;
    --spacing-xl: 80px;
    --spacing-xxl: 100px;
    --spacing-xxxl: 130px;
}

@media (max-width: 768px) {
    :root {
        --spacing-xxs: 2.6666vw;
        --spacing-xs: 5.3333vw;
        --spacing-s: 8.53vw;
        --spacing-m: 10.6666vw;
        --spacing-l: 16vw;
        --spacing-xl: 19.2vw;
        --spacing-xxl: 21.3vw;
        --spacing-xxxl: 26.6vw;
    }
}

/* ------------------------------------
  辻（※『辻』の正しい表記は1点しんにょうです。）関連
  「Zen Kaku Gothic New」の辻は1点しんにょうの模様
------------------------------------ */
@font-face {
    font-family: 'tuji';
    font-style: normal;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/zenkakugothicnew/v18/gNMYW2drQpDw0GjzrVNFf_valaDBcznOkj4KXW7oIgA9sLCeNoPLhe6Lpg_IbDMC.80.woff2) format('woff2');
    font-weight: 400;
    unicode-range: U+8FBB;
}

@font-face {
    font-family: 'tuji';
    font-style: normal;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/zenkakugothicnew/v18/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqs9LaWG6XGtdu7-LJIjxku6yox_CeVZufvVB.80.woff2) format('woff2');
    font-weight: 500;
    unicode-range: U+8FBB;
}

@font-face {
    font-family: 'tuji';
    font-style: normal;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/zenkakugothicnew/v18/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqodNaWG6XGtdu7-LJIjxku6yox_CeVZufvVB.80.woff2) format('woff2');
    font-weight: 700;
    unicode-range: U+8FBB;
}

/************************
 BASE
*************************/
html {
    font-size: 62.5%;
}

body {
    font-family: 'tuji', 'Noto Sans JP', sans-serif;
    font-feature-settings: 'palt' 1;
    font-kerning: auto;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.777;
    font-weight: 500;
    color: var(--b-black);
}

@media (max-width: 768px) {
    body {
        font-size: 3.2vw;
    }

    .pc {
        display: none !important;
    }
}

@media (min-width: 769px) {
    body {
        font-size: 1.406vw;
    }

    a[href^='tel:'] {
        pointer-events: none;
    }

    .sp {
        display: none !important;
    }
}

@media (min-width: 1280px) {
    body {
        font-size: 1.8rem;
    }
}

a:link {
    text-decoration: none;
    color: var(--b-black);
}

a:visited {
    text-decoration: none;
    color: var(--b-black);
}

a:active {
    text-decoration: underline;
    color: var(--a-blue);
}

a:hover {
    text-decoration: underline;
    color: var(--a-blue);
}

img {
    max-width: 100%;
    height: auto;
}

.w30 {
    width: 30%;
}

.w50 {
    width: 50%;
}

.w80 {
    width: 80%;
}

.w100 {
    width: 100%;
}

.mt-none {
    margin-top: 0 !important;
}

.mb-none {
    margin-bottom: 0 !important;
}

.mt-xxl {
    margin-top: var(--spacing-xxl);
}

.mt-xl {
    margin-top: var(--spacing-xl);
}

.mt-l {
    margin-top: var(--spacing-l);
}

.mt-m {
    margin-top: var(--spacing-m);
}

.mt-s {
    margin-top: var(--spacing-s);
}

.mt-xs {
    margin-top: var(--spacing-xs);
}

.mt-xxs {
    margin-top: var(--spacing-xxs);
}

.tac {
    text-align: center !important;
}

.tal {
    text-align: left !important;
}

.tar {
    text-align: right !important;
}

.blue {
    color: var(--logo-blue);
}

/* ------------------------------------
  IconFont
------------------------------------ */
@font-face {
    font-family: 'icon';
    src: url('fonts/icon.eot?plzs8o');
    src:
        url('fonts/icon.eot?plzs8o#iefix') format('embedded-opentype'),
        url('fonts/icon.ttf?plzs8o') format('truetype'),
        url('fonts/icon.woff?plzs8o') format('woff'),
        url('fonts/icon.svg?plzs8o#icon') format('svg');
    font-weight: normal;
    font-style: normal;
}

.linkbtn:after {
    font-family: 'icon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.linkbtn:after {
    content: '\e900';
}

/* ------------------------------------
  wrapper
------------------------------------ */
.wrap {
    width: 100%;
    overflow: hidden;
}

.section {
    position: relative;
    display: block;
    padding: var(--spacing-l) 0;
}

.container {
    width: 80.52%;
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 2;
}

.container .container_s {
    width: 85.4%;
    max-width: 940px;
    margin-left: auto;
    margin-right: auto;
}

@media only screen and (min-width: 1280px) {
    .container_s {
        width: 940px;
    }

    .container {
        width: 1100px;
    }
}

@media only screen and (max-width: 768px) {
    .section {
        padding: var(--spacing-s) 0;
    }

    .container {
        width: 100%;
        padding: 0 4.1%;
    }

    .container .container_s {
        padding: 0;
        width: 100%;
    }
}

/* =====================================
  ClearFixElements
===================================== */

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

/* =====================================
  header
===================================== */
/* header {
    display: flex;
    align-items: center;
    position: fixed;
    inset: 0 0 auto;
    width: 100%;
    height: 80px;
    z-index: 100;
    background-color: var(--white);
    box-shadow: 0 1px 9px rgba(203, 203, 203, 0.45);
    transition: all 0.3s ease-out;
} */
header h1 {
    width: 163px;
    height: 50px;
    margin: 0 auto 0 80px;
    line-height: 1;
}

header h1>a {
    font-size: 1.4rem;
    vertical-align: middle;
}

@media screen and (max-width: 1470px) {
    header h1 {
        margin-left: 2%;
    }
}

@media screen and (max-width: 1240px) {
    header h1 {
        width: 12%;
        height: auto;
    }
}

/* mdd_nav */
header>.mdd_nav>ul {
    display: flex;
}

header>.mdd_nav>ul>li {
    min-height: 80px;
}

header .mdd_nav>ul>li>a {
    display: flex;
    position: relative;
    height: 100%;
    padding-inline: 16px;
    font-size: 0.88888em;
    white-space: nowrap;
    align-items: center;
}

@media screen and (max-width: 1470px) {
    header .mdd_nav>ul>li>a {
        font-size: 0.8em;
    }
}

header .mdd_nav>ul>li:not([class^='nav_'])>a::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    background-color: var(--logo-blue);
    transition: height 0.3s ease-out;
}

header .mdd_nav>ul>li>.parent_link {
    padding-left: 24px;

    &::before {
        content: '';
        display: block;
        position: absolute;
        top: 50%;
        left: 0;
        width: 6px;
        height: 6px;
        border-right: solid 1px var(--logo-blue);
        border-bottom: solid 1px var(--logo-blue);
        rotate: 45deg;
        translate: 5px -50%;
    }
}

header .mdd_nav .ac_toggle {
    display: none;
}

@media screen and (max-width: 1240px) {
    header .mdd_nav>ul>li>a {
        padding-inline: 0.3em;
    }

    #global_header_en .mdd_nav>ul>li>a {
        padding-inline: 0.8em;
    }

    header .mdd_nav>ul>li>.parent_link {
        padding-left: 16px;
    }
}

/* sub_nav */
header .mdd_nav>ul>li[class^='nav_'] a {
    display: flex;
    width: 92px;
    height: 100%;
    font-size: 0.666em;
    color: var(--white);
    flex-flow: column nowrap;
    gap: 0.2em;
    justify-content: center;
}

#global_header .mdd_nav>ul>li.nav_contact,
#global_header_en .mdd_nav>ul>li.nav_search {
    margin-left: 0.5em;
}

@media screen and (max-width: 1240px) {
    header .mdd_nav>ul>li[class^='nav_'] a {
        width: 8em;
    }
}

header .mdd_nav>ul>li.nav_lang a {
    background: var(--d-gray);

    &::before {
        content: '';
        width: 50%;
        height: 2.5em;
        background: url(/img/header_world_icon.png) center center no-repeat;
        background-size: contain;
        display: block;
        margin: 0.3em auto;
    }
}

header .mdd_nav>ul>li.nav_contact a {
    background: var(--logo-blue);

    &::before {
        content: '';
        width: 50%;
        height: 2.5em;
        background: url(/img/header_inq_icon.png) center center no-repeat;
        background-size: contain;
        display: block;
        margin: 0.3em auto;
    }
}

header .mdd_nav>ul>li.nav_potal a {
    background: #76a1d4;

    &::before {
        content: '';
        width: 50%;
        height: 2.5em;
        background: url(/img/header_potal_icon.png) center center no-repeat;
        background-size: contain;
        display: block;
        margin: 0.3em auto;
    }
}

header .mdd_nav>ul>li.nav_search a {
    background: var(--l-gray);
    color: var(--b-black);

    &::before {
        content: '';
        width: 50%;
        height: 2.5em;
        background: url(/img/header_search_icon.png) center center no-repeat;
        background-size: contain;
        display: block;
        margin: 0.3em auto;
    }
}

@media (hover: hover) and (pointer: fine) {
    header .mdd_nav>ul>li>a:hover {
        text-decoration: none;
    }

    header .mdd_nav>ul>li:not([class^='nav_'])>a:hover::after {
        height: 6px;
    }

    header .mdd_nav>ul>li[class^='nav_'] a:hover {
        opacity: 0.8;
    }
}

/* mdd_wrap */
header .header_accordion .mdd_wrap {
    position: absolute;
    overflow: hidden;
    width: 100%;
    inset: 80px 0 auto;
    background-color: var(--white);
    box-shadow: 0 9px 9px -9px rgba(203, 203, 203, 0.45) inset;
    z-index: 30;
}

header .mdd_inner {
    position: absolute;
    display: flex;
    align-items: flex-start;
    position: relative;
    margin: 33px auto;
    width: 90%;
    max-width: 1100px;
}

header .mdd_inner>a {
    width: 25%;
    line-height: 1.8;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    color: var(--logo-blue);
}

header .mdd_inner>a hgroup h2 {
    font-size: 1.2em;
    color: var(--logo-blue);
    position: relative;
    padding-left: 16px;

    &::before {
        content: '';
        display: block;
        position: absolute;
        inset: 0 auto 0 0;
        width: 8px;
        height: 8px;
        margin: auto;
        border-right: 1px solid var(--logo-blue);
        border-bottom: 1px solid var(--logo-blue);
        rotate: -45deg;
    }
}

header .mdd_inner>a hgroup p {
    display: block;
    font-weight: bold;
    font-size: 0.7em;
    line-height: 1.417;
}

header .mdd_inner .clm_wrap {
    width: 75%;
    min-height: 55px;
    padding-left: 2em;
    border-left: 2px solid var(--logo-blue);
}

header .mdd_inner .clm_wrap>ul {
    display: grid;
    grid-auto-flow: column;
    grid-auto-rows: min-content;
    grid-template-rows: repeat(4, min-content);
    align-items: start;
    margin-bottom: -25px;
}

header .mdd_inner .clm_wrap>ul>li {
    padding-bottom: 25px;
    min-width: 25%;
}

header .mdd_inner .clm_wrap>ul>li.break {
    grid-column-start: auto;
    grid-row-start: 1;
    /* 次のカラムの1行目に移動 */
}

header .mdd_inner .clm_wrap>ul>li>a {
    padding-left: 1.2rem;
    font-size: 0.8em;
    font-weight: 500;
    line-height: 1.429;
    display: block;
    position: relative;
}

header .mdd_inner .clm_wrap>ul>li>a::before {
    content: '　';
    display: inline-block;
    position: absolute;
    top: 0.15em;
    left: 0;
    width: 1rem;
    height: 1.4vw;
    max-width: 1.8rem;
    max-height: 1.8rem;
    background: url('/img/arrow.svg') center center no-repeat;
    background-size: contain;
    font-size: inherit;
    line-height: inherit;
}

/* search */
header .nav_search .mdd_inner::before {
    content: none;
}

header .nav_search .mdd_inner>* {
    margin: 0 auto;
}

.mf-custom-select-wrapper {
    line-height: 1;
}

.mf-search-bar_dropdown-list {
    display: block !important;
    z-index: 999;
}

@media (hover: hover) and (pointer: fine) {

    header a,
    header .mdd_inner .clm_wrap>ul>li>a,
    header .mdd_inner .clm_wrap>ul>li>a::before {
        transition:
            opacity 0.3s ease,
            color 0.3s ease,
            border-color 0.2s ease;
    }

    header .mdd_inner>a:hover {
        opacity: 0.7;
        text-decoration: none;
    }

    header .mdd_inner .clm_wrap>ul>li>a:hover {
        text-decoration: none;
    }

    header .mdd_inner .clm_wrap>ul>li>a:hover::before {
        border-color: var(--logo-blue);
    }
}

@media screen and (max-width: 768px) {
    body.menu-open {
        position: fixed;
        width: 100%;
        overflow: hidden;
    }

    header h1 {
        margin: 0 0 0 4.1%;
        width: auto;
        height: 100%;
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }

    header h1 a {
        display: flex;
        height: 100%;
        width: 100%;
        justify-content: flex-start;
        align-items: center;
    }

    header h1 img,
    header #logo_field img {
        padding-top: 0;
        width: 100px;
        height: auto;
    }

    header #spMenu {
        display: block;
        position: absolute;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%);
        top: 50%;
        right: 2vw;
    }

    header #spMenu .switch_btn {
        width: 50px;
        height: 50px;
        display: block;
    }

    header #spMenu .switch_btn span {
        width: 66%;
        height: 2px;
        background-color: #002d78;
        border-radius: 2px;
        position: absolute;
        left: 17%;
        transition: all 0.3s linear;
        -webkit-transition: all 0.3s linear;
        -moz-transition: all 0.3s linear;
    }

    header #spMenu .switch_btn,
    .switch_btn span {
        display: inline-block;
        transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        box-sizing: border-box;
    }

    header #spMenu .switch_btn span:nth-of-type(1) {
        top: 14px;
        transform: rotate(0);
        -webkit-transform: rotate(0);
    }

    header #spMenu .switch_btn span:nth-of-type(2) {
        top: 24px;
        transform: scale(1);
        -webkit-transform: scale(1);
    }

    header #spMenu .switch_btn span:nth-of-type(3) {
        top: 34px;
        transform: rotate(0);
        -webkit-transform: rotate(0);
    }

    header #spMenu .switch_btn[aria-expanded='true'] {
        transform: rotate(90deg);
        -webkit-transform: rotate(90deg);
    }

    header #spMenu .switch_btn[aria-expanded='true'] span:nth-of-type(1) {
        top: 4px !important;
        transform: translateY(20px) rotate(-45deg);
        -webkit-transform: translateY(20px) rotate(-45deg);
    }

    header #spMenu .switch_btn[aria-expanded='true'] span:nth-of-type(2) {
        top: 24px;
        transform: translateY(0) rotate(45deg);
        -webkit-transform: translateY(0) rotate(45deg);
    }

    header #spMenu .switch_btn[aria-expanded='true'] span:nth-of-type(3) {
        opacity: 0;
    }

    header>.mdd_nav {
        position: fixed;
        width: 100%;
        height: calc(100svh - 80px);
        top: 80px;
        left: 0;
        padding: 0 0 60px;
        overflow-x: hidden;
        overflow-y: scroll;
        max-height: 0;
        opacity: 0;
        visibility: hidden;
        transition:
            max-height 0.3s cubic-bezier(0.23, 1, 0.32, 1),
            opacity 0.2s ease,
            visibility 0.2s;
    }

    header>.mdd_nav[aria-hidden='false'] {
        max-height: calc(100svh - 80px);
        opacity: 1;
        visibility: visible;
        background: rgba(255, 255, 255, 0.1);
        backdrop-filter: blur(12px);
    }

    header>.mdd_nav>ul {
        display: block;
    }

    header .mdd_nav .ac_toggle,
    header .mdd_nav>ul>li[class^='nav_']>a {
        font-size: 0.8em;
    }

    header .mdd_nav>ul>li,
    #global_header .mdd_nav>ul>li.nav_contact,
    #global_header_en .mdd_nav>ul>li.nav_search {
        display: block;
        margin: 0;
        padding: 0;
        position: relative;
        border-bottom: rgba(255, 255, 255, 0.4) 1px solid;
        min-height: auto;
        font-size: 1.5em;
    }

    header .mdd_nav>ul>li>a,
    #global_header_en .mdd_nav>ul>li>a,
    header .mdd_nav>ul>li[class^='nav_']>a {
        width: 100%;
        height: auto;
        padding: 1.5em 6%;
        display: block;
        position: relative;
        color: var(--white) !important;
        line-height: 1em;
        text-align: left;
        background-color: rgba(28, 99, 183, 0.9);
    }

    header .mdd_nav>ul>li>a:visited {
        color: var(--white);
    }

    header .mdd_nav>ul>li>.parent_link {
        padding-left: 6%;
    }

    header .mdd_nav>ul>li[class^='nav_']>a {
        width: 100%;

        &::before {
            display: none;
        }
    }

    header .mdd_nav>ul>li:not(.nav_search)>a:not(.parent_link)::after {
        content: '';
        background: url(/img/arrow_footer.png) center no-repeat;
        background-size: contain;
        width: 12px;
        height: 12px;
        display: block;
        position: absolute;
        top: 50%;
        right: 7%;
        bottom: auto;
        left: auto;
        transform: translateY(-50%);
    }

    header .mdd_nav .ac_toggle {
        display: block;
        position: absolute;
        top: 0.5vw;
        right: 0;
        width: calc(58 / 375 * 100vw);
        height: 100%;
        max-height: calc(3vw * 5);
        cursor: pointer;
        z-index: 20;
    }

    header .mdd_nav .ac_toggle::before,
    header .mdd_nav .ac_toggle::after {
        content: '';
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        width: 14px;
        height: 3px;
        border-radius: 5px;
        background-color: var(--white);
        translate: -50% -50%;
        transition: all 0.3s ease-out;
    }

    header .mdd_nav .ac_toggle::after {
        rotate: -90deg;
    }

    header .mdd_nav .ac_toggle[aria-expanded='true']::after {
        rotate: 0deg;
    }

    /* mdd_wrap */
    header .header_accordion .mdd_wrap {
        position: relative;
        overflow: hidden;
        width: 100%;
        inset: 0;
        background-color: rgba(255, 255, 255, 0.5);
        box-shadow: none;
        z-index: 30;
        max-height: none;
        opacity: 1;
        visibility: visible;
        transition:
            max-height 0.3s cubic-bezier(0.23, 1, 0.32, 1),
            opacity 0.2s ease,
            visibility 0.2s;
    }

    header .header_accordion .mdd_wrap .mdd_inner {
        display: block;
        margin: 0;
        width: 100%;
    }

    header .header_accordion .mdd_wrap .mdd_inner>a {
        display: none;
    }

    header .mdd_inner .clm_wrap {
        width: 100%;
        min-height: auto;
        padding-left: 0;
        border-left: none;
    }

    header .mdd_inner .clm_wrap>ul {
        display: block;
        margin-bottom: 0;
    }

    header .mdd_inner .clm_wrap>ul li {
        padding: 0;
        border-top: rgba(255, 255, 255, 0.4) 1px solid;
    }

    header .mdd_inner .clm_wrap>ul>li>a {
        display: block;
        width: 100%;
        padding: 1.5em 6%;
        font-size: calc(14.4 / 375 * 100vw);
        background-color: rgba(28, 99, 183, 0.8);
        color: var(--white);

        &::before {
            inset: 0 6.6% 0 auto;
            width: 16px;
            height: 16px;
            filter: invert(71%) sepia(7%) saturate(632%) hue-rotate(170deg) brightness(92%) contrast(91%);
            margin: auto;
        }
    }

    header .mdd_nav>ul>li:not([class^='nav_'])>a:hover::after {
        height: 12px;
    }

    header .mdd_nav>ul>li:not([class^='nav_'])>a.parent_link:hover::after {
        height: 0;
    }

    header .mdd_nav>ul>li[class^='nav_']>a:hover {
        opacity: 1;
    }

    header .mdd_inner .clm_wrap>ul>li>a:hover::before {
        border-color: var(--l-gray);
    }

    header .header_accordion.nav_search .mdd_wrap {
        margin: 32px auto;
    }
}

/*-----------------------------------------
  footer
-----------------------------------------*/
footer {
    width: 100%;
    color: #333;
    background: var(--l-gray);
}

footer a {
    color: #333;
}

/* footer_head_block */
footer .footer_head_block {
    width: 100%;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: flex-start;
    padding-top: 48px;
}

footer .footer_head_block .footer_logo {
    width: 17.9%;
    margin: 32px auto;
}

footer .footer_head_block .sns_nav ul {
    display: flex;
    justify-content: center;
}

footer .footer_head_block .sns_nav li {
    width: 34px;
    margin: 0 4px;
}

@media only screen and (max-width: 768px) {
    footer .footer_head_block .footer_logo {
        width: 117px;
        margin-bottom: 3.2vw;
    }

    footer .footer_head_block .sns_nav li {
        width: 43px;
        margin: 0 8px;
    }
}

/* nav_field */
footer .footer_sitemap {
    padding: 3em 0;
}

footer .nav_field {
    width: 100%;
    display: flex;
    flex-flow: column wrap;
    max-height: 69em;
    gap: 2.3em 0;
}

footer .nav_field.en {
    max-height: 54em;
}

footer .nav_field>li {
    width: calc(100% / 3);
}

footer .nav_field li.break::after {
    content: '';
    display: block;
    height: 8em;
}

footer .nav_field>li.pc a.blank {
    display: inline-flex;
    align-items: center;
    gap: 4px;

    &::after {
        content: '';
        width: 20px;
        height: 20px;
        background: url(/img/icon_blank.svg) center center no-repeat;
        background-size: 12px 12px;
        display: inline-block;
    }
}

footer .nav_field>li>ul {
    padding: 1em 0 0;

    li {
        a {
            padding: 0.4em 0 0.4em 1.5em;
            position: relative;
            font-size: 0.88888em;
            color: #98a6b5;

            &::before {
                content: '';
                background: url(/img/arrow_footer.png) center left no-repeat;
                background-size: contain;
                width: 1em;
                height: 1em;
                margin: 0 0.5em 0 0;
                display: inline-block;
                position: absolute;
                top: 0.65em;
                left: 0;
            }
        }
    }
}

footer .nav_field a,
footer .nav_field p {
    display: block;
    line-height: 1.4;
}

footer .nav_field .footer_accordion {
    position: relative;

    button {
        position: absolute;
    }
}

@media only screen and (max-width: 768px) {
    footer .footer_sitemap {
        padding: 6.4vw 0 8.3333vw;
    }

    footer .nav_field {
        display: block;
        max-height: none;
    }

    footer .nav_field.en {
        max-height: none;
    }

    footer .nav_field a,
    footer .nav_field p {
        padding: 1em 0;
        font-size: 1.5em;
    }

    footer .nav_field>li {
        width: 100%;
        border-top: 1px #cdd6dd solid;
    }

    footer .nav_field li.break::after {
        display: none;
        height: 0;
    }

    footer .nav_field>li>ul {
        padding: 0 0 5.3vw;

        li {
            a {
                padding: 0.4em 0 0.4em 1em;
                font-size: 1.3333em;

                &::before {
                    width: 0.6em;
                    height: 1.3333em;
                    top: 0.4em;
                }
            }
        }
    }

    footer .nav_field li {

        .single,
        .blank {
            position: relative;

            &::after {
                content: '';
                width: 40px;
                height: 100%;
                background: url(/img/icon_blank.svg) center no-repeat;
                background-size: 12px 12px;
                right: 0;
                top: 0;
                position: absolute;
                display: block;
            }
        }

        .single {
            position: relative;

            &::after {
                background: url(/img/arrow_footer.png) center no-repeat;
            }
        }
    }

    footer .nav_field .footer_accordion {
        button {
            width: 40px;
            padding: 1em 0;
            font-size: 1.5em;
            background: url(/img/Icon_material-minus-circle-outline.svg) center no-repeat;
            background-size: 15px 15px;
            right: 0;
            top: 0;
            z-index: 10;

            &::before {
                content: '　';
            }

            &[aria-expanded='false'] {
                background: url(/img/Icon_material-add-circle-outline.svg) center no-repeat;
                background-size: 15px 15px;
            }
        }
    }
}

footer small.copyright {
    width: 100%;
    padding: 0 30px;
    display: block;
    color: var(--white);
    letter-spacing: 0.1em;
    font-weight: 500;
    height: 55px;
    line-height: 55px;
    background: var(--logo-blue);
    font-size: 0.66666em;
    text-align: center;
}

/*	:hover	*/
body.pc_view footer .address_field address .btn_area .btn,
body.pc_view footer a,
body.pc_view footer .nav_field a::after,
body.pc_view footer .nav_field a::before {
    transition: all 0.3s ease;
}

@media only screen and (min-width: 769px) {
    body.pc_view footer .address_field address .btn_area .btn:hover {
        border: 1px solid #002d78;
    }

    body.pc_view footer a:hover,
    body.pc_view footer .nav_fiel a:hover,
    body.pc_view footer .nav_field a:hover::after,
    body.pc_view footer .nav_field a:hover::before {
        color: #85c5ee;
    }

    body.pc_view footer .nav_field a:hover::before {
        background: #85c5ee;
    }
}

/* ------------------------------------
  style
------------------------------------ */

.section h2 {
    font-size: 1.6666em;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    line-height: 1.2;
    margin-bottom: var(--spacing-s);
}

.section h2 .en {
    color: var(--logo-blue);
    font-size: 0.5em;
    display: block;
    line-height: 1.777;
    font-weight: bold;
    margin-bottom: 10px;
}

.section h3 {
    color: var(--logo-blue);
    font-size: 1.6666em;
    margin-bottom: 1em;
}

.section h4 {
    font-size: 1.2222em;
}

.btn_more,
.btn_back {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    font-weight: 600;
}

.btn_more.left,
.btn_back.left {
    justify-content: flex-start;
}

.btn_more:hover,
.btn_back:hover {
    text-decoration: none;
}

.btn_more::after {
    width: 32px;
    height: 32px;
    content: '';
    background: url(/img/right_arrow_circle_blue_s.png) no-repeat;
    background-size: contain;
    margin-left: 0.75em;
    transition: 0.5s;
}

.btn_more:hover::after {
    transform: translateX(8px);
}

.btn_back {
    margin: var(--spacing-s) 0 var(--spacing-s) auto;
}

.btn_back::before {
    width: 55px;
    height: 55px;
    content: '';
    background: url(/img/right_arrow_circle_blue.png) no-repeat;
    background-size: contain;
    margin-right: 1em;
    transform: scale(-1, 1);
    transition: 0.5s;
}

.btn_back:hover::before {
    transform: scale(-1, 1) translateX(8px);
}

@media only screen and (max-width: 767px) {
    .btn_more::after {
        width: 8vw;
        height: 8vw;
        content: '';
        background: url(/img/right_arrow_circle_blue.png) no-repeat;
        background-size: contain;
        margin-left: 1em;
        transition: 0.5s;
    }

    .btn_back::before {
        width: 12vw;
        height: 12vw;
        content: '';
        background: url(/img/right_arrow_circle_blue.png) no-repeat;
        background-size: contain;
        margin-right: 1em;
        transform: scale(-1, 1);
        transition: 0.5s;
    }
}

/* ------------------------------------
  news style
------------------------------------ */

.news_list li {
    border-bottom: 1px solid var(--l-gray);
    padding: var(--spacing-xs) 0;
    min-height: 115px;
    display: flex;
}

.news_list li time {
    font-size: 0.88888em;
    color: var(--m-gray);
    width: 5em;
}

.news_list li a,
.news_list li.nolink .news_list_text {
    width: calc(100% - 5em);
    display: flex;
    justify-content: flex-start;
    padding-left: 1.8em;
    padding-right: 10px;
}

.news_list li a .news_list_text {
    padding-right: 2em;
    width: calc(100% - 20px);
}

.news_list li a .icon_pdf {
    width: 15.2px;
    height: 20px;
    background: url(/img/icon_pdf.png) no-repeat;
    background-size: 100% auto;
    display: block;
    margin-top: 0.25em;
}

@media only screen and (max-width: 767px) {
    .news_list li {
        flex-flow: column;
    }

    .news_list li a,
    .news_list li.nolink .news_list_text {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    .info_container.news_list li a {
        width: 100%;
    }

    .info_container.news_list li a .news_list_text {
        padding-right: 0;
        width: 100%;
    }
}

/* ----------------------
  formパーツ
------------------------*/

/***input / textarea***/

input[type='text'],
input[type='email'],
input[type='tel'],
input[type='url'],
textarea {
    border-radius: 7px;
    background: #f6fbff;
    border: 1px solid #707f89;
    padding: var(--spacing-xxs);
    font-size: 0.88888em;
}

.err-msg-req {
    font-size: 0.7777em;
    color: #b71c1c;
}

.input-invalid {
    background: #fff6f6 !important;
    border: 1px solid #b71c1c !important;
}

p.note {
    font-size: 0.8888em;
    color: var(--d-gray);
}

/***チェックボックス＆ラジオボタン***/
@supports (-webkit-appearance: none) or (-moz-appearance: none) {

    input[type='checkbox'],
    input[type='radio'] {
        --active: #1c63b7;
        --active-inner: #fff;
        --focus: 2px rgba(28, 99, 183, 0.5);
        --border: #707f89;
        --border-hover: #275efe;
        --background: #f6fbff;
        --disabled: #f0f3f5;
        --disabled-inner: #cdd6dd;
        -webkit-appearance: none;
        -moz-appearance: none;
        height: 21px;
        /* outline: none; */
        display: inline-block;
        vertical-align: top;
        position: relative;
        margin: 0;
        cursor: pointer;
        border: 1px solid var(--bc, var(--border));
        background: var(--b, var(--background));
        transition:
            background 0.3s,
            border-color 0.3s,
            box-shadow 0.2s;
    }

    input[type='checkbox']:after,
    input[type='radio']:after {
        content: '';
        display: block;
        left: 0;
        top: 0;
        position: absolute;
        transition:
            transform var(--d-t, 0.3s) var(--d-t-e, ease),
            opacity var(--d-o, 0.2s);
    }

    input[type='checkbox']:checked,
    input[type='radio']:checked {
        --b: var(--active);
        --bc: var(--active);
        --d-o: 0.3s;
        --d-t: 0.6s;
        --d-t-e: cubic-bezier(0.2, 0.85, 0.32, 1.2);
    }

    input[type='checkbox']:disabled,
    input[type='radio']:disabled {
        --b: var(--disabled);
        cursor: not-allowed;
        opacity: 0.9;
    }

    input[type='checkbox']:disabled:checked,
    input[type='radio']:disabled:checked {
        --b: var(--disabled-inner);
        --bc: var(--border);
    }

    input[type='checkbox']:disabled+label,
    input[type='radio']:disabled+label {
        cursor: not-allowed;
    }

    input[type='checkbox']:hover:not(:checked):not(:disabled),
    input[type='radio']:hover:not(:checked):not(:disabled) {
        --bc: var(--border-hover);
    }

    input[type='checkbox']:focus,
    input[type='radio']:focus {
        box-shadow: 0 0 0 var(--focus);
    }

    input[type='checkbox']:not(.switch),
    input[type='radio']:not(.switch) {
        width: 21px;
    }

    input[type='checkbox']:not(.switch):after,
    input[type='radio']:not(.switch):after {
        opacity: var(--o, 0);
    }

    input[type='checkbox']:not(.switch):checked,
    input[type='radio']:not(.switch):checked {
        --o: 1;
    }

    input[type='checkbox']+label,
    input[type='radio']+label {
        font-size: 0.88888em;
        line-height: 21px;
        display: inline-block;
        vertical-align: top;
        cursor: pointer;
        margin-left: 4px;
    }

    input[type='checkbox']:not(.switch) {
        border-radius: 7px;
    }

    input[type='checkbox']:not(.switch):after {
        width: 5px;
        height: 9px;
        border: 2px solid var(--active-inner);
        border-top: 0;
        border-left: 0;
        left: 7px;
        top: 4px;
        transform: rotate(var(--r, 20deg));
    }

    input[type='checkbox']:not(.switch):checked {
        --r: 43deg;
    }

    input[type='radio'] {
        border-radius: 50%;
    }

    input[type='radio']:after {
        width: 19px;
        height: 19px;
        border-radius: 50%;
        background: var(--active-inner);
        opacity: 0;
        transform: scale(var(--s, 0.7));
    }

    input[type='radio']:checked {
        --s: 0.5;
    }
}

/***セレクトボックス***/
.selectwrap {
    position: relative;
    width: 50%;
    min-width: 262px;
}

.selectwrap::after {
    position: absolute;
    top: calc(50% - 3px);
    right: 15px;
    /* 矢印の位置 */
    width: 6px;
    /* 矢印の大きさ */
    height: 6px;
    /* 矢印の大きさ */
    border-top: 1px solid var(--logo-blue);
    /* 矢印の線 */
    border-left: 1px solid var(--logo-blue);
    /* 矢印の線 */
    -webkit-transform: rotate(-135deg);
    /* 矢印の傾き */
    transform: rotate(-135deg);
    /* 矢印の傾き */
    pointer-events: none;
    /* 矢印部分もクリック可能にする */
    content: '';
}

.selectwrap select {
    appearance: none;
    /* デフォルトの矢印を消す */
    width: 100%;
    /* セレクトボックスの幅 */
    height: 55px;
    /* セレクトボックスの高さ */
    line-height: 55px;
    background-color: #f6fbff;
    /* セレクトボックスの背景色 */
    border: 1px solid #707f89;
    /* セレクトボックスのデフォルトの枠線を消す */
    border-radius: 7px;
    /* セレクトボックスの四隅の丸み */
    color: #333333;
    /* セレクトボックスの文字色 */
    padding: 0 15px;
    /* セレクトボックスの内側の余白 */
    cursor: pointer;
    position: relative;
    font-size: 0.8888em;
}

/* .selectwrap select:focus {
  outline: none; /* focus 時のデフォルトの枠線を消す
} */
::-ms-expand {
    display: none;
    /* IE 対応( select のデフォルト矢印を消す) */
}

/*必須アイコン*/
span.label_req {
    display: inline-block;
    background-color: var(--logo-blue);
    border-radius: 7px;
    color: #fff;
    font-size: 0.77em;
    width: 64px;
    height: 29px;
    line-height: 29px;
    text-align: center;
    margin-right: 0.5em;
}

.en span.label_req {
    display: inline-block;
    background-color: var(--logo-blue);
    border-radius: 7px;
    color: #fff;
    font-size: 0.66em;
    width: 64px;
    height: 29px;
    line-height: 29px;
    text-align: center;
    margin-left: 1em;
}

#search_box {
    display: none;
}

/* =======================================

	ContentsElements

======================================= */

/* ------------------------------------
	header
------------------------------------ */
body::before {
    content: '';
    height: 115px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.7), transparent);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    display: none;
}

#content_head {
    width: 100%;
    min-height: 300px;
    background: var(--h-blue);
    padding-top: 115px;
    padding-bottom: var(--spacing-m);
    position: relative;
}

#content_head::after {
    content: '';
    background: url('/img/header_bk.png');
    background-size: cover;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

#breadcrumb,
#pate_title {
    position: relative;
    z-index: 10;
}

@media only screen and (max-width: 768px) {
    #content_head {
        height: auto;
        /*		max-height: 300px;*/
        padding-top: 80px;
        padding-bottom: var(--spacing-s);
        min-height: 0;
    }
}

/* breadcrumb */
#breadcrumb ul {
    display: flex;
    justify-content: flex-end;
    margin: 0 20px;
    color: var(--d-gray);
    font-size: 0.777777em;
}

#breadcrumb li {
    display: flex;
}

#breadcrumb li:not(:last-of-type)::after {
    content: '\03e';
    margin: 0 0.5em;
}

#breadcrumb li .material-icons {
    vertical-align: middle;
    margin-right: 5px;
}

#breadcrumb a {
    color: var(--d-gray);
}

#breadcrumb li:first-of-type a {
    position: relative;
    padding-left: 1.5em;
}

#breadcrumb li:first-of-type a::before {
    content: '';
    display: block;
    width: 1.3em;
    height: 1.3em;
    background: url(/img/icon_home.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

/* pate_title */
#pate_title {
    padding-left: 133px;
    font-size: 2.2222em;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    line-height: 1.2;
}

#pate_title .en {
    color: var(--logo-blue);
    font-size: 0.5em;
    display: block;
    line-height: 1.777;
    font-weight: bold;
    margin-bottom: var(--spacing-xxs);
}

@media only screen and (max-width: 768px) {
    #pate_title {
        padding: 0 4.1%;
        font-size: 2em;
    }

    #breadcrumb {
        margin: 1em 0 1.4em;
    }

    #breadcrumb ul {
        margin: 0 4.1%;
        flex-flow: wrap;
    }
}

/* ------------------------------------
	ELEMENTS
------------------------------------ */
.not_home #main {
    background: url('/img/bg_main_section.png') repeat-y center top;
    background-size: 100% auto;
}

.not_home #main>.section {
    padding: 0 0 var(--spacing-xl) 0;
}

#main>.section:first-of-type {
    padding-top: var(--spacing-xxl);
}

.not_home #main>.section:last-of-type {
    padding-bottom: 0;
}

/*
#main:not(.bg_none) > .section:not(.bg_none)::before{
	content:"";
	display: block;
	width:373px;
	height:373px;
	background: url(/img/bg_dot_ptn.png) center no-repeat;
	background-size: contain;
	position:absolute;;
	left:-40px;
	top:573px;
	z-index: -10;
}
#main:not(.bg_none) > .section:not(.bg_none)::after {
	content:"";
	display: block;
	width:315px;
	height:315px;
	background: url(/img/bg_dot_s.png) center no-repeat;
	background-size: contain;
	position:absolute;;
	right:-120px;
	top:102px;
	z-index: -10;
}
*/

@media only screen and (max-width: 768px) {
    #main>.section:first-of-type {
        padding-top: var(--spacing-s);
    }
}

/* title */
#main .section h2 {
    color: var(--logo-blue);
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6666em;
    margin-bottom: var(--spacing-s);
    font-weight: 600;
    line-height: 1.45;
}

#main .section .container>h2:not(:first-of-type) {
    margin-top: var(--spacing-xl);
}

#main .section h2.title_c {
    text-align: center;
}

#main .section h3:not(.title_label) {
    color: var(--logo-blue);
    font-size: 1.22222em;
    padding-bottom: var(--spacing-xs);
    position: relative;
    margin: 0 0 var(--spacing-xs) 0;
    font-feature-settings: normal;
}

#main .section h2+h3:not(.title_label) {
    margin: var(--spacing-s) 0 var(--spacing-xs) 0;
}

#main .section h3:not(.title_label)::before {
    content: '';
    width: 17.8%;
    max-width: 50px;
    height: 2px;
    background: linear-gradient(#2957c1 0%, #0080ff 100%);
    position: absolute;
    left: 0;
    bottom: 0;
}

#main .section h3.title_label {
    font-size: 1.22222em;
}

#main .section h3.title_label span {
    color: var(--white);
    background: rgba(0, 75, 177, 0.6);
    padding: 0.1em 1em 0.2em;
}

#main .section h4 {
    color: var(--logo-blue);
    font-size: 1.11111em;
    padding-left: 1.33333em;
    position: relative;
}

#main .section h4::before {
    content: '';
    width: 10px;
    height: 2px;
    background: linear-gradient(#2957c1 0%, #0080ff 100%);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

#main .section h5 {
    font-size: 0.88888em;
    color: var(--logo-blue);
    position: relative;
}

#main .section h5.tit_caution {
    color: var(--b-black);
    padding-left: 32px;
}

#main .section h5.tit_caution:before {
    content: '';
    width: 22px;
    height: 22px;
    background: url('/img/Icon_caution.svg') center no-repeat;
    background-size: 100%;
    display: block;
    position: absolute;
    left: 0;
    top: 0.25em;
}

#main .section .list_block dl {
    display: flex;
    position: relative;
    border-top: 1px solid #cdd6dd;
    padding: var(--spacing-xs) 0;
}

#main .section .list_block dl dt {
    color: #1c63b7;
    font-weight: 500;
}

#main .section .list_block dl dt:before {
    content: '';
    width: 20px;
    height: 1px;
    background: #1c63b7;
    position: absolute;
    left: 0;
    top: -1px;
}

#main .section .list_block dl.line_hr {
    border-top: 1px solid #f0f3f5;
}

#main .section .list_block dl.line_hr dt::before {
    display: none;
}

#main .section .cap {
    font-size: 0.777778em;
    color: var(--d-gray);
}

@media only screen and (max-width: 768px) {
    #main .section .list_block dl {
        display: block;
        position: relative;
        padding: var(--spacing-xxs) 0;
    }

    #main .section .list_block dl dt,
    #main .section .list_block dl dd {
        width: 100%;
    }

    #main .section .cap {
        font-size: 0.85em;
        color: var(--d-gray);
    }
}

/* link */
.more,
.text_more {
    font-size: 0.77777em;
    font-weight: 400;
    width: 100%;
    display: flex;
    align-items: center;
    color: var(--logo-blue);
}

.more.right,
.text_more.right {
    justify-content: flex-end;
}

a.text_more {
    color: var(--logo-blue);
}

a.text_more:hover {
    color: var(--logo-blue);
    text-decoration: none;
}

.more::after,
.text_more::after {
    content: '';
    width: 34px;
    height: 6px;
    background: url(/img/arrow_line.png) center right no-repeat;
    background-size: 100% auto;
    transform: translateX(0px);
    transition: 0.5s;
}

.text_more.blank::after,
.index_column a dl dd p+.text_more.blank::after {
    width: 15px;
    height: 12px;
    background: url('/img/icon_blank.svg') center right no-repeat;
    margin-left: 10px;
}

.more:hover::after,
.text_more:hover::after {
    transform: translateX(10px);
    transition: 0.5s;
}

.text_more:hover::after {
    transform: translateX(15px);
}

.text_more.blank:hover::after,
.index_column a dl dd p+.text_more.blank:hover::after {
    transform: translateX(5px);
}

/* index_column */
.index_column_wrap {
    display: flex;
    /*	justify-content: space-between;*/
    flex-flow: wrap;
    padding-bottom: var(--spacing-xl);
    margin-left: -10px;
    margin-right: -10px;
    position: relative;
}

.index_column_wrap.ar_c {
    justify-content: center;
}

#sdgs_index .index_column_wrap {
    padding-bottom: var(--spacing-s);
    margin-bottom: var(--spacing-m);
}

.index_column_wrap.col2 .index_column {
    width: calc(100% / 2);
}

.index_column_wrap.col1 .index_column {
    width: 100%;
}

.index_column {
    /*	background: var(--white);*/
    width: calc(100% / 3);
    margin-bottom: 24px;
    padding-left: 10px;
    padding-right: 10px;
}

.index_column dl {
    width: 100%;
}

.index_column a {
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.12);
    border-radius: 7px;
    display: flex;
    padding: 20px 42px 16px;
    flex-flow: column;
    align-items: flex-start;
    justify-content: flex-start;
    height: 100%;
    position: relative;
    background-color: #fff;
}

.index_column a * {
    color: var(--logo-blue);
}

.index_column a:hover {
    text-decoration: none;
}

.index_column a dl dt {
    font-size: 1.22222em;
    padding-bottom: 20px;
    position: relative;
}

.index_column a dl dt:before {
    content: '';
    width: 17.8%;
    max-width: 50px;
    height: 2px;
    background: linear-gradient(#2957c1 0%, #0080ff 100%);
    position: absolute;
    left: 0;
    bottom: 0;
}

.index_column a dl dd {
    padding-top: 1em;
    padding-bottom: 1em;
}

.index_column a dl dd p {
    margin-bottom: 10px;
    color: var(--b-black);
}

.index_column a dl dd .text_more {
    font-size: 0.77777em;
    font-weight: 400;
    display: inline-flex;
    max-width: calc(100% - 42px);
    justify-content: flex-end;
    align-items: center;
    position: absolute;
    right: 42px;
    bottom: 16px;
}

.index_column a dl dd .text_more:after {
    content: '';
    width: 34px;
    height: 6px;
    background: url(/img/arrow_line.png) center right no-repeat;
    background-size: 100% auto;
    transition: 0.5s;
    transform: translateX(10px);
}

.index_column a dl dd .text_more.blank:after {
    content: '';
    width: 15px;
    height: 12px;
    background: url(/img/icon_blank.svg) center right no-repeat;
    margin-left: 10px;
}

.index_column a:hover dl dd .text_more:after {
    transform: translateX(15px);
}

.index_column.thumb a {
    padding: 0;
}

.index_column.thumb .thumb_box {
    overflow: hidden;
    border-radius: 7px 7px 0 0;
}

.index_column.thumb a dl {
    padding: 20px 42px 16px;
}

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

    .index_column_wrap.col2 .index_column,
    .index_column {
        width: 50%;
    }

    .index_column a,
    .index_column.thumb a dl {
        padding: 3.2vw 4vw;
    }

    .index_column a dl dt {
        font-size: 1.22222em;
        padding-bottom: 2.4vw;
    }

    .index_column a dl dd p+.text_more {
        right: 4vw;
    }

    .index_column a dl dd p+.text_more:after {
        transform: translateX(5px);
        margin-left: 5px;
    }

    .index_column a:hover dl dd p+.text_more:after {
        transform: translateX(10px);
    }

    .more,
    .text_more {
        font-size: 0.8em;
    }

    .more::after,
    .text_more::after {
        width: 20px;
    }
}

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

    .index_column_wrap.col2 .index_column,
    .index_column {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    .index_column_wrap {
        margin-left: 0;
        margin-right: 0;
    }
}

/* link_column */
.link_column_wrap {
    display: flex;
    /*	justify-content: space-between;*/
    flex-flow: wrap;
    margin-left: -0.765%;
    margin-right: -0.765%;
}

.link_column_wrap.col2 .link_column {
    width: 50%;
}

.link_column {
    width: 31.8%;
    margin-bottom: var(--spacing-xs);
}

.link_column_wrap .link_column {
    padding: 0 0.765%;
    width: 33.33%;
}

.link_column.w80 {
    width: 80%;
}

.link_column_wrap.col4 .link_column {
    width: 23.6%;
}

.link_column_wrap.full .link_column {
    width: 100%;
}

.link_column .link_box,
.link_column a {
    background: var(--white);
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.12);
    border-radius: 7px;
    display: flex;
    padding: 20px 84px 16px 42px;
    flex-flow: column;
    align-items: flex-start;
    justify-content: flex-start;
    height: 100%;
    font-size: 0.888888em;
    line-height: 1.4;
    position: relative;
}

.link_column .link_box,
.link_column a+p {
    font-size: 0.888em;
}

.arrow_s .link_column .link_box,
.arrow_s .link_column a {
    padding: 0 18px 0 40px;
    color: var(--logo-blue);
    font-size: 1em;
    line-height: 67px;
}

.arrow_s .link_column .link_box small,
.arrow_s .link_column a small {
    font-size: 0.77em;
}

.arrow_s.no-shadow .link_column .link_box,
.arrow_s.no-shadow a .link_box {
    padding: 0 0 0 40px;
    font-size: 0.88888em;
    box-shadow: none;
    line-height: 24px;
}

.link_column a::after {
    content: '';
    display: block;
    width: 34px;
    height: 6px;
    position: absolute;
    top: 50%;
    right: 21px;
    transform: translateY(-50%);
    transition: 0.5s;
    background: url(/img/arrow_line.png) center right no-repeat;
    background-size: 100% auto;
}

.blank .link_column a::after,
.blank.link_column a::after {
    width: 15px;
    height: 12px;
    right: 42px;
    background: url('/img/icon_blank.svg') center right no-repeat;
}

.arrow_s .link_column a::after {
    background: url('/img/arrow_txt_link.png') center center no-repeat;
    width: 6px;
    height: 6px;
    background-size: 100% auto;
    right: auto;
    left: 18px;
}

.arrow_s .link_column a.pdf::before {
    content: '';
    width: 15.2px;
    height: 20px;
    background: url(/img/icon_pdf.png) no-repeat;
    background-size: 100% auto;
    display: block;
    position: absolute;
    right: 21px;
    top: 50%;
    transform: translateY(-50%);
}

.link_column .en {
    color: var(--m-gray);
    font-size: 0.75em;
}

.link_column a:hover {
    text-decoration: none;
}

.link_column a:hover::after {
    transform: translateX(10px) translateY(-50%);
}

.link_column.link_bn a {
    padding: 20px 42px 16px;
}

.link_column.link_bn a::after {
    display: none;
}

.blank .link_column.link_bn a::after {
    display: block;
}

.link_column.link_bn img {
    display: block;
    margin: 0 auto;
}

.t_liner .link_column a {
    padding-bottom: 25px;
}

.link_column a span.liner {
    color: var(--logo-blue);
    font-size: 1.375em;
    padding-bottom: 20px;
    position: relative;
}

.link_column a span.liner::before {
    content: '';
    width: 50px;
    height: 2px;
    background: linear-gradient(#2957c1 0%, #0080ff 100%);
    position: absolute;
    left: 0;
    bottom: 0;
}

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

    .link_column_wrap.col2 .link_column,
    .link_column {
        width: 47%;
    }

    .link_column_wrap.col4 .link_column {
        width: 47%;
    }

    .link_column a,
    .link_column.link_bn a,
    .link_column .link_box {
        padding: 3.2vw 4vw 3.2vw 4vw;
    }

    .link_column a::after {
        right: 2vw;
        width: 20px;
    }

    .blank .link_column a::after {
        right: 6vw;
    }

    .link_column a span.liner {
        padding-bottom: 2.4vw;
        font-size: 1.25em;
    }

    .t_liner .link_column a {
        padding-bottom: 4vw;
        padding-left: 4vw;
    }

    .arrow_s .link_column .link_box small,
    .arrow_s .link_column a small {
        font-size: 1em;
    }

    .arrow_s .link_column .link_box,
    .arrow_s .link_column a {
        height: 67px;
        line-height: normal;
        display: flex;
        justify-content: center;
    }
}

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

    .link_column_wrap.col2 .link_column,
    .link_column,
    .link_column_wrap.col4 .link_column {
        width: 100%;
    }

    .link_column_wrap .link_column {
        padding: 0 2%;
        width: 50%;
    }

    .link_column_wrap {
        margin-left: -2%;
        margin-right: -2%;
    }
}

/* other */
#main .section hr {
    display: block;
    width: 100%;
    height: 1px;
    border: none;
    background-color: #cdd6dd;
    margin: var(--spacing-xl) 0;
    color: transparent;
}

#main .section hr.bold {
    height: 2px;
    background-color: #95c7eb;
}

#main .section hr.dot {
    background-image: linear-gradient(to right, #95c7eb, #95c7eb 2px, transparent 2px, transparent 8px);
    background-size: 4px 2px;
    background-position: left bottom;
    background-repeat: repeat-x;
    background-color: transparent;
}

#main .section .container hr.last {
    margin-bottom: var(--spacing-l);
}

.list>li {
    position: relative;
    padding-left: 1.5em;
    margin-bottom: 10px;
    font-weight: normal;
    line-height: 1.4;
}

.list>li:before {
    content: '';
    border-radius: 50%;
    width: 5px;
    height: 5px;
    display: block;
    position: absolute;
    top: 0.6em;
    left: calc(0.5em - 2.5px);
    background: var(--logo-blue);
}

ol.num {
    margin-left: 1.5em;
}

ol.num>li {
    font-weight: normal;
}

ol.num>li::marker {
    color: var(--logo-blue);
}

ol.num.brackets {
    counter-reset: cnt_b;
}

ol.num.brackets>li {
    list-style: none;
    counter-increment: cnt_b;
    position: relative;
}

ol.num.brackets>li::before {
    display: inline-block;
    width: 1.5em;
    color: var(--logo-blue);
    content: '(' counter(cnt_b) ')';
    position: absolute;
    top: 0;
    left: -1.5em;
}

ol.num.circle {
    counter-reset: cnt_c;
}

ol.num.circle>li {
    list-style: none;
    counter-increment: cnt_c;
    position: relative;
}

ol.num.circle>li::before {
    font-size: 0.9em;
    display: inline-block;
    width: 1.2em;
    height: 1.2em;
    text-align: center;
    line-height: 1;
    border-radius: 1em;
    border: 1px solid var(--logo-blue);
    color: var(--logo-blue);
    content: counter(cnt_c);
    position: absolute;
    top: 0.38em;
    left: -1.5em;
}

ol.num.notes {
    list-style-type: '';
    counter-reset: list_num 0;
}

ol.num.notes>li {
    counter-increment: list_num;
    position: relative;
}

ol.num.notes>li::before {
    content: '*' counter(list_num);
    position: absolute;
    top: 0;
    right: calc(100% + 0.4em);
    color: var(--logo-blue);
}

.desc {
    max-width: 940px;
    text-align: center;
    margin: 0 auto var(--spacing-m);
}

.inline-block {
    display: inline-block;
}

a.link_blank {
    padding-left: 1.3em;
    background: url('/img/icon_blank.svg') no-repeat left center;
    background-size: 1em;
}

a.link_mail {
    padding-left: 1.3em;
    background: url('/img/icon_material-mail-outline.png') no-repeat left 70%;
    background-size: 1em;
}

.btn_back_block {
    margin: var(--spacing-xl) 0 var(--spacing-s);
    border-top: 1px solid #cdd6dd;
}

p a.text_link {
    color: var(--logo-blue);
    padding-left: 1em;
    background: url('../img/arrow_txt_link.png') 6px center no-repeat;
    background-size: 6px 6px;
}

p a.text_link.blank {
    position: relative;
    padding-right: 25px;
}

p a.text_link.blank::after {
    width: 15px;
    height: 12px;
    position: absolute;
    top: 8px;
    right: 0;
    display: block;
    background: url(/img/icon_blank.svg) center right no-repeat;
    content: '';
}

p a.text_link.pdf {
    position: relative;
    padding-right: 1.5em;
}

p a.text_link.pdf::after {
    width: 1em;
    height: 1em;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -0.4em;
    display: block;
    background: url(/img/icon_pdf.png) center right no-repeat;
    content: '';
    background-size: auto 1em;
}

#main .section table {
    border-collapse: collapse;
}

#main .section .tableType01 {
    width: 100%;
    border: 1px solid #cdd6dd;
}

#main .section table th,
#main .section table td {
    border: #cdd6dd 1px solid;
    padding: var(--spacing-xs);
}

#main .section table th {
    border-left: none;
    background: #f6fbff;
}

#main .section table td {
    border-left: none;
}

#main .section .tableType01 td {
    border: #cdd6dd 1px solid;
}

@media only screen and (max-width: 768px) {
    #main .section hr {
        margin: var(--spacing-l) 0;
    }

    p a.text_link {
        background: url(../img/arrow_txt_link.png) 0 8px no-repeat;
        background-size: 6px 6px;
    }

    p a.text_link.blank::after {
        top: auto;
        right: auto;
        margin-left: 8px;
        position: relative;
        vertical-align: middle;
        display: inline-block;
    }

    p a.text_link.blank {
        position: relative;
        padding-right: 0;
        display: inline-block;
        vertical-align: middle;
    }

    #main .section table th,
    #main .section table td {
        padding: var(--spacing-xxs);
    }
}

/* ------------------------------------
	RECRUIT
------------------------------------ */
.underline {
    text-decoration: underline;
}

#mid_career {
    padding-top: 0;
}

#mid_career .index_column_wrap {
    padding-bottom: 0;
}

#other_job .index_column_wrap {
    padding-bottom: 0;
}

#main #entry {
    background: #f6fbff;
    padding: var(--spacing-l) 0 var(--spacing-xl);
}

#main #entry h3 {
    padding-bottom: var(--spacing-xxs);
}

#entry h3::before {
    display: none;
}

#main #entry .link_column+h3 {
    margin-top: var(--spacing-s);
}

#main #entry .link_column_wrap+h3 {
    margin-top: var(--spacing-xs);
}

#main .reqruit_index_field h2 {
    margin-bottom: var(--spacing-xs);
}

#main .recruit_entry_field {
    background: #fff2cc;
    border-radius: 7px;
    padding: var(--spacing-xs);
}

#main .recruit_entry_field .index_column_wrap {
    padding-bottom: 0;
}

#main .recruit_entry_field.business {
    background: #f6fbff;
}

#main .reqruit_index_field .message_columns .photo_box img {
    border-radius: 10px;
}

#main .evp_field h2 {
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

#main .evp_field h2 span:last-child {
    font-size: 1.2em;
    line-height: 1;
    margin-left: 0.5em;
}

#main .evp_field h2 span:last-child:first-letter {
    font-size: 1.5em;
}

#main .evp_field ul {
    display: flex;
    justify-content: center;
    text-align: center;
    flex-wrap: wrap;
}

#main .evp_field ul li {
    width: 20%;
    margin-bottom: 1em;
}

#main .evp_field ul li img {
    display: block;
    margin: 0 auto 0.5em;
}

#main .evp_field ul li span {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: var(--spacing-xxs);
    background: rgba(0, 75, 177, 0.6);
    color: #fff;
    border-radius: 10px;
    min-height: 3em;
    line-height: 1.2;
}

#main .evp_field ul li a {
    transition: 0.5s;
}

#main .evp_field ul li a:hover {
    opacity: 0.6;
    text-decoration: none;
}

@media only screen and (max-width: 768px) {
    #main .evp_field ul li {
        width: 50%;
    }
}

#main .recruit_interview h4 {
    margin: var(--spacing-xs) 0;
}

#main .recruit_interview .index_column a dl dt small,
#main .schedule .index_column a dl dt small {
    display: block;
    font-size: 0.7em;
}

#main .index_column_wrap.schedule {
    padding-bottom: 0;
}

.recruit_interview_page figure {
    margin-bottom: var(--spacing-s);
}

.recruit_interview_page .interviewee {
    background: var(--h-blue);
    padding: var(--spacing-s);
    border-radius: 15px;
    display: flex;
    align-items: center;
    margin: 0 0 var(--spacing-l);
}

.recruit_interview_page .interviewee .info {
    flex: 1;
    padding-right: var(--spacing-xs);
}

.recruit_interview_page .interviewee figure {
    width: 30%;
    margin-bottom: 0;
}

.recruit_interview_page .interviewee .name {
    font-size: 1.5em;
}

.recruit_interview_page p {
    margin-bottom: 1em;
}

.recruit_interview_page .interviewee p:last-child {
    margin-bottom: 0;
}

#main.recruit_interview_page .section h3:not(.title_label) {
    padding-bottom: 0;
    padding-left: 1.5em;
}

#main.recruit_interview_page .section h3:not(.title_label)::before {
    width: 1em;
    height: 1px;
    bottom: auto;
    top: 0.88em;
}

.recruit_interview_page .timetable {
    margin-bottom: var(--spacing-s);
}

.recruit_interview_page .timetable>dl {
    display: flex;
}

.recruit_interview_page .timetable>dl>dt {
    width: 6em;
    background: var(--l-gray);
    padding: var(--spacing-xxs);
}

.recruit_interview_page .timetable>dl>dd {
    flex: 1 0 0;
    padding: var(--spacing-xxs);
}

.recruit_interview_page .timetable>dl>dd dt {
    color: var(--logo-blue);
}

.recruit_interview_page .timetable>dl>dd dd {
    padding-left: 2em;
    position: relative;
    margin-bottom: var(--spacing-xs);
}

.recruit_interview_page .timetable>dl>dd dd:last-child {
    margin-bottom: 0;
}

.recruit_interview_page .timetable>dl>dd dd::before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 8px;
    border-color: transparent transparent transparent var(--logo-blue);
    position: absolute;
    left: 1em;
    top: 0.7em;
}

@media only screen and (max-width: 768px) {
    .recruit_interview_page .interviewee {
        flex-direction: column;
        align-items: flex-start;
        padding: var(--spacing-xs);
    }

    .recruit_interview_page .interviewee .info {
        padding-right: 0;
        order: 2;
    }

    .recruit_interview_page .interviewee figure {
        width: 100%;
        margin-bottom: var(--spacing-s);
    }

    .schedule .index_column a {
        height: auto;
    }
}

.recruiting_tbl .inner {
    overflow-x: auto;
}

.recruiting_tbl table {
    min-width: 900px;
}

.recruiting_tbl .sp {
    display: none;
}

#main section .recruiting_tbl td,
#main section .recruiting_tbl th {
    vertical-align: middle;
    padding: var(--spacing-xxs);
}

.recruiting_tbl th {
    text-align: center;
}

.vertical_writing {
    padding: 0;
}

.vertical_writing span {
    writing-mode: vertical-rl;
    white-space: pre;
    display: inline-block;
}

_::-webkit-full-page-media,
_:future,
:root .vertical_writing span {
    margin-left: -0.9em;
}

.recruiting_tbl .hdg {
    display: block;
    font-weight: bold;
    color: var(--logo-blue);
}

.recruiting_tbl .hdg.nowrap {
    white-space: nowrap;
}

.recruiting_tbl p:not(:last-child),
.business_info_tbl p:not(:last-child) {
    margin-bottom: 1em;
}

.business_info_tbl th {
    white-space: nowrap;
}

@media only screen and (max-width: 768px) {
    .recruiting_tbl .sp {
        display: block;
    }

    .recruiting_tbl table {
        font-size: 2.8vw;
    }

    #main .section .tableType01.spTbl,
    #main .section .tableType01.spTbl tbody,
    #main .section .tableType01.spTbl tr,
    #main .section .tableType01.spTbl th,
    #main .section .tableType01.spTbl td {
        display: block;
    }

    #main .section .tableType01.spTbl {
        border-top: none;
    }

    #main .section .tableType01.spTbl th {
        border-left: none;
        border-right: none;
    }

    #main .section .tableType01.spTbl td {
        border: none;
    }
}

.contact_box_wrap.recruit .title {
    color: var(--logo-blue);
    display: block;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.list.circle>li:before {
    width: 0.8em;
    height: 0.8em;
    top: 0.3em;
    left: 0.2em;
}

.list.circle>li>ul {
    margin-top: 10px;
}

.mv_field+.recruit_index_wrap {
    margin-top: var(--spacing-l);
}

.depts #main p+.depts_columns {
    margin-top: var(--spacing-s);
}

.depts_columns {
    display: flex;
    justify-content: space-between;
}

.depts_columns .photo_box {
    width: 47%;
}

.depts_columns .photo_box img {
    width: 100%;
    border-radius: 30px;
}

.depts #main h2 {
    margin: var(--spacing-s) 0 var(--spacing-xs);
}

.recruit-page #main>.section:first-child {
    padding-bottom: 0;
}

.depts #main p+ul.list {
    margin-top: var(--spacing-xs);
}

.depts #main p+h3,
.depts #main ul+h3,
.depts #main ol+h3 {
    margin-top: var(--spacing-xs);
}

.depts #main .depts_columns+h3 {
    margin-top: var(--spacing-s);
}

.depts #main .depts_columns_wrap h2:first-child {
    margin-top: 0;
}

/* js tab */
.tab .cont {
    display: none;
}

.tab .cont.current {
    display: block;
}

.tab .tab_title {
    display: block;
    margin-top: var(--spacing-l);
    margin-bottom: var(--spacing-xxs);
    color: var(--logo-blue);
}

.tab .btn {
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #cdd6dd;
}

.tab .btn:last-child {
    margin-top: var(--spacing-l);
}

.tab .tab_title+.btn {
    margin-top: 0;
}

.tab .btn li {
    height: 90px;
    padding: 0 var(--spacing-xs);
    background: #fff;
    color: var(--d-gray);
    border: 1px solid #cdd6dd;
    border-top-width: 4px;
    border-bottom: none;
    cursor: pointer;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.222;
}

.tab .btn.t5 li {
    width: 19.27%;
}

.tab .btn.t4 li {
    width: 24.32%;
}

.tab .btn.t7 li {
    width: 13.7%;
}

.tab .btn li:hover {
    background-color: var(--l-gray);
}

.tab .btn li.current {
    background: #fff;
    color: var(--b-black);
    border-top: 4px solid var(--logo-blue);
}

.tab .btn.link li {
    padding: 0;
}

.tab .btn.link li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0 var(--spacing-xs);
    display: flex;
    justify-content: center;
    align-items: center;
}

.tab .btn.link li a:hover {
    text-decoration: none;
    color: var(--b-black);
}

.tab .btn.link li a small {
    font-size: 0.7em;
    display: block;
    margin: 0 auto;
}

.tab .cont {
    padding-top: var(--spacing-l);
}

#main .section h3.q_h3 {
    position: relative;
    display: flex;
    align-items: center;
    padding-bottom: 0;
}

#main .section h3.q_h3::before {
    content: 'Q';
    width: 55px;
    height: 55px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.55em;
    background: linear-gradient(#2957c1 0%, #0080ff 100%);
    border-radius: 50%;
    color: #fff;
    position: relative;
    max-width: none;
    line-height: 55px;
    margin-right: 15px;
}

h3.q_h3+.a_cont {
    padding-left: var(--spacing-l);
}

.a_cont p+.list_block {
    margin-top: var(--spacing-xs);
}

.a_cont .list_block dl dt {
    width: 21%;
}

.a_cont .list_block dl dd {
    width: 79%;
}

.qaCont+.qaCont {
    margin-top: var(--spacing-l);
}

.tab1_q2_tbl td {
    text-align: right;
}

#main .section .tab1_q2_tbl th.pd_s {
    padding: var(--spacing-xxs) var(--spacing-xs);
}

#main .section p+table {
    margin-top: var(--spacing-xs);
}

.tab2_q1_tabl th,
.tab2_q1_tabl td {
    text-align: center;
}

.tab2_q1_tabl td strong {
    font-size: 1.6666em;
    font-weight: 500;
}

#main .section .outline_field {
    margin-top: var(--spacing-l);
}

#main .section .outline_field h3 {
    margin-top: var(--spacing-s);
}

#main .section .outline_field h4 {
    margin-top: var(--spacing-xs);
}

.recruit_columns {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.recruit_columns .photo_box {
    width: 40%;
}

.recruit_columns .txt_box {
    width: 56%;
}

.recruit_columns .txt_box p+p,
.recruit_columns .txt_box p+ul {
    margin-top: 1em;
}

.recruit_columns .photo_box img {
    width: 100%;
    border-radius: 10px;
}

.recruit_columns a.pdf::after {
    content: '';
    width: 15.2px;
    height: 20px;
    background: url(/img/icon_pdf.png) no-repeat;
    background-size: 100% auto;
    display: inline-block;
    margin-left: 0.2em;
    margin-top: -5px;
    vertical-align: middle;
}

@media only screen and (max-width: 768px) {
    .recruit_columns {
        display: block;
    }

    .recruit_columns .photo_box {
        width: 100%;
        margin-top: var(--spacing-s);
    }

    .recruit_columns .txt_box {
        width: 100%;
    }
}

@media only screen and (max-width: 768px) {
    #main .reqruit_index_field .message_columns .txt_box {
        margin-bottom: var(--spacing-xs);
    }

    .depts_columns {
        display: block;
    }

    .depts_columns .photo_box {
        width: 100%;
        margin-bottom: var(--spacing-xs);
    }

    .tab .btn.t5,
    .tab .btn.t4,
    .tab .btn.t7 {
        flex-flow: wrap;
        border-bottom: none;
    }

    .tab .btn.t5 li,
    .tab .btn.t4 li,
    .tab .btn.t7 li {
        width: 48%;
        border-bottom: 1px solid #cdd6dd;
        margin-bottom: var(--spacing-xxs);
        height: 60px;
    }

    #main .section h3.q_h3 {
        padding-left: var(--spacing-m);
    }

    #main .section h3.q_h3::before {
        content: 'Q';
        width: var(--spacing-s);
        height: var(--spacing-s);
        font-size: 1.2em;
        position: absolute;
        left: 0;
        top: 0;
    }

    h3.q_h3+.a_cont {
        padding-left: 0;
    }
}

/* ------------------------------------
	INFORMATION
------------------------------------ */
.news_list_backnum .news_list li {
    min-height: auto;
}

.pagination {
    display: flex;
    justify-content: center;
    margin: var(--spacing-s) 0;
}

/*
.container > .pagination-container:nth-of-type(1) .pagination{
	margin-top:0;
}
*/
.pagination li {
    margin: 0 var(--spacing-xxs);
}

.pagination li.page a {
    background: var(--h-blue);
    padding: 0.5em 1em;
}

.pagination li.active a,
.pagination li.page a:hover {
    background: var(--a-blue);
    color: #fff;
}

.pagination li a:hover {
    color: var(--b-black);
    text-decoration: none;
}

.pagination li {
    display: flex;
    align-items: center;
}

.pagination li .prev_btn,
.pagination li .next_btn {
    display: block;
    width: 0;
    height: 0;
}

.pagination li .prev_btn {
    border-top: 1.25em solid transparent;
    border-right: 1.875em solid var(--h-blue);
    border-bottom: 1.25em solid transparent;
}

.pagination li .next_btn {
    border-left: 1.875em solid var(--h-blue);
    border-top: 1.25em solid transparent;
    border-bottom: 1.25em solid transparent;
}

.pagination li .prev_btn:hover {
    border-right-color: var(--a-blue);
}

.pagination li .next_btn:hover {
    border-left-color: var(--a-blue);
}

/* news_article */
.news_article__head {
    display: flex;
    justify-content: space-between;
    border-bottom: 3px solid var(--h-blue);
}

#main .section .news_article__head h2 {
    color: var(--b-black);
}

.news_article__head .btn_sns ul {
    display: flex;
    justify-content: flex-end;
    padding-right: var(--spacing-xs);
}

.news_article__head .btn_sns ul li {
    margin-left: var(--spacing-xxs);
}

.news_article__head .btn_sns ul li .fb-share-button span {
    vertical-align: baseline !important;
}

.news_article_date {
    text-align: right;
    margin: var(--spacing-xs);
    font-weight: 400;
}

.news_article_date>.date,
.news_article_date span {
    display: block;
    text-align: right;
}

.news_article__body p {
    margin-bottom: 1em;
}

.news_article__body p.img {
    text-align: center;
}

.news_article__body ul {
    margin-bottom: 1em;
}

@media only screen and (max-width: 768px) {
    .news_article__head {
        flex-flow: column-reverse;
    }

    .news_article__head .btn_sns ul {
        padding-right: 0;
        margin-bottom: var(--spacing-xxs);
    }
}

/* sdgs report .news_article */
.sdgs .news_article {
    border: 2px solid var(--logo-blue);
    border-radius: var(--spacing-s);
    padding: var(--spacing-m) var(--spacing-s);
}

.sdgs .news_article__head {
    display: block;
    margin-bottom: var(--spacing-s);
    position: relative;
}

.sdgs .news_article .article_info {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: var(--spacing-xxs);
}

.sdgs .news_article .date {
    font-size: 1.2em;
}

.sdgs .news_article .article_info .prj_logo {
    width: 440px;
    max-width: 60%;
}

.sdgs .related_sdgs {
    margin-top: var(--spacing-m);
}

.sdgs #main .related_sdgs h3 {
    color: var(--b-black);
    border-bottom: 3px solid var(--h-blue);
}

.sdgs #main .related_sdgs h3::before {
    content: none;
}

.sdgs .related_sdgs ul {
    display: flex;
    flex-wrap: wrap;
    width: 980px;
    max-width: 100%;
    margin: 0 auto;
}

.sdgs .related_sdgs ul li {
    width: 14%;
    margin: 1.3%;
}

/* ------------------------------------
	SITEMAP
------------------------------------ */
.sitemap_list {
    display: flex;
    justify-content: space-between;
}

.sitemap_list__left,
.sitemap_list__right {
    width: 48.85%;
}

#sitemap .list {
    margin-bottom: var(--spacing-s);
}

#sitemap .list>li:not(.tertiary) {
    font-size: 1.11111em;
    font-weight: 500;
    padding-left: 1.5em;
}

#sitemap .list>li a.nolink {
    pointer-events: none;
}

li.tertiary::before {
    display: none;
}

li.tertiary li {
    margin-bottom: 5px;
    padding-left: 18px;
    position: relative;
}

li.tertiary li:before {
    content: '';
    background: url('/img/arrow_txt_link.png') center center no-repeat;
    width: 8px;
    height: 8px;
    background-size: 100% auto;
    right: auto;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
}

/* ------------------------------------
	CONTACT
------------------------------------ */
#main>#contact {
    padding-bottom: var(--spacing-xxxl);
}

.contact_box {
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.12);
    border-radius: 7px;
    margin-bottom: 30px;
    padding: 0 var(--spacing-s);
    border: rgba(255, 255, 255, 1) 1px solid;
}

/* ------------------------------------
アクセシビリティ対応ができていないページがある、
他社対応絵ページからも参照されているため以前のコードも併記
------------------------------------ */
.contact_box.open,
.contact_box:has(summary[aria-expanded='true']) {
    box-shadow: none;
    border: rgba(205, 214, 221, 0.6) 1px solid;
    background-color: rgba(246, 251, 255, 0.6);
}

.contact_box dt,
.contact_box summary {
    font-size: 1.666666em;
    font-weight: 600;
    line-height: 1.4;
    color: var(--logo-blue);
    position: relative;
    padding: 30px var(--spacing-s);
    cursor: pointer;
}

.contact_box dt::before,
.contact_box dt::after,
.contact_box summary::before,
.contact_box summary::after {
    content: '';
    width: 26px;
    height: 26px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.contact_box dt::before,
.contact_box summary::before {
    left: 0;
    background: url('/img/icon_material-message.png') no-repeat;
    background-size: contain;
}

.contact_box dt::after,
.contact_box summary::after {
    right: 0;
    background: url('/img/icon_material-add-circle-outline.png') no-repeat;
    background-size: contain;
}

.contact_box.open dt::after,
.contact_box summary[aria-expanded='true']::after {
    background: url('/img/icon_material-minus-circle-outline.png') no-repeat;
    background-size: contain;
}

.contact_box dd {
    display: none;
    border-top: 1px solid #cdd6dd;
    padding: 30px 0;
}

.contact_box summary+div {
    border-top: 1px solid #cdd6dd;
    padding: 30px 0;
}

.contact_box dd p:not(:last-of-type),
.contact_box summary+div p:not(:last-of-type) {
    margin-bottom: 1em;
}

.contact_box dd p a,
.contact_box summary+div p a {
    color: var(--logo-blue);
}

@media only screen and (max-width: 768px) {
    .contact_box {
        padding: 0 var(--spacing-xxs);
    }

    .contact_box dt,
    .contact_box summary {
        padding: var(--spacing-xs);
        font-size: 1.4em;
        line-height: 1.2;
        transform: translateY(-0.1em);
    }

    .contact_box dt::before,
    .contact_box dt::after,
    .contact_box summary::before,
    .contact_box summary::after {
        width: 4vw;
        height: 4vw;
    }

    .contact_box dd,
    .contact_box summary+div {
        padding: var(--spacing-xs) 0;
    }
}

/* ------------------------------------
	CORPORATE
------------------------------------ */

/*--トップメッセージ--*/
.message_columns {
    display: flex;
    justify-content: space-between;
}

.message_columns .photo_box {
    width: 38.1818%;
}

.message_columns .txt_box {
    width: 57.2727%;
}

.message_columns .txt_box p {
    text-indent: 1em;
}

.en .message_columns .txt_box p {
    text-indent: 0;
}

.message_columns .txt_box p+p {
    margin-top: 1em;
}

@media only screen and (max-width: 768px) {
    .message_columns {
        display: block;
    }

    .message_columns .photo_box,
    .message_columns .txt_box {
        width: 100%;
    }

    .message_columns .photo_box {
        margin-bottom: var(--spacing-s);
    }
}

/*--企業理念--*/
.split_columns {
    position: relative;
}

.split_columns figure.f_r {
    float: right;
    padding: 0 0 var(--spacing-xs) var(--spacing-xs);
    width: 32%;
}

.split_columns figure.f_r img {
    width: 100%;
    border-radius: 30px;
}

.split_columns .img_vmv {
    position: absolute;
    width: 50%;
    top: 152px;
    right: 0;
}

.split_columns .txt_box p+p {
    margin-top: 1em;
}

.split_columns:after {
    content: '';
    width: 100%;
    height: 0;
    clear: both;
}

.split_columns dl+dl {
    margin-top: var(--spacing-xxs);
}

@media only screen and (max-width: 768px) {
    .split_columns figure.f_r {
        float: none;
        padding: 0 0 var(--spacing-xs) 0;
        width: 100%;
    }

    .split_columns .img_vmv {
        position: static;
        width: 100%;
        top: auto;
        right: auto;
        padding-bottom: var(--spacing-xs);
    }
}

/*--事業案内--*/
.business_columns {
    display: flex;
    justify-content: space-between;
}

.business_columns .photo_box {
    width: 40%;
}

.business_columns .txt_box {
    width: 56%;
}

.business_columns .txt_box p+p {
    margin-top: 1em;
}

.business_columns .photo_box img {
    width: 100%;
    border-radius: 30px;
}

.business_columns_wrap+.business_columns_wrap,
#main .section .container>div+.business_columns_wrap {
    margin-top: var(--spacing-xl);
}

.container>.business_columns_wrap:nth-of-type(2n) .business_columns {
    flex-flow: row-reverse;
}

@media only screen and (max-width: 768px) {
    .business_columns {
        display: block;
    }

    .business_columns .photo_box {
        width: 100%;
        margin-bottom: var(--spacing-s);
    }

    .business_columns .txt_box {
        width: 100%;
    }
}

/*--会社概要--*/
#main .overview_block dl dt {
    width: 27.2727%;
}

#main .overview_block dl dd {
    width: 72.7272%;
}

#main .overview_block dl dd ol {
    margin-left: 1em;
}

#main .overview_block dl:not(.officer) dd table th {
    font-weight: 600;
    width: 10em;
    background: none;
    border: none;
    padding: 0;
    vertical-align: baseline;
}

.en #main .overview_block dl:not(.officer) dd table th {
    width: 20em;
}

#main .overview_block dl:not(.officer) dd table td {
    font-weight: 500;
    background: none;
    border: none;
    padding: 0;
    vertical-align: baseline;
}

/*--取締役--*/
#main .section .list_block dl.officer {
    display: block;
}

#main .section .list_block dl.officer dt {
    margin-bottom: var(--spacing-xs);
}

#main .section .list_block dl.officer sup {
    color: var(--logo-blue);
    font-size: 100%;
}

#main .section .list_block dl.officer dd {
    width: 100%;
}

#main .section .list_block dl.officer dd.member {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#main .section .list_block dl.officer dd.member>* {
    width: 49%;
    margin: 0 0 var(--spacing-s);
}

#main .section .list_block dl.officer .member>.date {
    text-align: right;
    width: 100%;
}

#main .section .list_block dl.officer .profile {
    display: flex;
}

#main .section .list_block dl.officer .profile figure {
    width: 220px;
    max-width: 50%;
    margin: 0 var(--spacing-xs) var(--spacing-xs) 0;
}

#main .section .list_block dl.officer .profile span {
    display: block;
}

#main .section .list_block dl.officer details.accordion .ttl {
    display: inline-block;
    margin-bottom: var(--spacing-xxs);
    cursor: pointer;
}

#main .section .list_block dl.officer details.accordion summary::after {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    background: url('/img/icon_material-add-circle-outline.png') no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin: -2px 0 0 0.4em;
}

#main .section .list_block dl.officer details.accordion summary[aria-expanded='true']::after {
    background: url('/img/icon_material-minus-circle-outline.png') no-repeat;
    background-size: contain;
}

#main .section .list_block dl.officer details.accordion ul {
    display: block;
    padding: 0 var(--spacing-xs) 0 0;
}

#main .section .list_block dl.officer details.accordion li {
    display: flex;
}

#main .section .list_block dl.officer details.accordion li .date {
    width: 6em;
}

#main .section .list_block dl.officer details.accordion li .txt {
    flex: 1 0 0;
}

#main .section .list_block dl.officer table {
    font-size: 0.777em;
    text-align: center;
}

#main .section .list_block dl.officer table th,
#main .section .list_block dl.officer table td {
    padding: var(--spacing-xxs) 0.5em;
}

#main .section .list_block dl.officer table th {
    text-align: center;
    vertical-align: middle;
}

#main .section .list_block dl.officer table td {
    width: 60px;
    text-align: center;
    vertical-align: middle;
}

#main .section .list_block dl.officer table .name {
    width: 6em;
    text-align: left;
    height: 5em;
    line-height: 1.4;
}

.tbl_wrap {
    overflow-x: auto;
}

#main .section .list_block dl.officer .note_sp {
    font-size: 0.7em;
    color: var(--d-gray);
    display: none;
}

#main .section .list_block dl.officer .tbl_wrap .inner {
    width: 100%;
    min-width: 600px;
}

@media only screen and (max-width: 768px) {
    #main .section .list_block dl.officer dd.member {
        display: block;
    }

    #main .section .list_block dl.officer dd.member>* {
        width: 100%;
    }

    #main .section .list_block dl.officer details.accordion ul {
        padding: 0;
    }

    #main .section .list_block dl.officer table {
        font-size: 0.5em;
    }
}

@media only screen and (max-width: 640px) {
    #main .section .list_block dl.officer .note_sp {
        display: block;
    }
}

/*--事業所紹介--*/
.map_block {
    margin-bottom: var(--spacing-s);
}

.map_block+.img_block {
    display: flex;
    justify-content: space-between;
    margin-bottom: var(--spacing-s);
}

.map_block+.img_block .column {
    width: calc(50% - 20px);
}

.map_block+.img_block .column img {
    width: 100%;
}

.map_block+.img_block>.column:nth-of-type(2) img,
.map_block+.img_block>.photo-box img {
    border-radius: 30px;
}

.map_block+.img_block+.list_block dl dt {
    width: 12.7272%;
}

.map_block+.img_block+.list_block dl dd {
    width: 87.2727%;
    padding-left: 1em;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.map_block+.img_block+.list_block dl dd a {
    display: flex;
    width: auto;
}

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

    .map_block+.img_block+.list_block dl dt,
    .map_block+.list_block dl dd {
        width: 100%;
        padding-left: 0;
        display: block;
    }
}

/*--関連会社--*/
.link_list p+p {
    margin-top: 1rem;
}

.link_list p.nolink {
    padding-left: 1em;
}

/*--組織図--*/
.organaization_table {
    width: 100%;
    border-left: 1px solid #cdd6dd;
}

#main .section .organaization_table tr>td[rowspan='8'] {
    border-right: 1px solid #cdd6dd;
}

.organaization_table+p {
    margin-top: 1rem;
}

/*--サンリオのあゆみ--*/
.history_block {
    margin-left: var(--spacing-s);
    position: relative;
}

.history_block:before {
    content: '';
    width: 2px;
    height: calc(100% - 28px);
    position: absolute;
    background: var(--logo-blue);
    opacity: 0.3;
    left: 6px;
    top: 0.75em;
}

.history_block dl {
    display: flex;
    justify-content: space-between;
}

.history_block dl dt {
    padding-left: var(--spacing-s);
    position: relative;
    font-size: 1.3333em;
    color: var(--d-gray);
    width: 15%;
    line-height: 1.3333;
    padding-bottom: var(--spacing-m);
}

.history_block>dl:last-child dt {
    padding-bottom: 0;
}

.history_block dl dt:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0.5em;
    width: 14px;
    height: 14px;
    border: 2px solid #1c63b7;
    background: #fff;
    border-radius: 50%;
    display: block;
}

.history_block dl dt small {
    font-size: 0.583em;
}

.history_block dl dd {
    width: 83.5%;
    line-height: 1.7777;
    padding-top: 0.1em;
}

@media only screen and (max-width: 767px) {
    .history_block dl {
        display: block;
    }

    .history_block dl dt,
    .history_block dl dd {
        width: 100%;
    }

    .history_block dl dt {
        padding-bottom: 0;
    }

    .history_block dl dd {
        padding-left: var(--spacing-s);
        padding-bottom: var(--spacing-m);
    }
}

/* ----------------------
  ニュースリリース
------------------------*/
.news_list_wrap {
    padding-bottom: var(--spacing-s);
}

.news_container.news_list li {
    align-items: center;
}

.news_container.news_list>li:first-child {
    border-top: 1px solid var(--l-gray);
}

.news_container.news_list li .news_list_label {
    display: inline-block;
    width: 6em;
    padding: 0 8px;
    font-size: 0.8em;
    color: #fff;
    background: rgba(0, 75, 177, 0.6);
    white-space: nowrap;
    text-align: center;
    margin-left: 2rem;
}

.news_container.news_list li .news_list_label.label_news {
    background: rgba(0, 75, 177, 0.4);
}

.yearSelect {
    margin: 0 0 var(--spacing-xs) auto;
}

#type {
    display: flex;
    justify-content: space-between;
    margin-bottom: var(--spacing-s);
}

#type li {
    width: 32%;
}

#type li a {
    background-color: var(--l-gray);

    padding: 10px 0;
    display: block;
    text-align: center;
}

#type li.active a {
    background-color: var(--logo-blue);
    color: #fff;
}

/*
#type li.active:nth-of-type(2) a {
    background-color: #70AD47;
}
#type li.active:nth-of-type(3) a {
    background-color: #FFC000;
}
*/
#type li a:hover {
    opacity: 0.8;
    text-decoration: none;
}

@media only screen and (max-width: 767px) {
    .news_container.news_list li {
        display: block;
    }

    .news_container.news_list li>* {
        width: 100%;
        display: block;
    }

    .news_list li a {
        padding-left: 0;
    }
}

/* ----------------------
  SDGs
------------------------*/
.sdgs #main {
    padding-bottom: var(--spacing-xxxl);
}

#whatsnew_sdgs h2 {
    /*	margin-top:var(--spacing-xl);*/
}

#whatsnew_sdgs .news_container.news_list>li:first-child {
    border-top: none;
}

.news_container.news_list+a.btn_more {
    margin-top: var(--spacing-m);
}

.link_box#hellosmile {
    background: #ef7c1b;
}

.sdgs_columns_wrap+.sdgs_columns_wrap {
    margin-top: var(--spacing-xl);
}

.sdgs_columns {
    display: flex;
    justify-content: space-between;
}

.sdgs_columns.float_box {
    display: block;
}

.sdgs_columns.float_box:after {
    content: '';
    display: table;
    width: 100%;
    height: 1px;
    clear: both;
}

.sdgs_columns .txt_box {
    width: 50%;
}

.sdgs_columns.float_box .txt_box {
    width: 100%;
}

#main .sdgs_columns .txt_box h2 {
    margin-bottom: var(--spacing-xs);
}

.sdgs_columns .photo_box {
    width: 47%;
}

.sdgs_columns .photo_box img {
    width: 100%;
    border-radius: 30px;
}

.sdgs_columns.float_box .photo_box {
    float: right;
    margin-left: 3%;
}

.sdgs_columns_wrap *+h3.title_label {
    margin-top: var(--spacing-s);
}

.link_column.w100 {
    width: 100%;
}

.bn_nakayoku {
    width: 98.47%;
    display: block;
    background: var(--white);
    box-shadow: 0 3px 15px rgb(0 0 0 / 12%);
    border-radius: 7px;
    display: flex;
    padding: 20px 42px 16px;
    flex-flow: column;
    align-items: flex-start;
    justify-content: flex-start;
    margin-right: 1.53%;
}

.bn_nakayoku img {
    max-width: 350px;
}

@media only screen and (max-width: 767px) {
    #main #whatsnew_sdgs h2 {
        margin-bottom: 0;
    }

    .sdgs_columns {
        display: block;
    }

    .sdgs_columns .txt_box,
    .sdgs_columns .photo_box {
        width: 100%;
    }

    .sdgs_columns .photo_box {
        margin-top: var(--spacing-xs);
    }

    .sdgs #main {
        padding-bottom: var(--spacing-xxl);
    }
}

/* ----------------------
  Business Information
------------------------*/
.not_home.business-info #main {
    padding-bottom: var(--spacing-xxxl);
}

.not_home.business-info .mv_field figure {
    margin: var(--spacing-s) 0;
}

.not_home.business-info .container>.business_columns_wrap .business_columns {
    flex-flow: row-reverse;
}

.not_home.business-info .container>.business_columns_wrap:nth-of-type(2n) .business_columns {
    flex-flow: row;
}

.business_columns_wrap .business_columns+.link_column_wrap {
    margin-top: var(--spacing-s);
}

@media only screen and (max-width: 767px) {
    .not_home.business-info #main {
        padding-bottom: var(--spacing-xxl);
    }
}

.not_home.business-info .container>.business_columns_wrap .business_columns.business_columns_row {
    flex-flow: row;
}

.merit_columns {
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
}

.merit_column {
    background: #fff;
    width: calc((100% - 20px) / 2);
    padding: 20px 42px 30px;
    margin-bottom: 24px;
    text-align: center;
    border: 2px solid var(--h-blue);
}

.merit_column dl {
    width: 100%;
}

.merit_column dt {
    font-size: 1.22222em;
    padding-bottom: 12px;
    color: var(--logo-blue);
}

@media only screen and (max-width: 768px) {
    .merit_column {
        width: 100%;
    }
}

/* ----------------------
  contact - form
------------------------*/
.formWrap #main {
    padding-bottom: var(--spacing-m);
}

#main .section h2.mb-none+p {
    margin-top: var(--spacing-xxs);
}

.form_field {
    margin-top: var(--spacing-s);
}

.form_field dl dt {
    width: 23.5%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.form_field dl dt label {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.form_field dl dd {
    padding-left: var(--spacing-s);
    width: 76.5%;
    font-size: 0.8888em;
}

.en .form_field dl dt {
    width: 28%;
}

.en .form_field dl dd {
    width: 72%;
}

.form_field dl dd input[type='text'],
.form_field dl dd input[type='email'],
.form_field dl dd input[type='url'],
.form_field dl dd textarea {
    width: 100%;
    display: block;
}

.form_field dl dd p+input {
    margin-top: 0.5em;
}

.form_field dl dd ul {
    display: flex;
    justify-content: flex-start;
    flex-flow: wrap;
}

.form_field dl dd ul li {
    margin-right: 1em;
    white-space: nowrap;
}

.form_field dl dd p+ul {
    margin-top: var(--spacing-xxs);
}

#main .form_field dl dd ul+h5 {
    margin-top: 1em;
    font-size: 1em;
}

#main .form_field dl dd h5 {
    font-size: 1em;
}

.form_field dl dd .iwrap {
    display: flex;
    align-items: center;
}

.form_field dl dd .iwrap input {
    margin-right: 1em;
}

.form_field dl dd .iwrap input.inputNum,
.form_field dl dd .iwrap input[name='yourTel'],
.form_field dl dd .iwrap input[name='schoolTel'],
.form_field dl dd .iwrap input[name='homeroomTeacherTel'],
.form_field dl dd .iwrap input[type='tel'] {
    width: 35%;
}

.form_field dl dd .iwrap input[name='yourZip'] {
    width: 25%;
    margin-left: 1em;
}

.caution_field,
.submit_field {
    margin-top: var(--spacing-s);
    border-top: 1px solid #cdd6dd;
    padding-top: var(--spacing-s);
}

.caution_field>ul.list>li {
    font-size: 0.77777em;
}

.caution_field>ul.list {
    margin-top: var(--spacing-xs);
}

.caution_field>ul.list li ul {
    margin-top: 1em;
}

.submit_field {
    display: flex;
    justify-content: center;
}

.submit_field .btn_submit {
    width: 240px;
    height: 57px;
    border-radius: 7px;
    box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.26);
    color: #fff;
    background: #004bb1;
    display: block;
    margin: 0 var(--spacing-xxs);
    text-align: center;
    line-height: 57px;
    font-size: 1em;
    cursor: pointer;
    -webkit-appearance: none;
}

.submit_field .btn_submit.btn_crear {
    background: #98a6b5;
}

.thanks h2 img {
    display: block;
    margin: 0 auto var(--spacing-s);
}

.thanks.formWrap #main {
    padding-bottom: 0;
}

@media only screen and (max-width: 767px) {
    .form_field dl dd {
        padding-left: 0;
        margin-top: var(--spacing-xxs);
    }

    .submit_field .btn_submit {
        width: 46%;
        max-width: 240px;
        margin: 0 2%;
    }

    .form_field dl dd p+ul {
        display: block;
    }

    .form_field dl dd p+ul li+li {
        margin-top: var(--spacing-xxs);
    }

    .form_field dl dd .iwrap input.inputNum,
    .form_field dl dd .iwrap input[name='yourTel'],
    .form_field dl dd .iwrap input[name='schoolTel'],
    .form_field dl dd .iwrap input[name='homeroomTeacherTel'],
    .form_field dl dd .iwrap input[type='tel'] {
        width: 50%;
    }
}

/* アクセシビリティ一時対応分 */
.form_field .row {
    display: flex;
    position: relative;
    border-top: 1px solid #cdd6dd;
    padding: var(--spacing-xs) 0;
}

.form_field .row_h {
    position: absolute;
    top: 0;
    left: 0;
    width: 23.5%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    height: 100%;
    color: #1c63b7;
    font-weight: 500;
    padding: var(--spacing-xs) 0;
}

.form_field .row_h::before {
    content: '';
    width: 20px;
    height: 1px;
    background: #1c63b7;
    position: absolute;
    left: 0;
    top: -1px;
}

.form_field .row_d .iwrap {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.form_field .row_d .iwrap input.inputNum {
    width: 35%;
}

.form_field .row_d {
    width: 100%;
    padding-left: calc(23.5% + var(--spacing-s));
    font-size: 0.8888em;
}

@media only screen and (max-width: 768px) {
    .form_field .row {
        display: block;
        padding: var(--spacing-xxs) 0;
    }

    .form_field .row_h {
        position: relative;
        width: 100%;
        height: auto;
        padding: var(--spacing-xxs) 0;
    }

    .form_field .row_d {
        padding-left: 0;
        margin-top: var(--spacing-xxs);
    }

    .form_field .row_d .iwrap input.inputNum {
        width: 50%;
    }
}

/* ----------------------
  compliance
------------------------*/

.comp_field+.comp_field,
p+.comp_field {
    margin-top: var(--spacing-l);
}

.comp_field p+p {
    margin-top: 1em;
}

.comp_field p.sub {
    margin-left: 1em;
}

.comp_field ol.num {
    margin-top: var(--spacing-xs);
}

.charter .comp_field ol.num>li {
    font-weight: 500;
    color: var(--logo-blue);
}

.comp_field ol.num>li p,
.privacy .comp_field ul.list>li p {
    color: var(--b-black);
    font-weight: 400;
}

.comp_field ol.num>li:not(:first-child),
.privacy .comp_field ul.list>li:not(:first-child) {
    margin-top: var(--spacing-xs);
}

.comp_field ol.num+p,
.comp_field ul.list+p {
    margin-top: var(--spacing-xs);
}

.comp_field p+ul.list {
    margin-top: var(--spacing-xs);
}

#main .section .comp_field h3 {
    margin-top: var(--spacing-s);
}

.bg_blue_box {
    padding: var(--spacing-xs);
    background: var(--l-gray);
    border-radius: 7px;
}

.bg_blue_box dt {
    font-weight: 500;
}

.bg_blue_box dd {
    font-size: 0.88888em;
    font-weight: 400;
}

.videoBox {
    width: 100%;
}

.video_modal_box {
    display: none;
}

.videoBox video {
    width: 100%;
    height: auto;
}

/* ------------------------------------
	health_management
------------------------------------ */
.health_management #main .section .container>h3 {
    margin-top: var(--spacing-xs);
}

.health_management .num.circle li:has(> h3)::before {
    font-size: 1.22222em;
}

.health_management .tableType01 {
    font-size: 0.777em;
}

.health_management #main .tableType01 th,
.health_management #main .tableType01 td {
    padding: var(--spacing-xxs) 0.5em;
}

.health_management #main .tableType01 thead th {
    vertical-align: middle;
}

.health_management #main .tbl_wrap .inner {
    width: 100%;
    min-width: 619px;
}

.health_management p+p {
    margin-top: 1em;
}

.health_management ol {
    margin: 1em 0 1em 1.5em;
}

.health_management ol>li::marker {
    color: var(--logo-blue);
}

.health_management figure {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.health_management figure+figure {
    margin-top: var(--spacing-s);
}

.health_management .fig_panel {
    max-width: 800px;
}

.health_effort_field {
    border: rgba(205, 214, 221, 0.6) 1px solid;
    background: #f6fbff;
    border-radius: 7px;
    padding: var(--spacing-s);
    margin-bottom: var(--spacing-xl);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.health_effort_field .txt_box {
    width: 56%;
}

.health_effort_field .photo_box {
    width: 40%;
}

.health_management .note_sp {
    display: none;
    font-size: 0.7em;
    color: var(--d-gray);
}

.health_management .health_management_flex,
.health_management .dl_flex {
    display: flex;
}

.health_management .dl_flex {
    align-items: center;
}

.health_management .dl_flex>dt::after {
    content: '：';
}

.health_management .health_management_flex.character {
    gap: 0 40px;
}

.health_management .health_management_flex.point {
    align-items: flex-start;
    gap: 0 40px;
}

.health_management .health_management_flex.point>.text_block {
    flex: 1;
}

.health_management .health_management_flex.point>div:not(.text_block),
.health_management .health_management_flex.point>figure {
    width: 40%;
}

.health_management .health_management_flex.evaluation {
    flex-wrap: wrap;
    gap: 40px;
}

.health_management .health_management_flex.evaluation>li {
    display: flex;
    width: calc(50% - 20px);
}

.health_management .health_management_flex.evaluation>li figure {
    display: flex;
    flex-direction: column;
    border: solid 1px #cdd6dd;
}

.health_management .health_management_flex.evaluation>li figure>picture {
    height: 200px;
    padding: 10px;
    border-bottom: solid 1px #cdd6dd;
    text-align: center;
}

.health_management .health_management_flex.evaluation>li figure>picture img {
    width: auto;
    max-height: 180px;
}

.health_management #main .health_management_flex.evaluation>li figure>figcaption {
    padding: 5px 10px;
}

.health_management #main .health_management_flex.evaluation>li figure>figcaption h3 {
    padding-bottom: 0;
}

.health_management #main .health_management_flex.evaluation>li figure>figcaption h3::before {
    content: none;
}

.health_management #main .health_management_flex.evaluation>li figure>figcaption p {
    text-align: left;
}

.health_management #main .health_management_flex.evaluation>li figure>figcaption p .text_link.blank::after {
    top: auto;
    bottom: 8px;
}

.health_management .img_flex {
    display: flex;
    align-items: flex-start;
    gap: 0 10px;
}

.health_management .img_flex>* {
    width: calc(50% - 5px);
}

@media only screen and (max-width: 768px) {
    .health_management .note_sp {
        display: block;
    }

    .health_management .tableType01 {
        font-size: min(3.2vw, 1.2rem);
    }

    .health_effort_field {
        display: block;
        padding: var(--spacing-xs) var(--spacing-xxs);
    }

    .health_effort_field .photo_box {
        width: 100%;
        margin-top: var(--spacing-s);
    }

    .health_effort_field .txt_box {
        width: 100%;
    }

    .health_management .health_management_flex {
        flex-direction: column;
    }

    .health_management .health_management_flex.character,
    .health_management .health_management_flex.point {
        gap: 20px 0;
    }

    .health_management .health_management_flex.point>div:not(.text_block),
    .health_management .health_management_flex.point>figure {
        width: 100%;
    }

    .health_management .health_management_flex.evaluation>li {
        width: 100%;
    }

    .health_management .health_management_flex.evaluation>li figure>picture {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .health_management #main .health_management_flex.evaluation>li figure>figcaption {
        padding: 10px;
    }
}

/* ------------------------------------
	live
------------------------------------ */
.caution_wrap {
    margin: 0 0 2em;
}

.caution_ul {
    margin: 0 0 1em;
}

.caution_ul li {
    padding: 0 0 0.5em 1.5em;
    position: relative;
}

.caution_ul li::before {
    position: absolute;
    top: 0;
    left: 0;
    content: '※';
}

.live_wrap {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin-bottom: var(--spacing-s);
}

.live_wrap iframe,
.live_wrap video {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

/* ------------------------------------
	sponsorship
------------------------------------ */
.sponsorship .index_column_wrap {
    padding-bottom: 0;
}

.sponsorship .index_column .inner {
    background: #f6fbff;
    border: #cdd6dd 1px solid;
    border-radius: 15px;
    height: 100%;
    display: flex;
    padding: var(--spacing-xs);
}

.sponsorship .index_column .thumb_box {
    width: 40%;
    margin-right: 5%;
    text-align: center;
}

.sponsorship .thumb_box .copyright {
    display: block;
    text-align: right;
    font-size: 10px;
}

.sponsorship .thumb_box ul {
    margin-top: var(--spacing-xxs);
    text-align: center;
}

.sponsorship .thumb_box ul li {
    display: inline-block;
    width: 32px;
    margin: 0 4px;
}

.sponsorship .thumb_box ul li a {
    background: none;
    box-shadow: none;
    display: inline-block;
    overflow: hidden;
    padding: 0;
    transition: 0.5s;
    border-radius: 0;
}

.sponsorship .thumb_box ul li a:hover {
    opacity: 0.6;
}

.sponsorship .thumb_box ul li a img {
    width: 100%;
    height: auto;
    border-radius: 0;
}

.sponsorship .index_column dl {
    width: 55%;
}

.sponsorship .index_column dl dt {
    font-size: 1.22222em;
    padding-bottom: 20px;
    position: relative;
    color: var(--logo-blue);
}

.sponsorship .index_column dl dt:before {
    content: '';
    width: 17.8%;
    max-width: 50px;
    height: 2px;
    background: linear-gradient(#2957c1 0%, #0080ff 100%);
    position: absolute;
    left: 0;
    bottom: 0;
}

.sponsorship .index_column dl dt small {
    font-size: 0.7em;
    display: block;
}

.sponsorship .index_column dl dt small.belong {
    display: inline-block;
}

.sponsorship .index_column dl dd {
    padding-top: 1em;
    padding-bottom: 1em;
}

.sponsorship .index_column dl dd p {
    margin-bottom: 10px;
    color: var(--b-black);
}

.sponsorship .index_column.group {
    width: 100%;
}

.sponsorship .index_column.group .inner {
    display: block;
}

.sponsorship .index_column.group dl {
    width: 100%;
}

.sponsorship .index_column.group dl dd {
    padding-bottom: 0;
}

.sponsorship .index_column.group .member_list {
    display: flex;
    justify-content: center;
    margin-top: var(--spacing-xs);
}

.sponsorship .index_column.group .member_list .thumb_box {
    width: 18.5%;
    margin-right: 0;
    margin-right: 2%;
}

.sponsorship .index_column.group .member_list .thumb_box:last-child {
    margin-right: 0;
}

.sponsorship .index_column.group .member_list .name {
    display: inline-block;
    margin-top: var(--spacing-xxs);
    color: var(--logo-blue);
}

.sponsorship_columns {
    display: flex;
    justify-content: space-between;
    margin-bottom: var(--spacing-xl);
}

.sponsorship_columns .photo_box {
    width: 40%;
}

.sponsorship_columns .txt_box {
    width: 56%;
}

.sponsorship_columns .txt_box p+p {
    margin-top: 1em;
}

.sponsorship_columns .txt_box .link_column_wrap {
    margin: var(--spacing-s) 0;
}

.sponsorship_columns .photo_box img {
    width: 100%;
    border-radius: 30px;
}

.sponsorship_columns .photo_box figure+figure {
    margin-top: var(--spacing-xs);
}

.sponsorship_columns_wrap+.sponsorship_columns_wrap,
#main .section .container>div+.sponsorship_columns_wrap {
    margin-top: var(--spacing-xl);
}

.container>.sponsorship_columns_wrap:nth-of-type(2n) .sponsorship_columns {
    flex-flow: row-reverse;
}

p.emphatic {
    color: var(--logo-blue);
    font-size: 1.22222em;
    padding-bottom: var(--spacing-xs);
    position: relative;
    margin: 0 0 var(--spacing-xs) 0;
    font-feature-settings: normal;
}

@media only screen and (max-width: 768px) {
    .sponsorship .index_column_wrap.col2 .index_column {
        width: 100%;
    }

    .sponsorship_columns {
        display: block;
    }

    .sponsorship_columns .photo_box {
        width: 100%;
        margin-bottom: var(--spacing-s);
    }

    .sponsorship_columns .txt_box {
        width: 100%;
    }

    .sponsorship .index_column.group .member_list {
        flex-wrap: wrap;
        width: 90%;
        margin: 0 auto;
        justify-content: space-between;
    }

    .sponsorship .index_column.group .member_list .thumb_box {
        width: 45%;
        margin-top: var(--spacing-xs);
        margin-right: 0;
    }
}

/* ------------------------------------
	search
------------------------------------ */
.search_result .search_box {
    margin-bottom: var(--spacing-s);
}

@import url('https://fonts.googleapis.com/css2?family=Montserrat&display=swap');

/* =======================================

	pg_sustainability

======================================= */

/* sustainability共通 */
body {
    -webkit-text-size-adjust: 100%;
    --hd-red: #ff2640;
    --hd-orange: #ff8b33;
    --hd-green: #3cc578;
    --hd-perple: #8b60ca;
    --hd-blue: #40b3ca;
    --hd-glay: #c1cbd3;
    --font-size-xxs: 1rem;
    --font-size-xs: 1.2rem;
    --font-size-s: 1.4rem;
    --font-size-m: 1.6rem;
    --font-size-l: 1.8rem;
    --font-size-xl: 2rem;
    --font-size-xxl: 2.2rem;
    overflow-wrap: break-word;
}

/* H2相当 */
.pg_sustainability .tit_LL {
    color: var(--logo-blue) !important;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6666em !important;
    margin-bottom: var(--spacing-s) !important;
    padding-bottom: 0 !important;
    font-weight: 600 !important;
    line-height: 1.45 !important;
    font-feature-settings: unset !important;
}

.pg_sustainability .tit_LL:not(.title_label)::before {
    content: none !important;
}

/* H3相当 */
.pg_sustainability .tit_L {
    color: var(--logo-blue) !important;
    font-size: 1.6666em !important;
    margin-bottom: 1em !important;
}

.pg_sustainability .tit_L:not(.title_label) {
    color: var(--logo-blue) !important;
    font-size: 1.22222em !important;
    padding-bottom: var(--spacing-xs) !important;
    position: relative !important;
    margin: 0 0 var(--spacing-xs) 0 !important;
    font-weight: 500 !important;
    font-feature-settings: normal !important;
}

.pg_sustainability .tit_L::before {
    top: auto !important;
    transform: none !important;
}

.pg_sustainability .tit_L:not(.title_label)::before {
    content: '' !important;
    width: 17.8% !important;
    max-width: 50px !important;
    height: 2px !important;
    background: linear-gradient(#2957c1 0%, #0080ff 100%) !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
}

.pg_sustainability .tit_L+.tit_LL:not(.title_label) {
    margin: var(--spacing-s) 0 var(--spacing-xs) 0;
}

/* H4相当 */
.pg_sustainability .tit_M {
    color: var(--logo-blue) !important;
    font-size: 1.11111em !important;
    padding-left: 1.33333em !important;
    position: relative !important;
    font-weight: 500 !important;
    line-height: 1.777 !important;
}

.pg_sustainability .tit_M {
    padding-left: 0 !important;
    margin: var(--spacing-xs) 0 var(--spacing-xxs) 0 !important;
}

.pg_sustainability .tit_M::before {
    content: none !important;
}

.pg_sustainability .tit_M:not(.title_label) {
    padding-bottom: 0 !important;
    font-feature-settings: unset !important;
}

/* H5相当 */
.pg_sustainability .tit_S {
    color: var(--b-black) !important;
    font-size: 1em !important;
    font-weight: bold !important;
    padding-left: 0 !important;
    padding-bottom: 0 !important;
    margin: var(--spacing-xs) 0 var(--spacing-xxs) 0 !important;
    font-feature-settings: unset !important;
}

.pg_sustainability .tit_S::before {
    content: none !important;
}

.pg_sustainability .font01 {
    font-family: zen-maru-gothic, sans-serif;
    font-style: normal;
    font-weight: 700;
}

.pg_sustainability .font02 {
    font-family: 'montserrat', sans-serif;
    font-style: normal;
    font-weight: 400;
}

.pg_sustainability .pg_w575>*:nth-child(1) {
    display: block;
}

.pg_sustainability .pg_w575>*:nth-child(2) {
    display: none;
}

/*
.pg_sustainability #main .section .cap {
	color: var(--logo-blue);
}
.pg_sustainability .index_column a * {
	color: var(--b-black);
}
*/
.pg_sustainability .pg_list {
    display: flex;
}

.pg_sustainability .pg_list>* {
    margin-right: 1em;
}

.pg_sustainability .container {
    max-width: 1440px;
}

.pg_sustainability .container .container_s {
    max-width: 1100px;
    width: 100%;
}

.pg_sustainability #main .section h4 {
    padding-left: 0;
    margin: var(--spacing-xs) 0 var(--spacing-xxs) 0;
}

.pg_sustainability #main .section h4::before {
    content: none;
}

.pg_sustainability #main .section h5 {
    color: var(--b-black);
    font-size: 1em;
    font-weight: bold;
    padding-left: 0;
    margin: var(--spacing-xs) 0 var(--spacing-xxs) 0;
}

.pg_sustainability .btn_more.anchor_link::after {
    transform: rotate(90deg);
}

.pg_sustainability .btnlink_wrap {
    position: relative;
    display: flex;
    flex-wrap: wrap;
}

.pg_sustainability .btnlink_wrap.s_center {
    justify-content: center;
}

.pg_sustainability .btnlink_wrap>* {
    margin-top: 10px;
    margin-right: 2em;
    margin-bottom: 10px;
}

.pg_sustainability .btn_more.anchor_link:hover::after {
    transform: rotate(90deg) translateX(8px);
}

.pg_sustainability .btn_app {
    display: flex;
    align-items: center;
    font-weight: 600;
}

.pg_sustainability .btn_app::after {
    width: 15px;
    height: 20px;
    content: '';
    background-size: contain;
    margin-left: 23px;
    transition: 0.5s;
}

.pg_sustainability a.text_link {
    color: var(--logo-blue);
    padding-left: 1em;
    background: url(/img/arrow_txt_link.png) 6px center no-repeat;
    background-size: 6px 6px;
}

.pg_sustainability a.text_link.s_notBox {
    padding: 0;
    display: inline;
    box-shadow: none;
    color: var(--logo-blue);
    padding-left: 1em;
    background: url(/img/arrow_txt_link.png) 6px center no-repeat;
    background-size: 6px 6px;
}

.pg_sustainability .list>li a.text_link {
    font-weight: 500;
}

.pg_sustainability a.pdf_link2.blank {
    position: relative;
    padding-right: 5px;
}

.pg_sustainability a.pdf_link2 {
    color: var(--logo-blue);
    padding-left: 1em;
    background: url(/img/arrow_txt_link.png) 6px center no-repeat;
    background-size: 6px 6px;
}

.pg_sustainability .index_column a.pdf_link2 {
    box-shadow: none;
    border-radius: 0;
    padding: 0 0 0 1em;
    display: inline-block;
    height: auto;
}

.pg_sustainability a.pdf_link2::after {
    content: '';
    background: url(/sustainability/img/ico_pdf.png) no-repeat 100% 50%;
    background-size: 15px;
    color: var(--logo-blue);
    padding-left: 1.5em;
}

.pg_sustainability .btn_app.pdf_link::after {
    background: url(/sustainability/img/ico_pdf.png) no-repeat 0 50%;
    background-size: 15px;
}

.pg_sustainability .btn_app.zip_link::after {
    background: url(/sustainability/img/ico_zip.png) no-repeat;
}

.pg_sustainability .btn_app.excel_link::after {
    background: url(/sustainability/img/ico_excel.png) no-repeat;
}

.pg_sustainability .btn_app.word_link::after {
    background: url(/sustainability/img/ico_word.png) no-repeat;
}

.pg_sustainability .index_column_wrap.col4 .index_column {
    width: calc(100% / 4);
}

.pg_sustainability .index_column_wrap {
    padding-bottom: 0;
    margin-top: 24px;
    margin-left: -1.8182%;
    margin-right: -1.8182%;
}

.pg_sustainability .section:last-of-type {
    margin-bottom: var(--spacing-xl);
}

.pg_sustainability .index_column_wrap .index_column {
    padding-left: 1.8182%;
    padding-right: 1.8182%;
}

.pg_sustainability .index_column_wrap.typeC {
    align-items: center;
}

.pg_sustainability .index_column_wrap.typeD {
    margin-left: -3.6364%;
    margin-right: -3.6364%;
}

.pg_sustainability .index_column_wrap.typeD .index_column {
    padding-left: 3.6364%;
    padding-right: 3.6364%;
}

.pg_sustainability .index_column .column_copy {
    margin-top: var(--spacing-xxs);
    font-size: 1.6rem;
}

.pg_sustainability .sustainabilityt_box1 {
    padding: 40px 40px;
    background-color: #f6fbff;
    border-radius: 8px;
}

.pg_sustainability #main .sustainabilityt_box1 h2 {
    font-size: 2rem;
    margin-bottom: 0;
}

.pg_sustainability #main .sustainabilityt_box1 h2+* {
    margin-top: 20px;
}

.pg_sustainability #main .tableType01 {
    /*font-size: 1.6rem;*/
}

.pg_sustainability #main .tableType01 th {
    background-color: #f6fbff;
}

.pg_sustainability #main .tableType01 tbody th,
.pg_sustainability #main .tableType01 td {
    padding: var(--spacing-xxs) var(--spacing-xs);
}

.pg_sustainability #main th.t-nowrap,
.pg_sustainability #main td.t-nowrap {
    white-space: nowrap;
    /*セル内を自動改行させない場合*/
}

.pg_sustainability #main .tableType02 {
    border: 1px solid #98a6b5;
    width: 100%;
    border-collapse: separate;
    position: relative;
    z-index: 0;
}

.pg_sustainability #main .tableType02 .s_w70 {
    width: 70px;
}

.pg_sustainability #main .tableType02 th {
    background-color: #cbd2da;
    font-weight: bold;
    padding: 6px;
    text-align: center;
    vertical-align: middle;
    font-weight: 500;
}

.pg_sustainability #main .tableType02 th.s_bdB01 {
    border-bottom: 1px solid #fff;
}

.pg_sustainability #main .tableType02 th.s_bdL01 {
    border-left: 1px solid #fff;
}

.pg_sustainability #main .tableType02 td {
    background-color: #fff;
    padding: 10px;
    vertical-align: middle;
    border-top: 1px solid #98a6b5;
}

.pg_sustainability #main .tableType02 td.s_bdL01 {
    border-left: 1px solid #98a6b5;
}

.pg_sustainability #main .tableType02_text01 {
    font-size: 1.5rem;
    color: var(--logo-blue);
    font-weight: 500;
}

.pg_sustainability #main .tableType02_text02 {
    font-size: 1.4rem;
}

.pg_sustainability .index_column.thumb .thumb_box {
    border-radius: 0;
    display: block;
}

.pg_sustainability .index_column.thumb,
.pg_nakayoku_interview .connection_column {
    position: relative;
}

.pg_sustainability .index_column.thumb a {
    overflow: hidden;
}

.pg_sustainability .index_column.thumb .icon_wrap,
.pg_nakayoku_interview .connection_column .icon_wrap {
    position: absolute;
    top: 8px;
    left: 8px;
    display: flex;
    flex-wrap: wrap;
}

.pg_nakayoku_interview .connection_column .icon_wrap {
    /* left: 48%; */
    position: static;
}

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

    .pg_sustainability .index_column.thumb .icon_wrap,
    .pg_nakayoku_interview .connection_column .icon_wrap {
        left: 8px;
    }
}

.pg_sustainability .index_column.thumb .icon_wrap .icon,
.pg_nakayoku_interview .connection_column .icon_wrap .icon {
    font-size: var(--font-size-s);
    line-height: 1;
    padding: 4px 6px 5px;
    color: var(--white);
    border: 1px solid #d6dbe1;
    margin-right: 5px;
    margin-bottom: 5px;
    z-index: 10;
}

.pg_sustainability .index_column.thumb .icon_wrap .icon.i01,
.pg_nakayoku_interview .connection_column .icon_wrap .icon.i01 {
    background-color: #ff2640;
}

.pg_sustainability .index_column.thumb .icon_wrap .icon.i02,
.pg_nakayoku_interview .connection_column .icon_wrap .icon.i02 {
    background-color: #3cc578;
}

.pg_sustainability .index_column.thumb .icon_wrap .icon.i03,
.pg_nakayoku_interview .connection_column .icon_wrap .icon.i03 {
    background-color: #8b60ca;
}

.pg_sustainability .index_column.thumb .icon_wrap .icon.i04,
.pg_nakayoku_interview .connection_column .icon_wrap .icon.i04 {
    background-color: #ff8b33;
}

.pg_sustainability .index_column.thumb .icon_wrap .icon.i05,
.pg_nakayoku_interview .connection_column .icon_wrap .icon.i05 {
    background-color: #40b2ca;
}

.pg_sustainability .index_column.thumb .icon_wrap .icon.i06,
.pg_nakayoku_interview .connection_column .icon_wrap .icon.i06 {
    background-color: #98a6b5;
}

/*
.pg_nakayoku_index .index_column.thumb .thumb_box,
.pg_nakayoku_interview .index_column.thumb .thumb_box {
	border-radius: 8px 8px 0 0;
}
.pg_nakayoku_index .index_column.thumb .thumb_box > img {
	border-radius: 15px;
}
.pg_nakayoku_index .index_column.thumb .thumb_box > img.typeA {
	border-radius: 15px 15px 0 0;
}
*/
.pg_nakayoku_index .index_column.thumb a,
.pg_nakayoku_interview .index_column.thumb a,
.pg_nakayoku_interview .connection_column a {
    overflow: hidden;
}

.pg_nakayoku_index .index_column.thumb a .thumb_box img,
.pg_nakayoku_interview .index_column.thumb a .thumb_box img,
.pg_nakayoku_interview .connection_column a .thumb_box img {
    transition: 0.5s;
}

.pg_nakayoku_index .index_column.thumb a:hover .thumb_box img,
.pg_nakayoku_interview .index_column.thumb a:hover .thumb_box img,
.pg_nakayoku_interview .connection_column a:hover .thumb_box img {
    transform: scale(1.1, 1.1);
}

.pg_sustainability .yearSelect>select:focus {
    content: '';
    border: 2px solid #000;
    border-radius: 5px;
    padding: 0 14px;
    line-height: 53px;
}

.pg_sustainability #main {
    background: none;
}

.pg_sustainability .floatL {
    float: left;
}

.pg_sustainability .overflowH {
    overflow: hidden;
}

.pg_sustainability .mr1em {
    margin-right: 1em;
}

.pg_sustainability .disB {
    display: block;
}

/* materiality */
.pg_materiality header {
    background: var(--white);
}

.pg_materiality header.smaller {
    height: 80px;
    background: rgba(255, 255, 255, 0.9);
}

.pg_materiality #breadcrumb ul,
.pg_materiality #breadcrumb a {
    color: var(--white);
}

.pg_materiality #breadcrumb li:not(:last-of-type)::after {
    content: '\03e';
    color: var(--white);
}

.pg_materiality #breadcrumb li:first-of-type a::before {
    filter: brightness(1000%);
}

.pg_materiality #content_head {
    background: linear-gradient(to bottom, rgba(0, 93, 183, 1) 0%, rgba(0, 204, 228, 1) 100%);
    background-repeat: no-repeat;
    height: 816px;
}

.pg_materiality #content_head::after {
    background: url(/sustainability/materiality/img/ind_main.png) 50% 100% no-repeat;
    background-size: 1440px;
    height: 442px;
    top: auto;
}

.pg_materiality .page_title {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 5rem;
    line-height: 1;
    color: var(--white);
    margin-top: var(--spacing-m);
}

.pg_materiality .page_copy {
    display: flex;
    justify-content: center;
    text-align: center;
    margin-top: var(--spacing-s);
    font-size: var(--font-size-m);
    line-height: 2;
    color: var(--white);
}

.pg_materiality .page_copy+* {
    margin-top: var(--spacing-xxs);
}

.pg_materiality .page_col2 {
    display: flex;
    margin: 30px auto 0;
    max-width: 1440px;
}

.pg_materiality .section01,
.pg_materiality .section03 {
    padding-top: 90px;
    padding-bottom: 140px;
}

.pg_materiality .section01 {
    background-color: #eaf0f0;
}

.pg_materiality .sec_tit {
    display: flex;
    justify-content: center;
    font-size: 3.6rem;
    font-weight: bold;
    color: var(--logo-blue);
    margin-bottom: var(--spacing-s);
}

.pg_materiality .column_wrap {
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
    position: relative;
    margin-left: -1.8182%;
    margin-right: -1.8182%;
    padding-bottom: 0;
}

.pg_materiality .column_wrap>.column {
    background-color: #fff;
    /*box-shadow: 0 3px 15px rgba(0,0,0,0.12);*/
    border-radius: 14px;
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    justify-content: flex-start;
    font-size: var(--font-size-xl);
    margin-left: 1.8182%;
    margin-right: 1.8182%;
    margin-bottom: 24px;
    padding: 20px 33px 18px;
    height: 100%;
    width: calc(calc(100% - 3.6364%) / 3);
    position: relative;
}

.pg_materiality .column_wrap.col2>.column {
    width: calc(50% - 3.6364%);
}

.pg_materiality .column_wrap>.column>* {
    display: flex;
    align-items: center;
    padding-left: 100px;
    background-position: 0 50%;
    background-repeat: no-repeat;
    background-size: 80px;
    min-height: 80px;
}

.pg_materiality .column_wrap>.column>*.list01 {
    background-image: url(/sustainability/materiality/img/ind_ico01.png);
}

.pg_materiality .column_wrap>.column>*.list02 {
    background-image: url(/sustainability/materiality/img/ind_ico02.png);
}

.pg_materiality .column_wrap>.column>*.list03 {
    background-image: url(/sustainability/materiality/img/ind_ico03.png);
}

.pg_materiality .column_wrap>.column>*.list04 {
    background-image: url(/sustainability/materiality/img/ind_ico04.png);
}

.pg_materiality .column_wrap>.column>*.list05 {
    background-image: url(/sustainability/materiality/img/ind_ico05.png);
}

.pg_materiality .column_wrap>.column>*.list06 {
    background-image: url(/sustainability/materiality/img/ind_ico06.png);
}

.pg_materiality .column_wrap>.column>*.list07 {
    background-image: url(/sustainability/materiality/img/ind_ico07.png);
}

.pg_materiality .column_wrap>.column>*.list08 {
    background-image: url(/sustainability/materiality/img/ind_ico08.png);
}

.pg_materiality .column_wrap>.column>*.list09 {
    background-image: url(/sustainability/materiality/img/ind_ico09.png);
}

.pg_materiality .column_wrap>.column>*.list10 {
    background-image: url(/sustainability/materiality/img/ind_ico10.png);
}

.pg_materiality .section02 {
    padding-top: 90px;
    padding-bottom: 140px;
}

.pg_materiality .sec_tit {
    display: flex;
    justify-content: center;
    font-size: 3.6rem;
    font-weight: bold;
    color: var(--logo-blue);
    margin-bottom: var(--spacing-s);
}

.pg_materiality .section02 .sec_copy {
    display: flex;
    justify-content: center;
    font-size: var(--font-size-m);
}

.pg_materiality .section02 .box01 {}

.pg_materiality .box01 .box01_tit {
    display: flex;
    border-radius: 15px 15px 0 0;
    background: linear-gradient(90deg, #1c63b7, #088ebc);
    padding: 20px 20px 20px 40px;
    color: var(--white);
    font-size: 2.6rem;
    line-height: 1;
    align-items: center;
    width: 100%;
}

.pg_materiality .box01 .box01_tit.tglBtn {
    position: relative;
    padding-right: 70px;
}

.pg_materiality .tglIcon01 {
    display: block;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 2px solid #fff;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 35px;
    margin: auto;
}

.pg_materiality .tglIcon01::before,
.pg_materiality .tglIcon01::after {
    content: '';
    display: block;
    width: 15px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.pg_materiality .tglIcon01::after {
    rotate: 90deg;
    display: none;
}

.pg_materiality .js_tglArea.s_close .tglIcon01::after {
    display: block;
}

@media only screen and (max-width: 768px) {
    .pg_materiality .box01 .box01_tit.tglBtn {
        padding-right: 50px;
    }

    .pg_materiality .tglIcon01 {
        right: 20px;
        width: calc(15 / 375 * 100vw);
        height: calc(15 / 375 * 100vw);
    }

    .pg_materiality .tglIcon01::before,
    .pg_materiality .tglIcon01::after {
        width: calc(7 / 375 * 100vw);
    }
}

.pg_materiality .section04 {
    background-color: #eaf0f0;
    padding: 90px 0 150px;
}

@media screen and (max-width: 768px) {
    .pg_materiality .section04 {
        padding: 50px 0 60px;
    }
}

.pg_materiality .sec04_leadText01 {
    font-size: 1.6rem;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .pg_materiality .sec04_leadText01 {
        text-align: left;
        font-size: calc(15 / 375 * 100vw);
    }
}

.pg_materiality .box01 .box01_tit>.no {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 3.2rem;
    line-height: 44px;
    color: var(--logo-blue);
    background-color: var(--white);
    width: 48px;
    height: 48px;
    border-radius: 5em;
    margin-right: 20px;
    padding-bottom: 4px;
}

.pg_materiality .box01 .box01_main {
    border-radius: 0 0 15px 15px;
    background-color: #eaf0f0;
    padding: 30px 10% 30px;
}

.pg_materiality .box01 .box01_main .copy {
    font-size: var(--font-size-xl);
    font-weight: bold;
}

.pg_materiality .box01 .box01_main .tit {
    font-size: var(--font-size-l);
    color: var(--logo-blue);
    margin-top: var(--spacing-xs);
}

.pg_materiality .box01 .box01_main>.list,
.pg_materiality .box01 .box01_main .column_wrap01>.main>.list,
.pg_materiality .box01 .box01_main .column_wrap01>.thumb {
    font-size: var(--font-size-m);
    margin-top: var(--spacing-xxs);
}

.pg_materiality .box01 .box01_main .column_wrap01>.main>.list>li {
    line-height: 1.777;
}

.pg_materiality .box01 .column_wrap01 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.pg_materiality .box01 .column_wrap01>.main {
    width: calc(100% - 230px);
}

.pg_materiality .box01 .column_wrap01>.thumb {
    width: 210px;
}

.pg_materiality .box01 .column_wrap01>.thumb>.caption {
    font-size: var(--font-size-s);
    margin-top: var(--spacing-xxs);
}

.pg_materiality #main {
    position: relative;
    /* background: url(/sustainability/materiality/img/ind_main_section_bg.png), linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 95%, rgba(0, 93, 183, 1) 95%, rgba(0, 204, 228, 1) 100%);
	background-position: 50% 100%, 50% 100%;
	background-size: 1440px, 5px;
	background-repeat: no-repeat, repeat-x; */
    padding-bottom: 250px;
}

.pg_materiality #main::before {
    content: '';
    display: block;
    /* width: 1440px; */
    height: 250px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    background:
        url(/sustainability/materiality/img/ind_main_section_bg.png) no-repeat,
        linear-gradient(to bottom,
            /* rgba(0,0,0,0) 0%,
											rgba(0,0,0,0) 95%,  */
            rgba(0, 93, 183, 1) 0%,
            rgba(0, 204, 228, 1) 100%);
    background-position: center bottom;
    background-size: 1440px, 250px;
}

.pg_materiality .contact_box {
    background-color: #fff;
}

.pg_materiality .contact_box.open {
    background-color: rgba(246, 251, 255, 0.6);
}

.pg_materiality .contact_box dt::before {
    display: none;
}

.pg_materiality .contact_box_title {
    display: flex;
    align-items: center;
    padding: 15px 0;
}

.pg_materiality .contact_box_title_head {
    width: 72px;
}

.pg_materiality .contact_box_title_body {
    width: calc(100% - 72px);
    padding-left: 15px;
    font-size: 2.4rem;
}

.pg_materiality .col2_text_wrap {
    /* margin: 0 100px; */
    /* max-width: 80%; */
    max-width: 840px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    /* align-items: flex-start; */
}

.pg_materiality .col2_text_wrap+.col2_text_wrap {
    margin-top: 30px;
}

.pg_materiality .col2_text_heading {
    background: linear-gradient(to right, rgba(28, 99, 183, 1) 0%, rgba(8, 142, 188, 1) 100%);
    color: #fff;
    display: flex;
    font-weight: bold;
    font-size: 1.6rem;
    align-items: center;
    justify-content: center;
    width: 116px;
    margin-right: 15px;
    padding: 10px;
    min-height: 50px;
    text-align: center;
    line-height: 1.4;
}

.pg_materiality .col2_text_heading.s_alignStart {
    align-items: flex-start;
}

.pg_materiality .s_01 .col2_text_heading {
    background: linear-gradient(90deg, rgba(0, 109, 177, 1) 0%, rgba(70, 176, 201, 1) 100%);
}

.pg_materiality .s_02 .col2_text_heading {
    background: linear-gradient(90deg, rgba(103, 67, 205, 1) 0%, rgba(144, 154, 222, 1) 100%);
}

.pg_materiality .s_03 .col2_text_heading {
    background: linear-gradient(90deg, rgba(0, 115, 204, 1) 0%, rgba(127, 161, 247, 1) 100%);
}

.pg_materiality .s_04 .col2_text_heading {
    background: linear-gradient(90deg, rgba(12, 151, 140, 1) 0%, rgba(76, 187, 179, 1) 100%);
}

.pg_materiality .s_05 .col2_text_heading {
    background: linear-gradient(90deg, rgba(31, 178, 194, 1) 0%, rgba(93, 204, 207, 1) 100%);
}

.pg_materiality .s_06 .col2_text_heading {
    background: linear-gradient(90deg, rgba(186, 100, 211, 1) 0%, rgba(214, 162, 229, 1) 100%);
}

.pg_materiality .s_07 .col2_text_heading {
    background: linear-gradient(90deg, rgba(0, 191, 158, 1) 0%, rgba(127, 209, 207, 1) 100%);
}

.pg_materiality .s_08 .col2_text_heading {
    background: linear-gradient(90deg, rgba(255, 122, 176, 1) 0%, rgba(211, 163, 222, 1) 100%);
}

.pg_materiality .s_09 .col2_text_heading {
    background: linear-gradient(90deg, rgba(98, 95, 177, 1) 0%, rgba(150, 178, 214, 1) 100%);
}

.pg_materiality .s_10 .col2_text_heading {
    background: linear-gradient(90deg, rgba(23, 72, 133, 1) 0%, rgba(89, 158, 192, 1) 100%);
}

.pg_materiality .col2_text_body {
    width: calc(100% - 126px);
    font-size: 1.6rem;
    font-weight: 600;
    min-height: 50px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.pg_materiality .col2_text_body.s_hasBg {
    background-color: #eaf0f0;
    padding: 28px 20px;
}

.col2_text_body_title {
    color: var(--logo-blue);
}

.pg_materiality .mt10 {
    margin-top: 10px;
}

.pg_materiality .col2_text_caption {
    margin: 10px 100px 0;
    font-size: 1rem;
}

.pg_materiality .pageNavArea {
    padding: 30px 0 60px;
}

@media screen and (max-width: 768px) {
    .pg_materiality .pgNav_leadText {
        font-size: calc(16 / 375 * 100vw);
    }
}

/* nakayoku index */
.pg_nakayoku_index {
    background-color: #ebf0f0;
}

.pg_nakayoku_index #content_head {
    padding-bottom: 0;
    background: none;
}

.pg_nakayoku_index #content_head::after {
    background: none;
}

.pg_nakayoku_index #content_head #pate_title {
    padding-left: 0;
    margin: var(--spacing-xs) auto 0;
    width: 100%;
    max-width: 672px;
}

.pg_nakayoku_index .mv_field {
    width: 100%;
    /* max-width: 1920px; */
    overflow: hidden;
    margin: 0 auto;
    padding: 0 10px;
}

.pg_nakayoku_index .nakayoku_anime_ctrl_wrap {
    position: relative;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px;
}

.pg_nakayoku_index .nakayoku_anime_ctrl {
    /* position: absolute;
	top: -50px;
	right: 20px; */
    position: relative;
    width: 154px;
    height: 40px;
    display: flex;
    align-items: center;
    border: 1px solid var(--logo-blue);
    border-radius: 7px;
    color: var(--logo-blue);
    background-color: #fff;
    padding: 0 15px;
    font-size: 1.4rem;
    font-weight: bold;
    cursor: pointer;
    z-index: 10;
    transition: 0.3s;
    margin: -25px 0 10px auto;
}

.nakayoku_anime_ctrl:focus-visible {
    outline: 1px solid #000;
}

@media (min-width: 769px) {
    .pg_nakayoku_index .nakayoku_anime_ctrl {
        transition: 0.3s opacity;
        cursor: pointer;
    }

    .pg_nakayoku_index .nakayoku_anime_ctrl:hover {
        opacity: 0.6;
    }
}

@media only screen and (max-width: 768px) {
    .pg_nakayoku_index .nakayoku_anime_ctrl {
        width: 40px;
        margin: -12px 0 3px auto;
    }
}

.nakayoku_anime_ctrl_text::before,
.nakayoku_anime_ctrl_text::after {
    content: '';
    display: block;
    width: 3px;
    height: 12px;
    background-color: var(--logo-blue);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}

.nakayoku_anime_ctrl_text::before {
    right: 22px;
}

.nakayoku_anime_ctrl_text::after {
    right: 15px;
}

.s_stop .nakayoku_anime_ctrl_text::before {
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 13px solid var(--logo-blue);
    background: none;
    right: 12px;
}

.s_stop .nakayoku_anime_ctrl_text::after {
    display: none;
}

.nakayoku_anime_ctrl_check,
.nakayoku_anime_ctrl_check:after {
    display: none !important;
}

.pg_nakayoku_index .mv_field .mv_field_main {
    position: absolute;
    top: 0;
    left: 50%;
    width: 4037px;
    margin-left: calc(-4037px / 2);
}

@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

.pg_nakayoku_index .slider {
    display: flex;
}

.pg_nakayoku_index .slider>img {
    animation: infinity-scroll-left 100s infinite linear 0.5s both;
}

.pg_nakayoku_index .s_stop .slider>img {
    animation-play-state: paused;
}

.pg_nakayoku_index .mv_field .mv_field_inner01 {
    width: 100%;
    max-width: 1400px;
    border-radius: 50px;
    background: #fff url(/sustainability/nakayoku/img/ind_main_bg01.png?2405) 50% 100% no-repeat;
    background-size: 100%;
    margin: 210px auto 0;
    padding: 140px 0 140px;
}

.pg_nakayoku_index .mv_field .mv_field_box01 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: calc(100% - 30px);
    max-width: 1100px;
    margin: 0 auto;
}

.pg_nakayoku_index .mv_field .mv_field_box01 .mv_tit {
    font-size: 3.6rem;
    color: var(--logo-blue);
    line-height: 1.528;
}

.pg_nakayoku_index .mv_field .mv_field_box01>* {
    width: 39.2%;
}

.pg_nakayoku_index .mv_field .mv_field_list01 .btn_more {
    justify-content: start;
}

.pg_nakayoku_index .mv_field .mv_field_list01 .btn_more:hover::before {
    transform: rotate(90deg) translateX(8px);
}

.pg_nakayoku_index .mv_field .mv_field_list01 .btn_more .tit01 {
    display: block;
    color: #1c6bb7;
    font-size: 1.6rem;
    line-height: 1.2;
}

.pg_nakayoku_index .mv_field .mv_field_list01 .btn_more .txt01 {
    display: block;
    font-size: 1.6rem;
    line-height: 1.2;
}

.pg_nakayoku_index .mv_field .mv_field_list01 .btn_more::after {
    content: none;
}

.pg_nakayoku_index .mv_field .mv_field_list01 .btn_more::before {
    width: 32px;
    height: 32px;
    content: '';
    background: url(/img/right_arrow_circle_blue_s.png) no-repeat;
    background-size: contain;
    background-position: 0 50%;
    margin-right: 0.75em;
    transform: rotate(90deg);
    transition: 0.5s;
}

.pg_nakayoku_index .title_box_wrap {
    display: flex;
    justify-content: space-between;
}

.pg_nakayoku_index .news_wrap {
    padding: 150px 0 165px;
}

.pg_nakayoku_index .title_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.pg_nakayoku_index .title_box .title_box_tit {
    position: relative;
    margin-left: -50px;
    margin-bottom: var(--spacing-m);
    padding-left: 50px;
}

.pg_nakayoku_index .title_box .title_box_tit::after {
    content: '';
    position: absolute;
    top: 15px;
    left: 0;
    background: url(/sustainability/nakayoku/img/cm_ico01.png) 0 50% no-repeat;
    background-size: 31px;
    height: 31px;
    width: 31px;
}

.pg_nakayoku_index #main .title_box .title_box_tit>h2.tit {
    font-family: 'Montserrat', sans-serif;
    font-size: 6rem;
    font-weight: 500;
    margin-bottom: 0;
    line-height: 1;
}

.pg_nakayoku_index #main .title_box .title_box_tit>.copy {
    font-size: var(--font-size-m);
    color: var(--logo-blue);
    line-height: 1;
    margin-top: var(--spacing-xs);
}

.pg_nakayoku_index .title_box .title_box_link {
    margin-bottom: var(--spacing-s);
}

.pg_nakayoku_index .news_wrap .index_column.thumb>*>a,
.pg_nakayoku_index .action_wrap .index_column.thumb a {
    border-radius: 15px;
}

.pg_nakayoku_index .news_wrap .index_column.thumb>*>a {
    box-shadow: none;
    /*
	border-radius: 15px 15px 0 0;
	*/
    display: block;
    padding: initial;
    background: none;

    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
}

.pg_nakayoku_index .news_wrap .index_column.thumb>*>a::after {
    content: '';
    box-shadow: none;
    display: block;
    height: calc(100% - 40%);
}

.pg_nakayoku_index .news_wrap .index_column.thumb>* {
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.12);
    border-radius: 15px;
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    justify-content: flex-start;
    position: relative;
    background-color: #fff;
    padding-top: 60%;
    height: 100%;
}

.pg_nakayoku_index .news_wrap .index_column.thumb>* .inner {
    padding: 20px 24px 30px;
}

.pg_nakayoku_index .index_column_wrap.typeD .thumb_box_main {
    padding: 20px 24px 30px;
}

.pg_nakayoku_index .action_wrap .index_column.thumb a>ul>li,
.pg_nakayoku_index .stories_wrap .index_column.thumb a>ul>li,
.pg_nakayoku_interview .connection_wrap .connection_column ul>li {
    position: relative;
}

.pg_nakayoku_index .action_wrap .index_column.thumb a>ul::after,
.pg_nakayoku_index .stories_wrap .index_column.thumb a>ul::after,
.pg_nakayoku_interview .connection_wrap .connection_column ul::after {
    content: '';
    position: absolute;
    right: 30px;
    width: 34px;
    height: 6px;
    background: url(/img/arrow_line.png) center right no-repeat;
    background-size: 100% auto;
    transform: translateX(0px);
    transition: 0.5s;
}

.pg_nakayoku_index .action_wrap .index_column.thumb a:hover>ul::after,
.pg_nakayoku_index .stories_wrap .index_column.thumb a:hover>ul::after,
.pg_nakayoku_interview .connection_wrap .connection_column a:hover>ul::after {
    transform: translateX(5px);
}

.pg_nakayoku_index .action_wrap .index_column.thumb .text,
.pg_nakayoku_index .stories_wrap .index_column.thumb .text,
.pg_nakayoku_interview .connection_wrap .connection_column .text {
    font-size: var(--font-size-xl);
    color: var(--b-black);
}

.pg_nakayoku_index .action_wrap .index_column.thumb .text_name,
.pg_nakayoku_index .stories_wrap .index_column.thumb .text_name,
.pg_nakayoku_interview .connection_wrap .connection_column .text_name {
    margin-top: 5px;
    font-size: var(--font-size-s);
    color: var(--b-black);
}

.pg_nakayoku_index .action_wrap .index_column.thumb .text_name>span,
.pg_nakayoku_index .stories_wrap .index_column.thumb .text_name>span,
.pg_nakayoku_interview .connection_wrap .connection_column .text_name>span {
    display: inline-block;
    color: var(--b-black);
}

.pg_nakayoku_index .news_wrap .index_column.thumb .inner>ul>*,
.pg_nakayoku_index .action_wrap .index_column.thumb a>ul>* {
    margin-top: var(--spacing-xxs);
}

.pg_nakayoku_index .news_wrap .index_column.thumb .inner>ul>*:first-child,
.pg_nakayoku_index .action_wrap .index_column.thumb a>ul>*:first-child {
    margin-top: 0;
}

.pg_nakayoku_index .news_wrap .thumb_box {
    border-radius: 15px 15px 0 0;
}

.pg_nakayoku_index .news_wrap .thumb_box_date {
    color: var(--d-gray);
    font-size: 1.2rem;
}

.pg_nakayoku_index .news_wrap .thumb_box_date::before {
    content: none;
}

.pg_nakayoku_index .news_wrap .thumb_box_main {
    margin-top: var(--spacing-xxs);
}

.pg_nakayoku_index .news_wrap .thumb_box_main * {
    color: var(--b-black);
}

.pg_nakayoku_index .news_wrap .thumb_box_main_list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: var(--spacing-xxs);
}

.pg_nakayoku_index .news_wrap .thumb_box_txt {
    font-size: var(--font-size-l);
}

.pg_nakayoku_index .news_wrap .thumb_box_main_list>* {
    margin-right: 10px;
}

.pg_nakayoku_index .news_wrap .thumb_box_main_list>*>a {
    display: block;
    box-shadow: none;
    padding: 5px 10px;
    border-radius: 5em;
    border: 1px solid var(--m-gray);
    font-size: 1.1rem;
    z-index: 1;
    cursor: pointer;
    transition: 0.5s;
}

.pg_nakayoku_index .news_wrap .thumb_box_main_list>*>a.color01:hover {
    background-color: #ffe9ec;
}

.pg_nakayoku_index .news_wrap .thumb_box_main_list>*>a.color02:hover {
    background-color: #ebf9f1;
}

.pg_nakayoku_index .news_wrap .thumb_box_main_list>*>a.color03:hover {
    background-color: #f3effa;
}

.pg_nakayoku_index .news_wrap .thumb_box_main_list>*>a.color04:hover {
    background-color: #fff3eb;
}

.pg_nakayoku_index .news_wrap .thumb_box_main_list>*>a.color05:hover {
    background-color: #ecf7fa;
}

.pg_nakayoku_index .news_wrap .thumb_box_main_list>*>a.color06:hover {
    background-color: #f5f6f8;
}

.pg_nakayoku_index .news_wrap .list_hd {
    padding-right: 0.5em;
    font-size: 1rem;
}

.pg_nakayoku_index .action_wrap .list_hd {
    margin-bottom: var(--spacing-xxs);
    padding-left: 1em;
    text-indent: -1em;
    font-size: var(--font-size-xxl);
    line-height: 1.3;
}

.pg_nakayoku_index .action_wrap .list_hd.typeB {
    padding-left: 0;
    text-indent: -0.6em;
}

.pg_nakayoku_index .action_wrap .list_txt {
    font-size: var(--font-size-m);
}

.pg_nakayoku_index .action_wrap .index_column.thumb .thumb_box {
    border-radius: 15px;
    display: block;
}

.pg_nakayoku_index .section02 .index_column.thumb .thumb_box {
    border-radius: 15px 15px 0 0;
    display: block;
}

.pg_nakayoku_index .list_hd::before {
    content: '●';
    padding-right: 0.5em;
    font-size: 1rem;
    vertical-align: middle;
}

.pg_nakayoku_index .list_hd.color01::before {
    color: var(--hd-red);
}

.pg_nakayoku_index .list_hd.color02::before {
    color: var(--hd-green);
}

.pg_nakayoku_index .list_hd.color03::before {
    color: var(--hd-perple);
}

.pg_nakayoku_index .list_hd.color04::before {
    color: var(--hd-orange);
}

.pg_nakayoku_index .list_hd.color05::before {
    color: var(--hd-blue);
}

.pg_nakayoku_index .list_hd.color06::before {
    color: var(--hd-glay);
}

.pg_nakayoku_index .news_wrap .thumb_box_tag_list {
    display: flex;
    flex-wrap: wrap;
}

.pg_nakayoku_index .news_wrap .thumb_box_tag_list>* {
    margin-right: 1em;
}

.pg_nakayoku_index .news_wrap .thumb_box_tag_list>*>a {
    display: block;
    border-radius: initial;
    height: auto;
    background: none;
    box-shadow: none;
    font-size: 1.2rem;
    color: var(--logo-blue);
}

.pg_nakayoku_index .news_wrap .thumb_box_tag_list>*>a:hover {
    text-decoration: underline;
}

.pg_nakayoku_index .action_wrap {
    padding: 100px 0 125px;
    background: linear-gradient(90deg, #ddeeeb, #c9e2e2);
    border-radius: 40px;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
}

.pg_nakayoku_index .action_wrap .section01 {
    background: url(/sustainability/nakayoku/img/ind_bg01.png) calc(50% + 205px) 0 no-repeat;
    background-size: 1021px;
    padding-top: 50px;
}

.pg_nakayoku_index .action_wrap .section02 {
    background: url(/sustainability/nakayoku/img/ind_bg02.png) calc(50% - 50px) 0 no-repeat;
    background-size: 1920px;
    margin-top: -20px;
    padding-top: 360px;
}

.pg_nakayoku_index .data_wrap {
    background: url(/sustainability/nakayoku/img/ind_bg03.png) 50% 0 no-repeat;
    background-size: 1500px;
    margin: 0 auto;
    padding: 130px 0 20px;
}

.pg_nakayoku_index .data_wrap .pg_list.cap02 {
    margin-top: var(--spacing-l);
}

.pg_nakayoku_index .contact_wrap {
    background: linear-gradient(#1a6bba, #00cce4);
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 15px;
}

.pg_nakayoku_index .contact_wrap>* {
    border-radius: 10px;
    padding: 80px 0 70px;
    border: 1px dashed #fff;
}

.pg_nakayoku_index .contact_wrap .contact_tit {
    width: 100%;
    margin: 0 auto var(--spacing-s);
    color: var(--white) !important;
    font-size: 6rem !important;
    font-family: 'montserrat', sans-serif !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    text-align: center;
}

.pg_nakayoku_index .contact_wrap .contac_btn,
.pg_nakayoku_interview .connection_wrap .connection_btn {
    width: 100%;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
}

.pg_nakayoku_interview .connection_wrap .connection_btn {
    margin-top: 50px;
}

.pg_nakayoku_index .contact_wrap .contac_btn a,
.pg_nakayoku_interview .connection_wrap .connection_btn a {
    position: relative;
    display: block;
    padding: 19px 20px 21px 30px;
    border: 1px solid #1c63b7;
    border-radius: 8px;
    background: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    color: #1c63b7;
    text-decoration: none;
}

.pg_nakayoku_index .contact_wrap .contac_btn a::after {
    content: '';
    position: absolute;
    top: calc(50% - 8px);
    right: 20px;
    width: 24px;
    height: 17px;
    background: url(/sustainability/img/ico_contact.png) 50% 50% no-repeat;
    background-size: 100% auto;
    transform: translateX(0px);
    transition: 0.5s;
}

.pg_nakayoku_index .contact_wrap .contac_btn a:hover::after {
    transform: translateX(5px);
}

.pg_nakayoku_index .movie_wrap {
    padding-bottom: 100px;
}

.pg_nakayoku_index .movie_wrap .index_column_wrap.typeD .thumb_box_main {
    display: block;
    width: 100%;
    padding: 25px 25px 40px;
    position: relative;
}

.pg_nakayoku_index .movie_wrap .index_column_wrap.typeD .thumb_box_main.s_blank::before {
    content: '';
    display: block;
    position: absolute;
    width: 15px;
    height: 12px;
    right: 20px;
    bottom: 20px;
    background: url('/img/icon_blank.svg') center right no-repeat;
    transition: 0.5s right;
}

.pg_nakayoku_index .movie_wrap .index_column_wrap.typeD a:hover .thumb_box_main.s_blank::before {
    right: 15px;
}

.pg_nakayoku_index .movie_wrap .index_column {
    margin-bottom: 45px;
}

.pg_nakayoku_index .movie_wrap .index_column a .text {
    color: var(--b-black);
    font-weight: bold;
    font-size: 2rem;
    line-height: 1.4;
}

.pg_nakayoku_index .voice_wrap {
    background-color: #fff;
    border-radius: 50px 50px 0 0;
    margin: 80px auto 0;
    padding: 70px 0 70px;
    max-width: 1880px;
    width: calc(100% - 40px);
}

.pg_nakayoku_index #main .title01 {
    text-align: center;
    font-size: 3rem;
}

.pg_nakayoku_index .box01 {
    background-color: #f3f4f2;
    border-radius: 10px;
    position: relative;
    padding: 60px;
}

.pg_nakayoku_index .box01_title {
    font-size: 2.8rem;
    font-weight: bold;
    color: var(--logo-blue);
    line-height: 1.3;
    width: 37%;
}

.pg_nakayoku_index .box01_text {
    line-height: 1.375;
    margin-top: 15px;
    width: 37%;
}

.pg_nakayoku_index .box01_btnWrap {
    margin-top: 20px;
    width: 37%;
}

.pg_nakayoku_index .box01_imgWrap {
    position: absolute;
    top: 3px;
    bottom: 0;
    right: 25px;
    margin: auto;
    width: 54.81%;
    display: flex;
    align-items: center;
}

.pg_nakayoku_index .box01_btn {
    font-size: 1.6rem;
    letter-spacing: -0.06em;
}

.pg_nakayoku_index .pg_mt {
    margin-top: 28px;
}

@media only screen and (max-width: 768px) {
    .pg_nakayoku_index .box01 {
        border-radius: 8px;
        padding: 25px 16px;
    }

    .pg_nakayoku_index .box01_title {
        font-size: calc(23 / 375 * 100vw);
        width: 100%;
    }

    .pg_nakayoku_index .box01_text {
        font-size: calc(16 / 375 * 100vw);
        width: 100%;
        margin-top: 10px;
    }

    .pg_nakayoku_index .box01_imgWrap {
        position: static;
        width: 100%;
        margin-top: 15px;
    }

    .pg_nakayoku_index .box01_btnWrap {
        width: 100%;
    }

    .pg_nakayoku_index .box01_btn {
        font-size: calc(16 / 375 * 100vw);
        padding-left: 12px;
        padding-right: 40px;
    }

    .pg_nakayoku_index .box01_btn::before {
        width: 17px;
        right: 14px;
    }

    .pg_nakayoku_index .box01_btn::after {
        right: 7px;
    }

    .pg_nakayoku_index .pg_mt {
        margin-top: 24px;
    }
}

.pg_nakayoku_movies #main>.section:first-of-type {
    padding-top: 0;
}

.pg_nakayoku_movies .pager_list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.pager_list_link {
    margin: 6px;
}

.pg_nakayoku_movies .pager_list_link {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 40px;
    height: 40px;
    background-color: #fff;
    color: var(--logo-blue);
    border-radius: 50%;
    transition: 0.5s;
    font-size: 1.4rem;
    font-weight: bold;
}

.pg_nakayoku_movies a.pager_list_link:hover {
    text-decoration: none;
    background-color: var(--logo-blue);
    color: #fff;
}

.pg_nakayoku_movies .s_current .pager_list_link {
    background-color: var(--logo-blue);
    color: #fff;
}

.pg_nakayoku_interview .connection_wrap .connection_btn a {
    padding: 19px 25px 21px 55px;
}

.pg_nakayoku_interview .connection_wrap .connection_btn a::after {
    content: '';
    position: absolute;
    top: calc(50% - 3px);
    left: 15px;
    width: 34px;
    height: 6px;
    background: url(/img/arrow_line.png) center right no-repeat;
    background-size: 100% auto;
    transform: translateX(0px) rotate(180deg);
    transition: 0.5s;
}

.pg_nakayoku_interview .connection_wrap .connection_btn a:hover::after {
    transform: translateX(-5px) rotate(180deg);
}

/* nakayoku interview */
.pg_nakayoku_interview #content_head {
    height: auto;
    min-height: 300px;
}

.pg_nakayoku_interview #main>.section:first-of-type {
    padding-top: var(--spacing-l);
    padding-top: 0;
}

.pg_nakayoku_interview .stories_wrap {
    padding-bottom: 150px;
}

.pg_nakayoku_interview .introduction_wrap {
    width: 100%;
    background: linear-gradient(#c4e3e2, #e4f2ed);
}

.pg_nakayoku_interview .section01 {
    width: 100%;
    /*background: linear-gradient(#c4e3e2, #e4f2ed);*/
    background: linear-gradient(#cae8e8, #eaf7f4);
}

.pg_nakayoku_interview .introduction_wrap {
    width: 100%;
    max-width: 1440px;
    background: linear-gradient(#cae8e8, #eaf7f4);
    border-radius: 15px;
    margin: 0 auto;
}

.pg_nakayoku_interview .introduction_wrap .title_box_tit {
    margin-top: -15px;
    margin-left: -30px;
    line-height: 1;
}

.pg_nakayoku_interview .introduction_wrap .container {
    background-color: #fff;
    width: calc(100% - 100px);
    max-width: 1440px;
    margin-right: 0;
    border-radius: 0 15px 15px 0;
}

.pg_nakayoku_interview .introduction_wrap .list {
    display: flex;
    margin-top: var(--spacing-l);
}

.pg_nakayoku_interview .introduction_wrap .list .date {
    font-size: var(--font-size-s);
    margin-right: 10px;
}

.pg_nakayoku_interview .introduction_wrap .list .txtwrap {
    border: 1px solid #d6dbe1;
    font-size: var(--font-size-s);
    color: var(--white);
    line-height: 1.2;
    margin-right: 10px;
    padding: 3px 10px 5px;
}

.pg_nakayoku_interview .introduction_wrap .list .txtwrap.i01 {
    background-color: #ff2640;
}

.pg_nakayoku_interview .introduction_wrap .list .txtwrap.i02 {
    background-color: #3cc578;
}

.pg_nakayoku_interview .introduction_wrap .list .txtwrap.i03 {
    background-color: #8b60ca;
}

.pg_nakayoku_interview .introduction_wrap .list .txtwrap.i04 {
    background-color: #ff8b33;
}

.pg_nakayoku_interview .introduction_wrap .list .txtwrap.i05 {
    background-color: #40b2ca;
}

.pg_nakayoku_interview .introduction_wrap .list .txtwrap.i06 {
    background-color: #98a6b5;
}

.pg_nakayoku_interview .introduction_wrap .copy {
    margin-top: 30px;
    font-size: 4rem;
    line-height: 1.4;
}

.pg_nakayoku_interview .introduction_wrap .txt01 {
    margin-top: var(--spacing-s);
    font-size: var(--font-size-m);
}

.pg_nakayoku_interview .introduction_wrap .txt02 {
    margin-top: 2px;
    font-size: var(--font-size-xl);
}

.pg_nakayoku_interview .introduction_wrap .profile {
    border-left: 2px solid #8db1db;
    padding-left: 15px;
    font-size: var(--font-size-s);
    margin-top: var(--spacing-s);
}

.pg_nakayoku_interview .introduction_wrap .profile .tit {
    color: var(--logo-blue);
}

.pg_nakayoku_interview .introduction_wrap .profile .copy {
    margin-top: 2px;
}

.pg_nakayoku_interview .introduction_wrap .profile .cap {
    margin-top: 2px;
    font-size: var(--font-size-s);
}

.pg_nakayoku_interview .introduction_wrap .main_wrap {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-left: 5.2239%;
    padding-right: 2.9851%;
    padding-bottom: 50px;
    width: 100%;
}

.pg_nakayoku_interview .introduction_wrap .main_wrap .main_tit_wrap {
    position: absolute;
    top: 20px;
    left: 2%;
    line-height: 1;
}

.pg_nakayoku_interview .introduction_wrap .main_wrap .main_tit {
    color: var(--logo-blue);
    font-family: 'Montserrat', sans-serif;
    font-size: var(--font-size-xxl);
    padding-left: 30px;
}

.pg_nakayoku_interview .introduction_wrap .main_wrap .main_tit::after {
    content: '';
    position: absolute;
    top: calc(50% - 9px);
    left: 0px;
    background: url(/sustainability/nakayoku/interview/img/cm_ico01.png) 0 50% no-repeat;
    width: 19px;
    height: 19px;
}

.pg_nakayoku_interview .introduction_wrap .main_wrap .main {
    width: 44.7154%;
}

.pg_nakayoku_interview .introduction_wrap .main_wrap .thumb {
    width: 52.1138%;
    margin-top: -45px;
}

.pg_nakayoku_interview .imgRadius {
    border-radius: 20px;
}

.pg_nakayoku_interview .section02 {
    padding-top: 70px;
    padding-bottom: 100px;
}

.pg_nakayoku_interview .section02 .copy_wrap {
    padding: 4.5455% 9.0909%;
    border-radius: 20px;
    background-color: #d9e0df;
    font-size: var(--font-size-m);
}

.pg_nakayoku_interview .section02 .container_s>.main_wrap {
    margin-top: var(--spacing-xs);
    padding: 12.2727% 9.0909% 7.2727%;
    border-radius: 20px;
    background-color: var(--white);
}

.pg_nakayoku_interview .section02 .main_clm {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.pg_nakayoku_interview .section02 *+.main_clm {
    margin-top: var(--spacing-m);
}

.pg_nakayoku_interview .section02 .main_clm>.main {
    width: 56.6667%;
}

.pg_nakayoku_interview .section02 .main_clm>.main>.tit {
    margin: 0;
    padding: 0;
    font-size: var(--font-size-xxl);
    color: var(--logo-blue);
}

.pg_nakayoku_interview .section02 .main_clm>.main>.txt {
    font-size: var(--font-size-m);
}

.pg_nakayoku_interview .section02 .main_clm>.thumb {
    width: 50.7778%;
    margin-right: -11.1111%;
}

@media only screen and (min-width: 769px) {
    .pg_nakayoku_interview .section02 .main_clm>.main.s_w70 {
        width: 70%;
    }

    .pg_nakayoku_interview .section02 .main_clm>.thumb.s_w35 {
        width: 35%;
    }
}

.pg_nakayoku_interview .section02 .main_clm.typeB>.thumb {
    margin-left: -11.1111%;
    margin-right: auto;
}

.pg_nakayoku_interview .section02 *+.main_tit {
    margin-top: var(--spacing-m);
    font-size: var(--font-size-xxl);
    color: var(--logo-blue);
}

.pg_nakayoku_interview .section02 .main_clm>.main>*+.txt,
.pg_nakayoku_interview .section02 *+.main_txt {
    margin-top: var(--spacing-xs);
}

.pg_nakayoku_interview .section02 *+.main_txt {
    font-size: var(--font-size-m);
}

.pg_nakayoku_interview .section02 .comments_wrap {
    position: relative;
    background-color: #eff2f0;
    margin-top: 8.8889%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 6.6667% 4.4444% 4.4444%;
    border-radius: 20px;
}

.pg_nakayoku_interview .section02 .comments_wrap>.tit {
    position: relative;
    padding: 10px 20px 12px 44px;
    background-color: var(--white);
    font-size: var(--font-size-l);
    line-height: 1;
    color: var(--logo-blue);
    position: absolute;
    top: -20px;
    border-radius: 5em;
}

.pg_nakayoku_interview .section02 .comments_wrap>.tit::after {
    content: '';
    position: absolute;
    top: calc(50% - 9px);
    left: 17px;
    background: url(/sustainability/nakayoku/interview/img/cm_ico02.png) 0 50% no-repeat;
    width: 19px;
    height: 19px;
}

.pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.tit {
    font-size: var(--font-size-xl);
    color: var(--logo-blue);
    width: 100%;
    margin-bottom: var(--spacing-xxs);
}

.pg_nakayoku_interview .section02 .comments_wrap .main_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.main {
    width: 75.3086%;
}

.pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.main .txt {
    font-size: var(--font-size-m);
}

.pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.thumb {
    width: 19.7531%;
}

.pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.thumb figure img {
    border-radius: 10px;
}

.pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.thumb figcaption {
    margin-top: var(--spacing-xxs);
    font-size: var(--font-size-s);
    line-height: 1.6;
}

.pg_nakayoku_interview .section03 {
    background-color: #d9e0df;
}

.pg_nakayoku_interview .connection_wrap {
    padding: 10% 0;
}

.pg_nakayoku_interview .connection_wrap .tit {
    display: flex;
    justify-content: center;
    font-size: var(--font-size-xxl);
    color: var(--logo-blue);
    text-align: center;
    line-height: 1.2;
}

.pg_nakayoku_interview .connection_wrap .tit>span>span {
    display: inline-block;
}

.pg_nakayoku_interview .connection_wrap .tit>span {
    position: relative;
    padding-left: 45px;
    padding-right: 45px;
}

.pg_nakayoku_interview .connection_wrap .tit>span:before {
    content: '';
    position: absolute;
    background: url(/sustainability/nakayoku/img/cm_ico01.png) 0 50% no-repeat;
    background-size: 31px;
    top: calc(50% - 15px);
    left: 0;
    width: 31px;
    height: 31px;
}

.pg_nakayoku_interview .connection_wrap .tit>span:after {
    content: '';
    position: absolute;
    background: url(/sustainability/nakayoku/img/cm_ico01.png) 0 50% no-repeat;
    background-size: 31px;
    top: calc(50% - 15px);
    right: 0;
    width: 31px;
    height: 31px;
}

.pg_nakayoku_interview .connection_wrap .connection_column {
    margin-top: var(--spacing-s);
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 760px;
}

.pg_nakayoku_interview .connection_wrap .connection_column a {
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.12);
    border-radius: 8px;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    height: 100%;
    position: relative;
    background-color: #fff;
}

.pg_nakayoku_interview .connection_wrap .connection_column a:hover {
    text-decoration: none;
}

.pg_nakayoku_interview .connection_wrap .connection_column .thumb_box {
    width: 44.7%;
}

.pg_nakayoku_interview .connection_wrap .connection_column .thumb_box img {
    border-radius: 8px 0 0 8px;
    display: block;
}

.pg_nakayoku_interview .connection_wrap .connection_column .thumb_box_main {
    padding: 20px 24px 20px;
    width: 55.3%;
}

.pg_nakayoku_interview .connection_wrap .connection_column .s_textLong {
    align-items: normal;
}

.pg_nakayoku_interview .connection_wrap .connection_column .s_textLong .thumb_box {
    overflow: hidden;
}

.pg_nakayoku_interview .connection_wrap .connection_column .s_textLong .thumb_box img {
    width: 112.5%;
    max-width: none;
}

/* .pg_nakayoku_interview .connection_wrap .connection_column .s_textLong .thumb_box_main {
	padding: 40px 24px 30px;
} */
@media only screen and (max-width: 768px) {
    .pg_nakayoku_interview .connection_wrap .connection_column .thumb_box img {
        border-radius: 0;
    }

    .pg_nakayoku_interview .connection_wrap .connection_column .s_textLong .thumb_box img {
        max-width: 100%;
        width: auto;
    }

    .pg_nakayoku_interview .connection_wrap .connection_column .s_textLong .thumb_box_main {
        padding: 20px 24px 30px;
    }
}

.pg_nakayoku_interview .s_lineHM {
    line-height: 1.5;
}

/* sustainability news */
.pg_news .js_ct {
    display: none;
}

.pg_news .js_ct:first-of-type {
    display: block;
}

.pg_news .news_container.news_list>li:first-child {
    border-top: 1px solid #ddd;
}

.pg_news .news_list li {
    border-bottom: 1px solid #ddd;
}

/* site map */
.pg_sitemap .sitemap_column {
    display: grid;
    grid-template-columns: 50% 50%;
}

.pg_sitemap .sitemap_column>*:first-child {
    padding-right: 3.6364%;
}

.pg_sitemap .sitemap_column>*:last-child {
    padding-left: 3.6364%;
}

.pg_sitemap .sitemap_column .inner {
    margin-left: 1em;
}

.pg_sitemap .sitemap_column .tit_S {
    margin: 6px 0 0 0 !important;
}

.pg_sitemap .sitemap_column .item03 {
    grid-row: 1 / 3;
    grid-column: 2 / 3;
}

.pg_sitemap .fontM {
    font-size: 1.6rem;
}

/* reviews */
.pg_reviews .index_column_wrap.col2.text_wide .index_column.text {
    width: 66%;
}

.pg_reviews .index_column_wrap.col2.text_wide .index_column.thumb {
    width: 33%;
}

/* message */
.pg_message {
    background-color: #aad6d5;
    background-color: rgba(170, 214, 213, 0.5);
    /* background-color: #ebf0f0; */
}

.pg_message #content_head,
.pg_message #content_head::after {
    background: none;
    min-height: 0;
}

.pg_message .mainvis {
    position: relative;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    height: 500px;
    position: relative;
}

.pg_message .mainvis_inn {
    /* width: 80.52%; */
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
    height: 500px;
    border-radius: 20px 20px 0 0;
    overflow: hidden;
}

.pg_message .mainvis_img {
    object-fit: cover;
    width: 1100px;
    height: 500px;
    object-position: 60% 0;
}

.pg_message .mainvis_textWrap {
    position: absolute;
    top: 50px;
    bottom: 50px;
    margin: auto;
    right: 0;
    border-radius: 20px;
    background-color: #fff;
    padding: 40px 170px 40px 48px;
    max-width: 616px;
}

.pg_message .mainvis_text01 {
    color: var(--logo-blue);
    font-size: 1.8rem;
    background: url(/sustainability/nakayoku/img/cm_ico01.png) 0 50% no-repeat;
    background-size: 31px;
    padding-left: 40px;
}

.pg_message .mainvis_text02 {
    color: var(--logo-blue);
    font-size: 2.8rem;
    line-height: 1.5;
    font-weight: bold;
    margin-top: 25px;
}

.pg_message .mainvis_text03 {
    font-size: 1.7rem;
    margin-top: 20px;
}

.pg_message .mainvis_text04 {
    font-size: 2.2rem;
    font-weight: bold;
}

.pg_message .contentsBody {
    background-color: #fff;
    padding: 70px 100px;
}

.pg_message .contentsText_wrap {
    /* overflow: hidden; */
}

.pg_message .contentsText_wrap+.contentsText_wrap {
    margin-top: 2em;
}

.pg_message .contentsText_wrap p {
    line-height: 2.125;
    font-size: 1.6rem;
}

.pg_message .contentsText_wrap p+p {
    margin-top: 2em;
}

.pg_message .contentsText_wrap_imgRight {
    float: right;
    width: 55.17%;
    margin-left: 40px;
    margin-bottom: 40px;
    margin-right: -100px;
}

.pg_message .contentsText_wrap_imgLeft {
    float: left;
    width: 55.17%;
    margin-right: 40px;
    margin-bottom: 40px;
    margin-left: -100px;
}

.pg_gri #main .section table th {
    padding-top: 22px;
    padding-bottom: 22px;
}

.pg_gri #main .section table thead th {
    background-color: #d2f5fa;
}

.pg_gri #main .section table tbody td.bg_01 {
    background-color: #f6fbff;
}

.pg_gri .colW01 {
    width: 20%;
}

.pg_gri .colW02 {
    width: 30%;
}

.pg_gri.pg_sustainability #main .tableType01 tbody th,
.pg_sustainability #main .tableType01 td {
    padding: var(--spacing-xs) var(--spacing-xs);
}

.pg_sustainability.pg_policy #main .sustainabilityt_box1 h2.sustainabilityt_box1_title {
    font-size: 1.6666em;
}

@media only screen and (max-width: 1400px) {
    .pg_nakayoku_index .action_wrap .section01 {
        background: url(/sustainability/nakayoku/img/ind_bg01.png) calc(0% + 350px) 0 no-repeat;
        background-size: calc(100% - 350px);
        padding-top: 2.7778%;
    }

    .pg_nakayoku_index .action_wrap .section02 {
        background: url(/sustainability/nakayoku/img/ind_bg02.png) calc(50% + 26.042%) 20px no-repeat;
        background-size: 133.3333%;
        padding-top: 25%;
    }

    .pg_nakayoku_interview .introduction_wrap .container {
        width: calc(100% - 3%);
    }

    .pg_sitemap .fontM {
        font-size: 1.14vw;
    }

    .pg_message .mainvis_textWrap {
        padding-right: 8.81vw;
    }
}

@media only screen and (max-width: 1279px) {
    .pg_message .mainvis_inn {
        width: 80.52%;
    }

    .pg_message .mainvis_textWrap {
        padding-right: calc(11.81vw - 2.1%);
    }

    .pg_message .mainvis_text01 {
        font-size: 1.40625vw;
        padding-top: 6px;
        padding-bottom: 6px;
    }

    .pg_message .mainvis_text02 {
        font-size: 2.1875vw;
    }

    .pg_message .mainvis_text03 {
        font-size: 1.328125vw;
    }

    .pg_message .mainvis_text04 {
        font-size: 1.171875vw;
    }

    .pg_message .contentsText_wrap p {
        font-size: 1.25vw;
    }

    .pg_message .contentsText_wrap .m_textS {
        font-size: 1vw;
    }
}

@media only screen and (max-width: 1080px) {
    .pg_nakayoku_index .title_box {
        justify-content: flex-end;
    }

    .pg_nakayoku_index .title_box .title_box_tit {
        width: calc(100% + 50px);
    }
}

@media only screen and (max-width: 768px) {
    .pg_sustainability .btnlink_wrap {
        flex-direction: column;
    }

    /*
	.pg_sustainability #main .tableType01 {
		font-size: 1em;
	}
	*/
    .pg_sustainability #main .section .tableType01,
    .pg_sustainability #main .section .tableType02 {
        width: auto;
    }

    .pg_sustainability .pg_list {
        flex-wrap: wrap;
    }

    .pg_sustainability .pg_list>* {
        width: 100%;
        margin-right: 0;
    }

    .pg_sustainability .index_column_wrap.col4 .index_column {
        width: 50%;
    }

    .pg_sustainability .index_column.thumb .icon_wrap .icon,
    .pg_nakayoku_interview .connection_wrap .connection_column .icon {
        font-size: var(--font-size-xs);
    }

    .pg_materiality header {
        background-color: rgba(255, 255, 255, 1);
    }

    .pg_materiality header.smaller {
        background-color: rgba(255, 255, 255, 0.9);
    }

    .pg_materiality #main {
        padding-bottom: 70px;
        /* background: url(/sustainability/materiality/img/ind_main_section_bg.png),  url(/sustainability/materiality/img/ind_main_section_bg02.png);
		background-position: 50% 100%, 50% 100%;
		background-size: 100%, 0.55vw;
		background-repeat: no-repeat, repeat-x;
		padding-bottom: 16.4667%; */
    }

    .pg_materiality #main::before {
        height: 100px;
        background-size: 100%;
    }

    .pg_materiality #content_head {
        height: auto;
        padding-bottom: 90px;
    }

    .pg_materiality #content_head::after {
        /*
		background: url(/sustainability/materiality/img/ind_main_sp.png) 50% 100% no-repeat;
		background-size: cover;
		*/
        background-size: 100%;
    }

    .pg_materiality .page_title {
        font-size: 2.6rem;
        margin-top: var(--spacing-s);
    }

    .pg_materiality .page_title>span {
        display: inline-block;
    }

    .pg_materiality .page_copy {
        margin-top: var(--spacing-s);
        line-height: 1.7333;
        padding-left: 4.1%;
        padding-right: 4.1%;
    }

    .pg_materiality .page_copy>*>span {
        display: inline-block;
    }

    .pg_materiality .page_col2 {
        display: block;
        padding: 0 4.1%;
    }

    .pg_materiality .section01,
    .pg_materiality .section03 {
        padding-top: 60px;
        padding-bottom: 80px;
    }

    .pg_materiality .sec_tit {
        font-size: var(--font-size-xl);
        margin-bottom: var(--spacing-xs);
    }

    .pg_materiality .column_wrap.col2>.column {
        width: 100%;
        font-size: var(--font-size-l);
    }

    .pg_materiality .column_wrap>.column {
        border-radius: 8px;
        margin-bottom: 6px;
        padding: 15px 15px;
    }

    .pg_materiality .column_wrap>.column>* {
        padding-left: 73px;
        background-size: 57px;
        min-height: 57px;
    }

    .pg_materiality .section01 .sec_tit.mt-xxl,
    .pg_materiality .section03 .sec_tit.mt-xxl {
        margin-top: var(--spacing-m);
    }

    .pg_materiality .contact_box dt {
        transform: none;
    }

    .pg_materiality .section02 {
        padding-top: 80px;
        padding-bottom: 50px;
    }

    .pg_materiality .box01 .box01_tit {
        border-radius: 10px 10px 0 0;
        padding: 20px 20px 20px 60px;
        font-size: 2.1rem;
        line-height: 1.4;
        text-align: left;
        position: relative;
    }

    .pg_materiality .box01 .box01_tit>.no {
        font-size: 2.1rem;
        line-height: 31px;
        width: 33px;
        height: 33px;
        margin-right: 10px;
        padding-bottom: 2px;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 15px;
        margin: auto;
    }

    .pg_materiality .box01 .box01_main {
        border-radius: 0 0 10px 10px;
        padding: 25px 15px;
    }

    .pg_materiality .box01 .box01_main>.copy {
        font-size: var(--font-size-l);
    }

    .pg_materiality .box01 .box01_main>.tit {
        font-size: var(--font-size-m);
        margin-top: var(--spacing-xxs);
    }

    .pg_materiality .box01 .box01_main>.list,
    .pg_materiality .box01 .box01_main .column_wrap01>.main>.list {
        font-size: var(--font-size-s);
        margin-top: var(--spacing-xxs);
    }

    .pg_materiality .box01_wrap.mt-s {
        margin-top: var(--spacing-xs);
    }

    .pg_materiality .box01 .column_wrap01>.main {
        order: 2;
        width: 100%;
    }

    .pg_materiality .box01 .column_wrap01>.thumb {
        order: 1;
        width: 100%;
    }

    .pg_materiality .box01 .column_wrap01>.thumb>.caption {
        font-size: var(--font-size-s);
        margin-top: var(--spacing-xxs);
    }

    .pg_materiality .contact_box_title_head {
        width: 56px;
    }

    .pg_materiality .contact_box_title_body {
        font-size: inherit;
        padding-right: 10px;
    }

    .pg_materiality .col2_text_wrap {
        margin-left: 0;
        margin-right: 0;
        display: block;
    }

    .pg_materiality .col2_text_wrap+.col2_text_wrap {
        margin-top: 20px;
    }

    .pg_materiality .col2_text_heading {
        min-height: 40px;
        padding: 5px;
        min-width: 106px;
        font-size: 1.5rem;
        display: inline-flex;
        width: auto;
        text-align: center;
    }

    .pg_materiality .col2_text_body {
        min-height: 0;
        margin-top: 10px;
        width: 100%;
    }

    .pg_materiality .col2_text_caption {
        margin-left: 0;
        margin-right: 0;
    }

    .pg_nakayoku_index .mv_field .mv_field_box01 .mv_tit {
        font-size: 2.6rem;
    }

    .pg_nakayoku_index .title_box .title_box_tit {
        margin-left: -42px;
        padding-left: 42px;
    }

    .pg_nakayoku_index .title_box .title_box_tit {
        margin-left: 0;
        margin-bottom: var(--spacing-xs);
    }

    .pg_nakayoku_index #main .title_box .title_box_tit>h2.tit {
        font-size: 2.8rem;
    }

    .pg_nakayoku_index .title_box .title_box_tit::after {
        background-size: 25px;
        top: 4px;
        height: 25px;
        width: 25px;
    }

    .pg_nakayoku_index #main .title_box .title_box_tit>.copy {
        font-size: var(--font-size-s);
        margin-top: var(--spacing-xxs);
    }

    .pg_nakayoku_index #content_head #pate_title {
        padding-left: 13.3333%;
        padding-right: 13.3333%;
    }

    .pg_nakayoku_index .mv_field {
        padding: 0 4.1%;
    }

    .pg_nakayoku_index .mv_field .mv_field_main {
        width: 520%;
        margin-left: -260%;
    }

    .pg_nakayoku_index .mv_field .mv_field_inner01 {
        margin: 30% auto 0;
        padding-top: 25%;
        padding-bottom: 20%;
        border-radius: 2em;
        background-size: 200%;
        background-position: 0 100%;
    }

    .pg_nakayoku_index .mv_field .mv_field_box01>* {
        width: 100%;
    }

    .pg_nakayoku_index .news_wrap {
        padding: 70px 0 0;
    }

    .pg_nakayoku_index .news_wrap .thumb_box,
    .pg_nakayoku_index .news_wrap .thumb_box img,
    .pg_nakayoku_index .index_column_wrap .thumb_box,
    .pg_nakayoku_index .index_column_wrap .thumb_box img {
        width: 100%;
    }

    .pg_nakayoku_index .action_wrap {
        padding: 60px 0 70px;
        border-radius: 2em;
    }

    .pg_nakayoku_index .action_wrap .section01 {
        background: url(/sustainability/nakayoku/img/ind_bg01.png) calc(0% + 180px) 0 no-repeat;
        background-size: calc(100% - 180px);
    }

    .pg_nakayoku_index .data_wrap {
        background: url(/sustainability/nakayoku/img/ind_bg03.png) 50% 0 no-repeat;
        background-size: 1000px;
    }

    .pg_sustainability .index_column_wrap.col2.typeB {}

    .pg_sustainability .index_column_wrap.col2.typeB>.index_column {
        width: 100%;
    }

    .pg_nakayoku_interview #content_head,
    .pg_nakayoku_movies #content_head {
        min-height: 160px;
    }

    .pg_nakayoku_index .action_wrap .list_txt {
        font-size: var(--font-size-s);
    }

    .pg_nakayoku_index .action_wrap .index_column.thumb .text_name {
        font-size: var(--font-size-xs);
    }

    .pg_nakayoku_index .action_wrap .list_hd {
        font-size: var(--font-size-l);
    }

    .pg_nakayoku_index .movie_wrap {
        padding-bottom: 50px;
    }

    .pg_nakayoku_index .movie_wrap .index_column {
        margin-bottom: 30px;
    }

    .pg_nakayoku_index .movie_wrap .index_column a .text {
        font-size: 1.8rem;
    }

    .pg_nakayoku_index #main .title01 {
        font-size: 1.8rem;
        text-align: left;
    }

    .pg_nakayoku_index .voice_wrap {
        margin-top: 30px;
        padding-top: 35px;
        padding-bottom: 20px;
        border-radius: 24px 24px 0 0;
        width: calc(100% - 30px);
    }

    .pg_nakayoku_interview .stories_wrap {
        padding-bottom: 100px;
    }

    .pg_nakayoku_interview .introduction_wrap .container {
        width: 100%;
    }

    .pg_nakayoku_interview .introduction_wrap .main_wrap .main {
        order: 2;
        width: 100%;
    }

    .pg_nakayoku_interview .introduction_wrap .main_wrap .thumb {
        width: 100%;
        order: 1;
        margin-top: 25px;
    }

    .pg_nakayoku_interview .introduction_wrap .main_wrap {
        padding: 35px 0 50px;
        padding-left: 0;
        padding-right: 0;
    }

    .pg_nakayoku_interview .introduction_wrap .copy {
        font-size: var(--font-size-xl);
    }

    .pg_nakayoku_interview .introduction_wrap .txt01 {
        margin-top: var(--spacing-xs);
        font-size: var(--font-size-xs);
    }

    .pg_nakayoku_interview .introduction_wrap .list {
        margin-top: var(--spacing-xs);
    }

    .pg_nakayoku_interview .introduction_wrap .list .txtwrap {
        font-size: var(--font-size-xs);
        padding: 3px 10px 5px;
    }

    .pg_nakayoku_interview .introduction_wrap .txt02 {
        font-size: var(--font-size-m);
    }

    .pg_nakayoku_interview .introduction_wrap .profile {
        font-size: var(--font-size-xs);
        margin-top: var(--spacing-xs);
    }

    .pg_nakayoku_interview .introduction_wrap .profile .cap {
        font-size: var(--font-size-xxs);
    }

    .pg_nakayoku_interview .section02 {
        padding-top: 30px;
        padding-bottom: 75px;
    }

    .pg_nakayoku_interview .section02 .copy_wrap {
        margin-left: 4.1%;
        margin-right: 4.1%;
        padding: 4.1%;
        font-size: var(--font-size-s);
    }

    .pg_nakayoku_interview .section02 .container {
        padding: 0;
    }

    .pg_nakayoku_interview .section02 .container_s>.main_wrap {
        margin-top: var(--spacing-xs);
        padding: 12.2727% 4.1% 4.1%;
        border-radius: 0;
    }

    .pg_nakayoku_interview .section02 .main_clm>.main,
    .pg_nakayoku_interview .section02 .main_clm>.thumb {
        width: 100%;
    }

    .pg_nakayoku_interview .section02 .main_clm>.thumb {
        width: 100%;
        margin-top: var(--spacing-xs);
    }

    .pg_nakayoku_interview .section02 .main_clm>.main>.tit {
        font-size: var(--font-size-l);
    }

    .pg_nakayoku_interview .section02 .main_clm>.main>.txt {
        font-size: var(--font-size-s);
    }

    .pg_nakayoku_interview .section02 .main_clm>.main>*+.txt {
        margin-top: var(--spacing-xs);
    }

    .pg_nakayoku_interview .section02 *+.main_txt {
        margin-top: var(--spacing-xs);
        font-size: var(--font-size-s);
    }

    .pg_nakayoku_interview .section02 *+.main_tit {
        margin-top: var(--spacing-m);
        font-size: var(--font-size-l);
    }

    .pg_nakayoku_interview .section02 .main_clm.typeB>.main {
        margin-top: var(--spacing-m);
    }

    .pg_nakayoku_interview .section02 .main_clm.typeB>.thumb {
        margin-left: auto;
        margin-top: var(--spacing-xs);
    }

    .pg_nakayoku_interview .section02 *+.main_clm {
        margin-top: var(--spacing-xs);
    }

    .pg_nakayoku_interview .section02 .comments_wrap {
        margin-top: 26.6667%;
        padding: 13.3333% 4.1% 4.1%;
    }

    .pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.tit {
        font-size: var(--font-size-m);
        margin-bottom: var(--spacing-xxs);
    }

    .pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.main .txt {
        font-size: var(--font-size-s);
    }

    .pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.main {
        width: 100%;
    }

    .pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.thumb {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        margin-top: var(--spacing-xxs);
    }

    .pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.thumb figure {
        width: 25%;
    }

    .pg_nakayoku_interview .section02 .comments_wrap .main_wrap>.thumb figcaption {
        width: 70%;
        margin-top: 0;
        font-size: var(--font-size-xs);
    }

    .pg_nakayoku_interview .connection_wrap .tit {
        font-size: var(--font-size-m);
    }

    .pg_nakayoku_interview .connection_wrap .connection_column .thumb_box,
    .pg_nakayoku_interview .connection_wrap .connection_column .thumb_box_main {
        width: 100%;
    }

    .pg_nakayoku_index .action_wrap .index_column.thumb .text,
    .pg_nakayoku_index .stories_wrap .index_column.thumb .text,
    .pg_nakayoku_interview .connection_wrap .connection_column .text {
        font-size: var(--font-size-m);
    }

    .pg_nakayoku_index .contact_wrap>* {
        padding: 40px 0 45px;
    }

    .pg_nakayoku_index .contact_wrap .contact_tit {
        font-size: 3.2rem !important;
    }

    .pg_sustainability .tbl_wrap .inner.tbl_w1000 {
        width: 1000px;
    }

    .pg_sustainability #main .section .tbl_wrap .inner.tbl_w1000 .tableType01,
    .pg_sustainability #main .section .tbl_wrap .inner.tbl_w1000 .tableType02 {
        width: 100%;
    }

    .pg_sitemap .sitemap_column {
        display: flex;
        flex-wrap: wrap;
    }

    .pg_sitemap .sitemap_column>*:first-child {
        padding-right: 0;
    }

    .pg_sitemap .sitemap_column>*:last-child {
        padding-left: 0;
    }

    .pg_sitemap .sitemap_column .item01 {
        order: 1;
    }

    .pg_sitemap .sitemap_column .item02 {
        order: 3;
    }

    .pg_sitemap .sitemap_column .item03 {
        order: 2;
    }

    .pg_sitemap .fontM {
        font-size: 2.66vw;
    }

    .pg_materiality .section02 .box01 .box01_main .column_wrap01>.thumb .pic {
        width: 60%;
        min-width: 210px;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }

    .pg_sustainability #main .section table th,
    .pg_sustainability #main .section table td {
        font-size: inherit;
    }

    .pg_message #main .container {
        padding-left: 0;
        padding-right: 0;
    }

    .pg_message .mainvis {
        height: auto;
        padding: 20px 4% 0;
        background-color: #fff;
    }

    .pg_message .mainvis_inn {
        width: 100%;
        border-radius: 0;
        height: auto;
        padding: 0;
    }

    .pg_message .mainvis_img {
        object-fit: contain;
        width: 100%;
        height: auto;
        max-width: 100%;
    }

    .pg_message .mainvis_text01 {
        font-size: 5.86vw;
        background-size: 16px;
        padding-left: 25px;
        margin-bottom: 10px;
    }

    .pg_message .mainvis_text02 {
        font-size: 6.06vw;
        margin-top: 0.5em;
    }

    .pg_message .mainvis_text03 {
        font-size: 2.94vw;
        margin-top: 1em;
    }

    .pg_message .mainvis_text04 {
        font-size: 4.27vw;
    }

    .pg_message .mainvis_textWrap {
        position: static;
        border-radius: 0;
        padding: 0;
    }

    .pg_message .contentsBody {
        padding: 3em 4%;
    }

    .pg_message .contentsText_wrap p {
        font-size: 3.734vw;
    }

    .pg_message .contentsText_wrap .m_textS {
        font-size: calc(12 / 375 * 100vw);
    }

    .pg_message .contentsText_wrap_imgRight,
    .pg_message .contentsText_wrap_imgLeft {
        float: none;
        width: 100%;
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 2em;
    }
}

@media only screen and (max-width: 575px) {
    .pg_sustainability .pg_w575>*:nth-child(1) {
        display: none;
    }

    .pg_sustainability .pg_w575>*:nth-child(2) {
        display: block;
    }

    .pg_sustainability .btnlink_wrap {
        /*display: block;*/
    }

    .pg_sustainability .btnlink_wrap>*+* {
        margin-top: var(--spacing-xxs);
    }

    .pg_sustainability #main .section table th {
        padding: var(--spacing-xs) var(--spacing-xxs);
    }

    .pg_sustainability #main .section table td {
        padding: var(--spacing-xxs) var(--spacing-xxs);
    }

    .pg_sustainability .index_column_wrap.col2,
    .pg_sustainability .index_column_wrap.col3 {
        margin-left: 0;
        margin-right: 0;
    }

    .pg_sustainability .index_column_wrap.col2 .index_column,
    .pg_sustainability .index_column_wrap.col3 .index_column {
        padding-left: 0;
        padding-right: 0;
    }

    .pg_sustainability .index_column_wrap.col2.typeA {
        margin-left: -16px;
        margin-right: -16px;
    }

    .pg_sustainability .index_column_wrap.col2.typeA .text {
        width: 50%;
        padding-left: 16px;
        padding-right: 16px;
        order: 2;
    }

    .pg_sustainability .index_column_wrap.col2.typeA .thumb {
        width: 50%;
        padding-left: 16px;
        padding-right: 16px;
        order: 1;
    }

    .pg_sustainability .pg_sustainabilityt_box1 {
        padding: 20px 20px 40px 20px;
    }

    .pg_sustainability #main .pg_sustainabilityt_box1 h2 {
        font-size: 1.5rem;
    }

    .pg_sustainability .index_column .column_copy {
        font-size: 1.1rem;
    }

    .pg_nakayoku_index .action_wrap .section01 {
        background-size: calc(calc(100% - 4.01%) - 40%);
    }

    .pg_nakayoku_index .action_wrap .list_hd {
        font-size: 1.8rem;
    }

    .pg_nakayoku_index .action_wrap .list_hd.typeB {
        padding-left: 1em;
        text-indent: -1em;
    }

    .pg_nakayoku_index .action_wrap .section02 {
        background: url(/sustainability/nakayoku/img/ind_bg02.png) 10px 0 no-repeat;
        background-size: calc(100% - 10px);
        margin-top: 30px;
    }

    .pg_nakayoku_index .data_wrap {
        background: url(/sustainability/nakayoku/img/ind_bg03.png) 50% 0 no-repeat;
        background-size: 110%;
        padding: 80px 0 60px;
    }

    .pg_reviews .index_column_wrap.col2.text_wide .index_column.text {
        width: 100%;
    }

    .pg_reviews .index_column_wrap.col2.text_wide .index_column.thumb {
        width: 70%;
        margin-left: auto;
        margin-right: auto;
    }

    .pg_sustainability .index_column_wrap.typeD .index_column.s_empty {
        display: none;
    }
}

.captionText01 {
    font-size: 0.777778em;
    color: var(--d-gray);
    font-weight: 600;
}

@media only screen and (max-width: 768px) {
    .captionText01 {
        font-size: 0.85em;
        color: var(--d-gray);
    }
}

.pg_sanriotime {
    background-color: #fff;
}

.pg_sanriotime #content_head {
    min-height: 0;
    padding-bottom: 30px;
    background-color: #f4f8f8;
}

.pg_sanriotime #content_head::after {
    background: #f4f8f8;
}

.pg_sanriotime .kv {
    background-color: #f4f8f8;
    text-align: center;
}

.pg_sanriotime .kv_inner {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding: 50px 50px 100px;
}

.pg_sanriotime .kv_inner::before,
.pg_sanriotime .kv_inner::after {
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    bottom: 0;
}

.pg_sanriotime .kv_inner::before {
    width: 33.5%;
    background: url(/sustainability/sanriotime/img/ind_kv_01_pc.png) no-repeat left bottom;
    background-size: 100%;
    left: 0;
}

.pg_sanriotime .kv_inner::after {
    width: 31.8%;
    right: 0;
    background: url(/sustainability/sanriotime/img/ind_kv_02_pc.png) no-repeat left bottom;
    background-size: 100%;
    right: 0;
}

.pg_sanriotime .kv_title {
    color: var(--logo-blue);
    font-weight: bold;
    line-height: 1.4;
}

.pg_sanriotime .kv_title_text01 {
    display: block;
    font-size: 2.3rem;
}

.pg_sanriotime .kv_title_text02 {
    display: block;
    font-size: 5rem;
}

.pg_sanriotime .kv_lead {
    font-weight: bold;
    line-height: 1.875;
    margin-top: 15px;
}

@media only screen and (max-width: 768px) {
    .pg_sanriotime .kv_inner::before {
        width: 100%;
        background: url(/sustainability/sanriotime/img/ind_kv_01_sp.png) no-repeat center bottom;
        background-size: 100%;
    }

    .pg_sanriotime .kv_inner::after {
        display: none;
    }

    .pg_sanriotime .kv_inner {
        padding: 0 10px 45%;
    }

    .pg_sanriotime .kv_title_text01 {
        font-size: calc(14 / 375 * 100vw);
    }

    .pg_sanriotime .kv_title_text02 {
        font-size: calc(26 / 375 * 100vw);
    }

    .pg_sanriotime .kv_lead {
        font-size: calc(15 / 375 * 100vw);
    }
}

.pg_sanriotime .bg01 {
    background: linear-gradient(to right, rgba(213, 240, 233, 0.7) 0%, rgba(163, 209, 210, 0.7) 100%);
    padding-bottom: 125px;
}

@media only screen and (max-width: 768px) {
    .pg_sanriotime .bg01 {
        padding-bottom: 75px;
    }
}

.pg_sanriotime .contentsW {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
}

@media only screen and (max-width: 768px) {
    .pg_sanriotime .contentsW {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.pg_sanriotime .section01 {
    padding: 40px 0;
}

.pg_sanriotime .section01_text01 {
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 2.22;
}

.pg_sanriotime .section01_imgWrap01 {
    text-align: center;
    margin-top: 35px;
}

@media only screen and (max-width: 768px) {
    .pg_sanriotime .section01 {
        padding: 40px 0 10px;
    }

    .pg_sanriotime .section01_text01 {
        font-size: calc(15 / 375 * 100vw);
        line-height: 1.73;
        text-align: left;
    }

    .pg_sanriotime .section01_imgWrap01 {
        margin-top: 20px;
        margin-left: -15px;
        margin-right: -15px;
    }
}

.pg_sanriotime .sectionBox {
    border-radius: 50px;
    background-color: #fff;
    padding-bottom: 50px;
}

.pg_sanriotime .sectionBox+.sectionBox {
    margin-top: 75px;
}

.pg_sanriotime .fontM {
    font-size: 1.5rem;
}

@media only screen and (max-width: 768px) {
    .pg_sanriotime .sectionBox {
        border-radius: 20px;
        padding-bottom: 30px;
    }

    .pg_sanriotime .sectionBox+.sectionBox {
        margin-top: 50px;
    }

    .pg_sanriotime .fontM {
        font-size: calc(13 / 375 * 100vw);
    }
}

.pg_sanriotime .sectionBox_title01 {
    color: #fff;
    text-align: center;
    font-size: 3.6rem;
    font-weight: bold;
    border-radius: 50px 50px 0 0;
    padding-top: 20px;
    padding-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 183px;
    margin-bottom: 50px;
    position: relative;
    line-height: 1.27;
}

.pg_sanriotime .section02_titleBg {
    background: linear-gradient(to right,
            rgba(79, 93, 176, 1) 0%,
            rgba(24, 124, 187, 1) 46%,
            rgba(57, 205, 187, 1) 100%);
    color: #fff;
}

.pg_sanriotime .section02_title01 {
    padding-left: 29%;
    padding-right: 29%;
}

.pg_sanriotime .section02_title01::before,
.pg_sanriotime .section02_title01::after {
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    bottom: 0;
}

.pg_sanriotime .section02_title01::before {
    width: 20%;
    background: url(/sustainability/sanriotime/img/ind_section02_title01.png) no-repeat left bottom;
    background-size: 100%;
    left: 6.85%;
}

.pg_sanriotime .section02_title01::after {
    width: 24.28%;
    background: url(/sustainability/sanriotime/img/ind_section02_title02.png) no-repeat left bottom;
    background-size: 100%;
    right: 3.78%;
}

.pg_sanriotime .sectionBox_body {
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
}

.pg_sanriotime .sectionBox_leadBox {
    display: flex;
    justify-content: center;
    font-size: 2.1rem;
    font-weight: bold;
    border: 2px solid #000;
    border-radius: 10px;
    padding: 30px 10px;
    line-height: 1.55;
}

.pg_sanriotime .sectionBox_leadBox_title {
    margin-right: 1em;
}

.pg_sanriotime .section02_leadBox {
    background-color: #eaf0f0;
    border-color: #38cdbb;
}

.pg_sanriotime .section03_leadBox {
    background-color: #f2f2f2;
    border-color: #ff5417;
}

.pg_sanriotime .color01 {
    color: var(--logo-blue);
}

.pg_sanriotime .color02 {
    color: #ff5417;
}

.pg_sanriotime .sectionBox_title02 {
    display: flex;
    justify-content: center;
    font-size: 2.4rem;
    line-height: 1.55;
    font-weight: bold;
    margin-top: 50px;
    margin-bottom: 25px;
}

.pg_sanriotime .sectionBox_col2_01 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.pg_sanriotime .sectionBox_col2_01_item {
    background-color: #eaf0f0;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 14px 10px;
    width: 46.18%;
}

.pg_sanriotime .sectionBox_col2_01_item+.sectionBox_col2_01_item {
    position: relative;
}

.pg_sanriotime .sectionBox_col2_01_item+.sectionBox_col2_01_item::before,
.pg_sanriotime .sectionBox_col2_01_item+.sectionBox_col2_01_item::after {
    content: '';
    display: block;
    width: 15.7%;
    height: 2px;
    background-color: var(--logo-blue);
    position: absolute;
    top: 0;
    bottom: 0;
    left: -16%;
    margin: auto 0;
    rotate: -45deg;
}

.pg_sanriotime .sectionBox_col2_01_item+.sectionBox_col2_01_item::after {
    rotate: 45deg;
}

.pg_sanriotime .sectionBox_col2_01_item_text01 {
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.55;
    margin-bottom: 5px;
}

.pg_sanriotime .sectionBox_col2_01_item_text02 {
    font-size: 1.6rem;
}

.pg_sanriotime .sectionBox_col2_01_item_img01 {
    width: 24.8%;
    margin-right: 6.2%;
}

.pg_sanriotime .sectionBox_col2_01_item_img02 {
    width: 34.05%;
    margin-right: 9.2%;
}

.pg_sanriotime .sectionBox_col3_01 {
    display: flex;
    margin-bottom: 25px;
    flex-wrap: wrap;
}

.pg_sanriotime .sectionBox_col3_01_item {
    width: calc(33.33% - 12px);
    margin-right: 18px;
    text-align: center;
}

.pg_sanriotime .sectionBox_col3_01_item:nth-child(3n) {
    margin-right: 0;
}

.pg_sanriotime .sectionBox_col3_01_item:nth-child(n + 4) {
    margin-top: 25px;
}

.pg_sanriotime .sectionBox_col3_01_item_title {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    padding: 10px;
    border-radius: 10px 10px 0 0;
}

.pg_sanriotime .sectionBox_col3_01_item_img {
    background-color: #eaf0f0;
    border-radius: 0 0 10px 10px;
    overflow: hidden;
}

.pg_sanriotime .sectionBox_col3_01_item_text {
    font-size: 2.1rem;
    font-weight: bold;
    margin-top: 5px;
}

@media only screen and (max-width: 768px) {
    .pg_sanriotime .sectionBox_title01 {
        font-size: calc(20 / 375 * 100vw);
        border-radius: 20px 20px 0 0;
        margin-bottom: 35px;
        padding-top: 25px;
        padding-bottom: 25px;
        min-height: 0;
        line-height: 1.33;
    }

    .pg_sanriotime .section02_title01::before {
        width: 24.34%;
        left: 2.31%;
    }

    .pg_sanriotime .section02_title01::after {
        width: 29.56%;
        right: 0;
    }

    .pg_sanriotime .sectionBox_body {
        padding-left: 15px;
        padding-right: 15px;
    }

    .pg_sanriotime .sectionBox_leadBox {
        display: block;
        text-align: center;
        padding: 15px 20px;
        font-size: calc(18 / 375 * 100vw);
    }

    .pg_sanriotime .sectionBox_leadBox_title {
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 5px;
    }

    .pg_sanriotime .sectionBox_title02 {
        font-size: calc(18 / 375 * 100vw);
        margin-top: 30px;
        margin-bottom: 10px;
    }

    .pg_sanriotime .sectionBox_col2_01 {
        display: block;
    }

    .pg_sanriotime .sectionBox_col2_01_item {
        width: 100%;
        justify-content: flex-start;
        padding: 20px 15px;
    }

    .pg_sanriotime .sectionBox_col2_01_item+.sectionBox_col2_01_item {
        margin-top: 45px;
    }

    .pg_sanriotime .sectionBox_col2_01_item+.sectionBox_col2_01_item::before,
    .pg_sanriotime .sectionBox_col2_01_item+.sectionBox_col2_01_item::after {
        left: 0;
        right: 0;
        top: -24px;
        bottom: auto;
        margin: auto;
        width: 40px;
    }

    .pg_sanriotime .sectionBox_col2_01_item_text01 {
        font-size: calc(14 / 375 * 100vw);
        line-height: 1.43;
    }

    .pg_sanriotime .sectionBox_col2_01_item_text02 {
        font-size: calc(13 / 375 * 100vw);
        line-height: 1.54;
    }

    .pg_sanriotime .sectionBox_col2_01_item_img01 {
        padding-left: 10px;
    }

    .pg_sanriotime .sectionBox_col2_01_item_img01,
    .pg_sanriotime .sectionBox_col2_01_item_img02 {
        width: 29%;
        text-align: center;
        margin-right: 16px;
    }

    .pg_sanriotime .sectionBox_col3_01 {
        display: block;
    }

    .pg_sanriotime .sectionBox_col3_01_item {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .pg_sanriotime .sectionBox_col3_01_item+.sectionBox_col3_01_item,
    .pg_sanriotime .sectionBox_col3_01_item:nth-child(n + 4) {
        margin-top: 20px;
    }

    .pg_sanriotime .sectionBox_col3_01_item_title,
    .pg_sanriotime .sectionBox_col3_01_item_text {
        font-size: calc(16 / 375 * 100vw);
    }
}

.pg_sanriotime .section03_titleBg {
    background: linear-gradient(to right,
            rgba(224, 61, 75, 1) 0%,
            rgba(249, 124, 91, 1) 31%,
            rgba(251, 157, 94, 1) 68%,
            rgba(255, 192, 100, 1) 100%);
    color: #fff;
}

.pg_sanriotime .section03_title01 {
    padding-left: 31%;
    padding-right: 31%;
}

.pg_sanriotime .section03_title01::before,
.pg_sanriotime .section03_title01::after {
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    bottom: 0;
}

.pg_sanriotime .section03_title01::before {
    width: 28.57%;
    background: url(/sustainability/sanriotime/img/ind_section03_title01.png) no-repeat left bottom;
    background-size: 100%;
    left: 4.71%;
}

.pg_sanriotime .section03_title01::after {
    width: 25%;
    background: url(/sustainability/sanriotime/img/ind_section03_title02.png) no-repeat left bottom;
    background-size: 100%;
    right: 4%;
}

@media only screen and (max-width: 768px) {
    .pg_sanriotime .section03_title01::before {
        width: 34.78%;
        left: 0.4%;
    }

    .pg_sanriotime .section03_title01::after {
        width: 30.45%;
        right: 2.89%;
    }
}

.pg_sanriotime .section03_colBox01 {
    display: flex;
}

.pg_sanriotime .sectionBox_title02+.section03_colBox01 {
    margin-top: -15px;
}

.pg_sanriotime .section03_colBox01_item {
    background-color: #f2f2f2;
    border-radius: 10px;
    margin-right: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 14px 10px;
    width: 100%;
    margin-top: 15px;
}

.pg_sanriotime .section03_colBox01_item:last-child {
    margin-right: 0;
}

.pg_sanriotime .section03_colBox01_item_text01 {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.33;
    margin-bottom: 5px;
}

.pg_sanriotime .section03_colBox01_item_text02 {
    font-size: 1.6rem;
}

.pg_sanriotime .section03_colBox01_item_img01 {
    width: 30.14%;
    margin-right: 4.5%;
}

.pg_sanriotime .section03_colBox01_item_img02 {
    width: 28.73%;
    margin-right: 4.22%;
}

.pg_sanriotime .section03_colBox01_item_img03 {
    width: 30.98%;
    margin-right: 2.81%;
}

.pg_sanriotime .section03_colBox01_item_img04 {
    width: 12.17%;
    margin-right: 11.47%;
}

.pg_sanriotime .section03_colBox01_item_img05 {
    width: 22.14%;
    margin-right: 3.32%;
}

@media only screen and (max-width: 768px) {
    .pg_sanriotime .section03_colBox01_item_text01 {
        font-size: calc(14 / 375 * 100vw);
        line-height: 1.43;
    }

    .pg_sanriotime .section03_colBox01_item_text02 {
        font-size: calc(13 / 375 * 100vw);
        line-height: 1.54;
    }

    .pg_sanriotime .section03_colBox01 {
        display: block;
    }

    .pg_sanriotime .section03_colBox01_item {
        margin-right: 0;
        justify-content: flex-start;
        padding: 14px 18px;
    }

    .pg_sanriotime .section03_colBox01_item_img01,
    .pg_sanriotime .section03_colBox01_item_img02,
    .pg_sanriotime .section03_colBox01_item_img03,
    .pg_sanriotime .section03_colBox01_item_img04,
    .pg_sanriotime .section03_colBox01_item_img05 {
        width: 27.56%;
        margin-right: 5.6%;
        text-align: center;
    }

    .pg_sanriotime .section03_colBox01_item_img04 img {
        width: 57%;
    }

    .pg_sanriotime .section03_colBox01_item_textWrap {
        width: 60%;
    }

    .pg_sanriotime .sectionBox_title02+.section03_colBox01 {
        margin-top: 0;
    }
}

.pg_abroad #content_head .title_box .title_box_tit>h2.tit {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 4rem;
    line-height: 1.4;
    color: var(--logo-blue);
    margin-top: 20px;
    margin-bottom: 30px;
}

.pg_abroad #content_head .title_box .title_box_tit>.copy {
    color: #333;
    line-height: 1.6875;
}

.pg_abroad #content_head .title_box .title_box_tit::after {
    content: '';
    position: absolute;
    top: 35px;
    left: 0;
    background: url(/sustainability/nakayoku/img/cm_ico01.png) 0 50% no-repeat;
    background-size: 31px;
    height: 31px;
    width: 31px;
}

@media only screen and (max-width: 768px) {
    .pg_abroad #content_head .title_box .title_box_tit>h2.tit {
        font-size: calc(22 / 375 * 100vw);
        margin-bottom: calc(20 / 375 * 100vw);
    }

    .pg_abroad #content_head .title_box .title_box_tit>.copy {
        font-size: calc(16 / 375 * 100vw);
    }
}

.abroadContents01Wrap {
    padding: 0 20px;
}

.abroadContents01 {
    background: linear-gradient(90deg, rgba(225, 240, 236, 1) 0%, rgba(205, 228, 227, 1) 100%);
    border-radius: 80px;
    padding: 90px 20px;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
}

.abroadContens_inn {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
}

@media only screen and (max-width: 768px) {
    .abroadContents01Wrap {
        padding: 0 15px;
    }

    .abroadContents01 {
        border-radius: 28px;
        padding: 30px 15px;
    }
}

#main .section h2.abroadTitle01 {
    color: var(--logo-blue);
    font-size: 4rem;
    font-weight: bold;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 90px;
}

#main .section h2.abroadTitle01::before,
#main .section h2.abroadTitle01::after {
    content: '';
    display: block;
    width: 100%;
    height: 4px;
    background: url(/sustainability/nakayoku/img/abr_title_bg_01.png) repeat-x left center;
}

@media only screen and (max-width: 768px) {
    #main .section h2.abroadTitle01 {
        font-size: calc(22 / 375 * 100vw);
        margin-bottom: calc(40 / 375 * 100vw);
    }
}

.abroadPt0 {
    padding-top: 0 !important;
}

.abroadKv_wrap {
    margin-bottom: 55px;
    padding-bottom: 20px;
    max-width: 1440px;
    padding: 0 20px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

@media only screen and (max-width: 1270px) {
    .abroadKv_wrap {
        overflow-x: scroll;
        position: relative;
    }

    .abroadKv_wrap::before {
        content: '';
        display: block;
        width: 139px;
        height: 139px;
        background: url(/sustainability/nakayoku/img/abr_icon_01.png) no-repeat left top;
        background-size: 100%;
        position: absolute;
        inset: 0;
        margin: auto;
        z-index: 3;
        pointer-events: none;
        transition: 0.3s opacity;
    }

    .s_scrolled.abroadKv_wrap::before {
        opacity: 0;
    }
}

.abroadKv_inn {
    width: 1200px;
    position: relative;
    margin-left: auto;
    margin-right: auto;
}

@media only screen and (max-width: 768px) {
    .abroadKv_inn {
        width: 890px;
    }
}

.abroadKv_link01 {
    display: block;
    background-color: #fff;
    border-radius: 10px;
    position: absolute;
    text-align: center;
    padding: 20px 20px 15px;
}

.abroadKv_link01:hover {
    color: inherit;
    text-decoration: none;
}

.abroadKv_text01 {
    color: var(--logo-blue);
    font-weight: bold;
    font-size: 1.4rem;
}

.abroadKv_text02 {
    font-weight: bold;
    font-size: 1.5rem;
    line-height: 1.46;
    margin-top: 10px;
}

.abroadKv_text03 {
    color: var(--logo-blue);
    font-weight: bold;
    font-size: 1.4rem;
    margin-top: 10px;
    position: relative;
}

.abroadKv_link01:hover .abroadKv_text03 {
    color: #98a6b5;
}

.abroadKv_text03::after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 32px;
    height: 32px;
    background: url(/img/right_arrow_circle_blue_s.png) no-repeat;
    background-size: contain;
    margin-left: 0.75em;
    transform: rotate(90deg);
    transition: 0.5s;
}

.abroadKv_link01:hover .abroadKv_text03::after {
    transform: rotate(90deg) translateX(8px);
}

@media only screen and (max-width: 768px) {
    .abroadKv_link01 {
        padding: 15px 10px 15px;
    }

    .abroadKv_text01,
    .abroadKv_text02,
    .abroadKv_text03 {
        font-size: 10px;
    }
}

.abroadKv_link01.s_austria {
    top: 4%;
    left: 2.3%;
}

.abroadKv_link01.s_america {
    top: 11.8%;
    right: 10.3%;
}

.abroadKv_link01.s_brazil {
    top: 39.6%;
    right: 0.6%;
}

.abroadKv_link01.s_mexico {
    top: 65.7%;
    right: 11.6%;
}

.abroadKv_link01.s_china {
    top: 13.6%;
    left: 28.1%;
}

.abroadKv_link01.s_hongkong {
    top: 41.6%;
    left: 19.7%;
}

.abroadKv_link01.s_taiwan {
    top: 49.6%;
    left: 48.7%;
}

.abroadKv_link01.s_korea {
    top: 25.1%;
    left: 47.7%;
}

.abroadKv_link01.s_singapore {
    top: 68.1%;
    left: 30%;
}

.abroadKv_link01.s_austria::before,
.abroadKv_link01.s_america::before,
.abroadKv_link01.s_brazil::before,
.abroadKv_link01.s_china::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 15px solid #fff;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin: auto;
}

.abroadKv_link01.s_brazil::before {
    left: 34%;
}

.abroadKv_link01.s_mexico::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-right: 8px solid transparent;
    border-bottom: 70px solid #fff;
    border-left: 8px solid transparent;
    position: absolute;
    bottom: 100%;
    left: 50%;
}

.abroadKv_link01.s_hongkong::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-bottom: 8px solid transparent;
    border-left: 45px solid #fff;
    border-top: 8px solid transparent;
    position: absolute;
    left: 100%;
    top: 45%;
}

.abroadKv_link01.s_taiwan::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-right: 96px solid #fff;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    position: absolute;
    right: 100%;
    top: 12%;
}

.abroadKv_link01.s_korea::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-right: 55px solid #fff;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    position: absolute;
    right: 100%;
    top: 80%;
}

.abroadKv_link01.s_singapore::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-bottom: 15px solid #fff;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    position: absolute;
    bottom: 100%;
    left: 33%;
}

@media only screen and (max-width: 768px) {
    .abroadKv_link01.s_austria {
        top: 1%;
        left: 3.4%;
    }

    .abroadKv_link01.s_america {
        top: 9.2%;
        right: 11.2%;
    }

    .abroadKv_link01.s_brazil {
        top: 36.2%;
        right: 1.2%;
    }

    .abroadKv_link01.s_mexico {
        top: 65.6%;
        right: 12.9%;
    }

    .abroadKv_link01.s_mexico::before {
        border-bottom-width: 55px;
    }

    .abroadKv_link01.s_china {
        top: 10.9%;
        left: 29.4%;
    }

    .abroadKv_link01.s_hongkong {
        top: 40.6%;
        left: 22.7%;
    }

    .abroadKv_link01.s_hongkong::before {
        border-left-width: 30px;
    }

    .abroadKv_link01.s_taiwan {
        top: 50.2%;
        left: 49.3%;
    }

    .abroadKv_link01.s_taiwan::before {
        border-right-width: 78px;
    }

    .abroadKv_link01.s_korea {
        top: 23.1%;
        left: 48.7%;
    }

    .abroadKv_link01.s_singapore {
        top: 68.1%;
        left: 30.6%;
    }
}

.abroadTitle01_text {
    padding: 0 20px;
    display: block;
    white-space: nowrap;
}

#main .section h3.abroadTitle02:not(.title_label) {
    border: none;
    padding-bottom: 0;
    font-size: 3.2rem;
    font-weight: bold;
    margin-bottom: 10px;
}

#main .section h3.abroadTitle02:not(.title_label)::before {
    display: none;
}

@media only screen and (max-width: 768px) {
    #main .section h3.abroadTitle02:not(.title_label) {
        font-size: calc(20 / 375 * 100vw);
    }
}

.pg_sustainability #main .section h4.abroadTitle03 {
    color: #333;
    font-size: 2.1rem;
    font-weight: bold;
    margin-top: 10px;
}

@media only screen and (max-width: 768px) {
    .pg_sustainability #main .section h4.abroadTitle03 {
        font-size: calc(17 / 375 * 100vw);
    }
}

.abroadSection+.abroadSection {
    margin-top: 120px;
}

@media only screen and (max-width: 768px) {
    .abroadSection+.abroadSection {
        margin-top: 80px;
    }
}

.abroadText01 {
    font-size: 1.6rem;
    line-height: 2.125;
    margin-bottom: 20px;
}

@media only screen and (max-width: 768px) {
    .abroadText01 {
        font-size: calc(16 / 375 * 100vw);
    }
}

.abroadBox01 {
    background-color: #fff;
    border-radius: 10px;
    padding: 20px 25px;
    display: block;
    border-radius: 10px;
    border: 1px solid #e0e5e2;
}

.abroadBox01+.abroadBox01 {
    margin-top: 20px;
}

@media only screen and (max-width: 768px) {
    .abroadBox01 {
        margin-top: 20px;
    }
}

.abroadBox01_title {
    font-size: 1.6rem;
    color: var(--logo-blue);
    font-weight: bold;
}

.abroadBox01_text {
    font-size: 1.6rem;
    position: relative;
    padding-left: 12px;
    font-weight: bold;
}

.abroadBox01_text::before {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    background-color: var(--logo-blue);
    border-radius: 50%;
    position: absolute;
    top: 0.7em;
    left: 0;
}

.abroadLink01 {
    position: relative;
    box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.12);
    border: none;
}

.abroadLink01:hover {
    text-decoration: none;
    color: var(--logo-blue);
}

.abroadLink01::before {
    content: '';
    display: block;
    width: 30px;
    height: 6px;
    background: url(/img/arrow_line.png) center right no-repeat;
    background-size: 100%;
    position: absolute;
    bottom: 16.9%;
    right: 25px;
    transform: translateX(0);
    transition: 0.5s transform;
}

@media only screen and (min-width: 769px) {
    .abroadLink01:hover::before {
        transform: translateX(5px);
    }
}

.abroadBox01_col2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 10px;
}

.abroadBox01_col2Img {
    width: 35%;
}

.abroadBox01_col2Text {
    font-size: 1.6rem;
    font-weight: bold;
    width: 61%;
}

@media only screen and (max-width: 768px) {
    .abroadLink01 {
        padding-bottom: 30px;
    }

    .abroadLink01::before {
        bottom: 25px;
    }

    .abroadBox01_title,
    .abroadBox01_text,
    .abroadBox01_col2Text {
        font-size: calc(15 / 375 * 100vw);
    }

    .abroadBox01_text {
        padding-left: calc(12 / 375 * 100vw);
    }

    .abroadBox01_text::before {
        top: calc(10 / 375 * 100vw);
        width: calc(8 / 375 * 100vw);
        height: calc(8 / 375 * 100vw);
    }

    .abroadBox01_col2 {
        display: block;
    }

    .abroadBox01_col2Img {
        width: 100%;
    }

    .abroadBox01_col2Text {
        width: 100%;
        margin-top: 20px;
    }
}

.abroadItem01 {
    overflow: hidden;
    position: relative;
    background-color: #fff;
    border-radius: 20px;
    padding: 65px 55px;
}

.abroadItem01+.abroadItem01 {
    margin-top: 50px;
}

.abroadTextWrap01 {
    width: 43.27%;
    float: left;
}

.abroadTextWrap02 {
    width: 43.27%;
    clear: left;
}

.abroadImgWrap {
    width: 51.63%;
    float: right;
}

.abroadItem01:nth-child(odd) .abroadTextWrap01 {
    float: right;
}

.abroadItem01:nth-child(odd) .abroadTextWrap02 {
    clear: right;
    margin-left: auto;
}

.abroadItem01:nth-child(odd) .abroadImgWrap {
    float: left;
}

@media only screen and (max-width: 768px) {
    .abroadItem01 {
        padding: 30px 25px;
    }

    .abroadItem01+.abroadItem01 {
        margin-top: 30px;
    }

    .abroadTextWrap01,
    .abroadTextWrap02,
    .abroadImgWrap,
    .abroadItem01:nth-child(odd) .abroadTextWrap01,
    .abroadItem01:nth-child(odd) .abroadImgWrap {
        float: none;
        width: 100%;
        position: static;
    }

    .abroadItem01:nth-child(odd) .abroadTextWrap02 {
        clear: both;
    }
}

.abroadImg01 {
    box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.15);
    border-radius: 10px;
    display: block;
}

.abroadImg01+.abroadImg01 {
    margin-top: 12px;
}

.abroadImg01.s_austria01 {
    max-width: 470px;
    width: 83%;
}

.abroadImg01.s_austria02 {
    max-width: 322px;
    width: 57%;
    margin-left: auto;
}

.abroadImg01.s_america01 {
    max-width: 354px;
    width: 62.3%;
}

.abroadImg01.s_america02 {
    max-width: 324px;
    width: 54%;
    margin-left: auto;
}

.abroadImgWrap.s_brazilImgCol2 {
    display: flex;
    justify-content: space-between;
}

.brazilImgCol2Item01 {
    max-width: 242px;
    width: 41.8%;
    margin-top: 15%;
}

.brazilImgCol2Item02 {
    max-width: 318px;
    width: 54%;
}

.abroadImg01.s_mexico01 {
    max-width: 430px;
    width: 74%;
}

.abroadImg01.s_mexico02 {
    max-width: 370px;
    width: 64%;
    margin-left: auto;
}

.abroadImg01.s_china01 {
    max-width: 398px;
    width: 68%;
}

.abroadImg01.s_china02 {
    max-width: 292px;
    width: 50.5%;
    margin-left: auto;
}

.abroadImg01.s_hongkong01 {
    max-width: 412px;
    width: 72.5%;
}

.abroadImg01.s_hongkong02 {
    max-width: 360px;
    width: 62.2%;
    margin-left: auto;
}

.abroadImg01.s_taiwan01 {
    width: 90%;
}

.abroadImg01.s_taiwan02 {
    width: 75%;
    margin-left: auto;
}

.abroadImg01.s_korea01 {
    width: 69%;
}

.abroadImg01.s_korea02 {
    width: 60%;
    margin-left: auto;
}

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

    .abroadImg01.s_austria01,
    .abroadImg01.s_austria02,
    .abroadImg01.s_america01,
    .abroadImg01.s_america02,
    .abroadImg01.s_mexico01,
    .abroadImg01.s_mexico02,
    .abroadImg01.s_china01,
    .abroadImg01.s_china02,
    .abroadImg01.s_hongkong01,
    .abroadImg01.s_hongkong02,
    .abroadImg01.s_taiwan01,
    .abroadImg01.s_taiwan02 {
        max-width: 100%;
        width: 100%;
    }
}

.abroadBox02 {
    background-color: #fff;
    padding: 40px 50px;
    position: relative;
    margin-top: 55px;
    border-radius: 10px;
}

#main .section h3.abroadBox02_title:not(.title_label) {
    border: none;
    padding: 0;
    position: absolute;
    top: -25px;
    left: 50px;
}

#main .section h3.abroadBox02_title:not(.title_label)::before {
    display: none;
}

.abroadBox02_titleImg {
    width: 166px;
}

@media only screen and (max-width: 768px) {
    .abroadBox02 {
        padding: 35px 20px;
    }

    #main .section h3.abroadBox02_title:not(.title_label) {
        left: 20px;
        top: -22px;
    }
}

.abroadBox02_col2 {
    display: flex;
    justify-content: space-between;
}

.abroadBox02_col2Left {
    width: 80%;
}

.abroadBox02_col2Right {
    width: 15%;
}

@media only screen and (max-width: 768px) {
    .abroadBox02_col2 {
        display: block;
    }

    .abroadBox02_col2Left {
        width: 100%;
    }

    .abroadBox02_col2Right {
        width: 100%;
        margin-top: 10px;
    }

    .abroadBox02_col2RightImg {
        width: 160px;
    }
}

.abroadBox02_lead {
    color: var(--logo-blue);
    font-size: 2.1rem;
    font-weight: bold;
}

.abroadBox02_text01 {
    font-size: 1.6rem;
    margin-top: 15px;
}

.abroadBox02_text02 {
    font-size: 1.4rem;
    margin-top: 10px;
}

.abroadBox02_text03 {
    font-size: 1.6rem;
    font-weight: bold;
}

@media only screen and (max-width: 769px) {
    .abroadBox02_lead {
        font-size: calc(16 / 375 * 100vw);
    }

    .abroadBox02_text01 {
        font-size: calc(15 / 375 * 100vw);
        margin-top: 5px;
    }

    .abroadBox02_text02 {
        font-size: calc(14 / 375 * 100vw);
    }

    .abroadBox02_text03 {
        font-size: calc(16 / 375 * 100vw);
    }
}

.pg_materiality.pg_action .page_title {
    line-height: 1.3;
    padding: 0 20px;
    text-align: center;
}

.pg_materiality.pg_action #content_head::after {
    pointer-events: none;
}

/* .ac_kvWrap {
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
} */
.pg_materiality .page_copy+.ac_kvWrap {
    margin-top: 50px;
}

.ac_kv {
    /* 	width: 62.5%;
	max-width: 900px; */

    padding: 0 10px;
}

.ac_kvItem {
    background-color: #fff;
    display: flex;
    justify-content: center;
    border-radius: 10px;
    padding: 25px;
    gap: 20px;
    margin-left: auto;
    margin-right: auto;
}

.ac_kvItem:hover {
    text-decoration: none;
}

.ac_kvItemImgWrap {
    width: 58%;
    border-radius: 10px;
    overflow: hidden;
}

.ac_kvItemImg {
    transition: 0.5s;
    margin-left: auto;
}

.ac_kvItemTextWrap {
    width: 38%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.ac_kvText01 {
    display: flex;
    align-items: center;
    gap: 10px;
}

.ac_kvText01_icon {
    width: 34px;
}

.ac_kvText01_text {
    font-size: calc(13 / 1440 * 100vw);
    font-weight: bold;
    color: var(--logo-blue);
}

.ac_kvText02 {
    font-size: calc(21 / 1440 * 100vw);
    font-weight: bold;
    color: var(--logo-blue);
    line-height: 1.61;
    margin-top: auto;
}

.ac_kvText03 {
    margin-top: auto;
    display: inline-flex;
    border: 1px solid var(--logo-blue);
    padding: 5px 70px 5px 20px;
    font-weight: bold;
    background-color: #fff;
    color: var(--logo-blue);
    border-radius: 7px;
    position: relative;
    align-items: center;
    min-height: 44px;
    font-size: calc(14 / 1440 * 100vw);
}

.ac_kvText03::before,
.ac_kvText03::after {
    content: '';
    display: block;
    position: absolute;
}

.ac_kvText03::before,
.ac_kvText03::after {
    content: '';
    display: block;
    top: 0;
    bottom: 0;
    margin: auto 0;
    position: absolute;
    transition: 0.5s transform;
}

.s_arrow .ac_kvText03::before {
    width: 25px;
    height: 1px;
    background-color: var(--logo-blue);
    right: 32px;
}

.s_arrow .ac_kvText03::after {
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid var(--logo-blue);
    right: 25px;
}

.s_blank .ac_kvText03::before {
    content: '';
    display: block;
    width: 16px;
    height: 13px;
    background: url(/img/icon_blank.svg) left top;
    background-size: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 25px;
    margin: auto;
    transition: 0.5s transform;
}

.pg_action .slick-prev,
.pg_action .slick-next {
    background: url(/img/right_arrow_circle_blue_s.png);
    width: 48px;
    height: 48px;
    display: block;
    background-size: 100%;
    z-index: 10;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    transform: translate(0);
}

.pg_action .slick-prev {
    left: 11%;
    rotate: 180deg;
}

.pg_action .slick-next {
    right: 11%;
}

.pg_action .slick-prev:before,
.pg_action .slick-next:before {
    content: '';
}

.pg_action .slick-dots {
    bottom: -70px;
}

.pg_action .slick-dots li {
    width: 12px;
    height: 12px;
    text-align: center;
}

.pg_action .slick-dots li button {
    /* background-color: red; */
    width: 12px;
    height: 12px;
    padding: 0;
    border-radius: 50%;
}

.pg_action .slick-dots li button:before {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    color: transparent;
    background-color: #fff;
    opacity: 1;
}

.pg_action .slick-dots li.slick-active button:before {
    background-color: var(--logo-blue);
}

@media screen and (min-width: 1440px),
print {
    .pg_action .slick-prev {
        left: 29.1%;
    }

    .pg_action .slick-next {
        right: 29.1%;
    }
}

.m_anime_ctrl_wrap {
    text-align: right;
    max-width: 1440px;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
}

.m_anime_ctrl {
    position: relative;
    width: 154px;
    height: 40px;
    display: flex;
    align-items: center;
    border: 1px solid var(--logo-blue);
    border-radius: 7px;
    color: var(--logo-blue);
    background-color: #fff;
    padding: 0 15px;
    font-size: 1.4rem;
    font-weight: bold;
    cursor: pointer;
    z-index: 10;
    transition: 0.3s;
    margin: -25px 0 10px auto;
}

.m_anime_ctrl:focus-visible {
    outline: 2px solid #000;
}

.m_anime_ctrl::before,
.m_anime_ctrl::after {
    content: '';
    display: block;
    width: 3px;
    height: 12px;
    background-color: var(--logo-blue);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}

.m_anime_ctrl::before {
    right: 22px;
}

.m_anime_ctrl::after {
    right: 15px;
}

.s_paused.m_anime_ctrl::before {
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 13px solid var(--logo-blue);
    background: none;
    right: 12px;
}

.s_paused.m_anime_ctrl::after {
    display: none;
}

@media screen and (min-width: 1440px),
print {
    .ac_kvText01_text {
        font-size: 13px;
    }

    .ac_kvText02 {
        font-size: 21px;
    }

    .ac_kvText03 {
        font-size: 14px;
    }
}

@media screen and (min-width: 769px),
print {
    .ac_kvItem:hover .ac_kvItemImg {
        transform: scale(1.1);
    }

    .ac_kvItem:hover .ac_kvText03::before,
    .ac_kvItem:hover .ac_kvText03::after {
        transform: translateX(7px);
    }

    .pg_materiality.pg_action #content_head {
        height: auto;
        padding-bottom: 100px;
    }
}

@media screen and (max-width: 768px) {
    .pg_materiality.pg_action #content_head {
        padding-bottom: 20px;
    }

    .m_anime_ctrl {
        width: 40px;
    }

    .pg_action .slick-prev {
        left: 5%;
    }

    .pg_action .slick-next {
        right: 5%;
    }

    .pg_action .slick-dots {
        bottom: -50px;
    }

    .pg_materiality .page_copy+.ac_kvWrap {
        margin-top: 30px;
    }

    .ac_kvItem {
        display: flex;
        flex-direction: column;
        width: 100%;
        padding: 16px;
        justify-content: flex-start;
        gap: 10px;
    }

    .ac_kvItemImgWrap {
        width: 100%;
        height: 48%;
    }

    .ac_kvItemTextWrap {
        width: 100%;
        /* margin-top: 10px; */
        /* margin-top: auto; */
        height: 62.5%;
    }

    .ac_kvText01_text {
        font-size: calc(13 / 375 * 100vw);
        /* margin-top: auto; */
    }

    .ac_kvText02 {
        font-size: calc(16 / 375 * 100vw);
        margin-top: 12px;
        margin-top: auto;
    }

    .ac_kvText03 {
        font-size: calc(14 / 375 * 100vw);
        margin-top: 12px;
        padding: 5px 55px 5px 20px;
        margin-top: auto;
        letter-spacing: -0.05em;
    }

    .s_blank .ac_kvText03 {
        padding-right: 38px;
    }

    .s_arrow .ac_kvText03::before {
        right: 20px;
    }

    .s_arrow .ac_kvText03::after {
        right: 13px;
    }

    .s_blank .ac_kvText03::before {
        right: 15px;
    }
}

.ac_section01 {
    padding: 50px 0;
}

.ac_section02 {
    background-color: #eaf0f0;
    border-radius: 50px;
    max-width: 1400px;
    margin-left: 20px;
    margin-right: 20px;
    padding: 60px 0;
}

@media screen and (min-width: 1440px),
print {
    .ac_section02 {
        margin-left: auto;
        margin-right: auto;
    }
}

@media screen and (max-width: 768px) {
    .ac_section02 {
        padding: 45px 0;
        margin-left: 0;
        margin-right: 0;
        border-radius: 20px;
    }

    .pg_materiality .ac_section02 .sec_tit {
        font-size: calc(20 / 375 * 100vw);
    }
}

.ac_section02_leadText {
    text-align: center;
    font-weight: bold;
    line-height: 2;
}

@media screen and (max-width: 768px) {
    .ac_section02_leadText {
        font-size: calc(15 / 375 * 100vw);
        text-align: left;
    }
}

.ac_btnWrap01 {
    text-align: center;
    margin-top: 30px;
}

.ac_btn01 {
    display: inline-flex;
    border: 1px solid var(--logo-blue);
    padding: 10px 100px 10px 25px;
    font-weight: bold;
    box-shadow: 8px 8px 20px 0px rgba(7, 28, 76, 0.1);
    background-color: #fff;
    color: var(--logo-blue);
    border-radius: 7px;
    position: relative;
    align-items: center;
    min-height: 60px;
}

.ac_btn01:link,
.ac_btn01:visited {
    color: var(--logo-blue);
}

.ac_btn01:hover {
    text-decoration: none;
}

.ac_btn01::before,
.ac_btn01::after {
    content: '';
    display: block;
    top: 0;
    bottom: 0;
    margin: auto 0;
    position: absolute;
    transition: 0.5s transform;
}

.ac_btn01::before {
    width: 35px;
    height: 1px;
    background-color: var(--logo-blue);
    right: 32px;
}

.ac_btn01::after {
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid var(--logo-blue);
    right: 25px;
}

@media (min-width: 769px) {

    .ac_btn01:hover::before,
    .ac_btn01:hover::after {
        transform: translateX(10px);
    }
}

@media screen and (max-width: 768px) {
    .ac_btn01 {
        font-size: calc(16 / 375 * 100vw);
    }
}

.ac_pageNav {
    margin-top: 40px;
    display: flex;
    gap: 20px;
    justify-content: center;
}

.ac_pageNav>li {
    text-align: center;
}

.ac_pageNav_link {
    display: block;
    position: relative;
    height: 100%;
    padding-bottom: 32px;
}

.ac_pageNav_text {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.4;
    color: var(--logo-blue);
    letter-spacing: -0.1em;
    margin-top: 10px;
    transition: 0.5s;
}

.ac_pageNav_text::before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background: url(/img/right_arrow_circle_blue_s.png) no-repeat left top;
    background-size: 100%;
    rotate: 90deg;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.ac_pageNav_img {
    width: 72px;
}

@media screen and (min-width: 769px),
print {
    .ac_pageNav_text::before {
        transition: 0.5s bottom;
    }

    .ac_pageNav_link:hover {
        text-decoration: none;
    }

    .ac_pageNav_link:hover .ac_pageNav_text {
        color: #0080ff;
    }

    .ac_pageNav_link:hover .ac_pageNav_text::before {
        bottom: -7px;
    }
}

@media screen and (max-width: 768px) {
    .ac_pageNav {
        display: block;
    }

    .ac_pageNav>li {
        text-align: left;
    }

    .ac_pageNav>li+li {
        margin-top: 20px;
    }

    .ac_pageNav_link {
        display: flex;
        align-items: center;
        padding: 0;
    }

    .ac_pageNav_img {
        width: calc(35 / 375 * 100vw);
        margin-right: calc(5 / 375 * 100vw);
    }

    .ac_pageNav_text {
        position: relative;
        margin-top: 0;
        display: inline-block;
        padding-right: 35px;
        font-size: calc(14 / 375 * 100vw);
        letter-spacing: 0;
    }

    .ac_pageNav_text::before {
        right: 0;
        left: auto;
    }
}

.ac_section03 {
    padding: 90px 0 110px;
    background-color: #fff;
}

.ac_section03_titleWrap {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-bottom: 20px;
}

.ac_section03_title01 {
    display: flex;
    align-items: center;
}

.ac_section03_title01_img {
    width: 72px;
    margin-right: 15px;
}

.ac_section03_title01_text {
    font-size: 24px;
    color: var(--logo-blue);
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .ac_section03_titleWrap {
        display: block;
    }

    .ac_section03_title01 {
        margin-bottom: 20px;
    }

    .ac_section03_title01_img {
        width: calc(50 / 375 * 100vw);
        margin-right: calc(10 / 375 * 100vw);
    }

    .ac_section03_title01_text {
        font-size: calc(20 / 375 * 100vw);
    }
}

.ac_section03_leadText {
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .ac_section03_leadText {
        font-size: calc(16 / 375 * 100vw);
    }
}

/* .ac_section03_btnWrap {
	margin-top: 25px;
} */
.ac_section03_title02 {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    border-radius: 10px;
    padding: 14px 12px;
    margin-top: 40px;
    margin-bottom: 20px;
}

.ac_section03_title02.s_bg01 {
    background: linear-gradient(90deg, rgba(0, 109, 177, 1) 0%, rgba(70, 176, 201, 1) 100%);
}

.ac_section03_title02.s_bg02 {
    background: linear-gradient(90deg, rgba(103, 67, 205, 1) 0%, rgba(144, 154, 222, 1) 100%);
}

.ac_section03_title02.s_bg03 {
    background: linear-gradient(90deg, rgba(0, 115, 204, 1) 0%, rgba(127, 161, 247, 1) 100%);
}

.ac_section03_title02.s_bg04 {
    background: linear-gradient(90deg, rgba(12, 151, 140, 1) 0%, rgba(76, 187, 179, 1) 100%);
}

.ac_section03_title02.s_bg05 {
    background: linear-gradient(90deg, rgba(31, 178, 194, 1) 0%, rgba(93, 204, 207, 1) 100%);
}

.ac_section03_title02.s_bg06 {
    background: linear-gradient(90deg, rgba(186, 100, 211, 1) 0%, rgba(214, 162, 229, 1) 100%);
}

@media screen and (max-width: 768px) {
    .ac_section03_title02 {
        font-size: calc(16 / 375 * 100vw);
    }
}

.ac_section03_text {
    font-size: 16px;
    line-height: 2;
}

@media screen and (max-width: 768px) {
    .ac_section03_text {
        font-size: calc(15 / 375 * 100vw);
    }
}

.ac_section03_col3 {
    display: flex;
    margin-top: 20px;
    gap: 20px 2%;
    flex-wrap: wrap;
}

.ac_section03_col3_item {
    width: 32%;
    border-radius: 10px;
    box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.12);
    /* padding: 25px 15px 90px 15px; */
    padding: 25px 15px;
    position: relative;
    display: flex;
    flex-direction: column;
}

@media screen and (max-width: 768px) {
    .ac_section03_col3 {
        flex-direction: column;
    }

    .ac_section03_col3_item {
        width: 100%;
    }

    .ac_section03_col3_item+.ac_section03_col3_item {
        margin-top: 20px;
    }
}

.ac_section03_col3_text02 {
    font-size: 14px;
    color: var(--logo-blue);
    font-weight: bold;
    border: 1px solid var(--logo-blue);
    border-radius: 10px;
    min-height: 44px;
    display: flex;
    align-items: center;
    padding: 5px 70px 5px 20px;
    position: relative;
    margin-top: auto;
}

.ac_section03_col3_text02::before,
.ac_section03_col3_text02::after {
    content: '';
    display: block;
    position: absolute;
    transition: 0.5s;
}

.s_blank .ac_section03_col3_text02::before {
    content: '';
    display: block;
    width: 16px;
    height: 13px;
    background: url(/img/icon_blank.svg) left top;
    background-size: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 25px;
    margin: auto;
    transition: 0.5s transform;
}

.s_arrow .ac_section03_col3_text02::before {
    width: 35px;
    height: 1px;
    background-color: var(--logo-blue);
    right: 32px;
}

.s_arrow .ac_section03_col3_text02::after {
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid var(--logo-blue);
    right: 25px;
}

.ac_section03_col3_item:hover {
    text-decoration: none;
}

.ac_section03_col3_imgWrap {
    border-radius: 10px;
    overflow: hidden;
    text-align: center;
}

.ac_section03_col3_img {
    transition: 0.5s;
}

.ac_tglBtnWrap {
    margin-top: 50px;
    text-align: center;
}

.ac_tglBtn {
    display: inline-flex;
    max-width: 350px;
    width: 100%;
    min-height: 80px;
    padding: 5px 70px 5px 35px;
    align-items: center;
    color: var(--logo-blue);
    font-size: 16px;
    font-weight: bold;
    border-radius: 15px;
    box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.12);
    position: relative;
}

.ac_tglBtnIcon {
    display: block;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 2px solid var(--logo-blue);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 25px;
    margin: auto;
}

.ac_tglBtnIcon::before,
.ac_tglBtnIcon::after {
    content: '';
    display: block;
    width: 14px;
    height: 2px;
    background-color: var(--logo-blue);
    position: absolute;
    transition: 0.5s;
    inset: 0;
    margin: auto;
}

.ac_tglBtnIcon::after {
    rotate: 90deg;
    opacity: 0;
}

.ac_modalItem01 {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 10;
}

.ac_modalItem01_inn {
    max-width: 640px;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 0 20px;
}

.ac_modalClose {
    width: 50px;
    height: 50px;
    position: absolute;
    top: -70px;
    right: 20px;
}

.ac_modalCloseBar {
    width: 2px;
    height: 100%;
    background-color: #fff;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.ac_modalCloseBar:nth-child(1) {
    rotate: -45deg;
}

.ac_modalCloseBar:nth-child(2) {
    rotate: 45deg;
}

.ac_movieWrap {
    position: relative;
    padding-top: 56.25%;
    z-index: 100;
    margin-left: auto;
    margin-right: auto;
}

.ac_movieWrap>iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.ac_modalLayer {
    background-color: rgba(0, 0, 0, 0.5);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.js_modalItem {
    display: none;
}

.js_tglArea.s_close .ac_tglBtnIcon::after {
    opacity: 1;
}

.js_tglArea.s_close .ac_tglBtnOpen {
    display: inline;
}

.js_tglArea .ac_tglBtnOpen {
    display: none;
}

.js_tglArea.s_close .ac_tglBtnClose {
    display: none;
}

.js_tglArea .ac_tglBtnClose {
    display: inline;
}

.js_tglContents {
    display: none;
}

@media screen and (min-width: 769px),
print {
    .m_fadeOver {
        transition: 0.5s opacity;
    }

    .m_fadeOver:hover {
        opacity: 0.6;
    }

    .ac_section03_col3_item:hover .ac_section03_col3_text02::before,
    .ac_section03_col3_item:hover .ac_section03_col3_text02::after {
        transform: translateX(7px);
    }

    .ac_section03_col3_item:hover .ac_section03_col3_img {
        transform: scale(1.1);
    }
}

.ac_section03_col3_text01 {
    font-size: 16px;
    font-weight: bold;
    color: var(--logo-blue);
    margin-top: 15px;
    margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
    .ac_section03_col3_item {
        padding-bottom: 25px;
    }

    .ac_section03_col3_text01 {
        font-size: calc(16 / 375 * 100vw);
    }

    .ac_section03_col3_text02 {
        font-size: calc(14 / 375 * 100vw);
    }

    .ac_tglBtn {
        font-size: calc(16 / 375 * 100vw);
        max-width: none;
        min-height: calc(70 / 375 * 100vw);
    }
}

.ac_section03_item+.ac_section03_item {
    margin-top: 80px;
}

.m_note {
    color: var(--d-gray);
    font-size: 0.777778em;
}

.m_note+.m_note {
    margin-top: 5px;
}

.m_noteHead {
    display: block;
    float: left;
    margin-right: 3px;
}

.m_noteBody {
    display: block;
    overflow: hidden;
}

.m_imgW40-100 {
    max-width: 40%;
}

@media screen and (max-width: 768px) {
    .m_imgW40-100 {
        max-width: 100%;
    }
}

.m_btnWrap01 {
    text-align: center;
}

.m_btn01 {
    display: inline-flex;
    border: 1px solid var(--logo-blue);
    padding: 10px 100px 10px 25px;
    font-weight: bold;
    box-shadow: 8px 8px 20px 0px rgba(7, 28, 76, 0.1);
    background-color: #fff;
    color: var(--logo-blue);
    border-radius: 7px;
    position: relative;
    align-items: center;
    min-height: 60px;
}

.m_btn01:link,
.m_btn01:visited {
    color: var(--logo-blue);
}

.m_btn01:hover {
    text-decoration: none;
}

.m_btn01::before,
.m_btn01::after {
    content: '';
    display: block;
    top: 0;
    bottom: 0;
    margin: auto 0;
    position: absolute;
    transition: 0.5s transform;
}

.m_btn01::before {
    width: 35px;
    height: 1px;
    background-color: var(--logo-blue);
    right: 32px;
}

.m_btn01::after {
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid var(--logo-blue);
    right: 25px;
}

@media (min-width: 769px) {

    .m_btn01:hover::before,
    .m_btn01:hover::after {
        transform: translateX(10px);
    }
}

@media screen and (max-width: 768px) {
    .m_btn01 {
        font-size: calc(16 / 375 * 100vw);
    }
}

.m_colorBlue {
    color: var(--logo-blue);
}

.m_textS {
    font-size: 1.4rem;
}

.m_textL {
    font-size: 2rem;
}

@media screen and (max-width: 768px) {
    .m_textS {
        font-size: calc(12 / 375 * 100vw);
    }

    .m_textL {
        font-size: calc(16 / 375 * 100vw);
    }
}

.m_circleNum01 {
    background-color: var(--logo-blue);
    color: #fff;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    width: 1.3em;
    height: 1.3em;
}

.m_bgWhite {
    background-color: #fff !important;
}

.m_bg01 {
    background-color: #eaf0f0 !important;
}

.m_iconDown01,
.m_iconUp01 {
    display: inline-block;
    position: relative;
}

.m_iconDown01::before,
.m_iconUp01::before {
    content: '';
    display: block;
    width: 18px;
    height: 17px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -20px;
    margin: auto;
}

.m_iconDown01::before {
    background: url(/sustainability/img/icon_down_01.png) no-repeat center center;
    background-size: 100%;
}

.m_iconUp01::before {
    background: url(/sustainability/img/icon_up_01.png) no-repeat center center;
    background-size: 100%;
}

.m_movieIcon01 {
    position: relative;
}

.m_movieIcon01::before {
    content: '';
    display: block;
    width: 81px;
    height: 81px;
    background: url(/sustainability/img/ico_movie_01.png) center center;
    background-size: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
    opacity: 0.9;
}

.m_maxW560 {
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
}

.m_movieWrap {
    position: relative;
    padding-top: 56.25%;
    margin-left: 0;
    margin-right: 0;
    width: 100%;
}

.m_movieWrap>iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.m_nowrap {
    white-space: nowrap;
}

.m_pl1em {
    padding-left: 1em;
}

.m_textIndent1em {
    text-indent: 1em;
}

.m_disBlock {
    display: block !important;
}

.m_lineH {
    line-height: 1 !important;
}

.m_pr1em {
    padding-right: 1em;
}

.js_tglBtn {
    cursor: pointer;
}

.js_tglBtn:focus-visible {
    outline: 2px solid #000;
}

.js_tglArea.s_close .js_tglContents {
    display: none;
}

.bdrL-none {
    position: relative;
}

.bdrL-none::before {
    content: '';
    width: 1px;
    height: 100%;
    background: #fff;
    position: absolute;
    top: 0;
    left: -1px;
}

@media (min-width: 769px) {
    .pc-w-12per {
        width: 12%;
    }
}

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;700&family=Zen+Maru+Gothic:wght@700&display=swap');

/*////////////////////////////////////////////////////
//mixin
/*/
/*中央寄せ $direction x：横方向 y：縦方向 xy：縦横方向*/
/*////////////////////////////////////////////////////
//mixin
/*/
/*中央寄せ $direction x：横方向 y：縦方向 xy：縦横方向*/
.pg_nakayoku_news #content_head {
    height: auto;
}

@media print,
screen and (min-width: 981px) {
    .pg_nakayoku_news #content_head {
        min-height: 220px;
    }
}

@media print,
screen and (max-width: 980px) {
    .pg_nakayoku_news #content_head {
        min-height: 10px;
        margin-bottom: 25px;
    }
}

.pg_nakayoku_news #main .section:first-of-type {
    padding-top: 0;
}

.pg_nakayoku_news #main .news_wrap {
    padding: 0 0 140px;
}

@media print,
screen and (min-width: 1280px) {
    .pg_nakayoku_news #main .news_wrap .container {
        max-width: 1440px;
        width: 100%;
        padding-left: 170px;
    }
}

@media print,
screen and (min-width: 1280px) {
    .pg_nakayoku_news #main .nakayoku_news_wrap {
        display: grid;
        grid-template-columns: 2fr 280px;
        gap: 48px;
    }
}

.pg_nakayoku_news #main .index_column_wrap .index_column {
    position: relative;
}

@media print,
screen and (min-width: 768px) {
    .pg_nakayoku_news #main .index_column_wrap .index_column {
        width: 50%;
    }
}

.pg_nakayoku_news #main .index_column_wrap .index_column.thumb>div {
    position: relative;
}

.pg_nakayoku_news #main .index_column_wrap .index_column.thumb .thumb_box {
    width: 100%;
    aspect-ratio: 384/224;
}

.pg_nakayoku_news #main .index_column_wrap .index_column.thumb .thumb_box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pg_nakayoku_news #main .index_column_wrap .index_column.thumb .thumb_box_date {
    font-family: 'Montserrat', sans-serif;
}

.pg_nakayoku_news #main .index_column_wrap .index_column.thumb .thumb_box_main_list li {
    margin-bottom: 5px;
}

.pg_nakayoku_news #main .index_column_wrap .index_column.thumb .thumb_box_txt {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.5;
}

.pg_nakayoku_news #main .index_column_wrap .index_column.new .inner .thumb_box_date time:after {
    content: '';
    width: 49px;
    height: 16px;
    background: url('/sustainability/nakayoku/img/icon-new.svg') no-repeat;
    display: inline-block;
    margin-left: 5px;
    vertical-align: text-bottom;
}

.pg_nakayoku_news #main .index_column_wrap .index_feed {
    width: 100%;
    margin-top: 66px;
}

.pg_nakayoku_news #main .index_column_wrap .index_feed ul {
    display: flex;
    justify-content: center;
    margin: 0 auto;
}

.pg_nakayoku_news #main .index_column_wrap .index_feed ul li {
    margin-right: 14px;
}

.pg_nakayoku_news #main .index_column_wrap .index_feed ul li:last-child {
    margin-right: 0;
}

.pg_nakayoku_news #main .index_column_wrap .index_feed ul li a {
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--white);
    color: #1c63b7;
    font-family: 'Montserrat', sans-serif;
    display: flex;
    justify-content: center;
    align-items: center;
}

.pg_nakayoku_news #main .index_column_wrap .index_feed ul li a:hover,
.pg_nakayoku_news #main .index_column_wrap .index_feed ul li a.active {
    text-decoration: none;
    background-color: #1c63b7;
    color: var(--white);
}

.annontation {
    font-weight: normal;
    margin-bottom: 20px;
}

@media print,
screen and (max-width: 1279px) {
    .news_menu {
        position: fixed;
        z-index: 9999;
        top: 0;
        right: -120%;
        transition: all 0.6s;
        width: 100%;
        height: 100%;
        background-color: rgba(51, 51, 51, 0.5);
        overflow: scroll;
    }

    .news_menu.open {
        right: 0;
    }
}

.news_menu>div {
    background-color: var(--white);
    padding: 40px 32px 30px;
    border-radius: 20px;
}

.news_menu>div:first-child {
    padding-bottom: 45px;
    margin-bottom: 45px;
}

@media print,
screen and (max-width: 1279px) {
    .news_menu>div {
        width: 96%;
        margin-left: auto;
        margin-right: 0;
        padding: 30px 20px 35px;
        border-radius: 20px 0 0 20px;
    }

    .news_menu>div:first-child {
        margin-top: 20px;
        margin-bottom: 5px;
    }
}

.news_menu>div h3 {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: var(--b-black);
    margin-bottom: 20px;
    line-height: 1;
}

.news_menu .news_menu_cat {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.news_menu .news_menu_cat li {
    width: 100%;
    margin-bottom: 20px;
}

@media print,
screen and (min-width: 981px) and (max-width: 1279px) {
    .news_menu .news_menu_cat li {
        width: 30%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 980px) {
    .news_menu .news_menu_cat li {
        width: 30%;
    }
}

@media only screen and (max-width: 767px) {
    .news_menu .news_menu_cat li {
        width: calc(50% - 2.5px);
    }
}

.news_menu .news_menu_cat li:last-child {
    margin-bottom: 0;
}

.news_menu .news_menu_cat li a {
    display: block;
    width: 100%;
    padding: 15px 12px 15px 36px;
    border: 1px solid #d6dbe1;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1;
    border-radius: 22px;
    position: relative;
}

@media only screen and (max-width: 767px) {
    .news_menu .news_menu_cat li a {
        font-size: 13px;
        font-size: 1.3rem;
        padding: 15px 0 15px 25px;
    }
}

.news_menu .news_menu_cat li a::before {
    content: '●';
    padding-right: 0.5em;
    font-size: 1rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 15px;
}

@media only screen and (max-width: 767px) {
    .news_menu .news_menu_cat li a::before {
        left: 10px;
    }
}

.news_menu .news_menu_cat li a.active {
    text-decoration: none;
    color: var(--white);
}

.news_menu .news_menu_cat li a.active::before {
    color: var(--white);
}

.news_menu .news_menu_cat li a.active.cat01 {
    background-color: #ff2640;
}

.news_menu .news_menu_cat li a.active.cat02 {
    background-color: #3cc578;
}

.news_menu .news_menu_cat li a.active.cat03 {
    background-color: #8b60ca;
}

.news_menu .news_menu_cat li a.active.cat04 {
    background-color: #ff8b33;
}

.news_menu .news_menu_cat li a.active.cat05 {
    background-color: #40b2ca;
}

.news_menu .news_menu_cat li a.active.cat06 {
    background-color: #98a6b5;
}

@media print,
screen and (min-width: 981px) {
    .news_menu .news_menu_cat li a:hover {
        text-decoration: none;
        color: var(--b-black);
    }

    .news_menu .news_menu_cat li a:hover.cat01 {
        background-color: #ffe9ec;
    }

    .news_menu .news_menu_cat li a:hover.cat02 {
        background-color: #ebf9f1;
    }

    .news_menu .news_menu_cat li a:hover.cat03 {
        background-color: #f3effa;
    }

    .news_menu .news_menu_cat li a:hover.cat04 {
        background-color: #fff3eb;
    }

    .news_menu .news_menu_cat li a:hover.cat05 {
        background-color: #ecf7fa;
    }

    .news_menu .news_menu_cat li a:hover.cat06 {
        background-color: #f5f6f8;
    }
}

.news_menu .news_menu_tag {
    display: flex;
    flex-wrap: wrap;
}

.news_menu .news_menu_tag li {
    margin-bottom: 15px;
    margin-right: 10px;
}

.news_menu .news_menu_tag li a {
    display: block;
    padding: 5px 15px;
    font-size: 14px;
    font-size: 1.4rem;
    color: #1c63b7;
    background-color: #f3f4f2;
    border-radius: 5em;
}

.news_menu .news_menu_tag li a:hover {
    text-decoration: none;
    background-color: #e8eff8;
}

.news_menu .news_menu_tag li a.active {
    color: var(--white);
    background-color: #1c63b7;
}

@media print,
screen and (min-width: 1280px) {
    .news_menu_btn {
        display: none;
    }
}

@media print,
screen and (max-width: 1279px) {
    .news_menu_btn {
        position: fixed;
        padding: 5px 15px 5px 40px;
        top: 90svh;
        right: 15px;
        background-color: #1c63b7;
        border: 2px solid var(--white);
        color: var(--white);
        border-radius: 20px;
        z-index: 99999;
        cursor: pointer;
        font-size: 14px;
        font-size: 1.4rem;
        background: #1c63b7 url('/sustainability/nakayoku/news/img/ico_filter.png') no-repeat 15px center;
    }

    .news_menu_btn:before {
        content: 'FILTER';
    }

    .news_menu_btn.open {
        background: #1c63b7 url('/sustainability/nakayoku/news/img/ico_close.png') no-repeat 15px center;
    }

    .news_menu_btn.open:before {
        content: 'CLOSE';
    }
}

.pg_nakayoku_news_individual {
    background-color: #f4f4f2;
}

.pg_nakayoku_news_individual #content_head {
    height: auto;
}

@media print,
screen and (min-width: 981px) {
    .pg_nakayoku_news_individual #content_head {
        min-height: 10px;
    }
}

@media print,
screen and (max-width: 980px) {
    .pg_nakayoku_news_individual #content_head {
        min-height: 10px;
        margin-bottom: 25px;
    }
}

@media print,
screen and (min-width: 981px) {
    .pg_nakayoku_news_individual #content_head #breadcrumb {
        margin-bottom: 45px;
    }
}

.pg_nakayoku_news_individual #main article {
    margin-bottom: 120px;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main article {
        margin-bottom: 80px;
    }
}

@media print,
screen and (max-width: 980px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap {
        padding: 0 15px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container {
    border-radius: 14px;
    background-color: var(--white);
    position: relative;
    border-radius: 14px;
    padding-bottom: 70px;
    padding-right: 0;
    padding-left: 0;
    background-image: url(/sustainability/nakayoku/news/img/ind_header.png);
    background-repeat: no-repeat;
    background-position: top right;
    background-size: 40% auto;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container {
        padding-bottom: 55px;
        background-size: 50% auto;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container::before {
    content: '';
    display: inline-block;
    position: absolute;
    width: 100%;
    height: 20px;
    background: linear-gradient(45deg, #1c63b7 0%, #00cee5 70%);
    border-radius: 14px 14px 0 0;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container::before {
        left: 0;
        height: 10px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .inner {
    max-width: 900px;
    width: 82%;
    margin-left: auto;
    margin-right: auto;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .inner {
        width: calc(100% - 30px);
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head {
    padding-top: 60px;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head {
        padding-top: 32px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_date {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 15px;
    color: #7b8991;
    line-height: 1;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_date {
        font-size: 11px;
        font-size: 1.1rem;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_title {
    font-size: 40px;
    font-size: 4rem;
    font-weight: bold;
    line-height: 1.25;
    margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_title {
        font-size: 16px;
        font-size: 1.6rem;
        margin-bottom: 25px;
        line-height: 1.5;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_wrap {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 45px;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_wrap {
        margin-bottom: 30px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list {
        margin-bottom: 10px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list li .list_hd {
    border-radius: 5em;
    border: 1px solid var(--m-gray);
    margin-right: 10px;
    padding: 5px 10px;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 500;
    white-space: nowrap;
    display: flex;
    align-items: center;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list li .list_hd {
        font-size: 10px;
        font-size: 1rem;
        margin-bottom: 5px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list li .list_hd:before {
    content: '●';
    padding-right: 0.5em;
    font-size: 1rem;
    vertical-align: middle;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list li .list_hd:hover {
    text-decoration: none;
    color: var(--b-black);
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list li .list_hd.color01:hover {
    background-color: #ffe9ec;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list li .list_hd.color02:hover {
    background-color: #ebf9f1;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list li .list_hd.color03:hover {
    background-color: #f3effa;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list li .list_hd.color04:hover {
    background-color: #fff3eb;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list li .list_hd.color05:hover {
    background-color: #ecf7fa;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_cat_list li .list_hd.color06:hover {
    background-color: #f5f6f8;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_tag_list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_tag_list li a {
    font-size: 14px;
    font-size: 1.4rem;
    color: #1c63b7;
    margin-right: 20px;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_tag_list li a {
        font-size: 11px;
        font-size: 1.1rem;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_head .news_individual_tag_list li:last-child {
    margin-right: 0;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_mv {
    margin-bottom: 45px;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_mv {
        margin-bottom: 30px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_mv img {
    width: 100%;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_content p {
    line-height: 2.1;
    margin-bottom: 53px;
    font-size: 16px;
    font-size: 1.6rem;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_content p {
        font-size: 14px;
        font-size: 1.4rem;
        margin-bottom: 45px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_content p:last-child {
    margin-bottom: 0;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_movie_wrap {
    margin-top: 70px;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_movie_wrap {
        margin-top: 45px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_movie_wrap .news_individual_movie_btn {
    position: relative;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_movie_wrap .news_individual_movie_btn:before {
    content: '';
    width: 56px;
    height: 56px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: url('/sustainability/nakayoku/news/img/ico_movie.png');
    background-size: cover;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_movie_wrap .news_individual_movie_btn:before {
        width: 45px;
        height: 45px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_sdgs_wrap {
    margin-top: 70px;
    padding-top: 20px;
    border-top: 1px solid #d6dbe1;
}

@media print,
screen and (min-width: 768px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_sdgs_wrap {
        display: flex;
        align-items: top;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_sdgs_wrap h3 {
    white-space: nowrap;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    color: #1c63b7;
}

@media print,
screen and (min-width: 768px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_sdgs_wrap h3 {
        margin-right: 25px;
    }
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_sdgs_wrap h3 {
        margin-bottom: 35px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_sdgs_wrap .news_individual_sdgs_type {
    display: flex;
    flex-wrap: wrap;
}

@media print,
screen and (min-width: 768px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_sdgs_wrap .news_individual_sdgs_type li {
        width: 70px;
        margin-right: 15px;
        margin-bottom: 15px;
    }
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_sdgs_wrap .news_individual_sdgs_type li {
        width: 55px;
        margin-right: 10px;
        margin-bottom: 10px;
    }
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_sdgs_wrap .news_individual_sdgs_type li:last-child {
    margin-right: 0;
}

.pg_nakayoku_news_individual #main .news_individual_wrap .container .news_individual_sdgs_wrap .news_individual_sdgs_type li img {
    width: 100%;
}

.pg_nakayoku_news_individual #main .index_column_wrap .index_column {
    position: relative;
}

.pg_nakayoku_news_individual #main .index_column_wrap .index_column .thumb_box_main_list li {
    margin-bottom: 5px;
}

.pg_nakayoku_news_individual #main .index_column_wrap .index_column.new .inner .thumb_box_date time:after {
    content: '';
    width: 49px;
    height: 16px;
    background: url('/sustainability/nakayoku/img/icon-new.svg') no-repeat;
    display: inline-block;
    margin-left: 5px;
    vertical-align: text-bottom;
}

.pg_nakayoku_news_individual #main .news_wrap {
    background-color: #eceeed;
    padding: 70px 0 85px;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_wrap {
        padding: 40px 0 120px;
    }
}

.pg_nakayoku_news_individual #main .news_wrap .container_l {
    max-width: 1220px;
    margin: 0 auto;
}

@media print,
screen and (max-width: 1279px) {
    .pg_nakayoku_news_individual #main .news_wrap .container_l {
        padding: 0 15px;
    }
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .title_box_tit {
    text-align: center;
    margin-bottom: 50px;
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .title_box_tit h2 {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #1c63b7;
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .title_box_tit h2 .sp_only {
    display: none;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_wrap .container_l .title_box_tit h2 {
        padding: 0 15px;
        font-size: 18px;
        font-size: 1.8rem;
    }

    .pg_nakayoku_news_individual #main .news_wrap .container_l .title_box_tit h2 .sp_only {
        display: block;
    }
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .title_box_tit h2::before,
.pg_nakayoku_news_individual #main .news_wrap .container_l .title_box_tit h2::after {
    content: '';
    display: block;
    background: url(/sustainability/nakayoku/img/cm_ico01.png) no-repeat;
    background-size: cover;
    height: 31px;
    width: 31px;
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .title_box_tit h2::before {
    margin-right: 25px;
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .title_box_tit h2::after {
    margin-left: 25px;
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .index_column_wrap {
    margin-bottom: 40px;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_wrap .container_l .index_column_wrap {
        padding: 0 4.1%;
        margin-bottom: 10px;
    }
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_wrap .container_l .index_column_wrap .index_column {
        margin-bottom: 40px;
    }
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .index_column_wrap .index_column.thumb .thumb_box {
    border-radius: 15px 15px 0 0;
    aspect-ratio: 382/222;
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .index_column_wrap .index_column.thumb .thumb_box img {
    object-fit: cover;
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .index_column_wrap .index_column.thumb .thumb_box_ico {
    right: 40px;
}

@media only screen and (max-width: 767px) {
    .pg_nakayoku_news_individual #main .news_wrap .container_l .index_column_wrap .index_column.thumb .thumb_box_ico {
        right: 20px;
    }
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .return_btn {
    width: 100%;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .return_btn a {
    position: relative;
    display: block;
    padding: 19px 25px 21px 55px;
    border: 1px solid #1c63b7;
    border-radius: 8px;
    background: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    color: #1c63b7;
    text-decoration: none;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.12);
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .return_btn a:before {
    content: '';
    position: absolute;
    top: calc(50% - 3px);
    left: 15px;
    width: 34px;
    height: 6px;
    background: url(/img/arrow_line.png) center right no-repeat;
    background-size: 100% auto;
    transform: translateX(0px) rotate(180deg);
    transition: 0.5s;
}

.pg_nakayoku_news_individual #main .news_wrap .container_l .return_btn a:hover:before {
    transform: translateX(-5px) rotate(180deg);
}

.pg_sustainability.pg_nakayoku_news .section:last-of-type {
    margin-bottom: 0;
}

.cat01::before {
    color: #ff2640;
}

.cat02::before {
    color: #3cc578;
}

.cat03::before {
    color: #8b60ca;
}

.cat04::before {
    color: #ff8b33;
}

.cat05::before {
    color: #40b2ca;
}

.cat06::before {
    color: #98a6b5;
}