@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Karla:ital,wght@0,500;1,500&family=Noto+Sans+JP:wght@100..900&display=swap");
:root {
  --paddingInline: 30px;
  --headerHeight: 80px;
  --menuHeight: 50px;
  --margin-diff: calc(50vw - 50%);
}
@media (max-width: 1200px) {
  :root {
    --headerHeight: 68px;
    --paddingInline: 20px;
  }
}

html {
  height: -webkit-fill-available;
  font-size: calc(0.0069444444 * var(--viewportWidth)); /* 10px */ /* ピクセル値に変換 */
}
@media (max-width: 767px) {
  html {
    font-size: calc(0.0266666667 * var(--viewportWidth));
  }
}

@media screen and (min-width: 1440.1px) {
  html {
    font-size: 10px;
  }
}
body {
  overscroll-behavior: none;
  -webkit-text-size-adjust: 100%;
  min-height: 100vh;
  min-height: -webkit-fill-available;
  min-width: auto;
  color: #000000;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
  height: auto; /* headerのposition: sticky */
}
body._fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
}
@media (max-width: 767px) {
  body {
    font-size: 14px;
  }
}

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-weight: normal;
  font-size: inherit;
  line-height: inherit;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

span:not([class]) {
  display: inline-block;
}

img {
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}

a {
  color: inherit;
  transition: opacity 0.5s;
  text-decoration: none;
}
a:focus {
  color: inherit;
}
@media (any-hover: hover) {
  a:hover {
    color: inherit;
    opacity: 0.7;
  }
}

a:visited {
  color: inherit;
}

ul[class^=p-], ol[class^=p-] {
  list-style: none;
}

.l-header {
  position: sticky;
  top: 0;
  background-color: white;
  z-index: 11;
}

.l-header-inner {
  display: flex;
  justify-content: space-between;
}

.l-header-logo {
  padding-top: 19px;
  padding-left: 17px;
}
.l-header-logo img {
  width: 273px;
}

.l-header-menu1 {
  list-style: none;
  display: flex;
  justify-content: flex-end;
  font-size: 13px;
  gap: 20px;
  color: #023994;
  padding-top: 15px;
  padding-bottom: 10px;
  padding-right: 20px;
}
.l-header-menu1 img {
  margin-right: 5px;
}
.l-header-menu1 ._english img {
  width: 17px;
}

.l-header-menu2 {
  list-style: none;
  display: flex;
  justify-content: flex-end;
  font-size: 14px;
  gap: 20px;
  padding-bottom: 10px;
  padding-right: 20px;
  align-items: flex-end;
}

.l-header-search {
  position: relative;
  width: 27px;
  height: 27px;
  transition: width 0.3s ease;
}
.l-header-search:has(form.gsc-search-box:hover, form.gsc-search-box:focus, form.gsc-search-box:focus-within) {
  width: 200px;
}
.l-header-search > button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background-color: transparent;
  cursor: pointer;
}
.l-header-search .p-gsc form.gsc-search-box {
  width: 100%;
  transition: width 0.3s ease;
}
.l-header-search .p-gsc form.gsc-search-box:focus input.gsc-input, .l-header-search .p-gsc form.gsc-search-box:focus-within input.gsc-input, .l-header-search .p-gsc form.gsc-search-box:hover input.gsc-input {
  border: 1px solid #ddd !important;
}
.l-header-search .p-gsc td.gsib_b {
  position: absolute;
  right: 0;
}
.l-header-search .p-gsc table.gsc-search-box {
  padding: 0;
  height: auto;
  border-radius: 0;
}
.l-header-search .p-gsc .gsc-search-box > tbody > tr {
  display: grid;
  grid-template-columns: 1fr auto;
}
.l-header-search .p-gsc td.gsc-input {
  padding-right: 0;
}
.l-header-search .p-gsc input.gsc-input {
  height: 27px !important;
  padding-left: 27px !important;
}
.l-header-search .p-gsc table.gsc-input {
  padding: 5px;
}
.l-header-search .p-gsc .gsc-search-button {
  position: absolute;
  top: 3px;
  left: 2px;
}
.l-header-search .p-gsc .gsc-search-button-v2 svg, .l-header-search .p-gsc .gsc-search-button-v2:hover svg, .l-header-search .p-gsc .gsc-search-button-v2:focus svg {
  width: 19px;
  height: 19px;
}

.l-header-searchDrop {
  position: absolute;
  top: 100%;
  right: 0;
  background-color: white;
  padding: 30px;
}
.l-header-searchDrop .c-search {
  background-color: #eeeeee;
}
.l-header-searchDrop .c-search-input {
  background-color: #eeeeee;
}

.l-header-navgation ul {
  list-style: none;
  display: flex;
  background-image: linear-gradient(-90deg, #3797FD, #2E4FB5);
  color: white;
  font-size: 15px;
  height: 58px;
}
.l-header-navgation li {
  flex-basis: 25%;
  text-align: center;
}
.l-header-navgation li img {
  margin-right: 8px;
}
.l-header-navgation li:not(:last-child) {
  position: relative;
}
.l-header-navgation li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 1px;
  height: 24px;
  background-color: white;
}
.l-header-navgation a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}

.l-drawer {
  position: fixed;
  z-index: 11;
  top: 0;
  bottom: var(--menuHeight);
  left: 100%;
  width: 100%;
  height: calc(100dvh - var(--menuHeight));
  overflow-y: scroll;
  background-color: white;
  margin-bottom: 50px;
  background: url("../images/bg-gradient.webp") no-repeat center/cover;
  transition: left 0.3s ease;
}
.l-drawer._open {
  left: 0;
}

.l-drawer-search {
  padding-block: 13px;
  padding-inline: 15px;
}

.l-drawer-menu1 {
  background-color: #EFF5FF;
  display: flex;
  list-style: none;
  border-bottom: 2px solid white;
}
.l-drawer-menu1 li {
  flex-basis: 33.3333%;
  color: #023994;
}
.l-drawer-menu1 li:not(:last-child) {
  border-right: 2px solid white;
}
.l-drawer-menu1 a {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 13px;
  padding-block: 15px;
}
.l-drawer-menu1 img {
  aspect-ratio: 1/1;
  width: 20px;
  -o-object-fit: contain;
     object-fit: contain;
  margin-bottom: 5px;
}

.l-drawer-menu2 {
  background-color: #EFF5FF;
  list-style: none;
}
.l-drawer-menu2 li {
  font-size: 14px;
}
.l-drawer-menu2 a {
  display: block;
  padding: 15px 40px;
  border-bottom: 2px solid white;
  position: relative;
}
.l-drawer-menu2 a::after {
  position: absolute;
  content: "";
  width: 8px;
  height: 13px;
  background: url("../images/chevron-right-blue.png") no-repeat center/contain;
  right: 40px;
  top: 20px;
}

.l-drawer-navigation ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  font-size: 14px;
}
.l-drawer-navigation li {
  flex-basis: 50%;
  height: 50px;
  border-top: 1px solid white;
}
.l-drawer-navigation li:nth-child(even) {
  border-left: 1px solid white;
}
.l-drawer-navigation a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 100%;
  text-align: center;
  color: white;
}

.l-drawer-forExaminees {
  background-color: white;
  text-align: center;
  padding-top: 28px;
}

.l-drawer-followUs {
  background-color: white;
}

.l-drawer-links {
  background-color: white;
}

.l-mobileMenu {
  position: fixed;
  width: 100%;
  z-index: 11;
  bottom: 0;
  left: 0;
  height: var(--menuHeight);
  display: none;
}
@media (max-width: 1094px) {
  .l-mobileMenu {
    display: flex;
  }
}

.l-mobileMenu-searchBox {
  display: none;
  position: fixed;
  bottom: -100%;
  left: 0;
  width: 100%;
  z-index: 11;
  padding: 25px;
  transition: bottom 0.3s ease;
  background: url("../images/bg-gradient.webp") no-repeat center/cover;
  background-size: auto;
}
.l-mobileMenu-searchBox._open {
  bottom: var(--menuHeight);
}

.l-mobileMenu-search,
.l-mobileMenu-menu,
.l-mobileMenu-link {
  color: white;
  font-size: 10px;
  flex-basis: 33.3333%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  display: flex;
  flex-direction: column;
  gap: 5px;
  align-items: center;
  justify-content: center;
}

.l-mobileMenu-search {
  background-color: #0067D5;
  cursor: pointer;
}
.l-mobileMenu-search ._icon {
  display: block;
  aspect-ratio: 1/1;
  width: 17px;
  background: url("../images/icon-search-white.svg") no-repeat center/contain;
}
.l-mobileMenu-search._open ._icon {
  background: url("../images/icon-close.svg") no-repeat center/contain;
}

.l-mobileMenu-menu {
  background-color: #023994;
  cursor: pointer;
}
.l-mobileMenu-menu ._icon {
  display: block;
  aspect-ratio: 1/1;
  width: 17px;
  background: url("../images/icon-menu.svg") no-repeat center/contain;
}
.l-mobileMenu-menu._open ._icon {
  background: url("../images/icon-close.svg") no-repeat center/contain;
}

.l-mobileMenu-link {
  background-color: #F8771A;
}
.l-mobileMenu-link img {
  aspect-ratio: 29.41/20;
  width: 29.41px;
}
.l-mobileMenu-link:visited {
  color: white;
}

