@charset "UTF-8";
/*
	1)	初期設定
	2)	hover
	3)	header
	4)	nav
	5)	reserveBox
	6)	mainVisual
	7)	footer
	8)	contents
			 └ main
*/
/*============================================================================================================
	初期設定
============================================================================================================*/
body {
  color: #333333;
  -webkit-text-size-adjust: 100%;
  line-height: 2.2;
  letter-spacing: 0.5px;
}

div, h1, h2, h3, h4, h5, p, li, dl, dt, dd, th, td, article, header, footer, nav, span, a, section {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  height: auto;
  width: auto;
  max-width: 100%;
  line-height: 100%;
  vertical-align: top;
	/*zoom: 0.5;*/

}

.img2x {
	zoom: 0.5;
	/*
-moz-transform: scale(0.5); 
-moz-transform-origin: 0 0;
-o-transform: scale(0.5);
-o-transform-origin: 0 0;
-webkit-transform: scale(0.5); 
-webkit-transform-origin: 0 0;
transform: scale(0.5); 
transform-origin: 0 0;  
 */
}

em {
  font-style: normal;
}

h1, h2, h3, h4, h5 {
  line-height: 1.6;
  margin: 0;
}

p, li, td, th, dt, dd {
  font-size: 15px;
  line-height: 1.8;
  margin: 0;
  word-wrap: break-word;
}

table {
  width: 100%;
  border-collapse: collapse;
}

th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: top;
  word-break: break-all;
}

ul,
ol {
  padding: 0;
  margin: 0;
}
.fSofia {
font-family: sofia-pro, sans-serif;
font-weight: 400;
font-style: normal;
}
.fSofiaB {
font-family: sofia-pro, sans-serif;
font-weight: 700;
font-style: normal;
	}

@media screen and (min-width: 701px) {
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 700px) {
  body {
    min-width: 100%;
  }
  .pc {
    display: none !important;
  }
}

@media print{

body {
	-webkit-print-color-adjust: exact;
}
}

/*------------------------------------------
	フォント
------------------------------------------*/
body {
  font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

/* IE対策 */
@media all and (-ms-high-contrast: none) {
  body {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
  }
  .websiteLink .item a {
    padding-top: 11px !important;
    padding-bottom: 5px !important;
  }
}

_:-ms-lang(x) body, _::-webkit-meter-bar body, body body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
}

_:-ms-lang(x) body .websiteLink .item a, _::-webkit-meter-bar body .websiteLink .item a, body body .websiteLink .item a {
  padding-top: 11px !important;
  padding-bottom: 5px !important;
}
/*
.copyright,
.btnVideo,
.navList li,
.language,
.secTit,
.txtLink,
.roomsNav,
.roomInfo .name,
.roomInfo .date,
.gsBox .list .tit,
.pagination,
.sideTtl {
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
  letter-spacing: 3px;
}
*/

.footer .language,
.copyright,
.pagination {
  letter-spacing: 1px;
}


@media screen and (max-width: 700px) {
  .navFixed {
    position: fixed;
    width: 100%;
    height: 100%;
  }
}


.txt {
	font-size:16px;
}
.center {
	text-align:center;
}

