@charset "utf-8";

/*
Theme Name: 日の丸リムジン
*/
/*---------------------------------------------------------
reset
---------------------------------------------------------*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, input, textarea {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	font-family: 'Noto Sans JP', "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight:300;
	box-sizing:border-box;
	position:relative;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	background-color: #fff;
	-webkit-text-size-adjust: none;
	font-size: 16px;
	color: #000;
	font-weight:500;
	line-height: 1.5;
}

a{/*全体のリンク*/
	color: #e50012;
	outline: none;
}
a:hover {/*マウスが乗っている状態*/
	color:#333;
}
a.black{/*会社概要_深川工場部分*/
	color:#4D4D4D;
	outline: none;
}
a.black:hover {/*マウスが乗っている状態*/
	color:#333;
}
.sp {
	display: none;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}
img{
	max-width:100%;
	vertical-align: top;
}
a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
}
.container{
	max-width:1000px;
	margin:auto;
	position:relative;
}
.aligncenter {
	display: block;
	margin: 0 auto;
}
.alignright { float: right; }
.alignleft { float: left; }

/*---------------------------------------------------------
header
---------------------------------------------------------*/
header{
	display:flex;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100px;
	font-weight:400;
	z-index:999;
	background:#fff;
	transition-duration: 0.5s;
}
header.on{
	box-shadow: 0px 17px 25px -7px rgba(0, 0, 0, 0.39);
}
header a{
	color:#000;
	font-weight:400;
	font-size:16px;
	text-decoration:none;
}
header a small{
	font-weight:400;
	font-size:.8em;
}
@media screen and (min-width: 1000px) and (max-width: 1135px) {
	header a{
		font-size: calc(0.75rem + ((1vw - 10px) * 2.963));
	}
}
header h1{
	display: flex;
	align-items: center;
	max-width:250px;
	width:20%;
}
header h1 img{
	width:100%;
}
nav {
	display: flex;
	flex-direction: column;
	padding:15px;
	width:80%;
}
nav .sub {
	display:flex;
	margin:0 0 15px auto;
}
nav .sub a{
	font-size:12px;
}
nav .sub a.contact{
	background:url("img/mail_ic.png") no-repeat left center / 16px;
	padding-left:20px;
	margin-left:20px;
}

.bogo-language-switcher .current{
	display: none;
}
.bogo-language-switcher li{
	line-height:1;
	text-align: right;
}
.bogo-language-switcher{
	display: flex;
	background:url("img/exchange.png") no-repeat left top 5px / 16px;
	padding-left:20px;
	margin-left:20px;
}

