@charset "utf-8";


/* 共通 */
.headingtop {
    position: relative;
    z-index: 11;
}
.headingtop__en {
    font-size: 10.67vmin; /* 40px */
    color: var(--color_main_02);
    line-height: 1.25;
    letter-spacing: 0.045em;
}
.headingtop__title {
    font-size: 4.8vmin; /* 18px */
    margin-top: 3vmin;
    padding-left: 1.45em;
    letter-spacing: 0.1em;
    color: var(--color_black);
    font-weight: 500;
    position: relative;
    display: block;
}

@media screen and (max-width: 640px) {
    .button.button-min {
        min-width: 12.5em;
        padding: .4em 3.4em;
        min-height: 2.6em;
    }
    .button--more .icon-toggle {
        width: 1.5em;
        height: 1.5em;
        right: 0.7em;
    }
    .button.button-large {
        width: auto;
        min-width: 17em;
    }
}
@media print, screen and (min-width:641px) {
    .headingtop__en {
        font-size: 4.0rem;   
    }
    .headingtop__title {
        font-size: 1.8rem;
        padding-left: 1.25em;
        margin-left: .5rem;
        margin-top: -.25rem;
    }
    .button {
        width: auto;
        padding: .9em 5.15em;
    }
    .button.button-min {
        min-height: 1.75em;
        padding: .65em 3.8em;
    }
    .button.button-large {
        min-height: 4.375em;
        padding: .9em 8.15em;
    }
    .button.button-min .icon-toggle {
        width: 1.5em;
        height: 1.5em;
        right: .8em;
    }
    .button.button-min.button--more {
          min-width: 12.0em;
    }
    .button.button-large::after {
        right: 1.5em;
    }
}



