@charset "utf-8";

@media screen and (max-width : 768px){
	.section+.section {
		margin-top: 80px;
	}
	.section img,
	.section li a {
		display: block;
	}
	.section h3 {
		margin: 0 25px 30px;
		text-align: center;
		font-size: 23px;
	}
	.section h3 span {
		display: inline-block;
		padding: 0 10px 10px;
		border-bottom: 3px solid #444;
		white-space: nowrap;
	}


/* ----------------------------------------
	mv
---------------------------------------- */

	#mv,
	#mv ul {
		position: relative;
	}
	#mv>p {
		position: absolute;
		left: calc(40 / 750 * 100vw);
		top: calc(200 / 750 * 100vw);
		width: calc(324 / 750 * 100vw);
	}
	#mv li {
		overflow: hidden;
		flex: 1;
		background: 0 50% / 100% no-repeat;
	}
	#mv li:nth-child(1) {
		background-image: url(../img/mv_bg01.png);
	}
	#mv li:nth-child(2) {
		background-image: url(../img/mv_bg02.png);
		margin: calc(4 / 750 * 100vw) 0;
	}
	#mv li:nth-child(3) {
		background-image: url(../img/mv_bg03.jpg);
	}
	#mv li img {
		transform: translateX(-100%);
	}

	#mv.loaded li img {
		transition: .5s .5s transform;
		transform: translateX(0);
	}


/* ----------------------------------------
	section_special
---------------------------------------- */

	#section_special {
		position: relative;
	}
	#section_special>a[name] {
		position: absolute;
		top: 0;
		margin-top: -167px;
	}
	#section_special li a {
		color: inherit;
	}

	#section_special .style {
		padding: 40px 0;
		background: #f7f7f7;
		text-align: center;
	}
	#section_special .style p {
		display: inline-block;
		padding-bottom: 5px;
		border-bottom: 4px solid #d3d3d3;
		font-size: 20px;
	}
	#section_special .style p img {
		display: inline-block;
		width: auto;
		height: 1em;
		margin-right: 5px;
	}
	#section_special .style ul {
		margin-top: 40px;
	}
	#section_special .style li+li {
		margin-top: 15px;
	}
	#section_special .style li a span {
		display: inline-block;
		position: relative;
		margin-top: 15px;
		padding-right: 32px;
		font-size: 18px;
	}
	#section_special .style li a span::after,
	#section_special .function li a::after {
		content: '';
		position: absolute;
		width: 20px;
		background: url(../common/img/parts_ico_btn_detail_arrow.png) 100% 50% / 100% no-repeat;
	}
	#section_special .style li a span::after {
		right: 0;
		top: -1px;
		bottom: -1px;
	}

	#section_special .function {
		margin-top: 40px;
	}
	#section_special .function li+li {
		margin-top: 15px;
	}
	#section_special .function li a {
		display: flex;
		justify-content: flex-end;
		position: relative;
	}
	#section_special .function li a::before,
	#section_special .function li a::after,
	#section_special .function li a span {
		z-index: 2;
	}
	#section_special .function li a::before {
		content: '';
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		border: 1px solid #dcdcdc;
	}
	#section_special .function li:first-child a::before {
		display: none;
	}
	#section_special .function li a::after {
		left: 10px;
		bottom: 20px;
		height: 22px;
	}
	#section_special .function li a span {
		position: absolute;
		left: 10px;
		top: 30px;
		margin-top: -4px;
		font-size: 24px;
		line-height: 32px;
	}
	#section_special .function li img {
		position: relative;
		z-index: 1;
		width: auto;
		height: calc(288 / 750 * 100vw);
	}


/* ----------------------------------------
	section_items
---------------------------------------- */

	#section_items {
		padding: 50px 0;
		background: #f7f7f7;
	}
	#section_items li {
		background: #fff;
	}
	#section_items li+li {
		margin-top: 15px;
	}
	#section_items li a {
		color: inherit;
	}

	#section_items .box {
		padding: 15px;
	}

	#section_items h4 {
		font-family: var(--font-bold);
		font-size: 18px;
		line-height: 24px;
	}
	#section_items h4 small {
		display: block;
		margin-bottom: 5px;
		font-size: 10px;
		line-height: 1;
	}

	#section_items .copy {
		margin-top: 15px;
		font-size: 16px;
		line-height: 24px;
	}

	#section_items .link {
		margin-top: 15px;
		color: #0064a1;
	}
	#section_items .link span {
		display: inline-block;
		padding-right: 26px;
		background: url(../common/img/parts_ico_btn_detail_arrow.png) 100% 50% / 20px no-repeat;
	}

	#section_items .index_bnr {
		margin-top: 40px;
	}
}