* {
	margin: 0px;
	padding: 0px;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}
html {
	height: 100%;
	width: 100%;
}
body {
	color: #454545;
	font-size:12px;
	font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo, sans-serif;
	height: 100%;
	width: 100%;
	letter-spacing:-0.001em;
	-webkit-text-size-adjust:100%;
}

/* For modern browsers */
.cf:before,
.cf:after { content:""; display:table; }
.cf:after { clear:both; }
 
/* For IE 6/7 (trigger hasLayout) */
.cf { zoom:1; overflow: hidden; }


/* Basic unit styles */

.b-m10 { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; }
.b-m15 { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; }
.b-m20 { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; }
.b-m25 { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 25px; margin-left: 0px; }
.b-m15cb { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; clear: both; }
.b-m20cb { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; clear: both; }
.b-m25cb { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 25px; margin-left: 0px; clear: both; }
.b-m30cb { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 30px; margin-left: 0px; clear: both; }
.b-m35cb { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 35px; margin-left: 0px; clear: both; }
.b-m40cb { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 40px; margin-left: 0px; clear: both; }
.b-m45cb { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 45px; margin-left: 0px; clear: both; }
.b-m70cb { padding: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 70px; margin-left: 0px; clear: both; }

.tac { text-align: center; }

.nobreak {
  display: inline-block;
}

.hissu {
  color: #D9534F;
  font-family: Verdana, Geneva, sans-serif;
  margin: 0 0.3rem;
}

table label {
  display: inline-block;
  margin: 3px 30px 3px 0;
}

.list-wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}


/* additional icon font */

@font-face {
  font-family: 'vcs-icons';
  src:  url('webfonts/fonts/vcs-icons.eot?rq0mnn');
  src:  url('webfonts/fonts/vcs-icons.eot?rq0mnn#iefix') format('embedded-opentype'),
    url('webfonts/fonts/vcs-icons.ttf?rq0mnn') format('truetype'),
    url('webfonts/fonts/vcs-icons.woff?rq0mnn') format('woff'),
    url('webfonts/fonts/vcs-icons.svg?rq0mnn#vcs-icons') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="im-"], [class*=" im-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'vcs-icons' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-weight: 500;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.im-line:before {
  content: "\e900";
}
.im-line-square:before {
  content: "\e800";
}
.im-envelope-o:before {
  content: "\f003";
}
.im-phone:before {
  content: "\f095";
}
.im-facebook:before {
  content: "\f09a";
}
.im-facebook-square:before {
  content: "\f082";
}
.im-instagram:before {
  content: "\f16d";
}


