@import url('https://fonts.googleapis.com/css?family=Pathway+Gothic+One');

@charset "UTF-8";
/*----------------------------------------------------
	☆Noto font
----------------------------------------------------*/

@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 100;
	src: url('../font/NotoSansCJKjp-Thin.eot'); /* IE9 Compat Modes */
	src: url('../font/NotoSansCJKjp-Thin.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('../font/NotoSansCJKjp-Thin.woff') format('woff'), /* Modern Browsers */ url('../font/NotoSansCJKjp-Thin.ttf') format('truetype'); /* Safari, Android, iOS */
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 200;
	src: url('../font/NotoSansCJKjp-Light.eot');
	src: url('../font/NotoSansCJKjp-Light.eot?#iefix') format('embedded-opentype'), url('../font/NotoSansCJKjp-Light.woff') format('woff'), url('../font/NotoSansCJKjp-Light.ttf') format('truetype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 300;
	src: url('../font/NotoSansCJKjp-DemiLight.eot');
	src: url('../font/NotoSansCJKjp-DemiLight.eot?#iefix') format('embedded-opentype'), url('../font/NotoSansCJKjp-DemiLight.woff') format('woff'), url('../font/NotoSansCJKjp-DemiLight.ttf') format('truetype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 400;
	src: url('../font/NotoSansCJKjp-Regular.eot');
	src: url('../font/NotoSansCJKjp-Regular.eot?#iefix') format('embedded-opentype'), url('../font/NotoSansCJKjp-Regular.woff') format('woff'), url('../font/NotoSansCJKjp-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 500;
	src: url('../font/NotoSansCJKjp-Medium.eot');
	src: url('../font/NotoSansCJKjp-Medium.eot?#iefix') format('embedded-opentype'), url('../font/NotoSansCJKjp-Medium.woff') format('woff'), url('../font/NotoSansCJKjp-Medium.ttf') format('truetype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 700;
	src: url('../font/NotoSansCJKjp-Bold.eot');
	src: url('../font/NotoSansCJKjp-Bold.eot?#iefix') format('embedded-opentype'), url('../font/NotoSansCJKjp-Bold.woff') format('woff'), url('../font/NotoSansCJKjp-Bold.ttf') format('truetype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 900;
	src: url('../font/NotoSansCJKjp-Black.eot');
	src: url('../font/NotoSansCJKjp-Black.eot?#iefix') format('embedded-opentype'), url('../font/NotoSansCJKjp-Black.woff') format('woff'), url('../font/NotoSansCJKjp-Black.ttf') format('truetype');
}

/*----------------------------------------------------
	☆FONT
----------------------------------------------------*/

.en {font-family: 'Muli', sans-serif;}

/*----------------------------------------------------
	☆indent
----------------------------------------------------*/
.wraper {
	min-width: 1240px;
	margin: 0 auto;
}

.center {
	text-align: center!important;
}
.left {
	text-align: left!important;
}
.right {
	text-align: right!important;
}
.top0 {
	margin-top: 0 !important;
}
.top5 {
	margin-top: 5px !important;
}
.top10 {
	margin-top: 10px !important;
}
.top15 {
	margin-top: 15px !important;
}
.top20 {
	margin-top: 20px !important;
}
.top25 {
	margin-top: 25px !important;
}
.top30 {
	margin-top: 30px !important;
}
.top35 {
	margin-top: 35px !important;
}
.top40 {
	margin-top: 40px !important;
}
.btm0 {
	margin-bottom: 0 !important;
}
.btm5, .btm05 {
	margin-bottom: 5px !important;
}
.btm10 {
	margin-bottom: 10px !important;
}
.btm15 {
	margin-bottom: 15px !important;
}
.btm20 {
	margin-bottom: 20px !important;
}
.btm25 {
	margin-bottom: 25px !important;
}
.btm30 {
	margin-bottom: 30px !important;
}
.btm35 {
	margin-bottom: 35px !important;
}
.btm40 {
	margin-bottom: 40px !important;
}
.btm45 {
	margin-bottom: 45px !important;
}
.btm50 {
	margin-bottom: 50px !important;
}
.btm55 {
	margin-bottom: 55px !important;
}
.btm60 {
	margin-bottom: 60px !important;
}
.btm65 {
	margin-bottom: 65px !important;
}
.btm70 {
	margin-bottom: 70px !important;
}
.btm75 {
	margin-bottom: 75px !important;
}
.btm80 {
	margin-bottom: 80px !important;
}
.btm85 {
	margin-bottom: 85px !important;
}
.btm90 {
	margin-bottom: 90px !important;
}
.btm95 {
	margin-bottom: 90px !important;
}
.pT0 {
	padding-top: 0!important;
}
.pT5 {
	padding-top: 5px!important;
}
.pT10 {
	padding-top: 10px!important;
}
.pT15 {
	padding-top: 15px!important;
}
.pT20 {
	padding-top: 20px!important;
}
.pT25 {
	padding-top: 25px!important;
}
.pT30 {
	padding-top: 30px!important;
}
.pT35 {
	padding-top: 35px!important;
}
.pT40 {
	padding-top: 40px!important;
}
.pT45 {
	padding-top: 45px!important;
}
.pB0 {
	padding-bottom: 0!important;
}
.pB5 {
	padding-bottom: 5px!important;
}
.pB10 {
	padding-bottom: 10px!important;
}
.pB15 {
	padding-bottom: 15px!important;
}
.pB20 {
	padding-bottom: 20px!important;
}
.lm5 {
	margin-left: 5px !important;
}
.lm10 {
	margin-left: 10px !important;
}
.lm15 {
	margin-left: 15px !important;
}
.lm20 {
	margin-left: 20px !important;
}
.lm50 {
	margin-left: 50px !important;
}
.lm60 {
	margin-left: 60px !important;
}
.lm70 {
	margin-left: 70px !important;
}
.rm5 {
	margin-right: 5px !important;
}
.rm10 {
	margin-right: 10px !important;
}
.rm15 {
	margin-right: 15px !important;
}
.rm20 {
	margin-right: 20px !important;
}
.vAT {
	vertical-align: top!important;
}
.vAM {
	vertical-align: middle!important;
}
.vAB {
	vertical-align: bottom!important;
}
.red {
	color: red;
}
.blue {
	color: #2a529f;
}
.gray {
	color: #999999;
}
.bold {
	font-weight: bold;
}
.normal {
	font-weight: normal;
}
.icon {
	margin-right: 3px;
	vertical-align: middle;
	margin-top: -1px;
}
.indent {
	text-indent: 1em;
}
.indent02 {
	text-indent:-1.8em;
	padding-left: 50px;
}
.spHide {
	display: block;
}
.spDisp {
	display: none;
}
.hvBtn, .hvBtns a {
	transition: 0.2s;
}
.hvBtn:hover, .hvBtns a:hover {
	opacity: 0.7;
}

.p_c {
	text-align: center;
}
/*----------------------------------------------------
	☆Width
----------------------------------------------------*/


.w5 {
	width: 5%!important;
}
.w10 {
	width: 10%!important;
}
.w15 {
	width: 15%!important;
}
.w18 {
	width: 18%!important;
}
.w20 {
	width: 20%!important;
}
.w25 {
	width: 25%!important;
}
.w30 {
	width: 30%!important;
}
.w35 {
	width: 35%!important;
}
.w40 {
	width: 40%!important;
}
.w45 {
	width: 45%!important;
}
.w49 {
	width: 49%!important;
}
.w50 {
	width: 50%!important;
}
.w55 {
	width: 55%!important;
}
.w60 {
	width: 60%!important;
}
.w65 {
	width: 65%!important;
}
.w70 {
	width: 70%!important;
}
.w75 {
	width: 75%!important;
}
.w77 {
	width: 77%!important;
}
.w80 {
	width: 80%!important;
}
.w85 {
	width: 85%!important;
}
.w90 {
	width: 90%!important;
}
.w95 {
	width: 95%!important;
}
.wfull {
	width: 100%!important;
}
.w100 {
	width: 100px;
}
.w150 {
	width: 150px;
}
.w200 {
	width: 200px;
}
.w250 {
	width: 250px;
}
.w300 {
	width: 300px;
}
.w340 {
	width: 340px;
}
.w350 {
	width: 350px;
}
.w360 {
	width: 360px;
}
.w400 {
	width: 400px;
}
.w440 {
	width: 440px;
}
.w450 {
	width: 450px;
}
.w500 {
	width: 500px;
}
.w550 {
	width: 550px;
}
.w600 {
	width: 600px;
}


/*----------------------------------------------------
	☆link
----------------------------------------------------*/
.link-box:hover { opacity: 0.7;}

/*----------------------------------------------------
	☆fontsize
----------------------------------------------------*/

#contents .size10 {
	font-size: 10px!important;
	font-size: 1rem!important;
}
#contents .size11 {
	font-size: 11px!important;
	font-size: 1.1rem!important;
}
#contents .size12 {
	font-size: 12px!important;
	font-size: 1.2rem!important;
}
#contents .size13 {
	font-size: 13px!important;
	font-size: 1.3rem!important;
}
#contents .size14 {
	font-size: 14px!important;
	font-size: 1.4rem!important;
}
#contents .size15 {
	font-size: 15px!important;
	font-size: 1.5rem!important;
}
#contents .size16 {
	font-size: 16px!important;
	font-size: 1.6rem!important;
}
#contents .size17 {
	font-size: 17px!important;
	font-size: 1.7rem!important;
}
#contents .size18 {
	font-size: 18px!important;
	font-size: 1.8rem!important;
}
#contents .size19 {
	font-size: 19px!important;
	font-size: 1.9rem!important;
}
#contents .size20 {
	font-size: 20px!important;
	font-size: 2rem!important;
}
#contents .size21 {
	font-size: 21px!important;
	font-size: 2.1rem!important;
}
#contents .size22 {
	font-size: 22px!important;
	font-size: 2.2rem!important;
}
#contents .size23 {
	font-size: 23px!important;
	font-size: 2.3rem!important;
}
#contents .size24 {
	font-size: 24px!important;
	font-size: 2.4rem!important;
}


