@charset "utf-8";


/* ◆ PC SIZE ◆
============================================================== */


/* 共通 */

.box {
	margin: 0 auto;
	max-width: 1260px;
	position: relative;
}
a img {
	transition: opacity 0.3s ease-out;
}
a:hover img	{
	opacity:.5;
	-webkit-opacity:.5;
	-moz-opacity:.5;
	filter:alpha(opacity=50);
	-ms-filter:"alpha(opacity=50)";
	-webkit-transition:opacity 1s ease-out;
	-moz-transition:opacity 1s ease-out;
	-ms-transition:opacity 1s ease-out;
	transition:opacity 1s ease-out;
}





/* HEADER AREA
******************************************/
header {
	height: 100vh;
	position: relative;
}
header div.logo {
	line-height: 0;
	max-width: 570px;
	position: absolute;
	top: 42px;
	left: 5.33%;
	z-index: 1;
	display: flex;
	align-items: center;
}
header div.logo img {
	height: 80px;
	margin-right: 15px;
}

header div.logo h1 {
	color: white;
	font-size: 1.8em;
	line-height: 1.3em;
}
header nav  {
	position: absolute;
	top: 80px;
	right: 8.33%;
	z-index: 1;
}
header nav ul  {
	letter-spacing: -0.5em;
}
header nav li {
	margin: 0 0 0 64px;
	display: inline-block;
	letter-spacing: normal;
}
header nav li:first-child {
	margin: 0 0 0 0;
}
header nav li a {
	font-size: 15px;
	line-height: 1;
	letter-spacing: 0.06em;
	color: #fff;
	text-decoration: none;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
header p.catch {
	margin: 0 auto;
	width: 56.25%;
	line-height: 0;
	top: 43%;
	position: absolute;
	left: 0;
	right: 0;
	z-index: 1;
}
header p.catch img {
	width: 570px;
}
header .sns {
	position: absolute;
	bottom: 32px;
	left: 8.33%;
	z-index: 1;
}
header .sns li {
	margin: 10px 0 0 0;
	line-height: 0;
}
header .sns li:first-child {
	margin: 0 0 0 0;
}
header .sns li a {
	line-height: 0;
}
header p.scroll {
	margin: 0 auto;
	width: 65.63%;
	line-height: 0;
	bottom: 32px;
	position: absolute;
	left: 0;
	right: 0;
	z-index: 1;
}
header p.scroll img {
	width: 11px;
}

.full div {
	background: url("../img/main_background_01.jpg") no-repeat center center;
	background-size: cover;
	height: 100vh;
}

.tab-smaller {
	display: none;
}


/* ▼ ヘッダーTABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1224px){
header {
	height: 100vh;
	position: relative;
}
header div.logo {
	margin: 0 auto;
	line-height: 0;
	/* width: 350px; */
	position: absolute;
	top: 40px;
	left: 0;
	right: 0;
	z-index: 1;
	justify-content: center;
}
header div.logo img {
	height: 50px;
}
header div.logo h1 {
	font-size: 1.5em;
}
header nav  {
	margin: 20px 0 0 0;
	position: absolute;
	top: 130px;
	right: 0;
	left: 0;
	z-index: 1;
}
header nav ul  {
	text-align: center;
	letter-spacing: -0.5em;
}
header nav li {
	margin: 0 0 0 40px; 
	display: inline-block;
	letter-spacing: normal;
}
header nav li:first-child {
	margin: 0 0 0 0; 
}
header nav li a {
	font-size: 15px;
	line-height: 1;
	letter-spacing: 0.06em;
	color: #fff;
	text-decoration: none;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
header p.catch {
	margin: 0 auto;
	width: 460px;
	line-height: 0;
	top: 42%;
	position: absolute;
	left: 0;
	right: 0;
	z-index: 1;
}
header p.catch img {
	width: 100%;
}
header .sns {
	position: absolute;
	bottom: 32px;
	left: 5%;
	z-index: 1;
}

} /* ヘッダーTABここまで */

