@charset "utf-8";
:root {
	--page-black: #2d2d2d;
	--page-light-gray: #f2f2f2;
	--page-red: #ea3032;
	--page-blue: #0049d6;
	--page-green: #56af1a;
	--page-light-green: #f5faf1;
	--page-yellow: #ffff00;
}
.page a {
	color: var(--page-blue);
}
@media screen and (min-width:391px) {
	.page {
		font-size: 1.15em;
		padding: 0 0 2em 0;
		margin: 0 auto;
		width: 940px;
	}
	.page p {
		margin: 1em 0 0 0;
		padding: 0;
	}
	.page p:first-of-type {
		margin: 0;
	}
	.page .sp {
		display: none;
	}
	.page.reserve {
		margin: 0 auto;
		width: calc(100vw * 0.9);
	}
	.page h2 {
		margin: 0 0 2em 0;
		text-align: center;
	}
	.page strong {
		color: var(--page-red);
	}
	.page .intro {
		background-color: var(--page-light-gray);
		padding: 2em;
	}
	.page .intro h3 {
		color: var(--page-gray);
		font-size: 1.95em;
		margin: 0 0 0.25em 0;
		padding: 0;
		text-align: center;
	}
	.page .feature {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 4em;
	}
	.page .feature li {
		align-items: center;
		background-color: var(--page-light-green);
		border: solid 1px var(--page-green);
		border-radius: 8px;
		box-shadow: 3px 3px 0px 0px rgba(86, 175, 26, 1);
		display: flex;
		height: 215px;
		justify-content: center;
		margin: 1em 0;
		width: 300px;
	}
	.page .feature li .num {
		align-items: center;
		background-color: var(--page-green);
		border-radius: 8px;
		display: flex;
		left: -1px;
		height: 35px;
		justify-content: center;
		position: absolute;
		top: -15px;
		width: 116px;
	}
	.page .feature li .num img {
		height: 32px;
		width: 85%;
	}
	.page .feature li > div p:nth-of-type(1) {
		text-align: center;
	}
	.page .feature li .text {
		align-items: center;
		color: var(--page-black);
		display: flex;
		font-size: 1.3em;
		font-weight: bold;
		height: 2em;
		justify-content: center;
		text-align: center;
	}
	.page .case {
		margin-top: 4em;
	}
	.page .case p {
		margin-bottom: 2em;
		text-align: center;
	}
	.page .inquiry {
		margin: 4em 0;
	}
	.page .inquiry h3 {
		background-color: var(--page-black);
		color: #FFF;
		font-size: 1.85em;
		padding: 0.15em 0;
		text-align: center;
	}
	.page .inquiry .howto {
		display: flex;
		justify-content: center;
		margin: 3em auto 0 auto;
		width: 690px;
	}
	.page .inquiry .howto > div {
		align-items: center;
		background-color: var(--page-blue);
		border-radius: 30px;
		box-shadow: 0 5px 0px 0px rgba(0, 34, 145, 1);
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		min-height: 230px;
		width: 330px;
	}
	.page .inquiry .howto > div > div {
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		padding: 10px 0;
	}
	.page .inquiry .howto .consult a {
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.page .inquiry .howto .consult .icon {
		margin-bottom: 1em;
		text-align: center;
		width: 100%;
	}
	.page .inquiry .howto .consult .icon img {
		width: 56px;
	}
	.page .inquiry .howto .consult .text {
		margin: 0;
	}
	.page .inquiry .howto .consult .text span {
		color: #FFF;
		display: block;
		text-align: center;
	}
	.page .inquiry .howto .consult .text span:nth-of-type(1) {
		font-size: 1.45em;
		font-weight: bold;
		line-height: 1.2;
		margin-bottom: 0.15em;
	}
	.page .inquiry .howto .consult .text span:nth-of-type(2) {
		color: var(--page-yellow);
		font-size: 1.75em;
		font-weight: bold;
		line-height: 1.2;
		margin-bottom: 0.5em;
	}
	.page .inquiry .howto .consult .text span:nth-of-type(2)::after {
		background-image: url("select_arrow_y.svg");
		background-position: center right;
		background-repeat: no-repeat;
		background-size: contain;
		content: "";
		display: inline-block;
		height: 0.8em;
		margin-left: 0.25em;
		transform: rotate(-90deg);
		width: 0.8em;
	}
	.page .inquiry .howto .tel {
		padding: 0 25px;
	}
	.page .inquiry .howto .tel > div div:nth-of-type(1) {
		align-items: flex-start;
		display: flex;
		justify-content: space-between;
		width: 100%;
	}
	.page .inquiry .howto .tel > div div:nth-of-type(1) p:nth-of-type(1) {
		color: #FFF;
		font-size: 1.45em;
		font-weight: bold;
		margin: 0;
		padding: 0;
	}
	.page .inquiry .howto .tel > div div:nth-of-type(1) p:nth-of-type(2) {
		color: #FFF;
		border: solid 1px #FFF;
		font-size: 1.1em;
		line-height: 1;
		margin: 0;
		padding: 0.25em 1em;
	}
	.page .inquiry .howto .tel .tel_num {
		margin: 0;
	}
	.page .inquiry .howto .tel .tel_num img {
		width: 100%;
	}
	.page .inquiry .howto .tel .tel_num + p {
		color: #FFF;
		margin: 0.25em 0 0 0;
		text-align: center;
	}
	.page .inquiry .howto .tel .btn {
		background-color: #FFF;
		border-radius: 30px;
		color: var(--page-blue);
		font-size: 1.55em;
		font-weight: bold;
		padding: 0.25em 0;
		text-align: center;
		width: 100%;
	}
	.page .inquiry .howto .tel .btn::after {
		background-image: url("/parts/contents/buy_advice/select_arrow_bl.svg");
		background-position: center right;
		background-repeat: no-repeat;
		background-size: contain;
		content: "";
		display: inline-block;
		height: 0.8em;
		margin-left: 0.25em;
		transform: rotate(-90deg);
		width: 0.8em;
	}
	.page .inquiry .howto .tel .btn a {
		text-decoration: none;
	}
	.page .mailform > div {
		margin-top: 4em;
		transition: all 0.3s 0s ease;
	}
	.page .mailform > div:first-of-type {
		margin-top: 2em;
	}
	.page .mailform > div > div:first-of-type {
		margin-top: 1em;
	}
	.page .mailform h3 {
		color: var(--page-black);
		font-size: 1.55em;
		text-align: center;
	}
	.page .mailform h3 span {
		color: var(--page-red);
		font-size: 0.55em;
		font-weight: normal;
		padding-left: 0.35em;
	}
	.page .mailform h4 {
		color: var(--page-black);
		font-size: 1.25em;
		margin: 0 0 0.5em 0;
	}
	.page .mailform dl {
		border-bottom: solid 1px #c2c2c2;
		display: flex;
		flex-wrap: nowrap;
		justify-content: flex-start;
		margin: 0;
		width: 100%;
	}
	.page .mailform .confirm dl {
		display: block;
	}
	.page .mailform .confirm dt {
		background-color: transparent;
		padding: 0;
		width: 100%;
	}
	.page .mailform .confirm dd {
		min-height: inherit;
		padding: 0;
		width: 100%;
	}
	.page .mailform dl:first-of-type {
		margin-top: 1em;
	}
	.page .mailform dl:last-of-type {
		border-bottom: none;
	}
	.page .mailform dt {
		align-items: center;
		background-color: var(--page-light-gray);
		display: flex;
		flex-wrap: wrap;
		font-weight: bold;
		padding: 1em;
		width: 25%;
	}
	.page .mailform dd {
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		min-height: 5em;
		padding: 1.5em;
		width: 75%;
	}
	.page.reserve .mailform dd {
		margin: 0;
	}
	.page .mailform dd p {
		margin: 0.5em 0;
	}
	.page .mailform dd p:first-child {
		margin-top: 0;
	}
	.page .mailform dd p:last-child {
		margin-bottom: 0;
	}
	.page .mailform dt.required::after {
		background-color: transparent;
		content: "*";
		color: var(--page-red);
		font-weight: normal;
		font-size: 0.8em;
		margin: 0 0 0 0.3em;
	}
	.page .mailform .pc_info > div {
		margin-bottom: 1em;
	}
	.page .mailform .acc {
		align-items: center;
		background-color: var(--page-black);
		border-radius: 10px;
		color: #FFF;
		display: flex;
		justify-content: space-between;
		flex-wrap: nowrap;
		font-size: 1.15em;
		padding: 0.35em 1em;
	}
	.page .mailform .acc::after {
		content: "";
		background-image: url("/parts/contents/buy_advice/select_arrow_w.svg");
		background-position: right center;
		background-repeat: no-repeat;
		background-size: contain;
		display: block;
		width: 1.7em;
		height: 0.8em;
	}
	.page .mailform .acc.close::after {
		transform: rotateX(180deg);
	}
	.page .mailform .acc + div {
		margin-top: 1em;
	}
	.page .mailform p.close {
		text-align: right;
		margin: 1em 0 0 0;
	}
	.page .mailform .caution {
		border: solid 1px var(--page-red);
		padding: 1.5em;
		margin: 2em 0 0 0;
	}

	/* フォーム関連 */
	.page input[type="email"],
	.page input[type="tel"],
	.page input[type="text"],
	.page input[type="button"],
	.page textarea {
		width: 100%;
	}
	.page input[type="radio"],
	.page input[type="checkbox"] {
		margin-right: 0.35em;
	}
	.page select {
		appearance: none;
		background-image: url(select_arrow_gr.svg);
		background-position: center right 0.5em;
		background-repeat: no-repeat;
		background-size: 1em;
		border: solid 1px var(--page-black);
		border-radius: 5px;
		font-size: 1em;
		margin: 0.3em 0;
		padding: 0.15em 0.3em;
		width: 100%;
	}
	.page select option {
	}
	.page input[type="button"],
	.page input[type="email"],
	.page input[type="tel"],
	.page input[type="text"],
	.page button,
	.page textarea {
		border: solid 1px var(--page-black);
		border-radius: 5px;
		font-size: 1em;
		padding: 0.15em 0.5em;
		margin: 0 0.5em 0 0;
		width: 100%;
	}
	.page label {
		margin: 0.35em 0;
		width: 100%;
	}
	.page .mailform .submit {
		background: linear-gradient(rgba(0,73,214,1),rgba(0,73,214,1));
		border-radius: 30px;
		border-bottom: solid 6px #002291;
		color: #FFF;
		cursor: pointer;
		display: block;
		font-size: 1.75em;
		font-weight: bold;
		margin: 2em auto 0 auto;
		padding: 0.25em 0;
		text-align: center;
		text-shadow: none;
		width: 40%;
	}
	.page .mailform .reset {
		background-color: transparent;
		border: none;
		color: var(--page-blue);
		display: block;
		margin: 1.5em auto 0 auto;
		text-align: center;
		text-decoration: underline;
	}

	/* サンクスページ */
	.mfp_thanks.page {
		margin: 2em auto;
		width: 95%;
	}
	.mfp_thanks.page .link {
		margin-top: 1.5em;
		text-align: center;
	}
	#mfp_thanks {
		margin-bottom: 1em;
	}
}
@media screen and (max-width:390px) { 
	.page {
		font-size: 0.85em;
		padding-bottom: 2em;
		width: 100%;
	}
	.page * {
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
	}
	.page p {
		margin: 1em 0 0 0;
		padding: 0;
	}
	.page p:first-of-type {
		margin: 0;
	}
	.page.reserve {
		margin: 0 auto;
		width: calc(100vw * 0.9);
	}
	.page h2 {
		margin: 0 0 2em 0;
	}
	.page strong {
		color: var(--page-red);
	}
	.page .intro {
		background-color: var(--page-light-gray);
		padding: 2em;
	}
	.page .intro h3 {
		color: var(--page-gray);
		font-size: 1.95em;
		margin: 0 0 0.25em 0;
		padding: 0;
		text-align: center;
	}
	.page .feature {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 3em auto;
		width: 92%;
	}
	.page .feature li {
		align-items: center;
		background-color: var(--page-light-green);
		border: solid 1px var(--page-green);
		border-radius: 8px;
		box-shadow: 3px 3px 0px 0px rgba(86, 175, 26, 1);
		display: flex;
		height: auto;
		justify-content: center;
		margin: 1em 0;
		padding: 2em 0;
		width: 47.5%;
	}
	.page .feature li .num {
		align-items: center;
		background-color: var(--page-green);
		border-radius: 8px;
		display: flex;
		left: -1px;
		height: 35px;
		justify-content: center;
		position: absolute;
		top: -15px;
		width: 116px;
	}
	.page .feature li .num img {
		height: 32px;
		width: 85%;
	}
	.page .feature li > div p:nth-of-type(1) {
		text-align: center;
	}
	.page .feature li .text {
		align-items: center;
		color: var(--page-black);
		display: flex;
		font-size: 1.3em;
		font-weight: bold;
		height: 2em;
		justify-content: center;
		text-align: center;
	}
	.page .case {
		margin: 3em auto;
		width: 92%;
	}
	.page .case p:nth-of-type(1) {
		margin-bottom: 1em;
		text-align: center;
	}
	.page .inquiry {
		margin: 4em 0;
	}
	.page .inquiry h3 {
		background-color: var(--page-black);
		color: #FFF;
		font-size: 1.25em;
		padding: 0.15em 0;
		text-align: center;
	}
	.page .inquiry .howto {
		margin: 3em auto 0 auto;
		width: 90%;
	}
	.page .inquiry .howto > div {
		align-items: center;
		background-color: var(--page-blue);
		border-radius: 30px;
		box-shadow: 0 5px 0px 0px rgba(0, 34, 145, 1);
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.page .inquiry .howto > div > div {
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		padding: 1.5em 0;
	}
	.page .inquiry .howto .consult a {
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.page .inquiry .howto .consult .icon {
		margin-bottom: 1em;
		text-align: center;
		width: 100%;
	}
	.page .inquiry .howto .consult .icon img {
		width: 56px;
	}
	.page .inquiry .howto .consult .text {
		margin: 0;
	}
	.page .inquiry .howto .consult .text span {
		color: #FFF;
		display: block;
		text-align: center;
	}
	.page .inquiry .howto .consult .text span:nth-of-type(1) {
		font-size: 1.45em;
		font-weight: bold;
		line-height: 1.2;
		margin-bottom: 0.15em;
	}
	.page .inquiry .howto .consult .text span:nth-of-type(2) {
		color: var(--page-yellow);
		font-size: 1.75em;
		font-weight: bold;
		line-height: 1.2;
		margin-bottom: 0.5em;
	}
	.page .inquiry .howto .consult .text span:nth-of-type(2)::after {
		background-image: url("select_arrow_y.svg");
		background-position: center right;
		background-repeat: no-repeat;
		background-size: contain;
		content: "";
		display: inline-block;
		height: 0.8em;
		margin-left: 0.25em;
		transform: rotate(-90deg);
		width: 0.8em;
	}
	.page .inquiry .howto .tel {
		margin-top: 1em;
		padding: 0 25px;
	}
	.page .inquiry .howto .tel > div div:nth-of-type(1) {
		align-items: flex-start;
		display: flex;
		justify-content: space-between;
		width: 100%;
	}
	.page .inquiry .howto .tel > div div:nth-of-type(1) p:nth-of-type(1) {
		color: #FFF;
		font-size: 1.45em;
		font-weight: bold;
		margin: 0;
		padding: 0;
	}
	.page .inquiry .howto .tel > div div:nth-of-type(1) p:nth-of-type(2) {
		color: #FFF;
		border: solid 1px #FFF;
		font-size: 1.1em;
		line-height: 1;
		margin: 0;
		padding: 0.25em 1em;
	}
	.page .inquiry .howto .tel .tel_num {
		margin: 0;
		width: 100%;
	}
	.page .inquiry .howto .tel .tel_num img {
		width: 100%;
	}
	.page .inquiry .howto .tel .tel_num + p {
		color: #FFF;
		margin: 0.25em 0 0 0;
		text-align: center;
	}
	.page .inquiry .howto .tel .btn {
		background-color: #FFF;
		border-radius: 30px;
		color: var(--page-blue);
		font-size: 1.55em;
		font-weight: bold;
		padding: 0.25em 0;
		text-align: center;
		width: 100%;
	}
	.page .inquiry .howto .tel .btn::after {
		background-image: url("/parts/contents/buy_advice/select_arrow_bl.svg");
		background-position: center right;
		background-repeat: no-repeat;
		background-size: contain;
		content: "";
		display: inline-block;
		height: 0.8em;
		margin-left: 0.25em;
		transform: rotate(-90deg);
		width: 0.8em;
	}
	.page .inquiry .howto .tel .btn a {
		text-decoration: none;
	}
	.page .mailform > div {
		margin: 2em auto 0 auto;
		transition: all 0.3s 0s ease;
		width: 92%;
	}
	.page.reserve .mailform > div {
		width: 100%;
	}
	.page .mailform > div:first-of-type {
		margin-top: 2em;
	}
	.page .mailform > div > div:first-of-type {
		margin-top: 1em;
	}
	.page .mailform h3 {
		color: var(--page-black);
		font-size: 1.55em;
		text-align: center;
	}
	.page .mailform h3 span {
		color: var(--page-red);
		font-size: 0.55em;
		font-weight: normal;
		padding-left: 0.35em;
	}
	.page .mailform h4 {
		color: var(--page-black);
		font-size: 1.25em;
		margin: 0 0 0.5em 0;
	}
	.page .mailform dl {
		border-bottom: solid 1px #c2c2c2;
		margin: 0;
		width: 100%;
	}
	.page .mailform .confirm dl {
		display: block;
	}
	.page .mailform .confirm dt {
		background-color: transparent;
		padding: 0;
		width: 100%;
	}
	.page .mailform .confirm dd {
		min-height: inherit;
		padding: 0;
		width: 100%;
	}
	.page .mailform dl:first-of-type {
		margin-top: 1em;
	}
	.page .mailform dl:last-of-type {
		border-bottom: none;
	}
	.page .mailform dt {
		background-color: var(--page-light-gray);
		font-weight: bold;
		padding: 0.5em 1em;
		width: 100%;
	}
	.page .mailform dd {
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		min-height: 5em;
		padding: 0.5em;
		margin: 0;
		width: 100%;
	}
	.page.reserve .mailform dd {
		margin: 0;
	}
	.page .mailform dd p {
		margin: 0.5em 0;
	}
	.page .mailform dd p:first-child {
		margin-top: 0;
	}
	.page .mailform dd p:last-child {
		margin-bottom: 0;
	}
	.page .mailform dt.required::after {
		background-color: transparent;
		content: "*";
		color: var(--page-red);
		font-weight: normal;
		font-size: 0.8em;
		margin: 0 0 0 0.3em;
	}
	.page .mailform .pc_info > div {
		margin-bottom: 1em;
	}
	.page .mailform .acc {
		align-items: center;
		background-color: var(--page-black);
		border-radius: 10px;
		color: #FFF;
		display: flex;
		justify-content: space-between;
		flex-wrap: nowrap;
		font-size: 1.15em;
		padding: 0.35em 1em;
	}
	.page .mailform .acc::after {
		content: "";
		background-image: url("/parts/contents/buy_advice/select_arrow_w.svg");
		background-position: right center;
		background-repeat: no-repeat;
		background-size: contain;
		display: block;
		width: 1.7em;
		height: 0.8em;
	}
	.page .mailform .acc.close::after {
		transform: rotateX(180deg);
	}
	.page .mailform .acc + div {
		margin-top: 1em;
	}
	.page .mailform p.close {
		text-align: right;
		margin: 1em 0 0 0;
	}
	.page .mailform .caution {
		border: solid 1px var(--page-red);
		padding: 1.5em;
		margin: 2em 0 0 0;
	}

	/* フォーム関連 */
	.page input[type="email"],
	.page input[type="tel"],
	.page input[type="text"],
	.page input[type="button"],
	.page textarea {
		width: 100%;
	}
	.page input[type="radio"],
	.page input[type="checkbox"] {
		margin-right: 0.35em;
	}
	.page select {
		appearance: none;
		background-image: url("/parts/contents/buy_advice/select_arrow_gr.svg");
		background-position: center right 0.5em;
		background-repeat: no-repeat;
		background-size: 1em;
		border: solid 1px var(--page-black);
		border-radius: 5px;
		font-size: 1em;
		margin: 0.3em 0;
		padding: 0.15em 0.3em;
		width: 100%;
	}
	.page select option {
	}
	.page input[type="button"],
	.page input[type="email"],
	.page input[type="tel"],
	.page input[type="text"],
	.page button,
	.page textarea {
		border: solid 1px var(--page-black);
		border-radius: 5px;
		font-size: 1em;
		padding: 0.15em 0.5em;
		margin: 0 0.5em 0 0;
		width: 100%;
	}
	.page label {
		margin: 0.35em 0;
		width: 100%;
	}
	.page .mailform .submit {
		background: linear-gradient(rgba(0,73,214,1),rgba(0,73,214,1));
		border-radius: 30px;
		border-bottom: solid 6px #002291;
		color: #FFF;
		cursor: pointer;
		display: block;
		font-size: 1.75em;
		font-weight: bold;
		margin: 2em auto 0 auto;
		padding: 0.25em 0;
		text-align: center;
		text-shadow: none;
		width: 40%;
	}
	.page .mailform .reset {
		background-color: transparent;
		border: none;
		color: var(--page-blue);
		display: block;
		margin: 1.5em auto 0 auto;
		text-align: center;
		text-decoration: underline;
	}

	/* サンクスページ */
	.mfp_thanks.page {
		margin: 2em auto;
		width: 95%;
	}
	.mfp_thanks.page .link {
		margin-top: 1.5em;
		text-align: center;
	}
	#mfp_thanks {
		margin-bottom: 1em;
	}
}