/*
Theme Name: Ecbo Custom Theme
Author: Satoshi Hayashitani
Description: ecboコーポレートサイト構築用
Version: 1.0
*/

@charset "UTF-8";

:root {
    --design-width-px: 1280;
    --max-width: 1400px;
    --scale-factor: calc(min(100vw, var(--max-width)) / var(--design-width-px));
    --header-height: calc(var(--scale-factor) * 100);
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html,
body {
    height: 100%;
    font-size: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    --scroll-gap: 36px;
    -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
}

body {
    /* font-family: 'Roboto', 'Noto Sans CJK JP', sans-serif; */
		font-family: 'Noto Sans CJK JP', 'Roboto', sans-serif;
    color: #2f2f2f;
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    max-width: 100%;
    height: auto;
    object-fit: cover;
    image-rendering: auto;
}

li {
    list-style: none;
}

body.lock-scroll {
    overflow: hidden;
}

#loading {
    animation: closeLoading 2.4s forwards;
    background-color: #FFFFFF;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
}

#loading__wrapper {
    align-items: center;
    animation: backgroundFade 0.8s forwards;
    background-color: #444444;
    display: flex;
    height: 100%;
    justify-content: center;
    opacity: 0.3;
    width: 100%;
}

.logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    opacity: 1;
    animation: logoFade 0.4s ease-in-out forwards 2s;
}

.logo img {
    width: 20vw;
    height: auto;
}

.circle {
    position: absolute;
    width: 19.6vw;
    height: 20vw;
    background-color: #77CEC5;
    border-radius: 50%;
    z-index: 1;
    left: calc(50%);
    top: calc(50%);
    transform: translate(0%, -50%) scale(1);
    opacity: 0;
    animation: circleExpand 2.2s ease-in forwards 0.2s;
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #77CEC5;
    opacity: 0;
    z-index: 10001;
    animation: overlayFade 2.4s forwards;
}

@keyframes closeLoading {
    100% {
        display: none;
        visibility: hidden;
    }
}

@keyframes backgroundFade {
    0% {
        opacity: 0.3;
    }

    100% {
        opacity: 1;
    }
}

@keyframes circleExpand {
    0% {
        transform: translate(0%, -50%) scale(0.1);
        opacity: 0.5;
    }

    40% {
        opacity: 1;
    }

    100% {
        transform: scale(40);
    }
}

@keyframes overlayFade {
    0% {
        opacity: 0;
        color: #595858;
    }

    100% {
        opacity: 0;
    }
}

@keyframes logoFade {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.full-width-element {
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    width: 100vw;
}

.sp-break {
    display: none;
}

.arrow-green,
.arrow-white {
    position: relative;
    display: inline-flex;
}

.arrow-green02 {
	position: relative;
	display: inline-flex;
}

.arrow-green::after,
.arrow-white::after {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    position: absolute;
    right: 24px;
    top: 50%;
    transform: translateY(-50%) scale(1);
    transition: all 0.3s ease;
}
.arrow-green02::after {
	content: '';
	width: 5px;
	height: 5px;
	border-radius: 50%;
	position: absolute;
	right: 24px;
	top: 50%;
	transform: translateY(-50%) scale(1);
	transition: all 0.3s ease;
}
.arrow-green::after {
    /* background-color: #77CEC5; */
}
.arrow-green02::after {
	/* background-color: #77CEC5; */
}

.arrow-white::after {
    /* background-color: #77CEC5; */
}

.arrow-green::before,
.arrow-white::before {
    content: '';
    position: absolute;
		width: 30px;
		height: 30px;
    right: calc(var(--scale-factor) * 14);
    top: 50%;
    transform: translateY(-50%) scale(0);
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 0;
    transition: all 0.3s ease;
}

.arrow-green02::before,
.arrow-white02::before {
	content: '';
	position: absolute;
	width: 30px;
	height: 30px;
	right: calc(var(--scale-factor) * 14);
	top: 50%;
	transform: translateY(-50%) scale(0);
	background-size: contain;
	background-repeat: no-repeat;
	opacity: 0;
	transition: all 0.3s ease;
}
.arrow-green::before {
    background-image: url('imgs/arrow-white.svg');
}
 .arrow-green02::before {
	background-image: url('imgs/arrow-white_green.svg');
}

.arrow-white::before {
    background-image: url('imgs/arrow-white.svg');
}

.arrow-green:hover::after,
.arrow-white:hover::after {
    opacity: 0;
}
.arrow-green02:hover::after {
	opacity: 0;
}
.arrow-green:hover::before,
.arrow-white:hover::before {
    opacity: 1;
    transform: translateY(-50%) scale(1);
}
.arrow-green02:hover::before {
	opacity: 1;
	transform: translateY(-50%) scale(1);
}
.arrow-green--wide::after,
.arrow-green--wide::after {
    /* height: calc(var(--scale-factor) * 8); */
    right: calc(var(--scale-factor) * 67);
    /* width: calc(var(--scale-factor) * 8); */
}

.arrow-green--wide::before,
.arrow-green--wide::before {
    height: calc(var(--scale-factor) * 50);
    right: calc(var(--scale-factor) * 42);
    width: calc(var(--scale-factor) * 50);
}

#header-pc__wrapper {
    align-items: center;
    background-color: #77CEC5;
    color: #FFFFFF;
    padding-inline: calc(var(--scale-factor) * 48);
    display: grid;
    row-gap: 18px;
    grid-template-areas:
        /* "logo contact contact contact" */
        "logo nav hamburger language";
    grid-template-columns: 32% 60% 4% 4%;
    height: var(--header-height);
    position: fixed;
    transition: all 0.3s ease;
    width: 100%;
    z-index: 90;
}

#header-pc__wrapper.top-page {
    background-color: initial;
}

#header-pc__wrapper.header-pc__wrapper--shrink {
    color: #1E1E1E;
    background-color: #FFFFFF;
    border-radius: calc(var(--scale-factor) * 40);
    left: 2%;
    top: 1%;
    width: 96%;
}

#header-pc__wrapper.header-pc__wrapper--simple {
    grid-template-areas:
        "logo contact contact contact";
}

.header-sp__wrapper {
    display: none;
}

.header__logo {
    grid-area: logo;
    place-self: center start;
}

#header__logo-img {
    width: calc(var(--scale-factor) * 140);
		width: 140px;
}


.header__contact-list {
    display: flex;
    gap: 12px;
    grid-area: contact;
    place-self: end end;
}

.header__contact-list li :hover {
    color: #77CEC5;
    background-color: #FFFFFF;
}

.header-pc__wrapper--shrink .header__contact-list li :hover {
    color: #FFFFFF;
    background-color: #77CEC5;
}

.header__contact-button {
    aspect-ratio: 215 / 46;
    align-items: center;
    display: grid;
    border: 1px solid #FFFFFF;
    border-radius: 23px;
    font-size: calc(var(--scale-factor) * 16);
    font-weight: bold;
    grid-template-columns: 24% 56%;
    /* justify-content: center; */
    justify-items: center;
    margin-right: auto;
    /* text-align: center; */
    width: calc(var(--scale-factor) * 215);
}

.header-pc__wrapper--shrink .header__contact-button {
    color: #77CEC5;
    border: 1px solid #77CEC5;
}

.header__contact-button img {
    height: 25px;
}

.header__nav-list {
    display: flex;
    grid-area: nav;
    gap: clamp(1px, 4.3vw, 55px);
    justify-content: space-around;
    padding-inline: clamp(1px, 5.6vw, 72px);
    place-self: center end;
}

.header__nav-link {
    font-size: calc(var(--scale-factor) * 16);
    font-weight: bold;
}

.header-pc__wrapper--shrink .header__nav-link {
    font-size: calc(var(--scale-factor) * 18);
}

.header__nav-link:hover {
    border-bottom: 1px solid #FFFFFF;
    color: #FFFFFF;
}

.header-pc__wrapper--shrink .header__nav-link:hover {
    border-bottom: 2px solid #77CEC5;
    color: #77CEC5;
}

.header-pc__wrapper--simple .header__contact-list {
    place-self: center end;
}

.header-pc__wrapper--simple .header__nav-list {
    display: none;
}

.header-pc__wrapper--simple .hamburger-pc {
    display: none;
}

.header-pc__wrapper--simple .header__language-button {
    display: none;
}

.hamburger-pc {
    grid-area: hamburger;
    place-self: center end;
}

.hamburger-pc__button {
    display: flex;
    flex-direction: column;
    gap: calc(var(--scale-factor) * 4);
    grid-area: hamburger;
    margin-block: 4px;
    place-self: center end;
}

.header-pc__wrapper--shrink .hamburger-pc__button {
    gap: calc(var(--scale-factor) * 4.5);
}

.hamburger-pc__button .bar {
    width: clamp(21px, 2.4vw, 30px);
    /* height: calc(var(--scale-factor) * 3); */
		height: 2px;
    background-color: #FFFFFF;
		border-radius: 10px;
}

.header-pc__wrapper--shrink .hamburger-pc__button .bar {
    background-color: #1E1E1E;
    height: calc(var(--scale-factor) * 3.2);
}

.header-pc__wrapper--shrink .hamburger-pc__button:hover .bar {
    background-color: #77CEC5;
}

.hamburger-pc__menu {
    background-color: #2E2725;
    background-image: url('imgs/bg_berger-menu.png');
    background-position: bottom;
    background-size: cover;
    color: #FFFFFF;
    display: none;
    height: 100%;
    left: 0;
    opacity: 0;
    overflow: auto;
    position: fixed;
    top: 0;
    transition: opacity .6s ease, visibility .6s ease;
    width: 100%;
    z-index: 100;
}

.hamburger-pc__menu.active {
    opacity: 100;
    display: block;
}
.hamburger-pc__menu__wrapper {
	position: relative;
}

.hamburger-pc__close-button {
    background: none;
    border: none;
    cursor: pointer;
    height: 40px;
    /* margin: 8px 10px 0 auto; */
    position: absolute;
    width: 30px;
		top: 60px;
    right: 66px;
}

.hamburger-pc__close-button span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 2px;
    background-color: #FFFFFF;
    transform-origin: center;
    transform: translate(-50%, -50%) rotate(45deg);
}

.hamburger-pc__close-button span:nth-child(2) {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.hamburger-pc__head {
    align-items: center;
    display: flex;
    gap: clamp(1px, 3.8vw, 48px);
    margin-bottom: clamp(1px, 10vw, 132px);
    padding-inline: clamp(1px, 5.2vw, 67px);
		padding-top: 44px;
}

.hamburger-pc__head-logo {
    /* width: clamp(1px, 13.3vw, 170px); */
		width: 150px;
}

.hamburger-pc__head-title {
    font-size: clamp(12px, 2vw, 25px);
}

.hamburger-pc__main {
    display: grid;
    gap: clamp(1px, 5.8vw, 74px);
    grid-template-columns: 40% 60%;
    padding-inline: clamp(12px, 7.8vw, 100px);
}

.hamburger-pc__contact-button {
    align-items: center;
    display: flex;
    background-color: #FFFFFF;
    /* border: 1px solid; */
    border-radius: 23px;
    color: #231815;
    font-size: clamp(12px, 1.4vw, 25px);
    font-weight: bold;
    gap: 14px;
    height: clamp(12px, 9.8vw, 125px);
    justify-content: left;
    opacity: 80%;
    /* text-align: center; */
		/* padding: 3px 132px 0 30px; */
}

.hamburger-pc__contact-button:hover {
    color: #77CEC5;
    opacity: 100%;
		border: none;
}

.hamburger-pc__contact-item {
    margin-bottom: 23px;
}

.hamburger-pc__contact-button img {
    height: 50%;
		padding-left: 30px;
		margin-right: 10%;
}

.hamburger-sitemap {
    display: grid;
    grid-template-columns: auto auto;
    margin-bottom: clamp(1px, 6.5vw, 83px);
    justify-content: space-around;
		gap: 70px 0;
}

.hamburger-sitemap__title {
    font-size: clamp(12px, 3.9vw, 50px);
    font-weight: bold;
		line-height: 1;
}

.hamburger-sitemap__title:hover {
    color: #77CEC5;
}

.hamburger-sitemap__list {
    font-size: clamp(12px, 1.6vw, 20px);
}

.hamburger-sitemap__list li {
    margin-block: 22px;
		line-height: 1;
}
.hamburger-sitemap__list li:first-child {
	margin-top: 28px;
}
.hamburger-sitemap__list li:last-child {
	margin-bottom: 0;
}

.hamburger-sitemap__list li:hover {
    color: #77CEC5;
}

.hamburger__sns-list {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin-bottom: clamp(1px, 2vw, 26px);
}

.hamburger__sns-image {
    width: 42px;
}

.hamburger-legal__list {
    display: flex;
    gap: 20px;
    justify-content: center;
    margin-bottom: 18px;
}

.hamburger-legal__item {
    font-weight: bold;
    font-size: 12px;
}

.hamburger-legal__item-divider {
    border: 0.5px solid;
    height: 12px;
    margin-block: auto;
}

.copyright {
    font-size: calc(var(--scale-factor) * 11);
}

.hamburger-pc__menu .copyright {
	text-align: center;
	padding-bottom: 40px;
}

.header__language-button {
    /* color: #CCCCCC; */
		color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: calc(var(--scale-factor) * 16);
    grid-area: language;
    place-self: center end;
    position: relative;
    font-weight: bold;
}

.header-pc__wrapper--shrink .header__language-button {
    font-size: calc(var(--scale-factor) * 18);
    color: #1E1E1E;
    font-weight: bold;
}

.header__language-button:hover::after {
    content: "coming soon…";
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background-color: rgba(0, 0, 0, 0.8);
    color: #fff;
    padding: 5px;
    border-radius: 3px;
    font-size: 12px;
    white-space: nowrap;
    margin-bottom: 5px;
}

main {
    padding-top: var(--header-height);
}

.video-background {
    height: 100vh;
    left: 0;
    overflow: hidden;
    position: fixed;
    top: 0;
    width: 100vw;
    z-index: -10;
}

.video-background iframe {
    height: 56.25vw;
    left: 50%;
    min-height: 100vh;
    min-width: 177.77vh;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100vw;
}

.video-background::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #77CEC5;
    opacity: 20%;
    z-index: 1;
}

.fv {
    position: relative;
    padding-bottom: calc(var(--scale-factor) * 77);
    /* background-image: url('imgs/pc_kv_bg.png'); */
    background-size: 100% 100%;
    background-repeat: repeat;
    background-position: center -200px;
}

.fv__main {
    margin-inline: auto;
    width: calc(var(--scale-factor) * 908);
}

.fv__lead {
    color: #FFFFFF;
    font-size: 33px;
    /* font-size: calc(var(--scale-factor) * 33); */
    font-weight: bold;
}

.fv__lead-en {
    color: #FFFFFF;
    font-size: calc(var(--scale-factor) * 20);
    font-weight: 500;
}

.fv__button-list {
    column-gap: calc(var(--scale-factor) * 39);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: calc(var(--scale-factor) * 98);
    row-gap: calc(var(--scale-factor) * 21);
}

.fv__button {
    align-items: center;
    aspect-ratio: 434.02 / 125.604;
    background-color: #FFFFFF;
    border-radius: calc(var(--scale-factor) * 20);
    column-gap: calc(var(--scale-factor) * 45);
    display: flex;
    font-size: 17px;
    /* font-size: calc(var(--scale-factor) * 17); */
    font-weight: bold;
    opacity: 70%;
    padding-left: calc(var(--scale-factor) * 35);
    width: 100%;
}

.fv__button:hover {
    color: #77CEC5;
    opacity: 100%;
}

.fv__button img {
    height: 53%;
}

.fv__logo {
    display: block;
    margin-inline: auto;
    margin-top: calc(var(--scale-factor) * 42);
    opacity: 60%;
    width: calc(var(--scale-factor) * 1099);
}

