﻿@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@400;500&display=swap');
.font_serif, .top_cms_title h3 {
    /*font-family: 'Zen Maru Gothic', sans-serif;*/
    letter-spacing: 0.1rem;
    font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
    font-weight: 600;
}
body {
    font-weight: bold;
    overflow-x: hidden;
    background-color: #ffc978;
    font-size: 17px;
}
footer #map iframe {
    vertical-align: bottom;
}
#cms_2-h .cate > .d_flex {
    border-radius: 72px;
}
#cms_2-g .cate_box, #cms_2-h .cate_box {
    background: #fff5e6;
    padding: 11px;
    border-radius: 18px;margin-top: 37px;
}
#cms_2-h .cate > .d_flex, #cms_3-g .cate_item {
    position: relative;
}
#cms_2-h .cate > .d_flex:before, #cms_3-g .cate_item:before {
    content: "";
    display: block;
    position: absolute;
    top: -19px;
    left: -10px;
    width: 180px;
    height: 59px;
    background-image: url(Dup/img/cms_kazari.png);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: contain;
}
#fix_bnr {
    bottom: 14px;
    position: fixed;
    z-index: 4;
    left: 24px;
    max-width: 220px;
    filter: drop-shadow(0px 2px 3px rgba(0,0,0,0.2));
}
.tori2 {
    right: -5%;
    z-index: 1;
    width: 103px;
    animation: tori 3.8s infinite;
}
@keyframes tori {
    0%{
     transform: translate(0px, 0px);
    }
    25%{
    transform: translate(-3px, 2px);
    }
    50%{
    transform: translate(-5px, 3px);
    }
    75%{
    transform: translate(-3px, 2px);
    }
    95%{
    transform: translate(0px, 0px);
    }
}
.wood1 {
    left: -13%;
    bottom: -2%;
    z-index: 1;
}
.wood2 {
    right: -12%;
    top: -122px;
    width: 147px;
}
.wood3 {
    left: 5%;
    top: -70px;
}
.wood4 {
    width: 107px;
    bottom: -30px;
    left: 5%;
}
.wood4-2 {
    width: 107px;
    top: -5vw;
    right: -9%;
}
.wood5 {
    right: 3%;
    width: 91px;
    top: -71px;
}
.wood5-2 {
    left: -8vw;
    width: 91px;
    bottom: 47%;
}
.tori {
    right: 0;
    bottom: -20px;
    z-index: 1;
}
#wrap {
    background-image: url(Dup/img/bg_Wave.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: 0 0;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: bold;
}
.cms_2-h .box_wrap, .cms_3-g .box_wrap, .cms_2-g .box_wrap {
    box-shadow: none;
}
.bg_wave2 {
    width: 2000px;
    top: -239px;
    z-index: 0;
    left: 50%;
    transform: translateX(-50%);
}
.bg_wave3 {
    bottom: -50px;
    width: 2000px;
}
#header p.font_14 {
    font-size: 13px;
    margin-right: 20px;
    display: none;
}
#header{
    padding-top: 10px;
    padding-bottom: 10px;
}
#page_title h2, #contact_bar a, #copyright, #page_title.active p {
    color: #212121;
}
#page_title h2 {
    padding-left: 0;
}
.fv_illust {
    z-index: 1;
    width: 127%;
    left: 50%;
    transform: translateX(-50%);
}
.catch {
    z-index: 2;
    bottom: -87px;
    width: 90%;
    left: 0;
    right: 0;
    margin: auto;
    max-width: 750px;
}
header {
    box-shadow: none;
}
#contents1 #contents1_txt {
    padding-left: 21%;
}
#contents2.bg_color2 {
    background-color: #faf9ce;
    background-image:  url(Dup/img/bg_wave4.png), url(Dup/img/bg_wave6.png), url("https://www.transparenttextures.com/patterns/45-degree-fabric-light.png");
    background-repeat: no-repeat, no-repeat, repeat;
    background-size: 2000px auto, 2000px auto, 300px;
    background-position: 0 0, left 0 bottom -2px, 0 0;
}
#contents_links {
    background-color: #fff;
    background-image: url(Dup/img/bg_wave5.png);
    background-repeat: no-repeat;
    background-size: 2000px auto;
    background-position: left 0 bottom -2px;
}
#main_img {
    position: relative;max-width: 1100px;
}

.illust {
    width: 32%;
    max-width: 277px;
    bottom: -49px;
    left: -22px;
}
#contact_bar .mail a:hover {
    -webkit-animation: shake 0.6s forwards;
    animation: shake 0.6s forwards;
}
@keyframes shake {
0% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
    transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}
15% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale3d(0.95, 0.95, 1) translate3d(0, 0, 0);
    transform: scale3d(0.95, 0.95, 1) translate3d(0, 0, 0);
}
30% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale3d(1.2, 0.8, 1) translate3d(0, 0, 0);
    transform: scale3d(1.1, 0.9, 1) translate3d(0, 0, 0);
}
50% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale3d(0.95, 1.1, 1) translate3d(0, -10%, 0);
    transform: scale3d(0.95, 1.1, 1) translate3d(0, -10%, 0);
}
70% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale3d(1.1, 0.9, 1) translate3d(0, 0, 0);
    transform: scale3d(1.05, 0.95, 1) translate3d(0, 0, 0);
}
100% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
    transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}
}
.cms1_title h3 {
    border: 0;
    background-image: url(Dup/img/icon2.png);
    background-size: 50px;
    background-repeat: no-repeat;
    background-position: 50% 0;
    padding-top: 58px;
}
#top_cms .top_cms_box {
    position: relative;
}
#top_cms .top_cms_box:before {
content: "";
    display: block;
    position: absolute;
    bottom: -10px;
    left: -10px;
    width: 300px;
    height: 100px;
    background-image: url(Dup/img/happa.png);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: contain;
    }
#page_title:before {
    content: "";
    display: block;
    position: absolute;
    bottom: -10px;
    left: 0px;
    right: 0;
    margin: auto;
    width: 670px;
    height: 200px;
    background-image: url(Dup/img/pagetitle.png);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: contain;
}
#contents_links h3 {
    z-index: 1;
    position: relative;
}
#contents_links figure {
    position: relative;
}
#contents_links figure:before {
    content: "";
    display: block;
    position: absolute;
    left: -2px;
    top: -2px;
    background: url(Dup/img/frame.png);
    background-repeat: no-repeat;
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    background-size: 100% auto;
    z-index: 1;
}
#contents1 figure:before {
    content: "";
    display: block;
    position: absolute;
    left: -2px;
    top: -2px;
    background: url(Dup/img/contents1_frame.png);
    background-repeat: no-repeat;
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    background-size: 100% 100%;
    z-index: 1;
}
#contents_links a figure img {
transition: all 0.4s;
}
#contents_links a:hover figure img {
    transform: scale(1.1) translate(-45%, -45%);
}
#menu_wrap li a.txt_color1 {
    color: #ff9716;
    border-color: #ff9716;
}
#page_title {
    z-index: 0;
    background-color: transparent;
}
#contact_bar .mail a {
    background-image: url(Dup/img/icon6.png);
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: 0 50%;
    padding-left: 43px;
    padding-top: 5px;
    padding-bottom: 5px;
}
#contact_bar .mail a i {
    display: none;
}
#main_img .slick {
    box-shadow: none;
    /*border-radius: 35px;*/
    /*border: 3px solid #fff;*/
}
nav ul li a {
    background-image: url(Dup/img/icon1.png);
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: 53px;
    padding-top: 59px!important;
    border-left: 1px solid #dfdfdf!important;
   
}
.index nav ul li a {
   padding-top: 0!important;
    padding-bottom: 0!important;
    background-size: 0;
}
nav.sc ul li a {
    padding-bottom: 3px!important;
}
nav ul li a span.font_18 {
    font-size: 16px;
    margin-bottom: 0;
}
nav ul li a span.opacity05 {
    opacity: 1;
    display: none;
}
nav ul li:nth-child(2) a {
    background-image: url(Dup/img/icon2.png);
}
nav ul li:nth-child(3) a {
    background-image: url(Dup/img/icon3.png);
}
nav  ul li:nth-child(4) a {
    background-image: url(Dup/img/icon4.png);
}
nav ul li:nth-child(5) a {
    background-image: url(Dup/img/icon5.png);
}
nav ul li:nth-child(6) a {
    background-image: url(Dup/img/icon6.png);
    border-right: 1px solid #dfdfdf!important;
}
nav.sc ul {
    padding-top: 10px;
    padding-bottom: 10px;
}
/*nav.sc ul li a {*/
/*    background-image: none;*/
/*    padding-top: 10px!important;*/
/*}*/
/*nav {position: relative}*/
/*nav:before, nav:after {*/
/*    content: "";*/
/*    display: block;*/
/*    position: absolute;*/
/*    top: -36px;*/
/*    left: -5px;*/
/*    width: calc(100% + 10px);*/
/*    height: 40px;*/
/*    background-image: url(Dup/img/wave1.png);*/
/*    background-position: 0 0;*/
/*    background-repeat: no-repeat;*/
/*    background-size: 100% 100%;*/
/*    z-index: -1;*/
/*}*/
nav:after {
    top: inherit;
    bottom: -36px;
    left: -5px;
    background-image: url(Dup/img/wave2.png);
}
nav.bg_color2 {
    background-color: #fff;
}
nav li a.txt_color1 {
    color: #212121;
}
.txt_white {
    color: #212121;
}
nav li.active a span {
    opacity: 1;
}

