@charset "utf-8";
@import url(reset.css);
@import url(base.css);


/* margin制御 */

.mb0 {
	margin-bottom:0 !important;
	
}

.mb10 {
	margin-bottom:10px !important;
}

.mb20 {
	margin-bottom:20px !important;
}

.mb30 {
	margin-bottom:30px !important;
}

.mb40 {
	margin-bottom:40px !important;
}

.mb50 {
	margin-bottom:50px !important;
}

.mb60 {
	margin-bottom:60px !important;
}

.mb70 {
	margin-bottom:70px !important;
}

.mb80 {
	margin-bottom:80px !important;
}

.mb90 {
	margin-bottom:90px !important;
}

.mb100 {
	margin-bottom:100px !important;
}



/*-------------------------------------------------------------------
	header
-------------------------------------------------------------------*/

#header {
	position: relative;
}


#header .bg img {
	width: 100%;
}

#header .logo {
	position: absolute;
	top: 5%;
	left: 5%;
}


#header .catch {
	padding: 0 0 30px;
	position: absolute;
	top: 30%;
	right: 20%;
}

@media screen and (max-width: 1280px){
	
	#header .catch {
		right: 10%;
	}
	
}
	
	
/*-------------------------------------------------------------------
	container
-------------------------------------------------------------------*/

#container {
	font-size: 1.5em;
	line-height: 1.8;
	text-align: justify;
	text-justify: inter-ideograph;
}

#container .inner {
	width: 1000px;
	margin: 0 auto;
}

#container .center {
	text-align: center;
}

#container .subt01 {
	font-size: 1.3em;
	line-height: 1.2;
	font-weight: 500;
	margin: 0 0 30px;
}

#container .subt01 span {
	font-weight: 300;
	font-size: 0.85em;
}

#container .subt02 {
	line-height: 1.0;
	text-align: center;
	margin: 0 0 30px;
}

#container .subt02 span {
	display: inline-block;
	position: relative;
	padding: 0 40px;
	font-size: 1.45em;
	font-weight: 500;
}

#container .subt02 span:before {
	background: #595757;
	width: 30px;
	height: 2px;
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#container .subt02 span:after {
	background: #595757;
	width: 30px;
	height: 2px;
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}


#container .subt03 {
	background: #eb6d8e;
	color: #fff;
	line-height: 1.0;
	margin: 0 0 20px;
	text-align: center;
	font-size: 1.3em;
	font-weight: 400;
	padding: 10px 0;
}

#container .subt03 span {
	display: inline-block;
	font-size: 0.75em;
	margin-left: 20px;
}

#container .subt04 {
	text-align: center;
	line-height: 1.0;
	margin: 0 0 20px;
}

#container .subt04 span {
	display: inline-block;
	background: #eb6d8e;
	color: #fff;
	font-size: 1.2em;
	font-weight: 400;
	padding: 18px 35px;
}

#container .subt05 {
	text-align: center;
	line-height: 1.0;
	margin: 0 0 20px;
	font-size: 1.15em;
}

#container a.under {
	text-decoration: underline;
}

#container a.under:hover {
	text-decoration: none;
}

#sec01 {
	background: #faecf3;
	padding: 60px 0;
}

#sec01 .same {
	overflow: hidden;
	zoom:1;
}

#sec01 .same dl {
	width: 230px;
	float: left;
	margin-right: 26px;
}

#sec01 .same dl:last-child {
	margin-right: 0;
}

#sec01 .same dl dt {
	margin: 0 0 20px;
}

#sec01 .same dl dt span {
	display: table-cell;
	width: 230px;
	height: 70px;
	text-align: center;
	vertical-align: middle;
	font-size: 1.7em;
	line-height: 1.4;
	color: #eb6d8e;
	font-weight: 500;
}

#sec01 .same dl dd.text {
	min-height: 150px;
}

