@charset "UTF-8";
/*
======== table of content. ===============
summary:ページ要素（PC）
====================================
*/
/* Scss Document */
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@900&display=swap");
/* Lato */
.font__20 {
  font-size: 2rem;
}

.font_ll {
  font-size: 150%;
}
@media screen and (max-width: 767px) {
  .font_ll {
    font-size: 180%;
  }
}

@media screen and (max-width: 767px) {
  .aligncenter.aligncenter__pc {
    text-align: left !important;
  }
}

/* header */
.header_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.navi__on-demand {
  display: flex;
}
@media screen and (max-width: 767px) {
  .navi__on-demand {
    align-items: center;
  }
}

.navi__on-demand li {
  display: flex;
}
@media screen and (max-width: 767px) {
  .navi__on-demand li {
    font-size: 1.1rem;
    line-height: 125%;
  }
}

.navi__on-demand li:first-child::after {
  margin-left: 0.3em;
  padding-right: 0.3em;
  content: "|";
  font-weight: 100;
}

.navi__on-demand li a {
  display: block;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .navi__on-demand li a {
    font-weight: 500;
  }
}

@media screen and (min-width: 768px) {
  .navi__on-demand li a:hover {
    opacity: 0.7;
    transform: translateY(3px);
  }
}
/*後期*/
.ttl_reservation {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1000px;
  margin: 4vw auto 0.5vw;
  padding-bottom: 0.3em; /*border-bottom: 2px solid #eee;*/
  font-size: 4rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .ttl_reservation {
    max-width: inherit;
    margin: 8vw 0 1vw;
    font-size: 2.6rem;
  }
}

.ttl_reservation img, .ttl_reservation span {
  display: block;
}

.ttl_reservation img {
  width: 150px;
  margin: 0.2em 0.5em 0 0;
}
@media screen and (max-width: 767px) {
  .ttl_reservation img {
    width: 35%;
    margin: 0.1em 0.2em 0 0;
  }
}

.ttl_reservation span {
  padding-left: 0.5em;
}

.sec_reservation {
  display: flex;
  justify-content: space-between;
  max-width: 1000px;
  margin: 0 auto 3em;
}
@media screen and (max-width: 767px) {
  .sec_reservation {
    flex-direction: column;
    max-width: inherit;
    margin: 0 2.66% 6vw;
  }
}

.bt_reserv {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .bt_reserv:not(:last-child) {
    margin-bottom: 2vw;
  }
}

.bt_reserv a {
  display: block;
  padding: 1em;
  background: #ed1f17;
  border: 2px solid #ed1f17;
  color: #fff;
  border-radius: 5px;
  font-size: 2rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .bt_reserv a {
    padding: 0.7em;
    border-radius: 3px;
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) {
  .bt_reserv a:hover {
    background: #fff;
    border-color: #000;
    color: #000;
  }
}

.bt_reserv a i {
  margin-left: 0.5em;
  font-size: 2.6rem;
}
@media screen and (max-width: 767px) {
  .bt_reserv a i {
    font-size: 2rem;
  }
}

.bt_reserv a .font_l {
  font-size: 125%;
}

.reservation_1 .bt_reserv {
  width: 75%;
  margin-left: auto;
  margin-right: auto;
}

.reservation_2 .bt_reserv {
  width: 49%;
}

.reservation_3 .bt_reserv {
  width: 32%;
}

@media screen and (max-width: 767px) {
  .reservation_1 .bt_reserv,
  .reservation_2 .bt_reserv,
  .reservation_3 .bt_reserv {
    width: 100%;
  }
}

.ttl_archive {
  margin-bottom: 2vw;
  font-size: 3rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .ttl_archive {
    margin-bottom: 5vw;
    font-size: 2.6rem;
  }
}

.sec__library {
  margin-top: 6vw;
  margin-bottom: 6vw;
}
@media screen and (max-width: 767px) {
  .sec__library {
    margin-top: 10vw;
    margin-bottom: 12vw;
    line-height: 1.5;
  }
}

.bnr_library {
  margin: 0 35vw 1vw;
}
@media screen and (max-width: 767px) {
  .bnr_library {
    margin: 0 10vw 2vw;
  }
}

.bnr_library a {
  display: block;
  padding: 1px;
  border: 1px solid #ccc;
}

.bnr_library a:hover {
  opacity: 0.8;
}
@media screen and (max-width: 767px) {
  .bnr_library a:hover {
    opacity: 1;
  }
}

.txt__bnr {
  font-size: 1.3rem;
  text-align: center;
}

/*後期*/
.link_underline {
  text-decoration: underline;
}

#content {
  color: #131313;
}

