/* =========================================================
   Piece / Common Piece
========================================================= */
/* commonHeader
----------------------------------------------- */
#commonHeader {
  background: #fff;
}
#commonHeader .head-btn {
  display: flex;
}
#commonHeader .head-btn li {
  position: relative;
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 86px;
  height: 100px;
  padding: 10px 2px 8px;
  color: #fff;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#commonHeader .head-btn li:hover {
  opacity: 0.5;
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#commonHeader .head-btn li::before {
  content: "";
  flex-shrink: 0;
  width: 46px;
  height: 46px;
  margin-bottom: 6px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
#commonHeader .head-btn li.btn-teacher {
  background-color: var(--clr-ex-light-gray);
  color: var(--font-color);
}
#commonHeader .head-btn li.btn-teacher::before {
  background-image: url(/_themes/img/common/header/ic-menu_header_teacher.svg);
}
#commonHeader .head-btn li.btn-access {
  background-color: var(--clr-green);
}
#commonHeader .head-btn li.btn-access::before {
  background-image: url(/_themes/img/common/header/ic-menu_header_access.svg);
}
#commonHeader .head-btn li.btn-consultation {
  background-color: var(--clr-deep-blue);
}
#commonHeader .head-btn li.btn-consultation::before {
  background-image: url(/_themes/img/common/header/ic-menu_header_consultation.svg);
}
#commonHeader .head-btn li.btn-request {
  background-color: #f78100;
}
#commonHeader .head-btn li.btn-request::before {
  background-image: url(/_themes/img/common/header/ic-menu_header_request.svg);
}
#commonHeader .head-btn li.btn-search {
  background-color: var(--clr-deep-gray);
}
#commonHeader .head-btn li.btn-search::before {
  background-image: url(/_themes/img/common/header/ic-menu_header_search.svg);
}
#commonHeader .head-btn li.btn-search.current::before {
  width: 30px;
  height: 30px;
  margin: 8px 0 14px;
  background-image: url(/_themes/img/common/header/menu_close.svg);
}
#commonHeader .head-btn a, #commonHeader .head-btn button {
  margin: auto;
  border: none;
  background: none;
  color: inherit;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
#commonHeader .head-btn a:hover, #commonHeader .head-btn button:hover {
  text-decoration: none;
}
#commonHeader .head-btn a::before, #commonHeader .head-btn button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: none !important;
}

#joruri-search-box:not(.current) {
  display: none;
}

#joruri-search-box {
  position: absolute;
  top: 100px;
  right: 0;
  width: 100%;
  padding: 20px;
  background: var(--clr-deep-gray);
}
#joruri-search-box .criteriaKeyword {
  position: relative;
  display: flex;
}
#joruri-search-box .criteriaKeyword .keywordField {
  flex-basis: calc(100% - 73px);
  display: flex;
  min-width: 0;
  background: #fff;
}
#joruri-search-box .criteriaKeyword input {
  border: none;
}
#joruri-search-box .criteriaKeyword input[name=keyword] {
  flex-basis: calc(100% - 32px);
  min-width: 0;
  padding: 5px;
}
#joruri-search-box .criteriaKeyword input[name=clear] {
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: 32px;
  background: transparent;
  color: var(--font-color);
  font-weight: 700;
}
#joruri-search-box .criteriaKeyword input[name=commit] {
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: 70px;
  height: 60px;
  margin-left: 3px;
  background: url(/_themes/img/common/header/ic-menu_header_search.svg) center center/60px auto no-repeat #a6a6a6;
}