@media (max-width: 1230px) {
  .l-header-logo img {
    width: 178px;
  }
  .l-header-menu2 {
    font-size: 13px;
    gap: 15px;
  }
}
@media (max-width: 1094px) {
  .l-header-menu2,
  .l-header-navgation,
  .l-header-menu1 ._access,
  .l-header-menu1 ._contact,
  .l-header-menu1 ._english {
    display: none;
  }
  .l-header-inner {
    height: 50px;
    align-items: center;
  }
  .l-header-menu1 {
    padding-block: 0;
  }
  .l-header-logo {
    padding-top: 0;
    padding-left: 12px;
  }
  .l-mobileMenu-searchBox {
    display: block;
  }
}
.l-footerLinks {
  background: url("../images/bg-gradient.webp") no-repeat center/cover;
  padding-block: 110px 93px;
}
@media (max-width: 767px) {
  .l-footerLinks {
    padding-block: 0;
    background-image: linear-gradient(-180deg, #3797FD, #2E4FB5);
  }
  .l-footerLinks .c-inner {
    padding-inline: 0;
  }
}

.l-footerLinks-label p {
  color: white;
  font-weight: 700;
  margin-bottom: 6px;
}
@media (max-width: 767px) {
  .l-footerLinks-label {
    font-size: 13px;
  }
  .l-footerLinks-label p {
    padding-inline: 40px;
    padding-block: 10px;
    margin-bottom: 0;
    position: relative;
  }
  .l-footerLinks-label p::after {
    position: absolute;
    content: "";
    width: 15px;
    height: 9px;
    background: url("../images/chevron-down-white.png") no-repeat center/contain;
    right: 40px;
    top: 16px;
  }
  .l-footerLinks-label p._open::after {
    transform: translateY(-50%) rotate(-180deg);
  }
  .l-footerLinks-label p::before, .l-footerLinks-label p::after {
    position: absolute;
    content: "";
    width: 16px;
    height: 1px;
    right: 40px;
    top: 50%;
    background-color: currentColor;
    transition: transform 0.3s ease;
  }
  .l-footerLinks-label p::after {
    transform: translateY(-50%) rotate(90deg);
  }
  .l-footerLinks-label._open p::after {
    transform: translateY(-50%) rotate(-180deg);
  }
}

.l-footerLinks-cols {
  max-width: 1000px;
  margin-inline: auto;
  display: flex;
  gap: 20px;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .l-footerLinks-cols {
    flex-direction: column;
    gap: 0;
  }
}

.l-footerLinks-group + .l-footerLinks-group {
  margin-top: 50px;
}
@media (max-width: 767px) {
  .l-footerLinks-group + .l-footerLinks-group {
    margin-top: 0;
  }
  .l-footerLinks-group {
    border-bottom: 1px solid white;
  }
}

@media (max-width: 767px) {
  .l-footerLinks-detail {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
  }
}

.l-footerLinks-list {
  color: white;
  font-size: 13px;
  list-style: none;
}
.l-footerLinks-list a {
  display: block;
  padding-block: 0.5em;
}
@media (max-width: 767px) {
  .l-footerLinks-list {
    padding-block: 20px;
    padding-inline: 40px;
    border-top: 1px solid white;
  }
}

.l-footerLinks-banner {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 65px;
  max-width: 1000px;
  margin-inline: auto;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .l-footerLinks-banner {
    background-color: white;
    margin-top: 0;
    padding: 26px 50px;
    gap: 10px;
    justify-content: center;
  }
  .l-footerLinks-banner li {
    flex-basis: 85px;
  }
}

.l-footerMain {
  background-color: #023994;
  color: white;
  padding-block: 47px 26px;
}
@media (max-width: 767px) {
  .l-footerMain {
    padding-block: 39px 112px;
  }
}

.l-footer-inner {
  max-width: 700px;
  margin-inline: auto;
  padding-inline: 20px;
  box-sizing: content-box;
}

.l-footer-logo {
  margin-bottom: 27px;
  text-align: center;
}
.l-footer-logo img {
  width: 253px;
}
@media (max-width: 767px) {
  .l-footer-logo {
    text-align: left;
  }
}

.l-footer-campuses {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .l-footer-campuses {
    flex-direction: column;
    gap: 20px;
  }
}

.l-footer-campus ._title {
  margin-bottom: 14px;
  font-weight: 700;
}
.l-footer-campus ._address {
  font-size: 13px;
  line-height: 1.7692307692;
}
.l-footer-campus ._number {
  font-size: 13px;
  line-height: 1.7692307692;
}
.l-footer-campus ._number span {
  display: block;
}
@media (max-width: 767px) {
  .l-footer-campus ._title {
    margin-bottom: 7px;
    font-size: 12px;
  }
  .l-footer-campus ._address {
    font-size: 12px;
  }
  .l-footer-campus ._number {
    display: flex;
    gap: 2em;
  }
}

.l-footer-menu {
  font-size: 13px;
  text-align: center;
  margin-top: 33px;
}
@media (max-width: 767px) {
  .l-footer-menu {
    font-size: 12px;
  }
}

.l-footer-copyright {
  text-align: center;
  font-size: 13px;
  margin-top: 33px;
}
@media (max-width: 767px) {
  .l-footer-copyright {
    font-size: 10px;
    margin-top: 11px;
  }
}

.l-container {
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: var(--paddingInline);
  box-sizing: content-box;
}
@media (min-width: 767.1px) {
  .l-container {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    display: grid;
    grid-template-columns: minmax(auto, 820px) 250px;
  }
}
@media (max-width: 767px) {
  .l-side {
    margin-top: 50px;
  }
}

.c-inner {
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: var(--paddingInline);
  box-sizing: content-box;
}

._line {
  position: relative;
}
._line::before {
  position: absolute;
  content: "";
  height: 1px;
  background-color: #023994;
  width: calc(50vw - 50% - 20px);
  left: calc(50% - 50vw);
  top: 50%;
}

@media (max-width: 1275px) {
  ._line {
    padding-left: 50px;
  }
  ._line::before {
    width: calc(var(--paddingInline) + 40px);
    left: calc(var(--paddingInline) * -1);
  }
}
.c-button {
  display: inline-flex;
  gap: 12px;
  align-items: center;
  justify-content: center;
  background-color: #023994;
  height: 70px;
  border: 1px solid #023994;
  border-radius: 35px;
  color: white;
  font-weight: 500;
  width: 100%;
  max-width: 300px;
  transition-property: background-color, color;
  transition-duration: 0.3s;
}
.c-button:visited {
  color: white;
}
@media (any-hover: hover) {
  .c-button:hover {
    background-color: white;
    color: #023994;
    opacity: 1;
  }
}
@media (max-width: 767px) {
  .c-button {
    height: 50px;
    border-radius: 25px;
    max-width: 250px;
    font-size: 14px;
    position: relative;
  }
  .c-button .c-arrow-link {
    position: absolute;
    width: 24px;
    width: 16px;
    height: 4px;
    stroke-width: 2px;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
  }
}

.c-sns {
  display: flex;
  gap: 8px;
}

[class^=c-icon] {
  display: inline-block;
  vertical-align: middle;
}

.c-icon-search {
  width: 24px;
  height: 24px;
  display: inline-block;
  vertical-align: middle;
  fill: currentColor;
}

.c-icon-facebook {
  width: 24px;
  height: 24px;
  display: inline-block;
  vertical-align: middle;
  fill: currentColor;
}

.c-icon-youtube {
  width: 24px;
  height: 24px;
  display: inline-block;
  vertical-align: middle;
  fill: currentColor;
}

.c-arrow-link {
  display: inline-block;
  vertical-align: middle;
  stroke: currentColor;
  fill: none;
  width: 39px;
  height: 8px;
  transition: transform 0.3s;
}
@media (any-hover: hover) {
  a:hover .c-arrow-link {
    transform: translateX(10px);
  }
}

.c-arrow-next {
  width: 56px;
  height: 56px;
  display: inline-block;
  vertical-align: middle;
  fill: white;
  stroke: currentColor;
  transition-property: fill stroke;
  transition-duration: 0.3s;
  transition-timing-function: ease;
}
@media (any-hover: hover) {
  .c-arrow-next:hover {
    fill: currentColor;
    stroke: white;
  }
}

.c-arrow-next-no-border {
  width: 56px;
  height: 56px;
  display: inline-block;
  vertical-align: middle;
  border: 2px solid #023994;
  border-radius: 50%;
  fill: none;
  stroke: #023994;
  transition-property: fill stroke;
  transition-duration: 0.3s;
  transition-timing-function: ease;
}
@media (any-hover: hover) {
  .c-arrow-next-no-border:hover {
    stroke: white;
  }
  a:hover .c-arrow-next-no-border {
    stroke: white;
    background-color: #023994;
  }
}

.c-more-link {
  display: inline-block;
  font-size: 18px;
  color: currentColor;
}
.c-more-link span {
  border-bottom: 1px solid currentColor;
  padding-bottom: 13px;
}
@media (max-width: 767px) {
  .c-more-link {
    font-size: 16px;
  }
  .c-more-link span {
    padding-bottom: 10px;
  }
}

.c-section-heading {
  font-size: 24px;
  margin-bottom: 60px;
}
.c-section-heading span {
  display: block;
}
.c-section-heading ._shoulder {
  font-size: 14px;
  font-weight: 500;
  color: #023994;
}
.c-section-heading ._main {
  font-family: "Karla", sans-serif;
  font-size: 65px;
  line-height: 76px;
}
.c-section-heading._line::before {
  width: calc(50vw - 50%);
  top: 60px;
}
.c-section-heading._centered {
  text-align: center;
  padding-bottom: 22px;
  position: relative;
}
.c-section-heading._centered::after {
  position: absolute;
  content: "";
  bottom: 0;
  width: 88px;
  height: 1px;
  background-color: #023994;
  left: calc(50% - 44px);
}
.c-section-heading._centered ._main {
  font-size: 70px;
  line-height: 82px;
}
@media (max-width: 1275px) {
  .c-section-heading._line {
    padding-left: var(--paddingInline);
  }
  .c-section-heading._line::before {
    width: 15px;
    left: 0;
  }
}
@media (max-width: 767px) {
  .c-section-heading {
    margin-bottom: 20px;
  }
  .c-section-heading._centered {
    padding-bottom: 0;
  }
  .c-section-heading._centered::after {
    width: 40px;
    left: calc(50% - 20px);
  }
  .c-section-heading._centered ._main {
    font-size: 30px;
    line-height: 1.3;
  }
  .c-section-heading ._shoulder {
    font-size: 12px;
    line-height: 1.3;
  }
  .c-section-heading ._main {
    font-size: 30px;
    line-height: 1.3;
  }
  .c-section-heading._line::before {
    top: 35px;
    width: 15px;
    left: 0;
  }
}

.c-heading-type1 {
  font-weight: 500;
  color: #023994;
  font-size: 36px;
  margin-bottom: 40px;
  line-height: 1.4444444444;
}
*:has(.c-heading-type1)._line::before {
  top: 28px;
}
@media (max-width: 767px) {
  .c-heading-type1 {
    font-size: 22px;
    margin-bottom: 30px;
    line-height: 1.4545454545;
    padding-left: 50px;
  }
  *:has(.c-heading-type1)._line::before {
    top: 18px;
    width: 60px;
    left: -20px;
  }
}

.c-heading-type2 {
  font-weight: 500;
  color: #023994;
  font-size: 24px;
  margin-bottom: 40px;
  line-height: 1.4583333333;
}
.c-heading-type2._underline {
  border-bottom: 1px solid #023994;
  padding-bottom: 20px;
}
@media (max-width: 767px) {
  .c-heading-type2 {
    font-size: 20px;
    margin-bottom: 30px;
    line-height: 1.45;
  }
  .c-heading-type2._underline {
    margin-bottom: 20px;
  }
}

.c-search {
  display: flex;
  background-color: #ffffff;
  padding-block: 10px;
  padding-inline: 13px;
  border-radius: 25px;
}
.c-search input[type=text] {
  border: none;
  flex-grow: 1;
  background-color: inherit;
  padding: 0;
}
.c-search input[type=text]:focus {
  outline: none;
  box-shadow: none;
}
.c-search [type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background-color: transparent;
  border-radius: 0;
  padding: 0;
}
.c-search:has(input[type=text]:focus) {
  box-shadow: 0 0px 0px 3px rgba(101, 169, 199, 0.8);
}
@media (max-width: 767px) {
  .c-search input[type=text] {
    width: calc(100% - 30px);
  }
  .c-search [type=submit] {
    width: 30px;
  }
}

.c-selectBox select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: 1px solid #DDDDDD;
  background-color: #FFFFFF;
  font-size: 14px;
  line-height: inherit;
  padding-block: 15px;
  padding-inline: 10px;
  width: 100%;
  cursor: pointer;
}
.c-selectBox select:focus {
  outline: none;
  box-shadow: none;
}

.c-selectBox-wrapper {
  position: relative;
}
.c-selectBox-wrapper::after {
  position: absolute;
  content: "";
  width: 8px;
  height: 8px;
  right: 18px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  border-bottom: 1px solid currentColor;
  border-right: 1px solid currentColor;
}

.c-breadcrumb {
  padding-block: 20px;
  font-size: 0;
  z-index: 1;
  position: relative;
}
@media (min-width: 767.1px) {
  body:has(.p-signage._gradient) .c-breadcrumb {
    color: white;
  }
}
.c-breadcrumb li {
  font-size: 14px;
  display: inline-block;
}
.c-breadcrumb li:not(:last-child)::after {
  content: "  〉";
  display: inline-block;
  margin: 0 8px;
}
@media (max-width: 767px) {
  .c-breadcrumb {
    line-height: 2.1;
    color: inherit;
    padding-block: 9px;
  }
  .c-breadcrumb li {
    font-size: 11px;
  }
}

.pan {
  padding-block: 20px;
  font-size: 14px;
  z-index: 1;
  position: relative;
}
.pan .breadcrumbs {
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: var(--paddingInline);
  box-sizing: content-box;
}
@media (min-width: 767.1px) {
  body:has(.p-signage._gradient) .pan {
    color: white;
  }
}
@media (max-width: 767px) {
  .pan {
    line-height: 2.1;
    color: inherit;
    padding-block: 9px;
  }
  .pan span[property=itemListElement] {
    font-size: 11px;
  }
  .pan .breadcrumbs {
    overflow-x: scroll;
    white-space: nowrap;
  }
}

.c-postPager {
  display: grid;
  grid-template-columns: 160px 1fr 160px;
  align-items: center;
  justify-content: space-between;
  color: #023994;
  font-weight: 500;
  font-size: 16px;
  margin-top: 70px;
}
@media (max-width: 767px) {
  .c-postPager {
    grid-template-areas: "buttons" "back";
    grid-template-columns: 1fr;
    row-gap: 40px;
  }
}

.c-postPager-back {
  display: flex;
  gap: 40px;
  align-items: center;
}
.c-postPager-back .c-arrow-link {
  transform: scale(-1, 1);
}
.c-postPager-back:hover .c-arrow-link {
  transform: scale(-1, 1) translateX(10px);
}
@media (max-width: 767px) {
  .c-postPager-back {
    grid-area: back;
    gap: 20px;
    width: -moz-max-content;
    width: max-content;
    justify-self: center;
  }
}

.c-postPager-buttons {
  display: flex;
  justify-content: center;
  gap: 40px;
}
@media (max-width: 767px) {
  .c-postPager-buttons {
    grid-area: buttons;
  }
}

.c-postPager-previous {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}
.c-postPager-previous img {
  transform: scale(-1, 1);
}

.c-postPager-next {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}

.nav-links {
  display: flex;
  justify-content: center;
  gap: 40px;
}
@media (max-width: 767px) {
  .nav-links {
    grid-area: buttons;
  }
}

.nav-previous a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}
.nav-previous a img {
  transform: scale(-1, 1);
}

.nav-next a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}

.c-pager {
  margin-block: 60px;
}
.c-pager .wp-pagenavi {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: center;
}
.c-pager .wp-pagenavi .current, .c-pager .wp-pagenavi .page {
  color: #023994;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 500;
  border: 2px solid currentColor;
  background-color: #FFFFFF;
}
.c-pager .wp-pagenavi .current {
  background-color: #023994;
  color: #FFFFFF;
}
.c-pager .wp-pagenavi .previouspostslink, .c-pager .wp-pagenavi .nextpostslink, .c-pager .wp-pagenavi .first, .c-pager .wp-pagenavi .last {
  font-size: 0;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-repeat: no-repeat;
  background-position: center;
}
.c-pager .wp-pagenavi .previouspostslink:hover, .c-pager .wp-pagenavi .nextpostslink:hover, .c-pager .wp-pagenavi .first:hover, .c-pager .wp-pagenavi .last:hover {
  opacity: 0.7;
}
.c-pager .wp-pagenavi .previouspostslink {
  background-image: url("../images/arrow-next.svg");
  background-size: 100%;
  transform: scale(-1, 1);
}
.c-pager .wp-pagenavi .nextpostslink {
  background-image: url("../images/arrow-next.svg");
  background-size: 100%;
}
.c-pager .wp-pagenavi .first {
  background-image: url("../images/arrow-last.svg");
  background-size: 100%;
  transform: scale(-1, 1);
}
.c-pager .wp-pagenavi .last {
  background-image: url("../images/arrow-last.svg");
  background-size: 100%;
}
@media (max-width: 767px) {
  .c-pager {
    margin-block: 30px;
  }
  .c-pager .wp-pagenavi .previouspostslink, .c-pager .wp-pagenavi .nextpostslink, .c-pager .wp-pagenavi .current, .c-pager .wp-pagenavi .page, .c-pager .wp-pagenavi .first, .c-pager .wp-pagenavi .last {
    width: 40px;
    height: 40px;
  }
}

.c-swiper-controls {
  --swiper-navigation-size: 56px;
  --swiper-pagination-bullet-horizontal-gap: 0;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-size: 10px;
  --swiper-pagination-color: #023994;
  --swiper-pagination-bullet-inactive-color: #D9D9D9;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  margin-top: 60px;
}
.c-swiper-controls:empty {
  display: none;
}
.c-swiper-controls .swiper-pagination,
.c-swiper-controls .swiper-button-prev,
.c-swiper-controls .swiper-button-next {
  position: static;
  margin-top: 0;
}
.c-swiper-controls .swiper-button-prev {
  transform: scale(-1, 1);
}
.c-swiper-controls .swiper-pagination {
  width: auto;
  display: flex;
  gap: 25px;
}
.c-swiper-controls .swiper-pagination-lock {
  display: none;
}
.c-swiper-controls:has(.swiper-pagination-lock) {
  display: none;
}
.c-swiper-controls .slick-dots, .c-swiper-controls .slick-prev, .c-swiper-controls .slick-next {
  position: static;
}
.c-swiper-controls .slick-dots {
  width: auto;
  display: flex;
  gap: 25px;
}
.c-swiper-controls .slick-dots li {
  margin: 0;
  width: var(--swiper-pagination-bullet-size);
  height: var(--swiper-pagination-bullet-size);
}
.c-swiper-controls .slick-dots li button {
  width: 100%;
  height: 100%;
  padding: 0;
  border-radius: 50%;
  background-color: var(--swiper-pagination-bullet-inactive-color);
}
.c-swiper-controls .slick-dots li button.slick-active {
  background-color: var(--swiper-pagination-color);
}
.c-swiper-controls .slick-dots li button::before {
  content: none;
}
.c-swiper-controls .slick-dots li.slick-active button {
  background-color: var(--swiper-pagination-color);
}
.c-swiper-controls .slick-next, .c-swiper-controls .slick-prev {
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  transform: translate(0, 0);
}
.c-swiper-controls .slick-next::before, .c-swiper-controls .slick-prev::before {
  opacity: 1;
  width: 100%;
  height: 100%;
  display: block;
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNTYiIHZpZXdCb3g9IjAgMCA1NiA1NiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSIyOCIgY3k9IjI4IiByPSIyNyIgdHJhbnNmb3JtPSJyb3RhdGUoOTAgMjggMjgpIiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSIjMDIzOTk0IiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJNMjYuMDY4IDM1Ljg2MzhMMzQgMjcuOTMxOEwyNi4wNjggMTkuOTk5OCIgc3Ryb2tlPSIjMDIzOTk0IiBzdHJva2Utd2lkdGg9IjIiLz48L3N2Zz4=");
}
.c-swiper-controls .slick-prev::before {
  transform: scale(-1, 1);
}
@media (max-width: 767px) {
  .c-swiper-controls {
    margin-top: 20px;
    --swiper-navigation-size: 24px;
    --swiper-pagination-bullet-size: 4px;
    gap: 16px;
  }
  .c-swiper-controls .swiper-pagination {
    gap: 10px;
  }
  .c-swiper-controls .slick-dots {
    gap: 10px;
  }
}

