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

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

.content_senction {
  max-width: 950px;
  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 28px;
  position: relative; }
  .top_main .img1 {
    position: relative;
    top: 27px; }
  .top_main .img2 {
    position: relative;
    top: -27px; }
  .top_main .bottom_text {
    position: relative;
    top: -18px;
    text-align: right;
    font-size: 1.05rem;
    line-height: 140%;
    letter-spacing: -0.5px;
    padding: 0 70px;
    box-sizing: border-box; }
  .top_main .btn {
    margin: 0 auto;
    text-align: center;
    padding: 15px 0 0; }

.box01 {
  height: 450px;
  background-color: #e6e6e6; }
  .box01 .content_senction {
    height: 450px;
    width: 100%;
    background-image: url(../../images/box01_bg.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative; }
    .box01 .content_senction .title {
      position: relative;
      top: -30px;
      margin: 0 auto;
      text-align: center; }
    .box01 .content_senction ul {
      position: relative;
      top: -5px;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      padding: 0 74px;
      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: 30%;
        padding: 10px 15px 30px;
        box-sizing: border-box; }
        .box01 .content_senction ul li p {
          background-image: url(../../images/box01_pic02.png);
          background-repeat: repeat-y;
          background-position: left top 5px;
          font-size: 1.5rem;
          font-weight: 700;
          line-height: 180%;
          letter-spacing: -2px; }
        .box01 .content_senction ul li .bottom {
          position: absolute;
          bottom: 10px;
          right: 10px;
          color: #001381; }

.box02 {
  background-image: url(../../images/box02_bg.png);
  background-repeat: repeat-x;
  background-position: top center;
  height: 600px; }
  .box02 .content_senction {
    background-image: url(../../images/box02_pic02.png);
    background-repeat: no-repeat;
    background-position: bottom 28px center;
    height: 600px; }
  .box02 .title {
    position: relative;
    margin: 0 auto;
    text-align: center;
    padding-top: 52px;
    padding-bottom: 52px; }
  .box02 .text {
    background-color: rgba(255, 255, 255, 0.8);
    text-align: center;
    width: 750px;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 20px 20px 30px;
    box-sizing: border-box; }
    .box02 .text p {
      color: #001381;
      font-size: 2.1rem;
      font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-weight: 700;
      letter-spacing: -2px;
      line-height: 200%;
      font-feature-settings: "palt"; }
      .box02 .text p i {
        font-style: normal; }
      .box02 .text p sup {
        letter-spacing: 0; }
      .box02 .text p span {
        background: linear-gradient(rgba(255, 242, 160, 0) 74%, #ffff1d 60%, #ffff1d); }
    .box02 .text .ll span {
      font-size: 2.7rem;
      letter-spacing: -1px; }
  .box02 .text_bottom {
    padding-left: 100px;
    padding-top: 15px;
    font-size: 1.0rem; }

.box03 {
  background-image: url(../../images/box03_bg.png);
  background-repeat: repeat-x;
  background-position: top center;
  background-color: #fafafa;
  position: relative; }
  .box03 .bg02 {
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    width: 50%;
    height: 322px;
    background-image: url(../../images/box03_bg02.png);
    background-repeat: repeat-x;
    background-position: top center; }
  .box03 .title {
    position: relative;
    z-index: 2;
    padding-top: 3px;
    padding-bottom: 25px; }
    .box03 .title img {
      width: 935px;
      height: auto; }

.box04_top {
  background-image: url(../../images/box04_bg_top.png);
  background-repeat: repeat-x;
  background-position: bottom center;
  position: relative; }
  .box04_top .title {
    padding-bottom: 10px; }
  .box04_top .img ul {
    display: flex;
    justify-content: center;
    flex-wrap: nowrap; }

.box04 {
  background-image: url(../../images/box04_bg.png);
  background-repeat: repeat;
  background-position: top center;
  position: relative;
  padding: 0 0 50px; }
  .box04 .content_senction {
    padding: 45px 60px 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: 0px;
    box-sizing: border-box; }
    .box04 .box .cnt {
      padding: 0 35px;
      box-sizing: border-box;
      position: relative; }
    .box04 .box .text_s {
      font-size: 1.2rem;
      letter-spacing: -0.5px; }
    .box04 .box .point1 {
      position: relative;
      top: -12px; }
    .box04 .box .point4_text {
      position: relative;
      top: -40px; }

.box05 .content_senction {
  padding: 50px 60px 50px;
  box-sizing: border-box; }
  .box05 .content_senction .box {
    border: 2px solid #001381; }
    .box05 .content_senction .box h2 {
      padding: 17px 0 26px;
      width: 100%; }
      .box05 .content_senction .box h2 img {
        width: 100%;
        height: auto; }
    .box05 .content_senction .box ul.img_list, .box05 .content_senction .box ul.text_list {
      padding: 0px 35px 30px;
      box-sizing: border-box;
      display: flex;
      justify-content: space-between;
      flex-wrap: nowrap;
      width: 100%; }
      .box05 .content_senction .box ul.img_list li, .box05 .content_senction .box ul.text_list li {
        position: relative;
        width: 50%; }
        .box05 .content_senction .box ul.img_list li .step, .box05 .content_senction .box ul.text_list li .step {
          position: absolute;
          left: -23px;
          top: -60px; }
        .box05 .content_senction .box ul.img_list li .arrow, .box05 .content_senction .box ul.text_list li .arrow {
          position: absolute;
          right: -15px;
          top: 42%; }
        .box05 .content_senction .box ul.img_list li:nth-child(2), .box05 .content_senction .box ul.text_list li:nth-child(2) {
          text-align: right; }
    .box05 .content_senction .box ul.text_list li {
      background-image: url(../../images/box05_pic06.png);
      background-repeat: no-repeat;
      background-position: left top 8px;
      font-size: 2.2rem;
      font-weight: 700;
      color: #001381;
      line-height: 150%;
      letter-spacing: -2px;
      padding-left: 38px;
      box-sizing: border-box; }
      .box05 .content_senction .box ul.text_list li:nth-child(2) {
        background-image: url(../../images/box05_pic07.png);
        text-align: left;
        padding-left: 45px;
        letter-spacing: -3px; }
    .box05 .content_senction .box .bottom_text {
      padding-left: 35px;
      padding-bottom: 24px;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 160%; }

.box06 {
  padding: 50px 0 30px; }
  .box06 .content_senction {
    padding: 0 60px;
    box-sizing: border-box; }
  .box06 h2 {
    text-align: center;
    font-size: 3.5rem;
    font-weight: 700;
    letter-spacing: -3px;
    color: #001381;
    font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    padding-bottom: 40px; }
  .box06 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0 auto; }
    .box06 ul li {
      width: 31.5%;
      border: 1px solid #001381;
      padding: 0;
      margin-bottom: 20px;
      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: 7px 6px;
        box-sizing: border-box;
        font-weight: 700;
        font-size: 1.3rem;
        letter-spacing: -1px; }
        .box06 ul li .top span {
          background-color: #fff;
          color: #001381;
          padding: 1px 10px;
          margin-right: 10px;
          border-radius: 2px; }
      .box06 ul li .top_s {
        font-size: 1.2rem;
        letter-spacing: -2px; }
        .box06 ul li .top_s span {
          margin-right: 5px;
          padding: 1px 6px; }
      .box06 ul li .subtitle {
        text-align: center;
        font-weight: 700;
        font-size: 1.5rem;
        letter-spacing: -1px;
        border-bottom: 1px solid #001381;
        padding: 5px 0; }
      .box06 ul li .img {
        text-align: center;
        padding: 10px 0 0; }
      .box06 ul li .name {
        padding: 10px 15px 10px;
        box-sizing: border-box;
        font-weight: 700;
        font-size: 1.4rem;
        letter-spacing: -2px; }
        .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: 40px 0 40px; }
  .box07 ul.qa_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 30px 100px 0;
    box-sizing: border-box; }
    .box07 ul.qa_list li {
      width: 49%;
      background-color: #fff;
      border: 1px solid #001381;
      padding: 0;
      margin-bottom: 20px;
      line-height: 150%;
      letter-spacing: -1.5px;
      font-size: 1.6rem;
      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 15px top 15px;
        padding: 10px 10px 10px 50px;
        box-sizing: border-box;
        color: #001381;
        min-height: 92px; }
        .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: 10px 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 10px top 15px;
        padding: 20px 10px 15px 50px;
        box-sizing: border-box; }
        .box07 ul.qa_list li .a span {
          font-size: 1.3rem;
          color: #656565; }

/* footer */
footer {
  width: 100%;
  min-width: 950px;
  position: relative;
  z-index: 1;
  margin: 0 auto;
  padding: 0 0; }
  footer .pagetop_wrap .content_senction {
    box-sizing: border-box;
    height: 130px;
    position: static; }
    footer .pagetop_wrap .content_senction .pagetop {
      position: absolute;
      right: 50px;
      top: 60px; }
      footer .pagetop_wrap .content_senction .pagetop a {
        background-image: url(../../images/footer_pic01.png);
        background-repeat: no-repeat;
        background-position: left 7px top 7px;
        background-color: #001381;
        width: 185px;
        border-radius: 25px;
        color: #fff;
        font-size: 2.2rem;
        letter-spacing: -2px;
        padding: 10px 20px 10px 50px;
        text-align: right; }
  footer .footer_wrap {
    width: 100%;
    background-color: #001381; }
    footer .footer_wrap .content_senction {
      display: flex;
      justify-content: space-between;
      padding: 16px 40px;
      box-sizing: border-box; }
    footer .footer_wrap .footer_left {
      color: #fff;
      letter-spacing: -1px; }
      footer .footer_wrap .footer_left a {
        color: #fff;
        font-size: 1.2rem; }
    footer .footer_wrap .footer_right {
      text-align: right; }
      footer .footer_wrap .footer_right .copy {
        color: #fff;
        font-size: 1.3rem; }

/* footer */
/* inline */
.inline_link_box {
  width: 550px;
  margin: 0 auto;
  padding: 30px;
  text-align: center; }
  .inline_link_box a {
    margin-bottom: 30px; }
    .inline_link_box a img {
      width: 486px; }
  .inline_link_box a:last-child {
    margin-bottom: 0; }
  .inline_link_box a:hover {
    opacity: 0.7;
    -moz-opacity: 0.7;
    filter: alpha(opacity=70); }
  .inline_link_box input {
    transition: all 0.15s ease-in 0s; }
  .inline_link_box input:hover {
    opacity: 0.7;
    -moz-opacity: 0.7;
    filter: alpha(opacity=70); }

/* inline */
