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

/* 共通設定 */
/* Android 4系一部の機種(デフォルトブラウザ)でブロック要素の幅が100％に広がらないバグの対応 */
div,
p {
  background-color: rgba(255, 255, 255, 0.01);
}
img {
  vertical-align: bottom;
}
body {
  font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
  line-height: 1.5em;
  margin: 0;
  padding: 0;
  word-break: break-all;
  font-size: 13px;
  color: #000;
  -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: #000;
  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 {
  margin: 0 0 10px;
}
h4,
h5,
p,
table {
  margin: 0 0 10px;
}
h2 {
  font-size: 16px;
  padding: 15px 10px;
  margin: 0;
}
h3 {
  font-size: 16px;
  padding: 10px 0;
  margin: 0 10px;
}
h4 {
  font-size: 14px;
  padding: 5px 10px;
  margin-bottom: 10px;
}
h5 {
  font-size: 14px;
  padding: 0 0 0 15px;
  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 {
  display: block !important;
}
.fa-facebook-square:before,
.fa-twitter-square:before,
.fa-instagram:before {
}
/* ==================== 色変更箇所 ==================== */
/* 共通要素 */
h2 {
  color: #000;
  text-align: center;
}
h3 {
  color: #000;
  border-bottom: 2px solid #e3e1e8;
  position: relative;
}
h3 a {
  color: #000;
}
h3::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -2px;
  left: 0;
  content: '';
  width: 120px;
  height: 2px;
  background-color: #a56fc1;
}
h4 {
  background: #f1f0f5;
}
h5 {
  color: #000;
  position: relative;
}
h5::after {
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: 0;
  content: '';
  width: 5px;
  height: 2px;
  background-color: #a56fc1;
}
th,
td {
  padding: 10px 5px;
  border-bottom: 1px solid #e3e1e8;
}
th {
  border-bottom: 1px solid #a56fc1;
  width: 20%;
  text-align: left;
  font-weight: normal;
}
.caution {
  color: #b75d94;
}
/* 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,
DIV#headerIcon .fa:before {
  color: #a56fc1;
}
/* カテゴリー吐き出しh3・h4 */
aside.categoryList h3 {
  background: #fff;
  color: #000;
}
aside#galleryCatList H4 {
  background-color: rgba(0, 0, 0, 0);
}
#contents .categoryTopList li div span:before {
  color: #000;
}
#galleryList li h3,
#galleryList li h4 {
  color: #000;
}
#galleryList li h4 a {
  color: #000;
}
/* グローバルメニュー背景色 */
#header_nav {
  background: #fff;
}
#menuClose {
  background: #f1f0f5;
}
/* 1つ目のボタン */
p.btn A.typeA {
  color: #ffffff;
  background-color: #a56fc1;
}
p.btn A.typeA:before {
  background: #fff;
}
p.btn A.typeA:after {
  border-color: #a56fc1;
}
/* 2つ目のボタン */
p.btn A.typeB {
  color: #000;
  background-color: #f1f0f5;
}
p.btn A.typeB:before {
  background: #fff;
}
p.btn A.typeB:after {
  border-color: #000;
}
/* 3つ目のボタン */
p.btn A.typeC {
  color: #ffffff;
  background-color: #391899;
}
p.btn A.typeC:before {
  background: #fff;
}
p.btn A.typeC:after {
  border-color: #391899;
}
/* フッターエリア */
#footerBnr p {
  background-color: #eee;
}
DIV#footerTop P#siteTop {
  color: #000 !important;
  border: 1px solid #ddd;
}
P#pageTop {
  color: #000 !important;
  border: 1px solid #ddd;
}
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: #fff;
  color: #000 !important;
}
DIV#copyrightArea P#copyright {
  color: #000;
}
/* ブログ吐き出し */
.topLatestBlog li span.logoEnpty,
.swipeImageStyle span.logoEnpty,
.gallerylist_thumb_img span.logoEnpty,
#contents .entryList li span.logoEnpty,
#contents .categoryTopList li span.logoEnpty {
  background-color: #f1f0f5;
}
.topLatestBlog li div span,
.topLatestBlogTxt li span,
#contents .entryList li div span {
  background: #a56fc1;
  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: #000;
}
.topLatestBlog li a div h3,
.topLatestBlogTxt li a h3,
#contents .entryList li a div h3 {
  color: #000;
}
/* ブログ吐き出しタイトル（日付） */
.topLatestBlog li div time,
#contents .entryList li div time {
  color: #000;
}
/* ページング */
#contents .paging {
  background: #f1f0f5;
}
#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: #000;
}
/** お問い合せページ button**/
input[type=button] {
  transition: all 0.2s linear;
  -webkit-transition: all 0.2s linear;
  background-color: #a56fc1;
  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: #000;
  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;
}
h1#logo a {
  display: block;
  padding-top: 2px;
}
h1#logo img {
  width: 150px;
}
#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;
  color: #000 !important;
}
#headerIcon .tel,
#headerIcon .mail {
  position: absolute;
  top: 10px;
}
#headerIcon .tel {
  right: 50px;
}
#headerIcon .mail {
  right: 90px;
}
#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 #e3e1e8;
  padding: 16px 16px 16px 40px;
  font-size: 16px;
  color: #000 !important;
  text-indent: -0.5em;
}
#header_nav li:first-child a {
  padding: 23px 16px 24px 40px;
}
#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 23px;
  padding: 10px 10px;
  font-size: 13px;
  border-radius: 30px;
  text-align: center;
  position: relative;
  top: 0;
  box-shadow: 0px 3px 0px transparent;
}
.btn a.tapStyle {
  top: 2px;
  box-shadow: 0 1px 0 transparent;
}