.more a:hover {
    color: #212121;
}
#contact_bar .mail p {
    background: #ffe150;
    color: #212121;
    padding: 8px 16px;
    border-radius: 19px;
}
#header h1 {
    /*width: 115px;*/
    /*padding-bottom: 19px;*/
    width: 207px;
}
.top_cms_title p span {
    opacity: 1;
}
.top_cms_box .cms_wrap {
    border: 2px solid #fff;
}
#intro {
    background: linear-gradient(164deg, rgb(255 242 223) 0%, rgba(255,212,148,1) 100%);
    background-color: #fdf7cb;
    background-image: url("https://www.transparenttextures.com/patterns/ecailles.png");
    background-color: #aeebe8;
}
#intro > div {
    z-index: 1;
    position: relative;
    text-shadow: 1px 1px 1px #fff7eb, -1px 1px 1px #fff7eb, 1px -1px 1px #fff7eb, -1px -1px 1px #fff7eb, 1px 0px 1px #fff7eb, 0px 1px 1px #fff7eb, -1px 0px 1px #fff7eb, 0px -1px 1px #fff7eb;
}
#intro .intro_title {
    position: absolute;
    background-image: url(Dup/img/taiyou.png);
    background-color: transparent;
    background-size: contain;
    width: 200px;
    height: 200px;
    background-repeat: no-repeat;
}
#intro::before {
content: "";
    display: block;
    position: absolute;
    top: -80px;
    right: 0px;
    width: 300px;
    height: 600px;
    background-image: url(Dup/img/wood-r.png);
    background-position: 100% 0;
    background-repeat: no-repeat;
    background-size: contain;z-index: 1;
}
#intro::after {
content: "";
    display: block;
    position: absolute;
    top: -80px;
    left: 0px;
    width: 300px;
    height: 600px;
    background-image: url(Dup/img/wood-l.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-color: transparent;
}
@media(min-width: 1200px) {
#intro::before {
    top: -120px;
    right: 0px;
    width: 464px;
    height: 658px;
}
#intro::after {
    top: -120px;
    left: 0px;
    width: 464px;
    height: 658px;
}
}

#map {
    border: 3px solid #fff;
}
.cms_2-h .swiper-pagination-bullet {
    background: #178d10;
    opacity: 1;
}
#cms_3-g .cate_item, .cms_3-g .box_wrap {
    background-color: #fff5e6;
    box-shadow: none;
    border: none;
    border-radius: 16px;
}
.cms_3-g .box_wrap  {
    background-color: transparent;
}
.qa_type3 .con_no{
	left: 20px;
	top: 15px
}
.qa_type3 .cate_box .box_title1, .qa_type3 .cate_box .box_txt1{
	min-height: 1.5em
}
.qa_type3 .box_q{
	background-image: url(./Dup/img/faq_q.png);
	background-repeat: no-repeat;
	background-position: top 2px left;
	background-size: 60px
}
.qa_type3 .box_a{
	background-image: url(./Dup/img/faq_a.png);
	background-repeat: no-repeat;
	background-position: top 2px right;
	background-size: 60px
}
.qa_type3 .box_q, .qa_type3 .box_a{
	padding: 0 90px
}
.qa_type3 .box_q .box_title1::before, .qa_type3 .box_a .box_txt1::before{
    border: solid transparent;
    content: '';
    height: 0;
    width: 0;
    pointer-events: none;
    position: absolute;
    border-color: rgba(0, 0, 0, 0);
}
.qa_type3 .box_q .box_title1::before{
    border-top-width: 7px;
    border-bottom-width: 7px;
    border-left-width: 10px;
    border-right-width: 15px;
    margin-top: -10px;
    border-right-color: #ffd494;
    right: 100%;
    top: 34px;
}
.qa_type3 .box_a .box_txt1::before{
    border-top-width: 7px;
    border-bottom-width: 7px;
    border-left-width: 15px;
    border-right-width: 10px;
    margin-top: -10px;
    border-left-color: #8fd78a;
    left: 100%;
    top: 35px;
}

