@charset "utf-8";


/* Design
--------------------------------------------------*/

body{
	color: #666;
	background-color: #fff;
	letter-spacing: normal;
	font-size: 14px !important;
	line-height: 1.8em;
	/* I pad BGwidth Hack*/
	/*min-width: 1200px;*/
	_display: inline;
	_zoom: 1;
	font-size: 100%; 
	overflow-x: hidden;
}


/* Container - Contents
--------------------------------------------------*/

.wrap{
	width: 100%;
	padding: 0 40px 0 40px;
}

.container{
	width: 1080px;
	max-width: 100%;
	margin: 0 auto;
	text-align: left;
}

.contents{
	margin: 80px 0;
}

/*.contents:last-child{
	margin: 60px 0 80px 0;
}*/

.flex{
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-content: space-between;
	flex-wrap: wrap;
	/*align-items: center;*/
}

.flex li img{
	width: 100%;
}

.flex2{
	width: 100%;
}
.flex2 li{
	width: 47%;
}

.flex3{
	width: 100%;
}
.flex3 li{
	width: 31%;
}

.flex4{
	width: 100%;
}
.flex4 li{
	width: 22%;
}

.left{
	float: left;
}

.right{
	float: right;
}

.textRight{
	text-align: right;
}

.center{
	text-align: center;
}


.bgBlue{
	padding: 60px 0;
	background-color: #00a0d1;
}

.bgGray{
	padding: 80px 0;
	background-color: #f5f8fa;
	margin: 0 calc(50% - 50vw);
  	width: 100vw;
}


/* Parts
--------------------------------------------------*/

h2,h3,h4{
	font-weight: bold;
	line-height: 2em;
}

.contentsTitle{
	text-align: center;
	font-size: 16px;
	color: #333;
	font-weight: bold;
	letter-spacing: 0.3em;
	margin-bottom: 60px;
}

.contentsTitle span{
	font-size: 22px;
	letter-spacing: 0.2em;
	display: block;
	padding-bottom: 10px;
}

.titleBar{
	text-align: center;
	font-size: 18px;
	color: #fff;
	letter-spacing: 0.2em;
	font-weight: bold;
	padding: 30px 0;
	margin-bottom: 40px;
}

.titleBar span{
	font-size: 35px;
	display: inline-block;
	margin-top: -15px;
	-webkit-text-stroke-width: 1px !important;
}

.arrow a{
	background: url(../img/arrow_w.png) no-repeat right center;  
}
.arrow a:hover{
	background: url(../img/arrow_b.png) no-repeat right center;  
}

.arrowG a{
	background: url(../img/arrow_w.png) no-repeat right center;  
}
.arrowG a:hover{
	background: url(../img/arrow_g.png) no-repeat right center;  
}

.btn a{
	padding: 20px;
}

.btnW a{
	color: #fff;
	font-size: 15px;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.1em;
	display: block;
	border: solid 2px #fff;
}
.btnW a:hover{
	background-color: #fff;
	border: solid 2px #fff;
}


.table{
	width: 100%;
	margin: 40px 0;
}

.table th{
	padding: 20px 0;
}

.table td{
	padding: 20px;
}


/* Header
--------------------------------------------------*/

header{
	width: 100%;
	height: 120px;
	background-color: #fff;
	position: fixed;
	top: 0;
	z-index: 1000;
}

.logo{
	float: left;
	width: 255px;
	margin: 30px 0 0 40px;
}

.headerImg{
	width: 100%;
	height: 380px;
	margin-bottom: 80px;
	text-align: center;
}

.pageTitle{
	margin-top: 220px;
}

.pageTitle h2{
	text-align: center;
	font-size: 16px;
	color: #333;
	letter-spacing: 0.3em;
	margin: 80px 0;
	
}
.pageTitle span{
	font-size: 34px;
	letter-spacing: 0.3em;
	display: block;
	padding-bottom: 15px;
}


.pageSubTitle{
	display: inline-block;
	font-size: 18px !important;
	color: #fff !important;
	letter-spacing: 0.2em !important;
	font-weight: bold;
	width: 400px;
	padding: 30px 0;
}



