@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Lexend:wght@700&family=Noto+Sans+JP:wght@500;700&display=swap");

:root {
    --root-font-size: 16;
}

@media screen and (max-width:767px) {
    :root {
        --root-font-size: 18;
    }
}

@media screen and (max-width:414px) {
    :root {
        --root-font-size: 20.5;
    }
}

main {
    background: #F6F6F6;
}

p {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    padding-bottom: 10px;
}

.sp {
    display: none;
}

.MainVisual {
    background: #fff;
    overflow: hidden;
}

.MainVisualImage {
    max-width: 1920px;
    margin: 0 auto;
    position: relative;
}

.MainVisualImage__item {
    text-align: center;
    background: #FEFDEF;
    position: relative;
}

.company .MainVisualImage__item-title {
    background: #66C2AE;
    max-width: 800px;
    width: 42.66%;
    height: 550px;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
    border-radius: 0 50px 50px 0;
    color: #fff;
    transform: translateY(-50%);
    padding-top: 5.93%;
    padding-right: 3.33%;
    padding-left: 7.135%;
    padding-bottom: 1.04%;
}

.MainVisualImage__item-title .Lang--en {
    font-size: calc(80 / var(--root-font-size) * 1rem);
    line-height: 1;
}

.item-title-sub {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    font-weight: 700;
    padding-bottom: 90px;
}

.item-title-text {
    font-size: calc(24 / var(--root-font-size) * 1rem);
    font-weight: bold;
}

.fukidashi-pc img,
.fukidashi-sp img {
    width: 100%;
}

.company .MainVisual__container--fukidashi-01 {
    position: absolute;
    transition: all 0.3s ease 0s;
    top: calc(100% * 0.19);
    left: calc(100% * 0.78);
    width: 13.69%;
}

.company .MainVisual__container--fukidashi-02 {
    position: absolute;
    transition: all 0.3s ease 0s;
    top: calc(100% * 0.56);
    left: calc(100% * 0.58);
    width: 13.33%;
}

.company .MainVisual__container--fukidashi-03 {
    position: absolute;
    transition: all 0.3s ease 0s;
    bottom: calc(100% * 0.19);
    left: calc(100% * 0.85);
    width: 13.33%;
}

