@charset "UTF-8";

/*
Theme Name: alaise
*/


/* googleフォントの読み込み */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Libre+Bodoni:ital,wght@0,400..700;1,400..700&display=swap');


/* -----------------------------------
■共通設定
----------------------------------- */

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

html {
	/* 文字の大中小がある場合、bodyに設定したサイズが上書きされるため「html」に設定。 */
/*	font-size: 119%;*/
	font-size:0.98958333333333vw;
	color: #666666;
}
body {
	font-size: 100%;
	margin: 0;
	padding: 0;
	
	color: #666666;
	font-family: "Noto Sans JP", sans-serif;
}

header, main, aside, footer{
    display: block;
	margin: 0;
    padding: 0;
}

a {
	-webkit-transition: all 0.5s ease-out;  /* Saf3.2+, Chrome */
	-moz-transition: all 0.5s ease-out;  /* FF4+ */
	-ms-transition: all 0.5s ease-out;  /* IE10? */
	-o-transition: all 0.5s ease-out;  /* Opera 10.5+ */
	transition: all 0.5s ease-out;
}

a img{
	-webkit-transition: all 0.5s ease-out;  /* Saf3.2+, Chrome */
	-moz-transition: all 0.5s ease-out;  /* FF4+ */
	-ms-transition: all 0.5s ease-out;  /* IE10? */
	-o-transition: all 0.5s ease-out;  /* Opera 10.5+ */
	transition: all 0.5s ease-out;
}
a:hover img{
	opacity: 0.5;
}

a:link, a:visited{
	color: #666666;
	text-decoration: underline;
}
a:hover{
	color: #AAAAAA;
	text-decoration: none;
}

p {
	margin: 0 0 1.2em 0;
	line-height: 1.9em;
}

/* -----------------------------------
■カスタムテーマwp独自スタイルの補足
----------------------------------- */

.alignnone {
    margin: 0 0 0 0;
}
 
.aligncenter,
div.aligncenter {
    display: block;
    margin: 0 auto 0 auto;
}
 
.alignright {
    float:right;
    margin: 0 0 20px 20px;
}
 
.alignleft {
    float: left;
    margin: 0 20px 20px 0;
}
 
.aligncenter {
    display: block;
    margin: 0 auto 5px auto;
}
 
a img.alignright {
    float: right;
    margin: 0 0 20px 20px;
}
 
a img.alignnone {
    margin: 0 0 0 0;
}
 
a img.alignleft {
    float: left;
    margin: 0 20px 20px 0;
}
 
a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}
 
.wp-caption {
    background: #eee;
    border: 1px solid #ddd;
    max-width: 96%;
    padding: 10px;
}
 
.wp-caption.alignnone {
    margin: 0 0 0 0;
}
 
.wp-caption.alignleft {
    margin: 0 20px 20px 0;
}
 
.wp-caption.alignright {
    margin: 0 0 20px 20px;
}
 
.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}
 
.wp-caption p.wp-caption-text {
    margin: 0;
    padding: 5px 0;
}

/* ◆次へ・前へ◆ */

.naviLinkArea, .naviLinkArea2 {
	margin-top:100px;
	text-align:center;
}

.naviLinkArea a, .naviLinkArea2 a {
	position: relative;
	display: inline-block;
	width: auto;
	margin: 0 0.8em 1em 0.8em;
	padding: 0.5em 1em 0.5em 1em;
	background: #666666 !important;
	border: solid 1px #666666;
	color: #FFF !important;
	text-decoration: none !important;
}

.naviLinkArea a:after, .naviLinkArea2 a:after {
	content: '';
	width: 0.6em;
	height: 0.6em;
	border: 0px;
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 0.3em);
	right: 1em;
}

.naviLinkArea  span.butNextPost a, .naviLinkArea2 span.butNextPost a {
	padding: 0.5em 2em 0.5em 1em;
}
.naviLinkArea  span.butNextPost a:after, .naviLinkArea2 span.butNextPost a:after {
	right: 1em;
}
.naviLinkArea  span.butPreviousPost a, .naviLinkArea2 span.butPreviousPost a {
	padding: 0.5em 1em 0.5em 2em;
}
.naviLinkArea  span.butPreviousPost a:after, .naviLinkArea2 span.butPreviousPost a:after {
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	left: 1em;
}

.naviLinkArea a:hover, .naviLinkArea2 a:hover {
	color: #666666 !important;
	background: #FFF !important;
	text-decoration: none;
}
.naviLinkArea a:hover:after, .naviLinkArea2 a:hover:after {
	border-top: solid 2px #666666;
	border-right: solid 2px #666666;
}

/* 両端の場合 */
.naviLinkArea2 {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
}
.naviLink2 a {
	margin: 0 0.5em 1em;
}
 .naviLinkArea2 a {
	margin: 0 0.5em 1em;
}

/* ◆ページネーション◆ */
.pagination {
display: flex;
align-items: center;
justify-content: center;
margin: 40px 0;
position: relative;
font-size: 13px;
}

.pagination span, .pagination a {
display: block;
width: auto;
margin: 4px;
padding: 8px;
border: 1px solid #666666;
background-color: #fff;
text-decoration: none;
text-align: center;
line-height: 16px;
}

/* ページ番号 */
.pagination .pager{
width: 32px;
}

/* ホバー時 & 現在のページ */
.pagination a:hover,
.pagination .current {
color: #fff;
border-color: #666666;
background-color: #666666;
}

/* 前へ */
.pagination a.prev {
margin-right: 16px;
}
/* 次へ */
.pagination a.next {
margin-left: 16px;
}
/* 最初へ */
.pagination a.first {}
/* 最後へ */
.pagination a.last {}

/* Page x / y */
.pagination span.page_num {
display: none;
}

/* -----------------------------------
■クリップボード専用
----------------------------------- */

/* ◆画像◆ */

.imageArea{
	width: 100%;
	display: block;
	text-align: center;
}
.imageArea img{
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto 1rem auto;
}


/* -----------------------------------
■基本レイアウト
----------------------------------- */

h1{
	font-size: 279.7347368421053%;
	font-weight: 500;
	margin: 0;
	padding: 0;
	line-height: 1.5em;
	border: none;
}
h1.imageH1{
	margin: 0;
	padding: 0;
	line-height: 1.0em;
	border: none;
}

h2{
	font-family: "Libre Bodoni", serif;
	font-size:245%;
	font-weight: normal;
	margin: 120px auto 0.5em;
	border-bottom: 1px solid #666666;
	line-height: 1.3em;
	padding: 0 0 0.2em 0;
}
h2 > span{
	display: inline-block;
	font-size: 59.35201510117919%;
	font-family: "Noto Sans JP", sans-serif;
	margin-left: 2em;
}
h2 > span.h2SP{
	display: inline;
	font-size: 100%;
	font-family: "Libre Bodoni", serif;
	margin-left: auto;
}

h2.h2AM{
	margin: 120px auto 1.5em;	
}
.flex2Area h2.h2AM{
	text-align: center;
	margin: 0 auto 1.5em;
}
.flex2Area h2.h2AM > span{
	margin-left: 0.5em;
}

h2.imageH2{
	margin: 0 auto 105px;
	padding: 0;
	line-height: 1.0em;
	border: none;
}

h3{
	font-size:140%;
	font-weight: 500;
	line-height: 1.3em;
}
h3 > span{
	display: inline-block;
	margin-left: 1.3em
}

.emphasisFont{
	font-size: 123%;
	margin-bottom: 80px;
	text-align: right;
}