/* Menu
--------------------------------------------------*/



.contactBtn a{
	display: inline-block;
	width: 120px;
	height: 120px;
	text-align: center;
	color: #fff;
	background-color: #00a0d1;
	padding-bottom: 0 !important;
	
}
.contactBtn a:hover{
	color: #fff !important;
	background-color: #0075af;
}


#menu{
	float: right;
	list-style-type: none;
	height: 120px;
}
#menu li{
	position: relative;
	float: left;
	margin: 0 0 0 25px;
	height: 120px;
}
#menu li:first-child{
	margin-left: 0;
}

#menu li a span{
	display: inline-block;
	margin-top: 52px;
}


#menu li a{
  display: block;
  font-size: 15px;
  line-height: 1;
  text-decoration: none;
  padding-bottom: 15px;
  /*padding: 0 12px;*/
}

#menu li ul{
  list-style: none;
  position: absolute;
  
  top: 100%;
  left: 0;
  margin: 0;
    padding: 0;
	
}

#menu li:last-child ul{
  left: -100%;
  width: 100%
}



#menu li ul li{
  overflow: hidden;
  width: 150%;
  height: 0;
  margin: 0;
  color: #fff;
  -moz-transition: .2s;
  -webkit-transition: .2s;
  -o-transition: .2s;
  -ms-transition: .2s;
  transition: .2s;
  
}

#menu li ul li a span{
  
  margin: 5px 0 0 0;
  
}
#menu li ul li a{
	color: #fff;
  padding: 15px 15px !important;
  background: #00a0d1;
  text-align: left;
	height: 25px;
  
}
#menu li ul li a:hover{
	color: #fff;
}
#menu li:hover > a{
  color: #00a0d1;
}
#menu .drop:hover > a{
	
  color: #00a0d1;
  border-bottom: solid 40px #00a0d1;
}
#menu li:hover ul li{
  overflow: visible;
  height: 55px;
  border-bottom: 1px solid #fff;
}
#menu li:hover ul li:first-child{
  border-top: 0;
}
#menu li:hover ul li:last-child{
  border-bottom: 0;
}

.drop1 a{
	background-color: #00a0d1 !important;
}

.drop1 a:hover{
	color: #00a0d1 !important;
	background-color: #fff !important;
}

.drop2 a{
	background-color: #00af83 !important;
}

.drop2 a:hover{
	color: #00af83 !important;
	background-color: #fff !important;
}

.drop3 a{
	background-color: #e62f82 !important;
}

.drop3 a:hover{
	color: #e62f82 !important;
	background-color: #fff !important;
}

.drop{
	cursor: default;
}



/* Top
--------------------------------------------------*/



.topMovie{
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100vh;
	/*background: url(../img/main01.jpg) no-repeat bottom left/cover;*/
}


.topSiteTitle{
	position: absolute;
	width: 100%;
	text-align: right;
	padding: 35px 60px !important;
	background-color: #fff;
	z-index: 5;
	bottom: 0;
}
.topSiteTitle h2{
	font-weight: normal;
}


.topCatchcopy{
	font-size: 30px;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.3em;
	position: absolute;
	z-index: 4;
	left: 160px;
	bottom: 410px;
	
	background-color: #00a0d1;
	padding: 0 15px;
}

.topCatchcopy2{
	font-size: 30px;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.3em;
	position: absolute;
	z-index: 4;
	left: 160px;
	bottom: 345px;
	
	background-color: #00a0d1;
	padding: 0 15px;
}


.topSubTitle{
	position: absolute;
	width: 240px;
	min-height: 100vh;
	background-color: #fff;
	z-index: 3;
	left: 0;
	top: 0;
}

.topSubTitle span{
	position: absolute;
	color: #999;
	letter-spacing: 0.3em;
	line-height: 3em;
	display: block;
	padding: 0 0 0 60px;
	bottom: 140px;
}


