@charset "utf-8";

/* 全サブページ共通ヘッダー画像（3番に統一・#homeは除外） */
body:not(#home) #visual{
	background: url(../../imgs/common/header-visual.jpg) center center / cover no-repeat #F2F2F2 !important;
}

/* エースカーゴの特長: feature02 を正方形トリミング表示 */
#about .outline .block .img img[src*="feature02"]{
	width:264px;
	height:264px;
	max-width:100%;
	object-fit:cover;
	object-position:center;
}

/* 理念・ビジョン: 見出し下のメイン画像 */
#vision .vision-hero-img{
	margin:0 0 30px;
}
#vision .vision-hero-img img{
	display:block;
	width:100%;
	height:auto;
	border-radius:6px;
}

/* 応募フォーム: ラジオ選択肢の間隔 */
#entry .wpcf7-radio .wpcf7-list-item,
#briefing .wpcf7-radio .wpcf7-list-item {
	margin-right: 32px;
}
#entry .wpcf7-radio .wpcf7-list-item.last,
#briefing .wpcf7-radio .wpcf7-list-item.last {
	margin-right: 0;
}
/* briefingページの旧mw_wp_form用CSSがwpcf7ラジオを隠すための復活指定 */
#briefing .wpcf7-radio input[type="radio"] {
	display: inline-block;
	width: auto;
	margin: 0 4px 0 0;
	vertical-align: middle;
}
#briefing .wpcf7-radio .wpcf7-list-item-label {
	vertical-align: middle;
}
/* briefingページの年齢欄: padding分を考慮して幅を広げ、見切れを防ぐ */
#briefing #cont .form .inner table td.width-s input[type="text"] {
	width: 120px;
}

/*** ------------------------------------------------------------------------------ 

01_ホーム（#home）

-----------------------------------------------------------------------------  ***/

#home #visual .m_wrap{
	width:100%;
	max-width:1200px;
	height:auto;
	margin:0 auto;
}
#home #visual .m_wrap img{
	width:100%;
	height:auto;
}
#home #cont section {
	margin:0 0 60px;	
}
#home #cont section .inner{
	width: 960px;
	margin:0 auto;	
}
#home #cont section .headline {
	text-align: center;
	margin:0 0 40px;
}
#home #cont section .headline p{
	font-weight: bold;
	font-size: 1.25em;
	color: #999999;
	margin:0 0 10px;
}
#home #cont section .headline h2{
	font-size: 30px;
	font-weight: bold;
	color:#f39800;
}
#home #wrapper #cont .blog .headline .green{
	color:#004098;
}
#home #cont section h3{
	font-size: 18px;
	font-weight: bold;
	margin:0 0 10px;
}
#home .pc{
	 display:block
}
#home .sp{
	display:none
}
@media screen and (max-width: 1024px){
	#home .pc{
		display:none
	}
	#home .sp{
		display:block
	}
	#home #cont section .headline br{
		display:none;
	}
	#home #cont section {
		margin:0 0 30px;	
	}
	#home #cont section .inner{
		width: auto;
		padding:0 10px;
	}
	#home #cont section .headline {
		text-align: left;
		margin:0 0 20px;
		padding:0 10px;
	}
	#home #cont section .headline p{
		text-align: center;
	}
	#home #cont section .headline h2{
		font-size: 20px;
	}
	#home #cont section h3{
		font-size: 16px;
	}
}

/* 240802_movie */
.wrap-video {
    margin: 0 auto;
    width: 100%;
    position: relative;
    max-width: 1400px;
    height: clamp(200px, 38vw, 540px);
    overflow: hidden;
}
.wrap-video video,
.wrap-video img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
}
@media (max-width: 1024px) {
    .wrap-video {
        height: clamp(160px, 50vw, 300px);
    }
}
.wrap-video .catch {
    position:absolute;
    bottom:0;
    z-index:2;
    text-align:left;
    bottom:40px;
    left:60px;
}
.wrap-video .catch p{
    font-size: clamp(15px,2.7vw,36px);
    font-weight:bold;
    line-height:1.75;
    letter-spacing:0.05em;
    color:#004098;
    text-shadow:0 1px 3px rgba(255,255,255,0.95), 0 0 12px rgba(255,255,255,0.7);
}
.wrap-video .catch p span{
    display:inline-block;
    font-size: clamp(22px,4.4vw,56px);
    color:#fff;
    background:radial-gradient(ellipse at center, rgba(126,196,247,0.95) 0%, rgba(58,143,230,0.70) 45%, rgba(58,143,230,0.25) 72%, rgba(58,143,230,0) 100%);
    padding:8px 34px;
    margin:0 2px;
    border-radius:50%;
    box-shadow:none;
    text-shadow:0 2px 12px rgba(0,40,110,0.55), 0 0 22px rgba(58,143,230,0.55);
    vertical-align:baseline;
}
.wrap-video .catch p.catch-sub{
    font-size: clamp(10px,1.3vw,16px);
    line-height:1.5;
    margin-top:14px;
    font-weight:bold;
    letter-spacing:0.06em;
}
.wrap-video .catch p.catch-sub span{
    font-size: inherit;
    background:none;
    padding:0;
    margin:0;
}
.wrap-video .catch p.catch-sub span.catch-sub-en{
    margin-right:10px;
    letter-spacing:0.18em;
    color:#f39800;
    font-style:italic;
}
 @media (max-width: 1024px) {
.wrap-video .catch {
    bottom:20px;
    left:10px;
}
}

/* service */
#home #cont .service{
	max-width:1200px;
	margin: 0 auto 60px;
}
#home #cont .service .pr{
	width: 90px;
	height: 90px;
	text-align: center;
	border:#FF6666 2px solid;
	border-radius:50%;
	padding:15px 0;
	box-sizing:border-box;
	color:#FF6666;
	font-size: 1.5em;
	position:absolute;
	left:50%;
	top:30px;
	margin:0 0 0 -480px;
	line-height: 1.2;
}
#home #cont .service .pr span{
	font-weight: bold;
	display:block;
	font-size: 1.333em;
}
#home #cont .service .img{
	display: block;
	float: left;
	width: 410px;
	margin: 0;
}
#home #cont .service .img img{
	width: 100%;
	height: auto;
	border-radius: 6px;
}
#home #cont .service .text{
	float:right;
	width: 530px;
}
#home #cont .service .text p{
	font-size: 1.333em;
}
@media screen and (max-width: 1024px){
	#home #cont .service{
		background: none;
		margin: 0 auto 40px;
	}
	#home #cont .service .inner{
		position:relative;
	}
	#home #cont .service .pr{
		left:10px;
		top:0px;
		margin:0;
		width: 60px;
		height: 60px;
		font-size: 1em;
		padding:10px 0;
	}
	#home #cont .service .img{
		display: block;
	}
	#home #cont .service .text{
		float:none;
		width: auto;
	}
	#home #cont .service .text p{
		font-size: 1.167em;
	}
}

/* recruit */
#home #cont .recruit .headline{
	background: url(../img/bg_slash.png) repeat #004098;
	position:relative;
	padding:20px 0;
	margin:0 0 60px;
}
#home #cont .recruit .headline:after{
	content:"";
	width: 0;
	height: 0;
	border:#F7F7F7 15px solid;
	border-top:#004098 15px solid;
	position:absolute;
	left:50%;
	bottom:-30px;
	margin:0 0 0 -15px;
}
#home #cont .recruit .headline p,
#home #cont .recruit .headline h2{
	color: #FFFFFF;
}
#home #cont .recruit .inner > div{
	margin:0 0 10px;
}
#home #cont .recruit p.img{
	float:left;
}
#home #cont .recruit div.text{
	margin:0 0 0 430px;
}
#home #cont .recruit div.text p{
	font-size: 1.333em;
}

#home #cont .recruit .inner > div.movie-box{
	text-align: center;
	margin: 0 0 50px;
}

@media screen and (max-width: 1024px){
	#home #cont .recruit .headline{
		padding:15px 10px;
		margin:0 0 30px;
	}
	#home #cont .recruit .inner > div{
		margin:0 0 30px;
	}
	#home #cont .recruit p.img{
		float:none;
	}
	#home #cont .recruit div.text{
		margin:0;
	}
	#home #cont .recruit div.text p{
		font-size: 1.167em;
	}
	#home #cont .recruit .inner > div.movie-box{
		margin: 0 0 20px;
	}
	#home #cont .recruit .inner > div.movie-box video{
		width: 100%;
	}
}

/* blog */
#home #cont .blog{
	background: #F2F2F2;
	padding:40px 0;
}
#home #cont .blog .blog-type{
	/*
	width: 470px;
	float:left;
	*/
}
#home #cont .blog .blog-type:last-child{
	/*
	float:right;
	*/
}
#home #cont article{
	width: 470px;
	box-sizing:border-box;
	margin:0 20px 20px 0;
	float: left;
}
#home #cont article:nth-of-type(2n){
	margin:0 0 20px 0;
}
#home #cont article a{
	display:block;
	background:#FFFFFF;
	padding:20px;
	color:#333;
	border:#FFFFFF 1px solid;
}
#home #cont article a:hover{
	text-decoration: none;
	background: #F2F2F2;
}
#home #cont article .img{
	float:right;
	margin:0 0 0 20px;
}
#home #cont article .date{
	margin:0 0 5px;
	font-weight: bold;
}
#home #cont article .date span{
	display:inline-block;
	color:#FFFFFF;
	background: #f39800;
	margin:0 0 0 10px;
	padding:0 10px;
}
#home #cont article h3{
	font-weight: normal;
	margin:0 0 5px;
}
#home #cont article .entry{
	font-size: 1em;
	margin:0;
}
@media screen and (max-width: 1024px){
	#home #cont .blog{
		padding:20px 0;
	}
	#home #cont .blog h2{
		text-align: center;
	}
	#home #cont .blog .blog-type{
		width: auto;
		float: none;
	}
	#home #cont .blog .blog-type:last-child{
		float: none;
	}
	#home #cont article{
		width: auto;
		float:none;
		margin:0 0 20px 0;
	}
	#home #cont article:nth-of-type(2n){
		margin:0 0 20px 0;
	}
	#home #cont article a{
		padding:15px;
	}
	#home #cont article:nth-child(even){
		float:none;
	}
	#home #cont article .img{
		width: 120px;
		margin:0 0 10px 20px;
	}
	#home #cont article .date{
		font-size: 1em;
	}
	#home #cont article .date span{
		padding:0 5px;
	}
	#home #cont article .entry{
		clear:both;
	}
}
#home .sns .inner{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
}
#home .sns-cont {
	max-width: 100%;
    width:100%;
}
/* Behold.so ウィジェットを全幅に広げる */
#home .sns-cont behold-widget {
    display: block;
    width: 100%;
}
#home #cont .sns-cont h3{
    font-size:24px;
}
#home .sns-cont h3 .fa{
     margin:0 5px 0 0;
}
#home .sns-cont h3 .fa-facebook-square{
    color:#1877f2;
}
#home #cont .sns-cont i.fa.fa-instagram {
    width:20px;
    content:url(/common/img/insta-icon.png);
}
#home #cont .sns-cont .fa-instagram:before{
content:none;
}
/* Instagramフィード（Smash Balloon静的コピー）: 列数はプラグインJSが動的指定するため、JSなしでは崩れる。sbi_col_* クラスに応じた自己完結のグリッドを定義して復元 */
#sb_instagram #sbi_images{
    display:grid;
    grid-template-columns:repeat(4,1fr) !important;
    gap:10px;
    padding:12px 0;
}
#sb_instagram.sbi_col_1 #sbi_images{grid-template-columns:repeat(1,1fr) !important;}
#sb_instagram.sbi_col_2 #sbi_images{grid-template-columns:repeat(2,1fr) !important;}
#sb_instagram.sbi_col_3 #sbi_images{grid-template-columns:repeat(3,1fr) !important;}
#sb_instagram.sbi_col_4 #sbi_images{grid-template-columns:repeat(4,1fr) !important;}
#sb_instagram.sbi_col_5 #sbi_images{grid-template-columns:repeat(5,1fr) !important;}
#sb_instagram.sbi_col_6 #sbi_images{grid-template-columns:repeat(6,1fr) !important;}
#sb_instagram.sbi_col_7 #sbi_images{grid-template-columns:repeat(7,1fr) !important;}
#sb_instagram.sbi_col_8 #sbi_images{grid-template-columns:repeat(8,1fr) !important;}
#sb_instagram #sbi_images .sbi_item{
    width:100%;
    margin:0 !important;
}
#sb_instagram .sbi_photo_wrap{
    position:relative;
    width:100%;
    padding-bottom:100%;
    height:0;
    overflow:hidden;
}
#sb_instagram a.sbi_photo{
    position:absolute;
    top:0;
    left:0;
    width:100% !important;
    height:100% !important;
    display:block;
}
#sb_instagram a.sbi_photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .5s ease;
}
#sb_instagram a.sbi_photo:hover img{
    transform:scale(1.05);
}
#sb_instagram .sbi-screenreader{
    position:absolute;
    left:-9999px;
    width:1px;
    height:1px;
    overflow:hidden;
}
#sb_instagram .sbi_playbtn{
    position:absolute;
    top:50%;
    left:50%;
    width:28px;
    height:auto;
    transform:translate(-50%,-50%);
    z-index:2;
    pointer-events:none;
}
#sb_instagram #sbi_load{
    width:100%;
    text-align:center;
    margin-top:20px;
}
#sb_instagram #sbi_load .sbi_follow_btn a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:10px 24px;
    color:#fff !important;
    background: linear-gradient(135deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%) !important;
    border-radius:24px;
    text-decoration:none;
    font-size:14px;
    font-weight:bold;
    transition: opacity .2s;
}
#sb_instagram #sbi_load .sbi_follow_btn a:hover{
    opacity: .85;
}
#sb_instagram #sbi_load .sbi_follow_btn a svg{
    width:16px;
    height:16px;
}
/* Beholdウィジェット併用時など #sb_instagram の外に置かれた #sbi_load のフォローボタンも同じボタン表示にする */
#sbi_load{
    width:100%;
    text-align:center;
    margin-top:20px;
}
#sbi_load .sbi_follow_btn a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:10px 24px;
    color:#fff !important;
    background: linear-gradient(135deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%) !important;
    border-radius:24px;
    text-decoration:none;
    font-size:14px;
    font-weight:bold;
    transition: opacity .2s;
}
#sbi_load .sbi_follow_btn a:hover{
    opacity:.85;
}
#sbi_load .sbi_follow_btn a svg{
    width:16px;
    height:16px;
}
@media screen and (max-width:1024px){
    #sb_instagram.sbi_tab_col_1 #sbi_images{grid-template-columns:repeat(1,1fr) !important;}
    #sb_instagram.sbi_tab_col_2 #sbi_images{grid-template-columns:repeat(2,1fr) !important;}
    #sb_instagram.sbi_tab_col_3 #sbi_images{grid-template-columns:repeat(3,1fr) !important;}
    #sb_instagram.sbi_tab_col_4 #sbi_images{grid-template-columns:repeat(4,1fr) !important;}
}
@media screen and (max-width:1024px){
    #sb_instagram #sbi_images{gap:6px;}
    /* mob_col_1 は枚数が多いと縦長になりすぎるため最低2列に */
    #sb_instagram.sbi_mob_col_1 #sbi_images{grid-template-columns:repeat(2,1fr) !important;}
    #sb_instagram.sbi_mob_col_2 #sbi_images{grid-template-columns:repeat(2,1fr) !important;}
    #sb_instagram.sbi_mob_col_3 #sbi_images{grid-template-columns:repeat(3,1fr) !important;}
}
body .siq_bR {
    bottom: 100px;
}
@media screen and (max-width: 1024px){
/* #home .sns-cont {
    width:100%;
} */
body .siq_bR {
    bottom: 150px;
}
}
#cont .insta_side{
    margin:20px 0;
}
#cont .insta_side h3{
    font-size:clamp(14px,2vw,24px);
}
#cont .insta_side i.fa.fa-instagram {
    width:auto;
    content:normal;
    margin:0 6px 0 0;
}
#cont .insta_side .insta_lead{
    margin:10px 0 14px;
    font-size:0.9rem;
    line-height:1.6;
    color:#333;
}
#cont .insta_side .insta_follow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:12px 14px;
    border-radius:6px;
    text-decoration:none;
    font-weight:bold;
    color:#fff;
    background:linear-gradient(45deg,#feda75 0%,#fa7e1e 25%,#d62976 50%,#962fbf 75%,#4f5bd5 100%);
    transition:opacity .2s;
}
#cont .insta_side .insta_follow:hover{
    opacity:0.85;
    text-decoration:none;
    color:#fff;
}
#cont .insta_side .insta_follow i.fa.fa-instagram{
    margin:0;
    font-size:1.2rem;
    color:#fff;
}

/*** ------------------------------------------------------------------------------ 

02_サービスネットワーク（#service）

-----------------------------------------------------------------------------  ***/
.service #visual{
	background: url(../../imgs/service/visual.jpg) center center no-repeat #F2F2F2;
}
.service #visual p{
	font-size:1.267em;
}
@media screen and (min-width: 1200px){
	.service #visual{
		background: url(../../imgs/service/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	.service #visual{
		background: url(../../imgs/service/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}

/* 事業案内 一覧カード（.service-list） */
#service #main .service-list{
	list-style:none;
	padding:0;
	margin:1.5rem 0 2.5rem;
	display:flex;
	flex-wrap:wrap;
	gap:20px;
}
#service #main .service-list li{
	width:calc(50% - 10px);
	box-sizing:border-box;
	border:1px solid #cdd6e6;
	border-radius:6px;
	overflow:hidden;
	background:#fff;
	transition:box-shadow .2s;
}
#service #main .service-list li:hover{
	box-shadow:0 4px 14px rgba(0,64,152,0.15);
}
#service #main .service-list li a{
	display:block;
	text-decoration:none;
	color:#333;
}
#service #main .service-list .img{
	height:170px;
	overflow:hidden;
}
#service #main .service-list .img img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	transition:transform .3s;
}
#service #main .service-list li a:hover .img img{
	transform:scale(1.05);
}
#service #main .service-list h2{
	font-size:1.15rem;
	color:#004098;
	background:none;
	margin:0;
	padding:14px 15px 6px;
}
#service #main .service-list h2:after{
	display:none;
}
#service #main .service-list p{
	margin:0;
	padding:0 15px 16px;
	font-size:0.9rem;
	line-height:1.7;
}
@media screen and (max-width: 1024px){
	#service #main .service-list li{
		width:100%;
	}
	#service #main .service-list .img{
		height:200px;
	}
}

.service #main section .inner .item{
	width:226px;
	float:left;
	margin:0 10px 0 0;
	background:#F3F3F3;
}
@media screen and (max-width: 1024px){
	.service #main section .inner .item{
		width:49%;
		margin:0 0 15px;
	}
	.service #main section .inner .item:nth-child(even){
		float:right;
	}
}
.service #main section .inner .item .img{
	margin:0;
}
.service #main section .inner .item .img img{
	width:100%;
	height:auto;
}
.service #main section .inner .item:last-child{
	margin:0;
}
.service #main section .inner .item dl{
	padding:15px;
	background:#F3F3F3;
	margin:0;
}
.service #main section .inner .item dl dt{
	color:#004098;
	font-weight:bold;
	font-size:1.143em;
	margin:0 0 15px;
}
.service #main section .inner .block-img-2 li{
	width:340px;
	float:left;
	text-align:center;
	font-size:1.167em;
	font-weight:bold;
	margin:0 0 25px;
}
@media screen and (max-width: 1024px){
	.service #main section .inner .block-img-2 li{
		width:49%;
	}
	.service #main section .inner .block-img-2 li img{
		width:100%;
		height:auto;
	}
}
.service #main section .inner .block-img-2 li:nth-child(even){
	float:right;
}
.service #wrapper #cont #main section .inner .att{
	font-size:1em;
}
/*** ------------------------------------------------------------------------------ 

03_モーダルシフト（#environment）

-----------------------------------------------------------------------------  ***/
#environment #visual{
	background: url(../../imgs/service/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#environment #visual{
		background: url(../../imgs/service/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#environment #visual{
		background: url(../../imgs/service/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}

#environment .headline .img{
	text-align: center;
}

/*** ------------------------------------------------------------------------------ 

04_採用情報（#recruit）

-----------------------------------------------------------------------------  ***/
#recruit #visual{
	background: url(../../imgs/recruit/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#recruit #visual{
		background: url(../../imgs/recruit/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#recruit #visual{
		background: url(../../imgs/recruit/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}
/*** ------------------------------------------------------------------------------ 

05_森井運送とは（#about）

-----------------------------------------------------------------------------  ***/
#about #visual{
	background: url(../../imgs/about/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#about #visual{
		background: url(../../imgs/about/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#about #visual{
		background: url(../../imgs/about/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}
#about .outline .block{
	margin:0 0 40px;
}
#about .outline .block .img{
	float:left;
	width: 264px;
	margin:0;
}
#about .outline .block .text{
	margin:0 0 0 284px;
}
#about .outline .block:nth-child(even) .img{
	float:right;
	width: 264px;
}
#about .outline .block:nth-child(even) .text{
	margin:0 284px 0 0;
}
#about .outline .block .text h3::before{
	background: none;
}
#about .outline .block .text h3{
	color: #f39800;
	font-size: 1.833em;
	font-weight: bold;
	margin:0 0 10px;
	padding:0 0 10px;
	border-bottom: #f39800 1px solid;
}
#about .outline .block .text p:last-of-type{
	margin:0;
}
@media screen and (max-width: 1024px){
	#about .outline .block{
		margin:0 0 30px;
	}
	#about .outline .block .img{
		width: 130px;
	}
	#about .outline .block .text{
		margin:0 0 0 150px;
	}
	#about .outline .block:nth-child(even) .img{
		width: 130px;
	}
	#about .outline .block:nth-child(even) .text{
		margin:0 150px 0 0;
	}
	#about .outline .block .text h3{
		font-size: 1.333em;
	}
	#about .outline .block .text p:last-of-type{
		margin:0;
	}
}

