@charset "UTF-8"; /*pc*/
:root {
    --main-bg-color: #1d5ba8;
    /*main_color_01*/
    --shade2-bg-color: #1d5ba8;
    --half-padding: 30px;
    --padding: 60px;
    --quarter-padding: 15px;
    --twice-padding: 120px;
    --quadruple-padding: 240px;
    --byafactororsix-padding: 240px;
    --def-line-height: 30px;
    --mid-line-height: 40px;
    --long-line-height: 50px;
    --window-padding: 50px;
    --vertical-window-padding: 100px;
    --font-family: "source-han-sans-japanese", sans-serif;
}

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

.pc {
    display: block;
}

.sp {
    display: none;
}

body {
    font-family: var(--font-family);
    font-weight: 400;
    font-style: normal;
    font-family: "yu-gothic-pr6n", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.pd-tb {
    padding-top: var(--vertical-window-padding);
    padding-bottom: var(--vertical-window-padding);
}

.pd-b {
    padding-bottom: var(--vertical-window-padding);
}

.mg-b {
    margin-bottom: var(--vertical-window-padding);
}

.pd-lr {
    padding-left: var(--window-padding);
    padding-right: var(--window-padding);
}

.btn-top1 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 180px;
    height: 55px;
    text-decoration: none;
    color: black;
    border: 1px solid black;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 30px;
}

.btn-top1 img {
    max-width: 20px;
}

/* body {

} */
.inner {
    max-width: 1100px;
    margin: 0 auto;
}

.inner.flex {
    display: flex;
    align-items: center;
}

.inner.entry-content {
    margin-top: var(--padding);
    margin-bottom: var(--padding);
    display: flex;
    flex-direction: column;
    padding-left: var(--window-padding);
    padding-right: var(--window-padding);
}

.hv {
    transition: 0.5s ease;
}

.hv:hover {
    opacity: 0.7;
    /* transform: scale(0.95); */
}

a.hv {
    transition: 0.5s ease;
}

a.hv:hover {
    opacity: 0.7;
}

/* header-end */
/*pc*/
@media screen and (min-width: 769px) {
    .sp_eyecatch_text {
        display: none;
    }

    .aboutus__img sp {
        display: none;
    }
}

/*sp*/
@media screen and (max-width: 769px) {
    .pc_eyecatch_text {
        display: none;
    }
}

.mv {
    height: 100vh;
    display: flex;
    text-align: center;
    vertical-align: middle;
    justify-content: center;
    align-items: center;
    background: url(../img/mv.png) no-repeat;
    background-size: cover;
    background-position: right center;
    padding: 0 50px;
}

.mv .inner {
    max-width: 1600px;
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    align-items: flex-start;
    padding: 180px 0 60px;
    text-align: left;
    line-height: 1.7;
}

.mv .mv__text {
    margin-bottom: 20px;
}

span.pc_eyecatch_text, span.sp_eyecatch_text {
    color: #000;
    font-weight: 600;
    font-style: normal;
    font-size: 48px;
    letter-spacing: 5px;
    line-height: 1.7;
}

.mv p {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.7;
}

.sp {
    display: none;
}

#page_top {
    position: fixed;
    bottom: 10px;
    right: 10px;
    display: flex;
    height: 60px;
    width: 60px;
    justify-content: center;
    align-items: center;
    z-index: 69;
    border-radius: 50%;
    background-color: var(--main-bg-color);
    border: 2px solid white;
}

#page_top a::before {
    font-weight: 900;
    content: ">";
    font-size: 20px;
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(270deg);
}

/* news-start */
.top-news {
}

.news_ttl {
    font-size: 36px;
    display: flex;
    flex-direction: column;
    font-family: "futura-pt";
}

.top-news .inner {
    max-width: 1000px;
    width: 100%;
}

.news__ttlbox {
    padding-top: 30px;
    padding-bottom: 30px;
    transition: 0.5s ease;
}

.news__ttlbox a {
    color: #000;
    transition: 0.5s ease;
}

.news__ttlbox a:hover {
    transform: scale(0.95);
    opacity: 0.8;
}

.news__ttlbox a:active {
    transform: scale(0.92);
}

.news__ttlbox .box {
    max-width: 1000px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.top-news .news__list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0 auto;
}

.top-news .news__list::after {
    content: "";
    display: block;
    width: calc(100% / 3 - 25px);
}

.top-news .news__list .news__item {
    width: 30%;
    padding-bottom: 25px;
}

.top-news .img-box {
    margin-bottom: 15px;
}

.top-news img {
    width: 80%;
    border-radius: 100%;
}

.top-news .news__list .txt-box {
    display: flex;
    flex-direction: column;
    gap: 10px;
    line-height: 1.5;
}

.top-news .news__list .txt-box {
    color: #000;
}

.top-news .news__list .txt-box .bg-green {
    color: #fff;
    background-color: #2aa789;
    padding: 2.5px 15px;
    max-width: 100px;
    font-size: 14px;
    text-align: center;
}

.top-news .news__list .txt-box .pd {
    padding: 0 15px;
}

/* news-end */
/* top-company-start */
.flex-row {
    display: flex;
}

.flex-col {
    display: flex;
    flex-direction: column;
}

.start-x {
    justify-content: flex-start;
}

.between-x {
    justify-content: space-between;
}

.even-x {
    justify-content: space-evenly;
}

.around-x {
    justify-content: space-around;
}

.end-x {
    justify-content: flex-end;
}

.start-y {
    align-items: flex-start;
}

.center-y {
    align-items: center;
}

.end-y {
    align-items: flex-end;
}

.full-w {
    width: 100%;
}

.w-h {
    width: 50%;
}

.top-company .inner {
    max-width: 100%;
    width: 100%;
}

.top-company .flex-row {
    height: 100%;
    align-items: stretch;
    justify-content: flex-start;
}

.top-company .img-box {
    order: 1;
}

.top-company .img-box img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
    /* min-height: 500px; */
    /* object-fit: contain; */
}

.top-company .txt-box {
    background-color: #1d5ba8;
    display: flex;
    align-items: center;
    color: #fff;
    padding: 50px 0;
    order: 2;
}

.top-company .txt-box .wrap {
    /* margin-left: auto; */
    max-width: 550px;
    line-height: 1.7;
    /* display: flex; */
    /* flex-direction: column; */
    gap: 10px;
}

.secttl {
    font-size: 46px;
    font-family: "futura-pt";
}

.top-company h3 {
    font-size: 24px;
}

.top-company p {
    font-size: 14px;
}

a.linkbtn {
    background-color: #2aa789;
    color: #fff;
    width: 225px;
    height: 60px;
    border-radius: 50vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top: 25px;
    transition: 0.5s ease;
}

.top-company a.linkbtn {
    background-color: #FFF;
    color: #1d5ba8;
}

.top-company a.linkbtn::before {
    background: #1d5ba8;
}

.top-recruit a.linkbtn {
    background-color: #FFF;
    color: #1d5ba8;
}

.top-recruit a.linkbtn::before {
    background: #1d5ba8;
}

a.linkbtn:hover {
    transform: scale(0.95);
    opacity: 0.8;
}

a.linkbtn:active {
    transform: scale(0.93);
}

a.linkbtn::before {
    content: "";
    width: 20px;
    height: 20px;
    border-radius: 50vw;
    background-color: #fff;
    position: absolute;
    left: 20px;
}

a.linkbtn.white.blue::before {
    background-color: #1e5ba7;
}

a.linkbtn.white.green::before {
    background-color: #2aa889;
}

a.linkbtn.white.red::before {
    background-color: #ba2652;
}

/* service-start */
.top-service .txt-box .img-box {
    display: none;
}

.top-service {
}

.top-service .ttl-wrap {
    padding: 80px 25px 50px;
}