a.c-link-box,
.p-rte .c-link-box a:not(.c-link-box) {
  width: min(333px, 100%);
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  min-height: 78px;
  padding-inline: 20px;
  border-bottom: 1px solid #DDDDDD;
  box-shadow: none;
}
a.c-link-box::after,
.p-rte .c-link-box a:not(.c-link-box)::after {
  content: "";
  width: 39px;
  height: 8px;
  flex-basis: 39px;
  background: url("../images/arrow-link-blue.svg") no-repeat center;
  background-size: contain;
  justify-self: flex-end;
  transition: transform 0.3s;
}
@media (any-hover: hover) {
  a.c-link-box:hover::after,
  .p-rte .c-link-box a:not(.c-link-box):hover::after {
    transform: translateX(10px);
  }
}
a.c-link-box[href$=".pdf"], a.c-link-box[href$=".doc"], a.c-link-box[href$=".docx"], a.c-link-box[href$=".xls"], a.c-link-box[href$=".xlsx"],
.p-rte .c-link-box a:not(.c-link-box)[href$=".pdf"],
.p-rte .c-link-box a:not(.c-link-box)[href$=".doc"],
.p-rte .c-link-box a:not(.c-link-box)[href$=".docx"],
.p-rte .c-link-box a:not(.c-link-box)[href$=".xls"],
.p-rte .c-link-box a:not(.c-link-box)[href$=".xlsx"] {
  grid-template-columns: auto auto 1fr;
}
a.c-link-box[href$=".pdf"]::before, a.c-link-box[href$=".doc"]::before, a.c-link-box[href$=".docx"]::before, a.c-link-box[href$=".xls"]::before, a.c-link-box[href$=".xlsx"]::before,
.p-rte .c-link-box a:not(.c-link-box)[href$=".pdf"]::before,
.p-rte .c-link-box a:not(.c-link-box)[href$=".doc"]::before,
.p-rte .c-link-box a:not(.c-link-box)[href$=".docx"]::before,
.p-rte .c-link-box a:not(.c-link-box)[href$=".xls"]::before,
.p-rte .c-link-box a:not(.c-link-box)[href$=".xlsx"]::before {
  content: "";
  margin-right: 10px;
  background-size: contain;
}
a.c-link-box[href$=".pdf"]::before,
.p-rte .c-link-box a:not(.c-link-box)[href$=".pdf"]::before {
  width: 16px;
  height: 20px;
  flex-basis: 16px;
  background: url("../images/icon-pdf.svg") no-repeat center center;
}
a.c-link-box[href$=".doc"]::before, a.c-link-box[href$=".docx"]::before,
.p-rte .c-link-box a:not(.c-link-box)[href$=".doc"]::before,
.p-rte .c-link-box a:not(.c-link-box)[href$=".docx"]::before {
  width: 22px;
  height: 20px;
  flex-basis: 22px;
  background: url("../images/icon-word.svg") no-repeat center center;
}
a.c-link-box[href$=".xls"]::before, a.c-link-box[href$=".xlsx"]::before,
.p-rte .c-link-box a:not(.c-link-box)[href$=".xls"]::before,
.p-rte .c-link-box a:not(.c-link-box)[href$=".xlsx"]::before {
  width: 21px;
  height: 20px;
  flex-basis: 21px;
  background: url("../images/icon-excel.svg") no-repeat center center;
}
@media (max-width: 767px) {
  a.c-link-box,
  .p-rte .c-link-box a:not(.c-link-box) {
    font-size: 14px;
    min-height: 50px;
    padding-inline: 0;
  }
}

/* ====================================
  下層ページ共通
 ==================================== */
.p-suggest {
  position: absolute;
  bottom: 100%;
  left: 0;
}

.p-suggest-button {
  color: white;
  background-color: #F8771A;
}
.p-suggest-button:visited {
  color: white;
}

.p-firstview-inner {
  position: relative;
}

.p-firstview-search {
  position: absolute;
  bottom: 37px;
  right: var(--paddingInline);
}
.p-firstview-search .c-search {
  height: 72px;
  border-radius: 36px;
  width: 273px;
  align-items: center;
  padding-inline: 24px;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.25);
}
.p-firstview-search .p-gsc form.gsc-search-box {
  width: 273px;
  align-items: center;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.25);
  transition: width 0.3s ease;
}
.p-firstview-search .p-gsc table.gsc-search-box {
  border-radius: 36px;
  height: 72px;
  padding-inline: 24px;
  padding-inline: 50px 30px;
  transition: padding-inline 0.3s ease;
}
.p-firstview-search .p-gsc input.gsc-input::-moz-placeholder {
  color: #023994;
}
.p-firstview-search .p-gsc input.gsc-input::placeholder {
  color: #023994;
}
.p-firstview-search .p-gsc form.gsc-search-box:has(input.gsc-input:focus) {
  width: 400px;
}
.p-firstview-search .p-gsc table.gsc-search-box:has(input.gsc-input:focus) {
  padding-inline: 30px 30px;
}
.p-firstview-search .p-gsc input.gsc-input:focus::-moz-placeholder {
  color: #ABABAB;
}
.p-firstview-search .p-gsc input.gsc-input:focus::placeholder {
  color: #ABABAB;
}
.p-firstview-search .c-search-input::-moz-placeholder {
  color: #023994;
}
.p-firstview-search .c-search-input::placeholder {
  color: #023994;
}
@media (max-width: 767px) {
  .p-firstview-search {
    display: none;
  }
}

.p-firstview-image img {
  width: 100%;
}

.p-notification {
  padding-block: 60px;
  background-color: #FFFCEC;
}
@media (max-width: 767px) {
  .p-notification {
    padding-block: 30px;
  }
}

.p-notification-cols {
  display: grid;
  grid-template-columns: auto 1fr;
  max-width: 1000px;
  gap: 26px;
}
@media (max-width: 767px) {
  .p-notification-cols {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

.p-notification-heading {
  font-weight: 700;
  padding-top: 10px;
}
.p-notification-heading .c-icon-notification {
  margin-right: 10px;
}
.p-notification-heading span {
  vertical-align: middle;
}
@media (max-width: 767px) {
  .p-notification-heading {
    padding-top: 0;
  }
}

.p-notification-item {
  border-bottom: 1px solid #000000;
  font-size: 14px;
}
.p-notification-item a {
  display: block;
  padding: 12px 9px;
}
@media (max-width: 767px) {
  .p-notification-item a {
    padding: 16px 0;
  }
}

.p-specialsPortal {
  padding-block: 90px;
}
@media (max-width: 767px) {
  .p-specialsPortal {
    padding-block: 50px;
  }
}

.p-specialsPortal-carousel {
  overflow: hidden;
}
.p-specialsPortal-carousel .swiper {
  margin-left: calc(50vw - 630px);
  overflow: visible;
}
.p-specialsPortal-carousel .swiper-slide {
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.25);
  width: 378px;
}
.p-specialsPortal-carousel .swiper-slide img {
  width: 100%;
}
.p-specialsPortal-carousel .slick-track {
  padding-bottom: 8px; /* To avoid cutting off box-shadow */
}
.p-specialsPortal-carousel .slick-slide {
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.25);
  width: 378px;
  margin-right: 50px;
}
.p-specialsPortal-carousel .slick-slide img {
  width: 100%;
}
@media (max-width: 1260px) {
  .p-specialsPortal-carousel .swiper {
    margin-left: var(--paddingInline);
  }
}
@media (max-width: 767px) {
  .p-specialsPortal-carousel .swiper-slide {
    width: 200px;
    margin-right: 16px;
  }
  .p-specialsPortal-carousel .slick-slide {
    width: 200px;
    margin-right: 16px;
  }
}

.p-specialsPortal-slick:not(.slick-initialized) {
  display: flex;
  justify-content: center;
  gap: 50px;
  max-width: 1400px;
  margin-inline: auto;
  padding-inline: var(--paddingInline);
  box-sizing: content-box;
}
.p-specialsPortal-slick:not(.slick-initialized) > * {
  width: 379px;
}
@media (min-width: 767.1px) {
  .p-specialsPortal-slick {
    margin-left: 70px;
  }
  .p-specialsPortal-slick .c-swiper-controls {
    margin-left: -35px;
  }
}

.p-eventsPortal {
  padding-block: 90px;
  background-color: #EFF5FF;
}
@media (max-width: 767px) {
  .p-eventsPortal {
    padding-block: 50px;
  }
}

.p-eventsPortal-list {
  display: flex;
  gap: 22px 67px;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .p-eventsPortal-list {
    flex-direction: column;
    gap: 6px;
  }
}

.p-eventsPortal-item {
  display: flex;
  flex-basis: calc((100% - 67px) / 2);
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.25);
}

.p-eventsPortal-duration {
  background-color: #023994;
  padding: 30px 20px;
  color: white;
  font-weight: 700;
  flex-basis: 210px;
}
.p-eventsPortal-duration ._year {
  font-size: 20px;
}
.p-eventsPortal-duration ._date {
  font-size: 38px;
  display: flex;
  gap: 5px;
  align-items: center;
  letter-spacing: -0.04em;
}
.p-eventsPortal-duration ._date span:first-child:not(:only-child) {
  transform: translateY(-0.05em);
}
.p-eventsPortal-duration ._date span:last-child:not(:only-child) {
  font-size: 18px;
  height: 34px;
  line-height: 31px;
  line-height: 1.62;
  border: 1px solid currentColor;
  border-radius: 17px;
  padding-inline: 7px 9px;
  min-width: 34px;
  text-align: center;
  width: -moz-max-content;
  width: max-content;
}
@media (max-width: 767px) {
  .p-eventsPortal-duration {
    padding: 11px;
    flex-basis: 107px;
  }
  .p-eventsPortal-duration ._year {
    font-size: 12px;
    line-height: 1.666666;
  }
  .p-eventsPortal-duration ._date {
    font-size: 18px;
    letter-spacing: -0.05em;
    line-height: 1.2;
  }
  .p-eventsPortal-duration ._date span:last-child:not(:only-child) {
    padding-inline: 3px 4px;
    font-size: 10px;
    font-size: 8px;
    height: 18px;
    line-height: 15px;
    border-radius: 10px;
    min-width: 18px;
  }
}

.p-eventsPortal-title {
  flex-basis: calc(100% - 210px);
  flex-grow: 1;
  background-color: white;
}
.p-eventsPortal-title a {
  display: block;
  height: 100%;
  display: flex;
  align-items: center;
  padding: 40px;
}
@media (max-width: 767px) {
  .p-eventsPortal-title {
    font-size: 14px;
    line-height: 1.3;
    flex-basis: calc(100% - 107px);
  }
  .p-eventsPortal-title a {
    padding: 20px 15px;
  }
}

.p-eventsPortal-button {
  margin-top: 70px;
  text-align: center;
}
@media (max-width: 767px) {
  .p-eventsPortal-button {
    margin-top: 20px;
  }
}

.p-pickUpPortal {
  padding-block: 90px;
  background: url("../images/pickup-bg.webp") no-repeat right top;
  background-size: auto 100%;
}
.p-pickUpPortal .slick-slide {
  margin-right: 40px;
  padding-bottom: 10px;
}
@media (max-width: 767px) {
  .p-pickUpPortal {
    padding-block: 50px;
    background-image: url("../images/pickup-bg_sp.png");
  }
  .p-pickUpPortal .swiper {
    margin-left: var(--paddingInline);
  }
  .p-pickUpPortal .slick-slide {
    margin-right: 20px;
  }
}

.p-pickUpPortal-slick:not(.slick-initialized) {
  display: flex;
  justify-content: center;
  gap: 40px;
  max-width: 1400px;
  margin-inline: auto;
  padding-inline: var(--paddingInline);
  box-sizing: content-box;
}
@media (max-width: 767px) {
  .p-pickUpPortal-slick:not(.slick-initialized) {
    gap: 20px;
  }
}

.p-pickUpPortal-slide {
  width: 300px;
  transition: opacity 0.3s ease;
}
@media (max-width: 767px) {
  .p-pickUpPortal-slide {
    width: 250px;
  }
}
.slick-initialized .p-pickUpPortal-slide:not(.slick-active) {
  opacity: 0.5;
}

.p-pickUp-card a {
  display: block;
  box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.25);
}

.p-pickUp-date {
  font-weight: 700;
  margin-bottom: 5px;
}
@media (max-width: 767px) {
  .p-pickUp-date {
    font-size: 14px;
    line-height: 1.3;
  }
}

.p-pickUp-title {
  line-clamp: 2;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 3em;
}
@media (max-width: 767px) {
  .p-pickUp-title {
    font-size: 14px;
    line-height: 1.3;
  }
}

.p-pickUp-tag {
  margin-bottom: 7px;
}
.p-pickUp-tag span {
  font-family: "Noto Sans JP", "Karla", sans-serif;
  font-weight: 700;
  display: inline-block;
  padding: 4px 8px;
  color: #F8771A;
  border: 1px solid #F8771A;
  padding-block: 1px;
  padding-inline: 10px;
  border-radius: 14px;
}
@media (max-width: 767px) {
  .p-pickUp-tag {
    font-size: 10px;
    margin-bottom: 6px;
  }
  .p-pickUp-tag span {
    padding-block: 2px;
  }
}

