
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp,apply
small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	color:#1a1a1a;
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
.red {
	color:#D70B24;
}
em {
	font-weight:600;
}

a:link {color: #1070C5; text-decoration: none; }
a:visited { color: #1070C5; text-decoration: none; }
a:hover { color: #0087FF; text-decoration: none; }
a:active { color: #1070C5; text-decoration: none; }
a:hover img { transition:0.5s; opacity: 0.8; filter:alpha(opacity=80); -ms-filter:"alpha(opacity=80)";}


/*** 要素出し分け ***/
.sp {
	display: inline-block;
	}
.pc {
	display: none;
}
/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
.sp {
	display: none;
	}
.pc {
	display: inline-block;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
.sp {
	display: none;
	}
.pc {
	display: inline-block;
	}
}

/*** 見出しh2 ***/
	h2 {
		font-size:20px;
		line-height:1.4;
		font-weight:600;
		color: #0F2D46;
		margin: 0 auto 5px;
		display: inline-block;
	}
	h2.white {
		color: #fff;
	}
	h2 span.color {
		background:linear-gradient(transparent 60%, #ff6 60%);
	}
	h2 span.sml {
		font-size:80%;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
	h2 {
		font-size:30px;
		line-height:1.4;
		margin-bottom:5px
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
	h2 {
		font-size:38px;
		line-height:1.4;
		margin-bottom: 8px;
	}
}

/*** header ***/
header {
	min-width: 100%;
	overflow: hidden;
	background:rgba(255,255,255,1);
	padding: 15px 0px 12px;
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    z-index: 999;
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.05);
	}
	header #block {
		width: 100%;
		margin: 0 auto;
	}
	header #block div.logo {
		float: left;
		width: 80px;
	}
	header #block div.logo img {
		width: 60px;
		height: auto;
		padding: 0px 0px 0px 10px;
	}
	header #block div.logo02 {
		float: left;
		width: 100px;
	}
	header #block div.logo02 img {
		width: 120px;
		height: auto;
		padding: 0px 0px 0px 10px;
	}
	header #block a.text {
	  display: none;
	}
	header #block .buttonDL {
	  display: none;
	}
	header #block .button {
		display: inline;
		color: #fff;
		font-size: 13px;
		line-height:1;
		font-weight:500;
		background-color: #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 8px 10px;
		margin: -2px 65px 0 0;
		float: right;
	}
	header #block .button:hover {
		background-color: #EE2D9A;
	}

	/*** ハンバーガーメニュー ***/
	header #hamburger .btn-gNav{
	  position: fixed;
	  top: 15px;
	  right: 20px;
	  width: 30px;
	  height: 24px;
	  z-index: 3;
	  box-sizing: border-box;
	  cursor: pointer;
	  -webkit-transition: all 400ms;
	  transition: all 400ms;
	}
	header #hamburger .btn-gNav span{
	  position: absolute;
	  width: 100%;
	  height: 4px;
	  background: #887601;
	  border-radius: 10px;
	  -webkit-transition: all 400ms;
	  transition: all 400ms;
	}
	header #hamburger .btn-gNav span:nth-child(1) {
	  top:0;
	}
	header #hamburger .btn-gNav span:nth-child(2) {
	  top:10px;
	}
	header #hamburger .btn-gNav span:nth-child(3) {
	  top:20px;
	}
	header #hamburger .btn-gNav.open span:nth-child(1){
	  background: #887601;
	  top: 8px;
	  -webkit-transform: rotate(-45deg);
	  -moz-transform   : rotate(-45deg);
	  transform        : rotate(-45deg);
	}
	header #hamburger .btn-gNav.open span:nth-child(2),#hamburger .btn-gNav.open span:nth-child(3){
	  top: 8px;
	  background :#887601;
	  -webkit-transform: rotate(45deg);
	  -moz-transform   : rotate(45deg);
	  transform        : rotate(45deg);
	}
	header #gNav{
	  position: fixed;
	  top: 0;
	  right: -100%;
	  width: 100%;
	  height: 100%;
	  background-color: #EEEEE7;
	  background-image: linear-gradient(0deg, #fff 20%, transparent 20%, transparent 100%);
	  background-position: left top;
	  background-size: 3px 3px;
	  background-repeat: repeat;
	  font-size: 16px;
	  box-sizing: border-box;
	  z-index: 2;
	  margin-top: 51px;
	  padding: 0px;
	  transition: .3s;
	}
	header #gNav.open{
	  right: 0px;
	}
	header #gNav .gNav-menu{
	  width: 100%:;
	  height:100%;
	  padding: 0 50px;
	  margin-top: -50px;
	  display: flex;
	  flex-direction: column;
	  text-align: center;
	  justify-content: center;
	}
	header #gNav .gNav-menu li{
	  font-size:20px;
	  line-height:1.4;
	  font-weight:500;
	  display: block;
	  padding : 20px 30px;
	  border-bottom: 1px solid #887601;
	}
	header #gNav .gNav-menu li a{
	  color: #695E2D;
	  text-decoration: none;
	}
/***
	header #gNav .gNav-menu li:first-child {
	  border-bottom: none;
	}
***/
	header #gNav .gNav-menu li .buttonDL {
		display: inline-block;
		width: 90%;
		height: auto;
		color: #CC0A78;
		font-size: 20px;
		font-weight:600;
		background-color: #fff;
		border: solid 2px #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 11px 12px 12px;
	}
	header #gNav .gNav-menu li .buttonDL:hover {
		background-color: #FFF6FB;
	}


/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
	header #block div.logo {
		width: 90px;
	}
	header #block div.logo img {
		width: 70px;
		padding-top: 0px;
	}
	header #block div.logo02 {
		width: 160px;
	}
	header #block div.logo02 img {
		width: 150px;
		padding-top: 3px;
	}
	header #gNav{
	  margin-top: 55px;
	}
	header #block .button {
		font-size: 15px;
		padding: 8px 17px;
		margin: -2px 65px 0 0;
	}
	header #gNav .gNav-menu li .buttonDL {
		display: inline-block;
		width: 95%;
		height: auto;
		color: #CC0A78;
		font-size: 22px;
		padding: 13px 14px 14px;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
header {
	min-width: 100%;
	overflow: hidden;
	padding: 16px 0 16px;
	}
	header #block {
		width: 100%;
		margin: 0 auto;
	}
	header #block div.logo {
		width: 100px;
	}
	header #block div.logo img {
		width: 80px;
		padding-top: 5px;
	}
	header #block div.logo02 {
		width: 180px;
	}
	header #block div.logo02 img {
		width: 180px;
		padding-top: 5px;
	}
	header #block ul {
	  float: right;
	  display: inline-block;
	}
	header #block li {
		display: inline;
		padding-left: 15px;
	}
	header #block li:last-child {
		display: inline;
		padding-left: 0px;
	}
	header #block .text {
		color: #1a1a1a;
		font-size: 14px;
		font-weight:600;
		padding-top: 14px;
	}
	header #block a.text {
	  display: inline-block;
	}
	header #block a.text:hover{
	  text-decoration: underline;
	}
	header #block .buttonDL {
		display: inline-block;
		color: #CC0A78;
		font-size: 16px;
		font-weight:600;
		background-color: #fff;
		border: solid 2px #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 11px 12px 12px;
		margin: 0 10px 0 0;
	}
	header #block .buttonDL:hover {
		background-color: #FFF6FB;
	}
	header #block .button {
		display: inline-block;
		color: #fff;
		font-size: 16px;
		font-weight:600;
		background-color: #CC0A78;
		border: solid 2px #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 11px 12px 12px;
		margin: 0 10px 0 0;
	}
	header #block .button:hover {
		background-color: #EE2D9A;
		border: solid 2px #EE2D9A;
	}
	header #hamburger {
	  display: none;
	}
}

/*** mainV ***/
#mainV {
	padding: 0em 0 0em;
	}
#mainV {
	min-width: 100%;
	min-height: 50vh;
	overflow: hidden;
	background-image:  radial-gradient( ellipse at 50% 40%, #386588 0%, #0E0D0D 50% );
	}
	#mainV .contents {
		width: 100%;
		overflow: hidden;
		margin: 0 auto;
	}
	#mainV .contents h1 {
		text-align: center;
		margin-top: 90px;
	}
	#mainV .contents h1 img {
		width: 70%;
		height: auto;
	}
	#mainV .contents p.button {
		margin: 25px auto 40px;
		text-align: center;
	}
	#mainV .contents p.button a {
		color: #fff;
		font-size: 18px;
		line-height:1;
		font-weight:500;
		background-color: #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 20px 20px;
		margin: 0 auto 0;
		display: block;
		width: 60%;
	}
	#mainV .contents p.button a:hover {
		background-color: #EE2D9A;
	}
	#mainV div.contents .cover {
		width:100%;
		padding-bottom: 56.25%;
		height:0px;
		position: relative;
	}
	#mainV div.contents .cover iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	#mainV div.contents div.box .cover img {
		width:100%;
		height:auto;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
	#mainV {
		min-width: 100%;
		min-height: 50vh;
		padding: 0em 0 0em;
	}
	#mainV .contents h1 {
		margin-top: 120px;
	}
	#mainV .contents h1 img {
		width: 60%;
	}
	#mainV .contents p.button {
		margin: 30px auto 50px;
	}
	#mainV .contents p.button a {
		font-size: 24px;
		padding: 28px 10px;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
	#mainV {
		min-width: 1070px;
		overflow: hidden;
		min-height: auto;
	}
	#mainV .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#mainV .contents div.box {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		margin: 70px auto 30px;
	}
	#mainV .contents div.box div.col {
		width: 50%;
		margin-bottom: 70px;
	}
	#mainV .contents div.box h1 {
		text-align: left;
	}
	#mainV .contents div.box h1 img {
		width: 504px;
	}
	#mainV .contents p.button {
		margin: 36px 0 0 -15px;
	}
	#mainV .contents p.button a {
		font-size: 22px;
		padding: 28px 15px;
		width: 65%;
	}
	#mainV div.contents div.box .cover {
		text-align: right;
		width:535px;
		padding-bottom: 28%;
		height:0px;
		position: relative;
	}
	#mainV div.contents div.box .cover iframe {
		position: absolute;
		top: 100px;
		left: 0;
		width: 100%;
		height: 100%;
	}
	#mainV div.contents div.box .cover img {
		width:535px;
		height:300px;
		margin-top: 100px;
	}
}

/*** about ***/
#about {
	padding: 2.5em 0 2.5em;
	}
