﻿@import url('https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;500;600;700&display=swap');

/* ----------　all　---------- */
.linkStyle{
	color:#008000;
}
.linkStyle:hover{
	color:#008000;
	opacity: 0.7;
	text-decoration: underline;
	transition: all 0.5s;
}



.con_fixed_box {
	position: fixed;
	left: 20px;
	bottom: 50px;
	z-index: 2;
}

.con_fixed {
	display: block;
	width: 150%;
	text-align: center;
	padding: 20px;
	color: #2d231d;
	font-weight: bold;
	background-color: rgba(255,255,255,0.95);
	background-image: url("Dup/img/con_frame1.png"), url("Dup/img/con_frame4.png");
	background-repeat: no-repeat;
	background-position: left top, right bottom;
	background-size: contain;
	z-index: 3;
	transition: 0.5s;
}

.con_fixed:hover {
	background-color: #ffd700!important;
}



/* ----------　color　---------- */
body {
    background-color: #fffafa!important;
    color: #43352b;
}
.txt_color1{color: #008000!important} /* メインカラー */
.txt_color2{color: #2d231d!important} /* サブカラー */
.txt_color3{color: #2d231d!important} /* アクセントカラー1 */
.txt_color4{color: #ffd700!important} /* アクセントカラー2 */

/* background-color */
.bg_color1{background-color: #594639!important;} /* メインカラー */
.bg_color2{background-color: #594639!important;} /* サブカラー */
.bg_color3{background-color: #008000!important;} /* アクセントカラー1 */
.bg_color4{background-color: #ffd700!important;} /* アクセントカラー2 */


/* border-color ※!important */
.border_color1{border-color: #2d231d!important;}
.border_color2{border-color: #2d231d!important;}
.border_color3{border-color: #008000!important;}
.border_color4{border-color: #008000!important;}


/* hover ---------------------------------------------------------------------------------------------*/
/* color */
.hvr_txt_color1:hover{color: #008000!important;} /* メインカラー */
.hvr_txt_color2:hover{color: #2d231d!important;} /* サブカラー */
.hvr_txt_color3:hover{color: #2d231d!important;} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #ffd700!important;} /* アクセントカラー2 */

/* background-color */
.hvr_bg_color1:hover{background-color: #fffafa!important;} /* メインカラー */
.hvr_bg_color2:hover{background-color: #2d231d!important;} /* サブカラー */
.hvr_bg_color3:hover{background-color: #008000!important;} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #ffd700!important;} /* アクセントカラー2 */

/* border-color ※!important */
.hvr_border_color1:hover{background-color: #fffafa!important;} 
.hvr_border_color2:hover{background-color: #2d231d!important;}
.hvr_border_color3:hover{background-color: #008000!important;}
.hvr_border_color4:hover{background-color: #ffd700!important;} 


/* ----------　nav　---------- */

#pc_nav li, #top_pc_nav li, #footer_nav li {
    max-width: none!important;
}

#top_pc_nav li a {
    font-size: 20px;
}

header.scr_header {
	background-color: rgba(67,53,43,0.8)!important;
}

.return a {
    color: #ffd700!important;
    font-weight: bold;
}


.overlay {
    background: rgba(67,53,43,0.95)!important;
}

#overlay .left li {
    max-width: 200px;
}

.nav_menu_more a {
	background-image:url("Dup/img/btn_dec.png");
	background-color: transparent!important;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	transition: 0.5s;
}

.nav_menu_more a:hover {
	background-color:#f9e379;
    color: #fffafa!important;
	transition-delay: 0s!important;
}


#fakeloader {
    background-color:#fffafa!important;
}

#fakeloader:before {
    background-color: transparent;
}



/* ----------　main-img　---------- */
#main_img .menu p {
    background-color:transparent;
}

#main_img:before {
    background-color: rgba(70,70,70,0.35);
}

#right {
    display: none;
}

#left {
    width: 100%!important;
}


.chachcopy {
	text-align: center;
	font-size: 35px;
	font-weight: bold;
}

.txt_anim4 {
	overflow: hidden;
	line-height: 1;
}
.txt_anim4 span.d_inline_b {
	overflow: hidden;
	height: 1.5em;
	line-height: 1;
}
.txt_anim4 span:not(.d_inline_b) {
	display: inline-block;
	line-height: 1;
	transition: 1s;
	transition-property: transform;
	transition-timing-function: cubic-bezier(0,.64,.29,.99);
	transform-origin: top;
	transform: translateY(1.5em) rotate(10deg);
}
.txt_anim4 span.start {
	transform: none;
}








/* ----------　TOP　---------- */


.num {
    color: #008000!important;
    font-family: 'Dancing Script', cursive;
    opacity: 1!important;
}

.line:before {
    background-color: #008000!important;
}

#contents1, #intro {
    margin-bottom: 350px;
}

.intro_video {
    width: 50%;
}

.intro_txt {
    margin-top: 20px;
}

#contents3 {
    margin-top:200px;
}

.back1::before, .back2:before {
	background-color: transparent!important;
	background-image: url("Dup/img/bg_ptr.png");
	background-size: 50%;
	z-index: -1;
}

#intro_wrap, #contents3_wrap .con_box {
	background-image:url("Dup/img/con_frame1_g.png"),url("Dup/img/con_frame2_g.png"),url("Dup/img/con_frame3_g.png"),url("Dup/img/con_frame4_g.png");
	background-repeat: no-repeat;
	background-position: left top,right top,left bottom, right bottom;
	background-size: 5%;
	
}

#intro h3 {
    text-align: center;
}

#contents3_wrap:after {
    background-color: rgba(67,53,43,0.8)!important;
}

/* ----------dec---------- */

.dec_img1 {
	position: absolute;
    width: 30%;
    height: auto;
    right: -10%;
    top: 55%;
}

.dec_img2 {
    position: absolute;
    width: 25%;
    height: auto;
    left: -5%;
    top: -35%;
}


/* ----------more_btn---------- */
.more_btn {
	background-image:url("Dup/img/btn_dec.png");
	background-color: #fffafa;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	color: #ffd700!important;
	transition: 0.5s;

}

#intro .more_btn, #contents3 .more_btn {
    background-color:#ffffff;
}

.more_btn::before, .more_btn::after {
	display: none;
}

.more_btn:hover, #intro .more_btn:hover, #contents3 .more_btn:hover {
	background-color:#f9e379;
	color: #2d231d!important;
	transition-delay: 0s!important;
}

#page10 .more_btn {
	text-transform: lowercase;
	line-height: 1!important;
}



/* ----------top cms---------- */

.top_cms_box .cms_3-e .cate {
    width: 30%;
}

.top_cms_box .cms_3-e .cate .cate_title {
    font-size: 1rem;
}

.top_cms_box .cms_3-e .cate img:hover {
    opacity: 0.6;
    transition: 0.5s;
}


#info_contact .con_img:before {
    background-color: rgba(67,53,43,0.65);
}


/* ----------footer---------- */


#footer, #footer h2 {
	background-color:transparent;
	color: #ffffff!important;
}

#footer a {
	color:#ffd700!important;
}

#copyright {
	background-color:#2d231d!important;
}

/* ----------　下層ページ　---------- */

.cate::before {
    display: block;
    height: 2rem;
    margin-top: -2rem;
    content: "";
}

#page2 .cate_box .box_title1 {
    font-weight: bold;
}