.serviceBg{
	background: url(../img/service_bg.jpg) no-repeat center;
	background-size: cover;
	
	margin: 0 calc(50% - 50vw);
  	width: 100vw;
	padding: 60px 0 140px 0;
}

.topConcept h3{
	font-size: 36px;
	color: #fff;
	letter-spacing: 0.3em;
	text-align: center;
	margin-bottom: 20px;
}

.topConcept strong{
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.2em;
	text-align: center;
	display: block;
	line-height: 2em;
}

.topConcept p{
	color: #fff;
	text-align: center;
	font-size: 16px;
	line-height: 2.2em;
	margin-top: 30px;
	padding-top: 30px;
	border-top: solid 1px #fff;
}


.topService{
	margin-top: -160px;
}

.topService li{
	background-color: #fff;
}

.topService li div{
	padding: 30px;
	text-align: center;
}

.topService h4{
	font-size: 16px;
	color: #333;
	font-weight: bold;
	letter-spacing: 0.1em;
	padding: 20px 0 15px 0;
}

.topService p{
	margin-bottom: 25px;
}


.btnS1 a{
	color: #fff;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.1em;
	display: block;
	background-color: #00a0d1;
	border: solid 2px #00a0d1;
}

.btnS1 a:hover{
	color: #00a0d1;
	border: solid 2px #00a0d1;
}


.arrowS2 a{
	background: url(../img/arrow_w.png) no-repeat right center;  
}
.arrowS2 a:hover{
	background: url(../img/arrow_s2.png) no-repeat right center;  
}

.btnS2 a{
	color: #fff;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.1em;
	display: block;
	background-color: #00af83;
	border: solid 2px #00af83;
}

.btnS2 a:hover{
	color: #00af83;
	border: solid 2px #00af83;
}


.arrowS3 a{
	background: url(../img/arrow_w.png) no-repeat right center;  
}
.arrowS3 a:hover{
	background: url(../img/arrow_s3.png) no-repeat right center;  
}

.btnS3 a{
	color: #fff;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.1em;
	display: block;
	background-color: #e62f82;
	border: solid 2px #e62f82;
}

.btnS3 a:hover{
	color: #e62f82;
	border: solid 2px #e62f82;
}


.slide{
	margin: 0 calc(50% - 50vw);
  	width: 100vw;
	margin-bottom: 40px;
}

.topZisseki{
	background: url(../img/zisseki_bg.jpg) no-repeat center;
	background-size: cover;
	margin: 0 calc(50% - 50vw);
  	width: 100vw;
}

.topZissekiBtn{
	float: right;
	padding: 40px 0 40px 40px;
	background-color: #333;
}

.topZissekiBtn li{
	width: 300px;
	margin-bottom: 20px;
}
.topZissekiBtn li:last-child{
	margin-bottom: 0;
}

.topZissekiBtn li a:hover{
	color: #444;
}



.topNews h3{
	font-size: 16px;
	color: #333;
	letter-spacing: 0.3em;
	margin-bottom: 60px;
}

.topNews h3 span{
	font-size: 22px;
	letter-spacing: 0.2em;
	padding: 0 20px 0 0;
}

.news h4{
	color: #333;
	padding: 10px 0;
}

.news h4 a{
	color: #333;
	text-decoration: underline;
}
.news h4 a:hover{
	color: #00a0d1;
	text-decoration: underline;
}

.news li{
	width: 33%;
	padding: 0 30px 0 30px;
	border-left: solid 1px #ddd;
	box-sizing: border-box;
}
.news li:first-child{
	border-left: none;
}


/* Service1
--------------------------------------------------*/

.headerService1{
	background: url(../service1/img/header_img.jpg) no-repeat center;
	background-size: cover;
	/*background-attachment: fixed;*/
	display: flex;
  	justify-content: center;
	align-items: center;
}

.service1Title{
	background-color: #00a0d1;
}

#service1 .titleBar{
	background-color: #00a0d1;
}


.serviceConcept .flex{
	align-items: center !important;
}

.serviceConcept h3{
	font-size: 20px;
	letter-spacing: 0.1em;
	color: #333;
	padding: 40px 0;
}

