* {
	margin: 0;
	padding: 0;
	-webkit-text-size-adjust : 100%;
}
img {
	max-width: 100%;
	height: auto;
	line-height: 1em;
	border: none 0;
	vertical-align: middle;
}
table {
	border-collapse: collapse;
} 
ul, ol {
	list-style-type: none;
}
a {
	text-decoration: none;
}
.alignCenter {
	text-align: center;
}
.alignRight {
	text-align: right;
}
.alignLeft {
	text-align: left;
}
.floatLeft {
	float: left;
}
.floatRight {
	float: right;
}
.floatLeftFix {
	float: left !important;
}
.floatRightFix {
	float: right !important;
}
img.floatLeft, img.floatLeftFix {
	margin: 0 1em 0.5em 0;
}
img.floatRight, img.floatRightFix {
	margin: 0 0 0.5em 1em;
}

@media screen and (max-width:599px) {
.floatLeft, .floatRight {
	float: none;
}
img.floatLeft, img.floatRight {
	display: block;
	margin: 0 auto 1em;
}
}
.clearLeft {
	clear: left;
}
.clearRight {
	clear: right;
}
.clearBoth {
	clear: both;
}
.clearFloat::after, header::after, #headNav::after, #headLogo::after, main::after, .wrapper::after, footer::after, footer nav::after {
	content: '';
	display: block;
	clear: both;
}
.noMargin {
	margin: 0 !important;
	padding: 0 !important;
	text-indent: 0 !important;
}
.noWrap {
	white-space: nowrap;
}
body {
	font-size: 16px;
	color: #333;
	line-height: 1.5em;
	background-color: rgba(91,100,112,1.00);
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
textarea ,
/*input,*/
select,
option {
	font-size:inherit;
	line-height:inherit;
	font-family: inherit;
	/* appearance: none; */
	-webkit-appearance: none;
}

a {
	color: rgba(0,90,174,1);
	text-decoration: none;
}
a:hover {
	color: rgba(0,65,126,1);
	text-decoration: underline;
	transition-duration: 0.3s;
}
.wrapper {
	width: 960px;
	margin: 0 auto;
}

@media screen and (max-width: 959.99px) {
.wrapper {
	width: 96%;
}
}

main {
	display:block;
}


/* ==================================================================================================================== */
/* header 																																																							*/
/* ==================================================================================================================== */
#header {
	position: relative;
	height:112px;
	background-color: #fff;
}
@media screen and (max-width: 639.99px) {
#header {
	height:64px;
}
#headNavMoblie {
	position: relative;
	height: 64px;
}
}
#headLogo {
	line-height: 64px;
	background-image: url(../bin/com/top_back.png);
	background-size: 220px 64px;
	background-repeat:no-repeat;
	background-position: right bottom;
}
@media screen and (max-width: 639.99px) {
	#headLogo {
		position: absolute;
		left: 0;
		top: 0;
		width:100%;
	}
	#headLogo img {
		width: 75vw;
		max-width: 400px;
	}
}
#headNav {
	position: fixed;
	top: 0;
	width:100%;
	margin: 0 auto;
	z-index: 999;
	line-height: 1;
	background-color: rgba(255,255,255,0.9);
}
#headNavGlobal {
	background-repeat: repeat-x;
	background-position : 0 0;
	background: linear-gradient( to bottom, rgba(0,54,97,1.00), rgba(0,77,139,1.00));
}
#headNavGlobal > ul {
	list-style: none;
	height: 48px;
}
#headNavGlobal > ul > li {
	float: left;
	box-sizing:border-box;
}

#headNavGlobal > ul > li > a {
	display: block;
	height: 48px;
	line-height:48px;
	color:#fff;
	background-image: url(../bin/com/headnav.svg);
	background-size: 200px 240px;
	text-indent:100%;
	overflow:hidden;
}
#headNavGlobal > ul > li > a:hover {
	text-decoration:none;
	background-color:  rgba(255,255,255,0.3);
}
#headNavGlobal > ul > li:first-child {
	width: 10%;
}
#headNavGlobal > ul > li:nth-child(2),
#headNavGlobal > ul > li:nth-child(3),
#headNavGlobal > ul > li:nth-child(4),
#headNavGlobal > ul > li:last-child {
	width: 22.5%;
	border-left: 1px dotted rgba(255,255,255,0.8);
}