.pager li a {
    background-color: #594639!important;
}

.pager li a:hover {
    opacity: 0.75;
}


#page5 .cate_box .box_title1 {
    font-weight: bold;
}



/* 会社情報 */
/* お問い合わせ */

#contact_tel a {
        width: 100%;
    max-width: 360px!important;
}

.con-box-wrap {
    align-items: flex-start;
        column-gap: 50px;
    row-gap: 50px;
}

#contact_tel a {
    padding: 25px!important;
}

/* プライバシーポリシー */
/* サイトマップ */


#page10 .more_btn {
    color: #594639!important;
    background-color:transparent!important;
}

#page10 .more_btn:hover {
    background-color:#f9e379!important;

	transition-delay: 0s!important;
}


/*-------------------------------------------------------
			          タブレット
-------------------------------------------------------*/
@media screen and (max-width: 768px){
    
    .topcms_menu_type3 .cate:last-of-type{margin-bottom: 0}
    
    #intro_wrap, #contents3_wrap .con_box {
        background-size: 10%;
    }
    
    .intro_video {
    width: 90%;
} 
    
    .dec_img1 {
       width: 40%;
       top: 56%;
       right: -5%;
    }
    
    #contents1 .num {
        top:-20%;
        left: 30%;
    }
    
    .dec_img2 {
        width: 40%;
        left: 5%;
        top: -45%;
    }
    
    #contents2 .num {
        left: 55%;
    }
    
footer #h1txt {
    padding-bottom: 100px;
}
    
    
.column_3_tb .column {
    margin-right: 0;
}
    
    
}

/*-------------------------------------------------------
		            	スマホ
-------------------------------------------------------*/
@media screen and (max-width: 667px){
    
.cate::before {
    height: 1rem;
    margin-top: -1rem;

}
    
    .intro_video {
    width: 100%;
} 
    
footer #h1txt {
    padding-bottom: 30px;
}
    
    .con_fixed_box {
		left: 0;
		bottom:0;
		width: 100%;
	}
	
	.con_fixed {
		width: 80%;
		padding: 8px;
		margin: 0 auto;
		background-color: rgba(255,255,255,0.8);
	}
    
    #copyright {
        padding-bottom: 50px;
    }
    
    .chachcopy {
        font-size: 18px;
    }
    
    #intro_wrap, #contents3_wrap .con_box {
        padding: 10% 10%;
    }
    
    #intro .more_btn,  #contents3 .more_btn{
        margin-bottom: 25px;
    }
    
    #contents1{
        margin-bottom: 450px;
    }
    
    #intro {
        margin-bottom:500px;
    }
    
#intro h3 {
    text-align: left;
}
    
    
    .dec_img1 {
    width: 50%;
    right: 20%;
    top: 52%;
    }
    

    
    #contents1 .num {
    width: 100%;
    top: -15%;
    left: 50%;
    line-height: 1;
    text-align: center;
    }
    
    .dec_img2 {
    width: 50%;
    left: 25%;
    top:-40%;
    }
    
    #contents2 .num {
        left: 50%;
        top:-15%;
    }
    
    #contents3 {
        margin-top:150px;
    }
    
    #contents3 .con_box {
        background-color: rgba(255,255,255);
    }
    
    #contents3 .num {
        top: -7%;
    }
    
    
#contents1 .line:before, #contents2 .line:before {
    display: none;
}
    
    
    .top_cms_box .cms_3-e .cate .cate_title {
        font-size: 12px;
    }
    
    #contact_tel a {
        font-size: 1rem!important;
    }
    
    
.page_title_box h2 {
    font-size:16px!important;
}
    
.page_title_box {
    width: 60%!important;
}
    
}

@media screen and (max-width: 500px){
    .dec_img1 {
    width: 50%;
    right: 25%;
    top: 55%;
    }
}

@media screen and (max-width: 375px){
    .dec_img1 {
    width: 50%;
    right: 25%;
    top: 55%;
    }
    
    .dec_img2 {
    top:-30%;
    }
    
    }