/*----------------------------------------------------------------------------*/
/* 	共通構造 CSS											     */
/*----------------------------------------------------------------------------*/
@charset "UTF-8";

/*==========================================
	基本情報領域
===========================================*/
	body {
		background: #FFF;
		font-family: "游ゴシック体", YuGothic,"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", 
					"NotoSans", "NotoSansCJKjp",Osaka, helvetica, arial, sans-serif;
		font-display: swap;
		color: #333;
		font-size:1rem;
		line-height:1.85;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		-webkit-text-size-adjust: 100%; 
		word-wrap: break-word;
	}
	@media screen and (max-width:768px) {
		body{
			font-size:0.8rem;
		}
	}

	*{box-sizing: border-box;}

	/* 要素のはみ出し解決 -------------------------------------------------- */
	main {
		overflow-x: hidden;		/* ★ 横方向はみ出した部分を非表示にする */
		overflow-y: hidden;		/* ★ 縦方向はみ出した部分を非表示にする */
	}

/* ■ Conents ------------------------------------------*/

	main{
		margin-top:0;
		clear:both;
		display:block;
	}

	#wrapper {
		margin-top: 0;
		background-color:#FFF;
	}
	@media only screen and (min-width:768px) {	/* PC Layout ◇ */

		#wrapper {
			margin-top: 0;
/*			background	: url("../images/bg/bgsym01.jpg") repeat-y;	*/
			background-size:100%;
		}
	}
	/* Tablet Layout ◇ */
	@media only screen and (min-width: 768px) and (max-width: 992px) {

		#wrapper {
			margin-top: 0;
		}
	}

/* ■ MainConents about facebook timeline -----*/

	#sns {
		margin: 0 auto 0 auto;
		width: 100%;
		border-top: 2px solid #E5E5E5;
		border-bottom: 2px solid #E5E5E5;
	}
	#sns h1,h2,h3,h4,h5,h6{
		font-size:100%;
		font-weight:normal;
	}

	#sns .cont01 {
		margin: 0 auto 0 auto;
		width: 100%;
		background-color: #FFF;
		padding-bottom:30px;
		background	: url("../images/com/subtle_dots.png") repeat;
	}
	#sns .cont01 h3 {
		display:block;
	}
	#sns .cont01 .h3 {
		display:block;
		margin: 20px auto 20px auto;
		width: 90%;
		height: 30px;
		font-size:14px;
		color:#444;
		padding-top:5px;
		padding-left:25px;
		border-left: 5px solid #1F518E; 		/* bf-blue01 */
		border-bottom: 1px solid #BDC3C7;	/* Siver */
	}
	#sns .cont01 .left {
		width: 100%;
	}
	#sns .cont01 .right {
		width: 100%;
	}
	#sns .cont01 .right .fb-page {
		margin: 0 auto 0 auto;
		width: 100%;
		max-width: 320px;
	}
	#sns .cont01 .right p {
		padding-left:20px;
		padding-right:20px;
		padding-bottom:20px;
	}
	#sns .cont01 .left p {	/* Title SNS */
		margin: 20px auto 20px 50px;
		width: 61px;
		height:61px;
		text-indent: -99999px;	/* テキスト非表示 */
		background	: url("../images/sns/facebook.png") no-repeat;
		background-size:61px 61px;
	}
	/* SP ex Layout ◇ */
	@media only screen and (min-width: 414px) and (max-width: 768px) {

		#sns .cont01 .right p {
			padding-left:13%;
			padding-right:0px;
			padding-bottom:20px;
		}

	}

	@media only screen and (min-width:768px) {	/* PC Layout ◇ */

		#sns {
			margin: 0 auto 0 auto;
			width: 100%;
			border-top: 3px solid #E5E5E5;
			border-bottom: 1px solid #F5F5F5;
		}
		#sns .cont01 {
			margin: 50px auto 30px auto;
			width: 100%;
			max-width: 1100px;
			height:700px;
			padding-bottom:60px;
			padding-top:50px;
		}
		#sns .cont01 h3 {
			display:block;
		}
		#sns .cont01 .h3 {
			display:block;
			margin: 0 auto 60px auto;
			width: 65%;
			width: 90%;
			height: 40px;
			font-size:22px;
			color:#555;
			padding-top:5px;
			padding-left:40px;
			border-left: 5px solid #1F518E; 		/* bf-blue01 */
			border-bottom: 1px solid #BDC3C7;	/* Siver */
		}
		#sns .cont01 .left {
			float:left;
			margin-left:17%;
			width: 20%;
			position: relative;
		}
		#sns .cont01 .right {
			float:left;
			width: 60%;
		}
		#sns .cont01 .right .fb-page {
			margin: 0 auto 0 auto;
			width: 700px;
		}
		#sns .cont01 .right p {
			float:left;
			padding-left:0;
			padding-right:30px;
			padding-bottom:30px;
		}
		#sns .cont01 .left p {	/* Title SNS */
			margin: 0 auto 0 0;
			width: 94px;
			height:100px;
		}
	}

	/* Tablet Layout ◇ */
	@media only screen and (min-width: 768px) and (max-width: 992px) {

		#sns .cont01 {
			margin: 30px auto 30px auto;
			width: 100%;
			height:670px;
			padding-bottom:30px;
			padding-top:30px;
		}
		#sns .cont01 .h3 {
			display:block;
			margin: 0 auto 60px auto;
			width: 90%;
			height: 30px;
			font-size:17px;
			padding-top:5px;
			padding-left:20px;
		}
		#sns .cont01 .left {
			float:left;
			margin-left:8%;
			width: 20%;
			position: relative;
		}
		#sns .cont01 .right {
			float:left;
			width: 70%;
		}
		#sns .cont01 .right .fb-page {
			margin: 0 auto 0 auto;
			width: 400px;
		}
	}

	#sns .cont01 p img {
		-webkit-transition: opacity 0.3s ease-out;
		-moz-transition: opacity 0.3s ease-out;
		-ms-transition: opacity 0.3s ease-out;
		-o-transition: opacity 0.3s ease-out;
		transition: opacity 0.3s ease-out;
	}
	#sns .cont01 p:hover img {
		-webkit-opacity: 0.5;
		-moz-opacity: 0.5;
		-o-opacity: 0.5;
		filter: alpha(opacity=50);	/* IE lt 8 */
		-ms-filter: "alpha(opacity=50)"; /* IE 8 */
		opacity: 0.5;
	}

	#sns a{
		text-decoration: none;
	}
	#sns .ease a {
			transition: 0.4s ease-in-out;
			-webkit-transition: 0.4s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.4s ease-in-out;
			-o-transition: 0.4s ease-in-out;
	}
	#sns .ease a:hover {
			transition: 0.4s ease-in-out;
			-webkit-transition: 0.4s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.4s ease-in-out;
			-o-transition: 0.4s ease-in-out;
	}

