@charset "utf-8";
/*-------------------------------------------------
リセット
-------------------------------------------------*/
html { overflow-y: scroll;}body,div,p,ul,ol,li,dl,dt,dd,form,fieldset,legend,input,textarea,pre,code,blockquote {margin: 0;padding: 0; }h1,h2,h3,h4,h5,h6 {font-size: 100%;	font-weight: normal;	margin: 0;	padding: 0; }pre {word-wrap: break-word;white-space: pre-wrap; }em{ font-style:normal;}div {word-wrap: break-word; }br {letter-spacing: 0; }a img, img { border: 0; }ul {ｍargin: 0;padding: 0; }li {list-style-type: none;margin: 0;padding: 0; }li img {margin: 0;padding: 0;}table {border-collapse: collapse;border-spacing: 0;}caption,th { text-align: left; }th,td{ vertical-align:top;}fieldset,img { border: 0; }address, th, var {font-style: normal;font-weight: normal;}hr {border: 0;height: 1px;margin: 0;padding: 0;}img{vertical-align:middle;}
::selection { background:#999; color:#fff; text-shadow:none;}	::-moz-selection { background:#999; color:#fff; text-shadow:none;}
/*-------------------------------------------------
フォーム
-------------------------------------------------*/
label { cursor: pointer; }legend { display: none; }input, select, textarea { font-family: "メイリオ","Meiryo",Sans-Serif,verdana,Osaka,"ＭＳ Ｐゴシック","MS PGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro";}
input,button,textarea,button{padding: 3px 5px;  vertical-align: middle; margin:1px 0;}
.error input[type="text"],.error textarea,.error select{ background-color: #FFEAEA; border-color:#EFB3B3;}
input[type="text"]:focus,textarea:focus, select:focus{ background-color: #EFFAFF; border-color:#00B1EF; color:#333; box-shadow:0px 0px 5px #5FD5FF;}
textarea, select,input[type="text"],input[type="password"]{ border:1px solid #ccc; padding: 3px; border-radius: 3px; background:#fff; box-shadow:0 1px 2px rgba(0,0,0,0.2) inset;
-webkit-transition:  all 0.2s ease-out;-moz-transition:  all 0.2s ease-out;-o-transition:  all 0.2s ease-out;-ms-transition:  all 0.2s ease-out;transition:  all 0.2s ease-out;}
input[type="submit"],button[type="submit"]  { cursor: pointer; }
input[type="checkbox"], input[type="radio"] {background: none;	border: none; }
/* for IE8 */.msie8 input[type="checkbox"],.msie8 input[type="radio"] {margin: 0px;padding: 0px;vertical-align: -0.2em; }
/* for Chrome1 */.chrome1 input[type="checkbox"], .chrome1 input[type="radio"] {	margin: 0px;padding: 0px;vertical-align: -0.2em;}
/*-------------------------------------------------
クリア
-------------------------------------------------*/
.clearfix:after {clear: both;	content: ".";display: block;height: 0;visibility: hidden; }
.clearfix { min-height: 1px; }.clear {clear: both; }
/*-------------------------------------------------
ボディ
-------------------------------------------------*/
body { background:#fff; color:#333; font-size: 15px; line-height: 1.8; word-break: normal; min-width:1040px;
 font-family: "メイリオ","Meiryo",Sans-Serif,verdana,Osaka,"MS PGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック";
-webkit-text-size-adjust: none; /* iPhone */
}

/*-------------------------------------------------
リンク
-------------------------------------------------*/
a{	color:#000; text-decoration:underline; font-weight:normal;
-webkit-transition:  all 0.2s ease-out; transition:  all 0.2s ease-out;}
a:hover { color:#000; text-decoration:none;}
/*-------------------------------------------------
その他
-------------------------------------------------*/
p{ margin:0 0 1em;}
.left{ text-align:left;}.right{ text-align:right;}.center{ text-align:center;}
.fl{ float:left;}.flm{ float:left; margin:0 20px 15px 0; clear:left;}
.fr{ float:right;}.frm{ float:right; margin:0 0 15px 20px; clear:right;}
.hidden{ display:none; visibility:hidden;}
.oh{ overflow:hidden;}
.shadow{ box-shadow:0 1px 3px rgba(0,0,0,0.3);}
.radius{ border-radius:5px;}
img.center{ display:block; margin-left:auto; margin-right:auto; margin-bottom:1em;}
img,.bl{-webkit-transition:  all 0.2s ease-out;-moz-transition:  all 0.2s ease-out;-o-transition:  all 0.2s ease-out;-ms-transition:  all 0.2s ease-out;transition:  all 0.2s ease-out;}
a img:hover,.bl:hover{ opacity:0.7;}
.bl:hover img,.bl:hover .button{ opacity:1;}
.indent{ padding-left:1em; text-indent:-1em;}
.serif{font-family:"游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "AozoraMinchoRegular" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;}
.gothic{ font-family: "メイリオ","Meiryo",Sans-Serif,verdana,Osaka,"MS PGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",;}
.red{ color:#C00;}
.bold{ font-weight:bold;}
mark{ color:#CC0000; background-color:#FCC;}

/*-------------------------------------------------
ヘッダー
-------------------------------------------------*/
.globalHeader{ background:url(../img/he.png) repeat-x left top; color:#fff;}
	body.blue .globalHeader{ background-image:url(../img/heb.png);}
.globalHeader .inner{ width:1000px; height:120px; margin:0 auto 0; position:relative;}
.globalHeader h1{ position:absolute; top:20px; left:0;}
.globalHeader .phone{ position:absolute; top:35px; left:400px; width:350px; font-size:11px;}
.globalHeader .mail{ position:absolute; top:35px; right:0;}
.globalHeader .mail a.button{ width:250px; height:50px; line-height:50px; padding:0; margin:0; text-align:center;}

/*-------------------------------------------------
アイキャッチ
-------------------------------------------------*/
.firstView{ background:url(../img/mi.png) repeat-x left bottom;}
.firstView .inner{ width:1000px; height:600px; margin:0 auto 0; position:relative;}

/*-------------------------------------------------
グロナビ
-------------------------------------------------*/
.gnav{ background:url(../img/gn.png) repeat-x left top; z-index:999;}
.gnav.is_stuck{ box-shadow:0 1px 3px rgba(0,0,0,0.3);}
.gnav ul{width:1000px; margin:0 auto 0; border-left:1px solid rgba(255,255,255,0.2); display: flex;}
.gnav ul li{text-align:center; flex-grow: 1;}
.gnav ul li a{ display:block; color:#fff; line-height:50px; text-decoration:none; font-weight:bold; font-size:15px; border-right:1px solid rgba(255,255,255,0.2);}
.gnav ul li a:hover{ background-color:#333;}
.gnav.is_stuck ul li.contact{ background-color:#4E9190;}
.gnav.is_stuck ul li.contact a:hover{ background-color:#84CFCE;}

/*-------------------------------------------------
フッター
-------------------------------------------------*/
.globalFooter{background-color: #000; color:#ccc;}
.globalFooter .inner{ width:1000px; margin:0 auto 0; padding:40px 0 40px; position:relative;}
.globalFooter h2{ text-align:center;}
.globalFooter address.copyright {text-align:center; font-size:11px; padding:10px 0;}

/* -----------------------------------------------------------
ページ先頭へ
----------------------------------------------------------- */
a.pageTopButton{position: fixed; z-index:50; display:block; bottom:50px; right:50px; width:50px; height:50px; opacity: 0; transition:opacity 0.4s; pointer-events: none;}
a.pageTopButton.active{opacity:1; pointer-events: inherit;}
a.pageTopButton.active:hover{ opacity:0.8;}
/*スマホ*/
@media(max-width:900px){
a.pageTopButton{bottom: 30px; right:30px; width:30px; height:30px;}
}

/* -----------------------------------------------------------
ラッパー
----------------------------------------------------------- */
.wrapper{ position:relative; z-index:10;}
.wrapper img{max-width:100%;}

/* -----------------------------------------------------------
コンテナー
----------------------------------------------------------- */
.container{}
.container>section,.container>article
{ width:1000px; margin:0 auto 0; padding:60px 0;}

/*-------------------------------------------------
区切り線
-------------------------------------------------*/
hr{ height:1px; overflow:hidden; padding:0; margin:30px 0; background:url(../img/hr.png) repeat;}
hr.anc{padding-top: 50px !important;margin-top: -50px !important; overflow:hidden; height:0px; padding:0; margin:0; background:none;}
hr.space{}

/* -----------------------------------------------------------
見出し
----------------------------------------------------------- */
.wrapper h2{ line-height:1.2; font-size:40px; margin:0 0 1em; padding:0; position:relative;}
.wrapper h1+h2{ margin-top:1em;}

.wrapper h2.headline{ text-align:center; background:url(../img/h2Hl.png) center bottom; color:#fff; font-size:46px; font-weight:bold; padding:40px 0 55px; margin:0 0 10px;}
	body.blue .wrapper h2.headline{background-image:url(../img/h2Hlb.png);}
.wrapper h2.headline.green{background-image:url(../img/h2Hlg.png) !important;}
.wrapper h2.headline+section{ padding-top:0;}

.wrapper h2 span.small{ font-size:66%; letter-spacing:0px; opacity:0.8; padding-left:1em; display:inline-block;}
.wrapper h2 span.right{ font-size:15px; position:absolute; top:10px; right:10px; text-align:right;}
.wrapper h2 span.right .button{ font-size:11px; padding:0.2em 1.2em; letter-spacing:0px;}

.wrapper h3{ line-height:1.2; font-size:32px; border-left:6px solid #BD0E0A; padding:0 0 0 15px; margin:0 0 0.6em;overflow:hidden; font-weight:bold;}
	body.blue .wrapper h3{ border-left-color:#3871AE;}
.wrapper h2+h3{ margin-top:1em;}
.wrapper h3.no-border{ border:none; padding-left:0;}
.wrapper h3 span.num{ background:#BD0E0A; color:#fff; text-align:center; width:32px; height:32px; line-height:32px; font-size:18px; border-radius:99px; display:inline-block; margin:0 10px 0 0; vertical-align:top;}
	body.blue .wrapper h3 span.num{ background-color:#054387;}

.wrapper h4{ line-height:1.2; font-size:24px; padding:0 0 0 0; margin:0 0 0.6em; overflow:hidden; font-weight:bold;}
.wrapper h4 span.small{ font-size:66%; letter-spacing:0px; opacity:0.8; padding-left:1em; display:inline-block;}
.wrapper h3+h4{ margin-top:1em;}

.wrapper h5{}

.wrapper h6{}

.wrapper p+h1,.wrapper p+h2,.wrapper p+h3,.wrapper p+h4,.wrapper p+h5,.wrapper p+h6,
.wrapper div+h1,.wrapper div+h2,.wrapper div+h3,.wrapper div+h4,.wrapper div+h5,.wrapper div+h6,
.wrapper ul+h1,.wrapper ul+h2,.wrapper ul+h3,.wrapper ul+h4,.wrapper ul+h5,.wrapper ul+h6,
.wrapper table+h1,.wrapper table+h2,.wrapper table+h3,.wrapper table+h4,.wrapper table+h5,.wrapper table+h6
{ margin-top:2em;}

/* -----------------------------------------------------------
ボタン
----------------------------------------------------------- */
a.button,input.button,div.button a{ display:inline-block; line-height:1.2; background:#A30C07; border:none; background-size:contain; font-weight:bold; color:#fff; padding:0.4em 3em 0.4em; margin:0.5em; box-shadow:0 2px 4px rgba(0,0,0,0.5); border-radius:3px; text-decoration:none; cursor:pointer;}
	body.blue a.button,body.blue input.button,body.blue div.button a{ background-color:#3871AE;}
a.button:hover,input.button:hover,div.button a:hover{opacity:0.8; text-decoration:none;}
.button>img{ margin-right:0.5em; vertical-align:middle;}

.button.green{ background-color:#4E9190 !important;}
.button.black,.button.back{ background-color:#000 !important;}

/*お問い合わせだけ大きく*/
.contact .button{ font-size:20px;}

/* -----------------------------------------------------------
テーブル
----------------------------------------------------------- */
table.border{ border-top:1px solid #ccc; margin:0 0 1.5em; width:100%;}
table.border th{ border-bottom:1px solid #ccc; padding:0.5em; font-weight:bold;}
table.border td{ border-bottom:1px solid #ccc; padding:0.5em;}

table.border#form{ border:5px solid #ddd;}
table.border#form th{ padding:1em; border-right:1px solid #ddd;}
table.border#form td{ padding:1em; background:#f5f5f5;}

/*スタイリングテーブル*/
table.style{ margin:0 auto 1em; width:100%; border:1px solid #ddd; line-height:1.4;}
table.style th{ border:1px solid #ddd; padding:7px; background:#eee; font-weight:bold;}
table.style td{ border:1px solid #ddd; padding:7px;}
table.style td th,table.style td td{ border:none; padding:0; background:none;}

/* -----------------------------------------------------------
リスト
----------------------------------------------------------- */
ul.disc{ margin:0 0 1.5em; padding:0 0 0 1.5em;}
ul.disc li{ list-style:disc outside; line-height:1.4; margin:10px 0;}

/* -----------------------------------------------------------
グリッド
----------------------------------------------------------- */
/*１カラム　グリッド*/
.grid2,.grid3,.grid4,.grid5{ width:1040px;}
.grid2>*,.grid3>*,.grid4>*,.grid5>*{ float:left; margin:0 40px 1em 0; box-sizing:border-box;}
.grid2 img,.grid3 img,.grid4 img,.grid5 img{ margin-bottom:1em;}
.grid2>*{width:480px;}
.grid3>*{width:306px;}
.grid4>*{width:220px;}
.grid5>*{width:168px;}