.company .MainVisual__container--fukidashi-01:hover,
.company .MainVisual__container--fukidashi-02:hover,
.company .MainVisual__container--fukidashi-03:hover {
    transform: translateY(-3px);
    filter: drop-shadow(0px 3px 6px #aaa);
}

.Service .MainVisualImage__item-title {
    background: #FB8072;
    max-width: 800px;
    width: 42.66%;
    height: 550px;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
    border-radius: 0 50px 50px 0;
    color: #fff;
    transform: translateY(-50%);
    padding-top: 5.93%;
    padding-right: 3.33%;
    padding-left: 7.135%;
    padding-bottom: 1.04%;
}

.Service .MainVisual__container--fukidashi-01 {
    position: absolute;
    transition: all 0.3s ease 0s;
    top: calc(100% * 0.19);
    left: calc(100% * 0.63);
    width: 14.010%;
}

.Service .MainVisual__container--fukidashi-02 {
    position: absolute;
    transition: all 0.3s ease 0s;
    top: calc(100% * 0.58);
    left: calc(100% * 0.66);
    width: 15.67%;
}

.Service .MainVisual__container--fukidashi-03 {
    position: absolute;
    transition: all 0.3s ease 0s;
    bottom: calc(100% * 0.10);
    left: calc(100% * 0.45);
    width: 11.45%;
}

.Service .MainVisual__container--fukidashi-01:hover,
.Service .MainVisual__container--fukidashi-02:hover,
.Service .MainVisual__container--fukidashi-03:hover {
    transform: translateY(-3px);
    filter: drop-shadow(0px 3px 6px #aaa);
}

section.LayoutSection.ServiceFlow {
    background: #fff;
    padding: 147px 0 150px;
}

section.LayoutSection.ServiceStrength {
    padding: 100px 0;
}

.SectionInnerWrap {
    max-width: 1620px;
    width: 100%;
    margin: 0 auto;
}

.SectionInner {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}

.h2-sub {
    font-size: calc(21 / var(--root-font-size) * 1rem);
}

h3.title-green {
    font-size: calc(34 / var(--root-font-size) * 1rem);
    color: #117A25;
    padding-bottom: 50px;
}

h3.SectionTitle__text.title-green {
    color: #1EAA39;
    font-size: calc(44 / var(--root-font-size) * 1rem);
}

.h3-sub {
    color: #1EAA39;
    font-size: calc(19 / var(--root-font-size) * 1rem);
    font-weight: bold;
}

.Service span.SectionTitle__container,
.Service h3.title-green {
    padding-bottom: 0;
}

.Service .SectionTitle.SectionTitle--textCenter {
    padding-bottom: 71px;
}

.Flow__child {
    display: flex;
    gap: 30px;
    align-items: flex-start;
    align-items: stretch;
}

.Flow__childStep {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-shrink: 0;
    transition: 0.3s opacity, 0.3s transform;
    opacity: 0;
    transform: translateY(40px);
    align-items: center;
    gap: 15px;
    padding-bottom: 15px;
}

.Flow__childText_text {
    background: #FEFDEF;
    padding: 20px;
    border-radius: 10px;
    font-size: 1.125rem;
    font-weight: 700;
}

.Flow__childText_title {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 10px;
}

.Flow__childText {
    flex-grow: 1;
}

.ServiceStrength .SectionTitle {
    padding-bottom: 100px;
}

.ServiceStrength__content {
    display: flex;
    flex-direction: column;
    gap: 100px 0;
}

.ServiceStrength__content--child {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 8%;
    gap: 5%;
}

.ServiceStrength__content--img {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

h3.title-green02 {
    color: #117A25;
    font-size: calc(50 / var(--root-font-size) * 1rem);
    font-weight: 700;
}

h3.title-green02:after {
    content: "";
    display: block;
    border-bottom: 2px solid #117A25;
    width: 64px;
    margin: 40px auto 30px;
}

.ServiceStrength .SectionInner {
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
    padding: 50px 100px;
    background: #fff;
}

.ServiceStrength__content--text {
    flex-basis: 533px;
    font-size: calc(18 / var(--root-font-size) * 1rem);
    font-weight: 700;
}

.ServiceStrength__content--text p {
    padding-bottom: 10px;
    font-size: calc(18 / var(--root-font-size) * 1rem);
}

section.LayoutSection.Service {
    background: #fff;
    padding: 150px 0 100px;
}

.Service__content {
    display: flex;
    justify-content: center;
    gap: 5%;
}

.Service__content div {
    transition: all 0.3s ease 0s;
}

.Service__content div:hover {
    transform: translateY(-5px);
    filter: drop-shadow(0px 3px 6px #aaa);
}

span.SectionTitle__container {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: 70px;
}

section.LayoutSection.CompanyPhilosophy {
    background: #fff;
    padding: 185px 0 150px;
}

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

.CompanyPhilosophyContent__contents p {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    line-height: 40px;
}

.CompanyPhilosophyContentImage {
    margin-right: 16%;
}

section.LayoutSection.CompanyItem {
    background: #FEFDEF;
}

.CompanyItem .Item-child {
    background: #fff;
    padding: 15px 30px;
    margin-bottom: 20px;
    font-size: calc(24 / var(--root-font-size) * 1rem);
    text-indent: -5rem;
    padding-left: calc(30px + 4em);
}

span.item-num {
    font-size: calc(24 / var(--root-font-size) * 1rem);
    color: #FB8072;
    font-weight: 700;
}

span.item-num:after {
    content: "|";
    padding: 0 30px 0 16px;
}

section.LayoutSection.CompanyAbout {
    background: #fff;
    padding: 140px 0;
}

figure.CompanyAboutContentImage {
    width: 32.3%;
}

.CompanyAboutContent__contents {
    position: relative;
}

.CompanyAboutContent__table {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    line-height: 32px;
}

.CompanyAboutContent__table p {
    font-size: calc(18 / var(--root-font-size) * 1rem);
}

.CompanyAboutContent__table table {
    width: 100%;
}

.CompanyAboutContent__table tr {
    border-top: 1px dashed #707070;
    border-bottom: 1px dashed #707070;
}

.CompanyAboutContent__table th {
    color: #888888;
    font-weight: 700;
    padding: 40px 40px 40px 0;
    width: 170px;
    text-align: initial;
    vertical-align: top;
}

.CompanyAboutContent__table td {
    padding: 40px 40px 40px 0;
}

.text-green {
    color: #117A25;
    font-size: inherit !important;
}

section.LayoutSection.CompanyAccess {
    background: #fff;
}

section.LayoutSection.CompanyAccess .CompanyAccessContent__contents {
    position: relative;
}

figure.CompanyAccessContentImage {
    position: absolute;
    right: 60px;
    top: 60px;
}

section.LayoutSection.CompanyAccess .access__content {
    background: #FEFDEF;
    padding: 50px 60px;
    border-radius: 30px;
    margin-bottom: 50px;
}

.access__content .access__content--top {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 31px;
}

.access__content--map {
    position: relative;
    padding-top: 62.5%;
    width: 100%;
    height: 100%;
}

.access__content--map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.access__content .access__content--top .access-title {
    color: #117A25;
    font-size: calc(30 / var(--root-font-size) * 1rem);
    font-weight: 700;
}

.access__content .access__content--top .access-address-top {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    font-weight: 700;
    padding-bottom: 21px;
}

.access-address-bottom {
    color: #888888;
    font-size: calc(18 / var(--root-font-size) * 1rem);
}

.network .MainVisualImage__item-title {
    background: #FB8072;
    max-width: 800px;
    width: 42.66%;
    height: 345px;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
    border-radius: 0 50px 50px 0;
    color: #fff;
    transform: translateY(-50%);
    padding-top: 5.93%;
    padding-right: 3.33%;
    padding-left: 7.135%;
    padding-bottom: 1.04%;
}

.MainVisualImage__item-title .main-title {
    font-size: calc(50 / var(--root-font-size) * 1rem);
    font-weight: 700;
    line-height: 1;
    padding-bottom: 52px;
}

section.LayoutSection.Network .Network__child {
    padding: 40px 50px;
    margin-bottom: 50px;
    position: relative;
    background: url(../img/network/bg-obi-blue.svg) no-repeat #fff;
    background-position: right top;

}

section.LayoutSection.Network .Network__child--content {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.Network__child--title {
    font-size: calc(42 / var(--root-font-size) * 1rem);
    font-weight: 700;
    padding-bottom: 20px;
}

.Network__child-text {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    flex-basis: 1010px;
}

.Network__child-text ol li {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    text-indent: -1em;
    padding-left: 1em;
}

.Network span.title-num {
    font-size: calc(47 / var(--root-font-size) * 1rem);
    color: #679FCA;
    font-weight: 700;
}

.Network span.title-num:after {
    content: "|";
    padding: 0 30px 0 34px;
    position: relative;
    top: -3px;
}

.Network__child-img {
    padding-left: 80px;
    flex-shrink: 0;
}

.fukidashi-title {
    font-size: 18px;
    font-weight: 700;
    color: #66C2AE;
}

.fukidashi-link a {
    padding-right: 15px;
}

.fukidashi-link a:hover {
    opacity: 0.6;
}

.Network__child-fukidashi {
    position: relative;
    padding: 20px 30px;
    border: 4px solid #66C2AE;
    border-radius: 30px;
    display: inline-block;
    margin-top: 40px;
}

.Network__child-fukidashi:before {
    position: absolute;
    top: -24px;
    left: 40px;
    width: 0;
    height: 0;
    content: '';
    border-width: 0 10px 20px 10px;
    border-style: solid;
    border-color: transparent transparent #66C2AE transparent;
}

.Network__child-fukidashi:after {
    position: absolute;
    top: -16px;
    left: 40px;
    width: 0;
    height: 0;
    content: '';
    border-width: 0 10px 20px 10px;
    border-style: solid;
    border-color: transparent transparent #fff transparent;
}

.Network__child-text .text-green {
    font-weight: 700;
    font-size: calc(24 / var(--root-font-size) * 1rem) !important;
    padding-bottom: 21px;
}

.Network__child-text-content {
    padding-bottom: 71px;
}

section.LayoutSection.Contact {
    background: #fff;
    padding: 106.1px 0;
}

section.LayoutSection.Contact .Contact__content {
    /* display: flex; */
    position: relative;
}

/* .Contact__content-img {
    padding: 0 163px 0 120px;
} */

.Contact__content-img {
    padding-left: 120px;
    position: absolute;
}

.Contact__content-tel {
    font-size: calc(60 / var(--root-font-size) * 1rem);
    font-weight: 700;
    font-family: "Lexend", "游ゴシック Medium", "Yu Gothic", YuGothic, YuGothicMedium, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
}

.Contact__content-text {
    text-align: center;
}

.Contact__content-title {
    color: #8DC21F;
    font-size: calc(18 / var(--root-font-size) * 1rem);
    font-weight: 700;
}

.Contact__content-title:before {
    content: "";
    background: url(../img/network/bg-contact-left.svg) no-repeat;
    display: inline-block;
    width: 11px;
    height: 17px;
    margin-right: 10px;
}

.Contact__content-title:after {
    content: "";
    background: url(../img/network/bg-contact-right.svg) no-repeat;
    display: inline-block;
    width: 11px;
    height: 17px;
    margin-left: 10px;
}

.Contact__content-tel:before {
    content: "";
    background: url(../img/network/pict-tel.svg) no-repeat;
    display: inline-block;
    width: 39.3px;
    height: 50.5px;
    margin-right: 21px;
}

.BaseButton.Contact-button__link {
    max-width: 350px;
    margin: 0 auto;
    width: 100%;
    cursor: pointer;
}

.EnergySaving .MainVisualImage__item-title {
    background: #FB8072;
    max-width: 800px;
    width: 42.66%;
    height: 345px;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
    border-radius: 0 50px 50px 0;
    color: #fff;
    transform: translateY(-50%);
    padding-top: 5.93%;
    padding-right: 3.33%;
    padding-left: 7.135%;
    padding-bottom: 1.04%;
}

.EnergySaving span.title-num {
    font-size: calc(47 / var(--root-font-size) * 1rem);
    color: #FA7482;
    font-weight: 700;
}

.EnergySaving span.title-num:after {
    content: "|";
    padding: 0 30px 0 34px;
}

section.LayoutSection.EnergySaving .EnergySaving__child--content {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 117px;
}

section.LayoutSection.EnergySaving .EnergySaving__child {
    padding: 40px 50px;
    margin-bottom: 50px;
    position: relative;
    background: url(../img/energy/bg-obi-pink.svg) no-repeat #fff;
    background-position: right top;
}

.EnergySaving__child-text {
    flex-basis: 1010px;
}

.EnergySaving__child-img {
    padding: 0 0 20px 75px;
    flex-shrink: 0;
}

.EnergySaving__child--title {
    font-size: calc(42 / var(--root-font-size) * 1rem);
    font-weight: 700;
    padding-bottom: 20px;
}

.EnergySaving-benefit h3.title-green02 {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: calc(30 / var(--root-font-size) * 1rem);
}

.EnergySaving-benefit h3.title-green02:after {
    width: 30px;
    margin: 11px 0 22px;
}

.benefit {
    font-size: calc(24 / var(--root-font-size) * 1rem);
    color: #FB8072;
    font-weight: 700;
    padding-bottom: 20px;
    text-indent: -4em;
    padding-left: 4em;
}

.EnergySaving-benefit .Item-child {
    background: #FEFDEF;
    padding: 21px 20px;
    margin-bottom: 20px;
}

.EnergySaving__child-01 .EnergySaving-img {
    margin-bottom: 101px;
}

.EnergySaving-text {
    text-align: center;
}

.EnergySaving-text-01 {
    font-size: calc(40 / var(--root-font-size) * 1rem);
    font-weight: 700;
    padding-bottom: 53px;
}

.EnergySaving-text-01 .EnergySaving-red01 {
    color: #FF3A4F;
    font-size: calc(50 / var(--root-font-size) * 1rem);
}

.EnergySaving-text-02 {
    font-size: calc(50 / var(--root-font-size) * 1rem);
    font-weight: 700;
}

.EnergySaving-text-02 .EnergySaving-red02 {
    color: #FF3A4F;
    font-size: calc(65 / var(--root-font-size) * 1rem);
}

.EnergySaving-text-03 {
    font-size: calc(40 / var(--root-font-size) * 1rem);
    font-weight: 700;
}

.EnergySaving-text-03 .EnergySaving-red01 {
    color: #FF3A4F;
    font-size: calc(50 / var(--root-font-size) * 1rem);
}

.EnergySaving-text-02 .EnergySaving-red01 {
    color: #FF3A4F;
    font-size: calc(50 / var(--root-font-size) * 1rem);
}

.EnergySaving-flex {
    display: flex;
    justify-content: space-between;
    padding: 0 129px;
    align-items: center;
    gap: 20px;
}

section.LayoutSection.EnergySaving .EnergySaving__child-02 .EnergySaving__child--content {
    padding-bottom: 0;
}

.Security .MainVisualImage__item-title {
    background: #FB8072;
    max-width: 800px;
    width: 42.66%;
    height: 345px;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
    border-radius: 0 50px 50px 0;
    color: #fff;
    transform: translateY(-50%);
    padding-top: 5.93%;
    padding-right: 3.33%;
    padding-left: 7.135%;
    padding-bottom: 1.04%;
}

section.LayoutSection.Security .Security__child--content {
    display: flex;
    justify-content: space-between;
    padding-bottom: 117px;
    gap: 20px;
}

section.LayoutSection.Security .Security__child {
    padding: 40px 50px;
    margin-bottom: 50px;
    position: relative;
    background: url(../img/security/bg-obi-green.svg) no-repeat #fff;
    background-position: right top;
}

.Security__child-img {
    padding: 0 0 20px 75px;
    flex-shrink: 0;
}

.Security__child-text {
    flex-basis: 1000px;
}

.Security__child--title {
    font-size: calc(42 / var(--root-font-size) * 1rem);
    font-weight: 700;
    padding-bottom: 20px;
}

.Security span.title-num {
    font-size: calc(47 / var(--root-font-size) * 1rem);
    color: #66C2AE;
    font-weight: 700;
}

.Security span.title-num:after {
    content: "|";
    padding: 0 30px 0 34px;
}

.Security h3.title-green02 {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: calc(30 / var(--root-font-size) * 1rem);
    padding-bottom: 50px;
}

.Security h3.title-green02:after {
    width: 30px;
    margin: 11px 0 22px;
}

.Security-img {
    display: flex;
    flex-direction: column;
    max-width: 1080px;
    margin: 0 auto;
}

.Security__child-01 {
    padding-bottom: 31px;
    flex-shrink: 0;
    align-self: center;
}

.Security__child-02 {
    z-index: 1;
    width: 20.18%;
    margin-left: 10%;
}

.Security__child-03 {
    margin-top: -14%;
    align-self: center;
}

.News .MainVisualImage__item-title {
    background: #679FCA;
    max-width: 800px;
    width: 42.66%;
    height: 345px;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
    border-radius: 0 50px 50px 0;
    color: #fff;
    transform: translateY(-50%);
    padding-top: 5.93%;
    padding-right: 3.33%;
    padding-left: 7.135%;
    padding-bottom: 1.04%;
}

section.LayoutSection.News {
    padding: 100px 0 70px;
    background: #fff;
}

section.LayoutSection.News div.News__container {
    display: flex;
    flex-wrap: wrap;
    gap: 60px;
}

section.LayoutSection.News .News__container--child {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    background: #FEFDEF;
    border-radius: 30px;
    padding: 30px;
    font-weight: 700;
    box-shadow: 3px 3px 0 #ECE7A4;
}

section.LayoutSection.News .News__container--child .News__container--child-img {
    padding-bottom: 30px;
    position: relative;
    padding-top: 62.090909%;
}
section.LayoutSection.News .News__container--child .News__container--child-img img{
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: center;
    position: absolute;
    top: 0;
    left: 0;
}
.date {
    color: #8DC21F;
    padding-bottom: 9px;
}

nav.navigation.pagination {
    text-align: center;
    margin: 70px 0;
}

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

.nav-links ul {
    display: flex
}
ul.page-numbers{
    border: 3px solid #8DC21F;
    border-radius: 10px 10px 10px 10px;
}
ul.page-numbers li {
    font-size: calc(24 / var(--root-font-size) * 1rem);
    font-weight: 700;
    border-left: 3px solid #8DC21F;

}
ul.page-numbers li:first-child{
    border-left: none;
}
ul.page-numbers li:first-child span,ul.page-numbers li:first-child a{
    border-radius: 9px 0 0 9px;
}

ul.page-numbers li:last-of-type span,ul.page-numbers li:last-of-type a{
    border-radius: 0 9px 9px 0 ;
}
ul.page-numbers li a {
    color: #8DC21F;
    font-weight: 700;
    padding: 15px 23px;
}

ul.page-numbers li a,
span.page-numbers.dots {
    color: #8DC21F;
    font-weight: 700;
    padding: 15px 23px;
    display: block;
}


ul.page-numbers li:first-child,
span.page-numbers.dots {
    cursor: default;
}

span.page-numbers.current {
    color: #8DC21F;
    background: #F5EE6C;
    padding: 15px 23px;
    cursor: default;
    display: block;
}

/* Text meant only for screen readers. */
.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
    /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
    background-color: #eee;
    clip: auto !important;
    clip-path: none;
    color: #444;
    display: block;
    font-size: 1em;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
}

.NewsSingle section.LayoutSection.News {
    padding: 100px 0 150px;
}


article.News__container {
    font-size: calc(18 / var(--root-font-size) * 1rem);
}

.title-wrap {
    background: #FEFDEF;
    padding: 20px;
    margin-bottom: 40px;
}

article.News__container .title-wrap h2 {
    font-size: calc(18 / var(--root-font-size) * 1rem);
}

.recruit .MainVisualImage__item-title {
    background: #FA7482;
    max-width: 800px;
    width: 42.66%;
    height: 550px;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
    border-radius: 0 50px 50px 0;
    color: #fff;
    transform: translateY(-50%);
    padding-top: 5.93%;
    padding-right: 3.33%;
    padding-left: 7.135%;
    padding-bottom: 1.04%;
}

section#RecruitGreeting {
    background: #fff;
}

.RecruitGreetingContent__container {
    display: flex;
    justify-content: space-between;
    gap: 40px;
}

.RecruitGreetingContent__contents {
    flex-basis: 1133px;
}

.recruit .MainVisual__container--fukidashi-01 {
    position: absolute;
    transition: all 0.3s ease 0s;
    top: calc(100% * 0.19);
    left: calc(100% * 0.61);
    width: 10.72%;
}

.recruit .MainVisual__container--fukidashi-02 {
    position: absolute;
    transition: all 0.3s ease 0s;
    bottom: calc(100% * 0.19);
    left: calc(100% * 0.47);
    width: 15.20%;
}

.recruit .MainVisual__container--fukidashi-03 {
    position: absolute;
    transition: all 0.3s ease 0s;
    bottom: calc(100% * 0.02);
    right: calc(100% * 0.21);
    width: 13.17%;
}

.recruit .MainVisual__container--fukidashi-01:hover,
.recruit .MainVisual__container--fukidashi-02:hover,
.recruit .MainVisual__container--fukidashi-03:hover {
    transform: translateY(-3px);
    filter: drop-shadow(0px 3px 6px #aaa);
}

.RecruitGreetingContent__contents h4 {
    font-size: calc(24 / var(--root-font-size) * 1rem);
    color: #FA7482;
    padding-bottom: 30px;
}

.RecruitGreetingContent__contents--message {
    margin-bottom: 50px;
}

.RecruitGreetingContent__contents .sign {
    float: right;
}

.RecruitGreetingContent__contents .sign img {
    margin-left: 44px;
}

section#RecruitVoice {
    padding: 100px 40px;
}

.voiceCard__top--text .voiceCard__top--name {
    padding-bottom: 11px;
    font-size: calc(30 / var(--root-font-size) * 1rem);
    font-weight: 700;
}

.voiceCard__top--text .voiceCard__top--info {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    color: #8DC21F;
    font-weight: 700;
    padding-bottom: 31px;
}

.RecruitVoiceContent__container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 80px;
}

.voice__card {
    background: #fff;
    border-radius: 30px;
    padding: 32px 30px 60px;
    box-shadow: 3px 3px #CFCFCF;
    width: calc(100% / 2 - (80px / 2));
}

.voiceCard__top {
    display: flex;
    margin-bottom: 30px;
}

figure.RecruitVoiceContentImage {
    padding-right: 20px;
}

.voiceCard__top--title {
    font-size: calc(22 / var(--root-font-size) * 1rem);
    font-weight: 700;
}

.voiceCard__message {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    line-height: 32px;
}

section#RecruitJob {
    background: #fff;
}

.RecruitJob h3.title-green02 {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: calc(30 / var(--root-font-size) * 1rem);
    padding-bottom: 50px;
}

.RecruitJob h3.title-green02:after {
    width: 30px;
    margin: 11px 0 22px;
}

.RecruitJobContent__contents .schedule__time {
    background: #FEFDEF;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1000px;
    margin: 0 auto;
    border-radius: 126px;
    padding: 50px 60px 50px 80px;
    position: relative;
}

.RecruitJobContent__contents.content__schedule {
    margin-bottom: 150px;
}

.schedule__time.schedule__time:not(.schedule__time-03):after {
    content: "";
    background: #888888;
    display: block;
    width: 10px;
    height: 50px;
    position: absolute;
    bottom: -54px;
    left: 50%;
    transform: translateX(-50%);
}

.RecruitJobContent__contents .schedule__time-01 {
    border: 4px solid #FB8072;
    margin-bottom: 50px;
}

.RecruitJobContent__contents .schedule__time-02 {
    border: 4px solid #66C2AE;
    margin-bottom: 50px;
}

.RecruitJobContent__contents .schedule__time-03 {
    border: 4px solid #67B2CA;
}

.schedule__time--img {
    flex-shrink: 0;
}

.schedule__time--text {
    font-size: calc(18 / var(--root-font-size) * 1rem);
    line-height: 32px;
    flex-basis: 630px;
}

.schedule-time {
    font-size: calc(24 / var(--root-font-size) * 1rem);
    padding-bottom: 20px;
    display: flex;
    align-items: center;
}

.schedule-time:before {
    content: "";
    background: url(../img/common/pict-time.svg);
    display: inline-block;
    width: 20px;
    height: 23.62px;
    margin-right: 12px;
}

.schedule__career--wrap {
    position: relative;
    max-width: 1050px;
    margin: 0 auto;
}

.schedule__career--wrap:before {
    content: "";
    display: block;
    padding-top: 134%;
}

.schedule__career.schedule__career-01 {
    position: absolute;
    top: 0;
    left: 0;
    width: 40.95%;
}

.schedule__career.schedule__career-border-01 {
    position: absolute;
    top: 0;
    left: calc(100% * 0.4095);
    padding-top: 35%;
    width: 16.76%;
}

.schedule__career.schedule__career-02 {
    position: absolute;
    top: 0;
    right: 0;
    padding-top: 23%;
    width: 50.47%;
}

.schedule__career.schedule__career-border-02 {
    position: absolute;
    top: 0;
    /* left: 430px; */
    left: calc(100% * 0.4095);
    padding-top: 68%;
    width: 15.7%;
}

.schedule__career.schedule__career-03 {
    position: absolute;
    top: 0;
    /* left: 15px; */
    left: 0.14%;
    padding-top: 67%;
    width: 72.95%;
}

section#RecruitRecruiting {
    background: #fff;
}

