@charset "UTF-8";
/*
 * cmn_layout.css
 *
 */


/* !HTML5 elements
---------------------------------------------------------- */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section
{ display: block;}

/* !Reseting
---------------------------------------------------------- */
body {
	font-family: 'Noto Sans JP', "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3" , "Hiragino Kaku Gothic ProN" , 'メイリオ' ,Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic" , Verdana, Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-weight: 400;
	-webkit-text-size-adjust: none;
	line-height: 2;
	color: #26353D;
}

@media screen and (max-width:1039px){
body {
	font-size: 16px;
}
}

@media screen and (max-width:767px){
body {
	font-size: 14px;
}
}

body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td, figure, figcaption
{ margin: 0; padding: 0;}

input, textarea
{ margin: 0; font-size: 100%;}

label
{ cursor: pointer;}

table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}

fieldset, img
{ border: 0;}

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

address, caption, cite, code, dfn, em, th, var
{ font-style: normal; font-weight: normal;}

ol, ul
{ list-style: none;}

caption, th
{ text-align: left;}

h1, h2, h3, h4, h5, h6
{ font-size: 100%; font-weight: normal;}

q:after, q:before
{ content:'';}

a
{ cursor: pointer; }

a, input
{ outline: none; }

input, textarea
{ border-radius: 0; font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3" , "Hiragino Kaku Gothic ProN" , 'メイリオ' ,Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic" , Verdana, Arial, Helvetica, sans-serif;}

input[type="button"],input[type="submit"],input[type="reset"]
{ -webkit-appearance: none; background: none; border: none; padding: 0; cursor: pointer;}

abbr, acronym
{ border: 0;}
*
{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;}

/* !Clearfix
---------------------------------------------------------- */
.clearfix,
#contents,
.section
{
	display: block;
	min-height: 1%;
}
.clearfix:after,
#contents:after,
.section:after
{
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}
* html .clearfix,
* html #contents,
* html .section
{
	height: 1%;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}
/* !Layout
---------------------------------------------------------- */
html { overflow-y: scroll;}
body { 
	text-align: left;
	position:relative;
}
@media print {
	html,
	html body { *zoom: 0.65;}
}

/* !header
---------------------------------------------------------- */
#header {
	width:100%;
	height:90px;
	background: rgba(255,255,255,0);
	margin:0 auto;
	z-index:100;
	position:fixed;
	top:0;
	left:0;
	transition: .6s;
}
#header.transform {
	background: rgba(255,255,255,1);
}
	#header h1#headerLogo a,
	#header p#headerLogo a {
		display:block;
		position:absolute;
		width:240px;
		height:32px;
		top:29px;
		left:30px;
	}
		#header h1#headerLogo a img,
		#header p#headerLogo a img {
			display: block;
			width:240px;
			height:32px;
		}

#header #sidebar {
	width: 75%;
	height: 90px;
	background: rgba(255,255,255,0);
	text-align: center;
	z-index: 300;
	position:relative;
	float:right;
}

#header #global-nav ul {
	position:absolute;
	width:auto;
	height:80px;
	list-style: none;
	top:0;
	right:30px;
}
	#header #global-nav ul li {
		display:block;
		float:left;
	}
			#header #global-nav ul li.norm a {
				font-size:17px;
				font-weight:600;
				color:#26353D;
				height:90px;
				line-height:90px;
				position: relative;
				display: block;
				outline: none;
				text-decoration: none;
				text-transform: uppercase;
				margin-right:30px;
			}
				#header #global-nav ul li.norm a span {
					position:relative;
					z-index:2;
				}
				#header #global-nav ul li.norm:last-child a {
					margin-right:0;
				}
			#header #global-nav ul li.norm a:hover,
			#header #global-nav ul li.norm a.current {
				color:#26353D;
			}
				#header #global-nav ul li.norm a:after {
					content: '';
					position: absolute;
					bottom: 0;
					left: 0;
					width: 100%;
					height: 3px;
					background:#21A6D8;
					transition: all .3s;
					transform: scale(0, 1);
					transform-origin: center top;
				}
				#header #global-nav ul li.norm a:hover:after,
				#header #global-nav ul li.norm a.current:after{
					transform: scale(1, 1);
				}
			#header.transform #global-nav ul li.norm a {
				color:#26353D;
			}
				#header.transform #global-nav ul li.norm a:hover {
					color:#26353D;
				}
				#header.transform #global-nav ul li.norm a:after {
					background:#21A6D8;
				}
			#header #global-nav ul li.contact a {
				position: relative;
				display: block;
				width:180px;
				height: 46px;
				background-color: #21A6D8;
				font-size:17px;
				font-weight: 600;
				color:#FFF;
				line-height: 42px;
				border: 2px solid #21A6D8;
				border-radius: 25px;
				transition: .3s;
				top:22px;
			}
				#header #global-nav ul li.contact a:hover {
					background-color: #FFF;
					color:#21A6D8;
					transform: scale(1.04);
				}
				#header #global-nav ul li.contact a i {
					margin-right: 0.6em;
				}