.top-service .ttl-wrap h2 {
    max-width: 1000px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.top-service .inner {
    max-width: 100%;
}

.top-service .flex-row {
    align-items: stretch;
}

.top-service .txt-box {
    width: 60%;
}

.top-service .txt-box a {
    width: 100%;
    height: 33.333%;
    display: flex;
    align-items: center;
    color: #000;
    transition: 0.3s ease;
    border-bottom: 1px solid #9c9c9c;
}

.top-service .txt-box a.active {
    background-color: #ba2652;
    color: #fff;
}

.top-service .txt-box a:hover {
    background-color: #1d5ba8;
    color: #fff;
    border-bottom: none;
}

.top-service .txt-box a:nth-of-type(1):hover {
    border-top: none;
}

.top-service .txt-box a:nth-of-type(2):hover {
    background-color: #ba2652;
}

.top-service .txt-box a:nth-of-type(3):hover {
    /* background-color: #2aa789; */
    background-color: #2aa789bd;
}

.top-service .txt-box a:nth-of-type(1) {
    /* border-top: none; */
    border-top: 1px solid #9c9c9c;
}

.top-service .txt-box a .wrap {
    max-width: 710px;
    margin-left: auto;
    width: 100%;
    padding-left: 25px;
    padding-right: 25px;
    display: flex;
    align-items: flex-start;
    gap: 30px;
    line-height: 1.7;
    transition: 0.3s ease;
}

.top-service .txt-box .no {
    font-size: 36px;
    font-weight: bold;
    display: block;
    line-height: 1;
    transition: 0.3s ease;
    color: #1d5ba8;
}

.top-service .txt-box a:nth-of-type(2) .no {
    color: #ba2652;
}

.top-service .txt-box a:nth-of-type(3) .no {
    color: #2aa789;
}

.top-service .txt-box a:hover .no {
    color: #FFF;
}

.top-service .txt-box a:nth-of-type(2):hover .no {
    color: #FFF;
}

.top-service .txt-box a:nth-of-type(3):hover .no {
    color: #FFF;
}

.top-service .txt-box h3 {
    display: flex;
    flex-direction: column;
    font-size: 18px;
}

.top-service .txt-box a:hover h3 {
    color: #FFF;
}

.top-service .img-box {
    width: 40%;
    /* border-left: 2px solid #000; */
}

/* service-end */
/* top-sustain-start */
.pd-px {
    padding-left: 50px;
    padding-right: 50px;
}

.top-company.top-sustain {
    margin-top: 80px;
}

.top-company.top-sustain .txt-box {
    background-color: #2aa789;
    order: 1;
}

.top-company.top-sustain .txt-box .wrap {
    margin-left: auto;
}

.top-company.top-sustain .txt-box a.linkbtn {
    background-color: #fff;
    color: #2aa789;
}

.top-company.top-sustain .txt-box a.linkbtn::before {
    background-color: #2aa789;
}

.top-company.top-sustain .img-box {
    order: 2;
}

/* top-recruit-start */
.top-recruit .img-box {
    display: none;
}

.top-recruit {
    background: url(../img/recruit01.jpg) no-repeat;
    height: 300px;
    background-size: cover;
    background-position: center;
}

.top-recruit .inner {
    max-width: 1000px;
    height: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 10px;
    line-height: 1.7;
    text-align: right;
    margin-top: 60px;
    align-items: center;
}

.top-recruit .inner .linkbtn {
    margin-right: 0;
    margin-left: auto;
}

.top-recruit h2 {
}

/* top-employees */
.top-employees {
    background: url(../img/img01.png) no-repeat;
    background-size: cover;
    background-position: center;
    height: 35vw;
    margin-bottom: 30px;
}

.top-recruit h3 {
    font-size: 24px;
    background: #1d5ba8;
    color: white;
    padding: 10px 30px 10px 30px;
}

.lower-privacy {
    padding-bottom: 0;
}

/* acces-start */
.access {
    text-align: center;
    padding-top: 80px;
}

.access .inner {
    max-width: 100%;
    width: 100%;
}

.access h2 {
    margin-bottom: 10px;
}

.access h3 {
    margin-bottom: 15px;
    font-size: 18px;
}

.access p {
    margin: 40px;
}

.access iframe {
    width: 100%;
}

.access p.pd-px {
    margin: 40px 40px 80px;
}

/* top-employees */
/* top-message */
.top-message {
    margin-bottom: 30px;
}

.top-message .inner {
    display: flex;
    max-width: unset;
}

.top-message .inner .ttl_box {
    width: 70%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 3%;
}

.top-message .inner .ttl_box .section__ttl {
    text-align: start;
    font-size: 25px;
}

.top-message .inner .desc_box {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: start;
    padding-left: 3%;
    background-color: #bbbbbb;
}

.top-message .inner .desc_box img {
    max-width: 450px;
    margin-right: 40px;
}

.top-message .inner .desc_box .text_box {
    border: solid var(--shade2-bg-color) 5px;
    height: 85%;
    padding: 20px 20px 30px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 15px;
    background: #fff;
}

.top-message .inner .desc_box .text_box h2 {
    line-height: 30px;
}

.recruit_sec {
}

.recruit_sec .inner {
    max-width: 100%;
    justify-content: center;
    align-items: unset;
}

.recruit_sec .recruit_sec__img {
    width: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom center;
    background-image: url(../img/top_recruit_bnr.jpg);
}

.recruit_sec .recruit_sec__text {
    width: 50%;
    padding: 120px 3%;
    background: #ba2652;
}

.recruit_sec .recruit_sec__text h2.secttl {
    color: #FFF;
    margin: 0 0 25px;
}

.recruit_sec .recruit_sec__text h3 {
    color: #FFF;
    line-height: 1.6;
    font-size: 24px;
}

.recruit_sec .recruit_sec__text a.linkbtn {
    background-color: #FFF;
    color: #ba2652;
}

.recruit_sec .recruit_sec__text a.linkbtn::before {
    background-color: #ba2652;
}

/* top-message */
/* interview start */
.interview {
    background-color: #f1f9fb;
    padding: 50px 0 0;
    margin-bottom: 30px;
}

.interview .inner {
    max-width: 1800px;
}

.interview .section__ttl {
    margin-bottom: 30px;
}

.interview .slide {
    background: #fff;
    margin: 0 20px;
    position: relative;
}

.interview .slick-list {
    padding: 50px 0 !important;
}

.interview .slide a {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    color: #000;
}

.interview .slide a h1 span {
    font-size: 14px;
}

.interview .slide a h1 {
    position: absolute;
    font-size: 50px;
    top: -56px;
    left: -30px;
    color: var(--shade2-bg-color);
    line-height: 30px;
}

.interview .slide a img {
    width: 100%;
    margin-bottom: 10px;
}

.interview .slide a h3 {
    font-size: 16px;
    margin-bottom: 15px;
}

.interview .slide a h3 span {
    color: var(--shade2-bg-color);
}

.interview .slide a h2 {
    font-size: 20px;
    margin-bottom: 5px;
}

.interview .slide a p {
    font-size: 14px;
    padding-bottom: 10px;
}

/* interview end */
.section__ttl {
    text-align: center;
    font-weight: 600;
    font-style: normal;
    color: var(--shade2-bg-color);
    font-size: 30px;
    /* letter-spacing: 0.1rem; */
    text-transform: uppercase;
    margin-bottom: 50px;
    position: relative;
}

.section__ttl .ja {
    display: block;
    font-size: 16px;
    color: #000;
    letter-spacing: 0;
    margin-top: 10px;
}

.section__ttl.black {
    color: #000;
}

.aboutus__item {
    padding: 96px 0 95px;
    background-image: url(../img/img01.jpg);
    background-repeat: no-repeat;
    background-position: center left;
    background-size: cover;
    margin-left: 18vw;
    margin-right: 18vw;
    margin-bottom: var(--padding);
}

.aboutus__textbox {
    background: #fff;
    width: 45%;
    margin: 0 0 0 auto;
    padding: 55px 10px 55px 10px;
}

.aboutus__text {
    font-size: 16px;
    margin: 10px 40px 10px 40px;
}

.btn01 {
    font-size: 16px;
    color: #fff;
    font-weight: 600;
    display: flex;
    justify-content: center;
    padding: 0 0 0 20px;
    gap: 20px;
    height: 50px;
    align-items: center;
    background-color: var(--shade2-bg-color);
}

.store__text {
    font-size: 16px;
    /* margin: 0 auto 53px; */
    max-width: 600px;
}

.lower-mv {
    height: 15vw;
    /* min-height: 300px; */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}

.lower-mv::before {
    content: " ";
    display: block;
    width: 100%;
    height: 100%;
    background: #00000054;
    position: absolute;
    top : 0;
    left: 0;
    margin: 0 auto;
}

.lower-mv .inner {
    height: 100%;
    position: relative;
    display: flex;
}

h2.center.mb20 {
    text-align: center;
    /* font-family: ryo-display-plusn, serif; */
    font-weight: 700;
    font-style: normal;
    color: var(--main-bg-color);
    font-size: 36px;
    letter-spacing: 0.1rem;
    padding-bottom: var(--half-padding);
    padding-top: var(--half-padding);
}

h1.lower-mv__text {
    color: #ffffff;
    font-weight: 700;
    font-style: normal;
    font-size: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    line-height: 40px;
}

h1.lower-mv__text span {
    font-size: 16px;
    text-transform: uppercase;
    font-family: "futura-pt";
}

ul.breadcrumb__list.flex {
    display: flex;
    flex-direction: row;
    padding-top: var(--quarter-padding);
    font-weight: 600;
    color: #FFF;
}

.breadcrumb {
    position: absolute;
    top: 0;
    left: 40px;
}

a.home.hv:after {
    content: ">";
}

a.home.hv {
    text-decoration: none;
    color: #ffffff;
}

a.home.hv:after {
    content: ">";
    padding-right: 10px;
    padding-left: 10px;
}

p.center.f22.bold.mb20 {
    text-align: center;
    padding-bottom: var(--half-padding);
}

p.center.mb10.daihyou_right {
    text-align: right;
    padding-bottom: var(--half-padding);
}

p.center.f18.daihyou_right {
    text-align: right;
}

span.must {
    display: block;
    background-color: white;
    border: none;
    text-shadow: none;
    padding: revert;
    font-size: 10px;
    color: #cd0808;
    float: none;
    margin: 0px 0px;
    border-radius: unset;
    box-shadow: none;
    background-image: none;
    background-size: 100% 100%;
    font-weight: bold;
    font-size: 16px;
}

p.mb99 a {
    text-decoration: none;
    color: black;
    font-weight: bold;
}

.right_flex_box {
    width: 50%;
}

.left_flex_box {
    width: 50%;
}

.font-w {
    font-weight: bold;
}

.center.mb70 {
    text-align: center;
    padding-bottom: var(--half-padding);
}

.entry__form .submit_wap label a {
    color: var(--shade2-bg-color);
    text-decoration: underline;
}

.entry__form .submit_wap .btn01 {
    background-color: var(--shade2-bg-color);
    font-weight: 600;
    color: #fff;
    border: unset;
    padding: 0 8%;
    height: 45px;
}

p {
    line-height: var(--def-line-height);
}

.defalt_lineheight {
    line-height: var(--def-line-height);
}

.font-w {
    padding-top: var(--quarter-padding);
    padding-bottom: var(--quarter-padding);
}

.lower-mv__text--box {
    display: flex;
    justify-content: center;
    width: 100%;
}

p.t4.mb40 {
    text-align: center;
}

.submit_wap {
    display: flex;
    justify-content: center;
    flex-direction: column;
    margin-top: var(--half-padding);
    gap: 20px;
    align-items: center;
    margin-bottom: 25px;
}

.submit_wap .red-txt {
    color: #cd0808;
    line-height: 26px;
    font-weight: 600;
}

.submit_wap.mb50 {
    margin-bottom: 50px;
}

.submit_wap label {
    display: flex;
    gap: 5px;
    align-items: center;
}

.submit_wap label input {
    margin: 0;
}

.submit_wap .btn01 {
    border: 0;
    padding: 15px 25px 15px 40px;
    width: 200px;
    height: 100%;
    border-radius: 100vh;
}

.submit_wap-wrap::after {
    content: "";
    background-color: #fff;
    width: 25px;
    height: 25px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 20px;
    border-radius: 1000vh;
}

.submit_wap-wrap {
    width: fit-content;
    position: relative;
    margin: 0 auto;
}

.submit_wap a {
    color: #000;
}

.submit_wap a span {
    color: #1d5ba8;
    text-decoration: underline;
}

/* entry start */
.entry__form .inner {
    max-width: 900px;
}

form#mailformpro.entry-mailformpro {
    width: unset;
}

