@charset "utf-8"; /*使用する文字コード*/
/* フォント読み込み */
@import url(https://fonts.googleapis.com/css?family=Archivo+Narrow);
@import url('https://fonts.googleapis.com/css?family=Crimson+Text');
/* =============== NEW_SP ==================== */

/* 共通設定 */
/* Android 4系一部の機種(デフォルトブラウザ)でブロック要素の幅が100％に広がらないバグの対応 */
div,
p {
  background-color: rgba(255, 255, 255, 0);
}
img {
  vertical-align: bottom;
}
body {
  font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
  line-height: 1.7em;
  margin: 0;
  padding: 0;
  word-break: break-all;
  font-size: 13px;
  color: #333;
  -webkit-text-size-adjust: 100%;
}
#contents .entryBody,
#contents .entryMore,
#contents .inner {
  padding: 10px;
  overflow: hidden;
  max-width: 640px;
  margin: 0 auto;
}
#contents .entryBody .imageBox {
  text-align: center;
}
#contents .entryBody img,
#contents .inner img,
#contents .entryMore img {
  margin: 0 auto 10px;
  max-width: 100%;
  height: auto;
}
/* =============== ウィジウィグで入れた画像のセンタリング ==================== */
.image-none {
  display: block;
  margin: 0 auto 10px;
}
.image-left {
  display: block;
  margin: 0 auto 10px;
}
.image-right {
  display: block;
  margin: 0 auto 10px;
}
.image-center {
  display: block;
  margin: 0 auto 10px;
}
a,
a:visited,
a:hover {
  color: #333;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0,0,0,0.3);
}
#contents .entryBody a,
#contents .entryMore a,
#contents .inner a {
  text-decoration: underline;
}
#contents .entryBody .btn a,
#contents .entryMore .btn a,
#contents .inner .btn a {
  text-decoration: none;
}
.btn a:hover {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}
#contents .entryBody h2,
#contents .entryMore h2,
#contents .inner h2,
#contents .entryBody h3,
#contents .entryMore h3,
#contents .inner h3,
#contents .entryBody h4,
#contents .entryMore h4,
#contents .inner h4,
#contents .entryBody h5,
#contents .entryMore h5,
#contents .inner h5 {
  margin: 0 0 10px;
}
h4,
h5,
p,
table {
  margin: 0 0 10px;
}
h2 {
  font-size: 24px;
  padding: 15px 10px;
  margin: 0;
}
h3 {
  font-size: 16px;
  padding: 10px;
  margin: 0;
}
h4,
h5 {
  font-size: 14px;
  padding: 5px 10px;
  margin-bottom: 10px;
}
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
table {
  width: 100%;
  border-collapse: collapse;
}
br.clear {
  clear: both;
}
.mr0 {
  margin-right: 0 !important;
}
/* clearfix */
.cf:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.cf {
  min-height: 1px;
  _height: 1px;
}
/* =============== icon設定 ==================== */
/* 共通 */

/*.fa-caret-right:before,
P.btn .fa-question-circle:before,
DIV#copyrightArea .fa-desktop:before,
DIV#footerTop .fa-angle-up:before,
DIV#footerTop .fa-home:before,
nav.show .fa-angle-right:before,
nav.show .fa-phone:before,
nav.show .fa-envelope-o:before,*/
DIV#copyrightArea .fa:before,
DIV#footerTop .fa:before,
nav.show .fa:before {
  padding: 0 5px 0 0;
}
/* header */
.fa-times,
.fa-bars,
#headerIcon .fa-phone,
.reserve img {
  display: block !important;
}
#headerIcon .tel a,
#headerIcon .reserve a {
  font-size: x-small;
  text-align: center;
}

