@charset "UTF-8";
@media screen and (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}
@media screen and (max-width: 767px) and (max-width: 1024px) {
  .tab-only {
    display: none !important;
  }
}
@media print, screen and (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
}
@media (max-width: 374px) {
  .sm-none {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  #header-area-normal {
    min-height: 77px;
  }
  #header-area-full {
    min-height: 130px;
  }
}
@media print, screen and (min-width: 768px) {
  #header-area-normal {
    min-height: 70px;
  }
  #header-area-full {
    min-height: 139px;
  }
}

/*-------------------------
  ヘッダー
-------------------------*/
/* header__inner
-------------------------*/
.header__inner {
  background-color: #ffffff;
  padding: 0 !important;

}
.header__inner.is-opened {
  box-shadow: 0px 2px 6px #00000029;
  position: relative;
  z-index: 10000002;
}

/* header-main
-------------------------*/
.header-main {
  border-bottom: 1px solid #E9ECF2;
  width: 100%;
  background-color: #fff;
}
.header__inner.is-opened .header-main {
  border-bottom: none;
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-main {
    padding: 10px 8px;
  }
}
@media screen and (max-width: 767px) {
  .header-main {
    padding: 5px 8px 8px;
    position: relative;
  }
}
.header-main__inner {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .header-main__inner {
    margin: 0 auto;
    padding: 10px 16px 10px 20px;
    justify-content: space-between;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-main__inner {
    padding: 0;
  }
}
.header-main__col {
  display: flex;
  align-items: center;
}
.header-main__col:nth-of-type(2) {
  padding-left: 16px;
}
@media print, screen and (min-width: 768px) {
  .header-main__col:nth-of-type(1) {
    flex-grow: 1;
    max-width: calc(100% - 412px);
  }
  [lang="en"] .header-main__col:nth-of-type(1) {
    max-width: calc(100% - 556px);
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-main__col:nth-of-type(1) {
    max-width: none;
  }
}
@media screen and (max-width: 767px) {
  .header-main__col:nth-of-type(1) {
    display: contents;
  }
  .header-main__col:nth-of-type(2) {
    padding-left: 0;
    margin-left: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .header-main__heading {
    order: 3;
    margin-left: 8px;
    white-space: nowrap;
    overflow-x: auto;
    flex-grow: 1;
    scrollbar-width: thin;
  }
}
@media screen and (max-width: 767px) {
  .header-main__heading {
    width: 100%;
    margin-right: 107.5px;
    padding-bottom: 4px;
    white-space: nowrap;
    overflow-x: auto;
    min-height: 22px;
  }
  [lang="en"] .header-main__heading {
    margin-right: 160.5px;
  }
}
@media print, screen and (min-width: 768px) {
  .header-main__logo {
    order: 1;
  }
}
@media print, screen and (min-width: 768px) {
  .header-main__area {
    order: 2;
    margin-left: 16px;
  }
}
@media screen and (max-width: 767px) {
  .header-main__area {
    margin-left: 10px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-main__col:nth-of-type(1) {
    display: grid;
    grid-template-areas: 
      "logo area"
      "logo heading";
    grid-template-rows: auto 1fr;
    grid-template-columns: 118px minmax(auto, 1fr);
    gap: 4px 8px;
    flex: 1;
  }
  .header-main__heading {
    grid-area: heading;
    margin-left: 0;
    align-self: flex-start;
  }
  .header-main__logo {
    grid-area: logo;
  }
  .header-main__area {
    grid-area: area;
    margin-left: 0;
  }
}
.header-main__absolute {
  display: inline-flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .header-main__absolute {
    position: absolute;
    top: 5px;
    right: 8px;
  }
}
@media print, screen and (min-width: 768px) {
  .header-main__corporate + .header-main__language {
    margin-left: 16px;
  }
}
@media screen and (max-width: 767px) {
  .header-main__corporate + .header-main__language {
    margin-left: 4px;
  }
}
@media print, screen and (min-width: 768px) {
  .header-main__store {
    margin-left: 16px;
  }
}
@media screen and (max-width: 767px) {
  .header-main__store {
    margin-left: 8px;
  }
}
@media print, screen and (min-width: 768px) {
  .header-main__member {
    margin-left: 40px;
  }
}
@media screen and (max-width: 767px) {
  .header-main__member {
    margin-left: 8px;
  }
}
.header-main__menu-button {
  order: 8;
}
@media print, screen and (min-width: 768px) {
  .header-main__menu-button {
    margin-left: 16px;
  }
}
@media screen and (max-width: 767px) {
  .header-main__menu-button {
    margin-left: 8px;
  }
}

@media print {
  .header-main__col:nth-of-type(2) {
    display: none;
  }
}

/* header-heading
-------------------------*/
.header-heading {
  font-weight: normal;
  color: #697180;
  font-size: 12px;
  line-height: 1.5;
}
@media print, screen and (min-width: 768px) {
  .header-heading {
    display: inline-flex;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-heading {
    display: inline-flex;
    font-size: 10px;
  }
}

@media screen and (max-width: 767px) {
  .header-heading {
    display: block;
  }
}

/* header-main-logo 
-------------------------*/
.header-main-logo {
  display: inline-flex;
  flex-shrink: 0;
}
@media print, screen and (min-width: 768px) {
  .header-main-logo {
    width: 94px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-main-logo {
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .header-main-logo {
    width: 82px;
    padding-left: 2px;
  }
}

/* header-new-area
-------------------------*/
.header-new-area {
  display: inline-flex;
  position: relative;
  overflow: visible;
  flex-shrink: 0;
}
[lang="en"] .header-new-area {
  flex-shrink: unset;
}
.header-new-area__heading {
  display: none;
  align-items: center;
  font-weight: bold;
  color: #2C2A29;
  cursor: pointer;
  transition: color 0.3s;
  line-height: 1.3;
  text-align: left;
}
.header-new-area__heading.is-visible {
  display: inline-flex;
}
.header-new-area__heading > span {
  display: none;
  pointer-events: none;
  font-weight: bold;
}
.header-new-area__heading > span.is-visible {
  display: block;
}
@media print, screen and (min-width: 768px) {
  .header-new-area__heading {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  .header-new-area__heading {
    font-size: 12px;
  }
}
.header-new-area__icon {
  margin-top: 2px;
  pointer-events: none;
}
@media (hover: hover) {
  .header-new-area__heading:hover {
    color: #10069F;
  }
  .header-new-area__heading:hover .header-new-area__icon path {
    fill: #10069F;
  }
}
@media print, screen and (min-width: 768px) {
  .header-new-area__list-wrapper {
    top: calc(1.5em * 1.444);
    right: auto;
    left: 0;
    width: fit-content;
  }
  .header-new-area__list-title {
    display: none;
  }
  .header-new-area__icon {
    margin-left: 4px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-new-area__list-wrapper {
    right: auto;
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .header-new-area {
    position: static;
  }
  .header-new-area__list-wrapper.header-popup {
    position: absolute;
    top: 76px;
    padding: 16px 20px 40px;
    border-radius: 0;
    width: 100%;
  }
  .header-new-area__list-title {
    font-size: 18px;
    margin-bottom: 16px !important;
    font-weight: bold;
    text-align: left;
    color: #2C2A29;
  }
  .header-new-area__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px 17px;
  }
  .header-new-area__list .header-popup__link {
    padding: 0;
    width: 42.4vw;
    max-width: 159px;
  }
  .header-new-area__icon {
    margin-left: 2px;
  }
}

/* header-corporate
-------------------------*/
.header-corporate {
  display: inline-flex;
  position: relative;
  overflow: visible;
}
.header-new a.header-corporate__heading {
  font-weight: normal;
  text-align: center;
  color: #697180;
  cursor: pointer;
  transition: color 0.3s;
}
@media print, screen and (min-width: 768px) {
  .header-new a.header-corporate__heading {
    display: inline-flex;
    align-items: center;
    font-size: 14px;
    line-height: 16px;
  }
}
@media screen and (max-width: 767px) {
  .header-new a.header-corporate__heading {
    justify-content: center;
    font-size: 10px;
    line-height: 1;
    padding: 2px 8px;
    border: 1px solid #C0C5CC;
    border-radius: 4px;
    letter-spacing: -0.05em;
  }
}
.header-corporate__icon {
  margin-right: 4px;
}
@media (hover: hover) {
  .header-new a.header-corporate__heading:hover {
    color: #10069F;
  }
  .header-new a.header-corporate__heading:hover .header-corporate__icon path {
    fill: #10069F;
  }
}
@media print, screen and (min-width: 768px) {
  .header-corporate__list {
    top: calc(1.5em * 1.428);
  }
}
@media screen and (max-width: 767px) {
  .header-corporate__list {
    top: calc(1.5em * 1.3);
  }
}

/* header-language
-------------------------*/
.header-language {
  display: inline-flex;
  position: relative;
  overflow: visible;
}
.header-language__heading {
  display: inline-flex;
  align-items: center;
  font-weight: normal;
  color: #697180;
  cursor: pointer;
  transition: color 0.3s;
}
@media print, screen and (min-width: 768px) {
  .header-language__heading {
    font-size: 14px;
    line-height: 16px;
    padding-bottom: 2px !important;
  }
}
@media screen and (max-width: 767px) {
  .header-language__heading {
    justify-content: center;
    min-width: 50px;
    font-size: 10px;
    line-height: 1;
    padding: 1px 8px 3px 6px !important;
    border: 1px solid #C0C5CC !important;
    border-radius: 4px;
    letter-spacing: -0.05em;
  }
}
.header-language__icon {
  margin-top: 2px;
  margin-right: 4px;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .header-language__icon svg {
    width: 8px;
    height: 8px;
  }
  .header-language__icon path {
    fill: #697180;
  }
}
@media (hover: hover) {
  .header-language__heading:hover {
    color: #10069F;
  }
  .header-language__heading:hover .header-language__icon path {
    fill: #10069F;
  }
}
@media print, screen and (min-width: 768px) {
  .header-language__list {
    top: calc(1.5em * 1.428);
  }
}
@media screen and (max-width: 767px) {
  .header-language__list {
    top: calc(1.5em * 1.5);
  }
}

.header-new .header-language__link {
 cursor: pointer;
 color: #2C2A29 !important;
}
.header-new .header-language__link .header__nav-popup-note {
  font-size: 12px;
  display: block;
}
.header-new .header__nav-popup--language .header__nav-popup-item > * {
  padding: 8px 24px !important;
}


/* WOVN適用時のスタイル */
.header-new .header__nav-popup--language .header__nav-popup-item.selected {
  background: #fff;
  background-size: auto;
}
.header-new .header__nav-popup--language .header__nav-popup-item.selected .header-language__link {
  font-weight: bold;
  pointer-events: none;
}
.header-new .header__nav-popup--language .header__nav-popup-item.selected .header-language__link.header-gnav-links__link {
  font-weight: normal;
}

/* header-store
-------------------------*/
.header-store {
  display: inline-flex;
  position: relative;
  overflow: visible;
}
.header-store__heading {
  font-weight: normal;
  text-align: center;
  color: #697180;
  cursor: pointer;
  transition: color 0.3s;
}
@media print, screen and (min-width: 768px) {
  .header-store__heading {
    display: inline-flex;
    align-items: center;
    font-size: 14px;
    line-height: 16px;
  }
}
@media screen and (max-width: 767px) {
  .header-store__heading {
    font-size: 10px;
    line-height: 1.3;
  }
}
.header-store__icon {
  display: flex;
  justify-content: center;
  margin-top: 2px;
  margin-right: 4px;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .header-store__icon {
    margin: 2px auto;
  }
  .header-store__icon svg {
    width: 24px;
    height: 24px;
  }
}
@media (hover: hover) {
  .header-store__heading:hover {
    color: #10069F;
  }
  .header-store__heading:hover .header-store__icon path {
    fill: #10069F;
  }
}
@media print, screen and (min-width: 768px) {
  .header-store__list {
    top: calc(1.5em * 1.428);
  }
}
@media screen and (max-width: 767px) {
  .header-store__list {
    top: calc(1.5em * 1.3);
  }
}

/* header-member
-------------------------*/
.header-member {
  display: inline-flex;
  position: relative;
  overflow: visible;
}
.header-new a.header-member__heading {
  display: inline-block;
  cursor: pointer;
  transition: color 0.3s;
}
@media print, screen and (min-width: 768px) {
  .header-new a.header-member__heading {
    font-size: 12px;
    line-height: 1;
    color: #2C2A29;
    font-weight: bold;
  }
}
@media screen and (max-width: 767px) {
  .header-new a.header-member__heading {
    font-size: 10px;
    line-height: 1.3;
    color: #697180;
  }
}
.header-member__icon {
  display: flex;
  justify-content: center;
}
@media print, screen and (min-width: 768px) {
  .header-member__icon {
    margin-bottom: 4px;
  }
}
@media screen and (max-width: 767px) {
  .header-member__icon {
    margin: 2px auto;
  }
  .header-member__icon svg {
    width: 24px;
    height: 24px;
  }
  .header-member__icon path {
    fill: #ACB5BF;
  }
}
@media (hover: hover) {
  .header-new a.header-member__heading:hover {
    color: #10069F;
  }
  .header-new a.header-member__heading:hover .header-member__icon path {
    fill: #10069F;
  }
}
@media print, screen and (min-width: 768px) {
  .header-new a.header-member__heading::before {
    width: 32px;
    height: 32px;
    background-color: #697180;
  }
}
@media screen and (max-width: 767px) {
  .header-new a.header-member__heading::before {
    width: 24px;
    height: 24px;
    background-color: #ACB5BF;
  }
}
@media print, screen and (min-width: 768px) {
  .header-member__list {
    top: calc(1.5em * 1.428 + 34px);
  }
}
@media screen and (max-width: 767px) {
  .header-member__list {
    top: calc(1.5em * 1.5);
  }
}

/* header-popup
-------------------------*/
.header-menu-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #697180;
  cursor: pointer;
  line-height: 1;
}
.header-menu-button span {
  transition: color 0.3s;
}
@media print, screen and (min-width: 768px) {
  .header-menu-button {
    min-width: 56px;
  }
  .header-menu-button span {
    font-size: 12px;
    line-height: 1;
    font-weight: bold;
    color: #2C2A29;
  }
}
@media screen and (max-width: 767px) {
  .header-menu-button {
    min-width: 40px;
  }
  .header-menu-button span {
    font-size: 10px;
    line-height: 1.3;
  }
}
.header-menu-button__icon {
  display: flex;
  justify-content: center;
  line-height: 1;
}
.header-menu-button__icon.close {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .header-menu-button__icon {
    margin-bottom: 4px;
  }
}
@media screen and (max-width: 767px) {
  .header-menu-button__icon.open {
    margin-top: -2px;
    margin-bottom: -2px;
  }
  .header-menu-button__icon.open path {
    fill: #697180;
  }
  .header-menu-button__icon.close svg {
    width: 28px;
    height: 28px;
  }
}
@media (hover: hover) {
  .header-menu-button:hover span {
    color: #10069F;
  }
  .header-menu-button:hover .header-menu-button__icon.open path {
    fill: #10069F;
  }
}
.header-menu-button.is-opened {
  color: #10069F;
}
.header-menu-button.is-opened .header-menu-button__icon.open {
  display: none;
}
.header-menu-button.is-opened .header-menu-button__icon.close {
  display: flex;
}
.header-menu-button.is-opened .header-menu-button__icon.close svg {
  background-color: #10069F;
  transition: all 0.3s;
}
@media (hover: hover) {
  .header-menu-button.is-opened:hover {
    color: #140D77;
  }
  .header-menu-button.is-opened:hover .header-menu-button__icon.close svg {
    background-color: #140D77;
  }
}

/* header-popup
-------------------------*/
.header-popup {
  display: none;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 3px 6px #00000029;
  z-index: 10000003;
  position: absolute;
  right: 0;
  padding: 8px 0;
}
.header-popup.is-visible {
  display: inline-block !important;
}
.header-popup__link {
  display: block;
  font-size: 14px;
  color: #2C2A29;
  white-space: nowrap;
  transition: background-color 0.3s;
  padding: 8px 24px;
}
@media (hover: hover) {
  .header-popup__link:hover {
    background-color: #C2E4FA !important;
  }
}
.header-popup__link.is-current {
  font-weight: bold;
  pointer-events: none;
}

/* header-nav
-------------------------*/
.header-nav {
  -ms-overflow-style: none;
  scrollbar-width: none;
  box-shadow: 0px 4px 6px -3px #00000029;
  position: relative;
  z-index: 2;
}
.header-nav::-webkit-scrollbar{
  display: none;
}
.header-nav.is-invisible {
  opacity: 0;
  visibility: hidden;
}
.header__inner.is-opened .header-nav {
  display: none;
}
.header-nav__inner {
  display: flex;
  align-items: center;
  width: 100%;
  overflow-x: auto;
}
@media print, screen and (min-width: 768px) {
  .header-nav__inner {
    padding: 16px 48px;
    margin: 0 auto;
    justify-content: center;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-nav__inner {
    padding: 16px 20px;
    justify-content: flex-start;
  }
}
@media screen and (max-width: 767px) {
  .header-nav__inner {
    padding: 8px;
  }
}
.header-nav__heading, .header-nav__list, .header-nav__more-button {
  flex-shrink: 0;
}
.header-nav__heading + .header-nav__list {
  margin-left: 16px;
}
.header-nav__list + .header-nav__heading {
  margin-left: 32px;
}
.header-nav__more-button {
  margin-left: 32px;
}

/* header-nav-heading
-------------------------*/
.header-nav-heading {
  display: inline-flex;
}
.header-new a.header-nav-heading__link {
  display: inline-flex;
  font-weight: bold;
  font-size: 12px;
  line-height: 1.5;
  color: #2C2A29;
  padding: 8px 8px 9px;
  border: 1px solid #C0C5CC;
  transition: color 0.3s, border-color 0.3s;
}
@media (hover: hover) {
  .header-new a.header-nav-heading__link--overseas:hover {
    color: #163BBF;
    border-color: #163BBF;
  }
  .header-new a.header-nav-heading__link--domestic:hover {
    color: #008552;
    border-color: #008552;
  }
}

/* header-nav-list
-------------------------*/
.header-nav-list {
  display: flex;
  align-items: center;
  gap: 16px;
}
.header-new a.header-nav-list__link {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  font-size: 12px;
  line-height: 1.5;
  color: #2C2A29;
  position: relative;
  transition: color 0.3s;
}
@media (hover: hover) {
  .header-nav-list__item--overseas .header-nav-list__link:hover {
    color: #163BBF;
  }
  .header-nav-list__item--overseas .header-nav-list__link:hover .header-nav-list__icon path {
    fill: #163BBF;
  }
  .header-nav-list__item--domestic .header-nav-list__link:hover {
    color: #008552;
  }
  .header-nav-list__item--domestic .header-nav-list__link:hover .header-nav-list__icon path {
    fill: #008552;
  }
}

/* header-more-button
-------------------------*/
.header-new button.header-more-button {
  display: inline-flex;
  font-size: 12px;
  line-height: 1;
  color: #2C2A29;
  background-color: #ffffff;
  padding: 6.5px 16px;
  border: 1px solid #939DAD;
  border-radius: 9999px;
  transition: color 0.3s, background-color 0.3s, border 0.3s;
}
@media (hover: hover) {
  .header-new button.header-more-button:hover {
    color: #140D77;
    background-color: #F0F7FF;
    border-color: transparent;
  }
}
.header-new button.header-more-button.is-disabled {
  color: #939DAD;
  background-color: #E9ECF2;
  border-color: #C0C5CC;
}
.header-new button.header-more-button.is-current {
  color: #ffffff;
  background-color: #697180;
  border-color: transparent;
}

/* header-global-nav
-------------------------*/
.header-new nav.header-global-nav {
  display: none;
  width: 100%;
  height: calc(100vh - var(--header-height));
  height: calc(100dvh - var(--header-height));
  background: #ffffff;
  border: none;
  position: absolute;
  left: 0;
  z-index: 10000001;
  overflow-y: hidden;
}
.header-new nav.header-global-nav.is-fixed {
  position: fixed;
  top: var(--header-height);
}
/* header-gnav-container
-------------------------*/
.header-gnav-container {
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  overscroll-behavior-y: contain;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.header-gnav-container::-webkit-scrollbar{
  display: none;
}

/* header-gnav
-------------------------*/
.header-gnav {
  width: 100%;
  height: 100%;
  background-color: #ffffff;
}

@media screen and (max-width: 767px) {
  .header-gnav {
    display: block;
  }

  .header-gnav[data-device=pc] {
    display: none;
  }
}

@media print, screen and (min-width: 768px) {
  .header-gnav {
    display: flex;
    flex-direction: column;
  }

  .header-gnav[data-device=sp] {
    display: none;
  }
}

/* header-gnav-head
-------------------------*/
@media print, screen and (min-width: 768px) {
  .header-gnav-head {
    padding: 32px 48px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-gnav-head {
    padding: 32px 20px;
  }
}
@media screen and (max-width: 767px) {
  .header-gnav-head {
    background-color: #F5F7FA;
    padding: 16px 0;
  }
}
.header-gnav-head__inner {
  margin: 0 auto;
}
@media print, screen and (min-width: 768px) {
  .header-gnav-head__inner {
    display: flex;
    gap: 16px;
    max-width: 1280px;
    width: 100%;
    padding: 0 20px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1024px) {
  .header-gnav-head__inner {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .header-gnav-head__inner {
    width: calc(335 / 375 * 100%);
  }
}
.header-gnav-head__col {
  width: calc(100% / 5);
}
.header-gnav-head__heading--language {
  padding-top: 24px;
  border-top: 1px solid #C0C5CC;
  margin-top: 24px;
}
.header-gnav-head__heading--language.header-gnav-heading {
  font-size: 14px !important;
  border-top: 1px solid #C0C5CC;
  margin-top: 24px;
}
.header-gnav-head__heading + .header-gnav-head__links, .header-gnav-head__heading + .header-gnav-head__sub-heading {
  margin-top: 16px;
}
.header-gnav-head__heading.header-gnav-head__heading--language + .header-gnav-head__links {
  margin-top: 8px;
}
@media print, screen and (min-width: 768px) {
  .header-gnav-head__links + .header-gnav-head__heading {
    margin-top: 32px;
  }
  .header-gnav-head__links + .header-gnav-head__sub-heading {
    margin-top: 16px;
  }
}

/* header-gnav-body
-------------------------*/
@media screen and (max-width: 767px) {
  .header-gnav-body {
    padding-top: 24px;
  }
}
@media screen and (max-width: 767px) {
  .header-gnav-body__inner {
    padding: 0 20px;
  }
}
@media screen and (max-width: 767px) {
  .header-gnav-body__links {
    margin-top: 8px;
  }
}
@media screen and (max-width: 767px) {
  .header-gnav-body__pulldown {
    margin-top: 16px;
  }
  .header-gnav-body__pulldown + .header-gnav-body__heading {
    margin-top: 32px !important;
  }
}

/* header-gnav-heading 
-------------------------*/
.header-gnav-heading {
  font-weight: bold;
  color: #2C2A29;
  line-height: 1.3;
  text-align: left;
  border: none;
}
@media print, screen and (min-width: 768px) {
  .header-gnav-heading {
    font-size: 20px !important;
  }
}
@media screen and (max-width: 767px) {
  .header-gnav-heading {
    font-size: 16px !important;
    margin: 0 !important;
  }
}
.header-gnav-heading span {
  font-size: inherit;
  font-weight: inherit;
  position: unset;
}
.header-new a.header-gnav-heading__link {
  display: flex;
  align-items: center;
  color: #2C2A29;
  transition: color 0.3s;
  cursor: pointer;
}
.header-gnav-heading__icon {
  margin-left: 8px;
}
@media (hover: hover) {
  .header-new a.header-gnav-heading__link:hover {
    color: #140D77;
  }
  .header-new a.header-gnav-heading__link:hover .header-gnav-heading__icon path {
    fill: #140D77;
  }
}

/* header-gnav-sub-heading
-------------------------*/
.header-gnav-sub-heading {
  font-weight: bold;
  font-size: 14px;
  color: #2C2A29;
  text-align: left;
}

/* header-gnav-links
-------------------------*/
@media print, screen and (min-width: 768px) {
  .header-gnav-links {
    display: block;
    margin-top: 8px;
  }
}
@media screen and (max-width: 767px) {
  .header-gnav-links {
    display: flex;
    justify-content: space-between;
    gap: 4px;
    width: 100%;
  }
}
@media print, screen and (min-width: 768px) {
  .header-gnav-links__item + .header-gnav-links__item {
    margin-top: 8px;
  }
}
@media screen and (max-width: 767px) {
  .header-gnav-links__item {
    display: flex;
    width: calc(80 / 335 * 100%);
  }
}
.header-new a.header-gnav-links__link {
  transition: color 0.3s;
}
.header-new a.header-gnav-links__link.is-blank {
  display: flex;
  align-items: center;
}
@media print, screen and (min-width: 768px) {
  .header-new a.header-gnav-links__link {
    display: block;
    font-size: 14px;
    line-height: 20px;
    color: #2C2A29;
  }
}
@media screen and (max-width: 767px) {
  .header-new a.header-gnav-links__link {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    text-align: center;
    min-height: 80px;
    background-color: #F5F7FA;
    border-radius: 8px;
    position: relative;
  }
  .header-new a.header-gnav-links__link span {
    color: #2C2A29;
    font-size: 12px;
    line-height: 1.3;
  }
  .header-gnav-links__icon {
    margin-bottom: 4px;
  }
  .header-gnav-links--overseas .header-gnav-links__link .header-gnav-links__icon path {
    fill: #4094F8;
  }
  .header-gnav-links--domestic .header-gnav-links__link .header-gnav-links__icon path {
    fill: #2EA307;
  }
}
@media (hover: hover) {
  .header-gnav-links__link:hover {
    color: #140D77;
    text-decoration: 1px underline #140D77;
  }
  .header-gnav-links__link:hover.is-blank::after {
    background-color: #140D77;
  }
}
.header-gnav-links__link.is-current {
  color: #939DAD !important;
  pointer-events: none;
}

/* header-gnav-foot
-------------------------*/
.header-gnav-foot {
  background-color: #F5F7FA;
  padding: 9px 0;
  margin-top: auto;
}

.header-gnav-foot__inner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}

/* header-gnav-list
-------------------------*/
@media screen and (max-width: 767px) {
  .header-gnav-list {
    margin-top: 35px;
  }
}
@media screen and (max-width: 767px) {
  .header-gnav-list__item {
    border-top: 1px solid #C0C5CC;
  }
}

/* header-search
-------------------------*/
.header-search {
  display: inline-flex;
  align-items: center;
  height: 50px;
  border-radius: 8px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .header-search {
    width: 100%;
  }
}
.header-search__label {
  display: block;
  width: 268px;
  height: 100%;
  font-size: 14px;
  line-height: 1.5;
  border-style: solid;
  border-width: 1px 0 1px 1px;
  border-color: #939DAD;
  border-radius: 8px 0 0 8px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .header-search__label {
    width: 100%;
  }
}
.header-new input.header-search__input {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  padding: 16px 8px !important;
  border: none;
  border-radius: 0;
  text-indent: 0;
  cursor: auto;
}
.header-search__input::placeholder {
  color: #939DAD;
}
.header-new button.header-search__button {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  height: 100%;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.3;
  color: #ffffff;
  background-color: #10069F !important;
  padding: 15px 12px 17px !important;
  transition: 0.3s;
}
.header-search__icon {
  margin-right: 4px;
  margin-top: 2px;
}
@media (hover: hover) {
  .header-new button.header-search__button:hover {
    background-color: #140D77 !important;
  }
}

/* otherService
-------------------------*/
.otherService {
  display: block;
  width: 100%;
}
.otherService__heading {
  font-weight: bold;
  color: #2C2A29;
  text-align: left;
  border: none;
}
.otherService__icon {
  transition: all 0.3s;
}
@media screen and (max-width: 767px) {
  .otherService__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 16px !important;
    line-height: 1.5;
    padding: 16px 20px;
    cursor: pointer;
    position: relative;
    transition: color 0.3s;
    margin: 0 !important;
  }
  .otherService__heading.is-opened .otherService__icon {
    transform: rotate(180deg);
  }
}
.otherService__contents {
  display: none;
}
.otherService__sub-heading {
  font-weight: bold;
  font-size: 14px;
  line-height: 1.5;
  color: #2C2A29;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .otherService__sub-heading {
    padding: 8px 20px;
  }
}
@media screen and (max-width: 767px) {
  .otherService__links {
    background-color: #F5F7FA;
  }
}
.header-new a.otherService__link {
  display: block;
  color: #2C2A29;
  transition: color 0.3s;
}
.header-new a.otherService__link.is-blank {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .header-new a.otherService__link {
    padding: 12px 40px;
    font-size: 14px;
  }
}
@media (hover: hover) {
  .header-new a.otherService__link:hover {
    color: #140D77;
  }
}

/* store
-------------------------*/
@media screen and (max-width: 767px) {
  .store {
    display: flex;
    align-items: center;
    gap: 1em;
    width: 100%;
    padding: 15px 20px;
  }
}
@media print, screen and (min-width: 768px) {
  .store__heading {
    font-size: 14px !important;
    line-height: 1.5;
    border: none;
    margin: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .store__heading {
    width: 50%;
    font-weight: bold;
    font-size: 16px !important;
    line-height: 1.5;
    text-align: left;
    border: none;
    margin: 0 !important;
  }
}
.header-new a.store__link {
  color: #2C2A29;
  transition: color 0.3s;
}
@media (hover: hover) {
  .header-new a.store__link:hover {
    color: #140D77;
  }
}

/* corporate
-------------------------*/
.corporate {
  font-weight: bold;
  border: none;
}
@media print, screen and (min-width: 768px) {
  .corporate {
    font-size: 20px;
    line-height: 1.5;
  }
}
@media screen and (max-width: 767px) {
  .corporate {
    font-size: 16px !important;
    line-height: 1.5;
    padding: 15px 20px;
    text-align: left;
    margin: 0 !important;
  }
}
@media print, screen and (min-width: 768px) {
  .header-new a.corporate__link {
    display: flex;
    color: #2C2A29;
    align-items: center;
    transition: color 0.3s;
  }
}
@media (hover: hover) {
  .header-new a.corporate__link:hover {
    color: #140D77;
  }
  .header-new a.corporate__link:hover::after {
    background-color: #140D77;
  }
}
@media screen and (max-width: 767px) {
  .header-new a.corporate__link {
    display: inline-flex;
    color: #2C2A29;
  }
}

/* language
-------------------------*/
@media screen and (max-width: 767px) {
  .language {
    display: flex;
    align-items: center;
    gap: 24px;
    width: 100%;
    padding: 15px 20px;
  }
}
@media screen and (max-width: 767px) {
  .language__heading {
    font-size: 14px !important;
    font-weight: bold;
    line-height: 1.5;
    color: #2C2A29;
    border: none;
    margin: 0 auto !important;
  }
}
@media screen and (max-width: 767px) {
  .language__list {
    display: flex;
    align-items: center;
    gap: 24px;
    width: 100%;
    font-size: 12px;
    line-height: 1.5;
  }
}
.header-new a.language__link {
  display: inline-flex;
  color: #2C2A29;
  transition: color 0.3s;
}
@media (hover: hover) {
  .header-new a.language__link:hover {
    color: #140D77;
  }
}
.header-new a.language__link.is-current {
  color: #939DAD;
  pointer-events: none;
}

/* header-other-links
-------------------------*/
.header-other-links {
  display: flex;
  align-items: center;
  font-size: 12px;
  line-height: 16px;
  color: #2C2A29;
}
@media print, screen and (min-width: 768px) {
  .header-other-links {
    margin-left: 32px;
  }
}
@media screen and (max-width: 767px) {
  .header-other-links {
    justify-content: center;
    padding: 8px 20px;
  }
}
.header-other-links__item {
  display: flex;
  align-items: center;
}
.header-other-links__item + .header-other-links__item::before {
  content: "";
  display: inline-flex;
  width: 1px;
  height: 16px;
  background-color: #C0C5CC;
  margin: 0 16px;
}
.header-other-links__link {
  color: #2C2A29;
  transition: color 0.3s;
}
@media (hover: hover) {
  .header-other-links__link:hover {
    color: #140D77;
    text-decoration: underline;
  }
}

/* header-pulldown
-------------------------*/
.header-pulldown {
  display: block;
  border: 1px solid #C0C5CC;
  border-radius: 8px;
  overflow: hidden;
  font-size: 14px;
  line-height: 1.5;
}
.header-new button.header-pulldown__button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  text-align: left;
  line-height: 1.5;
  padding: 8px 8px 8px 16px !important;
  position: relative;
}
.header-pulldown__icon {
  transition: all 0.3s;
}
.header-new button.header-pulldown__button.is-opened .header-pulldown__icon {
  transform: rotate(180deg);
}
.header-pulldown__links {
  display: none;
  background-color: #F5F7FA;
  padding: 4px 0;
}
.header-new a.header-pulldown__link {
  display: block;
  color: #2C2A29;
  padding: 8px 15px;
}
@media screen and (max-width: 767px) {
  .header-pulldown__link--top {
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #697180;
  }
}


/*-------------------------
  フッター
-------------------------*/
/* footer
-------------------------*/
.footer-new {
  width: auto;
  background-color: #fff;
  position: relative;
}

.footer__body {
  background-color: #F5F7FA;
}

@media print, screen and (min-width: 768px) {
  .footer__body {
    padding: 0 48px;
  }
}

/* footer-main-logo
-------------------------*/
.footer-top-button {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  box-shadow: 0px 2px 6px #00000026;
  background-color: #FFFFFF;
  position: relative;
  transition: background-color 0.3s;
}

@media screen and (max-width: 767px) {
  .footer-top-button {
    width: 44px;
    height: 44px;
    background-size: 18px 10px;
  }
  .footer-top-button__icon svg {
    width: 24px;
    height: 24px;
  }
}

@media print, screen and (min-width: 768px) {
  .footer-top-button {
    width: 24px;
    height: 24px;
    background-size: 10px 6px;
  }

  .footer-top-button::before {
    content: "ページトップ";
    font-size: 14px;
    color: #697180;
    text-decoration: none;
    padding-right: 8px;
    position: absolute;
    left: -92px;
    top: 4px;
    transition: text-decoration 0.3s;
  }
}


@media (hover: hover) {
  .footer-top-button:hover {
    background-color: #EFF7FF;
  }
  .footer-top-button:hover::before {
    text-decoration: underline;
  }
  .footer-top-button:hover .footer-top-button__icon {
    fill: #140D77;
  }
}

/* footer-main-logo
-------------------------*/
.footer-main-logo__link {
  display: block;
  transition: opacity 0.3s;
}

@media screen and (min-width: 768px) {
  .footer-main-logo__link {
    width: 101.8px;
  }
}

@media print, screen and (max-width: 767px) {
  .footer-main-logo__link {
    width: 127px;
    margin: 0 auto;
  }
}

@media (hover: hover) {
  .footer-main-logo__link:hover {
    opacity: 0.9;
  }
}

/* footer-nav-item
-------------------------*/
.footer-nav-item__heading {
  font-size: 14px !important;
  line-height: 1.5;
  font-weight: bold;
  color: #2C2A29;
  text-align: left;
  border: none;
  margin: 0 !important;
}
.footer-nav-item__list {
  margin-top: 8px;
}

/* footer-nav-list
-------------------------*/
.footer-nav-list__item {
  font-size: 12px;
  line-height: 1.5;
}

.footer-new a.footer-nav-list__link {
  color: #2C2A29;
  text-decoration: none;
  transition: text-decoration 0.3s;
}

@media screen and (min-width: 768px) {
  .footer-nav-list__item + .footer-nav-list__item {
    margin-top: 8px;
  }
}

@media print, screen and (max-width: 767px) {
  .footer-nav-list {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
  }
}

@media (hover: hover) {
  .footer-new a.footer-nav-list__link:hover {
    text-decoration: underline;
  }
}

/* footer-confirmation
-------------------------*/
.footer-confirmation__heading {
  color: #2C2A29;
  font-weight: bold;
  text-align: center;
  border: none;
}

.footer-confirmation__buttons {
  margin: 16px auto 0;
}

@media screen and (max-width: 767px) {
  .footer-confirmation__heading {
    font-size: 16px !important;
  }
}

@media print, screen and (min-width: 768px) {
  .footer-confirmation__heading {
    font-size: 20px !important;
  }
}

/* footer-buttons
-------------------------*/
.footer-buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.footer-buttons__item {
  max-width: 256px;
}

.footer-buttons__item + .footer-buttons__item {
  margin-top: 16px;
}

/* footer-head
-------------------------*/
.footer__head {
  border-top: 1px solid #C0C5CC;
}
.footer-head__inner {
  display: flex;
  position: relative;
}

.footer-head__top-button {
  position: absolute;
}

.footer-new nav.footer-head__nav {
  display: flex;
  background: #fff;
  border-bottom: none;
}

@media screen and (min-width: 768px) {
  .footer__head {
    padding: 16px 48px 64px;
  }

  .footer-head__inner {
    justify-content: space-between;
    max-width: 1104px;
    padding-top: 40px;
    margin: 0 auto;
  }

  .footer-head__top-button {
    top: 0;
    right: 0;
  }

  .footer-head__logo {
    width: calc(( 170 / 1100 ) * 100%);
  }

  .footer-new nav.footer-head__nav {
    width: calc(( 560 / 1100 ) * 100%);
    order: 1;
    margin-left: auto;
  }

  .footer-head__nav-item {
    width: calc(100% / 3);
    border-right: 1px solid #C0C5CC;
    padding: 0 20px;
  }

  .footer-head__confirmation {
    width: calc(( 370 / 1100 ) * 100%);
    order: 2;
    padding-left: 20px;
  }
}

@media screen and (max-width: 767px) {
  .footer-head__inner {
    width: 100%;
    flex-direction: column;
    padding: 40px 20px;
  }

  .footer-head__top-button {
    top: 16px;
    right: 20px;
  }

  .footer-head__logo {
    width: 100%;
    order: 0;
  }

  .footer-new nav.footer-head__nav {
    flex-direction: column;
    border-top: 1px solid #C0C5CC;
    margin-top: 45px;
  }

  .footer-head__nav-item {
    margin-top: 24px;
  }

  .footer-head__confirmation {
    width: 100%;
    margin-top: 40px;
  }
}

@media print {
  .footer__head {
    display: none;
  }
}

/* footer-body
-------------------------*/
@media screen and (min-width: 768px) {
  .footer-body {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .footer-body__inner {
    max-width: 1104px;
    margin: 0 auto;
  }

  .footer-body__item + .footer-body__item {
    margin-top: 64px;
  }
}

@media screen and (max-width: 767px) {
  .footer-category {
    border-top: 1px solid #C0C5CC;
  }
}

@media print {
  .footer-body {
    display: none;
  }
}


/* footer-category
-------------------------*/
.footer-category--links {
  display: flex;
  flex-wrap: wrap;
}

.footer-category__large-heading {
  color: #2C2A29;
  border: none;
}

.footer-category-large-heading__link {
  display: block;
  color: #2C2A29;
  transition: opacity 0.3s;
}

@media (hover: hover) {
  .footer-category-large-heading__link:hover,
  .footer-category-large-heading__sp-link:hover {
    text-decoration: underline;
  }
}

@media print, screen and (min-width: 768px) {
  .footer-category--links {
    column-gap: 24px;
    row-gap: 20px;
  }

  .footer-category__contents {
    display: block!important;
    margin-top: 24px;
  }

  .footer-category__large-heading {
    display: inline-flex;
    font-size: 26px;
    font-weight: normal;
  }

  .footer-category-large-heading__sp {
    display: none;
  }

  .footer-category-large-heading__link {
    position: relative;
    font-weight: normal;
  }
}

@media screen and (max-width: 767px) {
  .footer-category__contents {
    display: none;
    width: 100%;
    background-color: #ffffff;
    margin-top: 0;
  }

  .footer-category__large-heading {
    font-size: 16px !important;
    line-height: 1.5;
    padding: 16px 20px;
    font-weight: bold;
    text-align: left;
    margin: 0 !important;
  }

  .footer-category:not(.footer-category--links) .footer-category__large-heading {
    cursor: pointer;
    position: relative;
    transition: color 0.3s;
  }

  .footer-category-large-heading__sp {
    display: block;
    font-size: 14px;
    padding: 8px 20px;
  }
  .footer-new a.footer-category-large-heading__sp-link {
    color: #2C2A29;
  }

  .footer-category:not(.footer-category--links) .footer-category__accordion .footer-category-large-heading__link {
    pointer-events: none;
  }

  .footer-category--links .footer-category__large-heading{
    width: 50%;
  }
  .footer-category--links .footer-category-large-heading:nth-child(2n+1){
    border-top: 1px solid #C0C5CC;
    margin-top: -1px;
  }
  .footer-category--links .footer-category-large-heading:nth-child(2n){
    border-bottom: 1px solid #C0C5CC;
  }
  .footer-category--links .footer-category-large-heading:first-child,
  .footer-category--links .footer-category-large-heading:nth-child(2n):last-child {
    border: 0;
  }
  .footer-category--links .footer-category-large-heading__link{
    display: inline-block;
  }

  @media (hover: hover) {
    .footer-category-large-heading:hover {
      color: #140D77;
    }
    .footer-category__large-heading:hover.footer-category__large-heading::before {
      background-color: #140D77;
    }
    .footer-category:not(.footer-category--links) .footer-category__large-heading:hover .footer-category-large-heading__link {
      color: #140D77;
    }
  }
}

/* footer-category-heading
-------------------------*/
.footer-category-heading {
  font-size: 14px;
  font-weight: bold;
  color: #2C2A29;
  text-align: left;
}
.footer-category-heading__link {
  color: #2C2A29;
}
.footer-new a.footer-category-heading__sp-link {
  color: #2C2A29;
}

@media (hover: hover) {
  .footer-category-heading__link:hover,
  .footer-new a.footer-category-heading__sp-link:hover {
    text-decoration: underline;
  }
}

@media print, screen and (min-width: 768px) {
  .footer-category-heading + .footer-body-nav {
    margin-top: 16px;
  }

  .footer-category-heading + .footer-body-nav--full {
    margin-top: 8px;
  }
  .footer-category-heading__sp {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .footer-category-heading {
    position: relative;
    border-top: 1px solid #C0C5CC;
    padding: 16px 20px;
    cursor: pointer;
    transition: color 0.3s;
    font-size: 16px;
  }
  .footer-category-heading__sp {
    display: block;
    font-size: 14px;
    padding-bottom: 16px;
  }
  .footer-category-heading__link {
    pointer-events: none;
  }

  @media (hover: hover) {
    .footer-category-heading:hover {
      color: #140D77;
    }

    .footer-category-heading:hover::before {
      background-color: #140D77;
    }
  }
}

/* footer-body-nav
-------------------------*/
.footer-body-nav__row {
  display: flex;
  align-items: baseline;
}

.footer-body-nav__row + .footer-body-nav__row {
  margin-top: 16px;
}

.footer-body-nav__heading {
  width: 72px;
  font-size: 12px;
  color: #2C2A29;
  font-weight: bold;
}

.footer-body-nav__heading + .footer-body-nav__list {
  margin-left: 24px;
}

.footer-body-nav__list {
  width: calc(100% - 96px);
  display: flex;
  flex-wrap: wrap;
}

.footer-body-nav--full .footer-body-nav__list {
  width: 100%;
}

@media print, screen and (min-width: 768px) {
  .footer-body-nav {
    display: block!important;
  }

  .footer-body-nav--full + .footer-body-nav--full {
    margin-top: 32px;
  }

  .footer-body-nav + .footer-category-heading {
    margin-top: 40px;
  }

  .footer-body-nav__list {
    align-items: center;
  }
}

@media screen and (max-width: 767px) {
  .footer-body-nav[id] {
    display: none;
  }
  .footer-body-nav {
    padding: 8px 20px 17px;
  }
  .footer-body-nav + .footer-body-nav {
    border-top: 1px solid #C0C5CC;
    padding-top: 17px;
  }
}

/* footer-body-nav-list
-------------------------*/
.footer-body-nav-list__item {
  font-size: 0;
}

.footer-body-nav-list__item:not(:last-of-type) {
  position: relative;
}

.footer-body-nav-list__item:not(:last-of-type)::after {
  content: "";
  width: 1px;
  height: 16px;
  background-color: #C0C5CC;
  position: absolute;
  top: 0;
  right: 0;
}

.footer-new a.footer-body-nav-list__link {
  display: inline-block;
  font-size: 12px;
  color: #2C2A29;
  line-height: 16px;
  transition: text-decoration 0.3s;
}

@media (hover: hover) {
  .footer-new a.footer-body-nav-list__link:hover {
    text-decoration: underline;
  }
}

.footer-body-nav-list--pickup .footer-body-nav-list__item {
  padding-right: 0px;
}

.footer-body-nav-list--pickup .footer-body-nav-list__item::after {
  content: none;
}

.footer-body-nav-list--pickup .footer-new a.footer-body-nav-list__link {
  font-size: 14px;
}

@media print, screen and (min-width: 768px) {
  .footer-body-nav-list {
    gap: 8px;
  }
  .footer-body-nav-list__item:not(:last-of-type) {
    padding-right: 8px;
  }

  .footer-body-nav-list--pickup {
    column-gap: 24px;
    row-gap: 16px;
  }
}
@media screen and (max-width: 767px) {
  .footer-body-nav-list {
    gap: 16px;
  }
  .footer-body-nav-list__item:not(:last-of-type) {
    padding-right: 16px;
  }

  .footer-body-nav-list--pickup {
    flex-direction: column;
    row-gap: 23px;
  }
}

/* footer-foot
-------------------------*/
.footer-foot {
  padding: 24px 48px;
}

.footer-foot__inner {
  display: flex;
  width: 100%;
}

.footer-foot__copyright {
  font-size: 10px;
  color: #697180;
}

@media print, screen and (min-width: 768px) {
  .footer-foot__inner {
    justify-content: space-between;
    flex-direction: row-reverse;
    align-items: center;
    max-width: 1104px;
    margin: 0 auto;
  }

  .footer-foot__logos {
    margin-left: 1em;
  }
}

@media screen and (max-width: 767px) {
  .footer-foot__inner {
    flex-direction: column;
  }

  .footer-foot__copyright {
    text-align: center;
    margin-top: 16px;
  }
}

@media print {
  .footer-foot {
    padding: 24px;
    border-top: 1px solid #C0C5CC;
  }
}

/* footer-foot-logos
-------------------------*/
.footer-foot-logos {
  display: flex;
}

.footer-foot-logos__item {
  display: block;
  width: 60px;
  height: 60px;
}

@media (hover: hover) {
  .footer-foot-logos__item:hover {
    opacity: .8;
  }
}

.footer-foot-logos__item + .footer-foot-logos__item {
  margin-left: 16px;
}

@media screen and (max-width: 767px) {
  .footer-foot-logos {
    justify-content: center;
  }
}

/* footer-foot-logos
-------------------------*/
.footer-pill-button {
  width: 100%;
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  text-decoration: none;
  background-color: #10069F;
  padding: 10px 16px;
  border-radius: 100px;
  transition: background-color 0.3s;
}

.footer-pill-button__text {
  font-size: 16px;
  font-weight: bold;
  color: #FFFFFF;
}

.footer-pill-button__text span {
  font-size: 12px;
  color: #fff !important;
}

@media (hover: hover) {
  .footer-pill-button:hover {
    background-color: #140D77;
  }
}

/* footer-pulldown
-------------------------*/
.footer-pulldown {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media print, screen and (min-width: 768px) {
  .footer-pulldown__icon {
    display: none;
  }
  .footer-category-large-heading__link .footer-pulldown__icon {
    display: block;
    transform: rotate(-90deg);
    margin-top: 4px;
    margin-left: 8px;
  }
}
@media screen and (max-width: 767px) {
  .footer-pulldown__icon {
    transition: all 0.3s;
  }
  .footer-category__large-heading.is-opened .footer-pulldown__icon,
  .footer-category-heading.is-opened .footer-pulldown__icon {
    transform: rotate(180deg);
  }
}