﻿@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;1,400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Allura&display=swap');
#pc_nav li a, .overlay .overlay-nav .en, .cms_title h3, #intro h2, .top_title h2, .patrima, .more .more_item {
    font-family: 'EB Garamond', serif;letter-spacing: 2px;
}
#pc_nav ul li:nth-child(4) a {
    padding-left: 24px;
}
.filter, .filter2 {
    display: none;
}
.map {
    display: none;
}
.info_btn_wrap {
    margin-bottom: 10px;
}
.overlay .overlay-nav .top li:nth-child(4) .en {
    padding-right: 26px;
}
#pc_nav ul li:nth-child(4) a:before, .overlay .overlay-nav .top li:nth-child(4) .en:before {
    content: "\f07a";
    top: -1px;
    left: 0;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: block;
    position: absolute;
}
.overlay .overlay-nav .top li:nth-child(4) .en:before {
    content: "\f35d";
    position: absolute;
    right: 0px;
    left: auto;
    top: inherit;
}
#intro_wrap {
    background-image: url(Dup/img/top_png.png);
    background-repeat: no-repeat;
    background-position: 18% 50%;
    background-size: 33%;
}
.con_txt, .intro_title, .modal_title2 {
font-family: 'Shippori Mincho', serif;
}
#intro .con_title, #contents .con_title, .intro_title {
    font-family: 'Shippori Mincho', serif;
    font-size: 30px;
    margin-bottom: 10px;
    text-align: left;
}
#intro .con_title, .kazari_en {
    font-family: liana,script;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0;
    font-size: 46px;
    text-align: left;
    line-height: 1;
    color:#d4a0ff;
    /*font-family: 'Allura', cursive;*/
}
.catch {
    color: #fff;
    top: 19%;
    right: 14%;
    font-size: 31px;
    font-family: 'Shippori Mincho', serif;
    letter-spacing: 3px;
    -webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.catch span {
    margin-top: 89px;
}
svg{
	max-width:194.62px;
	width:100%;
	height:auto;
	display: none;
}
#mask .st0 {
    fill: none;
    stroke: #9966c3;
    stroke-miterlimit: 10;
    stroke-width: 14px;
	 stroke-dasharray: 1500; 
    stroke-dashoffset:1500;
}
/*#contents_wrap {*/
/*    background-image: url(Dup/img/pearl2.png);*/
/*    background-repeat: no-repeat;*/
/*    background-size: 26% auto;*/
/*    background-position: 0 -13px;*/
/*}*/
/*#top_cms_wrap {*/
/*    background-image: url(Dup/img/pearl.png);*/
/*    background-repeat: no-repeat;*/
/*    background-size: 25% auto;*/
/*    background-position: 100% 0;*/
/*}*/
.blur {
    position: relative;
}
/*#top_cms_wrap {*/
/*    background-image: url(Dup/img/pearl.png), url(Dup/img/pearl3.png);*/
/*    background-repeat: no-repeat;*/
/*    background-size: 25% auto, 28% auto;*/
/*    background-position: 100% 0, left 0% bottom -2px;*/
/*}*/
#footer_nav {
    position: absolute;
    bottom: 0;
    width: 100%;
}
#page6 .cate_txt1 {
    padding: 2%;
    background: rgb(255 255 255 / 15%);
}
.cms_title {
    text-align: center;
    position: relative;
    margin-bottom: 65px;
}
.cms_title:before {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background: #9966c3;
    bottom: -10px;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    transition: all 1.2s;
    transition-delay: 0.3s;
}
.cms_title.active:before {
width: 60px;    
}
.cms_title svg {
    position: absolute;
    bottom: -13px;
    left: 0;
    right: 0;
    margin: auto;
    width: 74px;
}
.cms_title h3 {
    font-size: 44px;
    padding-bottom: 6px;
}
/* -----------HEADER ------------------*/
#header {
    padding-top: 17px;
    padding-bottom: 17px;
    background: rgba(255,255,255,0);
    transition: all 0.5s;
}
.scr_header #header {
    background: rgba(255,255,255,0.5);
}
.logo_w {
    opacity: 1;
    position: absolute;
    left: 35px;
}
.scr_header .logo_w {
    opacity: 0;
}
.logo_nomal {
    opacity: 0;
}
.scr_header .logo_nomal {
    opacity: 1;
}
#pc_nav li a {
    font-size: 16px;
    color: #fff;
}
.scr_header #pc_nav li a {
    color: #9966c3;
}
.menu-trigger-bar {
   background-color: #fff; 
}
.scr_header .menu-trigger-bar {
   background-color: #9966c3; 
}
.menu-trigger {
    top: 67%;
}
.close-trigger {
    top: 74%;
}
.menu-trigger-bar {
    height: 2px;
}
.close-trigger-bar {
    height: 2px;
}


