/* common */
.entry-content {
    counter-reset: sec-number 0;
}
.wp-block-media-text > figure img{
    aspect-ratio: 5/3;
    height: auto !important;
    position: absolute;
}
.entry-content .text-box,
.wp-block-media-text>.wp-block-media-text__content {
    display: block;
}
.wp-block-media-text>.wp-block-media-text__content {
	min-height: 425px;
}
.entry-content .text-box p,
.wp-block-media-text>.wp-block-media-text__content p:not(.eng){
    margin: 1.6rem 0;
}
:is(#message,#philosophy,#strength,#challenge,#achievement) .wp-block-media-text > .wp-block-media-text__media img{
    width: calc(100% + (100vw - 1024px)/2);
    right: 0;
    object-fit: cover;
}
.has-media-on-the-right img {
    left: 0;
}
.entry-content section {
    position: relative;
}
.entry-content section .title {
    position: relative;
}
.entry-content section .title::before {
    counter-increment: sec-number 1;
    content: counter(sec-number,decimal-leading-zero);
    font-size: 10rem;
    font-family: Jost;
    font-weight: 600;
    line-height: .8;
    position: absolute;
    right: 0;
    bottom: 0;
    color: rgb(var(--main-color));
    opacity: .1;
    z-index: -1;
	opacity: 0;
}
.entry-content section.scrolled .title::before {
	animation: FadeInAnime .5s ease-out forwards;
	filter: opacity(.1);
}
.entry-content .wp-block-media-text figure::before,
section#strength .swiper-container::before{
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
}
.entry-content .wp-block-media-text:not(.has-car) > figure::before,
section#strength .swiper-container::before{
    width: calc(100% + (100vw - 1024px)/2);
    height: auto;
    aspect-ratio: 1;
    right: 0;
    top: calc(((1024px - var(--margin-xl))/2 + (100vw - 1024px)/2)/5*3);
    z-index: 2;
    background: linear-gradient(to bottom, #fff, transparent 20%);
    clip-path: polygon(100% 0, 0 0, 0 100%);
}
section#strength .swiper-container::before {
    top: calc(100% - var(--margin-r)*2);
}
.entry-content .wp-block-media-text.has-media-on-the-right > figure::before {
    right: unset;
    left: 0;
    transform: scale(-1, 1);
}
.entry-content .wp-block-media-text > figure {
    position: relative;
}
.entry-content h3 {
	background: linear-gradient(to right,rgb(var(--dark-color)) 50%,rgb(var(--gray-color)) 50%);
	background-size: 200% 100%;
	background-position: right;
    color: #fff;
    padding: 0em .3em .1em;
    display: inline;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    line-height: 1.65;
	position: relative;
	transition: .5s .3s;
}
.entry-content .wp-block-media-text.scrolled h3,
section#strength .has-swiper.scrolled h3,
.text-box.scrolled h3{
	background-position: left;
}
.entry-content h3::before,
section#strength .has-swiper h3::before,
.text-box h3::before{
	content: "";
	display: block;
	width: 4px;
	height: 2.8rem;
    background: rgb(var(--dark-color));
	position: absolute;
	top: 0;
	left: -.5rem;
	opacity: 0;
	transition: .3s;
}
.entry-content .wp-block-media-text.scrolled h3::before,
section#strength .has-swiper.scrolled h3::before,
.text-box.scrolled h3::before{
	opacity: 1;
}
.entry-content  h3 + p {
    padding-top: var(--margin-s);
}
.wp-block-media-text.vw-100 figure {
	z-index: -1;
}
.wp-block-media-text.vw-100 figure img,
.wp-block-media-text.vw-100 figure::before{
    aspect-ratio: unset;
    width: 100vw !important;
    height: calc(100% + 300px) !important;
    left: calc(-50vw - (var(--margin-xl)/2)) !important;
    top: calc(var(--margin-xl)*-1) !important;
    z-index: -2;
}
.wp-block-media-text.vw-100 figure img {
    object-position: left top !important;
}
.wp-block-media-text.vw-100 figure::before {
    clip-path: unset !important;
    background: linear-gradient(to bottom, rgb(var(--gray-color)),transparent 15%,transparent,rgb(var(--gray-color))) !important;
}

/* svg */
svg#graph-achievement g#title text{
    font-weight: 700;
}
svg#graph-achievement g#title > g >text {
    font-size: 1.2rem;
    fill: 
}
svg#graph-achievement g#line-graph-2 > text{
    transform: translate(72.5%,5.6%);
}