/* キービジュアル
====================================================== */
#Keyvisiual {
    position: relative;
    overflow: hidden;
}
#Keyvisiual:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100vw;
    background-repeat: no-repeat;
    background-image: url("/files/user/gt/images/top/background_Keyvisiual_SP.svg");
    background-size: contain;
    background-position: bottom center;
}
.Keyvisiual__slider {
    position: relative;
}
.Keyvisiual__slider .slick-arrow {
    bottom: 8vmin;
    width: 11.5vmin;
    font-size: 1.6rem;
    position: absolute;
    right: 0;
    left: auto;
    top: auto;
    border: 1px solid var(--color_white);
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background-color: transparent;
    height: auto;
    aspect-ratio: 60 / 34;
    object-fit: cover;
    object-position: center;
    -webkit-transform: translate(0);
    -ms-transform: translate(0);
    transform: translate(0);
    background: url("/files/user/gt/images/common/icon-arrow_slider.svg") no-repeat center;
    background-size: auto 55%;
    z-index: 100;
}
.Keyvisiual__slider .slick-arrow:before {
    display: none;    
}
.Keyvisiual__slider .slick-arrow.slick-prev {
    right: 13.5vmin;
    -webkit-transform: rotate(180deg);
    transform: rotateY(180deg);
}
.Keyvisiual__slider .slick-list {
    overflow: visible;
    padding: 0;
}
.Keyvisiual__slider--item {
    width: 116vw;
    height: calc( 100vw * 1.43733333333 );
    height: -webkit-calc( 100vw * 1.43733333333 );
    position: relative;
    outline: none;
}
.Keyvisiual__slider--item:before {
    width: 10.5vmin;
    margin-left: -7.2vmin;
    content: "";
    position: absolute;
    top: -20vw;
    bottom: -20vw;
    background-color: rgba(255,255,255,0.5);
    z-index: 10;
    -webkit-transform: rotate(12.5deg) translateX( -100%);
    transform: rotate(12.5deg) translateX( -100%);
}
.Keyvisiual__slider--item picture {
    height: 100%;
}
.Keyvisiual__slider--item img {
    margin-left: -12.6vmin;
    -webkit-clip-path: polygon(21% 0%, 100% 0%, 79% 100%, 0% 100%);
    clip-path: polygon(21% 0%, 100% 0%, 79% 100%, 0% 100%);
    height: 100%;
    max-width: fit-content;
    aspect-ratio: 1108 / 1076;
    object-fit: cover;
    object-position: center;
    display: block;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    left:50%;
    position: relative;
}
.Keyvisiual__slidernav {
    padding-bottom: 20vmin;
    position: absolute;
    bottom: 0;
    margin-left: -8px;
    margin-right: -8px;
    z-index: 10;
}
.Keyvisiual__slidernav .slick-list,
.Keyvisiual__slidernav .slick-track {
    transform: initial !important;
    height: auto !important;
}
.Keyvisiual__slidernav--item {
    font-size: 7.00vmin;
    margin: .25em 0;
    outline: none;
    border: none !important;
}
.Keyvisiual__slidernav-text-item {
    display: flex;
    display:-webkit-flex;
    align-items:center;
    flex-wrap: nowrap;
    justify-content: flex-start;
    flex-direction: row;
    width: 100%;
}
.Keyvisiual__text--active {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    padding-top: 100%;
    object-position: bottom right !important;
    object-fit: cover !important;
    margin-left: 0 !important;
}
.Keyvisiual_bar {
    margin: 0 0.25em 0 0.38em;
    padding: .025em 0.25em 0.075em;
    display: flex;
    display:-webkit-flex;
    align-items:center;
    flex-wrap: nowrap;
    justify-content: flex-start;
    flex-direction: row;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background-color: rgba(255,255,255,0.3);
    position: relative;
    overflow: hidden;
}
.Keyvisiual_bar--background {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -15em;
    width: 15em;
    background-color: rgba(255,255,255,1);
    display: block;
    -webkit-transition: 4.0s;
    transition: 4.0s;
}
.Keyvisiual__slidernav--item.slick-current:not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar.Keyvisiual_first_bar .Keyvisiual__text--active {
    padding-top: 0;
    padding-left: 0;
}
.Keyvisiual__slidernav--item.slick-current:not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar:not(.Keyvisiual_first_bar) .Keyvisiual__text--active {
    padding-top: 0;
    padding-left: 0;
    -webkit-animation: text--active__current ease 2.0s forwards ;
    animation: text--active__current ease 2.0s forwards ;
}
@-webkit-keyframes text--active__current {
	0% {padding-top: 100%;}
	5.5% {padding-top: 100%;}
	100% {padding-top: 0;padding-left: 0;}
}
@keyframes text--active__current {
	0% {padding-top: 100%;}
	5.5% {padding-top: 100%;}
	100% {padding-top: 0;padding-left: 0;}
}
.Keyvisiual__slidernav--item.slick-current .Keyvisiual_bar .Keyvisiual_bar--background {
    left: -15em;
    -webkit-animation: bar--background-current ease 4.0s forwards ;
    animation: bar--background-current ease 4.0s forwards ;
}
@-webkit-keyframes bar--background-current {
	0% {left: -15em;}
	100% {left: 0;}
}
@keyframes bar--background-current {
	0% {left: -15em;}
	100% {left: 0;}
}
.Keyvisiual__slidernav--item .Keyvisiual_bar.Keyvisiual_first_bar .Keyvisiual_bar--background {
    left: 0 !important;
    -webkit-transition: 0s !important;
    transition: 0s !important;
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar:not(.Keyvisiual_first_bar) .Keyvisiual_bar--background {
    left: 0;
    -webkit-animation: bar--background ease 4.0s forwards ;
    animation: bar--background ease 4.0s forwards ;
}
@-webkit-keyframes bar--background {
	0% {left: 0;}
	100% {left: 15em;}
}
@keyframes bar--background {
	0% {left: 0;}
	100% {left: 15em;}
}


:root {
    --delay: 0.14s;
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item .Keyvisiual__text--active {
    padding-left: 0;
    padding-top: 0;
    -webkit-animation: text--active linear 0.205s forwards ;
    animation: text--active linear 0.205s forwards ;
}
@-webkit-keyframes text--active {
	0% {padding-left: 0%;}
	100% {padding-left: 100%;}
}
@keyframes text--active {
	0% {padding-left: 0%;}
	100% {padding-left: 100%;}
}

.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(1) .Keyvisiual__text--active {
    -webkit-animation: text--active linear 0.258s forwards ;
    animation: text--active linear 0.258s forwards ;
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 0.0);
    animation-delay: calc( 0.145s + var(--delay) * 0.0);
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(2) .Keyvisiual__text--active {
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 1.45);
    animation-delay: calc( 0.145s + var(--delay) * 1.45);
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(3) .Keyvisiual__text--active {
    -webkit-animation: text--active linear 0.165s forwards ;
    animation: text--active linear 0.165s forwards ;
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 2.45);
    animation-delay: calc( 0.145s + var(--delay) * 2.45);
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(4) .Keyvisiual__text--active {
    -webkit-animation: text--active linear 0.155s forwards ;
    animation: text--active linear 0.155s forwards ;
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 3.25);
    animation-delay: calc( 0.145s + var(--delay) * 3.25);
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item).Keyvisiual__slidernav-method02-item .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(4) .Keyvisiual__text--active {
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 3.45);
    animation-delay: calc( 0.145s + var(--delay) * 3.45);
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(5) .Keyvisiual__text--active {
    -webkit-animation: text--active linear 0.175s forwards ;
    animation: text--active linear 0.175s forwards ;
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 3.95);
    animation-delay: calc( 0.145s + var(--delay) * 3.95);
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item).Keyvisiual__slidernav-method02-item .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(5) .Keyvisiual__text--active {
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 4.25);
    animation-delay: calc( 0.145s + var(--delay) * 4.25);
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(6) .Keyvisiual__text--active {
    -webkit-animation: text--active linear 0.155s forwards ;
    animation: text--active linear 0.155s forwards ;
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 4.75);
    animation-delay: calc( 0.145s + var(--delay) * 4.75);
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(7) .Keyvisiual__text--active {
    -webkit-animation: text--active linear 0.165s forwards ;
    animation: text--active linear 0.165s forwards ;
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 5.55);
    animation-delay: calc( 0.145s + var(--delay) * 5.55);
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(8) .Keyvisiual__text--active {
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 6.65);
    animation-delay: calc( 0.145s + var(--delay) * 6.65);
}
.Keyvisiual__slidernav--item:not(.slick-current):not(.Keyvisiual__slidernav-first-item) .Keyvisiual_bar .Keyvisiual__slidernav-activetext-item:nth-child(9) .Keyvisiual__text--active {
    -webkit-animation-delay: calc( 0.145s + var(--delay) * 7.55);
    animation-delay: calc( 0.145s + var(--delay) * 7.55);
}
.Keyvisiual__slidernav-text-item,
.Keyvisiual__slidernav-img-item,
.Keyvisiual__text--active {
    opacity: 0;transform: translateX(20px) translateZ(0px);
    -webkit-transition: .65s;
    transition: .65s;
}


