@charset "utf-8";


/* ------------------------------------------------------------------------------------------------
 * RESPONSIVE
 * ------------------------------------------------------------------------------------------------ */
@media screen and (max-width:999px) {
} /* END RESPONSIVE 999x */




@media screen and (max-width:767px) {
	.l-useful .e-text {
		font-size: 1.3rem;
		line-height: 1.75;
	}
	
	.l-useful-solution-items {
		padding-bottom: 15px;
	}
	
	.l-useful-solution-item {
		width: 100%;
		min-height: 62px;
		margin: 0 0 20px;
		padding: 0;
		display: block;
	}
	
	.l-useful-solution-item .e-link {
		padding: 0 0 0 130px;
	}
	
	.l-useful-solution-item .e-image {
		width: 110px;
	}
	
	.l-useful-solution-item .e-time {
		font-size: 1.2rem;
		margin-right: 10px;
	}
	
	.l-useful-solution-item .e-area {
		font-size: 1.2rem;
		width: 80px;
		padding: 3px 0;
	}
	
	.l-useful-solution-item .e-text {
		font-size: 1.4rem;
		line-height: 1.5;
		padding: 0;
	}
	
	.l-useful .e-button {
		padding: 0 15px;
	}
	
	.l-useful .e-button .e-link {
		font-size: 1.6rem;
		width: 100%;
		min-width: 0;
		padding: 10px 0;
	}	
	
	.l-useful .e-button.is-post .e-link {
		font-size: 1.4rem;
	}
	
	.l-useful .e-button .e-link:after {
		width: 12px;
		background-position: center;
		background-size: 100% auto;
		right: 15px;
	}
	
	.l-useful .e-button.is-post .e-link:before {
		width: 20px;
		height: 20px;
	}
 
 
	/* nor. style */
	.l-news-inc {
		margin: 0;
	 padding: 50px 0 15px;
	}

	
	.balloon:before {
	  top: 30px;
	}

	.balloon:after {
	   top: 30px;
	}
	
	
	
/* ----------------------------------------------------------------------
 * Solution
 * ---------------------------------------------------------------------- */
	.l-solution-entry-main-title {
		font-size: 1.8rem;
	}
	
	.l-solution-entry-main-title:before {
		font-size: 1.2rem;
	}
	
	.l-solution-entry-main-text {
		font-size: 1.3rem;
		line-height: 1.75;
	}
	
	.l-solution-entry-prof {
		padding: 15px;
	}
	
	.l-solution-entry-prof .e-image {
		width: 100%;
		margin: 0 0 15px;
		position: relative;
		top: auto;
		left: auto;
	}
	
	.l-solution-entry-prof .e-title:before {
		font-size: 1.1rem;
		margin: 0 auto 10px;
	}
	
	.l-solution-entry-prof .e-title .e-shop {
		font-size: 1.2rem;
		line-height: 1.5;
		text-align: center;
		margin: 0 0 5px;
		padding-left: 15px;
		display: block;
	}
	
	.l-solution-entry-prof .e-title .e-name {
		font-size: 2rem;
		text-align: center;
		margin: 0 0 15px;
		padding-left: 15px;
		display: block;
	}
	
	.l-solution-entry-prof .e-text {
		font-size: 1.3rem;
	}
	
	.l-solution-entry-prof .e-button .e-link {
		line-height: 1.35;
	}
	
	.l-solution-entry-prof .e-button .e-link:before {
		top: .5em;
	}
	
	.l-solution-entry .e-question {
		font-size: 1.8rem;
	}
	
	.l-solution-entry p {
		font-size: 1.3rem;
		line-height: 1.75;
	}
	
	.l-solution-entry p.solution001 {
		margin: 0 auto 60px;
	}
	
	.l-solution-entry-comment {
		padding-left: 70px;
	}
	
	.l-solution-entry-comment:before {
		width: 60px;
		height: 60px;
		left: -5px;
	}
	
	.l-solution-entry figure {
		padding: 0;
	}
	
	.l-solution-entry figure.solution001 {
		margin: 0 0 60px;
	}
	
	.l-solution-entry figure.solution001-2 {
		margin: 0 0 20px;
	}	
	
	.l-solution-entry-relation .e-image {
		width: 100%;
		margin: 0 0 15px;
		position: relative;
		top: auto;
		left: auto;
	}
	
	.l-solution-entry-relation {
		padding: 20px;
	}
	
	.l-solution-entry-relation .e-title {
		font-size: 1.8rem;
		line-height: 1.5;
		margin: 0 0 10px;
	}
	
	.l-solution-entry-relation .e-text {
		font-size: 1.3rem;
		line-height: 1.5;
	}
	
	.l-solution-entry-relation .e-button .e-link {
		font-size: 1.6rem;
		width: 100%;
		min-width: 0;
	}
	
	
	/* ふとんのお悩み解決室 */
	/* solition 一覧 */
	.l-solution-item {
		width: 100%;
		min-height: 100px;
		margin: 0 0 20px;
		padding: 0;
		display: block;
	}
	
	.l-solution-item .e-link {
		padding: 0 0 0 130px;
	}
	
	.l-solution-item .e-image {
		width: 110px;
	}
	
	.l-solution-item .e-time {
		font-size: 1.2rem;
		margin-right: 10px;
		display: block;
	}
	
	.l-solution-item .e-prof {
		font-size: 1.2rem;
	}
	
	.l-solution-item .e-area {
		font-size: 1.2rem;
		width: 80px;
		padding: 3px 0;
	}
	
	.l-solution-item .e-text {
		font-size: 1.4rem;
		line-height: 1.5;
		padding-top: 5px;
	}
	
	.l-solution-button {
		padding: 0 15px;
	}
	
	.l-solution-button .e-button {
		font-size: 1.6rem;
		width: 100%;
		min-width: 0;
		padding: 10px 0;
	}

/* 目次 */
.l-solution-entry-menu {
	padding-bottom: 20px;
}

.l-solution-entry-menu.solution001 {
	margin: 0 auto 40px;
	width: 90%;
}

.l-solution-entry-menu .e-title {
	font-size: 1.6rem;
	padding: 10px 0;
}

.l-solution-entry-menu .e-list {
	padding: 20px 10px 0;
}

.l-solution-entry-menu .e-list li {
	display: block;
	padding: 10px 0 0 1.5em;
	width: 100%;
}

.l-solution-entry-menu .e-list li:first-child {
	padding-top: 0;
}

.l-solution-entry-menu .e-list li:before {
}


/* リスト */
.l-solution-entry-list {
	margin: 0 0 30px;
}
.l-solution-entry-list li {
	font-size: 1.3rem;
}
.l-solution-entry-list li:before {
}
	
.l-solution-entry-menu .e-list.solution001 {
	padding: 15px 15px 0;
}
	
.l-solution-entry-menu .e-list.solution001 li{
	font-size: 1.3rem;
}

.l-solution-entry-menu .e-list.solution001 li.ttl{
	font-size: 1.6rem;
	line-height: 1.5;
}



/* ----------------------------------------------------------------------
 * word
 * ---------------------------------------------------------------------- */
	.is-word .u-content.is-dictionary {
		margin: 0 0 30px;
	}
	
	.is-word .u-page-menu-item .e-link:before {
		width: 10px;
	}
	
	.l-word-list-item {
    font-size: 1.3rem;
		margin-bottom: 15px;
    width: calc(100% / 2);
	}
	
	.l-word-text p {
		font-size: 1.3rem;
		line-height: 1.75;
	}
	
	.l-word-text p .e-btn:before {
		top: .5em;
	}
	
	.l-word-text p img {
		width: 100%;
	}
	
	.l-word-text p.__img_floatR img {
		float: none;
		margin-bottom: 20px;
		margin-left: 0;
	}
	
	.l-word-text p.__img_floatL img {
		float: none;
		margin-bottom: 20px;
		margin-right: 0;
	}
	
} /* END RESPONSIVE 767px */