.bogo-language-switcher li:not(:last-child):after{
	content:" ";
	margin:5px;
}
ul.menu{
	display:flex;
	align-items:center;
}
ul.menu li{
	margin-left:1.5em;
}
.drawer_wrap,.drawer_mask,
.drawer_content{
	display:none;
}
/*---------------------------------------------------------
Swiper
---------------------------------------------------------*/
.swiper-container {
	width: 100%;
	height: 100vh;
	max-height:800px;
	margin-top:100px;
	overflow:hidden;
}
.swiper-slide {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
}
.swiper-container .text{
	color:#fff;
	font-size:48px;
	font-weight:600;
	line-height:1.1;
	text-align:right;
	position: absolute;
	bottom: 60px;
	right: 20px;
	z-index: 2;
}
.swiper-container .text strong{
	display:block;
	font-size:1.25em;
	font-weight:900;
	font-feature-settings:"palt";
}
.swiper-container .text span{
	color:#e50012;
}
/*---------------------------------------------------------
What's New
---------------------------------------------------------*/
#wn{
	padding:50px 0 80px;
}
#wn h2{
	font-family: 'Playfair Display', serif;
	font-size:48px;
	font-weight:100;
	text-align:center;
	margin-bottom:40px;
}
#wn ul{
	border-top:1px solid #d4d4d4;
	width:84%;
	margin:auto;
}
#wn ul li{
	border-bottom:1px solid #d4d4d4;
	display:flex;
	justify-content:space-between;
	font-size:14px;
	padding:15px;
}
#wn ul li span{
	display:flex;
	align-items:center;
	width:15%;
}
#wn .date{
	color:#999;
}
#wn a{
	display: block;
	color: #333;
	font-weight:400;
	width: 85%;
}
/*附柳追加*/
iframe[src$=".pdf"]{
    width:100%;
    height:80vh;
}
/*---------------------------------------------------------
top COVID
---------------------------------------------------------*/
#covid{
	border:1px solid #999;
	border-radius:10px;
	padding:20px;
	max-width: 1000px;
	margin: 50px auto 80px;
	position: relative;
}
#covid h3{
	font-size: 2em;
	font-weight: 600;
	margin-bottom: 30px;
	/*text-align:  center;*/
}
#covid ul{
	display:flex;
	flex-wrap:wrap;
}
#covid ul li{
	width:50%;
	margin-bottom:10px;/*20px*/
}
#covid ul li figure{
	display:flex;
	align-items: center;
	margin-right:1em;
	margin-bottom: 5px;/*30px*/
}
#covid ul li figure img{
	width:36px;
	margin-right:1em;
}
#covid ul li figcaption{
	background:none;
	font-size:1em;
	font-weight:400;
	position:relative;
	text-align:left;
	padding:0;
}
#covid dl{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 60px;
}
#covid dl dt:first-child{
	border:0;
	background:none;
	width: 15%;
	padding:0;
	padding-right:3%;
}
#covid dl dt img{
	width:100%;
}
#covid dl dd:nth-child(2) {
	width: 85%;
	border: 0;
	padding: 0;
}
#covid p{
	font-weight: 400;
	line-height: 2;
	margin-bottom: 2em;
}
/*---------------------------------------------------------
top SERVICE
---------------------------------------------------------*/
#top_svc,#top_cln,#rsv{
	padding:50px 0 80px;
}
#top_svc,#rsv{
	color:#fff;
	background:#282828;
}
#top_svc h2,#top_cln h2,#rsv h2{
	font-family: 'Playfair Display', serif;
	font-size:48px;
	font-weight:100;
	text-align:center;
	margin-bottom:40px;
	letter-spacing: 2px;
}
#top_cln.special{
	/*color: #fff;
	background: #282828;*/
	border-bottom:1px solid #282828;
}
#top_svc h2,#rsv h2{
	color:#fff;
}
#top_svc figure,#top_cln , #rsv{
	text-align:center;
}
#top_svc figcaption{
	display:flex;
	flex-direction:column;
	justify-content: center;
	color:#fff;
	font-size:1.25em;
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
}
#top_svc a{
	font-size:.75em;
}
#top_svc a,#top_cln a,#rsv a{
	display:inline-flex;
	justify-content:center;
	align-items:center;
	background:rgba(255,255,255,0.8);
	border:1px solid #999;
	padding:.5em 3em;
	margin:2em auto 0;
}
#top_cln a,#rsv a{
	margin-bottom:30px;
}
#top_svc a:hover,#top_cln a:hover,#rsv a:hover{
	background:#eee;
	text-decoration:none;
}
#rsv p a{
	display:inline;
	background:none;
	border:0;
	padding:0;
	margin:0;
}
#rsv p a:hover{
	background:none;
}
/*---------------------------------------------------------
Page
---------------------------------------------------------*/
#page,#single{
	margin-top:130px;
	padding-bottom:100px;
}
#single h1{
	display:block;
	font-size:2em;
	font-weight:900;
	line-height: 1;
	padding:30px 0 ;
	margin-bottom:30px;
}
#page h2{
	font-size:18px;
	line-height: 1;
	padding:30px 0 ;
}
#page h2 strong{
	display:block;
	font-size:4em;
	font-weight:900;
	margin-left:-4px;
	text-transform: capitalize;
}
#page h3{
	font-size:2em;
	font-weight:600;
	margin-bottom:30px;
}
#page figure{
	margin-bottom:30px;
}
#page figcaption{
	background:#fff;
	font-size:24px;
	font-weight:500;
	padding:18px 40px;
	text-align:center;
	position:absolute;
	bottom:0;
	right:0;
}
#page figcaption span{
	display:block;
	font-size:14px;
	font-weight:400;
}
#page .container article{
	margin:0 4%;
}
#page .container p{
	font-weight:400;
	line-height:2;
	margin-bottom:2em;
}
#page .container dl{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:60px;
}
#page .container dl dt{
	background:#f3f3f3;
	border-bottom:1px solid #999;
	border-right:1px solid #999;
	width:30%;
	text-align:center;
	width: 100px;
}
	padding:10px 0;
}
#page .container dl.company dd,
#page .container dl.company dd:nth-child(2){
	border-bottom:1px solid #999;
	width:70%;
	padding:10px 5%;
}
#page .container dl.company dd:nth-child(2){
	border-top: 1px solid #999;
}
.indent{
	font-size:.85em;
	margin-left:1em;
}
.indent2{
	font-size:.85em;
	margin-left:2em;
}
#page .container dl dt:first-child{
	border-top:1px solid #999;
}
#page .container dl dd:nth-child(2){
	border-top:1px solid #999;
}
#page table.service{
	margin-bottom:60px;
}
#page table.service td{
	padding:1em;
}
#page table.service td:first-child{
	padding-left:0;
}
#page div h3 small{
	font-size: .4em;
	display: block;
}
#page p small{
	font-size:0.8em;
}
#page ul.service{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}

#page ul.service li{
	width:48%;
	margin-bottom:2em;
	display:flex;
	justify-content:space-between;
}
#page ul.service li figure{
	width:40%;
}
#page ul.service li p{
	width:55%;
	display:flex;
	flex-direction:column;
}
#page ul.service li p strong{
	font-weight:600;
}
#page ul.service li p span{
	font-size:.8em;
}
#page ul.service li.limo{
	width:100%;
	flex-wrap:wrap;
}
#page ul.service li.limo p{
	flex:1;
	margin-left:4em;
}
p.note{
	background: #eee;
	text-align: center;
	padding: 1em 0;
}
#page .container div.lede{
	margin-bottom:3em;
}
#page .container h4{
	font-size:1.25em;
	font-weight:600;
	margin-bottom:1em;
}
#page .container div.mg{
	margin:0 0 3em 2em;
}
#page .container div.mg p{
	font-weight:300;
	margin-bottom: 1em;
}
#page .container div.mg ol{
	counter-reset: number;
	padding:0;
	margin:0 0 0 1em;
}
#page .container div.mg ol li {
	list-style-type: none;
	list-style-position:inside;
	margin-bottom:1em;
}