#about {
	min-width: 100%;
	overflow: hidden;
	background: #03090E url(../images/bg01.png) repeat-x;
	background-position: center top;
	}
	#about .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#about .contents p.subtitle {
		margin: 0 auto 30px;
	}
	#about .contents p.subtitle img {
		width: 22%;
		height: auto;
	}
	#about .contents div.about_wrap {
		margin: 30px 20px 0;
		flex-direction: column;
	}
	#about .contents div.about_wrap div {
		flex: 1;
		margin-bottom: 0;
	}
	#about .contents div.about_wrap div p.img {
		margin: 0 auto 30px;
	}
	#about .contents div.about_wrap div p.img img {
		width: 80%;
		height: auto;
	}
	#about .contents div.about_wrap ul {
		text-align: left;
		margin: 40px auto 0px;
		list-style-type: none;
		text-align: center;
		width: 85%;
	}
	#about .contents div.about_wrap ul li {
		font-size:16px;
		line-height:1.6;
		font-weight:600;
		color: #D5CFB9;
		border: 1px solid #D5CFB9;
		border-radius: 2px;
		margin-bottom: 5px;
		padding: 10px;
	}
	#about .contents div.about_wrap div p.text {
		font-size:16px;
		line-height:1.6;
		font-weight:400;
		text-align: left;
		color: #fff;
		margin: 20px auto 0;
	}
	#about .contents div.about_wrap div p.center {
		text-align: center;
	}
	#about .contents div.about_wrap div p span.color {
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0.4) 50%, rgba(255, 255, 255, 0.4) 100%);
		color: #fff;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#about {
	padding: 3.5em 0 4em;
	}
	#about .contents p.subtitle img {
		width: 13%;
	}
	#about .contents div.about_wrap div p.img img {
		width: 50%;
		padding-bottom: 20px;
	}
	#about .contents div.about_wrap ul {
		margin: 30px auto 0px;
		width: 60%;
	}
	#about .contents div.about_wrap ul li {
		font-size:20px;
		margin-bottom: 7px;
		padding: 20px;
	}
	#about .contents div.about_wrap div p.text {
		font-size:18px;
		margin: 30px auto 0;
		width: 70%;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#about {
	padding: 5em 0 5em;
	}
#about {
	min-width: 1070px;
	overflow: hidden;
	}
	#about .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#about .contents p.subtitle img {
		width: 126px;
	}
	#about .contents div.about_wrap {
		display: -webkit-flex;
		display: flex;
		flex-direction: row;
		align-items: center;
		margin: 50px 0 0;
	}
	#about .contents div.about_wrap div {
		flex: 1;
	}
	#about .contents div.about_wrap div.col-1 {
		flex-basis: 57%;
	}
	#about .contents div.about_wrap div.col-2 {
		flex-basis: 43%;
	}
	#about .contents div.about_wrap div p.img img {
		width: 85%;
		padding: 10px 0 0;
	}
	#about .contents div.about_wrap ul {
		margin: 0px auto 20px;
		width: 100%;
	}
	#about .contents div.about_wrap ul li {
		font-size:22px;
		margin-bottom: 10px;
		padding: 12px;
	}
	#about .contents div.about_wrap div p.text {
		font-size:20px;
		line-height:1.6;
		font-weight:400;
		text-align: left;
		margin: 0 auto 30px;
	}
	#about .contents div.about_wrap div p.center {
		text-align: center;
	}
}

/*** benefits ***/
#benefits {
	padding: 2.5em 0 2em;
	}
#benefits {
	min-width: 100%;
	overflow: hidden;
	background-color: #fff;
	background-image: url(../images/img_triangle.png) , repeating-linear-gradient(#dbdbc5, #dbdbc5 1px, #fff 1px, #fff 3px);
	background-position: center bottom , left top;
	background-size: 100% auto , 1px 3px;
	background-repeat: no-repeat , repeat;
	}
	#benefits .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#benefits .contents p.subtitle {
		margin: 0 auto 20px;
	}
	#benefits .contents p.subtitle img {
		width: 35%;
		height: auto;
	}
	#benefits .contents div.benefits_wrap {
		margin: 30px 20px 0;
		flex-direction: column;
	}
	#benefits .contents div.benefits_wrap div.col {
		flex: 1;
		margin-bottom: 0;
		background-color: #fff;
		border-radius: 3px;
		box-shadow: 0 0px 7px rgba(0,0,0,0.1);
		padding: 30px 35px 30px;
		margin: 0 auto 20px;
	}
	#benefits .contents div.benefits_wrap div.col h3 {
		color: #0F2D46;
		font-size: 18px;
		line-height: 1.4;
		font-weight: 600;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 30px;
	}
	#benefits .contents div.benefits_wrap div.col h3:before, 
	#benefits .contents div.benefits_wrap div.col h3:after {
		content: '';
		border-top: 1px solid;
		width: 2em;
		background-color: #0F2D46;
	}
	#benefits .contents div.benefits_wrap div.col h3:before {
		margin-right: 0.5em;
	}
	#benefits .contents div.benefits_wrap div.col h3:after {
		margin-left: 0.5em;
	}
	#benefits .contents div.benefits_wrap div.col p.img_block {
		margin: 25px auto 0;
	}
	#benefits .contents div.benefits_wrap div.col p.img_block img {
		width: 100%;
		height: auto;
	}
	#benefits .contents div.benefits_wrap div.col p.title {
		font-size: 16px;
		line-height:1.4;
		font-weight:600;
		margin: 10px 5px 10px;
	}
	#benefits .contents div.benefits_wrap div.col p.detail {
		font-size: 14px;
		line-height:1.6;
		text-align: left;
		margin: 0 auto 10px;
	}
	#benefits .contents .button {
		display: inline-block;
		color: #CC0A78;
		font-size: 18px;
		line-height:1.4;
		font-weight:600;
		background-color: #fff;
		border: solid 2px #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 18px 10px;
		margin: 20px auto 30px;
		width: 75%;
	}
	#benefits .contents .button:hover {
		background-color: #FFF6FB;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#benefits {
	padding: 3.5em 0 3.0em;
	}
	#benefits .contents p.subtitle img {
		width: 20%;
	}
	#benefits .contents div.benefits_wrap {
		margin: 50px auto 0;
		width: 75%;
	}
	#benefits .contents div.benefits_wrap div.col {
		padding: 45px 60px 50px;
		margin: 0 auto 20px;
	}
	#benefits .contents div.benefits_wrap div.col h3 {
		font-size: 24px;
		margin-bottom: 40px;
	}
	#benefits .contents div.benefits_wrap div.col p.img_block {
		margin: 40px auto 0px;
	}
	#benefits .contents div.benefits_wrap div.col p.title {
		font-size: 18px;
	}
	#benefits .contents div.benefits_wrap div.col p.detail {
		font-size: 16px;
	}
	#benefits .contents .button {
		font-size: 24px;
		padding: 28px 10px;
		margin: 40px auto 60px;
		width: 75%;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#benefits {
	padding: 5em 0 4em;
	}
#benefits {
	min-width: 1070px;
	overflow: hidden;
	}
	#benefits .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#benefits .contents p.subtitle img {
		width: 176px;
	}
	#benefits .contents div.benefits_wrap {
		display: flex;
		flex-direction:row;
		margin: 60px auto 40px;
	}
	#benefits .contents div.benefits_wrap div.col {
		display: flex;
		flex-direction:column;
		padding: 35px 50px 35px;
		margin: 0 15px 0 15px;
	}
	#benefits .contents div.benefits_wrap div.col h3 {
		font-size: 28px;
		margin-bottom: 10px;
	}
	#benefits .contents div.benefits_wrap div.col p.img_block {
		margin: 25px auto 0px;
	}
	#benefits .contents div.benefits_wrap div.col p.title {
		font-size: 20px;
	}
	#benefits .contents div.benefits_wrap div.col p.detail {
		font-size: 16px;
	}
	#benefits .contents .button {
		font-size: 30px;
		padding: 35px 10px;
		margin: 20px auto 60px;
		width: 700px;
	}
}

/*** communication ***/
#communication {
	padding: 2.5em 0 3em;
	}
#communication {
	min-width: 100%;
	overflow: hidden;
	}
	#communication .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#communication .contents h3 {
		font-size:15px;
		line-height:1.4;
		font-weight:500;
		color: #0F2D46;
		margin: 0 auto 15px;
		display: inline-block;
	}
	#communication .contents h3 {
		display: inline-block;
		position: relative;
	}
	#communication .contents h3:before {
		content: "";
		position: absolute;
		display: inline-block;
		background-image: url(../images/img_titledeco.png);
		background-size: contain;
		background-repeat: no-repeat;
		top: -1px;
		left: -25px;
		width: 36px;
		height: 50px;
	}
	#communication .contents h3:after {
		content: "";
		position: absolute;
		display: inline-block;
		background-image: url(../images/img_titledeco.png);
		background-size: contain;
		background-repeat: no-repeat;
		transform: scale(-1, 1);
		top: -1px;
		right: -25px;
		width: 36px;
		height: 50px;
	}
	#communication .contents p.img {
		margin: 35px auto 0;
	}
	#communication .contents p.img img {
		width: 90%;
		height: auto;
	}
	#communication .contents .button {
		display: inline-block;
		color: #CC0A78;
		font-size: 18px;
		line-height:1;
		font-weight:600;
		background-color: #fff;
		border: solid 2px #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 18px 10px;
		margin: 30px auto 10px;
		width: 75%;
	}
	#communication .contents .button:hover {
		background-color: #FFF6FB;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#communication {
	padding: 3.5em 0 4em;
	}
	#communication .contents h3 {
		font-size:18px;
		line-height:1.4;
		margin: 0 auto 15px;
	}
	#communication .contents h3:before {
		top: -3px;
		left: -30px;
		width: 36px;
		height: 30px;
	}
	#communication .contents h3:after {
		top: -3px;
		right: -30px;
		width: 36px;
		height: 30px;
	}
	#communication .contents .button {
		font-size: 24px;
		padding: 28px 10px;
		margin: 50px auto 10px;
		width: 75%;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#communication {
	padding: 5em 0 5em;
	}
#communication {
	min-width: 1070px;
	overflow: hidden;
	}
	#communication .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#communication .contents h3 {
		font-size:22px;
		line-height:1.4;
		margin: 0 auto 15px;
	}
	#communication .contents h3:before {
		top: -3px;
		left: -35px;
		width: 36px;
		height: 40px;
	}
	#communication .contents h3:after {
		top: -3px;
		right: -35px;
		width: 36px;
		height: 40px;
	}
	#communication .contents p.img img {
		width: 826px;
		height: 318px;
	}
	#communication .contents .button {
		font-size: 30px;
		padding: 35px 10px;
		margin: 55px auto 10px;
		width: 700px;
	}
}