/* 下線（左から右に表れて、左から右に消える） */
.linkLtoR{
	display:inline-block;
	position:relative;
}
.linkLtoR::after{
	content:'';
	position:absolute;
	width:100%;
	transform:scaleX(0);
	height:2px;
	bottom:-5px;
	left:0;
	background-color:#666666;
	transform-origin:bottom right;	/* ここを変えてアニメの開始位置を操作している */
	transition:transform .3s cubic-bezier(.86,0,.07,1)
}
.linkLtoR:hover::after{
	transform:scaleX(1);
	transform-origin:bottom left;	/* ここを変えてアニメの開始位置を操作している */
}

/* 矢印型ボタンリンク */
a.cmenuBtn{
	display: inline-block;
	background-size: contain;
	line-height: 0;
	width: 19.79166666666667vw;	/* 380 */
}
a.cmenuBtn img{
	width: 19.27083333333333vw;	/* 実寸 - 10px（動かす分） */
	height: auto;
}
a.cmenuBtn:link, a.cmenuBtn:visited{
	padding: 0 0.5208333333333367vw 0 0;
	-webkit-transition: all 0.3s ease-out;  /* Saf3.2+, Chrome */
	-moz-transition: all 0.3s ease-out;  /* FF4+ */
	-ms-transition: all 0.3s ease-out;  /* IE10? */
	-o-transition: all 0.3s ease-out;  /* Opera 10.5+ */
	transition: all 0.3s ease-out;
}
a.cmenuBtn:hover{
	padding: 0 0 0 0.5208333333333367vw;
	-webkit-transition: all 0.3s ease-out;  /* Saf3.2+, Chrome */
	-moz-transition: all 0.3s ease-out;  /* FF4+ */
	-ms-transition: all 0.3s ease-out;  /* IE10? */
	-o-transition: all 0.3s ease-out;  /* Opera 10.5+ */
	transition: all 0.3s ease-out;
}
a.cmenuBtn:hover img{
	opacity: 1.0;
}

/* ■ファイルアイコンの自動表示 */
a:not(.noIcon)[href$=".pdf"]:after,
span.markPdf:after{
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconPdf.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".doc"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconDoc.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".docx"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconDocx.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".xls"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconXls.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".xlsx"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconXlsx.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".csv"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconCsv.gif) no-repeat center right;
	vertical-align: sub;
}
a:not(.noIcon)[href$=".zip"]:after {
    content:" ";
    display: inline-block;
    width: 37px;
    height: 15px;
    background: url(images/file_icon/iconZip.gif) no-repeat center right;
	vertical-align: sub;
}

/* ■ファイルアイコン非表示エリア */
.linkNoMark a:not(.noIcon)[href$=".pdf"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".doc"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".docx"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".xls"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".xlsx"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".csv"]:after {
    display: none;
}
.linkNoMark a:not(.noIcon)[href$=".zip"]:after {
    display: none;
}

/* -----------------------------------
■ヘッダー
----------------------------------- */

header {
	margin: 0 auto;
}
.contentsNestHeaderMenu {
	width: 90%;
	max-width: 89.58333333333333%; /*1720px;*/
	margin: 0 auto;
	padding: 0;
}
.headerAreaFlex{
	position: relative;
	width: 100%;
	max-width: 96.51162790697674%;/*1660px;*/
	margin: 0 auto 0 0;
	padding: 80px 0 70px 0;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;	

	gap: 1.8em;
}
.headerAreaFlex > div:last-child > a {	/* LINEボタン */
	background: url("images/common/line.svg") center center no-repeat;
	background-size: cover;
	display: inline-block;
	line-height: 0;
}
.headerAreaFlex > div:last-child > a img{
	opacity: 0;		/* 画像は透過させる（背景だけで表示して、cssが効かないときのみ画像で表示） */
}
.headerAreaFlex > div:last-child > a:hover{
	background: url("images/common/line_on.svg") center center no-repeat;
}

/* ハンバーガーメニューボタン */
.mainMenuButton {
	display: none;
	top: 30px;
	right: 10px;
	
	margin: 0;
	width: auto;
	
	z-index: 1000000;
}
.menu_button_view4 {
  position: relative;
  display: inline-block;
  width: 80px;
  height: 80px;
  background: #FFFFFF;
  cursor: pointer;
}
.menu_button_view4:before,
.menu_button_view4:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0px;
  right: 0px;
  margin-top: -1px;
  border-top: 3px solid #999999;
  transition: transform 0.3s;
}
.menu_button_view4:after {
  border-bottom: 3px solid #999999;
  padding-top:23px;
}
.menu_button_view4:before {
  transform: translateY(-25px);
}
.menu_button_view4:after {
}

.menu_button_view4.active:before {
  transform: rotate(45deg);
}
.menu_button_view4.active:after {
  transform: rotate(-45deg);
  border-bottom: none;
  padding-top:0;
}

/* メニュー */
.menuArea{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 20px 1.3em;

	font-family: "Libre Bodoni", serif;
	font-size: 123.0831578947368%;
}
.menuArea a{
}
.menuArea a:link, .menuArea a:visited{
	text-decoration: none;
	color: #666666;
}
.menuArea a:hover{
	color: #666666;
}

a.lineBtn{
	display: inline-block;
	padding: 0.6em 3.0em 0.7em;
}
a.lineBtn:link, a.lineBtn:visited{
	text-decoration: none;
	border: 1px solid #4d4d4d;
	color: #4d4d4d;
}
a.lineBtn:hover{
}

.logoArea{
	text-align: center;
	padding: 0 0 60px 0;
}

/* -----------------------------------
■コンテンツ
----------------------------------- */

main {
	width: 100%;
	margin: 0 auto;
	padding-bottom: 60px;
	
	overflow: hidden;
}
main img{
	max-width: 100%;
	height: auto;
}
.contentsBgColorB{
	padding: 1px 0 0 0;
	background: #f7f6ee;
	width: 100%;
	margin: 0 auto;
}
.contentsBgColorB2{
	background: #f7f6ee;
}

.contentsNest {
	position: relative;
	width: 90%;
	max-width: 83.33333333333333%; /*1600px;*/
	margin: 0 auto;
	padding: 0;
}
.contentsNestSmFull {	/* スマホ時調整用 */
}
.contentsNestSpace {	/* 上下スペースが必要な場合 */
	padding: 220px 0;
}
.contentsNestSpace2 {	/* 上下スペースが必要な場合 */
	padding: 220px 0 160px;
}
.contentsNestSpace3 {	/* 上下スペースが必要な場合 */
	padding: 220px 0 60px;
}
.contentsNestSpaceU {	/* 下のみスペースが必要な場合 */
	padding: 0 0 120px 0;
}
.contentsNestSpaceU2 {	/* 下のみスペースが必要な場合（広め） */
	padding: 0 0 140px 0;
}

.contentsNestSpace h2{
	margin: 0 0 1.4em 0;		/* 専用の空き */
}
.contentsNest2 {
	position: relative;
	width: 90%;
	max-width: 65.10416666666667%; /*1250px;*/
	margin: 0 auto;
	padding: 220px 0;
}
.contentsNest3 {
	position: relative;
	width: 90%;
	max-width: 69.79166666666667%;/*1340px;*/
	margin: 0 auto;
	padding: 220px 0;
}

