@charset "UTF-8";
.con-intro .box-txt, .con-intro .box-example { margin-left: auto; margin-right: auto; }
@media only screen and (min-width: 1025px) { .con-intro .box-txt, .con-intro .box-example { width: 85.7%; } }
@media print { .con-intro .box-txt, .con-intro .box-example { width: 85.7%; } }
.ie8 .con-intro .box-txt, .con-intro .ie8 .box-txt, .ie8 .con-intro .box-example, .con-intro .ie8 .box-example { width: 85.7%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-intro .box-txt, .con-intro .box-example { width: 92%; } }
@media only screen and (max-width: 767px) { .con-intro .box-txt, .con-intro .box-example { width: 89.3%; } }

/*Animate */
/* -----------------------------------------------------------
	.con-intro
----------------------------------------------------------- */
.con-intro { margin-bottom: 100px; }
@media only screen and (min-width: 1025px) { .con-intro { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
@media print { .con-intro { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
.ie8 .con-intro { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
@media only screen and (max-width: 767px) { .con-intro { margin-bottom: 60px; } }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-intro .box-txt { width: 92%; margin: 0 auto 100px; } }
@media only screen and (max-width: 767px) { .con-intro .box-txt { width: 89.3%; margin: 0 auto 60px; } }
@media only screen and (min-width: 1025px) { .con-intro .img { width: 50%; } }
@media print { .con-intro .img { width: 50%; } }
.ie8 .con-intro .img { width: 50%; }
.con-intro .img img { width: 100%; }
.con-intro .box-example { border: 1px solid #111; margin-top: 90px; }
@media only screen and (min-width: 768px) { .con-intro .box-example { display: -webkit-flex; display: flex; padding: 60px; } }
@media print { .con-intro .box-example { display: -webkit-flex; display: flex; padding: 60px; } }
.ie8 .con-intro .box-example { display: -webkit-flex; display: flex; padding: 60px; }
@media only screen and (max-width: 767px) { .con-intro .box-example { padding: 40px; margin-top: 60px; } }
.con-intro .box-example dt { letter-spacing: 0.24em; }
@media only screen and (min-width: 768px) { .con-intro .box-example dt { width: 30%; } }
@media print { .con-intro .box-example dt { width: 30%; } }
.ie8 .con-intro .box-example dt { width: 30%; }
.con-intro .box-example dt em { font-size: 2.4rem; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-intro .box-example dt em { display: block; } }
@media only screen and (max-width: 767px) { .con-intro .box-example dt em { font-size: 2rem; } }
@media only screen and (min-width: 768px) { .con-intro .box-example dd { width: 70%; } }
@media print { .con-intro .box-example dd { width: 70%; } }
.ie8 .con-intro .box-example dd { width: 70%; }
.con-intro .box-example dd ul li { position: relative; padding-left: 1em; line-height: 1.75; }
.con-intro .box-example dd ul li:before { content: "・"; position: absolute; top: 0; left: 0; }
.con-intro .box-example dd ul li:not(:last-child) { margin-bottom: 8px; }

/* -----------------------------------------------------------
	.con-details
----------------------------------------------------------- */
.con-details { display: -webkit-flex; display: flex; margin-bottom: 100px; }
@media only screen and (max-width: 767px) { .con-details { padding-top: 60px; } }
.con-details .box-title { width: 15%; }
@media only screen and (min-width: 768px) { .con-details .box-title { padding-top: 100px; }
  .con-details .box-title .title-basic { width: calc(100% - 7.15vw); margin-left: auto; } }
@media print { .con-details .box-title { padding-top: 100px; }
  .con-details .box-title .title-basic { width: calc(100% - 7.15vw); margin-left: auto; } }
.ie8 .con-details .box-title { padding-top: 100px; }
.ie8 .con-details .box-title .title-basic { width: calc(100% - 7.15vw); margin-left: auto; }
@media only screen and (max-width: 767px) { .con-details .box-title .title-basic { width: calc(100% - 5.35vw); margin-left: auto; } }
.con-details .box-details { width: 85%; padding-left: 5%; }
@media only screen and (max-width: 767px) { .con-details .box-details { padding-left: 36px; } }
.con-details .box-details .item { padding: 100px 0; }
@media only screen and (min-width: 1025px) { .con-details .box-details .item { display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; } }
@media print { .con-details .box-details .item { display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; } }
.ie8 .con-details .box-details .item { display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; }
@media only screen and (max-width: 767px) { .con-details .box-details .item { padding: 60px 0; } }
.con-details .box-details .item:first-child { border-bottom: 1px solid #111; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-details .box-details .item:first-child { padding-top: 200px; } }
@media only screen and (min-width: 1025px) { .con-details .box-details .item .box-txt { width: 40%; padding-right: 120px; } }
@media print { .con-details .box-details .item .box-txt { width: 40%; padding-right: 120px; } }
.ie8 .con-details .box-details .item .box-txt { width: 40%; padding-right: 120px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-details .box-details .item .box-txt { padding-right: 40px; margin-bottom: 48px; } }
.con-details .box-details .item .box-txt h3 { font-weight: 400; font-size: 2.4rem; margin-bottom: 48px; letter-spacing: 0.28em; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-details .box-details .item .box-txt h3 { margin-bottom: 8px; } }
@media only screen and (max-width: 767px) { .con-details .box-details .item .box-txt h3 { font-size: 2rem; margin-bottom: 8px; } }
.con-details .box-details .item .box-txt .txt { letter-spacing: 0.18em; }
@media only screen and (max-width: 767px) { .con-details .box-details .item .box-txt .txt { padding-right: 24px; margin-bottom: 24px; line-height: 1.75; } }
@media only screen and (min-width: 1025px) { .con-details .box-details .item .img { width: 60%; } }
@media print { .con-details .box-details .item .img { width: 60%; } }
.ie8 .con-details .box-details .item .img { width: 60%; }

/* -----------------------------------------------------------
	.con-flow
----------------------------------------------------------- */
.con-flow { display: -webkit-flex; display: flex; width: 100%; overflow: hidden; }
.con-flow .box-title { width: 17%; }
@media only screen and (min-width: 768px) { .con-flow .box-title .title-basic { width: calc(100% - 7.15vw); margin-left: auto; } }
@media print { .con-flow .box-title .title-basic { width: calc(100% - 7.15vw); margin-left: auto; } }
.ie8 .con-flow .box-title .title-basic { width: calc(100% - 7.15vw); margin-left: auto; }
@media only screen and (max-width: 767px) { .con-flow .box-title .title-basic { width: calc(100% - 5.35vw); margin-left: auto; } }
.con-flow .box-flow { width: 83%; }
@media only screen and (min-width: 768px) { .con-flow .box-flow { padding-top: 100px; padding-left: 5%; } }
@media print { .con-flow .box-flow { padding-top: 100px; padding-left: 5%; } }
.ie8 .con-flow .box-flow { padding-top: 100px; padding-left: 5%; }
@media only screen and (max-width: 767px) { .con-flow .box-flow { padding-top: 40px; padding-left: 24px; } }
.con-flow .box-flow .txt-flow { max-width: 1040px; letter-spacing: 0.075em; margin-bottom: 60px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-flow .box-flow .txt-flow { padding-right: 40px; } }
@media only screen and (max-width: 767px) { .con-flow .box-flow .txt-flow { padding-right: 16px; margin-bottom: 36px; } }
.con-flow .box-flow ul { border-top: 1px solid #111; border-bottom: 1px solid #111; padding: 24px 0; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-flow .box-flow ul { padding-right: 40px; } }
@media only screen and (max-width: 767px) { .con-flow .box-flow ul { padding: 8px 0; } }
.con-flow .box-flow ul li { position: relative; padding: 48px 0; }
@media only screen and (min-width: 768px) { .con-flow .box-flow ul li { display: -webkit-flex; display: flex; -webkit-align-items: flex-start; align-items: flex-start; } }
@media print { .con-flow .box-flow ul li { display: -webkit-flex; display: flex; -webkit-align-items: flex-start; align-items: flex-start; } }
.ie8 .con-flow .box-flow ul li { display: -webkit-flex; display: flex; -webkit-align-items: flex-start; align-items: flex-start; }
@media only screen and (max-width: 767px) { .con-flow .box-flow ul li { padding: 48px 0; } }
.con-flow .box-flow ul li:not(:last-child) { border-bottom: 1px solid #ccc; }
.con-flow .box-flow ul li:before { content: ""; background: #ccc; width: 1px; height: 100%; position: absolute; top: 0; left: 32px; }
@media only screen and (max-width: 767px) { .con-flow .box-flow ul li:before { display: none; } }
.con-flow .box-flow ul li:first-child:before { top: 64px; }
.con-flow .box-flow ul li:last-child:before { height: 30%; }
.con-flow .box-flow ul li .number { font-family: "EB Garamond", serif; color: #fff; background: #111; line-height: 1; font-size: 2.4rem; width: 64px; text-align: center; margin-top: 0.7em; position: relative; z-index: 1; }
@media only screen and (max-width: 767px) { .con-flow .box-flow ul li .number { font-size: 2rem; margin-bottom: 8px; margin-top: 0; width: 48px; } }
.con-flow .box-flow ul li .box-detail { width: calc(100% - 64px); max-width: 960px; margin-left: 60px; }
@media only screen and (max-width: 767px) { .con-flow .box-flow ul li .box-detail { margin-left: 0; width: 100%; padding-right: 24px; } }
.con-flow .box-flow ul li .box-detail h3 { font-size: 2.4rem; font-weight: 400; letter-spacing: 0.28em; margin-bottom: 16px; }
@media only screen and (max-width: 767px) { .con-flow .box-flow ul li .box-detail h3 { font-size: 2rem; margin-bottom: 8px; } }
.con-flow .box-flow ul li .box-detail .txt { letter-spacing: 0.18em; line-height: 1.75; }
.con-flow .box-flow ul li .box-detail .txt-link { margin-top: 56px; padding-bottom: 24px; }
.con-flow .box-flow ul li .box-detail .txt-notice { margin-top: 1em; padding-left: 1em; position: relative; font-size: 1.4rem; line-height: 1.714; letter-spacing: 0.18em; }
@media only screen and (max-width: 767px) { .con-flow .box-flow ul li .box-detail .txt-notice { font-size: 1.2rem; color: #666; } }
.con-flow .box-flow ul li .box-detail .txt-notice:before { content: "※"; position: absolute; left: 0; top: 0; }
.con-flow .box-flow ul li .box-detail .box-pay { border: 1px solid #111; margin-top: 36px; padding: 50px; }
@media only screen and (max-width: 767px) { .con-flow .box-flow ul li .box-detail .box-pay { padding: 24px 30px; } }
.con-flow .box-flow ul li .box-detail .box-pay .paytype { letter-spacing: 0.18em; line-height: 1.5; }
.con-flow .box-flow ul li .box-detail .box-pay .paytype-txt { letter-spacing: 0.075em; line-height: 1.75; }

/* -----------------------------------------------------------
	.con-faq
----------------------------------------------------------- */
.con-faq { display: -webkit-flex; display: flex; }
.con-faq .box-title { width: 17%; }
@media only screen and (min-width: 768px) { .con-faq .box-title .title-basic { width: calc(100% - 7.15vw); margin-left: auto; } }
@media print { .con-faq .box-title .title-basic { width: calc(100% - 7.15vw); margin-left: auto; } }
.ie8 .con-faq .box-title .title-basic { width: calc(100% - 7.15vw); margin-left: auto; }
@media only screen and (max-width: 767px) { .con-faq .box-title .title-basic { width: calc(100% - 5.35vw); margin-left: auto; } }
.con-faq .box-faq { width: 83%; }
@media only screen and (min-width: 768px) { .con-faq .box-faq { padding-top: 100px; padding-left: 5%; } }
@media print { .con-faq .box-faq { padding-top: 100px; padding-left: 5%; } }
.ie8 .con-faq .box-faq { padding-top: 100px; padding-left: 5%; }
@media only screen and (max-width: 767px) { .con-faq .box-faq { padding-left: 24px; margin-top: 40px; } }
.con-faq .box-faq ul { border-top: 1px solid #111; border-bottom: 1px solid #111; padding: 24px 0; }
.con-faq .box-faq ul li { position: relative; padding: 48px 40px 48px 0; }
@media only screen and (max-width: 767px) { .con-faq .box-faq ul li { padding: 24px 20px 24px 0; } }
.con-faq .box-faq ul li:not(:last-child) { border-bottom: 1px solid #ccc; }
.con-faq .box-faq ul li .question { position: relative; padding-left: 1.25em; font-size: 2.4rem; line-height: 1.5; letter-spacing: 0.28em; max-width: 1040px; margin-left: 40px; margin-bottom: 8px; }
@media only screen and (max-width: 767px) { .con-faq .box-faq ul li .question { margin-left: 8px; font-size: 1.8rem; letter-spacing: 0.18em; margin-bottom: 16px; } }
.con-faq .box-faq ul li .question:before { content: "Q."; font-family: "EB Garamond", serif; line-height: 1; letter-spacing: 0.075em; position: absolute; top: 0.3em; left: 0; }
.con-faq .box-faq ul li .answer { max-width: 1040px; margin-left: 40px; padding-left: 2em; }
@media only screen and (max-width: 767px) { .con-faq .box-faq ul li .answer { margin-left: 8px; padding-left: 1.7em; } }
.con-faq .box-faq ul li .answer .txt { letter-spacing: 0.18em; line-height: 1.75; }
.con-faq .box-faq ul li .answer .txt-notice { margin-top: 1em; padding-left: 1em; position: relative; font-size: 1.4rem; line-height: 1.714; letter-spacing: 0.18em; }
@media only screen and (max-width: 767px) { .con-faq .box-faq ul li .answer .txt-notice { font-size: 1.2rem; color: #666; } }
.con-faq .box-faq ul li .answer .txt-notice:before { content: "※"; position: absolute; left: 0; top: 0; }
