@charset "utf-8";
/* CSS Document */
/*---------------------------------------
#type.top　バスの種類共通
---------------------------------------*/
.typebus_main {
 box-sizing: border-box;
 position: relative;
 min-height: 540px;
 padding: 10px 0;
 margin-bottom: 30px;
}
.typebus_main h1.top {
 color: #fff;
 font-size: 14px;
 text-align: center;
}
.typebus_main::before {
 content: "";
 width: 100vw;
 height: 100%;
 background: url(/img/top_main_bg01.webp) no-repeat center bottom / cover;
 position: absolute;
 top: 0;
 left: 50%;
 margin-left: -50vw;
 z-index: -1;
}
.typebus_main h2 {
 margin: 0 auto 10px;
 text-align: center;
}
.typebus_main .wrap {
 display: flex;
 align-items: center;
 justify-content: space-between;
 margin-top: 50px;
}
.typebus_main .image {
 width: 489px;
 margin-right: -20px;
}
.typebus_main .text {
 width: 488px;
 color: #333333;
 font-size: 19px;
 line-height: 1.5;
 padding: 15px 25px 10px;
 background: url(/img/top_main_bg02.png) repeat-x;
 background-position: left top;
 background-color: #FEE8DA;
 background-size: 100% auto;
 border: 4px solid #FF5B01;
 border-radius: 0 10px 10px 10px;
 position: relative;
}
.typebus_main .text::before {
 content: "";
 display: block;
 width: 154px;
 height: 49px;
 background: url("/img/top_text01_sp.png") no-repeat left top / 100% auto;
 position: absolute;
 right: 0;
 top: -55px; 
}
.typebus_main .text div:first-child {
 width: 320px;
 height: 38px;
 background-color: #FF5B01;
 color: #ffffff;
 text-align: center;
 padding: 9px 10px 0 30px;
 font-size: 24px;
 font-weight: bold;
 line-height: 1.2;
 position: absolute;
 left: -4px;
 top: -38px;
}
.typebus_main .text span {
 color: #F24600;
 font-weight: bold;
}
.typebus_main .text .btn {
 display: inline-block;
 position: relative;
 padding: 62px 0 0 0;
 margin: 7px 0 0 38px;
 background: url(/img/top_main_img04.gif) no-repeat;
 background-position: center top;
}
.typebus_main .text .btn::before {
 content: url(/img/top_main_img02.png);
 position: absolute;
 right: -10px;
 bottom: 65px;
}
.clm_wrap {
 display: flex;
 justify-content: space-between;
 column-gap:30px;
 margin: 30px 0;
}
.clm_wrap .clm {
 flex: 1;
 text-align: center;
}
.clm_wrap .clm .catch {
 margin: 10px 0;
 color: #004E96;
 line-height: 1.3;
 font-weight: bold;
}
.typebus_linklist .title {
 background-color: #eeeeee;
 padding: 0 20px;
 line-height: 1.3;
 margin: 40px 0 20px;
}
.typebus_linklist .title span {
 display: inline-block;
 padding: 0 8px;
 height: 100%;
 background-color: #ffffff;
 font-weight: bold;
 font-size: 16px; 
 color: #223D75;
}
.typebus_linklist ul { display: flex; }
.typebus_linklist ul li {
 background: url(/img/icon01.gif) no-repeat left 0.5em;
 padding: 2px 0 2px 17px;
 margin-right: 15px;
}
.bg_blue {
 position: relative;
 padding: 20px 0;
 margin-top: 40px;
}
.bg_blue::before {
 content: "";
 width: 100vw;
 height: 100%;
 background-color: #E3F9FF;
 position: absolute;
 top: 0;
 left: 50%;
 margin-left: -50vw;
 z-index: -1;
}
.bg_blue > h3 { margin-top: 0; }
.bg_blue .bg {
 background-color: #fff;
 padding: 30px;
 margin-bottom: 30px;
}
.bg_blue .bg > h3:first-child { margin-top: 0; }
.typebus_sec01 .title_pic {
 margin: 0 auto 20px;
 display: flex;
 justify-content: center;
 align-items: center;
}
.typebus_sec01 .title_pic h2 { margin: 0; }
.typebus_sec01 .btn { margin: 20px 0; }
.typebus_sec01 .btn div {
 display: inline-block;
 position: relative;
 padding: 34px 0 0 50px;
 margin: 20px 
}
.typebus_sec01 .btn div span {
 width: 30%;
	position: absolute;
	top: 0;
	left: 4px;
}
.typebus_sec01 .btn { text-align: center; }
.typebus_sec01 .bg {
 color: #ffffff;
 background-color: #01427A;
 text-align: center;
 padding: 3px;
 line-height: 1.4;
}
.typebus_sec01 .clm {
 width: 217px;
 margin: 0 auto;
}
.typebus_sec02 .link {
 margin-top: 10px;
 text-align: left; 
}
.typebus_sec02 .pic { text-align: center; }
.typebus_title01 {
 display: table;
 font-size: 38px;
 font-weight: normal;
 line-height: 1.3;
 color: #333333;
 margin-left: auto;
 margin-right:auto;
}
.typebus_title01::before{
	content: url(/img/big-sized-bus_icon01.png);
	margin:0 5px 0 0;
	vertical-align:-5px;
}
.typebus_title01::after {
	content: url(/img/big-sized-bus_icon02.png);
	margin:0 0 0 5px;
}
.typebus_title01 span{
	color:#007FCB;
	font-weight:bold;
}
.typebus_sec03 p span,
.typebus_sec04 p span {
 color: #E55800;
 font-weight: bold;
}
.typebus_sec04 .shikamo {
 text-align: center;
 margin-bottom: 10px;
}
.typebus_sec04 .catch {
 font-size: 1.2em;
 font-weight: bold;
}
.typebus_point .clm > div:first-child {
 color: #ffffff;
 background-color: #004E96;
 font-size: 20px;
 font-weight: bold;
 line-height: 1.4;
 padding: 4px 10px;
 border-radius: 1000px;
 position: relative;
 margin: 0 0 20px;
}
.typebus_point .clm > div:first-child::after {
 content: "";
 width: 25px;
 height: 10px;
 background-color: #004E96;
 clip-path: polygon(0 0, 100% 0%, 50% 100%);
 position: absolute;
 left: 50%;
 transform: translateY(-50%);
 bottom: -10px;
}
.typebus_point .clm ol {
 counter-reset: num;
 padding: 0 20px;
}
.typebus_point .clm ol li {
 counter-increment: num;
 padding-left: 4.6rem;
 text-align: left;
 line-height: 1.4;
 margin-top: 10px;
 position: relative;
}
.typebus_point .clm ol li::before {
 content: "Point "counter(num);
 display: inline-block;
 background-color: #E55800;
 color: #fff;
 height: 20px;
 line-height: 20px;
 text-shadow: rgb(229, 88, 0) 2px 0px 0px, rgb(229, 88, 0) 1.75517px 0.958851px 0px, rgb(229, 88, 0) 1.0806px 1.68294px 0px, rgb(229, 88, 0) 0.141474px 1.99499px 0px, rgb(229, 88, 0) -0.832294px 1.81859px 0px, rgb(229, 88, 0) -1.60229px 1.19694px 0px, rgb(229, 88, 0) -1.97998px 0.28224px 0px, rgb(229, 88, 0) -1.87291px -0.701566px 0px, rgb(229, 88, 0) -1.30729px -1.5136px 0px, rgb(229, 88, 0) -0.421592px -1.95506px 0px, rgb(229, 88, 0) 0.567324px -1.91785px 0px, rgb(229, 88, 0) 1.41734px -1.41108px 0px, rgb(229, 88, 0) 1.92034px -0.558831px 0px;
 text-align: center;
 font-weight: bold;
 border-radius: 100%;
 position: absolute;
 left: 0;
 top: 0;
}
.typebus_point .clm .pic { padding: 20px; }
@media screen and (max-width: 500px) {
 .typebus_main dl dd .btn {
  padding: 40px 0 0 0;
  background-size: auto 40px;
 }
 .typebus_main dl dd .btn:before { bottom: 40%; }
 .clm2_wrap,
 .clm3_wrap { display: block; }
}
@media screen and (max-width: 960px) {
 .typebus_main .wrap {
  display: block;
  margin-top: 0;
 }
 .typebus_main .image,
 .typebus_main .text {
  width: 100%;
  margin: 0;
 }
 .typebus_main .image { position: relative; }
 .typebus_main .image .img01 {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  width: 70%;
 }
 .typebus_main .image .img02 {
  position: relative;
  aspect-ratio: 375 / 184;
  padding-left: 28%;  
  text-align: right;
  margin: 0 0 10px;
 }
 .typebus_main .img02 img {
  width: 100%;
  max-width: 342px;
  height: auto;
 }
 .typebus_main .img02::before {
  content: url("/img/top_text01_sp.png");
  display: block;
 }
 .typebus_main .text::before { content: none; }
 .typebus_main .text {
  width: calc(100% - 16px);
  margin: 48px auto 0;
  min-height: auto;
  text-align: center;
  font-size: 16px;
  padding: 3% 3% 3% 3%;
  border-radius: 0 0 0 0;
 }
 .typebus_main .text div:first-child {
  width: calc(100% + 8px);
  font-size: 16px;
 }
 .typebus_main .text .btn {
  padding: 50px 0 0 0;
  margin: 3px 12% 0 12%;
  background: url(/img/top_main_img04.gif) no-repeat;
  background-position: center top;
  background-size: auto 50px;
 }
 .typebus_main .text .btn:before {
  content: '';
  display: inline-block;
  width: 74px;
  height: 55px;
  background-image: url(/img/top_main_img02.webp);
  background-size: contain;
  vertical-align: middle;
  bottom: 75px;
 }
 .typebus_sec02 th { width: 140px; }
 .clm_wrap {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
 }
 .bg_blue .bg { padding: 30px 16px; }
 .typebus_linklist ul { flex-wrap: wrap; }
 .typebus_point .clm > div:first-child {
  font-size: 16px;
  padding: 10px;
 }
}





