@charset "UTF-8";
/* --------------------------------
  common
   -------------------------------- */

body {
  background: #ffffff;
  color: #333;
  font-family: メイリオ, Meiryo, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  line-height: 1.67;
}
/* header */
#header {
  margin-bottom: 0;
}
#headNavBox {
  background-color: #fff;
  border-bottom: 2px solid #D4D4D4;
}
#headNav {
  position: relative;
  width: 970px;
  height: 88px;
  margin: 0 auto;
}
#headNav h1 {
  float: left;
  width: 198px;
  padding-left: 2px;
  /*background-color: #FF0000;*/
  border-right: 1px solid #FFF;
}
#headNav .gNav {
  display: block;
  float: left;
}
#headNav .gNav li {
  display: table-cell;
  border-right: 1px solid #D4D4D4;
}
#headNav .gNav li a {
  display: block;
  width: 156px;
  height: 88px;
  text-indent: -9999px;
}
#headNav .gNav li:nth-child(1) a {
  background: white url(/dr/img/common/navi_01.png) center center no-repeat;
}
#headNav .gNav li:nth-child(1) a:hover {
  background: red url(/dr/img/common/navi_01_on.png) center center no-repeat;
}
#headNav .gNav li:nth-child(2) a {
  background: white url(/dr/img/common/navi_02.png) center center no-repeat;
}
#headNav .gNav li:nth-child(2) a:hover {
  background: red url(/dr/img/common/navi_02_on.png) center center no-repeat;
}
#headNav .gNav li:nth-child(3) a {
  cursor: pointer;
  background: white url(/dr/img/common/navi_04.png) center center no-repeat;
}
#headNav .gNav li:nth-child(3) a:hover {
  cursor: pointer;
  background: red url(/dr/img/common/navi_04_on.png) center center no-repeat;
}
#headNav .gNav li:nth-child(4) a {
  cursor: pointer;
  background: white url(/dr/img/common/navi_03.png) center center no-repeat;
  width: 110px;
}
#headNav .gNav li:nth-child(4) a:hover {
  cursor: pointer;
  background: red url(/dr/img/common/navi_03_on.png) center center no-repeat;
}
#headNav #hdrSrch a {
  width: 92px;
  background-position: 0 0;
  background: url(/dr/img/common/btn_search.png) 0 0 no-repeat;
}
#searchN {
  float: left;
}
#closeSearch, #closeMenu {
  width: 92px;
  background: url(/dr/img/common/btn_search.png) 0 -88px no-repeat;
  right: 93px;
}
#innerlayer {
  right: 0px;
}
#fontSizeChange {
  float: left;
  width: 92px;
  height: 88px;
}
#fontSizeChange dt {
  width: 92px;
  height: 43px;
  text-indent: -9999px;
  background: url(/dr/img/common/title_size.png) 0 0 no-repeat;
}
#fontSizeChange dd {
  display: table-cell;
}
#fontSizeChange dd span {
  display: block;
  width: 46px;
  height: 45px;
  text-indent: -9999px;
}
#fontSizeChange #sizeReset .hdrSprite {
  background: url(/dr/img/common/btn_size_nml.png) 0 0 no-repeat;
}
#fontSizeChange #sizeReset .hdrSprite.active {
  background: url(/dr/img/common/btn_size_nml.png) 0 -45px no-repeat;
}
#fontSizeChange #sizeBig .hdrSprite {
  background: url(/dr/img/common/btn_size_big.png) 0 0 no-repeat;
}
#fontSizeChange #sizeBig .hdrSprite.active {
  background: url(/dr/img/common/btn_size_big.png) 0 -45px no-repeat;
}
/* footer */
.ftrSitemap .subList {
  margin-bottom: 10px;
  padding-bottom: 3px;
  border-bottom: 1px solid #333;
}
.ftrSitemap .subList li {
  display: inline-block;
  padding-right: 30px;
}
.ftrSitemap .subListChild li {
  display: inline-block;
  padding-right: 30px;
  padding-left: 10px;
  margin-bottom: 8px;
  font-size: 92.3%;
  font-weight: normal;
  background: url(/dr/img/common/ico_footer.png) left center no-repeat;
}
#footer {
  margin-top: 0;
}
#footer .foot-bnr02 {
    padding: 22px 0 25px;
}
#footer .foot-bnr {
    background: #444;
    padding: 22px 0 25px;
}
#footer .foot-bnr .inr,
#footer .foot-bnr02 .inr {
  margin: 0 auto;
  display: table;
}

@media screen and (min-width: 768px) {
#footer .foot-bnr .inr,
#footer .foot-bnr02 .inr {
  width: 970px;
}
}

@media screen and (max-width: 767px) {
  
#footer .foot-bnr02 .inr {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
  
  #footer .foot-bnr02 .inr .txt {
    text-align: center;
    padding: 0 20px;
  }
}


