@charset "utf-8";



/* ****************************************************
Title: layout.css
***************************************************** */
/*---------mmenu--------------*/
.mm-panels {
	text-align: left;
}

/* -------------------------------------------------------------------- 
 body
-------------------------------------------------------------------- */

body {
	color: #494949;
	background-color: #ffffff;

	font-family: 'Zen Kaku Gothic New', sans-serif;
	/*ウェブフォント指定*/

	font-size: 13px;
	font-size: small;
	text-align: center;
	text-size-adjust: 100%;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	max-height: 999999px;
	padding: 0;
	margin: 0;
}

.webFontRoboto {
	font-family: 'Roboto', sans-serif;
}

#wrap {
	overflow: hidden;
	/*width: 640px;*/
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding: 0px;
	min-width: 1160px;
}

img {
	vertical-align: bottom;
	width: auto;
	max-width: 100%;
	height: auto;
}

.relative-wrap {
	position: relative;
}

.contDispN {
	display: none;
}

p,
span,
dt,
dd,
th,
td,
li,
h1,
h2,
h3,
h4 {
	max-height: 999999px;
	background-image: url("../img/spacer.gif");
}


/*-----------------------*/

.anc {
	position: relative;
}

.ancIn {
	position: absolute;
	top: -100px;
}

/*-----------------------*/

.pc {
	display: block !important;
}

.sp {
	display: none !important;
}

.pcBr {
	display: inline;
}

.spBr {
	display: none;
}

.pcFlex {
	display: flex !important;
}

.spTable {
	display: none !important;
}

.pcTable {
	display: table !important;
}

.spTable {
	display: none !important;
}

.pcTableCell {
	display: table-cell !important;
}

.spTableCell {
	display: none !important;
}

.pc02 {
	display: inline-block !important;
}

.sp02 {
	display: none !important;
}

.contIn {
	width: 1060px;
	margin: 0px auto;
	position: relative;
}

.contIn1000 {
	width: 1000px;
	margin: 0px auto;
	position: relative;
}

.contIn1030 {
	width: 1030px;
	margin: 0px auto;
	position: relative;
}

.dispBlock01 {
	display: block;
}

.radius200 {
	-moz-border-radius: 200px;
	-webkit-border-radius: 200px;
	-o-border-radius: 200px;
	-ms-border-radius: 200px;
	border-radius: 200px;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	body {}

	#wrap {
		overflow: hidden;
		width: auto;
		margin-top: 0px;
		margin-right: auto;
		margin-bottom: 0px;
		margin-left: auto;
		padding: 0px;
		min-width: 320px;
	}

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

	/*-----------------------*/

	.anc {
		position: relative;
	}

	.ancIn {
		position: absolute;
		top: -60px;
	}


	/*-----------------------*/

	.pc {
		display: none !important;
	}

	.sp {
		display: block !important;
	}

	.pcBr {
		display: none;
	}

	.spBr {
		display: inline;
	}

	.pcFlex {
		display: none !important;
	}

	.spTable {
		display: flex !important;
	}

	.pcTable {
		display: none !important;
	}

	.spTable {
		display: table !important;
	}

	.pcTableCell {
		display: none !important;
	}

	.spTableCell {
		display: block !important;
	}

	.pc02 {
		display: none !important;
	}

	.sp02 {
		display: block !important;
	}

	.contIn {
		width: auto;
	}

	.contIn1000 {
		width: auto;
	}

	.contIn1030 {
		width: auto;
	}
}

.pageWrap.page {
	padding-top: 0;
}

.pageWrap.hLinkNone {
	padding-top: 60px;
}

.menuSpWrap {
	display: none;
}

.pcHeaderWrap {
	width: 100%;
	min-width: 1110px;
	background: #fff;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 100;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.pcHeaderWrap:hover {
	background: #fff;
}

.pcHeaderWrap.borderB {
	border-bottom: solid 1px #707070;
}

.pageWrap.page .pcHeaderWrap {
	background-color: #fff;
}

.pcHeaderWrap.bgWh01,
.pcHeaderWrap.page.bgWh01 {
	background-color: rgb(255, 255, 255, 1);
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.pcHeader {
	padding-bottom: 0;
	/*overflow: hidden;*/
	height: 54px;
}

.headerBtnWrap01 {
	float: right;
	height: inherit;
}

.headerBtnWrap01 ul {
	display: table;
	height: inherit;
	margin: 0;
}

.headerBtnWrap01 li {
	padding-left: 2px;
	font-size: 14px;
	display: table-cell;
	vertical-align: middle;
	height: inherit;
}

/*テキストリンク*/
.headerBtnWrap01 li .txtBtn {
	display: table-cell;
	vertical-align: middle;
	position: relative;
	padding: 0 0 0 5px;
}

.headerBtnWrap01 li .txtBtn a {
	position: relative;
}

.headerBtnWrap01 li .txtBtn a:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0px;
	width: 5px;
	height: 5px;
	margin-top: -2px;
	border-top: 1px solid #2B2A2A;
	border-right: 1px solid #2B2A2A;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	display: block;
}

.headerBtnWrap01 li:last-child {
	padding-right: 10px;
}

.headerBtnWrap01 li p a {
	padding: 0 15px;
	color: #2F2F2F;
}

.headerBtnWrap01 li p.txtBtn a:hover {
	opacity: .7;
}

/*ボタンリンク*/
.contBtn {
	display: table;
	margin: 0 1.5px;
}

.contBtn a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	font-size: 12px;
	min-width: 127px;
	height: 35px;
	line-height: 25px;
	font-weight: 500;
	color: #2B2A2A;
	background: #FFB100;
	color: #fff;
	border: solid 1px #FFB100;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.headerBtnWrap01 li p.contBtn a {
	padding: 0 10px;
}

.contBtn a:link {
	color: #2B2A2A;
	text-decoration: none;
}

.contBtn a:visited {
	color: #2B2A2A;
	text-decoration: none;
}

.contBtn a:hover {
	color: #FFB100;
	border: solid 1px #FFB100;
	background-color: #fff;
	text-decoration: none;
}

.contBtn a:active {
	color: #FFB100;
	text-decoration: none;
}

/*ボタン橙色*/
.contBtn.btnOr a {
	color: #2B2A2A;
	background: #FFB100;
	border: solid 1px #FFB100;
}

.contBtn.btnOr a:link {
	color: #2B2A2A;
	text-decoration: none;
}

.contBtn.btnOr a:visited {
	color: #2B2A2A;
	text-decoration: none;
}

.contBtn.btnOr a:hover {
	color: #FFB100;
	border: solid 1px #FFB100;
	background-color: #fff;
	text-decoration: none;
}

.contBtn.btnOr a:active {
	color: #FFB100;
	text-decoration: none;
}

/*ボタン緑*/
.contBtn.btnGr a {
	color: #fff;
	background: #334A85;
	border: solid 1px #334A85;
}

.contBtn.btnGr a:link {
	color: #fff;
	text-decoration: none;
}

.contBtn.btnGr a:visited {
	color: #fff;
	text-decoration: none;
}

.contBtn.btnGr a:hover {
	color: #334A85;
	border: solid 1px #334A85;
	background-color: #fff;
	text-decoration: none;
}

.contBtn.btnGr a:active {
	color: #334A85;
	text-decoration: none;
}

/*サーチボタン*/
.contSearchBtn {
	display: table;
	padding: 0 5px;
}

/*ロゴ*/
.contLogo {
	display: table;
	margin: 0 8px 0 4px;
}

.contLogo img {
	width: 67px;
}

.headLi01 {
	display: table;
}

.headLi01 a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: 44px;
	padding: 0px 18px;
}

.headLi01 a:hover {
	text-decoration: underline;
}

.logoWrap01 {
	padding: 0 0 0 20px;
	text-align: left;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	float: left;
	height: inherit;
	position: relative;
	top: 0;
}

.hLogo01 {
	display: block;
	font-size: 11px;
	line-height: 1.6em;
	font-weight: 500;
	color: #2F2F2F;
	padding: 0 0 0 0;
	width: 177px;
}

.naviWrap01 {
	height: auto;
	padding: 0 0 0;
	position: relative;
}

.naviWrap01 .headerNavi {
	display: table;
	margin: 0 auto 0;
	padding: 0;
}

.naviWrap01 .headerNavi>li {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: inherit;
	padding: 0 20px 5px;
}

.naviWrap01 .headerNavi>li.gnviIco>a,
.naviWrap01 .headerNavi>li.gnviIco>p {
	position: relative;
	display: block;
	width: auto;
	padding: 0;
	padding-left: 30px;
}

.naviWrap01 .headerNavi>li.gnviIco>a::after,
.naviWrap01 .headerNavi>li.gnviIco>p::after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 0;
	left: 0;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.naviWrap01 .headerNavi>li.gnviIco:hover>a::after,
.naviWrap01 .headerNavi>li.gnviIco:hover>p::after {
	background: #334A85;
	width: 100%;
	height: 2px;
}

.naviWrap01 .headerNavi>li.gnviIco>a::before,
.naviWrap01 .headerNavi>li.gnviIco>p::before {
	content: "";
	background: url(../img/ico/gnvi_ico_logo.png) no-repeat;
	background-size: contain;
	width: 23px;
	height: 23px;
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -13px;
}

