@charset "UTF-8";
/* CSS Document */

body, html, main {
	width: 100%;
	font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.6em;
}

 h1, h2, h3, .navigation, .contents_name, .contents_name_index,
.contents_name_lab, .contents_description,
.contents_description_lab,.mincho, footer {
	font-family: "游明朝 Medium","Yu Mincho Medium","YuMincho Medium","Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	line-height: 1.6em;
}

li {
	list-style: none;
}

.hide_1,.hide_2,.hide_3 {
	display: none;
}

.br {
	display: inline-block;
}

.small {
	font-size: 9pt;
}
.big {
	font-size: 110%;
}

.bold {
	font-weight: bold;
}

.italic {
	font-style: oblique;
}

.text-shadow {
	text-shadow: 0px 0px 2px #000000;
}

.text-shadow-wide {
	text-shadow: 0px 0px 3px #000000;
}

.left {
	text-align: left;
}

.top10px {
	margin-top: 10px;
}

.top100px {
	margin-top: 100px;
}

.red_text {
	color: #d80000;	
}

.red_big {
	color: #d80003;
	margin-bottom: -20px;
}

.bg_yellow {
	background: #fff448;
}

.black_bold {
	width: 100%;
	background: #f1ede3;
	color: #000;
	font-style: bold;
	padding: 17px 12px 12px 20px;
	margin: 0 auto;
	margin-left: -20px;
	margin-bottom: 15px;
	}

.red_bold {
	width: 100%;
	background: #f1ede3;
	color: #d80003;
	font-style: bold;
	padding: 17px 12px 12px 20px;
	margin: 0 auto;
	margin-left: -20px;
	margin-bottom: 15px;
}

.line_height {
	line-height: 1.5em;
}

.bottom60px {
	margin-bottom: 60px;
}

/*==ヘッダー=================================================================*/
header {
	background: #fff;
}

/*サイトのタイトル*/
#site_title {	
	display: none;
}

/*サイトの説明文*/
#site_description {
	display: none;
}

/*ページ最上部ブルー背景部分*/
.site_name {
	width: 100%;
	text-align: center;
	padding-bottom: 15px;
	background: #333375;
	height: 90px;
	border-bottom: 6px solid #cb9d68;
}

/*ページ最上部サイトロゴ画像*/
.site_name img {
	width: 220px;
	margin-top: 15px;
}

/*サイトロゴ画像のアニメーション--ここから*/
.site_name img {
	animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
}

@keyframes fadeIn { /*「fadeIn」と名前をそろえる*/
    0% {opacity: 0} /*アニメーション開始時は完全に透過*/
    100% {opacity: 1} /*アニメーション終了時は透過しない*/
}

/*旧 Safari 用のベンダー処理*/
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
/*ロゴのアニメーション--ここまで*/

/*パンくずリスト--ここから----------------------------------*/
.breadcrumb {
	margin-left:0;
	padding: 12px 10px;
	overflow: hidden;
	background: #F8F7F6;
	margin: -30px 20px 30px 20px;
}

.breadcrumb li{
  display:inline;/*横に並ぶように*/
  list-style: none;
}

.breadcrumb li:after{/* ▶を表示*/
  font-family: FontAwesome;
  content: '\f0da';
  padding: 0 3px;
  color: #8186a0;
}

.breadcrumb li:last-child:after{
  content: '';
}

.breadcrumb li a {
    text-decoration: none;
    color: #273376;
}

.breadcrumb li:first-child a:before{/*家アイコンに*/
  font-family: FontAwesome;
  content: '\f015';
  font-weight: normal;
  font-size: 1.1em;
}

.breadcrumb li a:hover {
    text-decoration: underline;
}
/*パンくずリスト--ここまで----------------------------------*/

/*ナビゲーション*/
.navigation {
	width: 100%;
	height: 160px;
	position: fixed;
	top: 0px;
}

.navigation ul {
	font-size: 0;
	text-align: center;
	background: #fff;
	margin-top: 0px;
}

/*ナビゲーションの下にシャドウ*/
#DropDownMenu {
	-moz-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	-o-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	-ms-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	behavior: url(/PIE.htc);
	}

.menu { /* #DropDownMenuのこと */
    position: relative;
}

/*ナビゲーションのドロップダウンメニュー*/
#DropDownMenu li,
#DropDownMenu a {
	font-size: 11pt;
}

