/*
Theme Name: kyobeni-hakama
Theme URI: http://amo-amo.com/
Author: AMOAMO
*/

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500&family=Roboto:wght@400;500;700&family=Zen+Old+Mincho:wght@500;600&display=swap');

/* リセット
================================================== */
* {margin: 0; padding: 0;}
.pc_no, .pcm_no{display:none;}

*::after,
* {-webkit-box-sizing: border-box; -moz-box-sizing: border-box;	box-sizing: border-box;}

ul{padding: 0; margin: 0;}
li{padding: 0; margin: 0; list-style-type:none;}
img{border:none;-webkit-backface-visibility: hidden;}
a {
	-webkit-transition: .4s;
	transition: .4s;	
	outline: none;
}
/* 共通
================================================== */
a:link{color: #444; text-decoration: none;}
a:visited{color: #444; text-decoration: none;}
a:active{color: #444; text-decoration: none;}
a:hover{color: #524f4f; text-decoration: none;}
a img:hover,
a:hover img{filter: alpha(opacity=80);-moz-opacity:0.80;opacity:0.80;}

a.link_fc:hover{color: #b9234b; text-decoration: underline;}

img.no_opa:hover {
	opacity: 1.0;
	filter:progid:DXImageTransform.Microsoft.Alpha(Style=0,Opacity=100,FinishOpacity=100);
}

/* 画像のみ中央 */
img.center_img{
	display: block;
 	margin-left: auto;
 	margin-right: auto;
}
img.w100{width:100%; height:auto; vertical-align:top;}

/* 背景ドット */
.bk_dot_blue{background : url("images/bk_dot_blue.png") repeat center;}
/* 背景色 */
.bk_dgray{background-color: #524f4f; width:100%;}
.bk_gold{background-color: #b5a462; width:100%;}
.bk_blue{background-color: #5c9eac; width:100%;}
.bk_pink{background-color: #eb9b9a; width:100%;}
.bk_lyw{background-color: #fcf6e0; width:100%;}
.bk_lblue{background-color: #e8f6f9; width:100%;}
.bk_lblue2{background-color: #edf1f6}
.bk_lpink{background-color:#fdf7f8;}
.bk_f01{background: url("images/bk_f01.jpg") repeat center top;}
.bk_grpink{
	width:100%;
 	background: -moz-linear-gradient(top, #ffffff 40%, #fdf7f8 40%, #fdf7f8 100%);
  	background: -webkit-linear-gradient(top, #ffffff 40%, #fdf7f8 40%, #fdf7f8 100%);
  	background: linear-gradient(to bottom, #ffffff 40%, #fdf7f8 40%, #fdf7f8 100%);		
}
.bk_grpink30{
	width:100%;
 	background: -moz-linear-gradient(top, #ffffff 30%, #fdf7f8 30%, #fdf7f8 100%);
  	background: -webkit-linear-gradient(top, #ffffff 30%, #fdf7f8 30%, #fdf7f8 100%);
  	background: linear-gradient(to bottom, #ffffff 30%, #fdf7f8 30%, #fdf7f8 100%);		
}
.bk_grpink45{
	width:100%;
 	background: -moz-linear-gradient(top, transparent 45%, #f9f7f7 45%, #f9f7f7 100%);
  	background: -webkit-linear-gradient(top, transparent 45%, #f9f7f7 45%, #f9f7f7 100%);
  	background: linear-gradient(to bottom, transparent 45%, #f9f7f7 45%, #f9f7f7 100%);	
	padding-bottom:50px;	
}

/* レイアウト */
.txt_center, .pc_txt_center{text-align:center}
.txt_left{text-align:left}
.txt_right{text-align:right}
.fl_left{float: left;}
.fl_right{float: right;}
.clear{clear: both;}
.pos_re{position:relative}

.mt5{margin-top:5px;}
.mt10{margin-top:10px;}
.mt15{margin-top:15px;}
.mt20{margin-top:20px;}
.mt30{margin-top:30px;}
.mt40{margin-top:40px;}
.mt50{margin-top:50px;}
.mt70{margin-top:70px;}
.mt100{margin-top:100px;}

.mb5{margin-bottom:5px;}
.mb10{margin-bottom:10px;}
.mb15{margin-bottom:15px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}

.mr10{margin-right:10px;}
.mr15{margin-right:15px;}

.ml10{margin-left:10px;}
.ml15{margin-left:15px;}

.pt10{padding-top:10px;}
.pt20{padding-top:20px;}
.pt30{padding-top:30px;}
.pt40{padding-top:40px;}
.pt50{padding-top:50px;}
.pt60{padding-top:60px;}
.pt70{padding-top:70px;}
.pt80{padding-top:80px;}
.pt90{padding-top:90px;}
.pt100{padding-top:100px;}

.pb30{padding-bottom:30px;}
.pb50{padding-bottom:50px;}
.pb70{padding-bottom:70px;}
.pb80{padding-bottom:80px;}
.pb100{padding-bottom:100px;}
.pb150{padding-bottom:150px;}

.ptb20{padding:20px 0;}
.ptb30{padding:30px 0;}
.ptb50{padding:50px 0;}
.ptb70{padding:70px 0;}
.ptb10070{padding:100px 0 70px;}
.round_5{
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

/* 文字系 */
.marker{
	background: linear-gradient(transparent 60%, #fff799 60% );
	font-weight: bold; 
}
.fw_bold{font-weight: bold; }

.fc_wht{ color: #fff!important;}
.fc_gold{ color:#a4924a;}
.fc_blue{ color:#5c9eac;}
.fc_pink{ color:#c34264;}
.fs_12{font-size:12px}
.fs_14, .fs_sp14{font-size:14px; line-height:1.6em}
.fs_15{font-size:15px}
.fs_16{font-size:16px}
.fs_18{font-size:18px}
.ls0{letter-spacing:0!important;}
.ls005{letter-spacing: 0.05em;}
.ls01{letter-spacing: 0.1em;}
.ls03{letter-spacing: 0.3em;}
.ls05{letter-spacing: 0.5em;}

.ff_mnc{
	font-family: 'Zen Old Mincho','游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
	font-weight:500;
	letter-spacing:-0.05em;
}
.ff_gsk{
	font-family: 'Roboto', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-weight:bold;	
}
.ff_ensan{
	font-family: 'Outfit', sans-serif;
	font-weight:500;
}
/* メイン
================================================== */
body {
	font-family: 'Roboto', "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	color: #444444;
	font-size: 15px;
	-webkit-text-size-adjust: none;
	line-height: 1.7em;
	font-weight:400;
}
/* ページレイアウト
================================================== */
.page_w100{
	clear:both;
	width:100%;
	margin:0 auto;
}
.page_contents{
	clear:both;
	width:85%;
	max-width:1400px;
	margin:0 auto;
}
.page_contents85{
	clear:both;
	width:85%;
	max-width:1100px;
	margin:0 auto;
}
.page_contents100{
	clear:both;
	width:100%;
	max-width:1100px;
	margin:0 auto;
}
.flex_wp,
.flex_wp_mpc,
.flex_wp_sp{
	display:flex;
	justify-content: space-between;
}
@media screen and (max-width: 960px) {
	.flex_wp_mpc{display:block}
}
.flex_center{align-items: center;}
.flex_end{align-items: flex-end;}
.flex_wrp{flex-wrap: wrap;}
.bk_lylw{background:#fcfbf5}
.ss_title{font-size:16px; letter-spacing:0.08em; color:#666;}
.sm_title{font-size:24px; letter-spacing:0.08em;}
.en_title{font-size:12px; letter-spacing:0.1em; color:#999;}
/* タイトル
================================================== */
.stp_title{
	display:inline-block;
	font-size: 32px;
	padding: 0.5em 2em 0.3em 2.3em;
	background-image: url("images/bk_l.png"), url("images/bk_r.png");
	background-size:40px auto, 40px auto;
	background-repeat:no-repeat,no-repeat;
	background-position:left bottom, right bottom;
	text-align: center;
	letter-spacing:0.05em;
}
@media screen and (max-width: 1300px) {
	.stp_title{
		font-size: 28px;
	}
}
.stp_title_m{
	display:inline-block;
	font-size: 28px;
	padding: 0.7em 2.2em 0.2em;
	background-image: url("images/bk_l.png"), url("images/bk_r.png");
	background-size:30px auto, 30px auto;
	background-repeat:no-repeat,no-repeat;
	background-position:left bottom, right bottom;
	text-align: center;
	margin-bottom:15px;
}
.stp_title_s{
	display:inline-block;
	font-size: 16px;
	padding: 0.7em 2.2em 0;
	background-image: url("images/bk_l.png"), url("images/bk_r.png");
	background-size:25px auto, 25px auto;
	background-repeat:no-repeat,no-repeat;
	background-position:left bottom, right bottom;
	text-align: center;
	letter-spacing:0.05em;
	margin-bottom:10px;
}
.page_entl{
	font-family: 'Outfit', sans-serif;
	font-weight:500;
	letter-spacing:0.05em;
	font-size:30px;
	margin-bottom:0.5em;
}

/* ボタン
================================================== */
a.bkbc_btn{
	padding:1.3em 5.5em 1.3em 4em;
	background : url("images/arw_pink.png") #524f4f no-repeat right 2.5em center;
	background-size: 25px auto;
	font-size: 16px;
	border-radius:50px;
	color:#fff;
}
a.bkbc_btn:hover{
	background : url("images/arw_wht.png") #b9234b no-repeat right 2.3em center;
	background-size: 25px auto;
}

a.red_link{
	font-size: 14px;
	background : url("images/arw_red_b.png") no-repeat right 0.5em top 0.3em;
	background-size: 18px auto;
	border-bottom: 2px dotted #c14163;
	color:#b9234b;
	padding:0 2.5em 0.3em 0.2em;
}
a.red_link:hover{
	background : url("images/arw_red_b.png") no-repeat right 0.2em top 0.3em;
	background-size: 18px auto;
}

a.linedot{
	border-bottom: 2px dotted #999;
	padding:0 2em 0.2em 0.2em;
	font-weight:bold;
	background : url("images/arw_red.png") no-repeat right 0.4em center;
	background-size: 16px auto;	
}
a.linedot:hover{
	border-bottom: 2px dotted #666;
	color:#222;
	background : url("images/arw_red.png") no-repeat right 0.2em center;
	background-size: 16px auto;		
}
/* ヘッダー
================================================== */
#header {
  width:100%;
  z-index: 999;
  position: fixed;
  top: 0;
  left: 0;
  background: #fff;
  box-shadow: 0px 3px 15px rgba(0,0,0,0.2);
}
#headnavi{
  width:95%;
  max-width:1300px;
  margin:0 auto;
  position:relative;	
}
#header_info{
  position:absolute;
  top:-2px;
  right:0;
  width:750px;
}
#header_info ul{display:flex; justify-content: flex-end;}
#header_info ul li{ height:45px;}
#header_info ul li.h_tel{
  font-size:14px;
  padding:1.2em 2em 0.4em 0;
  vertical-align:middle;
}
#header_info ul li span.tp_n{
	background : url("images/tel_red.png") no-repeat left center;
	background-size: 23px auto;	
	font-size:22px;
	padding-left:26px;
	margin-left:0.4em;
}
#header_info ul li.h_mail a{
	line-height:45px;
	padding:1em 1.7em 0.7em 3.7em;
	background : url("images/mail_wt.png") #524f4f no-repeat left 1.4em top 1.1em;
	background-size: 20px auto;
	color:#fff;
	letter-spacing:0.05em;
	border-radius: 0 0 5px 5px;
}
#header_info ul li.h_mail a:hover{
	background : url("images/mail_wt.png") #b9234b no-repeat left 1.4em top 1.1em;
	background-size: 20px auto;
}
#gNav a:hover { color: #999;}
nav .sub-menu,.mean-container .mean-nav ul ul { background:rgba(255,255,255,0.9);}
.h_logo{
	width: 20%;  
	max-width: 240px;
	padding-top: 20px; 
	}
.h_logo img {width:100%; height:auto;}
#h_top {
    display: flex;
    justify-content: space-between;
}
#gNav{padding-top:48px; font-size:15px;}	
#gNav ul {
    position: relative;
    display: flex;
}
#gNav li {
    position: relative;
    margin-right: 3em;
}
#gNav li:last-child {
    margin-right: 0;
}
#gNav li i {
    font-size: 14px;
    margin-left: 10px;
}
#gNav li a {
    position: relative;
    display: block;
    text-align: center;
	padding:15px 0;
}
#gNav .sub-menu {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    display: block;
    position: absolute;
    top: 50px;
    left: 50%;
    margin-left: -100px;
    width: 200px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
  #gNav .sub-menu a {
    padding: 13px;
    display: block;
    border-bottom: none;
    line-height: 1.2em;
}
#gNav .sub-menu a:hover:after {
    content: none;
}
#gNav .sub-menu li {
    display: block;
    font-size: 14px;
    padding: 0;
    margin: 0;
}
#gNav .sub-menu li:last-child { border-bottom: none; }
#gNav ul > li:hover {
    -webkit-transition: all .4s;
    transition: all .4s;
}
#gNav ul > li:hover a,#gNav .current-menu-item a,#gNav .current-menu-parent a {
    color: #c3385d;
}
#gNav li:hover ul.sub-menu {
    top: 50px;
    visibility: visible;
    opacity: 1;
    z-index: 9999;
	font-size:14px;
}
#gNav li ul li:after {
    content: none;
}
 #gNav li:hover ul.sub-menu a {
    color: #444;
	font-size:14px;
}
#gNav .sub-menu li a:hover {
    background: #fff;
	color: #c3385d!important;
}
#gNav .contact_btn a:hover {
    color: #b9234b;
}
@media screen and (max-width: 1100px) {
	#gNav li { margin-right: 2.5em;}
}
@media screen and (max-width: 1000px) {
	#h_top {display: block;}
	.h_logo{width: 18%;	padding-top: 17px; }
	#gNav{	padding-top:0;}
	#gNav li a { padding:12px 0; }
	#header_info{width:620px;}
	#header_info ul li span.tp_n{
		background : url("images/tel_red.png") no-repeat left center;
		background-size: 20px auto;	
		font-size:18px;
		padding-left:24px;
	}
	#header_info ul li.h_mail a{
		line-height:45px;
		font-size:14px;
		padding:1em 1.2em 0.7em 3em;
		background : url("images/mail_wt.png") #524f4f no-repeat left 1em top 1.1em;
		background-size: 20px auto;
	}
	#header_info ul li.h_mail a:hover{
		background : url("images/mail_wt.png") #b9234b no-repeat left 1em top 1.1em;
		background-size: 20px auto;
	}
}
@media only screen and ( max-width : 768px ) {
  #header {
    padding: 5px 0;
    width:100%;
	  height:60px;
  }
	nav li a { font-size: 15px; color:#b9234b;}	
  .h_logo {
    width: 150px;
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 99999;
	padding-top: 0; 
  }

  #gNav .nav {
    overflow-y: auto;
    height: 100vh;
  }
  .mean-nav .container {
    padding: 0;
  }
  nav li .fa {
    display: none;
  }
	nav .sub-menu,.mean-container .mean-nav ul ul {
 	 background:#c3385d;
		color:#fff;
	}	
}

/* サイド固定バナー
================================================== */
.fixed_side { 
	position: fixed;
	top: 55%;
	right: 0;
}
.fixed_side ul li img{width:55px; height:auto; margin-bottom:0.5em;}
@media screen and (max-width: 1300px) {
	.fixed_side ul li img{width:50px; height:auto;}
}
/* TOPスライダー
================================================== */
.top_wp{
	clear:both;
	margin-top:100px;
	width:100%;
	background: -moz-linear-gradient(top, #fff 35%, #fcf9f2 35%, #fcf9f2 100%);
  	background: -webkit-linear-gradient(top, #fff 35%, #fcf9f2 35%, #fcf9f2 100%);
  	background: linear-gradient(to bottom, #fff 35%, #fcf9f2 35%, #fcf9f2 100%);
}
.top_wp_front{
	width:100%;
	background-image:url("images/ptn_3.png"),url("images/ptn_4.png");
	background-repeat:no-repeat, no-repeat;
	background-position:left top, right bottom;
	background-size:21% auto, 20% auto;
}
#viewer_wp{
	width:100%;
	height:750px;
	margin: 0 auto 60px;
	position: relative;
}
.sp_toptxt{
	position:absolute;
	left:8%;
	bottom:15%;
	width:40%;
	z-index:10;	
}
.sp_toptxt img{width:100%; max-width:600px; height:auto;}
.sliderwp{
	float:right;
	position: relative;
	width: 80%;
	margin: 0;
	padding: 0;
}
.fadeslider li{position:absolute}
.fadeslider img.sld_img{ width:100%; height: 750px; object-fit: cover; vertical-align:top;}
@media screen and (max-width: 1620px) {
	#viewer_wp{height:700px;}
	.fadeslider img.sld_img{height: 700px;}
}
@media screen and (max-width: 1500px) {
	.top_wp_front{
		width:100%;
		background-image:url("images/ptn_3_m.png"),url("images/ptn_4.png");
		background-repeat:no-repeat, no-repeat;
		background-position:left top, right bottom;
		background-size:21% auto, 20% auto;
	}	
}
@media screen and (max-width: 1400px) {
	#viewer_wp{height:650px;}
	.fadeslider img.sld_img{height: 650px;}
}
@media screen and (max-width: 1300px) {
	.top_wp_front{
		width:100%;
		background-image:url("images/ptn_3_s.png"),url("images/ptn_4.png");
		background-repeat:no-repeat, no-repeat;
		background-position:left top, right bottom;
		background-size:21% auto, 20% auto;
	}	
}
@media screen and (max-width: 1200px) {
	#viewer_wp{height:600px;}
	.fadeslider img.sld_img{height: 600px;}
}
@media screen and (max-width: 1100px) {
	#viewer_wp{height:550px;}
	.fadeslider img.sld_img{height: 550px;}
}
/* TOPページ
================================================== */
.top_news{
	clear:both;
	width:100%;
	max-width:1100px;
	margin:0 auto;
	display:flex;
	justify-content: space-between;
	padding-bottom:2%;
}
.top_news_tl{width:30%; text-align:center}
.top_news_tl h3{
	font-family: 'Outfit', sans-serif;
	font-weight:500;
	font-size:26px;
	letter-spacing:0.08em;
	margin-bottom:0.5em;
}
.top_news_list{width:70%; padding-right:5%}
.top_news_list dl{
	width:100%;
	margin-bottom:40px;
}
.top_news_list dl dt {
     float: left;
     clear: left;
     width: 210px;
	margin-bottom:0.8em;
	padding-bottom:0.8em;
	padding-left:0.8em;
}
.top_news_list dl dd {
	font-size:14px;
	margin-bottom:0.8em;
	padding-bottom:0.8em;
	padding-right:0.8em;
     border-bottom: 1px dotted #999;
     padding-left: 220px; /* dtの幅以上のpaddingをとる*/
}
.top_news_list dl dd a{color:#444444}
.top_news_list dl dd a:hover{color:#c64c6b;}
span.post_cat{
	margin-left:13px;
	font-size:12px;
	padding:0.4em 0.7em 0.3em;
	color:#fff;
	background: #c34264;
	border-radius:3px;
}
.icon-right i{margin-left:20px; font-size:90%;}
.icon-left i{margin-right:20px; font-size:90%;}

/* youtube */
.mv_back{
	width:100%;
 	background: -moz-linear-gradient(top, #f9f7f7 45%, #f4f3ea 45%, #f4f3ea 100%);
  	background: -webkit-linear-gradient(top, #f9f7f7 45%, #f4f3ea 45%, #f4f3ea 100%);
  	background: linear-gradient(to bottom, #f9f7f7 45%, #f4f3ea 45%, #f4f3ea 100%);
	padding-bottom:50px;
	margin-bottom:50px;
}
.youtube_wp{
	width:80%;
	max-width:820px;
	margin:0 auto;
	background:#fff;
	padding:20px;
}
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.toppnt_wp{
	width:100%;
 	background: -moz-linear-gradient(top, #ffffff 45%, #efebef 45%, #efebef 100%);
  	background: -webkit-linear-gradient(top, #ffffff 45%, #efebef 45%, #efebef 100%);
  	background: linear-gradient(to bottom, #ffffff 45%, #efebef 45%, #efebef 100%);	
	padding-bottom:40px;
}
.top_catalog{
	width:85%;
	margin:70px auto 50px;
	text-align:center;
	position:relative;
}
ul.top_cataloglist{
	width: 100%;
	margin: 20px auto 40px;
}
ul.top_cataloglist li{ padding: 20px;}
ul.top_cataloglist li img{width:100%; height:auto;}
.slide-arrow{
  position: absolute;
  top: 40%;
}
.prev-arrow{
	left: -40px;
	width: 20px;
}
.next-arrow{
	right: -40px;
	width: 20px;
}
.top_bkwht{
	padding:130px 50px 150px;
}
.top_plan-wp{
	background:#fff;
	width:100%;
	margin:0 auto;
	padding:60px 0 50px;
	text-align:center;
	position:relative;	
}
img.ptn5{
	position:absolute;
	left:-50px;
	top:-130px;
	width:23%;
	height:auto;
}
.top_furiplan h1{margin-bottom:1em;}
img.top-plantitle{
	width:90%;
	max-width:500px;
	height:auto;
	position:absolute;
	top: -75px;
  	right: 0;
	left: 0;
	margin: auto;
}
@media screen and (max-width: 1300px) {
	img.top-plantitle{max-width:450px; top: -60px;}
}
.top_plan{
	width:90%;
	max-width:1100px;
	margin:40px auto;
	background: #f9f3ee;
}
.top_planinner{
	background: url("images/top/plan_bk_pc.jpg") no-repeat center left;
	background-size:auto 100%;
	padding:30px 30px 40px 35%;	
}
.top_planinner h2{
	max-width:500px;
	display:inline-block;
	background: url("images/top/rcmd_text.png") no-repeat top left;
	background-size:130px auto;
	padding:60px 0 0 20px;
	font-size:30px;
	margin-bottom:0.3em;
}
.top_planinner h2 span{font-size:20px;}
@media screen and (max-width: 1200px) {
	.top_planinner{padding:30px 30px 40px 40%;}
	.top_planinner h2{font-size:26px}
	.top_planinner h2 span{font-size:18px;}
}
.top_planinner img{
	width:100%;
	max-width:600px;
	height:auto;
}
.topplan_btn{
	position:absolute;
	bottom:-20px;
	right: 0;
	left: 0;
	margin: 0 auto;	
}
.bk_ptn6{
	width:100%;
	background-image:url("images/ptn_6.png"),url("images/ptn_7.png");
	background-repeat:no-repeat, no-repeat;
	background-position:right top, left bottom 5%;
	background-size:23% auto, 18% auto;	
}
.top_msg{
	width:85%;
	max-width:1400px;
	margin:0 auto 50px;
	display:flex;
	justify-content: space-between;
	padding-top:70px;
}
.top_msg_img{width:50%; position:relative;}
.top_msg_img img.mainimg{ width:100%; height: 425px; object-fit: cover; vertical-align:top;}
.top_msg_img img.ikd_name{
	position:absolute;
	right:15px;
	bottom:15px;
	width:100px;
	height:auto
}
.top_msg_txt{width:48%; position:relative;}
.top_msg_txt h1{
	position:absolute;
	top:70px;
	left:-120px;
}
.top_msg_txt p.fast{padding-top:170px}
.top_msg_txt p{
	margin-bottom:0.8em;
	line-height:1.9em;
	padding-right:10%;
}
.toppnt_sub{width:30%}
.toppnt_sub h2{font-size:18px; margin-bottom:0.3em;}
@media screen and (max-width: 1300px) {
	.toppnt_sub{width:31%}
	.toppnt_sub h2{font-size:16px;}
}
.toppnt_sub h2.pt_01{
	background: url("images/top/pt-01.png") no-repeat left top 0.3em;
	background-size:37px auto;
	padding:15px 0 10px 50px
}
.toppnt_sub h2.pt_02{
	background: url("images/top/pt-02.png") no-repeat left top 0.3em;
	background-size:35px auto;
	padding:15px 0 10px 50px	
}
.toppnt_sub h2.pt_03{
	background: url("images/top/pt-03.png") no-repeat left top 0.3em;
	background-size:35px auto;
	padding:15px 0 10px 50px	
}
.toppnt_sub p{font-size:14px; padding:5px}

/* プラン内容
================================================== */
.planset_bkwht{
	width:100%;
	background: url("images/ptn_5.png") no-repeat top left;
	background-size:25% auto;
}
.plan_pd{padding:70px 15% 120px;}
.catalog_pd{padding:160px 0 70px;}
@media screen and (max-width: 1800px) {
	.planset_bkwht{
		background: url("images/ptn_5.png") no-repeat top left;
		background-size:27% auto;
	}
	.plan_pd{padding:70px 10% 120px;}
}	
@media screen and (max-width: 1400px) {
	.planset_bkwht{
		background: url("images/ptn_5.png") no-repeat top left;
		background-size:30% auto;
	}
	.plan_pd{padding:70px 50px 120px;}
}
.planset_title{
	width:90%;
	margin:0 auto 50px;
	text-align:center;	
}
img.page-plantitle{
	width:75%;
	max-width:470px;
	height:auto;
}
.planset_title p{margin-top:10px;}
.plan_bkwht{
	background:#fff;
	width:100%;
	margin:0 auto;
	position:relative;
	padding:3% 5%;
}
.planset_in{width:100%; max-width:1100px; margin:0 auto}
.hakamaset_img{width:43%}
.planset_cnt{width:50%;}
.planset_cnt h2{
	font-size:30px;
	text-align:center;
	margin-bottom:0.3em;
	padding-top:1em
}
.planset_cnt h2 span{font-size:20px;}
@media screen and (max-width: 1200px) {
	.planset_cnt h2{font-size:26px}
	.planset_cnt h2 span{font-size:18px;}
}
.planset_pt{
	width:100%;
	background-image:url("images/page/flw_left.png"),url("images/page/flw_right.png");
	background-repeat:no-repeat, no-repeat;
	background-position:left top, right top;
	background-size:auto 100%, auto 100%;
	background-color:#524f4f;
	text-align:center;
	color:#fff;
	padding:15px 10px 10px;
}
.planset_pt h3{font-size:20px;}
.planset_item{padding:20px 22px 15px; background:#f4f4f4}
.planset_item ol {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: li;
}
.planset_item ol li {
  	position: relative;
	font-size: 16px;
  	padding-left: 1.6em;
  	line-height: 1.5;
	display:inline-block;
	margin-right:2.0em;
	margin-bottom:0.8em;
	letter-spacing:0.05em;
}
.planset_item ol li::before {
  counter-increment: li;
  content: counter(li);
  position: absolute;
  left: 0;
  top: 2px;
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  font-size: 12px;
  color: #fff;
  line-height: 20px;
  text-align: center;
	background-color: #c34264;
}
.pl_prtkn{
	margin-top:10px;
	padding:0.7em;
	text-align:center;
	font-size:15px;
	 background:#f4f4f4;
}

.hakamaset_img img{width:100%; height:auto;}
.hakama_infoin{
	width:85%;
	margin:0 auto;
	padding:20px 0 35px;
	position:relative;
}
img.photo-fkd{
	width:110px;
	height:auto;
	position:absolute;
	top:-80px;
	left:5%;
}
.hakama_rt{
	width:100%;
	background: url("images/ptn_4.png") no-repeat top right;
	background-size:25% auto;
	padding:0 15% 100px;
}
@media screen and (max-width: 1800px) {
	.hakama_rt{padding:0 10% 100px;}
}
@media screen and (max-width: 1400px) {
	.hakama_rt{padding:0 50px 100px;}
}
.hakamartl_title{
	max-width:360px;
	margin:0 auto 30px;
	text-align:center;
	position:relative;
	padding-top:50px;
}
img.haiso-fkd{
	width:110px;
	height:auto;
	position:absolute;
	top:-80px;
	left:5%;
}
.hakamartl_title h2{font-size:30px; margin-bottom:1em}
.hakamartl_text{
	width:80%;
	margin:20px auto 50px;
	text-align:center;
}
.hakamartl_text p{margin:10px 0}
.rtl_hakama{width:48%; background:#fff; padding:30px 30px 30px 10px; text-align:center;}
.rtl_hakama h3{font-size:24px; margin-bottom:1em}
.rtl_hakama h3 span{font-size:26px; margin-right:0.2em; color:#c34264}
.rtl_hakama_img{width:37%; padding-top:40px;}
.rtl_hakama_txt{width:58%; padding-top:15px}
img.hkm_p{
	display:block;
	width:65%;
	max-width:170px;
	height:auto;
	margin:1em auto 1em;
}
dl.only_op{margin:1em 0 1.2em; font-size:14px}
dl.only_op dt{margin-bottom:0.5em;}
dl.only_op dt span{
	padding:0.5em 2em;
	border:1px solid #ccc;
	font-size:13px;
}
.rtl_hakama_info{
	width:100%;
	margin-top:15px;
	padding:15px;
	text-align:left
}
.rtl_hakama_info h4.cleaning{
	background: url("images/page/cleaning.png") #524f4f no-repeat left 0.7em center;
	background-size:20px;
	padding:0.3em 0.8em 0.3em 2.8em;
	font-size:15px;
	color:#fff;
	margin-bottom:0.6em;
	font-weight:normal;
}
.rtl_hakama_info h4.haiso{
	background: url("images/page/truck.png") #524f4f no-repeat left 0.7em center;
	background-size:20px;
	padding:0.3em 0.8em 0.3em 2.8em;
	font-size:15px;
	color:#fff;
	margin-bottom:0.6em;
	font-weight:normal;
}
.rtl_hakama_info p{font-size:14px; padding:0 5px; line-height:1.6em}

/* 前撮りパック
================================================== */
#photo_tlbk{
	background : url("images/page/photo_bk.jpg") no-repeat center;
	background-size:cover;
	padding:90px 0 120px;
	margin-top:90px;
}
.pre_topwp{
	width:90%;
	max-width:1200px;
	margin:0 auto;
}
.prept_cnt{width:45%; text-align:center; padding-top:15px}
img.photo_tl{
	width:100%;
	max-width:450px;
	height:auto;
	margin-bottom:0.5em;
}
ul.single_price{width:85%; margin:15px auto 10px}
ul.single_price li{
	display:inline-block;
	width:48%;
	margin:0.2em 0.5%;
	background:#524b4b;
	padding:0.3em;
	border-radius:3px;
	color:#fff;
	font-size:18px;
}
ul.single_price li span{font-size:16px}
img.prept_price{width:88%; max-width:450px; height:auto; margin-bottom:0.3em}
p.pricebox_info{
	width:88%;
	margin:0 auto 1em;
	background:#fff;
	padding:0.7em;
	font-size:14px;
	color:#c34264;
}
.photo_tk_wp{
	width:100%;
	margin:15px auto 0;
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
}
p.photo_price{font-size:23px;}
p.photo_price span{font-size:18px;}
.ml50p{margin-left:50%;}
.photo_tk{
	width:31%;
	margin-top:50px;
	position:relative;
}
.photo_tk h3{margin:0.5em 0; padding:0 0.5em; font-size:18px;}
.photo_tk img.pkn_no{
	position:absolute;
	top:-80px;
	left:10px;
	width:30%;
	max-width:100px;
	height:auto;
	z-index:10;
}
.loca_wp{
	width:90%;
	max-width:1200px;
	margin:0 auto;
	padding:100px 0;
}
h1.loca_title{font-size:28px; margin-bottom:0.5em}
p.en_subtl{font-size:15px; letter-spacing:0.1em; color:#999}
.loca_wp p.loca_text{margin:50px 0 15px}
p.pht_lp{
	margin-top:20px;
	font-size:18px;
	letter-spacing:0.08em;
}
ul.photo_spot{
	margin:30px auto 50px;
	display:flex;
	justify-content: space-between;
}
ul.photo_spot li{
	width:24%;
	text-align:center;
	background:#fff;
	padding:0.7em;
	box-shadow: 0px 3px 15px rgba(0,0,0,0.2);
}
ul.photo_spot p{font-size:14px; margin-top:0.5em;}
ul.photo_spot p span{font-size:16px;}

/* 固定ページのヘッダータイトル
================================================== */
#pagebk_wp{
	width:100%;
	background:url("images/ptn_3.png") no-repeat left top;
	background-size:20% auto;
	margin: 100px 0 0;
}
@media screen and (max-width: 1500px) {
	#pagebk_wp{
	background:url("images/ptn_3_m.png") no-repeat left top;
	background-size:20% auto;
	}
}
@media screen and (max-width: 1300px) {
	#pagebk_wp{
	background:url("images/ptn_3_s.png") no-repeat left top;
	background-size:20% auto;
	}
}
#pagetitle_wp{
	width:100%;
	height: 330px;
}
.title_back{
	width: 80%;
	height: 330px;
	margin:0 0 0 auto;
	background-position:center;
	background-repeat: no-repeat;
	background-size: cover;
	position:relative;
}
.title_back2{
	width: 80%;
	height: 330px;
	margin:0 0 0 auto;
	background:url("images/header/header_01.jpg") no-repeat center;
	background-size: cover;
	position:relative;
}
.title_back3{
	width: 80%;
	height: 330px;
	margin:0 0 0 auto;
	background:url("images/header/header_03.jpg") no-repeat center;
	background-size: cover;
	position:relative;
}
#pagetitle_wp h2{
	font-size:36px;
	position:absolute;
	letter-spacing:0.03em;
	left:-7%;
	bottom:50px;
}
@media screen and (max-width: 1700px) {
	#pagetitle_wp h2{
		left:-10%;
		bottom:50px;
	}
}
@media screen and (max-width: 1300px) {
	#pagetitle_wp h2{
		left:-15%;
		bottom:50px;
	}
}
/* 会社概要
================================================== */
.msg_l{width:52%; padding:30px 30px 15px;}
@media screen and (max-width: 1200px) {
	.msg_l{width:55%; padding:30px 30px 30px 60px;}
}
.msg_txt{margin:30px 0;}
.msg_txt p{
	font-family: 'Zen Old Mincho','游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
	font-weight:500;
	margin-bottom:1em;
	font-size:16px;
	line-height:1.9em;
}
.msg_r{width:43%;}
.msg_r img{ width:100%; height:auto;}
.bk_ptn_cl{
	width:100%;
	background-image:url("images/ptn_6.png"),url("images/ptn_7.png");
	background-repeat:no-repeat, no-repeat;
	background-position:right top, left bottom 5%;
	background-size:23% auto, 18% auto;	
}
dl.company_list{
	width: 100%;
	max-width:900px;
	margin:50px auto;
    border-top: 1px dashed #999;
	text-align:left;
}
dl.company_list dt{
	width: 25%;
	clear: left;
	float: left;
	padding:20px 10px;
	font-weight:bold;
}
dl.company_list dd{
	border-bottom: 1px dashed #999;
	padding: 20px 8px 20px 27%;
	letter-spacing:0.05em;
}
ul.disc li{
	list-style-type:disc!important;
	margin-left:15px;
}
.policy_wp{
	width:80%;
	max-width:950px;
	margin:100px auto;
}
.policy_wp h3{
	font-size:16px;
	background: url("images/pu_red.png") no-repeat left top 0.2em;
	background-size:20px auto;
	padding-left:28px;
	padding-bottom:0.3em;
	margin-bottom:1em;
	margin-top:3.5em;
 	border-bottom: solid 1px #d1cdc3;
}
.policy_wp p{margin-bottom:0.7em}
/* 店舗案内
================================================== */
.tenpo_wp{
	width:95%;
	max-width:1100px;
	background:#fff;
	border-radius:5px;
	padding:3% 4%;
	margin:80px auto 0;
	position:relative;
}
#okayama, #kurashiki{
    padding-top: 200px; /* 調整したい高さ（固定ヘッダーの高さ） */
    margin-top: -200px; /* heightと同じ分のネガティブマージン */
}
img.tenpo_i{
	width:85px;
	height:auto;
	position:absolute;
	top:-40px;
	left:4%;
}
@media screen and (max-width: 1200px) {
	img.tenpo_i{
	width:80px;
	left:3%;
}
}
.tenpo_txt{width:43%}
.tenpo_txt h2{font-size:20px; margin:0.5em 0 1em}
.tenpo_txt h2 span{font-size:26px; margin-left:0.7em}
.tenpo_txt p{font-size:16px; line-height:1.9em}
.tenpo_txt p.tel_tp,
.contact_tp p.tel_tp{
	background : url("images/tel_bk.png") no-repeat left center;
	background-size: 23px auto;
	font-size:22px;
	padding:3px 0 3px 28px;
	letter-spacing:0.03em;
	display:inline;
}
.tenpo_img{width:54%; padding-top:15px}
.tenpo_img img{width:100%; height:auto;}
@media screen and (max-width: 1050px) {
	.tenpo_txt{width:43%}
	.tenpo_img{width:55%; padding-top:30px}
}
@media screen and (max-width: 989px) {
	.tenpo_txt{width:45%}
	.tenpo_img{width:53%; padding-top:50px}
}
.tenpo_wp h3{
	margin-top:20px;
	letter-spacing:0.05em;
	font-size:18px;
}
.map {
  width: 100%;
	margin:15px auto 0;
  position: relative;
  padding-top: 50%;
}
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.tenpo_pls{width:47%; margin-top:2em;}
.tenpo_pls h4{
	font-size:18px;
	letter-spacing:0.05em;
	margin:0.3em 0 0.5em;
}
.tenpo_pls h4.lios_t{
	font-size:22px;
	background : url("images/lios_i.png") no-repeat left center;
	background-size: 22px auto;
	padding:5px 0 3px 30px;		
}
p.tppl span{
	background:#666;
	border-radius:3px;
	padding:0.5em 0.7em 0.4em 0.9em;
	color:#fff;
	font-size:12px;
	margin-right:0.5em;
}
.tenpo_pls p{font-size:14px;}
.tenpo_pls img{width:100%; height:auto; margin-top:1em}
img.tenpo_si{
	width:80px;
	height:auto;
	position:absolute;
	top:-25px;
	left:4%;
}
h2.oka_title{
	background: -webkit-repeating-linear-gradient(-45deg, #fef0f0, #fef0f0 3px,#fbe9e9 3px, #fbe9e9 7px);
    background: repeating-linear-gradient(-45deg, #fef0f0, #fef0f0 3px,#fbe9e9 3px, #fbe9e9 7px);	
	border-radius:5px;
	padding:0.7em 1.5em;
	color:#e18180;
	font-size:20px;
}
h2.kura_title{
	background: -webkit-repeating-linear-gradient(-45deg, #f8fbfb, #f8fbfb 3px,#eff9fa 3px, #eff9fa 7px);
    background: repeating-linear-gradient(-45deg, #f8fbfb, #f8fbfb 3px,#eff9fa 3px, #eff9fa 7px);	
	border-radius:5px;
	padding:0.7em 1.5em;
	color:#5c9eac;
	font-size:20px;
}
h2.oth_title{
	background: -webkit-repeating-linear-gradient(-45deg, #f7f5f0, #f7f5f0 3px,#f4f2ea 3px, #f4f2ea 7px);
    background: repeating-linear-gradient(-45deg, #f7f5f0, #f7f5f0 3px,#f4f2ea 3px, #f4f2ea 7px);	
	border-radius:5px;
	padding:0.7em 1.5em;
	color:#a4924a;
	font-size:20px;
}
.oth_area{width:100%; max-width:900px; margin:30px auto 20px}
.oth_area h3{
	font-family: 'Roboto', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-weight:bold;	
	font-size: 18px;
	background : url("images/plan/en_y.png") no-repeat left center;
	background-size:20px;
	padding: 0.3em 0.3em 0.3em 1.7em;
}
.oth_area dl dt{
	width: 60px;
	clear: left;
	float: left;
	padding:0.4em 0.5em;
	font-weight:bold;
	letter-spacing:0.3em;
}
.oth_area dl dd{
	border-bottom: 1px dotted #999;
	padding: 0.4em 0.5em 0.4em 70px;
	letter-spacing:0.05em;
}
/* よくある質問
================================================== */
.faq_wp{
	width:85%;
	max-width:1000px;
	margin: 100px auto;
}
.faq_wp ul{
  width: 100%;
  margin:0 auto;
}
.faq_wp ul li{
  list-style:none;
  margin-top:15px;
}
.question{
 	 position: relative;
  	margin: 0;
  	padding: .5em 4em .5em 1em;
  	cursor: pointer;
  	background-color: #f6f6f6;
	-webkit-transition: .4s;
	transition: .4s;	
}
.question:hover,
.question.open{
	background-color: #eee;		
}

.question h3{
	background: url("images/faq_q.png") no-repeat left 10px top 0.3em;
	background-size:37px;
	font-size:16px;
	font-weight:normal;
	padding: 0.7em 0 0.7em 4em; 
}
.question:after {
  content: "";
  position: absolute;
  right: 25px;
  top: 38%;
  transition: all 0.2s ease-in-out;
  display: block;
  width: 10px;
  height: 10px;
  border-top: solid 2px #666;
  border-right: solid 2px #666;  
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.question.open:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 45%;
}

.answer{
	padding: 1.5em 3em 1.5em 1em;
	border-bottom:1px dotted #ccc;
	background: url("images/faq_a.png") #fff no-repeat left 25px top 1em;
	background-size:37px;
}
.answer p{
	padding-left:4em;
	margin-bottom:0.7em;
	line-height:1.8em;
}
/* 着物カタログ
================================================== */
.catalog_sh{
	width:100%;
	margin-left:auto;
	margin-right:auto;
	margin-bottom: 30px;
	background:#fff;
	padding:3% 3% 2%;
	position:relative;
	border:1px solid #999;
}
.catalog_sh img.ctl_i{
	position:absolute;
	top:-50px;
	left:2%;
	width:85px;
	height:auto;
}
.catalog_sh h3{
	padding: 0.3em 0.5em;
	font-size:15px;
	margin-bottom:0.5em;
	letter-spacing:0.05em;
	border-bottom: dotted 1px #666;
}
.catalog_sh h3 span{margin-left:0.7em; font-size:12px;}
.catalog_sh ul li{	display:inline-block;}
ul.ctsh_crlist{margin:1em 0}
ul.ctsh_crlist li{margin-bottom:0.8em}
ul.ctsh_crlist li a{
	padding:0.5em 0 0.5em 1.8em;
	margin-right:1.7em;
	margin-left:0.8em;
}
ul.ctsh_crlist li.red a{
	background: url("images/color/red.png") no-repeat left center;
	background-size:20px;
}
ul.ctsh_crlist li.pink a{
	background: url("images/color/pink.png") no-repeat left center;
	background-size:20px;
}
ul.ctsh_crlist li.blue a{
	background: url("images/color/blue.png") no-repeat left center;
	background-size:20px;
}
ul.ctsh_crlist li.green a{
	background: url("images/color/green.png") no-repeat left center;
	background-size:20px;
}
ul.ctsh_crlist li.purple a{
	background: url("images/color/purple.png") no-repeat left center;
	background-size:20px;
}
ul.ctsh_crlist li.yellow a{
	background: url("images/color/yellow.png") no-repeat left center;
	background-size:20px;
}
ul.ctsh_crlist li.orange a{
	background: url("images/color/orange.png") no-repeat left center;
	background-size:20px;
}
ul.ctsh_crlist li.brown a{
	background: url("images/color/brown.png") no-repeat left center;
	background-size:20px;
}
ul.ctsh_crlist li.white a{
	background: url("images/color/white.png") no-repeat left center;
	background-size:20px;
}
ul.ctsh_crlist li.black a{
	background: url("images/color/black.png") no-repeat left center;
	background-size:20px;
}
ul.ctsh_list li a{
	display:block;
	position: relative;
	padding:0.3em 1em 0.3em 1.8em;
	margin:0.3em 0.8em 0.3em 0.5em;
	border:1px solid #ccc;
	border-radius:5px;
}
ul.ctsh_list li a:hover{background:#f5f5f5}
ul.ctsh_list li a::before{
    position: absolute;
    top: 13px;
    left: 13px;
    margin: auto;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 4px;
    height: 4px;
    border: 4px solid transparent;
    border-left: 4px solid #999;
}
ul.catalog-list{
	width:100%;
	display:flex;
	flex-wrap: wrap;
}
ul.catalog-list li{width:20%; text-align:center; padding:0.8em}
@media screen and (max-width: 1250px) {
	ul.catalog-list li{width:25%;}
}
.ctlist_img img{width:100%; height:auto; vertical-align:top; margin-bottom:0.5em}
p.ctlist_tl{font-size:16px;}
p.ctlist_cd{font-size:14px}
.catalog_wp{
	width:90%;
	max-width:1200px;
	margin:30px auto;
	background:#fff;
	padding:3% 5% 3%;
}
.catalog_img{width:45%;}
.catalog_slider img{width:100%; height:auto}
.catalog_text{width:45%; padding-top:20px;}
.catalog_title{
	border-bottom: dotted 2px #999;
	padding: 0 0.2em 0.6em;
	margin-bottom:1em;
}
.catalog_title h2{
	font-size:23px;
	margin-bottom:0.5em;
}
p.ct-no{font-size:15px}
p.ct-no span{margin-left:0.2em; font-size:16px; font-weight:500; letter-spacing:0.02em}
p.ct-comt{font-size:14px; padding: 0 0.2em}
.ct_note{
	margin-top:30px;
	border:1px solid #eee;
	padding:1em 1em 0.2em;
}
.ct_note p{
	background : url("images/pu_gray.png") no-repeat left top 0.4em;
	background-size:12px;
	padding-left: 1.3em;	
	font-size:14px;
	margin-bottom:0.8em
}
ul.ct-tag{margin-top:20px; padding: 0 0.2em}
ul.ct-tag li{
	display:inline-block;
	background:#eee;
	margin-right:0.5em;
	padding:0.2em 0.7em;
	border-radius:5px;
	font-size:13px;
}
ul.ct-tag li::before{
	white-space: pre-wrap;
	content:"# "
}
.ctslide-arrow {
  bottom: 0;
  cursor: pointer;
  margin: auto;
  position: absolute;
  top: 0;
  width: 15px;
}
.ctprev-arrow {
  left: -30px;
}
.ctnext-arrow {
  right: -30px;
}
.plan_linkbtn{margin-top:40px}
.plan_linkbtn a{
	display:block;
	max-width:300px;
	margin:0 auto;
	padding:1em 3.5em 1em 2em;
	background : url("images/arw_red.png") #feefef no-repeat right 2.3em center;
	background-size: 20px auto;
	font-size: 15px;
	color:#c64c6b;
	border:1px solid #b9234b;
	border-radius:50px;
	text-align:center;
}
.plan_linkbtn a:hover{
	background : url("images/arw_wht.png") #b9234b no-repeat right 2em center;
	background-size: 20px auto;
	color:#fff;
}

/* お知らせブログ
================================================== */
#news_wp{
	clear:both;
	width:93%;
	max-width:1150px;
	margin:0 auto;
	padding:100px 0 130px;
}
#news_content{
	float:left;
	width:67%;
}
#event_content{
	width:100%;
	max-width:950px;
	margin:0 auto;	
}
.ev_title_wp{
	text-align:center;
	margin-bottom:50px;
}
.ev_title{
	font-size: 24px;
	letter-spacing:0.1em;
  	position: relative;
  	display: inline-block;
}
.ev_title:before {
  content: '';
  position: absolute;
  bottom: -20px;
  display: inline-block;
  width: 60px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #444;
  border-radius: 10px;
}
/*　お知らせ一覧
================================================== */
ul.news_allist li{
	width: 100%;
	margin:0 auto 10px;
	border-bottom:1px dotted #999;
}
ul.news_allist li.no_post{
	display: block;
	text-align:center;	
}
.news_imgbox{width:15%;}
.news_imgbox img{width:100%; height:auto}
.news_txt{width:80%; padding:0.3em}

ul.event_allist{
	width:100%;
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
}
ul.event_allist li{
	width:32%;
	margin-bottom:30px;
}
ul.event_allist::after {
	display: block;
	content:"";
	width: 32%;
}
ul.event_allist li.nopost{width:100%; text-align:center; padding:50px 0}
ul.event_allist li img{width:100%; height:auto}
.event_txt{padding:0.5em 0.3em}

.news_txt p.date{
	font-size: 14px;
	margin-bottom:0.5em;
}
p.event-date{font-size:16px; margin-bottom:0.3em}
.news_txt h3,
.event_txt h3{
	font-size:16px;
	margin-bottom:0.5em;
}
.news_txt p.in_txt{font-size:14px;line-height:1.5em}

ul.news_allist li a {
	position: relative;
	display: block;
	padding: 10px;
}
ul.news_allist li a::after {
  position: absolute;
  top: 65px;
  right: 15px;
  display: block;
  content: '';
  width: 12px;
  height: 12px;
  margin-top: -5px;
  border-top: 2px solid #e98d8d;
  border-right: 2px solid #e98d8d;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/*　お知らせポスト
================================================== */
#event_content article{
	width:100%;
	background:#fff;
	padding:5%;
	border-radius: 5px;
}
.event-btn{
	width:100%;
	margin:50px auto 0;
	text-align:center;
}
.event-btn a{
	padding:1em 3em 1em 5em;
	background : url("images/arw_l_wht.png") #6e6868 no-repeat left 2em center;
	background-size: 20px auto;
	font-size: 15px;
	color:#fff;
	letter-spacing:0.07em;
	border-radius:5px;
}
.event-btn a:hover{
	background : url("images/arw_l_wht.png") #524f4f no-repeat left 1.7em center;
	background-size: 20px auto;
}
p.in_date{padding: 0 0.3em;}
h2.blog_title{
	border-bottom: dotted 2px #999;
	font-size: 20px;
	padding: 0 0.2em 0.6em;
	margin-top:0.7em;
}
.post_cat_in{
	margin-right:10px;
	font-size:12px;
	padding:0.4em 0.7em;
	color:#fff;
	background: #c34264;	
	border-radius: 3px;	
}
.news_in{
	clear:both;
	width: 100%;
	padding: 0 0.3em;
}
.news_in p{
	margin: 25px 0;
}
.news_in img {
    max-width: 85%;
    height: auto;
	margin:13px auto;
}
img.aligncenter {
	clear: both;
	display: block;
	margin: 10px auto;
}
img.alignright {
	padding: 4px;
	margin: 0 0 7px 7px;
	display: inline;
}
img.alignleft {
	padding: 4px;
	margin: 0 7px 7px 0;
	display: inline;
}
.alignright {float: right;}
.alignleft {float: left;}
/*　サイドバー
================================================== */
#sidebar{
	float: right;
	width: 23%;
	background-color: #f9f7f7;
	padding:2em;
}
#sidebar h3.widget_title{
	font-family: 'Roboto', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-weight:bold;	
	font-size: 15px;
	background : url("images/pu_red.png") no-repeat left center;
	background-size:18px;
	padding: 0.3em 0.3em 0.3em 1.8em;
	margin-bottom:0.7em;
}
.side_news{margin-bottom:40px;}
#sidebar dl dt{
	padding: 0 0 0 4px;
	font-size:13px;
	letter-spacing:0.03em;
}
#sidebar dl dd{
    padding: 0 0 0.6em 1.2em;
	margin-bottom:0.6em;
}
#sidebar ul{
	margin: 0 0 40px;
}
#sidebar ul li{
    padding: 0 0 0.8em 1.2em;
	margin-bottom:0.8em;
}
#sidebar ul li,
#sidebar dl dd{
    position: relative;
    vertical-align: middle;
    text-decoration: none;
    font-size: 14px;
	line-height:1.5em;
	border-bottom:1px dotted #999;
}
#sidebar ul li::before,
#sidebar dl dd::before{
    position: absolute;
    top: 7px;
    left: 4px;
    margin: auto;
    content: "";
    vertical-align: middle;
    box-sizing: border-box;
    width: 4px;
    height: 4px;
    border: 4px solid transparent;
    border-left: 4px solid #999;
}

#sidebar select {
	font-family:inherit;
	cursor: pointer;
	width:100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    outline: none;
    border: 1px solid #ccc;
    border-radius: 3px;
    padding: 0.7em 0.7em;
    font-size: 14px;
	color:#444;
}
#sidebar select::-ms-expand {
    display: none;
    }
label.screen-reader-text{display:none}
/*　ナビゲーション
================================================== */
ul.post_navigation{
	clear:both;
	width: 100%;
	text-align: center;
	margin: 30px auto 20px;
}
ul.post_navigation li{
	margin: 10px 5px;
	display: inline-block;
}
ul.post_navigation li a{
	text-decoration: none;
	transition: .4s;
	font-size: 13px;
	border-radius: 3px;	
}
ul.post_navigation li.left a,
ul.post_navigation li.right a{
	border:1px solid #524f4f;
	padding: 0.8em 1.8em;
}
ul.post_navigation li.center a{
	background: #6e6868;
	border:1px solid #6e6868;
	color: #fff;
	padding: 0.8em 1.5em;
}
ul.post_navigation li.left a:hover,
ul.post_navigation li.right a:hover{
	background-color: #524f4f;
	border:1px solid #524f4f;	
	color:#fff!important;
}
ul.post_navigation li.center a:hover{
	background-color: #524f4f;
	border:1px solid #524f4f;	
    color: #FFF!important;
}
ul.post_navigation li.left a i{
	margin-right: 10px;
}
ul.post_navigation li.right a i{
	margin-left: 10px;
}
/*　一覧ページのページネーション
================================================== */
.pager{
	width:90%;
	margin: 40px auto 0;
	padding-bottom: 20px;
}
.pager  ul.pagination {
  text-align: center;
  margin: 0;
  padding: 0;
}

.pager .pagination li {
  display: inline;
  margin: 0 2px;
  padding: 0;
  display: inline-block;
  width: 30px;
  height: 30px;
border-radius: 50%;	
  text-align: center;
  position: relative;
	font-size:14px;
}

.pager .pagination li a{
  vertical-align: middle;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border:1px solid #524f4f;	
border-radius: 50%;		
  text-align: center;
  display:table;
  text-decoration: none;
	-webkit-transition: .4s;
	transition: .4s;
	color:#524f4f;
}

.pager .pagination li a span{
  display:table-cell;
  vertical-align:middle;
}

.pager .pagination li a.active{
  color: #fff;
  background-color: #7c7878;
border:1px solid #7c7878;	
}

.pager .pagination li a:hover{
  color: #fff;
  background-color: #524f4f;
border:1px solid #524f4f;	
}

@media only screen and (max-width: 767px){
.pager{	margin: 20px auto 0; padding-bottom: 15px;}	
.pager  ul.pagination{margin-top:10px}	
.pager .pagination li{
    display: none;
	border-radius: 0;
  }

  .pager .pagination li.pre,
  .pager .pagination li.next{
    display: inline-block;
    width: 45%;
    height: 40px;
    text-align: center;
  }

  .pager .pagination li.pre a,
  .pager .pagination li.next a{
    width: 100%;
    text-align: center;
	  font-size:14px;
	  color: #fff;
  background-color: #6e6868;
	  border:none;
	  border-radius: 0;
	  border-radius:5px;
  }

  .pager .pagination li.pre span::after{
    content: " 前へ";
  }

  .pager .pagination li.next span::before{
    content: "次へ ";
  }

}
/* 来店予約・お問い合わせフォーム
================================================== */
.contact_wp{
	width: 85%;
	max-width:1100px;
	text-align:center;
	margin: 70px auto 0;
	padding-bottom:50px;
}
.contact_tp{
	width:48%;
	background:#fff;
	padding:3%;
	position:relative;
	margin:30px 0;
}
@media screen and (max-width: 960px) {
	.contact_tp{ width:100%; max-width:650px; margin:30px auto 40px;}
}
.contact_tp h3{font-size:24px; margin-bottom:1em;}
.contact_tp p.tel_tp{margin-bottom:0.7em}
.yoyaku_btn{margin:30px auto;}
img.line_ia{
	width:100%;
	max-width:332px;
	height:auto;
	display:block;
	margin:0 auto 15px;
}
img.line_ta{
	width:100%;
	max-width:347px;
	height:auto;
	display:block;
	margin-bottom:15px;
}
a.ok_btn{
	padding:1.2em 2em 1.2em 4em;
	background : url("images/mail_pink.png") #fff no-repeat left 1.8em center;
	background-size: 25px auto;
	font-size: 15px;
	color:#c64c6b;
	border:1px solid #c64c6b;
}
a.ok_btn:hover{
	background : url("images/mail_pink.png") #feefef no-repeat left 1.8em center;
	background-size: 25px auto;
}
a.ks_btn{
	padding:1.2em 2em 1.2em 4em;
	background : url("images/mail_blue.png") #fff no-repeat left 1.8em center;
	background-size: 25px auto;
	font-size: 15px;
	color:#5285b4;
	border:1px solid #5d8ebb;
}
a.ks_btn:hover{
	background : url("images/mail_blue.png") #f1f6fa no-repeat left 1.8em center;
	background-size: 25px auto;
}
img.contact_bnr{
	display:block;
	width:100%;
	max-width:900px;
	height:auto;
	margin:30px auto 50px;	
}
.contact_wp h3.ctsub_title{
	width: 88%;
	margin:25px auto 0;
	background: #999;
	padding:0.7em 1.5em;
	color:#fff;
	font-size:16px;
	text-align:left;
	letter-spacing:0.07em;
}
.contact_wp p.cnt_entitle{font-size:24px; margin-bottom:20px; letter-spacing:0.08em}
.contact_info{margin:25px auto 40px}
.contact_thx{
	width: 85%;
	max-width:1100px;
	text-align:center;
	margin: 70px auto 250px;
}
p.yk_atn{
	font-size:16px;
	font-weight:bold;
	color:#b9234b;
	margin-bottom:15px;
}
table.contact-form{
	width: 85%;
	margin: 15px auto 20px;
	border-collapse: collapse;
	text-align:left;
	border-top:#b7afad 1px dotted;
}
table.contact-form th, table.contact-form td{
  	font-weight: normal;
  	padding: 20px 20px 15px;
	border-bottom:#b7afad 1px dotted;
	text-align: left;	
}
table.contact-form th{width: 25%; min-width:240px}
table.contact-form th.vt_top{vertical-align:top; padding: 25px 20px 15px;}
table.contact-form th.vt_day{vertical-align:top; padding: 35px 20px 15px;}
label{font-weight: normal!important; margin-right: 10px;}
input,
textarea{
	font-weight: normal;
	outline: none;
  	padding: 0.8em;
	font-size: 15px;
	font-family: inherit;
	color: #444444;
	border:1px solid #999;
	margin-bottom:0.5em;
	border-radius: 3px;
	max-width:100%
}
table.contact-form select{
	font-weight: normal;
  	padding: 0.7em 1em;
	border:1px solid #999;
	background:#fff;
	border-radius: 3px;
	font-size: 15px;
	font-family: inherit;
	margin-bottom:0.5em;
	color: #444444;
	margin-left:0.5em;
}
.mw_point{font-size:13px; line-height:1.6em}
#birth-year{width:100px; margin-left: 5px;}
#zip{width:80px;margin-right: 3px;}
#zip1{width:100px;margin-left: 3px;}
table.contact-form textarea{width:100%; height:250px; padding: 0.8em;}

::placeholder { color: #999;}
::-ms-input-placeholder { color: #999;}
:-ms-input-placeholder { color: #999;}

.policy_bt{width:100%; margin:20px auto; text-align:center; line-height:1.6em}
.form_bt{
	text-align:center;
	margin:10px 0 50px;
}
.form_bt input{
  -webkit-appearance: none;
  appearance: none;
}
.form_bt input[name="submitConfirm"],
.form_bt input[name="submit"] {
	line-height: 1.5em;
	padding:1em 5em 1em 3em;
	width:300px;
	background : url("images/arw_wht.png") #6e6868 no-repeat right 2em center;
	background-size: 20px auto;
	color: #fff;
	font-size:16px;
	 margin-left:10px;
	 transition: .4s;
 }
.form_bt input[name="submitConfirm"]:hover,
.form_bt input[name="submit"]:hover{
	background : url("images/arw_wht.png") #524f4f no-repeat right 1.7em center;
	background-size: 20px auto;
}
.form_bt input[name="submitBack"] {
	line-height: 1.5em;
	padding: 1em 0;
	width:120px;
	background-color:#b4b3b1;
	color:#fff;
	font-size:16px;
	 transition: .4s;
 }
.form_bt input[name="submitBack"]:hover{
	background-color:#817f7f;
	color: #fff;
}
.requisite{
	padding: 3px 5px;
	border:1px solid #d37085;
	color: #d37085;
	font-size: 12px;
	letter-spacing: 0.2em;
	margin-right: 10px;
	font-weight:normal;
}
.optional{
	padding: 3px 5px;
	border:1px solid #999;
	background:#999;
	color: #fff;
	font-size: 12px;
	letter-spacing: 0.2em;
	margin-right: 10px;
	font-weight:normal;
}
.forminfo{
	margin-bottom: 10px;
	font-size: 13px;
	line-height: 1.5em!important;
}
.mw_wp_form_preview span.requisite,
.mw_wp_form_preview span.optional,
.mw_wp_form_preview p.mw_point,
.mw_wp_form_preview .prev_no,
.mw_wp_form_preview span.mw_point,
.mw_wp_form_preview .policy_bt,
.mw_wp_form_preview .yk_timeml{display:none}

.mw_wp_form_preview table.contact-form th.vt_top,
.mw_wp_form_preview table.contact-form th.vt_day{vertical-align:middle; padding: 20px 20px 15px;}

/* ラジオボタンカスタマイズ
================================================== */
.radio_btn input[type=radio].radio_btn_item{display: none;}
.radio_btn label {display: inline-block;}
.radio_btn .radio_btn_item + span {
	padding-left: 30px;
	display: inline-block;
	position: relative;
}
.radio_btn .radio_btn_item + span::after,
.radio_btn .radio_btn_item + span::before {
  content: '';
  display: block;
  position: absolute;
  border: 1px solid #999;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  top: 2px;
  left: 0;
}
.radio_btn .radio_btn_item + span::after{
  opacity: 0;
  width: 12px;
  height: 12px;
  top: 6px;
  left: 4px;
  border: none;
  background: #d37085;
}
.radio_btn .radio_btn_item:checked + span { font-weight:bold;}
.radio_btn .radio_btn_item:checked + span::after {opacity: 1;}
/* プライバシーポリシーの窓
================================================== */
.policy_bt{
	width: 100%;
	max-width:950px;
	margin: 20px auto 40px;
	text-align: center;
	font-size: 15px;
	padding: 15px; 
}
.checkbox{
	width:95%;
	max-width:420px;
	margin:15px auto;
	background:#fff;
	padding:10px 15px;
	text-align:center;
}
.policy_bt .requisite{margin-right: 15px;}
.policy_bt p.pp_info{font-size:13px;margin-bottom:0.5em}

/* チェックボックスカスタマイズ */
.checkbox input[type=checkbox].checkbox_item{display: none;}
.checkbox label { display: inline-block;}

.checkbox .checkbox_item + span {
  padding-left: 2em;
  display: inline-block;
  position: relative;
}
.checkbox .checkbox_item + span::after,
.checkbox .checkbox_item + span::before {
  content: '';
  display: block;
  position: absolute;
  border: 1px solid #666;
  width: 18px;
  height: 18px;
  top: 3px;
  left: 0;
	border-radius:3px;
}
.checkbox .checkbox_item + span::after {
  opacity: 0;
  width: 10px;
  height: 15px;
  transform: rotate(45deg);
  left: 5px;
  border: none;
  border-right: 3px solid #d37085;
  border-bottom: 3px solid #d37085;
}
.checkbox .checkbox_item:checked + span::after { opacity: 1;}

/* Footer
================================================== */
.footer_wp{
	width:90%;
	max-width:1150px;
	margin:0 auto;
	color:#fff;
}
.footer_wp a{color:#fff;}
.footer_wp a:hover{color:#ccc;}
.footer_logo{
	float:left;
	width:18%;
	text-align:center;
	padding-right:30px;
}
.footer_info{
	float:right;
	width:80%;
}
img.ft_logo{
	width:90%;
	max-width:150px;
	height:auto;
}
ul.ft_sns li{display:inline-block; margin:0 0.5em}
ul.ft_sns li img{width:30px; height:auto;}
.ft_info{width:50%; padding:0 1em; font-size:14px;}
.ft_info h3{font-size:16px; margin-bottom:0.5em}
p.ft_tel{
	background : url("images/tel_wt.png") no-repeat left center;
	background-size: 20px auto;
	font-size:20px;
	padding:3px 0 3px 30px;
}
.ft_navi_wp{
	width:100%;
	display:flex;
	justify-content: space-between;	
	margin-top:25px;
	border-top:1px dotted #fff;
	padding-top:25px;
}
.ft_memunavi{width:25%;}
.ft_memunavi ul li{
	font-size:14px;
	margin-bottom:0.3em;
	padding-left:1em;
}
.fw_pd{padding:15px 0 20px}
ul.ft_link li{
	display:inline-block;
	width:130px;
	margin-right:1em;
	text-align:center;
	font-size:12px;
	color:#666;
}
ul.ft_link li img{width:100%; height:auto}
p.copy{
	clear:both;
	font-size:10px;
	text-align:right;
	letter-spacing:0.1em;
	padding-right:1em;
	color:#666;
}
.ft_linkbtn{display:none;}

/* NextGEN Gallery カスタマイズ
================================================== */
.gallery_wp{
	width:88%;
	max-width:1250px;
	margin:0 auto;
}
.ngg-galleryoverview.default-view{text-align:left}
.ngg-galleryoverview.default-view .ngg-gallery-thumbnail a {margin:8px}
.sl-overlay { background: #000!important; opacity: 0.8!important;}
.sl-wrapper .sl-close {color: #fff!important;}
.sl-wrapper .sl-navigation button {color: #fff!important;}
.sl-wrapper .sl-counter{color: #fff!important;}
.ngg-gallery-thumbnail-box {width:25%}
.ngg-gallery-thumbnail-box img{width:100%; height:auto;}
@media screen and (max-width: 1200px) {
	.ngg-gallery-thumbnail-box {width:33%}
}
@media screen and (max-width: 767px) {
	.gallery_wp{width:93%;}
	.ngg-galleryoverview{margin-top:15px; margin-bottom:30px}
}
@media screen and (max-width: 698px) {
	.ngg-galleryoverview.default-view .ngg-gallery-thumbnail a {margin:5px}
	.ngg-gallery-thumbnail-box {width:50%}
}
.ngg-galleryoverview{margin-bottom:0}
/* 404
================================================== */
.page404{
	width:90%;
	max-width:1000px;
	margin:70px auto;
	text-align:center;
	padding-bottom:130px
}
.page404 h2{font-size:28px; margin-bottom:1em}
.page404 p.mds{font-size:16px; margin-bottom:0.7em}
.page404 .btnwp{margin-top:50px}
/*　IEブラウザ用 */
.clearfix:after{
  content: " ";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix{
  min-height: 1px;
}
* html .clearfix{
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}