.p-pickUp-thumb {
  aspect-ratio: 3/2;
}
.p-pickUp-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-pickUp-content {
  padding: 16px 20px;
  background-color: white;
}
@media (max-width: 767px) {
  .p-pickUp-content {
    padding: 16px 10px;
  }
}

.p-whatsNew {
  padding-block: 90px;
  background-color: #EFF5FF;
}
@media (max-width: 767px) {
  .p-whatsNew {
    padding-block: 50px;
  }
}

.p-whatsNew-swicher {
  max-width: 1000px;
  margin-inline: auto;
  display: flex;
  gap: 15px;
  margin-bottom: 35px;
}
.p-whatsNew-swicher button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  background-color: white;
  border: 1px solid #F8771A;
  color: #F8771A;
  font-weight: 500;
  font-size: 15px;
  line-height: 1;
  padding-block: 8px 9px;
  border-radius: 17px;
  padding-inline: 14px;
}
.p-whatsNew-swicher ._current button {
  color: white;
  background-color: #F8771A;
}
@media (max-width: 767px) {
  .p-whatsNew-swicher {
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 30px;
  }
  .p-whatsNew-swicher button {
    font-size: 14px;
    padding-block: 6px 6px;
  }
}

.p-whatsNew-list {
  border-top: 4px solid #023994;
}

.p-whatsNew-item:not(:last-child) {
  border-bottom: 1px solid #000000;
}
@media (any-hover: hover) {
  .p-whatsNew-item:hover {
    opacity: 1;
  }
}
.p-whatsNew-item {
  display: flex;
  gap: 30px;
  padding-inline: 100px;
  padding-block: 30px;
}
@media (max-width: 767px) {
  .p-whatsNew-item {
    flex-wrap: wrap;
    gap: 14px;
    padding-inline: 0;
    padding-block: 13px;
  }
}

.p-whatsNew-date {
  color: #023994;
  font-weight: 500;
  line-height: 34px;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .p-whatsNew-date {
    line-height: 23px;
  }
}

.p-whatsNew-bullet {
  flex-basis: 200px;
  flex-shrink: 0;
  text-align: center;
}
.p-whatsNew-bullet span {
  background-color: white;
  border: 1px solid currentColor;
  color: #F8771A;
  font-weight: 500;
  font-size: 15px;
  line-height: 1;
  padding-block: 8px 9px;
  border-radius: 17px;
  padding-inline: 14px;
}
@media (max-width: 767px) {
  .p-whatsNew-bullet {
    flex-basis: auto;
    text-align: left;
  }
  .p-whatsNew-bullet span {
    font-size: 10px;
    padding-block: 5px 5px;
  }
}

@media (any-hover: hover) {
  a:hover .p-whatsNew-title {
    text-decoration: underline;
  }
}
@media (max-width: 767px) {
  .p-whatsNew-title {
    flex-basis: 100%;
  }
}

.p-whatsNew-button {
  margin-top: 50px;
  text-align: center;
}

.p-aboutPortal {
  padding-block: 110px 80px;
  background: url("../images/aboutPortal-bg.jpg") no-repeat center/cover;
}
@media (max-width: 767px) {
  .p-aboutPortal {
    padding-block: 50px;
    background: url("../images/aboutPortal-bg-sp.jpg") no-repeat center/cover;
  }
}

.p-aboutPortal-lead1 {
  font-size: 26px;
  text-align: center;
  font-weight: 500;
  line-height: 1.4615384615;
  margin-bottom: 36px;
}
@media (max-width: 767px) {
  .p-aboutPortal-lead1 {
    font-size: 20px;
    line-height: 1.3;
    margin-bottom: 17px;
  }
}

.p-aboutPortal-lead2 {
  text-align: center;
  font-weight: 500;
}
@media (max-width: 767px) {
  .p-aboutPortal-lead2 {
    font-size: 14px;
    line-height: 1.3;
    text-align: left;
  }
}

.p-aboutPortal-list {
  display: flex;
  gap: 30px;
  margin-top: 230px;
}
@media (max-width: 767px) {
  .p-aboutPortal-list {
    flex-direction: column;
    gap: 2px;
    margin-top: 157px;
  }
}

.p-aboutPortal-item {
  position: relative;
  flex-basis: calc((100% - 60px) / 3);
  padding: 30px;
}
.p-aboutPortal-item:hover {
  opacity: 1;
}
.p-aboutPortal-item._item01::before {
  background-image: url("../images/aboutPortal-item01.jpg");
}
.p-aboutPortal-item._item02::before {
  background-image: url("../images/aboutPortal-item02.jpg?123");
}
.p-aboutPortal-item._item03::before {
  background-image: url("../images/aboutPortal-item03.jpg");
}
.p-aboutPortal-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-size: cover;
  z-index: 0;
}
.p-aboutPortal-item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(255, 255, 255);
  z-index: 0;
  transition: background-color 0.3s ease;
}
.p-aboutPortal-item img {
  grid-area: button;
  align-self: center;
}
@media (any-hover: hover) {
  .p-aboutPortal-item:hover::after {
    background-color: rgba(255, 255, 255, 0);
  }
  .p-aboutPortal-item:hover {
    color: white;
  }
  .p-aboutPortal-item:hover:visited {
    color: white;
  }
}
@media (max-width: 767px) {
  .p-aboutPortal-item {
    padding: 20px;
    color: white;
    flex-basis: 140px;
  }
  .p-aboutPortal-item:visited {
    color: white;
  }
  .p-aboutPortal-item::after {
    content: none;
  }
  .p-aboutPortal-item img {
    width: 33px;
    align-self: flex-end;
    justify-self: flex-end;
    position: relative;
    right: -10px;
    bottom: -10px;
  }
  .p-aboutPortal-item._item01::before {
    background-image: url("../images/aboutPortal-item01_sp.jpg");
  }
  .p-aboutPortal-item._item02::before {
    background-image: url("../images/aboutPortal-item02_sp.jpg?123");
  }
  .p-aboutPortal-item._item03::before {
    background-image: url("../images/aboutPortal-item03_sp.jpg");
  }
}

.p-aboutPortal-content {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-areas: "title title" "text button";
  row-gap: 20px;
  height: 100%;
}
@media (max-width: 767px) {
  .p-aboutPortal-content {
    row-gap: 10px;
    -moz-column-gap: 28px;
         column-gap: 28px;
  }
}

.p-aboutPortal-title {
  font-size: 24px;
  text-align: center;
  font-weight: 700;
  grid-area: title;
}
@media (max-width: 767px) {
  .p-aboutPortal-title {
    font-size: 16px;
    text-align: left;
    line-height: 1.3;
  }
}

.p-aboutPortal-text {
  font-size: 18px;
  font-weight: 500;
  grid-area: text;
}
@media (max-width: 767px) {
  .p-aboutPortal-text {
    font-size: 12px;
    line-height: 1.3;
  }
}

.p-departmentPortal {
  padding-block: 80px;
  background: url("../images/departmentPortal-bg.webp") no-repeat center/cover;
}
.p-departmentPortal .c-section-heading {
  color: white;
}
.p-departmentPortal .c-section-heading ._shoulder {
  color: white;
}
.p-departmentPortal .c-section-heading::after {
  background-color: white;
}
@media (max-width: 767px) {
  .p-departmentPortal {
    padding-block: 50px;
  }
}

.p-departmentPortal-inner {
  max-width: 1000px;
}

.p-departmentPortal-search {
  display: flex;
  gap: 54px;
}
@media (max-width: 767px) {
  .p-departmentPortal-search {
    flex-direction: column;
    gap: 10px;
  }
}

.p-departmentSearch {
  background-color: white;
  padding: 35px;
  flex-basis: calc(50% - 27px);
  box-shadow: 5px 5px 8px rgba(0, 0, 0, 0.25);
}
@media (max-width: 767px) {
  .p-departmentSearch {
    padding: 20px 25px 40px;
  }
}

.p-departmentSearch-title {
  font-size: 22px;
  color: #023994;
  font-weight: 500;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .p-departmentSearch-title {
    font-size: 20px;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .p-departmentSearch-title p {
    flex-basis: 100%;
  }
}

.p-departmentSearch-text {
  font-size: 14px;
}

.p-departmentSearch-button {
  margin-top: 44px;
  text-align: center;
}
.p-departmentSearch-button .c-button {
  max-width: 275px;
  height: 56px;
}
@media (max-width: 767px) {
  .p-departmentSearch-button {
    font-size: 18px;
  }
}

.p-magazinePortal {
  padding-block: 80px 120px;
  background-color: #EFF5FF;
  overflow: hidden;
}
@media (max-width: 767px) {
  .p-magazinePortal {
    padding-block: 50px;
  }
}

.p-magazinePortal-lead {
  display: flex;
  padding-right: 194px;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 63px;
}
@media (max-width: 767px) {
  .p-magazinePortal-lead {
    font-size: 14px;
    line-height: 1.3;
    margin-bottom: 30px;
    padding-right: 0;
  }
  .p-magazinePortal-lead .p-magazinePortal-button {
    display: none;
  }
}

.p-magazinePortal-button .c-button {
  width: 277px;
  height: 56px;
}
.p-magazinePortal-button .c-arrow-link {
  width: 37px;
}
.c-inner > .p-magazinePortal-button {
  display: none;
}
@media (max-width: 767px) {
  .c-inner > .p-magazinePortal-button {
    display: block;
    margin-top: 30px;
    text-align: center;
  }
}

.p-magazinePortal-wrapper:not(:has(.swiper-initialized)) .p-magazinePortal-lead {
  padding-right: 0;
}
@media (min-width: 767.1px) {
  .p-magazinePortal-wrapper {
    position: relative;
  }
  .p-magazinePortal-wrapper .swiper-pagination {
    display: none;
  }
  .p-magazinePortal-wrapper .c-swiper-controls {
    position: absolute;
    right: 0;
    top: 0;
    gap: 20px;
    margin-top: 0;
  }
}

.p-magazinePortal-swiper {
  overflow: visible;
  position: static;
}
.p-magazinePortal-swiper:not(.swiper-initialized) .swiper-wrapper {
  display: flex;
  gap: 30px;
}
.p-magazinePortal-swiper:not(.swiper-initialized) .swiper-slide {
  flex-basis: calc((100% - 60px) / 3);
}
.p-magazinePortal-swiper:not(.swiper-initialized) .c-swiper-controls {
  display: none;
}

.p-magazinePortal-slick .slick-slide {
  margin-right: 30px;
}
.p-magazinePortal-slick .slick-list {
  overflow: visible;
}
.p-magazinePortal-slick:not(.slick-initialized) {
  display: flex;
  gap: 30px;
  max-width: 1400px;
  margin-inline: auto;
  padding-inline: var(--paddingInline);
  box-sizing: content-box;
}
@media (min-width: 767.1px) {
  .p-magazinePortal-slick {
    position: static;
  }
}
@media (max-width: 767px) {
  .p-magazinePortal-slick .slick-slide {
    margin-right: 20px;
  }
  .p-magazinePortal-slick:not(.slick-initialized) {
    gap: 20px;
  }
}

.p-magazinePortal-slide {
  padding-right: 8px;
  padding-bottom: 8px;
  width: 362px;
}
.p-magazinePortal-slide a {
  display: block;
  background-color: white;
  box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, 0.25);
  padding: 24px 27px 34px;
}
@media (max-width: 767px) {
  .p-magazinePortal-slide {
    width: 223px;
  }
  .p-magazinePortal-slide a {
    padding: 15px;
  }
}

.p-magazine-thumb {
  margin-bottom: 14px;
}
@media (max-width: 767px) {
  .p-magazine-thumb {
    margin-bottom: 10px;
  }
}

.p-magazine-title {
  font-weight: 500;
}
@media (max-width: 767px) {
  .p-magazine-title {
    font-size: 14px;
    line-height: 1.3;
  }
}

.p-contentsPortal {
  padding-block: 83px 55px;
  background-color: #023994;
  overflow: hidden;
}
.p-contentsPortal:has(.swiper-pagination-lock) {
  padding-block: 83px;
}
.p-contentsPortal .c-swiper-controls .slick-dots li button {
  background-color: #9C9C9C;
}
.p-contentsPortal .c-swiper-controls .slick-dots li.slick-active button {
  background-color: white;
}
@media (max-width: 767px) {
  .p-contentsPortal {
    padding-block: 30px;
  }
}

.p-contentsPortal-swiper {
  margin-inline: calc((var(--document-width) - 1600px) / 2);
  width: 1600px;
  overflow: visible;
}
.p-contentsPortal-swiper .c-swiper-controls {
  --swiper-pagination-color: white;
}
@media (max-width: 767px) {
  .p-contentsPortal-swiper {
    margin-inline: calc((var(--document-width) - 500px) / 2);
    width: 500px;
  }
}

.p-contentsPortal-slick .slick-slide {
  margin-inline: 25px;
  width: 280px;
}
.p-contentsPortal-slick:not(.slick-initialized) {
  display: flex;
  justify-content: center;
  gap: 50px;
  max-width: 1400px;
  margin-inline: auto;
  padding-inline: var(--paddingInline);
  box-sizing: content-box;
}
@media (max-width: 767px) {
  .p-contentsPortal-slick:not(.slick-initialized) {
    gap: 10px;
  }
  .p-contentsPortal-slick .slick-slide {
    margin-inline: 5px;
  }
}

.p-contentsPortal-slide {
  width: 280px;
}
@media (max-width: 767px) {
  .p-contentsPortal-slide {
    width: 163px;
  }
}

.p-facilityPortal {
  padding-block: 80px 100px;
  background-color: #EFF5FF;
}
@media (max-width: 767px) {
  .p-facilityPortal {
    padding-block: 50px;
  }
}

.p-facilityPortal-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  grid-auto-columns: auto;
  gap: 40px 5%;
}
@media (max-width: 767px) {
  .p-facilityPortal-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 13px;
  }
}

.p-facilityPortal-item {
  font-size: 19px;
  font-weight: 500;
}
.p-facilityPortal-item img {
  width: 100%;
  margin-bottom: 22px;
}
@media (max-width: 767px) {
  .p-facilityPortal-item {
    font-size: 14px;
    line-height: 1.3;
  }
  .p-facilityPortal-item img {
    margin-bottom: 8px;
  }
}