.fa-facebook-square:before,
.fa-twitter-square:before,
.fa-instagram:before {
}
/* ==================== 色変更箇所 ==================== */
/* 共通要素 */
h2 img,h3 img,h4 img,h5 img{
  width: 100%!important;
  height: auto;
  max-width: 640px!important;
  margin: 0 auto!important;
}
h2 {
  color: #3f3f3f;
  font-family: 'Crimson Text', serif;
  text-align: center;
}
h3 {
  background: #363636;
  color: #fff;
}
h3 a {
  color: #fff;
}
h4 {
  border-bottom: 1px solid #cccccc;
}
h5 {
  background-color: #eeeeee;
}
th,
td {
  padding: 10px;
  border: 1px solid #cccccc;
}
th {
  background: #363636;
  text-align: left;
  color: #fff;
}
.caution {
  color: #C33737;
}
/* icon色変更 */
/*nav.show .fa-phone:before,
nav.show .fa-envelope-o:before,
DIV#headerIcon .fa-phone:before,
DIV#headerIcon .fa-envelope-o:before,*/
nav.show .fa:before {
  color: #aaa;
}
DIV#headerIcon .fa:before,
DIV#headerIcon a{
  color: #fff;
}
/* カテゴリー吐き出しh3・h4 */
aside.categoryList h3 {
  background: #fff;
  color: #333;
}
aside#galleryCatList H4 {
  background-color: rgba(0, 0, 0, 0);
}
#contents .categoryTopList li div span:before {
  color: #333;
}
#galleryList li h3,
#galleryList li h4 {
  color: #333;
}
#galleryList li h4 a {
  color: #333;
}
/* グローバルメニュー背景色 */
#header_nav {
  padding-top: 40px;
  background: #111;
}
#header_nav p.nav_caution{
  color: #ffffff;
  padding-left: 20px;
}
#menuClose {
  background: #000;
}
/* 1つ目のボタン */
.btn .typeA {
  background-color: #fff;
  color: #bbbbbb;
  border: 1px solid #bbbbbb;
/*  box-shadow: 0px 3px 0px #1A1A1A;*/
}
.btn .typeA.tapStyle {
/*  top: 2px;
  box-shadow: 0 1px 0 #1A1A1A;*/
}
/* 2つ目のボタン */
.btn .typeB {
  background-color: #ffffff;
  color: #000;
/*  box-shadow: 0px 3px 0px #ccc;*/
}
/*
.btn .typeB.tapStyle {
  top: 2px;
  box-shadow: 0 1px 0 #eee;
}
*/
/* 3つ目のボタン */
.btn .typeC {
  color: #333;
  border: 1px solid #ccc;
  background: #fcfcfc;
  background: -moz-linear-gradient(top, #fcfcfc 0%, #e5e5e5 50%, #efefef 99%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fcfcfc), color-stop(50%, #e5e5e5), color-stop(99%, #efefef));
  background: -webkit-linear-gradient(top, #fcfcfc 0%, #e5e5e5 50%, #efefef 99%);
  background: linear-gradient(to bottom, #fcfcfc 0%, #e5e5e5 50%, #efefef 99%);
  text-shadow: 1px 1px 0px rgba(255,255,255,0.9);
}
.btn .typeC.tapStyle {
  box-shadow: 0px 0px 5px rgba(100, 100, 100, 0.5) inset;
  background: #e5e5e5;
}
/* 4つ目のボタン */
.btn .typeD {
  background-color: #363636;
  color: #ffffff;
/*  box-shadow: 0px 3px 0px #ccc;*/
}
/* フッターエリア */
footer{
  background: #363636;
  padding-top: 30px;
}
footer #footer_logo{}
footer #footer_logo img{
  display: block;
  width: 150px;
  margin: 0 auto 25px;
}
footer p{
  color: #ffffff;
}
footer p span{
  font-size: medium;
  text-decoration: underline;
}
#footerBnr p {
  background-color: #eee;
}
DIV#footerTop P#siteTop,
DIV#footerTop P#recruitBtn {
  color: #ffffff !important;
  border: 1px solid #ffffff;
}
P#pageTop {
  color: #ffffff !important;
  border: 1px solid #ffffff;
}
DIV#footerTop P#recruitBtn a,
DIV#footerTop P#recruitBtn a:hover,
DIV#footerTop P#pageTop a,
DIV#footerTop P#pageTop a:hover{
  color: #ffffff!important;
}
DIV#footerSns P#SnsTitle {
  color: #909090;
}
DIV#footerSns P#SnsTitle SPAN {
  color: #898989;
}
DIV#footerSns {
  border-top: 1px solid #EEE;
}
DIV#footerMenu UL LI {
  color: #808080;
  border-right: 1px solid #aaa;
}
/* コピーライト */
DIV#copyrightArea {
}
#pcsite {
  background-color: #eee;
  color: #000 !important;
}
DIV#copyrightArea P#copyright {
  color: #fff;
}
/* ブログ吐き出し */
.topLatestBlog li span.logoEnpty,
.swipeImageStyle span.logoEnpty,
.gallerylist_thumb_img span.logoEnpty,
#contents .entryList li span.logoEnpty,
#contents .categoryTopList li span.logoEnpty {
  background-color: #363636;
}
.topLatestBlog li div span,
.topLatestBlogTxt li span,
#contents .entryList li div span {
  background: #333;
  color: #fff;
}
.topLatestBlog li p{
  display:none;
}
.topLatestBlog li p.new{
  background:none;
  padding-left:0.5em;
  font-size:bold;
  color:#000 !important;
}
/* ブログ吐き出しタイトル */
#contents .categoryTopList h3 {
  color: #333;
}
.topLatestBlog li a div h3,
.topLatestBlogTxt li a h3,
#contents .entryList li a div h3 {
  color: #333;
}
/* ブログ吐き出しタイトル（日付） */
.topLatestBlog li div time,
#contents .entryList li div time {
  color: #AAA;
}
/* アメブロ吐き出し */
#anchor1638 ul.date li {
	border-bottom: 1px solid #ddd;
}
#anchor1638 ul.date li span {
	display: inline-block;
	padding: 2px 5px 2px;
	font-size: 11px;
	border-radius: 2px;
	margin: 10px 5px 5px 0;
	line-height: 1.3;
	background: #333;
	color: #fff;
}
#anchor1638 ul.date li a {
	display: block;
	max-width: 620px;
	padding: 10px;
}


/* ページング */
#contents .paging {
  background: #eee;
}
#contents .paging .current_page {
  padding: 5px;
  line-height: 10px;
  border-radius: 4px;
  background: #ccc;
  display: inline-block;
}
#swipeSlider #swipeSliderPosition li,
.swipeImageStyle .swipeImageStylePosition li,
#swipeImage #swipeImagePosition li {
  color: #ccc;
}
#swipeSlider #swipeSliderPosition li.swipeImageOn,
.swipeImageStyle .swipeImageStylePosition li.swipeImageOn,
#swipeImage #swipeImagePosition li.swipeImageOn {
  color: #333;
}
/** お問い合せページ button**/
input[type=button] {
  transition: all 0.2s linear;
  -webkit-transition: all 0.2s linear;
  background-color: #4d4d4d;
  color: #FFF;
}
input[type=button]:hover {
  color: #FFF;
  border-color: #CECECE;
  background: linear-gradient(top, rgba(244,244,244,1) 0%, rgba(242,242,242,1) 100%);
}
/* スタッフ カテゴリーボタンカラー*/