#about .point .block{
	padding:0 0 20px;
	margin:0 0 20px;
	border-bottom:#CCC 1px dotted;
	position:relative;
}
#about .point .block:before{
	content:"1";
	display:block;
	width:36px;
	height: 36px;
	background: #f39800;
	border-radius:50%;
	text-align: center;
	font-weight: bold;
	color:#FFF;
	font-size: 1.633em;
	line-height: 36px;
	position:absolute;
	left:-10px;
	top:-10px;
}
#about .point .block:nth-child(2):before{
	content:"2";
}
#about .point .block:nth-child(3):before{
	content:"3";
}
#about .point .block:nth-child(4):before{
	content:"4";
}
#about .point .block:nth-child(5):before{
	content:"5";
}
#about .point .block:nth-child(6):before{
	content:"6";
}
#about .point .block:nth-child(7):before{
	content:"7";
}
#about .point .block:nth-child(8):before{
	content:"8";
}
#about .point .block:nth-child(9):before{
	content:"9";
}
#about .point .block:nth-child(10):before{
	content:"10";
}
#about .point .block .img{
	float:left;
	width: 224px;
	margin:0;
	text-align: center;
}
#about .point .block:nth-child(1) .img img, #about .point .block:nth-child(2) .img img{
	margin-bottom: 10px;
}
#about .point .block .text{
	margin:0 0 0 244px;
}
#about .point .block .text h3{
	color: #007F3F;
	font-size: 1.833em;
	font-weight: bold;
	margin:0 0 10px;
	padding: 0 10px 0 0;
	border-bottom: none;
}
#about .point .block .text h3::before{
	background: none;
}
#about .point .block .text p:last-of-type{
	margin:0;
}
#about .point .block ul.list_img01{
	margin: 0;
	padding: 0;
	list-style: none;
}
#about .point .block ul.list_img01 li{
	margin: 15px 10px 10px 0;
	padding: 0;
	float: left;
	text-align: center;
}
#about .point .block ul.list_img01 li:nth-child(3n){
	margin: 15px 0 10px 0;
	padding: 0;
	float: right;
	text-align: center;
}
#about .point .block ul.list_img01 li:nth-child(4n){
	clear:both;
}
#about .point .block ul.list_img01 li img{
	margin: 0 0 10px 0;
	padding: 0;
}
#about .point .block p.link{
	margin: 0;
	padding: 0;
	text-align: right;
}
#about .point .block p.link a{
	margin: 0;
	padding: 0 0 0 18px;
	color: #004098;
	text-decoration: underline;
	background: URL(../img/icon_arrow02.png) 0 4px no-repeat;
}
#about .point .block p.link a:hover{
	text-decoration: none;
}
@media screen and (max-width: 1024px){
	#about .point .block .img{
		width: 130px;
	}
	#about .point .block .text{
		margin:0 0 0 150px;
	}
	#about .point .block .text h3{
		font-size: 1.333em;
	}
	
	#about .point .block ul.list_img01 li{
		margin: 15px 2% 0 0;
		width: 32%;
	}
	#about .point .block ul.list_img01 li:last-child{
		width: 32%;
	}
	#about .point .block ul.list_img01 li img{
		width: 100%;
	}
	#about .point .block ul.list_img01 li img{
		margin: 0 0 5px 0;
		padding: 0;
	}
}

#about .truck-point{
	margin:0 0 40px;
}
#about .truck-point .fl-box{
	display:flex;
	align-items:center;
	margin:0 0 40px;
}
#about .truck-point .fl-box:last-of-type{
	margin:0;
}
#about .truck-point .fl-box .img{
	width:400px;
	margin:0;
}
#about .truck-point .fl-box .img img{
	max-width:100%;
	height:auto;
	border-radius:6px;
}
#about .truck-point .fl-box .text{
	width:calc(100% - 400px);
	padding:0 0 0 30px;
}
#about .truck-point .fl-box .text h3{
	color:#004098;
	font-size:1.5em;
	font-weight:bold;
	margin:0 0 14px;
	padding:0 0 10px;
	border-bottom:#004098 1px solid;
}
#about .truck-point .fl-box .text h3::before{
	background:none;
}
#about .truck-point .fl-box .text p:last-of-type{
	margin:0;
}
@media screen and (max-width: 1024px){
	#about .truck-point .fl-box{
		display:block;
		margin:0 0 30px;
	}
	#about .truck-point .fl-box .img{
		width:100%;
		margin:0 auto 20px;
	}
	#about .truck-point .fl-box .text{
		width:100%;
		padding:0;
	}
	#about .truck-point .fl-box .text h3{
		font-size:1.333em;
	}
}

#about .vehicle-intro{
	margin:0 0 40px;
}
#about .vehicle-intro .vehicle-list{
	display:flex;
	flex-wrap:wrap;
	margin:0;
	padding:0;
	list-style:none;
}
#about .vehicle-intro .vehicle-list li{
	width:calc(50% - 15px);
	margin:0 30px 30px 0;
	text-align:center;
}
#about .vehicle-intro .vehicle-list li:nth-child(2n){
	margin:0 0 30px 0;
}
#about .vehicle-intro .vehicle-list li img{
	width:100%;
	height:240px;
	object-fit:cover;
	border-radius:6px;
	display:block;
}
#about .vehicle-intro .vehicle-list li .cap{
	display:block;
	margin:12px 0 0;
	font-weight:bold;
	font-size:1.1em;
	color:#222;
}
@media screen and (max-width: 1024px){
	#about .vehicle-intro .vehicle-list li{
		width:100%;
		margin:0 0 20px 0;
	}
	#about .vehicle-intro .vehicle-list li:nth-child(2n){
		margin:0 0 20px 0;
	}
	#about .vehicle-intro .vehicle-list li img{
		height:200px;
	}
}

/*** ------------------------------------------------------------------------------ 

ドライバー職ははじめての方へ（#beginner）

-----------------------------------------------------------------------------  ***/
#beginner #visual{
	background: url(../../imgs/beginner/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#beginner #visual{
		background: url(../../imgs/beginner/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#beginner #visual{
		background: url(../../imgs/beginner/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}

#beginner #main .headline .img{
	float:left;
}
#beginner #main .headline .text{
	margin:0 0 0 284px;
}
@media screen and (max-width: 1024px){
	#beginner #main .headline .img{
		width: 130px;
	}
	#beginner #main .headline .text{
		margin:0 0 0 140px;
	}
}

#beginner .flow .block{
	border:#F2F2F2 3px solid;
	position:relative;
	padding:20px;
	margin:0 0 60px;
}
#beginner .flow .block:before{
	content:"";
	display:block;
	position:absolute;
	left:50%;
	bottom:-60px;
	margin:0 0 0 -60px;
	width: 0px;
	height: 0px;
	border-top: #CCC 20px solid;
	border-bottom: #FFF 20px solid;
	border-left: #FFF 60px solid;
	border-right: #FFF 60px solid;
}

#beginner .flow .img:before{
	content:"1";
	display:block;
	width:36px;
	height: 36px;
	background: #f39800;
	border-radius:50%;
	text-align: center;
	font-weight: bold;
	color:#FFF;
	font-size: 1.633em;
	line-height: 36px;
	position:absolute;
	left:-10px;
	top:-10px;
}
#beginner .flow .block:nth-child(2) .img:before{
	content:"2";
}
#beginner .flow .block:nth-child(3) .img:before{
	content:"3";
}
#beginner .flow .block:nth-child(4) .img:before{
	content:"4";
}
#beginner .flow .block:nth-child(5) .img:before{
	content:"5";
}
#beginner .flow .block:nth-child(6) .img:before{
	content:"6";
}
#beginner .flow .block:nth-child(7) .img:before{
	content:"7";
}
#beginner .flow .block:nth-child(8) .img:before{
	content:"8";
}
#beginner .flow .block .img{
	float:left;
	width: 224px;
	margin:0;
}
#beginner .flow .block .text{
	margin:0 0 0 244px;
}
#beginner .flow .block .text h3{
	color: #007F3F;
	font-size: 1.833em;
	font-weight: bold;
	margin:0 0 10px;
	padding: 0 10px 0 0;
	border-bottom: none;
}
#beginner .flow .block .text h3::before {
    background: none;
	color: #0072B8;
	font-size: 1.833em;
	font-weight: bold;
	margin:0 0 10px;	
}
#beginner .flow .block .text p:last-of-type{
	margin:0;
}
#beginner .flow .debut{
	text-align: center;
	font-size: 1.833em;
	color:#f39800;
	background: #FFFFCC;
	font-weight: bold;
	padding:10px;
	display: inline;
}
#beginner .flow .debut_out{
	text-align: center;
	padding: 20px 0 0 0;
}
@media screen and (max-width: 1024px){
	#beginner .flow .block .img{
		float: none;
		text-align: center;
		width: auto;
		margin:0 0 10px;;
	}
	#beginner .flow .block .text{
		margin:0;
	}
	#beginner .flow .block .text h3{
		text-align: center;
	}
	#beginner .flow .debut{
		text-align: left;
		padding:20px;
		font-size: 1.5em;
		display:block;
	}
}

#beginner .point .block{
	padding:0 0 20px;
	margin:0 0 20px;
	border-bottom:#CCC 1px dotted;
	position:relative;
}
#beginner .point .block:before{
	content:"1";
	display:block;
	width:36px;
	height: 36px;
	background: #f39800;
	border-radius:50%;
	text-align: center;
	font-weight: bold;
	color:#FFF;
	font-size: 1.633em;
	line-height: 36px;
	position:absolute;
	left:-10px;
	top:-10px;
}
#beginner .point .block:nth-child(2):before{
	content:"2";
}
#beginner .point .block:nth-child(3):before{
	content:"3";
}
#beginner .point .block:nth-child(4):before{
	content:"4";
}
#beginner .point .block:nth-child(5):before{
	content:"5";
}
#beginner .point .block:nth-child(6):before{
	content:"6";
}
#beginner .point .block:nth-child(7):before{
	content:"7";
}
#beginner .point .block:nth-child(8):before{
	content:"8";
}
#beginner .point .block .img{
	float:left;
	width: 224px;
	margin:0;
}
#beginner .point .block .text{
	margin:0 0 0 244px;
}
#beginner .point .block .text h3{
	color: #007F3F;
	font-size: 1.833em;
	font-weight: bold;
	margin:0 0 10px;
	padding: 0 10px 0 0;
	border-bottom: none;
}
#beginner .point .block .text h3::before {
    background: none;
}
#beginner .point .block .text p:last-of-type{
	margin:0;
}
@media screen and (max-width: 1024px){
	#beginner .point .block .img{
		width: 130px;
	}
	#beginner .point .block .text{
		margin:0 0 0 150px;
	}
	#beginner .point .block .text h3{
		font-size: 1.333em;
	}
}
/*** ------------------------------------------------------------------------------ 

06_ご家族の方へ（#family）

-----------------------------------------------------------------------------  ***/

#family #visual{
	background: url(../../imgs/family/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#family #visual{
		background: url(../../imgs/family/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#family #visual{
		background: url(../../imgs/family/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}
#family #main .qa dl dt{
	color:#0183CD;
	font-size: 1.5em;
	font-weight: bold;
	margin:0 0 10px;
	padding:0 0 0 40px;
	position:relative;
}
#family #main .qa dl dt:after{
	content:"Q";
	width: 30px;
	height: 30px;
	text-align: center;
	color:#FFF;
	line-height: 30px;
	background: #0074B9;
	display:block;
	position:absolute;
	left:0;
	top:0;
	border-radius:50%;
	font-size: 0.863em;
}
#family #main .qa dl dd{
	background: #F2F2F2;
	padding:10px 15px;
	margin:0 0 20px;
}
@media screen and (max-width: 1024px){
	#family #main .qa dl dt{
		font-size: 1.333em;
	}
}

/*** ------------------------------------------------------------------------------ 

07_募集要項一覧（#requirements）

-----------------------------------------------------------------------------  ***/
.requirements #main{
	width: 700px;
	margin: 0 0 30px;
	float: left;
}
@media screen and (max-width: 1024px){
	.requirements #main{
		width: 100%;
		float: none;
		margin: 0 0 10px;
	}
}

#requirements #visual{
	background: url(../../imgs/requirements/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#requirements #visual{
		background: url(../../imgs/requirements/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#requirements #visual{
		background: url(../../imgs/requirements/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}

#requirements #main .headline .tit{
	font-size: 18px;
	font-weight: 800;
	margin: 0 0 10px;
}
#requirements #main .headline ul {
	margin:0;
}
#requirements #main .headline ul li {
	width: 32%;
	float:left;
	margin:0 2% 15px 0;
}
#requirements #main .headline ul li:nth-child(3n){
	margin:0 0 15px 0;
}
#requirements #main .headline ul li a{
	display:block;
	border-radius:10px;
	border:#004098 1px solid;
	padding:25px 10px 25px 35px;
	background: url(../img/icon_arrow03.png) 10px center no-repeat ;
}
#requirements #main .headline ul li a:hover{
	background: url(../img/icon_arrow04.png) 10px center no-repeat #004098;
	text-decoration: none;
	color:#FFFFFF;
}
@media screen and (max-width: 1024px){
	#requirements #main .headline ul li {
		width: auto;
		float: none;
		margin:0 0 10px;
	}
	#requirements #main .headline ul li br{
		display:none;
	}
}

#requirements #main .list .outline{
	border:#eee 1px solid;
	position:relative;
	margin:0 0 30px;
	padding: 30px;
	background:#eee;
}
#requirements #main .list .outline .outline-block{
	position: relative;
}
#requirements #main .list .outline .outline-block .img{
	position: absolute;
	left: 0;
	top: 0;
	width: 310px;
}
#requirements #main .list .outline .outline-block .text{
	padding: 0 0 0 310px;
}


#requirements #main .list .outline .title{
	border-bottom:#CCC 1px solid;
	padding: 5px 0 10px 15px;
	position:relative;
}
#requirements #main .list .outline .title:before{
	content:"";
	display:block;
	background: #004098;
	width:5px;
	height:80%;
	position:absolute;
	left:0;
	top:10%;	
}
#requirements #main .list .outline .title h3{
	font-size: 1.833em;
	color:#004098;
	font-weight: bold;
	border-bottom: none;
	padding: 0 10px 0 0;
	margin: 0;
}
#requirements #main .list .outline .title h3::before {
    background: none;
}
#requirements #main .list .outline .title p{
	margin:0;
}
#requirements #main .list .outline table{
	width: 100%;
	margin:0;
}
#requirements #main .list .outline table th{
	border-bottom:#CCC 1px dotted;
	padding:10px 15px;
	width: 120px;
	font-weight: bold;
	vertical-align:top;
}
#requirements #main .list .outline table td{
	padding:10px 15px 5px 0;
	border-bottom:#CCC 1px dotted;
}
#requirements #main .list .outline table tr:last-child th,
#requirements #main .list .outline table tr:last-child td{
	border: none;
}
#requirements #main .list .outline table td p{
	margin:0;
	font-size: 1em;
}
#requirements #main .list .outline .link a{
	position:absolute;
	right:10px;
	top:10px;
	display:block;
	color:#FFF;
	font-weight: bold;
	width:112px;
	padding:8px 0;
	background: url(../img/icon_arrow06.png) 90% center no-repeat #f39800;
	border-radius:5px;
	text-align: center;
	font-size: 1.25em;
	letter-spacing:10px;
	margin: 10px 5px 0 0;
}
#requirements #main .list .outline .link a:hover{
	background: url(../img/icon_arrow06.png) 90% center no-repeat #D8312C;
	text-decoration: none;
}

#requirements #main .list .outline .link-list{
	display: flex;
	justify-content: center;
	margin: 20px 0 0;
}
#requirements #main .list .outline .link-list li{
	margin: 0 10px;
}
#requirements #main .list .outline .link-list li a{
	display:block;
	color:#FFF;
	font-weight: bold;
	width: 240px;
	padding: 12px 10px;
	background: url(../img/icon_arrow06.png) 90% center no-repeat #f39800;
	border-radius:5px;
	text-align: center;
	font-size: 1.25em;
	margin: 10px 5px 0 0;
}
#requirements #main .list .outline .link-list li a:hover{
	background: url(../img/icon_arrow06.png) 90% center no-repeat #D8312C;
	text-decoration: none;
}
#requirements #main .list .outline .link-list li.btn-gray a{
	display:block;
	color:#FFF;
	font-weight: bold;
	width: 280px;
	padding: 12px 10px;
	background: #666;
	border-radius:5px;
	text-align: center;
	font-size: 1.25em;
	margin: 10px 5px 0 0;
}
@media screen and (min-width: 738px){
	#requirements #main .list .outline .link-list li.btn-gray a:hover{
		background: #999;
	}
}
#requirements #main .list .outline .icon-end{
	position: absolute;
	left: 0;
	top: 0;
	width: 140px;
	padding: 12px 0 8px;
	text-align: center;
	background: #444;
	font-size: 20px;
	font-weight: bold;
	color: #fff;
}

@media screen and (max-width: 1024px){
	#requirements #main .list .outline{
		margin: 0 0 20px;
		padding: 20px;
	}
	#requirements #main .list .outline .outline-block{
		display: block;
	}
	#requirements #main .list .outline .outline-block .img{
		position: static;
		width: 100%;
		text-align: center;
		margin: 15px 0 10px;
	}
	#requirements #main .list .outline .outline-block .text{
		width: 100%;
		padding: 0;
	}
	#requirements #main .list .outline .title{
		padding:10px 0 10px 15px;
	}
	#requirements #main .list .outline .title h3{
		font-size: 1.5em;
		padding: 0;
	}
	#requirements #main .list .outline table {
		font-size: 1em;
	}
	#requirements #main .list .outline table th{
		border-bottom: none;
		padding:10px 10px 5px;
		width: auto;
		display:list-item;
		list-style: none;
	}
	#requirements #main .list .outline table td{
		padding:0 10px 10px;
		display:list-item;
		list-style: none;
	}
	#requirements #main .list .outline table tr:last-child td{
		border-bottom:#CCC 1px dotted;
	}
	#requirements #main .list .outline .link {
		padding:10px 0;
		margin:0;
	}
	#requirements #main .list .outline .link a{
		position: relative;
		right:0;
		top:0;
		width:160px;
		margin:0 auto;
	}
	#requirements #main .list .outline .link a:hover{
		background: url(../img/icon_arrow05.png) 90% center no-repeat #E14B44;
		text-decoration: none;
	}
	#requirements #main .list .outline .link-list{
		display: block;
		margin: 20px 0 0;
	}
	#requirements #main .list .outline .link-list li{
		margin: 0 0 10px;
	}
	#requirements #main .list .outline .link-list li a{
		width: 100%;
		box-sizing: border-box;
	}
	#requirements #main .list .outline .link-list li.btn-gray a{
		width: 100%;
	}
	#requirements #main .list .outline .icon-end{
		position: absolute;
		left: 0px;
		top: -10px;
		width: 140px;
		padding: 7px 0 4px;
		font-size: 16px;
	}
}

/* 募集要項一覧 カード型レイアウト */
#requirements #main .lead {
	font-size: 1em;
	margin: 0 0 1.5em;
}
#requirements #main .recruit-category {
	list-style: none;
	padding: 0;
	margin: 1.5rem 0 2rem;
	display: flex;
	gap: 2rem;
	flex-wrap: wrap;
}
#requirements #main .recruit-category li {
	flex: 1;
	min-width: 260px;
	border: 2px solid #004098;
	border-radius: 6px;
	padding: 1.5rem;
	background: #fff;
}
#requirements #main .recruit-category li h2 {
	font-size: 1.1rem;
	color: #FFFFFF;
	margin: 0 0 1rem;
	padding: 8px 15px;
	border-bottom: 2px solid #f39800;
}
#requirements #main .recruit-category li h2:after {
	display: none;
}
#requirements #main .recruit-category li h2 a {
	color: #FFFFFF;
	text-decoration: none;
}
#requirements #main .recruit-category li h2 a:hover {
	color: #FFFFFF;
	text-decoration: underline;
}
#requirements #main .recruit-category li table {
	width: 100%;
	margin-bottom: 1.2rem;
	border-collapse: collapse;
}
#requirements #main .recruit-category li table th,
#requirements #main .recruit-category li table td {
	padding: 0.45rem 0.5rem;
	font-size: 0.9rem;
	border-bottom: 1px solid #eee;
	vertical-align: top;
}
#requirements #main .recruit-category li table th {
	width: 6em;
	background: #f5f7fc;
	font-weight: bold;
	color: #555;
}
#requirements #main .recruit-category .more-btn {
	display: block;
	text-align: center;
	background: #004098;
	color: #fff !important;
	padding: 0.7rem;
	border-radius: 4px;
	text-decoration: none;
	font-weight: bold;
}
#requirements #main .recruit-category .more-btn:hover {
	background: #f39800;
	text-decoration: none;
}
@media screen and (max-width: 1024px) {
	#requirements #main .recruit-category {
		flex-direction: column;
	}
}

/* 詳細セクション（一覧ページ内アンカー） */
#requirements #main .recruit-category .more-btn{
	cursor: pointer;
}
#requirements #main .requirement-detail{
	margin: 2.5rem 0 0;
	scroll-margin-top: 20px;
}
#requirements #main .requirement-detail .lead{
	margin: 0 0 1.2em;
}
#requirements #main .requirement-detail .back-to-list{
	margin: 12px 0 0;
	text-align: right;
}
#requirements #main .requirement-detail .back-to-list a{
	color: #004098;
	font-size: 0.9rem;
	text-decoration: none;
}
#requirements #main .requirement-detail .back-to-list a:hover{
	text-decoration: underline;
}

/* #recruit 募集職種カード（#requirements と同等の見た目に） */
#recruit #main .recruit-category{
	list-style: none;
	padding: 0;
	margin: 1.5rem 0 2.5rem;
	display: flex;
	gap: 2rem;
	flex-wrap: wrap;
}
#recruit #main .recruit-category li{
	flex: 1;
	min-width: 260px;
	border: 2px solid #004098;
	border-radius: 6px;
	padding: 1.5rem;
	background: #fff;
}
#recruit #main .recruit-category li h3{
	font-size: 1.1rem;
	margin: 0 0 .8rem;
	padding: 8px 15px;
	background: #004098;
	border-bottom: 2px solid #f39800;
}
#recruit #main .recruit-category li h3 a{
	color: #FFFFFF;
	text-decoration: none;
}
#recruit #main .recruit-category li h3 a:hover{
	color: #FFFFFF;
	text-decoration: underline;
}
#recruit #main .recruit-category li p{
	margin: 0 0 1.2rem;
}
#recruit #main .recruit-category .more-btn{
	display: block;
	text-align: center;
	background: #004098;
	color: #fff !important;
	padding: 0.7rem;
	border-radius: 4px;
	text-decoration: none;
	font-weight: bold;
}
#recruit #main .recruit-category .more-btn:hover{
	background: #f39800;
	text-decoration: none;
}

/* .recruit-flow（未経験者・募集要項への導線） */
#recruit #main .recruit-flow{
	margin: 2.5rem 0;
}
#recruit #main .recruit-flow-list{
	list-style: none;
	padding: 0;
	margin: 1.5rem 0 0;
	display: flex;
	gap: 2rem;
	flex-wrap: wrap;
}
#recruit #main .recruit-flow-list li{
	flex: 1;
	min-width: 260px;
}
#recruit #main .recruit-flow-list li a{
	display: block;
	height: 100%;
	box-sizing: border-box;
	padding: 1.5rem;
	border: 2px solid #004098;
	border-radius: 6px;
	background: #f5f7fc;
	text-decoration: none;
	transition: background .2s, box-shadow .2s;
}
#recruit #main .recruit-flow-list li a:hover{
	background: #eaf0fb;
	box-shadow: 0 4px 12px rgba(0,64,152,0.15);
}
#recruit #main .recruit-flow-list .step{
	display: inline-block;
	background: #f39800;
	color: #fff;
	font-size: 0.8rem;
	font-weight: bold;
	padding: 2px 12px;
	border-radius: 999px;
	margin: 0 0 .8rem;
}
#recruit #main .recruit-flow-list .ttl{
	display: block;
	font-size: 1.2rem;
	font-weight: bold;
	color: #004098;
	margin: 0 0 .6rem;
}
#recruit #main .recruit-flow-list .txt{
	display: block;
	color: #333;
	font-size: 0.92rem;
	line-height: 1.6;
	margin: 0 0 1.2rem;
}
#recruit #main .recruit-flow-list .btn{
	display: block;
	text-align: center;
	background: #004098;
	color: #fff;
	padding: 0.7rem;
	border-radius: 4px;
	font-weight: bold;
}
#recruit #main .recruit-flow-list li a:hover .btn{
	background: #f39800;
}
@media screen and (max-width: 1024px){
	#recruit #main .recruit-category,
	#recruit #main .recruit-flow-list{
		flex-direction: column;
	}
}