.serviceConcept p{
	line-height: 2.5em;
}

.serviceConceptLeft{
	width: 485px;
	margin-right: 60px;
}
.serviceConceptRight{
	flex: 1;
	text-align: center;
}

.serviceConceptRight h4{
	padding-bottom: 15px;
	margin: 30px 0 15px 0;
	border-bottom: solid 1px #ddd;
}
.serviceConceptRight p{
	text-align: center;
}

.serviceConceptRight img{
	max-width: 100%;
}


.servicePoint dl{
	width: 100%;
	display: table;
	margin-bottom: 40px;
	background-color: #fff;
}
.servicePoint dl:last-child{
	margin-bottom: 0;
}

.servicePoint dl h4{
	font-size: 18px;
	letter-spacing: 0.1em;
	line-height: normal;
	color: #00a0d1;
}

.servicePoint dl h4 span{
	display: inline-block;
	font-size: 18px;
	color: #666;
	padding-bottom: 10px;
}

.servicePoint dt{
	display: table-cell;
	width: 250px;
	vertical-align: middle;
	padding: 40px 0 40px 40px;
	
}
.servicePoint dd{
	display: table-cell;
	vertical-align: middle;
	line-height: 2em;
	padding: 40px 40px 40px 40px;
}

.servicePoint dd span{
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.1em;
	color: #333;
	padding-bottom: 10px;
	display: inline-block;
}

.serviceIcon{
	width: 70px;
	padding: 0 !important;
}

.dlCl{
	display: table !important;
	
}
.dlCl dd{
	display: table-cell !important;
	padding: 0 40px 0 40px;
}


#service .serviceBg{
	padding: 0;
}

.servieBukken strong{
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.2em;
	text-align: center;
	padding: 140px 0 180px 0;
	display: block;
	line-height: 2em;
}

.servieBukkenBtn{
	padding: 40px 100px;
	background-color: #333;
	margin-top: -70px;
}

.servieBukkenBtn li a:hover{
	color: #444;
}


.serviceFlow h3,.serviceFaq h3{
	margin: 80px 0 40px 0 !important;
}
.serviceFlow h3 span,.serviceFaq h3 span{
	font-size: 34px !important;
}

.serviceFlow li{
	width: 19%;
	background-color: #f5f8fa;
}

.serviceFlow li div{
	padding: 20px;
	text-align: center;
}

.serviceFlow h4{
	font-size: 18px;
	color: #fff;
	letter-spacing: 0.1em;
	padding: 10px;
	margin-bottom: 20px;
	background-color: #00a0d1;
	position: relative;
}

.serviceFlow h5{
	font-size: 18px;
	font-weight: bold;
	color: #00a0d1;
	display: inline-block;
	margin-bottom: 12px;
}

.serviceFaq li{
	padding: 25px;
	background-color: #f5f8fa;
	margin-bottom: 40px;
}
.serviceFaq li:last-child{
	margin-bottom: 0;
}

.serviceFaq h4{
	font-size: 16px;
	padding: 0 0 0 45px;
	margin-bottom: 20px;
	position:relative;
	margin-top: 3px;
}

.serviceFaq p{
	line-height: 2em;
	padding: 0 0 0 45px;
	position:relative;
	vertical-align: middle;
}


.serviceFaq h4:before{
	content:"Q";
	text-align: center;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	background-color: #00a0d1;
	margin-right: 15px;
	width: 30px;
	height: 30px;
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -15px;
	line-height: 30px;
}

.serviceFaq p:before{
	content:"A";
	text-align: center;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	background-color: #d70050;
	width: 30px;
	height: 30px;
	display: inline-block;
	position: absolute;
	left: 0;
	line-height: 30px;
}



/* Service2
--------------------------------------------------*/

.headerService2{
	background: url(../service2/img/header_img.jpg) no-repeat center;
	background-size: cover;
	display: flex;
  	justify-content: center;
	align-items: center;
}

.service2Title{
	background-color: #00af83;
}

#service2 .titleBar{
	background-color: #00af83;
}