p.btn A::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -8px;
  right: 15px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
}
p.btn A::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -3px;
  right: 21px;
  width: 5px;
  height: 5px;
  border-top: 1px solid;
  border-right: 1px solid;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#topPage .entryBody h2 {
  padding: 0;
  margin: 0 -10px 20px;
}
#topPage h2 img {
  margin-bottom: 0 !important;
  width: 100%;
}

/* 横幅超過 */
#topPage .entryBody {
  padding: 0 10px;
  max-width: 620px;
}

/* NEWS */
#top_news {
  margin-top: 20px;
  margin-bottom: 40px;
}
#top_news .topLatestBlog {
  margin: 0 10px 0 20px;
  padding: 20px 20px 0;
  overflow: hidden;
  background: #f1f0f5;
  box-shadow:-10px 10px 0px 0px #e3e1e8;
}
#top_news .topLatestBlog li span.logoEnpty {
  background-color: #fff;
}

/* QUESTION */
#top_question {
  margin-bottom: 20px;
}

/* ANSWER */
#top_answer {
  margin: 0 -10px 20px;
}

/* TECHNIQUE */
#top_technique {
  margin-bottom: 20px;
}

/* top_bnr */
#top_bnr {
  margin: 0 -10px;
}
.top_bnr_inner img {
  width: 50%;
  margin-bottom: 0 !important;
}

/* CONCEPT */
#top_concept {
  margin-bottom: 20px;
}
#top_concept h2 {
  margin-bottom: 0 !important;
}
.top_concept_txt {
  background: #f1f0f5;
  margin: 0 -10px;
  padding: 0 10px 10px 10px;
  overflow: hidden;
}

/* SALON */
#top_salon {
  margin-bottom: 20px;
}
#top_salon th {
  width: 5em;
}


/* ==================== フッター ==================== */
footer {
  background: #f1f0f5;
}
#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: 15px 10px 10px;
  overflow: hidden;
}
DIV#footerTop P#siteTop {
  float: left;
  display: inline-block;
  padding: 0px;
  border-radius: 2px;
  text-decoration: none;
  width: 46%;
  text-align: center;
  font-size: 11px;
  margin: 0;
}
P#pageTop {
  float: right;
  display: inline-block;
  padding: 0px;
  border-radius: 2px;
  text-decoration: none;
  width: 46%;
  text-align: center;
  font-size: 11px;
  margin: 0;
}
P#siteTop 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;
  text-align: center;
}
#pcsite {
  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;
}

#footer_logo img,
.cmn_btn_column img,
.cmn_contact,
.cmn_reproda img {
  width: 100%;
  height: auto;
}

#footer_logo {
  text-align: center;
  margin: 20px 0;
}
#footer_logo img {
  width: 102px;
}