body {
    line-height: 1.9;
    font-size: 83%;
}
#main_img .scr, #page_title_img .scr {
    color: #fff;
}
.intro_title {
color: #9966c3; 
}
#intro .con_title {
    font-size: 64px;
    line-height: 1;
}
#intro .con_title/*, #contents .con_title*/ {
    color: #cab8d9;
}
#logo {
    padding-left: 25px;
}

/**/

.top_title h2 > span {
   padding-top: 0;
}
.top_title h2 > span:before {
    width: 58px;
    height: 2px;
    position: absolute;
    top: 57%;
    left: -83px;
}
.top_title .rotate_txt span {
     transform: inherit; 
     display: inline-block;
}
.top_title h2 {
    top: auto;
    bottom: -15px;
    color: #fff;
}
.top_title h2.left {
    left: 94px;
}
.top_title .left > span:before {
    left: -67px;
}
#page10 .con_box ul {
    border-color: #9966c3;
}
/* --------------end ------------*/
/*.intro_title, .con_txt {*/
/*font-size: calc(1rem + 8px);*/
/*}*/
#cms_1-a .date {
    width: 116px;
    background: #9966c3;
    color: #fff;
    border: 0;
    padding: 4px;
}

.top_cms_box {
    /*background: rgba(255, 255, 255, 0.22);*/
    border-color: #dac2ed;
    border: 0;
}


.more .more_item {
color: #824baf;
border-color: #bb8fdf;
margin-right: 0;
 text-transform: uppercase
}
.more .more_item:before {
    background-color: transparent!important;
}
.more .more_item:after {
    background: #bb8fdf;
}
.more .more_item:hover {
    color: transparent;
    border-color: #bb8fdf;
}
.more .more_item:hover .icon-right.after:after {
    color: #bb8fdf;
}
.info_btn_wrap a, .overlay .overlay-nav .bottom a {
    background: #fbf6ff;
    color: #9468b5;
}
.info_btn_wrap a:hover, .overlay .overlay-nav .bottom a:hover {
    color: #fff;
}
.overlay .overlay-nav .bottom a:hover {
    color: #fff;
    background-color: #cab8d9;
}
#footer_info {
    background: #fff;
}
#copyright {
    background: #fbf6ff;font-size: 12px;
}


.overlay .overlay-nav ul.top a:after, .overlay .overlay-nav ul.middle a:after {
    height: 1px;
}

.overlay .overlay-nav .top .en {
    font-size: 16px;
}

@media screen and (max-width: 768px){
#main_img {
    height: 100vh;
}
.top_cms_box {
    padding-left: 0;
    padding-right: 0;
}
}
@media screen and (min-width:667px) and ( max-width:768px) {
       #footer_info {
    padding-top: 20px;
    padding-bottom: 20px;
} 
}


@media screen and (max-width: 667px){
    .catch {
    font-size: 28px;
}
.kazari_en {
    margin-top: 11px;
}
#intro_wrap {
    background-image: url(Dup/img/top_png_sp.png);
    background-position: 50% 1%;
    background-size: 85%;
    padding-top: 61%;
}
.cate_list li:nth-of-type(4n) {
    margin-right: inherit;
}
.more .more_item {
    margin-right: auto;
}
#contents .con_title {
    font-size: 20px;
}
.top_title h2.left {
    left: 66px;
    width: 100%;
}
#intro .con_title {
    font-size: 46px;
}
.modal-open {
    margin-top: 20px;
}
.menu-trigger {
    top: 70%;
}
.close-trigger {
    top: 82%;
}
.intro_title {
    font-size: 22px;
}
#contents_wrap {
    background-size: 43% auto;
}
#top_cms_wrap {
    padding-left: 4%;
    padding-right: 4%;
    background-size: 36% auto, 44% auto;
}
.cms_title h3 {
    font-size: 31px;
    padding-bottom: 2px;
}
.con_box.pd_5per {
    padding: 3%;
}
.top_title h2 {
    font-size: 47px;
    top: auto;
    bottom: -7px;
    color: #fff;
}
.cms_6-c .box_wrap {
    padding-left: 0;
    padding-right: 0;
}
.info_txt {
    padding-right: 9%;
}
#logo2 {
    max-width: 74%;
    margin: 10px auto 27px;
}
#logo {
    padding-left: 10px;
}
.logo_w {
    left: 20px;
}
#page_title .en {
    left: 3%;
}
#page_title .en {
    font-size: 38px;
    padding-left: 18px;
}
}






























