@charset "utf-8";

/*基本設定
---------------------------------------------------------------------------*/
body {
	color: #333333;
	margin: 0px;
	padding: 0px;
	font: 14px/2 "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a { color: #333;	/*リンクテキストの色*/ }
a:hover {
	color: #024222;
	text-decoration: none;
}

/**************************************/
/* ページ共通設定(topページ/template) */
/**************************************/
/*コンテナー
---------------------------------------------------------------------------*/
#wrapper {
	margin: 0px auto;
	background-color: #FFF;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:750px){
	#wrapper { width: auto; }
}

/* ヘッダー
---------------------------------------------------------------------------*/
#header {
	width: 100%;
	background-color: #fff;
}
@media screen and (min-width:751px){
	#header { min-width: 960px; }
}
@media screen and (max-width:750px){
	#header { positon: static; }
}


/*トップエリア
---------------------------------------------------------------------------*/
@media screen and (min-width:751px){
	#top_area {
		width: 960px;
		margin: 0 auto;
		position:relative;
	}
}


/*コンタクトエリア
---------------------------------------------------------------------------*/
@media screen and (min-width:751px){
	#contact_area_pc {
		position: absolute;
		right:0px;
		top:0px;
	}
}

/*トップロゴ
---------------------------------------------------------------------------*/
@media screen and (min-width:751px){
	#top_logo { height: 100px; }
	#top_logo img { vertical-align: bottom; }
}
@media screen and (max-width:750px){
	#top_logo {
		position: static;
		float:left;
	}
	#top_logo img { 
		vertical-align: middle;
		height: 50px;
	}
}

/* グローバルナビゲーション
---------------------------------------------------------------------------*/
#menu ul li a {
	height: 33px;
	padding-top: 10px;
	text-decoration: none;
	display: block;
	margin: 0px;
	line-height:1.0;
	font-size: 14px;
	color:#333333;
	font-weight: bold;
	letter-spacing: 0.1em;
	background-color: #EAEEEF;
	background-position: left center;
	text-align: center;
}
#menu ul li a span {
	font-size: 10px;
	color: #024222;
	font-weight: normal;
}
/*マウスオン時と、current(表示中のメニュー)の設定*/
#menu ul li a:hover, #menu ul .select a {
	background-color: #024222;
	color:#FFFFFF;
	font-weight: normal;
}
#menu ul li a:hover span, #menu ul .select a span {
	color: #fff;
	font-weight: normal;
}

@media screen and (min-width:751px){
	#menu ul li {
		float: left;
		width: 136px;
		border-right: 1px dotted #AAAAAA;
	}
	#menu ul li:last-child { border-right: none; }
	#menu ul li a { font-size: 14px; }
}
@media screen and (max-width: 750px) {
	#menu {
		position:relative;
		z-index: 2;
	}
	#menu #nav-toggle {
		display:block;
	 	position: absolute;
	 	right: 0;
	 	top: 0;
	 	-webkit-touch-callout: none;
	 	-webkit-user-select: none;
	 	-moz-user-select: none;
	 	-ms-user-select: none;
	 	user-select: none;
	 	border: 0;
	 	cursor: pointer;
	}
	.nav-collapse,
	.nav-collapse ul {
	  list-style: none;
	  width: 100%;
	  float: left;
	}
	#menu ul li {
		float: none;
		width: 100%;
		display: block;
	}
	#menu ul li a {
		border-top: 1px dotted #cccccc;
		border-left: none;
		background-color: #FFF;
	}
	#menu ul li a:hover, #menu ul .select a { background-color: #80a090; }
	
	.js .nav-collapse {
	  clip: rect(0 0 0 0);
	  display: block;
	  overflow: hidden;
	  zoom: 1;
	}
	.nav-collapse.opened {
	  max-height: 9999px;
	}
}

/* 中身（ヘッダー、フッター以外）
---------------------------------------------------------------------------*/
@media screen and (min-width:751px) {
	#container {
		width:100%;
		margin: 0px;
		padding: 0px;
	}
}
@media screen and (max-width: 750px) {
	#container { position:static; }
}

/* ページタイトル
---------------------------------------------------------------------------*/
#page_title { margin: 0 auto; }
#page_title div { 
	padding: 20px 0; 
}
#page_title p { 
	font-size: 30px;
	padding: 0 40px;
	color: #fff;
}
#page_title p span {
	color: #80a090;
	font-size: 20px;
}
@media screen and (min-width:751px) {
	.page_title p { min-width: 960px; }
}
@media screen and (max-width: 750px) {
	#page_title p {
		font-size: 18px;
		padding: 0 20px;
	}
	#page_title p span { font-size: 14px; }
}