ul#DropDownMenu {
	width: 100%;
	*zoom: 1; /*forIE6,7*/
}
ul#DropDownMenu:after {
	content: "";
	display: block;
	clear: both;
}
ul#DropDownMenu li {
	float: left;
	*zoom: 1; /*forIE6,7*/
	white-space: nowrap;
}
ul#DropDownMenu li ul {
	width: auto !important;
	display: none;
	/*visibility: hidden;*/
	position: absolute;
}

ul#DropDownMenu li .right {
	right: 0;
}

ul#DropDownMenu li:checked > ul {
	visibility: visible;
}
ul#DropDownMenu li ul li {
	width: auto !important;
	min-width: 100%;
	clear: left;
	position: relative;
	top:100%;
}

ul#DropDownMenu li a {
	display: block;
	background-color: #ffffff;
	padding: 12px 0 10px 0;
	color: #222222;
	text-align: center;
	text-decoration: none;
}
ul#DropDownMenu li ul li a {
	padding: 12px 5px 10px 5px;
}

* html ul#DropDownMenu li a { /*forIE6*/
	zoom: 1;
}
ul#DropDownMenu li a:hover {
	background: #f3ede6;
}

/*ドロップラウンメニューの下にシャドウ*/
#DropDownMenu ul {
	-moz-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	-o-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	-ms-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	behavior: url(/PIE.htc);
	}

/*ナビゲーションのリンクボタンの幅調整*/
/*「トップ」ボタン*/
.width_12per {
	width: 12%;
}

/*「無料Web診断」ボタン*/
.width_18per {
	width: 18%;
}

/*「寝具カウンセリング」ボタン*/
.width_28per {
	width: 28%;
}

/*「お問い合わせ」ボタン*/
.width_20per {
	width: 20%;
}

/*「ラボ概要」ボタン*/
.width_22per  {
	width: 22%;
}

/*サブメニュー*/
/*「寝具カウンセリング」ボタン*/
.width_28per ul {
	width: 100%;
	left: 0;
	right: 0;
}

/*「お問い合わせ」ボタン*/
.width_20per ul {
	width: 100%;
	left: 0;
	right: 0;
}

/*「ラボ概要」ボタン*/
.width_22per ul {
	width: 100%;
	left: 0;
	right: 0;
}

/*アクセス(マップ)へのリンクズレ修正*/
#map {
	margin-top: -100px;
	padding-top: 100px;
}

/*==ページメイン部分=================================================================*/

/*メイン部分の背景色*/
.white_bg {
	background: #ffffff;
	width: 100%;
	height: 100%;
	padding-top: 40px;
	padding-bottom: 200px;
}

/*ヘッダー画像の上の各コンテンツのタイトル(index.html以外)*/
.contents_name {
	text-align: center;
	color: #fff;
	text-shadow: 2px 2px 2px #000000;
	font-weight: normal;
	line-height: 1.3em;
	font-size: 26pt;
	margin-top: 125px;
}

/*各コンテンツのタイトル下の説明文*/
.contents_description {
	text-align: center;
	font-size: 12pt;
	color: #fff;
	padding: 15px;
	border: 1px solid #fff;
	width: 360px;
	margin: 0 auto;
	margin-top: 20px;
	text-shadow: 1px 1px 2px #000000;
	font-weight: bolder;
	background-color: rgba( 0, 0, 0, 0.05 );
}

/*各コンテンツのタイトル下の説明文の中のリンク文字*/
.contents_description a {
	color: #fff;
}

/*コンテンツの説明文*/
.intro_description {
	width: 80%;
	margin: 0 auto;
	margin-top: 20px;
	color: #000;
	font-size: 13pt;
	line-height: 1.3em;
}

.intro_description2 {
	width: 80%;
	margin: 0 auto;
	margin-top: -30px;
	color: #000;
	font-size: 14pt;
	line-height: 1.3em;
	margin-bottom: 120px;
}

.cd-scrolling-bg {
    min-height: 100%;
}

/*ヘッダー画像固定スクロール*/
.cd-fixed-bg {
    min-height: 450px;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center center;
	padding-top: 120px;
}

/*大見出しの帯(メイン部分の先頭に来る場合)*/
.intro_headline {
	width: 80%;
	background: #f1ede3;
	margin: 0 auto;
	margin-top: 20px;
	color: #252525;
	padding: 17px 15px 13px 15px;
	font-size: 18pt;
	border-left: solid 8px #cb9d68;
}

/*大見出しの帯(メイン部分の先頭以外の場所の場合)*/
.intro_headline2 {
	width: 80%;
	background: #f1ede3;
	margin: 0 auto;
	margin-top: 70px;
	color: #252525;
	padding: 17px 15px 13px 15px;
	font-size: 18pt;
	border-left: solid 8px #cb9d68;
}