/* section */
section#philosophy .wp-block-cover{
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    min-height: 500px;
    padding: var(--margin-l);
}
section#philosophy h3 {
    background: linear-gradient(to right,#fff 50%,transparent 50%);
	background-size: 200% 100%;
	background-position: right;
    color: rgb(var(--dark-color));
	transition: .3s 1.5s;
}
section#philosophy .wrapper.scrolled h3 {
	background-position: left;
}
section#philosophy .wrapper h3::before {
    background: #fff;
}
section#philosophy .wrapper.scrolled h3::before {
	opacity: 1;
}
section#philosophy .wp-block-cover__inner-container {
    max-width: 1024px;
}
section#philosophy .inner-container {
    gap: 5px;
}
section#philosophy .wrapper {
    gap: var(--margin-xl);
}
section#philosophy .text-box {
    width: 600px;
	opacity: 0;
	transition: 1s 1.5s;
}
section#philosophy .wrapper.scrolled .text-box {
	opacity: 1;
}
section#philosophy .wp-block-cover .eng {
    color: #fff;
    font-size: 4rem;
    font-weight: 600;
    z-index: 1;
    mix-blend-mode:difference;
    line-height: 1;
	transform: scale(3);
	transform-origin: left;
	transition: 1s ease-in-out;
}
section#philosophy .wp-block-cover .eng::before {
	height: 2px;
	background: #fff;
	top: unset;
	bottom: 0;
	width: 0%;
	transition: .5s 1s;
}
section#philosophy .wrapper.scrolled .eng{
	transform: scale(1);
}
section#philosophy .wrapper.scrolled .eng::before {
	width: 100%;
}
section#philosophy .wp-block-media-text.has-media-on-the-right .eng {
    left: unset;
    right: 0;
}
section#strength .wp-block-media-text.has-car figure {
    position: relative;
    display: flex;
    height: 100%;
}
section#strength .wp-block-media-text.has-car figure img{
    padding: 0;
    height: calc(100% + var(--margin-r)) !important;
    aspect-ratio: unset;
    position: absolute;
    left: 0;
    top: calc(var(--margin-m) * -1);
    object-fit: contain;
    object-position: left;
}
section#strength .wp-block-media-text:not(.has-car) figure img {
    height: calc(100% - var(--margin-r)*2) !important;
}
section#strength .wp-block-media-text:not(.has-car) figure::before {
    top: calc(100% - var(--margin-r)*2);
}
section#strength .swiper-container{
    position: relative;
	transform: scale(1.2);
	opacity: 0;
	transition: .5s;
}
section#strength .scrolled .swiper-container {
	opacity: 1;
	transform: scale(1);
}
section#strength .swiper {
    position: absolute;
    right: 0;
    width: calc(100% + (100vw - 1024px)/2);
    height: calc(100% - var(--margin-r)*2);
    display: block;
    z-index: -1;
}
section#strength .swiper-wrapper {
    flex-wrap: unset;
    gap: 0;
    transition-timing-function: linear !important;
}
section#strength .swiper figure {
    height: 100%;
}
section#strength .swiper-slide img {
    transition: 8s 2s ease;
    transform: scale(1.1);
}
section#strength .swiper-slide[class*=-active] img{
    transition-delay: 0s;
    transform: scale(1);
}
section#achievement::after {
    width: 100vw;
    clip-path: unset;
    mask-composite: exclude;
    mask-image: linear-gradient(rgb(var(--gray-color))), url('/wp-content/themes/recruit-hisada/images/clip-hr.svg');
    mask-size: cover,auto;
    mask-repeat: no-repeat,no-repeat;
	top: 3rem;
}
section#achievement .container.vw-100{
    max-width: 1280px;
}
section#achievement .container.w-720 {
	margin-top: var(--margin-xl);
	max-width: 600px;
}
section#achievement .title {
    max-width: 1024px;
    margin: auto;
}
section#achievement .title::before {
    bottom: unset;
    top: -3rem;
    right: -.3em;
}
section#achievement .text-box.feature-list {
    display: flex;
}
section#achievement .text-box.feature-list p {
    margin: 0;
}
section#achievement .feature-list .wrapper {
    width: 100%;
    z-index: 1;
}
section#achievement .feature-list > .tag {
    font-size: 1.2rem;
}
section#achievement .feature-list .wrapper .tag{
    background: none;
    color: rgb(var(--dark-color));
    font-size: 2rem;
    font-weight: 800;
    position: relative;
    align-items: flex-end;
    padding: 1.5rem !important;
    justify-content: space-between;
    gap: 2rem;
}
section#achievement .feature-list .wrapper .tag p:first-child {
    font-size: 1.5rem;
}
section#achievement .feature-list .wrapper p {
    line-height: 1;
}
section#achievement .feature-list .wrapper .tag::before {
    background: #fff;
    z-index: -1;
    top: unset;
    bottom: 0;
    height: calc(1.5rem*2 + 2rem);
}
section#achievement .feature-list .wrapper .tag::after {
    background: rgb(var(--main-color));
    width: 2.4rem;
    height: 2.4rem;
    top: unset;
    bottom: calc(1.5rem*2 + 1rem);
    left: 1.5rem;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}
