﻿/* ----------　all　---------- */
.linkStyle{
	color:var(--color3);
}
.linkStyle:hover{
	color:var(--color1);
	opacity: 0.7;
	transition: all 0.5s;
}
h1,h2,h3,h4 {
    font-weight: bold;
}
header #header {
    width: 90%;
    margin: 0 auto;
}
header #header .tel a,header #header .contact a {
    padding: 7px 15px;
    background-color: #000;
    color: #fff;
    transition: all 0.3s;
    border: none;
}
header #header a:hover {
    opacity: 1;
    top: 3px;
    position: relative;
}
#header #logo img {
    filter: drop-shadow(0px 0px 1px #fff) drop-shadow(0px 0px 1px #fff);
}
#header #logo {
    width: 15% !important;
}
.is-show #header .tel a, .is-show #header .tel a i, .is-show #header .contact a {
    color: #fff;
    border-color: #fff;
}
header #header .menu_bt {
    width: 60px !important;
}
header #header #header_menu li:hover {
    border-color: var(--color2);
}
.clone-nav .header_info {
    justify-content: flex-end;
    transform: translateX(30%);
}
footer.width_1280-max {
    max-width: none;
}
#bottom_menu {
    max-width: 1280px;
    margin: 0 auto;
}
.cms_btn_wrap .more_btn {
    font-weight: bold;
}
#info .tel a, #info2 .tel a {
    color: var(--color1);
}
#footer .flex_space-around {
    justify-content: space-evenly;
}
#logo3 {
    line-height: 1.2;
}
/* ----------　TOP　---------- */
.main_img1.luxy-el:before {
    content: "";
    background: #00000047;
    width: 100%;
    height: 100%;
    position: absolute;
}
.catch_wrap {
        position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40%;
}
.arrow-link {
    background: var(--color1);
    color: #fff;
    padding: 7px 40px 7px 15px;
    transition: all .5s;
    border: 1px solid var(--white);
    position: relative;
}
.arrow-link:hover {
    background: transparent;
    border: 1px solid;
}
.arrow-link:before,.arrow-link:after {
    content: "";
    height: 1px;
    position: absolute;
    background: #fff;
}
.arrow-link:before {
    top: 23px;
    right: 10px;
    width: 20px;
}
.arrow-link:after {
    width: 12px;
    height: 1px;
    top: 23px;
    right: -2px;
    -webkit-transform-origin: 0px 0.5px;
    transform-origin: 0px 0.5px;
    -webkit-transform: rotate(-150deg);
    transform: rotate(-150deg);
}

#intro {
    background: #fff;
    position: relative;
}
#intro .txt_wrap div {
    color: var(--black);
}
#intro .more_btn {
    color: var(--black);
}
#intro .more_btn span::before, #intro .more_btn span::after {
    background: var(--black);
}
#intro:before,#intro:after {
    content: "";
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
}
#intro:before {
    background-image: url(../img/ashi.png);
    top: 4vw;
    left: 7vw;
    width: 8vw;
    height: 11vw;
}
#intro:after {
    background-image: url(../img/yado.png);
    bottom: 10vw;
    right: 5vw;
    width: 15vw;
    height: 7vw;
}
#content1 #con1_txt > div {
    padding-left: 30%;
    z-index: 1;
}
#content1 .con1_img1 {
    position: absolute;
    width: 25%;
    margin: 0;
    bottom: 50px;
    z-index: 0;
    transform: rotate(-5deg);
}
#top_cms .cms_title .title_box h2 {
    position: relative;
}
#top_cms .cms_title .title_box h2:before {
    content: "";
    background-image: url(../img/sa.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 50%;
    width: 90px;
    height: 46px;
    transform: translate(-50%, -70%);
    opacity: 0.8;
}
/* ----------　下層ページ　---------- */
#page_title h2 {
    writing-mode: horizontal-tb;
    padding-top: 45px;
    font-size: 30px;
    font-weight: bold;
}
#page_title {
    height: 400px;
}
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */



/* ---------------------------　タブレット　-------------------------- */
@media screen and (max-width: 768px){

/* ----------　all　---------- */
header #header {
    width: 95%;
}
.header_info {
    margin-left: 0;
    width: 60% !important;
}
.header_info .tel {
    margin-right: 10px;
}
#header #logo {
    width: 25% !important;
}
.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
    height: 2px;
}
.clone-nav .header_info {
    width: 60% !important;
    transform: translateX(0%);
}
/* ----------　TOP　---------- */
.catch_wrap {
    width: 60%;
}

.main_img1.luxy-el {
    background-position-x: 55%!important;
}
#main_img {
    height: 80vh;
}
#intro .txt_wrap .title {
    letter-spacing: 5px;
}
#intro .txt_wrap .txt {
    width: 80%;
    margin: 0 auto;
}
#intro:before {
    top: 2vw;
    left: auto;
    right: 2vw;
    width: 11vw;
    height: 16vw;
    transform: scale(-1, 1);
}
#intro:after {
    bottom: 6vw;
    right: auto;
    left: 5vw;
    width: 28vw;
    height: 13vw;
}
#content1 .con1_img1 {
    width: 27%;
    bottom: 80px;
    left: 10vw;
    opacity: 0.8 !important;
}
.top_cms_box .cms_2-a .box_item .box_txt1 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    padding-bottom: 0;
}
/* ----------　下層ページ　---------- */
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */

}

/* --------------------------　スマホ　-------------------------- */
@media screen and (max-width: 667px){

/* ----------　all　---------- */
.modal-box .modal-close span {
    width: 40px;
    height: 30px;
}


/* ----------　TOP　---------- */
.catch_wrap {
    width: 85%;
}
.catch_btn {
    margin-top: 10px;
}
.arrow-link {
    padding: 5px 35px 5px 15px;
    font-size: 13px;
}
.arrow-link:before {
    top: 19px;
    right: 8px;
    width: 18px;
}
.arrow-link:after {
    width: 11px;
    height: 1px;
    top: 19px;
    right: -4px;
}
#intro .txt_wrap .title {
    letter-spacing: 3px;
}
#intro .txt_wrap .txt {
    width: 100%;
}
#intro:before {
    width: 21vw;
    height: 28vw;
}
#intro:after {
    bottom: -3vw;
    width: 53vw;
    height: 25vw;
}
#content1 #con1_txt > div {
    padding-left: 3%;
    padding-top: 0;
}
#content1 #con1_txt {
    padding-bottom: 20px;
}
#content1 .con1_img1 {
    width: 80%;
    bottom: 0;
    left: 50%;
    opacity: 1 !important;
    transform: translateX(-50%);
    position: relative;
}
#content1 #con1_txt h2 {
    margin-bottom: 0;
}
.sub_title.txt_color3.font_18 {
    top: 0px;
    position: relative;
}
#content2 .back_color2 .contents_box_wrap {
    width: 100% !important;
}
#content2 h2 {
    text-indent: 0em!important;
}
.cms_btn_wrap .more_btn {
    width: 288px;
}
/* ----------　下層ページ　---------- */
#page_title {
    height: 300px;
}
#page_title h2 {
    font-size: 28px;
    letter-spacing: 1px;
}
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */

}

/* ----------　PC確認サイズ　---------- */
/* 1536 */
@media screen and (max-width: 1536px){}
/* 1530 × 735 */
@media screen and (max-width: 1530px){}
/* 1366 */
@media screen and (max-width: 1366px){}