/*---------------------------------------
#type.top　種類で選ぶ
---------------------------------------*/
#type.top .green_box .title {
 background-color: #029800;
 color: #fff;
 padding: 10px 20px;
 font-weight: bold;
 font-size: 1.2em;
 margin-bottom: 0;
}
#type.top .green_box .text {
 border: solid 1px #029800;
 padding: 2px 20px;
 background-color: #fff;
}
#type.top .txt .orange{
	color:#E55800;
	font-weight:bold;
}
/* type_sec01
---------------------------------------*/
#type.top .type_sec01 {
 display: flex;
 justify-content: space-between;
 position: relative;
 padding: 10px 0;
}
#type.top .type_sec01::before {
 content: "";
 width: 100vw;
 height: 100%;
 background: url("/img/type_img23.jpg") no-repeat center 50% / cover;
 position: absolute;
 top: 0;
 left: 50%;
 margin-left: -50vw;
 z-index: -1;
}
#type.top .type_sec01 h1 {
 width: 580px;
 background: url("/img/type_img24.png") no-repeat center bottom / 100% auto;
 padding-top: 40px;
}
#type.top .type_sec01 .text {
 width: 360px;
 background-color: rgba(255,255,255,0.8);
 padding: 10px;
 color: #000;
}
@media screen and (min-width: 961px) {
 #type.top .type_sec01 .text { font-size: 0.9em; }
}
/* type_sec02
---------------------------------------*/
#type.top .type_sec02 .bg {
 background-color: #E3F7FF;
 padding: 20px 10px 10px;
 margin-top: 30px;
}
#type.top .type_sec02 h3{
 margin: 0 0 20px;
	text-align:center;
	color:#333333;
	line-height:1.2;
	font-size:18px;
	font-weight:bold;
}
#type.top .type_sec02 h3 span {
	font-size:26px;
	color:#D22400;
	margin:0 3px 0 0;
}
#type.top .type_sec02 .buslist{ display: flex; }
#type.top .type_sec02 .buslist > li {
 width:310px;
 padding: 10px;
 background-color: #fff;
}
#type.top .type_sec02 .buslist > li:nth-child(2) { margin: 0 15px; }
#type.top .type_sec02 .buslist li dl dt{
	text-align:center;
	font-size:20px;
	font-weight:bold;
	line-height:1.3;
	padding:0 0 5px 0;
}
#type.top .type_sec02 .buslist li dl dt span{
	font-size:16px;
	color:#D22400;
	vertical-align:middle;
}
#type.top .type_sec02 .buslist li dl dd.pic{
 display: flex;
 justify-content: center;
 align-items: center; 
	text-align:center;
 min-height: 200px;
}
#type.top .type_sec02 .buslist li dl dd.link{
	margin:10px 0 0 0;
 text-align: center;
}
#type.top .type_sec02 .buslist li dl dd.link ul { display: inline-block; }
#type.top .type_sec02 .buslist li dl dd.link ul li:last-child{ padding:2px 0 0 0; }
#type.top .type_sec02 .buslist li dl dd.link ul li a{
	background:url(/img/icon01.gif) no-repeat left 0.5em;
	padding:2px 0 2px 17px;
}
/* type_sec04
---------------------------------------*/
/* type_sec05
---------------------------------------*/
/* type_sec06
---------------------------------------*/
@media screen and (min-width: 961px) {
 #type.top .type_sec06 .photo_text .photo { width: 50%; }
}
#type.top .type_sec06 {
 position: relative;
 padding: 40px 0;
 margin-top: 30px;
}
#type.top .type_sec06::before {
 content: "";
 width: 100vw;
 height: 100%;
 background-color: #E3F7FF;
 position: absolute;
 top: 0;
 left: 50%;
 margin-left: -50vw;
 z-index: -1;
}
#type.top .type_sec06 .bg {
 position: relative;
 background-color: #fff;
 padding: 30px;
}
#type.top .type_sec06 .bg + .bg { margin-top: 40px; }
#type.top .type_sec06 .bg > h2:first-child { margin-top: 0; }
#type.top .type_sec06 .photo_text .name {
	font-size:18px;
	color:#333333;
	font-weight:bold;
	line-height:1.3;
 margin: 0 0 16px;
}
#type.top .type_sec06 .photo_text .photo .name:nth-child(3) { margin-top: 1em; }
#type.top .type_sec06 .photo_text .ninzu {
 font-weight: bold;
 color:#333333;
 margin: 0 0 16px;
}
#type.top .type_sec06 .all_title01 + .all_title02 { margin-top: 30px; }
/* type_sec07
---------------------------------------*/
@media screen and (max-width: 960px) {
 #type.top .green_box .title { margin-top: 20px; }
 /* type_sec01
 ---------------------------------------*/
 #type.top .type_sec01 {
  display: block;
  padding: 0;
 }
 #type.top .type_sec01::before { content: none; }
 #type.top .type_sec01 h1 {
  width: auto;
  margin: 0 -16px;
  aspect-ratio: 580 / 400;
  padding: 16px;
  position: relative;
  background-size: 90% auto;
  background-position: left 50% bottom 10px;
 }
 #type.top .type_sec01 h1::before {
  content: "";
  width: 100vw;
  height: 100%;
  background: url(/img/type_img23.jpg) no-repeat center 50% / cover;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -50vw;
  z-index: -1;
 }
 #type.top .type_sec01 .text {
  width: 100%;
  background: none;
  padding: 0;
 }
 /* type_sec02
 ---------------------------------------*/
 #type.top .type_sec02 h3 span { font-size: 20px; }
 #type.top .type_sec02 .buslist { display: block; }
 #type.top .type_sec02 .buslist > li { width: 100%; }
 #type.top .type_sec02 .buslist > li:nth-child(2) {
  margin-left: 0;
  margin-right: 0;
 }
 #type.top .type_sec02 .buslist > li + li,
 #type.top .type_sec02.type_sec02 .buslist > li:nth-child(2) { margin-top: 20px; }
 /* type_sec03
 ---------------------------------------*/ 
 /* type_sec04
 ---------------------------------------*/
 /* type_sec05
 ---------------------------------------*/
 /* type_sec06
 ---------------------------------------*/
 #type.top .type_sec06 { padding: 20px 0; }
 #type.top .type_sec06 .bg { padding: 30px 20px; }
 #type.top .type_sec06 .bg + .bg { margin-top: 20px; }
 /* type_sec07
 ---------------------------------------*/
}