#page .container div.mg ol li::before {
	display: inline-block;
	counter-increment: number;
	content: "(" counter(number) ") ";
	margin-left: -1em;
}
#page .container div.mg ol li ol {
	list-style: none;
	padding: 0;
	margin: 0;
}
#page .container div.mg ol li ol li {
	font-size: 15px;
	line-height: 1.5;
	margin: 15px 0;
	padding-left: 20px;
	position: relative;
}
#page .container div.mg ol li ol li:before {
	content:counter(number);
	border: 1px solid;
	box-sizing: border-box;
	border-radius: 50%;
	height: 16px;
	width: 16px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 4px;
	left: 0;
	font-size: 85%;
	line-height: 1;
	margin-left: 0;
}
#page .container div.mg table{
	margin:1em 0;
}
#page .container div.mg table td{
	border:1px solid #999;
	font-size:.9em;
	padding:5px;
}
#page .container div.mg table td:not(:first-child){
	white-space:nowrap;
}
#page .container #terms dl {
	display: flex;
	flex-wrap: wrap;
	margin:0 0 1em 0;
}
#page .container #terms dl dt{
	width:10%;　
	padding:0;
}
#page .container #terms dl dt:first-child{
	border:0;
	background:none;
	font-weight:500;
}
#page .container #terms dl dd{
	width:87%;
	border:0;
	padding:0;
	margin-left:3%;
}
#page .container #terms div.mg ol{
	padding-left:13%;
}
#eco{
	/*color:#2e9d37;*/
	margin-top:60px;
}
#eco .block{
	border:5px solid #2e9d37;
	border-radius:10px;
	padding:30px 60px;
	margin:auto;
}
#eco figure{
	margin-bottom:0;
}
#eco .block ul{
	display:flex;
	justify-content:space-between;
	text-align:left;
}
#eco .block ul li img{
	height:auto;
}
#eco .block ul li p{
	font-size:.9em;
}
#eco .block ul li:first-child{
	flex:1;
	padding-right:20px;
}
#eco .block ul li:last-child{
	padding-top:2em;
}
/*--------------------------------------
tab
--------------------------------------*/
.tab-wrap{
	margin-bottom: 40px;
}
.tab-group{
	display: flex;
	justify-content: center;
	align-items: center;
	width:100%;
	margin:auto;
}
.tab{
	border:solid 1px #333;
	border-bottom:0;
	cursor: pointer;
	width:calc( 100% / 3);
	text-align:center;
	padding:1em 0;
}
.tab:nth-child(5){
	border-left:0;
}
.tab:nth-child(4){
    border-left:0;
}
.tab:nth-child(2){
	border-right:0;
	border-left:0;
}
.tab:last-child{
	border-left:0;
}
.panel-group{
	border-top:1px solid #000;
}
.panel{
	height:0;
	transition: all 0.5s;
	opacity: 0;
	overflow:hidden;
}
.tab.is-active{
	background:#000;
	color:#FFF;
}
.panel.is-show{
	height:auto;
	opacity:1;
}
.panel table{
	width:100%;
}
.panel table td:first-child{
	width: 18%;
}
.panel .image{
	margin:20px 0;
	text-align:center;
}
.panel table td{
	border-bottom:1px solid #333;
	padding: 2em 0;
}
#page .container .panel table td p{
	font-weight:300;
}
#page .recruit h2{
	font-size:3em;
	font-weight:900;
	text-align:center;
	margin:1em 0;
}
.recruit form{
	padding: 30px;
	background: #fff;
	border: 1px solid #fafafa;
	border-radius: 7px;
	box-shadow: 0 0 7px rgb(0 0 0 / 20%);
}
#page .container .recruit dl dt:first-child {
	border-top: 1px solid #ccc;
}
#page .container .recruit dl dt {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #fff;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
	width: 30%;
	text-align: center;
	padding: 10px;
}
#page .container .recruit dl dt span {
	background: #e50012;
	border-radius: 4px;
	color: #fff;
	font-size: .8em;
	padding: 0px 10px;
	line-height: 2;
}
#page .container .recruit dl dd:nth-child(2) {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	width: 70%;
	padding: 10px 5%;
}
#page .container .recruit dl dd {
	border-bottom: 1px solid #ccc;
	width: 70%;
	padding: 10px 5%;
}
#page input,#page select,#page textarea{
	border:1px solid #ccc;
	border-radius:6px;
	padding:10px;
	box-sizing:border-box;
}
#page textarea{
	width:100%;
}
#page input[type=submit]{
	display: block;
	background: #e50012;
	border: 0;
	color: #fff;
	font-weight: 600;
	font-size: 1.25em;
	width: 300px;
	margin:auto;
	cursor:pointer;
}
#page input[type=submit]:hover{
	opacity:0.8;
}
small.car{
	display:block;
	line-height:1.2;
	font-size:.8em;
}
ul.cars{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
ul.cars li.ttl{
	width:100%;
	font-size:1.5em;
	font-weight:600;
	margin-top: 60px;
}
ul.cars li{
	background:#eee;
	width:48%;
	margin-bottom:30px;
}
ul.cars figure{
	margin-bottom:0;
}
ul.cars figure img{
	height:auto;
}
#page ul.cars figcaption{
	background:#eee;
	font-size:0.9em;
	font-weight: 300;
	padding: 10px;
	text-align: left;
	position:relative;
}
#page ul.cars figcaption td:first-child{
	white-space:nowrap;
	width:40%;
}
#page ul.cars figcaption td strong{
	display:block;
}
#page ul.cars figcaption td small{
	display:block;
	margin-bottom: -1em;
}
#page ul.cars figcaption td:nth-child(2){
	width:25%;
}
#page ul.cars figcaption td:last-child{
	width:35%;
	padding-left:5%;
}
#page ul.cars figcaption td img{
	width:100%;
}
#page ul.cars figcaption td .man{
	display:inline-block;
	background:url("img/man.svg") no-repeat left center / 10px;
	padding-left:12px;
}
#page ul.cars figcaption td .bag{
	display:inline-block;
	background:url("img/bag.svg") no-repeat left center / 16px;
	padding-left:20px;
	margin-left:1em;
}
#page ul.cars figcaption td .golf{
	display:inline-block;
	background:url("img/golf.svg") no-repeat left center / 25px;
	padding-left:20px;
	
}
.facility span{
	display:block;
	padding-left:20px;
}
span.usb{
	display:block;
	background:url("img/usb.svg") no-repeat left center / 16px;
	padding-left:20px;
}
span.monitor{
	display:block;
	background:url("img/pc.svg") no-repeat left center / 16px;
	padding-left:20px;
}
/*附柳追加*/
span.type-c{
	display:block;
	background:url("img/type-c.svg") no-repeat left center / 30px;
	padding-left:35px;
}
/*附柳追加*/
span.waiyares{
	display:block;
	background:url("img/waiyares.svg") no-repeat left center / 40px;
	padding-left:35px;
}
main{
	display:flex;
	margin-bottom:30px;
}
#page main figure{
	width:64%;
	margin-right:2%;
	margin-bottom:0;
}
main table{
	width:30%;
}
main strong{
	display:block;
	font-size:2em;
	font-weight:600;
}
main small{
	display:block;
	font-size:1.25em;
	font-weight:400;
}
main .man{
	display:inline-block;
	background:url("img/man.svg") no-repeat left center / 16px;
	font-size:1.25em;
	line-height:2em;
	padding-left:24px;
}
main .bag{
	display:inline-block;
	background:url("img/bag.svg") no-repeat left center / 24px;
	font-size:1.25em;
	line-height:2em;
	padding-left:36px;
	margin-left:1em;
}
main .golf{
	display:inline-block;
	background:url("img/golf.svg") no-repeat left center / 38px;
	font-size:1.25em;
	line-height:2em;
	padding-left:36px;
	
}
/*附柳追加
main .type-c{
	display:inline-block;
	background:url("img/type-c.svg") no-repeat left center / 38px;
	font-size:1.25em;
	line-height:2em;
	padding-left:36px;
	
}*/