.cmn_btn_column,
.cmn_reproda {
  text-align: center;
  margin: 0 auto 10px;
  padding: 0 10px;
}
.cmn_btn_column img {
  max-width: 300px;
}
.cmn_reproda img{
  max-width:200px;
}
.cmn_tel {
  margin: 0 auto 10px;
  max-width: 270px;
  width: calc(100% - 50px);
  background: #fff;
  border-radius: 5px;
  text-align: center;
  padding: 10px 15px 0;
  overflow: hidden;
}
.cmn_tel_txt span {
  font-size: 20px;
  font-weight: bold;
  margin-left: 10px;
}

.cmn_contact {
  margin: 0 auto 20px;
  max-width: 300px;
  width: calc(100% - 20px);
  text-align: center;
}
.cmn_contact p {
  margin-bottom: 0 !important;
}

.footer_btn_contact {
  width: 205px;
  margin: 0 auto 10px;
  display: block;
}
.footer_icon {
  width: 40px;
  margin-left: 5px;
  margin-right: 5px;
  margin-bottom: 10px;
}

/* ==================== 下層ページ ==================== */
.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;
}
#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%;
}
.topLatestBlog li div h3,
.topLatestBlogTxt li h3,
#contents .entryList li div h3,
#contents .categoryTopList h3 {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
}
.topLatestBlog li div h3::after,
.topLatestBlogTxt li h3::after,
#contents .entryList li div h3::after,
#contents .categoryTopList h3::after {
  display: none;
}
.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;
}
/* ----- 美容サロンオーナー様へ ----- */
#contents .bg_letter{
  background:#f4f1e7;
  border-radius:10px;
  padding:10px;
}
#contents .letter_wrap{
  background:
    url(/cmn/images/letter_bg_01.png) no-repeat top left/100%,
    url(/cmn/images/letter_bg_03.png) no-repeat bottom left/100%;
    padding:8% 0 9%;
}
#contents .letter_content{
  background:url(/cmn/images/letter_bg_02.png) repeat top left/100%;
  padding:0 30px;
}
#contents .letter_content p:first-of-type{
  font-size:1.4em;
}
#contents .letter_content p{
  line-height:2em;
  font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}
#contents .letter_content p img{
  max-width:30%;
}
#contents .contact_btn a{
  width:100%;
  background:#a56fc1;
  color:#fff;
  font-weight:bold;
  line-height:1.5em;
  padding:20px 0;
  text-align: center;
  display: block;
  margin:0 auto 10px;
  text-decoration: none;
}
#contents .contact_btn a i{
  font-size:2em;
}
#contents #mainMenu{
  margin:10px auto;
}
#contents #mainMenu li{
  width:33%;
  float: left;
}
/* ==================== ブログ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;
  border: none;
  padding: 0;
  font-size: 12px;
  line-height: 1.3;
}
#galleryList li h3::after {
  display: none;
}
#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;
  width: calc(100% - 20px);
  margin: 0 auto 20px;
  border: 1px solid #ddd;
}
aside.categoryList h3 {
  padding: 10px 10px 10px 15px;
  margin: 0;
  background: #f1f0f5;
  border: none;
}
aside.categoryList h3::after {
  display: none;
}
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;
  border: 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;
  border: 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 #000;
  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;
}

/* ==================== 汎用デフォルト設定 ==================== */
/* ------ margin ------ */
.sp_m_A { margin: 0 auto !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_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_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_img_w_l img {
  height: auto;
  width: 100%;
}

/* ----- grid ----- */
.sp-row-10 {
  margin-left: -5px;
  margin-right: -5px;
}
.sp-row-10 > div {
  padding-right: 5px;
  padding-left: 5px;
}

.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 {
  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-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;
}

/* ------ カラム640px中央揃え ------ */
.column_wrapper {
  margin: 0 auto;
  max-width: 640px;
}

/*SPのみ非表示*/
.sp_d_n { display: none !important; }

/* ------ リスト ------ */
#contents .list_point,
#contents .list_number,
#contents .list_check {
  margin: 0px 0px 10px 0px;
  padding: 0px;
}
#contents .list_point li,
#contents .list_number li,
#contents .list_check li {
  margin: 0;
  padding: 10px 0px 10px 25px;
  list-style: none;
  position: relative;
  border-bottom: 1px solid #e3e1e8;
}
#contents .list_point LI::before { /* >リスト */
  content: "";
  position: absolute;
  top: 19px;
  left: 10px;
  width: 3px;
  height: 3px;
  border-top: 2px solid #a56fc1;
  border-right: 2px solid #a56fc1;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#contents .list_number { /* 数字リスト */
  counter-reset: counter-list;
}
#contents .list_number li {
  padding-left: 2em;
}
#contents .list_number li::before {
  counter-increment: counter-list;
  content: counter(counter-list);
  color: #a56fc1;
  position: absolute;
  left: 0;
  font-weight: bold;
  width: 1.5em;
  text-align: right;
}
#contents .list_check LI::before { /* チェック */
  content: "";
  position: absolute;
  top: 15px;
  left: 5px;
  width: 10px;
  height: 10px;
  border-right: 2px solid #ddd;
  border-bottom: 2px solid #ddd;
}
#contents .list_check LI::after {
  content: "";
  position: absolute;
  top: 9px;
  left: 3px;
  width: 5px;
  height: 10px;
  border-right: 2px solid #a56fc1;
  border-bottom: 2px solid #a56fc1;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* ------ 装飾解除 ------ */