.txt_member_only {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.txt_member_only_text {
  display: inline-block;
  width: 30px;
  height: 30px;
  background: #5d5d5d url("../../../global/images/icon_key.png") no-repeat center center/60%;
}
@media screen and (max-width: 767px) {
  .txt_member_only_text {
    width: 20px;
    height: 20px;
  }
}

.txt_key_exp {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .txt_key_exp {
    margin: 0 2.66% 4vmin;
  }
}

.txt_key_exp_text {
  position: relative; /*top:-.6em;*/
  left: 0.2em;
  font-size: 1.3rem;
}
@media screen and (max-width: 767px) {
  .txt_key_exp_text {
    top: -0.4em;
  }
}

.txt_doc_notice {
  margin: 0.4em 0.6em 0;
  padding: 0.5em;
  background: #1f5ac7;
  font-size: 1.2rem;
  line-height: 140%;
}

.txt_doc_notice,
.txt_doc_notice a {
  color: #fff;
}

.space_logged {
  margin-bottom: 6vw;
}
@media screen and (max-width: 767px) {
  .space_logged {
    margin-bottom: 4vmin;
  }
}

@media screen and (max-width: 767px) {
  .col .btn_blk a {
    width: 100%;
    padding-left: 1em;
    padding-right: 1em;
  }
}

/* MV */
#mv {
  position: relative;
  margin-bottom: 4vw;
}
@media screen and (min-width: 1366px) {
  #mv {
    max-height: 670px;
    overflow: hidden;
  }
}
@media screen and (max-width: 767px) {
  #mv {
    height: 65vw;
    margin-bottom: 2vw;
  }
}

@media screen and (max-width: 767px) {
  .img__mv {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: 95% 50%;
       object-position: 95% 50%;
  }
}

#mv h1, .event_category {
  position: absolute;
}

#mv h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-60%) translateX(-50%);
  width: 31%;
}
@media screen and (max-width: 767px) {
  #mv h1 {
    transform: translateY(-60%) translateX(-50%);
    width: 60%;
  }
}

.event_category {
  right: 3vw;
  bottom: 2.2vw;
  width: 11.8%;
  padding: 0.5em;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .event_category {
    right: 3vmin;
    bottom: 3vmin;
    width: 18%;
  }
}

.txt_bt_reserve {
  display: block;
  margin: 0 auto 0.5em;
  color: #ed1f17;
  font-weight: 700;
  text-align: center;
}

.btn_reservation_yt {
  padding: 6.4vw 23.5vw 5vw;
}
@media screen and (max-width: 767px) {
  .btn_reservation_yt {
    padding: 6.4vmin;
  }
}

.btn_reservation_yt a {
  display: flex;
}

.btn_reservation_yt a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .btn_reservation_yt a:hover {
    opacity: 1;
  }
}

.btn_reservation_yt .icon_btn_reservation_yt {
  flex-basis: 34.6%;
  padding: 1em 3em;
  background-color: #f5f5f5;
  border-bottom-left-radius: 5px;
  border-top-left-radius: 5px;
}
@media screen and (max-width: 767px) {
  .btn_reservation_yt .icon_btn_reservation_yt {
    flex-basis: 25%;
    padding: 1em;
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px;
  }
}

.btn_reservation_yt .icon_btn_reservation_yt img {
  display: block;
  margin: auto;
}

.btn_reservation_yt .txt_btn_reservation_yt {
  display: inline-block;
  flex-basis: 65.4%;
  padding: 0.5em;
  background-color: #ed1f17;
  color: #fff;
  font-size: 3.6rem;
  font-weight: 700;
  text-align: center;
  border-bottom-right-radius: 5px;
  border-top-right-radius: 5px;
}
@media screen and (max-width: 767px) {
  .btn_reservation_yt .txt_btn_reservation_yt {
    flex-basis: 75%;
    font-size: 2rem;
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px;
  }
}