#sec01 .same dl dd.btn a {
	display: block;
	border: 1px solid #595757;
	background: url("../image/arrow.png") 95% center no-repeat #fff;
	line-height: 1.0;
	text-align: center;
	padding: 10px 0;
}


#sec01 .same dl dd.btn a:hover {
	text-decoration: none;
	background-color: #faecf3;
}

#sec02 {
	padding: 40px 0 60px;
}

#sec02 .same01 {
	overflow: hidden;
	zoom:1;
	margin: 0 0 50px;
}

#sec02 .same01 .left {
	width: 630px;
	float: left;
}

#sec02 .same01 .right {
	float: right;
	width: 350px;
}

#sec02 .same01 table {
	width: 100%;
}

#sec02 .same01 table th,
#sec02 .same01 table td {
	vertical-align: middle;
	text-align: center;
}


#sec02 .same01 table th {
	width: 130px;
	border-left:1px solid #727171;
	border-right:1px solid #727171;
	background: #fadae1;
}


#sec02 .same01 table td {
	border-left:1px solid #727171;
	background: #fbf2f6;
	padding: 20px 0;
	line-height: 1.6;
}

#sec02 .same01 table td.ltxt {
	padding: 20px;
	text-align: left;
	word-break: break-all;
}

#sec02 .same01 table td.bdbtm {
	border-bottom:1px solid #727171;
}


#sec02 .same01 table .w130 {
	width: 130px;
}

#sec02 .same01 table .h200 {
	height: 222px;
}


#sec02 .pinkbox {
	background: #fbf2f6;
	padding: 40px 30px;
}

#sec02 .same02 {
	overflow: hidden;
	zoom:1;
}

#sec02 .same02 .box {
	background: #fff;
	width: 300px;
	float: left;
	margin-right: 20px;
}

#sec02 .same02 .box.exr {
	width: 460px;
	margin-right: 0;
}


#sec02 .same02 .box.last {
	margin-right: 0;
}

#sec02 .same02 .box.exr.last {
	float: right;
}


#sec02 .same02 .box dl {
	padding: 20px;
}

#sec02 .same02 .box dl dt {
	background: #eb6d8e;
	color: #fff;
	line-height: 1.0;
	padding: 5px 0;
	overflow: hidden;
	zoom:1;
	font-size: 1.3em;
	margin: 0 0 15px;
}

#sec02 .same02 .box dl dt span {
	display: block;
	padding: 7px 0;
}

#sec02 .same02 .box dl dt .num {
	float: left;
	width: 40px;
	text-align: center;
	border-right: 1px solid #fff;
}

#sec02 .same02 .box dl dt .txt {
	margin-left: 42px;
	text-align: center;
}


#sec02 .same02 .box dl dd {
	font-size: 1.1em;
}

#sec02 .same02 .box.exr dl dd {
	text-align: center;
}

#sec02 .same02 .box dl dd .tc {
	display: table-cell;
	width: 260px;
	height: 90px;
	text-align: center;
	vertical-align: middle;
}


#sec02 .same02 .box dl dd .pink {
	color: #eb6d8e;
}


#sec02 .tb01 {
	width: 920px;
}


#sec02 .tb01 th,
#sec02 .tb01 td {
	text-align: center;
	vertical-align: middle;
	line-height: 1.4;
	padding: 15px 0;
	border: 1px solid #727171;
	border-left: none;
}

#sec02 .tb01 th {
	background: #fadae1;
	font-weight: 300;
}

#sec02 .tb01 td {
	background: #fff;
}

#sec02 .tb01 td.pnk {
	background: #f5e7ed;
}

#sec02 .tb01 .rtnone {
	border-right: none;
}


#sec02 .tb01 .w270 {
	width: 200px;
}
#sec02 .tb01 .w100 {
	width: 80px;
}
#sec02 .tb01 .w120 {
	width: 100px;
}
#sec02 .tb01 .w150 {
	width: 150px;
}