section {
    background-color: #FFFFFF;
}

#section-indicator {
    position: fixed;
    top: 50%;
    left: 0.5%;
    transform: translateY(-50%);
    transform-origin: left center;
    font-size: calc(var(--scale-factor) * 20);
    font-weight: bold;
    color: #1E1E1E;
    writing-mode: vertical-rl;
    z-index: 1000;
    pointer-events: none;
}

.section__wrapper {
    margin-inline: auto;
    /* max-width: 1050px; */
    width: 72%;
}

#about-us {
    /* padding-top: calc(var(--scale-factor) * 230); */
		padding-top: 104px;
    padding-bottom: calc(var(--scale-factor) * 152);
    position: relative;
    position: relative;
        z-index: 0;
}

.about-us__content {
    width: 45%;
    margin-block: calc(var(--scale-factor) * 72);
}

.about-us__title {
    color: #77CEC5;
    /* font-size: calc(var(--scale-factor) * 20); */
    font-size: 24px;
    margin-bottom: 74px;
    /* margin-bottom: calc(var(--scale-factor) * 76); */
    font-weight: 500;
}

.about-us__description {
    line-height: 2;
    font-size: 16px;
    /* font-size: calc(var(--scale-factor) * 13); */
    margin-bottom: calc(var(--scale-factor) * 44);
    font-weight: 500;
    color: #1e1e1e;
}

.circle-button {
    display: flex;
    align-items: center;
    gap: calc(var(--scale-factor) * 15);
}

.circle-container {
    width: calc(var(--scale-factor) * 50);
    height: calc(var(--scale-factor) * 50);
    background-color: #77CEC5;
    position: relative;
    cursor: pointer;
    display: flex;
    border-radius: 50%;
}

.main-circle {
    width: 100%;
    height: 100%;
}

.white-dot {
    width: calc(var(--scale-factor) * 7);
    height: calc(var(--scale-factor) * 7);
    background-color: white;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-arrow {
    width: calc(var(--scale-factor) * 10);
    height: auto;
    opacity: 0;
    transition: opacity 0.3s ease;
    position: absolute;
}

.circle-button-text {
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    /* font-size: calc(var(--scale-factor) * 17); */
    font-weight: bold;
    line-height: 1.2;
    color: #1e1e1e;
    position: relative;
    display: block;
}

.circle-button-text::after {
    position: absolute;
    left: 0;
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background: #77CEC5;
    bottom: -1px;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: transform 0.3s;
}

.circle-button:hover .circle-button-text::after {
    transform: scale(1, 1);
    transform-origin: left top;
}

.circle-button:hover .white-dot {
    width: 45px;
    height: 45px;
}

.circle-button:hover .btn-arrow {
    opacity: 1;
}

.about-us__image {
    height: calc(var(--scale-factor) * 1130);
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
}

.about-us__building-image {
    position: absolute;
    width: 20px;
    top: 10%;
    right: 10%;
}

section.services {
    background-image: url("imgs/bg_top_services.png");
    background-size: 100% 100%;
    padding-block: 104px;
}

.section-title {
    /* font-size: calc(var(--scale-factor) * 35); */
    /* font-size: 35px; */
    font-size: 60px;
    color: #1e1e1e;
}

.section-subtitle {
    align-items: center;
    display: flex;
    font-size: 14px;
    /* font-size: calc(var(--scale-factor) * 14); */
    column-gap: calc(var(--scale-factor) * 10);
    color: #231815;
}

.section-subtitle hr {
    height: 1px;
    /* height: calc(var(--scale-factor) * 1); */
    width: calc(var(--scale-factor) * 25);
    background: #231815;
}

.services__large-list {
    display: flex;
    column-gap: 4.94%;
    margin-bottom: calc(var(--scale-factor) * 30);
    /* margin-top: calc(var(--scale-factor) * 70); */
    margin-top: 64px;
}

#careers-services .services__large-list {
    margin-bottom: 0;
}

.services__large-item {
    background-color: #FFFFFF;
    /* border-radius: 15px; */
		border-radius: calc(var(--scale-factor)* 30);
    width: 50%;
		box-shadow: 6px 3px 10px 0px rgba(35, 24, 21, 0.2);
}

.services__large-item .services__large-logo {
    display: flex;
    flex-direction: column;
}

.fade-in-up {
    opacity: 0;
}

.fade-in-up.is-visible {
    transform: translateY(100px);
    animation-name: fadeIn;
    animation-duration: 1s;
    animation-fill-mode: forwards;
}

@keyframes fadeIn {
    0% {
    }
    100% {
        opacity: 1;
        transform: translate(0);
    }
}

.services__large-logo {
    display: flex;
    height: calc(var(--scale-factor) * 140);
}

.services__large-logo-image {
    display: block;
    margin: auto;
    width: 60%;
}

.services__large-img {
    height: clamp(50px, 14.9vw, 190px);
    width: 100%;
}

#careers-services .services__large-item .services__large-img {
    /* height: clamp(50px, 14.9vw, 342px); */
    height: auto;
    border-radius: 40px;
    aspect-ratio: 500 / 330;
}

.services__large-description {
    font-size: clamp(12px, 1.09vw, 16px);
    line-height: clamp(12px, 2.2vw, 28px);
    margin-block: clamp(10px, 1.5vw, 20px);
    text-align: center;
    color: #1e1e1e;
    font-weight: 500;
}

.services__large-button {
    align-items: center;
    color: #77CEC5;
    display: flex;
    background-color: #FFFFFF;
    border: 2px solid #77CEC5;
    border-radius: 23px;
    font-size: 15px;
    font-weight: bold;
    height: 46px;
    justify-content: center;
    margin-bottom: calc(var(--scale-factor) * 35);
    margin-inline: auto;
    text-align: center;
    width: 200px;
}

.services__large-button:hover {
    background-color: #77CEC5;
    color: #FFFFFF;
		transition: .2s ease-in;
}
.services__large-button:hover::before {
	opacity: 1;
	transform: translateY(-50%) scale(1);
}

.services__small-list {
    display: flex;
    column-gap: calc(var(--scale-factor) * 45);
}

.services__small-item {
    color: #77CEC5;
    font-size: calc(var(--scale-factor) * 18);
    width: 100%;
}

.services__small-button {
    align-items: center;
    aspect-ratio: 500 / 112;
    background-color: #FFFFFF;
    color: #77CEC5;
    display: flex;
    border: 0.5px solid #FFFFFF;
    border-radius: calc(var(--scale-factor) * 40);
    font-size: calc(var(--scale-factor) * 18);
    font-weight: bold;
    justify-content: center;
    margin-inline: auto;
    text-align: center;
    width: 100%;
		box-shadow: 6px 3px 10px 0px rgba(35, 24, 21, 0.2);
		font-family: 'Noto Sans CJK JP', 'Noto Sans JP', sans-serif;
		transition: .2s ease-in;
}
.services__small-button:hover {
	background: #77CEC5;
	color: #fff;
	border-color: #77CEC5;
	transition: .2s ease-in;
}

#top-news,
#careers-news {
	padding-top: 104px;
    /* padding-top: calc(var(--scale-factor) * 103); */
    padding-bottom: calc(var(--scale-factor) * 100);
}

.news__list {
    display: flex;
    column-gap: 4.94%;
    margin-top: clamp(1px, 6.7vw, 86px);
}

.news__img {
    aspect-ratio: 5 / 3;
    border-radius: clamp(10px, 1.6vw, 24px);
    display: block;
}

.news__link {
    margin-top: clamp(1px, 2vw, 18px);
    display: block;
}

.news__category {
    font-size: clamp(12px, 1.6vw, 20px);
    font-weight: lighter;
    margin-bottom: clamp(1px, 1vw, 12px);
    color: #231815;
    line-height: 1;
}

.news__title {
    margin-top: 7px;
    font-size: 16px;
    /* font-size: calc(var(--scale-factor) * 12); */
    font-weight: 590;
    /* transition: .2s ease-in; */
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    min-height: calc(1.5em * 3);
}
.news__item {
    width: 50%;
}
.news__title:hover {
    color: #77CEC5;
    /* text-decoration: underline #77CEC5; */
    /* transition: .2s ease-in; */
}

.news__date {
    color: #1E1E1E;
    font-size: clamp(12px, 1.1vw, 15px);
    margin-top: 20px;
    /* margin-top: calc(var(--scale-factor) * 24); */
}

.news__button {
    align-items: center;
    aspect-ratio: 200 / 46;
    border: calc(var(--scale-factor) * 2) solid #77CEC5;
    border-radius: 100px;
    color: #77CEC5;
    display: flex;
    font-size: calc(var(--scale-factor) * 15);
    justify-content: center;
    margin-inline: auto;
    text-align: center;
    width: calc(var(--scale-factor) * 200);
		font-weight: bold;
}
.news__button:hover {
    background: #77CEC5;
    color: #fff;
}

.news__text {
    text-align: left;
}

.news-slider__wrapper {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    margin-top: 8.9vw;
}

#pickup .news-slider.splide {
    margin-top: 0;
}

.news-slider__list {
    display: flex;
    gap: 45px;
    margin-bottom: 4.68vw !important;
    /* transform: none !important; */
}

.news-slider__margin {
    flex-shrink: 0;
    width: 1px;
}

.news-slider__item {
    width: calc(var(--scale-factor) * 340);
    flex-shrink: 0;
}

.news-slider__img {
    border-radius: 1.56vw;
    margin-bottom: 1.3vw;
}

.news-slider__link {
    color: #231815;
}

.news-slider__category {
    font-family: 'Roboto', 'Noto Sans CJK JP', sans-serif;
    font-size: clamp(12px, 1.563vw, 20px);
    font-weight: lighter;
    margin-bottom: 0.7vw;
}

.news-slider__title {
    margin-top: 7px;
    display: -webkit-box;
    min-height: calc(1.52em * 3);
    font-size: 16px;
    font-weight: 590;
    line-height: 1.52;
    margin-bottom: calc(var(--scale-factor) * 20);
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.news-slider__title:hover {
    color: #77CEC5;
}

.news-slider__date {
    color: #1E1E1E;
    font-family: 'Roboto', 'Noto Sans CJK JP', sans-serif;
    font-size: calc(var(--scale-factor) * 15);
    font-weight: 400;
}

.simplebar-scrollbar {
    width: 1080px !important;
}

.simplebar-hover {
    transform: none !important;
}

.simplebar-scrollbar:before {
    display: none;
}

.simplebar-track.simplebar-horizontal {
    display: none;
    /* height: 2px;
    background-color: #c9caca;
    border-radius: 5px;
    width: 50%;
    margin: 0 auto; */
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    height: 5px;
    width: 540px !important;
    background-color: #77CEC5;
    border-radius: 5px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:hover,
.simplebar-track.simplebar-horizontal:hover .simplebar-scrollbar {
    background-color: #77CEC5;
    opacity: 1 !important;
}

.simplebar-track.simplebar-horizontal {
    border-radius: 5px;
    width: 90%;
    margin: 0 auto;
}

.mission-fv {
    position: relative;
}

.mission-fv__image {
    width: 100%;
}

.misson-fv__text {
    bottom: 0;
    color: #77CEC5;
    font-size: calc(var(--scale-factor) * 96.38);
    font-weight: bold;
    left: calc(var(--scale-factor) * 50);
    position: absolute;
}

#mission {
    padding-block: 150px;
}

.mission__content {
    margin-top: 55px;
    margin-bottom: 0;
    /* margin-block: clamp(1px, 5.7vw, 72px); */
    position: relative;
    z-index: 1;
}

.mission__title {
    color: #77CEC5;
    font-size: 42px;
    /* font-size: clamp(12px, 3.2vw, 40px); */
    /* margin-bottom: clamp(1px, 4vw, 50px); */
    margin-bottom: 60px;
    font-weight: 500;
}

.mission__description {
    line-height: clamp(20px, 2.2vw, 28px);
    font-size: clamp(12px, 1.1vw, 16px);
    /* margin-bottom: clamp(1px, 3.4vw, 44px); */
    margin-bottom: 0;
}

#values {
    align-items: center;
    background-image: url(imgs/bg_mission_values.png);
    /* background-size: contain; */
    background-size: 100% 100%;
    display: flex;
    justify-content: center;
    position: relative;
    /* height: 108vw; */
}

#values .section__wrapper {
    position: absolute;
    top: 2.5vw;
    z-index: 1;
}

.values__main-image {
    display: block;
    /* max-width: 940px; */
    width: 90.44%;
    margin: 0 auto;
    /* margin-top: 24.5vw; */
    padding: 230px 0 220px;
}

#ceo-message {
    background-color: transparent;
    margin-top: calc(var(--scale-factor) * -58);
    position: relative;
    z-index: 2;
    padding-bottom: calc(var(--scale-factor) * 121);
}
#mission .section-title,
#values .section-title,
#ceo-message .section-title,
#awards .section-title,
#careers-at-ecbo .section-title,
#career-values .section-title,
#careers-services .section-title,
#outlook .section-title,
#company-profile .section-title,
#careers .section-title,
#career-news .section-title {
    font-size: 60px;
}

.ceo-message__content {
    margin-top: clamp(1px, 3.1vw, 40px);
    position: relative;
}

.ceo-message__main-image {
    border-radius: clamp(1px, 3vw, 40px);
    max-width: 1052px;
    width: 100%;
}

.ceo-message__text {
    /* font-size: calc(var(--scale-factor) * 14); */
    font-size: 14px;
    line-height: 2;
    margin-top: 45px;
    color: #1e1e1e;
    font-weight: 500;
    padding-bottom: calc(var(--scale-factor) * 56);
    padding-inline: calc(var(--scale-factor) * 40);
}

.ceo-message__sign {
    bottom: 0;
    position: absolute;
    right: 0;
    text-align: right;

}

.ceo-message__sign-img {
    width: clamp(1px, 42.7vw, 508px);
}

.ceo-message__sign-text {
    padding-inline: clamp(1px, 4vw, 50px);
    font-weight: bold;
    font-size: 18px;
    color: #1e1e1e;
}

#company {
    background-color: #F2F4FA;
    padding-inline: 0;
    padding-top: clamp(1px, 10vw, 128px);
}

#company .section-title {
    font-size: 60px;
}

.company__list {
    font-size: clamp(12px, 1.4vw, 18px);
    font-weight: bold;
    padding-bottom: clamp(1px, 4.4vw, 56px);
    padding-inline: clamp(1px, 2vw, 26px);
    margin-top: clamp(1px, 6vw, 76px);
}

.company__list hr {
    margin-block: clamp(1px, 3.1vw, 40px);
}

.company__item {
    display: flex;
    color: #231815;
    padding: 30px 0;
    border-bottom: 1px solid #919292;
    font-size: 15px;
}
.company__item:first-child {
    padding-top: 0;
}

.company__item:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

.company__item-title {
    flex: 1;
}

.company__item-description {
    flex: 5;
}

.company__map iframe {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    aspect-ratio: 2 / 1;
    display: block;
    filter: grayscale(100%);
    margin-inline: auto;
    width: 100%;
    max-height: 566px;
}

#awards {
    /* padding-block: 96px; */
    padding-top: 96px;
    padding-bottom: 26px;
}

#awards .section__wrapper {
    max-width: 1050px;
    width: 82.03%;
    /* width: 100%; */
    padding: 0;
}

#awards .section-title {
    margin-bottom: clamp(1px, 4vw, 50px);
}

.awards__investors-list {
    align-items: center;
    column-gap: clamp(1px, 3.8vw, 48px);
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    justify-items: center;
    margin-bottom: clamp(1px, 9vw, 116px);
    margin-top: clamp(1px, 3vw, 38px);
    row-gap: clamp(1px, 5.6vw, 72px);
}

.awards__investors-img {
    display: block;
    margin-inline: auto;
}