/*アコーディオン*/
.sec_acc_content {
  max-width: 144rem;
  margin: 0 auto 6.6vw;
  padding: 0 4.6vw;
  border-bottom: 2px solid #131313;
}
@media screen and (min-width: 1366px) {
  .sec_acc_content {
    padding-left: 4.6rem;
    padding-right: 4.6rem;
  }
}
@media screen and (max-width: 767px) {
  .sec_acc_content {
    max-width: inherit;
    margin-bottom: 12vmin;
    padding: 0 2.66vw;
  }
}

.sec_acc_content.no_reserv {
  margin-top: 5em;
}

.sec_acc_content.no_reserv {
  margin-top: 5em;
}

.sec_acc {
  margin-bottom: 4.4vw;
  padding: 3.14vw 8.78vw 0;
  background-color: #f0f3fa;
}
@media screen and (min-width: 1366px) {
  .sec_acc {
    margin-bottom: 6rem;
    padding: 4.6rem 12rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec_acc {
    padding: 6vw 6vw 0;
  }
}
.sec_acc.sec_coming {
  background-color: #ebebeb;
}

.sec_acc h3 {
  position: relative;
  padding: 0.8em; /*border-top:2px solid #131313;*/
  font-size: 2.4rem;
  transition: opacity 0.7s cubic-bezier(0.23, 1, 0.32, 1), transform 0.7s cubic-bezier(0.23, 1, 0.32, 1), background 0.7s cubic-bezier(0.23, 1, 0.32, 1), color 0.7s cubic-bezier(0.23, 1, 0.32, 1);
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .sec_acc h3 {
    padding: 0.6em;
    border-top: 2px solid #131313;
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) {
  .sec_acc h3:hover {
    color: #e60412;
  }
  .sec_acc h3:hover .icon_acc::before,
  .sec_acc h3:hover .icon_acc::after {
    background-color: #e60412;
  }
}

.icon__status {
  position: relative;
  top: -0.2em;
  display: inline-block;
  margin-left: 0.5em;
  padding: 0.4em 1em;
  border-radius: 2.9rem;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 110%;
  letter-spacing: normal;
}
@media screen and (max-width: 767px) {
  .icon__status {
    top: -0.3em;
    font-size: 1.2rem;
  }
}
.icon__status.icon__coming {
  background-color: #5f5f5f;
}
.icon__status.icon__open {
  background-color: #e60412;
}

p.icon__status {
  top: 0;
  margin-top: 0.5em;
}
p.icon__status i {
  display: none;
}
@media screen and (max-width: 767px) {
  p.icon__status i {
    display: inline-block;
    position: relative;
    top: -0.1em;
    padding-left: 0.4em;
    font-size: 85%;
  }
}

.ipad p.icon__status i {
  display: inline-block;
  position: relative;
  top: -0.1em;
  padding-left: 0.4em;
  font-size: 85%;
}

.txt_open {
  display: inline-block;
  padding-left: 80px;
  background: url("../images/icon_acc.png") no-repeat 0 0.2em/50px auto;
}
@media screen and (max-width: 767px) {
  .txt_open {
    padding-left: 40px;
    background-position: 0 0.5em;
    background-size: 30px auto;
  }
}

.sec_acc h3 .font_l {
  font-size: 3.6rem;
}
@media screen and (max-width: 767px) {
  .sec_acc h3 .font_l {
    font-size: 2.2rem;
  }
}

.icon_acc::before,
.icon_acc::after {
  content: "";
  display: block;
  width: 31px;
  height: 3px;
  border-radius: 5px;
  background: #131313;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .icon_acc::before,
  .icon_acc::after {
    width: 15px;
    height: 2px;
  }
}

.icon_acc::after {
  background: #131313;
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}

.sec_acc h3.active .icon_acc::after {
  transform: rotate(0);
  transition: 0.5s;
}

.acc_content {
  display: none;
}
.sec_lineup {
  display: flex;
  flex-wrap: wrap;
  padding: 2vw 0;
}
@media screen and (max-width: 767px) {
  .sec_lineup {
    padding: 2vmin 0;
  }
}

.sec_lineup .col {
  flex-basis: 31.53%;
  margin: 0 2.705% 4vw 0;
}
@media screen and (max-width: 767px) {
  .sec_lineup .col {
    flex-basis: 48.5%;
    margin: 0 0 3.5vmin 0;
  }
}

.sec_lineup .col.col_other {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 100%;
}
@media screen and (min-width: 768px) {
  .sec_lineup .col:nth-child(3n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  .sec_lineup .col:nth-child(even) {
    margin-left: 3%;
  }
}

.lineup_logo {
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .lineup_logo {
    position: relative;
  }
}

.lineup_logo,
.lineup_logo a {
  position: relative;
}

.lineup_logo a {
  display: block;
  border: 1px solid #131313;
  box-sizing: border-box;
  overflow: hidden;
}

.lineup_logo a:hover {
  opacity: 0.7;
  border-color: #666;
}

.txt_coming {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.3em 0.5em;
  background: #000;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 100;
  line-height: 1em;
}
@media screen and (max-width: 767px) {
  .txt_coming {
    padding: 0.1em 0.2em;
    font-size: 1.1rem;
  }
}

.txt_girl {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.3em 0.5em;
  background: #ec7994;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 100;
  line-height: 1em;
}

.lineup_logo img {
  box-sizing: border-box;
  transition: opacity 0.7s cubic-bezier(0.23, 1, 0.32, 1), transform 0.7s cubic-bezier(0.23, 1, 0.32, 1), background 0.7s cubic-bezier(0.23, 1, 0.32, 1), color 0.7s cubic-bezier(0.23, 1, 0.32, 1);
}

.sec_lineup a:not(.coming) {
  display: block;
}

.sec_lineup a:not(.coming) .lineup_logo {
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .sec_lineup a:not(.coming):hover .lineup_logo img {
    transform: scale(1.1);
    opacity: 0.7;
  }
}

@media screen and (min-width: 768px) {
  .sec_lineup a:not(.coming):hover .txt_lineup,
  .sec_lineup a:not(.coming):hover .txt_theme {
    color: #e60412;
  }
}

.txt_lineup {
  padding: 0.6em 0.6em 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .txt_lineup {
    padding-top: 0.4em;
    padding-bottom: 0.3em;
    font-size: 1.2rem;
    line-height: 136%;
  }
}

.txt_theme {
  margin-bottom: 0.7em;
  padding: 0 0.6em;
  font-size: 1.4rem;
  line-height: 140%;
}
@media screen and (max-width: 767px) {
  .txt_theme {
    font-size: 1.1rem;
  }
}

.txt_lineup, .txt_theme {
  transition: opacity 0.7s cubic-bezier(0.23, 1, 0.32, 1), transform 0.7s cubic-bezier(0.23, 1, 0.32, 1), background 0.7s cubic-bezier(0.23, 1, 0.32, 1), color 0.7s cubic-bezier(0.23, 1, 0.32, 1);
}

.txt_ttl_indent {
  padding-left: 1.8em;
}
@media screen and (max-width: 767px) {
  .txt_ttl_indent {
    padding-left: 0;
  }
}

.btn_download {
  text-align: center;
}

.btn_download.btn_download_all {
  margin-bottom: 1em;
}

.btn_download.btn_download_all a {
  padding-left: 15em;
  padding-right: 15em;
}
@media screen and (max-width: 767px) {
  .btn_download.btn_download_all a {
    width: 100%;
    padding-left: 2em;
    padding-right: 2em;
  }
}

.txt_notice {
  font-size: 1.2rem;
  text-align: center;
}

.txt_comingsoon {
  margin: 4em 0;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .txt_comingsoon {
    margin: 3em 0;
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  .col .btn_download {
    margin-bottom: 3vmin;
    font-size: 1.3rem;
  }
}

@media screen and (max-width: 767px) {
  .col .btn_download a {
    width: 100%;
    padding: 0.2em;
    border-width: 1px;
  }
}

/*人気企業バナー*/
.bnr_ninkitop {
  width: 35%;
  margin: auto auto 5vw;
}
@media screen and (max-width: 767px) {
  .bnr_ninkitop {
    width: 100%;
    margin: auto auto 10vmin;
  }
}

.bnr_ninkitop a {
  display: block;
}

.bnr_ninkitop a:hover {
  opacity: 0.7;
}

.bnr_ninkitop.bnr_ninkitop_btm {
  margin-top: 3vw;
}
@media screen and (max-width: 767px) {
  .bnr_ninkitop.bnr_ninkitop_btm {
    margin-top: 5vmin;
  }
}

/* about以降 */
.under_content {
  padding: 90px 4.6%;
}
@media screen and (max-width: 767px) {
  .under_content {
    padding: 8% 4.6%;
  }
}

.under_content.sec_colored {
  background-color: #f0f3fa;
}

#sec_about figure {
  width: 34.4vw;
  margin: 0 auto 8rem;
}
@media screen and (max-width: 767px) {
  #sec_about figure {
    width: 90vw;
    margin: 0 auto 3rem;
  }
}

/*タイトル*/
.ttl_event {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 155px;
  margin-bottom: 2.2vw;
  background-repeat: no-repeat;
  background-size: auto 155px;
  font-size: 3.6rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .ttl_event {
    height: auto;
    margin-bottom: 7vmin;
    padding-top: 50px;
    background-size: auto 30px;
    font-size: 2.4rem;
    line-height: 150%;
  }
}

.ttl_event span {
  position: relative;
  padding-bottom: 2.2vw;
}
@media screen and (max-width: 767px) {
  .ttl_event span {
    padding-bottom: 4vmin;
  }
}

.ttl_event span::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 65px;
  height: 5px;
  margin: auto;
  background: #131313;
}
@media screen and (max-width: 767px) {
  .ttl_event span::after {
    width: 55px;
    height: 2px;
  }
}

#sec_about .ttl_event {
  background-image: url("../images/ttl_about.png");
  background-position: left center;
}