/* 働くPoint・研修ステップ・FAQ（募集要項ページ） */
.requirements #main .work-point{
	list-style: none;
	padding: 0;
	margin: 1rem 0 1.5rem;
}
.requirements #main .work-point li{
	position: relative;
	padding: 14px 16px 14px 52px;
	margin: 0 0 10px;
	background: #f5f7fc;
	border-left: 4px solid #004098;
	border-radius: 4px;
	line-height: 1.6;
}
.requirements #main .work-point li b{
	display: block;
	color: #004098;
	margin: 0 0 2px;
}
.requirements #main .work-point li:before{
	content: "\f00c";
	font-family: FontAwesome;
	position: absolute;
	left: 18px;
	top: 14px;
	color: #f39800;
	font-size: 1.1rem;
}
.requirements #main .train-step{
	list-style: none;
	counter-reset: step;
	padding: 0;
	margin: 1rem 0 1rem;
}
.requirements #main .train-step li{
	position: relative;
	padding: 14px 16px 14px 70px;
	margin: 0 0 10px;
	background: #fff;
	border: 1px solid #cdd6e6;
	border-radius: 4px;
	line-height: 1.6;
}
.requirements #main .train-step li:before{
	counter-increment: step;
	content: "STEP " counter(step);
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #004098;
	color: #fff;
	font-size: 0.7rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
}
.requirements #main .train-step li b{
	display: block;
	color: #004098;
	margin: 0 0 2px;
}
.requirements #main .train-debut{
	margin: 0 0 1.5rem;
	padding: 12px;
	text-align: center;
	font-weight: bold;
	color: #004098;
	background: #fff4e0;
	border-radius: 4px;
}
.requirements #main .faq-list{
	margin: 1rem 0 1.5rem;
}
.requirements #main .faq-list dt{
	position: relative;
	padding: 12px 16px 12px 44px;
	background: #004098;
	color: #fff;
	font-weight: bold;
	border-radius: 4px 4px 0 0;
	margin: 12px 0 0;
}
.requirements #main .faq-list dt:before{
	content: "Q";
	position: absolute;
	left: 16px;
	top: 12px;
	font-weight: bold;
}
.requirements #main .faq-list dd{
	position: relative;
	margin: 0;
	padding: 12px 16px 12px 44px;
	border: 1px solid #cdd6e6;
	border-top: none;
	border-radius: 0 0 4px 4px;
	line-height: 1.7;
}
.requirements #main .faq-list dd:before{
	content: "A";
	position: absolute;
	left: 16px;
	top: 12px;
	color: #f39800;
	font-weight: bold;
}

/* .requirements-table（正社員・パートナー募集要項テーブル） */
.requirements #main .requirements-table{
	width: 100%;
	border:#CCC 1px solid;
	border-collapse: collapse;
	margin: 0 0 20px;
}
.requirements #main .requirements-table th{
	background: #F2F2F2;
	padding:10px 15px;
	vertical-align: top;
	font-weight: bold;
	width:200px;
	border:#CCC 1px solid;
	text-align: left;
}
.requirements #main .requirements-table td{
	border:#CCC 1px solid;
	padding:10px 15px;
	word-break:break-all;
}
@media screen and (max-width: 1024px){
	.requirements #main .requirements-table th{
		display:list-item;
		list-style: none;
		width: auto;
		border:none;
		border-bottom:#CCC 1px solid;
	}
	.requirements #main .requirements-table td{
		display:list-item;
		list-style: none;
		border:none;
		border-bottom:#CCC 1px solid;
		padding:10px 15px;
	}
	.requirements #main .requirements-table tr:last-child td{
		border:none;
	}
}

/*** ------------------------------------------------------------------------------

08_募集要項詳細（#requirements-single）

-----------------------------------------------------------------------------  ***/

#requirements-single #visual{
	background: url(../../imgs/requirements-single/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#requirements-single #visual{
		background: url(../../imgs/requirements-single/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#requirements-single #visual{
		background: url(../../imgs/requirements-single/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}

#requirements-single #main .works .img{
	float:left;
}
#requirements-single #main .works .text{
	margin:0 0 0 300px;
}
@media screen and (max-width: 1024px){
	#requirements-single #main .works .img{
		/* width:130px; */
		float: none;
		margin: 0 auto 1.6em;
		text-align: center;
	}
	#requirements-single #main .works .text{
		/* margin:0 0 0 150px; */
		margin: 0 auto;
	}
}

/* .block  */
#requirements-single #main .point .block{
	display: flex;
	flex-wrap: wrap;
}
#requirements-single #main .point div.block{
	display: block;
}
#requirements-single #main .point .block{
	display: flex;
	flex-wrap: wrap;
}
#requirements-single #main .point .slick-track{
	display: flex;
}

#requirements-single #main .point .block li{
	width: 226px;
	margin:0 11px 10px 0;
}

#requirements-single #main .point .block .item{
    float: none;
    height: inherit;
    margin: 0 5px;
}
#requirements-single #main .point .block .item img{
	width: 100%;
}

#requirements-single #main .point .block li:nth-child(3n){
	margin:0 0 10px;
}
#requirements-single #main .point .block li span,
#requirements-single #main .point .block .item span{
	display:block;
	padding:10px;
	background: #F2F2F2;
}
#requirements-single #main .point .slick-dots{
	bottom: -60px;
	display: flex;
	justify-content: center;
}
#requirements-single #main .point .slider ul.slick-dots li{
	width: auto;
	margin:0;
	float: none;
}

@media screen and (max-width: 1024px){
	#requirements-single #main .point .block li{
		width: 49%;
		margin:0 0 10px;
	}
	#requirements-single #main .point .block li:nth-child(2n){
		margin:0 0 10px;
		float:right;
	}
	#requirements-single #main .point .block li:nth-child(2n+1){
		clear:both;
	}
	#requirements-single #main .point .block li img{
		width: 100%;
		height: auto;
	}
	#requirements-single #main .point .slick-dots li{
		width: auto;
		margin:0 5px;
	}
	#requirements-single #main .point .block li:nth-child(2n){
		float: none;
	}
}
/* .block.type02 */
#requirements-single #main .point .block.type02 li{
	width: 49%;
	float:left;
	margin:0 0 10px;
}
#requirements-single #main .point .block.type02 li:nth-child(2n){
	margin:0 0 10px;
	float:right;
}
#requirements-single #main .point .block.type02 li img{
	width: 100%;
	height: auto;
}
/* .block.type01 */
#requirements-single #main .point .block.type01 li{
	width: 100%;
	float: none;
	margin:0;
}
#requirements-single #main .point .block.type01 li img{
	float:left;
}
#requirements-single #main .point .block.type01 li span{
	background: none;
	padding:0;
	margin:0 0 0 246px;
}
@media screen and (max-width: 1024px){
	#requirements-single #main .point .block.type01 li img{
		float:left;
		width: 130px;
	}
	#requirements-single #main .point .block.type01 li span{
		margin:0 0 0 150px;
	}
}

/* .guideline  */
#requirements-single #main .guideline table{
	width: 100%;
	border:#CCC 1px solid;
}
#requirements-single #main .guideline table th{
	background: #F2F2F2;
	padding:10px 15px;
	vertical-align: top;
	font-weight: bold;
	width:200px;
	border:#CCC 1px solid;
}
#requirements-single #main .guideline table td{
	border:#CCC 1px solid;
	padding:10px 15px;
	word-break:break-all;
}
#requirements-single #main .guideline table td p{
	margin:0;
	font-size: 1em;
}
@media screen and (max-width: 1024px){
	#requirements-single #main .guideline table th{
		display:list-item;
		list-style: none;
		width: auto;
		border:none;
		border-bottom:#CCC 1px solid;
	}
	#requirements-single #main .guideline table td{
		display:list-item;
		list-style: none;
		border:none;
		border-bottom:#CCC 1px solid;
		padding:10px 15px;
	}
	#requirements-single #main .guideline table tr:last-child td{
		border:none;
	}
}

/* message */
#requirements-single #main .message .img{
	float:left;
}
#requirements-single #main .message .text{
	margin:0 0 0 300px;
}
@media screen and (max-width: 1024px){
	#requirements-single #main .message .img{
		width:130px;
	}
	#requirements-single #main .message .text{
		margin:0 0 0 150px;
	}
}

/* movie */
#requirements-single #main .movie-box{
	text-align: center;
	margin: 0 0 50px;
}
#requirements-single #main .movie-box video{
	width: 100%;
}
#requirements-single #main .youtube{
		text-align: center;
}
#requirements-single #main .youtube{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
#requirements-single #main .youtube iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
@media screen and (max-width: 1024px){
	#requirements-single #main .movie-box{
		margin: 0 10px 20px;
	}
	#requirements-single #main .youtube{
		position: relative;
		width: 100%;
		padding-top: 56.25%;
	}
	#requirements-single #main .youtube iframe{
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
	}
}

#requirements-single #main .tab{
	display: flex;
}
#requirements-single #main .tab li{
	width: 160px;
	margin: 0 5px 0 0;
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
	background: #bbb;
	font-weight: bold;
	font-size: 16px;
	color: #fff;
	border-radius: 5px 5px 0 0;
}
#requirements-single #main .tab li.current{
	background: #004098;
}
#requirements-single #main .target-cont{
	position: relative;
	width: 100%;
	overflow: hidden;
	padding: 0 0 40px;
}
#requirements-single #main .tab-target{
	position: absolute;
	left: 0;
	top: 0;
	visibility: hidden;
	width: 100%;
}
#requirements-single #main .tab-target.current{
	visibility: visible;
}
#requirements-single #main .tab-target{
	margin: 0 0 50px;
}
#requirements-single #main .related .list{
	display: flex;
}
#requirements-single #main .related .list .list-item{
	width: 32%;
	margin: 0 2% 0 0;
	padding: 20px;
	background: #fff;
	box-sizing: border-box;
}
#requirements-single #main .related .list .list-item:nth-child(3){
	margin: 0;
}
#requirements-single #main .related .list .list-item a{
	transition: 0.3s;
	display: block;
}
#requirements-single #main .related .list .list-item a:hover{
	opacity: 0.6;
	text-decoration: none;
}
#requirements-single #main .related .list .list-item img{
	max-width: 100%;
}

#requirements-single #cont {
	width: 100%;
}
#requirements-single #cont #topic-pass{
	width: 960px;
	margin: 0 auto 20px;
}
#requirements-single #cont .inner-cont{
	width: 960px;
	margin: 0 auto;
}

#requirements-single #cont .guideline{
	background: #F2F2F2;
	padding: 80px 0;
}
#requirements-single #cont .guideline h2::after{
	border: 10px #F2F2F2 solid;
    border-top: 10px #004098 solid;
}
#requirements-single #cont .guideline table th,
#requirements-single #cont .guideline table td{
	background: #fff;
}
#requirements-single #cont .guideline .main-contact{
	margin: 70px auto 0 !important;
	background: #fff;
}

#requirements-single #cont #form-area{
	padding: 40px 0;
}
#requirements-single #cont #form-area .link-list{
	display: flex;
	justify-content: center;
	margin: 20px 0 0;
}
#requirements-single #cont #form-area .link-list li{
	margin: 0 10px;
}
#requirements-single #cont #form-area .link-list li.btn-gray a{
	display:block;
	color:#FFF;
	font-weight: bold;
	width: 280px;
	padding: 12px 10px;
	background: #666;
	border-radius:5px;
	text-align: center;
	font-size: 1.25em;
	margin: 10px 5px 0 0;
	text-decoration: none;
	box-sizing: border-box;
}
@media screen and (min-width: 738px){
	#requirements-single #cont #form-area .link-list li.btn-gray a:hover{
		background: #999;
	}
}
@media screen and (max-width: 1024px){
	#requirements-single #cont #form-area .link-list li.btn-gray a{
		width: 100%;
	}
}


#requirements-single #cont .related{
	background: #F2F2F2;
	padding: 80px 0;
}
#requirements-single #cont .related h2::after{
	border: 10px #F2F2F2 solid;
    border-top: 10px #004098 solid;
}

@media screen and (max-width: 1024px){
	#requirements-single #main .tab li{
		width: 100px;
		margin: 0 5px 0 0;
		padding: 10px 5px;
		font-size: 14px;
	}
	#requirements-single #main .related .list{
		display: block;
	}
	#requirements-single #main .related .list .list-item{
		width: 100%;
		margin: 0 0 20px;
		text-align: center;
	}
	#requirements-single #cont #topic-pass{
		width: 100%;
		box-sizing: border-box;
	}
	#requirements-single #cont .inner-cont{
		width: 100%;
	}
	#requirements-single #cont .guideline{
		padding: 30px 0;
	}
	#requirements-single #cont #form-area{
		padding: 10px 0 0;
	}
	#requirements-single #cont .related{
		padding: 30px 0;
	}
	#requirements-single #cont .guideline .main-contact{
		margin: 40px 10px 0 !important;
	}
}

/*** ------------------------------------------------------------------------------ 

22_応募フォーム（#entry）

-----------------------------------------------------------------------------  ***/

#entry #visual{
	background: url(../../imgs/entry/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#entry #visual{
		background: url(../../imgs/entry/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#entry #visual{
		background: url(../../imgs/entry/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}
#entry .form .tel{
	font-size: 1.5em;
	font-weight: bold;
	color:#f39800;
}


/*** ------------------------------------------------------------------------------ 

会社概要（#company）

-----------------------------------------------------------------------------  ***/
#company #visual{
	background: url(../../imgs/company/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#company #visual{
		background: url(../../imgs/company/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#company #visual{
		background: url(../../imgs/company/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}

#hr-training #visual{
	background: url(../../imgs/hr-training/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#hr-training #visual{
		background: url(../../imgs/hr-training/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#hr-training #visual{
		background: url(../../imgs/hr-training/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}
/* .outline  */
#company #main .outline .inner h3{
	border-bottom:none;
}
#company #main .outline .inner h3:before{
	display:none;
}
#company #main .outline table{
	width: 100%;
	border:#CCC 1px solid;
}
#company #main .outline table th{
	background: #F2F2F2;
	padding:10px 15px;
	vertical-align: top;
	font-weight: bold;
	width:200px;
	border:#CCC 1px solid;
}
#company #main .outline table td{
	border:#CCC 1px solid;
	padding:10px 15px;
}
@media screen and (max-width: 1024px){
	#company #main .outline table th{
		display:list-item;
		list-style: none;
		width: auto;
		border:none;
		border-bottom:#CCC 1px solid;
	}
	#company #main .outline table td{
		display:list-item;
		list-style: none;
		border:none;
		border-bottom:#CCC 1px solid;
		padding:10px 15px;
	}
	#company #main .outline table tr:last-child td{
		border:none;
	}
}

/* .base  */
#company #main .base .block{
	margin:0 0 30px;
	padding:0 0 30px;
	border-bottom: #CCC 1px dotted;
}
#company #main .base .map{
	width: 300px;
	float:left;
}
#company #main .base .text{
	margin:0 0 0 330px;
}
#company #main .base .text h3{
	font-size: 1.666em;
	color:#1F8C53;
	border:0;
	margin:0 0 25px;
	font-weight:normal;
	padding:0;
}
#company #main .base .text h3:before{
	display:none;
}
#company #main .base .text table{
	width: 100%;
}
#company #main .base .text table th{
	vertical-align:top;
	font-weight: bold;
	width: 50px;
}
#company #main .base .text dt{
	font-weight: bold;
}
#company #main .base .text dd{
	margin:0 0 1.6em;
	padding:0 0 0 1em;
}
#company #main .base .text dl,
#company #main .base .text dd:last-of-type{
	margin:0;
}
@media screen and (max-width: 1024px){
	#company #main .base .map{
		width: 100%;
		float: none;
		margin:0 0 10px;
	}
	#company #main .base .map iframe{
		width: 100%;
	}
	#company #main .base .text{
		margin:0;
	}
	#company #main .base .text h3{
		font-size: 1.666em;
		color:#0074B9;
		margin:0 0 15px;
	}
	#company #main .base .text table{
		width: 100%;
	}
	#company #main .base .text table th{
		vertical-align:top;
		font-weight: bold;
		width: 50px;
	}
	#company #main .base .text dt{
		font-weight: bold;
	}
	#company #main .base .text dd{
		margin:0 0 1.6em;
	}
	#company #main .base .text dl,
	#company #main .base .text dd:last-of-type{
		margin:0;
	}
}


/*** ------------------------------------------------------------------------------ 

ブログ（#blog）

-----------------------------------------------------------------------------  ***/
#contact #visual{
	background: url(../../imgs/contact/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#contact #visual{
		background: url(../../imgs/contact/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#contact #visual{
		background: url(../../imgs/contact/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}
#contact #cont #main{
	width: 100%;
	float: none;
}
#contact #cont .form .submit{
	text-align: center;
	margin: 30px 0 0;
}
#contact #cont .form .submit input{
	display: inline-block;
	min-width: 260px;
	padding: 16px 40px;
	border: none;
	border-bottom: #c87a00 3px solid;
	border-radius: 5px;
	background: #f39800;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 1px;
	cursor: pointer;
	transition: background 0.3s;
}
#contact #cont .form .submit input:before{
	content: "\f0a9";
	padding: 0 8px 0 0;
	font-family: "FontAwesome";
}
#contact #cont .form .submit input:hover{
	background: #d98600;
}
@media screen and (max-width: 1024px){
	#contact #cont .form .submit input{
		width: 100%;
		min-width: 0;
	}
}
/* お問い合わせフォーム デザイン */
#contact #cont .form .inner{
	max-width: 820px;
	margin: 0 auto;
}
#contact #cont .form .inner > p{
	background: #f6f8fb;
	border-left: 4px solid #004098;
	border-radius: 4px;
	padding: 22px 26px;
	margin: 0 0 40px;
	line-height: 2;
	font-size: 15px;
}
#contact #cont .form .inner > p strong{
	background: none;
	color: #004098;
}
#contact #cont .form .inner > p strong a{
	color: #f39800;
}
#contact #cont .form .inner form .input-area{
	border: none;
	padding: 0;
	margin: 0;
}
#contact #cont .form table{
	width: 100%;
	border: none;
	border-collapse: collapse;
	font-size: 15px;
}
#contact #cont .form table tr{
	display: block;
	border-bottom: 1px solid #e7eaee;
	padding: 22px 0;
}
#contact #cont .form table tr:first-child{
	border-top: 1px solid #e7eaee;
}
#contact #cont .form table th,
#contact #cont .form table td{
	display: block;
	width: auto;
	border: none;
	background: none;
	padding: 0;
	text-align: left;
}
#contact #cont .form table th{
	font-weight: bold;
	color: #222;
	margin: 0 0 12px;
}
#contact #cont .form table th span{
	display: inline-block;
	background: #e60012;
	color: #fff;
	font-size: 11px;
	font-weight: bold;
	line-height: 1.4;
	border-radius: 3px;
	padding: 2px 9px;
	margin: 0 0 0 10px;
	position: static;
	vertical-align: middle;
}
#contact #cont .form table td input[type=text],
#contact #cont .form table td select,
#contact #cont .form table td textarea{
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #d5dae0;
	border-radius: 6px;
	padding: 14px 16px;
	font-size: 15px;
	color: #333;
	background: #fff;
	transition: border-color 0.2s, box-shadow 0.2s;
}
#contact #cont .form table td input[type=text]:focus,
#contact #cont .form table td select:focus,
#contact #cont .form table td textarea:focus{
	outline: none;
	border-color: #004098;
	box-shadow: 0 0 0 3px rgba(0,64,152,0.12);
}
#contact #cont .form table td textarea{
	min-height: 170px;
	resize: vertical;
	line-height: 1.7;
}
#contact #cont .form table td select{
	appearance: none;
	-webkit-appearance: none;
	min-width: 0;
	background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2012%208%27%3E%3Cpath%20fill%3D%27%23004098%27%20d%3D%27M6%208L0%200h12z%27/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 12px;
}

#blog #visual{
	background: url(../../imgs/blog/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#blog #visual{
		background: url(../../imgs/blog/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#blog #visual{
		background: url(../../imgs/blog/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}

/* 一覧 */
#blog #cont .list article{
	box-sizing:border-box;
	margin:0 0 20px;
}
#blog #cont .list article a{
	display:block;
	background:#FFFFFF;
	padding:20px;
	color:#333;
	border:#CCC 1px solid;
}
#blog #cont .list article a:hover{
	text-decoration: none;
	background: #F2F2F2;
}
#blog #cont .list article .img{
	float:right;
	margin:0 0 0 20px;
}
#blog #cont .list article .date{
	margin:0 0 5px;
	font-weight: bold;
}
#blog #cont .list article .date span{
	display:inline-block;
	color:#FFFFFF;
	background: #f39800;
	margin:0 0 0 10px;
	padding:0 10px;
}
#blog #cont .list article h3{
	font-weight: normal;
	margin:0 0 5px;
	font-size: 1.633em;
	border:none;
	padding:0;
}
#blog #cont .list article h3:before{
	display:none;
}
#blog #cont .list article .entry{
	font-size: 1.167em;
	margin:0;
}
@media screen and (max-width: 1024px){
	#blog #cont .blog{
		padding:20px 0;
	}
	#blog #cont .list article{
		width: auto;
		float:none;
	}
	#blog #cont .list article a{
		padding:15px;
	}
	#blog #cont .list article:nth-child(even){
		float:none;
	}
	#blog #cont .list article .img{
		width: 120px;
		margin:0 0 10px 20px;
	}
	#blog #cont .list article .date{
		font-size: 1em;
	}
	#blog #cont .list article .date span{
		padding:0 5px;
	}
	#blog #cont .list article .entry{
		clear:both;
	}
}

/* 詳細 */
#blog #cont article.single {
	margin:0 0 20px;
}
#blog #cont article.single .data{
	text-align: right;
	margin:0 0 1.6em;
}
#blog #cont article.single .data ul{
	display:inline-block;
}
#blog #cont article.single .data ul li{
	display:inline;
}
#blog #cont article.single .data p{
	display:inline;
}



/*** ------------------------------------------------------------------------------ 

11_貨物輸送サービス（#freight）

-----------------------------------------------------------------------------  ***/
#freight #visual{
	background: url(../../imgs/service/freight/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#freight #visual{
		background: url(../../imgs/service/freight/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#freight #visual{
		background: url(../../imgs/service/freight/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}

.service .reason {
	margin: 0 0 60px;
}

.service .main-contact ul li.tel {
	margin: 0 30px 0 0;
}

.service .reason h2 {
	margin: 0 0 50px;
}

.service .reason .block{
	padding:0 0 25px;
	margin:0 0 25px;
	border-bottom:#CCC 1px dotted;
	position:relative;
}

.service .reason .block02{
	margin: 0 0 15px;
	padding: 0;
	border-bottom: none;
}

.service .reason .block:last-of-type{
	border-bottom: none;
}

.service .reason .block .text{
	margin: 0;
}

.service #main .reason .block .text h3{
	color: #007F3F;
	font-size: 1.833em;
	font-weight: bold;
	margin:0 0 10px;
	padding: 0;
	border: none;
}

.service #main .reason .block .text h3::before {
	display: none;
}