.awards__investors-img.jr-west {
    width: clamp(1px, 19.5vw, 250px);
}

.awards__investors-img.mercari {
    width: clamp(1px, 17.3vw, 221px);
}

.awards__investors-img.ksk {
    width: clamp(1px, 6.25vw, 80px);
}

.awards__investors-img.kdx {
    width: clamp(1px, 13.8vw, 177px);
}

.awards__investors-img.jr-east {
    width: clamp(1px, 19.5vw, 250px);
}

.awards__investors-img.spiral-capital {
    width: clamp(1px, 19.5vw, 250px);
}

.awards__investors-img.keikyu {
    width: clamp(1px, 15.9vw, 203px);
}

.awards__list {
    /* align-items: center; */
    column-gap: clamp(1px, 3.8vw, 48px);
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    justify-items: center;
    margin-bottom: 100px;
    /* margin-bottom: clamp(1px, 9vw, 116px); */
    margin-top: clamp(1px, 3vw, 38px);
    row-gap: clamp(1px, 5.6vw, 72px);
}

.awards__item {
    text-align: center;
}

.awards__img-box {
    height: clamp(1px, 12.5vw, 160px);
    margin-bottom: 20px;
}

.awards__img {
    display: block;
    margin-inline: auto;
}

.awards__img.infinity {
    width: clamp(1px, 23.8vw, 304px);
}

.awards__img.jr {
    width: clamp(1px, 14.8vw, 190px);
}

.awards__img.tech-crunch-tokyo {
    width: clamp(1px, 15.6vw, 200px);
}

.awards__img.keikyu {
    width: clamp(1px, 14.8vw, 190px);
}

.awards__name {
    /* font-size: clamp(12px, 1.4vw, 18px); */
    font-size: 18px;
    font-weight: bold;
    color: #231815;
}

.awards__description {
    /* font-size: clamp(12px, 1.1vw, 14px); */
    font-size: 14px;
    color: #231815;
}

.awards__scroll {
    height: 128px;
    background-color: #ebebeb;
    display: flex;
    justify-content: center;
    align-items: center;
    /* padding-block: calc(var(--scale-factor) * 47); */
}

.awards__scroll img {
    width: 70%;
}

.careers-fv {
    /* position: absolute; */
}

.careeers-fv-img {
    width: 100%;
}

.right-align-section {
    background-color: #FFFFFF;
    margin-left: auto;
    padding-block: calc(var(--scale-factor) * 48);
    padding-right: 5%;
    position: relative;
    bottom: 78px;
    width: 95%;
}

#media-assets.right-align-section {
    padding-bottom: 0;
}

.right-align-section .section__wrapper {
    /* width: 92%; */
    width: 80%;
    /* width: 92.3%; */
}

.career-values .section__wrapper {
    width: 83.3%;
}

.careers-at-ecbo__button {
    align-items: center;
    background-color: #F1FAF9;
    border: 3px solid #77CEC5;
    border-radius: clamp(1px, 6vw, 70px);
    color: #77CEC5;
    display: flex;
    gap: 10px;
    height: clamp(1px, 11vw, 140px);
    margin-block: 6.85%;
    padding: 0 12.1% 0 6.28%;
    width: 100%;
    justify-content: space-between;
}

.careers-at-ecbo__button-title {
    font-size: 50px;
    font-weight: bold;
    /* font-size: clamp(12px, 3.9vw, 50px); */
}

.careers-at-ecbo__button-text {
    font-size: 30px;
    /* font-size: clamp(12px, 2.3vw, 30px); */
}

.careers-at-ecbo__title {
    color: #77CEC5;
    /* font-size: clamp(12px, 5.3vw, 40px); */
    font-size: 42px;
    font-weight: normal;
    margin-block: 4.75%;
    font-weight: 500;
    line-height: 2;
}

.careers-at-ecbo__description {
    font-size: clamp(12px, 1.9vw, 20px);
    margin-block: 3.8%;
    font-weight: 500;
    color: #1e1e1e;
    line-height: 2;
    letter-spacing: 1.2px;
}

.careers-at-ecbo__img {
    aspect-ratio: 1051 / 540;
    border-radius: calc(var(--scale-factor) * 35);
    width: 100%;
}

.values__list {
    column-gap: 4.94%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 4.75%;
    /* padding: 32px 0 4.75%; */
    padding: 32px 0 10%;
    row-gap: clamp(1px, 6.8vw, 87px);
}

.values__img {
    aspect-ratio: 500 / 280;
    border-radius: calc(var(--scale-factor) * 32);
    /* margin-bottom: 7%; */
    margin-bottom: 32px;
    width: 100%;
}

.values__title {
    color: #77CEC5;
    font-size: clamp(12px, 3.73vw, 20px);
    margin-top: initial;

}

.values__title span {
    color: #77CEC5;
    font-size: 28px;
    font-weight: bold;
}

.values__subtitle {
    font-size: clamp(12px, 2.27vw, 17px);
    font-weight: bold;
    margin-bottom: 6.4%;
    color: #251e1c;
}

.values__description {
    font-size: 16px;
    /* font-size: clamp(12px, 1.87vw, 14px); */
    color: #1e1e1e;
    line-height: 1.7;
    font-weight: 500;
}

#outlook {
    background-color: #77CEC5;
    color: #FFFFFF;
    padding-block: 4%;
}

.outlook__description {
    font-size: 16px;
    /* font-size: clamp(12px, 1.87vw, 14px); */
    margin-block: 3.42%;
    font-weight: 500;
}

#outlook .section-title,
#outlook .section-subtitle {
    color: #fff;
}

#outlook .section-subtitle p::before {
    background: #fff;
}

#company-profile {
    margin-block: 8%;
}

.company-profile__slide {
    margin-block: 4.19%;
}

.company-profile__slide iframe {
    aspect-ratio: 960 / 569;
    width: 100%;
}

#careers .section__wrapper {
    height: clamp(1px, 39.77vw, 509px);
    /* position: relative; */
    z-index: 1;
}

.careers-section {
    position: relative;
}

.careers-content {
    padding-top: 4.77vw;
    width: 36.3%;
}

#career-news {
    padding-top: 95px;
}

.careers__img {
    aspect-ratio: 694 / 509;
    border-radius: 35px 0 0 35px;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: auto;
    /* max-width: 694px; */
    width: 54.22%;
}

.careers__description {
    font-size: clamp(12px, 1.09vw, 14px);
    margin-block: clamp(1px, 3.75vw, 48px);
    padding-right: 10%;
    font-weight: 500;
}

.careers__more-button {
    aspect-ratio: 200 / 46;
    align-items: center;
    color: #77CEC5;
    display: flex;
    background-color: #FFFFFF;
    border: 2px solid #77CEC5;
    border-radius: 100px;
    font-size: clamp(12px, 1.17vw, 15px);
    font-weight: bold;
    justify-content: center;
    text-align: center;
    width: 15.625vw;
}

.careers__more-button:hover {
    background: #77CEC5;
    color: #fff;
}

.bg-gray {
    background-color: #F2F4FA;
}

#services {
    background-color: #F2F4FA;
}

.services__logo-images {
    position: relative;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    height: clamp(1px, 8.945vw, 114px);
    margin-top: clamp(1px, 4.453vw, 57px);
    place-items: center center;
    z-index: 1;
}

.services__logo-image {
    display: block;
    margin-inline: auto;
    width: 70%;
}

.services__logo-divider {
    border: 0.5px solid;
    height: 100%;
}

.services__down-btn {
    display: block;
    margin-inline: auto;
    margin-top: clamp(1px, 1.875vw, 24px);
    width: clamp(1px, 1.594vw, 20.4px);
}

.ecbo-cloak__main {
    background-color: #FFFFFF;
    border-radius: clamp(1px, 2.813vw, 36px);
}

.scroll-offset {
    position: relative;
}
.scroll-offset::before {
    content: "";
    display: block;
    height: 100px;
    margin-top: -100px;
    visibility: hidden;
}

.ecbo-cloak__summary {
    grid-template-columns: 1fr 1fr;
    display: grid;
    margin-top: clamp(1px, 6.328vw, 81px);
}

.ecbo-cloak__summary-text {
    background-color: #D2E3F0;
    border-bottom-left-radius: clamp(1px, 2.813vw, 36px);
    border-top-left-radius: clamp(1px, 2.813vw, 36px);
}

.services__logo-imageSp02,
.services__logo-imageSp04 {
    width: clamp(1px, 18.75vw, 240px);
    /* margin-top: 20px; */
    margin: 5% auto 0;
}

.ecbo-cloak__summary-text img {
    display: block;
    /* margin-inline: auto; */
    /* margin-top: clamp(1px, 7.5vw, 96px); */
    /* width: clamp(1px, 18.75vw, 240px); */
}

.ecbo-cloak__summary-text-border {
    border: 1px solid;
    margin-block: clamp(1px, 3.125vw, 40px);
    margin-inline: auto;
    width: clamp(1px, 2.344vw, 30px);
}

.ecbo-cloak__summary-img img {
    border-bottom-right-radius: clamp(1px, 2.813vw, 36px);
    border-top-right-radius: clamp(1px, 2.813vw, 36px);
    height: 100%;
}

.ecbo-cloak__description {
    margin-inline: auto;
    text-align: center;
    /* width: 73.5%; */
    width: 89.5%;
    /* font-size: 14px; */
    font-size: calc(var(--scale-factor) * 14);
    font-weight: 500;
}

.ecbo-cloak__more-button {
    aspect-ratio: 200 / 46;
    align-items: center;
    color: #77CEC5;
    display: flex;
    background-color: #FFFFFF;
    border: 2px solid #77CEC5;
    border-radius: 100px;
    font-size: clamp(12px, 1.17vw, 15px);
    font-weight: bold;
    justify-content: center;
    margin-block: clamp(1px, 1.563vw, 20px);
    margin-inline: auto;
    text-align: center;
    width: 15.625vw;
}

.ecbo-cloak__more-button:hover {
    background: #77CEC5;
    color: #fff;
}

.ecbo-cloak__figure {
    margin-top: clamp(1px, 7.5vw, 96px);
    padding-inline: clamp(1px, 2.813vw, 36px);
    padding-bottom: clamp(1px, 5.234vw, 67px);
}

.ecbo-cloak__movie-container {
    column-gap: calc(var(--scale-factor) * 50);
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-top: calc(var(--scale-factor) * 45);
    row-gap: calc(var(--scale-factor) * 80);
}

.ecbo-cloak__movie-container iframe {
    aspect-ratio: 500 / 287.8211;
    width: 100%;
}

#ecbo-cloak__movie-more-button,
#ecbo-pickup__movie-more-button {
    display: none;
}

.services-border {
    border: 1px solid #FFFFFF;
    margin-bottom: calc(var(--scale-factor) * 80);
    margin-top: calc(var(--scale-factor) * 100);
}

.ecbo-pickup__main {
    background-color: #FFFFFF;
    border-radius: clamp(1px, 2.813vw, 36px);
}

.ecbo-pickup__summary {
    grid-template-columns: 1fr 1fr;
    display: grid;
    margin-top: clamp(1px, 6.328vw, 81px);
}



.ecbo-pickup__summary-text {
    background-color: #FFEADF;
    border-bottom-left-radius: clamp(1px, 2.813vw, 36px);
    border-top-left-radius: clamp(1px, 2.813vw, 36px);
	        padding-bottom: 24px;
}

.ecbo-pickup__summary-text img {
    display: block;
    /* margin-inline: auto;
    margin-top: clamp(1px, 7.5vw, 96px);
    width: clamp(1px, 18.75vw, 240px); */
}

.ecbo-pickup__summary-text-border {
    border: 1px solid;
    margin-block: clamp(1px, 3.125vw, 40px);
    margin-inline: auto;
    width: clamp(1px, 2.344vw, 30px);
}

.ecbo-pickup__summary-img img {
    border-bottom-right-radius: clamp(1px, 2.813vw, 36px);
    border-top-right-radius: clamp(1px, 2.813vw, 36px);
    height: 100%;
}

.ecbo-pickup__description {
    margin-inline: auto;
    text-align: center;
    width: 73.5%;
    /* font-size: 14px; */
    font-size: calc(var(--scale-factor)* 14);
    font-weight: 500;
}

.ecbo-pickup__more-button {
    aspect-ratio: 200 / 46;
    align-items: center;
    color: #77CEC5;
    display: flex;
    background-color: #FFFFFF;
    border: 2px solid #77CEC5;
    border-radius: 100px;
    font-size: clamp(12px, 1.17vw, 15px);
    font-weight: bold;
    justify-content: center;
    margin-block: clamp(1px, 1.563vw, 20px);
    margin-inline: auto;
    text-align: center;
    width: 15.625vw;
}

.services__logo-imageSp01 {
    width: 13.2%;
    margin: 0 auto;
    margin-top: clamp(1px, 7.5vw, 12%);
}

#careers-services .services__logo-imageSp01 {
    width: 12.2%;
    margin-top: clamp(1px, 7.5vw, 2.8%);
}

.services__logo-imageSp03 {
    width: 12.8%;
    height: auto;
    margin: 0 auto;
    margin-top: clamp(1px, 7.5vw, 13.6%);
}
#careers-services .services__large-logo {
    height: initial;
}

#careers-services .services__large-button {
    margin-bottom: 0;
}

#careers-services .services__large-item {
    background: initial;
    box-shadow: initial;
}

#careers-services .services__logo-imageSp03 {
    margin-top: clamp(1px, 7.5vw, 10.8%);
}

.ecbo-pickup__more-button:hover {
    background: #77CEC5;
    color: #fff;
}

.ecbo-pickup__figure {
    margin-top: clamp(1px, 7.5vw, 96px);
    padding-inline: clamp(1px, 2.813vw, 36px);
    padding-bottom: clamp(1px, 5.234vw, 67px);
}

.ecbo-pickup__movie-container {
    column-gap: calc(var(--scale-factor) * 50);
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-top: calc(var(--scale-factor) * 98);
    margin-top: calc(var(--scale-factor) * 45);
    row-gap: calc(var(--scale-factor) * 80);
}

.ecbo-pickup__movie-container iframe {
    aspect-ratio: 500 / 287.8211;
    width: 100%;
}

#safety-measures {
    background-color: #77CEC5;
}

#safety-measures .section__wrapper {
    padding-top: calc(var(--scale-factor) * 86);
    padding-bottom: calc(var(--scale-factor) * 100);
}

#safety-measures .section-title {
    color: #FFFFFF;
}

.safety-measures__img-box {
    background-color: #FFFFFF;
    border-radius: calc(var(--scale-factor) * 27);
    margin-top: calc(var(--scale-factor) * 32);
    padding-block: calc(var(--scale-factor) * 48);
}

.safety-measures__img-box img {
    display: block;
    margin-inline: auto;
    width: 90%;
}
.safety-measures__area {
    background: #fff;
    border-radius: 25px;
}

.safety-measures__area__inner {
    padding: 50px 0;
    display: flex;
    justify-content: center;
    align-items: self-start;
}
.safety-measuresBox {
    padding: 0 3.9%;
    border-right: 2px solid #cbcbcb;
}

.safety-measuresBox:last-child {
    border-right: none;
}
.safety-measuresBox img {
    display: block;
    width: 88px;
    height: auto;
    margin: 0 auto 50px;
}

.safety-measuresBox__ttl {
    font-size: 26px;
    color: #77CEC5;
    text-align: center;
    margin-bottom: 40px;
}

.safety-measuresBox__txt {
    font-size: 16px;
    color:  #1e1e1e;
    line-height: 1.9;
}

#ecbo-spot {
    background-color: #FFFFFF;
}

#ecbo-spot .section__wrapper {
    padding-top: calc(var(--scale-factor) * 101);
    padding-bottom: calc(var(--scale-factor) * 88);
}

