#special03 .first_view {
  width: 100%;
}
#special03 .first_view .main_visual {
  position: relative;
  z-index: -1;
}
#special03 .first_view .main_visual img {
  width: 100%;
  height: 100%;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
}
@media screen and (max-width: 767px) {
  #special03 .first_view .main_visual img {
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
  }
}
#special03 .first_view .main_visual_bg {
  position: absolute;
  width: 100%;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  #special03 .first_view .main_visual_bg {
    overflow: hidden;
  }
}
#special03 .first_view .main_visual_bg img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  #special03 .first_view .main_visual_bg img {
    width: 130%;
  }
}
#special03 .first_view .ttl_unit {
  position: absolute;
  padding-top: 60px;
  top: 0;
  left: 5%;
  z-index: 2;
}
#special03 .first_view .ttl_unit .ttl {
  padding-top: 6%;
  color: #fff;
  font-family: "PT Sans", sans-serif;
  font-size: clamp(30px, 6vw, 200px);
  font-weight: 700;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  #special03 .first_view .ttl_unit .ttl {
    padding-top: 4%;
    width: 100%;
  }
}
#special03 .first_view .ttl_unit .ttl .ttl_jp {
  margin-top: 1%;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(20px, 2.5vw, 100px);
  font-weight: 600;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  #special03 .first_view .ttl_unit .ttl .ttl_jp {
    font-size: clamp(16px, 3vw, 100px);
  }
}
#special03 .catch_box {
  margin-left: 5%;
  margin-right: 5%;
  margin-top: 5%;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  #special03 .catch_box {
    margin-top: 10%;
    margin-bottom: 5%;
  }
}
#special03 .catch_box .catch {
  color: #0762D3;
  font-size: clamp(20px, 2.5vw, 50px);
  text-align: center;
  font-weight: 700;
  line-height: 1.5em;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  #special03 .catch_box .catch {
    font-size: 20px;
    letter-spacing: 0;
  }
}
#special03 .catch_box .lead {
  padding: 5% 0;
  text-align: center;
  font-size: clamp(11px, 1.5vw, 25px);
  font-weight: 500;
  line-height: 1.8em;
}
@media screen and (max-width: 767px) {
  #special03 .catch_box .lead {
    text-align: left;
    font-size: 16px;
    line-height: 1.7em;
  }
}
#special03 .contents_area {
  margin: 0 5%;
  font-size: clamp(11px, 1.5vw, 25px);
  font-weight: 500;
  line-height: 1.8em;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area {
    font-size: 16px;
    line-height: 1.7em;
  }
}
#special03 .contents_area .about_box {
  background: linear-gradient(90deg, rgb(205, 230, 245) 0%, rgb(147, 204, 232) 100%);
  border-radius: 20px;
  padding: 4%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box {
    border-radius: 10px;
    padding: 5%;
  }
}
#special03 .contents_area .about_box .about01_box {
  display: flex;
  justify-content: start;
  align-items: start;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about01_box {
    flex-direction: column;
  }
}
#special03 .contents_area .about_box .about01_box .about01_visual {
  width: 50%;
  margin-right: 3%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about01_box .about01_visual {
    width: 100%;
    margin-right: 0%;
    margin-bottom: 8%;
  }
}
#special03 .contents_area .about_box .about01_box .about01_visual img {
  width: 100%;
}
#special03 .contents_area .about_box .about01_box .about01_detail {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about01_box .about01_detail {
    width: 100%;
  }
}
#special03 .contents_area .about_box .about01_box .about01_detail .about01_ttl {
  color: #0762D3;
  font-size: clamp(20px, 2.5vw, 35px);
  font-weight: 700;
  line-height: 1.5em;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about01_box .about01_detail .about01_ttl {
    width: 100%;
    font-size: 20px;
  }
}
#special03 .contents_area .about_box .about01_box .about01_detail .about01_txt {
  margin-top: 3%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about01_box .about01_detail .about01_txt {
    margin-top: 5%;
  }
}
#special03 .contents_area .about_box .about02_box {
  display: flex;
  justify-content: start;
  align-items: start;
  margin-top: 5%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about02_box {
    flex-direction: column;
  }
}
#special03 .contents_area .about_box .about02_box .about02_detail {
  width: 60%;
  margin-right: 3%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about02_box .about02_detail {
    width: 100%;
  }
}
#special03 .contents_area .about_box .about02_box .about02_detail .about02_detail_ttl {
  color: #0762D3;
  font-weight: 700;
  margin-bottom: 1%;
}
#special03 .contents_area .about_box .about02_box .about02_detail .about02_detail_unit {
  display: flex;
  justify-content: start;
  align-items: start;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about02_box .about02_detail .about02_detail_unit {
    flex-direction: column;
  }
}
#special03 .contents_area .about_box .about02_box .about02_detail .about02_detail_unit .detail_ttl {
  font-weight: 600;
  width: 13%;
  text-align: justify;
  -moz-text-align-last: justify;
       text-align-last: justify;
  text-justify: inter-ideograph;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about02_box .about02_detail .about02_detail_unit .detail_ttl {
    width: 100%;
    text-align: left;
    -moz-text-align-last: auto;
         text-align-last: auto;
    text-justify: auto;
  }
}
#special03 .contents_area .about_box .about02_box .about02_detail .about02_detail_unit .detail_txt {
  margin-left: 3%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about02_box .about02_detail .about02_detail_unit .detail_txt {
    margin-left: 0;
  }
}
#special03 .contents_area .about_box .about02_box .about02_detail .about02_detail_txt {
  margin-top: 1%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about02_box .about02_detail .about02_detail_txt {
    margin-top: 3%;
  }
}
#special03 .contents_area .about_box .about02_box .about02_visual {
  width: 40%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about02_box .about02_visual {
    width: 100%;
    margin-top: 3%;
  }
}
#special03 .contents_area .about_box .about02_box .about02_visual img {
  width: 100%;
}
#special03 .contents_area .about_box .about02_box .about02_visual .caption {
  margin-top: 0.5%;
  text-align: right;
  font-size: clamp(11px, 1.1vw, 20px);
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .about_box .about02_box .about02_visual .caption {
    font-size: 14px;
  }
}
#special03 .contents_area .flow_box {
  padding: 5% 0;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .flow_box {
    padding: 10% 0;
  }
}
#special03 .contents_area .flow_box .flow_ttl {
  color: #0762D3;
  font-size: clamp(20px, 2.5vw, 50px);
  font-weight: 700;
  line-height: 1.5em;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .flow_box .flow_ttl {
    font-size: 20px;
  }
}
#special03 .contents_area .flow_box .flow_wrap {
  margin-top: 30%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .flow_box .flow_wrap {
    margin-top: 10%;
  }
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit {
  display: flex;
  justify-content: start;
  align-items: start;
  margin-bottom: 10%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .flow_box .flow_wrap .flow_unit {
    flex-direction: column;
    margin-bottom: 0;
  }
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit:last-child {
  margin-bottom: 0;
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left {
  margin-top: -25%;
  width: 47.5%;
  margin-right: 5%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left {
    margin-top: 0;
    width: 100%;
    margin-right: 0;
    margin-bottom: 10%;
  }
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right {
  width: 47.5%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right {
    width: 100%;
    margin-bottom: 10%;
  }
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap {
  position: relative;
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap .flow_ttl_unit, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap .flow_ttl_unit {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: start;
  align-items: start;
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap .flow_ttl_unit .flow_number, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap .flow_ttl_unit .flow_number {
  width: clamp(40px, 6vw, 80px);
  height: clamp(40px, 6vw, 80px);
  background: linear-gradient(90deg, rgb(169, 213, 237) 0%, rgb(99, 171, 222) 40%, rgb(0, 112, 201) 100%);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(20px, 3vw, 45px);
  font-weight: 600;
  color: #fff;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap .flow_ttl_unit .flow_number, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap .flow_ttl_unit .flow_number {
    width: 40px;
    height: 40px;
    font-size: 25px;
  }
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap .flow_ttl_unit .flow_detail_ttl, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap .flow_ttl_unit .flow_detail_ttl {
  color: #0762D3;
  font-size: clamp(11px, 2vw, 35px);
  font-weight: 700;
  margin-left: 1vw;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap .flow_ttl_unit .flow_detail_ttl, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap .flow_ttl_unit .flow_detail_ttl {
    margin-top: 1%;
    margin-left: 2vw;
    font-size: 18px;
  }
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap .flow_visual, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap .flow_visual {
  position: relative;
  margin-top: clamp(-20px, -3vw, -40px);
  z-index: 1;
  padding-left: 5%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap .flow_visual, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap .flow_visual {
    margin-top: 2%;
    padding-left: 0;
  }
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap .flow_visual img, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap .flow_visual img {
  width: 100%;
}
#special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap .flow_txt, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap .flow_txt {
  margin-top: 2%;
  padding-left: 5%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_left .flow_detail_wrap .flow_txt, #special03 .contents_area .flow_box .flow_wrap .flow_unit .flow_right .flow_detail_wrap .flow_txt {
    padding-left: 0;
  }
}
#special03 .contents_area .closing_box {
  padding: 8% 0 5% 0;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .closing_box {
    padding: 10% 0 5% 0;
  }
}
#special03 .contents_area .closing_box .closing_ttl {
  text-align: center;
  color: #0762D3;
  font-size: clamp(20px, 2.5vw, 50px);
  font-weight: 700;
  line-height: 1.5em;
  letter-spacing: 0.2em;
  padding-bottom: 5%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .closing_box .closing_ttl {
    font-size: 20px;
    letter-spacing: 0.1em;
    padding-bottom: 10%;
  }
}
#special03 .contents_area .closing_box .closing_txt {
  text-align: center;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .closing_box .closing_txt {
    text-align: left;
  }
}
#special03 .contents_area .closing_box .closing_btn_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 5%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .closing_box .closing_btn_wrap {
    padding-top: 10%;
  }
}
#special03 .contents_area .closing_box .closing_btn_wrap .closing_btn {
  width: 50%;
  border: #0762D3 1px solid;
  text-align: center;
  color: #0762D3;
  padding: 0.5%;
}
@media screen and (max-width: 767px) {
  #special03 .contents_area .closing_box .closing_btn_wrap .closing_btn {
    width: 100%;
    padding: 2%;
  }
}
#special03 .voice_box {
  background: linear-gradient(90deg, rgb(205, 230, 245) 0%, rgb(147, 204, 232) 100%);
  padding: 5% 5%;
  font-size: clamp(11px, 1.5vw, 25px);
  font-weight: 500;
  line-height: 1.8em;
}
@media screen and (max-width: 767px) {
  #special03 .voice_box {
    padding: 10% 5%;
    font-size: 16px;
    line-height: 1.7em;
  }
}
#special03 .voice_box .voice_ttl {
  text-align: center;
  color: #0762D3;
  font-size: clamp(20px, 2.5vw, 50px);
  font-weight: 700;
  line-height: 1.5em;
  letter-spacing: 0.2em;
  padding-bottom: 3%;
}
@media screen and (max-width: 767px) {
  #special03 .voice_box .voice_ttl {
    font-size: 20px;
    letter-spacing: 0.1em;
    padding-bottom: 10%;
  }
}
#special03 .voice_box .voice_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: stretch;
  gap: 3%;
}
@media screen and (max-width: 767px) {
  #special03 .voice_box .voice_grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
#special03 .voice_box .voice_grid .voice_unit {
  background-color: #fff;
  border-radius: 20px;
  padding: 5%;
}
#special03 .voice_box .voice_grid .voice_unit .voice_visual {
  padding: 3% 5% 0 5%;
}
#special03 .voice_box .voice_grid .voice_unit .voice_visual img {
  width: 100%;
}
#special03 .voice_box .voice_grid .voice_unit .voice_txt {
  padding-top: 10%;
}/*# sourceMappingURL=special03.css.map */