a#panel-btn {
	display: none;
}

#overlay {
	display: none;
	position: fixed;
	background: rgba(54,73,84,.6);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

@media screen and (max-width:1139px){
			#header #global-nav ul li.norm a {
				margin-right:25px;
			}
}

@media screen and (max-width:1039px){
#header {
	height:80px;
}
#header.transform {
	background: rgba(255,255,255,1);
}
	#header h1#headerLogo a,
	#header p#headerLogo a {
		width:240px;
		height:32px;
		top:22px;
		left:30px;
	}
		#header h1#headerLogo a img,
		#header p#headerLogo a img {
			width:240px;
			height:32px;
		}
	
#header #sidebar {
	padding-top: 60px;
	position: fixed;
	right: -50%;
	top: 0;
	height: 100%;
	width: 50%;
	background-color: #21A6D8;
	-webkit-transition: .8s ease;
	transition: .8s ease;
}
	
#header #global-nav ul {
	position:inherit;
	width:60%;
	height:auto;
	margin:90px auto 0 auto;
}
	#header #global-nav ul li {
		display:block;
		float:none;
	}
			#header #global-nav ul li.norm a {
				font-size:18px;
				height:60px;
				color:#FFF;
				line-height:60px;
				display: block;
				margin-right:0;
			}
			#header #global-nav ul li.norm a:hover {
				color:#FFF;
			}
			#header #global-nav ul li.norm a.current {
				color:#1F286F;
			}
				#header #global-nav ul li.norm a:after {
					display:none;
				}
			#header.transform #global-nav ul li.norm a {
				color:#FFF;
			}
				#header.transform #global-nav ul li.norm a:hover {
					color:#FFF;
				}
				#header.transform #global-nav ul li.norm a.current {
				color:#1F286F;
			}
			#header #global-nav ul li.contact a {
				width:220px;
				height: 50px;
				background-color: #FFF;
				font-size:18px;
				color:#21A6D8;
				line-height: 48px;
				border: 0;
				top:20px;
				margin: 0 auto;
			}
				#header #global-nav ul li.contact a:hover {
					background-color: #FFF;
					color:#21A6D8;
					transform: none;
				}

	/* nav open */
	.open {
		overflow: hidden;
	}
	.open #overlay {
		display: block;
		animation: overlay .5s 1 ease ;
	}
	.open #sidebar  {
		-webkit-transform: translate3d(-100%,0,0);
		transform: translate3d(-100%,0,0);
	}
	@keyframes overlay {
		0% {
			opacity: 0;
		}
		100% {
			opacity: 1;
		}
	}
	
a#panel-btn {
width: 60px;
height: 60px;
display: block;
float:right;
position:fixed;
top:10px;
right:30px;
z-index:400;
}

#panel-btn{
  display: inline-block;
  position: relative;
  width: 60px;
  height: 60px;
  background: #21A6D8;
  border-radius:50%;
}
#panel-btn-icon{
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 2px;
  margin: -1px 0 0 -12px;
  background: none;
  transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 24px;
  height: 2px;
  background:#FFF;
  transition: .3s;
}
#panel-btn-icon:before{
  margin-top: -5px;
}
#panel-btn-icon:after{
  margin-top: 3px;
}
#panel-btn .close{
  background: transparent;
}
#panel-btn .close:before, #panel-btn .close:after{
  margin-top: 0;
}
#panel-btn .close:before{
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
#panel-btn .close:after{
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

	/* z-index */
	#sidebar {
		z-index: 300;
	}
	#panel-btn {
		z-index: 400;
	}
	#overlay {
		z-index: 200;
	}
	#header {
		z-index: 100;
	}
}