#sec02 .faq dt {
	background: url("../image/q_icon.png") left top no-repeat;
	padding: 0 0 5px 60px;
	font-size: 1.4em;
	line-height: 1.4;
	margin: 0 0 10px;
	font-weight: 500;
}

#sec02 .faq dd {
	background: url("../image/a_icon.png") left 5px no-repeat;
	padding: 0 0 5px 60px;
	font-size: 1.05em;
	margin: 0 0 20px;
}

#sec02 .faq dd span {
	text-decoration: underline;
}

#sec02 #vol04 {
	width: 705px;
	margin: 0 auto 50px;
}

#sec02 #vol04 dl {
	margin: 0 0 30px;
}

#sec02 #vol04 dl dt {
	font-weight: 500;
	font-size: 1.05em;
}

#sec02 #vol04 dl dd {
	overflow: hidden;
	zoom:1;
}

#sec02 #vol04 dl dd .kome {
	float: left;
}

#sec02 #vol04 dl dd .txt {
	margin-left: 15px;
}


#sec02 #vol04 .link {
	overflow: hidden;
	zoom:1;
}

#sec02 #vol04 .link li {
	width: 340px;
	float: left;
}

#sec02 #vol04 .link li:last-child {
	float: right;
}

#sec02 #vol04 .link li a {
	display: block;
	border: 1px solid #595757;
	background: url("../image/arrow.png") 95% center no-repeat #fff;
	line-height: 1.0;
	text-align: center;
	padding: 12px 0;
}

#sec02 #vol04 .link li a:hover {
	text-decoration: none;
	background-color: #faecf3;
}


#sec02 .f17 {
	font-size: 1.15em;
}

#sec02 .f16 {
	font-size: 1.05em;
	font-weight: 400;
}


#sec02 .bdr {
	text-decoration: underline;
}
#sec02 .pbdr {
	text-decoration: underline;
	color: #eb6d8e;
}


#sec02 .bolds {
	margin: 0 0 40px;
}


#sec02 .bolds dt {
	position: relative;
	line-height: 1.0;
	padding-left: 20px;
	font-size: 1.3em;
	font-weight: 500;
}

#sec02 .bolds dt span {
	color: #eb6d8e;
}

#sec02 .bolds dt:before {
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #595757;
	content: '';
	position: absolute;
	top: 3px;
	left: 0;
}

#sec02 .bolds dd {
	font-size: 1.05em;
	margin: 15px 0;
	padding-left: 20px;
}

#sec02 .tb02 {
	width: 920px;
	margin: 0 0 10px;
}


#sec02 .caution {
	width: 920px;
	text-align: right;
}

#sec02 .tb02 th,
#sec02 .tb02 td {
	text-align: center;
	vertical-align: middle;
	line-height: 1.4;
	padding: 15px 0;
	border: 1px solid #727171;
	border-left: none;
}

#sec02 .tb02 th {
	background: #fadae1;
	font-weight: 300;
}

#sec02 .tb02 td {
	background: #fff;
	text-align: right;
	padding: 15px 20px;
}

#sec02 .tb02 td.pnk {
	background: #f5e7ed;
	text-align: center;
}

#sec02 .tb02 td.pnk2 {
	background: #fadae1;
	text-align: center;
}

#sec02 .tb02 .rtnone {
	border-right: none;
}


#sec02 .tb02 .w270 {
	width: 270px;
}
#sec02 .tb02 .w160 {
	width: 160px;
}

#sec02 .tb02 .nothing {
	background: none;
	height: 5px;
	padding: 0;
	border-right: none;
}

#sec02 .tb02 .rgts {
	text-align: right;
}

#sec02 .reladl {
	position: relative;
}


#sec02 .reladl dt {
	width: 420px;
	line-height: 1.0;
	background: #595757;
	color: #fff;
	font-size: 1.3em;
	font-weight: 500;
	text-align: center;
	padding: 10px 0;
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
}