#service2 .service2Point dl h4{
	color: #00af83;
}



/* NextBB
--------------------------------------------------*/

.headerNextbb{
	background: url(../nextbb/img/header_img.jpg) no-repeat center;
	background-size: cover;
	display: flex;
  	justify-content: center;
	align-items: center;
}

.nextbbTitle{
	background-color: #e62f82;
}

#nextbb .titleBar{
	background-color: #e62f82;
}

.nextbbImg{
	background: url(../nextbb/img/nextbb_img.jpg) no-repeat center;
	background-size: cover;
	margin: 0 calc(50% - 50vw);
  	width: 100vw;
	padding: 80px 0;
}
.nextbbImg div{
	text-align: right;
}

.nextbbPoint li{
	background-color: #fff;
}

.nextbbPoint li div{
	padding: 20px;
	text-align: center;
}

.nextbbPoint h4{
	font-size: 18px;
	color: #fff;
	letter-spacing: 0.1em;
	padding: 10px;
	margin-bottom: 40px;
	background-color: #e62f82;
}

.nextbbPoint strong{
	font-size: 18px;
	font-weight: bold;
	color: #e62f82;
	display: inline-block;
	margin-bottom: 12px;
}

.nextbbPoint p{
	font-size: 11px;
	text-align: center;
}

.nextbbPrice{
	text-align: center;
}

.nextbbPrice h3{
	font-size: 38px;
	color: #e62f82;
	letter-spacing: 0.1em;
	 margin-top: -10px;
	-webkit-text-stroke-width: 0.8px !important;
}

.nextbbPrice li{
	display: inline-block;
	color: #555;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	padding: 10px 18px;
	margin: 30px 7px;
	border: solid 2px #666;
	border-radius: 25px;
}

.nextbbPrice p{
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	line-height: 2em;
}
.nextbbPrice p span{
	font-size: 14px;
	font-weight: normal;
}

.nextbbPrice h4{
	font-size: 18px;
	color: #fff;
	margin: 30px 0;
	padding: 15px 15px;
	background-color: #666;
}

.nextbbPrice img{
	margin: 10px 0 30px 0;
}


.nextbb_btn{
	width: 60%;
	margin: auto;
}

.nextbb_btn a{
	font-size: 20px;
	font-weight: bold;
	padding: 40px;
}

.nextbb_btn.arrowS3 a{
	background: url(../img/arrow_s3.png) no-repeat right center;  
}
.nextbb_btn.arrowS3 a:hover{
	background: url(../img/arrow_w.png) no-repeat right center;  
}

.nextbb_btn.btnS3 a{
	color: #e62f82;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.1em;
	display: block;
	background-color: #fff;
	border: solid 2px #e62f82;
}

.nextbb_btn.btnS3 a:hover{
	color: #fff;
	background-color: #e62f82;
	border: solid 2px #e62f82;
}


/* Bukken
--------------------------------------------------*/

.headerBukken{
	background: url(../bukken/img/header_img.jpg) no-repeat center;
	background-size: cover;
	/*display: flex;
  	justify-content: center;
	align-items: center;*/
}

.bukkenSubtitle{
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.2em;
	text-align: center;
	line-height: 2em;
	padding: 60px 0 30px 0;
}

.bukkenSubtitle span{
	font-size: 22px;
	letter-spacing: 0.2em;
	display: inline-block;
	padding-bottom: 30px;
}


.arrowBukken a{
	background: url(../img/arrow_g.png) no-repeat right center; 
}
.arrowBukken a:hover{
	background: url(../img/arrow_w.png) no-repeat right center; 
}

.btnBukken a{
	font-size: 14px;
	color: #666;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.1em;
	width: 300px;
	display: inline-block;
	background-color: #fff;
	border: solid 2px #fff;
	opacity:0.95;
}

.btnBukken a:hover{
	color: #fff;
	background-color: #00a0d1;
	border: solid 2px #00a0d1;
}



#bukken{
	margin-top: -40px;
}

#bukken li{
	margin-top: 40px;
}