/* ■ to 資料 download  Banner　----------------------------------*/

	#toPamphlet {
		position: fixed;
		bottom: 5px;
		right: 15%;
		z-index:9;
	}
	#toPamphlet a {
		display: block;
		width: 319px;
		background: url(../images/menu/pamphlet_ov.png) no-repeat;
			transition: 0.8s ease-in-out;
			-webkit-transition: 0.8s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.8s ease-in-out;
			-o-transition: 0.8s ease-in-out;
	}
	#toPamphlet a:hover img {
		visibility: hidden;
			transition: 0.8s ease-in-out;
			-webkit-transition: 0.8s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.8s ease-in-out;
			-o-transition: 0.8s ease-in-out;
	}
	@media only screen and (min-width: 768px) and (max-width: 992px) {

		#toPamphlet {
			display:none;
		}
	}
	@media only screen and (max-width: 768px) {

		#toPamphlet {
			position: fixed;
			bottom: 10px;
			left:0px;
			right:0px;
			margin:auto;
			width: 256px;
			height:42px;
			z-index:9;
		}
		#toPamphlet img {
			zoom:0.8;
		}
		#toPamphlet a {
			display: block;
			width: 256px;
			background: url(../images/com/pamphlet.png ) no-repeat;
			background-size:256px 42px;
		}
		#toPamphlet a:hover {
			display: block;
			width: 256px;
			background: url(../images/com/pamphlet_ov.png ) no-repeat;
			background-size:256px 42px;
		}
	}

/* ■ お電話はこちらから ------------------------------------------------*/

	#toTel {
		position: fixed;
		bottom: 250px;
		right: 4px;
		width: 52px;
		height:205px;
	}
	#toTel a {
		display: block;
		width: 37px;
		height:300px;
		font-size:18px;
		font-family: "Noto Sans JP", serif;
		font-optical-sizing: auto;
		font-weight: 500;
		font-style: normal;
		font-display: swap;
		font-weight:bold:
		color: #BDC3C7;		/* Siver */
		color:#AAA;
		line-height:18px;
		padding-top:50px;
		padding-right:11px;
			-webkit-writing-mode: vertical-rl;
			-ms-writing-mode: tb-rl;
			  writing-mode: vertical-rl;
		background: url(../images/icon/tel.png) no-repeat;
		background-size:	31px 35px;
		background-position:	left 0 top 0;
	}
	@media only screen and (max-width: 768px) {
		#toTel {
			display:none;
		}
	}

/* ■ facebook　-------------------------------------------------------*/

	#toFacebook {
		position: fixed;
		bottom: 300px;
		right: 18px;
		z-index:9999;
	}
	#toFacebook a {
		display: block;
		width: 39px;
		background: url(../images/sns/facebook.png) no-repeat;
	}
	#toFacebook a:hover img {
		visibility: hidden;
	}
	@media only screen and (min-width: 768px) and (max-width: 992px) {

		#toFacebook {
			position: fixed;
			bottom: 250px;
			right: 0px;
			z-index:9999;
		}
	}
/*	@media only screen and (max-width: 768px) {*/
	@media only screen and (max-width: 992px) {

		#toFacebook {
			display:none;
			position: fixed;
			bottom: 150px;
			right: 0px;
			z-index:99;
		}
	}

/* ■ Instagram　-------------------------------------------------------*/

	#toInstagram {
		position: fixed;
		bottom: 220px;
		right: 8px;
		z-index:9999;
	}
	#toInstagram a {
		display: block;
		width: 57px;
		background: url(../images/sns/instagram.png) no-repeat;
	}
	#toInstagram a:hover img {
		visibility: hidden;
	}
	@media only screen and (min-width: 768px) and (max-width: 992px) {

		#toInstagram {
			position: fixed;
			bottom: 250px;
			right: 0px;
			z-index:9999;
		}
	}
