@charset "utf-8";

/* =======================================

	CommonElements

======================================= */
body {
	font-size: 100%;
	line-height: 140%;
	font-family: Arial,Helvetica,sans-serif;
	color: #000;
	text-align: center;
	background: #fff;
}

a:link { text-decoration:none; color: #000;}
a:visited { text-decoration:none; color: #000;}
a:active { text-decoration:none; color: #000;}
a:hover { text-decoration:none; color: #000;}

h1 {
	margin-bottom: 20px;
	padding: 10px 0;
	background: #000;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
}
h2 {
	padding: 30px 0;
	width: 100%;
	font-size: 12px;
}

#container {
	width: 100%;
	text-align: center;
}

.wideslider {
	width: 100%;
	height: 500px;
	text-align: left;
	position: relative;
	overflow: hidden;
}

.wideslider ul,
.wideslider ul li {
	float: left;
	display: inline;
	overflow: hidden;
}

.wideslider_base {
	top: 0;
	position: absolute;
}
.wideslider_wrap {
	top: 0;
	position: absolute;
	overflow: hidden;

}
.slider_prev,
.slider_next {
	top: 0;
	overflow: hidden;
	position: absolute;
	z-index: 100;
	cursor: pointer;
}
.slider_prev {background: #fff url(../img/prev.jpg) no-repeat right center;}
.slider_next {background: #fff url(../img/next.jpg) no-repeat left center;}

.pagination {
	bottom: 10px;
	left: 0;
	width: 100%;
	height: 15px;
	text-align: center;
	position: absolute;
	z-index: 200;
}

.pagination a {
	margin: 0 5px;
	width: 15px;
	height: 15px;
	display: inline-block;
	overflow: hidden;
	background: #333;
}
.pagination a.active {
	filter:alpha(opacity=100)!important;
	-moz-opacity: 1!important;
	opacity: 1!important;
}


/* =======================================
	ClearFixElements
======================================= */
.wideslider ul:after {
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
}

.wideslider ul {
	display: inline-block;
	overflow: hidden;
}

/* ======== COMPANY/PC 最終オーバーライド（共通2の末尾に常駐） ======== */
@media (min-width:1025px){

  /* スマホ用メニュー（ボタン/リンク）をPCでは完全に隠す */
  .sp-menu-btn,
  [aria-label="スマホメニュー"],
  #pan_area .pan-inner a[href$="spmenu.html"],
  #pan_area .pan-inner a[href*="/spmenu"],
  #pan_area .pan-inner a[href*="menu"]{
    display:none !important; visibility:hidden !important;
  }

  /* パンくず ? タイトル帯の間を詰める（密着） */
  #pan_area{ background:#027ACA !important; color:#fff !important; margin:0 !important; }
  #pan_area .pan-inner{ width:960px !important; margin:0 auto !important; padding:6px 12px !important; text-align:right !important; }
  #pan_area a{ color:#fff !important; text-decoration:none !important; }
  #pan_area a:hover{ text-decoration:underline !important; }

  /* H1帯：全幅#DAEBF7／内側960px／H1画像はサイドバー右端まで */
  #title_box{ background:#DAEBF7 !important; width:100% !important; margin:0 0 28px 0 !important; padding:0 !important; }
  #title_box .title-inner{ width:960px !important; margin:0 auto !important; padding:0 !important; box-sizing:border-box !important; }
  #title_box h1{ margin:0 !important; padding:0 !important; text-align:left !important; background:none !important; }
  #title_box h1 img{ display:block !important; width:960px !important; max-width:960px !important; height:auto !important; margin:0 !important; }

  /* 2カラム：本文700 / サイド220（上余白は同じ28px） */
  #contents{ width:960px !important; margin:0 auto !important; box-sizing:border-box !important; }
  #page{ width:960px !important; margin:0 auto !important; }
  #main{ float:left !important; width:700px !important; margin-top:28px !important; }
  #lmenu{ float:right !important; width:220px !important; margin-top:28px !important; font-size:110% !important; }

  /* H2見出し：幅328px／白線=左0・太1mm・長3mm（画像幅に一致） */
  #main>ul.indexmenu{
    list-style:none !important; margin:0 !important; padding:0 !important;
    display:grid !important; grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    column-gap:24px !important; row-gap:32px !important;
  }
  #main>ul.indexmenu>li{ margin:0 !important; padding:0 !important; float:none !important; display:block !important; }
  #main>ul.indexmenu h2{
    position:relative !important; width:328px !important;
    margin:0 !important; padding:8px 12px 8px 10px !important;
    background:#127CB8 !important; color:#fff !important; line-height:1.3 !important; box-sizing:border-box !important;
  }
  #main>ul.indexmenu h2::before{
    content:"" !important; position:absolute !important; left:0 !important; top:50% !important; transform:translateY(-50%) !important;
    width:3mm !important; height:1mm !important; background:#fff !important;
  }
  #main>ul.indexmenu .pic img{ display:block !important; width:328px !important; height:auto !important; }

  /* フッター：全域薄グレー／左=住所 右=3列メニュー（順序と間隔を固定） */
  footer, #footer_box, #footer_menuArea{
    background:#f0f0f0 !important; color:#333 !important; text-align:left !important; line-height:1.8 !important;
  }
  #footer_box{
    display:flex !important; align-items:flex-start !important;
    gap:16px !important; padding:24px 0 !important; box-sizing:border-box !important; clear:both !important;
  }
  #footer_box address{
    float:none !important; flex:0 0 300px !important; width:300px !important; margin:0 !important; padding:0 !important;
  }
  #footer_menuArea{
    float:none !important; width:auto !important; margin:0 !important; padding:0 !important;
    display:flex !important; flex-wrap:nowrap !important; gap:8px !important;
    justify-content:space-between !important; align-items:flex-start !important;
  }
  #footer_menuArea .footer_menuBox{ flex:1 1 0 !important; min-width:200px !important; margin:0 !important; padding:0 !important; }
  /* 列の順序：1=会社情報 / 2=営業案内 / 3=新着情報 */
  #footer_menuArea .footer_menuBox:nth-child(1){ order:1 !important; }
  #footer_menuArea .footer_menuBox:nth-child(2){ order:2 !important; }
  #footer_menuArea .footer_menuBox:nth-child(3){ order:3 !important; }
  #footer_menuArea ul{ margin:0 !important; padding:0 !important; list-style:none !important; }
  #footer_menuArea li{ line-height:1.6 !important; }
  #footer_menuArea a{ color:#333 !important; text-decoration:none !important; }
  #footer_menuArea a:hover{ text-decoration:underline !important; }

  /* copy帯：青地(#127CB8)＋白文字。子要素の白背景を完全遮断 */
  #copy_area{
    background:#127CB8 !important; color:#fff !important; width:100% !important;
    margin:0 !important; padding:16px 0 !important; text-align:center !important;
    display:flex !important; align-items:center !important; justify-content:center !important; flex-direction:column !important;
  }
  #copy_box{
    width:960px !important; max-width:100% !important; margin:0 auto !important;
    background:transparent !important; height:auto !important; float:none !important; display:block !important;
  }
  #copy{ float:none !important; width:auto !important; color:#fff !important; }
  #copy_area, #copy_area *{ color:#fff !important; }
  #copy_area a{ color:#fff !important; text-decoration:none !important; }
  #copy_area a:hover{ text-decoration:underline !important; }
}
/* ======== /COMPANY/PC 最終オーバーライド ======== */