SPAN.category {
  background: #333;
  color: #fff;
}
H3.categoryName {
  background: rgba(0, 0, 0, 0);
}
UL#staffCatList LI.top A,
UL#staffCatListBottom LI.top A {
  background-color: #4d4d4d;
  color: #FFF;
}
/* カテゴリーリスト */
aside.categoryList li i.fa-angle-right {
  position: absolute;
  top: 50% !important;
  right: 3%;
  margin-top: -5px;
}
aside.categoryList li i.fa-caret-right {
  position: absolute;
  top: 50% !important;
  left: 2%;
  margin-top: -7px;
}
/* =============== ヘッダー ==================== */
header {
  padding: 0 10px;
  overflow: hidden;
  min-height: 60px;
  background: #363636;
}
h1#logo a {
  display: block;
  padding-top: 2px;
  text-align: center;
}
h1#logo img {
  width: 100px;
}
#headerIcon p {
  margin: 0;
  text-align: center;
}
#headerIcon p a {
  display: block;
  padding: 9px 11px 10px;
}
#headerIcon #navBtn {
  position: fixed;
  top: 0;
  right: 0;
  font-family: "Archivo Narrow", sans-serif;
  z-index: 2;
}
#headerIcon #navBtn a {
  font-size: x-small;
  line-height: 1.2;
  padding: 16px 20px 15px 15px;
  background: #363636;
  color: #ffffff;
}
#headerIcon #navBtn a,
#headerIcon #navBtn a:visited,
#headerIcon #navBtn a:hover{
  color: #ffffff!important;
}
#headerIcon .tel,
#headerIcon .reserve {
  position: absolute;
  top: 10px;
}
#headerIcon .tel {
  left: 40px;
}
#headerIcon .reserve {
  left: 0px;
}
#headerIcon .reserve img {
  width: 20px;
  margin: 0 auto;
}
#headerIcon .mail a {
  padding-top: 7px;
}
#header_nav {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1;
  width: 90%;
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
#header_nav.hide {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-transform: translate3d(100%, 0, 0);
  -moz-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}
#header_nav.show {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-transform: translate3d(0%, 0, 0);
  -moz-transform: translate3d(0%, 0, 0);
  transform: translate3d(0%, 0, 0);
}
#header_nav #wrap {
  height: 100%;
  overflow-y: auto;
  padding-bottom: 15px;
}
#header_nav ul {
  padding: 0 0 20px;
}
#header_nav li a {
  display: block;
  border-bottom: 1px solid #333;
  padding: 16px 16px 16px 40px;
  font-size: 16px;
  color: #fff !important;
  text-indent: -0.5em;
}
#header_nav li:first-child a {
/*  padding: 23px 16px 24px 40px;*/
  border-top: 1px solid #333;
}
#header_nav .mail img,
footer .hpb img{
  width: 20px;
  margin-right: 4px;
}
#header_nav .mail a {
  font-size: 16px;
}
#header_nav .tel a {
  font-size: 18px;
}
#menuClose {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
}
/* ==================== トップページ ==================== */
#catchArea {
  max-width: 640px;
  margin: 0px auto;
  text-align: center;
}
#catchArea img {
  width: 100% !important;
  vertical-align: bottom;
}
/*Slider メインイメージ*/
#catchArea #swipeImage a.catchSwipe i {
  top: 50%;
  margin-top: -23px;
  position: absolute;
  padding: 10px;
}
#catchArea #swipeImage a.catchSwipe #on {
  margin-top: -42px;
}
#catchArea #swipeImage a.catchSwipe .fa-angle-left {
  left: 1%;
}
#catchArea #swipeImage a.catchSwipe .fa-angle-right {
  right: 1%;
}
/*JavaScript メインイメージ*/
#catchArea #jsMainImg {
  width: 100% !important;
}
/*
body#topPage #contents img {
  display: block;
  max-width: 320px;
  width: 50%;
  height: auto;
  margin: 0 0 10px 10px;
  float: right;
}
*/
/* ボタン */
.btn a {
  display: block;
  width: 80%;
  max-width: 600px;
  margin: 0px auto 20px;
  padding: 10px;
  font-size: 13px;
  text-align: center;
  position: relative;
  top: 0;
}
/* ==================== フッター ==================== */
#social {
  display: table;
  width: 90%;
  margin: 0 auto 20px;
}
#social div {
  width: 30%;
  text-align: center;
  display: table-cell;
  margin: 0 10px;
  vertical-align: top;
}
/* フッターバナー */
#footerBnr {
  width: 100%;
  display: table;
}
#footerBnr p {
  margin: 0;
  text-align: center;
  width: 50%;
  display: table-cell;
  vertical-align: middle;
}
#footerBnr p a {
  padding: 10px;
  display: block;
}
#footerBnr p:first-child a {
  border-right: 1px solid #fff;
}
/* フッタートップ */
DIV#footerTop {
  padding: 10px 0px;
  overflow: hidden;
  width: 80%;
  max-width: 620px;
  margin: 0 auto;
}
DIV#footerTop P#siteTop,
DIV#footerTop P#recruitBtn {
  float: left;
  display: inline-block;
  padding: 0px;
  border-radius: 2px;
  text-decoration: none;
  width: 48%;
  text-align: center;
  font-size: 11px;
  margin: 0;
}
P#pageTop {
  float: right;
  display: inline-block;
  padding: 0px;
  border-radius: 2px;
  text-decoration: none;
  width: 48%;
  text-align: center;
  font-size: 11px;
  margin: 0;
}
P#siteTop A,
P#recruitBtn A,
P#pageTop A {
  display: block;
  padding: 5px 15px;
}
DIV#footerSns P#SnsTitle {
  text-align: center;
  margin: 0;
  padding: 10px 0 0 0;
  font-size: 12px;
}
DIV#footerSns P#SnsTitle SPAN {
  font-family: 'Archivo Narrow', sans-serif;
  letter-spacing: 0.1em;
  font-size: small;
}
DIV#footerSns {
  margin: 0 auto;
  width: 100%;
}
DIV#footerSns UL {
  list-style: none;
  width: 90%;
  padding: 10px 0px 15px 0px;
  margin: 0 auto;
  overflow: hidden;
}
DIV#footerSns UL LI {
  float: left;
  width: 33.33333%;
  margin: 0 auto;
  text-align: center;
  padding: 0;
}
DIV#footerSns UL LI A {
}
/* フッターメニュー */
DIV#footerMenu {
}
DIV#footerMenu UL {
  line-height: 2em;
  text-align: center;
  padding: 0px 0 10px;
}
DIV#footerMenu UL LI {
  display: inline-block;
  font-size: 11px;
  padding-right: 5px;
  line-height: 10px;
}
DIV#footerMenu UL LI:last-child {
  border-right: none;
  padding-right: 0px;
}
/* コピーライト */
DIV#copyrightArea {
  padding: 10px;
  overflow: hidden;
}
#pcsite {
  float: right;
  display: inline-block;
  border-radius: 2px;
  text-decoration: none;
  margin: 0;
  font-size: 11px;
}
#pcsite A {
  display: block;
  padding: 5px 15px;
}
DIV#copyrightArea P#copyright {
  margin: 0px;
  padding: 5px 0px;
  font-size: 13px;
  text-align: center;
}
/* ==================== 下層ページ ==================== */
.topLatestBlog ul,
.topLatestBlogTxt ul,
#contents .entryList ul,
#contents .categoryTopList {
  margin-bottom: 20px;
}
.topLatestBlog li,
.topLatestBlogTxt li,
#contents .entryList li,
#contents .categoryTopList li {
  border-bottom: 1px solid #ddd;
  width: 100%;
}
.topLatestBlog li a,
.topLatestBlogTxt li a,
#contents .entryList li a,
#contents .categoryTopList li a {
  display: block;
  max-width: 620px;
  padding: 10px;
  overflow: hidden;
  margin: 0 auto;
  position: relative;
}
ul.entryList li i.fa-angle-right,
.categoryTopList li a i.fa-angle-right,
.topLatestBlogTxt li a i.fa-angle-right,
.topLatestBlog li a i.fa-angle-right {
  position: absolute;
  top: 50% !important;
  right: 4%;
  margin-top: -9px;
}
.topLatestBlog li img,
.topLatestBlog li span.logoEnpty,
#contents .entryList li img,
#contents .entryList li .left,
#contents .entryList li span.logoEnpty,
#contents .categoryTopList li img,
#contents .categoryTopList li span.logoEnpty {
  float: left;
  width: 25%;
  height: auto;
}
.news_blog li img,
.news_blog li span.logoEnpty,
#contents .news_blog li img,
#contents .news_blog li span.logoEnpty{
  display: none;
}
#contents .entryList li .left img,
#contents .entryList li .left span.logoEnpty {
  float: none;
  width: 100%;
  margin-bottom: 5px;
  padding: 0;
}
#contents .entryList li .left p {
  font-size: 11px;
  text-align: center;
  line-height: 1.3;
}
.topLatestBlog li span.logoEnpty,
#contents .entryList li span.logoEnpty,
#contents .categoryTopList li span.logoEnpty {
  min-height: 75px;
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 60px auto;
}
.topLatestBlog li div,
#contents .entryList li div,
#contents .categoryTopList li div {
  float: right;
  margin: 0;
  padding: 0 5% 0 0;
  width: 65%;
}
.news_blog li div,
#contents .news_blog li div{
  margin: 0;
  padding: 0 5% 0 0;
  width: 95%;
}
.topLatestBlog li div h3,
.topLatestBlogTxt li h3,
#contents .entryList li div h3,
#contents .categoryTopList h3 {
  background: none;
  padding: 0;
}
.topLatestBlog li div time,
#contents .entryList li div time {
  font-family: 'Archivo Narrow', sans-serif;
  padding: 0 5px 0 0;
  vertical-align: sub;
  letter-spacing: 0.7px;
  font-size: 14px;
  margin: 0 0 5px;
}
.topLatestBlog li div span,
.topLatestBlogTxt li span,
#contents .entryList li div span {
  display: inline-block;
  padding: 2px 5px 2px;
  font-size: 11px;
  border-radius: 2px;
  margin: 0 5px 5px 0;
  line-height: 1.3;
}
/* ==================== ブログNEWマーク表示 ==================== */
/* 時間によって表示 */
.topLatestBlog li strong span{
  display:none;
}
.topLatestBlog li strong span.new{
  font-weight:bold;
  color:#000 !important;
  background:none !important;
}
#contents .entryList li div strong span,
#contents .entryList li div strong span.new{
    display:none !important;
}
/* 時間によって表示 End */

