@charset "utf-8";

.top-visual .slick-prev {
  order: 1;
}

.top-visual .slick-next {
  order: 3;
}

.top-visual .slick-dots {
  order: 2;
  position: relative;
  bottom: 0;
  margin: 0;
}

.top-visual .slick-dots li {
  margin: 0;
  background: #fff;
}

.top-visual .slick-dots li:hover img {
  opacity: .7;
}

.top-visual .slick-dots img {
  height: 40px;
  transition: .2s;
}

.info-and-events {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 0 290px;
}

.info-and-events__inner {
  display: -ms-flex;
  display: flex;
  max-width: 1200px;
  margin: 0 auto;
}

.info-and-events__left {
  position: relative;
  width: 48%;
  margin-right: 4%;
  margin-bottom: 40px;
}

.info-and-events__right {
  position: relative;
  width: 48%;
  margin-bottom: 40px;
}

.info-and-events__head {
  position: relative;
  margin-bottom: 30px;
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.4;
}

.info-and-events__list {
  position: absolute;
  right: 0;
  top: 0;
  font-size: 1.4rem;
}

.info-and-events__list a {
  display: block;
  width: 100px;
  border: 1px solid #666;
  text-align: center;
  color: #333;
}

.info-and-events__list a:hover {
  text-decoration: none;
  color: #fff;
  background-color: #063F83;
  border-color: #063F83;
}

@media only screen and (max-width: 1449px) {
  .info-and-events {
    margin-left: calc(50% - 50vw - 90px);
    margin-right: calc(50% - 50vw + 90px);
    padding: 0 80px 0 260px;
  }
}

@media only screen and (max-width: 959px) {
  .info-and-events {
    margin-left: 0;
    margin-right: 0;
    padding: 0;
  }

  .info-and-events__inner {
    display: block;
  }

  .info-and-events__left {
    width: 100%;
    margin-right: 0;
    margin-bottom: 40px;
  }

  .info-and-events__right {
    width: 100%;
  }

  .info-and-events__head {
    margin-bottom: 20px;
    font-size: 2.4rem;
  }

  .info-and-events__list {
    position: relative;
    margin-top: 30px;
  }

  .info-and-events__list a {
    display: block;
    width: 300px;
    margin: 0 auto;
    padding: 12px;
    text-align: center;
    border: 1px solid #666;
    background: url(/albums/css/basic1-blocks1/abm00002629.svg) no-repeat top 50% right 10px #fff;
    color: #333;
  }

  .info-and-events__list a:hover {
    background-image: url(/albums/css/basic1-blocks1/abm00002630.svg);
  }
}




/*picks movie*/
.picks-movie__menu {
  margin-bottom: 60px;
}

[data-area="content"] .picks-movie__menu ul {
  display: -ms-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  list-style: none;
  margin-left: 0;
}

.picks-movie__menu li {
  margin: 5px;
  line-height: 1.6;
}

.picks-movie__menu a {
  display: block;
  min-width: 180px;
  padding: 10px;
  font-weight: 500;
  text-align: center;
  background-color: #ccc;
  color: #fff;
  border-radius: 50px;
}

.picks-movie__menu a:hover {
  text-decoration: none;
  opacity: .7;
}

@media only screen and (max-width: 959px) {
  .picks-movie__menu {
    margin-bottom: 40px;
  }

  .picks-movie__menu li {
    margin: 4px;
  }

  .picks-movie__menu a {
    min-width: 170px;
    padding: 8px 5px;
  }
}

.picks-movie__head {
  position: relative;
  margin-top: 40px;
  margin-bottom: 50px;
  padding-top: 35px;
  border-top: 1px solid #ccc;
  padding-left: 78px;
  font-size: 2.4rem;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  line-height: 1.6;
}

.picks-movie__head::before {
  content: "";
  position: absolute;
  left: 0;
  top: 45px;
  display: block;
  width: 60px;
  height: 20px;
  background-color: #ccc;
  border-radius: 20px;
}

@media only screen and (max-width: 959px) {
  .picks-movie__head {
    margin-top: 30px;
    margin-bottom: 35px;
    padding-top: 25px;
    padding-left: 58px;
    font-size: 2rem;
  }

  .picks-movie__head::before {
    top: 35px;
    width: 40px;
    height: 15px;
  }
}

.picks-movie {
  display: -ms-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.picks-movie__item {
  width: calc(25% - 8px);
  margin-right: 10px;
  margin-bottom: 30px;
}

.picks-movie__item:nth-child(4n) {
  margin-right: 0;
}

.picks-movie__item a {
  display: block;
  text-decoration: none;
  color: #333;
}

.picks-movie__item a:hover {
  opacity: .7;
  text-decoration: none;
}

.picks-movie__movie {
  padding-top: 56.25%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

.picks-movie__title {
  margin-top: 15px;
  line-height: 1.57;
  font-weight: 500;
  font-size: 1.8rem;
}

.picks-movie__text {
  margin-top: 15px;
  font-size: 1.4rem;
  line-height: 1.57;
}

@media only screen and (max-width: 959px) {
  .picks-movie__item {
    width: calc(50% - 5px);
    margin-bottom: 20px;
  }

  .picks-movie__item:nth-child(2n) {
    margin-right: 0;
  }

  .picks-movie__title {
    margin-top: 10px;
    font-size: 1.6rem;
  }

  .picks-movie__text {
    margin-top: 10px;
  }
}

.picks-movie__head:nth-of-type(1)::before,
.picks-movie__menu li:nth-child(1) a {
  background-color: #5571BE;
}

.picks-movie__head:nth-of-type(2)::before,
.picks-movie__menu li:nth-child(2) a {
  background-color: #7AABF4;
}

.picks-movie__head:nth-of-type(3)::before,
.picks-movie__menu li:nth-child(3) a {
  background-color: #DB7373;
}

.picks-movie__head:nth-of-type(4)::before,
.picks-movie__menu li:nth-child(4) a {
  background-color: #F5A12E;
}

.picks-movie__head:nth-of-type(5)::before,
.picks-movie__menu li:nth-child(5) a {
  background-color: #9FC192;
}

.picks-movie__head:nth-of-type(6)::before,
.picks-movie__menu li:nth-child(6) a {
  background-color: #FD8049;
}

/*together*/
.together-backnumber {
  display: -ms-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.together-backnumber__item {
  width: calc(25% - 15px);
  margin-right: 20px;
  margin-bottom: 20px;
}

.together-backnumber__item:nth-child(4n) {
  margin-right: 0;
}

@media only screen and (max-width: 959px) {
  .together-backnumber__item {
    width: calc(50% - 10px);
    margin-right: 20px;
  }

  .together-backnumber__item:nth-child(2n) {
    margin-right: 0;
  }
}

.together-backnumber__image a::after {
  content: none !important;
}

#baseBlock14,
#baseBlock15,
#baseBlock16,
#baseBlock17 {
  display: none;
}

/* 基本 */
[data-area="content"] strong {
  font-weight: 700;
}

[data-area="content"] em {
  font-style: italic;
}

[data-area="content"] sup {
  font-size: 70%;
  vertical-align: top;
  position: relative;
  top: -0.1em;
}

[data-area="content"] sub {
  font-size: 70%;
  vertical-align: bottom;
  position: relative;
  bottom: -0.1em;
}

[data-area="content"] ul {
  list-style: disc;
  margin-left: 25px;
}

[data-area="content"] ol {
  list-style: decimal;
  margin-left: 25px;
}

[data-area="content"] .lead1 {
  margin-top: 60px;
  margin-bottom: 40px;
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.5;
}

@media only screen and (max-width: 959px) {
  [data-area="content"] .lead1 {
    margin-top: 30px;
    margin-bottom: 20px;
    font-size: 2.1rem;
  }
}

[data-area="content"] .lead2 {
  margin-top: 40px;
  margin-bottom: 30px;
  font-family: "Noto Serif JP", serif;
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 1.6;
}

@media only screen and (max-width: 959px) {
  [data-area="content"] .lead2 {
    margin-top: 20px;
    margin-bottom: 15px;
    font-size: 1.9rem;
  }
}

[data-area="content"] .lead3 {
  margin-top: 30px;
  margin-bottom: 20px;
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.7;
}

@media only screen and (max-width: 959px) {
  [data-area="content"] .lead3 {
    margin-top: 15px;
    margin-bottom: 10px;
    font-size: 1.8rem;
  }
}

[data-area="content"] .button1,
[data-area="content"] .button2,
[data-area="content"] .button3 {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-top: 10px;
}

[data-area="content"] .button1 {
  justify-content: flex-start;
}

[data-area="content"] .button2 {
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
}

[data-area="content"] .button3 {
  justify-content: flex-end;
}

[data-area="content"] .button1 .button-inner,
[data-area="content"] .button2 .button-inner,
[data-area="content"] .button3 .button-inner {
  width: 25%;
  min-width: 230px;
}

[data-area="content"] .button1 a,
[data-area="content"] .button2 a,
[data-area="content"] .button3 a {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  text-align: center;
  width: 100%;
  padding: 7px 10px;
  border: 1px solid #063F83;
  color: #063F83;
  background: #fff;
}

@media only screen and (max-width: 959px) {

  [data-area="content"] .button1 a,
  [data-area="content"] .button2 a,
  [data-area="content"] .button3 a {
    width: 100%;
    padding: 7px 10px;
  }
}

[data-area="content"] .button1 a:hover,
[data-area="content"] .button2 a:hover,
[data-area="content"] .button3 a:hover {
  background: #063F83;
  color: #fff;
  text-decoration: none;
}

[data-area="content"] .FF-1 {
  font-family: "Noto Sans JP", sans-serif;
}

[data-area="content"] .FF-2 {
  font-family: "Noto Serif JP", serif;
}

[data-area="content"] .FF-3 {
  font-family: "M PLUS Rounded 1c", sans-serif;
}

[data-area="content"] .FF-4 {
  font-family: "Yusei Magic", sans-serif;
}

[data-area="content"] .FF-5 {
  font-family: "Shippori Mincho B1", serif;
}

/* 基本ブロック全て */
.cp-all {
  position: relative;
  margin: 40px 0;
  line-height: 1.8;
  z-index: 0;
}

.cp-all::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: -20px;
  left: calc(50% - 50vw);
  width: 100vw;
  height: calc(100% + 40px);
  pointer-events: none;
}

/* 見出し */
.cp-h1-text {
  margin-top: 100px;
  margin-bottom: 80px;
  font-weight: 700;
  font-size: 32px;
  font-size: 3.2rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 1.4;
}

.cp-h2-text {
  position: relative;
  margin-top: 100px;
  margin-bottom: 60px;
  padding-bottom: 25px;
  border-bottom: 4px solid #D2E4F8;
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.4;
}

body.en .cp-h2-text {
  margin-bottom: 60px;
}

.cp-anchor-menu+.cp-h2-text {
  margin-top: 60px;
}

.cp-tab-menu+.cp-anchor-menu {
  margin-top: 40px;
}

@media only screen and (max-width: 959px) {
  .cp-h2-text {
    margin-top: 60px;
    margin-bottom: 40px;
    padding-bottom: 15px;
    border-bottom-width: 3px;
    font-size: 2.4rem;
  }

  body.en .cp-h2-text {
    margin-bottom: 34px;
  }
}

.cp-h2-text::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 40%;
  min-width: 400px;
  height: 4px;
  background-color: #063F83;
}

@media only screen and (max-width: 959px) {
  .cp-h2-text::before {
    bottom: -3px;
    height: 3px;
    min-width: 200px;
  }
}

.cp-h3-text {
  position: relative;
  margin-top: 60px;
  margin-bottom: 60px;
  padding-bottom: 25px;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.5;
}

body.en .cp-h3-text {
  font-size: 2.8rem;
  margin-bottom: 50px;
  padding-bottom: 20px;
}

@media only screen and (max-width: 959px) {
  .cp-h3-text {
    margin-top: 40px;
    margin-bottom: 30px;
    padding-bottom: 15px;
    font-size: 2.1rem;
  }

  body.en .cp-h3-text {
    font-size: 1.8rem;
    margin-bottom: 25px;
    padding-bottom: 10px;
  }
}

.cp-h3-text::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 31%;
  min-width: 300px;
  height: 4px;
  background-color: #063F83;
}

body.en .cp-h3-text::before {
  bottom: 0;
  height: 2px;
}

@media only screen and (max-width: 959px) {
  .cp-h3-text::before {
    bottom: -3px;
    height: 3px;
    min-width: 130px;
  }

  body.en .cp-h3-text::before {
    bottom: 0;
    height: 2px;
  }
}

.cp-h4-text {
  position: relative;
  margin-top: 60px;
  margin-bottom: 40px;
  padding-bottom: 25px;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.6;
}

@media only screen and (max-width: 959px) {
  .cp-h4-text {
    margin-top: 30px;
    margin-bottom: 20px;
    padding-bottom: 15px;
    font-size: 1.9rem;
  }
}

.cp-h4-text::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 20%;
  min-width: 200px;
  height: 4px;
  background-color: #063F83;
}

@media only screen and (max-width: 959px) {
  .cp-h4-text::before {
    bottom: -3px;
    height: 3px;
    min-width: 65px;
  }
}

.cp-h5-text {
  margin-top: 40px;
  margin-bottom: 20px;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.8rem;
}

@media only screen and (max-width: 959px) {
  .cp-h5-text {
    margin-top: 30px;
    margin-bottom: 10px;
  }

  table+.cp-h5-text {
    margin-top: -20px;
  }
}

/*
.cp-all .cp-inner .cp-h1-text:first-child,
.cp-all .cp-inner .cp-h2-text:first-child,
.cp-all .cp-inner .cp-h3-text:first-child,
.cp-all .cp-inner .cp-h4-text:first-child,
.cp-all .cp-inner .cp-h5-text:first-child{
  margin-top: 0;
}
.cp-all .cp-inner .cp-h1-text:last-child,
.cp-all .cp-inner .cp-h2-text:last-child,
.cp-all .cp-inner .cp-h3-text:last-child,
.cp-all .cp-inner .cp-h4-text:last-child,
.cp-all .cp-inner .cp-h5-text:last-child{
  margin-bottom: 0;
}
*/

.cp-h1-text hr,
.cp-h2-text hr,
.cp-h3-text hr,
.cp-h4-text hr,
.cp-h5-text hr {
  display: none;
}

.cp-hr-100 {
  border-width: 0;
  border-style: solid;
  border-top: 1px solid #ccc;
}

.cp-hr-400 {
  border-width: 0;
  border-style: solid;
  border-top: 4px solid #ccc;
}

.cp-hr-800 {
  border-width: 0;
  border-style: solid;
  border-top: 8px solid #ccc;
}

.cp-hr-dashed {
  border-width: 0;
  border-top: 1px dashed #ccc;
}

/* ブロック内ボタン */
.cp-link-btn {
  display: table;
  margin: 20px 0;
  padding: 4px 20px;
  background-color: #333;
  color: #fff;
  text-decoration: none;
}

.cp-link-btn:hover {
  opacity: 0.7;
}

/* 囲み */
.cp-wp {
  padding: 30px;
  border: 2px solid #063F83;
  background-color: #fff;
}

.cp-wp::before {
  top: -32px;
  height: calc(100% + 64px);
}

@media screen and (max-width: 959px) {
  .cp-wp {
    padding: 20px 4vw;
    border-width: 1px;
  }

  .cp-wp::before {
    top: -21px;
    height: calc(100% + 42px);
  }
}

.cp-wp-shadow {
  margin-top: 20px;
  margin-bottom: 20px;
  margin-left: -80px;
  margin-right: -80px;
  padding: 0 80px;
  border: 2px solid #E3E3E3;
  background: #fff;
  box-shadow: 3px 3px 5px rgba(0, 0, 0, .1);
}

/*cp-wp-shadow > *:first-child{
  margin-top: 0;
}
.cp-wp-shadow > *:last-child{
  margin-bottom: 0;
}*/



/* テーブル */
[data-area="content"] table {
  width: 100%;
  margin-top: 40px;
  margin-bottom: 40px;
  border-collapse: collapse;
  border-spacing: 0;
}

[data-area="content"] .cp-text-item table,
[data-area="content"] .cp-it-text table:first-child,
[data-area="content"] .cp-ti-text table:first-child {
  margin-top: 0;
}

[data-area="content"] .cp-text-item table:last-child,
[data-area="content"] .cp-it-text table:last-child,
[data-area="content"] .cp-ti-text table:last-child {
  margin-bottom: 0;
}

[data-area="content"] table th {
  padding: 10px 15px;
  border: 1px solid #ccc;
  background: #e6e6e6;
}

[data-area="content"] table td {
  padding: 10px 15px;
  border: 1px solid #ccc;
}

/*IE対策*/
_:-ms-input-placeholder,
:root [data-area="content"] table {
  table-layout: fixed;
}

[data-area="content"] table.fr-dashed-borders {
  border-style: dashed !important;
  border-width: inherit !important;
}

[data-area="content"] table.fr-dashed-borders td,
[data-area="content"] table.fr-dashed-borders th {
  border-style: dashed !important;
}

[data-area="content"] table.fr-alternate-rows tbody tr:nth-child(2n) {
  background: #f5f5f5 !important;
}

[data-area="content"] table.fr-table-border-vertical {
  border: none !important;
}

[data-area="content"] table.fr-table-border-vertical th,
[data-area="content"] table.fr-table-border-vertical td {
  border-top: 0px !important;
  border-bottom: 0px !important;
}

[data-area="content"] table.fr-table-border-horizontal {
  border: none !important;
}

[data-area="content"] table.fr-table-border-horizontal th,
[data-area="content"] table.fr-table-border-horizontal td {
  border-left: 0px !important;
  border-right: 0px !important;
}

[data-area="content"] table.fr-table-border-none {
  border: none !important;
}

[data-area="content"] table.fr-table-border-none th,
[data-area="content"] table.fr-table-border-none td {
  border: none !important;
}

[data-area="content"] table.fr-table-border-1px th,
[data-area="content"] table.fr-table-border-1px td {
  border-width: 1px !important;
}

[data-area="content"] table.fr-table-border-2px th,
[data-area="content"] table.fr-table-border-2px td {
  border-width: 2px !important;
}

[data-area="content"] table.fr-table-border-3px th,
[data-area="content"] table.fr-table-border-3px td {
  border-width: 3px !important;
}