section#achievement .feature-list .wrapper .eng {
    vertical-align: bottom;
    padding: 0 2px 0 8px;
    position: relative;
    top: .15em;
    font-size: 5.8rem;
    line-height: 1;
}
section#achievement .feature-list .wrapper .font-smaller {
    position: absolute;
    top: calc(100% + 5px);
    right: 0;
    font-size: .8rem;
    font-weight: 600;
}
section#achievement .feature-list .wrapper > .tag:last-child {
    margin: auto;
}
section#achievement .feature-list .sales.tag::after {
    mask-image: url('/wp-content/themes/recruit-hisada/images/fa-coins-solid.svg');
}
section#achievement .feature-list .capital.tag::after {
    mask-image: url('/wp-content/themes/recruit-hisada/images/fa-sack-dollar-solid.svg');
}
section#achievement .feature-list .employee.tag::after {
    mask-image: url('/wp-content/themes/recruit-hisada/images/fa-user-tie-solid.svg');
}
section#achievement .wp-block-gallery {
	position: absolute;
	top: 0;
	flex-direction: column;
	align-items: center;
	width: calc((100vw - 600px - 160px)/2);
	height: 100%;
	opacity: 0;
	transform: scale(1.2);
	opacity: 0;
	transition: .5s;
}
section#achievement .wp-block-gallery figure {
	position: relative;
	height: 160px !important;
	width: 160px !important;
	aspect-ratio: 1;
	flex-grow: 0;
}
section#achievement .wp-block-gallery figure,
section#achievement .wp-block-gallery figure img{
	display: block;
	mix-blend-mode: multiply;
	aspect-ratio: 1;
}
section#achievement .wp-block-gallery figure img {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	max-width: unset !important;
	object-fit: contain !important;
	width: 100% !important;
	height: auto !important;
}
section#achievement .deco-left {
	left: calc((100vw - 600px)/2*-1);
	justify-content: space-between;
	top: calc(var(--margin-xl)*-1);
}
.text-box.scrolled + .deco-left,
.text-box.scrolled + .deco-right{
	opacity: 1 !important;
	transform: scale(1) !important;
}
section#achievement .deco-left figure:first-child img{
	width: 300px !important;
}
section#achievement .deco-left figure:nth-child(2) img{
	object-position: right !important;
	width: 200px !important;
}
section#achievement .deco-left figure:last-child img{
	width: 150% !important;
	width: 300px !important;
}
section#achievement .deco-right {
	right: calc((100vw - 600px)/2*-1);
	justify-content: space-evenly;
}
section#achievement .deco-right figure:first-child img{
	width: 400px !important;
	transform: translate(-50%,-30%);
}
section#achievement .deco-right figure:last-child img{
	width: 200px !important;
}
section#sdgs {
	padding-top: var(--margin-l);
    position: relative;
}
section#sdgs .title::before {
    bottom: unset;
    top: -3rem;
}
section#sdgs img {
    aspect-ratio: unset;
    right: 0;
}
section#sdgs .container::before {
    top: -80px;
    left: calc((100vw - 1024px)/2 * -1);
    width: 60%;
    height: auto;
    aspect-ratio: 1;
    background-image: url('/wp-content/uploads/2025/06/environment-img01.jpg');
    background-size: cover;
    background-position: bottom 0% left 20%;
    clip-path: circle(50% at 38% 50%);
    z-index: -1;
}
section#sdgs .title {
    padding-bottom: var(--margin-m);
}
section#sdgs figure::before {
    display: none;
}
section#sdgs img {
    width: 60%;
    margin-left: auto
}