.Keyvisiual__slidernav-text-item img {
    width: 1.0em;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
    z-index: 1;
    margin: 0;
}
.Keyvisiual__slidernav-text-item img + img,
.Keyvisiual__slidernav-activetext-item + .Keyvisiual__slidernav-activetext-item {
    margin-left: .15em;
}
.Keyvisiual__slidernav-Keyvisiual02_text07-item {
    margin-left: 0 !important;    
}
.Keyvisiual__slidernav-Keyvisiual02_text08-item {
    margin-left: .2em !important;
    margin-right: .05em !important;
}
.Keyvisiual02_text09 {
    margin-left: .05em !important;
}
.Keyvisiual__slidernav-Keyvisiual03_text05-item {
    margin-left: 0 !important;
    margin-right: .125em !important;
}
.Keyvisiual__slidernav-Keyvisiual03_text06-item {
    margin-left: -.18em !important;
}
.Keyvisiual__slidernav-Keyvisiual03_text07-item {
    margin-left: -.05em !important;
}
.Keyvisiual__slidernav-Keyvisiual03_text08-item {
    margin-left: -.1em !important;
}
.Keyvisiual__slidernav-Keyvisiual03_text09-item {
    margin-left: -.10em !important;
}
.Keyvisiual__slidernav-Keyvisiual03_text10-item {
    margin-left: -.025em !important;
}
.Keyvisiual__slidernav-Keyvisiual03_text12-item {
    margin-left: -.1em !important;
    margin-right: -.1em !important;
}
.Keyvisiual__slidernav-activetext-item {
    position: relative;
    display: flex;
    display:-webkit-flex;
    align-items:center;
    flex-wrap: nowrap;
    justify-content: flex-start;
    flex-direction: row;
}

