@charset "utf-8";


/*

    CTする方へ
    このサイトはタブレットのレスポンシブ対応も行っています。

    【クラス名による表示・非表示の制御】

    ◯　→　表示
    ☓　→　非表示

    PC画面の時
    .pc　→　◯
    .tb　→　☓
    .sp　→　☓

    TB画面の時
    .pc　→　☓
    .tb　→　◯
    .sp　→　☓

    SP画面の時
    .pc　→　☓
    .tb　→　☓
    .sp　→　◯
    .sp.tb →　◯

    後藤

*/

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    font-size: 100%;
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

html,
button,
input,
select,
textarea {
    font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', sans-serif;
}

@font-face {
    font-family: "Times-New-Roman";
    src: url(./fonts/Times-New-Roman.woff) format("truetype");
}

@font-face {
    font-family: "Bodoni";
    src: url(./fonts/Bodoni.ttf) format("truetype"),
}

@font-face {
    font-family: "ShreeDev0714";
    src: url(./fonts/ShreeDev0714.woff) format("truetype");
}

.f_shi {
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
}

.f_tim {
    font-family: "Times-New-Roman", serif;
    font-weight: 400;
}

.f_bod {
    font-family: "Bodoni", serif;
}

.f_shr {
    font-family: "ShreeDev0714", sans-serif;
}

body {
    color: #1A1A1A;
    font-size: 12px;
    line-height: 1.4;
    margin: 0px;
    min-width: 1400px;
    overflow: hidden;
    background-color: #FFFFFF;
    padding-top: 80px;
}

p {
    margin: 0px;
}

a:link {
    color: #004CCA;
}

a:visited {
    color: #6219DB;
}

a:hover {
    color: #048ADE;
    text-decoration: none;
}

a:active {
    color: #048ADE;
    text-decoration: none;
}

img {
    max-width: 100%;
}

ul {
    padding: 0px;
    list-style: none;
    margin: 0;
}

h1 {
    margin: 0;
}

h2 {
    margin: 0;
}

.pr_img {
    overflow: hidden;
    position: relative;
}

img.pa_img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    display: block;
}

.oh {
    overflow: hidden;
}

.L {
    float: left;
}

.R {
    float: right;
}

.sp {
    display: none;
}

.tb {
    display: none;
}

.pr {
    position: relative;
}

#menu {
    display: none;
}

.flex {
    flex-wrap: wrap;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
}

.flex-sb {
    flex-wrap: wrap;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    justify-content: space-between;
}

.wrap {
    width: 1100px;
    margin: 0 auto;
    max-width: 96%;
}

.common_page_wrap {
    padding: 100px 0;
}

#header {
    justify-content: flex-end;
    background-color: #000;
    min-width: 1400px;
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10000;
}

.hd_cont {
    width: 98%;
    align-items: center;
}

.hd_nav ul li a {
    color: #fff;
    font-size: 13px;
    font-weight: 300;
    letter-spacing: 0.8px;
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}

.hd_nav ul {
    height: 100%;
}

body {
    font-family: 'Hiragino Kaku Gothic ProN', 'ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ ProN W3', sans-serif;
}

.hd_nav ul li {
    position: relative;
}

.hd_nav ul li>a {
    padding: 0 20px;
    line-height: 80px;
}

.hd_nav_open {
    position: fixed;
    z-index: 100;
    width: 100%;
    left: 0;
    top: 80px;
    background-color: #000;
    padding: 30px 0 50px;
    transition: 0.3s;
    visibility: hidden;
    opacity: 0;
}

.hd_nav_open .flex-sb {
    justify-content: center;
    gap: 30px;
}

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

.hd_nav_open_item {
    width: 22%;
}

.product_ver .hd_nav_open_item {
    width: 14%;
}

.hd_nav_open_item h2 {
    font-size: 13px;
    font-weight: 300;
    text-align: center;
    letter-spacing: 1px;
    position: relative;
}

.hd_nav_open_item .img {
    margin-top: 15px;
    overflow: hidden;
    position: relative;
    padding-top: 15px;
    height: 115px;
}

.hd_nav_open_item .img::before {
    content: '';
    position: absolute;
    top: 0;
    width: 30px;
    height: 1px;
    background-color: #fff;
    right: 0;
    left: 0;
    margin: auto;
}

.hd_nav_open_item .img img {
    transition: 0.3s;
}

a {
    text-decoration: none;
}

.hd_nav_box {
    align-items: center;
}

.hd_contact_box .tel a {
    font-size: 16px;
    background-image: url(/wp/wp-content/uploads/2021/03/tel_icon.svg);
    letter-spacing: 3px;
    width: 190px;
}

.hd_contact_box .contact {
    background-color: #760b13;
}

.font-01 {
    font-family: tablet-gothic-semi-condensed, sans-serif;
    font-weight: 200;
    font-style: italic;
}

.hd_contact_box .contact a {
    font-size: 12px;
    background-image: url(/wp/wp-content/uploads/2021/03/mail_icon.svg);
    background-position: top 25px center;
    background-repeat: no-repeat;
    background-size: 30px 30px;
}

.hd_contact_box p a {
    letter-spacing: 1px;
    display: block;
    width: 95px;
    height: 100%;
    padding-left: 55px;
    position: relative;
    overflow: hidden;
    z-index: 100;
    color: #fff;
    background-position: top 15px center;
    background-repeat: no-repeat;
    background-size: 25px 20px;
    line-height: 40px;
    padding: 35px 0 5px;
    text-align: center;
    transform: skew(-20deg);
    z-index: 100;
}

.hd_contact_box {
    margin-right: -15px;
}

.hd_contact_box p {
    transform: skew(20deg);
    overflow: hidden;
    position: relative;
}

.hd_contact_box p::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.2);
    transition: 0.3s;
}

.hd_contact_box p:hover::before {
    left: 0;
}

.hd_nav {
    margin-right: 25px;
}

.hd_nav ul li a::before {
    transform: scaleY(0);
    content: '';
    position: absolute;
    top: 0px;
    right: 0;
    left: 0;
    margin: auto;
    width: 2px;
    height: 25px;
    background-color: #fff;
    transition: 0.2s;
    transform-origin: top;
}

.hd_nav ul li a:hover::before {
    transform: scaleY(1);
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
    bottom: 23px;
    text-align: right;
    padding-right: 0;
    padding-top: 0;
    z-index: 1000;
    margin: auto;
    height: auto;
    width: 100%;
    left: 5px;
    padding-right: calc(50vw - 625px);
}

.bx-wrapper .bx-pager.bx-default-pager a {
    cursor: pointer;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.5);
    margin: 0 0 0 10px;
    transition: 0.2s;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
    background-color: #fff;
}

#top_mv .bx-wrapper {
    box-shadow: none;
    border: none;
    margin: 0;
}

#top_mv {
    position: relative;
}


.none_ver .top_mv_cont {
    /* opacity: 0;
    z-index: -1; */
}

.top_mv_cont {
    position: absolute;
    bottom: 0;
    color: #fff;
    text-align: right;
    z-index: 100;
    height: 150px;
    top: 0;
    margin: auto;
    right: calc(50vw - 625px);
    width: 600px;
    transition: .3s;
}

#top_technique::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(16, 0, 53, 60%);
    /* z-index: 0; */
}

#top_technique>* {
    position: relative;
    z-index: 100;
}

#top_mv::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.7));
    z-index: 10;
    transition: .3s;
}

#top_mv.none_ver::before {
    opacity: 0;
    z-index: -1;
}

.top_mv_cont .main_text {
    width: 100%;
    margin: 0;
}

.top_mv_cont .en_company_name {
    position: relative;
    padding-bottom: 10px;
}

.top_mv_cont .en_company_name::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    width: 80%;
    height: 1px;
    background-color: #fff;
    margin: auto;
}

.top_mv_cont h1 {
    font-size: 14px;
    font-weight: 300;
    margin-top: 40px;
    line-height: 2;
    letter-spacing: 3px;
}

.common_h2_box {
    align-items: center;
    position: relative;
}

.common_h2_box h2 {
    font-size: 14px;
    font-weight: 300;
    margin-left: 20px;
    letter-spacing: 2px;
    line-height: 1;
}

a.top_information_btn {
    line-height: 33px;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    display: inline-block;
    color: #000;
    font-size: 14px;
    width: 220px;
    text-align: center;
    border: 1px solid #000;
    border-radius: 25px;
    letter-spacing: 1.5px;
    padding-left: 15px;
    transition: 0.2s;
    line-height: 2.2;
    padding: 0px 0 0 15px;
}

a.top_information_btn.sp {
    display: none;
}

a.top_information_btn::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 24px;
    margin: auto;
    width: 5px;
    height: 5px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    transform: rotate(45deg);
    transition: 0.2s;
}

.top_information_cont ul li a time {
    font-size: 14px;
    color: #666;
    letter-spacing: 1px;
}

.top_information_cont ul li a .ttl {
    color: #000;
    font-size: 14px;
    letter-spacing: 0.8px;
    margin-left: 20px;
    width: 80%;
    line-height: 1.7;
}

.top_information_cont ul li a {
    padding: 20px 25px;
    border-top: 1px solid #666;
    position: relative;
    overflow: hidden;
    align-items: center;
}

.top_information_cont ul li:last-child a {
    border-bottom: 1px solid #666;
}

#top_information {
    padding: 80px 0;
}

a.top_information_btn:hover {
    background-color: #000;
    color: #fff;
}

a.top_information_btn:hover::before {
    border-color: #fff;
}

.top_information_cont ul li a::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background-color: #fafafa;
    transition: 0.6s;
}

.top_information_cont ul li a>* {
    position: relative;
}

.top_information_cont ul li a:hover::before {
    left: 0;
}

#top_products {
    background-color: #f9f9f9;
    padding: 80px 0;
}

.common_h2_box.type01 {
    margin-bottom: 65px;
}

.top_products_cont_main ul li {
    width: 530px;
}

.top_products_cont_main ul li.add_item {
    display: none;
}

.top_products_cont_main ul li .text_box .text {
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: 2px;
    margin-top: 18px;
}

img {
    vertical-align: bottom;
}

.common_h3_box {
    align-items: center;
    border-bottom: 1px solid #666;
    padding: 24px 0 14px;
    background-image: url(/wp/wp-content/uploads/2021/03/arrow_mark.svg);
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 30px;
    display: block;
}

.common_h3_box h3 {
    margin: 0;
    font-size: 16px;
    color: #000;
    font-weight: 300;
    /* margin-left: 20px; */
    letter-spacing: 2px;
    width: auto;
    line-height: 1.8;
    margin-top: .3em;
}

.common_h3_box .en img {
    height: 18px;
}

.top_products_cont_main ul li a {
    color: #000;
}

.top_products_cont_main ul li:nth-child(n + 3) {
    margin-top: 30px;
    width: 30%;
}

.top_products_cont_sub a {
    color: #000;
}

.top_products_cont_sub ul li {
    width: 100%;
}

.top_products_cont_sub .text_box p {
    font-size: 14px;
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: 2px;
    margin-top: 15px;
}

.top_products_cont_sub .text_box .common_h3_box .en {
    margin: 0;
    line-height: 1;
}

.top_products_cont_sub {
    margin-top: 30px;
}

.top_products_cont ul li a .img {
    overflow: hidden;
    aspect-ratio: 254/149;
}

.top_products_cont ul li a .img img {
    transition: 0.5s;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top_products_cont ul li:hover {
    opacity: 0.8;
}

.top_products_cont_sub ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.top_products_cont ul li {
    transition: 0.5s;
}

.top_products_cont_sub ul li .common_h3_box {
    flex-direction: column;
    text-align: left;
    align-items: flex-start;
    /* gap: .5em; */
}

.top_products_cont_sub ul li .common_h3_box h3 {
    margin-left: 0;
    /* line-height: 1.8; */
}

#top_technique {
    background-image: url(/wp/wp-content/uploads/2021/03/top_technique_bg.jpg);
}

#top_strength,
#top_technique {
    color: #fff;
    width: 50%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    text-align: center;
    padding: 50px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}

#top_strength::before,
#top_technipue::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 35, 32, 90%);
}

#top_strength>*,
#top_technipue>* {
    position: relative;
    z-index: 10;
}

#top_strength .text,
#top_technique .text {
    font-size: 16px;
    line-height: 1.7;
    letter-spacing: 2px;
    margin-top: 35px;
    width: 100%;
}

.common_h2_box.type02 h2 {
    margin-left: 0;
    margin-top: 18px;
}

#top_technique .text {
    font-size: 16px;
    line-height: 1.7;
    letter-spacing: 2px;
    margin-top: 30px;
}

p.common_btn a {
    border: 1px solid #000;
    display: inline-block;
    width: 300px;
    padding: 16px 0 16px 26px;
    position: relative;
    transition: 0.2s;
    height: 50px;
    background-image: url(/wp/wp-content/uploads/2021/03/more_detail_text_black.svg);
    background-repeat: no-repeat;
    background-position: left 95px center;
}

p.common_btn a:hover {
    background-image: url(/wp/wp-content/uploads/2021/03/more_detail_text.svg);
}

p.common_btn a::before,
p.common_btn a::after {
    content: '';
    position: absolute;
    top: 3px;
    bottom: 0;
    left: 65px;
    margin: auto;
    width: 10px;
    height: 1px;
    background-color: #000;
    transition: 0.2s;
}

p.common_btn a::after {
    transform: rotate(90deg);
}

p.common_btn a:hover {
    background-color: #000;
    color: #fff;
}

p.common_btn a:hover::before,
p.common_btn a:hover::after {
    background-color: #fff;
}

p.common_btn {
    margin-top: 38px;
}

p.common_btn.type02 a {
    border-color: #fff;
    background-image: url(/wp/wp-content/uploads/2021/03/more_detail_text.svg);
}

p.common_btn.type02 a:hover {
    background-image: url(/wp/wp-content/uploads/2021/03/more_detail_text_black.svg);
}

p.common_btn.type02 a::before,
p.common_btn.type02 a::after {
    background-color: #fff;
}

p.common_btn.type02 a:hover::before,
p.common_btn.type02 a:hover::after {
    background-color: #000;
}

p.common_btn.type02 a:hover {
    background-color: #fff;
}

#top_casestudy_strength {
    padding: 100px 0;
    background-color: #f9f9f9;
}

#top_casestudy_strength .text {
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: 2px;
}

#top_casestudy_strength .text_box {
    width: 41.5%;
}

.top_case_study_imgs {
    width: 520px;
}

.top_case_study_imgs ul li {
    width: 250px;
}

.top_case_study_imgs ul li:nth-child(n + 3) {
    margin-top: 20px;
}

#top_case_study {
    padding: 80px 0;
}

.top_case_study_cont {
    align-items: center;
}

.top_case_study_cont .text_box {
    width: 520px;
}

.top_case_study_cont .text_box .text {
    font-size: 16px;
    letter-spacing: 2px;
    line-height: 1.7;
}

#top_strength {
    background-image: url(/wp/wp-content/uploads/2021/03/top_recruit_bg.jpg);
    background-size: cover;
    background-position: left;
    background-color: #000;
}

#top_catalog,
#top_faq {
    width: 50%;
    color: #fff;
    text-align: center;
    padding: 50px 0px;
}

#top_catalog {
    background-color: #666;
}

#top_faq {
    background-color: #760b13;
}

#top_catalog_faq .text {
    font-size: 16px;
    line-height: 1.7;
    letter-spacing: 2px;
    margin-top: 35px;
}

#top_recruit {
    background-image: url(/wp/wp-content/uploads/2021/03/top_recruit_bg.jpg);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 67%;
    background-color: #000;
    color: #fff;
    text-align: right;
    padding: 50px 0;
}

.common_h2_box.type03 {
    justify-content: flex-end;
}

.common_h2_box.type03 h2 {
    margin-left: 0;
    margin-right: 25px;
}

#top_recruit .text {
    letter-spacing: 2.5px;
    line-height: 1.7;
    font-size: 16px;
    margin-top: 40px;
}

#footer {
    background-color: #f9f9f9;
    padding: 100px 0 20px;
}

.ft_info_box .logo_box {
    align-items: center;
}

.ft_info_box .logo_box .logo {
    margin-right: 30px;
}

.ft_info_box .sns_box a {
    margin-right: 18px;
    transition: 0.2s;
    width: 31px;
    display: inline-block;
}

.ft_info_box .sns_box a:hover {
    opacity: 0.8;
}

.ft_info_box .add_tel {
    font-size: 15px;
    letter-spacing: 1px;
    margin-top: 22px;
}

.ft_nav_box {
    margin-top: 50px;
}

.ft_nav_box a {
    color: #000;
}

.ft_nav_box h2 {
    font-size: 18px;
    font-weight: 300;
    letter-spacing: 2px;
    border-bottom: 1px solid #000;
    padding-bottom: 15px;
    margin-bottom: 20px;
}

.ft_nav_box ul li a {
    font-size: 14px;
    color: #666;
    letter-spacing: 1.8px;
    transition: 0.2s;
}

.ft_nav_box ul li+li {
    margin-top: 5px;
}

.ft_nav_box ul li a:hover {
    font-weight: bold;
}

.ft_nav_box .sub_nav {
    width: 145px;
    margin-left: 15px;
}

.ft_nav_box .sub_nav ul li a {
    font-size: 16px;
    color: #000;
}

.ft_nav_box .sub_nav ul li+li {
    margin-top: 12px;
}

.copyright {
    font-size: 14px;
    color: #666;
    letter-spacing: 2px;
    margin-top: 75px;
}

.ft_nav_box .sub_nav ul li a:hover {
    font-weight: 300;
    color: #666;
}

.ft_nav_box h2 a:hover {
    color: #666;
}

.ft_nav_box h2 a {
    transition: 0.2s;
}

/*会社概要*/
.common_page_list ul li {
    font-size: 15px;
    background-color: #fafafa;
    border-left: 5px solid #760b13;
    padding: 15px 50px;
    letter-spacing: 1px;
    line-height: 1.8;
}

.common_page_list ul li+li {
    margin-top: 15px;
}

.common_page_list ul li .ttl {
    width: 200px;
}

.common_page_list ul li a {
    color: #000;
    background-image: url(/wp/wp-content/uploads/2021/03/link_icon.svg);
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 10px;
    padding-right: 22px;
}

.company_map {
    margin-top: 25px;
}

.company_map .img {
    width: 49%;
}

.company_map .map {
    width: 49%;
}

.company_map .map iframe {
    width: 100%;
    height: 100%;
}

.page_company_link_box {
    margin-top: 100px;
    background-color: #f1f1f1;
    padding: 30px 30px;
}

h2.common_page_h2 {
    font-size: 30px;
    font-weight: 300;
    letter-spacing: 4px;
    background-position: left center;
    background-size: 23px;
    background-repeat: no-repeat;
    background-image: url(/wp/wp-content/uploads/2021/03/square_mark.svg);
    padding-left: 45px;
    margin-bottom: 32px;
}

.page_company_overview a {
    color: #000;
}

.page_company_link_box h2.common_page_h2 {
    font-size: 22px;
    padding-left: 30px;
    background-size: 18px;
    margin-bottom: 12px;
}

.page_company_link_box ul li {
    width: 23.5%;
}

.page_company_link_box ul li a .img {
    overflow: hidden;
}

.page_company_link_box ul li a .img img {
    transition: 0.3s;
}

.page_company_link_box ul li:hover {
    opacity: 0.8;
}

.page_company_link_box ul li {
    transition: 0.3s;
}

.page_company_link_box ul li a {
    color: #000;
}

.common_page_list ul li .text {
    width: 945px;
}

/*関連会社について*/
.page_affiliate_info_box {
    align-items: center;
    margin-bottom: 20px;
}

.page_affiliate_info_box .img {
    width: 30%;
}

.page_affiliate_info_box .text_box {
    width: 68%;
}

.page_affiliate_info_box .text_box h2 {
    font-size: 25px;
    margin: 20px 0;
    letter-spacing: 2px;
}

.page_affiliate_info_box .text {
    font-size: 15px;
    line-height: 2;
    letter-spacing: 0.8px;
}

.page_affiliate .company_map .map {
    width: 100%;
    height: 268px;
}

/*沿革*/

.page_history_cont ul li {
    align-items: center;
}

.page_history_cont_box {
    width: 86%;
    align-items: center;
}

.page_history_cont ul li .age {
    background-color: #666;
    background-size: cover;
    color: #fff;
    width: 125px;
    height: 125px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    align-content: center;
    border-radius: 50%;
    position: relative;
}

.page_history_cont ul li .age .year_name {
    font-size: 18px;
    background-color: #fff;
    color: #666;
    padding: 1px 10px;
}

.page_history_cont ul li .age .year_num_box {
    width: 100%;
    text-align: center;
    font-size: 16px;
}

.page_history_cont ul li .age .year_num_box .year_num {
    font-size: 24px;
    margin-right: 2px;
}

.page_history_cont_box .img {
    width: 33%;
}

.page_history_cont_box .text_box {
    width: 64%;
}

.page_history_cont_box .text_box h2 {
    font-size: 25px;
}

.page_history_cont_box .text_box .text {
    font-size: 16px;
    line-height: 1.8;
    margin-top: 15px;
}

.page_history_cont ul li .age::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 0;
    height: 0;
    border-top: 20px solid #666;
    border-right: 20px solid transparent;
    right: -5px;
    transform: rotate(135deg) skew(10deg, 10deg);
}

.page_history_cont ul li+li {
    margin-top: 50px;
}

/*POST*/
.single_post_cont .ttl {
    font-size: 24px;
    letter-spacing: 1px;
    border-bottom: 1px solid #000;
    padding-bottom: 15px;
}

.single_post_cont .text_box p {
    font-size: 16px;
    line-height: 1.8;
    margin-top: 10px;
}

.single_post_cont .text_box h2 {
    font-size: 20px;
    border-left: 4px solid #000;
    padding-left: 10px;
    background-color: #f1f1f1;
    padding: 3px 10px;
    margin: 30px 0 0;
}

