/* page */
.page-wrap { max-width: 1040px; padding-left: 20px; padding-right: 20px; margin-left: auto; margin-right: auto; }

@media( max-width: 767px ) {
	.page-wrap { max-width: 592px; padding-left: 15px; padding-right: 15px; }
}



/* header */
.header { background: #fff; }
.header-wrap { height: 70px; max-width: 940px; margin: 0 auto; padding: 0 20px; display: flex; flex-wrap: wrap; align-items: center; }
.header-logos { max-width: 380px; width: 75%; }
.header-logo__btn { display: block; }

@media (max-width: 767px) {
	.header-wrap { height: 50px; padding: 0 15px; }
}



/* main */
.main-visual { position: relative; background: #6464ff; width: 100%; overflow: hidden; }
.main-visual__wrap { position: absolute; top: 45px; left: 0; right: 0; max-width: 1290px; margin: 0 auto; padding: 0 20px; z-index: 10; }
.main-visual__bg { height: 620px; width: 100%; background: url(../../images/img_visual_bg.png) no-repeat left/contain; background-color: #fff; overflow: hidden; }
.main-visual__hum { position: relative; height: 620px; width: 1250px; transform: translateX( calc(50vw - 110px)); background: linear-gradient(to right,transparent 0%,#fff 50% ,#6464ff 100% ); z-index: 1; }
.main-visual__ex { position: relative; }
.main-visual__sub { max-width: 900px; border-bottom: 1px solid #000; margin-bottom: 20px; padding-bottom: 20px; }
.main-visual__title { max-width: 865px; }
.main-visual__check { max-width: 814px; margin-top: 30px; }
.main-visual__achieve { position: absolute; top: -90px; right: -110px; max-width: 316px; }
.main-visual__catch { position: absolute; bottom: 0; right: -58px; width: 480px; height: 148px; }

@media (max-width: 1450px) {
	.main-visual__bg { height: calc(35.93vw + 100px); }
	.main-visual__hum { height: calc(35.93vw + 100px); width: 1250px; }

	.main-visual__sub { max-width: calc(68.11vw + -88px); margin-bottom: calc(0.57vw + 12px); padding-bottom: calc(0.57vw + 12px); }
	.main-visual__title { max-width: calc(62.43vw + -41px); }
	.main-visual__check { max-width: calc(54.11vw + 30px); margin-top: calc(1.47vw + 9px); }
	.main-visual__achieve { top: -90px; right: calc(-37.5vw + 434px); max-width: calc(17.71vw + 60px); }
	.main-visual__catch { right: calc(-43.75vw + 580px); }
}
@media (max-width: 1290px) {
	.main-visual__achieve { top: calc(-2.88vw + -53px); right: calc(-0.96vw + -38px); }
	.main-visual__catch { width: calc(38.32vw + -15px); right: calc(2.88vw + -23px); height: calc(11.88vw + -6px); }
}
@media (max-width: 568px) {
	.main-visual__wrap { position: static; padding: 0; }
}



/* intro */
.intro { margin-top: 75px; margin-bottom: 50px; }
.intro-head { max-width: 1040px; margin: 0 auto; padding: 0 20px; }
.intro-title { max-width: 1050px; padding: 0 15px; margin: 50px auto 0; display: flex; flex-wrap: wrap; align-items: center; }
.intro-title__fuki { max-width: 315px; width: 100%; }
.intro-title__txt { margin-left: 20px; max-width: 615px; width: 100%; }
.intro-problem { margin: 35px auto 0; max-width: 1200px; position: relative; }
.intro-problem__item { position: absolute; }
.intro-problem__item01 { top: 57px; left: 36px; width: 420px; }
.intro-problem__item02 { top: 360px; left: 87px; width: 405px; }
.intro-problem__item03 { top: 370px; left: 525px; width: 375px; }
.intro-problem__item04 { top: 44px; right: 103px; width: 380px; }
.intro-problem__item05 { top: 303px; right: 10px; width: 380px; }
.intro-suggest { margin: -55px auto 0; max-width: 1200px; background: url(../../images/img_intro_suggest_bg.jpg) no-repeat top/contain #006; padding: 70px 20px 40px; }
.intro-suggest__catch { max-width: 979px; margin: 0 auto; }
.intro-suggest__title::before { content: ""; display: block; width: 140px; height: 68px; margin: -12px auto -23px; background: url(../../images/acce_arrow.svg) no-repeat center/contain; }
.intro-suggest__title { max-width: 893px; margin: 0 auto; }
.intro-suggest__list { max-width: 900px; margin: -25px auto 0; display: flex; flex-wrap: wrap; justify-content: center; }
.intro-suggest__item { width: calc((100% - 31px) / 3 ); }
.intro-suggest__item:nth-child(n+2) { margin-left: 15px; }

@media (max-width: 1200px) {
	.intro-title__fuki { width: 30.8%; }
	.intro-title__txt { width: calc(69.2% - 16px); margin-left: calc(0.57vw + 9px); }
	.intro-problem__item01 { top: 4.75vw; left: calc(3.17vw + -3px); width: 35.29vw; }
	.intro-problem__item02 { top: 30.07vw; left: calc(9.02vw + -12px); width: 33.71vw; }
	.intro-problem__item03 { top: 30.86vw; left: 43.68vw; width: 31.18vw; }
	.intro-problem__item04 { top: 3.64vw; right: 8.55vw; width: 31.65vw; }
	.intro-problem__item05 { top: 25.32vw; right: calc(0.64vw + 3px); width: 31.65vw; }
	.intro-suggest__title::before { margin: calc(-1.9vw + 11px) auto calc(-3.64vw + 21px); }
	.intro-suggest__list { margin: calc(-3.96vw + 23px) auto 0; }
}
@media (max-width: 767px) {
	.intro-head { max-width: 480px; padding: 0 15px; }
	.intro-title { margin: calc(3.36vw + 10px) auto 0; }
	.intro-problem { margin: calc(3.36vw + 10px) auto 0; }
	.intro-suggest { margin: calc(-5.6vw + -13px) auto 0; padding: 70px 15px 30px; }
	.intro-suggest__catch { max-width: 568px; }
	.intro-suggest__title { max-width: 520px; }
	.intro-suggest__title::before { width: 80px; height: 38px; margin: 0 auto; }
	.intro-suggest__list { max-width: 568px; }
	.intro-suggest__item { width: 100%; padding: 0 calc(6.72vw + 9px); background: #ebf1ff; }
	.intro-suggest__item:nth-child(n+2) { margin-left: 0; margin-top: 15px; }
}
@media (max-width: 480px) {
	.intro-problem__item01 { top: 10px; left: 5px; width: calc(43.75vw + 40px); z-index: 1; }
	.intro-problem__item02 { top: calc(31.25vw + 80px); left: 5px; width: calc(37.5vw + 30px); }
	.intro-problem__item03 { top: calc(75vw + 20px); left: 85px; width: calc(46.88vw + 15px); }
	.intro-problem__item04 { top: 25px; right: 0px; width: calc(43.75vw + 35px); }
	.intro-problem__item05 { top: calc(25vw + 115px); right: 5px; width: calc(25vw + 60px); }
}



/* importance */
.importance { margin: 70px auto 0; max-width: 1200px; }
.importance-head { position: relative; background: linear-gradient(to right,#c6dbff,#fff,#c6dbff); padding: 60px 20px 20px; }
.importance-head::before { position: absolute; content: ""; top: 20px; left: 0; width: 100%; height: 20px; background: linear-gradient(transparent 5%, #b5b5e8 5%, #b5b5e8 15%,transparent 15%,transparent 45%,#b5b5e8 45%,#b5b5e8 55%,transparent 55%,transparent 85%,#b5b5e8 85%,#b5b5e8 95%,transparent 95%,transparent 100%); }
.importance-head__txt { text-align: center; font-weight: 700; font-size: 4.8rem; line-height: 1.5; }
.importance-wrap { margin: 35px auto 0; max-width: 790px; padding: 0 20px; }
.importance-sct + .importance-sct { margin-top: 85px; }
.importance-sct__head { font-size: 3rem; font-weight: 700; line-height: 1.33; color: #006; text-align: center; }
.importance-sct__lead { margin-top: 30px; text-align: center; }
.importance-sct__img { margin-top: 55px; }
.img-dx { display: flex; flex-wrap: wrap; justify-content: space-between; }
.img-dx__left { width: 34.5%; }
.img-dx__mid { width: 24.6%; }
.img-dx__right { width: 32.6%; padding-top: 30px; }
.img-dx__listlabel { font-size: 1.8rem; font-weight: 700; line-height: 1.31; text-align: center; margin-bottom: 5px; }
.img-dx__listlabel br { display: none; }
.img-dx__item { height: 70px; width: 100%; max-width: 220px; margin: 0 auto; text-align: center; border-radius: 35px; display: flex; align-items: center; justify-content: center; font-size: 2rem; font-weight: 700; line-height: 1.31; background: #e2edff; }
.img-dx__item:nth-child(n+2) { margin-top: 20px; }
.img-dx__problem { position: relative; padding-top: 80px;  }
.img-dx__problem::before { position: absolute; content: ""; top: 0; left: 0; right: 0; margin: 0 auto; background-image: repeating-linear-gradient(0deg, #000066, #000066 5px, transparent 5px, transparent 10px, #000066 10px), repeating-linear-gradient(90deg, #000066, #000066 5px, transparent 5px, transparent 10px, #000066 10px), repeating-linear-gradient(180deg, #000066, #000066 5px, transparent 5px, transparent 10px, #000066 10px), repeating-linear-gradient(270deg, #000066, #000066 5px, transparent 5px, transparent 10px, #000066 10px); background-size: 2px 100%, 100% 2px, 2px 100% , 100% 2px; background-position: 0 0, 0 0, 100% 0, 0 100%; background-repeat: no-repeat; width: 2px; height: 75px; }
.img-dx__problem::after { position: absolute; content: ""; bottom: -5px; left: 0; right: 0; margin: 0 auto; background-image: repeating-linear-gradient(0deg, #000066, #000066 5px, transparent 5px, transparent 10px, #000066 10px), repeating-linear-gradient(90deg, #000066, #000066 5px, transparent 5px, transparent 10px, #000066 10px), repeating-linear-gradient(180deg, #000066, #000066 5px, transparent 5px, transparent 10px, #000066 10px), repeating-linear-gradient(270deg, #000066, #000066 5px, transparent 5px, transparent 10px, #000066 10px); background-size: 2px 100%, 100% 2px, 2px 100% , 100% 2px; background-position: 0 0, 0 0, 100% 0, 0 100%; background-repeat: no-repeat; width: 2px; height: 125px; transform: translateY(100%); }
.img-dx__problem-label { text-align: center; font-weight: 700; font-size: 1.8rem; line-height: 1; }
.img-dx__problem-txt { height: 74px; border-radius: 37px; background: #006; display: flex; justify-content: center; align-items: center; color: #fff; font-size: 2.6rem; font-weight: 700; line-height: 1.1; text-align: center; margin-top: 10px; }
.img-dx__fig { max-width: 235px; width: 100%; margin-top: 20px; }
.img-pranner { position: relative; max-width: 405px; margin-left: auto; margin-right: auto; padding-top: 72px; }
.img-pranner__item { width: 130px; height: 130px; position: absolute; content: ""; background: #006; color: #fff; display: flex; justify-content: center; align-items: center; border-radius: 100%; text-align: center; font-size: 2.6rem; font-weight: 700; }
.img-pranner__item-01 { top: 0; left: 0; right: 0; margin: 0 auto; }
.img-pranner__item-02 { bottom: 52px; right: -55px; }
.img-pranner__item-03 { bottom: 52px; left: -55px; }

@media (max-width: 1200px) {
	.importance { margin: 70px auto 0; }
	.importance-head { padding: calc(2.28vw + 33px) 15px 20px; }
	.importance-head::before { height: calc(0.57vw + 14px); }
	.importance-head__txt { font-size: calc(3.41vw + 8px); }
	.importance-sct + .importance-sct { margin-top: calc(5.12vw + 24px); }
	.importance-sct__head { font-size: calc(1.48vw + 13px); }
	.img-pranner { position: relative; max-width: 405px; margin-left: auto; margin-right: auto; padding-top: 72px; }
	.img-pranner__item { width: 130px; height: 130px; position: absolute; content: ""; background: #006; color: #fff; display: flex; justify-content: center; align-items: center; border-radius: 100%; text-align: center; font-size: 2.6rem; font-weight: 700; }
	.img-pranner__item-01 { top: 0; left: 0; right: 0; margin: 0 auto; }
	.img-pranner__item-02 { bottom: 52px; right: -55px; }
	.img-pranner__item-03 { bottom: 52px; left: -55px; }
}
@media (max-width: 767px) {
	.importance-wrap { margin: 35px auto 0; padding: 0 15px; }
	.importance-sct__lead { margin-top: 25px; }
	.importance-sct__img { margin-top: 40px; }
}
@media (max-width: 568px) {
	.importance-sct__lead { text-align: left; }
	.importance-sct__lead .inliner { display: inline; }
	.importance-sct__lead br { display: none; }
	.importance-sct__img { margin-top: 25px; }
	.img-dx { width: 290px; margin-left: auto; margin-right: auto; justify-content: center; }
	.img-dx__left { width: 130px; order: 2; }
	.img-dx__mid { width: 100%; order: 1; margin-bottom: 20px; }
	.img-dx__right { width: 145px; padding-top: 0; order: 3; margin-left: 15px; padding-left: 15px; border-left: 2px dashed #006; }
	.img-dx__listlabel { font-size: 1.5rem; }
	.img-dx__listlabel br { display: block; }
	.img-dx__item { height: 44px; font-size: 1.6rem; }
	.img-dx__item:nth-child(n+2) { margin-top: 20px; }
	.img-dx__problem { padding-top: 0; }
	.img-dx__problem::before { display: none; }
	.img-dx__problem::after { display: none; }
	.img-dx__problem-label { font-size: 1.6rem; }
	.img-dx__problem-txt { height: 36px; font-size: 2.1rem; width: 170px; margin: 10px auto 0; line-height: 1; }
	.img-dx__problem-txt br { display: none; }
	.img-dx__fig { max-width: 235px; width: 100%; margin-top: 20px; }
	.img-pranner { max-width: 220px; padding-top: 40px; }
	.img-pranner__item { width: 70px; height: 70px; font-size: 2rem; }
	.img-pranner__item-02 { bottom: 30px; right: -30px; }
	.img-pranner__item-03 { bottom: 30px; left: -30px; }
}



/* course */
.course { background: #f2f2f2; padding: 0 20px; margin-top: 100px; padding-bottom: 155px; }
.course-wrap { max-width: 900px; margin: 0 auto; }
.course-head { padding-top: 65px; }
.course-head__catch { position: relative; background: #006; max-width: 740px; margin: 0 auto; height: 55px; display: flex; justify-content: center; align-items: center; color: #fff; font-size: 3.6rem; font-weight: 700; }
.course-head__catch::before { position: absolute; content: ""; top: 0; left: -15px; width: 0; height: 0; border-style: solid; border-width: 0 0 55px 15px; border-color: transparent transparent #006 transparent; }
.course-head__catch::after  { position: absolute; content: ""; top: 0; right: -15px; width: 0; height: 0; border-style: solid; border-width: 55px 15px 0 0; border-color: #006 transparent transparent transparent; }
.course-head__title { max-width: 760px; margin: 40px auto 0; }
.course-lead { margin-top: 45px; }
.course-appeal { margin-top: 80px; }
.course-appeal__head-txt { font-size: 4.8rem; font-weight: 700; line-height: 1.31; text-align: center; display: block; }
.course-appeal__head-label { margin: 50px auto 0; position: relative; width: 400px; padding: 0 95px; display: block; }
.course-appeal__head-label::before { position: absolute; content: ""; top: -15px; left: 5px; background: url(../../images/acce_line.svg) no-repeat center/contain; width: 45px; height: 80px; }
.course-appeal__head-label::after  { position: absolute; content: ""; top: -15px; right: 5px; background: url(../../images/acce_line.svg) no-repeat center/contain; width: 45px; height: 80px; }
.course-appeal__list { margin-top: 40px; }
.course-appeal__item { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.course-appeal__item:nth-child(n+2) { margin-top: 80px; }
.course-appeal__ex { flex: 1; margin-right: 20px; }
.course-appeal__img { width: 49.5%; }
.course-appeal__item:nth-child(even) .course-appeal__ex { margin-right: 0; margin-left: 20px; order: 2; }
.course-appeal__item:nth-child(even) .course-appeal__img { order: 1; }
.course-appeal__list-head { font-size: 3.2rem; font-weight: 700; color: #006; line-height: 1.31; }
.course-appeal__list-txt { border-top: 1px solid #000; padding-top: 20px; margin-top: 15px; }

@media (max-width: 1200px) {
	.course-head__catch { height: 55px; font-size: 3rem; max-width: 480px; }
	.course-head__title { max-width: 580px; margin: 40px auto 0; }
	.course-appeal__head-txt { font-size: calc(3.17vw + 10px); }
	.course-appeal__list-head { font-size: calc(1.63vw + 13px); }
}
@media (max-width: 767px) {
	.course { padding: 0 15px; margin-top: 50px; padding-bottom: 50px; }
	.course-head { padding-top: 30px; width: calc(100% - 30px); margin: 0 auto; }
	.course-head__title { max-width: calc(67.12vw + 66px); margin: 20px auto 0; }
	.course-lead { margin-top: 25px; }
	.course-appeal { margin-top: 40px; }
	.course-appeal__item { max-width: 568px; margin: 0 auto; }
	.course-appeal__item:nth-child(n+2) { margin-top: 40px; }
	.course-appeal__ex { flex: 0 1 auto; margin-right: 0; order: 2; }
	.course-appeal__img { width: 100%; max-width: 420px; margin: 0 auto 15px; order: 1; }
	.course-appeal__item:nth-child(even) .course-appeal__ex { margin-left: 0; }
	.course-appeal__list-head { font-size: calc(2.69vw + 12px); }
	.course-appeal__list-txt { padding-top: 20px; margin-top: 15px; }
}
@media (max-width: 568px) {
	.course-head__catch { font-size: calc(5.25vw + 1px); }
	.course-appeal__head-label { margin: 40px auto 0; width: 240px; padding: 0 60px; }
	.course-appeal__head-label::before { top: -8px; left: 5px; width: 24px; height: 44px; }
	.course-appeal__head-label::after  { top: -8px; right: 5px; width: 24px; height: 44px; }
}
@media (max-width: 420px) {
	.course-head__catch { height: 30px; }
	.course-head__catch::before { left: -8px; border-width: 0 0 30px 8px; }
	.course-head__catch::after  { right: -8px; border-width: 30px 8px 0 0; }
}



/* service */
.service { padding: 0 20px; margin: 120px auto 0; max-width: 940px; }
.service-head__label { position: relative; background: #006; max-width: 435px; margin: 0 auto; height: 55px; display: flex; justify-content: center; align-items: center; color: #fff; font-size: 3.6rem; font-weight: 700; }
.service-head__label::before { position: absolute; content: ""; top: 0; left: -15px; width: 0; height: 0; border-style: solid; border-width: 0 0 55px 15px; border-color: transparent transparent #006 transparent; }
.service-head__label::after  { position: absolute; content: ""; top: 0; right: -15px; width: 0; height: 0; border-style: solid; border-width: 55px 15px 0 0; border-color: #006 transparent transparent transparent; }
.service-head__txt { position: relative; margin: 50px auto 0; max-width: 820px; padding: 0 95px; }
.service-head__txt::before { position: absolute; content: ""; top: -15px; left: 5px; background: url(../../images/acce_line.svg) no-repeat center/contain; width: 45px; height: 80px; }
.service-head__txt::after  { position: absolute; content: ""; top: -15px; right: 5px; background: url(../../images/acce_line.svg) no-repeat center/contain; width: 45px; height: 80px; }
.service-list { margin-top: 50px; }
.service-item { border-top: 1px solid #d1d1d1; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.service-item:last-child { border-bottom: 1px solid #d1d1d1; }
.service-list__num { margin-left: 40px; margin-right: 40px; width: 30px; height: 39px; }
.service-list__txt { margin-right: auto; font-size: 3.4rem; font-weight: 700; line-height: 1.31; color: #006; flex: 1; }
.service-list__fig { margin-right: 50px; width: 200px; }
.service-more { margin-top: 100px; position: relative; border: 20px solid #eaeaea; display: flex; flex-wrap: wrap;justify-content: space-between; align-items: flex-end; padding-bottom: 25px; }
.service-more::before { position: absolute; content: "さらに！"; font-size: 3rem; line-height: 1; top: -45px; left: 40px; height: 58px; border-radius: 29px; background: #006; padding: 0 25px; color: #fff; text-align: center; font-weight: 700; display: flex; flex-wrap: wrap; align-items: center; }
.service-more::after { position: absolute; content: ""; top: 12px; left: 105px; width: 0; height: 0; border-style: solid; border-width: 10.4px 6px 0 6px; border-color: #006 transparent transparent transparent; }
.service-more__ex { flex: 1; margin-right: 35px; margin-left: 40px; }
.service-more__txt { font-size: 3.4rem; font-weight: 700; color: #006; line-height: 1.31; margin-bottom: 15px; padding-top: 25px; }
.service-more__fig { width: 140px; margin-top: -60px; margin-right: 45px; }

@media (max-width: 1200px) {
	.service-head__label { height: 55px; font-size: 3rem; max-width: 480px; }
	.service-list { margin: 50px auto 0; max-width: 680px; }
	.service-list__num { margin-left: 20px; margin-right: 20px; }
	.service-list__txt { font-size: 2.6rem;}
	.service-list__fig { margin-right: 20px; width: 160px; }
}
@media (max-width: 767px) {
	.service { padding: 0; margin: 60px auto 0; }
	.service-head__label { max-width: 435px; height: 55px; font-size: 3.6rem; }
	.service-head__label::before { left: -15px; border-width: 0 0 55px 15px; }
	.service-head__label::after  { right: -15px; border-width: 55px 15px 0 0; }
	.service-head__txt { margin: 40px auto 0; padding: 0 50px; max-width: 320px; }
	.service-head__txt::before { top: 0; bottom: 0; margin: auto 0; left: 5px; width: 25px; height: 44px; }
	.service-head__txt::after  { top: 0; bottom: 0; margin: auto 0; right: 5px; width: 25px; height: 44px; }
	.service-head__label { width: calc(100% - 30px); margin: 0 auto; }
	.service-list { margin: 40px auto 0; max-width: 450px; padding: 0 15px; }
	.service-item { padding-top: 20px; }
	.service-list__num { margin-left: 0; margin-right: 10px; width: 25px; height: 33px; }
	.service-list__txt { margin-right: 0; font-size: 2.2rem; flex: 1; }
	.service-list__txt br { display: none; }
	.service-list__fig { margin-right: auto; left: auto; width: 100%; text-align: center; }
	.service-list__fig img { width: 170px; }
	.service-more { margin: 60px auto 0; padding-bottom: 25px; max-width: 568px; padding: 25px 15px 15px; }
	.service-more::before { font-size: 2.4rem; top: -30px; left: 0; right: 0; height: 36px; margin: 0 auto; width: 120px; padding: 0; text-align: center; justify-content: center; }
	.service-more::after { top: 4px; left: 0; right: 0; margin: 0 auto; }
	.service-more__ex { flex: 0 1 auto; margin-right: 0; margin-left: 0; }
	.service-more__txt { font-size: 2.3rem; margin-bottom: 10px; padding-top: 0; }
	.service-more__fig { width: 140px; margin: 15px auto 0; }
}
@media (max-width: 568px) {
	.service-head__label { font-size: calc(5.25vw + 1px); max-width: 380px; }
}
@media (max-width: 420px) {
	.service-head__label { height: 30px; }
	.service-head__label::before { left: -8px; border-width: 0 0 30px 8px; }
	.service-head__label::after  { right: -8px; border-width: 30px 8px 0 0; }
}



/* voice */
.voice { margin: 100px auto 130px; max-width: 940px; padding: 0 20px; }
.voice-head { position: relative; text-align: center; max-width: 430px; padding: 0 95px; font-size: 4.5rem; line-height: 1; margin: 0 auto; }
.voice-head::before { position: absolute; content: ""; top: -15px; left: 5px; background: url(../../images/acce_line.svg) no-repeat center/contain; width: 45px; height: 80px; }
.voice-head::after  { position: absolute; content: ""; top: -15px; right: 5px; background: url(../../images/acce_line.svg) no-repeat center/contain; width: 45px; height: 80px; }
.voice-list { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 80px; }
.voice-item { width: calc(50% - 10px); min-height: 400px; background: #f2f2f2; padding: 20px; }
.voice-item:nth-child(n+3) { margin-top: 40px; }
.voice-item--label { background: #29ad8c; color: #fff; font-weight: 700; }
.voice-label__batch { font-size: 2.4rem; line-height: 1.31; margin-top: 10px; text-align: center; }
.voice-label__head { margin-top: 25px; }
.voice-label__head-txt { display: block; font-size: 4.4rem; line-height: 1; font-weight: 700; text-align: center; }
.voice-label__head-txt:nth-child(n+2) { border-top: 1px solid #fff; padding-top: 10px; margin-top: 10px; }
.voice-response { border: 1px solid #251e1c; height: 100%; padding: 25px 30px; }
.voice-response__txt { margin-top: 40px; }

@media (max-width: 1200px) {
	.voice-label__head-txt { font-size: 4rem; }
}
@media (max-width: 767px) {
	.voice { margin: 80px auto; max-width: 568px; padding: 0; }
	.voice-head { max-width: calc(40.27vw + 122px); padding: 0 50px; font-size: calc(3.81vw + 16px); }
	.voice-head::before { top: 0; bottom: 0; margin: auto 0; width: 24px; height: 44px; }
	.voice-head::after  { top: 0; bottom: 0; margin: auto 0; width: 24px; height: 44px; }
	.voice-list { margin-top: 40px; }
	.voice-item { width: calc(50% - 5px); min-height: auto; padding: 15px; }
	.voice-label__batch { font-size: 2rem; }
	.voice-label__head { margin-top: 15px; }
	.voice-label__head-txt { font-size: 3.2rem; }
	.voice-label__head-txt:nth-child(n+2) { padding-top: 7px; margin-top: 7px; }
	.voice-response { padding: 15px; }
	.voice-response__txt { margin-top: 15px; }
}
@media (max-width: 568px) {
	.voice-list { margin: 40px auto 0; max-width: 420px; }
	.voice-item { width: 100%; }
	.voice-item:nth-child(n+2) { margin-top: 20px; }
	.voice-label__head { padding-bottom: 15px; }
	.voice-label__batch { font-size: 1.8rem; }
}



/* flow */
.flow { margin: 140px auto 0; max-width: 1500px; width: 100%; overflow: hidden; }
.flow-item { position: relative; }
.flow-item:nth-child(odd) { background: #dee9ff; }
.flow-item:nth-child(1)::after { position: absolute; content: ""; bottom: -55px; left: 0; width: 0; height: 0; border-style: solid; border-width: 55px 750px 0 750px; border-color: #dee9ff transparent transparent transparent; }
.flow-item:nth-child(even) { background: #fff; }
.flow-item:nth-child(2)::after { position: absolute; content: ""; bottom: -55px; left: 0; width: 0; height: 0; border-style: solid; border-width: 55px 750px 0 750px; border-color: #fff transparent transparent transparent; }
.flow-item:nth-child(1) { z-index: 3; padding-top: 35px; }
.flow-item:nth-child(2) { z-index: 2; padding-top: 120px; }
.flow-item:nth-child(3) { z-index: 1; padding-top: 85px; }
.flow-label { height: 68px; border-radius: 34px; font-size: 4rem; font-weight: 700; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; max-width: 670px; line-height: 1; margin-left: auto; margin-right: auto; }
.flow-item:nth-child(1) .flow-label { background: #fff; border: 1px solid #006; }
.flow-item:nth-child(2) .flow-label { background: #fff; border: 1px solid #006; }
.flow-item:nth-child(3) .flow-label { background: #006; color: #fff; }
.img-flow01 { position: relative; margin-top: 50px; padding-bottom: 50px; }
.img-flow01__title { width: 300px; height: 300px; margin: 0 auto; }
.img-flow01__fig { position: absolute; content: ""; top: 80px; right: calc(50% - 270px - 130px); max-width: 270px; }
.img-flow02 { position: relative; margin-top: 50px; padding-bottom: 30px; }
.img-flow02__title { width: 300px; height: 300px; margin: 0 auto; }
.img-flow02__fig { position: absolute; content: ""; top: 75px; right: calc(50% - 210px - 105px); max-width: 210px; }
.img-flow03 { margin: 25px auto 0; max-width: 885px; padding: 0 20px; padding-bottom: 45px; }

@media (max-width: 1500px) {
	.flow-item:nth-child(1)::after { border-width: 55px 50vw 0 50vw; }
	.flow-item:nth-child(2)::after { border-width: 55px 50vw 0 50vw; }
}
@media (max-width: 1200px) {
	.img-flow01__fig { top: 90px; right: calc(50% - 230px - 130px); max-width: 230px; }
}
@media (max-width: 767px) {
	.flow { margin: 80px auto 0; }
	.flow-item:nth-child(1)::after { bottom: -15px; border-width: 15px 50vw 0 50vw; }
	.flow-item:nth-child(2)::after { bottom: -15px; border-width: 15px 50vw 0 50vw; }
	.flow-item:nth-child(1) { padding-top: 35px; }
	.flow-item:nth-child(2) { padding-top: 50px; }
	.flow-item:nth-child(3) { padding-top: 50px; }
	.flow-label { height: 42px; font-size: calc(0.9vw + 18px); max-width: 480px; width: calc(100% - 30px); white-space: nowrap; }
	.img-flow01 { margin-top: 25px; padding-bottom: 25px; }
	.img-flow01__title { width: calc(24.61vw + 52px); height: calc(24.61vw + 52px); }
	.img-flow01__fig { top: 70px; right: calc(50% - (26.85vw + 25px) - ((24.61vw + 52px) / 2 * 0.9)); max-width: calc(26.85vw + 25px); }
	.img-flow02 { margin-top: 25px; padding-bottom: 25px; }
	.img-flow02__title { width: calc(24.61vw + 52px); height: calc(24.61vw + 52px); }
	.img-flow02__fig { top: 65px; right: calc(50% - calc(24.17vw + 5px) - 85px); max-width: calc(24.17vw + 5px); }
	.img-flow03 { margin: 25px auto 0; max-width: 568px; padding: 0 15px; padding-bottom: 45px; }
}
@media (max-width: 568px) {
	.img-flow01__title { margin-left: calc(16.13vw + 9px); }
	.img-flow01__fig { top: calc(10.09vw + 13px); left: calc((16.13vw + 9px) + (26.85vw + 25px) + 10px); right: auto; }
	
	.img-flow02__title { margin-left: calc(16.13vw + 9px); }
	.img-flow02__fig { top: calc(16.13vw + -27px); left: calc((16.13vw + 9px) + (26.85vw + 25px) + 10px); right: auto; }
}



/* menu */
.menu { margin: 100px auto 85px; max-width: 880px; padding: 0 20px; }
.menu-head { position: relative; text-align: center; max-width: 665px; padding: 0 95px; font-size: 4.2rem; line-height: 1.2; margin: 0 auto; }
.menu-head::before { position: absolute; content: ""; top: -15px; left: 5px; background: url(../../images/acce_line.svg) no-repeat center/contain; width: 45px; height: 80px; }
.menu-head::after  { position: absolute; content: ""; top: -15px; right: 5px; background: url(../../images/acce_line.svg) no-repeat center/contain; width: 45px; height: 80px; }
.menu-list { margin-top: 35px; }
.menu-item { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.menu-item:nth-child(n+2) { margin-top: 20px; padding-top: 20px; border-top: 1px dashed #000; }
.menu-label { width: 145px; height: 145px; border-radius: 100%; background: #006; color: #fff; font-weight: 700; font-size: 2.5rem; line-height: 1.2; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; text-align: center; margin-left: 25px; margin-right: 40px; }
.menu-txt { flex: 1; font-size: 3.6rem; font-weight: 700; line-height: 1.31; }

@media (max-width: 1200px) {
	.menu-list { margin: 35px auto 0; max-width: 680px; }
}
@media (max-width: 767px) {
	.menu { margin: 80px auto; max-width: 880px; padding: 0 15px; }
	.menu-head { padding: 0 25px; font-size: calc(3.81vw + 16px); }
	.menu-head::before { top: 0; bottom: 0; margin: auto 0; width: 24px; height: 44px; }
	.menu-head::after  { top: 0; bottom: 0; margin: auto 0; width: 24px; height: 44px; }
	.menu-list { margin: 25px auto 0; max-width: 420px; }
	.menu-item:nth-child(n+2) { margin-top: 10px; padding-top: 10px; }
	.menu-label { width: 65px; height: 65px; font-size: 1.3rem; margin-left: 0; margin-right: 15px; }
	.menu-txt { font-size: calc(1.34vw + 14px); }
}
@media (max-width: 568px) {
	.menu-list { max-width: 420px; }
}



/* qa */
.qa { margin: 130px auto 75px; background: #f2f2f2; max-width: 1240px; padding: 50px 20px 235px; }
.qa-wrap { max-width: 924px; margin: 0 auto; }
.qa-head { font-size: 4.5rem; line-height: 1; text-align: center; }
.qa-head::after { content: ""; display: block; margin: 30px auto 0; background: #0028ae; width: 50px; height: 1px; }
.qa-unchor__btn { display: block; }
.qa-unchor__list { margin-top: 30px; display: flex; flex-wrap: wrap; justify-content: center; }
.qa-unchor__item { width: calc((100% - 121px) / 5); margin: 0 12px; }
.qa-contents { max-width: 900px; margin: -15px auto 0; padding-top: 100px; }
.qa-contents + .qa-contents { margin-top: 0px; }
.qa-contents__label { font-size: 3.5rem; line-height: 1; margin-bottom: 30px; text-align: center; }
.qa-contents__item { background: #fff; padding: 20px 30px; }
.qa-contents__item:nth-child(n+2) { margin-top: 45px; }
.qa-contents__wrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
.qa-contents__a { margin-top: 20px; }
.qa-contents__batch { width: 18px; margin-right: 15px; font-size: 2.2rem; line-height: 1.31; font-weight: 700; }
.qa-contents__ex { flex: 1; }
.qa-contents__ex-title { font-size: 2.2rem; line-height: 1.31; font-weight: 700; }
.qa-contents__ex-txt { margin-top: 15px; }

@media (max-width: 767px) {
	.qa { margin: 80px auto; padding: 50px 0 80px; }
	.qa-wrap { max-width: 924px; margin: 0 auto; }
	.qa-head { font-size: calc(3.81vw + 16px); }
	.qa-head::after { margin: 20px auto 0; width: 30px; }
	.qa-unchor__list { margin-top: 20px; }
	.qa-unchor__item { width: calc((100% - 51px) / 5); margin: 0 5px; }
	.qa-contents { margin: 15px auto 0; padding-top: 50px; }
	.qa-contents + .qa-contents { margin-top: 10px; }
	.qa-contents__label { font-size: 3.5rem; margin-bottom: 30px; }
	.qa-contents__list { max-width: 568px; margin: 0 auto; }
	.qa-contents__item { padding: 15px 15px; }
	.qa-contents__item:nth-child(n+2) { margin-top: 35px; }
	.qa-contents__a { margin-top: 15px;  }
	.qa-contents__batch { width: 15px; margin-right: 10px; font-size: 2rem; }
	.qa-contents__ex-title { font-size: 2rem; }
	.qa-contents__ex-txt { margin-top: 10px; }
}
@media (max-width: 568px) {
	.qa-contents__item:nth-child(n+2) { margin-top: 0; border-top: 1px solid #000; }
	.qa-unchor__list { width: calc(100% - 30px); margin: 15px auto 0; }
	.qa-unchor__item { width: calc((100% - 31px) / 3); margin: 5px; }
}



/* inquiry-btn */
.inquiry-btn { max-width: 720px; width: calc(100% - 30px); margin: 0 auto; box-shadow: 0 0 10px 0 rgba(0,0,0,.5); display: block; }
@media (max-width: 767px) {
	.inquiry-btn { max-width: 480px; }
}



/* footer */
.footer { position: relative; margin-top: 100px; }
.footer-logo { max-width: 547px; padding: 0 15px; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; }
.footer-logo--dwango { width: 235px; }
.footer-logo--kadokawa { width: 235px; }
.footer-inner { padding: 60px 0; background: #63c8fc; margin-top: 100px; }
.footer-wrap { max-width: 600px; margin: 0 auto; padding: 0 15px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.footer-comp { width: 220px; }
.footer-comp__item { color: #fff; font-size: 1.5rem; line-height: 1; }
.footer-comp__item:nth-child(n+2) { margin-top: 10px; }
.footer-ex { flex: 1; margin-left: 60px; }
.footer-linklist { display: flex; flex-wrap: wrap; justify-content: center; }
.footer-linkitem { line-height: 1; }
.footer-linkitem:nth-child(n+2) { margin-left: 15px; }
.footer-linkbtn { position: relative; padding-left: 15px; color: #fff; font-size: 1.5rem; line-height: 1; }
.footer-linkbtn::before { position: absolute; content: ""; top: 2px; bottom: 0; left: 0; margin: auto 0; width: 6px; height: 6px; border-top: 1px solid #fff; border-right: 1px solid #fff; transform: rotate(45deg); }
.footer-copy { text-align: center; padding: 0 15px; color: #fff; font-size: 1.3rem; line-height: 1.31; margin-top: 40px; }

@media (max-width: 767px) {
	.footer { margin-top: 60px; }
	.footer-logo { max-width: 420px; margin: 0 auto 15px; }
	.footer-inner { padding: 40px 0; margin-top: 60px; }
	.footer-comp { margin: 0 auto; text-align: center; }
	.footer-ex { flex: 0 1 auto; margin: 40px auto 0; width: 100%; }
	.footer-linkbtn { padding-left: 10px; font-size: 1.3rem; }
}



/* hover */
@media (min-width: 769px) {
	.inquiry-btn,
	.qa-unchor__btn,
	.footer-linkbtn { transition: .25s; }
	.inquiry-btn:hover { transform: translateY(10px) scale(.95); }
	.qa-unchor__btn:hover { transform: translateY(10px); }
	.footer-linkbtn:hover { opacity: 0.5; }
}