/*---------------------------------------
#type.big-sized-bus　大型バス
---------------------------------------*/
.big-sized-bus_link {
	margin:40px 0 0 0;
	padding:0 0 5px 0;
	background-color:#C9E8FC;
	border-top:3px solid #223D75;
}
.big-sized-bus_link div {
	font-weight:bold;
	line-height:1.3;
	color:#223D75;
	text-align:left;
	padding:10px 8px 0 15px;
}
.big-sized-bus_link ul {
	display:table;
	margin:-3px auto 0 auto;
	border-collapse: separate;
	border-spacing:8px;
}
.big-sized-bus_link ul li {
	display:table-cell;
}
.big-sized-bus_sec03 h5 {
 font-size: 20px;
 text-align: center;
 margin: 0 0 10px;
 color: #004E96;
 font-weight: bold;
 padding: 4px 10px;
 background-color: #eeeeee;
 border-radius: 5px;
}
.big-sized-bus_sec03 h5 span {
 font-weight: normal;
 font-size: 12px;
 display: block;
}
.big-sized-bus_sec08 .clm_wrap { margin-bottom: 0; }
.big-sized-bus_sec08 .clm {
 width: calc((100% - 30px)/2);
 padding: 20px;
 border: #074FD2 solid 1px;
}
.big-sized-bus_sec08 .clm h4 {
 font-weight: bold;
 color: #074FD2;
 margin: 0 0 20px;
}
.big-sized-bus_sec08 .clm p { text-align: left; }
@media screen and (max-width: 960px) {
 .big-sized-bus_sec03 h5 { font-size: 16px; } 
 .big-sized-bus_sec08 .clm { width: 100%; }
}
/* #type.big-sized-bus_k　大型バスの基礎知識
---------------------------------------*/
.big-sized-bus_k_sec01 .big-sized-bus_k_title {
 clear: both;
 font-size: 26px;
 color: #004E96;
 border-bottom: 3px dotted #cccccc;
 margin-left: 50px;
 padding: 0 0 4px 25px;
 position: relative;
}
.big-sized-bus_k_sec01 .big-sized-bus_k_title::before {
 content: "";
 width: 71px;
 height: 67px;
 background: url("/img/big-sized-bus_k_text01.png") no-repeat center top / 100% auto;
 position: absolute;
 left: -50px; 
 top: 50%;
 transform: translateY(-50%);
}
.big-sized-bus_k_sec01 .big-sized-bus_k_title:nth-of-type(2)::before { background-image:url("/img/big-sized-bus_k_text02.png"); }
.big-sized-bus_k_sec01 .big-sized-bus_k_title:nth-of-type(3)::before { background-image:url("/img/big-sized-bus_k_text03.png"); }
.big-sized-bus_k_sec01 .big-sized-bus_k_title:nth-of-type(4)::before { background-image:url("/img/big-sized-bus_k_text04.png"); }
.big-sized-bus_k_sec01 .big-sized-bus_k_title:nth-of-type(5)::before { background-image:url("/img/big-sized-bus_k_text05.png"); }
.big-sized-bus_k_sec01 .big-sized-bus_k_title:nth-of-type(6)::before { background-image:url("/img/big-sized-bus_k_text06.png"); }
.big-sized-bus_k_sec01 .big-sized-bus_k_title:nth-of-type(7)::before { background-image:url("/img/big-sized-bus_k_text07.png"); }
.big-sized-bus_k_sec01 .pic {
 display: inline-block;
 float: right;
 margin: 0 0 10px 10px;
}
@media screen and (max-width: 960px) {
 .big-sized-bus_k_sec01 .big-sized-bus_k_title { font-size: 22px; }
}
/* #type.big-sized-bus_h　大型バスの歴史
---------------------------------------*/
.big-sized-bus_h_sec01 .catch {
 text-align: center;
 font-weight: bold;
}
.big-sized-bus_h_sec01 .big-sized-bus_h_title {
 clear: both;
 padding: 10px 0 0 45px;
 font-size: 26px;
 color: #004E96;
 border-bottom: 1px solid #6A97C2;
 background: url(/img/big-sized-bus_h_icon01.png) no-repeat left bottom;
}
.big-sized-bus_h_sec01 .pic {
 display: inline-block;
 float: right;
 margin: 0 0 10px 10px;
}
@media screen and (max-width: 960px) {
 .big-sized-bus_h_sec01 .big-sized-bus_k_title { font-size: 22px; }
}