H2.nodeco,
H3.nodeco,
H4.nodeco{
  background:none;
  border:none;
  padding:0;
}
H2.nodeco img,
H3.nodeco img,
H4.nodeco img{
  display:block;
  margin:0px auto;
}
H2.nodeco::before,
H3.nodeco::before,
H4.nodeco::before,
H2.nodeco::after,
H3.nodeco::after,
H4.nodeco::after {
  display: none;
}

/* ----- 湯浅 真悟 ----- */
#staff_main {
  background: url(../../images/staff_bg_main_sp.jpg) no-repeat center top #ebddc9;
  background-size: 450px 320px;
  padding: 280px 10px 10px;
}

/* ----- 料金表 ----- */
#contents .menu_price th,
#contents .menu_price td {
  border: none;
  width: auto;
  background: #f1f0f5;
  padding: 10px 10px;
}
#contents .menu_price th {
  font-weight: bold;
}
#contents .menu_price td {
  text-align: right;
  width: 8em;
}
#contents .menu_price tr:nth-child(2n) th,
#contents .menu_price tr:nth-child(2n) td {
  background: #e3e1e8;
}

/* ----- リプロダについて ----- */
/* answer */
#reproda_answer {
  background: url(../../images/reproda_bg_answer.jpg) no-repeat center center;
  background-size: cover;
  margin: 0 0 20px;
  padding: 20px 0;
}
.reproda_answer_txt {
  background: rgba(255,255,255,0.8);
  margin: 0 20px;
  padding: 20px;
}
.txt_underline {
  background: linear-gradient(transparent 60%, #f1edfb 60%);
}

/* flow */
#reproda_flow {
  margin-bottom: 20px;
}
.flow_box {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}
#contents .flow_box h4 {
  width: 60px;
  text-align: center;
  background: #f1edfb;
  margin: 0;
  padding: 70px 0 0 0;
  position: relative;
}
#contents .flow_box h4::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -20px;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 30px 0 30px;
  border-color: #f1edfb transparent transparent transparent;
}
.flow_num {
  display: inline-block;
  position: absolute;
  top: 20px;
  left: 50%;
  margin-left: -20px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  line-height: 40px;
  color: #a56fc1;
  background: #fff;
}
.flow_ttl {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.flow_inner {
  width: calc(100% - 70px);
}

/* happy */
#reproda_happy {
  margin-bottom: 20px;
}
#contents #reproda_happy ol {
  background: #F1EDFB;
  padding: 20px;
}
#contents #reproda_happy li {
  font-size: 16px;
  border: none;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-right: 10px;
  line-height: 150%;
}
#contents #reproda_happy li:nth-child(odd) {
  background: #fff;
}

/* voice */
#reproda_voice {
  background: url(../../images/reproda_bg_voice.jpg) no-repeat center center;
  background-size: cover;
  margin: 0 0 20px;
  padding: 20px 0 0;
  text-align: center;
  overflow: hidden;
}
#reproda_voice h3 {
  margin-bottom: 150px !important;
}

/* トップページYouTube埋め込み */
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}