/* pc */
/****************************************************************/
.sp_only {display:none;}
.sp_tab_only {display:none;}

body {
	font-family:"游ゴシック体", "Yu Gothic", "ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
	font-feature-settings:normal;
	font-size:1.4rem;
}

/* header */
/*-----------------------------------------------------------------*/
#header01 {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
}
header#header01 .h_menu .h_contact a {
	padding: 12px 0;
	width:210px;
	text-align:center;
}
.h_mail a {
    background-color: #FF8582;
	position:relative;
}
.h_mail a:hover {
    background-color: #FF8582;
	opacity:0.7;
}
.h_mail a::before {
    font-family: FontAwesome;
	font-size:20px;
    content: "\f1d9";
	position:absolute;
	left:20px;
	top:50%;
	margin-top:-10px;
	width:20px;
	height:20px;
}
.h_mail02 a {
    background-color: #FA5687;
    display: block;
    margin-left: 1px;
	position:relative;
}
.h_mail02 a::before {
    font-family: FontAwesome;
	font-size:20px;
    content: "\f017";
	position:absolute;
	left:15px;
	top:50%;
	margin-top:-17px;
	width:20px;
	height:20px;
}
.h_mail02 a:hover {
	text-decoration:none;
	opacity:0.7;
}
.head_nav {float:right;}
.head_nav li {
	list-style-type:none;
	display:inline-block;
	margin-right:25px;
	height:45px;
}
.head_nav li a {
	font-size:14px;
	line-height:45px;
	position:relative;
}
.head_nav li a::before {
    position: absolute;
    top: 50%;
    left: -12px;
    display: block;
    content: '';
    width: 4px;
    height: 4px;
    margin-top: -3px;
    border-top: 2px solid #FA5687;
    border-right: 2px solid #FA5687;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.gnav_sp_nav{
	display:none !important;
}
@media screen and (max-width: 690px) {
.gnav_sp_nav{
	border-top:none !important;
	border-bottom:1px solid #EEE !important;
}
.gnav_sp_nav:after{
	content:"";
	display:block;
	height:0;
	clear:both;
}
.gnav_sp_nav{
	display:block !important;
}

.gnav_sp_nav li{
	float:left !important;
	width:50% !important;
	border:none !important;
}
.gnav_sp_nav li a{
	border:none !important;
}
.gnav_sp_nav li a:after{
	border-right: 2px solid #fa5687 !important;
    border-top: 2px solid #fa5687 !important;
    content: "";
    display: block !important;
    height: 4px !important;
    right: 10px !important;
    margin-top: -3px !important;
    position: absolute !important;
    top: 50% !important;
    transform: rotate(45deg) !important;
    width: 4px !important;
}
}

/* globalnav */
/*-----------------------------------------------------------------*/
#globalnav01 #globalnav_in ul li a {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
}
#globalnav01 #globalnav_in ul li a:hover {
	color:#FA5687;
}
.fixed {
    background-color: #ffffff;
    box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.2);
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100000;
}

/* mainimage */
/*-----------------------------------------------------------------*/
.flexslider .slides > li {height:600px;}

/* top */
/*-----------------------------------------------------------------*/
/*RSS*/
/*.col2_ti .rss_box {width:100%;}*/
/*#area05 .inner {position: relative; }*/
#area05 .rss_contents {display:none;}
#area05 .rss_title a {color:#FA5687;}
#area05 .btn {width: 200px;margin-left: auto;}
#area05 .btn a {
    display: block;
    border: 1px solid #FA5688;
    color: #FA5688;
    border-radius: 3px;
}
#area05 .btn a:hover {
	color:#FFF;
	background-color: #FA5688;
}


.area_k_box {background:url("../image/top_area_k_box_bg.jpg") no-repeat left center;}
.top_title_jp {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	color:#F7306C;
	font-size:32px;
}
.top_title_jp02 {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	color:#F7306C;
	font-size:28px;
}
.top_title_jp02 a {color:#F7306C;}
.jp_title_intro {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	font-size:18px;
}
.area_k_box .area_k_box_in {
	width:580px;
	max-width:100%;
	padding:40px;
}
.toptitle03 {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	text-align:center;
	color:#F95586;
}
.toptitle03 a {color:#F95586;}
.btn_onethird a, .btn_twothird a {
	position:relative;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	background:#fff;
	color:#FA5688;
	border:1px solid #FA5688;
}
.btn_onethird a:hover, .btn_twothird a:hover {
	background:#FA5688;
	color:#fff;
	border:1px solid #FA5688;
}
.btn_onethird a::before, .btn_twothird a::before {
  font-family: FontAwesome;
  content: "\f105";
  color:#FA5688;
  padding-right: 10px;
  font-size: 18px;
  position:absolute;
  right:0;
  top:50%;
  margin-top:-12px;
}
.btn_onethird a:hover::before,
.btn_twothird a:hover::before {color:#fff;}
#area01 .col3_m .col {
	border:2px solid #ffffff;
	background:#F8F8F8;
	transition:all 0.3s;
}
#area01 .col3_m .col.bl-hover {
	border:2px solid #FA5688;
}
#area01 .txtarea {padding:0 10px 20px;}
#area_b {
	background:#FEEEF3;
	padding:60px 0 100px;
}
#area_b .col3_m .col {
	background:#ffffff;
	padding:25px 0 40px;
}
#area_g {background-color:#ffffff;}
#area_g .col_bg_white {
	box-shadow:none;
	height:148px;
	border:1px solid #DDDDDD;
	display:table;
	transition:all 0.2s;
	padding: 0 40px;
}
#area_g .col_bg_white.bl-hover{border:1px solid #FA5688;}
#area_g .col_bg_white h3 {
	width:100%;
	vertical-align:middle;
	position:relative;
	padding-top:50px;
}
#area_g .col_bg_white.bl-hover a{color:#f7306c;}
#area_g .col_bg_white h3::before {
    position: absolute;
	bottom:0;
	margin-bottom:6px;
    right: 0;
    display: block;
    content: '';
    width: 24px;
    height: 24px;
    border-top: 1px solid #FA5687;
    border-right: 1px solid #FA5687;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.reservation_btn {
	background:url(../image/top_reservation_btn_bg.jpg) no-repeat right center;
	background-size:cover;
}
.faq_btn {
	background:url(../image/top_faq_btn_bg.jpg) no-repeat right center;
	background-size:cover;
}