/* Style for PCs */
@media screen and (min-width: 1025px) {
	#wrapper {
		width:auto;
		max-width:1440px;
		height:auto;
		font-size:100%;
		margin:0 auto;
		background-color:#fff;
	}
	img {
		-ms-interpolation-mode: bicubic;
	}
	.pc {
		display:block;
	}
	.pcoly {
		display:block;
	}
	.phone {
		display:none;
	}
	
	/* Header */
	#header {
		width:100%;
		height:120px;
		background-color:#fff;
		padding:0;
		clear:both;
	}
	#header h1 {
		width:15%;
		height:80px;
		float:left;
		padding:20px 0;
	}
	#header h1 a { width: auto; height: 80px; display: block; background-image: url(../img/header/logo.png); background-repeat:no-repeat; background-position:center center; background-size:90% auto; text-indent: -9999px; }
	
	/* Menu */
	#navbody {
		width: 65%;
		height:80px;
		float:right;
		overflow:hidden;
		margin:20px 0;
		padding-right:1%;
	}
	a.menu-link {
	   display: none;
	}
	.js nav[role=navigation] {
		max-height: none;
		width: auto;
		height:80px;
		overflow:hidden;
	}
	nav[role=navigation] ul {
		border: 0;
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-pack: center;
		-moz-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
	}

	nav[role=navigation]  li {
		-webkit-box-flex: 1;
		flex: 1;
		width:100%;
		height:160px;
		list-style-image: none;
		list-style-type: none;
		line-height:80px;
	}
	nav[role=navigation] li a {
		border: 0;
		width:auto;
		height:160px;
		display:block;
		text-align:center;
		text-decoration:none;
		color:#333;
		border-left:1px solid #ddd;
	}
	a .m_ent {
		font-family: 'Gilda Display', serif;
		font-size:0.9em;
		display:block;
		width:auto;
		height:80px;
	}
	a .m_jpt {
		font-size:12px;
		display:block;
		width:auto;
		height:auto;
	}
	nav[role=navigation] li a:hover {
		margin-top:-80px;
		background: #001d44; /* Old browsers */
		background: -moz-linear-gradient(top,  #001d44 0%, #1c4277 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#001d44), color-stop(100%,#1c4277)); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* IE10+ */
		background: linear-gradient(to bottom,  #001d44 0%,#1c4277 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001d44', endColorstr='#1c4277',GradientType=0 ); /* IE6-9 */
		color:#fff;
	}
	#hrfb { width: 22px; height: 80px; float: right; margin: 0 10px 0 10px; 	}
	#hrfb p a { width: 22px; height: 80px; display: block; text-indent: -9999px; background-image: url(../img/header/ic_fb.png); 	}
	#hrtel { width: 19%; height: 120px; float: right; margin: 0; text-align:center;  padding:0;
	background: #001d44; /* Old browsers */
		background: -moz-linear-gradient(top,  #001d44 0%, #1c4277 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#001d44), color-stop(100%,#1c4277)); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* IE10+ */
		background: linear-gradient(to bottom,  #001d44 0%,#1c4277 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001d44', endColorstr='#1c4277',GradientType=0 ); /* IE6-9 */
	}
	
	#hrtel p.hrtelpp {
    font-family: 'Marcellus', serif;
    font-size: 24px;
    font-weight: 300;
    line-height: 24px;
    color: #fff;
		margin-top: 25px;
    margin-bottom: 10px;
	}
  #hrtel p.hrtelpp a {
    color: #fff;
    text-decoration: none;
  }
  #hrtel p.hrtelpp a i {
    font-size: 24px;
    vertical-align: text-bottom;
  }
  #hrtel a[href^="tel:"] {
    color: #fff;
    pointer-events: none;
    cursor: default;
  }
	#hrtel p.hrtelcc {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    width:auto;
    height:auto;
    margin-bottom:0px;
	}
	#hrtel p.hrtelcc a {
    display: block;
		width: auto;
		height: 24px;
    margin: 0 3px;		
		border: 1px solid #999;
		background-color: #fff;
		font-size: 12px;
    line-height: 24px;
    color: #333;
		text-decoration: none;
		text-align: center;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
    border-radius: 5px;
	}
  #hrtel p.hrtelcc a.hrline {
    width: 24px;
  }
  #hrtel p.hrtelcc a.hrfb {
    width: 24px;
  }
  
  #hrtel p.hrtelcc a.hrin {
    width: 24px;
  }
  #hrtel p.hrtelcc a.hrmail {
    width: 92px;
  }
  #hrtel p.hrtelcc a i {
    font-size: 18px;
    line-height: 24px;
    vertical-align: middle;
  }
  
	#hrtel p .icon-mail2 {
		font-size:80%;
	}
	
	
	/* Footer */
	
	#footer {
		width:100%;
		height:auto;
		background: #001d44; /* Old browsers */
		background: -moz-linear-gradient(top,  #001d44 0%, #1c4277 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#001d44), color-stop(100%,#1c4277)); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* IE10+ */
		background: linear-gradient(to bottom,  #001d44 0%,#1c4277 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001d44', endColorstr='#1c4277',GradientType=0 ); /* IE6-9 */
		color:#fff;
		padding:2% 0;
	}
	
	#footer #ftbody {
		width:auto;
		max-width:1100px;
		height:auto;
		margin:0 auto;
		padding:25px 20px 25px 280px;
		background-image:url(../img/ft-logo0.png);
		background-repeat:no-repeat;
		background-position:20px center;
		background-size:auto 70px;
	}
	
	#footer #ftbody h3 {
		padding-bottom:10px;
		border-bottom:1px dotted #999;
		margin-bottom:10px;
	}
  
  #footer #ftbody h3 a i {
    font-size: 30px;
    vertical-align: text-bottom;
  }
	
	#footer #ftbody h3 .icon-phone {
		font-size:26px;
	}
	
	#footer #ftbody h3 .ftphone {
		font-size:30px;
		font-family: 'Marcellus', serif;
		font-weight:300;
	}
	
	#footer #ftbody h3 a.ftcontact {
		width:150px;
		height:auto;
		padding:5px 20px;
		border:1px solid #ccc;
		text-decoration:none;
		text-align:center;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		font-size:0.9em;
		font-weight:normal;
    margin-right: 20px;
	}
  
  #footer #ftbody h3 a.ftcontact i {
    font-size: 15px;
    vertical-align: middle;
  }
	
	#footer p.pftmt {
		font-size:0.9em;
		font-family: 'Cinzel', serif;
		color:#ccc;
		/*line-height:2em;*/
		margin-bottom:5px;
	}
	#footer p.pftcopy {
		font-size:0.8em;
		font-family: 'Cinzel', serif;
		color:#ccc;
		line-height:2em;
	}
	#footer a {
    display: inline-block;
    vertical-align: middle;
		color:#ccc;
		text-decoration:none;
		margin-left:20px;
	}
	#footer a:hover {
		color:#fff;
		text-decoration:underline;
	}
  #footer a[href^="tel:"] {
    color: #fff;
    pointer-events: none;
    cursor: default;
  }

	
	
}