#headNavGlobal > ul > li:first-child > a {
	background-position: center 0;
}
#headNavGlobal > ul > li:nth-child(2) > a {
	background-position: center -48px;
}
#headNavGlobal > ul > li:nth-child(3) > a {
	background-position: center -96px;
}
#headNavGlobal > ul > li:nth-child(4) > a {
	background-position: center -144px;
}
#headNavGlobal > ul > li:last-child > a  {
	background-position: center -192px;
}
#headNavGlobal > ul > li > a:hover  {
	transition-duration:0.3s;
	opacity:0.7;
}


@media screen and (max-width: 639.99px) {
#headNavGlobal {
	position: absolute;
	/* 開いてないときは画面外に配置 */
	top: -496px;
	width: 100%;
	padding: 10px 0;
	background-color: rgba(0,54,97,1.00);
	background-image:none;
	text-align: center;
	-webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}
#headNavGlobal > ul {
	position: static;
	right: 0;
	bottom: 0;
	height: auto;
}
#headNavGlobal > ul > li {
	float: none;
	width: auto !important;
}
#headNavGlobal > ul > li > a {
	height:auto;
	background-image: none;
	text-indent: 0 !important;
	text-align: center;
}
#headNavGlobal > ul > li::after {
	display: none;
}
#headNavGlobal > ul > li:nth-child(2) ,
#headNavGlobal > ul > li:nth-child(3) ,
#headNavGlobal > ul > li:nth-child(4) ,
#headNavGlobal > ul > li:last-child  {
	border-left: none;
}
#headNavGlobal > ul > li > a {
	line-height: 3em;
	width: 100%;
	color: #fff;
}
#headNavGlobal > ul > li > a:hover {
	background-color: rgba(136,136,136,0.5);
}

.openNav #headNavGlobal {
	-webkit-transform: translateY(556px);
	transform: translateY(556px);
}
}
/*２階層目*/
#headNavGlobal > ul > li > ul {
	visibility: hidden;
	position: absolute;
	top: 64px;
	list-style-type: none;
  opacity: 0;
	z-index: -1;
}
#headNavGlobal > ul > li:hover > ul {
	visibility: visible;
	top: 112px;
  opacity: 1;
	z-index: 1;
	transition: all .3s ease-in-out;
	width:200px;
}
#headNavGlobal > ul > li > ul > li {
	line-height:1.35em;
}
#headNavGlobal > ul > li > ul > li > a {
	display: block;
	padding: 0.3em;
	color: #fff;
	font-size:80%;
	background-color: rgba(0,65,126,1);
	border-top: 1px dotted rgba(255,255,255,0.3);
  transition-duration: 0.3s;
}
#headNavGlobal > ul > li > ul > li > a:hover {
	text-decoration: none;
	background-color: rgba(19,85,185,1);
}

@media screen and (max-width:639.99px) {
	#headNavGlobal > ul > li:hover > ul {
		display: none;
	}
}


/* Toggle Button */
#headNavToggle {
	display: none;
	position: absolute;
	right: 12px;
	top: 10px;
	box-sizing: border-box;
	width: 44px;
	height: 44px;
	padding: 6px;
	z-index: 100;
	cursor: pointer;
	background-color: rgba(255,255,255,0.8);
	box-shadow: 2px 2px 2px #888;
	border-radius:8px;
}
#headNavToggle div {
	position: relative;
}
#headNavToggle span {
	display: block;
	position: absolute;
	left: 0;
	height: 4px;
	width: 100%;
	background-color: rgba(0,54,97,1.00);
	-webkit-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}
#headNavToggle span:nth-child(1) {
	top: 4px;
}
#headNavToggle span:nth-child(2) {
	top: 15px;
}
#headNavToggle span:nth-child(3) {
	top: 26px;
}