/* ---------------------------------------------------------------------------------------------------------------------------------------- */
.qa_type1 .cate_box {
	border: 1px solid #a272c5;
}
.qa_type1 .cate_box .arrow {
	position: absolute;
	left: 2px;
	top: 50%;
	margin-top: 0px;
	transform: translateY(-50%);
}
.qa_type1 .cate_box .open_bt{
	position: relative;
	width: 100%;
	cursor: pointer;
	padding: 20px 0
}
.qa_type1 .cate_box .open_bt .arrow::before, .qa_type1 .cate_box .open_bt .arrow::after {
	position: absolute;
	content: '';
	width: 15px;
	height: 1px;
	background-color: #a272c5;
}
.qa_type1 .cate_box .open_bt .arrow::before {
	top: 48%;
	left: 15px;
	transform: rotate(0deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .arrow::after {
	top: 48%;
	left: 15px;
	transform: rotate(90deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .arrow.arrow_be::before {
	transform: rotate(-135deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .arrow.arrow_be::after {
	transform: rotate(135deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .box_title1 {
	display: inline-block;
	position: relative;
	letter-spacing: 1px;
	cursor: pointer;
	margin-left: 87px;
}
.qa_type1 .cate_box .open_bt .box_title1::before {
	content: "Q.";
	position: absolute;
	left: -32px;
	top: 0px;
	display: inline-block;
	vertical-align: baseline;
	color: #55b1ff;
}
.qa_type1 .cate_box .box_item {
	display: none;
	padding: 0px 8px 0px;
}
.qa_type1 .cate_box .box_txt1 {
	padding: 1em;
	background-color: #fff;
}

@media screen and (max-width: 768px){
.qa_type1 .cate_box .open_bt .box_title1 {
	padding-right: 20px;
}
}
@media screen and (max-width: 667px){
.qa_type1 .cate_box .open_bt {
	padding: 5px 0 7px;
}
.qa_type1 .cate_box .open_bt .box_title1 {
	margin-left: 73px;
}
.qa_type1 .cate_box .box_txt1 {
padding: 0.5em 1em;
}
.qa_type1 .cate_box .open_bt .box_title1::before {
    left: -24px;
    top: -1px;
}
}



@media all and (-ms-high-contrast: none) {
#cms_1-a .date {
padding: 6px 4px 1px;
}
.pager li a {
    padding-top: 16px;
}
.qa_type1 .cate_box .open_bt .box_title1 {
margin-top: 4px;
}
.info_btn_wrap a, .overlay .overlay-nav .bottom a {
    padding-top: 16px;
}
.qa_type1 .cate_box .box_txt1 {
    padding-top: 1.4em;
}
}








/* -----------------0427 ---------------------*/
#loading {
    background-color: #000;
}
.blur {
    background: #000;
}
.txt_white, .hvr_txt_white:hover {
    color: #ffffff;
}
#footer_info {
    background: #000;
}
#copyright {
    background: #000000;
}
.bg_white, .hvr_bg_white:hover {
    background-color: black;
}
.qa_type1 .cate_box .open_bt .box_title1::before {
    color: #6a5e42;
}
.qa_type1 .cate_box .box_txt1 {
    background-color: #6a5e42;
}
.more .more_item {
    color: #ffffff;
}
.modal-box .inner, .modal-box:before {
    background: #000;
}
/*#intro .intro_photo h2, .top_title h2 {*/
/*    color: #6a5e42;*/
/*}*/
#intro .intro_photo h2, .top_title h2 {
    color: rgb(0 0 0 / 57%);
    display: none;
}
.top_title h2 > span:before {
    background-color: #6a5e42;
}
header.border_color3 {
    border-color: #000;
}
.scr_header #header {
    background: rgb(0 0 0 / 88%);
}
.cate_list li a {
    background-color: #6a5e42;
}
.cate_list li a:hover {
    background-color: #a59368;
}
.border_color4, .hvr_border_color4:hover {
    border-color: #6a5e42;
}
.bg_color4, .hvr_bg_color4:hover {
    background-color: #6a5e42;
}
#pc_nav li a, .scr_header #pc_nav li a {
    color: #a79670;
}
.logo_nomal.width_300-max, .logo_w.width_300-max {
max-width: 347px;
}










	#loopslider {
    margin: 0 auto;
    width: 100%;
    height: 280px;
    text-align: left;
    position: relative;
   overflow: hidden;
    /*overflow-x: scroll;スクロールバーあり*/
}
 
