@charset "UTF-8";
/*
Theme Name: 株式会社 y+M design office様
*/
@import url("./css/reset.css");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap");
/********** カスタムプロパティ（変数） **********/
@media screen and (min-width: 1200px) {
  .pc_hide {
    display: none !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  .tab_hide {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .smart_hide {
    display: none !important;
  }
}
/********** 共通タグ設定 **********/
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
  letter-spacing: 0.1rem;
  -webkit-text-size-adjust: 100%;
}

body {
  font-size: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.06rem;
  word-break: break-all;
  font-weight: bold;
  color: #333;
  position: relative;
  background-color: #E6E4DF;
}

img {
  width: 100%;
}

a {
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}
a:hover {
  transition: all 0.3s ease-in-out;
}

/********** 共通クラス **********/
.inner {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
@media screen and (max-width: 1200px) {
  .inner {
    padding: 0 20px;
  }
}

.flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#page_top {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-self: center;
  cursor: pointer;
  position: fixed;
  bottom: 10%;
  right: 40px;
  z-index: 10;
}
#page_top .img_box {
  width: 50px;
  height: 50px;
  background: url(img/top_btn.svg) top center/cover no-repeat;
  transition: all 0.3s ease-in-out;
}
#page_top .img_box:hover {
  background: url(img/top_btn_hover.svg) top center/cover no-repeat;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  #page_top {
    right: 20px;
  }
}

.fade_down {
  opacity: 0;
  transition: all 0.6s ease-in-out;
  transform: translateY(80px);
}

.fade_up {
  opacity: 1;
  transition: all 0.6s ease-in-out;
  transform: translateY(0px);
}

.fade_down_f {
  opacity: 0;
  transition: all 0.4s ease-in-out;
  transform: translateY(80px);
}

.fade_up_f {
  opacity: 1;
  transition: all 0.4s ease-in-out;
  transform: translateY(0px);
}

.sec_bm {
  margin-bottom: 160px;
}
@media screen and (max-width: 900px) {
  .sec_bm {
    margin-bottom: 80px;
  }
}

.sec_link_top {
  margin-top: -120px;
  padding-top: 120px;
}

.sec_title_box {
  margin-bottom: 50px;
}
.sec_title_box .sec_title {
  font-size: 5rem;
  font-weight: 600;
  font-family: "Poppins", sans-serif;
  display: inline-block;
  position: relative;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .sec_title_box .sec_title {
    margin-bottom: 0;
    line-height: 1.4;
    font-size: 4rem;
  }
}
@media screen and (max-width: 500px) {
  .sec_title_box .sec_title {
    font-size: 3.4rem;
  }
}
.sec_title_box .sec_title::before {
  content: "";
  width: 102px;
  height: 102px;
  border-radius: 50px;
  background-color: #E59751;
  position: absolute;
  top: 50%;
  right: -52px;
  transform: translateY(calc(-50% - 10px));
}
@media screen and (max-width: 767px) {
  .sec_title_box .sec_title::before {
    width: 80px;
    height: 80px;
    right: -40px;
  }
}
.sec_title_box .sec_title.sec_left::before {
  left: -42px;
}
@media screen and (max-width: 767px) {
  .sec_title_box .sec_title.sec_left::before {
    left: -33px;
  }
}
.sec_title_box .sec_title span {
  position: relative;
  z-index: 2;
  letter-spacing: 0.4rem;
}
.sec_title_box .sec_sub_title {
  font-size: 1.8rem;
}
@media screen and (max-width: 500px) {
  .sec_title_box .sec_sub_title {
    font-size: 1.6rem;
  }
}

.sec_title_left {
  padding-left: 38px;
}
@media screen and (max-width: 1200px) {
  .sec_title_left {
    padding-left: 58px;
  }
}
@media screen and (max-width: 767px) {
  .sec_title_left {
    padding-left: 40px;
  }
}
@media screen and (max-width: 500px) {
  .sec_title_left {
    padding-left: 38px;
  }
}

.page_link {
  text-align: center;
}
.page_link .page_link_btn {
  width: 270px;
  box-sizing: border-box;
  padding: 22px 0;
  display: inline-block;
  padding-left: 30px;
  text-align: left;
  color: #E59751;
  font-size: 1.8rem;
  font-weight: bold;
  border: 1px solid #E59751;
  border-radius: 50px;
  position: relative;
}
@media screen and (max-width: 500px) {
  .page_link .page_link_btn {
    width: 240px;
    padding: 18px 0;
    padding-left: 24px;
    font-size: 1.5rem;
  }
}
.page_link .page_link_btn::before {
  content: "";
  width: 22px;
  height: 16px;
  background: url(img/page_link.svg) top center/cover no-repeat;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
}
.page_link .page_link_btn:hover {
  color: #fff;
  border-color: #333;
  background-color: #333;
}
.page_link .page_link_btn:hover::before {
  background: url(img/page_link_white.svg) top center/cover no-repeat;
  transition: all 0.3s ease-in-out;
}

.s_mv_box {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .s_mv_box {
    margin-bottom: 60px;
  }
}
.s_mv_box .s_mv {
  margin-bottom: 8px;
  width: 100%;
  height: 480px;
  border-radius: 0 0 200px 0;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .s_mv_box .s_mv {
    height: 300px;
    border-radius: 0 0 80px 0;
  }
}
.s_mv_box .s_mv .mv_title {
  font-family: "Poppins", sans-serif;
  font-size: 5rem;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.2rem;
  color: #fff;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .s_mv_box .s_mv .mv_title {
    font-size: 3.2rem;
    line-height: 1.4;
  }
}
.s_mv_box .s_mv .mv_title span {
  font-size: 1.8rem;
  font-family: "Noto Sans JP", sans-serif;
  display: block;
}
@media screen and (max-width: 767px) {
  .s_mv_box .s_mv .mv_title span {
    font-size: 1.5rem;
  }
}
.s_mv_box .pan_nav {
  display: flex;
  gap: 0px 20px;
  font-weight: normal;
  flex-wrap: wrap;
}
.s_mv_box .pan_nav li {
  position: relative;
  font-size: 1.2rem;
  color: #333;
  display: flex;
  align-items: center;
}
.s_mv_box .pan_nav li:not(:last-of-type)::before {
  content: "";
  width: 4px;
  height: 1px;
  background-color: #333;
  position: absolute;
  top: 10px;
  right: -12px;
  transform: rotate(45deg);
}
.s_mv_box .pan_nav li:not(:last-of-type)::after {
  content: "";
  width: 4px;
  height: 1px;
  background-color: #333;
  position: absolute;
  top: 12px;
  right: -12px;
  transform: rotate(-45deg);
}
.s_mv_box .pan_nav li:last-child {
  margin-bottom: 1px;
}
.s_mv_box .pan_nav li a {
  display: inline-block;
  color: #333;
  font-size: 1.2rem;
  font-family: "Poppins", sans-serif;
  position: relative;
}
.s_mv_box .pan_nav li a::before {
  content: "";
  transition: all 0.3s ease-in-out;
}
.s_mv_box .pan_nav li a:hover::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #333;
  position: absolute;
  bottom: 2px;
  left: 0;
  transition: all 0.3s ease-in-out;
}
.s_mv_box .pan_nav .pan_works_cat a:not(:last-of-type) {
  position: relative;
  padding-right: 12px;
  display: inline-block;
}
.s_mv_box .pan_nav .pan_works_cat a:not(:last-of-type)::before {
  content: "、";
  position: absolute;
  right: -2px;
}

.lw_page_link {
  margin-bottom: 120px;
}
@media screen and (max-width: 1100px) {
  .lw_page_link {
    margin-bottom: 60px;
  }
}
.lw_page_link ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
}
@media screen and (max-width: 1200px) {
  .lw_page_link ul {
    gap: unset;
    row-gap: 10px;
    justify-content: space-between;
  }
}
.lw_page_link ul li {
  width: 30%;
  max-width: 184px;
}
@media screen and (max-width: 1200px) {
  .lw_page_link ul li {
    width: 49%;
    max-width: unset;
  }
}
.lw_page_link ul li a {
  padding: 12px 20px;
  font-weight: bold;
  font-family: "Poppins", sans-serif;
  border: 1px solid #333;
  border-radius: 15px;
  display: block;
  color: #333;
  font-size: 1.6rem;
  line-height: 1.4;
  letter-spacing: 0.2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .lw_page_link ul li a {
    font-size: 1.2rem;
  }
}
.lw_page_link ul li a::before {
  content: "";
  width: 22px;
  height: 12px;
  background: url(img/faq_arrow.svg) top center/cover no-repeat;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}
.lw_page_link ul li a span {
  font-size: 1.4rem;
  color: #E59751;
  display: block;
}
@media screen and (max-width: 767px) {
  .lw_page_link ul li a span {
    font-size: 1.2rem;
  }
}

.main_color {
  color: #E59751;
}

