@charset "utf-8";
.crew_section1 {
		width: 300vh;
		min-width: 300vh;
}
@media(max-height: 900px) and (min-width: 1195px) {
		.crew_section1 {
				min-width: 2500px;
		}
}
.crew_section1::before, .crew_section1::after {
		content: '';
		display: block;
		position: absolute;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 100%;
}
.crew_section1::before {
		top: 0;
		left: 55vh;
		width: 80vh;
		height: 80vh;
		background-image: url("../images/crew1_bg_pc.png");
}
.crew_section1::after {
		bottom: 0;
		right: 0;
		width: 83.9vh;
		height: 44.4vh;
		background-position: 0 bottom;
		background-image: url("../images/crew2_bg_pc.png");
}
.crew_section1_inner {
		padding-top: 13.3vh;
		position: relative;
		z-index: 5;
		display: flex;
		padding-left: 5vw;
}
.crew_section_left {
		margin-right: 4.6vh;
}
.crew_section_right {
		flex: 1;
		position: relative;
		z-index: 10;
}
.crew_hd {
		width: 41.4vh;
		margin-bottom: 15px;
}
.crew_hd.extra {
		width: 92vh;
}
.crew_lead p {
		font-size: 20px;
		line-height: 2.0;
		letter-spacing: 0.03em;
}
@media(max-height: 900px) and (min-width: 1195px) {
		.crew_hd {
				width: 340px;
		}
		.crew_hd.extra {
				width: 755px;
		}
		.crew_section_left {
				margin-right: 40px;
		}
		.crew_lead p {
				font-size: 16px;
		}
		.crew_section1::after {
				right: -120px;
		}
}
.crew_section_right .crew_list {
		height: 500px;
}
.pertner_section {
		width: 92vh;
		min-width: 740px;
}
@media(max-height: 900px) and (min-width: 1195px) {
		.crew_lead p {
				font-size: 15px;
		}
}
.pertner_section_inner {
		padding-top: 13.3vh;
		position: relative;
		z-index: 5;
}
.pertner_hd {
		width: 30.8vh;
		margin-bottom: 15px;
}
.crew_upper_flex {
		display: flex;
		flex-wrap: wrap;
		width: 230vh;
		margin-bottom: 2.4vh;
		position: relative;
}
.crew_bottom_flex {
		display: flex;
		flex-wrap: wrap;
}
.crew_item, .interview_item {
		width: 24.6vh;
		aspect-ratio: 10 / 12.4;
		background: url("../images/crew_item_bg.png") 0 0 no-repeat;
		background-size: 100%;
		margin-right: 2.4vh;
		box-sizing: border-box;
		padding: 1.8vh;
		position: relative;
		margin-bottom: 2vh;
		cursor: pointer;
		min-width: 200px;
}
.crew_upper_flex .crew_and_more {
		position: absolute;
		right: 0;
		bottom: 2vh;
		font-family: 'Rajdhani', sans-serif;
		font-weight: 400;
		color: #d000df;
		font-size: 2.2vh;
}
@media (hover: hover) {
		.crew_item:hover, .interview_item:hover, .interview_alien:hover {
				transform: scale(0.95);
				transition: transform 0.25s cubic-bezier(0.25, 1, 0.5, 1);
		}
}
.crew_item.extra {
		margin-left: 16vh;
}
.crew_item_figure {
		aspect-ratio: 10 / 7.29;
		position: relative;
		margin-bottom: 1.6vh;
		background: url("../images/crew_item_figure_bg.png") no-repeat 0 0;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 100%;
		z-index: 0;
}
@media(max-height: 900px) and (min-width: 1195px) {
		.crew_lead p {
				font-size: 15px;
		}
		.crew_upper_flex {
				width: 1800px;
		}
		.crew_item {
				aspect-ratio: 10 / 12.4;
				margin-right: 14px;
				padding: 1.8vh;
				margin-bottom: 14px;
				min-width: 200px;
		}
}
.crew_item_figure.yamashita::before {
		background-image: url("../images/crew_item_yamashita_on.webp");
}
.crew_item_figure.numasawa::before {
		background-image: url("../images/crew_item_numasawa_on.webp");
}
.crew_item_figure.emiko::before {
		background-image: url("../images/crew_item_emiko_on.webp");
}
.crew_item_figure.sano::before {
		background-image: url("../images/crew_item_sano_on.webp");
}
.crew_item_figure.kato::before {
		background-image: url("../images/crew_item_kato_on.webp");
}
.crew_item_figure.onozawa::before {
		background-image: url("../images/crew_item_onozawa_on.webp");
}
.crew_item_figure.ishii::before {
		background-image: url("../images/crew_item_ishii_on.webp");
}
.crew_item_figure.ito::before {
		background-image: url("../images/crew_item_ito_on.webp");
}
.crew_item_figure.komori::before {
		background-image: url("../images/crew_item_komori_on.webp");
}
.crew_item_figure.kagita::before {
		background-image: url("../images/crew_item_kagita_on.webp");
}
.crew_item_figure.shimizu::before {
		background-image: url("../images/crew_item_shimizu_on.webp");
}
.crew_item_figure.teflon::before {
		background-image: url("../images/crew_item_teflon_on.webp");
}
.crew_item_figure.fusazaki::before {
		background-image: url("../images/crew_item_fusazaki_on.webp");
}
.crew_item_figure.shinooka::before {
		background-image: url("../images/crew_item_shinooka_on.webp");
}
.crew_item_figure.ito2::before {
		background-image: url("https://ochori-studio.jp/wp/wp-content/uploads/2025/01/crew_item_ito2_on.png");
}
.crew_item_figure::before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		pointer-events: none;
		background-size: 100%;
		transition: opacity 0.3s;
		opacity: 0;
}
@media (hover: hover) {
		.crew_item:not(.noHover):hover img, .interview_item:not(.noHover):hover img {
				opacity: 0;
		}
		.crew_item:not(.noHover):hover .crew_item_figure::before, .interview_item:not(.noHover):hover .crew_item_figure::before {
				opacity: 1;
		}
}
.mobileDevice .animeStart .crew_item .crew_item_figure img {
		animation: itemHover 6s linear infinite;
}
.mobileDevice .animeStart .crew_item .crew_item_figure::before {
		animation: figureHover 6s linear infinite;
}
@keyframes itemHover {
		0% {
				opacity: 1;
		}
		6% {
				opacity: 0;
		}
		50% {
				opacity: 0;
		}
		56% {
				opacity: 1;
		}
		100% {
				opacity: 1;
		}
}
@keyframes figureHover {
		0% {
				opacity: 0;
		}
		6% {
				opacity: 1;
		}
		50% {
				opacity: 1;
		}
		56% {
				opacity: 0;
		}
		100% {
				opacity: 0;
		}
}
.crew_item_figure::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url("../images/crew_item_frame.png") no-repeat 0 0;
		background-size: 100%;
		pointer-events: none;
		z-index: 2;
}
.crew_item_figure img {
		width: 100%;
		height: auto;
		transition: opacity 0.3s;
		position: relative;
		z-index: 1;
}
.crew_item_caption {
		font-family: 'Rajdhani', sans-serif;
		font-weight: 400;
		line-height: 1;
		color: #fff;
}
.crew_item_caption h5 {
		font-size: 2.2vh;
		font-weight: 400;
		letter-spacing: 0.03em;
		padding-bottom: 1vh;
		margin-bottom: 1vh;
		border-bottom: 1px solid #D000DF;
}
.crew_item_caption ul {
		list-style: none;
		font-size: 1.6vh;
}
@media(max-height: 900px) and (min-width: 1195px) {
		.crew_item_caption h5 {
				font-size: 18px;
		}
		.crew_item_caption ul {
				font-size: 12px;
		}
		.crew_item_caption li {
				margin-bottom: 3px;
		}
		.crew_upper_flex .crew_and_more {
				font-size: 18px;
				bottom: 2vh;
				right: 20px;
		}
}
.crew_item_caption ul.extra {
		display: flex;
		flex-wrap: wrap;
}
.crew_item_caption li {
		margin-left: 1em;
		position: relative;
		margin-bottom: 6px;
}
.crew_item_caption ul.extra li {
		margin-right: 10px;
}
.crew_item_caption ul.extra li:last-child {
		margin-right: 0;
}
.crew_item_caption li::after {
		content: '・';
		display: block;
		position: absolute;
		top: 0;
		left: -1em;
		color: #FFDE00;
}
.partner_figure_flex {
		width: 66.6vh;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 4.4vh;
}
.partner_figure_item {
		box-sizing: border-box;
		width: calc(50% - 10px);
		padding: 10px;
		border: 1px solid #D000DF;
		position: relative;
}
.partner_figure_item .frame_up {
		position: absolute;
		top: -1px;
		left: 0;
}
.partner_figure_item .frame_bottom {
		position: absolute;
		bottom: 0;
		left: 0;
}
.partner_figure_item_inner {
		position: relative;
}
@media(max-width: 1194px) {
		.crew_section1 {
				width: auto !important;
				height: auto !important;
				min-width: inherit !important;
				padding-top: 23vw;
				padding-bottom: 25vw;
		}
		.crew_section1::before {
				top: 65vw;
				left: 0;
				width: 100%;
				height: 75vw;
				background: url("../images/crew1_bg_sp.png") no-repeat 0 0;
				background-size: 100%;
		}
		.crew_section1_inner {
				padding-left: 20px;
				padding-right: 20px;
		}
		.crew_section_left {
				margin: 0;
		}
		.crew_hd {
				width: 40%;
				margin-bottom: 15px;
		}
		.crew_hd.extra {
				width: 90%;
				margin-bottom: 15px;
		}
		.crew_section1_inner {
				padding-top: 0;
				display: block;
				max-width: 680px;
				margin: 0 auto;
		}
		.crew_lead {
				margin-bottom: 50px;
		}
		.crew_lead p {
				font-size: 16px;
				line-height: 2.0;
				letter-spacing: 0.03em;
		}
		.crew_upper_flex, .crew_bottom_flex {
				display: flex;
				flex-wrap: wrap;
				justify-content: space-between;
				margin-bottom: 0;
				position: relative;
				left: 0;
				width: auto;
		}
		.crew_upper_flex {
				width: 100%;
		}
		.crew_item, .interview_item {
				width: calc(50% - 10px);
				height: auto;
				aspect-ratio: 10 / 12;
				background: url("../images/crew_item_bg_mid.png") 0 0 no-repeat;
				background-size: 100%;
				margin: 0 0 20px !important;
				box-sizing: border-box;
				padding: 13px;
				position: relative;
				min-width: inherit;
		}
		.interview_item {
				aspect-ratio: 10 / 14;
		}
		.crew_item_figure {
				margin-bottom: 10px;
		}
		.crew_item_caption h5 {
				font-size: 24px;
				padding-bottom: 10px;
				margin-bottom: 20px;
				border-bottom: 1px solid #D000DF;
		}
		.verLandscape.crew_item_caption h5 {
				font-size: 26px;
				padding-top: 8px;
				padding-bottom: 10px;
				margin-bottom: 15px;
		}
		.crew_item_caption ul {
				list-style: none;
				font-size: 16px;
		}
		.crew_item_caption ul.extra {
				display: block;
		}
		.crew_item_caption li {
				margin-bottom: 10px;
		}
		.verLandscape .crew_item_caption ul {
				font-size: 17px;
				margin-bottom: 8px;
		}
		.crew_item_caption ul li:last-child {
				margin-bottom: 0;
		}
		.crew_section1::after {
				bottom: -10vw;
				left: inherit;
				width: 100%;
				height: 92vw;
				background-position: 0 bottom;
				background-image: url("../images/crew2_bg_sp.png");
				background-size: 100%;
		}
		.crew_upper_flex .crew_and_more {
				position: static;
				bottom: inherit;
				right: inherit;
				padding: 20px 0 0;
				text-align: right;
				font-size: 20px;
				width: 100%;
		}
}
@media(max-width: 1194px) {
		.pertner_hd {
				width: 42.6vw;
				width: 42%;
		}
		.pertner_section {
				width: 100%;
				min-width: 100%;
				box-sizing: border-box;
				padding: 0 20px 80px;
		}
		.pertner_section_inner {
				padding: 0;
				max-width: 680px;
				margin: 0 auto;
		}
		.partner_figure_flex {
				width: 100%;
				margin-top: 30px;
		}
		.partner_figure_item {
				padding: 6px;
				min-width: inherit;
		}
		.pertner_section .title_hd_lead br {
				display: none;
		}
}
@media(max-width: 840px) {
		.crew_lead p {
				font-size: 15px;
				line-height: 1.8;
		}
}
@media(max-width: 767px) {
		.partner_figure_flex {
				display: block;
		}
		.partner_figure_item {
				width: 100%;
				margin: 0 0 20px;
		}
}
/* ================ */
.crew_ship {
		width: 12vh;
}
.crew_section_left {
		position: relative;
}
.crew_section_left .crew_ship {
		position: absolute;
		right: 60px;
		bottom: 0;
}
@media(max-width: 1194px) {
		.crew_section_left .crew_ship {
				position: static;
				width: 100%;
				display: flex;
				justify-content: flex-end;
				margin: -10vh 0 15px;
				margin: -100px 0 0px;
				box-sizing: border-box;
				padding-right: 10px;
		}
		.crew_ship_in {
				width: 16vw;
				width: 150px;
		}
}
.pertner_section_inner .section_title {
		position: relative;
		margin-bottom: 0;
}
.pertner_section_inner .title_hd_jp {
		margin-bottom: 20px;
}
.pertner_section_inner .section_title .partner_mission {
		width: 13.8vh;
		position: absolute;
		top: 0;
		right: 4vh;
}
@media(max-width: 1194px) {
		.pertner_section_inner .section_title .partner_mission {
				width: 19vw;
				top: -2vw;
				right: 0
		}
}
@media(max-width: 767px) {
		.crew_item, .interview_item {
				width: calc(50% - 5px);
				height: calc(calc(calc(100vw - 40px) * 0.5) * 1.371);
				aspect-ratio: inherit;
				background: url("../images/crew_item_bg_sp.png") 0 0 no-repeat;
				background-size: 100%;
				margin: 0 0 10px !important;
				box-sizing: border-box;
				padding: 13px;
				position: relative;
				min-width: inherit;
		}
		.pertner_section_inner .section_title .partner_mission {
				width: 19vw;
				top: 6vw;
				right: 0
		}
		.crew_section_left .crew_ship {
				margin: -100px 0 20px;
		}
		.crew_item_figure {
				margin-bottom: 10px;
		}
		.crew_item_caption h5 {
				font-size: 22px;
				padding-bottom: 5px;
				margin-bottom: 15px;
		}
		.crew_item_caption ul {
				list-style: none;
				font-size: 15px;
		}
		.crew_item_caption li {
				margin-bottom: 5px;
		}
		.crew_ship_in {
				width: 16vw;
		}
}
@media(max-width: 400px) {
		.crew_section1::before {
				top: 80vw;
		}
		.crew_item_caption h5 {
				font-size: 20px;
				padding-bottom: 5px;
				margin-bottom: 10px;
		}
		.crew_item_caption ul {
				font-size: 14px;
		}
		.crew_item_caption li {
				margin-bottom: 3px;
		}
}
@media(min-width: 1195px) {
		.partner_hr {
				display: none;
		}
}
.partner_hr {
		margin: 30px 0;
		height: 1px;
		background: #d000df;
}
/* ================ */
.partner_en {
		font-size: 32px;
		font-family: 'Rajdhani', sans-serif;
		font-weight: 500;
		margin: 0 0 5px;
}
@media(max-width: 840px) {
		.partner_en {
				font-size: 28px;
		}
}
@media(max-width: 767px) {
		.partner_en {
				font-size: 20px;
		}
}
@media(max-width: 840px) {
		.verLandscape .section_status {
				display: none !important
		}
		.verLandscape .crew_upper_flex, .verLandscape .crew_bottom_flex {
				display: flex;
				flex-wrap: wrap;
				justify-content: flex-start
		}
		.verLandscape .crew_item, .verLandscape .interview_item {
				width: calc(calc(100% - 20px) * 0.33);
				height: calc(calc(calc(100vw - 40px) * 0.33) * 1.371);
				background: url("../images/crew_item_bg_sp.png") 0 0 no-repeat;
				background-size: 100%;
				margin: 0 10px 10px 0 !important;
				padding: 13px;
		}
		.verLandscape .crew_upper_flex .crew_item:nth-child(3n), .verLandscape .crew_bottom_flex .crew_item:nth-child(3n) {
				margin-right: 0 !important;
		}
		.verLandscape .crew_item_caption h5 {
				font-size: 25px;
				padding-bottom: 5px;
				margin-bottom: 15px;
		}
		.verLandscape .crew_item_caption ul {
				font-size: 17px;
		}
}
