﻿/*--------リンク・フォント--------*/
.linkStyle{color: #333333; text-decoration: underline;}

/*--------全体--------*/
.pd_l-r2per {padding: 0 2%;}

#loading_logo {
    width: 80%;
    max-width: 200px;
}
.top_nav ul li a:hover {
    color: #ffef37;
}
.main_img_wrap .catch span {
    font-size: 2.2em;
    font-style: italic;
}
#contents{
    background-color: #fff385;
    background-image: url(./Dup/img/item_01.png),url(./Dup/img/item_02.png);
    background-repeat: repeat-x;
    background-size: 44%;
    background-position: -10% -1%,100% 100%;
}
#contents figure.txt_color3 {
    color: #ff6b02;
}
.t_cms_img2 .img-container:before {
    background: #ffd200;
}
.dec.txt_color3{color: #3bb05d;}

#contents .box h3{
    position:relative;
    z-index:+1;
    
}
#contents .box h3::after{
    content: "";
    position: absolute;
    display: inline-block;
    background: url(./Dup/img/item_03.png) no-repeat;
    background-size: contain;
    z-index: -1;
    opacity: 0.85;
    width: 4em;
    height: 3.5em;
    left: -29px;
    top: -20px;
}
 #cms_3-c,#cms_5-c,.cms_3-c,.cms_5-c {
    background-color: rgba(255,255,255,0.7);
}
#footer .logo{position:relative;}
#footer .grid_6{
    width: 60%!important;
}
#top_cms {
    background-image: url(./Dup/img/item_07.png);
    background-repeat: repeat-y;
    background-size: 15%;
    background-position: 101% 0%;
}
#top_cms .top_cms_box .cms_title{
    position:relative;
    z-index:+1;
    padding-left: 30px;
}
#top_cms .top_cms_box .cms_title::before{
    content: "";
    position: absolute;
    display: inline-block;
    z-index: -1;
    opacity: 0.8;
    width: 5em;
    height: 5em;
    left: -20px;
    top: 0px;
}

#top_cms .top_cms_box .cms_title::before{
    background: url(./Dup/img/item_10.png) no-repeat;
    background-size: contain;
}

.other .box figure {
    opacity: 0.15;
}
.other .box .txt_color3 {
    color: #91af78;
}
.bottom_menu .hvr_txt_color1:hover {
    color: #7c7c7c;
}
/*--------下層--------*/

.youtube_box{
    position: relative;
    padding-bottom: 56.25%; 
    height: 0;
    overflow: hidden;
}
.youtube_box iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.subpage #header{padding-top:0;}

.subpage .cate_title {
  position: relative;
  margin-bottom: 0.5rem;
  text-align: center;
}
.subpage .cate_title:before {
  content: '';
  position: absolute;
  bottom: -15px;
  width: 6rem;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: linear-gradient(90deg, #C780A9 0%, #C780A9 33%, #E8E933 33%,#e8e833 66%,#81c682 66%, #81c682 100%);
  border-radius: 2px;
}

.subpage main{
    background-image: url(./Dup/img/item_06.png);
    background-repeat: repeat-y;
    background-size: 9%;
    background-position: -0.5% 0%;
}
.subpage .page_title .img-container.active .img-container_img{
    opacity: 0.4!important;
}

#cms_6-c .cate_box,.cms_6-c .cate_box{
    background-image: url(./Dup/img/item_04.jpg),url(./Dup/img/item_05.jpg);
    background-repeat: no-repeat;
    background-size: 45%;
    background-position: 0% 0%,100% 100%;
    box-shadow: rgba(67, 71, 85, 0.27) 0px 0px 0.25em, rgba(90, 125, 188, 0.05) 0px 0.25em 1em;
}
#cms_6-c .box_title,.cms_6-c .box_title {
    position: relative;
    padding: 10px;
    border-radius: 10px;
    border: 2px solid #333;
    background-color: #ffffff;
    color: #333;
}

#cms_6-c .box_title::before,.cms_6-c .box_title::before {
    position: absolute;
    top: 100%;
    left: 3%;
    height: 20px;
    width: 2px;
    transform: rotate(-20deg);
    background-color: #333;
    content: '';
}