.Keyvisiual__slidernav--item.slick-cloned {
    display: none !important;
}

@media screen and (max-width: 640px) {
    .Keyvisiual__slidernav {
        margin-left: 0;
        margin-right: 0;
    }
    
}
@media print, screen and (min-width:641px) {
    :root {
      --delay: 0.18s;
    }
    #Keyvisiual:after {
        background-image: url("/files/user/gt/images/top/background_Keyvisiual_PC.svg");
        background-size: cover;
    }
    .Keyvisiual__slider .slick-arrow {
        font-size: 1.6rem;
        bottom: 2.8rem;
        width: 6rem;
        right: -1.1rem;
    }
    .Keyvisiual__slider .slick-arrow.slick-prev {
        right: 5.85rem;
    }
    .Keyvisiual__slider--item {
        width: 135.9rem;
        height: 79rem;
    }
    .Keyvisiual__slider--item:before {
        -webkit-transform: rotate(12.2deg)  translateX(-100%);
        transform: rotate(12.2deg)  translateX(-100%);
        top: -20vw;
        bottom: -20vw;
        width: 6.0rem;
        margin-left: -5.0rem;
    }
    .Keyvisiual__slider--item img {
        aspect-ratio: 1528 / 790;
        margin-left: -8.0rem;
        -webkit-clip-path: polygon(11.0% 0%, 100% 0%, 89% 100%, 0% 100%);
        clip-path: polygon(11.0% 0%, 100% 0%, 89% 100%, 0% 100%);
    }
    .Keyvisiual__slidernav {
        padding-bottom: 10.5rem;
        padding-left: 5rem;
    }
    .Keyvisiual__slidernav--item {
        font-size: 5.0rem;
        margin: 1.25rem 0;
    }
    .Keyvisiual__slidernav-text-item img {
        width: 1.2em;
    }
}







/* お知らせ （NEWS）
====================================================== */
#news {
    background-color: #F8F8FB;
    overflow: hidden;
    padding-top: 16vmin;
    padding-bottom: 10vmin;
}
#news .box {
    position: relative;
}

#news .box__inner {
    padding-top: 13vmin;
    padding-right: 6vmin;
    padding-bottom: 13.5vmin;
    position: relative;
    z-index: 10;
    display: flex;
    display:-webkit-flex;
    align-items:flex-start;
    flex-wrap: nowrap;
    justify-content: space-between;
    flex-direction: row;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}