/* 最新の1件を表示
.topLatestBlog li:not(:first-child) strong span.new,
#contents .entryList li div strong span.new{
  display:none !important;
}
.topLatestBlog li:first-child strong span.new{
  font-weight:bold;
  color:#000 !important;
  background:none !important;
}
最新の1件を表示 End */
/* ==================== ブログNEWマーク表示 End ==================== */

/* ==================== ギャラリーNEWマーク表示 ==================== */
/* ★時間によってNEWマーク*/
.swipeImageStyle li .topLatestBlogPhotoImage{
  position:relative;
  overflow: hidden;
  max-width: 200px;
  margin: 0 auto 5px;
}
.swipeImageStyle li .topLatestBlogPhotoImage img{
  margin-bottom: 0;
}
.swipeImageStyle li ul li span.new {
  display:none;
   font-weight: bold;
   left: -30%;
   line-height: 30px;
   text-align: center;
   top: 6%;
   width: 100%;
   position: absolute;
   text-align: center;
   background: #000;
   -webkit-transform: rotate(-45deg);
   -moz-transform: rotate(-45deg);
   -o-transform: rotate(-45deg);
   -ms-transform: rotate(-45deg);
    font-family: 'Helvetica Neue', Helvetica, Verdana, Arial, sans-serif;
    color:#FFFFFF;
  max-width: 200px;
}
/*★時間によってNEWマーク End*/

/* ★最新の1件だけNEWマーク
.swipeImageStyle li .topLatestBlogPhotoImage{
  position:relative;
  overflow: hidden;
  max-width: 200px;
  margin: 0 auto;
}
.swipeImageStyle li .topLatestBlogPhotoImage img{
  margin-bottom: 0;
}
.swipeImageStyle li:not(:first-child) span{
  display:none;
}
.swipeImageStyle li:first-child span.new {
   font-weight: bold;
   left: -30%;
   line-height: 30px;
   text-align: center;
   top: 6%;
   width: 100%;
   position: absolute;
   text-align: center;
   background: #000;
   -webkit-transform: rotate(-45deg);
   -moz-transform: rotate(-45deg);
   -o-transform: rotate(-45deg);
   -ms-transform: rotate(-45deg);
    font-family: 'Helvetica Neue', Helvetica, Verdana, Arial, sans-serif;
    color:#FFFFFF;
  max-width: 200px;
}
★最新の1件だけNEWマーク End*/
/* ==================== ギャラリーNEWマーク表示 End ==================== */