@media only screen and (max-width: 768px) {
  #commonHeader .head-btn {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #fff;
    -webkit-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
  }
  #commonHeader .head-btn.hidden {
    transform: translateY(100%);
    visibility: hidden;
    -webkit-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
  }
  #commonHeader .head-btn li {
    height: auto;
    min-height: 60px;
  }
  #commonHeader .head-btn li.btn-search {
    display: none;
  }
  #commonHeader .head-btn li a, #commonHeader .head-btn li button {
    font-size: 0.75rem;
  }
  #commonHeader .head-btn li a br, #commonHeader .head-btn li button br {
    display: none;
  }
  #joruri-search-box {
    position: fixed;
    top: 60px;
    left: 0;
    padding: 10px;
    background: var(--clr-light-green);
  }
  #joruri-search-box .criteriaKeyword input[name=commit] {
    height: 50px;
    background: url(/_themes/img/common/header/ic-search-sp.svg) center center/60px auto no-repeat #53d4d8;
  }
}
/* globalNavi
----------------------------------------------- */
#globalNavi {
  margin-bottom: 20px;
}
#globalNavi .pieceBody h1 {
  padding: 5px 0;
  text-align: center;
}
#globalNavi .pieceBody h1 a {
  display: block;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#globalNavi .pieceBody h1 a:hover {
  opacity: 0.5;
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#globalNavi .pieceBody ul li a {
  display: block;
  line-height: 1.5;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#globalNavi .pieceBody ul li a:hover {
  opacity: 0.5;
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#globalNavi .pieceBody ul li a span {
  display: inline-block;
}
#globalNavi .pieceBody > ul > li {
  border-bottom: 1px solid #fff;
}
#globalNavi .pieceBody > ul > li:last-child {
  border-bottom: none;
}
#globalNavi .pieceBody > ul > li > div {
  position: relative;
}
#globalNavi .pieceBody > ul > li > a, #globalNavi .pieceBody > ul > li > div a {
  position: relative;
  padding: 15px 50px 15px 60px;
  background: var(--clr-green);
  color: #fff;
  font-size: 1.25rem;
}
#globalNavi .pieceBody > ul > li > a::before, #globalNavi .pieceBody > ul > li > div a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
#globalNavi .pieceBody > ul > li.gnav-news a::before {
  background-image: url(/_themes/img/common/gnav/gnav-news.svg);
}
#globalNavi .pieceBody > ul > li.gnav-admissions a::before {
  background-image: url(/_themes/img/common/gnav/gnav-admissions.svg);
}
#globalNavi .pieceBody > ul > li.gnav-scholarship a::before {
  background-image: url(/_themes/img/common/gnav/gnav-scholarship.svg);
}
#globalNavi .pieceBody > ul > li.gnav-events a::before {
  background-image: url(/_themes/img/common/gnav/gnav-events.svg);
}
#globalNavi .pieceBody > ul > li.gnav-academics a::before {
  background-image: url(/_themes/img/common/gnav/gnav-academics.svg);
}
#globalNavi .pieceBody > ul > li.gnav-campus a::before {
  background-image: url(/_themes/img/common/gnav/gnav-campus.svg);
}
#globalNavi .pieceBody > ul > li.gnav-about a::before {
  background-image: url(/_themes/img/common/gnav/gnav-about.svg);
}
#globalNavi .pieceBody > ul > li.gnav-life a::before {
  background-image: url(/_themes/img/common/gnav/gnav-life.svg);
}
#globalNavi .pieceBody > ul > li.gnav-career a::before {
  background-image: url(/_themes/img/common/gnav/gnav-career.svg);
}
#globalNavi .pieceBody > ul > li.gnav-contact a::before {
  background-image: url(/_themes/img/common/gnav/gnav-contact.svg);
}
#globalNavi .pieceBody > ul > li > a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 46px;
  padding: 0;
  background: url(/_themes/img/common/gnav/arrow-menu_left.svg) center center no-repeat;
}
#globalNavi .pieceBody > ul > li button {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 46px;
  padding: 0;
  border: none;
  background: url(/_themes/img/common/gnav/plus-menu_left.svg) center center no-repeat;
  text-indent: -9999px;
  outline-offset: -2px;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#globalNavi .pieceBody > ul > li button:hover {
  opacity: 0.5;
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#globalNavi .pieceBody > ul > li button.current {
  background-image: url(/_themes/img/common/gnav/minus-menu_left.svg);
}
#globalNavi .pieceBody > ul > li a[href="#"] + button::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 260px;
}
#globalNavi .pieceBody ul ul {
  display: none;
  padding: 0 20px;
}
#globalNavi .pieceBody ul ul li {
  border-bottom: 1px solid var(--clr-green);
}
#globalNavi .pieceBody ul ul li:last-child {
  border-bottom: none;
}
#globalNavi .pieceBody ul ul li a {
  padding: 10px 25px 10px 15px;
  background: url(/_themes/img/common/gnav/arrow.svg) right 5px center no-repeat;
  font-weight: 400;
}

