:root {
  --white: #fff;
  --black-01: #333;
  --gray-01: #ddd;
  --gray-02: #707070;
  --gray-03: #c4c4c4;
  --gray-04: #f6f6f6;
  --gray-05: #eee;
  --gray-06: #ccc;
  --gray-07: #f2f2f2;
  --box-shadow-01: rgba(0, 0, 0, 0.16);
  --box-shadow-02: rgba(0, 0, 0, 0.08);
  --box-shadow-03: rgba(51, 51, 51, 0.08);
  --text-shadow-01: rgba(51, 51, 51, 0.56);
  --gradient-01: linear-gradient(0deg, rgba(51, 51, 51, 0.4) 0%, rgba(51, 51, 51, 0.04) 64%, rgba(51, 51, 51, 0) 100%);
  --translucent-black-01: rgba(51, 51, 51, 0.4);
  --translucent-black-02: rgba(51, 51, 51, .85);
  --translucent-white-01: rgba(255, 255, 255, .85)
}

@keyframes animation-slide-up-01 {
  0% {
      opacity: 0;
      transform: translateY(120%)
  }
  100% {
      opacity: 1;
      transform: translateY(0)
  }
}

@keyframes animation-slide-down-01 {
  0% {
      opacity: 0;
      transform: translateY(-120%)
  }
  100% {
      opacity: 1;
      transform: translateY(0)
  }
}

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

html {
  box-sizing: border-box;
  font-size: 62.5%;
  position: relative;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  overflow-y: scroll
}

body {
  background: var(--white);
  color: var(--black-01);
  font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴシック", "Hiragino Sans", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
  letter-spacing: .025em;
  line-height: 1.85;
  word-break: break-word
}

@media only screen and (max-width: 768px) {
  body {
      font-size: 1.4rem;
      letter-spacing: 0;
      line-height: 1.6
  }
}

article, aside, figcaption, figure, footer, header, main, nav, section, svg, picture {
  display: block
}

a, button, select, input[type=radio], input[type=checkbox] {
  color: inherit;
  font: inherit;
  cursor: pointer
}

a {
  color: var(--theme-color-01);
  text-decoration: underline
}

a:hover {
  text-decoration: none
}

h1, h2, h3, h4, h5, h6, small {
  font-weight: 500;
  font-size: 1em
}

input[type=text], input[type=tel], input[type=password], textarea, label {
  color: inherit;
  font: inherit;
  cursor: text
}

button {
  background: none
}

button, select, input[type=text], input[type=tel], input[type=password], input[type=range] {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0
}

ul, ol {
  list-style: none
}

table {
  border-collapse: collapse;
  table-layout: fixed
}

th, dt {
  font-weight: 500
}

b {
  font-weight: 700
}

i {
  font-style: normal
}

strong {
  color: var(--black-01);
  font-weight: 700;
  font-style: normal
}

em {
  font-weight: 700;
  font-style: normal
}

sup, sub {
  font-size: .8em
}

sup {
  vertical-align: top
}

sub {
  vertical-align: bottom
}

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

p {
  margin-bottom: 24px
}

hr {
  border: 0
}

.cmp-contentfragment__title, .cmp-contentfragment__description, .cmp-contentfragment__element-title {
  display: none
}

.structure-header-01 {
  border-top: 6px solid var(--theme-color-01);
  border-bottom: 1px solid var(--gray-01);
  background: #fff;
  padding: 0 20px;
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999
}

.structure-header-01 .cmp-experiencefragment--Header {
  display: flex
}

.structure-header-01 .cmp-experiencefragment--Header>.cmp-container {
  display: flex;
  align-items: center;
  max-width: 1160px;
  min-height: 80px;
  margin: auto;
  padding: 16px 0 13px;
  width: 100%
}

.structure-header-01 .header-area-01 {
  display: flex
}

.structure-header-01 .header-area-01>.cmp-container {
  display: flex;
  align-items: center;
  max-width: 1160px;
  min-height: 80px;
  margin: auto;
  padding: 16px 0 13px;
  width: 100%
}

.structure-header-01 .js-hamburger-menu__blind {
  display: none
}

.structure-header-01 .header-logo-wrap {
  padding-right: 10px;
  width: 50%
}

.structure-header-01 .header-logo-wrap>.cmp-container {
  display: flex;
  align-items: center
}

.structure-header-01 .image-logo-header-01 {
  max-width: 50%;
  flex-shrink: 0;
  margin-right: 32px
}

.structure-header-01 .image-logo-header-01 .cmp-image__link {
  transition: opacity .2s ease-in-out;
  text-decoration: none
}

.structure-header-01 .image-logo-header-01 .cmp-image__link:hover {
  opacity: .5
}

.structure-header-01 .image-logo-header-01 .cmp-image__link .cmp-image__image {
  max-height: 52px;
  width: auto
}

.structure-header-01 .text-logo-header-01 p {
  font-weight: 700;
  font-size: 1.8rem;
  margin: 0
}

.structure-header-01 .text-logo-header-01 p a {
  color: var(--black-01);
  text-decoration: none;
  transition: opacity .2s ease-in-out
}

.structure-header-01 .text-logo-header-01 p a:hover {
  opacity: .5
}

.structure-header-01 .button-header-hamburger-01 {
  display: none
}

.structure-header-01 .header-navigation-wrap {
  width: 50%
}

.structure-header-01 .navigation-global-01 {
  width: 100%
}

.structure-header-01 .navigation-global-01>.cmp-list {
  display: flex;
  justify-content: flex-end;
  align-items: center
}

.structure-header-01 .navigation-global-01>.cmp-list>.cmp-list__item+.cmp-list__item {
  margin-left: 26px
}

.structure-header-01 .navigation-global-01>.cmp-list>.cmp-list__item .cmp-list__item-link {
  color: var(--black-01);
  font-weight: 700;
  text-decoration: none;
  transition: opacity .2s ease-in-out
}

.structure-header-01 .navigation-global-01>.cmp-list>.cmp-list__item .cmp-list__item-link:hover {
  opacity: .5
}

@media only screen and (max-width: 1279px) {
  .structure-header-01 {
      border-bottom: 1px solid var(--gray-03)
  }
  .structure-header-01 .cmp-experiencefragment--Header {
      display: block
  }
  .structure-header-01 .cmp-experiencefragment--Header>.cmp-container {
      display: block;
      min-height: auto;
      padding: 0
  }
  .structure-header-01 .header-area-01 {
    display: block
}
  .structure-header-01 .header-area-01>.cmp-container {
      display: block;
      min-height: auto;
      padding: 0
  }
  .structure-header-01 .js-hamburger-menu__blind {
      background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 10%, var(--translucent-black-01) 10%, var(--translucent-black-01) 100%);
      cursor: pointer;
      display: block;
      position: fixed;
      top: 0px;
      right: 0;
      left: 0;
      bottom: 0;
      opacity: 0;
      visibility: hidden;
      transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
      z-index: 998
  }
  .structure-header-01 .js-hamburger-menu__blind.is-open {
      visibility: visible;
      opacity: 1
  }
  .structure-header-01 .header-logo-wrap {
      display: flex;
      align-items: center;
      height: 60px;
      padding-right: 90px;
      width: 100%
  }
  .structure-header-01 .image-logo-header-01 {
      max-width: 78px;
      margin-right: 10px
  }
  .structure-header-01 .image-logo-header-01 .cmp-image__link .cmp-image__image {
      max-height: 34px
  }
  .structure-header-01 .text-logo-header-01 p {
      font-size: 1.4rem;
  }
  .structure-header-01 .button-header-hamburger-01 {
      display: block;
      position: absolute;
      top: 0;
      right: 10px;
      width: 60px;
      height: 60px;
      transition: opacity .2s ease-in-out
  }
  .structure-header-01 .button-header-hamburger-01:hover {
      opacity: .5
  }
  .structure-header-01 .button-header-hamburger-01>span {
      display: block;
      position: relative;
      transform: translateY(4px)
  }
  .structure-header-01 .button-header-hamburger-01>span::before, .structure-header-01 .button-header-hamburger-01>span::after {
      content: "";
      position: absolute;
      display: block;
      margin: auto;
      width: 24px;
      height: 1px;
      background: var(--gray-02);
      top: 0;
      right: 0;
      left: 0;
      transition: transform .3s ease-in-out
  }
  .structure-header-01 .button-header-hamburger-01>span::after {
      transform: translateY(16px)
  }
  .structure-header-01 .button-header-hamburger-01>span .button-text {
      color: var(--black-01);
      font-size: 1rem;
      display: block;
      padding-top: 20px;
      position: relative;
      text-align: center
  }
  .structure-header-01 .button-header-hamburger-01>span .button-text::before {
      content: "";
      position: absolute;
      display: block;
      margin: auto;
      width: 24px;
      height: 1px;
      background: var(--gray-02);
      top: 8px;
      right: 0;
      left: 0;
      transition: opacity .3s ease-in-out
  }
  .structure-header-01 .button-header-hamburger-01.is-open>span::before {
      transform: translateY(6px) rotate(45deg)
  }
  .structure-header-01 .button-header-hamburger-01.is-open>span::after {
      transform: translateY(6px) rotate(-45deg)
  }
  .structure-header-01 .button-header-hamburger-01.is-open>span .button-text::before {
      opacity: 0
  }
  .structure-header-01 .header-navigation-wrap {
      position: absolute;
      left: 0;
      right: 0;
      visibility: hidden;
      height: 0;
      overflow: hidden;
      margin-top: 1px;
      transition: height .3s ease-in-out;
      width: 100%;
      z-index: 999
  }
  .structure-header-01 .header-navigation-wrap.is-animate {
      visibility: visible
  }
  .structure-header-01 .header-navigation-wrap.is-open {
      visibility: visible;
      height: auto
  }
  .structure-header-01 .header-navigation-wrap>.cmp-container {
      background: var(--white);
      max-height: calc(80vh - 60px);
      overflow-y: auto
  }
  .structure-header-01 .navigation-global-01>.cmp-list {
      display: block
  }
  .structure-header-01 .navigation-global-01>.cmp-list>.cmp-list__item {
      border-bottom: 1px solid var(--gray-03)
  }
  .structure-header-01 .navigation-global-01>.cmp-list>.cmp-list__item+.cmp-list__item {
      margin-left: 0
  }
  .structure-header-01 .navigation-global-01>.cmp-list>.cmp-list__item .cmp-list__item-link {
      display: block;
      font-size: 1.6rem;
      padding: 18px 20px;
      text-align: center
  }
}

.structure-wrap-01 {
  display: flex;
  width: 100%
}

.structure-wrap-01>.cmp-container {
  background: var(--white);
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  width: 100%
}

.structure-main-01, .structure-main-01-column-2 {
  padding: 0 20px
}

.structure-main-01.container, .container.structure-main-01-column-2 {
  padding: 0 20px
}

.structure-main-01-column-2>.cmp-container>.aem-Grid {
  display: flex;
  max-width: 1160px;
  margin: auto;
  padding: 57px 0 80px
}

.structure-main-01-column-2>.cmp-container>.aem-Grid>.structure__main-container {
  float: none;
  margin: 0;
  padding-right: 40px;
  width: calc(100% - 240px)
}

.structure-main-01-column-2>.cmp-container>.aem-Grid>.structure__main-container>.cmp-container>:first-child {
  margin-top: 0 !important
}

.structure-main-01-column-2>.cmp-container>.aem-Grid>.structure__main-container>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.structure-main-01-column-2>.cmp-container>.aem-Grid>.structure__side-container {
  float: none;
  width: 240px
}

.structure-main-01-column-2>.cmp-container>.aem-Grid>.structure__side-container>.cmp-container>:first-child {
  margin-top: 0 !important
}

.structure-main-01-column-2>.cmp-container>.aem-Grid>.structure__side-container>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 960px) {
  .structure-main-01-column-2>.cmp-container>.aem-Grid {
      display: block;
      padding: 40px 0 56px
  }
  .structure-main-01-column-2>.cmp-container>.aem-Grid>.structure__main-container {
      padding: 0 0 56px;
      width: 100%
  }
  .structure-main-01-column-2>.cmp-container>.aem-Grid>.structure__side-container {
      width: 100%
  }
}

.structure-footer-01 {
  float: none !important;
  background: var(--black-01);
  color: var(--white);
  margin-top: auto;
  padding: 0 20px;
  width: 100%
}

.structure-footer-01 .aem-Grid, .structure-footer-01 .aem-GridColumn {
  margin-left: 0 !important;
  float: none !important;
  width: 100% !important
}

.structure-footer-01 .cmp-experiencefragment--Footer>.cmp-container {
  max-width: 1160px;
  margin: auto;
  padding: 24px 0 16px
}

.structure-footer-01 .navigation-footer-01 {
  margin-bottom: 12px
}

.structure-footer-01 .navigation-footer-01>.cmp-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: -16px
}

.structure-footer-01 .navigation-footer-01>.cmp-list>.cmp-list__item {
  margin: 16px 32px 0 0;
  position: relative
}

.structure-footer-01 .navigation-footer-01>.cmp-list>.cmp-list__item::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  top: 0;
  bottom: 0;
  right: -16px;
  width: 1px;
  height: 17px;
  background: var(--gray-02)
}

.structure-footer-01 .navigation-footer-01>.cmp-list>.cmp-list__item:last-child {
  margin-right: 0
}

.structure-footer-01 .navigation-footer-01>.cmp-list>.cmp-list__item:last-child::after {
  content: none
}

.structure-footer-01 .navigation-footer-01>.cmp-list>.cmp-list__item .cmp-list__item-link {
  color: var(--white);
  font-weight: 400;
  text-decoration: none
}

.structure-footer-01 .navigation-footer-01>.cmp-list>.cmp-list__item .cmp-list__item-link:hover {
  text-decoration: underline
}

.structure-footer-01 .copyright p {
  font-weight: 400;
  font-size: 1.2rem;
  margin: 0;
  text-align: center
}

Footer .structure-footer-01 {
  padding-top: 24px;
  padding-bottom: 16px;
}

@media only screen and (max-width: 960px) {
  .structure-footer-01 .cmp-experiencefragment--Footer>.cmp-container {
      padding: 25px 0 22px
  }
  .structure-footer-01 .navigation-footer-01 {
      margin-bottom: 16px
  }
  .structure-footer-01 .navigation-footer-01>.cmp-list>.cmp-list__item {
      margin: 16px 24px 0 0
  }
  .structure-footer-01 .navigation-footer-01>.cmp-list>.cmp-list__item::after {
      right: -12px
  }
  .structure-footer-01 .copyright p {
      font-size: 1rem
  }
}

.title-page-01, .title-page-01-type-01 {
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 1.6;
  margin-bottom: 20px
}

.title-page-01 .cmp-title__text, .title-page-01-type-01 .cmp-title__text {
  font-weight: inherit
}

@media only screen and (max-width: 768px) {
  .title-page-01, .title-page-01-type-01 {
      font-size: 2rem;
      margin-bottom: 12px
  }
}

.title-page-01-type-01 {
  font-size: 2.4rem;
  line-height: 1.6;
  margin-bottom: 4px
}

@media only screen and (max-width: 768px) {
  .title-page-01-type-01 {
      font-size: 2rem;
      margin-bottom: 12px
  }
}

.title-page-02, .title-page-02-type-04, .title-page-02-type-03, .title-page-02-type-02, .title-page-02-type-01 {
  font-weight: 700;
  font-size: 3.2rem;
  line-height: 1.4;
  margin-bottom: 36px;
  padding-bottom: 22px;
  position: relative;
  text-align: center
}

.title-page-02::after, .title-page-02-type-04::after, .title-page-02-type-03::after, .title-page-02-type-02::after, .title-page-02-type-01::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  bottom: 0;
  right: 0;
  left: 0;
  width: 40px;
  height: 4px;
  background: var(--theme-color-01)
}

.title-page-02 .cmp-title__text, .title-page-02-type-04 .cmp-title__text, .title-page-02-type-03 .cmp-title__text, .title-page-02-type-02 .cmp-title__text, .title-page-02-type-01 .cmp-title__text {
  font-weight: inherit
}

@media only screen and (max-width: 768px) {
  .title-page-02, .title-page-02-type-04, .title-page-02-type-03, .title-page-02-type-02, .title-page-02-type-01 {
      font-size: 2.4rem;
      margin-bottom: 28px;
      padding-bottom: 16px
  }
  .title-page-02::after, .title-page-02-type-04::after, .title-page-02-type-03::after, .title-page-02-type-02::after, .title-page-02-type-01::after {
      width: 32px;
      height: 3px
  }
}

.title-page-02-type-01 {
  font-size: 2.4rem;
  line-height: 1.25;
  padding-bottom: 12px
}

@media only screen and (max-width: 768px) {
  .title-page-02-type-01 {
      font-size: 2rem;
      line-height: 1.5
  }
}

.title-page-02-type-02 {
  font-size: 1.8rem;
  line-height: 1.6666666667;
  margin-bottom: 24px;
  padding-bottom: 8px
}

.title-page-02-type-02::after {
  width: 100%;
  height: 3px
}

@media only screen and (max-width: 768px) {
  .title-page-02-type-02 {
      font-size: 2rem;
      line-height: 1.5;
      margin-bottom: 16px;
      padding-bottom: 10px
  }
  .title-page-02-type-02::after {
      width: 32px
  }
}

.title-page-02-type-03 {
  line-height: 1.5;
  margin-bottom: 24px;
  padding-bottom: 32px
}

@media only screen and (max-width: 768px) {
  .title-page-02-type-03 {
      padding-bottom: 24px
  }
}

.title-page-02-type-04 {
  font-size: 2.8rem;
  line-height: 1.2;
  margin: 72px 0 32px;
  padding-bottom: 20px
}

@media only screen and (max-width: 768px) {
  .title-page-02-type-04 {
      font-size: 2rem;
      margin: 56px 0 24px;
      padding-bottom: 20px
  }
  .title-page-02-type-04::after {
      width: 32px
  }
}

.title-page-03 {
  border-bottom: 2px solid var(--theme-color-01);
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 1.6;
  margin-bottom: 20px;
  padding-bottom: 12px
}

.title-page-03 .cmp-title__text {
  font-weight: inherit
}

@media only screen and (max-width: 768px) {
  .title-page-03 {
      font-size: 2rem;
      padding-bottom: 4px
  }
}

.title-page-04 {
  background: var(--gray-07);
  border-radius: 10px;
  font-weight: 700;
  font-size: 2.2rem;
  margin-bottom: 24px;
  padding: 5px 24px 3px;
  position: relative
}

.title-page-04::before {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 8px;
  width: 4px;
  height: 70%;
  background: var(--theme-color-01);
  border-radius: 10px
}

.title-page-04 .cmp-title__text {
  font-weight: inherit
}

@media only screen and (max-width: 768px) {
  .title-page-04 {
      font-size: 2rem;
      padding: 8px 20px
  }
  .title-page-04::before {
      left: 6px;
      height: 74%
  }
}

.title-page-05 {
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.4166666667;
  margin-bottom: 28px;
  padding-bottom: 24px;
  position: relative
}

.title-page-05::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  bottom: 0;
  left: 0;
  width: 40px;
  height: 4px;
  background: var(--theme-color-01)
}

.title-page-05 .cmp-title__text {
  font-weight: inherit
}

@media only screen and (max-width: 768px) {
  .title-page-05 {
      font-size: 2rem;
      margin-bottom: 28px;
      padding-bottom: 16px
  }
  .title-page-05::after {
      width: 32px;
      height: 3px
  }
}

.title-page-06 {
  border-bottom: 1px solid var(--gray-01);
  font-weight: 700;
  font-size: 3.6rem;
  margin-bottom: 28px;
  padding-bottom: 16px;
  position: relative
}

.title-page-06::before {
  content: "";
  position: absolute;
  display: block;
  bottom: -1px;
  left: 0;
  width: 120px;
  height: 4px;
  background: var(--theme-color-01)
}

.title-page-06 .cmp-title__text {
  font-weight: inherit
}