.single_post_cont .text_box h3 {
    font-size: 19px;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 5px 5px;
    margin: 25px 0 0;
    background-color: #f1f1f1;
}

.single_post_cont .text_box h4 {
    background-color: #f1f1f1;
    font-size: 18px;
    padding: 5px 5px;
    margin: 20px 0 0;
}

a.common_page_btn {
    display: block;
    width: 250px;
    color: #000;
    border: 1px solid #000;
    text-align: center;
    font-size: 18px;
    margin: 0px 10px 0;
    padding: 8px 0 8px 28px;
    transition: 0.3s;
    letter-spacing: 1px;
    position: relative;
}

.common_page_btn_box {
    justify-content: center;
    margin-top: 50px;
}

a.common_page_btn::before,
a.common_page_btn::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 11px;
    height: 1px;
    background-color: #000;
    left: 40px;
    transition: 0.3s;
}

a.common_page_btn::after {
    transform: rotate(90deg);
}

a.common_page_btn:hover {
    background-color: #000;
    color: #fff;
}

a.common_page_btn:hover::before,
a.common_page_btn:hover::after {
    background-color: #fff;
}

.bottom_bar {
    margin-top: 75px;
    background-color: #f1f1f1;
    padding: 45px 40px;
}

.bottom_bar_list li a {
    display: block;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 30px 10px;
    color: #000;
    position: relative;
    overflow: hidden;
}

.bottom_bar_list li a time {
    font-size: 14px;
    color: #666;
    letter-spacing: 1.5px;
}

.bottom_bar_list li a .ttl {
    font-size: 14px;
    margin-top: 5px;
    letter-spacing: 0.8px;
}

.bottom_bar_list li {
    width: 31%;
}

.bottom_bar .common_h2_box.type01 {
    margin-bottom: 45px;
}

.bottom_bar_list li a::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    background-color: #fff;
    width: 100%;
    height: 100%;
    transition: 0.3s;
}

.bottom_bar_list li a>* {
    position: relative;
    z-index: 10;
}

.bottom_bar_list li a:hover::before {
    left: 0;
}

.archive_post_cont ul li a .img {
    width: 150px;
    height: 100px;
    margin: 0 30px 0 0;
    border: 2px solid #eee;
}

.single .archive_post_cont ul li a::before {
    display: none;
}

.archive_post_cont ul li a {
    color: #000;
    align-items: center;
    border-top: 1px solid #000;
    padding: 30px 20px;
    font-size: 14px;
    letter-spacing: 1px;
    position: relative;
    overflow: hidden;
}

.archive_post_cont ul li a time {
    color: #666;
    margin-right: 20px;
}

.archive_post_cont ul li a>* {
    position: relative;
    z-index: 10;
}

.archive_post_cont ul li a::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background-color: #f1f1f1;
    transition: 0.5s;
}

.archive_post_cont ul li a:hover::before {
    left: 0;
}

.archive_post_cont ul li:last-child a {
    border-bottom: 1px solid #000;
}

h2.screen-reader-text {
    display: none;
}

.nav-links {
    text-align: right;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.archive_nav {
    margin-top: 30px;
}

.nav-links .page-numbers {
    font-size: 18px;
    color: #000;
    border: 1px solid #000;
    padding: 15px 0px;
    width: 45px;
    display: inline-block;
    text-align: center;
    margin-left: 8px;
}

span.nav-next-text,
span.nav-prev-text {
    display: none;
}

.nav-links .page-numbers.next,
.nav-links .page-numbers.prev {
    padding: 16px 0 0;
}

.nav-links .page-numbers.current {
    color: #fff;
    background-color: #000;
}

.single_post_cont .img {
    width: 100%;
    height: 30vw;
    margin: auto;
    margin-top: 30px;
}

/*カタログ*/
.page_catalog .common_page_list ul li a {
    background-image: url(/wp/wp-content/uploads/2021/03/download_icon.svg);
}

/*会社情報*/
.page_company_cont li {
    width: 535px;
    transition: 0.3s;
}

.page_company_h2_box {
    padding: 33px 0;
    border-bottom: 1px solid #000;
    color: #000;
    background-image: url();
    background-image: url(/wp/wp-content/uploads/2021/03/arrow_mark.svg);
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 30px;
}

.page_company_h2_box h2 {
    margin: 0;
    font-size: 16px;
    color: #000;
    font-weight: 300;
    margin-left: 20px;
    letter-spacing: 2px;
    width: auto;
}

.page_company_cont li:nth-child(n + 3) {
    margin-top: 45px;
}

.page_company_cont li .img {
    overflow: hidden;
}

.page_company_h2_box.flex {
    align-items: center;
}

.page_company_cont li .img img {
    transition: 0.3s;
}

.page_company_cont li:hover {
    opacity: 0.8;
}

.page_history_ttl_img {
    width: 350px;
    margin: auto;
    margin-bottom: 75px;
}

/*加工技術*/
.technique_flow_cont {
    background-color: #eee;
    height: 300px;
}

.page_technique_item h2 {
    font-size: 30px;
    font-weight: 300;
    letter-spacing: 4px;
    background-image: url(/wp/wp-content/uploads/2021/03/square_mark.svg);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 23px;
    padding-left: 50px;
    width: 100%;
    margin-bottom: 35px;
}

.page_technique_item .technique_box .img {
    width: 48%;
}

.page_technique_item .technique_box {
    align-items: center;
}

.page_technique_item .technique_box .text_box {
    width: 49%;
}

.page_technique_item .technique_box .text_box h3 {
    margin: 0;
    font-size: 30px;
    font-weight: 300;
    letter-spacing: 3px;
}

.page_technique_item.coloring_ver .technique_box .text_box h3 {
    font-size: 20px;
    font-weight: 300;
    letter-spacing: 2px;
    border-left: 4px solid #760b13;
    background-color: #f1f1f1;
    width: 100%;
    padding: 21px 50px;
    margin: -1px 0 46px;
}

.page_technique_item .technique_box .text_box .text {
    font-size: 15px;
    line-height: 1.8;
    letter-spacing: 2.5px;
    margin-top: 25px;
}

.page_technique_item .technique_type {
    margin-top: 75px;
}

.page_technique_item .technique_type ul li h3 {
    font-size: 20px;
    font-weight: 300;
    letter-spacing: 2px;
    border-left: 4px solid #760b13;
    background-color: #f1f1f1;
    width: 100%;
    padding: 21px 50px;
    margin: -1px 0 46px;
}

.page_technique_item .technique_type_box .text {
    font-size: 15px;
    line-height: 1.8;
    width: 100%;
    letter-spacing: 3px;
}

.page_technique_item .technique_type_box .img {
    width: 50%;
}

.page_technique_item .technique_type ul li+li {
    margin-top: 50px;
}

.page_technique_item {
    margin-top: 100px;
}

.page_technique_item+.page_technique_item {
    border-top: 1px solid #eee;
    padding-top: 100px;
}


.page_technique_item .technique_flow {
    margin-top: 75px;
}

.page_technique_link_box ul {
    justify-content: center;
}

.page_technique_link_box ul li h2 {
    font-size: 25px;
    font-weight: 300;
    background-image: url(/wp/wp-content/uploads/2021/03/square_mark.svg);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 20px;
    padding-top: 35px;
}

.page_technique_link_box ul li {
    margin: 0 35px;
    text-align: center;
}

.page_technique_link_box ul li a {
    display: block;
    width: 250px;
    height: 40px;
    background-image: url(/wp/wp-content/uploads/2021/03/more_detail_text_black.svg);
    background-position: left 70px center;
    background-repeat: no-repeat;
    border: 1px solid #000;
    position: relative;
    margin-top: 10px;
    background-color: #fff;
    transition: 0.3s;
}

.page_technique_link_box ul li a::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 40px;
    width: 5px;
    height: 5px;
    margin: auto;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    transform: rotate(45deg);
    transition: 0.3s;
}

.page_technique_link_box {
    background-color: #f1f1f1;
    padding: 45px 0;
}

.page_technique_link_box ul li a:hover {
    background-color: #000;
    background-image: url(/wp/wp-content/uploads/2021/03/more_detail_text.svg);
}

.page_technique_link_box ul li a:hover::before {
    border-color: #fff;
}

/*採用情報*/
span.recruitment_employment {
    display: inline-block;
    font-size: 14px;
}

.post-type-archive-jobinfo .archive_post_cont ul li .ttl,
.single-jobinfo .archive_post_cont ul li .ttl {
    font-size: 20px;
    font-weight: bold;
}

.single_post_cont .common_page_list.recruit .ttl {
    border: none;
}

.common_page_list.recruit {
    margin-top: 30px;
}

.jobinfo_terms_box {
    position: relative;
    text-align: center;
    padding: 75px 0;
    margin-bottom: 75px;
    margin-top: 75px;
}

.jobinfo_terms_box::before,
.jobinfo_terms_box::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    filter: blur(4px);
}

.jobinfo_terms_box>* {
    position: relative;
    z-index: 10;
    color: #fff;
}

.jobinfo_terms_box::before {
    background-image: url(/wp/wp-content/uploads/2021/03/page_fobinfo_bg.jpg);
    background-position: top center;
    background-attachment: fixed;
}

.jobinfo_terms_box::after {
    background-color: rgba(0, 0, 0, 0.4);
}

.jobinfo_terms_box .wish_list {
    margin-top: 40px;
}

.jobinfo_terms_box .wish_list ul li {
    width: 200px;
    font-family: 'Yu Mincho Light', 'YuMincho', 'Yu Mincho', 'æ¸¸æ˜Žæœä½“', sans-serif;
    background-color: rgba(255, 255, 255, 0.85);
    border-radius: 50%;
    height: 200px;
    color: #1a1a1a;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}

.jobinfo_terms_box .wish_list ul li .num_box {
    font-size: 18px;
    border-bottom: 1px solid #000;
    padding: 0 8px 5px;
    line-height: 1;
}

.jobinfo_terms_box h2 {
    font-family: 'Yu Mincho Light', 'YuMincho', 'Yu Mincho', 'æ¸¸æ˜Žæœä½“', sans-serif;
    position: relative;
}

.jobinfo_terms_box .wish_list ul li .num_box .num {
    font-size: 28px;
    margin-left: 3px;
    font-style: italic;
}

.jobinfo_terms_box .wish_list ul li .text {
    width: 100%;
    margin-top: 15px;
    font-size: 20px;
    line-height: 1.5;
}

.jobinfo_terms_box h2::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 5px;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    margin: auto;
}

.jobinfo_terms_box .ttl {
    font-family: 'Yu Mincho Light', 'YuMincho', 'Yu Mincho', 'æ¸¸æ˜Žæœä½“', sans-serif;
    position: relative;
    font-size: 28px;
    padding-bottom: 20px;
}

.jobinfo_terms_box .ttl::before {
    content: '';
    position: absolute;
    /* top: 0; */
    bottom: 0;
    margin: auto;
    width: 100%;
    height: 5px;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    left: 0;
}

.jobinfo_terms_box .message_text {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 2px;
    margin-top: 50px;
    font-weight: 700;
}

.jobinfo_terms_box .img {
    margin-top: 40px;
}

.jobinfo_messeage_box {
    text-align: center;
}

.jobinfo_messeage_box h2 {
    font-family: 'Yu Mincho Light', 'YuMincho', 'Yu Mincho', 'æ¸¸æ˜Žæœä½“', sans-serif;
    font-size: 30px;
    margin-top: 25px;
    line-height: 1.5;
    letter-spacing: 1px;
}

.jobinfo_messeage_box span.en {
    background-color: #1a1a1a;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 6px 22px;
}

.jobinfo_messeage_box .text {
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: 1px;
    margin-top: 35px;
}

/*個人情報保護方針*/
.page_privacy_cont {
    letter-spacing: 1px;
    font-size: 16px;
    line-height: 2;
}

.page_privacy_cont dl {
    margin: 75px 0 0;
}

.page_privacy_cont dl dt {
    font-weight: 600;
    border-bottom: 1px solid #000;
    padding-bottom: 5px;
    margin-bottom: 30px;
    margin-top: 50px;
    font-size: 20px;
}

.page_privacy_cont dl dd {
    margin-top: 20px;
}

.page_privacy_cont dl dd span {
    display: block;
    font-weight: 600;
}

/*サイトマップ*/
#sitemap_list li a {
    display: block;
    color: #000;
    font-size: 16px;
    padding: 20px 15px;
    border-bottom: 1px solid #000;
}

.prepare {
    text-align: center;
    font-size: 30px;
    color: #999;
    font-weight: bold;
}

.common_page_h1_box .letter img {
    height: 38px;
}

ul#sitemap_list ul.children>li {
    position: relative;
}

ul#sitemap_list ul.children>li:before {
    content: "";
    position: absolute;
    width: 20px;
    height: 1px;
    background: #ccc;
    left: -25px;
    top: 35px;
}

section#top_case_study .common_h2_box .en img {
    height: 40px;
    width: auto;
}

section#top_case_study .common_h2_box h2 {
    margin: 10px 0 0;
    width: 100%;
}

.privacy_check {
    text-align: center;
}

.privacy_check label {
    display: flex;
    justify-content: center;
    align-items: center;
}

.privacy_check label input {
    width: auto !important;
}

.hd_nav ul li a.text {
    height: auto;
}

.hd_nav ul li a.text:hover {
    font-weight: bold;
}

.ft_nav_box ul li a.sub {
    display: block;
    font-size: 14px;
    padding-left: 16px;
}

.top_mv_slider .img {
    height: calc(100vh - 80px);
    background-size: cover;
    background-position: center;
}

.top_mv_slider .img a {
    display: block;
    height: 100%;
    position: relative;
    z-index: 11;
}

#top_information .wrap {
    width: 825px;
}

#mainVisual .inner {
    width: 100%;
}

#mainVisual .slick-dots {
    bottom: 50px;
    right: calc(50% - 600px);
    padding: 0;
}

#mainVisual .slick-dots li button:before {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #999;
}

#mainVisual .slick-dots li button {
    padding: 0;
}

#mainVisual .slick-dots li {
    margin: 0 2px;
}

#mainVisual .slick-dots li.slick-active button:before {
    background: #fff;
}

div#mainVisual .slick-dotted.slick-slider {
    margin-bottom: 0;
}

form.lineup_top-works_btn {
    display: block;
    width: 324px;
    height: 60px;
    line-height: 60px;
    font-size: 16px;
    margin: auto;
    background-color: #000000;
    position: relative;
}

form.lineup_top-works_btn input[type=submit] {
    width: 100%;
    height: 100%;
    border-radius: 0;
    appearance: none;
    -webkit-appearance: none;
    background: none;
    color: #ffffff;
    position: relative;
    z-index: 10;
    font-weight: normal;
    font-size: 16px;
}

form.lineup_top-works_btn:before {
    content: "";
    display: block;
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: .2s linear;
    -moz-transition: .2s linear;
    -o-transition: .2s linear;
    transition: .2s linear;
    background-color: #680c0d;
}

form.lineup_top-works_btn:hover:before {
    width: 100%;
}

.under_mv h2 .type {
    font-size: 40px;
    font-weight: bold;
    margin: 0 0 5px;
    display: block;
}

.work_detail .work_info #mapArea {
    position: relative;
}

.work_detail .work_info #mapArea a.mapAreaLink {
    position: absolute;
    width: 180px;
    bottom: 10px;
    left: 0;
    right: 0;
    margin: auto;
    background: #333;
    text-align: center;
    border-radius: 4px;
    line-height: 30px;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 20%);
    font-weight: bold;
    color: #fff;
}

.page_catalog_box {
    width: 25%;
    text-align: center;
    padding: 10px;
}

.page_catalog_box .image {
    height: 350px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    box-shadow: 2px 2px 6px rgb(0 0 0 / 10%);
    margin: 0 0 10px;
    border-radius: 5px;
}

.page_catalog_box .title {
    font-weight: bold;
}

dd.switchDetail a {
    color: #004CCA;
    text-decoration: underline;
}

#top_catalog {
    padding: 95px 0;
}

.archive_nav .wp-pagenavi {
    display: flex;
    align-items: center;
    justify-content: center;
}

.archive_nav .wp-pagenavi .pages {
    background: #000;
    color: #fff;
    font-weight: bold;
    border: none;
    padding: 0 10px;
    border-radius: 30px;
}

.archive_nav .wp-pagenavi .current,
.archive_nav .wp-pagenavi a {
    width: 30px;
    text-align: center;
    height: 30px;
    line-height: 30px;
    padding: 0;
}

.archive_nav .wp-pagenavi .current {
    background: #000;
    color: #fff;
    font-weight: bold;
    font-size: 120%;
}

ul.tag_flex li {
    margin-left: 10px;
    background: #eee;
    margin-bottom: 10px;
    padding: 5px 15px;
}

ul.tag_flex {
    padding-top: 10px;
}

ul.tag_flex li:first-child {
    margin-left: 0;
}

.bottom_bar .common_h2_box.type01 .en img {
    height: 39px;
}

.top_products_cont_main li .text_box .en {
    line-height: 0;
}

.catalog_title {
    align-items: flex-end;
    margin: 60px 0 20px;
    border-bottom: 1px solid;
    padding-bottom: 10px;
}

.catalog_title:first-child {
    margin-top: 0;
}

.catalog_title .en img {
    height: 30px;
    line-height: 0;
    margin-right: 20px;
}

.catalog_title .en img.albright {
    height: 36px;
    transform: translateY(10%);
}

.common_h3_box .en.alb img {
    height: 24px;
    margin-bottom: -6px;
}

.catalog_title h2 {
    font-size: 14px;
    line-height: 1;
}

.page_architectural_hardware_top #mainVisual .mvTxt p.title {
    font-size: 70px;
    font-weight: bold;
    line-height: 1;
}

.page_architectural_hardware_top #mainVisual .mvTxt p {
    color: #000;
}

.page_architectural_hardware_top .slick-slider {
    opacity: 0.5;
}

.page_architectural_hardware_top #about ul li:last-child .thum span {
    background-image: url(/wp/wp-content/uploads/2021/06/Catalog_Button.jpg);
}

.page_architectural_hardware_top #topBtn ul li {
    margin: 0 auto;
    float: none;
}

.architectural_hardware_point .flex-sb {
    align-items: center;
    max-width: 720px;
    margin: 40px auto 0;
}

.architectural_hardware_point .flex-sb .image {
    width: 50%;
}

.architectural_hardware_point .flex-sb .text {
    width: 45%;
    font-size: 20px;
}

.architectural_hardware_point {
    padding-top: 40px;
}

.onlineshopping_btn {
    width: 720px;
    margin: 40px auto;
    text-align: center;
}

.onlineshopping_btn a {
    display: block;
    line-height: 80px;
}

.onlineshopping_btn p.comingsoon {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #666;
    line-height: 80px;
    color: #fff;
    font-size: 30px;
    border-radius: 20px;
}

.single-jobinfo .single_post_cont .archive_post_cont .text_box p.ttl {
    padding: 0;
    margin: 0;
    border: none;
    font-weight: bold;
    font-size: 20px;
}

.archive_post_cont ul li a>.text_box {
    display: flex;
    flex-wrap: wrap;
}

.archive_post_cont ul li a>.text_box .ttl {
    width: 100%;
    margin-top: 10px;
}

.archive_post_cont ul li a .text_box {
    width: calc(100% - 180px);
}

p.archive_cate span {
    background: #eee;
    margin-bottom: 10px;
    padding: 5px 15px;
}

p.archive_cate span+span {
    margin-left: 15px;
}

.archive_cate_list div a {
    display: block;
    margin: 0 10px 10px 0;
    border: 1px solid #000;
    padding: 5px 20px;
    transition: .2s;
}

.archive_cate_list div a:hover {
    background: #000;
    color: #fff;
}

.archive_cate_list .title {
    width: 200px;
    line-height: 0;
    padding: 2px 0 0;
}

.archive_cate_list_content {
    width: calc(100% - 250px);
}

.archive_keyword_search {
    margin-bottom: 10px;
    justify-content: flex-end;
}

.archive_keyword_search form {
    position: relative;
}

.archive_keyword_search input[type=text] {
    background: #f2f2f2;
    border: none;
    border-radius: 30px;
    padding: 5px 30px 5px 15px;
    width: 300px;
}

.archive_keyword_search button[type=submit] {
    position: absolute;
    background: no-repeat;
    right: 5px;
    width: 25px;
    height: 25px;
    border-radius: 15px;
    transition: .1s;
    background-image: url(/wp/wp-content/uploads/2021/07/icon_search.png);
    background-size: 14px;
    background-position: center;
    top: 0;
    bottom: 0;
    margin: auto;
    padding: 0;
}

.archive_keyword_search button[type=submit]:hover {
    background-color: #000;
    background-image: url(/wp/wp-content/uploads/2021/07/icon_search_w.png);
}

.under_mv h2 .type.alstone_logo img {
    width: 350px;
    margin: 0 0 10px;
    max-width: 90%;
}

.single .archive_post_cont ul li a {
    padding: 10px 20px;
}

.single .archive_post_cont ul li a .img {
    width: 100px;
    height: 60px;
}

select#change_js {
    width: 250px;
    padding-left: 20px;
    border-radius: 30px;
    border-color: #ccc;
    margin-right: 20px;
}

p.parent_menu {
    font-size: 20px;
    margin: 40px 0 10px;
    border-bottom: 1px solid #eee;
}

p.parent_menu:first-child {
    margin-top: 0;
}

ul.child_menu {
    padding-left: 20px;
}

ul.child_menu li {
    margin-right: 20px;
}

ul.child_menu>li a {
    padding-left: 10px;
    position: relative;
}

ul.child_menu>li a:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3px 0 3px 5px;
    border-color: transparent transparent transparent #ddd;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

ul.child_menu>li {
    margin-bottom: 20px;
}

h1.csus_h1 {
    color: #fff;
    font-size: 60px;
    text-align: left;
    margin: 0 0 20px;
}

h1.csus_h1 span {
    display: block;
    font-size: 20px;
    letter-spacing: 2px;
}