.p-followUs {
  padding-block: 65px;
}
@media (max-width: 767px) {
  .p-followUs {
    padding-block: 30px 35px;
  }
}

.p-followUs-inner {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .p-followUs-inner {
    flex-direction: column;
    gap: 10px;
    align-items: center;
  }
}

.p-followUs-heading {
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-size: 50px;
}
@media (max-width: 767px) {
  .p-followUs-heading {
    font-size: 20px;
  }
}

.p-followUs-list {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: space-between;
  flex-grow: 1;
  max-width: 452px;
}
@media (max-width: 767px) {
  .p-followUs-list {
    gap: 35px;
    max-width: 272px;
  }
}

.p-followUs-button {
  width: 290px;
}
@media (max-width: 767px) {
  .p-followUs-button {
    margin-top: 24px;
    width: 188px;
  }
  .p-followUs-button .c-button {
    height: 35px;
  }
}

.p-signage {
  display: flex;
}

._gradient .p-signage-content {
  background-image: linear-gradient(-90deg, #2E4FB5 0%, #3797FD 100%);
  min-height: 369px;
}
.p-signage-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex-basis: 42.8571428571%;
  flex-grow: 1;
}
.p-signage-content:only-child {
  flex-basis: 100%;
}
@media (max-width: 767px) {
  ._gradient .p-signage-content {
    background-image: linear-gradient(-90deg, #2E4FB5 0%, #3797FD 100%);
    min-height: 180px;
  }
}

.p-signage-image {
  max-width: 800px;
  flex-basis: 57.1428571429%;
  width: 100%;
}
.p-signage-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .p-signage-image {
    flex-basis: 34.6666666667%;
    aspect-ratio: 130/180;
  }
}

.p-signage-heading {
  margin-left: calc((var(--document-width) - 1260px) / 2);
  margin-left: var(--margin-diff, calc(50vw - 50%));
  padding-left: var(--paddingInline);
}
.p-signage-heading ._main {
  display: block;
  font-weight: 500;
  font-family: "Karla", sans-serif;
  font-size: 65px;
  line-height: 1.1692307692;
}
.p-signage-heading ._main:only-child {
  font-family: inherit;
}
.p-signage-heading ._shoulder {
  display: block;
  font-size: 18px;
  font-weight: 400;
  margin-top: 10px;
}
._gradient .p-signage-heading {
  color: white;
}
@media (min-width: 767.1px) {
  .p-signage-heading ._main:only-child {
    font-size: 50px;
  }
}
@media (max-width: 767px) {
  .p-signage-heading ._main {
    font-size: 28px;
    line-height: 1.1785714286;
  }
  .p-signage-heading ._shoulder {
    font-size: 16px;
  }
}

.p-rte ._cols:not(.wp-block-group),
.p-rte ._cols > .wp-block-group__inner-container {
  display: grid;
  grid-auto-flow: column;
  gap: 40px;
}
@media (min-width: 767.1px) {
  .p-rte ._cols:not(.wp-block-group)._reverse > *:first-child,
  .p-rte ._cols > .wp-block-group__inner-container._reverse > *:first-child {
    order: 1;
  }
}
.p-rte ._cols._reverse > .wp-block-group__inner-container > *:first-child {
  order: 1;
}
.p-rte ._cols + ._cols {
  margin-top: 40px;
}
.p-rte ._section + ._section {
  margin-top: 80px;
}
.p-rte ._image img {
  width: 100%;
}
.p-rte ._image + ._text {
  margin-top: 20px;
}
.p-rte ._text {
  width: -moz-fit-content;
  width: fit-content;
}
.p-rte p {
  line-height: 1.7;
}
.p-rte p + p {
  margin-top: 1.5em;
}
.p-rte p + div {
  margin-top: 1.5em;
}
.p-rte p img {
  margin-block: 1.5em;
}
.p-rte a:not(:has(img:only-child), .c-link-box) {
  box-shadow: 0 1px 0 0 currentColor;
  display: inline-block;
  display: inline;
}
.p-rte .c-link-box a:not(:has(img:only-child), .c-link-box) {
  box-shadow: none;
  display: grid;
}
.p-rte ._table-wrapper {
  overflow-x: auto;
  margin-top: 20px;
}
.p-rte table + table {
  margin-top: 60px;
}
.p-rte ._table:not(.wp-block-table), .p-rte table {
  table-layout: fixed;
  width: 100%;
  border-collapse: collapse;
  margin-block: 30px;
}
.p-rte ._table:not(.wp-block-table) th, .p-rte ._table:not(.wp-block-table) td, .p-rte table th, .p-rte table td {
  padding: 20px;
  border: none;
}
.p-rte ._table:not(.wp-block-table) th.border-right, .p-rte ._table:not(.wp-block-table) td.border-right, .p-rte table th.border-right, .p-rte table td.border-right {
  border-right: 1px solid #DDDDDD;
}
.p-rte ._table:not(.wp-block-table) th.border-left, .p-rte ._table:not(.wp-block-table) td.border-left, .p-rte table th.border-left, .p-rte table td.border-left {
  border-left: 1px solid #DDDDDD;
}
.p-rte ._table:not(.wp-block-table) th, .p-rte table th {
  vertical-align: middle;
  text-align: left;
  font-weight: 400;
}
.p-rte ._table:not(.wp-block-table) th:first-child:not([colspan]), .p-rte table th:first-child:not([colspan]) {
  width: 200px;
}
.p-rte ._table:not(.wp-block-table) tr, .p-rte table tr {
  border-bottom: 1px solid #DDDDDD;
}
.p-rte ._table:not(.wp-block-table) thead, .p-rte table thead {
  color: #023994;
  border-bottom: 1px solid #023994;
}
.p-rte ._table:not(.wp-block-table) thead th, .p-rte table thead th {
  font-weight: 500;
}
.p-rte table._table._blue,
.p-rte .wp-block-table._table._blue table {
  border: 1px solid #DDDDDD;
}
.p-rte table._table._blue th,
.p-rte .wp-block-table._table._blue table th {
  background-color: #EFF5FF;
  border: 1px solid #DDDDDD;
}
.p-rte table._table._blue th:not(:first-child), .p-rte table._table._blue td:not(:first-child),
.p-rte .wp-block-table._table._blue table th:not(:first-child),
.p-rte .wp-block-table._table._blue table td:not(:first-child) {
  border-left: 1px solid #DDDDDD;
}
.p-rte table._table._blue thead,
.p-rte .wp-block-table._table._blue table thead {
  color: inherit;
}
.p-rte table._table._blue thead th,
.p-rte .wp-block-table._table._blue table thead th {
  background-color: #ABC9F7;
  text-align: center;
}
.p-rte ._h1, .p-rte h1 {
  font-weight: 500;
  font-size: 48px;
  line-height: 1.4583333333;
}
.p-rte ._h2, .p-rte h2 {
  font-weight: 500;
  color: #023994;
  font-size: 36px;
  line-height: 1.4444444444;
  margin-bottom: 40px;
}
.p-rte ._h2:not(:first-child), .p-rte h2:not(:first-child) {
  margin-top: 40px;
}
.p-rte ._h2, .p-rte h2 {
  position: relative;
}
.p-rte ._h2::before, .p-rte h2::before {
  position: absolute;
  content: "";
  height: 1px;
  background-color: #023994;
  width: calc(50vw - 50% - 20px);
  left: calc(50% - 50vw);
  top: 28px;
}
.p-rte ._h3, .p-rte h3 {
  font-weight: 500;
  color: #023994;
  font-size: 24px;
  line-height: 1.4583333333;
  margin-bottom: 25px;
}
.p-rte ._h3:not(:first-child), .p-rte h3:not(:first-child) {
  margin-top: 50px;
}
.p-rte ._h3._underline, .p-rte h3._underline {
  border-bottom: 1px solid #023994;
  padding-bottom: 20px;
}
@media (max-width: 1275px) {
  .p-rte ._h2::before, .p-rte h2::before {
    width: calc(var(--paddingInline) - 10px);
    left: calc(var(--paddingInline) * -1);
  }
}
@media (max-width: 767px) {
  .p-rte ._section + ._section {
    margin-top: 50px;
  }
  .p-rte section + section {
    margin-top: 50px;
  }
  .p-rte ._cols:not(.wp-block-group),
  .p-rte ._cols > .wp-block-group__inner-container {
    grid-auto-flow: row;
    gap: 30px;
  }
  .p-rte ._table, .p-rte table {
    font-size: 10px;
  }
  .p-rte ._table th, .p-rte ._table td, .p-rte table th, .p-rte table td {
    padding-block: 10px;
    padding-inline: 0.4375em;
  }
  .p-rte ._table th:first-child, .p-rte table th:first-child {
    width: 70px;
    padding-inline: 10px;
  }
  .p-rte ._table:not(._blue) th:first-child, .p-rte table:not(._blue) th:first-child {
    padding-inline: 0 12px;
  }
  .p-rte ._table:not(.wp-block-table) th:first-child:not([colspan]), .p-rte table th:first-child:not([colspan]) {
    width: auto;
  }
  .p-rte ._h1, .p-rte h1 {
    font-size: 30px;
    line-height: 1.4333333333;
  }
  .p-rte ._h2, .p-rte h2 {
    font-size: 22px;
    line-height: 1.45;
    margin-bottom: 30px;
  }
  .p-rte ._h2::before, .p-rte h2::before {
    width: calc(var(--paddingInline) - 7px);
    top: 19px;
  }
  .p-rte ._h3, .p-rte h3 {
    font-size: 20px;
    line-height: 1.45;
    margin-bottom: 20px;
  }
}
.p-rte a[href$=".pdf"]:not(.c-link-box)::after { /* 親テーマのcommon.cssから流用 */
  content: " ";
  display: inline-block;
  width: 16px;
  height: 24px;
  background: url("../images/icon-pdf.svg") no-repeat center center;
  background-size: 13px;
  margin-left: 0.4em;
  vertical-align: bottom;
}
.p-rte a[href$=".doc"]:not(.c-link-box)::after {
  content: " ";
  display: inline-block;
  width: 22px;
  height: 20px;
  background: url("../images/icon-word.svg") no-repeat center center;
  background-size: contain;
  margin-left: 0.4em;
}
.p-rte a[href$=".docx"]:not(.c-link-box)::after {
  content: " ";
  display: inline-block;
  width: 22px;
  height: 20px;
  background: url("../images/icon-word.svg") no-repeat center center;
  background-size: contain;
  margin-left: 0.4em;
}
.p-rte a[href$=".xls"]:not(.c-link-box)::after {
  content: " ";
  display: inline-block;
  width: 21px;
  height: 20px;
  background: url("../images/icon-excel.svg") no-repeat center center;
  background-size: contain;
  margin-left: 0.4em;
}
.p-rte a[href$=".xlsx"]:not(.c-link-box)::after {
  content: " ";
  display: inline-block;
  width: 21px;
  height: 20px;
  background: url("../images/icon-excel.svg") no-repeat center center;
  background-size: contain;
  margin-left: 0.4em;
}
.p-rte a[href$=".ppt"]:not(.c-link-box)::after {
  content: " ";
  display: inline-block;
  width: 18px;
  height: 16px;
  background: url(../../../suzuka-u/image/power_icon.png) no-repeat 5px 5px;
  background-size: 11px;
}
.p-rte .c-link-box a:not(.c-link-box) {
  width: min(333px, 100%);
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  min-height: 78px;
  padding-inline: 20px;
  border-bottom: 1px solid #DDDDDD;
  box-shadow: none;
}
.p-rte .c-link-box a:not(.c-link-box)::after {
  content: "";
  width: 39px;
  height: 8px;
  flex-basis: 39px;
  background: url("../images/arrow-link-blue.svg") no-repeat center;
  background-size: contain;
  justify-self: flex-end;
  transition: transform 0.3s;
}
@media (any-hover: hover) {
  .p-rte .c-link-box a:not(.c-link-box):hover::after {
    transform: translateX(10px);
  }
}
.p-rte .c-link-box a:not(.c-link-box)[href$=".pdf"], .p-rte .c-link-box a:not(.c-link-box)[href$=".doc"], .p-rte .c-link-box a:not(.c-link-box)[href$=".docx"], .p-rte .c-link-box a:not(.c-link-box)[href$=".xls"], .p-rte .c-link-box a:not(.c-link-box)[href$=".xlsx"] {
  grid-template-columns: auto auto 1fr;
}
.p-rte .c-link-box a:not(.c-link-box)[href$=".pdf"]::before, .p-rte .c-link-box a:not(.c-link-box)[href$=".doc"]::before, .p-rte .c-link-box a:not(.c-link-box)[href$=".docx"]::before, .p-rte .c-link-box a:not(.c-link-box)[href$=".xls"]::before, .p-rte .c-link-box a:not(.c-link-box)[href$=".xlsx"]::before {
  content: "";
  margin-right: 10px;
  background-size: contain;
}
.p-rte .c-link-box a:not(.c-link-box)[href$=".pdf"]::before {
  width: 16px;
  height: 20px;
  flex-basis: 16px;
  background: url("../images/icon-pdf.svg") no-repeat center center;
}
.p-rte .c-link-box a:not(.c-link-box)[href$=".doc"]::before, .p-rte .c-link-box a:not(.c-link-box)[href$=".docx"]::before {
  width: 22px;
  height: 20px;
  flex-basis: 22px;
  background: url("../images/icon-word.svg") no-repeat center center;
}
.p-rte .c-link-box a:not(.c-link-box)[href$=".xls"]::before, .p-rte .c-link-box a:not(.c-link-box)[href$=".xlsx"]::before {
  width: 21px;
  height: 20px;
  flex-basis: 21px;
  background: url("../images/icon-excel.svg") no-repeat center center;
}
@media (max-width: 767px) {
  .p-rte .c-link-box a:not(.c-link-box) {
    font-size: 14px;
    min-height: 50px;
    padding-inline: 0;
  }
}
.p-rte .img_back:after {
  display: none !important;
}

figure.wp-block-table + figure.wp-block-table {
  margin-top: 30px;
}

/* ===========================================
  テンプレートA
=========================================== */
.c-breadcrumb + .p-tempA, .c-breadcrumb + .p-tempC {
  margin-top: -61px;
  position: relative;
  z-index: 0;
}
.pan + .p-tempA, .pan + .p-tempC {
  margin-top: -61px;
  position: relative;
  z-index: 0;
}
@media (max-width: 767px) {
  .c-breadcrumb + .p-tempA, .c-breadcrumb + .p-tempC {
    margin-top: 0;
  }
  .pan + .p-tempA, .pan + .p-tempC {
    margin-top: 0;
  }
}