.flex2Area{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
.flex2Area > div{
	width: 47%;
}
.flex3Area{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
.flex3Area > div{
	width: 33.333%;
}

.pcRight_smCenter{	/* pc時の時だけ右寄せ、スマホ時は真ん中 */
	text-align: right;
}

.pagetop{
	text-align: center;
	margin-top: 120px;
}
.pagetop2{
	text-align: center;
	margin: -30px 0 0 0;
	padding: 0 0 100px 0;
}

/* -----------------------------------
■トップページ
----------------------------------- */

/* ファーストビュー */
.firstViewArea{
	position: relative;
	background: center center no-repeat;
	background-size: cover;
/*	height:760px;*/
	margin: 0 auto 80px;
	line-height: 1.0;

	overflow: hidden;
}
.firstViewArea img{
/*	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	
	max-width: none;
	width: 1600px;
	height: 760px;*/
}

/* bxslider調整用 */
.bx-wrapper {
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  border: none;
  background: none;
}
.bx-wrapper > div {		/* bxsliderのjavascriptで自動生成されるもの */
}
.bxslider{
}
.bxslider > div{
}

/* 高さを固定化 */
/* 画像のcover設定 */
.bxslider > div > img{
	width: 100%;
	height: auto;
}

/* スライドの拡大アニメーション */
@keyframes zoomOut {
  0% {
      transform: scale(1);
  }
  100% {
      transform: scale(1.09);
  }
}
.bxslider > div.active-slide > img {
/*    animation: zoomOut 10s linear 0s;
    animation-fill-mode: both;*/
}

/* デフォルトの枠とか消す */
.bx-wrapper {
    background-color: transparent;
    margin: 0px auto;
    border: none;
    box-shadow: none;
}

/*----- スライドのページャー -----*/
.slidePager {
	position: absolute;
	z-index: 1000;
	top: 50%;
	right: 20px;
	transform: translate(0, -50%);	

	text-align: center;
	font-size: 0.70em;
	font-family: Arial;
	font-weight: bold;
	color: #666;
	padding-top: 20px;
}
.slidePager .bx-default-pager a {
	line-height: 0;

	background: #FFFFFF;
	text-indent: -9999px;
	display: block;
	width: 1em;
	height: 1em;
	margin: 15px 5px;
	outline: 0;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
}
.slidePager .bx-default-pager a:hover,
.slidePager .bx-default-pager a.active {
/* .slidePager .bx-default-pager a:focus { フォーカスがあると自動切り替わりでの挙動がおかしくなるので削除*/
	background: #2299ff;
}

.imgTopConcept{
	display: inline-block;
	border-bottom: 1px solid #666666;
	padding-bottom: 0.3em;
}
.imgTopMenu{
	display: inline-block;
	border-bottom: 1px solid #666666;
	padding-bottom: 0.5em;
}
.imgTopStaff{
	display: inline-block;
	border-bottom: 1px solid #666666;
	padding-bottom: 0.5em;
}
.imgTopFaq{
	display: inline-block;
	border-bottom: 1px solid #666666;
	padding-bottom: 0.3em;
}


/* 01、02 */
.topImageAreaTop{
	padding-top: 180px;
}
.topImageArea{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	align-items: center;
	
	width: 100%;
	background: #f7f6ee;
	padding: 0;
	margin: 0 auto;
}
.topImageArea > div{
	width: 50%;
}
.topImageArea > div:first-child{
	/*max-width: 700px;*/
	width: 36.5%;/*45%;*/
	padding-right: 4%;
}
.topImageArea p{
	line-height: 2.6em;
}

/* 01 */
.topImageAreaR{
	background: #FFFFFF;
	flex-direction: row-reverse;
	padding: 220px 0;
}
.topImageAreaR > div:first-child{
	padding-right: 0;
}
.topImageAreaR > div:last-child{
	padding-right: 4%;
}
.topImageAreaR .imageH2{		/* concept */
	margin-bottom: 65px;
}
.top01P{
	padding-left: 10%;
}

/* 02 */
.topImageAreaTop .imageH2{		/* Bridal shaving */
	margin-bottom: 40px;
}
.topImageAreaTop > .imageH2{	/* Menu */
	margin-bottom: 120px;
}
.top02Btn{
	text-align: right;
	margin: 95px 0 0 0;
}

/* メニュー */
.topMenuArea{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	margin: 0 auto;
	gap: 80px 0;
 }
.topMenuArea > div{
	width:44%;
	margin: 0 0;
}

h3.topMenuH3{
	font-family: "Libre Bodoni", serif;
	font-size:150%;
	font-weight: normal;
	
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	
	line-height: 1.3em;
	padding-bottom: 0.2em;
	border-bottom: 1px solid #666666;
}
h3.topMenuH3 > span{
	margin: 0;
}
h3.topMenuH3 > span.toph3sub{
	font-family: "Noto Sans JP", sans-serif;
	font-size: 83.54736842105263%;
	font-weight: 500;
}
.topMenu{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	
	gap: 0 0.5em;
	margin-bottom: 1.3em;
	
	font-size: 124.3210526315789%;
}
.topMenu > div:first-child{
	font-weight: 500;
}
.topMenu > div:last-child{
	margin-right:0;
	margin-left: auto;
}
.topMenu > div > span{
	font-size: 84.67042038863727%;
	font-weight: normal;
}
.topMenu + .topMenuH3{
	margin-top: 82px;
}
.topMore{
	align-items: center;
	font-size: 93.24473684210526%;
	margin: 95px 0 0 0;
}

/* 矢印型ボタンリンクの画像指定*/
a.cmenuBtnBS {
	background: url("images/common/cmenu_btn.svg") center center no-repeat;
}
a.cmenuBtnL {
	background: url("images/common/cmenu_btn_l.svg") center center no-repeat;
}
a.cmenuBtnA {
	background: url("images/common/cmenu_btn_a.svg") center center no-repeat;
}
a.cmenuBtnH {
	background: url("images/common/cmenu_btn_h.svg") center center no-repeat;
}
a.cmenuBtnE {
	background: url("images/common/cmenu_btn_e.svg") center center no-repeat;
}
a.cmenuBtnM {
	background: url("images/common/cmenu_btn_m.svg") center center no-repeat;
}

/* 03 */

.topStaffArea{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
.topStaffArea > div{
	width: 26.5%;
}
.topStaffName{
	font-size: 167.5289473684211%;
	font-weight: 500;
	text-align: center;
	margin: 1.6em auto 0.1em;
	line-height: 1.2em;
}
.topStaffName span{
	font-size: 42.30093777980239%;
	font-weight: normal;
	letter-spacing:0.25em;
	padding-left: 0.25em;
}
.topStaffSub2{
	font-size: 72%;
	line-height: 1.9em;
	margin: 0 auto 0.8em;
	text-align: center;
}

.topStaffMain{
	line-height: 2.1em;
	margin: 0 auto 1.8em;
}
.topStaffSub{
	font-size: 72%;
	line-height: 1.9em;
}

/* 04 */
.topFaqArea{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	margin: 0 auto;
	gap: 80px 0;
 }
.topFaqArea > div:nth-child(odd){
	width:45%;
	margin: 0 0;
}
.topFaqArea > div:nth-child(even){
	width:49%;
	margin: 0 0;
}
.topFaqFlexQ, .topFaqFlexA{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
}
.topFaqFlexQ > div:first-child, .topFaqFlexA > div:first-child{
	width:1.3em;
	font-size:207.39%;
	line-height: 1;
}
.topFaqFlexQ > div:last-child, .topFaqFlexA > div:last-child{
	flex: 1;
}
.topFaqFlexQ{
	margin-bottom: 1.2em;
}
.topFaqFlexA{
}
.topFaqFlexQ > div:last-child{
	font-size:131.5789473684211%;
	font-weight: 500;
	line-height: 1.6em;
}
.topFaqFlexA > div:last-child{
	padding-top: 0.5em;
	font-size:94.73684210526316%;
	line-height: 1.9em;
}
.topFaqFlexA + .topFaqFlexQ{	/* 直に並んでいるの場合スペースを空ける */
	padding-top: 80px;
}

/* 矢印型ボタンリンクのサイズ+画像指定*/
a.faqBtn {
	background: url("images/common/faq_btn.svg") center center no-repeat;
	width: 15.83333333333333vw;	/* 304 実寸 - 10px（動かす分） */
}
a.faqBtn img{
	width: 15.3125vw;	/* 実寸 - 10px（動かす分） */
	height: auto;
}

/* 外観 */
.topExterior{
	width: 100%;
	margin: 0 auto;
}
.topExterior > img{
	width: 100%;
	height: auto;
}

/* お店の情報 */
.topInfomationFlex{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	
	gap: 0 1em;	
	
	margin: 0 auto 120px;
}
.topInfomationFlex > div{
	width: 43%;
}
.topInfomationFlex > div p{
	margin: 0 auto 1.5em;
}
.topInfomationFlex a:link, .topInfomationFlex a:visited{
	color: #666666;
	text-decoration: underline;
}
.topInfomationFlex a:hover{
	color: #AAAAAA;
	text-decoration: none;
}

h3.topInfomationH3{
	font-size:150%;
	font-weight: 500;
	line-height: 1.3em;
	margin: 0 0 1.3em 0;
}
.topInfomationFlex2{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 0.2em;	
	margin: 0 0 1.5em;
}
.topInfomationFlex2 .tel-link{
	font-size: 130.5431578947368%;
	font-weight: 500;
}

.topLineLink{
	display: inline-block;
	font-size: 85.78526315789474%;
	border: 1px solid #666666;
	padding: 0.15em 0.9em 0.3em;
}
a.topLineLink:link, a.topLineLink:visited {
	text-decoration: none;
}
a.topLineLink:hover {
	color: #FFFFFF;
	background: #666666;
}

.topCancelPolicy{
	text-align: right;
	margin-top: 70px;
}
a.CancelPolicyBtn {	/* キャンセルポリシーボタン */
	background: url("images/home/cancel_btn.svg") center center no-repeat;
	background-size: 99.5% auto;
	display: inline-block;
	line-height: 0;
	width:13.69791666666667vw;
}
a.CancelPolicyBtn img{
	opacity: 0;		/* 画像は透過させる（背景だけで表示して、cssが効かないときのみ画像で表示） */
	width:99.5%;
}
a.CancelPolicyBtn:hover{
	background: url("images/home/cancel_btn_on.svg") center center no-repeat;
}

.topGoogleMap {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-bottom: 33.84%;
	position: relative;
}
.topGoogleMap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}
.topGoogleCal {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-bottom: 75%;
	position: relative;
}
.topGoogleCal iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

.topInstaArea{
	text-align: center;
	margin: 120px 0 60px;
}


/* -----------------------------------
■Menu（ページ）
----------------------------------- */

/* 見出し */
.cMenuTitle, .bridalshavingTitle{
	position: relative;
	background: url("images/common/mian_menu_c.jpg") center center no-repeat;
	background-size: cover;
	width: 100%;
/*	height: 527px;*/
	padding: 13.72395833333333vw 0;
	margin: 0 auto 130px;
}
/*.cMenuTitle::after, .bridalshavingTitle::after{
	position: absolute;
	bottom: -70px;
	left: 50%;
	content: "";
	border-right: 8px solid #0d8db3;
	height: 165px;
}*/
.cMenuTitle > h1 > img, .bridalshavingTitle > h1 > img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

/* ページ内リンク */
.cMenuLinkArea{
	display: flex;
	flex-wrap: wrap;
	flex-flow: column wrap;
	justify-content: space-around;
	align-items: center;
	gap: 40px 0;
	
	width: 94.5%;
	margin: 0 auto 300px;
	max-height: 16em;
}
.cMenuLinkArea > a {
	position: relative;
	display: block;
	width: 44.5%;
	font-size: 147.3684210526316%;
	border: 1px solid #666666;
	padding: 0.7em 2.3em 0.7em 1.3em;
	line-height:1.5em;
}

/*確認用
.cMenuLinkArea{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	gap: 40px 5.333333333333333%;
	
	width: 100%;
}
.cMenuLinkArea > a {
	position: relative;
	display: block;
	width: 42%;
	font-size: 147.3684210526316%;
	border: 1px solid #666666;
	padding: 0.7em 2.3em 0.7em 1.3em;
	line-height:1.5em;
}*/

.cMenuLinkArea > a span{
	font-family: "Libre Bodoni", serif;
}
.cMenuLinkArea > a:link, .cMenuLinkArea > a:visited {
	color: #666666;
	text-decoration: none;
}
.cMenuLinkArea > a:link::after, .cMenuLinkArea > a:visited::after {
	top: 0;
	right: 1.0em;
	font: var(--fa-font-solid);
	content: '\f054';
	position: absolute;
	line-height:1.5em;
	padding: 0.75em 0 0.7em 0;
}
.cMenuLinkArea > a:hover {
	color: #FFFFFF;
	background: #666666;
	border-color: #666666;
}
.cMenuLinkArea > a:link::hover {
}

/* 値段表示 */

.cMenuTax{
	font-size: 93.24473684210526%;
	text-align: right;
	margin: -3.7em 0 1.2em 0;
}
.cMenuTax2{
	font-size: 93.24473684210526%;
	text-align: right;
	margin: 0 0 1.2em 0;
}

.s_emphasisFont{
	max-width: 32em;
	margin-right: 0;
	margin-left: auto;
	text-align: left;
}

.cMenuPrice, .cMenuPrice2, .cMenuPrice2_N, .cMenuPrice2_PB, .cMenuPrice2_C, .cMenuPrice2_C2 {
	position: relative;
	font-size: 147.3684210526316%;

	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	gap: 0 1em;
	line-height: 1.5em;
	margin: 0 0 15px 0;
	z-index: 10;

}
.cMenuPrice2_s{
	font-size: 89.51526315789474%;
	margin-bottom: 120px;
}
.cMenuPrice::before, .cMenuPrice2::before, .cMenuPrice2_N::before, .cMenuPrice2_PB::before, .cMenuPrice2_C::before, .cMenuPrice2_C2::before{
	content: "";
	position: absolute;
	top: 0.75em;
	left: 0;
	width: 100%;
	border-top: 0.1428571428571429em dotted #666666;
	z-index: -1;
}
.cMenuPrice > div{
	background: #FFFFFF;
}
.cMenuPrice2 > div, .cMenuPrice2_N > div, .cMenuPrice2_PB > div, .cMenuPrice2_C > div, .cMenuPrice2_C2 > div{
	background: #f7f6ee;
}
.cMenuPrice > div:first-child, .cMenuPrice2 > div:first-child{
	font-size: 96.42857142857143%;
	padding: 0 0.8em 0 0;
}
/*.cMenuPrice > div:last-child, .cMenuPrice2 > div:last-child, .cMenuPrice2_N > div:last-child, .cMenuPrice2_PB > div:last-child, .cMenuPrice2_C > div:last-child {
	text-align: left;
	width:10.5em;
}
.cMenuPriceAutoWidth{
	width: auto!important;
}*/
.cMenuPrice > div:last-child, .cMenuPrice2 > div:last-child{
	padding: 0 0 0 0.8em;
}
.cMenuPrice > div > span, .cMenuPrice2 > div > span{
	font-size: 60.71428571428571%;
}
.cMenuPrice > div > span, .cMenuPrice2 > div:first-child > span{
	font-size: 74.46792540635074%;
}
.cMenuPriceSub{
	font-size: 105%;
	margin: 0 0 1.5em 0;
	padding: 0 0 0 0.7em;
}

.cMenuABlock{
	margin: 0 0 100px 6%;
	padding: 0 0 0 0.8em;
}
.cMenuASub{
	font-size: 74.59578947368421%;
}
ul.cMenuUl2{
	margin: 0 0 60px 0;
	padding: 0 0 0 1.3em;
	line-height: 1.5em;
}
ul.cMenuUl2 > li{
	margin: 0 0 0.3em 0;
}
.cMenuPrice2_N{
	font-size: 100%;
	line-height: 1.5em;
	margin: 0 0 0.2em 0;
}
.cMenuPrice2_N > div:first-child{
	padding: 0 0.8em 0 0;
}
.cMenuPrice2_N > div:last-child{
	padding: 0 0 0 0.8em;
}
.cMenuPrice2_PB, .cMenuPrice2_C, .cMenuPrice2_C2{
	padding-left: 0.7em;
}
.cMenuPrice2_PB::before, .cMenuPrice2_C::before, .cMenuPrice2_C2::before{
	left: 0.7em;
	width: calc(100% - 0.7em);
}
.cMenuPrice2_PB > div:first-child{
	font-size: 74.99973541707089%;
	padding: 0 0.8em 0 0;
}
.cMenuPrice2_C > div:first-child{
	font-size: 67.02767537438484%;
	padding: 0 0.8em 0 0;
}
.cMenuPrice2_C2 > div:first-child{
	font-size: 80.99%;
	padding: 0 0.8em 0 0;
}
.cMenuPrice2_C2_t{
	font-size: 134.27263157894749%;
	margin: 3.2em 0 0.8em 0;
}
.cMenuPrice2_PB > div:last-child, .cMenuPrice2_C > div:last-child, .cMenuPrice2_C2 > div:last-child{
	padding: 0 0 0 0.8em;
}

.cMenuPrice2_EYE > div:first-child{
	width: 13.5em;
}
.cMenuPrice2_EYEsub > div:first-child, .cMenuPrice2_EYEsub2 > div:first-child{
	width: 13.5em;
	text-align: right;
	padding-right: 2em;
}
.cMenuPrice2_EYEsub2, .cMenuPrice2_EYEsub3{
	margin-bottom: 100px;
}

.cMenuALast{
	margin: 0 0 50px 0;
}

.cMenuATitle{
	font-size: 140.2405263157895%;
	margin: 0 0 0.7em 0;
}

.cMenuA3Flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 0.3em 8%;
	
	margin: 0 0 0.2em 0;

	font-size: 119.3536842105263%;
}
.cMenuA3Flex div:first-child{
	min-width: 8.3em;
}
.cMenuABig{
	font-size: 119.3536842105263%;	
}


/* リスト */
ul.cMenuUl{
	margin: 0 0 60px 6%;
	line-height: 1.5em;
}
ul.cMenuUl > li{
	margin: 0 0 0.2em 0;
}
.cMenuLinkBtnArea{
	background: #f7f6ee;
	padding: 2.5em 2em;
	margin: 100px 0 60px 0;

	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 1em 1em;
	line-height: 1.5em;
}

/* cozyリンク */
.cMenuflexCozy, .cMenuflexCozy2{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: flex-end;
	gap: 0 2em;
	font-size: 98.46684210526316%;
}
.cMenuflexCozy2{
	justify-content: center;
	align-items: center;
	margin: 120px auto 0;
}
.cMenuflexCozy > div, .cMenuflexCozy2 > div{
	line-height: 1.3em;
}
.cMenuflexCozy > div:last-child, .cMenuflexCozy2 > div:last-child{
	line-height: 1.0em;
}

/* 矢印型ボタンリンクの画像指定*/
a.cmenuBtnC {
	background: url("images/common/cmenu_btn_c.svg") center center no-repeat;
}

/* table */
.cMenuTable {
	width : 100%;
	margin: 0 auto 210px auto;
	padding: 0;
	border-collapse: collapse;
	border: 1px solid #999999;
}
.cMenuTable th {
	line-height: 1.5em;
	font-weight: normal;
/*	width: 20%;*/
	width: 50%;
	padding: 0.8em 1em;
	white-space: nowrap;
	border: 2px solid #999999;
	text-align: center;
	background: #f7f6ee;
}
.cMenuTable tr:first-child th {
	background: #e1dec0;
}
.cMenuTable td {
	width: 50%;
	line-height: 1.5em;
	padding: 0.8em 1em;
	border: 2px solid #999999;
	text-align: center;
}

/* -----------------------------------
■Bridal shaving
----------------------------------- */

/* 見出し */
.bridalshavingTitle{
	background-image: url("images/common/mian_bridalshaving.jpg");
}

/* 説明文 */
.bridalshavingCaption{
	font-size: 178.9473684210526%;
	font-weight: 500;
	text-align: center;
	line-height: 1.3em;
	margin: 0 auto 1.7em;
}
.bridalshavingCaptionMain{
	font-size: 110.5263157894737%;
	text-align: center;
	line-height: 2.2em;	
	margin: 0 auto;
}

.bridalshavingOptionArea{
	background: #f7f6ee;
	padding: 1.2em;
	margin: 0 0 3em 0;

	line-height: 1.5em;
}
.bridalshavingOptionArea .cMenuUl{
	padding-left: 3%;
	margin-bottom: 0;
}
.bridalshavingOptionArea .cMenuPrice2{
	font-size:100%;
	margin: 0 0 0 0;
}

.bridalshavingLastBottom{
	display: flex;
	flex-direction: column;
}
.bridalshavingLastBottom > div:last-child{
	margin: auto 0 0 0;
}

.bridalshavingASubTitle{
	font-size: 126.3157894736842%;
	margin: 0 0 0.8em;
}
.bridalshavingATitle{
	font-size: 140.2405263157895%;
	margin: 0 0 1.2em;
}
.bridalshavingATitle > div{
	display: inline-block;
	border: 1px solid #999999;
	padding: 0.1em 0.2em;
}
.bridalshavingATitle > div > span{
	font-size: 85%;
}
.bridalshavingAMain{
	margin: 0 0 0 4.0em;
}
.bridalshavingAMainTitle{
	position: relative;
	padding: 0 0 0 0;
	line-height: 1.8em;
}
.bridalshavingAMainTitle::before{
	content: "○";
	position: absolute;
	top:0;
	left:-1em;
}
.bridalshavingAMainTitle > span{
	font-size: 89.47368421052632%;
}
.bridalshavingAMainFlex{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
	margin: 0 0 1.8em 0;
}
.bridalshavingAMainFlex > div:first-child{
	width:5em;
}
.bridalshavingAMainFlex > div:last-child{
	flex: 1;
	width:100%;
}
.bridalshavingAMainFlex > div > div{
	margin: 0 0 0.5em 0;
}
.bridalshavingAMainFlex .cMenuPrice2{
	font-size:100%;
	margin: 0 0 0.4em 0;
}
.priceNormalSize{
	font-size:100%;
	margin: 0 0 1.8em 0;
}
.bridalshavingAMain2{
	margin: 0 0 1.8em 0;
	line-height:1.8em;
}
.bridalshavingASubArea{
	border: 1px solid #666666;
	padding: 2em 3em;
	margin: 0 0 3em 0;

	line-height: 2.0em;
}
.bridalshavingAMain ul{
	margin: 0.3em 0 0 0;
	line-height: 1.8em;
}
.bridalshavingAMain ul > li{
	margin: 0 0 0.2em 0;
}
.bridalshavingAMain ul .cMenuPrice2{
	font-size:100%;
	margin: 0 0 0 0;
}
.bridalsjavingTax{
	font-size: 93.24473684210526%;
	text-align: right;
	margin: 0 0 0 0;
}

/* 一番下の長い画像*/
.bridalsjavingLongImg{
/*	width: 100%;*/
	max-width: 1480px;
	margin: 0 auto;
}
.bridalsjavingLongImg > img{
	width: 100%;
	height: auto;
}

/* -----------------------------------
■FAQ
----------------------------------- */

/* 見出し（背景画像を使わないもの汎用） */
.noImageTitle{
	padding: 6.25vw 0 9.375vw;
	text-align: center;
}

.faqFlexQ, .faqFlexA{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
	margin: 0 0 1.0em 0;
}
.faqFlexQ > div:first-child{
	font-size: 207.39%;
	text-align: center;
	line-height: 1.1em;
	background: #d1d1d1;
	color: #FFFFFF;
	padding: 0.1em 0.45em 0.4em;
}
.faqFlexQ > div:last-child{
	flex: 1;
	font-size: 149.1921052631579%;
	background: #f7f6ee;
	padding: 0.25em 0.9em 0.25em;
	line-height: 1.5em;
}
 .faqFlexA{
	margin: 0 0 3.3em 0;
}
.faqFlexA > div:first-child{
	font-size: 207.39%;
	text-align: center;
	line-height: 1.1em;
	width: 1.7em;
	padding: 0;
}
.faqFlexA > div:last-child{
	flex: 1;
	font-size: 94.73684210526316%;
	line-height: 2.0em;
	padding: 0.7em 0.7em 0.9em 0.7em;
}


/* -----------------------------------
■キャンセルポリシー
----------------------------------- */

.cancelMain{
	max-width: 54.16666666666667%;/*1040px;*/
}
h2.cancel{
	font-family: "Noto Sans JP", sans-serif;
	font-size: 149.1921052631579%;
	margin: 0 0 1.2em 0;
	padding: 0.5em 1.0em 0.6em;
	border: none;
	background: #f7f6ee;
	text-align: center;
}
.cancelMain p{
	line-height: 2.0em;
	margin: 0 0 160px 0;
}
.cancelMain p.cancelP2{
	margin: 0 0 2.0em 0;
}


/* -----------------------------------
■フッター
----------------------------------- */
footer {
	background: #f7f6ee;
	margin: 0 auto;
	padding: 60px 0 120px 0;
}

.footerLogoArea{
	padding: 0 0 0 40px;
	margin: 0 0 30px 0;
}
.footerAreaFlex2{
	width: 100%;
	margin: 0 auto 75px 0;
	padding: 0 0 0 40px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;	
}
.footerFlexInfo{
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-end;
	line-height: 2.0em;
	gap: 0 5.989583333333333vw;
}
.footerFlexInfo > div:nth-child(2),
.footerAreaFlex2 > div:last-child {
	font-size: 74.59578947368421%;
	text-align: center;
}
.footerAreaFlex2 > div:last-child img {
	margin-top: 1.4em;
}

.footerAreaFlex{
	width: 100%;
	margin: 0 auto 0 0;
	padding: 0 0 0 40px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;	

	gap: 1.8em;
}
.footerMenuArea{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 20px 1.8em;

	font-family: "Libre Bodoni", serif;
	font-size: 115.7894736842105%;
}
.footerMArea a{
}
.footerMenuArea a:link, .footerMenuArea a:visited{
	text-decoration: none;
	color: #666666;
}
.footerMenuArea a:hover{
	color: #666666;
}
.footerMenuArea small{
	font-size:94.73684210526316%;
}

/* -----------------------------------
■レスポンシブ対応
----------------------------------- */

.smOnly {
	display: none;
}

/* PCのみ */
@media screen and (min-width:768px) {
.imgLine{
	display: inline-block;
	width:11.61458333333333vw;
}
.imgLine img{
	width:100%;
}
.logoArea img{
	width:16.04166666666667vw;
}
.imgTopConcept{
	width:14.21875vw;
}
.imgTopMenu{
	width:9.53125vw;
}
.imgTopBridalshaving{
	width:19.58333333333333vw;
}
.imgTopStaff{
	width:7.552083333333333vw;
}
.imgTopFaq{
	width:7.864583333333333vw;
}
.imgBrandlogo{
	width:10.36458333333333vw;	
}
.imgCozylogo{
	width:14.58333333333333vw;
}
.imgInstagram{
	width:4.270833333333333vw;	
}
	
.imgTitleMenu{
	width:11.04166666666667vw;
}
.imgTitleBridalShaving{
	width:27.13541666666667vw;
}
.imgTitleFaq{
	width:8.697916666666667vw;
}
.imgBridalShaving{
	width:26.04166666666667vw;
}

.pagetop img, .pagetop2 img{
	width:4.010416666666667vw;
}

.bridalsjavingLongImg{
	width: 77.08333333333333vw;
}

	/* ----- Bridal shaving ----- */

	.bridalshavingPCUnder0{
		margin-bottom: 0;
	}
}

/* ~~ スマホ ~~ */
@media screen and (max-width:767px) {
	
	html{
		/*font-size:200%;*/
		font-size:178%;	/*スマホ時のtopMenu内のspanのサイズ*/
		height: 100%;
	}

	.pcOnly {
		display: none;
	}

	.smOnly {
		display: inline;
	}

	/* ----- ■基本レイアウト ----- */

	h2{
		font-family: "Libre Bodoni", serif;
		font-size:190%;
		font-weight: normal;
		margin: 120px auto 0.5em;
		border-bottom: 1px solid #666666;
		line-height: 1.3em;
		padding: 0 0 0.2em 0;
	}
	h2 > span{
		display: block;
		margin-left: 1em;
	}
	h2 > span.h2SP{
		display: block;
		text-align: right;
	}
	.emphasisFont{
		font-size: 110%;
		margin-bottom: 100px;
		text-align: left;
	}

	/* ボタンのサイズ調整 */
	a.cmenuBtn{
		width: 448px;
	}
	a.cmenuBtn img{
		width: 436px;
	}
	a.cmenuBtn:link, a.cmenuBtn:visited{
		padding: 0 12px 0 0;
	}
	a.cmenuBtn:hover{
		padding: 0 0 0 12px;
	}

	/* □ファイルアイコンの自動表示 */
	a:not(.noIcon)[href$=".pdf"]:after,
	span.markPdf:after{
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconPdf2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".doc"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconDoc2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".docx"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconDocx2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".xls"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconXls2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".xlsx"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconXlsx2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".csv"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconCsv2.gif) no-repeat center right;
	    background-size: contain;
	}
	a:not(.noIcon)[href$=".zip"]:after {
	    width: 84px;
	    height: 30px;
	    background: url(images/file_icon/iconZip2.gif) no-repeat center right;
	    background-size: contain;
	}

	/* ----- ■ヘッダー ----- */
.contentsNestHeaderMenu {
	max-width: none;
}
.headerAreaFlex{
	max-width: none;
}

	/* 固定メニュー */
	.headerAreaFlex{
		position: fixed;
		top: 0;
		left: 0;
		
		margin: 0 auto 0 0;
		padding: 0;
		gap: 0 1.8em;
		
		height:140px;
		
		background: #FFFFFF;
		z-index: 100;
	}
	.headerAreaFlex > div:nth-child(2){
		padding-left: 37px;
	}
	.headerAreaFlex > div:last-child{
		padding-right: 37px;
	}
	.headerAreaFlex > div:last-child img{
		height: 100px;
		width: auto;
	}
	.mainMenuButton {
		display: block;
	}
	.menuArea{
		display: none;
	}
	.menuArea{
		position: fixed;
		top: 140px;
		left: 0;
		
		width: 100%;
		height: 100%;
		background: rgba(255,255,255,0.8);
		
		font-size: 6vw;
		padding: 0.5em 0.8em;
	}
	.menuArea > div a{
		display: block;
		padding: 0.5em 0;
	}

	/* ロゴ */
	.logoArea{
		padding: 220px 0 60px 0;
	}
	.logoArea img{
		width:400px;
	}

	/* ----- ■コンテンツ ----- */
.contentsNest {
	max-width: none;
}
.contentsNest2 {
	max-width: none;
}
.contentsNest3 {
	max-width: none;
}

	.contentsNestSmFull {
		width: 100%;
	}
	.flex2Area{
		display: block;
	}
	.flex2Area > div{
		width: 100%;
	}
	.flex3Area{
		display: block;
	}
	.flex3Area > div{
		width: 100%;
	}
	.flex3Area > div:last-child{
		margin-top: 40px;
	}
	.pcRight_smCenter{
		text-align: center;
	}
	.smOnlyUnder200{
		margin-bottom: 200px;
	}

.imgTitleMenu{
	width:24.77183833116037vw;
}
.imgTitleBridalShaving{
	width:59.71316818774446vw;
}
.imgTitleFaq{
	width:19.55671447196871vw;
}

	/* ----- ■トップページ ----- */

	/* ファーストビュー */
/*	.firstViewArea{
		width: 100%;
		height: 600px;
		margin: 0 auto 20px;
		
		overflow: hidden;
	}
	.firstViewArea img{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);

		max-width: none;
		width: 1263px;
		height: 600px;
	}*/
	.firstViewArea{
		width: 100%;
		height: 600px;
		margin: 0 auto 20px;
	}
	.bx-wrapper {			/* bxsliderのjavascriptで自動生成されるもの */
		height: 100%;
	}
	.bx-wrapper > div {		/* bxsliderのjavascriptで自動生成されるもの */
		height: 100%;
	}
	.bxslider{
		height: 100%;
	}
	.bxslider > div{
		height: 100%;
	}
	.bxslider > div > img{
		height: 100%;
		width: 100%;
		object-fit: cover;
	}
	.bxslider > div:first-child > img{	/* 最初だけスマホ時は左寄せ */
		object-position: 0 center;
	}

	/* 原寸サイズの80% */
	.imgTopConcept{
		width:28.42242503259452vw;
	}
	.imgTopMenu{
		width:19.03520208604954vw;
	}
	.imgTopBridalshaving{
		width:44.06779661016949vw;
	}
	.imgTopStaff{
		width:15.1238591916558vw;
	}
	.imgTopFaq{
		width:15.64537157757497vw;
	}

	/* 01、02 */
	.topImageArea{
		display: block;
	}
	.topImageArea > div{
		width: 100%;
	}
	.topImageArea > div:first-child{
		max-width: none;
		width: 90%;
		margin: 0 auto;
		padding-right: 0;
	}

	/* 01 */
	.topImageAreaR > div:first-child{
		padding-right: 0;
	}
	.topImageAreaR > div:last-child{
		padding-right: 0;
	}
	.topImageAreaR .imageH2{		/* concept */
		text-align: center;
	}
	.top01P{
		padding-left: 0;
	}

	/* 02 */
	.topImageAreaTop .imageH2{		/* Bridal shaving */
		margin-bottom: 20px;
	}
	.topImageAreaTop > .imageH2{	/* Menu */
		margin-bottom: 65px;
	}
	.top02Btn{
		text-align: right;
		margin: 40px 0 140px 0;
	}
	.top02Btn2{
		margin: 140px 0 0 0;
	}

	/* メニュー */
	.topMenuArea{
		display: block;
	 }
	.topMenuArea > div{
		width:100%;
	}
	h3.topMenuH3{
		font-size: 146%;
	}
	h3.topMenuH3 > span.toph3sub{
		font-size: 77%;
	}
	.topMenu{
		font-size: 105%;
	}
	.topMenu > div:last-child > span{
		font-size: 95%;
	}
	.topMenuArea .top02Btn{
		text-align: right;
		margin: 100px 0 160px 0;
	}
	
	/* 03 */

	.topStaffArea{
		display: block;
	}
	.topStaffArea > div{
		width: 100%;
		margin-bottom: 140px;
	}
	.topStaffArea > div:last-child{
		margin-bottom: 0;
	}

	.topStaffArea > div > div:first-child{
		width:70%;
		margin: 0 auto;
	}
	.topStaffName{
		font-size: 150.5289473684211%;
	}
	.topStaffName span{
		font-size: 47.07819793360256%;
	}
	.topStaffSub, .topStaffSub2{
		font-size: 80%;
		line-height: 1.9em;
	}

	/* 04 */
	.topFaqArea{
		display: block;
	 }
	.topFaqArea > div:nth-child(odd){
		width:100%;
		margin-bottom: 140px;
	}
	.topFaqArea > div:nth-child(even){
		width:100%;
		margin-bottom: 140px;
	}
	.topFaqArea > div:last-child{
		margin-bottom: 0;
	}
	.topFaqFlexQ > div:first-child, .topFaqFlexA > div:first-child{
		width: 1.2em;
		font-size:180%;
	}

	/* ボタンのサイズ調整 */
	a.faqBtn{
		width: 360px;
	}
	a.faqBtn img{
		width: 348px;
	}
	a.faqBtn:link, a.cmenuBtn:visited{
		padding: 0 12px 0 0;
	}
	a.faqBtn:hover{
		padding: 0 0 0 12px;
	}

	/* 外観 */
	.topExterior{
		width: 100%;
		height: 260px;
		margin: 0 auto;
	}
	.topExterior > img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	/* お店の情報 */
	.topInfomationFlex{
		display: block;
	}
	.topInfomationFlex > div{
		width: 100%;
	}
	.topInfomationFlex > div:first-child{
		margin-bottom: 140px;
	}
	.topInfomationFlex2{
		display: block;
	}
	.topInfomationFlex2 > div:first-child{
		margin: 0 0 0.5em;
	}
	.topInfomationFlex2 > div:last-child{
		padding: 0 0 0 0.8em;
	}
	.topInfomationFlex2 span{
		font-size: 90%;
	}

	a.CancelPolicyBtn {	/* キャンセルポリシーボタン */
		width: 359px;	/* サイズだけ大きく */
	}
	.topGoogleMap {
		padding-bottom: 110%;
	}
	
	/* ----- ■Menu（ページ） ----- */

	/* 見出し */
	.cMenuTitle, .bridalshavingTitle{
		position: relative;
		background-size: cover;
		width: 100%;
		height: 527px;
		padding: 0;
		margin: 0 auto 130px;
	}
	.cMenuTitle{
/*		background-position: -20px center;*/
		background-position: center;
	}
	.bridalshavingTitle{
		background-position: -550px center;
	}


	/* ページ内リンク */
	.cMenuLinkArea{
		display: block;
		width: 100%;
		max-height: none;
	}
	.cMenuLinkArea > a {
		width: 100%;
		margin-bottom: 1.5em;
		font-size: 110%;
	}
	.cMenuLinkArea > a span{
		display: block;		
		font-size: 130%;
	}
	.cMenuLinkArea > a:link::after, .cMenuLinkArea > a:visited::after {
		top: -1px;
		right: 1.0em;
		font: var(--fa-font-solid);
		content: '\f054';
		position: absolute;
		line-height:1.5em;
		padding: 1.50em 0 1.45em 0;
	}

	/* 金額 */
	.cMenuTax{
		margin: 0.0em 0 1.0em 0;
	}

	.cMenuPrice, .cMenuPrice2, .cMenuPrice2_PB, .cMenuPrice2_C, .cMenuPrice2_C2 {
		font-size: 130%;
	}
	.cMenuATitle{
		font-size: 130%;
	}

	.cMenuPrice::before, .cMenuPrice2::before, .cMenuPrice2_N::before, .cMenuPrice2_PB::before, .cMenuPrice2_C::before, .cMenuPrice2_C2::before{
		border-top: none;
	}

	.cMenuPrice > div:last-child, .cMenuPrice2 > div:last-child, .cMenuPrice2_N > div:last-child,
	.cMenuPrice2_PB > div:last-child, .cMenuPrice2_C > div:last-child, .cMenuPrice2_C2 > div:last-child {
		width: 100%;
		text-align: left;
		margin-bottom: 15px;
/*		text-align: right;*/
	}
	.cMenuPrice2_PB, .cMenuPrice2_C, .cMenuPrice2_C2{
		padding-left: 0.3em;
	}
	.cMenuPrice2_PB::before, .cMenuPrice2_C::before, .cMenuPrice2_C2::before{
		left: 0.3em;
		width: calc(100% - 0.3em);
	}
	.cMenuA3Flex{
		gap: 0.2em 1.5em;
		margin: 0 0 0.4em 0;
	}
	.cMenuA3Flex div:first-child{
		min-width: auto;
	}

	/* リスト */
	ul.cMenuUl{
		margin: 0 0 60px 2%;
	}
	ul.cMenuUl > li{
	}
	.cMenuLinkBtnArea{
		display: block;
		margin: 120px 0;
	}
	.cMenuLinkBtnArea > div:first-child{
		margin-bottom: 1.2em;
	}

	.cMenuABlock{
		margin: 0 0 100px 2%;
		padding: 0 0 0 0;
	}
	.cMenuASMUnder120{
		margin: 0 0 120px;
	}

	/* cozyリンク */
	.cMenuflexCozy, .cMenuflexCozy2{
		display: block;
	}
	.cMenuflexCozy > div:first-child{
		text-align: right;
		margin-bottom: 60px;
	}
	.cMenuflexCozy > div:last-child{
		text-align: right;
	}
	.cMenuflexCozy2 > div:first-child{
		text-align: center;
		margin-bottom: 30px;
	}
	.cMenuflexCozy2 > div:last-child{
		text-align: center;
	}
	
	/* table */
/* 組換え用の処理があったけど不要になったのでコメントアウト */
/*	.cMenuTable {
		border: 2px solid #999999;
		border-bottom: none;
	}
	.cMenuTable tr, .cMenuTable th, .cMenuTable tr:first-child th, .cMenuTable td{
		display: block;
		width: 100%;
		border: none;
	}
	.cMenuTable tr:first-child {
		display: none;
	}
	.cMenuTable th, .cMenuTable tr:first-child th, .cMenuTable td{
		border-bottom: 2px solid #999999;
	}
	.cMenuTable th{
		background: #e1dec0;
	}

	.cMenuTable tr td {
		position: relative;
		text-align: right;
	}
	.cMenuTable tr td::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		background: #f7f6ee;
		border-right: 2px solid #999999;
		width: 11.5em;
		height: 100%;
		text-align: left;
		padding: 0.75em 0 0 0.5em;
	}
	.cMenuTable tr td:nth-child(2)::before {
		content: "１回料金";
	}
	.cMenuTable tr td:nth-child(3)::before {
		content: "次回４週間以内の予約";
	}
	.cMenuTable tr td:nth-child(4)::before {
		content: "次回８週間以内の予約";
	}
	.cMenuTable tr td:nth-child(5)::before {
		content: "回数券５回券";
	}*/

	.cMenuPrice2_EYE > div:first-child{
		width: 100%;
	}
	.cMenuPrice2_EYEsub > div:first-child, .cMenuPrice2_EYEsub2 > div:first-child{
		width: 100%;
		text-align: left;
		padding-right: 0;
	}
	.cMenuPrice2_EYEsub, .cMenuPrice2_EYEsub2{
		padding-left: 1em;
	}
	
	
	/* ----- Bridal shaving ----- */

	/* 説明文 */
	.bridalshavingCaption{
		font-size: 160%;
	}
	.bridalshavingCaptionMain{
		text-align: left;
	}
	.bridalshavingASubTitle{
		font-size: 118%;		
	}
	.bridalshavingATitle{
		font-size: 130%;
	}
	.bridalshavingAMain{
		margin: 0 0 0 1.5em;
	}
	.bridalshavingAMain ul{
		margin: 0.3em 0 1.8em 0;
	}
	.priceNormalSize{
		font-size:100%;
	}
	.bridalshavingASubArea{
		padding: 0.5em 1em;
	}

	.bridalshavingOptionArea{
		margin: 0 0 1em 0;
	}
	.bridalshavingASubArea{
		margin: 0 0 1em 0;
	}
	.bridalshavingLastBottom > div:last-child{
		margin: 120px 0 0 0;
	}
	.bridalshavingLastBottom > div:last-child.bridalsjavingTax {
		margin: 0 0 0 0;
	}

	.bridalshavingAMainFlex{
		display: block;
		margin: 0 0 1.8em 0;
	}
	.bridalshavingAMainFlex > div:first-child{
		width:100%;
	}
	.bridalshavingAMainFlex > div:last-child{
		width:100%;
	}
	.bridalshavingAMainFlex {
		line-height: 1.2em;	
	}
	.bridalshavingAMainFlex > div > div{
		padding: 0 0 0 1em;
		margin: 0.5em 0;
		line-height: 1.0em;	
	}
	.bridalshavingAMainFlex .cMenuPrice2{
		font-size:100%;
		margin: 0 0 0 0;
		padding: 0 0 0 0.5em;
	}
	.bridalshavingAMainFlex .cMenuPrice2 > div:first-child{
		padding: 0 0 0 0;
	}
	.bridalshavingAMainFlex .cMenuPrice2 > div:last-child{
		margin: 0;
	}

	.bridalsjavingLongImg{
		width: 100%;
		height: 400px;
		margin: 0 auto;
		overflow: hidden;
	}
	.bridalsjavingLongImg > img{
		height: 100%;
		max-width: none;
		width: auto;
	}


	/* ----- ■FAQ ----- */
	.noImageTitle{
		padding: 120px 0 180px;
		text-align: center;
	}
	.faqFlexQ > div:first-child{
		font-size: 140%;
	}
	.faqFlexQ > div:last-child{
		font-size: 110%;
	}
	.faqFlexA > div:first-child{
		font-size: 140%;
	}
	.faqFlexA > div:last-child{
		padding: 0.1em 0.7em 0.3em 0.7em;
	}

	/* -----------------------------------
	■キャンセルポリシー
	----------------------------------- */

	.cancelMain{
		/*max-width: 1040px;*/
		max-width: none;
	}
	h1{
		font-size: 200%;
	}
	h2.cancel{
		font-size: 120%;
	}

	/* ----- ■フッター ----- */
	.footerAreaFlex2{
		display: block;
	}
	.footerAreaFlex{
		display: block;
	}
	.footerAreaFlex > div:last-child{
		text-align: center;
	}
	.footerFlexInfo{
		display: block;
	}
	.footerFlexInfo > div{
		margin-bottom: 50px;
	}
	.footerFlexInfo > div:nth-child(2),
	.footerAreaFlex2 > div:last-child {
		text-align: center;
	}
	.footerMenuArea{
		display: block;
	}
	.footerMenuArea > div{
		margin-bottom: 40px;
	}
	.footerMenuArea > div:last-child{
		margin-bottom: 60px;
	}

}
