@charset 'utf-8';
/***********************************
 reset
***********************************/
@font-face {
	font-family: YuGothicM;
	src: local("Yu Gothic Medium");
}
*, html, body, div, dl, dt, dd, ul, ol, li, header, footer, nav,section,
h1, h2, h3, h4, h5, h6, form, input, textarea, p{
	margin: 0;
	padding: 0;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
	font-size: 1em;
}
dl, ul, ol{
	list-style-type: none;
}
html{
	overflow: unset;
	height: auto;
	min-height: 100%;
}

input[type="submit"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}
/***********************************
 base
***********************************/
body{
	position: relative;
	background: none;
	min-width: 1000px;
	height: 100vh;
	min-height: 100%;
	line-height: 1.6em;
	letter-spacing: 0.07em;
	color: #0f0f0f;
	font-size: 15px;
	text-align: center;
}
@media screen and (max-width: 640px) {
	body{
		min-width: 100%;
	}
}
article,
section,
div.container{
	clear: both;
	position: relative;
	margin: auto;
	overflow: hidden;
}
article{
	margin: 0 0 40px;
	padding: 20px;
	background: #ffffff;
}
@media screen and (max-width: 640px) {
	article{
		margin: 0 0 20px;
		padding: 20px 10px;
	}
}

div.container{
	width: calc(1000px - 20px);
}
@media screen and (max-width: 640px) {
	div.container{
		width: calc(100% - 16px);
	}
}

section{
	overflow: visible;
}
section + section{
	margin: 30px auto 0;
}
section + section > h3{
	margin-top: 20px;
}

a:link , a:hover, a:active, a:visited{
//	transition: all 1.0s;
	color: #0089ff;
	text-decoration: none;
	cursor: pointer;
}
a:hover{
	color: #55b4ff;
}

/***********************************
 #breadcrumb
***********************************/
ol#breadcrumb{
	padding: 5px 10px;
	letter-spacing: 0;
	text-align: left;
}
ol#breadcrumb:after{
	clear: both;
	display: block;
	content: "";
}
ol#breadcrumb li{
	position: relative;
	float: left;
}
ol#breadcrumb li:after{
	position: relative;
	top: -1px;
	display: inline-block;
	padding: 0 10px;
	color: #999999;
	content: ">";
}
ol#breadcrumb li:last-child:after{
	display: none;
}
ol#breadcrumb li a{
	display: inline-block;
	color: #242424;
	text-decoration: none;
}
ol#breadcrumb li a:hover{
	color: #55b4ff;
}

@media screen and (max-width: 640px) {
	ol#breadcrumb{
		display: none;
	}
}

/***********************************
 .ul4, .row, .column
***********************************/
.ul4 li{
	float: left;
	margin: 0 10px 8px 0;
	width: calc(100% /4 - 30px /4);
}
.ul4 li:nth-child(4n){
	margin: 0 0 8px;
}

.row{
	position: relative;
	display: -webkit-flex;
	display: flex;
	width: calc(100% + 15px);
	margin: 0 0 20px;
}
.row:after{
	clear: both;
	display: block;
	content: "";
}
.column1,
.row .column2,
.row .column3-1,
.row .column3-2,
.row .column4-1,
.row .column4-3,
.row .column5-1{
	display: block;
	float: left;
	overflow: hidden;
	margin: 0 15px 0 0;
}
.column1{ width: calc(100% - 15px); clear: both; }
.row .column2{ width: calc(50% - 15px); }
.row .column2.short{ width: calc(42% - 15px); }
.row .column2.long{ width: calc(58% - 15px); }
.row .column3-1{ width: calc((100% /3) - 15px); }
.row .column3-2{ width: calc((100% /3) * 2 - 15px); }
.row .column4-1{ width: calc(25% - 15px); }
.row .column4-3{ width: calc(75% - 15px); }
.row .column5-1{ width: calc((100% /5) - 15px); }

.column1 img,
.row .column2 img,
.row .column3-1 img,
.row .column3-2 img,
.row .column4-1 img,
.row .column4-3 img,
.row .column5-1 img{
	display: block;
	width: 100%;
}

