/*
Theme Name: blankslate-child
Version: 1.0
Template: blankslate
*/


/**** general ****/

html {
	height: 100%;
	scroll-behavior: smooth;
}

body {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 16px;
	text-align: left;
	color: #666464;
	background: #F2E2E2;
	height: 100%;
	position: relative;
}

img {
	width: 100%;
	height: auto;
}

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

#wrapper {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	min-height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	position: relative;
}

#container {
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
	background: #FFFFFF;
	flex: 1;
}

.sp-only {
	display: none;
}

.container__section {
	position: relative;
	padding-top: 185.7px;
	padding-bottom: 185.4px;
}

.container__bg-grad {
	position: absolute;
	width: 100%;
	height: 1120px;
	top: 0;
}

.wrapper__section-title {
	display: flex;
	justify-content: center;
}

.container__img-ico {
	width: 134.21px;
	height: auto;
	aspect-ratio: 1 / 1;
}

.wrapper__title-text {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-left: 26px;
}

body:not(.akfj-top) h1 {
	font-size: 48px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.2;
}

.text__h1-sub-en {
	font-size: 24px;
	font-weight: 500;
	line-height: 2.068;
}

.wrapper__inner {
	position: relative;
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
}

.text__section-lead {
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.906;
	text-align: center;
	margin-top: 1.5em;
}

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

.wrapper__white-box {
	position: relative;
	background: #FFFFFF;
}

.container__cloud-head {
	position: absolute;
	width: 573px;
	height: auto;
	aspect-ratio: 573 / 508;
	background: url(/wp-content/themes/blankslate-child/images/underpage_cloud_head.webp) no-repeat top center;
	background-size: cover;
	top: 0;
	left: 0;
}

.container__cloud-mid {
	position: absolute;
	width: 573px;
	height: auto;
	aspect-ratio: 573 / 407;
	background: url(/wp-content/themes/blankslate-child/images/underpage_cloud_mid.webp) no-repeat top center;
	background-size: cover;
	top: 0;
	left: 0;
}

.container__cloud-bottom {
	position: absolute;
	width: 904px;
	height: auto;
	aspect-ratio: 904 / 557;
	background: url(/wp-content/themes/blankslate-child/images/underpage_cloud_bottom.webp) no-repeat top center;
	background-size: cover;
	bottom: 0;
	right: 0;
}

/** letter-spacing **/

.lsp-mn60 {
	letter-spacing: -0.06em;
}

.lsp-pl100 {
	letter-spacing: 0.1em;
}

/**** header ***/
#header {
	width: 100%;
	height: 100px;
	background: #FFFFFF;
	position: absolute;
	z-index: 100;
}

.wrapper__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 100%;
	max-width: 1332px;
	margin: 0 auto;
}

#site-title {
	width: 200px;
	height: auto;
	aspect-ratio: 200 / 51;
	margin-left: 10px;
}

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

.item__main-menu {
	padding-right: 15px;
}

.item__main-menu--thin {
	padding-right: 9px;
}

.item__main-menu a {
	display: flex;
	align-items: center;
}

.container__menu-ico {
	width: 46px;
	height: auto;
	aspect-ratio: 1 / 1;
	margin-right: 5px;
}

.text__menu {
	color: #666464;
	line-height: 1.0625;
}

.sp-menu {
	display: none;
}

/**** footer ***/

#footer {
	position: relative;
	height: 410px;
	background: url(/wp-content/themes/blankslate-child/images/bg_footer.webp) no-repeat top center;
	background-size: 1920px auto;
	color: #FFFFFF;
	padding-top: 62px;
}

.totop {
	display: none;
}

#footer .wrapper__inner {
	max-width: 944px;
}

.wrapper__footer-item {
	width: 287px;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.text__footer-category {
	border-bottom: 1px solid #FFFFFF;
	padding-bottom: 9px;
	margin-top: 41px;
	margin-bottom: 27px;
}

.text__footer-category:first-child {
	margin-top: 0;
}

.text__footer-link {
	display: block;
	margin-bottom: 16px;
}

.text__footer-link--mgtop {
	margin-top: 95px;
}

#copyright {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
	margin-top: 75px;
}

/* top page */

.akfj-top .wrapper__first-view {
	background: url(/wp-content/themes/blankslate-child/images/bg_top_fv.webp) no-repeat top center;
	background-size: 1920px auto;
	padding-top: 163px;
	padding-bottom: 96px;
	position: relative;
	overflow: hidden;
}

.akfj-top .text__main-catch {
	color: #FFFFFF;
	font-size: 70.78px;
	font-weight: 900;
	text-align: center;
	text-shadow: 3.03px 0px 5.06px #020202;
}

.akfj-top .text__yellow {
	color: #E6FF45;
}

.akfj-top .container__img-paper-origami {
	width: 944px;
	margin: 45px auto 0;
}

.akfj-top .text__first-view-read {
	color: #FFFFFF;
	font-size: 31px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.268;
	text-align: center;
	margin-top: 69px;
}

.akfj-top .text__first-view-read--en {
	font-size: 32px;
	font-weight: 500;
	letter-spacing: -0.025em;
	line-height: 1.25;
	margin-top: 62px;
}

.akfj-top .container__cloud {
	width: 674px;
	height: auto;
	aspect-ratio: 673 / 466;
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-right: -960px;
}

.akfj-top .container__cloud-01 {
	background: url(/wp-content/themes/blankslate-child/images/top_fv_cloud_01.webp) no-repeat top center;
	background-size: cover;
}

.akfj-top .container__cloud-02 {
	background: url(/wp-content/themes/blankslate-child/images/top_fv_cloud_02.webp) no-repeat top center;
	background-size: cover;
}

.pap-viewport-sp {
    display: none;
}

.pap-viewport-pc {
    display: block;
}

.pap-stage {
    width: 2560px;
    height: 2000px;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -1280px;
    display: block;
    overflow: visible;
    pointer-events: none;
}

.container__pap {
    width: 300px;
    height: 300px;
    offset-path: path('M320,640.13S1481.58-146.98,2128.1,208.84c265.94,132.15,371.43,361.9,326.49,466.18-214.58,155.81-630.23-190.7-630.23-190.7');
    offset-rotate: auto 141deg; 
    transform-box: fill-box;
    transform-origin: center;
    animation: fly-origami 2.7s linear 1s forwards;
    opacity: 0;
}

