@media screen and (max-width: 1080px) {
  .header_nav_list:not(:first-of-type) {
    margin-left: 15px;
  }
  .header_active .header_inner {
    padding: 0 90px 0 20px;
  }
}
@media screen and (max-width: 950px) {
  .header_nav_list:not(:first-of-type) {
    margin-left: 10px;
  }
  .header_nav_link {
    font-size: 12px;
  }
  .footer_list01 {
    font-size: 14px;
  }
}
@media screen and (max-width: 800px) {
  #contents {
    padding-top: 14.6666666667vw;
  }
  .header_nav {
    display: none;
  }
  .header_inner {
    height: 14.6666666667vw;
    padding: 0 5.3333333333vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
  }
  .header_top_nav {
    top: 50%;
    right: 5.3333333333vw;
    transform: translateY(-50%);
  }
  .header_top_nav_item:not(:first-of-type) {
    margin-left: 2.6666666667vw;
  }
  .header_top_nav_link_language {
    width: 5.3333333333vw;
  }
  .header_top_nav_link_language02 {
    width: 4.1333333333vw;
  }
  .header_top_nav_link_access {
    width: 3.7333333333vw;
  }
  .header_top_nav_language-list.pc {
    display: none;
  }
  .header_top_nav_language-list.sp {
    position: fixed;
    top: 13.3333333333vw;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 0;
  }
  .header_top_nav_language-list.sp li.selected {
    display: none;
  }
  .header_top_nav_language-list.sp li button {
    background-color: #3E3A39;
    padding: 1.3333333333vw 1.3333333333vw;
    min-height: 11.3333333333vw;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100vw;
  }
  .header_top_nav_link_mail {
    width: 4vw;
  }
  .header_logo {
    width: 25.8666666667vw;
    padding-top: 0;
    padding-bottom: 0;
  }
  .header_sp_btn {
    display: block;
    width: 4.8vw;
    height: 5.3333333333vw;
    cursor: pointer;
    position: absolute;
    top: 50%;
    left: 5.3333333333vw;
    transform: translateY(-50%);
  }
  .header_sp_btn:hover {
    opacity: 0.75;
  }
  .header_sp_btn::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #595757;
    position: absolute;
    top: 1.3333333333vw;
    left: 0;
    transition-duration: 0.3s;
  }
  .header_sp_btn::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #595757;
    position: absolute;
    bottom: 1.3333333333vw;
    left: 0;
    transition-duration: 0.3s;
  }
  .header_sp_btn_active::before {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
  }
  .header_sp_btn_active::after {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
  }
  .header_active {
    height: 14.6666666667vw;
  }
  .header_active .header_inner {
    padding: 0 5.3333333333vw;
  }
  .header_active .header_logo {
    display: block;
  }
  .sp_menu {
    width: 100%;
    height: calc(100vh - 14.6666666667vw);
    position: fixed;
    top: 14.6666666667vw;
    left: 0;
    z-index: 50;
    background-color: rgba(0, 0, 0, 0.7);
    overflow-y: scroll;
  }
  .sp_menu_inner {
    padding: 8vw 16.6666666667vw;
  }
  .sp_menu_item:not(:last-of-type) {
    margin-bottom: 2.6666666667vw;
  }
  .sp_menu_link {
    color: #fff;
    font-size: 4.4vw;
  }
  .sp_menu_link_allow {
    position: relative;
  }
  .sp_menu_link_allow::before {
    content: "";
    width: 2.9333333333vw;
    height: 2.2666666667vw;
    background-image: url(/assets/image/icon_allow_menu.png);
    background-size: cover;
    position: absolute;
    top: 50%;
    left: -1.3333333333vw;
    transform: translate(-100%, -50%);
    transition-duration: 0.3s;
  }
  .sp_menu_link_allow_active::before {
    transform: translate(-100%, -50%) rotate(180deg);
  }
  .sp_menu_list_sub {
    display: none;
  }
  .sp_menu_item_sub {
    margin-top: 0.6666666667vw;
  }
  .sp_menu_item_sub:first-of-type {
    margin-top: 2.6666666667vw;
  }
  .sp_menu_link_sub {
    color: #fff;
    font-size: 3.4666666667vw;
  }
  .sp_menu_link_sub_en {
    font-size: 4.4vw;
  }
}
@media screen and (max-width: 750px) {
  .inner {
    max-width: 100%;
    padding: 0;
  }
  .section_title {
    font-size: 4.8vw;
  }
  .btn {
    min-width: 30.5333333333vw;
    font-size: 3.2vw;
    padding: 1.3333333333 5.3333333333vw;
    border-radius: 6.8vw;
  }
  .footer_top {
    padding: 3.3333333333vw 0;
  }
  .footer_logo {
    width: 20.8vw;
  }
  .footer_bottom {
    background-color: #bfbfbf;
    padding: 7.0666666667vw 0 5.0666666667vw;
  }
  .footer_bottom_inner {
    padding: 0 6.6666666667vw;
  }
  .footer_list01 {
    display: block;
    font-size: 3.4375vw;
    line-height: 6.09375vw;
  }
  .footer_item01 {
    padding-right: 0;
    margin-right: 0;
  }
  .footer_item01::after {
    display: none;
  }
  .footer_list02 {
    display: block;
    font-size: 3.4375vw;
    margin-top: 6vw;
    line-height: 6.09375vw;
  }
  .footer_item02 {
    padding-right: 0;
    margin-right: 0;
  }
  .footer_item02::after {
    display: none;
  }
  .footer_copyright {
    font-size: 2.9333333333vw;
    color: #717171;
    margin-top: 6vw;
  }
  .pageTop {
    right: 4.6666666667vw;
    bottom: 4.6666666667vw;
  }
  .pageTop a {
    width: 10vw;
    height: 10vw;
  }
  .pageTop a::after {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    top: 4vw;
  }
  .page_top .fv_area_bg {
    height: 133.3333333333vw;
  }
  .page_top .fv_item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .page_top .fv_img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .page_top .fv_copy {
    width: 100%;
    text-align: center;
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
    font-size: 7.3333333333vw;
    text-shadow: 0 0 1.2vw rgba(0, 0, 0, 0.3);
  }
  .page_top .fv_pagenation {
    padding: 5.3333333333vw;
  }
  .page_top .fv_pagenation_item {
    width: 1.0666666667vw;
    height: 1.0666666667vw;
  }
  .page_top .fv_pagenation_item:not(:first-of-type) {
    margin-left: 1.3333333333vw;
  }
  .page_top .news {
    margin-top: 4.6666666667vw;
  }
  .page_top .news_list {
    max-width: 84vw;
    margin: 4vw auto 0;
    padding: 0;
  }
  .page_top .news_item {
    font-size: 3.2vw;
    line-height: 1.5;
    margin-bottom: 2.4vw;
  }
  .page_top .news_link {
    display: flex;
    align-items: flex-start;
  }
  .page_top .news_date {
    margin-right: 4vw;
  }
  .page_top .news_area_btn {
    margin: 5.3333333333vw 0 0;
  }
  .page_top .news_bottom {
    margin-top: 25.3333333333vw;
  }
  .page_top .news_bottom_list {
    display: block;
  }
  .page_top .news_bottom_item {
    text-align: center;
    width: 100%;
  }
  .page_top .news_bottom_item:first-of-type {
    margin-bottom: 25.3333333333vw;
  }
  .page_top .news_bottom_item:nth-of-type(2) {
    margin-bottom: 25.3333333333vw;
  }
  .page_top .news_bottom_item:last-of-type {
    margin-left: 0;
  }
  .page_top .news_bottom_top {
    font-size: 4.8vw;
    color: #2f2f2f;
  }
  .page_top .news_bottom_img {
    display: block;
    margin-top: 5.3333333333vw;
  }
  .page_top .news_bottom_btn_box {
    margin-top: 4.6666666667vw;
  }
  .gallery {
    margin-top: 26.6666666667vw;
  }
  .gallery_lead {
    max-width: 73.3333333333vw;
    margin: 3.3333333333vw auto 0;
    padding: 0;
    font-size: 3.2vw;
    line-height: 1.79;
  }
  .gallery_list {
    margin-top: 10.6666666667vw;
    margin-bottom: -3.3333333333vw;
    padding: 0 3.3333333333vw;
  }
  .gallery_item {
    width: calc(50% - 1.3333333333vw);
    margin-bottom: 3.3333333333vw;
  }
  .gallery_item:not(:nth-of-type(4n)) {
    margin-right: 0;
  }
  .gallery_item:not(:nth-of-type(2n)) {
    margin-right: 2.6666666667vw;
  }
  .gallery_area_hover {
    min-height: 21.3333333333vw;
    padding: 2.6666666667vw;
    font-size: 3.2vw;
  }
  .gallery_address {
    margin-top: 2vw;
  }
  .page_top .product {
    padding-top: 25.3333333333vw;
  }
  .page_top .product.area_contact {
    padding-bottom: 8.4vw;
  }
  .page_top .product_img {
    margin-top: 4vw;
  }
  .page_top .product_btn_box {
    margin-top: 4.6666666667vw;
  }
  .page_top .about {
    padding-top: 25.3333333333vw;
  }
  .page_top .about_slider {
    margin-top: 30px;
    width: 100%;
    overflow: hidden;
    position: relative;
  }
  .page_top .about_prev {
    width: 10vw;
    height: 10vw;
    position: absolute;
    left: 3.3333333333vw;
    top: 42.6666666667vw;
  }
  .page_top .about_prev::after {
    content: "";
    width: 3.4666666667vw;
    height: 3.4666666667vw;
    top: 2.6666666667vw;
    left: 3.3333333333vw;
  }
  .page_top .about_next {
    width: 10vw;
    height: 10vw;
    position: absolute;
    right: 3.3333333333vw;
    top: 42.6666666667vw;
  }
  .page_top .about_next::after {
    content: "";
    width: 3.4666666667vw;
    height: 3.4666666667vw;
    top: 2.6666666667vw;
    left: 1.8666666667vw;
  }
  .page_top .about_slider_list {
    width: 1000vw;
    position: relative;
    display: flex;
    left: -100%;
  }
  .page_top .about_slider_item {
    width: 100vw;
    margin-right: 0;
    text-align: center;
  }
  .page_top .about_slider_link {
    color: #2f2f2f;
  }
  .page_top .about_slider_text {
    display: inline-block;
    color: #2f2f2f;
    font-size: 3.2vw;
    line-height: 2;
    margin-top: 1.3333333333vw;
    opacity: 1;
  }
  .page_top .about_slider_text_en {
    display: block;
    font-size: 3.2vw;
  }
  .page_low .low_page_title {
    font-size: 4.8vw;
    margin-bottom: 6.6666666667vw;
  }
  .page_low .low_text {
    max-width: 72vw;
    margin: 0 auto 0;
    padding: 0;
    font-size: 3.2vw;
    color: #666666;
    line-height: 1.79;
  }
  .page_low .box_low {
    display: block;
  }
  .page_low .box_low_img {
    width: 100%;
    margin-right: 0;
  }
  .page_low .box_text {
    font-size: 3.2vw;
    max-width: 72vw;
    margin: 0 auto 9.3333333333vw;
    padding: 0;
    line-height: 1.79;
  }
  .page_low .page_bottom {
    margin-top: 9.3333333333vw;
    padding-top: 2.6666666667vw;
    padding-bottom: 6.6666666667vw;
    font-size: 3.2vw;
    line-height: 1.766;
  }
  .page_low .page_bottom::before {
    content: "";
    width: 41.7333333333vw;
  }
  .page_connect .fv {
    margin-top: 8vw;
  }
  .page_connect .connect_title {
    font-size: 4.8vw;
    margin-bottom: 6.6666666667vw;
  }
  .page_connect .connect_box {
    display: block;
  }
  .page_connect .connect_box_img {
    width: 100%;
    margin-right: 0;
  }
  .page_connect .connect_title_area {
    padding-top: 4vw;
  }
  .page_connect .connect_title_area_title {
    font-size: 4.8vw;
    margin-bottom: 6.6666666667vw;
  }
  .page_connect .connect_area {
    margin-top: 8.6666666667vw;
  }
  .page_connect .connect_area_title {
    font-size: 4.8vw;
    margin-bottom: 6.6666666667vw;
  }
  .page_connect .connect_area_img01 {
    margin-top: 8vw;
  }
  .page_connect .connect_area_img02 {
    margin-top: 8vw;
  }
  .page_lapis .lapis_title_area {
    padding: 4vw 0 8.6666666667vw;
    text-align: center;
  }
  .page_lapis .lapis_page_title {
    font-size: 4.8vw;
    color: #2f2f2f;
  }
  .page_lapis .lapis_page_title span {
    display: block;
    font-size: 3.2vw;
  }
  .page_lapis .fv {
    margin-top: 10.6666666667vw;
  }
  .page_lapis .lapis_list {
    margin-top: 15.3333333333vw;
    margin-bottom: 6vw;
    display: block;
  }
  .page_lapis .lapis_item {
    width: 100%;
  }
  .page_lapis .lapis_item:not(:first-of-type) {
    margin-left: 0;
    margin-top: 14vw;
  }
  .page_lapis .lapis_item_top {
    font-size: 4.8vw;
    margin-bottom: 4vw;
  }
  .page_lapis .lapis_item_top span {
    font-size: 3.4666666667vw;
  }
  .page_lapis .lapis_btn {
    margin-top: 4vw;
  }
  .page_lapis_low .lapis_title_area {
    padding: 4vw 0 8.6666666667vw;
    text-align: center;
  }
  .page_lapis_low .lapis_page_title {
    font-size: 4.8vw;
    color: #2f2f2f;
  }
  .page_lapis_low .lapis_page_title span {
    display: block;
    font-size: 3.2vw;
  }
  .page_lapis_low .technology_lead {
    margin-top: 4vw;
  }
  .page_lapis_low .fv_bottom_text {
    font-size: 2vw;
    margin: 1.3333333333vw auto 0;
    padding: 0 2.6666666667vw;
  }
  .page_lapis_low .lapis_title_area {
    padding: 2.6666666667vw 0;
    text-align: center;
  }
  .page_lapis_low .technology_area01 {
    margin-top: 8.6666666667vw;
  }
  .page_lapis_low .technology_area02 {
    margin-top: 13.3333333333vw;
  }
  .page_lapis_low .technology_box {
    display: block;
  }
  .page_lapis_low .technology_box_img {
    width: 100%;
    margin-right: 0;
  }
  .page_lapis_low .technology_box_text {
    margin-top: 9.3333333333vw;
  }
  .page_lapis_low .technology_box_img_text {
    font-size: 2vw;
    margin: 1.3333333333vw auto 0;
    padding: 0 2vw;
  }
  .page_lapis_low .img_text {
    font-size: 2vw;
    margin: 1.3333333333vw auto 0;
    padding: 0 2vw;
  }
  .page_lapis_low .box_low_img02 {
    margin-top: 4vw;
  }
  .page_lapis_low .technology_area03 {
    margin-top: 10vw;
  }
  .page_lapis_low .box_img_item img {
    max-height: 41.3333333333vw;
  }
  .page_lapis_low .img_large {
    margin-top: 10vw;
  }
  .page_design .design_lead {
    margin-top: 6.6666666667vw;
  }
  .page_design .design_box {
    display: block;
    margin-top: 9.6vw;
  }
  .page_design .design_box_text {
    margin-top: 7.3333333333vw;
  }
  .page_design .design_box_img01 {
    width: 100%;
    margin-right: 0;
  }
  .page_design .design_area02_img {
    margin-top: 0;
  }
  .page_space .space_lead {
    margin-top: 6.6666666667vw;
    margin-bottom: 10vw;
  }
  .page_space .space_area01 {
    margin-bottom: 0;
  }
  .page_space .space_text_sp {
    margin-top: 9.6vw;
  }
  .page_space .space_area01_img {
    margin-top: 9.8666666667vw;
  }
  .page_title_area {
    padding: 4vw 0 8.6666666667vw;
  }
  .page_title {
    font-size: 4.8vw;
    color: #2f2f2f;
  }
  .page_title span {
    display: block;
    font-size: 3.2vw;
    margin-top: 1.3333333333vw;
  }
  .page_news {
    min-height: 100%;
  }
  .page_news .news_body {
    margin-bottom: 10.6666666667vw;
  }
  .page_news .news_list {
    width: 81.6vw;
    padding: 0;
  }
  .page_news .news_link {
    padding: 2.6666666667vw 0;
    font-size: 3.2vw;
  }
  .page_news dl {
    display: block;
    line-height: 1.5;
  }
  .page_news dt {
    min-width: 100%;
    margin-bottom: 0.6666666667vw;
  }
  .page_news .pagenation {
    margin-top: 9.3333333333vw;
  }
  .page_news .pagenation_item {
    font-size: 3.4666666667vw;
    color: #2f2f2f;
  }
  .page_news .pagenation_item:not(:last-of-type) {
    margin-right: 3.0666666667vw;
  }
  .page_news .pagenation_link {
    font-size: 3.4666666667vw;
    line-height: 1.61;
  }
  .page_news_detail {
    min-height: 100%;
  }
  .page_news_detail .news_body {
    width: 81.6vw;
    margin: 0 auto 12vw;
    padding: 0;
    font-size: 3.2vw;
    color: #666666;
    line-height: 1.79;
  }
  .page_news_detail .news_body .news_body_inner {
    border-top: none;
    padding-top: 2vw;
  }
  .page_news_detail .news_body h2 {
    font-size: 3.7333333333vw;
    margin-bottom: 1em;
  }
  .page_news_detail .news_body p {
    font-size: 3.2vw;
    line-height: 1.79;
  }
  .page_contact .contact_body {
    max-width: 82.4vw;
    margin: 0 auto 8.6666666667vw;
    padding: 0;
    font-size: 3.2vw;
  }
  .page_contact .contact_lead {
    letter-spacing: -0.02em;
    margin-top: 0;
    margin-bottom: 6.6666666667vw;
  }
  .page_contact .form_container {
    display: block;
    margin-bottom: 2.6666666667vw;
  }
  .page_contact .form_container + .error {
    margin-bottom: 20px;
    margin-right: auto;
    margin-left: 0px;
  }
  .page_contact label {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    padding-right: 0;
    margin-bottom: 1.3333333333vw;
  }
  .page_contact label .required {
    width: 9.6vw;
    height: 5.3333333333vw;
    font-size: 2.8vw;
    border-radius: 0.6666666667vw;
    margin-left: 2vw;
  }
  .page_contact .detail_container {
    display: block;
  }
  .page_contact .detail_container label {
    width: 100%;
    padding-right: 0;
  }
  .page_contact .detail_container + .error {
    margin-bottom: 20px;
    margin-right: auto;
    margin-left: 0px;
  }
  .page_contact input {
    width: 100%;
    border: 1px solid #b2b2b2;
    background-color: #fafafa;
    padding: 1.8666666667vw;
  }
  .page_contact .form_address {
    width: 100%;
    min-height: 17.0666666667vw;
  }
  .page_contact textarea {
    display: block;
    border: 1px solid #b2b2b2;
    background-color: #fafafa;
    padding: 1.8666666667vw;
    margin-top: 0;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
  }
  .page_contact .form_btn {
    width: 24.2666666667vw;
    height: 6.6666666667vw;
    border-radius: 3.3333333333vw;
    font-size: 2.9333333333vw;
    margin: 5.3333333333vw auto 0;
  }
  .page_contact .form_btn_prev {
    margin: 2.6666666667vw auto 0;
  }
  .page_contact .form_btn_top {
    line-height: 6.6666666667vw;
  }
  .page_contact_comfirm .comfirm_text {
    font-size: 2.9333333333vw;
    line-height: 1.79;
  }
  .page_contact_comfirm .comfirm_text_area {
    margin-top: 0;
  }
  .page_contact_comfirm .form_btn {
    margin: 5.3333333333vw 0 0;
  }
  .page_contact_comfirm .form_btn_prev {
    margin-right: 2.6666666667vw;
  }
  .page_contact_thanks {
    min-height: 100%;
  }
  .page_contact_thanks .contact_body {
    margin-bottom: 29.3333333333vw;
  }
  .page_contact_thanks .contact_lead {
    margin-bottom: 10.6666666667vw;
  }
  .page_recruit {
    min-height: 100%;
  }
  .page_recruit .recruit_body {
    max-width: 82.4vw;
    margin: 0 auto 8.6666666667vw;
    padding: 0;
    font-size: 2vw;
  }
  .page_recruit .recruit_inner {
    border-top: none;
    padding-top: 2vw;
    min-height: 40vw;
  }
  .page_recruit .recruit_info {
    width: 23.3333333333vw;
    height: 5.0666666667vw;
    font-size: 3.2vw;
  }
  .page_recruit .recruit_text {
    font-size: 3.2vw;
    margin-top: 3.2vw;
  }
  .page_house .house_lead {
    margin-top: 5.3333333333vw;
  }
  .page_house .house_img {
    display: block;
    max-width: 100%;
    margin: 6.6666666667vw auto;
    padding: 0;
  }
  .page_about .about_inner {
    max-width: 90.6666666667vw;
    margin: 0 auto 4vw;
    padding: 0;
  }
  .page_about .about_list {
    display: block;
    margin-bottom: 0;
    padding-top: 0;
  }
  .page_about .about_item {
    text-align: left;
    max-width: 100%;
    margin-bottom: 0;
    padding: 2vw 0;
    display: flex;
    align-items: center;
  }
  .page_about .about_item:not(:last-of-type) {
    border-bottom: 1px solid #b2b2b2;
  }
  .page_about .about_link_text {
    display: block;
    color: #2f2f2f;
    font-size: 3.2vw;
    margin-top: 0;
    padding-left: 5.3333333333vw;
  }
  .page_about .about_link_text span {
    display: block;
    line-height: 1;
    font-size: 4.8vw;
    margin-bottom: 0;
  }
  .page_about .about_link_img {
    width: 44vw;
  }
  .page_profile .profile_inner {
    max-width: 90.6666666667vw;
    padding: 0;
  }
  .page_profile dl {
    font-size: 2.9333333333vw;
    line-height: 1.81;
    display: block;
    border-bottom: 1px solid #b2b2b2;
    padding: 2vw 0;
  }
  .page_profile dl:first-of-type {
    border-top: none;
  }
  .page_profile dt {
    width: 100%;
    background-color: transparent;
    padding: 0 0 0.6666666667vw 0;
    color: #2f2f2f;
  }
  .page_profile dd {
    padding: 0 2vw;
    color: #666666;
  }
  .page_profile .profile_box_group {
    margin-top: 16vw;
  }
  .page_profile .profile_group_title {
    font-size: 3.2vw;
    margin-bottom: 6vw;
  }
  .page_profile .profile_group_title span {
    display: block;
    font-size: 4.8vw;
    margin-bottom: 1.3333333333vw;
  }
  .page_profile .recruit_img_bottom {
    margin-top: 7.3333333333vw;
  }
  .page_profile .recruit_top_txt {
    font-size: 3.7333333333vw;
    margin-bottom: 2vw;
  }
  .page_company_history .com_history_inner {
    max-width: 90.6666666667vw;
    padding: 0;
  }
  .page_company_history dl {
    font-size: 2.9333333333vw;
    line-height: 1.81;
  }
  .page_company_history dl:first-of-type {
    border-top: none;
  }
  .page_company_history dt {
    flex: 0 0 18.6666666667vw;
    padding: 2vw 0;
  }
  .page_company_history dd {
    padding: 2vw 0;
  }
  .page_sdgs .sdgs_inner {
    max-width: 72vw;
    padding: 6vw 0 0;
  }
  .page_sdgs .sdgs_top_logo {
    width: 44.8vw;
    margin: 0 auto;
  }
  .page_sdgs .sdgs_lead {
    margin-top: 5.3333333333vw;
    margin-bottom: 8vw;
    font-size: 3.2vw;
    line-height: 1.79;
  }
  .page_sdgs .sdgs_box {
    border-top: none;
    padding: 5.3333333333vw 0;
    display: block;
  }
  .page_sdgs .sdgs_box:last-of-type {
    padding-bottom: 0;
  }
  .page_sdgs .sdgs_box_logo {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    margin-right: 0;
    margin-bottom: 4.6666666667vw;
  }
  .page_sdgs .sdgs_logo {
    width: 21.8666666667vw;
    align-self: flex-start;
    margin-bottom: 0;
  }
  .page_sdgs .sdgs_logo:not(:first-of-type) {
    margin-left: 2.6666666667vw;
  }
  .page_sdgs .sdgs_box_text {
    max-width: 100%;
  }
  .page_sdgs .sdgs_box_text ul {
    color: #666666;
    font-size: 3.2vw;
    line-height: 1.79;
  }
  .page_sdgs .sdgs_box_text li:not(:first-of-type) {
    margin-top: 4.6666666667vw;
  }
  .page_access .access_inner {
    max-width: 90.6666666667vw;
    padding: 0;
  }
  .page_access .access_box {
    display: block;
  }
  .page_access .access_box:not(:first-of-type) {
    margin-top: 8.6666666667vw;
  }
  .page_access .access_img {
    width: 52.4vw;
    margin: 5.3333333333vw auto 0;
  }
  .page_access .access_body {
    width: 100%;
  }
  .page_access .access_name {
    font-size: 3.2vw;
    line-height: 1.79;
  }
  .page_access .access_address {
    margin-top: 3.2vw;
    color: #666666;
    line-height: 1.79;
  }
  .page_access .access_map {
    width: 100%;
    height: 54.1333333333vw;
    margin-top: 4.6666666667vw;
  }
  .page_access .access_map_mark {
    display: block;
    font-size: 2.9333333333vw;
    line-height: 1.95;
    color: #666666;
    background-color: #efefef;
    margin-top: 2vw;
    padding: 0.8vw 2.6666666667vw;
  }
  .page_privasy_policy {
    font-size: 3.2vw;
    line-height: 1.79;
    padding-bottom: 5.3333333333vw;
  }
  .page_privasy_policy .policy_inner {
    max-width: 72vw;
    padding: 0;
  }
  .page_privasy_policy .policy_lead {
    margin-top: 0;
  }
  .page_privasy_policy .policy_item {
    margin-top: 5.3333333333vw;
  }
  .page_privasy_policy .policy_sub_list {
    padding-left: 2em;
    text-indent: -2.5em;
  }
  .page_privasy_policy .policy_bottom {
    display: block;
    text-align: right;
  }
  .page_progress {
    font-size: 3.2vw;
    line-height: 1.79;
  }
  .page_progress .progress_inner {
    max-width: 93.3333333333vw;
    padding: 0;
  }
  .page_progress .progress_box01 {
    display: block;
  }
  .page_progress .progress_box01_text {
    max-width: 72vw;
    margin: 0 auto;
  }
  .page_progress .progress_box01_img {
    max-width: 100%;
    margin-right: 0;
    margin-top: 6.6666666667vw;
  }
  .page_progress .progress_box02 {
    display: block;
    margin-top: 5.3333333333vw;
  }
  .page_progress .progress_box02_img {
    display: flex;
    margin-left: 0;
    margin-top: 6vw;
  }
  .page_progress .progress_box02_img01 {
    width: 45.6vw;
    max-width: 100%;
    margin-right: 2vw;
  }
  .page_progress .progress_box02_img02 {
    width: 45.6vw;
    max-width: 100%;
  }
  .page_progress .progress_box02_text {
    padding: 0;
    min-width: 100%;
  }
  .page_progress .progress_box02_text p {
    position: relative;
    padding-left: 2.6666666667vw;
  }
  .page_progress .progress_box02_text p::before {
    content: "";
    top: 2.4vw;
    right: 100%;
  }
  .page_progress .progress_box02_text p::after {
    content: "";
    width: 1.0666666667vw;
    height: 1.0666666667vw;
    top: 2vw;
  }
  .page_progress .progress_box02_text01 {
    margin-bottom: 2vw;
    margin-left: 10.6666666667vw;
  }
  .page_progress .progress_box02_text02 {
    margin-bottom: 2vw;
    margin-left: 10.6666666667vw;
  }
  .page_progress .progress_box02_text03 {
    margin-left: 10.6666666667vw;
  }
  .page_progress .progress_box03 {
    margin-top: 4.6666666667vw;
  }
  .page_progress .progress_box03_text01 {
    position: relative;
    margin-left: 10.6666666667vw;
    padding-left: 2.6666666667vw;
  }
  .page_progress .progress_box03_text01::before {
    content: "";
    top: 2.4vw;
    right: 100%;
  }
  .page_progress .progress_box03_text01::after {
    content: "";
    width: 1.0666666667vw;
    height: 1.0666666667vw;
    top: 2vw;
  }
  .page_progress .progress_box03_img {
    display: flex;
    flex-wrap: wrap;
    margin-top: 6.6666666667vw;
  }
  .page_progress .progress_box03_img p {
    width: calc(50% - 1.0666666667vw);
  }
  .page_progress .progress_box03_img p:not(:first-of-type) {
    margin-left: 0;
  }
  .page_progress .progress_box03 img.progress_box03_img02 {
    margin-left: 2.1333333333vw;
  }
  .page_progress .progress_box03 img.progress_box03_img04 {
    margin-left: 2.1333333333vw;
  }
  .page_progress .progress_box03_text02 {
    width: 72vw;
    margin: 0 auto;
    padding: 8vw 0 7.3333333333vw;
  }
  .page_progress .progress_box04 {
    margin-top: 8vw;
  }
  .page_progress .progress_box04_text01 {
    position: relative;
    margin-left: 10.6666666667vw;
    padding-left: 2.6666666667vw;
  }
  .page_progress .progress_box04_text01::before {
    content: "";
    top: 2.4vw;
    right: 100%;
  }
  .page_progress .progress_box04_text01::after {
    content: "";
    width: 1.0666666667vw;
    height: 1.0666666667vw;
    top: 2vw;
  }
  .page_progress .progress_box04_img {
    display: flex;
    margin-top: 4vw;
  }
  .page_progress .progress_box04_img01 {
    width: calc(50% - 1.0666666667vw);
    margin-right: 2.1333333333vw;
  }
  .page_progress .progress_box04_img02 {
    width: calc(50% - 1.0666666667vw);
  }
  .page_progress .progress_box04_bottom {
    display: block;
    margin-top: 8vw;
  }
  .page_progress .progress_box04_bottom_img {
    max-width: 100%;
    margin-left: 0;
    margin-top: 7.3333333333vw;
  }
  .page_progress .progress_box04_bottom_img02 {
    margin-top: 2.6666666667vw;
  }
  .page_progress .progress_box04_bottom_text {
    max-width: 72vw;
    margin: 8vw auto 0;
  }
  .page_progress .progress_box05 {
    margin-top: 8vw;
  }
  .page_progress .progress_box05_text01 {
    position: relative;
    margin-left: 10.6666666667vw;
    padding-left: 2.6666666667vw;
  }
  .page_progress .progress_box05_text01::before {
    content: "";
    top: 2.4vw;
    right: 100%;
  }
  .page_progress .progress_box05_text01::after {
    content: "";
    width: 1.0666666667vw;
    height: 1.0666666667vw;
    top: 2vw;
  }
  .page_progress .progress_box05_img {
    margin-top: 6.6666666667vw;
  }
  .page_progress .progress_box06 {
    margin-top: 6.6666666667vw;
  }
  .page_progress .progress_box06_text01 {
    position: relative;
    margin-left: 10.6666666667vw;
    padding-left: 2.6666666667vw;
  }
  .page_progress .progress_box06_text01::before {
    content: "";
    top: 2.4vw;
    right: 100%;
  }
  .page_progress .progress_box06_text01::after {
    content: "";
    width: 1.0666666667vw;
    height: 1.0666666667vw;
    top: 2vw;
  }
  .page_progress .progress_box06_bottom {
    margin-top: 7.3333333333vw;
    display: block;
  }
  .page_progress .progress_box06_img01 {
    max-width: 100%;
    margin-right: 0;
  }
  .page_progress .progress_box06_bottom_right {
    max-width: 100%;
    margin-top: 7.3333333333vw;
  }
  .page_progress .progress_box06_text {
    max-width: 72vw;
    margin: 5.3333333333vw auto 0;
  }
  .page_tokyo .tokyo_body {
    padding-bottom: 8vw;
  }
  .page_tokyo .gallery_lead {
    margin-top: 0;
  }
  .page_tokyo .gallery_list {
    margin-top: 6.6666666667vw;
  }
  .page_tokyo_low {
    font-size: 3.2vw;
    line-height: 1.79;
  }
  .page_tokyo_low .tokyo_box01 {
    max-width: 100%;
    padding: 0;
    margin: 3.3333333333vw auto 0;
    display: block;
  }
  .page_tokyo_low .tokyo_box01_text {
    max-width: 72vw;
    margin: 0 auto;
  }
  .page_tokyo_low .tokyo_box01_text02 {
    margin-top: 10vw;
  }
  .page_tokyo_low .tokyo_box01_img {
    max-width: 100%;
    margin-top: 6.6666666667vw;
    margin-right: 0;
  }
  .page_tokyo_low .tokyo_box01_img_name {
    font-size: 2.6666666667vw;
    margin-top: 0.6666666667vw;
    padding-left: 2vw;
  }
  .page_tokyo_low .tokyo_box02 {
    max-width: 93.3333333333vw;
    margin: 4.6666666667vw auto -2vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .page_tokyo_low .tokyo_box02 p {
    margin-bottom: 2vw;
  }
  .page_tokyo_low .tokyo_box02_img01 {
    width: 48.85%;
  }
  .page_tokyo_low .tokyo_box02_img02 {
    width: 48.85%;
  }
  .page_tokyo_low .tokyo_box02_img03 {
    width: 60.42%;
  }
  .page_tokyo_low .tokyo_box02_img04 {
    width: 37.5%;
  }
  .page_tokyo_low .tokyo_box03 {
    margin-top: 9.3333333333vw;
  }
  .page_tokyo_low .tokyo_box03_text {
    max-width: 72vw;
    margin: 9.3333333333vw auto 0;
    padding: 0;
  }
  .page_tokyo_low .tokyo_box04 {
    max-width: 93.3333333333vw;
    margin: 8.6666666667vw auto -2vw;
    display: flex;
    flex-wrap: wrap;
  }
  .page_tokyo_low .tokyo_box04 img {
    margin-bottom: 2vw;
  }
  .page_tokyo_low .tokyo_box04_img01 {
    width: 60.4%;
  }
  .page_tokyo_low .tokyo_box04_img02 {
    width: 37.5%;
  }
  .page_tokyo_low .tokyo_box04_img03 {
    width: 37.5%;
  }
  .page_tokyo_low .tokyo_box04_img04 {
    width: 60.4%;
  }
  .page_tokyo_low .ebisu_box {
    display: flex;
    justify-content: space-between;
    max-width: 93.3333333333vw;
    margin: 4.6666666667vw auto 0;
  }
  .page_tokyo_low .ebisu_box .tokyo_box02_img01 {
    width: 56.4vw;
  }
  .page_tokyo_low .ebisu_box .ebisu_box_right {
    width: 35.2vw;
  }
  .page_tokyo_low .ebisu_box .ebisu_box_right p {
    width: 100%;
  }
  .page_tokyo_low .ebisu_box .tokyo_box02_img04 {
    margin-top: 2vw;
  }
  .page_tokyo_low .page_bottom {
    padding-top: 4.6666666667vw;
  }
  .page_tokyo_low .page_bottom_list {
    padding-left: 0;
    width: 30.6666666667vw;
    margin: 2.6666666667vw auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    height: auto;
  }
  .page_tokyo_low .page_bottom_item {
    width: 100%;
  }
  .page_tokyo_low .page_bottom_link {
    display: block;
    text-align: left;
    line-height: 6.8vw;
  }
  .page_product_history {
    padding-bottom: 0;
  }
  .page_product_history .history_inner {
    max-width: 93.3333333333vw;
    margin: 0 auto;
  }
  .page_product_history .history_top_list {
    justify-content: space-between;
    height: 10.1333333333vw;
  }
  .page_product_history .history_top_item {
    width: 16vw;
  }
  .page_product_history .history_top_item_project {
    width: 20vw;
  }
  .page_product_history .history_top_item:not(:first-of-type) {
    margin-left: 0;
  }
  .page_product_history .history_top_link {
    font-size: 3.8666666667vw;
    line-height: 6.4vw;
  }
  .page_product_history .history_top_link_project {
    font-size: 2.8vw;
  }
  .page_product_history .history_top_link::after {
    content: "";
    border-top: 1.4666666667vw solid #fff;
    border-right: 1.0666666667vw solid transparent;
    border-bottom: 0 solid transparent;
    border-left: 1.0666666667vw solid transparent;
    position: absolute;
    bottom: 1.3333333333vw;
    left: 50%;
    transform: translateX(-50%);
  }
  .page_product_history .history_body {
    margin-top: 3.3333333333vw;
    display: none;
  }
  .page_product_history .history_body_active {
    display: block;
  }
  .page_product_history .history_body_top {
    display: block;
    position: relative;
  }
  .page_product_history .history_body_top_img {
    width: 100%;
  }
  .page_product_history .history_body_top_text {
    display: block;
    width: 24vw;
    padding-left: 0;
    background-color: transparent;
    color: #fff;
    font-size: 5.3333333333vw;
    position: absolute;
    top: 2.6666666667vw;
    right: 4.6666666667vw;
    text-align: center;
  }
  .page_product_history .history_body_top_text span {
    display: block;
    font-size: 3.4666666667vw;
    font-style: italic;
  }
  .page_product_history .history_body_top_text_2020 {
    background: transparent;
    color: #fff;
  }
  .page_product_history .history_body_top_name {
    display: block;
    max-width: 100%;
    margin: 0.6666666667vw auto 0;
    padding: 0;
    font-size: 2.6666666667vw;
  }
  .page_product_history .history_item {
    height: auto;
    max-width: 72vw;
    margin: 5.3333333333vw auto 0;
    padding: 0;
    font-size: 3.2vw;
    line-height: 1.75;
  }
  .page_product_history .history_item_inner {
    display: block;
  }
  .page_product_history .history_item_sub {
    width: 100%;
  }
  .page_product_history .history_item_sub:not(:first-of-type) {
    margin-left: 0;
  }
  .page_product_history .project_list {
    display: flex;
    flex-wrap: wrap;
    max-width: 93.3333333333vw;
    padding: 0;
    margin: 0 auto -6vw;
  }
  .page_product_history .project_item {
    width: calc(25% - 6px);
    margin-bottom: 6vw;
  }
  .page_product_history .project_item:not(:nth-of-type(4n)) {
    margin-right: 8px;
  }
  .page_product_history .project_name {
    font-size: 2.1333333333vw;
    padding-top: 0px;
    color: #2f2f2f;
  }
  .page_product_history .history_item_top {
    font-weight: 600;
  }
  .page_product_history .history_item dl {
    display: flex;
  }
  .page_product_history .history_item dt {
    min-width: 18.6666666667vw;
  }
  .page_product_history .history_pagenation {
    margin-top: 9.3333333333vw;
  }
  .page_product_history .history_pagenation_link {
    cursor: pointer;
    display: block;
    font-size: 3.4666666667vw;
    color: #666;
    width: 5.0666666667vw;
    text-align: center;
  }
  .page_product_history .history_pagenation_link:hover {
    opacity: 0.75;
  }
  .page_product_history .history_pagenation_link_current {
    text-decoration: underline;
  }
  .page_product_history .page_bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .page_product_history .page_bottom_item {
    cursor: pointer;
    font-size: 4vw;
  }
  .page_product_history .page_bottom_item_project {
    font-size: 3.2vw;
  }
  .page_product_history .page_bottom_item:hover {
    opacity: 0.75;
  }
  .page_404 {
    min-height: 100%;
  }
  .page_404 .page_404_body {
    max-width: 93.3333333333vw;
    margin: 0 auto 7.3333333333vw;
    padding: 0;
    font-size: 2.9333333333vw;
    color: #666666;
    line-height: 1.93;
  }
  .page_404 .page_404_inner {
    border-top: 1px solid #b2b2b2;
    padding-top: 4vw;
    min-height: 100%;
  }
  .page_404 .page_404_info {
    width: 21.3333333333vw;
    height: 4vw;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3.2vw;
    background-color: #bfbfbf;
    color: #fff;
  }
  .page_404 .page_404_text {
    font-size: 2.4vw;
    color: #666;
    margin-top: 4vw;
  }
  .page_renovation .renovation_area {
    padding-top: 7.3333333333vw;
  }
  .page_renovation .renovation_inner {
    max-width: 100%;
    padding: 0;
  }
  .page_renovation .renovation_text_top {
    color: #666666;
    font-size: 3.6vw;
    max-width: 72vw;
    margin: 0 auto;
    padding: 0;
  }
  .page_renovation .renovation_text {
    color: #666666;
    font-size: 3.2vw;
    max-width: 72vw;
    padding: 0;
    line-height: 1.79;
  }
  .page_renovation .renovation_img01 {
    margin-top: 8.6666666667vw;
    margin-bottom: 8.6666666667vw;
  }
  .page_renovation .renovation_img_box {
    display: block;
    margin-top: 8vw;
  }
  .page_renovation .renovation_img {
    width: 100%;
  }
  .page_renovation .renovation_img:not(:first-of-type) {
    margin-top: 4.6666666667vw;
  }
}/*# sourceMappingURL=sp.css.map */