/*---------------------------------------
#type.medium-sized-bus　中型バス
---------------------------------------*/
.medium-sized-bus_sec04 .typebus_point .clm { margin: 0 auto; }



/*---------------------------------------
#type.small-sized-bus　小型バス
---------------------------------------*/
.small-sized-bus_sec09 {
 background-color: #FFF9E8;
 padding: 20px;
 margin: 0 0 40px;
}
.small-sized-bus_sec09 h2 {
 margin: 0 0 20px;
 text-align: center;
}
.small-sized-bus_sec09 h2 .small {
 font-size: 0.9em;
 display: block;
}
.small-sized-bus_sec09 h2 .red {
 font-size: 1.4em;
 color: #EA443E;
 display: block;
}
.small-sized-bus_sec03 .pic { text-align: center; }
.small-sized-bus_sec08 .clm_wrap { margin-bottom: 0; }
.small-sized-bus_sec08 .clm {
 width: calc((100% - 30px)/2);
 padding: 20px;
 border: #074FD2 solid 1px;
}
.small-sized-bus_sec08 .clm h4 {
 font-weight: bold;
 color: #074FD2;
 margin: 0 0 20px;
}
.small-sized-bus_sec08 .clm p { text-align: left; }
@media screen and (max-width: 960px) {
 .small-sized-bus_sec09 { padding: 16px; }
 .small-sized-bus_sec09 h2 .small {
  font-size: 4.2vw;
  margin-bottom: 10px;
 }
 .small-sized-bus_sec09 h2 .red { font-size: 6vw; }
 .small-sized-bus_sec08 .clm { width: 100%; }
}