.company_title { 
	/*background: url("../img/company_title.jpg") center center repeat; */
	background-color: #024222;
}
@media screen and (min-width:751px) {
	.company_title { min-width: 960px; }
}

/*パンくずリスト
---------------------------------------------------------------------------*/
#breadcrumb { background-color: #EAEEEF; }
#breadcrumb p { 
	padding: 10px 0; 
	font-size: 12px;
}
@media screen and (min-width:751px) {
	#breadcrumb { min-width: 960px; }
}
@media screen and (max-width: 750px) {
	#breadcrumb p { padding: 10px 20px; }
}

/*コンテンツ
---------------------------------------------------------------------------*/
@media screen and (min-width:751px) {
	#contents { padding-top: 20px; }
}
@media screen and (max-width: 750px) {
	#contents {
		width: auto;
		padding:20px;
	}
}

/*タイトル
---------------------------------------------------------------------------*/
h2 {
	border-bottom:3px solid #024222;
	font-weight:bold;
	font-size:20px;
	margin-bottom:10px;
	color:#333333;
}
h2 span {
	color:#024222;
	font-size:16px;
	font-weight: normal;
	margin-left:10px;
}

h3 {
	background-color: #024222;
	color: #fff;
	padding: 5px 10px;
	margin-bottom: 10px;
	font-weight: normal;
}

h4 {
	position: relative;
	padding-left: 25px;
	color: #024222;
	font-size: 15px;
	line-height: 40px;
}
h4:before {
	content: "";
	position: absolute;
	top: 11px;
	left: 4px;
	width: 14px;
	height: 14px;
	background: #024222;
}

/*お問い合わせ
---------------------------------------------------------------------------*/
#footer_contact {
	background-color: #EAEEEF;
	border: 5px solid #024222;
}

/*フッター
---------------------------------------------------------------------------*/
#footer {
	background-color: #80a090;
	color: #FFFFFF;
	width: 100%;
	padding: 20px 0;
}
#footer_logo p {
	font-size: 12px;
	line-height: 16px;
}
#footer li {
	font-size: 12px;
	display: inline-block;
	padding: 0 3px;
}
#footer li a { 	color: #FFFFFF; }

@media screen and (min-width:751px) {
	#footer { min-width: 960px; }
	#footer_logo {
		float: left;
		width: 600px;
	}
	#footer_logo a {
		float: left;
		margin-right: 10px;
	}
	#footer_logo a img { width: 150px; }
	#footer_logo p {
		float: left;
		margin-right: 10px;
	}
	#footer ul { 
		float: left;
		text-align: right;
		width: 350px; }
}
@media screen and (max-width: 750px) {
	#footer div div { padding: 0 20px; }
	#footer ul { padding: 0 20px; }
	#footer_logo a {
		display: block;
		margin-bottom: 10px;
	}
	#footer_logo a img { width: 100px; }
}

/*コピーライト
---------------------------------------------------------------------------*/
#copyright {
	background-color: #024222;
	color: #FFFFFF;
	padding: 10px 0;
}
@media screen and (min-width:751px) {
	#copyright { min-width: 960px; }
}

/*PAGE TOP設定
---------------------------------------------------------------------------*/
#page_top {
	position: fixed;
	bottom: 20px;
	right:20px;
	z-index:1;
}

#page_top a {
    background: #024222;
    text-decoration: none;
    color: #fff;
    width: 70px;
    padding: 20px 0;
    text-align: center;
    display: block;
    border-radius: 35px;
}
#page_top a:hover {
    text-decoration: none;
    background-color:#EAEEEF;
    color: #333;
}

/**************************************/
/* 共通設定 */
/**************************************/
@media screen and (min-width:751px) {
	/*PCで非表示*/
	.pc_none { display: none; }
}
@media screen and (max-width: 750px) {
	.sp_none { display: none; }
}

.inner { 
	width: 960px;
	margin: 0 auto;
}
@media screen and (max-width: 750px) {
	.inner { width: 100%; }
}