.topLatestBlog li div p,
.topLatestBlogTxt li p,
#contents .entryList li div p {
  margin: 0;
}
#contents .categoryTopList li div span:before {
  display: inline-block;
  font-size: 14px;
  padding: 0 5px 0 0;
}
#galleryList ul {
  width: 98%;
  display: -webkit-box;/* Android 2~4 */
  display: -webkit-flex;/* Safari */
  display: flex;
  -webkit-flex-wrap: wrap;/* Safari */
  flex-wrap: wrap;
  box-pack: justify; /* Android 2~4 */
  -webkit-justify-content: space-between;/* Safari */
  justify-content: space-between;
  margin: 0;
  padding: 2% 1% 0;
}
#galleryList li {
  width: 48%;
  padding: 1%;
  text-align: center;
}
#galleryList li h3,
#galleryList li h4 {
  background: none;
  padding: 0;
  font-size: 12px;
  line-height: 1.3;
}
#galleryList li img {
  width: 100%;
  max-width: 300px;
  height: auto;
}
.gallerylist_thumb_img {
  max-width: 300px;
  height: auto;
  position: relative;
  margin: 0 auto 6px;
}
.gallerylist_thumb_img .logoEnpty {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 80% auto;
}

aside.categoryList {
  max-width: 640px;
  margin: 0 auto 20px;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
aside.categoryList h3 {
  border-left: 5px solid #333;
  padding: 10px 10px 10px 15px;
  margin: 0;
}
aside.categoryList li a {
  display: block;
  border-top: 1px solid #ddd;
  padding: 10px 20px 10px 20px;
  position: relative;
}
aside.categoryList li span {
  margin-right: 5px;
}
#contents .paging {
  padding: 10px;
  margin: 0 0 20px;
}
/* スタッフページ */
DIV.punctuation {
  border-bottom: 1px #DDD solid !important;
  margin-bottom: 20px !important;
}
/* ギャラリー */
#contents .galleryTitle {
  margin: 0;
}
.topLatestBlogPhoto .swipeImageStyle,
#galleryCatList .swipeImageStyle {
}
.topLatestBlogPhoto,
#galleryCatList,
#galleryTopList {
  width: 100%;
  margin: 0 auto 10px;
}
.topLatestBlogPhoto ul,
#galleryCatList ul,
#galleryTopList ul {
  overflow: hidden;
  padding: 0;
  margin: 0;
}
.topLatestBlogPhoto li,
#galleryCatList li,
#galleryTopList li {
  list-style: none;
}
.topLatestBlogPhoto li ul,
#galleryCatList li ul,
#galleryTopList li ul {
  margin: 0;
  padding: 2% 2% 0;
}
.topLatestBlogPhoto li ul li,
#galleryCatList li ul li,
#galleryTopList li ul li {
  float: left;
  width: 32%;
  margin: 0 2% 0 0;
  text-align: center;
}
.topLatestBlogPhoto li a,
#galleryCatList li a,
#galleryTopList li a {
  display: block;
}
.topLatestBlogPhoto li img,
#galleryCatList li img,
#galleryTopList li img {
  max-width: 200px;
  margin-bottom: 5px;
}
.galleryEntryFirst {
  padding: 2% 10% 0;
  text-align: center;
}
.galleryEntryFirst img {
  margin-bottom: 5px;
  width: auto !important;
  max-width: 100%;
  height: auto !important;
  max-height: 200px;
}
.galleryEntryFirstEmpty {
  max-width: 150px;
  margin: 0 auto;
  position: relative;
}
.galleryEntryFirstEmpty img {
  margin-bottom: 0;
}
.topLatestBlogPhoto li h4,
#galleryCatList li h4,
#galleryTopList li h4,
.galleryEntryFirst h4 {
  font-size: 12px;
  line-height: 1.3;
  background: none;
}
#swipeSlider {
  position: relative;
}
#galleryDetail #swipeSlider li,
#beforeAfterGallery #swipeSlider li,
.swipeImageStyle li,
#swipeImage li {
  vertical-align: middle !important;
}
#swipeSlider li {
  text-align: center;
}
#swipeSlider li div {
  display: table-cell;
  vertical-align: middle;
}
#swipeSlider li.small img {
  width: 80%;
}
.swipeImageStyle li h4 {
  padding: 0;
  margin: 0;
}
#swipeSlider img,
.swipeImageStyle img {
  width: 100%;
  vertical-align: bottom;
}
.swipeImageStyle .logoEnpty {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 80% auto;
}
#swipeSlider .slideNav,
.swipeImageStyle .slideNav {
  position: relative;
}
.swipeImageStyle .fa-angle-right,
.swipeImageStyle .fa-angle-left {
  position: absolute;
  top: 2px;
}
#swipeSlider > a .fa-angle-left,
#swipeSlider > a .fa-angle-right {
  position: absolute;
  top: 50%;
  margin-top: -20px;
}
#swipeSlider > a .fa-angle-left,
.swipeImageStyle .fa-angle-left {
  left: 3%;
}
#swipeSlider > a .fa-angle-right,
.swipeImageStyle .fa-angle-right {
  right: 3%;
}
#swipeSlider #swipeSliderPosition,
.swipeImageStyle .swipeImageStylePosition,
#swipeImage #swipeImagePosition {
  text-align: center;
  padding: 0;
  background: none;
  line-height: 1.5;
}
#swipeImage #swipeImagePosition {
  margin: 10px 0 10px 0;
}
#swipeSlider #swipeSliderPosition {
  margin: 5px auto 10px;
  width: 80%;
}
.swipeImageStyle .swipeImageStylePosition {
  margin: 10px auto 5px !important;
  width: 80%;
}
#swipeSlider #swipeSliderPosition li,
.swipeImageStyle .swipeImageStylePosition li,
#swipeImage #swipeImagePosition li {
  list-style: none;
  display: inline-block;
  margin: 0 1%;
  font-size: 12px;
  width: auto;
  float: none;
}
.swipeImageStyle,
#swipeImage {
  position: relative;
}
#swipeSlider h4 {
  text-align: center;
  margin: 0;
  font-size: 13px;
  background: none;
  padding: 10px;
}
#swipeSlider P {
  margin: 10px;
  line-height: 150%;
}
.photo_text_sp {
  display: block;
  padding: 10px;
  text-align: left;
}
.photo_text_sp p {
  margin: 0 !important;
}
/* 事例集 */
.arrow {
  width: 0;
  height: 0;
  border-top: 30px solid #333;
  border-right: 80px solid transparent;
  border-bottom: 30px solid transparent;
  border-left: 80px solid transparent;
  margin: 0 auto;
}
#baImg img {
  width: 100%;
}
#baImg h4 {
  margin: 0;
}