/*** casestudies_list ***/
#casestudies_list {
	padding: 2.5em 0 2em;
	}
#casestudies_list {
	min-width: 100%;
	overflow: hidden;
	background-color: #fff;
	background: repeating-linear-gradient(#D8EFFF, #D8EFFF 1px, #fff 1px, #fff 3px);
	}
	#casestudies_list .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#casestudies_list .contents h2.firstitem {
		margin-top: 40px;
	}
	#casestudies_list .contents p.subtitle {
		margin: 0 auto 20px;
	}
	#casestudies_list .contents p.subtitle img {
		width: 45%;
		height: auto;
	}
	#casestudies_list .contents div.casestudies_wrap {
		display: flex;
		flex-direction: column;
		margin: 30px 40px 0;
	}
	#casestudies_list .contents div.casestudies_wrap div.col {
		margin-bottom: 0;
		background-color: #fff;
		border-radius: 3px;
		box-shadow: 0 0 7px rgba(0,0,0,0.1);
		padding: 0 0 30px 0;
		margin: 0 auto 20px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.img_block {
		margin: 0 auto 0;
		position: relative;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.img_block img {
		width: 100%;
		height: auto;
		border-radius: 3px 3px 0 0;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.img_block div.logo_block {
		background-color: #fff;
		width: 140px;
		height: 52px;
		padding: 8px 10px 3px;
		position: absolute;
		left: 20px;
		bottom: -40px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.img_block div.logo_block img {
		width: 80%;
		height: auto;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text {
		text-align: left;
		padding: 45px 20px 10px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text p.companyname {
		font-size: 16px;
		line-height:1.4;
		font-weight:600;
		margin-bottom: 10px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text p.detail {
		font-size: 14px;
		line-height:1.6;
		text-align: left;
		margin-bottom: 20px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text p.category {
		font-size: 12px;
		line-height:1.6;
		text-align: left;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text p.category span {
		font-weight:600;
		background-color: #eee;
		border: solid 2px #eee;
		padding: 0 10px 2px;
		border-radius: 18px;
	}
	#casestudies_list .contents .button {
		display: inline-block;
		color: #CC0A78;
		font-size: 18px;
		line-height:1.4;
		font-weight:600;
		background-color: #fff;
		border: solid 2px #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 18px 10px;
		margin: 20px auto 30px;
		width: 75%;
	}
	#casestudies_list .contents .button:hover {
		background-color: #FFF6FB;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#casestudies_list {
	padding: 3.5em 0 3.0em;
	}
	#casestudies_list .contents h2.firstitem {
		margin-top: 50px;
	}
	#casestudies_list .contents p.subtitle img {
		width: 30%;
	}
	#casestudies_list .contents div.casestudies_wrap {
		display: flex;
		flex-direction:row;
		justify-content:center;
		flex-wrap: wrap;
		margin: 50px auto 5px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col {
		display: flex;
		flex-direction:column;
		width: calc(48% - 15px);
		margin: 0 15px 30px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.img_block {
		margin: 0 auto 0;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text p.companyname {
		font-size: 17px;
		margin-bottom: 15px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text p.detail {
		font-size: 16px;
		margin-bottom: 20px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text p.category span {
		border: solid 3px #eee;
	}
	#casestudies_list .contents .button {
		font-size: 24px;
		padding: 28px 10px;
		margin: 40px auto 60px;
		width: 75%;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#casestudies_list {
	padding: 5em 0 4em;
	}
#casestudies_list {
	min-width: 1070px;
	overflow: hidden;
	}
	#casestudies_list .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#casestudies_list .contents h2.firstitem {
		margin-top: 50px;
	}
	#casestudies_list .contents p.subtitle img {
		width: 266px;
	}
	#casestudies_list .contents div.casestudies_wrap {
		display: flex;
		flex-direction:row;
		justify-content:center;
		flex-wrap: wrap;
		margin: 60px auto 40px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col {
		display: flex;
		flex-direction:column;
		width: calc(346px - 10px);
		margin: 0 10px 30px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.img_block {
		margin: 0 auto 0;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text p.companyname {
		font-size: 16px;
		margin-bottom: 20px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text p.detail {
		font-size: 15px;
	}
	#casestudies_list .contents div.casestudies_wrap div.col div.text p.category span {
		border: solid 4px #eee;
	}
	#casestudies_list .contents .button {
		font-size: 30px;
		padding: 35px 10px;
		margin: 20px auto 60px;
		width: 700px;
	}
}


/*** casestudies ***/
#casestudies {
	padding: 2.5em 0 2em;
	}
#casestudies {
	min-width: 100%;
	overflow: hidden;
	background: #fff;
	}
	#casestudies .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#casestudies .contents ul.breadcrumbs {
		margin-top: 30px;
		text-align: left;
	}
	#casestudies .contents ul.breadcrumbs li {
		display: inline-block; 
		padding: 0 3px;
		font-size: 12px;
		line-height: 1.6;
	}
	#casestudies .contents ul.breadcrumbs li a {
		color: #1a1a1a;
	}
	#casestudies .contents ul.breadcrumbs li a:hover {
		text-decoration: underline;
	}
	#casestudies .contents h1 {
		color: #0F2D46;
		font-size: 15px;
		line-height: 1.4;
		font-weight: 600;
		text-align: left;
		padding: 10px 3px 10px;
	}
	#casestudies .contents h2 {
		color: #0F2D46;
		font-size: 20px;
		line-height: 1.4;
		font-weight: 600;
		text-align: left;
	}
	#casestudies .contents h3 {
		color: #0F2D46;
		font-size: 18px;
		line-height: 1.4;
		font-weight: 600;
		text-align: left;
		margin: 35px 10px 30px;
	}
	#casestudies .contents p.category {
		font-size: 12px;
		line-height: 1.6;
		text-align: left;
		margin: 15px 0 20px;
	}
	#casestudies .contents p.category span {
		font-weight:600;
		background-color: #eee;
		border: solid 2px #eee;
		padding: 0 10px 2px;
		border-radius: 18px;
	}
	#casestudies .contents p.main {
		text-align: center;
		margin: 25px 0 0;
	}
	#casestudies .contents p.main img {
		width: 100%;
		height: auto;
	}
	#casestudies .contents p.employee {
		font-size: 12px;
		line-height: 1.6;
		text-align: left;
		margin: 5px 0 20px;
	}
	#casestudies div.contents div.logo_block {
		width: 100%;
		display: flex;
		flex-direction: column;
	}
	#casestudies div.contents div.logo_block .logo {
		text-align: center;
		border: solid 1px #DFDFDF;
		margin: 10px auto;
		padding: 10px 10px;
		width: 55%;
	}
	#casestudies div.contents div.logo_block .logo img {
		width: 70%;
		height: auto;
	}
	#casestudies .contents div.logo_block .text p {
		font-size: 13px;
		line-height: 1.6;
		text-align: left;
		margin: 20px auto 30px;
		width: 90%;
	}
	#casestudies .contents p.text_q {
		color: #297AB9;
		font-size: 14px;
		line-height: 1.6;
		font-weight: 600;
		text-align: left;
		margin: 25px 10px 25px;
	}
	#casestudies .contents p.text_a {
		font-size: 14px;
		line-height: 1.8;
		text-align: left;
		margin: 15px 10px 20px;
	}
	#casestudies .contents p.text_a span {
		font-weight: 600;
		padding-right: 15px;
	}
	#casestudies .contents p.image_cut {
		text-align: center;
		margin: 25px 0 30px;
	}
	#casestudies .contents p.image_cut img {
		width: 100%;
		height: auto;
	}
	#casestudies .contents p.release_date {
		font-size: 12px;
		line-height: 1.6;
		text-align: left;
		margin: 20px 10px 20px;
	}
	#casestudies .contents p.goto_list {
		font-size: 15px;
		line-height: 1.6;
		font-weight: 600;
		text-align: center;
		margin: 50px auto 20px;
	}

	#casestudies .contents_out {
		width: 100%;
		overflow: hidden;
		background-color: #fff;
		background: repeating-linear-gradient(#D8EFFF, #D8EFFF 1px, #fff 1px, #fff 3px);
		margin: 0 auto;
		padding: 2em 2em 1em;
	}
	#casestudies .contents_out div.type01 {
		background-color: #1E4564;
		padding: 5px;
		text-align: center;
		width: 120px;
	}
	#casestudies .contents_out div.type02 {
		background-color: #CC0A78;
		padding: 5px;
		text-align: center;
		width: 120px;
	}
	#casestudies .contents_out div.type01 p,
	#casestudies .contents_out div.type02 p {
		font-size: 15px;
		line-height: 1.6;
		font-weight: 600;
		color: #fff;
	}
	#casestudies .contents_out ul.purpose {
		margin: 10px 30px 20px 20px;
		width: 80%;
	}
	#casestudies .contents_out ul.purpose li {
		font-size: 14px;
		line-height: 1.6;
		font-weight: 500;
		text-align: left;
		list-style: disc;
		margin-bottom: 3px;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#casestudies {
	padding: 3.5em 0 2.5em;
	}
	#casestudies .contents h1 {
		font-size: 16px;
		padding: 12px 3px 12px;
	}
	#casestudies .contents h2 {
		font-size: 30px;
		display: block;
		text-align: left;
	}
	#casestudies .contents h3 {
		font-size: 26px;
		margin: 50px 10px 30px;
	}
	#casestudies .contents p.category span {
		border: solid 3px #eee;
	}
	#casestudies div.contents div.logo_block {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		margin: 35px 0 40px;
	}
	#casestudies div.contents div.logo_block .logo {
		width: 30%;
		border: solid 1px #DFDFDF;
		margin: 0;
		padding: 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#casestudies div.contents div.logo_block .logo img {
		width: 60%;
		height: auto;
	}
	#casestudies .contents div.logo_block .text {
		width: 68%;
		margin: 0 auto;
	}
	#casestudies .contents div.logo_block .text p {
		font-size: 14px;
		line-height: 1.8;
		text-align: left;
		margin: 0 auto;
		width: 96%;
	}
	#casestudies .contents p.text_q {
		font-size: 15px;
		line-height: 1.8;
		margin: 35px 10px 35px;
	}
	#casestudies .contents p.text_a {
		font-size: 15px;
		line-height: 2.0;
		margin: 25px 10px 30px;
	}
	#casestudies .contents p.image_cut {
		margin: 30px 0 35px;
	}
	#casestudies .contents p.release_date {
		font-size: 13px;
		margin: 30px 10px 40px;
	}
	#casestudies .contents p.goto_list {
		font-size: 18px;
		margin: 60px auto 30px;
	}
	#casestudies .contents_out {
		padding: 3em 3em 2em;
	}
	#casestudies .contents_out div.type01 {
		width: 130px;
	}
	#casestudies .contents_out div.type02 {
		width: 130px;
	}
	#casestudies .contents_out div.type01 p,
	#casestudies .contents_out div.type02 p {
		font-size: 16px;
	}
	#casestudies .contents_out ul.purpose {
		margin: 15px 30px 25px 20px;
	}
	#casestudies .contents_out ul.purpose li {
		font-size: 15px;
		margin-bottom: 5px;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#casestudies {
	padding: 5em 0 4em;
	}