/* Style for Tablet PCs */
@media screen and (min-width: 641px) and (max-width: 1024px) {
	#wrapper {
		width:auto;
		max-width:980px;
		height:auto;
		font-size:100%;
		margin:0 auto;
		background-color:#fff;
	}
	img,object,embed {
		max-width:100%;
		height:auto;
	}
	img {
		-ms-interpolation-mode: bicubic;
	}
	.pcoly {
		display:none;
	}
	.pc {
		display:block;
	}
	.phone {
		display:none;
	}
	
	
	/* Header */
	#header {
		width:98%;
		height:auto;
		background-color:#fff;
		padding:0 1%;
		clear:both;
	}
	#header h1 {
		width:180px;
		height:80px;
		float:left;
	}
	#header h1 a {
		width: 180px;
		height: 80px;
		display: block;
		background-image: url(../img/header/logo.png);
		background-repeat: no-repeat;
		background-position: left 10px;
		background-size: 180px;
		text-indent: -9999px; }
	/* Menu */
	#navbody {
	    height: 80px;
	    overflow: hidden;
	    margin: 20px 0px;
	    padding-right: 1%;
	    width: 100%;
	    float: none;
	}
	a.menu-link {
	   display: none;
	}
	.js nav[role=navigation] {
		max-height: none;
		width:100%;
		height:80px;
		float:none;
		overflow:hidden;
		background-color:#fff;
		border-left:1px solid #ddd;
	}
	nav[role=navigation] ul {
		border: 0;
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-pack: center;
		-moz-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
	}

	nav[role=navigation]  li {
		-webkit-box-flex: 1;
		flex: 1;
		width:100%;
		height:160px;
		list-style-image: none;
		list-style-type: none;
		line-height:81px;
		font-family: "Times New Roman", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	}
	nav[role=navigation] li a {
		border: 0;
		width:auto;
		height:160px;
		display:block;
		text-align:center;
		text-decoration:none;
		color:#333;
		border-right:1px solid #ddd;
		border-left:1px solid #f8f8f8;
	}
	a .m_ent {
		font-family: 'Gilda Display', serif;
		font-size:12px;
		display:block;
		width:auto;
		height:auto;
	}
	a .m_jpt {
		font-size:12px;
		display:block;
		width:auto;
		height:auto;
	}
	nav[role=navigation] li a:hover {
		margin-top:-81px;
		background-color:#333;
		color:#fff;
	}
	#hrfb { width: 22px; height: 80px; float: right; margin: 0 10px 0 10px; 	}
	#hrfb p a { width: 22px; height: 22px; display: block; text-indent: -9999px; background-image: url(../img/header/ic_fb.png); 	}
	#hrtel { width: auto; height: 80px; float: right; margin: 0; text-align: center; }
  
  #hrtel p.hrtelpp {
    font-family: 'Marcellus', serif;
    font-size: 24px;
    font-weight: 300;
    line-height: 24px;
    color: #333;
		margin-top: 10px;
    margin-bottom: 5px;
	}
  #hrtel p.hrtelpp a {
    color: #333;
    text-decoration: none;
  }
  #hrtel p.hrtelpp a i {
    font-size: 24px;
    vertical-align: text-bottom;
  }
  #hrtel a[href^="tel:"] {
    color: #333;
    pointer-events: none;
    cursor: default;
  }
  
	#hrtel p.hrtelcc {
		width:100%;
		height:auto;
		margin-bottom:0px;
	}
	#hrtel p.hrtelcc a {
		width:70%;
		height:auto;
		display:block;
		border:1px solid #999;
		margin:0 auto;
		background-color:#fff;
		font-size:0.9em;
		text-decoration:none;
		text-align:center;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		color:#333;
	}
  #hrtel p.hrtelcc {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    width:auto;
    height:auto;
    margin-bottom:0px;
	}
	#hrtel p.hrtelcc a {
    display: block;
		width: auto;
		height: 24px;
    margin: 0 3px;		
		border: 1px solid #999;
		background-color: #fff;
		font-size: 12px;
    line-height: 24px;
    color: #333;
		text-decoration: none;
		text-align: center;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
    border-radius: 5px;
	}
  #hrtel p.hrtelcc a.hrline {
    width: 24px;
  }
  #hrtel p.hrtelcc a.hrfb {
    width: 24px;
  }
  #hrtel p.hrtelcc a.hrin {
    width: 24px;
  }
  #hrtel p.hrtelcc a.hrmail {
    width: 92px;
  }
  #hrtel p.hrtelcc a i {
    font-size: 18px;
    line-height: 24px;
    vertical-align: middle;
  }
  
	#hrtel p .icon-mail2 {
		font-size:80%;
	}
	
	/* Footer */
	
	#footer {
		width:100%;
		height:auto;
		text-align:center;
		background: #001d44; /* Old browsers */
		background: -moz-linear-gradient(top,  #001d44 0%, #1c4277 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#001d44), color-stop(100%,#1c4277)); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* IE10+ */
		background: linear-gradient(to bottom,  #001d44 0%,#1c4277 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001d44', endColorstr='#1c4277',GradientType=0 ); /* IE6-9 */
		color:#fff;
		padding:2% 0;
	}
	#footer p {
		font-size:0.8em;
		font-family: 'Cinzel', serif;
		color:#ccc;
		line-height:2em;
	}
	#footer a {
    display: inline-block;
    vertical-align: middle;
		color:#ccc;
		text-decoration:none;
		margin-left:20px;
	}
	#footer a:hover {
		color:#fff;
		text-decoration:underline;
	}
	
	#footer #ftbody h3 {
		padding-bottom:10px;
		border-bottom:1px dotted #999;
		margin-bottom:10px;
	}
  
  #footer #ftbody h3 a i {
    font-size: 24px;
    vertical-align: text-bottom;
  }
	
	#footer #ftbody h3 .icon-phone {
		font-size:20px;
	}
	
	#footer #ftbody h3 .ftphone {
		font-size:24px;
		font-family: 'Marcellus', serif;
		font-weight:300;
	}
	
	#footer #ftbody h3 a.ftcontact {
		width:150px;
		height:auto;
		padding:5px 20px;
		border:1px solid #ccc;
		text-decoration:none;
		text-align:center;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		margin-right: 20px;
		font-size:0.9em;
		font-weight:normal;
	}
  
  #footer #ftbody h3 a.ftcontact i {
    font-size: 15px;
    vertical-align: middle;
  }
  
  #footer a[href^="tel:"] {
    color: #fff;
    pointer-events: none;
    cursor: default;
  }
	
	
}