main .size{
	line-height:2;
}
main td img{
	width:120px;
}
main td a{
	border:1px solid #ccc;
	padding: 0.5em 1em;
}
main tr:last-child td{
	vertical-align:middle;
}
#page.car_detail .container dl{
	display:block;
}
#page.car_detail .container dl dt{
	background:none;
	border:0;
	width:100%;
	padding:0;
}
#page.car_detail .gallery img{
	border:0!important;
}
#page a.contact{
	display:table;
	border: 1px solid #999;
	padding: 0.5em 1em;
	margin:auto;
}
#page a.contact:hover{
	background:#eee;
	color:#333;
	text-decoration: none;
}
#page .covid{
	border:1px solid #999;
	border-radius:10px;
	padding:20px;
	margin:100px 0;
}
#page .covid ul{
	display:flex;
	flex-wrap:wrap;
}
#page .covid ul li{
	width:50%;
	margin-bottom:20px;
}
#page .covid ul li figure{
	display:flex;
	align-items: center;
	margin-right:1em;
}
#page .covid ul li figure img{
	width:36px;
	margin-right:1em;
}
#page .covid ul li figcaption{
	background:none;
	font-size:1em;
	font-weight:400;
	position:relative;
	text-align:left;
	padding:0;
}
#page .covid dl dt:first-child{
	border:0;
	background:none;
	width: 15%;
	padding:0;
	padding-right:3%;
}
#page .covid dl dt img{
	width:100%;
}
#page .container dl dd,
#page .container dl dd:nth-child(2){
	width: 85%;
	border:0;
	padding:0;
}
#page .container dl.company dt{
	display:flex;
	align-items:center;
	justify-content: center;
	width:30%;/*元々20% 20221005に箱根モビリティサービス株式会社を入れるため比率変更*/
	padding:1em;
}
#page .container dl.company dd{
		display:flex;
	flex-direction: column;
	    border-bottom: 1px solid #999;
	width:70%;/*元々80%*/
	padding:1em;
}
/*#page .container dl.company1 dt{
	display:flex;
	align-items:center;
	justify-content: center;
	width:20%;
	padding:1em;
}
#page .container dl.company1 dd{
		display:flex;
	flex-direction: column;
	    border-bottom: 1px solid #999;
	width:80%;
	padding:1em;
}
*/
#page ol.reserve li{
	display:flex;
	ali
	margin-bottom:20px;
}
#page ol.reserve li span{
	font-size: 1.5em;
	margin-right: 1em;
}
#page ol.reserve li figure{
	display:flex;
	align-items: flex-start;
	margin-right:1em;
}
#page ol.reserve li figure img{
	width:36px;
	margin-right:1em;
}
#page ol.reserve li figcaption{
	flex:1;
	background:none;
	font-size:1em;
	font-weight:400;
	position:relative;
	text-align:left;
	padding:0;
}
#page ol.reserve li small{
	font-size:0.8em;
}
table.reserve{
	border:1px solid #000;
	text-align:left;
}
table.reserve th{
	background:#eee;
	border:1px solid #000;
	padding:4px 1em;
}
table.reserve tr:first-child th{
	text-align:center;
}
table.reserve td{
	border:1px solid #000;
	padding:4px 1em;
}
#page div small{
	font-size:0.8em;
}
ul.qa li{
	margin-bottom:3em;
	border-bottom:1px solid #eee;
	padding-bottom:1em;
}
ul.qa li strong{
	display: inline-block;
	margin-bottom: 10px;
	font-size:1.25em;
	font-weight:500;
}
/*---------------------------------------------------------
single
---------------------------------------------------------*/
ul.list_cats{
	display:flex;
	justify-content:center;
	margin:30px 0;
}
ul.list_cats li{
	margin:0 10px;
}
ul.list_cats li:not(:last-child):after{
	content:"/";
	position:absolute;
	right:-10px;
}
li.current-cat a{
	color:#e50012;
	font-weight:600;
}
ul.articles{
	border-top:1px solid #d4d4d4;
	width:84%;
	margin:auto;
}
ul.articles li{
	border-bottom:1px solid #d4d4d4;
	display:flex;
	justify-content:space-between;
	font-size:14px;
	padding:15px;
}
ul.articles li span{
	display:flex;
	align-items:center;
	width:15%;
}
ul.articles li .date{
	color:#999;
}
ul.articles li a{
	display: block;
	color: #333;
	font-weight:400;
	width: 85%;
}
.breadcrumbs {
	font-size: 12px;
	padding-bottom: 5px;
	border-bottom: 1px solid #eee;
	margin-bottom: 30px;
}
/*---------------------------------------------------------
SDGs
---------------------------------------------------------*/
#sdgs {
	font-feature-settings:"palt";
}
.tri{
	color:#fff;
	font-size:2em;
	font-weight:bold;
	text-align:center;
	position:relative;
	padding:1em 0 2em;
	margin-bottom:1em;
}
/*.tri:before{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 120px 30vw 0 28vw;
	border-color: #ff9a9a transparent transparent transparent;
	position:absolute;
	left:0;
	right:0;
	top:-30%;
	margin:auto;
	z-index:-1;
}*/
.tri:before {
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	margin: auto;
	z-index: -1;
	clip-path: polygon(0 0, 100% 0%, 50% 100%);
	background: #ff9a9a;
	width: 100%;
	height: 100%;
}
.bc{
	font-size:2em;
	font-weight:bold;
	text-align:center;
	font-feature-settings: "palt";
}
hr.bd{
	border-top: 1px solid #8c8b8b;
	margin:3em 0;
}
#sdgs h3{
	background:#00a6d8;
	color:#fff;
	font-size:1.25em;
	font-weight:bold;
	padding:1em;
	border-radius:6px;
	border-bottom: solid 6px #3f87ce;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
}
#sdgs h3 span{
	display:block;
	font-size:0.8em;
	padding-left: 1em;
}
#sdgs .tt{
	font-size:2em;
	font-weight:bold;
}
#sdgs .block{
	padding:20px 10px;
	margin-bottom:80px;
}
#sdgs .block figure.badge img{
	margin-right:10px;
}
#sdgs .block ul{
	display:flex;
	flex-wrap:wrap;
}
#sdgs .block ul li{
	display:flex;
	flex-direction: column;
	align-items: center;
	font-size:12px;
	font-weight:400;
	white-space:nowrap;
	width:15%;
	text-align:center;
	margin-right:2%;
}
#sdgs .block ul li:last-child{
	margin-right:0;
}
#sdgs .block ul li figure{
	border: 2px solid #063165;
	width: 100%;
	max-width:135px;
	height: 86px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom:0;
	box-sizing:content-box;
}
#sdgs .block ul li figure img{
	height:auto;
}
#sdgs .block ul li a{
	color:#000;
	width:100%;
}
#sdgs h3.ribbon {
	display: table;
	width:90%;
	position: relative;
	padding: 0;
	line-height:2;
	background: #1176b8;/*背景色*/
	margin:0 auto 40px;
	border:0;
	font-size:2em;
	text-align:center;
	box-shadow:none;
	border-radius: 0;
}