/*----------------------------------------------------
	☆basecompo
----------------------------------------------------*/

#contents article {
	margin-bottom: 60px;
}

#contents article.last {
	margin-bottom: 0;
}

#contents section {
	clear: both;
	margin-bottom: 50px;
}
#contents section.last {
	margin-bottom: 0;
}
#contents section.wide {
	width: 100%;
	max-width: inherit;
}
.aural span, span.aural {
	display: none;
	visibility: hidden;
}
img.icon {
	margin-right: 5px;
	vertical-align: middle;
}


/*----------------------------------------------------
	☆floatBox
----------------------------------------------------*/

#contents .img_r{
	float: right;
	margin:0;
	padding:0 0 0 7%;
}

#contents .img_l{
	float: left;
	margin:0;
	padding:0 30px 0 0;
}

#contents .text_r{
	overflow:hidden;
	margin:0;
}

#contents .text_l{
	overflow:hidden;
	margin:0;
}


#contents div.basicFlt {
	clear: both;
	overflow: hidden;
}
#contents div.basicFlt .fltDataL {
	float: left;
	line-height: 1.7;
	padding-top: 5px;
	width: 53%;
}
#contents div.basicFlt .fltImgR {
	float: right;
	width: 42%;
}
#contents div.basicFlt .fltImgR img {
	height: auto;
	width: 100%;
}
#contents div.basicFlt .fltDataR {
	float: right;
	line-height: 1.7;
	padding-top: 5px;
	width: 53%;
}
#contents div.basicFlt .fltImgL {
	float: left;
	width: 42%;
}
#contents div.basicFlt .fltImgL img {
	height: auto;
	width: 100%;
}


