@charset "UTF-8";
/* --------------------------------------------------------------
   共通
-------------------------------------------------------------- */
body {
  min-width: 11.6rem;
  font-size: 0.2rem;
  color: #222;
}

a {
  color: #000;
}

.wrapper {
  overflow: hidden;
}

.mv {
  padding: 0.8rem 0 0.83rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-image: url(../images/mv/bg.jpg);
}

.mv .container {
  width: 11.9rem;
  margin: 0 auto;
}

.mv .tit {
  margin-bottom: 0.24rem;
}

.mv .tit img {
  width: 5.94rem;
}

.mv .txt {
  margin-left: -0.08rem;
}

.mv .txt img {
  width: 6.195rem;
}

.cta {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-image: url(../images/cta/bg.jpg);
}

.cta .container {
  width: 10rem;
  margin: 0 auto;
  padding: 0.9rem 0 0.5rem;
  position: relative;
}

.cta .container::before {
  content: "";
  width: 2.75rem;
  height: 3.41rem;
  position: absolute;
  bottom: 0;
  left: 0.2rem;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-image: url(../images/cta/img.png);
}

.cta .cat {
  position: absolute;
  top: -0.21rem;
  left: calc(47% - 1.2rem);
}

.cta .cat img {
  width: 2.4rem;
}

.cta .txt,
.cta .btn {
  text-align: right;
}

.cta .txt {
  margin: 0 0.18rem 0.27rem 0;
}

.cta .txt img {
  width: 6.135rem;
}

.cta .btn img {
  width: 6.64rem;
}

.sec01 .content01 {
  padding: 0.68rem 0 0.9rem;
  background-color: #f7f7f7;
}

.sec01 .content01 .tit {
  padding: 0.7rem 0 0.38rem;
  margin-bottom: 0.43rem;
  font-size: 0.32rem;
  position: relative;
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
}

.sec01 .content01 .tit::before, .sec01 .content01 .tit::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
}

.sec01 .content01 .tit::before {
  width: 0.4rem;
  height: 0.4rem;
  top: 0;
  left: calc(50% - 0.2rem);
  background-size: 100% 100%;
  background-image: url(../images/sec01/content01_tit_icon.png);
}

.sec01 .content01 .tit::after {
  width: 1rem;
  height: 0.05rem;
  bottom: 0;
  left: calc(50% - 0.5rem);
  background-color: #37c8e7;
}

.sec01 .content01 .txt {
  margin-bottom: 0.3rem;
  text-align: center;
  line-height: 1.75;
}

.sec01 .content01 .txt .strong {
  font-weight: 700;
}

.sec01 .content01 .lists_wrap {
  width: 11.9rem;
  margin: 0 auto;
}

.sec01 .content01 .list_tit {
  width: 4.12rem;
  margin: 0 auto;
  line-height: 0.6rem;
  text-align: center;
  border-radius: 10rem;
  font-size: 0.24rem;
  font-weight: 900;
  position: relative;
  z-index: 1;
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  background-color: #37c8e7;
  text-shadow: 0 0.03rem 0.02rem rgba(0, 0, 0, 0.3);
}

.sec01 .content01 .lists {
  padding: 0.55rem 0 0.2rem;
  margin: -0.36rem 0 0.45rem;
  border-radius: 0.1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border: 0.05rem solid #37c8e7;
  background-color: #fff;
}

.sec01 .content01 .lists li {
  padding: 0.2rem 0;
  width: 2.7rem;
  text-align: center;
}

.sec01 .content01 .lists li:first-of-type {
  width: 3.2rem;
}

.sec01 .content01 .lists li:last-of-type {
  width: 3.2rem;
}

.sec01 .content01 .lists li:not(:last-of-type) {
  border-right: 1px solid #ccc;
}

.sec01 .content01 .lists .img img {
  width: 0.975rem;
}

