﻿@import url('https://fonts.googleapis.com/css2?family=Kiwi+Maru&family=Sawarabi+Gothic&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Hammersmith+One&display=swap');
.font_12up {
    font-size: -webkit-calc(1rem + 14px);
    font-size: calc(1rem + 14px);
}
.img-container_img {
    transition: all 3.8s 0.3s ease;
}
.cate_list{
    border-bottom: none;
    margin-bottom: 50px;
}
.cate_list li{
    margin: 0;
    padding: 5px;
    width: auto;
}
.cate_list li a{
    padding: 10px 20px!important;
    background-color: #4aac35;
    color: #fff;
    font-size: 15px;
    border-radius: 8px;transition: all 1s;
}
.cate_list li a:hover{
    background-color: #78cffb;
    color: #fff;
}
.cate_list li a:hover::before {
    color: #f8f8f8;
}


.vegas-wrapper {
        background: rgba(140, 198, 255, 0.21);
}
.menu .nav ul {
    position: relative;
}
.menu .nav ul li, .menu .nav ul li a {
    transform: none;
    margin: 0;
    border: none!important;
}
/*.menu .nav ul li, .top_nav ul li {

-webkit-transform: none;
); 
    -moz-transform: none;
); 
    margin-left: 10px;
    line-height: 1.2;
}
.menu .nav ul li a, .top_nav ul li a {
-webkit-transform: none;
); 
    -moz-transform: none;
); 
}
*/



/*ロゴアニメ*/
.slide-in {
	overflow: hidden;
    display: inline-block;
}

.slide-in_inner {
	display: inline-block;

}

.leftAnime{
    opacity: 0;/*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
	animation-name:slideTextX100;
	animation-duration:2.8s;
	animation-fill-mode:forwards;
    opacity: 0;
}

@keyframes slideTextX100 {
  from {
	transform: translateX(-100%); /*要素を左の枠外に移動*/
        opacity: 1;/*0でも可*/
  }

  to {
	transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}

.slideAnimeRightLeft {
	animation-name:slideTextX-100;
	animation-duration:2.8s;
	animation-fill-mode:forwards;
    opacity: 0;
}


@keyframes slideTextX-100 {
  from {
	transform: translateX(100%);/*要素を右の枠外に移動*/
    opacity: 1;/*0でも可*/
  }

  to {
	transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}
/* -----------*/
/*catchテキストアニメ*/
.demoTxt {
  display: block;
opacity:0;
 text-align: center;
}
.demoTxt span {
 opacity: 0;
  -webkit-transition: .6s ease-in-out;
 transition: .6s ease-in-out;
}







.cms_2-c .cate_box {
    padding: 2% 0;
}
#contents figure.txt_color3 {
background-color: #ffffff;
background-image: url("Dup/img/tree-bark.png");
border-radius: 20px;
}
p > span > span:nth-child(1){
-webkit-transition-delay: 200ms;transition-delay: 200ms;
-webkit-animation-delay: 200ms;animation-delay: 200ms;
}
p > span > span:nth-child(2){
-webkit-transition-delay: 350ms;transition-delay: 350ms;
-webkit-animation-delay: 350ms;animation-delay: 350ms;
}
p > span > span:nth-child(3){




-webkit-transition-delay: 500ms;transition-delay: 500ms;
-webkit-animation-delay: 500ms;animation-delay: 500ms;
}
p > span > span:nth-child(4){
-webkit-transition-delay: 650ms;transition-delay: 650ms;
-webkit-animation-delay: 650ms;animation-delay: 650ms;
}
p > span > span:nth-child(5){
-webkit-transition-delay: 800ms;transition-delay: 800ms;
-webkit-animation-delay: 800ms;animation-delay: 800ms;
}
p > span > span:nth-child(6){
-webkit-transition-delay: 950ms;transition-delay: 950ms;
-webkit-animation-delay: 950ms;animation-delay: 950ms;
}
p > span > span:nth-child(7){
-webkit-transition-delay: 1100ms;transition-delay: 1100ms;
-webkit-animation-delay: 1100ms;animation-delay: 1100ms;
}
p > span > span:nth-child(8){
-webkit-transition-delay: 1250ms;transition-delay: 1250ms;
-webkit-animation-delay: 1250ms;animation-delay: 1250ms;
}
p > span > span:nth-child(9){
-webkit-transition-delay: 1400ms;transition-delay: 1400ms;
-webkit-animation-delay: 1400ms;animation-delay: 1400ms;
}
p > span > span:nth-child(10){
-webkit-transition-delay: 1550ms;transition-delay: 1550ms;
-webkit-animation-delay: 1550ms;animation-delay: 1550ms;
}
p > span > span:nth-child(11){
-webkit-transition-delay: 1700ms;transition-delay: 1700ms;
-webkit-animation-delay: 1700ms;animation-delay: 1700ms;
}
p > span > span:nth-child(12){
-webkit-transition-delay: 1850ms;transition-delay: 1850ms;
-webkit-animation-delay: 1850ms;animation-delay: 1850ms;
}
p > span > span:nth-child(13){
-webkit-transition-delay: 2000ms;transition-delay: 2000ms;
-webkit-animation-delay: 2000ms;animation-delay: 2000ms;
}
p > span > span:nth-child(14){
-webkit-transition-delay: 2150ms;transition-delay: 2150ms;
-webkit-animation-delay: 2150ms;animation-delay: 2150ms;
}
p > span > span:nth-child(15){
-webkit-transition-delay: 2300ms;transition-delay: 2300ms;
-webkit-animation-delay: 2300ms;animation-delay: 2300ms;
}