.service .reason .block .text p:last-of-type{
	margin:0;
}

.service .reason .block .img {
	float:left;
	width: 224px;
	margin:0;
}

.service .reason .block .text{
	margin:0 0 0 244px;
}

.service .reason .block .text p.link {
	margin: 0;
	text-align: right;
}

.service .reason .block .text p.link a {
	background: url("/common/img/icon_arrow02.png") no-repeat scroll left center;
	color: #004098;
	font-size: 1.067em;
	padding: 0 0 0 20px;
	text-decoration: underline;
}

.service .reason .block .text p.link a:hover {
	text-decoration: none;
}


@media screen and (max-width: 1024px){
	.service .reason {
		margin: 0 0 40px;
	}
	
	.service .sp_none {
		display: none;
	}
	
	.service .reason p.catch {
		margin: 0 10px 25px !important;
	}
	
	.service .reason h2 {
		margin: 0 0 30px;
	}
	
	.service .reason .block02{
		margin: 0;
	}
	
	.service .reason .block:before{
		width: 36px;
		height: 36px;
		line-height: 36px;
		left:-5px;
		top:-10px;
	}
	.service .reason .block .text{
		margin: 0;
	}
	.service .reason .block .text h3{
		font-size: 1.333em;
	}
	
	.service .reason .block .img{
		width: 60%;
		margin:0 auto 10px !important;
		float:none;
		text-align: center;
	}
	.service .reason .block .text{
		margin:0;
	}
	.service .reason .block .text h3{
		font-size: 1.333em;
	}
	.service .reason .block .text p{
		clear:both;
	}
}


.service .performance {
	margin: 0 0 60px;
}

.service .performance h2 {
	margin: 0 0 50px;
}

.service .performance ul {
	margin: 0;
}

.service .performance ul li {
	width: 170px;
	margin: 0 6px 20px 0;
	float: left;
	text-align: center;
}

.service .performance ul li:nth-of-type(4n) {
	margin: 0 0 20px 0;
}

.service .performance ul li img {
	margin: 0 0 5px;
}


@media screen and (max-width: 1024px){
	.service .performance {
		margin: 0 0 40px;
	}
	
	.service .performance p.catch {
		margin: 0 10px 25px !important;
	}
	
	.service .performance h2 {
		margin: 0 0 30px;
	}
	
	.service .performance ul li {
		width: 48%;
		margin: 0 0 20px 0;
		float: left;
		text-align: center;
	}
	
	.service .performance ul li:nth-of-type(even) {
		float: right;
	}
	
	.service .performance ul li img {
		margin: 0 auto 5px;
		display: block;
	}
}


.service .price {
	margin: 0 0 60px;
}

.service .price h2 {
	margin: 0 0 50px;
}

.service .price ul {
	margin: 0;
}

.service .price ul li {
	padding-left: 1em;
	text-indent: -1em;
}


@media screen and (max-width: 1024px){
	.service .price {
		margin: 0 0 40px;
	}
	
	.service .price h2 {
		margin: 0 0 30px;
	}
}


.service .other {
	margin: 0 0 60px;
}

.service .other h2 {
	margin: 0 0 40px;
}

.service .other ul {
	margin: 0;
}

.service .other ul li {
	margin: 0 20px 20px 0;
	float: left;
}

.service .other ul li:nth-of-type(3),
.service .other ul li:nth-of-type(5) {
	margin: 0 0 20px 0;
}


@media screen and (max-width: 1024px){
	.service .other {
		margin: 0 0 40px;
	}
	
	.service .other h2 {
		margin: 0 0 30px;
	}
	
	.service .other ul li {
		clear: both;
		width: auto;
		margin: 0 0 20px 0;
		float: none;
		text-align: center;
	}
}


.service .car_introduction h2 {
	margin: 0 0 40px;
}

.service .car_introduction ul.img {
	margin: 0 0 40px;
}

.service .car_introduction ul.img li {
	width: 340px;
	margin: 0 0 20px;
	float: left;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
}

.service .car_introduction ul.img li:nth-of-type(even) {
	float: right;
}

.service .car_introduction ul.img li img {
	margin: 0 0 10px;
}

.service .car_introduction dl {
	margin: 0 0 30px;
}

.service .car_introduction dl dt {
	margin: 0 0 10px;
	font-size: 16px;
	font-weight: bold;
}

.service .car_introduction dl dd {
	margin: 0 0 20px;
}

.service .car_introduction dl dd table {
	width: 100%;
	margin: 0;
	border: solid 1px #ccc;
	font-size: 14px !important;
}

.service .car_introduction dl dd table th {
	padding: 5px 15px;
	border: solid 1px #ccc;
}

.service .car_introduction dl dd table thead th {
	background-color: #F0F0F0;
	text-align: center;
}

.service .car_introduction dl dd table tbody th {
	font-weight: bold;
}

.service .car_introduction dl dd table td {
	padding: 5px 15px;
	border: solid 1px #ccc;
	text-align: right;
}


@media screen and (max-width: 1024px){
	.service .car_introduction ul.img li {
		width: 48%;
	}
	
	.service .car_introduction dl dd table th {
		padding: 5px 10px;
	}
	
	.service .car_introduction dl dd table td {
		padding: 5px 10px;
	}
}


/*** ------------------------------------------------------------------------------ 

12_冷蔵冷凍輸送サービス（#refrigerator）

-----------------------------------------------------------------------------  ***/
#refrigerator #visual{
	background: url(../../imgs/service/refrigerator/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#refrigerator #visual{
		background: url(../../imgs/service/refrigerator/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#refrigerator #visual{
		background: url(../../imgs/service/refrigerator/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}


#refrigerator .performance p.catch em {
	color: #f39800;
	font-style: normal;
	font-weight: bold;
}



/*** ------------------------------------------------------------------------------ 

13_ローリー輸送（#tanklorry）

-----------------------------------------------------------------------------  ***/
#tanklorry #visual{
	background: url(../../imgs/service/tanklorry/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#tanklorry #visual{
		background: url(../../imgs/service/tanklorry/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#tanklorry #visual{
		background: url(../../imgs/service/tanklorry/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}



/*** ------------------------------------------------------------------------------ 

14_重量物・コイル輸送（#coil）

-----------------------------------------------------------------------------  ***/
#coil #visual{
	background: url(../../imgs/service/coil/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#coil #visual{
		background: url(../../imgs/service/coil/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#coil #visual{
		background: url(../../imgs/service/coil/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}



/*** ------------------------------------------------------------------------------ 

15_車両紹介（#vehicleintroduction）

-----------------------------------------------------------------------------  ***/
#vehicleintroduction #visual{
	background: url(../../imgs/service/vehicleintroduction/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#vehicleintroduction #visual{
		background: url(../../imgs/service/vehicleintroduction/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#vehicleintroduction #visual{
		background: url(../../imgs/service/vehicleintroduction/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}


#vehicleintroduction #main .feature {
	margin: 0 0 40px;
}

#vehicleintroduction #main .feature h3 {
	margin: 0 20px 20px;
}

#vehicleintroduction #main .feature h3::before {
	display: none;
}

#vehicleintroduction #main .feature ul {
	margin: 0;
}


@media screen and (max-width: 1024px){
	#vehicleintroduction #main .feature img {
		margin: 0 0 10px;
	}
	
	#vehicleintroduction #main .feature h3 {
		margin: 0 0 20px;
		padding: 0;
		border: none;
	}
	
	#vehicleintroduction #main .feature .text {
		clear: both;
		margin: 0;
	}
}


@media screen and (max-width: 1024px){
	#vehicleintroduction #main .performance h3 {
		margin: 0 10px 10px;
	}
	
	#vehicleintroduction #main .performance ul li:nth-of-type(3) {
		clear: both;
	}
}



/*** ------------------------------------------------------------------------------ 

16_パートナー運送会社募集中（#partner）

-----------------------------------------------------------------------------  ***/
#partner #visual{
	background: url(../../imgs/service/partner/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#partner #visual{
		background: url(../../imgs/service/partner/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#partner #visual{
		background: url(../../imgs/service/partner/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}


#partner .headline dl {
	margin: 40px 0 0;
	padding: 20px;
	border: solid 4px #ccc;
}

#partner .headline dl dt {
	margin: 0 0 20px;
	color: #007F3F;
	font-size: 22px;
	font-weight: bold;
}

#partner .headline dl dd {
	min-height: 23px;
	margin: 0 0 20px;
	padding: 0 0 0 35px;
	background: url(../../imgs/service/partner/icon01.png) no-repeat left center;
}


@media screen and (max-width: 1024px){
	#partner .headline dl dd {
		background: url(../../imgs/service/partner/icon01.png) no-repeat left top;
	}
	
	#partner .headline dl dd:last-of-type {
		margin: 0;
	}
}


#partner .reason .block::before{
	content:"1";
	display:block;
	width: 40px;
	height: 40px;
	background: #f39800;
	border-radius:50%;
	text-align: center;
	font-weight: bold;
	color:#FFF;
	font-size: 1.633em;
	line-height: 40px;
	position:absolute;
	left:-13px;
	top:-13px;
}
#partner .reason .block:nth-child(2):before{
	content:"2";
}
#partner .reason .block:nth-child(3):before{
	display: none;
}
#partner .reason .block:nth-child(4):before{
	content:"3";
}
#partner .reason .block:nth-child(5):before{
	content:"4";
}
#partner .reason .block:nth-child(6):before{
	content:"5";
}


@media screen and (max-width: 1024px){
	#partner .reason .block::before{
		left: 0;
	}
}

/*** ------------------------------------------------------------------------------ 

お問い合わせ完了（#thanks-contact）

-----------------------------------------------------------------------------  ***/
#thanks-contact #visual{
	background: url(../../imgs/entry/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#thanks-contact #visual{
		background: url(../../imgs/entry/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#thanks-contact #visual{
		background: url(../../imgs/entry/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}


/*** ------------------------------------------------------------------------------ 

LINE

-----------------------------------------------------------------------------  ***/
#line-sp-btn{ display: none;}


#side_line_btn{
	position:fixed;
	left:0;
	top:100px;
	z-index: 999;
}

@media screen and (max-width: 1024px){
	#line-sp-btn{
		display: block;
		position: fixed;
		right: 0;
		bottom: 60px;
		background: #38af36;
		padding:5px 10px;
		border-radius: 6px 0 0 6px;
	}
	#line-sp-btn a{
		color: #fff;
		font-size: 9px;
		text-align: center;
		box-sizing: border-box;
		display:flex;
		flex-wrap:wrap;
		width: 45px;
    	margin: 0 auto;
		line-height:1;
	}
	#line-sp-btn img{
		width:45px;
		height:45px;
		padding-bottom: 3px;
	}
	#line-sp-btn a:hover{
		text-decoration: none;
	}
	#side_line_btn{
		display:none;
	}
	
}

/*** ------------------------------------------------------------------------------ 

説明会（#briefing）

-----------------------------------------------------------------------------  ***/
#briefing  #visual{
	background: url(../../imgs/entry/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#briefing #visual{
		background: url(../../imgs/entry/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#briefing #visual{
		background: url(../../imgs/entry/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}

#briefing #topic-pass{
	width: 960px;
	margin: 0 auto 10px;
}
#briefing #cont{
	width: 100%;
}
#briefing #cont .inner{
	width: 960px;
	margin: 0 auto;
}
#briefing #cont .msg{
	background: #F2F2F2;
	margin: 0;
	padding: 80px 0 40px;
}
#briefing #cont .msg h1{
	text-align: center;
	font-size: 32px;
	border: none;
	padding: 10px 0;
	color: #004098;
}
#briefing #cont .msg h1::before{
	content: none;
}
#briefing #cont .msg p{
	font-size: 16px;
}
#briefing .pageLink {
    margin: 0;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center;
    padding:20px 0 0;
}
#briefing .pageLink li{
    margin:0 10px 0 0;
}
#briefing .pageLink li:last-child{
    margin:0;
}
#briefing .pageLink li a{
    background:#004098;
    color:#fff;
    padding:10px 15px;
    border:1px solid #004098;
    text-decoration:none;
    width: 150px;
	display:inline-block;
	text-align:center;
}
#briefing .pageLink li a:hover{
    background:#fff;
    color:#004098;
}
#briefing #cont .point{
	background: #F2F2F2;
	margin: 0;
	padding: 80px 0 0;
}
#briefing #cont .sch{
	background: #F2F2F2;
	padding: 80px 0 50px;
}
/* 先輩社員の声（写真左・テキスト右） */
#briefing #cont #voice{
	padding: 60px 0 0;
}
#briefing #cont #voice .fl-box{
	display: flex;
	align-items: center;
	gap: 30px;
	margin: 0 0 30px;
	padding: 20px;
	background: #fff;
	border: 1px solid #cdd6e6;
	border-radius: 6px;
}
#briefing #cont #voice .fl-box:last-of-type{
	margin: 0;
}
#briefing #cont #voice .fl-box .img{
	width: 320px;
	flex-shrink: 0;
}
#briefing #cont #voice .fl-box .img img{
	width: 100%;
	height: auto;
	display: block;
	border-radius: 4px;
}
#briefing #cont #voice .fl-box .text{
	flex: 1;
}
#briefing #cont #voice .fl-box .text .name{
	font-weight: bold;
	color: #004098;
	margin: 0 0 4px;
}
#briefing #cont #voice .fl-box .text .job{
	font-size: 0.95em;
	color: #555;
	margin: 0 0 12px;
}
#briefing #cont #voice .fl-box .text h4{
	font-size: 1.333em;
	line-height: 1.6;
}
@media screen and (max-width: 1024px){
	#briefing #cont #voice{
		padding: 40px 0 0;
	}
	#briefing #cont #voice .fl-box{
		display: block;
	}
	#briefing #cont #voice .fl-box .img{
		width: 100%;
		margin: 0 0 14px;
	}
}
#briefing #cont .form{
	padding: 60px 0 0;
}
#briefing #main .point h2:after,
#briefing #main .sch h2:after{
    border: 10px #F2F2F2 solid;
	border-top: 10px #004098 solid;
}

@media screen and (max-width: 1024px){
	#briefing #topic-pass{
		width: 100%;
		box-sizing: border-box;
	}
	#briefing #main h1:before{
		background: #004098;
	}
	#briefing #cont .inner{
		width: 100%;
		padding: 0 10px;
		box-sizing: border-box;
	}
	#briefing #cont .msg{
		padding: 30px 0 0;
	}
	#briefing #cont .msg h1{
		font-size: 24px;
	}
	#briefing #cont .msg .text p{
		font-size: 14px;
	}
	#briefing .pageLink {
		display:block;
	}
	#briefing .pageLink li{
		text-align:center;
		margin:0 0 10px;
	}
	#briefing .pageLink li:last-child{
		margin:0;
	}
	#briefing .pageLink li a{
		width: 90%;
	}
	#briefing #cont .point{
		padding: 30px 0 0;
	}
	#briefing #cont .sch{
		padding: 30px 0 20px;
	}
	#briefing #main h2{
		margin: 0 -10px 45px;
		padding: 5px 10px;
	}
}

#briefing #cont #main{
	width: 100%;
}
#briefing #cont #main section .block{
	display: flex;
}
#briefing #cont #main section.point .block{
	background: #fff;
	margin: 0 0 20px;
	padding: 20px;
}
#briefing #cont #main section .block:last-of-type{
	margin: 0;
}

#briefing #cont #main section.msg .block .img{
	width: 400px;
	margin: 0;
}
#briefing #cont #main section.point .block .img{
	width: 300px;
	margin: 0;
}
#briefing #cont #main section .block .img img{
	max-width: 100%;
}
#briefing #cont #main section .block .text{
	padding: 0 0 0 30px;
	box-sizing: border-box;
}
#briefing #cont #main section.msg .block .text{
	width: 560px;
}
#briefing #cont #main section.point .block .text{
	width: 620px;
}
#briefing #cont #main section.point .block .text p{
	font-size: 16px;
}
#briefing #cont #main section .block .text p.tit{
	font-weight: bold;
	font-size: 20px;
	position: relative;
	margin: 0 0 10px;
	padding: 8px 0 8px 60px;
}
#briefing #cont #main section .block .text p.tit::before{
	position: absolute;
	left: -35px;
	top: 50%;
	margin: -35px 0 0;
	padding: 3px 0 0 30px;
	box-sizing: border-box;
	z-index: 10;
	content: '01';
	width: 70px;
	height: 70px;
	font-weight: bold;
	font-size: 42px;
}
#briefing #cont #main section .block:nth-of-type(1) .text .tit::before{	content: '01';}
#briefing #cont #main section .block:nth-of-type(2) .text .tit::before{	content: '02';}
#briefing #cont #main section .block:nth-of-type(3) .text .tit::before{	content: '03';}
#briefing #cont #main section .block:nth-of-type(4) .text .tit::before{	content: '04';}
#briefing #cont #main section .block:nth-of-type(5) .text .tit::before{	content: '05';}


@media (max-width: 1024px) {
	#briefing #cont #main section .block{
		display: block;
	}
	#briefing #cont #main section.msg .block .img{
		width: 100%;
		margin: 0 0 20px;
	}
	#briefing #cont #main section.point .block .img{
		width: 100%;
	}
	#briefing #cont #main section .block .text{
		padding: 0;
	}
	#briefing #cont #main section.msg .block .text{
		width: 100%;
	}
	#briefing #cont #main section.msg .block .text p:last-of-type{
		margin: 0;
	}
	#briefing #cont #main section.point .block .text{
		width: 100%;
	}
	#briefing #cont #main section.point .block .text p{
		font-size: 14px;
	}
	#briefing #cont #main section.point .block .text p.tit{
		margin: 15px 0 10px 25px;
		padding: 0 0 0 40px;
		line-height: 1.4;
		font-size: 20px;
	}
	#briefing #cont #main section.point .block .text p.tit::before {
		left: -26px;
		margin: -26px 0 0;
		padding: 2px 0 0 5px;
		width: 52px;
		height: 52px;
		font-size: 32px;
	}
}


#briefing #cont .schedule.list .list-item {
  margin: 0 60px 0 0;
  background: #fff;
  padding: 20px;
  border:4px solid #ffbe5c;
}
#briefing #cont .schedule.list .list-item.is-night {
	border:4px solid #8476ff;
}
@media (max-width: 1024px) {
  #briefing #cont .schedule.list .list-item {
    margin: 0 0 30px;
  }
}
#briefing #cont .schedule.list .list-item .table01 {
  width: 100%;
}
@media (max-width: 1024px) {
  #briefing #cont .schedule.list .list-item .table01 {
		width: 100%;
	  margin-bottom: 15px;
  }
}
#briefing #cont .schedule.list .list-item .table01 th {
	background: #004098;
	border-bottom: 5px solid #fff;
	color: #fff;
	text-align: center;
	padding: 5px;
	font-size: 16px;
	width: 35%;
}
#briefing #cont .schedule.list .list-item .table01 td {
	border-bottom: 5px solid #fff;
	padding: 5px;
	font-size: 16px;
	width: 65%;
}
@media (max-width: 1024px) {
  #briefing #cont .schedule.list .list-item .table01 td {
    width: auto;
  }
}
#briefing #cont .schedule.list .list-item p.btn {
  margin: 20px 0 0;
}
@media (max-width: 1024px) {
  #briefing #cont .schedule.list .list-item p.btn {
    margin: 10px 0 0;
  }
}

/* 営業所グループ見出し */
#briefing #cont .venue-group {
	margin-bottom: 2.5rem;
}
#briefing #cont .venue-heading {
	font-size: 1em;
	font-weight: bold;
	color: #004098;
	background: #f0f4fa;
	border-left: 5px solid #f39800;
	padding: 0.55em 1em;
	margin-bottom: 1rem;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.5em;
}
#briefing #cont .venue-heading .venue-label {
	font-size: 1.05em;
}
#briefing #cont .venue-heading .venue-addr {
	font-size: 0.8em;
	font-weight: normal;
	color: #555;
}

/* ── 事業所ごとのカラー ── */
/* ご希望日程 */
#briefing #cont .venue-flex .venue-heading {
	border-left-color: #757575;
	background: #f5f5f5;
	color: #424242;
}
#briefing #cont .venue-flex .list-item {
	border-color: #9e9e9e;
}
/* 野洲本社 */
#briefing #cont .venue-yasu .venue-heading {
	border-left-color: #004098;
	background: #e8eef8;
	color: #003070;
}
#briefing #cont .venue-yasu .list-item {
	border-color: #004098;
}
/* 安土営業所 */
#briefing #cont .venue-azuchi .venue-heading {
	border-left-color: #00897b;
	background: #e0f5f1;
	color: #00695c;
}
#briefing #cont .venue-azuchi .list-item {
	border-color: #00897b;
}
/* 東京営業所 */
#briefing #cont .venue-tokyo .venue-heading {
	border-left-color: #c62828;
	background: #fce8e8;
	color: #b71c1c;
}
#briefing #cont .venue-tokyo .list-item {
	border-color: #c62828;
}
/* 横浜営業所 */
#briefing #cont .venue-yokohama .venue-heading {
	border-left-color: #0277bd;
	background: #e1f0fb;
	color: #01579b;
}
#briefing #cont .venue-yokohama .list-item {
	border-color: #0277bd;
}
/* 福岡営業所 */
#briefing #cont .venue-fukuoka .venue-heading {
	border-left-color: #e65100;
	background: #fff3e0;
	color: #bf360c;
}
#briefing #cont .venue-fukuoka .list-item {
	border-color: #e65100;
}
/* 夜間枠は各事業所カラーの上書きを防ぐため is-night を優先 */
#briefing #cont .list-item.is-night {
	border-color: #7c4dff !important;
}

#briefing #cont .row2.list {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}
#briefing #cont .row2.list .list-item {
	width: 32%;
	margin: 0 2% 30px 0;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
}
/* カード内 table を伸ばして等高 */
#briefing #cont .row2.list .list-item .table01 {
	flex: 1;
}
#briefing #cont .row2.list .list-item:nth-of-type(3n){
	margin: 0 0 30px 0;
}
@media (max-width: 1024px) {
  #briefing #cont .row2.list .list-item {
    width: 100%;
    margin: 0 0 20px;
    padding: 10px;
    box-sizing: border-box;
  }
}


#briefing #cont #main p.btn {
  width: 100%;
  margin: 15px auto 0;
  text-align: center;
}
@media (max-width: 1024px) {
  #briefing #cont #main p.btn {
    width: 100%;
    margin: 15px 0 0;
  }
}
#briefing #cont #main p.btn a {
  display: block;
  background: #f39800;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  border-radius: 10px;
  padding: 10px 0;
  border: 2px solid #f39800;
  transition: 0.3s;
}
@media (max-width: 1024px) {
  #briefing #cont #main p.btn a {
    padding: 14px 0;
    font-size: 13px;
    border: none;
  }
}
#briefing #cont #main p.btn a:hover {
  background: #fff;
  color: #f39800;
}
@media (max-width: 1024px) {
  #briefing #cont #main p.btn a:hover {
    background: #f39800;
    color: #fff;
    border: none;
  }
}