/* ▼ ヘッダーSPサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
header {
	height: 60vh;
	position: relative;
}
header div.logo {
	margin: 0 auto;
	line-height: 0;
	width: 90%;
	position: absolute;
	top: 24px;
	left: 0;
	right: 0;
	z-index: 1;
}
header nav  {
	position: absolute;
	top: 98px;
	right: 0;
	left: 0;
	z-index: 1;
}
header nav ul  {
	text-align: center;
	letter-spacing: -0.5em;
}
header nav li {
	margin: 5px 0 0 0; 
	display: inline-block;
	letter-spacing: normal;
	width: 33.33%;
}
header nav li:first-child {
	margin: 0 0 0 0; 
}
header nav li a {
	font-size: 15px;
	line-height: 1;
	letter-spacing: 0.06em;
	color: #fff;
	text-decoration: none;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
header p.catch {
	margin: 0 auto;
	width: 320px;
	line-height: 0;
	top: 40%;
	position: absolute;
	left: 0;
	right: 0;
	z-index: 1;
}
header p.catch img {
	width: 100%;
}
header .sns {
	position: absolute;
	bottom: 16px;
	left: 4%;
	z-index: 1;
}
header .sns li {
	margin: 8px 0 0 0;
	line-height: 0;
	width: 32px;
}
header .sns li img {
	width: 100%;
}
header .sns li:first-child {
	margin: 0 0 0 0;
}
header .sns li a {
	line-height: 0;
}
header p.scroll {
	margin: 0 0;
	width: 6%;
	line-height: 0;
	bottom: 14px;
	position: absolute;
	left: 17%;
	right: 0;
	z-index: 1;
}
header p.scroll img {
	width: 11px;
}

.full div {
	background: url("../img/main_background_01.jpg") no-repeat center center;
	background-size: cover;
	height: 60vh;
}


} /* ヘッダーSPここまで */



/* ▼ オーナー挨拶 ▼
----------------------------------------*/

.greeting {
	padding: 160px 0 0 0;
	background: url("../img/greeting_bk.jpg") no-repeat right top;
}
.greeting .inbox {
	margin: 0 0 0 0;
	width: 370px;
}
.greeting h2 {
	font-size: 46px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
}
.greeting h2 span {
	font-size: 46px;
	color: #726868;
	display: block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.greeting p.txt {
	margin: 46px 0 0 0;
	font-size: 14px;
	line-height: 2;
	color: #333333;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.greeting p.add {
	margin: 22px 0 0 0;
	font-size: 12px;
	line-height: 2;
	color: #333333;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.greeting p.Img01 {
	margin: 160px 0 0 0;
	line-height: 0;
	position: relative;
	left: -80px;
	width: 620px;
}
.greeting p.Img01 img {
	width: 100%;
}
.greeting p.Img02 {
	line-height: 0;
	position: absolute;
	top: 0;
	right: 0;
	width: 44.44%;
}
.greeting p.Img02 img {
	width: 100%;
}


/* ▼ オーナー挨拶TABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1024px){
.greeting {
	padding: 80px 20px;
	background: url("../img/greeting_bk.jpg") no-repeat right top;
}
.greeting .inbox {
	margin: 0 0 0 0;
	width: 370px;
}
.greeting h2 {
	font-size: 46px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
}
.greeting h2 span {
	font-size: 46px;
	color: #726868;
	display: block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.greeting p.txt {
	margin: 46px 0 0 0;
	font-size: 14px;
	line-height: 2;
	color: #333333;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.greeting p.add {
	margin: 22px 0 0 0;
	font-size: 12px;
	line-height: 2;
	color: #333333;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.greeting p.Img01 {
    margin: 100px 0 0 0;
    line-height: 0;
    position: relative;
    left: 0px;
    width: 380px;
}
.greeting p.Img01 img {
	width: 100%;
}
.greeting p.Img02 {
	line-height: 0;
	position: absolute;
	top: 0;
	right: 0;
	width: 44.44%;
}
.greeting p.Img02 img {
	width: 100%;
}

}
 
 
/* ▼ オーナー挨拶SPサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
.greeting {
	padding: 60px 20px;
	background: url("../img/greeting_bk.jpg") no-repeat right -100px;
}
.greeting .inbox {
	margin: 0 0 0 0;
	width: 100%;
}
.greeting h2 {
	font-size: 32px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
}
.greeting h2 span {
	padding: 0 0 0 10px;
	font-size: 32px;
	color: #726868;
	display: inline-block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.greeting p.txt {
	margin: 26px 0 0 0;
	font-size: 14px;
	line-height: 1.8;
	color: #333333;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.greeting p.add {
	margin: 16px 0 0 0;
	font-size: 12px;
	line-height: 2;
	color: #333333;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.greeting p.Img01 {
    margin: 40px auto 0 auto;
    line-height: 0;
    position: relative;
    left: 0px;
    width: 100%;
}
.greeting p.Img01 img {
	width: 100%;
}
.greeting p.Img02 {
	margin: 32px 0 0 0;
	line-height: 0;
	position: relative;
	top: 0;
	right: 0;
	width: 100%;
}
.greeting p.Img02 img {
	width: 100%;
}


}





/* ▼ ループスライド ▼
----------------------------------------*/
.loopSlide {
	margin-top: 160px;
}
.loopSlide p.lp1 {
    display: flex;
    height: 200px;
    overflow: hidden;
	line-height: 0;
}
.loopSlide p.lp2 {
    display: flex;
    height: 200px;
    overflow: hidden;
	line-height: 0;
}
.loopSlide p img {
	width: auto;
	height: 100%;
}

/*1枚目*/
@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}