#casestudies {
	min-width: 1070px;
	overflow: hidden;
	}
	#casestudies .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#casestudies .in {
		width: 800px;
	}
	#casestudies .contents h1 {
		font-size: 20px;
		padding: 15px 3px 15px;
	}
	#casestudies .contents h2 {
		font-size: 38px;
		display: block;
		text-align: left;
	}
	#casestudies .contents h3 {
		font-size: 30px;
		margin: 60px 10px 50px;
	}
	#casestudies .contents p.category {
		margin: 20px 0 20px;
	}
	#casestudies .contents p.category span {
		border: solid 4px #eee;
	}
	#casestudies .contents p.employee {
		font-size: 13px;
		margin: 7px 0 20px;
	}
	#casestudies div.contents div.logo_block {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		margin: 50px 0 55px;
	}
	#casestudies div.contents div.logo_block .logo {
		width: 27%;
		border: solid 1px #DFDFDF;
		margin: 0;
		padding: 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#casestudies div.contents div.logo_block .logo img {
		width: 67%;
		height: auto;
	}
	#casestudies .contents div.logo_block .text {
		width: 72%;
		margin: 0 auto;
	}
	#casestudies .contents div.logo_block .text p {
		font-size: 15px;
		line-height: 1.8;
		text-align: left;
		margin: 0 auto;
		width: 96%;
		padding-left: 23px;
	}
	#casestudies .contents p.text_q {
		font-size: 17px;
		margin: 45px 10px 35px;
	}
	#casestudies .contents p.text_a {
		font-size: 16px;
	}
	#casestudies .contents p.image_cut {
		margin: 50px 0 35px;
	}
	#casestudies .contents p.release_date {
		font-size: 14px;
		margin: 40px 10px 40px;
	}
	#casestudies .contents p.goto_list {
		font-size: 19px;
		margin: 60px auto 20px;
	}
	#casestudies .contents_out {
		padding: 3em 3em 2em;
	}
	#casestudies .contents_out div.type01 {
		padding: 7px;
		width: 130px;
	}
	#casestudies .contents_out div.type02 {
		padding: 7px;
	}
	#casestudies .contents_out div.type01 p,
	#casestudies .contents_out div.type02 p {
		font-size: 17px;
	}
	#casestudies .contents_out ul.purpose {
		margin: 20px 30px 25px 20px;
	}
	#casestudies .contents_out ul.purpose li {
		font-size: 16px;
		margin-bottom: 7px;
	}
}


/*** features ***/
#features {
	padding: 2.5em 0 2.5em;
	}
#features {
	min-width: 100%;
	overflow: hidden;
	background: #03090E url(../images/bg01.png) repeat-x;
	background-position: center top;
	}
	#features .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#features .contents p.subtitle {
		margin: 0 auto 30px;
	}
	#features .contents p.subtitle img {
		width: 30%;
		height: auto;
	}
	#features .contents div.box {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
	}
	#features .contents div.box .col {
		width: 80%;
		margin: 10px auto 30px;
	}
	#features .contents div.box h3 {
		font-size: 18px;
		line-height:1.4;
		font-weight:600;
		color: #fff;
		margin-top: 15px;
	}
	#features .contents div.box h3 span {
		font-size: 160%;
		color: #fff;
	}
	#features .contents div.box p img {
		width: 40%;
		height: auto;
	}
	#features .contents div.VolumeDiscounts {
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
		padding: 15px 0 15px;
		margin: auto;
		width: 90%;
	}
	#features .contents div.VolumeDiscounts p img {
		padding-bottom: 15px;
		width: 55%;
		height: auto;
	}
	#features .contents div.VolumeDiscounts ul {
		font-size: 13px;
		line-height: 1.6;
		font-weight:500;
		margin: auto;
		text-align: left;
	}
	#features .contents div.VolumeDiscounts li + li {
		margin-top: 5px;
	}
	#features .contents div.VolumeDiscounts li {
		position: relative;
		padding-left: 15px;
		color: #fff;
	}
	#features .contents div.VolumeDiscounts li:after {
		content: "";
		position: absolute;
		top: .6em;
		left: 1px;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
		width: 4px;
		height: 4px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
	}
	#features .contents div.VolumeDiscounts ul a {
	  color: #fff;
	  text-decoration: underline;
	}
	#features .contents .button {
		display: inline-block;
		color: #fff;
		font-size: 18px;
		line-height:1;
		font-weight:600;
		background-color: #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 18px 10px;
		margin: 40px auto 20px;
		width: 75%;
	}
	#features .contents .button:hover {
		background-color: #EE2D9A;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#features {
	padding: 3.5em 0 4em;
	}
	#features .contents p.subtitle img {
		width: 18%;
	}
	#features .contents div.box .col {
		width: 50%;
		margin: 10px auto 30px;
	}
	#features .contents div.box h3 {
		font-size: 20px;
	}
	#features .contents div.box p img {
		width: 50%;
	}
	#features .contents div.VolumeDiscounts {
		padding: 25px 0 20px;
		width: 70%;
	}
	#features .contents div.VolumeDiscounts p img {
		padding-bottom: 20px;
		width: 40%;
	}
	#features .contents div.VolumeDiscounts ul {
		font-size: 15px;
	}
	#features .contents div.VolumeDiscounts li {
		padding-left: 19px;
	}
	#features .contents div.VolumeDiscounts li:after {
		top: .4em;
		width: 7px;
		height: 7px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}
	#features .contents .button {
		font-size: 24px;
		padding: 28px 10px;
		margin: 55px auto 20px;
		width: 75%;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#features {
	padding: 5em 0 5em;
	}
#features {
	min-width: 1070px;
	overflow: hidden;
	}
	#features .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#features .contents p.subtitle img {
		width: 176px;
	}
	#features .contents div.box {
		margin-top: 40px;
	}
	#features .contents div.box .col {
		width: 33%;
		margin: 10px auto 30px;
	}
	#features .contents div.box .col04 {
		margin-right: -160px;
	}
	#features .contents div.box h3 {
		font-size: 22px;
	}
	#features .contents div.box p img {
		width: 65%;
	}
	#features .contents div.VolumeDiscounts {
		padding: 25px 0 20px;
		width: 75%;
	}
	#features .contents div.VolumeDiscounts p img {
		padding-bottom: 20px;
		width: 220px;
	}
	#features .contents div.VolumeDiscounts ul {
		font-size: 16px;
	}
	#features .contents div.VolumeDiscounts li {
		padding-left: 22px;
	}
	#features .contents div.VolumeDiscounts li:after {
		top: .5em;
		width: 7px;
		height: 7px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}
	#features .contents .button {
		font-size: 30px;
		padding: 35px 10px;
		margin: 70px auto 20px;
		width: 700px;
	}
}

/*** options ***/
#options {
	padding: 2.5em 0 2em;
	}
#options {
	min-width: 100%;
	overflow: hidden;
	background: #F5FBFF;
	}
	#options .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#options .contents p.subtitle {
		margin: 0 auto 30px;
	}
	#options .contents p.subtitle img {
		width: 30%;
		height: auto;
	}
	#options .contents div.options_wrap {
		margin: 30px 20px 0;
		flex-direction: column;
	}
	#options .contents div.options_wrap div.col {
		flex: 1;
		margin-bottom: 0;
		background-color: #fff;
		border-radius: 3px;
		box-shadow: 0 0px 7px rgba(0,0,0,0.1);
		padding: 30px 25px 30px;
		margin: 0 auto 20px;
	}
	#options .contents div.options_wrap div.col h3 {
		color: #0F2D46;
		font-size: 18px;
		line-height: 1.4;
		font-weight: 600;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 30px;
	}
	#options .contents div.options_wrap div.col h3:before, 
	#options .contents div.options_wrap div.col h3:after {
		content: '';
		border-top: 1px solid;
		width: 2em;
		background-color: #0F2D46;
	}
	#options .contents div.options_wrap div.col h3:before {
		margin-right: 0.5em;
	}
	#options .contents div.options_wrap div.col h3:after {
		margin-left: 0.5em;
	}
	#options .contents div.options_wrap div.col p.img {
		margin: 40px auto 0px;
	}
	#options .contents div.options_wrap div.col p.img img {
		width: 70%;
		height: auto;
	}
	#options .contents div.options_wrap div.col p.text {
		font-size:14px;
		line-height:1.6;
		font-weight:400;
		text-align: left;
		margin: 10px auto 0;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#options {
	padding: 3.5em 0 4em;
	}
	#options .contents p.subtitle img {
		width: 19%;
	}
	#options .contents div.options_wrap {
		margin: 50px auto 0;
		width: 75%;
	}
	#options .contents div.options_wrap div.col {
		padding: 40px 40px 40px;
		margin: 0 auto 20px;
	}
	#options .contents div.options_wrap div.col h3 {
		font-size: 22px;
		margin-bottom: 35px;
	}
	#options .contents div.options_wrap div.col p.img {
		margin: 50px auto 0px;
	}
	#options .contents div.options_wrap div.col p.img img {
		width: 55%;
	}
	#options .contents div.options_wrap div.col p.text {
		font-size:16px;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#options {
	padding: 5em 0 4em;
	}
#options {
	min-width: 1070px;
	overflow: hidden;
	}
	#options .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#options .contents p.subtitle img {
		width: 152px;
	}
	#options .contents div.options_wrap {
		display: flex;
		flex-direction:row;
		margin: 60px auto 20px;
	}
	#options .contents div.options_wrap div.col {
		display: flex;
		flex-direction:column;
		padding: 40px 45px 40px;
		margin: 0 15px 0 10px;
	}
	#options .contents div.options_wrap div.col div.text {
		flex-grow: 1; 
	}
	#options .contents div.options_wrap div.col h3 {
		font-size: 28px;
		margin-bottom: 40px;
	}
	#options .contents div.options_wrap div.col p.img img {
		width: 70%;
	}
	#options .contents div.options_wrap div.col p.text {
		font-size:17px;
		line-height:1.6;
		font-weight:400;
		text-align: left;
		margin: 0 auto 10px;
	}
}

