@charset "utf-8";

#mainvisual{
	clear: both;
	background: url(../../image/price/bg-main-pc.jpg) no-repeat center top / cover;
	background-attachment: fixed;
	padding: 85px 0 560px;
	box-sizing: border-box;
	text-align: center;
}
@media only screen and (min-width: 0px) and (max-width: 850px) {
#mainvisual{
	background: url(../../image/price/bg-main-sp.jpg) no-repeat center top / cover;
	background-attachment: fixed;
}
}

#mainvisual h2{
	font-size: 54px;
	margin-bottom: 20px;
}
.bg-blue{
	padding: 60px 0 30px;
}
.message {
	width: 750px;
	margin: 0 auto 30px;
	padding: 30px 25px;
	background: #fff;
	box-sizing: border-box;
}
.message p {
	font-size: 24px;
	margin-bottom: 20px;
}
.box {
	width: 750px;
	margin: 0 auto 80px;
	padding: 30px 25px;
	background: #fff;
	box-sizing: border-box;
}
.box p {
	font-size: 30px;
	margin-bottom: 30px;
	line-height: 1.5;
}
.box p span {
	font-size: 22px;
}
.box p.notice {
	font-size: 20px;
	margin-bottom: 0;
	clear: both;
	line-height: 1.8;
}
.box table{
	border-collapse: collapse;
}
.box table th{
	font-weight: normal;
	font-size: 26px;
	text-align: left;
	padding-bottom: 5px;
}
.box table td{
	font-size: 36px;
	padding-left: 30px;
	padding-bottom: 5px;
}
.box table td span{
	font-size: 20px;
}

h3{
	font-size: 42px;
	margin-bottom: 30px;
	padding-bottom: 25px;
	text-align: center;
	color: #1491e1;
	position: relative;
	z-index: 8888;
	border-bottom: 1px solid #1491e1;
}
h3.line{
	width: 385px;
	color: #000;
	border-bottom: 5px solid #1491e1;
	margin: 0 auto 30px;
	text-align: center;
	padding-bottom: 10px;
}
h3.line span{
	font-size: 24px;
}
.bg-01{
	background: #f1f0e9;
	position: relative;
	margin-top: -84px;
	z-index: 0;
	padding-top: 110px;
}
.bg-01:after {
	content: ".";
	display: block;
	height: 0px;
	clear: both;
	visibility: hidden;
}
/*\*/
* html .bg-01 { 
	height: 1px;
	overflow: visible;
}
/**/

.bg-01 .intro{
	width: 750px;
	margin: 0 auto;
	padding-bottom: 30px;
	font-size: 28px;
	line-height: 1.92;
}

#opinion {
	margin: 0 auto;
	padding: 30px 25px;
	background: #fff;
	border: 1px solid #dcdddd;
}
#opinion:after {
	content: ".";
	display: block;
	height: 0px;
	clear: both;
	visibility: hidden;
}
/*\*/
* html #opinion { 
	height: 1px;
	overflow: visible;
}
/**/

#opinion dl{
	width: 750px;
	margin: 0 auto;
}
#opinion dl dt{
	width: 110px;
	height: 110px;
	font-size: 52px;
	border: 2px solid #1491e1;
	margin-bottom: 30px;
	margin-right: 30px;
	padding-top: 30px;
	color: #1491e1;
	background: #fff;
	float: left;
	clear: both;
	border-radius: 110px;
	text-align: center;
	box-sizing: border-box;
	line-height: 0.5;
}
#opinion dl dt.new90 {
	width: 110px;
	height: 110px;
	font-size: 52px;
	border: 2px solid #2d9065;
	margin-bottom: 30px;
	margin-right: 30px;
	padding-top: 30px;
	color: #2d9065;
	background: #fff;
	float: left;
	clear: both;
	border-radius: 110px;
	text-align: center;
	box-sizing: border-box;
	line-height: 0.5;
  position: relative;
}
#opinion dl dt.new90:before {
	content: '新設';
	position: absolute;
  animation: flash 2s linear infinite;
  font-size: 20px;
  width: 50px;
  background: #2d9065;
  color: #fff;
  display: block;
  padding: 10px;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  border-radius: 5px;
}
@keyframes flash {
  0%,100% {
    opacity: 1;
  }
  20%,70% {
    opacity: 1;
  }

  50% {
    opacity: 0.5;
  }
}
#opinion dl dt span,
#opinion dl dd span{
	font-size: 24px;
}
#opinion dl dd{
	height: 110px;
	font-size: 64px;
	margin-bottom: 30px;
	line-height: 110px;
}
#opinion p.notice{
	line-height: 2.4;
}

.box dl dt{
	width: 90px;
	height: 90px;
	font-size: 42px;
	background: #1491e1;
	color: #fff;
	float: left;
	clear: both;
	border-radius: 90px;
	text-align: center;
	margin-bottom: 30px;
	padding-top: 25px;
	box-sizing: border-box;
	line-height: 0.5;
	margin-right: 30px;
}
.box dl dt span{
	font-size: 20px;
}
.box dl dd span{
	font-size: 24px;
}
.box dl dd{
	height: 90px;
	font-size: 64px;
	margin-bottom: 30px;
	line-height: 90px;
}



h5{
	padding: 20px;
	background: #1491e1;
	font-size: 48px;
	text-align: center;
	color: #fff;
}
h5 span{
	font-size: 32px;
}
.detail{
	background: #fff;
	border: 1px solid #1491e1;
	margin-bottom: 60px;
	padding-bottom: 30px;
}
.detail .txt{
	font-size: 28px;
	line-height: 2;
	padding: 30px;
}
.detail .txt:last-of-type{
		padding: 30px 30px 0;
}
.detail .btn-g a{
	width: 660px;
	font-size: 26px;
}


