﻿/*--------リンク・フォント--------*/
.linkStyle{color: #333333; text-decoration: underline;}
@font-face {
    font-family: 'NotoSerif';
    font-style: normal;
    font-weight: 400;
    src: url('../Dup/img/NotoSerif_r.woff') format('woff'),
        url('../Dup/img/NotoSerif_r.eot')  format('eot');
    font-display: swap;
}
@font-face {
    font-family: 'NotoSerif';
    font-style: normal;
    font-weight: 700;
    src: url('../Dup/img/NotoSerif-Black.woff') format('woff'),
        url('../Dup/img/NotoSerif-Black.eot')  format('eot');
    font-display: swap;
}
@font-face {
    font-family: 'NotoSerif';
    font-style: normal;
    font-weight: 900;
    src: url('../Dup/img/NotoSerif_bold.woff') format('woff'),
        url('../Dup/img/NotoSerif_bold.eot')  format('eot');
    font-display: swap;
}
body{ font-family:"NotoSerif", "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";font-size:16px; }

/*--------全体--------*/
.con1_right{
	background-image: url(./Dup/img/back01.jpg);
	background-size: cover;
}
#logo a img{max-width: 250px;}
#logo span{
	background-image: url(./Dup/img/back02.png);
    background-position: 0% 0%;
    background-size: auto;
    background-repeat: no-repeat;
}
header .trans_header { height: 90px;}
header .trans_logo{padding: 18px 33px 20px 25px;}
header .trans_logo a img{max-width: 150px;}
.top_header{
	background-image: url(./Dup/img/back01.jpg);
    background-size: cover;
    background-position: 100% 0%;
}
#header ul li a{font-size: 18px;}
.contents_bg.bg_color1 { background: linear-gradient(304deg, #e870af, #d82f84,#f582be);}
#contents2 .con2_wrap {
    box-shadow: 0 0 30px 30px rgba(204, 204, 204, 0.15);
}
#contents1 .con1_title{position:relative;}
#contents1 .con1_title::before{
	position: absolute;
    content: "";
    display: inline-block;
    width: 14em;
    height: 6em;
    background: url(./Dup/img/item_01.png) no-repeat;
    top: -50px;
    left: 49%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    background-size: contain;
    z-index: +1;
}
#contents2 .con2_left{position:relative;}
#contents2 .con2_left::before{
	    position: absolute;
    content: "";
    display: inline-block;
    width: 14em;
    height: 6em;
    background: url(./Dup/img/item_01.png) no-repeat;
    top: -50px;
    left: 12%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    background-size: contain;
    z-index: +1;
}
.more a:hover {border-color: #866768;}
.top_cms_bg{
	background-image: url(./Dup/img/back01.jpg);
    background-size: cover;
    background-position: 5% 50%;
}
#contents3 .con3_left{position:relative;}
#contents3 .con3_left::before{
	    position: absolute;
    content: "";
    display: inline-block;
    width: 14em;
    height: 6em;
    background: url(./Dup/img/item_01.png) no-repeat;
    top: -50px;
    left: 19%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    background-size: contain;
    z-index: +1;
}


.reserve_btn {
  max-width: 300px;
  margin: 50px auto 20px;
}
.reserve_btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  box-sizing: border-box;
  background: #fff;
  position: relative;
}
.reserve_btn a span {
        display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 70px;
    background: #fff;
    box-sizing: border-box;
    font-size: 20px;
    letter-spacing: 0.1em;
    text-decoration: none;
    box-shadow: 0px 5px 12px #cad4e2, -6px -6px 12px #fff;
    border-radius: 10px;
    position: absolute;
    top: -5px;
    left: 0;
    transition-duration: 0.2s;
}
.reserve_btn a:hover span {
  left: 0;
  top: 0;
  box-shadow: 0 0 4px #CAD4E2, -2px -2px 4px #FFF;
}

/*--------下層--------*/
#page_title::before{
 content: "";
  background: rgba(37, 34, 36, .25);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.page_title_bg.opacity04 { opacity: 0;}

#cms_5-b .cate_box .box_item, .cms_5-b .cate_box .box_item {
    padding: 20px 30px 1px;
}
#cms_5-b .cate_box .arrow, .cms_5-b .cate_box .arrow {display: none;}
#top_cms .open_bt,
#page06 .open_bt{
    position: relative;
    cursor: pointer;
/*    padding: 2% 3% 2% 50px;*/
    transition: all .5s ease;
}
#top_cms .open_bt::before,
#top_cms .open_bt::after,
#page06 .open_bt::before,
#page06 .open_bt::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #333;    
}
#top_cms .open_bt::before,
#page06 .open_bt::before{
    top:52%;
    left: 18px;
    transform: rotate(0deg);
	transition: all 0.5s;    
}
#top_cms .open_bt::after,
#page06 .open_bt::after{    
    top:52%;
    left: 18px;
    transform: rotate(-90deg);
	transition: all 0.5s;
}
#top_cms .open_bt.close::before,
#page06 .open_bt.close::before{
  transform: rotate(180deg);	
	transition: all 0.5s;
}
#top_cms .open_bt.close::after,
#page06 .open_bt.close::after{
	transform: rotate(-90deg);
	opacity: 0;
	transition: all 0.5s;
}
#top_cms .box_item,
#page06 .box_item{
	display: none;		
	background-color: rgba(243, 240, 247, .95);
}
#page08 .tel_box{
position: relative;
    overflow: hidden;
}
#page08 .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%;
}

#page08 .tel_box.bg_color2 {  background-color: #f5f1f1;}
#page08 .tel_box .font_bold { font-weight: 900;}

/*--------タブレット--------*/
@media screen and (max-width: 768px){
header .trans_header { height: 80px;}
header .trans_logo { padding: 13px 33px 20px 25px;}
.contents_wrap .contents_bg { width: 93%;}

}

/*--------スマートフォン--------*/
@media screen and (max-width: 667px){

#contents1 h2{
	line-height: 1.5;
    letter-spacing: 2px;
    font-size: 5.2vw;
}
	#contents2 .con2_left::before,
	#contents3 .con3_left::before{    
    width: 14em;
    height: 3em;
    top: -38px;
    left: 31%;
	}
.footer_bottom{padding:20px;}

#page_title{    background-position: 0% 0%;}
#cms_5-b .cate_box .open_bt .box_title1, .cms_5-b .cate_box .open_bt .box_title1 { margin-left: 87px;}

#page08 .tel_box:nth-of-type(2) a { font-size: 5.3vw;}
}

/*--------------------------------------------
IE
--------------------------------------------*/
@media all and (-ms-high-contrast:none){
#cms_5-b .cate_box .open_bt .box_title1::before, .cms_5-b .cate_box .open_bt .box_title1::before{top:-2px;}
#contact_tel a {padding:37px 30px 30px}
}


/*
#page05 .cate_title{	
  position: relative;
  padding: 0 65px;
  text-align: center;
}
#page05 .cate_title:before {
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 2px;
  content: '';
  background: #da006e;
}
#page05 .cate_title span {
  position: relative;
  padding: 0 1em;
  background: #fff;
}

#page05 .cate{
	position: relative;
	border-bottom: 2px solid #da006e;
}
#page05 .cate:before {
	position: absolute;
	top: calc(50% - 115px);
	left: 0;
	width: 2px;
	height: 92%;  
	content: '';
	background: #da006e;
}
#page05 .cate:after {
	position: absolute;
	top: calc(50% - 115px);
	right: 0;
	width: 2px;
	height: 92%;  
	content: '';
	background: #da006e;
}
*/