@media only screen and (min-width: 1281px) and (max-width: 1536px) {
  #globalNavi .pieceBody > ul > li > a, #globalNavi .pieceBody > ul > li > div a {
    padding: 12px 50px 12px 60px;
    font-size: 1.125rem;
  }
  #globalNavi .pieceBody ul ul li a {
    padding: 5px 25px 5px 15px;
    font-size: 0.85rem;
  }
}
@media only screen and (min-width: 1281px), print {
  #globalNavi .head-btn-sp {
    display: none;
  }
  #globalNavi #gnav {
    display: block !important;
  }
}
@media only screen and (max-width: 1280px) {
  #globalNavi {
    margin-bottom: 0;
  }
  #globalNavi .pieceBody {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    max-width: calc(100% - 430px);
    height: 100px;
  }
  #globalNavi .pieceBody h1 {
    padding: 0;
    text-align: left;
  }
  #globalNavi .pieceBody h1 a {
    padding: 8px 5px 5px 15px;
  }
  #globalNavi .pieceBody .head-btn-sp {
    margin-left: auto;
  }
  #globalNavi .pieceBody .head-btn-sp ul {
    display: flex;
  }
  #globalNavi .pieceBody .head-btn-sp ul li {
    flex: 1 1 0;
    width: 86px;
    height: 100px;
  }
  #globalNavi .pieceBody .head-btn-sp ul li button {
    width: 100%;
    height: 100%;
    border: none;
    background: none;
    text-indent: -9999px;
    outline-offset: -2px;
    overflow: hidden;
  }
  #globalNavi .pieceBody .head-btn-sp ul li.btn-search {
    display: none;
    background: url(/_themes/img/common/header/ic-search-sp.svg) center center/42px auto no-repeat #b5ecee;
  }
  #globalNavi .pieceBody .head-btn-sp ul li.btn-search.current {
    background-image: url(/_themes/img/common/header/search_close.svg);
    background-size: 28px auto;
  }
  #globalNavi .pieceBody .head-btn-sp ul li.btn-menu {
    background: url(/_themes/img/common/header/menu.svg) center center/28px auto no-repeat var(--clr-green);
  }
  #globalNavi .pieceBody .head-btn-sp ul li.btn-menu.current {
    background-image: url(/_themes/img/common/header/menu_close.svg);
    background-size: 28px auto;
  }
  #globalNavi .pieceBody #gnav {
    position: fixed;
    top: 100px;
    left: 0;
    right: 0;
    display: none;
    width: 100%;
    max-height: calc(100vh - 100px);
    background: var(--clr-light-green);
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    overflow-x: hidden;
    overflow-y: auto;
    /*
    overflow: auto;
    */
    overscroll-behavior-y: contain;
  }
  #globalNavi .pieceBody #gnav > li > a::before, #globalNavi .pieceBody #gnav > li > div a::before {
    left: 20px;
  }
  #globalNavi .pieceBody #gnav > li a::after, #globalNavi .pieceBody #gnav > li button {
    width: 60px;
  }
  #globalNavi .pieceBody #gnav > li a[href="#"] + button::before {
    width: 100vw;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1280px) {
  #globalNavi .pieceBody .head-btn-sp ul li {
    background-position: center 23px !important;
  }
  #globalNavi .pieceBody .head-btn-sp ul li button {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 56px 2px 8px;
    color: #fff;
    font-size: 0.875rem;
    text-indent: 0;
  }
}
@media only screen and (min-width: 769px), print {
  #globalNavi .pieceBody > ul > li.sp-only {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  #globalNavi .pieceBody {
    max-width: 100%;
    height: 60px;
  }
  #globalNavi .pieceBody .head-btn-sp {
    margin-left: auto;
  }
  #globalNavi .pieceBody .head-btn-sp ul {
    display: flex;
  }
  #globalNavi .pieceBody .head-btn-sp ul li {
    flex: 1 1 0;
    width: 60px;
    height: 60px;
  }
  #globalNavi .pieceBody .head-btn-sp ul li.btn-menu {
    background-position: center 35%;
    background-size: auto 14px;
  }
  #globalNavi .pieceBody .head-btn-sp ul li.btn-menu.current {
    background-size: auto 18px;
  }
  #globalNavi .pieceBody .head-btn-sp ul li.btn-menu button {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    padding-bottom: 7px;
    color: #fff;
    font-size: 10px;
    text-indent: 0;
  }
  #globalNavi .pieceBody .head-btn-sp ul li.btn-search {
    display: block;
  }
  #globalNavi .pieceBody #gnav {
    top: 60px;
    max-height: calc(100vh - 60px);
  }
  #globalNavi .pieceBody #gnav > li > a, #globalNavi .pieceBody #gnav > li > div a {
    padding-top: 13px;
    padding-bottom: 13px;
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp {
    display: flex;
    padding: 0;
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span {
    position: relative;
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 5px 2px;
    border-bottom: none;
    color: #fff;
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span::before {
    content: "";
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    margin-bottom: 6px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span a {
    margin: auto;
    padding: 0;
    border: none;
    background: none;
    color: inherit;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span a:hover {
    text-decoration: none;
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span a::before {
    content: "";
    position: absolute;
    inset: 0;
    background: none !important;
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span.btn-teacher {
    background-color: var(--clr-ex-light-gray);
    color: var(--font-color);
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span.btn-teacher::before {
    background-image: url(/_themes/img/common/header/ic-menu_header_teacher.svg);
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span.btn-access {
    background-color: var(--clr-green);
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span.btn-access::before {
    background-image: url(/_themes/img/common/header/ic-menu_header_access.svg);
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span.btn-consultation {
    background-color: var(--clr-deep-blue);
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span.btn-consultation::before {
    background-image: url(/_themes/img/common/header/ic-menu_header_consultation.svg);
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span.btn-request {
    background-color: #f78100;
  }
  #globalNavi .pieceBody > ul > li.sp-only .head-btn-sp > span.btn-request::before {
    background-image: url(/_themes/img/common/header/ic-menu_header_request.svg);
  }
}
/* commonBanner
----------------------------------------------- */
#commonBanner .banner {
  margin-bottom: 18px;
  text-align: center;
}
#commonBanner .banner img {
  max-width: 100%;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#commonBanner .banner img:hover {
  opacity: 0.5;
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

/* slideLower
----------------------------------------------- */
#slideLower {
  margin: 0 -20px 50px;
  padding: 0 27px;
}
#slideLower .bannerImages {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
#slideLower .slick-list {
  width: 100%;
}
#slideLower .slick-list .slick-slide > div {
  padding: 0 10px;
}
#slideLower .slick-list a {
  outline-offset: -2px;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#slideLower .slick-list a:hover {
  opacity: 0.5;
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#slideLower .dot-class {
  margin-top: 25px;
}
#slideLower .slide-arrow {
  top: calc(50% - 50px);
  width: 30px;
  height: 30px;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#slideLower .slide-arrow:hover {
  opacity: 0.5;
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#slideLower .slide-arrow.prev-arrow {
  left: -27px;
}
#slideLower .slide-arrow.next-arrow {
  right: -27px;
}

@media only screen and (max-width: 768px) {
  #slideLower {
    padding: 0;
  }
  #slideLower .dot-class {
    margin-top: 15px;
  }
  #slideLower .slide-arrow {
    display: none;
  }
}
/* footerLink
----------------------------------------------- */
#footerLink {
  margin-bottom: 30px;
  background-color: var(--clr-deep-blue);
  color: #fff;
  overflow: hidden;
}
#footerLink .pieceContainer {
  width: 100%;
  max-width: 1220px;
  margin: 0 auto;
  padding: 0 40px;
}
@media only screen and (max-width: 768px) {
  #footerLink .pieceContainer {
    padding: 0 15px;
  }
}
#footerLink .pieceHeader {
  margin-bottom: 30px;
}
#footerLink .pieceHeader h2 {
  position: relative;
  display: inline-block;
}
#footerLink .pieceHeader h2::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 100%;
  width: 100vw;
  background: #fff;
}
#footerLink .pieceHeader h2 span {
  display: block;
  padding: 20px 60px 8px 10px;
  font-size: 1.375rem;
}
#footerLink .pieceBody {
  position: relative;
}
#footerLink .pieceBody ul {
  position: relative;
  z-index: 1;
  display: flex;
  margin-bottom: 35px;
  border: 1px solid #fff;
}
#footerLink .pieceBody ul li {
  position: relative;
  flex: 1 1 0;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#footerLink .pieceBody ul li:hover {
  color: var(--clr-deep-blue);
  background-color: #fff;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#footerLink .pieceBody ul li:not(:last-child) {
  border-right: 1px solid #fff;
}
#footerLink .pieceBody ul li a {
  color: inherit;
  font-size: 1.375rem;
  text-decoration: none;
  text-align: center;
}
#footerLink .pieceBody ul li a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: none !important;
}
#footerLink .pieceBody ul li::before {
  content: "";
  flex-shrink: 0;
  margin: 10px 23px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#footerLink .pieceBody ul li:hover::before {
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#footerLink .pieceBody ul li:nth-child(1)::before {
  width: 62px;
  height: 62px;
  background-image: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/" x="0px" y="0px" width="62px" height="62px" viewBox="-1.216 -1.216 62 62" enable-background="new -1.216 -1.216 62 62" xml:space="preserve"><defs></defs><path fill="%23FFFFFF" d="M29.892,1V0C13.384,0.001,0.001,13.383,0,29.892c0.001,16.51,13.384,29.892,29.892,29.893c16.509-0.001,29.892-13.383,29.892-29.893C59.784,13.383,46.401,0.001,29.892,0V1v1c7.705,0,14.672,3.12,19.723,8.169c5.049,5.051,8.169,12.018,8.169,19.723s-3.12,14.672-8.169,19.723c-5.051,5.049-12.018,8.169-19.723,8.17c-7.705-0.001-14.671-3.121-19.722-8.17C5.121,44.563,2.001,37.597,2,29.892c0.001-7.705,3.121-14.672,8.17-19.723C15.221,5.12,22.188,2,29.892,2V1L29.892,1z"/><path fill="%23FFFFFF" d="M37.503,16.503v24.131H22.282V16.503H37.503L37.503,16.503z M29.892,45.827c-0.842,0-1.527-0.686-1.527-1.527s0.685-1.527,1.527-1.527c0.842,0,1.527,0.686,1.527,1.527S30.734,45.827,29.892,45.827L29.892,45.827z M35.965,11.731H23.82c-2.078,0-3.769,1.689-3.769,3.768v28.786c0,2.077,1.691,3.768,3.769,3.768h12.145c2.078,0,3.769-1.69,3.769-3.768V15.499C39.734,13.421,38.043,11.731,35.965,11.731L35.965,11.731z"/></svg>');
}
#footerLink .pieceBody ul li:nth-child(1):hover::before {
  background-image: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/" x="0px" y="0px" width="62px" height="62px" viewBox="-1.216 -1.216 62 62" enable-background="new -1.216 -1.216 62 62" xml:space="preserve"><defs></defs><path fill="%233654bf" d="M29.892,1V0C13.384,0.001,0.001,13.383,0,29.892c0.001,16.51,13.384,29.892,29.892,29.893c16.509-0.001,29.892-13.383,29.892-29.893C59.784,13.383,46.401,0.001,29.892,0V1v1c7.705,0,14.672,3.12,19.723,8.169c5.049,5.051,8.169,12.018,8.169,19.723s-3.12,14.672-8.169,19.723c-5.051,5.049-12.018,8.169-19.723,8.17c-7.705-0.001-14.671-3.121-19.722-8.17C5.121,44.563,2.001,37.597,2,29.892c0.001-7.705,3.121-14.672,8.17-19.723C15.221,5.12,22.188,2,29.892,2V1L29.892,1z"/><path fill="%233654bf" d="M37.503,16.503v24.131H22.282V16.503H37.503L37.503,16.503z M29.892,45.827c-0.842,0-1.527-0.686-1.527-1.527s0.685-1.527,1.527-1.527c0.842,0,1.527,0.686,1.527,1.527S30.734,45.827,29.892,45.827L29.892,45.827z M35.965,11.731H23.82c-2.078,0-3.769,1.689-3.769,3.768v28.786c0,2.077,1.691,3.768,3.769,3.768h12.145c2.078,0,3.769-1.69,3.769-3.768V15.499C39.734,13.421,38.043,11.731,35.965,11.731L35.965,11.731z"/></svg>');
}
#footerLink .pieceBody ul li:nth-child(2)::before {
  width: 63px;
  height: 45px;
  background-image: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/" x="0px" y="0px" width="63px" height="45px" viewBox="-1 -1 63 45" enable-background="new -1 -1 63 45" xml:space="preserve"><defs></defs><polygon fill="%23FFFFFF" points="4.23,7.459 30.411,24.035 56.462,7.898 55.408,6.198 30.422,21.676 5.3,5.769 4.23,7.459 "/><path fill="%23FFFFFF" d="M1.276,41.918v-1v0.723H2c-0.003-0.402-0.318-0.719-0.724-0.723v0.723H2V1.277H1.276V2C1.682,1.997,1.998,1.68,2,1.277H1.276V2h58.146V1.277h-0.722C58.706,1.686,59.021,1.996,59.423,2V1.277h-0.722V41.64h0.722v-0.722c-0.403,0.004-0.718,0.318-0.722,0.722h0.722v-0.722H1.276V41.918v1h58.146c0.709-0.004,1.274-0.568,1.278-1.278V1.277C60.697,0.566,60.132,0.006,59.423,0H1.276C0.566,0.004,0.003,0.571,0,1.277v40.363c0.003,0.707,0.566,1.273,1.276,1.277V41.918L1.276,41.918z"/></svg>');
}
#footerLink .pieceBody ul li:nth-child(2):hover::before {
  background-image: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/" x="0px" y="0px" width="63px" height="45px" viewBox="-1 -1 63 45" enable-background="new -1 -1 63 45" xml:space="preserve"><defs></defs><polygon fill="%233654bf" points="4.23,7.459 30.411,24.035 56.462,7.898 55.408,6.198 30.422,21.676 5.3,5.769 4.23,7.459 "/><path fill="%233654bf" d="M1.276,41.918v-1v0.723H2c-0.003-0.402-0.318-0.719-0.724-0.723v0.723H2V1.277H1.276V2C1.682,1.997,1.998,1.68,2,1.277H1.276V2h58.146V1.277h-0.722C58.706,1.686,59.021,1.996,59.423,2V1.277h-0.722V41.64h0.722v-0.722c-0.403,0.004-0.718,0.318-0.722,0.722h0.722v-0.722H1.276V41.918v1h58.146c0.709-0.004,1.274-0.568,1.278-1.278V1.277C60.697,0.566,60.132,0.006,59.423,0H1.276C0.566,0.004,0.003,0.571,0,1.277v40.363c0.003,0.707,0.566,1.273,1.276,1.277V41.918L1.276,41.918z"/></svg>');
}
#footerLink .pieceBody ul li br {
  display: none;
}
#footerLink .pieceBody #pageTop {
  position: absolute;
  top: -30px;
  left: 50%;
  width: 100%;
  max-width: 1344px;
  transform: translate(-50%, -50%);
  text-align: right;
}
#footerLink .pieceBody #pageTop a {
  display: inline-block;
  border-radius: 50%;
  background: var(--clr-deep-blue);
}
#footerLink .pieceBody #pageTop a:hover img {
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#footerLink .pieceBody #pageTop a:hover img:hover {
  opacity: 0.5;
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