#news .box__inner:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    background-color: white;
    width: 100vw;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: 0 10px 10px rgba(94,165,226,0.08);
    box-shadow: 0 10px 10px rgba(94,165,226,0.08);
    z-index: 10;
}
#news .headingtop__en {
    width: 6.1em;
}
.news__inner {
    position: relative;
    z-index: 11;
    width: 100%;
}
.news__list {
    padding-top: 3vmin;
    margin-bottom: 13vmin;
    width: 100%;
}
.news__item {
    border-bottom: 1px solid var(--color_grey);
}
.news__item--element {
    display: flex;
    display:-webkit-flex;
    align-items:flex-start;
    flex-wrap: nowrap;
    width: 100%;
    justify-content: flex-start;
    flex-direction: row;
    position: relative;
}
.news__item:nth-child(n+4) {
    display: none;
}
.news__item-sub-element {
    position: relative;
}
.news__item-sub-element:before {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top:50%;
}
.news__item-pin-element:before {
    aspect-ratio: 17.85 / 25.065;
    width: 5vmin;
    background-image: url("/files/user/gt/images/common/icon-pin.svg");
}
.news__item-meta-element {
    display: flex;
    display:-webkit-flex;
    align-items:center;
    flex-wrap: nowrap;
    justify-content: flex-start;
    flex-direction: row;
}
.news__date {
    font-size: 4.8vmin; /* 18px */
    min-width: 8.45em;
    font-weight: 400;
    color: #81839A;
}
.news__category {
    font-size: 3.73vmin; /* 14px */
    line-height: 1.71;
    min-width: 7.0em;
    padding: .05em .15em;
    border: 1px solid transparent;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    display: block;
    position: relative;
    overflow: hidden;
    text-align: center;
}
.news__category:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    z-index: -1;
}
.news__category--method01 {
    color: var(--color_main_02);
}
.news__category--method01:after {
    background-color: var(--color_main_02);
    filter: alpha(opacity=10%);  opacity:0.1;
}
.news__category--method02 {
    color: var(--color_main_02);
    border-color: var(--color_main_02);
}
.news__item-wrapper-element {
    padding-top: 2.8vmin;
    padding-bottom: 1.5vmin;
    width: 100%;
    position: relative;
}
.news__text {
    font-size: 4.8vmin; /* 18px */
    line-height: 1.5;
    position: relative;
    width: 100%;
}
.news__text--link {
    padding-right: 10vmin;
    color: var(--color_main_02);
    text-decoration: underline;
    width: 100%;
    display: block;
}
.news__text--link:hover {
    text-decoration: none;
}
.news__text--link:after {
    width: 8vmin;
    right: -1.5vmin;
    content: "";
    position: absolute;
    aspect-ratio: 1 / 1;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top:50%;
    background-repeat: no-repeat;
    background-position: center;
}
.news__text-arrow-link:after {
    background-image: url("/files/user/gt/images/common/icon-arrow_blue02.svg");
    background-size: contain;
}
.news__text-blank-link:after {
    background-image: url("/files/user/gt/images/common/icon-blank.svg");
    background-size: 65%;
}
@media screen and (max-width: 640px) {
    #news .box:after {
        display: none;
    }
    #news .box__inner {
        flex-direction: column;
    }
    #news .box:after {
        content: "";
        position: absolute;
        aspect-ratio: 1 / .5;
        background-image:  radial-gradient( #308CF8, transparent 55% );
        -webkit-transform: translateX(50%) translateY(-20%);
        transform: translateX(50%) translateY(-20%);
        left:50%;
        top:50%;
        margin-left: calc( -3.8% - 5.6231% );
        margin-left: -webkit-calc( -3.8% - 5.6231% );
        bottom: 0;
        height: max-content;
        filter:  alpha(opacity=20%);  opacity:0.2;
        z-index: 1;
        width: 90.7rem;
    }
    #news__readmore  {
        width: auto;
    }
    .news__item--element {
        flex-direction: column;
        padding-top: clamp( calc( 100vw * 0.048128342 ), calc( 100vw * 0.048128342 ) , calc( 639px * 0.048128342 )  );
        padding-top: clamp( -webkit-calc( 100vw * 0.048128342 ), -webkit-calc( 100vw * 0.048128342 ) , -webkit-calc( 639px * 0.048128342 )  );
        padding-bottom: clamp( calc( 100vw * 0.053475936 ), calc( 100vw * 0.053475936 ) , calc( 639px * 0.053475936 )  );
        padding-bottom: clamp( -webkit-calc( 100vw * 0.053475936 ), -webkit-calc( 100vw * 0.053475936 ) , -webkit-calc( 639px * 0.053475936 )  );
        padding-left: 0;
        padding-right: 0;
    }
    .news__item-sub-element {
        width: 100%;
    }
    .news__item-pin-element:before {
        right: -.5vmin;
    }
    .news__meta {
        padding-right: 0;
        padding-left: 0;
        width: 100%;
    }
    .news__item-meta-element {
        padding-left: 0;
    }
    .news__date {
        min-width: 7.4em;
    }
    .news__category {
        line-height: 1.475;
    }
    .news__text--link:after {
        width: 8vmin;
    }
}
@media print, screen and (min-width:641px) {
    #news {
        padding-top: 11rem;
        padding-bottom: 13.5rem;
    }
    #news .box {
        padding-left: 3.5%;
    }
    #news .box__inner {
        padding: 7.65rem 5.65%;
    }
    .news__list {
        padding-top: 3.6rem;
        margin-bottom: 4rem;
    }
    .news__item--element {    }
    .news__item-meta-element {
        padding: 1.45rem 4.5rem 1.45rem 2.8rem;
    }
    .news__date {
        font-size: 1.8rem;
    }
    .news__category {
        font-size: 1.4rem;
    }
    .news__item-wrapper-element {
        padding: 1.65rem 0; 
    }
    .news__text {
        font-size: 1.8rem;
    }
    .news__text--link {
        padding-right: 4rem;
    }
    .news__text--link:after {
        width: 3rem;
        right: 0;
    }
    .news__item-pin-element:before {
        left: 0;
        width: 1.95rem;
    }
}
@media screen and (min-width: 1400px) {
    .news__inner {
        padding-right: 4.6rem;
    }
}