/*	@media only screen and (max-width: 768px) {*/
	@media only screen and (max-width: 992px) {

		#toInstagram {
			display:none;
			position: fixed;
			bottom: 150px;
			right: 0px;
			z-index:99;
		}
	}


/* ■ お問い合わせ　----------------------------------------------*/

	#toContact {
		position: fixed;
		bottom: 100px;
		right: 7px;
		z-index:9999;
	}
	#toContact a {
		display: block;
		width: 63px;
		background: url(../images/menu/contact_ov.png) no-repeat;
			transition: 0.8s ease-in-out;
			-webkit-transition: 0.8s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.8s ease-in-out;
			-o-transition: 0.8s ease-in-out;
	}
	#toContact a:hover img {
		visibility: hidden;
			transition: 0.8s ease-in-out;
			-webkit-transition: 0.8s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.8s ease-in-out;
			-o-transition: 0.8s ease-in-out;
	}
	@media only screen and (min-width: 768px) and (max-width: 992px) {

		#toContact {
			position: fixed;
			bottom: 250px;
			right: 0px;
			z-index:9999;
		}
	}
/*	@media only screen and (max-width: 768px) {*/
	@media only screen and (max-width: 992px) {

		#toContact {
			display:none;
			position: fixed;
			bottom: 150px;
			right: 0px;
			z-index:99;
		}
	}

/* ■ ToPageTop -----------------------------------------------------*/

	#toPageTop {
		position: fixed;
		bottom: 18px;
		right: 14px;
		z-index:9999;
	}
	#toPageTop a {
		display: block;
		width: 44px;
		background: url(../images/com/toTop_ov.png) no-repeat;
			transition: 0.8s ease-in-out;
			-webkit-transition: 0.8s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.8s ease-in-out;
			-o-transition: 0.8s ease-in-out;
	}
	#toPageTop a:hover img {
		visibility: hidden;
			transition: 0.8s ease-in-out;
			-webkit-transition: 0.8s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.8s ease-in-out;
			-o-transition: 0.8s ease-in-out;
	}
	@media only screen and (min-width: 768px) and (max-width: 992px) {

		#toPageTop {
			position: fixed;
			bottom: 30px;
			right: 0px;
			z-index:9999;
		}
	}
	@media only screen and (max-width: 768px) {
		#toPageTop {
			position: fixed;
			bottom: 30px;
			right: 1px;
			z-index:9999;
		}
		#toPageTop img {
			zoom:0.8;
		}
		#toPageTop a {
			display: block;
			width: 35px;
			background: url(../images/com/toTop.png) no-repeat;
			background-size:35px 35px;
		}
	}
	/* Tablet Layout ◇ */
	@media only screen and (min-width: 768px) and (max-width: 992px) {

		#toPageTop {
			position: fixed;
			bottom: 5px;
			right: 5px;
			z-index:9999;
		}
	}

/* ■ side symbole ----------------------------------------------*/

	#FG {
		position: fixed;
		bottom: 100px;
		left: 10px;
		z-index:99;
	}
	#FG a {
		display: block;
		width: 15px;
		background: url(../images/com/logo09.png) no-repeat;
	}
	#FG a:hover img {
		visibility: hidden;
	}
	@media only screen and (min-width: 768px) and (max-width: 992px) {

		#FG {
			position: fixed;
			bottom: 130px;
			left: 0;
			z-index:99;
		}
	}
	@media only screen and (max-width: 768px) {

		#FG {
			display:none;
		}
	}

/* ■ contact section ---------------------------------------------*/

	#contact {
		margin:0 auto 0 auto;
		width:100%;
		padding-top:100px;
		padding-bottom:150px;
		background-color: #00B0CE;		/* HB-red prored */
		background:linear-gradient(180deg, #F3F3F3 0%,#F3F3F3 20%,#00B0CE 20%,#00B0CE 80%,#F3F3F3 80%,#F3F3F3 100% );	/* HB-red prored ★ */
		background:linear-gradient(180deg, #F3F3F3 0%,#F3F3F3 20%,#231f20 20%,#3e3a39 80%,#F3F3F3 80%,#F3F3F3 100% );		/* dod-black,02　★ */
	}
	#contact h2 {
		font-size: 16px;
		text-align: center;
		color: #FFF;
		font-family: "Noto Sans JP", serif;
		font-optical-sizing: auto;
		font-weight: 500;
		font-style: normal;
		font-display: swap;
	}
	#contact .nlall {
		display: block;
		margin: 30px auto 0 auto;
		position:relative;
	}
	#contact .nlall a {
		display: block;
		position:absolute;
		top:0;
		left:0;
		right:0;
		margin:auto;
		width:200px;
		font-size:14px;
		line-height:1.5em;
		font-weight:bold;
		font-family: "Futura Heavy font";
		font-display: swap;
		color: #FFF;
		background	: url("../images/icon/btn-arrow03.png") no-repeat;
		background-size:8px 8px;
		background-position: 15px  15px;
	}
	#contact .nlall a:hover {
		color: #FFF;
		background	: url("../images/icon/btn-arrow03.png") no-repeat;
		background-size:8px 8px;
		background-position: 170px 15px; 
	}

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

		#contact{
			margin:30px auto 0 auto;
			padding-top:70px;
			padding-bottom:80px;
		}
		#contact h2 {
			font-weight:bold;
			font-size:11px;
		}
		#contact .nlall {
			display: block;
			margin: 20px auto 45px auto;
			position:relative;
		}
		#contact .nlall a {
			display: block;
			position:absolute;
			top:0;
			left:0;
			right:0;
			margin:auto;
			width:160px;
			font-size:12px;
			line-height:1.5em;
			color: #FFF;
			background	: url("../images/icon/btn-arrow03.png") no-repeat;
			background-size:8px 8px;
			background-position: 10px  12px; 
		}
	}