@media screen and (max-width: 639.99px) {
#headNavToggle {
	display: block;
}
/* #nav-toggle 切り替えアニメーション */
.openNav #headNavToggle span:nth-child(1) {
	top: 15px;
	-webkit-transform: rotate(315deg);
	transform: rotate(315deg);
}
.openNav #headNavToggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.openNav #headNavToggle span:nth-child(3) {
	top: 15px;
	-webkit-transform: rotate(-315deg);
	transform: rotate(-315deg);
}
}

#headConcept {
	background-color: #fff;
}

/* ==================================================================================================================== */
/* main																																																									*/
/* ==================================================================================================================== */
main {
	padding: 0.5em 0 3em;
	background-color: #fff;
}
main h1 {
	margin:0 0 1.5em;
	padding: 0.75em;
	border-style: solid none;
	border-width: 1px 0;
	border-color: #ddd;
	font-weight:normal;
	font-size:160%;
}
main h1::before {
	font-family: "Font Awesome 7 Free";
  font-weight: 900;
	content: "\f02b";
	margin:0 0.2em 0 0;
	color:#ddd;
}
@media screen and (max-width: 639.99px) {
	main h1 {
		font-size:140%;
	}
}
main h2 {
	font-weight:normal;
	background-color:#eee;
	margin:0 0 1em;
	padding:1em;
	font-size:140%;
}
main h2::before {
	font-family: "Font Awesome 7 Free";
  font-weight: 900;
	content: "\f0ae";
	margin:0 0.2em 0 0;
	color:rgba(19,85,185,1);
}
@media screen and (max-width: 639.99px) {
	main h2 {
		font-size:125%;
	}
}
main h3 {
	font-size:100%;
}
@media screen and (max-width: 639.99px) {
	main h3 {
		font-size:110%;
	}
}
main p {
	margin:0 0 0.75em;
}
#pankuzu {
	margin: 0 0 1em;
	text-align:right;
	font-size:80%;
}
#pankuzu a {
	display: inline-block;
}
#pankuzu a:hover {
	text-decoration: none;
}
#pankuzu a::before {
	font-family: "Font Awesome 7 Free";
  font-weight: 900;
	content: "\f138";
	margin:0 0.2em 0 0.6em;
}
#pankuzu a:first-child::before {
	margin:0 0.2em 0 0;
}


/* ==================================================================================================================== */
/* footer  																																																							*/
/* ==================================================================================================================== */
footer {
	padding:0 0 3em;
	background-image: url(../bin/com/ft_back.png);
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: 600px 250px;
	color: #fff;
}

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

}
footer .wrapper {
	box-sizing: border-box;
	padding: 1em;
	font-size: 80%;
	position: relative
}
footer nav {
	display:flex;
	padding:0 0 2em;

}
footer nav > ul {
	width:24%;
}
	#seal{
	width:260px;
	padding:0.5em 0 0;
	position: absolute;
	right: 50px;
	top:20px;
	text-align: center;
	border:1px solid #ccc;
	border-radius: 5px;
	font-size: 11px;
	line-height: 1.5em;
	background-color: rgba(255,255,255,0.2);
}
@media screen and (max-width: 959.99px) {
	#seal{
	width:260px;
	margin:0 auto 0.5em;
	position:inherit;
	right: 0px;

}
	footer nav > ul {
	width:33%;
}
}
@media screen and (max-width: 639.99px) {
	footer nav {
		display: block;
	}
	footer nav > ul {
		width: auto;
	}
}
footer nav > ul > li {
	line-height:1.75em;
}
footer nav > ul > li > a {
	color:#fff;
}
footer nav > ul > li > a:hover {
	text-decoration:none;
	color: rgba(255,255,127, 1);
}
footer nav > ul > li > a::before {
	font-family: "Font Awesome 7 Free";
  font-weight: 900;
	content: "\f144";
	margin:0 0.2em 0 0;
}
#company {
	text-align:center;
}
#copyright {
	padding:2em 0 0;
	font-size:66%;
	text-align:center;
	border-top: 1px dashed #888;
}