/*---------------------------------------------------------------------------*/
/* タイトル */
/*---------------------------------------------------------------------------*/
.title01 { 
	text-align: center;
	font-size: 20px;
	background-color: #EAEEEF;
	min-width: 960px;
}
.title01 span { 
	font-size: 40px;
	color: #024222;
}
@media screen and (max-width: 750px) {
	.title01 { 
		font-size: 16px;
		min-width: auto;
	}
	.title01 span { font-size: 20px; }
}

.title02 { 
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	color: #024222;
	margin-bottom: 20px;
	line-height: 1.2;
}
@media screen and (max-width: 750px) {
	.title02 { 
		font-size: 18px;
		min-width: auto;
	}
}

/*---------------------------------------------------------------------------*/
/* リスト */
/*---------------------------------------------------------------------------*/
/* 表風リスト */
@media screen and (min-width:751px) {
	.list01 dl,dt,dd {
		margin: 0;
		padding: 0;
	}
	.list01 {
		width: 960px;
		background-color: #024222;
		overflow:hidden; /*floatしたので高さ確保*/
	}
	.list01 dt {
		float: left;
		padding:10px 20px;
		width: 190px;
		color: #FFFFFF;
		border-top:1px solid #FFFFFF;
	}
	.list01 dd:nth-child(4n+2) {
		margin-left: 210px;
		padding:10px 20px;
		background-color: #EAEEEF;
		border-top:1px solid #FFFFFF;
	}
	.list01 dd:nth-child(4n) {
		margin-left: 210px;
		padding:10px 20px;
		background-color: #FFFFFF;
		border-top:1px solid #FFFFFF;
	}
}
@media screen and (max-width: 750px) {
	.list01 dl,dt,dd {
		margin: 0;
		padding: 0;
	}
	.list01 {
		width: 100%;
		overflow:hidden; /*floatしたので高さ確保*/
	}
	.list01 dt {
		display: block;
		padding:10px;
		background-color: #024222;
		color: #FFFFFF;
	}
	.list01 dd {
		display: block;
		padding:10px;
	}
}

/* 番号リスト */
.list02 {
	list-style:decimal;
	padding: 0 0 0 20px;
}

/* 目次リスト */
.list03 li { float: left; }
.list03 li a { 
	display: block;
	color: #fff;
	text-decoration: none;
	border-radius: 5px;  
	-webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 5px;   /* Firefox用 */
	padding: 10px;
	text-align: center;
	background-color: #024222;
}
.list03 li a:hover { background-color: #80a090; }
@media screen and ( min-width:751px ){
	.list03 li { 
		width: 220px;
		margin: 10px;
	}
}
@media screen and ( max-width:750px ){
	.list03 li { 
		width: 45%;
		margin: 10px 2.5%;
	}
}

/* チェックリスト */
.check_list li {
	font-size: 16px;
	font-weight: bold;
	line-height: 2;
	padding: 0.8em 0 0.5em 3em;
	background: url("../img/ic_check.png");
	background-size: 30px 30px;
	background-position: center left;
	background-repeat: no-repeat;
}
@media screen and ( max-width:750px ){
	.check_list li {
		font-size: 14px;
		line-height: 1.6;
		padding: 0.8em 0 0.5em 2em;
		background-size: 20px 20px;
	}
}

/* フローリスト */
.flow_list { counter-reset: flow_number; }
.flow_list > li {
	padding: 20px;
	position: relative;
	margin-bottom: 50px;
	background-color: #EAEEEF;
	line-height: 1.2;
}
.flow_list > li:after {
	display: block;
	content: "";
	position: absolute;
	bottom: -40px;
	left: 0;
	right: 0;
	width: 90px;
	height: 30px;
	margin: 0 auto;
	background-image: url(../img/arrow.png);
	background-size: contain;
	background-repeat: no-repeat;
}
.flow_list > li:last-child { 
	margin-bottom: 0;
}
.flow_list > li:last-child:after { content: none; }
.flow_list > li .title {
	font-weight: bold;
	font-size: 20px;
	position: relative;
	margin-left: 50px;
	margin-bottom: 10px;
}
.flow_list > li .title:before {
	content: counter(flow_number) ".";
	counter-increment: flow_number;
	font-size: 25px;
	color: #024222;
	display: block;
	float: left;
	margin-top: -5px;
	margin-left: -50px;
	text-align: center;
	height: 40px;
	width: 40px;
	border-radius: 50%;
}
@media screen and (min-width:751px) { /* PC */
	.flow_list li div div {
		width: 500px;
		float: left;
	}
	.flow_list li img {
		width: 250px;
		float: right;
	}
}
@media screen and (max-width:750px) { /* SP・タブレット */
	.flow_list > li .title { 
		font-size: 16px;
		margin-left: 40px;
	}
	.flow_list > li .title:before {
		font-size: 18px;
		margin-top: -3px;
		margin-left: -40px;
		height: 30px;
		width: 30px;
	}
	.flow_list li img {
		display: block;
		margin: 20px auto 0;
	}
}

/*---------------------------------------------------------------------------*/
/* イメージ */
/*---------------------------------------------------------------------------*/
.img01 {
	display: block;
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
}

.img02 {
	display: block;
	width: 100%;
	margin: 0 auto;
}
	
/*---------------------------------------------------------------------------*/
/* ボタン */
/*---------------------------------------------------------------------------*/
.detail_button {
	display:block;
	position: relative;
	color:#FFF;
	padding:10px 10px 10px 20px;
	width:230px;
	background-color:#024222;
	text-align:left;
	text-decoration:none;
	margin: 20px auto;
}
.detail_button:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 10px;
	height: 10px;
	margin: -6px 0 0 0;
	border-top: solid 2px #FFFFFF;
	border-right: solid 2px #FFFFFF;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.detail_button:hover {
	background-color: #80a090;
}
.detail_button:hover:after {
	border-top: solid 2px #024222;
	border-right: solid 2px #024222;
}