.RecruitRecruitingContent__contents {
    display: flex;
    justify-content: space-between;
    gap: 40px;
}

.RecruitRecruitingContent__contents:first-of-type {
    margin-bottom: 150px;
}

.RecruitRecruitingContent__contents--detail {
    flex-basis: 1000px;
}

figure.RecruitRecuitingContentImage {
    padding-left: 155px;
    padding-bottom: 30px;
}

table.RecruitRecuitingContent__table {
    font-size: calc(18 / var(--root-font-size) * 1rem);
}

table.RecruitRecuitingContent__table a {
    text-decoration: underline;
}

table.RecruitRecuitingContent__table tr {
    border-top: 1px dashed #707070;
    border-bottom: 1px dashed #707070;
}

table.RecruitRecuitingContent__table tr th,
table.RecruitRecuitingContent__table tr td {
    padding: 30px 0 30px;
}

table.RecruitRecuitingContent__table tr th {
    min-width: 170px;
    text-align: left;
    vertical-align: text-top;
    color: #888888;
}

table.RecruitRecuitingContent__table img {
    padding: 21px 0 30px;
}

.note {
    font-size: calc(16 / var(--root-font-size) * 1rem);
    text-indent: -1em;
    padding-left: 1em;
}

.detail__title--pink {
    display: inline-block;
    font-size: calc(24 / var(--root-font-size) * 1rem);
    font-weight: 700;
    background: #FA7482;
    color: #fff;
    border-radius: 30px;
    padding: 10px 40px;
    margin-bottom: 30px;
}