#sec02 .reladl dd {
	border: 1px solid #727171;
	background: #fff;
	padding: 50px 0 20px;
	text-align: center;
	font-size: 1.4em;
	line-height: 1.0;
}

#sec02 .reladl dd .pbld {
	font-size: 1.3em;
	color: #eb6d8e;
	font-weight: 500;
}


#sec02 .reladl dd .sml {
	font-size: 0.75em;
	padding-left: 5px;
}


#sec02 .numbers dt {
	background: #eb6d8e;
	color: #fff;
	line-height: 1.0;
	padding: 5px 0;
	overflow: hidden;
	zoom:1;
	font-size: 1.3em;
}

#sec02 .numbers dt span {
	display: block;
	padding: 7px 0;
}

#sec02 .numbers dt .num {
	float: left;
	width: 40px;
	text-align: center;
	border-right: 1px solid #fff;
}

#sec02 .numbers dt .txt {
	margin-left: 50px;
}

#sec02 .numbers dd {
	background: #fff;
	padding: 30px;
}

#sec02 .boldttl {
	position: relative;
	line-height: 1.0;
	padding-left: 20px;
	font-size: 1.3em;
	font-weight: 500;
	margin: 0 0 10px;
}

#sec02 .boldttl:before {
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #595757;
	content: '';
	position: absolute;
	top: 4px;
	left: 0;
}

#sec02 .lftxt {
	padding-left: 20px;
	font-size: 1.15em;
}


/* sec03 */

#sec03 {
	background: #faecf3;
	padding: 50px 0 40px;
}

#sec03 .white {
	background: #fff;
	text-align: center;
	padding: 30px 0;
	margin: 0 0 30px;
}

#sec03 .white dl.corp {
	line-height: 1.0;
	margin: 0 0 20px;
}

#sec03 .white dl.corp dt {
	font-size: 1.15em;
	font-weight: 500;
	margin: 0 0 15px;
}

#sec03 .white dl.corp dd {
	font-size: 1.05em;
}


#sec03 .white dl.tel {
	line-height: 1.0;
}

#sec03 .white dl.tel dt {
	display: inline-block;
	background: #595757;
	padding: 8px 10px;
	color: #fff;
	font-size: 0.85em;
	vertical-align: middle;
}

#sec03 .white dl.tel dd {
	display: inline-block;
	font-size: 2.1em;
	font-weight: 500;
	margin-left: 10px;
	vertical-align: middle;
}

#sec03 .tb03 {
	width: 1000px;
}

#sec03 .tb03 th,
#sec03 .tb03 td {
	text-align: center;
	vertical-align: middle;
	line-height: 1.4;
	padding: 15px 0;
	border: 1px solid #727171;
}

#sec03 .tb03 th {
	background: #fadae1;
	font-weight: 300;
}

#sec03 .tb03 td {
	background: #fff;
	text-align: left;
	padding: 20px;
}

#sec03 .tb03 td.pnk {
	background: #f5e7ed;
	text-align: center;
}

#sec03 .tb03 .w150 {
	width: 150px;
}
#sec03 .tb03 .w240 {
	width: 240px;
}
#sec03 .tb03 .w760 {
	width: 760px;
}

#sec03 .btn {
	text-align: center;
	margin: 50px 0 0;
}

#sec03 .btn a {
	display: inline-block;
	border: 1px solid #595757;
	background: url("../image/arrow.png") 95% center no-repeat;
	line-height: 1.0;
	text-align: center;
	padding: 15px 0;
	width: 225px;
}


#sec03 .btn a:hover {
	text-decoration: none;
	background-color: #fff;
}


/*-------------------------------------------------------------------
	footer
-------------------------------------------------------------------*/

#footer {
	padding: 30px 0 50px;
}

#footer .footer {
	width: 1000px;
	margin: 0 auto;
}

#footer .footer .logo {
	margin: 0 0 20px;
}

#footer .footer .text {
	margin: 0 0 15px;
	font-size: 1.4em;
}

