@charset "utf-8";
.second_hdr__bg {
		margin-bottom: 0;
}
.about_introduction {
		display: flex;
		justify-content: center;
}
.about_introduction_caption {
		display: flex;
		flex-direction: row-reverse;
		align-items: flex-start;
		margin: 120px 0;
		position: relative;
}
.about_introduction_hd {
		margin-left: 5em;
		width: 220px;
}
.about_introduction_hd img {
		width: 100%;
		height: auto;
		mix-blend-mode: multiply;
}
.about_introduction_caption p {
		font-size: 18px;
		line-height: 3;
		letter-spacing: 0.1em;
		writing-mode: vertical-rl;
		margin-left: 2em;
}
.about_introduction_caption p:last-child {
		margin-left: 0;
}
@media(max-width: 767px) {
		.about_introduction_caption {
				display: block;
				margin: 80px 0 120px;
				padding: 0 22px;
		}
		.about_introduction_hd {
				width: 215px;
				margin: 0 auto 80px;
		}
		.about_introduction_caption p {
				font-size: 14px;
				line-height: 2.4;
				margin: 0 0 2em;
				writing-mode: horizontal-tb;
		}
}
/* ================ */
.about_concept {
		max-width: 1230px;
		margin: 0 auto 260px;
		position: relative;
}
.about_concept_item_gr {
		max-width: 720px;
		aspect-ratio: 10 / 9.4;
		margin: 0 auto;
		position: relative;
}
.about_concept_item_gr .about_concept_item {
		border-radius: 50%;
		width: 416px;
		height: 416px;
		position: absolute;
}
.about_concept_item::before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border-radius: 50%;
		background: rgb(217, 217, 217);
		background: linear-gradient(130deg, rgba(217, 217, 217, 0.5) 0%, rgba(249, 249, 249, 0.5) 100%);
		mix-blend-mode: multiply;
}
.about_concept_item_gr .concept-center::before {
		background: #F5F5F5;
		mix-blend-mode: normal;
}
.about_concept_item_gr .concept-1 {
		top: 0;
		left: calc(50% - 208px);
}
.about_concept_item_gr .concept-2 {
		bottom: 0;
		left: 0;
}
.about_concept_item_gr .concept-3 {
		bottom: 0;
		right: 0;
}
.about_concept_item img {
		width: 100%;
		height: auto;
		border-radius: 50%;
		position: relative;
		z-index: 5;
}
.about_concept_item_gr .concept-center {
		width: 284px;
		height: 284px;
		mix-blend-mode: normal;
		position: relative;
		margin: 0 auto;
		top: 220px;
		left: inherit;
}
.concept-center_logo img {
		width: 100%;
		height: auto;
		border-radius: 50%;
		position: relative;
		z-index: 5;
}
.about_concept .about_caption {
		position: absolute;
}
.about_caption p {
		font-family: YakuHanMP, 'Noto Serif JP', serif;
		line-height: 1.8;
}
.about_caption p.about_caption_en {
		color: #8c8c8c;
		font-size: 14px;
		font-family: minion-pro, serif;
		font-weight: 400;
		font-style: normal;
		margin-bottom: 15px;
		line-height: 1;
}
.about_concept .about_caption-1 {
		width: 300px;
		right: 0;
		top: 16px;
}
.about_concept .about_caption-2 {
		width: 320px;
		left: 0;
		top: 267px;
}
.about_concept .about_caption-3 {
		width: 300px;
		right: 0;
		top: 278px;
}
.about_concept .about_caption_branch {
		position: absolute;
}
.about_caption_branch img {
		width: 100%;
		height: auto;
}
.about_concept .branch-1 {
		left: 708px;
		top: 100px;
		width: 210px;
}
.about_concept .branch-2 {
		left: 330px;
		top: 335px;
		width: 98px;
}
.about_concept .branch-3 {
		left: 820px;
		top: 367px;
		width: 100px;
}
@media(max-width: 1300px) {
		.about_concept {
				max-width: 1230px;
				margin: 0 auto 180px;
		}
		.about_concept_item_gr {
				max-width: inherit;
				width: 44vw;
		}
		.about_concept_item_gr .about_concept_item {
				width: 25.3vw;
				height: 25.3vw;
		}
		.about_concept_item_gr .concept-1 {
				left: 9.3vw;
		}
		.about_concept_item_gr .concept-center {
				width: 17.5vw;
				height: 17.5vw;
				top: 14.6vw;
		}
		.about_caption p {
				font-size: 14px;
		}
		.about_caption p .pcbr {
				display: none !important
		}
		.about_caption p.about_caption_en {
				font-size: 12px;
				margin-bottom: 10px;
		}
		.about_concept .about_caption-1 {
				width: 22vw;
				top: 0vw;
				right: 30px;
		}
		.about_concept .about_caption-2 {
				width: 22vw;
				top: 16vw;
				left: 30px;
		}
		.about_concept .about_caption-3 {
				width: 22vw;
				top: 20.3vw;
				right: 30px;
		}
		.about_concept .branch-1 {
				left: 55vw;
				top: 5.6vw;
				width: 16vw;
		}
		.about_concept .branch-2 {
				left: 25.5vw;
				top: 22.5vw;
				width: 7.5vw;
		}
		.about_concept .branch-3 {
				left: 63vw;
				top: 22.5vw;
				width: 7.6vw;
		}
		.about_concept_item_gr {
				margin-bottom: 75px;
				aspect-ratio: 10 / 9.4;
		}
}
@media(max-width: 1023px) {
		.about_caption p {
				font-size: 13px;
		}
}
@media(min-width: 841px) {
		.about_caption h4 {
				display: none;
		}
}
@media(max-width: 840px) {
		.about_concept {
				max-width: 1230px;
				margin: 0 auto 180px;
		}
		.about_caption_branch {
				display: none;
		}
		.about_concept .about_caption {
				position: static;
				width: 100%;
				box-sizing: border-box;
				padding: 0 30px;
				margin: 0 0 50px;
				opacity: 0;
				transition: opacity 0.5s;
		}
		.about_concept .about_caption.spActive {
				opacity: 1;
		}
		.about_concept .about_caption.about_caption-3 {
				margin-bottom: 0;
		}
		.about_concept_item_gr {
				width: 70vw;
		}
		.about_concept_item_gr .about_concept_item {
				width: 40vw;
				height: 40vw;
		}
		.about_concept_item_gr .concept-1 {
				left: calc(50% - 20vw);
		}
		.about_concept_item_gr .concept-center {
				top: 23vw;
				width: 28vw;
				height: 28vw;
		}
		.about_caption h4 {
				font-size: 24px;
				font-weight: 500;
				margin: 0 0 10px;
		}
		.about_caption p {
				font-size: 16px;
		}
		.about_caption p.about_caption_en {
				font-size: 12px;
				margin-bottom: 20px;
		}
}
@media(max-width: 767px) {
		.about_concept_item_gr {
				width: 90vw;
		}
		.about_concept_item_gr .about_concept_item {
				width: 51.3vw;
				height: 51.3vw;
		}
		.about_concept_item_gr .concept-1 {
				left: calc(50% - 25.65vw);
		}
		.about_concept_item_gr .concept-center {
				top: 27.6vw;
				width: 34.8vw;
				height: 34.8vw;
		}
		.about_concept .about_caption {
				padding-left: 22px;
				padding-right: 22px;
		}
		.about_caption h4 {
				font-size: 22px;
				font-weight: 500;
				margin: 0 0 10px;
		}
		.about_caption p {
				font-size: 16px;
		}
		.about_caption p.about_caption_en {
				font-size: 12px;
				margin-bottom: 20px;
		}
}
@media(max-width: 767px) {
		.about_concept {
				margin-bottom: 150px;
		}
		.about_caption p {
				font-size: 15px;
		}
}
/* =============== */
.kodawari_inner {
		max-width: 1200px;
		margin: 0 auto;
		padding: 0 50px 200px;
		display: flex;
		justify-content: space-between;
}
.kodawari_inner_left {
		width: 250px;
}
.kodawari_inner_left h3 {
		width: 82px;
}
.kodawari_inner_left h3 img {
		width: 100%;
		height: auto;
}
.kodawari_inner_right {
		width: 750px;
}
.kodawari_col {
		display: flex;
		margin: 0 0 55px;
}
.kodawari_inner_right .kodawari_col:last-child {
		margin-bottom: 0;
}
.kodawari_col_hd {
		display: flex;
		justify-content: space-between;
		width: 260px;
		margin-right: 35px;
}
.kodawari_col_hd h4 {
		width: 73px;
}
.kodawari_col_hd h4 img, .kodawari_col_hd_thumb img {
		width: 100%;
		height: auto;
}
.kodawari_col_hd h4 img {
		mask-image: url("../images/about_kodawari_sb_mask_pc.png");
		mask-repeat: no-repeat;
		mask-position: 0 -150px;
		mask-size: 100%;
		-webkit-mask-image: url("../images/about_kodawari_sb_mask_pc.png");
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-position: 0 -150px;
		-webkit-mask-size: 100%;
		transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
		opacity: 0;
}
.isActive .kodawari_col_hd h4 img {
		mask-position: 0 0px;
		-webkit-mask-position: 0 0px;
		opacity: 1;
}
.kodawari_col_hd_thumb {
		width: 150px;
}
.kodawari_col_hd_thumb img {
		mask-image: url("../images/about_kodawari_img_mask.png");
		mask-repeat: no-repeat;
		mask-position: -150px 0;
		mask-size: 100%;
		-webkit-mask-image: url("../images/about_kodawari_img_mask.png");
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-position: -150px 0;
		-webkit-mask-size: 100%;
		transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
		transition-delay: 0.1s;
		opacity: 0;
}
.isActive .kodawari_col_hd_thumb img {
		mask-position: 0 0px;
		-webkit-mask-position: 0 0px;
		opacity: 1;
}
.kodawari_col_caption p {
		opacity: 0;
		transition: opacity 0.8s;
		transition-delay: 0.3s;
}
.isActive .kodawari_col_caption p {
		opacity: 1;
}
.kodawari_col_caption {
		flex: 1;
}
.kodawari_col_caption p {
		font-family: YakuHanMP, 'Noto Serif JP', serif;
		line-height: 2.0;
		transform: translateY(-7px);
}
@media(max-width: 960px) {
		.kodawari_col_caption p {
				font-size: 15px;
		}
		.kodawari_col_caption p br.pcbr {
				display: none;
		}
		.kodawari_col_hd {
				width: 210px;
				margin-right: 25px;
		}
		.kodawari_col_hd h4 {
				width: 58px;
		}
		.kodawari_col_hd_thumb {
				width: 120px;
		}
}
@media(max-width: 840px) {
		.kodawari_inner {
				display: block;
				padding-left: 30px;
				padding-right: 30px;
		}
		.kodawari_inner_left {
				width: 100%;
		}
		.kodawari_inner_right {
				width: auto;
		}
		.kodawari_inner_left h3 {
				margin: 0 auto 70px;
		}
		.kodawari_col_caption p {
				font-size: 16px;
		}
		.kodawari_col_caption p br.pcbr {
				display: block;
		}
}
@media(max-width: 767px) {
		.kodawari_inner {
				padding-left: 22px;
				padding-right: 22px;
				padding-bottom: 150px;
		}
		.kodawari_inner_left h3 {
				width: 100px;
				margin: 0 auto 70px;
		}
		.kodawari_col_caption p {
				font-size: 15px;
		}
		.kodawari_col_caption p br.pcbr {
				display: none;
		}
		.kodawari_col_hd {
				display: block;
				width: 75px;
				margin-right: 20px;
		}
		.kodawari_col_hd h4 {
				width: 100%;
				margin: 0 0 20px;
		}
		.kodawari_col_hd_thumb {
				width: 100%;
		}
}
/* =================== */
.kodawari_figure_wrap {
		max-width: 1200px;
		aspect-ratio: 10 / 6;
		margin: 0 auto 90px;
		position: relative;
		padding: 0 30px;
}
.kodawari_figure_wrap .kodawari_figure_item-1, .kodawari_figure_wrap .kodawari_figure_item-2, .kodawari_figure_wrap .kodawari_figure_item-3 {
		position: relative;
		overflow: hidden;
		opacity: 0;
		transform: scale(1.3);
		transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.6s;
}
.kodawari_figure_wrap .kodawari_figure_item-1 {
		width: 430px;
		aspect-ratio: 10 / 6.2;
}
.kodawari_figure_wrap .kodawari_figure_item-2 {
		position: absolute;
		width: 620px;
		aspect-ratio: 10 / 6.9;
		top: 126px;
		right: 30px;
}
.kodawari_figure_item-3 {
		width: 290px;
		aspect-ratio: 10 / 7.9;
		top: 205px;
		left: 200px;
}
.kodawari_figure_item-1_bg, .kodawari_figure_item-2_bg, .kodawari_figure_item-3_bg {
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 100%;
		position: absolute;
		top: 10px;
		width: 100%;
		height: calc(100% + 200px);
}
.kodawari_figure_wrap .kodawari_figure_item-1.isActive, .kodawari_figure_wrap .kodawari_figure_item-2.isActive, .kodawari_figure_wrap .kodawari_figure_item-3.isActive {
		opacity: 1;
		transform: scale(1);
}
.kodawari_figure_item-1_bg {
		background-image: url("../images/about_kodawari-1.jpg");
}
.kodawari_figure_item-2_bg {
		background-image: url("../images/about_kodawari-2.jpg");
}
.kodawari_figure_item-3_bg {
		background-image: url("../images/about_kodawari-3.jpg");
}
@media(max-width: 1300px) {
		.kodawari_figure_wrap .kodawari_figure_item-1 {
				width: calc(43vw - 60px);
		}
		.kodawari_figure_wrap .kodawari_figure_item-2 {
				width: calc(52vw - 60px);
				top: 10vw;
		}
		.kodawari_figure_item-3 {
				width: calc(24.2vw - 20px);
				top: 17vw;
				left: 20vw;
		}
		.kodawari_figure_item-1_bg, .kodawari_figure_item-2_bg, .kodawari_figure_item-3_bg {
				background-repeat: no-repeat;
				background-position: center top;
				background-size: 100%;
				position: absolute;
				top: 10px;
				width: 100%;
				height: calc(100% + 200px);
		}
}
@media(max-width: 767px) {
		.kodawari_figure_wrap {
				padding: 0 25px;
				aspect-ratio: inherit;
				height: 124vw;
				margin-bottom: 0;
		}
		.kodawari_figure_item-1_bg, .kodawari_figure_item-2_bg, .kodawari_figure_item-3_bg {
				top: 0;
				width: 100%;
				height: calc(100% + 200px);
		}
		.kodawari_figure_wrap .kodawari_figure_item-1 {
				aspect-ratio: 10 / 6;
		}
		.kodawari_figure_wrap .kodawari_figure_item-1 {
				width: 48vw;
				left: 0px
		}
		.kodawari_figure_wrap .kodawari_figure_item-2 {
				width: 54vw;
				top: 35.4vw;
				right: 20px;
		}
		.kodawari_figure_item-3 {
				width: 35vw;
				top: 51vw;
				left: 10vw;
		}
}
/* ==================== */
.about_mid__bg {
		height: 540px;
		position: relative;
		overflow: hidden;
}
.about_mid__bg__figure {
		background-image: url("../images/about_mid_pc.jpg");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 100%;
		position: absolute;
		top: 0px;
		width: 100%;
		height: 700px;
}
@media(max-width: 1300px) {
		.about_mid__bg__figure {
				background-size: cover;
				top: 0;
		}
}
@media(max-width: 767px) {
		.about_mid__bg {
				height: 200px;
		}
		.about_mid__bg__figure {
				background-image: url("../images/about_mid_sp.jpg");
				background-size: cover;
				height: 300px;
		}
}
/* ==================== */
.about_dark_section {
		min-height: 600px;
		color: #F5F5F5;
		background: #1e1e1e;
}
.about_award_section {
		padding: 100px 50px 200px;
}
.about_award_section_inner {
		max-width: 1200px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
}
.about_award_section_inner_left {
		width: 250px;
}
.about_award_section_inner_right {
		width: 700px;
}
.about_award_section_inner_left h3 {
		width: 85px;
}
.about_award_section_inner_left h3 img {
		width: 100%;
		height: auto;
}
.about_award_caption {
		line-height: 2.0;
		margin-bottom: 100px;
}
.award_item_gr {
		border-top: 1px solid #8c8c8c;
}
.award_item {
		border-bottom: 1px solid #8c8c8c;
		transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s;
		transform: translateY(30px);
		opacity: 0;
}
.award_item.isActive {
		transform: translateY(0px);
		opacity: 1;
}
.award_item_hd {
		font-size: 17px;
		position: relative;
		padding: 18px 0;
		cursor: pointer;
}
.award_item_hd h5 {
		font-size: 17px;
		font-weight: normal;
}
.award_item_hd_trigger {
		position: absolute;
		width: 13px;
		height: 13px;
		right: 12px;
		top: calc(50% - 6px);
}
.award_item_hd_trigger::before, .award_item_hd_trigger::after {
		content: '';
		display: block;
		position: absolute;
		top: 6px;
		left: 0;
		width: 13px;
		height: 1px;
		background: #fff;
		transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.award_item_hd_trigger::after {
		transform: rotate(90deg);
}
.award_item_open .award_item_hd_trigger::before {
		transform: rotate(180deg);
}
.award_item_open .award_item_hd_trigger::after {
		transform: rotate(270deg);
		opacity: 0;
}
.award_item_cont {
		padding-top: 10px;
		padding-bottom: 35px;
		display: none;
}
.award_item_cont p {
		font-size: 14px;
		line-height: 1.8;
		margin: 0 0 1em;
}
.award_item_cont p:last-child {
		margin-bottom: 0;
}
@media(max-width: 840px) {
		.about_award_section {
				padding: 100px 30px 200px;
		}
		.about_award_section_inner {
				display: block;
		}
		.about_award_section_inner_left {
				width: 100%;
		}
		.about_award_section_inner_right {
				width: 100%;
		}
		.about_award_section_inner_left h3 {
				margin: 0 auto 70px;
		}
		.about_award_caption {
				margin-bottom: 70px;
		}
}
@media(max-width: 767px) {
		.about_award_section {
				padding-top: 60px;
				padding-bottom: 150px;
				padding-left: 22px;
				padding-right: 22px;
		}
		.about_award_section_inner_left h3 {
				width: 100px;
		}
}
/* ================ */
.about_movie_hr {
		height: 1px;
		background: #8c8c8c;
		margin: 0 30px;
}
.about_movie_section {
		padding: 120px 50px 160px;
}
.about_movie_hd {
		width: 85px;
		margin: 0 auto 90px;
}
.about_movie_hd img {
		width: 100%;
		height: auto;
}
.about_movie_flex {
		max-width: 1000px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
		padding: 0;
}
.movie_tile_item {
		width: calc(50% - 10px);
		background: #333;
}
.movie_tile_item img {
		width: 100%;
		height: auto;
		transition: opacity 0.8s, transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
		opacity: 0;
}
.movie_tile_item.isActive img {
		opacity: 1;
}
.movie_tile_item_thumb {
		overflow: hidden;
		position: relative;
}
.movie_tile_item_thumb::before {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 35px);
		left: calc(50% - 35px);
		width: 70px;
		height: 70px;
		border-radius: 50%;
		border: 1px solid #fff;
		box-sizing: border-box;
		pointer-events: none;
		z-index: 10;
		transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.movie_tile_item_thumb::after {
		content: '';
		display: block;
		position: absolute;
		top: calc(calc(50% - 35px) + 30px);
		left: calc(calc(50% - 35px) + 30px);
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 5px 0 5px 10px;
		border-color: transparent transparent transparent #fff;
		z-index: 10;
		pointer-events: none;
		transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
@media (hover: hover) {
		.movie_tile_item:hover .movie_tile_item_thumb::before {
				transform: scale(1.3);
		}
}
.movie_tile_item_thumb_in {
		position: relative;
}
.movie_tile_item_thumb_in::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.3);
		pointer-events: none;
		z-index: 1;
}
@media (hover: hover) {
		.movie_tile_item_thumb:hover img {
				transform: scale(1.06)
		}
}
@media (hover: hover) {
		.movie_tile_item_thumb:hover img {
				transform: scale(1.06)
		}
}
@media(max-width: 840px) {
		.about_movie_section {
				padding: 120px 30px;
		}
}
@media(max-width: 767px) {
		.about_movie_hd {
				width: 100px;
				margin: 0 auto 70px;
		}
		.about_movie_flex {
				display: block;
		}
		.movie_tile_item {
				width: 100%;
				margin: 0 0 40px;
		}
		.about_movie_flex .movie_tile_item:last-child {
				margin-bottom: 0;
		}
}
@media (orientation: landscape) and (max-width: 940px) {
		.about_introduction_caption {
				display: block;
				margin: 80px 0 120px;
				padding: 0 22px;
		}
		.about_introduction_hd {
				width: 215px;
				margin: 0 auto 80px;
		}
		.about_introduction_caption p {
				font-size: 14px;
				line-height: 2.4;
				margin: 0 0 2em;
				writing-mode: horizontal-tb;
		}
}