.sec01 .content01 .lists .stit {
  margin: 0.25rem 0 0.17rem;
  font-size: 0.24rem;
  font-weight: 900;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.sec01 .content01 .lists .desc {
  line-height: 1.75;
}

.sec01 .content01 .after_txt {
  text-align: center;
  line-height: 1.53;
  font-size: 0.28rem;
  font-weight: 700;
}

.sec01 .content01 .after_txt .strong {
  font-size: 0.32rem;
  font-weight: 700;
  color: #17b5e7;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.sec01 .content02 {
  padding: 1.11rem 0 0.55rem;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(../images/sec01/content02_bg.jpg);
}

.sec01 .content02::before {
  content: "";
  width: 3.1rem;
  height: 3.64rem;
  position: absolute;
  bottom: 0;
  right: 2.5rem;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-image: url(../images/sec01/content02_img.png);
}

.sec01 .content02 .cat {
  position: absolute;
  top: -0.62rem;
  left: calc(50% - 0.635rem);
}

.sec01 .content02 .cat img {
  width: 1.27rem;
}

.sec01 .content02 .txt {
  margin-bottom: 0.54rem;
  text-align: center;
  font-size: 0.28rem;
  font-weight: 900;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.sec01 .content02 .txt02 {
  text-align: center;
  margin-left: -2.9rem;
}

.sec01 .content02 .txt02 img {
  width: 7.03rem;
}

.sec01 .content03 {
  padding: 1rem 0 0.99rem;
  background-color: #37c8e7;
}

.sec01 .content03 .container {
  width: 10.9rem;
  margin: 0 auto;
}

.sec01 .content03 .box {
  border-radius: 0.1rem;
  background-color: #fff;
  -webkit-box-shadow: 0 0.03rem 0.0378rem rgba(0, 0, 0, 0.2);
          box-shadow: 0 0.03rem 0.0378rem rgba(0, 0, 0, 0.2);
}

.sec01 .content03 .box_tit {
  font-size: 0.32rem;
  font-weight: 900;
  line-height: 1.5;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.sec01 .content03 .box_tit .strong {
  color: #37c8e7;
}

.sec01 .content03 .box_desc {
  font-weight: 500;
  line-height: 1.75;
}

.sec01 .content03 .box_cat {
  margin: 0.38rem 0 0.24rem;
  text-align: center;
}

.sec01 .content03 .box_cat img {
  width: 5.81rem;
}

.sec01 .content03 .box01 {
  padding: 0.4rem 0.49rem 0.38rem;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.sec01 .content03 .box01::before {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  position: absolute;
  top: -0.4rem;
  left: calc(50% - 0.4rem);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-image: url(../images/sec01/content03_icon.png);
}

.sec01 .content03 .box01 .box_txt {
  width: 5rem;
}

.sec01 .content03 .box01 .box_img {
  width: 4.5rem;
}

.sec01 .content03 .box01 .box_desc {
  margin-top: 0.1rem;
}

.sec01 .content03 .box02 {
  padding: 0.34rem 0.5rem;
  margin-bottom: 0.58rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.sec01 .content03 .box02 .box_txt {
  width: 4.38rem;
}

.sec01 .content03 .box02 .box_img {
  width: 5.19rem;
}

.sec01 .content03 .box02 .box_desc {
  margin-top: 0.1rem;
}

.sec01 .content03 .box03 {
  padding: 0.4rem 0.5rem 0.37rem;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.sec01 .content03 .box03 .box_desc {
  margin-top: 0.2rem;
}

.sec01 .content03 .box03 .box_img_wrap {
  margin-top: 0.28rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.sec01 .content03 .box03 .box_img_wrap img {
  width: 4.82rem;
}

.sec01 .content04 {
  width: 9.9rem;
  margin: 0 auto;
  padding: 0.59rem 0 0.8rem;
  position: relative;
}

.sec01 .content04 .cat {
  position: absolute;
  top: -0.6rem;
  left: calc(50% - 0.6rem);
}

.sec01 .content04 .cat img {
  width: 1.2rem;
}

.sec01 .content04 .tit {
  margin-bottom: 0.4rem;
  text-align: center;
  font-size: 0.35rem;
  font-weight: 900;
  line-height: 1.5;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.sec01 .content04 .tit .strong {
  color: #37c8e7;
}

.sec01 .content04 .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-flow: row-reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
}

.sec01 .content04 .txt {
  width: 4.68rem;
  font-weight: 500;
  line-height: 1.75;
}

.sec01 .content04 .txt .strong {
  font-weight: 700;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #afe9f5));
  background: -webkit-linear-gradient(transparent 60%, #afe9f5 60%);
  background: linear-gradient(transparent 60%, #afe9f5 60%);
}

.sec01 .content04 .img {
  width: 5rem;
}

.sec02 {
  padding: 0.8rem 0 1.15rem;
  background-color: #f7f7f7;
}

.sec02 .tit {
  padding: 0.66rem 0 0.34rem;
  margin-bottom: 0.59rem;
  font-size: 0.32rem;
  position: relative;
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
}

.sec02 .tit::before, .sec02 .tit::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
}

.sec02 .tit::before {
  width: 0.4rem;
  height: 0.4rem;
  top: 0;
  left: calc(50% - 0.2rem);
  background-size: 100% 100%;
  background-image: url(../images/sec02/tit_icon.png);
}

.sec02 .tit::after {
  width: 1rem;
  height: 0.05rem;
  bottom: 0;
  left: calc(50% - 0.5rem);
  background-color: #37c8e7;
}

.sec02 .lists {
  width: 11.9rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.sec02 .lists::after {
  content: "";
  display: block;
  width: 3.85rem;
}

.sec02 .lists li {
  width: 3.85rem;
  padding: 0.25rem;
  border: 0.05rem solid #37c8e7;
  border-radius: 0.1rem;
  background-color: #fff;
}

.sec02 .lists .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.sec02 .lists .img {
  width: 1.1rem;
}

.sec02 .lists .img img {
  width: 0.93rem;
}

.sec02 .lists .txt {
  width: calc(100% - 1.1rem);
  padding-top: 0.2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.sec02 .lists .stit {
  margin-top: 0.13rem;
}

.sec02 .lists .cat {
  margin-top: 0.15rem;
  font-size: 0.24rem;
  line-height: 1.5;
  font-weight: 700;
}

.sec02 .lists .desc_wrap {
  margin-top: 0.07rem;
}

.sec02 .lists .desc_wrap .desc {
  line-height: 1.75;
  font-weight: 500;
}

.sec02 .lists .desc_wrap .desc:not(:last-of-type) {
  margin-bottom: 1em;
}

.sec03 {
  padding: 0.77rem 0 0.98rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-image: url(../images/sec03/bg.jpg);
}

.sec03 .container {
  width: 10.9rem;
  margin: 0 auto;
}

.sec03 .tit {
  margin-bottom: 0.68rem;
  text-align: center;
}

.sec03 .tit img {
  width: 8.07rem;
}

.sec03 .txt {
  width: 8rem;
  line-height: 1.75;
  font-family: "Noto Serif JP", serif;
}

.sec03 .txt .strong {
  font-weight: 700;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #fff2ad));
  background: -webkit-linear-gradient(transparent 60%, #fff2ad 60%);
  background: linear-gradient(transparent 60%, #fff2ad 60%);
}

.sec04 {
  padding: 0.8rem 0 0.95rem;
  background-color: #f1fdff;
}

.sec04 .tit {
  padding: 0.6rem 0 0.29rem;
  margin-bottom: 0.31rem;
  font-size: 0.32rem;
  position: relative;
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
}

.sec04 .tit::before, .sec04 .tit::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
}

.sec04 .tit::before {
  width: 0.4rem;
  height: 0.4rem;
  top: 0;
  left: calc(50% - 0.2rem);
  background-size: 100% 100%;
  background-image: url(../images/sec04/tit_icon.png);
}

.sec04 .tit::after {
  width: 1rem;
  height: 0.05rem;
  bottom: 0;
  left: calc(50% - 0.5rem);
  background-color: #37c8e7;
}

.sec04 .lists_wrap {
  width: 11.3rem;
  margin-left: 2.15rem;
}

.sec04 .lists {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.3rem 0;
}

.sec04 .lists li {
  width: 3.7rem;
}

.sec04 .lists li:not(:last-of-type) .wrap {
  position: relative;
}

.sec04 .lists li:not(:last-of-type) .wrap::before {
  content: "";
  background-image: -webkit-gradient(linear, left top, right top, from(#37c8e7), color-stop(0.05rem, #37c8e7), color-stop(0.05rem, transparent), color-stop(0.1rem, transparent));
  background-image: -webkit-linear-gradient(left, #37c8e7, #37c8e7 0.05rem, transparent 0.05rem, transparent 0.1rem);
  background-image: linear-gradient(to right, #37c8e7, #37c8e7 0.05rem, transparent 0.05rem, transparent 0.1rem);
  background-size: 0.1rem 1px;
  background-repeat: repeat-x;
  position: absolute;
  top: 50%;
  bottom: 0;
  left: 1rem;
  right: 0;
}

.sec04 .lists .wrap {
  margin-bottom: 0.05rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.sec04 .lists .num {
  width: 0.53rem;
}

.sec04 .lists .num img {
  width: 0.47rem;
}

.sec04 .lists .txt {
  padding-right: 0.1rem;
  font-size: 0.19rem;
  font-weight: 700;
  font-family: "Zen Kaku Gothic New", sans-serif;
  position: relative;
  z-index: 1;
  background-color: #f1fdff;
}

.sec04 .lists .txt span {
  margin-bottom: 0.07rem;
  display: block;
  font-size: 0.125rem;
  color: #37c8e7;
  font-weight: 400;
}

.sec04 .lists .img {
  margin-bottom: 0.1rem;
  text-align: right;
}

.sec04 .lists .img img {
  width: 3.15rem;
}

.sec04 .lists .desc {
  width: 3.15rem;
  margin-left: auto;
  font-weight: 500;
  font-size: 0.16rem;
  line-height: 1.4;
}

.sec05 {
  padding: 0.8rem 0 1rem;
}

.sec05 .tit {
  padding: 0.6rem 0 0.27rem;
  margin-bottom: 0.17rem;
  font-size: 0.32rem;
  position: relative;
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
}

.sec05 .tit::before, .sec05 .tit::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
}

.sec05 .tit::before {
  width: 0.4rem;
  height: 0.4rem;
  top: 0;
  left: calc(50% - 0.2rem);
  background-size: 100% 100%;
  background-image: url(../images/sec05/tit_icon.png);
}

.sec05 .tit::after {
  width: 1rem;
  height: 0.025rem;
  bottom: 0;
  left: calc(50% - 0.5rem);
  background-color: #37c8e7;
}

.sec05 .ac {
  width: 8.9rem;
  margin: 0 auto;
  font-size: 0.16rem;
}

.sec05 .ac .ac_parent {
  padding: 0.12rem 0;
  color: #fff;
  background-color: #37c8e7;
  cursor: pointer;
  position: relative;
  border-radius: 0.05rem 0.05rem 0 0;
}

.sec05 .ac .ac_parent::before, .sec05 .ac .ac_parent::after {
  content: "";
  position: absolute;
  z-index: 5;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: #0e2e46;
}

.sec05 .ac .ac_parent::before {
  top: 50%;
  right: 0.155rem;
  width: 0.11rem;
  height: 1px;
}

.sec05 .ac .ac_parent::after {
  right: 0.202rem;
  width: 1px;
  height: 0.11rem;
  -webkit-transition: height 0.4s;
  transition: height 0.4s;
}

.sec05 .ac .ac_parent.open::after {
  height: 0;
}

.sec05 .ac .ac_parent:not(:first-of-type) {
  margin-top: 0.14rem;
}

.sec05 .ac .ac_parent span {
  padding: 0 0.47rem;
  display: block;
  position: relative;
}

.sec05 .ac .ac_parent span::before, .sec05 .ac .ac_parent span::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
}

.sec05 .ac .ac_parent span::before {
  width: 0.235rem;
  height: 0.225rem;
  top: calc(50% - 0.1125rem);
  left: 0.15rem;
  background-size: 100% 100%;
  background-image: url(../images/sec05/q.png);
}

.sec05 .ac .ac_parent span::after {
  width: 0.185rem;
  height: 0.185rem;
  border-radius: 50%;
  top: calc(50% - 0.0925rem);
  right: 0.12rem;
  background-color: #fff;
}

.sec05 .ac .ac_child {
  padding: 0.13rem 0.12rem;
  display: none;
  font-size: 0.125rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

.sec06 {
  padding: 0.8rem 0 1.3rem;
  position: relative;
}

.sec06::before, .sec06::after {
  content: "";
  width: 4.96rem;
  height: 3.13rem;
  position: absolute;
  z-index: -1;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-image: url(../images/sec06/bg_deco.jpg);
}

.sec06::before {
  top: 0;
  left: 0;
}

.sec06::after {
  bottom: 0;
  right: 0;
  -webkit-transform: scale(-1, -1);
          transform: scale(-1, -1);
}

.sec06 .tit {
  padding: 0.6rem 0 0.24rem;
  margin-bottom: 0.37rem;
  font-size: 0.24rem;
  position: relative;
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
}

.sec06 .tit::before, .sec06 .tit::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
}

.sec06 .tit::before {
  width: 0.4rem;
  height: 0.4rem;
  top: 0;
  left: calc(50% - 0.2rem);
  background-size: 100% 100%;
  background-image: url(../images/sec06/tit_icon.png);
}

.sec06 .tit::after {
  width: 0.5rem;
  height: 0.025rem;
  bottom: 0;
  left: calc(50% - 0.25rem);
  background-color: #37c8e7;
}

.sec06 .lists {
  width: 8.9rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.sec06 .lists dt,
.sec06 .lists dd {
  padding: 0.21rem 0;
  font-size: 0.18rem;
  line-height: 1.5;
}

.sec06 .lists dt:not(:last-of-type),
.sec06 .lists dd:not(:last-of-type) {
  border-bottom: 1px solid #bcbcbc;
}

.sec06 .lists dt {
  width: 2.85rem;
  font-weight: 700;
}

.sec06 .lists dd {
  width: calc(100% - 2.85rem);
  font-weight: 500;
}

.cmn_footer {
  padding: 0.4rem 0 0.3rem;
  background-color: #222;
  text-align: center;
}

.cmn_footer .txt {
  margin-bottom: 0.05rem;
}

.cmn_footer .txt img {
  width: 2.265rem;
}

.cmn_footer small img {
  width: 1.055rem;
}
/*# sourceMappingURL=style.css.map */