.ecbo-spot__description {
    color: #77CEC5;
    font-size: calc(var(--scale-factor) * 39);
    margin-top: calc(var(--scale-factor) * 62);
}

.ecbo-spot__img-box {
    margin-top: calc(var(--scale-factor) * 111);
}

.ecbo-spot__button {
    margin-top: calc(var(--scale-factor) * 82);
    border: 3px solid #77CEC5 !important;
}

.wide-button {
    aspect-ratio: 1051 / 140;
    align-items: center;
    background-color: #F1FAF9;
    border: 1.5px solid #77CEC5;
    border-radius: 6vw;
    color: #77CEC5;
    display: flex;
    justify-content: space-between;
    margin-inline: auto;
    max-width: 1400px;
    padding-left: calc(var(--scale-factor) * 64);
    padding-right: calc(var(--scale-factor) * 109);
    width: 100%;
}


.wide-button-title {
    font-size: calc(var(--scale-factor) * 50);
    font-weight: bold;
}

.wide-button-text {
    font-size: calc(var(--scale-factor) * 30);
    font-weight: 400;
}

#media-assets {
    background-color: #FFFFFF;
}

.media-assets-button {
    margin-top: calc(var(--scale-factor) * 73);
    border: 3px solid #77CEC5;
}

.press-info-button {
    margin-top: calc(var(--scale-factor) * 30);
    border: 3px solid #77CEC5;
}

#media-assets-buttons {
    margin-bottom: calc(var(--scale-factor) * 149);
}

#official-media {
    padding-block: calc(var(--scale-factor) * 130);
}

#official-media .section__wrapper {
    margin-left: calc(var(--scale-factor) * 200);
    max-width: none;
    width: auto;
}

.official-media__main-item {
    background-color: #FFFFFF;
    border-radius: calc(var(--scale-factor) * 36) 0 0 calc(var(--scale-factor) * 36);
    display: grid;
    grid-template-areas:
        'image title icon'
        'image description description';
    margin-top: calc(var(--scale-factor) * 58);
    padding-bottom: calc(var(--scale-factor) * 36);
    padding-left: calc(var(--scale-factor) * 21);
    padding-top: calc(var(--scale-factor) * 39);
    position: relative;
}

.official-media__main-image {
    aspect-ratio: 416 / 145;
    grid-area: image;
    width: calc(var(--scale-factor) * 416);
}

.official-media__main-title {
    color: #77CEC5;
    font-size: calc(var(--scale-factor) * 25);
    grid-area: title;
    place-self: center start;
}

.official-media__main-icon {
    grid-area: icon;
    place-self: center center;
    width: calc(var(--scale-factor) * 24);
}

.official-media__main-description {
    font-size: calc(var(--scale-factor) * 14);
    grid-area: description;
    line-height: 2;
    width: calc(var(--scale-factor) * 584.1);
    color: #231815;
}

.official-media__item {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: calc(var(--scale-factor) * 30);
    margin-right: calc(var(--scale-factor) * 200);
    margin-top: calc(var(--scale-factor) * 30);
}

.official-media__button {
    align-items: center;
    aspect-ratio: 511 / 101;
    background-color: #FFFFFF;
    border-radius: calc(var(--scale-factor) * 36);
    column-gap: calc(var(--scale-factor) * 16);
    display: grid;
    grid-template-columns: auto 1fr auto;
    padding-left: calc(var(--scale-factor) * 36);
    padding-right: calc(var(--scale-factor) * 39);
}

.official-media__button-sns {
    aspect-ratio: 1 /1;
    width: calc(var(--scale-factor) * 42);
}

.official-media__button-text {
    font-size: calc(var(--scale-factor) * 20);
    color: #1e1e1e;
}

.official-media__button-link {
    width: calc(var(--scale-factor) * 24);
}

.official-media__border {
    border: 1px solid #FFFFFF;
    margin-top: calc(var(--scale-factor) * 63);
    margin-bottom: calc(var(--scale-factor) * 60);
}

.official-media__president-title {
    font-size: calc(var(--scale-factor) * 35);
    font-weight: normal;
    margin-bottom: calc(var(--scale-factor) * 35);
    color: #231815;
}

.first-section {
    position: relative;
}

.first-section .section__wrapper {
    margin-right: 0;
    padding-left: calc(var(--scale-factor) * 55);
    padding-top: calc(var(--scale-factor) * 50);
    width: 95vw;
}

.first-section .section__title-container {
    background-color: #FFFFFF;
    top: calc(var(--scale-factor) * -28);
    padding-left: calc(var(--scale-factor) * 55);
    padding-top: calc(var(--scale-factor) * 49);
    position: absolute;
    right: 0;
    margin-top: -80px;
    /* margin-top: -108px; */
    width: 95%;
}

.news__container {
    column-gap: calc(var(--scale-factor) * 72);
    display: grid;
    grid-template-areas:
        'list links'
        'paginator .'
        'buttons buttons';
    grid-template-columns: 1.78fr 1fr;
    /* margin-top: calc(var(--scale-factor) * 31); */
}

.news__articles {
    /* width: 60%; */
    /* border-top: 1px solid #CFD0D0; */
    grid-area: list;
}

.news__article-content {
    width: calc(var(--scale-factor)* 407);
}

.news__paginator {
    align-items: center;
    display: grid;
    grid-area: paginator;
    justify-content: space-around;
    margin-inline: auto;
    margin-top: calc(var(--scale-factor) * 45);
    width: calc(var(--scale-factor) * 522);
}

.news__paginator .previouspostslink,
.news__paginator .nextpostslink {
    display: flex;
    justify-content: center;
    align-items: center;
	    font-size: 12px;
    font-weight: 500 !important;
}

.wp-pagenavi {
    column-gap: calc(var(--scale-factor) * 12);
    display: flex;
}

.wp-pagenavi .current,
.wp-pagenavi .page {
    aspect-ratio: 1 / 1;
    background-color: #F8F7F6;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: calc(var(--scale-factor) * 16.12);
    text-align: center;
    width: calc(var(--scale-factor) * 40);
}

.wp-pagenavi .current,
.wp-pagenavi .page:hover {
    background-color: #77CEC5;
    color: #FFFFFF;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
    align-items: center;
    display: flex;
    color: #77CEC5;
}

.news__links {
    background-color: #F2F4FA;
    grid-area: links;
    padding-left: calc(var(--scale-factor) * 47);
    padding-right: calc(var(--scale-factor) * 43);
    padding-top: calc(var(--scale-factor) * 59);
    padding-bottom: calc(var(--scale-factor) * 59);
}

.news__links-button {
    align-items: center;
    aspect-ratio: 259 / 80;
    background-color: #77CEC5;
    border-radius: calc(var(--scale-factor) * 40);
    color: #FFFFFF;
    display: flex;
    justify-content: center;
    margin-bottom: calc(var(--scale-factor) * 21);
    width: calc(var(--scale-factor) * 259);
    font-weight: 400;
    text-align: center;
}

.news__links-list-title {
    color: #77CEC5;
    font-size: calc(var(--scale-factor) * 17.5);
    font-weight: bold;
    margin-top: calc(var(--scale-factor) * 62);
}

.news__links-list-title--first-list {
    margin-top: calc(var(--scale-factor) * 103);
}

.news_links-list {
    /* border-top: 1px solid #CCCCCC; */
    margin-block: calc(var(--scale-factor) * 12);
}

.news_links-list li {
    /* border-bottom: 1px solid #CCCCCC; */
    font-size: calc(var(--scale-factor) * 14);
    padding-left: calc(var(--scale-factor) * 16);
    padding-bottom: calc(var(--scale-factor) * 12);
    padding-top: calc(var(--scale-factor) * 12);
}

.news_links-list li a {
    color: #231815;
}

.media-assets-buttons {
    grid-area: buttons;
    margin-bottom: calc(var(--scale-factor) * 118);
    margin-right: calc(var(--scale-factor) * 115);
}

.news__article {
    column-gap: calc(vafr(--scale-factor) * 25);
    /* border-bottom: 1px solid #CFD0D0; */
    display: grid;
    grid-template-areas:
        'thumbnail type'
        'thumbnail title';
    padding-block: calc(var(--scale-factor) * 20);
}

/* #news .news__article {
    display: block;
} */


.news__article-category {
    font-size: calc(var(--scale-factor) * 20);
    grid-area: type;
    align-self: end;
}

.news__article-title {
    font-size: calc(var(--scale-factor) * 17);
    font-weight: bold;
    grid-area: title;
    color: #231815;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    margin: 10px auto;
}


.news__article__img {
    border-radius: calc(var(--scale-factor)* 20);
    grid-area: thumbnail;
    width: calc(var(--scale-factor)* 266);
    height: 200px;
    /* aspect-ratio: 266 / 200; */
    display: flex;
    flex-shrink: 0;
    margin-right: 24px;
}

.news__article__img img {
    border-radius: 15px;
    object-fit: contain;
}


.news__article-txt {
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.news__article-title:hover {
    color: #77CEC5;
}

.news_sns-buttons {
    display: flex;
    gap: calc(var(--scale-factor) * 10);
    justify-content: right;
    margin: calc(var(--scale-factor) * 33) auto;
    margin-right: calc(var(--scale-factor) * 70);
}

.news__sns-image {
    aspect-ratio: 1 / 1;
    width: calc(var(--scale-factor) * 42);
}

#news-article {
    margin-top: calc(var(--scale-factor) * 70);
}

.wp-article {
    word-wrap: break-word;
}

.article-title {
    border-bottom: 1px solid #939494;
    margin-bottom: calc(var(--scale-factor) * 34);
    padding-bottom: calc(var(--scale-factor) * 27);
}

.article-date {
    color: #1E1E1E;
}

.article-content h2,
.article-content h3,
.article-content h4,
.article-content h5,
.article-content p,
.article-content img {
    margin-block: calc(var(--scale-factor) * 30);
}

.article-content p {
    /* font-size: calc(var(--scale-factor) * 17.72); */
    line-height: 1.83;
}

rticle-content.news-article__button {
    column-gap: calc(var(--scale-factor) * 13);
    display: flex;
    margin-top: calc(var(--scale-factor) * 102);
}

.news-article__button {
    display: flex;
    align-items: center;
}

.news-article__button p {
	    padding-left: 15px;
}

.news-article__button-arrow {
    aspect-ratio: 9.6957 / 18.3142;
    width: calc(var(--scale-factor) * 8.6957);
}

#pickup {
    margin-top: calc(var(--scale-factor) * 100);
}

/*============================
#contact タイトル
============================*/
#contact {
    font-family: 'Noto Sans CJK JP', sans-serif;
    letter-spacing: 0.05em;
}

.page-top__wrapper {
    position: relative;
    margin-bottom: min(6.64vw, 85px);
}

.page-top__title--wrapper {
    width: 95%;
    background-color: #fff;
    position: absolute;
    bottom: -15%;
    right: 0;
    padding-left: min(3.5vw, 45px);
    padding-top: min(2.7vw, 35px);
}

.section-subtitle {
    margin-bottom: 20px;
    /* margin-bottom: min(3.5vw, 45px); */
}
.section-subtitle p {
    position: relative;
    padding-left: 35px;
}
.section-subtitle p::before {
    position: absolute;
    content: "";
    width: 25px;
    height: 1px;
    top: 10px;
    left: 0;
    background: #000;
}


/*============================
#contact　コンテンツ
============================*/

.contact__contents {
    max-width: 1051px;
    margin-inline: auto;
    padding-top: 3.9vw;
    padding-bottom: 20.3vw;
}

.contact__inner,
.contact__item {
    /* max-width: 900px; */
    margin-inline: auto;
    padding-inline: min(5.3vw, 40px);
}

.contact__lead {
    font-size: clamp(12px, 1vw, 14px);
    font-weight: 500;
    line-height: 2;
    color: #231815;
    margin-bottom: calc(var(--scale-factor) * 62);
}

.contact__lead .contact__lead-head {
    font-size: 20px;
    font-weight: 500;
    line-height: 2;
    color: red;
    margin-bottom: calc(var(--scale-factor) * 62);
}

.letter-red {
    color: #ED5D5C;
}

/*============================
#contact　ラジオボタン
============================*/

fieldset {
    margin: 0;
    padding: 0;
    border: none;
}

legend {
    margin: 0;
    padding: 0;
    display: block;
}

.radio__wrapper {
    padding-top: 3.5vw;
}

.radio-field {
    border: none;
}

.radio__title {
    color: #77CEC5;
    margin-bottom: 1.17vw;
    padding: 0;
    white-space: nowrap;
    flex-shrink: 0;
    font-size: clamp(12px, 1.5vw, 20px);
    font-weight: bold;
    line-height: 1.4;
}

.radio__subject {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    flex-grow: 1;
    margin-bottom: min(4.2vw, 55px);
}

.radio__label {
    width: calc(50% - 8px);
}

input[type="radio"] {
    display: none;
}

.radio-category-item input[type="radio"],
.radio-year-item input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 16px;
    height: 16px;
    border: 1px solid #ddd;
    border-radius: 50%;
    position: relative;
    cursor: pointer;
    background-color: #fff;
    margin-right: 10px;
    display: block !important;
}

.radio-category-item input[type="radio"]:checked::before,
.radio-year-item input[type="radio"]:checked::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 8px;
    height: 8px;
    background-color: #77CEC5;
    border-radius: 50%;
}

.radio-category-item,
.radio-year-item label {
    display: flex;
    align-items: center;
}


.wpcf7-list-item-label {
    color: #1e1e1e;
    font-size: clamp(12px, 1.5vw, 20px);
    font-weight: 400;
    line-height: 2.15;
}

.wpcf7-list-item-label::before {
    content: "";
    display: inline-block;
    width: clamp(12px, 1.5vw, 20px);
    height: clamp(12px, 1.5vw, 20px);
    margin-right: 10px;
    border: 1px solid #1e1e1e;
    border-radius: 50%;
    padding: 2px;
    background-clip: content-box;
}

.wpcf7-form-control-wrap {
    display: flex;
    margin-top: min(1.17vw, 15px);
}

.wpcf7-list-item {
    display: flex;
    width: 45%;
}

.wpcf7-textarea {
    border: 2px solid #77CEC5;
    border-radius: 20px;
    height: 250px;
    padding: min(2.3vw, 30px);
    margin-bottom: min(3.9vw, 50px);
    width: 100%;
}

input[type="radio"]:not(:checked)+.wpcf7-list-item-label::before {
    border-color: #1e1e1e;
    vertical-align: middle;
}

input[type="radio"]:checked+.wpcf7-list-item-label::before {
    border-color: #1e1e1e;
    background-color: #77CEC5;
    vertical-align: middle;
}

#privacy_check .wpcf7-list-item-label::before {
    all: unset;
    /* 全てのスタイルをリセット */
    display: inline;
    /* 必要なら元のスタイルを指定 */
}


/*============================
#contact　入力項目
============================*/
.contact__item {
    display: flex;
    flex-direction: column;
}

.contact__label {
    color: #77CEC5;
    font-size: clamp(12px, 1.5vw, 20px);
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: min(1.17vw, 15px);
}

.contact__input {
    border: 2px solid #77CEC5;
    border-radius: 21.4px;
    height: 50px;
    padding: min(1.5vw, 20px) min(2.3vw, 30px);
    margin-bottom: min(3.1vw, 40px);
    width: 100%;
}

.required::after {
    content: '※';
    color: #ED5D5C;
    line-height: 1.4;
    width: clamp(12px, 1.5vw, 20px);
    margin-left: 3px;
}

.radio__flex,
.label__flex {
    display: flex;
    gap: 5%;
}

.label__flex {
    align-items: baseline;
}

.contact__input::placeholder,
.contact__textarea::placeholder {
    font-size: clamp(12px, 1.4vw, 18px);
    color: #9f9188;
    line-height: 2.38;
    font-weight: 400;
}

