/*****************************************************-
CSS Document : PC用
- ****************************************************/

html {
	width:100%;
	box-sizing: border-box;
}
body {
	-webkit-text-size-adjust: 100%;
	color: #333;
	font-size: 1.4rem;
	line-height: 1.6;
	*font: x-small; /* Win IE 5-5.5､6(後方互換モード)向け */
	*font-size: small; /* Win IE7およびWin IE6標準準拠モード向け */
	overflow-x:hidden;
	width:100%;
}
.is_ie body {
	font-size: small;
	*font: x-small;
	*font-size: small;
}
table {
	font: 100%; /* Win IE 5-5.5､6(後方互換モード)向け */
	font-size: inherit; /* モダンブラウザ向け */
}
pre,
code,
kbd,
samp,
tt {
	font-family: monospace;
	line-height: 100%;
	*font-size: 108%; /* Win IE全般向け */
}
/*相対文字サイズ*/

.large {
	font-size: 1.2em;
}
.x-large {
	font-size: 1.4em;
}

/*****************************************************-
Common
- ****************************************************/
#container{	
	position: relative;	
	height: 100%;	
	width:100%;	
	padding-bottom: 70px;
}
.width{width:70%;}
.sp-only {
	display: none;
}
.img-swap {
	background-position: left top;
	background-repeat: no-repeat;
	display: block;
	overflow: hidden;
	text-indent: -9999px;
}
a.img-swap:hover,
a.img-swap:focus {
	filter: alpha(opacity=80);
	-moz-opacity: .8;
	opacity: .8;
}

/* For modern browsers */
.pc-cf:before,
.pc-cf:after {
	content: '';
	display: table;
}
.pc-cf:after {
	clear: both;
}
/* For IE 6/7 (trigger hasLayout) */
.pc-cf {
	zoom: 1;
}
.dsp-no-pc{ display:none; visibility:hidden;}
a img{
}
a:hover img,
a:focus img {
	filter: alpha(opacity=80);
	-moz-opacity: .8;
	opacity: .8;
}



/*****************************************************-
top
- ****************************************************/

.txt-box{width:60%;}
h2.txt-box{font-size:1.5em; line-height:1.6em; text-align:center;}
h3.txt-box{font-size:1.2em; line-height:1.6em; text-align:left;}
.bg-top-catch{ background:url(../images/bg-top-catch.png) left bottom no-repeat}

.top-service{ display:table; width:60%; margin: 2em auto 4em auto;}
.top-service dl{ display:table-cell;}
.top-service dd{ font-size:1.2em; margin-top:0.5em;}
h3.icon-camera {
	font-size:2em;
	text-align:center;
	font-weight:600;
  }
h3.icon-camera img{
	width:5%;
	display:inline-block;
	vertical-align:middle;
  }  
