@charset "utf-8";

body {
	padding-top: 0;
}


/* ----------------------------------------
mv_top
----------------------------------------- */

#mv {
	width: 100%;
	margin: -74px 0 31px;
	position: relative;
}

.mvSlider {
	width: 100%;
	height: auto;
	position: relative;
	z-index: 0
}

.mvSlider li {
	text-align: center;
}

.mvSlider li img {
	width: 100%;
	height: auto;
}

.bx-wrapper {
	max-width: 1300px;
	margin: 0 auto;
	position: relative;
}

.bx-wrapper .bx-pager {
	text-align: right;
	position: absolute;
	bottom: 181px;
	left: 224px;
}

.bx-wrapper .bx-pager div {
	display: inline-block;
	margin-left: 10px;
}
.bx-wrapper .bx-pager div:first-child {
	margin-left: 0;
}

.bx-wrapper .bx-pager a {
	display: block;
	width: 9px;
	height: 9px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 50%;
	background-color: #103578;
}
.bx-wrapper .bx-pager .active {
	background-color: #d5d5d5;
}


/* ----------------------------------------
contents
----------------------------------------- */

#contents {
	margin: 0 auto;
}


/* ----------------------------------------
introduction
----------------------------------------- */

#contents .introduction {
	width: 100%;
	margin: -43px 0 133px;
}

.introduction img {
	width: 100%;
	height: auto;
}

.introduction .pic {
	width: 65%;
	float: left;
}

.introduction h1 {
	width: 17%;
	margin-left: -2.5%;
	padding-top: 6.5%;
	float: left;
}

.introduction h2 {
	width: 598px;
	margin: 0 auto 57px;
}

.introduction .txt {
	width: 667px;
	line-height: 2.1;
	margin: 0 auto 2em;
	font-size: 14px;
	color:  #676666;
	clear: left;
}
.introduction .txt .red {
	font-size: 8px;
	color: #e10000;
}
.introduction .txt .small {
	vertical-align: middle;
	font-size: 10px;
}

.introduction .txt.first {
	padding-left: 6em;
}

.introduction h3 {
	text-align: center;
	margin-bottom: 2em;
	font-size: 18px;
}

.introduction .point {
	width: 26%;
	margin: 0 auto;
	padding-right: 10%;
}


/* ----------------------------------------
introduction
----------------------------------------- */

#contents .megumi {
	width: 894px;
	margin: 0 auto;
	margin-bottom: 116px;
}

.megumi img {
	width: 100%;
	height: auto;
}

.megumi h2 {
	width: 329px;
	margin: 0 auto 59px;
}

.megumi .list li {
	display: inline-block;
	width: 268px;
	margin-left: 2.5em;
	vertical-align: top;
}
.megumi .list li:first-child {
	margin-left: 0;
}

.megumi .list li h3 {
	width: 180px;
	margin: 0 auto 39px;
}

.megumi .list li .txt {
	line-height: 1.7;
	font-size: 14px;
	color: #666666;
}


/* ----------------------------------------
linelup
----------------------------------------- */

#contents .linelup {
	width: 100%;
	margin-bottom: 64px;
	padding: 54px 0 41px;
	background-image: url(../img/bg_lineup01.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	-webkit-background-size: cover;
	background-size: cover;
}

.linelup h2 {
	width: 225px;
	margin: 0 auto 48px;
}
.linelup h2 img  {
	width: 100%;
	height: auto;
}

.linelup .list {
	width: 950px;
	margin: 0 auto 54px;
}

.linelup .list li {
	display: inline-block;
	width: 225px;
	margin-left: 12px;
	vertical-align: top;
	color: #fff;
}
.linelup .list li:first-child {
	margin-left: 0;
}

.linelup .list li img {
	margin-bottom: 17px;
}

.linelup .list li h3 {
	line-height: 1.6;
	margin-bottom: .5em;
	font-size: 14px;
}
.linelup .list li h3 .small {
	display: inline-block;
	width: 100%;
	font-size: 11px;
}

.linelup .list li .txt {
	line-height: 1.7;
	margin-bottom: 2em;
	font-size: 12px;
}

.linelup .btnlink01 {
	width: 950px;
	margin: 0 auto;
	text-align: center;
}


/* ----------------------------------------
qa
----------------------------------------- */

#contents .qa {
	width: 950px;
	margin: 0 auto;
}

.qa h2 {
	width: 195px;
	margin: 0 auto 58px;
}
.qa h2 img {
	width: 100%;
}

.accordionlist {
	margin-bottom: 51px;
}

.qa .btnlink01 {
	width: 100%;
	text-align: right;
}

/* ----------------------------------------
appeal
----------------------------------------- */
.appeal {
	box-sizing: border-box;
	max-width: 950px;
	margin:  30px auto 50px;
}

.appeal * {
	box-sizing: border-box;
}

.appeal .area {
	margin-left: -50px;
}

.appeal .area:after {
	content: "";
	display: block;
	clear: both;
}

.appeal .fb {
	float: left;
	width: 100%;
	margin-bottom: 35px;
	padding-left: 50px;
}

.appeal .fb .fb_iframe_widget,
.appeal .fb .fb_iframe_widget span,
.appeal .fb .fb_iframe_widget iframe[style],
.appeal .fb .fb_iframe_widget [class="_2p3a"] {
   width: 100% !important;
}