/* ■Relation Company contents  */

	.relationc {
		margin: 0 auto 10px auto;
		width: 100%;
		padding-bottom:5px;
		background:linear-gradient(180deg,#F4F4F4 20%,#F4F4F4 80%,white 100%);
	}
	.relationc ul {
		margin: 10px auto 0 auto;
		width: 100%;
			display:flex;
			flex-wrap:wrap;
			justify-content: flex-start;
			width: 100%;
			padding-top:20px;
			padding-bottom:10px;
	}
	.relationc ul li {
		display:block;
		margin: 0 0 20px 0;
		width :50%;
	}
	.relationc ul li a {
		display:block;
		margin: 0 auto 0 auto;
		width :261px;
		height:71px;	/* 65% */
		width :170px;
		height:46px;
	}
	.relationc ul li img {
		display:block;
		margin: 0 auto 0 auto;
		width :170px;
		height:46px;
	}
	.relationc ul li img:hover {
		transform:scale(1.1,1.1);
		transition: 0.8s ease-in-out;
		-webkit-transition: 0.8s ease-in-out;	/* Ease in-out */
		-moz-transition: 1.8s ease-in-out;
		-o-transition: 1.8s ease-in-out;
	}

	@media only screen and  (max-width: 360px) {
	}

	@media only screen and (min-width:768px) {

		.relationc {
			margin: 0 auto 0 auto;
			width: 100%;
			padding-bottom:10px;
			background-color:#F4F4F4;
/*			background:linear-gradient(180deg,white 0%,white 20%,#F4F4F4 20%,#F4F4F4 100%);	*/	/* ★ */
			background:linear-gradient(180deg,#F4F4F4 20%,#F4F4F4 80%,white 100%);
		}
		.relationc ul {
			margin: 0 auto 0 auto;
			display:flex;
			flex-wrap:wrap;
			justify-content: flex-start;
			justify-content: space-between;	
			width: 70%;
			width: 65%;
			padding-top:50px;
			padding-bottom:20px;
		}
		.relationc ul li {
			display:block;
			margin: 0 0 30px 0;
			width :25%;
			height:71px;
			padding-bottom:0;
		}
		.relationc ul li a {
			margin: 0 auto 0 auto;
			display:block;
			width :261px;
			height:71px;
		}
		.relationc ul li img {
			display:block;
			margin: 0 auto 0 auto;
			width :261px;
			height:71px;
		}
		.relationc ul li img:hover {
			transform:scale(1.1,1.1);
			transition: 0.8s ease-in-out;
			-webkit-transition: 0.8s ease-in-out;	/* Ease in-out */
			-moz-transition: 1.8s ease-in-out;
			-o-transition: 1.8s ease-in-out;
		}
	}
	@media only screen and (min-width: 1400px) and (max-width: 1680px) {	/*◇ PC-M */

		.relationc ul {
			margin: 0 auto 0 auto;
			width: 80%;
			padding-top:30px;
			padding-bottom:15px;
		}
	}
	@media only screen and (min-width: 1020px) and (max-width: 1400px) {	/*◇ PC-S */

		.relationc ul {
			margin: 0 auto 0 auto;
			display:flex;
			flex-wrap:wrap;
			justify-content: space-between;	
			justify-content: flex-start;
			width: 85%;
			padding-top:50px;
			padding-bottom:20px;
		}
		.relationc ul li a {
			margin: 0 auto 0 auto;
			display:block;
			width :261px;
			height:71px;
			width :209px;	/* 80% */
			height:57px;
		}
		.relationc ul li img {
			display:block;
			margin: 0 auto 0 auto;
			width :209px;	/* 80% */
			height:57px;
		}
	}
	/* Tablet Layout ◇ */
	@media only screen and (min-width: 768px) and (max-width: 1020px) {

		.relationc ul {
			margin: 0 auto 0 auto;
			display:flex;
			flex-wrap:wrap;
			justify-content: space-between;	
			justify-content: flex-start;
			width: 90%;
			padding-top:50px;
			padding-bottom:20px;
		}
		.relationc ul li a {
			margin: 0 auto 0 auto;
			display:block;
			width :261px;
			height:71px;
			width :183px;	/* 70% */
			height:50px;
		}
		.relationc ul li img {
			display:block;
			margin: 0 auto 0 auto;
			width :183px;
			height:50px;
		}
	}

/* ■PC SNS contents  */
	.pcsns {
		display:none;
	}

	@media only screen and (min-width:767px) {

		.pcsns {
			display:block;
			margin: 0 auto 0 auto;
			width: 100%;
			padding-bottom:10px;
			background-color:#FFF;
		}
		.pcsns ul {
			display: flex;
			justify-content: space-between;
			flex-wrap: wrap;
			margin:0 10% 0 auto;
			width:25%;
			height:80px;
		}
		.pcsns ul li {
			margin: 0 auto 0 auto;
			width:16%;
		}
		.pcsns ul li>a {
			display:block;
			margin: 0 auto 0 auto;
			width:30px;
			height:30px;
		}
		.pcsns ul li:nth-child(2)>a {
		}
		.pcsns ul li>a>img {
			display:block;
			width:100%;
			padding-top:25px;
		}
		.pcsns ul li:nth-child(2)>a>img {
			margin: 0 auto 0 auto;
			width:55%;
		}
		.pcsns ul li:nth-child(6)>a>img {
			margin: 0 auto 0 auto;
			width:90%;
		}
	}
	/* Tablet Layout ◇ */
	@media only screen and (min-width: 767px) and (max-width: 1020px) {

		.pcsns ul {
			display: flex;
			justify-content: space-between;
			flex-wrap: wrap;
			margin:0 10% 0 auto;
			width:35%;
			height:50px;
		}
		.pcsns ul li>a>img {
			display:block;
			width:70%;
			padding-top:25px;
		}
		.pcsns ul li:nth-child(2)>a>img {
			margin: 0 auto 0 auto;
			width:40%;
		}
		.pcsns ul li:nth-child(6)>a>img {
			margin: 0 auto 0 auto;
			width:60%;
		}

	}

/* ■Banner contents  */

	#banner {
		margin: 0 auto 0 auto;
		width: 100%;
		padding-bottom:20px;
		background:linear-gradient(180deg,white 0%,white 37%,#F5F5F5 37%,#F5F5F5 100%);	/* ★ */
	}
	#banner h1,h2,h3,h4,h5,h6{
		font-size:100%;
		font-weight:normal;
	}
	#banner ul.bn01 {
		margin: 0 auto 0 auto;
		width: 100%;
	}
	#banner ul.bn01 li {
		margin: 20px auto 0 auto;
		width :301px;
	}
	#banner ul.bn01 li img {
		max-width:100%;
		height:auto;
	}
	#banner ul.bn02 {
		margin: 0 auto 0 auto;
		width: 100%;
	}
	#banner ul.bn02 li {
		margin: 20px auto 0 auto;
		width :301px;
	}
	#banner ul.bn02 li a img {
		margin: 0 auto 0 auto;
		display:block;
		max-width:85%;
		height:auto;
	}

	@media only screen and  (max-width: 360px) {
	}

	@media only screen and (min-width:768px) {

		#banner {
			margin: 0 auto 0 auto;
			width: 100%;
			padding-bottom:0;
			background-color:#FFF;
			background:linear-gradient(180deg,white 0%,white 25%,#F5F5F5 25%,#F5F5F5 100%);	/* ★ */
		}
		#banner ul.bn01 {
			margin: 30px auto 30px auto;
			display:flex;
			flex-wrap:nowrap;
			justify-content: space-between;	/* 両端のアイテムを余白を空けずに配置し、他の要素は均等に間隔を空けて配置 */
			width: 70%;
		}
		#banner ul.bn01 li {
			margin: 0 auto 0 auto;
			width :301px;
			padding-bottom:0px;
		}
		#banner ul.bn01 li a {
			display:block;
			width :301px;
			height:91px;
		}
		#banner ul.bn01 li img {
			width :281px;
			height:auto;
			height:91px;
		}
		#banner ul.bn01 li img:hover {
		}
		#banner ul.bn02 {
			margin: 80px auto 40px auto;
			display:flex;
			flex-wrap:nowrap;
			justify-content: space-between;	/* 両端のアイテムを余白を空けずに配置し、他の要素は均等に間隔を空けて配置 */
			width: 65%;
		}
		#banner ul.bn02 li {
			margin: 0 auto 0 auto;
			width :301px;
			padding-bottom:0px;
		}
		#banner ul.bn02 li a {
			display:block;
		}
		#banner ul.bn02 li a img {
			display:block;
			max-width:100%;
			height:auto;
		}
		@media only screen and (min-width: 993px) and (max-width: 1400px) {	/*◇ PC-S */

			#banner ul.bn02 {
				margin: 80px auto 40px auto;
				width: 70%;
			}

		}
	}
	/* Tablet Layout ◇ */
	@media only screen and (min-width: 768px) and (max-width: 992px) {

		#banner {
			margin: 0 auto 0 auto;
			width: 100%;
			padding-bottom:0px;
			background-color:#FFF;
			background:linear-gradient(90deg,#F5F5F5 0%,#F5F5F5 40%,white 40%,white 100%);	/* ★ */
		}
		#banner ul.bn02 {
			margin: 80px auto 40px auto;
			width: 80%;
		}
	}