/* 事業内容 （WHAT WE DO）
====================================================== */
#business {
    margin-top: -62vmin;
    padding: 76vmin 0 26.5vmin;
    background-color: #EEF6FF;
    overflow: hidden;
    position: relative;
}
#business:before,
#business:after {
    width: 190.935vmin;
    content: "";
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
    background: url("/files/user/gt/images/common/circle_shadow.svg") no-repeat;
    background-size: cover;
    z-index: 0;
    display: block;
    position: absolute;
}
#business:after {
    background:url("/files/user/gt/images/top/background_company.svg") no-repeat 50% 40%;
    background-size: auto 60%;
    filter: alpha(opacity=50%);  opacity:0.5;
}
#business .box__inner {
    padding: 0 4vmin;
    position: relative;
    display: flex;
    display:-webkit-flex;
    align-items:flex-start;
    flex-wrap: nowrap;
    justify-content: flex-start;
    flex-direction: row;
}
.business__inner  {
    padding-top: 7.5vmin;    
}
.business__list {
    display: flex;
    display:-webkit-flex;
    align-items:stretch;
    flex-wrap: wrap;
    justify-content: flex-start;
    flex-direction: row;
    position: relative;
    z-index: 10;
}
.business__item {
    width: 100%;
}
.business__item--element {
    padding: 8vmin 4vmin 5vmin;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background: white;
    height: 100%;
    text-decoration: none;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}
