@charset "UTF-8";

/* ===== 家づくり勉強会LP（page-seminar.php 専用） ===== */
/* LP化：共通ヘッダー・フッター・固定パーツ・H1帯・パンくずを非表示 */
header,
#g-nav,
.pc-menu,
.fix-pagetop,
#pc-menu-open,
.main-title,
.seo_bread_list,
footer,
small.copyright,
.sp-fix-list,
.sp-page-top,
.page-top { display: none !important; }

#sm-main { color: #1A1A1A; letter-spacing: 0; line-height: 1.6; }
#sm-main a:hover { text-decoration: none; opacity: 0.8; }
.sm-header .arr,
#sm-main .arr { display: block; position: absolute; top: 50%; background: url(../images/seminar/icon-arrow.svg) no-repeat center / contain; }

#sm-main .red { color: #BA0001; }
#sm-main .yl { color: #FFFF6F; }
#sm-main .em { font-weight: 500; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; text-decoration-color: #BA0001; }
.sm-sec { background: #FAF7F1; }
.sm-sec .sec-label { font-family: "jubilat", serif; font-weight: 400; color: #BA0001; letter-spacing: 0.14em; text-align: center; }
.sm-sec .sec-label .num::after { content: ""; display: inline-block; width: 1px; background: #BA0001; vertical-align: -1px; }
.sm-sec h2 { font-weight: 400; letter-spacing: 0.01em; text-align: center; }
.sm-sec .check-list { background: #fff; }
.sm-sec .check-list li { position: relative; border-bottom: 1px solid #F4EFE1; }
.sm-sec .check-list li::before { content: ""; position: absolute; left: 0; background: #fff url(../images/seminar/icon-check.svg) no-repeat center; border: 1px solid #DBDBDB; }
.sm-sec .check-list li:last-child { margin-bottom: 0; }
.sm-band { background: #F1EDE0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; text-align: center; }
.sm-band p { font-weight: 400; letter-spacing: 0.01em; }
.sm-sec .sec-lead { text-align: center; }
.reality-list li { background: #fff; }
.reality-list .hd { background: #801A1A; color: #fff; position: relative; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
.reality-list .hd::before { content: ""; position: absolute; background: url(../images/seminar/icon-slash.svg) no-repeat center / contain; }
.reality-list .hd .num { position: absolute; font-family: "jubilat", serif; font-weight: 400; letter-spacing: 0.14em; }
.reality-list .hd .ttl { font-weight: 400; letter-spacing: 0.01em; }
.reality-list .pic img { display: block; width: 100%; -o-object-fit: cover; object-fit: cover; }

.point-list li { background: #fff; }
.point-list .pt { font-family: "jubilat", serif; font-weight: 400; color: #BA0001; letter-spacing: 0.14em; }
.point-list .ttl { font-weight: 400; letter-spacing: 0.01em; border-bottom: 1px solid #F4EFE1; }
.tf-wrap .pill { color: #fff; font-weight: 500; letter-spacing: 0.01em; text-align: center; }
.tf-wrap .before .pill { background: #2C2C2C; }
.tf-wrap .after .pill { background: #801A1A; }
.tf-wrap .before .box { background: #2C2C2C; color: #fff; position: relative; }
.tf-wrap .before .box::after { content: ""; position: absolute; width: 0; height: 0; }
.tf-wrap .before .box li { border-bottom: 1px solid #fff; }
.tf-wrap .after .box { background: #fff; border: 2px solid #BA0001; }
.tf-wrap .after .box li { border-bottom: 1px solid #C1C1C1; font-weight: 500; }
.tf-wrap .box li:first-child { padding-top: 0; }

.speaker-wrap .photo img { display: block; width: 100%; -o-object-fit: cover; object-fit: cover; }
.speaker-wrap .prof .name { font-weight: 500; }
.speaker-wrap .prof .en { font-weight: 500; color: #BA0001; letter-spacing: 0.05em; }
.speaker-wrap .prof .bio { border-top: 1px solid #F4EFE1; }
.speaker-wrap .prof .tags { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.speaker-wrap .prof .tags li { background: #fff; white-space: nowrap; }
.voice-list li { background: #fff; border: 1px solid #BA0001; }
.voice-list .head { display: -webkit-box; display: -ms-flexbox; display: flex; }
.voice-list .head .icon { background: url(../images/seminar/icon-person.svg) no-repeat center / contain; -ms-flex-negative: 0; flex-shrink: 0; }
.voice-list .ttl { font-weight: 400; letter-spacing: 0.01em; }
.voice-list .meta { color: #808080; }
.voice-list .txt { border-top: 1px solid #F4EFE1; }

.detail-list .row { display: -webkit-box; display: -ms-flexbox; display: flex; }
.detail-list dt { background: #F4EFE1; text-align: center; -ms-flex-negative: 0; flex-shrink: 0; }
.detail-list dd { border-bottom: 1px solid #F4EFE1; }
#sm-detail .form-Box { background: none; }
.faq-list li { background: #fff; }
.faq-list .q,
.faq-list .a { display: -webkit-box; display: -ms-flexbox; display: flex; }
.faq-list .q { -webkit-box-align: center; -ms-flex-align: center; align-items: center; border-bottom: 1px solid #F4EFE1; }
.faq-list .mark { display: block; border-radius: 50%; text-align: center; font-family: "jubilat", serif; font-weight: 400; letter-spacing: 0.14em; text-indent: 0.14em; -ms-flex-negative: 0; flex-shrink: 0; }
.faq-list .q .mark { background: #F4EFE1; color: #1A1A1A; }
.faq-list .a .mark { background: #F2E2E2; color: #BA0001; }
.faq-list .q p { font-weight: 400; letter-spacing: 0; }
#sm-final { position: relative; overflow: hidden; color: #fff; text-align: center; }
#sm-final .final-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#sm-final .final-bg img { display: block; width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }
#sm-final .final-bg::after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(59,59,59,0.98); mix-blend-mode: multiply; }
#sm-final .final-inner { position: relative; }
#sm-final .label { font-family: "jubilat", serif; font-weight: 400; letter-spacing: 0.14em; }
#sm-final h2 { font-weight: 700; letter-spacing: 0.01em; }
#sm-final .btn { line-height: 1; }
#sm-final .btn a { display: inline-block; border: 1px solid #fff; color: #fff; font-weight: 500; letter-spacing: 0.05em; position: relative; }
.sm-fix-btn { display: none !important; }

@media screen and (min-width: 768px),print {

/* LP専用ヘッダー */
.sm-header { position: fixed; top: 0; left: 0; width: 100%; min-width: 1280px; height: 100px; background: #fff; z-index: 10; }
.sm-header .sm-logo { padding: 32px 36px; line-height: 1; }
.sm-header .sm-logo img { width: 199px; height: 36px; }
.sm-header .sm-head-btn { position: absolute; top: 15px; right: 15px; }
.sm-header .sm-head-btn a { display: block; width: 240px; height: 70px; line-height: 70px; background: #1A1A1A; color: #fff; font-size: 18px; font-weight: 500; letter-spacing: 0.05em; text-align: center; position: relative; }
.sm-header .arr { width: 15px; height: 8px; margin-top: -4px; right: 17px; }

/* MV */
#sm-mv { position: relative; height: 800px; overflow: hidden; }
#sm-mv .mv-photo { display: -webkit-box; display: -ms-flexbox; display: flex; height: 800px; position: relative; }
#sm-mv .mv-photo picture { display: block; width: 50%; height: 800px; }
#sm-mv .mv-photo img { width: 100%; height: 800px; -o-object-fit: cover; object-fit: cover; }
#sm-mv .mv-photo::after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(59,59,59,0.9); mix-blend-mode: multiply; }
#sm-mv .mv-inner { position: absolute; top: 0; left: 0; width: 100%; padding-top: 182px; text-align: center; color: #fff; }
#sm-mv h1 { font-size: 56px; font-weight: 700; line-height: 100px; letter-spacing: 0.01em; }
#sm-mv h1 .big { font-size: 80px; color: #F81616; line-height: 1; border-bottom: 3px solid #F81616; padding-bottom: 2px; margin: 0 4px; }
#sm-mv .lead { font-size: 16px; line-height: 30px; margin-top: 45px; }
#sm-mv .btn { margin-top: 38px; line-height: 1; }
#sm-mv .btn a { display: inline-block; width: 396px; height: 70px; line-height: 68px; border: 1px solid #fff; color: #fff; font-size: 18px; font-weight: 500; letter-spacing: 0.05em; position: relative; }
#sm-mv .arr { width: 15px; height: 8px; margin-top: -4px; right: 32px; }
#sm-mv .note { font-size: 16px; line-height: 30px; margin-top: 30px; }

/* 共通パーツ（セクション） */
#sm-main .inner-Box { width: 1100px; margin: 0 auto; position: relative; }
.sm-sec { padding-top: 127px; }
.sm-sec .sec-label { font-size: 14px; line-height: 28px; }
.sm-sec .sec-label .num::after { height: 12px; margin: 0 9px; }
.sm-sec h2 { font-size: 42px; line-height: 68px; margin-top: 10px; }
.sm-sec .sec-lead { font-size: 16px; line-height: 30px; margin-top: 12px; }

/* 01 EMPATHY */
#sm-empathy { padding-top: 45px; }
.sm-sec .check-list { width: 760px; margin: 34px auto 0; padding: 37px 100px 40px; }
.sm-sec .check-list li { padding: 0 0 12px 34px; margin-bottom: 18px; font-size: 16px; line-height: 28px; }
.sm-sec .check-list li::before { top: 2px; width: 22px; height: 22px; border-radius: 3px; background-size: 12px 8px; }
.sm-band { margin-top: 40px; height: 220px; }
.sm-band p { font-size: 28px; line-height: 54px; }

/* 02 REALITY */
.reality-list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-line-pack: start; align-content: flex-start; margin-top: 36px; }
.reality-list li { width: 520px; margin-bottom: 40px; padding-bottom: 34px; }
.reality-list li:nth-last-child(-n+2) { margin-bottom: 0; }
.reality-list .hd { min-height: 100px; padding: 25px 20px; }
.reality-list .hd::before { left: 11px; top: 9px; width: 40px; height: 39px; }
.reality-list .hd .num { left: 11px; top: 4px; font-size: 18px; line-height: 28px; }
.reality-list .hd .ttl { font-size: 26px; line-height: 40px; }
.reality-list .pic img { height: 260px; }
.reality-list .txt { padding: 20px 19px 0; font-size: 16px; line-height: 30px; }

/* 03 LEARN */
.point-list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-top: 36px; }
.point-list li { width: 548px; margin-bottom: 2px; padding: 37px 50px 39px; }
.point-list li.wide { width: 1100px; margin-bottom: 0; padding-top: 29px; display: -webkit-box; display: -ms-flexbox; display: flex; }
.point-list li.wide .pt { width: 131px; margin-top: 8px; -ms-flex-negative: 0; flex-shrink: 0; }
.point-list li.wide .bd { -webkit-box-flex: 1; -ms-flex: 1; flex: 1; }
.point-list .pt { font-size: 14px; line-height: 28px; }
.point-list .ttl { font-size: 24px; line-height: 60px; }
.point-list .txt { font-size: 16px; line-height: 30px; margin-top: 25px; }

/* 04 TRANSFORM */
.tf-wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-top: 34px; }
.tf-wrap .col { width: 530px; }
.tf-wrap .pill { height: 60px; line-height: 60px; border-radius: 30px; font-size: 24px; }
.tf-wrap .box { margin-top: 13px; }
.tf-wrap .before .box { padding: 26px 25px 29px; }
.tf-wrap .before .box::after { right: -27px; top: 116px; border-top: 29px solid transparent; border-bottom: 29px solid transparent; border-left: 27px solid #2C2C2C; }
.tf-wrap .before .box li { padding: 15px 0 9px; font-size: 16px; line-height: 30px; }
.tf-wrap .after .box { padding: 24px 23px 27px; }
.tf-wrap .after .box li { padding: 15px 0 9px; font-size: 18px; line-height: 30px; }
.tf-band { margin-top: 40px; height: 160px; }
.tf-band p { font-size: 28px; line-height: 46px; }

/* 05 SPEAKER */
.speaker-wrap { display: -webkit-box; display: -ms-flexbox; display: flex; margin-top: 44px; padding-bottom: 21px; }
.speaker-wrap .photo { width: 462px; -ms-flex-negative: 0; flex-shrink: 0; }
.speaker-wrap .photo img { height: 540px; }
.speaker-wrap .prof { width: 589px; margin-left: 49px; padding-top: 30px; }
.speaker-wrap .prof .head { display: -webkit-box; display: -ms-flexbox; display: flex; }
.speaker-wrap .prof .name-col { width: 199px; -ms-flex-negative: 0; flex-shrink: 0; }
.speaker-wrap .prof .name { font-size: 26px; line-height: 30px; }
.speaker-wrap .prof .en { font-size: 11px; line-height: 30px; margin-top: -7px; }
.speaker-wrap .prof .titles { font-size: 14px; line-height: 24px; margin-top: -6px; }
.speaker-wrap .prof .bio { margin-top: 19px; padding-top: 20px; font-size: 16px; line-height: 30px; }
.speaker-wrap .prof .bio p + p { margin-top: 30px; }
.speaker-wrap .prof .tags { margin-top: 24px; }
.speaker-wrap .prof .tags li { height: 42px; line-height: 42px; padding: 0 14px; font-size: 16px; margin: 0 10px 7px 0; }

/* 06 VOICES */
.voice-list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-line-pack: start; align-content: flex-start; margin-top: 34px; }
.voice-list li { width: 530px; padding: 30px 24px 28px; margin-bottom: 40px; }
.voice-list li.wide { width: 1100px; margin-bottom: 0; padding-bottom: 38px; display: -webkit-box; display: -ms-flexbox; display: flex; }
.voice-list .head .icon { width: 50px; height: 50px; }
.voice-list .head > div { margin-left: 26px; }
.voice-list .ttl { font-size: 24px; line-height: 38px; }
.voice-list .meta { font-size: 14px; line-height: 30px; margin-top: 7px; }
.voice-list .txt { margin-top: 17px; padding-top: 18px; font-size: 16px; line-height: 30px; }
.voice-list li.wide .head { width: 433px; -ms-flex-negative: 0; flex-shrink: 0; }
.voice-list li.wide .txt { border-top: 0; margin-top: 0; padding-top: 0; -webkit-box-flex: 1; -ms-flex: 1; flex: 1; }

/* 07 BENEFITS */
.sm-sec .benefit-list { width: 1100px; height: 240px; padding: 37px 170px 26px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-line-pack: start; align-content: flex-start; }
.sm-sec .benefit-list li { width: 360px; }
.sm-sec .benefit-list li:nth-child(n+4) { margin-left: 40px; }

/* 08 DETAIL */
#sm-detail, #fformtop { scroll-margin-top: 100px; }
.detail-list { width: 555px; margin: 34px auto 0; background: #fff; padding: 33px 0 48px; position: relative; }
.detail-list::before { content: ""; position: absolute; top: 0; bottom: 0; left: 50%; width: 1100px; margin-left: -550px; background: #fff; }
.detail-list .row { position: relative; margin-bottom: 11px; }
.detail-list .row:last-child { margin-bottom: 0; }
.detail-list dt { width: 125px; height: 44px; line-height: 44px; font-size: 16px; }
.detail-list dd { width: 420px; margin-left: 10px; padding: 8px 0 7px 10px; min-height: 44px; font-size: 16px; line-height: 28px; }
#sm-detail .sm-form { margin-top: 27px; }
#sm-detail .form-Box { padding: 0; }
#sm-detail .form-in-Box { width: 1100px; padding: 70px 50px 40px; }

/* 09 FAQ */
#sm-faq { padding-bottom: 110px; }
#sm-faq h2 { font-size: 36px; line-height: 60px; }
.faq-list { margin-top: 34px; }
.faq-list li { padding: 38px 50px 46px 80px; margin-bottom: 10px; }
.faq-list li:last-child { margin-bottom: 0; }
.faq-list .mark { width: 39px; height: 39px; line-height: 39px; font-size: 18px; }
.faq-list .q { padding-bottom: 13px; }
.faq-list .q p { margin-left: 17px; font-size: 24px; line-height: 28px; }
.faq-list .a { margin-top: 17px; }
.faq-list .a p { margin: 7px 0 0 17px; font-size: 16px; line-height: 28px; }

/* FINAL MESSAGE */
#sm-final { height: 990px; }
#sm-final .final-inner { padding-top: 153px; }
#sm-final .label { font-size: 16px; line-height: 28px; }
#sm-final h2 { font-size: 56px; line-height: 90px; margin-top: 13px; }
#sm-final .txt { font-size: 16px; line-height: 28px; margin-top: 40px; }
#sm-final .btn { margin-top: 48px; }
#sm-final .btn a { width: 396px; height: 70px; line-height: 68px; font-size: 18px; }
#sm-final .arr { width: 15px; height: 8px; margin-top: -4px; right: 32px; }
#sm-final .note { font-size: 16px; line-height: 30px; margin-top: 10px; }
#sm-final .copy { font-size: 14px; line-height: 30px; margin-top: 203px; }

}

@media screen and (max-width: 767px) {

/* LP専用ヘッダー */
.sm-header { position: relative; height: 16.91vw; background: #fff; }
.sm-header .sm-logo { padding: 5vw 0 0 4.6vw; line-height: 1; }
.sm-header .sm-logo img { height: 6.61vw; width: auto; }

/* MV */
#sm-mv { position: relative; overflow: hidden; }
#sm-mv .mv-photo { position: relative; }
#sm-mv .mv-photo picture { display: block; }
#sm-mv .mv-photo .photo01 img { width: 100%; height: 74.88vw; -o-object-fit: cover; object-fit: cover; }
#sm-mv .mv-photo .photo02 img { width: 100%; height: 72.46vw; -o-object-fit: cover; object-fit: cover; }
#sm-mv .mv-photo::after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(59,59,59,0.9); mix-blend-mode: multiply; }
#sm-mv .mv-inner { position: absolute; top: 0; left: 0; width: 100%; padding: 17.15vw 4vw 0; text-align: center; color: #fff; }
#sm-mv h1 { font-size: 8.21vw; font-weight: 700; line-height: 13.53vw; letter-spacing: 0.01em; }
#sm-mv h1 .big { font-size: 11.59vw; color: #F81616; line-height: 1; border-bottom: 2px solid #F81616; padding-bottom: 0.5vw; margin: 0 0.5vw; }
#sm-mv .lead { font-size: 3.86vw; line-height: 7.25vw; margin-top: 14.01vw; }
#sm-mv .btn { margin-top: 6.28vw; line-height: 1; }
#sm-mv .btn a { display: inline-block; width: 79.71vw; height: 16.91vw; line-height: 16.42vw; border: 1px solid #fff; color: #fff; font-size: 4.35vw; font-weight: 500; letter-spacing: 0.05em; position: relative; }
#sm-mv .arr { width: 3.62vw; height: 1.93vw; margin-top: -0.97vw; right: 4.35vw; }
#sm-mv .note { font-size: 3.86vw; line-height: 7.25vw; margin-top: 4.35vw; }

/* 共通パーツ（セクション） */
.sm-sec { padding-top: 13.29vw; }
.sm-sec .sec-label { font-size: 3.38vw; line-height: 6.76vw; }
.sm-sec .sec-label .num::after { height: 2.9vw; margin: 0 2.17vw; }
.sm-sec h2 { font-size: 6.04vw; line-height: 9.42vw; margin-top: 3.14vw; }
.sm-sec .sec-lead { font-size: 3.86vw; line-height: 7.25vw; margin-top: 6.04vw; }

/* 01 EMPATHY */
.sm-sec .check-list { margin: 7.73vw 4.11vw 0; padding: 4.59vw 4.83vw 6.28vw; }
.sm-sec .check-list li { padding: 0 0 2.66vw 8.21vw; margin-bottom: 4.35vw; font-size: 3.86vw; line-height: 6.76vw; }
.sm-sec .check-list li::before { top: 0.48vw; width: 5.31vw; height: 5.31vw; border-radius: 0.72vw; background-size: 2.9vw 1.93vw; }
.sm-band { margin-top: 12.08vw; height: 65.22vw; padding: 0 3vw; }
.sm-band p { font-size: 5.07vw; line-height: 9.66vw; }

/* 02 REALITY */
#sm-reality { padding-bottom: 1.69vw; }
.reality-list { margin: 10.14vw 4.11vw 0; }
.reality-list li { margin-bottom: 7.25vw; padding-bottom: 6.04vw; }
.reality-list li:last-child { margin-bottom: 0; }
.reality-list .hd { min-height: 24.15vw; padding: 5.8vw 3vw; }
.reality-list .hd::before { left: 2.66vw; top: 2.17vw; width: 9.66vw; height: 9.42vw; }
.reality-list .hd .num { left: 2.66vw; top: 0.97vw; font-size: 4.35vw; line-height: 6.76vw; }
.reality-list .hd .ttl { font-size: 5.56vw; line-height: 7.73vw; }
.reality-list .pic img { height: 53.14vw; }
.reality-list .txt { padding: 4.83vw 4.83vw 0; font-size: 3.86vw; line-height: 7.25vw; }

/* 03 LEARN */
.point-list { margin: 8.94vw 4.11vw 0; }
.point-list li { margin-bottom: 2.42vw; padding: 5.31vw 4.83vw 4.59vw; }
.point-list li:last-child { margin-bottom: 0; }
.point-list .pt { font-size: 3.38vw; line-height: 6.76vw; }
.point-list .ttl { font-size: 5.56vw; line-height: 9.18vw; margin-top: 2.9vw; padding-bottom: 0.5vw; }
.point-list .txt { font-size: 3.86vw; line-height: 7.25vw; margin-top: 6.28vw; }

/* 04 TRANSFORM */
.tf-wrap { margin: 6.52vw 4.11vw 0; }
.tf-wrap .pill { height: 14.49vw; line-height: 14.49vw; border-radius: 7.25vw; font-size: 5.8vw; }
.tf-wrap .box { margin-top: 3.14vw; }
.tf-wrap .before .box { padding: 5.8vw 4.83vw 7vw; }
.tf-wrap .before .box::after { left: 50%; bottom: -6.52vw; margin-left: -7vw; border-left: 7vw solid transparent; border-right: 7vw solid transparent; border-top: 6.52vw solid #2C2C2C; }
.tf-wrap .before .box li { padding: 3.38vw 0 2.42vw; font-size: 3.86vw; line-height: 7.25vw; }
.tf-wrap .after { margin-top: 9.42vw; }
.tf-wrap .after .box { padding: 5.8vw 5.56vw 5.8vw; }
.tf-wrap .after .box li { padding: 3.62vw 0 2.17vw; font-size: 4.35vw; line-height: 7.25vw; }
.tf-band { margin-top: 10.87vw; height: 36.23vw; }
.tf-band p { font-size: 5.07vw; line-height: 9.66vw; }

/* 05 SPEAKER */
#sm-speaker { padding-bottom: 4.11vw; }
.speaker-wrap { margin: 6.52vw 4.11vw 0; }
.speaker-wrap .photo img { height: 53.14vw; }
.speaker-wrap .prof { padding-top: 8.21vw; }
.speaker-wrap .prof .name { font-size: 6.28vw; line-height: 7.25vw; }
.speaker-wrap .prof .en { font-size: 2.66vw; line-height: 7.25vw; margin-top: -1.69vw; }
.speaker-wrap .prof .titles { font-size: 3.38vw; line-height: 5.8vw; margin-top: 2.66vw; }
.speaker-wrap .prof .bio { margin-top: 4.59vw; padding-top: 4.83vw; font-size: 3.86vw; line-height: 7.25vw; }
.speaker-wrap .prof .bio p + p { margin-top: 7.25vw; }
.speaker-wrap .prof .tags { margin-top: 5.8vw; }
.speaker-wrap .prof .tags li { height: 10.14vw; line-height: 10.14vw; padding: 0 3.38vw; font-size: 3.86vw; margin: 0 2.42vw 1.69vw 0; }

/* 06 VOICES */
#sm-voices { padding-bottom: 2.9vw; }
.voice-list { margin: 7.73vw 4.11vw 0; }
.voice-list li { padding: 7.25vw 5.8vw 7vw; margin-bottom: 7.25vw; }
.voice-list li:last-child { margin-bottom: 0; }
.voice-list .head .icon { width: 12.08vw; height: 12.08vw; }
.voice-list .head > div { margin-left: 6.28vw; }
.voice-list .ttl { font-size: 5.07vw; line-height: 8.21vw; }
.voice-list .meta { font-size: 3.38vw; line-height: 5.8vw; margin-top: 3.14vw; }
.voice-list .txt { margin-top: 3.14vw; padding-top: 4.35vw; font-size: 3.86vw; line-height: 7.25vw; }

/* 07 BENEFITS */
.sm-sec .benefit-list { margin-top: 6.52vw; padding-top: 4.83vw; }

/* 08 DETAIL */
#sm-detail { padding-bottom: 2.9vw; }
.detail-list { margin: 6.52vw 4.11vw 0; background: #fff; padding: 5.56vw 4.83vw 2.42vw; }
.detail-list .row { display: block; }
.detail-list dt { height: 10.63vw; line-height: 10.63vw; font-size: 3.86vw; }
.detail-list dd { border-bottom: 0; padding: 2.9vw 0 3.14vw; font-size: 3.86vw; line-height: 6.76vw; }
#sm-detail .sm-form { margin-top: 4.83vw; }
#sm-detail .form-Box { padding: 0; margin: 0 4.11vw; }
#sm-detail .form-Box .form-in-Box { padding: 9vw 3.9vw 6vw; }

/* 09 FAQ */
#sm-faq { padding-bottom: 19.32vw; }
.faq-list { margin: 6.52vw 4.11vw 0; }
.faq-list li { padding: 9.18vw 4.83vw 6.28vw; margin-bottom: 3.62vw; }
.faq-list li:last-child { margin-bottom: 0; }
.faq-list .mark { width: 9.42vw; height: 9.42vw; line-height: 9.42vw; font-size: 4.35vw; }
.faq-list .q { padding-bottom: 3.14vw; }
.faq-list .q p { margin-left: 4.11vw; font-size: 4.35vw; line-height: 6.76vw; }
.faq-list .a { margin-top: 4.11vw; }
.faq-list .a p { margin: 1.69vw 0 0 4.11vw; font-size: 3.86vw; line-height: 6.76vw; }

/* FINAL MESSAGE */
#sm-final .final-inner { padding: 11.59vw 4vw 4.11vw; }
#sm-final .label { font-size: 3.38vw; line-height: 6.76vw; }
#sm-final h2 { font-size: 8.21vw; line-height: 12.8vw; margin-top: 2.9vw; }
#sm-final .txt { font-size: 3.86vw; line-height: 6.76vw; margin-top: 4.59vw; }
#sm-final .btn { margin-top: 6.76vw; }
#sm-final .btn a { width: 79.71vw; height: 16.91vw; line-height: 16.42vw; font-size: 4.35vw; }
#sm-final .arr { width: 3.62vw; height: 1.93vw; margin-top: -0.97vw; right: 4.35vw; }
#sm-final .note { font-size: 3.86vw; line-height: 7.25vw; margin-top: 4.35vw; }
#sm-final .copy { font-size: 3.38vw; line-height: 7.25vw; margin-top: 10.63vw; }

/* SP 下部固定ボタン */
body { padding-bottom: 16.91vw; }
.sm-fix-btn { display: block !important; position: fixed; bottom: 0; left: 0; width: 100%; z-index: 996; line-height: 1; }
.sm-fix-btn a { display: block; height: 16.91vw; line-height: 16.91vw; background: #1A1A1A; color: #fff; text-align: center; font-size: 4.35vw; font-weight: 500; letter-spacing: 0.05em; }
#sm-main .sm-fix-btn .arr { display: inline-block; position: static; width: 2.66vw; height: 1.93vw; margin-left: 2.42vw; vertical-align: middle; }

}