/********** ヘッダー（共通） **********/
header {
  z-index: 999;
  width: 100%;
  position: relative;
}
header .inner {
  max-width: 100%;
  padding: 0 52px;
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 6px;
}
@media screen and (max-width: 1400px) {
  header .inner {
    padding: 0 30px;
  }
}
@media screen and (max-width: 1100px) {
  header .inner {
    align-items: flex-start;
  }
}
header .inner .logo {
  width: 200px;
}
@media screen and (max-width: 820px) {
  header .inner .logo {
    width: 120px;
  }
}
header .inner nav {
  position: fixed;
  top: 26px;
  right: 32px;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
@media screen and (max-width: 1100px) {
  header .inner nav {
    right: 0px;
  }
}
@media screen and (max-width: 767px) {
  header .inner nav {
    top: 16px;
  }
}
header .inner nav .hamburger_bar {
  display: none;
  width: 40px;
  height: 40px;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  gap: 6px;
  cursor: pointer;
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 1100px) {
  header .inner nav .hamburger_bar {
    display: flex;
    margin-top: 10px;
    margin-right: 40px;
  }
}
@media screen and (max-width: 767px) {
  header .inner nav .hamburger_bar {
    margin-top: 0;
    margin-right: 20px;
  }
}
header .inner nav .hamburger_bar span {
  display: inline-flex;
  background-color: #E59751;
  width: 36px;
  height: 2px;
  line-height: 1;
  transition: all 0.3s ease-in-out;
}
header .inner nav .hamburger_bar.open_ber span {
  transition: all 0.3s ease-in-out;
  position: relative;
  background-color: #fff;
}
header .inner nav .hamburger_bar.open_ber .bar_01 {
  transform: rotate(45deg);
  top: 4px;
}
header .inner nav .hamburger_bar.open_ber .bar_02 {
  opacity: 0;
}
header .inner nav .hamburger_bar.open_ber .bar_03 {
  transform: rotate(-45deg);
  bottom: 11px;
}
@media screen and (max-width: 1100px) {
  header .inner .hd_scroll {
    overflow-y: auto;
    flex: 1;
  }
}
header .inner .header_nav {
  display: flex;
  align-items: center;
  gap: 40px;
}
@media screen and (max-width: 1200px) {
  header .inner .header_nav {
    gap: 28px;
  }
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav {
    padding: 60px 0;
    position: fixed;
    inset: 0;
    width: 300px;
    margin-left: auto;
    padding: 60px 0;
    background-color: #E59751;
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: all 0.4s ease-in-out;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav {
    gap: 8px;
  }
}
header .inner .header_nav.open_nav {
  transform: translateX(0);
  transition: all 0.4s ease-in-out;
}
header .inner .header_nav .nav_item {
  position: relative;
  padding: 10px 0;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item {
    padding: 4px 0;
  }
}
header .inner .header_nav .nav_item a {
  font-weight: bold;
  color: #fff;
  position: relative;
  font-family: "Poppins", sans-serif;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item a {
    filter: none;
  }
}
header .inner .header_nav .nav_item a:hover {
  color: #E59751;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item a:hover {
    color: #fff;
  }
}
header .inner .header_nav .nav_item a:hover::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #E59751;
  position: absolute;
  bottom: -2px;
  left: 0;
  -webkit-animation-name: menu_hover;
          animation-name: menu_hover;
  -webkit-animation-duration: 0.3s;
          animation-duration: 0.3s;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
}
@-webkit-keyframes menu_hover {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
@keyframes menu_hover {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
header .inner .header_nav .nav_item a.headerColor_default {
  color: #333;
}
header .inner .header_nav .nav_item a.headerColor_default:hover {
  color: #E59751;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item a.headerColor_default {
    color: #fff;
  }
}
header .inner .header_nav .nav_item a.hd_inst_color {
  color: #333;
}
header .inner .header_nav .nav_item a.hd_inst_color:hover {
  color: #E59751;
}
header .inner .header_nav .nav_item .dropdown_lists {
  display: none;
  width: 160px;
  position: absolute;
  top: 47px;
  left: 50%;
  transform: translateX(-50%);
}
header .inner .header_nav .nav_item .dropdown_lists .dropdown_list a {
  padding: 12px 10px;
  display: block;
  color: #fff;
  text-align: center;
  background-color: #E59751;
  font-size: 1.3rem;
}
header .inner .header_nav .nav_item .dropdown_lists .dropdown_list a:hover {
  background-color: #333;
}
header .inner .header_nav .nav_item .dropdown_lists .dropdown_list a:hover::before {
  content: none;
}
header .inner .header_nav .nav_item:hover { /*ホバー後のメニュー表示*/ }
header .inner .header_nav .nav_item:hover .dropdown_lists {
  display: block;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item:hover .dropdown_lists {
    display: none;
  }
}
header .inner .header_nav .nav_item.hum_link {
  display: none;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item.hum_link {
    display: block;
  }
}
header .inner .header_nav .nav_item .hd_insta {
  margin-top: 10px;
  width: 20px;
  height: 20px;
  display: inline-block;
  background: url(img/insta_icon_white.svg) top center/cover no-repeat;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item .hd_insta {
    margin-top: 0;
  }
}
header .inner .header_nav .nav_item .hd_insta:hover {
  background: url(img/insta_icon_hover.svg) top center/cover no-repeat;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item .hd_insta:hover {
    background: url(img/insta_icon_white.svg) top center/cover no-repeat;
  }
}
header .inner .header_nav .nav_item .hd_insta:hover::before {
  content: none;
}
header .inner .header_nav .nav_item .hd_insta.headerColor_default {
  background: url(img/insta_icon_black.svg) top center/cover no-repeat;
}
header .inner .header_nav .nav_item .hd_insta.headerColor_default:hover {
  background: url(img/insta_icon_hover.svg) top center/cover no-repeat;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item .hd_insta.headerColor_default {
    background: url(img/insta_icon_white.svg) top center/cover no-repeat;
  }
}
header .inner .header_nav .nav_item .nav_contact {
  padding: 8px 20px;
  background-color: #E59751;
  display: flex;
  align-items: center;
  border-radius: 50px;
  gap: 6px;
  color: #fff !important;
  filter: none;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item .nav_contact {
    background-color: #fff;
    color: #E59751 !important;
    border: 1px solid #E59751;
  }
}
header .inner .header_nav .nav_item .nav_contact:hover {
  border-bottom: none;
  color: #fff;
  opacity: 1 !important;
  background-color: #333;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item .nav_contact:hover {
    color: #E59751;
    opacity: 1;
  }
}
header .inner .header_nav .nav_item .nav_contact:hover::before {
  content: none;
}
header .inner .header_nav .nav_item .nav_contact .mail_icon {
  width: 20px;
  height: 20px;
  display: inline-block;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item .nav_contact .pc_icon {
    display: none;
  }
}
header .inner .header_nav .nav_item .nav_contact .sp_icon {
  display: none;
}
@media screen and (max-width: 1100px) {
  header .inner .header_nav .nav_item .nav_contact .sp_icon {
    display: block;
  }
}
header .inner .hd_contact {
  transition: all 0.3s ease-in-out;
}
header .inner .hd_contact:hover {
  transition: all 0.3s ease-in-out;
}

/********** フッター（共通） **********/
footer .ft_content {
  padding: 77px 0 70px;
  border-radius: 0 90px 0 0;
  background-color: #585858;
}
footer .ft_logo {
  margin-bottom: 36px;
  padding-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 24px;
  border-bottom: 2px solid #fff;
  color: #fff;
}
footer .ft_logo .ft_lgoo_box {
  width: 210px;
}
@media screen and (max-width: 900px) {
  footer .ft_logo .ft_lgoo_box {
    width: 260px;
  }
}
@media screen and (max-width: 500px) {
  footer .ft_logo .ft_lgoo_box {
    width: 140px;
  }
}
footer .ft_logo p {
  font-size: 1.7rem;
}
footer .ft_logo .ft_insta_icon {
  margin-top: 10px;
  width: 25px;
}
footer .ft_link {
  color: #fff;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 900px) {
  footer .ft_link {
    flex-direction: column;
    row-gap: 20px;
  }
}
footer .ft_link .ft_contaxt {
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  footer .ft_link .ft_contaxt p {
    font-size: 1.2rem;
  }
}
footer .ft_link .ft_contaxt .fax {
  font-family: "Poppins", sans-serif;
}
footer .ft_link .ft_contaxt .fax a {
  color: #fff;
  font-family: "Poppins", sans-serif;
}
footer .ft_link .ft_contaxt ul {
  margin-top: 18px;
  display: flex;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  footer .ft_link .ft_contaxt ul {
    flex-direction: column;
    gap: 10px;
  }
}
footer .ft_link .ft_contaxt ul li {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  footer .ft_link .ft_contaxt ul li {
    margin-inline: auto;
  }
}
footer .ft_link .ft_contaxt ul li .ft_hour {
  font-size: 1rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}
footer .ft_link .ft_contaxt ul li a {
  width: 210px;
  padding: 10px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-family: "Poppins", sans-serif;
  gap: 10px;
  border-radius: 50px;
  color: #fff;
  background-color: #E59751;
}
footer .ft_link .ft_contaxt ul li a:hover {
  background-color: #333;
}
footer .ft_link .ft_contaxt ul li a span {
  display: inline-block;
  width: 20px;
  height: 20px;
}
footer .ft_link .ft_contaxt ul .ft_hour {
  margin-top: 4px;
  font-family: "Noto Sans JP", sans-serif;
}
footer .ft_link .ft_sitemap nav {
  margin-bottom: 45px;
  display: flex;
  gap: 100px;
}
@media screen and (max-width: 900px) {
  footer .ft_link .ft_sitemap nav {
    margin-bottom: 20px;
  }
}
footer .ft_link .ft_sitemap nav ul li:not(:last-of-type) {
  margin-bottom: 10px;
}
footer .ft_link .ft_sitemap nav ul li a {
  color: #fff;
  font-family: "Poppins", sans-serif;
}
footer .ft_link .ft_sitemap nav ul li a:hover {
  color: #E59751;
}
footer .ft_link .ft_sitemap .privacy_link {
  text-align: right;
}
@media screen and (max-width: 900px) {
  footer .ft_link .ft_sitemap .privacy_link {
    text-align: left;
  }
}
footer .ft_link .ft_sitemap .privacy_link a {
  font-size: 1.5rem;
  color: #fff;
}
footer .ft_link .ft_sitemap .privacy_link a:hover {
  color: #E59751;
}
footer .copyright {
  padding: 6px 0;
  font-size: 1.2rem;
  text-align: center;
}

.inner_b {
  width: calc(100% - 40px);
  margin-inline: auto;
  position: relative;
}