@media screen and (max-width: 979px) {
	.top_s .flr_vm:last-child{
		background-size: contain !important;
		background-color: #F8F8F7;
		height: 320px;
	}
	.area_k_box .area_k_box_in{width: 100%;}
}
@media screen and (max-width: 690px) {
	.top_s .flr_vm:last-child{
		height: 140px;
	}
}


/* cv */
/*-----------------------------------------------------------------*/
.cv_style04 {
	padding:0;
	height:259px;
}
.cv_style04 .cv_style04_in {
	max-width:1120px;
	text-align:left;
}
.cv_style04 .cv_style04_lead {
	width:390px;
	float:left;
	margin:0;
	padding-left:40px;
	padding-top:3%;
}
.cv_style04 .cv_style04_cv {
	display:block;
	width: calc(100% - 390px);
	float:right;
	padding-top:75px;
}
.cv_style04 .cv_style04_cv img{
	display:block;
	max-width: 90%;
	height:auto;
	margin-left:auto;
	margin-right:0;
}
.cv_style04.mt0 {
	margin-top: 0;
}
/* footer */
/*-----------------------------------------------------------------*/
#foot_nav {
	display:flex;
	justify-content: space-around;
}
@media screen and (max-width: 690px) {
#foot_nav {
	display:block;
}
}
.f_top_nav li {
	list-style-type:none;
	margin-bottom:20px;
}
.f_top_nav.item2 { 
	flex-basis: 20%;
}
.f_top_nav li a {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	font-size:14px;
	color:#FA5688;	
}
.f_top_nav02 {
	margin-top:20px;
	display:flex;
	flex-wrap: wrap;
}
.f_top_nav02 li {
	flex-basis:50%;
}
.f_top_nav02 li a{
	font-family: 'Noto Sans JP', sans-serif;
	color:#333333;
	position:relative;
	padding-left:20px;
}
.f_top_nav02 li a::before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    content: '';
    width: 4px;
    height: 4px;
    margin-top: -3px;
    border-top: 2px solid #FA5687;
    border-right: 2px solid #FA5687;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
#f_bottom_wrap03 {background-color:#FA5688;}
#f_bottom_wrap03 .f_bottom {font-family: 'Noto Sans JP', sans-serif;}
#f_bottom_wrap03 .f_bottom .f_bottom_nav a {font-size:12px;}