@media only screen and (max-width: 768px) {
  .title-page-06 {
      font-size: 2.4rem;
      margin-bottom: 24px;
      padding-bottom: 12px
  }
  .title-page-06::before {
      width: 64px
  }
}

.title-bg-01 {
  background: url("clientlib-site-common/resources/images/background-title-01-pc.jpg") center/cover no-repeat;
  margin: 0 -20px 56px;
  padding: 0 20px;
  width: 100vw !important;
}

.title-bg-01>.cmp-container {
  max-width: 1160px;
  margin: auto;
  padding: 52px 0 40px
}

.title-bg-01>.cmp-container .title__text-01 {
  margin-bottom: 28px
}

.title-bg-01>.cmp-container .title__text-01 .cmp-title__text {
  display: block;
  font-weight: 700;
  font-size: 4rem;
  padding-bottom: 16px;
  position: relative;
  text-align: center
}

.title-bg-01>.cmp-container .title__text-01 .cmp-title__text::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  bottom: 0;
  right: 0;
  left: 0;
  width: 40px;
  height: 4px;
  background: var(--theme-color-01)
}

.title-bg-01>.cmp-container .title__text-02 {
  margin: 0;
  text-align: center
}

.title-bg-01>.cmp-container .title__text-02>.cmp-text>:first-child {
  margin-top: 0 !important
}

.title-bg-01>.cmp-container .title__text-02>.cmp-text>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .title-bg-01 {
      background: none;
      margin: 0 -20px 36px;
      padding: 0;
      width: 100vw !important;
  }
  .title-bg-01>.cmp-container {
      padding: 0
  }
  .title-bg-01>.cmp-container .title__text-01 {
      background: url("clientlib-site-common/resources/images/background-title-01-sp.jpg") center/cover no-repeat;
      margin: 0;
      padding: 12px 20px 16px
  }
  .title-bg-01>.cmp-container .title__text-01 .cmp-title__text {
      font-size: 2.4rem;
      padding-bottom: 14px
  }
  .title-bg-01>.cmp-container .title__text-01 .cmp-title__text::after {
      width: 32px;
      height: 3px
  }
  .title-bg-01>.cmp-container .title__text-02 {
      padding: 22px 20px 0;
      text-align: left
  }
}

.title-label-01, .title-label-01-small-01 {
  border-bottom: 1px solid var(--gray-01);
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.5;
  padding-bottom: 12px;
  margin-bottom: 12px
}

.title-label-01 .cmp-title__text, .title-label-01-small-01 .cmp-title__text {
  font-weight: inherit
}

@media only screen and (max-width: 768px) {
  .title-label-01, .title-label-01-small-01 {
      font-size: 1.6rem;
      line-height: 1.6875;
      margin-bottom: 16px
  }
}

.title-label-01-small-01 {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0;
  margin-bottom: 16px;
  padding-bottom: 8px
}

@media only screen and (max-width: 768px) {
  .title-label-01-small-01 {
      padding-bottom: 12px
  }
}

.title-label-02 {
  color: var(--theme-color-01);
  font-weight: 700;
  font-size: 3.2rem;
  line-height: 1.4;
  margin-bottom: 24px;
  padding-bottom: 8px;
  position: relative;
  text-align: center
}

.title-label-02::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  bottom: 0;
  right: 0;
  left: 0;
  width: 20px;
  height: 2px;
  background: var(--theme-color-01)
}

.title-label-02 .cmp-title__text {
  font-weight: inherit
}

@media only screen and (max-width: 768px) {
  .title-label-02 {
      font-size: 2.4rem
  }
}

.title-article-01 {
  margin-bottom: 32px
}

.title-article-01 .cmp-contentfragment__element--title {
  border-bottom: 1px solid var(--gray-01);
  font-weight: 700;
  font-size: 3.2rem;
  line-height: 1.5;
  margin-bottom: 28px;
  padding-bottom: 12px
}

.title-article-01 .cmp-contentfragment__element--title h1 {
  font-weight: inherit
}

.title-article-01 .cmp-contentfragment__element--lead .cmp-contentfragment__element-value>:first-child {
  margin-top: 0 !important
}

.title-article-01 .cmp-contentfragment__element--lead .cmp-contentfragment__element-value>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .title-article-01 .cmp-contentfragment__element--title {
      font-size: 2.4rem;
      margin-bottom: 32px
  }
}

.title-static-l1-01 {
  background: url("clientlib-site-common/resources/images/background-title-01-pc.jpg") center/cover no-repeat;
  margin: 0 -20px;
  padding: 0 20px
}

.title-static-l1-01>.title__inner {
  max-width: 1160px;
  margin: auto;
  padding: 52px 0 40px
}

.title-static-l1-01>.title__inner .title__text-01 {
  margin-bottom: 28px
}

.title-static-l1-01>.title__inner .title__text-01 .text {
  display: block;
  font-weight: 700;
  font-size: 4rem;
  padding-bottom: 16px;
  position: relative;
  text-align: center
}

.title-static-l1-01>.title__inner .title__text-01 .text::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  bottom: 0;
  right: 0;
  left: 0;
  width: 40px;
  height: 4px;
  background: var(--theme-color-01)
}

.title-static-l1-01>.title__inner .title__text-02 {
  margin: 0;
  text-align: center
}

@media only screen and (max-width: 768px) {
  .title-static-l1-01 {
      background: none;
      padding: 0
  }
  .title-static-l1-01>.title__inner {
      padding: 0
  }
  .title-static-l1-01>.title__inner .title__text-01 {
      background: url("clientlib-site-common/resources/images/background-title-01-sp.jpg") center/cover no-repeat;
      margin: 0;
      padding: 12px 20px 16px
  }
  .title-static-l1-01>.title__inner .title__text-01 .text {
      font-size: 2.4rem;
      padding-bottom: 14px
  }
  .title-static-l1-01>.title__inner .title__text-01 .text::after {
      width: 32px;
      height: 3px
  }
  .title-static-l1-01>.title__inner .title__text-02 {
      padding: 22px 20px 0;
      text-align: left
  }
}

.title-static-l2-01 {
  line-height: 1.3
}

.title-static-l2-01 .title__num-wap {
  display: flex;
  align-items: center
}

.title-static-l2-01 .title__num-wap .title__num-01 {
  color: var(--theme-color-01);
  font-weight: 700;
  letter-spacing: 0;
  margin-right: 8px
}

.title-static-l2-01 .title__num-wap .title__num-02 {
  color: var(--theme-color-01);
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: 0
}

.title-static-l2-01 .title__text {
  display: block;
  font-weight: 700;
  font-size: 2rem;
  letter-spacing: 0;
  line-height: 1.85
}

.title-static-l2-01 .title__text .sub {
  display: block;
  font-size: 1.6rem
}

@media only screen and (max-width: 768px) {
  .title-static-l2-01 {
      display: flex;
      align-items: flex-start
  }
  .title-static-l2-01 .title__num-wap {
      flex-shrink: 0;
      margin-right: 10px;
      padding-top: 2px
  }
  .title-static-l2-01 .title__num-wap .title__num-01 {
      font-size: 1.2rem;
      margin-right: 5px
  }
  .title-static-l2-01 .title__num-wap .title__num-02 {
      font-size: 2.2rem
  }
  .title-static-l2-01 .title__text {
      font-size: 1.8rem;
      line-height: 1.6666666667
  }
}

.title-static-l2-02 {
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 1.6;
  margin: 60px 0 24px;
  padding-bottom: 16px;
  position: relative;
  text-align: center
}

.title-static-l2-02::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  bottom: 0;
  right: 0;
  left: 0;
  width: 40px;
  height: 4px;
  background: var(--theme-color-01)
}

@media only screen and (max-width: 768px) {
  .title-static-l2-02 {
      font-size: 2rem;
      line-height: 1.5;
      margin: 56px 0 24px
  }
  .title-static-l2-02::after {
      width: 32px;
      height: 3px
  }
}

.text-general-01, .text-general-01-type-01 {
  margin-bottom: 24px
}

.text-general-01>.cmp-text>:first-child, .text-general-01-type-01>.cmp-text>:first-child {
  margin-top: 0 !important
}

.text-general-01>.cmp-text>:last-child, .text-general-01-type-01>.cmp-text>:last-child {
  margin-bottom: 0 !important
}

.text-general-01-type-01 {
  margin-bottom: 32px
}

.text-large-01 {
  font-size: 2rem;
  line-height: 1.48;
  margin-bottom: 24px
}

.text-large-01>.cmp-text>:first-child {
  margin-top: 0 !important
}

.text-large-01>.cmp-text>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .text-large-01 {
      font-size: 1.6rem;
      line-height: 1.6
  }
}

.text-small-01 {
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1.6;
  margin-bottom: 32px
}

.text-small-01>.cmp-text>:first-child {
  margin-top: 0 !important
}

.text-small-01>.cmp-text>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .text-small-01 .cmp-text p {
      margin-bottom: 12px
  }
}

.text-title-sub-01 {
  margin-bottom: 40px;
  text-align: center
}

.text-title-sub-01>.cmp-text>:first-child {
  margin-top: 0 !important
}

.text-title-sub-01>.cmp-text>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .text-title-sub-01 {
      margin-bottom: 24px;
      text-align: left
  }
}

.text-title-sub-02 {
  margin-bottom: 52px
}

.text-title-sub-02>.cmp-text>:first-child {
  margin-top: 0 !important
}

.text-title-sub-02>.cmp-text>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .text-title-sub-02 {
      margin-bottom: 36px
  }
}

.text-tel-01 {
  margin-bottom: 12px
}

.text-tel-01 .cmp-text {
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1.2;
  padding-left: 45px;
  position: relative
}

.text-tel-01 .cmp-text::before {
  content: "";
  position: absolute;
  display: block;
  top: 5px;
  left: 0;
  width: 34px;
  height: 34px;
  background: url("clientlib-site-common/resources/images/icon-tel-01.svg") center/contain no-repeat
}

.text-tel-01 .cmp-text p {
  margin: 0
}

.text-tel-01 .cmp-text p a {
  color: var(--black-01);
  text-decoration: none;
  transition: opacity .2s ease-in-out
}

.text-tel-01 .cmp-text p a:hover {
  opacity: .5
}

@media only screen and (max-width: 768px) {
  .text-tel-01 .cmp-text {
      font-size: 2.3rem;
      padding-left: 35px
  }
  .text-tel-01 .cmp-text::before {
      top: 3px;
      width: 26px;
      height: 18px
  }
}

.text-tel-02 {
  margin-bottom: 12px
}

.text-tel-02 .cmp-text {
  font-weight: 700;
  font-size: 2rem;
  letter-spacing: 0;
  line-height: 1.44;
  padding-left: 28px;
  position: relative
}

.text-tel-02 .cmp-text::before {
  content: "";
  position: absolute;
  display: block;
  top: 4px;
  left: 0;
  width: 20px;
  height: 20px;
  background: url("clientlib-site-common/resources/images/icon-tel-01.svg") center/contain no-repeat
}

.text-tel-02 .cmp-text p {
  margin: 0
}

.text-tel-02 .cmp-text a {
  color: var(--black-01);
  text-decoration: none;
  transition: opacity .2s ease-in-out
}

.text-tel-02 .cmp-text a:hover {
  opacity: .5
}

@media only screen and (max-width: 768px) {
  .text-tel-02 {
      margin-bottom: 8px
  }
  .text-tel-02 .cmp-text {
      color: var(--black-01);
      font-size: 2.8rem;
      padding-left: 38px
  }
  .text-tel-02 .cmp-text::before {
      top: 6px;
      width: 26px;
      height: 26px;
      background: url("clientlib-site-common/resources/images/icon-tel-01.svg") center/contain no-repeat
  }
  .text-tel-02 .cmp-text a {
      color: var(--black-01)
  }
}

.text-group-01, .text-group-01-small-02, .text-group-01-small-01 {
  margin-bottom: 24px
}

.text-group-01 p, .text-group-01-small-02 p, .text-group-01-small-01 p {
  margin: 0
}

.text-group-01-small-01 {
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1.85
}

@media only screen and (max-width: 768px) {
  .text-group-01-small-01 {
      line-height: 1.6
  }
}

.text-group-01-small-02 {
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1.5
}

.text-management-num-01 {
  padding-bottom: 16px
}

.text-management-num-01 .cmp-contentfragment__element--solicitationDocumentManagementNumber {
  text-align: right
}

.text-static-lead-01 {
  margin-bottom: 12px
}

.text-static-lead-01 .text {
  display: block;
  font-weight: 700;
  font-size: 2.4rem;
  text-align: center
}

@media only screen and (max-width: 768px) {
  .text-static-lead-01 .text {
      font-size: 2rem;
      line-height: 1.5
  }
}

.text-static-state-01 {
  background: var(--theme-color-02);
  font-weight: 700;
  font-size: 3.2rem;
  line-height: 1.3;
  padding: 20px;
  text-align: center
}

@media only screen and (max-width: 768px) {
  .text-static-state-01 {
      font-size: 2rem;
      padding: 17px 20px
  }
}

.text-static-management-num-01 {
  text-align: right
}

.list-image-01-column-4, .list-image-01-column-3, .list-image-01-column-2 {
  margin-bottom: 56px
}

.list-image-01-column-4 .cmp-image__image, .list-image-01-column-3 .cmp-image__image, .list-image-01-column-2 .cmp-image__image {
  width: auto
}

.list-image-01-column-4>.cmp-container, .list-image-01-column-3>.cmp-container, .list-image-01-column-2>.cmp-container {
  display: flex;
  flex-wrap: wrap;
  margin: -16px 0 0 -16px
}

.list-image-01-column-4>.cmp-container>.image, .list-image-01-column-3>.cmp-container>.image, .list-image-01-column-2>.cmp-container>.image {
  padding: 16px 0 0 16px;
  text-align: center
}

.list-image-01-column-4>.cmp-container>.image .cmp-image__link, .list-image-01-column-3>.cmp-container>.image .cmp-image__link, .list-image-01-column-2>.cmp-container>.image .cmp-image__link {
  transition: opacity .2s ease-in-out
}

.list-image-01-column-4>.cmp-container>.image .cmp-image__link:hover, .list-image-01-column-3>.cmp-container>.image .cmp-image__link:hover, .list-image-01-column-2>.cmp-container>.image .cmp-image__link:hover {
  opacity: .5
}

@media only screen and (max-width: 768px) {
  .list-image-01-column-4, .list-image-01-column-3, .list-image-01-column-2 {
      margin-bottom: 48px
  }
  .list-image-01-column-4>.cmp-container, .list-image-01-column-3>.cmp-container, .list-image-01-column-2>.cmp-container {
      margin: -8px 0 0 -8px
  }
  .list-image-01-column-4>.cmp-container>.image, .list-image-01-column-3>.cmp-container>.image, .list-image-01-column-2>.cmp-container>.image {
      padding: 8px 0 0 8px
  }
}

.list-image-01-column-2>.cmp-container>.image {
  width: 50%
}

@media only screen and (max-width: 768px) {
  .list-image-01-column-2>.cmp-container>.image {
      width: 100%
  }
}

.list-image-01-column-3>.cmp-container>.image {
  width: 33.33333%
}

@media only screen and (max-width: 768px) {
  .list-image-01-column-3>.cmp-container>.image {
      width: 100%
  }
}

.list-image-01-column-4>.cmp-container>.image {
  width: 25%
}

@media only screen and (max-width: 768px) {
  .list-image-01-column-4>.cmp-container>.image {
      width: 100%
  }
}

.list-image-02-column-4, .list-image-02-column-3, .list-image-02-column-2 {
  margin-bottom: 28px
}

.list-image-02-column-4 .cmp-image__image, .list-image-02-column-3 .cmp-image__image, .list-image-02-column-2 .cmp-image__image {
  width: auto
}

.list-image-02-column-4>.cmp-container, .list-image-02-column-3>.cmp-container, .list-image-02-column-2>.cmp-container {
  display: flex;
  flex-wrap: wrap;
  margin: -40px 0 0 -40px
}

.list-image-02-column-4>.cmp-container>.image, .list-image-02-column-3>.cmp-container>.image, .list-image-02-column-2>.cmp-container>.image {
  padding: 40px 0 0 40px
}

.list-image-02-column-4>.cmp-container>.image>.cmp-image, .list-image-02-column-3>.cmp-container>.image>.cmp-image, .list-image-02-column-2>.cmp-container>.image>.cmp-image {
  position: relative;
  padding-top: 56.3888888889%
}

.list-image-02-column-4>.cmp-container>.image>.cmp-image img, .list-image-02-column-3>.cmp-container>.image>.cmp-image img, .list-image-02-column-2>.cmp-container>.image>.cmp-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover"
}

@media only screen and (max-width: 768px) {
  .list-image-02-column-4>.cmp-container, .list-image-02-column-3>.cmp-container, .list-image-02-column-2>.cmp-container {
      margin: -16px 0 0 -16px
  }
  .list-image-02-column-4>.cmp-container>.image, .list-image-02-column-3>.cmp-container>.image, .list-image-02-column-2>.cmp-container>.image {
      padding: 16px 0 0 16px
  }
  .list-image-02-column-4>.cmp-container>.image>.cmp-image, .list-image-02-column-3>.cmp-container>.image>.cmp-image, .list-image-02-column-2>.cmp-container>.image>.cmp-image {
      padding-top: 56.25%
  }
}

.list-image-02-column-2>.cmp-container>.image {
  width: 50%
}

.list-image-02-column-3>.cmp-container>.image {
  width: 33.33333%
}

@media only screen and (max-width: 768px) {
  .list-image-02-column-3>.cmp-container>.image {
      width: 50%
  }
}

.list-image-02-column-4>.cmp-container>.image {
  width: 25%
}

@media only screen and (max-width: 768px) {
  .list-image-02-column-4>.cmp-container>.image {
      width: 50%
  }
}

.list-recommended-banner-01 .cmp-image__image {
  width: auto
}

.list-recommended-banner-01 .cmp-experiencefragment--RecommendedCampaignBanners>.cmp-container>.image {
  text-align: center
}

.list-recommended-banner-01 .cmp-experiencefragment--RecommendedCampaignBanners>.cmp-container>.image+.image {
  margin-top: 16px
}

.list-recommended-banner-01 .cmp-experiencefragment--RecommendedCampaignBanners>.cmp-container>.image .cmp-image__link {
  transition: opacity .2s ease-in-out
}

.list-recommended-banner-01 .cmp-experiencefragment--RecommendedCampaignBanners>.cmp-container>.image .cmp-image__link:hover {
  opacity: .5
}

@media only screen and (max-width: 768px) {
  .list-recommended-banner-01 .cmp-experiencefragment--RecommendedCampaignBanners>.cmp-container>.image+.image {
      margin-top: 8px
  }
}

.list-panel-num-01-column-4, .list-panel-num-01-column-3, .list-panel-num-01-column-2 {
  margin-bottom: 80px
}

.list-panel-num-01-column-4>.cmp-container, .list-panel-num-01-column-3>.cmp-container, .list-panel-num-01-column-2>.cmp-container {
  display: flex;
  flex-wrap: wrap;
  margin: -40px 0 0 -40px
}

.list-panel-num-01-column-4>.cmp-container>.list__panel, .list-panel-num-01-column-3>.cmp-container>.list__panel, .list-panel-num-01-column-2>.cmp-container>.list__panel {
  padding: 40px 0 0 40px
}

.list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container {
  background: var(--gray-04);
  border-radius: 10px;
  height: 100%;
  padding: 32px
}

.list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container>:first-child, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container>:first-child, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container>:first-child {
  margin-top: 0 !important
}

.list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container>:last-child, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container>:last-child, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container .list__image-circle, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container .list__image-circle, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container .list__image-circle {
  margin-bottom: 20px
}

.list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container .list__image-circle>.cmp-image, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container .list__image-circle>.cmp-image, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container .list__image-circle>.cmp-image {
  border-radius: 50%;
  width: 120px;
  height: 120px;
  overflow: hidden;
  margin: auto
}