@media screen and (max-width:767px){
#header {
	height:70px;
}
	#header h1#headerLogo a,
	#header p#headerLogo a {
		width:170px;
		height:23px;
		top:24px;
		left:20px;
	}
		#header h1#headerLogo a img,
		#header p#headerLogo a img {
			width:170px;
			height:23px;
		}
	
#header #sidebar {
	padding-top: 0;
	right: -100%;
	width: 100%;
}
	
#header #global-nav ul {
	width:60%;
	margin:90px auto 0 auto;
}
			#header #global-nav ul li.norm a {
				font-size:16px;
				height:50px;
				color:#FFF;
				line-height:50px;
				display: block;
				margin-right:0;
			}
			#header #global-nav ul li.contact a {
				font-size:16px;
			}
	
a#panel-btn {
width: 50px;
height: 50px;
top:10px;
right:15px;
}

#panel-btn{
  width: 50px;
  height: 50px;
}
#panel-btn-icon{
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 2px;
  margin: -1px 0 0 -12px;
  background: none;
  transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 24px;
  height: 2px;
  background:#FFF;
  transition: .3s;
}
#panel-btn-icon:before{
  margin-top: -5px;
}
#panel-btn-icon:after{
  margin-top: 3px;
}
#panel-btn .close{
  background: transparent;
}
#panel-btn .close:before, #panel-btn .close:after{
  margin-top: 0;
}
#panel-btn .close:before{
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
#panel-btn .close:after{
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}
}

/* !pageTop
---------------------------------------------------------- */
.pagetop {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 99;
}
	.pagetop a {
		display: block;
		width: 50px;
		height: 50px;
		background-color: #21A6D8;
		border-radius:50%;
		text-indent:-9999px;
		transition: all 0.2s ease;
		position:relative;
	}
		.pagetop a:before{
			position:absolute;
			content:"";
			display: inline-block;
			width: 8px;
			height: 8px;
			margin: 0 10px;
			border-top: 2px solid #FFF;
			border-left: 2px solid #FFF;
			transform: rotate(45deg);
			top:24px;
			left:10px;
			transition:.2s;
		}
			.pagetop a:hover:before{
				top:20px;
			}
	
@media screen and (max-width:1039px){
.pagetop {
	bottom: 15px;
	right: 15px;
}
			.pagetop a:hover:before{
				top:24px;
			}
}

@media screen and (max-width:767px){
.pagetop {
	bottom: 10px;
	right: 10px;
}
	.pagetop a {
		width: 44px;
		height: 44px;
	}
		.pagetop a:before{
			top:20px;
			left:7px;
		}
			.pagetop a:hover:before{
				top:20px;
			}
}