/********** メインコンテンツ（共通） **********/
#top_mv {
  padding-top: 15px;
  margin-bottom: 90px;
  position: relative;
}
@media screen and (max-width: 900px) {
  #top_mv {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  #top_mv {
    padding-top: 0px;
  }
}
@media screen and (max-width: 500px) {
  #top_mv {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 767px) {
  #top_mv .inner_b {
    width: 100%;
  }
}
#top_mv .mv_slide {
  width: 100%;
  height: 800px;
  position: relative;
}
@media screen and (max-width: 820px) {
  #top_mv .mv_slide {
    height: 400px;
  }
}
@media screen and (max-width: 500px) {
  #top_mv .mv_slide {
    height: auto;
    aspect-ratio: 13/20;
  }
}
#top_mv .mv_slide li {
  width: 100%;
  height: 100%;
  border-radius: 25px;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-animation: mv_slide 30s infinite;
          animation: mv_slide 30s infinite;
}
@media screen and (max-width: 767px) {
  #top_mv .mv_slide li {
    border-radius: 0;
  }
}
#top_mv .mv_slide li a {
  width: 100%;
  height: 100%;
  display: block;
  text-decoration: none;
  cursor: pointer;
}
#top_mv .mv_slide li.mv_slide01 {
  background-image: url(img/mv_img01.webp);
}
@media screen and (max-width: 500px) {
  #top_mv .mv_slide li.mv_slide01 {
    background-image: url(img/sp_mv01.webp);
  }
}
#top_mv .mv_slide li.mv_slide02 {
  background-image: url(img/mv_img02.webp);
}
@media screen and (max-width: 500px) {
  #top_mv .mv_slide li.mv_slide02 {
    background-image: url(img/sp_mv02.webp);
  }
}
#top_mv .mv_slide li.mv_slide03 {
  background-image: url(img/mv_img03.webp);
}
@media screen and (max-width: 500px) {
  #top_mv .mv_slide li.mv_slide03 {
    background-image: url(img/sp_mv03.webp);
  }
}
#top_mv .mv_slide li.mv_slide04 {
  background-image: url(img/mv_img04.webp);
}
@media screen and (max-width: 500px) {
  #top_mv .mv_slide li.mv_slide04 {
    background-image: url(img/sp_mv04.webp);
  }
}
#top_mv .mv_slide li.mv_slide05 {
  background-image: url(img/mv_img05.webp);
}
@media screen and (max-width: 500px) {
  #top_mv .mv_slide li.mv_slide05 {
    background-image: url(img/sp_mv05.webp);
  }
}
#top_mv .mv_slide li.mv_slide06 {
  background-image: url(img/mv_img06.webp);
}
@media screen and (max-width: 500px) {
  #top_mv .mv_slide li.mv_slide06 {
    background-image: url(img/sp_mv06.webp);
  }
}
@-webkit-keyframes mv_slide {
  0% {
    opacity: 0;
    z-index: 4;
    pointer-events: auto;
  }
  4% {
    opacity: 1;
    z-index: 4;
    pointer-events: auto;
  }
  24% {
    opacity: 1;
    z-index: 4;
    pointer-events: auto;
  }
  30% {
    opacity: 0;
    z-index: 4;
    pointer-events: auto;
  }
  31% {
    opacity: 0;
    z-index: 1;
    pointer-events: none;
  }
  100% {
    opacity: 0;
    z-index: 1;
    pointer-events: none;
  }
}
@keyframes mv_slide {
  0% {
    opacity: 0;
    z-index: 4;
    pointer-events: auto;
  }
  4% {
    opacity: 1;
    z-index: 4;
    pointer-events: auto;
  }
  24% {
    opacity: 1;
    z-index: 4;
    pointer-events: auto;
  }
  30% {
    opacity: 0;
    z-index: 4;
    pointer-events: auto;
  }
  31% {
    opacity: 0;
    z-index: 1;
    pointer-events: none;
  }
  100% {
    opacity: 0;
    z-index: 1;
    pointer-events: none;
  }
}
#top_mv .mv_slide li:nth-child(1) {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}
#top_mv .mv_slide li:nth-child(2) {
  -webkit-animation-delay: 5s;
          animation-delay: 5s;
}
#top_mv .mv_slide li:nth-child(3) {
  -webkit-animation-delay: 10s;
          animation-delay: 10s;
}
#top_mv .mv_slide li:nth-child(4) {
  -webkit-animation-delay: 15s;
          animation-delay: 15s;
}
#top_mv .mv_slide li:nth-child(5) {
  -webkit-animation-delay: 20s;
          animation-delay: 20s;
}
#top_mv .mv_slide li:nth-child(6) {
  -webkit-animation-delay: 25s;
          animation-delay: 25s;
}
#top_mv h2 {
  font-size: 7rem;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#top_mv .scroll {
  width: 120px;
  height: 120px;
  border: 1px solid #E59751;
  border-radius: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: -30px;
  left: 50%;
  z-index: 10;
  transform: translate(-50%, 0);
  -webkit-animation-name: scroll;
          animation-name: scroll;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
}
@media screen and (max-width: 820px) {
  #top_mv .scroll {
    width: 80px;
    height: 80px;
  }
}
@media screen and (max-width: 500px) {
  #top_mv .scroll {
    bottom: 110px;
  }
}
@-webkit-keyframes scroll {
  0% {
    transform: translate(-50%, 0);
  }
  50% {
    transform: translate(-50%, 30px);
  }
  100% {
    transform: translate(-50%, 0);
  }
}
@keyframes scroll {
  0% {
    transform: translate(-50%, 0);
  }
  50% {
    transform: translate(-50%, 30px);
  }
  100% {
    transform: translate(-50%, 0);
  }
}
#top_mv .scroll img {
  width: 10px;
  height: 50px;
}
@media screen and (max-width: 900px) {
  #top_mv .scroll img {
    width: 8px;
    height: 48px;
  }
}
#top_mv .mv_news {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 16px 10px;
  display: flex;
  background-color: rgba(41, 41, 41, 0.9058823529);
  color: #fff;
  font-weight: bold;
  font-size: 1.5rem;
  border-radius: 8px;
  position: absolute;
  bottom: 63px;
  right: 28px;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  #top_mv .mv_news {
    width: 400px;
    align-items: center;
    font-size: 1.2rem;
    right: 50%;
    transform: translateX(50%);
    padding: 10px 12px 11px;
  }
}
@media screen and (max-width: 500px) {
  #top_mv .mv_news {
    margin-top: 36px;
    row-gap: 10px;
    bottom: 20px;
    position: static;
    transform: none;
    width: calc(100% - 40px);
    margin-inline: auto;
  }
}
#top_mv .mv_news .mv_news_title {
  margin-top: 2px;
  margin-right: 28px;
  font-family: "Poppins", sans-serif;
  line-height: 1;
  position: relative;
}
#top_mv .mv_news .mv_news_title::before {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: -12px;
}
@media screen and (max-width: 767px) {
  #top_mv .mv_news .mv_news_title {
    padding: 2px 0;
    width: 64px;
  }
}
@media screen and (max-width: 767px) {
  #top_mv .mv_news .mv_news_doc {
    width: calc(100% - 64px);
  }
}
#top_mv .mv_news .mv_news_doc a {
  color: #fff;
  border-bottom: 1px solid #fff;
}
@media screen and (max-width: 500px) {
  #top_mv .mv_news .mv_news_doc a {
    line-height: 1.8;
  }
}
#top_mv .mv_news .mv_news_doc a .mv_news_date {
  display: inline-block;
  margin-right: 8px;
}
#top_mv .mv_news .mv_news_doc a:hover {
  opacity: 0.6;
}

#works .inner_b {
  margin-bottom: 40px;
  padding: 64px 0 60px;
  border-radius: 40px;
  background-color: #fff;
  position: relative;
  overflow: hidden;
  height: 740px;
}
@media screen and (max-width: 767px) {
  #works .inner_b {
    height: 680px;
  }
}
@media screen and (max-width: 500px) {
  #works .inner_b {
    height: 560px;
  }
}
#works .top_works_slide {
  width: 545px;
  overflow: unset !important;
}
@media screen and (max-width: 820px) {
  #works .top_works_slide {
    width: 80%;
  }
}
#works .top_works_slide a {
  color: #333;
  display: block;
  width: 75%;
  margin-inline: auto;
}
#works .top_works_slide .top_works_pic {
  transform-origin: bottom;
  transition: 0.6s;
  position: relative;
  top: 0;
}
@media screen and (max-width: 767px) {
  #works .top_works_slide .top_works_pic {
    transform: scale(0.75);
  }
}
#works .top_works_slide .top_works_pic .img_box {
  margin-bottom: 12px;
}
#works .top_works_slide .top_works_pic .img_box img {
  border-radius: 10px;
  width: 100% !important;
  height: auto;
}
#works .top_works_slide .top_works_pic .works_pic_name {
  margin-bottom: 10px;
  padding: 0 8px 4px;
  font-size: 1.8rem;
  font-weight: bold;
  border-bottom: 1.5px solid #333;
}
@media screen and (max-width: 500px) {
  #works .top_works_slide .top_works_pic .works_pic_name {
    font-size: 1.5rem;
    line-height: 1.7;
  }
}
#works .top_works_slide .top_works_pic ul {
  padding: 0 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  #works .top_works_slide .top_works_pic ul {
    gap: 6px;
  }
}
#works .top_works_slide .top_works_pic ul li {
  padding: 2px 20px;
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff;
  background-color: #333;
  border-radius: 50px;
}
@media screen and (max-width: 767px) {
  #works .top_works_slide .top_works_pic ul li {
    padding: 2px 10px;
    font-size: 1.4rem;
  }
}
#works .top_works_slide .swiper-slide-active {
  transform: scale(1);
  position: relative;
}
#works .top_works_slide .swiper-slide-active a {
  width: 100%;
}
#works .swiper-button-prev,
#works .swiper-button-next {
  width: 20px;
  height: 44px;
  top: 48%;
}
#works .swiper-button-prev::after,
#works .swiper-button-next::after {
  content: none;
}
@media screen and (max-width: 500px) {
  #works .swiper-button-prev,
#works .swiper-button-next {
    display: none;
  }
}
#works .swiper-button-prev {
  left: -40px;
}
@media screen and (max-width: 500px) {
  #works .swiper-button-prev {
    left: -24px;
  }
}
#works .swiper-button-next {
  right: -40px;
}
@media screen and (max-width: 500px) {
  #works .swiper-button-next {
    right: -24px;
  }
}
#works .swiper-pagination {
  position: absolute;
  top: -64px;
  left: unset;
  right: -30%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  text-align: right;
}
@media screen and (max-width: 1100px) {
  #works .swiper-pagination {
    right: -10%;
  }
}
@media screen and (max-width: 767px) {
  #works .swiper-pagination {
    right: 0;
  }
}
#works .swiper-pagination-bullet {
  margin: 0 2px;
}
#works .swiper-pagination-bullet-active {
  background: #E59751;
}

#about .about_mv {
  border-radius: 0 100px 0 0;
  padding: 50px 0 155px;
  background: url(img/concept_photo.webp) top center/cover no-repeat;
}
@media screen and (max-width: 500px) {
  #about .about_mv {
    border-radius: 0 60px 0 0;
  }
}
#about .about_mv .inner {
  display: flex;
}
#about .about_mv .inner p {
  margin-right: 0;
  margin-left: auto;
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: 4rem;
  font-weight: bold;
  line-height: 2.2;
  gap: 22px;
}
@media screen and (max-width: 900px) {
  #about .about_mv .inner p {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 767px) {
  #about .about_mv .inner p {
    font-size: 2.2rem;
  }
}
#about .about_mv .inner p span {
  display: inline-block;
  padding: 20px 0 12px;
  letter-spacing: 1rem;
  line-height: 1.6;
  background-color: rgba(255, 255, 255, 0.831372549);
  writing-mode: vertical-rl;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  #about .about_mv .inner p span {
    padding: 12px 0 10px;
    letter-spacing: 0.8rem;
  }
}
#about .about_text {
  margin-top: -90px;
  padding: 44px 20px 52px;
  border-radius: 25px;
  background-color: #fff;
}
@media screen and (max-width: 1200px) {
  #about .about_text {
    margin-inline: auto;
    width: calc(100% - 40px);
  }
}
@media screen and (max-width: 767px) {
  #about .about_text {
    padding: 25px 40px;
  }
}
#about .about_text p {
  max-width: 960px;
  box-sizing: border-box;
  margin-inline: auto;
  margin-bottom: 32px;
  line-height: 2.4;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #about .about_text p {
    text-align: left;
  }
}
@media screen and (max-width: 500px) {
  #about .about_text p {
    line-height: 2.2;
    font-size: 1.4rem;
  }
}
#about .about_text .page_link {
  text-align: center;
}

#top_voice {
  margin-bottom: 180px;
}
@media screen and (max-width: 767px) {
  #top_voice {
    margin-bottom: 100px;
  }
}
#top_voice .top_voice_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  #top_voice .top_voice_area {
    row-gap: 20px;
  }
}
#top_voice .top_voice_area li {
  width: calc(50% - 14px);
  padding: 30px 22px;
  border-radius: 25px;
  background-color: #F5F6F0;
}
@media screen and (max-width: 767px) {
  #top_voice .top_voice_area li {
    width: 100%;
  }
}
#top_voice .top_voice_area li .client {
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-bottom: 1px solid #4C4D4D;
}
@media screen and (max-width: 900px) {
  #top_voice .top_voice_area li .client {
    row-gap: 10px;
    flex-direction: column-reverse;
  }
}
#top_voice .top_voice_area li .client .client_name, #top_voice .top_voice_area li .client .img_box {
  width: calc(50% - 12px);
}
@media screen and (max-width: 900px) {
  #top_voice .top_voice_area li .client .client_name, #top_voice .top_voice_area li .client .img_box {
    width: 100%;
  }
}
@media screen and (max-width: 900px) {
  #top_voice .top_voice_area li .client .img_box {
    max-width: 400px;
    margin-inline: auto;
  }
}
#top_voice .top_voice_area li .client .client_name {
  text-align: center;
  margin-bottom: 20px;
}
#top_voice .top_voice_area li .client .client_name .voice_name {
  padding: 2px 10px;
  margin-bottom: 20px;
  font-size: 1.8rem;
  color: #fff;
  background-color: #4C4D4D;
  border-radius: 20px;
}
@media screen and (max-width: 820px) {
  #top_voice .top_voice_area li .client .client_name .voice_name {
    max-width: 280px;
    margin-inline: auto;
  }
}
#top_voice .top_voice_area li .voice_text {
  font-size: 1.6rem;
  padding: 0 20px;
  font-weight: normal;
  font-family: "Zen Maru Gothic", sans-serif;
}