.tracking-in-expand {opacity: 0}
.tracking-in-expand.trans{
	-webkit-animation: tracking-in-expand 2.8s cubic-bezier(0.215, 0.610, 0.355, 1.000) both;
	        animation: tracking-in-expand 2.8s cubic-bezier(0.215, 0.610, 0.355, 1.000) both;
}
@-webkit-keyframes tracking-in-expand {
  0% {
    letter-spacing: -0.5em;
    opacity: 0;
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
@keyframes tracking-in-expand {
  0% {
    letter-spacing: -0.5em;
    opacity: 0;    -webkit-filter: blur(10px);
            filter: blur(10px);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;    -webkit-filter: blur(0px);
            filter: blur(0px);
  }
}




.menu .nav ul li a .nav1 {font-size:16px}
.menu .nav ul li a .nav2 {font-size:12px}


.menu .nav ul li a .nav2 {
    border-color: #4cab37;
    
}


#loading_line .line {    background-color: #e3ffdd;}
.svg_box .cls-1 {
    fill: #b8e2aa;
}
.svg_box .cls-2 {
    fill: #dffddf;
    stroke: #dffddf;
    stroke-miterlimit: 10;
}

.text-focus-in {opacity: 0}
.text-focus-in.trans {
	-webkit-animation: text-focus-in 2s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
	        animation: text-focus-in 2s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
}

@-webkit-keyframes text-focus-in {
  0% {
    -webkit-filter: blur(10px);
            filter: blur(10px);
    opacity: 0; transform: translateY(20px);
  }
  100% {
    -webkit-filter: blur(0px);
            filter: blur(0px);
    opacity: 1;  transform: none;
  }
}
@keyframes text-focus-in {
  0% {
    -webkit-filter: blur(10px);
            filter: blur(10px);
    opacity: 0; transform: translateY(20px);
  }
  100% {
    -webkit-filter: blur(0px);
            filter: blur(0px);
    opacity: 1;  transform: none;
  }
}
.top_cms_box .more_box {
    opacity: 0!important;
    transition: all 2.5s;
}
.top_cms_box .more_box.fadein.trans {
    animation: inherit;
    opacity: 1!important;
}
.menu .nav ul, .fadein{
     opacity: 0;
     transition: 0.8s;
     transition-property: opacity,transform;
     transition-delay: 0.5s;
}
.menu .nav ul.trans, .fadein.trans, .top_cms_box .more_box.trans{
-webkit-animation: blur 0.8s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
	        animation: blur 0.8s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
}
@keyframes blur {
  0% {
    -webkit-filter: blur(2px);
            filter: blur(2px);
    opacity: 0;     transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: none;
    -webkit-filter: blur(0px);
            filter: blur(0px);
  }
}


.img-container:before {
    transition: all 2.3s 0s ease;
}


html {
-webkit-text-size-adjust: 100%;
}
body {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;line-height: 1.7;
        font-size: 17px;
}
h2, h3, h4, .cms_title .font_12up, .nav li a .nav1 {
font-family: 'Sawarabi Gothic', sans-serif;
}
.t_cms_txt2, .t_cms_txt5, .t_cms_txt8, .cms_title .letter_1, .nav li a .nav2, #page_title p:nth-child(2) {
font-family: 'Hammersmith One', sans-serif;
}
::selection {
    background: #d5f4ff;
    color: #44a1ff;
}
.txt_wrap h3 span {display: block;}
.txt_wrap h3 span:first-letter {
    color: #4cab37;
    font-size: 1.5rem;
}

.sns_links li {
    width: 35px!important;
    height: 35px!important;
    margin-left: 10px;
    margin-right: 10px;
    max-width: inherit;
}


.other {position: relative;
    margin-top: 20px;
}
.other:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    height: 19px;
    background-image: url(Dup/img/nami.png);
    transform: rotate( -180deg );
    background-repeat: repeat-x;
    background-size: auto 100%;
    z-index: 0;
    background-color: transparent;
}