/*** Plans ***/
#Plans {
	padding: 2.5em 0 2.5em;
	}
#Plans {
	min-width: 100%;
	overflow: hidden;
	background: #E6E3D8;
	}
	#Plans .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#Plans .contents p.subtitle {
		margin: 0 auto 30px;
	}
	#Plans .contents p.subtitle img {
		width: 22%;
		height: auto;
	}
	#Plans .contents p.campaign {
		margin: 0 auto 5px;
	}
	#Plans .contents p.campaign img {
		width: 90%;
		height: auto;
	}
	#Plans .contents div.Plans_wrap {
		margin: 25px 20px 10px;
		padding: 0 0 20px;
		background: #fff;
		border-radius: 3px;
	}
	#Plans .contents div.Plans_wrap div.Plans_col {
		flex-direction: column;
	}
	#Plans .contents div.Plans_wrap div.Plans_col div {
		flex: 1;
		margin-bottom: 0;
	}
	#Plans .contents div.Plans_wrap div.Plans_col h3 {
		text-align: center;
		font-size:18px;
		line-height:1.6;
		font-weight:600;
		color: #fff;
		border-radius: 3px 3px 0 0;
		padding: 10px 0;
		margin-bottom: 20px;
	}
	#Plans .contents div.Plans_wrap div.Plans_col h3 span {
		font-size:150%;
		color: #fff;
	}
	#Plans .contents div.Plans_wrap div.Plans_col h3.type01 {
		background: #CC0A78;
	}
	#Plans .contents div.Plans_wrap div.Plans_col h3.type02 {
		background: #695E2D;
	}
	#Plans .contents div.Plans_wrap div.Plans_col h3.type03 {
		background: #1E4564;
		font-size:95%;
	}
	#Plans .contents div.Plans_wrap div.Plans_col p.text {
		font-size:15px;
		line-height:1.6;
		font-weight:600;
		text-align: center;
		margin: 20px auto 15px;
	}
	#Plans .contents div.Plans_wrap div.Plans_col p.text span.period {
		font-size:16px;
		line-height:1.6;
		font-weight:600;
		color: #fff;
		background: #C85F9B;
		padding: 2px 5px;
	}
	#Plans .contents div.Plans_wrap div.Plans_col p.text span.price {
		font-size:150%;
	}
	#Plans .contents div.Plans_wrap div.Plans_col p.text span.tax {
		font-size:70%;
		font-weight:400;
	}
	#Plans .contents p.detail {
		font-size: 15px;
		line-height:1.6;
		text-align: left;
		width: 85%;
		margin: 0 auto 15px;
	}
	#Plans .contents p.memo {
		font-size: 13px;
		line-height:1.4;
		font-weight:600;
		text-align: left;
		width: 88%;
		margin: 0 auto 10px;
	}
	#Plans .contents p.memo span.emphasis01 {
		font-size: 110%;
	}
	#Plans .contents p.memo span.emphasis02 {
		text-decoration: underline;
	}
	#Plans .contents p.memo02 {
		font-size: 13px;
		line-height:1.4;
		text-align: left;
		width: 85%;
		margin: 0 auto 15px;
	}
		.memo03 {
		line-height: 1.4em;
		font-size: 13px;
		color: #fff;
		text-align: left;
	}
	#Plans .contents a.textlink {
	  text-decoration: underline;
	}
	#Plans .contents .button01 {
		display: inline-block;
		color: #fff;
		font-size: 18px;
		line-height:1;
		font-weight:500;
		background-color: #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 18px 10px;
		margin: 20px auto 10px;
		width: 60%;
	}
	#Plans .contents .button01:hover {
		background-color: #EE2D9A;
	}
	#Plans .contents .button02 {
		display: inline-block;
		color: #fff;
		font-size: 18px;
		line-height:1;
		font-weight:500;
		background-color: #695E2D;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 18px 10px;
		margin: 20px auto 10px;
		width: 60%;
	}
	#Plans .contents .button02:hover {
		background-color: #847947;
	}
	#Plans .contents .button03 {
		display: inline-block;
		color: #fff;
		font-size: 18px;
		line-height:1;
		font-weight:500;
		background-color: #1E4564;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 18px 10px;
		margin: 20px auto 10px;
		width: 60%;
	}
	#Plans .contents .button03:hover {
		background-color: #386588;
	}
	#Plans .contents div.howto_wrap {
		margin: 35px 20px 10px;
		padding: 20px 22px;
		background: #958D6D;
		border-radius: 3px;
	}
	#Plans .contents div.howto_wrap h4 {
		font-size:18px;
		line-height:1.6;
		font-weight:600;
		color: #fff;
		text-align: center;
		margin-bottom: 15px;
	}
	#Plans .contents div.howto_wrap div.col-1 {
		flex-direction: column;
		border: 1px #fff solid;
		padding: 25px 20px;
	}
	#Plans .contents div.howto_wrap div.col-1 p.item_01 {
		font-size:16px;
		line-height:1.6;
		font-weight:600;
		color: #fff;
		margin-bottom: 15px;
	}
	#Plans .contents div.howto_wrap div.col-1 p.item_01 img {
		width: 90%;
	}
	#Plans .contents div.howto_wrap div.col-1 ul {
		text-align: left;
		margin: 40px 0 0 15px;
		list-style-type: disc
	}
	#Plans .contents div.howto_wrap div.col-1 ul li {
		font-size:15px;
		line-height:1.4;
		font-weight:400;
		color: #fff;
		padding-bottom: 5px;
	}

	#Plans .contents div.howto_wrap div.col-1 a {
		color: #fff;
		text-decoration: underline;
	}

	#Plans .contents div.howto_wrap div.col-1 a:hover {
		color: #fff;
		text-decoration: underline;
	}
	
/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#Plans {
	padding: 2.5em 0 3em;
	}
	#Plans .contents p.subtitle img {
		width: 12%;
	}
	#Plans .contents p.campaign {
		margin: 0 auto 10px;
	}
	#Plans .contents p.campaign img {
		width: 95%;
		height: auto;
	}
	#Plans .contents div.Plans_wrap {
		margin: 35px 60px 5px;
		padding: 0 0 30px;
	}
	#Plans .contents div.Plans_wrap div.Plans_col h3 {
		font-size:22px;
		margin-bottom: 40px;
	}
	#Plans .contents div.Plans_wrap div.Plans_col h3 span {
		font-size:150%;
		color: #fff;
	}
	#Plans .contents div.Plans_wrap div.Plans_col h3 br {
		display:none;
	}
	#Plans .contents div.Plans_wrap div.Plans_col p.text {
		font-size:20px;
		margin: 25px auto 15px;
	}
	#Plans .contents div.Plans_wrap div.Plans_col p.text span.period {
		font-size:20px;
		padding: 2px 10px;
	}
	#Plans .contents p.detail {
		font-size: 18px;
		line-height:1.8;
		width: 85%;
		margin-bottom: 10px;
	}
	#Plans .contents p.memo {
		font-size: 15px;
		text-align: left;
		width: 85%;
		margin: 10px auto 10px;
	}
	#Plans .contents p.memo02 {
		font-size: 15px;
		text-align: left;
		width: 85%;
		margin: 0px auto 20px;
	}
		.memo03 {
		font-size: 15px;
		color: #fff;
		text-align: left;
	}
	#Plans .contents .button01,
	#Plans .contents .button02,
	#Plans .contents .button03 {
		font-size: 22px;
		padding: 22px 10px;
		margin: 20px auto 10px;
		width: 60%;
	}
	#Plans .contents div.howto_wrap {
		margin: 40px 60px 10px;
		padding: 30px 35px;
	}
	#Plans .contents div.howto_wrap h4 {
		font-size:22px;
		margin-bottom: 20px;
	}
	#Plans .contents div.howto_wrap div.col-1 {
		padding: 35px 30px;
	}
	#Plans .contents div.howto_wrap div.col-1 p.item_01 {
		font-size:17px;
		margin-bottom: 12px;
		text-align: left;
	}
	#Plans .contents div.howto_wrap div.col-1 p.item_01 img {
		width: 150px;
		padding-right: 8px;
		vertical-align: middle;
	}
	#Plans .contents div.howto_wrap div.col-1 ul {
		margin: 35px 0 0 20px;
	}
	#Plans .contents div.howto_wrap div.col-1 ul li {
		font-size:17px;
		line-height:1.6;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#Plans {
	padding: 4em 0 4em;
	}