@media screen and (-webkit-min-device-pixel-ratio:2),
                  (min-resolution: 2dppx){

#header h1 a { background-image: url(../img/header/logo_rt.png)!important; background-size:180px 80px; text-indent: -9999px; }

}


/* Style for Smartphonea */
@media screen and (max-width: 640px) {
	#wrapper {
		width:100%;
		font-size:18px;
		line-height:180%;
		min-width:320px;
		background-color:#fff;
	}
	img,object,embed {
		max-width:100%;
		height:auto;
	}
	img {
		-ms-interpolation-mode: bicubic;
	}
	.pcoly {
		display:none;
	}
	.pc {
		display:none!important;
	}
	.phone {
		display:block;
	}
	
	
	/* Header */
	#header {
		width:100%;
		height:auto;
		background-color:#fff;
		padding:0;
		border-bottom:1px solid #333;
		clear:both;
	}
	#header h1 {
		width:100%;
		height:80px;
		margin:0 auto;
	}
	#header h1 a { width: 100%; height: 80px; display: block; background-image: url(../img/header/ft-logo.png); background-repeat: no-repeat; background-position:center center; text-indent: -9999px; }
	
	#navbody {
		width:auto;
		height:auto;
		background-color:#fff;
	}
	
	a.menu-link {
  	    	float: right;
		    display: block;
		    padding: 0 10px 0 9px;
			line-height:79px;
			font-family: 'Gilda Display', serif;
			color:#fff;
			text-decoration:none;
			text-shadow:-1px -1px 0px #000;
			border-top:1px solid #666;
			border-left:1px solid #666;
			background: #001d44; /* Old browsers */
		background: -moz-linear-gradient(top,  #001d44 0%, #1c4277 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#001d44), color-stop(100%,#1c4277)); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* IE10+ */
		background: linear-gradient(to bottom,  #001d44 0%,#1c4277 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001d44', endColorstr='#1c4277',GradientType=0 ); /* IE6-9 */
	}
	nav[role=navigation] {
		clear: both;
		-webkit-transition: all 0.3s ease-out;  
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
		
	}
	.js nav[role=navigation] {
		overflow: hidden;
		max-height: 0;
	}
	nav[role=navigation].active {
		max-height: 700px;
	}
	nav[role=navigation] ul {
		margin: 0;
		padding: 0;
		border-top: 1px solid #ccc;
	}
	nav[role=navigation] li a {
		display: block;
		padding: 0 10px;
		line-height:60px;
		height:60px;
		color:#fff;
		text-decoration:none;
		text-shadow:-1px -1px 0px #000;
			border-top:1px solid #666;
			border-left:1px solid #666;
			background: #001d44; /* Old browsers */
		background: -moz-linear-gradient(top,  #001d44 0%, #1c4277 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#001d44), color-stop(100%,#1c4277)); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* IE10+ */
		background: linear-gradient(to bottom,  #001d44 0%,#1c4277 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001d44', endColorstr='#1c4277',GradientType=0 ); /* IE6-9 */
	}
	a .m_ent {
		font-family: 'Gilda Display', serif;
		font-size:0.7rem;
		display:block;
		width:auto;
		height:auto;
		float:right;
	}
	a .m_jpt {
		font-size:18px;
		display:block;
		width:auto;
		height:auto;
		float:left;
	}
	#hrfb {
		display:none;
	}
	#hrfb p a {
		display:none;
	}
	#hrtel { width: auto; height: auto; float: left; margin: 0 0 0 10px; text-align: center; }
  
  #hrtel p.hrtelpp {
    font-family: 'Marcellus', serif;
    font-size: 24px;
    font-weight: 300;
    line-height: 24px;
    color: #333;
		margin-top: 10px;
    margin-bottom: 5px;
	}
  #hrtel p.hrtelpp a {
    color: #333;
    text-decoration: none;
  }
  #hrtel p.hrtelpp a i {
    font-size: 24px;
    vertical-align: text-bottom;
  }
  
  #hrtel p.hrtelcc {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    width:auto;
    height:auto;
    margin-bottom:0px;
	}
	#hrtel p.hrtelcc a {
    display: block;
		width: auto;
		height: 24px;
    margin: 0 3px;		
		border: 1px solid #999;
		background-color: #fff;
		font-size: 12px;
    line-height: 24px;
    color: #333;
		text-decoration: none;
		text-align: center;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
    border-radius: 5px;
	}
  #hrtel p.hrtelcc a.hrline {
    width: 24px;
  }
  #hrtel p.hrtelcc a.hrfb {
    width: 24px;
  }
  #hrtel p.hrtelcc a.hrin {
    width: 24px;
  }
  #hrtel p.hrtelcc a.hrmail {
    width: 92px;
  }
  #hrtel p.hrtelcc a i {
    font-size: 18px;
    line-height: 24px;
    vertical-align: middle;
  }
  
	#hrtel p .icon-mail2 {
		font-size:80%;
	}
	
	/* Footer */
	
	#footer {
		width:100%;
		height:auto;
		text-align:center;
		background: #001d44; /* Old browsers */
		background: -moz-linear-gradient(top,  #001d44 0%, #1c4277 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#001d44), color-stop(100%,#1c4277)); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* IE10+ */
		background: linear-gradient(to bottom,  #001d44 0%,#1c4277 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001d44', endColorstr='#1c4277',GradientType=0 ); /* IE6-9 */
		color:#fff;
		padding:0;
	}
	#footer p {
		font-size:16px;
		color:#ccc;
		line-height:50px;
	}
	#footer p.pftmt a {
		color:#fff;
		text-decoration:none;
		width:100%;
		height:auto;
		line-height:60px;
		display:block;
		background: #001d44; /* Old browsers */
		background: -moz-linear-gradient(top,  #001d44 0%, #1c4277 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#001d44), color-stop(100%,#1c4277)); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* IE10+ */
		background: linear-gradient(to bottom,  #001d44 0%,#1c4277 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001d44', endColorstr='#1c4277',GradientType=0 ); /* IE6-9 */
		border-bottom:1px solid #999;
	}
	#footer p.pftmt a:hover {
		color:#fff;
		text-decoration:none;
	}
	#footer p.pftcopy {
		font-size:12px;
		color:#ccc;
		line-height:50px;
		font-family: 'Gilda Display', serif;
	}
	
	#footer #ftbody {
		width:100%;
		height:auto;
		margin:0 auto;
		padding:0;
	}
	
	#footer #ftbody h3 {
		background-image: url(../img/header/logo.png); background-repeat: no-repeat; background-position:center 20px;
		background-size: 150px;
		width:100%;
		height:auto;
		padding-top:100px;
		padding-bottom:20px;
		padding-left: 0;
		border-top:1px dotted #999;
		background-color:#fff;
	}
  
  #footer #ftbody h3 a i {
    color: #001d44;
    font-size: 24px;
    line-height: 30px;
    vertical-align: text-bottom;
  }
	
	#footer #ftbody h3 .icon-phone {
		font-size:20px;
		color:#001d44;
		line-height:30px;
	}
	
	#footer #ftbody h3 .ftphone {
		font-size: 24px;
		font-family: 'Marcellus', serif;
		font-weight: 300;
		color: #001d44;
		line-height: 30px;
	}
	
	#footer #ftbody h3 .ftphone a {
		color:#001d44;
	}
	
	#footer #ftbody h3 a.ftcontact {
		width:150px;
		height:auto;
		display:block;
		clear:both;
		line-height:25px;
		padding:5px 20px;
		margin:5px auto 0;
		border:1px solid #ccc;
		text-decoration:none;
		text-align:center;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		font-size:0.8rem;
		font-weight:normal;
		color: #001d44;
	}
  
  #footer #ftbody h3 a.ftcontact i {
    font-size: 15px;
    line-height: 25px;
    vertical-align: middle;
  }
  
  #footer a[href^="tel:"] {
    text-decoration: none;
  }
	
	#footer p.pftmt {
		font-size:0.8rem;
		font-family: 'Cinzel', serif;
		color:#ccc;
		line-height:2em;
		margin-bottom:5px;
	}
}