#top_strength .sec_title_box {
  margin-bottom: 90px;
}
@media screen and (max-width: 820px) {
  #top_strength .sec_title_box {
    margin-bottom: 60px;
  }
}
#top_strength .strength_point_list {
  margin-bottom: 80px;
}
#top_strength .strength_point_list li {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
}
#top_strength .strength_point_list li:not(:last-of-type) {
  margin-bottom: 134px;
}
@media screen and (max-width: 1100px) {
  #top_strength .strength_point_list li:not(:last-of-type) {
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 900px) {
  #top_strength .strength_point_list li:not(:last-of-type) {
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  #top_strength .strength_point_list li:not(:last-of-type) {
    margin-bottom: 80px;
  }
}
#top_strength .strength_point_list li .img_box {
  width: 62%;
  max-width: 690px;
  position: relative;
}
@media screen and (max-width: 900px) {
  #top_strength .strength_point_list li .img_box {
    width: 80%;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  #top_strength .strength_point_list li .img_box {
    width: 100%;
  }
}
#top_strength .strength_point_list li .img_box span {
  font-weight: bold;
  font-size: 6.8rem;
  color: #E59751;
  position: absolute;
  top: -36px;
  left: 18px;
  line-height: 1;
}
@media screen and (max-width: 500px) {
  #top_strength .strength_point_list li .img_box span {
    font-size: 5rem;
    top: -26px;
  }
}
#top_strength .strength_point_list li:nth-child(even) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 900px) {
  #top_strength .strength_point_list li:nth-child(even) {
    flex-direction: column;
  }
}
#top_strength .strength_point_list li .strength_point_text {
  width: 36%;
}
@media screen and (max-width: 900px) {
  #top_strength .strength_point_list li .strength_point_text {
    width: 80%;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  #top_strength .strength_point_list li .strength_point_text {
    width: 90%;
  }
}
#top_strength .strength_point_list li .strength_point_text h4 {
  margin-bottom: 20px;
  padding-bottom: 4px;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.2rem;
  border-bottom: 2px solid #E59751;
}
@media screen and (max-width: 767px) {
  #top_strength .strength_point_list li .strength_point_text h4 {
    font-size: 2.4rem;
  }
}
#top_strength .strength_point_list li .strength_point_text h4 span {
  font-size: 2.4rem;
}
@media screen and (max-width: 767px) {
  #top_strength .strength_point_list li .strength_point_text h4 span {
    font-size: 2rem;
  }
}
#top_strength .strength_point_list li .strength_point_text p {
  margin-bottom: 20px;
}
#top_strength .strength_point_list li .strength_point_text .arrow_link {
  text-align: right;
}
#top_strength .strength_point_list li .strength_point_text .arrow_link a {
  margin-right: 20px;
  display: inline-block;
  color: #E59751;
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem;
  font-weight: normal;
  position: relative;
}
@media screen and (max-width: 767px) {
  #top_strength .strength_point_list li .strength_point_text .arrow_link a {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 500px) {
  #top_strength .strength_point_list li .strength_point_text .arrow_link a {
    font-size: 1.5rem;
  }
}
#top_strength .strength_point_list li .strength_point_text .arrow_link a::before {
  content: "";
  width: 140px;
  height: 10px;
  background: url(img/arrow_link.svg) top right/cover no-repeat;
  position: absolute;
  bottom: -10px;
  right: -20px;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  #top_strength .strength_point_list li .strength_point_text .arrow_link a::before {
    bottom: -4px;
    width: 120px;
  }
}
#top_strength .strength_point_list li .strength_point_text .arrow_link a:hover::before {
  right: -40px;
  transition: all 0.3s ease-in-out;
}

#contact .contact_box {
  padding: 86px 20px 110px;
  text-align: center;
  color: #fff;
  border-radius: 0 0 0 100px;
  background: url(img/contact_bg.webp) top center/cover no-repeat;
}
@media screen and (max-width: 767px) {
  #contact .contact_box {
    padding: 40px 40px 80px;
  }
}
#contact .contact_box h4 {
  margin-bottom: 32px;
  font-size: 3.2rem;
  font-weight: bold;
}
@media screen and (max-width: 500px) {
  #contact .contact_box h4 {
    margin-bottom: 20px;
    font-size: 3rem;
  }
}
#contact .contact_box p {
  margin-bottom: 80px;
  line-height: 2;
}
@media screen and (max-width: 500px) {
  #contact .contact_box p {
    text-align: left;
    margin-bottom: 40px;
  }
}
#contact .contact_box ul {
  display: flex;
  justify-content: center;
  gap: 120px;
}
@media screen and (max-width: 1100px) {
  #contact .contact_box ul {
    gap: 64px;
  }
}
@media screen and (max-width: 900px) {
  #contact .contact_box ul {
    flex-direction: column;
    justify-content: center;
    gap: 20px;
  }
}
#contact .contact_box ul li a {
  width: 320px;
  box-sizing: border-box;
  padding: 20px 10px;
  display: inline-block;
  background-color: #E59751;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 2.2rem;
  font-weight: bold;
  color: #fff;
  border-radius: 50px;
}
@media screen and (max-width: 900px) {
  #contact .contact_box ul li a {
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  #contact .contact_box ul li a {
    width: 300px;
    padding: 14px 10px;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 500px) {
  #contact .contact_box ul li a {
    width: 260px;
  }
}
#contact .contact_box ul li a:hover {
  background-color: #333;
}
#contact .contact_box ul li a .contact_icon {
  width: 30px;
  height: 30px;
  display: inline-block;
}

.group_bt li {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .group_bt li {
    margin-bottom: 26px;
  }
}

.wpcf7 form.sent .wpcf7-response-output {
  padding: 8px 10px !important;
  border: #E59751 !important;
  background-color: #E59751;
  color: #fff;
}

#news {
  margin-bottom: 150px;
}
@media screen and (max-width: 500px) {
  #news {
    margin-bottom: 80px;
  }
}
#news .news_list {
  margin-bottom: 62px;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 500px) {
  #news .news_list {
    margin-bottom: 40px;
    flex-direction: column;
    row-gap: 40px;
  }
}
#news .news_list .news_item {
  width: 32%;
}
#news .news_list .news_item img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 500px) {
  #news .news_list .news_item {
    width: 100%;
  }
}
#news .news_list .news_item .img_box {
  margin-bottom: 4px;
}
#news .news_list .news_item .img_box img {
  border-radius: 12px;
  width: 100%;
  height: auto;
  aspect-ratio: 75/48;
  -o-object-fit: cover;
     object-fit: cover;
}
#news .news_list .news_item .news_date {
  margin-bottom: 12px;
  font-size: 14px;
}
@media screen and (max-width: 500px) {
  #news .news_list .news_item .news_date {
    margin-bottom: 8px;
  }
}
#news .news_list .news_item .news_text {
  font-weight: bold;
}
#news .news_list a {
  color: #333;
}
#news .news_list a:hover {
  opacity: 0.6;
}
#news .page_link {
  text-align: center;
}
@media screen and (max-width: 500px) {
  #news .page_link {
    text-align: center;
  }
}

