@charset "utf-8";

/* ==================== INDEX ====================

	A.desktop (min-width: 600px)
	• desktop シンプルスライドショー
	• desktop ループスライダー
	• desktop カルーセルスライダー
	• desktop サムネイルスライド
	• desktop コレクション タイル型
	• desktop コレクション インデックス型
	• desktop コレクション リボン型
	• desktop ピクチャーアイコンリスト

	B.mobile (max-width: 599px)
	• mobile シンプルスライドショー
	• mobile ループスライダー
	• mobile カルーセルスライダー
	• mobile サムネイルスライド
	• mobile コレクション タイル型
	• mobile コレクション インデックス型
	• mobile コレクション リボン型
	• mobile ピクチャーアイコンリスト

==================== INDEX ==================== */


@media all and (min-width: 600px) {

	/*==================== desktop シンプルスライドショー ====================*/
	
	/*------ 表示領域のカスタマイズ ここから ------*/

	.wrapper_simpleSlider {
		display: block;
		box-sizing: border-box;
		position: relative;
		width: 100%;
		height: 400px;
		/* min-height: calc(100vh - 50px); */
		margin: 0 auto;
		padding: 0;
		overflow: hidden;
	}

	.wrapper_simpleSlider ._simpleSlider_ li {
		height: 400px;
	}

	.wrapper_simpleSlider .overlay_txt {
		position: absolute;
		z-index: 100;
		margin: 0;
		left: 50%;
		top: 50%;
		font-size: 5rem;
		line-height: 1.25;
		transform: translateX(-50%) translateY(-50%);
		font-family: sans-serif;
		font-weight: 900;
		color: #fff;
		mix-blend-mode: overlay;
	}
	
	/*------ ここまで 表示領域のカスタマイズ ------*/

	._simpleSlider_ {
		display: flex;
		flex-direction: column;
		justify-content: center;
		list-style: none;
		margin: 0;
		padding: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}
	
	._simpleSlider_ li {
		position: absolute;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		margin: 0;
		padding: 0;
		width: 100%;
		height: auto;
		overflow: hidden;
	}

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

	._simpleSlider_ img.fit_width {
		min-height: auto;
	}

	/*------ 効果タイプ1 ------*/
	
	._simpleSlider_.effect1 li {
		transition: opacity 2.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
		opacity: 0;
	}

	._simpleSlider_.effect1 ._next_ {
		z-index: 3;
		opacity: 0;
	}

	._simpleSlider_.effect1 ._current_ {
		z-index: 2;
		opacity: 1;
	}

	._simpleSlider_.effect1 ._waiting_ {
		z-index: 1;
		opacity: 0;
	}

	/*------ 効果タイプ2 ------*/

	@keyframes simpleSlider_effect2_zooming {
		0% {
			transform: scale(1.05, 1.05);
		}
		70% {
			opacity: 1;
		}
		100% {
			transform: scale(1.3, 1.3);
			opacity: 0;
		}
	}

	@keyframes simpleSlider_effect2_idling {
		0% {
			opacity: 0;
		}
		70% {
			opacity: 0;
			transform: scale(1, 1);
		}
		100% {
			opacity: 1;
			transform: scale(1.05, 1.05);
		}
	}
	
	._simpleSlider_.effect2 li {
		transform-origin: 50% 50%;
		transform: scale(1, 1);
		opacity: 0;
	}

	._simpleSlider_.effect2 ._current_ {
		animation: 5s linear 0s 1 normal backwards simpleSlider_effect2_zooming;
		transform: scale(1.5, 1.5);
		z-index: 3;
		opacity: 1;
	}

	._simpleSlider_.effect2 ._next_ {
		animation: 5s linear 0s 1 normal backwards simpleSlider_effect2_idling;
		z-index: 2;
		opacity: 1;
	}

	._simpleSlider_.effect2 ._waiting_ {
		z-index: 1;
		opacity: 0;
	}


	/*==================== desktop ループスライダー ====================*/

	._loopSlider_ {
		position: relative;
		overflow: hidden;
		width: 100%;
		height: 300px; /* スライダーの高さ */
		margin: 0;
		padding: 0;
		display: flex;
		justify-content: flex-start;
	}

	@keyframes loop_slider_first {
		0% {
			transform: translateX(0%);
		}
		100% {
			transform: translateX(-100%);
		}
	}

	@keyframes loop_slider_clone {
		0% {
			transform: translateX(100%);
		}
		100% {
			transform: translateX(0%);
		}
	}

	._loopSlider_ ul {
		position: absolute;
		left: 0;
		top: 0;
		list-style: none;
		display: block;
		height: 100%;
		white-space: nowrap;
		margin: 0;
		padding: 0;
		text-align: center;
		line-height: 100%;
		letter-spacing: -0.4em;
	}

	._loopSlider_._animate_ ul:first-child {
		z-index: 2;
		animation: 40s linear 0s infinite normal backwards loop_slider_first;
	}

	._loopSlider_._animate_ ul:last-child {
		z-index: 1;
		animation: 40s linear 0s infinite normal backwards loop_slider_clone;
	}

	._loopSlider_ li {
		height: 100%;
		overflow: hidden;
		margin-bottom: 0;
		display: inline-block;
	}

	._loopSlider_ li > a {
		height: 100%;
	}

	._loopSlider_ li img {
		width: auto;
		height: 100%;
		vertical-align: bottom;
	}


	/*==================== desktop カルーセルスライダー ====================*/

	._carouselSlider_ {
		position: relative;
		overflow: hidden;
		margin: 0;
		padding: 0 10vw 50px 10vw;
	}

	._carouselSlider_ ._dots_ {
		position: absolute;
		z-index: 3;
		bottom: 12px;
		left: 50%;
		display: flex;
		transform: translateX( -50% );
	}

	._carouselSlider_ ._dots_ span {
		width: 9px;
		height: 9px;
		margin-left: 19px;
		background: rgba(0, 0, 0, 0.3);
		border-radius: 50%;
	}

	._carouselSlider_ ._dots_ span._current_ {
		background: rgba(0, 0, 0, 0.8);
	}

	._carouselSlider_ ._dots_ span:first-child {
		margin-left: 0;
	}

	._carouselSlider_ ._screen_ {
		list-style: none;
		position: relative;
		width: 100%; /* スクリーンの幅指定箇所 */
		height: calc(320px + 1.2vw / 0.2); /* スクリーンの高さ指定箇所 */
		margin: 0;
		padding: 0;
	}

	._carouselSlider_ ._screen_ > li {
		transition: left .8s ease-in-out;
		visibility: hidden;
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		z-index: 2;
		left: 204%;
		top: 0;
		width: 100%;
		height: 100%;
		margin: 0;
		background: #2b2b2b;
		overflow: hidden;
	}

	._carouselSlider_ ._caption_ {
		transition: opacity .5s ease-in .5s;
		opacity: 1;
		display: block;
		box-sizing: border-box;
		position: absolute;
		z-index: 3;
		width: calc(100% - 5vw);
		min-height: 3.5em;
		padding: 8px 16px;
		background: rgba(255, 255, 255, 0.7);
	}

	._carouselSlider_ ._screen_ > li:not(._current_) ._caption_ {
		opacity: 0;
	}

	._carouselSlider_ ._current_ {
		visibility: visible !important;
		left: 0 !important;
	}

	._carouselSlider_ ._next_ {
		visibility: visible !important;
		left: 102% !important;
		cursor: pointer;
	}

	._carouselSlider_ ._next2_ {
		visibility: visible !important;
		left: 204% !important;
	}

	._carouselSlider_ ._prev_ {
		visibility: visible !important;
		left: -102% !important;
		cursor: pointer;
	}

	._carouselSlider_ ._prev2_ {
		visibility: visible !important;
		left: -204% !important;
	}

	._carouselSlider_ ._next_:hover,
	._carouselSlider_ ._prev_:hover,
	._carouselSlider_ ._next_:focus,
	._carouselSlider_ ._prev_:focus {
		opacity: 0.7;
	}

	/*

	@keyframes slide_arr {
		0% {
			opacity: 0;
		}
		100% {
			opacity: 1;
		}
	}

	@keyframes slide_arr_hopping_next {
		0% {
			transform: translateX(0px) translateY(-50%);
			opacity: 1;
		}
		50% {
			transform: translateX(10px) translateY(-50%);
		}
		100% {
			transform: translateX(0px) translateY(-50%);
			opacity: 1;
		}
	}

	@keyframes slide_arr_hopping_prev {
		0% {
			transform: translateX(0px) translateY(-50%);
			opacity: 1;
		}
		50% {
			transform: translateX(-10px) translateY(-50%);
		}
		100% {
			transform: translateX(0px) translateY(-50%);
			opacity: 1;
		}
	}

	._carouselSlider_ ._next_::after {
		opacity: 0;
		animation: .3s ease-in 1s 1 normal forwards slide_arr;
		content: '';
		position: absolute;
		z-index: 2;
		top: 50%;
		transform: translateY(-50%);
		left: 1.75%;
		display: block;
		width: 50px;
		height: 50px;
		background: url('./images/slider_rarr.svg') center center / contain no-repeat;
	}

	._carouselSlider_ ._prev_::after {
		opacity: 0;
		animation: .3s ease-in 1s 1 normal forwards slide_arr;
		content: '';
		position: absolute;
		z-index: 2;
		top: 50%;
		transform: translateY(-50%);
		right: 1.75%;
		display: block;
		width: 50px;
		height: 50px;
		background: url('./images/slider_larr.svg') center center / contain no-repeat;
	}

	._carouselSlider_ ._next_:hover::after {
		animation: .7s ease-in-out 0s infinite normal none slide_arr_hopping_next;
	}

	._carouselSlider_ ._prev_:hover::after {
		animation: .7s ease-in-out 0s infinite normal none slide_arr_hopping_prev;
	}

	*/

	._carouselSlider_ img {
		vertical-align: bottom;
		width: 100%;
		height: auto;
	}

	/*==================== desktop サムネイルスライド ====================*/

	._thumbSlider_ ._slideScreen_ {
		position: relative;
		width: 640px;
		height: 440px;
		margin: 0 auto;
		overflow: hidden;
		box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	}

	._slideScreen_ > *:not(figcaption) {
		transition-property: opacity, transform;
		transition-duration: .4s;
		transition-timing-function: ease-in;
		transform: scale(1, 1);
		display: flex;
		align-items: stretch;
		justify-content: center;
		position: absolute;
		z-index: 2;
		width: 100%;
		height: 100%;
		padding: 0;
		overflow: hidden;
		background: #fff;
	}

	._slideScreen_ img {
		width: 100%;
		height: auto;
		vertical-align: bottom;
	}

	._slideScreen_ ._hidden_ {
		transform: scale(1.1, 1.1);
		z-index: auto;
		opacity: 0;
	}
	
	._slideScreen_ ._visible_ {
		transform: scale(1, 1);
		z-index: 10;
		opacity: 1;
	}
	
	._slideScreen_ ._visible_:hover {
		transform: scale(1.1, 1.1);
	}

	._slideScreen_ figcaption {
		display: block;
		position: absolute;
		z-index: 20;
		top: auto;
		bottom: 0px;
		width: 100%;
		text-align: center;
		box-sizing: border-box;
		padding: 4px;
		background: rgba(255, 255, 255, 0.7);
	}

	._slideScreen_ figcaption:empty {
		display: none;
	}

	._thumbSlider_ ul.thumbs {
		list-style: none;
		display: flex;
		align-items: center;
		flex-flow: row wrap;
		margin-left: -3%;
		padding: 0;
	}

	._thumbSlider_ ul.thumbs li {
		box-sizing: border-box;
		flex: 0 17%;
		height: 80px;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0 0 3% 3%;
		padding: 0;
		overflow: hidden;
		background: #fff;
		border: solid 1px #dadada;
		cursor: pointer;
	}

	._thumbSlider_ ul.thumbs li:active,
	._thumbSlider_ ul.thumbs li:active {
		opacity: 0.7;
	}


	._thumbSlider_ ul.thumbs li img {
		transition: transform .2s ease-in;
		transform-origin: 50% 50%;
		transform: scale(1, 1);
		height: 100%;
		width: auto;
		vertical-align: bottom;
	}

	._thumbSlider_ ul.thumbs li:focus img,
	._thumbSlider_ ul.thumbs li:hover img {
		transform: scale(1.1, 1.1);
		vertical-align: bottom;
	}

	/*==================== desktop コレクション タイル型 ====================*/

	ul.collection_tile {
		list-style: none;
		display: flex;
		flex-flow: row wrap;
		margin-left: -24px;
		padding: 0;
	}

	ul.collection_tile li {
		flex: 1 28%;
		min-height: 240px;
		margin: 0 0 24px 24px;
		padding: 15px;
		background: #fff;
		box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	}

	ul.collection_tile li.feature {
		flex: 2 61%;
	}

	/*
	ul.collection_tile li:last-child {
		flex-grow: 0;
		flex-basis: 288px;
	}
	*/

	ul.collection_tile figure {
		margin: -15px -15px 15px -15px;
	}
	
	ul.collection_tile figure img {
		width: 100%;
		height: auto;
	}

	ul.collection_tile li .title {
		margin-top: 0;
	}

	ul.collection_tile li p:last-child {
		margin-bottom: 0;
	}

	ul.collection_tile span.thumb {
		position: relative;
		display: flex;
		align-items: center;
		height: 120px;
		overflow: hidden;
	}

	ul.collection_tile span.thumb img {
		transition: transform .2s ease-in;
		position: absolute;
		z-index: 2;
		transform-origin: 50% 50%;
		transform: scale(1, 1);
		vertical-align: bottom;
	}

	ul.collection_tile li:focus span.thumb img,
	ul.collection_tile li:hover span.thumb img {
		transform: scale(1.1, 1.1);
	}


	/*==================== desktop コレクション インデックス型 ====================*/

	ul.collection_index {
		list-style: none;
		display: flex;
		flex-flow: column nowrap;
		padding: 0;
	}

	ul.collection_index a:hover {
		text-decoration: none;
	}

	ul.collection_index li {
		height: 150px;
		box-sizing: border-box;
		margin: 0 0 24px 0;
		padding: 15px;
		background: #fff;
		box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	}

	ul.collection_index.compact li {
		height: 100px;
		margin: 0 0 16px 0;
	}

	ul.collection_index li > a.flex_box {
		display: flex;
	}

	ul.collection_index figure {
		margin: -15px 16px -15px -15px;
	}
	
	ul.collection_index div.text {
		height: 115px;
		height: 115px;
		overflow: hidden;
		overflow: hidden;
	}
	
	ul.collection_index.compact div.text {
		height: 70px;
		overflow: hidden;
	}

	ul.collection_index li .title {
		margin: 0 0 10px 0;
	}

	ul.collection_index.compact li .title {
		margin: 0;
	}

	ul.collection_index li p:last-child {
		margin-bottom: 0;
	}

	ul.collection_index span.thumb {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 150px;
		height: 150px;
		overflow: hidden;
	}

	ul.collection_index.compact span.thumb {
		width: 100px;
		height: 100px;
	}

	ul.collection_index span.thumb img {
		transition: transform .2s ease-in;
		width: auto;
		height: 100%;
		transform-origin: 50% 50%;
		transform: scale(1, 1);
		vertical-align: bottom;
	}

	ul.collection_index li:focus span.thumb img,
	ul.collection_index li:hover span.thumb img {
		transform: scale(1.1, 1.1);
	}


	/*==================== desktop コレクション リボン型 ====================*/

	.collection_ribbon {
		position: relative;
		overflow: hidden;
		width: 100%;
		height: 14vw;
		margin: 0;
		padding: 0;
		background: #2b2b2b;
		display: flex;
		justify-content: center;
	}

	.collection_ribbon ul {
		list-style: none;
		display: block;
		height: 100%;
		white-space: nowrap;
		margin: 0;
		padding: 0;
		text-align: center;
		line-height: 100%;
		letter-spacing: -0.4em;
	}

	.collection_ribbon li {
		height: 100%;
		overflow: hidden;
		margin-bottom: 0;
		display: inline-block;
	}

	.collection_ribbon li > a {
		height: 100%;
	}

	.collection_ribbon li img {
		width: auto;
		height: 100%;
		vertical-align: bottom;
	}

	/*==================== desktop ピクチャーアイコンリスト ====================*/

	ul.circular_member_list {
		list-style: none;
		display: flex;
		flex-wrap: wrap;
		margin-left: -20px;
		padding: 0;
	}

	ul.circular_member_list li {
		list-style: none;
		margin: 0 0 0 20px;
		padding: 0;
	}

	ul.circular_member_list figure {
		margin-top: 0;
	}

	ul.circular_member_list figcaption {
		width: 110px;
		margin-top: 5px;
		text-align: center;
	}

	ul.circular_member_list figure a {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 110px;
		height: 110px;
		overflow: hidden;
		border-radius: 50%;
	}

	ul.circular_member_list figure a img {
		transition: transform .2s ease-in;
		width: auto;
		height: 100%;
		transform-origin: 50% 50%;
		transform: scale(1, 1);
	}

	ul.circular_member_list figure a:hover img {
		transform: scale(1.1, 1.1);
	}

}


