@charset "UTF-8";
/*
Theme Name: zenn_theme
Theme URI:
Description:
Version: 1.0
Author: Takashi Yoshishita
Author URI:
creation date : 2022/03/03
latest update : 2022/03/03
*/

/*スマホで要素を高さいっぱいに表示する（iosにも対応）*/
html {
  height: -webkit-fill-available;
  font-size: 16px;
}

@media (max-width: 768px) {
  html {
    font-size: 14px;
  }
}

@font-face {
  font-family: "Noto Sans CJK JP", sans-serif;
  src: url(./assets/Fonts/NotoSansCJKjp-DemiLight.otf);
}

body {
  font-family: "Noto Sans JP", sans-serif;
  /* font-family: 'Heebo', sans-serif; */
  /* font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; */
  /* font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; */
  color: #333;
  min-height: 100vh;
  min-height: -webkit-fill-available;
  font-feature-settings: "palt";
}

@media (max-width: 768px) {
  body {
    width: 100%;
    min-width: 320px;
    overflow-x: hidden;
  }
  body.fixed {
    width: 100%;
    height: 100%;
    position: fixed;
  }
}

a {
  color: #333;
  text-decoration: none;
  transition-duration: 0.4s;
}

ul,
li {
  list-style: none;
  padding: 0;
}

.site_wrapper {
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  min-height: 100vh;
}

@media (max-width: 768px) {
  .site_wrapper {
    flex-direction: column;
  }
}

.sp,
.none {
  display: none;
}

@media (max-width: 768px) {
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
}

img {
  height: auto;
}

.mt40 {
  margin-top: 40px;
}
@media (max-width: 768px) {
}

/*
--------------------------------------

module

--------------------------------------
*/

.ly_main {
  width: calc(100% - 280px);
}

@media (max-width: 768px) {
  .ly_main {
    width: 100%;
    margin-top: 65px;
  }

  .ly_main__top {
    margin-top: 0;
  }
}

.ly_inner {
  max-width: 1020px;
  padding-left: 90px;
  margin: 0 auto;
}

.ly_inner_figure {
  max-width: 1020px;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .site_wrapper {
    margin-right: 0;
  }

  .ly_inner {
    max-width: 480px;
    margin: 0 auto;
    padding: 0 25px;
  }

  .ly_inner__auto {
    max-width: 480px;
    margin: 0 auto;
  }
}

.ly_inner_h2 {
  padding: 70px 0 50px;
  font-size: 26px;
  letter-spacing: 0.2em;
  line-height: 2;
  font-weight: bold;
}

.ly_inner_h2__pd {
  padding: 100px 0 30px;
}

@media (max-width: 768px) {
  .ly_inner_h2 {
    padding: 35px 0 30px;
    font-size: 16px;
    letter-spacing: 0.12em;
  }
}

.ly_inner_textBox {
  padding: 0 80px 0 0;
}

@media (max-width: 768px) {
  .ly_inner_textBox {
    padding: 0;
  }
}

.ly_inner_textBox_text {
  padding: 0 0 40px;
  font-size: 15px;
  font-weight: 400;
  line-height: 2.6;
  letter-spacing: 0.1em;
}

@media (max-width: 768px) {
  .ly_inner_textBox_text {
    padding-bottom: 30px;
    line-height: 2;
    letter-spacing: 0.08em;
  }
}

.ly_inner_textBox_text__advantage {
  font-size: 17px;
  letter-spacing: 0.15em;
  line-height: 2.3;
}

@media (max-width: 768px) {
  .ly_inner_textBox_text__advantage {
    font-size: 15px;
    letter-spacing: 0.09em;
    line-height: 2;
    text-align: justify;
  }
}

.ly_inner_textBox_text__category {
  margin-top: 38px;
  font-size: 16px;
  letter-spacing: 0.15em;
  line-height: 2.1875;
  text-align: center;
}

@media (max-width: 768px) {
  .ly_inner_textBox_text__category {
    margin-top: 30px;
    padding-bottom: 40px;
    font-size: 15px;
    line-height: 2;
    text-align: start;
  }
}

.ly_inner_textBox_text__02 {
  letter-spacing: 0.19em;
}

.tac {
  text-align: center;
}

.mb50 {
  margin-bottom: 50px;
}

.pb40 {
  padding-bottom: 40px;
}

.pl20 {
  padding-left: 20px;
}

@media (max-width: 768px) {
  .tac_sp {
    text-align: center;
  }

  .mb50 {
    margin-bottom: 0;
  }

  .pt10_sp {
    padding-top: 10px;
  }

  .pb0_sp {
    padding-bottom: 0 !important;
  }
}

.el_btn_question_box {
  text-align: center;
}

.el_btn_question {
  position: relative;
  display: inline-block;
  width: 400px;
  max-width: 100%;
  padding: 10px;
  margin: 70px auto;
  border-bottom: 2px solid #333;
  text-align: center;
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0.2em;
}

@media (max-width: 768px) {
  .el_btn_question {
    width: 230px;
    padding: 4px 0 10px;
    margin: 45px auto 50px;
  }
}

.el_btn_question:before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 5px;
  background-color: #c1ff00;
  transition-duration: .1s;
  z-index: -1;
}

.el_btn_question:hover:before {
  height: 21px;
}

.el_btn_question:after {
  content: '';
  position: absolute;
  top: 50%;
  right: calc(50% - 96px);
  width: 18px;
  height: 13px;
  transform: translate(0, -50%);
  background-image: url(./assets/img/svg/arrow.svg);
  background-size: cover;
  background-repeat: no-repeat;
}

.green_underline {
  position: relative;
}

.green_underline::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 10px;
  z-index: -1;
  background-color: #d6ff00;
  transform: scale(0.001, 1);
  transition: 0.4s;
  transform-origin: left;
}

@media (max-width: 768px) {
  .green_underline::after {
    content: none;
  }
}

.green_underline:hover::after {
  transform: translate(0, 0);
}

.greenLine::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 10px;
  background-color: #d6ff00;
  z-index: -1;
}

.greenLine.active::before {
  opacity: 0;
}

.green::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 0;
  height: 100%;
  background-color: #c1ff00;
  z-index: -1;
  transition: 0.2s;
  transition-delay: 0.3s;
}

.green:hover::before {
  width: 100%;
}

.green::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #c1ff00;
  z-index: -1;
  transition: 0.2s;
}

.green:hover::after {
  width: 0;
}

.green_herf::before {
  height: 35%;
  top: auto;
  bottom: 3px;
}

.green_herf::after {
  height: 35%;
  top: auto;
  bottom: 3px;
}


.green_top {
  position: relative;
}

.green_top::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 10px;
  z-index: -1;
  background-color: #d6ff00;
}

.arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 72px;
  display: block;
  width: 18px;
  height: 13px;
  transform: translate(0, -50%);
  background-image: url('./assets/img/svg/arrow.svg');
  background-size: cover;
  background-repeat: no-repeat;
  transition-duration: .1s;
}