.column1 img.fixity,
.row .column2 img.fixity,
.row .column3-1 img.fixity,
.row .column3-2 img.fixity,
.row .column4-1 img.fixity,
.row .column4-3 img.fixity,
.row .column5-1 img.fixity{
	display: block;
	margin: 0 auto;
	width: auto;
}
.column1 strong.inlineBlock,
.row .column2 strong.inlineBlock,
.row .column3-1 strong.inlineBlock,
.row .column3-2 strong.inlineBlock,
.row .column4-1 strong.inlineBlock,
.row .column4-3 strong.inlineBlock,
.row .column5-1 strong.inlineBlock{
	display: inline-block;
	padding: 5px 0;
	width: 100%;
	text-align: left;
	font-size: 1.1em;
}

.row .boxShadow{
	border: solid 1px #c4c4c4;
	background: #ffffff;
	width: calc(100% - 4px);
	height: calc(100% - 5px);
	box-shadow: 0px 0px 3px 0px #c4c4c4;
}

.row.boxRowBorder{
	padding: 15px 0 15px 15px;
	background: #ffffff;
	width:calc(100% - 17px);
	border: solid 1px #cfceac;
}
.row.boxRowBorder + .row.boxRowBorder{
	border-top: none;
	margin-top: -40px;
	padding-top: 0;
}
/***********************************
 header
***********************************/
header{
	clear: both;
	position: relative;
	padding: 10px 0 0;
	width: 100%;
	display: block;
	letter-spacing: normal;
	text-align: left;
	overflow: hidden;
}
header a:link , header a:hover, header a:active, header a:visited{
	color: #ffffff;
	text-decoration: none;
}
header a:hover{
	color: #55b4ff;
}
header h1{
	margin: 0;
	width: 207px;
	height: 55px;
	background: url(../images/logo.gif) no-repeat center center;
	background-size: contain;
}
header h1 a{
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
}
header p{
	margin: 0 0 10px;
	line-height: 1em;
	text-align: center;
	font-size: 0.85em;
}

@media screen and (max-width: 640px) {
	header h1{
		display: inline-block;
		margin: 0 0 10px;
	}
	header p{
		margin: 0 8px 10px 8px;
		text-align: left;
	}
}

/***********************************
 nav
***********************************/
.dwCheck,
.dwBtn,
.drawer-menu{
	display: none;
}
nav#globalNav ul{
	width: 1000px;
	margin: 0 auto 10px;
	overflow: hidden;
}
nav#globalNav ul::after{
	clear: both;
	display: block;
	margin: auto;
	content: "";
}
nav#globalNav ul li{
	position: relative;
	float: left;
	padding: 0 1px;
	width: calc((100% - 10px) / 5);
	height: 50px;
	background: #5c69a8; /* Old browsers */
	background: -moz-linear-gradient(top,  #5c69a8 0%, #19255f 55%, #5d6aab 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #5c69a8 0%,#19255f 55%,#5d6aab 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #5c69a8 0%,#19255f 55%,#5d6aab 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5c69a8', endColorstr='#5d6aab',GradientType=0 ); /* IE6-9 */
	border-top: solid 3px #6f84c3;
	border-bottom: solid 3px #1a1e41;
}
nav#globalNav ul li.on,
nav#globalNav ul li:hover{
	background: #9da7db; /* Old browsers */
	background: -moz-linear-gradient(top,  #9da7db 0%, #475388 55%, #9da7db 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #9da7db 0%,#475388 55%,#9da7db 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #9da7db 0%,#475388 55%,#9da7db 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9da7db', endColorstr='#9da7db',GradientType=0 ); /* IE6-9 */
	border-top: solid 3px #adbae8;
	border-bottom: solid 3px #6b72b1;
}
nav#globalNav ul li::before,
nav#globalNav ul li::after{
	position: absolute;
	top: 5px;
	bottom: 5px;
	display: block;
	content: "";
}
nav#globalNav ul li::before{
	left: 0;
	border-left: solid 1px #040b3b;
}
nav#globalNav ul li::after{
	right: 0;
	border-left: solid 1px #6572b1;
}
nav#globalNav ul li.on::before,
nav#globalNav ul li:hover::before{
	border-color: #3d436e;
}
nav#globalNav ul li.on::after,
nav#globalNav ul li:hover::after{
	border-color: #7681b6;
}
nav#globalNav ul li:first-child::before,
nav#globalNav ul li:last-child::after{
	border: none;
}