.detail__title--blue {
    display: inline-block;
    font-size: calc(24 / var(--root-font-size) * 1rem);
    font-weight: 700;
    background: #679FCA;
    color: #fff;
    border-radius: 30px;
    padding: 10px 40px;
    margin-bottom: 30px;
}

section.LayoutSection.Contact-recruit {
    padding: 95px 0 138px;
}

.Contact__content-recruit {
    font-size: calc(24 / var(--root-font-size) * 1rem);
    font-weight: 700;
    padding: 34px 0 24px;
}

.recruit .BaseButton--large:not(:root) {
    padding: 27px 55px 31px;
    font-size: calc(22 / var(--root-font-size) * 1rem);
    letter-spacing: -0.4px;
    line-height: 1;
}

.entry .MainVisualImage__item-title {
    background: #679FCA;
    max-width: 800px;
    width: 42.66%;
    height: 345px;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
    border-radius: 0 50px 50px 0;
    color: #fff;
    transform: translateY(-50%);
    padding-top: 5.93%;
    padding-right: 3.33%;
    padding-left: 7.135%;
    padding-bottom: 1.04%;
}

section.LayoutSection.entryForm {
    background: #fff;
    padding: 100px 0 150px;
}

.entryContent__container {
    max-width: 970px;
    margin: 0 auto;
}