.list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container .list__image-circle>.cmp-image .cmp-image__image, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container .list__image-circle>.cmp-image .cmp-image__image, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container .list__image-circle>.cmp-image .cmp-image__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover"
}

.list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container .list__text, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container .list__text, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container .list__text {
  font-size: 1.8rem;
  line-height: 1.6
}

.list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container .list__text .cmp-text>:first-child, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container .list__text .cmp-text>:first-child, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container .list__text .cmp-text>:first-child {
  margin-top: 0 !important
}

.list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container .list__text .cmp-text>:last-child, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container .list__text .cmp-text>:last-child, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container .list__text .cmp-text>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .list-panel-num-01-column-4, .list-panel-num-01-column-3, .list-panel-num-01-column-2 {
      margin-bottom: 48px
  }
  .list-panel-num-01-column-4>.cmp-container, .list-panel-num-01-column-3>.cmp-container, .list-panel-num-01-column-2>.cmp-container {
      margin: -24px 0 0 -24px
  }
  .list-panel-num-01-column-4>.cmp-container>.list__panel, .list-panel-num-01-column-3>.cmp-container>.list__panel, .list-panel-num-01-column-2>.cmp-container>.list__panel {
      padding: 24px 0 0 24px
  }
  .list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container {
      height: auto;
      padding: 24px
  }
  .list-panel-num-01-column-4>.cmp-container>.list__panel>.cmp-container .list__text, .list-panel-num-01-column-3>.cmp-container>.list__panel>.cmp-container .list__text, .list-panel-num-01-column-2>.cmp-container>.list__panel>.cmp-container .list__text {
      font-size: 1.6rem
  }
}

.list-panel-num-01-column-2>.cmp-container>.list__panel {
  width: 50%
}

@media only screen and (max-width: 768px) {
  .list-panel-num-01-column-2>.cmp-container>.list__panel {
      width: 100%
  }
}

.list-panel-num-01-column-3>.cmp-container>.list__panel {
  width: 33.33333%
}

@media only screen and (max-width: 768px) {
  .list-panel-num-01-column-3>.cmp-container>.list__panel {
      width: 100%
  }
}

.list-panel-num-01-column-4>.cmp-container>.list__panel {
  width: 25%
}

@media only screen and (max-width: 768px) {
  .list-panel-num-01-column-4>.cmp-container>.list__panel {
      width: 100%
  }
}

.list-link-button-01-column-10, .list-link-button-01-column-4, .list-link-button-01-column-2 {
  margin-bottom: 72px
}

.list-link-button-01-column-10>.cmp-list, .list-link-button-01-column-4>.cmp-list, .list-link-button-01-column-2>.cmp-list {
  display: flex;
  flex-wrap: wrap;
  margin: -6px 0 0 -6px
}

.list-link-button-01-column-10>.cmp-list>.cmp-list__item, .list-link-button-01-column-4>.cmp-list>.cmp-list__item, .list-link-button-01-column-2>.cmp-list>.cmp-list__item {
  display: flex;
  padding: 6px 0 0 6px
}

.list-link-button-01-column-10>.cmp-list>.cmp-list__item article, .list-link-button-01-column-4>.cmp-list>.cmp-list__item article, .list-link-button-01-column-2>.cmp-list>.cmp-list__item article {
  width: 100%
}

.list-link-button-01-column-10>.cmp-list>.cmp-list__item .cmp-list__item-link, .list-link-button-01-column-4>.cmp-list>.cmp-list__item .cmp-list__item-link, .list-link-button-01-column-2>.cmp-list>.cmp-list__item .cmp-list__item-link {
  border: 2px solid var(--gray-01);
  border-radius: 10px;
  color: var(--black-01);
  font-weight: 700;
  font-size: 1.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  min-height: 60px;
  padding: 12px 8px;
  text-decoration: none;
  transition: opacity .2s ease-in-out;
  text-align: center;
  width: 100%
}

.list-link-button-01-column-10>.cmp-list>.cmp-list__item .cmp-list__item-link:hover, .list-link-button-01-column-4>.cmp-list>.cmp-list__item .cmp-list__item-link:hover, .list-link-button-01-column-2>.cmp-list>.cmp-list__item .cmp-list__item-link:hover {
  opacity: .5
}

.list-link-button-01-column-10>.cmp-list>.cmp-list__item.cmp-list__item--active .cmp-list__item-link, .list-link-button-01-column-4>.cmp-list>.cmp-list__item.cmp-list__item--active .cmp-list__item-link, .list-link-button-01-column-2>.cmp-list>.cmp-list__item.cmp-list__item--active .cmp-list__item-link {
  border-color: var(--theme-color-01);
  background: var(--theme-color-01);
  color: var(--theme-bright-color-01)
}

@media only screen and (max-width: 768px) {
  .list-link-button-01-column-10, .list-link-button-01-column-4, .list-link-button-01-column-2 {
      margin-bottom: 56px
  }
  .list-link-button-01-column-10>.cmp-list>.cmp-list__item .cmp-list__item-link, .list-link-button-01-column-4>.cmp-list>.cmp-list__item .cmp-list__item-link, .list-link-button-01-column-2>.cmp-list>.cmp-list__item .cmp-list__item-link {
      min-height: auto;
      padding: 8px
  }
}

.list-link-button-01-column-2>.cmp-list>.cmp-list__item {
  width: 50%
}

.list-link-button-01-column-4>.cmp-list>.cmp-list__item {
  width: 25%
}

@media only screen and (max-width: 768px) {
  .list-link-button-01-column-4>.cmp-list>.cmp-list__item {
      width: 50%
  }
}

.list-link-button-01-column-10>.cmp-list>.cmp-list__item {
  width: 10%
}

@media only screen and (max-width: 768px) {
  .list-link-button-01-column-10>.cmp-list>.cmp-list__item {
      width: 50%
  }
}

.list-tag-01 {
  margin-bottom: 24px
}

.list-tag-01 .cmp-teaserList__content {
  display: none
}

.list-tag-01>ul {
  display: flex;
  flex-wrap: wrap;
  margin: -12px 0 0 -12px
}

.list-tag-01>ul>li {
  line-height: 1.3;
  padding: 12px 0 0 12px
}

.list-tag-01>ul>li .cmp-teaserList__image {
  display: none
}

.list-tag-01>ul>li .cmp-teaserList__category_area {
  margin: 0
}

.list-tag-01>ul>li .cmp-teaserList__category_area .cmp-teaserList__category {
  background: var(--theme-color-01);
  border-radius: 4px;
  color: var(--theme-button-text-color);
  display: inline-block;
  font-weight: 700;
  font-size: 1.3rem;
  margin: 0;
  padding: 5px 16px 3px;
  min-width: 100px;
  text-align: center
}

@media only screen and (max-width: 768px) {
  .list-tag-01>ul {
      margin: -4px 0 0 -4px
  }
  .list-tag-01>ul>li {
      padding: 4px 0 0 4px
  }
  .list-tag-01>ul>li .cmp-teaserList__category_area .cmp-teaserList__category {
      font-size: 1.2rem;
      padding: 3px 16px 2px
  }
}

.list-article-01-column-2, .list-article-01 {
  margin-bottom: 40px
}

.list-article-01-column-2>ul, .list-article-01>ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -24px
}

.list-article-01-column-2>ul>li, .list-article-01>ul>li {
  background: var(--white);
  box-shadow: 0 8px 30px var(--box-shadow-02);
  border-radius: 10px;
  margin-top: 24px;
  padding: 32px
}

.list-article-01-column-2>ul>li .cmp-teaserList__image, .list-article-01>ul>li .cmp-teaserList__image {
  float: left;
  padding-right: 24px;
  width: 41.5%;
  height: 100%;
  max-height: 110px;
  text-align: center
}

.list-article-01-column-2>ul>li .cmp-teaserList__image img, .list-article-01>ul>li .cmp-teaserList__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover"
}

.list-article-01-column-2>ul>li .cmp-teaserList__category_area, .list-article-01>ul>li .cmp-teaserList__category_area {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: -4px 0 4px 0;
  float: right;
  width: 58.5%
}

.list-article-01-column-2>ul>li .cmp-teaserList__category_area .cmp-teaserList__category, .list-article-01>ul>li .cmp-teaserList__category_area .cmp-teaserList__category {
  background: var(--theme-color-01);
  border-radius: 4px;
  color: var(--theme-button-text-color);
  display: inline-block;
  font-weight: 700;
  font-size: 1.3rem;
  line-height: 1.3;
  margin: 4px 16px 0 0;
  padding: 5px 16px 3px;
  min-width: 100px;
  text-align: center
}

.list-article-01-column-2>ul>li .cmp-teaserList__category_area .cmp-teaserList__date, .list-article-01>ul>li .cmp-teaserList__category_area .cmp-teaserList__date {
  font-size: 1.4rem;
  margin: 4px 0 0
}

.list-article-01-column-2>ul>li .cmp-teaserList__title, .list-article-01>ul>li .cmp-teaserList__title {
  color: var(--theme-color-01);
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.6;
  float: right;
  width: 58.5%
}

.list-article-01-column-2>ul>li .cmp-teaserList__title a, .list-article-01>ul>li .cmp-teaserList__title a {
  text-decoration: none
}

.list-article-01-column-2>ul>li .cmp-teaserList__title a:hover, .list-article-01>ul>li .cmp-teaserList__title a:hover {
  text-decoration: underline
}

.list-article-01-column-2>ul>li .cmp-teaserList__description, .list-article-01>ul>li .cmp-teaserList__description {
  clear: both;
  line-height: 1.6;
  margin: 0 0 20px;
  padding-top: 12px
}

.list-article-01-column-2>ul>li .cmp-teaserList__tags_area .cmp-teaserList__tags, .list-article-01>ul>li .cmp-teaserList__tags_area .cmp-teaserList__tags {
  display: flex;
  flex-wrap: wrap;
  margin: -8px 0 0 -8px
}

.list-article-01-column-2>ul>li .cmp-teaserList__tags_area .cmp-teaserList__tags .cmp-teaserList__tag, .list-article-01>ul>li .cmp-teaserList__tags_area .cmp-teaserList__tags .cmp-teaserList__tag {
  background: var(--gray-07);
  font-size: 1.3rem;
  line-height: 1.6923076923;
  margin: 8px 0 0 8px;
  padding: 6px 16px 4px
}

@media only screen and (max-width: 768px) {
  .list-article-01-column-2, .list-article-01 {
      margin-bottom: 32px
  }
  .list-article-01-column-2>ul>li, .list-article-01>ul>li {
      padding: 24px
  }
  .list-article-01-column-2>ul>li .cmp-teaserList__image, .list-article-01>ul>li .cmp-teaserList__image {
      float: none;
      padding: 0;
      width: 100%;
      height: auto;
      max-height: none;
      margin-bottom: 24px
  }
  .list-article-01-column-2>ul>li .cmp-teaserList__image img, .list-article-01>ul>li .cmp-teaserList__image img {
      width: auto;
      height: auto
  }
  .list-article-01-column-2>ul>li .cmp-teaserList__category_area, .list-article-01>ul>li .cmp-teaserList__category_area {
      margin-bottom: 8px;
      float: none;
      width: 100%
  }
  .list-article-01-column-2>ul>li .cmp-teaserList__category_area .cmp-teaserList__category, .list-article-01>ul>li .cmp-teaserList__category_area .cmp-teaserList__category {
      font-size: 1.2rem;
      padding: 3px 16px 2px
  }
  .list-article-01-column-2>ul>li .cmp-teaserList__category_area .cmp-teaserList__date, .list-article-01>ul>li .cmp-teaserList__category_area .cmp-teaserList__date {
      font-size: 1.2rem
  }
  .list-article-01-column-2>ul>li .cmp-teaserList__title, .list-article-01>ul>li .cmp-teaserList__title {
      font-size: 1.8rem;
      float: none;
      width: 100%
  }
  .list-article-01-column-2>ul>li .cmp-teaserList__description, .list-article-01>ul>li .cmp-teaserList__description {
      margin: 0 0 16px
  }
  .list-article-01-column-2>ul>li .cmp-teaserList__tags_area .cmp-teaserList__tags .cmp-teaserList__tag, .list-article-01>ul>li .cmp-teaserList__tags_area .cmp-teaserList__tags .cmp-teaserList__tag {
      font-size: 1.2rem;
      line-height: 1.8333333333;
      padding: 3px 12px
  }
}

.list-article-01 {
  margin-bottom: 32px
}

.list-article-01>ul>li {
  border: 2px solid var(--gray-01);
  padding: 24px;
  width: 100%
}

.list-article-01>ul>li .cmp-teaserList__image {
  width: 24.5%
}

.list-article-01>ul>li .cmp-teaserList__category_area {
  width: 75.5%
}

.list-article-01>ul>li .cmp-teaserList__category_area .cmp-teaserList__category {
  font-size: 1.2rem;
  padding: 3px 16px 2px
}

.list-article-01>ul>li .cmp-teaserList__title {
  font-size: 1.8rem;
  line-height: 1.7777777778;
  width: 75.5%
}

.list-article-01>ul>li .cmp-teaserList__description {
  clear: none;
  float: right;
  font-size: 1.4rem;
  line-height: 1.6;
  margin: 0 0 16px;
  padding-top: 8px;
  width: 75.5%
}

.list-article-01>ul>li .cmp-teaserList__tags_area {
  float: right;
  width: 75.5%
}

.list-article-01>ul>li .cmp-teaserList__tags_area .cmp-teaserList__tags .cmp-teaserList__tag {
  font-size: 1.2rem;
  padding: 4px 16px 2px
}

@media only screen and (max-width: 768px) {
  .list-article-01 {
      margin-bottom: 24px
  }
  .list-article-01>ul>li .cmp-teaserList__image {
      width: 100%
  }
  .list-article-01>ul>li .cmp-teaserList__category_area {
      width: 100%
  }
  .list-article-01>ul>li .cmp-teaserList__category_area .cmp-teaserList__date {
      font-size: 1.2rem
  }
  .list-article-01>ul>li .teaserList__title {
      line-height: 1.6;
      width: 100%
  }
  .list-article-01>ul>li .cmp-teaserList__title {
      width: 100%
  }
  .list-article-01>ul>li .cmp-teaserList__description {
      float: none;
      width: 100%
  }
  .list-article-01>ul>li .cmp-teaserList__tags_area {
      float: none;
      width: 100%
  }
  .list-article-01>ul>li .cmp-teaserList__tags_area .cmp-teaserList__tags .cmp-teaserList__tag {
      padding: 4px 12px 2px
  }
}

.list-article-01-column-2>ul>li {
  width: calc(50% - 24px)
}

@media only screen and (max-width: 768px) {
  .list-article-01-column-2>ul>li {
      width: 100%
  }
}

.list-article-02-column-2 {
  margin-bottom: 40px
}

.list-article-02-column-2>ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -24px
}

.list-article-02-column-2>ul>li {
  box-shadow: 0 8px 30px var(--box-shadow-02);
  border-radius: 10px;
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  margin-top: 24px;
  overflow: hidden;
  position: relative
}

.list-article-02-column-2>ul>li .cmp-teaserList__image {
  margin-bottom: 12px;
  order: 0;
  width: 100%;
  height: 163px
}

.list-article-02-column-2>ul>li .cmp-teaserList__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover"
}

.list-article-02-column-2>ul>li .cmp-teaserList__category_area {
  margin: 0;
  order: 2;
  width: 100%
}

.list-article-02-column-2>ul>li .cmp-teaserList__category_area .cmp-teaserList__category {
  background: var(--theme-color-01);
  border-radius: 4px;
  color: var(--theme-button-text-color);
  display: block;
  font-weight: 700;
  font-size: 1.3rem;
  line-height: 1.3;
  margin-right: 6px;
  padding: 5px 16px 3px;
  min-width: 100px;
  position: absolute;
  top: 6px;
  left: 6px;
  text-align: center
}

.list-article-02-column-2>ul>li .cmp-teaserList__category_area .cmp-teaserList__date {
  display: block;
  font-size: 1.4rem;
  padding: 0 24px 24px
}

.list-article-02-column-2>ul>li .cmp-teaserList__title {
  color: var(--theme-color-01);
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.6;
  margin-bottom: 8px;
  order: 1;
  padding: 0 24px;
  width: 100%
}

.list-article-02-column-2>ul>li .cmp-teaserList__title a {
  text-decoration: none
}

.list-article-02-column-2>ul>li .cmp-teaserList__title a:hover {
  text-decoration: underline
}

.list-article-02-column-2>ul>li .cmp-teaserList__description {
  display: none
}

.list-article-02-column-2>ul>li .cmp-teaserList__tags_area {
  display: none
}

@media only screen and (max-width: 768px) {
  .list-article-02-column-2 {
      margin-bottom: 32px
  }
  .list-article-02-column-2>ul {
      margin-top: -16px
  }
  .list-article-02-column-2>ul>li {
      margin-top: 16px
  }
  .list-article-02-column-2>ul>li .cmp-teaserList__image {
      margin-bottom: 16px;
      height: 98px
  }
  .list-article-02-column-2>ul>li .cmp-teaserList__category_area .cmp-teaserList__category {
      font-size: 1.2rem;
      margin-right: 4px;
      padding: 3px 16px 2px;
      top: 4px;
      left: 4px
  }
  .list-article-02-column-2>ul>li .cmp-teaserList__category_area .cmp-teaserList__date {
      font-size: 1.2rem;
      padding: 0 16px 16px
  }
  .list-article-02-column-2>ul>li .cmp-teaserList__title {
      font-size: 1.4rem;
      line-height: 1.5;
      margin-bottom: 4px;
      padding: 0 16px
  }
}

.list-article-02-column-2>ul>li {
  width: calc(50% - 12px)
}

@media only screen and (max-width: 768px) {
  .list-article-02-column-2>ul>li {
      width: calc(50% - 8px)
  }
}

.list-video-01 {
  margin-bottom: 72px
}

.list-video-01>.cmp-container>.list__row+.list__row {
  margin-top: 72px
}

.list-video-01>.cmp-container>.list__row>.cmp-container>:first-child {
  margin-top: 0 !important
}

.list-video-01>.cmp-container>.list__row>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .list-video-01 {
      margin-bottom: 56px
  }
  .list-video-01>.cmp-container>.list__row+.list__row {
      margin-top: 56px
  }
}

.cmp-experiencefragment--movielist-top>:first-child {
  margin-top: 0 !important
}

.cmp-experiencefragment--movielist-top>:last-child {
  margin-bottom: 0 !important
}

.list-video-02-column-2 {
  margin-bottom: 72px
}

.list-video-02-column-2>.cmp-container {
  display: flex;
  flex-wrap: wrap;
  margin: -40px 0 0 -40px
}

.list-video-02-column-2>.cmp-container>.list__column {
  padding: 40px 0 0 40px
}

.list-video-02-column-2>.cmp-container>.list__column>.cmp-container>:first-child {
  margin-top: 0 !important
}

.list-video-02-column-2>.cmp-container>.list__column>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .list-video-02-column-2 {
      margin-bottom: 56px
  }
}

.list-video-02-column-2>.cmp-container>.list__column {
  width: 50%
}

@media only screen and (max-width: 768px) {
  .list-video-02-column-2>.cmp-container>.list__column {
      width: 100%
  }
}

.list-video-03-column-3 {
  margin-bottom: 72px
}

.list-video-03-column-3>.cmp-container {
  display: flex;
  flex-wrap: wrap;
  margin: -40px 0 0 -40px
}

.list-video-03-column-3>.cmp-container>.list__column {
  padding: 40px 0 0 40px
}

.list-video-03-column-3>.cmp-container>.list__column>.cmp-container {
  height: 100%
}

.list-video-03-column-3>.cmp-container>.list__column>.cmp-container>:first-child {
  margin-top: 0 !important
}

.list-video-03-column-3>.cmp-container>.list__column>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.list-video-03-column-3>.cmp-container>.list__column>.cmp-container .box-image-01 {
  height: 100%
}

