@charset "UTF-8";
/*
 * [ css ] /_css/module.css
 * Date: 09/29/2017
 * Author: (C)Minatoro Works
 *
 * 【Heartner】  module.css
 * Minatoro Works service introsite
 * module style
*/


/* ----------- *
  breadcrumbs module
*/
.breadcrumbs {	text-align: left;}
.breadcrumbs ul	{	font-size: 0.8em;	line-height: 1;}
.breadcrumbs li	{	height: 16px;	line-height: 16px;}
.breadcrumbs ul *	{	display: inline-block;}
.breadcrumbs ul li sup {	top: -2px;}
.breadcrumbs em	{	color: #999;	font-style: normal;}
.breadcrumbs span	{	margin: 0 0.3em;	color: #555;}
.breadcrumbs ul>li:nth-last-child(2) em,
.breadcrumbs ul>li:last-child em	{	color: #333;}

/* : jQuery plugin [ jquery.rcrumbs.js ] */
.breadcrumbs.rcrumbs {  white-space: nowrap;}
.breadcrumbs.rcrumbs ul { padding: 0 10px 0; list-style: none;}
.breadcrumbs.rcrumbs ul>li { overflow: hidden; display: none;}
.breadcrumbs.rcrumbs ul>li.show { display: inline-block;}
.breadcrumbs.rcrumbs ul>li.ellipsis { overflow: hidden; text-overflow: ellipsis; -o-text-overflow: ellipsis;}


/* ----------- *
  header module
*/
/* header */
body>header	{	width: 100%;	position: fixed;	top: 0;	left: 0px;	height: 62px/* 54px*/;background-color: rgba(255,255,255,0.9);	z-index: 10;}
body>header.fixed	{	background-color: rgba(255,255,255,0.95);}
body>header>div {	max-width: 1200px;	box-sizing: border-box;	margin: 0 auto;	padding: 10px;}
body>header>div:after {	content:" ";	display:block;	clear:both;}
body>header h1 {	float: left;	line-height: 2.5;}
body>header h1 a img {	height: 36px;	width: auto;	margin-right: 20px;	vertical-align: middle;}
body>header .header_inq {	display: inline-block;	float: right;}
body>header .header_inq .tel {	margin-right: 20px;	float: left;	color: #00366C;	line-height: 1.2;}
body>header .header_inq .tel p {	font-size: 20px; font-weight: bold;}
body>header .header_inq .tel a[href*="tel:"] {	color: #00366C;}	
body>header .header_inq .tel span {	padding-left: 22px;	font-size: 11.5px;}
body>header .header_inq .mail {	float: right;}
body>header .header_inq .mail a.button {	width: 160px;	font-size: 16px;	font-weight: normal;	line-height: 1.2;}
body>header .header_inq .mail a.button i {	margin-right: 5px;}
body>header .header_inq .mail a i {	padding-right: 5px;	font-size: 1.1em;}
body>header .nav_overlay {	width: 100%;	padding: 0;	position: absolute;	top: 50px;	background-color: #000;	opacity: 0;	z-index: 1;}



/* nav */
body>nav {	display: block;	position: fixed;	width:100%;	height: 40px;	top: 62px;	left: 0px;	z-index: 100;	background-color: rgba(0,102,204,0.9);	box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.30);	-moz-box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.30);	-webkit-box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.30);}
body>nav.close {	display: none;}
body>nav	ul {	max-width: 1200px;	height: 40px;	margin: 0 auto;	text-align: center;}
body>nav ul:after { content: ""; display: block; height: 0;	clear: both;}
body>nav	ul li {	display: block;	width: 20%;	float: left;}
body>nav	ul li a	{	display: block;	width: 100%;	height: 40px;	margin: 0 1px;	background-position: center;	text-align: center;	line-height: 40px;	color: #FFF !important;}
body>nav	ul li a.ac {	background-color: rgba(0,54,108,0.5);}



/* nav_opener */
.nav_opener,
.nav_opener>div {	width: 50px;	height: 50px;}
.nav_opener {	display: none;	position: fixed;	top: 0;	right: 0;	background-color: #fff;	z-index:150;}
.nav_opener>div {	position: relative;}
.nav_opener>div span {	display: block;width: 32px;	position: absolute;	left: 50%;	transform: translateX(-50%);	transition: all .4s;}
.nav_opener>div span:nth-child(-n+3) {	height: 4px;	background-color: #ccc;}
.nav_opener>div span:nth-child(1) {	top: 7px;}
.nav_opener>div span:nth-child(2) {	top: 17px;}
.nav_opener>div span:nth-child(3) {	top: 27px;}
.nav_opener>div span:nth-child(4) { top: 37px;	width: auto;	font-size: 10px;	text-align: center;	color: #333;}

.nav_opener.active>div span:nth-of-type(1) {
  -webkit-transform: translateX(-50%) translateY(10px) rotate(-315deg);
  transform: translateX(-50%) translateY(10px) rotate(-315deg);
}
.nav_opener.active>div span:nth-of-type(2) {
  opacity: 0;
}
.nav_opener.active>div span:nth-of-type(3) {
  -webkit-transform: translateX(-50%) translateY(-10px) rotate(315deg);
  transform: translateX(-50%) translateY(-10px) rotate(315deg);
}


/* ----------------------------------------------- *
  下層ページ公開前メニュー非表示 body.preceding
*/
body.preceding>nav {	display: none;}
body.preceding #headline .breadcrumbs {	padding-top: 75px;}
body.preceding #headline h1 {	padding-top: 80px;}




@media (max-width: 1200px) {
	/* header */
	body>header>div {	width: 100%;}
	body>header .header_inq {/*	padding-right: 10px;*/}
	/*body>header .header_inq .mail a.button {	width: 200px;	font-size: 16px;}*/
	/* nav */
	body>nav ul	{	width: 100%;	text-align: center;}
	body>nav ul li {}
	body>nav a {	width: 100%;	margin: 0;}

}
@media (max-width: 980px) {
	body>header h1 {	font-size: 0.9em;}
	_:-ms-input-placeholder, :root body>header h1 {	width:  calc(190px + 22em);}
	
	body>header h1 a {	font-size: 14px;}
	body>header h1 a span span::before	{	content:"";	white-space: normal;}
	
	body>header .header_inq .tel {	margin-right: 10px;}
	body>header .header_inq .tel p {	font-size: 16px;}
	body>header .header_inq .tel span {	padding-left: 0;	font-size: 11px;}
	body>header .header_inq .mail a.button {	width: 140px;  font-size: 15px;}
	body>header .header_inq .mail a i {	margin-left: 0;}
	body>nav a {	font-size: 15px;}
}
@media (min-width: 781px) {
	body>nav	{}
	body>nav a:hover	{	text-decoration: none;	background-color: rgba(144, 144, 144, 0.8);}
	body>header .header_inq .tel a[href*="tel:"] {	pointer-events: none;	cursor: default;	text-decoration: none;}	
}
@media (max-width: 780px) {
	/* header */
	_:-ms-input-placeholder, :root body>header h1 {	width: calc(190px + 14em);}
	
	body>header {	height: 50px;}
	body>header>div {	padding: 7px;}
	body>header h1 a img {	height: 30px;}
	body>header h1 a>span {	vertical-align: middle;	font-size: 13px;}
	body>header h1 a span span::before	{	content:"\A";	white-space: pre;}
	body>header .header_inq .tel span {	vertical-align: top;	line-height: 1.5;}
	body>header .header_inq .mail a.button {	padding: 8px;}
	
	/*body>header .header_inq .tel,*/
	body>header .header_inq .mail span {	display: none;}
	/*body>header .header_inq .mail {	padding-right: 50px;}*/
	body>header .header_inq .mail a.button {	width: auto;}
	body>header .header_inq .mail a.button i {	margin-right: 0;	padding: 0 3px;}
	/* nav */
	body>nav#nav  {	height: auto;	padding: 10px 0;	background-color: rgba(255,255,255,0.9);	color: #222;}
	body>nav ul {	height: auto;	}
	body>nav ul li {	display: block;	width: 100%;	height: 40px;	line-height: 40px;}
	body>nav ul li:first-child {	border-top: none;}
	body>nav ul li a {	background-image: none !important;	height: 40px;	line-height: 40px;	font-size: 0.9em;	letter-spacing: 2px;}
	body>nav ul li a span {	display: block; color: #222;}
	body>nav a.ac {	background-color: rgba(51,127,137,0.2);}
	body>nav ul li.tel { height: auto;	padding: 10px 0;	line-height: 1.3;}
	body>nav ul li.tel a {	height: auto;	font-size: 1.1em;	line-height: 1.3;}
	body>nav ul li.tel>span {	font-size: 0.8em;} 
	/* nav_opener 
	.nav_opener {	display: block;}*/
}
@media (max-width: 640px) {
	_:-ms-input-placeholder, :root body>header h1 {	width: auto;}
	
	body>header {	height: 44px;}
	body>header>div {	padding: 5px 10px;}
	body>header h1 a img {	height: 26px;}
	body>header h1 a span {	display: none;}

 body>header .nav_overlay {	top: 44px;}
 
.nav_opener,
.nav_opener>div {	width: 44px;	height: 44px;}
.nav_opener>div span {width: 27px;}
.nav_opener>div span:nth-child(1) {	top: 4px;}
.nav_opener>div span:nth-child(2) {	top: 14px;}
.nav_opener>div span:nth-child(3) {	top: 24px;}
.nav_opener>div span:nth-child(4) { top: 30px;}
}
@media (max-width: 480px) {
	body>header {	height: 40px;}
	body>header h1 {	line-height: 2;}
	body>header h1 a span {	display: none;}
	body>header .header_inq .tel {	display: none;}
	body>nav ul li.inq .tel span::before	{	content:"\A";	white-space: pre;}
	/*body>header .header_inq .mail {	padding-right: 45px;}*/
	body>header .header_inq .mail a.button {	width: auto;	padding: 4px;	font-size: 16px;}
	body>header .header_inq .mail a.button span {	display: none;}
	body>header .header_inq .mail a i {	padding-right: 0;}
	body>header .nav_overlay {	top: 40px;}
 
.nav_opener,
.nav_opener>div {	width: 40px;	height: 40px;}
.nav_opener>div span {width: 27px;}
.nav_opener>div span:nth-child(-n+3) {	height: 3px;}
.nav_opener>div span:nth-child(1) {	top: 5px;}
.nav_opener>div span:nth-child(2) {	top: 12px;}
.nav_opener>div span:nth-child(3) {	top: 19px;}
.nav_opener>div span:nth-child(4) { top: 28px;}
	
.nav_opener.active>div span:nth-of-type(3) {
  -webkit-transform: translateX(-50%) translateY(-5px) rotate(315deg);
  transform: translateX(-50%) translateY(-5px) rotate(315deg);}
  
  
  
  
  /* ----------------------------------------------- *
  下層ページ公開前メニュー非表示 body.preceding
*/
  body.preceding #headline .breadcrumbs {	padding-top: 50px;}
  body.preceding #headline h1 {	padding-top: 50px;}
}



/* --------------------------------- *
  inquiry module
*/
#contents>section:nth-of-type(odd)#contact {	border-top: 5px solid #F0F8FF;	background-color: transparent;}
#contact .content:after { content: ""; display: block; height: 0;	clear: both;}
#contact header h1 {	line-height: 1;	color: #7FBD1A;	font-size: 40px;	text-align: center;	font-weight: normal;}
#contents>section#contact .lead {	text-align: center;}
#contact .content h1 {	font-size: 27px;	color: #666;	font-weight: normal;}
#contact .mail,
#contact .tel {	width: 49%;	padding: 15px 0;	text-align: center;}
#contact .mail {	float: left;}
#contact .mail a {	width: 330px;	margin: 20px auto 0;	font-size: 24px;	font-weight: normal;}
#contact .mail a i {	margin-right: 15px;	margin-left: 0;	font-size: 27px;}
#contact .tel {	float: right;	border-left: 1px solid #ccc;}
#contact .tel p {	margin-top: 20px;}
#contact .tel p em {	color: #00366C;	font-size: 40px;	font-weight: bold;	line-height: 1.1;}
#contact .tel p span {	color: #666;}
#contact .tel:first-child {	width: 100%;	padding: 0;	float: none;	border-left: none;}

@media (max-width: 980px) {
	#contact .mail a {	width: auto;	padding:  5px 15px;	font-size: 20px;}
	/*#contact .mail a i {	font-size: 23px;}*/
	#contact .tel p em {	font-size: 32px;}
	#contact .tel:first-child p em {	font-size: 40px;}
}
@media (min-width: 781px) {
	#contact .tel p a[href*="tel:"] {	pointer-events: none;	cursor: default;	text-decoration: none;}	
}
@media (max-width: 780px) {
	#contact .lead {	text-align: left;}
	/*#contents #contact .lead {	text-align: center;}*/
	#contents>section#contact .lead p span::before {	content: "";	white-space: normal;}
	#contact .content div h1 {	font-size: 22px;}
/*	#contact .mail a {	font-size: 18px;}
	#contact .mail a i {	font-size: 20px;}*/
	#contact .tel p em {	font-size: 30px;}
}
@media (max-width: 640px) {
	#contact .mail,
	#contact .tel {	width: 100%;	float: none;}
	#contact .mail {	padding: 0 0 30px;}
	#contact .mail a {	margin-top: 15px;}
	#contact .tel {	padding: 30px 0 0;	border-left: none;	border-top: 1px solid #ccc;}
	#contact .tel p {	margin-top: 15px;}
	#contact .tel:first-child {	border-top: none;}
}
@media (max-width: 480px) {
	#contact .content div h1 {	line-height: 1;	font-size: 23px;}
	#contact .tel:first-child p em {	font-size: 30px;}
}



/* --------------------------------- *
  footer module
*/
body>footer	{	width: 100%;	padding: 30px 0;	background-color: #00366C;	color: #fff;}
body>footer>div {	max-width: 1200px;	margin: 0 auto;}
body>footer h1 {	text-align: center;}
body>footer h1 img {	height: 50px;	width: auto;}
body>footer a,
body>footer a:link,
body>footer a:visited {	color: #fff;}
body>footer h1 span {	display: block;	margin-top: 15px;	font-size: 0.9em;}
body>footer>div>div {	margin-top: 30px;	padding: 0 100px;	position: relative;}
body>footer nav {display: -webkit-box;  display: -ms-flexbox;  display: flex;	-webkit-box-pack: justify;	-ms-flex-pack: justify;	justify-content: space-between;}
body>footer nav:after { content: ""; display: block; height: 0;	clear: both;}
body>footer nav ul {	width: 25%;	float: left;	-webkit-box-flex: 1;	-ms-flex-positive: 1;	flex-grow: 1;}
body>footer nav ul:nth-child(3) {	-webkit-box-flex: 0;	-ms-flex-positive: 0;	flex-grow: 0;}
body>footer nav ul li {	margin-top: 15px;}

body>footer #social_button {	width: 33%;/*	float: left;*/	position: absolute;	left: 100px;	bottom: -55px;}
body>footer #social_button ul {	width: auto;}
body>footer #social_button ul li {	width: 40px;	display:inline-block;}
body>footer #social_button ul li i {	font-size: 24px;}
body>footer #social_button ul li i.icon_twitter-squared {	font-size: 28px;	vertical-align: -1px}
body>footer #social_button ul li img {	width: 24px;	height: 25px; vertical-align: -2px;}
body>footer #social_button a span {	display: none;}
body>footer address {	margin-top: 40px;}
body>footer address dl {	margin-top: 18px;}
body>footer address dl dt {	font-weight: bold;	font-size: 0.8em;}
body>footer address dl dd {	margin-top: 5px;	font-size: 0.8em;	line-height: 1.3;}
body>footer address>p	{	line-height: 0;	font-size: 12px;}
body>footer address .isms {	float: right;}
body>footer address .isms img {	width: 130px;}
body>footer address .logo img {	height: 24px;	width: auto;}
body>footer address:after { content: ""; display: block; height: 0;	clear: both;}
body>footer .trademark {	margin-top: 65px;	text-align: center;	font-size: 12px;}
body>footer .trademark sup {	top: -2px;}
body>footer small {	display: block;	padding: 10px 0 0;	text-align: center;	font-size: 12px;}

@media (max-width: 1200px) {
	body>footer>div {	width: 100%;}
	body>footer>div>div {	padding: 0 50px;}
	body>footer #social_button {	left: 50px;}
}
@media (max-width: 980px) {
	body>footer nav ul li {	font-size: 0.9em;}
}
@media (max-width: 780px) {

	body>footer nav ul:nth-child(3) {	-webkit-box-flex: 1;	-ms-flex-positive: 1;	flex-grow: 1;}
	/*body>footer nav ul:nth-child(3) li {	width: auto;	padding: 0 20px;	display: inline-block;}*/
	body>footer #social_button {	width: 100%;	margin-top: 30px;	float: none;	left: 0;	text-align: center;}
	body>footer #social_button ul {	width: 100%;	text-align: center;}
	body>footer #social_button ul li {	margin-top: 0;}
	body>footer address .isms img {	width: 110px;}
}
@media (max-width: 768px) {
	body>footer>div>div {	padding: 0 30px;}
}
@media (max-width: 640px) {
	body>footer h1 img {	height: 40px;}
	body>footer nav {	display: block;}
	body>footer nav ul {	width: 100%;	margin-top: 15px;	margin-bottom: 0;	float: none;}
	body>footer address {	margin-top: 30px;}
	body>footer address .isms {	float: none;	text-align: center;}
	body>footer address .logo {	margin-top: 20px;}
	body>footer address dl dd {	font-size: 13px;}
}
@media (max-width: 480px) {
	body>footer>div>div {	padding: 0 20px;}
	body>footer nav>ul {	font-size: 14px;}
	body>footer address dl dd {	font-size: 12px;}
}
@media (max-width: 380px) {
	body>footer h1 a {	line-height: 1.4;}
	body>footer h1 a span::before	{	content:"\A";	white-space: pre;}
	body>footer nav>ul:nth-child(-n+2) {	margin-bottom: 20px;	font-size: 13px;}
	body>footer nav>ul:nth-child(3) li {	font-size: 13px;}
	body>footer address dl dd span::before	{	content:"\A";	white-space: pre;}
	body>footer small {	line-height: 1.2;}
}


/*[F]*/