[data-area="content"] table.fr-table-cellPadding-10 th,
[data-area="content"] table.fr-table-cellPadding-10 td {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

[data-area="content"] table.fr-table-cellPadding-20 th,
[data-area="content"] table.fr-table-cellPadding-20 td {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

[data-area="content"] table.fr-table-cellPadding-30 th,
[data-area="content"] table.fr-table-cellPadding-30 td {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

[data-area="content"] table.fr-table-cellPadding-40 th,
[data-area="content"] table.fr-table-cellPadding-40 td {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

[data-area="content"] table.fr-table-cellPadding-50 th,
[data-area="content"] table.fr-table-cellPadding-50 td {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

[data-area="content"] table.fr-table-cellPadding-60 th,
[data-area="content"] table.fr-table-cellPadding-60 td {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

[data-area="content"] table.fr-table-cellPadding-70 th,
[data-area="content"] table.fr-table-cellPadding-70 td {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

[data-area="content"] table.fr-table-cellPadding-80 th,
[data-area="content"] table.fr-table-cellPadding-80 td {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}

[data-area="content"] table.fr-table-cellPadding-90 th,
[data-area="content"] table.fr-table-cellPadding-90 td {
  padding-top: 90px !important;
  padding-bottom: 90px !important;
}

[data-area="content"] table.fr-table-cellPadding-100 th,
[data-area="content"] table.fr-table-cellPadding-100 td {
  padding-top: 100px !important;
  padding-bottom: 100px !important;
}

[data-area="content"] table td.fr-highlighted,
[data-area="content"] table th.fr-highlighted {
  border: 1px double red;
}

[data-area="content"] table td.fr-thick,
[data-area="content"] table th.fr-thick {
  border-width: 2px;
}

/* テキスト */
[data-area="content"] .cp-text {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
}

[data-area="content"] .cp-text .cp-text-item {
  width: 100%;
}

[data-area="content"] .cp-text .cp-text-l {
  margin-right: 20px;
}

@media screen and (max-width: 959px) {
  [data-area="content"] .cp-text {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  [data-area="content"] .cp-text .cp-text-l {
    margin-right: 0;
    /*margin-bottom: 20px;*/
  }

  body.en [data-area="content"] .cp-text .cp-text-l {
    margin-bottom: 40px;
  }
}

/* 画像 */
[data-area="content"] span.fr-img-caption {
  position: relative;
  display: block;
  max-width: 100%;
  margin: 5px auto;
  vertical-align: top;
  text-align: center;
}

[data-area="content"] span.fr-img-caption.fr-dib.fr-fir {
  margin-right: 0;
  text-align: right;
}

[data-area="content"] span.fr-img-caption.fr-dib.fr-fil {
  margin-left: 0;
  text-align: left;
}

[data-area="content"] span.fr-img-caption .fr-img-wrap {
  position: relative;
  display: inline-block;
  max-width: 100%;
  width: auto;
  margin: 5px auto;
  vertical-align: top;
  text-align: center;
}

[data-area="content"] span.fr-img-caption .fr-img-wrap span.fr-inner {
  display: block;
  margin-top: 10px;
}

[data-area="content"] span.fr-img-caption .fr-img-wrap img {
  max-width: 100%;
  overflow: hidden;
}

[data-area="content"] .cp-img {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
}

[data-area="content"] .cp-img img {
  max-width: 100%;
  height: auto;
}

[data-area="content"] .cp-img-item {
  width: 100%;
  text-align: center;
}

[data-area="content"] .cp-img-col2 .cp-img-l,
[data-area="content"] .cp-img-col3 .cp-img-l,
[data-area="content"] .cp-img-col4 .cp-img-l {
  margin-right: 20px;
}

@media screen and (max-width: 959px) {
  [data-area="content"] .cp-img {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  [data-area="content"] .cp-img-col1 .cp-img-l,
  [data-area="content"] .cp-img-col2 .cp-img-l,
  [data-area="content"] .cp-img-col3 .cp-img-l,
  [data-area="content"] .cp-img-col4 .cp-img-l {
    margin-right: 0;
    margin-bottom: 20px;
  }

  [data-area="content"] .cp-img+.cp-img {
    margin-top: -20px;
  }
}

/*IE対策*/
_:-ms-input-placeholder,
:root .cp-img-col2 .cp-img-item {
  width: calc(50% - 10px);
}

_:-ms-input-placeholder,
:root .cp-img-col3 .cp-img-item {
  width: calc(33.33% - 14px);
}

_:-ms-input-placeholder,
:root .cp-img-col4 .cp-img-item {
  width: calc(25% - 15px);
}

@media screen and (max-width: 959px) {

  _:-ms-input-placeholder,
  :root .cp-img-col2 .cp-img-item {
    width: 100%;
  }

  _:-ms-input-placeholder,
  :root .cp-img-col3 .cp-img-item {
    width: 100%;
  }

  _:-ms-input-placeholder,
  :root .cp-img-col4 .cp-img-item {
    width: 100%;
  }
}

/* 画像（縦） */
[data-area="content"] .cp-vertical {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
}

[data-area="content"] .cp-vertical img {
  max-width: 100%;
  height: auto;
}

[data-area="content"] .cp-vertical .cp-vertical-item {
  width: 100%;
  text-align: center;
}

[data-area="content"] .cp-vertical .cp-vertical-text {
  text-align: justify;
}

[data-area="content"] .cp-ti-vertical-col2 .cp-vertical-l,
[data-area="content"] .cp-it-vertical-col2 .cp-vertical-l {
  margin-right: 60px;
}

[data-area="content"] .cp-ti-vertical-col3 .cp-vertical-l,
[data-area="content"] .cp-it-vertical-col3 .cp-vertical-l {
  margin-right: 20px;
}

[data-area="content"] .cp-ti.cp-vertical .cp-vertical-text {
  margin-bottom: 10px;
}

[data-area="content"] .cp-it.cp-vertical .cp-vertical-text {
  margin-top: 10px;
}

body.en [data-area="content"] .cp-ti-vertical-col2 .cp-vertical-item,
body.en [data-area="content"] .cp-it-vertical-col2 .cp-vertical-item,
body.en [data-area="content"] .cp-it-horizontal-col2 .cp-horizontal-item,
body.en [data-area="content"] .cp-ti-horizontal-col2 .cp-horizontal-item {
  width: calc((100% - 60px)/2);
}

body.en [data-area="content"] .cp-ti-vertical-col3 .cp-vertical-item,
body.en [data-area="content"] .cp-it-vertical-col3 .cp-vertical-item,
body.en [data-area="content"] .cp-it-horizontal-col3 .cp-horizontal-item,
body.en [data-area="content"] .cp-ti-horizontal-col3 .cp-horizontal-item {
  width: calc((100% - 40px)/3);
}

body.en [data-area="content"] .cp-ti-vertical-col4 .cp-vertical-item,
body.en [data-area="content"] .cp-it-vertical-col4 .cp-vertical-item,
body.en [data-area="content"] .cp-it-horizontal-col4 .cp-horizontal-item,
body.en [data-area="content"] .cp-ti-horizontal-col4 .cp-horizontal-item {
  width: calc((100% - 60px)/4);
}

@media screen and (max-width: 959px) {
  [data-area="content"] .cp-vertical {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  [data-area="content"] .cp-vertical .cp-vertical-l {
    margin-right: 0;
    margin-bottom: 20px;
  }

  body.en [data-area="content"] .cp-vertical .cp-vertical-l {
    margin-bottom: 40px;
  }

  body.en [data-area="content"] .cp-ti-vertical-col2 .cp-vertical-item,
  body.en [data-area="content"] .cp-ti-vertical-col3 .cp-vertical-item,
  body.en [data-area="content"] .cp-ti-vertical-col4 .cp-vertical-item,
  body.en [data-area="content"] .cp-it-vertical-col2 .cp-vertical-item,
  body.en [data-area="content"] .cp-it-vertical-col3 .cp-vertical-item,
  body.en [data-area="content"] .cp-it-vertical-col4 .cp-vertical-item,
  body.en [data-area="content"] .cp-it-horizontal-col2 .cp-horizontal-item,
  body.en [data-area="content"] .cp-ti-horizontal-col2 .cp-horizontal-item,
  body.en [data-area="content"] .cp-it-horizontal-col3 .cp-horizontal-item,
  body.en [data-area="content"] .cp-ti-horizontal-col3 .cp-horizontal-item,
  body.en [data-area="content"] .cp-it-horizontal-col4 .cp-horizontal-item,
  body.en [data-area="content"] .cp-ti-horizontal-col4 .cp-horizontal-item {
    width: 100%;
  }
}

/* 画像（横） */
[data-area="content"] .cp-all img {
  border-radius: 6px;
}

[data-area="content"] .cp-horizontal {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
}

[data-area="content"] .cp-horizontal img {
  max-width: 100%;
  height: auto;
}

[data-area="content"] .cp-horizontal .cp-horizontal-item {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  width: 100%;
  text-align: center;
}

[data-area="content"] .cp-horizontal .cp-horizontal-l {
  margin-right: 20px;
}

[data-area="content"] .cp-horizontal .cp-h1-text:first-child,
[data-area="content"] .cp-horizontal .cp-h2-text:first-child,
[data-area="content"] .cp-horizontal .cp-h3-text:first-child,
[data-area="content"] .cp-horizontal .cp-h4-text:first-child,
[data-area="content"] .cp-horizontal .cp-h5-text:first-child,
[data-area="content"] .cp-horizontal .lead1:first-child,
[data-area="content"] .cp-horizontal .lead2:first-child,
[data-area="content"] .cp-horizontal .lead3:first-child {
  margin-top: 0;
}

[data-area="content"] .cp-ti-horizontal-col2 .cp-horizontal-l,
[data-area="content"] .cp-it-horizontal-col2 .cp-horizontal-l {
  margin-right: 60px;
}


[data-area="content"] .cp-horizontal-img,
[data-area="content"] .cp-horizontal-text {
  width: calc(50% - 30px);
}

[data-area="content"] .cp-horizontal-img:first-child,
[data-area="content"] .cp-horizontal-text:first-child {
  margin-right: 60px;
}

[data-area="content"] .cp-horizontal .cp-horizontal-text {
  text-align: justify;
}

[data-area="content"] .cp-ti-horizontal-col1 .cp-horizontal-img,
[data-area="content"] .cp-ti-horizontal-col1 .cp-horizontal-text,
[data-area="content"] .cp-it-horizontal-col1 .cp-horizontal-img,
[data-area="content"] .cp-it-horizontal-col1 .cp-horizontal-text {
  width: calc(50% - 30px);
}

[data-area="content"] .cp-ti-horizontal-col1 .cp-horizontal-text {
  margin-right: 60px;
}

[data-area="content"] .cp-it-horizontal-col1 .cp-horizontal-text {
  margin-left: 60px;
}

[data-area="content"] .cp-ti-horizontal-col2 .cp-horizontal-text,
[data-area="content"] .cp-it-horizontal-col2 .cp-horizontal-text {
  width: 50%;
}

[data-area="content"] .cp-ti-horizontal-col2 .cp-horizontal-img {
  width: calc(50% - 25px);
  margin-left: 25px;
}

[data-area="content"] .cp-it-horizontal-col2 .cp-horizontal-img {
  width: calc(50% - 25px);
  margin-right: 25px;
}

@media screen and (max-width: 959px) {
  [data-area="content"] .cp-horizontal {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  [data-area="content"] .cp-horizontal .cp-horizontal-item {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  [data-area="content"] .cp-horizontal-img,
  [data-area="content"] .cp-horizontal-text,
  [data-area="content"] .cp-ti-horizontal-col1 .cp-horizontal-img,
  [data-area="content"] .cp-ti-horizontal-col1 .cp-horizontal-text,
  [data-area="content"] .cp-it-horizontal-col1 .cp-horizontal-img,
  [data-area="content"] .cp-it-horizontal-col1 .cp-horizontal-text {
    width: 100%;
  }

  [data-area="content"] .cp-horizontal-img:first-child,
  [data-area="content"] .cp-horizontal-text:first-child {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }

  [data-area="content"] .cp-horizontal .cp-horizontal-l {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }

  [data-area="content"] .cp-ti.cp-horizontal .cp-horizontal-text {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }

  [data-area="content"] .cp-it.cp-horizontal .cp-horizontal-text {
    width: 100%;
    margin-left: 0;
    margin-top: 10px;
  }
}

/* 線 */
.cp-border {
  position: relative;
  left: -120px;
  margin: 100px auto;
  width: calc(100% + 240px);
  max-width: 1260px;
  height: 1px;
  background: #999;
}

.cp-border hr {
  display: none;
}

@media screen and (max-width: 1449px) {
  .cp-border {
    left: -210px;
  }
}

@media screen and (max-width: 959px) {
  .cp-border {
    left: -120px;
    margin: 50px auto;
    max-width: 1260px;
  }
}

/* 余白 */
.cp-space {
  height: 80px;
}

/* アンカーリンクメニュー */
[data-area="content"] .cp-anchor-menu {
  margin-bottom: 40px;
}

[data-area="content"]>.cp-anchor-menu:first-child {
  margin-top: -60px;
}

@media only screen and (max-width: 959px) {
  [data-area="content"]>.cp-anchor-menu:first-child {
    margin-top: -20px;
  }
}

[data-area="content"] .cp-anchor-menu ul {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

[data-area="content"] .cp-anchor-menu li {
  position: relative;
  margin-left: 12px;
  margin-right: 12px;
  margin-bottom: 5px;
}

[data-area="content"] .cp-anchor-menu li a::after {
  content: "";
}

[data-area="content"] .cp-anchor-menu li a[href*="#"]::after {
  content: "";
}

/* ボタン */
.large-btn {
  margin-top: 40px;
  margin-bottom: 40px;
}

.large-btn ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: 0;
  list-style: none;
  font-family: "Noto Serif JP", serif;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.778;
}

@media only screen and (max-width: 959px) {
  .large-btn ul {
    font-size: 1.7rem;
    line-height: 1.4;
  }
}

.large-btn a {
  display: table-cell;
  width: 100%;
  padding: 15px 30px 50px 30px;
  border: 1px solid #ddd;
  background: #fff;
  box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.1);
  color: #333;
  vertical-align: middle;
}

@media only screen and (max-width: 959px) {
  .large-btn a {
    width: 100%;
    padding: 10px 15px 40px 15px;
  }
}

.large-btn a::before {
  content: "";
  position: absolute;
  left: 30px;
  bottom: 45px;
  width: 20px;
  height: 1px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .large-btn a::before {
    left: 15px;
    bottom: 35px;
  }
}

.large-btn a::after {
  top: -2px;
}

.large-btn a:hover {
  background: #063F83;
  color: #fff !important;
  text-decoration: none;
}

.large-btn a:hover::before {
  background: #fff;
}

.large-btn-01 li {
  position: relative;
  display: table;
  width: 100%;
  margin-bottom: 30px;
  min-height: 140px;
}

.large-btn-02 li {
  position: relative;
  display: table;
  width: calc(50% - 15px);
  margin-right: 30px;
  margin-bottom: 30px;
  min-height: 140px;
}

.large-btn-03 li {
  position: relative;
  display: table;
  width: calc(33.33% - 20px);
  margin-right: 30px;
  margin-bottom: 30px;
  min-height: 140px;
}

.large-btn-04 li {
  position: relative;
  display: table;
  width: calc(25% - 21px);
  margin-right: 28px;
  margin-bottom: 30px;
  min-height: 140px;
}

@media only screen and (max-width: 959px) {

  .large-btn-01 li,
  .large-btn-02 li,
  .large-btn-03 li,
  .large-btn-04 li {
    min-height: 100px;
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
}

.large-btn-02 li:nth-child(2n) {
  margin-right: 0;
}

.large-btn-03 li:nth-child(3n) {
  margin-right: 0;
}

.large-btn-04 li:nth-child(4n) {
  margin-right: 0;
}

.large-btn-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: 0;
  list-style: none;
  font-family: "Noto Serif JP", serif;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.778;
}

.large-btn-list__item {
  width: calc(33.33% - 20px);
  margin-right: 30px;
  margin-bottom: 30px;
}

@media only screen and (max-width: 959px) {
  .large-btn-list__item {
    width: 100%;
    margin-right: 0;
  }
}

.large-btn-list__item:nth-child(3n) {
  margin-right: 0;
}

.large-btn-list__btn a {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  min-height: 140px;
  padding: 15px 30px 50px 30px;
  border: 1px solid #ddd;
  background: #fff;
  box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.1);
  color: #333;
}

@media only screen and (max-width: 959px) {
  .large-btn-list__btn a {
    width: 100%;
    min-height: 100px;
    padding: 10px 15px 40px 15px;
  }
}

.large-btn-list__btn a::before {
  content: "";
  position: absolute;
  left: 30px;
  bottom: 45px;
  width: 20px;
  height: 1px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .large-btn-list__btn a::before {
    left: 15px;
    bottom: 35px;
  }
}

.large-btn-list__btn a:hover {
  background: #063F83;
  color: #fff;
  text-decoration: none;
}

.large-btn-list__btn a:hover::before {
  background: #fff;
}

.large-btn-list__list {
  padding: 20px 30px 0 30px;
  font-size: 1.6rem;
  line-height: 1.5;
}

@media only screen and (max-width: 959px) {
  .large-btn-list__list {
    padding: 20px 0 0 5px;
  }
}

.large-btn-list__list ul {
  margin-left: 0;
  list-style: none;
}

.large-btn-list__list li {
  position: relative;
  margin-top: 10px;
  padding-left: 25px;
}

.large-btn-list__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  display: block;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #063F83;
}

.large-btn-list__list a {
  color: #333;
}

.small-btn {
  margin-top: 40px;
  margin-bottom: 40px;
}

.small-btn ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: 0;
  list-style: none;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.778;
}

@media only screen and (max-width: 959px) {
  .small-btn ul {
    font-size: 1.4rem;
    line-height: 1.4;
  }
}

.small-btn a {
  display: table-cell;
  width: 100%;
  height: 100%;
  padding: 7px 10px;
  border: 1px solid #063F83;
  color: #063F83;
  background: #fff;
  vertical-align: middle;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .small-btn a {
    width: 100%;
    padding: 7px 10px;
  }
}

.small-btn a::after {
  top: -2px;
}

.small-btn--active a[href=""],
.small-btn a:hover {
  background: #063F83;
  color: #fff !important;
  text-decoration: none;
}

.small-btn-01 li {
  position: relative;
  display: table;
  width: 100%;
  margin-bottom: 30px;
}

.small-btn-02 li {
  position: relative;
  display: table;
  width: calc(50% - 5px);
  margin-right: 10px;
  margin-bottom: 10px;
}

.small-btn-03 li {
  position: relative;
  display: table;
  width: calc(33.33% - 7px);
  margin-right: 10px;
  margin-bottom: 10px;
}

.small-btn-04 li {
  position: relative;
  display: table;
  width: calc(25% - 8px);
  margin-right: 10px;
  margin-bottom: 10px;
}

@media only screen and (max-width: 959px) {

  .small-btn-01 li,
  .small-btn-02 li,
  .small-btn-03 li,
  .small-btn-04 li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
}

.small-btn-02 li:nth-child(2n) {
  margin-right: 0;
}

.small-btn-03 li:nth-child(3n) {
  margin-right: 0;
}

.small-btn-04 li:nth-child(4n) {
  margin-right: 0;
}

/* タブ */
.cp-tab-menu {
  margin-bottom: 10px;
  border-bottom: 1px solid #063F83;
}

.cp-tab-menu ul,
.cp-tab-menu ol {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cp-tab-menu li {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-flex-grow: 1;
  -ms-flex-grow: 1;
  flex-grow: 1;
  text-align: center;
  padding: 25px 5px;
  border-left: none;
  word-break: break-all;
  cursor: pointer;
  color: #333;
  background: #fff;
  transition: .2s;
}

body.picks .cp-tab-menu li {
  background: #f9f9f9;
}

.cp-tab-menu li:first-child,
.cp-tab-menu li:first-child a {
  border-radius: 6px 0 0 0;
}

.cp-tab-menu li:last-child,
.cp-tab-menu li:last-child a {
  border-radius: 0 6px 0 0;
}

.cp-tab-menu li:hover,
.cp-tab-menu li.active {
  background-color: #063F83;
  color: #fff;
}

.cp-tab-menu li a {
  display: flex;
  width: calc(100% + 10px);
  margin: -25px -5px;
  padding: 25px 5px;
  color: #333;
  align-items: center;
  justify-content: center;
}

.cp-tab-menu li a:hover,
.cp-tab-menu li a[href=""] {
  background-color: #063F83;
  color: #fff;
  text-decoration: none;
}

.cp-tab-content>div {
  display: none;
}

.cp-tab-content>div.active {
  display: block;
}

@media screen and (max-width: 959px) {
  .cp-tab-menu {
    border-right: 1px solid #063F83;
  }

  .cp-tab-menu ul,
  .cp-tab-menu ol {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .cp-tab-menu li {
    width: 50%;
    padding: 15px 5px;
    border-top: none;
  }

  .cp-tab-menu li:first-child,
  .cp-tab-menu li:last-child,
  .cp-tab-menu li:first-child a,
  .cp-tab-menu li:last-child a {
    border-radius: 0;
  }

  .cp-tab-menu li:nth-child(1),
  .cp-tab-menu li:nth-child(2) {
    border-top: 1px solid #063F83;
  }

  .cp-tab-menu li:nth-child(2n+1) {
    border-left: 1px solid #063F83;
  }

  .cp-tab-menu li a {
    margin: -15px -5px;
  }

  .cp-tab-menu li a {
    -webkit-touch-callout: none;
  }
}

/*.cp-tab-content > div:before,
.cp-tab-content > div:after {
  content: "";
  display: table;
}*/
.cp-tab-content>div {
  clear: both;
}

/*.cp-accordion-content > div:before,
.cp-accordion-content > div:after {
  content: "";
  display: table;
}*/
.cp-accordion-content>div {
  clear: both;
}


/* 開閉式 */
.acd-unit-head {
  display: table;
  margin-left: auto;
  margin-bottom: 10px;
  color: #063F83;
  font-size: 1.4rem;
  cursor: pointer;
}

.acd-unit-head+.cp-accordion {
  margin-top: 0;
}

.cp-accordion {
  margin: 40px 0;
}

.cp-accordion+.cp-accordion {
  margin-top: -30px;
}

.cp-accordion-title {
  position: relative;
  margin-bottom: 30px;
  background-color: #fff;
  font-weight: 500;
  cursor: pointer;
}

@media screen and (max-width: 959px) {
  .cp-accordion-title {
    margin-bottom: 15px;
  }
}

.cp-accordion-title::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 20px;
  right: 30px;
  width: 1px;
  height: 19px;
  background-color: #333;
  transition: .2s;
}

.cp-accordion.is-active>.cp-accordion-title::before {
  opacity: 0;
}

.cp-accordion-title::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 29px;
  right: 21px;
  width: 19px;
  height: 1px;
  background-color: #333;
  transition: .2s;
}

.cp-accordion.is-active>.cp-accordion-title::after {
  background-color: #fff;
}

.cp-accordion-title>.cp-inner::before {
  content: "";
  position: absolute;
  z-index: 1;
  right: 11px;
  top: 10px;
  width: 40px;
  height: 40px;
  border: 1px solid #999;
  border-radius: 2px;
  transition: .2s;
}

.cp-accordion.is-active>.cp-accordion-title>.cp-inner::before {
  background: #999;
}

.cp-accordion-title--small {
  padding: 15px 60px 15px 30px;
  border: 1px solid #ddd;
  font-size: 1.6rem;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, .1);
}

@media screen and (max-width: 959px) {
  .cp-accordion-title--small {
    padding-left: 20px;
  }
}

.cp-accordion-title--large {
  padding: 40px 50px 40px 0;
  font-size: 2rem;
}

@media screen and (max-width: 959px) {
  .cp-accordion-title--large {
    padding: 25px 50px 25px 0;
    font-size: 1.8rem;
  }
}

.cp-accordion-title--large::before {
  top: 50px;
  right: 20px;
}

@media screen and (max-width: 959px) {
  .cp-accordion-title--large::before {
    top: 35px;
  }
}

.cp-accordion-title--large::after {
  top: 59px;
  right: 11px;
}

@media screen and (max-width: 959px) {
  .cp-accordion-title--large::after {
    top: 44px;
  }
}

.cp-accordion-title--large>.cp-inner {
  position: relative;
  z-index: 1;
}

.cp-accordion-title--large>.cp-inner::before {
  top: 0;
  right: -50px;
}

.cp-accordion-title--large>.cp-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 120vw;
  height: 100%;
  margin-left: calc(50% - 60vw);
  margin-right: calc(50% - 60vw);
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  background: #fff;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, .1);
}

.cp-accordion-title--qa {
  padding: 9px 60px 9px 75px;
  font-size: 2rem;
  font-weight: 700;
}

.cp-accordion-title--qa>.cp-inner::after {
  content: "Q.";
  position: absolute;
  left: 0;
  top: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 58px;
  height: 58px;
  padding-left: 5px;
  background: #063F83;
  color: #fff;
}

.cp-accordion-content {
  margin-bottom: 100px;
}

.cp-accordion--message {
  position: relative;
}

.cp-accordion--message+.cp-accordion--message {
  margin-top: -20px;
}

.cp-accordion--message::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 200vw;
  height: 100%;
  margin-left: calc(50% - 100vw);
  background: #F0F4F5;
}

.cp-accordion-title--message {
  display: -ms-flex;
  display: flex;
  padding: 40px 60px 40px 0;
  margin-bottom: 0;
  background: transparent;
  font-weight: 400;
}

.cp-accordion-title--message::before {
  top: 47px;
  right: 29px;
  width: 1px;
  height: 19px;
}

.cp-accordion.is-active>.cp-accordion-title--message::before {
  opacity: 1;
  transform: rotate(45deg);
}

.cp-accordion-title--message::after {
  top: 56px;
  right: 20px;
  width: 19px;
  height: 1px;
}

.cp-accordion.is-active>.cp-accordion-title--message::after {
  background-color: #333;
  transform: rotate(45deg);
}

.cp-accordion-title__image {
  width: 200px;
}

.cp-accordion--message .cp-accordion-title--message .cp-accordion-title__image img {
  border-radius: 50%;
}

.cp-accordion-title__text-wrap {
  width: calc(100% - 240px);
  margin-left: 40px;
}

.cp-accordion-title__text-wrap::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 200vw;
  height: 1px;
  margin-left: calc(50% - 100vw);
  background: #ccc;
  opacity: 0;
  transition: opacity .2s;
}

.cp-accordion-title__text-wrap::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 37px;
  display: block;
  width: 39px;
  height: 39px;
  background: #fff;
  border-radius: 2px;
  border: 1px solid #999;
}

.cp-accordion--message.is-active .cp-accordion-title__text-wrap::before {
  opacity: 1;
}

.cp-accordion-title__category .cp-inner {
  display: table;
  margin-top: 15px;
  margin-bottom: 20px;
  padding: 1px 20px;
  background: #333;
  font-weight: 500;
  color: #fff;
}

.cp-accordion-title__category .cp-inner:empty {
  display: none;
}

body.system.cms.apps .cp-accordion-title__category .cp-inner:empty {
  display: table;
}

[data-area="content"] .cp-accordion-title__head {
  margin-top: 0;
  margin-bottom: 25px;
}

.cp-accordion-title__text {
  line-height: 1.9;
}

.cp-accordion-content--message {
  position: relative;
  margin-bottom: 0;
  border-top: 1px solid transparent;
  padding-bottom: 40px;
}

.cp-accordion-close {
  position: relative;
  display: -ms-flex;
  display: flex;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  margin: 40px auto 0 auto;
  font-size: 1.4rem;
  transition: .2s;
}

.cp-accordion-close:hover {
  opacity: .7;
}

.cp-accordion-close::after {
  content: "";
  position: absolute;
  right: 16px;
  bottom: 32px;
  display: block;
  width: 39px;
  height: 39px;
  background: #fff;
  border-radius: 2px;
  border: 1px solid #999;
}

.cp-accordion-close__inner::before {
  content: "";
  position: absolute;
  z-index: 1;
  bottom: 42px;
  right: 35px;
  width: 1px;
  height: 19px;
  background-color: #333;
  transform: rotate(45deg);
}

.cp-accordion-close__inner::after {
  content: "";
  position: absolute;
  z-index: 1;
  bottom: 51px;
  right: 26px;
  width: 19px;
  height: 1px;
  background-color: #333;
  transform: rotate(45deg);
}

@media only screen and (max-width: 959px) {
  .cp-accordion-title--message {
    display: block;
    padding: 30px 0;
  }

  .cp-accordion-title__image {
    margin: 0 auto;
  }

  .cp-accordion-title__text-wrap {
    width: 100%;
    margin-left: 0;
  }
}

/* フォトアルバム */
.cp-photos {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
}

.cp-photos+.cp-photos {
  margin-top: -20px;
}

.cp-photos-item {
  width: 100%;
}

.cp-photos-item img {
  max-width: 100%;
  height: auto;
}

.cp-photos-item p {
  margin: 10px 0 0 0;
}

.cp-photos-item p:empty {
  display: none;
}

.cp-photos .cp-photos-l {
  margin-right: 20px;
}

@media screen and (max-width: 959px) {
  .cp-photos {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .cp-photos .cp-photos-l {
    margin-right: 0;
    margin-bottom: 20px;
  }
}

/*IE対策*/
_:-ms-input-placeholder,
:root .cp-photos-02 .cp-photos-item {
  width: calc(50% - 10px);
}

_:-ms-input-placeholder,
:root .cp-photos-03 .cp-photos-item {
  width: calc(33.33% - 14px);
}

_:-ms-input-placeholder,
:root .cp-photos-04 .cp-photos-item {
  width: calc(25% - 15px);
}

@media screen and (max-width: 959px) {

  _:-ms-input-placeholder,
  :root .cp-photos-02 .cp-photos-item {
    width: 100%;
  }

  _:-ms-input-placeholder,
  :root .cp-photos-03 .cp-photos-item {
    width: 100%;
  }

  _:-ms-input-placeholder,
  :root .cp-photos-04 .cp-photos-item {
    width: 100%;
  }
}

/* テーブル横スクロールの処理 */
.table-scroll-wrap {
  margin-top: 40px;
  margin-bottom: 40px;
}

[data-area="content"] table.table-scroll {
  margin: 0;
  border-top: 1px solid #c6c6c6;
}

@media screen and (max-width: 959px) {
  .table-scroll-wrap {
    overflow: auto;
  }

  .table-scroll-wrap::-webkit-scrollbar {
    height: 5px;
  }

  .table-scroll-wrap::-webkit-scrollbar-track {
    background: #F1F1F1;
  }

  .table-scroll-wrap::-webkit-scrollbar-thumb {
    background: #BCBCBC;
  }

  .table-scroll-wrap table {
    width: 960px !important;
    max-width: 960px !important;
  }
}

/* 動画アルバム */
.cp-videos {
  display: -ms-flexbox;
  display: flex;
  margin-top: 40px;
  margin-bottom: 40px;
}

.cp-videos .code {
  display: none;
}

.cp-videos+.cp-videos {
  margin-top: -20px;
}

.cp-videos-item {
  width: 100%;
}

@media only screen and (max-width: 959px) {
  .cp-videos-item {
    margin-bottom: 40px;
  }
}

.cp-videos-item .cp-videos-thumb {
  position: relative;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 6px;
}

.cp-videos-thumb:hover::before {
  background: #30383B;
}

.cp-videos-thumb:hover::after {
  border-left-color: #fff;
}

.cp-videos-item .cp-videos-thumb::before {
  content: "";
  position: absolute;
  top: calc(50% - 5vw);
  left: calc(50% - 5vw);
  display: block;
  height: 10vw;
  width: 10vw;
  background: #fff;
  border-radius: 50%;
  transition: background-color .2s;
}

.cp-videos-item .cp-videos-thumb::after {
  content: "";
  position: absolute;
  top: calc(50% - 1vw);
  left: calc(50% - 1vw);
  display: block;
  height: 0;
  width: 0;
  border-top: 1vw solid transparent;
  border-bottom: 1vw solid transparent;
  border-left: 2vw solid #30383B;
  transition: border-left-color .2s;
}

@media only screen and (min-width: 960px) {
  .cp-videos-02 .cp-videos-item .cp-videos-thumb::before {
    top: calc(50% - 4vw);
    left: calc(50% - 4vw);
    height: 8vw;
    width: 8vw;
  }

  .cp-videos-02 .cp-videos-item .cp-videos-thumb::after {
    top: calc(50% - 0.8vw);
    left: calc(50% - 0.8vw);
    border-top: 0.8vw solid transparent;
    border-bottom: 0.8vw solid transparent;
    border-left: 1.6vw solid #30383B;
  }

  .cp-videos-03 .cp-videos-item .cp-videos-thumb::before {
    top: calc(50% - 2.5vw);
    left: calc(50% - 2.5vw);
    height: 5vw;
    width: 5vw;
  }

  .cp-videos-03 .cp-videos-item .cp-videos-thumb::after {
    top: calc(50% - 0.5vw);
    left: calc(50% - 0.5vw);
    border-top: 0.5vw solid transparent;
    border-bottom: 0.5vw solid transparent;
    border-left: 1vw solid #30383B;
  }

  .cp-videos-04 .cp-videos-item .cp-videos-thumb::before {
    top: calc(50% - 1.5vw);
    left: calc(50% - 1.5vw);
    height: 3vw;
    width: 3vw;
  }

  .cp-videos-04 .cp-videos-item .cp-videos-thumb::after {
    top: calc(50% - 0.3vw);
    left: calc(50% - 0.3vw);
    border-top: 0.3vw solid transparent;
    border-bottom: 0.3vw solid transparent;
    border-left: 0.6vw solid #30383B;
  }
}

.cp-videos-item .cp-videos-thumb iframe {
  visibility: hidden;
}

.cp-videos-item p {
  margin: 10px 0 0 0;
}

.cp-videos-item p:empty {
  display: none;
}

.cp-videos .cp-videos-item {
  margin-right: 15px;
}

.cp-videos .cp-videos-item:last-child {
  margin-right: 0;
}

@media screen and (max-width: 959px) {
  .cp-videos {
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .cp-videos .cp-videos-l {
    margin-right: 0;
    margin-bottom: 20px;
  }
}

/*IE対策*/
_:-ms-input-placeholder,
:root .cp-videos-02 .cp-videos-item {
  width: calc(50% - 8px);
}

_:-ms-input-placeholder,
:root .cp-videos-03 .cp-videos-item {
  width: calc(33.33% - 10px);
}

_:-ms-input-placeholder,
:root .cp-videos-04 .cp-videos-item {
  width: calc(25% - 12px);
}

@media screen and (max-width: 959px) {

  _:-ms-input-placeholder,
  :root .cp-videos-02 .cp-videos-item {
    width: 100%;
  }

  _:-ms-input-placeholder,
  :root .cp-videos-03 .cp-videos-item {
    width: 100%;
  }

  _:-ms-input-placeholder,
  :root .cp-videos-04 .cp-videos-item {
    width: 100%;
  }
}

.fr-editor .cp-videos .code {
  display: block;
}

.fr-block .cp-videos-item .cp-videos-thumb iframe {
  visibility: visible;
}

/* 外部サービスコード */
.cp-external iframe {
  margin: 0 auto;
  display: block;
}

.cp-external iframe[src*="google.com/calendar"] {
  position: relative;
  width: 100%;
  height: 600px;
}

.cp-external-text-area {
  display: none;
  border: 1px solid #888;
}

@media screen and (max-width: 959px) {
  .cp-external {
    position: relative;
  }

  .cp-external::after {
    content: "";
    display: block;
    padding-top: 56.25%;
  }

  .cp-external.cypochiform-wrap::after {
    display: none;
  }

  .cp-external iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
  }
}

/* テキスト装飾 */
.fr-text-gray {
  color: #aaa !important;
}

.fr-text-bordered {
  border-top: solid 1px #222;
  border-bottom: solid 1px #222;
  padding: 10px 0;
}

li.fr-text-bordered+li.fr-text-bordered {
  border-top: 0px;
}

.fr-text-spaced {
  letter-spacing: 1px;
}

.fr-text-uppercase {
  text-transform: uppercase;
}

.fr-class-highlighted {
  background-color: #ffff00;
}

.fr-class-code {
  border-color: #cccccc;
  border-radius: 2px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  background: #f5f5f5;
  padding: 10px;
  font-family: "Courier New", Courier, monospace;
}

.fr-class-transparency {
  opacity: 0.5;
}

span.fr-emoticon {
  font-weight: normal;
  font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols";
  display: inline;
  line-height: 0;
}

span.fr-emoticon.fr-emoticon-img {
  background-repeat: no-repeat !important;
  font-size: inherit;
  height: 1em;
  width: 1em;
  min-height: 20px;
  min-width: 20px;
  display: inline-block;
  margin: -.1em .1em .1em;
  line-height: 1;
  vertical-align: middle;
}

/* 画像の角を丸くする */
img.fr-rounded,
.fr-img-caption.fr-rounded img {
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}

/* 画像に境界線を追加 */
img.fr-bordered,
.fr-img-caption.fr-bordered img {
  border: solid 5px #CCC;
}

img.fr-bordered {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.fr-img-caption.fr-bordered img {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

/* 画像にドロップシャドウ */
img.fr-shadow,
.fr-img-caption.fr-shadow img {
  -webkit-box-shadow: 10px 10px 5px 0px #cccccc;
  -moz-box-shadow: 10px 10px 5px 0px #cccccc;
  box-shadow: 10px 10px 5px 0px #cccccc;
}

.movie-head {
  position: relative;
  width: 100%;
  max-width: 570px;
  margin-left: -110px;
  margin-right: 30px;
}

body.index .movie-head {
  margin-left: 0;
}

.movie-head__text {
  margin-bottom: 100px;
  padding: 19px 150px 19px 30px;
  background: #333;
  color: #fff;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.28;
  letter-spacing: .4rem;
  border-radius: 4px;
}

.movie-head__image {
  position: absolute;
  right: 50px;
  top: 5px;
}

@media only screen and (max-width: 959px) {
  .movie-head {
    max-width: none;
    min-width: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .movie-head__text {
    padding: 19px 120px 19px 20px;
    font-size: 2.1rem;
    letter-spacing: .2rem;
  }

  .movie-head__image {
    right: 15px;
  }
}

/*PCSP画像切替*/
body.system.cms.apps .cp-img-change {
  display: block;
}

.cp-img-change__sp {
  display: none;
}

body.system.cms.apps .cp-img-change__sp {
  display: block;
}

@media only screen and (max-width: 959px) {
  .cp-img-change__pc {
    display: none;
  }

  .cp-img-change__sp {
    display: block;
  }
}

.index-btn-video {
  position: relative;
  padding-left: 116px;
}

@media only screen and (max-width: 959px) {
  .index-btn-video {
    padding-left: 0;
  }
}

.index-btn-video__btn {
  position: absolute;
  left: 0;
  top: 0;
  width: calc(33.33% - 20px);
  margin-left: 0;
  list-style: none;
  font-family: "Noto Serif JP", serif;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.778;
}

@media only screen and (max-width: 959px) {
  .index-btn-video__btn {
    position: relative;
    width: 100%;
  }
}

.index-btn-video__btn a {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  min-height: 140px;
  padding: 15px 30px 50px 30px;
  border: 1px solid #ddd;
  background: #fff;
  color: #333;
  box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 959px) {
  .index-btn-video__btn a {
    width: 100%;
    min-height: 100px;
    padding: 10px 15px 40px 15px;
  }
}

.index-btn-video__btn a::before {
  content: "";
  position: absolute;
  left: 30px;
  bottom: 45px;
  width: 20px;
  height: 1px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .index-btn-video__btn a::before {
    left: 15px;
    bottom: 35px;
  }
}

.index-btn-video__btn a:hover {
  background: #063F83;
  color: #fff;
  text-decoration: none;
}

.index-btn-video__btn a:hover::before {
  background: #fff;
}

.index-btn-video__video {
  position: relative;
  max-width: 700px;
  margin-left: auto;
  margin-bottom: 114px;
}

@media only screen and (max-width: 1449px) {
  .index-btn-video__video {
    width: 100%;
    padding-top: 170px;
  }
}

@media only screen and (max-width: 959px) {
  .index-btn-video__video {
    width: 83%;
    margin-bottom: 80px;
    padding-top: 40px;
  }
}

.index-btn-video__video>.cp-inner {
  position: absolute;
  bottom: -84px;
  left: -116px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
  align-items: flex-end;
  min-width: 315px;
  min-height: 196px;
  padding: 30px 38px;
  border-radius: 6px;
  background: #30383B;
  line-height: 1.86;
  font-weight: 500;
  color: #fff;
}

body.system.cms.apps .index-btn-video__video>.cp-inner {
  position: relative;
  bottom: 0;
  left: 0;
}

@media only screen and (max-width: 959px) {
  .index-btn-video__video>.cp-inner {
    bottom: -40px;
    left: -20%;
    min-width: 50%;
    min-height: 120px;
    padding: 15px 20px;
    border-radius: 4px;
    font-size: 1.3rem;
  }
}

.index-btn-video__thumb {
  position: relative;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #000;
}

body.system.cms.apps .index-btn-video__thumb {
  padding-top: 0;
}

.index-btn-video__thumb:hover::before {
  background: #30383B;
}

.index-btn-video__thumb:hover::after {
  border-left-color: #fff;
}

.index-btn-video__thumb::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: calc(50% - 2.5vw);
  left: calc(50% - 2.5vw);
  display: block;
  height: 5vw;
  width: 5vw;
  background: #fff;
  border-radius: 50%;
  transition: background-color .2s;
}

@media only screen and (max-width: 959px) {
  .index-btn-video__thumb::before {
    top: calc(50% - 5vw);
    left: calc(50% - 5vw);
    height: 10vw;
    width: 10vw;
  }
}

.index-btn-video__thumb::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: calc(50% - 0.5vw);
  left: calc(50% - 0.5vw);
  display: block;
  height: 0;
  width: 0;
  border-top: 0.5vw solid transparent;
  border-bottom: 0.5vw solid transparent;
  border-left: 1vw solid #30383B;
  transition: border-left-color .2s;
}

@media only screen and (max-width: 959px) {
  .index-btn-video__thumb::after {
    top: calc(50% - 1vw);
    left: calc(50% - 1vw);
    border-top: 1vw solid transparent;
    border-bottom: 1vw solid transparent;
    border-left: 2vw solid #30383B;
  }
}

.index-btn-video__thumb img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover; object-position: bottom;';
  opacity: .7;
}

body.system.cms.apps .index-btn-video__thumb img {
  position: relative;
}

.index-video-area {
  min-height: 480px;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 150px 0 90px 0;
  background: #F0F4F5;
  transition: padding .2s;
}

.index-video-area:last-child {
  margin-bottom: -100px !important;
}

@media only screen and (max-width: 1769px) {
  .index-video-area {
    margin-left: calc(50% - 50vw - 80px);
    margin-right: calc(50% - 50vw + 80px);
  }
}

@media only screen and (max-width: 959px) {
  .index-video-area {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 0 0 1px 0;
  }

  .index-video-area:last-child {
    margin-bottom: -40px !important;
  }
}

.index-video-area__inner {
  position: relative;
  max-width: 1568px;
  margin: 0 auto;
  padding: 0 60px;
}

@media only screen and (max-width: 1279px) {
  .index-video-area__inner {
    padding-top: 150px;
  }
}

@media only screen and (max-width: 959px) {
  .index-video-area__inner {
    padding: 0 4vw;
  }
}

.index-video-head {
  position: absolute;
  left: 60px;
  top: 0;
  min-height: 240px;
  font-weight: 400;
}

body.system.cms.apps .index-video-head {
  position: relative;
  left: 0;
}

@media only screen and (max-width: 959px) {
  .index-video-head {
    position: relative;
    left: 0;
    min-height: 0;
    margin-bottom: 40px;
  }
}

.index-video-head__ja {
  padding-top: 50px;
  padding-left: 60px;
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
}

@media only screen and (max-width: 959px) {
  .index-video-head__ja {
    padding-left: 0;
    font-size: 2.4rem;
  }
}

.index-video-head__en {
  position: absolute;
  left: 0;
  top: 0;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  font-size: 1.4rem;
}

@media only screen and (max-width: 959px) {
  .index-video-head__en {
    position: relative;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    transform: rotate(0deg);
    font-size: 1.2rem;
  }
}

.index-video-item {
  position: relative;
  width: calc(100% - 180px);
  max-width: 540px;
  margin-right: auto;
  margin-left: 116px;
  margin-bottom: 114px;
}

.index-video-item iframe {
  display: none;
}

@media only screen and (max-width: 959px) {
  .index-video-item {
    margin-right: 0;
    margin-left: auto;
    width: 83%;
    margin-bottom: 80px;
  }
}

.index-video-item--center {
  margin-right: auto;
  margin-left: auto;
}

.index-video-item--right {
  margin-right: 0;
  margin-left: auto;
}

.index-video-item a {
  display: block;
}

.index-video-item>.cp-inner {
  position: absolute;
  bottom: -84px;
  left: -116px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
  align-items: flex-end;
  min-width: 315px;
  min-height: 196px;
  padding: 30px 38px;
  border-radius: 6px;
  background: #30383B;
  line-height: 1.86;
  font-weight: 500;
  color: #fff;
  z-index: 2;
}

body.system.cms.apps .index-video-item>.cp-inner {
  position: relative;
  bottom: 0;
  left: 0;
}

@media only screen and (max-width: 959px) {
  .index-video-item>.cp-inner {
    bottom: -40px;
    left: -20%;
    min-width: 50%;
    min-height: 120px;
    padding: 15px 20px;
    border-radius: 4px;
    font-size: 1.3rem;
  }
}

.index-video-thumb {
  position: relative;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #000;
  overflow: hidden;
  border-radius: 6px;
}

body.system.cms.apps .index-video-thumb {
  padding-top: 0;
  background-color: #fff;
}

.index-video-thumb:hover::before {
  background: #30383B;
}

.index-video-thumb:hover::after {
  border-left-color: #fff;
}

.index-video-thumb::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: calc(50% - 54px);
  left: calc(50% - 54px);
  display: block;
  height: 108px;
  width: 108px;
  background: #fff;
  border-radius: 50%;
  transition: background-color .2s;
}

@media only screen and (max-width: 959px) {
  .index-video-thumb::before {
    top: calc(50% - 5vw);
    left: calc(50% - 5vw);
    height: 10vw;
    width: 10vw;
  }
}

.index-video-thumb::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: calc(50% - 11px);
  left: calc(50% - 10px);
  display: block;
  height: 0;
  width: 0;
  border-top: 11px solid transparent;
  border-bottom: 11px solid transparent;
  border-left: 21px solid #30383B;
  transition: border-left-color .2s;
}

@media only screen and (max-width: 959px) {
  .index-video-thumb::after {
    top: calc(50% - 1vw);
    left: calc(50% - 1vw);
    border-top: 1vw solid transparent;
    border-bottom: 1vw solid transparent;
    border-left: 2vw solid #30383B;
  }
}

.index-video-thumb img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover; object-position: bottom;';
  opacity: .7;
}

body.system.cms.apps .index-video-thumb img {
  position: relative;
}

.under-video-item {
  position: relative;
  /*width: calc(50% + 60px);*/
  width: calc(50% - 20px);
  max-width: 540px;
  margin-left: -90px;
  margin-right: 60px;
  margin-bottom: 30px;
}

.under-video-item iframe {
  display: none;
}

body.index .under-video-item {
  margin-left: 0;
}

body.index .under-video-item:nth-child(2n) {
  margin-right: 0;
  margin-left: auto;
}

@media only screen and (max-width: 959px) {
  .under-video-item {
    margin-right: auto;
    margin-left: auto;
    width: 83%;
    margin-bottom: 40px;
  }

  body.index .under-video-item {
    margin-left: auto;
  }

  body.index .under-video-item:nth-child(2n) {
    margin-right: auto;
  }
}

.under-video-item--left {
  margin-left: -90px;
  margin-right: auto;
}

body.index .under-video-item--left:nth-child(2n) {
  margin-left: 0;
}

.under-video-item--center {
  margin-left: auto;
  margin-right: auto;
}

.under-video-item--right {
  margin-left: auto;
  margin-right: -90px;
}

body.system.cms.apps .under-video-item--left,
body.system.cms.apps .under-video-item--center,
body.system.cms.apps .under-video-item--right {
  margin: 0 !important;
}

.under-video-item a {
  display: block;
}

.under-video-item>.cp-inner {
  position: absolute;
  bottom: -20px;
  left: -20px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
  align-items: flex-end;
  min-width: 220px;
  min-height: 140px;
  padding: 30px 38px;
  border-radius: 6px;
  background: #30383B;
  line-height: 1.86;
  font-weight: 500;
  color: #fff;
  z-index: 2;
}

body.system.cms.apps .under-video-item>.cp-inner {
  position: relative;
  bottom: 0;
  left: 0;
}

@media only screen and (max-width: 959px) {

  .under-video-item--left,
  .under-video-item--right,
  body.index .under-video-item--left:nth-child(2n) {
    margin-left: auto;
    margin-right: auto;
  }

  .under-video-item>.cp-inner {
    bottom: -20px;
    left: -20px;
    min-width: 50%;
    min-height: 80px;
    padding: 15px 20px;
    border-radius: 4px;
    font-size: 1.3rem;
  }
}

.under-video-thumb {
  position: relative;
  padding-top: 56.25%;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #000;
  border-radius: 6px;
}

body.system.cms.apps .under-video-thumb {
  padding-top: 0;
  background-color: #fff;
}

.under-video-thumb:hover::before {
  background: #30383B;
}

.under-video-thumb:hover::after {
  border-left-color: #fff;
}

.under-video-thumb::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: calc(50% - 2.5vw);
  left: calc(50% - 2.5vw);
  display: block;
  height: 5vw;
  width: 5vw;
  background: #fff;
  border-radius: 50%;
  transition: background-color .2s;
}