/*太大文字明朝アンダーラインの見出し(メイン部分の先頭に来る場合)*/
.contents_title_top {
	width: 50%;
	margin: auto;
    margin-top: 30px;
	margin-bottom: 30px;
    text-align:center;
	font-size: 20pt;
	text-decoration: none;
	border-bottom: solid 1px #000;
	padding-bottom: 0px;
}

/*太大文字明朝アンダーラインの見出し(メイン部分の先頭以外の場所の場合)*/
.contents_title {
	width: 60%;
	margin: auto;
    margin-top: 120px;
	margin-bottom: 30px;
    text-align:center;
	font-size: 20pt;
	text-decoration: none;
	border-bottom: solid 1px #000;
	padding-bottom: 0px;
}

/*太大文字明朝アンダーラインの見出し(メイン部分の先頭以外の場所の場合+マージントップなし)*/
.contents_title2 {
	width: 60%;
	margin: auto;
	margin-bottom: 30px;
    text-align:center;
	font-size: 20pt;
	text-decoration: none;
	border-bottom: solid 1px #fff;
	padding-bottom: 0px;
}

/*記事本文部分*/
.boxContainer {
	width: 70%;
	display: flex;
	ustify-content: center;
	padding: 0;
	margin-top: 20px;
	margin-bottom: 70px;
	margin: auto;
	overflow: hidden;
}

.boxContainer a {
	font-size: 12pt;
}

/*予約ボタン*/
.reservation {
	width: 100%;
	text-align: center;
	margin-top: 20px;
	margin-bottom: 60px;
}

/*予約ボタンのバナー画像*/
.reservation img {
	width: 60%;
	max-width: 400px;
	margin: 0 auto;
	margin-top: 20px;
	border-radius: 0.3em;
}

/*==フッター=================================================================*/

footer {
	height: auto;
	width: 100%;
	background: #f3ede6;
	color: #000;
	font-size: 10pt;
	margin: 0 auto;
	line-height: 1.45em;
}

footer a {
	font-size: 10pt;
}

.footer_main {
	width: 700px;
	margin: 0 auto;
	margin-bottom: 60px;
	overflow: hidden;
}

.address {
	width: 320px;
	margin-top: 30px;
	margin-right: 60px;
	float: left;
}

.business_hours {
	width: 320px;
	margin-top: 30px;
	float: left;
}

.business_hours p {
	padding-bottom: 15px;
}

.copyright {
	color: #ffffff;
	width: 100%;
	text-align: center;
	background: #333375;
	padding: 30px 0 30px 0;
	margin: 0 auto;
	overflow: hidden;
}

.sns_icon {
	overflow: hidden;
	width: 80px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 12px;
}

.sns_icon img {
	width: 29px;
}

.sns_icon_left {
	float: left;
}

.sns_icon_right {
	float: right;
}

/*==Page Top ボタン=================================================================*/
#pageTop {
	position : absolute,
}

#pageTop a {
	display: block;
	z-index: 999;
	border-radius: 50%;
	width: 50px;
	height: 36px;
	padding: 14px 0 0 0;
	background-color: #cb9d68;
	color: #fff;
	font-weight: bolder;
	text-decoration: none;
	text-align: center;
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 22pt;
}

#pageTop a:hover {
	text-decoration: none;
	opacity: 0.7;
}



/*ページ内のリンクずれを解消*****************************************/
#hyouji {
	margin-top: -210px;
	padding-top: 230px;
}