.arrow:hover:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 72px;
  display: block;
  width: 48px;
  height: 13px;
  transform: translate(0, -50%);
  background-image: url('./assets/img/svg/arrow_long.svg');
  background-size: cover;
  background-repeat: no-repeat;
}

.arrow_works::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 75px;
  display: block;
  width: 10px;
  height: 7px;
  transform: translate(0, -50%);
  background-image: url('./assets/img/svg/arrow_small.svg');
  background-size: cover;
  background-repeat: no-repeat;
}

.arrow_more::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 70px;
  display: block;
  width: 10px;
  height: 7px;
  transform: translate(0, -50%);
  background-image: url('./assets/img/svg/arrow_small.svg');
  background-size: cover;
  background-repeat: no-repeat;
}

/*
--------------------------------------

inview

--------------------------------------
*/

.visible {
  position: relative;
  overflow: hidden;
  opacity: 0;
}

.effect_slideIn {
  transform: translateX(-30px);
}

.effect_slideUp {
  transform: translateY(30px);
}

.effect {
  opacity: 1;
  transition-duration: 1s;
}

.effect.effect_slideIn {
  transform: translateX(0px);
  animation-name: effect_slideIn;
}

.effect.effect_slideUp {
  transform: translateY(0px);
  animation-name: effect_slideUp;
}

@keyframes effect_slideIn {
  0% {
    opacity: 0;
    transform: translateX(-30px);
  }
  100% {
    opacity: 1;
    transform: translateX(0px);
  }
}

@keyframes effect_slideUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}

.visible__delay_03.effect {
  transition-delay: 0.3s;
}

.visible__delay_04.effect {
  transition-delay: 0.4s;
}

.visible__delay_05.effect {
  transition-delay: 0.5s;
}

.visible__delay_06.effect {
  transition-delay: 0.6s;
}

.visible__delay_07.effect {
  transition-delay: 0.7s;
}

.visible__delay_08.effect {
  transition-delay: 0.8s;
}

.visible__delay_09.effect {
  transition-delay: 0.9s;
}

@media (max-width: 768px) {
  .visible__delay_00_sp.effect {
    transition-delay: 0s;
  }

  .visible__delay_03_sp.effect {
    transition-delay: 0.3s;
  }

  .visible__delay_04_sp.effect {
    transition-delay: 0.4s;
  }

  .visible__delay_05_sp.effect {
    transition-delay: 0.5s;
  }

  .visible__delay_06_sp.effect {
    transition-delay: 0.6s;
  }

  .visible__delay_07_sp.effect {
    transition-delay: 0.7s;
  }

  .visible__delay_08_sp.effect {
    transition-delay: 0.8s;
  }

  .visible__delay_09_sp.effect {
    transition-delay: 0.9s;
  }
}

/*
--------------------------------------

slick

--------------------------------------
*/
.slick-arrow {
  position: absolute;
  right: 48px;
  background-color: transparent;
  border: none;
  outline: none;
  appearance: none;
  transform: rotateZ(90deg);
  cursor: pointer;
  z-index: 5;
  font-size: 12px;
  color: #fff;
}

@media (max-width: 768px) {
  .slick-arrow {
    display: none !important;
  }
}

.slick-prev {
  top: 50px;
}

.slick-next {
  top: 80px;
}

.slick-slide img {
  transform: scale(1);
}

.slick-active img {
  animation-name: effect_scale;
  animation-duration: 4s;
}

@keyframes effect_scale {
  0% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}

/*
--------------------------------------

lightbox

--------------------------------------
*/
.lg-backdrop {
  background-color: rgba(0, 0, 0, .9) !important;
}

/*
--------------------------------------

header

--------------------------------------
*/

.ly_header {
  position: sticky;
  top: 0;
  bottom: 0;
  width: 280px;
  height: 100vh;
  padding: 0 60px;
  background: #ffffff;
  z-index: 10;
}

@media (max-width: 768px) {
  .ly_header {
    width: 100%;
    height: auto;
    padding: 0;
    text-align: center;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.ly_header_logo {
  width: 160px;
  margin: 55px 0 35px;
  opacity: 1;
  transition-duration: 0.3s;
  animation-name: fadeIn;
}

.ly_header_logo.active {
  opacity: 0;
  animation-name: fadeOut;
  pointer-events: none;
}

.ly_header_logo img {
  height: auto;
}

.ly_header_nav_list {
  margin-bottom: 15px;
}

.ly_header_nav_list_item {
  margin-bottom: 10px;
}

.ly_header_nav_list_item a {
  display: inline-block;
  border-bottom: 1px solid #333;
  font-size: 14px;
  letter-spacing: 0.18em;
  font-weight: bold;
}

@media (max-width: 768px) {
  .ly_header_menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: #eeece9;
    opacity: 0;
    z-index: -1;
    visibility: hidden;
  }

  .ly_header_menu.active {
    opacity: 1;
    visibility: visible;
  }

  .ly_header_head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    /* box-shadow: 0 1px 5px #ccc; */
  }

  .ly_header_head.active {
    box-shadow: none;
  }

  .ly_header_logo {
    width: 75px;
    margin: 0;
  }

  .ly_header_nav_list {
    margin: 65px 0 0;
  }

  .ly_header_nav_list_item {
    margin-top: 10px;
    margin-bottom: 10px;
  }

  .ly_header_nav_list_item a {
    border-bottom: none;
    padding: 10px;
  }
}

.ly_header_otherMenu_list {
  line-height: 1;
  margin-top: 25px;
}

.ly_header_otherMenu_list_item {
  line-height: 1;
}

.ly_header_otherMenu_list_item a {
  position: relative;
  display: inline-block;
  padding-left: 10px;
  padding-right: 1px;
  margin-bottom: 8px;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.1em;
}

.ly_header_otherMenu_list_item a::before {
  content: "・";
  position: absolute;
  top: 50%;
  left: -2px;
  display: block;
  transform: translate(0, -50%);
}

@media (max-width: 768px) {
  .ly_header_otherMenu_list {
    margin-top: 10px;
  }

  .ly_header_otherMenu_list_item a {
    margin-bottom: 5px;
    padding: 10px;
    font-size: 13px;
    letter-spacing: 0.18em;
  }

  .ly_header_otherMenu_list_item a::before {
    display: none;
  }
}

.ly_header_onlineLogo {
  position: absolute;
  bottom: 60px;
  left: 60px;
  right: 63px;
  padding-top: 12px;
}

@media (max-width: 768px) {
  .ly_header_onlineLogo {
    position: static;
    width: 157px;
    padding: 0;
    margin: 60px auto 50px;
  }
}

.ly_header_onlineLogo::after {
  content: "";
  position: absolute;
  bottom: 0;
  display: block;
  width: 157px;
  height: 120px;
  background-color: #c1ff00;
  z-index: -1;
  transform: scale(1, 0.15) translateY(320px);
  transition: 0.4s;
}