/*----------------------------------------------------
	☆clmBox
----------------------------------------------------*/


#contents .clm2Box li {
	float: left;
	margin: 0 2% 20px 0;
	width: 49%;
}

#contents .clm2Box li.even {
	float: right;
	margin-right: 0;
}

#contents .clm3Box li {
	float: left;
	margin: 0 0 30px 0;
	margin-right: 3%;
	width: 31.33%;
}

#contents .clm3Box li:last-child {
	margin-right: 0;
}

#contents .clm4Box li {
	float: left;
	margin: 0 1% 30px;
	width: 23%;
}
#contents .clm4Box li:nth-child(5) {
	margin-top: 20px;
}
#contents .clm4Box li:last-child {
	margin-right:0;
}

#contents .clm4Box .p-peopleList li {
	margin-bottom: 50px;
}

#contents .clm4Box .p-peopleList li:nth-child(5) {
	margin-top: 0;
}




#contents .clm5Box {
	border-collapse: separate;
	border-spacing: 5px 0px;
	display: table;
}

#contents .clm5Box li {
	display: table-cell;
	margin: 0 1.33% 30px 0;
	width: 20%;
}

#contents .clm5Box li:last-child {
	margin-right:0;
}


/*-- img --*/

#contents .clm2Box li img,
#contents .clm3Box li img,
#contents .clm4Box li img,
#contents .clm5Box li img {
	height: auto;
	width: 100%;
}