@media only screen and (max-width: 768px) {
  .list-video-03-column-3 {
      margin-bottom: 56px
  }
  .list-video-03-column-3>.cmp-container {
      margin: -16px 0 0 -16px
  }
  .list-video-03-column-3>.cmp-container>.list__column {
      padding: 16px 0 0 16px
  }
}

.list-video-03-column-3>.cmp-container>.list__column {
  width: 33.33333%
}

@media only screen and (max-width: 768px) {
  .list-video-03-column-3>.cmp-container>.list__column {
      width: 50%
  }
}

.list-video-04-column-2 {
  margin-bottom: 72px
}

.list-video-04-column-2>.cmp-container {
  display: flex;
  flex-wrap: wrap;
  margin: -56px 0 0 -48px
}

.list-video-04-column-2>.cmp-container>.list__column {
  padding: 56px 0 0 48px
}

.list-video-04-column-2>.cmp-container>.list__column>.cmp-container>:first-child {
  margin-top: 0 !important
}

.list-video-04-column-2>.cmp-container>.list__column>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .list-video-04-column-2 {
      margin-bottom: 56px
  }
  .list-video-04-column-2>.cmp-container {
      margin: -40px 0 0
  }
  .list-video-04-column-2>.cmp-container>.list__column {
      padding: 40px 0 0
  }
}

.list-video-04-column-2>.cmp-container>.list__column {
  width: 50%
}

@media only screen and (max-width: 768px) {
  .list-video-04-column-2>.cmp-container>.list__column {
      width: 100%
  }
}

.list-anc-01 {
  margin-bottom: 72px
}

.list-anc-01>ul>li {
  padding-left: 20px;
  position: relative
}

.list-anc-01>ul>li+li {
  margin-top: 4px
}

.list-anc-01>ul>li::before {
  content: "";
  position: absolute;
  display: block;
  top: .6em;
  left: 0;
  width: 8px;
  height: 8px;
  border-top: 2px solid var(--gray-02);
  border-right: 2px solid var(--gray-02);
  transform: rotate(135deg)
}

.list-anc-01>ul>li a {
  color: var(--black-01);
  text-decoration: none
}

.list-anc-01>ul>li a:hover {
  text-decoration: underline
}

@media only screen and (max-width: 768px) {
  .list-anc-01 {
      margin-bottom: 56px
  }
  .list-anc-01>ul>li::before {
      width: 6px;
      height: 6px;
      top: .5em
  }
}

.list-static-notice-01, .list-static-notice-01-type-01 {
  margin-bottom: 32px
}

.list-static-notice-01>li, .list-static-notice-01-type-01>li {
  color: var(--black-01);
  font-size: 1.4rem;
  padding-left: 1.5714285714em;
  position: relative
}

.list-static-notice-01>li>:first-child, .list-static-notice-01-type-01>li>:first-child {
  margin-top: 0 !important
}

.list-static-notice-01>li>:last-child, .list-static-notice-01-type-01>li>:last-child {
  margin-bottom: 0 !important
}

.list-static-notice-01>li+li, .list-static-notice-01-type-01>li+li {
  margin-top: 8px
}

.list-static-notice-01>li>.list__mark, .list-static-notice-01-type-01>li>.list__mark {
  position: absolute;
  top: 0;
  left: 0;
  width: 1.5714285714em
}

.list-static-notice-01-type-01>li {
  padding-left: 1.2em
}

.list-static-notice-01-type-01>li>.list__mark {
  width: 1.2em
}

.list-static-step-01 {
  display: flex;
  flex-direction: column;
  position: fixed;
  visibility: hidden;
  opacity: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  left: 40px;
  width: 18px;
  z-index: 997
}

.list-static-step-01.is-show {
  visibility: visible;
  opacity: 1
}

.list-static-step-01 .list__label {
  margin: 0 0 32px
}

.list-static-step-01 .list__wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  height: 284px
}

.list-static-step-01 .list__wrap li a {
  border-radius: 50%;
  background: var(--gray-03);
  border: 1px solid var(--gray-03);
  display: block;
  width: 10px;
  height: 10px;
  overflow: hidden;
  text-indent: 100%;
  transition: background .2s ease-in-out, border-color .2s ease-in-out, transform .2s ease-in-out, opacity .2s ease-in-out;
  white-space: nowrap
}

.list-static-step-01 .list__wrap li a:hover {
  opacity: .5
}

.list-static-step-01 .list__wrap li.current a {
  background: var(--theme-color-01);
  border-color: var(--theme-color-01);
  transform: scale(1.3)
}

.list-static-step-01 .list__wrap li.current~li a {
  background: var(--white);
  border: 1px solid var(--gray-02)
}

@media only screen and (max-width: 1400px) {
  .list-static-step-01 {
      display: none
  }
}

.list-static-scale-01 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 600px;
  margin: 0 auto 2px;
  padding: 0 16px;
  width: 100%
}

.list-static-scale-01 li {
  font-weight: 700;
  text-align: center;
  position: relative
}

.list-static-scale-01 li.list__dot {
  background: var(--gray-03);
  border-radius: 50%;
  width: 5px;
  height: 5px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap
}

.list-static-scale-01 li .list__bubble, .list-static-scale-01 li .list__bubble-20, .list-static-scale-01 li .list__bubble-7, .list-static-scale-01 li .list__bubble-6 {
  border: 2px solid var(--gray-01);
  border-radius: 10px;
  background: var(--white);
  font-weight: 700;
  font-size: 1.4rem;
  text-align: center;
  padding: 6px 12px;
  position: absolute;
  display: block;
  visibility: hidden;
  bottom: -94px;
  left: 12px;
  opacity: 0;
  transform: translateX(-50%);
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  width: 200px
}

.list-static-scale-01 li .list__bubble::before, .list-static-scale-01 li .list__bubble-20::before, .list-static-scale-01 li .list__bubble-7::before, .list-static-scale-01 li .list__bubble-6::before {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  top: -7px;
  right: 0;
  left: 0;
  width: 10px;
  height: 10px;
  background: var(--white);
  border-top: 2px solid var(--gray-01);
  border-right: 2px solid var(--gray-01);
  transform: rotate(-45deg) skew(-10deg, -10deg)
}

.list-static-scale-01 li .list__bubble.current, .list-static-scale-01 li .current.list__bubble-20, .list-static-scale-01 li .current.list__bubble-7, .list-static-scale-01 li .current.list__bubble-6 {
  visibility: visible;
  opacity: 1
}

.list-static-scale-01 li .list__bubble-6 {
  left: -30px;
  transform: none;
  width: 110px
}

.list-static-scale-01 li .list__bubble-6::before {
  right: auto;
  left: 28px
}

.list-static-scale-01 li .list__bubble-7::before {
  left: -20px
}

.list-static-scale-01 li .list__bubble-20 {
  left: auto;
  right: -30px;
  transform: none
}

.list-static-scale-01 li .list__bubble-20::before {
  right: 28px;
  left: auto
}

@media only screen and (max-width: 960px) {
  .list-static-scale-01 {
      max-width: 295px;
      padding: 0 6px
  }
  .list-static-scale-01 li .list__bubble, .list-static-scale-01 li .list__bubble-6, .list-static-scale-01 li .list__bubble-7, .list-static-scale-01 li .list__bubble-20 {
      font-size: 1.2rem;
      line-height: 1.2;
      padding: 4px;
      bottom: -72px;
      left: 10px;
      width: 150px
  }
  .list-static-scale-01 li .list__bubble-6 {
      left: -30px;
      transform: none;
      width: 75px
  }
  .list-static-scale-01 li .list__bubble-7 {
      left: 35px
  }
  .list-static-scale-01 li .list__bubble-7::before {
      left: -62px
  }
  .list-static-scale-01 li .list__bubble-20 {
      left: auto;
      right: -30px;
      transform: none
  }
}

.list-static-image-01-column-2 {
  margin-bottom: 56px
}

.list-static-image-01-column-2>.list__wrap {
  display: flex;
  flex-wrap: wrap;
  margin: -24px 0 0 -24px
}

.list-static-image-01-column-2>.list__wrap>li {
  padding: 24px 0 0 24px;
  text-align: center
}

.list-static-image-01-column-2>.list__wrap>li a {
  display: block;
  transition: opacity .2s ease-in-out
}

.list-static-image-01-column-2>.list__wrap>li a:hover {
  opacity: .5
}

@media only screen and (max-width: 768px) {
  .list-static-image-01-column-2 {
      margin-bottom: 40px
  }
  .list-static-image-01-column-2>.list__wrap {
      margin: -16px 0 0 -16px
  }
  .list-static-image-01-column-2>.list__wrap>li {
      padding: 16px 0 0 16px
  }
}

.list-static-image-01-column-2>.list__wrap>li {
  width: 50%
}

@media only screen and (max-width: 768px) {
  .list-static-image-01-column-2>.list__wrap>li {
      width: 100%
  }
}

.list-static-data-01, .list-static-data-01-type-01 {
  margin-bottom: 28px
}

.list-static-data-01>.row>dt, .list-static-data-01-type-01>.row>dt {
  display: inline
}

.list-static-data-01>.row>dt::after, .list-static-data-01-type-01>.row>dt::after {
  content: "："
}

.list-static-data-01>.row>dd, .list-static-data-01-type-01>.row>dd {
  display: inline
}

@media only screen and (max-width: 768px) {
  .list-static-data-01, .list-static-data-01-type-01 {
      margin-bottom: 20px
  }
}

.list-static-data-01-type-01>.row {
  padding-left: 15px;
  position: relative
}

.list-static-data-01-type-01>.row+.row {
  margin-top: 3px
}

.list-static-data-01-type-01>.row::before {
  content: "";
  position: absolute;
  display: block;
  top: .75em;
  left: 0;
  width: 4px;
  height: 4px;
  background: var(--gray-02);
  border-radius: 50%
}

@media only screen and (max-width: 768px) {
  .list-static-data-01-type-01>.row+.row {
      margin-top: 5px
  }
}

.list-static-data-02 {
  margin-bottom: 28px
}

.list-static-data-02>.row+.row {
  margin-top: 24px
}

.list-static-data-02>.row>dt {
  margin-bottom: 16px;
  padding-left: 15px;
  position: relative
}

.list-static-data-02>.row>dt::before {
  content: "";
  position: absolute;
  display: block;
  top: .75em;
  left: 0;
  width: 4px;
  height: 4px;
  background: var(--gray-02);
  border-radius: 50%
}

.list-static-data-02>.row>dd>:first-child {
  margin-top: 0 !important
}

.list-static-data-02>.row>dd>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .list-static-data-02 {
      margin-bottom: 48px
  }
  .list-static-data-02>.row+.row {
      margin-top: 40px
  }
  .list-static-data-02>.row>dt {
      padding-left: 10px
  }
}

.button-link-01, .button-link-01-small-02, .button-link-01-small-01, .button-link-01-large-02, .button-link-01-large-01 {
  display: flex;
  justify-content: center;
  margin-bottom: 32px
}

.button-link-01 .cmp-button, .button-link-01-small-02 .cmp-button, .button-link-01-small-01 .cmp-button, .button-link-01-large-02 .cmp-button, .button-link-01-large-01 .cmp-button {
  background: var(--theme-button-color);
  box-shadow: 0 6px 20px var(--box-shadow-01);
  border-radius: 30px;
  color: var(--theme-button-text-color);
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 320px;
  min-height: 48px;
  padding: 10px 0;
  text-decoration: none;
  transition: opacity .2s ease-in-out;
  width: 100%;
  height: 100%
}

.button-link-01 .cmp-button:hover, .button-link-01-small-02 .cmp-button:hover, .button-link-01-small-01 .cmp-button:hover, .button-link-01-large-02 .cmp-button:hover, .button-link-01-large-01 .cmp-button:hover {
  opacity: .5
}

.button-link-01 .cmp-button .cmp-button__text, .button-link-01-small-02 .cmp-button .cmp-button__text, .button-link-01-small-01 .cmp-button .cmp-button__text, .button-link-01-large-02 .cmp-button .cmp-button__text, .button-link-01-large-01 .cmp-button .cmp-button__text {
  margin: 0 32px;
  text-align: center
}

@media only screen and (max-width: 768px) {
  .button-link-01 .cmp-button, .button-link-01-small-02 .cmp-button, .button-link-01-small-01 .cmp-button, .button-link-01-large-02 .cmp-button, .button-link-01-large-01 .cmp-button {
      max-width: 335px;
      min-height: 48px
  }
  .button-link-01 .cmp-button .cmp-button__text, .button-link-01-small-02 .cmp-button .cmp-button__text, .button-link-01-small-01 .cmp-button .cmp-button__text, .button-link-01-large-02 .cmp-button .cmp-button__text, .button-link-01-large-01 .cmp-button .cmp-button__text {
      margin: 0 24px
  }
}

.button-link-01-large-01 .cmp-button {
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.68;
  max-width: 556px;
  min-height: 60px
}

@media only screen and (max-width: 768px) {
  .button-link-01-large-01 .cmp-button {
      font-size: 1.6rem;
      max-width: 335px;
      min-height: 48px
  }
}

.button-link-01-large-02 .cmp-button {
  font-weight: 700;
  line-height: 1.68;
  max-width: 344px;
  min-height: 48px
}

.button-link-01-small-01 .cmp-button {
  min-height: 36px;
  padding: 3px 0
}

.button-link-01-small-02 .cmp-button {
  min-height: 40px;
  padding: 4px 0
}

.navigation-breadcrumb-01 {
  border-bottom: 1px solid var(--gray-01);
  margin: 0 -20px;
  padding: 7px 20px
}

.navigation-breadcrumb-01>.cmp-breadcrumb {
  display: block
}

.navigation-breadcrumb-01>.cmp-breadcrumb>.cmp-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  max-width: 1160px;
  margin: auto
}

.navigation-breadcrumb-01>.cmp-breadcrumb>.cmp-breadcrumb__list>.cmp-breadcrumb__item {
  color: var(--black-01);
  font-size: 1.4rem;
  margin-right: 32px;
  position: relative
}

.navigation-breadcrumb-01>.cmp-breadcrumb>.cmp-breadcrumb__list>.cmp-breadcrumb__item::after {
  content: "";
  position: absolute;
  display: block;
  top: .65em;
  right: -18px;
  width: 7px;
  height: 7px;
  border-top: 2px solid var(--gray-02);
  border-right: 2px solid var(--gray-02);
  transform: rotate(45deg)
}

.navigation-breadcrumb-01>.cmp-breadcrumb>.cmp-breadcrumb__list>.cmp-breadcrumb__item:last-child {
  margin-right: 0
}

.navigation-breadcrumb-01>.cmp-breadcrumb>.cmp-breadcrumb__list>.cmp-breadcrumb__item:last-child::after {
  content: none
}

.navigation-breadcrumb-01>.cmp-breadcrumb>.cmp-breadcrumb__list>.cmp-breadcrumb__item>.cmp-breadcrumb__item-link {
  color: var(--black-01);
  text-decoration: none
}

.navigation-breadcrumb-01>.cmp-breadcrumb>.cmp-breadcrumb__list>.cmp-breadcrumb__item>.cmp-breadcrumb__item-link:hover {
  text-decoration: underline
}

@media only screen and (max-width: 768px) {
  .navigation-breadcrumb-01 {
      padding: 6px 20px
  }
  .navigation-breadcrumb-01>.cmp-breadcrumb>.cmp-breadcrumb__list>.cmp-breadcrumb__item {
      font-size: 1.2rem;
      margin-right: 24px
  }
  .navigation-breadcrumb-01>.cmp-breadcrumb>.cmp-breadcrumb__list>.cmp-breadcrumb__item::after {
      top: .4em;
      right: -14px
  }
}

.box-agency-01 {
  background: var(--white);
  border-radius: 10px;
  margin-bottom: 32px;
  padding: 32px
}

.box-agency-01>.cmp-container>.aem-Grid {
  display: flex
}

.box-agency-01>.cmp-container>.aem-Grid>.box__column-left {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 25.5%
}

.box-agency-01>.cmp-container>.aem-Grid>.box__column-left>.cmp-container>:first-child {
  margin-top: 0 !important
}

.box-agency-01>.cmp-container>.aem-Grid>.box__column-left>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.box-agency-01>.cmp-container>.aem-Grid>.box__column-right {
  padding-left: 40px;
  width: 74.5%
}

.box-agency-01>.cmp-container>.aem-Grid>.box__column-right>.cmp-container>:first-child {
  margin-top: 0 !important
}

.box-agency-01>.cmp-container>.aem-Grid>.box__column-right>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.box-agency-01>.cmp-container>.aem-Grid>.box__column-right .box__inner+.box__inner {
  margin-top: 8px
}

.box-agency-01>.cmp-container>.aem-Grid>.box__column-right .box__inner>.cmp-container>:first-child {
  margin-top: 0 !important
}

.box-agency-01>.cmp-container>.aem-Grid>.box__column-right .box__inner>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.box-agency-01>.cmp-container>.aem-Grid>.box__column-right .button-link-01-small-01 {
  justify-content: flex-start
}

@media only screen and (max-width: 768px) {
  .box-agency-01 {
      margin-bottom: 24px;
      padding: 24px
  }
  .box-agency-01>.cmp-container>.aem-Grid {
      display: block
  }
  .box-agency-01>.cmp-container>.aem-Grid>.box__column-left {
      display: block;
      margin-bottom: 12px;
      width: 100%
  }
  .box-agency-01>.cmp-container>.aem-Grid>.box__column-right {
      padding: 0;
      width: 100%
  }
  .box-agency-01>.cmp-container>.aem-Grid>.box__column-right .button-link-01-small-01 {
      justify-content: center
  }
}

.box-agency-02 {
  float: none !important;
  margin-bottom: 24px
}

.box-agency-02 .aem-Grid, .box-agency-02 .aem-GridColumn {
  margin-left: 0 !important;
  float: none !important;
  width: 100% !important
}

.box-agency-02 .box__head {
  background: var(--gray-04);
  border-top: 2px solid var(--gray-01);
  border-right: 2px solid var(--gray-01);
  border-left: 2px solid var(--gray-01);
  border-radius: 10px 10px 0 0;
  padding: 20px 16px 0
}

.box-agency-02 .box__head>.cmp-container>:first-child {
  margin-top: 0 !important
}

.box-agency-02 .box__head>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.box-agency-02 .box__body {
  background: var(--gray-04);
  border-right: 2px solid var(--gray-01);
  border-left: 2px solid var(--gray-01);
  padding: 24px 16px 20px
}

.box-agency-02 .box__body>.cmp-container>:first-child {
  margin-top: 0 !important
}

.box-agency-02 .box__body>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.box-agency-02 .box__button .cmp-button {
  background: var(--theme-button-color);
  border-radius: 0 0 10px 10px;
  color: var(--theme-button-text-color);
  font-size: 1.4rem;
  display: block;
  letter-spacing: 0;
  padding: 6px 16px;
  text-align: center;
  text-decoration: none;
  transition: opacity .2s ease-in-out
}

.box-agency-02 .box__button .cmp-button .image-blank-01 {
  margin-left: 1em;
  top: -0.1em
}

.box-agency-02 .box__button .cmp-button:hover {
  opacity: .5
}

@media only screen and (max-width: 768px) {
  .box-agency-02 .box__head {
      padding: 20px 16px 0
  }
  .box-agency-02 .box__body {
      padding: 16px 24px 24px
  }
  .box-agency-02 .box__button {
      background: var(--gray-04);
      border-bottom: 2px solid var(--gray-01);
      border-right: 2px solid var(--gray-01);
      border-left: 2px solid var(--gray-01);
      border-radius: 0 0 10px 10px;
      padding: 0 24px 24px
  }
  .box-agency-02 .box__button .cmp-button {
      border-radius: 30px;
      max-width: 287px;
      margin: auto;
      padding: 6px 24px
  }
}

.box-agency-03 {
  background: var(--gray-04);
  border: 2px solid var(--gray-01);
  border-radius: 10px;
  margin-bottom: 24px;
  padding: 20px 16px
}

.box-agency-03 .box__inner+.box__inner {
  margin-top: 8px
}