nav#globalNav ul li a:link , nav#globalNav ul li a:hover, nav#globalNav ul li a:active, nav#globalNav ul li a:visited{
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
}
nav#globalNav ul li:nth-child(1) a:link , nav#globalNav ul li:nth-child(1) a:hover, nav#globalNav ul li:nth-child(1) a:active, nav#globalNav ul li:nth-child(1) a:visited{
	background: url(../images/nav01.png) no-repeat center 10px;
}
nav#globalNav ul li:nth-child(2) a:link , nav#globalNav ul li:nth-child(2) a:hover, nav#globalNav ul li:nth-child(2) a:active, nav#globalNav ul li:nth-child(2) a:visited{
	background: url(../images/nav02.png) no-repeat center 10px;
}
nav#globalNav ul li:nth-child(3) a:link , nav#globalNav ul li:nth-child(3) a:hover, nav#globalNav ul li:nth-child(3) a:active, nav#globalNav ul li:nth-child(3) a:visited{
	background: url(../images/nav03.png) no-repeat center 10px;
}
nav#globalNav ul li:nth-child(4) a:link , nav#globalNav ul li:nth-child(4) a:hover, nav#globalNav ul li:nth-child(4) a:active, nav#globalNav ul li:nth-child(4) a:visited{
	background: url(../images/nav04.png) no-repeat center 10px;
}
nav#globalNav ul li:nth-child(5) a:link , nav#globalNav ul li:nth-child(5) a:hover, nav#globalNav ul li:nth-child(5) a:active, nav#globalNav ul li:nth-child(5) a:visited{
	background: url(../images/nav05.png) no-repeat center 10px;
}