.entry_form--item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 35px;
}

.entry_form--item dd .text {
    height: 100%;
    width: 100%;
    padding: 12px;
}

.entry_form--item dd .number {
    width: 20%;
    height: 100%;
    padding: 12px;
}

.entry_form--item dd .hypen {
    width: 10px;
    height: 2px;
    background-color: #000;
    margin: 0 20px;
}

.entry__form .bb {
    border-bottom: solid 1px #000;
    margin-bottom: 35px;
}

.entry_form--item dd input[type="radio" i] {
    margin: 0;
    height: 20px;
    width: 20px;
}

.entry_form--item dd.flex {
    display: flex;
    align-items: center;
    gap: 30px;
}

.entry_form--item dd.flex2 {
    display: flex;
    align-items: center;
    gap: 10px;
}

.entry_form--item dd.radio-wrap .mr {
    margin: 0 35px;
}

.entry_form--item dd.date-wrap .mr {
    margin-right: 20px;
}

.entry_form--item dd.flex2 .label {
    width: 29%;
}

.entry_form--item dd.flex2 .select {
    width: 45%;
    height: 100%;
    padding: 12px;
}

.entry_form--item dd.flex2 .text {
    width: 70%;
}

.site-footer {
    padding: 40px 5%;
}

.site-footer .container {
    max-width: 1000px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: 100%;
    margin: 0 auto;
}

.site-footer__nav {
    width: 400px;
    margin: 20px 0 0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.site-footer__nav ul {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.site-footer__nav ul li {
    margin: 0 0 25px;
    width: 48%;
}

.site-footer__nav ul li a {
    display: block;
    position: relative;
    padding: 0 0 0 20px;
    font-weight: bold;
    color: #000;
    font-size: 14px;
}

.site-footer__nav ul li a::before {
    content: " ";
    display: block;
    width: 11px;
    height: 10px;
    /* background: url(../img/common/v_02.svg) no-repeat top left; */
    position: absolute;
    top : 0;
    margin: auto 0;
    left: 0;
    bottom: 0;
}

.site-footer__address {
    width: 48%;
}

.site-footer__logo {
    margin: 0 0 20px;
    text-align: right;
}

.site-footer__logo a {
}

.site-footer__logo img {
}

.site-footer__address p {
    font-size: 14px;
    padding: 0 0 0 0px;
    line-height: 2;
    margin: 0 0 20px;
    text-align: right;
}

.site-footer__logo_another {
    text-align: right;
    max-width: 290px;
    margin: 0 0 0 auto;
}

.site-footer__logo_another p {
    /* text-align: center; */
    margin: 0 0 15px;
    font-weight: bold;
    border-bottom: 1px solid #000;
    padding: 0 0 6px;
}

.site-footer__logo_another a {
    display: block;
}

.site-footer__logo_another img {
    max-width: 220px;
    width: 100%;
}

.site-footer .copyright {
    margin: 20px 0 0;
    font-size: 12px;
    text-align: center;
}

/* history */
/*============================
歴史で見る
============================*/
#history .sub_mv {
    background-position: center !important;
}

#history-box {
    height: 4000px;
    /* margin: 0 0 60px; */
    overflow: hidden;
    height: 100%;
}

#history-box > ul {
    position: relative;
    padding: 60px 0;
}

#history-box > ul::before {
    content: "";
    background: #d8d8d8;
    left: 50%;
    transform: translate(-50%);
    top: 0;
    width: 10px;
    height: 100%;
    position: absolute;
}

#history-box > ul > li {
    position: relative;
}

#history-box > ul > li:before {
    content: " ";
    display: block;
    position: absolute;
    margin: auto;
    background: #000;
    width: 16px;
    height: 16px;
    bottom: auto;
    top: 73px;
    left: 0;
    right: 0;
    border-radius: 100vh;
}

#history-box > ul > li:after {
    content: " ";
    display: block;
    position: absolute;
    margin: auto;
    background: #000;
    width: 134px;
    height: 2px;
    bottom: auto;
    top: 80px;
    left: -149px;
    right: 0;
    z-index: 0;
}

#history-box > ul > li.right-side:after {
    top: 0;
    left: 0;
    right: -130px;
}

#history-box > ul > li.right-side > .box {
    left: 307px;
}

#history-box > ul > li.right-side > .box p.t1 {
    color: var(--main-bg-color);
}

#history-box > ul > li.right-side > .box p.t1 > span {
    color: var(--main-bg-color);
}

#history-box > ul > li.right-side > .box p.t2 {
    color: var(--main-bg-color);
}

#history-box > ul > li.h_02:before {
    top: 18px;
}

#history-box > ul > li.h_02:after {
    top: 25px;
    width: 113px;
}

#history-box > ul > li.h_02 > .box {
    top: -60px;
}

#history-box > ul > li.h_02 > .box p.t1 {
    right: auto;
    left: -144px;
    top: 23px;
}

#history-box > ul > li.h_03:before {
    top: 6px;
}

#history-box > ul > li.h_03:after {
    top: 45px;
}

#history-box > ul > li.h_03 > .box {
    top: -43px;
}

#history-box > ul > li.h_03 > .box p.t1 {
    top: -22px;
}

#history-box > ul > li.h_04:before {
    top: -25px;
}

#history-box > ul > li.h_04:after {
    top: 34px;
}

#history-box > ul > li.h_04 > .box {
    top: -30px;
}

#history-box > ul > li.h_03 > .box p.t1, #history-box > ul > li.h_05 > .box p.t1, #history-box > ul > li.h_07 > .box p.t1 {
    right: auto;
    left: -167px;
    top: -13px;
}

#history-box > ul > li.h_05:before {
    top: 33px;
}

#history-box > ul > li.h_05:after {
    top: 40px;
    width: 114px;
}

#history-box > ul > li.h_05 > .box {
    top: 0;
}

#history-box > ul > li.h_05 > .box p.t1 {
    top: -9px;
    left: -154px;
}

#history-box > ul > li.h_06:before {
    top: 83px;
}

#history-box > ul > li.h_06:after {
    top: 90px;
}

#history-box > ul > li.h_06 > .box {
    top: 0;
    margin-bottom: 40px;
}

#history-box > ul > li.h_07:before {
    top: -140px;
}

#history-box > ul > li.h_07:after {
    top: 0;
}

#history-box > ul > li.h_07 > .box {
    top: -120px;
}

#history-box > ul > li.h_07 > .box p.t1 {
    top: 20px;
}

#history-box > ul > li.h_08:before {
    top: -323px;
}

#history-box > ul > li.h_08:after {
    top: -160px;
}

#history-box > ul > li.h_08 > .box {
    top: -240px;
}

#history-box > ul > li.h_08 > .box p.t1 {
    top: -30px;
}

#history-box > ul > li.h_09:before {
    top: -316px;
}

#history-box > ul > li.h_09:after {
    top: -308px;
}

#history-box > ul > li.h_09 > .box {
    top: -384px;
}

#history-box > ul > li.h_09 > .box p.t1 {
    top: -11px;
}

#history-box > ul > li.h_10:before {
    top: -316px;
}

#history-box > ul > li.h_10:after {
    top: -309px;
}

#history-box > ul > li.h_10 > .box {
    top: -410px;
}

#history-box > ul > li.h_10 > .box p.t1 {
    right: auto;
    left: -167px;
    top: 20px;
}

#history-box > ul > li.h_11:before {
    top: -313px;
}

#history-box > ul > li.h_11:after {
    top: -305px;
}

#history-box > ul > li.h_11 > .box {
    top: -400px;
    padding-bottom: 12px;
}