.airplane-body {
    width: 300px;
    height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.airplane-body img {
    width: 155px;
    height: auto;
    aspect-ratio: 15480 / 11291;
    display: block;
}

@keyframes fly-origami {
    0% {
        offset-distance: 0%;
        transform: scale(-0.6, 0.6) rotate(110deg);
        opacity: 0;
    }
    10% {
        offset-distance: 10%;
        transform: scale(-1, 1) rotate(110deg);
        opacity: 1;
    }
    82% {
        offset-distance: 82%;
        transform: scale(-1, 1) rotate(110deg);
        opacity: 1;
    }
    83% {
        offset-distance: 83%;
        transform: scale(1, 1) rotate(0deg);
        opacity: 1;
    }
    100% {
        offset-distance: 100%;
        transform: scale(1, 1) rotate(0deg);
        opacity: 1;
    }
}

.akfj-top .wrapper__white-box {
	padding-top: 121.2px;
	padding-bottom: 175.8px;
}

.akfj-top .container__cloud-bottom-home {
	display: none;
}

.akfj-top .wrapper__works {
	width: 870px;
	margin: 0 auto;
}

.akfj-top a.item__works {
	display: block;
	width: 41.379%;
	height: auto;
	aspect-ratio: 36 / 28;
	background: #FFFFFF;
	border: 1px solid #666464;
	border-radius: 6.68px;
	box-shadow: 7px 7px 5px #666464;
}

.akfj-top .container__img-ico {
	width: 31.067%;
	height: auto;
	aspect-ratio: 1 / 1;
	margin: 7.25% auto 0;
}

.akfj-top .wrapper__works-text {
	margin-top: 3.889%;
}

.akfj-top .wrapper__works-text h2 {
	color: #666464;
	font-size: 30px;
	font-weight: 500;
	line-height: 1.75;
	text-align: center;
}

.akfj-top .wrapper__works-text .text__h2-sub-en {
	color: #666464;
	font-size: 18.5px;
	font-weight: 500;
	line-height: 1;
	text-align: center;
	margin-top: 6px;
}

/* works */

.akfj-works .container__bg-grad {
	background: linear-gradient(
		#fbbbc7 0%,
		#fcc5ce 8.9%,
		rgba(255, 255, 255, 0) 100%
	);
}

.akfj-works .text__section-lead .text__red {
	font-weight: 700;
	color: #F92347;
}

.akfj-works .wrapper__develop-branch {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1224px;
	padding-left: 104px;
	margin: 130px auto 0;
}

.akfj-works .item__develop-branch {
	position: relative;
	width: 455.62px;
	height: auto;
	aspect-ratio: 45562 / 18500;
	background: #FFFFFF;
	border: 1px solid #666464;
	box-shadow: 7px 7px 5px rgba(102, 100, 100, 0.75);
	display: flex;
	align-items: center;
	padding-left: 125.2px;
	margin-bottom: 102.1px;
}

.akfj-works .item__develop-branch--pd-thin {
	padding-left: 120.3px;
}

.akfj-works .wrapper__branch-title {
	width: 228px;
	height: auto;
	aspect-ratio: 1 / 1;
	background: url(/wp-content/themes/blankslate-child/images/bg_branch-title_red.svg) no-repeat top center;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(-50% , -47%);
}

.akfj-works .text__branch-title {
	font-size: 37px;
	font-weight: 900;
	color: #FFFFFF;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.75);
	padding-bottom: 0.6em;
	padding-right: 0.3em;
}

.akfj-works .text__branch-detail {
	font-size: 29px;
	font-weight: 500;
	line-height: 1.448;
}

.akfj-works .container__section-consulting {
	padding-top: 74.5px;
	padding-bottom: 443px;
}

.akfj-works .container__section-consulting .container__bg-grad {
	height: 1020px;
	background: linear-gradient(#f8e0be 0%, rgba(255, 255, 255, 0) 100%);
	top: 0;
}

.akfj-works .container__section-consulting h1 {
	letter-spacing: 0;
}

.akfj-works .wrapper__consulting-detail {
	width: 100%;
	max-width: 1032px;
	display: flex;
	justify-content: space-between;
	margin: 130px auto 0;
}

.akfj-works .item__consulting-detail {
	width: 228px;
	height: auto;
	aspect-ratio: 1 / 1;
	background: url(/wp-content/themes/blankslate-child/images/bg_branch-title_org.svg) no-repeat top center;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
}

.akfj-works .text__consulting {
	color: #FFFFFF;
	font-size: 28px;
	font-weight: 900;
	line-height: 1.106;
	text-shadow: 2px 2px 2px #000;
	text-align: center;
}

.akfj-works .container__img-origami-02 {
	position: absolute;
	width: 270.51px;
	bottom: 197px;
	left: min(164.7px , 9.688%);
}

/* about */

.akfj-about .container__section {
	padding-bottom: 442px;
}

.akfj-about .container__bg-grad {
	background: linear-gradient(
			#f5f58a 0%,
			#f7f7a3 8.9%,
			rgba(255, 255, 255, 0) 100%
		);
}

.akfj-about .container__section .wrapper__inner {
	max-width: 924px;
}

.akfj-about .container__company-table {
	margin-top: 48px;
}

.akfj-about .container__company-table table {
	width: 100%;
}

.akfj-about .container__company-table td {
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 2.179;
}

.akfj-about .container__company-table td:first-child {
	width: 270px;
}

.akfj-about .text__map-title {
	font-size: 25px;
	font-weight: 600;
	margin-top: 170px;
}

.akfj-about .container__gmap {
	width: 100%;
	height: auto;
	aspect-ratio: 92050 / 50797;
	margin-top: 27.5px;
}

.akfj-about .container__gmap iframe {
	width: 100%;
	height: 100%;
}

.akfj-about .text__access-detail {
	font-size: 24px;
	font-weight: 600;
	line-height: 1.75;
	margin-top: 34px;
}

/* achievement */

.akfj-achievement .container__section {
	padding-bottom: 404.4px;
}

.akfj-achievement .container__bg-grad {
	background: linear-gradient(
		#99e292 0%,
		#b0eaab 8.9%,
		rgba(255, 255, 255, 0) 100%
	);
}

.akfj-achievement .container__section .wrapper__inner {
	max-width: 1111.81px;
}

.akfj-achievement .text__table-title {
	margin-top: 84.6px;
}

.akfj-achievement .text__table-title h2 {
	font-size: 34px;
	font-weight: 600;
}

.akfj-achievement .container__table-header {
	width: 100%;
	height: 71.5px;
	background: #15D139;
	border: 1px solid #666464;
	border-bottom: none;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 12px;
}

.akfj-achievement .container__table-header p {
	color: #FFFFFF;
	font-size: 33px;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.akfj-achievement .wrapper__achievement-table table {
	width: 100%;
	table-layout: fixed;
	background: #FFFFFF;
}

.akfj-achievement .wrapper__achievement-table thead tr {
	height: 67.68px;
	background-color: #D9FFD9;
}

.akfj-achievement .wrapper__achievement-table tbody tr {
	height: 61px;
}

.akfj-achievement table tbody tr:nth-child(odd) {
	background-color: #FFFFFF;
}

.akfj-achievement table tbody tr:nth-child(even) {
	background-color: #D9FFD9;
}

.akfj-achievement .wrapper__achievement-table th,
.akfj-achievement .wrapper__achievement-table td {
	border: 1px solid #666464;
	text-align: center;
	vertical-align: middle;
	font-size: 23px;
	font-weight: 500;
}

.akfj-achievement .container__letter-2 {
	letter-spacing: 0.5em;
	padding-left: 0.5em;
}

.akfj-achievement .container__letter-3 {
	letter-spacing: 0.1em;
	padding-left: 0.1em;
}

.akfj-achievement .symbol-no {
	display: inline-block;
	vertical-align: middle;
	width: 18.58px;
	height: auto;
	aspect-ratio: 1858 / 286;
	background: #666464;
}

.akfj-achievement .symbol-yes {
	display: inline-block;
	vertical-align: middle;
	width: 23.08px;
	height: auto;
	aspect-ratio: 1 / 1;
	background: #666464;
	border-radius: 50%;
}

.akfj-achievement .text__table-repletion {
	font-size: 23px;
	font-weight: 400;
	margin-top: 12px;
}

/* privacy-policy */

.akfj-privacy-policy .container__section {
	padding-bottom: 346.1px;
}

.akfj-privacy-policy .container__bg-grad {
	background: linear-gradient(
		#d6baeb 0%,
		#e3d1ee 8.9%,
		rgba(255, 255, 255, 0) 100%
	);
}

.akfj-privacy-policy .container__section .wrapper__inner {
	max-width: 1104px;
}

.akfj-privacy-policy .wrapper__text-body {
	margin-top: 47.7px;
}

.akfj-privacy-policy .text__normal {
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.765;
	margin-bottom: 1.765em;
	text-align: justify;
}

.akfj-privacy-policy .text__normal--mgb-0 {
	margin-bottom: 0;
}

.akfj-privacy-policy .text__normal a {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.akfj-privacy-policy .text__large {
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.364;
}

.akfj-privacy-policy .text__link-blue {
	color: #1630EF;
}

/* recruit */

.akfj-recruit .container__section {
	padding-bottom: 288.5px;
}

.akfj-recruit .container__bg-grad {
	background: linear-gradient(
		#a6d1f0 0%,
		#bbdcf4 8.9%,
		rgba(248, 247, 247, 0) 100%
	);
}

.akfj-recruit .container__section .wrapper__inner {
	max-width: 1104px;
}

.akfj-recruit .wrapper__text-body {
	margin-top: 47.7px;
}

.akfj-recruit .text__large {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.1em;
	line-height: 1.682;
}

.akfj-recruit .text__normal {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.1em;
	line-height: 2.056;
	margin-bottom: 2.056em;
}

.akfj-recruit .text__normal .pdl-1em {
	padding-left: 1em;
}

.akfj-recruit .text__normal--pdl06 {
	padding-left: 0.6em;
}

.akfj-recruit .scale-small {
	display: inline-block;
	transform: scale(0.6) translateY(0.1em);
}

.akfj-recruit .btn__to-contact {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 457.35px;
	height: auto;
	aspect-ratio: 45735 / 8422;
	background: #1c91e8;
	box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.75);
	margin: 73.6px auto 0;
	position: relative;
}

.akfj-recruit .btn__to-contact::before {
	content: '';
	width: 55.26px;
	height: auto;
	aspect-ratio: 5526 / 4627;
	background: url(/wp-content/themes/blankslate-child/images/img_btn_before.svg) no-repeat top center;
	background-size: cover;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 26.1px;
}

.akfj-recruit .btn__to-contact p {
	font-size: 25px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #FFFFFF;
}

/* contact */

.akfj-contact .container__section {
	padding-bottom: 250.1px;
}

.akfj-contact .container__bg-grad {
    background: linear-gradient(
        #bdbdf0 0%,
        #cecef2 8.9%,
        rgba(255, 255, 255, 0) 100%
    );
}

.akfj-contact .container__section .wrapper__inner {
	max-width: 1104px;
}

.akfj-contact .wrapper__text-body {
	margin-top: 47.7px;
	padding-left: 113.4px;
}

.akfj-contact .wrapper__text-body p {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.1em;
	line-height: 1.364;
}

.akfj-contact .wrapper__text-body p a {
	color: #0064FF;
}

.akfj-contact .wrapper__input-area {
	margin-top: 74.1px;
	padding-left: 113.4px;
}

.akfj-contact .text__attention {
	font-size: 17px;
	font-weight: 600;
	letter-spacing: 0.1em;
	padding-left: 236.3px;
	margin-bottom: 1.5em;
}

.akfj-contact .wrapper__contact-row {
	display: flex;
	align-items: center;
	margin-bottom: 44px;
}

.akfj-contact .container__contact-row--left {
	width: 236.3px;
}

.akfj-contact .container__contact-row--left label {
	font-size: 17px;
	font-weight: 600;
}

.akfj-contact .container__contact-row--right {
	width: 454.5px;
}

.akfj-contact .wrapper__contact-area {
	display: flex;
	margin-bottom: 44px;
}

.akfj-contact .wrapper__contact-select {
	width: 100%;
	position: relative;
}

.akfj-contact .wrapper__contact-select:after {
	content: '';
	position: absolute;
	top: 19.8px;
	right: 15px;
	width: 8px;
	height: auto;
	aspect-ratio: 1 / 1;
	border-top: 2px solid #666464;
	border-right: 2px solid #666464;
	transform: translateY(-50%) rotate(135deg);
	pointer-events: none;
}

.akfj-contact select {
	appearance: none;
	background: #FFFFFF;
}

.akfj-contact select,
.akfj-contact input[type="text"],
.akfj-contact input[type="tel"],
.akfj-contact input[type="email"] {
	width: 100%;
	height: 44px;
	border: none;
	border: 1px solid #666464;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	padding: 0.2em 0.5em;
	line-height: 1.5;
	color: #666464;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

.akfj-contact textarea {
	width: 100%;
	height: 339.5px;
	border: 1px solid #666464;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	padding: 0.5em;
	line-height: 1.5;
	color: #666464;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

.akfj-contact .wrapper__accepet-row {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.1em;
	padding-left: 236.3px;
}

.akfj-contact .wrapper__accepet-row .wpcf7-list-item {
	margin: 0;
}

.akfj-contact .wrapper__accepet-row .wpcf7-list-item label {
	display: flex;
	align-items: center;
}

.akfj-contact .wrapper__accepet-row input[type="checkbox"] {
	font-size: 18px;
	width: 1em;
	height: 1em;
	margin-right: 0.5em;
}

.akfj-contact .wrapper__accepet-row a {
	color: #0064FF;
}

.akfj-contact .wrapper__button {
	padding-left: 236.3px;
	margin-top: 178.9px;
}

.akfj-contact .container__button {
	position: relative;
	width: 454.5px;
	box-shadow: 3.26px 3.26px 4.89px #666464;
}

.akfj-contact .container__button:has(input[type="submit"]:disabled) {
	box-shadow: none;
}

.akfj-contact .container__button:before {
	content: '';
	width: 55.26px;
	height: auto;
	aspect-ratio: 5526 / 4627;
	background: url(/wp-content/themes/blankslate-child/images/img_btn_before.svg) no-repeat top center;
	background-size: cover;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 26.1px;
	z-index: 1;
}

.akfj-contact .container__button:has(input[type="submit"]:disabled):before {
	content: none;
}

.akfj-contact .container__button input[type="submit"] {
	width: 100%;
	height: auto;
	aspect-ratio: 45735 / 8422;
	background: #0808bf;
	border: none;
	color: #FFFFFF;
	font-size: 25px;
	font-weight: 700;
	letter-spacing: 1em;
	padding-left: 1em;
	cursor: pointer;
}

.akfj-contact .container__button input[type="submit"]:disabled {
	background: #999999;
	cursor: not-allowed;
}

.akfj-contact .container__button .wpcf7-spinner {
	position: absolute;
}



/* ----------------------------------------------------------------
common(tablet)
----------------------------------------------------------------- */

@media screen and (max-width: 1280px) {

	/**** general ****/

	.container__section {
		padding-top: calc(6.695% + 100px);
		padding-bottom: 14.484%;
	}

	.container__bg-grad {
		height: calc(100vw / 1280 * 1120);
	}

	.container__img-ico {
		width: 10.485vw;
	}

	.wrapper__title-text {
		padding-left: 2.031vw;
	}

	body:not(.akfj-top) h1 {
		font-size: 3.75vw;
	}

	.text__h1-sub-en {
		font-size: 1.875vw;
	}

	.text__section-lead {
		font-size: 2.5vw;
	}

	.container__cloud-head {
		width: 44.766%;
	}

	.container__cloud-mid {
		width: 44.766%;
	}

	.container__cloud-bottom {
		width: 70.625%;
	}

	/**** footer ***/

	#footer {
		background: url(/wp-content/themes/blankslate-child/images/bg_footer.webp) no-repeat top center;
		background-size: 150% auto;
	}

	/* top page */

	.akfj-top .wrapper__first-view {
		background: url(/wp-content/themes/blankslate-child/images/bg_top_fv.webp) no-repeat top center;
		background-size: 150% auto;
		padding-top: calc(4.922% + 100px);
		padding-bottom: 7.5%;
	}

	.akfj-top .text__main-catch {
		font-size: 5.53vw;
	}

	.akfj-top .container__img-paper-origami {
		width: 73.75%;
		margin: 3.516% auto 0;
	}

	.akfj-top .text__first-view-read {
		font-size: 2.422vw;
		margin-top: 5.391%;
	}

	.akfj-top .text__first-view-read--en {
		font-size: 2.5vw;
		margin-top: 4.844%;
	}

	.akfj-top .container__cloud {
		width: 52.656%;
		margin-right: -75%;
	}
	
    .pap-viewport-pc {
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
        height: 0;
    }

    .pap-stage {
        width: 200%; 
        height: auto;
        aspect-ratio: 2560 / 2000;
        top: calc(4.922vw + 100px - 12.734vw);
        left: 50%;
        transform: translateX(-50%);
        margin-left: 0;
    }

	.akfj-top .wrapper__white-box {
		padding-top: 9.469%;
		padding-bottom: 13.734%;
	}

	.akfj-top .wrapper__works {
		width: 67.969%;
		margin: 0 auto;
	}

	.akfj-top .wrapper__works-text h2 {
		font-size: 2.344vw;
	}

	.akfj-top .wrapper__works-text .text__h2-sub-en {
		font-size: 1.445vw;
		margin-top: 1.667%;
	}

	/* works */

	.akfj-works .wrapper__develop-branch {
		width: 95.625%;
		padding-left: 8.125%;
		margin: 10.156% auto 0;
	}

	.akfj-works .item__develop-branch {
		width: 40.68%;
		padding-left: 11.179%;
		margin-bottom: 9.116%;
	}

	.akfj-works .item__develop-branch--pd-thin {
		padding-left: 9.828%;
	}

	.akfj-works .wrapper__branch-title {
		width: 50.042%;
	}

	.akfj-works .text__branch-title {
		font-size: 2.891vw;
	}

	.akfj-works .text__branch-detail {
		font-size: 2.266vw;
	}

	.akfj-works .container__section-consulting {
		padding-top: 5.82%;
		padding-bottom: 34.609%;
	}

	.akfj-works .container__section-consulting .container__bg-grad {
		height: calc(100vw / 1280 * 1020);
	}

	.akfj-works .wrapper__consulting-detail {
		width: 80.625%;
		margin: 10.156% auto 0;
	}

	.akfj-works .item__consulting-detail {
		width: 22.093%;
	}

	.akfj-works .text__consulting {
		font-size: 2.188vw;
	}

	.akfj-works .container__img-origami-02 {
		width: 21.134%;
		bottom: calc(100vw / 1280 * 197);
	}

	/* about */

	.akfj-about .container__section {
		padding-bottom: 34.531%;
	}

	.akfj-about .container__section .wrapper__inner {
		width: 72.188%;
	}

	.akfj-about .container__company-table {
		margin-top: 5.195%;
	}

	.akfj-about .container__company-table td {
		font-size: 2.188vw;
	}

	.akfj-about .container__company-table td:first-child {
		width: 29.221%;
	}

	.akfj-about .text__map-title {
		font-size: 1.953vw;
		margin-top: 18.398%;
	}

	.akfj-about .container__gmap {
		margin-top: 2.976%;
	}

	.akfj-about .text__access-detail {
		font-size: 1.875vw;
		margin-top: 3.68%;
	}

	/* achievement */

	.akfj-achievement .container__section {
		padding-bottom: 31.594%;
	}

	.akfj-achievement .container__section .wrapper__inner {
		width: 86.86%;
	}

	.akfj-achievement .text__table-title {
		margin-top: 7.609%;
	}

	.akfj-achievement .text__table-title h2 {
		font-size: 2.656vw;
	}

	.akfj-achievement .container__table-header {
		height: calc(100vw / 1280 * 71.5);
		margin-top: 1.079%;
	}

	.akfj-achievement .container__table-header p {
		font-size: 2.578vw;
	}

	.akfj-achievement .wrapper__achievement-table thead tr {
		height: calc(100vw / 1280 * 67.68);
	}

	.akfj-achievement .wrapper__achievement-table tbody tr {
		height: calc(100vw / 1280 * 61);
	}

	.akfj-achievement .wrapper__achievement-table th,
	.akfj-achievement .wrapper__achievement-table td {
		font-size: 1.797vw;
	}

	.akfj-achievement .symbol-no {
		width: 1.452vw;
	}

	.akfj-achievement .symbol-yes {
		width: 1.803vw;
	}

	.akfj-achievement .text__table-repletion {
		font-size: 1.797vw;
		margin-top: 1.079%;
	}

	/* privacy-policy */

	.akfj-privacy-policy .container__section {
		padding-bottom: 27.039%;
	}

	.akfj-privacy-policy .container__section .wrapper__inner {
		width: 86.25%;
	}

	.akfj-privacy-policy .wrapper__text-body {
		margin-top: 4.321%;
	}

	.akfj-privacy-policy .text__normal {
		font-size: 1.328vw;
	}

	.akfj-privacy-policy .text__large {
		font-size: 1.719vw;
	}

	/* recruit */

	.akfj-recruit .container__section {
		padding-bottom: 22.539%;
	}

	.akfj-recruit .container__section .wrapper__inner {
		width: 86.25%;
	}

	.akfj-recruit .wrapper__text-body {
		margin-top: 4.321%;
	}

	.akfj-recruit .text__large {
		font-size: 1.719vw;
	}

	.akfj-recruit .text__normal {
		font-size: 1.406vw;
	}

	.akfj-recruit .btn__to-contact {
		width: 41.427%;
		margin: 6.667% auto 0;
	}

	.akfj-recruit .btn__to-contact::before {
		width: 12.083%;
		left: 5.707%;
	}

	.akfj-recruit .btn__to-contact p {
		font-size: 1.953vw;
	}

	/* contact */

	.akfj-contact .container__section {
		padding-bottom: 19.539%;
	}

	.akfj-contact .container__section .wrapper__inner {
		width: 86.25%;
	}

	.akfj-contact .wrapper__text-body {
		margin-top: 4.321%;
		padding-left: 10.272%;
	}

	.akfj-contact .wrapper__text-body p {
		font-size: 1.719vw;
	}

	.akfj-contact .wrapper__input-area {
		margin-top: 6.712%;
		padding-left: 10.272%;
	}

	.akfj-contact .text__attention {
		font-size: 1.328vw;
		padding-left: 23.854%;
	}

	.akfj-contact .wrapper__contact-row {
		margin-bottom: 4.442%;
	}

	.akfj-contact .container__contact-row--left {
		width: 23.854%;	
	}

	.akfj-contact .container__contact-row--left label {
		font-size: 1.328vw;
	}

	.akfj-contact .container__contact-row--right {
		width: 45.881%;
	}

	.akfj-contact .wrapper__contact-area {
		margin-bottom: 4.442%;
	}

	.akfj-contact .wrapper__contact-select:after {
		top: calc(100vw / 1280 * 19.8);
	}

	.akfj-contact select,
	.akfj-contact input[type="text"],
	.akfj-contact input[type="tel"],
	.akfj-contact input[type="email"] {
		height: calc(100vw / 1280 * 44);
		font-size: 1.406vw;
	}

	.akfj-contact textarea {
		height: calc(100vw / 1280 * 339.5);
		font-size: 1.406vw;
	}

	.akfj-contact .wrapper__accepet-row {
		font-size: 1.406vw;
		padding-left: 23.854%;
	}

	.akfj-contact .wrapper__accepet-row input[type="checkbox"] {
		font-size: 1.406vw;
	}

	.akfj-contact .wrapper__button {
		padding-left: 23.854%;
		margin-top: 18.06%;
	}

	.akfj-contact .container__button {
		width: 60.254%;
	}

	.akfj-contact .container__button:before {
		width: 12.158%;
		left: 5.743%;
	}

	.akfj-contact .container__button input[type="submit"] {
		font-size: 1.953vw;
	}

}

/* ----------------------------------------------------------------
common(tablet-M)----------------------------------------------------------------- */

@media screen and (max-width: 1096px) {

	#header {
		height: 100px;
	}

	.wrapper__header {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	#menu {
		display: none;
	}

	#site-title {
		margin-left: 0;
	}


	/* sp-menu */

	.sp-menu {
		display: block;
	}

	.btn__humb {
		width: 40px;
		height: auto;
		aspect-ratio: 1 / 1;
		background: url(/wp-content/themes/blankslate-child/images/btn_humb.svg) no-repeat top center;
		background-size: cover;
		position: absolute;
		top: 30px;
		right: 20px;
		z-index: 999;
	}

	.btn__humb.open {
		background: url(/wp-content/themes/blankslate-child/images/btn_close.svg) no-repeat center center;
		background-size: cover;
		position: fixed;
	}

	.menu__wrapper {
		position: fixed;
		z-index: 900;
		right: -180%;
		top: 0;
		width: 100%;
		height: 100dvh;
		/*background: #D83232;*/
		background: #FFFFFF;
		transition: all 0.5s;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	/* iPhone + Safari 対応 ::after 継ぎ足し*/

	::-webkit-full-page-media, :future, :root .menu__wrapper::after {
  		content: '';
		width: 100%;
		height: 100px;
		background: #D83232;
		position: absolute;
		top: 100%;
		left: 0;
	}

	.menu__wrapper.open {
		right: 0;
	}

	.menu__inner {
		display: block;
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		z-index: -1;
		background: #D83232;	/* iOSでツールバーが着色されるための対策で、スライドメニューの地の色はこの領域外クリック用の要素に指定した*/
	}

	.sp-navigation {
		color: #FFFFFF;
		width: 287px;
		font-size: 17px;
		font-weight: 700;
		letter-spacing: 0.1em;
	}

	.text__sp-nav-category {
		border-bottom: 1px solid #FFFFFF;
		padding-bottom: 9px;
		margin-bottom: 12px;
		margin-top: 36px;
	}

	.text__sp-nav-category:first-child {
		margin-top: 0;
	}

	.text__sp-nav-link {
		display: block;
		margin-bottom: 16px;
	}

	.text__sp-nav-link--mgtop {
		margin-top: 42px;
	}

	.container__sp-nav-copyright {
		font-size: 14px;
		font-weight: 700;
		letter-spacing: 0.1em;
		text-align: center;
		margin-top: 51.5px;
		color: #FFFFFF;
	}
	
}

/* ----------------------------------------------------------------
common(tablet-S)----------------------------------------------------------------- */

@media screen and (max-width: 964px) {

	/**** footer ***/
	#footer {
		height: 80px;
		padding-top: 0;
	}

	#footer .wrapper__inner {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100%;
	}

	#footer .wrapper__flex-box {
		display: none;
	}

	#copyright {
		margin-top: 0;
	}
}