p.csus_sub_title {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    margin: 30px 0 0;
}

div#works p.csus_sub_title {
    color: #fff;
}

/* アルブライト */
.page_albright {
    color: #333333;
    font-family: "heisei-kaku-gothic-std", sans-serif;
    font-weight: 300;
}

.page_albright .albright_mv {
    position: relative;
    z-index: 0;
    height: calc(100vh - 80px);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.page_albright .albright_mv .ttl_box {
    padding: 0 100px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

.page_albright .albright_mv .ttl_box .ttl {
    width: 730px;
    flex-shrink: 0;
}

.page_albright .albright_mv .ttl_box .ttl img {
    width: 100%;
}

.page_albright .albright_mv .ttl_box .text {
    font-size: 48px;
    letter-spacing: .21em;
    font-weight: 600;
    line-height: 1.45;
    color: #fff;
    text-indent: -3.6em;
    padding-left: 3.6em;
}

.page_albright .albright_mv .name_box ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.page_albright .albright_mv .name_box li {
    font-size: 32px;
    color: #fff;
    line-height: 100px;
    text-align: center;
    background: rgba(16, 16, 16, 0.4);
}

.page_albright .albright_mv .bg_slider {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    z-index: -1;
    gap: 0;
}

.page_albright .albright_mv .bg_slider ul {
    width: 100%;
    height: 100%;
    background: unset;
    overflow: hidden;
}

.page_albright .albright_mv .bg_slider ul .slick-list {
    height: 100% !important;
}

.page_albright .albright_mv .bg_slider li.slick-slide {
    border: none;
    width: 100%!important;
    height: calc(100vh - 80px) !important;
}

.page_albright .albright_mv .bg_slider ul li.slick-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_albright .albright_intro {
    padding: 161px 0;
    text-align: center;
    background-image: url(./images/albright_intro_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.page_albright .albright_intro .ttl_box {
    margin-bottom: 30px;
}

.page_albright .albright_intro .ttl_box .ttl {
    font-size: 32px;
    letter-spacing: .3em;
    line-height: 2;
    color: #101010;
}

.page_albright .albright_intro .text_box .text {
    font-size: 16px;
    letter-spacing: .12em;
    line-height: 2.5;
    color: #101010;
}

.page_albright .albright_feature {
    padding: 160px 0 190px;
    background: #1D1D1D;
    position: relative;
    margin-bottom: 120px;
}

.page_albright .albright_feature .cont .en_ttl {
    font-size: 200px;
    line-height: 1;
    color: #fff;
    margin: 0 calc(50vw - 670px);
    position: relative;
    z-index: 1;
}

.page_albright .albright_feature .cont .box {
    background: #101010;
    padding: 90px 50px 38px 0;
    margin-right: calc(50vw - 620px);
    margin-top: -84px;
    display: flex;
    align-items: flex-start;
    gap: 45px;
    position: relative;
    overflow: hidden;
    z-index: 0;
}

.page_albright .albright_feature .cont .box::before {
    /* content: "";
    position: absolute;
    bottom: -340px;
    left: calc(50vw - 560px);
    width: 526px;
    height: 426px;
    background: #FFFFFF;
    border-radius: 50%;
    opacity: 0.35;
    filter: blur(50px);
    z-index: -1; */
}

.page_albright .albright_feature .cont .box .img {
    width: 50vw;
    flex-shrink: 0;
    margin-top: 50px;
}

.page_albright .albright_feature .cont .box .img img {
    width: 100%;
}

.page_albright .albright_feature .cont .box .text_box {
    color: #fff;
}

.page_albright .albright_feature .cont .box .text_box .ttl {
    font-size: 24px;
    letter-spacing: .08em;
    display: flex;
    align-items: center;
    gap: 1.2em;
    margin-bottom: 1.2em;
}

.page_albright .albright_feature .cont .box .text_box .ttl::after {
    content: "";
    width: 70px;
    height: 1px;
    background: #fff;
}

.page_albright .albright_feature .cont .box .text_box .text {
    font-size: 15px;
    letter-spacing: .08em;
    line-height: 1.8;
}

.page_albright .albright_feature .cont .box .text_box .text+.text {
    margin-top: 2em;
}

.page_albright .albright_feature .cont .deco_text {
    position: absolute;
    top: 310px;
    right: calc(50vw - 670px);
    font-size: 48px;
    color: #72141B;
    writing-mode: vertical-rl;
    white-space: nowrap;
}

.page_albright .albright_lineup {
    margin: 0 calc(50vw - 670px) 90px;
}

.page_albright .albright_lineup .ttl_area {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

.page_albright .albright_lineup .ttl_area .ttl_box .en_ttl {
    font-size: 140px;
    line-height: 1;
    margin-bottom: 14px;
}

.page_albright .albright_lineup .ttl_area .ttl_box .en_ttl::after {
    content: "";
    display: block;
    width: 100px;
    height: 2px;
    background: #72141B;
}

.page_albright .albright_lineup .ttl_area .ttl_box .ttl {
    font-size: 18px;
    letter-spacing: .08em;
}

.page_albright .albright_lineup .ttl_area .tab_area ul {
    display: flex;
}

.page_albright .albright_lineup .ttl_area .tab_area li {
    border-left: 1px solid #707070;
    width: 110px;
    min-block-size: 110px;
    display: grid;
    place-content: center;
    text-align: center;
    transition: .3s;
    cursor: pointer;
}

.page_albright .albright_lineup .ttl_area .tab_area li:last-child {
    border-right: 1px solid #707070;
}

.page_albright .albright_lineup .ttl_area .tab_area li.active {
    background: #72141B;
    color: #fff;
}

.page_albright .albright_lineup .ttl_area .tab_area li .en_name {
    font-size: 20px;
    line-height: 1;
    margin-bottom: 0.5em;
}

.page_albright .albright_lineup .ttl_area .tab_area li .name {
    font-size: 14px;
    line-height: 1;
}

.page_albright .albright_lineup .panel_area .panel {
    display: none;
}

.page_albright .albright_lineup .panel_area .panel.active {
    display: flex;
    gap: 70px;
}

.page_albright .albright_lineup .panel_area .panel .box {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.page_albright .albright_lineup .panel_area .panel .box .main_box {
    flex-grow: 1;
    /* テキスト入れたら解除 */
}

.page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box {
    display: flex;
    align-items: flex-end;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box .youtube_btn {
    cursor: pointer;
    font-size: 16px;
    width: fit-content;
    padding: 1em 1.7em;
    line-height: 1;
    border: 1px solid currentColor;
    margin-left: 2em;
    margin-bottom: .7em;
    text-align: center;
    background-color: #fff;
    transition: .3s;
    margin-top: 1em;
}

.page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box .youtube_btn:hover {
    background-color: #000;
    color: #fff;
}

.page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box::before {
    content: "";
    width: 20px;
    height: 2px;
    background: #BEBEBE;
    margin-right: 20px;
    translate: 0 -32px;
}

.page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box .en_theme {
    font-size: 100px;
    line-height: 1;
}

.page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box .theme {
    font-size: 24px;
    letter-spacing: .08em;
    margin-left: 40px;
    padding-bottom: .5em;
}

.page_albright .albright_lineup .panel_area .panel .box .main_box .text {
    font-size: 15px;
    letter-spacing: .08em;
    line-height: 1.7;
}

.page_albright .albright_lineup .panel_area .panel .box .thumbnail_box ul {
    background: unset;
}

.page_albright .albright_lineup .panel_area .panel .box .thumbnail_box ul .slick-track {
    display: flex;
    gap: 20px;
    width: auto !important;
    transform: unset !important;
    margin-left: -20px;
}

.page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li {
    width: 130px !important;
    cursor: pointer;
}

.page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li.slick-current,
.page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li.slick-current .text_box .name {
    color: #72141B;
}

.page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li.slick-current .img {
    border-color: #72141B;
}

.page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li .img {
    width: 100%;
    margin-bottom: 18px;
    border: 1px solid transparent;
}

.page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li .img img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
}

.page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li .text_box .en_name {
    font-size: 16px;
    line-height: 1;
    margin-bottom: 0.4em;
}

.page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li .text_box .name {
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.38;
    color: #404040;
}

.page_albright .albright_lineup .panel_area .panel .slider_box {
    width: 570px;
    flex-shrink: 0;
    margin-right: 10px;
    position: relative;
}

.page_albright .albright_lineup .panel_area .panel .slider_box::before {
    content: "";
    position: absolute;
    top: 10px;
    right: -10px;
    width: 100%;
    height: 100%;
    border-right: 1px solid #72141B;
    border-bottom: 1px solid #72141B;
}

.page_albright .albright_lineup .panel_area .panel .slider_box ul.slick-slider {
    margin: 0;
    height: 100%;
}

.page_albright .albright_lineup .panel_area .panel .slider_box li {
    aspect-ratio: 1;
}

.page_albright .albright_lineup .panel_area .panel .slider_box li.slick-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_albright .albright_lineup .panel_area .panel .slider_box ul.slick-dots {
    bottom: 0;
    left: -28px;
    padding: 0;
    display: flex !important;
    flex-direction: column;
    gap: 5px;
    width: fit-content;
}

.page_albright .albright_lineup .panel_area .panel .slider_box ul.slick-dots li {
    width: 8px;
    height: 8px;
    margin: 0;
}

.page_albright .albright_lineup .panel_area .panel .slider_box ul.slick-dots li button {
    width: 100%;
    height: 100%;
}

.page_albright .albright_lineup .panel_area .panel .slider_box ul.slick-dots li button::before {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #D1D1D1;
}

.page_albright .albright_lineup .panel_area .panel .slider_box ul.slick-dots li.slick-active button::before {
    background: #72141B;
}

.page_albright .albright_youtube {
    margin-bottom: 130px;
}

.page_albright .albright_youtube .cont {
    width: 854px;
    margin: 0 auto;
}

.page_albright .albright_youtube .cont li+li {
    margin-top: 60px;
}

.page_albright .albright_youtube .cont li .name_box {
    display: flex;
    align-items: baseline;
    gap: 20px;
    margin-bottom: 10px;
}

.page_albright .albright_youtube .cont li .name_box .en_ttl {
    font-size: 50px;
    line-height: 1;
}

.page_albright .albright_youtube .cont li .name_box .ttl {
    font-size: 18px;
    letter-spacing: .08em;
    translate: 0 -0.2em;
}

.page_albright .albright_youtube .cont li .box {
    width: 100%;
    height: 480px;
}

.page_albright .albright_details {
    margin: 0 calc(50vw - 670px) 105px;
}

.page_albright .albright_details .ttl_box {
    margin-bottom: 50px;
    display: flex;
    align-items: baseline;
    gap: 30px;
    border-bottom: 1px solid #DBDBDB;
    position: relative;
    padding-bottom: 12px;
}

.page_albright .albright_details .ttl_box .en_ttl {
    font-size: 70px;
    line-height: 1;
}

.page_albright .albright_details .ttl_box .ttl {
    font-size: 18px;
    letter-spacing: .08em;
    translate: 0 -0.2em;
}

.page_albright .albright_details .ttl_box::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 540px;
    height: 2px;
    background: #72141B;
}

.page_albright .albright_details .cont {
    padding-bottom: 48px;
    border-bottom: 1px solid #DBDBDB;
}

.page_albright .albright_details .cont ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 80px;
}

.page_albright .albright_details .cont li .label {
    font-size: 20px;
    letter-spacing: .02em;
    font-weight: 400;
    color: #fff;
    background: linear-gradient(to bottom, #6F6F6F, #0B0B0B);
    padding: 0.6em 1em 0.5em;
}

.page_albright .albright_details .cont li .text {
    font-size: 18px;
    letter-spacing: .02em;
    padding: 0.8em 1em 0;
}

.page_albright .albright_works {
    background: #1D1D1D;
    padding: 160px calc(50vw - 620px) 270px;
    color: #fff;
}

.page_albright .albright_works .cont {
    position: relative;
    z-index: 0;
}

.page_albright .albright_works .cont::before {
    content: "";
    position: absolute;
    top: 55px;
    bottom: -70px;
    left: 50%;
    width: 950px;
    translate: -50% 0;
    background: #101010;
    z-index: -1;
}

.page_albright .albright_works .cont .ttl_box {
    text-align: center;
    margin-bottom: 35px;
}

.page_albright .albright_works .cont .ttl_box .en_ttl {
    font-size: 100px;
    line-height: 1.1;
}

.page_albright .albright_works .cont .ttl_box .ttl {
    font-size: 18px;
    letter-spacing: .08em;
}

.page_albright .albright_works .cont .ttl_box .en_ttl::after {
    content: "";
    display: block;
    width: 100px;
    height: 2px;
    background: #72141B;
    margin: 0 auto 18px;
}

.page_albright .albright_works .cont .box .slick-track {
    display: flex;
}

.page_albright .albright_works .cont .box ul.slick-slider {
    background: unset;
    margin-left: -10px;
    margin-right: -10px;
}

.page_albright .albright_works .cont .box li.slick-slide {
    margin: 0 10px;
    height: auto !important;
}

.page_albright .albright_works .cont .box li.slick-slide .link {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: 2px;
}

.page_albright .albright_works .cont .box li.slick-slide .link .img {
    width: 100%;
    overflow: hidden;
    position: relative;
    margin-bottom: 20px;
}

.page_albright .albright_works .cont .box li.slick-slide .link .img::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #000000;
    opacity: 0;
    z-index: 1;
    transition: .3s;
}

.page_albright .albright_works .cont .box li.slick-slide .link:hover .img::before {
    opacity: 0.3;
}

.page_albright .albright_works .cont .box li.slick-slide .link .img img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    transition: .3s;
}

.page_albright .albright_works .cont .box li.slick-slide .link:hover .img img {
    scale: 1.1;
}

.page_albright .albright_works .cont .box li.slick-slide .link .name {
    font-size: 16px;
    letter-spacing: .08em;
    line-height: 1.4;
    font-weight: 400;
    color: #fff;
    margin-bottom: 0.9em;
    flex-grow: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    transition: .3s;
}

.page_albright .albright_works .cont .box li.slick-slide .link:hover .name {
    color: #c4c4c4;
}

.page_albright .albright_works .cont .box li.slick-slide .link .cate_box {
    display: flex;
    gap: 5px;
}

.page_albright .albright_works .cont .box li.slick-slide .link .cate_box .cate {
    font-size: 13px;
    letter-spacing: .04em;
    color: #fff;
    padding: 0.2em 0.5em;
    border: 1px solid #fff;
}

.page_albright .albright_works .cont .box ul.slick-slider .slick-prev,
.page_albright .albright_works .cont .box ul.slick-slider .slick-next {
    width: 70px;
    height: 70px;
    background: #fff;
    border-radius: 50%;
    top: 38%;
    transition: .3s;
}

.page_albright .albright_works .cont .box ul.slick-slider .slick-prev:hover,
.page_albright .albright_works .cont .box ul.slick-slider .slick-next:hover {
    opacity: 0.9;
}

.page_albright .albright_works .cont .box ul.slick-slider .slick-prev {
    left: -40px;
}

.page_albright .albright_works .cont .box ul.slick-slider .slick-next {
    right: -40px;
}

.page_albright .albright_works .cont .box ul.slick-slider .slick-prev::before,
.page_albright .albright_works .cont .box ul.slick-slider .slick-next::before {
    background: unset;
    position: absolute;
    width: 10px;
    height: 10px;
    border-right: 1.5px solid #333333;
    border-bottom: 1.5px solid #333333;
    top: 50%;
    translate: 0 -50%;
}

.page_albright .albright_works .cont .box ul.slick-slider .slick-prev::before {
    rotate: 135deg;
    left: 47%;
}

.page_albright .albright_works .cont .box ul.slick-slider .slick-next::before {
    rotate: -45deg;
    right: 47%;
}

/* アルカーム */
.page_alcalm {
    font-family: "heisei-kaku-gothic-std", sans-serif;
    font-weight: 300;
}

.page_alcalm .sp_br {
    display: none;
}

.page_alcalm .alcalm_mv {
    margin-bottom: -80px;
}

.page_alcalm .alcalm_mv .ttl_area {
    padding: 50px 100px 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 160px;
    background-image: url(./images/alcalm_mv_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: calc((100vh - 80px) * 270 / 640);
}

.page_alcalm .alcalm_mv .ttl_area .ttl {
    width: 575px;
    flex-shrink: 0;
}

.page_alcalm .alcalm_mv .ttl_area .ttl img {
    width: 100%;
}

.page_alcalm .alcalm_mv .ttl_area .text_box {
    color: #fff;
}

.page_alcalm .alcalm_mv .ttl_area .text_box .head {
    font-size: 32px;
    letter-spacing: .3em;
    font-weight: 500;
    background: linear-gradient(to right, #fff, transparent);
    background-position: left bottom;
    background-size: 100% 3px;
    background-repeat: no-repeat;
    margin-bottom: 0.8em;
    padding-bottom: 0.3em;
}

.page_alcalm .alcalm_mv .ttl_area .text_box .text {
    font-size: 15px;
    letter-spacing: .1em;
    line-height: 1.9;
}

.page_alcalm .alcalm_mv .product_area {
    height: calc((100vh - 80px) * 370 / 640);
}

.page_alcalm .alcalm_mv .product_area ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    height: 100%;
}

.page_alcalm .alcalm_mv .product_area li {
    padding: 15px 30px;
    position: relative;
    z-index: 0;
}

.page_alcalm .alcalm_mv .product_area li::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, #fff 0%, rgba(59, 59, 59, 0.9) 90%, rgba(59, 59, 59, 0.9) 100%);
    mix-blend-mode: multiply;
    pointer-events: none;
}

.page_alcalm .alcalm_mv .product_area li .link {
    position: absolute;
    inset: 0;
    display: block;
}

.page_alcalm .alcalm_mv .product_area li .name_box {
    display: flex;
    align-items: flex-end;
    gap: 36px;
    position: relative;
    height: 100%;
}

.page_alcalm .alcalm_mv .product_area li .name_box .name {
    margin-bottom: 48px;
}

.page_alcalm .alcalm_mv .product_area li.nging .name_box .name {
    width: 84px;
}

.page_alcalm .alcalm_mv .product_area li.nratch .name_box .name {
    width: 94px;
}

.page_alcalm .alcalm_mv .product_area li.ntripe .name_box .name {
    width: 87px;
}

.page_alcalm .alcalm_mv .product_area li.neneri .name_box .name {
    width: 96px;
}

.page_alcalm .alcalm_mv .product_area li .name_box .name img {
    width: 100%;
}

.page_alcalm .alcalm_mv .product_area li .name_box .text {
    font-size: 30px;
    letter-spacing: .05em;
    color: #fff;
    position: relative;
}

.page_alcalm .alcalm_mv .product_area li .name_box .text::before {
    content: "";
    position: absolute;
    top: 8px;
    left: -34px;
    width: 70px;
    aspect-ratio: 1;
    min-width: 0;
    border-bottom: 1px solid #fff;
    rotate: 135deg;
}

.page_alcalm .alcalm_mv .product_area li .img {
    position: absolute;
    inset: 0;
    z-index: -1;
}

.page_alcalm .alcalm_mv .product_area li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_alcalm .alcalm_product {
    padding: 108px calc(50vw - 570px) 0 0;
    display: flex;
    align-items: flex-end;
    gap: 88px;
    position: relative;
    z-index: 0;
    overflow: hidden;
    height: calc(100vh - 80px);
}

.page_alcalm .alcalm_product::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 343px;
    background: linear-gradient(to right, #3B3B3B 0%, #5A5A5A 50%, #1D1D1D 100%);
    clip-path: polygon(0 0, 100% 0, 100% 207px, 0 100%);
}

.page_alcalm .alcalm_product .main_img {
    width: max(603px, 36vw);
    flex-shrink: 0;
    margin-left: -110px;
    margin-bottom: -68px;
    clip-path: polygon(0 0, 100% 4%, 100% 100%, 0% 100%);
}

.page_alcalm .alcalm_product .main_img img {
    width: 100%;
}

.page_alcalm .alcalm_product .cont {
    margin-bottom: 65px;
    height: calc(100% - 65px);
    display: flex;
    flex-direction: column;
}

.page_alcalm .alcalm_product .cont .ttl {
    margin-bottom: 80px;
}

.page_alcalm .alcalm_product.nging .cont .ttl {
    width: 248px;
}

.page_alcalm .alcalm_product.nratch .cont .ttl {
    width: 289px;
}

.page_alcalm .alcalm_product.ntripe .cont .ttl {
    width: 268px;
}

.page_alcalm .alcalm_product.neneri .cont .ttl {
    width: 285px;
}

.page_alcalm .alcalm_product .cont .ttl img {
    width: 100%;
}

.page_alcalm .alcalm_product .cont .text_box {
    margin-bottom: 68px;
}

.page_alcalm .alcalm_product .cont .text_box .head {
    font-size: 42px;
    letter-spacing: .16em;
    margin-bottom: 0.5em;
}

.page_alcalm .alcalm_product .cont .text_box .text {
    font-size: 15px;
    letter-spacing: .1em;
    line-height: 1.5;
}

.page_alcalm .alcalm_product .cont .item_box .catch_box {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 20px;
}

.page_alcalm .alcalm_product .cont .item_box .catch_box .catch {
    font-size: 54px;
    letter-spacing: .04em;
    font-style: italic;
    line-height: 0.6;
}

.page_alcalm .alcalm_product .cont .item_box .catch_box .link_btn .link {
    display: block;
    font-size: 16px;
    letter-spacing: .04em;
    font-weight: 500;
    padding: 0 5.2em 0.2em 0;
    background-image: url(./images/alcalm_btn_arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center bottom;
}

.page_alcalm .alcalm_product .cont .item_box .catch_box .link_btn .link:hover {
    opacity: 0.7;
}

.page_alcalm .alcalm_product .cont .item_box .item ul {
    display: grid;
}

.page_alcalm .alcalm_product.nging .cont .item_box .item ul {
    grid-template-columns: repeat(3, 1fr);
}

.page_alcalm .alcalm_product.nratch .cont .item_box .item ul {
    grid-template-columns: repeat(7, 1fr);
}

.page_alcalm .alcalm_product.ntripe .cont .item_box .item ul {
    grid-template-columns: repeat(5, 1fr);
}

.page_alcalm .alcalm_product.neneri .cont .item_box .item ul {
    grid-template-columns: repeat(2, 1fr);
}

.page_alcalm .alcalm_product .cont .item_box .item li {
    width: 100%;
    height: 70px;
}

.page_alcalm .alcalm_product .cont .item_box .item li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_alcalm .alcalm_product .deco_text {
    position: absolute;
    bottom: 50px;
    right: 50px;
    font-size: 16px;
    writing-mode: vertical-rl;
    display: flex;
    align-items: center;
    gap: 20px;
}

.page_alcalm .alcalm_product .deco_text::before {
    content: "";
    width: 0.5px;
    height: 80px;
    background: #333333;
}

body.page-id-3678 #footer {
    height: 793px !important;
}

/* アルカーム製品ページ */
.inner {
    width: 1140px;
    margin: 0 auto;
}

.page_alcalm_product {
    color: #333333;
    font-family: "heisei-kaku-gothic-std", sans-serif;
    font-weight: 300;
    line-height: 1.6 !important;
}

.page_alcalm_product .fv_sec {
    display: flex;
    position: relative;
}

.page_alcalm_product .fv_sec .ttl_box {
    background: linear-gradient(to right, #1D1D1D 0%, #605F5F 17%, #1F1F1F 90%, rgba(31, 31, 31, 0.2) 100%);
    padding-left: calc(50vw - 620px);
    width: 57vw;
    position: relative;
    display: flex;
    align-items: center;
}

.page_alcalm_product.neneri .fv_sec .ttl_box {
    width: 64vw;
    background: linear-gradient(to right, #1D1D1D 0%, #605F5F 17%, #1F1F1F 94%, transparent 100%);
}

.page_alcalm_product .fv_sec .ttl_box .ttl {
    width: 409px;
}

.page_alcalm_product.nratch .fv_sec .ttl_box .ttl {
    width: 461px;
}

.page_alcalm_product.ntripe .fv_sec .ttl_box .ttl {
    width: 425px;
}

.page_alcalm_product.neneri .fv_sec .ttl_box .ttl {
    width: 455px;
}

.page_alcalm_product .fv_sec .ttl_box .ttl img {
    width: 100%;
}

.page_alcalm_product .fv_sec .img_box {
    padding: 99px calc(50vw - 620px) 99px 206px;
    background: linear-gradient(to right, #08090C, #30363C);
    width: 50vw;
    margin-left: -7vw;
    /* z-index: -1; */
}

.page_alcalm_product .fv_sec .img_box .img {
    width: 414px;
}

.page_alcalm_product.neneri .fv_sec .img_box {
    padding: 0;
    margin-left: -14vw;
    max-height: 638.04px;
}

.page_alcalm_product.neneri .fv_sec .img_box .img {
    width: 100%;
    height: 100%;
}

.page_alcalm_product .fv_sec .img_box .img img {
    width: 100%;
}

.page_alcalm_product.neneri .fv_sec .img_box .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_alcalm_product .fv_sec .catch_box {
    position: absolute;
    top: 0;
    left: calc(50vw - 95px);
    display: flex;
    flex-direction: row-reverse;
    height: 100%;
    padding: 48px 0;
}

.page_alcalm_product.ntripe .fv_sec .catch_box .text:first-child {
    margin-top: -0.3em;
}

.page_alcalm_product .fv_sec .catch_box .text {
    font-size: 65px;
    letter-spacing: 0.19em;
    line-height: 1.5;
    color: #fff;
    writing-mode: vertical-rl;
}

.page_alcalm_product .fv_sec .catch_box .text+.text {
    text-align: end;
}

.page_alcalm_product .fv_sec .catch_box .text .spacing {
    letter-spacing: 0;
}

.page_alcalm_product.ntripe .fv_sec .catch_box .text .spacing {
    margin-top: -0.2em;
}

.page_alcalm_product .fv_sec .catch_box .text .kerning {
    margin-top: -0.3em;
}

.page_alcalm_product .fv_sec .catch_box .text rt {
    font-size: 20px;
    margin-left: 0.2em;
}

.page_alcalm_product.ntripe .fv_sec .catch_box .text rt {
    letter-spacing: .08em;
    text-align: center;
    margin-top: -0.6em;
}

.page_alcalm_product .intro_sec {
    padding: 150px 0 137px;
    position: relative;
}

.page_alcalm_product .intro_sec .bg_img {
    position: absolute;
    inset: 0;
    opacity: 0.2;
    z-index: -1;
}

.page_alcalm_product.nratch .intro_sec .bg_img {
    opacity: 0.1;
}

.page_alcalm_product.ntripe .intro_sec .bg_img,
.page_alcalm_product.neneri .intro_sec .bg_img {
    opacity: 0.05;
}

.page_alcalm_product .intro_sec .bg_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_alcalm_product .intro_sec .main_box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

.page_alcalm_product .intro_sec .main_box .name {
    font-size: 90px;
    letter-spacing: .04em;
    line-height: 1;
    font-style: italic;
    color: #38354A;
    flex-shrink: 0;
}

.page_alcalm_product .intro_sec .main_box .catch_box .text {
    font-size: 30px;
    letter-spacing: .3em;
    color: #101010;
    line-height: 1.66;
}

.page_alcalm_product .intro_sec .desc_box .text {
    font-size: 16px;
    letter-spacing: .1em;
    line-height: 1.75;
}

.page_alcalm_product .catch_sec {
    padding: 150px 0 130px;
    max-width: 1440px;
    margin: 0 auto;
}

.page_alcalm_product .catch_sec .box {
    position: relative;
}

.page_alcalm_product .catch_sec .box.top {
    display: flex;
    align-items: flex-start;
    margin-bottom: 125px;
}

.page_alcalm_product .catch_sec .box.top .img_area {
    width: 750px;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
}

.page_alcalm_product .catch_sec .box.top .img_area img {
    width: 100%;
    aspect-ratio: 75/53;
    object-fit: cover;
}

.page_alcalm_product .catch_sec .box.bottom .img_area {
    width: 790px;
    position: absolute;
    top: 90px;
    right: 0;
    z-index: -1;
}

.page_alcalm_product .catch_sec .box.bottom .img_area::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0.7) 20%, transparent 54%);
}

.page_alcalm_product .catch_sec .box.bottom .img_area img {
    width: 100%;
    aspect-ratio: 79/54;
    object-fit: cover;
}

.page_alcalm_product .catch_sec .box.top .text_area {
    margin-left: -93px;
    margin-top: 50px;
}

.page_alcalm_product .catch_sec .box.bottom .text_area {
    margin-left: calc(50vw - 670px);
}

.page_alcalm_product .catch_sec .box.top .img_area .text {
    position: absolute;
    top: 50px;
    left: 657px;
    color: #fff;
    white-space: nowrap;
}

.page_alcalm_product .catch_sec .box .text_area .text,
.page_alcalm_product .catch_sec .box .img_area .text {
    font-size: 78px;
    letter-spacing: .2em;
    line-height: 1.15;
}

.page_alcalm_product .catch_sec .box .text_area .text .kakko_left,
.page_alcalm_product .catch_sec .box .img_area .text .kakko_left {
    margin-left: -0.5em;
}

.page_alcalm_product .catch_sec .box .text_area .text .kakko_right,
.page_alcalm_product .catch_sec .box .img_area .text .kakko_right {
    margin-right: -0.5em;
}

.page_alcalm_product .catch_sec .box .text_area .text .en,
.page_alcalm_product .catch_sec .box .img_area .text .en {
    letter-spacing: 0;
}

.page_alcalm_product .catch_sec .box .text_area .text .en rt,
.page_alcalm_product .catch_sec .box .img_area .text .en rt {
    font-size: 16px;
    text-align: center;
}

.page_alcalm_product.ntripe .catch_sec .box.top .text_area .text,
.page_alcalm_product.ntripe .catch_sec .box.top .img_area .text,
.page_alcalm_product.neneri .catch_sec .box.top .text_area .text,
.page_alcalm_product.neneri .catch_sec .box.top .img_area .text {
    line-height: 1.4;
    margin-bottom: 0.6em;
}

.page_alcalm_product .catch_sec .box.top .text_area .text {
    margin-bottom: 0.9em;
}

.page_alcalm_product .catch_sec .box.bottom .text_area .text {
    margin-left: 100px;
    margin-bottom: 0.4em;
}

.page_alcalm_product .catch_sec .box.top .text_area .img {
    width: 490px;
    margin-left: 193px;
}

.page_alcalm_product .catch_sec .box.top .text_area .img img {
    width: 100%;
    aspect-ratio: 49/32;
    object-fit: cover;
}

.page_alcalm_product .catch_sec .box.bottom .text_area .img.small {
    width: 400px;
    height: 270px;
}

.page_alcalm_product .catch_sec .box.bottom .text_area .img.mid {
    width: 500px;
    height: 330px;
    margin-left: 240px;
    margin-top: -80px;
}

.page_alcalm_product .catch_sec .box.bottom .text_area .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_alcalm_product .about_sec {
    padding: 85px 0 200px;
    background: linear-gradient(#FAFAFA, #FAFAFA);
    background-position: left top;
    background-size: 100% 410px;
    background-repeat: no-repeat;
}

.page_alcalm_product .about_sec .cont li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 80px;
    position: relative;
}

.page_alcalm_product .about_sec .cont li:first-child {
    align-items: flex-start;
}

.page_alcalm_product .about_sec .cont li+li {
    margin-top: 150px;
}

.page_alcalm_product .about_sec .cont li:nth-child(even) {
    flex-direction: row-reverse;
}

.page_alcalm_product .about_sec .cont li.long {
    gap: unset;
}

.page_alcalm_product .about_sec .cont li.long .text {
    width: 500px;
}

.page_alcalm_product .about_sec .cont li::before,
.page_alcalm_product .about_sec .cont li::after {
    content: "";
    position: absolute;
    width: 30px;
    aspect-ratio: 1;
}

.page_alcalm_product .about_sec .cont li::before {
    background: #6C1818;
}

.page_alcalm_product .about_sec .cont li::after {
    background: #DEB2B2;
}

.page_alcalm_product .about_sec .cont li:first-child::before {
    bottom: 38px;
    left: -30px;
    background: #6C1818;
}

.page_alcalm_product .about_sec .cont li:first-child::after {
    bottom: 60px;
    left: -45px;
    background: #DEB2B2;
}

.page_alcalm_product .about_sec .cont li:nth-child(odd):not(:first-child)::before {
    bottom: 0;
    left: -30px;
}

.page_alcalm_product .about_sec .cont li:nth-child(odd):not(:first-child)::after {
    bottom: 22px;
    left: -45px;
}

.page_alcalm_product .about_sec .cont li:nth-child(even)::before {
    bottom: 0;
    left: unset;
    right: -30px;
}

.page_alcalm_product .about_sec .cont li:nth-child(even)::after {
    bottom: 22px;
    left: unset;
    right: -45px;
}

.page_alcalm_product .about_sec .cont li:first-child .text_box {
    margin-top: 30px;
}

.page_alcalm_product .about_sec .cont li .text_box .ttl {
    font-size: 32px;
    letter-spacing: .1em;
    margin-bottom: 0.6em;
    font-weight: 300;
}

.page_alcalm_product .about_sec .cont li .text_box .ttl rt {
    font-size: 16px;
    margin-bottom: 0.5em;
    text-align: center;
    font-family: 'heisei-kaku-gothic-std';
}

.page_alcalm_product .about_sec .cont li .text_box .ttl .en_text {
    font-size: 40px;
    letter-spacing: .04em;
    font-style: normal;
}

.page_alcalm_product .about_sec .cont li .text {
    font-size: 16px;
    letter-spacing: .1em;
    line-height: 2.25;
}

.page_alcalm_product .about_sec .cont li .img_box {
    width: 560px;
    height: 400px;
    flex-shrink: 0;
}

.page_alcalm_product .about_sec .cont li:first-child .img_box {
    width: 620px;
}

.page_alcalm_product .about_sec .cont li .img_box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_alcalm_product .lineup_sec {
    padding: 110px 0 145px;
    background-image: url(./images/alcalm_lineup_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    z-index: 0;
}

.page_alcalm_product .lineup_sec::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #151515;
    opacity: .9;
    z-index: -1;
}

.page_alcalm_product .lineup_sec .ttl_box {
    margin-bottom: 30px;
}

.page_alcalm_product .lineup_sec .ttl_box .ttl {
    font-size: 48px;
    letter-spacing: .1em;
    color: #fff;
}

.page_alcalm_product .lineup_sec .cont ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px 30px;
}

.page_alcalm_product .lineup_sec .cont li {
    display: flex;
    flex-direction: column;
}

.page_alcalm_product .lineup_sec .cont li .img {
    width: 100%;
    margin-bottom: 25px;
}

.page_alcalm_product .lineup_sec .cont li .img img {
    width: 100%;
    aspect-ratio: 9/7;
    object-fit: cover;
}

.page_alcalm_product .lineup_sec .cont li .text {
    font-size: 20px;
    letter-spacing: .02em;
    color: #fff;
    padding-bottom: 0.3em;
    border-bottom: 1px solid #fff;
    flex-grow: 1;
    font-weight: 300;
}

.page_alcalm_product .details_sec {
    padding: 142px 0 70px;
    position: relative;
}

.page_alcalm_product .details_sec::before,
.page_alcalm_product .details_sec::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: calc(50vw - 180px);
    height: 100%;
    z-index: -1;
    clip-path: polygon(0 0, 100% 0, calc(100% - 115px) 100%, 0 100%);
}

.page_alcalm_product .details_sec::before {
    background: #000000;
}

.page_alcalm_product .details_sec::after {
    background-image: url(./images/alcalm_details_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    opacity: .2;
    mix-blend-mode: screen;
}

.page_alcalm_product .details_sec .cont {
    display: flex;
    gap: 216px;
}

.page_alcalm_product .details_sec .cont .ttl_box {
    flex-shrink: 0;
}

.page_alcalm_product .details_sec .cont .ttl_box .ttl {
    font-size: 48px;
    letter-spacing: .1em;
    color: #fff;
}

.page_alcalm_product .details_sec .cont .info_box {
    flex-grow: 1;
}

.page_alcalm_product .details_sec .cont .info_box ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 60px 78px;
}

.page_alcalm_product .details_sec .cont .info_box li .head {
    font-size: 20px;
    letter-spacing: .02em;
    padding-bottom: 0.2em;
    margin-bottom: 0.8em;
    border-bottom: 2px solid #6C1818;
    font-weight: 300;
}

.page_alcalm_product .details_sec .cont .info_box li .text_box .text {
    font-size: 18px;
    letter-spacing: .02em;
    line-height: 1.55;
}

.page_alcalm_product .details_sec .cont .info_box li .text_box .att {
    font-size: 14px;
    letter-spacing: .02em;
    line-height: 1.57;
    margin-top: 0.4em;
}

.page_alcalm_product .works_sec {
    padding: 198px 0 0;
}

.page_alcalm_product .works_sec .ttl_box {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-bottom: 40px;
}

.page_alcalm_product .works_sec .ttl_box .ttl {
    font-size: 40px;
    letter-spacing: .1em;
    color: #000000;
    font-weight: 300;
}

.page_alcalm_product .works_sec .ttl_box::after {
    content: "";
    width: 160px;
    height: 1px;
    background: #333333;
}

.page_alcalm_product .works_sec .cont {
    margin-left: -10px;
    margin-right: -10px;
}

.page_alcalm_product .works_sec .cont ul.slick-slider {
    background: unset;
}

.page_alcalm_product .works_sec .cont .slick-track {
    display: flex;
}

.page_alcalm_product .works_sec .cont li.slick-slide {
    margin: 0 10px;
    height: auto !important;
}

.page_alcalm_product .works_sec .cont li.slick-slide .link {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.page_alcalm_product .works_sec .cont li.slick-slide .link .img {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.page_alcalm_product .works_sec .cont li.slick-slide .link .img::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #000000;
    opacity: 0;
    z-index: 1;
    transition: .3s;
}

.page_alcalm_product .works_sec .cont li.slick-slide .link:hover .img::before {
    opacity: 0.3;
}

.page_alcalm_product .works_sec .cont li.slick-slide .link .img img {
    width: 100%;
    aspect-ratio: 27/22;
    object-fit: cover;
    transition: .3s;
}

.page_alcalm_product .works_sec .cont li.slick-slide .link:hover .img img {
    scale: 1.1;
}

.page_alcalm_product .works_sec .cont li.slick-slide .link .name {
    font-size: 16px;
    letter-spacing: .08em;
    line-height: 1.4;
    font-weight: 300;
    color: #333333;
    padding-top: 1em;
    margin-bottom: 0.9em;
    flex-grow: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    background: linear-gradient(#000, #000);
    background-position: left top;
    background-size: 0 4px;
    background-repeat: no-repeat;
    transition: .3s;
}

.page_alcalm_product .works_sec .cont li.slick-slide .link:hover .name {
    color: #8E8E8E;
    background-size: 100% 4px;
}

.page_alcalm_product .works_sec .cont li.slick-slide .link .cate_box {
    display: flex;
    gap: 5px;
}

.page_alcalm_product .works_sec .cont li.slick-slide .link .cate_box .cate {
    font-size: 13px;
    letter-spacing: .04em;
    color: #413F4A;
    padding: 0.2em 0.5em;
    border: 1px solid #413F4A;
}

.page_alcalm_product .works_sec .cont .slick-prev,
.page_alcalm_product .works_sec .cont .slick-next {
    width: 70px;
    height: 70px;
    background: #fff;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.16);
    transition: .3s;
}

.page_alcalm_product .works_sec .cont .slick-prev {
    left: -90px;
}

.page_alcalm_product .works_sec .cont .slick-next {
    right: -90px;
}

.page_alcalm_product .works_sec .cont .slick-prev:hover,
.page_alcalm_product .works_sec .cont .slick-next:hover {
    opacity: 0.7;
}

.page_alcalm_product .works_sec .cont .slick-prev::before,
.page_alcalm_product .works_sec .cont .slick-next::before {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    opacity: 1;
    border-right: 1.5px solid #333333;
    border-bottom: 1.5px solid #333333;
    top: 50%;
    translate: 0 -50%;
    transition: .3s;
}

.page_alcalm_product .works_sec .cont .slick-prev::before {
    rotate: 135deg;
    left: 47%;
}

.page_alcalm_product .works_sec .cont .slick-next::before {
    rotate: -45deg;
    right: 47%;
}

.page_alcalm_product .works_sec .cont .slick-prev:hover::before,
.page_alcalm_product .works_sec .cont .slick-next:hover::before {
    opacity: 0.7;
}

.page_alcalm_product .youtube_sec {
    margin-bottom: 180px;
    margin-top: 200px;
}

.page_alcalm_product .youtube_sec .cont {
    width: 854px;
    height: 480px;
    margin: 0 auto 80px;
}

.page_alcalm_product .youtube_sec .contact_btn .link {
    display: flex;
    align-items: center;
    gap: 30px;
    padding: 0 63px;
    min-block-size: 70px;
    background: #760b13;
    width: fit-content;
    margin: 0 auto;
    font-size: 18px;
    letter-spacing: .08em;
    line-height: 1;
    color: #fff;
    position: relative;
}

.page_alcalm_product .youtube_sec .contact_btn .link::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: #fff;
    opacity: 0.2;
    transition: .3s;
}

.page_alcalm_product .youtube_sec .contact_btn .link:hover::before {
    left: 0;
}

.page_alcalm_product .youtube_sec .contact_btn .link .icon {
    width: 30px;
    line-height: 1;
}

.page_alcalm_product .youtube_sec .contact_btn .link .icon img {
    width: 100%;
}

.page_alcalm_product .series_sec {
    padding: 102px 0 202px;
    background: linear-gradient(to bottom, #F5F5F5, #fff);
}

.page_alcalm_product .series_sec .ttl_box {
    margin-bottom: 10px;
}

.page_alcalm_product .series_sec .ttl_box .ttl {
    font-size: 48px;
    letter-spacing: .1em;
    color: #000000;
    font-weight: 300;
}

.page_alcalm_product .series_sec .ttl_box .ttl .en_text {
    font-size: 54px;
    letter-spacing: .04em;
    font-style: italic;

}

.page_alcalm_product .series_sec .cont ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    position: relative;
    z-index: 0;
}

.page_alcalm_product .series_sec .cont li .link {
    display: block;
}

.page_alcalm_product .series_sec .cont li .link .img {
    width: 100%;
    margin-bottom: 20px;
}

.page_alcalm_product .series_sec .cont li .link .img img {
    width: 100%;
    aspect-ratio: 3/2;
    object-fit: cover;
    transition: .3s;
}

.page_alcalm_product .series_sec .cont li .link:hover .img img {
    opacity: 0.8;
}

.page_alcalm_product .series_sec .cont li .link .text_box {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.page_alcalm_product .series_sec .cont li .link .text_box .text {
    font-size: 26px;
    letter-spacing: .04em;
    line-height: 1;
    color: #fff;
    padding: 1.1em 0.8em 0.2em 0.8em;
    min-block-size: 60px;
    position: relative;
    transition: .3s;
}

/* Safari */
_::-webkit-full-page-media,
_:future,
:root .page_alcalm_product .series_sec .cont li .link .text_box .text {
    padding: 0.4em 0.8em 0.2em 0.8em;
}

.page_alcalm_product .series_sec .cont li .link:hover .text_box .text {
    color: #000;
}

.page_alcalm_product .series_sec .cont li .link .text_box .text .bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.page_alcalm_product .series_sec .cont li .link .text_box .text .bg svg {
    fill: #000;
}

.page_alcalm_product .series_sec .cont li .link .text_box .text .bg svg path {
    transition: .3s;
}

.page_alcalm_product .series_sec .cont li .link:hover .text_box .text .bg svg path {
    fill: transparent;
    stroke: #000;
}

.page_alcalm_product .series_sec .cont li .link .text_box .icon {
    width: 40px;
    aspect-ratio: 1;
    border: 1px solid #333333;
    background: transparent;
    border-radius: 50%;
    display: grid;
    place-content: center;
    transition: .3s;
}

.page_alcalm_product .series_sec .cont li .link:hover .text_box .icon {
    background: #333333;
}

.page_alcalm_product .series_sec .cont li .link .text_box .icon::before {
    content: "";
    width: 8px;
    aspect-ratio: 1;
    border-right: 1px solid #333333;
    border-bottom: 1px solid #333333;
    rotate: -45deg;
    translate: -1px 0;
    transition: .3s;
}

.page_alcalm_product .series_sec .cont li .link:hover .text_box .icon::before {
    border-color: #fff;
}

.page_alcalm .alcalm_product .main_img a {
    display: block;
}

.page_alcalm .alcalm_product .main_img a:hover img {
    opacity: 1;
    transform: scale(1.03);
}

.job_archive_cate_list_ttl {
    font-size: 26px;
    margin-bottom: .7em;
}

.job_archive_block+.job_archive_block {
    margin-top: 70px;
}

@media screen and (min-width: 1441px) {
    .page_alcalm_product .catch_sec .box.bottom .text_area {
        margin-left: 100px;
    }

    .page_albright .albright_feature .cont .box {
        padding-left: calc(50vw - 720px);
    }

    .page_albright .albright_feature .cont .box .img {
        width: 720px;
    }

    .page_alcalm_product .details_sec {
        max-width: 1440px;
        margin: 0 auto;
    }

    .page_alcalm_product .details_sec::before,
    .page_alcalm_product .details_sec::after {
        width: 540px;
    }
}

@media screen and (max-width: 1400px) {
    #header {
        min-width: auto;
        width: 100%;
    }

    .hd_cont .logo {
        width: 20%;
    }

    .hd_cont .hd_nav_box {
        width: 80%;
        justify-content: flex-end;
    }

    .hd_cont .hd_contact_box {
        width: 30%;
        margin: 0;
    }

    .hd_nav_box .hd_nav {
        width: 70%;
        margin: 0;
    }

    .hd_contact_box p {
        width: 50%;
    }

    .hd_contact_box .contact a {
        font-size: 0.7vw;
        width: 105%;
    }

    .hd_contact_box .tel a {
        width: 105%;
        font-size: 1vw;
    }

    .hd_nav ul li>a {
        padding: 0 1vw;
        font-size: 1vw;
    }

    .hd_nav ul {
        justify-content: flex-end;
        padding-right: 2vw;
    }

    .hd_nav_open {
        padding: 30px 20px 50px;
    }

    .hd_nav_open .wrap {
        width: 100%;
    }

    /* アルブライト */
    .page_albright .albright_mv {
        padding-top: 23vw;
    }

    .page_albright .albright_mv .ttl_box {
        padding: 0 50px;
        margin-bottom: 2vw;
    }

    .page_albright .albright_mv .ttl_box .ttl {
        width: 58%;
    }

    .page_albright .albright_mv .ttl_box .text {
        font-size: 3.3vw;
    }

    .page_albright .albright_feature .cont .en_ttl {
        margin: 0 50px;
    }

    .page_albright .albright_feature .cont .box {
        margin-right: 100px;
        padding: 90px 50px 38px 0;
    }

    .page_albright .albright_feature .cont .box .img {
        /* width: 100vw; */
        /* margin-top: 0; */
        /* margin-left: -5vw; */
        /* margin-bottom: 9vw; */
    }

    .page_albright .albright_feature .cont .deco_text {
        right: 38px;
    }

    .page_albright .albright_lineup {
        margin: 0 50px 90px;
    }

    .page_albright .albright_lineup .ttl_area .tab_area li {
        width: 7.6vw;
        min-block-size: 7.6vw;
    }

    .page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li {
        width: 9vw !important;
    }

    .page_albright .albright_lineup .panel_area .panel.active {
        gap: 50px;
    }

    .page_albright .albright_lineup .panel_area .panel .slider_box {
        width: 40%;
    }

    .page_albright .albright_lineup .panel_area .panel .slider_box ul.slick-slider .slick-list,
    .page_albright .albright_lineup .panel_area .panel .slider_box ul.slick-slider .slick-track {
        height: 100%;
    }

    .page_albright .albright_details {
        margin: 0 50px 105px;
    }

    .page_albright .albright_works {
        padding: 160px 100px 270px;
    }

    /* アルカーム */
    .page_alcalm .alcalm_mv .ttl_area {
        gap: 70px;
        padding: 40px;
    }

    .page_alcalm .alcalm_mv .ttl_area .ttl {
        width: min(40vw, 575px);
    }

    .page_alcalm .alcalm_mv .product_area li .name_box .text {
        font-size: 2vw;
    }

    .page_alcalm .alcalm_mv .product_area li {
        padding: 15px 1.4vw;
    }

    .page_alcalm .alcalm_mv .product_area li .name_box {
        gap: 2vw;
    }

    .page_alcalm .alcalm_mv .product_area li .name_box .text::before {
        top: -0.2vw;
        left: -2vw;
    }

    .page_alcalm .alcalm_product {
        gap: 50px;
        padding: 108px 120px 0 0;
    }

    .page_alcalm .alcalm_product .cont .ttl {
        margin-bottom: 5.5vw;
    }

    .page_alcalm .alcalm_product .cont .text_box {
        margin-bottom: 4vw;
    }

    .page_alcalm .alcalm_product .cont .text_box .head {
        font-size: 3vw;
    }

    .page_alcalm .alcalm_product .main_img {
        width: 41vw;
        margin-bottom: -20px;
    }

    .page_alcalm .alcalm_product .cont .item_box .catch_box .catch {
        font-size: 4vw;
    }

    .page_alcalm_product .catch_sec .box .text_area .text,
    .page_alcalm_product .catch_sec .box .img_area .text {
        font-size: 58px;
    }
}

@media screen and (max-width: 1300px) {
    .top_mv_cont {
        right: 5%;
    }

    .bx-wrapper .bx-pager,
    .bx-wrapper .bx-controls-auto {
        left: auto;
        right: 5%;
        width: auto;
    }
}

@media screen and (max-width: 1250px) {
    .ft_nav_box ul li a {
        font-size: 0.7vw;
    }

    .ft_nav_box ul li a.sub {
        font-size: 0.7vw;
    }

    .ft_nav_box h2 {
        font-size: 1.2vw;
    }

    .ft_nav_box .sub_nav ul li a {
        font-size: 1vw;
    }

    .ft_nav_box .sub_nav {
        margin-left: 1vw;
        width: 14vw;
    }

    .ft_nav_box ul li+li {
        margin-top: 0;
    }

    .top_products_cont_main ul li {
        width: 49%;
    }

    .top_products_cont_sub ul {
        gap: 10px;
    }

    .top_products_cont_sub ul li {
        width: 100%;
    }

    .common_h3_box .en img {
        height: 13px;
    }

    .top_case_study_cont .text_box {
        width: 48%;
    }

    .top_case_study_imgs {
        width: 48%;
    }

    .top_case_study_imgs ul li {
        width: 48%;
    }

    .page_alcalm .alcalm_mv {
        margin-bottom: 0;
        height: auto !important;
    }

    .page_alcalm .alcalm_mv .ttl_area {
        height: auto;
    }

    .page_alcalm .alcalm_mv .product_area {
        height: 25vw;
    }

    .page_alcalm .alcalm_product {
        height: auto !important;
    }

    .page_alcalm_product .inner {
        width: 96%;
    }

    .page_alcalm_product .fv_sec .ttl_box {
        padding-left: 3vw;
    }

    .page_alcalm_product.neneri .fv_sec .ttl_box .ttl,
    .page_alcalm_product.ntripe .fv_sec .ttl_box .ttl,
    .page_alcalm_product.nratch .fv_sec .ttl_box .ttl,
    .page_alcalm_product .fv_sec .ttl_box .ttl {
        width: 33vw;
    }

    .page_alcalm_product.neneri .fv_sec .img_box {
        max-height: unset;
        height: 50vw;
    }

    .page_alcalm_product .fv_sec .img_box {
        padding-right: 3vw;
        padding-left: 13vw;
    }

    .page_alcalm_product .fv_sec .img_box .img {
        width: 100%;
    }

    .page_alcalm_product .fv_sec .catch_box .text {
        font-size: 5.4vw;
    }

    .page_alcalm_product .intro_sec .main_box .name {
        font-size: 8vw;
    }

    .page_alcalm_product .intro_sec .main_box .catch_box .text {
        font-size: 2.5vw;
        padding-left: 1em;
    }

    .page_alcalm_product .catch_sec .box .text_area .text,
    .page_alcalm_product .catch_sec .box .img_area .text {
        font-size: 3.9vw;
    }

    .page_alcalm_product .catch_sec .box.bottom .text_area {
        margin-left: 0;
    }

    .page_alcalm_product .catch_sec .box.bottom .text_area .text {
        margin-left: 50px;
    }

    .page_alcalm_product .about_sec .cont li:first-child .img_box,
    .page_alcalm_product .about_sec .cont li .img_box {
        width: 480px;
    }
}

@media screen and (max-width: 1024px) {
    #mainVisual .inner {
        max-width: 100%;
    }

    .common_page_wrap {
        padding: 10vw 0;
    }

    .pc {
        display: none !important;
    }

    .tb {
        display: block;
    }

    body {
        min-width: 100%;
        padding-top: 0;
    }

    /*spmenu~*/
    .sp_hd {
        position: fixed;
        width: 100%;
        top: 0;
        z-index: 10000;
    }

    .sp_pr {
        position: relative;
    }

    .slicknav_menu .slicknav_menutxt {
        display: none !important;
    }

    .slicknav_menu .slicknav_icon {
        width: 100%;
        margin: 0;
    }

    .slicknav_menu .slicknav_icon-bar {
        width: 25px !important;
        height: 3px !important;
        background-color: #fff;
        box-shadow: none;
        border-radius: 0;
    }

    a.slicknav_btn {
        background: #fff;
        border-radius: 0px;
    }

    /*SPMENU kurukuru*/
    a.slicknav_btn.slicknav_open span.slicknav_icon-bar:first-child {
        top: 4px;
        -moz-transform: rotate(405deg);
        -webkit-transform: rotate(405deg);
        -o-transform: rotate(405deg);
        -ms-transform: rotate(405deg);
        transform: rotate(405deg);
        position: absolute;
    }

    a.slicknav_btn.slicknav_open span.slicknav_icon-bar:nth-child(3) {
        top: -0.6px;
        -moz-transform: rotate(-405deg);
        -webkit-transform: rotate(-405deg);
        -o-transform: rotate(-405deg);
        -ms-transform: rotate(-405deg);
        transform: rotate(-405deg);
        position: absolute;
    }

    a.slicknav_btn.slicknav_open span.slicknav_icon-bar:nth-child(2) {
        opacity: 0;
    }

    span.slicknav_icon-bar {
        transition: all 0.5s ease-out;
        -o-transition: all 0.5s ease-out;
        -moz-transition: all 0.5s ease-out;
        -webkit-transition: all 0.5s ease-out;
        -ms-transition: all 0.5s ease-out;
    }

    .slicknav_menu .slicknav_icon {
        width: 100% !important;
        margin: 0 !important;
        float: none !important;
        position: relative;
    }

    /*kokomade*/
    .slicknav_menu .slicknav_menutxt {
        display: none;
    }

    .slicknav_menu {
        background-color: #000;
        padding: 12px 10px;
    }

    a.slicknav_btn {
        margin: 8px 6px 4px 0px;
        padding: 0px 0 0 0px;
        height: 25px;
        width: 25px;
        background-color: transparent;
    }

    .slicknav_menu .slicknav_icon {
        height: 16px !important;
        display: block;
    }

    .slicknav_menu .slicknav_icon:after {
        display: block;
        font-size: 70%;
        color: #fff;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -20px;
        margin: 0 auto;
    }

    .slicknav_nav a {
        color: #fff !important;
        font-weight: bold;
        line-height: 2;
        width: 100%;
        margin: 0;
        letter-spacing: 1px;
        font-size: 13px;
        border: solid #ccc;
        border-width: 0 0px 1px 0;
        line-height: 30px;
        padding-left: 10px;
        position: relative;
    }

    /*~spmenu*/
    .sp_hd_logo {
        position: absolute;
        width: 275px;
        top: 12px;
        left: 15px;
    }

    .sp_hd_tel {
        position: absolute;
        width: 26px;
        top: 19px;
        right: 60px;
    }

    .sp_hd_mail {
        position: absolute;
        width: 22px;
        top: 21px;
        right: 109px;
    }

    .wrap {
        max-width: 96%;
    }

    .slicknav_menu img {
        width: 100%;
    }

    .sp_hd_tel a {
        display: block;
        width: 100%;
        height: 100%;
    }

    .sp_hd_tel a img {
        width: 100%;
    }

    .sp_hd_mail img {
        width: 100%;
    }

    .sp_hd_cont .ttl {
        width: 100%;
        font-size: 13px;
        border-bottom: 1px solid #fff;
        line-height: 40px;
        padding-left: 10px;
        letter-spacing: 1px;
        position: relative;
        font-weight: 600;
    }

    .slicknav_nav ul {
        margin: 0;
    }

    .slicknav_nav nav {
        width: 100%;
    }

    .slicknav_nav {
        padding-top: 15px;
        padding-bottom: 10px;
    }

    .slicknav_nav a::before,
    .sp_hd_cont .ttl::before {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        right: 10px;
        margin: auto;
        width: 4px;
        height: 4px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        transform: rotate(45deg);
    }

    nav.switchDetail ul li a {
        font-size: 12px;
        border-color: #666;
    }

    nav.switchDetail ul li.big {
        width: 100%;
    }

    nav.switchDetail ul li {
        width: 49%;
    }

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

    nav.switchDetail {
        padding-bottom: 10px;
    }

    .sp_hd_cont .ttl.nowOpen::before {
        transform: rotate(135deg);
    }

    p.closeBtnHat {
        display: none;
    }

    nav.switchDetail ul li a::before {
        display: none;
    }

    nav.switchDetail ul li.middle {
        width: 32%;
    }

    .top_mv_cont {
        padding-bottom: 0;
        top: 0;
        margin: auto;
        height: 160px;
        left: 0;
        right: 25px;
        text-align: center;
    }

    .top_mv_cont h1 {
        font-size: 14px;
        margin-top: 25px;
        line-height: 1.8;
        letter-spacing: 2px;
        text-align: right;
    }

    .top_mv_cont .main_text {
        margin: 0 0 0 auto;
        width: 85%;
    }

    .top_mv_cont .en_company_name {
        padding-bottom: 8px;
        width: 62%;
        margin: auto;
    }

    body {
        margin-top: 60px;
    }

    .top_mv_cont .en_company_name::before {
        right: 0;
        left: 0;
        width: 100%;
    }

    .bx-wrapper .bx-pager,
    .bx-wrapper .bx-controls-auto {
        bottom: 15px;
        padding-right: 0;
        padding-top: 0;
        margin: auto;
        height: auto;
        width: 100%;
        left: 0;
        text-align: right;
        padding-right: 30px;
    }

    .bx-wrapper .bx-pager.bx-default-pager a {
        width: 12px;
        height: 12px;
        margin: 0px 5px;
    }

    #top_information {
        padding: 75px 0;
    }

    .common_h2_box h2 {
        font-size: 14px;
        margin-left: 20px;
        line-height: 1;
    }

    #top_information .common_h2_box.type01 .en {
        width: 190px;
    }

    #top_information .common_h2_box {
        padding: 5px 0;
    }

    a.top_information_btn {
        font-size: 12px;
        line-height: 2.3;
    }

    .common_h2_box.type01 {
        margin-bottom: 40px;
    }

    .top_information_cont ul li a {
        padding: 20px 25px;
    }

    .top_information_cont ul li a::before {
        display: none;
    }

    .top_information_cont ul li a time {
        font-size: 12px;
    }

    .top_information_cont ul li a .ttl {
        font-size: 13px;
        margin-left: 20px;
        width: 80%;
        line-height: 1.7;
    }

    #top_products {
        padding: 75px 0;
    }

    #top_products .common_h2_box .en {
        width: 149px;
    }

    .common_h3_box h3 {
        font-size: 13px;
        margin-left: 0;
        width: 100%;
        margin-top: 5px;
    }

    .common_h3_box {
        padding: 15px 0;
        background-position: right 15px center;
        background-size: 22px;
        line-height: 1.7;
    }

    .top_products_cont_main ul li .text_box .text {
        font-size: 12px;
    }

    .top_products_cont_sub ul li {
        width: 100%;
    }

    .top_products_cont_main ul li:nth-child(n + 3) {
        margin-top: 25px;
        width: 32%;
    }

    .top_products_cont_sub {
        margin-top: 30px;
    }

    #top_technique {
        padding: 75px 0;
    }

    #top_technique .common_h2_box .en {
        width: 158px;
        margin: auto;
    }

    .common_h2_box.type02 h2 {
        margin-top: 15px;
    }

    #top_technique .text {
        font-size: 14px;
        margin-top: 25px;
    }

    p.common_btn {
        margin-top: 25px;
    }

    .page_albright .albright_feature .cont .box .img {
        width: 100%;
        margin-bottom: 6vw;
    }

    p.common_btn a {
        width: 250px;
        padding: 0;
        height: 40px;
        background-position: left 85px top 14px;
        background-size: 110px;
        background-color: #fff;
        background-image: url(/wp/wp-content/uploads/2021/03/more_detail_text_black.svg);
    }

    p.common_btn a::before,
    p.common_btn a::after {
        left: 54px;
        background-color: #000;
    }

    p.common_btn.type02 a {
        background-color: transparent;
        background-image: url(/wp/wp-content/uploads/2021/03/more_detail_text.svg);
    }

    p.common_btn.type02 a::before,
    p.common_btn.type02 a::after {
        background-color: #fff;
    }

    #top_casestudy_strength {
        padding: 75px 0;
    }

    #top_case_study .common_h2_box .en {
        width: 170px;
    }

    #top_casestudy_strength .text_box {
        width: 100%;
    }

    #top_casestudy_strength .text {
        font-size: 14px;
    }

    .top_case_study_cont .text_box {
        width: 100%;
    }

    .top_case_study_imgs {
        width: 100%;
        margin-top: 20px;
        margin: 20px auto 0;
    }

    .top_case_study_imgs ul li {
        width: 23%;
    }

    .top_case_study_imgs ul li:nth-child(n + 3) {
        margin-top: 0px;
    }

    #top_casestudy_strength p.common_btn {
        margin: 25px auto 0px;
        order: 3;
        width: 100%;
        text-align: center;
    }

    .top_case_study_cont .text_box .text {
        font-size: 14px;
    }

    #top_case_study {
        padding: 75px 0;
    }

    .top_strength_img {
        order: 2;
        margin-top: 20px;
        width: 70%;
        margin: 20px auto 0;
    }

    #top_strength,
    #top_technique {
        width: 100%;
        padding: 50px 0;
    }

    #top_strength .text,
    #top_technique .text {
        font-size: 14px;
        margin-top: 25px;
    }

    #top_catalog,
    #top_faq {
        width: 100%;
        padding: 50px 0px;
    }

    #top_catalog .common_h2_box .en {
        width: 135px;
        margin: auto;
    }

    #top_catalog_faq .text {
        font-size: 14px;
        margin-top: 25px;
    }

    #top_faq .common_h2_box .en {
        width: 55px;
        margin: auto;
    }

    #top_recruit::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
    }

    #top_recruit {
        text-align: center;
        padding: 50px 0;
        position: relative;
        background-position: left 100% center;
        text-align: right;
        background-size: cover;
    }

    .common_h2_box.type03 {
        justify-content: flex-end;
    }

    #top_recruit>* {
        position: relative;
        z-index: 10;
    }

    .common_h2_box.type03 h2 {
        margin-left: 0;
        margin-right: 15px;
        margin-top: 0;
    }

    #top_recruit .text {
        letter-spacing: 1.5px;
        font-size: 14px;
        margin-top: 25px;
    }

    #top_recruit .common_h2_box.type03 .en {
        width: 120px;
    }

    .ft_nav_box {
        display: none;
    }

    #footer {
        background-color: #f9f9f9;
        padding: 50px 0 10px;
    }

    .ft_info_box .logo_box {
        justify-content: center;
    }

    .ft_info_box .logo_box .logo {
        margin-right: 0;
        width: 300px;
        text-align: center;
        margin: auto;
    }

    .ft_info_box .sns_box {
        width: 100%;
        text-align: center;
        margin-top: 20px;
    }

    .ft_info_box .sns_box a {
        margin-right: 0;
        transition: 0.2s;
        width: 25px;
        display: inline-block;
        margin: 0 8px;
    }

    .ft_info_box .add_tel {
        font-size: 12px;
        margin-top: 20px;
        text-align: center;
        letter-spacing: 0.8px;
    }

    .sp_sitemap_privacy {
        text-align: center;
        margin-top: 40px;
    }

    .sp_sitemap_privacy span {
        margin: 0 8px;
    }

    .sp_sitemap_privacy a {
        color: #000;
        font-size: 11px;
        letter-spacing: 0.8px;
    }

    .copyright {
        font-size: 10px;
        margin-top: 18px;
        text-align: center;
    }

    #top_strength .common_h2_box .en {
        width: 148px;
    }

    /* 会社概要 */
    .common_page_list ul li {
        font-size: 14px;
        padding: 12px 20px;
    }

    .common_page_list ul li .ttl {
        width: 150px;
    }

    .common_page_list ul li .text {
        width: 70%;
    }

    .company_map .img {
        width: 100%;
    }

    .company_map .map {
        width: 100%;
        margin-top: 20px;
        height: 250px;
    }

    .company_map {
        margin-top: 20px;
    }

    .page_company_link_box ul li {
        width: 48.5%;
    }

    .page_company_link_box {
        margin-top: 50px;
    }

    .page_company_link_box h2.common_page_h2 {
        font-size: 18px;
        padding-left: 26px;
        background-size: 16px;
        margin-bottom: 10px;
    }

    .page_company_link_box ul li:nth-child(n + 3) {
        margin-top: 20px;
    }

    /* 関連会社について */
    .page_affiliate_info_box .text_box h2 {
        font-size: 22px;
        margin: 10px 0 0;
        letter-spacing: 1px;
    }

    .page_affiliate_info_box .text_box h2 span {
        font-size: 20px;
    }

    .page_affiliate_info_box .text {
        font-size: 14px;
        line-height: 1.8;
        margin-top: 12px;
    }

    /* 沿革 */
    .page_history_cont {
        overflow: scroll;
    }

    .page_history_cont ul {
        width: 2150px;
    }

    .page_history_cont ul li {
        align-items: flex-start;
        width: 400px;
        justify-content: center;
        align-content: flex-start;
    }

    .page_history_cont ul li+li {
        margin-top: 0;
    }

    .page_history_cont ul li .age {
        width: 115px;
        height: 115px;
    }

    .page_history_cont ul li .age::before {
        top: auto;
        bottom: -3px;
        right: -5px;
        transform: rotate(225deg) skew(10deg, 10deg);
        left: 0;
    }

    .page_history_cont_box {
        width: 100%;
        align-items: flex-start;
        margin-top: 20px;
    }

    .page_history_cont_box .text_box {
        width: 100%;
        margin-top: 10px;
    }

    .page_history_cont_box .img {
        width: 100%;
    }

    .page_history_cont_box .text_box h2 {
        font-size: 22px;
    }

    .page_history_cont_box .text_box .text {
        font-size: 15px;
        margin-top: 10px;
    }

    /* POST */
    .single_post_cont .ttl {
        font-size: 20px;
        padding-bottom: 10px;
    }

    .single_post_cont .text_box h2 {
        font-size: 18px;
        margin: 25px 0 0;
    }

    .single_post_cont .text_box h3 {
        font-size: 17px;
        margin: 20px 0 0;
    }

    .single_post_cont .text_box h4 {
        font-size: 16px;
        margin: 15px 0 0;
    }

    .single_post_cont .text_box p {
        font-size: 15px;
        margin-top: 10px;
    }

    a.common_page_btn {
        width: 235px;
        font-size: 16px;
        margin: 0 10px;
    }

    .common_page_btn_box {
        margin-top: 30px;
    }

    .bottom_bar {
        margin-top: 50px;
        padding: 30px 20px;
    }

    .bottom_bar .common_h2_box.type01 .en {
        width: 185px;
    }

    .bottom_bar .common_h2_box.type01 .en img {
        height: auto;
    }

    .bottom_bar .common_h2_box.type01 {
        margin-bottom: 25px;
    }

    .bottom_bar_list li {
        width: 100%;
    }

    .bottom_bar_list li a {
        padding: 20px 10px;
    }

    .bottom_bar_list li+li a {
        border-top: 0;
    }

    .archive_post_cont ul li a {
        padding: 20px 10px;
    }

    .archive_post_cont ul li a .img {
        width: 135px;
        margin-right: 15px;
    }

    .archive_post_cont ul li a .text_box {
        width: 72%;
    }

    .nav-links .page-numbers {
        font-size: 16px;
        padding: 13px 0px;
        width: 40px;
    }

    .nav-links .page-numbers.next,
    .nav-links .page-numbers.prev {
        padding: 13px 0 0;
    }

    .archive_post_cont ul li a::before {
        display: none;
    }

    .single_post_cont .img {
        height: 40vw;
    }

    /* カタログ */
    .page_catalog .common_page_list ul li .ttl {
        width: 100%;
    }

    /* 会社情報 */

    .page_company .page_company_h2_box .en img {
        display: inline-block;
    }

    .page_company .page_company_h2_box .en img[alt="greeting"] {
        width: 125px;
    }

    .page_company .page_company_h2_box .en img[alt="overview"] {
        width: 130px;
    }

    .page_company .page_company_h2_box .en img[alt="history"] {
        width: 115px;
    }

    .page_company .page_company_h2_box .en img[alt="affiliate"] {
        width: 130px;
    }

    .page_company_cont li {
        width: 49%;
    }

    .page_company_h2_box h2 {
        font-size: 13px;
        margin-left: 0;
        width: 100%;
        margin-top: 5px;
    }

    .page_company_h2_box {
        padding: 15px 0;
        background-position: right 15px center;
        background-size: 22px;
    }

    .page_company_cont li.greeting .page_company_h2_box .en {
        width: 170px;
    }

    .page_company_cont li.company_overview .page_company_h2_box .en {
        width: 170px;
    }

    .page_company_cont li.history .page_company_h2_box .en {
        width: 170px;
    }

    .page_company_cont li.affiliate .page_company_h2_box .en {
        width: 170px;
    }

    .page_company_cont li:nth-child(n + 3) {
        margin-top: 30px;
    }

    .page_history_ttl_img {
        width: 300px;
    }

    /*加工技術*/

    .page_technique_link_box ul li {
        margin: 0;
        width: 30%;
    }

    .page_technique_link_box ul {
        justify-content: space-between;
    }

    .page_technique_link_box ul li h2 {
        font-size: 20px;
        background-size: 18px;
        padding-top: 32px;
    }

    .page_technique_link_box ul li a {
        width: 100%;
        margin: 10px auto 0;
        height: 50px;
        background-position: center top 12px;
        background-size: 100px;
    }

    .page_technique_link_box ul li a::before {
        top: 28px;
        bottom: auto;
        left: 0;
        right: 0;
    }

    .page_technique_link_box {
        background-color: #f1f1f1;
        padding: 35px 25px;
    }

    .page_technique_item {
        margin-top: 75px;
    }

    .page_technique_item h2 {
        font-size: 25px;
        background-size: 20px;
        padding-left: 38px;
        margin-bottom: 30px;
    }

    .page_technique_item .technique_box .img {
        width: 100%;
        max-width: 500px;
    }

    .page_technique_item .technique_box .text_box {
        width: 100%;
        margin-top: 20px;
    }

    .page_technique_item .technique_box .text_box h3 {
        font-size: 25px;
    }

    .page_technique_item .technique_box .text_box .text {
        font-size: 14px;
        margin-top: 15px;
        width: 100%;
    }

    .page_technique_item .technique_type {
        margin-top: 50px;
    }

    .page_technique_item .technique_type ul li h3,
    .page_technique_item.coloring_ver .technique_box .text_box h3 {
        font-size: 18px;
        padding: 15px 30px;
        margin: 0px 0 20px;
    }

    .page_technique_item .technique_type_box .img {
        width: 100%;
        max-width: 500px;
        margin-top: 15px;
    }

    .page_technique_item .technique_type_box .text {
        font-size: 14px;
        width: 100%;
    }

    .page_technique_item .technique_type ul li+li {
        margin-top: 40px;
    }

    .page_technique_item .technique_flow {
        margin-top: 50px;
    }

    .page_technique_item+.page_technique_item {
        padding-top: 55px;
    }

    /* 個人情報保護方針 */
    .page_privacy_cont {
        font-size: 15px;
        line-height: 1.9;
    }

    .page_privacy_cont dl {
        margin: 50px 0 0;
    }

    .page_privacy_cont dl dt {
        margin-bottom: 25px;
        margin-top: 35px;
        font-size: 18px;
    }

    .page_privacy_cont dl dd {
        margin-top: 15px;
        margin-left: 10px;
    }

    /* サイトマップ */
    #sitemap_list li a {
        font-size: 15px;
        padding: 18px 10px;
    }

    /* h1の英字 */
    .common_page_h1_box .letter img[alt='company'] {
        width: 170px;
    }

    .common_page_h1_box .letter img[alt='GREETING'] {
        width: 160px;
    }

    .common_page_h1_box .letter img[alt='overview'] {
        width: 170px;
    }

    .common_page_h1_box .letter img[alt='history'] {
        width: 150px;
    }

    .common_page_h1_box .letter img[alt='affiliate'] {
        width: 180px;
    }

    .common_page_h1_box .letter img[alt='faq'] {
        width: 80px;
    }

    .common_page_h1_box .letter img[alt='catalog'] {
        width: 180px;
    }

    .common_page_h1_box .letter img[alt='recruit'] {
        width: 170px;
    }

    .common_page_h1_box .letter img[alt='sitemap'] {
        width: 170px;
    }

    .common_page_h1_box .letter img[alt='privacy policy'] {
        width: 290px;
    }

    .common_page_h1_box .letter img[alt='information'] {
        width: 250px;
        margin-bottom: 10px;
    }

    .common_page_h1_box .letter img[alt="contact"] {
        width: 190px;
    }

    /*採用情報*/

    .jobinfo_messeage_box span.en {
        font-size: 12px;
    }

    .jobinfo_messeage_box h2 {
        font-size: 25px;
        margin-top: 20px;
    }

    .jobinfo_messeage_box .text {
        font-size: 15px;
        margin-top: 25px;
    }

    .jobinfo_terms_box .wish_list ul li {
        width: 150px;
        height: 150px;
        margin: 0 10px;
    }

    .jobinfo_terms_box .wish_list ul {
        justify-content: center;
    }

    .jobinfo_terms_box .wish_list ul li:nth-child(n + 4) {
        margin-top: 10px;
    }

    .jobinfo_terms_box .wish_list ul li .num_box {
        font-size: 16px;
    }

    .jobinfo_terms_box .wish_list ul li .num_box .num {
        font-size: 25px;
    }

    .jobinfo_terms_box .wish_list ul li .text {
        margin-top: 10px;
        font-size: 15px;
    }

    .jobinfo_terms_box .ttl {
        font-size: 25px;
        padding-bottom: 15px;
    }

    .jobinfo_terms_box .wish_list {
        margin-top: 30px;
    }

    .jobinfo_terms_box .message_text {
        font-size: 15px;
        margin-top: 40px;
    }

    .jobinfo_terms_box .img {
        margin-top: 30px;
    }

    .jobinfo_terms_box {
        padding: 60px 0;
        margin-bottom: 60px;
        margin-top: 60px;
    }

    .page_history_cont ul li .age .year_num_box {
        font-size: 13px;
    }

    .page_history_cont ul li .age .year_num_box .year_num {
        font-size: 22px;
    }

    #top_strength,
    #top_technique,
    div#top_catalog,
    div#top_faq {
        height: 350px;
        display: flex;
        justify-content: center;
        align-items: center;
        align-content: center;
        flex-wrap: wrap;
    }

    .common_h2_box {
        width: 100%;
    }

    section#top_strength_technique .text,
    #top_catalog_faq .text {
        width: 100%;
    }

    #top_strength .common_h2_box .en {
        margin: 0 auto;
    }

    /* アルブライト */
    .page_albright {
        color: #333333;
    }

    .page_albright .wrap {
        width: 90%;
    }

    .page_albright .albright_mv {
        padding-top: 17vw;
        padding-bottom: 155vw;
        background: #1D1D1D;
        display: block;
        height: auto;
    }

    .page_albright .albright_mv .ttl_box {
        padding: 0 2.5vw;
        flex-direction: column-reverse;
        gap: 4vw;
        margin-bottom: 0;
        position: relative;
        z-index: 1;
    }

    .page_albright .albright_mv .ttl_box .ttl {
        width: 100%;
    }

    .page_albright .albright_mv .ttl_box .text {
        font-size: 6vw;
        text-indent: 0;
        padding-left: 0;
    }

    .page_albright .albright_mv .name_box {
        position: absolute;
        bottom: 0;
        right: 0;
    }

    .page_albright .albright_mv .name_box ul {
        grid-template-columns: 1fr;
    }

    .page_albright .albright_mv .name_box li {
        font-size: 5vw;
        line-height: 10vw;
        writing-mode: vertical-rl;
        height: 41vw;
    }

    .page_albright .albright_mv .bg_slider {
        top: unset;
        bottom: 0;
        left: 0;
        right: 0;
        display: grid;
        grid-template-columns: 1fr;
    }

    .page_albright .albright_mv .bg_slider ul {
        height: 41vw;
    }

    .page_albright .albright_intro {
        padding: 18vw 0;
    }

    .page_albright .albright_intro .ttl_box {
        margin-bottom: 5vw;
    }

    .page_albright .albright_intro .ttl_box .ttl {
        font-size: 5.6vw;
        line-height: 1.8;
    }

    .page_albright .albright_intro .text_box .text {
        font-size: 3.8vw;
        line-height: 1.9;
    }

    .page_albright .albright_feature {
        padding: 20vw 0 15vw;
        margin-bottom: 12.8vw;
    }

    .page_albright .albright_feature .cont .en_ttl {
        font-size: 16.4vw;
        margin: 0 2.5vw;
    }

    .page_albright .albright_feature .cont .box {
        padding: 15vw 7vw 10vw 5vw;
        margin-right: 5vw;
        margin-top: -8vw;
        display: block;
        overflow: visible;
    }

    .page_albright .albright_feature .cont .box::before {
        bottom: unset;
        top: -3vw;
        left: 50vw;
        width: 41vw;
        height: 33vw;
        filter: blur(12.8vw);
    }

    .page_albright .albright_feature .cont .box .text_box {
        margin-top: 0;
    }

    .page_albright .albright_feature .cont .box .text_box .ttl {
        font-size: 5vw;
    }

    .page_albright .albright_feature .cont .box .text_box .ttl::after {
        width: 25vw;
    }

    .page_albright .albright_feature .cont .box .text_box .text {
        font-size: 3.8vw;
        letter-spacing: .11em;
        line-height: 1.6;
    }

    .page_albright .albright_feature .cont .box .text_box .text+.text {
        margin-top: 1.5em;
    }

    .page_albright .albright_feature .cont .deco_text {
        top: unset;
        bottom: 8vw;
        right: 1.8vw;
        font-size: 8.2vw;
        line-height: 1;
    }

    .page_albright .albright_feature .cont .sp_img {
        width: 38vw;
        position: absolute;
        top: 18vw;
        right: 2.5vw;
    }

    .page_albright .albright_feature .cont .sp_img img {
        width: 100%;
    }

    .page_albright .albright_lineup {
        margin: 0 5vw 12.8vw;
    }

    .page_albright .albright_lineup .ttl_area {
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 10vw;
        gap: 7.7vw;
    }

    .page_albright .albright_lineup .ttl_area .ttl_box .en_ttl {
        font-size: 18vw;
        line-height: 1.2;
        margin-bottom: 3vw;
    }

    .page_albright .albright_lineup .ttl_area .ttl_box .en_ttl::after {
        width: 18vw;
    }

    .page_albright .albright_lineup .ttl_area .ttl_box .ttl {
        font-size: 4vw;
    }

    .page_albright .albright_lineup .ttl_area .tab_area {
        width: 100%;
    }

    .page_albright .albright_lineup .ttl_area .tab_area ul {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 5vw 2.5vw;
    }

    .page_albright .albright_lineup .ttl_area .tab_area li {
        border: 1px solid #333333;
        width: 100%;
        min-block-size: 11.5vw;
    }

    .page_albright .albright_lineup .ttl_area .tab_area li:last-child {
        border-right: 1px solid #707070;
    }

    .page_albright .albright_lineup .ttl_area .tab_area li.active {
        border-color: transparent;
    }

    .page_albright .albright_lineup .ttl_area .tab_area li .en_name {
        font-size: 3.6vw;
        margin-bottom: 0.2em;
    }

    .page_albright .albright_lineup .ttl_area .tab_area li .name {
        font-size: 3vw;
    }

    .page_albright .albright_lineup .panel_area .panel.active {
        flex-direction: column;
        gap: 0;
    }

    .page_albright .albright_lineup .panel_area .panel .box {
        display: contents;
    }

    .page_albright .albright_lineup .panel_area .panel .box .main_box {
        order: 1;
        margin-bottom: 10vw;
    }

    .page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box {
        display: flex;
        align-items: baseline;
        flex-wrap: wrap;
    }

    .page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box::before {
        margin-right: 2.5vw;
        translate: 0 -4.6vw;
        width: 15px;
    }

    .page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box .en_theme {
        font-size: 13.8vw;
    }

    .page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box .theme {
        font-size: 5vw;
        margin-left: 5vw;
    }

    .page_albright .albright_lineup .panel_area .panel .box .main_box .text {
        font-size: 3.8vw;
        letter-spacing: .11em;
    }

    .page_albright .albright_lineup .panel_area .panel .box .thumbnail_box {
        order: 3;
    }

    .page_albright .albright_lineup .panel_area .panel .box .thumbnail_box ul {
        background: unset;
    }

    .page_albright .albright_lineup .panel_area .panel .box .thumbnail_box ul .slick-track {
        gap: unset;
        justify-content: space-between;
        margin: 0;
    }

    .page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li {
        width: 20vw !important;
    }

    .page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li .img {
        margin-bottom: 3vw;
    }

    .page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li .img img {
        width: 100%;
        aspect-ratio: 1;
        object-fit: cover;
    }

    .page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li .text_box .en_name {
        font-size: 3vw;
    }

    .page_albright .albright_lineup .panel_area .panel .box .thumbnail_box li .text_box .name {
        font-size: 3vw;
        line-height: 1.16;
    }

    .page_albright .albright_lineup .panel_area .panel .slider_box {
        width: 69vw;
        margin: 0 auto 10vw;
        order: 2;
    }

    .page_albright .albright_lineup .panel_area .panel .slider_box::before {
        width: calc(100% - 10px);
        height: calc(100% - 10px);
        top: 20px;
    }

    .page_albright .albright_lineup .panel_area .panel .slider_box ul.slick-dots li {
        width: 1.5vw;
        height: 1.5vw;
    }

    .page_albright .albright_lineup .panel_area .panel .slider_box ul.slick-dots {
        gap: 1vw;
        left: -5vw;
    }

    .page_albright .albright_youtube {
        margin-bottom: 18vw;
    }

    .page_albright .albright_youtube .cont {
        width: 100%;
    }

    .page_albright .albright_youtube .cont li+li {
        margin-top: 7.7vw;
    }

    .page_albright .albright_youtube .cont li .name_box {
        gap: 5vw;
        margin-bottom: 3vw;
    }

    .page_albright .albright_youtube .cont li .name_box .en_ttl {
        font-size: 8.2vw;
    }

    .page_albright .albright_youtube .cont li .name_box .ttl {
        font-size: 3.6vw;
    }

    .page_albright .albright_youtube .cont li .box {
        height: 50vw;
    }

    .page_albright .albright_details {
        margin: 0 5vw 18vw;
    }

    .page_albright .albright_details .ttl_box {
        margin-bottom: 7.7vw;
        flex-direction: column;
        align-items: center;
        gap: 4vw;
        border-top: 1px solid #DBDBDB;
        padding: 5vw 0 4vw;
    }

    .page_albright .albright_details .ttl_box .en_ttl {
        font-size: 8.2vw;
    }

    .page_albright .albright_details .ttl_box .ttl {
        font-size: 4vw;
        translate: 0;
    }

    .page_albright .albright_details .ttl_box::before {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        translate: -50% 0;
        width: 65vw;
        height: 100%;
        border-right: 1px solid #DBDBDB;
        border-left: 1px solid #DBDBDB;
    }

    .page_albright .albright_details .ttl_box::after {
        bottom: 11vw;
        left: 50%;
        translate: -50% 0;
        width: 15vw;
    }

    .page_albright .albright_details .cont {
        padding-bottom: 10vw;
    }

    .page_albright .albright_details .cont ul {
        grid-template-columns: 1fr;
        gap: 4vw;
    }

    .page_albright .albright_details .cont li .label {
        font-size: 4.6vw;
    }

    .page_albright .albright_details .cont li .text {
        font-size: 4vw;
        padding: 0.6em 1em 0;
        line-height: 1.6;
    }

    .page_albright .albright_works {
        padding: 20vw 5vw 66vw;
    }

    .page_albright .albright_works .cont::before {
        top: 11vw;
        bottom: -43vw;
        width: 74vw;
    }

    .page_albright .albright_works .cont .ttl_box {
        margin-bottom: 7vw;
    }

    .page_albright .albright_works .cont .ttl_box .en_ttl {
        font-size: 16.4vw;
    }

    .page_albright .albright_works .cont .ttl_box .ttl {
        font-size: 4vw;
    }

    .page_albright .albright_works .cont .ttl_box .en_ttl::after {
        width: 18vw;
        margin: 0 auto 3vw;
    }

    .page_albright .albright_works .cont .box ul.slick-slider {
        margin-left: 0;
        margin-right: -5vw;
    }

    .page_albright .albright_works .cont .box li.slick-slide {
        margin: 0 2.5vw;
        width: 70vw;
    }

    .page_albright .albright_works .cont .box li.slick-slide .link {
        display: flex;
        flex-direction: column;
        height: 100%;
    }

    .page_albright .albright_works .cont .box li.slick-slide .link .img {
        width: 100%;
        margin-bottom: 4vw;
    }

    .page_albright .albright_works .cont .box li.slick-slide .link .img::before {
        display: none;
    }

    .page_albright .albright_works .cont .box li.slick-slide .link:hover .img img {
        scale: 1;
    }

    .page_albright .albright_works .cont .box li.slick-slide .link .name {
        font-size: 4.6vw;
        line-height: 1.3;
        margin-bottom: 0.9em;
    }

    .page_albright .albright_works .cont .box li.slick-slide .link:hover .name {
        color: #fff;
    }

    .page_albright .albright_works .cont .box li.slick-slide .link .cate_box {
        display: flex;
        gap: 5px;
    }

    .page_albright .albright_works .cont .box li.slick-slide .link .cate_box .cate {
        font-size: 3.5vw;
    }

    .page_albright .albright_works .cont .box ul.slick-slider .slick-prev,
    .page_albright .albright_works .cont .box ul.slick-slider .slick-next {
        width: 15vw;
        height: 15vw;
        top: 120%;
    }

    .page_albright .albright_works .cont .box ul.slick-slider .slick-prev:hover,
    .page_albright .albright_works .cont .box ul.slick-slider .slick-next:hover {
        opacity: 1;
    }

    .page_albright .albright_works .cont .box ul.slick-slider .slick-prev {
        left: 13.4vw;
    }

    .page_albright .albright_works .cont .box ul.slick-slider .slick-next {
        right: 18.4vw;
    }

    .page_albright .albright_works .cont .box ul.slick-slider .slick-prev::before,
    .page_albright .albright_works .cont .box ul.slick-slider .slick-next::before {
        width: 2.5vw;
        height: 2.5vw;
    }

    .page_albright .albright_works .cont .box ul.slick-dots {
        width: fit-content;
        bottom: -22.8vw;
        left: calc(50% - 2.5vw);
        translate: -50% 0;
        padding: 0;
    }

    .page_albright .albright_works .cont .box ul.slick-dots li {
        width: 1.5vw;
        height: 1.5vw;
        margin: 0 1vw;
        overflow: hidden;
        border-radius: 50%;
    }

    .page_albright .albright_works .cont .box ul.slick-dots li button {
        width: 100%;
        height: 100%;
    }

    .page_albright .albright_works .cont .box ul.slick-dots li button::before {
        width: 100%;
        height: 100%;
        background: #747474;
    }

    .page_albright .albright_works .cont .box ul.slick-dots li.slick-active button::before {
        background: #fff;
    }

    /* アルカーム */
    .page_alcalm {
        font-family: "heisei-kaku-gothic-std", sans-serif;
        font-weight: 300;
    }

    .page_alcalm .alcalm_mv .ttl_area {
        padding: 5vw;
        flex-direction: column;
        gap: 8vw;
        background-image: url(./images/alcalm_mv_bg_sp.jpg);
        justify-content: center;
        height: unset;
    }

    .page_alcalm .alcalm_mv .ttl_area .ttl {
        width: 74vw;
    }

    .page_alcalm .alcalm_mv .ttl_area .text_box .head {
        font-size: 5.64vw;
        width: fit-content;
        margin: 0 auto 0.8em;
        padding: 0 0.8em 0.4em;
        background-position: 0.6em bottom;
    }

    .page_alcalm .alcalm_mv .ttl_area .text_box .text {
        font-size: 3.6vw;
        line-height: 1.6;
    }

    .page_alcalm .alcalm_mv .product_area {
        height: unset;
    }

    .page_alcalm .alcalm_mv .product_area ul {
        grid-template-columns: repeat(2, 1fr);
    }

    .page_alcalm .alcalm_mv .product_area li {
        padding: 41.8vw 2.3vw 2.5vw;
    }

    .page_alcalm .alcalm_mv .product_area li .name_box {
        gap: 7.4vw;
    }

    .page_alcalm .alcalm_mv .product_area li .name_box .name {
        margin-bottom: 4.8vw;
    }

    .page_alcalm .alcalm_mv .product_area li.nging .name_box .name {
        width: 14.6vw;
    }

    .page_alcalm .alcalm_mv .product_area li.nratch .name_box .name {
        width: 16.6vw;
    }

    .page_alcalm .alcalm_mv .product_area li.ntripe .name_box .name {
        width: 15.8vw;
    }

    .page_alcalm .alcalm_mv .product_area li.neneri .name_box .name {
        width: 16.4vw;
    }

    .page_alcalm .alcalm_mv .product_area li .name_box .text {
        font-size: 4vw;
        white-space: nowrap;
    }

    .page_alcalm .alcalm_mv .product_area li .name_box .text::before {
        top: 1.5vw;
        left: -6vw;
        width: 10vw;
    }

    .page_alcalm .alcalm_mv .product_area li .img {
        position: absolute;
        inset: 0;
        z-index: -1;
    }

    .page_alcalm .alcalm_mv .product_area li .img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .page_alcalm .alcalm_product {
        padding: 5.6vw 5vw 12.5vw;
        flex-direction: column;
        align-items: center;
        gap: 0;
        height: unset;
    }

    .page_alcalm .alcalm_product::before {
        height: 31.8vw;
        clip-path: polygon(0 0, 100% 0, 100% 24.8vw, 0 100%);
    }

    .page_alcalm .alcalm_product .main_img {
        width: 49.4vw;
        margin: 0 auto 10vw;
        order: 4;
        clip-path: polygon(0 0, 100% 3%, 100% 97%, 0% 100%);
    }

    .page_alcalm .alcalm_product .cont {
        margin-bottom: 0;
        display: contents;
    }

    .page_alcalm .alcalm_product .cont .ttl {
        margin-bottom: 14vw;
        order: 1;
    }

    .page_alcalm .alcalm_product.nging .cont .ttl {
        width: 34.3vw;
    }

    .page_alcalm .alcalm_product.nratch .cont .ttl {
        width: 38.4vw;
    }

    .page_alcalm .alcalm_product.ntripe .cont .ttl {
        width: 35vw;
    }

    .page_alcalm .alcalm_product.neneri .cont .ttl {
        width: 37.4vw;
    }

    .page_alcalm .alcalm_product .cont .text_box {
        order: 3;
    }

    .page_alcalm .alcalm_product .cont .text_box .head {
        font-size: 8.2vw;
        letter-spacing: .21em;
        line-height: 1.25;
        margin-bottom: 0;
        text-align: center;
    }

    .page_alcalm .alcalm_product .cont .text_box .text {
        display: none;
    }

    .page_alcalm .alcalm_product .cont .item_box {
        order: 5;
        display: flex;
        flex-direction: column;
        align-items: center;
        flex-grow: 1;
    }

    .page_alcalm .alcalm_product .cont .item_box .catch_box {
        display: contents;
    }

    .page_alcalm .alcalm_product .cont .item_box .catch_box .catch {
        font-size: 8.7vw;
        line-height: 1;
        order: 1;
        margin-bottom: 2vw;
    }

    .page_alcalm .alcalm_product .cont .item_box .catch_box .link_btn {
        order: 3;
    }

    .page_alcalm .alcalm_product .cont .item_box .catch_box .link_btn .link {
        font-size: 4vw;
    }

    .page_alcalm .alcalm_product .cont .item_box .catch_box .link_btn .link:hover {
        opacity: 0.7;
    }

    .page_alcalm .alcalm_product .cont .item_box .item {
        order: 2;
        margin-bottom: 3vw;
    }

    .page_alcalm .alcalm_product .cont .item_box .item li {
        height: 12.8vw;
    }

    .page_alcalm .alcalm_product .deco_text {
        position: static;
        order: 2;
        font-size: 3.6vw;
        writing-mode: unset;
        display: block;
        margin-bottom: 1.5vw;
    }

    .page_alcalm .alcalm_product .deco_text::before {
        display: none;
    }

    body.page-id-3678 #footer {
        height: 381.5px !important;
    }

    /* アルカーム製品 */
    .inner {
        max-width: 90%;
    }

    /* アルカーム製品ページ */
    .page_alcalm_product .fv_sec {
        display: block;
    }

    .page_alcalm_product .fv_sec .ttl_box {
        background: linear-gradient(to bottom, #242424 0%, #605F5F 50%, #1F1F1F 90%, rgba(31, 31, 31, 0.2) 100%);
        width: 100vw;
        min-block-size: 43.6vw;
        padding: 7vw 5vw;
        display: block;
    }

    .page_alcalm_product.neneri .fv_sec .ttl_box {
        width: 100vw;
        background: linear-gradient(to bottom, #242424 0%, #605F5F 50%, #1F1F1F 80%, rgba(31, 31, 31, 0.2) 90%, transparent 100%);
        min-block-size: 51.3vw;
    }

    .page_alcalm_product .fv_sec .ttl_box .ttl {
        width: 52vw;
        margin: 0 auto;
    }

    .page_alcalm_product.nratch .fv_sec .ttl_box .ttl {
        width: 58vw;
    }

    .page_alcalm_product.ntripe .fv_sec .ttl_box .ttl {
        width: 54vw;
    }

    .page_alcalm_product.neneri .fv_sec .ttl_box .ttl {
        width: 57vw;
    }

    .page_alcalm_product .fv_sec .img_box {
        background: linear-gradient(to right, #08090C 0%, #30363C 76%);
        width: 100vw;
        margin: -10.3vw 0 0 0;
        padding: 19.5vw 5vw 10.2vw;
    }

    .page_alcalm_product.neneri .fv_sec .img_box {
        margin: -13vw 0 0 0;
        height: 79.5vw;
    }

    .page_alcalm_product .fv_sec .img_box .img {
        width: 51.2vw;
    }

    .page_alcalm_product .fv_sec .catch_box {
        top: 46vw;
        left: unset;
        right: 6vw;
        height: 66vw;
        padding: 0;
    }

    .page_alcalm_product.nging .fv_sec .catch_box,
    .page_alcalm_product.ntripe .fv_sec .catch_box {
        right: 4vw;
    }

    .page_alcalm_product .fv_sec .catch_box .text {
        font-size: 7.7vw;
    }

    .page_alcalm_product.ntripe .fv_sec .catch_box .text:first-child {
        margin-top: 0;
    }

    .page_alcalm_product .fv_sec .catch_box .text .spacing.top {
        translate: 0.3em 0;
        display: inline-block;
    }

    .page_alcalm_product.ntripe .fv_sec .catch_box .text .spacing.top {
        translate: 0.3em -0.4em;
    }

    .page_alcalm_product .fv_sec .catch_box .text .spacing.bottom {
        translate: -0.3em 0;
        display: inline-block;
        margin: 0;
    }

    .page_alcalm_product .fv_sec .catch_box .text rt {
        font-size: 3vw;
    }

    .page_alcalm_product.neneri .fv_sec .catch_box .text rt {
        letter-spacing: .08em;
        text-align: center;
    }

    .page_alcalm_product .intro_sec {
        padding: 11vw 0 15vw;
    }

    .page_alcalm_product.nratch .intro_sec .bg_img {
        opacity: 0.1;
    }

    .page_alcalm_product.ntripe .intro_sec .bg_img,
    .page_alcalm_product.neneri .intro_sec .bg_img {
        opacity: 0.05;
    }

    .page_alcalm_product .intro_sec .main_box {
        display: block;
        margin-bottom: 7vw;
    }

    .page_alcalm_product .intro_sec .main_box .name {
        font-size: 15.3vw;
        width: fit-content;
        margin-left: auto;
        margin-bottom: 4vw;
    }

    .page_alcalm_product .intro_sec .main_box .catch_box .text {
        font-size: 5vw;
        letter-spacing: .15em;
        line-height: 1.8;
        padding-left: 0;
    }

    .page_alcalm_product .intro_sec .main_box .catch_box .text .spacing {
        letter-spacing: -.2em;
    }

    .page_alcalm_product .intro_sec .desc_box .text {
        font-size: 3.6vw;
        line-height: 1.7;
    }

    .page_alcalm_product .catch_sec {
        padding: 20vw 0 15vw;
    }

    .page_alcalm_product .catch_sec .box.top {
        display: block;
        margin-bottom: 8vw;
    }

    .page_alcalm_product.nging .catch_sec .box.top {
        margin-bottom: 13vw;
    }

    .page_alcalm_product .catch_sec .box.bottom {
        padding-top: 9.7vw;
    }

    .page_alcalm_product .catch_sec .box.top .img_area {
        width: 64vw;
    }

    .page_alcalm_product .catch_sec .box.top .img_area .text {
        display: none;
    }

    .page_alcalm_product .catch_sec .box.bottom .img_area {
        width: 62.8vw;
        top: 0;
        right: 0;
    }

    .page_alcalm_product .catch_sec .box.bottom .img_area::before {
        display: none;
    }

    .page_alcalm_product .catch_sec .box.top .text_area {
        margin: -13vw 2.5vw 0 5vw;
        display: flex;
        flex-direction: column-reverse;
        position: relative;
        gap: 1vw;
    }

    .page_alcalm_product .catch_sec .box.bottom .text_area {
        margin-left: auto;
        position: relative;
        padding-top: 43vw;
    }

    .page_alcalm_product .catch_sec .box .text_area .text,
    .page_alcalm_product .catch_sec .box .img_area .text {
        font-size: 7.7vw;
        line-height: 1.4;
    }

    .page_alcalm_product .catch_sec .box .text_area .text .en rt,
    .page_alcalm_product .catch_sec .box .img_area .text .en rt {
        display: none;
    }

    .page_alcalm_product .catch_sec .box.top .text_area .text {
        margin-bottom: 0;
    }

    .page_alcalm_product.ntripe .catch_sec .box.top .text_area .text,
    .page_alcalm_product.neneri .catch_sec .box.top .text_area .text {
        margin-bottom: 0;
    }

    .page_alcalm_product.nging .catch_sec .box.top .text_area .text {
        margin-top: -5vw;
    }

    .page_alcalm_product .catch_sec .box.bottom .text_area .text {
        margin-left: auto;
        margin-bottom: 0;
        width: fit-content;
    }

    .page_alcalm_product.ntripe .catch_sec .box.bottom .text_area .text {
        margin-left: 11vw;
    }

    .page_alcalm_product.neneri .catch_sec .box.bottom .text_area .text {
        margin-left: 10vw;
    }

    .page_alcalm_product .catch_sec .box.top .text_area .img {
        width: 43.6vw;
        margin-left: auto;
    }

    .page_alcalm_product .catch_sec .box.bottom .text_area .img.small {
        width: 29.7vw;
        height: 20vw;
        position: absolute;
        top: 0;
        left: 2.5vw;
    }

    .page_alcalm_product .catch_sec .box.bottom .text_area .img.mid {
        width: 37.2vw;
        height: 24.6vw;
        margin-left: unset;
        margin-top: unset;
        position: absolute;
        top: 16.6vw;
        left: 15.4vw;
    }

    .page_alcalm_product .about_sec {
        padding: 0 0 18vw;
        background-position: left 25.6vw;
        background-size: 100% 82vw;
    }

    .page_alcalm_product .about_sec .cont li {
        flex-direction: column-reverse;
        gap: 6vw;
    }

    .page_alcalm_product .about_sec .cont li+li {
        margin-top: 10vw;
    }

    .page_alcalm_product .about_sec .cont li:first-child {
        margin-bottom: 18vw;
    }

    .page_alcalm_product .about_sec .cont li:nth-child(even) {
        flex-direction: column-reverse;
    }

    .page_alcalm_product .about_sec .cont li.long {
        gap: 6vw;
    }

    .page_alcalm_product .about_sec .cont li.long .text {
        width: unset;
    }

    .page_alcalm_product .about_sec .cont li::before,
    .page_alcalm_product .about_sec .cont li::after {
        width: 7.7vw;
    }

    .page_alcalm_product .about_sec .cont li:first-child::before,
    .page_alcalm_product .about_sec .cont li:nth-child(odd):not(:first-child)::before,
    .page_alcalm_product .about_sec .cont li:nth-child(even)::before {
        bottom: unset;
        left: unset;
        top: 52.5vw;
        right: 0;
    }

    .page_alcalm_product .about_sec .cont li:first-child::after,
    .page_alcalm_product .about_sec .cont li:nth-child(odd):not(:first-child)::after,
    .page_alcalm_product .about_sec .cont li:nth-child(even)::after {
        bottom: unset;
        left: unset;
        top: 47vw;
        right: 3.84vw;
    }

    .page_alcalm_product .about_sec .cont li:first-child .text_box {
        margin-top: 0;
    }

    .page_alcalm_product .about_sec .cont li .text_box .ttl {
        font-size: 5vw;
        margin-bottom: 0.4em;
    }

    .page_alcalm_product .about_sec .cont li .text_box .ttl rt {
        font-size: 3vw;
    }

    .page_alcalm_product .about_sec .cont li .text_box .ttl .en_text {
        font-size: 6vw;
    }

    .page_alcalm_product .about_sec .cont li .text {
        font-size: 3.6vw;
        letter-spacing: .11em;
        line-height: 1.85;
    }

    .page_alcalm_product .about_sec .cont li.sp_spacing .text {
        letter-spacing: .085em;
    }

    .page_alcalm_product .about_sec .cont li .img_box {
        width: 100%;
        height: 51.2vw;
        flex-shrink: 0;
    }

    .page_alcalm_product .about_sec .cont li:first-child .img_box {
        width: 100%;
    }

    .page_alcalm_product .lineup_sec {
        padding: 15vw 0 16.6vw;
    }

    .page_alcalm_product .lineup_sec .ttl_box {
        margin-bottom: 7vw;
    }

    .page_alcalm_product .lineup_sec .ttl_box .ttl {
        font-size: 8.2vw;
    }

    .page_alcalm_product .lineup_sec .cont ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 7.7vw;
    }

    .page_alcalm_product .lineup_sec .cont li .img {
        margin-bottom: 4.4vw;
    }

    .page_alcalm_product .lineup_sec .cont li .img img {
        aspect-ratio: 16/15;
    }

    .page_alcalm_product .lineup_sec .cont li .text {
        font-size: 3.6vw;
        padding-bottom: 0.5em;
    }

    .page_alcalm_product .details_sec {
        padding: 13vw 0 0;
    }

    .page_alcalm_product .details_sec::before,
    .page_alcalm_product .details_sec::after {
        width: 100%;
        height: 43.6vw;
        clip-path: polygon(0 0, 100% 0, 100% 34vw, 0 100%);
    }

    .page_alcalm_product .details_sec .cont {
        display: block;
    }

    .page_alcalm_product .details_sec .cont .ttl_box {
        margin-bottom: 26vw;
    }

    .page_alcalm_product .details_sec .cont .ttl_box .ttl {
        font-size: 8.2vw;
    }

    .page_alcalm_product .details_sec .cont .info_box ul {
        grid-template-columns: 1fr;
        gap: 7vw;
    }

    .page_alcalm_product .details_sec .cont .info_box li .head {
        font-size: 4.6vw;
        margin-bottom: 0.4em;
    }

    .page_alcalm_product .details_sec .cont .info_box li .text_box .text {
        font-size: 4vw;
        line-height: 1.8;
    }

    .page_alcalm_product .details_sec .cont .info_box li .text_box .att {
        font-size: 3vw;
        margin-top: 0.2em;
        line-height: 1.5;
    }

    .page_alcalm_product .works_sec {
        padding: 25vw 0 0;
        overflow: hidden;
    }

    .page_alcalm_product .works_sec .ttl_box {
        gap: 5.6vw;
        margin-bottom: 5vw;
    }

    .page_alcalm_product .works_sec .ttl_box .ttl {
        font-size: 8.2vw;
    }

    .page_alcalm_product .works_sec .ttl_box::after {
        width: unset;
        flex-grow: 1;
    }

    .page_alcalm_product .works_sec .cont {
        margin-left: 0;
        margin-right: 0;
    }

    .page_alcalm_product .works_sec .cont .slick-list {
        overflow: visible;
    }

    .page_alcalm_product .works_sec .cont li.slick-slide {
        margin: 0 2.5vw;
        width: 82vw !important;
    }

    .page_alcalm_product .works_sec .cont li.slick-slide .link .img::before {
        display: none;
    }

    .page_alcalm_product .works_sec .cont li.slick-slide .link .img img {
        aspect-ratio: 32/22;
    }

    .page_alcalm_product .works_sec .cont li.slick-slide .link:hover .img img {
        scale: 1;
    }

    .page_alcalm_product .works_sec .cont li.slick-slide .link .name {
        font-size: 4.6vw;
        line-height: 1.3;
        padding-top: 1em;
    }

    .page_alcalm_product .works_sec .cont li.slick-slide .link:hover .name {
        color: #333333;
        background-size: 0 4px;
    }

    .page_alcalm_product .works_sec .cont li.slick-slide .link .cate_box .cate {
        font-size: 3.3vw;
    }

    .page_alcalm_product .works_sec .cont .slick-prev,
    .page_alcalm_product .works_sec .cont .slick-next {
        width: 15vw;
        height: 15vw;
        top: 101vw;
    }

    .page_alcalm_product .works_sec .cont .slick-prev {
        left: 10.4vw;
    }

    .page_alcalm_product .works_sec .cont .slick-next {
        right: 10.4vw;
    }

    .page_alcalm_product .works_sec .cont .slick-prev:hover,
    .page_alcalm_product .works_sec .cont .slick-next:hover {
        opacity: 1;
    }

    .page_alcalm_product .works_sec .cont .slick-prev::before,
    .page_alcalm_product .works_sec .cont .slick-next::before {
        width: 2.5vw;
        height: 2.5vw;
    }

    .page_alcalm_product .works_sec .cont .slick-prev:hover::before,
    .page_alcalm_product .works_sec .cont .slick-next:hover::before {
        opacity: 1;
    }

    .page_alcalm_product .works_sec .cont ul.slick-dots {
        bottom: -20vw;
        width: fit-content;
        left: 50%;
        translate: -50% 0;
    }

    .page_alcalm_product .works_sec .cont ul.slick-dots li {
        width: 6px;
        height: 6px;
        overflow: hidden;
        border-radius: 50%;
    }

    .page_alcalm_product .works_sec .cont ul.slick-dots li button {
        width: 100%;
        height: 100%;
    }

    .page_alcalm_product .works_sec .cont ul.slick-dots li button::before {
        width: 100%;
        height: 100%;
        content: "";
        background: #BCBCBC;
        opacity: 1;
    }

    .page_alcalm_product .works_sec .cont ul.slick-dots li.slick-active button::before {
        background: #6C1818;
        opacity: 1;
    }

    .page_alcalm_product .youtube_sec {
        margin-bottom: 20vw;
        margin-top: 47vw;
    }

    .page_alcalm_product .youtube_sec .cont {
        width: 100%;
        height: 50vw;
        margin: 0 auto 7.7vw;
    }

    .page_alcalm_product .youtube_sec .contact_btn .link {
        gap: 5vw;
        padding: 0 7.7vw;
        min-block-size: 15.4vw;
        font-size: 4vw;
    }

    .page_alcalm_product .youtube_sec .contact_btn .link::before {
        display: none;
    }

    .page_alcalm_product .youtube_sec .contact_btn .link .icon {
        width: 6.6vw;
    }

    .page_alcalm_product .series_sec {
        padding: 13vw 0 28.2vw;
    }

    .page_alcalm_product .series_sec .ttl_box {
        margin-bottom: 4vw;
    }

    .page_alcalm_product .series_sec .ttl_box .ttl {
        font-size: 8.2vw;
    }

    .page_alcalm_product .series_sec .ttl_box .ttl .en_text {
        font-size: 10vw;
    }

    .page_alcalm_product .series_sec .cont ul {
        grid-template-columns: 1fr;
        gap: 7.7vw;
    }

    .page_alcalm_product .series_sec .cont li .link .img {
        margin-bottom: 5vw;
    }

    .page_alcalm_product .series_sec .cont li .link .img img {
        aspect-ratio: 35/18;
    }

    .page_alcalm_product .series_sec .cont li .link:hover .img img {
        opacity: 1;
    }

    .page_alcalm_product .series_sec .cont li .link .text_box .text {
        font-size: 6vw;
        padding: 1.1em 2em 0.2em 1em;
        width: 70.7vw;
        min-block-size: 14.1vw;
        background: #000;
        clip-path: polygon(0 0, calc(100% - 5.6vw) 0, 100% 100%, 0 100%);
    }

    .page_alcalm_product .series_sec .cont li .link:hover .text_box .text {
        color: #fff;
        background: #000;
    }

    .page_alcalm_product .series_sec .cont li .link .text_box .text .bg {
        display: none;
    }

    .page_alcalm_product .series_sec .cont li .link .text_box .text rt {
        font-size: 3vw;
    }

    .page_alcalm_product .series_sec .cont li .link .text_box .icon {
        width: 10vw;
    }

    .page_alcalm_product .series_sec .cont li .link:hover .text_box .icon {
        background: transparent;
    }

    .page_alcalm_product .series_sec .cont li .link .text_box .icon::before {
        width: 2vw;
    }

    .page_alcalm_product .series_sec .cont li .link:hover .text_box .icon::before {
        border-color: #333333;
    }

    .page_alcalm .sp_br {
        display: block;
    }
}

@media (max-width: 767px) {
    .page_architectural_hardware_top #mainVisual .mvTxt p.title {
        font-size: 6vw;
        margin-bottom: 1vw;
    }

    .page_architectural_hardware_top #mainVisual .mvTxt {
        width: 93%;
    }

    .page_architectural_hardware_top #mainVisual .mvTxt p {
        font-size: 4vw;
    }

    .architectural_hardware_point .flex-sb .text {
        font-size: 14px;
    }

    p.archive_cate {
        display: flex;
        flex-wrap: wrap;
    }

    p.archive_cate span {
        font-size: 10px;
        padding: 0px 8px;
    }

    p.archive_cate span+span {
        margin-left: 5px;
    }

    .archive_post_cont ul li a>.text_box .ttl {
        margin-top: 2px;
    }

    .archive_post_cont ul li a {
        justify-content: space-between;
    }

    .archive_cate_list .title {
        width: 20%;
    }

    .archive_cate_list_content {
        width: 75%;
    }

    .archive_cate_list div a {
        font-size: 12px;
        padding: 3px 10px;
        margin: 0 5px 5px 0;
    }

    .archive_keyword_search input[type=text] {
        width: 100%;
    }

    .archive_keyword_search form {
        width: 100%;
    }

    .archive_cate_list {
        margin-bottom: 5px;
    }

    select#change_js {
        width: 100%;
        margin: 0 0 10px;
        height: 30px;
    }

}