/* !footer
---------------------------------------------------------- */
#footer {
	width: 100%;
	position:relative;
	overflow:hidden;
}
	#footer div.footerBnr {
		position: absolute;
		width: 100%;
		padding:0 50px;
		top:0;
		left:0;
	}
		#footer div.footerBnr ul {
			width:100%;
			max-width:1100px;
			margin:0 auto;
			display:flex;
		}
			#footer div.footerBnr ul li {
				width:50%;
			}
				#footer div.footerBnr ul li a {
					position:relative;
					overflow: hidden;
					display:block;
					width:100%;
					height:280px;
				}
				#footer div.footerBnr ul li:first-child a {
					border-radius:12px 0 0 12px;
				}
				#footer div.footerBnr ul li:last-child a {
					border-radius:0 12px 12px 0;
				}
					#footer div.footerBnr ul li a div.bg {
						position:absolute;
						width:100%;
						height:100%;
						background-position:50% 50%;
						background-repeat:no-repeat;
						background-size:cover;
						top:0;
						left:0;
						z-index:50;
					}
					#footer div.footerBnr ul li:first-child a div.bg {
						background-image:url("../img/recruit_bnr_img.jpg")
					}
					#footer div.footerBnr ul li:last-child a div.bg {
						background-image:url("../img/contact_bnr_img.jpg")
					}
					#footer div.footerBnr ul li a div.mask {
						position:absolute;
						width:100%;
						height:100%;
						background:rgba(33, 166, 216, .8);
						top: 0;
						right: 0;
						left: 0;
						bottom: 0;
						z-index:51;
						-webkit-transform: scaleX(1);
						transform: scaleX(1);
						-webkit-transform-origin: top left;
						transform-origin: top left;
						-webkit-transition: -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1);
						transition: -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1);
						transition: transform 1s cubic-bezier(0.19, 1, 0.22, 1);
						transition: transform 1s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1);
					}
						#footer div.footerBnr ul li a:hover div.mask {
							background:rgba(33, 166, 216, .8);
							transform: scaleX(0);
							-webkit-transform-origin: top right;
							transform-origin: top right;
						}
						#footer div.footerBnr ul li a p {
							position:relative;
							font-size:28px;
							font-weight:500;
							text-align:center;
							color:#FFF;
							letter-spacing:0.06em;
							line-height:1.6;
							padding-top:110px;
							z-index:51;
						}
							#footer div.footerBnr ul li a p span {
								display: block;
								font-family: "Roboto", sans-serif;
								font-size:18px;
								font-weight: 500;
							}

	#footer div.footerBtm {
		width: 100%;
		padding:300px 50px 40px 50px;
		margin-top: 60px;
		background-color: #E0E6F4;
		position:relative;
	}
		#footer div.footerBtm div.bgTop {
			display: block;
			width:100%;
			position: absolute;
			top:0;
			left:0;
		}
		#footer div.footerBtm div.inner {
			width:100%;
			max-width:1100px;
			position:relative;
			margin:0 auto;
			display: flex;
		}
		#footer div.footerBtm div.inner div.left {
			width:50%;
		}
			#footer div.footerBtm div.inner div.left a.footerLogo img {
				display: inline-block;
				width:196px;
				margin-bottom: 20px;
			}
			#footer div.footerBtm div.inner div.left p.tel {
				font-family: "Roboto", sans-serif;
				font-size:26px;
				font-weight: 500;
				color: #21A6D8;
				margin-bottom: 10px;
			}
				#footer div.footerBtm div.inner div.left p.tel i {
					font-size:70%;
					margin-right:0.4em;
				}
				#footer div.footerBtm div.inner div.left p.tel a {
					color:#21A6D8;
				}
			#footer div.footerBtm div.inner div.left p.footerName {
				font-size:13px;
			}
			#footer div.footerBtm div.inner div.left p.add {
				font-size:13px;
			}
				#footer div.footerBtm div.inner div.left p.add br {
					display: none;
				}
		#footer div.footerBtm div.inner div.right {
			width:50%;
		}
			#footer div.footerBtm div.inner div.right ul.footerLinks {
				width:auto;
				display: flex;
				flex-wrap: wrap;
			}
				#footer div.footerBtm div.inner div.right ul.footerLinks li {
					width:25%;
					text-align: center;
					margin-bottom: 10px;
				}
					#footer div.footerBtm div.inner div.right ul.footerLinks li a {
						font-size:15px;
						font-weight: 600;
						color: #26353D;
						transition:.6s;
					}
						#footer div.footerBtm div.inner div.right ul.footerLinks li a:hover {
							color: #21A6D8;
						}
			#footer div.footerBtm p.copyright {
				font-family: "Roboto", sans-serif;
				font-size:12px;
				font-weight:500;
				text-align:center;
				color:#9CA7BC;
				margin-top: 50px;
				letter-spacing:0.06em;
			}