/* sub */
/*-----------------------------------------------------------------*/
#pagetitle {
	background: rgb(250,86,135); /* Old browsers */
	background: -moz-linear-gradient(-45deg,  rgba(250,86,135,1) 0%, rgba(255,133,130,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg,  rgba(250,86,135,1) 0%,rgba(255,133,130,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg,  rgba(250,86,135,1) 0%,rgba(255,133,130,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fa5687', endColorstr='#ff8582',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
#pagetitle h2 {
	text-align:center;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
}
#locator {
	background:#F8F8F8;
	padding:10px 0 15px;
	margin-bottom:60px;
}
#locator a {color:#FA5688;}


/* subtitle */
/*-----------------------------------------------------------------*/
.title03_bbl {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	border-bottom:1px solid #FA5688;
	
	font-weight: normal;
}
.title03_bbl a{
	color:#FA5688;
	text-decoration:none;
}
.title03_bbl a:hover{
	opacity:0.7;
}
.title03{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	color:#FA5688;
	font-weight: normal;
	margin-bottom: 40px;
}
.title04_bl {
	border-left: 4px solid #FA5688;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	font-weight: normal;
}
.title05_square {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	color:#FA5688;
	font-weight: normal;
}
.title05_square::after {background-color: #FA5688;}


/* subnav */
/*-----------------------------------------------------------------*/
#subnav {border-bottom:3px solid #FA5688;}
#subnav_title a {
	font-size: 16px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	background:#F8F8F8;
	color:#FA5688;
	border:1px solid #ddd;
	border-bottom:1px solid #FA5688;
	/*box-shadow:0px 0px 2px 1px rgba(0,0,0,0.1);
	-moz-box-shadow:0px 0px 2px 1px rgba(0,0,0,0.1);
	-webkit-box-shadow:0px 0px 2px 1px rgba(0,0,0,0.1);*/
	padding:15px 5px;
}
#subnav_title a:hover {background:#F8F8F8;}
#subnav ul li.current ul{border-bottom:none;}
#subnav ul li a {
	border-bottom:1px solid #DDDDDD;
	border-left:1px solid #ddd;
	border-right:1px solid #ddd;
	background:#fff;
	position:relative;
	padding-left:30px;
}
#subnav ul li a::before {
    position: absolute;
    top: 50%;
    left: 15px;
    display: block;
    content: '';
    width: 4px;
    height: 4px;
    margin-top: -3px;
    border-top: 1px solid #FA5687;
    border-right: 1px solid #FA5687;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
#subnav ul li a:hover,
#subnav ul li.current > a {
	color:#FA5688;
	/*box-shadow:0px 1px 1px 1px rgba(0,0,0,0.1);
-moz-box-shadow:0px 1px 1px 1px rgba(0,0,0,0.1);
-webkit-box-shadow:0px 1px 1px 1px rgba(0,0,0,0.1);*/
}
#subnav ul li.current > a {border-bottom:1px solid #DDDDDD;}

#subnav ul li ul li a {padding-left:35px;}
#subnav ul li ul li a::before {left: 20px;}
#subnav ul li.current > a,#subnav ul li.current li > a{border-bottom:1px solid #DDDDDD;}

/* tablet */
/****************************************************************/
@media screen and (min-width: 691px) and (max-width: 979px) {

.sp_tab_only {display:block;}

/* header */
/*-----------------------------------------------------------------*/
header#header01 .h_menu .h_contact a {width:185px;}


/* mainimage */
/*-----------------------------------------------------------------*/
#top_mainimage {padding-top: 150px;}
.flexslider .slides > li {height:auto;}

/* top */
/*-----------------------------------------------------------------*/
.slick-dots li button::before {color:#FA5688;}
.slick-dots li.slick-active button::before {color:#FA5688;}
.slick-prev::before,
.slick-next::before {color:#FA5688;}

/* footer */
/*-----------------------------------------------------------------*/
.f_top_nav.item2 {flex-basis: 25%;}

/* cv */
/*-----------------------------------------------------------------*/
.cv_style04 {background-position:32% center;}
.cv_style04 .cv_style04_cv {padding-top:15%;}

/* cv */
/*-----------------------------------------------------------------*/
.pagename_wrap {padding-top:150px;}



}
/****************************************************************/



/* smartphone */
/****************************************************************/
@media screen and (max-width: 690px) {

.sp_only {display:block;}
.sp_tab_only {display:block;}

/* header */
/*-----------------------------------------------------------------*/
.head_nav {
	display:none;
}
.sp_hcontact li.sphc_nav_mail {
	background-color:#ff8582;
}
.sp_hcontact li.sphc_nav_mail a {
	background-color:#ff8582;
	position:relative;
}
.sp_hcontact li.sphc_nav_mail a::before {
    font-family: FontAwesome;
	font-size:16px;
    content: "\f1d9";
	position:absolute;
	left:15px;
	top:50%;
	margin-top:-12px;
	width:18px;
	height:18px;
}
.sp_hcontact li.sphc_nav_mail02 {
	background-color:#fa5687;
}
.sp_hcontact li.sphc_nav_mail02 a {
	background-color:#fa5687;
	display:block;
	color:#fff;
	position:relative;
}
.sp_hcontact li.sphc_nav_mail02 a::before {
    font-family: FontAwesome;
	font-size:16px;
    content: "\f017";
	position:absolute;
	left:8px;
	top:50%;
	margin-top:-12px;
	width:16px;
	height:16px;
}

/* mainimage */
/*-----------------------------------------------------------------*/
.flexslider .slides > li {
	height:auto;
}

/* top */
/*-----------------------------------------------------------------*/
.top_title_jp {
	font-size:24px;
}
.top_title_jp02 {
	font-size:20px;
}
.area_k_box .area_k_box_in {
	padding:20px 5%;
}
#area_b {
	padding:30px 0;
}
#area_b .col3_m .col {
	background:#ffffff;
	padding:20px 5% 20px;
}
.slick-dots li button::before {
	color:#FA5688;
}
.slick-dots li.slick-active button::before {
	color:#FA5688;
}
.slick-prev::before, .slick-next::before {
	color:#FA5688;
}
#area_g .col_bg_white {
	height:98px;
}
#area_g .col_bg_white h3 {
	padding-top:35px;
}
#area_g .col_bg_white h3::before {
    width: 16px;
    height: 16px;
    margin-top: -8px;
}