#bukken .table{
	margin: 20px 0 0 0 !important;
	border: solid 1px #ddd;
	font-size: 13px;
}

#bukken .table th{
	text-align: center;
	border: solid 1px #ddd;
	padding: 10px 8px 10px 8px;
	width: 30%;
}

#bukken .table td{
	border: solid 1px #ddd;
	padding: 10px 8px 10px 8px;
}

#bukken .table .center{
	width: 23%;
}


#bukken .bukkenBanner{
	background: url(../zisseki/img/header_img.jpg) no-repeat center;
	background-size: cover;
	text-align: center;
	height: 200px;
	margin-top: 60px;
	
	display: flex;
  	justify-content: center;
	align-items: center;
}


/* Zisseki
--------------------------------------------------*/

.headerZisseki{
	background: url(../zisseki/img/header_img.jpg) no-repeat center;
	background-size: cover;
}


#zisseki .table th{
	text-align: center;
	font-weight: bold;
	border: solid 1px #ddd;
	background-color: #f5f8fa;
}

#zisseki .table td{
	width: 33%;
	border: solid 1px #ddd;
}

#zisseki .table tr:nth-child(even){
	background-color: #f5f8fa;
}


#zisseki .bukkenBanner{
	background: url(../bukken/img/header_img.jpg) no-repeat center;
	background-size: cover;
	text-align: center;
	height: 200px;
	margin-top: 60px;
	
	display: flex;
  	justify-content: center;
	align-items: center;
}


/* Company
--------------------------------------------------*/

.headerCompany{
	background: url(../company/img/header_img.jpg) no-repeat center;
	background-size: cover;
}

.companyPhoto1{
	width: 30%;
}

.companyPhoto2{
	width: 66%;
}

#company .table th{
	width: 120px;
	color: #000;
	border-top: solid 1px #ddd;
	border-bottom: solid 1px #ddd;
}

#company .table td{
	border-top: solid 1px #ddd;
	border-bottom: solid 1px #ddd;
	padding: 20px 0 20px 40px;
}

.googleMap{
	width: 100%;
}

.group{
	width: 100vw;
	margin: 0 calc(50% - 50vw);
	text-align: center;
	padding: 60px 0;
	background: url(../company/img/group_photo.jpg) no-repeat top center;	
	background-size: cover;
}

.group p{
	text-align: center;
	line-height: 2.5em;
	letter-spacing: 0.2em;
	font-weight: bold;
	margin-top: -30px;
}

.groupImg{
	text-align: center;
	margin-top: 40px;
}
.groupImg img{
	width: 420px;
}


/* Contact
--------------------------------------------------*/

.headerContact{
	background: url(../contact/img/header_img.jpg) no-repeat center;
	background-size: cover;
}

.contactComment{
	text-align: center;
}

.form table{
	border: solid 1px #ddd;
}

.form table th{
	width: 28%;
	padding: 15px 0 15px 25px;
	border-bottom: solid 1px #ddd;
	min-width: 220px;
	vertical-align: middle;
}

.form table td{
	padding: 15px 25px 15px 25px;
	border-bottom: solid 1px #ddd;
}

.form span{
	color: #00a0d1;
}

.vtop{
	vertical-align: top !important;
}

.contactPolicy{
	margin: 15px 0;
}
 
.contactPolicy iframe {
	width: 100%;
	height: 250px;
	border: solid 1px #ddd;
}


.form_comment{
	display: block;
	padding-top: 10px;
	color: #666 !important;
}


/* インプット */

input{
	width: 80%;
	font-size: 14px;
	padding: 8px;
	border: 1px solid #ddd;
}

::placeholder{
	color: #aaa;
}

/* テキストエリア */

textarea{
	width: 80%;
	height: 100px;
	font-size: 14px;
	padding: 8px;
	border: 1px solid #ddd;
}


/* プルダウン */

