@charset "utf-8";
/*------ベース-----*/
/* web font */

@import url("https://fonts.googleapis.com/earlyaccess/notosansjp.css");/*Noto Sans JP*/
@import url("https://fonts.googleapis.com/earlyaccess/roundedmplus1c.css"); /*Rounded Mplus 1c*/

@import url('https://fonts.googleapis.com/css2?family=Jost:wght@400;500;700&display=swap');



h1,h2,h3,h4,h5,h6,a,ul,ol,li,td,th,dd,dt,dl,p,a{	max-height:999999px}

* {
	padding: 0;
	margin: 0;
}
html{
	scroll-behavior: smooth;
	font-size: 100%;
}

body {font-family:-apple-system, BlinkMacSystemFont,"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
	padding: 0;
	margin: 0;
	-webkit-text-size-adjust: none;
	line-height: 1.7;

}
.clear{
	clear: both;
	height: 0px;
	padding: 0;
	margin: 0;
	display: block;
	background-color: transparent;
	line-height: 1px;
}


aside{
	display:block;}

p {
	margin: 0 0px 1.5em;
}

a {
	border: none;
	text-decoration: none;
}
a:hover {
	transition: color 0.3s ease 0s;
	text-decoration: none;
}
a img {
	border: none;
}
a:hover img{
	text-decoration: none;
}
a:hover img {
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
	transition: opacity 0.6s ease;
}

img{max-width:100% !important;
	height:auto;}

table{ border-collapse:collapse;}


/*--※付きコメントにする dl and span-----*/



dl.kome{
	overflow:hidden;}

dl.kome dt{
	float: left;
}
dl.kome dd{
	padding: 0 0 5px 1.5em;
}