/*****************************************************-
Contents
- ****************************************************/
main{
    width:100%;
}
#main-top {
	min-height: 1000px;
}
#main {
	min-height: 1000px;
	padding-bottom:60px;
}
.bg-Lgray{ background:#f4f4f4; padding:40px 0;}
h2.ttl {
	padding: 1em 20px;
	font-size:2em;
	font-weight:600;
	color: #494949;
	background: transparent;/*背景透明に*/
	border: solid 2px #0168b7;/*左線*/
}

h3.ttl {
	padding: 0.25em 0.5em;/*上下 左右の余白*/
	color: #494949;
	font-size:1.6em;
	font-weight:600;
	background: transparent;/*背景透明に*/
	border-left: solid 6px #e4007f;/*左線*/
}

.nav-box-pc{ 
	display: table;
	table-layout: fixed;
	text-align: center;
	width:80%;
	margin:auto;
	}
.nav-box-pc li{ 
	display:table-cell;
	vertical-align:middle;
	}
.nav-box-pc li img,
.nav-box-pc li img:hover
{ 
	width:90%;
	}
	
.commonTable{
	margin-top:20px;
	font-size:1.2em;
	}
.commonTable th {
    width:30%;
    text-align: left;
    background-color: #efebe8;
}
	

.commonTable td,
.commonTable th {
    padding: 0.8em 1.6em;
    border-bottom: 1px solid #d3cfcc;
}	

.profile{font-size:1.2em; margin-top:20px;}


.pic-box{ display:table; padding-top:20px;}
.pic-box li{ display:table-cell; vertical-align:top; padding-right:40px; font-size:1.2em;word-break: break-all; box-sizing:border-box;}

.pic-box li:nth-child(1){ width:60%; }
.pic-box li:nth-child(2){ padding-right:0; width:40%; }
.pic-box img{ 
	width: 100%;
	height: 50%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	}

.checklist{
	margin-top:1em;
	margin-bottom:50px;
}
.checklist div {
  position: relative;
  margin-left:1.3em;
}
.checklist div::after {
	display: block;
	content: '';
	position: absolute;
	top: .5em;
	left: -1.2em;
	width: 8px;
	height: 3px;
	border-left: 4px solid #0168b7;
	border-bottom: 4px solid #0168b7;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.list-disc div {
  position: relative;
  margin-left:1em;
  margin-bottom:0.5em;
}
.list-disc div::after {
  display: block;
  content: '';
  position: absolute;
  top: .5em;
  left: -1em;
  width: 6px;
  height: 6px;
  background-color: #0168b7;
  border-radius: 100%;
}
/*****************************************************-
header
- ****************************************************/
header {
	height:65px;
	box-sizing:border-box;
	display:table;
	padding:0;
}


.js-flex-box {
	height: auto !important;
}
.header-nav{
	margin:auto;
	box-sizing:border-box;
	width:70%;
}
.header-nav .nav{
	display:table;
	height:65px;
}
.header-nav .nav li {
	padding: 0 0 0 2em;
	display:table-cell;
	vertical-align:middle;
	font-size:1.1em;
}
.header-nav .nav li a {
	color: #FFF;
	text-decoration: none;
	padding:10px 0;
}
.header-nav .nav li a:hover,
.header-nav .nav li a:focus {
	text-decoration: none;
	color:#acdbff;
}
.header-in{
    position: relative;
    max-width: 1000px;
    margin: auto;
	}
.btn-contact{
	position:absolute;
	top:0;
	right:20px;
	background:#FFF;
	}
/*****************************************************-
footer
- ****************************************************/
footer{height:70px;}
footer a{ color:#FFF}

/*****************************************************-
parts
- ****************************************************/
.breadcrumb {
	background-color: #F2F2F2;
	margin-left: auto;
	margin-right: auto;
	width: 980px;
}
.breadcrumb ul {
	font-size: 85%; /*11px*/
	padding: 10px 13px;
}
.breadcrumb ul li {
	color: #5D5D5D;
	float: left;
}
.breadcrumb ul li a {
	color: #5D5D5D;
}
.resizeimage{ 
    width:100%;/* トリミングしたい枠の幅 */
    position: relative;
	background-color:#0168b7;

}
img.kv-sp { display: none; }  /* sp用を非表示 */
img.kv-pc {
	display:block;
	height: 70%;
	width:70%;
	margin:auto!important;
	overflow: hidden;
	} 


.btn {
	width: 330px;
	height: 50px;
	margin: 50px auto 50px;
	padding: 0;
}
.btn a {
	display: block;
	position: relative;
	z-index: 100;
	text-align:center;
	background: #0068b7;
	color: #fff;
	font-size: 1.5em;
	font-weight:600;
	line-height: 50px;
	text-decoration:none;
}

.btn-pink {
	overflow: hidden;
	width: 330px;
	height: 50px;
	margin: auto;
	padding: 0;
}
.btn-pink a {
	display: block;
	position: relative;
	z-index: 100;
	text-align:center;
	background: #e4007f;
	color: #fff;
	font-size: 1.5em;
	font-weight:600;
	line-height: 50px;
	text-decoration:none;
}

.btn-pink a:hover {
   background-color: rgba(228,0,127,0.6);
   color: #FFF;
}