#contents .clm2BoxBdr li {
	border: 1px solid #CCC;
	float: left;
	margin: 0 1.3% 20px 0;
	padding: 15px 20px 15px;
	width: 48.65%;
}
#contents .clm3BoxBdr li {
	border: 1px solid #CCC;
	float: left;
	margin: 0 1.3% 20px 0;
	padding: 15px 20px 15px;
	width: 32%;
}
#contents .clm4BoxBdr li {
	border: 1px solid #CCC;
	float: left;
	margin: 0 1.3% 20px 0;
	padding: 15px 20px 15px;
	width: 23.7%;
}


/*----------------------------------------------------
	☆head
----------------------------------------------------*/

#contents .head01 {
	color: #000;
	font-size: 4.2rem;
	font-weight: 800;
	text-align: center;
	margin-bottom: 30px;
	letter-spacing: 3px;
	line-height: 1.4;
	position: relative;
}

#contents .head01 small {
	display: block;
	font-size: 1.2rem;
	font-weight: normal;
}

/*----*/

#contents .head02 {
	color: #000;
	font-size: 3.0rem;
	font-weight: normal;
	text-align: center;
	margin-bottom: 50px;
	letter-spacing: 2px;
	position: relative;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#contents .head02:after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -25px;
  display: inline-block;
  width: 5%;/*線の長さ*/
  height: 3px;/*線の太さ*/
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #162a82;
}

#contents .head02 b {
	color: #162a82;
	font-size: 4.2rem;
	font-weight: normal;
}

/*---*/

#contents .head03 {
	color:#000;
	display: flex;
    align-items: center;
	font-size:2.0em;
	font-weight:600;
	text-align:center;
	letter-spacing:6px;
	line-height: 1.4;
	margin-bottom:40px;
}


#contents .head03:before,
#contents .head03:after {
    border-top: 3px solid #000;
    content: "";
    display: inline; /* for IE */
    flex-grow: 1;
}

#contents .head03:before {
    margin-right: 0.5em;
}

#contents .head03:after {
    margin-left: 0.5em;
}


/*---*/

#contents .head04 {
	background-color: #1a1e55;
	border-bottom: 5px solid #4c7de9;
	color: #FFF;
	font-size: 2.0rem;
	font-weight: 600;
	padding: 0.8em 1.0em;
	margin-bottom: 30px;
} 

/*---*/

#contents .head05 {text-align: center;}
#contents .head05 span {
	background-color: #1a1e55;
	color: #FFF;
	font-size: 1.4rem;
	font-weight: 600;
	padding: 0.8em 1.0em;
} 

/*-----*/

#contents .head06 {
	background-color: none;
	border-bottom: 1px dashed #005bab;
	color: #005bab;
	font-size: 2.0rem;
	font-weight: 600;
	padding: 0.5em 0.2em;
	margin-bottom: 30px;
}


/*----------------------------------------------------
	☆Box
----------------------------------------------------*/
#contents .box01 {
	background: url("../cmn_img/bg_box01_l.png"),url("../cmn_img/bg_box01_r.png");
	background-position: left top,right bottom;
	background-repeat: no-repeat,no-repeat;
	background-size: 40px,40px;
	margin: 0 auto 60px;
	width: 100%;	
}

#contents .bgBox01 {
	background: #f3f3f3;
	padding: 5% 0;
}

#contents .bgBox02 {
	background: #dbddf4;
	padding: 3% 0;
}