.business__item-link-element {
    transition: all .2s ease;
}
.business__item-link-element:hover {
    opacity: .7;
}
.business__item-link-element:after {
    width: 12.0vmin;
    margin-top: 5.8vmin;
    content: "";
    display: block;
    aspect-ratio: 1 / 1;
    background: url("/files/user/gt/images/common/icon-arrow_blue03.svg") no-repeat center;
    background-size: contain;
}
.business__title {
    font-size: 6.48vmin; /* 24px */
    margin: 0 0 7.95vmin;
    color: var(--color_black);
    font-weight: 500;
    flex-grow: 1;
    display:-webkit-flex;
    display: flex;
    align-items:flex-start;
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: column;
    line-height: 1.5;
    width: 100%;
}
.business__title--parts {
    padding-left: 5vmin;
    position: relative;
    text-align: justify;
}
.business__title--parts:before {
    width: 1.6vmin;
    content: "";
    aspect-ratio: 1 / 1;
    height: auto;
    position: absolute;
    left: 0;
    background-color: var(--color_main_02);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top:50%;
}
.business__image {
    -webkit-border-radius: 5px;
    border-radius: 5px;
    overflow: hidden;
    display: block;
}
.business__image--figure {
    width: 100%;
}
.business__image--figure img {
    aspect-ratio: 624 / 502;
    object-fit: cover;
    object-position: center;
    width: 100%;
}
@media screen and (max-width: 640px) {
    #business:before,
    #business:after {
        -webkit-transform: translateX(-50%) translateY( 50%);
        transform: translateX( -50% ) translateY( 50%);
        left: 0;
    }
    #business:after {
        background-position: 100% 20%;
        background-size: auto 80%;
    }
    #business .box__inner {
        flex-direction: column;
    }
    #business .headingtop__title {
        margin-top: 2vmin;
    }
    .business__list {
        flex-direction: column;
        padding-top: 16vmin;
        margin-left: 0;
        margin-right: 0;
    }
    .business__item:nth-child(n+2) {
        margin-top: 2.8vmin;
    }
}
@media print, screen and (min-width:641px) {
    #business {
        margin-top: -21rem;
        padding: 7.8rem 0 13rem;
    }
    #business:before,
    #business:after {
        width: 90rem;
        left: 50%;
        bottom: 0;
        -webkit-transform: translateX(-114%) translateY(49%);
        transform: translateX(-114%) translateY(49%);
    }
    #business .box__inner {
        padding: 9rem 3.3% 5.7rem;
    }
    #business .headingtop__en {
        width: 8.85em;
    }
    .business__inner  {  
        padding-top: 5rem;
    }
    .business__list {
        margin-left: -.75rem;
        margin-right: -.75rem;
    }
    .business__item {
        width: 50%;
        padding: 0 .75rem;
    }
    .business__item--element {
        padding: 0 3.9% 2rem;
    }
    .business__item-link-element:after {
        width: 4.5rem;
        margin-top: 2rem;
    }
    .business__title {
        font-size: 2.4rem;
        margin: 5.2rem 0 4rem;
    }
    .business__title--parts {
        padding-left: 2.8rem;
    }
    .business__title--parts:before {
        width: .6rem;
    }
}





/* 会社概要 （COMPANY INFORMATION）
====================================================== */
#company {
    background-color: var(--color_white);
    position: relative;
    overflow: hidden;
}
#company .box__inner {
    padding: 24vmin 4vmin 0;
    position: relative;
    display: flex;
    display:-webkit-flex;
    align-items: center;
    flex-wrap: nowrap;
    justify-content: space-between;
    flex-direction: row;
}
#company .headingtop {
    padding-bottom: 9.8vmin;
}
#company .button-wrap {
    padding-top: 13vmin;
    justify-content: flex-start;    
}
.company__image {
    -webkit-border-radius: 5px;
    border-radius: 5px;
    overflow: hidden;
    display: block;
}

@media screen and (max-width: 640px) {
    #company .box__inner {
        flex-direction: column;
    }
    .company__image {
        margin-top: 13.33vmin;
        width: 100vw;
    }
    .company__image--figure {
        width: 100vw;
    }
}
@media print, screen and (min-width:641px) {
    #company {    }
    #company .box__inner {
        padding: 10rem 3.1%;
    }
    #company .headingtop {
        padding-bottom: 4.5rem;
        margin-top: -1.8rem;
    }
    #company .headingtop .font-en {
        width: 8.8em;
    }
    #company .button-wrap {
        padding-top: 6rem;
    }
    .company__image {
        margin-right: -3.6%;
    }
    .company__image--figure {
        width: min( 39.65vw , 760px ) ;
    }
}