/* ----------------------------------------------------------------
common(SP)
----------------------------------------------------------------- */

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

	/**** general ****/

	.pc-only {
		display: none;
	}

	.sp-only {
		display: block;
	}

	.container__section {
		padding-top: 28.267%;
		padding-bottom: 26.667%;
	}

	.container__bg-grad {
		width: 100%;
		height: calc(100vw / 375 * 348);
	}

	.container__img-ico {
		width: 15.2vw;
	}

	.wrapper__title-text {
		padding-left: 2.533vw;
	}

	body:not(.akfj-top) h1 {
		font-size: 5.067vw;
	}

	.text__h1-sub-en {
		font-size: 2.667vw;
	}

	.text__section-lead {
		font-size: 3.733vw;
		font-weight: 700;
		letter-spacing: 0.09em;
		line-height: 1.429;
		text-align: center;
		margin-top: 2em;
	}

	.container__cloud-head {
		width: 45.067%;
		aspect-ratio: 338 / 412;
		background: url(/wp-content/themes/blankslate-child/images/underpage_cloud_head_sp.webp) no-repeat top center;
		background-size: cover;
	}

	.container__cloud-mid {
		width: 45.067%;
		aspect-ratio: 338 / 290;
		background: url(/wp-content/themes/blankslate-child/images/underpage_cloud_mid_sp.webp) no-repeat top center;
		background-size: cover;
	}

	.container__cloud-bottom {
		width: 45.067%;
		aspect-ratio: 338 / 290;
		background: url(/wp-content/themes/blankslate-child/images/underpage_cloud_bottom_sp.webp) no-repeat top center;
		background-size: cover;
	}

	/**** header ***/

	#header {
		position: fixed;
		top: 0;
		transition: transform 0.3s 0.3s;
		height: calc(100vw / 375 * 61);
	}

	#header.hidden {
		transform: translateY(calc(100vw / 375 * -61));
	}

	#branding {
		display: contents;
	}

	#site-title {
		width: 33.333%;
	}

	.btn__humb {
		width: 10.667%;
		top: calc(100vw / 375 * 10);
		right: 2.667%;
	}

	/**** footer ***/

	#footer {
		height: auto;
		aspect-ratio: 750 / 134;
		background: url(/wp-content/themes/blankslate-child/images/bg_footer_sp.webp) no-repeat top center;
		background-size: cover;
		z-index: 1;
	}

	body:not(.akfj-top) .totop {
		display: block;
		position: fixed;
		width: 12.667%;
		height: auto;
		aspect-ratio: 4750 / 4211;
		right: 5.333%;
		bottom: calc(100vw / 375 * 25);
		cursor: pointer;
		z-index: 99;
/*		opacity: 0;
		visibility: hidden;*/
		transition: opacity 0.3s;
	}