/* cv */
/*-----------------------------------------------------------------*/
.cv_style04 {
	height:auto;
	background:#F7F7F7;
}
.cv_style04 .cv_style04_in {
	max-width:100%;
}
.cv_style04 .cv_style04_lead {
	width:100%;
	float:none;
	padding-left:0;
	padding-top:20px;
}
.cv_style04 .cv_style04_cv {
	width:100%;
	float:none;
	padding:20px 0 20px;
}

/* footer */
/*-----------------------------------------------------------------*/
footer#footer03 {
	padding-top:0;
}
#foot_nav {
	flex-direction:column;
}
.f_top_nav02 {
	display:none;
}
.f_top_nav li {
	margin-bottom:0;
	padding:5px 0 5px 10px;
	border-top:1px solid rgba(255,129,130,.3);
}

/* sub */
/*-----------------------------------------------------------------*/
#locator {
	margin-bottom:30px;
}


}
/****************************************************************/


/* table 10 */
/****************************************************************/
table.tab10 th,
table.tab10 td {
  border: none;
  border-bottom: 1px dashed #dddddd;
  vertical-align: middle;
  vertical-align: top;
}

table.tab10 th {
  color: #fa5688;
  position: relative;
  font-weight: bold;
  width: 120px;
}

table.tab10 th::after {
  content: " :";
  position: absolute;
  right: 10%;
  color: #fa5688;
}

table.tab10 td {
  width: calc(100% - 120px);
}

@media only screen and (max-width: 690px) {
  table.tab10 th,
  table.tab10 td {
    width: 100%;
    display: block;
  }
  table.tab10 th {
    border-bottom: none;
    padding-bottom: 0;
  }
  table.tab10 th::after {
    display: none;
  }
  table.tab10 tr:first-child th {
    border-top: 1px dashed #dddddd;
  }
}


/*-----------------------------------------------------------------

sub area O

-----------------------------------------------------------------*/
.sub_o_area{
	background-color: #F8F8F8;
	padding: 40px 0 56px;
}
.sub_o_area .col {
  border: 1px solid #cccccc;
  outline-offset: -6px;
  outline: 1px solid #fa5688;
  padding: 2em 0;
  position: relative;
  background-color: #ffffff;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
}

.sub_o_dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.sub_o_dl dt {
  width: 30%;
  text-align: center;
  font-size: 40px;
  font-weight: bold;
  line-height: 1.2;
  color: #fa5688;
  border-right: 1px dashed #dddddd;
}

.sub_o_dl dt .txt {
  display: block;
  font-size: 18px;
  margin-bottom: 16px;
}

.sub_o_dl dd {
  width: 76%;
  padding-left: 1em;
  padding-right: 1em;
  font-size: 18px;
  line-height: 1.4;
}