#loopslider ul {
    height: 264px;
    float: left;
    display: inline;
    overflow: hidden;
}
 
#loopslider ul li {
    width: 360px;
    float: left;
    display: inline;
    overflow: hidden;
}
#loopslider ul li figure {
	margin: 0 8px
}
#loopslider .square_img img {
	top: 42%;
}
#loopslider ul:after {
    content: ".";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden;
}
 
#loopslider ul {
    display: inline-block;
    overflow: hidden;
}
@media(max-width: 667px) {
    .logo_nomal.width_300-max, .logo_w.width_300-max {
    max-width: 248px;
}
    #loopslider_wrap, #loopslider_wrap ul {
        width: 1000px;
    }
		#loopslider {
    height: 150px;
}
#loopslider ul {
    height: 134px;
}
#loopslider ul li {
    width: 200px;
}
}
/* fix_banner -------------------------------------- */
.fix_banner{
	max-width: 300px;
	position: fixed;
	bottom: 10px;
	right: 70px;
	z-index: 10;
	transition: 0.5s;
}
.fix_banner .close_bt {
    position: absolute;
    bottom: 77px;
    right: 277px;
    display: block;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    transition: 0.5s;
    background-color: #fff;
    /* border: solid 2px #ddc21b; */
    z-index: 11;
    cursor: pointer;
}
.fix_banner .close_bt:hover{opacity: 0.7;}
.fix_banner .close_bt span{
	position: relative;
	display: block;
	width: 30px;
	height: 30px;
}
.fix_banner .close_bt span:before,.fix_banner .close_bt span:after{
	content: "";
	display: block;
	background-color: #221e03;
	height: 4px;
	width: 20px;
	position: absolute;
	top:50%;
	left: 50%;
}
.fix_banner .close_bt span:before{
	-ms-transform: translate(-50%,-50%) rotate(-45deg);
	-webkit-transform: translate(-50%,-50%) rotate(-45deg);
	transform: translate(-50%,-50%) rotate(-45deg);
}
.fix_banner .close_bt span:after{
	-ms-transform: translate(-50%,-50%) rotate(45deg);
	-webkit-transform: translate(-50%,-50%) rotate(45deg);
	transform: translate(-50%,-50%) rotate(45deg);
}
.fix_banner.close{right: -450px;}
.fix_banner.close2{right: -450px;}
@media  screen and (max-width: 768px){
.fix_banner{max-width: 300px;}
.fix_banner .close_bt {
    bottom: 75px;
    right: 277px;
}
}
@media  screen and (max-width: 667px){
.fix_banner{max-width: 54%;
    right:23%;
}
.fix_banner .close_bt {
    width: 22px;
    height: 22px;
    bottom: 52px;
    right: 93%;
}
.fix_banner .close_bt span {
    width: 22px;
    height: 22px;
}
}
/* fix_banner end -------------------------------------- */

.intro_txt {
    font-family: 'Shippori Mincho', serif;
}
#intro .intro_right {
    font-family: 'Shippori Mincho', serif;
}

/*2025/11/28 FV*/
.catch {
    font-size: 40px;
}
@media  screen and (max-width: 667px){
.catch {
    font-size: 32px;
}
}