/*---------------------------------------
#type.microbus　小型マイクロバス
---------------------------------------*/
.microbus_sec08,
.microbus_sec06 {
 position: relative;
 padding: 2px 0 40px;
 margin-top: 40px;
}
.microbus_sec08::before,
.microbus_sec06::before {
 content: "";
 width: 100vw;
 height: 100%;
 background-color: #E3F9FF;
 position: absolute;
 top: 0;
 left: 50%;
 margin-left: -50vw;
 z-index: -1;
}
.microbus .typebus_sec02 .clm_wrap h3 { margin-top: 20px; }
.microbus .typebus_sec02 .clm_wrap p { text-align: left; }
.microbus_sec05 .clm_wrap.bg .clm {
 text-align: left;
 background-color: #FFF9E8;
 padding: 20px;
}
.microbus_sec05 .clm_wrap.bg .clm h4 { margin-top: 0; }
.microbus_sec06 .clm_wrap .clm {
 text-align: left;
 background-color: #fff;
 padding: 20px;
}
.microbus_sec06 .clm_wrap .clm h3 { margin-top: 0; }
.microbus_sec06 .clm_wrap .clm .link { text-align: left; }
@media screen and (min-width: 961px) {
 .microbus_sec06 .clm_wrap .clm .all_title03 { font-size: 20px; }
}
.microbus_sec08 .clm_wrap .clm {
 text-align: left;
 background-color: #fff;
 padding: 20px;
}
.microbus_sec08 .clm_wrap .clm h3 { margin-top: 0; }



