﻿.bg_color1 {background-color: #f77e49;}
.bg_color2 { background-color: #fff5f2;}
.bg_color3 {background-color: #f77e49;}
.border_color1 {border-color: #5a4223;}
.border_color2 {border-color: #f77e49;}
.border_color3 {border-color: #f77e49;}
.txt_color1 {color: #f77e49;}
.txt_color2 {color: #f77e49;}
.txt_color3 {color: #f1956c;}
.hvr_bg_color2:hover {background-color: #fee8dc;}
/* ----------　all　---------- */
.linkStyle{
	color:#f77e49;
}
.linkStyle:hover{
	color:#f77e49;
	opacity: 0.7;
	transition: all 0.5s;
}
#pc_nav li, #top_pc_nav li, #footer_nav li {
    max-width: 200px;
}
.top header.scr_header {
    z-index: 99;
}
body, .txt_color_nomal {
    color: #5a4223;
}
h1, h2, h3, h4, h5, h6,.hannari {
    font-family: 'RocknRoll One', sans-serif!important;
}
.font_14 {
    font-size: 16px;
    font-weight: bold;
}
.hannari {
    font-weight: normal;
}
.nav_menu_more:first-of-type a .icon:before {
    content: "\f086";
}
#body {
        background-image: url(Dup/img/back3.jpg);
    background-size: 40%;
}
#fakeloader{
    background-image: url(Dup/img/load.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}
#fakeloader:before {
    background-color: rgba(255,255,255,0);
}
.banner_box{
    margin-top: 50px;
}
.banner{
    width: 40%;
    margin: 0 2%;
    max-width: 300px;
}
.back1:before ,.back2:before {
    background-color: rgba(255, 228, 216,0.75)!important;
}
footer{
    background-image: url(Dup/img/back.jpg);
    position: relative;
    padding-top: 100px;
    background-size: 50%;
    color: #fff;
}
footer:before {
    content: '';
    width: 600px;
    height: 200px;
    background-image: url(Dup/img/dec3.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
    position: absolute;
    top: -20px;
    right: -20px;
}
#footer {
    background-color: transparent;
}
footer h2,footer .tel_bt a{
    color: #fff!important;
}
.line:before {
    background-color: rgba(247 ,126, 73,0.5)!important;
}
.return a{
        text-shadow: 1px 1px 1px #ffffff, -1px 1px 1px #ffffff, 1px -1px 1px #ffffff, -1px -1px 1px #ffffff, 1px 0px 1px #ffffff, 0px 1px 1px #ffffff, -1px 0px 1px #ffffff, 0px -1px 1px #ffffff;
}

/* ----------　TOP　---------- */
.menu {
    top: 0;
    left: 0;
    transform: translate(0%,0%);    
}
.menu p{
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: transparent;
    margin-left: -20px;
    background-size: 60%;
}
.menu p a{
    margin-bottom: auto;
    margin-top: 10px;
    margin-right: auto;
}
#top_pc_nav{
    display: none;
}
.video_wrap {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100vh;
}
video {
	min-width: 100%;
	min-height: 100vh;
	z-index: 1;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.main_dec{
    z-index: 1;
    position: absolute;
        width: 80%;
    max-width: 700px;
}

.poyoyon2,.poyoyon3{opacity:0;}
.poyoyon2.is-animated,.poyoyon3.is-animated {
    opacity:1;
    animation: poyoyon2 1s ease-in-out 1 forwards;
}
 
@keyframes poyoyon2 {
  0%  {
    transform: scale(1.0, 1.0) translate(0, 0);
  }
  15% {
    transform: scale(0.98, 0.9) translate(0, 5px);
  }
  30% {
    transform: scale(1.02, 1.0) translate(0, 8px);
  }
  50% {transform: scale(0.98, 1.05) translate(0, -8px);
  }
  70% {
    transform: scale(1.0, 0.9) translate(0, 5px);
  }
  100% {
    transform: scale(1.0, 1.0) translate(0, 0);
  }
  0%, 100% {
    opacity: 1;
  }
}

.num {
    opacity: 1;
    text-shadow: 2px 2px 1px #fbf4ea, -2px 2px 1px #fbf4ea, 2px -2px 1px #fbf4ea, -2px -2px 1px #fbf4ea, 2px 0px 1px #fbf4ea, 0px 2px 1px #fbf4ea, -2px 0px 1px #fbf4ea, 0px -2px 1px #fbf4ea;
}
#top_cms.back1:before {
    z-index: -1;
}
#intro:before {
    content: '';
    width: 300px;
    height: 300px;
    background-image: url(Dup/img/bg_dec4.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 10;
    position: absolute;
    bottom: -320px;
    right: -30px;
}
#intro_wrap,#contents3 .con_box  {
    background-image: url(Dup/img/back.jpg);
    background-size: 40%;
        color: #fbf4ea;
}
#intro_wrap:before,#contents3 .con_box:before {
    content: '';
    width: 200px;
    height: 200px;
    background-image: url(Dup/img/dec1.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
    position: absolute;
    top: -20px;
    left: -20px;
}
#intro_wrap:after,#contents3 .con_box:after{
    content: '';
    width: 200px;
    height: 200px;
    background-image: url(Dup/img/dec2.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 9;
    position: absolute;
    bottom: -20px;
    right: -20px;

}
#contents2_wrap:before {
    content: '';
    width: 400px;
    height: 400px;
    background-image: url(Dup/img/bg_dec2.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
    position: absolute;
    top: -200px;
    left: -150px;
}
.top_cms_box:first-of-type{
        position: relative;
}
.top_cms_box:first-of-type:before {
    content: '';
    width: 500px;
    height: 500px;
    background-image: url(Dup/img/bg_dec3.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
    position: absolute;
    top: 0px;
    right: -100px;
}
#info_contact:before {
    content: '';
    width: 500px;
    height: 500px;
    background-image: url(Dup/img/bg_dec1.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
    position: absolute;
    bottom: -300px;
    left: -150px;
}


/* ----------　下層ページ　---------- */
.pager li{
    margin-right: 8%;
    margin-left: 8%;
}
#page5 .contact_tel {
    border: 1px solid #f77e49;    
}
#page8 #contact_tel {
    font-size: -webkit-calc(1rem + 4px);
    font-size: calc(1rem + 4px);
}
.re_link{
    background-color: #fee8dd;
    padding: 10px;
    border-radius: 10px;
}
.re_link a{
    width: 100%;
}
/* ----------　IE　---------- */
@media all and (-ms-high-contrast: none){
#page_title .page_title_box {
    padding-bottom: 20px!important;
}

#cms_2-a .cate .cate_title {
    padding-top: 10px!important;
}
.re_link {
    padding-top: 22px;
}
.main_dec {
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    margin: auto;
}
.main_dec img{
    top: 0px;
    bottom: 0px;
    margin: auto;
    position: absolute;
}

}

/* ----------　タブレット　---------- */
@media screen and (max-width: 768px){
#fakeloader {
    background-size: cover;
    background-position: bottom;
}
#overlay .left li {
    max-width: 220px;
}
#main_img{
	position: relative;
	height: auto;
	width: 100%;
}    
#main_img:before {
    background-color: transparent;
}
#main_img .menu{
    display: none;
}
.main_dec {
    max-width: 350px;
}
.video_wrap {
	position: static;
	overflow: hidden;
	width: 100%;
	height: auto;
	min-width: 100%;
}
video {   
	min-width: auto;
	min-height: auto;
	width: 100%;
	z-index: 1;
	position: static;
	top: 0%;
	left: 0%;
	-webkit-transform: translate(0%, 0%); 
	-ms-transform: translate(0%, 0%);
	transform: translate(0%, 0%); 
vertical-align: bottom;
}
#intro{
        margin-bottom: 150px;
}
#intro_wrap:before, #contents3 .con_box:before {
    width: 150px;
    height: 150px;
    top: -30px;
    left: -30px;
}
#intro_wrap:after, #contents3 .con_box:after {
    width: 150px;
    height: 150px;
    bottom: -20px;
    right: -40px;
}
#intro:before {
    width: 150px;
    height: 150px;
    bottom: -130px;
    right: -30px;
    z-index: 0;
}
#contents2_wrap:before {
    width: 200px;
    height: 200px;
    top: auto;
    left: -50px;
    bottom: 0;
}
.top_cms_box:first-of-type:before {
    width: 250px;
    height: 250px;
    top: -20px;
    right: -50px;
}
#info_contact:before {
    width: 300px;
    height: 300px;
    bottom: 100px;
    left: -150px;
}
#page_title .page_title_box {
    width: 60%;
}
footer:before {
    width: 500px;
    height: 150px;
}
.font_2dw_tb {
    font-size: -webkit-calc(1rem - 0px);
    font-size: calc(1rem - 0px);
}
}