.loopSlide p.lp1 img:first-child {
  animation: loop 160s -80s linear infinite;
}

.loopSlide p.lp1 img:last-child {
  animation: loop2 160s linear infinite;
}



/*2枚目*/
@keyframes loop3 {
  0% {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(100%);
  }
}
@keyframes loop4 {
  0% {
    transform: translateX(-200%);
  }
  to {
    transform: translateX(0%);
  }
}

.loopSlide p.lp2 img:first-child {
  animation: loop3 160s linear infinite;
}

.loopSlide p.lp2 img:last-child {
  animation: loop4 160s -80s linear infinite;
}



/* ▼ ループスライドTABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1024px){
.loopSlide {
	margin-top: 80px;
}

.loopSlide p.lp1 {
    display: flex;
    height: 160px;
    overflow: hidden;
	line-height: 0;
}
.loopSlide p.lp2 {
    display: flex;
    height: 160px;
    overflow: hidden;
	line-height: 0;
}

}
 
 
/* ▼ ループスライドSPサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
.loopSlide p.lp1 {
    display: flex;
    height: 120px;
    overflow: hidden;
	line-height: 0;
}
.loopSlide p.lp2 {
    display: flex;
    height: 120px;
    overflow: hidden;
	line-height: 0;
}

} /* ループスライドSPここまで */





/* ▼ ロコのサービス ▼
----------------------------------------*/