.btn01 {
	display: inline-block;
	background-color: #024222;
	color: #fff;
	padding: 10px;
	margin-bottom: 10px;
	width: 150px;
	text-align: center;
	text-decoration: none;
}
.btn01:hover {
	background-color: #80a090;	
}
/*---------------------------------------------------------------------------*/
/* フレーム */
/*---------------------------------------------------------------------------*/
.frame01 {
	background-color: #EAEEEF;
	padding: 10px 30px;
}
@media screen and (min-width: 751px) {
	.frame01 { width: 300px; }
}

/*---------------------------------------------------------------------------*/
/* その他 */
/*---------------------------------------------------------------------------*/
.alert { color: #ff0000; }
.marker_yellow_hoso {
	background: linear-gradient(transparent 60%, #ffff66 60%);
}

/* 分割 */
@media screen and (min-width: 751px) {
	.div_2th_box .col_01 {
		float: left;
		width: 600px;
	}
	.div_2th_box .col_02 {
		float: right;	
		width: 300px;
	}
}
@media screen and ( max-width:750px ){
	.div_2th_box .col_01 { margin-bottom: 20px; }
}

/**************************************/
/* 個別ページ設定 */
/**************************************/
/*---------------------------------------------------------------------------*/
/* TOPページ(index.html) */
/*---------------------------------------------------------------------------*/
.top_img {
	width: 100vw;
	height: 500px;
	background-position:center top;
	background-size: cover;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}
.top_img .overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,0.2);
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
}
/* キャッチコピー */
.top_img .catch {
	font-weight: bold;
	text-align: center;
	/*margin: auto;*/
	z-index: 2;
	font-size: 24px;
	text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
}
.top_img .catch span { 
	color: #024222;
	font-size: 150%;
}
@media screen and (max-width:750px) { /* SP */
	.top_img .catch { font-size: 16px; }
}
/* 新着情報 */
#news dl {
	overflow: auto;	/*高さ指定を超えるとiframe風にスクロールが出る設定。全部表示させたいならこの行と下のheightの行を削除。*/
	overflow-x: hidden;
	height: 200px;	/*ボックスの高さ*/
	background-color: #EAEEEF;
	padding: 20px;
}
/*日付設定*/
#news dt {
	font-weight: bold;	/*太字にする設定。標準がいいならこの行削除。*/
}
/*記事設定*/
#news dd {
	border-bottom: 1px solid #d2d2d2;	/*下線の幅、線種、色*/
	line-height:1.2;
	padding-bottom:10px;
}

/*---------------------------------------------------------------------------*/
/* サービス内容ページ(service.html) */
/*---------------------------------------------------------------------------*/
#houjin img, #kojin img { display: block; }
@media screen and (min-width: 751px) {
	#houjin div div div {
		float: left;
		width: 640px;		
	}
	#houjin div div img {
		float: right;
	}
}
@media screen and (max-width: 750px) {
	#houjin div div img { 
		max-width: 300px;
		width: 100%;
		margin: 0 auto;
	}
}

