@charset "utf-8"; //========================================================================== //_form.scss //========================================================================== .p-form-step { position: relative; margin: 30px auto 60px; display: flex; justify-content: center; width: 330px; @include smMax { margin: sm_vw(70) auto sm_vw(125); width: sm_vw(500); } &::before { content: ""; position: absolute; bottom: 50%; transform: translateY(50%); width: 100%; height: 1px; border-bottom: 1px solid #999; } li { position: relative; margin-right: 60px; @include smMax { margin-right: sm_vw(100); } &:last-child { margin-right: 0; } .num { display: flex; justify-content: center; align-items: center; width: 70px; height: 70px; font-size: 26px; font-weight: 400; font-family: $font-en01; color: #999; border: 1px solid #999; background-color: #fff; border-radius: 35px; @include smMax { width: sm_vw(100); height: sm_vw(100); font-size: sm_vw(40); border-radius: sm_vw(50); } } .txt { position: absolute; top: calc(100% + 0.3em); width: 100%; display: block; font-size: 16px; text-align: center; @include smMax { font-size: sm_vw(24); } } &.current { .num { font-weight: 700; color: #fff; border: 1px solid $colorBlue; background-color: $colorBlue; } .txt { color: $colorBlue; font-weight: 700; } } } } .p-form-table { width: 100%; border-top: 1px solid #ccc; th { position: relative; padding: 23px 0 23px 20px; border-bottom: 1px solid #ccc; text-align: left; width: 220px; vertical-align: top; @include smMax { padding: sm_vw(40) 0; width: 100%; display: block; border-bottom: none; } .wrap { display: flex; width: 100%; align-items: flex-end; .txt { font-size: 18px; font-weight: 500; @include smMin { flex: 1; } @include smMax { margin-right: sm_vw(30); font-size: sm_vw(32); } } .is-necessary { margin-bottom: 0.4em; padding-bottom: 0.1em; display: flex; justify-content: center; align-items: center; border-radius: 2px; width: 40px; height: 18px; font-size: 12px; line-height: 1; color: #fff; background-color: $colorRed03; @include smMax { width: sm_vw(64); height: sm_vw(30); font-size: sm_vw(20); } } .is-any { margin-bottom: 0.4em; padding-bottom: 0.1em; display: flex; justify-content: center; align-items: center; border-radius: 2px; width: 40px; height: 18px; font-size: 12px; line-height: 1; color: #fff; background-color: #999; @include smMax { width: sm_vw(64); height: sm_vw(30); font-size: sm_vw(20); } } } } td { padding: 23px 0 23px 80px; border-bottom: 1px solid #ccc; text-align: left; font-size: 16px; vertical-align: top; @include smMax { padding: 0 0 sm_vw(56) 0; display: block; font-size: sm_vw(28); } } &__line01 { display: flex; .item { display: flex; width: 50%; align-items: center; @include smMin { padding-right: 20px; } @include smMax { width: sm_vw(325); } .txt { display: block; width: 40px; @include smMax { width: sm_vw(65); font-size: sm_vw(24); } &.is-large_sp { @include smMax { font-size: sm_vw(28); } } } input.p-form-input { flex: 1; display: block; width: 100%; } } .item + .item { @include smMin { padding-left: 20px; } @include smMax { margin-left: sm_vw(20); } } } &__line02 { display: flex; .item { display: flex; width: 100%; align-items: center; @include smMax { width: 100%; } .txt { display: block; width: 40px; @include smMax { width: sm_vw(65); } } input.p-form-input { flex: 1; display: block; width: 100%; } } } &__line03 { display: flex; .item { display: flex; width: 280px; align-items: center; @include smMax { width: 100%; } .txt { display: block; width: 40px; @include smMax { width: sm_vw(65); } } input.p-form-input { flex: 1; display: block; width: 100%; } } } .line + .line { margin-top: 14px; @include smMax { margin-top: sm_vw(30); } } .caution { margin-top: 10px; font-size: 14px; color: #666; @include smMax { margin-top: sm_vw(20); font-size: sm_vw(24); } } } input.p-form-input { padding: 0 15px; height: 40px; font-size: 15px; border-radius: 4px; border: 1px solid #f2f2f2; background-color: #f2f2f2; outline: none; @include smMax { padding: 0 sm_vw(30); height: sm_vw(90); font-size: 16px; } &::placeholder { color: #bbb; } &.is-error { border: 1px solid $colorRed03; background-color: #fff5f4; &.is-bgGray { background-color: #fff5f4; } &.is-bgWhite { background-color: #fff5f4; } &.is-border { border: 1px solid $colorRed03; } } &.is-bgGray { background-color: #f2f2f2; } &.is-bgWhite { background-color: #fff; } &.is-square { border-radius: 0; } &.is-border { border: 1px solid $colorBorder; } &.is-largePC { @include smMin { height: 50px; } } &.is-smallSP { @include smMax { height: sm_vw(80); } } } span.p-form-input { padding: 0 15px; display: flex; align-items: center; height: 40px; font-size: 15px; border-radius: 4px; border: 1px solid #f2f2f2; background-color: #f2f2f2; outline: none; @include smMax { padding: 0 sm_vw(30); height: sm_vw(90); font-size: 16px; } &::placeholder { color: #bbb; } &.is-error { border: 1px solid $colorRed03; background-color: #fff5f4; &.is-bgGray { background-color: #fff5f4; } &.is-bgWhite { background-color: #fff5f4; } &.is-border { border: 1px solid $colorRed03; } } &.is-bgGray { background-color: #f2f2f2; } &.is-bgWhite { background-color: #fff; } &.is-square { border-radius: 0; } &.is-border { border: 1px solid $colorBorder; } &.is-largePC { @include smMin { height: 50px; } } &.is-smallSP { @include smMax { height: sm_vw(80); } } } textarea.p-form-textarea { padding: 15px 15px; height: 185px; font-size: 15px; line-height: 1.6; border-radius: 4px; border: 1px solid #f2f2f2; background-color: #f2f2f2; width: 100%; outline: none; @include smMax { padding: sm_vw(30) sm_vw(30); height: sm_vw(360); font-size: sm_vw(28); } &::placeholder { color: #bbb; } &.is-error { border: 1px solid $colorRed03; background-color: #fff5f4; } } .p-form-error { font-size: 14px; color: $colorRed03; @include smMax { font-size: sm_vw(24); } &.is-ico { display: block; padding: 2px 0 2px 25px; background: transparent url("../images/ico_attention.png") 0 50% no-repeat; background-size: 18px auto; @include smMax { padding: 0 0 0 sm_vw(40); background-size: sm_vw(26) sm_vw(26); background-position: 0 0.3em; } } } .line + .p-form-error { margin-top: 10px; @include smMax { margin-top: sm_vw(20); } } .caution + .p-form-error { margin-top: 5px; @include smMax { margin-top: sm_vw(10); } } .policyCheckBox { margin-top: 60px; text-align: center; @include smMax { margin-top: sm_vw(44); } .checkBox01 { display: none; } .checkBox01 + label { position: relative; font-size: 16px; font-weight: 400; color: #222; cursor: pointer; padding-left: 48px; @include smMax { padding-left: sm_vw(70); font-size: sm_vw(24); } span { position: absolute; left: 0; bottom: 50%; transform: translateY(50%); width: 30px; height: 30px; display: block; border-radius: 4px; background: #ccc url("../images/ico_check01_w.svg") 50% 50% no-repeat; background-size: 20px auto; @include smMax { width: sm_vw(48); height: sm_vw(48); background-size: sm_vw(31) sm_vw(20); } } } .checkBox01:checked + label { span { background-color: $colorBlue; } } } .p-form__checkBox01 { .checkBox01 { display: none; } .checkBox01 + label { position: relative; font-size: 14px; font-weight: 400; color: #222; cursor: pointer; padding-left: 30px; @include smMax { padding-left: sm_vw(70); font-size: sm_vw(24); } span { position: absolute; left: 0; bottom: 50%; transform: translateY(50%); width: 20px; height: 20px; display: block; background: #f2f2f2; border: 1px solid $colorBorder; @include smMax { width: sm_vw(48); height: sm_vw(48); background-size: sm_vw(31) sm_vw(20); } } } .checkBox01:checked + label { span { border: 1px solid $colorBlue; background: $colorBlue url("../images/ico_check01_w.svg") 50% 50% no-repeat; background-size: 13px auto; } } } .p-form__btn01 { position: relative; width: 445px; margin: 40px auto 0; @include smMax { margin: sm_vw(50) auto 0; width: 100%; } input { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; padding: 0; z-index: 2; + .c-btn-01 { @include transition; } @include hover { + .c-btn-01 { opacity: 0.7; .ico { &.is-arrow { &::before { transform: translate(10px,50%); } &.is-back { &::before { transform: translate(-10px,50%) scale(-1, 1); } } } } } } } input[disabled] { cursor: default; @include hover { + .c-btn-01 { opacity: 1; .ico { &.is-arrow { &::before { transform: translate(0,50%); } &.is-back { &::before { transform: translate(0,50%) scale(-1, 1); } } } } } } } input[disabled] + .c-btn-01 { background: #ccc; color: #aaa; opacity: 1; } &.btnBack { margin-top: 20px; @include smMax { margin-top: sm_vw(20); } } &.btnTop { .c-btn-01 { font-weight: 500; @include smMax { font-weight: 400; } } } }