.naviWrap01 .headerNavi>li.gnviIco01>a::before,
.naviWrap01 .headerNavi>li.gnviIco01>p::before {
	background: url(../img/ico/gnvi_ico_logo.png) no-repeat;
	background-size: contain;
	width: 23px;
	height: 23px;
	margin-top: -13px;
}

.naviWrap01 .headerNavi>li.gnviIco02>a::before,
.naviWrap01 .headerNavi>li.gnviIco02>p::before {
	background: url(../img/ico/gnvi_ico02.png) no-repeat;
	background-size: contain;
	width: 20px;
	height: 21px;
	margin-top: -10px;
}

.naviWrap01 .headerNavi>li.gnviIco03>a::before,
.naviWrap01 .headerNavi>li.gnviIco03>p::before {
	background: url(../img/ico/gnvi_ico03.png) no-repeat;
	background-size: contain;
	width: 21px;
	height: 21px;
	margin-top: -11px;
}

.naviWrap01 .headerNavi>li.gnviIco04>a::before,
.naviWrap01 .headerNavi>li.gnviIco04>p::before {
	background: url(../img/ico/gnvi_ico04.png) no-repeat;
	background-size: contain;
	width: 21px;
	height: 19px;
	margin-top: -8px;
}

.naviWrap01 .headerNavi>li.gnviIco05>a::before,
.naviWrap01 .headerNavi>li.gnviIco05>p::before {
	background: url(../img/ico/gnvi_ico05.png) no-repeat;
	background-size: contain;
	width: 24px;
	height: 20px;
	margin-top: -8px;
}

.naviWrap01 .headerNavi>li.gnviIco06>a::before,
.naviWrap01 .headerNavi>li.gnviIco06>p::before {
	background: url(../img/ico/gnvi_ico06.png) no-repeat;
	background-size: contain;
	width: 19px;
	height: 19px;
	margin-top: -10px;
}

.naviWrap01 .headerNavi>li p {
	position: relative;
	display: table;
	width: 100%;
	margin: auto;
	padding: 0 10px;
}

.naviWrap01 .headerNavi li>a,
.naviWrap01 .headerNavi li>p a {
	position: relative;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	font-size: 14px;
	line-height: 2.2;
	font-weight: 500;
	z-index: 1;
	color: #2B2A2A;
}

.naviWrap01 .headerNavi li>p a:hover {
	opacity: .7;
}

/*グローバルナビ二段目*/
.naviWrap02 {
	height: auto;
	position: relative;
	background: #E0E0E0;
	width: 100%;
}

.naviWrap02 .headerNavi {
	display: table;
	margin: auto;
	position: static;
}

.naviWrap02 .headerNavi>li {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	/* height: inherit; */
	height: 36px;
	box-sizing: border-box;
	padding: 7px 5px;
}

.naviWrap02 .headerNavi>li p {
	position: relative;
	display: table;
	width: 100%;
	margin: auto;
	padding: 0 10px;
	font-size: 12px;
	line-height: 1.3em;
	font-weight: 500;
}

.naviWrap02 .headerNavi li>p a {
	position: relative;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	z-index: 1;
	padding: 2px 10px;
	border: 1px solid #707070;
	width: 162px;
}

.naviWrap02 .headerNavi li>p a:hover {
	background: #2B2A2A;
	color: #fff;
}

.naviWrap02 .headerNavi li:hover>p a {
	background: #2B2A2A;
	color: #fff;
}

/* MEGAメニュー メイン */
.naviWrap01 .headerNavi>li .pcNaviMega01 {
	padding: 15px 0 0;
	top: 25px;
	z-index: 5;
}

.pcNaviMegaIn.mega01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.pcNaviMegaIn.mega01 .pcNaviMegaCell {
	padding-right: 23px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 270px;
	box-sizing: border-box;
}

.pcNaviMegaIn.mega01 .pcNaviMegaCell {
	padding-right: 23px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 270px;
	box-sizing: border-box;
}

.pcNaviMegaIn.mega01 .pcNaviMegaCell:last-child {
	padding-right: 0;
}

