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

/*==========================================
	基本情報領域
===========================================*/
	body {
		background: #FFF;
		font-family: "NotoSans", "NotoSansCJKjp","游ゴシック体", YuGothic,"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", 
					"メイリオ", Meiryo, Osaka, helvetica, arial, sans-serif;
	}
	main{
		margin-top:0;
		clear:both;
		display:block;
	}
	/* 要素のはみ出し解決 -------------------------------------------------- */
	main {
		overflow-x: hidden;		/* ★ 横方向はみ出した部分を非表示にする */
		overflow-y: hidden;		/* ★ 縦方向はみ出した部分を非表示にする */
	}

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

	#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;
		}
	}
	main h1 {
		display:none;
	}

/* ■ お問い合わせバナー -----*/

	.cntbn {
		margin: 0 auto 0 auto;
		width: 100%;
/*		height:130px;	*/
		padding-bottom:85px;
		background	: url("../images/bg/bg02.png") no-repeat;
		background-size:contain;
		background-position:  center 0;
		position:relative; 
	}
	.cntbn p {
		margin: 20px auto 0 auto;
		width: 100%;
		text-align:center;
		font-size:11px;
		font-weight:bold;
		line-height:1.7em;
		padding-top:20px;
		padding-bottom:10px;
		color:#fff;
	}
	.cntbn .contbanner {			/*  CONTACT */
		margin: 20px auto 0 auto;
		width : 302px;
		height: 70px;
		display	: block;
		text-indent: -99999px;	/* テキスト非表示 */
		border	: 0px;
	}
	.cntbn .contbanner  a{
		overflow: hidden;	 /* 内容を非表示にする。*/
		width : 302px;
		height: 0 !important;
		height /**/:70px;
		padding-top: 70px;
		display	: block;
		background	: url("../images/banner/contact_sp.png") no-repeat;
		background-size:703px 163px;
		background-size:302px 70px;		/* 43% */
		background-position:  0 0;
	}
	.cntbn .contbanner  a:hover{
		display	: block;
		background	: url("../images/banner/contact_sp.png") no-repeat;
		background-size:301px 70px;		/* 43% */
		background-position:  0 0;
	}

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

		.cntbn {
			margin: 0 auto 0 auto;
			width: 90%;
			padding-bottom:140px;
/*			background-color:#F5F5F5;	*/
			background	: url("../images/bg/bg01.png") no-repeat;
			background-size:contain;
			background-position:  center 0;
			position:relative; 
		}
		.cntbn p {
			margin: 0 auto 0 auto;
			width: 70%;
			text-align:center;
			font-size:18px;
			line-height:1.8em;
			font-weight:normal;
			font-family: "Noto Sans JP", serif;
			font-optical-sizing: auto;
			font-weight: 500;
			font-style: normal;
			font-display: swap;
			color:#fff;
			padding-top:30px;
			padding-bottom:0px;
		}
		.cntbn .contbanner {			/*  CONTACT */
			margin: 0px auto 0 auto;
			width : 802px;
			height: 103px;
			display	: block;
			text-indent: -99999px;	/* テキスト非表示 */
			border	: 0px;
		}
		.cntbn .contbanner  a{
			overflow: hidden;	 /* 内容を非表示にする。*/
			width : 802px;
			height: 0 !important;
			height /**/:103px;
			padding-top: 103px;
			display	: block;
			background	: url("../images/banner/contact.png") no-repeat;
			background-size:802px 103px;
			background-position:  0 0;
		}
		.cntbn .contbanner  a:hover{
			display: block;
			background	: url("../images/banner/contact_ov.png") no-repeat;
			background-size:802px 103px;
			background-position:  0 0;
		}
	}

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

	}

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

	#toContact {
		position: fixed;
		bottom: 150px;
		right: 0px;
		z-index:9999999;
	}
	#toContact a {
		display: block;
		width: 71px;
		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;
		}
	}

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

	#toTel {
		display: block;
		position: fixed;
		bottom: 0;
		left:20%;
		width : 242px;
		height: 56px;
		text-indent: -99999px;	/* テキスト非表示 */
		border	: 0px;
		z-index:9;
	}
	#toTel a {
		overflow: hidden;	 /* 内容を非表示にする。*/
		width : 242px;
		height: 0 !important;
		height /**/:56px;
		padding-top: 56px;
		display	: block;
		background: url(../images/menu/tel.png) no-repeat;
		background-size:242px 56px;
		background-position:  0 0;
	}
	#toTel a:hover {
		display: block;
		background: url(../images/menu/tel.png) no-repeat;
		background-size:242px 56px;
		background-position:  0 0;
	}

	@media only screen and (min-width: 993px) and (max-width: 1400px) {	/*◇ PC-S */

		#toTel {

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

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

		#toTel {
			display:block;
			position: fixed;
			bottom: 0;
			left:0;
			width: 194px;
			height:45px;
			text-indent: -99999px;	/* テキスト非表示 */
			border: 0px;
			z-index:9;
		}
		#toTel a {
			overflow: hidden;	 /* 内容を非表示にする。*/
			width : 194px;
			height: 0 !important;
			height /**/:45px;
			padding-top: 45px;
			display	: block;
			background: url(../images/menu/tel.png ) no-repeat;
			background-size:242px 56px;
			background-size:194px 45px;	/* 80% */
			background-position:  0 0;
		}
		#toTel a:hover {
			display: block;
			width: 194px;
			height:45px;
			background: url(../images/menu/tel.png) no-repeat;
			background-size:194px 45px;	/* 80% */
			background-position:  0 0;
		}
	}