.sub_o_dl_sub{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.sub_o_dl_sub dt {
	width: 100px;
	text-align: center;
	font-size: 18px;
	line-height: 1.2;
	color: #ffffff;
	background-color: #fa5688;
	border-radius: 30px;
	padding: 4px;
}
.sub_o_dl_sub dt .txt {
	font-size: 14px;
	padding-right: 4px;
	letter-spacing: .1em;
	font-weight: normal;
}
.sub_o_dl_sub dd{
	width: calc(100% - 100px);
	padding-left: 1em;
	font-size: 18px;
}

@media only screen and (max-width: 979px) {
  .sub_o_dl dd {
    padding-left: 1em;
  }
}

@media only screen and (max-width: 690px) {
  .sub_o_area .col {
    padding: 1.5em 0;
  }
  .sub_o_dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .sub_o_dl dt {
    width: 100%;
    font-size: 32px;
    color: #fa5688;
    border-right: none;
    margin-bottom: .5em;
  }
  .sub_o_dl dt .txt {
    font-size: 16px;
    margin-bottom: 8px;
  }
  .sub_o_dl dd {
    width: 100%;
    padding: 0 1.5em;
  }
.sub_o_dl_sub{
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
}
.sub_o_dl_sub dt {
	width: 100px;
	margin-bottom: 8px;
	font-size: 16px;
}
.sub_o_dl_sub dt .txt{font-size: 12px;}
.sub_o_dl_sub dd{
	width: 100%;
	padding-left: 0;
	font-size: 18px;
}



}
.img_b img{border: 1px solid #dddddd;}



/* table ----------------*/
table.tab03 thead th{background-color: #fa5688;}
table.tab03 tbody th,
table.tab03 tbody tr:nth-child(2n) th{
	background-color: #FF8582;
}


/****************************************************************/
/* width */
/****************************************************************/
.t-default .w5, .w5 {  width: 5%;}
.t-default .w10, .w10 {  width: 10%;}
.t-default .w15, .w15 {  width: 15%;}
.t-default .w16, .w16 {  width: 16%;}
.t-default .w20, .w20 {  width: 20%;}
.t-default .w21, .w21 {  width: 21%;}
.t-default .w25, .w25 {  width: 25%;}
.t-default .w30, .w30 {  width: 30%;}
.t-default .w35, .w35 {  width: 35%;}
.t-default .w40, .w40 {  width: 40%;}
.t-default .w45, .w45 {  width: 45%;}
.t-default .w50, .w50 {  width: 50%;}
.t-default .w55, .w55 {  width: 55%;}
.t-default .w60, .w60 {  width: 60%;}
.t-default .w65, .w65 {  width: 65%;}
.t-default .w70, .w70 {  width: 70%;}
.t-default .w75, .w75 {  width: 75%;}
.t-default .w80, .w80 {  width: 80%;}
.t-default .w85, .w85 {  width: 85%;}
.t-default .w90, .w90 {  width: 90%;}
.t-default .w95, .w95 {  width: 95%;}
.t-default .w100, .w100 {  width: 100%;}
.t-default .w5_pctab, .w5_pctab {  width: 5%;}
.t-default .w10_pctab, .w10_pctab {  width: 10%;}
.t-default .w15_pctab, .w15_pctab {  width: 15%;}
.t-default .w20_pctab, .w20_pctab {  width: 20%;}
.t-default .w25_pctab, .w25_pctab {  width: 25%;}
.t-default .w30_pctab, .w30_pctab {  width: 30%;}
.t-default .w35_pctab, .w35_pctab {  width: 35%;}
.t-default .w40_pctab, .w40_pctab {  width: 40%;}
.t-default .w45_pctab, .w45_pctab {  width: 45%;}
.t-default .w50_pctab, .w50_pctab {  width: 50%;}
.t-default .w55_pctab, .w55_pctab {  width: 55%;}
.t-default .w60_pctab, .w60_pctab {  width: 60%;}
.t-default .w65_pctab, .w65_pctab {  width: 65%;}
.t-default .w70_pctab, .w70_pctab {  width: 70%;}
.t-default .w75_pctab, .w75_pctab {  width: 75%;}
.t-default .w80_pctab, .w80_pctab {  width: 80%;}
.t-default .w85_pctab, .w85_pctab {  width: 85%;}
.t-default .w90_pctab, .w90_pctab {  width: 90%;}
.t-default .w95_pctab, .w95_pctab {  width: 95%;}
.t-default .w100_pctab, .w100_pctab {  width: 100%;}

@media only screen and (max-width: 690px) {
  .w5_pctab, .w10_pctab, .w15_pctab, .w20_pctab, .w25_pctab,
  .w30_pctab, .w35_pctab, .w40_pctab, .w45_pctab, .w50_pctab,
  .w55_pctab, .w60_pctab, .w65_pctab, .w70_pctab, .w75_pctab,
  .w80_pctab, .w85_pctab, .w90_pctab, .w95_pctab, .w100_pctab {
    width: 100%;
  }
}



/*-----------------------------------------------------------------

experience

-----------------------------------------------------------------*/
.experience_p{
	background-color: #ffffff;
    border: 1px solid #cccccc;
    outline: 1px solid #fa5688;
    outline-offset: -6px;
    padding: 3em 2.5em;
}
.experience_title{
	text-align: center;
	font-size: 24px;
	padding-bottom: 16px;
	border-bottom: 3px solid #fa5688;
	margin-bottom: 24px;
	line-height: 1.4;
	color: #fa5688;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
}
.experience_con{
	display: flex;
	align-items: center;
	text-align: center;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , serif;
	flex-wrap: wrap;
}
.econ.txt{
	padding: 16px 8px;
	width: 110px;
	border: 1px solid #cccccc;
	font-size: 16px;
	line-height: 1.4;
}
.econ.price_tu{
	font-size: 34px;
	width: calc(100% - 110px - 40px - 45%);
	letter-spacing: .08em;
	padding-left: 30px;
}
.econ.price_ar{width: 40px;}
.econ.price_to{
	font-size: 56px;
	width: 45%;
	color: #fa5688;
	letter-spacing: .08em;
}
.econ .tax{font-size: 18px;display: inline-block;margin-left: -8px;letter-spacing: .04em;}
.experience_supp {
	margin-top: 16px;
	padding: 1em 1.5em;
	background-color: #F8F8F8;
}
.experience_supp li{
	font-weight: bold;
    list-style: outside none none;
    padding-left: 1.5em;
    position: relative;
    text-indent: -0.6em;
}
.experience_supp li + li{margin-top: 5px;}
.experience_supp li::before{
	content: "※";
	display: inline-block;
	margin-right: 4px;
}
.experience_p.ep_normal .econ.txt{width: 200px;}
.experience_p.ep_normal .econ.price_to{width: 100%;font-size: 64px;}

@media only screen and (max-width: 979px) {
	.econ.txt{width: 90px;}
	.econ.price_tu{padding-left: 16px;width: calc(100% - 90px - 40px - 45%);font-size: 28px;letter-spacing: .04em;}
	.econ.price_to{font-size: 42px;width: 45%;letter-spacing: .04em;}
	.econ .tax{font-size: 16px;letter-spacing: 0;}
}
@media only screen and (max-width: 690px) {
	.experience_p{padding: 2em;}
	.experience_title{
		font-size: 20px;
		padding-bottom: 8px;
		margin-bottom: 16px;
		border-bottom-width: 2px;
	}
	.experience_con{flex-direction: column;}
	.econ.txt{
		padding: 4px 1.5em;
		width: auto;
		font-size: 12px;
		margin-bottom: 10px;
	}
	.econ.txt br{display: none;}
	.econ.price_tu{font-size: 30px;width: 100%;line-height: 1.2;}
	.econ.price_to{width: 100%;line-height: 1.2;}
	.experience_p.ep_normal .econ.price_to{font-size: 42px;}
	.econ.price_ar{margin: 8px auto;}
	.econ.price_ar img{transform: rotate(90deg);}
	.experience_supp {padding: 1em;font-size: 13px;}
}

.img_bord img{border: 1px solid #dddddd;}



.col3_list{align-items: center;}
.col3_list .col{
	padding: 8px 0;
	border: 1px solid #dddddd;
	line-height: 1.4;
}
.col3_list .col:nth-child(n + 4){margin-top: 16px;}

@media only screen and (max-width: 690px) {
	.col3_list .col,
	.col3_list .col:nth-child(3n + 1),
	.col3_list .col:nth-child(n + 4){
		width: 48%;
		margin: 0 1% 8px;
	}
}
.col_bg_wh {
  background-color: #fff;
  padding: 16px; }
  @media only screen and (max-width: 979px) {
    .col_bg {
      padding: 16px; } }


.tel-link{
	font-size:20px;
}
/*690px以上　電話番号リンク無効*/
@media only screen and (min-width: 691px) {
a[href^="tel:"]{
	pointer-events: none;
}
a[href^="tel:"]:hover{
	text-decoration:none;
}
}

.btn_2col:after{
	content:"";
	display:block;
	height:0;
	clear:both;
}
.btn_2col .col{
	float:left;
	width:49%;
	margin:0 0 0 2%;
}
.btn_2col .col:nth-child(odd){
	clear:both;
	margin-left:0;
}
.btn_2col .col:nth-child(n+3){
	margin-top:2%;
}

.btn_5col:after{
	content:"";
	display:block;
	height:0;
	clear:both;
}
.btn_5col .col{
	float:left;
	width:19.2%;
	margin:0 0 1% 1%;
}
.btn_5col .col:nth-child(5n+1){
	margin-left:0;
	clear:both;
}
.btn_5col .btn_fs_s a{
	max-width:none;
}

@media only screen and (min-width: 980px) {
.btn_3col_pc .col{
	clear:none !important;
	float:left;
	width:32.4%;
	margin:0 0 0 1.4% !important;
}
.btn_3col_pc .col:nth-child(3n+1){
	clear:both !important;
	margin-left:0 !important;
}
.btn_3col_pc .col:nth-child(n+4){
	margin-top:1.4% !important;
}
}

@media only screen and (min-width: 691px) and (max-width: 979px) {
.btn_5col .col{
	clear:none !important;
	width:24.1%;
	margin:0 0 1.2% 1.2% !important;
}
.btn_5col .col:nth-child(4n+1){
	clear:both !important;
	margin-left:0 !important;
}
}

@media only screen and (min-width: 531px) and (max-width: 690px) {
.btn_5col .col{
	clear:none !important;
	width:32%;
	margin:0 0 2% 2% !important;
}
.btn_5col .col:nth-child(3n+1){
	clear:both !important;
	margin-left:0 !important;
}
}

@media only screen and (max-width: 530px) {
.btn_5col .col{
	clear:none !important;
	width:48.5%;
	margin:0 0 3% 3% !important;
}
.btn_5col .col:nth-child(odd){
	clear:both !important;
	margin-left:0 !important;
}
}

/* about_lucina */
/*-----------------------------------------------------------------*/
.box2_arr_l{
	float:left;
	width:calc(50% - 40px);
	text-align:center;
	font-size:18px;
}
.box2_arr_r{
	float:right;
	width:calc(50% - 40px);
	text-align:center;
	font-size:18px;
	position:relative;
}

.box2_arr_l img,
.box2_arr_r img{
	width:100%;
	height:auto;
}

.box2_arr_r:before{
	content:"";
	width:28px;
	height:28px;
	border: solid #FF8582;
	border-width:8px 8px 0 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position:absolute;
	left:-68px;
	top:calc(50%);
	opacity:0.7;
}

@media only screen and (max-width: 690px) {
.box2_arr_l{
	float:none;
	width:100%;
	max-width:400px;
	margin:0 auto;
}
.box2_arr_r{
	float:none;
	width:100%;
	max-width:400px;
	margin:55px auto 0;
}

.box2_arr_r:before{
	content:"";
	width:28px;
	height:28px;
	border: solid #FF8582;
	border-width:8px 8px 0 0;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	position:absolute;
	left:calc(50% - 14px);
	top:-55px;
	opacity:0.7;
}

}


/* lesson_program */
/*-----------------------------------------------------------------*/
.list_col3{
	font-size:0;
}
.list_col3 li{
	display:inline-block;
	width:32%;
	margin:0 0 2% 2% !important;
	font-size:14px;
	vertical-align:top;
	line-height:1.4;
	background-position:0 1px !important;
}
.list_col3 li:nth-child(3n+1){
	margin-left:0 !important;
}

@media only screen and (max-width: 1120px) {
.list_col3 li{
	width:49%;
	margin:0 0 2% 2% !important;
}
.list_col3 li:nth-child(3n+1){
	margin-left:2% !important;
}
.list_col3 li:nth-child(odd){
	margin-left:0 !important;
}
}

/* sidebanner */
/*-----------------------------------------------------------------*/

.side_banner_box{
	text-align:left;
	font-size:0;
}
.side_banner_box li{
	font-size:14px;
	list-style:none;
	margin-bottom:10px;
}
.side_banner_box li a {
    position: relative;
    display: block;
    padding: 24px 32px 24px 16px;
    font-size: 18px;
    font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGP明朝B", serif;
    line-height: 1;
    letter-spacing: 0.15em;
    color: #FA5688;
    border: 1px solid #DDD;
    transition: 0.3s;
}
.side_banner_box li a::after {
    content: "";
    width: 9px;
    height: 9px;
    border: solid #FA5688;
    border-width: 2px 2px 0 0;
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: calc(50% - 4.5px);
    right: 17px;
}
.side_banner_box .reserved a{
	background: url(../image/common/side_banner01.jpg)no-repeat center center /cover;
}
.side_banner_box .faq a {
	background: url(../image/common/side_banner02.jpg)no-repeat center center /cover;
}
.side_banner_box .icon a:before {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 25px);
	right: 36px;
	width: 50px;
	height: 50px;
}
.side_banner_box .icon.lesson a:before {
	background: url(../image/common/icon_lesson.png)no-repeat center center /cover;
}
.side_banner_box .icon.studio a:before {
	background: url(../image/common/icon_studio.png)no-repeat center center /cover;
}
.side_banner_box .icon.voice a:before {
	background: url(../image/common/icon_voice.png)no-repeat center center /cover;
}
.side_banner_box li a:hover{
	text-decoration: none;
	border:1px solid #FA5688;
}
.side_banner_box li a:hover img{
	opacity:0.7;
}

@media only screen and (min-width: 691px) and (max-width: 979px) {
.side_banner_box li{
	display:inline-block;
	width:32.4%;
	margin:0 0 1.4% 1.4%;
}
.side_banner_box li:nth-child(3n+1){
	margin-left:0;
}
}

@media only screen and (min-width: 501px) and (max-width: 690px) {
.side_banner_box li{
	display:inline-block;
	width:49%;
	margin:0 0 2% 2%;
}
.side_banner_box li:nth-child(odd){
	margin-left:0;
}
}

@media only screen and (max-width: 500px) {
.side_banner_box{
	text-align:center;
}
.side_banner_box li{
	display:inline-block;
	width:100%;
}
.side_banner_box li:nth-child(odd){
	margin-left:0;
}
}


/* voice */
/*-----------------------------------------------------------------*/
.col_bg_voice{
	padding:30px 20px;
	background:#F5F5F5;
}
@media only screen and (max-width: 690px) {
.col_bg_voice{
	padding:0;
	background:none;
}
.col_bg_voice .col{
	background:#F5F5F5;
	padding:20px 5%;
}
}

/* media */
/****************************************************************/
#common .media .media_in {
  float: left;
  width: 32% !important;
  margin-right:2% !important;
}
#common .media .media_in:last-child {
  margin-right:0 !important;
}
@media only screen and (max-width: 690px) {
#common .media .media_in{
	float:none !important;
	width:100% !important;
	max-width:400px;
	margin:25px auto 0 !important;
}
#common .media .media_in:first-child{
	margin-top:0 !important;
}
#common .media .media_in:last-child{
	margin-right:auto !important;
}
}