@media screen and (max-width: 640px) {
	nav#globalNav{
		display: none;
	}
	
	.dwBtn,
	.drawer-menu{
		display: block;
	}
	/* dwWrap */
	#dwWrap{
		display: table;
		width: 100%;
		height: 100vh;
		box-shadow: 0 0 50px 0 rgba(0,0,0,.8);
		-webkit-transition-property: all;
		transition-property: all;
		-webkit-transition-delay: .3s;
		transition-delay: .3s;
		-webkit-transition-duration: .5s;
		transition-duration: .5s;
	}
	#dwWrap__inner{
		display: table-cell;
	}
	/* drawer menu */
	.drawer-menu{
		box-sizing: border-box;
		position: fixed;
		top: 0;
		right: 0;
		width: 300px;
		height: 100%;
		padding: 100px 0;
		background: #222;
		-webkit-transition-property: all;
		transition-property: all;
		-webkit-transition-duration: .5s;
		transition-duration: .5s;
		-webkit-transition-delay: 0s;
		transition-delay: 0s;
		-webkit-transform-origin: right center;
		-ms-transform-origin: right center;
		transform-origin: right center;
		-webkit-transform: perspective(500px) rotateY(-90deg);
		transform: perspective(500px) rotateY(-90deg);
		opacity: 0;
	}
	.drawer-menu li{
		text-align: center;
	}
	.drawer-menu li a{
		display: block;
		height: 50px;
		line-height: 50px;
		font-size: 14px;
		color: #fff;
		-webkit-transition: all .8s;
		transition: all .8s;
	}
	.drawer-menu li a:hover{
		color: #1a1e24;
		background: #fff;
	}
	
	/* checkbox */
	.dwCheck{
		display: none;
	}
	
	/* menu button - label tag */
	.menu-btn{
		position: fixed;
		display: block;
		top: 20px;
		right: 8px;
		display: block;
		width: 40px;
		height: 40px;
		font-size: 10px;
		text-align: center;
		cursor: pointer;
		z-index: 3;
	}
	.bar{
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 40px;
		height: 3px;
		background: #999999;
		-webkit-transition: all .5s;
		transition: all .5s;
		-webkit-transform-origin: left top;
		-ms-transform-origin: left top;
		transform-origin: left top;
	}
	.bar.middle{
		top: 13px;
		opacity: 1;
	}
	.bar.bottom{
		top: 26px;
		-webkit-transform-origin: left bottom;
		-ms-transform-origin: left bottom;
		transform-origin: left bottom;
	}
	.menu-btn__text{
		position: absolute;
		bottom: -13px;
		left: 0;
		right: 0;
		margin: auto;
		color: #666666;
		-webkit-transition: all .5s;
		transition: all .5s;
		display: block;
		visibility: visible;
		opacity: 1;
	}
	.menu-btn:hover .bar{
		background: #cccccc;
	}
	.menu-btn:hover .menu-btn__text{
		color: #cccccc;
	}
	.close-menu{
		position: fixed;
		top: 0;
		right: 300px;
		width: 100%;
		height: 100vh;
		background: rgba(0,0,0,0);
		-webkit-transition-property: all;
		transition-property: all;
		-webkit-transition-duration: .3s;
		transition-duration: .3s;
		-webkit-transition-delay: 0s;
		transition-delay: 0s;
		visibility: hidden;
		opacity: 0;
	}
	
	/* checked */
	.dwCheck:checked ~ .drawer-menu{
		-webkit-transition-delay: .3s;
		transition-delay: .3s;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
		opacity: 1;
		z-index: 2;
	}
	.dwCheck:checked ~ #dwWrap{
		-webkit-transition-delay: 0s;
		transition-delay: 0s;
		-webkit-transform: translateX(-300px);
		-ms-transform: translateX(-300px);
		transform: translateX(-300px);
	}
	.dwCheck:checked ~ .menu-btn .menu-btn__text{
		visibility: hidden;
		opacity: 0;
	}
	.dwCheck:checked ~ .menu-btn .bar.top{
		width: 56px;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.dwCheck:checked ~ .menu-btn .bar.middle{
		opacity: 0;
	}
	.dwCheck:checked ~ .menu-btn .bar.bottom{
		width: 56px;
		top: 40px;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.dwCheck:checked ~ .close-menu{
		-webkit-transition-duration: 1s;
		transition-duration: 1s;
		-webkit-transition-delay: .3s;
		transition-delay: .3s;
		background: rgba(0,0,0,.5);
		visibility: visible;
		opacity: 1;
		z-index: 3;
	}
}
/***********************************
 footer
***********************************/
footer{
	clear: both;
	position: relative;
	margin: 100px 0 0;
	padding: 30px 0 0;
	background: #272727;
	width: 100%;
	height: 200px;
	display: block;
	letter-spacing: normal;
	color: #ffffff;
	font-size: 0.85em;
}
footer a:link , footer a:hover, footer a:active, footer a:visited{
	color: #ffffff;
	text-decoration: none;
}
footer a:hover{
	color: #55b4ff;
}

footer #copyright{
	position: absolute;
	bottom: 50px;
	left: 10px;
	right: 10px;
	text-align: center;
}
/***********************************
 table
***********************************/
table{
	width: 100%;
	border-collapse: collapse;
	line-height: 1.3em;
}
th{
	padding: 10px 20px;
	border: #bbbbbb 1px solid;
	text-align: left;
	background: #eceffd;
	font-weight: normal;
	width: 200px;
}
td{
	padding: 10px;
	background: #ffffff;
	border: #bbbbbb 1px solid;
	text-align: left;
}
tr:nth-child(2n) td{
	background: #f5f5f5;
}

table.noBorder{
}
table.noBorder th,
table.noBorder td{
	padding: 5px 10px;
	background: none;
	border: none;
}
table.noBorder th img,
table.noBorder td img{
	display: block;
	margin: auto;
}