#sec_point .ttl_event {
  background-image: url("../images/ttl_point.png");
  background-position: right center;
}

#sec_special .ttl_event {
  background-image: url("../images/ttl_special.png");
  background-position: left center;
}

@media screen and (max-width: 767px) {
  #sec_about .ttl_event,
  #sec_point .ttl_event,
  #sec_special .ttl_event {
    background-position: center top;
  }
}

.under_content h3 {
  margin-bottom: 3vw;
  font-size: 2.4rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .under_content h3 {
    margin-bottom: 6vmin;
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 767px) {
  #sec_about .aligncenter p,
  #sec_special .txt_event,
  #sec_special .txt_event_reservation {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 767px) {
  #sec_about .aligncenter p,
  #sec_special .txt_event {
    text-align: left;
  }
}

.sec_point {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .sec_point {
    flex-direction: column;
  }
}

.sec_point_box {
  flex-basis: 48.64%;
  padding: 2.2vw;
  background: #f0f3fa;
}
@media screen and (max-width: 767px) {
  .sec_point_box {
    flex-basis: 100%;
    padding: 6vmin;
  }
}

@media screen and (max-width: 767px) {
  .sec_point_box:first-child {
    margin-bottom: 5vmin;
  }
}

.sec_point_box dt {
  margin-bottom: 2em;
  padding-left: 40px;
  background: url("../images/icon_ttl_seminar.png") no-repeat left 0.2em/24px auto;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .sec_point_box dt {
    margin-bottom: 1.5em;
  }
}