/*---------------------------------------
#type.jumbo-taxi　ミニバス（ジャンボタクシー）
---------------------------------------*/
.jumbo-taxi_sec02 .btn_wrap {
 margin: 20px 0;
 text-align: center;
 clear: both;
 background: url(/img/rental-taxi_text13.gif) no-repeat top center / auto 29px;
 padding: 40px 0 0;
 display: flex;
 justify-content: center;
 column-gap: 30px;
}
@media screen and (min-width: 961px) {
 .jumbo-taxi_sec02 .btn_wrap .btn { width: 300px; }
}
@media screen and (max-width: 960px) {
 .jumbo-taxi_sec02 .btn_wrap { column-gap: 20px; }
 .jumbo-taxi_sec02 .btn_wrap .btn { max-width: 300px; }
}



/*---------------------------------------
#type.salon-bus　サロンバス
---------------------------------------*/
#type.salon-bus .all_main01::before {
 background-image: url(/img/salon-bus_img15.png);
 width: 1400px;
 left: 50%;
 transform: translateX(-50%);
 margin: 0 auto;
}
.salon-bus .pic { text-align: center; }
.salon-bus_conversion01 {
	text-align:center;
 margin: 20px 0 10px;
}
.salon-bus_conversion01 .btn {
	display:inline-block;
	position: relative; 
}
.salon-bus_conversion01 .btn span {
	position : absolute;
	top:-20px;
	left:-40px;
}
.salon-bus_conversion01 .txt{
	color:#ff0000;
	padding:10px 0 0 1em;
	font-size:12px;
}
.salon-bus_sec03 .memo {
 margin: 20px 0 0;
 background-color: #fff;
 padding: 20px;
 font-size: 0.9em;
}
.salon-bus_sec03 .memo li {
 text-indent: -2em;
 padding-left: 2em;
 line-height: 1.6;
}
.salon-bus_sec03 .memo li + li { margin-top: 10px;}
.salon-bus_sec04 .clm {
 text-align: left;
 padding: 20px;
}
.salon-bus_sec04 .clm .all_title03 { margin: 0 0 20px; }
.salon-bus_sec04 .clm_wrap .clm.attention {
 background-color: #f9f9f9;
 display: flex;
 flex-direction: column;
 align-items: center;
}
.salon-bus_sec05 .clm {
 text-align: left;
 background-color: #fff;
 padding: 0 20px 20px;
}
.salon-bus_sec05 .clm h3 {
 margin: 0 -20px 20px;
 font-weight: bold;
 color: #545454;
 background: URL(/img/salon-bus_bg01.png);
 background-position: 15px center;
 padding: 4px;
 padding-left: 76px;
 position: relative;
}
.salon-bus_sec05 .clm h3 span {
 color: #FF5217;
 font-size: 1.2em;
}
.salon-bus_sec05 .clm h3::before {
 content: "";
 width: 66px;
 height: 61px;
 background: url(/img/salon-bus_icon05.png) no-repeat center top / 100% auto;
 position: absolute;
 left: 4px;
 top: -10px;
}
.salon-bus_sec05 .clm.no02 h3::before { background-image: url(/img/salon-bus_icon06.png); }
.salon-bus_sec05 .clm.no03 h3::before { background-image: url(/img/salon-bus_icon07.png); }
.salon-bus_sec05 .clm.no04 h3::before { background-image: url(/img/salon-bus_icon08.png); }
.salon-bus_sec05 .clm.no05 h3::before { background-image: url(/img/salon-bus_icon09.png); }
.salon-bus_sec05 .clm.no06 h3::before { background-image: url(/img/salon-bus_icon10.png); }
@media screen and (max-width: 960px) {
 #type.salon-bus .all_main01 .all_main01_title::after {
  background-image: url(/img/salon-bus_img15.png);;
  aspect-ratio: 2000 / 1334;
 }
 .salon-bus_conversion01 { margin: 20px 12% 10px; }
 .salon-bus_conversion01 .btn span {
  top: -10px;
  width: 30%;
 }
 .salon-bus_main::before { background-size: 100% auto; }
 .salon-bus_main .salon-bus_main_title { margin-bottom: 20%; }
 .salon-bus_main .text {
  width: 100%;
  background: rgba(255, 255, 255, 0.8);
 }
}