.entry__step {
    display: flex;
    justify-content: center;
    gap: 30px;
    margin-bottom: 60px;
}

.entry__step--01 {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.entry__step .entry__step-num {
    border-radius: 35px;
    font-weight: 700;
    width: 70px;
    height: 70px;
    color: #fff;
    font-size: calc(30 / var(--root-font-size) * 1rem);
    display: flex;
    align-items: center;
    justify-content: center;
}

.entry__step .current .entry__step-num {
    background: #FB8072;
}

.mw_wp_form_confirm .entry__step--02 .entry__step-num {
    background: #FB8072;
}
.mw_wp_form_confirm .only_input{
    display: none;
}
.mw_wp_form_input  .only_comfirm{
    display: none;

}
.mw_wp_form_confirm .only_comfirm{
    text-align: center;
    margin-bottom: 81px;
    font-size: calc(18 / var(--root-font-size) * 1rem);
    font-weight: 700;

}
.mw_wp_form_confirm .entry__step--01 .entry__step-num {
    background: #F5EE6C;
}
.mw_wp_form_confirm  .Contact-button{
    margin-top: 60px;
}
.entry__step .entry__step-num {
    background: #F5EE6C;
    position: relative;
}

.entry__step--child:not(:last-of-type) .entry__step-num:after {
    content: "";
    display: inline-block;
    border-top: 6px solid #F5EE6C;
    position: absolute;
    right: -30px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
}

.entry__step--child {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-direction: column;
}

.entry__step+div {
    text-align: center;
    margin-bottom: 81px;
    font-size: calc(18 / var(--root-font-size) * 1rem);
    font-weight: 700;
}

.entryContent__form table {
    width: 100%;
    font-size: calc(18 / var(--root-font-size) * 1rem);
    font-weight: 700;
}

input[type="text"] {
    border: 1px solid #DCDCDC;
    height: 50px;
    width: 100%;
    padding: 5px 10px;
}

select {
    padding: 12px 67px 12px 20px;
    font-size: calc(18 / var(--root-font-size) * 1rem);
    font-weight: 700;
    border: 1px solid #DCDCDC;
}

textarea {
    width: 100%;
    height: 300px;
    border: 1px solid #DCDCDC;
    padding: 10px;
}

span.required {
    background: #FB8072;
    color: #fff;
    padding: 0 17px;
    border-radius: 14px;
}

.entryContent__form th {
    display: flex;
    justify-content: space-between;
    padding-right: 20px;
    padding-bottom: 20px;
    width: 230px;
    box-sizing: content-box;
}

.entryContent__form td {
    padding-bottom: 20px;
}

span.birth-date {
    padding: 0 30px 0 10px;
}

.form__policy h3 {
    font-size: calc(20 / var(--root-font-size) * 1rem);
    padding-bottom: 12px;
}

.form__policy--text dl {
    padding-bottom: 3em;
}

.form__policy--text dt {
    font-size: calc(20 / var(--root-font-size) * 1rem);
    font-weight: 700;
    padding-bottom: 1em;
}

.form__policy--text dt:not(:first-of-type) {
    padding-top: 2em;
}

.form__policy--text {
    border: 1px solid #DCDCDC;
    padding: 40px;
    height: 300px;
    overflow-y: scroll;
}

.form__policy {
    margin-bottom: 48px;
}

.policy-agree {
    text-align: center;
    font-size: calc(18 / var(--root-font-size) * 1rem);
    margin-bottom: 70px;
}

.policy-agree label {
    display: flex;
    justify-content: center;
    align-items: center;
}

.policy-agree input[type="checkbox"] {
    width: 30px;
    height: 30px;
    margin-right: 16px;
}

.entryContent__form .note {
    color: #888888;
    font-size: 14px;
}

.entryContent__form .note:first-of-type {
    padding-top: 20px;
    padding-bottom: 0;
}

.entry__check .entryContent__form table {
    font-weight: 100;
}

.entry__check .entryContent__form th,
.entry__check .entryContent__form td {
    padding-bottom: 44px;
}

.policy-back {
    text-align: center;
    padding-top: 71px;
}

.policy-back a {
    font-weight: 700;
    font-size: calc(18 / var(--root-font-size) * 1rem);
    text-decoration: underline;
}

.entry__step+.entry__send--message {
    font-weight: 100;
    text-align: left;
    margin-bottom: 0;
}

.entry__send--message p:not([class]),
.entry__send--message div {
    padding-bottom: 1.5em;
}

p.entry__send--message-green {
    color: #66C2AE;
    font-weight: 700;
    padding-bottom: 0;
}

.entry__send .entryContent__container {
    max-width: 1000px;
}

/*----------------------------------------------------------------------------------------------------
TOPへ戻るボタン
----------------------------------------------------------------------------------------------------*/

#page_top {
    position: fixed;
    bottom: -100px;
    right: 20px;
    z-index: 100;
}