#sdgs h3.ribbon:before {
	position: absolute;
	content: '';
	top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-right: solid 20px #4b6474;/*折り返し部分*/
}

#sdgs h3.ribbon:after {
	position: absolute;
	content: '';
	top: 100%;
	right: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-left: solid 20px #4b6474;/*折り返し部分*/
}
#sdgs h4{
	display: flex;
	align-items: center;
	justify-content:center;
	font-size:2em;
	font-weight:bold;
	color:#30a63f;
	text-align:center;
	margin-bottom:1em;
	font-feature-settings: "palt";
}
#sdgs h4:before,
#sdgs h4:after {
	content: "";
	border-top: 6px dotted #30a63f;
	width:3em;
}
#sdgs h4:before {
	margin-right: 1rem;
}
#sdgs h4:after {
	margin-left: 1rem;
}
#sdgs h5{
	display: flex;
	align-items: center;
	justify-content:center;
	color:#c50e28;
	font-size:1.5em;
	font-weight:bold;
	text-align:center;
	font-feature-settings: "palt";
}
#sdgs h5:before,
#sdgs h5:after {
	content: "★";
}
#sdgs h5:before {
	margin-right: 1rem;
}
#sdgs h5:after {
	margin-left: 1rem;
}
#sdgs h5 a{
	font-size:.8em;
}
#sdgs .badge.fx{
	display:flex;
	justify-content:center;
	margin:20px 0 40px;
}
#sdgs .badge.fx img{
	margin:0 10px;
}
#sdgs .row{
	display:flex;
	flex-wrap:wrap;
	border-bottom: 1px solid #063165;
	line-height: 2;
	padding:2em 0;
	margin-bottom:60px;
}
#sdgs .fxsp{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
#sdgs .fxsp span{
	display:block;
	width:48%;
	font-size:1.25em;
	font-weight:bold;
}
#sdgs .row .pic{
	width:30%;
	text-align: center;
}
#sdgs .row .txt{
	flex:1;
	line-height:2;
	padding-left:2em;
}
#sdgs .row .txt strong{
	font-weight:bold;
}
#sdgs .row .txt strong span{
	color:#1176b8;
	font-weight:bold;
}
#sdgs .indent{
	font-size:1em;
	margin:1em 2em 2em;
}
#sdgs .indent ul{
	display:block;
	list-style:disc;
	margin-left:2em;
}
#sdgs .indent ul li{
	display: list-item;
	font-size: 1em;
	width: 100%;
	text-align: left;
	font-weight: 300;
	margin: 0 0 0.5em;
	list-style: disc inside;
}
#sdgs table.water{
	background:#0075ba;
	color:#fff;
	text-align:center;
	width:100%;
	margin-top:2em;
}
#sdgs table.water td{
	border:1px solid #7daac5;
	font-size:1.25em;
	font-weight:400;
	padding:0.2em;
}
#sdgs table.water a{
	color:#fff;
}
#sdgs .notes strong{
	display:block;
	font-size:2em;
	font-weight:bold;
	margin-bottom:1em;
}
#sdgs .mybt{
	color: #c50e28;
	font-size: 1.5em;
	font-weight: bold;
	text-align:center;
	margin-bottom:0;
}
@media screen and (max-width : 767px){
	.tri{
		background:#ff9a9a;
		font-size: 1.5em;
		padding: 0;
		margin:2em 0 3em;
	}
	.tri:before {
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 30px 45vw 0 45vw;
		border-color: #ff9a9a transparent transparent transparent;
		position: absolute;
		left: 0;
		right: 0;
		top: unset;
		bottom: -30px;
		margin: auto;
		z-index: -1;
		clip-path: unset;
		background: none;
	}
	.bc {
		font-size: 1.5em;
	}
	#page #sdgs h3 {
		font-size: 1.2em;
	}
	
	#sdgs .block figure.badge img {
		margin-right: 10px;
		margin-bottom: 10px;
	}
	#sdgs .block {
		padding: 20px 0;
		margin-bottom: 40px;
	}
	#sdgs .block ul {
		justify-content: center;
	}
	#sdgs .block ul li{
		width:45%;
		margin-bottom:20px;
	}
	#sdgs h5{
		font-size:1em;
	}
	#sdgs .row {
		flex-direction:column;
		padding-top: 0;
		margin-bottom: 30px;
	}
	#sdgs .row .pic {
		width: 100%;
		margin-bottom: 20px;
	}
	#sdgs .row .txt{
		padding-left:0;
		word-break: break-all;
	}
	#sdgs .indent {
		font-size: 1em;
		margin: 1em 1em 2em;
	}
	#sdgs .indent ul li{
		white-space:normal;
		width:100%;
	}
	#sdgs .fxsp span{
		width:100%;
	}
	#sdgs table td{
		font-size:0.8em;
	}
	#sdgs table td:first-child{
		white-space:nowrap;
	}
	#sdgs .mybt{
		font-size: .8em;
	}
}
/*---------------------------------------------------------
footer
---------------------------------------------------------*/
footer{
	background:#000;
	color:#fff;
	text-align:center;
	padding:15px 0 70px;
}
footer a{
	color:#fff;
	font-size:14px;
	text-decoration:none;
}
footer a:hover{
	color:#fff;
	text-decoration:underline;
}
footer .sitename{

	margin: auto;
	font-size:18px;
	font-weight:500;
}
footer .sitename span{
	color:#e50012;
}
footer .sns{
	display:flex;
	justify-content:center;
}
footer .sns a{
	margin:20px;
}
footer .menu{
	display:flex;
	justify-content:center;
}
footer p{
	font-size:10px;
	margin-top:30px;
}
#page_top{
	position: fixed;
	right: 10px;
	cursor:pointer;
}
#page_top:hover{
	opacity:0.8;
}
/*---------------------------------------------------------
menu under 1000
---------------------------------------------------------*/
@media screen and (max-width : 1000px){
	nav{
		display:none;
	}

	header{
		height: 50px;
		justify-content:space-between;
	}
	header h1{
		width:123px;
	}
	.drawer_wrap {
		display: block;
	}
	.drawer_open,
	.drawer_open span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	
	.drawer_open {
		position: absolute;
		top: 5px;
		right: 5px;
		z-index: 999;
		width: 40px;
		height: 40px;
		background: #e50012;
		border-radius: 50%;
		cursor: pointer;
	}
	
	.drawer_open:hover{
		overflow: visible;
	}
	
	.drawer_open span {
		position: absolute;
		left: 0;
		right: 0;
		width: 65%;
		height: 2px;
		margin: auto;
		background-color: #fff;
	}
	
	.drawer_open span:nth-of-type(1) {
		top: 15px;
	}
	
	.drawer_open span:nth-of-type(2) {
		top: 20px;
	}
	
	.drawer_open span:nth-of-type(3) {
		bottom: 13px;
	}
	
	.drawer_wrap.active .drawer_open  span:nth-of-type(1) {
		-webkit-transform: translateY(9px) rotate(-45deg);
		transform: translateY(5px) rotate(-45deg);
	}
	
	.drawer_wrap.active .drawer_open  span:nth-of-type(2) {
		opacity: 0;
	}
	
	.drawer_wrap.active .drawer_open  span:nth-of-type(3) {
		-webkit-transform: translateY(-9px) rotate(45deg);
		transform: translateY(-5px) rotate(45deg);
	}
	.active .drawer_content{
		display:block;
	}
	.drawer_content{
		background-color: #fff;
		width: 60%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 20%;
		z-index: 998;
		transition: all .6s .6s;;
		opacity: 0;
		overflow-y: scroll;
		padding: 60px 0 90px 20px;
		box-sizing: border-box;
	}
	
	.drawer_content ul{
		overflow: hidden;
	}
	
	.drawer_content ul li{
		padding: 10px 0;
		text-align:left;
	}
	
	.drawer_content ul li a{
		color: #000;
		display: block;
		font-size: 16px;
	}
	
	.drawer_content ul li a:hover {
		text-decoration: underline;
	}
	
	.drawer_wrap.active .drawer_content{
		animation: content-fadeIn .6s ease .2s forwards;
		-webkit-animation: content-fadeIn .6s ease .2s forwards;
	}
	
	.drawer_wrap.close .drawer_content{
		animation: content-fadeOut .3s linear forwards;
		-webkit-animation: content-fadeOut .3s linear forwards;
	}
	
	.drawer_wrap.active .drawer_content ul li:nth-child(1){
		animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .7s forwards;
		-webkit-animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .7s forwards;
	}
	
	.drawer_wrap.active .drawer_content ul li:nth-child(2){
		animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .75s forwards;
		-webkit-animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .75s forwards;
	}
	
	.drawer_wrap.active .drawer_content ul li:nth-child(3){
		animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .8s forwards;
		-webkit-animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .8s forwards;
	}
	
	.drawer_wrap.active .drawer_content ul li:nth-child(4){
		animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .85s forwards;
		-webkit-animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .85s forwards;
	}
	.drawer_wrap.active .drawer_content ul li:nth-child(5){
		animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .9s forwards;
		-webkit-animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .9s forwards;
	}
	.drawer_wrap.active .drawer_content ul li:nth-child(6){
		animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .95s forwards;
		-webkit-animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) .95s forwards;
	}
	.drawer_wrap.active .drawer_content ul li:nth-child(7){
		animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) 1s forwards;
		-webkit-animation: content-a-fadeIn .3s cubic-bezier(0.360, 0.100, 0.160, 1.000) 1s forwards;
	}
	.drawer_wrap.active .drawer_content .drawer_sns{
		animation: sns-fadeIn .5s linear 1.15s forwards;
		-webkit-animation: sns-fadeIn .5s linear 1.15s forwards;
		-moz-animation: sns-fadeIn .5s linear 1.15s forwards;
		-o-animation: sns-fadeIn .5s linear 1.15s forwards;
	}
	/*=============== ドロワーアニメーション =============== */
	@keyframes content-fadeIn {
		0% {
			opacity: 0; 
			left: 100%;　
		}
		100% {
			opacity: 1;
			left: 40%;
		}
	}
	
	@-webkit-keyframes content-fadeIn {
		0% {
			opacity: 0; 
			left: 100%;
		}
		100% {
			opacity: 1;
			left: 40%;
		}
	}
	
	@keyframes content-fadeOut {
		0% {
			opacity: 1;
			left: 50%;
		}
		99%{
			opacity: 0;
			left: 65%;
		}
		100% {
			opacity: 0;
			left: 100%;
		}
	}
	
	@-webkit-keyframes content-fadeOut {
		0% {
			opacity: 1;
			left: 50%;
		}
		99%{
			opacity: 0;
			left: 65%;
		}
		100% {
			opacity: 0;
			left: 100%;
		}
	}
	
	
	.drawer_mask{
		position: fixed;
		background: rgba(0,0,0,.8);
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		display: none;
		z-index: 997;
	}
	ul.menu {
		display: block;
	}
	ul.menu li {
		margin-left: 0;
	}
	.drawer_content ul.bogo-language-switcher{
		overflow:visible;
		margin:2em 0;
		padding: 5px 0 5px 20px;
		background-position: left center;
	}
	.container{
		width:92%;
	}
}
/*---------------------------------------------------------
mobile
---------------------------------------------------------*/
@media screen and (max-width : 767px){
	body{
		font-size:15px;
	}
	.pc{
		display:none;
	}
	.sp{
		display:block;
	}
	img{
		height:auto;
	}
	#top_svc ul{
		flex-wrap:wrap;
		width:92%;
		margin:auto;
	}
	#top_svc ul li {
		border-radius: 5px;
		width: 100%;
		padding: 15px;
	}
	#top_svc ul li:not(:last-child){
		margin-bottom:20px;
	}
	#top_svc ul li strong {
		font-size: 24px;
	}
	/*
	.swiper-container{
		height:400px;
		margin-top: 50px;
	}*/
	.swiper-container{
		height: 100%;
		margin-top: 50px;
		aspect-ratio: 16 / 9;
	}
	.swiper-container .text {
		display:block;
		font-size: 20px;
		text-align: center;
		position: absolute;
		bottom: 20px;
		right: 10px;
		margin:auto;
		z-index: 2;
	}
	#top_svc figcaption{
		font-size:12px;
	}
	#wn {
		padding: 30px 0 40px;
	}
	#wn h2 {
		font-size: 36px;
		margin-bottom: 20px;
	}
	#wn ul,ul.articles{
		width:92%;
	}
	#wn ul li,ul.articles li {
		flex-wrap:wrap;
		padding:5px 0 10px;
	}
	#wn a,ul.articles li a{
		width:100%;
		order: 3;
		margin-top: 5px;
	}
	#wn .term:before {
		left: 0;
	}
	#wn .date,ul.articles li span{
		font-size:10px;
		width:50%;
	}
	#wn .term{
		font-size:10px;
		order: 2;
		justify-content: flex-end;
		padding-left: 1em;
	}
	#top_svc {
		padding: 30px 0 40px;
	}
	#top_svc h2 {
		font-size: 40px;
		margin-bottom: 30px;
	}
	#menu-footer li{
		margin-bottom:1em;
	}
	footer a{
		font-size:12px;
	}
	#page {
		margin-top: 60px;
		padding-bottom: 50px;
	}
	#page h2 {
		font-size: 12px;
		padding: 0;
		margin-bottom:15px;
	}
	#page h2 strong {
		font-size: 3em;
		margin-left: -4px;
	}
	#page h3 {
		font-size: 1.8em;
		margin-bottom: 10px;
	}
	#page .container dl{
		font-size:12px;
		margin-bottom:30px;
	}
	#page .container dl dt{
		display: flex;
		align-items: center;
		justify-content: center;
		padding:5px 0;
		width:20%;
	}
	#page .container dl dd {
	
		align-items: center;
		padding: 5px 0 5px 5%;
		width:80%;
		word-break: break-word;
	}
	#page figcaption {
		font-size: 15px;
		padding: 10px 14px;
	}
	#page ul.service li{
		width:100%;
	}
	#page .recruit h2 {
		font-size: 2em;
	}
	#eco .block{
		border: 3px solid #2e9d37;
		border-radius: 5px;
		padding: 15px 15px;
	}
	#eco .block ul {
		flex-direction: column;
	}
	#eco .block ul li:last-child {
		padding-top: 1em;
	}
	#page ul.service li figure {
		width: 30%;
		margin-bottom:0;
	}
	#page ul.service li p {
		width: 67%;
		font-size:.9em;
		line-height: 1.3;
		margin-bottom:0;
	}
	#page ul.service li p strong{
		display:block;
		font-size:1.25em;
		margin-bottom: 10px;
	}
	p.note {
		font-size:.8em;
		padding: 1em;
	}
	#page ul.service li.limo p{
		line-height:3;
		margin:1em 0;
	}
	#page ul.service li p span {
		display: block;
		margin-top: 1em;
	}
	ul.cars li.ttl {
		background:none;
		width: 100%;
		font-size: 1.5em;
		font-weight: 600;
		margin-top: 0;
	}
	ul.cars li {
		width: 100%;
	}
	main{
		flex-direction:column;
	}
	#page main figure {
		width: 100%;
		margin:0;
	}
	main table {
		width: 100%;
	}
	main table tbody{
		display:flex;
		flex-direction: column;
		flex-wrap:wrap;
		justify-content: center;
		align-items: center;
	}
	main table tbody tr:first-child{
		order:1;
		width: 100%;
	}
	main table tbody tr:first-child td{
		display:block;
		text-align:center;
	}
	main small{
		font-size:1em;
	}
	main table tbody tr{
		width:100%;
	}
	main table tbody tr:nth-child(3) td,
	main table tbody tr:nth-child(4) td{
		width:50%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	main table tbody tr:nth-child(2){
		display:flex;
		justify-content: center;
		margin: 10px 0;
		order:2;
	}
	main table tbody tr:nth-child(3){
		display:flex;
		justify-content: center;
		order:3;
		margin: 10px 0;
	}
	main table tbody tr:last-child{
		display:flex;
		justify-content: center;
		order:4;
		margin: 10px 0;
	}
	main td img {
		width: 100px;
	}
	main .size {
		font-size: .8em;
		line-height: 1.5;
		padding: 0 2em;
	}
	main .man {
		display: inline-block;
		background: url(img/man.svg) no-repeat left center / 12px;
		font-size: 1em;
		line-height: 2em;
		padding-left: 15px;
	}
	main .bag {
		display: inline-block;
		background: url(img/bag.svg) no-repeat left center / 18px;
		font-size: 1em;
		line-height: 2em;
		padding-left: 20px;
		margin-left: 1em;
	}
	main .golf {
		display: inline-block;
		background: url(img/golf.svg) no-repeat left center / 24px;
		font-size: 1em;
		line-height: 2em;
		padding-left: 20px;
		margin-left: 1em;
	}
	/*附柳追加
	main .type-c {
	display: inline-block;
	background: url(img/type-c.svg) no-repeat left center / 20px;
	font-size: 1em;		line-height: 2em;
	padding-left: 20px;
		margin-left: 1em;
	}*/
	
	.gallery {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#page.car_detail .container dl {
		display: block;
		width: 32%;
	}
	.recruit form {
		padding: 15px;
	}
	#page .container .recruit dl {
		flex-direction:column;
	}
	#page .container .recruit dl dt:first-child {
		border-top: 0;
	}
	#page .container .recruit dl dt {
		border: 0;
		width:100%;
		padding-bottom:0;
	}
	#page .container .recruit dl dd:nth-child(2) {
		border-top:0;
		width:100%;
	}
	#page .container .recruit dl dd {
		width: 100%;
		padding: 10px 0;
	}
	#page input, #page select, #page textarea{
		max-width:100%;
	}
	#page .container div.mg {
		margin: 0 0 3em 1em;
	}
	#page .container #terms dl dt {
		align-items: flex-start;
	}
	#page .container #terms div.mg ol {
		font-size:12px;
		padding-left: 13%;
	}
	#page .container #terms dl dt {
		width: 18%;
		padding: 0;
	}
	#page .container #terms dl dd {
		width: 79%;
		border: 0;
		padding: 0;
		margin-left: 3%;
	}
	#page .container div.lede,
	#page .container div.mg{
		font-size:12px;
	}
	#page .container div.mg ol li ol li {
		font-size: 12px;
		line-height: 1.5;
		margin: 15px 0;
		padding-left: 1.2em;
		position: relative;
	}
	#page .container div.mg ol li ol li:before {
		content: counter(number);
		border: 1px solid;
		box-sizing: border-box;
		border-radius: 50%;
		height: 12px;
		width: 12px;
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
		top: 4px;
		left: 0;
		font-size: 80%;
		line-height: 1;
		margin-left: 0;
	}
	.tab-group{
		align-items:unset;
		width:100%;
	}
	.tab{
		display:flex;
		align-items:center;
		justify-content:center;
		font-size:10px;
		font-weight:400;
		padding: 5px 0px;
	}
	.panel table td:first-child {
		width: 25%;
	}
	.panel table td {
		font-size: 12px;
		padding: 1em 0;
	}
	#page table.service td {
		font-size: .9em;
	}
	table.reserve{
		font-size:0.8em;
	}
	#page .covid ul{
		flex-direction:column;
	}
	#page .covid ul li{
		width:100%;
	}
	#covid{
		width:92%;
	}
	#covid ul{
		flex-direction:column;
	}
	#covid ul li{
		width:100%;
	}
	.cars table{
		width:100%;
	}
	.cars tr{
		display:flex;
		flex-direction:column;
	}
	#page ul.cars figcaption td:first-child,
	#page ul.cars figcaption td:nth-child(2),
	#page ul.cars figcaption td:last-child{
		width:100%;
		text-align:center;
		padding:0;
	}
	#page ul.cars figcaption td img{
		width:30%;
	}
	footer .sitename{width:100%;}
}