@charset "utf-8";
/* CSS Document */
:root{
  --green: #008944;
  --lgreen: #EFFFF7;
  --dgreen: #003D1E;
  --blue: #0057b8;
  --lblue: #EAF4FF;
  --red: #e90000;
  --yellow: #f9e231;
  --border_y: linear-gradient(transparent 70%, #ffff00 70%);
}
.nopc{
  display: none
}
main *{
  box-sizing: border-box
}
.title-wrapper{
  width: 100%;
  height: 380px;
  background: url(../images/bg.jpg) no-repeat center top;
  position: relative
}
.title-logo>img{
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto
}
.nav-wrapper{
  width: 100%;
  background: var(--dgreen);
}
.nav-item{
  width: 992px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  border-left: 1px solid #FFF;
}
.nav-item>li{
  width: calc(992px / 3);
  border-right: 1px solid #FFF;  
}
.nav-item>li>a{
  display: block;
  font-size: 15px;
  font-weight: bold;
  color: #FFF;
  text-align: center;
  padding: 20px 10px;
  transition: 0.3s;
  position: relative
}
.nav-item>li>a::after{
  content: "";
  background: url("/cmn/icon/icon_arrow_down_white.svg") no-repeat center center / contain;
  width: 24px;
  height: 24px;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.nav-item>li>a:hover{
  background: var(--green);
}
.main-content{
  padding-top: 80px;
}
.content-wrapper{
  width:100%;
  border-top: 3px solid var(--blue);
  padding-top: 80px;
  position: relative;
}
.content-wrapper+.content-wrapper{
  margin-top: 100px;
}
.inner{
  width: 992px;
  margin: auto;
  position: relative
}
.note-txt{
  font-size: 12px;
  position: relative;
  padding-left: 1.0em;
  display: block;
}
.note-txt::before{
  content: "※";
  position: absolute;
  top: 0;
  left: 0
}
sup{
  font-size: 11px;
  vertical-align: text-top
}
.head-title{
  width: 800px;
  background: var(--blue);
  text-align: center;
  padding: 16px;
  position: absolute;
  top: -30px;
  right: 0;
  left: 0;
  margin: auto;
  z-index: 10
}
.head-title>span{
  font-size: 20px;
  color: #FFF;
}
.sub-title{
  border-bottom: 2px dashed var(--blue);
  font-size: 18px;
  color: var(--blue);
  text-align: center;
  padding-bottom: 6px;
  margin-bottom: 10px;
}
.lead-copy{
  margin: 20px auto;
}
.tour-block .inner{
  margin: 30px auto;
}
.premuim-img{
  display: flex;
  justify-content: space-between;
  margin: 0 auto 40px;
  position: relative;
}
.premuim-img>li{
  width: calc(98% / 2);
  position: relative
}
.normal-img{
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 200px;
  box-shadow: 2px 2px 6px rgba(0 0 0 / 50%);
  transform: rotate(4deg);
}
.premium-icon{
  position: absolute;
  top: 0;
  left: 0;
  background: #C1AB05;
  padding: 6px;
  text-align: center;
  color: #FFF;
  font-size: 16px;
}
.premium-cap{
  display: inline-block;
  padding-top: 5px;
  font-size: 16px;
}
.normal-img .premium-cap{
  width: 100%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  font-size: 12px;
  color: #FFF;
  text-align: center;
  z-index: 30;
  padding: 3px;
  background: rgba(0 0 0 / 40%)
}
.g-zero-box{
  margin: 30px auto;
  background: var(--lblue);
  padding: 10px;
}
.g-zero-flexbox{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: relative;
  margin-top: 20px;
}
.g-zero-left{
  flex: 1;
  margin-right: 10px;
}
.review-midashi{
  font-size: 16px;
  font-weight: bold;
  color: var(--blue);
  width: 100%;
  margin-bottom: 10px;
}
.review-list>li{
  border-bottom: 1px dashed;
  padding-bottom: 6px;
  margin-bottom: 10px;
  font-size: 14px;
  padding-left: 24px;
  position: relative
}
.review-list>li::before{
  content: "";
  background: url("../images/ico_people.png") no-repeat center center / contain;
  width: 18px;
  height: 22px;
  position: absolute;
  top: 0;
  left: 0
}
.review-txt>small{
  font-size: 11px;
}
.g-zero-right{
  width: 400px;
}

.content-wrapper.safety-block{
  background: url("../images/safety_bg.png") repeat;
  border-color: var(--green);
  padding-bottom: 80px;
}
.content-wrapper.safety-block .inner{
  background: #FFF;
  padding: 20px;
}
.content-wrapper.safety-block .head-title{
  background: var(--green);
}
.content-wrapper.safety-block .sub-title{
  border-color: var(--green);
  font-weight: bold;
  color: var(--green);
  margin-bottom: 10px;
}
.safety-menu-midashi{
  position: relative
}
.safety-menu-midashi>span:not(.icon){
  font-size: 16px;
  font-weight: bold;
  color: var(--dgreen);
  display: inline-block;
  background: var(--border_y);
  margin-bottom: 10px;
}
.icon{
  background: var(--green);
  font-size: 12px;
  color: #FFF;
  text-align: center;
  padding: 3px;
  position: absolute;
  top: 0;
  right: 0;
}
.safety-menu-catch{
  color: var(--red);
}
.safety-flexbox{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.safety-box__in{
  width: calc(98% / 2);
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}
.safety-box__in .safety-txt{
  margin-bottom: auto;
}
.safety-img{
  text-align: center;
  margin: 10px auto 30px;
}
.safety-img-list{
  display: flex;
}
.safety-img-list>li{
  width: 50%;
  flex-shrink: 1
}
.img-caption{
  font-size: 12px;
}
.psc-inbox{
  background: var(--lgreen);
  padding: 16px;
  margin: 10px auto
}
.psc-midashi{
  font-weight: bold;
  color: var(--green)
}
.psc-list>li{
  position: relative;
  padding-left: 1.0em
}
.psc-list>li::before{
  content: "・";
  position: absolute;
  top: 0;
  left: 0
}
.safety-box__three{
  width: calc(98% / 3);
}

.star-badge{
  padding-left: 100px;
  margin-bottom: 20px;
  position: relative
}
.star-badge .star-badge--big{
  font-size: 22px;
  font-weight: bold;
  color: var(--red);
}
.star-badge::before{
  content: "";
  background: url("../images/safetybus_logo.png") no-repeat center center / contain;
  width: 90px;
  height: 74px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto
}
.star-badge-catch{
  font-size: 16px;
  font-weight: bold;
  color: var(--green);
}
.sub-title__company{
  margin: 20px auto 0;
  font-weight: bold;
  color: var(--dgreen)
}
.chuo-news>li{
  padding: 12px;
  border-bottom: dotted 1px;
  display: flex;
  justify-content: space-between
}
time{
  width: 8em;
  margin-right: 20px;
  font-weight: bold;
}
.news-content{
  width: calc(100% - 10em)
}
.news-content>a:hover{
  color: var(--blue)
}
.chuo-news-link{
  width: 800px;
  margin: 20px auto;
}
.chuo-news-link>a{
  display: block;
  padding: 16px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  background: var(--yellow);
  position: relative
}
.chuo-news-link>a::after{
  content: "";
  background: url("/cmn/icon/icon_arrow_right_black.svg") no-repeat center center / contain;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 3%;
  margin: auto;
}
.b-txt{
  font-weight: bold
}
.company-list{
  margin-top: 10px;
  background: var(--lgreen);
  padding: 10px;
  height: 160px;
  overflow: auto
}