/* ■ ファンクラブ　----------------------------------------------*/

	#toFunClub {
		position: fixed;
		bottom: 0px;
		right: 400px;
		width : 242px;
		height: 56px;
		display	: block;
		text-indent: -99999px;	/* テキスト非表示 */
		border	: 0px;
		z-index:9;
	}
	#toFunClub a {
		overflow: hidden;	 /* 内容を非表示にする。*/
		width : 242px;
		height: 0 !important;
		height /**/:56px;
		padding-top: 56px;
		display	: block;
		background: url(../images/menu/funclub.svg) no-repeat;
		background-size:242px 56px;
		background-position:  0 0;
	}
	#toFunClub a:hover {
		display: block;
		background: url(../images/menu/funclub_ov.svg) no-repeat;
		background-size:242px 56px;
		background-position:  0 0;
	}
	@media only screen and (min-width: 993px) and (max-width: 1400px) {	/*◇ PC-S */

		#toFunClub {
			display: block;
			position: fixed;
			bottom: 0;
			right:7%;
			z-index:9;
		}
	}
	@media only screen and (min-width: 768px) and (max-width: 992px) {

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

		#toFunClub {
			display:block;
			position: fixed;
			bottom:0;
			left:0;
			width : 195px;
			height: 45px;
			display	: block;
			text-indent: -99999px;	/* テキスト非表示 */
			border	: 0px;
			z-index:9;
		}
		#toFunClub  a {
			overflow: hidden;	 /* 内容を非表示にする。*/
			width : 194px;
			height: 0 !important;
			height /**/:45px;
			padding-top: 45px;
			display	: block;
			background: url(../images/menu/funclub.svg ) no-repeat;
			background-size:242px 56px;
			background-size:194px 45px;	/* 80% */
			background-position:  0 0;
		}
		#toFunClub  a:hover {
			display: block;
			width: 194px;
			height:45px;
			background: url(../images/menu/funclub_ov.svg ) no-repeat;
			background-size:194px 45px;	/* 80% */
			background-position:  0 0;
		}
	}

