.lower header {
	position: sticky;
	background: #020E19;
	box-shadow: 0 3px 8px #000000a8;
}

.lower h1 {
	position: absolute;
	font-weight: 500;
	color: #fff;
	top: calc(50% - 21px);
}

.title {
	text-align: center;
	margin-bottom: 1.5rem;
}

.lowerTop.top {
	background-size: cover;
	height: 420px;
}

/*company*/
.company .top {
	background: url(../images/company.png) no-repeat center;
}

.lower.company h1 {
	left: calc(50% - 2em);
}

.about {
	padding: 4em 0;
}

.companyTable {
	width: 100%;
}

.companyTable th,
.companyTable td {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 600;
	padding: 1em;
	border-bottom: 1px solid #020E19;
}

.companyTable th {
	width: 18%;
	background: #EDF4F9;
}

.companyTable li {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 600;
}

.companyTable ul.point {
	list-style: '・';
	list-style-position: inside;
}

.companyTable ul.point li {
	margin-left: 1em;
	text-indent: -1em;
}

.companyTable td div {
	margin-bottom: 15px;
}

.companyTable td div p {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 600;
}

.companyTable td .btn {
	margin-top: 10px;
}

.companyTable ul.row li {
	display: inline-block;
	margin-right: 0.5em;
}

.companyTable ul.row li:last-child {
	margin: 0;
}

.companyTable td img {
	max-width: 100%;
}

.philosophy {
	margin-top: 4rem;
}

.pBox {
	margin-bottom: 2rem;
}

.pBox .title {
	margin-bottom: 0.75rem;
}

.pBox h3 {
	text-align: left;
	border-left: 3px solid #020E19;
	padding-left: 0.5em;
}

.profile .col2 .img {
	width: 30%;
}