#Plans {
	min-width: 1070px;
	overflow: hidden;
	}
	#Plans .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#Plans .contents p.subtitle img {
		width: 104px;
	}
	#Plans .contents p.campaign {
		margin: 0 auto 25px;
	}
	#Plans .contents p.campaign img {
		width: 860px;
		height: 140px;
	}
	#Plans .contents div.Plans_wrap {
		margin: 25px 0px 5px;
		padding: 0;
	}
	#Plans .contents div.Plans_wrap div.Plans_col {
		display: -webkit-flex;
		display: flex;
		flex-direction: row;
		align-items: center
	}
	#Plans .contents div.Plans_wrap div.Plans_col div {
		flex: 1;
	}
	#Plans .contents div.Plans_wrap div.Plans_col div.col-1 {
		flex-basis: 230px;
		border-radius: 3px 0 0 3px;
	}
	#Plans .contents div.Plans_wrap div.Plans_col div.type01 {
		background: #CC0A78;
		padding: 40px 0;
	}
	#Plans .contents div.Plans_wrap div.Plans_col div.type02 {
		background: #695E2D;
		padding: 40px 0;
	}
	#Plans .contents div.Plans_wrap div.Plans_col div.type03 {
		background: #1E4564;
		padding: 90px 0;
	}

	#Plans .contents div.Plans_wrap div.Plans_col div.col-2 {
		flex-basis: 525px;
		padding: 0;
	}
	#Plans .contents div.Plans_wrap div.Plans_col div.col-3-1 {
		flex-basis: 315px;
		border-left: 1px #DBDBDB solid;
		padding: 30px 0;
	}
	#Plans .contents div.Plans_wrap div.Plans_col div.col-3-2 {
		flex-basis: 315px;
		border-left: 1px #DBDBDB solid;
		padding: 30px 0;
	}
	#Plans .contents div.Plans_wrap div.Plans_col div.col-3-3 {
		flex-basis: 315px;
		border-left: 1px #DBDBDB solid;
		padding: 60px 0;
	}

	#Plans .contents div.Plans_wrap div.Plans_col h3 {
		text-align: center;
		font-size:20px;
		line-height:1.4;
		margin-bottom: 0px;
	}
	#Plans .contents div.Plans_wrap div.Plans_col p.text {
		font-size:20px;
		padding: 20px 0 15px 25px;
		margin: 0;
		text-align: left;
	}
	#Plans .contents div.Plans_wrap div.Plans_col p.text:first-child {
		border-bottom: 1px #DBDBDB solid;
	}
	#Plans .contents div.Plans_wrap div.Plans_col p.text span.period {
		font-size:20px;
		padding: 2px 10px;
	}
	#Plans .contents p.detail {
		font-size: 16px;
		padding-left: 20px;
		margin: 0;
		width: 100%;
	}
	#Plans .contents p.memo {
		font-size: 15px;
		text-align: left;
		width: 100%;
		margin: 8px 0 0;
		padding: 0;
	}
	#Plans .contents p.memo02 {
		font-size: 15px;
		text-align: left;
		width: 100%;
		margin: 10px 0 20px 20px;
		padding: 0;
	}
		.memo03 {
		font-size: 15px;
		color: #fff;
		text-align: left;
	}
	#Plans .contents .button01,
	#Plans .contents .button02,
	#Plans .contents .button03 {
		font-size: 23px;
		padding: 22px 10px;
		width: 80%;
	}
	#Plans .contents div.howto_wrap {
		margin: 60px auto 10px;
		padding: 30px 45px 45px;
	}
	#Plans .contents div.howto_wrap h4 {
		font-size:28px;
	}
	#Plans .contents div.howto_wrap div.col-1 {
		padding: 35px 40px;
	}
	#Plans .contents div.howto_wrap div.col-1 p.item_01 {
		font-size:20px;
		margin-bottom: 10px;
		text-align: left;
	}
	#Plans .contents div.howto_wrap div.col-1 p.item_01 img {
		width: 160px;
		padding-right: 15px;
		vertical-align: middle;
	}
	#Plans .contents div.howto_wrap div.col-1 ul {
		margin: 35px 0 0 25px;
	}
	#Plans .contents div.howto_wrap div.col-1 ul li {
		font-size:18px;
		line-height:1.6;
	}
}

/*** steps ***/
#steps {
	padding: 2.5em 0 3em;
	}
#steps {
	min-width: 100%;
	overflow: hidden;
	background: #EEEEE7;
	}
	#steps .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#steps .contents p.subtitle {
		margin: 0 auto 30px;
	}
	#steps .contents p.subtitle img {
		width: 22%;
		height: auto;
	}
	#steps .contents p.item01 {
		font-size: 16px;
		line-height: 1.6;
		font-weight:600;
		margin: 0 auto 20px;
	}
	#steps .contents p.item01 span {
		font-size: 150%;
		color: #887601;
	}
	#steps .contents p.item02 {
		font-size: 14px;
		line-height: 1.6;
		font-weight:600;
		margin: 0 auto 40px;
	}
	#steps .contents div.box {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
	}
	#steps .contents div.box .col {
		width: 80%;
		margin: 10px auto 30px;
	}
	#steps .contents div.box h3 {
		font-size: 18px;
		line-height:1.4;
		font-weight:600;
		margin-top: 10px;
	}
	#steps .contents div.box p.step {
		position: relative;
	}
	#steps .contents div.box p img {
		width: 40%;
		height: auto;
	}
	#steps .contents div.box p.step:before {
		content: "";
		position: absolute;
		top: -25px;
		left: 43%;
		border: 18px solid transparent;
		border-top: 15px solid #7690A4;
	}
	#steps .contents .button {
		display: inline-block;
		color: #695E2D;
		font-size: 18px;
		line-height:1;
		font-weight:500;
		border: solid 2px #695E2D;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 18px 10px;
		margin: 20px auto 0;
		width: 60%;
	}
	#steps .contents .button:hover {
		background-color: #E6E3D8;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#steps {
	padding: 3.5em 0 4em;
	}
	#steps .contents p.subtitle img {
		width: 12%;
	}
	#steps .contents p.item01 {
		font-size: 18px;
		margin: 0 auto 25px;
	}
	#steps .contents p.item02 {
		font-size: 16px;
	}
	#steps .contents div.box .col {
		width: 80%;
		margin: 10px auto 40px;
	}
	#steps .contents div.box h3 {
		font-size: 20px;
	}
	#steps .contents div.box h3 br {
		display: none;
	}
	#steps .contents div.box p img {
		width: 35%;
	}
	#steps .contents div.box p.step:before {
		top: -30px;
		left: 47%;
	}
	#steps .contents .button {
		font-size: 22px;
		padding: 22px 10px;
		margin: 20px auto 0;
		width: 50%;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#steps {
	padding: 5em 0 5em;
	}
#steps {
	min-width: 1070px;
	overflow: hidden;
	}
	#steps .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#steps .contents p.subtitle img {
		width: 104px;
	}
	#steps .contents p.item01 {
		font-size: 24px;
		margin: 40px auto 15px;
	}
	#steps .contents p.item02 {
		font-size: 18px;
	}
	#steps .contents div.box {
		margin-top: 30px;
	}
	#steps .contents div.box .col {
		width: 20%;
		margin: 10px auto 30px;
	}
	#steps .contents div.box h3 {
		font-size: 22px;
	}
	#steps .contents div.box p img {
		width: 78%;
	}
	#steps .contents div.box p.step:before {
		content: "";
		position: absolute;
		top: 40%;
		left: -5px;
		border: 18px solid transparent;
		border-left: 15px solid #7690A4;
	}
	#steps .contents .button {
		font-size: 23px;
		padding: 22px 10px;
		margin: 40px auto 0;
		width: 320px;
	}
}

/*** exclusive ***/
#exclusive {
	padding: 2.5em 0 2em;
	}