#contents div.bscBox {
	border: 1px solid #DDD;
	padding: 20px 0 15px;
	margin-bottom: 25px;
}
#contents div.bscBox div.inr {
	margin: 0 20px;
}
#contents div.bb01 {
	border: 1px dotted #666;
}
#contents div.bb02 {
	background-color: #EEEEEE;
}
#contents div.bb03 {
	border: 2px solid #ED6C81;
}
#contents div.bb04 {
	background-color: #FFEEEE;
	border: 4px solid #E90002;
}
#contents div.bb05 {
	background: url(../cmn_img/bg_texture_gray.png) left top repeat;
	border-top: 4px solid #2850A1;
	display: table;
	padding: 45px 45px 20px;
}
#contents div.bb05 .img {
	display: table-cell;
	line-height: 0;
	vertical-align: middle;
}
#contents div.bb05 .data {
	display: table-cell;
	padding: 30px;
	vertical-align: middle;
}
#contents div.bb06 {
	border: 1px solid #DDD;
	padding: 0;
}



/*----------------------------------------------------
	☆Btn
----------------------------------------------------*/


#contents .bscBtn {
	background-color: #1a1e55;
	color: #FFF;
	display: inline-block;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: normal;
	line-height: 1.5;
	min-width: 30%;
	margin: 0 0.6% 15px 0;
	padding: 18px 20px 18px 15px;
	text-align: center;
	text-decoration: none;
	position: relative;
	transition: 200ms ease all;
}

#contents .bscBtn::before,#contents .bscBtn::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}


#contents .bscBtn::before{
	left: 8%;
    width: 25px;
    height: 1px;
    background: #FFF;
}

#contents .bscBtn::after{
	left: 10%;
	width: 15px;
	height: 15px;
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}	



#contents .whBtn {
	background-color: #FFF;
	color: #1a1e55;
}


#contents .whBtn::before{
    background: #1a1e55;
}

#contents .whBtn::after{
	border-top: 1px solid #1a1e55;
	border-right: 1px solid #1a1e55;
}	

	
#contents .pdf::after {
	content: "\f1c1" !important;
	color: #B20000;
	font-family: "fontawesome";
	font-weight: normal;
	right:-80% !important;
    width: 8px;
    height: 17px;
}


/*----------------------------------------------------
	☆List
----------------------------------------------------*/


.numList,
.numListS,
.dotList {
	margin-bottom:15px;
	padding-left:1.6em;
}

.numList li,
.numListS li {
	line-height:150%;
	list-style: decimal outside none;
	margin-bottom: 5px;
}

.dotList li {
	line-height:150%;
	list-style-type : disc;
	margin-bottom:5px;
}


.dotList02 li {
	line-height:150%;
	list-style-type: none;
	margin-left:24px;
	margin-bottom:5px;
}

.dotList02 li:before {
    content: "● ";
    color: #1a1e55;
	margin-left:-22px;
	vertical-align: top;
}


#contents .indList {
	margin-bottom: 35px;
}
#contents .indList li {
	line-height: 1.7;
	text-indent: -1em;
	padding-left: 1em;
	margin-bottom: 5px;
}
#contents .indList li a {
	display: inline;
}
#contents .indList li a:hover {
	text-decoration: none;
}
#contents .indListS {
	margin-bottom: 35px;
}
#contents .indListS li {
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
	margin-bottom: 8px;
	text-indent: -1em;
	padding-left: 1em;
}
#contents .indListS li a {
	display: inline;
}
#contents .indListS li a:hover {
	text-decoration: none;
}
#contents .numList {
	padding-left: 20px;
	margin-bottom: 35px;
}
#contents .numList li {
	line-height: 1.7;
	list-style: decimal outside none;
	margin-bottom: 10px;
}
#contents .numList li a {
	text-decoration: none;
}
#contents .numList li a:hover {
	text-decoration: underline;
}
#contents .numListS {
	padding-left: 20px;
	margin-bottom: 35px;
}
#contents .numListS li {
	line-height: 1.7;
	list-style: decimal outside none;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
	margin-bottom: 8px;
}
#contents .numListS li a {
	text-decoration: none;
}
#contents .numListS li a:hover {
	text-decoration: underline;
}
#contents ul.iconList {
	margin-bottom: 35px;
}
#contents ul.iconList li {
	line-height: 1.7;
	margin-bottom: 10px;
}
#contents ul.iconList li a {
	padding: 0 0 3px 20px;
	text-decoration: underline;
	position: relative;
}
#contents ul.iconList li a:hover {
	text-decoration: none;
}
#contents ul.iconList li.blankIcon a:before {
	content: "\f08e";
	color: #333;
	display: inline-block;
	font-size: 16px;
	font-family: "fontawesome";
	position: absolute;
	left: 0;
	top: 0;
}
#contents ul.iconList li.pdfIcon a:before {
	content: "\f1c1";
	color: #B6202E;
	display: inline-block;
	font-size: 16px;
	font-family: "fontawesome";
	position: absolute;
	left: 0;
	top: 0;
}