.profile .col2 .txt {
	width: 50%;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.profile .col2 .img img {
	width: 100%;
}

.profile .col2 {
	align-items: center;
	justify-content: center;
	gap: 10%;
	margin: 4em 0;
}

.profile .col2 .txt p {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 600;
	text-align: justify;
}

.sdgs {
	width: 90%;
	margin: 0 auto;
	margin-bottom: 4em;
}

.sdgs .title {
	text-align: left;
}

.sdgs p {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 600;
	text-align: justify;
}

@media screen and (max-width: 726px) {
	.company .top {
		height: 50vw;
	}

	.about {
		padding: 2em 0;
	}

	.companyTable tr {
		display: flex;
		flex-direction: column;
		border-bottom: 1px solid #020E19;
	}

	.companyTable th,
	.companyTable td {
		border: none;
		width: 100%;
		font-size: 0.9rem;
	}

	.companyTable th br {
		display: none;
	}

	.companyTable li {
		font-size: 0.9rem;
	}

	.pBox li {
		font-size: 0.8rem;
	}

	.profile .col2 {
		flex-direction: column;
		gap: 1.5rem;
		margin: 2em 0;
	}

	.profile .col2 .img,
	.profile .col2 .txt {
		width: 100%;
	}

	.profile .col2 .txt {
		gap: 0.75rem;
	}

	.sdgs {
		width: 100%;
		margin-bottom: 2em;
	}
}

/*about*/
.aboutL .top {
	background: url(../images/about.png) no-repeat center;
}

.lower.aboutL h1 {
	left: calc(50% - 2em);
}

.aboutBtnCon {
	color: #fff;
	display: flex;
	justify-content: center;
}

.aboutTop {
	background: #020E19;
	margin: 2rem 0;
}

.aboutBtn {
	width: 20%;
	text-align: center;
	transition: .5s;
	padding: 1em 0.25em;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.aboutBtn:after {
	display: block;
	font-family: 'Material Symbols Sharp';
	content: '\e5c5';
	font-size: 1.5rem;
	line-height: 1em;
}

.aboutBtn.board {
	background: url(../images/about01-1.png);
	background-size: cover;
	background-color: rgb(2 14 25 / 85%);
	background-blend-mode: overlay;
}

.aboutBtn.board:hover {
	background-color: rgb(2 14 25 / 50%);
}

.aboutBtn.kitchen {
	background: url(../images/about02-1.png);
	background-size: cover;
	background-color: rgb(2 14 25 / 85%);
	background-blend-mode: overlay;
}

.aboutBtn.kitchen:hover {
	background-color: rgb(2 14 25 / 50%);
}

.aboutBtn.reform {
	background: url(../images/about03-1.png);
	background-size: cover;
	background-color: rgb(2 14 25 / 85%);
	background-blend-mode: overlay;
}

.aboutBtn.reform:hover {
	background-color: rgb(2 14 25 / 50%);
}

.aboutBtn.interior {
	background: url(../images/about04-1.png);
	background-size: cover;
	background-color: rgb(2 14 25 / 85%);
	background-blend-mode: overlay;
}

.aboutBtn.interior:hover {
	background-color: rgb(2 14 25 / 50%);
}

.aboutBtn.renovation {
	background: url(../images/about05-1.png);
	background-size: cover;
	background-color: rgb(2 14 25 / 85%);
	background-blend-mode: overlay;
}

.aboutBtn.renovation:hover {
	background-color: rgb(2 14 25 / 50%);
}

.aboutLCon .inner {
	background: #fff;
	padding: 2rem;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	box-shadow: 0px 0px 8px #0000004d;
}

.aboutLCon h2 {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.aboutLCon h2 img {
	width: 1.8rem;
}

.aboutLCon h3 {
	border-left: 3px solid #020E19;
	margin-bottom: 0.5rem;
	padding-left: 0.5em;
}

.wrap.aboutL {
	background: #e4eef4;
	background: linear-gradient(90deg, #e4eef4 0%, #fff 100%);
}

.lower .lead {
	color: #020e19;
	background: none;
	text-align: justify;
	padding: 0;
}

.lower .lead:before {
	display: none;
}

.aboutLCon {
	margin-bottom: 3rem;
}

.aboutLCon .imageBox {
	display: flex;
	justify-content: space-evenly;
	margin-top: 1rem;
}

table.reformTable {
	width: 100%;
	margin-top: 1rem;
}

.reformTable th,
.reformTable td {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	border: 1px solid #020E19;
	padding: 0.25rem 0.5rem;
}

table.reformTable thead th {
	background: #EDF4F9;
	font-weight: bold;
	text-align: center;
}

.aboutLBox .merit li {
	display: flex;
	align-items: center;
	gap: 0.25rem;
	font-size: 1.15rem;
	line-height: 3rem;
}

.aboutLBox .merit li span {
	color: #DEAB2F;
	font-size: 2.5rem;
}

.flowBox {
	width: 80%;
	text-align: center;
}

.flow {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 1.5rem 0;
}

.flowBox p {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: bold;
	background: #e2f3fd;
	padding: 0.5rem 0;
	font-size: 1.25rem;
}

.flowBox:after {
	display: block;
	font-family: 'Material Symbols Sharp';
	content: '\e5c5';
	font-size: 36px;
	margin: 0.25rem 0;
}

.flowBox:last-child:after {
	display: none;
}

@media screen and (max-width: 726px) {
	.aboutL .top {
		height: 50vw;
	}

	.aboutBtnCon {
		display: flex;
		flex-direction: column;
	}

	.aboutBtn {
		width: 100%;
	}

	.aboutTop .inner {
		padding: 0;
	}

	.aboutLCon .inner {
		width: 95vw;
	}

	.reformTable th,
	.reformTable td {
		font-size: 0.8rem;
	}

	.flowBox {
		width: 100%;
	}
}

/*access*/
.access .top {
	background: url(../images/access.png) no-repeat center;
}

.lower.access h1 {
	left: calc(50% - 2em);
}

.wrap.access {
	background: #e4eef4;
	background: linear-gradient(90deg, #e4eef4 0%, #fff 100%);
}

.mapWrap {
	margin-top: 3rem;
}

.mapCon {
	padding-top: 100px;
	margin-top: -100px;
}

.mapCon iframe {
	height: 500px;
}

.mapCon p {
	text-align: center;
	font-size: 1.15rem;
	margin-top: 1rem;
}

@media screen and (max-width:726px) {
	.access .top {
		height: 50vw;
	}
}

/*news*/
.newsL .top {
	background: url(../images/news.png) no-repeat center;
}

.lower.newsL h1 {
	left: calc(50% - 2em);
}

.newsListL .newsList .newsList-li {
	font-size: 20px;
	border-bottom: 1px solid #020E19;
	padding: 0.5em;
	line-height: 2em;
}

.newsListL .newsList .newsList-li a {
	display: flex;
	flex-direction: row;
	transition: .25s;
}

.newsListL .newsList .newsList-li a:hover {
	opacity: .5;
}

.newsListL .newsList .newsList-li .date {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-weight: 500;
	color: #3A4951;
	width: calc(15% - 1em);
	line-height: 2em;
	margin-right: 1em;
}

.newsListL .newsList .newsList-li .title {
	width: 85%;
	display: flex;
	align-items: center;
	margin-bottom: 0;
}

.newsListL {
	padding: 50px 0;
	background: #e4eef4;
	background: linear-gradient(45deg, #e4eef4 0%, #fff 100%);
}

.newsBtnLBox {
	display: flex;
	justify-content: center;
	gap: 15px;
	margin-top: 30px;
}

.newsBtnLBox .newsBtn {
	border: 1px solid #020E19;
	background: #fff;
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.newsBtnLBox .newsBtn.active {
	background: #020e19;
}

.newsBtnLBox .newsBtn.active span {
	color: #fff;
}

.newsBtnLBox .newsBtn a {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: .5s;
}

.newsBtnLBox .newsBtn a:hover {
	opacity: .55;
}

@media screen and (max-width:726px) {
	.newsL .top {
		height: 50vw;
	}

	.newsL .newsList .newsList-li a {
		flex-direction: column;
		align-items: center;
		gap: 0;
	}

	.newsL .newsList .newsList-li .date {
		width: 100%;
		margin: 0;
		text-align: center;
		font-size: 0.75rem;
	}

	.newsL .newsList .newsList-li .title {
		width: 100%;
		text-align: center;
		font-size: 0.95rem;
	}
}

/*works*/
.worksL .top {
	background: url(../images/works.png) no-repeat center;
}

.lower.worksL h1 {
	left: calc(50% - 2em);
}

.wrap.worksL {
	background: #e4eef4;
	background: linear-gradient(90deg, #e4eef4 0%, #fafdff 100%);
}

.tabBox {
	width: 100%;
	display: flex;
	gap: 2%;
	text-align: center;
	border-bottom: 3px solid #020E19;
}

.worksLCon {
	padding: 2rem 0;
}

.tab {
	cursor: pointer;
	width: 49%;
	background: #f1f1f1;
	font-size: 1.1rem;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: .3s;
	padding: 1rem;
}

.tab:hover {
	opacity: .5;
}

.tab.active {
	background: #020E19;
	color: #fff;
}

.tabContent {
	display: none;
	padding: 2rem;
	background: #fff;
}

.worksLFlex {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
	row-gap: 2rem;
}

.worksLBox {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	width: calc(50% - 1rem);
	text-align: justify;
}

.worksLBox .img {
	overflow: hidden;
	padding-top: 20rem;
	margin-bottom: 0.5rem;
	position: relative;
}

.worksLBox .img img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .2s;
}

.worksLBox:hover .img img {
	transform: translate(-50%, -50%) scale(1.1);
}

.worksLBox .txt {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.25rem;
}

p.worksLDate {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 0.8rem;
	font-weight: 500;
	color: #3A4951;
}

p.category {
	display: inline-block;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	font-size: 0.9rem;
	color: #fff;
	background: #deab2f;
	padding: 0.1em 1em;
}

.worksLBox h3 {
	font-size: 1.15rem;
}

@media screen and (max-width:1200px) {
	.tab {
		font-size: 0.9rem;
	}
}

@media screen and (max-width:726px) {
	.worksL .top {
		height: 50vw;
	}

	.tabBox {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 1rem;
		row-gap: 1rem;
		margin-bottom: 1rem;
		border: none;
	}

	.tab {
		width: calc(100% / 2 - 1rem);
		height: 4.5rem;
	}

	.tabContent {
		padding: 1rem;
	}

	.worksLBox h3 {
		font-size: 1rem;
	}

	.worksLBox .img {
		padding-top: 10rem;
	}
}

/*recruit*/
.recruitL .top {
	background: url(../images/recruit.png) no-repeat center;
}

.lower.recruitL h1 {
	left: calc(50% - 2em);
}

.recruitLead {
	padding: 5rem 0;
	text-align: center;
}

.recruitLead h2 {
	margin-bottom: 1rem;
}

.rLcol2 {
	gap: 4%;
	align-items: center;
}

.rLcol2 .img {
	width: 60%;
}

.rLcol2 .img img {
	width: 100%;
}

.rLcol2 .txt {
	width: 36%;
}

.rLcol2 .txt .title {
	text-align: left;
}

.rLcol2 .txt .btnCon {
	justify-content: flex-start;
}

.recruitWorks {
	margin-bottom: 4rem;
}

.jobCategory {
	background: #e4eef4;
	background: linear-gradient(90deg, #e4eef4 0%, #fafdff 100%);
	padding: 3rem 0;
	margin-bottom: 4rem;
}

.jobCatCon {
	display: flex;
	gap: 2%;
	justify-content: space-between;
}

.jobCatBox {
	width: 24%;
	background: #fff;
	border: 1px solid #f1f1f1;
	padding: 1rem;
	transition: .5s;
}

.jobCatBox:hover {
	opacity: .6;
}

.jobCatBox .img {
	overflow: hidden;
	padding-top: 12rem;
	margin-bottom: 0.5rem;
	position: relative;
}

.jobCatBox .img img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.jobCatBox .txt h3 {
	font-size: 1.25rem;
}

.jobCatBox .txt {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.occuBox {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.occu {
	display: inline-block;
	color: #fff;
	background: #020E19;
	padding: 0 0.5rem;
}

.occu02 {
	background: #DEAB2F;
}

.interview {
	margin-bottom: 4rem;
}

.message {
	background: #e4eef4;
	background: linear-gradient(90deg, #e4eef4 0%, #fafdff 100%);
	padding: 3rem 0;
}

.rLcol2m .txt,
.rLcol2m .img {
	max-width: 50%;
}

.rLcol2m .img {
	height: 30rem;
}

.rLcol2m .img img {
	height: 100%;
}

.rLcol2m {
	align-items: center;
	justify-content: center;
	gap: 3%;
}

.rLcol2m .txt {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	text-align: justify;
}

.rLcol2m .txt .btnCon {
	justify-content: flex-start;
}

.entry {
	background: url(../images/recruit03.png);
	padding: 5rem 0;
	text-align: center;
}

.entryBox h2,
.entryBox p {
	color: #fff;
}

.entryBox h2 {
	margin-bottom: 2rem;
	position: relative;
}

.entryBox h2:after {
	content: '';
	display: block;
	width: 2rem;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: -0.75rem;
	left: calc(50% - 1rem);
}

.entryBox .btn {
	width: 290px;
	border-color: #fff;
	background: none;
	color: #fff;
}

.entryBox .btn .material-symbols-sharp {
	color: #fff;
}

.entryBox .btn:hover {
	background: #fff;
	color: #020E19;
}

.entryBox .btn:hover .material-symbols-sharp {
	color: #020E19;
}

@media screen and (max-width:726px) {
	.recruitL .top {
		height: 50vw;
	}

	.recruitL .btnCon {
		display: flex;
	}

	.col2.rLcol2 {
		flex-direction: column;
		gap: 1rem;
	}

	.rLcol2 .img,
	.rLcol2 .txt,
	.rLcol2m .img,
	.rLcol2m .txt {
		width: 100%;
		max-width: inherit;
	}

	.col2.rLcol2m {
		flex-direction: column-reverse;
		gap: 1rem;
	}

	.rLcol2m .img {
		height: 30vh;
		text-align: center;
	}

	.jobCatCon {
		flex-direction: column;
		gap: 1rem;
	}

	.jobCatBox {
		width: 100%;
	}

	.rLcol2m .txt .btnCon {
		justify-content: center;
	}
}

/*privacy*/
.privacy .lead.top h1 {
	position: static;
	color: #020E19;
	font-weight: bold;
	padding: 3rem 0;
}

.privacy .lead.top h1 span {
	display: block;
}

.privacy .lead.top {
	position: static;
	height: auto;
	text-align: center;
}

.privacyBox section {
	margin-bottom: 2rem;
}

.privacyBox h2 {
	font-size: 1.5rem;
	margin-bottom: 0.5rem;
}

@media screen and (max-width:726px) {
	.privacyBox h2 {
		font-size: 1.25rem;
	}
}

/* ******************************************************************************************************
*
* rentacar 202406
*
****************************************************************************************************** */
.rentacar * {
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'メイリオ', Meiryo, 'Helvetica', 'Arial', sans-serif !important;
}

.rentacar .small {
	font-size: 0.9em;
}

/* **************************
* ファーストビュー
************************** */
.rentacar .top {
	background: url(../images/rentacar/pixta_66847603.jpg) no-repeat center / cover;
}

.rentacar .top::after {
	mix-blend-mode: overlay;
	position: relative;
	z-index: 99;
	content: "";
	display: block;
	height: 100%;
	opacity: 0.3;
	background-image: radial-gradient(#000 2px, transparent 2px), radial-gradient(#000 2px, transparent 2px);
	background-size: 10px 10px;
	background-position: 0 0, 5px 5px;
}

.rentacar h1 {
	left: 2em;
	top: 2em;
	font-size: 32px;
	font-weight: bold;
	z-index: 100;
}

/* .wrap.rentacar {
	background: #e4eef4;
	background: linear-gradient(90deg, #e4eef4 0%, #fff 100%);
} */

/* **************************
* main 共通項目
************************** */
.rentacar main img,
.rentacar-confirm main img,
.rentacar-thanksL main img {
	width: 100%;
}

.rentacar main a,
.rentacar-confirm main a,
.rentacar-thanksL main a {
	color: #006289;
}
.rentacar main a:hover,
.rentacar-confirm main a:hover,

.rentacar-thanksL main a:hover {
	opacity: 0.8;
}

.rentacar main h2,
.rentacar-confirm main h2,
.rentacar-thanksL main h2 {
	text-align: center;
	line-height: 90px;
	margin-bottom: 40px;
}

.rentacar main .flex,
.rentacar-confirm main .flex,
.rentacar-thanksL main .flex {
	display: flex;
}

/* **************************
* 各コンテンツ共通
************************** */
.rentacar .cont_box::before {
	content: "";
	display: block;
	border-left: 100vw solid #f0dfa1;
	border-bottom: 100px solid transparent;
}

.rentacar .cont_box.main_bg {
	background-color: #80d5f7;
}

.rentacar .cont_box.main_bg::before {
	border-left-color: #00acf0;
}

.rentacar .cont_box h2::before,
.rentacar .cont_box h2::after {
	content: "";
	display: block;
	width: 110px;
	height: 1px;
	margin: 0 auto;
	background-color: #d9a62f;
}

.rentacar .cont_box h2::after,
.rentacar .cont_box.main_bg h2::after {
	position: relative;
	content: "";
	height: 30px;
	top: -15px;
	background: url(../images/rentacar/line_heading.svg) no-repeat center / contain;
}

.rentacar .cont_box.main_bg h2::before,
.rentacar .cont_box.main_bg h2::after {
	background-color: #fff;
}

.rentacar .cont_box.main_bg h2::after {
	background: url(../images/rentacar/line_heading_w.svg) no-repeat center / contain;
}

.rentacar .cont_box.sub_bg {
	background-color: #f9f2d9;
}

.rentacar .cont_inn {
	width: 1200px;
	margin: 0 auto;
	padding-bottom: 100px;
}

@media screen and (max-width: 1200px) {
	.rentacar .top {
		height: 320px;
	}

	.rentacar h1 {
		font-size: 24px;
	}

	.rentacar main h2,
	.rentacar-confirm main h2,
	.rentacar-thanksL main h2 {
		line-height: 78px;
	}

	.rentacar .cont_inn {
		width: auto;
		padding: 0 20px;
		padding-bottom: 80px;
	}

	.rentacar .cont_box::before {
		border-bottom: 80px solid transparent;
	}
}

@media screen and (max-width: 726px) {
	.rentacar .top {
		height: 210px;
	}

	.rentacar .top::after {
		background-image: radial-gradient(#000 1px, transparent 2px), radial-gradient(#000 1px, transparent 2px);
		background-size: 8px 8px;
		background-position: 0 0, 4px 4px;
	}

	.rentacar main h1,
	.rentacar-confirm main h1,
	.rentacar-thanksL main h1 {
		font-size: 16px;
		left: 1em;
		top: 1em;
	}

	.rentacar main h2,
	.rentacar-confirm main h2,
	.rentacar-thanksL main h2 {
		font-size: 24px;
		line-height: 72px;
		margin-bottom: 1em;
		margin-top: 1em;
	}

	.rentacar .cont_inn {
		padding: 0 10px;
		padding-bottom: 40px;
	}

	.rentacar .cont_box::before {
		border-bottom: 40px solid transparent;
	}
}

/* **************************
* 各コンテンツ 装飾
************************** */
.rentacar .line_box,
.rentacar .fill_box {
	border-radius: 8px;
	padding: 1em;
}

.rentacar .line_box {
	border: 1px solid #99def9;
}

.rentacar .fill_box {
	background-color: #e5f7fd;
}

/* .fill_box */
.rentacar .fill_box ul li+li,
.rentacar .fill_box dd+dt {
	border-top: 2px dotted #33bdf3;
}

/* .line_box */
.line_box .row+.row {
	border-top: 2px dotted #99def9;
}

/* **************************
* リスト 装飾
************************** */
.rentacar dl .row {
	display: flex;
}

.rentacar dl .row+.row {
	margin-top: 1em;
	padding-top: 1em;
}

.rentacar dl .row dt {
	color: #00acf0;
	font-size: 20px;
	width: 32%;
}

.rentacar dl .row dd {
	width: 70%;
}

@media screen and (min-width: 1201px) {

	.rentacar .line_box {
		padding: 3em 5em;
	}
}

@media screen and (max-width: 1200px) {

	.rentacar dl .row dd {
		margin-left: 2em;
	}
}

@media screen and (max-width: 726px) {

	.rentacar dl .row dt {
		font-size: 16px;
	}

	.rentacar dl .row dd {
		margin-left: 0.5em;
	}
}

/* **************************
* ボタンエリア 装飾 .btn_area
************************** */
.rentacar .btn_area {
	background-color: #f9f2d9;
}

.rentacar .btn_area .cont_inn {
	padding-top: 100px;
}

/* **************************
* ボタン 装飾 a.btn
************************** */
.rentacar a.btn {
	position: relative;
	justify-content: flex-start;
	background-color: #006289;
	width: auto;
	padding: 20px;
	border: none;
	border-radius: 4px;
	color: #fff;
	font-size: 20px;
	/* font-weight: 700; */
}

.rentacar a.btn.line_btn {
	background-color: #06c755;
}

.rentacar a.btn:hover {
	opacity: 0.8;
}

.rentacar a.btn::before {
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	background: url() no-repeat center/contain;
	margin-right: 1em;
	font-size: 16px;
}

.rentacar a.btn.phone_btn::before {
	background-image: url(../images/rentacar/ico_phone.svg);
}

.rentacar a.btn.web_btn::before {
	background-image: url(../images/rentacar/ico_web.svg);
}

.rentacar a.btn.line_btn::before {
	background-image: url(../images/rentacar/ico_balloon.svg);
}

/* PC */
@media screen and (min-width: 1201px) {

	/* .rentacar .btn_area .cont_inn { */
	.rentacar .btn_area .btn_wrap {
		padding-top: 100px;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.rentacar a.btn {
		width: calc((100% - 1em) /2);
		height: 60px;
		border-radius: 8px;
		font-size: 24px;
		justify-content: center;
	}

	.rentacar a.btn.web_btn {
		margin-left: 1em;
	}

	.rentacar a.btn.line_btn {
		margin-top: 1em;
	}
}

/* タブレット */
@media screen and (max-width: 1200px) {

	/* .rentacar .btn_area .cont_inn { */
	.rentacar .btn_area .btn_wrap {
		padding-top: 80px;
	}

	.rentacar a.btn+.btn {
		margin-top: 1em;
	}
}

/* スマホ */
@media screen and (max-width: 726px) {
	/* .rentacar .btn_area .cont_inn { */
	.rentacar .btn_area .btn_wrap {
		padding-top: 40px;
	}
}

/* **************************
* えっ!安い!しかも安心! .rc_pickup
************************** */
@media screen and (min-width: 1201px) {
	.rc_pickup .line_box {
		padding: 1em;
	}

	.rc_pickup .cont_list {
		display: flex;
		justify-content: space-between;
	}

	.rc_pickup .cont_list .row {
		display: block;
		width: calc((100% - 3em) / 4);
	}

	.rc_pickup .cont_list .row dt {
		width: auto;
		text-align: center;
	}

	.rc_pickup .cont_list .row dd {
		width: auto;
	}

	.rc_pickup .cont_list .row+.row {
		border-left: 2px dotted #99def9;
		border-top: none;
		margin-top: 0;
		padding-top: 0;
		padding-left: 1em;
	}
}

@media screen and (max-width: 726px) {
	.rc_pickup dl .row {
		display: block;
	}

	.rc_pickup dl .row dt,
	.rc_pickup dl .row dd {
		width: 100%;
	}

	.rc_pickup dl .row dt {
		text-align: center;
		font-size: 20px;
	}

	.rc_pickup dl .row dd {
		margin-left: 0;
	}
}

/* **************************
* 車種・料金 .model_fee
************************** */
.model_fee ul.cont_list+.cont_list {
	border-top: 2px dotted #33bdf3;
}

li.model_box {
	padding: 1em;
	display: flex;
}

li.model_box h3 {
	color: #f35d33;
}

li.model_box h3 span {
	font-weight: 700;
	color: #000;
	padding-right: 0.5em;
}

li.model_box .fee {
	font-size: 24px;
	text-align: right;
}

@media screen and (min-width: 1201px) {
	.model_fee ul.cont_list {
		display: flex;
		justify-content: space-between;
	}

	li.model_box {
		display: block;
		width: calc((100% - 2em) / 3);
	}

	.fill_box ul li.model_box+li {
		border-top: none;
	}
}

@media screen and (max-width: 1200px) {
	li.model_box {
		padding: 1em 0;
	}

	li.model_box .l_box {
		width: 50%;
		margin-right: 1em;
	}

	li.model_box .r_box {
		width: 50%;
	}

	li.model_box h3 {
		font-size: 18px;
	}

	li.model_box .fee {
		font-size: 20px;
	}
}

@media screen and (max-width: 726px) {

	li.model_box .l_box {
		width: 30vw;
		min-width: 100px;
	}

	li.model_box .r_box {
		width: 52vw;
		width: 70vw;
	}

	li.model_box h3 span {
		/* display: block; */
		font-size: 12px;
	}

	li.model_box .fee {
		font-size: 18px;
	}
}

/* **************************
* ご利用案内 .usage_info
************************** */

.usage_info dl .row.ui_rule dd ul li {
	padding-left: 1em;
	text-indent: -1em;
}

@media screen and (max-width: 726px) {
	.usage_info dl .row.ui_rule,
	.usage_info dl .row.ui_flow {
		display: block;
	}

	.usage_info dl .row.ui_rule dt,
	.usage_info dl .row.ui_flow dt {
		width: 100%;
		text-align: center;
		margin-bottom: 0.5em;
	}

	.usage_info dl .row.ui_rule dd,
	.usage_info dl .row.ui_flow dd {
		width: 100%;
		margin-left: 0;
	}

	.usage_info dl .row.ui_flow dd img.sp {
		max-width: 375px;
		margin: 0 auto;
	}
}

/* **************************
* よくあるご質問 .renta_faq
************************** */
.renta_faq dl {
	padding: 0 1em 1em;
}

.renta_faq dl dt,
.renta_faq dl dd {
	padding-left: 1em;
	text-indent: -1em;
}

.renta_faq dl dt {
	margin-bottom: 0.5em;
	color: #00acf0;
	font-size: 18px;
}

.renta_faq dl dd+dt {
	margin-top: 1em;
	padding-top: 1em;
	border-top: 2px dotted #f0dfa1;
}

@media screen and (max-width: 726px) {
	.renta_faq dl dt {
		font-size: 16px;
	}

	.renta_faq dl dd {
		font-size: 14px;
	}
}

/* **************************
* 注意事項 .caution
************************** */
.caution .btn_wrap {
	display: flex;
	justify-content: space-between;
	margin-bottom: 1em;
}

.rentacar .caution .btn_grp {
	width: calc((100% - 30px) / 2);
	}
.rentacar .caution a.btn {
	margin-bottom: 0.5em;
	width: auto;
	}

.caution .txt_wrap {
	padding: 0 1em;
}

.rentacar .caution a.btn {
	background-color: #00acf0;
}

.rentacar .caution a.btn::before {
	content: none;
}

.rentacar .caution a.btn::after {
	position: relative;
	bottom: 2px;
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	margin-left: 1em;
	font-size: 16px;
	background: url(../images/rentacar/ico_blank.svg) no-repeat center/contain;
}

@media screen and (max-width: 1200px) {
	.rentacar .caution a.btn {
		justify-content: space-between;
	}

	.rentacar .caution a.btn::after {
		width: 16px;
		height: 16px;
		margin-left: 0;
	}
}

@media screen and (max-width: 726px) {
	.caution .btn_wrap {
		display: block;
	}
	.rentacar .caution .btn_grp {
		width: auto;

	}

	.rentacar .caution .btn_grp + .btn_grp {
margin-top: 1em;
	}
}

/* **************************
* お問い合わせ・お申し込み .rentacar_form
************************** */
.rentacar_form dl .row dt p,
.rentacar_form dl .row dt p * {
	font-weight: 700;
}

/* フォーム 装飾 */
.rentacar button,
.rentacar input,
.rentacar optgroup,
.rentacar select,
.rentacar textarea {
	background-color: #fff;
	border-radius: 4px;
	border: 1px solid #dddddd;
}

.rentacar input,
.rentacar select,
.rentacar textarea {
	width: 100%;
	padding: 2px 8px;
}

.rentacar input.wpcf7-file {
	background-color: transparent;
	border: none;
}

.rentacar select {
	padding-right: 2em;
}

.rentacar input[type="date"] {
	height: 32px;
}

.rentacar input[type="radio"],
.rentacar input[type="checkbox"] {
	padding: 0;
	border: none;
	background-color: transparent;
	width: 0;
	border-radius: 0;
}

.rentacar .select_wrap span {
	position: relative;
}

.rentacar .select_wrap span::after {
	position: absolute;
	content: '';
	width: 8px;
	height: 8px;
	right: 10px;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	border-bottom: 2px solid #00acf0;
	border-right: 2px solid #00acf0;
	z-index: 1;
}

/* ラジオ 装飾 */
.rentacar .wpcf7-list-item {
	margin-left: 0;
	padding-left: 2em;
}

.rentacar .wpcf7-list-item+.wpcf7-list-item {
	padding-left: 4em;
}

.rentacar .wpcf7-list-item-label {
	position: relative;
	cursor: pointer;
	display: block;

	text-align: left;
}

.rentacar .wpcf7-list-item-label::before,
.rentacar .wpcf7-list-item-label::after {
	content: "";
	display: block;
	border-radius: 50%;
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
}

.rentacar .wpcf7-list-item-label::before {
	border: 1px solid #00acf0;
	border-radius: 50%;
	width: 14px;
	height: 14px;
	left: -25px;
	top: 13px;
	bottom: 0;
	margin: auto;
}

.rentacar .wpcf7-list-item-label::after {
	background-color: #00acf0;
	border-radius: 50%;
	opacity: 0;
	width: 8px;
	height: 8px;
	left: -22px;
	top: 7px;
	bottom: 0;
	margin: auto;
}

.rentacar input:checked+.wpcf7-list-item-label::after {
	opacity: 1;
}

/* チェックボックス装飾 */
.rentacar .check_wrap .wpcf7-list-item-label::before {
	border-radius: 4px;
	left: -30px;
}

.rentacar .check_wrap .wpcf7-list-item-label::after {
	background: none;
	border-radius: 0;
	top: 6px;
	left: -25px;
	transform: rotate(50deg);
	width: 5px;
	height: 9px;
	border-right: 2px solid #00acf0;
	border-bottom: 2px solid #00acf0;
	top: -2px;
	bottom: 0;
	margin: auto;
}

/* 必須項目 */
.rentacar .required {
	display: inline-flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
	font-weight: bold;
}

.rentacar .required::after {
	content: "必須";
	background: #f03400;
	border-radius: 4px;
	padding: 4px;
	color: #ffffff;
	line-height: 1;
	font-weight: 400;
	font-size: 0.8em;
}

/* 確認・送信・修正ボタン */
.rentacar input[type="submit"],
.rentacar input[type="button"] {
	display: block;
	margin: 1em auto;
	width: 100%;
	max-width: 300px;
	padding: 20px;
	background: #f35d33;
	opacity: 1;
	transition: .3s;
	color: #ffffff;
	font-size: 16px;
	line-height: 1em;
	font-weight: 700;
	text-align: center;
}

.rentacar input[type="submit"]:hover,
.rentacar input[type="button"]:hover {
	opacity: 0.8;
}

.rentacar wpcf7-spinner {
	position: absolute;
}

.rentacar .check_wrap {
	width: 60%;
	margin: 2em auto 0;
	/* text-align: center; */
}

.rentacar .wpcf7 form .wpcf7-response-output {
	margin: 0;
	padding: 0;
	border: none;
}

.rentacar .wpcf7-spinner {
	position: absolute;
}

@media screen and (min-width: 1201px) {
	.rentacar .rentacar_form {
		padding: 3em 5em;
	}

	.rentacar .rentacar_form dl .row dd {
		margin-left: 1em;
	}
}

@media screen and (max-width: 726px) {
	.rentacar .rentacar_form dl .row {
		display: block;
	}

	.rentacar .rentacar_form dl .row dt {
		width: auto;
		margin-bottom: 0.5em;
	}

	.rentacar .rentacar_form dl .row dd {
		margin-left: 0;
		width: auto;
	}

	.rentacar textarea {
		height: 10em;
	}

	.rentacar .check_wrap {
		width: auto;
		text-align: left;
	}

	.rentacar input[type="submit"],
	.rentacar input[type="button"] {
		max-width: none;
	}
}

/* **************************
* お問い合わせ・お申し込み　確認画面 .rentacar-confirm
************************** */
.rentacar input[type="button"] {
	background: #fff;
	color: #f35d33;
	margin-bottom: 0;
	margin-top: 2em;
}

.rentacar-confirm main form p br {
	display: none;
}

.rentacar-confirm .required::after {
	content: none;
}

/* **************************
* お問い合わせ・お申し込み　完了画面 .rentacar-thanks
************************** */
.rentacar-thanksL a.btn {
	margin: 0 auto;
	justify-content: center;
}
.rentacar-thanksL a.btn::before {
content: none;
}
.rentacar-thanksL .fill_box p {
	font-size: 20px;
}

.rentacar-thanksL .btn_wrap {
	margin: 2em auto;
}

/* **************************
* 特定商取引法に基づく表示 .tokushoho
************************** */
.rentacar .tokushoho dl .row dt {
	color: #020e19;
}

.tokushoho .line_box .row+.row {
	border: none;
	padding-top: 0;
}

@media screen and (max-width: 726px) {
	.rentacar .tokushoho dl .row {
		display: block;
	}

	.rentacar .tokushoho dl .row dt,
	.rentacar .tokushoho dl .row dd {
		width: 100%;
		margin-left: 0;
	}
}

/* **************************
* 開発用
************************** */
.dummy {
	position: relative;
}

.dummy::before {
	position: absolute;
	content: "dummy image";
	display: block;
	background-color: red;
	bottom: 1em;
	right: 1em;
	padding: 0.5em 2em;
	color: #fff;
	font-size: 12px;
}