﻿/* color -----------------------------------------------------------------------------*/

:root {
    --color1: #A26952;
    /*--color2: #f1e7d7;*/
    --color2: #fff5f0;
    --color3: #e36045;
    --color4: #ebd8b9;
    --color5: #ffffff;
    --white: #ffffff;
    --black: #603813;
    --gray: #ccc;
}

body,.txt_color_nomal,.hvr_txt_color_nomal:hover{color: var(--black);}
.txt_white,.hvr_txt_white:hover{color: var(--white);}
.txt_color1,.hvr_txt_color1:hover{color: var(--color1);} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: var(--color2);} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: var(--color3);} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: var(--color4);} /* アクセントカラー2 */
.txt_color5,.hvr_txt_color5:hover{color: var(--color5);} /* アクセントカラー2 */
/* background-color */
.bg_white,.hvr_bg_white:hover{background-color: var(--white)} /* 白背景 */
.bg_black,.hvr_bg_black:hover{background-color: var(--black);} /* 黒背景 */
.bg_color1,.hvr_bg_color1:hover{background-color: var(--color1);} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: var(--color2);} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: var(--color3);} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: var(--color4);} /* アクセントカラー2 */
.bg_color5,.hvr_bg_color5:hover{background-color: var(--color5);} /* アクセントカラー2 */
.bg_color_clear,.hvr_bg_color_clear:hover{background-color: transparent!important;}
/* border-color ※!important */
.border_white,.hvr_border_white:hover{border-color: var(--white);}
.hvr_border_black:hover{border-color: var(--black);}
.border_black{border-color: var(--gray);}
.border_color1,.hvr_border_color1:hover{border-color: var(--color1);}
.border_color2,.hvr_border_color2:hover{border-color: var(--color2);}
.border_color3,.hvr_border_color3:hover{border-color: var(--color3);}
.border_color4,.hvr_border_color4:hover{border-color: var(--color4);}
.border_color5,.hvr_border_color5:hover{border-color: var(--color5);}

.linkStyle{color: var(--color1);
          border-bottom:solid 1px;
}
body#body {
    background: var(--white);
    font-family: 'Zen Maru Gothic', serif;
}
#pc_nav a, #pc_main_nav a, .font_en,.font_pl {
    font-family: 'Itim','Zen Maru Gothic', serif;
}
/* color -----------------------------------------------------------------------------*/

/* ----------------　all　---------- */
.linkStyle:hover{
	color:　var(--color1);
	opacity: 0.7;
	transition: all 0.5s;
}
#header .logo_wrap {
    width: 100px;
}
#header.active .logo_wrap {
    width: 100px;
}
#header {
    top: -200px;
}
#mainheader #logo {
    width: 130px;
}
.footer_bg {
    background: #a269528a;
}
#footer #logo2 {
    width: 150px;
}
#pc_nav li a:before, #footer_nav li a:before, #sp_nav .nav1 a:before {
    display: none;
}
.footer_item {
    color: #fff;
    opacity: 0.8;
}
/* ------------------------------　TOP　---------- */
.main_nav_bnr li a {
    background: var(--color3);
    width: 130px !important;
    color: var(--white);
}
.main_nav_bnr li a:hover {
    color: var(--color4);
}
#mainheader {
    background: var(--color2);
    background-image: url(./dup/img/fv_bg.png);
    background-size: cover;
    background-position: center;
}
#mainheader #pc_nav ul li {
    width: 26%!important;
}
#pc_nav li a {
    color: var(--black);
}
/*.main_imgWrap {*/
/*    height: calc(100vh - 142px);*/
/*    background: var(--color2);*/
/*    z-index: -1;*/
/*}*/
.main_imgWrap {
    height: calc(100vh - 142px);
    background: transparent;
    z-index: -1;
    background-image: url(./dup/img/fv_bg.png);
    background-size: cover;
    background-position: center;
}
.main_imgWrap:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background-image: url(./Dup/img/catch.png);
    background-repeat: no-repeat;
    background-position: 10% 30%;
    background-size: max(500px,30%);
    z-index: 1;
}
.main_imgWrap:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background-image: url(./Dup/img/scroll.png),url(./Dup/img/wave1.png);
    background-repeat: no-repeat;
    background-position: 80% 90%,50% 101%;
    background-size: 6%,100%;
    z-index: 1;
}
#main_img {
    width: 70%!important;
    height: 100%;
    margin: 0;
    bottom: 0;
    right: 6%;
}
#main_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top right;
}
#intro:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background-image: url(./Dup/img/bg.png);
    background-repeat: repeat;
    background-position: center;
    background-size: 30%;
    opacity: 0.8;
    z-index: -2;
}
#intro:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 20%;
    top: -50px;
    left: 0;
    transform: scale(-1,-1);
    background-image: url(./Dup/img/wave1.png);
    background-repeat: no-repeat;
    background-position: center;
    z-index: -1;
}
#intro .info_title {
    top: -20px;
    font-size: 40px;
}
#top_news,#top_contents2 {
    background-image: url(./dup/img/fv_bg.png);
    background-size: cover;
    background-position: center;
}
#top_contents1 {
    margin-top: 0;
    padding-top: 300px;
}
#top_contents1:before {
    content: "";
    background-image: url(./dup/img/chozo.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 90px;
    left: 50%;
    transform: translateX(-50%);
    width: 400px;
    height: 180px;
    opacity: 0.8;
}
#top_contents1:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background-image: url(./Dup/img/bg.png);
    background-repeat: repeat;
    background-position: center;
    background-size: 30%;
    opacity: 0.8;
    z-index: -2;
}
#square_links li:before {
    content: "";
    width: 100%;
    height: 100%;
    top: -20px;
    left: -20px;
    background-image: url(./dup/img/bg.png);
    background-repeat: no-repeat;
    position: absolute;
    background-size: 150%;
}
.cms_5-c .box_txt1::before,#cms_5-c .box_txt1::before {
    color: var(--color3);
}

