@charset "utf-8"; @import "foundation/_setting.scss"; //========================================================================== //choice.scss //========================================================================== .choice { &__mv { position: relative; @include smMin { width: 100%; height: 480px; @media screen and (max-width: 1460px) { height: 32.87671232876712vw; } } @include smMax { height: sm_vw(780); } &::before { content: ""; position: absolute; top: 0; right: 50%; transform: translateX(50%); width: 1920px; height: 100%; background: transparent url("../images/choice/choice_mv.jpg") 50% 50% no-repeat; background-size: 100% auto; @media screen and (max-width: 1460px) { width: 131.50684931506848vw; } @include smMax { width: 100%; background: transparent url("../images/choice/choice_mv_sp.jpg") 50% 50% no-repeat; background-size: 100% auto; } } &__inner { position: relative; margin: 0 auto; width: 100%; max-width: 1120px; height: 100%; padding: 0 20px; @include smMax { width: 100%; padding: 0; } } &__ttl { display: flex; justify-content: center; flex-direction: column; height: 100%; @include smMax { padding: 0 0 sm_vw(30) sm_vw(40); justify-content: flex-end; } .cat { display: flex; justify-content: center; align-items: center; padding-bottom: 2px; width: 76px; height: 26px; font-size: 16px; font-weight: 500; color: #fff; background-color: $colorRed; @include smMax { margin-bottom: sm_vw(10); padding-bottom: sm_vw(2); width: sm_vw(100); height: sm_vw(36); font-size: sm_vw(22); } } .jpn { display: block; font-size: 40px; font-weight: 500; color: #222; letter-spacing: 0.1em; @include smMax { margin-bottom: sm_vw(10); font-size: sm_vw(58); line-height: 1.2; } } .en { display: block; font-size: 16px; font-weight: 400; font-family: $font-en02; color: $colorRed; letter-spacing: 0.1em; @include smMax { font-size: sm_vw(28); } } } } &__breadcrumb { margin: 0 auto; padding-top: 15px; background-color: #fff; @include smMax { padding-top: sm_vw(30); } } &__contentArea { padding-bottom: 150px; background-color: #fff; @include smMax { padding-bottom: sm_vw(160); } } &__box01 { margin-top: 60px; @include smMax { margin-top: sm_vw(70); } .txt01 { margin-top: 20px; font-size: 16px; line-height: 2.25; text-align: center; @include smMax { margin-top: sm_vw(36); font-size: sm_vw(30); line-height: 1.85; text-align: left; } } .list01 { display: flex; margin-top: 25px; @include smMax { margin-top: sm_vw(36); display: block; } li { margin-right: 30px; width: 340px; background-color: $colorRed; @include smMax { margin: 0 0 sm_vw(40) 0; width: 100%; } &:last-child { margin-right: 0; @include smMax { margin: 0; } } a { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; height: 100%; padding-bottom: 45px; @include smMax { flex-direction: row; padding: 0; text-align: left; } &::before { content: ""; position: absolute; bottom: 20px; right: 50%; transform: translateX(50%) rotate(-90deg); width: 12px; height: 18px; background-image: url("../images/ico_arrow01_w.svg"); background-position: 50% 50%; background-repeat: no-repeat; background-size: 100% 100%; @include transition; @include smMax { right: calc(50% - 16.7vw); bottom: sm_vw(16); width: sm_vw(12); height: sm_vw(18); } } @include hover { opacity: 0.85; &::before { bottom: 15px; } } .txtBox { padding: 0 15px; @include smMax { position: relative; padding: 0 sm_vw(30) sm_vw(10) sm_vw(38); flex: 1; } } .image { display: block; border: 2px solid $colorRed; @include smMax { width: sm_vw(253); border: 1px solid $colorRed; } } .num { display: block; margin: 22px auto 0; width: 27px; @include smMax { position: absolute; top: 0; width: sm_vw(27); margin: 0; } } .ttl { display: flex; justify-content: center; align-items: center; margin-top: 10px; font-size: 24px; font-weight: 500; color: #fff; @include smMin { flex-wrap: wrap; } @include smMax { margin: 0; padding-left: sm_vw(40); font-size: sm_vw(32); justify-content: flex-start; } .border { display: flex; justify-content: center; align-items: center; margin: 4px 0 0 10px; padding-bottom: 2px; width: 76px; height: 20px; font-size: 11px; font-weight: 500; border: 1px solid #fff; @include smMax { margin: sm_vw(4) 0 0 sm_vw(8); width: sm_vw(100); height: sm_vw(28); padding-bottom: sm_vw(2); white-space: nowrap; span { font-size: sm_vw(20); transform: scale(0.7); } } } } .txt { margin-top: 10px; font-size: 14px; font-weight: 500; line-height: 1.85; color: #fff; @include smMax { font-size: sm_vw(23); line-height: 1.73; font-weight: 400; } } } } } } &__box02 { margin-top: 120px; @include smMax { margin-top: sm_vw(100); } &__ttlBox { background-color: #f0f1f1; .inner { position: relative; display: flex; justify-content: center; align-items: center; padding-bottom: 10px; height: 280px; @include smMax { padding-bottom: sm_vw(40); height: sm_vw(280); } .ttl { padding-top: 0; } .num { display: block; margin: 0 auto; width: 27px; @include smMax { margin: 0 auto sm_vw(10); width: sm_vw(27); } } .image { position: absolute; bottom: 50%; transform: translateY(50%); display: block; @include smMax { display: none; } &.image01 { right: 40px; width: 262px; } &.image02 { right: 40px; width: 275px; } &.image03 { right: 0; width: 300px; @include smMin { @media screen and (max-width: 950px) { right: -80px; } } } } } } &__inner { margin-top: 60px; @include smMax { margin-top: sm_vw(60); } .list01 { display: flex; @include smMax { display: block; } li { margin-right: 40px; width: 520px; @include smMax { margin: 0 0 sm_vw(50); width: 100%; } &:nth-child(2n) { margin-right: 0; @include smMax { margin: 0; } } .image { &.is-border { border: 1px solid #ccc; } } .txtBox { margin-top: 22px; @include smMax { margin-top: sm_vw(28); } .ttl{ font-size: 24px; font-weight: 500; text-align: center; @include smMax { font-size: sm_vw(36); } } .txt { margin-top: 10px; font-size: 16px; line-height: 1.87; @include smMax { margin-top: sm_vw(18); font-size: sm_vw(30); line-height: 1.85; } .is-red { color: $colorRed; } } } } } .btn { margin: 60px auto 0; width: 600px; @include smMax { margin: sm_vw(30) auto 0; width: 100%; } } } } &__box03 { margin-top: 120px; @include smMax { margin-top: sm_vw(100); } &__inner { padding: 70px 20px; background-color: #f0f1f1; @include smMax { padding: sm_vw(90) sm_vw(40); } .ttl { font-size: 32px; font-weight: 500; text-align: center; } .list01 { margin-top: 25px; display: flex; justify-content: center; @include smMax { display: block; } li { margin-right: 30px; width: 445px; @include smMax { margin: 0 0 sm_vw(30); width: 100%; } &:nth-child(2n) { margin-right: 0; @include smMax { margin: 0; } } .txtBox { margin-top: 22px; @include smMax { margin-top: sm_vw(28); } .ttl{ font-size: 24px; font-weight: 500; text-align: center; @include smMax { font-size: sm_vw(36); } } .txt { margin-top: 10px; font-size: 16px; line-height: 1.87; @include smMax { margin-top: sm_vw(18); font-size: sm_vw(30); line-height: 1.85; } .is-red { color: $colorRed; } } } } } .btn { margin: 60px auto 0; width: 600px; } } } &__box04 { margin-top: 100px; &__inner { .list01 { margin-top: 35px; display: flex; @include smMin { justify-content: center; } @include smMax { margin-top: sm_vw(30); flex-wrap: wrap; } li { width: 180px; font-size: 16px; font-weight: 400; text-align: center; @include smMin { margin-right: 90px; &:nth-child(3n) { margin-right: 0; } } @include smMax { margin-right: sm_vw(20); width: sm_vw(325); &:nth-child(2n) { margin-right: 0; } &:nth-child(n+3) { margin-top: sm_vw(60); } } .thumbs { display: block; margin: 0 auto 15px; height: 200px; @include transition; @include smMax { margin: 0 auto sm_vw(14); height: sm_vw(250); } &.thumbs01 { width: 78px; @include smMax { width: sm_vw(97); } } &.thumbs02 { width: 112px; @include smMax { width: sm_vw(139); } } &.thumbs03 { width: 143px; @include smMax { width: sm_vw(179); } } } .ico { position: relative; display: inline-block; padding-left: 17px; @include smMax { padding-left: sm_vw(32); white-space: nowrap; } &::before { content: ""; position: absolute; bottom: 50%; left: 0; transform: translateY(50%) rotate(180deg); width: 7px; height: 12px; background: transparent url("../images/ico_arrow01.svg") 0 0 no-repeat; background-size: 100% 100%; @include smMax { width: sm_vw(12); height: sm_vw(20); } } } @include hover { color: $colorBlue; .thumbs { opacity: 0.7; } } } } } } }