span.kome,p.kome{
	padding: 0 0 5px 1.5em;
	display: block;
	position: relative;
	margin: 5px 0 0 0;
	overflow: hidden;
}
span.kome::before,p.kome::before{
	content: "※";
	position: absolute;
	top: 0px;
	left: 0px;
}
.main_contents_full h2.white,
.main_contents_full h3.white,
p.white{color: #fff;}

.main_contents_full h3.white,
.main_contents_full h6.white{border-color: #fff;}

/*スペーサーブロック*/

.wp-block-spacer{
	display: block;
	height: 30px;
}

/*imageのシャドウ*/
.shadow img{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-box-shadow: 0px 0px 5px #888888;
	box-shadow: 0px 0px 5px #888888;
	border: 3px solid #FFFFFF;
}

.maru img{
	border-radius: 10px;
}

/*チェックリスト*/

ul.check {
	margin: 0 0 15px;
	padding-left: 0	!important;
}
ul.check li{font-weight: bold;
	list-style-type: none	!important;
	margin: 0 0 5px;
	padding: 0 0 5px 2em;
	background-image: url(../image/common/check.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: auto 1.5em;
}
ul.border li{ border-bottom: 1px dotted #999;
padding-bottom: 10px;
margin-bottom: 10px;}

ul.murasaki li a{display: block;
background: #803DA2;
background: linear-gradient(90deg, rgba(128, 61, 162, 1) 0%, rgba(201, 126, 215, 1) 100%);
color: #fff;
font-weight: bold;
padding: 5px 10px;
text-align: center;}
ul.murasaki li a:hover{opacity: 0.7;}

p.navy{background: #2A3C6B;
color: #fff;
font-weight: bold;
padding: 5px 10px;
text-align: center;}

/*----------------------------
				背景
-----------------------------------*/

.bg_blue{background:#2A3C6B;}
.bg_sejutsu{
	background:url("../image/top/bg_sejutsu.jpg") no-repeat center center;
	background-size: cover;
}
.bg_white{background:#fff;}

.bg_gray{background: #F5F5F5;}

.bg_navy{background:#41357E;}

.bg_navy_grade{background: #151E36;
background: linear-gradient(0deg, rgba(21, 30, 54, 1) 0%, rgba(42, 60, 107, 1) 100%);}

.bg_lightgreen{background: #F9FFEC;}


.bg_star{

background: url("../image/top/bg_star.jpg"),linear-gradient(0deg, rgba(140, 137, 179, 1) 0%, rgba(69, 71, 133, 1) 100%);
  background-size: cover;
		background-position: left top;
	background-repeat: no-repeat;	
}

.bg_purple_grade{background: #454784;
background: linear-gradient(0deg, rgba(69, 71, 132, 1) 0%, rgba(237, 220, 245, 1) 100%);}

.bg_purple{background: #F3EBF6;}

/*--使用するフォントの設定----------------------------------------------------*/


/*--明朝フォントセット--*/
.font_mi {
	font-family :"Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "HGS明朝E","メイリオ", "ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
	transform: rotate(.03deg);
}

/*--Noto Sans JP (web)--*/
.font_noto {
	font-family: 'Noto Sans JP';
}

/*--Rounded Mplus 1c (web)--*/
.font_round {
	font-family: 'Rounded Mplus 1c';
}

/*--游ゴシック--*/
.font_yugo {
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;
}

.main_contents_full h2.bg_none::before,
h3.bg_none{content:none;
background: none;
	background-color: transparent;
padding: 0;}

/*--ScrollTrigger----------------------------------------------------*/

.invisible,
.visible{
	transition: opacity 0.5s ease;
	opacity: 0.0;
}



/*--header----------------------------------------------------*/



.time table{background: #fff;
	width: 100%;
	margin: 0 0 5px;
	text-align: center;
	color: #000000;
	background-color: #FFFFFF;
	font-family: 'Noto Sans JP';
}
.time table th,
.time table th:first-of-type{
	padding: 5px 5px;
	
	background-color: #1093CC;
	border: none;
	color: #fff;
}
.time table th.time{background: #fff;
color: #000;}

.time table td{
	border:none;
	vertical-align: middle;
	text-align: center;
	padding: 5px 5px;
	color: #1093CC;
}

/*--footer----------------------------------------------------*/

footer p.copy{
	text-align: center;
	margin: 0;
	background-color:#2A3C6B;
	padding: 10px 0;
	color: #fff;
	font-size: 14px;
}

footer p.copy a,footer p.copy a:hover{color:#fff;
text-decoration: none;}








/* pc 設定*/


.topimg {
	width: 100%!important;
	position: relative;}

.topimg li img{
	position: relative;
}



.topimg img{
	display: block;
}


.padding50{
	padding:50px 0;
}


.padding80{
	padding-top:80px!important;
	padding-bottom:80px!important;
}

.space{
	display: block;
	clear: both;
	height: 40px;
}
.space80{
	display: block;
	clear: both;
	height: 80px;
}

.pink{
	color: #FF7272;
}
.orange{
	color: #F6AB00;
}

/*-eye------------------------------------------------



/*-info-----------------------------*/





/*-------------------------------
   TopicPath
-------------------------------*/
.topicpath,
#topicpath {
	padding: 6px 0;
	margin: 0 0 0px;
	color:#2A3C6B;
	width: 100%;
	font-weight: bold;
	overflow-wrap: break-word;
	background-color:#E9D4F3;

}
.topicpath .box,
#topicpath ul {
	list-style: none;
	padding: 0px 10px;
	margin: 0 auto;
	display: block;
	max-width: 1200px;
	font-size: 14px;
}
#topicpath ul li {
	display: inline;

}

#topicpath ul li:after{ content:"＞"}

#topicpath ul li:last-child:after{ content:none;}

.topicpath .box a,
#topicpath ul li a {
	color:#2A3C6B;
}

#topicpath ul li span {
}
#topicpath ul::after{content:"";
display: block;
clear: both;}
.topicpath .box strong.current{font-weight:normal}

	h1.midashi img{
	display: block;
	margin:0 auto;}


/*-------------------------------
   ページトップボタン
-------------------------------*/
#page_top{
  width: 60px;
  height: 60px;
  position: fixed;
  right: 0;
  bottom: 20px;
  opacity: 0.6;
}
#page_top a{
  width: 60px;
  height: 60px;
  text-decoration: none;
}
#page_top a::before{
	font-family: FontAwesome;
	content: '\f077';
	font-size: 60px;
	color:rgba(0,43,81,1);
}






/*-------------------------------
   よくある質問
-------------------------------*/

 dl.qa{
	margin: 0 0 20px;
}
 dl.qa dt{
	padding: 5px 0px 10px 60px;
	margin: 10px 0 10px 0;
	position: relative;
	color: #000;
	font-size: 110%;
	font-weight: bold;
}
 dl.qa dt::before {font-family:"Arial Black", Gadget, "sans-serif";
	content: "Q";
	background: #434583;
background: linear-gradient(0deg, rgba(67, 69, 131, 1) 0%, rgba(162, 124, 180, 1) 100%);
	color: #fff;
	width: 40px;
	height: 40px;
	text-align: center;
	
	display: block;
	position: absolute;
	 left: 0;
	 top: 0px;
	font-size: 20px;
	line-height: 40px;
	font-weight: bold;
}
 dl.qa dd{
	padding:0px 0px 20px 60px;
	margin: 0px 0px 40px;
	position: relative;
	border-bottom: 1px dotted #aaa;
	overflow: hidden;

}
 dl.qa dd::before {font-family:"Arial Black", Gadget, "sans-serif";
	content: "A";
background: #cf88c9;
background: linear-gradient(0deg, rgba(207, 136, 201, 1) 0%, rgba(230, 103, 158, 1) 100%);
	color: #fff;
	width: 40px;
	height: 40px;
	text-align: center;
	
	display: block;
position: absolute;
	 left: 0;
	 top: 0px;
	font-size: 20px;
	line-height: 40px;
	font-weight: bold;
}
 dl.qa dd:last-child{
	margin-bottom:10px;
}



/*-------------------------------
   ギャラリー
※ lightbox を利用している
-------------------------------*/

.gallery{
	display:block;
}

.gallery ul{
	overflow:hidden;
}
.gallery ul li{
	list-style-type: none;
	margin: 0 1% 20px;
	padding: 0;
	width: 48%;
	float: left;
}
.gallery ul li a img{
	margin: 0 auto;
	display: block;
}


#lightbox .lb-outerContainer {
	width:auto;
}
/*-------------------------------
   ギャラリー2
※ bxslider を利用している
-------------------------------*/