/*----------------------------------------------------
	☆Table
----------------------------------------------------*/


#contents div.bscTbl01 table,
#contents table.bscTbl01 {
	border-collapse:collapse;
	border-left:1px solid #cccccc;
	border-top:1px solid #cccccc;
	width:100%;
}

#contents div.bscTbl01 table th,
#contents div.bscTbl01 table td,
#contents table.bscTbl01 th,
#contents table.bscTbl01 td {
	background-color:#FFF;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-right:1px solid #cccccc;
	border-bottom:1px solid #cccccc;
	line-height:1.4;
	padding:20px 20px 17px;
	text-align:left;
}

#contents div.bscTbl01 table th,
#contents table.bscTbl01 th {
	background-color:#393939;
	color:#FFF;
}

#contents div.bscTbl01 table tr.head th,
#contents table.bscTbl01 tr.head th,
#contents div.bscTbl01 table thead th {
	background-color:#000;
	color:#FFF;
}



/*---*/
#contents div.bscTbl02 table,
#contents table.bscTbl02 {
	border-collapse:collapse;
	width:100%;
}

#contents div.bscTbl02 table th,
#contents div.bscTbl02 table td,
#contents table.bscTbl02 th,
#contents table.bscTbl02 td {
	background-color:#FFF;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-bottom:1px dotted#cccccc;
	line-height:1.4;
	padding:20px 20px 17px;
	text-align:left;
}

#contents div.bscTbl02 table th,
#contents table.bscTbl02 th {
	font-weight: bold;
}

#contents div.bscTbl02 table tr.head th,
#contents table.bscTbl02 tr.head th,
#contents div.bscTbl02 table thead th {
	background-color:#000;
	color:#FFF;
}


#contents #enkaku div.bscTbl02 table th {
	text-align: right;
	width: 25%;
}




/*----------------------------------------------------
	☆FORM
----------------------------------------------------*/

#contact .req {
	color: #DF1518;
	font-size: 0.8em;
	padding-left: 4px;
}

#contact input[type="radio"] {
  display: none;
}
#contact label {
  position: relative;
  padding: 3px 3px 3px 20px;
  cursor: pointer;
}
#contact label::before,
#contact label::after {
  position: absolute;
  content: '';
  top: 30%;
  border-radius: 100%;
  -webkit-transition: all .2s;
  transition: all .2s;
}
#contact label::before {
  left: 0;
  width: 20px;
  height: 20px;
  margin-top: -8px;
  background: #efefef;
}

#contact label::after {
 opacity: 0;
left: 4px;
width: 14px;
height: 14px;
margin-top: -4px;
background: #999999;
-webkit-transform: scale(2);
transform: scale(2);
}
#contact input[type="radio"]:checked + label::before {
  background: #efefef;
  border: solid 1px #ddd;
}
#contact input[type="radio"]:checked + label::after {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}


#contact input,
#contact button,
#contact textarea,
#contact select {
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
	box-sizing: border-box;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}


#contact input[type="text"],
#contact textarea {
  outline: none;
  background: #efefef;
  border:solid 1px #efefef;
  -webkit-transition: all .3s;
  transition: all .3s;
  padding: 1% 2%;
}

#contact input[type="text"]:focus,
#contact textarea:focus {
  box-shadow: 0 0 7px #9d5bdf;
  border: 1px solid #9d5bdf;
}