/* ■ オンライン相談　----------------------------------------------*/

	#toOnline {
		position: fixed;
		bottom: 0px;
		right: 8%;
		width : 242px;
		height: 56px;
		display	: block;
		text-indent: -99999px;	/* テキスト非表示 */
		border	: 0px;
		z-index:9;
	}
	#toOnline a {
		overflow: hidden;	 /* 内容を非表示にする。*/
		width : 242px;
		height: 0 !important;
		height /**/:56px;
		padding-top: 56px;
		display	: block;
		background: url(../images/menu/online.svg) no-repeat;
		background-size:242px 56px;
		background-position:  0 0;
	}
	#toOnline a:hover {
		display: block;
		background: url(../images/menu/online_ov.svg) no-repeat;
		background-size:242px 56px;
		background-position:  0 0;
	}
	@media only screen and (min-width: 993px) and (max-width: 1400px) {	/*◇ PC-S */

		#toOnline {
			display: block;
			position: fixed;
			bottom: 0;
			right:7%;
			z-index:9;
		}
	}
	@media only screen and (min-width: 768px) and (max-width: 992px) {

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

		#toOnline {
			display:block;
			position: fixed;
			bottom:0;
			right:0;
			width : 195px;
			height: 46px;
			display	: block;
			text-indent: -99999px;	/* テキスト非表示 */
			border	: 0px;
			z-index:9;
		}
		#toOnline  a {
			overflow: hidden;	 /* 内容を非表示にする。*/
			width : 194px;
			height: 0 !important;
			height /**/:46px;
			padding-top: 46px;
			display	: block;
			background: url(../images/menu/online.svg ) no-repeat;
			background-size:242px 57px;
			background-size:194px 46px;	/* 80% */
			background-position:  0 0;
		}
		#toOnline  a:hover {
			display: block;
			width: 194px;
			height:46px;
			background: url(../images/menu/online_ov.svg ) no-repeat;
			background-size:194px 46px;	/* 80% */
			background-position:  0 0;
		}
	}

/* ■ 見積請求　----------------------------------------------*/

	#toEstimate {
		display: block;
		position: fixed;
		bottom: 150px;
		right: 0;
		width : 60px;
		height: 240px;
		display	: block;
		text-indent: -99999px;	/* テキスト非表示 */
		border	: 0px;
		z-index:9;
	}
	#toEstimate a {
		overflow: hidden;	 /* 内容を非表示にする。*/
		width : 60px;
		height: 0 !important;
		height /**/:240px;
		padding-top: 240px;
		display	: block;
		background: url(../images/menu/estimate.svg) no-repeat;
		background-size:60px 240px;
		background-position:  0 0;
	}
	#toEstimate a:hover {
		display: block;
		background: url(../images/menu/estimate_ov.svg) no-repeat;
		background-size:60px 240px;
		background-position:  0 0;
	}
	@media only screen and (min-width: 993px) and (max-width: 1400px) {	/*◇ PC-S */

		#toEstimate {
			display: block;
			position: fixed;
			bottom: 0;
			right:7%;
			z-index:9;
		}
	}
	@media only screen and (min-width: 768px) and (max-width: 992px) {

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

		#toEstimate {
			display:none;
		}
	}

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

	#toPageTop {
		position: fixed;
		bottom: 18px;
		right: 9px;
		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: 230px;
		left: 10px;
		z-index:99;
	}
	#FG a {
		display: block;
		width: 13px;
		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;
		}
	}