/* 顔タイプ */
.galleryDetail svg {
    transform: translate(0, 0)
}
.facetype {
    width: 52px;
    height: 70px;
    fill: #e8e8e8;
}
.facetype.face_on {
    fill: #e58f81;
}
.face_on .face_txt {
    fill: #000;
}
/* お問い合わせ */
.h4Body {
  margin: 0 0 20px;
}
ul.ul01 {
  margin: 0px 0px 0px 0px;
  padding: 0px 0px 0px 10px;
  list-style: none;
  position: relative;
}
ul.ul01 li {
  margin: 0 0 10px 0;
}
ul.ul01 li i.fa-caret-right {
  position: absolute;
  left: 0%;
}
/** we remove the red glow around required fields since we are already using the red star */
fieldset {
  border: none !important;
}
input:required, textarea:required {
 -moz-box-shadow:none;
 -webkit-box-shadow:none;
 -o-box-shadow:none;
 box-shadow:none;
}
input[type="button"] {
  -webkit-appearance: none;
}
/** check radio**/
.form_check {
  display: block;
  margin-bottom: 15px;
}
.form_check input[type="checkbox"],
.form_check input[type="radio"] {
  width: 20px;
  vertical-align: middle;
  margin-right: 3px;
  display: inline;
}
.form_check input:not([type="submit"]) {
  height: 20px;
}
/** textarea**/

input:not([type="button"]),
textarea {
  outline: none;
  display: block;
  padding: 10px 5px;
  font-size: 14px;
  border-radius: 2px;
  width: 94%;
  margin: 0 auto;
  vertical-align: middle;
}
input:not([type="button"]):active,
textarea:active,
input:not([type="button"]):focus,
textarea:focus {
  background: #f2f2f2;
  border: solid 1px #b3b3b3;
  box-shadow: 2px 2px 7px #E8E8E8 inset;
}
input:not([type="button"]) {
  height: 20px;
  vertical-align: middle;
  width: 96%;
}
textarea {
  min-height: 120px;
  resize: vertical;
}
/* placeholder */
input:-webkit-input-placeholder, textarea:-webkit-textarea-placeholde {
 color:#BABABA;
 font-style:italic;
}
input:-moz-placeholder, textarea:-moz-placeholder {
 color:#BABABA;
 font-style:italic;
}
/**tel**/
input[type=tel] {
  width: 25% !important;
  margin: 0 5px 0 5px !important;
  float: left;
}
/**number**/
input[type=number] {
  width: 42% !important;
  margin: 0 5px 0 5px !important;
  float: left;
}
/**number**/
input.text02[type=number] {
  width: 20%;
  margin: 0 5px 0 5px;
  float: left;
}
input.text03[type=number] {
  width: 36%;
  margin: 0 5px 0 5px;
  float: left;
}
input.text04[type=number] {
  width: 88%;
  margin: 0 5px 0 5px;
  float: left;
}
input[type=time],
input[type=date] {
  margin: 0 5px 0 5px;
  float: left;
}
span.price {
  float: left;
  margin: 12px 0px 15px 0px;
}
form .ui-grid-a,
form .ui-grid-b {
  overflow: hidden;
}
p#confirmBtn,
p#cancelBtn,
p#submitBtn {
  margin: 0 auto 20px;
  text-align: center;
  width: 75%;
}
/** Styling the send button **/
input[type=button] {
  cursor: pointer;
  font-size: 15px;
  padding: 20px 4px;
  border-radius: 5px;
  width: 100%;
  border: none;
}
input[type=button]:hover {
}
input[type=button]:active,
input[type=button]:focus {
  position: relative;
  top: 1px;
  background: linear-gradient(top, rgba(234,234,234,1) 0%, rgba(242,242,242,1) 100%);
  box-shadow: 0px -1px 1px #FFF inset, 0 0 0px 5px #E0E0E0;
}
.errorMsgArea .caution {
  display: block;
  clear: both;
}
#mainErrorMsg .caution {
  display: block;
  margin: 10px;
  font-size: 15px;
}
/* スタッフ */
SPAN.category {
  display: inline-block;
  padding: 0px 5px;
  font-size: 11px;
  border-radius: 2px;
  margin-bottom: 5px;
}
DIV#staffCategoryNameWrap H3.categoryName {
  background: rgba(0, 0, 0, 0);
  float: left;
  padding: 1px 4px 1px 0px;
}
UL#staffCatList,
UL#staffCatListBottom {
  overflow: hidden;
  border-bottom: 1px #EEE solid;
  margin: 0 0 5px;
  padding: 5px 5px 0px 5px;
}
UL#staffCatListBottom {
  border: none;
  border-top: 1px #EEE solid;
  margin: 0 0 20px 0;
  border-bottom: 1px #EEE solid;
}
UL#staffCatList LI.top,
UL#staffCatListBottom LI.top {
  margin-right: 0px;
}
UL#staffCatList LI,
UL#staffCatListBottom LI {
  margin-bottom: 5px;
  float: left;
  margin-right: 5px;
}
UL#staffCatList LI A,
UL#staffCatListBottom LI A {
  display: block;
  padding: 7px 10px 7px 10px;
  border: 1px #CCC solid;
  font-size: 12px;
  border-radius: 2px;
}
UL#staffCatList LI.current A,
UL#staffCatListBottom LI.current A {
  display: block;
  padding: 7px 10px 7px 10px;
  border: 1px #CCC solid;
  background-color: #EEE;
  font-size: 12px;
  border-radius: 2px;
}
UL#staffCatList LI.notLink,
UL#staffCatListBottom LI.notLink {
  display: block;
  padding: 6px 10px 6px 10px;
  border: 1px #CCC solid;
  font-size: 12px;
  border-radius: 2px;
  margin-bottom: 0px;
}
UL#staffCatList LI.top A,
UL#staffCatListBottom LI.top A {
  padding: 7px 10px 7px 10px;
  margin-right: 5px;
}
P.staffTitle {
  font-size: 18px;
  border-bottom: 1px #ddd solid;
  padding: 5px 0 10px 0;
  font-weight: bold;
  margin-bottom: 10px;
  clear: both;
}
.fontawesome-angle-right:before {
  padding-right: 5px;
}
.eventCalenderSub{
  margin: 0 10px;
}

