/*================================================================
foundation
================================================================*/

/*================================================================
base.css
================================================================*/

/*================================================================
mixin
================================================================*/

/*================================================================
reset.css
================================================================*/

* {
	box-sizing: border-box;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td {
	border: 0;
	font-weight: normal;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

header,
footer,
nav,
section,
article,
aside,
figure,
figcaption {
	display: block;
}

em {
	font-style: normal;
}

ol,
ul {
	list-style: none;
	list-style-type: none;
}

li {
	list-style-type: none;
}

/*================================================================
variable
================================================================*/

@font-face {
	font-family: "ff2";
	src: url("../font/PixelMplus10-Bold.woff") format("truetype");
}

@font-face {
	font-family: "ff3";
	src: url("../font/PixelMplus10-Regular.woff") format("truetype");
}

@font-face {
	font-family: "ff4";
	src: url("../font/LoRes9PlusOTNarrow-Bold.woff") format("truetype");
}

@font-face {
	font-family: "ff5";
	src: url("../font/LoRes9PlusOTNarrow-Regular.woff") format("truetype");
}

html {
	font-size: 62.5%;
	scroll-behavior: smooth;
}

body {
	background-color: #FFFFFF;
	color: #1B1B1B;
	font-family: "Zen Kaku Gothic Antique", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1;
}

a {
	color: inherit;
	text-decoration: none;
	transition: opacity 0.3s;
}

.color-white {
	color: #FFFFFF;
}

.color-black {
	color: #1B1B1B;
}

.ff {
	font-family: "Zen Kaku Gothic Antique", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.ff2 {
	font-family: "ff2", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.ff3 {
	font-family: "ff3", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.ff4 {
	font-family: "ff4", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.ff5 {
	font-family: "ff5", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.ff-eng {
	font-family: "Jost", sans-serif;
}

/*================================================================
layout
================================================================*/

/*================================================================
l-archive
================================================================*/

.l-archive {
	background: transparent url(../images/general/jpg/archive-bg.jpg) no-repeat center center/cover;
	height: 100%;
	padding: 10rem 0;
	position: relative;
}

.l-archive__title {
	box-sizing: content-box;
	margin: 0 auto;
	max-width: 150rem;
	padding: 0 8.3333%;
}

.l-archive__cat-list {
	border-bottom: 1px solid #1B1B1B;
	justify-content: center;
	margin-top: 10rem;
}

.l-archive__cat-list li a {
	display: block;
	font-family: "ff4", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 3rem;
	letter-spacing: 0.2em;
	text-align: center;
	width: 25.1rem;
}

.l-archive__cat-list li a.active {
	-o-border-image: linear-gradient(128.93deg, #23D7FB 21.43%, #23BEFB 87.78%);
	border-bottom: 5px solid;
	border-image: linear-gradient(128.93deg, #23D7FB 21.43%, #23BEFB 87.78%);
	border-image-slice: 1;
}

.l-archive__posts {
	box-sizing: content-box;
	display: flex;
	flex-wrap: wrap;
	gap: 2.8rem;
	margin: 10rem auto 0;
	max-width: 150rem;
	padding: 0 8.3333%;
}

.pagination {
	line-height: 2;
	margin-top: 8rem;
	text-align: center;
}

.page-numbers {
	font-family: "Jost", sans-serif;
	font-size: 3rem;
	font-weight: 500;
	margin-right: 7.3rem;
}

.current {
	background-color: #23BEFB;
	border-radius: 50vh;
	color: #FFFFFF;
	padding: 0.2rem 1.6rem;
}

.prev.page-numbers,
.next.page-numbers {
	display: none;
}

.dots {
	border: none;
}

/*================================================================
l-column
================================================================*/

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

.l-column2 {
	display: flex;
}

/*================================================================
l-footer
================================================================*/

.l-footer {
	background-color: #1B1B1B;
	color: #FFFFFF;
	padding-top: 6.4rem;
}

.l-footer__inner {
	box-sizing: content-box;
	margin: 0 auto;
	max-width: 150rem;
	padding: 0 8.3333%;
}

.l-footer__logo {
	margin-bottom: 7.9rem;
}

.l-footer__logo-link svg {
	height: 4.7rem;
	width: 42.7rem;
}

.l-footer__nav {
	margin-bottom: 13.3rem;
}

.l-footer__nav-list {
	display: flex;
}

.l-footer__nav-link {
	color: #FFFFFF;
	font-family: "Jost", sans-serif;
	font-size: 1.7rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-transform: uppercase;
}

.l-footer__nav-link--home {
	font-weight: 700;
}

.l-footer__contents {
	justify-content: space-between;
	padding-bottom: 4.7rem;
}

.l-footer__sns-item + .l-footer__sns-item {
	margin-left: 4.2rem;
}

.l-footer__sns-item a {
	background-color: #FFFFFF;
	border-radius: 50vh;
	padding: 1.5rem 1.1rem 0.7rem;
}

.l-footer__sns-item a img {
	height: 2rem;
	width: 2rem;
}

.l-footer__policy-link {
	position: relative;
	text-transform: capitalize;
}

.l-footer__policy-link:after {
	background: transparent url(../images/general/svg/link.svg) no-repeat center center/contain;
	content: "";
	height: 1.5rem;
	position: absolute;
	right: -2rem;
	top: 0.1rem;
	width: 1.5rem;
}

.l-footer__copy {
	background: linear-gradient(128.93deg, #23D7FB 21.43%, #23BEFB 87.78%);
	padding: 1.3rem 0 1.2rem;
}

.l-footer__copy p {
	font-family: "ff5", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

/*================================================================
l-header
================================================================*/

.l-header {
	background-color: #FFFFFF;
	height: 18.4rem;
	left: 0;
	position: relative;
	right: 0;
	top: 0;
	transition: 0.3s;
	z-index: 100;
}

.l-header.active {
	background-color: transparent;
}

.l-header__logo {
	box-sizing: content-box;
	padding: 4.4rem 0 0 4.4rem;
	transition: 0.3s;
}

.l-header__logo.active {
	display: none;
}

.l-header__logo-link svg {
	width: 83.3rem;
}

.l-header__nav {
	opacity: 0;
	position: fixed;
	transition: 0.3s;
	z-index: -1;
}

.l-header__nav.panel-active {
	background-color: #1B1B1B;
	opacity: 1;
	right: 0;
	z-index: 999;
}

.l-header__nav.panel-active .l-header__nav-scroll {
	-webkit-overflow-scrolling: touch;
	height: 100svh;
	overflow: auto;
	position: absolute;
	width: 100%;
	z-index: 999;
}

.l-header__nav.panel-active .l-header__nav-wrapper {
	display: block;
}

.l-header__nav-wrapper {
	box-sizing: content-box;
	display: none;
	padding: 12rem 1.6rem 1.6rem 10rem;
	z-index: 999;
}

.l-header__nav-item + .l-header__nav-item {
	margin-top: 5.6rem;
}

.l-header__nav-link {
	color: #FFFFFF;
	font-family: "Jost", sans-serif;
	font-size: 1.7rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-transform: uppercase;
}

.l-header__nav-contents {
	margin-top: 14rem;
}

.l-header__sns-item + .l-header__sns-item {
	margin-left: 4.2rem;
}

.l-header__sns-item a {
	background-color: #FFFFFF;
	border-radius: 50vh;
	padding: 1.5rem 1.1rem 0.7rem;
}

.l-header__sns-item a img {
	height: 2rem;
	width: 2rem;
}

.l-header__policy-link {
	position: relative;
	text-transform: capitalize;
}

.l-header__policy-link:after {
	background: transparent url(../images/general/svg/link.svg) no-repeat center center/contain;
	content: "";
	height: 1.5rem;
	position: absolute;
	right: -2rem;
	top: 0.1rem;
	width: 1.5rem;
}

.l-header__copy {
	color: #5E5E5E;
	margin-top: 8.2rem;
	text-align: right;
}

.l-header__copy p {
	font-family: "ff5", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.l-header__burger {
	background-color: #1B1B1B;
	border-radius: 50vh;
	cursor: pointer;
	height: 8.8rem;
	position: fixed;
	right: 5rem;
	top: 4.6rem;
	width: 8.8rem;
	z-index: 9999;
}

.l-header__burger.active {
	background-color: #FFFFFF;
}

.l-header__burger-wrapper {
	left: 2rem;
	position: relative;
	top: 2rem;
}

.l-header__burger-inline,
.l-header__burger-inline2,
.l-header__burger-inline3 {
	background-color: #FFFFFF;
	border-radius: 50vh;
	height: 0.4rem;
	margin: 0.9rem;
	transition: transform 0.3s;
}

.l-header__burger-inline {
	width: 2.8rem;
}

.l-header__burger-inline2 {
	width: 3.7rem;
}

.l-header__burger-inline3 {
	width: 1.8rem;
}

.l-header__burger.active .l-header__burger-wrapper {
	left: 0;
	top: 5.5rem;
}

.l-header__burger.active .l-header__burger-inline,
.l-header__burger.active .l-header__burger-inline2,
.l-header__burger.active .l-header__burger-inline3 {
	background-color: #1B1B1B;
}

.l-header__burger.active .l-header__burger-inline,
.l-header__burger.active .l-header__burger-inline3 {
	margin: -1.3rem auto;
}

.l-header__burger.active .l-header__burger-inline {
	transform: rotate(-45deg);
	width: 3.7rem;
}

.l-header__burger.active .l-header__burger-inline2 {
	opacity: 0;
}

.l-header__burger.active .l-header__burger-inline3 {
	transform: rotate(45deg);
	width: 3.7rem;
}

/*================================================================
l-inner
================================================================*/

.l-inner {
	box-sizing: content-box;
	margin: 0 auto;
	max-width: 150rem;
	padding: 0 8.3333%;
}

/*================================================================
l-inquiry
================================================================*/

.l-inquiry {
	background-color: #D5EEF6;
	overflow: hidden;
	padding: 5.1rem 0 13.1rem;
}

.l-inquiry__title-image img {
	bottom: -3.4rem;
	position: relative;
	right: -14.9rem;
	width: 20.4rem;
}

.l-inquiry__wrapper {
	position: relative;
}

.l-inquiry__contents {
	background-color: #FFFFFF;
	border-radius: 20px;
	margin-bottom: 3.3em;
	padding: 3.2rem;
	width: 100%;
}

.l-inquiry__lead {
	letter-spacing: 0.7em;
	margin-bottom: 1.2rem;
}

.l-inquiry__images {
	position: absolute;
}

.l-inquiry__images2 {
	align-items: center;
}

.l-inquiry__images3 {
	position: absolute;
}

.l-inquiry__image01 img {
	width: 8.1rem;
}

.l-inquiry__image02 img {
	width: 15.7rem;
}

.l-inquiry__image03 img {
	width: 8.8rem;
}

.l-inquiry__image04 img {
	width: 17.3rem;
}

.l-inquiry__image05 img {
	width: 17rem;
}

.l-inquiry__image06 img {
	width: 13.2rem;
}

.l-inquiry__form {
	background-color: #FFFFFF;
	border-radius: 20px;
	padding: 4.2rem 5.5555% 1.1rem;
}

.l-inquiry__attention {
	font-size: 1.4rem;
	font-weight: 500;
	margin: 1.2rem 0 2.4rem;
}

.l-inquiry__attention span {
	color: #FF2B2B;
}

.l-inquiry__form-area {
	margin: 0 auto;
	max-width: 80rem;
}

.l-inquiry__form-area .wpcf7-form p {
	border-bottom: 1px solid #E8E8E8;
	font-weight: 700;
	margin-top: 4rem;
	padding-bottom: 2.4rem;
	position: relative;
}

.l-inquiry__form-area .wpcf7-form p:after {
	color: #FF2B2B;
	content: "*";
	left: 11.2rem;
	position: absolute;
	top: 0;
}

.l-inquiry__form-area .wpcf7-form p:nth-child(2) {
	margin-top: 0;
}

.l-inquiry__form-area .wpcf7-form p:nth-child(2):after {
	left: 12.8rem;
}

.l-inquiry__form-area .wpcf7-form p:nth-child(3):after {
	left: 4.8rem;
}

.l-inquiry__form-area .wpcf7-form p:nth-child(5) {
	border-bottom: none;
	padding-bottom: 0;
}

.l-inquiry__form-area .wpcf7-form p:nth-child(5):after {
	left: 12.8rem;
}

.l-inquiry__form-area .wpcf7-form p:nth-child(6),
.l-inquiry__form-area .wpcf7-form p:nth-child(7) {
	border-bottom: none;
	padding-bottom: 0;
}

.l-inquiry__form-area .wpcf7-form p:nth-child(6):after,
.l-inquiry__form-area .wpcf7-form p:nth-child(7):after {
	display: none;
}

.l-inquiry__form-area .wpcf7-form p .ajax-loader {
	display: none;
}

.l-inquiry__form-area .wpcf7-form p label {
	display: flex;
}

.l-inquiry__form-area .wpcf7-form p label span input[type=text],
.l-inquiry__form-area .wpcf7-form p label span input[type=email],
.l-inquiry__form-area .wpcf7-form p label span textarea {
	background-color: #F4F4F4;
	border: none;
	border-radius: 4px;
	font-size: 1.6rem;
	height: 4.2rem;
	padding-left: 1.6rem;
	width: 59.5rem;
}

.l-inquiry__form-area .wpcf7-form p label span input[type=text]:focus,
.l-inquiry__form-area .wpcf7-form p label span input[type=email]:focus,
.l-inquiry__form-area .wpcf7-form p label span textarea:focus {
	border: 1px solid #23BEFB;
	outline: none;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-radio {
	display: flex;
	margin-left: -1.8rem;
	position: relative;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-radio input[type=radio] {
	opacity: 0;
	visibility: hidden;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-radio span.wpcf7-list-item-label {
	align-items: center;
	cursor: pointer;
	display: flex;
	margin-left: 0;
	position: relative;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-radio span.wpcf7-list-item-label::before {
	border: 2px solid #1B1B1B;
	border-radius: 50%;
	content: "";
	display: block;
	height: 2rem;
	margin-right: 1.2rem;
	width: 2rem;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-radio span.wpcf7-list-item-label::after {
	background-color: #23BEFB;
	border-radius: 50%;
	content: "";
	display: none;
	height: 1.2rem;
	left: 0.6rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1.2rem;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-radio input[type=radio]:checked + span.wpcf7-list-item-label::before {
	border: 2px solid #23BEFB;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-radio input[type=radio]:checked + span.wpcf7-list-item-label::after {
	display: block;
}

.l-inquiry__form-area .wpcf7-form p label span textarea {
	height: 15.2rem;
	padding: 1.6rem 0 0 1.6rem;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-not-valid-tip {
	color: #23BEFB;
	font-size: 1.4rem;
	font-weight: 400;
	margin-top: 0.6rem;
}

.l-inquiry__form-area .wpcf7-form .wpcf7-submit {
	background-color: #1B1B1B;
	border: none;
	border-radius: 40px;
	color: #FFFFFF;
	cursor: pointer;
	display: flex;
	font-size: 1.8rem;
	font-weight: 700;
	margin: 0 auto;
	padding: 2rem 9.1rem 1.9rem 9.2rem;
	transition: background-color 0.3s;
}

.wpcf7-form.sent .wpcf7-response-output {
	display: none;
}

/*================================================================
l-main
================================================================*/

.l-main3 {
	padding: 10rem 0;
}

/*================================================================
l-single
================================================================*/

.l-single {
	padding: 4rem 0 10rem;
}

.l-single__inner {
	box-sizing: content-box;
	margin: 0 auto;
	max-width: 80rem;
	padding: 0 8.3333%;
}

.l-single__post {
	border-radius: 20px;
	box-shadow: 5px 5px 10px #f2f2f2, -5px -5px 10px #ffffff;
	padding: 2.8rem 2.8rem 6rem;
}

.l-single__header {
	border-bottom: 1px solid #CFCFCF;
	margin-bottom: 2.8rem;
}

.l-single__category a {
	background-color: transparent;
	border: 1px solid #1B1B1B;
	border-radius: 20px;
	font-family: "Jost", sans-serif;
	font-size: 1.2rem;
	font-weight: 500;
	margin-left: 1.2rem;
	padding: 0.4rem 1.2rem;
}

.l-single__title {
	font-size: 2.6rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.5;
	margin: 2.8rem 0;
}

.l-single__body h2,
.l-single__body h3,
.l-single__body p,
.l-single__body ul,
.l-single__body ol {
	letter-spacing: 0.05em;
	line-height: 2;
	margin: 2.8rem 0;
}

.l-single__body .wp-block-image img {
	-o-object-fit: cover;
	aspect-ratio: 3/2;
	object-fit: cover;
}

.l-single__body h2 {
	font-size: 2.2rem;
	font-weight: 500;
	padding-left: 2.6rem;
	position: relative;
}

.l-single__body h2:before {
	background-color: #23BEFB;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	width: 0.8rem;
}

.l-single__body h3 {
	font-size: 2rem;
}

.l-single__body a {
	color: #23BEFB;
	text-decoration: underline;
}

.l-single__body ul li {
	list-style-type: disc;
	margin-left: 1.6rem;
	margin-top: 0.4rem;
}

.l-single__body ol li {
	list-style-type: decimal;
	margin-left: 1.6rem;
	margin-top: 0.4rem;
}

.l-single__navigation {
	justify-content: space-between;
	margin-top: 4rem;
}

.l-single__navigation div:last-child {
	margin-left: auto;
}

/*================================================================
l-sub-fv
================================================================*/

/*================================================================
component
================================================================*/

/*================================================================
c-btn
================================================================*/

.c-btn__link {
	border: 2px solid #1B1B1B;
	border-radius: 40px;
	display: inline-block;
	padding-top: 2.1rem;
}

.c-btn__link span {
	font-family: "ff5", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 2rem;
	letter-spacing: 0.2em;
	position: relative;
	text-transform: uppercase;
}

.c-btn__link span:after {
	content: "+";
	position: absolute;
	right: -8.1rem;
	top: 0.4rem;
}

.c-toTop {
	bottom: 15.1rem;
	position: fixed;
	right: 5.277%;
	transition: 0.6s;
	visibility: hidden;
	z-index: 99;
}

.c-toTop.is-show {
	visibility: visible;
}

.c-toTop a img {
	height: 8.8rem;
	width: 8.8rem;
}

/*================================================================
c-heading
================================================================*/

.c-primary__title-lead {
	font-family: "ff4", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 6rem;
	text-transform: uppercase;
}

.js-type .split {
	display: inline-block;
	opacity: 0;
}

.c-primary__title-description {
	display: block;
	font-family: "ff3", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.8rem;
	letter-spacing: 0.7rem;
	margin-top: 0.9rem;
}

/*================================================================
c-loading
================================================================*/

.loader {
	height: 100vh;
	left: 0;
	position: fixed;
	top: 0;
	width: 100vw;
	z-index: 999;
}

.loader__contents {
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 1000;
}

.loader__contents svg {
	width: 42.7rem;
}

.loader__pulse {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	width: 5.4rem;
}

.loader__pulse-line {
	background-color: #FFFFFF;
	height: 2rem;
	width: 0.6rem;
}

.loader__pulse-line2 {
	-webkit-animation: pulse 0.4s ease 0s infinite alternate;
	animation: pulse 0.4s ease 0s infinite alternate;
	background-color: #FFFFFF;
}

.loader__pulse-line3 {
	-webkit-animation: pulse 0.4s ease 0.1s infinite alternate;
	animation: pulse 0.4s ease 0.1s infinite alternate;
	background-color: #FFFFFF;
}

.loader__pulse-line4 {
	-webkit-animation: pulse 0.4s ease 0.2s infinite alternate;
	animation: pulse 0.4s ease 0.2s infinite alternate;
	background-color: #FFFFFF;
}

.loader__pulse-line5 {
	-webkit-animation: pulse 0.4s ease 0.3s infinite alternate;
	animation: pulse 0.4s ease 0.3s infinite alternate;
	background-color: #FFFFFF;
}

.loader__line {
	background: linear-gradient(128.93deg, #23D7FB 21.43%, #23BEFB 87.78%);
	display: block;
	height: 10%;
	width: 100%;
}

/*================================================================
c-loop
================================================================*/

.c-loop {
	background-color: #1B1B1B;
	border-bottom: 1px solid #1B1B1B;
	border-top: 1px solid #1B1B1B;
	height: 5.2rem;
	overflow: hidden;
	position: relative;
	white-space: nowrap;
}

.c-loop--news {
	margin-top: -0.1rem;
}

.c-loop--profiles {
	background-color: #FFF570;
}

.c-loop--about {
	background-color: #E8E8E8;
}

.c-loop--contact {
	background-color: #7AF2FF;
}

.c-loop__list {
	-webkit-animation: loopText 22s linear infinite;
	animation: loopText 22s linear infinite;
	display: flex;
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
}

.c-loop__item {
	flex-shrink: 0;
	font-family: "ff5", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.8rem;
	padding: 0 3.4rem;
	position: relative;
	text-transform: capitalize;
}

.c-loop__item:after {
	background: transparent url(../images/top/svg/star.svg) no-repeat center center/contain;
	content: "";
	height: 2.2rem;
	position: absolute;
	right: -1.4rem;
	top: -0.2rem;
	width: 2.2rem;
}

.c-loop__item2 {
	color: #FFFFFF;
	position: relative;
}

.c-loop__item2:after {
	background: transparent url(../images/top/svg/star-white.svg) no-repeat center center/contain;
}

/*================================================================
c-modal
================================================================*/

.c-modal {
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 100;
}

.c-modal__overlay {
	background-color: rgba(27, 27, 27, 0.5);
	height: 100%;
	position: absolute;
	width: 100%;
}

.c-modal__close {
	background-color: #494949;
	border-radius: 50vh;
	height: 5rem;
	position: absolute;
	right: -2.5rem;
	top: -6rem;
	width: 5rem;
}

.c-modal__close span:before,
.c-modal__close span:after {
	background-color: #FFFFFF;
	content: "";
	height: 2.5rem;
	left: 2.5rem;
	position: absolute;
	top: 2.5rem;
	width: 0.3rem;
}

.c-modal__close span:before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.c-modal__close span:after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.c-modal__area {
	background-color: #494949;
	border: 1px solid #FFFFFF;
	border-radius: 20px;
	color: #FFFFFF;
	left: 50%;
	max-width: 110rem;
	padding: 10rem 12rem 10rem 5rem;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 76.3888%;
}

.c-modal__genre {
	border-radius: 20px 0 20px 0;
	font-family: "ff5", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 3rem;
	font-weight: 700;
	height: 6.6rem;
	left: 0;
	letter-spacing: 0.1em;
	padding-top: 1.8rem;
	position: absolute;
	text-align: center;
	text-transform: uppercase;
	top: 0;
	width: 27rem;
}

.c-modal__area > .genre-creator {
	background-color: #F462D4;
}

.c-modal__area > .genre-liver {
	background-color: #23BEFB;
}

.c-modal__area > .genre-producer {
	background-color: #37E09C;
}

.c-modal__wrapper img {
	-o-object-fit: cover;
	border-radius: 50vh;
	height: 40rem;
	object-fit: cover;
	width: 40rem;
}

.c-modal__text {
	font-family: "ff5", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.8rem;
	margin-bottom: 1.5rem;
	text-transform: capitalize;
}

.c-modal__name {
	font-size: 2.5rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.c-modal__profile-lead {
	align-items: center;
	display: flex;
	margin-top: 3rem;
	padding: 1rem 0;
}

.c-modal__profile-lead-text {
	color: #FFF570;
	font-weight: 700;
	letter-spacing: 0.2em;
}

.c-modal__profile-lead-line {
	background-color: #FFF570;
	flex: 1;
	height: 1px;
	margin-left: 1rem;
}

.c-modal__profile-text {
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.7;
	margin-top: 1rem;
}

.c-modal__sns-item {
	margin-top: 6.3rem;
}

.c-modal__sns-item + .c-modal__sns-item {
	margin-left: 2rem;
}

.c-modal__sns-item a {
	background-color: #FFFFFF;
	border-radius: 50vh;
	padding: 1.7rem 1.3rem 0.7rem;
}

.c-modal__sns-item a img {
	-o-object-fit: cover;
	border-radius: 0;
	height: 2.4rem;
	object-fit: cover;
	width: 2.4rem;
}

/*================================================================
project
================================================================*/

/*================================================================
front-page
================================================================*/

/*================================================================
p-fv
================================================================*/

.p-fv {
	margin-top: -18.4rem;
	overflow: hidden;
	position: relative;
}

.p-fv__bg img {
	-o-object-fit: cover;
	height: 100svh;
	object-fit: cover;
	position: relative;
	width: 100%;
}

.p-fv__girl img {
	-o-object-fit: cover;
	height: 100svh;
	left: 0;
	object-fit: cover;
	position: absolute;
	top: 0;
	width: 100%;
}

.p-fv__icon a:hover {
	opacity: 1;
}

.p-fv__icon a img {
	bottom: 5.5rem;
	height: 20.1rem;
	left: 4.4rem;
	position: absolute;
	width: 20.7rem;
}

/*================================================================
p-news
================================================================*/

.p-news {
	background: transparent url(../images/top/jpg/news-bg.jpg) no-repeat center center/cover;
	height: 100%;
	padding: 12.2rem 0 10rem;
	position: relative;
}

.p-news__posts {
	display: flex;
	flex-wrap: wrap;
	gap: 2.8rem;
	margin-top: 5.9rem;
}

.p-news__post {
	position: relative;
}

.p-news__tag {
	background-color: #1B1B1B;
	border-radius: 20px 0 20px 0;
	color: #FFFFFF;
	font-family: "ff5", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 2.6rem;
	font-weight: 700;
	height: 4.5rem;
	left: 0;
	letter-spacing: 0.2em;
	padding-top: 0.8rem;
	position: absolute;
	text-align: center;
	text-transform: uppercase;
	top: 0;
	width: 13.5rem;
	z-index: 5;
}

.p-news__image {
	-o-object-fit: cover;
	aspect-ratio: 360/200;
	border-radius: 20px 20px 0 0;
	object-fit: cover;
	overflow: hidden;
}

.p-news__image img {
	-o-object-fit: cover;
	border-radius: 20px 20px 0 0;
	height: 100%;
	object-fit: cover;
	transition: scale 0.3s;
	width: 100%;
}

.p-news__post-contents {
	background-color: #FFFFFF;
	border-radius: 0 0 20px 20px;
	padding: 1.2rem 1.6rem 1.6rem 2rem;
}

.p-news__post-category {
	background-color: transparent;
	border: 1px solid #1B1B1B;
	border-radius: 20px;
	font-family: "Jost", sans-serif;
	font-size: 1.2rem;
	font-weight: 500;
	margin-left: 1.2rem;
	padding: 0.4rem 1.2rem;
}

.p-news__post-body {
	margin-top: 1.8rem;
	position: relative;
}

.p-news__post-body:after {
	background: transparent url(../images/general/svg/btn-arrow.svg) no-repeat center center/contain;
	content: "";
	height: 3.2rem;
	position: absolute;
	right: 0.4rem;
	top: -0.6rem;
	transition: right 0.3s;
	width: 3.2rem;
}

.p-news__post-body {
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.5;
	transition: color 0.3s;
}

.p-news__btn {
	margin-top: 7.9rem;
}

.p-news__btn-link {
	background: linear-gradient(128.93deg, #23D7FB 21.43%, #23BEFB 87.78%);
}

/*================================================================
p-profiles
================================================================*/

.p-profiles {
	background: transparent url(../images/top/jpg/profiles-bg.jpg) no-repeat center center/cover;
	height: 100%;
	padding: 10rem 0;
	position: relative;
}

.p-profiles__items {
	display: flex;
	flex-wrap: wrap;
	gap: 2.7rem;
	margin-top: 6.7rem;
}

.p-profiles__item {
	background-color: #494949;
	border: 1px solid #FFFFFF;
	border-radius: 20px;
	color: #FFFFFF;
	font-family: "ff5", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	padding: 4.8rem 3.7rem 2.4rem;
	position: relative;
	text-align: center;
}

.p-profiles__tag {
	border-radius: 20px 0 20px 0;
	font-weight: 700;
	height: 3rem;
	left: 0;
	letter-spacing: 0.1em;
	padding-top: 0.6rem;
	position: absolute;
	text-transform: uppercase;
	top: 0;
	width: 12.2rem;
}

.p-profiles__item > .creator {
	background-color: #F462D4;
}

.p-profiles__item > .liver {
	background-color: #23BEFB;
}

.p-profiles__item > .producer {
	background-color: #37E09C;
}

.p-profiles__image img {
	-o-object-fit: cover;
	border-radius: 50vh;
	height: 20rem;
	object-fit: cover;
	width: 20rem;
}

.p-profiles__text {
	font-size: 1.5rem;
	margin: 1.6rem 0 1rem;
	text-transform: capitalize;
}

.p-profiles__name {
	font-family: "Zen Kaku Gothic Antique", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 2rem;
	font-weight: 700;
}

.p-profiles__btn {
	margin-top: 6.4rem;
}

.p-profiles__btn-link {
	background: #FFF570;
}

/*================================================================
p-about
================================================================*/

.p-about {
	background: transparent url(../images/top/jpg/about-bg.jpg) no-repeat center center/cover;
	height: 100%;
	overflow: hidden;
	padding: 12rem 0 12.3rem;
	position: relative;
}

.p-about__text {
	letter-spacing: 0.05em;
	line-height: 1.9;
	margin-top: 5.1rem;
}

.p-about__images-wrapper {
	flex-direction: column;
}

.p-about__images2 {
	justify-content: flex-end;
	margin-top: 9.1rem;
}

.p-about__image img {
	width: 37.8rem;
}

.p-about__image2 {
	margin: 11.9rem 0 0 7.2rem;
}

.p-about__image2 img {
	width: 15rem;
}

.p-about__image3 {
	margin: 2rem -2.4rem 0 0;
	z-index: 5;
}

.p-about__image3 img {
	width: 20.4rem;
}

.p-about__image4 img {
	width: 48.9rem;
}

/*================================================================
child-page
================================================================*/

/*================================================================
about
================================================================*/

/*================================================================
company
================================================================*/

/*================================================================
profiles
================================================================*/

/*================================================================
p-sub-profiles
================================================================*/

.p-sub-profiles {
	background: transparent url(../images/profiles/jpg/profiles-bg.jpg) no-repeat center center/cover;
	height: 100%;
	padding: 10rem 0;
	position: relative;
}

.p-profiles__title {
	box-sizing: content-box;
	margin: 0 auto;
	max-width: 150rem;
	padding: 0 8.3333%;
}

.p-sub-profiles__cat-list {
	align-items: flex-end;
	justify-content: center;
	margin-top: 10rem;
}

.p-sub-profiles__cat-list li a {
	border: 1px solid #FFFFFF;
	border-radius: 20px 20px 0 0;
	display: block;
	font-family: "ff4", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 2rem;
	height: 5rem;
	letter-spacing: 0.1em;
	padding-top: 1rem;
	text-align: center;
	width: 36rem;
}

.p-sub-profiles__cat-list li.active a {
	font-size: 3rem;
	height: 6rem;
}

.category-item--all a {
	background-color: #FFF570;
	color: #1B1B1B;
}

.category-item--creator a {
	background-color: #F462D4;
	color: #FFFFFF;
}

.category-item--liver a {
	background-color: #23BEFB;
	color: #FFFFFF;
}

.category-item--producer a {
	background-color: #37E09C;
	color: #FFFFFF;
}

.p-sub-profiles__inner {
	box-sizing: content-box;
	margin: 0 auto;
	max-width: 150rem;
	padding: 0 8.3333%;
}

.p-sub-profiles__wrapper {
	height: 100rem;
	margin-top: 10rem;
	overflow-y: scroll;
}

.p-sub-profiles__items {
	display: flex;
	flex-wrap: wrap;
	gap: 2.5rem;
}

.p-sub-profiles__item {
	background-color: #494949;
	border: 1px solid #FFFFFF;
	border-radius: 20px;
	color: #FFFFFF;
	cursor: pointer;
	font-family: "ff5", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	padding: 5rem;
	position: relative;
	text-align: center;
}

.p-sub-profiles__tag {
	border-radius: 20px 0 20px 0;
	font-weight: 700;
	height: 3.7rem;
	left: 0;
	letter-spacing: 0.1em;
	padding-top: 1rem;
	position: absolute;
	text-transform: uppercase;
	top: 0;
	width: 15rem;
}

.p-sub-profiles__item > .genre-creator {
	background-color: #F462D4;
}

.p-sub-profiles__item > .genre-liver {
	background-color: #23BEFB;
}

.p-sub-profiles__item > .genre-producer {
	background-color: #37E09C;
}

.p-sub-profiles__image img {
	-o-object-fit: cover;
	border-radius: 50vh;
	height: 26rem;
	object-fit: cover;
	width: 26rem;
}

.p-sub-profiles__sns {
	justify-content: center;
}

.p-sub-profiles__sns-item {
	margin-top: 3.3rem;
}

.p-sub-profiles__sns-item a {
	background-color: #FFFFFF;
	border-radius: 50vh;
	padding: 1.7rem 1.3rem 0.7rem;
}

.p-sub-profiles__sns-item a img {
	height: 2.4rem;
	width: 2.4rem;
}

/*================================================================
p-company
================================================================*/

.p-company {
	background: transparent url(../images/profiles/jpg/company-bg.jpg) no-repeat center center/cover;
	height: 100%;
	padding: 10rem 0;
	position: relative;
}

.p-company__info {
	display: flex;
	flex-wrap: wrap;
	margin: 10rem auto 0;
}

.p-company__info dt,
.p-company__info dd {
	border-bottom: 1px solid #1B1B1B;
	display: flex;
	margin-bottom: 5rem;
	padding: 0 0 5rem;
}

.p-company__info dt {
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.7em;
}

.p-company__info dd {
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	line-height: 1.5;
}

/*================================================================
policy
================================================================*/

/*================================================================
p-policy
================================================================*/

.p-policy {
	padding: 0 0 10rem;
}

.p-policy__wrapper {
	margin: 6rem auto 0;
	max-width: 80rem;
}

.p-policy__wrapper em {
	display: block;
	font-size: 2rem;
	font-weight: 500;
	margin: 3rem 0;
}

.p-policy__wrapper p {
	line-height: 1.7;
}

.p-policy__wrapper p span {
	color: #5E5E5E;
	display: block;
	margin-top: 0;
}

.p-policy__wrapper p span a {
	display: inline-block;
	margin-top: 0;
}

.p-policy__wrapper ul {
	margin-top: 3rem;
}

.p-policy__wrapper ul li {
	line-height: 1.7;
	list-style: disc;
	margin-left: 2rem;
}

.p-policy__wrapper a {
	color: #23BEFB;
	display: block;
	font-weight: 500;
	margin-top: 3rem;
	overflow-wrap: anywhere;
}

.p-policy__wrapper span {
	color: #5E5E5E;
	display: flex;
	justify-content: flex-end;
	margin-top: 3rem;
}

/*================================================================
404
================================================================*/

/*================================================================
p-policy
================================================================*/

.p-404 {
	padding: 0 0 10rem;
}

.p-404__wrapper {
	margin: 6rem auto 0;
	max-width: 80rem;
}

.p-404__wrapper p {
	line-height: 2;
}

/*================================================================
utility
================================================================*/

/*================================================================
u-font
================================================================*/

.u-fw700 {
	font-weight: 700;
}

.u-fw500 {
	font-weight: 500;
}

.u-fs18 {
	font-size: 1.8rem;
}

.u-fs15 {
	font-size: 1.5rem;
}

.u-fs12 {
	font-size: 1.2rem;
}

/*================================================================
u-hidden
================================================================*/

/*================================================================
u-lh
================================================================*/

.u-lh20 {
	line-height: 2;
}

/*================================================================
u-ls
================================================================*/

.u-ls20 {
	letter-spacing: 0.2em;
}

/*================================================================
u-margin
================================================================*/

/*================================================================
u-ta
================================================================*/

.u-tac {
	text-align: center;
}

.u-taj {
	text-align: justify;
	word-break: break-all;
}

@media (min-width: 375px) and (max-width: 743px) {

.l-archive__cat-list li a {
	width: 8.6rem;
}

.l-header__logo-link svg {
	width: 34.3rem;
}

.p-sub-profiles__cat-list li a {
	width: 9.4rem;
}

}

@media (min-width: 375px) and (max-width: 479px) {

.l-inquiry__image06 {
	transform: translateX(16.4rem);
}

}

@media (min-width: 375px) {

.u-hidden-sp2 {
	display: none;
}

}

@media (min-width: 480px) and (max-width: 743px) {

.l-inquiry__images3 {
	left: 0;
}

.l-inquiry__image06 {
	transform: translateX(24.4rem);
}

}

@media (min-width: 744px) {

.l-archive__title {
	text-align: center;
}

.l-footer__nav-list {
	flex-wrap: wrap;
	gap: 5.6rem;
}

.l-header__nav {
	right: -100%;
	top: 0;
	width: 43.0555%;
}

.l-header__nav.panel-active {
	height: 100vh;
	right: 0;
}

.l-inquiry__title {
	position: relative;
	text-align: center;
	z-index: 10;
}

.l-inquiry__area {
	margin: 5.2rem auto 0;
	max-width: 96rem;
}

.l-inquiry__images {
	left: 3.2rem;
	top: -10.1rem;
}

.l-inquiry__images2 {
	justify-content: center;
}

.l-inquiry__images3 {
	right: 1.4rem;
	top: 2.4rem;
}

.l-inquiry__image02 {
	left: -2.1rem;
	position: relative;
	top: -6.5rem;
}

.l-inquiry__image04 {
	margin-left: 2.4rem;
}

.l-inquiry__image05 {
	left: 9.6rem;
	position: relative;
	top: -8.6rem;
}

.l-inquiry__attention {
	text-align: right;
}

.c-btn__link {
	height: 6.5rem;
	width: 38.1rem;
}

.c-modal__contents {
	margin-left: 5rem;
}

.p-news__post {
	width: calc((100% - 6rem) / 3);
}

.p-profiles__title {
	text-align: center;
}

.p-about__inner {
	justify-content: space-between;
}

.p-about__contents {
	box-sizing: content-box;
	max-width: 56.1rem;
	padding-left: 8.3333%;
}

.p-about__images-wrapper {
	flex: 0 1 47.1527%;
}

.p-profiles__title {
	text-align: center;
}

.p-sub-profiles__sns-item + .p-sub-profiles__sns-item {
	margin-left: 2rem;
}

.p-company__title {
	text-align: center;
}

.p-company__info dt {
	width: 23.6rem;
}

.p-company__info dd {
	width: calc(100% - 23.6rem);
}

}

@media (min-width: 744px) and (max-width: 991px) {

.l-archive__cat-list li a {
	font-size: 2rem;
	letter-spacing: 0.1em;
	width: 16.9rem;
}

.l-header__logo-link svg {
	width: 58.4rem;
}

.p-news__post-contents {
	padding: 1.2rem 1.2rem 1.6rem 1.2rem;
}

.p-news__post-category {
	margin-left: 0.2rem;
	padding: 0.3rem 0.8rem;
}

.p-news__post-body:after {
	display: none;
}

}

@media (min-width: 744px) and (max-width: 1279px) {

.l-header__nav-contents {
	align-items: flex-start;
	flex-direction: column;
}

.l-header__policy {
	margin-top: 4rem;
}

.l-inquiry__form-area .wpcf7-form p:nth-child(3):after {
	left: 4.8rem;
}

.l-inquiry__form-area .wpcf7-form p:nth-child(4):after {
	left: 11.2rem;
}

.c-modal__area {
	padding: 10rem 3rem 5rem;
}

.c-modal__wrapper img {
	height: 20rem;
	width: 20rem;
}

.p-sub-profiles__cat-list li a {
	width: 18rem;
}

.p-sub-profiles__item {
	padding: 5rem 1.6rem;
	width: calc(50% - 1.8rem);
}

.u-hidden-tab {
	display: none;
}

}

@media (min-width: 992px) and (max-width: 1279px) {

.l-header__logo-link svg {
	width: 75rem;
}

}

@media (min-width: 1280px) {

a:hover {
	opacity: 0.7;
}

.page-numbers {
	transition: color 0.3s;
}

.page-numbers:hover {
	border-bottom: 3px solid #23BEFB;
	color: #23BEFB;
	opacity: 1;
}

.l-footer__nav-link {
	display: inline-block;
	position: relative;
}

.l-footer__nav-link:after {
	background-color: #7AF2FF;
	bottom: -8px;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform 0.3s;
	width: 100%;
}

.l-footer__nav-link:hover {
	opacity: 1;
}

.l-footer__nav-link:hover:after {
	transform: scale(1, 1);
}

.l-header__nav-link {
	display: inline-block;
	position: relative;
}

.l-header__nav-link:after {
	background-color: #7AF2FF;
	bottom: -8px;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform 0.3s;
	width: 100%;
}

.l-header__nav-link:hover {
	opacity: 1;
}

.l-header__nav-link:hover:after {
	transform: scale(1, 1);
}

.l-header__nav-contents {
	justify-content: space-between;
}

.l-header__policy {
	margin-right: 10rem;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-radio .wpcf7-list-item.first {
	margin-left: 0;
}

.l-inquiry__form-area .wpcf7-form p label span[data-name=your-radio] {
	margin-left: 8rem;
}

.l-inquiry__form-area .wpcf7-form p label span[data-name=your-name] {
	margin-left: 14.4rem;
}

.l-inquiry__form-area .wpcf7-form p label span[data-name=your-email] {
	margin-left: 8rem;
}

.l-inquiry__form-area .wpcf7-form p label span[data-name=your-message] {
	margin-left: 6.4rem;
}

.l-inquiry__form-area .wpcf7-form .wpcf7-submit:hover {
	background-color: #23BEFB;
}

.l-single__category a {
	transition: background-color 0.3s;
}

.l-single__category a:hover {
	background-color: #23BEFB;
	color: #FFFFFF;
	opacity: 1;
}

.l-single__navigation-previous,
.l-single__navigation-next {
	transition: color 0.3s;
}

.l-single__navigation-previous:hover,
.l-single__navigation-next:hover {
	color: #23BEFB;
	opacity: 1;
}

.c-btn__link {
	position: relative;
}

.c-btn__link:before {
	background: #7AF2FF;
	border-radius: 40px;
	content: "";
	inset: 0;
	opacity: 0;
	position: absolute;
	transition: opacity 0.3s ease-out;
	z-index: 1;
}

.c-btn__link:hover {
	opacity: 1;
}

.c-btn__link:hover:before {
	opacity: 1;
}

.c-btn__link span {
	position: relative;
	z-index: 5;
}

.c-toTop:hover {
	bottom: 17.1rem;
}

.c-toTop a:hover {
	opacity: 1;
}

.c-modal__overlay {
	cursor: pointer;
}

.c-modal__close {
	cursor: pointer;
}

.p-news__post a:hover {
	opacity: 1;
}

.p-news__post a:hover .p-news__image img {
	scale: 1.05;
}

.p-news__post a:hover .p-news__post-body:after {
	right: 0;
}

.p-news__post a:hover .p-news__post-body {
	color: #23BEFB;
}

.p-sub-profiles__item:hover .p-sub-profiles__image img {
	scale: 1.07;
}

.p-sub-profiles__image img {
	transition: scale 0.3s;
}

.u-hidden-pc {
	display: none;
}

}

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

.p-sub-profiles__cat-list li a {
	width: 32rem;
}

}

@media (max-width: 1279px) {

.l-inquiry__form-area .wpcf7-form p {
	margin-top: 2.8rem;
	padding-bottom: 2.8rem;
}

.l-inquiry__form-area .wpcf7-form p:after {
	left: 9.8rem;
}

.l-inquiry__form-area .wpcf7-form p label {
	flex-direction: column;
}

.l-inquiry__form-area .wpcf7-form p label span input[type=text],
.l-inquiry__form-area .wpcf7-form p label span input[type=email],
.l-inquiry__form-area .wpcf7-form p label span textarea {
	margin-top: 1.6rem;
	width: 100%;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-radio {
	flex-direction: column;
	margin-left: -1.2rem;
}

.l-inquiry__form-area .wpcf7-form p label span textarea {
	height: 18.2rem;
}

.l-inquiry__form-area .wpcf7-form p label span .wpcf7-not-valid-tip {
	margin-top: 1.4rem;
}

.l-inquiry__form-area .wpcf7-form .wpcf7-submit {
	font-size: 1.6rem;
	padding: 1.8rem 4.2rem 1.7rem 4.2rem;
}

.p-about__image img {
	width: 22.1rem;
}

.p-about__image2 {
	margin: 3.1rem 0 0 2.5rem;
}

.p-about__image2 img {
	width: 9.7rem;
}

.p-about__image3 {
	margin: -1.5rem -7.5rem 0 0;
}

.p-about__image3 img {
	width: 12.3rem;
}

.p-about__image4 img {
	width: 31.2rem;
}

}

@media (max-width: 991px) {

.l-header__logo {
	padding: 6.4rem 1.6rem 0;
}

}

@media (max-width: 743px) {

body {
	font-size: 1.4rem;
}

.l-archive {
	background: transparent url(../images/general/jpg/sp/archive-bg.jpg) no-repeat center center/cover;
	padding: 8rem 0;
}

.l-archive__title {
	padding: 0 1.6rem;
}

.l-archive__cat-list {
	margin-top: 8rem;
}

.l-archive__cat-list li a {
	font-size: 1.4rem;
	letter-spacing: 0;
}

.l-archive__cat-list li a.active {
	border-bottom: 4px solid;
}

.l-archive__posts {
	gap: 3.2rem;
	margin: 5rem auto 0;
	padding: 0 1.6rem;
}

.pagination {
	margin-top: 5rem;
}

.page-numbers {
	font-size: 2rem;
	margin-right: 3.7rem;
}

.current {
	padding: 0.2rem 1.1rem;
}

.l-footer {
	padding-top: 5.2rem;
}

.l-footer__inner {
	padding: 0 8.3333% 0 1.6rem;
}

.l-footer__logo {
	margin-bottom: 4rem;
}

.l-footer__logo-link svg {
	height: 3rem;
	width: 27rem;
}

.l-footer__nav {
	margin-bottom: 14.1rem;
}

.l-footer__nav-list {
	flex-direction: column;
}

.l-footer__nav-item + .l-footer__nav-item {
	margin-top: 2.4rem;
}

.l-footer__nav-link {
	font-size: 1.5rem;
}

.l-header {
	height: 11.6rem;
}

.l-header__nav {
	height: 69.6798%;
	left: 0;
	top: -100%;
}

.l-header__nav.panel-active {
	top: 0;
}

.l-header__nav-wrapper {
	padding: 7.2rem 1.6rem 3.6rem 3.2rem;
}

.l-header__nav-item + .l-header__nav-item {
	margin-top: 2.4rem;
}

.l-header__nav-link {
	font-size: 1.5rem;
}

.l-header__nav-contents {
	justify-content: space-between;
	margin-top: 7.2rem;
}

.l-header__sns-item + .l-header__sns-item {
	margin-left: 1.2rem;
}

.l-header__sns-item a {
	padding: 0.8rem 0.8rem 0.3rem;
}

.l-header__sns-item a img {
	height: 1.5rem;
	width: 1.5rem;
}

.l-header__policy {
	margin-right: 9rem;
}

.l-header__burger {
	height: 4.8rem;
	right: 1.6rem;
	top: 1.6rem;
	width: 4.8rem;
}

.l-header__burger-wrapper {
	left: 1.1rem;
	top: 1.1rem;
}

.l-header__burger-inline,
.l-header__burger-inline2,
.l-header__burger-inline3 {
	height: 0.2rem;
	margin: 0.5rem;
}

.l-header__burger-inline {
	width: 1.5rem;
}

.l-header__burger-inline2 {
	width: 2rem;
}

.l-header__burger-inline3 {
	width: 1rem;
}

.l-header__burger.active .l-header__burger-wrapper {
	top: 3.1rem;
}

.l-header__burger.active .l-header__burger-inline,
.l-header__burger.active .l-header__burger-inline3 {
	margin: -0.7rem auto;
}

.l-header__burger.active .l-header__burger-inline {
	width: 2rem;
}

.l-header__burger.active .l-header__burger-inline3 {
	width: 2rem;
}

.l-inner {
	padding: 0 1.6rem;
}

.l-inquiry {
	padding: 3.9rem 0 12rem;
}

.l-inquiry__area {
	margin-top: 4.2rem;
}

.l-inquiry__contents {
	margin-bottom: 2.4rem;
	padding: 5.6rem 3.5rem 4.8rem;
	position: relative;
	z-index: 5;
}

.l-inquiry__lead {
	letter-spacing: 0.6em;
}

.l-inquiry__images {
	right: 2.3rem;
	top: -10.8rem;
}

.l-inquiry__images2 {
	flex-direction: column;
}

.l-inquiry__images3 {
	top: 9.9rem;
	z-index: 10;
}

.l-inquiry__image01 {
	left: -0.1rem;
	position: relative;
	top: 6.5rem;
}

.l-inquiry__image01 img {
	width: 5.8rem;
}

.l-inquiry__image02 img {
	width: 11.3rem;
}

.l-inquiry__image03 img {
	width: 16rem;
}

.l-inquiry__image04 {
	margin-top: 2.8em;
}

.l-inquiry__image04 img {
	width: 26.5rem;
}

.l-inquiry__image06 {
	position: relative;
	top: -0.2rem;
}

.l-inquiry__form {
	padding: 4.8rem 5.3333% 2.3rem;
}

.l-inquiry__attention {
	font-style: 1rem;
	margin: 2.5rem 0 2.5rem;
}

.l-inquiry__form-area .wpcf7-form p:nth-child(3):after {
	left: 4.2rem;
}

.l-single {
	padding: 4rem 0 8rem;
}

.l-single__inner {
	padding: 0 1.6rem;
}

.l-single__post {
	padding: 2.8rem 1.6rem 6rem;
}

.c-btn__link {
	height: 5.8rem;
	width: 100%;
}

.c-btn__link span {
	font-size: 1.6rem;
}

.c-btn__link span:after {
	right: -8.5rem;
	top: 0.3rem;
}

.c-toTop {
	right: 1.6rem;
}

.c-toTop a img {
	height: 4.8rem;
	width: 4.8rem;
}

.c-primary__title-lead {
	font-size: 4rem;
}

.c-primary__title-description {
	font-size: 1.5;
	margin-top: 1.2rem;
}

.loader__contents svg {
	width: 34.3rem;
}

.c-modal__close {
	right: 0;
}

.c-modal__area {
	max-width: 30rem;
	padding: 6.4rem 1.6rem 4rem;
	width: 100%;
}

.c-modal__genre {
	font-size: 2rem;
	height: 4rem;
	padding-top: 1rem;
	width: 17rem;
}

.c-modal__wrapper {
	flex-direction: column;
}

.c-modal__wrapper img {
	height: 100%;
	width: 100%;
}

.c-modal__contents {
	margin-top: 3rem;
}

.c-modal__text {
	font-size: 1.6rem;
}

.c-modal__name {
	font-size: 2rem;
}

.c-modal__profile-lead-text {
	font-size: 1.6rem;
}

.c-modal__profile-text {
	font-size: 1.6rem;
}

.c-modal__sns-item a {
	padding: 1.7rem 1rem 0.7rem;
}

.p-fv__icon a img {
	bottom: 3rem;
	height: 13.9rem;
	left: 1.6rem;
	width: 14.3rem;
}

.p-news {
	background: transparent url(../images/top/jpg/sp/news-bg.jpg) no-repeat center center/cover;
	padding: 10rem 0;
}

.p-news__posts {
	gap: 3.2rem;
	margin-top: 5.6rem;
}

.p-news__post-contents {
	padding: 1.6rem 1.6rem 1.8rem;
}

.p-news__post-category {
	font-size: 1rem;
	padding: 0.2rem 1.2rem;
}

.p-news__post-body {
	margin-top: 1rem;
}

.p-news__btn {
	margin-top: 4.1rem;
}

.p-profiles {
	background: transparent url(../images/top/jpg/sp/profiles-bg.jpg) no-repeat center center/cover;
}

.p-profiles__items {
	gap: 0.7rem;
}

.p-profiles__item {
	border-radius: 10px;
	padding: 3.2rem 3.3rem 2.4rem;
}

.p-profiles__tag {
	border-radius: 10px 0 10px 0;
	font-size: 1rem;
	height: 2rem;
	padding-top: 0.5rem;
	width: 8.5rem;
}

.p-profiles__image img {
	height: 10rem;
	width: 10rem;
}

.p-profiles__text {
	font-size: 1rem;
	margin: 1.2rem 0 0.8rem;
}

.p-profiles__name {
	font-size: 1.4rem;
}

.p-profiles__btn {
	margin-top: 5.7rem;
}

.p-about {
	background: transparent url(../images/top/jpg/sp/about-bg.jpg) no-repeat center center/cover;
	padding: 10rem 0;
}

.p-about__inner {
	flex-direction: column;
}

.p-about__contents {
	box-sizing: content-box;
	padding: 0 1.6rem;
}

.p-about__images-wrapper {
	margin-top: 4.6rem;
}

.p-about__images,
.p-about__images2 {
	box-sizing: content-box;
	padding-left: 1.6rem;
}

.p-about__images2 {
	margin-top: 3.9rem;
}

.p-sub-profiles {
	background: transparent url(../images/profiles/jpg/sp/profiles-bg.jpg) no-repeat center center/cover;
	padding: 8rem 0 5rem;
}

.p-profiles__title {
	padding: 0 1.6rem;
}

.p-sub-profiles__cat-list {
	margin-top: 8rem;
}

.p-sub-profiles__cat-list li a {
	font-size: 1rem;
	height: 2rem;
	letter-spacing: 0;
	padding-top: 0.4rem;
}

.p-sub-profiles__cat-list li.active a {
	font-size: 1rem;
	height: 2.5rem;
	padding-top: 0.5rem;
}

.p-sub-profiles__inner {
	padding: 0 1.6rem;
}

.p-sub-profiles__wrapper {
	margin-top: 5rem;
}

.p-sub-profiles__items {
	gap: 0.5rem;
}

.p-sub-profiles__item {
	border-radius: 10px;
	padding: 3.2rem 1.6rem 2.4rem;
	width: calc(50% - 0.3rem);
}

.p-sub-profiles__tag {
	border-radius: 10px 0 10px 0;
	font-size: 1rem;
	height: 2rem;
	padding-top: 0.5rem;
	width: 8.5rem;
}

.p-sub-profiles__image img {
	height: 10rem;
	width: 10rem;
}

.p-sub-profiles__sns {
	flex-wrap: wrap;
	gap: 1rem;
}

.p-sub-profiles__sns-item a {
	padding: 1.7rem 1rem 0.7rem;
}

.p-company {
	background: transparent url(../images/profiles/jpg/sp/company-bg.jpg) no-repeat center center/cover;
	padding: 8rem 0 3rem;
}

.p-company__info {
	flex-direction: column;
	margin: 8rem auto 0;
}

.p-company__info dt,
.p-company__info dd {
	border-bottom: none;
	margin-bottom: 2rem;
	padding: 0 0 1rem;
}

.p-company__info dt:nth-child(2n),
.p-company__info dd:nth-child(2n) {
	border-bottom: 1px solid #1B1B1B;
}

.p-company__info dt {
	font-size: 1.4rem;
	letter-spacing: 0.5em;
}

.p-company__info dd {
	font-size: 1.2rem;
}

.p-policy {
	padding: 2rem 0 10rem;
}

.p-404 {
	padding: 2rem 0 10rem;
}

.u-fs15 {
	font-size: 1.2rem;
}

.u-hidden-sp {
	display: none;
}

}

@media (max-width: 479px) {

.l-inquiry__images3 {
	left: -6.3rem;
}

}

@media (max-width: 374px) {

.l-archive__cat-list li a {
	width: 8rem;
}

.l-header__logo-link svg {
	width: 100%;
}

.l-inquiry__image06 {
	transform: translateX(12.4rem);
}

.p-sub-profiles__cat-list li a {
	width: 8rem;
}

}

@-webkit-keyframes pulse {

from {
	opacity: 1;
	transform: scale(1);
}

to {
	opacity: 0.25;
	transform: scale(0.75);
}

}

@keyframes pulse {

from {
	opacity: 1;
	transform: scale(1);
}

to {
	opacity: 0.25;
	transform: scale(0.75);
}

}

@-webkit-keyframes loopText {

0% {
	transform: translateX(0);
}

100% {
	transform: translateX(-50%);
}

}

@keyframes loopText {

0% {
	transform: translateX(0);
}

100% {
	transform: translateX(-50%);
}

}