@media all and (max-width: 599px) {

	/*==================== mobile シンプルスライドショー ====================*/
	
	/*------ 表示領域のカスタマイズ ここから ------*/

	.wrapper_simpleSlider {
		display: block;
		box-sizing: border-box;
		position: relative;
		width: 100%;
		height: 400px;
		/* min-height: calc(100vh - 50px); */
		margin: 0 auto;
		padding: 0;
		overflow: hidden;
	}

	.wrapper_simpleSlider ._simpleSlider_ li {
		height: 400px;
	}

	.wrapper_simpleSlider .overlay_txt {
		position: absolute;
		z-index: 100;
		margin: 0;
		left: 50%;
		top: 50%;
		font-size: 10vw;
		line-height: 1.25;
		transform: translateX(-50%) translateY(-50%);
		font-family: sans-serif;
		font-weight: 900;
		color: rgb(233, 233, 233);
		mix-blend-mode: overlay;
	}

	/*------ ここまで 表示領域のカスタマイズ ------*/

	._simpleSlider_ {
		display: flex;
		flex-direction: column;
		justify-content: center;
		list-style: none;
		margin: 0;
		padding: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}
	
	._simpleSlider_ li {
		position: absolute;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		margin: 0;
		padding: 0;
		width: 100%;
		height: auto;
		overflow: hidden;
	}

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

	._simpleSlider_ img.fit_width {
		min-height: auto;
	}

	/*------ 効果タイプ1 ------*/
	
	._simpleSlider_.effect1 li {
		transition: opacity 2.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
		opacity: 0;
	}

	._simpleSlider_.effect1 ._next_ {
		transform: scale(1.5, 1.5);
		z-index: 3;
		opacity: 0;
	}

	._simpleSlider_.effect1 ._current_ {
		z-index: 2;
		opacity: 1;
	}

	._simpleSlider_.effect1 ._waiting_ {
		z-index: 1;
		opacity: 0;
	}

	/*------ 効果タイプ2 ------*/

	@keyframes simpleSlider_effect2_zooming {
		0% {
			transform: scale(1.05, 1.05);
		}
		70% {
			opacity: 1;
		}
		100% {
			transform: scale(1.3, 1.3);
			opacity: 0;
		}
	}

	@keyframes simpleSlider_effect2_idling {
		0% {
			opacity: 0;
		}
		70% {
			opacity: 0;
			transform: scale(1, 1);
		}
		100% {
			opacity: 1;
			transform: scale(1.05, 1.05);
		}
	}
	
	._simpleSlider_.effect2 li {
		transform-origin: 50% 50%;
		transform: scale(1, 1);
		opacity: 0;
	}

	._simpleSlider_.effect2 ._current_ {
		animation: 5s linear 0s 1 normal backwards simpleSlider_effect2_zooming;
		transform: scale(1.5, 1.5);
		z-index: 3;
		opacity: 1;
	}

	._simpleSlider_.effect2 ._next_ {
		animation: 5s linear 0s 1 normal backwards simpleSlider_effect2_idling;
		z-index: 2;
		opacity: 1;
	}

	._simpleSlider_.effect2 ._waiting_ {
		z-index: 1;
		opacity: 0;
	}

	/*==================== mobile ループスライダー ====================*/

	._loopSlider_ {
		position: relative;
		overflow: hidden;
		width: 100%;
		height: 180px; /* スライダーの高さ */
		margin: 0;
		padding: 0;
		display: flex;
		justify-content: flex-start;
	}

	@keyframes loop_slider_first {
		0% {
			transform: translateX(0%);
		}
		100% {
			transform: translateX(-100%);
		}
	}

	@keyframes loop_slider_clone {
		0% {
			transform: translateX(100%);
		}
		100% {
			transform: translateX(0%);
		}
	}

	._loopSlider_ ul {
		position: absolute;
		left: 0;
		top: 0;
		list-style: none;
		display: block;
		height: 100%;
		white-space: nowrap;
		margin: 0;
		padding: 0;
		text-align: center;
		line-height: 100%;
		letter-spacing: -0.4em;
	}

	._loopSlider_._animate_ ul:first-child {
		z-index: 2;
		animation: 90s linear 0s infinite normal forwards loop_slider_first;
	}

	._loopSlider_._animate_ ul:last-child {
		z-index: 1;
		animation: 90s linear 0s infinite normal forwards loop_slider_clone;
	}

	._loopSlider_ li {
		height: 100%;
		overflow: hidden;
		margin-bottom: 0;
		display: inline-block;
	}

	._loopSlider_ li > a {
		height: 100%;
	}

	._loopSlider_ li img {
		width: auto;
		height: 100%;
		vertical-align: bottom;
	}

	/*==================== mobile カルーセルスライダー ====================*/

	._carouselSlider_ {
		position: relative;
		overflow: hidden;
		margin: 0;
		padding: 0 14vw 40px 14vw; /* 左右領域はパディングで調整 */
	}

	.flex_wide_box ._carouselSlider_ {
		margin: 0 -7vw;
		padding: 0 14vw 40px 14vw; /* 左右領域はパディングで調整 */
	}

	._carouselSlider_ ._dots_ {
		position: absolute;
		z-index: 3;
		bottom: 4vw;
		left: 50%;
		display: flex;
		transform: translateX( -50% );
	}

	._carouselSlider_ ._dots_ span {
		width: 2vw;
		height: 2vw;
		border-radius: 50%;
		margin-left: 3vw;
		background: rgba(0, 0, 0, 0.3);
	}

	._carouselSlider_ ._dots_ span._current_ {
		background: rgba(0, 0, 0, 0.8);
	}

	._carouselSlider_ ._dots_ span:first-child {
		margin-left: 0;
	}

	._carouselSlider_ ._screen_ {
		list-style: none;
		position: relative;
		width: 100%;
		height: 48vw;
		margin: 0;
		padding: 0;
	}

	._carouselSlider_ ._screen_ > li {
		transition: left .5s ease-in-out;
		visibility: hidden;
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		z-index: 2;
		left: 204%;
		top: 0;
		width: 100%;
		height: 48vw;
		margin: 0;
		background: #2b2b2b;
		overflow: hidden;
	}

	._carouselSlider_ ._caption_ {
		transition: opacity .5s ease-in .5s;
		opacity: 1;
		display: block;
		box-sizing: border-box;
		position: absolute;
		z-index: 3;
		width: calc(100% - 5vw);
		min-height: 3.5em;
		padding: 4px 8px;
		background: rgba(255, 255, 255, 0.7);
	}

	._carouselSlider_ ._screen_ > li:not(._current_) ._caption_ {
		opacity: 0;
	}

	._carouselSlider_ ._current_ {
		visibility: visible !important;
		left: 0 !important;
	}

	._carouselSlider_ ._next_ {
		visibility: visible !important;
		left: 102% !important;
		cursor: pointer;
	}

	._carouselSlider_ ._next2_ {
		visibility: visible !important;
		left: 204% !important;
	}

	._carouselSlider_ ._prev_ {
		visibility: visible !important;
		left: -102% !important;
		cursor: pointer;
	}

	._carouselSlider_ ._prev2_ {
		visibility: visible !important;
		left: -204% !important;
	}
	
	@keyframes slide_arr {
		0% {
			opacity: 0;
		}
		100% {
			opacity: 1;
		}
	}

	._carouselSlider_ ._next_::after {
		opacity: 0;
		animation: .3s ease-in 1s 1 normal forwards slide_arr;
		content: '';
		position: absolute;
		z-index: 2;
		top: 50%;
		transform: translateY(-50%);
		left: 2.1vw;
		display: block;
		width: 8vw;
		height: 8vw;
		background: url('./images/disc_rarr.svg') center center / contain no-repeat;
	}

	._carouselSlider_ ._prev_::after {
		opacity: 0;
		animation: .3s ease-in 1s 1 normal forwards slide_arr;
		content: '';
		position: absolute;
		z-index: 2;
		top: 50%;
		transform: translateY(-50%);
		right: 2.1vw;
		display: block;
		width: 8vw;
		height: 8vw;
		background: url('./images/disc_larr.svg') center center / contain no-repeat;
	}

	._carouselSlider_ img {
		vertical-align: bottom;
		width: 100%;
		height: auto;
	}

	/*==================== mobile サムネイルスライド ====================*/

	._thumbSlider_ ._slideScreen_ {
		position: relative;
		width: 100%;
		height: 60vw;
		margin: 0;
		overflow: hidden;
		box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	}

	._slideScreen_ > *:not(figcaption) {
		transition-property: opacity, transform;
		transition-duration: .4s;
		transition-timing-function: ease-in;
		transform: scale(1.1, 1.1);
		display: flex;
		align-items: stretch;
		justify-content: center;
		position: absolute;
		z-index: 2;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		padding: 0;
		overflow: hidden;
		background: #fff;
	}

	._slideScreen_ img {
		width: 100%;
		height: auto;
		vertical-align: bottom;
	}

	._slideScreen_ ._hidden_ {
		transform: scale(1, 1);
		z-index: auto;
		opacity: 0;
	}
	
	._slideScreen_ ._visible_ {
		transform: scale(1.1, 1.1);
		z-index: 10;
		opacity: 1;
	}
	
	._slideScreen_ ._visible_:hover {
		transform: scale(1, 1);
	}

	._slideScreen_ figcaption {
		display: block;
		box-sizing: border-box;
		position: absolute;
		z-index: 30;
		left: 0;
		top: auto;
		bottom: 0px;
		width: 100%;
		text-align: left;
		height: auto;
		margin: 0;
		padding: 4px;
		background: rgba(255, 255, 255, 0.7);
	}

	._slideScreen_ figcaption:empty {
		display: none;
	}

	._thumbSlider_ ul.thumbs {
		list-style: none;
		display: flex;
		align-items: center;
		flex-flow: row wrap;
		margin-left: -3vw;
		padding: 0;
	}

	._thumbSlider_ ul.thumbs li {
		box-sizing: border-box;
		flex: 1 17vw;
		height: 14vw;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0 0 3vw 3vw;
		padding: 0;
		overflow: hidden;
		background: #fff;
		border: solid 1px #dadada;
	}

	._thumbSlider_ ul.thumbs li img {
		vertical-align: bottom;
		height: 100%;
		width: auto;
	}

	/*==================== mobile コレクション タイル型 ====================*/

	ul.collection_tile {
		list-style: none;
		display: flex;
		flex-direction: row;
		flex-flow: row wrap;
		padding: 0;
	}

	ul.collection_tile li {
		margin: 0 0 24px 0;
		padding: 15px;
		background: #fff;
		box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	}

	ul.collection_tile figure {
		margin: -15px -15px 15px -15px;
	}
	
	ul.collection_tile figure img {
		width: 100%;
		height: auto;
	}

	ul.collection_tile li .title {
		margin-top: 0;
	}

	ul.collection_index.compact li .title {
		margin: 0;
	}

	ul.collection_tile li p:last-child {
		margin-bottom: 0;
	}

	ul.collection_tile span.thumb {
		position: relative;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		height: 120px;
		overflow: hidden;
	}

	ul.collection_tile span.thumb img {
		position: absolute;
		z-index: 2;
		vertical-align: bottom;
	}

	ul.collection_tile li.feature span.thumb {
		height: 360px;
	}

	ul.collection_tile li.feature span.thumb img {
		height: 100%;
		width: auto;
	}

	
	/*==================== mobile コレクション インデックス型 ====================*/

	ul.collection_index {
		list-style: none;
		display: flex;
		flex-flow: column nowrap;
		padding: 0;
	}

	ul.collection_index li {
		height: 36vw;
		box-sizing: border-box;
		margin: 0 0 5vw 0;
		padding: 3vw;
		background: #fff;
		box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	}

	ul.collection_index span.thumb {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 25vw;
		height: 36vw;
		overflow: hidden;
	}

	ul.collection_index figure {
		margin: -3vw 3vw -3vw -3vw;
	}

	._col ul.collection_index li:last-child {
		margin-bottom: 0 !important;
	}

	ul.collection_index li > a.flex_box {
		display: flex;
	}
	
	ul.collection_index div.text {
		flex-grow: 2;
		height: 30vw;
		overflow: hidden;
	}

	ul.collection_index li .title {
		margin: 0 0 3vw 0;
	}

	ul.collection_index li p:last-child {
		margin-bottom: 0;
	}

	ul.collection_index span.thumb img {
		transition: transform .2s ease-in;
		width: auto;
		height: 100%;
		transform-origin: 50% 50%;
		transform: scale(1, 1);
		vertical-align: bottom;
	}

	ul.collection_index li:focus span.thumb img,
	ul.collection_index li:hover span.thumb img {
		transform: scale(1.1, 1.1);
	}

	ul.collection_index.compact li {
		height: 25vw;
		padding: 2vw;
		margin: 0 0 5vw 0;
	}

	ul.collection_index.compact span.thumb {
		width: 25vw;
		height: 25vw;
	}

	ul.collection_index.compact figure {
		margin: -2vw 2vw -2vw -2vw;
	}
	
	ul.collection_index.compact div.text {
		flex-grow: 2;
		height: 20vw;
		padding: 0 1vw;
		overflow: hidden;
	}


	/*==================== mobile コレクション リボン型 ====================*/

	.collection_ribbon {
		position: relative;
		overflow: hidden;
		width: 100%;
		margin: 0;
		padding: 0;
		background: #2b2b2b;
	}

	.collection_ribbon ul {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.collection_ribbon li {
		flex: 1 25%;
		height: 14.6vw;
		margin: 0;
		overflow: hidden;
		display: flex;
		align-items: center;
	}

	.collection_ribbon li:first-child {
		flex: 2 40%;
	}

	.collection_ribbon li img {
		width: 100%;
		height: auto;
		vertical-align: bottom;
	}

	/*==================== mobile ピクチャーアイコンリスト ====================*/

	ul.circular_member_list {
		list-style: none;
		display: flex;
		flex-wrap: wrap;
		margin-left: -4vw;
		padding: 0;
	}

	ul.circular_member_list li {
		list-style: none;
		margin: 0 0 0 4vw;
		padding: 0;
	}

	ul.circular_member_list figure {
		margin-top: 0;
	}

	ul.circular_member_list figcaption {
		display: block;
		white-space: normal;
		width: 19vw;
		margin-top: 2px;
		text-align: center;
	}

	ul.circular_member_list figure a {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 19vw;
		height: 19vw;
		overflow: hidden;
		border-radius: 50%;
	}

	ul.circular_member_list figure a img {
		width: auto;
		height: 100%;
		transform-origin: 50% 50%;
		transform: scale(1, 1);
	}


}