/* ==================== 共通装飾 ==================== */
#contents .ul01 li {
    list-style: none;
    padding: 0 0 0 12px;
    position: relative;
}
#contents .ul01 li::before {
    content: "\f0da";
    font-family: fontawesome;
    font-size: 12px;
    position: absolute;
    box-sizing: border-box;
    width: 4px;
    height: 4px;
    top: 0;
    left: 0;
}

/* ==================== 汎用デフォルト設定 ==================== */
/* SP横幅超過 */
#topPage .entryBody {
  max-width: none;
  padding: 0;
}
.column_wrapper {
  max-width: 640px;
  margin: 0 auto;
}
.wrap_inner{
  padding: 0 10px;
}
/* ----- SP Grid ----- */
.sp-row-0 {
  margin-left: 0px;
  margin-right: 0px;
}
.sp-row-0 > div {
  padding-right: 0px;
  padding-left: 0px;
}
.sp-row-10 {
  margin-left: -5px;
  margin-right: -5px;
}
.sp-row-10 > div {
  padding-right: 5px;
  padding-left: 5px;
}
.sp-row-20 {
  margin-left: -10px;
  margin-right: -10px;
}
.sp-row-20 > div {
  padding-right: 10px;
  padding-left: 10px;
}
.col-xs-1,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-2-4 {
  float: left;
  position: relative;
  min-height: 1px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.col-xs-2-4 {
  width: 20%;
}
.col-xs-12 {
  width: 100%;
}
.col-xs-11 {
  width: 91.66666667%;
}
.col-xs-10 {
  width: 83.33333333%;
}
.col-xs-9 {
  width: 75%;
}
.col-xs-8 {
  width: 66.66666667%;
}
.col-xs-7 {
  width: 58.33333333%;
}
.col-xs-6 {
  width: 50%;
}
.col-xs-5 {
  width: 41.66666667%;
}
.col-xs-4 {
  width: 33.33333333%;
}
.col-xs-3 {
  width: 25%;
}
.col-xs-2 {
  width: 16.66666667%;
}
.col-xs-1 {
  width: 8.33333333%;
}
.col-xs-pull-12 {
  right: 100%;
}
.col-xs-pull-11 {
  right: 91.66666667%;
}
.col-xs-pull-10 {
  right: 83.33333333%;
}
.col-xs-pull-9 {
  right: 75%;
}
.col-xs-pull-8 {
  right: 66.66666667%;
}
.col-xs-pull-7 {
  right: 58.33333333%;
}
.col-xs-pull-6 {
  right: 50%;
}
.col-xs-pull-5 {
  right: 41.66666667%;
}
.col-xs-pull-4 {
  right: 33.33333333%;
}
.col-xs-pull-3 {
  right: 25%;
}
.col-xs-pull-2 {
  right: 16.66666667%;
}
.col-xs-pull-1 {
  right: 8.33333333%;
}
.col-xs-pull-0 {
  right: auto;
}
.col-xs-push-12 {
  left: 100%;
}
.col-xs-push-11 {
  left: 91.66666667%;
}
.col-xs-push-10 {
  left: 83.33333333%;
}
.col-xs-push-9 {
  left: 75%;
}
.col-xs-push-8 {
  left: 66.66666667%;
}
.col-xs-push-7 {
  left: 58.33333333%;
}
.col-xs-push-6 {
  left: 50%;
}
.col-xs-push-5 {
  left: 41.66666667%;
}
.col-xs-push-4 {
  left: 33.33333333%;
}
.col-xs-push-3 {
  left: 25%;
}
.col-xs-push-2 {
  left: 16.66666667%;
}
.col-xs-push-1 {
  left: 8.33333333%;
}
.col-xs-push-0 {
  left: auto;
}
.col-xs-offset-12 {
  margin-left: 100%;
}
.col-xs-offset-11 {
  margin-left: 91.66666667%;
}
.col-xs-offset-10 {
  margin-left: 83.33333333%;
}
.col-xs-offset-9 {
  margin-left: 75%;
}
.col-xs-offset-8 {
  margin-left: 66.66666667%;
}
.col-xs-offset-7 {
  margin-left: 58.33333333%;
}
.col-xs-offset-6 {
  margin-left: 50%;
}
.col-xs-offset-5 {
  margin-left: 41.66666667%;
}
.col-xs-offset-4 {
  margin-left: 33.33333333%;
}
.col-xs-offset-3 {
  margin-left: 25%;
}
.col-xs-offset-2 {
  margin-left: 16.66666667%;
}
.col-xs-offset-1 {
  margin-left: 8.33333333%;
}
.col-xs-offset-0 {
  margin-left: 0;
}

/* ------ SP Margin ------ */
.sp_m_A { margin: 0 auto !important; }
.sp_mt_0 { margin-top: 0 !important; }
.sp_mt_5 { margin-top: 5px !important; }
.sp_mt_10 { margin-top: 10px !important; }
.sp_mt_15 { margin-top: 15px !important; }
.sp_mt_20 { margin-top: 20px !important; }
.sp_mt_25 { margin-top: 25px !important; }
.sp_mt_30 { margin-top: 30px !important; }
.sp_mt_35 { margin-top: 35px !important; }
.sp_mt_40 { margin-top: 40px !important; }
.sp_mt_45 { margin-top: 45px !important; }
.sp_mt_50 { margin-top: 50px !important; }
.sp_mr_0 { margin-right: 0 !important; }
.sp_mr_5 { margin-right: 5px !important; }
.sp_mr_10 { margin-right: 10px !important; }
.sp_mr_15 { margin-right: 15px !important; }
.sp_mr_20 { margin-right: 20px !important; }
.sp_mr_25 { margin-right: 25px !important; }
.sp_mr_30 { margin-right: 30px !important; }
.sp_mr_35 { margin-right: 35px !important; }
.sp_mr_40 { margin-right: 40px !important; }
.sp_mr_45 { margin-right: 45px !important; }
.sp_mr_50 { margin-right: 50px !important; }
.sp_mb_0 { margin-bottom: 0 !important; }
.sp_mb_5 { margin-bottom: 5px !important; }
.sp_mb_10 { margin-bottom: 10px !important; }
.sp_mb_15 { margin-bottom: 15px !important; }
.sp_mb_20 { margin-bottom: 20px !important; }
.sp_mb_25 { margin-bottom: 25px !important; }
.sp_mb_30 { margin-bottom: 30px !important; }
.sp_mb_35 { margin-bottom: 35px !important; }
.sp_mb_40 { margin-bottom: 40px !important; }
.sp_mb_45 { margin-bottom: 45px !important; }
.sp_mb_50 { margin-bottom: 50px !important; }
.sp_ml_0 { margin-left: 0 !important; }
.sp_ml_5 { margin-left: 5px !important; }
.sp_ml_10 { margin-left: 10px !important; }
.sp_ml_15 { margin-left: 15px !important; }
.sp_ml_20 { margin-left: 20px !important; }
.sp_ml_25 { margin-left: 25px !important; }
.sp_ml_30 { margin-left: 30px !important; }
.sp_ml_35 { margin-left: 35px !important; }
.sp_ml_40 { margin-left: 40px !important; }
.sp_ml_45 { margin-left: 45px !important; }
.sp_ml_50 { margin-left: 50px !important; }

/* ------ float ------ */
.sp_f_l { float: left; }
.sp_f_r { float: right; }

/* ------ テキスト系 ------ */
.sp_ta_c { text-align: center !important; }
.sp_ta_l { text-align: left !important; }
.sp_ta_r { text-align: right !important; }
.sp_fw_n { font-weight: normal !important; }
.sp_fw_b { font-weight: bold !important; }

/* ------ 見出しの装飾解除 ------ */
.sp_nodeco {
  background: none;
  border: none;
  padding: 0;
  font-size: small;
}
.sp_nodeco::before,
.sp_nodeco::after {
  display: none;
}

/* ------ 画像幅の調整 ------ */
.sp_img_w_m{
  width: 70%;
  margin: 0 auto;
}
.sp_img_w_l img,
.sp_img_w_m img {
  height: auto;
  width: 100%;
}

/* ==================== TOP追加設定 ==================== */
#top_concept{
  margin-bottom: 10px auto!important;
}
#top_staff{
  margin-bottom: 20px;
}
#top_bnr{
  margin-bottom: 20px;
}
/* チェックリスト */
.li_check {
  list-style: none;
  padding: 0;
  margin-bottom: 10px;
}
.li_check li {
  border-bottom: dotted 1px #ddd;
  padding: 8px 0 8px 20px;
  position: relative;
}
.li_check li::before {
  content: "\f046";
  font-family: fontawesome;
  font-size: 18px;
  position: absolute;
  box-sizing: border-box;
  width: 4px;
  height: 4px;
  top: 9px;
  left: 0;
  color: #363636;
}

