@charset "UTF-8";

/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 Reset
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,form,fieldset,input,textarea,p,blockquote,th,td {
	margin: 0;
	padding: 0;
}
address,em {
	font-style: normal;
}
strong,th {
	font-weight: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
hr,legend {
	display: none;
}
h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
}
img,fieldset {
	border: 0;
}
li {
	list-style-type: none;
}
input[type="text"], textarea, input[type="tel"], input[type="email"] {
	appearance: none;
	-webkit-appearance: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
input[type="submit"], input[type="button"], input[type="reset"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration, input[type="reset"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]:focus, input[type="button"]:focus, input[type="reset"]:focus {
	outline-offset: -2px;
}

/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 Common
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

* {
	box-sizing: border-box;
}
body {
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-size: 16px;
	font-weight: 300;
	position: relative;
	color: #222;
}
img {
	width: 100%;
	display: block;
}
a, a:hover {
	color: #1a73e8;
	transition: .3s;
	outline: none;
	text-decoration: none;
}
p b {
	display: block;
}
a[href^="tel:"] {
	pointer-events: none;
}
.pc-hidden {
	display: none;
}
.hidden_obj {
	display: none;
}
@media screen and (max-width: 599px) {
	a[href^="tel:"] {
		pointer-events: auto;
	}
	.pc-hidden {
		display: inherit;
	}
	.sp-hidden {
		display: none;
	}
}

/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 Contents
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

.container {
	width: 100%;
	max-width: 1000px;
	background: #fff;
	position: relative;
	margin: 0 auto;
	/*padding-bottom: 4vw;*/
	overflow: hidden;
}
.front {
	position: relative;
}
.contents {
	width: 100%;
	height: auto;
	position: relative;
}
.content.tops {
	position: absolute;
	top: 0;
	left: 0;
}
.content.bottoms {
	position: absolute;
	bottom: 0;
	left: 0;
}
.content img {
	width: 100%;
}
.content-padding {
	padding: 0 4vw;
}
.content-margin {
	margin: 20px 0;
}
.modal {
	width: 100%;
	background: rgba(0,0,0,.6);
	z-index: 999;
	position: relative;
	max-height: 100vh;
	overscroll-behavior: contain;
	overflow-y: scroll;
	scrollbar-width: none;
	-ms-overflow-style: none;
	display: none;
}
.modal.active {
	height: 100vh;
	height: 100dvh;
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	display: block;
	padding: 6vw 0;
}
.modal::before,
.modal::after {
	content: '';
	width: 1px;
	height: calc(100vh + 1px);
	display: flex;
	position: absolute;
	top: 0;
	left: 0;
}
.modal::-webkit-scrollbar {
	display: none;
}
.close {
  width: 8vw;
  height: 8vw;
  position: fixed;
	top: auto;
  bottom: 2vw;
  right: 2vw;
	z-index: 9999;
}
.modal-contents {
	width: 1000px;
	/*width: 88vw;*/
	margin: 0 auto;
	overflow: hidden;
	padding-bottom: 4vw;
	transform: translateX(-100vw);
	transition: .3s ease-out;
}
.modal-contents.active {
	transform: translateX(0);
	transition: .3s ease-out;
}
.modal-contents.padding-none {
	padding-bottom: 0;
}
.bg-fff .modal-contents {
	background: #fff;
}
.hidden {
	display: none;
}
.hidden.nara, .hidden.wakayama {
	display: block;
}

/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 Animation
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

.fade-in-down {
	opacity: 0;
	transform: translateY(-32vw);
}
.fade-in-down.active {
	opacity: 1;
	transform: translateY(0);
	transition: 1s cubic-bezier(0.85, 0, 0.15, 1);
}
.fade-in-down.fade-delay.active {
	transition: .8s cubic-bezier(0.85, 0, 0.15, 1);
}
.fade-in-right {
	opacity: 0;
	transform: translateX(-32vw);
}
.fade-in-right.active {
	opacity: 1;
	transform: translateX(0);
	transition: .8s cubic-bezier(0.25, 1, 0.5, 1);
}
.fade-in-left {
	opacity: 0;
	transform: translateX(32vw);
}
.fade-in-left.active {
	opacity: 1;
	transform: translateX(0);
	transition: .8s cubic-bezier(0.25, 1, 0.5, 1);
}
.zoom-in {
	opacity: 0;
	transform: scale(.4);
}
.zoom-in.active {
	opacity: 1;
	transform: scale(1);
}
.zoom-in-bound {
	opacity: 0;
	animation: bound 1s ease-in 0s both;
}
.zoom-in-soft {
	opacity: 0;
	animation: soft 0.6s ease-out 0s both;
}
.rotate-y {
	transform-origin: center;
	opacity: 0;
	animation: rotate-y .6s ease .4s both;
}
@keyframes rotate-y {
	0% {
		opacity: 1;
		transform: rotateY(90deg);
	}
	100% {
		opacity: 1;
		transform: rotateY(0deg);
	}
}
@keyframes bound {
	0% {
		opacity: 0;
	}
	30% {
		opacity: 1;
		transform: scale(1.6);
	}
	40% {
		transform: scale(1.6);
	}
	55% {
		transform: scale(1);
	}
	70% {
		transform: scale(1.3);
	}
	77.5% {
		transform: scale(1);
	}
	85% {
		transform: scale(1.15);
	}
	88.75% {
		transform: scale(1);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}
@keyframes soft {
	0% {
		opacity: 0;
	}
	60% {
		opacity: .4;
		transform: scale(1.2);
	}
	90% {
		opacity: 1;
		transform: scale(1.2);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}

/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 Adjust
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

.button-area {
	padding: 0 4vw;
}
.button-area .button {
	margin: 0;
}
.content.bargain-01-01 {
	top: calc(28.4vw * 0.88);
}
.contents.bargain-top-adjust {
	margin-top: -5.12vw;
}
.contents.bargain-sec-adjust {
	/*margin-top: 6.4vw;*/
}
.rakumaru-link {
	width: 81.664vw;
	height: 93.28vw;
	position: absolute;
	top: 0;
	left: 3.168vw;
	display: block;
}
.nbox-site-link {
	width: 76.736vw;
	height: 10.736vw;
	position: absolute;
	top: 85.272vw;
	left: 5.632vw;
	display: block;
}
.nbox-form-link {
	width: 79.112vw;
	height: 22vw;
	position: absolute;
	top: 102.696vw;
	left: 4.444vw;
	display: block;
}
.service-coupon {
	position: absolute;
	top: 29.92vw;
	left: 0;
}
.service-coupon .content {
	margin: 0 0 2.464vw;
}
.service-link {
	width: 100%;
	height: 160px;
	position: absolute;
	bottom: 20px;
	left: 0;
	display: block;
}
.network-link {
	position: absolute;
	top: 39.6vw;
	left: 0;
}
.network-link a {
	width: 81.664vw;
	height: 10.912vw;
	margin: 0 auto 2.282vw;
	display: block;
}
.used-cars {
	padding: 50px 0;
	/*margin-bottom: 4vw;*/
	background-color: #d2f0f0;
}
.used-cars .contents {
	margin-top: -4.7%;
}
.usedcar-link {
	width: 81.752vw;
	height: 10.648vw;
	position: absolute;
	top: 83.6vw;
	left: 3.124vw;
	display: block;
}
.credit-link {
	padding: 3.96vw 0 0;
}
.credit-link a {
	width: 80.784vw;
	height: 10.56vw;
	position: absolute;
	top: 3.96vw;
	left: 3.608vw;
	display: block;
}
.odyssey-link {
	width: 68.32vw;
	height: 10.648vw;
	position: absolute;
	bottom: 3.256vw;
	left: 4.84vw;
}
.usedcar-price {
	width: 43%;
	/*height: 14.08vw;*/
	position: absolute;
	bottom: 26%;
	left: 16%;
}
.usedcar-price.total {
	width: 32.208vw;
	left: 49.28vw;
}

@media screen and (max-width: 599px) {
	.modal-contents {
		width: 88vw;
	}
}