/* ■CTA Contents of banner */

	.cta {
		margin: 0 auto 10px auto;
		width: 100%;
		padding-bottom:5px;
/*		background-color:linear-gradient(180deg,white 0%,white 5%,#F4F4F4 5%,#F4F4F4 85%,white 85%,white 100%);	*/	/* ★ */
			background:linear-gradient(180deg,#F4F4F4 20%,#F4F4F4 80%,white 100%);
	}
	.cta 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;
	}
	.cta ul li {
		display:block;
		margin: 0 0 20px 0;
		width :50%;
	}
	.cta ul li a {
		display:block;
		margin: 0 auto 0 auto;
		width :261px;
		height:71px;	/* 65% */
		width :170px;
		height:46px;
	}
	.cta ul li img {
		display:block;
		margin: 0 auto 0 auto;
		width :170px;
		height:46px;
	}
	.cta 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) {

		.cta {
			margin: 30px 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%);
		}
		.cta ul {
			margin: 0 auto 0 auto;
			display:flex;
			flex-wrap:wrap;
			justify-content: space-between;	
			justify-content: flex-start;
			width: 70%;
			padding-top:50px;
			padding-bottom:20px;
		}
		.cta ul li {
			display:block;
			margin: 0 0 30px 0;
			width :25%;
			height:71px;
			padding-bottom:0;
		}
		.cta ul li a {
			margin: 0 auto 0 auto;
			display:block;
			width :261px;
			height:71px;
		}
		.cta ul li img {
			display:block;
			margin: 0 auto 0 auto;
			width :261px;
			height:71px;
		}
		.cta 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: 993px) and (max-width: 1400px) {	/*◇ PC-S */

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

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

/* ■PC SNS contents  */
	.pcsns {
		display:block;
		margin: 0 auto 0 auto;
		width: 100%;
		height:80px;
		padding-bottom:10px;
		background-color:#FFF;
	}
	.pcsns ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin:0 auto 0 auto;
		width:90%;
		height:40px;
	}
	.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;
		padding-top:10px;
	}
	.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%;
	}


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

		.pcsns {
			display:block;
			margin: 0 auto 0 auto;
			width: 100%;
			height:80px;
			padding-bottom:10px;
			background-color:#FFF;
		}
		.pcsns ul {
			display: flex;
			justify-content: space-between;
			flex-wrap: wrap;
			margin:0 11% 0 auto;
			width:25%;
			height:50px;
		}
		.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%;
		}

	}

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

	.fmenu {
		display:block;
		margin: 0 auto 0 auto;
		width:100%;
		padding-bottom:50px;
/*		background-color:#F4F4F4;
		background-color:#fff;	*/
		background:linear-gradient(180deg,#F4F4F4 0%,#F4F4F4 18%,white 30%,white 100%);	/* ★ *//*		border-top:1px solid #BDC3C7;	*/	/* Siver */
		position:relative;
	}
	.fmenu ul {
		margin:0 auto 0 auto;
		display:flex;
		flex-wrap:nowrap;
		justify-content: space-between;	/* 両端のアイテムを余白を空けずに配置し、他の要素は均等に間隔を空けて配置 */
		width: 85%;
	}
	.fmenu ul.fm01 {
		margin:0 auto 0 10%;
		padding-top:15px;
		padding-bottom:5px;
	}
	.fmenu ul.fm01 li {
		width: 12%;
		padding-bottom:0;
		text-align:left;
		font-size:15px;
		font-family: "Noto Sans JP", serif;
		font-optical-sizing: auto;
		font-weight: 500;
		font-style: normal;
		font-display: swap;
		color:#333;
		line-height:1.5em;
		padding-bottom:0px;
	}
	.fmenu ul.fm01 li:first-child {
		width: 12%;
	}
	.fmenu ul.fm01 li:nth-child(2) {
		width: 13%;
	}
	.fmenu ul.fm01 li:nth-child(3) {
		width: 13%;
	}
	.fmenu ul.fm01 li:nth-child(4) {
		width: 13%;
	}
	.fmenu ul.fm01 li:nth-child(6) {
		width: 11%;
	}
	.fmenu ul.fm01 li:last-child {
	}

	.fmenu ul li>a {
		font-family: "Noto Sans JP", serif;
		font-optical-sizing: auto;
		font-weight: 500;
		font-style: normal;
		font-display: swap;
		color:#333;
		color:#333;
	}
	.fmenu ul li>a:hover {
		color: #d03c1b;		/* svs-red01 */
	}
	.fmenu .fm02 {
		margin:20px auto 0 auto;
		width:220px;
		padding-bottom:0px;
		padding-left:0px;
	}
	.fmenu .fm02 p {
		width:100%;
		text-align:left;
		font-size:15px;
		font-family: "Noto Sans JP", serif;
		font-optical-sizing: auto;
		font-weight: 400;
		font-style: normal;
		font-display: swap;
		line-height:1.3em;
 		padding-left:2.0em;
	 	text-indent:-2.0em;	/* 2行目以降1字下げ */
		color: #A4966A;		/* Gold01 */
		padding-bottom:10px;
	}
	.fmenu .fm02 p a {
		color: #A4966A;		/* Gold01 */
		color: #333;
	}
	.fmenu .fm02 p a:hover {
		color: #DCB122;		/* HISAYA-brown02 */
	}
	.fmenu .pp {			/* privacy policy */
		display: block;
		position: absolute;
		bottom:12px;
		left:10%;
		width : 200px;
		height: 50px;
	}
	.fmenu .pp a {
		font-family: "Noto Sans JP", serif;
		font-optical-sizing: auto;
		font-weight: 500;
		font-style: normal;
		font-display: swap;
		color:#333;
		font-size:14px;
	}
	.fmenu .pp a:hover {
		color: #B27C04;		/* Gold02 */
	}

	.fmenu .symbl {
		position:absolute;
		top:-170px;
		right:11%;
		width:331px;
		height:105px;
		z-index:1;
	}

	@media only screen and (max-width:992px) {	/* SP Layout ◇ */
		.fmenu {
			display:none;
		}
	}

	.footer01 {
		margin: 0 auto 0 auto;
		width:100%;
		height: 160px;
		background-color: #FFF;
		position: relative;
	}
	.footer01 .flogo {	
		position: absolute;
		top: 0;
		left:10%;
		width : 225px;
		height: 96px;
		display	: block;
		text-indent: -99999px;	/* テキスト非表示 */
		border	: 0px;
	}
	.footer01 .flogo a {
		overflow: hidden;	 /* 内容を非表示にする。*/
		width : 225px;
		height: 0 !important;
		height /**/:96px;
		padding-top: 96px;
		display	: block;
		background	: url("../images/com/logo02.svg") no-repeat;
		background-size:225px 96px;	/* 100% */
		background-size:225px 96px;
	}
	.footer01 .flogo a:hover {
		display	: block;
		background	: url("../images/com/logo02.svg") no-repeat;
		background-size:225px 96px;
	}
	.footer01 dl,dt,dd {
		display:block;
	}
	.footer01 dl {
		position: absolute;
		top: 0;
		left:25%;
		width :450px;
		width :30%;
		text-align:left;
	}
	.footer01 dt {
		font-weight:bold;
		font-size:17px;
		color: #333;
		padding-bottom:10px;
	}
	.footer01 dd {
		font-size:15px;
		line-height:1.7em;
		font-weight:normal;
		font-family: "Noto Sans JP", serif;
		font-optical-sizing: auto;
		font-weight: 400;
		font-style: normal;
		font-display: swap;
		color:#333;
	}
	.footer01 ul {
		display:block;
		position: absolute;
		top: 50px;
		left:65%;
		left:70.75%;
		width :250px;
	}
	.footer01 li {
		float:left;
		padding-left:50px;
		padding-bottom:20px;
		font-size:13px;
		font-weight:600;
		letter-spacing: 0.1em;
	}
	.footer01 li a {
		color:#333;
	}
	.footer01 li a:hover {
		color: #d03c1b;		/* svs-red01 */
	}
	.footer01 dd a {
		color:#333;
	}
	.footer01 dd a:hover {
		color: #d03c1b;		/* svs-red01 */
	}
	.footer02 {
		margin: 0 auto 0 auto;
		width:100%;
		height: 35px;
		background-color: #E6E6E6;
		border-top: 1px solid #BDC3C7;		/* Siver */
		position: relative;
	}
	.footer02sp {
		display:none;
	}
	@media only screen and (min-width: 993px) and (max-width: 1400px) {	/*◇ PC-S */

		.fmenu ul {
			width: 90%;
		}
		.fmenu ul.fm01 li {
			width: 11%;
			font-size:13px;
		}
		.fmenu ul.fm01 li:last-child {
		}
		.fmenu .fm02 p {
			width:85%;
			font-size:11px;
			line-height:1.5em;
	 		padding-left:1.0em;
		 	text-indent:-1.0em;	/* 2行目以降1字下げ */
		}
		.footer01 .flogo {	
			position: absolute;
			top: 25px;
			left:7.5%;
			width : 220px;
			height: 93px;
		}
	}

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

		.footer01 {
			margin: 0 auto 0 auto;
			width:100%;
			height: 140px;
			height: 150px;
			background-color: #FFF;
			position: relative;
		}
		.footer01 .flogo {	
			display	:block;
			position: absolute;
			top: 0px;
			left:70%;
			width : 113px;
			height: 48px;
			text-indent: -99999px;	/* テキスト非表示 */
			border: 0;
		}
		.footer01 .flogo a{
			overflow: hidden;	 /* 内容を非表示にする。*/
			width : 113px;
			height: 0 !important;
			height /**/:48px;
			padding-top: 48px;
			display	: block;
			background	: url("../images/com/logo02.svg") no-repeat;
			background-size:225px 96px;
			background-size:113px 48px;		/* 50% */
		}
		.footer01 .flogo a:hover{
			display	: block;
			background	: url("../images/com/logo02.svg") no-repeat;
			background-size:113px 48px;		/* 50% */
		}
		.footer01 dl,dt,dd {
			display:block;
		}
		.footer01 dl {
			position: absolute;
			top: 30px;
			left:10%;
			width :90%;
			text-align:left;
		}
		.footer01 dt {
			font-size:14px;
			font-weight:bold;
			color: #A4966A;		/* Gold01 */
			color:#333;
			padding-bottom:10px;
		}
		.footer01 dd {
			font-size:11.5px;
			color:#333;
			padding-bottom:3px;
		}
		.footer01 ul {
			display:none;
		}
		.footer01 .pcftpp {		/* privacy policy */
			display:none;
		}
		.footer02 {
			display:none;
			margin: 0 auto 0 auto;
			width:100%;
			height: 40px;
			padding-bottom:0;
			position: relative;
		}
		.footer02sp {
			display:block;
			margin:0 auto 0 auto;
			width:100%;
			height: 50px;
			position: relative;
		}
		.footer02sp .ftanksp {
			font-size:11px;
			color:#333;
		}
		.footer02sp #ftank03 {
			display:block;
			float: left;
			width:50%;
			padding:5px;
			padding-left:10%;
		}
		.footer02sp #ftank04 {
			display:block;
			float: left;
			width:50%;
			padding:8px;
		}
		@media only screen and (min-width:414px) {

			.footer02sp {
				display:block;
				margin:0 auto 0 auto;
				width:100%;
				height: 30px;
				border-Top: 1px solid #BDC3C7;		/* Silver */
				background-color: #F5F5F5;
				position: relative;
			}
		}
		@media only screen and (max-width:320px) {

			.footer01 ul {
				position: absolute;
				top: 230px;
				left:-9%;
				width :100%;
				width :250px;
			}
			.footer02sp #ftank03 {
				width:40%;
				height: 30px;
				padding:8px;
			}
			.footer02sp #ftank04 {
				width:50%;
				height: 30px;
				padding:8px;
			}
		}
		/* Tablet Layout ◇ */
		@media only screen and (min-width: 768px) and (max-width: 992px) {

			.footer01 {
				margin: 0 auto 0 auto;
				width:100%;
				height: 160px;
				background-color: #FFF;
				position: relative;
			}
			.footer01 dl {
				position: absolute;
				left:12.5%;
				left:5%;
			}
			.footer01 ul {
				position: absolute;
				top: 150px;
				left:60%;
				width :300px;
			}
			.footer01 li {
				float:left;
				padding-left:50px;
			}
			.footer01 .flogo {	
				position: absolute;
				top: 45px;
				left:80%;
			}

			.footer02sp {
				display:block;
				margin:0 auto 0 auto;
				width:100%;
				height: 30px;
				border-Top: 1px solid #BDC3C7;		/* Silver */
				background-color: #F5F5F5;
				position: relative;
			}
			.footer02sp #ftank03 {
				display:block;
				float: left;
				width:27%;
				padding:8px;
				padding-left:80px;
			}
			.footer02sp #ftank04 {
				display:block;
				float: left;
				width:50%;
				padding:8px;
			}
		}

	}
	.footer02 .ftank {
		font-size:13px;
		color:#333;
	}
	.footer02 #ftank01 {
		position: absolute;
		top: 12px;
		right:15%;
		right:18%;
	}
	.footer02 #ftank02 {
		position: absolute;
		top: 10px;
		left:35%;
	}

	/* copy right ---------------------*/

	.footer03 {
		position: relative;
		width:100%;
		height: 40px;
		background-color:#0c3484;		/* svs-blue  */
	}
	.footer03 .copy {
		margin: 0 auto 0 auto;
		padding-top: 12px;
		text-align:center;
		font-size: 12px;
		color: #FFF;
		font-family: "Noto Sans JP", serif;
		font-optical-sizing: auto;
		font-weight: 400;
		font-style: normal;
		font-display: swap;
	}

	@media only screen and (max-width:992px) {	/* SP Layout ◇ */
		.footer03 {
			display:none;
		}
	}
	.footer03sp {
		margin-top:0;
		margin-bottom:46px;
		position: relative;
		width:100%;
		height: 30px;
		background-color:#0c3484;		/* svs-blue  */
		z-index:8;
	}
	.footer03sp .copy {
		margin: auto;
		margin-top:0;
		width:100%;
		max-width:360px;
		height:20px;
		text-align:center;
		padding-top:10px;
		font-size: 10px;
		line-height:12px;
		font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "小塚ゴシック Pro","Kozuka Gothic Pro","メイリオ", 
						Meiryo, Osaka, helvetica, arial,
						"游ゴシック体", YuGothic,"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		font-display: swap;
		color:#fff;
	}

	@media only screen and (min-width:992px) {	/* PC Layout ◇ */
		.footer03sp {
			display:none;
		}
		.Navsp ul {				/*  Block横均等配置 ◆*/
			width:100%;
			display:flex;
			justify-content: center;
			padding:0;
			padding-top:0px;
			list-style: none;
		}
	}


	/* 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:#F18F01;		/* yosca-orange01 */
		border: 2px solid #F18F01;		/* yosca-orange01 */
		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:#F18F01;		/* yosca-orange01 */
		border: 2px solid #F18F01;		/* yosca-orange01 */
		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 ---------------------------------*/

	/* ★ 要素のはみ出し解決 ----------------------------------------------- */

		body {
			overflow-x: hidden;	/* ★ 横方向はみ出した部分を非表示にする */
		}

	/* ◇ 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;
	}

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

	a {
		color: #777;
	}
	a:hover {
		color: #B27C04;		/* Gold02 */
	}
	/* 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;
		}
	}

	.svs-blue {
		color: #0c3484;		/* svs-blue  */
	}
	.svs-red {
		color: #e60012;		/* svs-red */
	}
	.svs-red01 {
		color: #d03c1b;		/* svs-red01 */
	}
	.svs-gray01 {
		color: #b5b9ba;		/* gvss-gray01 */
	}
	.svs-gray02 {
		color: #EFEFEF;		/* gvss-gray02 */
	}
	.svs-gray03 {
		color: #F1F3F6;		/* gvss-gray03 */
	}
	.svs-green {
		color: #57ab34;		/* svs-green  */
	}
	.svs-orange {
		color: #ffb71a;		/* svs-orange  */
	}

	.svs-gray08 {
		color: #ACA59B;		/* gvss-gray02 font */
	}
	.svs-gray00 {
		color: #4B4B4A;		/* gvss-gray03 font */
	}
	.beige-gray {
		color: #F9F7F1;		/* beige-gray */
	}
	.beige-gray02 {
		color: #FAF9F7;		/* beige-gray02 */
	}
	.beige-gray03 {
		color: #F7F6F2;		/* beige-gray03 libero */
	}

	.beige {
		color: #E7DDD2;		/* beige */
	}
	.gold {
		color: #A4966A;		/* Gold01 */
	}
	.goldc02 {
		color: #B27C04;		/* Gold02 */
	}
	.silver {
		color: #BDC3C7;		/* Siver */
	}
	.uline {
		border-bottom: 1px solid #B27C04;
	}