#briefing #cont .form .inner .input-area{
	border: none;
	padding: 0;
}
#briefing #cont .form .inner .step01 p,
#briefing #cont .form .inner .step02 p,
#briefing #cont .form .inner .step03 p{
	line-height: 2.0;
}
#briefing #cont .form .inner .step01 .hiss{
	background: #f39800;
	color: #fff;
	display: inline-block;
	margin: 0 5px 0 0;
	padding: 1px 5px 2px;
	line-height: 1.0;
	font-size: 14px;
}
#briefing #cont .form .inner .step01 .txt-orenge{
	font-size: 14px;
	color: #f39800;
}
#briefing #cont .form .inner table{
	border: none;
}
#briefing #cont .form .inner table th{
	width: 25%;
	display: table-cell;
	padding: 30px 0 30px 30px;
	box-sizing: border-box;
	border: none;
	background: #fff;
}
#briefing #cont .form .inner table tr:nth-of-type(odd) th{
	background: #F2F2F2;
}
#briefing #cont .form .inner table th span{
	background: #f39800;
	position: static;
	margin: 0 0 0 10px;
}
#briefing #cont .form .inner table td{
	width: 75%;
	display: table-cell;
	padding: 30px 30px 30px 0;
	box-sizing: border-box;
	border: none;
}
#briefing #cont .form .inner table tr:nth-of-type(odd) td{
	background: #F2F2F2;
}
#briefing #cont .form .inner table td input[type=text]{
	background: #fff;
	border: 1px solid #e0e0e0;
	padding: 19px;
	transition: background 0.3s, border-color 0.3s;
}
#briefing #cont .form .inner table td input[type=text].autofilled{
	background: #fffbea;
	border-color: #f39800;
}
#briefing #cont .form .inner table td select{
	width: 100%;
	background: #fff;
	border: 1px solid #e0e0e0;
	padding: 19px;
	font-size: 1em;
	color: #333;
	appearance: none;
	-webkit-appearance: none;
	background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2012%208%27%3E%3Cpath%20fill%3D%27%23999%27%20d%3D%27M6%208L0%200h12z%27/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 19px center;
	background-size: 12px;
	transition: background-color 0.3s, border-color 0.3s;
}
#briefing #cont .form .inner table td select.autofilled{
	background-color: #fffbea;
	border-color: #f39800;
}
#briefing #cont .form .inner table td textarea{
	background: #fff;
	border: 1px solid #e0e0e0;
	padding: 19px;
}
#briefing #cont .form .inner .btn input{
	border-bottom: none;
}
#briefing #cont #entry-form{
	margin: 0;
}
#briefing #cont #entry-form .mw_wp_form{
	width: 75%;
	margin: 0 auto;
}
#briefing #cont .form .inner .mw_wp_form_preview table td{
	border: none;
}
#briefing #cont .mwform-radio-field label {
	width: 120px;
	display: inline-block;
}

#briefing  form input[type="radio"] {
	display: none;
}

#briefing  form .mwform-radio-field-text {
	padding: 0 0 0 30px;
	position: relative;
	display: inline-block;
}

#briefing  form .mwform-radio-field-text::before {
	content: "";
	width: 20px;
	height: 20px;
	background-color: #fff;
	display: block;
	position: absolute;
	border: 1px solid #eee;
	left: 0;
	top: 3px;
}
#briefing form input[type="radio"]:checked + .mwform-radio-field-text::before {
	background-color: #f39800;
}

#briefing #cont .form .inner .step02,
#briefing #cont .form .inner .step03{
	display: none;
}
#briefing #cont .form .inner .mw_wp_form_error .step02{
	display: block;
}
#briefing #cont .form .inner .mw_wp_form_error .step01{
	display: none;
}
#briefing #cont .form .inner .mw_wp_form_preview .step03{
	display: block;
}
#briefing #cont .form .inner .mw_wp_form_preview .step01{
	display: none;
}

@media (max-width:1024px){
	#briefing #cont .form .inner .step01,
	#briefing #cont .form .inner .step02,
	#briefing #cont .form .inner .step03{
		padding: 0 10px;
	}
	#briefing #cont .form .inner .step01 .tit-line{
		margin: 0 0 15px;
		padding: 10px 0 0;
	}
	#briefing #cont .form .inner .step01 .tit-line::before{
		left: 0;
	}
	#briefing #cont #entry-form{
		padding: 0 0 60px 0;
	}
	#briefing #cont #entry-form .mw_wp_form{
		width: 100%;
	}
	#briefing #cont #entry-form .input-area{
		margin: 0 -10px;
	}
	#briefing #cont #entry-form table th{
		width: 100%;
		float: left;
		margin: 0;
		padding: 20px 20px 10px;
		box-sizing: border-box;
	}
	#briefing #cont #entry-form table td{
		width: 100%;
		float: left;
		margin: 0;
		padding: 0 20px 20px;
		box-sizing: border-box;
	}
	#briefing #cont .form .inner table td input[type=text]{
		padding: 10px;
	}
	#briefing #cont .form .inner table tr td .horizontal-item{
		display: block;
		margin: 0 0 5px;
	}
	#briefing #cont .mw_wp_form .horizontal-item + .horizontal-item{
		margin-left: 0;
	}
}

#briefing #cont .form .inner .btn{
	margin: 40px auto;
	text-align: center;
}
#briefing #cont .form .inner .btn input{
	display: inline-block;
	min-width: 260px;
	padding: 15px 25px;
	border-radius: 5px;
	color: #FFF;
	text-align: center;
	font-size: 16px;
	background: #c60125;
    border: none;
	border-bottom:  #97001c 3px solid;
	text-decoration: none;
    cursor: pointer;
	margin: 0 10px 20px;
	transition: 0.3s;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
}
#briefing #cont .form .inner .btn input:before{
	content: "\f0a9";
	padding: 0 5px 0 0;
    font-family: "FontAwesome";
}
#briefing #cont .form .inner .btn input:hover{
	background: #97001c;
}
#briefing #cont .form .inner .btn input:nth-of-type(2){
	background: #999;
	border-bottom:  #666 3px solid;
}
#briefing #cont .form .inner .btn input:nth-of-type(2):hover{
	background: #666;
}

#briefing #cont .entry-end p{
	margin: 60px 0;
}
@media (max-width:1024px){
	#briefing #cont .form .inner .btn{
		margin: 0 auto;
		text-align: center;
	}
}
#briefing #cont .schedule.list .list-item .table01 td span {
    color:#ff0000;
    font-weight:bold;
}
#briefing #cont .schedule.list .list-item .table01 td .s-txt{
    display:block;
    font-size:0.8em;
}

/*** ------------------------------------------------------------------------------ 

会社説明会 申し込み完了（#briefing-thank）

-----------------------------------------------------------------------------  ***/
#briefing-thank #cont,
#briefing-thank #main{
	width: 100%;
}
#briefing-thank #topic-pass{
	width: 1000px;
	margin: 0 auto;
}
#briefing-thank #main .inner{
	width: 1000px;
	margin: 0 auto;
}
@media screen and (max-width: 1024px){
	#briefing-thank #topic-pass{
		width: 100%;
		box-sizing: border-box;
	}	
	#briefing-thank #main .inner{
		width: 100%;
		padding: 0 10px;
		box-sizing: border-box;
	}
}

#briefing-thank #visual{
	background: url(../../imgs/entry/visual.jpg) center center no-repeat #F2F2F2;
	position: relative;
	line-height: 1.8;
	box-sizing: border-box;
	padding: 40px 0 0;
}
#briefing-thank #visual::before{
	position: absolute;
	left: 0;
	top: 0;
	content: '';
	width: 100%;
	height: 100%;
	background: rgba(0,0,0, 0.2);
}
#briefing-thank #visual::after{	
	position: absolute;
	left: 50%;
	bottom: 10px;
	margin: 0 0 0 230px;
	content: '';
	width: 160px;
	height: 160px;
	background: url("../../imgs/briefing/a_02.png") no-repeat center center;
	background-size: 160px auto;
}
#briefing-thank #visual p{
	font-weight: bold;
	position: relative;
	z-index: 1;
}
@media screen and (min-width: 1200px){
	#briefing-thank #visual{
		background: url(../../imgs/entry/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#briefing-thank #visual{
		background: url(../../imgs/entry/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
		overflow: visible;
	}
	#briefing-thank #visual{
		background: url(../../imgs/entry/visual.jpg) center center no-repeat #F2F2F2;
		position: relative;
		line-height: 1.8;
		box-sizing: border-box;
		padding: 30px 10px 0;
	}
	#briefing-thank #visual::after{	
		position: absolute;
		left: inherit;
		right: 0;
		bottom: -20px;
		margin: 0;
		content: '';
		width: 90px;
		height: 90px;
		background: url("../../imgs/briefing/02_ball.png") no-repeat center center;
		background-size: 90px auto;
	}
	#briefing-thank #visual p{
		text-align: left;
		font-size: 18px;
		font-weight: bold;
	}
}

/* briefing-thanks-guide */
#briefing-thank  #briefing-thanks-guide{
	margin: 0;
	padding: 60px 0 0;
}
#briefing-thank  #briefing-thanks-guide .headline{
	margin: 0 0 60px;
}
#briefing-thank  #briefing-thanks-guide .headline h2{
	background: none;
	color: #004098;
	margin: 0 0 20px;
	text-align: center;
	font-size: 32px;
}
#briefing-thank  #briefing-thanks-guide .headline h2::after{
	content: none;
}
#briefing-thank  #briefing-thanks-guide .headline p{
	max-width: 1000px;
	text-align: center;
	background: #f0f0f0;
	margin: 0 auto;
	padding: 60px 40px;
	border-radius: 10px;
	font-size: 20px;
	font-weight: bold;
}
#briefing-thank  #briefing-thanks-guide .movie-cont{
	background: #f0f0f0;
	padding: 60px 0;
}
#briefing-thank  #briefing-thanks-guide .movie-cont h3{
	text-align: center;
	border-bottom: none;
	margin: 0;
	padding: 10px 0;
	font-size: 24px;
	line-height: 1.0;
}
#briefing-thank  #briefing-thanks-guide .movie-cont h3::before{
	content: none;
}
#briefing-thank  #briefing-thanks-guide .movie-cont h3 + p{
	text-align: center;
}
#briefing-thank #briefing-thanks-guide .movie-cont .movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#briefing-thank #briefing-thanks-guide .movie-cont .movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 1024px){
	#briefing-thank  #briefing-thanks-guide{
		padding: 30px 0 0;
	}
	#briefing-thank  #briefing-thanks-guide .headline h2{
		font-size: 24px;
		margin: 0 0 10px;
	}
	#briefing-thank  #briefing-thanks-guide .headline p{
		width: calc(100% - 20px);
		margin: 0 auto;
		padding: 40px 20px;
		font-size: 14px;
		box-sizing: border-box;
	}
	#briefing-thank  #briefing-thanks-guide .movie-cont h3{
		font-size: 21px;
	}
}

/* flow */
#briefing-thank #flow{
	margin: 0;
	padding: 80px 0;
}
#briefing-thank #flow h2{
	background: none;
	color: #004098;
	text-align: center;
	font-size: 28px;
	margin: 0 0 40px;
}
#briefing-thank #flow h2::after{
	position: absolute;
	left: 50%;
	bottom: 0;
	content: '';
	margin: 0 0 0 -20px;
	width: 40px;
	height: 2px;
	background: #004098;
	border: none;
}
#briefing-thank #flow .list{
	display: flex;
}
#briefing-thank #flow .list .list-item{
	width: 310px;
	margin: 0 45px 0 0;
	position: relative;
}
#briefing-thank #flow .list .list-item::after{
	position: absolute;
	right: -35px;
	top: 50%;
	margin: -30px 0 0;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 0 15px 20px;
	border-color: transparent transparent transparent #004098;
}
#briefing-thank #flow .list .list-item:last-of-type{
	margin: 0;
}
#briefing-thank #flow .list .list-item:last-of-type::after{
	content: none;
}
#briefing-thank #flow .list .list-item .img + p{
	margin: 0;
}
#briefing-thank #flow .list .list-item img{
	max-width: 100%;
}
@media screen and (max-width: 1024px){
	#briefing-thank #flow{
		padding: 40px 0;
	}
	#briefing-thank #flow h2{
		font-size: 24px;
		margin: 0 0 40px;
	}
	#briefing-thank #flow .list{
		display: block;
	}
	#briefing-thank #flow .list .list-item{
		width: 100%;
		margin: 0 0 45px;
	}
	#briefing-thank #flow .list .list-item::after{
		position: absolute;
		right: inherit;
		left: 50%;
		top: inherit;
		bottom: -30px;
		margin: 0 0 0 -15px;
		content: '';
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 20px 15px 0 15px;
		border-color: #004098 transparent transparent transparent;
	}
}

/* voice */
#briefing-thank #voice{
	background: #f0f0f0;
	margin: 0;
	padding: 80px 0;
}
#briefing-thank #voice h2{
	background: none;
	color: #004098;
	text-align: center;
	font-size: 28px;
	margin: 0 0 40px;
}
#briefing-thank #voice h2::after{
	position: absolute;
	left: 50%;
	bottom: 0;
	content: '';
	margin: 0 0 0 -20px;
	width: 40px;
	height: 2px;
	background: #004098;
	border: none;
}
#briefing-thank #voice .fl-box{
	display: flex;
	margin: 0 0 30px;
}
#briefing-thank #voice .fl-box:last-of-type{
	margin: 0;
}
#briefing-thank #voice .fl-box .img{
	width: 400px;
}
#briefing-thank #voice .fl-box .img img{
	max-width: 100%;
}
#briefing-thank #voice .fl-box .text{
	width: calc(100% - 400px);
	padding: 0 0 0 30px;
}
#briefing-thank #voice .fl-box .text .name{
	font-weight: bold;
}
@media screen and (max-width: 1024px){
	#briefing-thank #voice{
		padding: 40px 0;
	}
	#briefing-thank #voice h2{
		font-size: 24px;
	}
	#briefing-thank #voice .fl-box{
		display: block;
		margin: 0 0 30px;
	}
	#briefing-thank #voice .fl-box .img{
		width: 100%;
	}
	#briefing-thank #voice .fl-box .text{
		width: 100%;
		padding: 0;
	}
}

/* company-movie */
#briefing-thank #company-movie{
	margin: 0;
	padding: 80px 0;
}
#briefing-thank #company-movie h2{
	background: none;
	color: #004098;
	text-align: center;
	font-size: 28px;
	margin: 0 0 40px;
}
#briefing-thank #company-movie h2::after{
	position: absolute;
	left: 50%;
	bottom: 0;
	content: '';
	margin: 0 0 0 -20px;
	width: 40px;
	height: 2px;
	background: #004098;
	border: none;
}
#briefing-thank #company-movie .list{
	display: flex;
}
#briefing-thank #company-movie .list .list-item{
	width: 320px;
	margin: 0 20px 0 0;
}
#briefing-thank #company-movie .list .list-item:last-of-type{
	margin: 0;
}
#briefing-thank #company-movie .list .list-item .movie{
	margin: 0 0 15px;
}
#briefing-thank #company-movie .list .list-item .movie img{
	max-width: 100%;
}
@media screen and (max-width: 1024px){
	#briefing-thank #company-movie{
		padding: 40px 0;
	}
	#briefing-thank #company-movie h2{
		font-size: 24px;
	}
	#briefing-thank #company-movie .list{
		display: block;
	}
	#briefing-thank #company-movie .list .list-item{
		width: 100%;
		margin: 0 0 20px;
	}
}

/* point */
#briefing-thank #point{
	background: #f0f0f0;
	margin: 0;
	padding: 80px 0;
}
#briefing-thank #point > p{
	text-align: center;
	font-size: 21px;
	font-weight: bold;
}
#briefing-thank #point > p strong{
	color: #004098;
	font-weight: bold;
	padding: 0 5px;
	display: inline-block;
}
#briefing-thank #point .box01{
	background: #fff;
	margin: 0 0 30px;
	padding: 30px;
}
#briefing-thank #point .box01 ul{
	margin: 0;
}
#briefing-thank #point .box01 ul li{
	font-weight: bold;
	font-size: 16px;
	padding: 10px 0;
	border-bottom: 1px dotted #ccc;
}
#briefing-thank #point .box01 ul li i{
	font-size: 18px;
	padding: 0 5px;
	color: #f39800;
}
#briefing-thank #point .box02{
	background: #fff;
	padding: 30px;
}
#briefing-thank #point .box02 span{
	font-weight: bold;
	text-decoration: underline;
	color: #004098;
}
@media screen and (max-width: 1024px){
	#briefing-thank #point{
		padding: 40px 0;
	}
	#briefing-thank #point > p{
		display: block;
		text-align: left;
		font-size: 18px;
		font-weight: bold;
		padding: 0 20px;
	}
	#briefing-thank #point > p br{
		display: none;
	}
}


/* company */
#briefing-thank #company{
	padding: 80px 0;
}
#briefing-thank #company h2{
	background: none;
	color: #004098;
	text-align: center;
	font-size: 28px;
	margin: 0 0 40px;
}
#briefing-thank #company h2::after{
	position: absolute;
	left: 50%;
	bottom: 0;
	content: '';
	margin: 0 0 0 -20px;
	width: 40px;
	height: 2px;
	background: #004098;
	border: none;
}
#briefing-thank #company .fl-box{
	display: flex;
	border-top: 1px solid #eee;
	padding: 30px 0;
}
#briefing-thank #company .fl-box:last-of-type{
	border-bottom: 1px solid #eee;
}
#briefing-thank #company .fl-box .img{
	width: 300px;
}
#briefing-thank #company .fl-box .img img{
	max-width: 100%;
}
#briefing-thank #company .fl-box .googlemap{
	width: 320px;
	padding: 0 0 0 20px;
	box-sizing: border-box;
}
#briefing-thank #company .fl-box .text{
	width: calc(100% - 620px);
	padding: 0 0 0 20px;
	box-sizing: border-box;
}

#briefing-thank #company .fl-box .text h3{
	font-size: 1.666em;
	color:#1F8C53;
	border:0;
	margin:0 0 25px;
	font-weight:normal;
	padding:0;
}
#briefing-thank #company .fl-box .text h3:before{
	display:none;
}
#briefing-thank #company .fl-box .text table{
	width: 100%;
}
#briefing-thank #company .fl-box .text table th{
	vertical-align:top;
	font-weight: bold;
	width: 50px;
}
#briefing-thank #company .fl-box .text dt{
	font-weight: bold;
}
#briefing-thank #company .fl-box .text dd{
	margin:0 0 1.6em;
	padding:0 0 0 1em;
}
#briefing-thank #company .fl-box .text dl,
#briefing-thank #company .fl-box .text dd:last-of-type{
	margin:0;
}
@media screen and (max-width: 1024px){
	#briefing-thank #company{
		padding: 40px 0;
	}
	#briefing-thank #company h2{
		font-size: 24px;
	}
	#briefing-thank #company .fl-box{
		display: block;
		padding: 20px 0;
	}
	#briefing-thank #company .fl-box .img{
		width: 100%;
		margin: 0 0 20px;
	}
	#briefing-thank #company .fl-box .text{
		width: 100%;
		padding: 0;
		box-sizing: border-box;
	}
	#briefing-thank #company .fl-box .googlemap{
		width: 100%;
		margin: 0 0 20px;
		padding: 0;
	}	
	#briefing-thank #company .fl-box .googlemap {
		height: 0;
		overflow: hidden;
		padding-bottom: 56.25%;
		position: relative;
	}
	#briefing-thank #company .fl-box .googlemap iframe {
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
		width: 100%;
	}
}
#briefing-thank #company-movie .list .list-item .movie iframe {
    width:320px;
    height:180px;
}
@media screen and (max-width: 1024px){
    #briefing-thank #company-movie .list .list-item .movie iframe {
    width:100%;
    height:56.25%;
}
}
#briefing-thank #flow .list .list-item .img{
    border:1px solid #004098;
    margin:0;
    padding:0
}
#briefing-thank #flow .list .list-item p{
    border:1px solid #004098;
    padding:10px 5px;
}
#briefing-thank #flow .list .list-item p span {
    color: #004098;
    font-weight:bold;
    font-size:1.3em;
    margin:0 60px 0 ;
}

#briefing-thank #flow .list .list-item:nth-child(2) p span {
    color: #004098;
    font-weight:bold;
    font-size:1.3em;
    margin:0 75px 0 ;
}
#briefing-thank #flow .list .list-item:nth-child(3) p span {
    color: #004098;
    font-weight:bold;
    font-size:1.3em;
    margin:0 115px 0 ;
}
@media screen and (max-width: 1024px){
   #briefing-thank #flow .list .list-item p span {
    margin:0 80px 0 ;
}
#briefing-thank #flow .list .list-item:nth-child(2) p span {
    margin:0 100px 0 ;
}
#briefing-thank #flow .list .list-item:nth-child(3) p span {
    margin:0 130px 0 ;
} 
}



/*** ------------------------------------------------------------------------------ 

ビジョン（#vision）

-----------------------------------------------------------------------------  ***/

#vision  #visual{
	background: url(../../imgs/entry/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#vision #visual{
		background: url(../../imgs/entry/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#vision #visual{
		background: url(../../imgs/entry/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}
#vision #topic-pass{
	width: 960px;
	margin: 0 auto 10px;
}

/* #vision は default.css の #main:700px / #sub:230px レイアウトを使用 */
#vision #cont .numeric{
	background:#F2F2F2;
	padding: 80px 0 50px;
}

#vision #cont .numeric .img img{
    width:100%;
}

#vision .numeric .youtube {
    position: relative;
    max-width: 100%;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin:0 auto;
  }
#vision .numeric .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height:100%;

  }

#vision .mission .blocklist{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-around;

}

#vision .mission .blocklist li{
    position: relative;
    width:45%;
    border:1px solid #ccc;
    padding:15px;
    margin:0 auto 20px;
}
#vision .mission .blocklist li:nth-child(2n){
   margin:0 0 20px 20px;
}

#vision .mission .blocklist li .img img{
    width:100%;
}
#vision .mission .blocklist li .tlt {
	position:absolute;
	top: 260px;
	left: -11px;
	display: block;
	color: #fff;
	font-weight: bold;

}
#vision .mission .blocklist li .tlt3,
#vision .mission .blocklist li .tlt4{
	 padding:20px 0 0 30px;
}

#vision .mission .blocklist li .tlt .annotation{
    font-size:0.8em;
}

@media (max-width: 1024px) {
#vision #cont,
#vision #cont #topic-pass,
#vision #cont .inner{
    width:100%;
}
#vision #cont #topic-pass{
    padding:0;
    background:none;
}
#vision .mission .blocklist li{
    width:100%;
    margin:20px;
}
#vision .mission .blocklist li:nth-child(2n){
   margin:20px;
}
#vision .mission .blocklist li .tlt{
    top:180px;

}
#vision .mission .blocklist li .tlt3{
    font-size:1em;
}
}

/* ============================================
   ビジョン ヒーロー（#vision .vision-hero）
   ============================================ */