/*
	.totop.is-show {
		opacity: 1;
		visibility: visible;
	}*/

	body:not(.akfj-top) .totop.is-bottom {
		position: absolute;
		bottom: auto;
		top: calc(100vw / 375 * -25);
		transform: translateY(-100%);
	}

	#copyright {
		font-size: 3.733vw;
	}

	/* top page */

	.akfj-top .wrapper__first-view {
		width: 100%;
		height: auto;
		aspect-ratio: 750 / 1332;
		background: url(/wp-content/themes/blankslate-child/images/bg_top_fv_sp.webp) no-repeat top center;
		background-size: cover;
		padding-top: 29.867%;
		padding-bottom: 0;
		position: relative;
	}

	.akfj-top .text__main-catch {
		font-size: 9.733vw;
		text-shadow: 3.03px 0px 5.06px rgba(19, 20, 17, 0.75);
	}

	.akfj-top .container__img-paper-origami {
		width: 88.267%;
		margin: 12.267% auto 0;
	}

	.akfj-top .text__first-view-read {
		font-size: 4vw;
		line-height: 1.2;
		margin-top: 8.533%;
	}

	.akfj-top .text__first-view-read--en {
		font-size: 4.8vw;
		line-height: 1.222;
		margin-top: 13.867%;
	}

	.akfj-top .container__cloud {
		width: 53.333%;
		aspect-ratio: 200 / 175;
		right: 0;
		margin-right: 0;
	}

	.akfj-top .container__cloud-01 {
		background: url(/wp-content/themes/blankslate-child/images/top_fv_cloud_sp.webp) no-repeat top center;
		background-size: cover;
	}

	.akfj-top .container__cloud-02 {
		display: none;
	}

    .pap-viewport-pc {
        display: none;
    }

    .pap-viewport-sp {
        display: block;
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
        height: 0;
        overflow: visible;
        z-index: 10;
    }

    .pap-stage {
        width: 153.3333vw; 
        height: auto;
        aspect-ratio: 575 / 824;
        top: calc((100vw / 375 * 507) - (153.3333vw * (687.39 / 575)) + (100vw / 375 * 50));
    }

    .container__pap {
        offset-path: path('M253.72,810.61S-76.83,24.5,138.44,23.11c118.06,5.56,422.22,419.44,405.56,637.5s-256.5,26.39-256.5,26.39');
        width: 96px; 
        height: auto;       
        animation: fly-origami-sp 2.7s linear 1s forwards;
    }

    .airplane-body,
    .airplane-body img {
        width: 96px;
        height: auto;
    }

	@keyframes fly-origami-sp {
		0% {
			offset-distance: 0%;
			opacity: 0;
		}
		10% {
			offset-distance: 10%;
			opacity: 1;
		}
		100% {
			offset-distance: 100%;
			opacity: 1;
		}
	}

	.akfj-top .wrapper__white-box {
		padding-top: 13.333%;
		padding-bottom: 34.667%;
	}

	.akfj-top .container__cloud-bottom-home {
		display: block;
		position: absolute;
		width: 53.333%;
		height: auto;
		aspect-ratio: 200 / 175;
		background: url(/wp-content/themes/blankslate-child/images/top_bottom_cloud_sp.webp) no-repeat top center;
		background-size: cover;
		bottom: 0;
		left: 0;
	}

	.akfj-top .wrapper__flex-box.wrapper__works {
		display: block;
		width: 88%;
	}

	.akfj-top a.item__works {
		width: 100%;
		aspect-ratio: 330 / 108;
		border-radius: 5px;
		box-shadow: 2px 2px 2px #666464;
		display: flex;
		align-items: center;
		margin-bottom: 13.333%;
		padding-left: 6.515%;
	}

	.akfj-top a.item__works:last-child {
		margin-bottom: 0;
	}

	.akfj-top .container__img-ico {
		width: 17.273%;	
		margin: 0;
	}

	.akfj-top .wrapper__works-text {
		margin: 0;
		flex: 1;
	}

	.akfj-top .wrapper__works-text h2 {
		font-size: 5.067vw;
		letter-spacing: 0.05em;
		line-height: 1.895;
	}

	.akfj-top .wrapper__works-text .text__h2-sub-en {
		font-size: 2.667vw;
		line-height: 2.02;
		margin-top: 0;
	}

	/* works */

	.akfj-works .container__bg-grad {
		background: linear-gradient(
			#fbafbc 0%,
			#fcc5ce 17.5%,
			rgba(248, 247, 247, 0) 100%
		);
	}

	.akfj-works .wrapper__develop-branch {
		display: block;
		width: 77.28%;
		padding-left: 13.965%;
		margin: 13.733% auto 0;
	}

	.akfj-works .item__develop-branch {
		width: 100%;
		aspect-ratio: 23743 / 9600;
		box-shadow: none;
		padding-left: 27.334%;
		margin-bottom: 20.216%;
	}

	.akfj-works .item__develop-branch:last-child {
		margin-bottom: 0;
	}

	.akfj-works .item__develop-branch--pd-thin {
		padding-left: 26.618%;
	}

	.akfj-works .wrapper__branch-title {
		width: 53.911%;
	}

	.akfj-works .text__branch-title {
		font-size: 5.149vw;
	}

	.akfj-works .text__branch-detail {
		font-size: 4vw;
		line-height: 1.4461;
	}

	.akfj-works .container__section-consulting {
		padding-top: 9.6%;
		padding-bottom: 45.333%;
	}

	.akfj-works .container__section-consulting .container__bg-grad {
		height: calc(100vw / 375 * 287);
		background: linear-gradient(#f8e0be 0%, rgba(255, 255, 255, 0) 100%);
		top: 0;
	}

	.akfj-works .container__section-consulting h1 {
		letter-spacing: 0.05em;
		padding-right: 1.1em;
	}

	.akfj-works .wrapper__consulting-detail {
		width: 70.4%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		row-gap: 8.8vw;
		margin: 9.6% auto 0;
	}

	.akfj-works .item__consulting-detail {
		width: 45.455%;
	}

	.akfj-works .text__consulting {
		font-size: 4vw;
		font-weight: 700;
		line-height: 1.2;	}

	.akfj-works .container__img-origami-02 {
		width: 26.739%;
		bottom: calc(100vw / 375 * 41.7);
		left: 9.333%;
	}

	/* about */

	.akfj-about .container__bg-grad {
		background: linear-gradient(
			#f5f58a 0%,
			#f7f7a3 17.5%,
			rgba(255, 255, 255, 0) 100%
		);
	}

	.akfj-about .container__section .wrapper__inner {
		width: 87.2%;
	}

	.akfj-about .container__company-table {
		margin-top: 19.572%;
	}

	.akfj-about .container__company-table table,
	.akfj-about .container__company-table tr,
	.akfj-about .container__company-table td {
		display: block;
		width: 100%;
	}

	.akfj-about .container__company-table td:first-child {
		width: 100%;
	}

	.akfj-about .container__company-table tr {
		margin-bottom: 1.5em;
	}

	.akfj-about .container__company-table tr:last-child {
		margin-bottom: 0;
	}

	.akfj-about .container__company-table td {
		font-size: 4.267vw;
		font-weight: 600;
		line-height: 1.4375;
	}

	.akfj-about .text__map-title {
		font-size: 4.8vw;
		margin-top: 19.205%;
	}

	.akfj-about .container__gmap {
		aspect-ratio: 3180 / 2116;
		margin-top: 6.361%;
	}

	.akfj-about .text__access-detail {
		font-size: 3.733vw;
		line-height: 1.857;
		margin-top: 9.205%;
	}

	.akfj-about .text__access-detail .lsp-pl90 {
		letter-spacing: 0.09em;
	}

	/* achievement */

	.akfj-achievement .container__section {
		padding-bottom: 53.867%;
	}

	.akfj-achievement .container__bg-grad {
		background: linear-gradient(
			#99e292 0%,
			#b0eaab 17.5%,
			rgba(255, 255, 255, 0) 100%
		);
	}

	.akfj-achievement .container__section .wrapper__inner {
		width: 88.533%;
	}

	.akfj-achievement .text__table-title {
		margin-top: 9.789%;
	}

	.akfj-achievement .text__table-title h2 {
		font-size: 4.267%;
		text-align: center;
	}

	.akfj-achievement .container__table-header {
		height: auto;
		aspect-ratio: 33153 / 2810;
		margin-top: 7.229%;
		/*border: none;*/
	}

	.akfj-achievement .container__table-header p {
		font-size: 3.467vw;
	}

	.container__table-body {
		overflow: scroll;
		border-right: 1px solid #666464;
		border-bottom: 1px solid #666464;
	}

	.akfj-achievement .wrapper__achievement-table table {
		width: 219.404%;
	}

	.akfj-achievement .wrapper__achievement-table thead tr {
		height: calc(100vw / 375 * 44.34);
	}

	.akfj-achievement .wrapper__achievement-table tbody tr {
		height: calc(100vw / 375 * 40);
	}

	.akfj-achievement .wrapper__achievement-table th,
	.akfj-achievement .wrapper__achievement-table td {
		font-size: 3.733vw;
	}

	.akfj-achievement .wrapper__achievement-table th:first-child,
	.akfj-achievement .wrapper__achievement-table td:first-child {
		position: sticky;
		left: 0;
		background: inherit;
		border-left: none;
		border-right: none;
	}

	.akfj-achievement .wrapper__achievement-table th:first-child::before,
	.akfj-achievement .wrapper__achievement-table td:first-child::before {
		content: '';
		width: 1px;
		height: 100%;
		background: #666464;
		position: absolute;
		top: 0;
		left: 0;
	}

	.akfj-achievement .wrapper__achievement-table th:first-child::after,
	.akfj-achievement .wrapper__achievement-table td:first-child::after {
		content: '';
		width: 1px;
		height: 100%;
		background: #666464;
		position: absolute;
		top: 0;
		right: 0;
	}

	.akfj-achievement .symbol-no {
		width: 3.245vw;
	}

	.akfj-achievement .symbol-yes {
		width: 4.032vw;
	}

	.akfj-achievement .text__table-repletion {
		font-size: 3.733vw;
		margin-top: 2.139%;
	}

	/* privacy-policy */

	.akfj-privacy-policy .container__section {
		padding-bottom: 31.867%;
	}

	.akfj-privacy-policy .container__bg-grad {
		background: linear-gradient(
				#d8bfeb 0%,
				#e3d1ee 17.5%,
				rgba(255, 255, 255, 0) 100%
			);
	}

	.akfj-privacy-policy .container__section .wrapper__inner {
		width: 94.667%;
	}

	.akfj-privacy-policy .wrapper__text-body {
		margin-top: 9.577%;
	}

	.akfj-privacy-policy .text__normal {
		font-size: 3.733vw;
		line-height: 1.929;
		margin-bottom: 1.929em;
	}

	.akfj-privacy-policy .text__normal--mgb-0 {
		margin-bottom: 0;
	}

	.akfj-privacy-policy .text__large {
		font-size: 3.733vw;
		line-height: 1.929;
	}


	.akfj-privacy-policy a.text__large {
		display: inline-block;
		margin-top: 11.465%;
	}

	/* recruit */

	.akfj-recruit .container__section {
		padding-bottom: 42.4%;
	}

	.akfj-recruit .container__bg-grad {
		background: linear-gradient(
			#a6d1f0 0%,
			#bbdcf4 17.5%,
			rgba(255, 255, 255, 0) 100%
		);
	}

	.akfj-recruit .container__section .wrapper__inner {
		width: 94.667%;
	}

	.akfj-recruit .wrapper__text-body {
		margin-top: 9.577%;
		text-align: justify;
	}

	.akfj-recruit .text__large {
		font-size: 3.733vw;
		line-height: 2.143;	
	}

	.akfj-recruit .text__normal {
		font-size: 3.733vw;
		line-height: 2.143;
		margin-bottom: 2.143em;
	}

	.akfj-recruit .text__normal--pdl06 {
		padding-left: 0.6em;
	}

	.akfj-recruit .text__normal .pdl-1em {
		display: inline-block;
	}

	.akfj-recruit .btn__to-contact {
		width: 54.366%;
		height: auto;
		aspect-ratio: 193 / 35;
	}

	.akfj-recruit .btn__to-contact::before {
		width: 11.487%;
		left: 5.44%;
	}

	.akfj-recruit .btn__to-contact p {
		font-size: 3.467vw;
		padding-left: 1.523em;
	}

	/* contact */

	.akfj-contact .container__section {
		padding-bottom: 42.667%;
	}

	.akfj-contact .container__bg-grad {
		background: linear-gradient(
			#c1c1f0 0%,
			#cecef2 17.5%,
			rgba(255, 255, 255, 0) 100%
		);
	}

	.akfj-contact .container__section .wrapper__inner {
		width: 82.133%;
	}

	.akfj-contact .wrapper__text-body {
		margin-top: 11.039%;
		padding-left: 0;
	}

	.akfj-contact .wrapper__text-body p {
		font-size: 3.733vw;
		line-height: 1.714;
		text-align: justify;
	}

	.akfj-contact .wrapper__input-area {
		margin-top: 13.409%;
		padding-left: 0;
	}

	.akfj-contact .text__attention {
		font-size: 3.733vw;
		text-align: center;
		padding-left: 0;
		margin-bottom: 2.12em;
	}

	.akfj-contact .wrapper__contact-row {
		display: block;
		margin-bottom: 4.870%;
	}

	.akfj-contact .container__contact-row--left {
		width: 100%;
		margin-bottom: 6.169%;
	}

	.akfj-contact .container__contact-row--left label {
		font-size: 4.533vw;
	}

	.akfj-contact .container__contact-row--right {
		width: 100%;
	}

	.akfj-contact .wrapper__contact-area {
		display: block;
		margin-bottom: 4.870%;
	}

	.akfj-contact .wrapper__contact-select:after {
		top: calc(100vw / 375 * 30 * 0.45);
	}

	.akfj-contact select,
	.akfj-contact input[type="text"],
	.akfj-contact input[type="tel"],
	.akfj-contact input[type="email"] {
		height: calc(100vw / 375 * 30);
		font-size: 3.733vw;
	}

	.akfj-contact textarea {
		height: calc(100vw / 375 * 206);
		font-size: 3.733vw;
	}

	.akfj-contact .wrapper__accepet-row {
		font-size: 3.733vw;
		padding-left: 0;
		margin-top: 6.494%;
	}

	.akfj-contact .wrapper__accepet-row input[type="checkbox"] {
		font-size: 3.733vw;
	}

	.akfj-contact .wrapper__button {
		padding-left: 0;
		margin-top: 14.286%;
	}

	.akfj-contact .container__button {
		width: 62.662%;	
		margin: 0 auto;
	}

	.akfj-contact .container__button input[type="submit"] {
		font-size: 3.733vw;
	}

}