#history-box > ul > li.h_11 > .box p.t1 {
    top: 8px;
}

#history-box > ul > li.h_11 > .box p.t3 {
    margin: 8px 0 0;
}

#history-box > ul > li.h_12:before {
    top: -321px;
}

#history-box > ul > li.h_12:after {
    top: -314px;
}

#history-box > ul > li.h_12 > .box {
    top: -414px;
}

#history-box > ul > li.h_12 > .box p.t1 {
    right: auto;
    left: -167px;
    top: 19px;
}

#history-box > ul > li.h_13:before {
    top: -326px;
}

#history-box > ul > li.h_13:after {
    top: -318px;
}

#history-box > ul > li.h_13 > .box {
    top: -422px;
}

#history-box > ul > li.h_13 > .box p.t1 {
    top: 17px;
}

#history-box > ul > li.h_14:before {
    top: -321px;
}

#history-box > ul > li.h_14:after {
    top: -314px;
}

#history-box > ul > li.h_14 > .box {
    top: -478px;
}

#history-box > ul > li.h_14 > .box p.t1 {
    right: auto;
    left: -167px;
    top: 83px;
}

#history-box > ul > li.h_15:before {
    top: -506px;
}

#history-box > ul > li.h_15:after {
    top: -498px;
}

#history-box > ul > li.h_15 > .box {
    top: -572px;
}

#history-box > ul > li.h_15 > .box p.t1 {
    top: -4px;
}

#history-box > ul > li.h_16:before {
    top: -511px;
}

#history-box > ul > li.h_16:after {
    top: -504px;
}

#history-box > ul > li.h_16 > .box {
    top: -550px;
}

#history-box > ul > li.h_16 > .box p.t1 {
    right: auto;
    left: -167px;
    top: -34px;
}

#history-box > ul > li.h_17:before {
    top: -529px;
}

#history-box > ul > li.h_17:after {
    top: -521px;
}

#history-box > ul > li.h_17 > .box {
    top: -611px;
}

#history-box > ul > li.h_17 > .box p.t1 {
    top: 11px;
}

#history-box > ul > li.h_18:before {
    top: -538px;
}

#history-box > ul > li.h_18:after {
    top: -531px;
}

#history-box > ul > li.h_18 > .box {
    top: -593px;
}

#history-box > ul > li.h_18 > .box p.t1 {
    right: auto;
    left: -167px;
    top: -19px;
}

#history-box > ul > li.h_19:before {
    top: -510px;
}

#history-box > ul > li.h_19:after {
    top: -502px;
}

#history-box > ul > li.h_19 > .box {
    top: -683px;
}

#history-box > ul > li.h_19 > .box p.t1 {
    top: 102px;
}

#history-box > ul > li.h_20:before {
    top: -621px;
}

#history-box > ul > li.h_20:after {
    top: -614px;
}

#history-box > ul > li.h_20 > .box {
    top: -720px;
}

#history-box > ul > li.h_20 > .box p.t1 {
    right: auto;
    left: -167px;
    top: 25px;
}

#history-box > ul > li.h_20 > .box p.t3.mg {
    margin: 6px 0 15px;
}

#history-box > ul > li.h_21:before {
    top: -635px;
}

#history-box > ul > li.h_21:after {
    top: -627px;
}

#history-box > ul > li.h_21 > .box {
    top: -678px;
}

#history-box > ul > li.h_21 > .box p.t1 {
    top: -28px;
}

#history-box > ul > li.h_22:before {
    top: -636px;
}

#history-box > ul > li.h_22:after {
    top: -629px;
}

#history-box > ul > li.h_22 > .box {
    top: -683px;
}

#history-box > ul > li.h_22 > .box p.t1 {
    right: auto;
    left: -167px;
    top: -27px;
}

#history-box > ul > li.h_23:before {
    top: -649px;
}

#history-box > ul > li.h_23:after {
    top: -641px;
}

#history-box > ul > li.h_23 > .box {
    top: -727px;
}

#history-box > ul > li.h_23 > .box p.t1 {
    top: 7px;
    right: -155px;
}

#history-box > ul > li.h_24:before {
    top: -632px;
}

#history-box > ul > li.h_24:after {
    top: -625px;
}

#history-box > ul > li.h_24 > .box {
    top: -721px;
}

#history-box > ul > li.h_24 > .box p.t1 {
    right: auto;
    left: -167px;
    top: 16px;
}

#history-box > ul > li.h_25:before {
    top: -770px;
}

#history-box > ul > li.h_25:after {
    top: -763px;
}

#history-box > ul > li.h_25 > .box {
    top: -908px;
}

#history-box > ul > li.h_25 > .box p.t1 {
    top: 67px;
    right: -161px;
}

#history-box > ul > li.h_26:before {
    top: -911px;
}

#history-box > ul > li.h_26:after {
    top: -904px;
}

#history-box > ul > li.h_26 > .box {
    top: -940px;
}

#history-box > ul > li.h_26 > .box p.t1 {
    right: auto;
    left: -169px;
    top: -44px;
}

#history-box > ul > li.h_27:before {
    top: -873px;
}

#history-box > ul > li.h_27:after {
    top: -865px;
}

#history-box > ul > li.h_27 > .box {
    top: -965px;
}

#history-box > ul > li.h_27 > .box p.t1 {
    top: 21px;
    right: -164px;
}

#history-box > ul > li.h_28:before {
    top: -886px;
}

#history-box > ul > li.h_28:after {
    top: -879px;
}

#history-box > ul > li.h_28 > .box {
    top: -969px;
}

#history-box > ul > li.h_28 > .box p.t1 {
    right: auto;
    left: -169px;
    top: 9px;
}

#history-box > ul > li.h_29:before {
    top: -885px;
}

#history-box > ul > li.h_29:after {
    top: -877px;
}

#history-box > ul > li.h_29 > .box {
    top: -1022px;
}

#history-box > ul > li.h_29 > .box p.t1 {
    top: 66px;
    right: -164px;
}

/*added 20220513*/
#history-box > ul > li.h_30:before {
    top: -907px;
}

#history-box > ul > li.h_30:after {
    top: -899px;
}

#history-box > ul > li.h_30 > .box {
    top: -979px;
}

#history-box > ul > li.h_30 > .box p.t1 {
    top: 4px;
    left: -164px;
    right: auto;
}

#history-box > ul > li.h_31:before {
    top: -919px;
}

#history-box > ul > li.h_31:after {
    top: -911px;
}

#history-box > ul > li.h_31 > .box {
    top: -1057px;
}

#history-box > ul > li.h_31 > .box p.t1 {
    top: 71px;
    right: -164px;
}

#history-box > ul > li.h_32:before {
    top: -1053px;
}

#history-box > ul > li.h_32:after {
    top: -1045px;
}

#history-box > ul > li.h_32 > .box {
    top: -1077px;
}

#history-box > ul > li.h_32 > .box p.t1 {
    top: -46px;
    left: -164px;
    right: auto;
}

#history-box > ul > li.h_33:before {
    top: -1018px;
}

#history-box > ul > li.h_33:after {
    top: -1010px;
}

#history-box > ul > li.h_33 > .box {
    top: -1094px;
}

#history-box > ul > li.h_33 > .box p.t1 {
    top: 7px;
    right: -164px;
}

#history-box > ul > li.h_34:before {
    top: -1003px;
}

#history-box > ul > li.h_34:after {
    top: -995px;
}

#history-box > ul > li.h_34 > .box {
    top: -1097px;
}

#history-box > ul > li.h_34 > .box p.t1 {
    top: 27px;
    left: -164px;
    right: auto;
}

#history-box > ul > li.h_35:before {
    top: -988px;
}

#history-box > ul > li.h_35:after {
    top: -980px;
}

#history-box > ul > li.h_35 > .box {
    top: -1151px;
}

#history-box > ul > li.h_35 > .box p.t1 {
    top: 96px;
    right: -164px;
}

#history-box > ul > li.h_36:before {
    top: -1130px;
}

#history-box > ul > li.h_36:after {
    top: -1123px;
}

#history-box > ul > li.h_36 > .box {
    top: -1227px;
}

#history-box > ul > li.h_36 > .box p.t1 {
    top: 30px;
    left: -164px;
    right: auto;
}

/*!added 20220513*/
#history-box > ul > li > .box {
    width: 420px;
    margin: 0 auto 0;
    border: 4px solid #dcdcdc;
    background: #fff;
    left: -311px;
    position: relative;
    padding: 0px 25px 20px;
    z-index: 3;
    font-family: "source-han-sans-japanese";
}

#history-box > ul > li > .box > p.t1 {
    font-weight: bold;
    font-size: 36px;
    color: var(--main-bg-color);
    position: absolute;
    right: -144px;
    top: 10px;
    text-align: center;
    letter-spacing: 0rem;
}

#history-box > ul > li:nth-of-type(3n+1) > .box > p.t1 {
    color: var(--main-bg-color);
}

#history-box > ul > li:nth-of-type(3n+2) > .box > p.t1 {
    color: #2aa789;
}

#history-box > ul > li:nth-of-type(3n) > .box > p.t1 {
    color: #ba2652;
}

#history-box > ul > li > .box > p.t1 > span {
    font-weight: bold;
    display: block;
    font-size: 16px;
    color: var(--main-color);
    letter-spacing: 0.05rem;
    text-align: center;
    position: relative;
    left: 5px;
}