.sec_point_box dd {
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .sec_point_box dd {
    font-size: 1.3rem;
  }
}

.txt_period {
  margin-bottom: 1em;
  text-align: center;
}

.txt_period span {
  display: inline-block;
  padding: 0.8em 3em;
  background: #fff;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .txt_period span {
    padding: 0.8em 2em;
  }
}

.btn_reservation {
  padding-top: 1em;
}
@media screen and (max-width: 767px) {
  .btn_reservation {
    padding-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .btn_reservation a {
    display: inline-block;
    padding: 0.8em 5em;
    border: 2px solid #001175;
    border-radius: 30px;
    color: #001175;
    font-weight: 700;
  }
}

.btn_reservation a,
.btn_download a {
  display: inline-block;
  padding: 0.8em 5em;
  border: 2px solid #001175;
  border-radius: 30px;
  color: #001175;
  font-weight: 700;
}

.btn_reservation a:hover,
.btn_download a:hover {
  background-color: #001175;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .btn_reservation a:hover,
  .btn_download a:hover {
    background-color: #001175;
    color: #fff;
  }
}

@media screen and (orientation: landscape) {
  .btn_reservation_yt .txt_btn_reservation_yt {
    padding: 0.9em 0.5em;
  }
}
/* iPhone SE */
@media screen and (max-width: 320px) {
  /*タイトル*/
  .ttl_event {
    font-size: 2rem;
  }
  .under_content h3 {
    font-size: 1.6rem;
  }
  .txt_period span {
    padding: 0.8em 1em;
    font-size: 1.4rem;
  }
}
/* **** マージン(フォント相対) **** */
.margin-1em {
  margin-bottom: 1em;
}

.margin-2em {
  margin-bottom: 2em;
}

.margin-3em {
  margin-bottom: 3em;
}

.margin-4em {
  margin-bottom: 4em;
}

.margin-5em {
  margin-bottom: 5em;
}

.margin-6em {
  margin-bottom: 6em;
}

.margin-7em {
  margin-bottom: 7em;
}

.margin-8em {
  margin-bottom: 8em;
}

.margin-9em {
  margin-bottom: 9em;
}

.margin-10em {
  margin-bottom: 10em;
}

.margin-11em {
  margin-bottom: 11em;
}

.margin-12em {
  margin-bottom: 12em;
}

.margin-13em {
  margin-bottom: 13em;
}

.margin-14em {
  margin-bottom: 14em;
}

.margin-15em {
  margin-bottom: 15em;
}

.margin-16em {
  margin-bottom: 16em;
}

.margin-17em {
  margin-bottom: 17em;
}

.margin-18em {
  margin-bottom: 18em;
}

.margin-19em {
  margin-bottom: 19em;
}

.margin-20em {
  margin-bottom: 20em;
}

.margin-21em {
  margin-bottom: 21em;
}

.margin-22em {
  margin-bottom: 22em;
}

.margin-23em {
  margin-bottom: 23em;
}

.margin-24em {
  margin-bottom: 24em;
}

.margin-25em {
  margin-bottom: 25em;
}

.margin-26em {
  margin-bottom: 26em;
}

.margin-27em {
  margin-bottom: 27em;
}

.margin-28em {
  margin-bottom: 28em;
}

.margin-29em {
  margin-bottom: 29em;
}

.margin-30em {
  margin-bottom: 30em;
}

.margin-31em {
  margin-bottom: 31em;
}

.margin-32em {
  margin-bottom: 32em;
}

.margin-33em {
  margin-bottom: 33em;
}

.margin-34em {
  margin-bottom: 34em;
}

.margin-35em {
  margin-bottom: 35em;
}

.margin-36em {
  margin-bottom: 36em;
}

.margin-37em {
  margin-bottom: 37em;
}

.margin-38em {
  margin-bottom: 38em;
}

.margin-39em {
  margin-bottom: 39em;
}

.margin-40em {
  margin-bottom: 40em;
}

.margin-41em {
  margin-bottom: 41em;
}

.margin-42em {
  margin-bottom: 42em;
}

.margin-43em {
  margin-bottom: 43em;
}

.margin-44em {
  margin-bottom: 44em;
}

.margin-45em {
  margin-bottom: 45em;
}

.margin-46em {
  margin-bottom: 46em;
}

.margin-47em {
  margin-bottom: 47em;
}

.margin-48em {
  margin-bottom: 48em;
}

.margin-49em {
  margin-bottom: 49em;
}

.margin-50em {
  margin-bottom: 50em;
}

.margin-51em {
  margin-bottom: 51em;
}

.margin-52em {
  margin-bottom: 52em;
}

.margin-53em {
  margin-bottom: 53em;
}

.margin-54em {
  margin-bottom: 54em;
}

.margin-55em {
  margin-bottom: 55em;
}

.margin-56em {
  margin-bottom: 56em;
}

.margin-57em {
  margin-bottom: 57em;
}

.margin-58em {
  margin-bottom: 58em;
}

.margin-59em {
  margin-bottom: 59em;
}

.margin-60em {
  margin-bottom: 60em;
}

.margin-61em {
  margin-bottom: 61em;
}

.margin-62em {
  margin-bottom: 62em;
}

.margin-63em {
  margin-bottom: 63em;
}

.margin-64em {
  margin-bottom: 64em;
}

.margin-65em {
  margin-bottom: 65em;
}

.margin-66em {
  margin-bottom: 66em;
}

.margin-67em {
  margin-bottom: 67em;
}

.margin-68em {
  margin-bottom: 68em;
}

.margin-69em {
  margin-bottom: 69em;
}

.margin-70em {
  margin-bottom: 70em;
}

.margin-71em {
  margin-bottom: 71em;
}

.margin-72em {
  margin-bottom: 72em;
}

.margin-73em {
  margin-bottom: 73em;
}

.margin-74em {
  margin-bottom: 74em;
}

.margin-75em {
  margin-bottom: 75em;
}

.margin-76em {
  margin-bottom: 76em;
}

.margin-77em {
  margin-bottom: 77em;
}

.margin-78em {
  margin-bottom: 78em;
}

.margin-79em {
  margin-bottom: 79em;
}

.margin-80em {
  margin-bottom: 80em;
}

.margin-81em {
  margin-bottom: 81em;
}

.margin-82em {
  margin-bottom: 82em;
}

.margin-83em {
  margin-bottom: 83em;
}

.margin-84em {
  margin-bottom: 84em;
}

.margin-85em {
  margin-bottom: 85em;
}

.margin-86em {
  margin-bottom: 86em;
}

.margin-87em {
  margin-bottom: 87em;
}

.margin-88em {
  margin-bottom: 88em;
}

.margin-89em {
  margin-bottom: 89em;
}

.margin-90em {
  margin-bottom: 90em;
}

.margin-91em {
  margin-bottom: 91em;
}

.margin-92em {
  margin-bottom: 92em;
}

.margin-93em {
  margin-bottom: 93em;
}

.margin-94em {
  margin-bottom: 94em;
}

.margin-95em {
  margin-bottom: 95em;
}

.margin-96em {
  margin-bottom: 96em;
}

.margin-97em {
  margin-bottom: 97em;
}

.margin-98em {
  margin-bottom: 98em;
}

.margin-99em {
  margin-bottom: 99em;
}

.margin-100em {
  margin-bottom: 100em;
}

/* **** マージン(フォント絶対) **** */
.margin-1rem {
  margin-bottom: 1rem;
}

.margin-2rem {
  margin-bottom: 2rem;
}

.margin-3rem {
  margin-bottom: 3rem;
}

.margin-4rem {
  margin-bottom: 4rem;
}

.margin-5rem {
  margin-bottom: 5rem;
}

.margin-6rem {
  margin-bottom: 6rem;
}

.margin-7rem {
  margin-bottom: 7rem;
}

.margin-8rem {
  margin-bottom: 8rem;
}

.margin-9rem {
  margin-bottom: 9rem;
}

.margin-10rem {
  margin-bottom: 10rem;
}

.margin-11rem {
  margin-bottom: 11rem;
}

.margin-12rem {
  margin-bottom: 12rem;
}

.margin-13rem {
  margin-bottom: 13rem;
}

.margin-14rem {
  margin-bottom: 14rem;
}

.margin-15rem {
  margin-bottom: 15rem;
}

.margin-16rem {
  margin-bottom: 16rem;
}

.margin-17rem {
  margin-bottom: 17rem;
}

.margin-18rem {
  margin-bottom: 18rem;
}

.margin-19rem {
  margin-bottom: 19rem;
}

.margin-20rem {
  margin-bottom: 20rem;
}

.margin-21rem {
  margin-bottom: 21rem;
}

.margin-22rem {
  margin-bottom: 22rem;
}

.margin-23rem {
  margin-bottom: 23rem;
}

.margin-24rem {
  margin-bottom: 24rem;
}

.margin-25rem {
  margin-bottom: 25rem;
}

.margin-26rem {
  margin-bottom: 26rem;
}

.margin-27rem {
  margin-bottom: 27rem;
}

.margin-28rem {
  margin-bottom: 28rem;
}

.margin-29rem {
  margin-bottom: 29rem;
}

.margin-30rem {
  margin-bottom: 30rem;
}

.margin-31rem {
  margin-bottom: 31rem;
}

.margin-32rem {
  margin-bottom: 32rem;
}

.margin-33rem {
  margin-bottom: 33rem;
}

.margin-34rem {
  margin-bottom: 34rem;
}

.margin-35rem {
  margin-bottom: 35rem;
}

.margin-36rem {
  margin-bottom: 36rem;
}

.margin-37rem {
  margin-bottom: 37rem;
}

.margin-38rem {
  margin-bottom: 38rem;
}

.margin-39rem {
  margin-bottom: 39rem;
}

.margin-40rem {
  margin-bottom: 40rem;
}

.margin-41rem {
  margin-bottom: 41rem;
}

.margin-42rem {
  margin-bottom: 42rem;
}

.margin-43rem {
  margin-bottom: 43rem;
}

.margin-44rem {
  margin-bottom: 44rem;
}

.margin-45rem {
  margin-bottom: 45rem;
}

.margin-46rem {
  margin-bottom: 46rem;
}

.margin-47rem {
  margin-bottom: 47rem;
}

.margin-48rem {
  margin-bottom: 48rem;
}

.margin-49rem {
  margin-bottom: 49rem;
}

.margin-50rem {
  margin-bottom: 50rem;
}

.margin-51rem {
  margin-bottom: 51rem;
}

.margin-52rem {
  margin-bottom: 52rem;
}

.margin-53rem {
  margin-bottom: 53rem;
}

.margin-54rem {
  margin-bottom: 54rem;
}

.margin-55rem {
  margin-bottom: 55rem;
}

.margin-56rem {
  margin-bottom: 56rem;
}

.margin-57rem {
  margin-bottom: 57rem;
}

.margin-58rem {
  margin-bottom: 58rem;
}

.margin-59rem {
  margin-bottom: 59rem;
}

.margin-60rem {
  margin-bottom: 60rem;
}

.margin-61rem {
  margin-bottom: 61rem;
}

.margin-62rem {
  margin-bottom: 62rem;
}

.margin-63rem {
  margin-bottom: 63rem;
}

.margin-64rem {
  margin-bottom: 64rem;
}

.margin-65rem {
  margin-bottom: 65rem;
}

.margin-66rem {
  margin-bottom: 66rem;
}

.margin-67rem {
  margin-bottom: 67rem;
}

.margin-68rem {
  margin-bottom: 68rem;
}

.margin-69rem {
  margin-bottom: 69rem;
}

.margin-70rem {
  margin-bottom: 70rem;
}

.margin-71rem {
  margin-bottom: 71rem;
}

.margin-72rem {
  margin-bottom: 72rem;
}

.margin-73rem {
  margin-bottom: 73rem;
}

.margin-74rem {
  margin-bottom: 74rem;
}

.margin-75rem {
  margin-bottom: 75rem;
}

.margin-76rem {
  margin-bottom: 76rem;
}

.margin-77rem {
  margin-bottom: 77rem;
}

.margin-78rem {
  margin-bottom: 78rem;
}

.margin-79rem {
  margin-bottom: 79rem;
}

.margin-80rem {
  margin-bottom: 80rem;
}

.margin-81rem {
  margin-bottom: 81rem;
}

.margin-82rem {
  margin-bottom: 82rem;
}

.margin-83rem {
  margin-bottom: 83rem;
}

.margin-84rem {
  margin-bottom: 84rem;
}

.margin-85rem {
  margin-bottom: 85rem;
}

.margin-86rem {
  margin-bottom: 86rem;
}

.margin-87rem {
  margin-bottom: 87rem;
}

.margin-88rem {
  margin-bottom: 88rem;
}

.margin-89rem {
  margin-bottom: 89rem;
}

.margin-90rem {
  margin-bottom: 90rem;
}

.margin-91rem {
  margin-bottom: 91rem;
}

.margin-92rem {
  margin-bottom: 92rem;
}

.margin-93rem {
  margin-bottom: 93rem;
}

.margin-94rem {
  margin-bottom: 94rem;
}

.margin-95rem {
  margin-bottom: 95rem;
}

.margin-96rem {
  margin-bottom: 96rem;
}

.margin-97rem {
  margin-bottom: 97rem;
}

.margin-98rem {
  margin-bottom: 98rem;
}

.margin-99rem {
  margin-bottom: 99rem;
}

.margin-100rem {
  margin-bottom: 100rem;
}/*# sourceMappingURL=styles.css.map */