@media screen and (max-width:1039px){
	#footer div.footerBnr {
		padding:0 30px;
	}
				#footer div.footerBnr ul li a {
					height:220px;
				}
						#footer div.footerBnr ul li a:hover div.mask {
							transform: scaleX(1);
							-webkit-transform-origin: top left;
							transform-origin: top left;
						}
						#footer div.footerBnr ul li a p {
							font-size:22px;
							padding-top:85px;
						}
							#footer div.footerBnr ul li a p span {
								font-size:14px;
							}

	#footer div.footerBtm {
		padding:230px 30px 40px 30px;
	}
		#footer div.footerBtm div.bgTop {
			top:0;
		}
		#footer div.footerBtm div.inner div.left {
			width:45%;
		}
			#footer div.footerBtm div.inner div.left a.footerLogo img {
				width:170px;
			}
			#footer div.footerBtm div.inner div.left p.tel {
				font-size:24px;
			}
			#footer div.footerBtm div.inner div.left p.add {
				font-size:12px;
			}
		#footer div.footerBtm div.inner div.right {
			width:55%;
		}
					#footer div.footerBtm div.inner div.right ul.footerLinks li a {
						font-size:13px;
					}
						#footer div.footerBtm div.inner div.right ul.footerLinks li a:hover {
							color: #26353D;
						}
			#footer div.footerBtm p.copyright {
				font-size:11px;
			}
}

@media screen and (max-width:767px){
#footer {
	width: 100%;
	position:relative;
	overflow:hidden;
}
	#footer div.footerBnr {
		position: absolute;
		width: 100%;
		padding:0 25px;
		top:0;
		left:0;
	}
		#footer div.footerBnr ul {
			width:100%;
			max-width:360px;
			margin:0 auto;
			flex-wrap: wrap;
		}
			#footer div.footerBnr ul li {
				width:100%;
				margin-bottom: 1px;
			}
				#footer div.footerBnr ul li a {
					height:160px;
				}
				#footer div.footerBnr ul li:first-child a {
					border-radius:12px 12px 0 0;
				}
				#footer div.footerBnr ul li:last-child a {
					border-radius:0  0 12px 12px;
				}
						#footer div.footerBnr ul li a p {
							font-size:20px;
							padding-top:56px;
						}
							#footer div.footerBnr ul li a p span {
								font-size:13px;
							}

	#footer div.footerBtm {
		padding:330px 25px 30px 25px;
		margin-top: 60px;
	}
		#footer div.footerBtm div.bgTop {
			top:0;
		}
		#footer div.footerBtm div.inner {
			flex-wrap: wrap;
		}
		#footer div.footerBtm div.inner div.left {
			width:100%;
			margin-bottom: 40px;
		}
			#footer div.footerBtm div.inner div.left a.footerLogo img {
				display: block;
				width:170px;
				margin: 0 auto 20px auto;
			}
			#footer div.footerBtm div.inner div.left p.tel {
				font-size:22px;
				text-align: center;
			}
			#footer div.footerBtm div.inner div.left p.footerName {
				font-size:12px;
				text-align: center;
			}
			#footer div.footerBtm div.inner div.left p.add {
				text-align: center;
			}
		#footer div.footerBtm div.inner div.right {
			width:100%;
		}
			#footer div.footerBtm div.inner div.right ul.footerLinks {
				width:auto;
				display: flex;
				flex-wrap: wrap;
			}
				#footer div.footerBtm div.inner div.right ul.footerLinks li {
					width:100%;
					text-align: center;
					margin-bottom: 0;
				}
					#footer div.footerBtm div.inner div.right ul.footerLinks li a {
						display: block;
						width:100%;
						height: 44px;
						font-size:13px;
						line-height: 44px;
					}
			#footer div.footerBtm p.copyright {
				margin-top: 30px;
			}
}

@media screen and (max-width:359px){
				#footer div.footerBtm div.inner div.left p.add br {
					display: inherit;
				}
}

/* !Box
---------------------------------------------------------- */
.box01 {
	width:100%;
	padding:30px;
	background:#EDEEEF;
	margin-left:auto;
	margin-right:auto;
}

@media screen and (max-width:767px){
.box01 {
	width:auto;
	padding:20px;
}
}

/* !見出し
---------------------------------------------------------- */
.tit_basic01 {
	font-size:22px;
	font-weight: 700;
	padding-left:1em;
	position: relative;
	margin-bottom: 20px;
}
	.tit_basic01:before {
		position: absolute;
		content:"";
		width:8px;
		height: 8px;
		background-color: #21A6D8;
		border-radius: 50%;
		top:20px;
		left:0;
	}

.tit_basic02 {
	font-size:22px;
	font-weight: 700;
	position: relative;
	margin-bottom: 20px;
}
	.tit_basic02 i {
		color:#21A6D8;
		margin-right: 0.6em;
	}