@media only screen and (max-width: 959px) {
  .under-video-thumb::before {
    top: calc(50% - 5vw);
    left: calc(50% - 5vw);
    height: 10vw;
    width: 10vw;
  }
}

.under-video-thumb::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: calc(50% - .5vw);
  left: calc(50% - .5vw);
  display: block;
  height: 0;
  width: 0;
  border-top: .5vw solid transparent;
  border-bottom: .5vw solid transparent;
  border-left: 1vw solid #30383B;
  transition: border-left-color .2s;
}

@media only screen and (max-width: 959px) {
  .under-video-thumb::after {
    top: calc(50% - 1vw);
    left: calc(50% - 1vw);
    border-top: 1vw solid transparent;
    border-bottom: 1vw solid transparent;
    border-left: 2vw solid #30383B;
  }
}

.under-video-thumb img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover; object-position: bottom;';
  opacity: .7;
}

body.system.cms.apps .under-video-thumb img {
  position: relative;
}

.index-btn-col2 {
  margin-top: 40px;
  margin-bottom: 40px;
}

.index-btn-col2 .index-btn__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: 0;
  list-style: none;
}

.index-btn-col2 .index-btn__image {
  overflow: hidden;
}

.index-btn-col2 .index-btn__image-inner {
  transition: transform .4s;
}

.index-btn-col2 .index-btn__image img {
  width: 100%;
}

.index-btn-col2 .index-btn__text {
  position: relative;
  padding: 35px 30px 20px 30px;
  font-family: "Noto Serif JP", serif;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.778;
}

@media only screen and (max-width: 959px) {
  .index-btn-col2 .index-btn__text {
    padding: 20px 0 15px 0;
    font-size: 2rem;
  }
}

.index-btn-col2 .index-btn__text::before {
  content: "";
  position: absolute;
  left: 30px;
  bottom: 0;
  width: 20px;
  height: 1px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .index-btn-col2 .index-btn__text::before {
    left: 0;
  }
}

.index-btn-col2 .index-btn__item {
  width: calc(50% - 30px);
  margin-right: 60px;
  margin-bottom: 40px;
}

.index-btn-col2 .index-btn__item:nth-child(2n) {
  margin-right: 0;
}

@media only screen and (max-width: 959px) {
  .index-btn-col2 .index-btn__item {
    width: 100%;
    margin-right: 0;
  }
}

.index-btn-col2 .index-btn__item>a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  color: #333;
}

.index-btn-col2 .index-btn__item>a:hover {
  text-decoration: none;
}

.index-btn-col2 .index-btn__item>a:hover .index-btn__image-inner {
  transform: scale(1.2);
}

.index-btn-col2 .index-btn__list {
  padding: 20px 30px 0 30px;
  font-size: 1.6rem;
  line-height: 1.5;
}

@media only screen and (max-width: 959px) {
  .index-btn-col2 .index-btn__list {
    padding: 20px 0 0 5px;
  }
}

.index-btn-col2 .index-btn__list ul {
  margin-left: 0;
  list-style: none;
}

.index-btn-col2 .index-btn__list li {
  position: relative;
  margin-top: 10px;
  padding-left: 25px;
}

.index-btn-col2 .index-btn__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  display: block;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #063F83;
}

.index-btn-col2 .index-btn__list a {
  color: #333;
}

.index-btn-col3 {
  margin-top: 40px;
  margin-bottom: 40px;
}

.index-btn-col3 .index-btn__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: 0;
  list-style: none;
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.778;
}

.index-btn-col3 .index-btn__image {
  overflow: hidden;
}

.index-btn-col3 .index-btn__image-inner {
  transition: transform .4s;
}

.index-btn-col3 .index-btn__image img {
  width: 100%;
}

.index-btn-col3 .index-btn__text {
  position: relative;
  padding: 35px 30px 20px 30px;
}

@media only screen and (max-width: 959px) {
  .index-btn-col3 .index-btn__text {
    padding: 20px 0 15px 0;
  }
}

.index-btn-col3 .index-btn__text::before {
  content: "";
  position: absolute;
  left: 30px;
  bottom: 0;
  width: 20px;
  height: 1px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .index-btn-col3 .index-btn__text::before {
    left: 0;
  }
}

.index-btn-col3 a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  color: #333;
}

.index-btn-col3 a:hover {
  text-decoration: none;
}

.index-btn-col3 a:hover .index-btn__image-inner {
  transform: scale(1.2);
}

.index-btn-col3 .index-btn__item {
  width: 33.33%;
  margin-bottom: 40px;
}

@media only screen and (max-width: 959px) {
  .index-btn-col3 .index-btn__item {
    width: 100%;
  }
}

.index-btn__item>a[target="_blank"]::after {
  content: none;
}

.index-btn__item>a[target="_blank"] .index-btn__text .cp-inner::after {
  content: "";
  display: inline-block;
  width: 11px;
  min-width: 11px;
  height: 11px;
  margin-left: 4px;
  background: url(/albums/css/basic1-blocks1/abm00002858.svg) no-repeat center center;
  background-size: 11px 11px;
}

.image-btn {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: 0;
  list-style: none;
  font-family: "Noto Serif JP", serif;
  font-size: 1.8rem;
  line-height: 1.778;
  margin-top: 40px;
  margin-bottom: 40px;
}

.image-btn a {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 140px;
  padding: 15px 30px;
  border: 1px solid #ddd;
}

@media only screen and (max-width: 959px) {
  .image-btn a {
    min-height: 120px;
    padding: 10px 20px;
  }
}

.image-btn a:hover::before {
  opacity: 0;
}

.image-btn a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(#EDEDED, #FFFFFF, #F5F2F2);
}

.image-btn a img {
  position: relative;
  z-index: 1;
}

.image-btn-col1 .image-btn__item {
  width: 100%;
  margin-bottom: 30px;
}

.image-btn-col2 .image-btn__item {
  width: calc(50% - 15px);
  margin-right: 30px;
  margin-bottom: 30px;
}

.image-btn-col3 .image-btn__item {
  width: calc(33.33% - 20px);
  margin-right: 30px;
  margin-bottom: 30px;
}

.image-btn-col4 .image-btn__item {
  width: calc(25% - 21px);
  margin-right: 28px;
  margin-bottom: 30px;
}

@media only screen and (max-width: 959px) {

  .image-btn-col1 .image-btn__item,
  .image-btn-col2 .image-btn__item,
  .image-btn-col3 .image-btn__item,
  .image-btn-col4 .image-btn__item {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
}

.image-btn-col2 .image-btn__item:nth-child(2n) {
  margin-right: 0;
}

.image-btn-col3 .image-btn__item:nth-child(3n) {
  margin-right: 0;
}

.image-btn-col4 .image-btn__item:nth-child(4n) {
  margin-right: 0;
}

@media only screen and (max-width: 959px) {
  .cp-border {
    position: relative;
    left: -4vw;
    width: calc(100% + 8vw);
    margin: 40px auto;
  }
}

.full-img {
  display: -ms-flexbox;
  display: flex;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 0 16px;
  text-align: center;
}

.full-img .cp-inner {
  width: 100%;
}

@media only screen and (max-width: 1769px) {
  .full-img {
    margin-left: calc(50% - 50vw - 90px);
    margin-right: calc(50% - 50vw + 90px);
  }
}

@media only screen and (max-width: 959px) {
  .full-img {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 0;
  }
}

.full-img img {
  max-width: none;
  width: 100%;
  border-radius: 0 !important;
}

.decoration-img {
  z-index: 11;
}

.decoration-img--01 {
  position: absolute;
  left: -20px;
  top: 440px;
  z-index: 1;
  width: 125px;
  height: 105px;
  background: url(/albums/css/basic1-blocks1/abm00000021.png) no-repeat center center;
  background-size: 125px 105px;
  pointer-events: none;
}

@media only screen and (max-width: 959px) {
  .decoration-img--01 {
    display: none;
  }
}

.decoration-img--02 {
  position: absolute;
  z-index: 2;
  right: -16px;
  bottom: -1300px;
  width: 127px;
  height: 70px;
  background: url(/albums/css/basic1-blocks1/abm00000022.png) no-repeat center right;
  background-size: 127px 70px;
  pointer-events: none;
}

@media only screen and (max-width: 959px) {
  .decoration-img--02 {
    display: none;
  }
}

.decoration-img--03 {
  position: absolute;
  left: 0;
  top: 2300px;
  display: block;
  width: 125px;
  height: 66px;
  background: url(/albums/css/basic1-blocks1/abm00000023.png) no-repeat left top;
  background-size: 125px 66px;
  pointer-events: none;
}

@media only screen and (max-width: 959px) {
  .decoration-img--03 {
    display: none;
  }
}

.top-visual {
  position: relative;
  margin-bottom: 16px;
  overflow: hidden;
  /*
  height: calc(100vh - 32px);
  min-height: 885px;
  */
  height: 100vh;
  min-height: 1080px;
}

@media only screen and (max-width: 959px) {
  .top-visual {
    min-height: 0;
    height: auto;
    margin-bottom: 0;
  }
}

.top-visual__inner .slick-slide {
  overflow: hidden;
  /*
  height: calc(100vh - 32px);
  min-height: 885px;
  */
  height: 100vh;
  min-height: 1080px;
}

@media only screen and (max-width: 959px) {
  .top-visual__inner .slick-slide {
    min-height: 0;
    height: 56.25vw;
  }
}

.top-visual__inner .slick-slide img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover; object-position: bottom;';
}

.top-visual__inner .slick-slide video {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 177.77777778vh;
  height: 56.25vw;
  min-height: 100%;
  min-width: 100%;
  object-fit: cover;
}

@media only screen and (max-width: 959px) {
  .top-visual__inner .slick-slide video {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    transform: translate(0, 0);
    width: 100%;
    height: 100%;
    min-height: inherit;
    min-width: inherit;
  }
}

.slide-video__inner {
  position: relative;
  overflow: hidden;
  width: 100vw;
  height: 100vh;
  min-height: 100%;
}

@media only screen and (max-width: 959px) {
  .slide-video__inner {
    position: static;
    height: auto;
  }
}

.top-visual__btn {
  position: absolute;
  left: 20px;
  /*top: 823px;*/
  top: 760px;
  width: 100%;
  max-width: 220px;
  font-weight: 500;
  font-size: 15px;
  font-size: 1.5rem;
}

body.system.cms.apps .top-visual__btn {
  position: relative;
  left: 0;
  top: 0;
}

@media only screen and (max-width: 959px) {
  .top-visual__btn {
    display: none;
  }
}

.top-visual__btn a {
  position: relative;
  display: block;
  padding: 5px 19px 5px 19px;
  border: 1px solid rgba(255, 255, 255, 0.6);
  color: #fff;
}

body.system.cms.apps .top-visual__btn a {
  background: #0B59AD;
}

@media only screen and (max-width: 959px) {
  .top-visual__btn a {
    padding: 6px 15px;
    text-align: center;
  }
}

.top-visual__btn a:hover {
  background: #0B59AD;
  border-color: #0B59AD;
  text-decoration: none;
}

.top-visual__btn a::before {
  content: "";
  position: absolute;
  right: 16px;
  top: 18px;
  width: 8px;
  height: 2px;
  background: #fff;
  transform: rotate(45deg);
  border-radius: 2px 0 0 2px;
}

.top-visual__btn a::after {
  content: "";
  position: absolute;
  right: 16px;
  top: 22px;
  width: 8px !important;
  min-width: 8px !important;
  height: 2px;
  background: #fff;
  transform: rotate(-45deg);
  border-radius: 2px 0 0 2px;
}

.top-visual__nav {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 5;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 86px;
  pointer-events: auto;
  /*display: none;
    &.is-show {
      display: flex;
    }*/
}

body.system.cms.apps .top-visual__nav {
  position: relative;
  height: auto;
}

.top-visual__nav-wrap {
  position: fixed;
  bottom: 0;
  left: 16px;
  width: calc(100% - 32px);
  z-index: 6;
  overflow: hidden;
  pointer-events: none;
  height: calc(100% - 16px);
  border-bottom: 16px solid #BCCEE3;
}

body.system.cms.apps .top-visual__nav-wrap {
  position: relative;
}

@media only screen and (max-width: 959px) {
  .top-visual__nav {
    display: none;
  }
}

.top-visual__nav-item {
  position: relative;
  width: calc(100% / 7);
}

.top-visual__nav-item>svg {
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none;
  width: 24px;
  height: 30px;
}


.top-visual__nav-item-01 .is-active .top-visual__nav-head::before,
.top-visual__nav-item-01 .top-visual__nav-list a::before {
  background: #A4D9D8;
}

.top-visual__nav-item-01>svg {
  fill: #A4D9D8;
}

.top-visual__nav-item-01 .top-visual__nav-inner>svg {
  fill: #A4D9D8;
  opacity: .6;
}

.top-visual__nav-item-02 .is-active .top-visual__nav-head::before,
.top-visual__nav-item-02 .top-visual__nav-list a::before {
  background-color: #B6DAA4;
}

.top-visual__nav-item-02>svg {
  fill: #B6DAA4;
}

.top-visual__nav-item-02 .top-visual__nav-inner>svg {
  fill: #B6DAA4;
  opacity: .6;
}

.top-visual__nav-item-03 .is-active .top-visual__nav-head::before,
.top-visual__nav-item-03 .top-visual__nav-list a::before {
  background: #DEB5B4;
}

.top-visual__nav-item-03>svg {
  fill: #DEB5B4;
}

.top-visual__nav-item-03 .top-visual__nav-inner>svg {
  fill: #DEB5B4;
  opacity: .6;
}

.top-visual__nav-item-04 .is-active .top-visual__nav-head::before,
.top-visual__nav-item-04 .top-visual__nav-list a::before {
  background: #6FC7E7;
}

.top-visual__nav-item-04>svg {
  fill: #6FC7E7;
}

.top-visual__nav-item-04 .top-visual__nav-inner>svg {
  fill: #C1E3F1;
  opacity: .6;
}

.top-visual__nav-item-05 .is-active .top-visual__nav-head::before,
.top-visual__nav-item-05 .top-visual__nav-list a::before {
  background: #909BC1;
}

.top-visual__nav-item-05>svg {
  fill: #909BC1;
}

.top-visual__nav-item-05 .top-visual__nav-inner>svg {
  fill: #E2E5F1;
  opacity: .6;
}

.top-visual__nav-item-06 .is-active .top-visual__nav-head::before,
.top-visual__nav-item-06 .top-visual__nav-list a::before {
  background: #C49CAE;
}

.top-visual__nav-item-06>svg {
  fill: #C49CAE;
}

.top-visual__nav-item-06 .top-visual__nav-inner>svg {
  fill: #EDDFE4;
  opacity: .6;
}

.top-visual__nav-item-07 .is-active .top-visual__nav-head::before,
.top-visual__nav-item-07 .top-visual__nav-list a::before {
  background: #F6C29C;
}

.top-visual__nav-item-07>svg {
  fill: #F6C29C;
}

.top-visual__nav-item-07 .top-visual__nav-inner>svg {
  fill: #EDDFE4;
  opacity: .6;
}


.top-visual__nav-inner {
  position: absolute;
  top: 0;
  width: 100%;
  background: #fff;
  transition: top .3s, border-radius .3s;
}

body.system.cms.apps .top-visual__nav-inner {
  position: relative;
}

@media only screen and (max-width: 959px) {
  .top-visual__nav-inner {
    position: relative;
    height: 100%;
  }
}

.top-visual__nav-inner>svg {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  width: 18px;
  height: 23px;
}

.top-visual__nav-head {
  position: relative;
  height: 86px;
  padding-top: 20px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  transition: height .2s;
}

body.en .top-visual__nav-head {
  font-family: "Noto Sans JP", sans-serif;
}

body.system.cms.apps .top-visual__nav-head {
  height: auto;
}

@media only screen and (max-width: 959px) {
  .top-visual__nav-head {
    height: 100%;
    padding-top: 0;
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.top-visual__nav-head a {
  position: relative;
  z-index: 1;
  display: block;
  height: 47px;
  padding-top: 8px;
  text-align: center;
  color: #333;
}

@media only screen and (max-width: 959px) {
  .top-visual__nav-head a {
    height: 100%;
    padding-top: 12px;
    padding-bottom: 22px;
  }
}

/* NEWS */
.is-new::after {
  position: absolute;
  content: 'NEW';
  top: 10px;
  left: 0;
  right: 0;
  margin: 0 auto;
  color: #fff;
  background: #E74143;
  font-size: 1.2rem;
  font-weight: 700;
  width: 40px;
  line-height: 18px;
  letter-spacing: .01em;
  text-align: center;
  border-radius: 12px;
  font-family: "Noto Sans JP", Helvetica, Arial, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}

.top-visual__nav-list li.is-new::after {
  top: 7px;
  left: 115px;
  right: inherit;
}

@media screen and (min-width: 960px) and (max-width: 1600px) {
  .top-visual__nav-list li.is-new::after {
    left: 7.9vw;
  }
}

/* NEWSここまで */

.top-visual__nav-head::before {
  content: "";
  position: absolute;
  bottom: 8px;
  left: 50%;
  width: 1px;
  height: 14px;
  margin-left: 1px;
  background: #999;
  transition: left .3s, width .3s, height .3s ease .3s, margin .3s, background-color .3s;
}

@media only screen and (max-width: 959px) {
  .top-visual__nav-head::before {
    width: 26px;
    bottom: 50%;
    margin-left: -13px;
    margin-bottom: -14px;
  }
}

.top-visual__nav-list {
  padding-left: 11.3%;
  padding-bottom: 31px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
}

body.en .top-visual__nav-list {
  font-family: "Noto Sans JP", sans-serif;
}

@media only screen and (max-width: 959px) {
  .top-visual__nav-list {
    display: none;
  }
}

.top-visual__nav-list ul {
  list-style: none;
}

.top-visual__nav-list li {
  margin-top: 4px;
}

.top-visual__nav-list a {
  position: relative;
  display: inline-block;
  padding-left: 25px;
  color: #333;
}

.top-visual__nav-list a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  display: block;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: #333;
  pointer-events: none;
}

.top-visual__nav-list a::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 13px;
  display: block;
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  pointer-events: none;
}

.top-visual__nav-inner.is-active {
  border-radius: 0 8px 0 0;
}

.top-visual__nav-inner.is-active .top-visual__nav-head {
  height: 80px;
}

.top-visual__nav-inner.is-active .top-visual__nav-head::before {
  left: 11.3%;
  width: 77.4%;
  height: 1px;
  margin-left: 0;
  transition: left .3s ease .3s, width .3s ease .3s, height .3s, margin .3s ease .3s, background-color .3s;
}

.top-visual__nav-inner.is-active .top-visual__nav-campus {
  opacity: 1;
}

.top-visual__arrow {
  position: absolute;
  right: 55px;
  /*bottom: 120px;*/
  bottom: 290px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media only screen and (max-width: 959px) {
  .top-visual__arrow {
    right: 4vw;
    bottom: 15px;
    width: 94px;
  }
}

.top-visual__arrow>div {
  transition: .2s;
  cursor: pointer;
}

.top-visual__arrow>div:hover rect {
  fill: #fff;
}

.top-visual__arrow>div:hover path {
  fill: #222;
}

.top-visual__arrow svg {
  vertical-align: top;
  width: 40px;
  height: 40px;
}

.top-visual__arrow svg * {
  transition: .2s;
}

.top-sp-nav {
  display: none;
  background: linear-gradient(45deg, #003C7C, #063F83);
}

body.system.cms.apps .top-sp-nav {
  display: block;
}

@media only screen and (max-width: 959px) {
  .top-sp-nav {
    display: block;
  }
}

.top-sp-nav ul {
  list-style: none;
  margin-left: 0;
}

.top-sp-nav li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.top-sp-nav a {
  position: relative;
  display: block;
  padding: 10px 4vw;
  color: #fff;
}

.top-sp-nav a:hover,
.top-sp-nav li:last-child a {
  text-decoration: none;
  background: #fff;
  color: #222;
}

.top-sp-nav a:hover::before,
.top-sp-nav li:last-child a::before {
  border-color: #222;
}

.top-sp-nav a::before {
  content: "";
  position: absolute;
  top: 21px;
  right: 4vw;
  width: 8px;
  height: 8px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  pointer-events: none;
}

.top-important {
  position: relative;
  z-index: 5;
  padding: 75px 40px 65px 40px;
  transition: padding .2s;
  background: #F0F4F5;
}

@media only screen and (max-width: 959px) {
  .top-important {
    padding: 0 0 5px 0;
  }
}


.top-important__text {
  position: absolute;
  top: 10px;
  right: 10px;
  text-indent: -1em;
  padding-left: 1em;
  font-size: 1.4rem;
}

@media only screen and (max-width: 959px) {
  .top-important__text {
    left: 4%;
    right: 4%;
    line-height: 1.5;
    font-size: 1.3rem;
    text-align: right;
  }
}

.top-important .news-all-wrap {
  width: 100%;
}

.top-important__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 1260px;
  margin: 0 auto;
  padding: 35px 30px 15px 30px;
  background: #fff;
  border-radius: 5px;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.16);
}

@media only screen and (max-width: 959px) {
  .top-important__inner {
    padding: 40px 4% 20px;
    border-radius: 0;
    box-shadow: none;
  }
}

.top-important__news {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 36px;
  border-radius: 2px;
  line-height: 1.8;
}

@media only screen and (max-width: 959px) {
  .top-important__news {
    position: relative;
    display: block;
    margin-bottom: 10px;
    padding: 10px;
    border: 2px solid #E74143;
    border-radius: 0;
    background: #fff;
  }
}

.top-important__news-head {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 172px;
  color: #E74143;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  border-left: 4px solid #E74143;
}

@media only screen and (max-width: 959px) {
  .top-important__news-head {
    width: 100%;
    padding: 6px 3px;
    border-left: none;
    background: #E74143;
    color: #fff;
  }
}

.top-important__news-inner {
  width: calc(100% - 172px);
  padding: 15px 0 0 25px;
}

@media only screen and (max-width: 959px) {
  .top-important__news-inner {
    width: 100%;
    padding: 15px 0 0 0;
  }
}

.top-important__news-item {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}

@media only screen and (max-width: 959px) {
  .top-important__news-item {
    display: block;
  }
}

.top-important__news-item a {
  display: inline-block;
}

.top-important__news-item a:hover {
  text-decoration: none;
  color: #0B59AD;
}

.top-important__news-category {
  width: 134px;
  padding-top: 3px;
  font-weight: 500;
  font-size: 1.3rem;
}

.top-important__news-category span {
  display: block;
  text-align: center;
  border-radius: 2px;
  color: #fff;
}

.top-important__news-title {
  padding-left: 12px;
}

@media only screen and (max-width: 959px) {
  .top-important__news-title {
    padding-left: 0;
  }
}

.top-important__bnr {
  width: calc(50% - 10px);
  margin-bottom: 20px;
  margin-right: 20px;
  line-height: 1.6;
}

@media only screen and (max-width: 959px) {
  .top-important__bnr {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }

  .top-important__bnr:last-child {
    margin-bottom: 0;
  }
}

.top-important__bnr:nth-of-type(2n+1) {
  margin-right: 0;
}

.top-important__bnr a {
  position: relative;
  display: block;
  height: 100%;
  padding: 14px 28px 14px 20px;
  border-radius: 2px;
  background: #E74143;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
}

.top-important__bnr-blue a {
  background: #0B59AD;
}

@media only screen and (max-width: 959px) {
  .top-important__bnr a {
    padding: 14px 30px 14px 20px;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.top-important__bnr a:hover {
  background: #B4181A;
  text-decoration: none;
}

.top-important__bnr-blue a:hover {
  background: #063F83;
}

.top-important__bnr a::before {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  display: block;
  width: 12px;
  height: 12px;
  margin-top: -6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

@media only screen and (max-width: 959px) {
  .top-important__bnr a::before {
    right: 15px;
    top: 50%;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
  }
}

.top-admission-block {
  display: -ms-flex;
  display: flex;
  background: #fff;
}

.top-admission-block__text-area {
  display: -ms-flex;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 50%;
  padding: 20px 40px;
}

.top-admission-block__catch-wrap {
  position: relative;
  display: table;
  margin: 0 auto;
}

.top-admission-block__shukutokuma {
  position: absolute;
  right: 100%;
  top: 10px;
  width: 126px;
  height: 60px;
  margin-right: 30px;
}

.top-admission-block__catch {
  font-family: "Noto Serif JP", serif;
  font-size: 5rem;
  font-weight: 500;
}

.top-admission-block__head {
  margin-top: 15px;
  text-align: center;
  font-weight: 700;
  font-size: 2.8rem;
}

.top-admission-block__text {
  margin-top: 35px;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 500;
}

.top-admission-block__btn {
  width: 100%;
  max-width: 680px;
  margin: 45px auto 0 auto;
  font-size: 1.8rem;
  font-weight: 500;
}

[data-area="content"] .top-admission-block__btn ul {
  display: -ms-flex;
  display: flex;
  flex-wrap: wrap;
  margin-left: 0;
}

.top-admission-block__btn li {
  width: calc(33.33% - 6px);
  margin-right: 9px;
  list-style: none;
  line-height: 1.4;
}

.top-admission-block__btn li:nth-child(3n) {
  margin-right: 0;
}

.top-admission-block__btn a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  padding: 10px;
  border: 1px solid #333;
  color: #333;
  text-align: center;
}

.top-admission-block__btn a:hover {
  text-decoration: none;
  background: #0B59AD;
  border-color: #0B59AD;
  color: #fff;
}

.top-admission-block__image {
  position: relative;
  width: 50%;
  padding-top: 28.6%;
  overflow: hidden;
}

.top-admission-block__image img {
  position: absolute;
  left: 50%;
  top: 50%;
  width: auto;
  max-width: none;
  height: 100%;
  transform: translate(-50%, -50%);
}

body.system.cms.apps .top-admission-block__image img {
  position: relative;
  left: 0;
  top: 0;
  transform: none;
}

@media only screen and (max-width: 959px) {
  .top-admission-block {
    display: block;
  }

  .top-admission-block__text-area {
    display: block;
    width: 100%;
    padding: 20px 4vw;
  }

  .top-admission-block__shukutokuma {
    top: -10px;
    margin-right: -90px;
  }

  .top-admission-block__catch {
    padding-left: 100px;
    font-size: 3.6rem;
  }

  .top-admission-block__head {
    margin-top: 10px;
    padding-left: 100px;
    font-size: 2rem;
  }

  .top-admission-block__text {
    margin-top: 25px;
  }

  .top-admission-block__image {
    width: 100%;
    padding-top: 0;
  }

  .top-admission-block__image img {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    max-width: 100%;
    height: auto;
    transform: none;
  }

  .top-admission-block__btn {
    margin-top: 20px;
    font-size: 1.6rem;
  }

  .top-admission-block__btn li {
    width: 100%;
    margin-top: 6px;
    margin-right: 0;
    list-style: none;
  }
}

.top-admission-bnr {
  padding-top: 90px;
  background: #fff;
}

.top-admission-bnr__inner {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  max-width: 1370px;
  margin: 0 auto;
  padding: 0 40px 60px 40px;
}

@media only screen and (max-width: 959px) {
  .top-admission-bnr {
    padding-top: 20px;
  }

  .top-admission-bnr__inner {
    display: block;
    padding: 20px 4vw 50px;
  }
}

.top-admission-bnr__item {
  width: 100%;
  margin: 0 15px;
}

@media only screen and (max-width: 959px) {
  .top-admission-bnr__item {
    margin: 0 0 20px;
  }
}

.top-admission-bnr__image {
  overflow: hidden;
  border-radius: 6px;
}

@media only screen and (max-width: 959px) {
  .top-admission-bnr__image {
    border-radius: 4px;
  }
}

.top-admission-bnr__image-inner {
  position: relative;
  transition: transform .4s;
}

.top-admission-bnr__image-inner::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  transition: opacity .4s;
}

body.system.cms.apps .top-admission-bnr__image-inner::before {
  content: none;
}

.top-admission-bnr__image img {
  width: 100%;
}

.top-admission-bnr__text {
  margin-top: 5px;
  font-size: 2rem;
  font-weight: 700;
}

@media only screen and (max-width: 959px) {
  .top-admission-bnr__text {
    font-size: 1.8rem;
    text-align: center;
  }
}

.top-admission-bnr a {
  display: block;
  color: #333;
}

.top-admission-bnr a:hover {
  text-decoration: none;
}

.top-admission-bnr a:hover .top-admission-bnr__image-inner {
  transform: scale(1.2);
}

.top-admission-bnr a:hover .top-admission-bnr__image-inner::before {
  opacity: .3;
}

.top-admission-info {
  position: relative;
  background: #F0F4F5;
}

.top-admission-info .news-all-wrap {
  width: 100%;
}

.top-admission-info__inner {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 1340px;
  margin: 0 auto;
  padding: 50px 40px 30px;
}

@media only screen and (max-width: 959px) {
  .top-admission-info__inner {
    display: block;
    padding: 43px 4vw 30px;
  }
}

.top-admission-info__head {
  width: 100%;
  margin-bottom: 40px;
}

@media only screen and (max-width: 959px) {
  .top-admission-info__head {
    margin-bottom: 20px;
    text-align: center;
  }
}

.top-admission-info__head-01 {
  display: inline-block;
  font-family: "Noto Serif JP", serif;
  font-size: 3.6rem;
  letter-spacing: 0.5rem;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .top-admission-info__head-01 {
    display: block;
    font-size: 27px;
    font-size: 2.7rem;
    letter-spacing: 0.3rem;
    line-height: 1.6;
  }
}

.top-admission-info__head-02 {
  display: inline-block;
}

.top-admission-info__items {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.top-admission-info__item {
  width: calc(25% - 9px);
  margin-right: 12px;
  background: #fff;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.16);
}

@media only screen and (max-width: 959px) {
  .top-admission-info__item {
    display: none;
    width: 100%;
    margin-right: 0;
  }
}

.top-admission-info__item:nth-child(4n) {
  margin-right: 0;
}

.top-admission-info__item a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  padding: 25px 25px;
  color: #333;
}

@media only screen and (max-width: 959px) {
  .top-admission-info__item a {
    padding: 20px 4%;
  }
}

.top-admission-info__item a:hover {
  text-decoration: none;
}

.top-admission-info__item a:hover .top-admission-info__title {
  color: #0B59AD;
}

.top-admission-info__title {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  margin-bottom: 15px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.625;
  transition: .2s;
}

.top-admission-info__date {
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 500;
  color: #0B59AD;
}

.top-admission-info__category {
  margin-right: 12px;
  padding: 2px 14px;
  color: #fff;
  border-radius: 2px;
}

.top-admission-info__arrow {
  position: absolute;
  right: 40px;
  top: 93px;
  width: 94px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media only screen and (max-width: 959px) {
  .top-admission-info__arrow {
    right: 4vw;
    top: auto;
    left: 4vw;
    bottom: 30px;
    width: calc(100% - 8vw);
    margin: 0 auto;
    pointer-events: none;
  }
}

.top-admission-info__arrow>div {
  transition: .2s;
  cursor: pointer;
}

@media only screen and (max-width: 959px) {
  .top-admission-info__arrow>div {
    pointer-events: auto;
  }
}

.top-admission-info__arrow>div:hover rect {
  fill: #fff;
}

.top-admission-info__arrow>div:hover path {
  fill: #222;
}

.top-admission-info__arrow svg {
  vertical-align: top;
}

.top-admission-info__arrow svg * {
  transition: .2s;
}

.top-admission-info__btn {
  margin-top: 40px;
  margin-left: auto;
  margin-right: auto;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .top-admission-info__btn {
    width: 100%;
    margin-top: 20px;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: 400;
  }
}

.top-admission-info__btn a {
  position: relative;
  display: inline-block;
  padding-top: 40px;
  color: #0B59AD;
}

@media only screen and (max-width: 959px) {
  .top-admission-info__btn a {
    padding: 9px;
    width: calc(100% - 98px);
    background: #0B59AD;
    color: #fff;
  }
}

@media only screen and (max-width: 959px) {
  .top-admission-info__btn a:hover {
    text-decoration: none;
    color: #222;
    background-color: #fff;
  }
}

.top-admission-info__btn a::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 20px;
  display: block;
  width: 35px;
  height: 1px;
  margin-left: -17px;
  background: #0B59AD;
}

@media only screen and (max-width: 959px) {
  .top-admission-info__btn a::before {
    content: none;
  }
}

.top-admission-info__btn a::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 20px;
  display: block;
  width: 35px;
  height: 1px;
  margin-left: -17px;
  background: #0B59AD;
  transform: rotate(90deg);
}

@media only screen and (max-width: 959px) {
  .top-admission-info__btn a::after {
    content: none;
  }
}

/*top-admission-block*/

.top-spirits {
  margin-bottom: 16px;
  padding: 60px 0 0 0;
  background: #fff;
}

@media only screen and (max-width: 959px) {
  .top-spirits {
    position: relative;
    margin-bottom: 10px;
    padding: 40px 0 0 0;
    background: #F0F4F5;
  }
}

.top-spirits__head {
  position: relative;
  max-width: 480px;
  margin: 0 auto;
  padding: 0 40px;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: 0.5rem;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .top-spirits__head {
    max-width: none;
    padding: 0;
    font-size: 27px;
    font-size: 2.7rem;
    line-height: 1.6;
  }
}

.top-spirits__head::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -25px;
  display: block;
  width: 1px;
  height: 20px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .top-spirits__head::before {
    content: none;
  }
}

.top-spirits__head-aside {
  margin-top: 40px;
  margin-bottom: 35px;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
}

@media only screen and (max-width: 959px) {
  .top-spirits__head-aside {
    margin-top: 20px;
    padding: 0 4vw;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6;
  }
}