.p-tempA-localNav {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  flex-wrap: wrap;
  gap: 20px;
  padding-block: 60px;
}
.p-tempA-localNav a {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #023994;
  text-align: center;
  font-size: 15px;
  font-weight: 500;
  border: 1px solid #023994;
  border-radius: 24px;
  min-height: 48px;
  transition: background-color 0.3s, color 0.3s;
}
@media (any-hover: hover) {
  .p-tempA-localNav a:hover {
    opacity: 1;
    background-color: #023994;
    color: #fff;
  }
}
@media (max-width: 767px) {
  .p-tempA-localNav {
    padding-block: 30px 50px;
    gap: 5px;
    grid-template-columns: repeat(2, 1fr);
  }
  .p-tempA-localNav a {
    font-size: 14px;
  }
}

.p-tempA-section,
.p-tempC-section {
  padding-block: 80px;
}
.p-tempA-section:nth-of-type(2n-1),
.p-tempC-section:nth-of-type(2n-1) {
  background-color: #EFF5FF;
}
@media (max-width: 767px) {
  .p-tempA-section,
  .p-tempC-section {
    padding-block: 50px;
  }
}

.p-tempA-heading {
  text-align: center;
  color: #023994;
  font-weight: 500;
  font-size: 36px;
  line-height: 1.4444444444;
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .p-tempA-heading {
    font-size: 22px;
    line-height: 1.4545454545;
    margin-bottom: 20px;
  }
}

.p-tempA-linkList {
  display: grid;
  grid-template-columns: repeat(3, minmax(calc((100% - 60px) / 4), 333px));
  -moz-column-gap: 20px;
       column-gap: 20px;
  justify-content: space-between;
}
.p-tempA-linkList li {
  border-bottom: 1px solid #DDDDDD;
}
.p-tempA-linkList a {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: space-between;
  min-height: 78px;
  padding-inline: 20px;
}
.p-tempA-linkList a .c-arrow-link {
  stroke: #023994;
  fill: none;
  width: 39px;
  height: 8px;
  flex-basis: 39px;
}
.p-tempA-linkList a > span {
  flex-basis: calc(100% - 59px);
  display: flex;
  gap: 10px;
}
.p-tempA-linkList a > span span {
  display: inline-block;
}
@media (max-width: 767px) {
  .p-tempA-linkList {
    font-size: 14px;
    grid-template-columns: 1fr;
  }
  .p-tempA-linkList a {
    min-height: 50px;
    padding-inline: 0;
  }
}

/* ===========================================
  テンプレートB
=========================================== */
.p-tempB .l-container {
  margin-top: 60px;
  padding-bottom: 80px;
}
.p-tempB .p-signage-heading ._main {
  font-size: 48px;
}
@media (max-width: 767px) {
  .p-tempB .p-signage-heading ._main {
    font-size: 24px;
  }
  .p-tempB .l-container {
    margin-top: 40px;
    padding-bottom: 50px;
  }
}

.p-tempB-title {
  font-weight: 500;
  font-size: 48px;
  line-height: 1.4583333333;
  padding-top: 50px;
  margin-bottom: 90px;
}
@media (max-width: 767px) {
  .p-tempB-title {
    font-size: 24px;
    line-height: 1.4333333333;
    padding-top: 0;
    margin-bottom: 30px;
  }
}

.p-tempB-main {
  margin-top: 60px;
}
@media (min-width: 767.1px) {
  .p-tempB-main {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    display: grid;
    grid-template-columns: minmax(auto, 820px) 250px;
  }
}

.p-chairperson ._text {
  flex-grow: 0;
}
.p-chairperson ._col:has(._image) {
  flex-shrink: 0;
}
.p-chairperson ._image img {
  width: 200px;
  margin-bottom: 20px;
}
.p-chairperson ._image figcaption span {
  font-size: 18px;
  font-weight: 500;
  margin-left: 1em;
}
@media (max-width: 767px) {
  .p-chairperson._cols {
    flex-direction: column-reverse;
  }
  .p-chairperson ._col:has(._image) {
    width: 250px;
    margin-inline: auto;
    order: -2;
  }
  .p-chairperson ._col:has(._image) img {
    width: 100%;
  }
}

/* ===========================================
  テンプレートC
=========================================== */
.p-tempC-bannerArea {
  padding-block: 80px;
  max-width: 1000px;
  margin-inline: auto;
  padding-inline: 20px;
  box-sizing: content-box;
}
@media (max-width: 767px) {
  .p-tempC-bannerArea {
    padding-block: 40px;
  }
}

.p-tempC-section .c-inner {
  display: grid;
  grid-template-areas: "heading button" "list list";
}
@media (max-width: 767px) {
  .p-tempC-section .c-inner {
    grid-template-areas: "heading" "list" "button";
    gap: 30px;
  }
}

.p-tempC-heading {
  grid-area: heading;
  color: #023994;
  font-weight: 500;
  font-size: 36px;
  line-height: 1.4444444444;
  margin-bottom: 58px;
}
.c-inner._line:has(.p-tempC-heading)::before {
  top: 28px;
}
.p-tempC-heading._line::before {
  top: 50%;
}
@media (max-width: 767px) {
  .p-tempC-heading {
    font-size: 22px;
    line-height: 1.4545454545;
    margin-bottom: 0;
    padding-left: 50px;
  }
  .c-inner._line:has(.p-tempC-heading)::before {
    top: 18px;
    width: 60px;
  }
}

.p-tempC-button {
  grid-area: button;
  justify-self: flex-end;
}
.p-tempC-button .c-button {
  width: 300px;
  height: 70px;
  border-radius: 35px;
}
@media (max-width: 767px) {
  .p-tempC-button {
    justify-self: auto;
    text-align: center;
  }
  .p-tempC-button .c-button {
    width: 280px;
    height: 60px;
    border-radius: 30px;
  }
}

.p-facultyList {
  grid-area: list;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 60px 60px;
  justify-content: space-between;
  font-weight: 500;
}
.p-facultyList a {
  display: block;
  box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, 0.25);
}
@media (any-hover: hover) {
  .p-facultyList a:hover {
    opacity: 1;
  }
  .p-facultyList a:hover .c-arrow-next {
    fill: currentColor;
    stroke: white;
  }
}
.p-facultyList .c-arrow-next {
  width: 40px;
  height: 40px;
}
.p-facultyList .c-arrow-next-no-border {
  width: 40px;
  height: 40px;
  border-width: 1.43px;
  stroke-width: 1.43px;
}
@media (max-width: 767px) {
  .p-facultyList {
    gap: 30px 10px;
    grid-template-columns: repeat(2, 1fr);
  }
  .p-facultyList .c-arrow-next {
    width: 24px;
    height: 24px;
  }
  .p-facultyList .c-arrow-next-no-border {
    width: 24px;
    height: 24px;
    border-width: 1.13px;
    stroke-width: 1.13px;
  }
}

.p-facultyList-anotation {
  font-size: 12px;
  margin-top: 10px;
  margin-left: 20px;
}
@media (max-width: 767px) {
  .p-facultyList-anotation {
    font-size: 11px;
    margin-top: 8px;
    margin-left: 0;
  }
}

.p-facultyList-thumb {
  aspect-ratio: 360/260;
}
.p-facultyList-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-facultyList-content {
  background-color: white;
  padding: 20px;
  display: grid;
  grid-template-columns: 1fr 40px;
  gap: 20px;
}
@media (max-width: 767px) {
  .p-facultyList-content {
    padding: 5px 9px;
    grid-template-columns: 1fr 24px;
    gap: 10px;
    min-height: 67px;
    align-items: center;
  }
}

.p-facultyList-title {
  align-self: center;
}
@media (max-width: 767px) {
  .p-facultyList-title {
    font-size: 12px;
    line-height: 1.4;
  }
}

/* ===========================================
  テンプレートD
=========================================== */
.p-tempD {
  padding-top: 40px;
}
.p-tempD .p-signage {
  margin-bottom: 50px;
}
.p-tempD .p-signage-heading {
  margin-left: 0;
  padding-left: 0;
  padding-block: 50px;
}
.p-tempD .p-signage-heading ._main {
  font-size: 48px;
  line-height: 1.4583333333;
}
@media (max-width: 767px) {
  .p-tempD .p-signage {
    margin-bottom: 0;
  }
  .p-tempD .p-signage-heading {
    padding-block: 0 30px;
  }
  .p-tempD .p-signage-heading ._main {
    font-size: 25px;
    line-height: 1.44;
  }
}

.p-tempD-section {
  padding-block: 80px;
  margin-top: 50px;
}
.p-tempD-section:nth-of-type(2n-1) {
  background-color: #EFF5FF;
}
@media (max-width: 767px) {
  .p-tempD-section {
    padding-block: 50px;
  }
}

.p-tempD-main {
  margin-bottom: 50px;
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: var(--paddingInline);
  box-sizing: content-box;
}
@media (min-width: 767.1px) {
  .p-tempD-main {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    display: grid;
    grid-template-columns: minmax(auto, 820px) 250px;
  }
}
@media (max-width: 767px) {
  .p-tempD-main {
    margin-top: 40px;
  }
}

/* ===========================================
  テンプレートE
=========================================== */
.p-tempE .l-contents {
  max-width: 830px;
  margin-inline: auto;
  padding-inline: var(--paddingInline);
  box-sizing: content-box;
}
.p-tempE .c-section-heading {
  text-align: center;
}

.p-tempE-search {
  margin-inline: auto;
  max-width: 1000px;
  margin-bottom: 60px;
}
.p-tempE-search .c-search {
  background-color: #F2F2F2;
  height: 52px;
  border-radius: 26px;
  padding-inline: 20px;
}
.p-tempE-search .c-search-input {
  background-color: inherit;
}
.p-tempE-search .p-gsc table.gsc-search-box {
  background-color: #F2F2F2;
}
.p-tempE-search .p-gsc form.gsc-search-box {
  max-width: 480px;
  margin-inline: auto;
}
.p-tempE-search .gsc-wrapper {
  max-width: 100%;
}
.p-tempE-search .gsc-webResult.gsc-result {
  padding-inline: 0;
}
@media (max-width: 767px) {
  .p-tempE-search {
    margin-bottom: 30px;
  }
}

.p-gsc form.gsc-search-box {
  margin-bottom: 0;
  margin-inline: 0;
  max-width: none;
}
.p-gsc table.gsc-search-box {
  margin-bottom: 0;
  background-color: white;
  height: 52px;
  border-radius: 26px;
  overflow: hidden;
  padding: 10px 20px;
}
.p-gsc .gsc-input-box {
  border: 0;
  background-color: inherit;
}
.p-gsc .gsib_a {
  padding: 0;
  background-image: none;
}
.p-gsc .gsib_b {
  display: none;
  width: auto;
  height: auto;
}
.p-gsc .gsc-input {
  background-color: inherit;
}
.p-gsc input.gsc-input {
  background-color: inherit;
}
.p-gsc .gsc-search-button {
  margin-left: 0;
  display: table-cell !important;
}
.p-gsc .gsc-search-button-v2, .p-gsc .gsc-search-button-v2:hover, .p-gsc .gsc-search-button-v2:focus {
  border: none;
  background-color: transparent;
  padding: 0;
}
.p-gsc .gsc-search-button-v2 svg, .p-gsc .gsc-search-button-v2:hover svg, .p-gsc .gsc-search-button-v2:focus svg {
  fill: #d8d8d8;
  fill: #023994;
  width: 20px;
  height: 20px;
}
.p-gsc .gsc-control-cse {
  display: none;
}

/* ===========================================
  テンプレートF
=========================================== */
.p-tempF {
  padding-top: 40px;
  padding-bottom: 60px;
}

.p-tempF-header {
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .p-tempF-header {
    margin-bottom: 50px;
  }
}

.p-post-info {
  margin-bottom: 9px;
  display: flex;
  gap: 20px;
}
@media (max-width: 767px) {
  .p-post-info {
    margin-bottom: 13px;
    gap: 10px;
  }
}

.p-post-date {
  color: #023994;
  line-height: 34px;
}
@media (max-width: 767px) {
  .p-post-date {
    line-height: 30px;
  }
}

.p-post-tags span, .p-post-tags a {
  color: #F8771A;
  border: 1px solid #F8771A;
  border-radius: 17px;
  font-size: 15px;
  padding-inline: 14px;
  padding-block: 4.5px 5px;
  display: inline-block;
}
@media (max-width: 767px) {
  .p-post-tags span, .p-post-tags a {
    border-radius: 15px;
    font-size: 12px;
    padding-block: 4.5px 5px;
  }
}

.p-post-title {
  font-weight: 500;
  font-size: 40px;
  line-height: 1.45;
}
@media (max-width: 767px) {
  .p-post-title {
    font-size: 22px;
    line-height: 1.45;
  }
}

.p-post-excerpt {
  font-size: 14px;
}
.p-post-excerpt a {
  box-shadow: 0 1px 0 0 currentColor;
}
@media (max-width: 767px) {
  .p-post-excerpt {
    line-height: 1.3;
  }
}

/* ===========================================
  テンプレートG
=========================================== */
.p-archive {
  padding-top: 40px;
}

.p-archive-heading {
  font-weight: 500;
  font-size: 40px;
  line-height: 1.45;
  padding-block: 40px;
}
@media (max-width: 767px) {
  .p-archive-heading {
    font-size: 25px;
    padding-block: 0 30px;
  }
}

.p-archive-count {
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  .p-archive-count {
    font-size: 12px;
    margin-bottom: 26px;
  }
}

.p-archive-item {
  border-bottom: 1px solid #DDDDDD;
  padding-block: 40px;
}
.p-archive-item .p-post-info {
  margin-bottom: 10px;
}
.p-archive-item .p-post-title {
  font-size: 24px;
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .p-archive-item {
    padding-block: 20px;
  }
  .p-archive-item .p-post-title {
    font-size: 18px;
    list-style: 1.5;
    margin-bottom: 10px;
  }
}

/* ===========================================
  アクセス
=========================================== */
.page-access p:has(iframe) {
  margin-bottom: 45px;
}
@media (max-width: 767px) {
  .page-access p:has(iframe) {
    margin-bottom: 30px;
  }
}