#contents input::-webkit-input-placeholder {
    color: #999999;
    font-weight: normal;
}
#contents input:-ms-input-placeholder {
    color: #999999;
    font-weight: normal;
}
#contents input::-moz-placeholder {
    color: #999999;
    font-weight: normal;
}


#contents .subscribeBtn{
	clear:both;
	text-align: center;
	overflow:hidden;
	padding-top:5%;
	margin:0 auto;
	width:60%;
}


#contents .inputBtn01,#contents .inputBtn02,#contents .inputBtn03 {
	width:48%;
}


#contents .inputBtn01 {
position: relative;
border: 1px solid #ccc;
background-color: #efefef;
color: #333;
float:left;
font-size: 16px;
}

#contents .inputBtn01 input[type="submit"]{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #efefef;
    border: none;
    color: #333;
    font-size: 16px;
    padding: 15px 50px;
	width:100%;
}


#contents .inputBtn01:after{
	display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50px;
  width: 6px;
  height: 6px;
  margin: -4px 0 0 0;
  border-top: solid 2px #9d5bdf;
  border-right: solid 2px #9d5bdf;
  -webkit-transform: rotate(225deg);
          transform: rotate(225deg);
}


#contents .inputBtn02,#contents .inputBtn03{
	position: relative;
border: 1px solid #ccc;
background-color: #9d5bdf;
color: #FFF;
font-size: 16px;
	float: right;
}

#contents .inputBtn03 {
	float: none;
	margin: 0 auto;
}

#contents .inputBtn02 input[type="submit"],
#contents .inputBtn03 input[type="submit"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #9d5bdf;
    border: none;
    color: #FFF;
    font-size: 16px;
    padding: 15px 50px;
	width:100%;
}


#contents .inputBtn02:after,#contents .inputBtn03:after {
	display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 50px;
  width: 6px;
  height: 6px;
  margin: -4px 0 0 0;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}


#contents .subscribeBtn input.back:hover{
	background-color:#333;
	color:#FFF;
}

#contents .subscribeBtn input.submit:hover{
	background-color:#333;
	color:#FFF;
}

#contents .dB { display:block; margin-bottom:10px;}
#contents input.btnAddSearch {
	border:solid 1px #ddd;
	font-size:0.8em;
	padding:7px 15px;
	position: relative;
}

#contents input.btnAddSearch::before{
	content: "";
	    width: 7px;
	    height: 7px;
	    display: inline-block;
	    background: transparent;
	    border-top: 2px solid #9d5bdf;
	    border-right: 2px solid #9d5bdf;
	    -webkit-transform: rotate(45deg);
	    transform: rotate(45deg);
	    -webkit-transition: 0.4s ease-in-out;
		transition: 0.4s ease-in-out;
	    /*! position: absolute; */
	    top: 40%;
	    left: 10px;
}


    #contents .select-wrap {
        position:relative;
    }
	
	#contents .select-wrap:before {
        z-index: 1;
        position: absolute;
        right: 28%;
        top: -15%;
        content: "▼";
        font-family: "IonIcons";
        line-height: 43px;
        color: #7F878C;
        pointer-events: none;
    }

	 #contents .select-wrap select {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		background: #efefef;
		color: #333;
		border-color: #efefef;
		padding: 1% 2%;
	 }
	 
	 
	 #contact textarea {
		 width:75%;
		 min-width:500px;
	 }
	
	



/*----------------------------------------------------
	☆dl
----------------------------------------------------*/

#contents .dl01 { clear: both; overflow: hidden;}
#contents .dl01 dt,#contents .dl01 dd {
	float: left;
	font-size: 1.2em;
	font-family: 'Noto Sans Japanese';
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.04em;
}
#contents .dl01 dt {font-weight: bold; margin-right: 20px; color: #000;}



/*----------------------------------------------------
	☆anchorBox
----------------------------------------------------*/


#contents .anchorBox ul {
	display: table;
	border-collapse: separate;  
	border-spacing: 10px 0;  
	margin: 0 auto;
	width: 100%;
}

#contents .anchorBox ul li {
	box-sizing: border-box;
	border: solid 1px #888888;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}

#contents .anchorBox ul li a {
	color: #1b1f52;
	display: block;
	padding: 20px 0;
	position: relative;
	text-decoration: none;
}