.top-spirits__items {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media only screen and (max-width: 959px) {
  .top-spirits__items {
    padding: 0 4vw 95px 4vw;
  }
}

.top-spirits__item-wrap {
  position: relative;
  width: 50%;
}

@media only screen and (max-width: 959px) {
  .top-spirits__item-wrap {
    width: 100%;
  }
}

.top-spirits .top-spirits__item-wrap::before {
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

@media only screen and (max-width: 959px) {
  .top-spirits .top-spirits__item-wrap::before {
    height: 50vw;
  }
}

.top-spirits__item {
  max-height: 480px;
  height: 30vw;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

@media only screen and (max-width: 959px) {
  .top-spirits__item {
    max-height: none;
    height: auto;
    padding-top: 51%;
    background-size: 100% auto;
    background-position: top right;
  }
}

.top-spirits__item-inner {
  position: absolute;
  left: 0;
  top: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 50px 100px;
}

@media only screen and (max-width: 1449px) {
  .top-spirits__item-inner {
    padding: 3.5vw 7vw;
  }
}

@media only screen and (max-width: 959px) {
  .top-spirits__item-inner {
    position: static;
    padding: 0;
  }
}

.top-spirits__item-wrap:nth-child(1) .top-spirits__item-inner {
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.top-spirits__item-wrap:nth-child(2) .top-spirits__item-inner {
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-align: end;
  align-items: flex-end;
}

.top-spirits__item-wrap:nth-child(3) .top-spirits__item-inner {
  -ms-flex-pack: end;
  justify-content: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.top-spirits__item-wrap:nth-child(4) .top-spirits__item-inner {
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.top-spirits__text {
  width: 100%;
  max-width: 389px;
  padding: 18px 22px;
  margin-bottom: 6px;
  line-height: 1.6;
  background: #fff;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
}

@media only screen and (max-width: 1449px) {
  .top-spirits__text {
    padding: 1vw 1.5vw;
    font-size: 1vw;
  }
}

@media only screen and (max-width: 959px) {
  .top-spirits__text {
    max-width: none;
    margin-bottom: 0;
    padding: 30px 0 0 0;
    text-align: center;
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.top-spirits__btn {
  width: 100%;
  max-width: 389px;
  line-height: 1.6;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  letter-spacing: -0.1rem;
}

@media only screen and (max-width: 1449px) {
  .top-spirits__btn {
    font-size: 1.7vw;
  }
}

@media only screen and (max-width: 959px) {
  .top-spirits__btn {
    max-width: none;
    text-align: center;
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.top-spirits__btn a {
  position: relative;
  display: block;
  padding: 11px 46px 11px 22px;
  background: #fff;
  color: #333;
}

@media only screen and (max-width: 1449px) {
  .top-spirits__btn a {
    padding: 1vw 2vw 1vw 1.5vw;
  }
}

@media only screen and (max-width: 959px) {
  .top-spirits__btn a {
    padding: 11px 22px 50px 22px;
  }
}

@media only screen and (min-width: 960px) {
  .top-spirits__btn a:hover {
    background: #0B59AD;
    text-decoration: none;
    color: #fff;
  }

  .top-spirits__btn a:hover path {
    fill: #fff !important;
  }
}

.top-spirits__btn svg {
  position: absolute;
  right: 14px;
  top: 14px;
  width: 32px;
  height: 32px;
}

@media only screen and (max-width: 1449px) {
  .top-spirits__btn svg {
    right: 1.2vw;
    top: 1.2vw;
    width: 2.3vw;
    height: 2.3vw;
  }
}

@media only screen and (max-width: 959px) {
  .top-spirits__btn svg {
    right: 50%;
    top: auto;
    bottom: 13px;
    margin-right: -13px;
    width: 26px;
    height: 26px;
  }
}

.top-spirits__btn path {
  transition: fill .2s;
}

.top-spirits__number {
  margin-bottom: 60px;
}

@media only screen and (max-width: 1449px) {
  .top-spirits__number {
    margin-bottom: 4vw;
  }
}

@media only screen and (max-width: 959px) {
  .top-spirits__number {
    position: absolute;
    right: 8vw;
    top: 25vw;
    width: 50vw;
  }
}

.top-spirits__number strong {
  font-size: 130px;
  font-size: 13rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}

@media only screen and (max-width: 1449px) {
  .top-spirits__number strong {
    font-size: 9vw;
  }
}

.top-spirits__arrow {
  display: none;
  margin-left: auto;
}

@media only screen and (max-width: 959px) {
  .top-spirits__arrow {
    position: absolute;
    left: 50%;
    bottom: 30px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 94px;
    transform: translateX(-50%);
    line-height: 1;
  }
}

.top-spirits__arrow>div {
  transition: .2s;
  cursor: pointer;
}

.top-spirits__arrow>div:hover rect {
  fill: #fff;
}

.top-spirits__arrow>div:hover path {
  fill: #222;
}

.top-spirits__arrow svg {
  vertical-align: top;
}

.top-spirits__arrow svg * {
  transition: .2s;
}

.top-picks {
  position: relative;
  margin-top: 16px;
  background: #F0F4F5;
}

@media only screen and (max-width: 959px) {
  .top-picks {
    margin-top: 10px;
    overflow: hidden;
  }
}

.top-picks__inner {
  overflow: hidden;
  padding: 60px 40px 80px 40px;
}

@media only screen and (max-width: 959px) {
  .top-picks__inner {
    padding: 40px 4% 30px 4%;
  }
}

.top-picks__head {
  position: relative;
  max-width: 480px;
  margin: 0 auto 40px auto;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: 0.5rem;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .top-picks__head {
    margin-bottom: 20px;
    max-width: none;
    font-size: 27px;
    font-size: 2.7rem;
    letter-spacing: 0.3rem;
    line-height: 1.6;
  }
}

.top-picks__head::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -25px;
  display: block;
  width: 1px;
  height: 20px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .top-picks__head::before {
    content: none;
  }
}

.top-picks__categories {
  margin-bottom: 60px;
}

@media only screen and (max-width: 959px) {
  .top-picks__categories {
    margin-bottom: 40px;
  }
}

.top-picks__categories ul {
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
}

.top-picks__categories li {
  margin: 8px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
}

@media only screen and (max-width: 959px) {
  .top-picks__categories li {
    margin: 5px;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

[data-area="content"] .top-picks__categories a {
  display: block;
}

[data-area="content"] .top-picks__categories a:hover {
  text-decoration: none;
  opacity: .7;
}

[data-area="content"] .top-picks__categories span {
  padding: 9px 15px;
  color: #fff;
  border-radius: 100px;
}

@media only screen and (max-width: 959px) {
  [data-area="content"] .top-picks__categories span {
    padding: 4px 10px;
  }
}

.top-picks__items {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  width: 2100px;
  margin-left: calc(50% - 1050px);
  margin-right: calc(50% - 1050px);
}

@media only screen and (max-width: 959px) {
  .top-picks__items {
    width: 1020px;
    margin-left: calc(50% - 510px);
    margin-right: calc(50% - 510px);
  }
}

.top-picks .slick-slide {
  width: 320px;
  margin: 0 15px;
  opacity: 1;
  transition: opacity .2s;
  transform: translateX(-175px);
}

@media only screen and (max-width: 959px) {
  .top-picks .slick-slide {
    transform: translateX(0);
    opacity: .6;
    pointer-events: none;
  }
}

@media only screen and (max-width: 959px) {
  .top-picks .slick-active {
    opacity: 1;
    pointer-events: auto;
  }
}

.top-picks__item {
  background: #fff;
}

@media only screen and (max-width: 959px) {
  .top-picks__item {
    margin: 0 10px;
  }

/*   .top-picks__item:nth-child(3) a {
  pointer-events: none;
} */

  .top-picks__item:nth-child(3) img {
    opacity: .2;
  }

  .top-picks__item:nth-child(4),
  .top-picks__item:nth-child(5),
  .top-picks__item:nth-child(6) {
    display: none;
  }
}

.top-picks__item a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  color: #333;
}

.top-picks__item a[target="_blank"]::after {
  content: none;
}

.top-picks__item a:hover {
  text-decoration: none;
}

.top-picks__item a:hover .top-picks__thumb-inner {
  transform: scale(1.2);
}

.top-picks__item a:hover .top-picks__title {
  color: #0B59AD;
}

.top-picks__thumb {
  position: relative;
  overflow: hidden;
}

.top-picks__thumb-inner {
  padding-top: 56.25%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #eaeaea;
  transition: transform .4s;
}

.top-picks__thumb-inner[style*="null"] {
  background-image: url(/albums/css/basic1-blocks1/abm00006235.svg) !important;
  background-size: 40% auto !important;
}

.top-picks__thumb-category {
  position: absolute;
  bottom: 7px;
  left: 12px;
  display: flex;
  gap: 5px;
}

.top-picks__thumb-category span {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 68px;
  height: 68px;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
}

.top-picks__title {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 20px 30px 0 30px;
  font-size: 1.6rem;
  line-height: 1.63;
}

.top-picks__description {
  padding: 25px 30px 0 30px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.86;
}

.top-picks__tags {
  padding: 0 30px 10px 30px;
  font-size: 1.4rem;
  font-weight: 500;
}

.top-picks__tags span {
  display: inline-block;
  margin-right: 15px;
}

.top-picks__tags span.univ_sdgs_1,
.top-picks__tags span.univ_sdgs_2,
.top-picks__tags span.univ_sdgs_3,
.top-picks__tags span.univ_sdgs_4,
.top-picks__tags span.univ_sdgs_5,
.top-picks__tags span.univ_sdgs_6,
.top-picks__tags span.univ_sdgs_7,
.top-picks__tags span.univ_sdgs_8,
.top-picks__tags span.univ_sdgs_9,
.top-picks__tags span.univ_sdgs_10,
.top-picks__tags span.univ_sdgs_11,
.top-picks__tags span.univ_sdgs_12,
.top-picks__tags span.univ_sdgs_13,
.top-picks__tags span.univ_sdgs_14,
.top-picks__tags span.univ_sdgs_15,
.top-picks__tags span.univ_sdgs_16,
.top-picks__tags span.univ_sdgs_17 {
  display: none;
}

.top-picks__sdgs {
  display: flex;
  flex-wrap: wrap;
  padding: 0 30px 25px 30px;
}

.top-picks__sdgs span {
  background-size: cover;
  width: calc(100% / 6);
  height: 43px;
  font-size: 0;
}

.top-picks__btn {
  margin-top: 40px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .top-picks__btn {
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: 400;
  }
}

.top-picks__btn a {
  position: relative;
  display: inline-block;
  padding-top: 40px;
  color: #0B59AD;
}

@media only screen and (max-width: 959px) {
  .top-picks__btn a {
    padding: 9px;
    width: calc(100% - 98px);
    background: #0B59AD;
    color: #fff;
  }
}

@media only screen and (max-width: 959px) {
  .top-picks__btn a:hover {
    text-decoration: none;
    color: #222;
    background-color: #fff;
  }
}

.top-picks__btn a::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 20px;
  display: block;
  width: 35px;
  height: 1px;
  margin-left: -17px;
  background: #0B59AD;
}

@media only screen and (max-width: 959px) {
  .top-picks__btn a::before {
    content: none;
  }
}

.top-picks__btn a::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 20px;
  display: block;
  width: 35px;
  height: 1px;
  margin-left: -17px;
  background: #0B59AD;
  transform: rotate(90deg);
}

@media only screen and (max-width: 959px) {
  .top-picks__btn a::after {
    content: none;
  }
}

.top-picks__arrow-wrap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100px;
  width: 100%;
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 40px;
  pointer-events: none;
}

@media only screen and (max-width: 959px) {
  .top-picks__arrow-wrap {
    bottom: 30px;
    padding: 0 4vw;
  }
}

.top-picks__arrow {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 94px;
  margin-left: auto;
  pointer-events: auto;
}

@media only screen and (max-width: 959px) {
  .top-picks__arrow {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
    pointer-events: none;
  }
}

.top-picks__arrow>div {
  transition: .2s;
  cursor: pointer;
}

@media only screen and (max-width: 959px) {
  .top-picks__arrow>div {
    pointer-events: auto;
  }
}

.top-picks__arrow>div:hover rect {
  fill: #fff;
}

.top-picks__arrow>div:hover path {
  fill: #222;
}

.top-picks__arrow svg {
  vertical-align: top;
}

.top-picks__arrow svg * {
  transition: .2s;
}

.top-news-area {
  display: -ms-flexbox;
  display: flex;
  margin-top: 16px;
}

@media only screen and (max-width: 959px) {
  .top-news-area {
    display: block;
    margin-top: 10px;
  }
}

.top-news {
  width: calc(50% - 8px);
  margin-right: 16px;
  padding: 80px 40px 70px 40px;
  background: #fff;
}

@media only screen and (max-width: 959px) {
  .top-news {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
    padding: 20px 4% 40px 4%;
  }
}

.top-news__inner {
  max-width: 730px;
  margin: 0 auto;
}

.top-news__head {
  margin-bottom: 25px;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: 0.5rem;
}

@media only screen and (max-width: 959px) {
  .top-news__head {
    margin-bottom: 10px;
    font-size: 27px;
    font-size: 2.7rem;
    letter-spacing: 0.3rem;
    text-align: center;
  }
}

.top-news__item {
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #ccc;
  padding-top: 24px;
  padding-bottom: 24px;
}

@media only screen and (max-width: 959px) {
  .top-news__item {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.top-news__item:first-child {
  border-top: 1px solid #ccc;
}

.top-news__date-wrap {
  display: -ms-flex;
  display: flex;
  flex-direction: column-reverse;
}

@media only screen and (max-width: 959px) {
  .top-news__date-wrap {
    flex-direction: row;
  }
}

.top-news__date {
  width: 108px;
  margin-bottom: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
}

@media only screen and (max-width: 959px) {
  .top-news__date {
    width: 85px;
    margin-bottom: 8px;
    padding-top: 2px;
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.top-news__category {
  width: 134px;
}

@media only screen and (max-width: 959px) {
  .top-news__category {
    width: calc(100% - 85px);
    margin-bottom: 3px;
    padding-left: 0;
  }
}

.top-news__category span {
  display: block;
  padding: 0 6px;
  color: #fff;
  text-align: center;
  border-radius: 2px;
  font-size: 1.3rem;
  font-weight: 500;
}

@media only screen and (max-width: 959px) {
  .top-news__category span {
    display: table;
    min-width: 134px;
  }
}

.top-news__title {
  width: calc(100% - 108px - 134px);
  padding-left: 32px;
  font-weight: 500;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6;
}

.top-news__date-wrap+.top-news__title {
  width: calc(100% - 134px);
}

@media only screen and (max-width: 959px) {
  .top-news__title {
    width: 100%;
    padding-left: 0;
    font-weight: 500;
  }

  .top-news__date-wrap+.top-news__title {
    width: 100%;
  }
}

.top-news__title a {
  display: inline-block;
  color: #333;
}

.top-news__title a:hover {
  text-decoration: none;
  color: #0B59AD;
}

.top-news__btn {
  margin-top: 40px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .top-news__btn {
    margin-top: 30px;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: 400;
  }
}

.top-news__btn a {
  position: relative;
  display: inline-block;
  padding-top: 40px;
  color: #0B59AD;
}

@media only screen and (max-width: 959px) {
  .top-news__btn a {
    padding: 9px;
    width: calc(100% - 98px);
    background: #0B59AD;
    color: #fff;
  }
}

@media only screen and (max-width: 959px) {
  .top-news__btn a:hover {
    text-decoration: none;
    color: #222;
    background-color: #fff;
  }
}

.top-news__btn a::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 20px;
  display: block;
  width: 35px;
  height: 1px;
  margin-left: -17px;
  background: #0B59AD;
}

@media only screen and (max-width: 959px) {
  .top-news__btn a::before {
    content: none;
  }
}

.top-news__btn a::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 20px;
  display: block;
  width: 35px;
  height: 1px;
  margin-left: -17px;
  background: #0B59AD;
  transform: rotate(90deg);
}

@media only screen and (max-width: 959px) {
  .top-news__btn a::after {
    content: none;
  }
}

.top-events {
  width: calc(50% - 8px);
  background: #fff;
  padding: 80px 40px 70px 40px;
}

@media only screen and (max-width: 959px) {
  .top-events {
    width: 100%;
    padding: 20px 4% 40px 4%;
  }
}

.top-events__inner {
  max-width: 730px;
  margin: 0 auto;
}

.top-events__head {
  margin-bottom: 10px;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: 0.5rem;
}

@media only screen and (max-width: 959px) {
  .top-events__head {
    font-size: 27px;
    font-size: 2.7rem;
    letter-spacing: 0.3rem;
    text-align: center;
  }
}

.top-events__item {
  position: relative;
  display: block;
  margin-bottom: 13px;
}

.top-events__item a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  color: #333;
}

.top-events__item a:hover {
  text-decoration: none;
}

.top-events__item a:hover .top-events__title {
  color: #0B59AD;
}

.top-events__image {
  position: relative;
  width: 130px;
  padding-left: 10px;
  padding-top: 10px;
}

@media only screen and (max-width: 959px) {
  .top-events__image {
    width: 100px;
  }
}

.top-events__thumb {
  width: 120px;
  height: 120px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  border-radius: 12px;
}

.top-events__thumb[style*="null"] {
  background-image: url(/albums/css/basic1-blocks1/abm00006235.svg) !important;
  background-size: 40% auto !important;
  background-color: #ddd;
}

@media only screen and (max-width: 959px) {
  .top-events__thumb {
    width: 90px;
    height: 90px;
  }
}

.top-events__schedule {
  position: absolute;
  top: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border: 1px solid #0B59AD;
  border-radius: 12px;
  background: #fff;
  font-size: 11px;
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.6666;
  color: #063F83;
}

@media only screen and (max-width: 959px) {
  .top-events__schedule {
    width: 60px;
    height: 60px;
  }
}

.top-events__schedule-02 {
  margin-top: 3px;
  margin-bottom: 8px;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (max-width: 959px) {
  .top-events__schedule-02 {
    font-size: 20px;
    font-size: 2rem;
  }
}

.top-events__schedule-03 {
  display: none;
}

.top-events__text {
  position: relative;
  width: calc(100% - 160px);
  margin-top: 10px;
  margin-left: 30px;
  padding: 20px 30px 15px 30px;
  background: #F0EFFD;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.16);
}

@media only screen and (max-width: 959px) {
  .top-events__text {
    width: calc(100% - 120px);
    margin-left: 20px;
    padding: 15px 4% 15px 4%;
  }
}

.top-events__text::before {
  content: "";
  position: absolute;
  left: -24px;
  top: 21px;
  display: block;
  width: 0;
  height: 0;
  border-right: 24px solid #F0EFFD;
  border-top: 11px solid transparent;
  border-bottom: 11px solid transparent;
}

@media only screen and (max-width: 959px) {
  .top-events__text::before {
    left: -18px;
    top: 20px;
    border-right: 18px solid #F0EFFD;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
  }
}

.top-events__date-wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 13px;
  padding-bottom: 10px;
  border-bottom: 1px solid #CCC;
}

.top-events__category {
  margin-right: 12px;
  margin-bottom: 5px;
  font-size: 13px;
  font-size: 1.3rem;
  color: #fff;
}

.top-events__category span {
  display: inline-block;
  width: 134px;
  border-radius: 2px;
  text-align: center;
}

.top-events__date {
  font-size: 1.3rem;
  font-weight: 700;
}

.top-events__date .date-section {
  margin-left: 3px;
  margin-right: 3px;
}

.top-events__title {
  margin-bottom: 7px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.625;
  transition: .2s;
}

.top-events__btn {
  margin-top: 40px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .top-events__btn {
    margin-top: 30px;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: 400;
  }
}

.top-events__btn a {
  position: relative;
  display: inline-block;
  padding-top: 40px;
  color: #0B59AD;
}

@media only screen and (max-width: 959px) {
  .top-events__btn a {
    padding: 9px;
    width: calc(100% - 98px);
    background: #0B59AD;
    color: #fff;
  }
}

@media only screen and (max-width: 959px) {
  .top-events__btn a:hover {
    text-decoration: none;
    color: #222;
    background-color: #fff;
  }
}

.top-events__btn a::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 20px;
  display: block;
  width: 35px;
  height: 1px;
  margin-left: -17px;
  background: #0B59AD;
}

@media only screen and (max-width: 959px) {
  .top-events__btn a::before {
    content: none;
  }
}

.top-events__btn a::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 20px;
  display: block;
  width: 35px;
  height: 1px;
  margin-left: -17px;
  background: #0B59AD;
  transform: rotate(90deg);
}

@media only screen and (max-width: 959px) {
  .top-events__btn a::after {
    content: none;
  }
}

.list-events__item {
  position: relative;
  display: block;
  margin-bottom: 20px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ccc;
}

.list-events__item a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  color: #333;
}

.list-events__item a:hover {
  text-decoration: none;
}

.list-events__item a:hover .list-events__title {
  color: #0B59AD;
}

.list-events__image {
  position: relative;
  width: 158px;
  padding-left: 10px;
  padding-top: 10px;
}

@media only screen and (max-width: 959px) {
  .list-events__image {
    width: 100px;
  }
}

.list-events__thumb {
  width: 148px;
  height: 148px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  border-radius: 12px;
}

.list-events__thumb[style*="null"] {
  background-image: url(/albums/css/basic1-blocks1/abm00006235.svg) !important;
  background-size: 40% auto !important;
  background-color: #ddd;
}

@media only screen and (max-width: 959px) {
  .list-events__thumb {
    width: 90px;
    height: 90px;
  }
}

.list-events__schedule {
  position: absolute;
  top: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  border: 1px solid #0B59AD;
  border-radius: 12px;
  background: #fff;
  font-size: 11px;
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.6666;
  color: #063F83;
}

@media only screen and (max-width: 959px) {
  .list-events__schedule {
    width: 60px;
    height: 60px;
  }
}

.list-events__schedule-02 {
  margin-top: 3px;
  margin-bottom: 8px;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (max-width: 959px) {
  .list-events__schedule-02 {
    font-size: 20px;
    font-size: 2rem;
  }
}

.list-events__schedule-03 {
  display: none;
}

.list-events__text {
  position: relative;
  width: calc(100% - 188px);
  margin-top: 10px;
  margin-left: 30px;
}

@media only screen and (max-width: 959px) {
  .list-events__text {
    width: calc(100% - 120px);
    margin-left: 20px;
  }
}

.list-events__date-wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 13px;
}

.list-events__category {
  margin-right: 12px;
  margin-bottom: 5px;
  font-size: 13px;
  font-size: 1.3rem;
  color: #fff;
}

.list-events__category span {
  display: inline-block;
  width: 134px;
  border-radius: 2px;
  text-align: center;
}

.list-events__date {
  font-size: 1.3rem;
  font-weight: 700;
}

.list-events__date .date-section {
  margin-left: 3px;
  margin-right: 3px;
}

.list-events__title {
  margin-bottom: 12px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.625;
  transition: .2s;
}

.list-events__tags {
  font-size: 1.4rem;
  line-height: 1.57;
  color: #063F83;
}

.list-events__tags span {
  display: inline-block;
  margin-right: 14px;
}

.list-events__public-date {
  display: none;
  font-size: 1.4rem;
  line-height: 1.57;
  color: #063F83;
}


.list-picks__wrap {
  display: -ms-flex;
  display: flex;
}

@media only screen and (max-width: 959px) {
  .list-picks__wrap {
    display: block;
  }
}

.list-picks__items {
  width: 73%;
  margin-right: 2.5%;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 2.5%;
  border-right: 1px solid #E2E2E2;
}

.list-picks__items--col-1 {
  width: 100%;
  margin-right: 0;
  padding-right: 0;
  border-right: none;
}

.list-picks__items--col-1 .list-picks__item:first-child {
  margin-top: 0;
}

.list-picks__item {
  display: block;
  width: 100%;
  margin-top: 40px;
}

.list-picks__item a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  height: 100%;
  color: #333;
}

.list-picks__item a[target="_blank"]::after {
  content: none;
}

.list-picks__item a:hover {
  text-decoration: none;
}

.list-picks__item a:hover .list-picks__thumb-inner {
  transform: scale(1.2);
}

.list-picks__item a:hover .list-picks__title {
  color: #0B59AD;
}

.list-picks__thumb {
  position: relative;
  width: 47.5%;
  overflow: hidden;
}

.list-picks__thumb-inner {
  padding-top: 56.25%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #eaeaea;
  transition: transform .4s;
}

.list-picks__thumb-inner[style*="null"] {
  background-image: url(/albums/css/basic1-blocks1/abm00006235.svg) !important;
  background-size: 40% auto !important;
}

.list-picks__text-wrap {
  width: 49.5%;
  margin-left: 3%;
}

.list-picks__thumb-category {
  position: absolute;
  bottom: 7px;
  left: 12px;
  display: flex;
  gap: 5px;
}

.list-picks__thumb-category span {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 68px;
  height: 68px;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
}

.list-picks__title {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
}

.list-picks__description {
  margin-top: 25px;
  font-size: 1.4rem;
  line-height: 1.57;
  color: #063F83;
}

.list-picks__tags {
  font-size: 1.4rem;
  line-height: 1.57;
  color: #063F83;
}

.list-picks__tags span {
  display: inline-block;
  margin-right: 15px;
}

.list-picks__tags span:last-child {
  margin-right: 0;
}

.list-picks__tags span.univ_sdgs_1,
.list-picks__tags span.univ_sdgs_2,
.list-picks__tags span.univ_sdgs_3,
.list-picks__tags span.univ_sdgs_4,
.list-picks__tags span.univ_sdgs_5,
.list-picks__tags span.univ_sdgs_6,
.list-picks__tags span.univ_sdgs_7,
.list-picks__tags span.univ_sdgs_8,
.list-picks__tags span.univ_sdgs_9,
.list-picks__tags span.univ_sdgs_10,
.list-picks__tags span.univ_sdgs_11,
.list-picks__tags span.univ_sdgs_12,
.list-picks__tags span.univ_sdgs_13,
.list-picks__tags span.univ_sdgs_14,
.list-picks__tags span.univ_sdgs_15,
.list-picks__tags span.univ_sdgs_16,
.list-picks__tags span.univ_sdgs_17 {
  display: none !important;
}

.list-picks__sdgs {
  display: flex;
  flex-wrap: wrap;
  padding: 20px 0 0;
}

.list-picks__sdgs span {
  background-size: cover;
  width: calc(100% / 8);
  height: 71px;
  font-size: 0;
}
@media only screen and (max-width: 1510px) {
  .list-picks__sdgs span {
    width: 4.533vw;
    height: 4.533vw;
  }
}

@media only screen and (max-width: 959px) {
  .list-picks__sdgs span {
    width: calc(100% / 6);
    height: 15.299vw;
  }
}

@media only screen and (max-width: 959px) {
  .list-picks__items {
    width: 100%;
    border-right: none;
    margin-bottom: 20px;
    margin-right: 0;
    padding-top: 0;
    padding-right: 0;
    border-bottom: 1px solid #E2E2E2;
  }

  .list-picks__item {
    margin-top: 20px;
  }

  .list-picks__item:first-child {
    margin-top: 0;
  }

  .list-picks__item a {
    display: block;
  }

  .list-picks__thumb {
    width: 100%;
  }

  .list-picks__text-wrap {
    width: 100%;
    margin-left: 0;
  }

  .list-picks__title {
    margin-top: 10px;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.67;
  }

  .list-picks__description {
    margin-top: 10px;
  }
}

.list-picks-pickup__head {
  margin-bottom: 32px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
}

.list-picks-pickup__items {
  width: 24.5%;
  padding-bottom: 20px;
}

.list-picks-pickup__item {
  display: block;
  width: 100%;
  margin-top: 30px;
}

.list-picks-pickup__item a {
  display: block;
  height: 100%;
  color: #333;
}

.list-picks-pickup__item a:hover {
  text-decoration: none;
}

.list-picks-pickup__item a:hover .list-picks-pickup__thumb-inner {
  transform: scale(1.2);
}

.list-picks-pickup__item a:hover .list-picks-pickup__title {
  color: #0B59AD;
}

.list-picks-pickup__thumb {
  position: relative;
  overflow: hidden;
}

.list-picks-pickup__thumb-inner {
  padding-top: 56.25%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #eaeaea;
  transition: transform .4s;
}

.list-picks-pickup__thumb-inner[style*="null"] {
  background-image: url(/albums/css/basic1-blocks1/abm00006235.svg) !important;
  background-size: 40% auto !important;
}

.list-picks-pickup__thumb-category {
  position: absolute;
  bottom: 7px;
  left: 12px;
}

.list-picks-pickup__thumb-category span {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 68px;
  height: 68px;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
}

.list-picks-pickup__title {
  margin-top: 10px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.67;
}

.list-picks-pickup__tags {
  margin-top: 10px;
  font-size: 1.4rem;
  line-height: 1.57;
  color: #063F83;
}

.list-picks-pickup__tags span {
  display: inline-block;
  margin-right: 14px;
}

.list-picks-pickup__tags span:last-child {
  margin-right: 0;
}

@media only screen and (max-width: 959px) {
  .list-picks-pickup__head {
    margin-bottom: 0;
  }

  .list-picks-pickup__items {
    width: 100%;
    padding-bottom: 0;
  }

  .list-picks-pickup__item {
    margin-top: 20px;
  }
}

.list-media__item {
  position: relative;
  display: block;
  margin-bottom: 20px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ccc;
}

.list-media__item a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  color: #333;
}

.list-media__item a:hover {
  text-decoration: none;
}

.list-media__item a:hover .list-media__title {
  color: #0B59AD;
}

.list-media__image {
  position: relative;
  width: 148px;
}

@media only screen and (max-width: 959px) {
  .list-media__image {
    width: 90px;
  }
}

.list-media__thumb {
  width: 148px;
  height: 148px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  border-radius: 12px;
}

@media only screen and (max-width: 959px) {
  .list-media__thumb {
    width: 90px;
    height: 90px;
  }
}

.list-media__text {
  position: relative;
  width: calc(100% - 178px);
  margin-left: 30px;
}

@media only screen and (max-width: 959px) {
  .list-media__text {
    width: calc(100% - 110px);
    margin-left: 20px;
  }
}

.list-media__date-wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 13px;
}

.list-media__category {
  margin-right: 12px;
  margin-bottom: 5px;
  font-size: 13px;
  font-size: 1.3rem;
  color: #fff;
}

.list-media__category span {
  display: inline-block;
  width: 134px;
  border-radius: 2px;
  text-align: center;
}

.list-media__title {
  margin-bottom: 12px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.625;
  transition: .2s;
}

.list-media__tags {
  font-size: 1.4rem;
  line-height: 1.57;
  color: #063F83;
}

.list-media__tags span {
  display: inline-block;
  margin-right: 14px;
}

.list-media__public-date {
  font-size: 1.4rem;
  line-height: 1.57;
  color: #063F83;
}

.top-foot-nav {
  padding: 90px 40px 70px 40px;
  background: #eee;
  transition: padding .2s;
  line-height: 1.6;
}

@media only screen and (max-width: 959px) {
  .top-foot-nav {
    margin-bottom: 10px;
    padding: 40px 4% 10px 4%;
    background: #fff;
  }
}

.top-foot-nav ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 1020px;
  margin: 0 auto;
}

.top-foot-nav--col2 li {
  width: calc(50% - 10px);
}

.top-foot-nav--col2 li:nth-child(2n) {
  margin-right: 0;
}

@media only screen and (max-width: 959px) {
  .top-foot-nav--col2 li:nth-child(2n) {
    margin-right: 4%;
  }
}

.top-foot-nav--col3 li {
  width: calc(33.33% - 14px);
}

.top-foot-nav--col3 li:nth-child(3n) {
  margin-right: 0;
}

@media only screen and (max-width: 959px) {
  .top-foot-nav--col3 li:nth-child(3n) {
    margin-right: 4%;
  }
}

.top-foot-nav--col4 li {
  width: calc(25% - 15px);
}

.top-foot-nav--col4 li:nth-child(4n) {
  margin-right: 0;
}

@media only screen and (max-width: 959px) {
  .top-foot-nav--col4 li:nth-child(4n) {
    margin-right: 4%;
  }
}

.top-foot-nav--col5 li {
  width: calc(20% - 16px);
}

.top-foot-nav--col5 li:nth-child(5n) {
  margin-right: 0;
}

@media only screen and (max-width: 959px) {
  .top-foot-nav--col5 li:nth-child(5n) {
    margin-right: 4%;
  }
}

.top-foot-nav li {
  margin-bottom: 20px;
  margin-right: 20px;
  list-style: none;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
}

@media only screen and (max-width: 959px) {
  .top-foot-nav li {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 15px;
    font-size: 14px;
    font-size: 1.4rem;
  }

  .top-foot-nav li:nth-child(2n) {
    margin-right: 0;
  }
}


.top-foot-nav a {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100%;
  padding: 12px 22px;
  border: 1px solid #0B59AD;
  text-align: center;
  color: #0B59AD;
  background-color: #fff;
}

@media only screen and (max-width: 959px) {
  .top-foot-nav a {
    padding: 12px 22px;
  }
}

.top-foot-nav a[target="_blank"]::after {
  content: none;
}

.top-foot-nav a:hover {
  text-decoration: none;
  color: #fff;
  background-color: #0B59AD;
}

.top-foot-nav a:hover::before {
  border-color: #fff;
}

.top-foot-nav a::before {
  content: "";
  position: absolute;
  right: 15px;
  top: 50%;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  border-right: 1px solid #0B59AD;
  border-top: 1px solid #0B59AD;
  transform: rotate(45deg);
}

@media only screen and (max-width: 959px) {
  .top-foot-nav a::before {
    margin-top: -3px;
    width: 7px;
    height: 7px;
  }
}

.bdr-blue {
  display: block;
  background: #BCCEE3;
  width: 120vw;
  height: 16px;
  margin-left: calc(50% - 60vw);
  margin-right: calc(50% - 60vw);
}

.bdr-blue:first-child {
  margin-top: -100px;
}

@media only screen and (max-width: 959px) {
  .bdr-blue {
    height: 10px;
  }

  .bdr-blue:first-child {
    margin-top: -40px;
  }
}

.bg-block {
  position: relative;
  /*margin-top: 40px;
  margin-bottom: 40px;*/
  padding: 1px 0 60px 0;
}

.bg-block::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 120vw;
  height: 100%;
  margin-left: calc(50% - 60vw);
}