/* 採用情報 （RECRUIT）
====================================================== */
#recruit {
    padding: 18.67vmin 0 5.5vmin;
    background-color: var(--color_white);
}
#recruit .box {
    padding: 16vmin 0 13.25vmin;
    background-color: #1D69D9;
    -webkit-border-radius: 20px;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
}
#recruit .box > * {
    position: relative;
    z-index: 10;
}
#recruit .box:before,
#recruit .box:after {
    content: "";
    position: absolute;
    background-image: url("/files/user/gt/images/top/background_recruit.webp");
    aspect-ratio: 936 / 485;
    object-fit: cover;
    object-position: center;
}
#recruit .box:before {
    transform: rotateY(-180deg) rotateX(-180deg);
    top: -1px;
    left: -1px;
}
#recruit .box:after {
    right: -1px;
    bottom: -1px;
}
#recruit .box__inner {
    padding-right: 9.5vmin;
    padding-bottom: 13vmin;
    position: relative;
    display: flex;
    display:-webkit-flex;
    align-items:flex-start;
    flex-wrap: nowrap;
    justify-content: flex-start;
    flex-direction: row;
    z-index: 10;
}
#recruit .headingtop__en {
    width: 8.8em;
}
#recruit .headingtop__en,
#recruit .headingtop__title,
.recruit__inner--text {
    color: var(--color_white);
}
#recruit .headingtop__title:before {
    background-image: url("/files/user/gt/images/common/icon-2block_white.svg");
}
#recruit .button-wrap {
    padding-top: 13vmin;
}
.recruit__inner {
    position: relative;
    z-index: 10;
}
.recruit__inner--text {
    padding-top: 7vmin;
}
.recruit__item--element {
    display: block;
    overflow: hidden;
    -webkit-border-radius: 20px;
    border-radius: 20px;
}
.recruit__item--element img {
    aspect-ratio: 35 / 24;
    object-fit: cover;
    object-position: center;
    width: 100%;
}
.recruit__item {
    padding: 0 1.5rem;
    max-width: calc( 35rem + 1.5rem * 2);
}
.recruit__item--element img {
    max-width: 35rem;
}
.bnr-list {
    padding: 10vmin 0;
    display: flex;
    display:-webkit-flex;
    align-items:center;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
    flex-direction: column;
}
.bnr-list__item {
    padding: 3vmin;
    display: block;
    overflow: hidden;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}
.bnr-list__item img {
    width: 100%;
    height: auto;
    transition: all .2s ease;
}
.bnr-list__item:hover img {
    opacity: .7;
}




@media screen and (max-width: 640px) {
    #recruit .box:before,
    #recruit .box:after {
        height: 100vmin;
    }
    #recruit .box__inner {
        flex-direction: column;
    }
    
}
@media print, screen and (min-width:641px) {
    #recruit {
        padding: 0 0 3rem;
    }
    #recruit .box {
        padding: 2rem 0 7.6rem;
    }
    #recruit .box:before,
    #recruit .box:after {
        width: 93.7rem;
    }
    #recruit .box__inner {
        padding-left: 3.1%;
        padding-right: 3.1%;
        padding-bottom: 4.7rem;
    }
    #recruit .headingtop__en {
        width: 8.85em;
    }
    #recruit .button-wrap {
        padding-top: 8rem;
    }
    .recruit__inner--text {
        padding-top: 5.1rem;
    }
    .bnr-list {
        padding: 1.5rem 0;
        align-items:flex-start;
        flex-direction: row;
    }
    .bnr-list__item {
        padding: 1.5rem;
    }
        
}