table.schLst + table.schLst{
	margin-top: 30px;
}
table.schLst tr:first-child th{
	background: #d1d9ff;
}
table.schLst tr:first-child th:nth-child(1){ width: 40%; }
table.schLst tr:first-child th:nth-child(2){ width: 35%; }
table.schLst tr:first-child th:nth-child(4){ width: 80px; }
table.schLst tr td:nth-child(4) a{
	display: block;
	padding: 5px 0;
	background: #f6fbff;
	border: solid 1px #c5c5c5;
	color: #757575;
	text-align: center;
}
table.schLst tr td:nth-child(4) a:hover{
	background: #f0f8ff;
}

@media screen and (max-width: 640px) {
	table.schLst tr:nth-child(2n){
		background: #f5f5f5;
	}
	table.schLst tr:first-child th:nth-child(1){ width: calc(100% - 18px); }
	table.schLst tr:first-child th:nth-child(2){ width: calc(100% - 18px); }
	table.schLst tr:first-child th:nth-child(3){ width: calc(75% - 34px); padding-bottom: 10px; }
	table.schLst tr:first-child th:nth-child(4){ width: 25%; text-indent: -9999px; padding-bottom: 10px; }
	table.schLst tr th,
	table.schLst tr td{
		float: left;
		display: block;
		width: calc(100% - 18px);
		padding: 4px 8px;
		border: none;
		background: none;
	}
	table.schLst tr th:nth-child(1){
		padding-top: 10px;
	}
	table.schLst tr td:nth-child(3){
		padding-bottom: 10px;
		width: calc(70% - 34px);
	}
	table.schLst tr td:nth-child(4){
		padding: 0 0 10px;
		width: 30%;
	}
	table.schLst tr td:nth-child(4) a{
		padding: 2px 0;
		background: #f6fbff;
		border: solid 1px #c5c5c5;
		color: #757575;
		text-align: center;
	}
	
	table.dtlTbl th{
		width: auto;
	}
}

/***********************************
 h2, h3, h4
***********************************/
h2, h3, h4{
	line-height: 1.4em;
	text-align: left;
	font-weight: normal;
}

h2 a:link , h2 a:hover, h2 a:active, h2 a:visited,
h3 a:link , h3 a:hover, h3 a:active, h3 a:visited,
h4 a:link , h4 a:hover, h4 a:active, h4 a:visited{
	color: #0f0f0f;
	text-decoration: none;
	cursor: unset;
}

h2{
	margin: 50px 0 10px;
	padding: 10px 20px;
	border:rgb(136 147 199) 1px;
	border-style: solid none;
	background: repeating-linear-gradient(45deg, #fff, #fff 3px, rgba(60, 179, 228, 0.1) 3px, rgba(60, 179, 228, 0.1) 6px);
	font-size: 1.5em;
}
h2:first-child,
ol#breadcrumb + h2{
	margin-top: 20px;
}
@media screen and (max-width: 640px) {
	h2:first-child,
	ol#breadcrumb + h2{
		margin-top: 0px;
	}
}

h3{
	position: relative;
	margin: 20px 0;
	padding: 0 0 8px 20px;
	font-size: 1.4em;
}

h3:before{
	position: absolute;
	content: '';
	bottom: -3px;
	left: 0;
	width: 0;
	height: 0;
	border: none;
	border-left: solid 12px transparent;
	border-bottom: solid 12px rgb(193 152 57);
}
h3:after {
	position: absolute;
	content: '';
	bottom: -3px;
	left: 10px;
	width: 100%;
	border-bottom: solid 2px rgb(193 152 57);
}


/*

h3{
	position: relative;
	margin: 15px 0;
	padding: 0 0 10px;
	font-size: 1.6em;
}
h3:after{
	position: absolute;
	left: -5px;
	right: -5px;
	bottom: 0;
	content: "";
	width: calc(100% + 10px);
	height: 5px;
	background: -webkit-repeating-linear-gradient(-45deg, #94D2ED, #22abf5 2px, #fff 2px, #fff 2px);
	background: repeating-linear-gradient(-45deg, #94D2ED, #22abf5 2px, #fff 2px, #fff 3px);

}
*/