.pcNaviMegaIn.mega01 .pcNaviMegaCell.first {
	width: 245px;
	padding-right: 35px;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink.title {
	display: table;
	width: 100%;
	text-align: center;
	padding: 0 0;
}

.pcNaviMegaIn.mega01 .naviLink.title>a,
.pcNaviMegaIn.mega01 .naviLink.title>div {
	border: 1px solid;
	padding: 7px 13px;
	color: #334A85;
	display: table-cell;
	vertical-align: middle;
	font-size: 17px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.pcNaviMegaIn.mega01 .naviLink.title span.ttl {
	display: block;
}

.pcNaviMegaIn.mega01 .naviLink.title span.btn {
	background: #334A85;
	color: #fff;
	font-size: 10px;
	margin-top: 15px;
	display: inline-block;
	padding: 2px 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.pcNaviMegaIn.mega01 .naviLink.title span,
.pcNaviMegaIn.mega01 .naviLink.title pan {
	display: block;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink {
	padding: 0 0 20px;
	font-size: 12px;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink ul {
	margin: 10px 0 0;
	list-style: none;
	position: relative;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink ul li {
	position: relative;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink>ul {
	color: #2B2A2A;
	padding-left: 0;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink>ul>li {}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink>ul>li a {
	font-size: 12px;
	position: relative;
	padding-left: 16px;
	text-align: left;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink>ul>li a:before {
	content: "";
	position: absolute;
	width: 12px;
	height: 1px;
	background: #2B2A2A;
	display: inline-block;
	top: 13px;
	left: 0px;
	margin: 0;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink>ul li>ul {
	padding-left: 0px;
	color: #2B2A2A;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink>ul li>ul li:before {
	content: "・";
}

/* MEGAアイコン */
.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .megaIco {
	position: relative;
	padding-left: 30px;
	display: table;
	min-height: 50px;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .megaIco span {
	display: table-cell;
	vertical-align: middle;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .megaIco:before {
	content: "";
	background: url(../img/ico/mega_ico01_1.png) no-repeat;
	background-size: contain;
	width: 26px;
	height: 26px;
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -13px;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .megaIco.megaIco02 {
	padding-left: 40px;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .megaIco.megaIco02:before {
	content: "";
	background: url(../img/ico/mega_ico01_2.png) no-repeat;
	width: 34px;
	height: 23px;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .megaIco.megaIco03 {
	padding-left: 40px;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .megaIco.megaIco03:before {
	content: "";
	background: url(../img/ico/mega_ico01_3.png) no-repeat;
	width: 31px;
	height: 29px;
}

/* MEGAメニュー */
.headerNavi li {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.pcNaviMega01 {
	box-sizing: border-box;
	width: 100%;
	padding: 50px 20px 20px 20px;
	position: absolute;
	top: 0;
	left: 0;
	margin-left: 0;
	margin-top: 7px;
	visibility: hidden;
	opacity: 0;
	transition: 0.5s;
	z-index: -1;
}

.headerNavi li:hover .pcNaviMega01,
.headerNavi li .pcNaviMega01:hover {
	opacity: 1;
	visibility: visible;
}

.pcNaviMega01 .pcNaviMega01Inner {
	padding: 30px 35px;
	max-width: 1060px;
	margin: 0 auto;
	font-size: 12px;
	line-height: 1.3em;
	background: rgba(255, 255, 255, 0.95);
	box-sizing: border-box;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaTtl {
	font-size: 12px;
	line-height: 1.3em;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaSubTtl {
	font-size: 15px;
	line-height: 1.5em;
}

.pcNaviMega01 .pcNaviMega01Inner.bgWh .pcNaviMega01LinkFlex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaLinkFlex {}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.first {
	min-width: 200px;
	padding: 0 25px 0 0;
	border-right: 1px solid #2B2A2A;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn a {
	color: #2B2A2A;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn p {
	padding: 0 0 10px;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn .naviLink {
	position: relative;
	padding-left: 20px;
}

/*ボタン*/
.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLinkBtn01 {
	padding: 0 0;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink>ul>li.naviLinkBtn01 {
	padding-left: 0;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn.mega01 .naviLink>ul>li.naviLinkBtn01 a:before {
	content: none;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn .naviLinkBtn01>a {
	background-color: transparent;
	position: relative;
	width: 240px;
	height: 65px;
	font-size: 12px;
	line-height: 1.6666;
	background: #334A85;
	border: #334A85 solid 1px;
	color: #fff;
	display: table;
	text-align: left;
	text-decoration: none;
	padding: 0 20px;
	box-sizing: border-box;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn .naviLinkBtn01>a::after {
	content: "";
	background: url(../img/ico/mega_btn_arrow.png) no-repeat;
	background-size: contain;
	width: 23px;
	height: 23px;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -13px;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn .naviLinkBtn01>a:hover {
	background: #fff;
	color: #334A85;
	opacity: 1;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn .naviLinkBtn01>a span {
	display: table-cell;
	vertical-align: middle;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn ul {
	padding-left: 20px;
	list-style: inside;
	color: #fff;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn ul li {
	margin: 0 0 10px;
	/*pointer-events: none;*/
	-webkit-transition: opacity 0.2s ease;
	transition: opacity 0.2s ease;

}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn ul li ul li {
	text-indent: -1.5em;
	padding-left: 1em;
}

.pcNaviMega01 .pcNaviMega01Inner .pcNaviMegaIn a::before {
	background-image: url("../img/arrow.png");
}

.pcNaviMegaIn {
	display: inline-block;
	text-align: left;
	vertical-align: top;
	padding: 0;
}

.headerNavi .pcNaviMegaIn p {
	padding: 0 25px;
	color: #fff;
}

.headerNavi .pcNaviMegaIn a {
	background-color: transparent;
	color: #ffffff;
	position: relative;
}

.headerNavi .pcNaviMegaIn a:hover {
	opacity: 0.5;
}

.headerNavi .pcNaviMegaIn a.subBtn {
	background-color: transparent;
	color: #092E57;
	position: relative;
	width: 248px;
	height: 70px;
	background: #ddd;
	display: table;
	text-align: center;
	text-decoration: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

.headerNavi .pcNaviMegaIn a.subBtn:hover {
	color: #2B2A2A;
	background: #4D98D0;
}

.headerNavi .pcNaviMegaIn a.subBtn span {
	line-height: 1.6em;
	display: table-cell;
	vertical-align: middle;
}

.headerNavi .pcNaviMega01TxtFlex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 16px;
	line-height: 1.44em;
	color: #6DCCE3;
	justify-content: center;
	margin: 0 0 15px;
}

.headerNavi .pcNaviMega01TxtFlex p {
	padding: 0 25px;
}

/*@media screen and (max-width:1100px) {*/
@media screen and (max-width:1100px) {}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {

	.pageWrap,
	.pageWrap.hLinkNone {
		padding-top: 65px;
	}

	.spHeaderWrap {
		background-color: #ffffff;
		border-bottom: 1px solid #D9D9D9;
		box-sizing: border-box;
		padding: 5px 5px 4px 4px;
		width: 100%;
		position: fixed;
		top: 0px;
		left: 0px;
		z-index: 100;
		height: 65px;
	}

	.spHeaderLogo {
		padding-top: 10px;
		text-align: left;
		float: left;
		width: 150px;
		height: 30px;
	}

	.spHeaderLogo p {
		margin: 0;
	}

	.hLogo01 {
		display: block;
		font-size: 11px;
		line-height: 1.6em;
		font-weight: 500;
		color: #2F2F2F;
	}

	.spHeaderMenu {
		float: right;
		position: relative;
		top: 50%;
		right: 10px;
		width: 35px;
		height: 27px;
		margin: -15px 0 0;
	}

	.spHeaderMenu p {
		margin: 0;
	}

	.spHeaderMenu a {
		display: block;
	}

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


}


/* -------------------------------------------------------------------- 
文字色
-------------------------------------------------------------------- */
/* 白 */
.txtWh {
	color: #fff !important;
}

/* 黒 */
.txtBk {
	color: #191818 !important;
}

/* 赤 */
.txtRed {
	color: #FF371D !important;
}

/* 緑 */
.txtGr {
	color: #204632 !important;
}

.txtGr2 {
	color: #334A85 !important;
}

/* 黄緑 */
.txtLitGr {
	color: #699D00 !important;
}


/* -------------------------------------------------------------------- 
 背景色
-------------------------------------------------------------------- */
/* 白 */
.bgWh {
	background-color: #fff !important;
}

/* 黒 */
.bgBk {
	background-color: #000 !important;
	color: #fff;
}

/* グレー */
.bgGy {
	background-color: #F7F7F7 !important;
}

/* 黄緑 */
.bgLitGr {
	background-color: #F4F8EC !important;
}

.bgLitGr2 {
	background-color: #F5FAF9 !important;
}



/* -------------------------------------------------------------------- 
 ボタン
-------------------------------------------------------------------- */
.contBtnWrap01 {
	display: table;
	width: 278px;
	margin: auto;
	line-height: 45px;
	position: relative;
	padding: 40px 0;
}

/*--幅--*/
.contBtnWrap01.w206 {
	width: 206px;
}

.contBtnWrap01.w260 {
	width: 260px;
}

.contBtnWrap01.w336 {
	width: 336px;
}

.contBtnWrap01.w386 {
	width: 386px;
}

.contBtnWrap01.w414 {
	width: 414px;
}

/*--幅 戻るボタン用--*/
.contBtnWrap01.returnBtn {
	width: 414px;
	line-height: 77px;
	margin: 40px auto;
}

.contBtnWrap01.returnBtn .contBtn01 {
	font-size: 18px;
}

.contBtnWrap01.returnBtn .contBtn01 span {}

/*--縦--*/
.contBtnWrap01.h88 {
	line-height: 88px;
}

.contBtnWrap01.h88 .contBtn01 {
	padding: 15px 0;
	font-size: 16px;
	line-height: 1.8em;
}

.contBtnWrap01.h51 {
	line-height: 51px;
}

.contBtnWrap01.h51 .contBtn01 {
	padding: 3px 0;
	font-size: 16px;
	line-height: 1.4em;
}


.contBtn01 {
	width: inherit;
	height: inherit;
	color: #fff;
	background-color: #191818;
	border: solid 1px #191818;
	color: #fff;
	text-decoration: none;
	font-size: 13px;
	line-height: 1.8em;
	padding: 10px 0;
	position: relative;
	text-align: center;
	display: block;
	margin: 0 auto;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	letter-spacing: 1px;
	box-sizing: border-box;
	font-weight: 500;
}

.contBtn01:link {
	color: #fff;
	text-decoration: none;
}

.contBtn01:visited {
	color: #fff;
	text-decoration: none;
}

.contBtn01:hover {
	color: #191818;
	background-color: #fff;
	text-decoration: none;
}

.contBtn01:active {
	color: #191818;
	text-decoration: none;
}

/*--右矢印--*/
.contBtn01.arrowR:before {
	position: absolute;
	top: 50%;
	bottom: 0;
	right: 13px;
	margin: -4px auto 0;
	content: "";
	vertical-align: middle;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.contBtn01.arrowR:hover:before {
	border-top: 2px solid #191818;
	border-right: 2px solid #191818;
}

/*--↓矢印--*/
.contBtn01.arrowB:before {
	position: absolute;
	top: 50%;
	bottom: 0;
	right: 13px;
	margin: -4px auto 0;
	content: "";
	vertical-align: middle;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.contBtn01.arrowB:hover:before {
	border-top: 2px solid #191818;
	border-right: 2px solid #191818;
}


.contBtn01.ls1 {
	letter-spacing: 1px;
}

.contBtn01.ls2 {
	letter-spacing: 2px;
}

/*--ボタン色--*/
/*緑*/
.contBtn01.btnGr {
	color: #fff;
	background-color: #6a9d00;
	border: solid 1px #6a9d00;
}

.contBtn01.btnGr:hover {
	color: #6a9d00;
	background-color: #fff;
}

.contBtn01.btnGr.arrowR:before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.contBtn01.btnGr.arrowR:hover:before {
	border-top: 2px solid #6a9d00;
	border-right: 2px solid #6a9d00;
}

/*濃い緑*/
.contBtn01.btnDrGr {
	color: #fff;
	background-color: #204632;
	border: solid 1px #204632;
}

.contBtn01.btnDrGr:hover {
	color: #204632;
	background-color: #fff;
}

.contBtn01.btnDrGr.arrowR:before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.contBtn01.btnDrGr.arrowR:hover:before {
	border-top: 2px solid #204632;
	border-right: 2px solid #204632;
}

.contBtn01.btnDrGr.arrowB:hover:before {
	border-top: 2px solid #204632;
	border-right: 2px solid #204632;
}

/*緑*/
.contBtn01.btnGr {
	color: #fff;
	background-color: #699D00;
	border: solid 1px #699D00;
}

.contBtn01.btnGr:hover {
	color: #699D00;
	background-color: #fff;
}

.contBtn01.btnGr.arrowR:before,
.contBtn01.btnGr.arrowB:before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.contBtn01.btnGr.arrowR:hover:before,
.contBtn01.btnGr.arrowB:hover:before {
	border-top: 2px solid #699D00;
	border-right: 2px solid #699D00;
}

/*白（文字、枠緑）*/
.contBtn01.btnWh {
	color: #204632;
	background-color: #fff;
	border: solid 1px #204632;
}

.contBtn01.btnWh:hover {
	color: #fff;
	background-color: #204632;
}

.contBtn01.btnWh.arrowR:before,
.contBtn01.btnWh.arrowB:before {
	border-top: 2px solid #204632;
	border-right: 2px solid #204632;
}

.contBtn01.btnWh.arrowR:hover:before,
.contBtn01.btnWh.arrowB:hover:before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

/*白（文字、枠黒）*/
.contBtn01.btnWh2 {
	color: #191818;
	background-color: #fff;
	border: solid 1px #191818;
}

.contBtn01.btnWh2:hover {
	color: #fff;
	background-color: #191818;
}

.contBtn01.btnWh2.arrowR:before,
.contBtn01.btnWh2.arrowB:before {
	border-top: 2px solid #191818;
	border-right: 2px solid #191818;
}

.contBtn01.btnWh2.arrowR:hover:before,
.contBtn01.btnWh2.arrowB:hover:before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

/*灰色*/
.contBtn01.btnGy {
	color: #fff;
	background-color: #BCBCBC;
	border: solid 1px #BCBCBC;
}

.contBtn01.btnGy:hover {
	color: #BCBCBC;
	background-color: #fff;
}

.contBtn01.btnGy.arrowR:before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.contBtn01.btnGy.arrowR:hover:before {
	border-top: 2px solid #BCBCBC;
	border-right: 2px solid #BCBCBC;
}

.contBtn01.btnGy.arrowB:hover:before {
	border-top: 2px solid #BCBCBC;
	border-right: 2px solid #BCBCBC;
}


/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.contBtnWrap01 {
		width: 100%;
		margin: auto;
		padding: 10px 0;
	}

	.contBtn01 {
		font-size: 13px;
	}

	/*--幅--*/
	.contBtnWrap01.w206,
	.contBtnWrap01.w260,
	.contBtnWrap01.w336,
	.contBtnWrap01.w386,
	.contBtnWrap01.w414 {
		width: 100%;
	}

	.contBtnWrap01.returnBtn {
		width: 100%;
	}

	/*-----------*/
}




/* -------------------------------------------------------------------- 
 main
-------------------------------------------------------------------- */

/*--------------*/

.img_wrap {
	margin: 0 auto;
	overflow: hidden;
	cursor: pointer;
}

.img_wrap img {
	width: 100%;
	transition-duration: 0.5s;
}

.img_wrap:hover img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	transition-duration: 0.5s;
}

.overFlowHid01 {
	overflow: hidden;
}

.maskBg {
	position: relative;
}

.maskBg:before {
	content: ' ';
	width: 100%;
	height: 100%;
	background: rgba(9, 46, 87, 0.6);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}


/*--------------------*/

/* .boxShadow01 {
	-webkit-box-shadow: 5px 5px 5px 5px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: 5px 5px 5px 5px rgba(0, 0, 0, 0.1);
	box-shadow: 5px 5px 5px 5px rgba(0, 0, 0, 0.1);
}

.boxShadow02 {
	-webkit-box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.2);
}

.boxShadow03 {
	-webkit-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.2);
}

.boxShadow04 {
	-webkit-box-shadow: 5px 5px 25px 5px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: 5px 5px 25px 5px rgba(0, 0, 0, 0.1);
	box-shadow: 5px 5px 25px 5px rgba(0, 0, 0, 0.1);
	border: 1px solid rgba(0, 0, 0, 0.05);
} */

/*--------------------*/
.contH3Wrap01 {}

.contH301 {
	text-align: center;
	padding-bottom: 30px;
}

.contH301 .h3Span01 {
	display: inline-block;
	position: relative;
	font-family: 'D-DIN Regular';
	font-weight: normal;
	font-size: 67px;
	margin-bottom: 20px;
	line-height: 1;
	padding-top: 20px;
}

.contH301 .h3Span01.jp {
	font-family: 'Zen Kaku Gothic New', sans-serif;
	font-size: 38px;
	line-height: 1.8em;
	font-weight: bold;
}

.contH301 .h3Span01:after {
	content: "";
	width: 28px;
	height: 2px;
	background-color: #5B890B;
	position: absolute;
	top: 0px;
	left: 50%;
	margin-left: -10px;
}

.contH301 .h3Span02 {
	display: block;
	font-size: 19px;
	line-height: 1.8em;
	font-weight: 500;
	color: #767676;
}

.contTextWrap01 {
	width: 750px;
	margin: 0px auto;
	position: relative;
}

.contTextWrap01.wAuto {
	width: auto;
}

.contTextWrap01.txtAlc {
	text-align: center;
}

.contTextWrap01.txtAlc .contText02 {
	text-align: center;
}

.contTextWrap01 .contText01 {
	font-size: 24px;
	line-height: 2.1em;
	font-weight: bold;
	letter-spacing: 2px;
}

.contTextWrap01 .contText01.fs22 {
	font-size: 22px;
}

.contTextWrap01 .contText02 {
	font-size: 16px;
	line-height: 1.8em;
	font-weight: normal;
	margin-top: 30px;
	text-align: left;
}

/*--------------------*/
/*数字 ※導入事例使用*/
.contH3Wrap01 .numTtlBox {
	padding-top: 20px;
}

.contH3Wrap01 .numTtlBox:after {
	content: "";
	width: 28px;
	height: 2px;
	background-color: #5B890B;
	position: absolute;
	top: 0px;
	left: 50%;
	margin-left: -14px;
}

.contH3Wrap01 .numTtlBox {
	display: block;
	width: 100%;
}

.contH3Wrap01 .numTtlBox .numTtl {
	display: block;
	position: relative;
	font-family: 'D-DIN Regular';
	font-weight: normal;
	font-size: 13px;
	line-height: 1;
	text-align: center;
}

.contH3Wrap01 .numTtlBox .num {
	display: block;
	font-size: 48px;
	line-height: 1;
	padding-top: 0;
	font-family: 'D-DIN Regular';
}


/*--------------------*/



/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.contH3Wrap01 {
		padding: 0 20px;
	}

	.contH301 {
		text-align: center;
		padding-bottom: 10px;
	}

	.contH301 .h3Span01 {
		display: inline-block;
		position: relative;
		font-size: 28px;
		line-height: 1.8em;
	}

	.contH301 .h3Span01.jp {
		font-size: 22px;
	}

	.contH301 .h3Span02 {
		display: block;
		font-size: 18px;
		line-height: 1.8em;
		font-weight: 500;
	}

	.contH301 .h3Span01:after {
		content: "";
		width: 28px;
		height: 2px;
		top: 0px;
		left: 50%;
		margin-left: -10px;
	}

	.contTextWrap01 {
		width: 100%;
		margin: 0px auto;
	}

	.contTextWrap01.txtAlc {
		text-align: left;
	}

	.contTextWrap01.txtAlc .contText02 {
		text-align: left;
	}

	.contTextWrap01 .contText01 {
		font-size: 18px;
		line-height: 1.8em;
		font-weight: bold;
		text-align: left;
	}

	.contTextWrap01 .contText01.fs22 {
		font-size: 17px;
	}

	.contTextWrap01 .contText02 {
		font-size: 16px;
		line-height: 1.8em;
		font-weight: normal;
		margin-top: 20px;
		text-align: left;
	}

	/*--------------------*/
}



/* -------------------------------------------------------------------- 
共通コンテンツ フレーム
-------------------------------------------------------------------- */
a.img_wrap .frameBlock01 {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.frameBlock01 {
	border: 1px solid #FFB100;
	background: #FFB100;
	padding: 40px 60px;
	margin: 60px auto;
	box-sizing: border-box;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	max-width: 820px;
}

.frameBlock01:hover .contBtn01.btnDrGr {
	color: #204632;
	background-color: #fff;
}

.frameBlock01:hover .contBtn01.btnDrGr:before {
	border-top: 2px solid #204632;
	border-right: 2px solid #204632;
}

/**--資料ダウンロード部分--**/
.frameBlockTd01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: auto;
	margin: 0 auto;
}

.frameBlockCell01 {
	display: inline-block;
	text-align: left;
	vertical-align: top;
	padding-right: 20px;
}

.frameBlockCell01.img {
	/*width:351px;*/
}

.frameBlockImg01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: initial;
}

.frameBlockImg01 li {
	padding: 0 20px 0 0;
}

.frameBlockImg01 li img {
	width: initial;
}

.frameBlockImg01 li:last-child {
	padding: 0 0 0;
}

.frameBlockCell01.text {
	width: 375px;
	padding-right: 0;
}

.frameBlockFlexTtl01 {
	font-size: 16px;
	line-height: 1.875;
	font-weight: bold;
}

.frameBlockFlexSubTtl01 {
	font-size: 18px;
	line-height: 1.55em;
	font-weight: bold;
	margin-top: 0;
}

.frameBlockFlexText01 {
	font-size: 16px;
	line-height: 1.875;
	margin-top: 10px;
}

.frameBlockFlexBtn01 {
	margin-top: 20px;
	margin-right: auto;
	margin-left: 0;
	padding: 0 0;
}

.frameBlockFlexBtn01 .btn {
	background: #2B2A2A;
	border: solid 1px #2B2A2A;
	padding: 0 20px;
	color: #fff;
	font-size: 14px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	line-height: 1.8em;
	width: 375px;
	min-height: 52px;
	display: block;
	margin: 0;
	line-height: 54px;
	position: relative;
	text-decoration: none;
	z-index: 1;
	text-align: center;
	transition: .3s;
	box-sizing: border-box;
}

.frameBlockFlexBtn01 .btn::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #9a9a9a;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.frameBlockFlexBtn01 .btn:hover::before,
.frameBlock01 a:hover .btn::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*--右矢印--*/
.contBtn01.arrowR:before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.contBtn01.arrowR:hover:before {
	border-top: 2px solid #191818;
	border-right: 2px solid #191818;
}

/**--画像+テキスト--**/
.frameBlockTtl01 {
	font-size: 20px;
	line-height: 1.55em;
	font-weight: bold;
	text-align: left;
	color: #204632;
	margin-bottom: 20px;
}

/*文字サイズ*/
.frameBlockTtl01.fs24 {
	font-size: 24px;
}

ul.frameBlockCol01 {}

/*カラム1*/
.frameBlock01.col1 .frameBlock01In {
	width: 678px;
	display: inline-flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

/*カラム2*/
.frameBlock01.col2 .frameBlock01In {
	width: 985px;
	display: inline-flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;

}

.frameBlock01.col2 ul.frameBlockCol01>li {
	width: 49%;
}

ul.frameBlockCol01 {
	display: inline-flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

ul.frameBlockCol01>li {
	display: inline-block;
}

ul.frameBlockCol01>li a {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	display: block;
}

ul.frameBlockCol01>li a:hover {
	opacity: 0.50;
}

.frameBlockColTtl01 {
	font-size: 16px;
	line-height: 1.55em;
	font-weight: bold;
	text-align: left;
	margin-bottom: 20px;
}

.frameBlockColBox01 {
	display: table;
	width: 100%;
	margin: 0 auto;
}

.frameBlockColBox01>.col {
	display: table-cell;
	text-align: left;
	vertical-align: top;
}

.frameBlockColBox01>.col.img {
	padding-right: 30px;
	width: 254px;
}

.frameBlockColBox01>.col:last-child.img {
	padding-left: 30px;
	padding-right: 0;
}

.frameBlockColBox01>.col.txt {}

.frameBlockColBox01>.col .ttl {
	font-size: 22px;
	line-height: 1.55em;
	font-weight: bold;
	margin-bottom: 20px;
}

.frameBlockColBox01>.col .text {
	font-size: 16px;
	line-height: 1.55em;
}

/**--リスト--**/
.frameBlockCol01.list {
	padding-top: 30px;
}

.frameBlockCol01.list>li {}

.frameBlockCol01.list>li:nth-child(odd) {
	padding-right: 25px;
}

.frameBlockCol01.list>li:nth-child(even) {
	padding-left: 25px;
}

.frameBlockColTtl02 {
	text-align: left;
	margin-bottom: 20px;
}

.frameBlockColTtl02 span {
	display: inline-block;
	color: #fff;
	background-color: #204632;
	font-size: 16px;
	line-height: 1.66em;
	font-weight: 500;
	padding: 6px 16px;
}


/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {

	/* ---------- */
	.frameBlock01 {
		padding: 30px 20px;
		margin: 30px auto;
	}

	.frameBlockTd01 {
		display: block;
		width: 100%;
		margin: 0 auto;
	}

	.frameBlockCell01 {
		display: block;
		padding-right: 0;
	}

	.frameBlockCell01.img {
		width: auto;
	}

	.frameBlockImg01 li {
		float: left;
		padding: 0 0 0;
		width: 100%;
	}

	.frameBlockImg01 li img {
		margin: 0 auto;
		display: block;
		width: 95%;
	}

	.frameBlockImg01 li:last-child {
		padding: 0 0 0;
	}

	.frameBlockCell01.text {
		padding: 0;
		padding-top: 20px;
		width: auto;
	}

	.frameBlockFlexTtl01 {
		font-size: 16px;
		line-height: 1.55em;
		font-weight: bold;
	}

	.frameBlockFlexSubTtl01 {
		font-size: 18px;
		line-height: 1.55em;
		font-weight: bold;
	}

	.frameBlockFlexText01 {
		font-size: 14px;
		line-height: 1.85em;
		margin-top: 10px;
	}

	.frameBlockFlexBtn01 {
		margin-top: 30px;
		margin-right: auto;
		margin-left: 0;
	}

	.frameBlockFlexBtn01 .btn {
		padding: 0;
		width: auto;
	}

	/**--画像+テキスト--**/
	.frameBlockTtl01 {
		font-size: 16px;
		line-height: 1.55em;
		font-weight: bold;
		text-align: left;
		color: #204632;
		margin-bottom: 20px;
	}

	/*文字サイズ*/
	.frameBlockTtl01.fs24 {
		font-size: 18px;
	}

	ul.frameBlockCol01 {}

	/*カラム1*/
	.frameBlock01.col1 .frameBlock01In {
		width: 100%;
		display: inline-flex;
	}

	/*カラム2*/
	.frameBlock01.col2 .frameBlock01In {
		width: 100%;
		display: block;
	}

	.frameBlock01.col2 ul.frameBlockCol01>li {
		width: 100%;
		display: block;
		margin-bottom: 20px;
	}

	ul.frameBlockCol01 {
		display: block;
	}

	ul.frameBlockCol01>li {
		display: inline-block;
	}

	.frameBlockColTtl01 {
		font-size: 14px;
		line-height: 1.55em;
		font-weight: bold;
		text-align: left;
		margin-bottom: 10px;
	}

	.frameBlockColBox01 {
		display: table;
		width: 100%;
		margin: 0 auto;
	}

	.frameBlockColBox01>.col {
		display: table-cell;
		text-align: left;
		vertical-align: top;
	}

	.frameBlockColBox01>.col.img {
		padding-right: 10px;
		width: auto;
	}

	.frameBlockColBox01>.col:last-child.img {
		padding-left: 10px;
		padding-right: 0;
	}

	.frameBlockColBox01>.col.txt {}

	.frameBlockColBox01>.col .ttl {
		font-size: 14px;
		line-height: 1.55em;
		font-weight: bold;
		margin-bottom: 10px;
	}

	.frameBlockColBox01>.col .text {
		font-size: 12px;
		line-height: 1.55em;
	}

	/**--リスト--**/
	.frameBlockCol01.list {
		padding-top: 20px;
	}

	.frameBlockCol01.list>li {}

	.frameBlockCol01.list>li:nth-child(odd) {
		padding-right: 0;
	}

	.frameBlockCol01.list>li:nth-child(even) {
		padding-left: 0;
	}

}

/* -------------------------------------------------------------------- 
共通コンテンツ フレーム2
-------------------------------------------------------------------- */
.frameBlock02 {
	padding-top: 40px;
	padding-bottom: 40px;
}

.frameBox02 {
	position: relative;
	display: block;
	padding: 40px 70px;
}

.frameBox02>.colBox {
	display: table;
	width: auto;
	margin: 0 auto;
}

.frameBox02>.colBox .col {
	display: table-cell;
	text-align: left;
	vertical-align: top;
	width: 50%;
}

.frameBox02>.colBox .col.pc {
	display: table-cell !important;
}

.frameBox02>.colBox .col.img {
	padding-right: 40px;
}

.frameBox02>.colBox .col:last-child.img {
	padding-left: 50px;
	padding-right: 0;
}

.frameBox02>.colBox .col.txt {
	font-size: 16px;
	line-height: 1.9em;
	color: #191818;
}

.frameBox02.box1 {
	background: #F7F7F7;
}

.frameBox02.box1.arrowB:after {
	content: "";
	width: 33px;
	height: 23px;
	border: none;
	box-sizing: border-box;
	background-image: url(../img/ico/arrow01_b_gr.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	display: block;
	margin: auto;
	position: absolute;
	bottom: -51px;
	left: 0;
	right: 0;
}

.frameBox02>.ttl {
	font-size: 22px;
	line-height: 1.8em;
	font-weight: 600;
	border-bottom: 1px solid #626262;
	padding-bottom: 10px;
	margin-bottom: 30px;
}

.frameBox02>.subTtl {
	font-size: 18px;
	line-height: 1.8em;
	margin-bottom: 20px;
	text-align: left;
}

.frameBox02.box2 {
	background: #F4F8EC;
	margin-top: 70px;
}

.frameBox02 .list {
	list-style: disc;
	padding-top: 10px;
	padding-left: 20px;
}

.frameBox02 .list li {
	padding-bottom: 10px;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.frameBlock02 {
		padding: 20px 0;
	}

	.frameBox02 {
		position: relative;
		display: block;
		padding: 20px 30px;
	}

	.frameBox02>.colBox {
		display: block;
		width: auto;
		margin: 0 auto;
		padding-right: 20px;
		padding-left: 20px;
	}

	.frameBox02>.colBox .col {
		display: block;
		text-align: left;
		vertical-align: top;
		width: auto;
	}

	.frameBox02>.colBox .col.img {
		padding-right: 0;
		padding-bottom: 10px;
	}

	.frameBox02>.colBox .col:last-child.img {
		padding-left: 0;
		padding-right: 0;
	}

	.frameBox02>.colBox .col.txt {
		font-size: 16px;
		line-height: 1.9em;
		color: #191818;
		padding-bottom: 10px;
	}

	.frameBox02.box1:after {
		content: "";
		width: 33px;
		height: 23px;
		display: block;
		margin: auto;
		position: absolute;
		bottom: -51px;
		left: 0;
		right: 0;
	}

	.frameBox02>.ttl {
		font-size: 18px;
		line-height: 1.8em;
		font-weight: 600;
		padding-bottom: 10px;
		margin-bottom: 20px;
	}
}



/* -------------------------------------------------------------------- 
共通コンテンツ カラム
-------------------------------------------------------------------- */
ul.detailFlex01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

ul.detailFlex01 li {
	display: inline-block;
}

/*中心寄せ*/
ul.detailFlex01,
flexC {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

ul.detailFlex01.flexC li {
	padding-left: 10px;
	padding-right: 10px;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {

	/* ---------- */
	ul.detailFlex01 {
		display: block;
	}

	ul.detailFlex01 li {
		margin-bottom: 15px;
		width: 90%;
		width: calc(100% - 20px);
	}
}

/*--------------------------------
アコーディオン
--------------------------------*/
.defaultAcContainer .defaultAcTitle {
	position: relative;
	margin: 0;
	padding: 20px 60px 20px 60px;
	background-color: #fff;
	font-size: 20px;
	font-weight: bold;
	color: #334A85;
	border-top: 1px solid #DBDBDB;
	cursor: pointer;
	text-align: left;
}

.defaultAcContainer .defaultAcContainerIn:last-child .defaultAcTitle {
	border-bottom: 1px solid #DBDBDB;
}

.defaultAcContainer .defaultAcContainerIn:last-child .defaultAcContentIn {
	border-top: none;
}

.defaultAcContainer .defaultAcTitle:hover,
.defaultAcContainer .defaultAcTitle:active,
.defaultAcTitle.open {}

.defaultAcContainer .defaultAcTitle span {
	position: absolute;
	top: 50%;
	right: 40px;
	background-color: #334A85;
	width: 29px;
	height: 29px;
	margin: -14px 0 0;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	border-radius: 50px;
}

.defaultAcContainer .defaultAcTitle span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 8px;
	width: 12px;
	height: 1px;
	/*縦線に*/
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	background: #fff;
	transition: all .3s ease-in-out;
}

.defaultAcContainer .defaultAcTitle span::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 8px;
	/*横線*/
	width: 12px;
	height: 1px;
	background: #fff;
	transition: all .2s ease-in-out;
}

.defaultAcContainer .defaultAcTitle.open span::before {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.defaultAcContainer .defaultAcTitle.open span::after {
	opacity: 0;
}

.defaultAcContent {
	display: none;
}

.defaultAcContentIn {
	padding: 20px 50px 30px;
	border-top: 1px solid #DBDBDB;
}

.defaultAcContainer {
	width: 100%;
	margin: 0 auto 50px;
	font-size: 16px;
}

.defaultAcContainerIn {
	margin: 0 auto;
}

.defaultAcContainerIn:last-child {
	margin: 0 auto;
}

/**-----**/
.defaultAcTxt {
	font-size: 16px;
	text-align: left;
	padding: 0 0 0;
}

.defaultAcUl01 {
	font-size: 16px;
}

.defaultAcUl01 li {
	position: relative;
	padding: 0 0 0 30px;
}

.defaultAcUl01 li:before {
	content: "■";
	color: #092E57;
	position: absolute;
	left: 0;
}

.defaultAcBtn01 {
	padding: 10px 0 0;
}

/**---質問---**/
.defaultAcContainer.faq {}

.defaultAcContainer.faq .defaultAcContentIn {
	background: #fff;
	padding-bottom: 20px;
}

.defaultAcContainer.faq {
	counter-reset: number 0;
}

.defaultAcContainer.faq .defaultAcContainerIn .defaultAcTitle:before {
	counter-increment: number 1;
	content: "Q" counter(number);
	font-family: 'Source Sans Pro', sans-serif;
	color: #334A85;
	font-size: 22px;
	position: absolute;
	left: 20px;
	top: 18px;
}

.defaultAcContainer.faq .defaultAcContainerIn:last-child .defaultAcTitle.open {}

/*-----------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {

	/*-----------*/
	.defaultAcTxt {
		font-size: 12px;
		text-align: left;
		padding: 0 0;
	}

	.defaultAcContainer .defaultAcTitle {
		position: relative;
		margin: 0;
		padding: 10px 30px 10px 40px;
		background-color: #fff;
		font-size: 14px;
		font-weight: bold;
		color: #334A85;
		border-top: 1px solid #DBDBDB;
		cursor: pointer;
	}

	.defaultAcContainer .defaultAcTitle:hover,
	.defaultAcContainer .defaultAcTitle:active,
	.defaultAcTitle.open {}

	.defaultAcContainer .defaultAcTitle span {
		position: absolute;
		top: 50%;
		right: 7px;
		width: 15px;
		height: 15px;
		margin: -8px 0 0;
		-webkit-border-radius: 50px;
		-moz-border-radius: 50px;
		border-radius: 50px;
	}

	.defaultAcContainer .defaultAcTitle span::before {
		content: "";
		position: absolute;
		top: 50%;
		right: 2px;
		width: 11px;
		height: 1px;
		margin-top: -1px;
		/*縦線に*/
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
		background: #fff;
		transition: all .3s ease-in-out;
	}

	.defaultAcContainer .defaultAcTitle span::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 2px;
		width: 11px;
		height: 1px;
		margin-top: -1px;
		background: #fff;
		transition: all .2s ease-in-out;
	}

	.defaultAcContainer .defaultAcTitle.open span::before {
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
	}

	.defaultAcContainer .defaultAcTitle.open span::after {
		opacity: 0;
	}

	.defaultAcContent {
		display: none;
	}

	.defaultAcContentIn {
		display: block;
		padding: 10px 0 30px;
	}

	.defaultAcContainer {
		width: 100%;
		margin: 0 auto 20px;
		font-size: 16px;
	}

	.defaultAcContainerIn {
		margin: 0 auto;
	}

	.defaultAcContainerIn:last-child {
		margin: 0 auto;
	}

	.defaultAcDl01 {
		display: block;
		margin: 0 0 10px;
	}

	/**---質問---**/
	.defaultAcContainer.faq {
		counter-reset: number 0;
	}

	.defaultAcContainer.faq .defaultAcContentIn {
		border-top: 0;
		padding: 10px 10px 10px 40px;
	}

	.defaultAcContainer.faq .defaultAcContainerIn .defaultAcTitle {
		padding: 10px 30px 10px 40px;
	}

	.defaultAcContainer.faq .defaultAcContainerIn .defaultAcTitle:before {
		font-size: 16px;
		left: 10px;
		top: 9px;
	}

	/*-----------*/
}


/* -------------------------------------------------------------------- 
共通コンテンツ　カラムコンテンツ
-------------------------------------------------------------------- */
.contFlexBlock01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding-top: 70px;
	padding-bottom: 50px;
}

.contFlexBox01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	display: inline-block;
	vertical-align: top;
	width: 257px;
	background: #fff;
	position: relative;
}

/*ボーダー*/
.contFlexBox01.border {
	border: 1px solid #E4E4E4;
}

a.contFlexBox01 {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

a.contFlexBox01:hover {}

a.contFlexBox01 .contFlexDl01,
a.contFlexBox01 .overFlowHid01 {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

a.contFlexBox01:hover .contFlexDl01,
a.contFlexBox01:hover .overFlowHid01 {
	opacity: .50;
}

.contFlexBox01 a.img_wrap {
	display: block;
}

.contFlexBox01 a.img_wrap:hover {
	opacity: .50;
}

/*画像枠ボーダー*/
.contFlexBox01 .imgBorder {
	border: 1px solid #E4E4E4;
}

.contFlexDl01 {
	text-align: left;
	padding: 30px 20px;
}

.contFlexDl01 dt {
	margin-bottom: 18px;
}

.contFlexDl01 dt p {
	font-size: 18px;
	line-height: 1.777;
	font-weight: bold;
	position: relative;
	display: block;
}

.contFlexDl01 dt .subTtl {
	font-size: 17px;
	line-height: 1.4em;
	font-weight: normal;
	margin-top: 5px;
	display: block;
}

.contFlexDl01 dt.borderB {
	border-bottom: solid 1px;
	padding-bottom: 10px;
}

.contFlexDl01 dd {
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.05em;
}

.contFlexTtl01 {
	font-size: 20px;
	line-height: 1.4em;
	font-weight: bold;
	position: relative;
	text-align: left;
	color: #204632;
	margin-bottom: 20px;
}

.contFlexTtl01 span {
	font-size: 14px;
	line-height: 1.4em;
}

.contFlexTtl01.borderB {
	border-bottom: solid 1px;
	padding-bottom: 10px;
	min-height: 60px;
}

.contFlexText01 {
	font-size: 18px;
	line-height: 1.4em;
	font-weight: normal;
	position: relative;
	text-align: left;
	padding-top: 20px;
}

/*3カラム*/
.contFlexBlock01.col3 .contFlexBox01 {
	width: 326px;
	margin: 0 27px 0 0;
}

.contFlexBlock01.col3 .contFlexBox01:nth-child(3n) {
	margin: 0 0 0 0;
}

.defaultBlockIn .contFlexBlock01.col3 .contFlexBox01 {
	width: 30%;
}

.contFlexBlock01.col3 .contFlexDl01 {
	padding: 25px 35px;
}

.contFlexBlock01.col3 .contFlexDl01 dt {
	margin-bottom: 10px;
}

/*4カラム*/
.contFlexBlock01.col4 .contFlexBox01 {
	width: 257px;
}

/*矢印→*/
.contFlexBlock01.col4 .contFlexBox01.arrowR {
	padding-bottom: 30px;
}

.contFlexBlock01.col4 .contFlexBox01.arrowR:after {
	position: absolute;
	bottom: 26px;
	right: 0;
	left: 0;
	margin: 0 auto;
	content: "";
	vertical-align: middle;
	width: 8px;
	height: 8px;
	border-top: 2px solid #5a8909;
	border-right: 2px solid #5a8909;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


/*画像リンク※ページスクロール*/
.imgLinkBox {
	position: relative;
}

.imgLinkBox:after {
	content: "";
	width: 7px;
	height: 7px;
	border: 2px solid;
	border-color: transparent transparent #fff #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	position: absolute;
	right: 0;
	left: 0;
	bottom: 20px;
	margin: 0 auto;
}

.imgLinkBox .imgLinkBoxTtl {
	font-size: 14px;
	line-height: 1.2em;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	color: #fff;
	z-index: 1;
}

.imgLinkBox .imgLinkBoxTtl span {
	font-size: 48px;
	line-height: 1.3em;
	font-family: 'D-DIN Regular';
	display: block;
}

.imgLinkBox .imgLinkBoxImg {}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {

	/* ---------- */
	.contFlexBlock01 {
		display: block;
		margin-top: 10px;
		padding: 0 20px;
	}

	.contFlexBox01,
	.contFlexBlock01.col3 .contFlexBox01,
	.defaultBlockIn .contFlexBlock01.col3 .contFlexBox01,
	.contFlexBlock01.col4 .contFlexBox01 {
		width: auto;
		display: block;
		margin: 0 0 20px 0;
		margin-bottom: 20px;
	}

	.contFlexBlock01.col3 .contFlexBox01:nth-child(3n) {
		margin: 0 0 20px 0;
	}

	.contFlexBox01 img {
		width: 100%;
	}

	.contFlexDl01 {
		text-align: left;
		padding: 20px 20px;
	}

	.contFlexDl01 dt {
		min-height: initial;
		margin-bottom: 16px;
	}

	.contFlexDl01 dt p {
		font-size: 16px;
		line-height: 1.4em;
	}

	.contFlexDl01 dt.borderB {
		border-bottom: solid 1px;
		padding-bottom: 10px;
	}

	.contFlexDl01 dd {
		font-size: 14px;
		line-height: 1.75em;
	}

	.contFlexTtl01 {
		font-size: 16px;
		line-height: 1.4em;
		margin-bottom: 10px;
	}

	.contFlexTtl01.borderB {
		padding-bottom: 10px;
		min-height: initial;
	}

	.contFlexText01 {
		font-size: 16px;
		line-height: 1.4em;
		padding-top: 10px;
	}

}


/* -------------------------------------------------------------------- 
共通コンテンツ※フッター部分のダウンロード
-------------------------------------------------------------------- */
.contBlock01.contBlockCommon01 {
	color: #fff;
	background-color: #222222;
	padding: 30px 0px 30px 0px;
	margin: 5px 0 0;
	position: relative;
	overflow: hidden;
}

/* 背景グレー */
.contBlock01.contBlockCommon01.bgDkGr {
	color: #333333;
}

.contBlock01.contBlockCommon01.bgDkGr .contCommonText01 {
	color: #333333
}

.contBlock01.contBlockCommon01 .contH3Wrap02 {
	width: 864px;
	margin: 0 auto;
}

.contBlock01.contBlockCommon01 .contH302 {
	text-align: left;
}

.contCommonFlex01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 0 auto;
}

.contCommonFlexBox01 {
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

a.contCommonFlexBox01:link {
	color: #fff;
}

a.contCommonFlexBox01:hover {}

a.contCommonFlexBox01:hover .contBtn03 {
	color: #e27304;
	background: #fff;
	text-decoration: none;
}

a.contCommonFlexBox01:hover .contBtn02 {
	color: #4fb5ea;
	background: #ffffff;
	text-decoration: none;
}

a.contCommonFlexBox01:hover .contBtn02.or {
	color: #e27304;
}

a.contCommonFlexBox01:hover .contBtn03 span.downlaod_ico::before {
	background: url(../img/ico_download_on.png)no-repeat;
}

.contCommonCell01 {
	width: 190px;
	margin: 0 0;
}

.contCommonCell01 img {
	width: auto;
}

.contCommonCell02 {
	padding: 0 24px 0 0;
	width: 650px;
}

.contCommonCell02 .contBtnWrap03 {
	margin: 0;
	margin-top: 40px;
}

.contCommonCell02 .contBtnWrap02 {
	margin: 20px 0 10px;
	width: 166px;
}

.contBtnWrap02 .contBtn02 {
	height: 40px;
}

.contCommonTtl01 {
	font-size: 22px;
	line-height: 1.8em;
	margin: 0 0 10px;
	color: #fff;
	text-align: left;
}

.contCommonText01 {
	font-size: 16px;
	line-height: 1.8em;
	color: #fff;
	text-align: left;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {

	/* ---------- */
	.contBlock01.contBlockCommon01 {
		color: #fff;
		background-color: #222222;
		padding: 30px 0px 50px 0px;
		position: relative;
		overflow: hidden;
	}

	.contBlock01.contBlockCommon01 .contH3Wrap02 {
		width: 100%;
	}

	.contBlock01.contBlockCommon01 .contH302 {
		font-size: 20px;
		text-align: center;
	}

	.contCommonFlex01 {
		display: block;
		margin: 20px auto 0;
	}

	.contCommonFlex01 .contCommonFlexBox01:last-child {
		margin: 0;
	}

	.contCommonFlexBox01 {
		color: #fff;
		display: block;
		margin: 0 0 50px;
	}

	a.contCommonFlexBox01:link {
		color: #fff;
	}

	.bgDkGr a.contCommonFlexBox01:link {
		color: #333333;
	}

	a.contCommonFlexBox01:hover {}

	a.contCommonFlexBox01:hover .contBtn03 {
		color: #e27304;
		background: #fff;
		text-decoration: none;
	}

	a.contCommonFlexBox01:hover .contBtn02 {
		color: #4fb5ea;
		background: #ffffff;
		text-decoration: none;
	}

	.contCommonCell01 {
		padding: 0 50px;
		margin: 0 auto;
	}

	.contCommonCell01 img {}

	.contCommonCell02 .contBtnWrap03 {
		margin: 0 auto;
		margin-top: 20px;
	}

	.contCommonCell02 .contBtnWrap02 {
		margin: 0 auto;
		margin-top: 20px;
	}

	.contCommonCell02 {
		width: 90%;
		width: calc(100% - 40px);
		padding: 20px 20px 0;
		margin: 0 auto;
	}

	.contCommonTtl01 {
		font-size: 22px;
		line-height: 1.8em;
		margin: 0 0 10px;
		color: #fff;
		text-align: left;
	}

	.contCommonText01 {
		font-size: 16px;
		line-height: 1.8em;
		color: #fff;
		text-align: left;
	}

	/*--------------------*/
}



/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {

	/*--------------*/
	.img_wrap {
		margin: 0 auto;
		overflow: hidden;
		cursor: pointer;
	}

	.img_wrap img {
		width: 100%;
		-webkit-transition-duration: 0.5s;
		transition-duration: 0.5s;
	}

	.img_wrap:hover img {
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
		-webkit-transition-duration: 0.5s;
		transition-duration: 0.5s;
	}

	.overFlowHid01 {
		overflow: hidden;
	}

	/*-------------------------*/

}

/* -------------------------------------------------------------------- 
 新着情報カテゴリカラー（共通）
-------------------------------------------------------------------- */
/*----メディア-----*/
/*
.topNewsIcon.cat01,
.pageNewsIcon.cat01 {
	background-color: #112C51;
}
*/


/* -------------------------------------------------------------------- 
 right_fix
-------------------------------------------------------------------- */
.right_fix {
	position: fixed;
	top: 300px;
	right: -1px;
	width: 146px;
	z-index: 9999;
}

.right_fix .box {
	border-radius: 2px;
	position: relative;
	width: inherit;
	display: table;
	margin: 5px 0 0;
}

.right_fix .box a {
	padding: 10px 0 10px 10px;
	height: 40px;
	margin-bottom: 4px;
	text-align: center;
	display: table-cell;
	text-decoration: none;
	vertical-align: middle;
	line-height: 1.2em;
	text-align: left;
	-webkit-border-top-left-radius: 3px;
	-webkit-border-bottom-left-radius: 3px;
	-moz-border-radius-topleft: 3px;
	-moz-border-radius-bottomleft: 3px;
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;

	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	position: relative;
	z-index: 1;
}

.right_fix .box a:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.right_fix .box a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

.right_fix .box a .img_center {
	position: absolute;
	right: 10px;
	bottom: 15px;
}

.right_fix .box a .img_center img {
	margin: 0 0 0 5px;
	width: 22px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.right_fix .box a .img_center img.img_btn_hover {
	opacity: 0;
	position: absolute;
	left: 0;
	top: 0;
}

.right_fix .box a:hover .img_center img.img_btn_hover {
	opacity: 1;
}

.right_fix .box a:hover .img_center img.img_btn {
	opacity: 0;
}

.right_fix .box a .btn_txt {
	font-size: 14px;
}

.right_fix .box a .btn_txt span {
	position: relative;
	padding: 0 0 0 15px;
	text-align: left;
	display: block;
}

.right_fix .box a .btn_txt span:before {
	position: absolute;
	top: 50%;
	bottom: 0;
	left: -4px;
	margin: -4px auto 0;
	content: "";
	vertical-align: middle;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.right_fix .box a .btn_txt span.arrowNon {
	padding: 0 0 0;
}

.right_fix .box a .btn_txt span.arrowNon:before {
	content: none;
}

.right_fix .box.btn01 a .btn_txt span:before {
	border-top: 2px solid #2B2A2A;
	border-right: 2px solid #2B2A2A;
}

.right_fix .btn01 a {
	border: 1px solid #D9E1F5;
	background-color: #D9E1F5;
	color: #2B2A2A;
}

.right_fix .btn01 a:hover {
	color: #D9E1F5;
}

.right_fix .btn01 a:hover .btn_txt span:before {
	border-top: 2px solid #D9E1F5;
	border-right: 2px solid #D9E1F5;
}

/*緑*/
.right_fix .btn02 a {
	border: 1px solid #334A85;
	background-color: #334A85;
	color: #ffffff!important;
}

.right_fix .btn02 a:hover {
	color: #334A85!important;
}

.right_fix .btn02 a:hover .btn_txt span:before {
	border-top: 2px solid #334A85;
	border-right: 2px solid #334A85;
}

/*青*/
.right_fix .btn03 a {
	border: 1px solid #1d82b1;
	background-color: #1d82b1;
	color: #ffffff!important;
}

.right_fix .btn03 a:hover {
	color: #1d82b1!important;
}

.right_fix .btn03 a:hover .btn_txt span:before {
	border-top: 2px solid #1d82b1;
	border-right: 2px solid #1d82b1;
}

/*-----*/
.right_fix_close {
	display: block;
	width: 15px;
	/*枠の大きさ*/
	height: 15px;
	/*枠の大きさ*/
	position: relative;
	background: #5e5e5e;
	padding: 3px;
	cursor: pointer;
}

.right_fix_close span {
	position: relative;
	display: block;
}

.right_fix_close span::before,
.right_fix_close span::after {
	content: "";
	display: block;
	width: 100%;
	/*バツ線の長さ*/
	height: 2px;
	/*バツ線の太さ*/
	background: #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: 0% 50%;
	transform-origin: 0% 50%;
	position: absolute;
	top: 1px;
	left: 14%;
}

.right_fix_close span::after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-transform-origin: 100% 50%;
	transform-origin: 100% 50%;
	left: auto;
	right: 14%;
}

/* -------------------------------------------------------------------- 
 pagetop
-------------------------------------------------------------------- */
/* PAGE TOP */
#page-top {
	position: fixed;
	bottom: 30px;
	right: 20px;
	z-index: 500;
}

#page-top a {
	width: 54px;
	height: 54px;
	border-radius: 27px;
	background: #BCBCBC;
	border: solid 1px #BCBCBC;
	display: block;
	position: relative;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

#page-top a::before {
	position: absolute;
	content: "";
	left: 50%;
	top: 50%;
	margin: -3px 0 0 -7px;
	width: 12px;
	height: 12px;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#page-top a:hover {
	background: #ffffff;
	color: #BCBCBC;
}

#page-top a:hover::before {
	border-top: 2px solid #BCBCBC;
	border-left: 2px solid #BCBCBC;
}

/*---------------------*/
/*お問い合わせボタン　フッター部分*/
/*---------------------*/
.contactAreaWrap01 {
	padding: 50px 0;
	background-image: url(../img/ft_contact_bg.jpg);
	padding: 45px 0px 45px 0px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.contactAreaWrap01 .contactAreaWrapTtl01 {
	font-family: 'D-DIN Regular';
	font-weight: normal;
	color: #fff;
	font-size: 38px;
	margin: 0 0 20px;
}

.contactAreaWrap01 .btn_block {}

.contactAreaWrap01 .btn_block a {
	color: #fff;
	background: none;
	border: solid 1px #fff;
	text-decoration: none;
	width: 221px;
	line-height: 45px;
	font-size: 13px;
	margin: 0 auto;
	position: relative;
	text-align: center;
	display: block;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.contactAreaWrap01 .btn_block a:before {
	position: absolute;
	top: 50%;
	bottom: 0;
	right: 13px;
	margin: -4px auto 0;
	content: "";
	vertical-align: middle;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.contactAreaWrap01 .btn_block a:hover {
	background: #fff;
	color: #2A3D36;
}

.contactAreaWrap01 .btn_block a:hover:before {
	border-top: 2px solid #2A3D36;
	border-right: 2px solid #2A3D36;
}

.contactAreaWrap01 .btn_block a span {
	position: relative;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {

	/*-----*/
	.contactAreaWrap01 {
		padding: 20px 0;
	}

	.contactAreaWrap01 .btn_block a {
		width: 90%;
		width: calc(100% - 40px);
		line-height: 88px;
		font-size: 16px;
	}
}


/* -------------------------------------------------------------------- 
 footer


.footerWrap {
	padding: 50px 0px 50px 0px;
	margin-top: 60px;
	background: #F3F8F7;
	color: #2B2A2A;
}

.footerWrap a {
	color: #2B2A2A;
}

.footerWrap a:link {
	color: #2B2A2A;
	text-decoration: none;
}

.footerWrap a:visited {
	color: #2B2A2A;
	text-decoration: none;
}

.footerWrap a:hover {
	color: #2B2A2A;
	opacity: .75;
}

.footerWrap a:active {
	color: #2B2A2A;
	text-decoration: none;
}

.footerBlock01 {
	display: block;
}

.footerIn01 {
	box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-bottom: 40px;
}

.footerIn01 .footerLogo01 {
	padding-right: 20px;
	display: inline-block;
	width: initial;
}

.footerIn01 .footerTxt01 {
	display: inline-block;
	width: initial;
	font-size: 11px;
}

.footerIn01 img {
	width: 243px;
	height: auto;
}

.footerIn02 {
	box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.footerNaviCol01 {
	margin: 0;
	border-top: 1px solid #90C31F;
	padding-top: 10px;
	width: 23%;
}

.footerNaviCol01.col01 {
	width: 236px;
}

.footerNaviCol01.col02 {
	width: 352px;
}

.footerNaviCol01.col03 {
	width: 181px;
}

.footerNaviCol01.col04 {
	width: 181px;
}

.footerIn02Cell {
	box-sizing: border-box;
	text-align: left;
	white-space: nowrap;
	margin: 0 0 20px;
}

.footerLink01 {
	position: relative;
}

.footerIn02Cell .footerLink01 p,
.footerIn02Cell .footerLink01>a {
	position: relative;
	font-size: 13px;
	line-height: 1.0em;
	font-weight: 500;
	display: block;
	padding-left: 20px;
	margin: 10px 0 10px;
}

.footerLink01 a:before {
	content: "";
	position: absolute;
	width: 4px;
	height: 4px;
	display: inline-block;
	top: 0;
	left: 0;
	margin: 4px 0 0;
	background: #90C31F;
}

.footerLink01 p:before {
	content: "";
	position: absolute;
	width: 14px;
	height: 1px;
	background: #333333;
	display: inline-block;
	top: 6px;
	left: 0;
	margin: 0;
}

.footerIn02Cell ul {
	margin: 0 0 15px;
	padding-left: 40px;
	list-style: inside;
}

.footerIn02Cell li {
	font-size: 12px;
	line-height: 2.0em;
	list-style: none;
}

.footerIn02Cell li:before {
	content: "・"
}

.footerCopyWrap {
	padding: 40px 0px 0px 0px;
}

.footerCopy01 {
	font-size: 12px;
	line-height: 1.2em;
}

-------------------------------------------------------------------- */
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {

	.right_fix {
		display: none !important;
	}

	/*-----*/
	#page-top a:hover {
		background-color: #2474C4;
		border: 1px solid #ffffff;
	}

	#page-top a:hover::before {
		border-top: 2px solid #ffffff;
		border-left: 2px solid #ffffff;
	}


	/* .footerWrap {
		padding: 30px 0px 30px 0px;
		margin-top: 30px;
	}

	.footerBlock01 {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.footerIn01 {
		padding-right: 0px;
		display: block;
		box-sizing: border-box;
		width: auto;
		text-align: center;
		margin-bottom: 30px;
	}

	.footerIn01 .footerLogo01 {
		padding-right: 0;
		margin-bottom: 10px;
		display: block;
	}

	.footerIn01 .footerTxt01 {
		padding-right: 0;
		display: block;
	}

	.footerIn01 img {
		width: 224px;
		height: auto;
	}

	.footerIn02 {
		display: block;
		box-sizing: border-box;
		width: auto;
		padding: 0px 15px 0px;
	}

	.footerNaviCol01 {
		display: block;
	}

	.footerNaviCol01.col01 {
		width: 100%;
	}

	.footerNaviCol01.col02 {
		width: 100%;
	}

	.footerNaviCol01.col03 {
		width: 100%;
	}

	.footerNaviCol01.col04 {
		width: 100%;
	}

	.footerIn02Cell {
		box-sizing: border-box;
		padding-right: 0px;
		text-align: left;
		white-space: normal;
	}

	.footerIn02Cell:nth-child(1) {
		width: auto;
	}

	.footerIn02Cell:nth-child(2) {
		width: auto;
	}

	.footerIn02Cell:nth-child(3) {
		width: auto;
		padding-right: 0px;
	}


	.footerIn02Cell p {
		font-size: 15px;
		line-height: 1.8em;
		font-weight: 500;
	}

	.footerIn02Cell ul {
		margin-bottom: 20px;
		padding-left: 20px;
	}

	.footerIn02Cell li {
		font-size: 14px;
		line-height: 2.0em;
		display: block;
	}

	.footerCopyWrap {
		padding: 30px 0px 0px 0px;
	}

	.footerCopy01 {
		font-size: 12px;
		line-height: 1.2em;
	} */


}






/*--  追加　---*/
.headerBtnWrap01 li .txtBtn.phoneNum {
	font-weight: bold;
	font-size: 1.2rem;
	padding-left: 1.3rem;
	position: relative;
	color: #334A85;
}

.headerBtnWrap01 li .txtBtn.phoneNum::before {
	content: "";
	display: block;
	width: 1rem;
	height: 1rem;
	background-image: url(../img/ico/icon-phone.svg);
	position: absolute;
	top: 6px;
	left: 3px;
}