@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;500&family=Noto+Serif+JP:wght@400;600&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap");
@import url("global.css");
.sec_intro {
  margin-bottom: 200px;
}
.sec_intro .img_area {
  width: 100%;
  height: 0;
  padding-top: 22%;
  position: relative;
  overflow: hidden;
  margin-bottom: 80px;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.sec_intro .img_area img {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.sec_intro .sec_intro_inner {
  position: relative;
}
.sec_intro .sec_intro_inner .catch {
  width: 30%;
  position: absolute;
  top: -200px;
  left: 0;
  z-index: 50;
  text-align: center;
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.sec_intro .sec_intro_inner .catch p {
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  white-space: nowrap;
  text-orientation: mixed;
  text-align: left;
  display: inline-block;
  font-size: clamp(21px, 3.9vw, 32px);
  font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Helvetica, sans-serif;
}
.sec_intro .sec_intro_inner .text_area {
  width: 60%;
  margin-left: auto;
}
.sec_event {
  margin-bottom: 120px;
}
.sec_event .sec_title {
  text-align: center;
}
.sec_event .list_event li {
  margin-bottom: 40px;
}
.sec_event .list_event li:last-of-type {
  margin-bottom: 0;
}
.sec_event .list_event li .img_area {
  width: 30%;
}
.sec_event .list_event li .text_area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 60px;
}
.sec_event .list_event li .text_area h3 {
  margin-bottom: 20px;
  color: #36638F;
  font-size: clamp(16px, 2.4vw, 22px);
}

.sec_guideline {
  margin-bottom: 100px;
}
.sec_guideline .sec_title {
  text-align: center;
}
.sec_guideline .sec_guideline_item {
  border-bottom: 1px solid #36638F;
  padding: 30px;
}
.sec_guideline .sec_guideline_item h3 {
  width: 33%;
  text-align: center;
  font-size: clamp(16px, 2.2vw, 18px);
  font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Helvetica, sans-serif;
}
.sec_guideline .sec_guideline_item .tbl_item {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 30px;
  border-collapse: collapse;
}
.sec_guideline .sec_guideline_item .tbl_item th {
  width: 20%;
  padding: 10px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: right;
}
.sec_guideline .sec_guideline_item .tbl_item td {
  padding: 10px 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.sec_guideline .sec_guideline_item:first-of-type {
  border-top: 1px solid #36638F;
}
.sec_guideline .detail_title {
  margin-top: 60px;
  text-align: center;
}
.sec_guideline .tbl_guideline {
  width: 100%;
  border-collapse: collapse;
}
.sec_guideline .tbl_guideline tr {
  border-bottom: 1px dotted #e1e1e1;
}
.sec_guideline .tbl_guideline th {
  width: 30%;
  padding: 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
}
.sec_guideline .tbl_guideline td {
  padding: 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.sec_form {
  background: #f2f2f2;
  padding: 50px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.sec_form .sec_title {
  text-align: center;
}

/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-1 (1200px)

------------------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-2 ( 960px )

------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 959px) {
  .sec_intro {
    margin-bottom: 120px;
  }
  .sec_intro .img_area {
    padding-top: 35%;
  }
  .sec_intro .sec_intro_inner .catch {
    width: 30%;
    left: 6vw;
  }
  .sec_event {
    margin-bottom: 80px;
  }
  .sec_event .list_event li .img_area {
    width: 35%;
  }
  .sec_event .list_event li .text_area {
    padding-left: 30px;
  }
  .sec_guideline {
    margin-bottom: 70px;
  }
  .sec_guideline .sec_guideline_item {
    padding: 20px;
    display: block;
  }
  .sec_guideline .sec_guideline_item h3 {
    width: 100%;
    margin-bottom: 15px;
  }
  .sec_guideline .sec_guideline_item .tbl_item {
    width: 100%;
    padding-left: 0;
  }
  .sec_guideline .sec_guideline_item .tbl_item tr {
    border-bottom: 1px dotted #e1e1e1;
  }
  .sec_guideline .sec_guideline_item .tbl_item tr:last-of-type {
    border-bottom: none;
  }
  .sec_guideline .tbl_guideline th {
    width: 25%;
    padding: 20px;
  }
  .sec_guideline .tbl_guideline td {
    padding: 20px;
  }
}
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-3 ( 644px )

------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 644px) {
  .sec_intro {
    margin-bottom: 70px;
  }
  .sec_intro .img_area {
    padding-top: 45%;
    margin-bottom: 40px;
  }
  .sec_intro .sec_intro_inner .catch {
    width: 30%;
    top: -110px;
  }
  .sec_event {
    margin-bottom: 50px;
  }
  .sec_event .list_event li .img_area {
    width: 100%;
    margin-bottom: 10px;
  }
  .sec_event .list_event li .text_area {
    padding-left: 0;
  }
  .sec_event .list_event li .text_area h3 {
    margin-bottom: 10px;
  }
  .sec_guideline {
    margin-bottom: 70px;
  }
  .sec_guideline .sec_guideline_item {
    padding: 20px 10px 10px;
  }
  .sec_guideline .sec_guideline_item h3 {
    margin-bottom: 10px;
  }
  .sec_guideline .sec_guideline_item .tbl_item th {
    width: 100%;
    display: block;
    text-align: left;
    font-weight: bold;
    padding: 10px 0 0;
  }
  .sec_guideline .sec_guideline_item .tbl_item td {
    width: 100%;
    display: block;
    padding: 6px 0 10px;
  }
  .sec_guideline .tbl_guideline th {
    width: 100%;
    display: block;
    padding: 15px 10px 0;
    text-align: left;
    font-weight: bold;
  }
  .sec_guideline .tbl_guideline td {
    width: 100%;
    display: block;
    padding: 6px 10px 15px;
  }
}