.ly_header_onlineLogo:hover:after {
  transform: translate(0, 0);
}

@media (max-width: 768px) {
  .ly_header_onlineLogo::after {
    display: none;
  }
}

#js-menu_trigger {
  display: none;
}

@media (max-width: 768px) {
  #js-menu_trigger {
    display: block;
    width: 30px;
    height: 11px;
    background-image: url(./assets/img/2x/menu_black@2x.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }

  #js-menu_trigger.active {
    width: 15px;
    height: 15px;
    margin-right: 7px;
    background-image: url(./assets/img/2x/menu_x@2x.png) !important;
    z-index: 101;
  }
}

@media (max-width: 768px) {
  .ly_header.transparent {
    background-color: transparent;
  }

  .ly_header.transparent .ly_header_head {
    box-shadow: none;
  }

  .ly_header.transparent .ly_header_logo {
    visibility: hidden;
    opacity: 0;
  }

  .ly_header.transparent #js-menu_trigger {
    background-image: url(./assets/img/2x/menu_white@2x.png);
  }
}

/*
--------------------------------------

commonMv

--------------------------------------
*/

.ly_commonMv_bg {
  width: 100%;
  height: 270px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

@media (max-width: 768px) {
  .ly_commonMv_bg {
    height: 138px;
  }
}

.ly_commonMv_bg__about {
  background-image: url(./assets//img/1x/about_header.jpg);
}

.ly_commonMv_bg__advantage {
  background-image: url(./assets//img/1x/advantage_header.jpg);
}

.ly_commonMv_bg__works {
  background-image: url(./assets//img/1x/works_header.jpg);
}

@media (max-width: 768px) {
  .ly_commonMv_bg__about {
    background-image: url(./assets//img/2x/about_header@2x.jpg);
  }

  .ly_commonMv_bg__advantage {
    background-image: url(./assets//img/2x/advantage_header@2x.jpg);
  }

  .ly_commonMv_bg__works {
    background-image: url(./assets//img/2x/works_header@2x.jpg);
  }
}

.ly_commonMv_title {
  padding: 100px 0 0;
  color: #fff;
}

.ly_commonMv_title_h2 {
  font-family: "Heebo", sans-serif;
  font-size: 33px;
  letter-spacing: 0.065em;
  font-weight: 500;
}

.ly_commonMv_title_span {
  display: block;
  padding: 6px 0 0 2px;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 0.2em;
  line-height: 1.7;
}

@media (max-width: 768px) {
  .ly_commonMv_title {
    padding: 45px 0 0 0;
    color: #333;
  }

  .ly_commonMv_title_h2 {
    font-family: "Heebo", sans-serif;
    font-size: 24px;
    letter-spacing: 0.05em;
  }
}

/*
--------------------------------------

footer

--------------------------------------
*/

.ly_footer {
  width: 100%;
  background-image: url(./assets/img/1x/footer.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

@media (max-width: 768px) {
  .ly_footer {
    background-image: url(./assets/img/2x/footer@2x.jpg);
  }
}

.ly_footer_inner {
  position: relative;
  display: flex;
  justify-content: space-between;
  max-width: 1020px;
  margin: 0 auto;
}

.ly_footer_logo {
  padding-top: 60px;
  padding-left: 58px;
}

.ly_footer_box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  width: 690px;
  margin: 0 0 30px;
  padding: 80px 60px 0 0;
  color: #fff;
}

@media (max-width: 768px) {
  .ly_footer_inner {
    flex-direction: column;
    gap: 0;
    max-width: 480px;
    padding: 0 25px;
  }

  .ly_footer_logo {
    padding-top: 45px;
    padding-left: 0;
    width: 139px;
  }

  .ly_footer_box {
    grid-template-columns: 1fr;
    gap: 40px;
    width: 100%;
    margin: 70px 0 0;
    padding: 0;
  }
}

.ly_footer_title {
  padding-top: 3px;
  font-family: "Heebo", sans-serif;
  font-size: 27px;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1;
}

.ly_footer_subTitle {
  font-weight: bold;
  font-size: 13px;
  line-height: 1.5;
  letter-spacing: 0.18em;
}

@media (max-width: 768px) {
  .ly_footer_title {
    font-size: 24px;
  }
}

.ly_footer_text_box {
  padding-top: 13px;
}

.ly_footer_text {
  font-weight: 400;
  font-size: 13px;
  letter-spacing: 0.1em;
  line-height: 1.5;
}

.ly_footer_tel {
  padding-right: 15px;
  font-weight: 400;
  font-size: 13px;
  letter-spacing: 0.1em;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .ly_footer_text_box {
    padding-top: 15px;
  }
}

.ly_footer_map {
  position: relative;
  display: inline-block;
  margin-top: 12px;
  padding-left: 25px;
  font-family: "Heebo", sans-serif;
  font-weight: 500;
  font-size: 13px;
  letter-spacing: 0.03em;
  line-height: 1.9;
  color: #fff;
  cursor: pointer;
}

.ly_footer_map::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 3px;
  width: 13px;
  height: 22px;
  background-image: url(./assets/img/1x/google.png);
  background-size: 13px 22px;
  transform: translate(0, -50%);
  transition: 0.4s;
}

@media (max-width: 768px) {
  .ly_footer_map::before {
    background-image: url(./assets/img/2x/google@2x.png);
  }
}

.ly_footer_map:hover {
  color: #c1ff00;
}

.ly_footer_map:hover:before {
  background-image: url(./assets/img/1x/google_green.png);
}

.ly_footer_copyright {
  padding-top: 60px;
  font-family: "Heebo", sans-serif;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.03em;
  text-align: end;
}

@media (max-width: 768px) {
  .ly_footer_copyright {
    padding-top: 50px;
    padding-bottom: 40px;
    text-align: center;
  }
}

/*
--------------------------------------

main

--------------------------------------
*/

@media (max-width: 768px) {
  .ly_main_section {
    max-width: 480px;
    margin: 0 auto;
  }

  .ly_main_section__advantage {
    max-width: 100%;
  }
}

/*
--------------------------------------

top

--------------------------------------
*/

.ly_mv_section {
  position: relative;
  height: 100vh;
  background-color: #EEECE9;
}
@media (max-width: 768px) {
  .ly_mv_section {
    height: 600px;
  }
}

.ly_mv_img img {
  width: 100%;
  height: 100vh;
  object-fit: cover;
}
@media (max-width: 768px) {
  .ly_mv_img img {
    height: 600px;
  }
}

.slick_number {
  position: absolute;
  top: 117px;
  right: 50px;
  writing-mode: vertical-rl;
  font-size: 12px;
  color: #fff;
}
@media (max-width: 768px) {
  .slick_number {
    display: flex;
    justify-content: space-between;
    height: 96px;
    top: auto;
    bottom: 30px;
    right: 30px;
    text-orientation: upright;
  }
}

.slick_number .border {
  width: 1px;
  height: 10px;
  display: inline-block;
  background-color: #fff;
  margin: 7px 3px 7px 0;
}
@media (max-width: 768px) {
  .slick_number .border {
    display: none;
  }
}

.slick_transition_display {
  position: absolute;
  top: 0;
  right: 30px;
  width: 1px;
  height: 100vh;
  background-color: #fff;
}

@media (max-width: 768px) {
  .slick_transition_display {
    top: auto;
    bottom: 57px;
    right: 38px;
    height: 44px;
  }
}

.slick_transition_display:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 0;
  background-color: red;
}

.slick_transition_display.active:after {
  height: 100%;
  transition-duration: 2.9s;
  transition-timing-function: linear;
}

.el_mv_img {
  display: none;
}
@media (max-width: 768px) {
  .el_mv_img {
    position: absolute;
    bottom: 80px;
    left: 38px;
    display: block;
    width: 161px;
    height: auto;
  }
}

.ly_topAbout_section {
  padding-top: 70px;
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .ly_topAbout_section {
    padding: 0;
  }
}

.ly_topAbout_box {
  display: grid;
  grid-template-columns: 150px 680px;
  column-gap: 95px;
}

@media (max-width: 768px) {
  .ly_topAbout_box {
    display: block;
    margin-top: 45px;
    margin-bottom: 55px;
  }
}

.ly_topAbout_box_title {
  margin-top: 10px;
}

.ly_topAbout_box_heading {
  font-family: "Heebo", sans-serif;
  font-size: 28px;
  font-weight: 500;
  letter-spacing: .06em;
}

@media (max-width: 768px) {
  .ly_topAbout_box_heading {
    font-size: 24px;
  }
}

.ly_topAbout_box_subTitle {
  padding-left: 3px;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: .2em;
}

@media (max-width: 768px) {
  .ly_topAbout_box_subTitle {
    display: inline-block;
    margin-top: 5px;
  }
}

.ly_topAbout_box_paragraph {
  font-size: 17px;
  font-weight: bold;
  line-height: 3.05882;
  letter-spacing: .17em;
}

@media (max-width: 768px) {
  .ly_topAbout_box_paragraph {
    padding-top: 25px;
    font-size: 15px;
    line-height: 2;
    letter-spacing: .13em;
    text-align: justify;
  }
}

.ly_btn_about_box {
  display: inline-block;
  margin-top: 50px;
}

@media (max-width: 768px) {
  .ly_btn_about_box {
    margin-top: 20px;
  }
}

.el_btn_about {
  position: relative;
  display: inline-block;
  width: 127px;
  padding-left: 5px;
  margin-left: 4px;
  border-bottom: 2px solid #333;
  font-family: "Heebo", sans-serif;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.3em;
}

.ly_topBusiness_section {
  padding-top: 60px;
  padding-bottom: 25px;
  background-color: #F1EFEC;
}

@media (max-width: 768px) {
  .ly_topBusiness_section {
    padding-top: 45px;
    padding-bottom: 5px;
  }
}

.ly_topBusiness_heading {
  font-family: "Heebo", sans-serif;
  font-size: 28px;
  font-weight: 500;
  letter-spacing: .06em;
}

@media (max-width: 768px) {
  .ly_topBusiness_heading {
    font-size: 24px;
  }
}

.ly_topBusiness_subTitle {
  display: block;
  padding-left: 3px;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: .2em;
}

@media (max-width: 768px) {
  .ly_topBusiness_subTitle {
    display: inline-block;
    padding-top: 5px;
  }
}

.ly_topBusiness_list {
  display: grid;
  grid-template-columns: 392px 392px;
  column-gap: 50px;
  padding-top: 30px;
}

@media (max-width: 768px) {
  .ly_topBusiness_list {
    display: block;
    padding-top: 40px;
  }
}

.ly_topBusiness_item_anchor:hover .ly_topBusiness_item_img img {
  transform: scale(1.1);
}

.ly_topBusiness_item_anchor:hover .ly_topBusiness_item_title::before {
  transform: translate(0, 0);
}

.ly_topBusiness_item_anchor:hover .ly_topBusiness_item_btn::after {
  bottom: 0;
  width: 100%;
  height: 100%;
}

.ly_topBusiness_item {
  padding-bottom: 110px;
}

@media (max-width: 768px) {
  .ly_topBusiness_item {
    padding-bottom: 40px;
  }
}

.ly_topBusiness_item_img {
  overflow: hidden;
}

.ly_topBusiness_item_img img {
  transition-duration: .8s;
}

.ly_topBusiness_item_title_box {
  display: flex;
  justify-content: space-between;
  padding-top: 30px;
}

@media (max-width: 768px) {
  .ly_topBusiness_item_title_box {
    padding-top: 20px;
  }
}

.ly_topBusiness_item_title {
  position: relative;
  font-size: 17px;
  font-weight: bold;
  letter-spacing: .2em;
}

.ly_topBusiness_item_title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #000;
  transform: scale(0.001, 1);
  transition-duration: .4s;
  transform-origin: left;
}

.ly_topBusiness_item_btn {
  position: relative;
  width: 96px;
  height: 20px;
  padding: 5px 25px 4px;
  border-radius: 20px;
  font-family: "Heebo", sans-serif;
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: .1em;
  background-color: #fff;
  z-index: 0;
}

.ly_topBusiness_item_btn::after {
  content: "";
  position: absolute;
  bottom: 50%;
  left: 0;
  display: block;
  width: 0;
  height: 0;
  border-radius: 25px;
  background-color: #D6FF00;
  z-index: -1;
  transition: 0.2s;
}

.ly_topBusiness_item_heading {
  padding-top: 25px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: .12em;
}

.ly_topBusiness_item_text {
  padding-top: 10px;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: .1em;
}

.hp_pl0 {
  padding-left: 0 !important;
}

@media (max-width: 768px) {
  .md_pr0 {
    padding-right: 0px !important;
  }
}

.ly_topAdvantage_box {
  display: flex;
  margin-top: 25px;
}

@media (max-width: 768px) {
  .ly_topAdvantage_box {
    flex-direction: column;
    margin-top: 10px;
  }
}

.ly_topAdvantage_box:hover .ly_topAdvantage_img img {
  transform: scale(1.1);
}

.ly_topAdvantage_box:hover .ly_topAdvantage_heading,
.ly_topAdvantage_box:hover .ly_topAdvantage_subTitle,
.ly_topAdvantage_box:hover .ly_topAdvantage_paragraph {
  color: #C1FF00;
}

.ly_topAdvantage_box:hover .ly_topAdvantage_btn::after {
  bottom: 0;
  width: 100%;
  height: 100%;
}


.ly_topAdvantage_img {
  width: 510px;
  overflow: hidden;
}

.ly_topAdvantage_img img {
  transition-duration: .8s;
}

.ly_topAdvantage_text {
  width: 510px;
  padding: 65px 75px 0;
  text-align: center;
  background-color: #1D1D1F;
}

@media (max-width: 768px) {
  .ly_topAdvantage_img {
    width: 100%;
  }

  .ly_topAdvantage_text {
    width: 100%;
    padding: 0;
  }
}

.ly_topAdvantage_heading {
  font-family: "Heebo", sans-serif;
  font-size: 28px;
  font-weight: 500;
  letter-spacing: .06em;
  color: #F4F4F6;
  transition-duration: .8s;
}

@media (max-width: 768px) {
  .ly_topAdvantage_heading {
    margin-top: 45px;
    font-size: 24px;
  }
}

.ly_topAdvantage_subTitle {
  font-size: 13px;
  font-weight: bold;
  letter-spacing: .2em;
  color: #F4F4F6;
  transition-duration: .8s;
}

@media (max-width: 768px) {
  .ly_topAdvantage_subTitle {
    display: inline-block;
    padding-top: 3px;
  }
}

.ly_topAdvantage_paragraph {
  padding: 25px 0;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: .1em;
  color: #F4F4F6;
  text-align: justify;
  transition-duration: .8s;
}

@media (max-width: 768px) {
  .ly_topAdvantage_paragraph {
    padding: 25px;
  }
}

.ly_topAdvantage_btn {
  position: relative;
  display: inline-block;
  width: 96px;
  height: 20px;
  margin-top: 18px;
  padding: 5px 25px 4px 10px;
  border-radius: 20px;
  font-family: "Heebo", sans-serif;
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: .1em;
  color: #1D1D1F;
  background-color: #fff;
  z-index: 0;
}

@media (max-width: 768px) {
  .ly_topAdvantage_btn {
    margin-bottom: 50px;
  }
}

.ly_topAdvantage_btn::after {
  content: "";
  position: absolute;
  bottom: 50%;
  left: 0;
  display: block;
  width: 0;
  height: 0;
  border-radius: 25px;
  background-color: #D6FF00;
  z-index: -1;
  transition: 0.2s;
}

.ly_topWorks_inner {
  position: relative;
  margin-top: 80px;
  padding-left: 0;
  z-index: 1;
}

@media (max-width: 768px) {
  .ly_topWorks_inner {
    margin-top: 45px;
    margin-bottom: 50px;
  }
}

.ly_topWorks {
  display: flex;
  justify-content: space-between;
  padding-bottom: 80px;
  padding-left: 90px;
}

@media (max-width: 768px) {
  .ly_topWorks {
    flex-direction: column;
    padding-bottom: 0;
    padding-left: 25px;
  }
}

.ly_topWorks_title {
  width: 180px;
  font-family: "Heebo", sans-serif;
  font-size: 28px;
  letter-spacing: 0.03em;
}

@media (max-width: 768px) {
  .ly_topWorks_title {
    width: auto;
    margin: 0 auto;
    font-size: 24px;
    letter-spacing: .06em;
  }
}

.ly_topWorks_list {
  display: flex;
  flex-wrap: wrap;
  width: 690px;
  margin-right: 10px;
  gap: 18px;
}
@media (max-width: 768px) {
  .ly_topWorks_list {
    width: 100%;
    margin-top: 25px;
    margin-right: 0;
    gap: 10px;
  }
}

.ly_topOnline_section {
  position: relative;
  padding-top: 20px;
  padding-bottom: 25px;
  background-color: #F1EFEC;
}

@media (max-width: 768px) {
  .ly_topOnline_section {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.ly_topOnline_anchor:hover .ly_topOnline_btn::after {
  bottom: 0;
  width: 100%;
  height: 100%;
}

.ly_topOnline_img {
  position: relative;
}

.ly_topOnline_btn {
  position: absolute;
  bottom: 45px;
  left: 364px;
  display: inline-block;
  width: 96px;
  height: 20px;
  padding: 5px 25px 4px 20px;
  border-radius: 20px;
  font-family: "Heebo", sans-serif;
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: .1em;
  color: #1D1D1F;
  background-color: #fff;
  z-index: 0;
}

@media (max-width: 768px) {
  .ly_topOnline_btn {
    bottom: 8%;
    left: 50%;
    transform: translateX(-50%);
  }
}

.ly_topOnline_btn::after {
  content: "";
  position: absolute;
  bottom: 50%;
  left: 0;
  display: block;
  width: 0;
  height: 0;
  border-radius: 25px;
  background-color: #D6FF00;
  z-index: -1;
  transition: 0.2s;
}

.ly_inner__topContact {
  padding-left: 0;
}

@media (max-width: 768px) {
  .ly_inner__topContact {
    padding-right: 0;
  }
}

.el_btn_question__topContact {
  margin-top: 60px;
  margin-bottom: 80px;
}

@media (max-width: 768px) {
  .el_btn_question__topContact {
    margin-top: 45px;
    margin-bottom: 50px;
  }
}

/*
--------------------------------------

advantage

--------------------------------------
*/

.introductionMachine_box {
  width: 100%;
  margin: 55px auto 0;
}

@media (max-width: 768px) {
  .introductionMachine_box {
    margin: 5px auto 0;
  }
}

.ly_bgc_glay {
  background-color: #f1efec;
}

@media (max-width: 768px) {
  .ly_bgc_glay {
    margin-bottom: 10px;
    background-color: #eeece9;
  }
}

.introductionMachine {
  padding: 18px;
  font-size: 16px;
  text-align: center;
  letter-spacing: 0.16em;
}

@media (max-width: 768px) {
  .introductionMachine {
    max-width: 480px;
    padding: 20px;
    margin: auto;
    font-size: 14px;
  }
}

.bl_introductionMachine {
  position: relative;
  margin-top: 10px;
  padding: 55px 90px 65px;
  background-color: #f1efec;
}

@media (max-width: 768px) {
  .bl_introductionMachine {
    display: none;
    padding: 0 25px 0;
    margin-top: 0;
    background-color: #eeece9;
  }
}

@media (max-width: 768px) {
  .bl_introductionMachine_inner {
    max-width: 430px;
    padding: 30px 25px;
    margin: 0 auto;
    background-color: #fff;
  }
}

.bl_introductionMachine_title {
  padding: 0 0 45px;
  font-size: 21px;
  line-height: 2;
  letter-spacing: 0.18em;
  text-align: center;
}

@media (max-width: 768px) {
  .bl_introductionMachine_title {
    padding: 0 0 30px;
    font-size: 15px;
    font-weight: bold;
    letter-spacing: 0.14em;
    line-height: 1.6;
    text-align: start;
  }
}

.bl_introductionMachine_media {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  max-width: 840px;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .bl_introductionMachine_media {
    flex-direction: column;
  }
}

.bl_introductionMachine_media_imgWrapper img {
  width: 395px;
}

.bl_introductionMachine_media_body {
  width: 395px;
}

@media (max-width: 768px) {
  .bl_introductionMachine_media_imgWrapper img {
    width: 100%;
  }

  .bl_introductionMachine_media_body {
    width: 100%;
  }
}

.bl_introductionMachine_media_title {
  padding: 10px 0;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
}

.bl_introductionMachine_media_text {
  font-size: 16px;
  line-height: 1.8125;
  letter-spacing: 0.08em;
  text-align: justify;
  word-break: break-all;
}

@media (max-width: 768px) {
  .bl_introductionMachine_media_text {
    padding: 20px 0 20px 0;
    font-size: 14px;
    line-height: 1.857;
  }
}

.bl_introductionMachine_media_text_02 {
  margin-top: 5px;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.73333;
  letter-spacing: 0.08em;
}

@media (max-width: 768px) {
  .bl_introductionMachine_media_text_02 {
    padding-bottom: 20px;
  }
}

.bl_introductionMachine_media_subTitle {
  position: relative;
  margin-top: 45px;
  padding-bottom: 5px;
  border-bottom: 1px solid #000;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.08em;
}

@media (max-width: 768px) {
  .bl_introductionMachine_media_subTitle {
    margin-top: 0;
  }
}

.bl_introductionMachine_media_subTitle::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #333;
}

.bl_introductionMachine_media_subText {
  margin: 15px 0 10px;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.8125;
}

@media (max-width: 768px) {
  .bl_introductionMachine_media_subText {
    font-size: 14px;
    line-height: 1.857;
    letter-spacing: 0.1em;
  }
}

.bl_introductionMachine_media_tag {
  padding: 25px 0 5px;
}

.bl_introductionMachine_media_tag .paragraph {
  display: inline;
  padding: 0 15px 0 0;
  font-family: "Heebo", sans-serif;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.06em;
}

.bl_introductionMachine_media_tag .anchor {
  position: relative;
  margin: 5px;
  padding: 0;
  z-index: 2;
  font-size: 15px;
  font-weight: 400;
  letter-spacing: 0.1em;
}

@media (max-width: 768px) {
  .bl_introductionMachine_media_tag {
    padding: 5px 0;
  }

  .bl_introductionMachine_media_tag .paragraph {
    display: block;
    margin-bottom: 3px;
  }

  .bl_introductionMachine_media_tag .anchor {
    margin: 0;
    font-size: 14px;
  }
}

.ly_introductionMachine_toggle {
  position: relative;
  background-color: #eeece9;
}

.ly_introductionMachine_toggle_title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25px;
  display: block;
  width: 0;
  height: 1px;
  background-color: #333;
  z-index: 3;
  transition: 0.2s;
}

.ly_introductionMachine_toggle.up .ly_introductionMachine_toggle_title::after {
  width: calc(100% - 50px);
}

.ly_introductionMachine_toggle_01 {
  padding-top: 10px;
}

.ly_introductionMachine_toggle_title {
  position: relative;
  max-width: 480px;
  padding: 18px 25px 18px 35px;
  margin: 0 auto;
  font-size: 14px;
  letter-spacing: 0.12em;
  line-height: 1;
}

.ly_introductionMachine_toggle_title::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 25px;
  display: block;
  width: calc(100% - 50px);
  height: 1px;
  background-color: #fff;
}

.ly_introductionMachine_toggle span::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 35px;
  display: block;
  width: 11px;
  height: 5.6px;
  transform: translate(0, -50%);
  background-image: url(./assets/img/2x/icon@2x.png);
  background-size: 11px 5.6px;
  transition: 0.2s;
}

.ly_introductionMachine_toggle.up span::before {
  transform: rotate(180deg);
}

.introductionMachine_box_under {
  height: 30px;
  background-color: #eeece9;
}

/*
--------------------------------------

category

--------------------------------------
*/

.ly_category {
  margin: 10px 0 65px;
}

.ly_category_list {
  display: flex;
  justify-content: space-between;
  width: 750px;
  margin: 0 auto;
  text-align: center;
}

.ly_category_list_item {
  position: relative;
}

@media (max-width: 768px) {
  .ly_category {
    max-width: 480px;
    margin: 10px auto 30px;
    padding: 0 25px;
  }

  .ly_category_list {
    flex-wrap: wrap;
    justify-content: normal;
    width: 100%;
  }

  .ly_category_list_item {
    margin-right: 6px;
    margin-bottom: 10px;
  }
}

.bgc_green a::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #D6FF00;
  border-radius: 25px;
  z-index: -1;
}

.ly_category_list_item_a {
  display: inline-block;
  padding: 6px 27px;
  border: 1px solid #dcdcdd;
  border-radius: 25px;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.1em;
}

@media (max-width: 768px) {
  .ly_category_list_item_a {
    padding: 5px 15px;
    font-size: 13px;
  }
}

.ly_category_list_item_a::before {
  content: "";
  position: absolute;
  bottom: 50%;
  left: 0;
  display: block;
  width: 0;
  height: 0;
  border-radius: 25px;
  background-color: #D6FF00;
  z-index: -1;
  transition: 0.2s;
}

.ly_category_list_item_a:hover::before {
  bottom: 0;
  width: 100%;
  height: 100%;
}

.bl_works {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 40px 27px;
  width: 834px;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .bl_works {
    max-width: 480px;
    grid-template-columns: 1fr 1fr;
    column-gap: 20px;
    row-gap: 30px;
    width: 100%;
    padding: 0 25px;
  }
}

.bl_works_img {
  overflow: hidden;
}

.bl_works_img img {
  width: 260px;
  height: 260px;
  object-fit: cover;
  transition: 2s;
}
@media (max-width: 768px) {
  .bl_works_img img {
    height: auto;
  }
}

.bl_works_title:hover .bl_works_img img {
  transform: scale(1.15);
}

.bl_works_title_b {
  display: none;
}

.bl_works_h3 {
  margin-top: 25px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.57142;
  letter-spacing: 0.15em;
}

@media (max-width: 768px) {
  .bl_works_h3 {
    margin-top: 15px;
    font-size: 13px;
    line-height: 1.53846;
    letter-spacing: 0.03em;
  }
}

.bl_works_tag_a {
  position: relative;
  display: inline-block;
  margin-right: 3px;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

@media (max-width: 768px) {
  .bl_works_tag_a {
    margin-right: 7px;
    font-size: 10px;
  }
}

.ly_inner__pager {
  padding: 0;
}

.ly_inner_pager {
  max-width: 1020px;
  padding-right: 0;
  padding-left: 0;
  margin: 0 auto;
}

.bl_pager_inner {
  text-align: center;
}

.wp-pagenavi {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 55px auto 0;
}

@media (max-width: 768px) {
  .wp-pagenavi {
    margin: 50px auto 25px;
  }
}

.wp-pagenavi a:hover {
  background-color: #231815;
  color: #fff;
  transition-duration: .4s;
}

.wp-pagenavi > *:not(.extend) {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: #F4F4F6;
  font-family: "Heebo", sans-serif;
  font-size: 13px;
}

.wp-pagenavi > *.current {
  background-color: #231815;
  color: #fff;
}

.bl_pager .pages,
.bl_pager .previouspostslink,
.bl_pager .nextpostslink {
  display: none;
}

.dot {
  background-color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 3.5;
  letter-spacing: 0.15em;
}

.ly_works_tag_inner {
  position: relative;
  max-width: 100%;
  margin-top: 80px;
  padding-left: 0;
  background-color: #F1EFEC;
  z-index: 1;
}

@media (max-width: 768px) {
  .ly_works_tag_inner {
    display: none;
  }
}

.ly_works_tag {
  display: flex;
  justify-content: space-between;
  max-width: 1020px;
  margin: 0 auto;
  padding: 60px 10px 70px 90px;
}

.ly_works_tag_title {
  width: 180px;
  font-size: 28px;
  letter-spacing: 0.03em;
}

.ly_works_tag_list {
  display: flex;
  flex-wrap: wrap;
  gap: 18px 20px;
  width: 690px;
  margin-top: 5px;
  padding-right: 20px;
}
@media (max-width: 768px) {
  .ly_works_tag_list {
    gap: 10px;
  }
}

.ly_works_tag_list_item {
  position: relative;
}

.ly_works_tag_list_item a {
  display: block;
  font-size: 17px;
  letter-spacing: 0.1em;
  line-height: 20px;
}
@media (max-width: 768px) {
  .ly_works_tag_list_item a {
    font-size: 14px;
    line-height: 16px;
  }
}

/*
--------------------------------------

works_tag

--------------------------------------
*/

.ly_inner_tag_title {
  margin: 80px 0 30px;
  font-size: 19px;
  font-weight: bold;
  letter-spacing: 0.1em;
}

@media (max-width: 768px) {
  .ly_inner_tag_title {
    margin: 40px 0 30px;
    font-size: 13px;
  }
}

/*
--------------------------------------

corporate

--------------------------------------
*/

.ly_inner_other {
  display: flex;
  padding-right: 90px;
}

@media (max-width: 768px) {
  .ly_inner_other {
    padding: 0 25px;
    flex-direction: column;
  }
}

.ly_inner_other__corporate {
  flex-direction: column;
}

.ly_title_section {
  background-color: #EEECE9;
}

.ly_corporate_section {
  position: relative;
  margin-bottom: 50px;
  padding-bottom: 90px;
  background-color: #EEECE9;
  z-index: 0;
}

@media (max-width: 768px) {
  .ly_corporate_section {
    margin-bottom: 10px;
    padding-top: 20px;
    padding-bottom: 55px;
  }
}

.ly_title_box {
  padding-top: 120px;
  padding-bottom: 70px;
}

@media (max-width: 768px) {
  .ly_title_box {
    padding-top: 50px;
    padding-bottom: 0;
  }
}

.ly_title_title {
  font-family: "Heebo", sans-serif;
  font-size: 33px;
  font-weight: 500;
  letter-spacing: 0.06em;
}

@media (max-width: 768px) {
  .ly_title_title {
    font-size: 24px;
  }
}

.ly_title_subTitle {
  font-size: 13px;
  font-weight: bold;
  line-height: 2.4;
  letter-spacing: 0.2em;
}

.ly_corporate_box dl {
  display: flex;
  padding: 24px 5px;
  border-top: 2px solid #1D1D1F;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.16em;
}

@media (max-width: 768px) {
  .ly_corporate_box dl {
    flex-direction: column;
  }
}

.ly_corporate_box dl:nth-of-type(2) {
  padding-bottom: 15px;
  border-top: 1px dashed #1D1D1F;
}

@media (max-width: 768px) {
  .ly_corporate_box dl:nth-of-type(2) {
    border-top: none;
    padding-top: 12px;
  }
}

.ly_corporate_list_last {
  border-bottom: 2px solid #1D1D1F;
}

.ly_corporate_box dt {
  width: 235px;
}

.ly_corporate_box dd {
  line-height: 1.71428;
}

@media (max-width: 768px) {
  .ly_corporate_box dt {
    width: 100%;
    text-align: center;
  }

  .ly_corporate_box dd {
    padding-top: 10px;
  }
}

.ly_corporate_access {
  margin-bottom: 25px;
}

@media (max-width: 768px) {
  .ly_corporate_access {
    margin-bottom: 20px;
  }
}

.ly_corporate_map {
  position: relative;
  display: inline-block;
  margin-top: 22px;
  margin-bottom: 10px;
  padding-left: 24px;
  font-family: "Heebo", sans-serif;
  font-weight: 500;
  font-size: 13px;
  letter-spacing: 0.03em;
  line-height: 1.9;
}

@media (max-width: 768px) {
  .ly_corporate_map {
    margin-top: 25px;
  }
}

.ly_corporate_map::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 3px;
  display: block;
  width: 13px;
  height: 22px;
  background-image: url(./assets/img/1x/google_black.png);
  background-size: cover;
  background-repeat: no-repeat;
  transform: translate(0, -50%);
  transition-duration: 0.4s;
  z-index: 1;
}

@media (max-width: 768px) {
  .ly_corporate_map::before {
    background-image: url(./assets/img/2x/google_black@2x.png);
  }
}

/*
--------------------------------------

contact

--------------------------------------
*/

.ly_title_text {
  padding-top: 145px;
  padding-left: 100px;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: .2em;
  line-height: 1.78571;
}

@media (max-width: 768px) {
  .ly_title_text {
    padding-top: 15px;
    padding-left: 0;
    letter-spacing: .1em;
  }
}

.ly_contact_section {
  position: relative;
  margin-bottom: 50px;
  padding-bottom: 110px;
  background-color: #EEECE9;
  z-index: 0;
}

@media (max-width: 768px) {
  .ly_contact_section {
    margin-bottom: 10px;
    padding-top: 40px;
    padding-bottom: 50px;
  }

  .form {
    max-width: 480px;
  }
}

.form_box {
  padding-bottom: 50px;
}

@media (max-width: 768px) {
  .form_box {
    padding-bottom: 40px;
  }

  .form_box_textarea {
    padding-bottom: 30px;
  }
}

.form_box label {
  display: block;
  padding-bottom: 5px;
  padding-left: 3px;
  font-family: "Heebo", sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: .2em;
  line-height: 1;
}

@media (max-width: 768px) {
  .form_box label {
    padding-bottom: 9px;
  }
}

.form_box input {
  display: block;
  width: 832px;
  height: 50px;
  padding: 15px 20px;
  border: none;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: .15em;
}

@media (max-width: 768px) {
  .form_box input {
    width: 100%;
  }
}

.form_box textarea {
  width: 100%;
  height: 236px;
  padding: 15px 20px;
  border: none;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: .15em;
  resize: none;
}

@media (max-width: 768px) {
  .form_box textarea {
    height: 215px;
  }
}

.form_button {
  margin-top: 5px;
  text-align: center;
}

.form_button input {
  padding: 17px 110px 15px;
  border: 1px solid #000;
  font-family: "Heebo", sans-serif;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: .2em;
  color: #fff;
  background-color: #000;
  cursor: pointer;
  transition-duration: .6s;
  -webkit-appearance: none;
}

.form_button input:hover {
  color: #000;
  background-color: #fff;
}

#emailCheckError {
  padding-top: 5px;
  color: red;
}

input:invalid.active,
textarea:invalid.active {
  border: 1px solid red;
}

input,
textarea {
  outline: none;
}

/*
--------------------------------------

support

--------------------------------------
*/

.ly_support_section {
  margin-bottom: 50px;
  padding-bottom: 110px;
  background-color: #EEECE9;
}

@media (max-width: 768px) {
  .ly_support_section {
    margin-bottom: 10px;
    padding-bottom: 50px;
  }
}

.ly_support_box {
  margin-left: 245px;
  padding-bottom: 35px;
  border-top: 2px solid #1D1D1F;
}

@media (max-width: 768px) {
  .ly_support_box {
    margin-top: 22px;
    margin-left: 0;
    padding-bottom: 0;
  }
}

.ly_support_box:last-child {
  border-bottom: 2px solid #1D1D1F;
}

@media (max-width: 768px) {
  .ly_support_box:last-child {
    padding-bottom: 25px;
    border-bottom: 2px solid #1D1D1F;
  }
}

.ly_support_heading_02 {
  padding-top: 30px;
  font-size: 19px;
  font-weight: bold;
  letter-spacing: .1em;
}

@media (max-width: 768px) {
  .ly_support_heading_02 {
    padding-top: 25px;
    font-size: 17px;
  }
}

.ly_support_heading {
  margin-top: 18px;
}

.ly_support_heading_03 {
  display: inline;
  background-color: #fff;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.85714;
  letter-spacing: .12em;
}

@media (max-width: 768px) {
  .ly_support_heading_03 {
    margin-top: 15px;
    letter-spacing: .1em;
  }
}

.ly_support_paragraph {
  padding-top: 2px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.64285;
  letter-spacing: .12em;
}

@media (max-width: 768px) {
  .ly_support_paragraph {
    line-height: 1.71428;
    letter-spacing: .1em;
  }
}

.wpcf7 .wpcf7-response-output {
  font-size: 14px;
  text-align: center;
}

.wpcf7 form.sent .wpcf7-response-output {
  border-color: #A9A092 !important;
}

.wpcf7-spinner {
  display: block !important;
}

.lg-backdrop {
  background-color: #1D1D1F !important;
}

.lg-outer .lg-thumb-outer {
  background-color: #1D1D1F !important;
}

.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item {
  border: 0;
}

.lg-outer .lg-thumb-item {
  opacity: .3;
  border-radius: 0;
  transition: .7s;
}

.lg-outer .lg-thumb-item.active {
  opacity: 1;
}

.lg-toolbar .lg-icon {
  width: 40px;
  height: 40px;
  margin-top: 70px;
  margin-right: 70px;
  padding: 0;
}
@media (max-width: 768px) {
  .lg-toolbar .lg-icon {
    margin-top: 30px;
    margin-right: 30px;
  }
}

.lg-toolbar .lg-close:after {
  content: '';
  display: block;
  width: 40px;
  height: 40px;
  background-image: url('./assets/img/svg/icon_close_01.svg');
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 99999;
}

/* .lg-container #lg-outer1 .lg-item {
  opacity: 0;
  transition: 4s !important;
}

.lg-container #lg-outer1 .lg-current {
  opacity: 1;
} */

.lg-prev,
.lg-next {
  width: 50px;
  height: 88px;
  padding: 15px;
  background: none;
  transform: translateY(-50%);
}

.lg-prev {
  left: calc(50% - 400px);
}
.lg-next {
  right: calc(50% - 400px);
}

.lg-prev:after {
  content: '';
  display: block;
  width: 20px;
  height: 58px;
  background-image: url('./assets/img/svg/icon_arrow_prev_01.svg');
  background-size: cover;
  background-repeat: no-repeat;
}

.lg-next:before {
  content: '';
  display: block;
  width: 20px;
  height: 58px;
  background-image: url('./assets/img/svg/icon_arrow_next_01.svg');
  background-size: cover;
  background-repeat: no-repeat;
}

.lg-outer .lg-object {
  max-width: 660px;
  object-fit: cover;
}
@media (max-width: 768px) {
  .lg-outer .lg-object {
    max-width: 100%;
  }
}

.lg-toolbar {
  z-index: 99999;
}

/*
--------------------------------------

lp

--------------------------------------
*/

.ly_main__lp {
  padding: 50px 80px;
  background-color: #F1EEEB;
  font-size: 14px;
  line-height: 24px;
}

.lp_pageTitle {
  margin-bottom: 30px;
}

.lp_pageTitle_heading {
  font-size: 18px;
}

.lp_pageContent {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}

.lp_pageContent-2 {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 50px;
}

.lp_pageContent-2 > div {
  margin-left: 80px;
  padding-left: 80px;
}
@media (max-width: 900px) {
}

.lp_companyBox {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-left: 80px;
  margin-bottom: 30px;
  padding-left: 80px;
  padding-bottom: 30px;
  border-bottom: 1px solid #bbb;
}

.lp_companyBox:last-child {
  display: block;
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

.lp_companyContent_map a {
  position: relative;
  padding-left: 14px;
  font-size: 12px;
}

.lp_companyContent_map a:before {
  content: '';
  position: absolute;
  top: calc(50% - 4px);
  left: 0;
  width: 8px;
  height: 12px;
  background-image: url('/assets/img/svg/icon_pin_01.svg');
  background-size: 100% 100%;
}

.ly_lpFooter {
  width: 100%;
  max-width: 1080px;
  margin: 80px auto 0;
}

.ly_lpFooter_inner {
  display: flex;
  justify-content: flex-start;
  gap: 60px;
  margin-left: 80px;
  padding-left: 80px;
}

.footer_snsList_item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 5px;
}

@media (max-width: 1200px) {
  .lp_pageContent-2 > div {
    margin-left: 0;
  }

  .lp_companyBox {
    margin-left: 0;
  }

  .ly_lpFooter_inner {
    margin-left: 0;
  }
}

@media (max-width: 1100px) {
  .lp_companyBox {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .ly_lpFooter_inner {
    flex-direction: column;
    gap: 30px;
  }
}

@media (max-width: 900px) {
  .ly_main__lp {
    padding: 50px 20px;
    margin-top: 0;
  }

  .lp_pageContent-2 > div {
    margin-left: 0;
    padding-left: 10px;
  }

  .lp_companyBox {
    padding: 0 10px 30px;
  }

  .ly_lpFooter_inner {
    padding-left: 10px;
  }

  .footer_snsList_item a {
    padding: 10px 0;
  }
}