#vision .vision-hero{
	border:none;
	padding:0;
	margin:0 0 60px;
}
#vision .vision-hero .vision-hero-head{
	background:#1c1c1c;
	color:#fff;
	text-align:center;
	padding:40px 30px;
	border-radius:10px 10px 0 0;
}
#vision .vision-hero .vision-hero-head h2{
	color:#fff;
	font-size:2.2em;
	font-weight:bold;
	margin:0 0 16px;
	padding:0;
	border:none;
	background:none;
	line-height:1.3;
}
#vision .vision-hero .vision-hero-head h2::before,
#vision .vision-hero .vision-hero-head h2::after{
	display:none;
}
#vision .vision-hero .vision-hero-sub{
	font-size:1.05em;
	line-height:1.7;
	margin:0;
	color:#fff;
	opacity:.95;
}
#vision .vision-hero .vision-goal-box{
	background:#f5f5f5;
	border:3px solid #1c1c1c;
	border-top:none;
	text-align:center;
	padding:34px 20px;
	border-radius:0 0 10px 10px;
}
#vision .vision-hero .vision-goal-box p{
	margin:0;
	font-size:1.9em;
	font-weight:bold;
	color:#1a1a1a;
	line-height:1.4;
}
#vision .vision-hero .vision-goal-box .num{
	color:#e60012;
	font-size:1.35em;
	border-bottom:4px solid #f39800;
	padding:0 4px;
}
#vision .vision-hero .vision-mission-banner{
	margin:46px 0 30px;
	text-align:center;
}
#vision .vision-hero .vision-mission-banner span{
	display:inline-block;
	background:#e60012;
	color:#fff;
	font-size:1.4em;
	font-weight:bold;
	padding:12px 40px;
	border-radius:6px;
	position:relative;
}
#vision .vision-hero .vision-mission-banner span::after{
	content:"";
	position:absolute;
	bottom:-10px;
	left:50%;
	transform:translateX(-50%);
	border:10px solid transparent;
	border-top-color:#e60012;
}
#vision .vision-hero .vision-mission-grid{
	list-style:none;
	margin:0;
	padding:0;
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:20px;
}
#vision .vision-hero .vision-mission-grid li{
	display:flex;
	align-items:center;
	gap:18px;
	background:#fff;
	border:1px solid #e3e9f2;
	border-radius:8px;
	padding:24px 26px;
	box-shadow:0 3px 10px rgba(0,64,152,0.06);
}
#vision .vision-hero .vision-mission-grid .vm-icon{
	flex:0 0 auto;
	width:56px;
	height:56px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:#eaf5ee;
	border-radius:50%;
}
#vision .vision-hero .vision-mission-grid .vm-icon svg{
	width:32px;
	height:32px;
	fill:#007F3F;
}
#vision .vision-hero .vision-mission-grid .vm-text{
	font-size:1.2em;
	font-weight:bold;
	color:#222;
	line-height:1.5;
}
@media screen and (max-width:1024px){
	#vision .vision-hero .vision-hero-head{
		padding:28px 18px;
	}
	#vision .vision-hero .vision-hero-head h2{
		font-size:1.6em;
	}
	#vision .vision-hero .vision-hero-sub{
		font-size:.95em;
		text-align:left;
	}
	#vision .vision-hero .vision-goal-box p{
		font-size:1.35em;
	}
	#vision .vision-hero .vision-mission-grid{
		grid-template-columns:1fr;
		gap:14px;
	}
	#vision .vision-hero .vision-mission-grid li{
		padding:18px 18px;
		gap:14px;
	}
	#vision .vision-hero .vision-mission-grid .vm-icon{
		width:48px;
		height:48px;
	}
	#vision .vision-hero .vision-mission-grid .vm-text{
		font-size:1.05em;
	}
}

/* ============================================
   ビジョン ミッション2（#vision .vision-mission2）
   ============================================ */
#vision .vision-mission2{
	border:none;
	padding:0;
	margin:0 0 60px;
}
#vision .vision-mission2 .vm2-banner{
	background:#004098;
	color:#fff;
	font-size:1.5em;
	font-weight:bold;
	padding:14px 24px;
	margin:0 0 30px;
	border:none;
	border-radius:4px;
}
#vision .vision-mission2 .vm2-banner::before{
	display:none;
}
#vision .vision-mission2 .vm2-banner span{
	color:#fff;
}
#vision .vision-mission2 .vm2-lead{
	text-align:center;
	font-size:1.25em;
	font-weight:bold;
	color:#004098;
	margin:0 0 26px;
	line-height:1.6;
}
#vision .vision-mission2 .vm2-grid{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:30px;
}
#vision .vision-mission2 .vm2-card{
	border:1px solid #e3e9f2;
	border-radius:8px;
	overflow:hidden;
	box-shadow:0 3px 10px rgba(0,64,152,0.06);
	background:#fff;
}
#vision .vision-mission2 .vm2-photo{
	position:relative;
	line-height:0;
}
#vision .vision-mission2 .vm2-photo img{
	width:100%;
	height:auto;
	display:block;
}
#vision .vision-mission2 .vm2-label{
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	box-sizing:border-box;
	padding:12px 18px;
	background:linear-gradient(to top,rgba(0,64,152,0.92) 0%,rgba(0,64,152,0.75) 100%);
	color:#fff;
}
#vision .vision-mission2 .vm2-label-sub{
	display:block;
	font-size:0.85em;
	line-height:1.4;
	opacity:.95;
}
#vision .vision-mission2 .vm2-label-main{
	display:block;
	font-size:1.35em;
	font-weight:bold;
	line-height:1.3;
}
#vision .vision-mission2 .vm2-body{
	padding:22px 24px 26px;
}
#vision .vision-mission2 .vm2-body p{
	margin:0 0 14px;
	line-height:1.9;
}
#vision .vision-mission2 .vm2-body p:last-child{
	margin-bottom:0;
}
#vision .vision-mission2 .vm2-list{
	list-style:none;
	counter-reset:vm2;
	margin:0 0 14px;
	padding:0;
}
#vision .vision-mission2 .vm2-list li{
	position:relative;
	counter-increment:vm2;
	padding:0 0 0 32px;
	margin:0 0 10px;
	line-height:1.7;
}
#vision .vision-mission2 .vm2-list li:last-child{
	margin-bottom:0;
}
#vision .vision-mission2 .vm2-list li::before{
	content:counter(vm2);
	position:absolute;
	left:0;
	top:2px;
	width:22px;
	height:22px;
	background:#f39800;
	color:#fff;
	border-radius:50%;
	text-align:center;
	line-height:22px;
	font-size:0.85em;
	font-weight:bold;
}
@media screen and (max-width:1024px){
	#vision .vision-mission2 .vm2-banner{
		font-size:1.2em;
		padding:12px 16px;
	}
	#vision .vision-mission2 .vm2-grid{
		grid-template-columns:1fr;
		gap:24px;
	}
	#vision .vision-mission2 .vm2-label-main{
		font-size:1.15em;
	}
}

/* ============================================
   ビジョン CSV（#vision .vision-csv）
   ============================================ */
#vision .vision-csv{
	border:none;
	padding:0;
	margin:0 0 60px;
	display:grid;
	grid-template-columns:1fr;
	align-items:stretch;
	overflow:hidden;
	border-radius:6px;
	box-shadow:0 3px 12px rgba(0,0,0,0.12);
}
#vision .vision-csv .vision-csv-text{
	background:#1c1c1c;
	color:#fff;
	padding:46px 44px;
	box-sizing:border-box;
}
#vision .vision-csv .vision-csv-text h2{
	color:#fff;
	border:none;
	background:none;
	font-size:1.55em;
	margin:0 0 24px;
	padding:0;
	line-height:1.45;
}
#vision .vision-csv .vision-csv-text h2::before,
#vision .vision-csv .vision-csv-text h2::after{
	display:none;
}
#vision .vision-csv .vision-csv-text strong{
	background:none;
}
#vision .vision-csv .vision-csv-text p{
	color:#e6e6e6;
	line-height:2.0;
	margin:0 0 18px;
	font-size:0.95em;
}
#vision .vision-csv .vision-csv-text p:last-child{
	margin-bottom:0;
}
#vision .vision-csv .vision-csv-text strong{
	color:#fff;
	font-weight:bold;
}
#vision .vision-csv .vision-csv-photo{
	position:relative;
	min-height:100%;
}
#vision .vision-csv .vision-csv-photo img{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}
@media screen and (max-width:1024px){
	#vision .vision-csv{
		grid-template-columns:1fr;
	}
	#vision .vision-csv .vision-csv-text{
		padding:30px 22px;
	}
	#vision .vision-csv .vision-csv-photo{
		min-height:auto;
	}
	#vision .vision-csv .vision-csv-photo img{
		position:relative;
		height:240px;
	}
}

/* ============================================
   ビジョン／ミッション ダークパネル（#vision .vision-panel）
   ============================================ */
#vision .vision-panel{
	border:none;
	padding:0;
	margin:0 0 40px;
	display:block;
	overflow:hidden;
	border-radius:10px;
	box-shadow:0 8px 24px rgba(0,64,152,0.22);
	background:linear-gradient(135deg,#003a8c 0%,#0a5bc0 55%,#1f7fe0 100%);
}
#vision .vision-panel .vision-panel-head{
	background:transparent;
	color:#fff;
	padding:36px 44px 0;
	box-sizing:border-box;
}
#vision .vision-panel .vision-panel-head h2{
	color:#fff;
	border:none;
	background:none;
	font-size:1.55em;
	margin:0;
	padding:0;
}
#vision .vision-panel .vision-panel-head h2::before,
#vision .vision-panel .vision-panel-head h2::after{
	display:none;
}
#vision .vision-panel .vision-panel-text{
	background:transparent;
	color:#fff;
	padding:20px 44px 40px;
	box-sizing:border-box;
}
#vision .vision-panel .vision-panel-text h2{
	color:#fff;
	border:none;
	background:none;
	font-size:1.55em;
	margin:0 0 24px;
	padding:0;
	line-height:1.45;
}
#vision .vision-panel .vision-panel-text h2::before,
#vision .vision-panel .vision-panel-text h2::after{
	display:none;
}
#vision .vision-panel .vision-panel-text p{
	color:#e6e6e6;
	line-height:2.0;
	margin:0 0 18px;
	font-size:0.95em;
}
#vision .vision-panel .vision-panel-text p:last-child{
	margin-bottom:0;
}
#vision .vision-panel .vision-panel-list{
	list-style:none;
	margin:0;
	padding:0;
}
#vision .vision-panel .vision-panel-list li{
	position:relative;
	color:#e6e6e6;
	line-height:1.8;
	font-size:0.95em;
	padding:0 0 0 16px;
	margin:0 0 8px;
}
#vision .vision-panel .vision-panel-list li:last-child{
	margin-bottom:0;
}
#vision .vision-panel .vision-panel-list li::before{
	content:"";
	position:absolute;
	left:0;
	top:0.7em;
	width:6px;
	height:6px;
	border-radius:50%;
	background:#f39800;
}
#vision .vision-panel .vision-panel-photo{
	position:relative;
}
#vision .vision-panel .vision-panel-photo img{
	position:relative;
	display:block;
	width:100%;
	height:360px;
	object-fit:cover;
}
@media screen and (max-width:1024px){
	#vision .vision-panel .vision-panel-head{
		padding:24px 22px 0;
	}
	#vision .vision-panel .vision-panel-text{
		padding:24px 22px 30px;
	}
	#vision .vision-panel .vision-panel-photo img{
		height:240px;
	}
}


/*** ------------------------------------------------------------------------------ 

SDGs（#sdgs）

-----------------------------------------------------------------------------  ***/
#sdgs  #visual{
	background: url(../../imgs/entry/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#sdgs #visual{
		background: url(../../imgs/entry/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#sdgs #visual{
		background: url(../../imgs/entry/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}
#sdgs #main{
	background: #F2F2F2;
	margin:0;
}
#sdgs .mv .img{
    margin:30px auto;
    max-width:1000px;
}
#sdgs #topic-pass{
	width: 960px;
	margin: 0 auto 10px;
}
#sdgs #cont{
	width: 100%;
}
#sdgs #cont .goals{
	max-width: 800px;
	width: 94%;
	margin: 0 auto 50px;
}
#sdgs #cont .goals img{
	width: 100%;
}
#sdgs #cont .inner{
	max-width: 1000px;
	width: 94%;
	margin: 0 auto;
}
#sdgs #cont .msg{
	/* background: #F2F2F2; */
	margin: 0;
	padding: 80px 0 40px;
}
#sdgs #cont .msg h1{
	text-align: center;
	font-size: 32px;
	border: none;
	padding: 10px 0;
	color: #004098;
}
#sdgs #cont .msg h1::before{
	content: none;
}
#sdgs #cont .msg .text p{
	font-size: 16px;
}
#sdgs #cont #main{
  width: 100%;
}
#sdgs #cont #main section .block{
  display: flex;
}
#sdgs #cont #main section.msg .block .img{
  min-width: 400px;
  width: 400px;
  margin: 0;
}
#sdgs #cont #main section .block .img img{
  width: 100%;
}
#sdgs #cont #main section.msg .block .img span{
	display: block;
	text-align: center;
	font-size: 1.3em;
	margin-top: 5px;
	font-weight:bold;
}
#sdgs #cont #main section .block .text{
  padding: 0 0 0 30px;
  box-sizing: border-box;
}
#sdgs #cont .list{
	margin: 0;
	padding: 80px 0;
}
#sdgs #cont .list img{
	width: 100%;
}
#sdgs #cont .list .block{
	background:#85efb9;
	padding: 30px;
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
}
#sdgs #cont .list .block:nth-child(even){
	background:#bc99ed;
}
#sdgs #cont .list .block:last-of-type{
	margin-bottom: 0;
}
#sdgs #cont .list .block .box1{
	width: 50%;
}
#sdgs #cont .list .block .box1 .midashi {
	font-size: 2em;
	color: #FFF;
	font-weight: bold;
	letter-spacing: 1px;
	margin: 0 0 25px;
	padding:10px;
	background:#004098;
-moz-box-shadow: 6px 6px 5px 2px rgba(0, 0, 0, 0.2);
-webkit-box-shadow: 6px 6px 5px 2px rgba(0, 0, 0, 0.2);
-ms-box-shadow: 6px 6px 5px 2px rgba(0, 0, 0, 0.2);
box-shadow: 6px 6px 5px 2px rgba(0, 0, 0, 0.2);

}
#sdgs #cont .list .block:nth-child(even) .box1 .midashi{
	background:#007F41;	
}
#sdgs #cont .list .block .box1 .txt{
	background:#FFF;
	padding:20px;
	border-radius:10px;
}
#sdgs #cont .list .block .box1 .icon{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	background-color: #fff;
	padding: 10px;
}
#sdgs #cont .list .block .box1 .icon li{
	width: 23.5%;
	margin-right: 2%;
}
#sdgs #cont .list .block .box1 .icon li:nth-child(4n){
	margin-right: 0;
}
#sdgs #cont .list .block .box1 .icon.icon-1 {
    display:block;
    width:105px
}
#sdgs #cont .list .block .box1 .icon.icon-1 li{
    width:105px;
}
#sdgs #cont .list .block .box1 .icon.icon-2 {
    width:220px;
}
#sdgs #cont .list .block .box1 .icon.icon-2 li{
    width:105px;
}
#sdgs #cont .list .block .box2{
	width: 46%;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 0;
}
#sdgs #cont .list .block .box2 li{
	width: 49%;
	margin: 0 2% 2% 0;
}
#sdgs #cont .list .block .box2 li:nth-child(even){
	margin-right: 0;
}
#sdgs #cont .list .block .box2 li:nth-last-child(2),
#sdgs #cont .list .block .box2 li:last-child{
	margin-bottom: 0;
}
#sdgs #cont .list .block .box2 li p{
	text-align: center;
	margin: 5px 0 0;
	font-size: 1em;
}
@media (max-width: 1024px) {
  #sdgs #topic-pass{
    width: 100%;
    box-sizing: border-box;
  }
	#sdgs #cont .goals{
		margin: 0 auto 30px;
	}
  #sdgs #cont .inner{
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
  }
  #sdgs #cont .msg{
    padding: 30px 0;
  }
  #sdgs #cont .msg h1{
    font-size: 24px;
  }
  #sdgs #cont .msg .text p{
    font-size: 14px;
  }
  #sdgs #cont #main section .block{
    display: block;
  }
  #sdgs #cont #main section.msg .block .img{
    width: 100%;
    min-width: auto;
    margin: 0 0 20px;
  }
  #sdgs #cont #main section .block .text{
    padding: 0;
    width: 100%;
  }
	#sdgs #cont .list{
		margin: 0;
		padding: 30px 0;
	}
	#sdgs #cont .list .block{
		padding: 10px;
		display: block;
		margin-bottom: 30px;
	}
	#sdgs #cont .list .block .box1{
		width: 100%;
	}
	#sdgs #cont .list .block .box1 .midashi {
		margin: 0 0 25px;
	}
	#sdgs #cont .list .block .box2{
		width: 100%;
	}
}



/*** ------------------------------------------------------------------------------ 

トラックコレクション - アーカイブ（#truck .truck）

-----------------------------------------------------------------------------  ***/
/* 共通 */
.truck #main{
	width: 100%;
}
.truck #visual{
	background: url(../../imgs/company/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	.truck #visual{
		background: url(../../imgs/company/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	.truck #visual{
		background: url(../../imgs/company/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}


/* truck-blog */
#truck-archive #cont #truck-blog{
	margin: 0 0 80px;
}
#truck-archive #cont #truck-blog .list{
	display: flex;
}
#truck-archive #cont #truck-blog article{
	width: 470px;
	box-sizing:border-box;
	margin:0 20px 20px 0;
	border: 1px solid #ccc;
	background:#FFFFFF;
}
#truck-archive #cont #truck-blog article:hover{
	background: #F2F2F2;
}
#truck-archive #cont #truck-blog article:nth-of-type(2n){
	margin:0 0 20px 0;
}
#truck-archive #cont #truck-blog article a{
	display:block;
	padding:20px;
	color:#333;
}
#truck-archive #cont #truck-blog article:hover a{
	text-decoration: none;
}
#truck-archive #cont #truck-blog article h3{
	border-bottom: none;
	padding: 10px 0;
}
#truck-archive #cont #truck-blog article h3::before{
	content: none;
}
#truck-archive #cont #truck-blog article .img{
	float:right;
	margin:0 0 0 20px;
}
#truck-archive #cont #truck-blog article .date{
	margin:0 0 5px;
	font-weight: bold;
}
#truck-archive #cont #truck-blog article .date span{
	display:inline-block;
	color:#FFFFFF;
	background: #f39800;
	margin:0 0 0 10px;
	padding:0 10px;
}
#truck-archive #cont #truck-blog article h3{
	font-weight: normal;
	margin:0 0 5px;
}
#truck-archive #cont #truck-blog article .entry{
	font-size: 1em;
	margin:0;
}
@media screen and (max-width: 1024px){
	#truck-archive #cont #truck-blog{
		margin: 0;
		padding:20px 0;
	}
	#truck-archive #cont #truck-blog h2{
		text-align: center;
	}
	#truck-archive #cont #truck-blog .blog-type{
		width: auto;
		float: none;
	}
	#truck-archive #cont #truck-blog:last-child{
		float: none;
	}
	#truck-archive #cont #truck-blog .list{
		display: block;
	}
	#truck-archive #cont #truck-blog article{
		width: auto;
		float:none;
		margin:0 0 20px 0;
	}
	#truck-archive #cont #truck-blog article:nth-of-type(2n){
		margin:0 0 20px 0;
	}
	#truck-archive #cont #truck-blog article a{
		padding:15px;
	}
	#truck-archive #cont #truck-blog article:nth-child(even){
		float:none;
	}
	#truck-archive #cont #truck-blog article .img{
		width: 120px;
		margin:0 0 10px 20px;
	}
	#truck-archive #cont #truck-blog article .date{
		font-size: 1em;
	}
	#truck-archive #cont #truck-blog article .date span{
		padding:0 5px;
	}
	#truck-archive #cont #truck-blog article .entry{
		clear:both;
	}
}


/* truck-point */
#truck-archive #cont #truck-point {
	margin: 0 0 80px;
}
#truck-archive #cont #truck-point .fl-box{
	display: flex;
	margin: 0 0 40px;
}
#truck-archive #cont #truck-point .fl-box .img{
	width: 400px;
}
#truck-archive #cont #truck-point .fl-box .img img{
	max-width: 100%;
}
#truck-archive #cont #truck-point .fl-box .text{
	width: calc(100% - 400px);
	padding: 0 0 0 30px;
	box-sizing: border-box;
}
@media screen and (max-width: 1024px){
	#truck-archive #cont #truck-point .fl-box{
		display: block;
		margin: 0 0 40px;
	}
	#truck-archive #cont #truck-point .fl-box .img{
		width: 100%;
		margin: 0 auto 30px;
	}
	#truck-archive #cont #truck-point .fl-box .text{
		width: 100%;
		padding: 0;
	}
}
#truck-archive #cont #truck-point .fl-box .sub-img {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
}
#truck-archive #cont #truck-point .fl-box .sub-img .img{
    width:45%;
    margin:0 10px 0 0;
}
#truck-archive #cont #truck-point .fl-box .sub-img .img img{
    width:100%;
}


/* truck-search */
#truck-archive #cont #truck-search {
	margin: 0 0 80px;
}
#truck-archive #cont #truck-search .box{
	background: #eee;
	padding: 40px 60px 20px;
	border-radius: 10px;
}
#truck-archive #cont #truck-search .box form > ul > li > ul{
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 10px;
}
#truck-archive #cont #truck-search .box form > ul > li > ul > li{
	width: 32%;
	margin: 0 2% 10px 0;
}
#truck-archive #cont #truck-search .box form > ul > li > ul > li:nth-child(3n){
	margin: 0 0 10px 0;
}