@media screen and (max-width:1039px){
.tit_basic01 {
	font-size:20px;
}
	.tit_basic01:before {
		top:18px;
	}
	
.tit_basic02 {
	font-size:20px;
}
}

@media screen and (max-width:767px){
.tit_basic01 {
	font-size:17px;
}
	.tit_basic01:before {
		width:6px;
		height: 6px;
		top:15px;
	}
	
.tit_basic02 {
	font-size:17px;
}
}

/* !Listing
---------------------------------------------------------- */
ul.iconList {
	width:100%;
}
	ul.iconList li {
		position: relative;
		margin-bottom:15px;
		padding-left:1em;
	}
		ul.iconList li:last-child {
			margin-bottom:0;
		}
		ul.iconList li:before {
			position: absolute;
			content:"";
			width:6px;
			height: 6px;
			background-color: #21A6D8;
			border-radius: 50%;
			top:16px;
			left: 0;
		}
ul.circle li {
	list-style:circle;
	margin:0 0 10px 20px;
}
	ul.circle li:last-child {
		margin-bottom:0;
	}

ol.numList li {
	list-style:decimal;
	margin:0 0 15px 20px;
}
	ol.numList li:last-child {
		margin-bottom:0;
	}
	
ol.numListCircle {
	counter-reset: my-counter;
	list-style: none;
	padding: 0;
}
	ol.numListCircle li {
		line-height:1.8;
		margin-bottom: 10px;
		padding-left: 35px;
		position: relative;
	}
		ol.numListCircle li:before {
			position:absolute;
			content: counter(my-counter);
			counter-increment: my-counter;
			background-color: #3A4856;
			color: #FFF;
			display: block;
			float: left;
			font-size:14px;
			line-height: 22px;
			margin-left: -35px;
			text-align: center;
			height: 22px;
			width: 22px;
			border-radius: 50%;
			top:3px;
		}
	
@media screen and (max-width:1039px){
		ul.iconList li:before {
			top:13px;
		}
}

@media screen and (max-width:767px){
		ul.iconList li:before {
			top:12px;
		}
	ol.numListCircle li {
		padding-left: 30px;
	}
		ol.numListCircle li:before {
			font-size:12px;
			margin-left: -30px;
			top:2px;
		}
}

/* !Table
---------------------------------------------------------- */
.table_basic01 {
	width: 100%;
	border-collapse:collapse;
}
	.table_basic01 th,
	.table_basic01 td {
		padding: 1.6em 0;
		border-bottom: 1px solid #E1E4E5;
	}
	.table_basic01 th {
		width:30%;
		vertical-align:top;
		font-weight: 700;
		color:#7C858A;
	}
	.table_basic01 td {
		width:70%;
		vertical-align:top;
	}

.table_basic02 {
	width: 100%;
	border-collapse:collapse;
}
	.table_basic02 th,
	.table_basic02 td {
		padding: 1.6em 0;
		border-bottom: 1px solid #E1E4E5;
	}
	.table_basic02 th {
		width:30%;
		vertical-align:top;
		font-weight: 700;
		color:#7C858A;
	}
	.table_basic02 td {
		width:70%;
		vertical-align:top;
		text-align: right;
	}

.table_basic03 {
	width: 100%;
	border-collapse:collapse;
}
	.table_basic03 th,
	.table_basic03 td {
		padding: 1.6em 0;
		border-bottom: 1px solid #E1E4E5;
	}
	.table_basic03 th {
		width:70%;
		vertical-align:top;
		font-weight: 700;
		color:#7C858A;
	}
	.table_basic03 td {
		width:30%;
		vertical-align:top;
		text-align: right;
	}
	
@media screen and (max-width:1039px){
	.table_basic01 th {
		width:35%;
	}
	.table_basic01 td {
		width:65%;
	}
	
	.table_basic02 th {
		width:30%;
	}
	.table_basic02 td {
		width:70%;
	}
	
	.table_basic03 th {
		width:70%;
	}
	.table_basic03 td {
		width:30%;
	}
}