/*----- ブレークポイント ----------------------------------------------------------------------------------------------------*/
/*===== max-width: 960px ===================================================================*/
@media (max-width: 960px){

	/*太大文字明朝アンダーラインの見出し(メイン部分の先頭に来る場合)*/
	.contents_title_top,
	/*太大文字明朝アンダーラインの見出し(メイン部分の先頭以外の場所の場合)*/
	.contents_title,
	.contents_title2 {
		width: 70%;
	}
	
	/*記事本文部分*/
	.boxContainer {
		width: 80%;
		display: flex;
		ustify-content: center;
		padding: 0;
		margin-top: 20px;
		margin-bottom: 70px;
		margin: auto;
		overflow: hidden;
	}
	
	.footer_main {
		width: 700px;
		margin: 0 auto;
		margin-bottom: 60px;
		overflow: hidden;
	}

	.address {
		width: 330px;
		margin: 0 auto;
		margin-top: 30px;
		margin-right: 40px;
		float: left;
	}

	.business_hours {
		width: 330px;
		margin: 0 auto;
		margin-top: 30px;
		float: left;
	}

}
/*===== max-width: 768px ===================================================================*/
@media (max-width: 768px){
	
	/*iOSのSafariではドロップダウンメニューのサブメニューが他要素クリックで閉じないため、閉じるようにする対策*/
	body {
	  cursor: pointer;
	}
	
	/*ヘッダー画像固定スクロールの高さ*/
	.cd-fixed-bg {
    min-height: 290px;
    }
	
	/*太大文字明朝アンダーラインの見出し(メイン部分の先頭に来る場合)*/
	.contents_title_top,
	/*太大文字明朝アンダーラインの見出し(メイン部分の先頭以外の場所の場合)*/
	.contents_title,
	.contents_title2 {
		width: 70%;
		margin-bottom: 25px;
		font-size: 19pt;
	}
	
	/*ヘッダー画像の上の各コンテンツのタイトル(index.html以外)*/
	.contents_name {
		font-size: 20pt;
		margin-top: 80px;
	}
	
	/*ヘッダー画像の上の各コンテンツのタイトル下の説明文*/
	.contents_description {
		font-size: 11pt;
		padding: 15px;
	    border: 1px solid #fff;
		width: 340px;
		margin: 0 auto;
		margin-top: 20px;
	}
	
	/*ページ最上部ブルー背景部分*/
	.site_name {
		height: 80px;
		border-bottom: 6px solid #cb9d68;
	}
	
	/*ページ最上部サイトロゴ画像*/
	.site_name img {
		width: 180px;
		margin-top: 15px;
		padding-bottom: 15px;
	}
	
	/*大見出しの帯(メイン部分の先頭に来る場合)*/
	.intro_headline {
		width: 80%;
	}
	
	/*大見出しの帯(メイン部分の先頭以外の場所の場合)*/
	.intro_headline2 {
		width: 80%;
	}
	
	/*コンテンツの説明文*/
	.intro_description {
		width: 80%;
		font-size: 12pt;
	}

	.intro_description2 {
		width: 80%;
		font-size: 13.5pt;
		margin-top: -60px;
	}
	
	/*コンテンツの本文*/
	.introduction {
		width: 80%;
		font-size: 11pt;
		margin-bottom: 60px;
	}
	
	/*予約ボタンのバナー画像*/
	.reservation img {
		width: 70%;
		max-width: 350px;
		margin: 0 auto;
		margin-top: 20px;
	}
	
	/*太大文字明朝アンダーラインの見出し(メイン部分の先頭に来る場合)*/
	.contents_title_top,
	/*太大文字明朝アンダーラインの見出し(メイン部分の先頭以外の場所の場合)*/
	.contents_title,
	.contents_title2 {
		width: 70%;
		margin-bottom: 25px;
		font-size: 19pt;
	}
	
	/*footerのインスタアイコン*/
	footer img {
		width: 30px;
	}
	
	.footer_main {
		width: 600px;
	}
	
	.address {
		width: 310px;
		margin: 0 auto;
		margin-top: 30px;
		margin-right: 30px;
		float: left;
	}

	.business_hours {
		width: 260px;
		margin: 0 auto;
		margin-top: 30px;
		float: left;
	}
}




/*===== max-width: 667px ===================================================================*/
@media (max-width: 667px){
	
	.hide_1 {
		display: inline;
	}
	
	/*ナビゲーションのドロップダウンメニュー*/
	#DropDownMenu li,
	#DropDownMenu a {
		font-size: 9.5pt;
	}
	
	/*見出し*/
	.black_bold {
		font-size: 11pt;
	}
	
	.red_bold {
		font-size: 11pt;
	}
	
	.cd-fixed-bg {
    min-height: 280px;
    }
	
	/*各コンテンツのタイトル(index.html以外)*/
	.contents_name {
		font-size: 20pt;
		margin-top: 70px;
	}
	
	/*各コンテンツのタイトル下の説明文*/
	.contents_description {
		font-size: 11pt;
		padding: 15px;
	    border: 1px solid #fff;
		width: 340px;
		margin: 0 auto;
		margin-top: 20px;
	}
	.contents_description a {
		font-size: 11pt;
	}
	
	.site_name {
		height: 70px;
		border-bottom: 5px solid #cb9d68;
	}

	.site_name img {
		margin-top: 13px;
		width: 170px;
	}
	
	/*コンテンツの見出し*/
	.intro_headline {
		width: 80%;
		font-size: 15pt;
	}
	
	.intro_headline2 {
		width: 80%;
		font-size: 15pt;
	}

	.introduction {
		width: 	80%;
		margin: 0 auto;
		margin-top: 30px; 
		margin-bottom: 40px;
		font-size: 11pt;
	}
	
	/*コンテンツの説明文*/
	.intro_description {
		font-size: 12pt;
	}
	
	.intro_description2 {
		font-size: 12.5pt;
	}

	/*footerのインスタアイコン*/
	footer img {
		width: 30px;
	}
	
		
	.footer_main {
		width: 60%;
		margin: 0 auto;
		margin-bottom: 60px;
		overflow: hidden;
	}

	.address {
		width: 100%;
		margin: 0 auto;
		margin-top: 30px;
		margin-right: 0px;
		float: left;
	}

	.business_hours {
		width: 100%;
		margin: 0 auto;
		margin-top: 30px;
		float: left;
	}
	
	/*ページ内のリンクずれを解消*****************************************/
	#hyouji {
		margin-top: -190px;
		padding-top: 210px;
	}
}