#exclusive {
	min-width: 100%;
	overflow: hidden;
	background-color: #fff;
	background: repeating-linear-gradient(#dbdbc5, #dbdbc5 1px, #fff 1px, #fff 3px);
	}
	#exclusive .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#exclusive .contents h2.firstitem {
		margin-top: 40px;
	}
	#exclusive .contents p.subtitle {
		margin: 0 auto 20px;
	}
	#exclusive .contents p.subtitle img {
		width: 35%;
		height: auto;
	}
	#exclusive .contents div.exclusive_wrap {
		background-color: #fff;
		border-radius: 3px;
		box-shadow: 0 0px 7px rgba(0,0,0,0.1);
		padding: 30px 20px 10px;
		margin: 20px 15px 30px;
	}
	#exclusive .contents div.exclusive_wrap h3 {
		color: #fff;
		font-size: 13px;
		line-height: 1.4;
		font-weight: 600;
		background-color: #958D6D;
		border-radius: 20px;
		text-align: center;
		padding: 5px 10px;
		display: inline;
	}
	#exclusive .contents div.exclusive_wrap h4 {
		color: #0F2D46;
		font-size: 18px;
		line-height: 1.4;
		font-weight: 600;
		text-align: center;
		margin: 10px auto 25px;
	}
	#exclusive .contents div.exclusive_wrap h5 {
		color: #0F2D46;
		font-size: 18px;
		line-height: 1.4;
		font-weight: 600;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 50px auto 35px;
	}
	#exclusive .contents div.exclusive_wrap h5:before, 
	#exclusive .contents div.exclusive_wrap h5:after {
		content: '';
		border-top: 1px solid;
		width: 2em;
		background-color: #0F2D46;
	}
	#exclusive .contents div.exclusive_wrap h5:before {
		margin-right: 0.5em;
	}
	#exclusive .contents div.exclusive_wrap h5:after {
		margin-left: 0.5em;
	}
	#exclusive .contents div.exclusive_wrap p.pages {
		margin: 15px auto 25px;
	}
	#exclusive .contents div.exclusive_wrap p.pages img {
		width: 100%;
		height: auto;
	}
	#exclusive .contents div.exclusive_wrap p.lead {
		font-size: 14px;
		line-height:1.6;
		text-align: left;
		margin: 0 auto 25px;
	}
	#exclusive .contents div.exclusive_wrap .video {
		width: 100%;
		height: auto;
		margin: 0 auto 30px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 {
		flex-direction: column;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div {
		flex: 1;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div p.cover {
		margin: 0 auto 15px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div p.cover img {
		width: 50%;
		height: auto;
		border: 1px solid #E5E5E5;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div p.detail {
		font-size: 14px;
		line-height:1.6;
		text-align: left;
		margin: 0 auto 10px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 {
		flex-direction: column;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div {
		flex: 1;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.cover {
		margin: 0 auto 10px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.cover img {
		width: 50%;
		height: auto;
		border: 1px solid #E5E5E5;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.title {
		font-size: 16px;
		line-height:1.6;
		font-weight: 600;
		text-align: center;
		margin: 0 auto 5px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.detail {
		font-size: 14px;
		line-height:1.6;
		text-align: left;
		margin: 0 auto 30px;
		width: 80%;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#exclusive {
	padding: 3.5em 0 3.0em;
	}
	#exclusive .contents h2.firstitem {
		margin-top: 50px;
	}
	#exclusive .contents p.subtitle img {
		width: 25%;
	}
	#exclusive .contents div.exclusive_wrap {
		width: 75%;
		padding: 45px 50px 30px;
		margin: 40px auto 50px;
	}
	#exclusive .contents div.exclusive_wrap h3 {
		font-size: 15px;
	}
	#exclusive .contents div.exclusive_wrap h4 {
		font-size: 24px;
	}
	#exclusive .contents div.exclusive_wrap h5 {
		font-size: 24px;
		margin-bottom: 40px;
	}
	#exclusive .contents div.exclusive_wrap p.pages {
		margin: 25px auto 60px;
	}
	#exclusive .contents div.exclusive_wrap p.lead {
		font-size: 16px;
		margin: 30px auto 30px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div p.cover {
		margin: 10px auto 20px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div p.cover img {
		width: 40%;
		height: auto;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div p.detail {
		font-size: 16px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.cover {
		margin: 0 auto 15px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.cover img {
		width: 40%;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.title {
		font-size: 20px;
		margin: 0 auto 10px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.detail {
		font-size: 16px;
		margin: 0 auto 40px;
		width: 60%;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#exclusive {
	padding: 5em 0 4em;
	}
#exclusive {
	min-width: 1070px;
	overflow: hidden;
	}
	#exclusive .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#exclusive .contents h2.firstitem {
		margin-top: 50px;
	}
	#exclusive .contents p.subtitle img {
		width: 196px;
	}
	#exclusive .contents div.exclusive_wrap {
		width: 90%;
		padding: 50px 50px 60px;
		margin: 40px auto 50px;
	}
	#exclusive .contents div.exclusive_wrap h3 {
		font-size: 18px;
	}
	#exclusive .contents div.exclusive_wrap h4 {
		font-size: 28px;
		margin: 15px auto 25px;
	}
	#exclusive .contents div.exclusive_wrap h5 {
		font-size: 28px;
		margin: 50px auto 40px;
	}
	#exclusive .contents div.exclusive_wrap p.pages {
		width: 85%;
		margin: 25px auto 60px;
	}
	#exclusive .contents div.exclusive_wrap p.lead {
		font-size: 17px;
		line-height:1.8;
		width: 85%;
		margin: 40px auto 50px;
	}
	#exclusive .contents div.exclusive_wrap .video {
		width: 85%;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 {
		display: flex;
		flex-direction:row;
		width: 85%;
		margin: 50px auto 40px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div {
		margin: 0;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div.col-1 {
		flex-basis: 23%;
		order: 2;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div.col-2 {
		flex-basis: 77%;
		order: 1;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div p.cover {
		margin: 0;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div p.cover img {
		width: 100%;
		height: auto;
	}
	#exclusive .contents div.exclusive_wrap div.col_block01 div p.detail {
		font-size: 17px;
		line-height:1.8;
		margin-right: 50px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 {
		display: flex;
		flex-direction:row;
		width: 85%;
		margin: 50px auto 0;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.cover {
		margin: 0 auto 15px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.cover img {
		width: 58%;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.title {
		font-size: 18px;
		margin: 0 auto 10px;
	}
	#exclusive .contents div.exclusive_wrap div.col_block02 div p.detail {
		font-size: 16px;
		width: 80%;
	}
}

/*** faqArea ***/
#faqArea {
	padding: 2.5em 0 3em;
	}
#faqArea {
	min-width: 100%;
	overflow: hidden;
	background: #fff;
	}
	#faqArea .contents {
		width: 94%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#faqArea .contents p.subtitle {
		margin: 0 auto 30px;
	}
	#faqArea .contents p.subtitle img {
		width: 15%;
		height: auto;
	}
	#faqArea .faq {
		border-bottom: #e8e8e8 1px solid;
		margin-top: 30px;
	}
	#faqArea .faq dl dt {
		padding: 17px 35px 17px 35px;
		border-top: #e8e8e8 1px solid;
		font-size: 15px;
		line-height: 1.6;
		font-weight: 600;
		text-align: left;
		cursor: pointer;
		position: relative;
	}
	#faqArea .faq dl dt::before {
		content: "Q.";
		font-size: 17px;
		font-weight: 600;
		color: #dbc639;
		position: absolute;
		top: 14px;
		left: 2px;
	}
	#faqArea .faq dl dt::after {
		width: 20px;
		height: 20px;
		content: "";
		background: url("../images/ico_open.svg") no-repeat 0 center / 100% auto;
		transform: rotate(0);
		transition: all 0.5s;
		position: absolute;
		top: 18px;
		right: 3px;
	}
	#faqArea .faq dl dt.open::after {
		transform: rotate(180deg);
		transition: all 0.5s;
	}
	#faqArea .faq dl dd {
		display:none; /* 初期非表示 */
	}
	#faqArea .faq dl dd {
		padding:0 15px 5px 35px;
		font-size: 14px;
		line-height: 1.6;
		font-weight: 400;
		text-align: left;
		position: relative;
	}
	#faqArea .faq dl dd::before {
		content: "A.";
		font-size: 17px;
		font-weight: 600;
		color: #7690A4;
		position: absolute;
		top: -2px;
		left: 3px;
	}
	#faqArea .faq dl dd p {
		margin: 0 0 15px;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#faqArea {
	padding: 3.5em 0 4em;
	}
	#faqArea .contents p.subtitle img {
		width: 8%;
		height: auto;
	}
	#faqArea .faq {
		width: 90%;
		margin: 50px auto 0;
	}
	#faqArea .faq dl dt {
		padding: 25px 70px 25px 50px;
		font-size: 17px;
	}
	#faqArea .faq dl dt::before {
		font-size: 22px;
		top: 18px;
		left: 10px;
	}
	#faqArea .faq dl dt::after {
		width: 25px;
		height: 25px;
		top: 28px;
		right: 10px;
	}
	#faqArea .faq dl dd {
		padding: 0 20px 15px 50px;
		font-size: 16px;
	}
	#faqArea .faq dl dd::before {
		font-size: 22px;
		top: -7px;
		left: 11px;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#faqArea {
	padding: 5em 0 5em;
	}
#faqArea {
	min-width: 1070px;
	overflow: hidden;
	}
	#faqArea .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#faqArea .contents p.subtitle img {
		width: 58px;
	}
	#faqArea .faq {
		width: 90%;
		margin: 60px auto 0;
	}
	#faqArea .faq dl dt {
		padding: 25px 80px 25px 60px;
		font-size: 19px;
	}
	#faqArea .faq dl dt::before {
		font-size: 26px;
		top: 16px;
		left: 12px;
	}
	#faqArea .faq dl dt::after {
		width: 25px;
		height: 25px;
		top: 28px;
		right: 10px;
	}
	#faqArea .faq dl dd {
		padding: 0 20px 15px 60px;
		font-size: 17px;
	}
	#faqArea .faq dl dd::before {
		font-size: 26px;
		top: -7px;
		left: 14px;
	}
	#faqArea .faq a:hover{
	  text-decoration: underline;
	}
}

/*** consultation ***/
#consultation {
	padding: 2.5em 0 3em;
	}
#consultation {
	min-width: 100%;
	overflow: hidden;
	background: #EEEEE7;
	}
	#consultation .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#consultation .contents p.subtitle {
		margin: 0 auto 30px;
	}
	#consultation .contents p.subtitle img {
		width: 45%;
		height: auto;
	}
	#consultation .contents p.item01 {
		font-size: 16px;
		line-height: 1.6;
		font-weight:600;
		margin: 0 auto 20px;
	}
	#consultation .contents p.item02 {
		font-size: 14px;
		line-height: 1.6;
		font-weight:600;
		margin: 0 auto 40px;
	}
	#consultation .contents p.illustration {
		margin: 0 auto;
	}
	#consultation .contents p.illustration img {
		width: 95%;
		height: auto;
	}

	#consultation .contents ul {
		margin-top: 30px;
	}
	#consultation .contents ul li {
		margin-bottom: 10px;
	}
	#consultation .contents ul li .button01 {
		display: inline-block;
		color: #fff;
		font-size: 18px;
		line-height:1;
		font-weight:500;
		background-color: #1E4564;
		border: solid 2px #1E4564;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 18px 10px;
		margin: 0 auto;
		width: 70%;
	}
	#consultation .contents ul li .button01:hover {
		background-color: #386588;
		border: solid 2px #386588;
	}
	#consultation .contents ul li .button02 {
		display: inline-block;
		color: #CC0A78;
		font-size: 18px;
		line-height:1;
		font-weight:500;
		background-color: #fff;
		border: solid 2px #CC0A78;
		text-decoration: none;
		border-radius: 5px;
		text-align: center;
		padding: 18px 10px;
		margin: 0 auto;
		width: 70%;
	}
	#consultation .contents ul li .button02:hover {
		background-color: #FFF6FB;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#consultation {
	padding: 3.5em 0 4em;
	}
	#consultation .contents p.subtitle img {
		width: 28%;
	}
	#consultation .contents p.item01 {
		font-size: 18px;
		margin: 0 auto 25px;
	}
	#consultation .contents p.item02 {
		font-size: 16px;
	}
	#consultation .contents p.illustration img {
		width: 70%;
	}
	#consultation .contents ul {
		margin-top: 40px;
	}
	#consultation .contents ul li {
		margin-bottom: 15px;
	}
	#consultation .contents ul li .button01 {
		font-size: 22px;
		padding: 26px 10px;
		width: 65%;
	}
	#consultation .contents ul li .button02 {
		font-size: 22px;
		padding: 26px 10px;
		width: 65%;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#consultation {
	padding: 5em 0 5em;
	}
#consultation {
	min-width: 1070px;
	overflow: hidden;
	}
	#consultation .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#consultation .contents p.subtitle img {
		width: 266px;
	}
	#consultation .contents p.item01 {
		font-size: 24px;
		margin: 40px auto 15px;
	}
	#consultation .contents p.item02 {
		font-size: 18px;
	}
	#consultation .contents p.illustration img {
		width: 642px;
	}

	#consultation .contents ul {
		margin-top: 50px;
	}
	#consultation .contents ul li {
		margin-bottom: 15px;
		display: inline;
	}
	#consultation .contents ul li .button01 {
		font-size: 26px;
		padding: 25px 10px;
		margin: 0 20px 0 0;
		width: 400px;
	}
	#consultation .contents ul li .button02 {
		font-size: 26px;
		padding: 25px 10px;
		margin: 0;
		width: 400px;
	}
}

/*** Guide ***/
#Guide {
	padding: 2.5em 0 2em;
	}