/* knowus */
/*-----------------------------------------------------------------*/

.catelist{
	margin-bottom:10px;
}
.catelist a{
	display:inline-block;
	background:#666;
	color:#FFF;
	padding:7px 20px;
}






.hot_program_box02 .box3_left{
	background: url(../image/common/arr01.png) no-repeat calc(100% - 15px) center / 20px auto;
	width:35%;
	margin-right:0;
	padding-right:5%;
	float: left;
}
.hot_program_box02 .box3_right {
    float: right;
    width:30%;
}
.box3_in{
	padding: 16px;
	background-color: #f5f5f5;
}
@media only screen and (max-width:979px) {
	.hot_program_box02 .box3_left{
		background-position: calc(100% - 10px) center;
	}
}
@media only screen and (max-width:690px) {
	.hot_program_box02 .box3_left{
		background: url(../image/common/arr01_2.png) no-repeat center calc(100% - 10px) / 30px auto;
		width:100%;
		margin-right:0;
		padding-right:0;
		padding-bottom:50px;
		float: none;
	}
	.hot_program_box02 .box3_right {
		float: none;
		width: 100%;
	}
}


/* ----------------------------------------- */
/* campaign banner */
/* ----------------------------------------- */
.side-fix-item {
  position: fixed;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 120;
}

