// ブレイクポイントを指定 $tab: 960px; $sp: 767px; @mixin tab { @media screen and (max-width: ($tab)) { @content; } } @mixin sp { @media screen and (max-width: ($sp)) { @content; } } .l-header { position: fixed; // box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16); width: 100vw; top: 0; left: 0; z-index: 1000; @include tab { background: #fff; } .l-header_bar { display: flex; align-items: center; justify-content: space-between; max-width: 1500px; margin: 0 auto; padding: 30px 50px; @media screen and (max-width: 1200px) { padding: 30px; } @include tab { padding: 15px 5vw 15px 2.5vw; } .l-header_logo { a { display: flex; align-items: center; gap: 8px; font-size: 18px; font-weight: 500; color: #fff; @include tab { color: #1A007C; } @include sp { font-size: 8px; } img { @include sp { width: 33px; } } } } .l-header_function { display: flex; align-items: center; gap: 54px; @media screen and (max-width: 1200px) { gap: 27px; } .l-header_nav { @include tab { display: none; } } .l-header_nav_items { display: flex; align-items: center; gap: 40px; @media screen and (max-width: 1200px) { gap: 20px; } .l-header_nav_item { a { font-family: "Inter", sans-serif; color: #fff; font-size: 18px; font-weight: 500; &:hover { color: #46D8FF; } } } } .l-header_other { display: flex; align-items: center; gap: 32px; div { width: 98px; display: flex; align-items: center; justify-content: center; background: #fff; height: 30px; border-radius: 50px; border: 1px solid #1A007C; font-weight: 500; @include tab { margin-right: 60px; } @include sp { width: 86px; height: 25px; } a { display: flex; color: #1A007C; width: 46px; height: 25px; justify-content: center; align-items: center; border-radius: 50px; font-size: 18px; font-weight: 500; @include sp { width: 41px; height: 20px; font-size: 14px; } } a.active { background: #1A007C; color: #fff; width: 46px; height: 25px; @include sp { width: 41px; height: 20px; } } } .contact_link { @media screen and (max-width: 1200px) { width: 165px; } @include tab { display: none; } } } } .l-header_toggleDrawer { display: none; @media screen and (max-width: 960px) { display: block; background: #fff; height: 100%; width: 75px; position: absolute; right: 0; cursor: pointer; .l-header_toggleDrawer_btn { span { display: block; position: absolute; top: 0px; bottom: 0; left: unset; right: 5vw; width: 32px; height: 0px; border: 2px solid #0F0143; margin: auto; border-radius: 50px; -webkit-transition: background-color 0.25s ease, top 0.15s 0.15s ease, bottom 0.15s 0.15s ease, -webkit-transform 0.15s ease; transition: background-color 0.25s ease, top 0.15s 0.15s ease, bottom 0.15s 0.15s ease, -webkit-transform 0.15s ease; transition: background-color 0.25s ease, top 0.15s 0.15s ease, bottom 0.15s 0.15s ease, transform 0.15s ease; transition: background-color 0.25s ease, top 0.15s 0.15s ease, bottom 0.15s 0.15s ease, transform 0.15s ease, -webkit-transform 0.15s ease; cursor: pointer; &:first-child { top: -20px; width: 40px; } &:last-child { width: 24px; top: 20px; } } } &.open { .l-header_toggleDrawer_btn{ span { &:first-child { top: 0; -webkit-transform: rotate(45deg); transform: rotate(45deg); } &:nth-child(2) { -webkit-transform: rotate(45deg); transform: rotate(45deg); opacity: 0; } &:last-child { top: 0; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); width: 40px; } } } } } } } box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16); background: #fff; .l-header_bar { .l-header_logo { a { color: #1A007C; } } .l-header_function { .l-header_nav_items { .l-header_nav_item { a { color: #1A007C; &:hover { color: #46D8FF; } } } } } } } .l-header-en { display: none; } .l-spmenu { display: none; position: fixed; right: 0; top: 90px; width: 100%; height: calc(100vh - 90px); padding: 25px 10vw; background: #fff; @include sp { height: calc(100vh - 63px); top: 63px; } &.open { display: block; z-index: 1000; } .l-spmenu-nav-list { margin-bottom: 40px; .l-spmenu-nav-list-item_heading { font-size: 20px; padding-left: 14px; font-weight: 500; position: relative; margin-bottom: 24px; display: block; width: fit-content; &:before { position: absolute; content: ""; width: 6px; height: 6px; border-radius: 50px; background: #1A007C; left: 0; top: 50%; transform: translateY(-50%); } } } .l-header_other { div { width: 98px; display: flex; align-items: center; justify-content: center; background: #fff; height: 30px; border-radius: 50px; border: 1px solid #1A007C; font-weight: 500; margin-bottom: 24px; a { display: flex; color: #1A007C; width: 46px; height: 25px; justify-content: center; align-items: center; border-radius: 50px; font-size: 18px; font-weight: 500; } a.active { background: #1A007C; color: #fff; width: 46px; height: 25px; } } } }