/* Webkit系 */
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    font-size: clamp(12px, 1.4vw, 18px);
    color: #9f9188;
    line-height: 2.38;
    font-weight: 400;
}

/* Firefox対応 */
input::-moz-placeholder,
textarea::-moz-placeholder {
    font-size: clamp(12px, 1.4vw, 18px);
    color: #9f9188;
    line-height: 2.38;
    font-weight: 400;
}

#message.contact__textarea {
    border: 2px solid #77CEC5;
    border-radius: 20px;
    height: 250px;
    padding: min(2.3vw, 30px);
    margin-bottom: min(3.9vw, 50px);
}

/*============================
#contact　エラーメッセージ
============================*/

.error-message,
.radio-error {
    display: none;
    background-color: #ed5d5c;
    color: #fff;
    font-size: clamp(12px, 1.5vw, 20px);
    line-height: 1.4;
    border-radius: 16px;
    padding-inline: 1.4vw;
    text-align: center;
}

.radio-error {
    width: 75%;
}

/*============================
ボタン
============================*/

.contact__button {
    display: inline-block;
    width: 100%;
    background-color: #77CEC5;
    border-radius: min(3.9vw, 50px);
    color: #fff;
    padding-block: 2.3vw;
    font-size: clamp(12px, 2.3vw, 30px);
    font-weight: 400;
    line-height: 2.03;
}

.footer__wrapper {
    background-color: #FFFFFF;
}

.footer__head {
    background-color: #F1F4F9;
}

.footer__head-content {
    color: #77CEC5;
    display: flex;
    gap: calc(var(--scale-factor) * 100);
    justify-content: space-between;
    margin-inline: auto;
    /* padding-block: calc(var(--scale-factor) * 35); */
    padding-block: calc(var(--scale-factor) * 44);
    text-align: center;
    width: 83%;
}

.footer__head-item-title {
    /* font-size: calc(var(--scale-factor) * 50); */
    font-size: 50px;
		color: #77CEC5;
        line-height: 1;
        margin-bottom: 20px;
}

.footer__head-item {
    /* margin-top: calc(var(--scale-factor) * 45); */
    margin-top: calc(var(--scale-factor) * 20);
}

.footer__head-item-img {
    height: calc(var(--scale-factor) * 56);
}

.footer__head-item-subtitle {
    font-size: 20px;
    /* font-size: calc(var(--scale-factor) * 20); */
    margin-bottom: calc(var(--scale-factor) * 53);
		color: #77CEC5;
        line-height: 1;
        font-weight: bold;
}

.footer__head-divider {
    border: 0.5px solid #77CEC5;
    height: calc(var(--scale-factor) * 420);
    margin: auto;
}

.footer__head-item-button {
    align-items: center;
    aspect-ratio: 200 / 46;
    color: #fff;
    display: flex;
    background-color: #77CEC5;
    border: 0.5px solid #77CEC5;
    border-radius: 30px;
    font-size: calc(var(--scale-factor) * 15);
    font-weight: bold;
    justify-content: center;
    margin-inline: auto;
    text-align: center;
    width: calc(var(--scale-factor) * 200);
}

.footer__head-item-button:hover::after {
    opacity: 0;
}

.footer__head-item-button:hover::before {
    opacity: 1;
    transform: translateY(-50%) scale(1);
}

.footer__head-item-description {
    /* font-size: 17px; */
    font-size: calc(var(--scale-factor) * 17);
    height: calc(var(--scale-factor) * 100);
    /* margin-bottom: calc(var(--scale-factor) * 35); */
    margin-bottom: 30px;
    color: #77CEC5;
    font-weight: 500;
}

.footer__foot-logo {
    width: calc(var(--scale-factor) * 250);
}

.footer__foot-content {
    margin-inline: auto;
		margin-top: 100px;
    /* margin-top: calc(var(--scale-factor) * 100); */
    /* max-width: 1050px; */
    width: 83%;
}

.footer__foot-head {
    align-items: center;
    display: flex;
    gap: calc(var(--scale-factor) * 83);
    margin-bottom: calc(var(--scale-factor) * 92);
}

.footer__foot-title {
    font-size: 25px;
    /* font-size: calc(var(--scale-factor) * 25); */
    letter-spacing: 0.08em;
    font-weight: 500;
}

.footer__foot-main {
    column-gap: calc(var(--scale-factor) * 90);
    display: grid;
    grid-template-columns: 42% 49.3%;
    grid-template-areas:
        "sitemap contact"
        "sitemap contact-large";
    justify-content: space-between;
    margin-bottom: calc(var(--scale-factor) * 62);
}

.sitemap {
    column-gap: calc(var(--scale-factor) * 60);
    display: grid;
    grid-area: sitemap;
    grid-template-columns: 1fr 1fr;
    row-gap: calc(var(--scale-factor) * 19);
}

.sitemap__item--wide {
    grid-column: span 2;
}

.sitemap__item summary {
    list-style: none;
    padding-bottom: calc(var(--scale-factor) * 9);
    border-bottom: 1px solid #CCCCCC;
}

.sitemap__item--no-list summary {
    border: none;
}

.sitemap__title {
    font-size: calc(var(--scale-factor) * 20);
}

.sitemap__title:hover {
    color: #77CEC5;
}

.sitemap__item--no-list {
    border: none;
}

.sitemap__list {
    display: flex;
    flex-direction: column;
    font-size: calc(var(--scale-factor) * 18);
    gap: calc(var(--scale-factor) * 15);
    margin-top: calc(var(--scale-factor) * 15);
    /* margin-block: calc(var(--scale-factor) * 15); */
}

.sitemap__list li:hover {
    color: #77CEC5;
}

.footer_buttons {
    width: 49.14%;
}

.footer__contact {
    grid-area: contact;
    /* margin-bottom: -50px; */
    /* margin-bottom: calc(var(--scale-factor) * 36); */
    margin-bottom: 36px;
}

.footer__contact-list {
    display: grid;
    gap: calc(var(--scale-factor) * 20);
    grid-template-columns: 1fr 1fr;
}

.footer__contact-list-button {
    align-items: center;
    aspect-ratio: 251.413 / 46;
    display: flex;
    border: calc(var(--scale-factor) * 1.069) solid;
    border-radius: calc(var(--scale-factor) * 35);
    font-size: calc(var(--scale-factor) * 18);
    font-weight: bold;
    gap: calc(var(--scale-factor) * 14);
    padding-inline: calc(var(--scale-factor) * 30);
    text-align: center;
    transition: .2s ease-in;
    /* padding: 0 36px 0 50px; */
    padding: 0 14% 0 20%;
}
.footer__contact-list li {
    position: relative;
}
.footer__contact-list li span::before {
    position: absolute;
    content: "";
    width: 40px;
    height: calc(var(--scale-factor) * 25);
    top: 50%;
    left: 15%;
    opacity: 1;
    transform: translateY(-50%) translateX(-50%);
    transition: .2s ease-in;
}
.footer__contact-list li:first-child span::before {
    background-image: url('imgs/icon_chart-black.svg');
}
.footer__contact-list li:nth-child(2) span::before {
    background-image: url('imgs/icon_zoom-black.svg');
}
.footer__contact-list li:nth-child(3) span::before {
    background-image: url('imgs/icon_note-black.svg');
}
.footer__contact-list li:last-child span::before {
    background-image: url('imgs/icon_bubble.svg');
}


.footer__contact-list li:hover:first-child span::before {
    background-image: url('imgs/icon_chart-white.svg');
}
.footer__contact-list li:hover:nth-child(2) span::before {
    background-image: url('imgs/icon_zoom-white.svg');
}
.footer__contact-list li:hover:nth-child(3) span::before {
    background-image: url('imgs/icon_note-white.svg');
}
.footer__contact-list li:hover:last-child span::before {
    background-image: url('imgs/icon_bubble-white.svg');
}
.footer__contact-list-button:hover {
    background-color: #77CEC5;
    color: #FFFFFF;
    transition: .2s ease-in;
}


.footer__contact-list img {
    height: calc(var(--scale-factor) * 25);
}

.footer__inquiry {
    display: flex;
    flex-direction: column;
    gap: calc(var(--scale-factor) * 20);
    grid-area: contact-large;
}

.footer__inquiry-button {
    align-items: center;
    aspect-ratio: 519 / 166;
    /* aspect-ratio: 519 / 136; */
    background-color: #FFFFFF;
    border: calc(var(--scale-factor) * 0.94) solid;
    border-radius: calc(var(--scale-factor) * 20);
    display: flex;
    font-size: calc(var(--scale-factor) * 18);
    font-weight: bold;
    gap: calc(var(--scale-factor) * 10);
    justify-content: center;
}

.footer__inquiry-button-mail-image {
    height: calc(var(--scale-factor) * 18);
}

.footer__inquiry-button-luggage-image {
    height: calc(var(--scale-factor) * 30);
}

.footer__inquiry-button--color {
    background-color: #77CEC5;
    color: #FFFFFF;
}

.footer__foot-foot {
    align-items: center;
    display: flex;
    margin-bottom: calc(var(--scale-factor) * 74);
}

.sns-list {
    display: flex;
    gap: 10px;
}

.footer__sns-image {
    width: calc(var(--scale-factor) * 42);
}

.footer__legal {
    margin-left: 48px;
}

.legal__list {
    display: flex;
    gap: calc(var(--scale-factor) * 20);
    margin-bottom: calc(var(--scale-factor) * 17);
}

.legal__item {
    font-weight: bold;
    font-size: calc(var(--scale-factor) * 12);
}

.legal__item-divider {
    border: 0.5px solid;
    /* height: calc(var(--scale-factor) * 12); */
    height: 10px;
    margin-block: auto;
    color: #1E1E1E;
}

.pagetop-button {
    align-items: center;
    display: flex;
    font-weight: bold;
    font-size: 15px;
    /* font-size: calc(var(--scale-factor) * 15); */
    gap: calc(var(--scale-factor) * 12);
    margin-left: auto;
}

.pagetop-button img {
    width: calc(var(--scale-factor) * 35);
}


/* プログレスバー */
/* .progress-bar {
	width: 84.38%;
	height: 4px;
	margin: 64px auto 30px;
	background: #c9caca;
  position: relative;
  overflow: hidden;
} */

.progress-bar__inner {
  height: 100%;
  width: 0%;
  background: #77cec5;
  transition: width 0.3s ease;
}

.news-slider__list .splide__slide img {
	/* height: 270px; */
    height: auto;
    aspect-ratio: 340 / 255;
	object-fit: contain;
}

#career-news .news-slider__list .splide__slide img {
    /* aspect-ratio: 245 / 180 !important; */
}

#career-news {
    padding-bottom: 90px;
}

.pc-display {
	display: flex;
}
.sp-display {
	display: none !important;
}

.header__nav-link.active {
  position: relative;
}

.header__nav-link.active::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 2px;
  background-color: #fff; /* 下線の色 */
}

.header-pc__wrapper--shrink .header__nav-link.active {
  position: relative;
}

.header-pc__wrapper--shrink .header__nav-link.active::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 2px;
  background-color: #77CEC5; /* 下線の色 */
}
.splide__arrows.splide__arrows--ltr {
	display: none;
}
.news-slider.splide {
	margin-top: 115px;
}

.scroll {
    z-index: 1;
    position: absolute;
    bottom: 0px;
    left: 7%;
    transform: translateY(0) translateX(-50%);
    height: 66px;
}
.scroll span {
    display: block;
    padding-left: 70px;
    padding-top: 20px;
    color: #fff;
    font-size: 20px;
}
.scroll::after {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 1px;
    height: 132px;
    background: #fff;
    transform: translateX(-50%);
    opacity: 0;
    animation: pathmove 2s ease-in-out infinite;
}
@keyframes pathmove {
    0%{
        height:0;
        top:0;
        opacity: 0;
    }
    20%{
        height: 66px;
        opacity: 1;
    }
    100%{
        height:0;
        top: 132px;
        opacity: 0;
        background: #000;
    }

}
/* .footer__inquiry-button--color::after {
    background: #fff;
} */

.hover-line-green {
    background-image: linear-gradient(to right, #77CEC5 100%, transparent 0%);
    background-repeat: no-repeat;
    background-size: 0% 1px;
    background-position: 0 100%;
    transition: background-size 0.8s cubic-bezier(0.43, 0.05, 0.17, 1);
    line-height: 1.6; /* お好みで */
    cursor: pointer;
}

.hover-line-trigger:hover .hover-line-green {
    background-size: 100% 1px;
}

#news-article .section__wrapper {
    max-width: 1000px;
}

.category-information,
.category-mediaexposure,
.category-newsrelease,
.category-press {
    display: inline-block;
    text-decoration: none;
    font-size: .8rem;
    color: #fff;
    border-radius: 1em;
    padding: 0 .8em;
    margin: 0 5px 0 15px;
    line-height: 1.6;
}

#top-news .news-slider__category,
#career-news .news-slider__category {
    margin-left: 0;
    font-weight: 400;
}

.category-information {
    background-color: #FFCC66;
}

.category-mediaexposure {
    background-color: #F06543;
}

.category-newsrelease {
    background-color: #5AB0F1;
}

.category-press {
    background-color: #5abeb4;
}

.radio-year-item {
    display: flex;
    align-items: center;
}

.pickup-noList {
    text-align: center;
}




@media screen and (max-width: 1049px) {
    #awards .section__wrapper {
        padding: 0 40px;
    }
    #awards .section-title {
        font-size: 50px;
    }
    .careers-content {
        padding-top: 1.77vw;
        width: 47.3%;
    }
    .careers__img {
        width: 47.22%;
    }
}