/*==========================================
	フッター 情報領域
===========================================*/

/* ■ footer */

	#footer {
		padding: 0 0 50px 0;
		padding: 0;
		text-align: center;
		background: #fff;
		position: relative;
	}
	#footer .footer-logo {
		font-size:24px;
		font-size:35px;
		font-weight: bold;
		letter-spacing: 0.1em;
		margin: 0 0 30px 0;
		color: #444;
		font-weight:bold;
		font-family: "Antro_Vectra";
		font-display: swap;
		transform: rotate(-5deg);	/* テキストを傾ける ◇ */
	}
	#footer small {
		display:block;
		margin: 50px auto 0 auto;
		width:100%;
		font-size:12px;
		color:#FFF;
		font-family: "futura medium bt";
		font-display: swap;
		padding:5px 0 5px 0;
		background-color:#333;
	}
	#footer .footer-pvp {
		display:block;
		position:absolute;
		bottom:40px;
		right:10%;
	}
	#footer .footer-pvp a {
		font-size:13px;
		font-family: "futura medium condensed bt'";
		font-display: swap;
		color:#444;
	}
	#footer .footer-pvp a:hover {
		color: #B27C04;		/* Gold02 */
	}

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

		#footer{
			margin: -50px auto 0 auto;
			margin: 0 auto 0 auto;
			padding: 0;
		}
		#footer .footer-logo{
			font-weight: bold;
			font-size:13px;
			letter-spacing: 0.2em;
			margin: 0 0 50px 0;
			color: #666;
		}
		#footer small {
			font-size:8px;
			padding:5px 0 5px 0;
			background-color:#333;
		}
		#footer .footer-pvp {
			display:none;
		}
	}