#page_top a {
    position: relative;
    display: block;
    text-decoration: none;
    opacity: 0.6;
}

#page_top a::before {
    content: '';
    background-image: url(../img/common/up.svg);
    position: absolute;
    width: 80px;
    height: 80px;
    bottom: 20px;
    right: 20px;
    background-size: contain;
}

#page_top a:hover {
    opacity: 1;
}


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

    .LayoutHeader {
        background-color: rgb(254 253 239 / 80%);
    }

}

@media screen and (min-width:1200px) {

    .SectionTitle__text {
        font-size: calc(74 / var(--root-font-size) * 1rem);
    }

    section.LayoutSection.CompanyAccess .access__content {
        margin-left: -60px;
        margin-right: -60px;
    }


}

@media screen and (min-width:1280px) {
    section.LayoutSection.News .News__container--child {
        width: calc(100% / 3 - (60px * 2 / 3));
    }

    figure.CompanyAboutContentImage {
        position: absolute;
        top: -65px;
        right: -60px;
    }
}

@media screen and (max-width:1620px) {
    section {
        padding-right: 40px !important;
        padding-left: 40px !important;
    }

    h3.title-green02 {
        font-size: calc(31 / var(--root-font-size) * 1rem);
    }

    .Contact__content-img {
        padding-left: 0;
    }
}

