@charset "UTF-8";
/*=====================================================
  share
=====================================================*/
html, body {
  height: 100%;
}

html {
  font-size: 16px;
}

body {
  padding-top: 66px;
  font-family: 'UD Shin Go Regular', 'A-OTF UD新ゴ Pro Regular' , meiryo , 'メイリオ' ,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
  font-size: 1rem;
  color: #333;
  text-align: left;
  background-color: #fff;
}

@media print, screen and (min-width: 1200px) {
  body {
    padding-top: 74px;
  }
}

a:link {
  color: #1a0dab;
  text-decoration: underline;
}

a:visited {
  color: #609;
}

a:hover,
a:active {
  color: #317dd2;
  text-decoration: none;
}

/*=====================================================
  pb
=====================================================*/
.pbPage {
  width: 100%;
}

.pbHeaderArea {
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 100;
  overflow: visible;
}

.pbHeaderArea .pbNestedWrapper {
  overflow: visible;
}

#area1 {
  position: relative;
}

.pbAreaWrapper1 {
  width: 100% !important;
  display: flex;
  flex-wrap: wrap;
}

.pbLeftArea {
  width: 100%;
  margin-bottom: 40px;
  padding: 0 15px;
  float: none;
  order: 2;
}

@media print, screen and (min-width: 1200px) {
  .pbLeftArea {
    width: 100%;
    max-width: 1040px;
    margin: 0 auto 60px auto;
    padding: 0 40px;
    position: relative;
    left: 90px;
    z-index: 1;
  }
}

@media print, screen and (min-width: 1400px) {
  .pbLeftArea {
    padding: 0;
  }
}

:root .pbAreaWrapper2 {
  width: 100%;
  margin: 0;
  float: none;
  order: 1;
}

.pbMainArea {
  width: 100%;
  margin-bottom: 40px;
  padding: 0 15px;
}

@media print, screen and (min-width: 1200px) {
  .pbMainArea {
    width: 100%;
    max-width: 1040px;
    margin: 0 auto 60px auto;
    padding: 0 40px;
    position: relative;
    left: 90px;
    z-index: 1;
  }
}

@media print, screen and (min-width: 1400px) {
  .pbMainArea {
    padding: 0;
  }
}

.pbFooterArea {
  width: 100%;
}

@media print, screen and (min-width: 1200px) {
  .pbFooterArea {
    width: calc(100% - 180px);
    position: relative;
    left: 180px;
  }
}

/*==================================================
  header
==================================================*/
.header {
  width: 100%;
  height: 66px;
  margin: 0;
  padding: 10px 15px;
  display: flex;
  flex-wrap: wrap;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background-color: #fff;
  z-index: 10000;
}

@media print, screen and (min-width: 1200px) {
  .header {
    height: 74px;
    padding: 10px 20px;
    align-items: center;
    transition: all .4s;
  }
}

.header .logo {
  width: 260px;
  margin: 2px auto 0 0;
}

@media print, screen and (min-width: 1200px) {
  .header .logo {
    width: 346px;
    margin: 0 auto 0 0;
    transition: all .2s;
  }
}

@media print, screen and (min-width: 1200px) {
  .header.header--fixed {
    height: 56px;
    padding: 7px 20px;
  }
  .header.header--fixed .logo {
    width: 260px;
  }
}