#Guide {
	min-width: 100%;
	overflow: hidden;
	}
	#Guide .contents {
		width: 96%;
		overflow: hidden;
		margin: 0 auto;
		text-align: center;
	}
	#Guide a:link {color: #1070C5; text-decoration: underline; }
	#Guide .contents div.index a:link {color: #1070C5; text-decoration: none; }

	#Guide .contents h1 {
		font-size:20px;
		line-height:1.4;
		font-weight:600;
		color: #0F2D46;
		text-align: center;
		margin: 50px auto 5px;
	}
	#Guide .contents h2 {
		font-size: 16px;
		line-height:1.6;
		font-weight:600;
		margin: 25px auto 10px;
	}
	#Guide .contents h3 {
		font-size:18px;
		line-height:1.6;
		font-weight:600;
		text-align: center;
		margin-bottom: 15px;
	}
	#Guide .contents h4 {
		font-size:16px;
		line-height:1.6;
		font-weight:600;
		text-align: left;
		margin-top: 15px;
	}
	#Guide .contents h5 {
		font-size:18px;
		line-height:1.6;
		font-weight:600;
		text-align: left;
		margin: 40px 10px 15px;
		padding-bottom: 5px;
		border-bottom: 2px solid #E2E2E2;
	}
	#Guide .contents h6 {
		font-size:16px;
		line-height:1.6;
		font-weight:600;
		text-align: left;
		margin: 20px 10px 10px 30px;
	}
	#Guide .contents h6:before {
		content: '－';
		margin-left: -25px;
		padding-right: 10px;
	}
	#Guide .contents p.intro {
		font-size: 14px;
		line-height: 1.6;
		text-align: left;
		margin: 0 30px;
	}
	#Guide .contents p.paragraph01 {
		font-size:14px;
		line-height:1.6;
		text-align: left;
		margin: 5px 10px 10px 30px;
	}
	#Guide .contents p.paragraph02 {
		font-size:15px;
		line-height:1.6;
		text-align: left;
		margin: 5px 10px 10px;
	}
	#Guide .contents div.index {
		margin: 35px 15px 15px;
		padding: 20px 22px;
		background: #F0F0F0;
		border-radius: 3px;
	}
	#Guide .contents div.index ul {
		text-align: left;
		margin: 5px 0 0 25px;
		list-style-type: none;
	}
	#Guide .contents div.index ul li {
		font-size:15px;
		line-height:1.4;
		padding-bottom: 3px;
	}
	#Guide .contents div.index ul li:before {
		content: '－';
		margin-left: -25px;
		padding-right: 10px;
	}
	#Guide .contents div.index  p.lead {
		color: #777;
		font-size: 14px;
		line-height: 1.6;
		text-align: left;
	}
	#Guide .contents ul.type01 {
		text-align: left;
		margin: 15px 10px 10px 30px;
		list-style-type: decimal;
	}
	#Guide .contents ul.type01 li {
		font-size:15px;
		line-height:1.6;
		padding-bottom: 10px;
	}
	#Guide .contents ul.type01 li span {
		font-size:14px;
		line-height:1.6;
		display: inline-block;
		padding: 10px 0 5px;
	}
	#Guide .contents ul.type01 li ul {
		text-align: left;
		margin: 15px 0 0 0;
		list-style-type: none;
	}
	#Guide .contents ul.type01 li ul li {
		font-size:15px;
		line-height:1.6;
		font-weight:400;
	}
	#Guide .contents ul.type02 {
		text-align: left;
		margin: 35px 10px 10px 30px;
		list-style-type: disc;
	}
	#Guide .contents ul.type02 li {
		font-size:15px;
		line-height:1.6;
		font-weight:600;
		padding-bottom: 5px;
	}
	#Guide .contents ul.type02 li ul {
		text-align: left;
		margin: 5px 0 5px 0;
		list-style-type: none;
	}
	#Guide .contents ul.type02 li ul li {
		font-size:14px;
		line-height:1.6;
		font-weight:400;
		padding-right: 15px;
		display: inline;
	}
	#Guide .contents ul.type03 {
		text-align: left;
		margin: 25px 10px 40px 30px;
		list-style-type: disc;
	}
	#Guide .contents ul.type03 li {
		font-size:15px;
		line-height:1.6;
		padding-bottom: 5px;
	}
	#Guide .contents ul.type03 li span {
		font-size:14px;
		line-height:1.6;
		display: inline-block;
		padding: 10px 0 5px;
	}

/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#Guide {
	padding: 2.5em 0 3em;
	}
	#Guide .contents h1 {
		font-size:30px;
		margin: 60px auto 5px;
	}
	#Guide .contents h2 {
		font-size: 20px;
		margin: 25px auto 20px;
	}
	#Guide .contents h3 {
		font-size:22px;
		margin-bottom: 15px;
	}
	#Guide .contents h4 {
		font-size:18px;
	}
	#Guide .contents h5 {
		font-size:22px;
	}
	#Guide .contents h6 {
		font-size:18px;
		margin: 30px 10px 10px 30px;
	}
	#Guide .contents p.intro {
		font-size: 16px;
		text-align: center;
	}
	#Guide .contents p.paragraph01 {
		font-size:16px;
	}
	#Guide .contents p.paragraph02 {
		font-size:16px;
		margin: 5px 10px 20px;
	}
	#Guide .contents div.index {
		margin: 45px 15px 25px;
		padding: 30px 35px;
	}
	#Guide .contents div.index ul li {
		font-size:16px;
	}
	#Guide .contents div.index  p.lead {
		font-size: 15px;
	}
	#Guide .contents ul.type01 li {
		font-size:16px;
	}
	#Guide .contents ul.type01 li span {
		font-size:16px;
	}
	#Guide .contents ul.type01 li ul {
		margin: 20px 0 0 0;
	}
	#Guide .contents ul.type01 li ul li {
		font-size:16px;
	}
	#Guide .contents ul.type02 li {
		font-size:16px;
	}
	#Guide .contents ul.type02 li ul li {
		font-size:16px;
	}
	#Guide .contents ul.type03 li {
		font-size:16px;
	}
	#Guide .contents ul.type03 li span {
		font-size:16px;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#Guide {
	padding: 4em 0 4em;
	}
#Guide {
	min-width: 1070px;
	overflow: hidden;
	}
	#Guide .contents {
		width: 1070px;
		overflow: hidden;
		margin: 0 auto;
	}
	#Guide .contents h1 {
		font-size:38px;
		margin: 70px auto 10px;
	}
	#Guide .contents h2 {
		font-size: 24px;
		margin: 25px auto 30px;
	}
	#Guide .contents h3 {
		font-size:26px;
		margin-bottom: 20px;
	}
	#Guide .contents h4 {
		font-size:20px;
	}
	#Guide .contents h5 {
		font-size:24px;
	}
	#Guide .contents h6 {
		font-size:20px;
		margin: 40px 10px 10px 30px;
	}
	#Guide .contents p.intro {
		font-size: 17px;
		text-align: center;
	}
	#Guide .contents p.paragraph01 {
		font-size:16px;
	}
	#Guide .contents p.paragraph02 {
		font-size:16px;
		margin: 15px 10px 30px;
	}
	#Guide .contents div.index {
		margin: 45px 15px 25px;
		padding: 30px 35px;
	}
	#Guide .contents div.index ul li {
		font-size:16px;
	}
	#Guide .contents div.index  p.lead {
		font-size: 15px;
	}
	#Guide .contents ul.type01 li {
		font-size:16px;
	}
	#Guide .contents ul.type01 li span {
		font-size:16px;
	}
	#Guide .contents ul.type01 li ul {
		margin: 20px 0 0 0;
	}
	#Guide .contents ul.type01 li ul li {
		font-size:16px;
	}
	#Guide .contents ul.type02 li {
		font-size:16px;
	}
	#Guide .contents ul.type02 li ul li {
		font-size:16px;
	}
	#Guide .contents ul.type03 li {
		font-size:16px;
	}
	#Guide .contents ul.type03 li span {
		font-size:16px;
	}
}

/*** pageTop ***/
#pageTop {
	position: fixed;
	bottom: 15px;
	right: 15px;
	z-index: 99999;
	}
	#pageTop #pagetop-icon {
		display: block;
		border-radius: 50%;
		width: 42px;
		height: 42px;
		background:rgba(0,0,0,0.4);
		text-decoration: none;
		text-align: center;
	}
	#pageTop #pagetop-icon:hover {
		text-decoration: none;
		opacity: 0.7;
	}
	#pagetop-icon::before, #pagetop-icon::after {
		width: 42px;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
	}
	#pagetop-icon::before {
		width: 42px;
		height: 42px;
		-webkit-border-radius: 50%;
		border-radius: 50%;
		background:rgba(0,0,0,0.4);
	}
	#pagetop-icon::after {
		top: 3px;
		left: 15px;
		width: 9px;
		height: 9px;
		border-top: 3px solid #fff;
		border-right: 3px solid #fff;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
#pageTop {
	bottom: 20px;
	right: 20px;
	}
	#pageTop #pagetop-icon {
		width: 50px;
		height: 50px;
	}
	#pagetop-icon::before, #pagetop-icon::after {
		width: 50px;
	}
	#pagetop-icon::before {
		width: 50px;
		height: 50px;
	}
	#pagetop-icon::after {
		top: 3px;
		left: 18px;
		width: 11px;
		height: 11px;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
#pageTop {
	bottom: 40px;
	right: 30px;
	}
	#pageTop #pagetop-icon {
		width: 58px;
		height: 58px;
	}
	#pagetop-icon::before, #pagetop-icon::after {
		width: 58px;
	}
	#pagetop-icon::before {
		width: 58px;
		height: 58px;
	}
	#pagetop-icon::after {
		top: 3px;
		left: 21px;
		width: 12px;
		height: 12px;
	}
}

/*** footer ***/
footer {
	min-width: 100%;
	overflow: hidden;
	background: #fff;
	padding: 20px 0px 30px;
	margin: 0;
	}
	footer .guide-line {
		padding-top: 20px;
		border-top: 1px solid #E2E2E2;
	}
	footer .footer-content-wrap {
		width: 96%;
		margin: auto;
		text-align: center;
	}
	footer .footer-content-wrap ul {
		text-align:center;
	}
	footer .footer-content-wrap ul li {
		display:inline-block; 
		padding:0 8px;
	}
	footer .footer-content-wrap ul li a {
		font-size:12px;
		line-height:2.5;
		color:#555;
		font-weight:400;
	}
	footer p.footer-logo img {
		width: 120px;
		height: auto;
		margin: 30px auto 10px;
	}
	footer p.footer-copyright {
		font-size: 11px;
		color: #9B9B9B;
		font-weight:400;
	}
/* 480px～959px */
@media screen and (min-width: 480px) and (max-width: 959px) { 
footer {
	padding: 30px 0px 40px;
	}
	footer .footer-content-wrap ul li {
		padding:0 10px;
	}
	footer .footer-content-wrap ul li a {
		font-size:13px;
	}
	footer p.footer-logo img {
		width: 150px;
		margin: 30px auto 20px;
	}
	footer p.footer-copyright {
		font-size: 12px;
	}
}
/* 960px～ */
@media screen and (min-width: 960px) { 
footer {
	min-width: 1070px;
	overflow: hidden;
	padding: 40px 0px 40px;
	}
	footer .footer-content-wrap {
		min-width: 1070px;
		margin: auto;
		text-align: center;
	}
	footer .footer-content-wrap ul li {
		padding:0 16px;
	}
	footer .footer-content-wrap ul li a {
		font-size:14px;
	}
	footer .footer-content-wrap ul li a:hover{
	  text-decoration: underline;
	}
	footer p.footer-logo img {
		width: 160px;
		margin: 35px auto 20px;
	}
	footer p.footer-copyright {
		font-size: 13px;
	}
}
