﻿/* color -----------------------------------------------------------------------------*/

:root {
    --color1: #cdbe8f;
    --color2: #FFF9E8;
    --color3: #51321c;
    --color4: #B1AB99;
    --color5: #ffffff;
    --white: #ffffff;
    --black: #000000;
    --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: "Hina Mincho", serif;
}
/* color -----------------------------------------------------------------------------*/

/* ----------------　all　---------- */
.linkStyle:hover{
	color:　var(--color1);
	opacity: 0.7;
	transition: all 0.5s;
}
.font_serif {
    font-family: "Hina Mincho", serif;
}
#loading img {
    max-width: 200px;
}
#loading_bg {
    background: #000;
}
/*#loading .gauge {*/
/*    background: #000;*/
/*}*/
#sns_link a {
    background: #Fff;
}
/* ------------------------------　TOP　---------- */
#pc_nav a {
     text-shadow: none;
    color: var(--black);
}
#pc_nav a::before {
    background-color: var(--black);
}
#main_img {
    width: 100%;
    height: 100vh;
    overflow: hidden;
}
.fv_img {
    width: 100%;
    height: 100%;
    display: block;
}
.fv_img:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-image: url(./Dup/img/catch1.png), url(./Dup/img/catch2.png), url(./Dup/img/fv_img3.png), url(./Dup/img/fv_img2.png), url(./Dup/img/whis.png);
    background-repeat: no-repeat;
    background-position: center, 76% 35%, 90% 15%, 0% -10%, 0% 50%;
    background-size: 50%, 15%, 20%, 28%, 100%;
    z-index: 0;
}
.fv_anime:before,.fv_anime:after {
    content: "";
    background-image: url(./dup/img/fv_img1.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -12vw;
    right: -8vw;
    width: 35vw;
    height: 35vw;
}
.fv_anime:after {
    background-image: url(./dup/img/fv_txt.png);
    animation: 25s linear infinite rotation1;
}
@keyframes rotation1{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(-360deg); }
}



#contents1 {
    position: relative;
}
#contents1:before,#contents1 .con_box:after,#contents4:before,#top_info .con_box:after {
    content: "";
    background-image: url(./dup/img/bg.jpg);
    background-attachment: fixed;
    background-position: center;
    background-size: contain;
    /* mix-blend-mode: overlay; */
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.1;
    z-index: -1;
}
#contents1 .con_box:after {
    z-index: 1;
}
#contents1 img {
    clip-path: polygon(50px 0%, 100% 0%, 100% 100%, 0% 100%, 0% 50px);
}


#contents2:before,#contents3:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-image: url(./Dup/img/con1_img2.png), url(./Dup/img/con1_img.png), url(./Dup/img/con1_bg.png);
    background-repeat: no-repeat;
    background-position: 14% 3%, 6% 78%, 100% 0%;
    background-size: 30%, 46%, 90%;
    z-index: 1;
}
#contents3:before {
    background-image: url(./Dup/img/con3_img2.png), url(./Dup/img/con3_img.png), url(./Dup/img/con3_bg.png);
    background-position: 85% 10%, 96% 90%, 0% 0%;
    background-size: 23%, 46%, 90%;
}
#contents2 .con_box,#contents3 .con_box {
    background: transparent;
    position: relative;
    z-index: 2;
    color: var(--color3);
    font-weight: bold;
    text-shadow: none;
}
#contents5 h2, #contents5 p {
    color: var(--color3) !important;
    text-shadow: none;
}
#contents5 p {
    font-weight: bold;
}
#contents5 .con_box .d_table {
    padding: 2% 5%;
    border: 1px solid;
}
#contents5:before {
    content: "";
    width: 300px;
    height: 300px;
    position: absolute;
    background-image: url(./dup/img/b1.png);
    background-size: contain;
    background-repeat: no-repeat;
    top: 5%;
    left: 5%;
    z-index: 3;
    animation: rotate 1s infinite steps(2);
}
  @keyframes rotate {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(-10deg); }
  }
 #contents5:after {
    content: "";
    width: 200px;
    height: 200px;
    position: absolute;
    background-image: url(./dup/img/b2.png);
    background-size: contain;
    background-repeat: no-repeat;
    bottom: 5%;
    right: 5%;
    z-index: 3;
}
#top_cms:after,#top_info:befor {
    content: "";
    width: 100%;
    height: 2px;
    position: absolute;
    border-top: 2px solid #fff;
    top: 0;
    left: 0;
    transform: rotate(-1deg);
}
#top_cms {
    position: relative;
}
#top_cms:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background-image: url(./dup/img/bg.jpg);
    background-size: cover;
    background-repeat: repeat-y;
    opacity: 0.1;
    z-index: 0;
}
#top_info {
    position: relative;
}
#top_info a {
    z-index: 1;
    position: relative;
}
.cms_title p {
    font-family: "Caveat", cursive;
    font-size: 25px;
    line-height: 0;
}
/* ------------------------------　下層ページ　---------- */
.cate_list li a:hover {
    opacity: 1;
    color: var(--color1);
}
.border{
    position: relative;
}
.border:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border: 1px solid #fff;
    top: 0;
    left: 0;
    transform: rotate(-2deg);
    pointer-events: none;
}
#under_page:before {
    content: "";
    background-image: url(./dup/img/bg.jpg);
    background-attachment: fixed;
    background-position: center;
    background-size: contain;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.1;
    z-index: -1;
}
#sp_nav nav {
    background: var(--color3);
}
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */



/*---------------------------------------------------------------------------
			          タブレット
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px){
/* --------------------　all　---------- */

/* --------------------　TOP　---------- */
.fv_img:before {
    background-image: url(./Dup/img/catch1.png), url(./Dup/img/catch2.png), url(./Dup/img/fv_img3.png), url(./Dup/img/fv_img2.png), url(./Dup/img/whis_tb.png);
    background-position: 50% 50%, 85% 38%, 90% 15%, -30% -10%, 60% 70%;
    background-size: 85%, 30%, 30%, 60%, 140%;
}
.fv_anime:before, .fv_anime:after {
    bottom: -14vw;
    right: -16vw;
    width: 65vw;
    height: 65vw;
}
#contents2, #contents3, #contents2 .con_box, #contents3 .con_box, #contents2 .d_flex, #contents3 .d_flex {
    height: 100vh;
}
#contents2:before, #contents3:before {
    background-position: 94% 100%, 50% 90%, 50% 20%;
    background-size: 29%, 90%, 100%;
}
#contents3:before {
    background-image: url(./Dup/img/con3_img2.png), url(./Dup/img/con3_img.png), url(./Dup/img/con3_bg.png);
    background-position: 96% 56%, 50% 90%, 50% 20%;
    background-size: 40%, 90%, 100%;
}
#contents5:before {
    width: 250px;
    height: 250px;
    top: 0%;
    left: -2%;
}
#contents5:after {
    width: 90px;
    height: 200px;
}
/* --------------------　下層ページ　---------- */
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */

}



/*---------------------------------------------------------------------------
		            	スマホ
---------------------------------------------------------------------------*/
@media screen and (max-width: 667px){
/* --------------------　all　---------- */
#header h1 img {
    max-width: 60px;
}
#loading img {
    max-width: 130px;
}
/* --------------------　TOP　---------- */
#main_img {
    height: 80vh;
}
.fv_img:before {
    background-position: 50% 54%, 90% 33%, 21% 80%, -22% -16%, 50% 20%;
    background-size: 75%, 33%, 25%, 70%, 180%;
    background-image: url(./Dup/img/catch1_sp.png), url(./Dup/img/catch2.png), url(./Dup/img/fv_img3.png), url(./Dup/img/fv_img2.png), url(./Dup/img/whis_tb.png);
}
.fv_anime:before, .fv_anime:after {
    bottom: -24vw;
    right: -14vw;
    width: 75vw;
    height: 75vw;
}
header .scroll_d {
    margin-left: 5vw;
}
#contents1:before, #contents1 .con_box:after, #contents4:before, #top_info .con_box:after {
    opacity: 0.2;
}
#contents2, #contents3, #contents2 .con_box, #contents3 .con_box, #contents2 .d_flex, #contents3 .d_flex {
    height: auto;
    padding-bottom: 160px;
}
#contents2:before, #contents3:before {
    background-position: 94% 100%, 50% 90%, 50% 5%;
    background-size: 37%, 90%, 120%;
}
#contents3:before {
    background-position: 94% 78%, 50% 96%, 50% 10%;
    background-size: 50%, 90%, 100%;
}
#contents5 {
    padding-bottom: 50px;
}
    #contents5:before {
    width: 150px;
    height: 150px;
    top: 0%;
    left: -2%;
}
#contents5:after {
    width: 50px;
    height: 150px;
}
.cms_6-a.cms_wrap .cate {
    width: 48%!important;
}
#top_info .con_title {
    font-size: 18px;
    letter-spacing: 1px;
}
/* --------------------　下層ページ　---------- */
.cate_list a {
    border: 1px solid var(--color4);
    line-height: 1.8;
}
.cate_list {
    border-bottom: none;
}
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */
}