/********** ABOUT US私たちについて **********/
.about .s_mv {
  background: url(img/about_mv.webp) top center/cover no-repeat;
}
.about .about_page_link {
  margin-bottom: 100px;
}
@media screen and (max-width: 900px) {
  .about .about_page_link {
    margin-bottom: 80px !important;
  }
}
.about .concept_message {
  margin-bottom: 120px;
  padding: 140px 0;
  border-radius: 100px 0 0 0;
  background: url(img/concept_message_bg.webp) center/cover no-repeat;
}
@media screen and (max-width: 767px) {
  .about .concept_message {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  .about .concept_message {
    padding: 80px 0;
    border-radius: 60px 0 0 0;
  }
}
@media screen and (max-width: 500px) {
  .about .concept_message {
    padding: 20px 0;
  }
}
.about .concept_message h3 {
  margin-bottom: 32px;
  font-size: 4rem;
  text-align: center;
  letter-spacing: 0.3rem;
}
@media screen and (max-width: 1200px) {
  .about .concept_message h3 {
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 500px) {
  .about .concept_message h3 {
    font-size: 2.2rem;
  }
}
.about .concept_message p {
  margin-inline: auto;
  font-size: 2rem;
  text-align: center;
  line-height: 2.4;
}
@media screen and (max-width: 767px) {
  .about .concept_message p {
    text-align: left;
    font-size: 1.5rem;
    line-height: 2;
  }
}
.about #concept {
  margin-bottom: 180px;
}
@media screen and (max-width: 767px) {
  .about #concept {
    margin-bottom: 80px;
  }
}
.about #concept .concept_list {
  margin-bottom: 130px;
}
@media screen and (max-width: 767px) {
  .about #concept .concept_list {
    margin-bottom: 60px;
  }
}
.about #concept .concept_list li {
  padding: 42px 0 50px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  border-radius: 25px;
  background-color: #F5F6F0;
  position: relative;
}
.about #concept .concept_list li::before {
  content: "";
  width: 1px;
  height: calc(100% - 80px);
  background-color: #ABABAB;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
  .about #concept .concept_list li::before {
    content: none;
  }
}
@media screen and (max-width: 1100px) {
  .about #concept .concept_list li {
    padding: 42px 18px;
    align-items: center;
  }
}
.about #concept .concept_list li:not(:last-of-type) {
  margin-bottom: 50px;
}
.about #concept .concept_list li .img_box, .about #concept .concept_list li .concept_text {
  width: 50%;
}
@media screen and (max-width: 1100px) {
  .about #concept .concept_list li .img_box, .about #concept .concept_list li .concept_text {
    width: calc(50% - 10px);
  }
}
@media screen and (max-width: 767px) {
  .about #concept .concept_list li .img_box, .about #concept .concept_list li .concept_text {
    width: 100%;
  }
}
.about #concept .concept_list li .img_box h3, .about #concept .concept_list li .img_box p, .about #concept .concept_list li .concept_text h3, .about #concept .concept_list li .concept_text p {
  width: 80%;
  margin-inline: auto;
}
@media screen and (max-width: 1100px) {
  .about #concept .concept_list li .img_box h3, .about #concept .concept_list li .img_box p, .about #concept .concept_list li .concept_text h3, .about #concept .concept_list li .concept_text p {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .about #concept .concept_list li .img_box h3, .about #concept .concept_list li .img_box p, .about #concept .concept_list li .concept_text h3, .about #concept .concept_list li .concept_text p {
    width: 100%;
  }
}
.about #concept .concept_list li .img_box img, .about #concept .concept_list li .concept_text img {
  max-width: 420px;
  margin-inline: auto;
  display: block;
}
@media screen and (max-width: 1100px) {
  .about #concept .concept_list li .img_box img, .about #concept .concept_list li .concept_text img {
    width: 90%;
  }
}
@media screen and (max-width: 500px) {
  .about #concept .concept_list li .img_box img, .about #concept .concept_list li .concept_text img {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .about #concept .concept_list li .img_box {
    width: 80%;
    margin-inline: auto;
    margin-bottom: 32px;
  }
}
.about #concept .concept_list li .concept_text {
  position: relative;
  padding-bottom: 10px;
}
.about #concept .concept_list li .concept_text h3 {
  margin-bottom: 40px;
  font-size: 32px;
  letter-spacing: 0.3rem;
}
@media screen and (max-width: 820px) {
  .about #concept .concept_list li .concept_text h3 {
    margin-bottom: 32px;
  }
}
@media screen and (max-width: 767px) {
  .about #concept .concept_list li .concept_text h3 {
    margin-bottom: 0px;
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 500px) {
  .about #concept .concept_list li .concept_text h3 {
    font-size: 2.2rem;
  }
}
.about #strength {
  margin-bottom: 180px;
}
@media screen and (max-width: 767px) {
  .about #strength {
    margin-bottom: 100px;
  }
}
.about #strength.sec_title_box {
  margin-bottom: 140px;
}
@media screen and (max-width: 1400px) {
  .about #strength.sec_title_box {
    margin-bottom: 100px;
  }
}
.about #strength .strength_point .strength_point_list {
  padding: 0 22px;
  padding-top: 180px;
  margin-top: -180px;
}
.about #strength .strength_point .strength_point_list:not(:last-of-type) {
  margin-bottom: 200px;
}
@media screen and (max-width: 900px) {
  .about #strength .strength_point .strength_point_list:not(:last-of-type) {
    margin-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list:not(:last-of-type) {
    margin-bottom: 80px;
  }
}
.about #strength .strength_point .strength_point_list .strength_area {
  padding: 80px 0 70px;
  background-color: #F4F4F4;
  border-radius: 25px;
}
@media screen and (max-width: 1100px) {
  .about #strength .strength_point .strength_point_list .strength_area {
    padding: 80px 0 60px;
  }
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list .strength_area {
    padding: 50px 0 40px;
  }
}
.about #strength .strength_point .strength_point_list .strength_area .inner {
  position: relative;
}
.about #strength .strength_point .strength_point_list .strength_area .inner h3 {
  font-size: 5.7rem;
  letter-spacing: 0.3rem;
  display: flex;
  align-items: center;
  position: absolute;
  top: -160px;
  left: -80px;
}
@media screen and (max-width: 1400px) {
  .about #strength .strength_point .strength_point_list .strength_area .inner h3 {
    left: 10px;
  }
}
@media screen and (max-width: 900px) {
  .about #strength .strength_point .strength_point_list .strength_area .inner h3 {
    font-size: 4.6rem;
  }
}
@media screen and (max-width: 820px) {
  .about #strength .strength_point .strength_point_list .strength_area .inner h3 {
    font-size: 4rem;
    top: -124px;
  }
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list .strength_area .inner h3 {
    top: -94px;
    font-size: clamp(2.2rem, 5.5vw, 4rem);
  }
}
@media screen and (max-width: 500px) {
  .about #strength .strength_point .strength_point_list .strength_area .inner h3 {
    top: -80px;
  }
}
.about #strength .strength_point .strength_point_list .strength_area .inner h3 .strength_num {
  margin-right: 30px;
  display: inline-block;
  color: #E59751;
  font-size: 7.5rem;
  line-height: 1.8;
}
@media screen and (max-width: 820px) {
  .about #strength .strength_point .strength_point_list .strength_area .inner h3 .strength_num {
    margin-right: 16px;
    font-size: 4.5rem;
  }
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list .strength_area .inner h3 .strength_num {
    font-size: clamp(3rem, 8vw, 4.5rem);
  }
}
@media screen and (max-width: 500px) {
  .about #strength .strength_point .strength_point_list .strength_area .inner h3 .strength_num {
    margin-right: 8px;
  }
}
.about #strength .strength_point .strength_point_list .strength_area .inner h3 .strength_span {
  font-size: 3rem;
}
@media screen and (max-width: 1100px) {
  .about #strength .strength_point .strength_point_list .strength_area .inner h3 .strength_span {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list .strength_area .inner h3 .strength_span {
    display: block;
    font-size: 1.8rem;
  }
}
.about #strength .strength_point .strength_point_list .strength_area .strength_item li:not(:last-of-type) {
  margin-bottom: 140px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list .strength_area .strength_item li:not(:last-of-type) {
    margin-bottom: 80px;
  }
}
.about #strength .strength_point .strength_point_list .strength_area .strength_item li:not(:last-of-type)::before {
  content: "";
  width: 60px;
  height: 120px;
  background: url(img/strength_line.svg) top center/60px 120px no-repeat;
  position: absolute;
  bottom: -120px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1100px) {
  .about #strength .strength_point .strength_point_list .strength_area .strength_item li:not(:last-of-type)::before {
    height: 80px;
    width: 40px;
    bottom: -90px;
    background: url(img/strength_line.svg) top center/40px 80px no-repeat;
  }
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list .strength_area .strength_item li:not(:last-of-type)::before {
    bottom: -80px;
    height: 60px;
    width: 30px;
    background: url(img/strength_line.svg) top center/30px 60px no-repeat;
  }
}
.about #strength .strength_point .strength_point_list .strength_area .strength_item li:nth-child(even) .inner {
  flex-direction: row-reverse;
}
.about #strength .strength_point .strength_point_list .strength_area .strength_item li .inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.about #strength .strength_point .strength_point_list .strength_area .strength_item li .inner .text_box {
  width: 48%;
  max-width: 500px;
}
@media screen and (max-width: 1100px) {
  .about #strength .strength_point .strength_point_list .strength_area .strength_item li .inner .text_box {
    width: 45%;
  }
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list .strength_area .strength_item li .inner .text_box {
    width: 100%;
    max-width: unset;
  }
}
.about #strength .strength_point .strength_point_list .strength_area .strength_item li .inner .text_box h4 {
  margin-bottom: 20px;
  font-size: 3rem;
  padding-bottom: 10px;
  letter-spacing: 0.2rem;
  border-bottom: 1px solid #E59751;
}
@media screen and (max-width: 900px) {
  .about #strength .strength_point .strength_point_list .strength_area .strength_item li .inner .text_box h4 {
    margin-bottom: 18px;
    padding-bottom: 0;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 500px) {
  .about #strength .strength_point .strength_point_list .strength_area .strength_item li .inner .text_box h4 {
    font-size: 2.2rem;
  }
}
.about #strength .strength_point .strength_point_list .strength_area .strength_item li .inner .img_box {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list .strength_area .strength_item li .inner .img_box {
    width: 100%;
    max-width: 400px;
    margin-inline: auto;
  }
}
@media screen and (max-width: 500px) {
  .about #strength .strength_point .strength_point_list:last-child .strength_item li:not(:last-of-type) {
    margin-bottom: 120px;
  }
}
.about #strength .strength_point .strength_point_list:last-child .strength_item li:not(:last-of-type)::before {
  content: "";
  width: 12px;
  height: 150px;
  background: url(img/strength_line3.svg) top center/12px 150px no-repeat;
  position: absolute;
  bottom: -120px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list:last-child .strength_item li:not(:last-of-type)::before {
    width: 12px;
    height: 110px;
    background: url(img/strength_line3.svg) top center/12px 110px no-repeat;
  }
}
@media screen and (max-width: 500px) {
  .about #strength .strength_point .strength_point_list:last-child .strength_item li:not(:last-of-type)::before {
    bottom: -130px;
  }
}
.about #strength .strength_point .strength_point_list:last-child .strength_item li:not(:last-of-type)::after {
  content: "y+M design officeなら";
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  font-size: 1.8rem;
  color: #E59751;
  position: absolute;
  bottom: -54px;
  left: calc(50% + 20px);
}
@media screen and (max-width: 767px) {
  .about #strength .strength_point .strength_point_list:last-child .strength_item li:not(:last-of-type)::after {
    font-size: 1.6rem;
    left: calc(50% + 10px);
    bottom: -72px;
  }
}
@media screen and (max-width: 500px) {
  .about #strength .strength_point .strength_point_list:last-child .strength_item li:not(:last-of-type)::after {
    left: 50%;
    bottom: -32px;
    transform: translateX(-50%);
  }
}
.about #profile {
  margin-bottom: 264px;
}
@media screen and (max-width: 900px) {
  .about #profile {
    margin-bottom: 180px;
  }
}
@media screen and (max-width: 767px) {
  .about #profile {
    margin-bottom: 120px;
  }
}
.about #profile .profile_box .profile_block:not(:last-of-type) {
  margin-bottom: 148px;
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block:not(:last-of-type) {
    margin-bottom: 60px;
  }
}
.about #profile .profile_box .profile_block h3 {
  margin-bottom: 40px;
  padding-bottom: 10px;
  font-size: 2.4rem;
  letter-spacing: 0.3rem;
  border-bottom: 1px solid #ABABAB;
}
@media screen and (max-width: 500px) {
  .about #profile .profile_box .profile_block h3 {
    line-height: 1.4;
  }
}
.about #profile .profile_box .profile_block h3 .sps_br {
  display: none;
}
@media screen and (max-width: 500px) {
  .about #profile .profile_box .profile_block h3 .sps_br {
    display: block;
  }
}
.about #profile .profile_box .profile_block h3 .profile_name {
  font-size: 2rem;
  font-weight: normal;
  font-family: "Poppins", sans-serif;
  letter-spacing: 0.3rem;
}
.about #profile .profile_box .profile_block h3 .profile_name span {
  font-weight: bold;
}
.about #profile .profile_box .profile_block .profile_ttl {
  padding-left: 20px;
  font-size: 1.8rem;
  position: relative;
}
.about #profile .profile_box .profile_block .profile_ttl::before {
  content: "";
  width: 8px;
  height: 8px;
  background-color: #E59751;
  border-radius: 10px;
  position: absolute;
  top: 14px;
  left: 0;
}
.about #profile .profile_box .profile_block .profile_intr {
  margin-bottom: 40px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.about #profile .profile_box .profile_block .profile_intr .img_box {
  width: 32%;
  max-width: 380px;
}
@media screen and (max-width: 1100px) {
  .about #profile .profile_box .profile_block .profile_intr .img_box {
    width: 40%;
  }
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block .profile_intr .img_box {
    width: 100%;
    margin-inline: auto;
    margin-bottom: 10px;
  }
}
.about #profile .profile_box .profile_block .profile_intr .img_box img {
  border-radius: 0 0 40px 0;
}
.about #profile .profile_box .profile_block .profile_intr .profile_text {
  width: 58%;
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block .profile_intr .profile_text {
    width: 100%;
  }
}
.about #profile .profile_box .profile_block .profile_intr .profile_text .profile_ttl {
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block .profile_intr .profile_text .profile_ttl {
    margin-bottom: 10px;
  }
}
.about #profile .profile_box .profile_block .profile_intr .profile_text p {
  padding-left: 20px;
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block .profile_intr .profile_text p {
    padding-left: 0;
  }
}
.about #profile .profile_box .profile_block .profile_intr .profile_text .pr_sns_link {
  padding-left: 20px;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block .profile_intr .profile_text .pr_sns_link {
    padding-left: 0;
  }
}
.about #profile .profile_box .profile_block .profile_intr .profile_text .pr_sns_link p {
  padding-left: 0;
}
.about #profile .profile_box .profile_block .profile_intr .profile_text .pr_sns_link p span {
  color: #E59751;
}
.about #profile .profile_box .profile_block .profile_intr .profile_text .pr_sns_link ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 14px;
       column-gap: 14px;
}
.about #profile .profile_box .profile_block .profile_intr .profile_text .pr_sns_link ul li {
  width: 20px;
  height: 20px;
  box-sizing: border-box;
}
.about #profile .profile_box .profile_block .profile_other {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block .profile_other {
    row-gap: 20px;
  }
}
.about #profile .profile_box .profile_block .profile_other .skill, .about #profile .profile_box .profile_block .profile_other .career {
  width: 50%;
  padding-right: 32px;
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block .profile_other .skill, .about #profile .profile_box .profile_block .profile_other .career {
    width: 100%;
    padding-left: 0;
  }
}
.about #profile .profile_box .profile_block .profile_other .prorile_other_items .prorile_other_item:not(:last-of-type) {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block .profile_other .prorile_other_items .prorile_other_item:not(:last-of-type) {
    margin-bottom: 20px;
  }
}
.about #profile .profile_box .profile_block .profile_other .prorile_other_items .prorile_other_item:last-of-type .profile_other_list li {
  position: relative;
}
.about #profile .profile_box .profile_block .profile_other .prorile_other_items .prorile_other_item:last-of-type .profile_other_list li:not(:last-of-type)::before {
  content: "/";
  position: absolute;
  bottom: 0;
  right: -11px;
}
.about #profile .profile_box .profile_block .profile_other .prorile_other_items .prorile_other_item .profile_ttl {
  margin-bottom: 10px;
}
.about #profile .profile_box .profile_block .profile_other .prorile_other_items .prorile_other_item .profile_other_list {
  padding-left: 20px;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 16px;
       column-gap: 16px;
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block .profile_other .prorile_other_items .prorile_other_item .profile_other_list {
    padding-left: 0;
  }
}
.about #profile .profile_box .profile_block .profile_other .prorile_other_items .prorile_other_item .profile_other_list li {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
.about #profile .profile_box .profile_block .profile_other .prorile_other_items .prorile_other_item .profile_other_list li:not(:last-of-type)::before {
  content: "/";
  position: absolute;
  bottom: 0;
  right: -11px;
}
.about #profile .profile_box .profile_block .profile_other .career {
  padding-right: 0px;
}
.about #profile .profile_box .profile_block .profile_other .career table {
  width: 100%;
  padding-left: 20px;
}
@media screen and (max-width: 767px) {
  .about #profile .profile_box .profile_block .profile_other .career table {
    padding-left: 0;
  }
}
.about #profile .profile_box .profile_block .profile_other .career table tr {
  margin-bottom: 18px;
  display: flex;
}
.about #profile .profile_box .profile_block .profile_other .career table tr th, .about #profile .profile_box .profile_block .profile_other .career table tr td {
  display: block;
}
.about #profile .profile_box .profile_block .profile_other .career table tr th {
  width: 90px;
  color: #E59751;
  position: relative;
}
@media screen and (max-width: 500px) {
  .about #profile .profile_box .profile_block .profile_other .career table tr th {
    width: 58px;
  }
}
.about #profile .profile_box .profile_block .profile_other .career table tr th::before {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #ABABAB;
  position: absolute;
  top: 0;
  right: 0;
}
.about #profile .profile_box .profile_block .profile_other .career table tr td {
  width: calc(100% - 90px);
  padding-left: 20px;
}
@media screen and (max-width: 500px) {
  .about #profile .profile_box .profile_block .profile_other .career table tr td {
    width: calc(100% - 58px);
    padding-left: 10px;
  }
}
.about #campany {
  margin-bottom: 200px;
}
@media screen and (max-width: 820px) {
  .about #campany {
    margin-bottom: 100px;
  }
}
.about #campany table {
  width: 100%;
}
@media screen and (max-width: 500px) {
  .about #campany table {
    border-top: 1px solid #E59751;
  }
}
@media screen and (max-width: 500px) {
  .about #campany table tr {
    display: flex;
    flex-direction: column;
  }
}
.about #campany table th, .about #campany table td {
  padding: 22px 20px;
}
@media screen and (max-width: 767px) {
  .about #campany table th, .about #campany table td {
    padding: 20px 10px;
  }
}
.about #campany table th {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: left;
  color: #E59751;
  border-top: 1px solid #E59751;
}
.about #campany table th:last-of-type {
  border-bottom: 1px solid #E59751;
}
@media screen and (max-width: 767px) {
  .about #campany table th {
    width: 140px;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 500px) {
  .about #campany table th {
    width: 100%;
    border-top: none;
  }
}
.about #campany table td {
  border-top: 1px solid #333;
  line-height: 2;
  font-weight: bold;
}
@media screen and (max-width: 500px) {
  .about #campany table td {
    width: 100%;
    border-top: unset;
    padding: 10px 10px 40px;
  }
}
.about #campany table td:last-of-type {
  border-bottom: 1px solid #333;
}
@media screen and (max-width: 500px) {
  .about #campany table td:last-of-type {
    border-bottom: 1px solid #E59751;
  }
}
.about #campany table td .pc_br {
  display: none;
}
@media screen and (max-width: 1100px) {
  .about #campany table td .pc_br {
    display: block;
  }
}
.about #campany table td a {
  color: #333;
}
.about #campany table td .campany_map {
  display: inline-block;
  margin-left: 28px;
  font-weight: normal;
}
@media screen and (max-width: 1100px) {
  .about #campany table td .campany_map {
    margin-top: 10px;
    margin-left: 0;
  }
}
.about #campany table td .campany_map a {
  width: 120px;
  padding: 4px 10px;
  color: #E59751;
  font-size: 1.2rem;
  font-family: "Poppins", sans-serif;
  text-align: center;
  border: 1px solid #E59751;
  border-radius: 20px;
}
.about #campany table td .campany_map a:hover {
  background-color: #E59751;
  color: #fff;
}
.about #campany table td .office:not(:last-of-type) {
  margin-bottom: 26px;
}
.about #campany table td .office .office_tag {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 10px;
  padding: 2px 20px;
  color: #fff;
  border-radius: 40px;
  font-weight: bold;
  background-color: #333;
}
.about #campany table td .list_style li {
  padding-left: 18px;
  position: relative;
}
.about #campany table td .list_style li::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 4px;
  background-color: #333;
  position: absolute;
  top: 13px;
  left: 0;
}