/*------------------------------------------
	枠
------------------------------------------*/
.inner {
  width: 100%;
  margin: 0 0px;
	padding: 0 20px;
}
@media screen and (min-width: 1201px) {
	.inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
	padding: 0 0px;
}

}
/*============================================================================================================
	hover
============================================================================================================*/
@media screen and (min-width: 701px) {
  a {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  a:hover {
    filter: alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
  }
	  a.hoverNoopacity:hover {
    filter: alpha(opacity=100);
    -moz-opacity: 1;
    opacity: 1;
  }

}

/*============================================================================================================
	header
============================================================================================================*/
header {
	width: 100%;
	max-width:1200px;
	margin: 0 auto;
}
header .inner {
	position:relative;
}
.hPhone {
	position:absolute;
	top:0px;
	left:0px;
	padding-top:7px;
}
.hPhone dt {
	display: inline-block;
	font-size:24px;
	font-weight:bold;
	color:#905ca2;
	vertical-align: middle;
	margin-right: 10px;
}
.hPhone dd {
		display: inline-block;
	vertical-align: middle;
	font-size:12px;
}
.hSubnav {
	position:absolute;
	top:0px;
	right:0px;
	padding-top:10px;
}
.hSubnav .btn {
		display: inline-block;
	margin-right: 20px;
}
.hSubnav .btn a {
	display:block;
	background-color: #905ca2;
	border-radius:30px;
	color: #fff;
	padding:0 30px;
	font-size:12px;
}

.hSubnav .btn_2 {
		display: inline-block;
	margin-right: 20px;
}
.hSubnav .btn_2 a {
	display:block;
	border:#905ca2 1px solid ;
	border-radius:30px;
	color:#905ca2;
	padding:0 30px;
	font-size:12px;
}


.hSubnav ul {
		display: inline-block;
}
.hSubnav li {
		display: inline-block;
	margin-left: 10px;
}
.hSubnav li a {
	color: #905ca2;
	font-size: 18px;
}

header h1 {
	text-align:left;
		padding: 20px 0px 20px;

}

header h1 img.img2x {
width:313px;
height:49px;
zoom:1;
}

/*.page header h1 {
    padding: 15px 0px 0px;
    height: 52px;
}*/

@media screen and (max-width: 1200px) {
.hPhone {
	padding:7px 0 0 20px;
}
	.hSubnav {
	padding:10px 20px 0 0;
}
	header h1 {
		padding: 20px 20px 20px;

}
/*	.page header h1 {
    padding: 15px 10px 0px;
}*/
}

@media screen and (max-width: 800px) {
.hPhone dt {
	font-size:18px;
}
.hSubnav .btn {
    margin-right: 0px;
}
}

@media (min-width: 701px) {
.hPhone dt a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}
@media screen and (max-width: 700px) {
.hSubnav {
	/*display: none;*/
		position:relative;
	text-align: center;
	padding: 10px 0px 0 0;
}

	header h1 {
    padding: 0px 10px 10px;
		/*text-align: center;*/
}
	header h1 img.img2x {
	zoom: normal;
	max-width:150px;
	height: auto;
	vertical-align:middle;
}
	.hPhone {
	padding:0px 0 0 10px;
}
	.hPhone dt {
	font-size:14px;
		margin-right: 5px; 
}
		.hPhone dd {
	font-size:10px;
}
	
	
/*	.page header h1 {
    padding: 10px 10px 20px;
    width: 180px;
		height: 34px;
    box-sizing: border-box;
}*/

header .inner > .hSubnavSns {position:absolute; top:10px; right:60px;}
header .inner > .hSubnavSns .contactIcn { display:none;}
header .inner > .hSubnavSns li {display: inline-block; margin-left: 10px;}
header .inner > .hSubnavSns li a{ color: #905ca2; font-size:18px;}


}

@media print{
.hSubnav {
display:none;
}
}

/*============================================================================================================
	nav
============================================================================================================*/

@media screen and (min-width: 701px) {
nav {
	background-color:#fff;
    position: absolute;
    width: 100%;
	padding:10px 0 5px;
	border-bottom:#e5e5e5 1px solid;
	z-index: 998;
}
nav.fixed{
    position: fixed;
    top: 0;
}
nav .navInner > ul {
display:table;
	width:100%;
	max-width: 1200px;
	margin: 0 auto;
	box-sizing: border-box;
	border-right:#e5e5e5 1px solid;
	height: 45px;
}
nav .navInner > ul > li {
	text-align:center;
	border-left:#e5e5e5 1px solid;
	display: table-cell;
	box-sizing: border-box;
	width: 14.28%;
	position: relative;
}
nav .navInner > ul > li > a,
nav .navInner > ul > li > span{
	display:block;
	width:100%;
	padding:5px 0px 0px;
}
	nav .navInner > ul li dt {
	font-size:1.4vw;
}
nav .navInner > ul li dd {
	font-size:10px;
}
.navHome dd { color:#905ca2;}
.navNews dd { color:#ff8f47;}
.navProducts dd { color:#4db8fa;}
.navFeature dd { color:#63ba64;}
.navCustomer dd { color:#59b9b9;}
.navRecruit dd { color:#e177b0;}
.navCompany dd { color:#905ca2;}

.navHome:hover a dt { color:#905ca2;}
.navNews:hover a dt { color:#ff8f47;}
.navProducts:hover a dt { color:#4db8fa;}
.navFeature:hover a dt { color:#63ba64;}
.navCustomer:hover a dt { color:#59b9b9;}
.navRecruit:hover a dt { color:#e177b0;}
.navCompany:hover a dt { color:#905ca2;}

nav ul li ul {    
	position: absolute;
    top: 35px;
    width: 100%;
    background: #072A24;
	color:#fff;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
	    visibility: hidden;
    opacity: 0;
    z-index: 1;
	padding:20px 0px;
}
nav ul li ul:after {
	content:"";
	display:block;
width: 0;
height: 0;
border-style: solid;
border-width: 10px 10px 0 10px;
border-color: #ffffff transparent transparent transparent;
    position: absolute;
    top: 0px;
    left: 50%;
    margin-left: -10px;
}


nav ul li ul a {
	display:block;
	padding:10px 0px;
}
nav ul li:hover ul {
 top: 45px;
    visibility: visible;
    opacity: 1;
	
}
.navNews ul { background-color:#ff8f47;}
.navProducts ul { background-color:#4db8fa;}
.navFeature ul { background-color:#63ba64;}
.navCustomer ul { background-color:#59b9b9;}
.navCompany ul { background-color:#905ca2;}
}

@media screen and (min-width: 1200px) {
	nav .navInner > ul > li > a dt,
nav .navInner > ul > li > span dt,
	nav .navInner ul li ul a{
font-size:15px;
	}
}
@media screen and (max-width: 700px) {
	.menuWrapper {
		position:fixed;
		top: 14px;
		right:15px;
		z-index: 998;
	}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 20px;
  height: 18px;
		cursor: pointer;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #000000;
  border-radius: 2px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 8px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}	
	
	
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(8px) rotate(-45deg);
  transform: translateY(8px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  left: 30%;
  opacity: 0;
  -webkit-animation: active-menu-bar02 .8s forwards;
  animation: active-menu-bar02 .8s forwards;
}
@-webkit-keyframes active-menu-bar02 {
  100% {
    height: 0;
  }
}
@keyframes active-menu-bar02 {
  100% {
    height: 0;
  }
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-8px) rotate(45deg);
  transform: translateY(-8px) rotate(45deg);
}	
	
	
	
	
	
	nav {
		display: none;
		position: fixed;
		top:0px;
		left:0px;
		width:100%;
		z-index: 997;
		overflow:scroll;
		background-color: rgba(255,255,255,0.7);
		box-sizing: border-box;
		padding: 60px 20px 40px;
		overflow-y: auto;
height: 100%;
		-webkit-overflow-scrolling: touch

	}
	.open nav {
		display:block;
		animation: show 0.5s linear 0s;
	} 
.navInner > ul > li > a > dl,
.navInner > ul > li > span > dl {
			display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: wrap;
	}
	.navInner > ul > li > a ,
	.navInner > ul > li > span {
		display: block;
	border-top:#e5e5e5 1px solid;
		padding: 10px 0px;
}
		.navInner ul li dt {
		font-size:14px;
	}

	.navInner ul li dd {
		font-size:10px;
		line-height: 25px;
	}
.navHome dd { color:#905ca2;}
.navNews dd { color:#ff8f47;}
.navProducts dd { color:#4db8fa;}
.navFeature dd { color:#63ba64;}
.navCustomer dd { color:#59b9b9;}
.navRecruit dd { color:#e177b0;}
.navCompany dd { color:#905ca2;}
	.navInner ul li ul {
		padding:0 0 20px 20px;
	}
	.navInner ul li ul li a {
				font-size: 12px;

	}
		.navInner ul li ul li:before {
		content:"-";
		margin-right: 5px;
	}
header,
#main,
bannerBox,
footer{
	    transition: all .2s ease;
	}
.open header,
.open #main,
	.open .contents,
.open .bannerBox,
.open footer{
  filter: blur(8px);/*ぼかし度*/
	}
html.open, body.open {
  overflow: hidden;
  /*height: 100%;*/
}

body.open {
  overflow: hidden;
	height: 100%;
}
	
	
}

@keyframes show{
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
}


@media print{
  	nav {
		display: none;

	}
.contents {
    padding-top: 0px!important;
}	
	
}





/*============================================================================================================
	footer
============================================================================================================*/

footer {
	background: url(../img/footer_top.jpg) repeat-x top left #b27dbc;
	background-size:1017px 91px;
	color:#FFFFFF;
}
footer .inner {
		display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: wrap;
	padding: 180px 0 80px;

}
.footerNavi {
	-webkit-box-ordinal-group:2;
	-ms-flex-order:2;
	-webkit-order:2;
	order:2;
		display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: wrap;
	width: 50%;
}

.footerNavi > ul > li {
	margin-bottom:10px;
}
.footerNavi > ul > li >a,
.footerNavi > ul > li >span {}

.footerNavi ul ul {
	padding-left: 20px;
}
.footerNavi ul ul li {
	font-size: 12px;
}
.footerNavi ul ul li:before {
	content:"-";
	margin-right: 5px;
}

.footerInner {
	-webkit-box-ordinal-group:1;
	-ms-flex-order:1;
	-webkit-order:1;
	order:1;
	margin-bottom: 50px
}


.footerInner h4 {
	margin-bottom: 40px;
}
.footerInner h4 .img2x {
zoom:normal;
width:193px;
height:auto;
}
.footerInner dl {
	font-size: 12px;
	margin-bottom: 30px;
}
.footerInner dt {}
.footerInner ul {
	margin-bottom: 20px;
}
.footerInner li {
	display: inline-block;
	margin-right: 10px;
}
.footerInner li a {}

@media screen and (max-width: 1200px) {
footer .inner {
	padding: 180px 20px 40px;
}
}
@media screen and (max-width: 700px) {
footer .inner {
    padding: 140px 20px 20px;
}

	
	.footerNavi {
	-webkit-box-ordinal-group:1;
	-ms-flex-order:1;
	-webkit-order:1;
	order:1;
	width: 100%;
	    margin-bottom: 50px;
}
	.footerNavi > ul {
		    width: 100%;
		max-width:300px;
	}
	.footerNavi > ul > li {
    border-top:#a06bb2 1px solid;
		margin-bottom: 0px;
		padding:5px 0;
}
	
	
	
	
.footerInner {
	-webkit-box-ordinal-group:2;
	-ms-flex-order:2;
	-webkit-order:2;
	order:2;
	    margin-bottom: 0px;
}

	
	
	
}






@media print{
footer .inner {
    padding: 180px 60px 80px;
}

}


/*==========================================
	main
==========================================*/
#main {
	padding-top:61px;
}

.ttlEng {
	font-size: 18px;
	display: block;
}
.ttlMain {
	font-size: 24px;
	display: block;
}

.btnType1 {
	display:block;
}
.btnType1 a {
	border: #000 1px solid;
	display:inline-block;
	padding: 3px 20px;
	background-color:#fff;
}
.btnType1 a i {
	padding-left:10px;
	font-size:10px;
	vertical-align: 2px;
}
.bCOrange a {
	color:#ff8f47;
	border-color:#ff8f47;
}
.bCWhite a {
	background-color:#fff;
	border-color:#fff;
	color: #000;
}
.bCBlue a {
	color:#4db8fa;
	border-color:#4db8fa;
}
.bCGreen a {
	color:#3f8e40;
	border-color:#3f8e40;
}

.btnType2 {
	display:block;
}
.btnType2 span {
	border: #59b9b9 1px solid;
	display:inline-block;
	padding: 10px 40px;
	background-color:#59b9b9;
	color:#fff;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.btnType2 span i {
	padding-left:10px;
	font-size:10px;
	vertical-align: 2px;
}




@media screen and (min-width: 701px) {
	.btnType1 a:hover {
background-color: #000;
	color: #fff;
	}
	.btnType2 span:hover {
		background-color:#fff;
	color:#59b9b9;
	}
	.bCOrange a:hover {
	background-color:#ff8f47;
}
	.bCWhite a:hover {
	background-color: transparent;
	border-color:#fff;
		color: #fff;
}
	.bCBlue a:hover {
	background-color:#4db8fa;
}
	.bCGreen a:hover {
	background-color:#3f8e40;
}
}


@media screen and (max-width: 700px) {
	#main {
	padding-top:0px;
}
	
	.ttlEng {
	font-size: 18px;
	text-align:center;
}
.ttlMain {
	font-size: 18px;
	text-align:center;
}
	
	.btnType1 {
    text-align: center;
}

	.btnType1 a {
	font-size:13px;
}

	
}



/*==========================================
	page
==========================================*/

.contents {
	padding-top:61px;
}

.mainTtl {
	text-align: center;
	    border-bottom: #e5e5e5 1px solid;
}
.mainTtl h2 {
	position: relative;
	overflow: hidden;
}
.mainTtl .ttlMain {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    display: block;
	font-size:24px;
	    line-height: 100px;
	font-weight: normal;
		  opacity: 0.1;
  -webkit-transform: translate(100px, 0px);
  -ms-transform: translate(100px, 0px);
  transform: translate(100px, 0px);
  -webkit-transition: all 0.7s;
  -moz-transition: all 0.7s;
  -o-transition: all 0.7s;
  transition: all 0.7s;
	z-index: 3;
}
.mainTtl .ttlEng {
	font-size:100px;
	line-height: 90px;
	padding-bottom:10px;
	color:#f6eef9;
		  opacity: 0.1;
  -webkit-transform: translate(-100px, 0px);
  -ms-transform: translate(-100px, 0px);
  transform: translate(-100px, 0px);
  -webkit-transition: all 0.7s;
  -moz-transition: all 0.7s;
  -o-transition: all 0.7s;
  transition: all 0.7s;
}

.costomer .mainTtl .ttlEng {	color:#e3f5f5;}
.news .mainTtl .ttlEng {	color:#ffeadc;}
.feature .mainTtl .ttlEng {	color:#ebf6ec;}
.products .mainTtl .ttlEng {	color:#e5f5ff;}

.mainTtl.active .ttlMain {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}
.mainTtl.active .ttlEng {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}


#pankuzu {
	    border-bottom: #e5e5e5 1px solid;
}
#pankuzu li {
	display:inline-block;
	color:#858585;
	font-size:12px;
}
#pankuzu li a {
	color:#000;
}

#pankuzu li:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f105";
  margin-right: 10px;
	font-size: 9px;
	padding: 0 0 0px 15px;
	vertical-align:1px;
	display:inline-block;
}
#pankuzu li:last-of-type:after {
	display:none;
}


.page #main {
		margin-top:55px;

	padding-top:0px;
    float: left;
    width: -webkit-calc(100% - 260px);
    width: calc(100% - 260px);
    padding-bottom: 80px;
}



.contentsTtle1 {
	text-align: center;
	font-size: 36px;
	margin-bottom: 30px
}
.contentsTtle2 {
	color:#905ca2;
	text-align: center;
	font-size: 36px;
	margin-bottom: 30px;
	display: block;
	
}
.contentsTtle2 span {
	padding-bottom: 5px;
	border-bottom:#905ca2 1px solid;
}


.contentsTtle3 {
	color:#905ca2;
	text-align: center;
	font-size:27px;
	padding-bottom: 5px;
	border-bottom:#905ca2 1px solid;
	margin-bottom: 30px
}


.pcTable {
	display:table;
	border:#eeeeee 1px solid;
	width: 100%;
}
.pcTable dl {
	display: table-row;
}
.pcTable dl:nth-child(odd) {
	background-color:#f7f7f7;
}

.pcTable dt {
	display: table-cell;
	padding: 20px 40px;
	color:#905ca2;
	width: 250px;
}
.pcTable dd {
	display: table-cell;
	padding: 20px 40px;
}


.pcTable2Wrapper {
	border-bottom:#e5e5e5 1px solid;
	margin-bottom: 40px;
}
.pcTable2Wrapper h4 {
	border:#e5e5e5 1px solid;
	border-bottom:none;
	text-align:center;
	font-size:16px;
	color:#59b9b9;
	padding: 20px 0px;
}
.pcTable2 {
	display:table;
	border-left:#e5e5e5 1px solid;
	border-right:#e5e5e5 1px solid;
	width: 100%;
}

.pcTable2 dl {
	background-color:#f7f7f7;
	display: table-row;
}

.pcTable2 dt {
	border-top:#e5e5e5 1px solid;
	display: table-cell;
	padding: 20px 0px 20px 40px;
	width: 260px;
}
.pcTable2 dd {
	border-top:#e5e5e5 1px solid;
	display: table-cell;
	padding: 20px 40px 20px 0px;
}
.pcTable2Innerbox {
	border-top:#e5e5e5 1px solid;
	background-color:#f7f7f7;
	padding: 30px 40px;
	text-align: left;
}
.dateWrapper {}
.dateWrapper dt { width:150px;}
.dateWrapper dd > span {
	margin-right: 40px;
	    display: inline-block;
    vertical-align: middle;
}
.dateWrapper dd span {}
.dateWrapper dd input[type="text"] {
	width: 300px;
}
.dateWrapper dd .contact_content {
	width: 200px;
    display: inline-block;
    vertical-align: middle;
}
.dateWrapper dd .contact_content_in {}
.dateWrapper dd .select_box {}
.dateWrapper dd .select01 {}



.required {
	color: #b70000;
	font-weight: normal;
}
.inputNotice {
	color:#777;
	font-size:10px;
	line-height: 1.4em;
	    display: inline-block;
	margin-top: 5px;
}

::-webkit-input-placeholder {
    color: #aaaaaa;
    opacity: 1;
}
/* Firefox 19 以降 */
::-moz-placeholder {
    color: #aaaaaa;
    opacity: 1;
}
/* IE 10 以降 */
:-ms-input-placeholder {
    color: #aaaaaa;
}

:focus::-webkit-input-placeholder {
  opacity: 1;
  color: transparent;
}
:focus:-moz-placeholder {
  opacity: 1;
  color: transparent;
}

:focus::-moz-placeholder {
  opacity: 1;
  color: transparent;
}

:focus:-ms-placeholder {
  opacity: 1;
  color: transparent;
}

.contents *{
  box-sizing: border-box;
}


input[type="button"],
input[type="submit"],
button{
	cursor: pointer;	
}



input[type="submit"].btnType2 {
	border: #59b9b9 1px solid;
	display:inline-block;
	padding: 10px 40px;
	background-color:#59b9b9;
	color:#fff;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
button.inputbtnType1 {
	border: #999 1px solid;
	display:inline-block;
	padding: 10px 40px;
	background-color:#999;
	color:#fff;
	    line-height: 1.5em;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.inputBtn {
    position: relative;
    display: inline-block;
    margin:0 10px;
}
.inputBtn i{
    position: absolute;
    top: 50%;
    right: 10px;
    color: #fff;
    font-size: 9px;
    margin-top: -5px;
        -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

@media screen and (min-width: 701px) {
	input[type="submit"].btnType2:hover {
		background-color:#fff;
	color:#59b9b9;
	}
	button.inputbtnType1:hover {
		background-color:#fff;
	color:#999;
	}
	.inputBtn:hover i {
	color:#59b9b9;
	}

}


input[type="text"],
input[type="email"],
input[type="search"],
textarea,
.select_box .select_text{
  width: 100%;
  font-size:  16px;
  color: #666666;
  background: #fff;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  border: #e5e5e5 1px solid;
  padding: 10px 20px;
}

input[type="text"],
input[type="search"],
.select_box .select_text{
  /*height:  60px;*/
}
input[type="radio"]{
	height:17px;
}
dd input[type="radio"] {
    height: 15px;
}
textarea{
  height:  180px;
}
label {
	margin:0px 30px 10px 0px;
	    display: inline-block;

}
.pcTable2Innerbox label {
	margin:0px 30px;
}
.contact_error{
  margin: 10px 0 0 0;
  line-height: 1;
  color: #FF0000;
}


.select_box{
  position: relative;
}

.select_box .select_text{
  position: relative;
  overflow:  hidden;
  line-height: 1;
  white-space: nowrap;
	    line-height: normal;
}

 .mw_wp_form_confirm .select_box .select_text,
 .mw_wp_form_preview .select_box .select_text {
 display:none;
 }


.select_box .select_text:after{
  content: "";
  position: absolute;
  top: 50%;
  right: 30px;
  margin: -2.5px 0 0 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #000000 transparent transparent transparent;
}

.select_box select{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -ms-filter: "alpha(opacity=0)" ;
	-khtml-opacity: 0;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
  z-index: 2;
}







	.boxUlCL {
		display: block;
		text-align: center;
	}
	.boxUlCL ul {
		display: inline-block;
	}
	.boxUlCL li {
		text-align: left;
		padding:0px 20px;
		position: relative;
		margin-bottom: 5px;
	}
.boxUlCL li:before {
	content:"・";
	position: absolute;
	top:0px;
	left:0px;
}




.sideWrap {
    float: right;
    width: 240px;
    z-index: 2;
	padding-top: 55px;
}

.side {
    width: 240px;
}


.subNav {}
.subNav h3 { 
background-color: #553560;
	padding: 20px;
}

.costomer .subNav h3 {background-color: #307f7f;}
.news .subNav h3 {background-color: #de7430;}
.feature .subNav h3 {background-color: #3f8e40;}
.products .subNav h3 {background-color: #2f8ac2;}

.subNav .ttlMain {
	color: #fff;
	font-weight: normal;
	font-size: 15px;
}
.subNav .ttlEng {
	color: #fff;
		font-size: 12px;
}
.subNav ul {
	border-left:#e5e5e5 1px solid;
	border-right:#e5e5e5 1px solid;
}
.subNav li {
	border-bottom:#e5e5e5 1px solid;
}
.subNav a {
	display:block;
	background-color:#eeeeee;
	padding: 20px;
}

.subNav .current a,
.subNav .current-cat a {
background-color:#d2d2d2;
}

.side .bannerBox li {
    max-width:none;
    width: 240px;
	margin-bottom: 10px;
}
.side .bannerBox li a {
display:block;
}

.side .bannerBox li img {
    width: 100%;
}

.loading {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
    background-color: #fff;
}


.mw_wp_form .pcTable2 .horizontal-item + .horizontal-item {
margin-left: 0px;
}






@media screen and (max-width: 700px) {
	
.mainTtl .ttlMain {
	    line-height: 50px;
}
.mainTtl .ttlEng {
		font-size: 15vw;
	line-height: 45px;
	padding-bottom:10px;
}	

	
	
	
	.contents {
	padding-top:0px;
}
	#pankuzu {
    overflow-y: hidden;
    overflow-x: scroll;
	}
	#pankuzu .inner {
		padding:0 10px;
	}	
	#pankuzu ul {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
}
	
	.page #main {
		margin-top:20px;
	padding-top:0px;
    float: none;
    width: 100%;
    padding-bottom: 40px;
}
	.contents_inner .inner {
		    padding: 0 10px;
	}
	
	
.contentsTtle1 {
	font-size: 24px;
}
	.contentsTtle2 {
	font-size: 24px;
	
}
	
	.contentsTtle3 {
	font-size:20px;
}
.pcTable {
	display:block;
	border:#eeeeee 1px solid;
	width: 100%;
}
.pcTable dl {
	display: block;
}
.pcTable dl:nth-child(odd) {
	background-color:#f7f7f7;
}

.pcTable dt {
	display: block;
	padding: 20px 20px 5px;
	color:#905ca2;
}
.pcTable dd {
	display: block;
	padding: 5px 20px 20px;
}

.pcTable2 {
    display: block;
}
.pcTable2 dl {
    display: block;
}	
.pcTable2 dt {
    border-top: #e5e5e5 1px solid;
    display: block;
    padding: 15px 20px 5px;
    width: 100%;
}
.pcTable2 dd {
    border-top: none;
    display:block;
    padding: 0px 20px 20px;
}

.pcTable2Innerbox {
    padding: 20px 20px;
    text-align: left;
}
label {
    margin: 0px 30px 0px 0px;
    display: inline-block;
}
.pcTable2Innerbox label {
    margin: 0px 30px 0px 0px;
}
.mw_wp_form .pcTable2Innerbox .horizontal-item + .horizontal-item {
margin-left: 0px;
}
	
.dateWrapper dd > span {
    margin-right: 0px;
    display: inline-block;
    width: 100%;
	}
.dateWrapper dd span {}
.dateWrapper dd input[type="text"] {
	width: 200px;
	margin-bottom: 20px
}
.dateWrapper dd .contact_content {
	width: 200px;
    display: inline-block;
    vertical-align: middle;
}
.dateWrapper dd .contact_content_in {}
.dateWrapper dd .select_box {}
.dateWrapper dd .select01 {}
	
	
	
	
	
.sideWrap {
    float: none;
    width: 100%;
	padding-top: 0px;
}
	.subNav .ttlMain {
text-align: left;
	}
	.subNav .ttlEng {
text-align: left;
}
	
	.side {
    width: auto;
}
	
	.side .bannerBox li {
    width: 210px;
}
	
}


@media print{
.sideWrap {
display:none;
    float: none;
    width: 100%;
	padding-top: 0px;
}

	.page #main {
    float: none;
    width: 100%;
}
	
}