/* □ base footer  */

	/* SP メニュー -------- */
	.Navsp {			/*  ◇ SP Menu  visible  */
		margin-top:0;
		display: block;
		position: fixed;
		bottom: 0px;
		left: 0px;
		z-index:88;
		width:100%;
		height: 50px;
		background-color:rgba( 255,255,255,0.75 ); 	/*  White  透過75% */
			box-shadow: 0px 1px 3px 1px #aaa;
			-webkit-box-shadow: 0px 1px 3px 1px #aaa;
			-moz-box-shadow: 0px 1px 3px 1px #aaa;
	}
	.Navsp ul {				/*  Block横均等配置 ◆*/
		width:100%;
		height: 40px;
		display:flex;
		justify-content: center;
		padding:0;
		padding-top:0px;
		list-style: none;
				    -webkit-box-sizing: border-box;
				       -moz-box-sizing: border-box;
				         -o-box-sizing: border-box;
				        -ms-box-sizing: border-box;
				            box-sizing: border-box;
	}
	.Navsp ul li {			/*  Block横均等配置 ◆ */
		width:calc(100% / 2);
		height:40px;
		margin:5px;
		text-align:center;
		line-height:20px;
		font-size:13px;
		font-weight:bold;
				    -webkit-box-sizing: border-box;
				       -moz-box-sizing: border-box;
				         -o-box-sizing: border-box;
				        -ms-box-sizing: border-box;
				            box-sizing: border-box;
	}
	.Navsp ul li:first-child {		/* 今すぐ申し込む　エントリーFORMへ */
		position: absolute;
		top: 0;
		left: 0;
		width:48%;
		display	: block;
	}
	.Navsp ul li:first-child a{
		overflow: hidden;
		width:100%;
		height:100%;
		color:#FFF;
		padding-top:8px;
		padding-left:20px;
		background	: url("../images/icon/entry.png") no-repeat;
		background-size:30px 27px;
		background-position:  left 4px top 4px;
		background-color:#E3007F;		/* NS-pink */
		border: 2px solid #E3007F;		/* NS-pink */
		display	: block;
			    -webkit-box-sizing: border-box;
			       -moz-box-sizing: border-box;
			         -o-box-sizing: border-box;
			        -ms-box-sizing: border-box;
			            box-sizing: border-box;
		transition: 0.5s ease-in-out;
		-webkit-transition: 0.5s ease-in-out;	/* Ease in-out */
		-moz-transition: 0.5s ease-in-out;
		-o-transition: 0.5s ease-in-out;
	}
	.Navsp ul li:first-child a:hover{
		display	: block;
		width:100%;
		color:#00C402;	/*LINE green */
		color:#FFF;
		padding-top:10px;
		padding-left:20px;
		background	: url("../images/icon/entry.png") no-repeat;
		background-size:30px 27px;
		background-position:  left 4px top 4px;
		background-color:#E3007F;		/* NS-pink */
		border: 2px solid #E3007F;		/* NS-pink */
		transition: 0.5s ease-in-out;
		-webkit-transition: 0.5s ease-in-out;	/* Ease in-out */
		-moz-transition: 0.5s ease-in-out;
		-o-transition: 0.5s ease-in-out;
	}
	.Navsp ul li:nth-child(2) {		/* プライバシーポリシー */
		position: absolute;
		top: 0;
		right: 0;
		width:48%;
	}
	.Navsp ul li:nth-child(2) a{
		overflow: hidden;
		width:100%;
		height:100%;
		color:#444;
		padding-top:8px;
		padding-left:20px;
		background	: url("../images/icon/tel.png") no-repeat;
		background-size:30px 29px;
		background-position:  left 4px top 3px;
		background-color:#FFF;
		border: 2px solid #444;
		display	: block;
		    -webkit-box-sizing: border-box;
		       -moz-box-sizing: border-box;
		         -o-box-sizing: border-box;
		        -ms-box-sizing: border-box;
		            box-sizing: border-box;
		transition: 0.5s ease-in-out;
		-webkit-transition: 0.5s ease-in-out;	/* Ease in-out */
		-moz-transition: 0.5s ease-in-out;
		-o-transition: 0.5s ease-in-out;
	}
	.Navsp ul li:nth-child(2) a:hover{
		display	: block;
		width:100%;
		color:#444;
		padding-top:10px;
		padding-left:20px;
		background	: url("../images/icon/tel.png") no-repeat;
		background-size:30px 29px;
		background-position:  left 4px top 3px;
		background-color:#F4F4F4;
		border: 2px solid #444;
		transition: 0.5s ease-in-out;
		-webkit-transition: 0.5s ease-in-out;	/* Ease in-out */
		-moz-transition: 0.5s ease-in-out;
		-o-transition: 0.5s ease-in-out;
	}