/* 料金表 */
.price_menu{
  border: solid 1px #ece4e4;
  border-collapse: separate!important;
  border-spacing: 0 3px;
  padding: 2px 5px;
}
.price_menu th {
  width: 70%;
  color: #ffffff;
}
.price_menu th span{
  font-size: 11px;
  border: none;
}
.price_menu td {
  text-align: right;
  background: #eeeeee;
  border: none;
}

/* D=GIRLS */
.flow_box {
  position: relative;
}
.flow_box::before {
  content: "";
  display: block;
  width: 4px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 16px;
  background: #363636;
  z-index: -1;
}
.flow_inner {
  margin: 0 0 0 45px;
  padding: 5px 0 5px;
  border-bottom: 1px solid #eeeeee;
}
.flow > div:first-child .flow_inner {
  border-top: 1px solid #eeeeee;
}
.flow_inner h3,
.flow_inner h4 {
  color: #363636;
  background: none;
  border: none !important;
  display: inline-block;
  font-size: medium;
  font-weight: bold;
  margin-bottom: 20px !important;
  padding: 5px 0 0 0 !important;
  text-align: left;
}
.flow_num {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 30px;
  border: 2px solid #363636;
  background: #363636;
  margin: 0 10px 0 0;
  padding: 0;
  line-height: 30px;
  font-size: 18px;
  text-align: center;
  color: #fff;
}

.gallery_area{
  border-top: 1px solid #cccccc;
  margin: 20px 0 40px;
  padding-top: 30px;
}
.youtube {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  margin-bottom: 20px;
}

.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}