#footer .foot-bnr p ,
#footer .foot-bnr02 p{
  display: table-cell;
  vertical-align: middle;
}
#footer .foot-bnr h2 {
  text-align: right;
  color: #FFF;
  font-size: 24px;
  font-size: 184.6%;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  
  #footer .foot-bnr h2 {
  text-align: center;
}
  
}

#footer .foot-bnr02 h2 {
  text-align: right;
  font-size: 24px;
  font-size: 184.6%;
  font-weight: bold;
}
#footer .foot-bnr .txt{
  text-align: right;
  color: #FFF;
  font-size: 120.6%;
}

#footer .foot-bnr02 .txt {
  text-align: right;
  font-size: 120.6%;
}
#footer .foot-bnr .bnr {
  padding: 0 0 0 30px;
}
#footer .foot-torqule h2 {
  font-size: 24px;
  font-size: 184.6%;
  font-weight: bold;
}
#footer .foot-torqule h2 a {
  color:#333;
}
#footer .foot-torqule {
  box-shadow: 4px 4px 4px #b3b3b3;
  margin: 20px auto;
  padding: 20px 10px 10px 20px;
  background: #fff;
}


@media screen and (min-width: 768px) {
#footer .foot-torqule {
  width: 969px;
}
}

#footer .foot-torqule .bnr img{
  width:49%;
  display:inline-block;
}
#footer .foot-torqule p.trasas_link {
background:#ff0000;
display: -webkit-flex;
display: flex;

}
#footer .foot-torqule p.trasas_link a{
  color:#ffffff;
  }
#footer .ftrSec01 .inWrap {
  padding-bottom: 0;
}
/* main */
#mainAreaCont {
  position: relative;
  height: 233px;
}
#mainAreaCont .mainIn {
  position: relative;
  width: 970px;
  margin: 0 auto;
  pointer-events: none;
}
#mainAreaCont .mainIn .logo {
  position: absolute;
  top: 0;
  left: 0;
}
#mainAreaCont .mainIn .ttl {
  padding: 75px 0 0 325px;
}
#mainAreaCont.blu {
  background: url(/dr/img/common/bg_main_bottom.png) center bottom repeat-x, url(/dr/img/common/bg_dot.jpg) left top repeat;
}
#mainAreaCont.pnk {
  background: url(/kiso/files/img/about/bg_main_bottomPk.png) center bottom repeat-x, url(/kiso/files/img/about/dot_pink.jpg) left top repeat;
}
#mainAreaCont .breadcrumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 30px;
  background-color: #0A6E5B;
}
#mainAreaCont .breadcrumb .breadcrumbIn {
  width: 970px;
  margin: 0 auto;
  text-align: right;
}
#mainAreaCont .breadcrumb .breadcrumbIn li {
  display: inline-block;
  padding: 7px 0 7px 25px;
  font-size: 100%;
  color: #A4E3D6;
  background: url(/dr/img/common/arrow_bc.png) 10px center no-repeat;
}
#mainAreaCont .breadcrumb .breadcrumbIn li a {
  color: #A4E3D6;
  text-decoration: none;
}
#mainAreaCont .breadcrumb .breadcrumbIn li a:hover {
  text-decoration: underline;
}
#mainAreaCont .breadcrumb .breadcrumbIn li:first-child {
  padding-left: 0;
  background: none;
}
/* content */
#contents .snsSet {
  padding-top: 25px;
  text-align: right;
}
#contents .snsSet .fb_iframe_widget {
  margin: 0 0 12px;
  vertical-align: top;
}
#contents .inner {
  width: 970px;
  margin: 0 auto;
}




@media screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
  .driver .twitterQuestion {
    margin-top: 10px;
  }
}



@media print {
  .sp {
    display: none !important;
  }
}