@media screen and (max-width:1279px) {
    .ServiceStrength__content--child {
        flex-wrap: wrap;
    }

    .ServiceStrength__content--child {
        padding: 0;
        justify-content: center;
    }

    .Network__child-img {
        padding-left: 0;
    }

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

    .Contact__content-img {
        position: initial;
        padding-left: 0;
        padding-bottom: 20px;
    }

    section.LayoutSection.EnergySaving .EnergySaving-flex {
        flex-wrap: wrap;
        justify-content: center;
    }

    .Security__child-img {
        padding: 0 0 20px 0;
    }

    section.LayoutSection.News div.News__container {
        justify-content: center;
    }

    section.LayoutSection.News .News__container--child {
        flex-basis: 500px;
    }

    .RecruitGreetingContent__container {
        flex-wrap: wrap;
        justify-content: center;
    }

    .RecruitGreetingContent__container figure {
        width: 200px;
    }

    .voiceCard__top {
        flex-wrap: wrap;
        justify-content: center;
    }

    .voiceCard__top--text {
        width: 100%;
    }

    figure.RecruitRecuitingContentImage {
        padding-left: 0;
    }

    figure.CompanyAboutContentImage {
        position: absolute;
        top: -45px;
        right: 0;
    }

    .company .MainVisualImage__item-title {
        width: 360px;
        height: 300px;
        top: 80px;
        transform: initial;
        padding-top: 36px;
        padding-left: 20px;
    }

    .MainVisualImage__item-title .Lang--en {
        font-size: 50px;
    }

    .item-title-sub {
        font-size: 12px;
        padding-bottom: 40px;
    }

    .item-title-text {
        font-size: 14px;
    }

    .Service .MainVisualImage__item-title {
        width: 360px;
        height: 300px;
        top: 80px;
        transform: initial;
        padding-top: 36px;
        padding-left: 20px;
    }

    .network .MainVisualImage__item-title {
        width: 360px;
        height: 200px;
        top: 80px;
        transform: initial;
        padding-top: 36px;
        padding-left: 20px;
    }

    .MainVisualImage__item-title .main-title {
        font-size: 29px;
        padding-bottom: 23.8px;
    }

    .Security .MainVisualImage__item-title {
        width: 360px;
        height: 200px;
        top: 80px;
        transform: initial;
        padding-top: 36px;
        padding-left: 20px;
    }

    .EnergySaving .MainVisualImage__item-title {
        width: 360px;
        height: 200px;
        top: 80px;
        transform: initial;
        padding-top: 36px;
        padding-left: 20px;
    }

    .News .MainVisualImage__item-title {
        width: 360px;
        height: 170px;
        top: 80px;
        transform: initial;
        padding-top: 36px;
        padding-left: 20px;
    }

    .recruit .MainVisualImage__item-title {
        width: 360px;
        height: 300px;
        top: 80px;
        transform: initial;
        padding-top: 36px;
        padding-left: 20px;
    }

    .entry .MainVisualImage__item-title {
        width: 360px;
        height: 170px;
        top: 80px;
        transform: initial;
        padding-top: 36px;
        padding-left: 20px;
    }

    .Contact__content-img {
        align-self: flex-start;
        padding-bottom: 31.7px;
        width: 19.8%;
    }

    main:not(.recruit) .Contact__content-text .BaseButton.Contact-button__link {
        width: 46.51%;
        margin: 0 auto;
        font-size: 100%;
        padding: 6px 16px;
    }

}