@media print, screen and (min-width: 1200px) and (min-width: 1200px) {
  .header.header--fixed .header__utilNav ul li a {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

@media print, screen and (min-width: 1200px) {
  .header.header--fixed .header__search input.pbInputForm {
    height: 36px;
  }
  .header.header--fixed .header__search input[type=button] {
    height: 36px;
  }
}

/*==================================================
  header__utilNav
==================================================*/
.header__utilNav {
  display: none;
}

@media print, screen and (min-width: 1200px) {
  .header__utilNav {
    margin-right: 15px;
    display: block;
  }
  .header__utilNav ul {
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-wrap: wrap;
  }
  .header__utilNav ul li {
    margin: 0 5px 0 0 !important;
    padding: 0 !important;
    list-style: none;
  }
  .header__utilNav ul li a {
    padding: 8px 15px 8px 31px;
    text-decoration: none;
    color: #333;
    display: inline-block;
    font-size: 15px;
    font-size: 0.9375rem;
    border: 1px solid #DADDDF;
    border-radius: 20px;
    background-repeat: no-repeat;
    background-size: 16px 16px;
    transition: all .2s;
  }
  .header__utilNav ul li a:hover {
    background-color: #eeeffb;
  }
  .header__utilNav ul li a.header__utilNavHome {
    background-image: url(/library/common2020/images/icon_home.png);
    background-position: 12px 7px;
  }
  .header__utilNav ul li a.header__utilNavHome:hover {
    background-position: 12px 5px;
  }
  .header__utilNav ul li a.header__utilNavAccess {
    background-image: url(/library/common2020/images/icon_access.png);
    background-position: 12px 7px;
  }
  .header__utilNav ul li a.header__utilNavAccess:hover {
    background-position: 12px 5px;
  }
  .header__utilNav ul li a.header__utilNavApp {
    background-image: url(/library/common2020/images/icon_app.png);
    background-position: 12px 7px;
  }
  .header__utilNav ul li a.header__utilNavApp:hover {
    background-position: 12px 5px;
  }
  .header__utilNav ul li a.header__utilNavEn {
    background-image: url(/library/common2020/images/icon_arrow_s_red_right.png);
    background-size: 5px 7px;
    background-position: 18px 11px;
  }
  .header__utilNav ul li a.header__utilNavEn:hover {
    background-position: 22px 11px;
  }
}

/*==================================================
  header__search
==================================================*/
.header__search {
  display: none;
}

@media print, screen and (min-width: 1200px) {
  .header__search {
    display: block;
  }
  .header__search form {
    display: flex;
    flex-wrap: wrap;
  }
  .header__search label {
    margin: 0;
  }
  .header__search input.pbInputForm {
    width: 280px;
    height: 50px;
    padding-left: 15px;
    padding-right: 15px;
    background-color: #ebecec;
    border: none;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media print, screen and (min-width: 1200px) and (min-width: 1400px) {
  .header__search input.pbInputForm {
    width: 340px;
    transition: all .2s;
  }
  .header__search input.pbInputForm:focus {
    background-color: #faf4dc;
  }
}

@media print, screen and (min-width: 1200px) {
  .header__search input[type=button] {
    width: 65px;
    height: 50px;
    margin: 0;
    overflow: hidden;
    text-indent: -9999px;
    color: #fff;
    border: none;
    cursor: pointer;
    background-color: #8e1027;
    background-image: url("/library/common2020/images/icon_search.png");
    background-repeat: no-repeat;
    background-size: 18px 18px;
    background-position: center center;
  }
}

@media print, screen and (min-width: 1200px) and (min-width: 1200px) {
  .header__search input[type=button] {
    transition: all .2s;
  }
}

/*==================================================
  header__spMenu
==================================================*/
.header__spMenu {
  width: 46px;
  height: 51px;
  margin-left: auto;
  display: block;
  position: relative;
  cursor: pointer;
  background-color: #17194C;
  z-index: 20000;
}

.header__spMenu.active {
  width: 46px;
  height: 46px;
  margin-left: auto;
  display: block;
  position: relative;
  cursor: pointer;
  background-color: #17194C;
  z-index: 20000;
}

@media print, screen and (min-width: 1200px) {
  .header__spMenu {
    display: none;
  }
}

.header__spMenu span {
  position: absolute;
  left: 0;
  width: 22px;
  height: 2px;
  background-color: #fff;
  transition: all .2s;
}

.header__spMenu span:nth-of-type(1) {
    top: 12px;
    left: 12px;
}
.header__spMenu span:nth-of-type(2) {
    top: 20px;
    left: 12px;
}
.header__spMenu span:nth-of-type(3) {
    bottom: 21px;
    left: 12px;
}
.header__spMenu span:nth-of-type(4) {
  bottom: 15px;
    left: 8.5px;
    font-size: 11px;
    color: white;
    background-color: #17194C;
}

.header__spMenu.active span:nth-of-type(1) {
  transform: rotate(-45deg);
  top: 22px;
}

.header__spMenu.active span:nth-of-type(2) {
  transform: rotate(-180deg);
  opacity: 0;
}

.header__spMenu.active span:nth-of-type(3) {
  transform: rotate(45deg);
  bottom: 22px;
}

.header__spMenu.active span:nth-of-type(4) {
      display: none;
}

.alertArea {
  width: 100%;
  padding: 20px 20px 5px 20px;
  background-color: #FFD200;
}

@media print, screen and (min-width: 1200px) {
  .alertArea {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }
}

.alertArea .alertArea__mt {
  margin-bottom: 15px;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
}

@media print, screen and (min-width: 1200px) {
  .alertArea .alertArea__mt {
    width: 200px;
    text-align: left;
  }
}

.alertArea .alertArea__list {
  width: 100%;
}

@media print, screen and (min-width: 1200px) {
  .alertArea .alertArea__list {
    width: calc(100% - 200px);
  }
}

.alertArea .alertArea__list ul {
  margin: 0;
  padding: 0;
}

.alertArea .alertArea__list ul li {
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: 1.4;
  font-size: 14px;
  font-size: 0.875rem;
}

@media print, screen and (min-width: 1200px) {
  .alertArea .alertArea__list ul li {
    display: flex;
    flex-wrap: wrap;
    align-items: start;
  }
}

.alertArea .alertArea__list ul li a {
  color: #333;
  text-decoration: none;
}

@media print, screen and (min-width: 1200px) {
  .alertArea .alertArea__list ul li a:hover {
    text-decoration: underline;
  }
}

.alertArea .alertArea__list ul li .alertArea__date {
  margin-bottom: 5px;
  display: block;
}

@media print, screen and (min-width: 1200px) {
  .alertArea .alertArea__list ul li .alertArea__date {
    width: 150px;
  }
}

.alertArea .alertArea__list ul li .alertArea__title {
  width: 100%;
  margin-bottom: 15px;
  display: block;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
}

@media print, screen and (min-width: 1200px) {
  .alertArea .alertArea__list ul li .alertArea__title {
    width: calc(100% - 150px);
    font-weight: normal;
  }
}

/*==================================================
  gNavArea
==================================================*/
.gNavArea {
  width: 100%;
  display: none;
  position: fixed;
  top: 64px;
  height: 100%;
  transform: translate3d(0, 0, 0);
  z-index: 600;
}

@media print, screen and (min-width: 1200px) {
  .gNavArea {
    height: auto;
    display: block;
    position: relative;
    top: 0;
    left: 0;
    overflow: visible;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNavArea.gNav--fixed {
    position: fixed;
    top: 54px;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNavArea.gNav--fixed .gNav__list .gNav__primaryNav:before {
    height: 30px;
    top: 10px;
  }
  .gNavArea.gNav--fixed .gNav__list .gNav__primaryNav:after {
    height: 30px;
    top: 10px;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNavArea.gNav--fixed .gNav__list .gNav__primaryNav .gNav__primaryLink {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.gNavArea.gNav--fixed .gNav__list .gNav__primaryLink {
  height: 50px;
  align-items: center;
  background-image: none !important;
}

.gNavArea.gNav--fixed .gNav__scondaryNav {
  top: 50px;
}

@media print, screen and (min-width: 1200px) {
  .gNavArea.gNav--fixed .gNav__scondaryNav {
    max-height: 80vh;
    overflow-y: scroll;
  }
}

/*=====================================================
  gNav
=====================================================*/
.gNav {
  width: 100%;
  height: 80vh;
  background-color: #17194C;
  overflow: auto;
}

@media print, screen and (min-width: 1200px) {
  .gNav {
    height: auto;
    position: relative;
    top: 0;
    left: 0;
    overflow: visible;
  }
  .gNav:after {
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    background-color: #6B6B8B;
  }
}

.gNav .gNav__wrap {
  width: 100%;
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__wrap {
    height: auto;
    overflow: visible;
    position: relative;
    z-index: 110;
  }
}

.gNav .gNav__list {
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list {
    display: flex;
    flex-wrap: wrap;
  }
}

.gNav .gNav__list .gNav__box {
  margin: 0;
  padding: 0;
  list-style: none;
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box {
    width: auto;
    height: auto;
    background: #232678;
    background: linear-gradient(to bottom, #232678 0%, #10102D 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=0 );
    transition: all .2s;
  }
  .gNav .gNav__list .gNav__box:hover {
    background: #30339E;
    background: linear-gradient(to bottom, #30339E 0%, #24246D 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=0 );
  }
  .gNav .gNav__list .gNav__box:hover .gNav__primaryLink {
    background-position: center 10px;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box.gNav__about {
    width: 12%;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box.gNav__about .gNav__primaryNav:before, .gNav .gNav__list .gNav__box.gNav__about .gNav__primaryNav:after {
    display: none;
  }
}

.gNav .gNav__list .gNav__box.gNav__about .gNav__primaryLink {
  background-image: url("/library/common2020/images/icon_about.png");
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box.gNav__gakubu {
    width: 11%;
  }
}

.gNav .gNav__list .gNav__box.gNav__gakubu .gNav__primaryLink {
  background-image: url("/library/common2020/images/icon_gakubu.png");
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box.gNav__nyushi {
    width: 11%;
  }
}

.gNav .gNav__list .gNav__box.gNav__nyushi .gNav__primaryLink {
  background-image: url("/library/common2020/images/icon_nyushi.png");
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box.gNav__kenkyu {
    width: 11%;
  }
}

.gNav .gNav__list .gNav__box.gNav__kenkyu .gNav__primaryLink {
  background-image: url("/library/common2020/images/icon_kenkyu.png");
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box.gNav__seikatsu {
    width: 11%;
  }
}

.gNav .gNav__list .gNav__box.gNav__seikatsu .gNav__primaryLink {
  background-image: url("/library/common2020/images/icon_seikatsu.png");
}

@media print, screen and (min-width: 768px) {
  .gNav .gNav__list .gNav__box.gNav__seikatsu .gNav__scondaryNav .gNav__scondaryNavInner {
    justify-content: space-between;
  }
}

@media print, screen and (min-width: 768px) {
  .gNav .gNav__list .gNav__box.gNav__sangyoIgaku .gNav__scondaryNav .gNav__scondaryNavInner {
    justify-content: space-between;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box.gNav__sangyoIgaku {
    width: 11%;
  }
}

.gNav .gNav__list .gNav__box.gNav__sangyoIgaku .gNav__primaryLink {
  background-image: url("/library/common2020/images/icon_sangyo-igaku.png");
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box.gNav__hospital {
    width: 11%;
  }
}

.gNav .gNav__list .gNav__box.gNav__hospital .gNav__primaryLink {
  background-image: url("/library/common2020/images/icon_hospital.png");
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box.gNav__wakamatsu {
    width: 11%;
  }
}

.gNav .gNav__list .gNav__box.gNav__wakamatsu .gNav__primaryLink {
  background-image: url("/library/common2020/images/icon_wakamatsu.png");
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__list .gNav__box.gNav__kanren {
    width: 11%;
  }
}

.gNav .gNav__list .gNav__box.gNav__kanren .gNav__primaryLink {
  background-image: url("/library/common2020/images/icon_kanren.png");
}

.gNav .gNav__primaryNav {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  border-bottom: 1px solid #68698B;
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__primaryNav {
    border-bottom-width: 0;
    position: relative;
  }
  .gNav .gNav__primaryNav:before {
    content: "";
    display: block;
    width: 1px;
    height: 46px;
    background-color: #6B6B8B;
    position: absolute;
    left: 0;
    top: 23px;
  }
  .gNav .gNav__primaryNav:after {
    content: "";
    display: block;
    width: 1px;
    height: 46px;
    background-color: #111131;
    position: absolute;
    left: 1px;
    top: 23px;
  }
}

.gNav .gNav__primaryNav .gNav__primaryLink {
  width: calc(100% - 54px);
  display: block;
  padding: 14px 10px 14px 50px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.4;
  color: #fff;
  text-decoration: none;
  background-repeat: no-repeat;
  background-position: 15px 11px;
  background-size: 24px 24px;
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__primaryNav .gNav__primaryLink {
    width: 100%;
    height: 92px;
    padding: 10px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    position: relative;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    font-family: "UD Shin Go DemiBold";
    letter-spacing: 1.5px;
    text-align: center;
    background-position: center 14px;
    background-size: 40px 40px;
    transition: all .2s;
  }
}

.gNav .gNav__primaryNav .gNav__spBtnPrimary {
  width: 54px;
  min-height: 54px;
  margin: 0 0 0 auto;
  display: block;
  background-color: #020323;
  position: relative;
}

@media print, screen and (min-width: 1200px) {
  .gNav .gNav__primaryNav .gNav__spBtnPrimary {
    display: none;
  }
}

.gNav .gNav__primaryNav .gNav__spBtnPrimary span {
  position: absolute;
  left: 0;
  display: block;
  background-color: #fff;
  transition: all .2s;
}

.gNav .gNav__primaryNav .gNav__spBtnPrimary span:nth-of-type(1) {
  width: 18px;
  height: 2px;
  top: 26px;
  left: 18px;
}

.gNav .gNav__primaryNav .gNav__spBtnPrimary span:nth-of-type(2) {
  width: 2px;
  height: 18px;
  top: 18px;
  left: 26px;
}

.gNav .gNav__primaryNav .gNav__spBtnPrimary.active span:nth-of-type(2) {
  transform: rotate(90deg);
  top: 18px;
  left: 26px;
}

/*=====================================================
  gNav__scondaryNav
=====================================================*/
.gNav__scondaryNav {
  display: none;
  background-color: #fff;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav {
    width: 100%;
    position: absolute;
    left: 0;
    top: 92px;
    box-shadow: 0px 4px 9px 3px rgba(0, 0, 0, 0.2);
    z-index: 100;
  }
}

.gNav__scondaryNav .gNav__scondaryNavInner {
  padding: 15px;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavInner {
    width: 100%;
    padding: 30px;
    justify-content: start;
  }
}

.gNav__scondaryNav .gNav__scondaryNavInner .gNav__scondaryNavPht {
  overflow: hidden;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavInner .gNav__scondaryNavPht img {
    transition: all .2s;
  }
  .gNav__scondaryNav .gNav__scondaryNavInner .gNav__scondaryNavPht:hover img {
    transform: scale(1.05);
  }
}

.gNav__scondaryNav .gNav__scondaryNavInner .gNav__scondaryNavMt {
  margin: 0 0 20px 0;
  padding: 12px 0;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.4;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  position: relative;
}

.gNav__scondaryNav .gNav__scondaryNavInner .gNav__scondaryNavMt:before {
  width: 100%;
  height: 1px;
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #DADDDF;
}

.gNav__scondaryNav .gNav__scondaryNavInner .gNav__scondaryNavMt:after {
  width: 80px;
  height: 1px;
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #17194C;
}

.gNav__scondaryNav .gNav__scondaryNavInner .gNav__scondaryNavMt a {
  text-decoration: none;
  color: #333;
  overflow: hidden;
}

.gNav__scondaryNav .gNav__scondaryNavInner .gNav__st {
  margin: 0 0 10px 0;
  padding: 0 0 0 20px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.4;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  position: relative;
}

.gNav__scondaryNav .gNav__scondaryNavInner .gNav__st:before {
  width: 13px;
  height: 13px;
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 3px;
  background-color: #17194C;
}

.gNav__scondaryNav .gNav__scondaryNavInner .gNav__st a {
  color: #333;
  text-decoration: none;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavInner .gNav__st a:hover {
    text-decoration: underline;
  }
}

.gNav__scondaryNav .gNav__scondaryNavList {
  width: 100%;
}

.gNav__scondaryNav .gNav__scondaryNavList ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList ul {
    align-items: normal;
  }
}

.gNav__scondaryNav .gNav__scondaryNavList ul li {
  width: 100%;
  list-style: none;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.4;
  border-top: 1px solid #DADDDF;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList ul li {
    width: 100%;
    margin-right: 0;
    border: 1px solid #DADDDF;
  }
}

.gNav__scondaryNav .gNav__scondaryNavList ul li a {
  width: 100%;
  padding: 15px 15px 15px 15px;
  display: inline-block;
  text-decoration: none;
  color: #333;
  background-image: url(/library/common2020/images/icon_arrow_s_primary_right.png);
  background-size: 5px 7px;
  background-repeat: no-repeat;
  background-position: 0 20px;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList ul li a {
    padding: 15px 15px 15px 30px;
    background-position: 15px 20px;
    transition: all .2s;
  }
  .gNav__scondaryNav .gNav__scondaryNavList ul li a:hover {
    background-position: 19px 20px;
  }
}

.gNav__scondaryNav .gNav__scondaryNavLinkList ul {
  margin: 0 0 20px 0;
  padding: 0;
}

.gNav__scondaryNav .gNav__scondaryNavLinkList ul li {
  margin: 0 0 10px 0;
  padding: 0;
  list-style: none;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.4;
}

.gNav__scondaryNav .gNav__scondaryNavLinkList ul li a {
  width: 100%;
  padding: 0 0 0 15px;
  display: inline-block;
  text-decoration: none;
  color: #333;
  background-image: url(/library/common2020/images/icon_arrow_s_primary_right.png);
  background-size: 5px 7px;
  background-repeat: no-repeat;
  background-position: 0 7px;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavLinkList ul li a {
    transition: all .2s;
  }
  .gNav__scondaryNav .gNav__scondaryNavLinkList ul li a:hover {
    background-position: 4px 7px;
    text-decoration: underline;
  }
}

.gNav__scondaryNav .gNav__scondaryNavAbout {
  width: 49%;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavAbout {
    width: 31%;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavAbout {
    width: 15%;
    margin-right: 2%;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--about {
    width: calc(100% - 17%);
  }
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavList--about ul {
    justify-content: space-between;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--about ul {
    justify-content: start;
  }
}

.gNav__scondaryNav .gNav__scondaryNavList--about ul li {
  width: 100%;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavList--about ul li {
    width: 48%;
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--about ul li:nth-child(2n) {
    margin-right: 0;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--about ul li {
    width: 24%;
    margin-right: 1%;
    margin-bottom: 1%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--about ul li:nth-child(2n) {
    margin-right: 1%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--about ul li:nth-child(4n) {
    margin-right: 0;
  }
}

.gNav__scondaryNav .gNav__scondaryNavUniv {
  width: 48%;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavUniv {
    width: 23.5%;
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavUniv:nth-child(4n) {
    margin-right: 0;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavUniv {
    width: 15%;
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavUniv:nth-child(4n) {
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavUniv:nth-child(6n) {
    margin-right: 0;
  }
}

.gNav__scondaryNav .gNav__scondaryNavUniv.gNav__scondaryNavUniv--other {
  width: 100%;
  padding-top: 20px;
  border-top: 1px solid #DADDDF;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavUniv.gNav__scondaryNavUniv--other {
    width: 15%;
    padding-top: 0;
    border-top-width: 0;
  }
}

.gNav__scondaryNav .gNav__scondaryNavUnivList ul {
  margin: 0 0 20px 0;
  padding: 0;
}

.gNav__scondaryNav .gNav__scondaryNavUnivList ul li {
  margin: 0 0 15px 0;
  padding: 0;
  list-style: none;
}

.gNav__scondaryNav .gNav__scondaryNavUnivList ul li a {
  width: 100%;
  padding: 0 0 0 15px;
  display: inline-block;
  text-decoration: none;
  color: #333;
  background-image: url(/library/common2020/images/icon_arrow_s_primary_right.png);
  background-size: 5px 7px;
  background-repeat: no-repeat;
  background-position: 0 5px;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavUnivList ul li a {
    transition: all .2s;
  }
  .gNav__scondaryNav .gNav__scondaryNavUnivList ul li a:hover {
    background-position: 4px 5px;
  }
}

.gNav__scondaryNav .gNav__scondaryNavNyushi {
  width: 49%;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavNyushi {
    width: 31%;
    margin-right: 2%;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavNyushi {
    width: 15%;
    margin-right: 2%;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--nyushi {
    width: calc(100% - 17%);
  }
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavList--nyushi ul {
    justify-content: space-between;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--nyushi ul {
    justify-content: start;
  }
}

.gNav__scondaryNav .gNav__scondaryNavList--nyushi ul li {
  width: 100%;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavList--nyushi ul li {
    width: 48%;
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--nyushi ul li:nth-child(2n) {
    margin-right: 0;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--nyushi ul li {
    width: 24%;
    margin-right: 1%;
    margin-bottom: 1%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--nyushi ul li:nth-child(2n) {
    margin-right: 1%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--nyushi ul li:nth-child(4n) {
    margin-right: 0;
  }
}

.gNav__scondaryNav .gNav__scondaryNavKenkyu {
  width: 48%;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavKenkyu {
    width: 31.8%;
    margin-right: 2.3%;
  }
  .gNav__scondaryNav .gNav__scondaryNavKenkyu:nth-child(3n) {
    margin-right: 0;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavKenkyu {
    width: 15%;
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavKenkyu:nth-child(3n) {
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavKenkyu:nth-child(6n) {
    margin-right: 0;
  }
}

.gNav__scondaryNav .gNav__scondaryNavList--kenkyu {
  width: 100%;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--kenkyu {
    margin-top: 20px;
    padding-top: 40px;
    border-top: 1px dotted #DADDDF;
  }
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavList--kenkyu ul {
    justify-content: space-between;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--kenkyu ul {
    justify-content: start;
  }
}

.gNav__scondaryNav .gNav__scondaryNavList--kenkyu ul li {
  width: 100%;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavList--kenkyu ul li {
    width: 48%;
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--kenkyu ul li:nth-child(2n) {
    margin-right: 0;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--kenkyu ul li {
    width: 19%;
    margin-right: 1%;
    margin-bottom: 1%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--kenkyu ul li:nth-child(2n) {
    margin-right: 1%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--kenkyu ul li:nth-child(5n) {
    margin-right: 0;
  }
}

.gNav__scondaryNav .gNav__scondaryNavSeikatsu {
  width: 48%;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavSeikatsu {
    width: 31.8%;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavSeikatsu {
    width: 15%;
    margin-right: 2%;
  }
}

.gNav__scondaryNav .gNav__scondaryNavSeikatsuBlock {
  width: 100%;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavSeikatsuBlock {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavSeikatsuBlock {
    width: calc(100% - 17%);
    justify-content: start;
  }
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavSeikatsuBox {
    width: 48%;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavSeikatsuBox {
    width: 23.5%;
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavSeikatsuBox:nth-child(4n) {
    margin-right: 0;
  }
}

.gNav__scondaryNav .gNav__scondaryNavSeikatsuList ul {
  margin: 0 0 20px 0;
  padding: 0;
}

.gNav__scondaryNav .gNav__scondaryNavSeikatsuList ul li {
  margin: 0 0 15px 0;
  padding: 0;
  list-style: none;
  line-height: 1.4;
}

.gNav__scondaryNav .gNav__scondaryNavSeikatsuList ul li a {
  width: 100%;
  padding: 0 0 0 15px;
  display: inline-block;
  text-decoration: none;
  color: #333;
  background-image: url(/library/common2020/images/icon_arrow_s_primary_right.png);
  background-size: 5px 7px;
  background-repeat: no-repeat;
  background-position: 0 5px;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavSeikatsuList ul li a {
    transition: all .2s;
  }
  .gNav__scondaryNav .gNav__scondaryNavSeikatsuList ul li a:hover {
    background-position: 4px 5px;
  }
}

.gNav__scondaryNav .gNav__scondaryNavSangyoIgaku {
  width: 48%;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavSangyoIgaku {
    width: 15%;
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavSangyoIgaku:nth-child(6n) {
    margin-right: 0;
  }
}

.gNav__scondaryNav .gNav__scondaryNavSangyoIgakuBlock {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavSangyoIgakuBlock {
    width: 66%;
    justify-content: normal;
  }
}

.gNav__scondaryNav .gNav__scondaryNavSangyoIgakuBlock .gNav__scondaryNavSangyoIgakuBox {
  width: 48%;
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavSangyoIgakuBlock .gNav__scondaryNavSangyoIgakuBox {
    width: 23%;
    margin-right: 2%;
  }
}

.gNav__scondaryNav .gNav__scondaryNavList--kanren ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavList--kanren ul {
    justify-content: space-between;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--kanren ul {
    justify-content: start;
  }
}

@media print, screen and (min-width: 768px) {
  .gNav__scondaryNav .gNav__scondaryNavList--kanren ul li {
    width: 48%;
    margin-right: 2%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--kanren ul li:nth-child(2n) {
    margin-right: 0;
  }
}

@media print, screen and (min-width: 1200px) {
  .gNav__scondaryNav .gNav__scondaryNavList--kanren ul li {
    width: 19%;
    margin-right: 1%;
    margin-bottom: 1%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--kanren ul li:nth-child(2n) {
    margin-right: 1%;
  }
  .gNav__scondaryNav .gNav__scondaryNavList--kanren ul li:nth-child(5n) {
    margin-right: 0;
  }
}

.shNav {
  background-color: #373636;
}

@media print, screen and (min-width: 1200px) {
  .shNav {
    width: 180px;
    height: 100vh;
    position: absolute;
    left: 0;
    background: #212020;
    background: linear-gradient(to bottom, #212020 0%, #4E4949 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=0 );
    transition: all .2s;
    z-index: 10;
  }
  .shNav.shNav--fixed {
    left: 0;
    top: 50px;
    transform: translate3d(0, 0, 0);
  }
  .shNav .shNav__scondaryNavInner {
    margin: 0;
    padding: 0;
  }
  .shNav .shNav__list a {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.4;
    color: #fff;
    text-decoration: none;
  }
}

.shNav .shNav__list {
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

@media print, screen and (min-width: 1200px) {
  .shNav .shNav__list {
    display: flex;
    flex-wrap: wrap;
  }
}

.shNav .shNav__list .shNav__box {
  margin: 0;
  padding: 0;
  list-style: none;
}

@media print, screen and (min-width: 1200px) {
  .shNav .shNav__list .shNav__box {
    width: 100%;
    height: auto;
    transition: all .2s;
  }
  .shNav .shNav__list .shNav__box:hover {
    background-color: #5E5D5D;
  }
}

.shNav .shNav__primaryNav {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  border-bottom: 1px solid #595A5D;
}

@media print, screen and (min-width: 1200px) {
  .shNav .shNav__primaryNav {
    width: 100%;
    border-bottom-color: #5D5B5B;
  }
}

.shNav .shNav__primaryNav .shNav__primaryLink {
  width: 100%;
  display: block;
  padding: 10px 10px 10px 50px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.4;
  color: #fff;
  text-align: left;
  text-decoration: none;
  background-image: url(/library/common2020/images/icon_arrow_s_white_right.png);
  background-repeat: no-repeat;
  background-position: 25px 16px;
  background-size: 5px 7px;
}

@media print, screen and (min-width: 1200px) {
  .shNav .shNav__primaryNav .shNav__primaryLink {
    width: 100%;
    padding: 16px 10px 16px 22px;
    display: flex;
    align-items: flex-end;
    justify-content: left;
    position: relative;
    font-size: 17px;
    font-size: 1.0625rem;
    font-weight: bold;
    font-family: "UD Shin Go DemiBold";
    background-position: 10px 24px;
    transition: all .2s;
  }
  .shNav .shNav__primaryNav .shNav__primaryLink:hover {
    background-position: 12px 24px;
  }
}

.shNav .shNav__primaryNav .shNav__spBtnPrimary {
  width: 54px;
  min-height: 54px;
  margin: 0 0 0 auto;
  display: block;
  background-color: #212020;
  position: relative;
}

@media print, screen and (min-width: 1200px) {
  .shNav .shNav__primaryNav .shNav__spBtnPrimary {
    display: none;
  }
}

.shNav .shNav__primaryNav .shNav__spBtnPrimary span {
  position: absolute;
  left: 0;
  display: block;
  background-color: #fff;
  transition: all .2s;
}

.shNav .shNav__primaryNav .shNav__spBtnPrimary span:nth-of-type(1) {
  width: 18px;
  height: 2px;
  top: 26px;
  left: 18px;
}

.shNav .shNav__primaryNav .shNav__spBtnPrimary span:nth-of-type(2) {
  width: 2px;
  height: 18px;
  top: 18px;
  left: 26px;
}

.shNav .shNav__primaryNav .shNav__spBtnPrimary.active span:nth-of-type(2) {
  transform: rotate(90deg);
  top: 18px;
  left: 26px;
}

.shNav .shNav__scondaryNav {
  display: none;
  background-color: #f4f8fd;
}

@media print, screen and (min-width: 1200px) {
  .shNav .shNav__scondaryNav {
    width: 220px;
    height: 100vh;
    position: absolute;
    left: 180px;
    top: 0;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 90;
  }
}

@media print, screen and (min-width: 768px) {
  .shNav .shNav__scondaryNav .shNav__scondaryNavInner {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }
}

.shNav .shNav__scondaryNav .shNav__scondaryNavList {
  width: 100%;
  margin: 0;
  padding: 0;
}

@media print, screen and (min-width: 768px) {
  .shNav .shNav__scondaryNav .shNav__scondaryNavList {
    width: 100%;
    margin: 0 0 0 auto;
    display: flex;
    flex-wrap: wrap;
  }
}

.shNav .shNav__scondaryNav .shNav__scondaryNavList li {
  width: 100%;
  margin: 0;
  padding: 0 15px;
  list-style: none;
  border-top: 1px solid #D4DDE1;
}

.shNav .shNav__scondaryNav .shNav__scondaryNavList li:first-child {
  border-top-width: 0;
}

@media print, screen and (min-width: 1200px) {
  .shNav .shNav__scondaryNav .shNav__scondaryNavList li {
    width: 100%;
    padding: 0;
    border-top-width: 0;
    border-bottom: 1px solid #53554E;
  }
}

.shNav .shNav__scondaryNav .shNav__scondaryNavList li a {
  width: 100%;
  display: inline-block;
  padding: 10px 15px 10px 14px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.4;
  color: #333;
  text-decoration: none;
  background-image: url(/library/common2020/images/icon_arrow_s_primary_right.png);
  background-repeat: no-repeat;
  background-position: 0 16px;
  background-size: 5px 7px;
}

@media print, screen and (min-width: 1200px) {
  .shNav .shNav__scondaryNav .shNav__scondaryNavList li a {
    color: #FFF;
    font-size: 14px;
    font-size: 0.875rem;
    padding: 12px 15px 12px 28px;
    background-image: url(/library/common2020/images/icon_arrow_s_white_right.png);
    background-position: 14px 16px;
    transition: all .2s;
  }
  .shNav .shNav__scondaryNav .shNav__scondaryNavList li a:hover {
    background-color: #717171;
    background-position: 18px 16px;
    text-decoration: underline;
  }
}

.gNavSpUtil {
  padding: 20px 15px 60px 15px;
}

@media print, screen and (min-width: 1200px) {
  .gNavSpUtil {
    display: none;
  }
}

.gNavSpUtil .gNavSpUtil__nav {
  margin: 0 0 20px 0;
}

.gNavSpUtil .gNavSpUtil__nav ul {
  margin: 0;
  padding: 0;
  text-align: center;
}

.gNavSpUtil .gNavSpUtil__nav ul li {
  margin: 0 10px 0 0;
  padding: 0;
  display: inline-block;
  list-style: none;
  color: #FFF;
  font-size: 13px;
  font-size: 0.8125rem;
}

.gNavSpUtil .gNavSpUtil__nav ul li a {
  margin: 0;
  padding: 0 0 0 18px;
  display: inline-block;
  color: #FFF;
  text-decoration: none;
}

.gNavSpUtil .gNavSpUtil__nav ul li a.gNavSpUtil__navHome {
  background-image: url("/library/common2020/images/icon_home_white.png");
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 13px 13px;
}

.gNavSpUtil .gNavSpUtil__nav ul li a.gNavSpUtil__navAccess {
  background-image: url("/library/common2020/images/icon_access_white.png");
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 13px 13px;
}

.gNavSpUtil .gNavSpUtil__nav ul li a.gNavSpUtil__navApp {
  background-image: url("/library/common2020/images/icon_app_white.png");
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 13px 13px;
}

.gNavSpUtil .gNavSpUtil__nav ul li a.gNavSpUtil__navEn {
  padding-left: 12px;
  background-image: url(/library/common2020/images/icon_arrow_s_white_right.png);
  background-repeat: no-repeat;
  background-position: 0 3px;
  background-size: 5px 7px;
}

.gNavSpUtil .gNavSpUtil__search {
  width: 100%;
}

.gNavSpUtil .gNavSpUtil__search form {
  display: flex;
  flex-wrap: wrap;
}

.gNavSpUtil .gNavSpUtil__search input.pbInputForm {
  width: calc(100% - 65px);
  height: 50px;
  padding-left: 15px;
  padding-right: 15px;
  background-color: #ebecec;
  border: none;
  font-size: 15px;
  font-size: 0.9375rem;
  box-sizing: border-box;
}

.gNavSpUtil .gNavSpUtil__search input[type=button] {
  width: 65px;
  height: 50px;
  margin: 0;
  overflow: hidden;
  text-indent: -9999px;
  color: #fff;
  background-color: #666;
  border: none;
  cursor: pointer;
  background-image: url("/library/common2020/images/icon_search.png");
  background-repeat: no-repeat;
  background-size: 18px 18px;
  background-position: center center;
  border-radius: 0;
}

.gNavSpUtil .gNavSpUtil__search label {
  margin-right: 0;
}

/*==================================================
  footerNav
==================================================*/
.footerNav {
  width: 100%;
  padding: 30px 15px;
  color: #fff;
  background-image: url("/library/common2020/images/footer_bg.png");
  background-position: center 0;
  background-repeat: no-repeat;
  background-size: cover;
}

@media print, screen and (min-width: 1200px) {
  .footerNav {
    padding: 60px 20px 40px 40px;
  }
}

@media print, screen and (min-width: 1400px) {
  .footerNav {
    padding: 60px 0 40px 0;
  }
}

.footerNav a {
  color: #FFF;
  text-decoration: none;
}

.footerNav a:hover {
  text-decoration: underline;
}

@media print, screen and (min-width: 768px) {
  .footerNav .footerNav__inner {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
  }
}

@media print, screen and (min-width: 1200px) {
  .footerNav .footerNav__inner {
    max-width: 1040px;
  }
}

.footerNav .footerNav__box {
  margin: 0;
  padding: 0;
}

@media print, screen and (min-width: 768px) {
  .footerNav .footerNav__box {
    width: 31%;
    margin-right: 2%;
  }
}

@media print, screen and (min-width: 1200px) {
  .footerNav .footerNav__box {
    width: 18.4%;
    margin-right: 2%;
  }
  .footerNav .footerNav__box:nth-child(5n) {
    margin-right: 0;
  }
}

.footerNav .footerNav__box dl {
  margin: 0 0 40px 0;
  padding: 0;
}

.footerNav .footerNav__box dl dt {
  margin: 0 0 15px 0;
  padding: 0;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
}

.footerNav .footerNav__box dl dd {
  margin: 0;
  padding: 0 0 0 20px;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.4;
}

.footerNav .footerNav__box dl dd ul {
  margin: 0;
  padding: 0;
}

.footerNav .footerNav__box dl dd ul li {
  margin: 0 0 10px 0;
  padding: 0;
}

/*==================================================
  footer
==================================================*/
.footer {
  padding: 30px 15px;
  background-color: #fff;
}

@media print, screen and (min-width: 1200px) {
  .footer {
    padding: 30px 30px 60px 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
  }
}

.footer .footer__info {
  margin: 0 0 20px 0;
}

@media print, screen and (min-width: 1200px) {
  .footer .footer__info {
    width: 48%;
    margin: 0 auto 0 0;
  }
}

.footer .footer__info .footer__logo {
  max-width: 286px;
  margin: 0 auto 15px auto;
}

@media print, screen and (min-width: 1200px) {
  .footer .footer__info .footer__logo {
    margin: 0 0 15px 0;
  }
}

.footer .footer__info .footer__address {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6;
  text-align: center;
}

@media print, screen and (min-width: 1200px) {
  .footer .footer__info .footer__address {
    text-align: left;
  }
}

@media print, screen and (min-width: 1200px) {
  .footer .footer__util {
    width: 48%;
    margin: 0 0 0 auto;
  }
}

.footer .footer__util .footer__link {
  margin-bottom: 20px;
}

.footer .footer__util .footer__link ul {
  margin: 0;
  padding: 0;
}

@media print, screen and (min-width: 768px) {
  .footer .footer__util .footer__link ul {
    padding: 0;
    text-align: center;
  }
  .footer .footer__util .footer__link ul:after {
    content: "｜";
    display: inline-block;
  }
}

@media print, screen and (min-width: 1200px) {
  .footer .footer__util .footer__link ul {
    text-align: right;
  }
}

.footer .footer__util .footer__link ul li {
  margin: 0 0 7px 0;
  padding: 0;
  list-style: none;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.4;
}

.footer .footer__util .footer__link ul li a {
  padding-left: 14px;
  background-image: url(/library/common2020/images/icon_arrow_s_primary_right.png);
  background-repeat: no-repeat;
  background-position: 0 center;
  background-size: 5px 7px;
}

@media print, screen and (min-width: 768px) {
  .footer .footer__util .footer__link ul li a {
    padding-left: 0;
    color: #333;
    text-decoration: none;
    background-image: none;
  }
  .footer .footer__util .footer__link ul li a:hover {
    text-decoration: underline;
  }
}

@media print, screen and (min-width: 768px) {
  .footer .footer__util .footer__link ul li {
    margin: 0;
    display: inline-block;
  }
  .footer .footer__util .footer__link ul li:before {
    content: "｜";
    display: inline-block;
    padding-right: 3px;
  }
}

.footer .footer__util .copyright {
  margin: 0;
  padding: 0;
  font-size: 10px;
  font-size: 0.625rem;
  line-height: 1.4;
  text-align: center;
}

@media print, screen and (min-width: 1200px) {
  .footer .footer__util .copyright {
    text-align: right;
  }
}

/*==================================================
  btnPageTop
==================================================*/
.btnPageTop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 500;
}

.btnPageTop a {
  width: 60px;
  height: 60px;
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  opacity: 0.9;
  background-color: #17194C;
  background-image: url(/library/common2020/images/icon_arrow_s_white_up.png);
  background-position: center center;
  background-size: 7px 5px;
  background-repeat: no-repeat;
}

/*=====================================================
  subNavTitle
=====================================================*/
.subNavTitle {
  margin: 0;
  padding: 12px 14px;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.5;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  position: relative;
  background-color: #f4f8fd;
}

@media print, screen and (min-width: 1200px) {
  .subNavTitle {
    padding-left: 20px;
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.subNavTitle a {
  color: #333;
  text-decoration: none;
}

.subNavTitle a:hover {
  text-decoration: none;
}

.subNavTitle:before {
  width: 6px;
  height: 22px;
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  bottom: 0;
  background-color: #17194C;
}

@media print, screen and (min-width: 1200px) {
  .subNavTitle:before {
    top: 16px;
  }
}

/*=====================================================
  subNav
=====================================================*/
.subNav {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding: 15px;
  border: 5px solid #f4f8fd;
}

.subNav > .pbNested {
  display: flex;
  flex-wrap: wrap;
}

.subNav .subNav__primary {
  width: 100%;
  margin: 0 0 5px 0;
}

@media print, screen and (min-width: 768px) {
  .subNav .subNav__primary {
    width: 49.8%;
  }
  .subNav .subNav__primary:nth-child(even) {
    margin: 0 0 0 auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .subNav .subNav__primary {
    width: 24%;
    margin: 0 0.5% 5px 0.5%;
  }
  .subNav .subNav__primary:nth-child(even) {
    margin: 0 0.5% 10px 0.5%;
  }
}

.subNav .subNav__primary a {
  margin: 0;
  padding: 15px 15px 15px 25px;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.4;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  color: #333;
  text-decoration: none;
  background-image: url(/library/common2020/images/icon_arrow_s_primary_right.png);
  background-repeat: no-repeat;
  background-position: 15px 22px;
  background-size: 5px 7px;
  border: 2px solid #17194C;
}

@media print, screen and (min-width: 1200px) {
  .subNav .subNav__primary a {
    transition: all .2s;
  }
  .subNav .subNav__primary a:hover {
    background-position: 19px 22px;
  }
}

/*==================================================
  cornerPage
==================================================*/
.cornerPage > div table {
  display: block;
}

.cornerPage > div table tbody {
  display: flex;
  flex-wrap: wrap;
}

.cornerPage > div table tbody tr {
  width: 100%;
  margin-bottom: 5px;
  display: block;
}

@media print, screen and (min-width: 1200px) {
  .cornerPage > div table tbody tr {
    width: 49.5%;
    margin-bottom: 1%;
  }
  .cornerPage > div table tbody tr:nth-child(even) {
    margin: 0 0 0 auto;
  }
}

.cornerPage > div table tbody tr td {
  display: block;
}

.cornerPage > div table tbody tr td a {
  width: 100%;
  padding: 12px 20px 12px 44px;
  display: inline-block;
  line-height: 1.4;
  text-decoration: none;
  color: #333;
  position: relative;
  transition: all .2s;
  cursor: pointer;
  border: 1px solid #DADDDF;
  border-radius: 5px;
  transition: all .2s;
  background: #ffffff;
  background: linear-gradient(to bottom, #ffffff 0%, #eaedee 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=0 );
  box-shadow: -1px 0px 8px -3px #aaaaaa;
}

.cornerPage > div table tbody tr td a:before {
  width: 14px;
  height: 14px;
  content: "";
  display: block;
  position: absolute;
  left: 20px;
  top: 16px;
  background-image: url(/library/common2020/images/icon_arrow_m_primary_right.png);
  background-repeat: no-repeat;
  background-position: 0 center;
  background-size: 14px 14px;
  transition: .2s all;
}

@media print, screen and (min-width: 1200px) {
  .cornerPage > div table tbody tr td a:hover {
    color: #fff !important;
    background-color: #17194C;
    text-decoration: none;
    border-color: #17194C;
    background: #222577;
    background: linear-gradient(to bottom, #222577 0%, #10102d 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=0 );
  }
  .cornerPage > div table tbody tr td a:hover:before {
    left: 24px;
    background-image: url(/library/common2020/images/icon_arrow_m_white_right.png);
  }
}

/*=====================================================
  bnrList
=====================================================*/
.bnrList {
  margin: 40px 0;
}

.bnrList > .pbNestedHorizontalWrapper {
  display: flex;
  flex-wrap: wrap;
}

.bnrList > .pbNestedHorizontalWrapper .pbHorizontalNested {
  width: 49% !important;
  margin: 0 auto 2% 0;
}

.bnrList > .pbNestedHorizontalWrapper .pbHorizontalNested:nth-child(2n) {
  margin: 0 0 2% auto;
}

@media print, screen and (min-width: 576px) {
  .bnrList > .pbNestedHorizontalWrapper .pbHorizontalNested {
    width: 24% !important;
    margin: 0 1% 1% 0;
  }
  .bnrList > .pbNestedHorizontalWrapper .pbHorizontalNested:nth-child(2n) {
    margin: 0 1% 1% 0;
  }
  .bnrList > .pbNestedHorizontalWrapper .pbHorizontalNested:nth-child(4n) {
    margin: 0 0 1% 0;
  }
}

@media print, screen and (min-width: 1200px) {
  .bnrList > .pbNestedHorizontalWrapper .pbHorizontalNested {
    width: 23.8% !important;
    margin-right: 1.6%;
    margin-bottom: 1.6%;
  }
  .bnrList > .pbNestedHorizontalWrapper .pbHorizontalNested:nth-child(2n) {
    margin: 0 1.6% 1.6% 0;
  }
  .bnrList > .pbNestedHorizontalWrapper .pbHorizontalNested:nth-child(4n) {
    margin: 0 0 1.6% 0;
  }
}

.bnrList > .pbNestedHorizontalWrapper .pbHorizontalNested p {
  margin: 0;
  padding: 0;
  line-height: 1;
}

/*=====================================================
  bdr
=====================================================*/
.bdr, .bdrRed, .bdrLinkList {
  margin-top: 30px;
  margin-bottom: 30px;
  padding: 20px;
  border: 1px solid #DADDDF;
}

/*---------------------------------------------------
  bdrRed
---------------------------------------------------*/
.bdrRed {
  border-width: 5px;
  border-color: #e04f08;
}

/*=====================================================
  bdrDot
=====================================================*/
.bdrDot {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding: 0.5rem 15px;
  border: 2px dotted #DADDDF;
}

/*=====================================================

=====================================================*/
.bdrLinkList {
  padding-top: 10px;
  padding-bottom: 10px;
}

/*=====================================================
  depContact
=====================================================*/
.depContact .depContact__title {
  padding: 0;
  background: none;
  border: none;
}

/*=====================================================
  btn
=====================================================*/
.btn, .btnUp, .btnLeft, .btnDown, .btnWin, .btnPdf, .btnWord, .btnExcel, .btnPpt {
  padding: 12px 20px 12px 44px;
  display: inline-block;
  line-height: 1.4;
  text-decoration: none;
  color: #333;
  position: relative;
  transition: all .2s;
  cursor: pointer;
  border: 1px solid #DADDDF;
  border-radius: 5px;
  transition: all .2s;
  background: #ffffff;
  background: linear-gradient(to bottom, #ffffff 0%, #eaedee 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=0 );
  box-shadow: -1px 0px 8px -3px #aaaaaa;
}

.btn:before, .btnUp:before, .btnLeft:before, .btnDown:before, .btnWin:before, .btnPdf:before, .btnWord:before, .btnExcel:before, .btnPpt:before {
  width: 14px;
  height: 14px;
  content: "";
  display: block;
  position: absolute;
  left: 20px;
  top: 16px;
  background-image: url(/library/common2020/images/icon_arrow_m_primary_right.png);
  background-repeat: no-repeat;
  background-position: 0 center;
  background-size: 14px 14px;
  transition: .2s all;
}

@media print, screen and (min-width: 1200px) {
  .btn:hover, .btnUp:hover, .btnLeft:hover, .btnDown:hover, .btnWin:hover, .btnPdf:hover, .btnWord:hover, .btnExcel:hover, .btnPpt:hover {
    color: #fff !important;
    background-color: #17194C;
    text-decoration: none;
    border-color: #17194C;
    background: #222577;
    background: linear-gradient(to bottom, #222577 0%, #10102d 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=0 );
  }
  .btn:hover:before, .btnUp:hover:before, .btnLeft:hover:before, .btnDown:hover:before, .btnWin:hover:before, .btnPdf:hover:before, .btnWord:hover:before, .btnExcel:hover:before, .btnPpt:hover:before {
    left: 24px;
    background-image: url(/library/common2020/images/icon_arrow_m_white_right.png);
  }
}

/*=====================================================
  btnUp
=====================================================*/
.btnUp:before {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_up.png);
}

@media print, screen and (min-width: 1200px) {
  .btnUp:hover:before {
    left: 20px;
    top: 12px;
    background-image: url(/library/common2020/images/icon_arrow_m_white_up.png);
  }
}

/*=====================================================
  btnLeft
=====================================================*/
.btnLeft:before {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_left.png);
}

@media print, screen and (min-width: 1200px) {
  .btnLeft:hover:before {
    left: 16px;
    background-image: url(/library/common2020/images/icon_arrow_m_white_left.png);
  }
}

/*=====================================================
  btnDown
=====================================================*/
.btnDown:before {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_down.png);
}

@media print, screen and (min-width: 1200px) {
  .btnDown:hover:before {
    left: 20px;
    top: 20px;
    background-image: url(/library/common2020/images/icon_arrow_m_white_down.png);
  }
}

/*=====================================================
  btnWin
=====================================================*/
.btnWin {
  padding: 12px 44px;
}

.btnWin:after {
  width: 17px;
  height: 12px;
  content: "";
  display: block;
  position: absolute;
  right: 20px;
  top: 16px;
  background-image: url(/library/common2020/images/icon_win.png);
  background-repeat: no-repeat;
  background-position: 0 center;
  background-size: 15px 12px;
  transition: .2s all;
}

.btnWin:hover:after {
  background-image: url(/library/common2020/images/icon_win_white.png);
}

/*=====================================================
  btnPdf
=====================================================*/
.btnPdf:before {
  width: 16px;
  height: 16px;
  top: 14px;
  background-image: url(/library/common2020/images/icon_file_pdf.png);
}

@media print, screen and (min-width: 1200px) {
  .btnPdf:hover:before {
    left: 24px;
    background-image: url(/library/common2020/images/icon_file_pdf.png);
  }
}

/*=====================================================
  btnword
=====================================================*/
.btnWord:before {
  width: 16px;
  height: 17px;
  top: 14px;
  background-image: url(/library/common2020/images/icon_file_word.png);
  background-size: 16px 17px;
}

@media print, screen and (min-width: 1200px) {
  .btnWord:hover:before {
    left: 24px;
    background-image: url(/library/common2020/images/icon_file_word.png);
  }
}

/*=====================================================
  btnExcel
=====================================================*/
.btnExcel:before {
  width: 16px;
  height: 16px;
  top: 14px;
  background-image: url(/library/common2020/images/icon_file_excel.png);
  background-size: 16px 16px;
}

@media print, screen and (min-width: 1200px) {
  .btnExcel:hover:before {
    left: 24px;
    background-image: url(/library/common2020/images/icon_file_excel.png);
  }
}

/*=====================================================
  btnPpt
=====================================================*/
.btnPpt:before {
  width: 16px;
  height: 16px;
  top: 14px;
  background-image: url(/library/common2020/images/icon_file_ppt.png);
  background-size: 16px 16px;
}

@media print, screen and (min-width: 1200px) {
  .btnPpt:hover:before {
    left: 24px;
    background-image: url(/library/common2020/images/icon_file_ppt.png);
  }
}

/*=====================================================
  color
=====================================================*/
.red {
  color: #e04f08;
}

.blue {
  color: #17194C;
}

.green {
  color: #42b31a;
}

.yellow {
  color: #FFD200;
}

.orange {
  color: #ff9900;
}

.fs--l {
  font-size: 18px;
  font-size: 1.125rem;
}

@media print, screen and (min-width: 1200px) {
  .fs--l {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.fs--ml {
  font-size: 16px;
  font-size: 1rem;
}

.fs--m {
  font-size: 16px;
  font-size: 1rem;
}

.fs--s {
  font-size: 12px;
  font-size: 0.75rem;
}

@media print, screen and (min-width: 1200px) {
  .fs--s {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

/*=====================================================
  tblBlock--form
=====================================================*/
.form td {
  padding: 8px !important;
  text-align: left;
  vertical-align: middle !important;
}

.form .pbCorner.pbCornerQuery td.pbLabel {
  width: 100% !important;
  background: #f4f8fd;
  white-space: normal !important;
}

@media print, screen and (min-width: 768px) {
  .form .pbCorner.pbCornerQuery td.pbLabel {
    width: 150px !important;
  }
}

.form .pbCorner.pbCornerQuery td {
  border: none;
}

@media print, screen and (min-width: 768px) {
  .form .pbCorner.pbCornerQuery td {
    border: 1px solid #DADDDF;
  }
}

.form .pbDescription {
  display: inline-block;
  line-height: 1.8;
}

.form td.pbErrorMsg {
  border: 5px solid #e04f08 !important;
}

.form .pbErrorMsg {
  color: #e04f08 !important;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  line-height: 1.8;
}

/*=====================================================
  f_text
=====================================================*/
input[type=checkbox],
input[type=radio] {
  margin-right: 10px;
  display: inline-block;
}

input[type=submit],
button {
  border: none;
}

label {
  margin-right: 20px;
  display: inline-block;
}

.f_caseText {
  color: #999;
}

.f__name input[type=text],
.f__kana input[type=text],
.f__age input[type=text],
.f__tel input[type=text],
.f__mail input[type=text],
.f__zip input[type=text],
.f__date input[type=text],
.f__text input[type=text],
.f__text2 input[type=text],
.f__address input[type=text] {
  padding: 8px !important;
  border: 1px solid #DADDDF !important;
  font-size: 16px;
  font-size: 1rem;
}

@media print, screen and (min-width: 768px) {
  .f__name input[type=text],
  .f__kana input[type=text],
  .f__age input[type=text],
  .f__tel input[type=text],
  .f__mail input[type=text],
  .f__zip input[type=text],
  .f__date input[type=text],
  .f__text input[type=text],
  .f__text2 input[type=text],
  .f__address input[type=text] {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.f__comment textarea {
  padding: 8px !important;
  border: 1px solid #DADDDF !important;
  font-size: 16px;
  font-size: 1rem;
}

@media print, screen and (min-width: 768px) {
  .f__comment textarea {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.f__name input[type=text],
.f__kana input[type=text] {
  width: 30%;
}

@media print, screen and (min-width: 768px) {
  .f__name input[type=text],
  .f__kana input[type=text] {
    width: 100px;
  }
}

.f__age input[type=text] {
  width: 10%;
}

@media print, screen and (min-width: 768px) {
  .f__age input[type=text] {
    width: 50px;
  }
}

.f__tel input[type=text] {
  width: 80%;
}

@media print, screen and (min-width: 768px) {
  .f__tel input[type=text] {
    width: 200px;
  }
}

.f__zip input[type=text] {
  width: 40%;
}

@media print, screen and (min-width: 768px) {
  .f__zip input[type=text] {
    width: 100px;
  }
}

.f__mail input[type=text] {
  width: 80%;
}

@media print, screen and (min-width: 768px) {
  .f__mail input[type=text] {
    width: 200px;
  }
}

.f__date input[type=text] {
  width: 100%;
}

.f__address input[type=text] {
  width: 100%;
}

.f__text input[type=text] {
  width: 100%;
}

.f__text2 input[type=text] {
  width: 50%;
}

.f__comment textarea {
  width: 100%;
  height: 100px;
}

.f__select {
  margin-right: 10px;
  padding: 8px;
  border: 1px solid #DADDDF;
  font-size: 16px;
  font-size: 1rem;
}

@media print, screen and (min-width: 768px) {
  .f__select {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

/*=====================================================
  f_btn
=====================================================*/
.f__btn {
  border: none !important;
  border-top: 1px solid #DADDDF;
}

.f__btn input[type=submit],
.f__btn input[type=button].pbQueryOk,
.f__btn input[type=button].pbQueryCancel {
  width: 100%;
  margin: 0 auto;
  padding: 20px 20px 20px 40px;
  display: block;
  cursor: pointer;
  -webkit-appearance: none;
  border-radius: 0;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.4;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  color: #fff !important;
  text-align: center;
  background: #f9a006;
  border-color: #f9a006;
  text-decoration: none !important;
  transition: all .2s;
}

@media print, screen and (min-width: 768px) {
  .f__btn input[type=submit],
  .f__btn input[type=button].pbQueryOk,
  .f__btn input[type=button].pbQueryCancel {
    width: 300px;
  }
}

.f__btn input[type=submit]:hover,
.f__btn input[type=button].pbQueryOk:hover,
.f__btn input[type=button].pbQueryCancel:hover {
  background-color: #f2c309;
  border-color: #f2c309;
}

.f__btn input[type=button].pbQueryOk {
  margin: 20px auto 10px auto;
  display: inline-block;
  border: none;
}

@media print, screen and (min-width: 576px) {
  .f__btn input[type=button].pbQueryOk {
    width: 200px;
    margin: 20px 20px 0 0;
  }
}

@media print, screen and (min-width: 768px) {
  .f__btn input[type=button].pbQueryOk {
    width: 300px;
  }
}

.f__btn input[type=button].pbQueryCancel {
  margin: 0 auto;
  display: inline-block;
  border: none;
  background-color: #666;
}

.f__btn input[type=button].pbQueryCancel:hover {
  background-color: #999;
}

@media print, screen and (min-width: 576px) {
  .f__btn input[type=button].pbQueryCancel {
    width: 200px;
    margin-top: 20px;
  }
}

@media print, screen and (min-width: 768px) {
  .f__btn input[type=button].pbQueryCancel {
    width: 300px;
  }
}

/*=====================================================
  hr
=====================================================*/
hr {
  width: 100%;
  height: 3px;
  margin: 20px 0;
  padding: 0;
  border: none;
  background: url(/library/common2020/images/hr_bg.png) repeat-x 0 0;
}

/*=====================================================
  icon
=====================================================*/
.iconArrow, .iconArrowLeft, .iconArrowUp, .iconArrowDown {
  padding-left: 20px;
  background-image: url(/library/common2020/images/icon_arrow_m_primary_right.png);
  background-repeat: no-repeat;
  background-position: 0 4px;
  background-size: 14px 14px;
}

.iconArrowLeft {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_left.png);
}

.iconArrowUp {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_up.png);
}

.iconArrowDown {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_down.png);
}

/*=====================================================
  new
=====================================================*/
.iconNew {
  margin-left: 5px;
  margin-right: 5px;
  padding: 3px 8px 2px 8px;
  display: inline-block;
  font-size: 8px;
  font-size: 0.5rem;
  color: #fff;
  font-weight: normal;
  line-height: 1;
  background: #e04f08;
  border-radius: 30px;
  vertical-align: middle;
}

/*=====================================================
  file
=====================================================*/
.iconPdf::before, .iconWord::before, .iconExcel::before, .iconPpt::before {
  width: 16px;
  height: 16px;
  padding-right: 7px;
  display: inline-block;
  content: '';
  background-image: url(/library/common2020/images/icon_file_pdf.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  vertical-align: middle;
}

.iconWord::before {
  background-image: url(/library/common2020/images/icon_file_word.png);
}

.iconExcel::before {
  background-image: url(/library/common2020/images/icon_file_excel.png);
}

.iconPpt::before {
  background-image: url(/library/common2020/images/icon_file_ppt.png);
}

.iconWin {
  position: relative;
}

.iconWin::after {
  width: 22px;
  height: 13px;
  padding-right: 6px;
  display: inline-block;
  content: '';
  background: url(/library/common2020/images/icon_win.png) no-repeat 4px 0;
  vertical-align: middle;
  background-size: 15px 12px;
  backface-visibility: hidden;
}

.iconWin.iconWin--white:after {
  background: url(/library/common2020/images/icon_win_white.png) no-repeat 4px 0;
  background-size: 15px 12px;
}

.icon--none::before,
.icon--none::after {
  width: 0 !important;
  height: 0 !important;
  margin-bottom: 0;
  padding: 0 !important;
  content: "" !important;
  background: none !important;
}

.icon--noneBefore::before {
  padding: 0 !important;
  content: "" !important;
}

.icon--noneAfter::after {
  padding: 0 !important;
  content: "" !important;
}

/*=====================================================
  linkList
=====================================================*/
.linkList, .linkListAnchor {
  margin: 0;
  padding: 0;
}

.linkList ul, .linkListAnchor ul {
  margin: 0 !important;
  padding: 0 !important;
}

.linkList li, .linkListAnchor li {
  padding: 0 0 0 18px !important;
  list-style: none;
  background-image: url(/library/common2020/images/icon_arrow_m_primary_right.png);
  background-repeat: no-repeat;
  background-position: 0 6px;
  background-size: 14px 14px;
}

.linkList li ul li, .linkListAnchor li ul li {
  padding-left: 16px !important;
  background-image: url(/library/common2020/images/icon_arrow_s_primary_right.png);
  background-repeat: no-repeat;
  background-position: 0 10px;
  background-size: 5px 7px;
}

.linkList.linkList--side ul, .linkList--side.linkListAnchor ul {
  overflow: hidden;
}

@media print, screen and (min-width: 576px) {
  .linkList.linkList--side li, .linkList--side.linkListAnchor li {
    padding-right: 20px;
    display: inline-block;
  }
}

.linkList.linkList--2col ul, .linkList--2col.linkListAnchor ul {
  overflow: hidden;
}

@media print, screen and (min-width: 576px) {
  .linkList.linkList--2col li, .linkList--2col.linkListAnchor li {
    width: 49%;
    padding-right: 2%;
    display: inline-block;
    vertical-align: top;
  }
  .linkList.linkList--2col li:nth-child(2n), .linkList--2col.linkListAnchor li:nth-child(2n) {
    padding-right: 0;
  }
}

.linkList.linkList--3col ul, .linkList--3col.linkListAnchor ul {
  overflow: hidden;
}

@media print, screen and (min-width: 768px) {
  .linkList.linkList--3col li, .linkList--3col.linkListAnchor li {
    width: 32%;
    padding-right: 3%;
    display: inline-block;
    vertical-align: top;
  }
  .linkList.linkList--3col li:nth-child(3n), .linkList--3col.linkListAnchor li:nth-child(3n) {
    padding-right: 0;
  }
}

.linkList.linkList--left li, .linkList--left.linkListAnchor li {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_right.png);
}

.linkList.linkList--up li, .linkList--up.linkListAnchor li {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_up.png);
}

.linkList.linkList--down li, .linkList--down.linkListAnchor li {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_down.png);
}

/*=====================================================
  linkListAnchor
=====================================================*/
.linkListAnchor {
  margin-top: 15px;
  margin-bottom: 15px;
  padding: 10px 20px;
  border: 1px solid #DADDDF;
}

.linkListAnchor ul {
  overflow: hidden;
}

.linkListAnchor li {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_down.png);
}

@media print, screen and (min-width: 576px) {
  .linkListAnchor li {
    padding-right: 20px !important;
    display: inline-block;
  }
}

.linkListAnchor.linkListAnchor--vertical li {
  display: block;
}

.linkListAnchor.linkListAnchor--right ul li {
  background-image: url(/library/common2020/images/icon_arrow_m_primary_right.png);
}

/*=====================================================
  ol/ul
=====================================================*/
.pbMainArea ol,
.pbMainArea ul {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding: 0 0 0 20px;
}

.pbMainArea ol li,
.pbMainArea ul li {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  padding-bottom: 0;
  padding-left: 0;
  line-height: 1.8;
  font-size: 16px;
  font-size: 1rem;
}

.pbMainArea ol {
  padding-left: 30px;
}

.pbMainArea .list--none ul {
  padding-left: 0;
}

.pbMainArea .list--none ul li {
  list-style: none !important;
}

.list--2col ul {
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 576px) {
  .list--2col ul {
    align-items: start;
    justify-content: space-between;
  }
}

@media print, screen and (min-width: 576px) {
  .list--2col li {
    width: calc(49% - 20px);
    margin-left: 20px;
  }
  .list--2col li:nth-child(2n) {
    padding-right: 0;
  }
  .list--2col li ul li {
    width: 100%;
  }
}

.list--3col ul {
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 576px) {
  .list--3col ul {
    align-items: start;
    justify-content: flex-start;
  }
}

@media print, screen and (min-width: 768px) {
  .list--3col li {
    width: calc(32% - 20px);
    margin-left: 20px;
    margin-right: 1%;
  }
  .list--3col li:nth-child(3n) {
    margin-right: 0;
  }
  .list--3col li ul li {
    width: 100%;
  }
}

.list--4col ul {
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 576px) {
  .list--4col ul {
    align-items: start;
    justify-content: flex-start;
  }
}

@media print, screen and (min-width: 768px) {
  .list--4col li {
    width: calc(24.1% - 20px);
    margin-left: 20px;
    margin-right: 1.2%;
  }
  .list--4col li:nth-child(4n) {
    margin-right: 0;
  }
  .list--4col li ul li {
    width: 100%;
  }
}

/*=====================================================
  dl
=====================================================*/
dl dt {
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  line-height: 1.8;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  font-size: 16px;
  font-size: 1rem;
}

@media print, screen and (min-width: 1200px) {
  dl dt {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

dl dd {
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  padding-left: 1rem;
  line-height: 1.8;
  font-size: 16px;
  font-size: 1rem;
}

@media print, screen and (min-width: 1200px) {
  dl dd {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

/*=====================================================
  ol/ul
=====================================================*/
.pbMainArea .listArrow ul, .pbMainArea .listArrow ol {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  padding: 0px;
}

.pbMainArea .listArrow li {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  padding: 0;
  list-style: none;
}

.pbMainArea .listArrow li a {
  padding: 2px 15px 2px 15px;
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.4;
  background: url(/library/images/icon_arrow_s_green_right.png) no-repeat 0 8px;
  background-size: 6px 7px;
}

@media print, screen and (min-width: 1200px) {
  .pbMainArea .listArrow li a {
    font-size: 16px;
    font-size: 1rem;
  }
}

.pbMainArea .listArrow.listArrow--horizon li {
  margin-right: 20px;
  display: inline-block;
}

/*=====================================================
  youtube
=====================================================*/
.youtube > .pbBlock > div {
  margin-bottom: 30px;
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.youtube > .pbBlock > div iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/*==================================================
  menuList
==================================================*/
.menuList .menuList__primary span, .menuList .menuList__secondary span {
  padding: 5px 0 5px 20px;
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6;
  background-image: url(/library/common2020/images/icon_arrow_m_primary_right.png);
  background-repeat: no-repeat;
  background-position: 0 10px;
  background-size: 14px 14px;
}

.menuList .menuList__secondary {
  margin-left: 24px;
}

.menuList .menuList__secondary span {
  padding: 5px 0 5px 10px;
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6;
  background-image: url(/library/common2020/images/icon_arrow_s_primary_right.png);
  background-repeat: no-repeat;
  background-position: 0 14px;
  background-size: 5px 7px;
}

/*==================================================
  nestCol2
==================================================*/
.nestCol2 > .pbNestedHorizontalWrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.nestCol2 .nestColBox {
  width: 100% !important;
}

@media print, screen and (min-width: 576px) {
  .nestCol2 .nestColBox {
    width: 48% !important;
    margin-bottom: 1%;
  }
  .nestCol2 .nestColBox:nth-child(2n) {
    margin: 0 0 0 auto;
  }
}

/*==================================================
  nestCol3
==================================================*/
.nestCol3 > .pbNestedHorizontalWrapper {
  display: flex;
  flex-wrap: wrap;
}

.nestCol3 .nestColBox {
  width: 100% !important;
}

@media print, screen and (min-width: 576px) {
  .nestCol3 .nestColBox {
    width: 30% !important;
    margin-right: 5%;
    margin-bottom: 2%;
  }
  .nestCol3 .nestColBox:nth-child(3n) {
    margin-right: 0;
  }
}

/*==================================================
  nestCol4
==================================================*/
.nestCol4 > .pbNestedHorizontalWrapper {
  display: flex;
  flex-wrap: wrap;
}

.nestCol4 .nestColBox {
  width: 100% !important;
}

@media print, screen and (min-width: 576px) {
  .nestCol4 .nestColBox {
    width: 23.8% !important;
    margin-right: 1.6%;
    margin-bottom: 2%;
  }
  .nestCol4 .nestColBox:nth-child(4n) {
    margin-right: 0;
  }
}

/*=====================================================
  news
=====================================================*/
.news {
  margin-bottom: 30px;
}

.news table {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.news tbody {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.news tr {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding-right: 10px;
  padding-left: 10px;
}

.news tr:nth-child(even) {
  background-color: #f4f8fd;
}

.news td {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 1200px) {
  .news td {
    width: calc(100% - 180px);
  }
}

.news .date {
  width: 100% !important;
  padding: 15px 0 10px 0;
  line-height: 1.4;
}

@media print, screen and (min-width: 1200px) {
  .news .date {
    width: 180px !important;
    padding: 15px 0;
  }
}

.news .icon {
  width: 100% !important;
  padding-bottom: 10px;
  line-height: 1.4;
}

@media print, screen and (min-width: 1200px) {
  .news .icon {
    width: 120px !important;
    padding: 15px 0;
  }
}

.news .link {
  width: 100% !important;
  line-height: 1.4;
  padding-bottom: 15px;
}

@media print, screen and (min-width: 1200px) {
  .news .link {
    width: calc(100% - 120px) !important;
    padding: 15px 0;
  }
}

/*==================================================
  photoCol
==================================================*/
.photoCol, .photoCol02 {
  width: 100%;
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
}

.photoCol .pbNestedHorizontalWrapper, .photoCol02 .pbNestedHorizontalWrapper {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.photoCol .photoCol__pht, .photoCol02 .photoCol__pht {
  width: 100% !important;
  text-align: center;
  margin-bottom: 20px;
}

@media print, screen and (min-width: 576px) {
  .photoCol .photoCol__pht, .photoCol02 .photoCol__pht {
    width: 30% !important;
    margin: 0;
  }
}

.photoCol .photoCol__text, .photoCol02 .photoCol__text {
  width: 100% !important;
}

@media print, screen and (min-width: 576px) {
  .photoCol .photoCol__text, .photoCol02 .photoCol__text {
    width: 68% !important;
    margin: 0 0 0 auto;
  }
}

.photoCol02 .photoCol__pht {
  margin: 0 0 0 auto;
}

.photoCol02 .photoCol__text {
  margin: 0 auto 0 0;
}

/*==================================================
  pickupList
==================================================*/
.pickupList {
  width: 100%;
  margin: 0;
  padding: 0;
  position: relative;
  z-index: 20;
}

.pickupList > .pbNestedHorizontalWrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media print, screen and (min-width: 576px) {
  .pickupList > .pbNestedHorizontalWrapper {
    justify-content: start;
  }
}

@media print, screen and (min-width: 1200px) {
  .pickupList > .pbNestedHorizontalWrapper {
    width: 100%;
    max-width: 1040px;
    margin-right: auto;
    margin-left: auto;
  }
}

.pickupList .pickupList__box {
  width: 48% !important;
  margin-bottom: 4%;
  overflow: hidden;
}

@media print, screen and (min-width: 576px) {
  .pickupList .pickupList__box {
    width: 32% !important;
    margin-right: 2%;
  }
  .pickupList .pickupList__box:nth-child(3n) {
    margin-right: 0;
  }
}

@media print, screen and (min-width: 1200px) {
  .pickupList .pickupList__box {
    width: 23.8% !important;
    margin-right: 1.6%;
    margin-bottom: 1.6%;
  }
  .pickupList .pickupList__box:nth-child(3n) {
    margin-right: 1.6%;
  }
  .pickupList .pickupList__box:nth-child(4n) {
    margin-right: 0;
  }
}

.pickupList .pickupList__box .pickupList__pht {
  overflow: hidden;
}

.pickupList .pickupList__box .pickupList__pht p {
  margin: 0;
  padding: 0;
  line-height: 1;
}

.pickupList .pickupList__box .pickupList__pht img {
  transition: all .2s;
}

.pickupList .pickupList__box .pickupList__pht img:hover {
  transform: scale(1.1);
}

.pickupList .pickupList__box .pickupList__title p {
  margin: 0;
  padding: 0;
  line-height: 1;
}

.pickupList .pickupList__box .pickupList__title a {
  width: 100%;
  padding: 10px 10px 10px 30px;
  display: block;
  color: #FFF;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.4;
  text-decoration: none;
  position: relative;
  background: #222577;
  background: linear-gradient(to bottom, #222577 0%, #10102d 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$start-color', endColorstr='$end-color',GradientType=0 );
}

.pickupList .pickupList__box .pickupList__title a:before {
  width: 5px;
  height: 7px;
  content: "";
  display: block;
  position: absolute;
  left: 15px;
  top: 17px;
  background-image: url(/library/common2020/images/icon_arrow_s_white_right.png);
  background-size: 5px 7px;
  background-position: 0 0;
  background-repeat: no-repeat;
}

@media print, screen and (min-width: 1200px) {
  .pickupList .pickupList__box .pickupList__title a:before {
    transition: all .2s;
  }
}

@media print, screen and (min-width: 1200px) {
  .pickupList .pickupList__box .pickupList__title a {
    font-size: 15px;
    font-size: 0.9375rem;
  }
  .pickupList .pickupList__box .pickupList__title a:hover:before {
    left: 20px;
  }
}

/*==================================================
  slideShow
==================================================*/
.slideShow ul {
  margin: 0;
  padding: 0;
}

.slideShow ul li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.slideShow .bx-wrapper {
  margin: 0 auto 60px auto;
}

.slideShow .bx-wrapper .bx-viewport {
  box-shadow: none;
  border-width: 0;
  left: 0;
}

/*=====================================================
  table
=====================================================*/
table th, table td {
  font-size: 16px;
  font-size: 1rem;
}

/*---------------------------------------------------
  table
---------------------------------------------------*/
.table table, .tableBlock table {
  margin-top: 30px;
  margin-bottom: 30px;
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid #DADDDF;
}

.table th, .tableBlock th {
  padding: 12px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #f2f6f7;
  border: 1px solid #DADDDF;
  word-break: break-all;
  text-align: left;
}

.table thead th, .tableBlock thead th {
  background-color: #f4f8fd;
}

.table td, .tableBlock td {
  padding: 12px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #fff;
  border: 1px solid #DADDDF;
  vertical-align: middle;
  word-break: break-all;
}

.table.table--small th, .table--small.tableBlock th, .table.table--small td, .table--small.tableBlock td {
  padding: 8px;
  font-size: 11px;
  font-size: 0.6875rem;
}

.table .js-on, .tableBlock .js-on {
  background-color: #ffffcc !important;
}

@media print, screen and (min-width: 1200px) {
  .table .js-on, .tableBlock .js-on {
    background-color: transparent !important;
  }
}

.tableBlock table {
  display: block;
  border-width: 0;
}

@media print, screen and (min-width: 768px) {
  .tableBlock table {
    display: table;
  }
}

.tableBlock tbody {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .tableBlock tbody {
    display: table-row-group;
  }
}

.tableBlock tr {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .tableBlock tr {
    display: table-row;
  }
}

.tableBlock th, .tableBlock td {
  display: block;
  border-width: 0;
}

@media print, screen and (min-width: 768px) {
  .tableBlock th, .tableBlock td {
    display: table-cell;
    border-width: 1px;
  }
}

.tableBlock th {
  text-align: left;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  margin-top: 10px;
}

.tableBlock th:empty {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .tableBlock th {
    margin-bottom: 0;
    vertical-align: top;
  }
  .tableBlock th:empty {
    display: table-cell;
  }
}

.tableBlock td {
  padding: 7px 0;
  border-width: 0;
  border-bottom: 1px dotted #DADDDF;
}

@media print, screen and (min-width: 768px) {
  .tableBlock td {
    padding: 12px;
    border: 1px solid #DADDDF;
    border-bottom-style: solid;
  }
}

/*=====================================================
  tableBorderNone
=====================================================*/
.tableBorderNone table {
  margin-top: 30px;
  margin-bottom: 30px;
}

.tableBorderNone th {
  padding: 8px 10px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}

.tableBorderNone thead th {
  text-align: center;
}

.tableBorderNone td {
  padding: 8px 10px;
  line-height: 1.5;
  font-size: 16px;
  font-size: 1rem;
}

/*=====================================================
  scroll
=====================================================*/
.scroll {
  margin: 20px 0;
  padding: 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

@media print, screen and (min-width: 1200px) {
  .scroll {
    margin: 0;
    overflow: visible;
    white-space: normal;
  }
}

.scroll table {
  max-width: 1000px;
  width: 1000px;
  margin: 1rem 0 !important;
}

@media print, screen and (min-width: 768px) {
  .scroll table {
    width: 100%;
    max-width: 1200px;
  }
}

.scroll table th,
.scroll table td {
  vertical-align: middle;
}

.scroll::-webkit-scrollbar {
  height: 5px;
}

.scroll::-webkit-scrollbar-track {
  border-radius: 5px;
  background: #eee;
}

.scroll::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #666;
}

.scroll:before {
  content: "\008868\00306f\005de6\0053f3\00306b\0030b9\0030af\0030ed\0030fc\0030eb\003067\00304d\00307e\003059";
  /* 文字化け対策のためUnicode変換 */
  color: #fff;
  font-size: 12px;
  background-color: #666;
  border-radius: 8px;
  padding: 0.05em 0.5em;
}

@media print, screen and (min-width: 768px) {
  .scroll:before {
    display: none;
  }
}

/*=====================================================
  topicPath
=====================================================*/
.topicPath {
  margin: 10px 15px 25px 15px;
  padding: 0;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
  color: #969E9E;
}

@media print, screen and (min-width: 1200px) {
  .topicPath {
    width: 100%;
    max-width: 1040px;
    margin: 20px auto;
    padding: 0 40px;
    position: relative;
    left: 90px;
    z-index: 10;
  }
}

@media print, screen and (min-width: 1400px) {
  .topicPath {
    padding: 0;
  }
}

.topicPath a {
  margin-right: 10px;
  display: inline-block;
  color: #969E9E;
  text-decoration: none;
}

.topicPath a:hover {
  text-decoration: underline;
}

/*=====================================================
  title
=====================================================*/
.pbMainArea h1,
.pbMainArea .h1 {
  width: 100%;
  margin: 0 0 30px 0;
  padding: 0 0 14px 0;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.4;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  position: relative;
  border-bottom: 3px solid #17194C;
}

@media print, screen and (min-width: 768px) {
  .pbMainArea h1,
  .pbMainArea .h1 {
    padding-bottom: 20px;
    font-size: 30px;
    font-size: 1.875rem;
  }
}

/*---------------------------------------------------
  h2
---------------------------------------------------*/
.pbMainArea h2,
.pbMainArea .h2 {
  margin: 20px 0;
  padding: 12px 18px;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.5;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  position: relative;
  background-color: #F3F4F5;
}

@media print, screen and (min-width: 1200px) {
  .pbMainArea h2,
  .pbMainArea .h2 {
    padding: 15px 15px 15px 20px;
    font-size: 22px;
    font-size: 1.375rem;
  }
}

.pbMainArea h2 a,
.pbMainArea .h2 a {
  text-decoration: underline;
}

.pbMainArea h2 a:hover,
.pbMainArea .h2 a:hover {
  text-decoration: none;
}

.pbMainArea h2:before,
.pbMainArea .h2:before {
  width: 6px;
  height: 22px;
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  bottom: 0;
  background-color: #17194C;
}

@media print, screen and (min-width: 1200px) {
  .pbMainArea h2:before,
  .pbMainArea .h2:before {
    top: 20px;
  }
}

.pbMainArea h2 .icon--win::after,
.pbMainArea .h2 .icon--win::after {
  background: url(/library/images/icon_win_white.png) no-repeat 4px 0;
  background-size: "/library/common2020/images/icon_win.png";
}

/*---------------------------------------------------
  h3
---------------------------------------------------*/
.pbMainArea h3,
.pbMainArea .h3 {
  margin: 20px 0;
  padding-bottom: 10px;
  position: relative;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.4;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  border-bottom: 3px solid #edebeb;
}

@media print, screen and (min-width: 1200px) {
  .pbMainArea h3,
  .pbMainArea .h3 {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.pbMainArea h3::after,
.pbMainArea .h3::after {
  position: absolute;
  bottom: -3px;
  left: 0;
  z-index: 2;
  content: '';
  width: 30%;
  height: 3px;
  background-color: #17194C;
}

@media print, screen and (min-width: 1200px) {
  .pbMainArea h3::after,
  .pbMainArea .h3::after {
    width: 160px;
  }
}

/*---------------------------------------------------
  h4
---------------------------------------------------*/
.pbMainArea h4,
.pbMainArea .h4 {
  margin: 20px 0;
  padding-left: 20px;
  padding-bottom: 8px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  position: relative;
  border-bottom: 1px solid #DADDDF;
}

.pbMainArea h4::before,
.pbMainArea .h4::before {
  width: 11px;
  height: 11px;
  content: '';
  position: absolute;
  left: 0;
  top: 5px;
  z-index: 2;
  background-color: #17194C;
}

/*---------------------------------------------------
  h5
---------------------------------------------------*/
.pbMainArea h5,
.pbMainArea .h5 {
  margin: 20px 0;
  padding-bottom: 8px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
  border-bottom: 1px dotted #ccc;
}

/*---------------------------------------------------
  h6
---------------------------------------------------*/
.pbMainArea h6,
.pbMainArea .h6 {
  margin: 20px 0;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
  font-family: "UD Shin Go DemiBold";
}

/*---------------------------------------------------
  p
---------------------------------------------------*/
.pbMainArea p {
  margin-top: 20px;
  margin-bottom: 20px;
  line-height: 2;
  font-size: 16px;
  font-size: 1rem;
}

.pbMainArea p:first-child {
  margin-top: 0;
}

/*=====================================================
  nowrap
=====================================================*/
.nowrap {
  white-space: nowrap;
}

/*=====================================================
  note
=====================================================*/
.note1 {
  display: inline-block;
  padding-left: 1rem;
  text-indent: -1rem;
}

.note1_5 {
  display: inline-block;
  padding-left: 1.5rem;
  text-indent: -1.5rem;
}

.note2 {
  display: inline-block;
  padding-left: 2rem;
  text-indent: -2rem;
}

.note2-5 {
  display: inline-block;
  padding-left: 2.5rem;
  text-indent: -2.5rem;
}

.note3 {
  display: inline-block;
  padding-left: 3rem;
  text-indent: -3rem;
}

.note3-5 {
  display: inline-block;
  padding-left: 3.5rem;
  text-indent: -3.5rem;
}

.note4 {
  display: inline-block;
  padding-left: 4rem;
  text-indent: -4rem;
}

.note4-5 {
  display: inline-block;
  padding-left: 4.5rem;
  text-indent: -4.5rem;
}

/*  accordion
========================================================================*/

.c_accordion:not(:first-child) {
  margin-top: 30px;
}
.c_accordion + .c_accordion {
  margin-top: 5px;
}
.c_accordion > div {
  background: #fff;
  border: 1px solid #ccc;
}
.c_accordion .trigger {
  position: relative;
  background: #fafafa;
  color: #000000;
}
.c_accordion .trigger > div {
  padding: 10px 45px 10px 15px;
  font-size: 120%;
  font-weight: bold;
  cursor: pointer;
}
.c_accordion .trigger > div p {
  margin-bottom: 0px;
} 
.c_accordion .trigger:before,
.c_accordion .trigger:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 20px;
  width: 16px;
  height: 2px;
  background: #000000;
  transition: all .3s;
}
.c_accordion .trigger:after {
  transform: rotate(90deg);
}
.c_accordion.active .trigger:after {
  transform: rotate(360deg);
}
.c_accordion .content {
  border-top: 1px solid #ccc;
}
.c_accordion .content > div {
  padding: 20px 30px;
}

@media screen and (max-width: 767px) {
  .c_h3+.c_accordion:not(:first-child) {
      margin-top: 30px;
  }
  .c_accordion:not(:first-child) {
    margin-top: 10px;
  }
  .c_accordion .trigger > div {
    font-size: 100%;
    padding: 10px 45px 10px 15px;
  }
  .c_accordion .trigger > div:before,
    .c_accordion .trigger > div:after {
    right: 15px;
  }
  .c_accordion .content > div {
    padding: 15px;
  }
}

/*# sourceMappingURL=style.css.map */