/* ----------------------------------------------SET-------------------------------------------------------- */
.cms_wrap figure, .cms_wrap figure img{
/*border-radius: 20px;*/
}
.img-container.active:before {
    transform: translateX(101%);
}
.cms_1-a figure {
    border: 1px solid #78cffb;
}
#cms_2-a h3 {
    border-top: 0;
    display: block;
}
#cms_2-a h4 {
    font-weight: bold;
}
.cms_5-a h4 {
    font-weight: bold;
   font-size: 1.2rem;
}
#cms_5-a .cate_title {
      background-color: #acedea;  
}
.cms_title {
        text-align: center;
}
#top_cms .top_cms_wrap .top_cms_box:nth-child(4) .cms_title {
    margin-bottom: 0;
}











/* ------------------------------------------------------------------------------------------------------ */
.other .box figure img {
    border-radius: 10px;
}
.other .box {
    position: relative;
    overflow: inherit;
    border: none;    width: 45%;    border-radius: 10px;
    margin-top: -28px;
}
.other .box::before {
    content: "";
    display: block;
    position: absolute;
    width: 160px;
    height: 100px;
    left: 0;
    right: 0;
    top: -70px;
    margin: auto;
    background: url(Dup/img/point1.png) no-repeat top center;
    background-size: auto 100px;
    z-index: 1;
}
.other .box.point2::before {
    background-image: url(Dup/img/point2.png);
}
.other .box .box_item {
    border: 2px solid #78cffb;
    border-radius: 10px;
    box-shadow: 6px 6px 5px 0px rgba(230, 245, 244, 1);
}
/* --------------------------------------------TOPCONTENTS--------------------------------------------------------- */



.top_cms_box .more_box .more {
    border-radius: 40px;
    border-color: #78cffb;
    border: 2px solid #78cffb;
}


#contents .box figure {
    position: relative;
    z-index: 1;
}
#contents figure img {
    border-radius:20px;
}


.t_cms_img2 .img-container:before {
    background: #4aac36;
}
.img-container:before {
    background: #78cffb;
}

#top_cms {
    position: relative;
}
#top_cms:before {
    /*background-color: transparent;*/
}

.menu .logo {
    width: 19%!important;
}
#loading_logo {
    max-width: 332px;
}
/*------------------------------------TOPCMS-----------------------------------------*/
#top_cms .line {
    
}
.top_cms_box:before {
display: none;
}

.cms_5-a .box_wrap {
    background: #fff;
    border: none;

    border-bottom: 4px solid #ffc3c3;
}
/* ------------------------------------under----------------------------------------------*/
.page_title_box:before {
    background: url(../Dup/img/heart.png);
    bottom: -28px;
    width: 35px;
    height: 36px;
    border-bottom: none;
    background-size: contain;
}

/*.img-container,*/ .img-container:before {
   border-radius: 20px;
}
.cate img, .cate_box img {
    box-shadow: none;
}
@media(min-width: 769px) {
.all_header {
        display: none;/*クリック*/
    }
}

@media(min-width: 668px) {
#page_title p {
    text-shadow: 1px 1px 0 #FFFFF0, -1px -1px 0 #FFFFF0, -1px 1px 0 #FFFFF0, 1px -1px 0 #FFFFF0, 0px 1px 0 #FFFFF0, 0-1px 0 #FFFFF0, -1px 0 0 #FFFFF0, 1px 0 0 #FFFFF0;
}
#page_title p:first-child {
    color: #444;
}
}