#footer .footer address {
	font-size: 1.2em;
}



/*===============================================
  画面の横幅が1024px以下に適用
===============================================*/
@media screen and (max-width: 1024px){
	
	img {
		max-width: 100%;
	}
	
	#container .inner {
		width: 94%;
		margin: 0 auto;
	}

	.scroll {
		width: 100%;
		overflow-x: auto;
		padding: 0 0 20px;
	}
	
	/* container */

	
	#sec01 .same dl {
		width: 23%;
		float: left;
		margin-right: 2%;
	}

	#sec01 .same dl:last-child {
		margin-right: 0;
	}

	#sec01 .same dl dt span {
		width: 230px;
		height: 60px;
		font-size: 1.5em;
		line-height: 1.2;
	}

	#sec01 .same dl dd.text {
		min-height: 200px;
	}	

	#sec02 .same01 .left {
		width: 60%;
		float: left;
	}

	#sec02 .same01 .right {
		float: right;
		width: 38%;
	}

	#sec02 .same01 table .h200 {
		height: 340px;
	}


	#sec02 .same02 .box {
		background: #fff;
		width: 32%;
		float: left;
		margin-right: 2%;
	}

	#sec02 .same02 .box.exr {
		width: 49%;
		margin-right: 0;
	}


	#sec02 .same02 .box.last {
		margin-right: 0;
	}

	#sec02 .same02 .box.exr.last {
		float: right;
	}


	#sec02 #vol04 {
		width: auto;
		margin: 0 auto 50px;
	}


	#sec02 #vol04 .link li {
		width: 49%;
	}


	/* footer */



	#footer .footer {
		width: 94%;
		margin: 0 auto;
	}

}

/*===============================================
  画面の横幅が768px以下に適用
===============================================*/
@media screen and (max-width: 768px){
	
	
	
	
}