#history-box > ul > li > .box > p.t1 > span.ls {
    left: 0;
    display: inline-block;
    font-size: 36px;
    letter-spacing: -0.2rem;
}

#history-box > ul > li > .box > p.t2 {
    font-weight: bold;
    font-size: 30px;
    color: var(--main-bg-color);
    padding: 18px 0 9px 4px;
    display: flex;
    align-items: flex-end;
    gap: 10px;
}

#history-box > ul > li:nth-of-type(3n+1) > .box > p.t2 {
    color: var(--main-bg-color);
}

#history-box > ul > li:nth-of-type(3n+2) > .box > p.t2 {
    color: #2aa789;
}

#history-box > ul > li:nth-of-type(3n) > .box > p.t2 {
    color: #ba2652;
}

#history-box > ul > li > .box > p.t2 .small-text {
    font-size: unset;
    margin-bottom: 0;
}

#history-box > ul > li > .box > p.t2 > span.ls {
    letter-spacing: -0.2rem;
}

#history-box > ul > li > .box > img {
    width: 100%;
    object-fit: cover;
    object-position: center;
    height: 150px;
}

#history-box > ul > li > .box > img.pa {
    position: absolute;
    top: 10px;
    right: 15px;
}

#history-box > ul > li > .box > p.t3 {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 10px;
}

#history-box > ul > li > .box > p.t3.mg {
    margin: 6px 0 6px;
}

#history-box > ul > li > .box > p.t3.mg2 {
    margin: 6px 0 15px;
}

.service-links {
    background: linear-gradient(180deg, #1d5ba8, #1d5ba885);
    padding: 60px 3%;
    margin: 80px 0 50px;
}

.service-links h2 {
    color: #FFF;
    font-size: 40px;
    text-align: center;
    margin: 0 0 40px;
}

.service-links .inner {
}

.service-links ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    max-width: 800px;
    margin: 0 auto;
    width: 100%;
}

.service-links li {
    width: 32.7%;
}

.service-links a {
    display: block;
    color: #FFF;
    background: #1d5ba6;
    border: 4px solid #FFF;
    padding: 34px 20px;
    font-size: 20px;
    text-align: center;
    font-weight: bold;
    box-shadow: 0 0 7px #bdbdbd;
    line-height: 1.4;
}

.service-links li a.green {
    background: #2aa789;
}

.service-links li a.red {
    background: #ba2652;
    font-size: 16px;
    padding: 25px 20px;
}

.service-links span {
    display: inline-block;
    margin: 0 16px 0 0;
}

.service-item {
    padding: 20px 3%;
}

.service-item .inner {
}

.service-item h3 {
    font-size: 20px;
    text-align: center;
    color: #FFF;
    background: #1d5ba8;
    padding: 20px 0;
    margin: 0 0 20px;
}

.service-item h3.green {
    background: #2aa789;
}

.service-item h3.red {
    background: #ba2652;
}

.service-item h3 span {
    display: inline-block;
    margin: 0 20px 0 0;
}

.service-item__imgs {
    margin: 0 0 20px;
}

.service-item__imgs ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.service-item__imgs li {
    width: 49%;
}

.service-item__imgs img {
    width: 100%;
    height: auto;
}

.service-item p {
    font-size: 18px;
    margin: 0 0 20px;
}

/* history */
.lower-contact {
    padding-bottom: 0;
}

.sub-sustainability {
    padding-bottom: 0;
}

.text_cemter {
    text-align: center;
}

/* entry end */
@media screen and (max-width: 1400px) {
    .access .inner {
        max-width: 1300px;
    }

    .top-message .inner .ttl_box {
        width: 45%;
    }

    .top-service .txt-box a .wrap {
        max-width: 660px;
    }
}

@media screen and (max-width: 1250px) {
    #history-box {
        overflow: scroll;
    }

    .mv .inner {
        max-width: 1000px;
    }

    .mv__text--box {
        bottom: 50px;
    }

    .top-message .inner .desc_box {
        padding: 0 3% 0;
        align-items: flex-end;
    }

    .top-message .inner .desc_box img {
        max-width: 300px;
    }

    .top-message .inner .desc_box .text_box {
        margin: 30px 0;
    }
}

@media screen and (max-width: 1000px) {
    .mv {
        padding-left: 25px;
        padding-right: 25px;
    }

    .top-news .news__list--box {
        padding-left: 25px;
        padding-right: 25px;
    }

    .secttl {
        font-size: 40px;
    }

    .top-company h3 {
        font-size: 18px;
    }

    .pd-px {
        padding-left: 25px;
        padding-right: 25px;
    }

    .top-service .txt-box a {
        min-height: 150px;
    }

    .top-service .img-box.pcx img {
        height: 100%;
        object-fit: cover;
    }

    .top-recruit .inner {
        padding-left: 25px;
        padding-right: 25px;
    }
}