.youtube-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  margin-bottom:10px;
}
.youtube-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}





@media all and (-ms-high-contrast: none){
nav[role=navigation]  li {

    flex: auto;

  }
}





  @media screen and (min-width: 640px) {

  .disnon{
    display: none !important;

  }

.on-color a span{
  color: #fff !important;
}


#dropmenu li a {
  text-decoration: none;
}
#dropmenu li ul{
  position: absolute;
  z-index: 100000000;
  margin-top: -80px;
}
#dropmenu li ul li {
  overflow: hidden;
  width: 100%;
  height: 0;
  color: #fff;
  -moz-transition: .2s;
  -webkit-transition: .2s;
  -o-transition: .2s;
  -ms-transition: .2s;
  transition: .2s;
  display: block;
  
}
#dropmenu li ul li a {

background: linear-gradient(to bottom, #001d44 0%,#1c4277 100%);
  text-align: left;
  width: auto;
  padding: 2px 0px;
  display: block;
  height: auto;
  text-align: center;
  /*width: 102%;*/
  width: 100%;
  color: #fff;
  height: 55px;
  line-height: 55px;
font-family: 'Gilda Display', serif;

}

#dropmenu li ul li a:hover {
  text-decoration: underline;
}

nav[role="navigation"] li a:hover a{

}