.gallery2{
margin: 0 auto
}
.gallery2 li{
text-align:center;
margin: 0 auto;}
.gallery2 li img{
	margin: 0 auto;
	display: block;
}

.custom-thumb{max-width: 910px;
	margin: -40px auto 0 auto;
	display:flex;
	align-items:center;
	justify-content:space-between;
	align-content:center;
	flex-wrap:wrap;
}
.custom-thumb a{
	width: 25%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 5px;
	margin: 0;
	box-sizing: border-box;
}


.gallery3 li img{
	text-align: center;
	margin: 0 auto;
	display: block;
	width: 100%;
}
 



/*-------------------------------
   contact 枠の設定
-------------------------------*/
.contact{
	width: 100%;
	height: 100%;
}
.contact iframe{
	width: 100%;
	height: 100%;
}





/*-スタッフ紹介2--------------------------*/

.staff{
	display:flex;
	flex-wrap:wrap;}

.staff .staffbox{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #FFFFFF;
	box-shadow: 0 0 4px #aaa;

}

.staff .staffbox figure{
	width: 95%;
	display: block;
}

.staff .staffbox dl dt{
	background-color:#2A3C6B;
	text-align: center;
	width: 4em;
	font-weight: bold;
	color: #FFFFFF;
	float: left;font-size: 90%;
}
.staff .staffbox dl dd{
	margin: 0 0 5px;
	padding: 0 0 5px 5em;
	border-bottom: 1px dotted #9675AD;
}

