@charset "utf-8";

/* **********************************************************
	parts_search
********************************************************** */
.parts_contents .box__lead { border: none; margin: 0; padding: 0; }
.parts_contents .box__lead p { text-align: left; }
.btn { text-align: center; margin-top: 45px; }
.btn button { box-sizing: border-box; border-radius: 0; background-color: #7e99a9; border: none; cursor: pointer; color: #ffffff; font-size: 100%; line-height: 2.75; outline: none; position: relative; padding: 0; appearance: none; width: 240px; }
.btn button::before { content: ""; width: 0; height: 0; border-style: solid; border-width: 44px 20px 0 0; border-color: #ffffff transparent transparent transparent; position: absolute; top: 0px; left: 0px; }
.btn button::after { content: ""; width: 0; height: 0; border-style: solid; border-width: 0 0 44px 20px; border-color: transparent transparent #ffffff transparent; position: absolute; top: 0px; right: 0px; }
.btn button:disabled { background-color: #dddddd; cursor: default; }
@media (min-width: 769px) {
.btn button:hover { background-color: #a6bdcb; }
.btn button:disabled:hover { background-color: #dddddd; }
}
@media (max-width: 768px) {
.btn { margin-top: 6.25vw; }
.btn button { font-size: 3.75vw; line-height: 10vw; width: 60vw; }
.btn button::before { border-width: 10vw 5vw 0 0; }
.btn button::after { border-width: 0 0 10vw 5vw; }
}

/* **********************************************************
	parts_section
********************************************************** */
.parts_section { margin-top: 50px; padding-top: 50px; border-top: 1px solid #e5e5e5; }
.parts_section form > ul { margin-top: 40px; }
.parts_section form > ul > li { margin: 40px 0 0 0; padding: 0; }
.parts_section form > ul > li dl { display: flex; }
.parts_section form > ul > li dl dt { color: #87a0af; font-weight: bold; width: 32.2916%; }
.parts_section form > ul > li dl dd { flex: 1; }
.parts_section form > ul > li dl dd ul { display: flex; justify-content: space-between; }
.parts_section form > ul > li dl dd ul li { margin: 0; padding: 0; width: calc(33.3333% - 13px); }
.parts_section input[type="text"] { -webkit-appearance: none; border-radius: 0; box-sizing: border-box; border: 1px solid #e5e5e5; padding: 0.4166vw; width: 100%; }
.parts_section select { border: 1px solid #e5e5e5; outline:none; padding: 2px 0.83vw 2px 0.4166vw; }
.parts_section .error { color: #ff0000; display: none; margin-top: 5px; }
@media (min-width: 1201px) {
}
@media (max-width: 768px) {
.parts_section input[type="text"] { font-size: 16px; }
.parts_section select { font-size: 16px; }
.parts_section { margin-top: 6.25vw; padding-top: 6.25vw; }
.parts_section form > ul { margin-top: 6.25vw; }
.parts_section form > ul > li { margin: 6.25vw 0 0 0; }
.parts_section form > ul > li dl { display: block; }
.parts_section form > ul > li dl dt { width: auto; }
.parts_section form > ul > li dl dd { flex: initial; margin-top: 7px; }
.parts_section form > ul > li dl dd ul { display: flex; justify-content: space-between; }
.parts_section form > ul > li dl dd ul li { margin: 0; padding: 0; width: calc(31% - 5px); }
.parts_section form > ul > li dl dd ul li:nth-of-type(3) { width: calc(38% - 5px); }
}

/* **********************************************************
	parts_search
********************************************************** */
.parts_search {}

/* **********************************************************
	parts_result
********************************************************** */
.parts_result { display: none; position: relative; }
.parts_result .wrap { position: relative; margin: 2.5vw -7.5vw 0 -7.5vw; }
.parts_result .table.result {}
.parts_result .table.head { position: absolute; top: 0px; left: 0px; width: 100%; }
.parts_result .table.head.is-fixed { position: fixed; }
.parts_result .table.head .text__page { padding: 0; }
.parts_result .table.head.is-fixed .text__page { padding: 0 10vw; }
.parts_result .table.head.is-fixed .bg { margin: 0 -7.5vw; }
.parts_result .table table { table-layout: fixed; width: 100%; }
.parts_result .table table thead th { border: 1px solid #e5e5e5; background-color: #ffffff; line-height: 1.2; text-align: center; padding: 5px; }
.parts_result .table table tbody td { border: 1px solid #e5e5e5; background-color: #ffffff; line-height: 1.2; text-align: center; padding: 10px 5px; }
.parts_result .table table tbody td:nth-of-type(9) { text-align: left; }
.parts_result .table table tbody td img { width: 100%; }
.parts_result .table .imgbox { position: relative; }
.parts_result .table .imgbox dl { box-shadow: 0 0 10px 0 rgba(0,0,0,0.2); border-radius: 5px; border: 1px solid #e5e5e5; background-color: #ffffff; display: none; text-align: left; position: absolute; top: -1.6666vw; left: 9.1666vw; padding: 10px; width: 19.1666vw; z-index: 5; }
.parts_result .table .imgbox dl dd { font-size: 0; line-height: 0; margin-top: 5px; }
.parts_result .table a.img { display: block; font-size: 0; line-height: 0; }
.parts_result .table a.pdf { background-color: #7e99a9; color: #ffffff; display: block; line-height: 1.625; text-decoration: none; }
@media (min-width: 769px) {
.parts_result .table a.pdf:hover { background-color: #a6bdcb; }
.parts_result .table.head table { left: 0px !important; }
.parts_result .table a.img:hover + dl { display: block; }
}
@media (min-width: 1201px) {
.parts_result .wrap { margin: 30px -90px 0 -90px; }
.parts_result .table.head.is-fixed .text__page { padding: 0 120px; }
.parts_result .table.head.is-fixed .bg { margin: 0 -90px; }
.parts_result .table .imgbox dl { box-shadow: 0 0 10px 0 rgba(0,0,0,0.2); top: -20px; left: 110px; width: 230px; }
}
@media (max-width: 768px) {
.parts_result .wrap { background-color: #e5e5e5; overflow-x: auto; margin: 6.25vw 0 0 0; }
.parts_result .table table { width: 300%; }
.parts_result .table.head:not(.is-fixed) table { left: 0px !important; }
.parts_result .table.head.is-fixed .text__page { overflow: hidden; margin: 0 6.25vw; padding: 0; }
.parts_result .table.head.is-fixed .bg { margin: 0; }
.parts_result .table.head.is-fixed table { position: relative; }
}

/* **********************************************************
	modal_bg
********************************************************** */
.modal_bg { background-color: rgba(0,0,0,0.5); display: none; position: fixed; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 200; }

/* **********************************************************
	modal_contents
********************************************************** */
.modal_contents { box-sizing: border-box; background-color: #ffffff; display: none; position: absolute; top: 0px; left: 0px; padding: 3.3333vw 4.1666vw 4.1666vw 4.1666vw; width: 800px; max-width: 90vw; z-index: 201; }
.modal_contents.modal_zoomimg { padding: 3.3333vw 1.6666vw 1.6666vw 1.6666vw; width: calc(318px + 1.6666vw + 1.6666vw); }
.modal_contents .modal_close { cursor: pointer; position: absolute; top: 0.8333vw; right: 0.8333vw; width: 2.5vw; height: 2.5vw; }
.modal_contents .modal_close::before { background-color: #7e99a9; content: ""; position: absolute; top: calc(50% - 1px); left: 0px; width: 100%; height: 2px; transform: rotate(45deg); }
.modal_contents .modal_close::after { background-color: #7e99a9; content: ""; position: absolute; top: calc(50% - 1px); left: 0px; width: 100%; height: 2px; transform: rotate(-45deg); }
.modal_contents .modal_title { color: #7e99a9; font-size: 1.6666vw; font-weight: bold; text-align: center; }
.modal_contents .modal_text { box-sizing: border-box; border: 1px solid #eaeaea; padding: 0.8333vw; margin-top: 2.5vw; width: 100%; }
.modal_contents .modal_agree { text-align: center; margin-top: 3.3333vw; }
.modal_contents .modal_agree label { display: inline-block; vertical-align: bottom; }
.modal_contents .modal_agree label input[type="checkbox"] { border: 1px solid #eaeaea; margin: 0 5px 0 0; }
.modal_contents .modal_color { text-align: left; margin-top: -2.5vw; padding-right: 30px; }
.modal_contents .modal_img { position: relative; padding-bottom: 77.044%; margin-top: 10px; }
.modal_contents .modal_img img { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }
@media (min-width: 769px) {
.parts_contents .btn button:hover { background-color: #a6bdcb; }
}
@media (min-width: 1201px) {
.modal_contents { padding: 40px 50px 50px 50px; }
.modal_contents.modal_zoomimg { padding: 40px 20px 20px 20px; width: calc(318px + 40px); }
.modal_contents .modal_close { top: 10px; right: 10px; width: 30px; height: 30px; }
.modal_contents .modal_title { font-size: 2.0rem; }
.modal_contents .modal_text { padding: 10px; margin-top: 30px; }
.modal_contents .modal_agree { margin-top: 40px; }
.modal_contents .modal_color { margin-top: -30px; }
}
@media (max-width: 768px) {
.modal_contents { padding: 5vw 6.25vw 6.25vw 6.25vw; }
.modal_contents.modal_zoomimg { padding: 5vw 3.125vw 3.125vw 3.125vw; width: 90vw; }
.modal_contents .modal_close { top: 1.25vw; right: 1.25vw; width: 5vw; height: 5vw; }
.modal_contents .modal_title { font-size: 125%; }
.modal_contents .modal_text { padding: 2vw; margin-top: 3.125vw; }
.modal_contents .modal_agree { margin: 3.125vw 0 -1.125vw 0; }
}