.box-agency-03 .box__inner>.cmp-container>:first-child {
  margin-top: 0 !important
}

.box-agency-03 .box__inner>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .box-agency-03 {
      padding: 20px 24px
  }
}

.box-info-01 {
  background: var(--theme-color-02);
  border-radius: 10px;
  margin-bottom: 40px;
  padding: 28px 34px
}

.box-info-01 .cmp-contentfragment__element-value>:first-child {
  margin-top: 0 !important
}

.box-info-01 .cmp-contentfragment__element-value>:last-child {
  margin-bottom: 0 !important
}

.box-info-01 .cmp-contentfragment__element-value>p {
  font-weight: 700;
  margin-bottom: 12px;
  padding-left: 22px;
  position: relative
}

.box-info-01 .cmp-contentfragment__element-value>p::before {
  content: "★";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  color: var(--theme-color-01)
}

.box-info-01 .cmp-contentfragment__element-value>ul>li {
  padding-left: 15px;
  position: relative
}

.box-info-01 .cmp-contentfragment__element-value>ul>li+li {
  margin-top: 2px
}

.box-info-01 .cmp-contentfragment__element-value>ul>li::before {
  content: "";
  position: absolute;
  display: block;
  top: .75em;
  left: 0;
  width: 4px;
  height: 4px;
  background: var(--gray-02);
  border-radius: 50%
}

@media only screen and (max-width: 768px) {
  .box-info-01 {
      margin-bottom: 24px;
      padding: 24px
  }
  .box-info-01 .cmp-contentfragment__element-value>p {
      padding-left: 24px
  }
  .box-info-01 .cmp-contentfragment__element-value>ul>li {
      padding-left: 12px
  }
  .box-info-01 .cmp-contentfragment__element-value>ul>li+li {
      margin-top: 6px
  }
  .box-info-01 .cmp-contentfragment__element-value>ul>li::before {
      top: .6em
  }
}

.box-haed-01 {
  margin-bottom: 72px
}

.box-haed-01>.cmp-container>.box__head {
  background: var(--theme-color-01);
  border-radius: 10px 10px 0 0;
  color: var(--theme-bright-color-01);
  font-size: 2rem;
  line-height: 1.48;
  padding: 10px 32px
}

.box-haed-01>.cmp-container>.box__head .cmp-title__text {
  color: var(--theme-button-text-color)
}

.box-haed-01>.cmp-container>.box__container {
  background: var(--white);
  border-bottom: 1px solid var(--gray-01);
  border-right: 1px solid var(--gray-01);
  border-left: 1px solid var(--gray-01);
  border-radius: 0 0 10px 10px;
  padding: 28px 32px
}

.box-haed-01>.cmp-container>.box__container>.cmp-contentfragment>:first-child {
  margin-top: 0 !important
}

.box-haed-01>.cmp-container>.box__container>.cmp-contentfragment>:last-child {
  margin-bottom: 0 !important
}

.box-haed-01>.cmp-container>.box__container>.cmp-contentfragment .cmp-contentfragment__element--writerName {
  margin-bottom: 24px
}

.box-haed-01>.cmp-container>.box__container>.cmp-contentfragment .cmp-contentfragment__element--writerName .cmp-contentfragment__element-value>:first-child {
  margin-top: 0 !important
}

.box-haed-01>.cmp-container>.box__container>.cmp-contentfragment .cmp-contentfragment__element--writerName .cmp-contentfragment__element-value>:last-child {
  margin-bottom: 0 !important
}

.box-haed-01>.cmp-container>.box__container>.cmp-contentfragment .cmp-contentfragment__element--writerName .cmp-contentfragment__element-value b {
  font-weight: inherit
}

.box-haed-01>.cmp-container>.box__container>.cmp-contentfragment .cmp-contentfragment__element--writerProfile .cmp-contentfragment__element-value>:first-child {
  margin-top: 0 !important
}

.box-haed-01>.cmp-container>.box__container>.cmp-contentfragment .cmp-contentfragment__element--writerProfile .cmp-contentfragment__element-value>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .box-haed-01 {
      margin-bottom: 56px
  }
  .box-haed-01>.cmp-container>.box__head {
      font-size: 1.6rem;
      line-height: 1.85;
      padding: 5px 24px
  }
  .box-haed-01>.cmp-container>.box__container {
      padding: 24px
  }
  .box-haed-01>.cmp-container>.box__container>.cmp-contentfragment .cmp-contentfragment__element--writerName {
      margin-bottom: 20px
  }
}

.box-image-01 {
  background: var(--white);
  border-radius: 10px;
  box-shadow: 0 8px 30px var(--box-shadow-03);
  margin-bottom: 72px;
  overflow: hidden
}

.box-image-01 .cmp-teaserList__image {
  width: auto
}

.box-image-01>ul>li>:first-child {
  margin-top: 0 !important
}

.box-image-01>ul>li>:last-child {
  margin-bottom: 0 !important
}

.box-image-01 .cmp-teaserList__image {
  position: relative;
  padding-top: 61.1111111111%
}

.box-image-01 .cmp-teaserList__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover"
}

.box-image-01 .cmp-teaserList__category_area {
  margin: 0
}

.box-image-01 .cmp-teaserList__title {
  color: var(--theme-color-01);
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.6;
  padding: 15px 24px 20px
}

.box-image-01 .cmp-teaserList__title a {
  text-decoration: none
}

.box-image-01 .cmp-teaserList__title a:hover {
  color: inherit;
  text-decoration: underline
}

.box-image-01 .cmp-teaserList__description {
  display: none
}

@media only screen and (max-width: 768px) {
  .box-image-01 {
      margin-bottom: 56px
  }
  .box-image-01 .cmp-teaserList__image {
      padding-top: 61.25%
  }
  .box-image-01 .cmp-teaserList__title {
      font-size: 1.4rem;
      line-height: 1.5;
      padding: 16px
  }
}

.box-toggle-01 {
  border: 1px solid var(--gray-01);
  border-radius: 10px;
  box-shadow: 0 8px 30px var(--box-shadow-02);
  margin-bottom: 72px
}

.box-toggle-01>.cmp-container>.box__toggle-button {
  margin: 0
}

.box-toggle-01>.cmp-container>.box__toggle-button .cmp-title__text {
  display: block;
  font-weight: 700;
  padding: 12px 60px 12px 24px;
  text-align: left
}

.box-toggle-01>.cmp-container>.box__toggle-button button {
  position: relative;
  transition: opacity .2s ease-in-out;
  width: 100%
}

.box-toggle-01>.cmp-container>.box__toggle-button button:hover {
  opacity: .5
}

.box-toggle-01>.cmp-container>.box__toggle-button button::before, .box-toggle-01>.cmp-container>.box__toggle-button button::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  top: 0;
  right: 24px;
  bottom: 0;
  width: 18px;
  height: 2px;
  background: var(--gray-02)
}

.box-toggle-01>.cmp-container>.box__toggle-button button::after {
  transform: rotate(90deg);
  transition: opacity .2s ease-in-out
}

.box-toggle-01>.cmp-container>.box__toggle-container {
  display: none;
  height: 0;
  overflow: hidden;
  transition: height .3s ease-in-out
}

.box-toggle-01>.cmp-container>.box__toggle-container>.cmp-container {
  padding: 20px 24px 16px;
  position: relative
}

.box-toggle-01>.cmp-container>.box__toggle-container>.cmp-container>:first-child {
  margin-top: 0 !important
}

.box-toggle-01>.cmp-container>.box__toggle-container>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.box-toggle-01>.cmp-container>.box__toggle-container>.cmp-container::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 24px;
  width: calc(100% - 48px);
  height: 1px;
  background: var(--gray-01)
}

.box-toggle-01.is-animate>.cmp-container>.box__toggle-container {
  display: block
}

.box-toggle-01.is-open>.cmp-container>.box__toggle-container {
  display: block;
  height: auto
}

.box-toggle-01.is-open>.cmp-container>.box__toggle-button button::after {
  opacity: 0
}

@media only screen and (max-width: 768px) {
  .box-toggle-01 {
      margin-bottom: 56px
  }
  .box-toggle-01>.cmp-container>.box__toggle-button .cmp-title__text {
      padding: 12px 60px 12px 24px
  }
  .box-toggle-01>.cmp-container>.box__toggle-container>.cmp-container {
      padding: 12px 24px 20px
  }
  .box-toggle-01>.cmp-container>.box__toggle-container>.cmp-container::before {
      left: 20px;
      width: calc(100% - 40px)
  }
}

.annotation {
  color: red;
  font-size: small;
}

.box-static-01, .box-static-01-type-01 {
  background: var(--white);
  border-radius: 10px;
  display: flex;
  margin-bottom: 32px;
  padding: 40px
}

.box-static-01>.box__column-left, .box-static-01-type-01>.box__column-left {
  border-right: 1px solid var(--gray-01);
  padding-right: 40px;
  width: 22.5%
}

.box-static-01>.box__column-left>:first-child, .box-static-01-type-01>.box__column-left>:first-child {
  margin-top: 0 !important
}

.box-static-01>.box__column-left>:last-child, .box-static-01-type-01>.box__column-left>:last-child {
  margin-bottom: 0 !important
}

.box-static-01>.box-column__right, .box-static-01-type-01>.box-column__right {
  padding-left: 40px;
  width: 77.5%
}

.box-static-01>.box-column__right>:first-child, .box-static-01-type-01>.box-column__right>:first-child {
  margin-top: 0 !important
}

.box-static-01>.box-column__right>:last-child, .box-static-01-type-01>.box-column__right>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .box-static-01, .box-static-01-type-01 {
      display: block;
      margin-bottom: 24px;
      padding: 20px
  }
  .box-static-01>.box__column-left, .box-static-01-type-01>.box__column-left {
      border-right: 0;
      border-bottom: 1px solid var(--gray-01);
      padding: 0 0 4px;
      width: 100%
  }
  .box-static-01>.box-column__right, .box-static-01-type-01>.box-column__right {
      padding: 16px 0 0;
      width: 100%
  }
}

.box-static-01-type-01>.column__right {
  padding: 4px 0 0 40px
}

.box-static-toggle-01 {
  border: 1px solid var(--gray-01);
  border-radius: 10px;
  box-shadow: 0 8px 30px var(--box-shadow-02);
  margin-bottom: 56px
}

.box-static-toggle-01>.toggle__button {
  margin: 0
}

.box-static-toggle-01>.toggle__button button {
  position: relative;
  transition: opacity .2s ease-in-out;
  width: 100%
}

.box-static-toggle-01>.toggle__button button:hover {
  opacity: .5
}

.box-static-toggle-01>.toggle__button button::before, .box-static-toggle-01>.toggle__button button::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  top: 0;
  right: 24px;
  bottom: 0;
  width: 18px;
  height: 2px;
  background: var(--gray-02)
}

.box-static-toggle-01>.toggle__button button::after {
  transform: rotate(90deg);
  transition: opacity .2s ease-in-out
}

.box-static-toggle-01>.toggle__button span {
  display: block;
  font-weight: 700;
  padding: 12px 60px 12px 24px;
  text-align: left
}

.box-static-toggle-01>.toggle__container {
  display: none;
  height: 0;
  overflow: hidden;
  transition: height .3s ease-in-out
}

.box-static-toggle-01>.toggle__container>.toggle__inner {
  padding: 20px 24px 16px;
  position: relative
}

.box-static-toggle-01>.toggle__container>.toggle__inner>:first-child {
  margin-top: 0 !important
}

.box-static-toggle-01>.toggle__container>.toggle__inner>:last-child {
  margin-bottom: 0 !important
}

.box-static-toggle-01>.toggle__container>.toggle__inner::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 24px;
  width: calc(100% - 48px);
  height: 1px;
  background: var(--gray-01)
}

.box-static-toggle-01>.toggle__container>.toggle__inner>.toggle__button-close button {
  background: var(--theme-button-color);
  border-radius: 30px;
  color: var(--theme-button-text-color);
  font-size: 1.6rem;
  display: block;
  line-height: 1.85;
  max-width: 120px;
  margin: auto;
  padding: 4px 20px;
  text-decoration: none;
  transition: opacity .2s ease-in-out;
  width: 100%
}

.box-static-toggle-01>.toggle__container>.toggle__inner>.toggle__button-close button:hover {
  opacity: .5
}

.box-static-toggle-01 .toggle__title-01 {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.6444444444;
  margin: 36px 0 8px
}

.box-static-toggle-01 .toggle__text-01 {
  margin-bottom: 12px
}

.box-static-toggle-01.is-animate>.toggle__container {
  display: block
}

.box-static-toggle-01.is-open>.toggle__container {
  display: block;
  height: auto
}

.box-static-toggle-01.is-open>.toggle__button button::after {
  opacity: 0
}

@media only screen and (max-width: 768px) {
  .box-static-toggle-01 {
      margin-bottom: 48px
  }
  .box-static-toggle-01>.toggle__button span {
      padding: 12px 60px 12px 20px
  }
  .box-static-toggle-01>.toggle__container>.toggle__inner {
      padding: 24px 20px 16px
  }
  .box-static-toggle-01>.toggle__container>.toggle__inner::before {
      left: 20px;
      width: calc(100% - 40px)
  }
  .box-static-toggle-01 .toggle__title-01 {
      font-size: 1.6rem;
      line-height: 1.4;
      margin: 28px 0 12px
  }
}

.box-static-fixed-menu-01 {
  background: var(--white);
  border-top: 6px solid var(--theme-color-01);
  border-bottom: 1px solid var(--gray-01);
  letter-spacing: 0;
  padding: 0 20px;
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1000
}

.box-static-fixed-menu-01.is-fixed-bottom {
  bottom: 0;
  animation: animation-slide-up-01 .8s ease-in-out forwards
}

.box-static-fixed-menu-01.is-fixed-top {
  top: 0;
  animation: animation-slide-down-01 .8s ease-in-out forwards
}

.box-static-fixed-menu-01 .box__wrap {
  display: flex;
  align-items: center;
  max-width: 880px;
  margin: auto;
  padding: 16px 0 25px
}

.box-static-fixed-menu-01 .box__wrap .box__column-title {
  flex-shrink: 0;
  padding: 10px 32px 0 0
}