@media only screen and (min-width: 1537px), print {
  #footerLink .pieceBody #pageTop {
    width: calc(98vw - 520px);
  }
}
@media only screen and (max-width: 768px) {
  #footerLink {
    margin-bottom: 0;
  }
  #footerLink .pieceHeader {
    margin-bottom: 15px;
  }
  #footerLink .pieceHeader h2::before {
    bottom: 40%;
  }
  #footerLink .pieceHeader h2 span {
    padding: 10px 20px 0 0;
    font-size: 1.125rem;
  }
  #footerLink .pieceBody ul {
    margin-bottom: 20px;
  }
  #footerLink .pieceBody ul li a {
    font-size: 0.875rem;
  }
  #footerLink .pieceBody ul li::before {
    margin: 5px 10px 5px 0;
  }
  #footerLink .pieceBody ul li:nth-child(1)::before {
    width: 32px;
    height: 32px;
  }
  #footerLink .pieceBody ul li:nth-child(2)::before {
    width: 32px;
    height: 22px;
  }
  #footerLink .pieceBody ul li br {
    display: block;
  }
  #footerLink .pieceBody #pageTop a {
    width: 41px;
  }
}
/* footerSns
----------------------------------------------- */
#footerSns {
  margin-bottom: 30px;
}
#footerSns .pieceContainer {
  width: 100%;
  max-width: 1220px;
  margin: 0 auto;
  padding: 0 40px;
}
@media only screen and (max-width: 768px) {
  #footerSns .pieceContainer {
    padding: 0 15px;
  }
}
#footerSns .pieceBody {
  display: flex;
  border-top: 1px solid #EBEBEB;
  text-align: center;
}
#footerSns .pieceBody a {
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#footerSns .pieceBody a:hover {
  opacity: 0.5;
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#footerSns .pieceBody .primary {
  flex-grow: 1;
  border-left: 1px solid #EBEBEB;
}
#footerSns .pieceBody .primary ul {
  display: flex;
  flex-wrap: wrap;
}
#footerSns .pieceBody .primary ul li {
  flex: 1 1 0;
  border: 1px solid #EBEBEB;
  border-width: 0 1px 1px 0;
  font-size: 0.75rem;
}
#footerSns .pieceBody .primary ul li a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding: 15px 5px;
  color: #000;
}
#footerSns .pieceBody .primary ul li a img {
  margin-bottom: 5px;
}
#footerSns .pieceBody .primary ul li a span {
  margin: auto;
}
#footerSns .pieceBody .secondary {
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
  border: 1px solid #EBEBEB;
  border-top: none;
  border-left: none;
}