.bg-block--blue-gray::before {
  background: #F0F4F5;
}

.bg-block--light-gray::before {
  background: #f9f9f9;
}

.bg-block--white::before {
  background: #fff;
}

.bg-block__inner {
  position: relative;
}

.bg-block:last-child {
  margin-bottom: -100px;
}

@media only screen and (max-width: 959px) {
  .bg-block:last-child {
    margin-bottom: -40px;
  }
}

.four-years-learning {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.four-years-learning__image {
  width: calc(50% - 30px);
  text-align: center;
}

.four-years-learning__text-wrap {
  width: calc(50% - 30px);
  margin-right: 60px;
}

@media only screen and (max-width: 959px) {
  .four-years-learning {
    display: block;
  }

  .four-years-learning__image {
    width: 100%;
  }

  .four-years-learning__text-wrap {
    width: 100%;
    margin-right: 0;
    margin-top: 40px;
  }
}

.four-years-learning__item+.four-years-learning__item {
  margin-top: 45px;
  padding-top: 60px;
  background: linear-gradient(90deg, #555 0%, #555 50%, rgba(0, 0, 0, 0) 50%);
  background-position: 0 0;
  background-size: 4px 1px;
  background-repeat: repeat-x;
}

@media only screen and (max-width: 959px) {
  .four-years-learning__item+.four-years-learning__item {
    margin-top: 25px;
    padding-top: 35px;
  }
}

.four-years-learning__head {
  display: table;
  font-weight: 700;
  font-size: 1.8rem;
}

.four-years-learning__head .cp-inner {
  position: relative;
  display: table;
  min-width: 260px;
  padding: 6px;
  text-align: center;
}

.four-years-learning__head .cp-inner::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #333;
  pointer-events: none;
}

.four-years-learning__head .cp-inner>span {
  position: relative;
  top: 5px;
  left: 5px;
  display: table;
  min-width: 260px;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  margin: -6px;
  padding: 1px 11px 11px 1px;
}

.four-years-learning__caption {
  margin-top: 30px;
  margin-bottom: 20px;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 2;
}

.four-years-learning__text {
  line-height: 1.9;
}

.four-years-learning__text:empty {
  display: none;
}

@media only screen and (max-width: 959px) {
  .four-years-learning__caption {
    margin-top: 20px;
  }
}

.modal-block .cp-vertical-img {
  position: relative;
  overflow: hidden;
}

.cp-it-vertical-col2.modal-block .cp-vertical-img a {
  position: relative;
  display: block;
  height: 280px;
  overflow: hidden;
  border-radius: 6px;
}

.cp-it-vertical-col3.modal-block .cp-vertical-img a {
  position: relative;
  display: block;
  height: 365px;
  overflow: hidden;
  border-radius: 6px;
}

.cp-vertical.modal-block .cp-vertical-img img {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  border-radius: 0;
  object-fit: cover;
  font-family: 'object-fit: cover; object-position: bottom;';
}

body.system.cms.apps .cp-vertical.modal-block .cp-vertical-img img {
  position: relative;
  left: 0;
  top: 0;
  transform: none;
}

.mfp-modal-block .mfp-figure figure {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
  align-items: flex-end;
}

.mfp-modal-block .mfp-bottom-bar {
  position: relative;
  top: 0;
  padding: 40px 0 40px 35px;
}

@media only screen and (max-width: 959px) {
  .mfp-modal-block .mfp-figure figure {
    display: block;
    padding-left: 0 !important;
  }

  .mfp-modal-block .mfp-bottom-bar {
    padding: 10px 0 0 0;
  }
}

.facility-list {
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 40px;
  /*column-count: 4;
  column-gap: 15px;*/
}

.facility-list__item {
  display: -ms-flexbox;
  display: flex;
  width: calc(25% - 12px);
  margin-bottom: 15px;
  margin-right: 15px;
  /*break-inside: avoid;*/
}

.facility-list__item:nth-child(4n) {
  margin-right: 0;
}

.facility-list__number {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: #fff;
  background: #333;
  border-radius: 6px;
  line-height: 1;
  font-weight: 700;
}

.facility-list__text {
  width: calc(100% - 32px);
  padding-left: 6px;
  line-height: 1.43;
  font-size: 1.4rem;
  font-weight: 700;
}

@media only screen and (max-width: 959px) {

  /*.facility-list {
    column-count: 2;
  }*/
  .facility-list__item {
    width: 100%;
    margin-right: 0;
  }
}

.facility-detail {
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.facility-detail__item {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  width: calc(50% - 10px);
  margin-bottom: 20px;
}

.facility-detail__number {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: #fff;
  background: #333;
  border-radius: 6px;
  line-height: 1;
  font-weight: 700;
}

.facility-detail__number span {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  width: 32px;
  height: 32px;
}

.facility-detail__image {
  width: calc(50% - 5px);
}

.facility-detail__text-wrap {
  width: calc(50% - 5px);
  margin-left: 10px;
  padding-top: 5px;
  line-height: 1.67;
}

.facility-detail__item:nth-child(2n) {
  margin-left: 20px;
}

.facility-detail__head {
  font-weight: 700;
}

.facility-detail__text {
  margin-top: 10px;
}

@media only screen and (max-width: 959px) {
  .facility-detail__item {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin-bottom: 20px;
  }

  .facility-detail__item:nth-child(2n) {
    margin-left: 0;
  }
}

.teacher-list {
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 40px;
}

.teacher-list__item {
  width: 20.83%;
  margin-right: 5.56%;
  margin-bottom: 40px;
}

.teacher-list__item:nth-child(4n) {
  margin-right: 0;
}

.teacher-list__item a {
  display: block;
  color: #333;
}

.teacher-list__item a:hover {
  text-decoration: none;
}

.teacher-list__item a:hover .teacher-list__image::after {
  opacity: .5;
}

.teacher-list__image {
  position: relative;
  border-radius: 50%;
  overflow: hidden;
}

.teacher-list__image::after {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #063F83;
  transition: .2s;
  opacity: 0;
  border-radius: 50%;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.teacher-list__image img {
  width: 100%;
}

.teacher-list__title {
  margin-top: 10px;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.4;
}

.teacher-list__name {
  margin-top: 5px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  line-height: 1.4;
}

.teacher-list__ruby {
  margin-top: 5px;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  line-height: 1.4;
}

@media only screen and (max-width: 959px) {
  .teacher-list__item {
    width: 48%;
    margin-right: 4%;
  }

  .teacher-list__item:nth-child(2n) {
    margin-right: 0;
  }
}

.study-point {
  margin-top: 40px;
  margin-bottom: 40px;
}

.study-point__inner {
  display: -ms-flexbox;
  display: flex;
}

.study-point__item {
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: calc(33.33% - 20px);
  margin-right: 30px;
  border-top: 4px solid #063F83;
}

.study-point__item:nth-child(3n) {
  margin-right: 0;
}

.study-point__head {
  padding-top: 25px;
  font-size: 2rem;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  line-height: 1.6;
}

.study-point__image-wrap {
  position: relative;
  width: 184px;
  height: 184px;
  margin: 25px auto 0 auto
}

.study-point__image {
  border-radius: 50%;
  overflow: hidden;
}

.study-point__number {
  position: absolute;
  left: -13px;
  top: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  text-align: center;
  height: 40px;
  width: 40px;
  border-radius: 50%;
  background: #063F83;
  color: #fff;
  font-weight: 500;
}

.study-point__text {
  margin-top: 20px;
  font-size: 1.4rem;
  line-height: 1.857;
}

@media only screen and (max-width: 959px) {
  .study-point__inner {
    display: block;
  }

  .study-point__item,
  .study-point__item:nth-child(3n) {
    width: 100%;
    max-width: 300px;
    margin: 0 auto 40px auto;
  }

  .study-point__head {
    padding-top: 15px;
  }
}

.recommend-for-you {
  position: relative;
  margin-top: 40px;
  margin-bottom: 40px;
  padding: 40px 0;
}

.recommend-for-you__inner {
  position: relative;
  display: -ms-flex;
  display: flex;
  margin-left: -90px;
  margin-right: -90px;
  background: #fff;
  border-radius: 1000px;
  padding: 40px 90px;
}

.recommend-for-you__image {
  width: 170px;
  display: -ms-flex;
  display: flex;
  align-items: center;
}

.recommend-for-you__image img {
  flex-shrink: 0;
}

body.en .recommend-for-you__image {
  width: 180px;
}

body.en .recommend-for-you__image .cp-inner {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
}

.recommend-for-you::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 120vw;
  height: 100%;
  margin-left: calc(50% - 60vw);
  margin-right: calc(50% - 60vw);
  background: #F0F4F5;
}

.recommend-for-you__head {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: calc(50% - 230px);
  margin-left: 30px;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
}

.recommend-for-you__head--middle {
  font-size: 2.8rem;
}

.recommend-for-you__text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 50%;
  margin-left: 30px;
  padding-left: 30px;
  font-size: 2rem;
  font-weight: 700;
}

.recommend-for-you__text li {
  margin-top: 10px;
}

.recommend-for-you__text li:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 1279px) {
  .recommend-for-you__inner {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-radius: 40px;
    margin-left: -45px;
    margin-right: -45px;
    padding-left: 45px;
    padding-right: 45px;
  }

  .recommend-for-you__head {
    width: calc(100% - 200px);
  }

  .recommend-for-you__text {
    width: 100%;
    margin-top: 20px;
    margin-left: 0;
    padding-left: 0;
  }
}

@media only screen and (max-width: 959px) {
  .recommend-for-you {
    padding: 0;
  }

  .recommend-for-you__inner {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -4vw;
    margin-right: -4vw;
    background: #fff;
    border-radius: 0;
    padding: 30px 4vw;
  }

  .recommend-for-you::before {
    content: none;
  }

  .recommend-for-you__head {
    width: calc(100% - 170px - 4vw);
    margin-left: 4vw;
    font-size: 1.6rem;
  }

  .recommend-for-you__head--middle {
    font-size: 2.1rem;
  }

  .recommend-for-you__text {
    font-size: 1.6rem;
  }

  .recommend-for-you__text li {
    margin-top: 5px;
  }
}

.index-image-bg {
  position: relative;
  padding: 100px 0 70px;
}

.index-image-bg img {
  position: absolute;
  left: 0;
  top: 0;
  max-width: none;
  width: 116vw;
  height: 100%;
  margin-left: calc(50% - 58vw);
  margin-right: calc(50% - 58vw);
  object-fit: cover;
  font-family: 'object-fit: cover; object-position: bottom;';
}

@media only screen and (max-width: 959px) {
  .index-image-bg {
    position: relative;
    padding: 50px 0;
  }

  .index-image-bg img {
    max-width: none;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}

.relation-link {
  position: relative;
  margin-top: 60px;
  margin-left: -190px;
  margin-right: -190px;
  padding-top: 60px;
  padding-bottom: 100px;
}

.bdr-blue+.relation-link {
  margin-top: 0;
}

body.system.cms.apps .relation-link {
  margin-left: 0;
  margin-right: 0;
}

[data-area="content"] .relation-link:last-child {
  margin-bottom: -100px;
}

.relation-link::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 120vw;
  height: 100%;
  margin-left: calc(50% - 60vw);
  margin-right: calc(50% - 60vw);
  background: #F0F4F5;
}

.relation-link__inner {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  max-width: 1340px;
  margin: 0 auto;
}

.relation-link__head-wrap {
  width: 27%;
}

.relation-link__head {
  position: relative;
  margin-bottom: 40px;
  padding-bottom: 30px;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6;
}

.relation-link__head::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 20%;
  min-width: 100px;
  height: 4px;
  background-color: #063F83;
}

.relation-link__head-list ul {
  margin-left: 0;
  list-style: none;
}

.relation-link__item-wrap {
  display: -ms-flexbox;
  display: flex;
  width: 73%;
}

.relation-link__item {
  margin-left: 20px;
  font-weight: 500;
}

.relation-link__item a {
  color: #333;
}

.relation-link__item span.fr-inner {
  text-align: left;
}

@media only screen and (max-width: 1449px) {
  .relation-link {
    margin-right: 0;
  }
}

@media only screen and (max-width: 959px) {
  .relation-link {
    margin-left: 0;
    margin-top: 40px;
    padding-top: 30px;
    padding-bottom: 50px;
  }

  .bdr-blue+.relation-link {
    margin-top: 0;
  }

  [data-area="content"] .relation-link:last-child {
    margin-bottom: -40px;
  }

  .relation-link__inner {
    display: block;
  }

  .relation-link__head-wrap {
    width: 100%;
  }

  .relation-link__item-wrap {
    display: block;
    width: 100%;
    margin-top: 40px;
  }

  .relation-link__item {
    margin-top: 20px;
    margin-left: 0;
  }
}

body.system.cms.apps .index-visual,
.page-title-area+.index-visual {
  display: block;
}

.index-visual {
  display: none;
  padding: 0 94px;
  background: #fff;
}

@media only screen and (max-width: 959px) {
  .index-visual {
    padding: 0 4vw;
  }
}

.index-visual__inner {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 1700px;
  margin: 0 auto;
}

.index-visual__text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  text-align: center;
  color: #fff;
  font-size: 2.4rem;
  font-family: "Noto Serif JP", serif;
  letter-spacing: .3rem;
  line-height: 1.4;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.index-visual--gakubu .index-visual__text {
  font-size: 1.6rem;
}

@media only screen and (max-width: 959px) {
  .index-visual__text {
    width: 75%;
    font-size: 1.4rem;
    letter-spacing: .2rem;
  }

  .index-visual--gakubu {
    padding-bottom: 20px;
  }

  .index-visual--gakubu .index-visual__text {
    font-size: 1.4rem;
  }
}

.index-visual__img {
  width: 100%;
}

.index-visual__img img {
  border-radius: 12px;
}

@media only screen and (max-width: 959px) {
  .index-visual__img {
    border-radius: 8px;
    overflow: hidden;
  }

  .index-visual__img img {
    width: 140%;
    max-width: none;
    margin-left: -20%;
  }
}

.index-visual__gakubu-text {
  position: absolute;
  right: -10px;
  bottom: -10px;
  min-width: 200px;
  min-height: 120px;
  padding: 18px 20px;
  background: #063F83;
  border-radius: 4px;
  color: #fff;
  font-size: 1.3rem;
  line-height: 1.54;
}

@media only screen and (max-width: 959px) {
  .index-visual__gakubu-text {
    bottom: -40px;
    min-height: 0;
    padding: 15px 20px;
  }
}

.faculty-features {
  position: relative;
  margin: 0 -120px 40px -120px;
  padding-top: 70px;
}

.faculty-features--col2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 120vw;
  height: 430px;
  margin-left: calc(50% - 60vw);
  background-color: #F0F4F5;
}

.faculty-features--col3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 120vw;
  height: 430px;
  margin-left: calc(50% - 60vw);
  background-color: #F0F4F5;
}

.faculty-features+.faculty-features {
  padding-top: 0;
}

.faculty-features+.faculty-features::before {
  content: none;
}

.faculty-features__inner {
  position: relative;
}

.faculty-features__head {
  margin-bottom: 40px;
  font-size: 4rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  text-align: center;
}

.faculty-features__item-wrap {
  display: -ms-flexbox;
  display: flex;
}

.faculty-features--col2 .faculty-features__item {
  width: 46.67%;
  margin-right: 6.66%;
}

.faculty-features--col2 .faculty-features__item:nth-child(2n) {
  margin-right: 0;
}

.faculty-features--col3 .faculty-features__item {
  width: 31.66%;
  margin-right: 2.51%;
}

.faculty-features--col3 .faculty-features__item:nth-child(3n) {
  margin-right: 0;
}

.faculty-features__img {
  position: relative;
}

body {
  counter-reset: faculty-features;
}