.side-fix-item.campaign-item {
  width: 120px;
  height: 250px;
}

.side-fix-item a {
  display: block;
}

.side-fix-item a:hover {
  opacity: 0.6;
}

.side-fix-item img {
  width: 100%;
  height: auto;
}

.side-fix-item .close-button {
  position: absolute;
  top: -15px;
  left: -15px;
  text-indent: -9999px;
  white-space: nowrap;
  overflow: hidden;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: white;
}

.side-fix-item .close-button:before, .side-fix-item .close-button:after {
  content: "";
  position: absolute;
  top: 12px;
  width: 20px;
  height: 2px;
  background-color: #000000;
}

.side-fix-item .close-button:before {
  left: 3px;
  -webkit-transform: rotate(45deg);
}

.side-fix-item .close-button:after {
  right: 3px;
  -webkit-transform: rotate(-45deg);
}

.bottom-fix-item {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 120;
  padding-left: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
}

.bottom-fix-item a {
  display: block;
}

.bottom-fix-item .close-button {
  position: absolute;
  top: -15px;
  left: calc((100% - 280px) / 2);;
  text-indent: -9999px;
  white-space: nowrap;
  overflow: hidden;
  width: 30px;
  height: 30px;
  border: 2px solid #000000;
  border-radius: 50%;
  background-color: white;
  color: #fff;
}