/*---------------------------------------
#type.welfare-bus　リフト付きバス
---------------------------------------*/
.welfare-bus .pic { text-align: center; }
.welfare-bus_main {
 position: relative;
}
.welfare-bus_main::before {
 content: "";
 width: 100vw;
 height: 100%;
 background:linear-gradient(to bottom, #45c7fd 40%, transparent 100%);
 position: absolute;
 top: 0;
 left: 50%;
 margin-left: -50vw;
 z-index: -1;
}
.welfare-bus_sec03 .memo {
 margin-top: 20px;
 background-color: #E3F9FF;
 padding: 20px;
 font-size: 0.9em;
}
.welfare-bus_sec03 .memo li { line-height: 1.6; }
.welfare-bus_sec03 .memo li + li { margin-top: 10px; }
.welfare-bus_sec06 .welfare-bus_sec06_title {
 display: table;
 width: 100%;
 table-layout: auto;
 border-bottom: 6px solid rgb(0, 161, 212);
 position: relative;
}
.welfare-bus_sec06 .welfare-bus_sec06_title img:first-child {
 width: 43px;
 height: 40px;
 position: absolute;
 top: -10px;
 left: -6px;
}
.welfare-bus_sec06 .welfare-bus_sec06_title span {
 display: table-cell;
 vertical-align: middle;
}
.welfare-bus_sec06 .welfare-bus_sec06_title span:first-of-type {
 padding: 7px 50px;
 padding-bottom: 0;
 font-size: 22px;
 color: #ffffff;
 background: URL("../img/welfare-bus_bg01.png") no-repeat;
 background-position: right bottom;
 background-color: #00A1D4;
}
.welfare-bus_sec06 .welfare-bus_sec06_title span:last-of-type {
 padding: 0 0 1px 5px;
 font-size: 15px;
 color: #00A0D3;
}
.welfare-bus_sec06 .catch {
 margin: 20px 0 0;
 font-weight: bold;
}
.welfare-bus_sec06 .label {
 margin: 10px 0 0;
 display: flex;
 justify-content: center;
 font-size: 13px;
 color: #333333;
 font-weight: bold;
 line-height: 1.3;
}
.welfare-bus_sec06 .label li { margin: 0 10px; }
.welfare-bus_sec06 .memo {
 text-align: left;
 background-color: #E3F7FF;
 padding: 10px;
 margin: 20px 0 0;
}
.welfare-bus_sec07 .seat span {
 display: block;
 font-weight: bold;
 margin: 30px 0 0;
}
.welfare-bus_sec07 .seat ul {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 column-gap: 20px;
 row-gap: 20px;
}
.welfare-bus_sec07 .seat ul li {
 text-align: center;
 font-weight: bold;
}
.welfare-bus_sec07 .memo {
 margin: 20px 0 0;
 background-color: #FFF5C7;
 padding: 10px;
}
.welfare-bus_sec09 .all_title03,
.welfare-bus_sec09 table th,
.welfare-bus_sec09 table td { text-align: left; }
@media screen and (max-width: 960px) {
 .welfare-bus_sec06 .welfare-bus_sec06_title span:first-of-type {
  padding: 6px 40px;
  font-size: 16px;
  width: 180px;
 }
 .welfare-bus_sec07 .seat ul { display: block; }
 .welfare-bus_sec07 .seat ul li {
  max-width: 345px;
  margin: 20px auto 0;
 }
}


/*---------------------------------------
#type.equipmentsample　貸切バスの装備例
---------------------------------------*/
.equipmentsample_sec01 .catch {
 font-size: 21px;
 color: #005BB6;
 font-weight: bold;
}
.equipmentsample_sec03 .clm p { text-align: left; }
@media screen and (max-width: 960px) {
 .equipmentsample_sec01 .catch { font-size: 18px; }
}



/*---------------------------------------
#type.persons 人数で選ぶ
---------------------------------------*/
.persons header .secMenu ul li.per a { background-color:#6599f3; }
.persons .all_main01::before {
 background-image: url(/img/persons_img13.jpg);
 width: 1530px;
 left: 50%;
 transform: translateX(-50%);
 margin: 0 auto;
}
/* persons_sec02
---------------------------------------*/
.persons_sec02 {
 position: relative;
 padding: 2px 0;
 margin-top: 40px;
}
.persons_sec02::before {
 content: "";
 width: 100vw;
 height: 100%;
 background-color: #E3F9FF;
 position: absolute;
 top: 0;
 left: 50%;
 margin-left: -50vw;
 z-index: -1;
}
.persons_sec02 .txt span{
	color:#E55800;
	font-weight:bold;
}
.persons_sec02 .bus_wrap {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 column-gap: 20px;
 row-gap: 20px; 
}
.persons_sec02 .bus{
	min-height:200px;
	position:relative;
}
.persons_sec02 .bus h3{
	font-size:26px;
	line-height:1.2;
	font-weight:bold;
	color:#ffffff;
	padding:7px 7px 4px 85px;
	background-color: #005CE2;
	margin:50px 0 0 100px;
}
.persons_sec02 .bus h3 span{
	font-size:20px;
	color:#FFFF4D;
	margin-right:2px;
}
.persons_sec02 .bus .pic{
	position : absolute;
	top:-30px;
	left:0;
}
.persons_sec02 .bus .info{
	padding:10px 10px 0 140px;
	margin:0 0 0 50px;
 background:linear-gradient(to bottom, #fff 85%, transparent 100%);
}
.persons_sec02 .bus .info table{
	border-collapse:collapse;
	width:100%;
}
.persons_sec02 .bus .info table th{
	border:1px solid #333333;
	padding:8px 2px;
	font-weight:normal;
	background-color:#DDDDDD;
	color:#000000;
	width:50%;
	text-align:center;
	line-height:1.2;
}
.persons_sec02 .bus .info table td{
	border:1px solid #333333;
	padding:8px 2px;
	font-size:20px;
	color:#000000;
	background-color:#ffffff;
	text-align:center;
	line-height:1.2;
}
.persons_sec02 .bus .info table td span{
	display:block;
	font-size:12px;
}
.persons_sec02 .bus .info .caution{
	font-size:16px;
	color:#ff0000;
	line-height:1.2;
	margin:10px 0 0 1em;
	text-indent:-1em;
}
.persons_sec02 .bus .info .btn{
	text-align:right;
	padding:14px 0 0 0;
}
.persons_sec02 .btns {
 display: flex;
 justify-content: center;
 margin: 30px 0 0;
}
.persons_sec02 .btns li{ margin: 0 10px; }
.persons_sec02 .note{ padding:20px 0 0 0; }
.persons_sec02 .attention{
	padding:13px;
	background-color:#FFF9BB;
	color:#333333;
	margin:15px 0 0 0;
}
.persons_sec02 .attention span{
	color:#C00;
}
.persons_sec02 .memo{
	padding:1em 0 0 0;
}
.persons_sec02 .memo li{
	background:url(/img/icon01.gif) no-repeat left 0.5em;
	padding:3px 0 0 17px;
	margin:5px 0 0 0;
}
/* persons_sec3
---------------------------------------*/
.persons_sec3 {
 position: relative;
 padding: 2px 0 30px;
 margin-top: 40px;
}
.persons_sec3::before {
 content: "";
 width: 100vw;
 height: 100%;
 background-color: #FFF9E8;
 position: absolute;
 top: 0;
 left: 50%;
 margin-left: -50vw;
 z-index: -1;
}
.persons_sec3 .case {
 background-color: #fff;
 padding: 20px;
 margin-top: 30px;
}
.persons_sec3 .case_title {
 background: url("/img/icon_bus01_green.svg") no-repeat left 50% / 50px auto;
 border-bottom: dashed 2px #ccc;
 padding: 10px 0 10px 60px;
 margin: 0 0 20px;
 font-size: 24px;
}
.persons_sec3 .case_title .small { font-size: 20px; }
.persons_sec3 .case_title .bg { background:linear-gradient(to bottom, transparent 60%, #FFF135 60%); }
.persons_sec3 .notes { font-size: smaller; }
/* persons_sec4
---------------------------------------*/
.persons_sec4 .txt span{
	color:#E55800;
	font-weight:bold;
}
/* persons_sec5
---------------------------------------*/
.persons_sec5 .desc span{
	color:#E55800;
	font-weight:bold;
}
/* persons_sec6
---------------------------------------*/
@media screen and (max-width: 960px) {
 .persons .all_main01 .all_main01_title::after {
  aspect-ratio: 20 / 11;
  background-image: url(/img/persons_img13.jpg);
 }
 /* persons_sec01
 ---------------------------------------*/
 .persons_sec01 {
  position: relative;
  background: none;
  padding: 0;
  aspect-ratio: auto;
 }
 .persons_sec01::after {
  width: 110px;
  height: 76px;
  left: -8px;
  top: 30px;
 }
 .persons_sec01 .sp_bg {
  position: relative;
  margin: -20px -16px -10%;
  aspect-ratio: 1000 / 600;
  padding-top: 20px;
 }
 .persons_sec01 .sp_bg::before {
  content: "";
  width: 100vw;
  height: 100%;
  background: url("/img/persons_img13.jpg") no-repeat center top / 100% auto;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -50vw;
  z-index: -1;
 }
 .persons_sec01 .persons_h1 {
  padding-left: 0;
  text-align: center;
 }
 .persons_sec01 .persons_sec01_title {
  padding: 0;
  font-size: 3.7vw;
  text-align: center;
  padding-left: 120px;
 }
 .persons_sec01 .persons_sec01_title span:first-child,
 .persons_sec01 .persons_sec01_title span:last-child { font-size: 6.2vw; }
 .persons_sec01 .text {
  position: relative;
  font-size: 1em;
  padding: 0;
  background: none;
 } 
 /* persons_sec02
 ---------------------------------------*/
 .persons_sec02 .bus_wrap { display: block; }
 .persons_sec02 .bus .pic { width: 150px; }
 .persons_sec02 .bus .info { padding-left: 110px; }
 /* persons_sec3
 ---------------------------------------*/
 .persons_sec3 .case_title { font-size: 20px; }
 .persons_sec3 .case_title .small { font-size: 16px; }
 /* persons_sec4
 ---------------------------------------*/
 /* persons_sec5
 ---------------------------------------*/
}