.faculty-features__img::before {
  content: counter(faculty-features, decimal-leading-zero);
  counter-increment: faculty-features;
  position: absolute;
  right: 20px;
  bottom: 15px;
  color: #fff;
  font-size: 6rem;
  font-family: "Noto Serif JP", serif;
  line-height: 1;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.faculty-features .faculty-features__item .faculty-features__img img {
  width: 100%;
  border-radius: 0;
}

.faculty-features__item-head {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  text-align: center;
  min-height: 115px;
  padding: 30px 20px 25px 20px;
  border-left: 1px solid #999;
  border-right: 1px solid #999;
  background-color: #fff;
  font-size: 2.2rem;
  font-family: "Noto Serif JP", serif;
  line-height: 1.45;
  text-align: center;
}

.faculty-features__text-wrap {
  padding: 0 20px 40px 20px;
  border-left: 1px solid #999;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  background-color: #fff;
}

.faculty-features__text {
  display: none;
  padding-bottom: 30px;
}

body.system.cms.apps .faculty-features__text {
  display: block;
}

.faculty-features__button {
  position: relative;
  display: block;
  width: 100%;
  max-width: 180px;
  margin: 0 auto;
  padding: 9px;
  border-bottom: 1px solid #555;
  color: #555;
  font-size: 1.3rem;
}

body.system.cms.apps .faculty-features__button {
  pointer-events: none;
}

.faculty-features__button .cp-inner {
  width: 100%;
  max-width: 100px;
  margin: 0 auto;
}

.faculty-features__button::before {
  content: "";
  display: block;
  position: absolute;
  right: 39px;
  top: 25px;
  height: 1px;
  width: 5px;
  background: #555;
  transform: rotate(45deg);
  transition: .2s;
}

.faculty-features__button::after {
  content: "";
  display: block;
  position: absolute;
  right: 39px;
  top: 17px;
  height: 11px;
  width: 1px;
  background: #555;
  transform: rotate(0deg);
  transition: .2s;
}

.faculty-features__button .button-inner::before {
  content: "";
  display: block;
  position: absolute;
  right: 35px;
  top: 25px;
  height: 1px;
  width: 5px;
  background: #555;
  transform: rotate(-45deg);
  transition: .2s;
}

.faculty-features__button.is-active::before {
  right: 39px;
  top: 20px;
  transform: rotate(45deg);
}

.faculty-features__button.is-active::after {
  transform: rotate(45deg);
}

.faculty-features__button.is-active .button-inner::before {
  right: 35px;
  top: 24px;
  transform: rotate(45deg);
}

@media only screen and (max-width: 1449px) {
  .faculty-features {
    margin-left: -60px;
    margin-right: -60px;
  }
}

@media only screen and (max-width: 959px) {
  .faculty-features {
    margin-left: 0;
    margin-right: 0;
  }

  .faculty-features__head {
    font-size: 2.4rem;
  }

  .faculty-features__item-wrap {
    display: block;
  }

  .faculty-features--col2 .faculty-features__item {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }

  .faculty-features--col3 .faculty-features__item {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
}

.main-inner>.index-menu {
  display: none;
}

.main>.index-menu {
  display: block;
}

.index-menu {
  margin-bottom: 85px;
  font-size: 1.8rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 1.6;
}

.index-menu ul,
.index-menu--auto .gnav-folder {
  position: relative;
  left: -10px;
  width: calc(100% + 20px);
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  list-style: none;
}

.index-menu li,
.index-menu--auto .gnav-folder>* {
  position: relative;
  display: block;
  width: calc(25% - 20px);
  margin: 10px;
}

.index-menu-gakubu-color li::before {
  content: "";
  position: absolute;
  left: -10px;
  top: -10px;
  width: calc(100% + 20px);
  height: calc(100% + 20px);
  background: #D2E4F8;
}

.index-menu a {
  position: relative;
  display: block;
  height: 100%;
  padding: 20px 10px 30px 10px;
  border: 1px solid #ddd;
  text-align: center;
  background: #fff;
  transition: .2s;
}

.index-menu a:hover,
.index-menu a[href=""],
.index-menu a.p-current {
  text-decoration: none;
  box-shadow: 6px 6px 0px #d2e4f8, 6px -6px 0px #d2e4f8, -6px -6px 0px #d2e4f8, -6px 6px 0px #d2e4f8;
}

.index-menu a::before {
  content: "";
  position: absolute;
  bottom: 8px;
  left: 50%;
  width: 1px;
  height: 16px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .index-menu {
    margin-bottom: 50px;
    font-size: 1.6rem;
  }

  .index-menu li,
  .index-menu--auto .gnav-folder>* {
    width: calc(50% - 10px);
    margin: 5px;
  }

  /*.index-menu li::before,
  .index-menu--auto .gnav-folder > *::before {
    content: "";
    position: absolute;
    left: -6px;
    top: -6px;
    width: calc(100% + 12px);
    height: calc(100% + 12px);
    background: #D2E4F8;
  }*/
  .index-menu a {
    padding: 10px 10px 20px 10px;
  }

  .index-menu a:hover {
    box-shadow: 3px 3px 0px #d2e4f8, 3px -3px 0px #d2e4f8, -3px -3px 0px #d2e4f8, -3px 3px 0px #d2e4f8;
  }

  .index-menu a::before {
    bottom: 8px;
    height: 10px;
  }
}

.department-point {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background: #F0F4F5;
  margin-top: 40px;
  margin-bottom: 40px;
  padding: 130px 40px 100px 40px;
}

.department-point:last-child {
  margin-bottom: -100px;
}

@media only screen and (max-width: 959px) {
  .department-point:last-child {
    margin-bottom: -40px;
  }
}

.department-point__inner {
  max-width: 1760px;
  margin: 0 auto;
}

.department-point__image {
  margin-left: 120px;
}

.department-point__text-wrap {
  position: relative;
  margin-top: -60px;
  margin-right: 120px;
  padding: 80px 40px 80px 200px;
  background: #fff;
}

.department-point__text-inner {
  position: relative;
  max-width: 960px;
  margin: 0 auto;
}

.department-point__text-vertical {
  position: absolute;
  left: -200px;
  top: -145px;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

body.system.cms.apps .department-point__text-vertical {
  position: relative;
  left: 0;
  top: 0;
}

.department-point__text-vertical .cp-inner {
  display: inline;
  font-family: "Noto Serif JP", serif;
  font-size: 3.6rem;
  line-height: 1.7;
  white-space: nowrap;
}

.department-point__text-vertical .cp-inner span {
  padding: 10px 0;
  background: #063F83;
  color: #fff;
}

body.en .department-point__text-vertical .cp-inner span {
  padding: 5px 0;
  display: inline-block;
}

body.en .department-point__text-vertical .cp-inner span>span {
  padding: 0 5px;
  white-space: pre;
  display: inline-block;
}

@media only screen and (max-width: 1449px) {
  .department-point {
    margin-left: calc(50% - 50vw - 90px);
    margin-right: calc(50% - 50vw + 90px);
  }

  .department-point__text-vertical {
    left: -160px;
  }
}

@media only screen and (max-width: 959px) {
  body.en .department-point__text-vertical .cp-inner {
    white-space: break-spaces;
    font-size: 2.2rem;
  }

  body.en .department-point__text-vertical .cp-inner span {
    margin-top: -1px;
    display: inline;
  }

  .department-point {
    margin-left: -4vw;
    margin-right: -4vw;
    padding: 0;
  }

  .department-point__image {
    width: 130vw;
    margin-left: -15vw;
  }

  .department-point__text-wrap {
    margin-top: 0;
    margin-left: 2vw;
    margin-right: 2vw;
    padding: 40px 2vw;
  }

  .department-point__text-vertical {
    position: relative;
    left: 0;
    top: 0;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 40px;
  }

  .department-point__text-vertical .cp-inner {
    font-size: 2.7rem;
  }
}

.graduate-index {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  min-height: 590px;
  margin-top: 120px;
  margin-bottom: 120px;
}

.graduate-index__text-wrap {
  position: relative;
  width: 41.67%;
  margin-right: 8.33%;
}

.graduate-index__head-wrap {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 55px;
}

.graduate-index__head-wrap::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: calc(100% + 20vw);
  height: 4px;
  background-color: #D2E4F8;
}

.graduate-index__head-wrap::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 76%;
  max-width: 380px;
  height: 4px;
  background-color: #063F83;
}

.graduate-index__head {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 3.2rem;
  line-height: 1.6;
}

.graduate-index__head strong {
  display: table;
  font-size: 1.5rem;
}

.graduate-index__campus {
  min-width: 142px;
  margin-top: 12px;
  padding: 6px;
  border-radius: 4px;
  text-align: center;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.4;
  background: #063F83;
  color: #fff;
}

.graduate-index__course {
  margin-top: 20px;
  margin-bottom: 55px;
  font-size: 1.8rem;
}

.graduate-index__description {
  position: relative;
  min-height: 165px;
  padding: 20px 0;
  font-size: 1.4rem;
}

.graduate-index__description::before {
  content: "";
  position: absolute;
  right: -764px;
  top: 0;
  display: block;
  width: 200vw;
  background: #F0F4F5;
  height: 370px;
}

.graduate-index__description .cp-inner {
  position: relative;
}

.graduate-index__btn {
  position: relative;
  margin-top: 20px;
  font-size: 1.4rem;
}

.graduate-index__btn a {
  display: block;
  width: 300px;
  padding: 12px;
  text-align: center;
  border: 1px solid #666;
  background: url(/albums/css/basic1-blocks1/abm00002629.svg) no-repeat top 50% right 10px #fff;
  color: #333;
}

.graduate-index__btn a:hover {
  text-decoration: none;
  color: #fff;
  background-color: #063F83;
  background-image: url(/albums/css/basic1-blocks1/abm00002630.svg);
  border-color: #063F83;
}

.graduate-index__image-wrap {
  position: relative;
  width: calc(50% + 120px);
  margin-right: -120px;
}

.graduate-index__image {
  position: relative;
}

.graduate-index__vertical-text {
  position: absolute;
  z-index: 1;
  right: 36px;
  top: 34px;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.graduate-index__vertical-text .cp-inner {
  display: inline;
  font-family: "Noto Serif JP", serif;
  font-size: 2.2rem;
  letter-spacing: .4rem;
  line-height: 2;
  white-space: nowrap;
}

.graduate-index__vertical-text .cp-inner span {
  padding: 6px 4px 12px 4px;
  background: #fff;
}

.graduate-index__color-text {
  position: absolute;
  left: -20px;
  bottom: -20px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
  align-items: flex-end;
  min-width: 220px;
  min-height: 140px;
  padding: 20px 28px;
  border-radius: 4px;
  background: #063F83;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.6;
  color: #fff;
}

.graduate-index__btn-wrap {
  display: none;
}

.graduate-index:nth-child(2n) {
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.graduate-index:nth-child(2n) .graduate-index__text-wrap {
  margin-right: 0;
  margin-left: 8.33%;
}

.graduate-index:nth-child(2n) .graduate-index__image-wrap {
  margin-right: 0;
  margin-left: -120px;
}

.graduate-index:nth-child(2n) .graduate-index__description::before {
  right: 0;
  left: -764px;
}

.graduate-index:nth-child(2n) .graduate-index__vertical-text {
  right: auto;
  left: 36px;
}

.graduate-index:nth-child(2n) .graduate-index__color-text {
  left: auto;
  right: -20px;
}

@media only screen and (max-width: 1769px) {
  .graduate-index {
    position: relative;
    right: 90px;
  }
}

@media only screen and (max-width: 959px) {

  .graduate-index,
  .graduate-index:nth-child(2n) {
    min-height: 0;
    flex-direction: column;
    right: 0;
    margin-top: 60px;
    margin-bottom: 60px;
  }

  .graduate-index__text-wrap,
  .graduate-index:nth-child(2n) .graduate-index__text-wrap {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
  }

  .graduate-index__head-wrap {
    display: block;
    padding-bottom: 25px;
  }

  .graduate-index__head-wrap::before {
    width: 100%;
    height: 3px;
  }

  .graduate-index__head-wrap::after {
    width: 62%;
    max-width: 240px;
    height: 3px;
  }

  .graduate-index__head {
    font-size: 2.4rem;
  }

  .graduate-index__head strong {
    font-size: 1.3rem;
  }

  .graduate-index__campus {
    width: 130px;
    min-width: 130px;
    padding: 5px;
    font-size: 1.3rem;
  }

  .graduate-index__course {
    margin-bottom: 25px;
    font-size: 1.6rem;
  }

  .graduate-index__description {
    min-height: 0;
    padding: 30px 0;
  }

  .graduate-index__description::before,
  .graduate-index:nth-child(2n) .graduate-index__description::before {
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    height: 100%;
  }

  .graduate-index__text-wrap .graduate-index__btn {
    display: none;
  }

  .graduate-index__image-wrap,
  .graduate-index:nth-child(2n) .graduate-index__image-wrap {
    position: relative;
    width: 100%;
    margin-right: 0;
    margin-left: 0;
  }

  .graduate-index__image-wrap::before {
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    height: 100%;
    background: #F0F4F5;
  }

  .graduate-index__image {
    margin-bottom: 4vw;
  }

  .graduate-index__image {
    margin-left: 4vw;
  }

  .graduate-index:nth-child(2n) .graduate-index__image {
    margin-left: 0;
    margin-right: 4vw;
  }

  .graduate-index__vertical-text {
    right: 2vw;
    top: 2vw;
  }

  .graduate-index:nth-child(2n) .graduate-index__vertical-text {
    left: 2vw;
  }

  .graduate-index__color-text {
    left: 0;
    bottom: 0;
    min-width: 200px;
    min-height: 120px;
    padding: 15px 20px;
    font-size: 1.3rem;
  }

  .graduate-index__vertical-text .cp-inner {
    font-size: 1.6rem;
    letter-spacing: .1rem;
  }

  .graduate-index__vertical-text .cp-inner span {
    padding: 4px 2px 10px 2px;
  }

  .graduate-index:nth-child(2n) .graduate-index__color-text {
    right: 0;
    bottom: 0;
  }

  .graduate-index__btn-wrap {
    position: relative;
    display: block;
    margin: 0 auto;
    padding: 10px 0 30px 0;
  }

  .graduate-index__btn-wrap::before {
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    height: 100%;
    background: #F0F4F5;
  }
}

.under-picks {
  position: relative;
  background: #F0F4F5;
}

@media only screen and (max-width: 959px) {
  .under-picks {}
}

.under-picks::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 200vw;
  height: 100%;
  margin-left: calc(50% - 100vw);
  background: #F0F4F5;
}

.under-picks__inner {
  position: relative;
  margin-left: -70px;
  margin-right: -70px;
  padding: 60px 0 80px 0;
  overflow: hidden;
}

@media only screen and (max-width: 959px) {
  .under-picks__inner {
    margin-left: 0;
    margin-right: 0;
    padding: 40px 0 30px 0;
  }
}

.under-picks__head {
  position: relative;
  max-width: 480px;
  margin: 0 auto 40px auto;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: 0.5rem;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .under-picks__head {
    margin-bottom: 20px;
    max-width: none;
    font-size: 27px;
    font-size: 2.7rem;
    letter-spacing: 0.3rem;
    line-height: 1.6;
  }
}

.under-picks__items {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 959px) {
  .under-picks__items {
    display: block;
  }
}

.under-picks__item {
  display: block;
  width: calc(25% - 15px);
  margin-right: 20px;
  background: #fff;
}

.under-picks__item:nth-child(4n) {
  margin-right: 0;
}

@media only screen and (max-width: 959px) {
  .under-picks__item {
    width: 100%;
    margin: 20px auto;
  }
}

.under-picks__item a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  color: #333;
}

.under-picks__item a:hover {
  text-decoration: none;
}

.under-picks__item a:hover .under-picks__thumb-inner {
  transform: scale(1.2);
}

.under-picks__item a:hover .under-picks__title {
  color: #0B59AD;
}

.under-picks__thumb {
  position: relative;
  overflow: hidden;
}

.under-picks__thumb-inner {
  padding-top: 56.25%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #eaeaea;
  transition: transform .4s;
}

.under-picks__thumb-inner[style*="null"] {
  background-image: url(/albums/css/basic1-blocks1/abm00006235.svg) !important;
  background-size: 40% auto !important;
}

.under-picks__thumb-category {
  position: absolute;
  bottom: 7px;
  left: 12px;
  display: flex;
  gap: 10px;
}

.under-picks__thumb-category span {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 68px;
  height: 68px;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
}

.under-picks__title {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 20px 30px 0 30px;
  font-size: 1.6rem;
  line-height: 1.63;
}

.under-picks__description {
  padding: 25px 30px 0 30px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.86;
}

.under-picks__tags {
  padding: 0 30px 25px 30px;
  font-size: 1.4rem;
  font-weight: 500;
}

.under-picks__tags span {
  display: inline-block;
  margin-right: 15px;
}

.under-picks__tags span:last-child {
  margin-right: 0;
}


/*緊急処置ここから*/
.under-picks__sdgs {
  display: none;
}

.under-picks__tags .univ_determined_sdgs,
.under-picks__tags .univ_sdgs_1,
.under-picks__tags .univ_sdgs_2,
.under-picks__tags .univ_sdgs_3,
.under-picks__tags .univ_sdgs_4,
.under-picks__tags .univ_sdgs_5,
.under-picks__tags .univ_sdgs_6,
.under-picks__tags .univ_sdgs_7,
.under-picks__tags .univ_sdgs_8,
.under-picks__tags .univ_sdgs_9,
.under-picks__tags .univ_sdgs_10,
.under-picks__tags .univ_sdgs_11,
.under-picks__tags .univ_sdgs_12,
.under-picks__tags .univ_sdgs_13,
.under-picks__tags .univ_sdgs_14,
.under-picks__tags .univ_sdgs_15,
.under-picks__tags .univ_sdgs_16,
.under-picks__tags .univ_sdgs_17 {
  display: none;
}
/*緊急処置ここまで*/

.under-picks__btn {
  position: relative;
  margin-top: 60px;
  font-size: 1.4rem;
}

@media only screen and (max-width: 959px) {
  .under-picks__btn {
    margin-top: 30px;
  }
}

.under-picks__btn a {
  display: block;
  width: 300px;
  margin: 0 auto;
  padding: 12px;
  text-align: center;
  border: 1px solid #666;
  background: url(/albums/css/basic1-blocks1/abm00002629.svg) no-repeat top 50% right 10px #fff;
  color: #333;
}

.under-picks__btn a:hover {
  text-decoration: none;
  color: #fff;
  background-color: #063F83;
  background-image: url(/albums/css/basic1-blocks1/abm00002630.svg);
  border-color: #063F83;
}

.under-news {
  width: 100%;
  padding: 0 0 70px 0;
  background: #fff;
  margin-top: 80px;
}

@media only screen and (max-width: 959px) {
  .under-news {
    margin-bottom: 10px;
    padding: 0 0 40px 0;
    margin-top: 20px;
  }
}

.under-news__inner {
  margin: 0 auto;
}

.under-news__head {
  margin-bottom: 25px;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: 0.5rem;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .under-news__head {
    margin-bottom: 10px;
    font-size: 27px;
    font-size: 2.7rem;
    letter-spacing: 0.3rem;
    text-align: center;
  }
}

.under-news__item {
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #ccc;
  padding-top: 24px;
  padding-bottom: 24px;
}

@media only screen and (max-width: 959px) {
  .under-news__item {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.under-news__item:first-child {
  border-top: 1px solid #ccc;
}

.under-news__date {
  width: 108px;
  margin-bottom: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
}

@media only screen and (max-width: 959px) {
  .under-news__date {
    width: 85px;
    margin-bottom: 8px;
    padding-top: 2px;
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.under-news__category {
  width: 134px;
}

@media only screen and (max-width: 959px) {
  .under-news__category {
    width: calc(100% - 85px);
    margin-bottom: 3px;
    padding-left: 0;
  }
}

.under-news__category span {
  display: block;
  padding: 0 6px;
  color: #fff;
  text-align: center;
  border-radius: 2px;
  font-size: 1.3rem;
  font-weight: 500;
}

@media only screen and (max-width: 959px) {
  .under-news__category span {
    display: table;
    min-width: 134px;
  }
}

.under-news__title {
  width: calc(100% - 108px - 134px);
  padding-left: 32px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6;
}

@media only screen and (max-width: 959px) {
  .under-news__title {
    width: 100%;
    padding-left: 0;
    font-weight: 500;
  }
}

.under-news__title a {
  display: inline-block;
  color: #333;
}

.under-news__title a:hover {
  text-decoration: none;
  color: #0B59AD;
}

.under-news__btn {
  position: relative;
  margin-top: 60px;
  font-size: 1.4rem;
}

@media only screen and (max-width: 959px) {
  .under-news__btn {
    margin-top: 30px;
  }
}

.under-news__btn a {
  display: block;
  width: 300px;
  margin: 0 auto;
  padding: 12px;
  text-align: center;
  border: 1px solid #666;
  background: url(/albums/css/basic1-blocks1/abm00002629.svg) no-repeat top 50% right 10px #fff;
  color: #333;
}

.under-news__btn a:hover {
  text-decoration: none;
  color: #fff;
  background-color: #063F83;
  background-image: url(/albums/css/basic1-blocks1/abm00002630.svg);
  border-color: #063F83;
}

.image-slider {
  margin-top: 40px;
  margin-bottom: 40px;
  border-radius: 6px;
  overflow: hidden;
}


.icon-btn {
  display: -ms-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 30px;
  margin-bottom: 30px;
}

.icon-btn__item {
  width: 46.876%;
  font-size: 2rem;
  margin-right: 6.248%;
  font-weight: 700;
  line-height: 1.6;
}

.icon-btn__item:nth-child(2n) {
  margin-right: 0;
}

.icon-btn__item a {
  display: block;
  min-height: 100px;
  padding: 34px 10px 23px 10px;
  border: 1px solid #063F83;
  background-color: #fff;
  text-align: center;
  color: #333;
}

.icon-btn__item a::before {
  content: "";
  position: relative;
  top: -3px;
  display: inline-block;
  width: 46px;
  min-width: 46px;
  height: 40px;
  margin-right: 19px;
  background: url(/albums/css/basic1-blocks1/abm00003036.svg) no-repeat center center;
  background-size: 46px 40px;
  vertical-align: middle;
}

.icon-btn__item a::after {
  content: "";
  display: inline-block;
  width: 46px;
  min-width: 46px;
  margin-left: 19px;
  background: none;
}

.icon-btn__item a[href*='.pdf']::before {
  content: "";
  position: relative;
  top: -3px;
  display: inline-block;
  width: 36px;
  min-width: 36px;
  height: 40px;
  margin-right: 19px;
  background: url(/albums/css/basic1-blocks1/abm00002958.svg) no-repeat center center;
  background-size: 36px 40px;
  vertical-align: middle;
}

.icon-btn__item a[href*='.pdf']::after {
  width: 36px;
  min-width: 36px;
  margin-left: 19px;
  background: none;
}

.icon-btn__item a:hover {
  background-color: #063F83;
  color: #fff;
  text-decoration: none;
}

.icon-btn__item a:hover::before {
  background-image: url(/albums/css/basic1-blocks1/abm00003038.svg);
}

.icon-btn__item a[href*='.pdf']:hover::before {
  background-image: url(/albums/css/basic1-blocks1/abm00003037.svg);
}

@media only screen and (max-width: 959px) {
  .icon-btn__item {
    width: 100%;
    margin-right: 0;
    font-size: 1.8rem;
  }

  .icon-btn__item:nth-child(2n) {
    margin-top: 20px;
  }

  .icon-btn__item a {
    display: block;
    min-height: 0;
    padding: 20px 10px 14px 10px;
  }
}


.web-application-flow {
  display: -ms-flex;
  display: flex;
  margin-top: 40px;
  margin-bottom: 40px;
}

.web-application-flow__item {
  width: calc(16.6666% - 20px);
  margin: 0 10px;
}

.web-application-flow__step {
  font-size: 1.8rem;
  font-weight: 700;
  color: #063F83;
}

.web-application-flow__text {
  line-height: 1.466;
}

.web-application-flow svg {
  width: 100%;
  height: auto;
}

.web-application-flow svg * {
  transition: .2s;
}

.web-application-flow a {
  display: block;
  text-align: center;
  color: #333;
}

.web-application-flow a:hover {
  text-decoration: none;
}

.web-application-flow a:hover svg *[style*="#fff"] {
  fill: #063F83 !important;
}

.web-application-flow a:hover svg *[style*="#063f83"] {
  fill: #fff !important;
}

@media only screen and (max-width: 959px) {
  .web-application-flow {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .web-application-flow__item {
    width: calc(50% - 20px);
    margin: 0 10px 20px 10px;
  }
}

.application-flow {
  display: -ms-flex;
  display: flex;
  margin-top: 30px;
  margin-bottom: 30px;
}

.application-flow__item {
  position: relative;
  width: 46.876%;
  margin-right: 6.248%;
  padding: 30px 30px 20px 30px;
  border: 2px solid #063F83;
  background: #fff;
}

.application-flow__item:nth-child(2n) {
  margin-right: 0;
}

.application-flow__item::before {
  content: "";
  position: absolute;
  right: -6.5%;
  top: 50%;
  display: block;
  height: 18px;
  width: 13px;
  margin-top: -10px;
  background: #063F83;
}

.application-flow__item::after {
  content: "";
  position: absolute;
  right: -6.5%;
  top: 50%;
  display: block;
  height: 0;
  width: 0;
  margin-top: -21px;
  margin-right: -19px;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 20px solid #063F83;
}

.application-flow__item:last-child::before,
.application-flow__item:last-child::after {
  content: none;
}

.application-flow__head {
  margin-bottom: 25px;
  font-size: 1.8rem;
  font-weight: 700;
}

.application-flow__text {
  margin-bottom: 20px;
}

.application-flow__btn a {
  display: block;
  margin-bottom: 10px;
  padding: 8px;
  line-height: 1.6;
  font-weight: 500;
  font-size: 1.4rem;
  text-align: center;
  border: 1px solid #063F83;
  background: #063F83;
  color: #fff;
}

.application-flow__btn a:hover {
  text-decoration: none;
  background: #fff;
  color: #063F83;
}

@media only screen and (max-width: 959px) {
  .application-flow {
    display: block;
  }

  .application-flow__item {
    width: 100%;
    margin-right: 0;
    margin-bottom: 60px;
    padding: 20px 4vw;
    border: 1px solid #063F83;
  }

  .application-flow__item:nth-child(2n) {
    margin-bottom: 0;
  }

  .application-flow__item::before {
    right: 50%;
    top: 100%;
    height: 13px;
    width: 18px;
    margin-top: 14px;
    margin-right: -18px;
  }

  .application-flow__item::after {
    right: 50%;
    top: 100%;
    margin-top: 16px;
    margin-right: -19px;
    transform: rotate(90deg);
  }
}

.bus-list>*>*>*>.gnav-folder {
  margin-left: 25px;
  list-style: disc;
}

.bus-list>*>*>*>.gnav-folder>* {
  display: list-item;
}

.bus-list>*>*>.gnav-link {
  display: block;
  margin-top: 40px;
  margin-bottom: 20px;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.8rem;
  color: #333;
  pointer-events: none;
}

@media only screen and (max-width: 959px) {
  .bus-list>*>*>.gnav-link {
    margin-top: 30px;
    margin-bottom: 10px;
  }
}


.cp-gaibu-text-item {
  width: calc(50% - 10px);
}

.cp-gaibu-text-item .cp-inner {
  position: relative;
  padding-top: 56.25%;
}

body.system.cms.apps .cp-gaibu-text-item .cp-inner {
  padding-top: 0;
}

.cp-gaibu-text-item iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

body.system.cms.apps .cp-gaibu-text-item iframe {
  position: relative;
  width: auto;
  height: auto;
}

@media screen and (max-width: 959px) {
  .cp-gaibu-text-item:first-child {
    margin-bottom: 10px;
  }

  .cp-gaibu-text-item:last-child {
    margin-top: 10px;
  }
}

.license-menu {
  margin-top: 75px;
  margin-bottom: 40px;
  border-bottom: 1px solid #063F83;
}

.license-menu__inner {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
}

.license-menu__item {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  width: 100%;
  text-align: center;
  padding: 25px 5px;
  border-left: none;
  word-break: break-all;
  cursor: pointer;
  font-size: 1.4rem;
  font-weight: 500;
  background: #fff;
  cursor: pointer;
  transition: .2s;
}

.license-menu__item:first-child {
  border-radius: 6px 0 0 0;
}

.license-menu__item:last-child {
  border-radius: 0 6px 0 0;
}

.license-menu__item:hover,
.license-menu__item.is-active {
  background-color: #063F83;
  color: #fff;
}

@media screen and (max-width: 959px) {
  .license-menu {
    border-right: 1px solid #063F83;
  }

  .license-menu__inner {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .license-menu__item {
    width: 50%;
    padding: 15px 5px;
    border-top: none;
  }

  .license-menu__item:first-child,
  .license-menu__item:last-child {
    border-radius: 0;
  }

  .license-menu__item:nth-child(1),
  .license-menu__item:nth-child(2) {
    border-top: 1px solid #063F83;
  }

  .license-menu__item:nth-child(2n+1) {
    border-left: 1px solid #063F83;
  }
}

.license-list__block {
  display: -ms-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(100% + 20px);
  margin-left: -10px;
}

.license-list__item {
  width: calc(50% - 20px);
  margin: 0 10px 20px 10px;
  padding: 30px 30px 60px 30px;
  background: #fff;
}

.license-list__label {
  display: table;
  padding: 0 10px;
  font-size: 1.2rem;
  font-weight: 500;
  border-radius: 100px;
  background: #666;
  color: #fff;
}

.license-list__item--01 .license-list__label {
  background-color: #f00;
}

.license-list__item--02 .license-list__label {
  background-color: #EE8121;
}

.license-list__sub-head {
  margin-top: 20px;
  font-weight: 700;
}

.license-list__main-head {
  margin-top: 10px;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.32;
}

.license-list__text {
  margin-top: 25px;
  font-size: 1.4rem;
  line-height: 1.86;
}

.license-list__course {
  margin-top: 25px;
  padding-top: 25px;
  border-top: 1px solid #ccc;
}

.license-list__course a {
  display: inline-block;
  color: #fff;
}

.license-list__course a:hover {
  opacity: .7;
}

.license-list__course a span {
  display: inline-block;
  padding: 3px 10px;
  margin: 3px 0;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  border-radius: 2px;
}

@media screen and (max-width: 959px) {
  .license-list__item {
    width: 100%;
    padding: 20px 4vw 40px 4vw;
  }

  .license-list__sub-head {
    margin-top: 10px;
  }

  .license-list__main-head {
    margin-top: 5px;
    font-size: 2rem;
  }

  .license-list__text {
    margin-top: 15px;
  }

  .license-list__course {
    margin-top: 15px;
    padding-top: 15px;
  }
}

.w960 {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}


/* ==========================================================================

Spirits & Mind（新）

========================================================================== */
.top-spiritsNew {
  margin-bottom: 16px;
  padding: 60px 0 0 0;
  background: #fff;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew {
    position: relative;
    margin-bottom: 10px;
    padding: 40px 0 53px;
    background: #F9F9F9;
    border: 1px solid #999;
    border-left: 0;
    border-right: 0;
  }
}

.top-spiritsNew__head {
  position: relative;
  max-width: 480px;
  margin: 0 auto;
  padding: 0 40px;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: 0.5rem;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__head {
    max-width: none;
    padding: 0;
    font-size: 27px;
    font-size: 2.7rem;
    line-height: 1.6;
  }
}

.top-spiritsNew__head::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -25px;
  display: block;
  width: 1px;
  height: 20px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__head::before {
    content: none;
  }
}

.top-spiritsNew__head-aside {
  margin-top: 40px;
  margin-bottom: 35px;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__head-aside {
    margin-top: 20px;
    margin-bottom: 24px;
    padding: 0 4vw;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6;
  }
}

.top-spiritsNew__items {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__items {
    margin: 0 7vw;
    padding: 0 0 12px;
  }
}

.top-spiritsNew__items.slick-initialized {
  display: block;
}

.top-spiritsNew__item-wrap {
  position: relative;
  width: 50%;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__item-wrap {
    width: 100%;
  }
}

.top-spiritsNew .top-spiritsNew__item-wrap::before {
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-position: center center;
  background-size: cover;
  z-index: 0;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew .top-spiritsNew__item-wrap::before {
    height: 44vw;
  }
}

.top-spiritsNew__item {
  max-height: 480px;
  height: 30vw;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__item {
    max-height: none;
    height: auto;
    padding-top: 43.5vw;
    background-size: 100% auto;
    background-position: top right;
  }
}

.top-spiritsNew__item-inner {
  position: absolute;
  left: 0;
  top: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__item-inner {
    position: static;
    padding: 0 !important;
  }
}

.top-spiritsNew__item-wrap:nth-child(1) .top-spiritsNew__item-inner {
  -ms-flex-pack: end;
  justify-content: flex-end;
  left: -13px;
  padding: 10px 10px 59px;
}

.top-spiritsNew__item-wrap:nth-child(2) .top-spiritsNew__item-inner {
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-align: end;
  align-items: flex-end;
  padding: 61px 145px 10px 10px;
}

.top-spiritsNew__item-wrap:nth-child(3) .top-spiritsNew__item-inner {
  -ms-flex-pack: end;
  justify-content: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  padding: 10px 100px 58px 10px;
}

.top-spiritsNew__item-wrap:nth-child(4) .top-spiritsNew__item-inner {
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  padding: 60px 10px 10px 100px;
}

@media only screen and (max-width: 1449px) {

  .top-spiritsNew__item-wrap:nth-child(1) .top-spiritsNew__item-inner,
  .top-spiritsNew__item-wrap:nth-child(2) .top-spiritsNew__item-inner,
  .top-spiritsNew__item-wrap:nth-child(3) .top-spiritsNew__item-inner,
  .top-spiritsNew__item-wrap:nth-child(4) .top-spiritsNew__item-inner {
    padding: 3.5vw 7vw;
  }
}

.top-spiritsNew__text {
  width: 100%;
  max-width: 389px;
  padding: 18px 26px;
  margin-bottom: 6px;
  line-height: 1.6;
  letter-spacing: .01em;
  background: #fff;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
}

@media only screen and (max-width: 1449px) {
  .top-spiritsNew__text {
    padding: 1vw 1.5vw;
    font-size: 1vw;
  }
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__text {
    max-width: none;
    background: none;
    margin-bottom: 0;
    padding: 13px 0;
    text-align: center;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0;
  }
}

.top-spiritsNew__btn {
  width: 100%;
  max-width: 389px;
  line-height: 1.6;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
}

@media only screen and (max-width: 1449px) {
  .top-spiritsNew__btn {
    font-size: 1.7vw;
  }
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__btn {
    max-width: none;
    font-size: 18px;
    font-size: 1.8rem;
    min-height: 107px;
  }
}

.top-spiritsNew__btn ul {
  margin: 0;
  list-style: none;
}

.cms .top-spiritsNew__btn ul {
  list-style: disc;
  color: #000;
}

.top-spiritsNew__btn ul li {
  padding: 0;
  text-indent: 0;
  margin-bottom: 6px;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__btn ul li {
    box-shadow: 1px 1px 1px rgba(0, 0, 0, .25);
  }
}

.top-spiritsNew__btn ul li:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__btn ul li:last-child {
    margin-bottom: 2px;
  }
}

.top-spiritsNew__btn ul li a {
  position: relative;
  display: block;
  padding: 9px 53px 13px 27px;
  background: #fff;
  color: #333;
  letter-spacing: 0;
}

@media only screen and (max-width: 1449px) {
  .top-spiritsNew__btn ul li a {
    padding: 1vw 2vw 1vw 1.5vw;
  }
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__btn ul li a {
    padding: 11px 39px 10px 9px;
  }
}

@media only screen and (min-width: 960px) {
  .top-spiritsNew__btn ul li a:hover {
    background: #0B59AD;
    text-decoration: none;
    color: #fff;
  }

  .top-spiritsNew__btn ul li a:hover path {
    fill: #fff !important;
  }
}

.top-spiritsNew__item-wrap:nth-child(1) .top-spiritsNew__item-inner .top-spiritsNew__btn ul li:first-child a {
  letter-spacing: -.25rem;
}

.top-spiritsNew__btn svg {
  position: absolute;
  right: 21px;
  top: 15px;
  width: 32px;
  height: 32px;
}

@media only screen and (max-width: 1449px) {
  .top-spiritsNew__btn svg {
    right: 1.2vw;
    top: 1.2vw;
    width: 2.3vw;
    height: 2.3vw;
  }
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__btn svg {
    top: 0;
    bottom: 0;
    right: 9px;
    width: 20px;
    height: 20px;
    margin: auto 0;
  }
}

.top-spiritsNew__btn path {
  transition: fill .2s;
}

.top-spiritsNew__number {
  position: absolute;
  top: 103px;
}

@media only screen and (max-width: 1449px) {
  .top-spiritsNew__number {
    top: 6vw;
    max-width: 33.5vw;
    width: 100%;
  }
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__number {
    right: 8vw;
    top: 25vw;
    width: 50vw;
  }
}

.top-spiritsNew__number strong {
  font-size: 130px;
  font-size: 13rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}

@media only screen and (max-width: 1449px) {
  .top-spiritsNew__number strong {
    font-size: 9vw;
  }
}

.top-spiritsNew__arrow {
  display: none;
  margin-left: auto;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__arrow {
    position: absolute;
    left: 50%;
    bottom: 30px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 94px;
    transform: translateX(-50%);
    line-height: 1;
  }
}

.top-spiritsNew__arrow>div {
  transition: .2s;
  cursor: pointer;
}

.top-spiritsNew__arrow>div:hover rect {
  fill: #fff;
}

.top-spiritsNew__arrow>div:hover path {
  fill: #222;
}

.top-spiritsNew__arrow svg {
  vertical-align: top;
}

.top-spiritsNew__arrow svg * {
  transition: .2s;
}

/* SP時のスライダースタイルの調整 */
.top-spiritsNew__items .slick-list {
  margin-left: -7vw;
  margin-right: -7vw;
}

.top-spiritsNew__item-wrap.slick-slide {
  margin-left: 7vw !important;
  margin-right: 7vw !important;
}

.top-spiritsNew__arrows {
  display: none;
}

@media only screen and (max-width: 959px) {
  .top-spiritsNew__arrows {
    display: flex;
    justify-content: center;
  }
}

.top-spiritsNew__arrows>div {
  cursor: pointer;
  margin-right: 10px;
  width: 45px;
  height: 45px;
}

.top-spiritsNew__arrows>div:last-child {
  margin-right: 0;
}

body.en .recommend-for-you__text {
  width: calc(100% - 180px);
  font-size: 1.8rem;
}

@media only screen and (max-width: 959px) {
  body.en .recommend-for-you__text {
    width: 100%;
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 959px) {
  body.en .recommend-for-you__image {
    width: 100%;
    justify-content: center;
  }
}

body.en [data-area="content"] .recommend-for-you__text .lead1 {
  font-weight: bold;
  font-family: "Noto Sans JP", Helvetica, Arial, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  font-size: 2.4rem;
  margin-bottom: 10px;
  margin-top: 0;
}

body.system.cms.apps .department-point__text-vertical {
  writing-mode: lr;
}

body.en .department-point__text-vertical {
  position: relative;
  left: 0;
  top: 0;
  writing-mode: lr;
  -ms-writing-mode: lr-tb;
  margin-bottom: 30px;
}

body.en [data-area="content"] .cp-horizontal .cp-horizontal-text {
  text-align: left;
}

body.en [data-area="content"] .cp-horizontal img {
  border-radius: 6px;
  overflow: hidden;
}

.index-image-bg .large-btn {
  margin-top: 0;
  margin-bottom: 0;
}

.zyukensei-nav-oc-pickup__wrap {
  position: relative;
  margin-top: 40px;
  margin-bottom: 40px;
  padding: 40px 0;
}

.zyukensei-nav-oc-pickup__inner {
  position: relative;
  display: -ms-flex;
  display: flex;
  flex-wrap: wrap;
  margin-left: -90px;
  margin-right: -90px;
  background: #fff;
  border-radius: 1000px;
  padding: 25px 90px 40px 90px;
  border: 3px solid #199DD2;
}

.zyukensei-nav-oc-pickup__title {
  width: 100%;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.5;
  color: #199DD2;
}

@media only screen and (max-width: 959px) {
  .zyukensei-nav-oc-pickup__title {
    font-size: 2.1rem;
  }
}

.zyukensei-nav-oc-pickup__image {
  width: 170px;
  display: -ms-flex;
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 959px) {
  .zyukensei-nav-oc-pickup__image {
    width: 100%;
    margin: 15px 0 0;
  }
}

.zyukensei-nav-oc-pickup__image .cp-inner {
  margin: auto;
}

.zyukensei-nav-oc-pickup__image img {
  flex-shrink: 0;
}

.zyukensei-nav-oc-pickup__head {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: calc(50% - 230px);
  margin-left: 30px;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
}

.zyukensei-nav-oc-pickup__head--middle {
  font-size: 2.8rem;
}

.zyukensei-nav-oc-pickup__text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: calc(100% - 171px);
  padding-left: 30px;
  font-size: 1.8rem;
  font-weight: 700;
}

.zyukensei-nav-oc-pickup__text li {
  margin-top: 5px;
}

.zyukensei-nav-oc-pickup__text li:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 1279px) {
  .zyukensei-nav-oc-pickup__inner {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-radius: 40px;
    margin-left: -45px;
    margin-right: -45px;
    padding-left: 45px;
    padding-right: 45px;
  }

  .zyukensei-nav-oc-pickup__head {
    width: calc(100% - 200px);
  }

  .zyukensei-nav-oc-pickup__text {
    width: 100%;
    margin-top: 20px;
    margin-left: 0;
    padding-left: 0;
  }
}

@media only screen and (max-width: 959px) {
  .zyukensei-nav-oc-pickup__wrap {
    padding: 0;
  }

  .zyukensei-nav-oc-pickup__inner {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -4vw;
    margin-right: -4vw;
    background: #fff;
    border-radius: 0;
    padding: 30px 4vw;
  }

  .zyukensei-nav-oc-pickup::before {
    content: none;
  }

  .zyukensei-nav-oc-pickup__head {
    width: calc(100% - 170px - 4vw);
    margin-left: 4vw;
    font-size: 1.6rem;
  }

  .zyukensei-nav-oc-pickup__head--middle {
    font-size: 2.1rem;
  }

  .zyukensei-nav-oc-pickup__text {
    font-size: 1.6rem;
  }

  .zyukensei-nav-oc-pickup__text li {
    margin-top: 5px;
  }
}

body.en .fb_iframe_widget,
body.en .fb_iframe_widget span {
  display: inline !important;
  position: unset !important;
}

body.en .fb_iframe_widget iframe {
  width: 100% !important;
  height: 100% !important;
}

body.en .cp-gaibu-text-item.cp-gaibu-fb-item .cp-inner {
  padding-top: 100%;
}


/* ==========================================================================

メインビジュアル直下バナー　PC/SP切り替え

========================================================================== */
body.top .cp-img-change {
  background: #F0EFFD;
  margin: 0 0 20px;
  padding: 60px 20px;
}
@media only screen and (max-width: 959px) {
  body.top .cp-img-change {
    padding: 30px 4%;
  }
}

body.top .cp-img-change a {
  display: block;
  width: 100%;
}

body.top .cp-img-change .cp-img-item {
  max-width: 1260px;
  margin: 0 auto;
}

body.top .cp-img-change a:hover {
  opacity: .7;
}



/* ==========================================================================

TOPICS

========================================================================== */
.ob-topics {
  position: relative;
  padding: 40px 0;
}

@media only screen and (max-width: 959px) {
  .ob-topics {
    padding: 22px 0 11px;
  }
}

.ob-topics::before {
  content: '';
  background: #f9f9f9;
  width: 600vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: -100%;
  z-index: 0;
}

.ob-topics__head {
  position: relative;
  max-width: 480px;
  margin: 0 auto 77px auto;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: .5rem;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .ob-topics__head {
    margin-bottom: 22px;
    max-width: none;
    font-size: 27px;
    font-size: 2.7rem;
    letter-spacing: .3rem;
    line-height: 1.6;
  }
}

.ob-topics__head::before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -19px;
  display: block;
  width: 1px;
  height: 20px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .ob-topics__head::before {
    content: none;
  }
}

.ob-topics__boxes {
  opacity: 0;
  transition: opacity .2s;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.ob-topics__boxes.is-show {
  opacity: 1;
}

.ob-topics__boxes-link {
  position: relative;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, .16);
  margin-bottom: 30px;
}

@media only screen and (max-width: 959px) {
  .ob-topics__boxes-link {
    margin-bottom: 11px;
  }
}

.cms .ob-topics__boxes-link {
  width: 400px;
}

.ob-topics__boxes.is-2 .ob-topics__boxes-link {
  width: 48%;
}

.ob-topics__boxes.is-3 .ob-topics__boxes-link {
  width: 31.25%;
}

@media only screen and (max-width: 959px) {

  .ob-topics__boxes.is-2 .ob-topics__boxes-link,
  .ob-topics__boxes.is-3 .ob-topics__boxes-link {
    width: 48.41%;
  }
}

.ob-topics__boxes-link a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
}

.ob-topics__boxes-link a[target="_blank"]::after {
  content: none;
}

.ob-topics__boxes-link--image {
  overflow: hidden;
}

.ob-topics__boxes-link--image .cp-inner {
  position: relative;
}

.ob-topics__boxes-link--image img {
  width: 100%;
  transition: transform .4s;
}

.ob-topics__boxes-link a:hover .ob-topics__boxes-link--image img {
  transform: scale(1.2);
}

.ob-topics__boxes-link--iframe {
  overflow: hidden;
  position: relative;
  background: #eaeaea;
}

.ob-topics__boxes-link--iframe::before {
  content: '';
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0;
}

.ob-topics__boxes-link--iframe > .cp-inner {
  position: relative;
  transition: .4s;
  padding-top: 100%;
}

.ob-topics__boxes-link--iframe.is-1-1 > .cp-inner {
  max-width: none;
  width: 178%;
  margin-left: -40%;
}

.ob-topics__boxes-link--iframe.is-4-3 > .cp-inner {
  max-width: none;
  width: 138%;
  margin-left: -19%;
}

.cms .ob-topics__boxes-link--iframe > .cp-inner {
  width: auto;
  padding-top: 0;
  margin-left: 0;
}

.ob-topics__boxes-link a:hover .ob-topics__boxes-link--iframe > .cp-inner {
  transform: scale(1.2);
}

.ob-topics__boxes-link--iframe > .cp-inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.ob-topics__boxes-link--id {
  display: none;
  color: #333;
}

.cms .ob-topics__boxes-link--id {
  display: flex;
  padding: 20px 0 0;
}

.ob-topics__boxes-link--play {
  display: none;
  color: #333;
  padding: 0 0 80px;
}

.ob-topics__boxes-link--play > div:first-child {
  width: 100%;
  max-width: 73px;
}

.cms .ob-topics__boxes-link--play {
  display: flex;
}

.ob-topics__boxes-link--text {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.7;
  padding: 13px 23px;
  letter-spacing: -.01em;
  background-color: rgba(34, 34, 34, .6);
  color: #fff;
}

@media only screen and (max-width: 959px) {
  .ob-topics__boxes-link--text {
    font-size: 1.4rem;
    line-height: 1.5;
    padding: 7px 5px 5px;
  }
}

.ob-topics__boxes-link--text .cp-inner {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

@media only screen and (max-width: 959px) {
  .ob-topics__boxes-link--text .cp-inner {
    -webkit-line-clamp: 3;
  }
}

.cms .ob-topics__boxes-link--text .cp-inner {
  -webkit-box-orient: inherit;
}

/* TOP用 */
.top .ob-topics {
  padding: 40px;
}

@media only screen and (max-width: 959px) {
  .top .ob-topics {
    padding: 22px 4% 11px;
  }
}

.top .ob-topics__inner {
  max-width: 1260px;
  margin: 0 auto;
}

.top .ob-topics__boxes.is-2 .ob-topics__boxes-link {
  width: 48%;
}

.top .ob-topics__boxes.is-3 .ob-topics__boxes-link {
  width: 31.75%;
}

@media only screen and (max-width: 959px) {

  .top .ob-topics__boxes.is-2 .ob-topics__boxes-link,
  .top .ob-topics__boxes.is-3 .ob-topics__boxes-link {
    width: 48.41%;
  }
}


/* ==========================================================================

バナー（PC時3段・SP時2段）

========================================================================== */
.ob-threeBnr {
  position: relative;
  padding: 60px 0 30px;
}

@media only screen and (max-width: 959px) {
  .ob-threeBnr {
    padding: 30px 0 15px;
  }
}

.ob-threeBnr::before {
  content: '';
  background: #EEEEEE;
  width: 600vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: -100%;
  z-index: 0;
}

.ob-threeBnr__inner {
  opacity: 0;
  transition: opacity .2s;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.ob-threeBnr__inner.is-show {
  opacity: 1;
}

.ob-threeBnr__link {
  width: 31.35%;
  margin-bottom: 30px;
}

@media only screen and (max-width: 959px) {
  .ob-threeBnr__link {
    width: 47.83%;
    margin-bottom: 15px;
  }
}

.ob-threeBnr__link a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.ob-threeBnr__link a[target="_blank"]::after {
  content: none;
}

.ob-threeBnr__link a img {
  width: 100%;
  transition: transform .4s;
}

.ob-threeBnr__link a:hover img {
  transform: scale(1.2);
}

/* TOP用 */
.top .ob-threeBnr {
  position: relative;
  padding: 60px 40px 0;
  margin-bottom: -1px;
}

@media only screen and (max-width: 959px) {
  .top .ob-threeBnr {
    padding: 47px 4% 15px;
    margin-bottom: 0;
  }
}

.top .ob-threeBnr+.top-foot-nav {
  padding-top: 30px;
}

@media only screen and (max-width: 959px) {
  .top .ob-threeBnr+.top-foot-nav {
    padding-top: 40px;
  }
}

.top .ob-threeBnr__inner {
  max-width: 1020px;
  margin: 0 auto;
}

.top [data-area="content"] {
  overflow: hidden;
}


/* ==========================================================================

POP UP

========================================================================== */
.ob-popup {
  position: fixed;
  bottom: 10px;
  right: 40px;
  z-index: 13;
  transition: opacity .2s;
  width: 100%;
  max-width: 340px;
}

@media only screen and (max-width: 959px) {
  .ob-popup {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    bottom: inherit;
    right: inherit;
    padding: 0 15px;
    max-width: 370px;
  }

  /* 横向きスタイル */
  /*
  .ob-popup.is-land {
    top: calc(50% - 35px);
    bottom: calc(50% - 35px);
  }
  .ob-popup.is-land .ob-popup__item-contents--text {
    overflow-y: scroll;
    height: 120px;
  }
  */
}

.ob-popup.is-hide {
  opacity: 0;
}

.ob-popup__item {
  display: none;
  position: relative;
  box-shadow: 4px 4px 3px rgba(0, 0, 0, .16);
}

.cms .ob-popup__item,
.ob-popup__item.is-show {
  display: block;
}

.ob-popup__item-close {
  border-radius: 50%;
  cursor: pointer;
  font-size: 0;
  position: absolute;
  top: -20px;
  right: -18px;
  width: 50px;
  height: 50px;
  background-color: #A9A9A9;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220.715%22%20height%3D%2220.715%22%20viewBox%3D%220%200%2020.715%2020.715%22%3E%3Cg%20transform%3D%22translate(18443.578%2022313.096)%22%3E%3Cpath%20d%3D%22M18.062%2C19.83-.884.884.884-.884%2C19.83%2C18.062Z%22%20transform%3D%22translate(-18442.693%20-22312.211)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M18.062%2C19.83-.884.884.884-.884%2C19.83%2C18.062Z%22%20transform%3D%22translate(-18423.748%20-22312.211)%20rotate(90)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
  transition: .2s;
}

@media only screen and (max-width: 959px) {
  .ob-popup__item-close {
    top: -20px;
    right: -15px;
  }
}

.cms .ob-popup__item-close {
  display: none;
}

.ob-popup__item-close:hover {
  background-color: #fff;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220.715%22%20height%3D%2220.715%22%20viewBox%3D%220%200%2020.715%2020.715%22%3E%3Cg%20transform%3D%22translate(18443.578%2022313.096)%22%3E%3Cpath%20d%3D%22M18.062%2C19.83-.884.884.884-.884%2C19.83%2C18.062Z%22%20transform%3D%22translate(-18442.693%20-22312.211)%22%20fill%3D%22%23a9a9a9%22%2F%3E%3Cpath%20d%3D%22M18.062%2C19.83-.884.884.884-.884%2C19.83%2C18.062Z%22%20transform%3D%22translate(-18423.748%20-22312.211)%20rotate(90)%22%20fill%3D%22%23a9a9a9%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
}

.ob-popup__item-contents {
  background: #004690;
  /*min-height: 400px;*/
}

.ob-popup__item-contents--image img {
  width: 100%;
}

.ob-popup__item-contents--text {
  color: #fff;
  padding: 15px 0 21px;
}

.ob-popup__item-contents--textTops {
  text-align: center;
  font-size: 1.7rem;
  line-height: 1.5;
  font-weight: 700;
  padding: 0 19px;
}

.ob-popup__item-contents--textBottoms {
  line-height: 1.68;
  padding: 10px 19px 9px;
  letter-spacing: .06em;
}

.ob-popup__item-contents--textButton {
  width: 100%;
  max-width: 330px;
  margin: 0 auto;
  padding: 0 15px;
  border-radius: 45px;
}

.ob-popup__item-contents--textButton a {
  display: block;
  width: 100%;
  height: 100%;
  color: #004690;
  text-align: center;
  line-height: 1;
  letter-spacing: .1em;
  font-weight: 700;
  border-radius: 45px;
  background: #fff;
  padding: 14px 10px 15px 10px;
  text-decoration: none;
}

@media only screen and (max-width: 959px) {
  .ob-popup__item-contents--textButton a {
    padding: 14px 10px 16px 10px;
  }
}

.ob-popup__item-contents--textButton a:hover {
  background: #BCCEE3;
}

.ob-popupOverlay {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 12;
  width: 100%;
  height: 120%;
  background: rgba(0, 0, 0, .5);
  transition: opacity .2s;
}

@media only screen and (max-width: 959px) {
  .ob-popupOverlay {
    display: block;
  }
}

.ob-popupOverlay.is-hide {
  opacity: 0;
}


/* ==========================================================================

SDGsへの取り組み

========================================================================== */
.ob-sdgsLists {
  margin: 97px 0 99px;
}

@media only screen and (max-width: 959px) {
  .ob-sdgsLists {
    margin: 40px 0 0;
  }
}

.ob-sdgsLists__ttl {
  position: relative;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: .09em;
  padding: 52px 0 43px;
}

@media only screen and (max-width: 959px) {
  .ob-sdgsLists__ttl {
    font-size: 2.4rem;
    padding: 30px 0;
  }
}

.ob-sdgsLists__ttl::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 120vw;
  height: 100%;
  background: #fff;
  margin-left: calc(50% - 60vw);
}

.cms .ob-sdgsLists__ttl::before {
  content: none;
}

.ob-sdgsLists__ttl .cp-inner {
  position: relative;
  z-index: 2;
}

.ob-sdgsLists .news-option {
  position: relative;
  padding: 24px 0;
  transition: opacity .2s;
  opacity: 0;
}

@media only screen and (max-width: 959px) {
  .ob-sdgsLists .news-option {
    padding: 20px 4vw;
  }
}

.ob-sdgsLists .news-option.is-loaded {
  opacity: 1;
}

.ob-sdgsLists .news-option::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 120vw;
  height: 100%;
  background: #E1E9EB;
  margin-left: calc(50% - 60vw);
}

.ob-sdgsLists .news-option__inner {
  position: relative;
}

.ob-sdgsLists .news-option .category select {
  width: 220px;
}

.ob-sdgsLists .news-option .campus select {
  width: 200px;
}

.ob-sdgsLists .news-option .news-year-filter select {
  width: 120px;
}

@media only screen and (max-width: 959px) {

  .ob-sdgsLists .news-option .category select,
  .ob-sdgsLists .news-option .campus select,
  .ob-sdgsLists .news-option .news-year-filter select {
    width: calc(100% - 88px);
  }
}

.ob-sdgsLists .topics-tag-links {
  display: block;
  background: none;
  padding: 59px 0 23px;
  margin-bottom: 0;
  margin-left: calc(50% - 34.899vw);
  margin-right: calc(50% - 34.899vw);
  transition: opacity .2s;
  opacity: 0;
}

@media only screen and (min-width: 1921px) {
  .ob-sdgsLists .topics-tag-links {
    margin-left: -190px;
    margin-right: -190px;
  }
}

@media (min-width: 960px) and (max-width: 1449px) {
  .ob-sdgsLists .topics-tag-links {
    margin-left: 0;
    margin-right: 0;
  }
}

@media only screen and (max-width: 959px) {
  .ob-sdgsLists .topics-tag-links {
    margin: 0;
    padding: 33px 4vw 0;
  }
}

.ob-sdgsLists .topics-tag-links.is-loaded {
  opacity: 1;
}

.ob-sdgsLists .topics-tag-links ul {
  -ms-flex-pack: initial;
  justify-content: flex-start;
  list-style: none;
  margin: 0;
}

.ob-sdgsLists .topics-tag-links li {
  margin: 0;
  width: calc(100% / 9);
}

@media (min-width: 0px) and (max-width: 749px) {
  .ob-sdgsLists .topics-tag-links li {
    width: calc(100% / 5);
  }
}

.ob-sdgsLists .topics-tag-links li a {
  display: block;
  font-size: 0;
  border: 0;
  border-radius: 0;
  background-color: inherit;
  background-size: contain;
  padding-top: 95.446%;
}

@media (min-width: 1000px) and (max-width: 1330px) {
  .ob-sdgsLists .topics-tag-links li a {
    padding-top: 92.9%;
  }
}

@media (min-width: 960px) and (max-width: 999px) {
  .ob-sdgsLists .topics-tag-links li a {
    padding-top: 91.4%;
  }
}

@media (min-width: 750px) and (max-width: 960px) {
  .ob-sdgsLists .topics-tag-links li a {
    padding-top: 97.2%;
  }
}

@media (min-width: 426px) and (max-width: 749px) {
  .ob-sdgsLists .topics-tag-links li a {
    padding-top: 97.9%;
  }
}

@media (min-width: 0px) and (max-width: 425px) {
  .ob-sdgsLists .topics-tag-links li a {
    padding-top: 94.6%;
  }
}

.ob-sdgsLists .topics-tag-links li a.is-noOpacity {
  opacity: .4;
}

.ob-sdgsLists .topics-tag-links li a.is-active {
  opacity: 1 !important;
}

.ob-sdgsLists .topics-tag-links li a.is-all {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22148.891%22%20height%3D%22148.891%22%20viewBox%3D%220%200%20148.891%20148.891%22%3E%3Cg%20transform%3D%22translate(21577.891%2016637)%22%3E%3Cg%20transform%3D%22translate(-23059%20-22414)%22%3E%3Crect%20width%3D%22148.89%22%20height%3D%22148.89%22%20transform%3D%22translate(1481.109%205777)%22%20fill%3D%22%23fff%22%2F%3E%3Ccircle%20cx%3D%2248%22%20cy%3D%2248%22%20r%3D%2248%22%20transform%3D%22translate(1507%205808)%22%20fill%3D%22%23004085%22%2F%3E%3Ctext%20transform%3D%22translate(1555%205867)%22%20fill%3D%22%23fff%22%20font-size%3D%2230%22%20font-family%3D%22NotoSansCJKjp-Black%2C%20Noto%20Sans%20CJK%20JP%22%20font-weight%3D%22800%22%3E%3Ctspan%20x%3D%22-27.81%22%20y%3D%220%22%3EALL%3C%2Ftspan%3E%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E') !important;
}

.ob-sdgsLists__inner {
  margin-left: calc(50% - 34.899vw);
  margin-right: calc(50% - 34.899vw);
  transition: opacity .2s;
  opacity: 0;
}

@media only screen and (min-width: 1921px) {
  .ob-sdgsLists__inner {
    margin-left: -190px;
    margin-right: -190px;
  }
}

@media (min-width: 960px) and (max-width: 1449px) {
  .ob-sdgsLists__inner {
    margin-left: 0;
    margin-right: 0;
  }
}

@media only screen and (max-width: 959px) {
  .ob-sdgsLists__inner {
    margin: 0;
    padding: 0 4vw;
  }
}

.ob-sdgsLists__inner.is-loaded {
  opacity: 1;
}

.ob-sdgsLists__inner .list-picks__items:empty {
  display: block;
  padding: 35px 0 !important;
  text-align: center;
}

.ob-sdgsLists__inner .list-picks__items:empty::before {
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
  content: "取り組み紹介の記事はありません。";
  font-size: 1.6rem;
}


.ob-sdgsLists .list-picks__items {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0;
  padding: 0;
  opacity: 1;
  transition: opacity .2s;
  border: 0;
}

@media (min-width: 960px) and (max-width: 1449px) {
  .ob-sdgsLists .list-picks__items {
    justify-content: space-between;
  }
}

.ob-sdgsLists .list-picks__item {
  display: block;
  background: #fff;
  width: 23.88%;
  margin-top: 40px;
  margin-right: 1.49%;
  transition: opacity .2s;
}

@media (min-width: 960px) and (max-width: 1449px) {
  .ob-sdgsLists .list-picks__item {
    width: 48.5%;
    margin-right: 0;
  }
}

@media only screen and (max-width: 959px) {
  .ob-sdgsLists .list-picks__item {
    width: 100%;
    margin-right: 0;
  }
}

.ob-sdgsLists .list-picks__item.is-hidden {
  display: none;
  opacity: 0;
  height: 0;
  margin: 0;
}

.ob-sdgsLists .list-picks__item:nth-child(4n) {
  margin-right: 0;
}

@media (min-width: 960px) and (max-width: 1449px) {
  .ob-sdgsLists .list-picks__item:nth-child(2n) {
    margin-right: 0;
  }

  .ob-sdgsLists .list-picks__item:nth-child(4n) {
    margin-right: 0;
  }
}

.ob-sdgsLists .list-picks__item a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  color: #333;
}