.cp_ipselect {
	overflow: hidden;
	width: 80%;
	text-align: center;
}
.cp_ipselect2 {
	overflow: hidden;
	width: 100px !important;
	text-align: center;
	display: inline-block;
}
.cp_ipselect select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
	font-size: 14px;
}
.cp_ipselect select::-ms-expand {
    display: none;
}
.cp_ipselect.cp_sl01 {
	position: relative;
	border: 1px solid #ddd;
	border-radius: 2px;
	background: #fff;
}
.cp_ipselect.cp_sl01::before {
	position: absolute;
	top: 1.1em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #aaa;
	pointer-events: none;
}
.cp_ipselect.cp_sl01 select {
	padding: 8px 38px 8px 8px;
	color: #333;
}


/* 送信ボタン */

.formBtnBox{
	text-align: center;
}

.formBtn{
	width: 200px;
	text-align: center;
	margin: 10px 0;
	padding: 12px 15px;
	font-size: 16px;
	background-color: #000;
	color: #fff;
	border-style: none;
}
.reset{
	background-color: #888;
}

.formBtnKakunin{
	width: 250px;
}

/* Contact PHP */

.formTable table{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
.formTable table td, .formTable table th{
	border:1px solid #ddd;
	padding:10px;
}
.formTable table th{
	width:30%;
	font-weight:normal;
	background:#f7f7f7;
	text-align:left;
}
.error_messe{
	margin: 10px 0 10px 0;
	color: #b81c22;
}


.phpComment{
	margin-bottom: 30px !important;
	padding-bottom: 30px !important;
	border-bottom: solid 1px #ddd !important;
}


/* Privacy Policy
--------------------------------------------------*/

.privacyComment{
	padding-bottom: 30px;
	border-bottom: solid 1px #ddd;
}

#privacy h4{
	font-size: 16px;
	color: #000;
	margin: 30px 0 10px 0;
	font-weight: normal;
}

#privacy ul{
	padding-top: 10px;
	line-height: 1.8em;
}

#privacy ol{
	padding-top: 10px;
	line-height: 1.8em;
}

.privacyIframe{
	padding: 25px;
	background-color: #fdfdfd;
}



.kiyaku ol{
  	margin: 0;
  	padding: 0
}
.kiyaku ol li{
  	list-style: none;
  	padding-left: 1.3em;
  	text-indent: -1.3em;
	margin-bottom: 20px;
}


/* Footer
--------------------------------------------------*/

.footerContact{
	color: #fff;
	text-align: center;
	letter-spacing: 0.1em;
}

.footerContact h4{
	font-size: 34px;
	letter-spacing: 0.2em;
	margin-bottom: 20px;
}

.footerContact p{
	font-size: 16px;
	letter-spacing: 0.2em;
	text-align: center;
	margin: 30px 0 40px 0;
}

.footerContact a{
	padding: 30px 20px;
}
.footerContact a:hover{
	color: #00a0d1;
}

.footerTel h5{
	font-size: 16px;
	margin: 40px 0 5px 0;
}

.footerTel a{
	color: #fff;
	font-size: 34px;
	padding: 0;
}

.footerTel span{
	font-size: 16px;
	display: block;
	margin: 10px 0 0 0;
}

footer{
	margin: 60px 0;
}

.footerInfo{
	width: 36%;
}
.footerMenu{
	width: 60%;
}

.footerLogo{
	margin-bottom: 20px;
}
.footerLogo img{
	display: inline-block;
	vertical-align: top;
	margin-right: 5px;
}
.footerLogo h6{
	color: #777;
	font-weight: bold;
	display: inline-block;
}

.footerInfo p{
	color: #777;
	font-size: 12px;
	line-height: 2em;
}

.footerMenu div{
	font-size: 12px;
	padding: 0 5px;
}

.footerMenu h5{
	font-weight: bold;
	margin-bottom: 15px;
	color: #777;
}
.footerMenu h5 a{
	color: #777;
}
.footerMenu h5 a:hover{
	color: #00a0d1;
}

.footerMenu li{
	color: #777;
	margin-bottom: 10px;
}

.footerMenu li::before {
  content: '- ';
}

.copyRight{
	text-align: right;
	font-size: 12px;
	color: #777;
	margin-top: 60px;
}