@media screen and (max-width: 768px) {
    .mv {
        padding-top: 80px;
        height: 100vh;
        min-height: 450px;
        background: url(../img/mv-sp.jpg) no-repeat;
        background-size: cover;
        background-position: left top;
        padding-left: 25px;
        padding-right: 25px;
    }

    .mv .inner {
        padding: 0;
    }

    .mv p {
        font-size: 16px;
    }

    .pd-px {
        padding-left: 25px;
        padding-right: 25px;
    }

    .top-news .news__list--box {
        padding-left: 25px;
        padding-right: 25px;
    }

    .top-news .news__list {
        flex-direction: column;
    }

    .top-news .news__list .news__item {
        width: 100%;
        /* border: 2px solid #000; */
    }

    .top-news .news__list .news__item:nth-of-type(2), .top-news .news__list .news__item:nth-of-type(3) {
        display: none;
    }

    .top-company .flex-row {
        flex-direction: column;
    }

    .top-company .w-h {
        width: 100%;
    }

    .top-company .txt-box {
        order: 2;
    }

    .top-company .txt-box .wrap {
        max-width: 100%;
    }

    .top-company .img-box {
        order: 1;
    }

    .top-company .img-box img {
        height: 260px;
    }

    .secttl {
        font-size: 36px;
    }

    .top-company h3 {
        font-size: 18px;
    }

    .top-service .ttl-wrap {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .top-service .img-box.pcx {
        display: none;
    }

    .top-service .img-box {
        width: 100%;
        /* border: 2px solid #000; */
    }

    .top-service .txt-box .img-box {
        display: block;
    }

    .top-service .txt-box {
        width: 100%;
        display: flex;
        flex-direction: column;
    }

    .top-service .txt-box a {
        height: auto;
        padding: 25px 0;
    }

    .top-company.top-sustain {
        margin-top: 60px;
    }

    .top-company.top-sustain .txt-box {
        order: 2;
    }

    .top-company.top-sustain .img-box {
        order: 1;
    }

    .top-recruit {
        background: url(../img/recruit02.jpg) no-repeat;
        height: auto;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .top-recruit .inner {
        padding-left: 25px;
        padding-right: 25px;
        padding-top: 40px;
        text-align: left;
        display: flex;
        flex-direction: column;
        height: 500px;
    }

    .top-recruit .inner .linkbtn {
        margin-left: 0;
    }

    .top-recruit .img-box img {
        object-fit: cover;
        height: 100%;
        object-position: -60px center;
    }

    .recruit_sec {
    }

    .recruit_sec .inner {
        flex-wrap: wrap;
    }

    .recruit_sec .recruit_sec__img {
        width: 100%;
        padding-top: 45%;
    }

    .recruit_sec .recruit_sec__text {
        width: 100%;
        padding: 60px 8%;
    }

    .recruit_sec .recruit_sec__text h2.secttl {
    }

    .recruit_sec .recruit_sec__text h3 {
    }

    .recruit_sec .recruit_sec__text a.linkbtn {
    }

    .recruit_sec .recruit_sec__text a.linkbtn::before {
    }
}

@media screen and (max-width: 576px) {
    .mv p {
        font-size: 14px;
    }

    .mv span.pc_eyecatch_text, .mv span.sp_eyecatch_text {
        font-size: 23px;
        letter-spacing: 0;
    }

    .mv {
        height: 76.6vh;
    }
}

.top_gallery {
    padding: 80px 3% 0px 3%;
}

.top_gallery .inner {
    max-width: 100%;
}

.top_gallery .section_ttl {
    font-size: 46px;
    margin: 0 auto 60px;
    text-align: center;
    font-family: "futura-pt";
}

.top_gallery .section_ttl span {
}

.top_gallery__list {
    margin: 0 0 80px;
    display: flex;
    justify-content: space-between;
}

.top_gallery__list li {
    width: 17%;
    margin: 0 10px 0;
}

.top_gallery__thumb {
    width: 100%;
    padding-top: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    /* border-radius: 60%; */
    margin: 0 auto;
    width: 85%;
    padding-top: 85%;
}

.top_gallery .linkbtn {
    margin: 0 auto;
    width: 300px;
}

.section_photogallery {
    padding: 80px 3%;
}

.section_photogallery__list {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}

.section_photogallery__list li {
    width: 48.5%;
    margin: 0 0 40px;
}

.section_photogallery__list img {
    display: block;
    width: 100%;
    height: auto;
}

@media screen and (max-width: 1080px) {
    .top_gallery__list li {
        width: 22%;
    }
}

@media screen and (max-width: 820px) {
    .top_gallery__list li {
        width: 47%;
        margin: 0 10px 0;
    }

    .top_gallery .section_ttl {
        font-size: 36px;
        margin: 0 auto 40px;
    }

    .section_photogallery {
        padding: 40px 3%;
    }
}

@media screen and (max-width: 540px) {
    .section_photogallery__list li {
        width: 100%;
        margin: 0 0 40px;
    }
}

@media screen and (max-width: 420px) {
    .top_gallery__list li {
        width: 100%;
        margin: 0 30px 0;
    }
}

/* news */
.news_section {
    padding: 80px 3% 80px;
}

.news_section .inner {
    max-width: 1000px;
}

.news-list__post {
    margin: 0 0 9px;
    padding: 20px 20px 0px;
    border-bottom: 1px solid #000;
}

.news-list__post .news_item {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
}

.news_item .img_box {
    width: 100px;
    margin: 0px 0 25px;
}

.news_item .img_box .news_thumb {
    width: 100%;
    padding-top: 100%;
    background-color: #9c9c9c;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    border-radius: 100%;
}

.news_item .info_box {
    width: calc(100% - 140px);
    padding: 8px 0 0;
}

.news_time {
    margin: 0 0 0px;
}

.news_time time {
    font-size: 14px;
    display: inline-block;
}

.categories-btn {
    margin: 0 0 0px 10px;
    display: inline-block;
    position: relative;
    top: -1px;
}

.categories-btn li {
    display: inline-block;
    margin: 0px 10px 0px 0;
}

.categories-btn li a {
    display: block;
    padding: 6px 20px 8px;
    background: #2aa789;
    color: #FFF;
    /* border-radius: 6px; */
    /* box-shadow: 0 0 5px #b1b1b1; */
    font-size: 12px;
}

.categories-btn li a.news-info {
    background: #cb3a49;
}

.categories-btn li a.news-recruit {
    background: #000000;
}

.news-list__post a {
    display: block;
}

.news-list__post a h3 {
    color: #000;
    background: none;
    text-align: left;
    margin: 0 0 0px;
    padding: 20px 20px 30px 0;
    line-height: 1.8;
    position: relative;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.news-list__post a h3::before {
    content: " ";
    display: block;
    width: 17px;
    height: 21px;
    background: url("../img/common/v_01.svg") no-repeat top left;
    background-size: contain;
    position: absolute;
    top: -10px;
    margin: auto 0;
    bottom: 0;
    right: 0;
    content: none;
}

.wp-pagenavi {
    justify-content: center;
    font-size: 16px;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    /* justify-content: space-between; */
    padding: 40px 0 0;
}

.wp-pagenavi .previouspostslink {
    display: block;
    width: 34px;
    height: 44px;
    border: 1px solid;
    font-size: 16px;
    text-align: center;
    line-height: 38px;
    margin: 0 10px;
    font-weight: bold;
    color: #000;
}

.wp-pagenavi .page.smaller {
    display: block;
    width: 34px;
    height: 44px;
    border: 1px solid;
    font-size: 16px;
    text-align: center;
    line-height: 40px;
    margin: 0 10px;
    font-weight: bold;
    color: #000;
}

.wp-pagenavi .current {
    display: block;
    width: 34px;
    height: 44px;
    border: 1px solid #1d5ba8;
    font-size: 16px;
    text-align: center;
    line-height: 40px;
    margin: 0 10px;
    background: #1d5ba8;
    color: #FFF;
    font-weight: bold;
}

.wp-pagenavi .page.larger {
    display: block;
    width: 34px;
    height: 44px;
    border: 1px solid;
    font-size: 16px;
    text-align: center;
    line-height: 38px;
    margin: 0 10px;
    font-weight: bold;
    color: #000;
}

.wp-pagenavi .nextpostslink {
    display: block;
    width: 34px;
    height: 44px;
    border: 1px solid;
    font-size: 16px;
    text-align: center;
    line-height: 38px;
    margin: 0 10px;
    font-weight: bold;
    color: #000;
}

@media screen and (max-width: 820px) {
    .news_section {
        padding: 40px 3% 40px;
    }

    .news-list__post .news_item {
    }

    .news_item .img_box {
        width: 80px;
    }

    .news_item .img_box .news_thumb {
    }

    .news_item .info_box {
        width: calc(100% - 95px);
        padding: 10px 0 0;
    }

    .news-list {
        margin: 20px 0 60px;
    }

    .news-list__post a h3 {
        font-size: 16px;
        padding: 6px 20px 30px 0;
    }

    .wp-pagenavi {
    }

    .wp-pagenavi .previouspostslink {
        width: 28px;
        height: 34px;
        line-height: 29px;
        margin: 0 4px 0;
    }

    .wp-pagenavi .page.smaller {
        width: 28px;
        height: 34px;
        line-height: 29px;
        margin: 0 4px 0;
    }

    .wp-pagenavi .current {
        width: 28px;
        height: 34px;
        line-height: 29px;
        margin: 0 4px 0;
    }

    .wp-pagenavi .page.larger {
        width: 28px;
        height: 34px;
        line-height: 29px;
        margin: 0 4px 0;
    }

    .wp-pagenavi .nextpostslink {
        width: 28px;
        height: 34px;
        line-height: 29px;
        margin: 0 4px 0;
    }
}

.recruit-box .recruit_list li .reclist_box p.ttls {
    line-height: 68px;
    padding: 0 0 0 44px;
    font-size: 20px;
    font-weight: bold;
    color: #FFF;
    margin: 0 0 26px;
    background: var(--shade2-bg-color);
}

.recruit-box .recruit_list li .reclist_box h3.type05 {
    padding: 0 0 0 44px;
    color: #015cad;
    font-weight: bold;
    font-size: 22px;
    margin: 0 0 18px;
}

.recruit-box .recruit_list li .reclist_box {
    background: #f1f4f7;
    padding: 0 0 35px;
}

.recruit-box .recruit_list {
    max-width: 870px;
    margin: 0 auto;
    width: 100%;
}

.recruit-box .recruit_list li .reclist_box a.btn03 {
    display: block;
    text-align: center;
    margin: 42px auto 0;
    width: 260px;
    height: 44px;
    display: flex;
    align-items: center;
    font-size: 16px;
    justify-content: center;
    font-weight: bold;
    color: var(--shade2-bg-color);
    border: 3px solid var(--shade2-bg-color);
    line-height: 1;
}

.recruit-box .recruit_list li .reclist_box h3.type05 {
    padding: 0 0 0 44px;
    color: var(--shade2-bg-color);
    font-weight: bold;
    font-size: 22px;
    margin: 0 0 18px;
    padding-bottom: 18px;
    border-bottom: 2px solid #d5dee7;
}

.recruit-box .recruit_list li .reclist_box .boxtype1 .lbox p.subttls {
    font-size: 16px;
    text-align: center;
    width: 102px;
    font-weight: bold;
    color: #FFF;
    background: var(--shade2-bg-color);
    border-radius: 15px;
}

.recruit-box .recruit_list li .reclist_box .boxtype1 {
    padding: 22px 44px 27px 44px;
    border-bottom: 2px solid #d5dee7;
}

.boxtype1.flex {
    display: flex;
}

.recruit-box .recruit_list li .reclist_box .boxtype1 .rbox {
    max-width: 647px;
    width: 100%;
}

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

.recruit-box .recruit_list li {
    margin: 0 0 52px;
}

.recruit-box p.read {
    text-align: center;
    font-size: 16px;
    margin: 0 0 49px;
}

.recruit-box p.read {
    font-size: 14px;
    margin: 0 0 30px;
}

.recruitdetail-box .recdetail p.ttls {
    line-height: 67px;
    font-size: 20px;
    font-weight: bold;
    color: #FFF;
    margin: 0 0 22px;
    background: var(--shade2-bg-color);
    padding: 0 41px;
}

.recruitdetail-box .recdetail {
    max-width: 870px;
    margin: 0 auto;
    border: 2px solid var(--shade2-bg-color);
    padding: 0 0 63px;
    width: 94%;
}

.recruitdetail-box .recdetail ul.category li {
    padding: 0 0 0 33px;
    margin: 0 32px 0 0;
    font-size: 16px;
    font-weight: bold;
    background: url(../img/recruit/icon01.png) left center no-repeat;
}

.recruitdetail-box .recdetail ul.category li:first-child {
    /* margin: 0 0 0 45px; */
}

.recruitdetail-box .recdetail h2 {
    font-size: 32px;
    font-weight: bold;
    margin: 0 0 23px;
    padding: 0 41px;
}

.recruitdetail-box .recdetail .itembox {
    border-top: 2px solid #e0e7ee;
    padding: 30px 42px 50px;
}

.recruitdetail-box .recdetail ul.category {
    display: flex;
    margin: 14px 0 14px;
    padding: 0px 0px;
    flex-wrap: wrap;
}

.recruitdetail-box .recdetail .itembox {
    border-top: 2px solid #e0e7ee;
    padding: 30px 42px 50px;
}

.recruitdetail-box .recdetail a.btn03 {
    display: block;
    margin: 47px auto 0;
    text-align: center;
    width: 260px;
    background: var(--shade2-bg-color);
    line-height: 44px;
    font-size: 18px;
    font-weight: bold;
    color: #FFF;
}

ul.category.left_margin {
    margin-left: 45px !important;
}

.itembox p.t1 {
    padding-top: 10px;
}

@media screen and (min-width: 769px) {
    .header-main .contact-box {
        height: 100%;
    }
}

.insta_gallery .inner {
    max-width: 100%;
}

.insta_gallery .section_ttl {
    font-size: 46px;
    margin: 0 auto 60px;
    text-align: center;
    font-family: "futura-pt";
}

.insta_gallery {
    padding: 80px 3% 80px 3%;
}

.insta_gallery .linkbtn {
    margin: 0 auto;
    width: 300px;
}

.insta_toukou img {
    max-width: 225px;
    border-radius: 50%;
}

.intsa_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto 60px;
    max-width: 1400px;
    max-width: 100%;
}

.insta_toukou {
    padding: 10px;
}

.recruit_sec__text.about {
    background: #1d5ba8;
}

a.linkbtn.about {
    color: #1d5ba8 !important;
}

a.linkbtn.about::before {
    background-color: #1d5ba8 !important;
}

p.white_para {
    color: white;
}

.recruit_sec__img.about {
    background-image: url(../img/top_about_bnr.jpg);
}

@media screen and (max-width: 550px) {
    .insta_toukou img {
        max-width: 135px;
    }
}

h2.scrollreveal.minitext {
    font-size: 25px;
}

p.white_para.center {
    display: flex;
    justify-content: center;
    margin: 0 0 40px;
    text-align: center;
}

.canvas-container {
    position: relative;
    width: calc(100% - 40px);
    height: 300px;
    overflow: hidden;
    margin: 20px;
}

h2.tsuyomi_midashi {
    font-size: 25px;
    margin: 0 0 40px;
}

.tsuyomi_le {
    width: 50%;
}

.tsuyomi_ri {
    width: 50%;
}

.tsuyomi_inc {
    display: flex;
    max-width: 1100px;
    margin: 0 auto;
}

h3.tsuyomi_mini_midashi {
    font-size: 20px;
    margin-bottom: 20px;
}

.tsuyomi_parts {
    margin-bottom: 20px;
}

.tsuyomi_parts {
    margin-bottom: 20px;
    border-bottom: 1px solid;
}

p.tsuyomi_para {
    margin-bottom: 20px;
}

section.tsuyomi_area.btm {
    margin-top: 20px;
}

h3.tsuyomi_mini_midashi.b {
    color: #1d5ba6;
}

h3.tsuyomi_mini_midashi.g {
    color: #2aa789;
}

h3.tsuyomi_mini_midashi.r {
    color: #ba2652;
}

.inner_col {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

p.nakama_tex {
    margin-top: 15px;
    background: #1d5ba8;
    color: white;
    padding: 5px 30px 5px 30px;
}

section.graph_area {
    display: flex;
    align-items: center;
    max-width: 1100px;
    justify-content: center;
    margin: 0 auto;
    margin-top: 60px;
    margin-bottom: 60px;
    gap: 60px;
    flex-direction: column-reverse;
}

h3.jisseki_midashi {
    font-size: 30px;
    margin-bottom: 20px;
    border-bottom: 1px solid #1d5ba6;
    padding: 15px;
}

span.jisseki_number {
    font-size: 45px;
    color: #1f5ba3;
}

.graph_box img {
    max-width: 600px;
}

.jisseki_kensu {
    text-align: center;
}

@media screen and (max-width: 1100px) {
    .tsuyomi_inc {
        display: flex;
        margin: 0 auto;
        flex-direction: column;
        align-items: center;
    }

    .tsuyomi_ri {
        width: 90%;
    }

    h2.tsuyomi_midashi {
        font-size: 25px;
        margin: 0 0 40px;
        text-align: center;
        width: 100%;
    }
}

@media screen and (max-width: 769px) {
    .graph_box img {
        max-width: 90%;
        margin: 0 auto;
    }

    .inner_col {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
}

h3.center_midashi {
    margin-bottom: 40px;
    text-align: center;
}

.recruit_sec__img.about.rec_bk01 {
    background-image: url(../img/top_about_bnr00a.jpg);
}

.recruit_sec__img.rec_bk03 {
    background-image: url(../img/top_recruit_bnr00b.jpg);
}

h2.photo_midashi {
    margin: 0 0 40px;
    font-size: 25px;
    text-align: center;
}

@media screen and (min-width: 1100px) {
    .tsuyomi_le {
        background-image: url(../img/top_about_bnr00d.jpg);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: bottom;
    }
}

.tsuyomi_le.scrollreveal.noimg {
    background: none;
}

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

a#service-item__01 {
    padding: 100px;
    margin: -100px;
}

a#service-item__02 {
    padding: 250px;
    margin: -250px;
}

a#service-item__03 {
    padding: 250px;
    margin: -250px;
}

img.header_icon {
    width: 55px;
}

.header-main .header-nav .link-wrap a {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.service_area {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 60px auto 60px;
    max-width: 1000px;
    row-gap: 30px;
}

.service.item {
    display: flex;
    flex-direction: row;
    width: 100%;
}

.service.item.img_box {
    width: 50%;
}

.service.item .text_box {
    width: 90%;
}

.service.item .img_box img {
    width: 100%;
    /* padding: 50px 50px; */
    height: 100%;
    object-fit: cover;
    object-position: right;
}

.service.item.one .text_box {
    background: #1e5ba7;
    color: white;
    padding: 50px 50px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.service.item.two .text_box {
    background: #2aa889;
    color: white;
    padding: 50px 50px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.service.item.three .text_box {
    background: #ba2652;
    color: white;
    padding: 50px 50px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.service.item.one {
    display: flex;
    flex-direction: row-reverse;
    width: 100%;
}

.service.item.three {
    display: flex;
    flex-direction: row-reverse;
    width: 100%;
}

.img_box {
    width: 100%;
}

.item_number {
    font-size: 46px;
    font-family: "futura-pt";
    font-weight: bold;
}

span.item_midashi {
    font-size: 20px;
}

h2.secttl.center {
    text-align: center;
}

a.linkbtn.white {
    background: white;
}

a.linkbtn.white.blue {
    color: #1e5ba7;
}

a.linkbtn.white.green {
    color: #2aa889;
}

a.linkbtn.white.red {
    color: #ba2652;
}

p.center_paragraf {
    text-align: center;
}

.graph_box.scrollreveal {
    width: 100%;
}

.graph_contentbox {
    display: flex;
    justify-content: space-between;
    max-width: 800px;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
}

.graph_contentbox__image {
    width: 320px;
}

.graph_contentbox__image img {
    max-width: 100%;
    width: 100%;
}

.graph_contentbox__content {
    width: calc(100% - 370px);
}

.graph_contentbox__list {
}

.graph_contentbox__list li {
    margin: 0 0 10px;
    padding: 9px 0 9px 35px;
    position: relative;
}

.graph_contentbox__list li::before {
    content: '';
    position: absolute;
    left: 0;
    width: 24px;
    height: 24px;
    background: #000;
    border-radius: 90px;
    margin: auto;
    top: 1px;
    bottom: 0;
}

.graph_contentbox__list li.blue::before {
    background: #1f5ba3;
}

.graph_contentbox__list li.red::before {
    background: #28a587;
}

.graph_contentbox__list li.green::before {
    background: #ba2652;
}

.mv2 {
    padding: 94px 3% 188px;
    background-color: #2aa789;
    background-color: #000;
    background-image: url(../img/mv_photo.png);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: contain;
    position: relative;
    z-index: 0;
}

.mv2::before {
    content: '';
    background-image: url(../img/mv_moji.png);
    width: 880px;
    height: 446px;
    position: absolute;
    z-index: -1;
    margin: auto;
    top: 60px;
    bottom: 0;
    left: -11%;
    right: 0;
    left: auto;
    right: 0;
    background-repeat: no-repeat;
    background-size: contain;
    filter: hue-rotate(10deg);
    filter: brightness(140%);
}

.mv2 .inner {
    max-width: 1600px;
    max-width: 1000px;
    width: 100%;
    margin: 0;
    /* max-width: inherit; */
}

.mv2_text {
    /* background: #00000047; */
    /* background: linear-gradient(90deg,rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 90%); */
}

.mv2_text .t1 {
    color: #FFF;
    font-size: 22px;
    line-height: 1.8;
    font-family: "source-han-serif-jp-subset", sans-serif;
    font-weight: 400;
    font-style: normal;
    text-shadow: 3px 2px 3px #000;
}

.mv2_text .t2 {
    color: #FFF;
    font-weight: bold;
    font-size: 64px;
    line-height: 1;
    margin: 30px 0 60px;
    font-family: "source-han-sans-japanese", sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0.8rem;
    text-shadow: 3px 2px 3px #000;
}

.mv2_text .t3 {
    color: #FFF;
    font-size: 22px;
    line-height: 1.8;
    font-family: "source-han-serif-jp-subset", sans-serif;
    font-weight: 400;
    font-style: normal;
    text-shadow: 3px 2px 3px #000;
}

.insta-snap {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto 50px;
}

.media-grid .media-list-item {
    /* display:none; */
}

.insta-snap .thumbnail-image img {
    /* border-radius: 50% !important; */
}

.insta-snap .caption-overlay {
    /* border-radius: 50% !important; */
}

@media screen and (max-width: 1600px) {
    .mv2_text .t1 {
        font-size: 20px;
    }

    .mv2_text .t2 {
        font-size: 50px;
        letter-spacing: 0.6rem;
    }

    .mv2_text .t3 {
        font-size: 20px;
    }
}

@media screen and (max-width: 1300px) {
    .mv2 {
        padding: 72% 3% 40px;
        background-size: contain;
        background-position: top center;
        background-image: url(../img/mv_photo_sp.png);
    }

    .mv2::before {
        left: 0;
        width: 660px;
        height: 335px;
        right: auto;
        bottom: auto;
        top: 18%;
    }

    .mv2_text .t1 {
        font-size: 18px;
    }

    .mv2_text .t2 {
        font-size: 46px;
        letter-spacing: 0.6rem;
    }

    .mv2_text .t3 {
        font-size: 18px;
    }

    .mv2 .inner {
        max-width: 760px;
    }
}

@media screen and (max-width: 1280px) {
    .mv2 {
        /* background-size: cover; */
    }

    .mv2_text {
        background: #00000000;
    }
}

@media screen and (max-width: 1080px) {
    .mv2 .inner {
    }

    .mv2_text {
    }

    .mv2_text .t1 {
        font-size: 20px;
    }

    .mv2_text .t2 {
        font-size: 60px;
        letter-spacing: 0.6rem;
    }

    .mv2_text .t3 {
        font-size: 20px;
    }
}

@media screen and (max-width: 1000px) {
    .mv2 {
    }

    .mv2::before {
    }

    .mv2 .inner {
    }

    .mv2_text {
    }

    .mv2_text .t1 {
    }

    .mv2_text .t2 {
        font-size: 50px;
        letter-spacing: 0.5rem;
    }

    .mv2_text .t3 {
    }
}

@media screen and (max-width: 820px) {
    .mv2 {
    }

    .mv2::before {
        width: 440px;
        height: 223px;
    }

    .mv2 .inner {
    }

    .mv2_text {
    }

    .mv2_text .t1 {
        font-size: 16px;
    }

    .mv2_text .t2 {
        font-size: 40px;
    }

    .mv2_text .t3 {
        font-size: 16px;
    }
}

@media screen and (max-width: 700px) {
    .mv2 {
    }

    .mv2::before {
        top: 15%;
    }

    .mv2 .inner {
    }

    .mv2_text {
    }

    .mv2_text .t1 {
    }

    .mv2_text .t2 {
        font-size: 30px;
    }

    .mv2_text .t3 {
    }
}

@media screen and (max-width: 540px) {
    .mv2 {
    }

    .mv2::before {
        top: 12%;
    }

    .mv2 .inner {
    }

    .mv2_text {
    }

    .mv2_text .t1 {
        font-size: 14px;
    }

    .mv2_text .t2 {
        font-size: 28px;
        letter-spacing: 0.3rem;
    }

    .mv2_text .t3 {
        font-size: 14px;
    }
}

@media screen and (max-width: 450px) {
    .mv2 {
    }

    .mv2::before {
        top: 12%;
        width: 330px;
        height: 167px;
    }

    .mv2 .inner {
    }

    .mv2_text {
    }

    .mv2_text .t1 {
        font-size: 12px;
    }

    .mv2_text .t2 {
        font-size: 24px;
        letter-spacing: 0.3rem;
    }

    .mv2_text .t3 {
        font-size: 12px;
    }
}

@media screen and (max-width: 400px) {
    .mv2 {
    }

    .mv2::before {
    }

    .mv2 .inner {
    }

    .mv2_text {
    }

    .mv2_text .t1 {
        font-size: 10px;
    }

    .mv2_text .t2 {
        font-size: 20px;
        margin: 15px 0 30px;
    }

    .mv2_text .t3 {
        font-size: 10px;
    }
}

.entry-contents h2 {
    font-size: 38px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.2rem;
    padding: 0px 0 30px 0px;
    margin: 40px auto 60px;
    color: #000000;
    display: block;
    width: 100%;
    text-align: center;
    position: relative;
}

.entry-contents h2.has-text-align-left {
    text-align: left;
}

.entry-contents h2::after {
    content: " ";
    width: 28%;
    width: 300px;
    display: block;
    height: 4px;
    position: absolute;
    bottom: 0;
    background: rgb(0,0,0);
    background: #2aa789;
    left: 0;
    right: 0;
    margin: auto;
}

.entry-contents h2.has-text-align-left::after {
    right: auto;
}

.entry-contents h2.white {
    color: #FFF;
}

.entry-contents h2:first-letter {
}

.entry-contents h3 {
    font-size: 24px;
    font-weight: bold;
    margin: 40px auto 20px;
    letter-spacing: 0.1rem;
    padding: 0 0;
    color: #2aa789;
    position: relative;
}

.entry-contents h3.bd {
    padding: 20px 0 20px;
    font-size: 20px;
    margin: 0 0 20px;
}

.entry-contents h3.bd::before {
    content: " ";
    width: 100%;
    display: block;
    height: 4px;
    position: absolute;
    top: 0;
    background: rgb(0,0,0);
    background: #2aa789;
    left: 0;
    right: 0;
    margin: auto;
}

.entry-contents h3.bd::after {
    content: " ";
    width: 100%;
    display: block;
    height: 4px;
    position: absolute;
    bottom: 0;
    background: rgb(0,0,0);
    background: #2aa789;
    left: 0;
    right: 0;
    margin: auto;
}

.entry-contents .wp-block-column {
    /* text-align: center; */
    /* border: 2px solid #025daf; */
    margin: 0 0 10px;
    /* box-shadow: 0 0 10px #c3c3c3; */
    /* padding: 20px; */
}

.entry-contents .wp-block-column p {
    margin: 0;
}

.entry-contents h4 {
    color: #2aa789;
    font-weight: bold;
    font-size: 18px;
    margin: 20px 0 10px;
    line-height: 1.4;
    border-bottom: 1px solid #2aa789;
}

.entry-contents h5 {
    color: #2aa789;
    font-weight: bold;
    font-size: 16px;
    margin: 20px 0 10px;
    line-height: 1.4;
}

.entry-contents h6 {
    color: #2aa789;
    font-weight: bold;
    font-size: 14px;
    margin: 20px 0 10px;
    line-height: 1.4;
}

.entry-contents p {
    margin: 0px 0 30px;
    font-size: 16px;
    line-height: 2;
}

.entry-contents p small {
    font-size: 12px;
}

.entry-contents figure {
    margin: 40px auto;
}

.entry-contents ul {
    padding: 0 0 0 20px;
    margin: 30px 0;
}

.entry-contents li {
    font-size: 16px;
    margin: 0 0 3px;
}

.entry-contents ul li {
    list-style: disc;
}

.entry-contents ol li {
    list-style: auto;
}

.entry-contents ol {
    padding: 0 0 0 20px;
    margin: 30px 0;
}

.entry-contents .table {
}

.entry-contents table {
    width: 100%;
    margin: 30px 0;
}

.entry-contents tr:first-child th, .entry-contents tr:first-child td {
}

.entry-contents th {
    border: 1px solid #000;
    border-left: none;
    border-right: none;
    padding: 15px 20px;
    text-align: left;
    font-size: 16px;
}

.entry-contents td {
    border: 1px solid #000;
    border-left: none;
    border-right: none;
    padding: 16px 20px;
    font-size: 16px;
    line-height: 2;
    min-width: 180px;
}

.entry-contents .name-position {
    margin: 0;
    font-size: 12px;
}

.entry-contents .name-jp {
    margin: 0;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
}

.entry-contents .name-en {
    margin: 0;
    font-size: 12px;
}

.entry-contents .wp-block-media-text__media {
}

.entry-contents .wp-block-media-text__media img {
    border-radius: 4px;
    margin: 0 0 20px;
    border: 1px solid #e5e5e5;
}

.entry-contents .wp-block-media-text {
    margin: 0 0 40px;
    padding: 20px 10px;
    border-bottom: 1px solid #ddd;
    /* background: #f7f7f7; */
}

.entry-contents .wp-block-image {
    padding: 0 0px;
    margin: 0 0 40px;
}

.service-area__section {
    padding: 100px 3%;
}

.service-area__items {
    margin: 40px auto 0;
    max-width: 1200px;
    width: 100%;
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto auto;
    grid-template-areas: "one four five" "two three six";
    gap: 0px;
}

.service-area__item-1 {
    grid-area: one;
}

.service-area__item-2 {
    grid-area: two;
}

.service-area__item-3 {
    grid-area: three;
}

.service-area__item-4 {
    grid-area: four;
}

.service-area__item-5 {
    grid-area: five;
}

.service-area__item-6 {
    grid-area: six;
}

.service-area__item {
    display: flex;
    flex-direction: column;
}

.service-area__item.img {
    display: block;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.service-area__item.txt {
    padding: 30px;
    color: #FFF;
}

.service-area__item:nth-child(3n+2) .service-area__item.txt {
    order: -1;
}

.service-area__item.txt.blue {
    background: #1e5ba7;
}

.service-area__item.txt.green {
    background: #2aa889;
}

.service-area__item.txt.red {
    background: #ba2652;
}

.service-area__item.txt span {
    font-size: 46px;
    font-family: "futura-pt";
    font-weight: bold;
    display: block;
    margin: 0 0 10px;
}

.service-area__item.txt h3 {
    font-size: 20px;
    margin: 0 0 20px;
    line-height: 1.4;
}

.service-area__item.txt p {
    line-height: 1.9;
}

.service-area__item.txt .linkbtn {
    width: 100%;
}