@media screen and (max-width: 767px) {
  /* --------------------------------
     common
   -------------------------------- */
  .pc {
    display: none !important;
  }
  img {
    height: auto;
  }
  /* header */
  #headNavBox {
    background-color: #FFF;
  }
  #headNav {
    width: 100%;
    height: 65px;
  }
  #headNav h1 {
    width: 146px;
    padding-left: 0;
    background-color: #FFF;
    border-right: none;
  }
  #headNav .gNav {
    display: none;
    position: absolute;
    top: 67px;
    right: 10px;
    float: none;
    width: 80%;
    z-index: 10000;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.4);
  }
  #headNav .gNav .arrow {
    position: absolute;
    top: -9px;
    right: 15px;
    height: 10px;
  }
  #headNav .gNav .arrow img {
    vertical-align: top;
  }
  #headNav .gNav li {
    display: block;
    border-right: none;
    border-bottom: 1px solid #D4D4D4;
  }
  #headNav .gNav li:last-child {
    border-bottom: none;
  }
  #headNavBox #headNav .gNav li a {
    display: block;
    width: 100%;
    height: auto;
    padding: 12px 10px 12px 30px;
    box-sizing: border-box;
    text-indent: 0;
    color: #333;
    background: url(/dr/img/common/icon_arrw_01.png) 15px center no-repeat;
  }
  #headNav #hdrSrch a {
    width: 46px;
    height: 46px;
    background-position: 0 0;
    background: url(/dr/img/common/btn_search_sp.png) 0 0 no-repeat;
    background-size: 46px auto;
  }
  #searchN {
    float: none;
  }
  #hdrSrch {
    top: 10px;
    right: 60px;
  }
  #layerSearch {
    left: inherit;
    right: 0;
    top: 0;
    margin-left: 0;
  }
  #layerSearch .layerSearchArrow {
    right: 65px;
    top: -10px;
  }
  #closeSearch,  #closeMenu {
    width: 46px;
    height: 46px;
    background: url(/dr/img/common/btn_search_sp.png) 0 -46px no-repeat;
    background-size: 46px auto;
    top: 10px;
    right: 60px;
    border: none;
  }
  #innerlayer {
    right: 10px;
    top: 67px;
  }
  #fontSizeChange {
    display: none;
  }
  #spNavBtn {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 46px;
    height: 46px;
  }
  #spNavBtn.open {
    background: url(/dr/img/common/btn_menu_sp.png) 0 0 no-repeat;
    background-size: 46px auto;
  }
  #spNavBtn.close {
    background: url(/dr/img/common/btn_menu_sp.png) 0 -46px no-repeat;
    background-size: 46px auto;
    z-index: 200;
  }
  #spNavBack {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.4;
    z-index: 199;
  }
  /* main */
  #mainAreaCont {
    height: 117px;
  }
  #mainAreaCont .mainIn {
    width: 100%;
    margin: 0 auto;
  }
  #mainAreaCont .mainIn .logo {
    position: absolute;
    top: 0;
    left: -18px;
    width: 150px;
  }
  #mainAreaCont .mainIn .ttl {
    padding: 40px 10px 0 140px;
  }
  #mainAreaCont .mainIn .ttl img {
    max-height: 40px;
    width: auto;
  }
  #mainAreaCont.blu {
    background: url(/dr/img/common/bg_main_bottom.png) center bottom repeat-x, url(/dr/img/common/bg_dot.jpg) left top repeat;
    background-size: 25px auto, 6px 6px;
  }
  #mainAreaCont.pnk {
    background: url(/kiso/files/img/about/bg_main_bottomPk.png) center bottom repeat-x, url(/kiso/files/img/about/dot_pink.jpg) left top repeat;
    background-size: 25px auto, 6px 6px;
  }
  #mainAreaCont .breadcrumb {
    min-height: 20px;
  }
  #mainAreaCont .breadcrumb .breadcrumbIn {
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
  }
  #mainAreaCont .breadcrumb .breadcrumbIn li {
    padding: 4px 0 4px 25px;
    font-size: 93%;
  }
  /* content */
  #contents {
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
  }
  #contents .snsSet {
    padding-top: 15px;
  }
  #contents .snsSet .fb_iframe_widget span {
    vertical-align: middle !important;
    margin: 0 0 12px;
  }
  #contents .inner {
    width: 100%;
  }

  #footer .foot-bnr .inr {
    width: 100%;
    display: block;
  }
  #footer .foot-bnr p {
    display: block;
  }
  #footer .foot-bnr .txt {
    text-align: center;
    color: #FFF;
    font-size: 18px;
    font-weight: bold;
  }
  #footer .foot-bnr .bnr {
    margin: 15px 0 0;
    padding: 0;
    text-align: center;
  }
}



@media screen and (max-width: 320px) {
  /* main */
  #mainAreaCont .breadcrumb {
    min-height: 10px;
  }
  #mainAreaCont .breadcrumb .breadcrumbIn li {
    font-size: 10px;
  }
}



/* 2024/02/01 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;500;700&display=swap");
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
html {
  font-size: 62.5%;
}
body {
  color: #111;
  font-size: 1.4rem;
  line-height: 2;
  font-family: "Noto Sans JP", sans-serif;
}
@media print, screen and (min-width: 768px) {
  body {
    min-width: 1200px;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 3.2vw;
  }
}
body.is-fixed {
  overflow: hidden;
  height: 100%;
}
.l-container {
  position: relative;
}
dl, ul, ol {
  margin: 0;
  padding: 0;
}
img {
  image-rendering: -webkit-optimize-contrast;
  vertical-align: middle;
}
.safari img {
  image-rendering: auto;
}
.c-inner {
  width: 110rem;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .c-inner {
    width: 100%;
    padding: 0 6%;
  }
}
@media print, screen and (min-width: 768px) {
  .c-over {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .c-over:hover {
    opacity: 0.7;
  }
}