#truck-archive #cont #truck-search .box form > ul > li > ul > li{
    position: relative;
    display: inline-block;
	font-size: 12px;
}
#truck-archive #cont #truck-search .box form > ul > li > ul > li input {
    position: absolute;
    top: 0;
    opacity: 0;
    width: 100%;  
    height: 100%;
}
#truck-archive #cont #truck-search .box form > ul > li > ul > li input[type="checkbox"] + label {
    display: block;
    padding: 50px 0 45px 140px;
	border: 4px solid #fff;
	background: #fff;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(1) > ul > li:nth-child(1) input[type="checkbox"] + label {
	background: url("../../imgs/truck/logo-all.png") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(1) > ul > li:nth-child(2) input[type="checkbox"] + label {
	background: url("../../imgs/truck/logo-hino.png") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(1) > ul > li:nth-child(3) input[type="checkbox"] + label {
	background: url("../../imgs/truck/logo-fuso.png") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(1) > ul > li:nth-child(4) input[type="checkbox"] + label {
	background: url("../../imgs/truck/logo-ud.png") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(1) > ul > li:nth-child(5) input[type="checkbox"] + label {
	background: url("../../imgs/truck/logo-isuzu.png") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(1) > ul > li:nth-child(6) input[type="checkbox"] + label {
	background: url("../../imgs/truck/logo-scania.png") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}

#truck-archive #cont #truck-search .box form > ul > li:nth-child(2) > ul > li:nth-child(1) input[type="checkbox"] + label {
	background: url("../../imgs/truck/all.jpg") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(2) > ul > li:nth-child(2) input[type="checkbox"] + label {
	background: url("../../imgs/truck/hira.jpg") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(2) > ul > li:nth-child(3) input[type="checkbox"] + label {
	background: url("../../imgs/truck/wing.jpg") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(2) > ul > li:nth-child(4) input[type="checkbox"] + label {
	background: url("../../imgs/truck/reito.jpg") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(2) > ul > li:nth-child(5) input[type="checkbox"] + label {
	background: url("../../imgs/truck/trailer.jpg") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
#truck-archive #cont #truck-search .box form > ul > li:nth-child(2) > ul > li:nth-child(6) input[type="checkbox"] + label {
	background: url("../../imgs/truck/tank.jpg") no-repeat left 10px top 10px #fff;
    background-size: 115px auto;
}
/* check時 */
#truck-archive #cont #truck-search .box form > ul > li > ul > li input[type="checkbox"]:checked + label {
	border: 4px solid #004098;
}



@media screen and (max-width: 1024px){
	#truck-archive #cont #truck-search {
		margin: 0 0 40px;
	}
	#truck-archive #cont #truck-search .box{
		padding: 30px 30px 0;
	}
	truck-archive #cont #truck-search .box h4{
		margin: 0;
	}
	#truck-archive #cont #truck-search .box form > ul > li > ul > li{
		width: 100%;
		margin: 0 0 10px 0;
	}
	#truck-archive #cont #truck-search .box form > ul > li > ul > li:nth-child(3n){
		margin: 0 0 10px 0;
	}
}


/* truck-archive-cont */
#truck-archive #cont #truck-archive-cont{
	margin: 0 0 80px;
}
#truck-archive #cont #truck-archive-cont .list{
	display: flex;
	flex-wrap: wrap;
}
#truck-archive #cont #truck-archive-cont .list .list-item{
	width: 32%;
	margin: 0 2% 4% 0;
}
#truck-archive #cont #truck-archive-cont .list .list-item:nth-child(3n){
	margin: 0 0 4% 0;
}
#truck-archive #cont #truck-archive-cont .list .list-item a img{
	max-width: 100%;
	height: auto;
}
@media screen and (max-width: 1024px){
	#truck-archive #cont #truck-archive-cont .list{
		flex-wrap: wrap;
	}
	#truck-archive #cont #truck-archive-cont .list .list-item{
		width: 49%;
		margin: 0 2% 4% 0;
	}
	#truck-archive #cont #truck-archive-cont .list .list-item:nth-child(odd){
		margin: 0 2% 4% 0;
	}
	#truck-archive #cont #truck-archive-cont .list .list-item:nth-child(even){
		margin: 0 0 4% 0;
	}
}
#truck-archive .bnr-area {
    margin:0 auto 60px;
    text-align:center;
    padding:0 10px;
}




/*** ------------------------------------------------------------------------------ 

トラックコレクション - 詳細（#truck-single .truck）

-----------------------------------------------------------------------------  ***/
/* truck-outline */
#truck-single #cont #truck-outline{
	margin: 0 0 80px;
}
#truck-single #cont #truck-outline .fl-box{
	display: flex;
}
#truck-single #cont #truck-outline .fl-box .img{
	width: 400px;
}
#truck-single #cont #truck-outline .fl-box .img img{
	max-width: 100%;
	height: auto;
}
#truck-single #cont #truck-outline .fl-box .img figure {
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
}
#truck-single #cont #truck-outline .fl-box .thumbnail-list{
	margin: 5px auto 0;
}

#truck-single #cont #truck-outline .fl-box .text{
	width: calc(100% - 400px);
	padding: 0 0 0 30px;
	box-sizing: border-box;
}
#truck-single #cont #truck-outline .fl-box .text dl dt{
	font-weight: bold;
	font-size: 16px;
	margin: 0 0 10px;
}
#truck-single #cont #truck-outline .fl-box .text dl dd{
	font-size: 14px;
	margin: 0 0 25px;
}
#truck-single #cont #truck-outline .movie{
	margin: 40px 0 0;
	text-align: center;
}
@media (max-width:1024px){
	#truck-single #cont #truck-outline .movie {
		position: relative;
		width: 100%;
		padding-top: 56.25%;
	}
	#truck-single #cont #truck-outline .movie iframe {
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
	}
	#truck-single #cont #truck-outline .fl-box{
		display: block;
	}
	#truck-single #cont #truck-outline .fl-box .img{
		width: 100%;
		margin: 0 0 30px;
	}
	#truck-single #cont #truck-outline .fl-box .text{
		width: 100%;
		padding: 0;
	}
}

/* truck-point */
#truck-single #cont #truck-point{
	margin: 0 0 80px;
}
#truck-single #cont #truck-point .list{
	display: flex;
	flex-wrap: wrap;
}
#truck-single #cont #truck-point .list .list-item{
	width: 48%;
	margin: 0 4% 4% 0;
}
#truck-single #cont #truck-point .list .list-item:nth-child(2n){
	margin: 0 0 4% 0;
}
#truck-single #cont #truck-point .list .list-item img{
	max-width: 100%;
	height: auto;
}
#truck-single #cont #truck-point .list .list-item .tit{
	text-align: center;
}
#truck-single #cont #truck-point .list .list-item .tit strong{
	font-size: 18px;
	font-weight: bold;
	background: none;
	color: #004098;
}
#truck-single #cont #truck-point .fl-box{
	display: flex;
}
#truck-single #cont #truck-point .fl-box .img{
	width: 232px;
	margin: 0 0 0 30px;
}
#truck-single #cont #truck-point .fl-box .text{
	width: calc(100% - 262px);
	padding: 40px 60px;
	box-sizing: border-box;
	border: 4px solid #f39800;
	border-radius: 20px;
	position: relative;
}
#truck-single #cont #truck-point .fl-box .text::after{
	position: absolute;
	right: -20px;
	top: 50%;
	margin: -12px 0 0;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12.5px 0 12.5px 20px;
	border-color: transparent transparent transparent #f39800;
}

#truck-single #cont #truck-point .fl-box .text .tit{
	font-weight: bold;
	font-size: 18px;
	color: #f39800;
	margin: 0 0 15px;
}
#truck-single #cont #truck-point .fl-box .text p:last-of-type{
	margin: 0;
}
@media (max-width:1024px){
	#truck-single #cont #truck-point{
		margin: 0 0 40px;
	}
	#truck-single #cont #truck-point .fl-box{
		display: block;
	}
	#truck-single #cont #truck-point .fl-box .img{
		width: 100%;
		margin: 20px 0 0;
		text-align: center;
	}
	#truck-single #cont #truck-point .fl-box .img img{
		width: 116px;
	}
	#truck-single #cont #truck-point .fl-box .text{
		width: 100%;
		padding: 20px;
		border: 2px solid #f39800;
		border-radius: 10px;
	}
	#truck-single #cont #truck-point .fl-box .text::after{
		position: absolute;
		right: 50%;
		top: inherit;
		bottom: -20px;
		margin: 0;
		content: '';
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 20px 12.5px 0 12.5px;
		border-color: #f39800 transparent transparent transparent;
	}
}
#truck-single #cont #truck-outline .fl-box2{
	display: flex;
	margin: 0 0 20px;
}
#truck-single #cont #truck-outline .fl-box2 .img{
	width: 60px;
	margin: auto 0 auto 30px;
}
#truck-single #cont #truck-outline .fl-box2 .text{
	width: calc(100% - 100px);
	padding: 15px 15px;
	box-sizing: border-box;
	border: 4px solid #f39800;
	border-radius: 20px;
	position: relative;
}
#truck-single #cont #truck-outline .fl-box2 .text::after{
	position: absolute;
	right: -22px;
	top: 50%;
	margin: -12px 0 0;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12.5px 0 12.5px 20px;
	border-color: transparent transparent transparent #f39800;
}

#truck-single #cont #truck-outline .fl-box2 .text .tit{
	font-weight: bold;
	font-size: 18px;
	color: #f39800;
	margin: 0 0 15px;
}
#truck-single #cont #truck-outline .fl-box2 .text p:last-of-type{
	margin: 0;
}
@media (max-width:1024px){
	#truck-single #cont #truck-outline{
		margin: 0 0 40px;
	}
	#truck-single #cont #truck-outline .fl-box2{
		display: block;
	}
	#truck-single #cont #truck-outline .fl-box2 .img{
		width: 100%;
		margin: 20px 0 0;
		text-align: center;
	}
	#truck-single #cont #truck-outline .fl-box2 .img img{
		width: 116px;
	}
	#truck-single #cont #truck-outline .fl-box2 .text{
		width: 100%;
		padding: 20px;
		border: 2px solid #f39800;
		border-radius: 10px;
	}
	#truck-single #cont #truck-outline .fl-box2 .text::after{
		position: absolute;
		right: 50%;
		top: inherit;
		bottom: -20px;
		margin: 0;
		content: '';
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 20px 12.5px 0 12.5px;
		border-color: #f39800 transparent transparent transparent;
	}
}


/* truck_recruit */
#truck-single #cont #truck_recruit {
	margin: 0 0 80px;
}
#truck-single #cont #truck_recruit table{
	width: 100%;
	border-left: 1px solid #ccc;
}
#truck-single #cont #truck_recruit table tr th{
	text-align: center;
	background: #eee;
	padding: 15px 10px 13px;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.0;
}
#truck-single #cont #truck_recruit table tr .th01{
	width: 30%;
}
#truck-single #cont #truck_recruit table tr .th02{
	width: 30%;
}
#truck-single #cont #truck_recruit table tr .th03{
	width: 40%;
}
#truck-single #cont #truck_recruit table tr td{
	padding: 15px 15px 13px;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
}
#truck-single #cont #truck_recruit table tr td a{
	display: block;
	margin: 5px 0 0;
}
#truck-single #cont #truck_recruit table tr td .boshu{
	width: 100px;
	display: block;
	padding: 2px 20px 0;
	text-align: center;
	box-sizing: border-box;
	border-radius: 6px;
	background: #f39800;
	color: #fff;
	font-weight: bold;
}
#truck-single #cont #truck_recruit table tr td .boshu-end{
	width: 100px;
	display: block;
	padding: 2px 20px 0;
	text-align: center;
	box-sizing: border-box;
	border-radius: 6px;
	background: #eee;
	font-weight: bold;
}


/* truck_interest */
#truck-single #cont #truck_interest{
	margin: 0 0 80px;
}
#truck-single #cont #truck_interest .fl-box{
	display: flex;
}
#truck-single #cont #truck_interest .fl-box .img{
	width: 400px;
}
#truck-single #cont #truck_interest .fl-box .img img{
	max-width: 100%;
	height: auto;
}
#truck-single #cont #truck_interest .fl-box .text{
	width: calc( 100% - 400px );
	padding: 0 0 0 30px;
	box-sizing: border-box;
}
@media (max-width:1024px){
	#truck-single #cont #truck_interest .fl-box{
		display: block;
	}
	#truck-single #cont #truck_interest .fl-box .img{
		width: 100%;
		text-align: center;
	}
	#truck-single #cont #truck_interest .fl-box .text{
		width: 100%;
		padding: 0;
	}
}



/*** ------------------------------------------------------------------------------ 

追加募集通知（#notification）

-----------------------------------------------------------------------------  ***/
/* 共通 */
#notification #visual{
	background: url(../../imgs/company/visual.jpg) center center no-repeat #F2F2F2;
}
@media screen and (min-width: 1200px){
	#notification #visual{
		background: url(../../imgs/company/visual.jpg) center center / 100% auto no-repeat #F2F2F2;
	}
}
@media screen and (max-width: 1024px){
	#notification #visual{
		background: url(../../imgs/company/visual.jpg) center center / auto 100% no-repeat #F2F2F2;
	}
}

#notification #cont section table{
	width: 100%;
	border-left: 1px solid #ccc;
}
#notification #cont section table tr th{
	width: 200px;
	padding: 15px;
	box-sizing: border-box;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background: #eee;
	font-weight: bold;
}
#notification #cont section table tr td{
	width: calc(100% - 200px);
	padding: 15px;
	box-sizing: border-box;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
#notification #cont section table tr td input{
	width: 100%;
	font-size: 17px;
	padding: 5px;
	box-sizing: border-box;
}
#notification #cont section .notification-btn{
	display: flex;
	justify-content: center;
	margin: 0 0 80px;
}
#notification #cont section .notification-btn input[type=submit]{
    width: 200px;
	margin: 0 10px;
    padding: 15px 0;
    background: #f39800;
    border: none;
    text-align: center;
    color: #FFF;
    font-size: 1.333em;
    font-weight: bold;
    outline: none;
    cursor: pointer;
	border-radius:5px;
}
#notification #cont section .notification-btn input[type=submit]:hover{
    background: #D63333;
}
#notification #cont section .notification-btn input[name=submitBack]{
    background: #ccc;
    color: #000;
}
#notification #cont section .notification-btn input[name=submitBack]:hover{
    background: #999;
}
@media screen and (max-width: 1024px){
	#notification #cont section{
		padding: 0 10px;
	}
	#notification #cont section table tr th{
		float: left;
		width: 100%;
		display: block;
	}
	#notification #cont section table tr td{
		float: left;
		width: 100%;
		display: block;
	}
}



/* 250326 自動見積り機能
==============================================================================*/
#cont .form .inner .step02,
#cont .form .inner .step03{
  display: none;
}
#cont .form .inner .mw_wp_form_error .step02{
  display: block;
}
#cont .form .inner .mw_wp_form_error .step01{
  display: none;
}
#cont .form .inner .mw_wp_form_preview .step03{
  display: block;
}
#cont .form .inner .mw_wp_form_preview .step01{
  display: none;
}
#cont section.simulation-box{
  margin-bottom: 60px;
}
#cont .simulation-box #estimate-box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#cont .simulation-box #estimate-box .box {
  width: 48%;
}
#cont .simulation-box #estimate-box .box:nth-of-type(3){
	width: 100%;
}
#cont .simulation-box #estimate-box  p{
  margin: 0;
}
#cont .simulation-box #estimate-box .box .midashi {
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 10px;
  line-height: 1;
}
#cont .simulation-box #estimate-box .box .midashi span {
  display: inline-block;
  background-color: #004098;
  padding: 5px 10px;
  margin-right: 10px;
  font-size: 15px;
  color: #fff;
}
#cont .simulation-box #estimate-box .box .range {
  margin: 0;
}
#cont .simulation-box #estimate-box .box .range li {
  position: relative;
  margin-bottom: 20px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#cont .simulation-box #estimate-box .box .range li:nth-child(1):after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 60px;
  width: 24px;
  height: 24px;
  background: url(../images/service/arrow01.svg) no-repeat bottom right / cover;
}
#cont .simulation-box #estimate-box .box .range li strong {
  background-color: #004098;
  color: #fff;
  width: 120px;
  min-width: 120px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  box-sizing: border-box;
  padding: 10px;
}
#cont .simulation-box #estimate-box .box .range li input[type="text"] {
  width: calc(100% - 120px);
  box-sizing: border-box;
  border: solid 1px #004098;
  padding: 5px 10px;
}
#cont .simulation-box #estimate-box .box .range li strong span {
  width: auto;
  width: 25px;
  margin-right: 10px;
  display: block;
}
#cont .simulation-box #estimate-box .box .range li .notes {
  display: block;
  width: 100%;
  text-align: right;
  color: #333;
  font-size: 14px;
}
#cont .simulation-box #estimate-box .btn {
  text-align: center;
  margin: 20px auto 0;
  position: relative;
}
#cont .simulation-box #estimate-box .box:nth-of-type(1) .btn {
  min-width: 260px;
  width: 260px;
  margin-bottom: 40px;
}
#cont .simulation-box #estimate-box .box:nth-of-type(3) .btn {
	max-width: 300px;
  width: 100%;
  margin: 10px auto;
}
#cont .simulation-box #estimate-box .box:nth-of-type(3) .btn a{
  width: 100%;
  display: block;
  background: #004098;
  color: #fff !important;
  text-align: center;
  text-decoration: none !important;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.0;
  padding: 15px 0;
  border-radius: 6px;
  transition: 0.3s;
  position: relative;
}
#cont .simulation-box #estimate-box .box:nth-of-type(3) .btn a:after{
  display: none;
}
#cont .simulation-box #estimate-box .btn:after {
  content: "\03e";
  display: block;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: scale(0.75, 1.2) translateY(-40%);
  font-weight: normal;
  font-size: 20px;
  color: #fff;
  transition: 0.3s;
}
#cont .simulation-box #estimate-box .btn:hover {
  opacity: .7;
}
#cont .simulation-box #estimate-box .btn input,
#cont .simulation-box #estimate-box .btn #map_button{
  border: solid 1px #EE8C4F;
  background: #EE8C4F;
  display: inline-block;
  width: 100%;
  padding: 15px 25px;
  color: #fff;
  text-align: center;
  font-size: 16px;
  text-decoration: none;
  cursor: pointer;
  box-sizing: border-box;
}
#cont .simulation-box #estimate-box .btn #map_button{
  margin: 0;
}
#cont .simulation-box #estimate-box .btn #map_button:after{
  display: none;
}
#cont .simulation-box #estimate-box .box:nth-of-type(3) .btn input {
  font-size: 22px;
}
#cont .simulation-box #estimate-box .btn input:hover,
#cont .simulation-box #estimate-box .btn #map_button:hover  {
  opacity: .7;
}
#cont .simulation-box #estimate-box .conditions p {
  margin: 0;
  font-size: 18px;
  line-height: 1.2;
  display: block;
}
#cont .simulation-box #estimate-box .conditions li {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  border-bottom: solid 1px #004098;
  padding: 0 0 15px;
  margin-bottom: 15px;
}
#cont .simulation-box #estimate-box .conditions li .t1 {
  font-size: 16px;
  color: #004098;
  min-width: 95px;
  max-width: 95px;
  font-size: 16px;
  font-weight: bold;
}
#cont .simulation-box #estimate-box .conditions li .t1 span{
  font-size:.8em;
  margin: 0 0 0 5px;
  color: #fff;
  background:#ff0000;
  padding:2px 8px;
}
#cont .simulation-box #estimate-box .conditions li .t2 {
  width: calc(100% - 100px);
  font-size: 15px;
}
#cont .simulation-box #estimate-box .conditions li .t2.flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
#cont .simulation-box #estimate-box .conditions li .t2.syasyu.flex span:nth-of-type(2){
	margin-right: 80px;
}
#cont .simulation-box #estimate-box .conditions li .t2 input[type="radio"] {
  width: 20px;
  margin: 0;
  display: inline-block;
  vertical-align: revert;
}
#cont .simulation-box #estimate-box .conditions li .t2.flex label {
  margin-right: 10px;
}
#cont .simulation-box #estimate-box .conditions li .t2 .notes {
  font-size: 12px;
  display: block;
  margin: 5px 0 0;
}
#cont .simulation-box #estimate-box .map {
  margin: 0 0 10px;
}
#cont .simulation-box #estimate-box .map iframe {
  width: 100%;
  height: 420px;
  margin: 0;
}
#cont .simulation-box #estimate-box table {
  width: 100%;
  margin: 0 0 5px;
}
#cont .simulation-box #estimate-box table th {
  background: none;
  padding: 10px 5px;
  box-sizing: border-box;
  border: none;
  position: relative;
  color: #fff;
  text-align: center;
  background-color: #004098;
  min-width: 160px;
  max-width: 160px;
  font-size: 22px;
  line-height: 1;
}
#cont .simulation-box #estimate-box table td {
  background: #fff;
  padding: 15px 10px;
  border: none;
  font-size: 16px;
  font-weight: bold;
  box-sizing: border-box;
  text-align: center;
  line-height: 1;
}
#cont .simulation-box #estimate-box table td strong {
  font-size: 40px;
  line-height: 1;
  margin-left: 10px;
  background: none;
}
#cont .simulation-box #estimate-box table td strong span {
  font-size: 30px;
  margin-left: 10px;
}
#cont .simulation-box #estimate-box table td strong span:first-of-type{
  display: block;
  margin: 0 0 5px;
}
#cont .simulation-box #estimate-box table td .hidden{
  display: none;
}
#cont .simulation-box #estimate-box table tr:nth-of-type(2) td strong {
  color: #004098;
}
#cont .simulation-box #estimate-box table tr:nth-of-type(2) td strong span {
  font-size: 16px;
  color: #000;
}
#cont .simulation-box #estimate-box table tr:first-of-type td {
  border-bottom: solid 2px #f5f5f5;
}
#cont .simulation-box #estimate-box table td #gaku{
  position: relative;
}
#cont .simulation-box #estimate-box table td #gaku .txt {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #EFEFEF;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  color: #e91313;
  transition: .3s;
  opacity: 0;
  display: flex;
  left: 0;
  top: 0;
  justify-content: center;
  align-items: center;
}
#cont .simulation-box #estimate-box table td #gaku.separately .txt {
  opacity: 1;
}
#cont .simulation-box #estimate-box .table-notes {
  display: block;
  text-align: right;
  font-size: 14px;
}
#cont .simulation-box #estimate-box .table-notes img {
  width: 8px;
  vertical-align: middle;
}
#cont .simulation-box #estimate-box .caution {
  text-align: center;
  margin-top: 10px;
}
#cont .simulation-box #estimate-box .caution p {
  font-size: 12px;
  background-color: #e91313;
  color: #fff;
  display: inline-block;
  padding: 5px 10px;
  font-weight: bold;
}
#cont .simulation-box #estimate-box .caution p img {
  width: 14px;
  vertical-align: baseline;
  margin-right: 10px;
}
@media (max-width:1024px){
  #cont .simulation-box #estimate-box {
    display: block;
  }
  #cont .simulation-box #estimate-box .box {
    width: 100%;
    margin-bottom: 20px;
  }
  #cont .simulation-box #estimate-box .box .midashi {
    font-size: 14px;
    margin: 0 0 10px;
  }
  #cont .simulation-box #estimate-box .box .midashi span {
    font-size: 13px;
  }
  #cont .simulation-box #estimate-box .box .range li:nth-child(1):after {
    left: 40px;
    width: 20px;
    height: 20px;
  }
  #cont .simulation-box #estimate-box .box .range li strong {
    width: 100px;
    min-width: 100px;
    padding: 5px;
  }
  #cont .simulation-box #estimate-box .box .range li input[type="text"] {
    width: calc(100% - 100px);
    padding: 5px;
  }
  #cont .simulation-box #estimate-box .box .range li strong span {
    width: auto;
    width: 20px;
    margin-right: 5px;
    display: block;
  }
  #cont .simulation-box #estimate-box .box .range li .notes {
    font-size: 12px;
  }
  #cont .simulation-box #estimate-box .btn {
    margin: 20px auto 0;
  }
  #cont .simulation-box #estimate-box .box:nth-of-type(1) .btn {
    min-width: 200px;
    width: 200px;
    margin-bottom: 30px;
  }
  #cont .simulation-box #estimate-box .box:nth-of-type(3) .btn {
    min-width: 300px;
    width: 300px;
  }
  #cont .simulation-box #estimate-box .btn:after {
    font-size: 16px;
  }
  #cont .simulation-box #estimate-box .btn input,
  #cont .simulation-box #estimate-box .btn #map_button {
    padding: 10px 15px;
    font-size: 14px;
  }
  #cont .simulation-box #estimate-box .box:nth-of-type(3) .btn input {
    font-size: 18px;
  }
  #cont .simulation-box #estimate-box .conditions p {
    font-size: 14px;
  }
  #cont .simulation-box #estimate-box .conditions li {
    padding: 0 0 10px;
    margin-bottom: 10px;
    display: block;
  }
  #cont .simulation-box #estimate-box .conditions li .t1 {
    font-size: 14px;
    min-width: auto;
    max-width: none;
    width: 100%;
    margin-bottom: 5px;
  }
  #cont .simulation-box #estimate-box .conditions li .t2 {
    width: 100%;
    font-size: 14px;
  }
  #cont .simulation-box #estimate-box .conditions li .t2 .notes {
    font-size: 11px;
  }
	#cont .simulation-box #estimate-box .conditions li .t2.syasyu.flex span:nth-of-type(2){
		margin-right: 0;
	}
  #cont .simulation-box #estimate-box .map iframe {
    height: 320px;
  }
  #cont .simulation-box #estimate-box table th {
    padding: 10px 5px;
    min-width: 90px;
    max-width: 90px;
    font-size: 16px;
  }
  #cont .simulation-box #estimate-box table td {
    padding: 10px 5px;
    font-size: 14px;
  }
  #cont .simulation-box #estimate-box table td strong {
    font-size: 30px;
    margin-left: 5px;
  }
  #cont .simulation-box #estimate-box table td strong span {
    font-size: 20px;
    margin-left: 5px;
  }
  #cont .simulation-box #estimate-box table tr:nth-of-type(2) td strong span {
    font-size: 14px;
  }
  #cont .simulation-box #estimate-box table tr:first-of-type td {
    border-bottom: solid 1px #f5f5f5;
  }
  #cont .simulation-box #estimate-box table td strong.sharing{
    font-size: 20px;
  }
  #cont .simulation-box #estimate-box table td strong.sharing span{
    font-size:14px;
  }
  #cont .simulation-box #estimate-box .table-notes {
    font-size: 10px;
  }
}