@media screen and (max-width:374px) {
} /* END RESPONSIVE 374px */




@media screen and (orientation: landscape) {
} /* END RESPONSIVE landscape */




@media screen and (orientation: landscape) and (max-width:568px) {
} /* END RESPONSIVE landscape */




@media print {
} /* END PRINT */







/* ------------------------------------------------------------------------------------------------
 * RESPONSIVE
 * ------------------------------------------------------------------------------------------------ */
@media screen and (max-width:999px) {
} /* END RESPONSIVE 999x */




@media screen and (max-width:767px) {
	.l-useful .e-text {
		font-size: 1.3rem;
		line-height: 1.75;
	}
	
	.l-useful-solution-items {
		padding-bottom: 15px;
	}
	
	.l-useful-solution-item {
		width: 100%;
		min-height: 62px;
		margin: 0 0 20px;
		padding: 0;
		display: block;
	}
	
	.l-useful-solution-item .e-link {
		padding: 0 0 0 130px;
	}
	
	.l-useful-solution-item .e-image {
		width: 110px;
	}
	
	.l-useful-solution-item .e-time {
		font-size: 1.2rem;
		margin-right: 10px;
	}
	
	.l-useful-solution-item .e-area {
		font-size: 1.2rem;
		width: 80px;
		padding: 3px 0;
	}
	
	.l-useful-solution-item .e-text {
		font-size: 1.4rem;
		line-height: 1.5;
		padding: 0;
	}
	
	.l-useful .e-button {
		padding: 0 15px;
	}
	
	.l-useful .e-button .e-link {
		font-size: 1.6rem;
		width: 100%;
		min-width: 0;
		padding: 10px 0;
	}	
	
	.l-useful .e-button.is-post .e-link {
		font-size: 1.4rem;
	}
	
	.l-useful .e-button .e-link:after {
		width: 12px;
		background-position: center;
		background-size: 100% auto;
		right: 15px;
	}
	
	.l-useful .e-button.is-post .e-link:before {
		width: 20px;
		height: 20px;
	}
 
 
	/* nor. style */
.l-news-inc {
	margin: 0;
 padding: 50px 0 15px;
}

	
	
	/* ------------------------------------------------------------------------------------------------
 * MODAL 
 * ------------------------------------------------------------------------------------------------ */
 #modal-main {
  width: 90%;
  max-height: 90%;
 }

 .modal-main-inner {
  padding: 50px 20px;
 }

 .modal-main-inner:after {
  height: 40px;
  width: 40px;
  right: 10px;
  top: 10px;
 }

 #modal-main h2 {
  font-size: 2.0rem;
  margin-bottom: 20px;
 }

 #modal-main figure p {
  width: 80%;
  margin: 15px auto 0;
	 text-align: center;
 }

 #modal-main figure figcaption {
  font-size: 1.4rem;
  line-height: 1.5;
  float: none;
  width: 100%;
  padding-left: 0;
 }
	