@media screen and (max-width:767px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }

    section {
        padding: 60px 20px !important;
    }

    .letter-space-s {
        letter-spacing: -1.8px;
    }

    .CompanyPhilosophyContent__container {
        flex-wrap: wrap;
    }

    .CompanyPhilosophyContent__head {
        display: flex;
        margin-bottom: 20px;
    }

    .CompanyPhilosophyContentImage {
        margin-right: 5%;
    }

    .CompanyPhilosophyContent__contents p {
        line-height: 1.8rem !important;
    }

    h3.title-green {
        font-size: calc(26 / var(--root-font-size) * 1rem);
        padding-bottom: 30px;
    }

    .CompanyAboutContent__table th {
        padding: 20px 20px 20px 0;
        width: 100px;
    }

    .CompanyAboutContent__table td {
        padding: 20px 20px 20px 0;
    }

    figure.CompanyAccessContentImage {
        right: 0;
        top: 0;
    }

    section.LayoutSection.CompanyAccess .access__content {
        background: #FEFDEF;
        padding: 30px 20px;
        border-radius: 30px;
        margin-bottom: 50px;
    }

    section.LayoutSection.EnergySaving .EnergySaving__child {
        padding: 40px 20px;
        background-size: calc(108px / 3);
    }

    .EnergySaving-flex {
        padding: 0;
    }

    .EnergySaving__child-img {
        padding: 0 0 20px 0;
    }

    .EnergySaving__child--title {
        font-size: calc(30 / var(--root-font-size) * 1rem);
    }

    section.LayoutSection.Network .Network__child {
        padding: 40px 20px;
        background-size: calc(108px / 3);
    }

    .Network__child-img {
        padding: 0 0 20px 0;
    }

    .Network__child--title {
        font-size: calc(30 / var(--root-font-size) * 1rem);
        text-indent: -2.8em;
        padding-left: 3em;
    }

    .Network span.title-num {
        font-size: calc(38 / var(--root-font-size) * 1rem);
    }

    .Network__child-text-content {
        padding-bottom: 0;
    }

    ul.page-numbers li {
        font-size: calc(16 / var(--root-font-size) * 1rem);
    }

    ul.page-numbers li a, span.page-numbers.dots,
    span.page-numbers.current {
        padding: 10px 18px;
    }

    .RecruitRecruitingContent__contents {
        justify-content: center;
        flex-wrap: wrap;
    }

    .RecruitRecruitingContent__contents:first-of-type {
        margin-bottom: 100px;
    }

    figure.RecruitRecuitingContentImage {
        padding-left: 0;
    }

    .RecruitJobContent__contents .schedule__time {
        padding: 50px;
        border-radius: 160px;
    }

    .ServiceStrength .SectionInner {
        padding: 40px 20px;
    }

    .Flow__child {
        padding-bottom: 40px;
    }

    .Flow__child:last-of-type {
        align-items: flex-start;
    }

    h3.title-green02 {
        font-size: calc(41 / var(--root-font-size) * 1rem);
    }

    section.LayoutSection.News div.News__container {
        justify-content: center;
    }

    .schedule__time--img {
        margin: 0 auto;
    }

    .schedule-time {
        justify-content: center;
    }

    .entryContent__form th {
        padding-bottom: 5px;
    }

    .entryContent__form td {
        padding-bottom: 30px;
    }

    .entryContent__form th,
    .entryContent__form td {
        display: block;
        text-align: left;
    }

    span.required {
        margin-left: 20px;
    }

    select {
        padding: 12px 6px;
        font-size: calc(14 / var(--root-font-size) * 1rem);
    }

    span.birth-date {
        padding: 0 10px;
        font-size: calc(14 / var(--root-font-size) * 1rem);
    }

    .entry__check .entryContent__form th {
        padding-bottom: 5px;
        width: 100%;
        padding-right: 0;
    }

    section.LayoutSection.Security .Security__child {
        padding: 40px 20px;
        background-size: calc(108px / 3);
    }

    span.title-num:after {
        padding: 0 15px 0 10px !important;
    }

    .voice__card {
        width: 100%;
    }

    section.LayoutSection.Network .Network__child--content {
        flex-wrap: wrap;
        justify-content: center;
    }

    section.LayoutSection.EnergySaving .EnergySaving__child--content {
        flex-wrap: wrap;
        justify-content: center;
    }

    section.LayoutSection.Security .Security__child--content {
        flex-wrap: wrap;
        justify-content: center;
        padding-bottom: 40px;
    }

    .sp.MainVisualImage__item img {
        object-fit: cover;
        width: 100%;
    }

    .company .MainVisual__container--fukidashi-01 {
        width: 41.53%;
        top: calc(100% * 0.45);
        right: 0;
        left: auto;
    }

    .company .MainVisual__container--fukidashi-02 {
        top: calc(100% * 0.50);
        left: 0;
        width: 50.76%;
    }

    .company .MainVisual__container--fukidashi-03 {
        left: calc(100% * 0.18);
        top: calc(100% * 0.80);
        width: 41.53%;
    }

    .Service .MainVisual__container--fukidashi-01 {
        top: calc(100% * 0.44);
        left: 0;
        width: 41.53%;
    }

    .Service .MainVisual__container--fukidashi-02 {
        top: calc(100% * 0.81);
        left: calc(100% * 0.56);
        width: 41.53%;
    }

    .Service .MainVisual__container--fukidashi-03 {
        top: calc(100% * 0.79);
        left: calc(100% * -0.04);
        width: 50.87%;
    }

    .recruit .MainVisual__container--fukidashi-01 {
        top: calc(100% * 0.43);
        left: calc(100% * 0.07);
        width: 50.76%;
    }

    .recruit .MainVisual__container--fukidashi-02 {
        top: calc(100% * 0.65);
        left: calc(100% * -0.02);
        width: 41.53%;
    }

    .recruit .MainVisual__container--fukidashi-03 {
        top: calc(100% * 0.78);
        left: calc(100% * 0.48);
        width: 56.59%;
    }

    .Contact__content-tel {
        font-size: 40px;
    }

    .Contact__content-tel:before {
        width: 26px;
        height: 33px;
        background-size: contain;
    }

    .Flow__child:not(:last-of-type) .Flow__childStep:after {
        content: "";
        display: block;
        border-left: 3px dotted #707070;
        height: 100%;
    }

    .Flow__childStep {
        flex-basis: 60px;
        padding-bottom: 0;
    }

    .fukidashi-title {
        padding-bottom: 10px;
    }

    .fukidashi-link a img {
        margin-bottom: 10px;
    }

    .schedule__career--img img {
        width: 100%;
    }

    section#RecruitRecruiting span.SectionTitle__container {
        padding-bottom: 0;
    }

    .sp.RecruitRecruitingContent__contents--head {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        width: 100%;
    }

    .detail__title--pink {
        flex-shrink: 0;
    }

    .sp.RecruitRecruitingContent__contents--head figure {
        width: 30%;
        padding-right: 10%;
    }

    .form__policy--text {
        padding: 20px;
    }

    .schedule__career--img {
        width: 100vw;
        margin: 0 calc(50% - 50vw);
    }

}

@media screen and (max-width:414px) {
    section.LayoutSection.EnergySaving .EnergySaving__child--content {
        padding-bottom: 60px;
    }

    .EnergySaving-text-01 {
        font-size: calc(24 / var(--root-font-size) * 1rem);
        padding-bottom: 30px
    }

    .EnergySaving-text-02 {
        font-size: calc(26 / var(--root-font-size) * 1rem);

    }

    .EnergySaving-text-01 .EnergySaving-red01 {
        font-size: calc(40 / var(--root-font-size) * 1rem);
    }

    .EnergySaving-text-02 .EnergySaving-red02 {
        font-size: calc(40 / var(--root-font-size) * 1rem);
    }

    .EnergySaving-text-03 {
        font-size: calc(24 / var(--root-font-size) * 1rem);
    }

    .EnergySaving-text-03 .EnergySaving-red01 {
        font-size: calc(40 / var(--root-font-size) * 1rem);
    }

    table.RecruitRecuitingContent__table tr th,
    table.RecruitRecuitingContent__table tr td {
        padding: 10px 0;
        display: block;
    }

    table.RecruitRecuitingContent__table tr th {
        padding-bottom: 0 !important;
    }

    table.RecruitRecuitingContent__table tr td {
        padding-top: 0 !important;
    }

    .form__policy--text {
        padding: 20px;
        height: 200px;
    }

    .CompanyItem .Item-child {
        text-indent: -4.5rem;
    }

    #page_top {
        right: 10px;
    }

    #page_top a::before {
        width: 40px;
        height: 40px;
        bottom: 10px;
        right: 10px;
    }

}