﻿@import url("https://use.typekit.net/urt0hhi.css");
body {
    font-size: 16px; 
}
header {
    background-image: url("https://www.transparenttextures.com/patterns/tileable-wood-colored.png");
    /*background-image: url(Dup/img/tileable-wood-colored_.png);*/
}
.eng1, .eng2, .eng3, .eng4 {
    font-family: liana,script;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 1px;
    font-size: 36px;
    color: #e5e5e5;
}
.blur {
    background-color: rgb(255 255 255 / 60%);
}
#loading {
	
	left: 50%;
	transform: translateX(-50%);
}

footer {
    padding-top: 25px;
}
.footer_back .f_before {
    display: none;
}
.cms_title {
    padding-left: 0;
    margin-bottom: 80px;
}
.cms_title p {
    text-align: center;
}
.cms_title:before, .cms_title:after {
    content: "";
    display: block;
    position: absolute; 
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 0 0;
}
.cms_title:before {
    top: -61px;
    left: 50%;
    width: 184px;
    height: 66px;
    background-image: url(Dup/img/title_kazari1.png);
    background-color: transparent;
    transform: translateX(-50%);
}
.cms_title:after {
    width: 184px;
    height: 66px;
    left: 50%;
    right: -70px;
    bottom: -64px;
    background-image: url(Dup/img/title_kazari2.png);
    transform: translateX(-51%);
}
/* ------------------------------------------- SVG --------------------------------------------- */
#mask {
    position: absolute;
    left: 50%;
    z-index: 1;
    top: 50%;
    transform: translate(-50%, -50%);
    max-width: 550px;
}
svg{
	max-width:1446.81px;/*SVGタグの横幅*/
	width:100%;/* レスポンシブ対応にするため100%を指定*/
	height:auto;
}
#mask .cls-1 {
    fill: none;
	 stroke-dasharray: 1500; /* 線の間隔を指定する */
    stroke-dashoffset:1500; /* 線の位置を指定する */
}	
.cls-1{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:86px;}
/* -----------------------------------------------------------------------------------------------*/
.youtube_box {
    position: relative;
    width: 100%;
    padding-top: 56.25%;box-shadow: 8px 14px 5px 0px rgba(7, 1, 2, 0.11);
}

.youtube_box iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}
.eng1 {
    top: -47px;
    left: 5%;
    color: #98db3c;
    font-size: 63px;
    transform: rotate(-6deg);
    filter: drop-shadow(3px 1px 0px rgba(255,255,255,1));
}
.catch {
    z-index: 3;
    top: 10%;
    left: 5%;
    color: #fff;
    font-size: 51px;
    font-weight: bold;
}
.check li {
    padding: 4px 4px 4px 2px;
    font-size: 17px;
    text-align: left;
}
.check li i {
    color: #ffb100;
}
.marker {
    background: linear-gradient(transparent 40%, #fffb8d 0%) 0px 0px repeat scroll rgba(0, 0, 0, 0);
    color: #262626;
    padding: 1px 2px 0px 2px;
}
.contents1_wrap {
    position: relative;
    background-image: url(Dup/img/komorebi.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.contents1_wrap:before {
    position: absolute;
    content: "";
    display: block;
    top: -35px;
    left: -6px;
    width: calc(100% + 11px);
    height: 46px;
    background-image: url(Dup/img/wave.png);
    background-position: 0 0;
    background-repeat: repeat-x;
    z-index: 12;
    background-size: 100% 100%;
}
/*#attach {*/
/*    position: relative;*/
/*}*/
/*#attach:before {*/
/*    position: absolute;*/
/*    content: "";*/
/*    display: block;*/
/*    top: -5px;*/
/*    left: -6px;*/
/*    width: calc(100% + 11px);*/
/*    height: 20px;*/
/*    background-image: url(Dup/img/wave.png);*/
/*    background-position: 50% 100%;*/
/*    background-repeat: repeat-x;*/
/*    z-index: 0;*/
/*    background-size: 100% 100%;*/
/*    transform: rotate(180deg);*/
/*}*/
header .link_box li {
    width: 26px!important;
}
header:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    right: 0px;
    width: 100%;
    height: 100%;
    background-color: rgb(255 255 255 / 23%);
    background: linear-gradient(70deg, rgb(183 130 87) 0%, rgb(255 255 255) 100%, rgb(76 56 30) 100%);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
    opacity: 0.4;
}
#attach .txt_white {
    color: #212121;
}
#attach .txt3, #attach .txt4, #attach .txt6 {
color: #655b3e;
}
/*--*/
#main_img {
    background-image: url(../Dup/img/main.jpg);
    background-size: cover;
    background-position: 0 0;
}
#main_menu ul li a::after {
    content: "";
    position: absolute;
    bottom: -24px;
    left: 0;
    right: 0;
    margin: auto;
    background-size: contain;
    width: 186px;
    height: 23px;
    background-image: url(Dup/img/kazari.png);
    transition: .5s;
    background-repeat: no-repeat;
    opacity: 0;
}
#main_menu ul li a:hover::after {
    opacity: 1;
}
.cate_list li a {
    background-color: #659f67;
    color: #fff;
    border: 0;
}
.cate_list li a:hover {
    background-color: #8a7d5a;
}
.top_cms_wrap {
    background-attachment: fixed;
    background-image: url(Dup/img/bg.jpg);
    position: relative;
    background-size: cover;
}
.top_cms_wrap:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    right: 0px;
    width: 100%;
    height: 100%;
    background-color: rgb(255 255 255 / 83%);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 1;
}
.top_cms_wrap:before {
    z-index: 0;
}