/*===== max-width: 480px ===================================================================*/
@media (max-width: 480px){
	
	/*コンテンツタイトル(ページ先頭)*/
	.contents_title_top {
		width: 80%;
	}
	
	/*コンテンツタイトル(ページ先頭以外)*/
	.contents_title,
	.contents_title2 {
		width: 80%;
	}
	
	.hide_2 {
		display: inline;
	}
	
	.site_name {
		height: 56px;
		border-bottom: 4px solid #cb9d68;
	}

	.site_name img {
		width: 150px;
		margin-top: 11px;
	}
	
	/*ナビゲーションのドロップダウンメニュー*/
	#DropDownMenu li,
	#DropDownMenu a {
		font-size: 8pt;
		font-weight: bold;
	}
	
	.cd-fixed-bg {
		min-height: 260px;
	}
	
	/*アクセス(マップ)へのリンクズレ修正*/
	#map {
		margin-top: -70px;
		padding-top: 70px;
	}
	
	/*コンテンツタイトル(ページ先頭)*/
	.contents_title_top {
		width: 80%;
	}
	
	/*コンテンツタイトル(ページ先頭以外)*/
	.contents_title,
	.contents_title2 {
		width: 80%;
	}
	
	/*各コンテンツのタイトル(index.html以外)*/
	.contents_name {
		font-size: 20pt;
		margin-top: 55px;
	}
	
	/*各コンテンツのタイトル下の説明文*/
	.contents_description {
		font-size: 11pt;
		padding: 15px;
	    border: 1px solid #fff;
		width: 330px;
		margin: 0 auto;
		margin-top: 20px;
	}
	
	/*コンテンツの見出し*/
	.intro_headline {
		width: 80%;
		font-size: 13pt;
	}
	
	.intro_headline2 {
		width: 80%;
		font-size: 13pt;
	}

	/*コンテンツの本文*/
	.introduction {
		width: 83%;
	}
	
	.intro_description {
		width: 83%;
		line-height: 1.6em;
	}
	
	.intro_description2 {
		width: 83%;
		margin-top: -80px;
	}
	
	.footer_main {
		width: 87%;
	}
	
	.small {
		font-size: 8.5pt;
	}
	
	/*ページ内のリンクずれを解消*****************************************/
	#hyouji {
		margin-top: -160px;
		padding-top: 180px;
	}
}

/*===== max-width: 375px ===================================================================*/
@media (max-width: 375px){
	
	.hide_3 {
		display: inline;
	}
	
		
	/*ナビゲーションのドロップダウンメニュー*/
	#DropDownMenu li,
	#DropDownMenu a {
		font-size: 7.5pt;
		font-weight: bold;
	}
	
	.cd-fixed-bg {
		min-height: 220px;
	}
	
	.contents_name {
		margin-top: 40px;
	}
	
	/*各コンテンツのタイトル下の説明文*/
	.contents_description {
		width: 280px;
	}
	
	/*コンテンツタイトル(ページ先頭)*/
	.contents_title_top {
		font-size: 14pt;
	}
	
	/*コンテンツタイトル(ページ先頭以外)*/
	.contents_title {
		font-size: 14pt;
		margin-top: 40px;
	}
	.contents_title2 {
		font-size: 14pt;
	}
	
	.footer_main {
		width: 290px;
	}
	
	.reservation img {
		min-width: 280px;
	}
}

/*===WEb無料診断が始まったら以下削除すること===================================================*/
/*Web診断がスタートするまで、navigation内のWeb診断のボタンは非表示*****************************************/
.width_18per {
	display: none;
}

/*Web診断のボタン非表示でずれた分の調整*/
#DropDownMenu {
	padding-left: 9%;
}






