@charset "utf-8";
@media screen and (max-width : 768px){
	br { display: none; }

	img { width: 100%; }

	#contents_area,
	.section,
	.block {
		position: relative;
		z-index: 1;
	}
	.section,
	.block:not(.item):not(.parts) {
		background: #000;
	}
	.section {
		margin: auto;
		color: #fff;
	}
	.section h3 {
		font-size: 20px;
	}

	.section .link {
		text-align: center;
	}
	#contents_area .section .link a {
		display: inline-block;
		color: #fff;
		font-size: 16px;
		line-height: 20px;
	}
	.section .link a:after {
		content: '';
		display: inline-block;
		position: relative;
		right: -10px;
		width: 20px;
		height: 20px;
		background: url(../../common/img/parts_ico_btn_detail_arrow_w.png) 50% 0 / 100% no-repeat;
		vertical-align: top;
		transform: rotateZ(-90deg);
	}

	.section .link.frame a {
		padding: 15px 20px;
		border: 1px solid;
		border-radius: 2px;
	}
	.section .link.frame a::after {
		transform: none;
	}

	#footer_topic_path,
	footer,
	#footer-sp {
		position: relative;
		z-index: 2;
	}

	footer,
	#footer-sp {
		background: #fff;
	}

	footer .guaranteed {
		margin-bottom: 0;
		padding-bottom: 50px;
	}

	.btn_pagetop {
		border: solid 1px #fff;
	}


/* ----------------------------------------
	Animation
---------------------------------------- */

	.anim_ready .scroll_anim {
		opacity: 0;
		backface-visibility: hidden;
	}

	.anim_ready .scroll_anim:not(.block):not(.scroll_bg) {
		transform: translateY(50px);
	}

	.anim_ready .anim_end {
		opacity: 1;
		transition: .75s;
		transition-property: opacity;
	}

	.anim_ready .scroll_anim.anim_end:not(.block):not(.scroll_bg) {
		transform: translateY(0) !important;
		transition-property: opacity, transform;
	}

	.anim_ready .scroll_bg>div {
		position: absolute;
		top: 0;
	}

	.anim_ready .scroll_bg.fix>div {
		position: fixed;
	}


/* ----------------------------------------
	section_mv
---------------------------------------- */

	#section_mv input {
		display: none;
	}

	#mv_style,
	#mv_style label::before {
		border: solid 0 #444;
	}
	#mv_style {
		display: flex;
		justify-content: center;
		box-sizing: border-box;
		width: 100%;
		padding: 0 20px;
		height: 34px;
		border-bottom-width: 1px;
		background: url(../img/mv_style_bg_sp.png);
	}
	#mv_style label {
		display: flex;
		justify-content: center;
		position: relative;
		width: 50%;
		padding-top: 4px;
	}
	#mv_style label::before {
		content: '';
		opacity: 0;
		position: absolute;
		left: 0;
		right: 0;
		top: 4px;
		bottom: -1px;
		border-width: 1px 1px 0;
		background: #000;
		transition: .2s opacity;
	}

	#mv_input_style_urban:checked~#mv_style .urban::before,
	#mv_input_style_casual:checked~#mv_style .casual::before {
		opacity: 1;
	}

	#mv_style label::after,
	#mv_style label img {
		position: relative;
		margin: auto 0;
	}
	#mv_style label::after {
		content: '';
		width: 16px;
		height: 16px;
		margin-left: 8px;
		background: url(../../common/img/parts_ico_btn_detail_arrow_w.png) 0 / 100% no-repeat;
		transform: rotateZ(90deg);
	}
	#mv_style img {
		width: auto;
		height: 16px;
	}

	#mv {
		padding-top: 60.625%;
	}
	#mv div,
	#mv img {
		visibility: hidden;
		opacity: 0;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 1;
		width: 100%;
		height: 100%;
		transition: .5s;
		transition-property: visibility, opacity;
	}

	#mv_input_style_urban:checked~#mv .urban,
	#mv_input_style_casual:checked~#mv .casual,
	#mv_input_view_fr:checked~#mv .fr,
	#mv_input_view_rr:checked~#mv .rr,
	#mv_input_parts_on:checked~#mv .on,
	#mv_input_parts_off:checked~#mv .off {
		visibility: visible;
		opacity: 1;
		z-index: 2;
	}

	#mv img {
		left: 50%;
		width: auto;
		transform: translateX(-50%);
	}

	#mv_btn {
		display: flex;
		justify-content: center;
		position: absolute;
		z-index: 2;
		bottom: 10px;
		width: 100%;
		text-align: center;
		white-space: nowrap;
		color: #333;
		font-size: 11px;
		line-height: 20px;
	}

	#mv_parts {
		display: flex;
	}
	#mv_parts p {
		margin: auto 5px auto 0;
		color: #fff;
	}
	#mv_parts label {
		box-sizing: border-box;
		width: 54px;
		background: #fff;
	}

	#mv_input_parts_on:checked~#mv_btn .on,
	#mv_input_parts_off:checked~#mv_btn .off {
		line-height: 18px;
		border: solid 1px #fff;
		background: #a42122;
		color: #fff;
	}

	#mv_view {
		margin-left: 15px;
		background: #fff;
	}
	#mv_view label {
		display: flex;
		justify-content: center;
		visibility: hidden;
		opacity: 0;
		position: absolute;
		top: 0;
		z-index: 1;
		width: 110px;
		transition-property: visibility, opacity;
	}
	#mv_view label::before {
		content: '';
		width: 15px;
		height: 20px;
		margin-right: 5px;
		background: url(../img/icon_fr.svg) 0 / 100% no-repeat;
	}

	#mv_input_view_fr:checked~#mv_btn .rr,
	#mv_input_view_rr:checked~#mv_btn .fr {
		visibility: visible;
		opacity: 1;
		position: relative;
		z-index: 2;
	}