/* ===========================================
  理事長挨拶
=========================================== */
.page-chairperson_and_ceo .entry-content p:has(img) {
  margin-bottom: 35px;
}
.page-chairperson_and_ceo .entry-content img.alignleft {
  float: none;
}
@media (max-width: 767px) {
  .page-chairperson_and_ceo .entry-content p:has(img) {
    margin-bottom: 20px;
  }
}

.p-side .p-post-info {
  margin-bottom: 10px;
}
.p-side .p-post-date {
  font-size: 14px;
  line-height: 27px;
}
.p-side .p-post-tags span {
  font-size: 12px;
  padding-block: 3px 4px;
}
.p-side .p-post-title {
  font-size: 14px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.p-side-group + .p-side-group {
  margin-top: 60px;
}
@media (max-width: 767px) {
  .p-side-group + .p-side-group {
    margin-top: 40px;
  }
}

.p-side-heading {
  position: relative;
  font-weight: 500;
  font-size: 20px;
  padding-block: 20px;
}
.p-side-heading::before {
  position: absolute;
  content: "";
  background-color: #023994;
  width: 22px;
  height: 2px;
  top: 9px;
  left: 0;
}

.p-side-menu {
  font-weight: 500;
  font-size: 14px;
}
.p-side-menu > li {
  border-bottom: 1px solid #DDDDDD;
}
.p-side-menu > li > a {
  position: relative;
  display: block;
  padding-block: 15px;
  padding-right: 26px;
}
.p-side-menu > li > a::after {
  position: absolute;
  content: "";
  width: 8px;
  height: 8px;
  right: 5px;
  top: 50%;
  border-bottom: 1px solid currentColor;
  border-right: 1px solid currentColor;
  transform: translateY(-50%) rotate(-45deg);
}
.p-side-menu > li > span {
  position: relative;
  display: block;
  padding-block: 15px;
  padding-right: 26px;
  cursor: pointer;
}
.p-side-menu > li > span::after {
  position: absolute;
  content: "";
  width: 8px;
  height: 8px;
  right: 5px;
  top: 50%;
  border-bottom: 1px solid currentColor;
  border-right: 1px solid currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.p-side-menu > li > span._open::after {
  transform: translateY(-50%) rotate(-180deg);
}
.p-side-menu > li > span::before, .p-side-menu > li > span::after {
  position: absolute;
  content: "";
  width: 16px;
  height: 1px;
  right: 5px;
  top: 50%;
  background-color: currentColor;
  transition: transform 0.3s ease;
}
.p-side-menu > li > span::after {
  transform: translateY(-50%) rotate(90deg);
}

.p-side-subMenu {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}
.p-side-subMenu > li > a, .p-side-subMenu > li > span {
  display: block;
  padding-block: 5px;
  font-size: 12px;
}
.p-side-subMenu > li:last-child {
  padding-bottom: 10px;
}

.p-side-postList a {
  display: block;
  padding-block: 15px 14px;
  border-bottom: 1px solid #DDDDDD;
}
.p-side-postList li:first-child a {
  padding-top: 0;
}

.p-side-search {
  margin-bottom: 40px;
}
.p-side-search .c-search {
  background-color: #F2F2F2;
  padding-block: 13px;
  padding-inline: 20px;
}
.p-side-search .c-search-input {
  font-size: 16px;
  background-color: #F2F2F2;
}

@media (max-width: 767px) {
  .u-br-pc {
    display: none;
  }
}

.u-br-sp {
  display: none;
}
@media (max-width: 767px) {
  .u-br-sp {
    display: inline;
  }
}

.u-mt-5 {
  margin-top: 5px;
}
@media (max-width: 767px) {
  .u-mt-5 {
    margin-top: 3.125px;
  }
}

.u-mt-10 {
  margin-top: 10px;
}
@media (max-width: 767px) {
  .u-mt-10 {
    margin-top: 6.25px;
  }
}

.u-mt-15 {
  margin-top: 15px;
}
@media (max-width: 767px) {
  .u-mt-15 {
    margin-top: 9.375px;
  }
}

.u-mt-20 {
  margin-top: 20px;
}
@media (max-width: 767px) {
  .u-mt-20 {
    margin-top: 12.5px;
  }
}

.u-mt-25 {
  margin-top: 25px;
}
@media (max-width: 767px) {
  .u-mt-25 {
    margin-top: 15.625px;
  }
}

.u-mt-30 {
  margin-top: 30px;
}
@media (max-width: 767px) {
  .u-mt-30 {
    margin-top: 18.75px;
  }
}

.u-mt-35 {
  margin-top: 35px;
}
@media (max-width: 767px) {
  .u-mt-35 {
    margin-top: 21.875px;
  }
}

.u-mt-40 {
  margin-top: 40px;
}
@media (max-width: 767px) {
  .u-mt-40 {
    margin-top: 25px;
  }
}

.u-mt-45 {
  margin-top: 45px;
}
@media (max-width: 767px) {
  .u-mt-45 {
    margin-top: 28.125px;
  }
}

.u-mt-50 {
  margin-top: 50px;
}
@media (max-width: 767px) {
  .u-mt-50 {
    margin-top: 31.25px;
  }
}

.u-mt-55 {
  margin-top: 55px;
}
@media (max-width: 767px) {
  .u-mt-55 {
    margin-top: 34.375px;
  }
}

.u-mt-60 {
  margin-top: 60px;
}
@media (max-width: 767px) {
  .u-mt-60 {
    margin-top: 37.5px;
  }
}

.u-mt-65 {
  margin-top: 65px;
}
@media (max-width: 767px) {
  .u-mt-65 {
    margin-top: 40.625px;
  }
}

.u-mt-70 {
  margin-top: 70px;
}
@media (max-width: 767px) {
  .u-mt-70 {
    margin-top: 43.75px;
  }
}

.u-mt-75 {
  margin-top: 75px;
}
@media (max-width: 767px) {
  .u-mt-75 {
    margin-top: 46.875px;
  }
}

.u-mt-80 {
  margin-top: 80px;
}
@media (max-width: 767px) {
  .u-mt-80 {
    margin-top: 50px;
  }
}

.u-mt-85 {
  margin-top: 85px;
}
@media (max-width: 767px) {
  .u-mt-85 {
    margin-top: 53.125px;
  }
}

.u-mt-90 {
  margin-top: 90px;
}
@media (max-width: 767px) {
  .u-mt-90 {
    margin-top: 56.25px;
  }
}

.u-mt-95 {
  margin-top: 95px;
}
@media (max-width: 767px) {
  .u-mt-95 {
    margin-top: 59.375px;
  }
}

.u-mt-100 {
  margin-top: 100px;
}
@media (max-width: 767px) {
  .u-mt-100 {
    margin-top: 62.5px;
  }
}

.u-mb-5 {
  margin-bottom: 5px;
}
@media (max-width: 767px) {
  .u-mb-5 {
    margin-bottom: 3.125px;
  }
}

.u-mb-10 {
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .u-mb-10 {
    margin-bottom: 6.25px;
  }
}

.u-mb-15 {
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .u-mb-15 {
    margin-bottom: 9.375px;
  }
}

.u-mb-20 {
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .u-mb-20 {
    margin-bottom: 12.5px;
  }
}

.u-mb-25 {
  margin-bottom: 25px;
}
@media (max-width: 767px) {
  .u-mb-25 {
    margin-bottom: 15.625px;
  }
}

.u-mb-30 {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .u-mb-30 {
    margin-bottom: 18.75px;
  }
}

.u-mb-35 {
  margin-bottom: 35px;
}
@media (max-width: 767px) {
  .u-mb-35 {
    margin-bottom: 21.875px;
  }
}

.u-mb-40 {
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .u-mb-40 {
    margin-bottom: 25px;
  }
}

.u-mb-45 {
  margin-bottom: 45px;
}
@media (max-width: 767px) {
  .u-mb-45 {
    margin-bottom: 28.125px;
  }
}

.u-mb-50 {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .u-mb-50 {
    margin-bottom: 31.25px;
  }
}

.u-mb-55 {
  margin-bottom: 55px;
}
@media (max-width: 767px) {
  .u-mb-55 {
    margin-bottom: 34.375px;
  }
}

.u-mb-60 {
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .u-mb-60 {
    margin-bottom: 37.5px;
  }
}

.u-mb-65 {
  margin-bottom: 65px;
}
@media (max-width: 767px) {
  .u-mb-65 {
    margin-bottom: 40.625px;
  }
}

.u-mb-70 {
  margin-bottom: 70px;
}
@media (max-width: 767px) {
  .u-mb-70 {
    margin-bottom: 43.75px;
  }
}

.u-mb-75 {
  margin-bottom: 75px;
}
@media (max-width: 767px) {
  .u-mb-75 {
    margin-bottom: 46.875px;
  }
}

.u-mb-80 {
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  .u-mb-80 {
    margin-bottom: 50px;
  }
}

.u-mb-85 {
  margin-bottom: 85px;
}
@media (max-width: 767px) {
  .u-mb-85 {
    margin-bottom: 53.125px;
  }
}

.u-mb-90 {
  margin-bottom: 90px;
}
@media (max-width: 767px) {
  .u-mb-90 {
    margin-bottom: 56.25px;
  }
}

.u-mb-95 {
  margin-bottom: 95px;
}
@media (max-width: 767px) {
  .u-mb-95 {
    margin-bottom: 59.375px;
  }
}

.u-mb-100 {
  margin-bottom: 100px;
}
@media (max-width: 767px) {
  .u-mb-100 {
    margin-bottom: 62.5px;
  }
}

.u-ml-5 {
  margin-left: 5px;
}
@media (max-width: 767px) {
  .u-ml-5 {
    margin-left: 3.125px;
  }
}

.u-ml-10 {
  margin-left: 10px;
}
@media (max-width: 767px) {
  .u-ml-10 {
    margin-left: 6.25px;
  }
}

.u-ml-15 {
  margin-left: 15px;
}
@media (max-width: 767px) {
  .u-ml-15 {
    margin-left: 9.375px;
  }
}

.u-ml-20 {
  margin-left: 20px;
}
@media (max-width: 767px) {
  .u-ml-20 {
    margin-left: 12.5px;
  }
}

.u-ml-25 {
  margin-left: 25px;
}
@media (max-width: 767px) {
  .u-ml-25 {
    margin-left: 15.625px;
  }
}

.u-ml-30 {
  margin-left: 30px;
}
@media (max-width: 767px) {
  .u-ml-30 {
    margin-left: 18.75px;
  }
}

.u-ml-35 {
  margin-left: 35px;
}
@media (max-width: 767px) {
  .u-ml-35 {
    margin-left: 21.875px;
  }
}

.u-ml-40 {
  margin-left: 40px;
}
@media (max-width: 767px) {
  .u-ml-40 {
    margin-left: 25px;
  }
}

.u-ml-45 {
  margin-left: 45px;
}
@media (max-width: 767px) {
  .u-ml-45 {
    margin-left: 28.125px;
  }
}

.u-ml-50 {
  margin-left: 50px;
}
@media (max-width: 767px) {
  .u-ml-50 {
    margin-left: 31.25px;
  }
}

.u-ml-55 {
  margin-left: 55px;
}
@media (max-width: 767px) {
  .u-ml-55 {
    margin-left: 34.375px;
  }
}

.u-ml-60 {
  margin-left: 60px;
}
@media (max-width: 767px) {
  .u-ml-60 {
    margin-left: 37.5px;
  }
}

.u-ml-65 {
  margin-left: 65px;
}
@media (max-width: 767px) {
  .u-ml-65 {
    margin-left: 40.625px;
  }
}

.u-ml-70 {
  margin-left: 70px;
}
@media (max-width: 767px) {
  .u-ml-70 {
    margin-left: 43.75px;
  }
}

.u-ml-75 {
  margin-left: 75px;
}
@media (max-width: 767px) {
  .u-ml-75 {
    margin-left: 46.875px;
  }
}

.u-ml-80 {
  margin-left: 80px;
}
@media (max-width: 767px) {
  .u-ml-80 {
    margin-left: 50px;
  }
}

.u-ml-85 {
  margin-left: 85px;
}
@media (max-width: 767px) {
  .u-ml-85 {
    margin-left: 53.125px;
  }
}

.u-ml-90 {
  margin-left: 90px;
}
@media (max-width: 767px) {
  .u-ml-90 {
    margin-left: 56.25px;
  }
}

.u-ml-95 {
  margin-left: 95px;
}
@media (max-width: 767px) {
  .u-ml-95 {
    margin-left: 59.375px;
  }
}

.u-ml-100 {
  margin-left: 100px;
}
@media (max-width: 767px) {
  .u-ml-100 {
    margin-left: 62.5px;
  }
}

.u-mr-5 {
  margin-right: 5px;
}
@media (max-width: 767px) {
  .u-mr-5 {
    margin-right: 3.125px;
  }
}

.u-mr-10 {
  margin-right: 10px;
}
@media (max-width: 767px) {
  .u-mr-10 {
    margin-right: 6.25px;
  }
}

.u-mr-15 {
  margin-right: 15px;
}
@media (max-width: 767px) {
  .u-mr-15 {
    margin-right: 9.375px;
  }
}

.u-mr-20 {
  margin-right: 20px;
}
@media (max-width: 767px) {
  .u-mr-20 {
    margin-right: 12.5px;
  }
}

.u-mr-25 {
  margin-right: 25px;
}
@media (max-width: 767px) {
  .u-mr-25 {
    margin-right: 15.625px;
  }
}

.u-mr-30 {
  margin-right: 30px;
}
@media (max-width: 767px) {
  .u-mr-30 {
    margin-right: 18.75px;
  }
}

.u-mr-35 {
  margin-right: 35px;
}
@media (max-width: 767px) {
  .u-mr-35 {
    margin-right: 21.875px;
  }
}

.u-mr-40 {
  margin-right: 40px;
}
@media (max-width: 767px) {
  .u-mr-40 {
    margin-right: 25px;
  }
}

.u-mr-45 {
  margin-right: 45px;
}
@media (max-width: 767px) {
  .u-mr-45 {
    margin-right: 28.125px;
  }
}

.u-mr-50 {
  margin-right: 50px;
}
@media (max-width: 767px) {
  .u-mr-50 {
    margin-right: 31.25px;
  }
}

.u-mr-55 {
  margin-right: 55px;
}
@media (max-width: 767px) {
  .u-mr-55 {
    margin-right: 34.375px;
  }
}

.u-mr-60 {
  margin-right: 60px;
}
@media (max-width: 767px) {
  .u-mr-60 {
    margin-right: 37.5px;
  }
}

.u-mr-65 {
  margin-right: 65px;
}
@media (max-width: 767px) {
  .u-mr-65 {
    margin-right: 40.625px;
  }
}

.u-mr-70 {
  margin-right: 70px;
}
@media (max-width: 767px) {
  .u-mr-70 {
    margin-right: 43.75px;
  }
}

.u-mr-75 {
  margin-right: 75px;
}
@media (max-width: 767px) {
  .u-mr-75 {
    margin-right: 46.875px;
  }
}

.u-mr-80 {
  margin-right: 80px;
}
@media (max-width: 767px) {
  .u-mr-80 {
    margin-right: 50px;
  }
}

.u-mr-85 {
  margin-right: 85px;
}
@media (max-width: 767px) {
  .u-mr-85 {
    margin-right: 53.125px;
  }
}

.u-mr-90 {
  margin-right: 90px;
}
@media (max-width: 767px) {
  .u-mr-90 {
    margin-right: 56.25px;
  }
}

.u-mr-95 {
  margin-right: 95px;
}
@media (max-width: 767px) {
  .u-mr-95 {
    margin-right: 59.375px;
  }
}

.u-mr-100 {
  margin-right: 100px;
}
@media (max-width: 767px) {
  .u-mr-100 {
    margin-right: 62.5px;
  }
}

.u-pt-5 {
  padding-top: 5px;
}
@media (max-width: 767px) {
  .u-pt-5 {
    padding-top: 3.125px;
  }
}

.u-pt-10 {
  padding-top: 10px;
}
@media (max-width: 767px) {
  .u-pt-10 {
    padding-top: 6.25px;
  }
}

.u-pt-15 {
  padding-top: 15px;
}
@media (max-width: 767px) {
  .u-pt-15 {
    padding-top: 9.375px;
  }
}

.u-pt-20 {
  padding-top: 20px;
}
@media (max-width: 767px) {
  .u-pt-20 {
    padding-top: 12.5px;
  }
}

.u-pt-25 {
  padding-top: 25px;
}
@media (max-width: 767px) {
  .u-pt-25 {
    padding-top: 15.625px;
  }
}

.u-pt-30 {
  padding-top: 30px;
}
@media (max-width: 767px) {
  .u-pt-30 {
    padding-top: 18.75px;
  }
}

.u-pt-35 {
  padding-top: 35px;
}
@media (max-width: 767px) {
  .u-pt-35 {
    padding-top: 21.875px;
  }
}

.u-pt-40 {
  padding-top: 40px;
}
@media (max-width: 767px) {
  .u-pt-40 {
    padding-top: 25px;
  }
}

.u-pt-45 {
  padding-top: 45px;
}
@media (max-width: 767px) {
  .u-pt-45 {
    padding-top: 28.125px;
  }
}

.u-pt-50 {
  padding-top: 50px;
}
@media (max-width: 767px) {
  .u-pt-50 {
    padding-top: 31.25px;
  }
}

.u-pt-55 {
  padding-top: 55px;
}
@media (max-width: 767px) {
  .u-pt-55 {
    padding-top: 34.375px;
  }
}

.u-pt-60 {
  padding-top: 60px;
}
@media (max-width: 767px) {
  .u-pt-60 {
    padding-top: 37.5px;
  }
}

.u-pt-65 {
  padding-top: 65px;
}
@media (max-width: 767px) {
  .u-pt-65 {
    padding-top: 40.625px;
  }
}

.u-pt-70 {
  padding-top: 70px;
}
@media (max-width: 767px) {
  .u-pt-70 {
    padding-top: 43.75px;
  }
}

.u-pt-75 {
  padding-top: 75px;
}
@media (max-width: 767px) {
  .u-pt-75 {
    padding-top: 46.875px;
  }
}

.u-pt-80 {
  padding-top: 80px;
}
@media (max-width: 767px) {
  .u-pt-80 {
    padding-top: 50px;
  }
}

.u-pt-85 {
  padding-top: 85px;
}
@media (max-width: 767px) {
  .u-pt-85 {
    padding-top: 53.125px;
  }
}

.u-pt-90 {
  padding-top: 90px;
}
@media (max-width: 767px) {
  .u-pt-90 {
    padding-top: 56.25px;
  }
}

.u-pt-95 {
  padding-top: 95px;
}
@media (max-width: 767px) {
  .u-pt-95 {
    padding-top: 59.375px;
  }
}

.u-pt-100 {
  padding-top: 100px;
}
@media (max-width: 767px) {
  .u-pt-100 {
    padding-top: 62.5px;
  }
}

.u-pb-5 {
  padding-bottom: 5px;
}
@media (max-width: 767px) {
  .u-pb-5 {
    padding-bottom: 3.125px;
  }
}

.u-pb-10 {
  padding-bottom: 10px;
}
@media (max-width: 767px) {
  .u-pb-10 {
    padding-bottom: 6.25px;
  }
}

.u-pb-15 {
  padding-bottom: 15px;
}
@media (max-width: 767px) {
  .u-pb-15 {
    padding-bottom: 9.375px;
  }
}

.u-pb-20 {
  padding-bottom: 20px;
}
@media (max-width: 767px) {
  .u-pb-20 {
    padding-bottom: 12.5px;
  }
}

.u-pb-25 {
  padding-bottom: 25px;
}
@media (max-width: 767px) {
  .u-pb-25 {
    padding-bottom: 15.625px;
  }
}

.u-pb-30 {
  padding-bottom: 30px;
}
@media (max-width: 767px) {
  .u-pb-30 {
    padding-bottom: 18.75px;
  }
}

.u-pb-35 {
  padding-bottom: 35px;
}
@media (max-width: 767px) {
  .u-pb-35 {
    padding-bottom: 21.875px;
  }
}

.u-pb-40 {
  padding-bottom: 40px;
}
@media (max-width: 767px) {
  .u-pb-40 {
    padding-bottom: 25px;
  }
}

.u-pb-45 {
  padding-bottom: 45px;
}
@media (max-width: 767px) {
  .u-pb-45 {
    padding-bottom: 28.125px;
  }
}

.u-pb-50 {
  padding-bottom: 50px;
}
@media (max-width: 767px) {
  .u-pb-50 {
    padding-bottom: 31.25px;
  }
}

.u-pb-55 {
  padding-bottom: 55px;
}
@media (max-width: 767px) {
  .u-pb-55 {
    padding-bottom: 34.375px;
  }
}

.u-pb-60 {
  padding-bottom: 60px;
}
@media (max-width: 767px) {
  .u-pb-60 {
    padding-bottom: 37.5px;
  }
}

.u-pb-65 {
  padding-bottom: 65px;
}
@media (max-width: 767px) {
  .u-pb-65 {
    padding-bottom: 40.625px;
  }
}

.u-pb-70 {
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  .u-pb-70 {
    padding-bottom: 43.75px;
  }
}

.u-pb-75 {
  padding-bottom: 75px;
}
@media (max-width: 767px) {
  .u-pb-75 {
    padding-bottom: 46.875px;
  }
}

.u-pb-80 {
  padding-bottom: 80px;
}
@media (max-width: 767px) {
  .u-pb-80 {
    padding-bottom: 50px;
  }
}

.u-pb-85 {
  padding-bottom: 85px;
}
@media (max-width: 767px) {
  .u-pb-85 {
    padding-bottom: 53.125px;
  }
}

.u-pb-90 {
  padding-bottom: 90px;
}
@media (max-width: 767px) {
  .u-pb-90 {
    padding-bottom: 56.25px;
  }
}

.u-pb-95 {
  padding-bottom: 95px;
}
@media (max-width: 767px) {
  .u-pb-95 {
    padding-bottom: 59.375px;
  }
}

.u-pb-100 {
  padding-bottom: 100px;
}
@media (max-width: 767px) {
  .u-pb-100 {
    padding-bottom: 62.5px;
  }
}

.u-pl-5 {
  padding-left: 5px;
}
@media (max-width: 767px) {
  .u-pl-5 {
    padding-left: 3.125px;
  }
}

.u-pl-10 {
  padding-left: 10px;
}
@media (max-width: 767px) {
  .u-pl-10 {
    padding-left: 6.25px;
  }
}

.u-pl-15 {
  padding-left: 15px;
}
@media (max-width: 767px) {
  .u-pl-15 {
    padding-left: 9.375px;
  }
}

.u-pl-20 {
  padding-left: 20px;
}
@media (max-width: 767px) {
  .u-pl-20 {
    padding-left: 12.5px;
  }
}

.u-pl-25 {
  padding-left: 25px;
}
@media (max-width: 767px) {
  .u-pl-25 {
    padding-left: 15.625px;
  }
}

.u-pl-30 {
  padding-left: 30px;
}
@media (max-width: 767px) {
  .u-pl-30 {
    padding-left: 18.75px;
  }
}

.u-pl-35 {
  padding-left: 35px;
}
@media (max-width: 767px) {
  .u-pl-35 {
    padding-left: 21.875px;
  }
}

.u-pl-40 {
  padding-left: 40px;
}
@media (max-width: 767px) {
  .u-pl-40 {
    padding-left: 25px;
  }
}

.u-pl-45 {
  padding-left: 45px;
}
@media (max-width: 767px) {
  .u-pl-45 {
    padding-left: 28.125px;
  }
}

.u-pl-50 {
  padding-left: 50px;
}
@media (max-width: 767px) {
  .u-pl-50 {
    padding-left: 31.25px;
  }
}

.u-pl-55 {
  padding-left: 55px;
}
@media (max-width: 767px) {
  .u-pl-55 {
    padding-left: 34.375px;
  }
}

.u-pl-60 {
  padding-left: 60px;
}
@media (max-width: 767px) {
  .u-pl-60 {
    padding-left: 37.5px;
  }
}

.u-pl-65 {
  padding-left: 65px;
}
@media (max-width: 767px) {
  .u-pl-65 {
    padding-left: 40.625px;
  }
}

.u-pl-70 {
  padding-left: 70px;
}
@media (max-width: 767px) {
  .u-pl-70 {
    padding-left: 43.75px;
  }
}

.u-pl-75 {
  padding-left: 75px;
}
@media (max-width: 767px) {
  .u-pl-75 {
    padding-left: 46.875px;
  }
}

.u-pl-80 {
  padding-left: 80px;
}
@media (max-width: 767px) {
  .u-pl-80 {
    padding-left: 50px;
  }
}

.u-pl-85 {
  padding-left: 85px;
}
@media (max-width: 767px) {
  .u-pl-85 {
    padding-left: 53.125px;
  }
}

.u-pl-90 {
  padding-left: 90px;
}
@media (max-width: 767px) {
  .u-pl-90 {
    padding-left: 56.25px;
  }
}

.u-pl-95 {
  padding-left: 95px;
}
@media (max-width: 767px) {
  .u-pl-95 {
    padding-left: 59.375px;
  }
}

.u-pl-100 {
  padding-left: 100px;
}
@media (max-width: 767px) {
  .u-pl-100 {
    padding-left: 62.5px;
  }
}

.u-pr-5 {
  padding-right: 5px;
}
@media (max-width: 767px) {
  .u-pr-5 {
    padding-right: 3.125px;
  }
}

.u-pr-10 {
  padding-right: 10px;
}
@media (max-width: 767px) {
  .u-pr-10 {
    padding-right: 6.25px;
  }
}

.u-pr-15 {
  padding-right: 15px;
}
@media (max-width: 767px) {
  .u-pr-15 {
    padding-right: 9.375px;
  }
}

.u-pr-20 {
  padding-right: 20px;
}
@media (max-width: 767px) {
  .u-pr-20 {
    padding-right: 12.5px;
  }
}

.u-pr-25 {
  padding-right: 25px;
}
@media (max-width: 767px) {
  .u-pr-25 {
    padding-right: 15.625px;
  }
}

.u-pr-30 {
  padding-right: 30px;
}
@media (max-width: 767px) {
  .u-pr-30 {
    padding-right: 18.75px;
  }
}

.u-pr-35 {
  padding-right: 35px;
}
@media (max-width: 767px) {
  .u-pr-35 {
    padding-right: 21.875px;
  }
}

.u-pr-40 {
  padding-right: 40px;
}
@media (max-width: 767px) {
  .u-pr-40 {
    padding-right: 25px;
  }
}

.u-pr-45 {
  padding-right: 45px;
}
@media (max-width: 767px) {
  .u-pr-45 {
    padding-right: 28.125px;
  }
}

.u-pr-50 {
  padding-right: 50px;
}
@media (max-width: 767px) {
  .u-pr-50 {
    padding-right: 31.25px;
  }
}

.u-pr-55 {
  padding-right: 55px;
}
@media (max-width: 767px) {
  .u-pr-55 {
    padding-right: 34.375px;
  }
}

.u-pr-60 {
  padding-right: 60px;
}
@media (max-width: 767px) {
  .u-pr-60 {
    padding-right: 37.5px;
  }
}

.u-pr-65 {
  padding-right: 65px;
}
@media (max-width: 767px) {
  .u-pr-65 {
    padding-right: 40.625px;
  }
}

.u-pr-70 {
  padding-right: 70px;
}
@media (max-width: 767px) {
  .u-pr-70 {
    padding-right: 43.75px;
  }
}

.u-pr-75 {
  padding-right: 75px;
}
@media (max-width: 767px) {
  .u-pr-75 {
    padding-right: 46.875px;
  }
}

.u-pr-80 {
  padding-right: 80px;
}
@media (max-width: 767px) {
  .u-pr-80 {
    padding-right: 50px;
  }
}

.u-pr-85 {
  padding-right: 85px;
}
@media (max-width: 767px) {
  .u-pr-85 {
    padding-right: 53.125px;
  }
}

.u-pr-90 {
  padding-right: 90px;
}
@media (max-width: 767px) {
  .u-pr-90 {
    padding-right: 56.25px;
  }
}

.u-pr-95 {
  padding-right: 95px;
}
@media (max-width: 767px) {
  .u-pr-95 {
    padding-right: 59.375px;
  }
}

.u-pr-100 {
  padding-right: 100px;
}
@media (max-width: 767px) {
  .u-pr-100 {
    padding-right: 62.5px;
  }
}
/*# sourceMappingURL=main.css.map */