@media screen and (min-width: 751px) {
	#kojin img { float:right; }
}
@media screen and (max-width: 750px) {
	#kojin img { 
		max-width: 550px;
		width: 100%;
		margin: 0 auto;
	}
}

/*---------------------------------------------------------------------------*/
/* 業種別エアコン診断ページ(diagnose.html) */
/*---------------------------------------------------------------------------*/
.diagnose_box { margin-bottom: 50px }
.diagnose_box > p {
	font-weight: bold;
	font-size: 18px;
	color: #024222;
}
.diagnose_box img { display: block; }
.diagnose_box > div { margin-bottom: 20px }
.diagnose_box table { width: 100%; }
.diagnose_box caption { 
	font-weight: bold;
	color: #024222;
}
.diagnose_box th, .diagnose_box td {
	border: 1px solid #024222;
	padding: 5px;
	width: 25%;
}
.diagnose_box th {
	background-color: #024222;
	color: #fff;
	border-right: 1px solid #fff;
}
.diagnose_box th:last-child { border-right: 1px solid #024222; }
@media screen and (min-width: 751px) {
	.diagnose_box div p {	
		float: left;
		width: 640px;
	}
	.diagnose_box div img {
		float: right;
	}
}
@media screen and (max-width: 750px) {
	.diagnose_box div img { 
		max-width: 300px;
		width: 100%;
		margin: 0 auto;
	}
}

/*---------------------------------------------------------------------------*/
/* 求人応募ページ(recruit_form.html)、お問い合わせページ(contact.html) */
/*---------------------------------------------------------------------------*/
.entry_form { 
	background-color: #EAEEEF;
	padding: 30px;
}
.entry_form p {
	padding: 5px 10px;
	margin-bottom: 10px;
	color: #fff;
	background-color: #024222;
}
.entry_form dt {
	position: relative;
	padding-left: 25px;
	margin-top: 3px;
	font-weight: bold;
}
.entry_form dt:before {
	content: "";
	position: absolute;
	top: 7px;
	left: 4px;
	width: 14px;
	height: 14px;
	background: #024222;
}
.entry_form dd {
	margin-bottom:30px;
}
.entry_form dd input[type="text"], .entry_form select { 
	height: 30px;
	width: 100%;
}
.entry_form input[type="checkbox"] {
    width: 14px;
    height: 14px;
    -moz-transform: scale(1.4);
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
}
.entry_form input[type="radio"] {
	height: 14px;
	width: 14px;
    -moz-transform: scale(1.4);
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
	position:relative;
	top: 2px;
}
.entry_form label { 
	margin-right: 25px;
}
.entry_form textarea {
	width: 100%;
	height: 100px;
}
@media screen and (min-width: 751px) {
	.entry_form dt {
		float: left;
		width: 230px;
	}
	.entry_form dd {
		margin-left: 255px;
	}
	.entry_form dd input[type="text"] { width: 641px; }
}
@media screen and (max-width: 750px) {
	.entry_form dt { margin-bottom: 10px; }
	.entry_form dd { margin-bottom: 20px; }
	
}


.form_button01, .form_button02 {
	display: block;
	font-weight bold;
	font-size:16px;
	text-align: center;
	padding: 10px 30px;
	margin: 30px auto 0;
	-webkit-appearance: none;
	border-radius: 0;
	border: none;
	cursor: pointer;
}
.form_button01 {
	background-color:#024222;
	color: #FFFFFF;
}
.form_button01:hover { backgroud-color: #80a090; }
.form_button02 { background-color:#ccc; }

/* 警告 */
.alert {
	font-size: 10px;
	color: #DD0000;
	display: inline;
	line-height: 1 !important;
	display: block;
}

/* 確認画面 */
.formTable {
	text-align: left;
	width: 100%;
}
.formTable th, .formTable td {
	border: #024222 1px solid;
	padding: 10px;
	font-weight: normal;
}
.formTable th {
	border-bottom: #fff 1px solid;
	background-color: #024222;
	color: #fff;
	width: 200px;
}
.formTable tr:last-child th {
	border-bottom: #024222 1px solid;
}
.formTable td { width: 400px; }

@media screen and (min-width: 751px) {
	.form_button_box { 
		width: 400px;
		margin: 0 auto;
	}
	.form_button_box .form_button01 { float: left; }
	.form_button_box .form_button02 { float: right; }
}