.ob-sdgsLists .list-picks__thumb {
  width: 100%;
}

.ob-sdgsLists .list-picks__item a:hover .list-picks__thumb-inner {
  transform: scale(1.2);
}

.ob-sdgsLists .list-picks__title {
  /*flex: 1 1 auto;*/
  padding: 20px 1.5vw 0 1.5vw;
  font-size: 1.6rem;
  line-height: 1.63;
  color: #333;
}
@media only screen and (min-width: 1921px) {
  .ob-sdgsLists .list-picks__title {
    padding: 20px 30px 0 30px;
  }
}
@media (min-width: 960px) and (max-width: 1449px){
  .ob-sdgsLists .list-picks__title {
    padding: 20px 1.5vw 0 1.5vw;
  }
}
@media only screen and (max-width: 959px) {
  .ob-sdgsLists .list-picks__title {
    padding: 20px 3.1vw 0 3.1vw;
  }
}

.ob-sdgsLists .list-picks__item a:hover .list-picks__title {
  color: #333;
}

.ob-sdgsLists .list-picks__description {
  padding: 25px 1.5vw 0 1.5vw;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.86;
  color: #222;
}
@media only screen and (min-width: 1921px) {
  .ob-sdgsLists .list-picks__tags {
    padding: 25px 30px 0 30px;
  }
}
@media (min-width: 960px) and (max-width: 1449px){
  .ob-sdgsLists .list-picks__description {
    padding: 25px 1.5vw 0 1.5vw;
  }
}
@media only screen and (max-width: 959px) {
  .ob-sdgsLists .list-picks__description {
    padding: 25px 3.1vw 0 3.1vw;
  }
}

.ob-sdgsLists .list-picks__tags {
  padding: 2px 1.5vw 0 1.5vw;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.57;
  color: #555;
}
@media only screen and (min-width: 1921px) {
  .ob-sdgsLists .list-picks__tags {
    padding: 2px 30px 0 30px;
  }
}
@media (min-width: 960px) and (max-width: 1449px){
  .ob-sdgsLists .list-picks__tags {
    padding: 2px 1.5vw 0 1.5vw;
  }
}
@media only screen and (max-width: 959px) {
  .ob-sdgsLists .list-picks__tags {
    padding: 2px 3.1vw 0 3.1vw;
  }
}

.ob-sdgsLists .list-picks__tags span {
  display: block;
  margin-right: 0;
  margin-bottom: 4px;
}

.ob-sdgsLists .list-picks__tags .univ_determined_sdgs {
  display: none;
}

.ob-sdgsLists .list-picks__sdgs {
  width: 100%;
  padding: 25px 1.5vw;
}
@media only screen and (min-width: 1921px) {
  .ob-sdgsLists .list-picks__sdgs {
    padding: 25px 30px;
  }
}
@media (min-width: 960px) and (max-width: 1449px){
  .ob-sdgsLists .list-picks__sdgs {
    padding: 25px 1.5vw;
  }
}
@media only screen and (max-width: 959px) {
  .ob-sdgsLists .list-picks__sdgs {
    padding: 25px 3.1vw;
  }
}

.ob-sdgsLists .list-picks__sdgs span {
  width: calc(100% / 6);
  height: 2.2vw;
  font-size: 0;
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (min-width: 1921px) {
  .ob-sdgsLists .list-picks__sdgs span {
    height: 44px;
  }
}
@media (min-width: 960px) and (max-width: 1449px){
  .ob-sdgsLists .list-picks__sdgs span {
    height: 5.1vw;
  }
}
@media only screen and (max-width: 959px) {
  .ob-sdgsLists .list-picks__sdgs span {
    height: 12.5vw;
  }
}

.ob-sdgsLists__more {
  position: relative;
  width: 100%;
  max-width: 300px;
  margin: 56px auto 0 auto;
  padding: 12px;
  text-align: center;
  border: 1px solid #666;
  background: #fff;
  color: #333;
  font-size: 1.4rem;
  transition: .2s;
  cursor: pointer;
}

@media only screen and (max-width: 959px) {
  .ob-sdgsLists__more {
    margin-top: 40px;
  }
}

.ob-sdgsLists__more:hover {
  text-decoration: none;
  color: #fff;
  background-color: #063F83;
  border-color: #063F83;
}


/* ==========================================================================

SNS TOP

========================================================================== */
.top-snsBlock {
  background: #fff;
  margin-top: 16px;
  padding: 60px 0 0;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock {
    margin-top: 10px;
  }
}

.top-snsBlock__head {
  position: relative;
  max-width: 480px;
  margin: 0 auto;
  padding: 0 40px;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: 0.5rem;
  text-align: center;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__head {
    max-width: none;
    padding: 0;
    font-size: 27px;
    font-size: 2.7rem;
    line-height: 1.6;
  }
}

.top-snsBlock__head::before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -25px;
  display: block;
  width: 1px;
  height: 20px;
  background: #999;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__head::before {
    content: none;
  }
}

.top-snsBlock__tab {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin: 60px 0 0;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__tab {
    margin: 30px 4vw 0;
  }
}

.top-snsBlock__tab-list {
  position: relative;
  text-align: center;
  cursor: pointer;
  width: 240px;
  transition: .3s;
  padding: 0 0 20px;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__tab-list {
    width: calc(100% / 3);
    text-align: left;
    padding: 0 0 15px;
  }
}

.cms .top-snsBlock__tab-list {
  cursor: default;
}

.top-snsBlock__tab-list::after {
  background-color: inherit;
}

.top-snsBlock__tab-list:hover,
.top-snsBlock__tab-list.is-active {
  border-bottom: 1px solid #0B59AD;
}

.top-snsBlock__tab-list .cp-inner {
  position: relative;
  display: inline-block;
  padding: 0 0 0 20px;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__tab-list .cp-inner {
    font-size: 0;
  }
}

.top-snsBlock__tab-list .cp-inner::before {
  content: '';
  position: absolute;
  display: block;
  margin: auto 0;
}

.top-snsBlock__tab-list .cp-inner.is-ig::before {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%3Cdefs%3E%3CclipPath%20id%3D%22a%22%3E%3Crect%20width%3D%2212%22%20height%3D%2212%22%20fill%3D%22%230b59ad%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3Cg%20transform%3D%22translate(22761%2021906.398)%22%3E%3Cg%20transform%3D%22translate(-22761%20-21906.398)%22%3E%3Cg%20clip-path%3D%22url(%23a)%22%3E%3Cpath%20d%3D%22M8.491%2C12H3.508A3.512%2C3.512%2C0%2C0%2C1%2C0%2C8.491V3.508A3.512%2C3.512%2C0%2C0%2C1%2C3.508%2C0H8.491A3.512%2C3.512%2C0%2C0%2C1%2C12%2C3.508V8.491A3.512%2C3.512%2C0%2C0%2C1%2C8.491%2C12M3.508%2C1.119a2.393%2C2.393%2C0%2C0%2C0-2.39%2C2.39V8.491a2.393%2C2.393%2C0%2C0%2C0%2C2.39%2C2.39H8.491a2.393%2C2.393%2C0%2C0%2C0%2C2.39-2.39V3.508a2.393%2C2.393%2C0%2C0%2C0-2.39-2.39Z%22%20fill%3D%22%230b59ad%22%2F%3E%3Cpath%20d%3D%22M267.658%2C65.321a.748.748%2C0%2C1%2C1-.748-.748.748.748%2C0%2C0%2C1%2C.748.748%22%20transform%3D%22translate(-257.705%20-62.521)%22%20fill%3D%22%230b59ad%22%2F%3E%3Cpath%20d%3D%22M94.3%2C97.4a3.1%2C3.1%2C0%2C1%2C1%2C3.1-3.1%2C3.105%2C3.105%2C0%2C0%2C1-3.1%2C3.1m0-5.085A1.983%2C1.983%2C0%2C1%2C0%2C96.286%2C94.3%2C1.985%2C1.985%2C0%2C0%2C0%2C94.3%2C92.318%22%20transform%3D%22translate(-88.303%20-88.301)%22%20fill%3D%22%230b59ad%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-size: contain;
  width: 26px;
  height: 26px;
  left: -15px;
  top: 3px;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__tab-list .cp-inner.is-ig {
    width: 26px;
    height: 26px;
    margin: 0 auto;
    display: flex;
  }

  .top-snsBlock__tab-list .cp-inner.is-ig::before {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }
}

.top-snsBlock__tab-list .cp-inner.is-tw::before {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214.385%22%20height%3D%2211.691%22%20viewBox%3D%220%200%2014.385%2011.691%22%3E%3Cg%20transform%3D%22translate(0%200)%22%3E%3Cpath%20d%3D%22M1057.2%2C1782.718a8.339%2C8.339%2C0%2C0%2C0%2C8.4-8.4c0-.129%2C0-.255-.007-.383a6.005%2C6.005%2C0%2C0%2C0%2C1.471-1.527%2C5.9%2C5.9%2C0%2C0%2C1-1.7.464%2C2.96%2C2.96%2C0%2C0%2C0%2C1.3-1.633%2C5.905%2C5.905%2C0%2C0%2C1-1.875.716%2C2.953%2C2.953%2C0%2C0%2C0-5.106%2C2.02%2C2.869%2C2.869%2C0%2C0%2C0%2C.077.672%2C8.383%2C8.383%2C0%2C0%2C1-6.084-3.083%2C2.955%2C2.955%2C0%2C0%2C0%2C.915%2C3.94%2C2.938%2C2.938%2C0%2C0%2C1-1.338-.369v.037a2.952%2C2.952%2C0%2C0%2C0%2C2.367%2C2.893%2C2.918%2C2.918%2C0%2C0%2C1-.777.1%2C2.859%2C2.859%2C0%2C0%2C1-.555-.053%2C2.953%2C2.953%2C0%2C0%2C0%2C2.757%2C2.051%2C5.916%2C5.916%2C0%2C0%2C1-3.666%2C1.262%2C6.171%2C6.171%2C0%2C0%2C1-.7-.04%2C8.361%2C8.361%2C0%2C0%2C0%2C4.524%2C1.326%22%20transform%3D%22translate(-1052.672%20-1771.028)%22%20fill%3D%22%230b59ad%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-size: contain;
  width: 30px;
  height: 24px;
  left: -19px;
  top: 4px;
}

.top-snsBlock__tab-list .cp-inner.is-fb {
  margin: 0 -18px 0 43px;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__tab-list .cp-inner.is-fb {
    margin: 0 -25px 0 33px;
  }
}

.top-snsBlock__tab-list .cp-inner.is-fb::after {
  content: '/';
  position: absolute;
  top: -4px;
  left: -32px;
  font-size: 1.8rem;
  transform: rotate(18deg);
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__tab-list .cp-inner.is-fb::after {
    top: 1px;
    font-size: 1.4rem;
  }
}

.top-snsBlock__tab-list .cp-inner.is-fb::before {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212.051%22%20height%3D%2212.051%22%20viewBox%3D%220%200%2012.051%2012.051%22%3E%3Cg%20transform%3D%22translate(22709%2021963.004)%22%3E%3Cpath%20d%3D%22M12.051%2C6.026a6.026%2C6.026%2C0%2C1%2C0-6.967%2C5.952V7.767H3.554V6.026h1.53V4.7A2.126%2C2.126%2C0%2C0%2C1%2C7.36%2C2.354a9.266%2C9.266%2C0%2C0%2C1%2C1.349.118V3.954h-.76a.871.871%2C0%2C0%2C0-.982.941v1.13H8.638L8.371%2C7.767h-1.4v4.211a6.027%2C6.027%2C0%2C0%2C0%2C5.084-5.952%22%20transform%3D%22translate(-22709%20-21963.004)%22%20fill%3D%22%230b59ad%22%2F%3E%3Cpath%20d%3D%22M306.817%2C205.414l.267-1.742h-1.671v-1.13a.871.871%2C0%2C0%2C1%2C.982-.941h.76v-1.483a9.267%2C9.267%2C0%2C0%2C0-1.349-.118%2C2.126%2C2.126%2C0%2C0%2C0-2.276%2C2.344v1.328H302v1.742h1.53v4.211a6.089%2C6.089%2C0%2C0%2C0%2C1.883%2C0v-4.211Z%22%20transform%3D%22translate(-23007.445%20-22160.65)%22%20fill%3D%22%23fff%22%2F%3E%3Crect%20width%3D%2212%22%20height%3D%2212%22%20transform%3D%22translate(-22709%20-21963)%22%20fill%3D%22none%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-size: contain;
  width: 26px;
  height: 26px;
  left: -15px;
  top: 3px;
}

.top-snsBlock__tab-list .cp-inner.is-yt::before {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2212%22%20viewBox%3D%220%200%2018%2012%22%3E%3Cpath%20d%3D%22M16%2C12H2a2%2C2%2C0%2C0%2C1-2-2V2A2%2C2%2C0%2C0%2C1%2C2%2C0H16a2%2C2%2C0%2C0%2C1%2C2%2C2v8A2%2C2%2C0%2C0%2C1%2C16%2C12ZM7%2C3V9l5-3Z%22%20fill%3D%22%230b59ad%22%2F%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-size: contain;
  width: 30px;
  height: 26px;
  left: -20px;
  top: 5px;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__tab-list .cp-inner.is-yt {
    width: 30px;
    height: 26px;
    margin: 0 auto;
    display: flex;
  }

  .top-snsBlock__tab-list .cp-inner.is-yt::before {
    left: 0;
    right: 0;
    top: 5px;
    bottom: 0;
  }
}

.top-snsBlock__tab-list--twfb {
  display: flex;
  justify-content: center;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__tab-list--twfb {
    margin: -3px 0 0;
  }
}

.top-snsBlock__contents {
  position: relative;
}

.top-snsBlock__contents-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transition: opacity .3s;
  opacity: 0;
  z-index: 0;
}

.top-snsBlock__contents-item.is-show {
  position: relative;
  opacity: 1;
  z-index: 2;
  height: 100%;
}

.cms .top-snsBlock__contents-item.is-show {
  height: 0;
}

#instagram-gallery {
  margin: 40px 0 0;
  padding: 0 0 70px;
}

@media only screen and (max-width: 959px) {
  #instagram-gallery {
    padding: 0 0 40px;
  }
}

.instagram-gallery__lists {
  display: none;
}

.instagram-gallery__lists.is-showStart {
  display: block;
}

.instagram-gallery__lists-block {
  display: -ms-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100% !important;
  margin: 0 !important;
}

.instagram-gallery__lists-block--item {
  overflow: hidden;
  text-indent: 0 !important;
  padding-left: 0 !important;
  width: 150px;
  margin: 0 10px;
}

/*
@media only screen and (max-width: 959px) {
  .instagram-gallery__lists-block--item {
    width: calc(100% / 2);
    margin: 0;
  }

  .instagram-gallery__lists-block--item:nth-child(n+9) {
    display: none;
  }
}
*/

.instagram-gallery__lists-block--item::before {
  content: none !important;
}

.instagram-gallery__lists-block--item a {
  position: relative;
  display: block;
  transition: .2s;
  width: 100%;
  height: 100%;
  /*padding-top: 56.25%;*/
  padding-top: 100%;
}

.instagram-gallery__lists-block--item a::after {
  content: none !important;
}

.instagram-gallery__lists-block--item a:hover {
  transform: scale(1.2);
}

.instagram-gallery__lists-block--item a img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  backface-visibility: hidden;
}

.top-snsBlock__contents-sns {
  display: flex;
  justify-content: center;
  margin: 40px 0 0;
  padding: 0 0 70px;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__contents-sns {
    display: block;
    max-width: 450px;
    margin: 40px auto 0;
    padding: 0 4vw 40px;
  }
}

.top-snsBlock__contents-sns>div {
  width: 340px;
  min-height: 400px;
  margin: 0;
  margin-right: 20px;
  background: #eaeaea;
  border-radius: 12px;
}

@media (min-width: 959px) and (max-width: 1140px) {
  .top-snsBlock__contents-sns>div {
    width: 100%;
    max-width: 290px;
    margin-right: 10px;
  }
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__contents-sns>div {
    width: 100%;
    margin-bottom: 20px;
  }
}

.top-snsBlock__contents-sns>div:last-child {
  margin-right: 0;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__contents-sns>div:last-child {
    margin-bottom: 0;
  }
}

.top-snsBlock__contents-sns>div .twitter-timeline {
  display: none;
}

.top-snsBlock__contents-sns>div .fb_iframe_widget {
  width: 100% !important;
}

.top-snsBlock__contents-sns>div .fb_iframe_widget>span {
  width: 100% !important;
  height: 400px !important;
}

.top-snsBlock__contents-sns>div iframe {
  width: 100% !important;
  height: 400px !important;
}

.top-snsBlock__contents-sns>div::after {
  content: none;
}


.facebook-wrapper {
  max-width: 340px;
  /* Facebook Page Plugin の最大幅 */
  margin: 0 auto;
}

@media only screen and (max-width: 959px) {
  .facebook-wrapper {
    max-width: 450px;
    /* Facebook Page Plugin の最大幅 */
  }
}

.facebook-wrapper>.fb-page {
  width: 100%;
}

.facebook-wrapper>.fb-page>span,
.facebook-wrapper iframe {
  width: 100% !important;
}

.top-snsBlock__contents-youtube {
  margin: 40px 0 0;
  padding: 0 0 70px;
}

@media only screen and (max-width: 959px) {
  .top-snsBlock__contents-youtube {
    padding: 0 0 40px;
  }
}

.top-snsBlock__contents-youtube--inner {
  display: -ms-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100% !important;
}

.top-snsBlock__contents-youtube--item {
  width: 267px;
  margin: 0 10px;
}

.cms .top-snsBlock__contents-youtube--item {
  width: 100%;
  margin: 0;
  padding: 20px 0;
}

.top-snsBlock__contents-youtube--item a {
  display: block;
  width: 100%;
  height: 100%;
  color: #333;
  text-decoration: none;
}

.top-snsBlock__contents-youtube--item a[target="_blank"]::after {
  content: none;
}

.top-snsBlock__contents-youtube--item---iframe > .cp-inner {
  transition: .2s;
}

.top-snsBlock__contents-youtube--item a:hover .top-snsBlock__contents-youtube--item---iframe > .cp-inner {
  transform: scale(1.2);
}

.top-snsBlock__contents-youtube--item---id,
.top-snsBlock__contents-youtube--item---play {
  display: none;
}

.cms .top-snsBlock__contents-youtube--item---id,
.cms .top-snsBlock__contents-youtube--item---play {
  display: flex;
}

.cms .top-snsBlock__contents-youtube--item---id > div:last-child,
.cms .top-snsBlock__contents-youtube--item---play > div:last-child {
  max-width: 450px;
  width: 100%;
}


.top-snsBlock__contents-youtube--item---iframe {
  overflow: hidden;
  position: relative;
  background: #eaeaea;
}

.top-snsBlock__contents-youtube--item---iframe::before {
  content: '';
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0;
}

.top-snsBlock__contents-youtube--item---thumbnail {
  overflow: hidden;
}

.top-snsBlock__contents-youtube--item---thumbnail > .cp-inner {
  position: relative;
  transition: .2s;
  padding-top: 56.18%;
}

.cms .top-snsBlock__contents-youtube--item---thumbnail > .cp-inner {
  padding-top: 12%;
}

.top-snsBlock__contents-youtube--item a:hover .top-snsBlock__contents-youtube--item---thumbnail > .cp-inner {
  transform: scale(1.2);
}

.top-snsBlock__contents-youtube--item---thumbnail > .cp-inner br {
  display: none;
}

.top-snsBlock__contents-youtube--item---thumbnail > .cp-inner img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: auto !important;
  margin: 0 !important;
}

.top-snsBlock__contents-youtube--item---text {
  padding: 20px 0 10px;
  font-size: 1.6rem;
  line-height: 1.63;
}

.cms .top-snsBlock__contents-youtube--item---text {
  padding: 30px 0 0;
}

/**CYPOCHI_AIR_AUTO_STYLE__START**/
.cp-basic-block {
  position: relative;
  margin: 40px 0;
  line-height: 1.8;
  z-index: 0;
}
.cp-basic-block:before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: -20px;
  left: calc(50% - 50vw);
  width: 100vw;
  height: calc(100% + 40px);
  pointer-events: none;
}

.cp-basic-block .cp-inner .cp-h1-text:first-child,
.cp-basic-block .cp-inner .cp-h2-text:first-child,
.cp-basic-block .cp-inner .cp-h3-text:first-child,
.cp-basic-block .cp-inner .cp-h4-text:first-child,
.cp-basic-block .cp-inner .cp-h5-text:first-child {
  margin-top: 0;
}

.cp-basic-block .cp-inner img {
  max-width: 100%;
  height: auto;
}

.cp-basic-block__row {
  display: flex;
  flex-wrap: wrap;
}
.cp-basic-block__row.is-float {
  display: block;
}

.cp-basic-block__col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
  word-break: break-all;
}
.cp-basic-block__col + .cp-basic-block__col {
  margin-left: 30px;
}
.cp-basic-block__col.is-float-left {
  float: left;
  margin-right: 30px;
  margin-bottom: 10px;
}
.cp-basic-block__col.is-float-right {
  float: right;
  margin-left: 30px;
  margin-bottom: 10px;
}

.cp-basic-block__row.is-float .cp-basic-block__col + .cp-basic-block__col {
  margin-left: 0;
}

.cp-basic-block__row[data-ratio="1-2"] .cp-basic-block__col:last-child,
.cp-basic-block__row[data-ratio="2-1"] .cp-basic-block__col:first-child {
  flex-grow: 2;
}

.cp-basic-block__row[data-ratio="3-1"] .cp-basic-block__col:first-child,
.cp-basic-block__row[data-ratio="1-3"] .cp-basic-block__col:last-child {
  flex-grow: 3;
}

@media screen and (max-width: 959px) {
  .cp-basic-block__row:not(.is-no-step-down) .cp-basic-block__col {
    flex-basis: 100%;
    margin-left: 0;
    margin-bottom: 30px;
  }
  .cp-basic-block__row:not(.is-no-step-down) .cp-basic-block__col:last-child {
    margin-bottom: 0;
  }

  .cp-basic-block__row:not(.is-no-step-down) .cp-basic-block__col.is-float-left, .cp-basic-block__row:not(.is-no-step-down) .cp-basic-block__col.is-float-right {
    float: none;
    margin: 0 auto 30px;
  }
}
.cp-basic-block__col .cp-inner:empty:before, .cp-basic-block__col .cp-inner:empty:after {
  pointer-events: none;
  font-size: 15px;
  display: block;
}
.cp-basic-block__col .cp-inner:empty:focus:before, .cp-basic-block__col .cp-inner:empty:focus:after {
  content: none;
}

.cp-basic-block__image-text-wrap > * {
  padding: 20px;
  border: 1px solid #ccc;
  background-color: #f4f4f4;
}
.cp-basic-block__image-text-wrap:before {
  top: -21px;
  height: calc(100% + 42px);
}