/* ----------------------------------------
	section_transform
---------------------------------------- */

	#section_transform .block:last-child {
		padding-bottom: 200px;
	}

	#section_transform .block_title {
		padding: 50px 0 10px;
		text-align: center;
	}
	#section_transform .block_title h3+p {
		margin-top: 15px;
		font-size: 11px;
		line-height: 1.5;
	}

	#section_transform .text_scroll {
		display: inline-block;
		position: relative;
		width: 59px;
		height: 35px;
		margin-top: 50px;
	}
	#section_transform .text_scroll::before {
		content: '';
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 12px;
		background: url(../img/mv_scroll_arrow.svg) 50% / auto 100% no-repeat;
		animation: scroller_sp 1s infinite;
	}

	#section_transform .base,
	#section_transform .base>div,
	#section_transform .parts,
	#section_transform .parts>div {
		padding-top: 87px;
	}
	#section_transform .base,
	#section_transform .parts {
		position: relative;
		z-index: 1;
		margin-bottom: 60px;
		padding-bottom: 52.08%;
	}
	#section_transform .base>div,
	#section_transform .parts>div {
		width: 100%;
	}
	#section_transform .base>div::before {
		content: '';
		opacity: 0;
		position: absolute;
		z-index: 2;
		width: 100%;
		height: 100%;
		background: 0 0 / 100% no-repeat;
		transition: .5s;
		transition-property: opacity, background;
	}

	#section_transform #transform_base>div::before {
		background-image: url(../img/transform_base_p01.jpg);
	}
	#section_transform:not([data-parts='0']) #transform_base>div::before {
		opacity: 1;
	}
	#section_transform[data-parts='2'] #transform_base>div::before {
		background-image: url(../img/transform_base_p02.jpg);
	}

	#section_transform #transform_base_rear {
		background: none;
		position: absolute;
		width: 100%;
	}
	#section_transform #transform_base_rear>div {
		opacity: 0;
		transition: .5s;
	}

	#section_transform #transform_base_rear.fix>div {
		opacity: 1;
	}

	#section_transform #transform_base_rear>div::before {
		background-image: url(../img/transform_base_rear_p01.jpg);
	}
	#section_transform:not([data-parts='2']) #transform_base_rear>div::before {
		opacity: 1;
	}
	#section_transform[data-parts='4'] #transform_base_rear>div::before {
		background-image: url(../img/transform_base_rear_p02.jpg);
	}

	#section_transform .item {
		z-index: 2;
		padding: 60px 0;
		background: rgba(0,0,0,.75);
	}
	#section_transform .item h4 {
		text-align: center;
		font-size: 16px;
		line-height: 1.5;
	}
	#section_transform .item h4+ul {
		margin-top: 30px;
	}
	#section_transform .item li {
		margin: 0 15px;
	}
	#section_transform .item li+li {
		margin-top: 40px;
	}
	#section_transform .item li>div {
		margin-top: 20px;
	}
	#section_transform .item h5 {
		font-size: 14px;
	}
	#section_transform .item p {
		margin-top: 15px;
		font-size: 11px;
		line-height: 2;
	}

	#section_transform .parts .fx {
		visibility: hidden;
		opacity: 0;
		position: absolute;
		left: 0;
	}

	#section_transform[data-parts='1'] #transform_parts01 .fx,
	#section_transform[data-parts='2'] #transform_parts02 .fx,
	#section_transform[data-parts='3'] #transform_parts03 .fx,
	#section_transform[data-parts='4'] #transform_parts04 .fx {
		visibility: visible;
	}

	#section_transform .parts.fix>div .fx {
		animation: 1.5s parts_anim_pc ease-in 3;
	}

	#section_transform .link {
		padding-top: 40px;
	}
	#section_transform .link+.link {
		padding-top: 20px;
	}
}

@-webkit-keyframes scroller_sp {
	0% { bottom: 0; }
	100% { bottom: -10px; }
}
@keyframes scroller_sp {
	0% { bottom: 0; }
	100% { bottom: -10px; }
}

@-webkit-keyframes parts_anim_sp {
	0%,100% {
		opacity: .1;
	}
	50% {
		opacity: 1;
	}
}
@keyframes parts_anim_sp {
	0%,100% {
		opacity: .1;
	}
	50% {
		opacity: 1;
	}
}