#dropmenu li:hover ul li {
  overflow: visible;
    display: block;


}
#dropmenu ul li {
    display: block;
    line-height: auto !important;
}

nav[role="navigation"] li li{
      display: block !important;
    line-height: auto !important;
}



nav[role="navigation"] li ul a:hover{
  line-height: auto;
    margin: 0 !important;
}


nav[role="navigation"] li a{
  margin: 0px !important;

}


.dropmenu-sub{
	max-width: 116px;
	width: 8.05%;
}


}




@media screen and (max-width: 1024px) {

.dropmenu-sub{
	max-width: 116px;
	width: 12.1%;
}

}



@media screen and (max-width: 640px) {







  .disnon{
    display: block !important;

  }

nav[role="navigation"] li ul {
  display: none;

}

#dropmenu-sub{
  display: block;

}


.dropmenu-sub-sp{
  position: static;
}

.cp-acordion-nav.basic {
  position: relative;
  transition: all .1s ease-in-out;
  -webkit-transition: all .1s ease-in-out;

  -ms-transition: all .1s ease-in-out;
  cursor: pointer;


}

.cp-acordion-nav.basic:hover {
  color: #ffffff;

}
.cp-acordion-nav.basic .swich:after {

  font-weight: normal;
  content: "+";
  padding-left: 20px;

}
.cp-acordion-nav.basic.active {
}
.cp-acordion-nav.basic.active .swich:after {
  content: "-";
  padding-left: 20px;
}