.iframe_cover{
	position:relative;
	width:100%;
	height:0;
	margin: 0 auto 20px;
	max-width: 590px;
	padding-top:56%;
}

.solution-entry p {
    font-size: 1.3rem;
    line-height: 1.75;
}
	
.solution001-flex{
	margin-bottom: 60px;
	display: block;
}

.solution001-flex .l-point-flowVideo {
	width: 100%;
	margin-right: 0;
	margin-bottom: 40px;
 	margin-top: 0;
 	text-align: center;
}
	
.solution001-flex .l-point-flowVideo-text {
	margin-top: 0;
	width: 100%;
}
	
.u-button.is-iconBlank a,
.u-button.is-iconSerch a {
	padding: 10px 0;
}
	
.u-button.is-iconPop span {
	padding: 10px 0;
}
	
/* ------------------------------------------------------------------------------------------------
 * MODAL 
 * ------------------------------------------------------------------------------------------------ */
.u-button {
	 max-width: none;
}
	
/* ----------------------------------------------------------------------
 * CASE
 * ---------------------------------------------------------------------- */
.l-case {
 margin: 0 0 60px;
 padding: 0;
}
	
/* ----------------------------------------------------------------------
 * add
 * ---------------------------------------------------------------------- */

	.l-solution-entry-relation.sol01 .e-button .e-link {
		background-position: left 8% center;
		background-size: 30px 30px;
		font-size: 1.6rem;
		min-width: 330px;
		padding: 15px 0 15px 30px;
	}
	
/* ----------------------------------------------------------------------
 * add 2021 10/18
 * ---------------------------------------------------------------------- */
	.l-solution-entry-supplement {
		padding: 20px;
	}
	
	.l-solution-entry-supplement h2{
		margin: 0 0 30px;
		font-size: 1.8rem;
		line-height: 1.75;
	}

	.l-solution-entry-supplement figure{
		margin: 0;
		padding: 0;
	}
	
	
	.l-solution-entry-table{
		margin: 0 0 30px;
		padding-top: 50px;
	}

	.l-solution-entry-table h2{
		margin-bottom: 80px;
		color: #b3923a;
		font-size: 1.8rem;
		line-height: 1.75;
	}

	.l-solution-entry-table .flex{
		margin-bottom: 20px;
		width: 100%;
		display: block;
		border: none;
	}

.l-solution-entry-table .flex .flexCont{
	width : 100% ;
	box-sizing: border-box;
	border:none;
}
	
	.l-solution-entry-table .flex .flexCont:nth-child(1){
		margin-bottom: 70px;
	}
	.l-solution-entry-table .flex .flexCont:nth-child(2){
		margin-bottom: 90px;
	}

	.l-solution-entry-table .flex .flexCont .head{
		padding: 23px 10px 10px;
	}
	
	.l-solution-entry-table .flex .flexCont .head h3{
		font-size: 2.2rem;
		line-height: 1.5;
	}

	.l-solution-entry-table .flex .flexCont .head p{
		font-size: 1.3rem;
		line-height: 1.5;
	}

	.l-solution-entry-table .flex .flexCont .head p span{
		font-size: 1.2rem;
		line-height: 1.5;
	}

	.l-solution-entry-table .flex .flexCont .cont{
		padding: 20px;
		font-size: 1.2rem;
		line-height: 1.3;
		box-sizing: border-box;
		border: 1px #B3923A solid;
	}

	.l-solution-entry-table .flex .flexCont .cont p{
		font-size: 1.2rem;
		line-height: 1.3;
		font-weight: normal;
	}

	.l-solution-entry-table ul{
		
	}

	.l-solution-entry-table ul li{
		font-size: 1.3rem;
		line-height: 1.5;
	}

	
	
	
}