﻿/*--------リンク・フォント--------*/
@font-face {
    font-family: 'hiragino_min';
    font-style: normal;
    font-weight: 400;
    src: url('../Dup/img/hiragino_min_r.woff') format('woff'),
        url('../Dup/img/hiragino_min_r.eot')  format('eot');
    font-display: swap;
}
@font-face {
    font-family: 'hiragino_min';
    font-style: normal;
    font-weight: 700;
    src: url('../Dup/img/hiragino_min_b.woff') format('woff'),
        url('../Dup/img/hiragino_min_b.eot')  format('eot');
    font-display: swap;
}

.linkStyle{color: #333333; text-decoration: underline;}

/*--------全体--------*/
.add_shadow{box-shadow: 5px 5px 0 0 #e2e2e2;}

body,#main_img .txt, #page_title, #f_contact .con_txt ,#intro h2, #contents1 h2, #contents2 h2, #top_cms h2, #top_info h2, #f_contact .con_bt, .more_bt a, #top_info .more_bt2 a{
    font-family: "hiragino_min","游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif"!important;
}

#loader.load .load_logo img{
    width: 65%;
}
#footer #logo2{
    max-width: 180px;
}

.portrait_img{
	display: block;
	overflow: hidden;
	position: relative;
	width: 47%;
	height: 800px!important;
}
.portrait_img img{
	width: auto;
    height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.card{
	width:300px;height:300px;
	padding:8px;
	border:1px solid #eee;
	background:#fff;
	border-radius:2px;
	box-shadow:1px 1px 3px rgba(0,0,0,0.1);
	position:relative;
}
.card:before,
.card:after{
	content:"";
	display:block;
	width:100%;height:100%;
	border:1px solid #ddd;
	background:#fff;
	border-radius:2px;
	box-shadow:1px 1px 3px rgba(0,0,0,0.1);
	position:absolute;
	left:0;
	top:0;
	z-index:-1;
}
.card:before{
	-webkit-transform:rotate(-5deg);
	transform:rotate(-5deg);
}
.card:after{
	-webkit-transform:rotate(5deg);
	transform:rotate(5deg);
}
#pc_nav ul:first-of-type {
    border-radius: 5px 0 0 5px;
}
#pc_nav ul:last-of-type {
    border-radius: 0 5px 5px 0;
}
#intro{
        background-image: url(./Dup/img/back1.png);
    background-repeat: no-repeat;
    background-position: 145% 50%;
    background-size: auto;
}
#intro .intro_title{
    position:relative;
    z-index:+1;
}
#intro .intro_title:before{
  content: "";
    display: inline-block;
    width: 11.5em;
    height: 4.5em;
    background: url(./Dup/img/item_01.png) no-repeat;
    position: absolute;
    left: -42px;
    top: 27px;
    background-size: contain;
    z-index: -1;
    opacity: 0.8;
}

#contents1 span{
        background-image: url(./Dup/img/back5.png);
    background-position: 113% -6%;
    background-repeat: no-repeat;
    background-size: 57%;
    z-index: -3;
}


#contents2 .contents2_bg::before {
     background-image: url(./Dup/img/item_07.png),url(./Dup/img/item_06.png);
    background-size: 17%,15%;
    background-repeat: no-repeat;
    background-position: -4% -3%,102% 107%;
}
#top_cms .top_cms_title h2{
    position:relative;
    z-index:+1;
}
#top_cms .top_cms_title h2:before{
 content: "";
    display: inline-block;
    width: 6.5em;
    height: 4.5em;
    background: url(./Dup/img/item_08.png) no-repeat;
    position: absolute;
    left: -74px;
    bottom: -67px;
    background-size: contain;
    z-index: -1;
}
#top_info{
    background-image: url(./Dup/img/back6.jpg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}


#page08_link{
	position: fixed;
	width: 300px;
	bottom: 20px;
	right: 0;
	box-sizing: border-box;
	z-index: 99;
}
#page08_link a{border-radius: 5px 0 0 5px;transition: all 0.5s;box-shadow: 0 0 15px rgba(0,0,0,0.2);transform: translateX(200px);padding: 20px 0;}
#page08_link a:hover{transform: translateX(0px)}
#page08_link a figure{width: 60px;padding: 0 20px ;}
#page08_link a p{width: 200px;}