.cms_title {
    position: relative;
}
#top_cms .cms_title:before {
    content: "";
    width: 150px;
    height: 150px;
    top: -80px;
    left: -80px;
    background-image: url(./dup/img/bg.png);
    background-repeat: no-repeat;
    position: absolute;
    background-size: 260%;
    z-index: -1;
    border-radius: 50%;
}
.cms_title h3 {
    background: transparent;
}
/*.num {*/
/*    background: var(--color5);*/
/*    padding: 20px;*/
/*    border-radius: 50%;*/
/*}*/
/* ------------------------------　下層ページ　---------- */
.under_page {
    background: var(--color2);
     background-image: url(./dup/img/fv_bg.png);
    background-size: contain;
    background-position: center;
}
#page_title .title_wrap:before {
    content: "";
    width: 100%;
    height: 100%;
    right: 0;
    top: 0;
    background-image: url(./dup/img/bg.png);
    background-size: 130%;
    position: absolute;
    opacity: 0.6;
}
#page_title p, #page_title h2 {
    position: relative;
    z-index: 1;
}
#page_title p {
    font-size: 30px;
}
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */
#page10 .opacity04 {
    opacity: 0.8;
}



/*---------------------------------------------------------------------------
			          タブレット
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px){
/* --------------------　all　---------- */
#mainheader .logo_wrap {
    margin: 0;
}
#mainheader #logo {
    width: 80px;
}
.menu_stick {
    top: 30px;
}
#sp_navlogo p {
    width: 120px;
}
#sp_nav .nav1 a {
    padding-left: 0;
}
/* --------------------　TOP　---------- */
.main_imgWrap {
    height: 80vw;
}
.top_page main {
    margin-top: 0;
}
.main_imgWrap:before {
    background-position: 10% 40%;
    background-size: 50%;
}
.main_imgWrap:after {
    background-position: 80% 100%,50% 101%;
    background-size: 8%,100%;
}
#intro:before,#top_contents1:after {
    background-size: 100%;
    opacity: 0.6;
}
#intro:after {
    top: -150px;
    background-size: 100%;
}
#intro .info_title {
    top: 0px;
    font-size: 40px;
}
#top_contents2 h3 {
    text-align: left;
}
#top_contents2 .con_box figure span {
    display: none;
}
#top_cms .cms_title:before {
    width: 150px;
    height: 150px;
    top: -80px;
    left: -20px;
    background-size: 360%;
}
.open_scroll .grid_6 {
    width: 100%!important;
}
/* --------------------　下層ページ　---------- */
#page_title {
    padding-top: 70px;
}
#page_title p {
    font-size: 25px;
    letter-spacing: 2px;
}
/* 会社情報 */
#page07 .grid_3 {
    width: 30%!important;
}
#page07 .grid_9 {
    width: 70%!important;
}
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */

}



/*---------------------------------------------------------------------------
		            	スマホ
---------------------------------------------------------------------------*/
@media screen and (max-width: 667px){
/* --------------------　all　---------- */
#mainheader #logo {
    width: 60px;
}
#sp_navlogo p {
    width: 70px;
}
#sp_nav .d_flex.posi_rel {
    margin-top: 50px;
}
#mainheader {
    padding-bottom: 10px;
}

.footer_item {
    color: var(--black);
    opacity: 1;
}
/* --------------------　TOP　---------- */
.main_imgWrap:after {
    background-position: 80% 102%,50% 101%;
    background-size: 10%,100%;
}
#intro:before, #top_contents1:after {
    background-size: 150%;
    opacity: 0.5;
}
#intro .info_title {
    font-size: 30px;
}
#intro:after {
    top: -2px;
    height: 30px;
}
.open_txt_wrap .intro_title {
    font-size: 24px;
}
.open_bg {
    opacity: 1;
}
#top_contents1 {
    padding-top: 150px;
}
#top_contents1:before {
    width: 270px;
    height: 93px;
    top: 45px;
}
/*#top_contents2 .con_box figure span {*/
/*    top: 80%;*/
/*    color: #ffffff;*/
/*    text-shadow: 1px 1px 5px #e36045;*/
/*    display: block;*/
/*}*/

#top_cms .cms_title:before {
    width: 100px;
    height: 110px;
    top: -30px;
    left: -10px;
    background-size: 360%;
}
#square_links li:before {
    top: -25px;
}
#footer_nav li a {
    padding-left: 0;
}
#sns_link {
    justify-content: space-evenly;
}
#square_links {
    padding-bottom: 0;
}
#footer #logo2 {
    width: 100px;
}
.footer_bg {
    background: transparent;
    background-image: linear-gradient(0deg, #a26952, #a269522b);
}
/* --------------------　下層ページ　---------- */
#page_title .title_wrap {
    width: 80%!important;
}
#page_title .sub_title {
    margin-bottom: 0;
}
#page_title p {
    font-size: 20px;
}
/* 会社情報 */
#page07 .grid_3 {
    width: 100%!important;
}
#page07 .grid_9 {
    width: 100%!important;
}
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */
}