.single_post_cont .wp-block-image {
    margin-bottom: 10px !important;
}

@media screen and (max-width: 750px) {
    .top_mv_cont {
        width: 90%;
        right: 0;
    }

    h1.csus_h1 span {
        font-size: 16px;
        letter-spacing: 1px;
    }

    h1.csus_h1 {
        font-size: 8vw;
        margin: 0 0 5px;
    }

    p.csus_sub_title {
        font-size: 13px;
        margin: 10px 0;
        text-align: left;
    }

}

@media screen and (max-width: 599px) {

    /* h1の英字 */
    .common_page_h1_box .letter img {
        margin-bottom: 10px;
        display: block;
    }

    .common_page_h1_box .letter img[alt='company'] {
        width: 150px;
    }

    .common_page_h1_box .letter img[alt='GREETING'] {
        width: 140px;
    }

    .common_page_h1_box .letter img[alt='overview'] {
        width: 140px;
    }

    .common_page_h1_box .letter img[alt='history'] {
        width: 125px;
    }

    .common_page_h1_box .letter img[alt='affiliate'] {
        width: 150px;
    }

    .common_page_h1_box .letter img[alt='FAQ'] {
        width: 60px;
    }

    .common_page_h1_box .letter img[alt='catalog'] {
        width: 150px;
    }

    .common_page_h1_box .letter img[alt='recruit'] {
        width: 135px;
    }

    .common_page_h1_box .letter img[alt='sitemap'] {
        width: 135px;
    }

    .common_page_h1_box .letter img[alt='privacy policy'] {
        width: 245px;
    }

    .common_page_h1_box .letter img[alt='information'] {
        width: 215px;
        margin-bottom: 10px;
    }

    .common_page_h1_box .letter img[alt="contact"] {
        width: 150px;
    }

    .common_page_wrap {
        padding: 15vw 0;
    }

    .sp {
        display: block;
    }

    .tb {
        display: none;
    }

    .sp.tb {
        display: block;
    }

    .sp_hd_logo {
        width: 180px;
        top: 12px;
        left: 15px;
    }

    .slicknav_menu {
        padding: 5px 10px;
    }

    body {
        margin-top: 45px;
        padding-top: 0;
    }

    .sp_hd_tel {
        width: 22px;
        top: 10px;
        right: 55px;
    }

    .sp_hd_mail {
        width: 20px;
        top: 9px;
        right: 91px;
    }

    .sp_hd_cont .ttl {
        font-size: 12px;
        line-height: 35px;
    }

    .slicknav_nav a {
        font-size: 12px;
        line-height: 25px;
    }

    nav.switchDetail ul li a {
        font-size: 10px;
    }

    #top_mv .bx-viewport {
        height: 350px !important;
    }

    .top_mv_cont .main_text {
        margin: 0 0 0 auto;
        width: 190px;
    }

    .top_mv_cont h1 {
        font-size: 12px;
        line-height: 2;
        margin-top: 30px;
    }

    .top_mv_cont .en_company_name {
        width: 85%;
    }

    .top_mv_cont {
        height: 260px;
    }

    .top_mv_slider .img#alcalm {
        height: 350px;
    }

    .bx-wrapper .bx-pager.bx-default-pager a {
        width: 8px;
        height: 8px;
    }

    #top_information {
        padding: 50px 0;
    }

    .common_h2_box h2 {
        font-size: 12px;
        margin-left: 10px;
        width: auto;
        margin-top: 0;
    }

    #top_information .common_h2_box.type01 .en {
        width: 175px;
    }

    .common_h2_box.type01 {
        margin-bottom: 20px;
    }

    a.top_information_btn.pc {
        display: none;
    }

    a.top_information_btn {
        position: relative;
        margin: 20px auto 0;
        display: block;
    }

    .top_information_cont ul li a {
        padding: 12px 2px;
    }

    a.top_information_btn.sp {
        display: block;
        width: 100%;
    }

    a.top_information_btn::before {
        left: -155px;
        right: 0;
        margin: auto;
    }

    .top_information_cont ul li a .ttl {
        font-size: 12px;
        margin-left: 0;
        width: 100%;
        margin-top: 3px;
    }

    .top_information_cont ul li a time {
        font-size: 13px;
    }

    #top_products {
        padding: 50px 0;
    }

    #top_products .common_h2_box .en {
        width: 145px;
    }

    .top_products_cont_main ul {
        width: 1000px;
    }

    .top_products_cont_sub {
        display: block;
        margin-top: 10px;
    }

    .top_products_cont_main ul li.add_item {
        display: block;
    }

    .top_products_cont_main ul {
        width: 100%;
    }

    .top_products_cont_main ul li.aluminumstone .common_h3_box .en {
        width: 112px;
    }

    .common_h3_box h3 {
        font-size: 2vw;
    }

    .common_h3_box {
        padding: 10px 0;
        /* border-bottom: none; */
        /* background-size: 14px; */
        /* background-position: right 1px center; */
        background: unset;
    }

    .top_products_cont_main ul li .text_box .text {
        font-size: 11px;
        margin-top: 8px;
    }

    .top_products_cont_main ul li.colorstainless .common_h3_box .en {
        width: 115px;
    }

    .top_products_cont_main ul li:nth-child(n + 3) {
        margin-top: 8px;
    }

    #top_technique .common_h2_box .en {
        width: 170px;
    }

    #top_technique {
        padding: 50px 0;
    }

    .common_h2_box.type02 h2 {
        margin-top: 12px;
    }

    #top_technique .text {
        font-size: 12px;
        margin-top: 20px;
    }

    #top_case_study .common_h2_box .en {
        width: 170px;
    }

    #top_casestudy_strength .text {
        font-size: 12px;
    }

    #top_case_study {
        padding: 50px 0;
    }

    p.common_btn {
        margin-top: 20px;
    }

    p.common_btn a {
        width: 220px;
        height: 35px;
        background-position: left 73px top 12px;
        background-size: 100px;
    }

    #top_strength .text,
    #top_technique .text {
        font-size: 12px;
        margin-top: 20px;
    }

    p.common_btn a::before,
    p.common_btn a::after {
        left: 48px;
    }

    #top_casestudy_strength {
        padding: 50px 0;
    }

    #top_strength .common_h2_box .en {
        width: 150px;
    }

    .top_strength_img {
        width: 95%;
    }

    .top_case_study_cont .text_box .text {
        font-size: 12px;
    }

    #top_catalog,
    #top_faq {
        padding: 35px 0px;
    }

    #top_catalog .common_h2_box .en {
        width: 140px;
    }

    #top_catalog_faq .text {
        font-size: 12px;
        margin-top: 20px;
    }

    #top_faq .common_h2_box .en {
        width: 65px;
    }

    #top_recruit .common_h2_box.type03 .en {
        width: 135px;
    }

    #top_recruit {
        padding: 50px 0;
        background-position: left 73% center;
    }

    .ft_info_box .logo_box .logo {
        width: 260px;
    }

    .ft_info_box .sns_box a {
        width: 20px;
        margin: 0 5px;
    }

    .ft_info_box .sns_box {
        margin-top: 10px;
    }

    .ft_info_box .add_tel {
        font-size: 11px;
        margin-top: 18px;
        line-height: 1.8;
    }

    .sp_sitemap_privacy.sp {
        margin-top: 30px;
    }

    .sp_sitemap_privacy.sp a {
        font-size: 10px;
    }

    .sp_sitemap_privacy.sp span {
        margin: 0 5px;
    }

    .copyright {
        font-size: 10px;
        margin-top: 18px;
        line-height: 1.7;
    }

    /* 会社概要 */
    .common_page_list ul li .ttl {
        width: 100%;
        margin-bottom: 5px;
    }

    .common_page_list ul li {
        font-size: 13px;
        padding: 12px 10px;
    }

    .common_page_list ul li+li {
        margin-top: 12px;
    }

    .page_company_link_box {
        margin-top: 35px;
        overflow: scroll;
        padding: 20px;
    }

    .page_company_link_box ul li {
        width: 250px;
        margin-right: 20px;
    }

    .page_company_link_box ul {
        width: 1080px;
    }

    .page_company_link_box ul li:nth-child(n + 3) {
        margin-top: 0;
    }

    .page_company_link_box h2.common_page_h2 {
        font-size: 16px;
        padding-left: 25px;
        background-size: 15px;
        margin-bottom: 8px;
    }

    /* 関連会社について */
    .page_affiliate_info_box .text_box {
        width: 80%;
    }

    .page_affiliate_info_box {
        justify-content: flex-end;
        position: relative;
    }

    .page_affiliate_info_box .text_box {
        width: 100%;
    }

    .page_affiliate_info_box .img {
        width: 100%;
        margin-top: 10px;
    }

    .page_affiliate_info_box .text_box .logo {
        width: 200px;
        margin: auto;
    }

    .page_affiliate_info_box .text_box h2 {
        font-size: 18px;
        letter-spacing: 0;
        text-align: center;
    }

    .page_affiliate_info_box .text_box h2 span {
        font-size: 15px;
    }

    .common_page_list ul li .text {
        width: 100%;
    }

    /* 沿革 */
    .page_history_cont ul li {
        width: 280px;
    }

    .page_history_cont ul li .age {
        width: 100px;
        height: 100px;
    }

    .page_history_cont ul li .age .year_name {
        font-size: 15px;
    }

    .page_history_cont ul li .age .year_num_box {
        font-size: 13px;
    }

    .page_history_cont ul li .age .year_num_box .year_num {
        font-size: 22px;
    }

    .page_history_cont_box {
        margin-top: 25px;
    }

    .page_history_cont_box .text_box h2 {
        font-size: 18px;
    }

    .page_history_cont_box .text_box .text {
        font-size: 14px;
        margin-top: 8px;
    }

    .page_history_cont ul {
        width: 1470px;
    }

    /* POST */
    .single_post_cont .ttl {
        font-size: 18px;
    }

    .single_post_cont .text_box h2 {
        font-size: 17px;
    }

    .single_post_cont .text_box h3 {
        font-size: 16px;
    }

    .single_post_cont .text_box h4 {
        font-size: 15px;
    }

    .single_post_cont .text_box p {
        font-size: 14px;
    }

    .bottom_bar {
        margin-top: 40px;
        padding: 25px 10px;
    }

    .archive_post_cont ul li:last-child a {
        justify-content: space-between;
    }

    .archive_post_cont ul li a .img {
        width: 30%;
        margin: 0;
    }

    .archive_post_cont ul li a .text_box {
        width: 65%;
    }

    .single_post_cont .img {
        margin-top: 20px;
    }

    /* 会社情報 */
    .page_company_cont li.greeting .page_company_h2_box .en {
        width: 112px;
    }

    .page_company_cont li.company_overview .page_company_h2_box .en {
        width: 112px;
    }

    .page_company_cont li.history .page_company_h2_box .en {
        width: 112px;
    }

    .page_company_cont li.affiliate .page_company_h2_box .en {
        width: 112px;
    }

    .page_company_h2_box h2 {
        font-size: 10px;
    }

    .page_company_h2_box {
        padding: 10px 0;
        background-position: right 1px center;
        background-size: 14px;
    }

    .page_company .page_company_h2_box .en img[alt="greeting"] {
        width: 90px;
    }

    .page_company .page_company_h2_box .en img[alt="overview"] {
        width: 95px;
    }

    .page_company .page_company_h2_box .en img[alt="history"] {
        width: 85px;
    }

    .page_company .page_company_h2_box .en img[alt="affiliate"] {
        width: 95px;
    }

    .page_history_ttl_img {
        width: 250px;
    }

    /* 採用情報 */
    span.recruitment_employment {
        font-size: 12px;
    }

    .single_post_cont .common_page_list.recruit .ttl {
        margin: 0;
        padding: 0;
    }

    .single_post_cont .common_page_list.recruit ul li {
        padding: 17px 10px;
    }

    /* 個人情報保護方針 */
    .page_privacy_cont {
        font-size: 14px;
    }

    .page_privacy_cont dl dd {
        margin-left: 0;
    }

    .page_privacy_cont dl dt {
        margin-bottom: 15px;
        margin-top: 30px;
        font-size: 16px;
        line-height: 1.6;
    }

    .page_privacy_cont dl {
        margin: 35px 0 0;
    }

    /* 加工技術 */
    .page_technique_link_box {
        padding: 26px 10px;
    }

    .page_technique_link_box ul li {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }

    .page_technique_link_box ul li h2 {
        font-size: 14px;
        background-size: 15px;
        padding-top: 0;
        width: 135px;
        background-position: left center;
        text-align: left;
        padding-left: 25px;
    }

    .page_technique_link_box ul li a {
        width: 140px;
        margin: 0;
        height: 40px;
        background-position: center left 15px;
        background-size: 90px;
    }

    .page_technique_link_box ul li a::before {
        top: 0;
        bottom: 0;
        left: auto;
        right: 13px;
    }

    .page_technique_link_box ul li+li {
        margin-top: 25px;
    }

    .page_technique_item h2 {
        font-size: 22px;
        background-size: 18px;
        padding-left: 33px;
        margin-bottom: 25px;
    }

    .page_technique_item .technique_box .text_box h3 {
        font-size: 22px;
    }

    .page_technique_item .technique_box .text_box .text {
        font-size: 13px;
        margin-top: 10px;
    }

    .page_technique_item .technique_box .text_box {
        margin-top: 15px;
    }

    .page_technique_item .technique_type {
        margin-top: 35px;
    }

    .page_technique_item {
        margin-top: 50px;
    }

    .page_technique_item .technique_type ul li h3 {
        font-size: 16px;
        padding: 10px 15px;
        margin: 0px 0 15px;
    }

    .page_technique_item .technique_type_box .text {
        font-size: 13px;
        width: 100%;
    }

    .page_technique_item .technique_type ul li+li {
        margin-top: 35px;
    }

    .page_technique_item+.page_technique_item {
        padding-top: 38px;
    }

    /* RECRUIT */
    .common_page_btn_box {
        margin-top: 25px;
        flex-direction: column;
        align-items: center;
    }

    a.common_page_btn:first-child {
        order: 2;
        margin-top: 10px;
    }

    .jobinfo_messeage_box h2 {
        font-size: 18px;
        margin-top: 18px;
    }

    /* サイトマップ */
    #sitemap_list li a {
        font-size: 14px;
        padding: 15px 10px;
    }

    .jobinfo_messeage_box .text {
        font-size: 14px;
        margin-top: 20px;
        text-align: left;
    }

    .jobinfo_terms_box {
        padding: 50px 0;
        margin-bottom: 50px;
        margin-top: 50px;
    }

    .jobinfo_terms_box .ttl {
        font-size: 20px;
        padding-bottom: 10px;
    }

    .jobinfo_terms_box .wish_list {
        margin-top: 25px;
    }

    .jobinfo_terms_box .wish_list ul li {
        width: 45vw;
        height: 45vw;
        margin: auto;
    }

    .jobinfo_terms_box .wish_list ul li .num_box {
        font-size: 15px;
    }

    .jobinfo_terms_box .wish_list ul li .text {
        font-size: 14px;
    }

    .jobinfo_terms_box .wish_list ul li:nth-child(n + 4) {
        margin-top: 0;
    }

    .jobinfo_terms_box .wish_list ul li:nth-child(n + 3) {
        margin-top: 15px;
    }

    .jobinfo_terms_box .message_text {
        font-size: 14px;
        text-align: left;
    }

    .jobinfo_terms_box .wish_list ul li .num_box .num {
        font-size: 25px;
    }

    #mainVisual .slick-dots {
        right: 5vw;
        display: flex;
        width: 90vw;
        justify-content: flex-end;
        bottom: 10vw;
    }

    #mainVisual .slick-dots li {
        width: auto;
        height: auto;
        z-index: 100;
    }

    #mainVisual .slick-dots li button {
        width: 14px;
        height: 14px;
        visibility: inherit !important;
    }

    #mainVisual .slick-dots li button:before {
        width: 100%;
        height: 100%;
    }

    #about:before {
        border-width: 10vw 0 0 100vw;
    }

    form.lineup_top-works_btn {
        width: 100%;
    }

    .lineup_top-about_btn a {
        width: 100%;
    }

    .work_detail .work_info #mapArea a.mapAreaLink {
        width: 140px;
        font-size: 12px;
        line-height: 26px;
    }

    .page_catalog_box {
        width: 50%;
    }

    .page_catalog_box .image {
        height: 58vw;
    }

    .catalog_title .en img {
        height: 4vw;
        margin-right: 2vw;
    }

    .catalog_title h2 {
        font-size: 3vw;
    }

    .onlineshopping_btn.pr {
        width: 100%;
    }

    .architectural_hardware_point {
        padding-top: 0px;
    }

    .architectural_hardware_point .flex-sb {
        margin-top: 20px;
    }

    a.common_page_btn:nth-child(3) {
        margin-top: 10px;
    }

    .common_h3_box .en img {
        height: 2.2vw;
    }

    .common_h3_box .en.alb img {
        height: 2.8vw;
        margin-bottom: -0.6vw;
    }

    #top_strength,
    #top_technique,
    div#top_catalog,
    div#top_faq {
        height: 280px;
    }

    .single .archive_post_cont ul li a .img {
        height: 40px;
        width: 80px;
    }

    .single .archive_post_cont ul li a>.text_box .ttl {
        font-size: 12px;
    }

    .single .archive_post_cont ul li a time {
        font-size: 12px;
    }

    .single .archive_post_cont ul li a .text_box {
        width: calc(100% - 100px);
    }

    .page_albright .albright_lineup .panel_area .panel .box .main_box .theme_box .youtube_btn {
        width: 70vw;
        font-size: 3.4vw;
        margin-bottom: 0;
        margin-top: 1em;
        margin-right: auto;
        margin-left: auto;
    }
    
    .page_albright .albright_mv .bg_slider li.slick-slide {
        width: 100vw!important;
        height: auto !important;
    }

    .single_post_cont .common_page_btn_box+.common_page_btn_box {
        margin-top: 0;
    }

    .single_jobinfo .single_post_cont .common_page_btn_box a.common_page_btn:first-child {
        order: 0;
    }

    .single_jobinfo .single_post_cont .common_page_btn_box a.common_page_btn {
        margin-top: 10px;
    }
}