/* ----------------------------------------------------------------
hover
----------------------------------------------------------------- */
@media (any-hover: hover) {
	#header a,
	#footer a {
		transition: all 0.3s;
	}

	#header a:hover,
	#footer a:hover {
		opacity: 0.7;
	}

	.akfj-top a.item__works {
		transition: all 0.2s;
	}

	.akfj-top a.item__works:hover {
		box-shadow: 1px 1px 5px #666464;
		transform: translate(7px , 7px);
	}

	.akfj-recruit .btn__to-contact {
		transition: all 0.2s;
	}

	.akfj-recruit .btn__to-contact:hover {
		box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.75);
		transform: translate(7px , 7px);
	}

	.akfj-contact .container__button {
		transition: all 0.2s;
	}

	.akfj-contact .container__button:not(:has(input[type="submit"]:disabled)):hover {
		box-shadow: 1px 1px 4.89px #666464;
		transform: translate(3.26px , 3.26px);
	}

	.akfj-privacy-policy .text__normal a,
	.akfj-privacy-policy .text__link-blue {
		transition: all 0.3s;
	}

	.akfj-privacy-policy .text__normal a:hover,
	.akfj-privacy-policy .text__link-blue:hover {
		opacity: 0.7;
	}

	.akfj-contact .wrapper__text-body p a,
	.akfj-contact .wrapper__accepet-row a {
		transition: all 0.3s;
	}

	.akfj-contact .wrapper__text-body p a:hover,
	.akfj-contact .wrapper__accepet-row a:hover {
		opacity: 0.7;
	}

}