@media only screen and (max-width: 1536px) {
  #footerSns .pieceBody .primary ul li:nth-child(-n+3) {
    flex-basis: 33.33%;
  }
  #footerSns .pieceBody .primary ul li:nth-child(n+4) {
    flex-basis: 25%;
  }
}
@media only screen and (max-width: 768px) {
  #footerSns {
    margin: 0;
    padding: 25px 0;
  }
  #footerSns .pieceBody {
    display: block;
  }
  #footerSns .pieceBody .primary ul li {
    flex-basis: 50% !important;
  }
  #footerSns .pieceBody .primary ul li a {
    padding: 5px;
  }
  #footerSns .pieceBody .secondary {
    padding: 5px 20px;
    border-top: none;
    border-left: 1px solid #EBEBEB;
  }
}
/* commonFooter
----------------------------------------------- */
#commonFooter {
  background: var(--clr-green);
  color: #fff;
}
#commonFooter .pieceContainer {
  width: 100%;
  max-width: 1220px;
  margin: 0 auto;
  padding: 0 40px;
}
@media only screen and (max-width: 768px) {
  #commonFooter .pieceContainer {
    padding: 0 15px;
  }
}
#commonFooter .pieceBody {
  display: flex;
  padding: 30px 0 85px;
  background: url(/_themes/img/common/footer/footer_logo.svg) right bottom/65% auto no-repeat;
}
#commonFooter .pieceBody a:not(.hongaku) {
  margin-left: 5px;
  padding-left: 22px;
  background: url(/_themes/img/common/footer/arrow-footer.svg) left center no-repeat;
  color: inherit;
  font-size: 1.125rem;
}
#commonFooter .pieceBody .logo {
  flex-shrink: 0;
  margin-right: 60px;
  padding-left: 112px;
  background: url(/_themes/img/common/footer/footer_since1895.svg) left center no-repeat;
}
#commonFooter .pieceBody .logo span {
  display: block;
  font-size: 2.5rem;
}
#commonFooter .pieceBody .logo span .hongaku {
  color: inherit;
}
#commonFooter .pieceBody .links li {
  display: inline-block;
  margin-top: 5px;
}
#commonFooter .pieceBody .links li:not(:last-child) {
  margin-right: 40px;
}

@media only screen and (max-width: 768px) {
  #commonFooter .pieceBody {
    flex-direction: column;
    align-items: center;
    padding: 20px 0 60px;
    background-position: center bottom;
    background-size: 95% auto;
  }
  #commonFooter .pieceBody a:not(.hongaku) {
    padding-left: 10px;
    font-size: 1rem;
    background-size: auto 7px;
  }
  #commonFooter .pieceBody .logo {
    margin-bottom: 10px;
    margin-right: 20px;
    padding-left: 110px;
    background-position: 10px 30%;
    background-size: 90px auto;
  }
  #commonFooter .pieceBody .logo span {
    font-size: 2rem;
  }
  #commonFooter .pieceBody .logo > a {
    white-space: nowrap;
  }
  #commonFooter .pieceBody .links li {
    font-size: 0.875rem;
  }
}
/* copyright
----------------------------------------------- */
#copyright {
  padding: 5px 0;
  font-size: 0.875rem;
  text-align: center;
}

@media only screen and (max-width: 768px) {
  #copyright {
    font-size: 0.625rem;
  }
}

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