/*===============================================
  画面の横幅が640px以下に適用
===============================================*/
@media screen and (max-width: 640px){
	

	/* margin制御 */

	.mb50 {
		margin-bottom:40px !important;
	}

	.mb60 {
		margin-bottom:50px !important;
	}

	.mb70 {
		margin-bottom:60px !important;
	}

	.mb80 {
		margin-bottom:60px !important;
	}

	.mb90 {
		margin-bottom:80px !important;
	}

	.mb100 {
		margin-bottom:80px !important;
	}
	
	
	/* header */

	#header {
		position: relative;
		padding: 100px 0;
		background: url("../image/mainimg.jpg") center bottom no-repeat;
		background-size: cover;
	}

	#header .bg {
		display: none;
	}

	#header .logo {
		position: absolute;
		top: 5%;
		left: 5%;
	}


	#header .catch {
		position: static;
		text-align: center;
		padding: 0 5%;
	}
	
	/* container */

	#container {
		font-size: 1.4em;
		line-height: 1.5;
	}
	
	#container .subt03 span {
		display: block;
		font-size: 0.75em;
		margin: 10px 0 0;
	}


	
	#sec01 {
		background: #faecf3;
		padding: 50px 0;
	}


	#sec01 .same dl {
		width: auto;
		float: none;
		margin:0 0 50px;
	}

	#sec01 .same dl:last-child {
		margin: 0;
	}

	#sec01 .same dl dt {
		margin: 0 0 20px;
	}

	#sec01 .same dl dt span {
		display: block;
		width: auto;
		height: auto;
		text-align: center;
		vertical-align: middle;
		font-size: 1.7em;
		line-height: 1.4;
		color: #eb6d8e;
		font-weight: 500;
	}

	#sec01 .same dl dd.text {
		min-height: inherit;
		margin: 0 0 20px;
	}
	
	
	#sec02 {
		padding: 40px 0;
	}

	#sec02 .same01 {
		overflow: hidden;
		zoom:1;
		margin: 0 0 50px;
	}

	#sec02 .same01 .left {
		width: auto;
		float: none;
	}

	#sec02 .same01 .right {
		float: none;
		width: auto;
		margin: 30px 0 0;
	}


	#sec02 .same01 table .h200 {
		height: auto;
	}


	#sec02 .pinkbox {
		background: #fbf2f6;
		padding: 30px 3%;
	}



	#sec02 .same02 .box {
		background: #fff;
		width: auto;
		float: none;
		margin:0 0 20px;
	}

	#sec02 .same02 .box.exr {
		width: auto;
		margin: 0 0 20px;
	}


	#sec02 .same02 .box.last {
		margin: 0;
	}

	#sec02 .same02 .box.exr.last {
		float: none;
	}


	#sec02 .same02 .box dl {
		padding: 20px 5%;
	}

	#sec02 .same02 .box dl dd .tc {
		display: block;
		width: auto;
		height: auto;
		text-align: center;
		vertical-align: middle;
	}


	#sec02 #vol04 {
		width: auto;
		margin: 0 auto 40px;
	}

	#sec02 #vol04 .link li {
		width: auto;
		float: none;
	}

	#sec02 #vol04 .link li:last-child {
		float: none;
		margin: 20px 0 0;
	}


	#sec02 .reladl {
		position: relative;
		padding: 30px 0 0;
	}	


	#sec02 .reladl dt {
		width: 90%;
		font-size: 1.2em;
		padding: 10px 0;
		top: 10px;
	}

	#sec02 .reladl dd {
		border: 1px solid #727171;
		background: #fff;
		padding: 40px 0 20px;
		text-align: center;
		font-size: 1.2em;
		line-height: 1.0;
	}

	#sec02 .reladl dd span {
		font-size: 1.2em;
	}
	
	
	#sec02 .numbers dt {
		background: #eb6d8e;
		color: #fff;
		line-height: 1.4;
		padding: 5px 2%;
		overflow: hidden;
		zoom:1;
		font-size: 1.2em;
	}

	#sec02 .numbers dt span {
		display: block;
		padding: 5px 0;
	}

	#sec02 .numbers dt .num {
		float: left;
		width: 30px;
		text-align: center;
		border-right: 1px solid #fff;
	}

	#sec02 .numbers dt .txt {
		margin-left: 40px;
	}

	#sec02 .numbers dd {
		background: #fff;
		padding: 20px 5%;
	}

	#sec02 .boldttl {
		position: relative;
		line-height: 1.4;
		padding-left: 20px;
		font-size: 1.2em;
		font-weight: 500;
		margin: 0 0 10px;
	}

	#sec02 .boldttl:before {
		width: 15px;
		height: 15px;
		border-radius: 50%;
		background: #595757;
		content: '';
		position: absolute;
		top: 4px;
		left: 0;
	}

	#sec02 .lftxt {
		padding-left: 20px;
		font-size: 1.0em;
	}

	
	/* sec03 */

	#sec03 {
		padding: 40px 0;
	}

	#sec03 .white {
		background: #fff;
		text-align: center;
		padding: 20px 0;
		margin: 0 0 30px;
	}

	#sec03 .white dl.corp {
		line-height: 1.0;
		margin: 0 0 20px;
	}
	
	
	#footer {
		padding: 20px 0;
	}

}

.indentText {
	text-indent: -1.1em;
	padding-left: 1.1em;
}

.priceBold {
	font-weight: bold;
	font-size: 1.4em;
}


/*===============================================
  画面の横幅が380px以下に適用
===============================================*/
@media screen and (max-width: 380px){
}


.pinkSpan {
	color:#eb6d8e;
	font-size: 1.4em;
	font-weight: 500;
	text-decoration: underline;
	margin-left: 10px;
}

.chisai {
	color:#eb6d8e;
	font-size: 0.8em;
	font-weight: 300;
	text-decoration: none;
}


.fontBold {
	font-weight: 500;
	font-size: 1.1em;
}