/* ------------------------------------FOOTER----------------------------------------------*/
footer {
    background-color: #78cffb
}
footer p.txt_white {
}
.bottom_menu li a {font-size: 1rem}
.banner1 {
    background: url(Dup/img/item_bg.jpg) no-repeat center center;
    background-size: 105% auto;
    padding-top: 28%;
    border-radius: 10px;
    position: relative;
    margin: 0 0 5px 0;
    transition: 0.4s ease-in-out;
    transition: all 0.4s;
}
.banner1 div {
    max-width: 366px;
    width: 30%;
    position: absolute;
    left: 8%;
    top: 0;
    height: 100%;
    display: flex;
   /* flex-direction: column;*/
    justify-content: center;
    align-content: center;
    align-items: center;
}

.banner1:hover {
    background-size: 100% auto;
}

header .logo, header #nav_menu {
top: 2px;
    right: 2px;
}
@media(min-width: 668px) {
footer .svg_box {
    z-index: -1;
    opacity: 1;
}
}
@media(max-width: 768px) {
    #contents .box h3 {
    min-height: 80px;
}
    header .logo {
    width: 27%;
}
#header .logo a {
    padding:24px 18px 11px;
}
}
@media(max-width: 667px) {
    .overlay ul li a {
padding-right: 0;padding-left: 0;
}
.pager li {
     margin-left: 0;   
    }
    
    footer .svg_box {
    z-index: -1;
}
#top_cms .top_cms_wrap {
    padding-top: 0px;
}

body {
    font-size: 14px;
    line-height: 1.7;
}
#loading_logo {
    width: 49%;
}
.banner1 {
    background-image: url(Dup/img/item_bg_sp.jpg);
    background-repeat: no-repeat;
    background-size: 105% auto;
    padding-top: 83%;    border: 2px solid #a19885;
}
.banner1 div {
    width: 75%;
    left: 0;
    right: 0;
    margin: auto;
  top: -37px;
    justify-content: inherit;
}
.banner1 div img {
        /*filter: drop-shadow(0px 0px 4px #ffffff) drop-shadow(3px 3px 9px #ffffff) drop-shadow(0px 0px 6px #ffffff);*/
        filter: drop-shadow(3px 4px 0px #fff);
}

#top_cms .top_cms_wrap .top_cms_box:nth-child(1), #top_cms .top_cms_wrap .top_cms_box:nth-child(4), #top_cms .top_cms_wrap .top_cms_box:nth-child(5) {
      padding-top: 44px;
    padding-bottom: 0px;  
}
#top_cms .top_cms_wrap .top_cms_box:nth-child(3), #top_cms .top_cms_wrap .top_cms_box:nth-child(4), #top_cms .top_cms_wrap .top_cms_box:nth-child(5) {
  background-size: auto 16px;

}
#top_cms .top_cms_wrap .top_cms_box:nth-child(3) {
padding: 27px 0 0;
margin-bottom: 27px;   
}
.cms_title {
    margin-bottom: 20px;
}
.cms_title .font_12up span {
    font-size: 1rem;
}
.main_img_wrap .catch {
    bottom: 45%;width: 90%;
}

header .logo {
width: 53%;
    padding-top: 9px;
    padding-bottom: 12px;
}
#header .logo a {
    padding: 11px 13px 11px 8px;
}
 .other .box {
        width: 96%;
        margin: 0px auto 90px;
        box-sizing: border-box;
    }
    .other .box:last-child {
        margin-bottom: 0;;
    }
    .font_14up {
    font-size: -webkit-calc(1rem + 10px);
    font-size: calc(1rem + 10px);
}
}



@media all and (-ms-high-contrast: none) {
.banner1:hover {
    background-size: 105% auto;
}
.top_cms_box .more_box .more div {
    padding-top: 0px;
}
.pager li a span {
    padding-bottom: 15px;
}
#cms_5-a .cate .cate_title span:last-of-type {
    padding-bottom: 10px;
}
}


@media all and (-ms-high-contrast: none) {
#page8 #tel_CONTACT p a {
    padding-bottom: 26px;
}
#page9 p a {
    padding-bottom: 10px;
}
}