.service {
	margin: 160px 0 0 0;
}
.service h2 {
	font-size: 46px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
	display: inline-block;
	vertical-align: middle;
}
.service h2 span {
	font-size: 46px;
	color: #726868;
	display: block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.service p.read {
	margin: 0 0 0 50px;
	display: inline-block;
	vertical-align: middle;
	color: #726868;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.05em;
}
.service p.read span {
	display: block;
	color: #726868;
	font-size: 14px;
}
.service p.btn {
	position: absolute;
	right: 0;
	top: 10px;
	width: 600px;
}
.service p.btn a {
	padding: 40px 0;
	font-size: 16px;
	font-weight: bold;
	display: block;
	line-height: 1.6;
	background: #0079d0;
	border-radius: 5px;
	color: #fff;
	text-decoration: none;
	width: 100%;
	text-align: center;
	letter-spacing: 0.1em;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.service p.btn a:hover {
	background: #003D6A;
}

/* ワイド画像 */
.wideImg {
	margin: 80px auto 0 auto;
	padding: 0 10px;
	max-width: 1260px;
	position: relative;
}
.wideImg p {
	line-height: 0;
}
.wideImg p img {
	width: 100%;
}


/* ▼ ロコのサービスTABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1024px){
.service {
	margin: 0 20px 0 20px;
	padding: 96px 0 0 0;
}
.service h2 {
	font-size: 46px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
	display: inline-block;
	vertical-align: middle;
}
.service h2 span {
	font-size: 46px;
	color: #726868;
	display: block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.service p.read {
	margin: 0 0 0 30px;
	display: inline-block;
	vertical-align: middle;
	color: #726868;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.05em;
}
.service p.read span {
	display: block;
	color: #726868;
	font-size: 14px;
}

.service p.btn {
	margin: 40px auto 0 auto;
	position: relative;
	right: 0;
	top: 10px;
	width: 660px;
}
.service p.btn a {
	padding: 40px 0;
	font-size: 16px;
	font-weight: bold;
	display: block;
	line-height: 1.6;
	background: #0079d0;
	border-radius: 5px;
	color: #fff;
	text-decoration: none;
	width: 100%;
	text-align: center;
	letter-spacing: 0.1em;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.service p.btn a:hover {
	background: #003D6A;
}


} /* ロコのサービスTABここまで */



/* ▼ ロコのサービスSPサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
.service {
	margin: 0 20px 0 20px;
	padding: 80px 0 0 0;
}
.service h2 {
	font-size: 32px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
	display: inline-block;
	vertical-align: middle;
}
.service h2 span {
	font-size: 32px;
	color: #726868;
	display: inline-block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.service p.read {
	margin: 16px 0 0 0;
	display: inline-block;
	vertical-align: middle;
	color: #726868;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.05em;
}
.service p.read span {
	display: block;
	color: #726868;
	font-size: 14px;
}

.service p.btn {
	margin: 20px auto 0 auto;
	position: relative;
	right: 0;
	top: 10px;
	width: 80%;
}
.service p.btn a {
	padding: 16px 0;
	font-size: 16px;
	font-weight: bold;
	display: block;
	line-height: 1.6;
	background: #0079d0;
	border-radius: 5px;
	color: #fff;
	text-decoration: none;
	width: 100%;
	text-align: center;
	letter-spacing: 0.05em;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.service p.btn a:hover {
	background: #003D6A;
}

} /* ロコのサービスSPここまで */



/* ------------------------------
背景固定
--------------------------------*/

.break {
	margin: 160px 0 0 0;
	height: 500px;
	background: url("../img/break_bk.jpg") no-repeat center center;
	background-size: cover;
	background-attachment:fixed;
}

/* ▼ 背景固定 TABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1024px){
.break {
	margin: 100px 0 0 0;
	height: 300px;
	background: url("../img/break_bk.jpg") no-repeat center center;
	background-size: cover;
}
} /* TABここまで */

/* ▼ 背景固定 SPサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
.break {
	margin: 80px 0 0 0;
	height: 200px;
	background: url("../img/break_bk.jpg") no-repeat center center;
	background-size: cover;
}
} /* SPサイズ */





/* ▼ お客様の声 ▼
----------------------------------------*/

.voice {
	padding: 160px 0 0 0;
}
.voice h2 {
	font-size: 46px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
	display: inline-block;
	vertical-align: middle;
}
.voice h2 span {
	font-size: 46px;
	color: #726868;
	display: block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.voice p.read {
	margin: 0 0 0 50px;
	display: inline-block;
	vertical-align: middle;
	color: #726868;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.05em;
}
.voice p.read span {
	color: #726868;
	font-size: 14px;
}
.voice ul {
	margin: 20px 0 0 0;
	letter-spacing: -0.5em;
}
.voice ul li {
	margin: 0 0 0 3.97%;
	padding: 40px 40px 40px 40px;
	display: inline-block;
	letter-spacing: normal;
	width: 39.02%;
	border: solid 1px #d5d5d5;
	border-radius: 3px;
}
.voice ul li:nth-child(2n+1) {
	margin: 3.97% 0 0 0;
}
.voice ul li .tbl {
	display: table;
	vertical-align: middle;
}
.voice ul li p.icon {
	line-height: 0;
	display: table-cell;
	vertical-align: middle;
}
.voice ul li .detail {
	padding: 0 0 0 5%;
	line-height: 1.8;
	display: table-cell;
	vertical-align: middle;
}
.voice ul li p.nenrei {
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	color: #333;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.voice ul li p.txt {
	margin: 0 0 0 0;
	font-size: 14px;
	line-height: 1.8;
	color: #333;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}


/* ▼ お客様の声TABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1024px){

.voice {
	margin: 0 0 0 0;
	padding: 80px 20px 0 20px;
}
.voice h2 {
	font-size: 46px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
}
.voice h2 span {
	font-size: 46px;
	color: #726868;
	display: block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.voice ul {
	margin: 20px 0 0 0;
	letter-spacing: -0.5em;
	text-align: center;
}
.voice ul li {
	margin: 2% 0 0 3%;
	padding: 5% 3% 5% 3%;
	display: inline-block;
	letter-spacing: normal;
	width: 42%;
	border: solid 1px #d5d5d5;
	border-radius: 3px;
}
.voice ul li:nth-child(2n+1) {
	margin: 2% 0 0 0;
}
.voice ul li .tbl {
	display: table;
	vertical-align: middle;
	text-align: left;
}
.voice ul li p.icon {
	line-height: 0;
	display: table-cell;
	vertical-align: middle;
}
.voice ul li .detail {
	padding: 0 0 0 5%;
	line-height: 1.8;
	display: table-cell;
	width: 100%;
}
.voice ul li p.nenrei {
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	color: #333;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.voice ul li p.txt {
	margin: 0 0 0 0;
	font-size: 14px;
	line-height: 1.8;
	color: #333;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

} /* お客様の声TABここまで */




/* ▼ お客様の声SPサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
.voice {
	margin: 0 0 0 0;
	padding: 80px 20px 0 20px;
}
.voice h2 {
	font-size: 32px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
	display: inline-block;
	vertical-align: middle;
}
.voice h2 span {
	font-size: 32px;
	color: #726868;
	display: inline-block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.voice p.read {
	margin: 16px 0 0 0;
	display: block;
	vertical-align: middle;
	color: #726868;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.05em;
}
.voice p.read span {
	display: inline-block;
	color: #726868;
	font-size: 14px;
}
.voice ul {
	margin: 30px 0 0 0;
	letter-spacing: -0.5em;
	text-align: center;
}
.voice ul li {
	margin: 2% 0 0 0;
	padding: 3% 3% 3% 3%;
	display: inline-block;
	letter-spacing: normal;
	width: 94%;
	border: solid 1px #d5d5d5;
	border-radius: 3px;
	height: 100!important;
}
.voice ul li:nth-child(2n+1) {
	margin: 2% 0 0 0;
}
.voice ul li .tbl {
	display: table;
	vertical-align: middle;
	text-align: left;
	height: 100!important;
}
.voice ul li p.icon {
	line-height: 0;
	display: table-cell;
	vertical-align: middle;
}
.voice ul li .detail {
	padding: 0 0 0 5%;
	line-height: 1.8;
	display: table-cell;
	width: 100%;
}
.voice ul li p.nenrei {
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	color: #333;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.voice ul li p.txt {
	margin: 0 0 0 0;
	font-size: 14px;
	line-height: 1.8;
	color: #333;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

} /* お客様の声SPここまで */






/* ▼ その他 ▼
----------------------------------------*/

.other {
	margin: 160px 0 0 0;
	padding: 96px 0;
	background: #444141;
	text-align: center;
}
.other h2 {
	font-size: 20px;
	color: #a1a0a0;
	line-height: 1;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.other p.read {
	margin: 14px 0 0 0;
	font-size: 14px;
	color: #a1a0a0;
	line-height: 1;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.other ul {
	margin: 64px 0 0 0;
	letter-spacing: -0.5em;
}
.other ul li {
	margin: 0 0 0 96px;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
}
.other ul li:first-child {
	margin: 0 0 0 0;
}
.other ul li a {
	display: table;
	text-decoration: none;
	color: #a1a0a0;
}
.other ul li p.icon {
	line-height: 77px;
	height: 47px;
}
.other ul li p.txt {
	margin: 20px 0 0 0;
	font-size: 14px;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.other ul li p.txt span {
	margin: 4px 0 0 0;
	font-size: 12px;
	display: block;
	line-height: 1;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}



/* ▼ その他TABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1024px){
.other {
	margin: 80px 0 0 0;
	padding: 80px 20px;
	background: #444141;
	text-align: center;
}
.other h2 {
	font-size: 20px;
	color: #a1a0a0;
	line-height: 1;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.other p.read {
	margin: 14px 0 0 0;
	font-size: 14px;
	color: #a1a0a0;
	line-height: 1;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.other ul {
	margin: 64px 0 0 0;
	letter-spacing: -0.5em;
}
.other ul li {
	margin: 0 0 0 80px;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
}
.other ul li:first-child {
	margin: 0 0 0 0;
}
.other ul li a {
	display: table;
	text-decoration: none;
	color: #a1a0a0;
}
.other ul li p.icon {
	line-height: 77px;
	height: 47px;
}
.other ul li p.txt {
	margin: 20px 0 0 0;
	font-size: 14px;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.other ul li p.txt span {
	margin: 4px 0 0 0;
	font-size: 12px;
	display: block;
	line-height: 1;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

} /* その他TABここまで */




/* ▼ その他SPサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
.other {
	margin: 80px 0 0 0;
	padding: 56px 20px 10px 20px;
	background: #444141;
	text-align: center;
}
.other h2 {
	font-size: 20px;
	color: #a1a0a0;
	line-height: 1;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.other p.read {
	margin: 14px 0 0 0;
	font-size: 14px;
	color: #a1a0a0;
	line-height: 1;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.other ul {
	margin: 40px 0 0 0;
	letter-spacing: -0.5em;
}
.other ul li {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	letter-spacing: normal;
	display: block;
	vertical-align: top;
}
.other ul li:first-child {
	margin: 0 0 0 0;
}
.other ul li a {
	padding: 30px 0 30px 30px;
	display: block;
	text-decoration: none;
	color: #a1a0a0;
	text-align: left;
	width: auto;
	position: relative;
	border-top: solid 1px #655a5a;
}
.other ul li a:after{
	content: '';
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #a1a0a0;
	border-right: solid 1px #a1a0a0;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 30px;
	margin-top: -4px;
}
.other ul li p.icon {
	margin: 0 auto;
	line-height: 0;
	width: 51px;
	height: auto;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
}
.other ul li p.txt {
	margin: 0 0 0 9%;
	font-size: 14px;
	display: inline-block;
	vertical-align: middle;
	letter-spacing: 0.05em;
	text-align: left;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.other ul li p.txt span {
	margin: 4px 0 0 -5px;
	font-size: 12px;
	display: block;
	line-height: 1;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

} /* その他SPここまで */









/* ▼ フッター ▼
----------------------------------------*/

footer {
	margin: 0 0 0 0;
	text-align: center;
	background: #2e2b2b;
}
footer p {
	padding: 24px 0;
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.05em;
	color: #a1a0a0;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}





/* ----------------------------------
お問い合わせ＆オンラインカウンセリング
------------------------------------*/

.sub header {
	height: 400px;
	position: relative;
	display: table;
	width: 100%;
	overflow: hidden;
}
.sub header .bg {
	margin: 0 0 0 auto;
	height: 400px;
	width: 100%;
	position: absolute;
	top: 0;
	right: 0;
}
.sub header .bg.co {
	background: url("../img/key_contact.jpg") no-repeat center center;
	background-size: cover;
}
.sub header .bg.onl {
	background: url("../img/key_online.jpg") no-repeat center center;
	background-size: cover;
}

.sub .formArea {
	margin: -100px auto 0 auto;
	padding: 80px 100px 50px 100px;
	max-width: 880px;
	background: #fff;
	border-radius: 10px;
	position: relative;
	z-index: 99;
	box-shadow: 0px 0px 23px -6px #c1c1c1;
}
.sub .formArea h1 {
	font-size: 30px;
	line-height: 1;
	color: #838383;
	letter-spacing: 0.05em;
	text-align: center;
}
.sub .formArea h1 span {
	margin: 8px 0 0 0;
	font-size: 14px;
	line-height: 1;
	color: #838383;
	letter-spacing: 0.05em;
	text-align: center;
	display: block;
}
.sub .formArea p.read {
	margin: 25px 0 0 0;
	text-align: center;
	color: #333;
	font-size: 14px;
}
.sub .formArea table {
	margin: 50px 0 0 0;
	width: 100%;
	background: #f5f5f5;
	border-right: solid 1px #d2d2d2;
	border-bottom: solid 1px #d2d2d2;
}
.sub .formArea th {
	padding: 25px 15px;
	font-size: 15px;
	font-weight: bold;
	width: 200px;
	position: relative;
	border-top: solid 1px #d2d2d2;
	border-left: solid 1px #d2d2d2;
	vertical-align: middle;
	text-align: right;
}
.sub .formArea th span {
	padding: 0 0 0 10px;
	font-size: 12px;
	font-weight: bold;
	color: #FF393C;
}
.sub .formArea td {
	padding: 25px 15px;
	font-size: 15px;
	font-weight: bold;
	position: relative;
	border-top: solid 1px #d2d2d2;
}

.sub .formArea td input {
	padding: 15px 5px;
	width: 96%;
	border: solid 1px #ccc;
	-webkit-appearance: none;
}
.sub .formArea textarea {
	margin: 0px 0 0 0;
	padding: 2% 3% 3% 3%;
	width: 93%;
	font-size: 14px;
	border: solid 1px #ccc;
	line-height: 1.8;
	font-family: dnp-shuei-mgothic-std, sans-serif;
	-webkit-appearance: none;
}
.sub .formArea p.send {
	margin: 30px 0 0 0;
	text-align: center;
}
.sub .formArea p.send input {
	padding: 18px 10px 16px 10px;
	border: none;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.1em;
	background: none;
	width: 300px;
	border-radius: 5px;
	font-family: dnp-shuei-mgothic-std, sans-serif;
	-webkit-appearance: none;
}
.sub .formArea p.send input:hover {
	cursor: pointer;
}
.sub .formArea p.send input.submit {
	margin: 0 0 0 5px;
	background: #1D85F3;
	color: #fff;
	border-bottom: solid 3px #013266;
}

.sub .formArea p.back {
	margin: 40px 0 0 0;
	padding: 40px 0 0 0;
	border-top: solid 1px #ccc;
	text-align: center;
}
.sub .formArea p.back a {
	text-decoration: none;
	font-size: 16px;
	color: #333;
}
.sub .formArea p.back i {
	padding: 0 5px 0 0;
	position: relative;
	top: -1px;
}

/* ▼ お問い合わせ/カウンセリング TABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1080px){
.sub header {
	height: 300px;
	position: relative;
	display: table;
	width: 100%;
	overflow: hidden;
}
.sub header .bg {
	margin: 0 0 0 auto;
	height: 300px;
	width: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background: url("../img/main_bg.jpg") no-repeat center center;
	background-size: cover;
}
.sub .formArea {
	margin: -60px auto 0 auto;
	padding: 80px 50px 50px 50px;
	max-width: 82%;
	background: #fff;
	border-radius: 10px;
	position: relative;
	z-index: 99;
	box-shadow: 0px 0px 23px -6px #c1c1c1;
}

} /* TABサイズ */


/* ▼ お問い合わせ/カウンセリング SPサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
.sub header {
	height: 200px;
	position: relative;
	display: table;
	width: 100%;
	overflow: hidden;
}
.sub header .bg {
	margin: 0 0 0 auto;
	height: 200px;
	width: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background: url("../img/main_bg.jpg") no-repeat center center;
	background-size: cover;
}
.sub .formArea {
	margin: -60px auto 0 auto;
	padding: 40px 5% 30px 5%;
	max-width: 82%;
	background: #fff;
	border-radius: 10px;
	position: relative;
	z-index: 99;
	box-shadow: 0px 0px 23px -6px #c1c1c1;
}
.sub .formArea p.read {
	margin: 15px 0 0 0;
	text-align: center;
	color: #333;
	font-size: 12px;
}
.sub .formArea table {
	margin: 30px 0 0 0;
}
.sub .formArea th {
	padding: 15px 15px 5px 15px;
	font-size: 15px;
	font-weight: bold;
	width: auto;
	display: block;
	position: relative;
	border-top: solid 1px #d2d2d2;
	border-left: solid 1px #d2d2d2;
	vertical-align: middle;
	text-align: left;
}
.sub .formArea th span {
	padding: 0 0 0 10px;
	font-size: 12px;
	font-weight: bold;
	color: #FF393C;
}
.sub .formArea td {
	padding: 5px 15px 15px 15px;
	font-size: 15px;
	font-weight: bold;
	width: auto;
	display: block;
	position: relative;
	border-top: none;
	border-left: solid 1px #d2d2d2;
}
.sub .formArea p.back {
	margin: 30px 0 0 0;
	padding: 30px 0 0 0;
	border-top: solid 1px #ccc;
	text-align: center;
}

} /* SPサイズ */




/* エステティックメニュー
-----------------------------------------*/

.esthetic {
	margin: 0 0 0 0;
	padding: 160px 0 0 0;
}
.esthetic h2 {
	font-size: 46px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
	display: inline-block;
	vertical-align: middle;
}
.esthetic h2 span {
	font-size: 46px;
	color: #726868;
	display: block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.esthetic p.read {
	margin: 0 0 0 50px;
	display: inline-block;
	vertical-align: middle;
	color: #726868;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.05em;
}
.esthetic p.read span {
	display: block;
	color: #726868;
	font-size: 14px;
}
.esthetic p.btn {
	position: absolute;
	right: 0;
	top: 10px;
	width: 600px;
}
.esthetic p.btn a {
	padding: 40px 0;
	font-size: 16px;
	font-weight: bold;
	display: block;
	line-height: 1.6;
	background: #0079d0;
	border-radius: 5px;
	color: #fff;
	text-decoration: none;
	width: 100%;
	text-align: center;
	letter-spacing: 0.05em;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.esthetic p.btn a:hover {
	background: #003D6A;
}




/* ▼ エステティックメニュー TABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1080px){
.esthetic {
	padding: 0 0 0 0;
	padding: 0 20px;
}
.esthetic h2 {
	font-size: 46px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
	display: inline-block;
	vertical-align: middle;
}
.esthetic h2 span {
	font-size: 46px;
	color: #726868;
	display: block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.esthetic p.read {
	margin: 0 0 0 30px;
	display: inline-block;
	vertical-align: middle;
	color: #726868;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.05em;
}
.esthetic p.read span {
	display: block;
	color: #726868;
	font-size: 14px;
}
.esthetic p.btn {
	margin: 40px auto 0 auto;
	position: relative;
	right: 0;
	top: 10px;
	width: 660px;
}
.esthetic p.btn a {
	padding: 40px 0;
	font-size: 16px;
	font-weight: bold;
	display: block;
	line-height: 1.6;
	background: #0079d0;
	border-radius: 5px;
	color: #fff;
	text-decoration: none;
	width: 100%;
	text-align: center;
	letter-spacing: 0.1em;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.esthetic p.btn a:hover {
	background: #003D6A;
}

} /* TABここまで */



/* ▼ エステティックメニュー SPサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
.esthetic {
	padding: 0 20px;
}
.esthetic h2 {
	font-size: 32px;
	line-height: 1.2;
	color: #726868;
	letter-spacing: 0.05em;
	font-family: 'Arapey', serif;
	display: inline-block;
	vertical-align: middle;
}
.esthetic h2 span {
	font-size: 32px;
	color: #726868;
	display: inline-block;
	letter-spacing: 0.05em;
	line-height: 1;
	font-family: 'Arapey', serif;
}
.esthetic p.read {
	margin: 16px 0 0 0;
	display: inline-block;
	vertical-align: middle;
	color: #726868;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.05em;
}
.esthetic p.read span {
	display: block;
	color: #726868;
	font-size: 14px;
}

.esthetic p.btn {
	margin: 20px auto 0 auto;
	position: relative;
	right: 0;
	top: 0;
	width: 80%;
}
.esthetic p.btn a {
	padding: 16px 0 15px 0;
	font-size: 16px;
	font-weight: bold;
	display: block;
	line-height: 1.6;
	background: #0079d0;
	border-radius: 5px;
	color: #fff;
	text-decoration: none;
	width: 100%;
	text-align: center;
	letter-spacing: 0.1em;
}
.esthetic p.btn a:hover {
	background: #0079d0;
}



} /* SPここまで */



/* サロンの名は
--------------------------------*/

.roco {
	margin: 0 0 0 0;
	padding: 160px 0;
	background: #f7f9fa;
	text-align: center;
}
.roco h2 {
	font-size: 26px;
	color: #726868;
	line-height: 1;
}
.roco p {
	margin: 46px auto 0 auto;
	max-width: 720px;
	font-size: 16px;
	color: #333;
	line-height: 2.2;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

/* ▼ サロンの名は TABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1080px){
.roco {
	margin: 0 0 0 0;
	padding: 96px 0;
	background: #f7f9fa;
	text-align: center;
}

} /* tab */

/* ▼ サロンの名は TABサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
.roco {
	margin: 0 0 0 0;
	padding: 60px 20px;
	background: #f7f9fa;
	text-align: center;
}
.roco h2 {
	font-size: 24px;
	color: #726868;
	line-height: 1;
}
.roco p {
	margin: 26px auto 0 auto;
	max-width: 720px;
	font-size: 16px;
	color: #333;
	line-height: 2;
	letter-spacing: 0.05em;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

} /* tab */



/* 地図
--------------------------------*/

.map {
	margin: 160px 0 0 0;
}
.map iframe {
	width: 100%;
	height: 375px;
}
.map p {
	margin: 30px 0 0 0;
	font-size: 14px;
	color: #333;
	line-height: 2.1;
	letter-spacing: 0.05em;
	text-align: center;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}


/* ▼ 地図 TABサイズ
-----------------------------------------▼ */

@media screen and (max-width:1080px){

} /* tab */

/* ▼ 地図 TABサイズ
-----------------------------------------▼ */

@media screen and (max-width:768px){
.map {
	margin: 80px 0 0 0;
}
.map iframe {
	width: 100%;
	height: 275px;
}
.map p {
	margin: 30px 0 0 0;
	font-size: 14px;
	color: #333;
	line-height: 2.1;
	letter-spacing: 0.05em;
	text-align: center;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

} /* tab */