.cp-acordion-panel {
  margin-bottom: 30px;
  font-size: 16px;
}

.cp-acordion-panel li{
  width: 100%;
}

}





/*フッターリンク*/


	 
	@media screen and (min-width: 640px) { 
	 
		
		
	#footer #ftbody {
    width: auto;
    max-width: 1100px;
    height: auto;
    margin: 0 auto;
    padding: 25px 20px 25px 280px;
    background-image: url(../img/ft-logo0.png);
    background-repeat: no-repeat;
    background-position: 20px 30px;
    background-size: auto 70px;
}
		
		
		
		
			#footer p.pftmt{
			float:left;
			
			
		}
		

	
.menu {
	width:auto;
	margin: 0 auto;
	padding: 0;
	float:left;
	margin-left: 20px;
}

.menu a {
  display: block;
  padding: 10px;
	text-decoration: none;
	color: #000;

	
	

	

font-family: 'Cinzel', serif;
color: #ccc;
line-height: 2em;
	
	
	
	display: inline-block;
vertical-align: middle;
color: #ccc;
text-decoration: none;

	margin-left: 0px;
	
}

	#footer label {

    color: #fff;
    text-decoration: none;
    width: 100%;
cursor :pointer;

		font-size: 0.9em;
font-family: 'Cinzel', serif;
color: #ccc;
/*line-height: 2em;*/
		text-align: center;
		
		}

	#footer input {
	display: none;
}