.staff .staffbox dl dd.name{color: #2A3C6B;
font-weight:bold;}
.staff .staffbox dl dd.name .kana{display: block;
color: #aaa;}


dl.voice{background:#fff;
box-shadow: 0 0 4px #004C66;
	border-radius: 10px}


dl.voice dt{color:#1476B7;
border-bottom:3px double #1476B7;
font-weight: bold;
font-family: 'Noto Sans JP';}
dl.voice dd:last-of-type,dl.voice:last-of-type{margin:0;}




.red{
	color: #FF0000;
}
.blue{color:#007ADF;}



p.message{font-size: 110%;
	margin: 0 0 30px 0;
font-weight:bold;
color:#673504;}


.marker{background:linear-gradient(transparent 50%, #FFE8FC 50%);}

/*-ツイッター　タイトル-------------------------*/
p.tw_title{
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-weight: bold;
	text-decoration: none;
	margin: 0 0 0px;
	display: block;
	font-size: 20px;
	padding: 0 0 0 30px;
	line-height: 30px;
	background-image: url("../image/common/tw_icon.png");
	background-position: left 3px;
	background-repeat: no-repeat;
	background-size: auto 24px;
	color: #000000;
	border-bottom: 2px solid #1EA1F2;
	transform: rotate(.03deg);
}

p.tw_title a:hover{
	opacity: 0.7;
}

/*-インスタグラム　タイトル-------------------------*/
p.insta_title{
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-weight: bold;
	text-decoration: none;
	margin: 0 0 10px;
	display: block;
	font-size: 20px;
	padding: 0 0 0 30px;
	line-height: 30px;
	background-image: url(../image/common/insta_icon.png);
	background-position: left 3px;
	background-repeat: no-repeat;
	background-size: auto 24px;
	color: #000000;
	border-bottom: 2px solid #F7006B;
	transform: rotate(.03deg);
}

p.insta_title a:hover{
	opacity: 0.7;
}


	
.link a,
.qa dd a{display: block;
	
	position: relative;
	
	font-weight: bold;
	padding:8px 30px 8px 20px;
		box-sizing: border-box;
	text-align: center;
	margin: 15px 0 0em 20px;
float: right;
background: #cf88c9;
background: linear-gradient(0deg, rgba(207, 136, 201, 1) 0%, rgba(230, 103, 158, 1) 100%);
	color: #FFFFFF;
text-shadow: 0 0 3px #333;}
	
.link a:after,
.qa dd a:after{content:"";
	display: block;
	width: 12px;
	height: 12px;
	background:url("../image/common/list03.png") no-repeat left top;
	background-size: contain;
	position: absolute;
		right:10px;
		top:35%;
	}	
	
.link a:hover,
.qa dd a:hover{background: #434583;
background: linear-gradient(0deg, rgba(67, 69, 131, 1) 0%, rgba(162, 124, 180, 1) 100%);
transition: 0.6s ease;
		color:#fff;
border-radius: 30px;}


.link a:hover:after,
.qa dd a:hover:after{background:url("../image/common/list03.png") no-repeat left top;
	background-size: contain;
	position: absolute;
		right:0px;
		transition: 0.6s ease;
	}
.link2{text-align: center;}
.link2 a{
	
	text-shadow: 0 3px 6px #753095;
	display: inline-block;
	margin: 0px auto;
	padding: 10px 70px 10px 50px;
	font-size: 110%;
	font-weight: bold;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background: #75339B;
background: linear-gradient(90deg, rgba(117, 51, 155, 1) 0%, rgba(217, 141, 226, 1) 100%);
	color: #FFFFFF;
	
	text-align: center;
	float: none;
	position: relative;
}

.link2 a:after{content:"";
display: block;
position: absolute;
right: 20px;
top:calc(50% - 10px);
background-image: url(../image/common/list02.png);
	background-repeat: no-repeat;
	background-position: 95% center;
	background-size: auto 12px;
width: 20px;
height: 20px;}

.link2 a:hover{background: #434583;
background: linear-gradient(0deg, rgba(67, 69, 131, 1) 0%, rgba(162, 124, 180, 1) 100%);
transition : all 0.6s ease 0s;
border-radius: 30px;}


.link2 a:hover:after{right:10px;
transition : all 0.5s ease 0s;}



.tel{text-align: center;}

.tel a{
	font-size:2em;
	line-height:2em;
	color:#3F417D;
	background-image: url(../image/common/tel.png);
	background-position: left 0.2em;
	padding: 0 0 0 0.95em;
	background-size: auto 0.8em;
	background-repeat: no-repeat;
	font-weight: bold;
	font-family:Arial, Helvetica, "sans-serif";
	white-space: nowrap;
}

	.shoplist .flexbox{background: #fff;
	padding: 10px;}

	.shoplist .flexbox h3,
.side_shoplist h2{border: none;
	
	text-align: center;
		background: #434583;
background: linear-gradient(90deg, rgba(67, 69, 131, 1) 0%, rgba(162, 124, 180, 1) 100%);
		color: #fff;
		font-weight: bold;
		padding: 5px 10px;
	}

.side_shoplist h2{margin-bottom: 10px;}

.shoplist .flexbox .more{margin: 0;}
	.shoplist .flexbox .more a{display: block;
	text-align: center;
	color: #494987;
	border: 1px solid #494987;
	padding: 5px;
	font-weight: bold;
	margin: 0;}

div.blogmenu,
.side_shoplist{border: 1px solid #1C3372;
	background: #FFFFFF;
	margin: 0 0 30px;
	padding: 10px;
}


div.blogmenu ul{
	padding: 0 0px;

}
div.blogmenu ul li{
	margin: 0 0 10px;
	padding: 0 0 10px;
	border-bottom: 1px dotted #aaa;
}

div.blogmenu ul li a{color: #666;
font-weight: bold;}


/* ウィジェットの見出し */
div.blogmenu h2{
	color: #1C3372;
	border-bottom: 2px solid #1C3372;
	background: none;
	background-color: #fff;
	padding: 5px;
	margin: 0px 0px 15px 0px;
	font-weight: bold;
	border-radius: 0px;
	text-align: left;
	font-size: 1.1em;
}
div.blogmenu label {
	display: none;
}

div.blogmenu ul li > ul{background:#E4D5EB;
	padding: 10px 10px 10px 10px;
	margin: 10px 0}
	
div.blogmenu ul li a{display: block;}
div.blogmenu ul li a:hover{opacity: 0.7;}
div.blogmenu ul li > ul li{padding-bottom: 0;}
	
div.blogmenu ul li > ul li{
	padding: 0 0 5px 15px;
	margin:0 0 5px 0;
	border-bottom: 1px dotted #666;
	background-size: auto 10px;	
	
	}
.side_shoplist .tel{text-align: center;}
.side_shoplist .tel a{font-size: 2em;}

.side_shoplist .aligncenter{margin-bottom: 10px;}

.side_shoplist ul.imgbox3{justify-content: center;
margin:0 10px 10px 10px;}
.side_shoplist ul.imgbox3 li{margin:0 5px;
width:calc(30% - 10px);}