@charset "utf-8"; //========================================================================== //_l-footer.scss //========================================================================== //----------------------------------------------------------------- //.l-footer //----------------------------------------------------------------- .l-footer { background-color: #222; &__inner01 { margin: 0 auto; max-width: 1120px; padding: 60px 20px 40px; @include smMax { width: 100%; padding: sm_vw(40) sm_vw(80) sm_vw(60); } } &__menu01 { display: flex; flex-wrap: wrap; width: 100%; @include smMax { display: block; } &__box { font-size: 16px; font-weight: 400; @include lgMax { @include smMin { width: 25%; } } @include smMax { font-size: sm_vw(32); } a { @include hover { opacity: 0.7; .ico { &.is-arrow { &::before { transform: translate(10px,50%); } } } } } .menuTtl { color: #fff; width: 100%; display: block; @include smMax { padding: 0; } .ico { @include smMax { position: relative; padding-right: sm_vw(45); } &.is-arrow { position: relative; padding-right: 30px; @include smMax { padding-right: sm_vw(45); } &::before { @include smMin { content: ""; position: absolute; right: 0; bottom: calc(50% + 2px); transform: translate(0,50%); width: 19px; height: 6px; background: transparent url("../images/ico_arrow02_w.png") 0 0 no-repeat; background-size: 100% auto; backface-visibility: hidden; @include transition; } @include smMax { content: ""; position: absolute; right: 0; bottom: calc(50% + 0.267vw); transform: translate(0,50%); width: sm_vw(25); height: sm_vw(9); background: transparent url("../images/ico_arrow02-s_w_sp.png") 0 0 no-repeat; background-size: 100% auto; backface-visibility: hidden; } } } } &.active { .ico { &::after { @include smMax { opacity: 0; } } } } &.js-clickMenu { .ico { &::before { @include smMax { content: ""; position: absolute; right: 0; bottom: 50%; transform: translate(0,50%); width: sm_vw(24); height: 1px; border-bottom: 1px solid #fff; } } &::after { @include smMax { content: ""; position: absolute; right: 0; bottom: 50%; transform: translate(0,50%) rotate(90deg); width: sm_vw(24); height: 1px; border-bottom: 1px solid #fff; @include transition; } } } } &.js-clickMenu_ftsp { .ico { &::before { @include smMax { content: ""; position: absolute; right: 0; bottom: 50%; transform: translate(0,50%); width: sm_vw(24); height: 1px; border-bottom: 1px solid #fff; } } &::after { @include smMax { content: ""; position: absolute; right: 0; bottom: 50%; transform: translate(0,50%) rotate(90deg); width: sm_vw(24); height: 1px; border-bottom: 1px solid #fff; @include transition; } } } } } &:nth-child(1) { @include lgMin { width: 210px; } @include smMax { width: 100%; } } &:nth-child(2) { @include lgMin { width: 225px; } @include smMax { width: 100%; } } &:nth-child(3) { @include lgMin { width: 230px; } @include smMax { width: 100%; } @include smMin { div + div { margin-top: 30px; } } } &:nth-child(4) { position: relative; @include lgMin { width: 222px; } @include smMax { width: 100%; } @include smMin { .l-footer__subMenu { li { &:nth-child(3){ position: absolute; top: 45px; left: 240px; margin-top: 0; } &:nth-child(4){ position: absolute; top: 90px; left: 240px; margin-top: 0; } } } } } &:nth-child(5) { @include lgMin { width: 193px; } @include smMin { @include lgMax { margin-top: 38px; li { white-space: nowrap; } } } @include smMax { width: 100%; } } } &__boxPC { @include smMin { margin-top: 30px; } } &__boxSP { @include smMax { margin-top: sm_vw(20); } } } .l-footer__menu01__boxSP + .l-footer__menu01__boxSP { @include smMax { margin-top: sm_vw(28); } } &__subMenu { margin-top: 10px; @include smMin { display: block !important; } @include smMax { margin-top: 0; display: none; } > ul { @include smMax { padding-top: sm_vw(14); } > li { font-size: 14px; font-weight: 400; @include smMax { font-size: sm_vw(28); } + li { margin-top: 10px; @include smMax { margin-top: sm_vw(-6); } } > a { position: relative; color: #ccc; padding-left: 17px; width: 100%; display: block; @include smMax { padding: sm_vw(18) 0 sm_vw(18) sm_vw(44); } &::before { content: ""; position: absolute; bottom: 50%; left: 2px; transform: translate(0,50%); width: 8px; height: 1px; border-bottom: 1px solid #ccc; backface-visibility: hidden; @include transition; @include smMax { width: sm_vw(20); } } @include hover { opacity: 0.7; &::before { transform: translate(5px,50%); } } .ico { &.is-blank { position: relative; padding-right: 20px; @include smMax { padding-right: sm_vw(35); } &::before { content: ""; position: absolute; right: 0; bottom: 50%; transform: translate(0,50%); width: 12px; height: 12px; background: transparent url("../images/ico_blank01_gr.png") 0 0 no-repeat; background-size: 100% auto; backface-visibility: hidden; @include transition; @include smMax { width: sm_vw(16); height: sm_vw(16); } } } } } } } } .l-footer__subMenu + .menuTtl { margin-top: 38px; @include smMax { margin-top: sm_vw(28); } } &__menu02 { display: flex; margin-top: 90px; @include smMax { margin-top: sm_vw(40); display: block; } li { font-size: 12px; font-weight: 400; + li { margin-left: 30px; @include smMax { margin: sm_vw(0) 0 0 0; } } a { position: relative; color: #ccc; display: block; width: 100%; @include smMax { padding: sm_vw(10) 0; } .ico { &.is-blank { position: relative; padding-right: 20px; @include smMax { padding-right: sm_vw(35); } &::before { content: ""; position: absolute; right: 0; bottom: 50%; transform: translate(0,50%); width: 12px; height: 12px; background: transparent url("../images/ico_blank01_gr.png") 0 0 no-repeat; background-size: 100% auto; backface-visibility: hidden; @include transition; @include smMax { width: sm_vw(16); height: sm_vw(16); } } } } @include hover { text-decoration: underline; } } } } &__bnr01 { display: flex; border-top: 1px solid #777; border-bottom: 1px solid #777; li { width: 50%; height: 98px; @include smMax { height: sm_vw(128); } a { position: relative; display: flex; width: 100%; height: 100%; justify-content: center; align-items: center; @include hover { background-color: rgba(255,255,255,0.1); } &::before { content: ""; position: absolute; right: 20px; bottom: 20px; transform: translate(0,50%); width: 12px; height: 12px; background: transparent url("../images/ico_blank01_gr.png") 0 0 no-repeat; background-size: 100% auto; backface-visibility: hidden; @include smMax { right: sm_vw(10); bottom: sm_vw(20); width: sm_vw(16); height: sm_vw(16); } } } &:nth-child(1) { border-right: 1px solid #777; @include smMax { line-height: 1; } img { width: 250px; @include smMax { width: sm_vw(294); } } } &:nth-child(2) { @include smMax { line-height: 1; } img { width: 140px; @include smMax { width: sm_vw(166); } } } } } &__outer { background-color: #fff; } &__inner02 { position: relative; margin: 0 auto; max-width: 1120px; padding: 0 20px; height: 120px; display: flex; align-items: center; @include smMax { width: 100%; height: sm_vw(200); padding: 0 sm_vw(40); flex-direction: column; align-items: flex-start; justify-content: center; } } &__logo { display: flex; justify-content: center; align-items: center; width: 153px; height: 100%; margin-right: 30px; @include smMax { width: sm_vw(250); height: auto; margin-right: 0; } } &__copyright { font-size: 11px; font-weight: 400; color: #777; @include smMax { margin-top: sm_vw(20); font-size: sm_vw(18); } } &__privacy { position: absolute; bottom: 50%; right: 20px; width: 80px; transform: translateY(50%); @include smMax { right: sm_vw(40); width: sm_vw(100); } a { @include hover { opacity: 0.7; } } } } @media print{ .is-print { .l-footer { display: none; } } }