.appeal .kit {
	float: left;
	width: 100%;
	padding-left: 50px;
}

.appeal .kitbox {
	padding: 20px 5%;
	background-color: #fef8f5;
	border: 1px solid #fde7dd;
	text-align: center;
}

.appeal .kitbox .heading {
	color: #a7075a;
	font-weight: bold;
	font-size: 17px;
	text-align: center;
	line-height: 1;
	padding: 10px 0;
	border-top: 1px solid #a7075a;
	border-bottom: 1px solid #a7075a;
}

.appeal .kitbox img {
	display: block;
	margin: auto;
	margin-top: 18px;
	max-width: 265px;
	height: auto;
}

.appeal .kitbox .text {
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 14px;
	line-height: 1.5;
}

@media screen and (min-width: 768px) {
	.appeal {
		margin-top: 60px;
		margin-bottom: 100px;
	}
	.appeal .fb {
		/* (500 + 25) / 950 * 100 = 55.263157895% */
		width: 55.263157895%;
		margin-bottom: 0;
	}
	.appeal .kit {
		/* (400 + 25) / 950 * 100 = 44.736842105% */
		width: 44.736842105%;
	}
	.appeal .kitbox {
		padding: 30px 5%;
	}
	.appeal .kitbox .heading {
		padding: 15px 0;
		font-size: 20px;
	}
	.appeal .kitbox .text {
		margin-top: 15px;
		margin-bottom: 25px;
		font-size: 16px;
	}
	.appeal .kitbox img {
		width: auto;
		margin-top: 20px;
	}
	.appeal .btnlink02 a {
		font-size: 20px;
	}
}


footer {
	margin-top: 102px;
}



@media screen and (max-width: 786px) {

	/*
	mvSlider
	*/

	#mv {
		margin: 0 0 10%;
	}

	.bx-wrapper {
		width: 100%;
	}

	.mvSlider li img {
		width: 100%;
	}

	.bx-wrapper .bx-pager {
		width: 100%;
		text-align: center;
		bottom: -2%;
		left: 0;
	}

	.bx-wrapper .bx-pager div {
		margin-right: 10px;
	}

	.bx-wrapper .bx-pager a {
		width: 20px;
		height: 20px;
	}

	/*
	introduction
	*/

	#contents .introduction {
		width: 108%;
		padding: 0;
		margin-top: 0;
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
		margin-bottom: 15%;
	}

	.introduction h1 {
		width: 35%;
		margin: 0 auto;
		padding: 0;
		float: none;
	}

	.introduction .pic {
		width: 100%;
		margin-top: -3%;
		float: none;
	}

	.introduction h2 {
		width: 52%;
		margin-bottom: 2em;
	}

	.introduction .txt {
		width: 90%;
		line-height: 2;
		font-size: 15px;
	}

	.introduction .txt.first {
		padding: 0;
	}

	.introduction h3 {
		width: 90%;
		line-height: 1.5;
		margin: 0 auto 1.5em;
		text-align: left;
		font-size: 18px;
	}

	.introduction .point {
		width: 90%;
		padding: 0;
	}

	/*
	megumi
	*/

	#contents .megumi {
		width: 92%;
		margin-bottom: 8%;
	}

	.megumi h2 {
		width: 70%;
		margin-bottom: 10%;
	}

	.megumi .list {
		text-align: center;
	}

	.megumi .list li {
		width: 100%;
		margin: 0 0 8%;
	}
	.megumi .list li:last-child {
		margin-bottom: 0;
	}

	.megumi .list li h3 {
		width: 32%;
		margin-bottom: 5%;
	}

	.megumi .list li .txt {
		line-height: 2;
		font-size: 15px;
		text-align: left;
	}

	/*
	linelup
	*/

	#contents .linelup {
		width: 108%;
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
		margin-bottom: 10%;
		padding: 8% 10%;
		background-image: url(../img/bg_sp_lineup01.png);
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	.linelup h2 {
		width: 47%;
		margin-bottom: 8%;
	}

	.linelup .list {
		width: 100%;
	}

	.linelup .list li {
		width: 45%;
		margin: 18% 2% 0;
		vertical-align: top;
	}
	.linelup .list li:nth-child(-n+2) {
		margin: auto 2% 0;
	}


	.linelup .list li img {
		width: 100%;
		margin-bottom: 1.5em;
	}

	.linelup .list li h3 {
		margin-bottom: 1em;
		font-size: 17px;
	}
	.linelup .list li h3 .small {
		font-size: 13px;
	}

	.linelup .list li .txt {
		line-height: 1.8;
		font-size: 14px;
	}

	.linelup .btnlink01 {
		width: 100%;
	}

	/*
	qa
	*/

	#contents .qa {
		width: 100%;
	}

	.qa h2 {
		width: 35%;
		margin-bottom: 8%;
	}

	.accordionlist {
		margin-bottom: 12%;
	}

	.accordionlist .ttl_accordion {
		margin-top: 8%;
	}
	.accordionlist .ttl_accordion:first-child {
		margin-top: 0;
	}

	.qa .btnlink01 {
		width: 92%;
		margin: 0 auto;
	}

	footer{
		margin-top: 8%;
	}
}