/*	.Navsp ul li:hover{
		opacity:0.8;
	}*/

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

		.Navsp ul li {			/*  Block横均等配置 ◆ */
			width:calc(100% / 2);
			height:40px;
			margin:5px;
			text-align:center;
			line-height:20px;
			font-size:12px;
			font-weight:bold;
					    -webkit-box-sizing: border-box;
					       -moz-box-sizing: border-box;
					         -o-box-sizing: border-box;
					        -ms-box-sizing: border-box;
					            box-sizing: border-box;
		}
		.Navsp ul li:first-child {
			font-size:11px;
		}
		.Navsp ul li:nth-child(2) {	
			font-size:12px;
		}

	}
							/* ■ SP MENU -----------*/
	@media only screen and (min-width:768px) {
		.Navsp {			/*  ◇ SP Menu  unvisible  */
			display	: none;
		}
	}
	/* Tablet Layout ◇ */
	@media only screen and (min-width: 768px) and (max-width: 992px) {
		.Navsp {			/*  ◇ SP Menu  visible  */
			display	: block;
			height: 70px;
		}
		.Navsp ul {				/*  Block横均等配置 ◆*/
			width:100%;
			height: 60px;
			display:flex;
			justify-content: center;
			padding:0;
			padding-top:0px;
			list-style: none;
					    -webkit-box-sizing: border-box;
					       -moz-box-sizing: border-box;
					         -o-box-sizing: border-box;
					        -ms-box-sizing: border-box;
					            box-sizing: border-box;
		}
		.Navsp ul li {			/*  Block横均等配置 ◆ */
			width:calc(100% / 2);
			height:60px;
			margin:5px;
			text-align:center;
			line-height:20px;
			font-size:18px;
			font-weight:bold;
					    -webkit-box-sizing: border-box;
					       -moz-box-sizing: border-box;
					         -o-box-sizing: border-box;
					        -ms-box-sizing: border-box;
					            box-sizing: border-box;
		}
		.Navsp ul li:first-child {		/* 今すぐ申し込む　エントリーFORMへ */
			position: absolute;
			top: 0;
			left: 0;
			width:48%;
			display	: block;
		}
		.Navsp ul li:first-child a{
			overflow: hidden;
			width:100%;
			height:100%;
			color:#FFF;
			padding-top:17px;
			padding-left:20px;
			background	: url("../images/menu/entry_icon.png") no-repeat;
			background-size:40px 43px;
			background-position:  left 15px top 7px;
			background-color:#00C402;	/*LINE green */
			border: 2px solid #00C402;	/*LINE green */
			display	: block;
				    -webkit-box-sizing: border-box;
				       -moz-box-sizing: border-box;
				         -o-box-sizing: border-box;
				        -ms-box-sizing: border-box;
				            box-sizing: border-box;
			transition: 0.5s ease-in-out;
			-webkit-transition: 0.5s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.5s ease-in-out;
			-o-transition: 0.5s ease-in-out;
		}
		.Navsp ul li:first-child a:hover{
			display	: block;
			width:100%;
			color:#00C402;	/*LINE green */
			color:#FFF;
			padding-top:17px;
			padding-left:20px;
			background	: url("../images/menu/entry_icon.png") no-repeat;
			background-size:40px 43px;
			background-position:  left 15px top 5px;
			background-color:#00C402;	/*LINE green */
			border: 2px solid #00C402;	/*LINE green */
			transition: 0.5s ease-in-out;
			-webkit-transition: 0.5s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.5s ease-in-out;
			-o-transition: 0.5s ease-in-out;
		}
		.Navsp ul li:nth-child(2) {		/* プライバシーポリシー */
			position: absolute;
			top: 0;
			right: 0;
			width:48%;
		}
		.Navsp ul li:nth-child(2) a{
			overflow: hidden;
			width:100%;
			height:100%;
			color:#4DA635;	/* MCS green01 */
			padding-top:17px;
			background-color:#FFF;
			border: 2px solid #4DA635;	/* MCS green01 */
			display	: block;
			    -webkit-box-sizing: border-box;
			       -moz-box-sizing: border-box;
			         -o-box-sizing: border-box;
			        -ms-box-sizing: border-box;
			            box-sizing: border-box;
			transition: 0.5s ease-in-out;
			-webkit-transition: 0.5s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.5s ease-in-out;
			-o-transition: 0.5s ease-in-out;
		}
		.Navsp ul li:nth-child(2) a:hover{
			display	: block;
			width:100%;
			color:#4DA635;	/* MCS green01 */
			padding-top:17px;
			background-color:#F4F4F4;
			border: 2px solid #4DA635;	/* MCS green01 */
			transition: 0.5s ease-in-out;
			-webkit-transition: 0.5s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.5s ease-in-out;
			-o-transition: 0.5s ease-in-out;
		}
	}

