@charset "UTF-8";
/* common */
article {
  position: relative;
  z-index: 1;
  width: 100%;
  margin: 0 auto; }

.screen_senction {
  width: 100%;
  position: relative;
  z-index: 1; }

.content_senction {
  margin: 0 auto;
  position: relative;
  z-index: 1; }

ul.col4 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  ul.col4 li {
    max-width: 24%;
    text-align: center; }

ul.col3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  ul.col3 li {
    width: 32%;
    text-align: center; }

@media screen and (max-width: 960px) {
  ul.col2_sp {
    flex-wrap: wrap;
    justify-content: space-between; }
    ul.col2_sp li {
      max-width: 49%;
      margin-bottom: 1.8%;
      flex-basis: calc(50% - 4px);
      text-align: center; } }

/* common */
.top_main {
  background-image: url(../../images/main_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding: 0 0 20px;
  position: relative; }
  .top_main .img1 {
    position: relative; }
  .top_main .bottom_text {
    position: relative;
    text-align: right;
    font-size: 0.8rem;
    line-height: 140%;
    letter-spacing: -0.5px;
    padding: 5px 5% 10px;
    box-sizing: border-box; }
  .top_main .btn {
    text-align: center;
    padding: 0 0;
    margin: 0 auto;
    width: 70%; }

.box01 .content_senction {
  width: 100%;
  background-image: url(../../images/box01_bg_sp.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 100%;
  position: relative;
  padding-bottom: 30px; }
  .box01 .content_senction .title {
    position: relative;
    top: -15px;
    margin: 0 auto;
    text-align: center;
    padding: 0 5%;
    box-sizing: border-box; }
  .box01 .content_senction ul {
    position: relative;
    padding: 0 10%;
    box-sizing: border-box; }
    .box01 .content_senction ul li {
      position: relative;
      background-color: #fff;
      border-radius: 5px;
      box-shadow: 3px 3px 5px 2px rgba(0, 0, 0, 0.15);
      width: 100%;
      margin-bottom: 15px;
      padding: 10px 10px 30px;
      box-sizing: border-box; }
      .box01 .content_senction ul li p {
        background-image: url(../../images/box01_pic02_sp.png);
        background-repeat: repeat-y;
        background-position: left top 5%;
        background-size: 100% auto;
        font-size: 2.9vw;
        font-weight: 700;
        line-height: 190%;
        letter-spacing: -1px; }
      .box01 .content_senction ul li .bottom {
        position: absolute;
        font-size: 1.2rem;
        bottom: 10px;
        right: 10px;
        color: #001381; }

.box02 .content_senction {
  background-image: url(../../images/box02_pic02_sp.png);
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: 100% auto;
  padding-bottom: 40%; }

.box02 .title {
  position: relative;
  margin: 0 auto;
  text-align: center;
  padding-top: 15px;
  padding-bottom: 15px; }

.box02 .text {
  background-image: url(../../images/box02_bg_sp.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  text-align: center;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 20px 5px 30px;
  box-sizing: border-box; }
  .box02 .text p {
    display: inline;
    font-size: 3.0vw;
    font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: 700;
    letter-spacing: -1px;
    line-height: 180%;
    color: #001381;
    font-feature-settings: "palt"; }
    .box02 .text p i {
      font-style: normal;
      font-size: 1.5vw;
      letter-spacing: -2px; }
    .box02 .text p sup {
      font-size: 2.0vw;
      letter-spacing: 0;
      transform: scale(0.2, 0.2); }
    .box02 .text p ruby {
      display: table-cell; }
    .box02 .text p rt {
      font-size: 2.0vw;
      margin-top: -2.4rem;
      display: block;
      transform: scale(0.6, 0.6); }
    .box02 .text p span {
      background: linear-gradient(rgba(255, 242, 160, 0) 74%, #ffff1d 60%, #ffff1d); }
  .box02 .text .ll span {
    font-size: 3.8vw;
    letter-spacing: -1px;
    padding-top: 5px; }

.box02 .text_bottom {
  padding-left: 10px;
  padding-top: 5px;
  font-size: 1.0rem; }

.box03 {
  background-color: #fafafa;
  position: relative; }
  .box03 .title {
    position: relative;
    z-index: 2;
    padding-bottom: 10px; }

.box04_top {
  background-image: url(../../images/box04_bg_top_sp.png);
  background-repeat: repeat-x;
  background-position: bottom center;
  background-size: 100% auto;
  background-color: #fafafa;
  position: relative; }
  .box04_top .title {
    padding-bottom: 10px; }
  .box04_top .img ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }
    .box04_top .img ul li {
      width: 43%; }

.box04 {
  background-image: url(../../images/box04_bg_sp.png);
  background-repeat: repeat;
  background-position: top center;
  background-size: 100% auto;
  position: relative;
  padding: 0 0 30px; }
  .box04 .content_senction {
    padding: 20px 11% 0;
    box-sizing: border-box; }
  .box04 .box {
    position: relative;
    background-color: #fff;
    box-shadow: 3px 3px 5px 2px rgba(0, 0, 0, 0.15);
    width: 100%;
    padding: 0 0 20px;
    box-sizing: border-box; }
    .box04 .box .cnt {
      padding: 0 20px;
      box-sizing: border-box;
      position: relative; }
    .box04 .box .text_s {
      font-size: 1.0rem;
      letter-spacing: -0.5px; }
    .box04 .box .point1 {
      position: relative;
      top: -5px; }
    .box04 .box .point4_text {
      position: relative; }

.box05 {
  background-color: #fdfdfd;
  background-image: url(../../images/box05_bg_sp.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%; }
  .box05 .content_senction {
    padding: 30px 10% 30px;
    box-sizing: border-box; }
    .box05 .content_senction .box {
      border: 1px solid #001381; }
      .box05 .content_senction .box h2 {
        padding: 10px 0 26px;
        width: 100%; }
        .box05 .content_senction .box h2 img {
          width: 100%;
          height: auto; }
      .box05 .content_senction .box ul.img_list {
        box-sizing: border-box;
        width: 100%; }
        .box05 .content_senction .box ul.img_list li {
          position: relative;
          width: 100%;
          text-align: center; }
          .box05 .content_senction .box ul.img_list li .img {
            position: relative;
            width: 60%;
            margin: 0 auto;
            text-align: center; }
          .box05 .content_senction .box ul.img_list li .step {
            position: absolute;
            left: -30px;
            top: -85px;
            width: 110px; }
          .box05 .content_senction .box ul.img_list li .arrow {
            padding-bottom: 10px; }
          .box05 .content_senction .box ul.img_list li p {
            color: #001381;
            font-size: 1.2rem;
            font-weight: 700;
            letter-spacing: -1.5px; }
          .box05 .content_senction .box ul.img_list li .bottom_text {
            font-size: 0.8rem;
            line-height: 150%;
            letter-spacing: -0.5px;
            color: #000;
            text-align: left;
            padding: 10px 5px 10px 20px;
            box-sizing: border-box; }

.box06 {
  padding: 20px 0 10px; }
  .box06 .content_senction {
    padding: 0 10%;
    box-sizing: border-box; }
  .box06 h2 {
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: -1.5px;
    color: #001381;
    font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    padding-bottom: 20px; }
  .box06 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0 auto; }
    .box06 ul li {
      width: 47%;
      border: 1px solid #001381;
      padding: 0;
      margin-bottom: 15px;
      box-shadow: 3px 3px 0px 1px #d5d5d5; }
      .box06 ul li a:hover {
        text-decoration: none; }
      .box06 ul li .top {
        background-color: #001381;
        color: #fff;
        padding: 3px 3px;
        box-sizing: border-box;
        font-weight: 700;
        font-size: 1.0rem;
        letter-spacing: -1px; }
        .box06 ul li .top span {
          background-color: #fff;
          color: #001381;
          font-size: 1.0rem;
          padding: 1px 5px;
          margin-right: 4px;
          border-radius: 2px; }
      .box06 ul li .top_s {
        display: flex;
        justify-content: flex-start;
        flex-wrap: nowrap; }
        .box06 ul li .top_s i {
          font-style: normal; }
        .box06 ul li .top_s span {
          height: 14px;
          word-break: keep-all; }
      .box06 ul li .subtitle {
        text-align: center;
        font-weight: 700;
        font-size: 1.0rem;
        letter-spacing: -1px;
        border-bottom: 1px solid #001381;
        padding: 5px 0; }
      .box06 ul li .img {
        text-align: center;
        padding: 5px 0 0; }
        .box06 ul li .img img {
          height: 85px;
          width: auto; }
      .box06 ul li .name {
        padding: 10px 5px 10px;
        box-sizing: border-box;
        font-weight: 700;
        font-size: 1.0rem;
        letter-spacing: -2px;
        text-align: center; }
        .box06 ul li .name span {
          font-size: 1.0rem;
          letter-spacing: -0.5px; }

.box07 {
  background-image: url(../../images/box07_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding: 20px 0 20px; }
  .box07 ul.qa_list {
    padding: 30px 10% 0;
    box-sizing: border-box; }
    .box07 ul.qa_list li {
      width: 100%;
      background-color: #fff;
      border: 1px solid #001381;
      padding: 0;
      line-height: 150%;
      letter-spacing: -1.5px;
      font-size: 1.1rem;
      font-weight: 700; }
      .box07 ul.qa_list li .q {
        position: relative;
        background-image: url(../../images/box07_pic02.png);
        background-repeat: no-repeat;
        background-position: left 20px top 15px;
        background-size: 25px auto;
        padding: 10px 10px 10px 60px;
        box-sizing: border-box;
        color: #001381; }
        .box07 ul.qa_list li .q::after {
          content: "";
          position: absolute;
          left: 0;
          right: 0;
          bottom: 0;
          margin: 0 auto;
          width: 95%;
          height: 1px;
          margin: auto;
          background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 5px);
          background-size: 7px 1px;
          background-repeat: repeat-x; }
      .box07 ul.qa_list li .a {
        background-image: url(../../images/box07_pic03.png);
        background-repeat: no-repeat;
        background-position: left 15px top 15px;
        background-size: 25px auto;
        padding: 10px 10px 15px 60px;
        box-sizing: border-box; }
        .box07 ul.qa_list li .a span {
          font-size: 1.3rem;
          color: #656565; }

/* footer */
footer {
  width: 100%;
  position: relative;
  z-index: 1;
  margin: 0 auto;
  padding: 0 0; }
  footer .pagetop_wrap {
    width: 100%;
    height: 180px;
    position: relative; }
    footer .pagetop_wrap .content_senction .bnr {
      text-align: center;
      width: 295px;
      margin: 0 auto;
      padding-top: 22px; }
    footer .pagetop_wrap .content_senction .pagetop {
      position: absolute;
      right: 0;
      left: 0;
      top: 130px;
      margin: 0 auto;
      text-align: center; }
      footer .pagetop_wrap .content_senction .pagetop a {
        border: 10px;
        background-image: url(../../images/footer_pic01.png);
        background-repeat: no-repeat;
        background-position: left 5px top 4px;
        background-size: 32px;
        background-color: #001381;
        width: 185px;
        border-radius: 25px;
        color: #fff;
        font-size: 1.7rem;
        letter-spacing: -2px;
        padding: 10px 20px 10px 45px;
        text-align: right; }
  footer .footer_wrap {
    width: 100%;
    background-color: #001381; }
    footer .footer_wrap .content_senction {
      padding: 8px 5px;
      box-sizing: border-box; }
    footer .footer_wrap .footer_left {
      display: none; }
    footer .footer_wrap .footer_right {
      text-align: center; }
      footer .footer_wrap .footer_right .copy {
        color: #fff;
        font-size: 1.0rem;
        letter-spacing: -1px; }

/* footer */
/* inline */
.inline_link_box {
  width: 100%;
  margin: 0 auto;
  padding: 30px;
  text-align: center; }
  .inline_link_box a {
    margin-bottom: 30px; }
    .inline_link_box a img {
      width: 250px; }
  .inline_link_box a:last-child {
    margin-bottom: 0; }
  .inline_link_box input {
    width: 250px; }

/* inline */