/********** コンタクトページ **********/
.contact .s_mv {
  background: url(img/contact_mv.webp) top center/cover no-repeat;
}
.contact #form {
  margin-bottom: 150px;
}
@media screen and (max-width: 767px) {
  .contact #form {
    margin-bottom: 80px;
  }
}
.contact #form .form_catch {
  margin-bottom: 100px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .contact #form .form_catch {
    margin-bottom: 32px;
  }
}
.contact #form .form_catch h3 {
  font-size: 3.8rem;
  font-weight: 600;
}
@media screen and (max-width: 500px) {
  .contact #form .form_catch h3 {
    font-size: 2.4rem;
  }
}
.contact #form .form_box {
  max-width: 750px;
  margin-inline: auto;
  margin-bottom: 90px;
}
.contact #form .form_box .form_url {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .contact #form .form_box .form_url {
    margin-bottom: 26px;
  }
}
.contact #form .form_box li:not(:last-of-type) {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .contact #form .form_box li:not(:last-of-type) {
    margin-bottom: 26px;
  }
}
.contact #form .form_box li p {
  margin-bottom: 4px;
  font-size: 1.8rem;
  font-weight: bold;
  display: flex;
  align-items: center;
}
.contact #form .form_box li p .form_tag {
  margin-left: 18px;
  padding: 0 8px;
  font-size: 1.4rem;
  color: #fff;
  line-height: 1.6;
  display: inline-block;
  background-color: #AEAEAE;
}
.contact #form .form_box li p .required {
  background-color: #E59751;
}
.contact #form .form_box li .form_input {
  width: 100%;
}
.contact #form .form_box li .form_input .wpcf7-form-control-wrap {
  width: 100%;
}
.contact #form .form_box li .form_input .wpcf7-form-control {
  width: 100%;
  padding: 16px 18px;
  box-sizing: border-box;
  font-size: 1.5rem;
  border: 1px solid #c7c7c7;
  border-radius: 10px;
}
.contact #form .form_box .recruit_file .form_att {
  display: block;
  text-align: left;
  width: 100%;
  font-size: 1.3rem;
}
.contact #form .form_box .recruit_file .form_input .wpcf7-form-control {
  width: 100%;
  border: none !important;
  border-radius: 0;
  padding: 0;
}
.contact #form .form_box .recruit_file .form_input input[type=file]::file-upload-button {
  background-color: #fff;
  padding: 14px 20px;
  border-radius: 10px;
  border: 1px solid #c7c7c7;
}
.contact #form .form_box .recruit_file .select_file p {
  flex-direction: column;
}
.contact #form .form_box .recruit_file .select_file p br {
  display: none;
}
.contact #form .send {
  text-align: center;
}
.contact #form .send input {
  width: 300px;
  padding: 20px 20px;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.2rem;
  color: #fff;
  background-color: #E59751;
  border-radius: 50px;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .contact #form .send input {
    width: 280px;
  }
}
@media screen and (max-width: 500px) {
  .contact #form .send input {
    width: 240px;
    padding: 14px 20px;
  }
}
.contact #form .send input:hover {
  background-color: #333;
  transition: all 0.3s ease-in-out;
}
.contact #form .send .wpcf7-spinner {
  display: none;
}

.codedropz-upload-inner h3 {
  margin-bottom: 20px !important;
  font-size: 2.4rem !important;
}
@media screen and (max-width: 500px) {
  .codedropz-upload-inner h3 {
    margin-bottom: 10px !important;
    font-size: 1.8rem !important;
  }
}
@media screen and (max-width: 500px) {
  .codedropz-upload-inner span {
    font-size: 1.5rem;
  }
}
.codedropz-upload-inner .codedropz-btn-wrap {
  width: 160px;
  margin-inline: auto;
  background-color: #E59751;
}
.codedropz-upload-inner .codedropz-btn-wrap a {
  color: #fff;
  padding: 6px 10px;
  display: block;
}
@media screen and (max-width: 500px) {
  .codedropz-upload-inner .codedropz-btn-wrap a {
    font-size: 1.4rem !important;
  }
}