@media screen and (max-width:767px){
.table_basic01 {
	width: 100%;
}
	.table_basic01,
	.table_basic01 thead,
	.table_basic01 tbody,
	.table_basic01 tr,
	.table_basic01 th,
	.table_basic01 td {
		width: 100%;
		display: block;
		
	}
	.table_basic01 th {
		font-weight:bold;
		padding: 1.2em 0 0 0;
		border-bottom:0;
	}
	.table_basic01 td {
		padding: 0.6em 0 1.2em 0;
		border-bottom:1px solid #DAE0E4;
	}
	
.table_basic02 {
	width: 100%;
}
	.table_basic02,
	.table_basic02 thead,
	.table_basic02 tbody,
	.table_basic02 tr,
	.table_basic02 th,
	.table_basic02 td {
		width: 100%;
		display: block;
		
	}
	.table_basic02 th {
		font-weight:bold;
		padding: 1.2em 0 0 0;
		border-bottom:0;
	}
	.table_basic02 td {
		padding: 0.6em 0 1.2em 0;
		text-align: left;
		border-bottom:1px solid #DAE0E4;
	}
	
.table_basic03 {
	width: 100%;
}
	.table_basic03,
	.table_basic03 thead,
	.table_basic03 tbody,
	.table_basic03 tr,
	.table_basic03 th,
	.table_basic03 td {
		width: 100%;
		display: block;
		
	}
	.table_basic03 th {
		font-weight:bold;
		padding: 1.2em 0 0 0;
		border-bottom:0;
	}
	.table_basic03 td {
		padding: 0.6em 0 1.2em 0;
		text-align: left;
		border-bottom:1px solid #DAE0E4;
	}
}

/*フォーム--------------------------------------*/
span.label {
	display:inline-block;
	padding:1px 5px;
	background-color:#E46856;
	color:#FFF;
	font-size:10px;
	margin-left:7px;
	opacity: 1;
}

input.norm {
	width:100%;
	background:#FFF;
	border:1px solid #CED5E6;
	padding:0.5em 0.8em;
}

input.short {
	width:50%;
	background:#FFF;
	border:1px solid #CED5E6;
	padding:0.5em 0.8em;
}

input.exshort {
	width:30%;
	background:#FFF;
	border:1px solid #CED5E6;
	padding:0.5em 0.8em;
}

select {
	border:1px solid #CED5E6;
	padding:0.5em 0.8em;
}
	select option{
		margin-bottom:5px;
	}

textarea.norm {
	width:100%;
	height:150px;
	background:#FFF;
	border:1px solid #CED5E6;
	padding:0.5em 0.8em;
}

label.check {
	display:inline-block;
	padding:0.5em 0.8em;
	background:#FFF;
	border:1px solid #CED5E6;
}

input.btn_submit {
	padding:1.4em 2em;
	font-size:18px;
	font-weight: 700;
	background:#21A6D8;
	color:#FFF;
	transition: all 0.6s ease;
}
	input.btn_submit:hover {
		opacity:0.7;
	}

input.btn_back {
	font-size:18px;
	font-weight: 700;
	background:#999;
	padding:1.4em 2em;
	color:#FFF;
	transition: all 0.6s ease;
}
	input.btn_back:hover {
		opacity:0.7;
	}

@media screen and (max-width:1039px){
label.check {
	display:block;
	margin-bottom:10px;
}
label.check:last-child {
	margin-bottom:0;
}
	
input.btn_submit {
	transition: none;
}
	input.btn_submit:hover {
		opacity:1;
	}

input.btn_back {
	transition: none;
}
	input.btn_back:hover {
		opacity:1;
	}
}

@media screen and (max-width:767px){
input.norm {
	width:100%;
}

input.short {
	width:70%;
}

input.exshort {
	width:50%;
}

label.check {
	width:100%;
}

textarea.norm {
	width:100%;
}

input.btn_submit {
	font-size:14px;
}

input.btn_back {
	font-size:14px;
}

input.btn_submit {
	padding:1.4em 1.4em;
	font-size:15px;
}

input.btn_back {
	padding:1.4em 1.4em;
	font-size:15px;
}
}

@media screen and (max-width:360px){
input.btn_submit {
	padding:1.4em 1.2em;
	font-size:14px;
}

input.btn_back {
	padding:1.4em 1.2em;
	font-size:14px;
}
}