.cms_1-a a figure, #cms_2-g .cate_img1 {
    border-radius: 20px;
}
.cms_1-a .date {
    background: #fff;
    border-radius: 0 0 18px 0;
    padding: 14px;
    font-size: 16px;
}
/*.cms_1-a .date:before, .cms_1-a .date:after {*/
/*    content: "";*/
/*    display: block;*/
/*    position: absolute;*/
/*    width: 15px;*/
/*    height: 15px;*/
/*    background: url(Dup/img/date_kazari.png);*/
/*    background-size: cover;*/
/*}*/
/*.cms_1-a .date:before {*/
/*    right: -15px;*/
/*    top: 0;*/
/*}*/
/*.cms_1-a .date:after {*/
/*    left: 0px;*/
/*    bottom: -15px;*/
/*}*/

.cms_1-a a:hover figure img {
    width: 110%!important;
}
@media(min-width: 769px) {
#header >  div.tb_hide {
    display: flex;
    align-items: center;
}
.font_14 {
    /*font-size: 15px;*/
    font-size: 17px;
}
}
@media screen and (max-width:768px){
.cms_1-a .date {
    padding: 9px;
    font-size: 12px;
}
#contents1 #contents1_txt {
    padding-left: 29%;
}
/*.cms_1-a .date:before, .cms_1-a .date:after {*/
/*    width: 11px;*/
/*    height: 11px;*/
/*}*/
.cms_1-a .date:before {
    right: -10px;
}
.cms_1-a .date:after {
    bottom: -10px;
}
}


@media screen and (max-width: 768px){
#fix_bnr {
    max-width: 170px;
}
.tori2 {
    right: 5%;
}
.wood2 {
    right: 2%;
    top: -122px;
}
.wood4-2 {
    top: -5vw;
    right: 0%;
}
.wood5-2 {
    left: 2vw;
    bottom: 69%;
}
#wrap {
    background-size: 970px auto;
}
#main_img:before {
    top: 0;
    left: 9px;
    width: 390px;
    height: 300px;
}
#main_img:after {
    right: 14px;
    width: 210px;
    bottom: 110px;
}
#header h1 {
    padding-bottom: 0px;
}
#intro::before {
    top: -13%;
    right: -5%;
    width: 32%;
}
#intro::after {
    top: -13%;
    left: -5%;
    width: 32%;
}
#top_cms1 h3 {
    border: 0;
}
}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
body {
    font-size: 15px;
}
#fix_bnr {
    bottom: 7px;
    left: 8px;
    max-width: 119px;
}
#cms_2-h .cate > .d_flex:before, #cms_3-g .cate_item:before {
    top: -20px;
    left: -20px;
    width: 170px;
    height: 41px;
}
#wrap {
    background-size: 770px auto;
}
.tori2 {
    right: 4%;
    width: 53px;
}
.wood2 {
    top: -68px;
    width: 82px;
}
.wood3 {
    left: 2%;
    top: -39px;
    width: 101px;
}
.wood4 {
    width: 58px;
}
.wood4-2 {
    width: 59px;
    top: -5vw;
}
.wood5 {
    width: 50px;
    top: -35px;
}
.wood5-2 {
    left: 1vw;
    width: 49px;
    bottom: 74%;
}
.wood1 {
    left: 7%;
    bottom: -8%;
    width: 34px;
}
.tori {
    bottom: -39px;
    width: 181px;
}
#main_img:before {
    top: -5px;
    left: 3px;
    width: 229px;
    background-image: url(Dup/img/fv_l_sp.png);
}
#main_img:after {
    right: 4px;
    width: 112px;
    bottom: 80px;
}
.cms_1-a .date {
    border-radius: 0;
}
#contents2 div .grid_6:nth-of-type(2) {
    margin-top: -30px;
}
#page_title:before {
    bottom: 12px;
    width: 360px;
}
#header {
    padding-top: 10px;
    padding-bottom: 10px;
}
#contents1 #contents1_txt {
    padding-left: 20px;
    padding-bottom: 101px;
}
.illust {
    width: 58%;
    bottom: -92px;
    left: auto;
    right: -4px;
}
#loader .logo {
    max-width: 155px;
}
#header h1 {
    width: 148px;
    padding-bottom: 0px;
}
#intro::before {
    top: -5%;
    right: -7%;
    width: 40%;
}
#intro::after {
    top: -5%;
    left: -7%;
    width: 40%;
}
#top_cms .top_cms_box:before {
    bottom: 53px;
    left: -10px;
    width: 206px;
}
#contact_bar .mail a {
    padding-left: 39px;
    padding-top: 7px;
    padding-bottom: 7px;
}
.qa_type3 .box_q{
	padding-right: 0
}
.qa_type3 .box_a{
	padding-left: 0
}
.qa_type3 .con_no{
    top: 13px;
}
}