/********** リクルートページ **********/
.recruite .s_mv {
  background: url(img/recruite_mv.webp) top center/cover no-repeat;
}
.recruite #recruite_box h3 {
  margin-bottom: 68px;
  font-size: 3.5rem;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 500px) {
  .recruite #recruite_box h3 {
    margin-bottom: 40px;
  }
}
.recruite #recruite_box .recruite_content {
  max-width: 830px;
  margin-inline: auto;
  margin-bottom: 130px;
}
@media screen and (max-width: 767px) {
  .recruite #recruite_box .recruite_content {
    margin-bottom: 80px;
  }
}
.recruite #recruite_box .recruite_content h4 {
  margin-bottom: 28px;
  padding-left: 36px;
  font-size: 2.8rem;
  font-weight: 600;
  letter-spacing: 0.1rem;
  position: relative;
}
@media screen and (max-width: 500px) {
  .recruite #recruite_box .recruite_content h4 {
    padding-left: 26px;
    margin-bottom: 0;
    font-size: 2.4rem;
  }
}
.recruite #recruite_box .recruite_content h4::before {
  content: "";
  width: 16px;
  height: 16px;
  background-color: #E59751;
  border-radius: 20px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 500px) {
  .recruite #recruite_box .recruite_content h4::before {
    top: 25px;
  }
}
.recruite #recruite_box .recruite_content .recruit_catch {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .recruite #recruite_box .recruite_content .recruit_catch {
    text-align: left;
  }
}
.recruite #recruite_box .recruite_content table {
  width: 100%;
  box-sizing: border-box;
  margin-inline: auto;
  margin-bottom: 40px;
}
.recruite #recruite_box .recruite_content table tr th, .recruite #recruite_box .recruite_content table tr td {
  padding: 30px 20px;
  border-bottom: 1px solid #fff;
  text-align: left;
  vertical-align: middle;
  line-height: 2;
}
@media screen and (max-width: 1100px) {
  .recruite #recruite_box .recruite_content table tr th, .recruite #recruite_box .recruite_content table tr td {
    padding: 24px 10px;
  }
}
@media screen and (max-width: 500px) {
  .recruite #recruite_box .recruite_content table tr th, .recruite #recruite_box .recruite_content table tr td {
    padding: 18px 10px;
  }
}
.recruite #recruite_box .recruite_content table tr th {
  width: 100px;
  font-size: 1.8rem;
  padding-left: 36px;
}
@media screen and (max-width: 1100px) {
  .recruite #recruite_box .recruite_content table tr th {
    width: 120px;
    padding: 24px 10px;
  }
}
@media screen and (max-width: 500px) {
  .recruite #recruite_box .recruite_content table tr th {
    width: 100px;
    font-size: 1.4rem;
    padding: 18px 10px;
  }
}
.recruite #recruite_box .recruite_content table tr td {
  width: 82%;
}
@media screen and (max-width: 1100px) {
  .recruite #recruite_box .recruite_content table tr td {
    width: auto;
  }
}
@media screen and (max-width: 500px) {
  .recruite #recruite_box .recruite_content table tr td {
    font-size: 1.4rem;
  }
}
.recruite #recruite_box .recruite_content table tr td a {
  color: #333;
  border-bottom: 1px solid #333;
}