.menu ul {
	margin: 0;
	padding: 0;
  background :#f4f4f4;
	list-style: none;
}

.menu li {
  max-height: 0;
  overflow-y: hidden;
  -webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

#menu_bar01:checked ~ #links01 li {
	max-height: 46px;
  opacity: 1;
}	

		
		#links01 li a {
	height: auto;
  margin: 0;
			
			
			font-family: 'Cinzel', serif;
color: #454545;
			font-size: 0.8em;
			
			
			border-bottom: 1px dotted #454545;
			
}	
		

		
		#links01 li a:hover {

color: #454545;
	
			
}	
		
		
		
		
		
	.plus-mark{
		display:none;
		
	}
		
		
		
		
		
		
		
		
		
	  }
	 
	 
	 
	 
	  @media screen and (max-width: 640px) {
	  
	
.menu {
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

.menu a {
  display: block;
  padding: 10px;
	text-decoration: none;
	color: #000;
  line-height: 1;
	
	
	font-size: 0.8rem;
font-family: 'Cinzel', serif;
	
	border-bottom: 1px dotted #454545;
	
	
	

	
}

	#footer label {

	
	

    color: #fff;
    text-decoration: none;
    width: 100%;
    height: auto;
    line-height: 60px;
    display: block;
    background: #001d44;
    background: -moz-linear-gradient(top, #001d44 0%, #1c4277 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#001d44), color-stop(100%,#1c4277));
    background: -webkit-linear-gradient(top, #001d44 0%,#1c4277 100%);
    background: -o-linear-gradient(top, #001d44 0%,#1c4277 100%);
    background: -ms-linear-gradient(top, #001d44 0%,#1c4277 100%);
    background: linear-gradient(to bottom, #001d44 0%,#1c4277 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001d44', endColorstr='#1c4277',GradientType=0 );
    border-bottom: 1px solid #999;

	
	font-size: 0.8rem;
font-family: 'Cinzel', serif;
	
	
	
	
	cursor :pointer;
}

	#footer input {
	display: none;
}

.menu ul {
	margin: 0;
	padding: 0;
  background :#f4f4f4;
	list-style: none;
}

.menu li {
  max-height: 0;
  overflow-y: hidden;
  -webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

#menu_bar01:checked ~ #links01 li {
	max-height: 46px;
  opacity: 1;
}	
		  
		  
		  
		  
		  
		.plus-mark{
		display:inline-block;
		
	}
		  
		  
		  
		  

		  

	  }

	  nav[role=navigation] li a:hover {

		background: #001d44; /* Old browsers */
		background: -moz-linear-gradient(top,  #001d44 0%, #1c4277 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#001d44), color-stop(100%,#1c4277)); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top,  #001d44 0%,#1c4277 100%); /* IE10+ */
		background: linear-gradient(to bottom,  #001d44 0%,#1c4277 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001d44', endColorstr='#1c4277',GradientType=0 ); /* IE6-9 */
		color:#fff;

	}