@media screen and (max-width: 768px) {
    :root {
        --design-width-px: 750;
    }

    .sp-break {
        display: inline;
    }

    .pc-break {
        display: none;
    }

    #header-pc__wrapper {
        display: none;
    }

    .header-sp__wrapper {
        align-items: center;
        display: flex;
        justify-content: space-between;
				padding-top: 0;
        /* padding-block: calc(var(--scale-factor) * 36); */
        padding-inline: calc(var(--scale-factor) * 30);
        position: fixed;
        width: 100%;
        z-index: 2;
				top: 25px;
    }

    .header__logo img {
        /* width: calc(var(--scale-factor) * 240); */
				width: 85px;
    }

    .hamburger-sp__button {
        background-color: #77CEC5;
        border-radius: 50%;
        cursor: pointer;
        display: block;
				height: 40px;
        /* height: calc(var(--scale-factor) * 96); */
        position: relative;
        text-align: center;
				width: 40px;
        /* width: calc(var(--scale-factor) * 96); */
        z-index: 100;
    }

    .hamburger-sp__button .bar {
        position: absolute;
        /* width: calc(var(--scale-factor) * 40); */
        width: 20px;
        height: 1px;
        /* left: 30%; */
        left: 26%;
        background: #FFFFFF;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }

    .hamburger-sp__button .bar:nth-child(1) {
        top: 40%;
    }

    .hamburger-sp__button .bar:nth-child(2) {
        top: 50%;
    }

    .hamburger-sp__button .bar:nth-child(3) {
        top: 60%;
    }

    .hamburger-sp__close-button {
        aspect-ratio: 1 / 1;
        background-color: #77CEC5;
        border-radius: 50%;
        position: relative;
        text-align: center;
        width: 38px;
        height: 38px;
        /* width: calc(var(--scale-factor) * 96); */
    }

    .hamburger-sp__close-button .bar {
        position: absolute;
        width: calc(var(--scale-factor) * 34);
        height: 1px;
        left: 25%;
        background: #FFFFFF;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }

    .hamburger-sp__close-button .bar:nth-child(1) {
        top: 50%;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .hamburger-sp__close-button .bar:nth-child(2),
    .hamburger-sp__close-button .bar:nth-child(3) {
        top: 50%;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .hamburger-sp__menu {
        background-color: #2E2725;
        background-image: url('imgs/bg_berger-menu.png');
        background-size: contain;
        color: #FFFFFF;
        display: none;
        height: 100%;
        left: 0;
        opacity: 0;
        overflow: auto;
        position: fixed;
        top: 0;
        transition: opacity .6s ease, visibility .6s ease;
        width: 100%;
        z-index: 101;
    }

    .hamburger-sp__menu.active {
        opacity: 100;
        display: block;
    }

    .hamburger-sp__head {
        align-items: center;
        column-gap: calc(var(--scale-factor) * 37);
        display: grid;
        grid-template-columns: auto 1fr auto;
        justify-content: space-between;
        padding-block: calc(var(--scale-factor) * 36);
        padding-inline: calc(var(--scale-factor) * 30);
    }

    .hamburger-sp__head-logo {
        width: calc(var(--scale-factor) * 170);
    }

    .hamburger-sp__head-title {
        font-size: calc(var(--scale-factor) * 25);
    }

    .hamburger-sp__main {
        padding-inline: calc(var(--scale-factor) * 45);
    }

    .hamburger-sp__contact-button {
        align-items: center;
        aspect-ratio: 6.6 / 1;
        display: flex;
        background-color: #FFFFFF;
        border-radius: calc(var(--scale-factor) * 50);
        color: #231815;
        font-size: clamp(12px, 4vw, 30px);
        font-weight: bold;
        gap: calc(var(--scale-factor) * 45);
        padding-inline: calc(var(--scale-factor) * 49);
        text-align: center;
    }

    .hamburger-sp__contact-item {
        margin-bottom: 3.33%;
    }

    .hamburger-sp__contact-button img {
        height: calc(var(--scale-factor) * 56);
    }

    .hamburger-sp__sitemap {
        margin-top: calc(var(--scale-factor) * 30);
    }

    .hamburger-sp__sitemap-list {
        display: flex;
        flex-direction: column;
        font-size: calc(var(--scale-factor) * 33);
        row-gap: calc(var(--scale-factor) * 20);
        padding-block: 3%;
    }

    .hamburger-sp__sitemap-item summary {
        align-items: center;
        border-bottom: 1px solid #CCCCCC;
        color: #FFFFFF;
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        margin-top: calc(var(--scale-factor) * 27);
        padding-block: calc(var(--scale-factor) * 27);
        position: relative;
    }

    .hamburger-sp__sitemap-item summary::-webkit-details-marker {
        display: none;
    }

    .hamburger-sp__sitemap-item summary::before,
    .hamburger-sp__sitemap-item summary::after {
        width: 1px;
        height: calc(var(--scale-factor) * 24);
        background-color: #FFFFFF;
        content: '';
    }

    .hamburger-sp__sitemap-item--no-list summary::before,
    .hamburger-sp__sitemap-item--no-list summary::after {
        display: none;
    }

    .hamburger-sp__sitemap-item summary::before {
        position: absolute;
        right: calc(var(--scale-factor) * 33);
        /* rotate: 90deg; */
    }

    .hamburger-sp__sitemap-item summary::after {
        margin-right: calc(var(--scale-factor) * 33);
        transition: rotate .3s;
    }

    .hamburger-sp__sitemap-item summary::after {
        rotate: 90deg;
    }

    .hamburger-sp__sitemap-item p {
        transform: translateY(-10px);
        opacity: 0;
        margin: 0;
        padding: .3em 2em 1.5em;
        color: #333333;
        transition: transform .5s, opacity .5s;
    }

    .hamburger-sp__sitemap-item[open] p {
        transform: none;
        opacity: 1;
    }

    .hamburger-sp__sitemap-title {
        border-bottom: none;
        font-size: clamp(12px, 4.4vw, 33px);
        font-weight: bold;
    }

    .hamburger-sp__inquiry {
        margin-top: 25px;
        margin-bottom: 35px;
        /* margin-bottom: calc(var(--scale-factor) * 76);
        margin-top: calc(var(--scale-factor) * 50); */
    }

    .hamburger-sp__inquiry-button {
        aspect-ratio: 660 / 130;
        align-items: center;
        background-color: #FFFFFF;
        border-radius: calc(var(--scale-factor) * 40);
        color: #1E1E1E;
        display: flex;
        font-size: clamp(12px, 4vw, 30px);
        font-weight: bold;
        gap: calc(var(--scale-factor) * 44);
        justify-content: center;
        width: 100%;
        margin-block: 3%;
    }

    .hamburger-sp__inquiry-button--color {
        color: #FFFFFF;
        background-color: #77CEC5;
    }
    .hamburger-sp__inquiry-button--color::after {
        background: #fff;
    }

    .hamburger-sp__inquiry-button img {
        height: calc(var(--scale-factor) * 64);
    }

    .hamburger-sp__inquiry-button--color img {
        height: calc(var(--scale-factor) * 40);
    }

    .hamburger-sp__sns-list {
        display: flex;
        column-gap: 7%;
        justify-content: center;
        margin-inline: auto;
        width: 45%;
    }

    .hamburger-sp__sns-image {
        width: 100%;
    }

    .hamburger-sp__legal-list {
        display: flex;
        gap: 4.5%;
        justify-content: center;
        /* margin-block: 10%; */
        margin: 50px auto 12.5px;
    }

    .hamburger-sp__legal-item {
        font-weight: bold;
        font-size: clamp(1px, 2.7vw, 20px);
    }

    .hamburger-sp__legal-item-divider {
        border: 0.5px solid;
        height: clamp(1px, 2.7vw, 20px);
        margin-block: auto;
    }

    .hamburger-sp__copyright {
        font-size: clamp(1px, 2.7vw, 20px);
        text-align: center;
        padding-bottom: 27px;
    }

    main {
        padding-top: 0;
    }

    .fv__main {
        padding-top: 130px;
        /* padding-top: calc(var(--scale-factor) * 285); */
        width: calc(var(--scale-factor) * 660);
    }

    .fv__lead {
        margin-inline: calc(var(--scale-factor) * 27);
        font-size: calc(var(--scale-factor) * 50);
        margin-bottom: 20px;
        line-height: 1;
    }

    .fv__lead-en {
        margin-inline: calc(var(--scale-factor) * 36);
    line-height: 1;
    font-weight: 500;
    }

    .fv__button-list {
        grid-template-columns: 1fr;
        margin-top: 155px;
        /* margin-top: calc(var(--scale-factor) * 310); */
    }

    .fv__button {
        aspect-ratio: 660 / 120;
        border-radius: calc(var(--scale-factor) * 40);
        font-size: calc(var(--scale-factor) * 30);
    }

    #section-indicator {
        display: none;
    }

    #about-us {
        position: relative;
        z-index: 0;
			padding-top: 56px;
        padding-bottom: calc(var(--scale-factor) * 805);
    }

    .about-us__image {
        top: auto;
        bottom: calc(var(--scale-factor) * -151);
    }

    .section__wrapper {
      width: 90%;
    }

    .section-title {
        font-size: calc(var(--scale-factor) * 60);
				line-height: 1;
        margin-bottom: 13px;
        color: #1e1e1e;
    }

    .section-subtitle {
        font-size: calc(var(--scale-factor) * 20);
        margin-top: calc(var(--scale-factor) * 1);
        line-height: 1;
        color: #231815;
    }

    .about-us__content {
        width: 100%;
				margin-top: 33px;
        /* margin-block: calc(var(--scale-factor) * 72); */
    }

    .about-us__title {
        font-size: calc(var(--scale-factor) * 40);
        margin-bottom: calc(var(--scale-factor) * 60);
        font-weight: 500;
    }

    .about-us__description {
        line-height: calc(var(--scale-factor) * 65);
        /* font-size: calc(var(--scale-factor) * 27); */
        font-size: calc(var(--scale-factor) * 28);
        margin-bottom: calc(var(--scale-factor) * 88);
        font-weight: 500;
    color: #1e1e1e;
    }

    .about-us__mission-button {
        font-size: calc(var(--scale-factor) * 30);
    }

    .about-us__building-image {
        display: none;
    }


    .circle-container {
        width: calc(var(--scale-factor) * 95);
        height: calc(var(--scale-factor) * 95);
    }

    .white-dot {
        width: calc(var(--scale-factor) * 10);
        height: calc(var(--scale-factor) * 10);
    }

    .circle-button-text {
        font-size: calc(var(--scale-factor) * 30);
    }

    section.services {
			padding-top: 56px;
        background-size: cover;
        padding-block: calc(var(--scale-factor) * 92);
    }

    .services__large-list {
        flex-direction: column;
        column-gap: calc(var(--scale-factor) * 45);
        /* margin-bottom: calc(var(--scale-factor) * 30); */
				margin-bottom: 25px;
        /* margin-top: calc(var(--scale-factor) * 70); */
				margin-top: 38px;
        row-gap: calc(var(--scale-factor) * 55);
    }

    .services__large-item {
        border-radius: calc(var(--scale-factor) * 40);
        width: 100%;
				box-shadow: 6px 3px 10px 0px rgba(35, 24, 21, 0.2);
    }

    .services__large-logo {
			height: auto;
			padding: 50px 0 35px;
      /* height: calc(var(--scale-factor) * 180); */
    }

		.services__large-logo.sp-display {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
		}

    .services__large-logo-image {
        width: 60%;
    }

    .services__large-img {
        height: calc(var(--scale-factor) * 252);
        object-position: 0% 30%;
    }

    .services__large-description {
        font-size: calc(var(--scale-factor) * 27);
        line-height: calc(var(--scale-factor) * 48);
        margin-block: calc(var(--scale-factor) * 40);
        color: #1e1e1e;
        font-weight: 500;
    }

    #careers-services .services__large-description {
        margin-top: 0;
    }

    .services__large-button {
        aspect-ratio: 5.6 / 1;
        border-radius: calc(var(--scale-factor) * 50);
        font-size: calc(var(--scale-factor) * 30);
        height: auto;
        margin-bottom: calc(var(--scale-factor) * 50);
        width: 85%;
				border: 1px solid #77CEC5;
    }

    .services__small-list {
        column-gap: calc(var(--scale-factor) * 34);
    }

    .services__small-button {
        aspect-ratio: 315 / 147.84;
        font-size: calc(var(--scale-factor) * 28);
        font-weight: bold;
        justify-content: center;
        padding-inline: calc(var(--scale-factor) * 28);
        text-align: center;
        box-shadow: 6px 3px 10px 0px rgba(35, 24, 21, 0.2);
    }

    #top-news,
    #careers-news {
			padding-top: 56px;
        /* padding-top: calc(var(--scale-factor) * 109); */
        padding-bottom: calc(var(--scale-factor) * 120);
    }

    .news__list {
        flex-direction: column;
        row-gap: calc(var(--scale-factor) * 80);
    }

    .news__slider {
        margin-block: clamp(12px, 8.906vw, 114px);
    }

    .news__slider .splide__slide img {
        aspect-ratio: 481 / 362;
        border-radius: clamp(1px, 1.875vw, 24px);
        width: clamp(1px, 64.133vw, 481px);
    }

    .news__category {
        font-size: calc(var(--scale-factor) * 30);
        line-height: 1;
        color: #231815;
    }

    .news__title {
        min-height: initial;
        font-size: calc(var(--scale-factor) * 25);
        /* margin-top: calc(var(--scale-factor) * 15); */
        margin-top: 7px;
        color: #231815 !important;
        font-weight: bold;
    }

    .news__date {
        font-size: calc(var(--scale-factor) * 27);
        margin-top: calc(var(--scale-factor) * 30);
    }

    .news__button {
        aspect-ratio: 660 / 100;
        font-size: clamp(12px, 4vw, 30px);
        width: 88vw;
    }

    .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
        width: 33% !important;
    }

    .news-slider__item {
        /* width: 65%; */
				margin-right: 25px !important;
    }

    .news-slider__img {
        /* margin-bottom: 3.3vw; */
        margin-bottom: 12.5px;
    }

    .news-slider__title {
        width: 100%;
        margin-top: 7px;
        font-size: calc(var(--scale-factor) * 25);
        margin-bottom: calc(var(--scale-factor) * 30);
        color: #231815;
        font-weight: bold;
    }

    .news-slider__category {
        font-size: calc(var(--scale-factor) * 30);
        margin-bottom: 15px;
        line-height: 1;
    }

    .news-slider__list {
			gap: 0;
			margin-bottom: 12vw !important;
			padding: 0 22.5px !important;
    }

    .news-slider__list.only-one {
        padding: 0 !important;
        transform: none !important;
    }

    .news-slider__list.only-one li {
        margin: 0 auto !important;
    }


    .news-slider__date {
        font-size: calc(var(--scale-factor) * 27);
    }

    #mission {
        padding-bottom: 0;
        padding-top: calc(var(--scale-factor) * 132);
    }

    .misson-fv__text {
        font-size: calc(var(--scale-factor) * 85);
        margin-inline: calc(var(--scale-factor) * 25);
        position: absolute;
        left: calc(var(--scale-factor)* 10);
    }

    .mission__content {
        width: 100%;
        margin-block: clamp(1px, 5.7vw, 72px);
    }

    .mission__title {
        font-size: clamp(14px, 5.5vw, 40px);
        /* margin-bottom: clamp(1px, 8vw, 60px); */
        margin-bottom: 30px;
        font-weight: 500;
    }

    .mission__description {
        line-height: calc(var(--scale-factor) * 65);
        /* font-size: calc(var(--scale-factor) * 27); */
        font-size: 15px;
        margin-bottom: calc(var(--scale-factor) * 88);
        font-weight: 500;
        color: #1e1e1e;
    }

    #values {
        background-image: none;
        display: block;
        height: auto;
        position: static;
    }

    #values .section__wrapper {
        position: static;
        width: 100%;
    }

    #values .section-title {
        margin-inline: auto;
        width: calc(var(--scale-factor) * 660);
    }

    #values .section-subtitle {
        margin-inline: auto;
        width: calc(var(--scale-factor) * 660);
    }

    .values__main-image {
        width: 100vw;
        margin-top: calc(var(--scale-factor) * -294);
        padding: 0;
    }

    #ceo-message {
        margin-top: 60px;
        /* margin-top: calc(var(--scale-factor) * 126); */
        position: static;
        padding-bottom: calc(var(--scale-factor) * 139);
    }

    .ceo-message__main-image {
        border-radius: calc(var(--scale-factor) * 40);
    }

    .ceo-message__text {
        /* font-size: calc(var(--scale-factor) * 26); */
        line-height: 1.8;
        padding-inline: 0;
        font-size: 13.5px;
        color: #1e1e1e;
        font-weight: 400;
    }

    .ceo-message__sign {
        position: static;
    }

    .ceo-message__sign-img {
        width: clamp(1px, 72vw, 547px);
    }

    .ceo-message__sign-text {
        font-size: 13.5px;
        /* font-size: clamp(12px, 3.5vw, 27px); */
    }

    .company__list {
        font-size: calc(var(--scale-factor) * 25);
        padding-bottom: calc(var(--scale-factor) * 56);
        padding-inline: 0;
        margin-top: calc(var(--scale-factor) * 96);
    }

    .company__list hr {
        margin-block: calc(var(--scale-factor) * 47);
    }

    .company__item {
        flex-direction: column;
        padding: 25px 0 20px;
        border-bottom: 1px solid #ccc;
        font-size: 12.5px;
    }

    .company__map iframe {
        aspect-ratio: 4 / 3;
    }

    .awards__investors-list {
        column-gap: clamp(1px, 6.7vw, 50px);
        grid-template-columns: 1fr 1fr;
        margin-bottom: clamp(1px, 13.3vw, 100px);
        margin-top: clamp(1px, 6.7vw, 50px);
        row-gap: clamp(1px, 10.6vw, 80px);
    }

    .awards__investors-img.jr-west {
        width: clamp(1px, 40vw, 300px);
    }

    .awards__investors-img.mercari {
        width: clamp(1px, 35.4vw, 265px);
    }

    .awards__investors-img.ksk {
        width: clamp(1px, 12.8vw, 96px);
    }

    .awards__investors-img.kdx {
        width: clamp(1px, 28.3vw, 212px);
    }

    .awards__investors-img.jr-east {
        width: clamp(1px, 40vw, 300px);
    }

    .awards__investors-img.spiral-capital {
        width: clamp(1px, 40vw, 300px);
    }

    .awards__investors-img.keikyu {
        width: clamp(1px, 32.4vw, 243px);
    }

    .awards__list {
        grid-template-columns: 1fr 1fr;
    }

    .awards__img-box {
        height: clamp(1px, 24vw, 180px);
    }

    .awards__img.infinity {
        width: clamp(1px, 48.6vw, 365px);
    }

    .awards__img.jr {
        width: clamp(1px, 30.4vw, 228px);
    }

    .awards__img.tech-crunch-tokyo {
        width: clamp(1px, 32vw, 240px);
    }

    .awards__img.keikyu {
        width: clamp(1px, 30.4vw, 228px);
    }

    .awards__name {
        font-size: 13.5px;
        /* font-size: clamp(12px, 3.6vw, 27px); */
        margin-block: clamp(1px, 3.2vw, 24px);
    }

    .awards__description {
        /* font-size: clamp(12px, 3vw, 23px); */
        font-size: 11.5px;
        line-height: 1.63;
    }

    .awards__scroll {
        height: 75px;
        padding-block: calc(var(--scale-factor) * 40);
    }

    .first-section .section__wrapper {
        padding-left: calc(var(--scale-factor) * 27);
        padding-right: calc(var(--scale-factor) * 45);
        padding-top: calc(var(--scale-factor) * 91);
        width: 97.6vw;
    }

    .first-section .section__title-container {
        padding-left: calc(var(--scale-factor) * 27);
    }

    .right-align-section {
        padding-top: calc(var(--scale-factor) * 31);
        padding-right: 2.4%;
        width: 97.6%;
        bottom: calc(var(--scale-factor) * 100);
        padding-bottom: 0;
    }

    .right-align-section .section__wrapper {
        width: 92.5%;
    }

    .values__list {
        grid-template-columns: 1fr;
        /* padding-block: 10.6%; */
        padding-top: 15px;
        row-gap: clamp(1px, 10.93vw, 82px);
    }

    .values__img {
        aspect-ratio: 660 / 370;
        margin-bottom: 0%;
    }

    .values__title {
        font-size: clamp(12px, 6.67vw, 50px);
    }

    .values__subtitle {
        font-size: 15px;
        /* font-size: clamp(12px, 5.2vw, 30px); */
        margin-bottom: 4%;
    }

    .values__description {
        font-size: 13.5px;
        /* font-size: clamp(12px, 3.6vw, 27px); */
    }

    .outlook__description {
        font-size: 13.5px;
        /* font-size: clamp(12px, 3.6vw, 27px); */
        margin-block: 8.79%;
    }

    #careers {
        position: relative;
    }

    #careers .section__wrapper {
        /* position: relative; */
        height: auto;
        /* z-index: 1; */
    }

    .careers-content {
        position: relative;
        width: 100%;
    }

    .careers__img {
        aspect-ratio: 600 / 440;
        bottom: -21.267vw;
        top: auto;
        width: 80vw;
        /* z-index: -1; */
    }

    .careers__description {
        font-size: 13.5px;
        /* font-size: clamp(12px, 3.6vw, 27px); */
        padding: 0;
    }

    .careers__more-button {
        aspect-ratio: 660 / 100;
        font-size: clamp(12px, 4vw, 30px);
        margin-top: 61.867vw;
        width: 100%;
        z-index: 1;
    }

    .services__logo-images {
        height: clamp(1px, 15.2vw, 114px);
        margin-top: clamp(1px, 7.467vw, 56px);
    }

    .services__down-btn {
        width: clamp(1px, 3.369vw, 25.27px);
    }

    .ecbo-cloak__main {
        margin-top: clamp(1px, 6vw, 45px);
    }

    .ecbo-cloak__summary {
        grid-template-areas:
            'right'
            'left';
        grid-template-columns: 1fr;
    }

    .ecbo-cloak__summary-text {
        grid-area: left;
        border-bottom-right-radius: clamp(1px, 2.813vw, 36px);
        border-top-left-radius: 0px;
    }

    .services__logo-imageSp02 {
        /* margin-top: clamp(1px, 10.933vw, 82px); */
        width: clamp(1px, 41.867vw, 314px);
    }

    #careers-services .services__logo-imageSp02,
    #careers-services .services__logo-imageSp04 {
        margin: 0% auto 0;
    }

    .ecbo-cloak__summary-text-border {
        margin-block: clamp(1px, 6.667vw, 50px);
        width: clamp(1px, 2.4vw, 18px);
    }

    .ecbo-cloak__summary-img {
        grid-area: right;
    }

    .ecbo-cloak__summary-img img {
        aspect-ratio: 660 / 415.3707;
        border-top-left-radius: calc(var(--scale-factor) * 36);
        border-bottom-right-radius: 0px;
        object-position: 0% 0%;
        width: 100%;
    }

    .ecbo-cloak__description {
        font-size: calc(var(--scale-factor) * 27);
        line-height: 1.8;
    }

    .ecbo-cloak__more-button {
        aspect-ratio: 560 / 100;
        font-size: calc(var(--scale-factor) * 30);
        margin-bottom: calc(var(--scale-factor) * 50);
        margin-top: calc(var(--scale-factor) * 40);
        width: calc(var(--scale-factor) * 560);
    }

    .ecbo-cloak__figure {
        margin-top: calc(var(--scale-factor) * 56);
    }

    .ecbo-cloak__movie-container {
        grid-template-columns: 1fr;
        margin-top: calc(var(--scale-factor) * 50);
        row-gap: calc(var(--scale-factor) * 100);
    }

    .ecbo-pickup__main {
        margin-top: clamp(1px, 6vw, 45px);
    }

    .ecbo-pickup__summary {
        grid-template-areas:
            'right'
            'left';
        grid-template-columns: 1fr;
    }

    .ecbo-pickup__summary-text {
        grid-area: left;
        border-bottom-right-radius: clamp(1px, 2.813vw, 36px);
        border-top-left-radius: 0px;
		padding-bottom: 24px; 
    }

    .ecbo-pickup__summary-text img {
        /* margin-top: clamp(1px, 10.933vw, 82px); */
        /* width: clamp(1px, 41.867vw, 314px); */
    }

    .ecbo-pickup__summary-text-border {
        margin-block: clamp(1px, 6.667vw, 50px);
        width: clamp(1px, 2.4vw, 18px);
    }

    .ecbo-pickup__summary-img {
        grid-area: right;
    }

    .ecbo-pickup__summary-img img {
        aspect-ratio: 660 / 415.3707;
        border-top-left-radius: calc(var(--scale-factor) * 36);
        border-bottom-right-radius: 0px;
        object-position: 0% 0%;
        width: 100%;
    }

    .ecbo-pickup__description {
        font-size: calc(var(--scale-factor) * 27);
        line-height: 1.8;
        width: 78.5%;
    }

    .ecbo-pickup__more-button {
        aspect-ratio: 560 / 100;
        font-size: calc(var(--scale-factor) * 30);
        margin-bottom: calc(var(--scale-factor) * 50);
        margin-top: calc(var(--scale-factor) * 40);
        width: calc(var(--scale-factor) * 560);
    }

    .ecbo-pickup__figure {
        margin-top: calc(var(--scale-factor) * 56);
    }

    .ecbo-pickup__movie-container {
        grid-template-columns: 1fr;
        margin-top: calc(var(--scale-factor) * 50);
        row-gap: calc(var(--scale-factor) * 100);
    }

    .ecbo-cloak__movie-container iframe:nth-child(n+3),
    .ecbo-pickup__movie-container iframe:nth-child(n+3) {
        display: none;
    }

    .ecbo-cloak__movie-container.show-all iframe,
    .ecbo-pickup__movie-container.show-all iframe {
        display: block;
    }

    #ecbo-cloak__movie-more-button,
    #ecbo-pickup__movie-more-button {
        align-items: center;
        background-color: transparent;
        border: none;
        color: #77CEC5;
        cursor: pointer;
        display: inline-flex;
        font-size: calc(var(--scale-factor) * 30);
        justify-content: center;
        margin-inline: auto;
        margin-top: calc(var(--scale-factor) * 76);
        outline: none;
        position: relative;
        width: 100%;
    }

    #ecbo-cloak__movie-more-button::before,
    #ecbo-cloak__movie-more-button::after,
    #ecbo-pickup__movie-more-button::before,
    #ecbo-pickup__movie-more-button::after {
        background-color: #77CEC5;
        content: '';
        display: block;
        flex-shrink: 0;
        height: calc(var(--scale-factor) * 2.03);
        margin-inline: calc(var(--scale-factor) * 22);
        width: calc(var(--scale-factor) * 180);
    }

    #ecbo-cloak__movie-more-button::before,
    #ecbo-pickup__movie-more-button::before {
        margin-right: 10px;
    }

    #ecbo-cloak__movie-more-button::after,
    #ecbo-pickup__movie-more-button::after {
        margin-left: 10px;
    }

    #ecbo-cloak__movie-more-button .caret,
    #ecbo-pickup__movie-more-button .caret {
        aspect-ratio: 25.2736 / 12;
        width: calc(var(--scale-factor) * 25.2736);
        margin-left: calc(var(--scale-factor) * 16);
        transition: transform 0.3s ease;
    }

    #ecbo-cloak__movie-more-button.open .caret,
    #ecbo-pickup__movie-more-button.open .caret {
        transform: rotate(180deg);
    }

    .safety-measures__img-box {
        margin-top: calc(var(--scale-factor) * 41);
    }

    #ecbo-spot .section__wrapper {
        position: relative;
        padding-bottom: calc(var(--scale-factor) * 130);
    }

    .ecbo-spot__description {
        font-size: calc(var(--scale-factor) * 37);
        position: absolute;
        width: calc(var(--scale-factor) * 420);
    }

    .wide-button {
        align-items: start;
        aspect-ratio: 660 / 140;
        flex-direction: column;
        justify-content: center;
        padding-left: calc(var(--scale-factor) * 53);
        border: 2px solid #77CEC5 !important;
    }

    .media-assets-button {
        margin-top: calc(var(--scale-factor) * 76);
    }

    .press-info-button {
        margin-top: calc(var(--scale-factor) * 25);
    }

    #media-assets-buttons {
        margin-bottom: calc(var(--scale-factor) * 97);
    }

    #official-media {
        padding-top: calc(var(--scale-factor) * 20);
        padding-bottom: calc(var(--scale-factor) * 36);
        padding-bottom: calc(var(--scale-factor) * 72);
    }

    #official-media .section__wrapper {
        width: 88%;
        margin-left: auto;
    }

    .official-media__main-item {
        border-radius: calc(var(--scale-factor) * 33);
        column-gap: calc(var(--scale-factor) * 47);
        grid-template-areas:
            'image image'
            'title title'
            'description icon';
        padding-bottom: calc(var(--scale-factor) * 48);
        padding-left: calc(var(--scale-factor) * 32);
        padding-right: calc(var(--scale-factor) * 36);
        padding-top: calc(var(--scale-factor) * 39);
        width: 100%;
    }

    .official-media__item {
        margin-right: auto;
        grid-template-columns: auto;
    }

    .official-media__main-image {
        justify-self: center;
        width: calc(var(--scale-factor) * 500);
    }

    .official-media__main-title {
        font-size: calc(var(--scale-factor) * 35);
        margin-top: calc(var(--scale-factor) * 44);
        font-weight: 500;
    }

    .official-media__main-description {
        font-size: calc(var(--scale-factor) * 22);
        margin-top: calc(var(--scale-factor) * 32);
        width: auto;
    }

    .official-media__main-icon {
        width: calc(var(--scale-factor) * 28);
    }

    .official-media__button {
        column-gap: calc(var(--scale-factor) * 21);
        padding-left: calc(var(--scale-factor) * 47);
        padding-right: calc(var(--scale-factor) * 55);
    }

    .official-media__button-sns {
        width: calc(var(--scale-factor) * 55);
    }

    .official-media__button-text {
        font-size: calc(var(--scale-factor) * 27);
    }

    .official-media__button-link {
        width: calc(var(--scale-factor) * 28);
    }

    .official-media__border {
        margin-bottom: calc(var(--scale-factor) * 45);
        margin-top: calc(var(--scale-factor) * 50);
    }

    .section__title-container {
        background-color: #FFFFFF;
        top: calc(var(--scale-factor) * 75);
        position: absolute;
        right: 0;
        width: 97.6vw;
    }

    .news__container {
        grid-template-areas:
            'list'
            'paginator'
            'buttons'
            'links';
        grid-template-columns: 1fr;
        margin-top: calc(var(--scale-factor) * 49);
    }

    .news__articles {
        border-top: none;
        width: 100%;
    }

    .news__article {
        grid-template-areas:
            'thumbnail'
            'type'
            'title'
            'content'
            'txt';
        padding-bottom: calc(var(--scale-factor) * 82);
        /* padding-top: calc(var(--scale-factor) * 80); */
        width: 100%;
    }

    .news__article:first-child {
        padding-top: 0;
    }

    .news__article-thumbnail {
        width: 100%;
    }

    .news__article-category {
        font-size: calc(var(--scale-factor) * 35);
        margin-top: calc(var(--scale-factor) * 34);
    }

    .news__article-title {
        font-size: 12.5px;
        margin-top: calc(var(--scale-factor) * 16);
    }

    .wp-pagenavi .previouspostslink,
    .wp-pagenavi .nextpostslink {
        font-weight: lighter;
    }

    .news__container .wide-button {
        width: calc(var(--scale-factor) * 660);
    }

    .news__links {
        position: relative;
        left: 50%;
        right: 50%;
        margin-left: -50vw;
        margin-right: -50vw;
        margin-top: calc(var(--scale-factor) * 125);
        width: 100vw;
    }

    .news__links-buttons {
        display: none;
    }

    .news_links-list {
        margin-top: calc(var(--scale-factor) * 24);
    }

    .news__links-list-title--first-list {
        margin-top: calc(var(--scale-factor) * 19);
    }

    .news__links-list-title {
        font-size: calc(var(--scale-factor) * 35);
    }

    .news_links-list li {
        font-size: calc(var(--scale-factor) * 25);
        padding-bottom: calc(var(--scale-factor) * 12);
        padding-top: calc(var(--scale-factor) * 12);
    }

    .media-assets-buttons {
        margin-right: auto;
        margin-bottom: 0;
    }

    .news_sns-buttons {
        display: none;
    }

    #news-article {
        margin-top: 0;
        padding-top: calc(var(--scale-factor) * 160);
    }

    .article-title h2 {
        /* font-size: calc(var(--scale-factor) * 42); */
        font-size: calc(var(--scale-factor) * 40);
    }

    .contact__inner,
    .contact__item,
    .contact__button--wrapper {
        width: 85%;
        margin-inline: auto;
    }

    .contact__inner,
    .contact__item {
        padding-inline: 0;
    }

    .page-top__wrapper {
        margin-bottom: 11.3vw;
    }

    .contact__contents {
        padding-top: 0;
    }

    .contact__lead {
        font-size: clamp(12px, 3.2vw, 27px);
        letter-spacing: 0.03em;
        line-height: 1.85;
        margin-bottom: calc(var(--scale-factor) * 87);
    }
	
	 .contact__lead .contact__lead-head {
        font-size: 17px;
        letter-spacing: 0.03em;
        line-height: 1.85;
        margin-bottom: calc(var(--scale-factor) * 87);
    }

    .radio__wrapper {
        padding-top: 9.3vw;
    }

    .radio__title {
        margin-bottom: 2.6vw;
    }

    .radio__subject {
        margin-bottom: 10.6vw;
        gap: 3.3vw;
    }

    .wpcf7-list-item-label::before {
        width: max(12px, 3.59vw);
        height: max(12px, 3.59vw);
    }

    .wpcf7-list-item-label {
        font-size: max(12px, 3.59vw);
        line-height: 2.15;
    }

    .radio-error {
        width: 27%;
        padding-block: 0.6%;
        border-radius: 2.8vw;
    }

    .error-message,
    .radio__title,
    .contact__label,
    .radio-error {
        font-size: clamp(12px, 3.59vw, 27px);
        line-height: 1.4;
    }

    .error-message {
        padding-inline: 2.6vw;
        margin-bottom: 2.6vw;
        line-height: 1.6;
        border-radius: 2.8vw;
        /* font-size: clamp(12px, 3.59vw, 27px); */
    }

    .wpcf7-list-item-label::before {
        width: clamp(12px, 3.59vw, 28px);
        height: clamp(12px, 3.59vw, 28px);
        padding: 3px;
    }

    .radio__flex {
        flex-direction: column;
    }

    .radio__label {
        width: calc(50% - 3.3vw);
    }

    .required::after {
        width: clamp(12px, 3.59vw, 28px);
        line-height: 1.4;
    }

    .contact__label {
        margin-bottom: 2.6vw;
    }

    .contact__input,
    #message.contact__textarea {
        padding: 4.8vw 5vw;
        border-radius: 5.3vw;
    }

    .contact__input {
        height: 13.3vw;
    }

    #message.contact__textarea {
        height: 66.6vw;
        margin-bottom: 9.85vw;
    }

    .contact__input::placeholder,
    .contact__textarea::placeholder {
        font-size: clamp(12px, 3.23vw, 24.3px);
        line-height: 2.38;
    }

    .contact__button {
        height: 20vw;
        font-size: max(12px, 5.4vw);
        border-radius: 5.3vw;
        line-height: 2.03;
    }


    .footer__head {
        padding-inline: min(6vw, 45px);
    }

    .footer__head-content {
        flex-direction: column;
        padding-block: 0px;
				padding: 50px 0;
        gap: 50px;
        width: 100%;
    }

    .footer__head-item {
        /* display: grid; */
        grid-template-areas:
        "icon title"
        "icon subtitle"
        "description description"
        "button button";
        grid-template-columns: auto 1fr;
        width: 100%;
        margin-top: 0;
    }
    .footer__head-item:first-child {
        margin-top: 0;
    }

    .footer__head-item__box {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: calc(var(--scale-factor) * 53);
    }

    .footer__head-item-img {
        grid-area: icon;
        height: auto;
        /* margin-top: calc(var(--scale-factor) * 20); */
        margin-top: 0;
        margin-right: calc(var(--scale-factor) * 50);
        width: calc(var(--scale-factor) * 96);
    }



    .footer__head-item-title {
        font-size: calc(var(--scale-factor) * 54);
        grid-area: title;
        place-self: end start;
        margin-bottom: 6px;
    }

    .footer__head-item-subtitle {
        font-size: calc(var(--scale-factor) * 20);
        grid-area: subtitle;
        place-self: start start;
        font-weight: bold;
        margin-bottom: 0;
    }

    .footer__head-item-description {
        font-size: calc(var(--scale-factor) * 26);
        grid-area: description;
        height: auto;
        margin-bottom: calc(var(--scale-factor) * 48);
        text-align: left;
        font-weight: 500;
    }

    .footer__head-item-button {
        aspect-ratio: 6.6 / 1;
        border-radius: calc(var(--scale-factor) * 50);
        font-size: calc(var(--scale-factor) * 30);
        grid-area: button;
        height: auto;
        margin-inline: auto;
        width: 100%;
    }

    .footer__head-divider {
        display: none;
    }

    .footer__foot {
        padding-inline: min(6vw, 45px);
    }

    .footer__foot-head {
        gap: calc(var(--scale-factor) * 74);
        margin-bottom: calc(var(--scale-factor) * 78);
    }

    .footer__foot-content {
        width: 100%;
        margin-top: 45px;
    }

    .footer__foot-logo {
        width: calc(var(--scale-factor) * 250);
    }

    .footer__foot-title {
        font-size: calc(var(--scale-factor) * 30);
        white-space: nowrap;
        font-weight: 500;
    }

    .footer__foot-main {
        grid-template-areas:
            "contact"
            "sitemap"
            "contact-large";
        grid-template-columns: 1fr;
        margin-bottom: calc(var(--scale-factor) * 96);
    }

    .sitemap {
        grid-area: sitemap;
        grid-row: span 1;
        grid-template-columns: 1fr;
        margin-bottom: calc(var(--scale-factor) * 49);
        margin-right: 0px;
        row-gap: calc(var(--scale-factor) * 6);
    }

    .sitemap__list {
        font-size: calc(var(--scale-factor) * 30);
        margin-bottom: calc(var(--scale-factor) * 61);
        margin-top: calc(var(--scale-factor) * 46);
        /* row-gap: calc(var(--scale-factor) * 43); */
        row-gap: 18px;
    }

    .sitemap__item--wide {
        grid-column: span 1;
    }

    .sitemap__item summary {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-top: 20px;
        padding-bottom: calc(var(--scale-factor) * 24);
        position: relative;
        color: #333333;
        font-weight: 600;
        cursor: pointer;
    }

    .sitemap__item summary::-webkit-details-marker {
        display: none;
    }

    .sitemap__item summary::before,
    .sitemap__item summary::after {
        width: calc(var(--scale-factor) * 1);
        height: calc(var(--scale-factor) * 24);
        background-color: #333333b3;
        content: '';
    }

    .sitemap__item--no-list summary::before,
    .sitemap__item--no-list summary::after {
        display: none;
    }

    .sitemap__item summary::before {
        position: absolute;
        right: calc(var(--scale-factor) * 12);
        transform: rotate(0deg);
        transition: transform 0.3s ease;
        /* rotate: 90deg; */
    }
    /* 開いたときはマイナス */
    .sitemap__item.open summary::before {
        transform: rotate(90deg);
    }
    .sitemap__item summary::after {
        margin-right: calc(var(--scale-factor) * 12);
        transition: rotate .3s;
    }

    .sitemap__item summary::after {
        rotate: 90deg;
    }

    .sitemap__item p {
        transform: translateY(-10px);
        opacity: 0;
        margin: 0;
        padding: .3em 2em 1.5em;
        color: #333333;
        transition: transform .5s, opacity .5s;
    }

    .sitemap__item[open] p {
        /* transform: none; */
        opacity: 1;
    }


    .sitemap__title {
        border-bottom: none;
        font-size: calc(var(--scale-factor) * 33);
    }

    .footer__contact {
        margin-bottom: 7px;
        /* margin-bottom: calc(var(--scale-factor) * 66); */
    }

    .footer__contact-list {
        grid-template-columns: 1fr;
        row-gap: calc(var(--scale-factor) * 25);
    }

    .footer__contact-list img {
        height: calc(var(--scale-factor) * 55);
    }

    .footer__contact-list-button {
        aspect-ratio: 6.6 / 1;
        border: calc(var(--scale-factor) * 2) solid;
        border-radius: calc(var(--scale-factor) * 50);
        font-size: calc(var(--scale-factor) * 30);
        height: auto;
        padding-inline: 0%;
        padding: 0 36px 0 21%;
        width: 100%;
    }

    .footer__inquiry-button {
        aspect-ratio: 66 / 13;
        border-radius: calc(var(--scale-factor) * 40);
        column-gap: calc(var(--scale-factor) * 48);
        font-size: calc(var(--scale-factor) * 30);
        height: auto;
        border: 1px solid #1e1e1e;
    }

    .footer__inquiry-button-mail-image {
        height: calc(var(--scale-factor) * 37);
    }

    .footer__inquiry-button-luggage-image {
        height: calc(var(--scale-factor) * 60);
    }

    .footer__foot-foot {
        flex-direction: column;
        /* margin-bottom: calc(var(--scale-factor) * 45); */
				margin-bottom: 20px;
        gap: calc(var(--scale-factor) * 65);
    }

    .footer__sns-image {
        width: calc(var(--scale-factor) * 84);
    }

    .footer__legal {
        margin-left: 0px;
    }

    .legal__list {
        gap: clamp(1px, 3.4vw, 30px);
        margin-bottom: clamp(1px, 8.7vw, 65px);
    }

    .legal__item {
        font-size: clamp(9px, 2.7vw, 20px);
    }

    .copyright {
        text-align: center;
        font-size: clamp(12px, 2.7vw, 20px);
    }

    .pagetop-button {
        display: none;
    }

		/*追記*/
		#header__logo-img {
			width: calc(var(--scale-factor) * 140);
		}
		.news-slider__list .splide__slide img {
			width: 100%;
			/* height: 180px; */
            height: auto;
            /* aspect-ratio: 245 / 180; */
			object-fit: contain;
		}
		/* .progress-bar {
            height: 2px;
			margin: 50px auto 40px;
		} */
		.fv__logo {
			margin-top: 30px;
		}
		.pc-display {
			display: none;
		}
		.sp-display {
			display: block;
		}
		.services__large-logo-imageSp01 {
			/* width: auto; */
			/* width: 39px; */
            width: 8%;
			height: auto;
			margin-bottom: 15px;
		}
		.services__large-logo-imageSp02 {
			/* width: auto;
			height: 44px; */
			width: 207px;
			/* width: auto; */
			height: auto;
		}
		.services__large-logo-imageSp03 {
			/* width: auto; */
            width: 13%;
			height: auto;
			margin-bottom: 15px;
		}
		.services__large-logo-imageSp04 {
			width: 182px;
			width: auto;
			height: 33px;
		}
	.hamburger-pc__menu .copyright {
		padding-bottom: 30px;
	}
    .footer__contact-list li span::before {
        height: calc(var(--scale-factor) * 55);
    }
    .scroll {
        z-index: 1;
        position: absolute;
        bottom: -33px;
        left: 50%;
        transform: translateY(0) translateX(-50%);
        height: 66px;
    }
    .scroll span {
        display: block;
        padding-top: 0;
        padding-left: 60px;
        color: #fff;
    }
    .scroll::after {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        width: 1px;
        height: 66px;
        background: #fff;
        /* background: linear-gradient(to bottom, #fff 0%, #fff 50%, #000 50%, #000 100%); */
        transform: translateX(-50%);
        opacity: 0;
        animation: pathmove 2s ease-in-out infinite;
    }
    @keyframes pathmove {
        0%{
            height:0;
            top:0;
            opacity: 0;
        }
        20%{
            height: 33px;
            opacity: 1;
        }
        100%{
            height:0;
            top: 66px;
            opacity: 0;
            background: #000;
        }
    }
    .fv {
        position: relative;
    }
    .news__link {
        margin-top: 12.5px;
    }
    .news-slider.splide {
        margin-top: 45px;
    }
    .footer__inquiry-button--color {
        border: 2px solid #77CEC5 !important;
    }
    .news__item {
        width: 100%;
    }
    /* a:hover {
        pointer-events: none;
    } */
    #mission .section-title,
    #company .section-title,
    #values .section-title,
    #ceo-message .section-title,
    #awards .section-title,
    #mission .section-title,
    #values .section-title,
    #ceo-message .section-title,
    #awards .section-title,
    #careers-at-ecbo .section-title,
    #career-values .section-title,
    #careers-services .section-title,
    #outlook .section-title,
    #company-profile .section-title,
    #careers .section-title,
    #career-news .section-title {
        font-size: 30px;
    }
    .section-subtitle p {
        padding-left: 16px;
    }
    .section-subtitle p::before {
        width: 12.5px;
        top: 5px;
    }
    .company__item-title {
        margin-bottom: 2px;
    }
    #awards .section__wrapper {
        width: 88%;
        margin: 0 auto;
        padding: 0;
    }
    #awards .section__wrapper .section-title {
        margin-bottom: 35px;
        line-height: 1.3;
    }
    .careers-at-ecbo__button-title {
        font-size: 25px;
    }
    .careers-at-ecbo__button-text {
        font-size: 15px;
    }
    .careers-at-ecbo__button {
        border: 2px solid #77CEC5;
        gap: initial;
        height: initial;
        padding: 1.8% 8%;
        flex-direction: column;
        justify-content: left;
        align-items: flex-start;
        margin-top: 35px;
        margin-bottom: 65px;
    }
    .careers-at-ecbo__title {
        font-size: 24px;
        margin-top: 0;
        margin-bottom: 28px;
    }
    .careers-at-ecbo__img {
        aspect-ratio: 330 / 165;
    }
    .values__title span {
        font-size: 25px;
    }
    .values__title {
        margin-top: 2%;
        font-size: 18px;
    }
    #outlook {
        padding-block: calc(var(--scale-factor)* 62);
    }
    #company-profile {
        margin-top: 38px;
        margin-bottom: 28px;
    }

    .company-profile__slide {
        margin-block: 0;
    }

    #career-news .news-slider__list .splide__slide img {
        /* aspect-ratio: 240 / 180; */
    }

    #career-news {
        padding-bottom: 50px;
    }

    .services__logo-imageSp01,
    .services__logo-imageSp03 {
        /* width: 30px; */
        width: 8%;
        height: auto;
        margin: 0 auto 15px;
        margin-top: clamp(1px, 7.5vw, 96px);
    }

    .services__logo-imageSp04 {
        width: clamp(1px, 41.867vw, 314px);
    }

    .safety-measures__area__inner {
        flex-direction: column;
        padding: 0 20px;
    }

    .safety-measuresBox {
        width: 100%;
        display: flex;
        align-items: center;
        padding: 33px 0;
        border-right: none;
        border-bottom: 1px solid #cbcbcb;
    }

    .safety-measuresBox__ttl {
        margin-bottom: 3px;
        font-size: 15px;
        text-align: left;
    }

    .safety-measuresBox__txt {
        font-size: 13.5px;
        line-height: 1.6;
    }

    .safety-measuresBox img {
        width: 52px;
        height: auto;
        margin-right: 28px;
        margin-left: 30px;
        margin-bottom: 0;
    }

    .scroll-offset {
        position: relative;
    }

    .scroll-offset::before {
        content: "";
        display: block;
        height: 47px;
        margin-top: -47px;
        visibility: hidden;
    }

    .article-content p {
        font-size: 14px;
    }

    .wide-button-title {
        line-height: 1.2;
    }

    .article-title h2 {
        /* font-size: 16.8px; */
        font-size: 14px;
    }

    .news__article__img {
        width: 100%;
        margin-right: 0;
        /* aspect-ratio: 330 / 248; */
        margin-bottom: 15px;
    }

    .news__article-content {
        width: calc(var(--scale-factor)* 660);
    }

    .news__article-txt {
        -webkit-line-clamp: 4;
        font-size: 11px;
    }

    .category-information,
    .category-mediaexposure,
    .category-newsrelease,
    .category-press {
        font-size: .8rem;
        color: #fff;
        border-radius: 1em;
        padding: 0 .8em;
        margin: 0 5px;
        line-height: 1.4;
    }

    .wp-pagenavi .current,
    .wp-pagenavi .page {
        width: 33px;
    }
    #careers-services .services__large-item .services__large-img{
        border-radius: 20px;
        aspect-ratio: 330 / 217;
    }
    #careers-services .services__large-logo {
        padding: 32px 0 25px;
    }
    #careers-services .services__logo-imageSp01 {
        margin-top: 0;
    }
    #careers-services .services__logo-imageSp03 {
        width: 16.27%;
        margin-top: 0;
    }
	.pickup-noList {
        width: 90%;
        margin: 0 auto;
        font-size: 12px;
    }

}
