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

/*-------------------------------------
  home - トップページ
-------------------------------------*/
.home .main-img > *{
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

@media (min-width: 768px) {
	.home .main-img{
		background: url("../images/home-main-bg.jpg") no-repeat top center / cover;
	}
}

.crown-area{
	margin-bottom: 50px;
}
.crown{
	max-width: 300px;
	height: 134px;
	margin: 20px auto 0;
	background: url("../images/home-crown.svg") no-repeat top center / cover;
}
.crown p{
	text-align: center;
	font-size: 26px;
	font-weight: 700;
	padding-top: 40px;
}
.round-box{
	display: block;
	font-size: 16px;
	background: #529988;
	border-radius: 20px;
	text-align: center;
	color: #fff;
	font-weight: 700;
	height: 25px;
	line-height: 25px;
}
.round-box-white{
	display: block;
	font-size: 18px;
	background: #fff;
	border-radius: 20px;
	text-align: center;
	color: #529988;
	font-weight: 700;
	height: 25px;
	line-height: 25px;
}
.notice-area{
	background: #F3F5F4;
	padding: 20px 20px 40px;
	margin-right: -20px;
	margin-left: -20px;
	margin-bottom: 50px;
}
.notice-area .round-box{
	display: inline-block;
	padding: 0 40px;
	margin-right: 20px;
}
.notice{
	border-bottom: #707070 1px solid;
}
.notice:last-child{
	border: none;
}

@media (min-width: 768px) {
	.notice-area{
		padding: 20px 0 40px;
	}
	.notice-area h2{
		margin-left: 40px;
	}
	.notice{
		padding: 0 50px;
	}
}

@media (min-width: 1200px) {
	.notice-area h2{
		margin-bottom: 0;
	}
	.notice{
		display: table;
		width: 1200px;
		padding: 40px 50px;
	}
	.notice h3,
	.notice p{
		display: table-cell;
	}
	.notice h3{
		width: 340px;
	}
}

.signature > div{
	margin-bottom: 50px;
}
.signature-img{
	max-width: 250px;
	margin-left: auto;
	margin-right: auto;
}

@media (min-width: 768px) {
	.signature-img{
		margin: 0;
	}
	.signature-text h2{
		margin-top: 0;
	}
}

@media (min-width: 992px) {
	.signature{
		display: flex;
		margin-left: -20px;
		margin-right: -20px;
	}
	.signature > div{
		padding-right: 20px;
		padding-left: 20px;
	}
}

@media (min-width: 1200px) {
	.signature .row > div{
		padding-right: 20px;
	}
}

.green-bg{
	background: #529988;
	overflow: hidden;
	padding-top: 20px;
	margin-bottom: 50px;
}
.green-bg .round-box-white{
	margin-left: auto;
	margin-right: auto;
}
.green-bg h2{
	color: #fff;
	text-align: center;
	margin-top: 20px;
}

@media (min-width: 768px) {
	.green-bg{
		padding-top: 50px;
		padding-bottom: 20px;
	}
}

@media (min-width: 1200px) {
	.green-bg{
		background: #529988 url("../images/home-green-bg.png") no-repeat bottom;
		padding-bottom: 80px;
	}
}

.products-area .container > div{
	background: #fff;
}
.products-area .round-box-white{
	width: 142px;
}
.products-ttl{
	background: #dae7d5;
	padding: 20px;
}
.products-ttl img,
.products-item img{
	width: 80px;
	height: auto;
	margin-right: 20px;
}
.products-ttl h3{
	margin-top: 0;
	color: #529988;
	font-size: 26px;
}
.products-ttl p{
	font-weight: 700;
	margin-bottom: 0;
}
.products-item{
	padding: 20px 20px 0;
}
.products-item:last-child{
	padding-top: 0;
}
.products-item a{
	display: block;
	color: #3B3B3B;
	margin-bottom: 20px;
}
.products-item a:hover{
	opacity: .8;
	text-decoration: none;
}
.products-item a span{
	display: block;
	font-weight: 700;
	position: relative;
	margin-bottom: 5px;
	text-indent: 25px;
}
.products-item a span::before{
	content: '';
	width: 20px; 
	height: 20px;
	background: url("../images/arrow.svg") no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	margin: 2.5px 5px 2.5px 0;
}
.products-item p{
	margin-bottom: 0;
}

@media (min-width: 768px) {
	.products-area .container > div{
		border-top-left-radius: 90px;
		margin-bottom: 40px;
		box-shadow: 0 3px 6px 0 rgba(0, 0, 0, .2);
	}
	.products-ttl{
		background: none;
		padding-top: 40px;
	}
}

@media (min-width: 992px) {
	.products-item,
	.products-item:last-child{
		padding-top: 40px;
	}
}

@media (min-width: 1200px) {
	.products-ttl,
	.products-item{
		padding: 40px 40px 20px;
	}
}

.media-area{
	margin-bottom: 50px;
}
.media-area .round-box{
	display: block;
	width: 115px;
}
.media-area h2{
	margin-top: 20px;
}

@media (min-width: 992px) {
	.media-area .round-box{
		margin-left: auto;
		margin-right: auto;
	}
	.media-area h2{
		text-align: center;
		font-size: 36px;
		margin-bottom: 50px;
	}
}

@media (min-width: 1200px) {
	.media-area{
		margin-bottom: 80px;
	}
	.media-area .row > * {
		padding-right: 20px;
		padding-left: 20px;
	}
}

.common-area{
	margin-bottom: 50px;
}
.common-area .round-box{
	display: inline-block;
	margin-bottom: 0;
}
.common-area h2{
	margin-top: 20px;
}

@media (min-width: 768px) {
	.common-area .round-box{
		margin-right: 20px;
	}
	.common-area h2{
		display: inline-block;
		margin-bottom: 50px;
	}
}

.record-area .round-box{
	width: 154px;
}

.em{
	background: url("../images/home-em-ttl-r.png") no-repeat right;
	background-size: 40px auto;
	position: relative;
	font-size: 26px;
	font-weight: 700;
	padding: 0 50px;
	margin: 50px 0;
}
.em::before{
	content: '';
	width: 40px;
	height: 100%;
	background: url("../images/home-em-ttl-l.png") no-repeat left;
	background-size: 40px auto;
	position: absolute;
	top: 0;
	left: 0;
}

@media (min-width: 768px) {
	.em{
		padding: 10px;
	}
	.em,
	.em::before{
		background-size: auto 100%;
	}
}

@media (min-width: 992px) {
	.em{
		font-size: 36px;
	}
}

.item-img{
	width: 80px;
	height: 80px;
	margin-right: 20px;
	margin-bottom: 20px;
	float: left;
}
.case-ttl{
	width: 100%;
}
.case-area .round-box{
	width: 115px;
}
.case a{
	display: block;
	border: #529988 3px solid;
	box-shadow: 6px 6px rgba(0, 0, 0, .2);
	border-radius: 20px;
	margin-bottom: 40px;
	padding: 20px;
	color: #3B3B3B;
	font-weight: 700;
	overflow: hidden;
}
.case a:hover{
	opacity: .8;
	text-decoration: none;
}
.case .dtl-link{
	clear: both;
	padding-right: 25px;
	text-align: right;
}
.case .dtl-link::after{
	right: 0;
	margin: 2.5px 0 2.5px 5px;
}

@media (min-width: 768px) {
	.case-ttl{
		max-width: 580px;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
	.case:nth-child(2),
	.case:nth-child(4){
		position: relative;
		top: 50px;
	}
}

@media (min-width: 992px) {
	.item-img{
		width: 200px;
		height: 200px;
		margin-bottom: 20px;
	}
	.case-ttl{
		max-width: 800px;
		margin-top: 100px;
	}
	.case a{
		padding: 40px;
	}
}

@media (min-width: 1200px) {
	.case-area .row > * {
		padding-right: 20px;
		padding-left: 20px;
	}
	.case:nth-child(2),
	.case:nth-child(4){
		top: 100px;
	}
}

.rental-area .round-box{
	width: 115px;
}
.rental-area h2,
.rental-area > p{
	margin-bottom: 25px;
}
.rental a{
	display: block;
	background: #DAE7D5;
	margin-bottom: 40px;
	padding: 20px;
	color: #3B3B3B;
	overflow: hidden;
}
.rental a:hover{
	opacity: .8;
	text-decoration: none;
}
.rental h3{
	margin-top: 0;
	font-size: 16px;
}
.rental .dtl-link{
	clear: both;
	text-align: right;
	padding-right: 20px;
}

@media (min-width: 768px) {
	.rental-ttl{
		max-width: 480px;
		margin-top: 100px;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
	.rental-area h2.trial{
		margin-bottom: 50px;
	}
	.rental a{
		min-height: 218px;
	}
}

@media (min-width: 992px) {
	.rental-ttl{
		max-width: 640px;
		margin-top: 150px;
	}
	.rental a{
		padding: 40px;
	}
}

@media (min-width: 1200px) {
	.rental-area .row > * {
		padding-right: 20px;
		padding-left: 20px;
	}
}

.problem-area .round-box-white{
	width: 115px;
}
.problem-area .row > div{
	display: flex;
	justify-content: flex-start;
	margin-bottom: 40px;
}
.problem{
	background: #fff;
	padding: 20px;
}
.problem h3{
	font-size: 16px;
	text-align: center;
	margin-bottom: 20px;
}
.problem-img{
	width: 180px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
}
.problem .dtl-link{
	padding-right: 20px;
}
.problem-others{
	background: #fff;
	padding: 20px;
	border: #707070 1px solid;
}
.problem-others a{
	text-decoration: underline;
}
.problem-others a:hover{
	text-decoration: none;
}
.problem-area .container > div:last-child{
	margin-bottom: 40px;
}

@media (min-width: 992px) {
	.problem-area h2{
		font-size: 36px;
		margin-bottom: 50px;
	}
	.problem{
		padding: 20px 40px;
	}
	.problem-others{
		padding: 40px;
		border: #707070 1px solid;
	}
}

@media (min-width: 1200px) {
	.problem-area .row > * {
		padding-right: 20px;
		padding-left: 20px;
	}
}

.youtube-area .round-box{
	width: 115px;
}
.youtube-area h2,
.youtube-area > p{
	margin-bottom: 25px;
}
.youtube-area .row > div{
	margin-bottom: 50px;
}
.youtube-area iframe{
	display: block;
	width: 100%;
	height: calc(100vw * .5625);
	margin-bottom: 20px;
}

@media (min-width: 992px) {
	.youtube-area iframe{
		height: 250px;
	}
}

@media (min-width: 1200px) {
	.youtube-area .row > * {
		padding-right: 20px;
		padding-left: 20px;
	}
}

.goods-area .round-box{
	width: 115px;
}
.goods-area > .row{
	margin-bottom: 40px;
}
.goods-area h3{
	font-size: 26px;
}
.goods-area > h4{
	color: #529988;
}
.goods-area .dtl-link{
	margin-top: 40px;
}
.goods-contact{
	color: #529988;
	font-weight: 700;
}
.goods-area .box-area{
	background: #DAE7D5;
	padding: 10px 20px 20px;
	margin-bottom: 50px;
	overflow: hidden;
}
.goods-area .box-area img{
	display: block;
	margin-top: 20px;
	max-width: 200px;
	margin-left: auto;
	margin-right: auto;
}

@media (min-width: 768px) {
	.goods-area h3{
		margin-top: 0;
	}
	.goods-area .box-area{
		padding: 10px 50px 20px;
	}
	.goods-area .box-area img{
		margin: 20px;
	}
}

@media (min-width: 992px) {
	.goods-area > *:last-of-type{
		margin-bottom: 100px;
	}
	.goods-area .box-area{
		margin-left: 40px;
		margin-right: 40px;
		margin-bottom: 100px;
	}
	.goods-area .box-area img{
		margin: 20px 0;
	}
}

@media (min-width: 1200px) {
	.goods-area{
		margin-bottom: 100px;
	}
	.goods-area .row > * {
		padding-right: 20px;
		padding-left: 20px;
	}
}

.contact-area .round-box{
	display: block;
	width: 115px;
	margin-left: auto;
	margin-right: auto;
}
.contact-area h2{
	margin-top: 20px;
	margin-bottom: 25px;
	text-align: center;
}
.contact-message{
	margin-bottom: 25px;
}
.contact-area .row{
	margin: 0;
}
.contact-form{
	background: #529988;
	border-radius: 50px;
	padding: 20px;
}
.contact-tel{
	background: #FF9777;
	border-radius: 50px;
}
.contact-area .row > div{
	padding: 20px;
	margin-bottom: 20px;
}
.contact-area .row > div a,
.contact-area .row > div a:hover{
	color: #fff;
	text-decoration: none;
}

@media (min-width: 768px) {
	.contact-area > p{
		text-align: center;
	}
	.contact-form{
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}
	.contact-tel{
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}
}

@media (min-width: 992px) {
	.contact-area{
		margin-bottom: 50px;
	}
	.contact-area .round-box{
		margin-left: auto;
		margin-right: auto;
	}
	.contact-area h2{
		text-align: center;
		font-size: 36px;
		margin-bottom: 50px;
	}
	.contact-message{
		margin-bottom: 50px;	
	}
	.contact-area .row > div{
		padding: 40px;
	}
}

@media (min-width: 1200px) {
	.contact-area .row{
		margin-right: -20px;
		margin-left: -20px;
	}
}

.payment-cancel{
	margin-bottom: 50px;
}
.payment-cancel img{
	display: block;
	max-width: 410px;
}

@media (min-width: 768px) {
	.payment-cancel h3{
		margin-bottom: 30px;
	}
	.payment-cancel .dtl-link{
		clear: both;
		padding-right: 25px;
		text-align: right;
	}
	.payment-cancel .dtl-link::after{
		right: 0;
		margin: 2.5px 0 2.5px 5px;
	}
}

@media (min-width: 1200px) {
	.payment-cancel{
		margin-bottom: 100px;
	}
	.payment-cancel .row > *{
		padding-right: 40px;
	}
	.payment-cancel .row > *:last-child{
		padding-left: 40px;
		padding-right: 0;
	}
}