/********** 建築実績ページ **********/
.works .s_mv_box {
  margin-bottom: 40px;
}
.works .s_mv {
  background: url(img/works_mv.webp) top center/cover no-repeat;
}
.works .works_category {
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .works .works_category {
    margin-bottom: 40px;
  }
}
.works .works_category ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 10px;
}
.works .works_category ul li {
  width: calc(16.6666666667% - 5px);
}
@media screen and (max-width: 1200px) {
  .works .works_category ul li {
    width: 49%;
  }
}
@media screen and (max-width: 500px) {
  .works .works_category ul li {
    width: calc(50% - 5px);
  }
}
.works .works_category ul li a {
  width: 100%;
  max-width: 260px;
  box-sizing: border-box;
  padding: 10px;
  text-align: center;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 600;
  font-family: "Poppins", sans-serif;
  color: #333;
  border: 1px solid #333;
  border-radius: 15px;
}
@media screen and (max-width: 1200px) {
  .works .works_category ul li a {
    max-width: unset;
    line-height: 1.4;
  }
}
@media screen and (max-width: 767px) {
  .works .works_category ul li a {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 500px) {
  .works .works_category ul li a {
    padding: 8px 10px;
    font-size: 1.2rem;
  }
}
.works .works_category ul li a span {
  display: block;
  color: #E59751;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 767px) {
  .works .works_category ul li a span {
    font-size: 1.2rem;
  }
}
.works .works_content .works_item_box {
  margin-bottom: 100px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 70px;
}
@media screen and (max-width: 900px) {
  .works .works_content .works_item_box {
    justify-content: space-evenly;
    row-gap: 60px;
  }
}
@media screen and (max-width: 767px) {
  .works .works_content .works_item_box {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 500px) {
  .works .works_content .works_item_box {
    justify-content: center !important;
    row-gap: 40px;
  }
}
.works .works_content .works_item_box::after {
  content: "";
  width: calc(33.3333333333% - 34px);
}
@media screen and (max-width: 1100px) {
  .works .works_content .works_item_box::after {
    width: calc(33.3333333333% - 10px);
  }
}
@media screen and (max-width: 900px) {
  .works .works_content .works_item_box::after {
    width: calc(50% - 10px);
  }
}
@media screen and (max-width: 500px) {
  .works .works_content .works_item_box::after {
    width: 100%;
  }
}
.works .works_content .works_item_box .works_item {
  width: calc(33.3333333333% - 34px) !important;
  max-width: 360px;
  box-sizing: border-box;
}
@media screen and (max-width: 1100px) {
  .works .works_content .works_item_box .works_item {
    width: calc(33.3333333333% - 10px) !important;
  }
}
@media screen and (max-width: 900px) {
  .works .works_content .works_item_box .works_item {
    width: calc(50% - 10px) !important;
  }
}
@media screen and (max-width: 500px) {
  .works .works_content .works_item_box .works_item {
    width: 100% !important;
  }
}
.works .works_content .works_item_box .works_item a {
  color: #333;
}
.works .works_content .works_item_box .works_item a:hover {
  opacity: 0.6;
}
.works .works_content .works_item_box .works_item .img_box {
  margin-bottom: 8px;
}
@media screen and (max-width: 767px) {
  .works .works_content .works_item_box .works_item .img_box {
    margin-bottom: 0;
  }
}
.works .works_content .works_item_box .works_item h4 {
  margin-bottom: 14px;
  padding-bottom: 10px;
  font-size: 1.8rem;
  font-weight: 600;
  border-bottom: 1px solid #fff;
}
@media screen and (max-width: 767px) {
  .works .works_content .works_item_box .works_item h4 {
    padding-bottom: 4px;
    margin-bottom: 10px;
    font-size: 1.5rem;
  }
}
.works .works_content .works_item_box .works_item .item_tag_bos {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
}
@media screen and (max-width: 767px) {
  .works .works_content .works_item_box .works_item .item_tag_bos {
    gap: 6px 10px;
  }
}
.works .works_content .works_item_box .works_item .item_tag_bos li {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 2px 16px;
  background-color: #4C4D4D;
  border-radius: 30px;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .works .works_content .works_item_box .works_item .item_tag_bos li {
    font-size: 1.2rem;
  }
}

.term-house .works_category ul li:nth-child(1) a {
  color: #fff;
  border: 1px solid #E59751;
  background-color: #E59751;
}
.term-house .works_category ul li:nth-child(1) a span {
  color: #fff;
}

.term-apartment .works_category ul li:nth-child(2) a {
  color: #fff;
  border: 1px solid #E59751;
  background-color: #E59751;
}
.term-apartment .works_category ul li:nth-child(2) a span {
  color: #fff;
}

.term-shop .works_category ul li:nth-child(3) a {
  color: #fff;
  border: 1px solid #E59751;
  background-color: #E59751;
}
.term-shop .works_category ul li:nth-child(3) a span {
  color: #fff;
}

.term-facility .works_category ul li:nth-child(4) a {
  color: #fff;
  border: 1px solid #E59751;
  background-color: #E59751;
}
.term-facility .works_category ul li:nth-child(4) a span {
  color: #fff;
}

.term-renovation .works_category ul li:nth-child(5) a {
  color: #fff;
  border: 1px solid #E59751;
  background-color: #E59751;
}
.term-renovation .works_category ul li:nth-child(5) a span {
  color: #fff;
}

.term-other .works_category ul li:nth-child(6) a {
  color: #fff;
  border: 1px solid #E59751;
  background-color: #E59751;
}
.term-other .works_category ul li:nth-child(6) a span {
  color: #fff;
}

/* 実績詳細 */
.work_box {
  /**建築実績スライド**/
}
.work_box .works_slide {
  margin-bottom: 108px;
  position: relative;
}
@media screen and (max-width: 820px) {
  .work_box .works_slide {
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 500px) {
  .work_box .works_slide {
    margin-bottom: 32px;
  }
}
.work_box .works_slide .swiper-wrapper {
  position: static;
}
.work_box .works_slide .swiper-button-next, .work_box .works_slide .swiper-button-prev {
  width: 62px;
  top: 40%;
}
@media screen and (max-width: 767px) {
  .work_box .works_slide .swiper-button-next, .work_box .works_slide .swiper-button-prev {
    width: 48px;
  }
}
.work_box .works_slide .swiper-button-next::after, .work_box .works_slide .swiper-button-prev::after {
  content: none;
}
@media screen and (max-width: 767px) {
  .work_box .works_slide .swiper-button-prev {
    left: -10px;
  }
}
@media screen and (max-width: 767px) {
  .work_box .works_slide .swiper-button-next {
    right: -10px;
  }
}
.work_box .swiper {
  width: 100%;
  height: 100%;
}
.work_box .swiper-slide {
  text-align: center;
  font-size: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.work_box .swiper-slide img {
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
.work_box .swiper {
  width: 100%;
  height: 300px;
  margin-left: auto;
  margin-right: auto;
}
.work_box .swiper-slide {
  background-size: cover;
  background-position: center;
}
.work_box .work_slide_eye {
  max-width: 950px;
  height: auto;
  margin-bottom: 40px;
  aspect-ratio: 95/58;
  position: static;
}
@media screen and (max-width: 1200px) {
  .work_box .work_slide_eye {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .work_box .work_slide_eye {
    margin-bottom: 20px;
  }
}
.work_box .work_slide_thum_box {
  padding: 0 30px;
  overflow: hidden;
  position: relative;
}
.work_box .work_slide_thum_box .swiper-thum-next, .work_box .work_slide_thum_box .swiper-thum-prev {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .work_box .work_slide_thum_box .swiper-thum-next, .work_box .work_slide_thum_box .swiper-thum-prev {
    width: 16px;
  }
}
.work_box .work_slide_thum_box .swiper-thum-next {
  right: 0px;
}
.work_box .work_slide_thum_box .swiper-thum-prev {
  left: 0px;
}
.work_box .work_slide_thum {
  height: 20%;
  box-sizing: border-box;
  position: relative;
}
.work_box .work_slide_thum .swiper-slide {
  max-width: 200px;
  width: 100%;
  height: auto;
  aspect-ratio: 10/7;
  opacity: 0.4;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .work_box .work_slide_thum .swiper-slide {
    height: 100%;
  }
}
.work_box .work_slide_thum .swiper-slide-thumb-active {
  opacity: 1;
}
.work_box .swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.work_box .work_doc {
  margin-bottom: 130px;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 900px) {
  .work_box .work_doc {
    margin-bottom: 80px;
    row-gap: 40px;
    flex-direction: column;
  }
}
.work_box .work_doc .work_ex {
  width: 53%;
}
@media screen and (max-width: 900px) {
  .work_box .work_doc .work_ex {
    width: 100%;
  }
}
.work_box .work_doc .work_ex h4 {
  margin-bottom: 22px;
  padding-left: 36px;
  font-size: 2.8rem;
  font-weight: 600;
  position: relative;
}
@media screen and (max-width: 500px) {
  .work_box .work_doc .work_ex h4 {
    margin-bottom: 10px;
    padding-left: 30px;
    font-size: clamp(2rem, 5vw, 2.8rem);
  }
}
.work_box .work_doc .work_ex h4::before {
  content: "";
  width: 16px;
  height: 16px;
  background-color: #E59751;
  border-radius: 20px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .work_box .work_doc .work_ex h4::before {
    top: 21px;
    transform: none;
  }
}
.work_box .work_doc .work_ex p {
  line-height: 2;
}
.work_box .work_doc .work_date {
  width: 40%;
}
@media screen and (max-width: 900px) {
  .work_box .work_doc .work_date {
    width: 100%;
  }
}
.work_box .work_doc .work_date table {
  width: 100%;
}
.work_box .work_doc .work_date table th, .work_box .work_doc .work_date table td {
  padding: 28px 20px;
  font-weight: bold;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  text-align: left;
}
@media screen and (max-width: 500px) {
  .work_box .work_doc .work_date table th, .work_box .work_doc .work_date table td {
    padding: 20px 10px;
  }
}
.work_box .work_doc .work_date table th {
  width: 26%;
  min-width: 120px;
  position: relative;
}
.work_box .work_doc .work_date table th::after {
  content: "";
  width: 1px;
  height: 40px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.work_box .prev_next_link {
  max-width: 948px;
  margin-inline: auto;
}

/********** 依頼の流れページ **********/
.flow .s_mv {
  background: url(img/flow_mv.webp) top center/cover no-repeat;
}
.flow .flow_step {
  max-width: 870px;
  margin-inline: auto;
  margin-bottom: 150px;
}
@media screen and (max-width: 767px) {
  .flow .flow_step {
    margin-bottom: 60px;
  }
}
.flow .flow_step ul li {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 500px) {
  .flow .flow_step ul li {
    align-items: flex-start;
  }
}
.flow .flow_step ul li:not(:last-of-type) {
  margin-bottom: 32px;
  position: relative;
}
.flow .flow_step ul li:not(:last-of-type)::before {
  content: "";
  width: 2px;
  height: 42px;
  background: url(img/step_line.webp) top center/cover no-repeat;
  position: absolute;
  bottom: -32px;
  left: 48px;
}
@media screen and (max-width: 767px) {
  .flow .flow_step ul li:not(:last-of-type)::before {
    bottom: -36px;
    left: 40px;
  }
}
@media screen and (max-width: 500px) {
  .flow .flow_step ul li:not(:last-of-type)::before {
    bottom: -26px;
    left: 28px;
  }
}
.flow .flow_step ul li .step {
  width: 100px;
  color: #E59751;
  font-family: "Poppins", sans-serif;
  font-weight: bold;
  font-size: 1.6rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .flow .flow_step ul li .step {
    width: 80px;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 500px) {
  .flow .flow_step ul li .step {
    width: 60px;
  }
}
.flow .flow_step ul li .step .img_box {
  max-width: 90px;
  margin-inline: auto;
}
.flow .flow_step ul li .step_text {
  width: calc(100% - 120px);
  padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .flow .flow_step ul li .step_text {
    width: calc(100% - 80px);
  }
}
@media screen and (max-width: 767px) {
  .flow .flow_step ul li .step_text {
    width: calc(100% - 90px);
  }
}
@media screen and (max-width: 500px) {
  .flow .flow_step ul li .step_text {
    width: calc(100% - 70px);
  }
}
.flow .flow_step ul li .step_text h3 {
  margin-bottom: 4px;
  font-size: 2.6rem;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .flow .flow_step ul li .step_text h3 {
    margin-bottom: 6px;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 500px) {
  .flow .flow_step ul li .step_text h3 {
    font-size: 1.8rem;
  }
}
.flow .flow_step ul li .step_text h3 .step_free {
  margin-left: 16px;
  display: inline-block;
  color: #E59751;
  padding: 1px 14px;
  font-size: 1.8rem;
  border: 1px solid #E59751;
  border-radius: 50px;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .flow .flow_step ul li .step_text h3 .step_free {
    font-size: 2rem;
  }
}
@media screen and (max-width: 500px) {
  .flow .flow_step ul li .step_text h3 .step_free {
    margin-left: 0;
    font-size: 1.4rem;
  }
}
.flow .flow_step ul li .step_text p {
  padding: 10px 20px;
  line-height: 2;
  font-size: 1.8rem;
  border-radius: 15px;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .flow .flow_step ul li .step_text p {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 500px) {
  .flow .flow_step ul li .step_text p {
    font-size: 1.4rem;
  }
}

/********** よくあるご質問 **********/
.faq .s_mv {
  background: url(img/faq_mv.webp) top center/cover no-repeat;
}
.faq .faq_sec {
  margin-bottom: 150px;
}
@media screen and (max-width: 820px) {
  .faq .faq_sec {
    margin-bottom: 80px;
  }
}
.faq .faq_sec ul .faq_sec_item {
  margin-top: -120px;
  padding-top: 120px;
}
.faq .faq_sec ul .faq_sec_item:not(:last-of-type) {
  margin-bottom: 100px;
}
@media screen and (max-width: 820px) {
  .faq .faq_sec ul .faq_sec_item:not(:last-of-type) {
    margin-bottom: 80px;
  }
}
.faq .faq_sec ul .faq_sec_item h3 {
  padding: 14px 26px;
  font-size: 2.4rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.2rem;
  border-radius: 10px;
  background-color: #E59751;
}
@media screen and (max-width: 1200px) {
  .faq .faq_sec ul .faq_sec_item h3 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .faq .faq_sec ul .faq_sec_item h3 {
    padding: 10px 20px;
    line-height: 1.6;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 500px) {
  .faq .faq_sec ul .faq_sec_item h3 {
    font-size: 1.5rem;
    padding: 10px 14px;
  }
}
.faq .faq_sec ul .faq_sec_item .faq_item {
  padding: 30px 30px 30px 10px;
  border-bottom: 1px solid #fff;
}
.faq .faq_sec ul .faq_sec_item .faq_item .q_item, .faq .faq_sec ul .faq_sec_item .faq_item .a_item {
  padding-left: 40px;
  padding-right: 40px;
  position: relative;
}
@media screen and (max-width: 820px) {
  .faq .faq_sec ul .faq_sec_item .faq_item .q_item, .faq .faq_sec ul .faq_sec_item .faq_item .a_item {
    padding-left: 30px;
  }
}
.faq .faq_sec ul .faq_sec_item .faq_item .q_item::before, .faq .faq_sec ul .faq_sec_item .faq_item .a_item::before {
  font-family: "Poppins", sans-serif;
  font-size: 3rem;
  font-weight: 600;
  color: #E59751;
  line-height: 1;
  letter-spacing: 0.2rem;
  position: absolute;
  top: 2px;
  left: 0;
}
@media screen and (max-width: 820px) {
  .faq .faq_sec ul .faq_sec_item .faq_item .q_item::before, .faq .faq_sec ul .faq_sec_item .faq_item .a_item::before {
    font-size: 2.4rem;
    top: 4px;
  }
}
.faq .faq_sec ul .faq_sec_item .faq_item .q_item {
  font-size: 1.8rem;
  font-weight: bold;
  cursor: pointer;
}
@media screen and (max-width: 820px) {
  .faq .faq_sec ul .faq_sec_item .faq_item .q_item {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 500px) {
  .faq .faq_sec ul .faq_sec_item .faq_item .q_item {
    line-height: 1.8;
  }
}
.faq .faq_sec ul .faq_sec_item .faq_item .q_item::before {
  content: "Q";
}
.faq .faq_sec ul .faq_sec_item .faq_item .q_item::after {
  content: "";
  width: 22px;
  height: 12px;
  background: url(img/faq_arrow.svg) top center/cover no-repeat;
  position: absolute;
  top: 50%;
  right: 10px;
  transition: all 0.6s ease-in-out;
  transform: translateY(-50%);
}
.faq .faq_sec ul .faq_sec_item .faq_item .a_open {
  display: block;
}
.faq .faq_sec ul .faq_sec_item .faq_item .a_open::after {
  transform: rotate(180deg);
  transition: all 0.6s ease-in-out;
}
.faq .faq_sec ul .faq_sec_item .faq_item .a_item {
  margin-top: 20px;
  display: none;
}
.faq .faq_sec ul .faq_sec_item .faq_item .a_item::before {
  content: "A";
}
.faq .faq_sec ul .faq_sec_item .faq_item .a_item .a_text a {
  padding-bottom: 2px;
  color: #E59751;
  border-bottom: 1px solid #E59751;
}

/********** お知らせ **********/
.single_mv .s_mv {
  background: url(img/news_mv.webp) top center/cover no-repeat;
}
.single_mv.award .s_mv {
  background: url(img/award_mv.webp) top center/cover no-repeat;
}

/********** 受賞実績 **********/
.award .s_mv {
  background: url(img/award_mv.webp) top center/cover no-repeat;
}

/********** プライバシーポリシー **********/
.privacy_area {
  margin-bottom: 60px;
}
.privacy_area .s_mv {
  background: url(img/contact_mv.webp) top center/cover no-repeat;
}
.privacy_area .privacy_num {
  counter-reset: rules 0;
}
.privacy_area .privacy_num a {
  color: #E59751;
  border-bottom: 1px solid #E59751;
}
.privacy_area .privacy_num a:hover {
  opacity: 0.6;
}
.privacy_area .privacy_num .privacy_text, .privacy_area .privacy_num .ol_basic {
  margin-top: 12px;
}
.privacy_area .privacy_num .h3_rules {
  margin-top: 32px;
  font-size: 2rem;
  font-weight: bold;
  font-family: "Poppins", sans-serif;
  letter-spacing: 0.1rem;
}
.privacy_area .privacy_num .h3_rules::before {
  counter-increment: rules;
  content: "第" counter(rules, decimal) "条";
  padding-right: 8px;
}
.privacy_area .privacy_num .ol_basic {
  position: relative;
  counter-reset: num 0;
}
.privacy_area .privacy_num .ol_basic li {
  padding-left: 20px;
  text-indent: -20px;
}
.privacy_area .privacy_num .ol_basic li::before {
  counter-increment: num;
  content: counter(num, lower-roman) ".";
  padding-right: 4px;
}

/********** 404：ページが見つからない時 **********/
.page_not {
  margin-bottom: 120px;
}
.page_not p {
  text-align: center;
  font-size: 2.4rem;
  margin-bottom: 32px;
}
@media screen and (max-width: 900px) {
  .page_not p {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .page_not p {
    font-size: 2rem;
  }
}
@media screen and (max-width: 500px) {
  .page_not p {
    font-size: 1.8rem;
  }
}
/*# sourceMappingURL=style.css.map */