/*--*/
.all article section.width_1000-max {
    box-shadow: 12px 13px 13px 0px rgb(7 1 2 / 4%);
    box-shadow: 3px 0px 13px 4px rgb(0 0 0 / 4%);
}
.BA_type2 .box_img1_wrap, .BA_type2 .box_img2_wrap {
	width: 48%!important;
	margin: 0 1%;
}
.BA_type2 .box_img1_wrap::before, .BA_type2 .box_img2_wrap::before {
	position: absolute;
	content: "Before";
	width: 121px;
	background-color: #25b54b;
	color: #fff;
	text-align: center;
	display: block;
	left: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
	font-size: 14px;
	letter-spacing: 1px;
	padding: 4px 0px;
	box-sizing: border-box;
}
.BA_type2 .box_img2_wrap::before {
	content: "After";
	background-color: #ff9e03;
}
.topcms_news_type2 .cate_box {
	width: 46.33333%!important;
	margin-right: 1.5%;
	margin-left: 1.5%;
	cursor: pointer;
	border-bottom: 1px solid #ddd;
	margin-bottom: 30px;
	box-shadow: 0 6px 12px rgb(0 0 0 / 0);
	/* padding: 20px; */
	/* border-radius: 20px; */
	/* background-color: #f5f5f5; */
}
.topcms_news_type2 .cate_box:hover {
	transform: translateY(-5px);
}
.topcms_news_type2 .cate_box .box_item {
	cursor: pointer;
}
.topcms_news_type2 .txt_height {
	height: 5em
}
.topcms_news_type2 .box_img1 {
	border-radius: 10px;
}
#fix_bnr {
    bottom: 14px;
    position: fixed;
    z-index: 13;
    right: 36px;
    max-width: 420px;
    filter: drop-shadow(0px 2px 3px rgba(0,0,0,0.2));
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#main_img {
    background-image: url(../Dup/img/main_sp.jpg);
    height: 75vw;
}
#main_img .slides li {
     /*height: 60vh;*/
 }
.contents1_wrap:before {
    top: -19px;
    height: 21px;
}
 #main_img .slides img {
	min-height: 78vw;
}
.banner.bg_color1.pc_hide {
        display: none;
    } 
.topcms_news_type2 .cate_box {width: 100%!important;}
.topcms_news_type2 .txt_height {height: 3em}
}
/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
#logo {
    max-width: 126px;
}
#loading {
    width: 90%;
    right: 0;
    margin: auto;
}
#loading .gauge {
    left: -40px;
}
.all article section {
    padding: 15px 10px;
}
#page_title h2 {
    font-size: 4.9vw;
}
.cms_title:before {
    top: -49px;
    left: 50%;
    width: 131px;
    height: 46px;
}
.cms_title:after {
    width: 130px;
    height: 43px;
    left: 50%;
    right: -70px;
    bottom: -42px;
    background-image: url(Dup/img/title_kazari2.png);
    transform: translateX(-51%);
}
.eng1 {
    top: -44px;
    left: 6%;
    font-size: 47px;
}

.contents1_wrap:before {
    top: -8px;
    height: 9px;
}
.BA_type2 .box_img1_wrap::before, .BA_type2 .box_img2_wrap::before{
	width: 76px;
	font-size: 13px;
}
.BA_type2 .box_img1_wrap::before, .BA_type2 .box_img2_wrap::before{padding: 1px 0px;}

#fix_bnr {
    bottom: 11px;
    right: auto;
    max-width: 230px;
    left: 0;
}
.catch {
    top: 25%;
    width: 94%;
    right: 3%;
}
}