.box-static-fixed-menu-01 .box__wrap .box__column-title .title {
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.75
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-01 {
  margin: 0;
  padding-right: 52px;
  position: relative;
  width: 252px
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-01::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 15px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 18.5px 0 18.5px 19px;
  border-color: transparent transparent transparent var(--gray-01)
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-01 .label {
  border-bottom: 1px solid var(--gray-01);
  display: block;
  font-size: 1.4rem;
  margin-bottom: 18px;
  padding: 0 0 5px;
  text-align: center
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-01 .num-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: center;
  text-align: center
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-01 .num-wrap .num {
  display: block;
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1;
  position: relative
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-01 .num-wrap .num::before {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 2px;
  background: var(--black-01)
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-01 .num-wrap .unit {
  display: block;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-left: 8px;
  position: relative
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-02 {
  margin: 0;
  padding-right: 24px;
  width: 284px
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-02 .label-wrap {
  border-bottom: 1px solid var(--gray-01);
  display: flex;
  align-items: flex-end;
  line-height: 1.2;
  margin-bottom: 18px;
  padding: 0 0 7px;
  text-align: center
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-02 .label-wrap .text-01 {
  display: block;
  font-size: 1.4rem;
  padding-right: 12px;
  width: 42%
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-02 .label-wrap .text-02 {
  display: block;
  font-size: 1.2rem;
  text-align: left;
  width: 58%
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-02 .label-wrap .text-02 .value {
  display: block;
  font-weight: 700
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-02 .label-wrap .text-02 .value em {
  color: var(--theme-color-01);
  font-size: 1.7rem
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-02 .num-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
  width: 100%
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-02 .num-wrap .num {
  color: var(--theme-color-01);
  display: block;
  font-weight: 700;
  font-size: 3.8rem;
  line-height: 1
}

.box-static-fixed-menu-01 .box__wrap .box__column-num-02 .num-wrap .unit {
  display: block;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.5;
  margin-left: 8px;
  position: relative
}

.box-static-fixed-menu-01 .box__wrap .box__column-button {
  flex-grow: 1;
  margin: 0
}

.box-static-fixed-menu-01 .box__wrap .box__column-button .button {
  background: var(--theme-button-color);
  box-shadow: 0 6px 20px var(--box-shadow-01);
  border-radius: 40px;
  color: var(--theme-button-text-color);
  display: block;
  padding: 25px 20px;
  text-align: center;
  text-decoration: none;
  transition: opacity .2s ease-in-out
}

.box-static-fixed-menu-01 .box__wrap .box__column-button .button:hover {
  opacity: .5
}

@media only screen and (max-width: 768px) {
  .box-static-fixed-menu-01 .box__wrap {
      align-items: flex-start;
      flex-wrap: wrap;
      padding: 10px 0
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-title {
      flex-shrink: 1;
      order: 0;
      padding: 0 24px 0 0;
      width: 40%
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-title .title {
      font-size: 1.4rem
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-01 {
      order: 2;
      padding: 11px 42px 0 0;
      width: 51.3%
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-01::after {
      right: 10px;
      border-width: 16px 0 16px 17px
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-01 .label {
      font-size: 1.2rem;
      margin-bottom: 6px;
      padding: 0 0 3px
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-01 .num-wrap {
      padding: 0
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-01 .num-wrap .num {
      font-size: 1.6rem
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-01 .num-wrap .unit {
      font-size: 1rem;
      margin-left: 2px
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-02 {
      order: 3;
      padding: 3px 0 0;
      width: 48.7%
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-02 .label-wrap {
      flex-wrap: wrap;
      margin-bottom: 7px;
      padding: 0 0 2px
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-02 .label-wrap .text-01 {
      font-size: 1.2rem;
      margin-bottom: 1px;
      padding: 0;
      width: 100%
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-02 .label-wrap .text-02 {
      font-size: 1rem;
      text-align: center;
      width: 100%
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-02 .label-wrap .text-02 .value {
      display: inline
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-02 .label-wrap .text-02 .value em {
      font-size: 1rem
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-02 .num-wrap .num {
      font-size: 2.2rem
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-num-02 .num-wrap .unit {
      font-size: 1.2rem;
      margin-left: 2px
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-button {
      flex-grow: 0;
      order: 1;
      width: 60%
  }
  .box-static-fixed-menu-01 .box__wrap .box__column-button .button {
      font-size: 1.2rem;
      padding: 4px 12px
  }
}

.layout-main-visual-01 {
  /* margin: 0 -20px */
  margin: auto;
  max-width: 1160px;
}

.layout-main-visual-01 .cmp-teaser {
  position: relative;
  /* padding-top: 48.571428% */
}

.layout-main-visual-01 .cmp-teaser::after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  /* background: var(--gradient-01) */
}

.layout-main-visual-01 .cmp-teaser .cmp-teaser__image {
  /* position: absolute; */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.layout-main-visual-01 .cmp-teaser .cmp-teaser__image .cmp-image {
  width: 100%;
  height: 100%
}

.layout-main-visual-01 .cmp-teaser .cmp-teaser__image .cmp-image img {
  width: 100%;
  /* height: 100%; */
  object-fit: cover;
  font-family: "object-fit: cover"
}

.layout-main-visual-01 .cmp-teaser .cmp-teaser__content {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  max-width: 1200px;
  margin: auto;
  padding: 48px 20px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1
}

.layout-main-visual-01 .cmp-teaser .cmp-teaser__content>:first-child {
  margin-top: 0 !important
}

.layout-main-visual-01 .cmp-teaser .cmp-teaser__content>:last-child {
  margin-bottom: 0 !important
}

.layout-main-visual-01 .cmp-teaser .cmp-teaser__content .cmp-teaser__pretitle {
  color: var(--white);
  font-weight: 700;
  font-size: 4.4rem;
  line-height: 1.3125;
  margin-bottom: 20px;
  max-width: 600px;
  text-shadow: 0 0 4px var(--text-shadow-01)
}

.layout-main-visual-01 .cmp-teaser .cmp-teaser__content .cmp-teaser__title {
  color: var(--white);
  font-size: 1.8rem;
  line-height: 1.75;
  max-width: 600px;
  text-shadow: 0 0 4px var(--text-shadow-01)
}

@media only screen and (min-width: 1401px) {
  .layout-main-visual-01 .cmp-teaser {
      /* height: 680px; */
      padding: 0
  }
}

@media only screen and (max-width: 768px) {
  .layout-main-visual-01 .cmp-teaser {
      /* min-height: 320px; */
      padding: 0
  }
  .layout-main-visual-01 .cmp-teaser .cmp-teaser__content {
      padding: 22px 20px
  }
  .layout-main-visual-01 .cmp-teaser .cmp-teaser__content .cmp-teaser__pretitle {
      font-size: 3.2rem;
      margin-bottom: 8px;
      max-width: none
  }
  .layout-main-visual-01 .cmp-teaser .cmp-teaser__content .cmp-teaser__title {
      font-size: 1.6rem;
      line-height: 1.6
  }
}

.layout-main-visual-02 {
  border: 2px solid var(--theme-color-01);
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 52px
}

.layout-main-visual-02 .cmp-teaser__image {
  /* height: 298px; */
  width: 100%
}

.layout-main-visual-02 .cmp-teaser__image .cmp-image {
  width: 100%;
  height: 100%
}

.layout-main-visual-02 .cmp-teaser__image .cmp-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover"
}

.layout-main-visual-02 .cmp-teaser__content {
  background: var(--theme-color-01);
  padding: 24px
}

.layout-main-visual-02 .cmp-teaser__content>:first-child {
  margin-top: 0 !important
}

.layout-main-visual-02 .cmp-teaser__content>:last-child {
  margin-bottom: 0 !important
}

.layout-main-visual-02 .cmp-teaser__content .cmp-teaser__pretitle {
  color: var(--theme-button-text-color);
  font-weight: 700;
  font-size: 3.2rem;
  letter-spacing: 0;
  line-height: 1.3125;
  margin-bottom: 8px
}

.layout-main-visual-02 .cmp-teaser__content .cmp-teaser__title {
  color: var(--theme-button-text-color);
  letter-spacing: 0
}

@media only screen and (max-width: 768px) {
  /* .layout-main-visual-02 .cmp-teaser__image {
      height: 112px
  } */
  .layout-main-visual-02 .cmp-teaser__content {
      padding: 20px
  }
  .layout-main-visual-02 .cmp-teaser__content .cmp-teaser__pretitle {
      font-size: 2.2rem;
      margin-bottom: 16px
  }
}

.layout-main-visual-03-type-03, .layout-main-visual-03-type-02, .layout-main-visual-03-type-01 {
  margin: 0 -20px
}

.layout-main-visual-03-type-03>.cmp-container, .layout-main-visual-03-type-02>.cmp-container, .layout-main-visual-03-type-01>.cmp-container {
  display: -ms-grid;
  display: grid;
  height: 622px
}

.layout-main-visual-03-type-03>.cmp-container .layout__box, .layout-main-visual-03-type-02>.cmp-container .layout__box, .layout-main-visual-03-type-01>.cmp-container .layout__box {
  position: relative;
  height: 100%
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  height: 100%;
  padding: 60px 24px 32px
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02, .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 {
  display: inline-block;
  min-width: 100px;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.3;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 p, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 p, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 p, .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 p, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 p, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 p {
  margin: 0
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a, .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a {
  display: block;
  text-align: center;
  padding: 5px 16px;
  transition: opacity .2s ease-in-out;
  text-decoration: none
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a:hover, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a:hover, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a:hover, .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a:hover, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a:hover, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a:hover {
  opacity: .5
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a {
  background: var(--translucent-black-02);
  color: var(--white)
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a {
  background: var(--translucent-white-01);
  color: var(--black-01)
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title {
  color: var(--white);
  position: relative;
  width: 100%;
  z-index: 1
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title a, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title a, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title a {
  color: var(--white);
  text-decoration: none
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title a:hover, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title a:hover, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title a:hover {
  text-decoration: underline
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title h1, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title h1, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title h1, .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title h2, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title h2, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title h2 {
  color: var(--white);
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.75
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title h1+p, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title h1+p, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title h1+p, .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title h2+p, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title h2+p, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title h2+p {
  margin-top: 12px
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title p, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title p, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title p {
  color: var(--white);
  line-height: 1.6;
  margin: 0
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-image, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-image, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image {
  width: 100%;
  height: 100%
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link:hover img, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link:hover img, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link:hover img {
  transform: scale(1.02)
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link::after, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link::after, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link::after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: var(--gradient-01)
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link img, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link img, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover";
  transition: transform .4s ease-in-out
}

.layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__image, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__image, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image .cmp-image__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover";
  transition: transform .4s ease-in-out
}

@media only screen and (max-width: 768px) {
  .layout-main-visual-03-type-03>.cmp-container, .layout-main-visual-03-type-02>.cmp-container, .layout-main-visual-03-type-01>.cmp-container {
      display: flex;
      flex-wrap: wrap;
      height: auto
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box, .layout-main-visual-03-type-02>.cmp-container .layout__box, .layout-main-visual-03-type-01>.cmp-container .layout__box {
      background: var(--gray-04);
      height: auto
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(1), .layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(1), .layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(1) {
      width: 100%
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(1)>.cmp-container, .layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(1)>.cmp-container, .layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(1)>.cmp-container {
      padding: 0
  }
  /* .layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(1)>.cmp-container .layout__box-image, .layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(1)>.cmp-container .layout__box-image, .layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(1)>.cmp-container .layout__box-image {
      padding-top: 56.2666666667%
  } */
  .layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(n+2), .layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(n+2), .layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(n+2) {
      width: 50%
  }
  /* .layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(n+2)>.cmp-container .layout__box-image, .layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(n+2)>.cmp-container .layout__box-image, .layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(n+2)>.cmp-container .layout__box-image {
      padding-top: 56.3829787234%
  } */
  .layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(n+2)>.cmp-container .layout__box-title h1, .layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(n+2)>.cmp-container .layout__box-title h1, .layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(n+2)>.cmp-container .layout__box-title h1, .layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(n+2)>.cmp-container .layout__box-title h2, .layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(n+2)>.cmp-container .layout__box-title h2, .layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(n+2)>.cmp-container .layout__box-title h2 {
      font-size: 1.4rem;
      line-height: 1.5
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container {
      align-items: flex-start;
      align-content: flex-start;
      height: 100%;
      padding: 0
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01, .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 {
      font-size: 1.2rem;
      min-width: 80px
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-01 a, .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-label-type-02 a {
      padding: 3px 12px
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title {
      color: var(--black-01);
      order: 1;
      padding: 16px 20px
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title a, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title a, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title a {
      color: var(--black-01)
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title p, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title p, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title p {
      color: var(--black-01)
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title h1, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title h1, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title h1, .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title h2, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title h2, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title h2 {
      color: var(--black-01);
      font-size: 1.6rem;
      line-height: 1.5
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title h1+p, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title h1+p, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title h1+p, .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title h2+p, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title h2+p, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title h2+p {
      margin-top: 8px
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-title p, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-title p, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-title p {
      line-height: 1.5
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-image, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-image, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-image {
      order: 0;
      position: relative;
      height: auto
  }
  .layout-main-visual-03-type-03>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image, .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image, .layout-main-visual-03-type-01>.cmp-container .layout__box>.cmp-container .layout__box-image .cmp-image {
      /* position: absolute; */
      top: 0;
      left: 0;
      right: 0;
      bottom: 0
  }
}

.layout-main-visual-03-type-01>.cmp-container {
  -ms-grid-columns: 53.5% 46.5%;
  grid-template-columns: 53.5% 46.5%;
  -ms-grid-rows: 50% 50%;
  grid-template-rows: 50% 50%
}

.layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  grid-row: 1/span 2;
  -ms-grid-column: 1;
  grid-column: 1
}

.layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(1)>.cmp-container {
  padding: 60px 24px 44px
}

.layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(2) {
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-column: 2;
  grid-column: 2
}

.layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(3) {
  -ms-grid-row: 2;
  grid-row: 2;
  -ms-grid-column: 2;
  grid-column: 2
}

@media only screen and (max-width: 768px) {
  .layout-main-visual-03-type-01>.cmp-container .layout__box:nth-child(1)>.cmp-container {
      padding: 0
  }
}

.layout-main-visual-03-type-02>.cmp-container {
  -ms-grid-columns: 33.33333% 33.33333% 33.33333%;
  grid-template-columns: 33.33333% 33.33333% 33.33333%;
  -ms-grid-rows: 50% 50%;
  grid-template-rows: 50% 50%
}

.layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container {
  padding: 60px 24px 28px
}

.layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(1) {
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/span 2
}

.layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(1)>.cmp-container {
  padding: 60px 24px 24px
}

.layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(2) {
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-column: 3;
  grid-column: 3
}

.layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(3) {
  -ms-grid-row: 2;
  grid-row: 2;
  -ms-grid-column: 1;
  grid-column: 1
}

.layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(4) {
  -ms-grid-row: 2;
  grid-row: 2;
  -ms-grid-column: 2;
  grid-column: 2
}

.layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(5) {
  -ms-grid-row: 2;
  grid-row: 2;
  -ms-grid-column: 3;
  grid-column: 3
}

@media only screen and (max-width: 768px) {
  .layout-main-visual-03-type-02>.cmp-container .layout__box:nth-child(1)>.cmp-container {
      padding: 0
  }
  .layout-main-visual-03-type-02>.cmp-container .layout__box>.cmp-container {
      padding: 0
  }
}

.layout-main-visual-03-type-03>.cmp-container {
  -ms-grid-columns: 33.33333% 33.33333% 33.33333%;
  grid-template-columns: 33.33333% 33.33333% 33.33333%;
  -ms-grid-rows: 50% 50%;
  grid-template-rows: 50% 50%
}

.layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  grid-row: 1/span 2;
  -ms-grid-column: 1;
  grid-column: 1
}

.layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(1)>.cmp-container {
  padding: 60px 24px 50px
}

.layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(2) {
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-column: 2;
  grid-column: 2
}

.layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(3) {
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-column: 3;
  grid-column: 3
}

.layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(4) {
  -ms-grid-row: 2;
  grid-row: 2;
  -ms-grid-column: 2;
  grid-column: 2
}

.layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(5) {
  -ms-grid-row: 2;
  grid-row: 2;
  -ms-grid-column: 3;
  grid-column: 3
}

@media only screen and (max-width: 768px) {
  .layout-main-visual-03-type-03>.cmp-container .layout__box:nth-child(1)>.cmp-container {
      padding: 0
  }
}

.layout-image-01-image-left, .layout-image-01-image-right {
  margin-bottom: 72px
}

.layout-image-01-image-left .cmp-image__image, .layout-image-01-image-right .cmp-image__image {
  width: auto
}

.layout-image-01-image-left>.cmp-container, .layout-image-01-image-right>.cmp-container {
  display: flex
}

.layout-image-01-image-left>.cmp-container>.layout__column-image, .layout-image-01-image-right>.cmp-container>.layout__column-image {
  flex-shrink: 0;
  max-width: 52.0689655172%
}

.layout-image-01-image-left>.cmp-container>.layout__column-text, .layout-image-01-image-right>.cmp-container>.layout__column-text {
  display: flex;
  align-items: center;
  flex-grow: 1;
  width: 100%
}

.layout-image-01-image-left>.cmp-container>.layout__column-text>.cmp-container>:first-child, .layout-image-01-image-right>.cmp-container>.layout__column-text>.cmp-container>:first-child {
  margin-top: 0 !important
}

.layout-image-01-image-left>.cmp-container>.layout__column-text>.cmp-container>:last-child, .layout-image-01-image-right>.cmp-container>.layout__column-text>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .layout-image-01-image-left, .layout-image-01-image-right {
      margin-bottom: 56px
  }
  .layout-image-01-image-left>.cmp-container, .layout-image-01-image-right>.cmp-container {
      display: block
  }
  .layout-image-01-image-left>.cmp-container>.layout__column-image, .layout-image-01-image-right>.cmp-container>.layout__column-image {
      max-width: none;
      text-align: center
  }
  .layout-image-01-image-left>.cmp-container>.layout__column-text, .layout-image-01-image-right>.cmp-container>.layout__column-text {
      display: block;
      margin-bottom: 24px
  }
}

.layout-image-01-image-right>.cmp-container>.layout__column-image {
  padding-left: 48px
}

@media only screen and (max-width: 768px) {
  .layout-image-01-image-right>.cmp-container>.layout__column-image {
      padding: 0
  }
}

.layout-image-01-image-left>.cmp-container {
  flex-direction: row-reverse
}

.layout-image-01-image-left>.cmp-container>.layout__column-image {
  padding-right: 48px
}

@media only screen and (max-width: 768px) {
  .layout-image-01-image-left>.cmp-container>.layout__column-image {
      padding: 0
  }
}

.layout-image-02-image-left, .layout-image-02-image-right {
  margin-bottom: 72px
}

.layout-image-02-image-left .cmp-image__image, .layout-image-02-image-right .cmp-image__image {
  width: auto
}

.layout-image-02-image-left>.cmp-container, .layout-image-02-image-right>.cmp-container {
  display: flex
}

.layout-image-02-image-left>.cmp-container>.layout__column-image, .layout-image-02-image-right>.cmp-container>.layout__column-image {
  min-height: 431px;
  width: 58.6%
}

.layout-image-02-image-left>.cmp-container>.layout__column-image>.cmp-container, .layout-image-02-image-right>.cmp-container>.layout__column-image>.cmp-container {
  width: 100%;
  height: 100%
}

.layout-image-02-image-left>.cmp-container>.layout__column-image>.cmp-container>.image, .layout-image-02-image-right>.cmp-container>.layout__column-image>.cmp-container>.image {
  width: 100%;
  height: 100%
}

.layout-image-02-image-left>.cmp-container>.layout__column-image>.cmp-container>.image>.cmp-image, .layout-image-02-image-right>.cmp-container>.layout__column-image>.cmp-container>.image>.cmp-image {
  width: 100%;
  height: 100%
}

.layout-image-02-image-left>.cmp-container>.layout__column-image>.cmp-container>.image>.cmp-image .cmp-image__image, .layout-image-02-image-right>.cmp-container>.layout__column-image>.cmp-container>.image>.cmp-image .cmp-image__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover"
}

.layout-image-02-image-left>.cmp-container>.layout__column-text, .layout-image-02-image-right>.cmp-container>.layout__column-text {
  background: var(--white);
  border-radius: 10px;
  box-shadow: 0 8px 30px var(--box-shadow-03);
  display: flex;
  align-items: center;
  padding: 40px;
  position: relative;
  width: calc(41.4% + 75px);
  z-index: 1
}

.layout-image-02-image-left>.cmp-container>.layout__column-text>.cmp-container>:first-child, .layout-image-02-image-right>.cmp-container>.layout__column-text>.cmp-container>:first-child {
  margin-top: 0 !important
}

.layout-image-02-image-left>.cmp-container>.layout__column-text>.cmp-container>:last-child, .layout-image-02-image-right>.cmp-container>.layout__column-text>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.layout-image-02-image-left>.cmp-container>.layout__column-text>.cmp-container>.text>.cmp-text>:first-child, .layout-image-02-image-right>.cmp-container>.layout__column-text>.cmp-container>.text>.cmp-text>:first-child {
  margin-top: 0 !important
}

.layout-image-02-image-left>.cmp-container>.layout__column-text>.cmp-container>.text>.cmp-text>:last-child, .layout-image-02-image-right>.cmp-container>.layout__column-text>.cmp-container>.text>.cmp-text>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .layout-image-02-image-left, .layout-image-02-image-right {
      margin-bottom: 56px
  }
  .layout-image-02-image-left>.cmp-container, .layout-image-02-image-right>.cmp-container {
      display: block
  }
  .layout-image-02-image-left>.cmp-container>.layout__column-image, .layout-image-02-image-right>.cmp-container>.layout__column-image {
      min-height: auto;
      text-align: center;
      width: 100%
  }
  .layout-image-02-image-left>.cmp-container>.layout__column-text, .layout-image-02-image-right>.cmp-container>.layout__column-text {
      border-radius: 0;
      box-shadow: none;
      display: block;
      margin-bottom: 24px;
      padding: 0;
      width: 100%
  }
}

.layout-image-02-image-right>.cmp-container>.layout__column-text {
  margin: 40px -75px 40px 0
}

@media only screen and (max-width: 768px) {
  .layout-image-02-image-right>.cmp-container>.layout__column-text {
      margin: 0 0 24px
  }
}

.layout-image-02-image-left>.cmp-container {
  flex-direction: row-reverse
}

.layout-image-02-image-left>.cmp-container>.layout__column-text {
  margin: 40px 0 40px -75px
}

@media only screen and (max-width: 768px) {
  .layout-image-02-image-left>.cmp-container>.layout__column-text {
      margin: 0 0 24px
  }
}

.layout-image-03 {
  margin-bottom: 40px
}

.layout-image-03 .cmp-teaserList__image {
  width: auto
}

.layout-image-03 .cmp-teaserList__content {
  display: none
}

.layout-image-03 .cmp-teaserList__image {
  margin-bottom: 40px;
  text-align: center
}

.layout-image-03 .cmp-teaserList__tags {
  display: flex;
  flex-wrap: wrap;
  margin: -8px 0 0 -8px
}

.layout-image-03 .cmp-teaserList__tags .cmp-teaserList__tag {
  background: var(--gray-07);
  font-size: 1.3rem;
  line-height: 1.6923076923;
  margin: 8px 0 0 8px;
  padding: 6px 16px 4px
}

@media only screen and (max-width: 768px) {
  .layout-image-03 {
      margin-bottom: 32px
  }
  .layout-image-03 .cmp-teaserList__image {
      margin-bottom: 24px
  }
  .layout-image-03 .cmp-teaserList__tags .cmp-teaserList__tag {
      font-size: 1.2rem;
      padding: 5px 12px 3px
  }
}

.layout-image-04 {
  max-width: 840px;
  margin: 0 auto 32px
}

.layout-image-04 .cmp-teaserList__image {
  width: auto
}

.layout-image-04>ul>li>:first-child {
  margin-top: 0 !important
}

.layout-image-04>ul>li>:last-child {
  margin-bottom: 0 !important
}

.layout-image-04 .cmp-teaserList__image {
  margin-bottom: 28px;
  text-align: center
}

.layout-image-04 .cmp-teaserList__image img {
  box-shadow: 0 6px 20px var(--box-shadow-01)
}

.layout-image-04 .cmp-teaserList__category_area {
  display: none
}

.layout-image-04 .cmp-teaserList__title {
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.6;
  margin-bottom: 16px;
  text-align: center
}

.layout-image-04 .cmp-teaserList__title a {
  color: var(--black-01);
  text-decoration: none
}

.layout-image-04 .cmp-teaserList__title a:hover {
  text-decoration: underline
}

@media only screen and (max-width: 768px) {
  .layout-image-04 .cmp-teaserList__image {
      margin-bottom: 24px
  }
  .layout-image-04 .cmp-teaserList__title {
      font-size: 1.8rem
  }
}

.layout-image-05 {
  margin: 0 auto 20px
}

.layout-image-05 .cmp-teaserList__image {
  width: auto
}

.layout-image-05>ul>li>:first-child {
  margin-top: 0 !important
}

.layout-image-05>ul>li>:last-child {
  margin-bottom: 0 !important
}

.layout-image-05 .cmp-teaserList__image {
  margin-bottom: 20px;
  padding-top: 56.4285714286%;
  position: relative
}

.layout-image-05 .cmp-teaserList__image img {
  box-shadow: 0 6px 20px var(--box-shadow-01);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover"
}

.layout-image-05 .cmp-teaserList__category_area {
  margin: 0
}

.layout-image-05 .cmp-teaserList__title {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.7777777778;
  margin-bottom: 8px;
  text-align: center
}

.layout-image-05 .cmp-teaserList__title a {
  color: var(--black-01);
  text-decoration: none
}

.layout-image-05 .cmp-teaserList__title a:hover {
  text-decoration: underline
}

.layout-image-05 .cmp-teaserList__description {
  font-size: 1.4rem;
  line-height: 1.6
}

.layout-image-06 {
  margin: 0 auto 28px
}

.layout-image-06 .cmp-teaserList__image {
  width: auto
}

.layout-image-06>ul>li>:first-child {
  margin-top: 0 !important
}

.layout-image-06>ul>li>:last-child {
  margin-bottom: 0 !important
}

.layout-image-06 .cmp-teaserList__image {
  margin-bottom: 32px;
  padding-top: 56.2949640288%;
  position: relative
}

.layout-image-06 .cmp-teaserList__image img {
  box-shadow: 0 6px 20px var(--box-shadow-01);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover"
}

.layout-image-06 .cmp-teaserList__category_area {
  margin: 0
}

.layout-image-06 .cmp-teaserList__title {
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.6;
  margin-bottom: 8px;
  text-align: center
}

.layout-image-06 .cmp-teaserList__title a {
  color: var(--black-01);
  text-decoration: none
}

.layout-image-06 .cmp-teaserList__title a:hover {
  text-decoration: underline
}

@media only screen and (max-width: 768px) {
  .layout-image-06 {
      margin: 0 auto 32px
  }
  .layout-image-06 .cmp-teaserList__image {
      margin-bottom: 24px
  }
  .layout-image-06 .cmp-teaserList__title {
      font-size: 1.8rem;
      margin-bottom: 12px
  }
}

.layout-button-01, .layout-button-01-type-01 {
  margin-bottom: 48px
}

.layout-button-01>.cmp-container, .layout-button-01-type-01>.cmp-container {
  display: flex;
  align-items: center
}

.layout-button-01>.cmp-container>.layout__column-left, .layout-button-01-type-01>.cmp-container>.layout__column-left {
  padding-right: 48px;
  width: 52%
}

.layout-button-01>.cmp-container>.layout__column-left>.cmp-container>:first-child, .layout-button-01-type-01>.cmp-container>.layout__column-left>.cmp-container>:first-child {
  margin-top: 0 !important
}

.layout-button-01>.cmp-container>.layout__column-left>.cmp-container>:last-child, .layout-button-01-type-01>.cmp-container>.layout__column-left>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.layout-button-01>.cmp-container>.layout__column-left>.cmp-container>.text>.cmp-text>:first-child, .layout-button-01-type-01>.cmp-container>.layout__column-left>.cmp-container>.text>.cmp-text>:first-child {
  margin-top: 0 !important
}

.layout-button-01>.cmp-container>.layout__column-left>.cmp-container>.text>.cmp-text>:last-child, .layout-button-01-type-01>.cmp-container>.layout__column-left>.cmp-container>.text>.cmp-text>:last-child {
  margin-bottom: 0 !important
}

.layout-button-01>.cmp-container>.layout__column-right, .layout-button-01-type-01>.cmp-container>.layout__column-right {
  width: 48%
}

.layout-button-01>.cmp-container>.layout__column-right>.cmp-container>:first-child, .layout-button-01-type-01>.cmp-container>.layout__column-right>.cmp-container>:first-child {
  margin-top: 0 !important
}

.layout-button-01>.cmp-container>.layout__column-right>.cmp-container>:last-child, .layout-button-01-type-01>.cmp-container>.layout__column-right>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .layout-button-01>.cmp-container, .layout-button-01-type-01>.cmp-container {
      display: block
  }
  .layout-button-01>.cmp-container>.layout__column-left, .layout-button-01-type-01>.cmp-container>.layout__column-left {
      margin-bottom: 24px;
      padding: 0;
      width: 100%
  }
  .layout-button-01>.cmp-container>.layout__column-right, .layout-button-01-type-01>.cmp-container>.layout__column-right {
      width: 100%
  }
}

.layout-button-01-type-01>.cmp-container>.layout__column-left {
  width: 58%
}

.layout-button-01-type-01>.cmp-container>.layout__column-right {
  width: 42%
}

@media only screen and (max-width: 768px) {
  .layout-button-01-type-01>.cmp-container {
      display: block
  }
  .layout-button-01-type-01>.cmp-container>.layout__column-left {
      margin-bottom: 32px;
      padding: 0;
      width: 100%
  }
  .layout-button-01-type-01>.cmp-container>.layout__column-right {
      width: 100%
  }
}

.layout-column-01-column-4, .layout-column-01-column-3, .layout-column-01-column-2 {
  margin-bottom: 72px
}

.layout-column-01-column-4>.cmp-container, .layout-column-01-column-3>.cmp-container, .layout-column-01-column-2>.cmp-container {
  display: flex;
  flex-wrap: wrap;
  margin: -48px 0 0 -48px
}

.layout-column-01-column-4>.cmp-container>.layout__column, .layout-column-01-column-3>.cmp-container>.layout__column, .layout-column-01-column-2>.cmp-container>.layout__column {
  padding: 48px 0 0 48px
}

.layout-column-01-column-4>.cmp-container>.layout__column>.cmp-container>:first-child, .layout-column-01-column-3>.cmp-container>.layout__column>.cmp-container>:first-child, .layout-column-01-column-2>.cmp-container>.layout__column>.cmp-container>:first-child {
  margin-top: 0 !important
}

.layout-column-01-column-4>.cmp-container>.layout__column>.cmp-container>:last-child, .layout-column-01-column-3>.cmp-container>.layout__column>.cmp-container>:last-child, .layout-column-01-column-2>.cmp-container>.layout__column>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .layout-column-01-column-4>.cmp-container, .layout-column-01-column-3>.cmp-container, .layout-column-01-column-2>.cmp-container {
      margin: -56px 0 0
  }
  .layout-column-01-column-4>.cmp-container>.layout__column, .layout-column-01-column-3>.cmp-container>.layout__column, .layout-column-01-column-2>.cmp-container>.layout__column {
      padding: 56px 0 0
  }
}

.layout-column-01-column-2>.cmp-container>.layout__column {
  width: 50%
}

@media only screen and (max-width: 768px) {
  .layout-column-01-column-2>.cmp-container>.layout__column {
      width: 100%
  }
}

.layout-column-01-column-3>.cmp-container>.layout__column {
  width: 33.33333%
}

.layout-column-01-column-4>.cmp-container>.layout__column {
  width: 25%
}

.layout-toggle-01 {
  margin-bottom: 72px
}

.layout-toggle-01>.cmp-container>.toggle__button {
  margin-bottom: 20px
}

.layout-toggle-01>.cmp-container>.toggle__button .title {
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 1.6
}

.layout-toggle-01>.cmp-container>.toggle__button .title .cmp-title__text {
  font-weight: inherit
}

.layout-toggle-01>.cmp-container>.toggle__container>.cmp-container>:first-child {
  margin-top: 0 !important
}

.layout-toggle-01>.cmp-container>.toggle__container>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .layout-toggle-01 {
      margin-bottom: 40px
  }
  .layout-toggle-01>.cmp-container>.toggle__button {
      border-top: 1px solid var(--gray-01);
      border-bottom: 1px solid var(--gray-01);
      margin: 0 -20px
  }
  .layout-toggle-01>.cmp-container>.toggle__button button {
      padding-right: 40px;
      position: relative;
      transition: opacity .2s ease-in-out;
      text-align: left;
      width: 100%
  }
  .layout-toggle-01>.cmp-container>.toggle__button button:hover {
      opacity: .5
  }
  .layout-toggle-01>.cmp-container>.toggle__button button::before, .layout-toggle-01>.cmp-container>.toggle__button button::after {
      content: "";
      position: absolute;
      display: block;
      margin: auto;
      top: 0;
      right: 20px;
      bottom: 0;
      width: 18px;
      height: 2px;
      background: var(--gray-02)
  }
  .layout-toggle-01>.cmp-container>.toggle__button button::after {
      transform: rotate(90deg);
      transition: opacity .2s ease-in-out
  }
  .layout-toggle-01>.cmp-container>.toggle__button .title {
      font-size: 2rem;
      padding: 8px 20px
  }
  .layout-toggle-01>.cmp-container>.toggle__container {
      display: none;
      height: 0;
      overflow: hidden;
      transition: height .3s ease-in-out
  }
  .layout-toggle-01>.cmp-container>.toggle__container>.cmp-container {
      padding-top: 20px
  }
  .layout-toggle-01.is-animate>.cmp-container>.toggle__container {
      display: block
  }
  .layout-toggle-01.is-open>.cmp-container>.toggle__container {
      display: block;
      height: auto
  }
  .layout-toggle-01.is-open>.cmp-container>.toggle__button button::after {
      opacity: 0
  }
}

.layout-date-01 {
  margin-bottom: 12px
}

.layout-date-01>.cmp-container {
  display: flex;
  align-items: flex-end
}

.layout-date-01>.cmp-container>.layout__column-tag {
  padding: 0 24px 4px 0;
  width: calc(100% - 200px)
}

.layout-date-01>.cmp-container>.layout__column-tag .list-tag-01 {
  margin: 0
}

.layout-date-01>.cmp-container>.layout__column-date {
  display: flex;
  justify-content: flex-end;
  width: 200px
}

.layout-date-01>.cmp-container>.layout__column-date .cmp-contentfragment__element--releaseDate {
  font-size: 1.4rem;
  display: flex;
}

.layout-date-01>.cmp-container>.layout__column-date .cmp-contentfragment__element--releaseDate+.cmp-contentfragment__element--updateDate {
  margin-top: 4px
}

.layout-date-01>.cmp-container>.layout__column-date .cmp-contentfragment__element--updateDate {
  font-size: 1.4rem;
  display: flex;
}

.layout-date-01>.cmp-container>.layout__column-date .cmp-contentfragment__element--releaseDate dt,
.layout-date-01>.cmp-container>.layout__column-date .cmp-contentfragment__element--updateDate dt{
  display: block;
}

.layout-date-01>.cmp-container>.layout__column-date .cmp-contentfragment__element--releaseDate dd,
.layout-date-01>.cmp-container>.layout__column-date .cmp-contentfragment__element--updateDate dd{
  margin-left: 10px;
}

@media only screen and (max-width: 768px) {
  .layout-date-01>.cmp-container>.layout__column-tag {
      padding: 0 24px 2px 0;
      width: calc(100% - 150px)
  }
  .layout-date-01>.cmp-container>.layout__column-date {
      width: 150px
  }
}

.layout-pager-01 {
  margin-bottom: 56px;
  padding: 16px 0
}

@media only screen and (max-width: 768px) {
  .layout-pager-01 {
      padding: 0
  }
}

.image-blank-01 {
  margin-left: .5em;
  position: relative;
  width: 12px;
  height: 12px
}

.image-full-01 {
  margin-bottom: 72px;
  text-align: center
}

.image-full-01 .cmp-image__image {
  width: auto
}

@media only screen and (max-width: 768px) {
  .image-full-01 {
      margin-bottom: 56px
  }
}

.image-full-02 {
  margin-bottom: 28px;
  text-align: center
}

.image-full-02 .cmp-image__image {
  width: auto
}

.video-full-01 {
  max-width: 840px;
  margin: 0 auto 40px
}

.video-full-01>div:nth-of-type(2) {
  padding-top: 56.3%;
  position: relative;
  width: 100%
}

.video-full-01>div:nth-of-type(2) video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

@media only screen and (max-width: 768px) {
  .video-full-01 {
      margin-bottom: 24px
  }
  .video-full-01>div:nth-of-type(2) {
      padding-top: 56.4%
  }
}

.section-full-01>.cmp-container {
  max-width: 1160px;
  margin: auto;
  padding: 80px 0
}

.section-full-01>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-full-01>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-full-01>.cmp-container {
      padding: 48px 0
  }
}

.section-full-02>.cmp-container {
  max-width: 1160px;
  margin: auto;
  padding-bottom: 72px
}

.section-full-02>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-full-02>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-full-02>.cmp-container {
      padding-bottom: 56px
  }
}

.section-full-03>.cmp-container {
  max-width: 1160px;
  margin: auto;
  padding: 64px 0 72px
}

.section-full-03>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-full-03>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-full-03>.cmp-container {
      padding: 48px 0 56px
  }
}

.section-full-04>.cmp-container {
  max-width: 880px;
  margin: auto;
  padding: 56px 0 72px
}

.section-full-04>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-full-04>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-full-04>.cmp-container {
      padding: 32px 0 56px
  }
}

.section-full-05 {
  margin-bottom: 56px
}

.section-full-05>.cmp-container {
  max-width: 1160px;
  margin: auto
}

.section-full-05>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-full-05>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-full-05 {
      margin-bottom: 40px
  }
}

.section-full-06>.cmp-container {
  max-width: 1160px;
  margin: auto
}

.section-full-06>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-full-06>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.section-full-07>.cmp-container {
  max-width: 1160px;
  margin: auto;
}

.section-full-07>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-full-07>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.section-block-01 {
  margin-bottom: 56px
}

.section-block-01>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-block-01>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.section-color-01, .section-color-01-type-01 {
  float: none !important;
  background: var(--theme-color-02);
  margin: 0 -20px;
  padding: 0 20px
}

.section-color-01 .aem-Grid, .section-color-01-type-01 .aem-Grid, .section-color-01 .aem-GridColumn, .section-color-01-type-01 .aem-GridColumn {
  margin-left: 0 !important;
  float: none !important;
  width: 100% !important
}

.section-color-01>.cmp-container, .section-color-01-type-01>.cmp-container {
  max-width: 1160px;
  margin: auto;
  padding: 56px 0
}

.section-color-01>.cmp-container>:first-child, .section-color-01-type-01>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-color-01>.cmp-container>:last-child, .section-color-01-type-01>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

.section-color-01 .cmp-experiencefragment--RecommendedCampaignBanners>.cmp-container>:first-child, .section-color-01-type-01 .cmp-experiencefragment--RecommendedCampaignBanners>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-color-01 .cmp-experiencefragment--RecommendedCampaignBanners>.cmp-container>:last-child, .section-color-01-type-01 .cmp-experiencefragment--RecommendedCampaignBanners>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-color-01>.cmp-container, .section-color-01-type-01>.cmp-container {
      padding: 32px 0
  }
}

.section-color-01-type-01 {
  margin: 0;
  padding: 0 24px 0 32px
}

.section-color-01-type-01>.cmp-container {
  padding: 20px 0
}

@media only screen and (max-width: 768px) {
  .section-color-01-type-01 {
      padding: 0 24px
  }
  .section-color-01-type-01>.cmp-container {
      padding: 24px 0
  }
}

.section-column-01 {
  border-bottom: 1px solid var(--gray-01);
  margin: 0 -20px;
  padding: 0 20px
}

.section-column-01>.cmp-container {
  max-width: 1160px;
  margin: auto;
  padding: 80px 0
}

.section-column-01>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-column-01>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-column-01>.cmp-container {
      padding: 48px 0
  }
}

.section-column-02 {
  
  margin: 0 -20px;
  padding: 0 20px
}

.section-column-02>.cmp-container {
  max-width: 1160px;
  margin: auto;
  padding: 80px 0
}

.section-column-02>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-column-02>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-column-02 {
      
      margin: 0 0px;
      padding: 0 0px
  }
  .section-column-02>.cmp-container {
      padding: 48px 0
  }
}

.section-aside-wrap-01 {
  margin: 0 -20px
}

.section-aside-wrap-01 .section-color-01, .section-aside-wrap-01 .section-color-01-type-01 {
  margin: 0
}

Footer .section-aside-wrap-01>.cmp-container {
  margin: 0 20px
}

.section-agency-list-01 {
  background: url("clientlib-site-common/resources/images/background-agency-list-01-pc.png") center/cover no-repeat, var(--theme-color-03);
  padding: 0 20px
}

.section-agency-list-01 .agency-list-wrap {
  margin: 0 !important;
  width: 100% !important
}

.section-agency-list-01 .agency-list-wrap>.cmp-container {
  max-width: 1160px;
  margin: auto;
  padding: 64px 0
}

.section-agency-list-01 .agency-list-wrap>.cmp-container>:first-child {
  margin-top: 0 !important
}

.section-agency-list-01 .agency-list-wrap>.cmp-container>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-agency-list-01 {
      background: url("clientlib-site-common/resources/images/background-agency-list-01-sp.png") center/cover no-repeat, var(--theme-color-03)
  }
  .section-agency-list-01 .agency-list-wrap>.cmp-container {
      padding: 48px 0
  }
}

.section-article-01 {
  margin-bottom: 72px
}

.section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value>:first-child {
  margin-top: 0 !important
}

.section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value>:last-child {
  margin-bottom: 0 !important
}

.section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value h2 {
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 1.6;
  margin: 68px 0 32px;
  padding-bottom: 16px;
  position: relative;
  text-align: center
}

.section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value h2::after {
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  bottom: 0;
  right: 0;
  left: 0;
  width: 40px;
  height: 4px;
  background: var(--theme-color-01)
}

.section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value h3 {
  background: var(--gray-04);
  border-radius: 4px;
  font-weight: 700;
  font-size: 1.8rem;
  margin: 48px 0 20px;
  padding: 5px 16px
}

.section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value p {
  margin-bottom: 32px
}

.section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value hr {
  border-bottom: 1px solid var(--gray-03);
  display: block;
  margin: 56px 0
}

@media only screen and (max-width: 768px) {
  .section-article-01 {
      margin-bottom: 56px
  }
  .section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value h2 {
      font-size: 2rem;
      line-height: 1.5;
      margin: 56px 0 24px
  }
  .section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value h2::after {
      width: 32px;
      height: 3px
  }
  .section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value h3 {
      font-size: 1.6rem;
      margin: 40px 0 16px;
      padding: 8px 16px 7px
  }
  .section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value p {
      margin-bottom: 20px
  }
  .section-article-01 .cmp-contentfragment__element--body>.cmp-contentfragment__element-value hr {
      margin: 40px 0
  }
}

.section-static-01 {
  max-width: 880px;
  margin: auto;
  padding: 48px 0
}

.section-static-01>:first-child {
  margin-top: 0 !important
}

.section-static-01>:last-child {
  margin-bottom: 0 !important
}

.section-static-01>.section__text {
  margin-bottom: 10px
}

@media only screen and (max-width: 768px) {
  .section-static-01 {
      padding: 40px 0
  }
  .section-static-01>.section__text {
      margin-bottom: 16px
  }
}

.section-static-02 {
  background: var(--gray-04);
  margin: 0 -20px;
  padding: 0 20px
}

.section-static-02>.section__inner {
  max-width: 1160px;
  margin: auto;
  padding: 72px 0
}

.section-static-02>.section__inner>:first-child {
  margin-top: 0 !important
}

.section-static-02>.section__inner>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-static-02>.section__inner {
      padding: 56px 0
  }
}

.section-static-03 {
  max-width: 880px;
  margin: auto;
  padding: 72px 0 16px
}

.section-static-03>:first-child {
  margin-top: 0 !important
}

.section-static-03>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .section-static-03 {
      padding: 56px 0 16px
  }
}

.table-static-head-01 {
  line-height: 1.5;
  margin-bottom: 32px;
  width: 100%
}

.table-static-head-01>thead>tr>th, .table-static-head-01>thead>tr>td, .table-static-head-01>tbody>tr>th, .table-static-head-01>tbody>tr>td {
  border: 1px solid var(--gray-06);
  padding: 8px 12px
}

.table-static-head-01>thead>tr>th>:first-child, .table-static-head-01>thead>tr>td>:first-child, .table-static-head-01>tbody>tr>th>:first-child, .table-static-head-01>tbody>tr>td>:first-child {
  margin-top: 0 !important
}

.table-static-head-01>thead>tr>th>:last-child, .table-static-head-01>thead>tr>td>:last-child, .table-static-head-01>tbody>tr>th>:last-child, .table-static-head-01>tbody>tr>td>:last-child {
  margin-bottom: 0 !important
}

.table-static-head-01>thead>tr>th {
  background: var(--gray-05);
  vertical-align: middle;
  text-align: center
}

.table-static-head-01>tbody>tr>td {
  vertical-align: middle;
  text-align: center
}

@media only screen and (max-width: 768px) {
  .table-static-head-01 {
      margin-bottom: 24px
  }
  .table-static-head-01>thead>tr>th, .table-static-head-01>thead>tr>td, .table-static-head-01>tbody>tr>th, .table-static-head-01>tbody>tr>td {
      padding: 6px 8px
  }
  .table-static-head-01>thead>tr>th>:first-child, .table-static-head-01>thead>tr>td>:first-child, .table-static-head-01>tbody>tr>th>:first-child, .table-static-head-01>tbody>tr>td>:first-child {
      margin-top: 0 !important
  }
  .table-static-head-01>thead>tr>th>:last-child, .table-static-head-01>thead>tr>td>:last-child, .table-static-head-01>tbody>tr>th>:last-child, .table-static-head-01>tbody>tr>td>:last-child {
      margin-bottom: 0 !important
  }
}

.table-static-scroll-01 {
  margin-bottom: 32px
}

.table-static-scroll-01>:first-child {
  margin-top: 0 !important
}

.table-static-scroll-01>:last-child {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .table-static-scroll-01 {
      overflow-x: auto
  }
  .table-static-scroll-01>table {
      min-width: 620px
  }
}

.form-static-radio-01-type-02, .form-static-radio-01-type-01, .form-static-radio-01-column-3, .form-static-radio-01-column-2 {
  margin-bottom: 20px
}

.form-static-radio-01-type-02>.form__wrap, .form-static-radio-01-type-01>.form__wrap, .form-static-radio-01-column-3>.form__wrap, .form-static-radio-01-column-2>.form__wrap {
  display: flex;
  flex-wrap: wrap;
  margin: -24px 0 0 -24px
}

.form-static-radio-01-type-02>.form__wrap>li, .form-static-radio-01-type-01>.form__wrap>li, .form-static-radio-01-column-3>.form__wrap>li, .form-static-radio-01-column-2>.form__wrap>li {
  padding: 24px 0 0 24px
}

.form-static-radio-01-type-02>.form__wrap>li label, .form-static-radio-01-type-01>.form__wrap>li label, .form-static-radio-01-column-3>.form__wrap>li label, .form-static-radio-01-column-2>.form__wrap>li label {
  cursor: pointer;
  display: block;
  height: 100%;
  position: relative;
  transition: opacity .2s ease-in-out
}

.form-static-radio-01-type-02>.form__wrap>li label:hover, .form-static-radio-01-type-01>.form__wrap>li label:hover, .form-static-radio-01-column-3>.form__wrap>li label:hover, .form-static-radio-01-column-2>.form__wrap>li label:hover {
  opacity: .5
}

.form-static-radio-01-type-02>.form__wrap>li label input[type=radio], .form-static-radio-01-type-01>.form__wrap>li label input[type=radio], .form-static-radio-01-column-3>.form__wrap>li label input[type=radio], .form-static-radio-01-column-2>.form__wrap>li label input[type=radio] {
  position: absolute;
  left: -1em;
  height: 1em;
  width: 1em;
  opacity: 0
}

.form-static-radio-01-type-02>.form__wrap>li label input[type=radio]:checked+.form__box, .form-static-radio-01-type-01>.form__wrap>li label input[type=radio]:checked+.form__box, .form-static-radio-01-column-3>.form__wrap>li label input[type=radio]:checked+.form__box, .form-static-radio-01-column-2>.form__wrap>li label input[type=radio]:checked+.form__box {
  background: var(--theme-color-02);
  border-color: var(--theme-color-01);
  box-shadow: 0 8px 30px var(--box-shadow-02)
}

.form-static-radio-01-type-02>.form__wrap>li label .form__box, .form-static-radio-01-type-01>.form__wrap>li label .form__box, .form-static-radio-01-column-3>.form__wrap>li label .form__box, .form-static-radio-01-column-2>.form__wrap>li label .form__box {
  border: 2px solid var(--gray-01);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  height: 100%;
  padding: 24px 32px;
  transition: border-color .2s ease-in-out, background .2s ease-in-out
}

.form-static-radio-01-type-02>.form__wrap>li label .form__box>:first-child, .form-static-radio-01-type-01>.form__wrap>li label .form__box>:first-child, .form-static-radio-01-column-3>.form__wrap>li label .form__box>:first-child, .form-static-radio-01-column-2>.form__wrap>li label .form__box>:first-child {
  margin-top: 0 !important
}

.form-static-radio-01-type-02>.form__wrap>li label .form__box>:last-child, .form-static-radio-01-type-01>.form__wrap>li label .form__box>:last-child, .form-static-radio-01-column-3>.form__wrap>li label .form__box>:last-child, .form-static-radio-01-column-2>.form__wrap>li label .form__box>:last-child {
  margin-bottom: 0 !important
}

.form-static-radio-01-type-02>.form__wrap>li label .form__text-01, .form-static-radio-01-type-01>.form__wrap>li label .form__text-01, .form-static-radio-01-column-3>.form__wrap>li label .form__text-01, .form-static-radio-01-column-2>.form__wrap>li label .form__text-01 {
  display: block;
  font-weight: 700;
  font-size: 2rem;
  line-height: 2;
  margin-bottom: 8px;
  text-align: center;
  width: 100%
}

.form-static-radio-01-type-02>.form__wrap>li label .form__text-02, .form-static-radio-01-type-01>.form__wrap>li label .form__text-02, .form-static-radio-01-column-3>.form__wrap>li label .form__text-02, .form-static-radio-01-column-2>.form__wrap>li label .form__text-02 {
  display: block;
  margin-bottom: 24px;
  text-align: center;
  width: 100%
}

.form-static-radio-01-type-02>.form__wrap>li label .form__image-01, .form-static-radio-01-type-01>.form__wrap>li label .form__image-01, .form-static-radio-01-column-3>.form__wrap>li label .form__image-01, .form-static-radio-01-column-2>.form__wrap>li label .form__image-01 {
  display: block;
  text-align: center;
  width: 100%
}

@media only screen and (max-width: 768px) {
  .form-static-radio-01-type-02>.form__wrap, .form-static-radio-01-type-01>.form__wrap, .form-static-radio-01-column-3>.form__wrap, .form-static-radio-01-column-2>.form__wrap {
      margin: -12px 0 0 -12px
  }
  .form-static-radio-01-type-02>.form__wrap>li, .form-static-radio-01-type-01>.form__wrap>li, .form-static-radio-01-column-3>.form__wrap>li, .form-static-radio-01-column-2>.form__wrap>li {
      padding: 12px 0 0 12px
  }
  .form-static-radio-01-type-02>.form__wrap>li label:hover, .form-static-radio-01-type-01>.form__wrap>li label:hover, .form-static-radio-01-column-3>.form__wrap>li label:hover, .form-static-radio-01-column-2>.form__wrap>li label:hover {
      opacity: 1
  }
  .form-static-radio-01-type-02>.form__wrap>li label .form__box, .form-static-radio-01-type-01>.form__wrap>li label .form__box, .form-static-radio-01-column-3>.form__wrap>li label .form__box, .form-static-radio-01-column-2>.form__wrap>li label .form__box {
      padding: 12px
  }
  .form-static-radio-01-type-02>.form__wrap>li label .form__text-01, .form-static-radio-01-type-01>.form__wrap>li label .form__text-01, .form-static-radio-01-column-3>.form__wrap>li label .form__text-01, .form-static-radio-01-column-2>.form__wrap>li label .form__text-01 {
      font-size: 1.4rem;
      line-height: 1.5
  }
  .form-static-radio-01-type-02>.form__wrap>li label .form__text-02, .form-static-radio-01-type-01>.form__wrap>li label .form__text-02, .form-static-radio-01-column-3>.form__wrap>li label .form__text-02, .form-static-radio-01-column-2>.form__wrap>li label .form__text-02 {
      font-size: 1.2rem
  }
}

.form-static-radio-01-column-2>.form__wrap>li {
  width: 50%
}

.form-static-radio-01-column-3>.form__wrap>li {
  width: 33.33333%
}

@media only screen and (max-width: 768px) {
  .form-static-radio-01-column-3>.form__wrap>li {
      width: 50%
  }
}

.form-static-radio-01-type-01>.form__wrap {
  margin: -10px 0 0 -10px
}

.form-static-radio-01-type-01>.form__wrap>li {
  padding: 10px 0 0 10px;
  width: 20%
}

.form-static-radio-01-type-01>.form__wrap>li label .form__box {
  padding: 8px 10px
}

.form-static-radio-01-type-01>.form__wrap>li label .form__text-01 {
  font-size: 1.4rem;
  line-height: 1.5
}

@media only screen and (max-width: 768px) {
  .form-static-radio-01-type-01>.form__wrap {
      margin: -12px 0 0 -12px
  }
  .form-static-radio-01-type-01>.form__wrap>li {
      padding: 12px 0 0 12px;
      width: 50%
  }
  .form-static-radio-01-type-01>.form__wrap>li label .form__box {
      padding: 12px 10px
  }
}

.form-static-radio-01-type-02>.form__wrap>li {
  width: 50%
}

.form-static-radio-01-type-02>.form__wrap>li .js-height-target-01 {
  display: flex;
  flex-wrap: wrap;
  align-content: center
}

@media only screen and (max-width: 768px) {
  .form-static-radio-01-type-02>.form__wrap {
      margin: -25px 0 0 -25px
  }
  .form-static-radio-01-type-02>.form__wrap>li {
      padding: 25px 0 0 25px;
      width: 100%
  }
  .form-static-radio-01-type-02>.form__wrap>li:nth-child(1) label .form__image-01 img {
      width: 117px
  }
  .form-static-radio-01-type-02>.form__wrap>li:nth-child(2) label .form__image-01 img {
      width: 95px
  }
  .form-static-radio-01-type-02>.form__wrap>li label .form__box {
      padding: 20px 12px
  }
}

.form-static-range-01 {
  max-width: 600px;
  margin: 0 auto 64px;
  width: 100%;
  height: 40px;
  position: relative
}

.form-static-range-01 .form__track-background {
  background: var(--gray-01);
  border-radius: 20px;
  width: 100%;
  height: 40px;
  position: absolute;
  top: 0;
  left: 0
}

.form-static-range-01 .form__track-scale {
  background: var(--theme-color-01);
  border-radius: 20px;
  width: 66.6667%;
  height: 40px;
  position: absolute;
  top: 0;
  left: 0
}

.form-static-range-01 input[type=range] {
  background: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 40px;
  padding: 0 8px
}

.form-static-range-01 input[type=range]:focus {
  outline: 0
}

.form-static-range-01 input[type=range]::-webkit-slider-runnable-track {
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border-color: transparent;
  border: 0;
  color: transparent;
  width: 100%;
  height: 40px
}

.form-static-range-01 input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  background: var(--white);
  border-radius: 50%;
  border: 0;
  cursor: pointer;
  width: 24px;
  height: 24px;
  margin-top: 7px
}

.form-static-range-01 input[type=range]::-moz-range-track {
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border-color: transparent;
  border: 0;
  color: transparent;
  width: 100%;
  height: 40px
}

.form-static-range-01 input[type=range]::-moz-range-thumb {
  -moz-appearance: none;
  appearance: none;
  background: var(--white);
  border-radius: 50%;
  border: 0;
  cursor: pointer;
  width: 24px;
  height: 24px;
  margin-top: 6px
}

.form-static-range-01 input[type=range]::-ms-track {
  background: transparent;
  border-color: transparent;
  border: 0;
  color: transparent;
  width: 100%;
  height: 40px
}

.form-static-range-01 input[type=range]::-ms-thumb {
  background: var(--white);
  border-radius: 50%;
  border: 0;
  cursor: pointer;
  width: 24px;
  height: 24px
}

.form-static-range-01 input[type=range]::-ms-fill-lower {
  background: transparent
}

.form-static-range-01 input[type=range]::-ms-fill-upper {
  background: transparent
}

.form-static-range-01 input[type=range]::-ms-tooltip {
  display: none
}

@media only screen and (max-width: 960px) {
  .form-static-range-01 {
      max-width: 295px;
      height: 30px;
      margin: 0 auto 48px
  }
  .form-static-range-01 .form__track-background {
      height: 30px
  }
  .form-static-range-01 .form__track-scale {
      height: 30px
  }
  .form-static-range-01 input[type=range] {
      height: 30px;
      padding: 0 4px
  }
  .form-static-range-01 input[type=range]::-webkit-slider-runnable-track {
      height: 30px
  }
  .form-static-range-01 input[type=range]::-webkit-slider-thumb {
      width: 12px;
      height: 12px;
      margin-top: 7px
  }
  .form-static-range-01 input[type=range]::-moz-range-track {
      height: 30px
  }
  .form-static-range-01 input[type=range]::-moz-range-thumb {
      width: 12px;
      height: 12px
  }
  .form-static-range-01 input[type=range]::-ms-track {
      height: 30px
  }
  .form-static-range-01 input[type=range]::-ms-thumb {
      width: 12px;
      height: 12px
  }
}

.mb-0 {
  margin-bottom: 0 !important
}

@media only screen and (max-width: 768px) {
  .mb-sp-32 {
      margin-bottom: 32px !important
  }
}

.br-pc {
  display: block
}

@media only screen and (max-width: 768px) {
  .br-pc {
      display: none
  }
}

.ta-l {
  text-align: left !important
}

.w-19 {
  width: 19% !important
}

html:not([data-script=true]) .box-static-toggle-01>.toggle__container {
  display: block;
  height: auto
}

html:not([data-script=true]) .list-static-scale-01 li .list__bubble, html:not([data-script=true]) .list-static-scale-01 li .list__bubble-6, html:not([data-script=true]) .list-static-scale-01 li .list__bubble-7, html:not([data-script=true]) .list-static-scale-01 li .list__bubble-20 {
  display: none
}

html:not([data-script=true]) .form-static-range-01 {
  margin-bottom: 0
}

html:not([data-script=true]) .form-static-range-01 .form__track-scale {
  display: none
}

html:not([data-script=true]) .text-static-state-01 {
  display: none
}

html:not([data-script=true]) .box-static-fixed-menu-01 {
  position: static;
  margin: 0 -20px;
  width: auto
}

html:not([data-script=true]) .box-toggle-01>.cmp-container>.box__toggle-container {
  display: block;
  height: auto
}

@media only screen and (max-width: 768px) {
  html:not([data-script=true]) .structure-header-01 {
      border-bottom: 0;
      position: static
  }
  html:not([data-script=true]) .structure-header-01 .header-navigation-wrap {
      border-top: 1px solid var(--gray-03);
      height: auto;
      visibility: visible;
      position: relative;
      left: -20px;
      width: calc(100% + 40px)
  }
  html:not([data-script=true]) .layout-toggle-01>.cmp-container>.toggle__container {
      display: block;
      height: auto
  }
}

.section-shop-01 {
  margin-top: 20px;
  margin-bottom: 20px;
}
.section-shop-01>.cmp-container {
  max-width: 1160px;
  margin: auto;
}

.section-shop-01 .image-section {
  margin-top: 20px;
  margin-bottom: 20px;
}

.section-shop-01 .image-section img {
  width: -webkit-fill-available;
  width: -moz-available;
}

.section-shop-01 .primary-dl > .dl-item {
  display: flex;
  padding: 16px 0;
  border-bottom: 1px solid #ccc;
}

.section-shop-01 .primary-dl > .dl-item dt {
  flex-shrink: 0;
  width: 140px;
  padding-right: 15px;
  font-size: 1.6rem;
  font-weight: bold;
}
.section-shop-01 .primary-dl > .dl-item dd {
  font-size: 1.6rem;
  word-break: break-all;
}
@media only screen and (max-width: 767px) {
  .section-shop-01 .primary-dl > .dl-item {
    display: block;
    padding: 8px 0;
  }
}
.section-shop-01 .shop-msg span {
  font-size: 1.6rem;
  font-weight: bold;
  border-bottom-width: 4px;
  border-bottom-style: double;
  border-bottom-color: var(--theme-color-01);
}

.section-shop-01 .info-section {
  display: flex;
}
@media only screen and (max-width: 767px) {
  .section-shop-01 .info-section {
    display: block;
  }
}
.section-shop-01 .shop-info {
  width: 50%;
}
.section-shop-01 .map-info {
  width: 50%;
  padding-left: 40px;
}
@media only screen and (max-width: 767px) {
  .section-shop-01 .shop-info, .section-shop-01 .map-info {
    width: auto;
    padding-left: 0px;
    margin-top: 20px;
  }
}
.section-shop-01 .p-map {
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 540px;
  height: 100%;
  min-height: 400px;
}
.section-shop-01 .p-map iframe {
  width: 100%;
  height: 100%;
  border: none;
}
@media only screen and (max-width: 767px) {
  .section-shop-01 .p-map {
    width: 100%;
    max-width: none;
    height: 67vw;
    max-height: none;
  }
}

/* コラム内のテーブルを横スクロール, 枠線を表示 */
.table__outer--wrap {
  overflow-x: auto;
}

.table__outer--wrap table {
  white-space: nowrap;
  border: solid 0px #333;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 32px;
}

.table__outer--wrap td {
  word-break: keep-all;
  border: solid 1px #333
}
/* END コラム内のテーブルを横スクロール, 枠線を表示 */

/* SP表示時のフッターの引受保険会社の文字を小さくする */
@media only screen and (max-width: 768px) {
  .box__inner .cmp-container .title-label-01 {
    padding-bottom: 0px;
  }

  .box__inner .cmp-container .title-label-01 h1,
  .box__inner .cmp-container .title-label-01 h2,
  .box__inner .cmp-container .title-label-01 h3,
  .box__inner .cmp-container .title-label-01 h4,
  .box__inner .cmp-container .title-label-01 h5,
  .box__inner .cmp-container .title-label-01 h6,
  .box__inner .cmp-container .title-label-01 small {
    font-size: 1.5rem;
  }
}
/* END SP表示時のフッターの引受保険会社の文字を小さくする */

/* aside-agency-bannarの引受保険会社の文字を小さくする */
.box__inner .cmp-container .title-label-01-small-01 h1,
.box__inner .cmp-container .title-label-01-small-01 h2,
.box__inner .cmp-container .title-label-01-small-01 h3,
.box__inner .cmp-container .title-label-01-small-01 h4,
.box__inner .cmp-container .title-label-01-small-01 h5,
.box__inner .cmp-container .title-label-01-small-01 h6,
.box__inner .cmp-container .title-label-01-small-01 small {
  font-size: 1.1rem;
}

.box__inner .cmp-container .text-group-01-small-02 {
  font-size: 1rem;
}

@media only screen and (max-width: 768px) {

  .box__inner .cmp-container .title-label-01-small-01 h1,
  .box__inner .cmp-container .title-label-01-small-01 h2,
  .box__inner .cmp-container .title-label-01-small-01 h3,
  .box__inner .cmp-container .title-label-01-small-01 h4,
  .box__inner .cmp-container .title-label-01-small-01 h5,
  .box__inner .cmp-container .title-label-01-small-01 h6,
  .box__inner .cmp-container .title-label-01-small-01 small {
    font-size: 1.3rem;
  }

  .box__inner .cmp-container .text-group-01-small-02 {
    font-size: 1rem;
  }
}
/* END aside-agency-bannarの引受保険会社の文字を小さくする */
.sns-container {
    display: flex; 
    justify-content: space-between;
}
.sns-item {
    width: 100%;
    text-align: center;
    min-width: 0;
}
.sns-item > iframe, .sns-item > div{
    margin-left: auto !important;
    margin-right: auto !important;
}

@media only screen and (max-width: 1280px) {
    .sns-container{display: block;}
    .sns-item{
        width: 320px;
        margin-bottom: 16px;
        margin-left: auto;
        margin-right: auto;
    }
    .sns-item > blockquote, .sns-item > iframe {min-width: auto !important;}
}