@charset "UTF-8";
/* table of contents -----------------------------
1.リセット
------------------------------------------------ */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box; }

body {
  line-height: 1; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

nav ul {
  list-style: none; }

ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

/* table of contents -----------------------------
1.マージンとパディングの指定
------------------------------------------------ */
/* table of content -----------------
1.黒
2.白
3.赤
4.オレンジ
5.灰色
-----------------------------------*/
/* table of contents -----------------------------
1.背景画像パス
2.フォント指定
3.ヒラギノ明朝指定
4.画像
------------------------------------------------ */
html {
  font-size: 62.5%;
  background-color: #f0eced; }

body {
  -webkit-text-size-adjust: 100%;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  line-height: 1.4;
  font-size: 1.6rem;
  width: 1000px;
  margin: 0 auto; }

input, textarea, select {
  -webkit-text-size-adjust: 100%;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  line-height: 1.4;
  font-size: 1.8rem;
  box-sizing: border-box; }

.text_bold {
  font-weight: bold; }

.text_red {
  color:#c41a75; }

.errorMsg{
    color:#FF0000;
}

.mincho {
  font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; }

.img {
  display: block; }

.img_center {
  margin: 0 auto; }

.img_cover {
  object-fit: cover; }

/* table of content -----------------
1.display table
2.display flex
3.position absolute
-----------------------------------*/
/* table of contents -----------------------------
1.ボタン
2.ページトップへボタン
------------------------------------------------ */
.btn {
  background: #fff url("../img/btn.png") no-repeat center;
  background-size: 830px 144px;
  width: 830px;
  height: 144px;
  color: #fff;
  margin-left: auto;
  margin-right: auto;
  cursor: pointer;
  transition: all 0.2s ease; }
  .btn .img {
    width: 359px;
    margin: 15px 0 0 7px;
    display: inline-block; }
  .btn a {color:#FFF;text-decoration:none;}
  .btn:hover {
    opacity: 0.8; }
  .btn_title {
    font-size: 5rem;
    padding: 10px 0 0 125px;
    letter-spacing: -10px; }
    .btn_title .mincho {
      font-size: 3.6rem;
      letter-spacing: 1px;
      font-weight: normal;
      display: inline-block;
      padding-left: 20px; }
  .btn_text {
    font-size: 3.6rem;
    padding-left: 356px;
    margin-top: -4px; }

.pagetop_box {
  position: fixed;
  right: 20px;
  bottom: 20px; }
  .pagetop_box a {
    display: block;
    transition: all 0.2s ease-in-out; }
    .pagetop_box a:hover {
      opacity: 0.8; }
    .pagetop_box a .img {
      width: 145px;
      height: 147px; }

/* table of contents -----------------------------
1.ヘッダー
------------------------------------------------ */
.header {
  height: 580px;
  background: url("../img/img_header.jpg") no-repeat left top;
  background-size: contain;
  color: #fff; }
  .header_inner {
    position: relative; }
  .header:after {
    content: "";
    display: block;
    width: 100%;
    background-color: #c41a75;
    position: absolute;
    top: 0;
    right: 0;
    width: calc(100% - 1000px);
    height: 580px;
    z-index: -1; }
  .header_maintitle {
    padding: 275px 0 2px 494px; }
    .header_maintitle .img {
      width: 447px; }
  .header_subtitle {
    position: absolute;
    top: 227px;
    right: 17px; }
    .header_subtitle .img {
      width: 504px; }
  .header_text {
    padding-left: 478px;
    margin-top: 23px; }
    .header_text .img {
      width: 238px; }
  .header .mincho {
    position: absolute;
    left: 0;
    bottom: -276px;
    font-size: 2.4rem;
    line-height: 2;
    color: #a40b5d;
    background: rgba(222, 214, 217, 0.4);
    border-bottom: 2px solid #c41a75;
    width: 572px;
    padding: 2px 4px 2px 20px;
    z-index: 10; }

/* table of contents -----------------------------
1.共通
2.セクション1
3.セクション2
4.セクション3
5.セクション4
6.セクション5
7.セクション6
8.セクション7
9.セクション8
10.セクション9
------------------------------------------------ */
.sec {
  position: relative;
  background-color: #fff; }

.img_sec3_sec5 {
  width: 471px;
  margin-bottom: 68px; }

.sec1 {
  background: #fff url("../img/img_sec1.jpg") no-repeat right top;
  background-size: contain;
  height: 640px;
  font-size: 2rem;
  text-align: right;
  padding-right: 425px; }
  .sec1_title {
    padding-top: 281px;
    line-height: 2;
    margin-bottom: 8px; }
  .sec1_text {
    line-height: 216%; }
    .sec1_text strong {
      color: #a40b5d; }

.sec2 {
  background: #fff url("../img/img_sec2.png") no-repeat left 0 top 28px;
  background-size: contain;
  height: 830px;
  padding-top: 28px; }
  .sec2_title {
    font-size: 1.8rem;
    color: #a10223;
    line-height: 200%;
    padding-left: 500px;
    margin: 82px 0 -54px; }
  .sec2_text {
    text-align: center;
    color: #fff;
    font-size: 2.4rem;
    line-height: 170%;
    margin-top: 154px; }

.sec3 {
  background: #fff url("../img/img_sec3.png") no-repeat left 34px top 50px;
  background-size: 930px 2593px;
  height: 2758px;
  padding: 278px 65px 156px; }
  .sec3_title {
    position: relative;
    margin-bottom: 90px; }
    .sec3_title .img {
      width: 709px; }
    .sec3_title:before, .sec3_title:after {
      position: absolute;
      left: 50%;
      transform: translate(-50%, 0);
      content: "";
      display: block;
      width: 702px;
      border-bottom: 1px solid #c41a75; }
    .sec3_title:before {
      bottom: -16px; }
    .sec3_title:after {
      bottom: -20px; }
    .sec3_title .small {
      font-size: 6rem; }
  .sec3_subtitle {
    font-size: 2.4rem;
    line-height: 167%;
    text-align: center;
    margin-bottom: 30px; }
  .sec3_box {
    margin-bottom: 60px; }
    .sec3_box_title {
      background: #fff url("../img/img_sec3_title.png") no-repeat center top;
      background-size: contain;
      height: 66px;
      width: 793px;
      margin: 0 auto 18px;
      font-size: 2.4rem;
      text-align: center;
      color: #a40b5d;
      line-height: 66px; }
    .sec3_box .sec3_box_dl {
      position: relative;
      padding-left: 200px; }
      .sec3_box .sec3_box_dl_title {
        color: #a40b5d;
        font-size: 1.8rem;
        margin-bottom: 25px; }
      .sec3_box .sec3_box_dl_content_title {
        position: absolute;
        left: 0;
        top: 0;
        width: 169px;
        height: 169px;
        text-align: center;
        font-size: 1.6rem;
        font-weight: normal; }
        .sec3_box .sec3_box_dl_content_title .mincho {
          color: #fff;
          font-size: 2.4rem;
          display: block;
          line-height: 120%;
          letter-spacing: -1.2px; }
      .sec3_box .sec3_box_dl_content_text {
        line-height: 198%; }
      .sec3_box .sec3_box_dl_content .img {
        position: absolute;
        top: 10px;
        right: -14px;
        width: 209px;
        height: 157px; }
    .sec3_box1 .sec3_box_dl_content_title {
      background: #fff url("../img/img_sec3_h01.png") no-repeat center;
      background-size: contain;
      padding-top: 29px; }
      .sec3_box1 .sec3_box_dl_content_title .mincho {
        margin-top: 8px; }
    .sec3_box2 .sec3_box_dl_content_title {
      background: #fff url("../img/img_sec3_h02.png") no-repeat center;
      background-size: contain;
      padding-top: 19px; }
      .sec3_box2 .sec3_box_dl_content_title .mincho {
        margin-top: -1px; }
    .sec3_box3 .sec3_box_dl_content_title {
      background: #fff url("../img/img_sec3_h03.png") no-repeat center;
      background-size: contain;
      padding-top: 15px; }
      .sec3_box3 .sec3_box_dl_content_title .mincho {
        margin-top: 2px; }
    .sec3_box4 {
      margin-bottom: 48px; }
      .sec3_box4 .sec3_box_dl_content_title {
        background: #fff url("../img/img_sec3_h04.png") no-repeat center;
        background-size: contain;
        padding-top: 18px; }
        .sec3_box4 .sec3_box_dl_content_title .mincho {
          margin-top: 3px; }
          .sec3_box .sec3_box_dl2 {
      position: relative;
      padding-left: 48px; 
      padding-right: 48px;
      padding-bottom:60px;}

.sec4 {
  background-color: #f0cbc3;
  padding: 15px 18px 60px 25px; }
  .sec4 + .btn_wrap {
    width: 100%;
    padding: 24px 0 30px;
    background-color: #fff; }
  .sec4_title {
    width: 552px;
    height: 78px;
    outline: 1px solid #fff;
    border: 6px solid #f0cbc3;
    background-color: #fff;
    margin: 0 auto 44px; }
    .sec4_title .img {
      width: 481px;
      padding: 15px 0; }
  .sec4_box {
    position: relative;
    margin-bottom: 76px;
    padding-bottom: 15px; }
    .sec4_box:last-of-type {
      margin: 0;
      padding: 0; }
      .sec4_box:last-of-type:after {
        display: none; }
    .sec4_box:after {
      position: absolute;
      left: 50%;
      transform: translate(-50%, 0);
      bottom: -10px;
      content: "";
      display: block;
      background: url("../img/img_sec4_border.png") no-repeat center;
      background-size: 867px 9px;
      width: 867px;
      height: 9px; }
    .sec4_box_title, .sec4_box_text {
      padding-left: 272px; }
    .sec4_box_title {
      font-weight: normal;
      font-size: 2rem;
      margin-bottom: 20px; }
    .sec4_box_name {
      text-align: right;
      margin-bottom: 36px;
      padding-right: 23px; }
    .sec4_box_text {
      line-height: 1.8; }
      .sec4_box_text strong {
        color: #c41a75;
        text-decoration: underline; }
      .sec4_box_text:not(:first-of-type) {
        margin-top: 35px; }
    .sec4_box .img {
      position: absolute;
      left: 0;
      top: 10px;
      width: 224px;
      height: 271px;
      box-shadow: 10px 10px #a40b5d; }

.sec5 {
  background: #fff url("../img/img_sec5.png") no-repeat top 20px center;
  background-size: 184px 186px;
  padding-bottom: 525px; }
  .sec5_title, .sec5_text {
    text-align: center; }
  .sec5_title {
    font-size: 4rem;
    position: relative;
    padding-top: 250px;
    letter-spacing: -8px;
    color: #c41a75;
    margin-bottom: 66px; }
    .sec5_title .img {
      width: 348px; }
    .sec5_title:after {
      position: absolute;
      left: 50%;
      transform: translate(-50%, 0);
      content: "";
      display: block;
      background: url("../img/ribbon.png") no-repeat top center;
      background-size: 563px 39px;
      width: 563px;
      height: 39px;
      bottom: -43px; }
    .sec5_title .month {
      font-size: 6rem;
      font-weight: normal;
      display: block;
      margin-top: -15px; }
  .sec5_text {
    font-size: 2.4rem;
    line-height: 174%; }
    .sec5_text strong {
      color: #c41a75; }
  .sec5_list {
    background: #fff url("../img/img_sec5_list.png") no-repeat top center;
    background-size: 982px 441px;
    width: 982px;
    height: 441px;
    margin: 0 auto;
    padding: 38px; }
  .sec5_list2 {
    background: #fff url("../img/img_sec5_list2.png") no-repeat top center;
    background-size: 982px 340px;
    width: 982px;
    height: 340px;
    margin: 0 auto;
    padding: 38px; }
    .sec5_list_item {
      border: 1px solid #aa987d;
      font-size: 2.6rem;
      color: #8B572A;
      background-color: #f7f3f2;
      height: 50px;
      line-height: 50px; }
      .sec5_list_item:not(:last-of-type) {
        margin-bottom: 12px; }
      .sec5_list_item .number {
        background-color: #aa987d;
        color: #fff;
        width: 200px;
        text-align: center;
        font-size: 2.8rem;
        display: inline-block;
        line-height: 48px;
        margin-right: 8px; }
  .sec5 .img_sec5 {
    position: absolute; }
    .sec5 .img_sec5_1 {
      width: 529px;
      height: 353px;
      bottom: 196px;
      left: 10px;
      z-index: 10; }
    .sec5 .img_sec5_2 {
      width: 570px;
      height: 367px;
      bottom: 52px;
      right: 10px;
      z-index: 0; }
.tokusyo .sec5 {padding-bottom:0;}



.sec6 {
  background: #a10223 url("../img/img_sec6.png") no-repeat left top;
  background-size: 901px 1170px;
  color: #fff;
  padding-bottom: 220px; }
  .sec6:after {
    content: "";
    display: block;
    position: absolute;
    right: 14px;
    bottom: 34px;
    background: url("../img/img_sec6_1.png") no-repeat right bottom;
    background-size: 277px 297px;
    width: 277px;
    height: 297px; }
  .sec6_title {
    font-size: 2.8rem;
    font-weight: normal;
    padding: 30px 0 0 310px;
    margin-bottom: 16px; }
  .sec6_text {
    padding-left: 333px;
    line-height: 165%; }
    .sec6_text:not(:first-of-type) {
      margin-top: 30px; }

.sec7 {
  background: #a10223 url("../img/img_sec7.png") no-repeat 38px 150px;
  background-size: 214px 75px;
  color: #fff;
  padding: 16px 0 23px 310px; }
  .sec7_title {
    font-weight: normal;
    margin-bottom: 20px; }
  .sec7_list {
    margin-left: 10px; }
    .sec7_list_item {
      line-height: 163%; }
  .sec7 + .btn_wrap {
    width: 100%;
    padding: 75px 0 80px;
    background-color: #fff; }

.sec8 {
  font-size: 2.4rem;
  padding-bottom: 67px;
  padding: 50px 10px 0;
  position: relative; }
  .sec8_inner {
    background-color: #d6ccd0;
    padding-bottom: 66px; }
  .sec8:before {
    background: url("../img/ribbon.png") no-repeat top center;
    background-size: 563px 39px;
    bottom: 18px; }
  .sec8:before, .sec8_title:before {
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    content: "";
    display: block;
    width: 563px;
    height: 39px; }
  .sec8_title {
    background: #c41a75 url("../img/img_sec8_title.png") no-repeat 10px center;
    background-size: 130px 130px;
    text-align: center;
    color: #fff;
    position: relative;
    padding: 20px 0 24px; }
    .sec8_title img {
      width: 435px;
      margin-left: 40px; }
    .sec8_title:before {
      background: #fff url("../img/ribbon.png") no-repeat top center;
      background-size: 563px 39px;
      top: -50px; }
    .sec8_title_small {
      font-size: 2rem;
      font-weight: normal;
      margin-bottom: -18px;
      display: block; }
    .sec8_title .marufo {
      font-size: 6rem;
      letter-spacing: -13px; }
    .sec8_title_day {
      font-size: 5rem;
      margin-left: -4px; }
  .sec8 .img {
    width: 980px;
    height: auto; }
  .sec8_text_white {
    margin: 21px 27px 0;
    background-color: #c41a75;
    color: #fff;
    padding: 14px 21px 14px 70px;
    line-height: 196%;
    margin-bottom: 41px; }
  .sec8_text_red {
    line-height: 1.3;
    color: #a10223;
    text-align: center; }
    .sec8_text_red:not(:last-of-type) {
      margin-bottom: 25px; }

.sec9 {
  padding: 12px 37px; }
  .sec9_inner {
    border: 1px solid #a40b5d;
    padding: 40px 28px 40px 28px; }
  .sec9_title {
    color: #c41a75;
    text-align: center;
    font-size: 4rem;
    margin-bottom: 20px;
    font-weight: normal; }
    .sec9_title img {
      width: 286px; }
    .sec9_title .mincho {
      padding-left: 12px; }
    .sec9_title_small {
      font-size: 2.4rem;
      display: block;
      text-align: center;
      margin-top: 18px; }
  .sec9_list {
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
    .sec9_list_title {
      width: 238px;
      font-size: 1.8rem;
      margin-bottom: 33px; }
      .sec9_list_title:last-of-type {
        margin-top: -206px; }
    .sec9_list_input {
      width: 545px;
      margin-bottom: 33px; }
      .sec9_list_input input, .sec9_list_input textarea, .sec9_list_input select {
        width: 100%;
        border: 1px solid #979797;
        padding: 7px; }
        .sec9_list_input input:hover, .sec9_list_input textarea:hover, .sec9_list_input select:hover {
          background-color: #f2f0f1; }
          .sec9_list_input label {display:block;width:100%;}
        .sec9_list_input .radio {width: 3%;}
      .sec9_list_input textarea {
        height: 238px;
        resize: none; }
      .sec9_list_input select {
        height: 41px;
        background-color: #fff;
        border-radius: 0;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none; }
        .sec9_list_input select:-ms-expand {
          display: none; }
  .sec9 .submit_btn {
    display: block;
    background-color: #f5a623;
    color: #fff;
    text-align: center;
    font-size: 2.4rem;
    height: 48px;
    line-height: 48px;
    width: 317px;
    border-radius: 15px;
    border: none;
    margin: 18px auto;
    transition: all 0.2s ease;
    cursor: pointer; }
    .sec9 .submit_btn:hover {
      opacity: 0.8; }
    .form-conf dd {border-bottom:1px dotted #ccc;}
    .form-conf .sec9_list_title:last-of-type {
        margin-top: 0; }
    .kaunin {display:flex;}
    .kaunin .submit_btn {}
    .msg {color:#ff0000;}


/* table of contents -----------------------------
1.フッター
------------------------------------------------ */
.footer {
  background-color: #d6cbcf;
  padding: 14px 0 20px; }
  .footer_nav {
    margin-bottom: 36px; }
    .footer_nav_list {
      text-align: center; }
      .footer_nav_list_item {
        display: inline-block;
        font-size: 0; }
        .footer_nav_list_item:not(:last-of-type) {
          margin-right: 40px; }
        .footer_nav_list_item a {
          font-size: 1.2rem;
          color: #a40b5d;
          text-decoration: none; }
          .footer_nav_list_item a:hover {
            text-decoration: underline; }
  .footer_text {
    text-align: center;
    font-size: 1.2rem; }

.text_m {margin:46px;}
/*# sourceMappingURL=style.css.map */