#page8 .tel_box{
    position: relative;
    overflow: hidden;
    padding: 20px 20px 15px 20px;
}
#page8 .tel_box > a:before{
    content:"";
    position: absolute;
    width:100vw;
    height:100vh;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    left:50%;
    top:50%;
}
@media screen and (max-width: 1200px){
    #page8 .tel_box p{
        display: block;
        padding-right: 0px;
        margin-right: 0px;
        border-right: none;
        
    }
}

@media screen and (max-width: 667px){  
#page8 .tel_box a{
    font-size: 5.3vw;
    letter-spacing: 2px;    
}
}
/*--------タブレット--------*/
@media screen and (max-width: 768px){
    header .logo {
    width: 18%;
    }
    #nav_menu {
    background-color: rgba(255,255,255,0.8);
}
.main_img_wrap .catch {
    width: 63%;
}
.main_img_wrap .catch span {
    font-size: 5vw;
    line-height: 1.5;
}
#contents {
    background-size: 75%;
    background-position: -10% -0.5%,100% 100.5%;
}

#contents .box .txt_wrap {
    width: 90%;
    padding-right: 0px;
}
#contents .box figure {
    width: 90%;
    margin-top: 30px;
}
#contents .box figure:after {
    width: 100%;
}
#contents .box:nth-child(odd) figure:after {
    right: 45%;
}
#top_cms {
    background-size: 34%;
    background-position: 111% 0%;
}
#footer .logo.width_80per_tb {
    width: 55%!important;
}
#footer .grid_6{
    width: 100%!important;
}
.subpage main {
    background-size: 11%;
    background-color: #ffd8a1;
}

.cate_list li {
        width: 32%;
    text-align: left;
    margin-right: 0px;
}
.cate_list li a{padding: 5px 10px 5px 10px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}

#cms_3-c .cate{
    background-color: rgba(255,255,255,0.5);
    padding: 15px;
}
#cms_6-c .cate_box,.cms_6-c .cate_box{
    background-image: url(./Dup/img/item_05.jpg);
    background-size: 45%;
    background-position: 100% 100%;
}
#cms_5-c{
    background-color: rgba(255,255,255,0.5);
    padding: 15px;
}
}

/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
.add_line_h{line-height: 1.3;}
#loading_logo {
    max-width: 150px;
}
.main_img_wrap .navi {
    bottom: 30px;
}
.main_img_wrap .catch {
    bottom: 16%;
    width: 90%;
}
.main_img_wrap .catch span {
    font-size: 6.5vw;
}
header .logo {
    width: 31%;
}
#contents .box h3::after {
    width: 3em;
    height: 3em;
    left: -21px;
    top: -11px;
}
.overlay ul {
    width: 70%;
}
#contents {
    background-size: 95%;
}

#top_cms {
    background-size: 50%;
}
#top_cms:before {
    width: 90%;
}
#footer .logo.width_80per_tb {
    width: 70%!important;
}
#page_title p {
    letter-spacing: 2px;
}
.pager li a span{
    border: 1px solid #ffd200;
}
.cate_list li {
    width: 100%;
    margin-bottom: 0px;
}
.cate_list li:last-of-type{
    margin-bottom: 15px;
}
.subpage main {
    background-size: 18%;
    background-position: -9% 0%;
}
.subpage #page_title .img-container::after {
    background-color: rgba(170, 195, 162, .35);
}
.subpage .cate_title::before {
    bottom: -8px;
}
.subpage .page_title .img-container.active .img-container_img {
    opacity: 1!important;
}
#cms_6-c .cate_box, .cms_6-c .cate_box {
    background-size: 76%;
}
#cms_6-c .box_title::before, .cms_6-c .box_title::before {
    left: 7%;
}
.page10 .more span {
    width: 8%;
}
}


/*--------------------------------------------
IE
--------------------------------------------*/
@media all and (-ms-high-contrast:none){
   
    #cms_6-c .box_title, .cms_6-c .box_title{padding:14px 10px 6px 10px;}
#top_cms figure img{width:100%!important;height:auto!important;}
#contact_tel a {padding:37px 30px 30px}
}