/* ----------　スマホ　---------- */
@media screen and (max-width: 667px){
#main_img {
    padding-top: 65px;
    background-color: rgba(247,126,73,0.5);
}
.banner {
    width: 80%;
    margin: 0 2% 25px;
    max-width: 300px;
}    
.main_dec {
    max-width: 200px;
}
#intro_wrap:before, #contents3 .con_box:before {
    width: 100px;
    height: 100px;
    top: -20px;
    left: -20px;
}
#intro_wrap:after, #contents3 .con_box:after {
    width: 100px;
    height: 100px;
    right: -30px;
}
#intro {
    margin-bottom: 130px;
}
#intro:before {
    width: 120px;
    height: 120px;
    bottom: -110px;
}
#contents2_wrap:before {
    width: 130px;
    height: 130px;
    top: -60px;
    bottom: auto;
}
.top_cms_box:first-of-type:before {
    width: 180px;
    height: 180px;
    top: -20px;
    right: -20px;
}
#info_contact:before {
    width: 150px;
    height: 150px;
    bottom: auto;
    top: -100px;
    left: -50px;
}
#page_title .page_title_box {
    width: 80%;
    padding-left: 15px;
    padding-right: 15px;
}
#return_top {
    right: 10px;
}
.font_14,.font_2dw_tb,#cms_3-e .box_txt1 {
    font-size: 14px;
}
#cms_3-e .box_txt1 {
    margin-top: 10px;
}
#cms_2-a .box_title1{
     font-size: -webkit-calc(1rem + 2px);
    font-size: calc(1rem + 2px);   
}
#cms_3-e .sub_cate_title{
    font-size: -webkit-calc(1rem + 3px); 
    font-size: calc(1rem + 3px);
}
#cms_5-c .box_title1 {
    font-size: -webkit-calc(1rem + 1px);
    font-size: calc(1rem + 1px);
}
#page7 h4{
    font-size: 16px;
    font-weight: normal;
}
#page7 .box_txt1 {
    font-size: 16px;
}
#page8 #contact_tel {
    font-size: -webkit-calc(1rem + 3px);
    font-size: calc(1rem + 3px);
}
#page8 #tel_txt h3,#page9 h3{
        font-size: 17px;
}

}