/* ◆Other Style ---------------------------------*/

	/* ◇ Flexible Images ------------------------*/

	.img-responsive{
		max-width: 100%;
		height: auto;
	}

	/* ◇ placeholder ------------------------*/

	/*Webkit*/
	::-webkit-input-placeholder {color: #AAA}
	 
	/*Firefox 19以降*/
	::-moz-placeholder  {color: #AAA}
	 
	/*Firefox 18以前*/
	:-moz-placeholder   {color: #AAA}
	 
	/*Windows IE*/
	:-ms-input-placeholder  {color: #AAA} 

	h1,h2,h3,h4,h5,h6{
		font-size:100%;
		font-weight:normal;
	}

	.h2invisible {
		display:none;
	}

/* ■要素のはみ出し解決 -------------------------------------------------- */
	main {
		overflow-x: hidden;	/* ★ 横方向はみ出した部分を非表示にする */
	}


/* ■ Others --------------------------------*/

	/* common effect */
	.ease  a{
			transition: 0.8s ease-in-out;
			-webkit-transition: 0.8s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.8s ease-in-out;
			-o-transition: 0.8s ease-in-out;
	}
	 .ease a:hover {
			transition: 0.8s ease-in-out;
			-webkit-transition: 0.8s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.8s ease-in-out;
			-o-transition: 0.8s ease-in-out;
	}
	.ease02  a{
			transition: 0.2s ease-in-out;
			-webkit-transition: 0.2s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.2s ease-in-out;
			-o-transition: 0.2s ease-in-out;
	}
	 .ease02 a:hover {
			transition: 0.2s ease-in-out;
			-webkit-transition: 0.2s ease-in-out;	/* Ease in-out */
			-moz-transition: 0.2s ease-in-out;
			-o-transition: 0.2s ease-in-out;
	}

	a:hover img {
		-webkit-opacity: 0.5;
		-moz-opacity: 0.5;
		-o-opacity: 0.5;
		filter: alpha(opacity=50);	/* IE lt 8 */
		-ms-filter: "alpha(opacity=50)"; /* IE 8 */
		opacity: 0.5;
	}
	a img {
		-webkit-transition: opacity 0.5s ease-out;
		-moz-transition: opacity 0.5s ease-out;
		-ms-transition: opacity 0.5s ease-out;
		-o-transition: opacity 0.5s ease-out;
		transition: opacity 0.5s ease-out;
	}

/* ■ Color material */

	.subt {
		color: #A4966A;		/* Gold01 */
		font-size:13px;
		text-align:center;
	}
	.subt01 {
		color: #A4966A;		/* Gold01 */
		font-size:15px;
	}
	@media only screen and (max-width:768px) {
		.subt01 {
			font-size:12px;
		}
	}

	/* ■local colors --------------------------------------------- */

	.noah-blue {
		color: #00B0CE;		/* noah-base-blue */
	}
	.noah-blue01 {
		color: #75ADB9;		/* noah-blue01 */
	}
	.noah-blue02 {
		color: #A6D5DD;		/* noah-blue02 */
	}
	.noah-blue03 {
		color: #CAEBEF;		/* noah-blue03 thin */
	}

	.dod-black {
		color:#231f20;		/* dod-black */
	}
	.dod-black02 {
		color:#3e3a39;		/* dod-black02 */
	}
	.hb-base-red {
		color: #E43A1E;		/* HB-base-red */
	}
	.hb-red {
		color: #D03C1B;		/* HB-red prored */
	}
	.hb-red01 {
		color: #D9142B;		/* HB-red01 */
	}
	.hb-red01 {
		color: #D9142B;		/* HB-red01 */
	}
	.hb-red02 {
		color: #BD1A20;		/* HB-red02 */
	}

	.gold {
		color: #A4966A;		/* Gold01 */
	}
	.goldc02 {
		color: #B27C04;		/* Gold02 */
	}
	.silver {
		color: #BDC3C7;		/* Siver */
	}
	.uline {
		border-bottom: 1px solid #B27C04;
	}
	.mtext {
		color: #666;
	}
	.green {
		color: #75AD49;		/* M.Green */
	}
	.ored {
		font-size:11px;
		color: #C0392B;		/* O.Red */
	}
	.ored02 {
		color: #C0392B;		/* O.Red */
	}
	.ored03 {
		color: #E67E22;		/* O.Red */
	}
	.beige {
		color: #E7DDD2;		/* beige */
	}


/* # =================================================================
   # Forms
   # ================================================================= */

input {
  border-radius: 0;
}

/* Apply cursor pointer to button elements */
button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
  cursor: pointer;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type="number"] {
  width: auto; /* Firefox 36+ */
}

[type="search"] {
  -webkit-appearance: textfield; /* Safari 8+ */
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; /* Safari 8 */
}

textarea {
  overflow: auto; /* Internet Explorer 11+ */
  resize: vertical; /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold; /* Restore the font weight unset by the previous rule. */
}

button {
  overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: 0;
  padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type="button"], /* Prevent a WebKit bug where (2) destroys native `audio` and `video`controls in Android 4 */
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS */
}

button,
select {
  text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
}

/* Style select like a standard input */
select {
  -moz-appearance: none; /* Firefox 36+ */
  -webkit-appearance: none; /* Chrome 41+ */
}

select::-ms-expand {
  display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor; /* Internet Explorer 11+ */
}

legend {
  border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
  display: table; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge and IE */
  white-space: normal; /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS and Safari */
  font: inherit; /* Change font properties to `inherit` in Chrome and Safari */
}

[type="search"] {
  -webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px; /* Correct the outline style in Safari */
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */

img {
  border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden; /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
  display: inline-block; /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
   # Accessibility
   # ================================================================= */

/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~="screen"] {
    display: inherit;
  }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}

/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}

/* # =================================================================
   # Selection
   # ================================================================= */

/* Specify text selection background color and omit drop shadow */

::-moz-selection {
  background-color: #b3d4fc; /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

::selection {
  background-color: #b3d4fc; /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}