#cont .simu-form-box {
  background-color: #f5f5fb;
  padding: 50px 30px;
  margin: 0 0 20px;
}
#cont .simu-form-box .midashi {
  border-bottom: solid 1px #000000;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  padding: 0 300px 10px 0;
  margin-bottom: 30px;
  position: relative;
}
#cont .simu-form-box .midashi a {
  position: absolute;
  right: 0;
  bottom: 10px;
  color: #ff0000;
  text-decoration: none;
  font-size: 16px;
  line-height: 1.2;
}
#cont .simu-form-box .midashi a:hover {
  opacity: 0.7;
}
#cont .simu-form-box table {
  margin: 0;
  border: none;
  width: 100%;
}
#cont .simu-form-box table th {
  background: none;
  padding: 0 0 10px;
  border: none;
  position: relative;
  display: flex;
  justify-content: space-between;
  color: #004098;
  min-width: 180px;
  max-width: 180px;
  font-size: 16px;
}
#cont .simu-form-box table th .hissu {
  display: block;
  background-color: #c20407;
  color: #fff;
  padding: 5px;
  line-height: 1;
  font-size: 14px;
}
#cont .simu-form-box table td {
  background: none;
  padding: 0 0 30px 30px;
  border: none;
  font-size: 16px;
  width: 100%;
  box-sizing: border-box;
  display: block;
}
#cont .simu-form-box table td .name {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#cont .simu-form-box table td .name p {
  margin: 0;
  width: 48%;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-items: center;
  font-size: 16px;
}
#cont .simu-form-box table td .name p strong {
  display: block;
  margin-right: 5px;
}
#cont .simu-form-box table td .name p input[type="text"] {
  width: calc(100% - 1.5rem);
}
#cont .simu-form-box table td input[type="text"],
#cont .simu-form-box table td textarea {
  background: #fff;
  border: none;
  outline: none;
  padding: 5px 10px;
  width: 100%;
  box-sizing: border-box;
  border: solid 1px #787878;
}
#cont .simu-form-box table td input[type="text"].none-input{
  width: 170px;
  background: none;
  border:none;
  pointer-events: none;
}
#cont .simu-form-box table td input[type="text"].form-total{
  width: auto;
  max-width: 500px;
}
#cont .simu-form-box table td .range {
  display: flex;
  justify-content: space-between;
}
#cont .simu-form-box table td .range p {
  margin: 0;
  font-size: 18px;
  line-height: 1.2;
  width: 48%;
  position: relative;
}
#cont .simu-form-box table td .range p:nth-child(1):after{
	content: '\025b6';
	position: absolute;
	top: 50%;
	right: -2%;
}
#cont .simu-form-box table td .range p strong {
  color: #004098;
  margin: 0 0 5px;
  background: none;
  display: block;
}
#cont .simu-form-box table td .range p span {
  display: inline-block;
  margin: 0 15px;
  color: #004098;
}
#cont .simu-form-box  table td .conditions p {
  margin: 0;
  font-size: 18px;
  line-height: 1.2;
  display: block;
}
#cont .simu-form-box  table td .conditions li {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  border-bottom: solid 1px #004098;
  padding: 0 0 15px;
  margin-bottom: 15px;
}
#cont .simu-form-box  table td .conditions li:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
#cont .simu-form-box  table td .conditions li .t1 {
  font-size: 16px;
  color: #004098;
  min-width: 95px;
  max-width: 95px;
  font-size: 16px;
  font-weight: bold;
}
#cont .simu-form-box  table td .conditions li .t2 {
  width: calc(100% - 100px);
}
#cont .simu-form-box  table td .conditions li .t2 span {
  font-size: 12px;
  display: block;
  margin: 5px 0 0;
}
#cont .simu-form-box .result {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
#cont .simu-form-box .result .t1 {
  background-color: #004098;
  color: #fff;
  text-align: center;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
  padding: 10px;
  margin: 0 20px 0 0;
  width: 170px;
}
#cont .simu-form-box .result .t2 {
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  margin: 0;
}
#cont .simu-form-box .result .t2 span{
  display: block;
  margin: 0 0 10px;
}
#cont .simu-form-box .t2 strong {
  font-size: 40px;
  color: #004098;
  margin:  5px 0 0;
  display: block;
  background: none;
}
#cont .simu-form-box .t2 strong.jp-txt{
  font-size: 30px;
}
#cont .simu-form-box .t2 .share strong{
  font-size: 30px;
}
#cont .simu-form-box .t2 strong input[type="text"].none-input{
  width: 150px;
  background: none;
  border:none;
  pointer-events: none;
}
#cont .simu-form-box .t2 strong input[type="text"].form-total,
#cont .simu-form-box .t2 strong input[type="text"].form-sharing{
  width: auto;
  max-width: 400px;
}
#cont #simu-anker {
  display: none;
}
#cont #simu-anker.show,
#cont .mw_wp_form_confirm #simu-anker{
  display: block;
}
#cont .form .inner #simu-anker table td{
  border: none;
}
@media (max-width:1024px){
  #cont .simu-form-box {
    background-color: #f5f5fb;
    padding: 10px 10px 5px;
  }
  #cont .simu-form-box .midashi {
    font-size: 16px;
    font-weight: bold;
    line-height: 1;
    padding: 0 0 10px;
    margin-bottom: 10px;
    display: block;
  }
  #cont .simu-form-box .midashi a {
    position: initial;
    right: initial;
    bottom: initial;
    font-size: 14px;
    display: block;
    margin-top: 5px;
  }
  #cont .simu-form-box table th {
    padding: 10px 0 5px;
    display: block;
    min-width: auto;
    max-width: none;
    width: 100%;
    font-size: 14px;
    position: relative;
  }
  #cont .simu-form-box table th .hissu {
    position: absolute;
    top: 10px;
    right: 0;
    font-size: 12px;
  }
  #cont .simu-form-box table td {
    display: block;
    padding: 0 0 20px;
    font-size: 14px;
    width: 100%;
    border-bottom: dotted 1px #000;
  }
  #cont .simu-form-box table td:last-of-type {
    border-bottom: none;
  }
  #cont .simu-form-box table td .conditions li .t2 span {
    font-size: 11px;
    margin: 5px 0 0;
  }
  #cont .simu-form-box .form-box table td .name p {
    font-size: 14px;
  }
  #cont .simu-form-box table td textarea {
    background: #fff;
    border: none;
    outline: none;
    padding: 5px 10px;
    width: 100%;
    box-sizing: border-box;
    border: solid 1px #787878;
    font-size: 16px;
  }
  #cont .simu-form-box .result .t2 strong input[type="text"].form-total{
    max-width: 100%;
    text-align: center;
  }
  #cont .simu-form-box .btn {
    text-align: center;
    margin: 40px auto 0;
  }
  #cont .simu-form-box .btn input {
    border: solid 1px #ea5d81;
    background: #ea5d81;
    display: inline-block;
    min-width: 260px;
    padding: 15px 25px;
    color: #fff;
    text-align: center;
    font-size: 16px;
    text-decoration: none;
    cursor: pointer;
    transition: 0.3s;
    box-sizing: border-box;
    margin-bottom: 20px;
  }
  #cont .simu-form-box table td .range {
    display: block;
  }
  #cont .simu-form-box table td .range p {
    font-size: 14px;
  }
  #cont .simu-form-box table td .range p span {
    display: block;
    margin: 5px 0;
    text-align: center;
    transform: rotate(90deg);
  }
  #cont .simu-form-box table td .conditions {
    margin-bottom: 0;
  }
  #cont .simu-form-box table td .conditions p {
    font-size: 14px;
  }
  #cont .simu-form-box table td .conditions li {
    padding: 0 0 10px;
    margin-bottom: 10px;
  }
  #cont .simu-form-box table td .conditions li:last-child {
    border-bottom: none;
    margin-bottom: 0;
  }
  #cont .simu-form-box table td .conditions li .t1 {
    font-size: 14px;
    min-width: 85px;
    max-width: 85px;
  }
  #cont .simu-form-box table td .conditions li .t2 {
    width: calc(100% - 95px);
  }
  #cont .simu-form-box .result {
    display: block;
    margin: 0 0 30px;
  }
  #cont .simu-form-box .result .t1 {
    font-size: 16px;
    padding: 5px;
    margin: 0 0 10px;
    width: 100%;
  }
  #cont .simu-form-box .result .t2 {
    font-size: 14px;
    text-align: center;
  }
  #cont .simu-form-box .result .t2 strong {
    font-size: 20px;
  }
}
/*  自動見積り誘導ボタン  */
#cont .priceLink{
	margin: 10px 10px 40px;
}
#cont .priceLink .btn {
max-width: 600px;
  width: 100%;
  margin: 10px auto;
  position: relative;
}
#cont .priceLink .btn a{
  width: 100%;
  display: block;
  background: #EE8C4F;
  color: #fff !important;
  text-align: center;
  text-decoration: none !important;
  font-size: clamp(16px,1.8vw,24px);
  font-weight: bold;
  line-height: 1.0;
  padding: 15px 0;
  border-radius: 6px;
  transition: 0.3s;
  position: relative;
}
#cont .priceLink .btn a:after{
  display: none;
}
#cont .priceLink .btn a:hover{
  opacity: 0.6;
}
#cont .priceLink .btn:after {
  content: "\03e";
  display: block;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: scale(0.75, 1.2) translateY(-40%);
  font-weight: normal;
  font-size: 20px;
  color: #fff;
  transition: 0.3s;
}

/* ============================================
   サービス共通スタイル（delivery, storage 等）
   ============================================ */
.service-detail-list {
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
}
.service-detail-list li {
  padding: 8px 0 8px 18px;
  border-bottom: 1px solid #e8edf2;
  position: relative;
}
.service-detail-list li::before {
  content: "●";
  position: absolute;
  left: 0;
  color: #004098;
  font-size: 10px;
  top: 11px;
}
.service-table {
  width: 100%;
  border-collapse: collapse;
  margin: 12px 0 20px;
  font-size: 14px;
}
.service-table th,
.service-table td {
  border: 1px solid #c8d6e5;
  padding: 8px 12px;
  text-align: left;
}
.service-table th {
  background: #004098;
  color: #fff;
  font-weight: bold;
}
.service-table td.center {
  text-align: center;
}
.service-table tr:nth-child(even) td {
  background: #f0f5fb;
}
.service-table .note {
  font-size: 12px;
  color: #666;
  margin-top: 4px;
}
.achievement-list {
  margin: 20px 0 28px;
  padding: 0;
  list-style: none;
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
}
.achievement-list li {
  flex: 1;
  min-width: 220px;
  background: #fff;
  border: 1px solid #e3e9f2;
  border-top: 4px solid #004098;
  border-radius: 12px;
  padding: 28px 24px 26px;
  text-align: center;
  box-shadow: 0 6px 18px rgba(0,64,152,0.08);
  transition: transform .2s, box-shadow .2s;
}
.achievement-list li:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 26px rgba(0,64,152,0.14);
}
#cont .achievement-list li strong {
  display: block;
  background: none;
  font-size: clamp(26px, 3.4vw, 38px);
  font-weight: 900;
  color: #004098;
  line-height: 1.15;
  letter-spacing: -0.5px;
  white-space: nowrap;
}
.achievement-list li span {
  display: inline-block;
  margin-top: 16px;
  padding: 6px 14px;
  background: #eef3fb;
  border-radius: 999px;
  font-size: 13px;
  font-weight: bold;
  color: #004098;
  white-space: nowrap;
  max-width: 100%;
}

/* ============================================
   人財育成ページ（hr-training）
   ============================================ */
#hr-training #main section {
  margin-bottom: 40px;
}
#hr-training #main section h2 {
  margin-bottom: 16px;
}
.photo-grid-2col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin: 16px 0 20px;
}
.photo-grid-3col {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 18px;
  margin: 16px 0 20px;
}
.photo-grid-2col img,
.photo-grid-3col img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  border-radius: 6px;
  display: block;
  border: 1px solid #d9e0ec;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
.photo-grid-2col .photo-item,
.photo-grid-3col .photo-item {
  display: flex;
  flex-direction: column;
}
.photo-grid-2col .photo-caption,
.photo-grid-3col .photo-caption {
  font-size: 12px;
  color: #555;
  margin-top: 6px;
  text-align: center;
}
.training-trophy-wrap {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin: 16px 0 20px;
}
.training-trophy-wrap img {
  width: 48%;
  height: 260px;
  object-fit: cover;
  border-radius: 6px;
}
.training-trophy-wrap .trophy-text {
  flex: 1;
}
.training-trophy-wrap .trophy-text p {
  margin-bottom: 10px;
}
.photo-main-img {
  width: 100%;
  max-height: 340px;
  object-fit: cover;
  border-radius: 6px;
  margin-bottom: 12px;
}
.photo-sub-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin-bottom: 20px;
}
.photo-sub-grid img {
  width: 100%;
  height: 240px;
  object-fit: cover;
  border-radius: 4px;
}
@media screen and (max-width: 768px) {
  .photo-grid-2col,
  .photo-grid-3col {
    grid-template-columns: 1fr;
  }
  /* #cont img{height:auto}（max-width:1024px）に勝つよう #cont を付与 */
  #cont .photo-grid-2col img,
  #cont .photo-grid-3col img,
  .photo-grid-2col img,
  .photo-grid-3col img {
    height: 210px;
  }
  .training-trophy-wrap {
    flex-direction: column;
  }
  .training-trophy-wrap img {
    width: 100%;
    height: 220px;
  }
  .photo-sub-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .achievement-list li {
    min-width: 100%;
  }
}
/* ============================================
   会社概要ページ（company）
   ============================================ */
.history-table {
  width: 100%;
  border-collapse: collapse;
  margin: 12px 0 24px;
}
.history-table th,
.history-table td {
  border-bottom: 1px solid #dde5f0;
  padding: 10px 14px;
  vertical-align: top;
  text-align: left;
  line-height: 1.6;
}
.history-table th {
  white-space: nowrap;
  color: #004098;
  font-weight: bold;
  width: 110px;
  background: #f0f5fb;
}

/* ============================================
   動画埋め込み（founding-story等）
   ============================================ */
.video-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 */
  margin: 16px 0 24px;
  background: #000;
  border-radius: 6px;
  overflow: hidden;
}
.video-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.video-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #1a1a2e;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #888;
  font-size: 15px;
}

/* ============================================
   全国対応マップ（service-delivery）
   ============================================ */
.coverage-map-box {
  background: #f5f8fc;
  border: 1px solid #d0dcea;
  border-radius: 10px;
  padding: 32px 24px;
  margin: 32px 0;
}
.coverage-map-box .coverage-title {
  font-size: 20px;
  font-weight: bold;
  color: #004098;
  margin-bottom: 4px;
}
.coverage-map-box .coverage-subtitle {
  font-size: 12px;
  color: #888;
  margin-bottom: 20px;
}
#jmap {
  width: 100%;
  height: 380px;
  position: relative;
  margin: 0 auto;
}
#jmap .jmap-pref.selected {
  background-color: #f39800 !important;
  box-shadow: 0 0 0 2px #f39800, 0 0 8px rgba(243,152,0,0.5) !important;
  color: #fff !important;
  z-index: 130 !important;
}
.map-legend-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  background: #fff;
  border: 1px solid #d0dcea;
  border-radius: 8px;
  padding: 16px 20px;
  margin: 0 0 20px;
  font-size: 13px;
}
.map-legend-row .legend-section-title {
  font-size: 13px;
  font-weight: bold;
  color: #004098;
  border-bottom: 1px solid #d0dcea;
  padding-bottom: 6px;
  margin-bottom: 8px;
}
.map-legend-row ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
  padding: 0;
}
.map-legend-row li strong {
  color: #004098;
}
.map-color-labels {
  display: flex;
  gap: 10px;
  margin-bottom: 12px;
}
.map-color-labels .lbl-inactive {
  background: #bfc7ce;
  color: #333;
  font-weight: bold;
  font-size: 12px;
  padding: 6px 14px;
  border-radius: 4px;
}
.map-color-labels .lbl-active {
  background: #0084B5;
  color: #fff;
  font-weight: bold;
  font-size: 12px;
  padding: 6px 14px;
  border-radius: 4px;
}
.map-table-wrap {
  background: #fff;
  border: 1px solid #d0dcea;
  border-radius: 8px;
  margin-top: 24px;
  padding: 16px;
}
.map-table-wrap h4 {
  font-size: 15px;
  font-weight: bold;
  color: #f39800;
  margin-bottom: 12px;
}
.table-scroll-wrap {
  max-height: 300px;
  overflow-y: auto;
}
#record-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  text-align: left;
  line-height: 1.6;
}
#record-table th {
  background: #e8eef8;
  color: #004098;
  font-weight: bold;
  padding: 8px 10px;
  border-bottom: 2px solid #c0cfe8;
  white-space: nowrap;
}
#record-table td {
  padding: 7px 10px;
  border-bottom: 1px solid #e5ecf5;
  color: #333;
  white-space: nowrap;
}
#record-table tr:hover {
  background: #f0f5fb;
}
.map-pagination {
  display: flex;
  gap: 8px;
  justify-content: center;
  margin-top: 14px;
  align-items: center;
}
.map-btn {
  background: #f0f5fb;
  color: #004098;
  border: 1px solid #c0cfe8;
  padding: 5px 12px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: bold;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.map-btn:hover {
  background: #004098;
  color: #fff;
}
#map-page-num {
  color: #555;
  font-size: 12px;
  font-weight: bold;
  padding: 0 8px;
}
.map-download-box {
  margin-top: 20px;
  background: #eef3fb;
  border: 1px solid #c0cfe8;
  border-radius: 8px;
  padding: 16px;
  text-align: center;
}
.map-download-box p {
  font-size: 13px;
  color: #333;
  margin-bottom: 8px;
}
.map-download-box .note {
  font-size: 11px;
  color: #888;
  margin-top: 8px;
}
@media screen and (max-width: 768px) {
  .map-legend-row {
    grid-template-columns: 1fr;
  }
  #jmap {
    height: 260px;
  }
}

/* ============================================
   理念・ビジョン 2カラム
   ============================================ */
.vision-2col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: start;
  margin: 16px 0 0;
}
.vision-2col .vision-img img {
  width: 100%;
  border-radius: 6px;
  object-fit: cover;
  max-height: 320px;
}
.vision-2col .vision-text {
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .vision-2col {
    grid-template-columns: 1fr;
  }
}

/* company features */
#company .features .feature-points {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
    margin: 0 0 50px;
}
#company .features .feature-points li {
    background: #f4f7fb;
    border-top: 4px solid #004098;
    border-radius: 4px;
    padding: 22px 22px 20px;
    box-sizing: border-box;
}
#company .features .feature-points li h3 {
    color: #004098;
    font-size: 1.25em;
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 12px;
}
#company .features .feature-points li h3::before {
    background: none;
}
#company .features .feature-points li p {
    margin: 0;
    font-size: 0.95em;
    line-height: 1.8;
}
#company .features .block {
    margin: 0 0 40px;
    align-items: center;
}
#company .features .block .img {
    float: left;
    width: 320px;
    margin: 0;
}
#company .features .block .img img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}
#company .features .block .text {
    margin: 0 0 0 350px;
}
#company .features .block:nth-child(even) .img {
    float: right;
}
#company .features .block:nth-child(even) .text {
    margin: 0 350px 0 0;
}
#company .features .block .text h3 {
    color: #f39800;
    font-size: 1.5em;
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 14px;
    padding: 0 0 12px;
    border-bottom: #f39800 1px solid;
}
#company .features .block .text h3::before {
    background: none;
}
#company .features .block .text p {
    margin: 0;
    line-height: 1.9;
}
@media screen and (max-width: 1024px) {
    #company .features .feature-points {
        display: block;
        margin: 0 0 30px;
    }
    #company .features .feature-points li {
        margin: 0 0 15px;
    }
    #company .features .block .img,
    #company .features .block:nth-child(even) .img {
        float: none;
        width: 100%;
        margin: 0 0 15px;
    }
    #company .features .block .text,
    #company .features .block:nth-child(even) .text {
        margin: 0;
    }
    #company .features .block .text h3 {
        font-size: 1.25em;
    }
}

/* company goodpoints: keep image on the left for all blocks */
#company .features.goodpoints .block .img,
#company .features.goodpoints .block:nth-child(even) .img {
    float: left;
}
#company .features.goodpoints .block .text,
#company .features.goodpoints .block:nth-child(even) .text {
    margin: 0 0 0 350px;
}
@media screen and (max-width: 1024px) {
    #company .features.goodpoints .block .img,
    #company .features.goodpoints .block:nth-child(even) .img {
        float: none;
        width: 100%;
    }
    #company .features.goodpoints .block .text,
    #company .features.goodpoints .block:nth-child(even) .text {
        margin: 0;
    }
}

/* company good-gallery */
#company .features .good-gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px 20px;
    margin: 40px 0 0;
}
#company .features .good-gallery.numbered {
    counter-reset: good-num;
}
#company .features .good-gallery li {
    margin: 0;
}
#company .features .good-gallery.numbered li {
    position: relative;
    counter-increment: good-num;
}
#company .features .good-gallery.numbered li::before {
    content: counter(good-num);
    display: block;
    width: 36px;
    height: 36px;
    background: #f39800;
    border-radius: 50%;
    text-align: center;
    font-weight: bold;
    color: #FFF;
    font-size: 1.633em;
    line-height: 36px;
    position: absolute;
    left: -10px;
    top: -10px;
    z-index: 2;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}
#company .features .good-gallery li img {
    width: 100%;
    height: auto;
    border-radius: 4px;
    display: block;
}
#company .features .good-gallery li p {
    margin: 10px 0 0;
    font-size: 0.95em;
    font-weight: bold;
    color: #004098;
    text-align: center;
    line-height: 1.5;
}
@media screen and (max-width: 1024px) {
    #company .features .good-gallery {
        grid-template-columns: repeat(2, 1fr);
        gap: 18px 12px;
    }
}