.cp-basic-block__tab-contents {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.cp-basic-block__tab-contents .cp-basic-block__child-label {
  padding: 10px 25px;
  flex: 1;
  order: -1;
  background: #F5F5F5;
  transition: 0.5s;
  cursor: pointer;
  border: 1px solid #1A5948;
}

.cp-basic-block__tab-contents .cp-basic-block__child-label:hover {
  color: #fff;
  background: #1A5948;
  transition: 0.2s;
}

.cp-basic-block__tab-contents input.cp-basic-block__child-input {
  display: none !important;
}

.cp-basic-block__tab-contents .cp-basic-block__child-content {
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
}

.cp-basic-block__tab-contents input.cp-basic-block__child-input:checked + .cp-basic-block__child-label {
  color: #fff;
  background: #1A5948;
}

.cp-basic-block__tab-contents input.cp-basic-block__child-input:checked + .cp-basic-block__child-label + .cp-basic-block__child-content {
  padding: 10px;
  height: auto;
  overflow: hidden;
  transition: 0.5s opacity;
  opacity: 1;
}

@media screen and (max-width: 959px) {
  .cp-basic-block__tab-contents {
    flex-direction: column;
  }
}
.cp-basic-block__tab-contents {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.cp-basic-block__tab-contents .cp-basic-block__child-label {
  padding: 10px 25px;
  flex: 1;
  order: -1;
  background: #F5F5F5;
  transition: 0.5s;
  cursor: pointer;
  border: 1px solid #1A5948;
}

.cp-basic-block__tab-contents .cp-basic-block__child-label:hover {
  color: #fff;
  background: #1A5948;
  transition: 0.2s;
}

.cp-basic-block__tab-contents input.cp-basic-block__child-input {
  display: none !important;
}

.cp-basic-block__tab-contents .cp-basic-block__child-content {
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
}

.cp-basic-block__tab-contents input.cp-basic-block__child-input:checked + .cp-basic-block__child-label {
  color: #fff;
  background: #1A5948;
}

.cp-basic-block__tab-contents input.cp-basic-block__child-input:checked + .cp-basic-block__child-label + .cp-basic-block__child-content {
  padding: 10px;
  height: auto;
  overflow: hidden;
  transition: 0.5s opacity;
  opacity: 1;
}

@media screen and (max-width: 959px) {
  .cp-basic-block__tab-contents {
    flex-direction: column;
  }
}
.cp-basic-block__accordion-contents {
  width: 100%;
}

.cp-basic-block__accordion-contents .cp-basic-block__child-label {
  padding: 10px 25px;
  display: block;
  width: 100%;
  background: #F5F5F5;
  transition: 0.5s;
  cursor: pointer;
  border: 1px solid #1A5948;
}


.cp-basic-block__accordion-contents .cp-basic-block__child-label {
  position: relative;
}
.cp-basic-block__accordion-contents .cp-basic-block__child-label::before,
.cp-basic-block__accordion-contents .cp-basic-block__child-label::after {
  content: "";
  width: 24px;
  height: 1px;
  position: absolute;
  right: 20px;
  top: calc(50% - 1px);
  transition: 0.3s;
  background-color: #333;
}

.cp-basic-block__accordion-contents .cp-basic-block__child-label::after {
  transform: rotate(-90deg);
}

.cp-basic-block__accordion-contents .cp-basic-block__child-label:hover {

  color: #fff;
  background: #1A5948;
  transition: 0.2s;
}


.cp-basic-block__accordion-contents .cp-basic-block__child-label:hover::after {
  transform: rotate(0deg);
  background-color: #fff;
  transition: 0.2s;
}

.cp-basic-block__accordion-contents input.cp-basic-block__child-input {

  display: none !important;
}

.cp-basic-block__accordion-contents .cp-basic-block__child-content {
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
}

.cp-basic-block__accordion-contents input.cp-basic-block__child-input:checked + .cp-basic-block__child-label {
  color: #fff;
  background: #1A5948;
}


.cp-basic-block__accordion-contents input.cp-basic-block__child-input:checked+.cp-basic-block__child-label::after {
  transform: rotate(0deg);
  background-color: #fff;
  transition: 0.2s;
}

.cp-basic-block__accordion-contents input.cp-basic-block__child-input:checked + .cp-basic-block__child-label + .cp-basic-block__child-content {

  padding: 10px;
  height: auto;
  overflow: hidden;
  transition: 0.5s opacity;
  opacity: 1;
}

.cp-basic-block__accordion-all-toggle-button-wrap {
  display: flex;
  justify-content: flex-end;
}

.cp-basic-block__accordion-all-toggle-button {
  cursor: pointer;
  padding-left: 25px;
  margin-bottom: 10px;
  position: relative;
}

.cp-basic-block__accordion-all-toggle-button:before {
  content: "全て開く";
}

.cp-basic-block__accordion-all-toggle-button[data-is-active="1"]:before {
  content: "全て閉じる";
}

.cp-basic-block__accordion-all-toggle-button-icon {
  position:absolute;
  top: 50%;
  left: 0;
}

.cp-basic-block__accordion-all-toggle-button-icon:after {
  content: ';
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 2px;
  background-color: #000;
}

.cp-basic-block__accordion-all-toggle-button-icon:before {
  content: ';
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 2px;
  background-color: #000;
  transform: rotate(90deg);
  transition: .2s;
}

.cp-basic-block__accordion-all-toggle-button[data-is-active="1"] .cp-basic-block__accordion-all-toggle-button-icon:before {
  transform: rotate(0);
  transition: .2s;
}

[data-area="content"] .cp-basic-block__buttons ul {
  list-style: none;
  margin: 0;
}

.cp-basic-block__buttons ul {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
  counter-reset: number;
  display: flex;
  flex-wrap: wrap;
}

.cp-basic-block__buttons li {
  margin-bottom: 20px;
  width: 100%;
  counter-increment: number 1;
}

.cp-basic-block__buttons li a {
  position: relative;
  display: block;
  text-align: inherit;
  padding: 10px 5px;
  border: 1px solid #0000FF;
  background-color: #fff;
  word-break: break-all;
  cursor: pointer;
  color: #000;
  text-decoration: none;
  border-radius: 8px;
}

.cp-basic-block__row[data-position="center"] .cp-basic-block__buttons ul {
  justify-content: center;
}

.cp-basic-block__row[data-position="right"] .cp-basic-block__buttons ul {
  justify-content: flex-end;
}

.cp-basic-block__buttons ul.cp-basic-block__buttons-col2 > li {
  width: calc(50% - 15px);
  margin-right: 30px;
  &:nth-child(2n) {
    margin-right: 0;
  }
}

.cp-basic-block__buttons ul.cp-basic-block__buttons-col3 > li {
  width: calc( ( 100% - 60px ) / 3 );
  margin-right: 30px;
  &:nth-child(3n) {
    margin-right: 0;
  }
}

.cp-basic-block__buttons ul.cp-basic-block__buttons-col4 > li {
  width: calc( ( 100% - 90px ) / 4 );
  margin-right: 30px;
  &:nth-child(4n) {
    margin-right: 0;
  }
}

.cp-basic-block__buttons ul.cp-basic-block__buttons-col5 > li {
  width: calc( ( 100% - 120px ) / 5 );
  margin-right: 30px;
  &:nth-child(5n) {
    margin-right: 0;
  }
}

 .cp-basic-block__buttons ul.cp-basic-block__buttons-col6 > li {
  width: calc( ( 100% - 150px ) / 6 );
  margin-right: 30px;
  &:nth-child(6n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 959px) {
  .cp-basic-block__buttons .cp-basic-block__row:not(.is-no-step-down) ul.cp-basic-block__buttons-col2 > li,
  .cp-basic-block__buttons .cp-basic-block__row:not(.is-no-step-down) ul.cp-basic-block__buttons-col3 > li,
  .cp-basic-block__buttons .cp-basic-block__row:not(.is-no-step-down) ul.cp-basic-block__buttons-col4 > li,
  .cp-basic-block__buttons .cp-basic-block__row:not(.is-no-step-down) ul.cp-basic-block__buttons-col5 > li,
  .cp-basic-block__buttons .cp-basic-block__row:not(.is-no-step-down) ul.cp-basic-block__buttons-col6 > li  {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    &:nth-child(2n),
    &:nth-child(3n),
    &:nth-child(4n),
    &:nth-child(5n) ,
    &:nth-child(6n) {
      margin-right: auto;
    }
  }
}


[data-area=content] .cp-basic-block__anchors ul {
  list-style: none;
  margin: 0;
}

.cp-basic-block__anchors ul {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
  counter-reset: number;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 10px 0;
  background-color: #F5F5F5;
}

.cp-basic-block__anchors li {
  margin-bottom: 0;
  padding: 0 2em;
  counter-increment: number 1;
  font-size: 14px;
}

.cp-basic-block__anchors li a {
  position: relative;
  display: block;
  text-align: inherit;
  word-break: break-all;
  cursor: pointer;
  color: #000;
  text-decoration: none;
  font-size: 14px;
}

.cp-basic-block__outer-codes-text-middle {
  margin: 40px 0;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.cp-basic-block__outer-codes-text-middle::after {
  position: absolute;
  content: ';
  top: calc(50% - 16px);
  left: calc(50% - 30px);
  width: 60px;
  height: 38px;
  background-repeat: no-repaet;
  background-position: center center;
  background-size: 60px auto;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2260%22%20height%3D%2238%22%20viewBox%3D%220%200%2060%2038%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_3018%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%203018%22%20transform%3D%22translate(-493%20-642)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_2456%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%202456%22%20width%3D%2260%22%20height%3D%2238%22%20rx%3D%226%22%20transform%3D%22translate(493%20642)%22%20fill%3D%22%23f10000%22%2F%3E%20%3Cpath%20id%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2_12%22%20data-name%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2%2012%22%20d%3D%22M9%2C0l9%2C15.545H0Z%22%20transform%3D%22translate(530.545%20652)%20rotate(90)%22%20fill%3D%22%23fff%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
}
.cp-basic-block__outer-codes-text-middle:before {
  content: "";
  display: block;
  padding-top: 56.25%;
}

.cp-basic-block__outer-codes-text-middle iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cp-basic-block__outer-codes.cp-videos,
.cp-basic-block__outer-codes-wrap.cp-videos {
  display: block;
}

.cp-basic-block__outer-codes-wrap > * {
  padding: 20px;
  border: 1px solid #ccc;
  background-color: #f4f4f4;
}
.cp-basic-block__outer-codes-wrap:before {
  top: -21px;
  height: calc(100% + 42px);
}

.cp-basic-block__image-album-text {
  margin-top: 10px;
}

@media screen and (max-width: 959px) {
  .cp-basic-block__row.is-step-down-reverse {
    flex-direction: column-reverse;
    display: flex;
  }

  .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col:first-child {
    margin-bottom: 0;
  }

  .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col:last-child {
    margin-bottom: 30px;
  }
}

.cp-basic-block__buttons .cp-basic-block__row[data-position="center"] ul {
  justify-content: center;
}

.cp-basic-block__buttons .cp-basic-block__row[data-position="right"] ul {
  justify-content: flex-end;
}

.cp-basic-block__buttons li {
  max-width: 350px;
}

.cp-basic-block__buttons li a {
  padding: 7px 5px;
  border-radius: 0;
  border: 1px solid #A5A5A5;
}

.cp-basic-block__outer-codes-text-middle.is-inline-insert {
  margin-top: 0;
}
.cp-basic-block__outer-codes-text-middle.is-inline-insert::after {
  content: none;
}

.cp-basic-block__news-ul {
  margin: 0 !important;
  list-style: none !important;
}

.cp-basic-block__news-link {
  display: flex;
  transition: 0.3s;
  text-decoration: none;
}

.cp-basic-block__news-ul[data-cp-news-layout="standard"] .cp-basic-block__news-link {
  padding: 26px 0;
}

.cp-basic-block__news-link:hover {
  text-decoration: none;
  transition: 0.3s;
}

.cp-basic-block__news-ul[data-cp-news-layout="standard"] .cp-basic-block__news-link:hover {
  background-color: #EFEDEB;
}

@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-link,
  .cp-basic-block__news-ul[data-cp-news-layout="standard"] .cp-basic-block__news-link {
    flex-direction: column;
    padding: 20px;
  }
}

.cp-basic-block__news-li {
  border-top: 1px solid #EBEBEB;
}
.cp-basic-block__news-li:last-child {
  border-bottom: 1px solid #EBEBEB;
}

.cp-basic-block__news-date-area {
  display: flex;
  flex-wrap: wrap;
  padding-top: 5px;
}

.cp-basic-block__news-ul[data-cp-news-layout="standard"] .cp-basic-block__news-date-area {
  width: 170px;
  border-right: 1px solid #CCCCCC;
  padding-left: 20px;
}

@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-date-area,
  .cp-basic-block__news-ul[data-cp-news-layout="standard"] .cp-basic-block__news-date-area {
    width: 100%;
    padding-left: 0;
    padding-top: 0;
    border: none;
    flex-direction: row;
  }
}
.cp-basic-block__news-category {
  line-height: 1;
  margin-top: 3px;
}

@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-category {
    margin-left: 20px;
  }
}

.cp-basic-block__news-ul[data-cp-news-layout="standard"] .cp-basic-block__news-title-area {
  padding-left: 37px;
  width: calc(100% - 170px);
}

@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-title-area,
  .cp-basic-block__news-ul[data-cp-news-layout="standard"] .cp-basic-block__news-title-area {
    width: 100%;
    padding-left: 0;
  }
}
.cp-basic-block__news-date {
  font-size: 1.4rem;
  font-weight: 500;
  font-style: normal;
}

.cp-basic-block__news-category {
  font-size: 1.3rem;
  line-height: 1.5;
  background-color: #666666;
  color: #fff;
  font-weight: 500;
  padding: 0 14px;
  height: 21px;
  display: inline-block;
}

.cp-basic-block__news-title-area {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.56;
  padding-top: 5px;
}

@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-title-area {
    font-size: 1.5rem;
  }
}

.cp-basic-block__news-tags {
  margin-top: 5px;
  font-size: 1.2rem;
  color: #333333;
}

@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-tags {
    font-size: 1.1rem;
  }
}

.cp-basic-block__news-tag {
  padding: 2px 5px;
  display: inline-block;
  margin-right: 5px;
}

.cp-basic-block__news-ul[data-cp-news-layout="thumbnail"] {
  display: flex;
  flex-wrap: wrap;
}

.cp-basic-block__news-ul[data-cp-news-layout="thumbnail"] .cp-basic-block__news-li {
  border: none;
  width: calc( (100% - 60px) / 4);
  margin-right: 20px;
  margin-bottom: 20px;
}

.cp-basic-block__news-ul[data-cp-news-layout="thumbnail"] .cp-basic-block__news-li:nth-child(4n) {
  margin-right: 0;
}

.cp-basic-block__news-ul[data-cp-news-layout="thumbnail"] .cp-basic-block__news-link {
  flex-direction: column;
}

.cp-basic-block__news-ul[data-cp-news-layout="thumbnail"] .cp-basic-block__news-title-area {
  padding: 10px;
  min-height: 150px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.cp-basic-block__news-ul[data-cp-news-layout="thumbnail"] .cp-basic-block__news-date-area {
  justify-content: space-between;
  align-items: center;
}

.cp-basic-block__news-thumbnail-area {
  padding-top: 56.25%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.cp-basic-block__news-thumbnail-area .cp-basic-block__news-category {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  z-index: 1;
}

.cp-basic-block__news-thumbnail-area img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  transform: scale(1.0);
  transition: .3s;
}

.cp-basic-block__news-ul[data-cp-news-layout="thumbnail"] .cp-basic-block__news-link:hover .cp-basic-block__news-thumbnail-area img {
  transform: scale(1.1);
  transition: .3s;
}

.cp-basic-block__news-ul[data-cp-news-layout="thumbnail"][data-cp-slick="true"] {
  visibility: hidden;
  max-height: 350px;
  overflow: hidden;
}
.cp-basic-block__news-ul[data-cp-news-layout="thumbnail"][data-cp-slick="true"].slick-initialized {
  visibility: visible;
  max-height: none;
  overflow: visible;
}
.cp-basic-block__news-ul.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.cp-basic-block__news-ul .slick-list {
  position: relative;
  overflow: visible;
  display: block;
  margin: 0;
  padding: 0;
}

.cp-basic-block__news-ul .slick-list:focus {
  outline: none;
}

.cp-basic-block__news-ul .slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.cp-basic-block__news-ul.slick-slider .slick-track,
.cp-basic-block__news-ul.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.cp-basic-block__news-ul .slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.cp-basic-block__news-ul .slick-track:before,
.cp-basic-block__news-ul .slick-track:after {
  content: "";
  display: table;
}

.cp-basic-block__news-ul .slick-track:after {
  clear: both;
}

.cp-basic-block__news-ul .slick-loading .slick-track {
  visibility: visible;
}

.cp-basic-block__news-ul .slick-slide {
  position: relative;
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
  max-width: 320px;
  width: 100%;
  margin-right: 20px;
}

.cp-basic-block__news-ul[dir="rtl"] .slick-slide {
  float: right;
}

.cp-basic-block__news-ul .slick-disabled {
  .cp-basic-block__news-ul opacity: .3;
}

.cp-basic-block__news-ul .slick-slide img {
  display: block;
}

.cp-basic-block__news-ul .slick-slide.slick-loading img {
  display: none;
}

.cp-basic-block__news-ul .slick-slide.dragging img {
  pointer-events: none;
}

.cp-basic-block__news-ul.slick-initialized .slick-slide {
  display: block;
}

.cp-basic-block__news-ul.slick-loading .slick-slide {
  visibility: hidden;
}

.cp-basic-block__news-ul.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.cp-basic-block__news-ul .slick-arrow.slick-hidden {
  display: none;
}

.cp-basic-block__news-ul .slick-dots {
  position: absolute;
  left: 0;
  right: 0;
  z-index: 2;
  bottom: 30px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  list-style: none;
}

@media screen and (max-width: 959px) {
    .cp-basic-block__news-ul .slick-dots {
    bottom: 20px;
  }
}

.cp-basic-block__news-ul .slick-dots li {
  margin: 0 10px;
  list-style-type: none;
}

@media screen and (max-width: 959px) {
.cp-basic-block__news-ul .slick-dots li {
    margin: 0 6px;
  }
}

.cp-basic-block__news-ul .slick-dots li.slick-active button {
  background: #fff;
}

.cp-basic-block__news-ul .slick-dots li button {
  width: 12px;
  height: 12px;
  border: 1px solid #fff;
  background: transparent;
  border-radius: 50%;
  font-size: 0;
  color: transparent;
  .cp-basic-block__news-ul transition: .2s;
  vertical-align: bottom;
}

@media screen and (max-width: 959px) {
.cp-basic-block__news-ul .slick-dots li button {
    width: 16px;
    height: 16px;
  }
}

.cp-basic-block__news-ul .slick-arrow {
  position: absolute;
  top: calc(50% - 22px);
  z-index: 2;
}

.cp-basic-block__news-ul .slick-prev {
  left: 0;
}

.cp-basic-block__news-ul .slick-next {
  right: 0;
}

.cp-basic-block__news-ul[data-cp-news-layout="events"] .cp-basic-block__news-link {
  flex-direction: column;
  padding: 20px 10px;
  position: relative;
  transition: 0.3s;
}

.cp-basic-block__news-ul[data-cp-news-layout="events"] .cp-basic-block__news-link:hover {
  background-color: #EFEDEB;
}

.cp-basic-block__news-ul[data-cp-news-layout="events"] .cp-basic-block__news-category {
  font-size: 1.4rem;
  height: auto;
  background: none;
  padding: 0;
  color: #222;
  margin: 0;
  font-weight: 400;
  margin-bottom: 5px;
}

.cp-basic-block__news-schedule-lists {
  display: flex;
}

.cp-basic-block__news-schedule-date {
  font-size: 3.2rem;
  font-weight: 700;
  font-style: normal;
  line-height: 1.1;
}
@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-schedule-date {
    font-size: 2rem;
  }
}

.cp-basic-block__news-schedule-day {
  font-weight: 400;
  font-style: normal;
  font-size: 1.6rem;
  display: inline-block;
  position: relative;
  top: 1px;
}
@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-schedule-day {
    font-size: 1rem;
  }
}
.cp-basic-block__news-ul[data-cp-news-layout="events"] .cp-basic-block__news-title {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.56;
  margin-top: 29px;
}
@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-ul[data-cp-news-layout="events"] .cp-basic-block__news-title {
    font-size: 1.6rem;
    margin-top: 5px;
  }
  .cp-basic-block__news-ul[data-cp-news-layout="standard"] .cp-basic-block__news-title {
    margin-top: 0;
    margin-bottom: 10px;
  }
}

.cp-basic-block__news-venue {
  margin-top: 17px;
  font-size: 1.4rem;
  color: #555555;
}
@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-venue {
    font-size: 1.3rem;
  }
}

.cp-basic-block__news-venue::before {
  content: "場所：";
}

.cp-basic-block__news-subjects {
  font-size: 1.4rem;
  color: #555555;
}
@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-subjects {
    font-size: 1.3rem;
  }
}
.cp-basic-block__news-subjects::before {
  content: "対象：";
}

.cp-basic-block__news-schedule::after {
  content: " / ";
  font-size: 1.6rem;
  font-weight: 300;
  padding-right: 10px;
}

.cp-basic-block__news-schedule:last-child::after {
  content: none;
}

.cp-basic-block__news-border {
  height: 6px;
  width: 100px;
  position: absolute;
  top: 0;
  left: 0;
}

.cp-basic-block__news-form {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
  align-items: flex-start;
}

.cp-basic-block__news-select {
  display: flex;
  justify-content: space-between;
  margin-right: 20px;
}

@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-select {
    width: calc(50% - 20px);
    margin-top: 0;
    margin-bottom: 10px;
  }
}
.cp-basic-block__news-select label {
  position: relative;
  display: inline-block;
  width: 169px;
  border: 1px solid #999;
  overflow: hidden;
  background: #fff;
}

@media only screen and (max-width: 1280px) {
  .cp-basic-block__news-select label {
    width: 100%;
  }
}

.cp-basic-block__news-select select {
  display: block;
  width: calc(100% + 50px);
  margin: 0 auto;
  padding: 8px 27px 5px 10px;
  border: none;
  background-color: #fff;
  font-size: 1.4rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.cp-basic-block__news-select label::after {
  content: "";
  display: block;
  position: absolute;
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  transform: rotate(45deg);
  right: 10px;
  top: 50%;
  margin-top: -5px;
}

.cp-basic-block__news-button {
  background-color: #222;
  color: #fff;
  border: none;
  width: 120px;
  height: 32px;
  font-size: 1.6rem;
  display: flex;
  align-items: center;
  margin-left: 20px;
  justify-content: center;
  cursor: pointer;
}

.cp-basic-block__news-checkbox-wrap {
  display: flex;
}

.cp-basic-block__news-checkbox {
  display: flex;
  align-items: center;
  cursor: pointer;
  margin-right: 10px;
}
.cp-basic-block__news-checkbox-input {
  margin: 0;
  width: 0;
  opacity: 0;
}

.cp-basic-block__news-checkbox-input:focus + .cp-basic-block__news-checkbox-icon {
  background: #DDDDDD !important;
  border: solid 2px #333333;
}
.cp-basic-block__news-checkbox-input:checked + .cp-basic-block__news-checkbox-icon {
  border: solid 2px #333333;
  background: #FFFFFF;
}
.cp-basic-block__news-checkbox-input:checked + .cp-basic-block__news-checkbox-icon::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hlY2siPjxwb2x5bGluZSBwb2ludHM9IjIwIDYgOSAxNyA0IDEyIj48L3BvbHlsaW5lPjwvc3ZnPg==") no-repeat center;
  background-size: contain;
}
.cp-basic-block__news-checkbox-icon {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  width: 32px;
  height: 32px;
  border: solid 2px #888888;
  background: #FFFFFF;
  border-radius: 4px;
}
.cp-basic-block__news-checkbox-text {
  margin-left: 5px;
  display: block;
  font-size: 1.6rem;
}

.cp-basic-block__news-paging {
  margin-left: 0 !important;
  margin-right: 0 !important;
  list-style: none !important;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 50px;
  padding: 16px 4vw;
}

.cp-basic-block__news-paging-item {
  position: relative;
  display: block;
  margin: 4px;
}

.cp-basic-block__news-paging-item a,
.cp-basic-block__news-paging-item span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  background: #555;
  border-radius: 4px;
  font-size: 1.5rem;
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  line-height: 1.5;
}

.cp-basic-block__news-paging-item a:hover {
  text-decoration: none;
  opacity: .7;
}

.cp-basic-block__news-paging-item span.is-active {
  background: #222;
}

.cp-basic-block__row.is-float[data-ratio="1-2"] .cp-basic-block__col.is-float-left > .cp-inner,
.cp-basic-block__row.is-float[data-ratio="1-2"] .cp-basic-block__col.is-float-right > .cp-inner,
.cp-basic-block__row.is-float[data-ratio="2-1"] .cp-basic-block__col.is-float-left > .cp-inner,
.cp-basic-block__row.is-float[data-ratio="2-1"] .cp-basic-block__col.is-float-right > .cp-inner,
.cp-basic-block__row.is-float[data-ratio="1-3"] .cp-basic-block__col.is-float-left > .cp-inner,
.cp-basic-block__row.is-float[data-ratio="1-3"] .cp-basic-block__col.is-float-right > .cp-inner,
.cp-basic-block__row.is-float[data-ratio="3-1"] .cp-basic-block__col.is-float-left > .cp-inner,
.cp-basic-block__row.is-float[data-ratio="3-1"] .cp-basic-block__col.is-float-right > .cp-inner {
  width: 100%;
}
.cp-basic-block__row.is-float[data-ratio="1-2"] .cp-basic-block__col.is-float-left > .cp-inner img,
.cp-basic-block__row.is-float[data-ratio="1-2"] .cp-basic-block__col.is-float-right > .cp-inner img,
.cp-basic-block__row.is-float[data-ratio="2-1"] .cp-basic-block__col.is-float-left > .cp-inner img,
.cp-basic-block__row.is-float[data-ratio="2-1"] .cp-basic-block__col.is-float-right > .cp-inner img,
.cp-basic-block__row.is-float[data-ratio="1-3"] .cp-basic-block__col.is-float-left > .cp-inner img,
.cp-basic-block__row.is-float[data-ratio="1-3"] .cp-basic-block__col.is-float-right > .cp-inner img,
.cp-basic-block__row.is-float[data-ratio="3-1"] .cp-basic-block__col.is-float-left > .cp-inner img,
.cp-basic-block__row.is-float[data-ratio="3-1"] .cp-basic-block__col.is-float-right > .cp-inner img {
  max-width: none;
  width: 100%;
}

.cp-basic-block__row.is-float[data-ratio="1-2"] .cp-basic-block__col.is-float-left,
.cp-basic-block__row.is-float[data-ratio="2-1"] .cp-basic-block__col.is-float-right {
  width: calc(100% / 3);
}

.cp-basic-block__row.is-float[data-ratio="2-1"] .cp-basic-block__col.is-float-left,
.cp-basic-block__row.is-float[data-ratio="1-2"] .cp-basic-block__col.is-float-right {
  width: calc(100% / 3 * 2);
}

.cp-basic-block__row.is-float[data-ratio="1-3"] .cp-basic-block__col.is-float-left,
.cp-basic-block__row.is-float[data-ratio="3-1"] .cp-basic-block__col.is-float-right {
  width: 25%;
}

.cp-basic-block__row.is-float[data-ratio="3-1"] .cp-basic-block__col.is-float-left,
.cp-basic-block__row.is-float[data-ratio="1-3"] .cp-basic-block__col.is-float-right {
  width: 75%;
}

@media screen and (max-width: 959px) {
  .cp-basic-block__row.is-float[data-ratio="1-2"]:not(.is-no-step-down) .cp-basic-block__col.is-float-left,
.cp-basic-block__row.is-float[data-ratio="2-1"]:not(.is-no-step-down) .cp-basic-block__col.is-float-right,
.cp-basic-block__row.is-float[data-ratio="2-1"]:not(.is-no-step-down) .cp-basic-block__col.is-float-left,
.cp-basic-block__row.is-float[data-ratio="1-2"]:not(.is-no-step-down) .cp-basic-block__col.is-float-right,
.cp-basic-block__row.is-float[data-ratio="1-3"]:not(.is-no-step-down) .cp-basic-block__col.is-float-left,
.cp-basic-block__row.is-float[data-ratio="3-1"]:not(.is-no-step-down) .cp-basic-block__col.is-float-right,
.cp-basic-block__row.is-float[data-ratio="3-1"]:not(.is-no-step-down) .cp-basic-block__col.is-float-left,
.cp-basic-block__row.is-float[data-ratio="1-3"]:not(.is-no-step-down) .cp-basic-block__col.is-float-right {
    width: 100%;
  }
}


.cp-basic-block__outer-codes-text-middle--relative {
  margin: 10px 0;
  position: relative;
}

.cp-basic-block__outer-codes-text-middle--relative iframe {
	position: relative;
	max-width: 100%;
}


.cp-basic-block__outer-codes .cp-videos-thumb {
	padding-top: 56.25%;
}
/**CYPOCHI_AIR_AUTO_STYLE__END**/

/**NEW_EDITOR_BLOCK__START**/
:root {
  --main-color: #063F83;
  --main-bg-color: #fff;
  --sub-bg-color: #F6F6F8;
  --main-text-color: #222222;
  --sub-text-color: #333333;
  --main-border-color: #063F83;
  --sub-border-color: #999999;
  --main-link-color: #0E67B4;
}

.cp-basic-block {
  margin: 40px 0;
}
@media screen and (max-width: 959px) {
  .cp-basic-block {
    margin: 32px 0;
  }
}
.cp-basic-block__row {
  display: grid;
}
.cp-basic-block__row.is-no-step-down {
  display: flex;
}
.cp-basic-block__row[data-ratio="1-1"], .cp-basic-block__row[data-ratio="1-2"], .cp-basic-block__row[data-ratio="1-3"], .cp-basic-block__row[data-ratio="2-1"], .cp-basic-block__row[data-ratio="3-1"] {
  display: flex;
}
.cp-basic-block__col2 .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col[data-cp-text-image-id="1"] {
  grid-row: 2/3;
}
.cp-basic-block__col2 .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col[data-cp-text-image-id="2"] {
  grid-row: 1/2;
}
.cp-basic-block__col3 .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col[data-cp-text-image-id="1"] {
  grid-row: 3/4;
}
.cp-basic-block__col3 .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col[data-cp-text-image-id="2"] {
  grid-row: 2/3;
}
.cp-basic-block__col3 .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col[data-cp-text-image-id="3"] {
  grid-row: 1/2;
}
.cp-basic-block__col4 .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col[data-cp-text-image-id="1"] {
  grid-row: 4/5;
}
.cp-basic-block__col4 .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col[data-cp-text-image-id="2"] {
  grid-row: 3/4;
}
.cp-basic-block__col4 .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col[data-cp-text-image-id="3"] {
  grid-row: 2/3;
}
.cp-basic-block__col4 .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col[data-cp-text-image-id="4"] {
  grid-row: 1/2;
}
.cp-basic-block__col2 .cp-basic-block__row {
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media screen and (max-width: 959px) {
  .cp-basic-block__col2 .cp-basic-block__row {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.cp-basic-block__col3 .cp-basic-block__row {
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media screen and (max-width: 959px) {
  .cp-basic-block__col3 .cp-basic-block__row {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.cp-basic-block__col4 .cp-basic-block__row {
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
@media screen and (max-width: 959px) {
  .cp-basic-block__col4 .cp-basic-block__row {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.cp-basic-block__col {
  margin-left: 0;
  margin-bottom: 0;
  word-break: normal;
}
.cp-basic-block__col + .cp-basic-block__col {
  margin-left: 0;
  margin-bottom: 0px;
}
@media screen and (max-width: 959px) {
  .cp-basic-block__row:not(.is-no-step-down) .cp-basic-block__col {
    margin-bottom: 0;
  }
  .cp-basic-block__row.is-step-down-reverse .cp-basic-block__col:last-child {
    margin-bottom: 0;
  }
}
.cp-basic-block__image-text-wrap > * {
  background-color: var(--main-bg-color);
  border: 2px solid var(--main-border-color);
  padding: 30px;
}
.cp-basic-block__tab-contents input.cp-basic-block__child-input:checked + .cp-basic-block__child-label {
  color: #fff;
  background-color: var(--main-color);
}
.cp-basic-block__tab-contents input.cp-basic-block__child-input:checked + .cp-basic-block__child-label a {
  color: #fff;
}
.cp-basic-block__tab-contents .cp-basic-block__child-label {
  border: 1px solid var(--main-color);
  background: var(--main-bg-color);
  color: var(--main-text-colorcolor);
}
.cp-basic-block__tab-contents .cp-basic-block__child-label a {
  color: var(-main-text-color);
  text-decoration: none !important;
}
.cp-basic-block__tab-contents .cp-basic-block__child-label:hover {
  color: #fff;
  background-color: var(--main-color);
}
.cp-basic-block__tab-contents .cp-basic-block__child-label:hover a {
  color: #fff;
}
.cp-basic-block__accordion-contents .cp-basic-block__child-label {
  border: 1px solid var(--main-color);
  background: var(--main-bg-color);
  color: var(--main-text-colorcolor);
}
.cp-basic-block__accordion-contents .cp-basic-block__child-label:hover {
  background-color: var(--main-color);
  color: #fff;
}
.cp-basic-block__accordion-contents input.cp-basic-block__child-input:checked + .cp-basic-block__child-label {
  background-color: var(--main-color);
  color: #fff;
}
.cp-basic-block__buttons li a {
  display: flex;
  align-items: center;
  height: 100%;
  color: var(--main-text-color);
  border: 1px solid var(--main-color);
  background-color: var(--main-bg-color);
  text-decoration: none;
}
.cp-basic-block__buttons li a:hover {
  color: #fff;
  background-color: var(--main-color);
}

/**NEW_EDITOR_BLOCK___END**/

/* 20240730 add */
.top-visual .slick-slide .is-pc{
  display: block;
}
@media only screen and (max-width: 959px) {
  .top-visual .slick-slide .is-pc{
    display: none;
  }
}
.top-visual .slick-slide .is-sp{
  display: none;
}
@media only screen and (max-width: 959px) {
  .top-visual .slick-slide .is-sp{
    display: block;
  }
}
/* //20240730 add */