h4{
	margin: 30px 0 20px;
	padding: 0 0 0 15px;
	border-left: solid 5px #cccccc;
	font-size: 1.4em;
}
h3 + h4{
	margin: 20px 0 ;
}
/***********************************
 aside
***********************************/
aside{
	float: right;
	padding: 20px;
	background: #ffffff;
	width: calc(340px - 40px);
	height: 100%;
	text-align: left;
	overflow: hidden;
}

aside ul li{
	margin: 0 0 10px;
	border-left: solid 5px #22abf5;
	line-height: 1.2em;
}
aside ul li a{
	display: block;
	padding-left: 10px;
}
aside ul li a:link , aside ul li a:hover, aside ul li a:active, aside ul li a:visited{
		color: #0f0f0f;
}
aside ul li a:hover{
		background: #e2f8ff;
}

@media screen and (max-width: 640px) {
	aside{
		float: none;
		margin: 0;
		padding: 20px 8px;
		width: calc(100% - 16px);
		background: none;
	}
	
	aside h3:after{
		background: -webkit-repeating-linear-gradient(-45deg, #ccc, #ccc 2px, #878787 2px, #878787 4px);
		background: repeating-linear-gradient(-45deg, #ccc, #ccc 2px, #878787 2px, #878787 4px);
	}
	aside ul li a:hover{
			background: #ffffff;
	}
}

/***********************************
 main
***********************************/
main{
//	float: left;
	background: none;
	width: 100%;
	text-align: left;
	overflow: hidden;
}
@media screen and (max-width: 640px) {
	main{
		float: none;
		padding: 0;
		width: 100%;
	}
}

/***********************************
 others
***********************************/
.txtSS{
	font-size: 0.88em;
	letter-spacing: -0.1em;
}
.txtS{
	font-size: 0.9em;
	letter-spacing: -0.06em;
}
.txtM{
	font-size: 1.05em;
	letter-spacing: -0.06em;
}
.txtL{
	font-size: 1.2em;
	letter-spacing: 0;
}
.txtAL{
	text-align: left;
}
.txtAC{
	text-align: center;
}
.txtAR{
	text-align: right;
}

.fltL{
	float: left;
}
.fltR{
	float: right;
}

ul.disc{
	list-style-type: disc;
	margin-left: 20px;
	text-align: left;
}
@media screen and (max-width: 640px) {
	ul.disc li{
		margin: 5px 0;
	}
}

cite{
	font-style: normal;
}
img + cite{
	display: block;
	text-align: right;
	font-style: normal;
}

/***********************************
 .btn, .btnBox, .btnBoxRow
***********************************/
a.btn{
	display: block;
	text-indent: -9999px;
	background-repeat: no-repeat;
	background-position: left top;
}
a.btn:hover{
	background-position: left bottom;
}

a.btnTxt{
	display: inline-block;
	margin: 10px; 
	padding: 0 1em 0 1.05em;
	background: #423837;
	min-width: 180px;
	height: 33px;
	line-height: 33px;
	letter-spacing: 0.05em;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	font-size: 1em;
	border-radius: 3px;
}
a.btnTxt:hover,
a.btnTxt:active{
	background: #4f4342;
}

a.btnTxtBlue{
	position: relative;
	display: inline-block;
	margin: 10px; 
	padding: 0 1em 0 1.05em;
	background: #27a0e0;
	min-width: 170px;
	height: 33px;
	overflow: hidden;
	z-index: 1;
	line-height: 33px;
	letter-spacing: 0.05em;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	font-size: 1em;
	border-radius: 3px;
}
a.btnTxtBlue:before{
	position: absolute;
	content: '';
	right: 0px;
	bottom: 0px;
	width: 0;
	height: 0;
	border: none;
	border-left: solid 80px transparent;
	border-bottom: solid 33px #2094db;
	z-index: -1;
}
a.btnTxtBlue:hover{
	background: #228dc7;
}
a.btnTxtBlue:hover:before{
	border-bottom: solid 30px #1d83c2;
}

a.bgChenge{
	position: relative;
	display: inline-block;
	color: #242424;
	text-decoration: none;
	transition: all 0.5s;
}
a.bgChenge:hover{
	color: #242424;
	background: #ffffff;
	box-shadow: inset 0 0 10px 10px #f4d6e5;
}
a.imgChenge{
//	transition: all 0.5s;
}
a.imgChenge img{
	display: unset !important;
}
a.imgChenge:hover{
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

.btnBox{
	display: table;
	border-collapse: separate;
	border-spacing: 15px;
	width: 100%;
	table-layout: fixed;
}
.btnBox a.btnTxt,
.btnBox a.btnTxt2{
	display: table-cell;
	width: auto;
	border-radius: unset;
}

.btnBoxLine{
	clear: both;
	margin: 10px 0;
}
.btnBoxLine:after{
	clear: both;
	display: block;
	content: "";
}
.btnBoxLine a.btn{
	float: left;
	margin-right: 4px;
}

.btnBoxCover{
	clear: both;
	margin: 10px auto 20px;
	padding: 20px 0;
	width: 80%;
	background: #eef0d9;
	border: solid #ffffff 3px;
	outline: solid #dde4ce 1px;
	text-align: center;

}
.btnBoxCover:after{
	clear: both;
	display: block;
	content: "";
}
.btnBoxCover p{
	display: inline-block;
	margin: 0 auto;
	text-align: center;
	font-size: 1.1em;
}
.btnBoxCover .btnBoxLine a.btnTxt{
	margin: 5px 10px 0; 
}

.btnBoxRow{
	margin: 15px;
}
.btnBoxRow a.btn{
	display: block;
	margin: 0 auto;
}
.btnBoxRow a.btn + a.btn{
	margin-top: 15px;
}

/***********************************
 form
***********************************/
form{
	text-align: center;
}
form th span,
form .error{
	color:#d90000;
}
form label{
	position: relative;
	display: inline-block;
	margin: 3px 30px 3px 0;
	min-width: 200px;
	cursor: pointer;
}
form label span{
	position: relative;
	top: -3px;
}
form label.policy{
	margin: 20px auto 10px;
	font-size: 1.05em;
}
form input[type="checkbox"]{
	margin-right: 5px;
	width: 18px;
	height: 18px;
	font-weight: bold;
}
form input[type="text"],
form textarea{
	margin: 1px 0;
	padding: 5px 5px;
	line-height: 1.3em;
	color: #000000;
	width: 95%;
}
form input[type="text"]{
	line-height: 2em;
}

form input[type="button"].btn,
form input[type="submit"].btn{
	padding: 8px 20px;
	min-width: 300px;
	background: #e1e1e1;
	border: solid 1px #adadad;
}
form input[type="button"].btn:hover,
form input[type="submit"].btn:hover{
	background: #e5f1fb;
	border: solid 1px #0078d7;
}

/* placeholder */
form textarea[name="detail"]::placeholder,
form input[type="text"]::placeholder{
	color: #b3b3b3;
	line-height: 2em;
}
/* placeholder IE */
form textarea[name="detail"]:-ms-input-placeholder,
form input[type="text"]:-ms-input-placeholder{
	color: #b3b3b3;
	line-height: 2em;
}
/* placeholder Edge */
@supports (-ms-ime-align: auto){
	form textarea[name="detail"]::-ms-input-placeholder,
	form input[type="text"]::-ms-input-placeholder{
		color: #b3b3b3;
		line-height: 2em;
		opacity: 1;
	}
}

form.todofuken{
	padding: 0 0 10px;
	text-align: left;
}
form.todofuken select{
	padding: 8px 15px;
}
form.todofuken input[type="submit"].btn{
	min-width: auto;
	padding: 6px 20px;
}
