/* LESS Document */ /* ハンバーガーメニュー */ @font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 300; font-stretch: normal; src: url(https://fonts.gstatic.com/s/opensans/v35/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVc.ttf) format('truetype'); } @font-face { font-family: 'Pacifico'; font-style: normal; font-weight: 400; src: url(https://fonts.gstatic.com/s/pacifico/v22/FwZY7-Qmy14u9lezJ-6H6Mw.ttf) format('truetype'); } .flex-center { display: flex; align-items: center; justify-content: center; } /********/ .sp_fix_header { background-color: rgba(200, 20, 50, 0.85); width: 100%; height: 50px; position: fixed; z-index: 1000; top: 0; } .sp_head_logo { position: fixed; z-index: 5; top: 5px; left: 5px; max-width: 90px; } .sp_nav_info_ar { width: 100%; padding: 0 5vw; } .sp_nav_info_ar .logo { max-width: 180px; margin: 25px auto 10px; } .sp_nav_info_ar .ttl { font-family: 'Ubuntu', sans-serif; font-feature-settings: 1.6rem; font-weight: bold; margin: 0 0 5px; } .sp_nav_info_ar .add { margin: 0 auto 20px; } .sp_nav_info_ar .tel { max-width: 220px; margin: 0 auto; } /********/ .outer-menu { position: fixed; top: 0vh; right: 50px; z-index: 10; } .outer-menu .checkbox-toggle { position: absolute; top: 0; left: 0; z-index: 2; cursor: pointer; width: 50px; height: 50px; opacity: 0; } .outer-menu .checkbox-toggle:checked + .hamburger > div { transform: rotate(135deg); } .outer-menu .checkbox-toggle:checked + .hamburger > div:before, .outer-menu .checkbox-toggle:checked + .hamburger > div:after { top: 0; transform: rotate(90deg); } .outer-menu .checkbox-toggle:checked + .hamburger > div:after { opacity: 0; } .outer-menu .checkbox-toggle:checked ~ .menu { pointer-events: auto; visibility: visible; background: rgba(200, 20, 50, 0.75); } .outer-menu .checkbox-toggle:checked ~ .menu > div { transform: scale(1); transition-duration: 0.75s; } .outer-menu .checkbox-toggle:checked ~ .menu > div > div { opacity: 1; transition: opacity 0.4s ease 0.4s; } .outer-menu .checkbox-toggle:hover + .hamburger { box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.1); } .outer-menu .checkbox-toggle:checked:hover + .hamburger > div { transform: rotate(225deg); } .outer-menu .hamburger { position: absolute; top: 0; left: 0; z-index: 1; width: 50px; height: 50px; padding: 0.5em 1em; background: rgba(200, 20, 50, 0.75); border-radius: 0 0.12em 0.12em 0; cursor: pointer; transition: box-shadow 0.4s ease; -webkit-backface-visibility: hidden; backface-visibility: hidden; display: flex; align-items: center; justify-content: center; } .outer-menu .hamburger > div { position: relative; flex: none; width: 100%; height: 2px; background: #FEFEFE; transition: all 0.4s ease; display: flex; align-items: center; justify-content: center; } .outer-menu .hamburger > div:before, .outer-menu .hamburger > div:after { content: ''; position: absolute; z-index: 1; top: -10px; left: 0; width: 100%; height: 2px; background: inherit; transition: all 0.4s ease; } .outer-menu .hamburger > div:after { top: 10px; } .outer-menu .menu { position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; visibility: hidden; overflow: hidden; -webkit-backface-visibility: hidden; backface-visibility: hidden; outline: 1px solid transparent; display: flex; align-items: center; justify-content: center; } .outer-menu .menu > div { width: 200vw; height: 200vw; color: #FEFEFE; background: rgba(200, 20, 50, 0.97); border-radius: 50%; transition: all 0.4s ease; flex: none; transform: scale(0); -webkit-backface-visibility: hidden; backface-visibility: hidden; overflow: hidden; display: flex; align-items: center; justify-content: center; } .outer-menu .menu > div > div { text-align: center; max-width: 100vw; max-height: 100vh; opacity: 0; transition: opacity 0.4s ease; overflow-y: auto; flex: none; /*display: flex; align-items: center; justify-content: center;*/ } .outer-menu .menu > div > div > ul { list-style: none; padding: 0 1em; margin: 0; display: block; max-height: 100vh; } .outer-menu .menu > div > div > ul > li { padding: 0; margin: 0.75em 1em; font-family: 'Ubuntu', sans-serif; font-size: 1.8rem; font-weight: bold; display: block; } .outer-menu .menu > div > div > ul > li > a { position: relative; display: inline; cursor: pointer; transition: color 0.4s ease; color: #fff; } .outer-menu .menu > div > div > ul > li > a:hover { color: #e5e5e5; text-decoration: none; } .outer-menu .menu > div > div > ul > li > a:hover:after { width: 100%; } .outer-menu .menu > div > div > ul > li > a:after { content: ''; position: absolute; z-index: 1; bottom: -0.15em; left: 0; width: 0; height: 2px; background: #e5e5e5; transition: width 0.4s ease; }