#contents .anchorBox ul li a::after {
	content: "\f063";
	font: normal normal normal 14px/1 FontAwesome;
	font-weight: 600;
	position: absolute;
	top: 40%;
	right: 20px;
	
}


/*---- anchorBox02 ----*/

#contents .anchorBox02 {
	border: 1px dotted #BBB;
	margin-bottom: 25px;
	padding: 15px 15px 15px;
}
#contents .anchorBox02 ul li {
	float: left;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.4;
	margin: 0 1% 5px 0;
}
#contents .anchorBox02 ul li a {
	background-color: #FFF;
	display: block;
	padding: 10px 15px 5px 10px;
	text-decoration: underline;
	position: relative;
}
#contents .anchorBox02 ul li a:hover {
	text-decoration: none;
}
#contents .anchorBox02 ul li a:before {
	content: "\f150";
	color: #1955a5;
	display: inline-block;
	font-family: "fontawesome";
	font-size: 15px;
	margin-right: 7px;
}



/*----------------------------------------------------
	☆tab area
----------------------------------------------------*/

#contents div.tabArea {
	margin-bottom: 30px;
	padding-top: 5px;
}
#contents div.tabArea div.tabMenu {
	border-bottom: 7px solid #1a1e55;
	margin-bottom: 40px;
}
#contents div.tabArea div.tabMenu ul {
	margin: 0 0 0 15px;
}
#contents div.tabArea div.tabMenu ul li {
	color: #1a1e55;
	cursor: pointer;
	font-family: 'Noto Sans Japanese';
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.4;
	float: left;
	line-height: 1.4;
	margin-right: 0.3%;
	text-align: center;
	min-width: 24.5%;
}
#contents div.tabArea div.tabMenu ul li span {
	background-color: #FFF;
	border: 1px solid #1a1e55;
	border-bottom: none;
	display: block;
	padding: 14px 10px 12px;
	transition: 0.2s;
	border-radius: 5px 5px 0 0 / 5px 5px 0 0;
	-webkit-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
	-moz-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
}
#contents div.tabArea div.tabMenu ul li span:hover, #contents div.tabArea div.tabMenu ul li.current span {
	background: #1a1e55;
	color: #FFF;
}
#contents div.tabArea div.tabMenu ul li span:hover:before, #contents div.tabArea div.tabMenu ul li.current span:before {
	color: #FFF;
}
#contents div.tabArea div.tabMenu ul li.current {
	cursor: default;
}

/*-------------------- googlemap ---------------------*/
#contents .map iframe {
	height: 100%;
	width: 100%;
}

/*-------------------- bxslider ---------------------*/

.bx-wrapper .bx-pager.bx-default-pager a {
	 background: #efefef;
text-indent: -9999px;
display:inline-block;
width: 15px;
height: 15px;
margin: 0 5px;
outline: 0;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
border-radius: 10px;
 }

.bx-wrapper .bx-controls-direction a { display:none !important;}

.facilities .bx-wrapper .bx-pager.bx-default-pager a.active {
	background:#ffab3b;
}

.support .bx-wrapper .bx-pager.bx-default-pager a.active {
	background:#9d5bdf;;
}

.bx-wrapper .bx-pager {
text-align: center;
display: table;
margin: 0 auto;
}

.bx-pager-item {
  display: table-cell;
  height: 30px;
  text-align: center; 
  vertical-align: middle; 
  layout-grid-line:30px; 
	margin: 0 auto;
}

.bx-pager-item img {
  width:auto;
  height:auto;
  max-width:96px;
  max-height:54px;
  vertical-align: middle;
}

@media screen and (max-width: 796px){
	.worksVisualList li{
		width: 100%!important;
	}
	.pager li{
		margin-bottom: 3px!important;
	}
	.pager a,.pager span{
		font-size: 13px!important;
	}
	.pager .arrow{
		display: block;
	}
}




/*-------------------*/

#contents .link { cursor: pointer;}
#contents .link:hover {
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}




/* ADDED 202206 */
@media only screen and (min-width: 851px) {
	#contents #people2 .clm3Box ul {
		display: flex;
		justify-content: center;
	}

	#contents #people2 .clm3Box ul li {
		float: none;
	}
}