/*--------下層--------*/
#page3 .cate_txt1{
        width: 90%;
    margin: 0 auto;
    background-color: #fbf8f8;
    padding: 30px;
}
#page3 .cate_title{
    position:relative;
    margin-left: -10px;
    margin-top: 30px;
}
#page3 .cate_title:before{
    content: "";
    position: absolute;
    top: 100%;
    height: 0;
    width: 0;
    border: 5px solid transparent;
    border-top: 5px solid #333;
    left: 0;
    border-right: 5px solid #333;
}
#page5 #cms_2-c .cate_title{position:relative;}
#page5 #cms_2-c .cate_title:before{
    content:"";
    position: absolute;
    background-color: #000022;
    height: 15px;
    z-index: 2;
    display: block;
    width: 3px;
    top: 0;
    left: 0;
}

#page5 #cms_2-c .cate_title::after{
    content:"";
    position: absolute;
    background-color: #bcbccc;
    display: block;
    width: 3px;
    height: 100%;
    top: 0;
    left: 0;
}
#page5 #cms_2-c .cate_txt1{
    width: 95%;
    margin: 0 auto;
    background-color: #fbf8f8;
    padding: 30px;
}
#page6 #cms_5-c .box_title1::before {
    top: -5px;
}
#page8 .contact_add{
    background-color: #f5f5f5;
    width:calc(95% / 2 - 30px);
}

#page10 .more_bt2 h2{
        letter-spacing: 1px;
    }




/*--------タブレット--------*/
@media screen and (max-width: 768px){
    .video {
    vertical-align: middle;
}#main_img {
    height: auto!important;
    padding-top: 87px;
}
    #main_img .txt {
    top: 63%;
    }
    #intro {
    background-image: none;
    }
    #contents1 span {
    background-position: 50% 38%;
    background-size: contain;
}
    .portrait_img {
    width: 50%;
    height: 400px!important;
}#contents2 .contents2_bg::before {
    background-size: 29%,27%;
    background-position: -12% -3%,102% 107%;
}
#top_cms .top_cms_title h2:before {
    width: 6em;
    height: 4em;
    left: -58px;
    bottom: -50px;
    background-size: cover;
}
#footer p{
    text-align: left;
}
#footer #logo2 {
    max-width: 150px;
}
    
    #top_info {
    background-position: 85% 50%;
    }
    
    #page3 .cate_txt1 {
    width: 85%;
    }
    #page5 #cms_2-c .cate_txt1 {
    width: 90%;
    }
    #page10 .more_bt2{
        width: 65%;
    }
    
    #page8 .contact_add a{font-size:2.8vw;}
    
}

/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
    #main_img {
    padding-top: 64px;
}
#main_img .txt {
    width: 100%!important;
    padding: 20px 10px;
    box-sizing: border-box;
    top: 0;
    left: 0;
    position: relative;
    background-color: #ac3737;
}
    #page08_link{
	position: fixed;
	width: 70%;
	max-width: 300px;
	bottom: 10px;
	left: -30%;
	box-sizing: border-box;
	transform: translate(50%,120%);
	transition: ease 0.3s;
}
#page08_link.active{
	transform: translate(50%,0);
}
#page08_link a{border-radius: 3px;transform: translateX(0);padding: 10px 0;background-color: #ac3737;}
#page08_link a i{width: 50px;}
#page08_link a p{width: auto;margin: 0 auto;}
footer{padding-bottom: 60px;}

#footer #logo2 {
    max-width: 130px;
}
.portrait_img {
    height: 250px!important;
}
#contents1 span {
    background-position: 50% 1%;
}
#top_cms .top_cms_title h2:before {
    left: -52px;
    bottom: -33px;
}
#top_info {
    background-position: 91% 50%;
}
#f_contact .con_txt{
    font-size: 4vw;
}
#page3 .cate_txt1 {
    width: 82%;
    padding: 20px;
}
#page5 #cms_2-c .cate_txt1 {
    width: 87%;
    padding: 20px;
}
#cms_5-c .box_txt1::before {
    top: 3px;
    left: 6px;
}
#page8 #contact_tel_wrap{padding: 25px;}
#page8 .contact_tel p{font-size: 4.5vw;}
#page8 .contact_tel a{    font-size: 6vw;}
#page10 .more_bt2{
    margin-left: 10px;
    margin-right: 10px;
}
 #page10 .more_bt2 h2{
     letter-spacing: 1px;
    font-size: 4.5vw;
 }
  #page10 .more_bt2 span{
        font-size: 3vw;
 }
 
 #page8 .contact_add {
    width: 100%;
    margin: 5% 0 0;
}

 #page8 .contact_add a {
    font-size: 5vw;
}
}


/*--------------------------------------------
IE
--------------------------------------------*/
@media all and (-ms-high-contrast:none){


}