.bottom-fix-item .close-button:before, .bottom-fix-item .close-button:after {
  content: "";
  position: absolute;
  top: 12px;
  width: 20px;
  height: 2px;
  background-color: #000000;
}

.bottom-fix-item .close-button:before {
  left: 3px;
  -webkit-transform: rotate(45deg);
}

.bottom-fix-item .close-button:after {
  right: 3px;
  -webkit-transform: rotate(-45deg);
}
.banner_btn_box a {
    background: #fa5888;
    background: -moz-linear-gradient(left, #fa5888 0%, #ff8083 100%);
    background: -webkit-linear-gradient(left, #fa5888 0%,#ff8083 100%);
    background: linear-gradient(to right, #fa5888 0%,#ff8083 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fa5888', endColorstr='#ff8083',GradientType=1 );
    color: #fff;
    text-align: center;
    width: 260px;
    border-radius: 10px;
    margin: 0 auto;
    padding: 10px;
    font-size: 20px;
    line-height: 1.2;
}
.banner_btn_box a:hover{
	text-decoration: none;
	opacity: .7;
}
.banner_btn_box .txt_b{
	font-size: 26px;
}
.banner_btn_box .txt_s{
	font-size: 16px;
}

/*blog*/
/*Wright By*/
.writer_box {
    width: 100%;
    background: #fafafa;
    padding: 25px;
    margin: 30px 0;
    border: 2px solid #eeeeee;
}
.writer_box:before, .writer_box:after {content: ""; display: block;}
.writer_box:after {clear: both;}

.writer_box_left {
  float: left;
  width: 20%;
}
.writer_box_right {
  float:right;
  width: 77%;
}
.writer_box_left  img {
    border-radius: 50%;
    width: 150px;
}
li.writer_title {
  color: #fff;
  background-color: #FEB9C8;
  text-align: center;
  font-weight: bold;
  padding: 1%;
}
li.writer_name {
  font-size: 2.5rem;
  text-align: center;
  border-bottom: dotted 4px #ddd;
  color:#333;
  line-height: 1.5;
  padding: 7px 0;
  margin-bottom: 17px;
}
.writer_box_right dl {
  display: inline-block;
  line-height: 1.4;
}
.writer_box_right dl:before, .writer_box_right dl:after {content: ""; display: block;}
.writer_box_right dl:after {clear: both;}

.writer_box_right dt {
  float: left;
  font-weight: bold;
  color:#333;
}
.writer_box_right dd {
  margin-right: 20px;
  float: left;
}

.writer_box_right li{
	list-style-type: none !important;
}

@media only screen and (max-width: 690px) {
.writer_box {
    font-size: 1.3rem;
}
.writer_box_left {
    float: none;
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
}
.writer_box_right {
    float: none;
    width: 100%;
}
li.writer_title {
    text-indent: 0;
    text-align: center;
    line-height: 1.5;
    padding-top: 2px;
}
.writer_box_right dl {
    line-height: 1.2;
}
li.writer_name {
  font-size: 2.3rem;
  text-align: center;
  border-bottom: dotted 1px #aaa;
  color:#333;
  line-height: 1.5;
  padding: 7px 0;
  margin-bottom: 17px;
}
.writer_box_right li{
	margin-left:0 !important;
}
.writer_box {
    padding: 5%;
}
.writer_box_right dd {
    margin-right: 0;
}
}

/*OSTUKA LP*/
.facirity_otsuka{
	position: relative;
	background: #EEC7E4;
	padding: 2em;
}
.enterArea{
  position: relative;
}
.enterArea .bttn {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 10px;
    z-index: 10;
    display: block;
    width: 70%;
}
@media only screen and (max-width: 690px) {

}
.iframeArea{
	background: #EDEAE5;
	padding: 2em;
}
.program_intoro{
	background: #FFDEFD;
	padding: 0 2em 2em;
}