@charset "UTF-8";


/*--------------------------------------------------------------------
初期設定
--------------------------------------------------------------------*/


/* =============== 標準化 */

/* ------ framework */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, img, ins, kbd, q, samp, var, i, dl, dt, dd, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary,time, mark, audio, video
{margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; font-style:normal;}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {display:block;}
audio, canvas, video {display:inline-block;}
html {overflow-y:scroll;}
body {-webkit-text-size-adjust:100%;}

/* ------ block elements */
ul {margin:0; padding:0; list-style-type:none;}
ol {margin:0; padding:0 0 0 2em;}
p {margin:0 0 .6em;}

/* ------ inline elements */
a {outline:none; background:transparent;}
a:focus, a:active, a:hover {outline:none;}
small {font-size:80%;}
sub, sup {font-size:75%; line-height:0; position:relative; vertical-align:baseline;}
sup {top:-.5em;}
sub {bottom:-.25em;}

/* ------ form */
button, input, select, textarea {font-family:inherit; font-size:100%; margin:0;}
button, input {line-height:normal;}
button, select {text-transform:none;}
button, html input[type="button"], input[type="reset"], input[type="submit"] {-webkit-appearance:button; cursor:pointer;}
button[disabled], html input[disabled] {cursor:default;}
input[type="checkbox"], input[type="radio"] {box-sizing:border-box; padding:0;}
input[type="search"] {-webkit-appearance:textfield; -moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box;}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {-webkit-appearance:none;}
button::-moz-focus-inner, input::-moz-focus-inner {border:0; padding:0;}
textarea {overflow:auto; vertical-align:top;}

/* ------ table */
table {border-collapse:collapse; border-spacing:0;}
caption {text-align:left;}

/* ------ img */
img {border:0; vertical-align:bottom;}
.ie7 img {-ms-interpolation-mode:bicubic;}

/* ------ box-sizing 
* {-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;} */



/* =============== 共通利用 */

/* ------ 配置 */
a:hover img {filter:alpha(opacity=80); opacity:.80;}
.clear {clear:both;}
.clearfix {zoom:1;}
.clearfix:after {content:""; display:block; clear:both;}
.center{text-align:center!important;}
.blkC {display:block; margin-left:auto!important; margin-right:auto!important;}
.textR {text-align:right!important;}
.textL {text-align:left!important;}
.floatR {float:right; margin:0 0 10px 15px;}
.floatL {float:left; margin:0 15px 10px 0;}
.inBlk, .IB {display:inline-block;}
.tate90 {display:inline-block; -webkit-transform:rotate(90deg); -ms-transform:rotate(90deg); transform:rotate(90deg); transform-origin:50% 50%;}
.tate1 {display:inline-block; width:1em; text-align:center;}
.tight {letter-spacing:-.02em;}

/* ------ テキスト装飾 */
a {color:#000;}
.note {font-size:85%; line-height:1.5; color:#555;}
.bold {font-weight:bold;}
.it {font-style:italic;}
.lg1 {font-size:108%;}
.lg2 {font-size:116%;}
.lg3 {font-size:123.1%;}
.sml1 {font-size:93%;}
.sml2 {font-size:85%;}
.sml3 {font-size:77%;}
.red {color:#e36;}
.underline {text-decoration:underline}
.nowrap {white-space:nowrap;}
.min {font-family:"游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-weight:700;}
blockquote {border-left:5px #ccc solid; border-left-color:rgba(0,30,60,.1); padding-left:12px;}

/* ------ スペース */
.top03 {margin-top:.3em!important;}
.top06 {margin-top:.6em!important;}
.top1 {margin-top:1em!important;}
.top15 {margin-top:1.5em!important;}
.top2 {margin-top:2em!important;}
.top10 {margin-top:10px!important;}
.top20 {margin-top:20px!important;}
.top25 {margin-top:25px!important;}
.top30 {margin-top:30px!important;}
.top35 {margin-top:35px!important;}
.top40 {margin-top:40px!important;}
.top50 {margin-top:50px!important;}
.top60 {margin-top:60px!important;}
.top70 {margin-top:70px!important;}
.top80 {margin-top:80px!important;}
.btm03 {margin-bottom:.3em!important;}
.btm06 {margin-bottom:.6em!important;}
.btm1 {margin-bottom:1em!important;}
.btm15 {margin-bottom:1.5em!important;}
.btm2 {margin-bottom:2em!important;}
.btm10 {margin-bottom:10px!important;}
.btm20 {margin-bottom:20px!important;}
.btm25 {margin-bottom:25px!important;}
.btm30 {margin-bottom:30px!important;}
.btm35 {margin-bottom:35px!important;}
.btm40 {margin-bottom:40px!important;}
.btm50 {margin-bottom:50px!important;}
.btm60 {margin-bottom:60px!important;}
.btm70 {margin-bottom:70px!important;}
.btm80 {margin-bottom:80px!important;}
.v03 {margin-top:.3em!important; margin-bottom:.3em!important;}
.v06 {margin-top:.6em!important; margin-bottom:.6em!important;}
.v1 {margin-top:1em!important; margin-bottom:1em!important;}
.v15 {margin-top:1.5em!important; margin-bottom:1.5em!important;}
.v2 {margin-top:2em!important; margin-bottom:2em!important;}
.v10 {margin-top:10px!important; margin-bottom:10px!important;}
.v20 {margin-top:20px!important; margin-bottom:20px!important;}
.v25 {margin-top:25px!important; margin-bottom:25px!important;}
.v30 {margin-top:30px!important; margin-bottom:30px!important;}
.v35 {margin-top:35px!important; margin-bottom:35px!important;}
.v40 {margin-top:40px!important; margin-bottom:40px!important;}
.v50 {margin-top:50px!important; margin-bottom:50px!important;}
.v60 {margin-top:60px!important; margin-bottom:60px!important;}
.v70 {margin-top:70px!important; margin-bottom:70px!important;}
.v80 {margin-top:80px!important; margin-bottom:80px!important;}
.first,
.top0 {margin-top:0!important;}
.btm0 {margin-bottom:0!important;}


/* ///// スマホ対応 ///// */ 
@media screen and (min-width:601px) {
  .sp,
  .sp.IB {display:none;}
}

@media screen and (max-width:600px) {
  img {max-width:100%; height:auto;}
  .pc {display:none;}
  .sp {display:block;}
  .sp.IB {display:inline-block;}
  .sp.IL {display:inline;}
  div.sp, p.sp {display:block;}
  img.sp, br.sp {display:inline-block;}
  span.sp {display:inline;}
}



/*--------------------------------------------------------------------
基本レイアウト
--------------------------------------------------------------------*/


/* =============== 全体 */

body {background:#EBEBE9; font:14px/1.5 'Lucida Grande','游ゴシック体','Yu Gothic',YuGothic,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif; *font-size:small; *font:x-small;}
.content {width:950px; margin:0 auto; zoom:1; position:relative;}
.content:after {content:""; display:block; clear:both;}


/* =============== ヘッダ */

header {position:relative; z-index:10001; background:#49524B url(../../images/marble.jpg) no-repeat 50% 50%; background-size:cover; overflow:hidden;}
header .content {padding:100px 0 50px; color:#fff;}
header h1 {position:relative; z-index:10; font-size:32px; text-shadow:2px 2px 4px rgba(0,0,0,.8);}
header h1 b {display:block; color:#F8D350; font-size:40px;}
header img {position:absolute; right:-50px; top:10px; width:300px; opacity:.5;}
header a {text-decoration:none;}
#spNav {display:none;}
header nav {background:#A1C9B4;}
header nav ul {position:relative; z-index:1; width:980px; margin:0 auto; padding:30px 12px; overflow:hidden; box-sizing:border-box;}
header nav li {width:472px; float:left; margin:3px; font-size:18px; font-weight:bold;}
header nav a {position:relative; display:block; padding:10px 15px; border-left:4px #465 solid; background:rgba(255,255,255,.8);}
header nav a:after {content:""; display:block; position:absolute; right:20px; top:50%; width:8px; height:8px; margin-top:-5px; border:#465 solid; border-width:2px 2px 0 0; transform:rotate(135deg);}

/* =============== メイン */

#main {overflow:hidden; width:100%; padding:60px 0 0; font-size:16px; line-height:1.67;}
#main section + section {margin-top:80px;}
.top {position:fixed; bottom:-25px; right:20px; width:40px; height:60px; background:rgba(0,0,0,.8); white-space:nowrap; text-indent:100%; cursor:pointer;}
.top:before {content:""; display:block; position:absolute; left:50%; top:25%; width:14px; height:14px; margin:-5px 0 0 -9px; border:#fff solid; border-width:4px 4px 0 0; transform:rotate(-45deg);}
.top:after {content:""; display:block; position:absolute; left:50%; top:25%; height:16px; margin:-4px 0 0 -2px; border-left:4px #fff solid;}

/* =============== フッタ */

footer {background:#A1C9B4;}
footer .content {padding-bottom:10px;}
footer a {text-decoration:none;}
footer .content > p:last-child {margin-bottom:0; text-align:center; font-size:12px;}

/* =============== カスタム要素 */

h2, .h2 {position:relative; margin:3em 0 1em; padding:4px 0; background:#006A95; font-size:161.6%; font-weight:bold; color:#fff;}
h2:before, .h2:before {content:""; display:block; position:absolute; left:-100vw; top:0; width:100vw; height:100%; background:#006A95;}
h2:after, .h2:after {content:""; display:block; position:absolute; right:-100vw; top:0; width:100vw; height:100%; background:#006A95;}
h3, .h3 {position:relative; margin:2em 0 .75em; padding:.2em .3em; border:#006A95 solid; border-width:1px 0; font-size:131%; font-weight:bold; color:#006A95;}
h4, .h4 {margin:1em 0 .2em; padding:0 0 0 16px; border:0; font-size:108%; font-weight:bold; color:#111;}
h4:before, .h4:before {content:""; display:inline-block; width:10px; height:10px; background:#333; margin:0 6px 0 -16px;}
h2:first-child, .h2:first-child, 
h3:first-child, .h3:first-child, 
h4:first-child, .h4:first-child, 
h5:first-child, .h5:first-child, 
h6:first-child, .h6:first-child {margin-top:0;}


/* ///// スマホ対応 ///// */ 
@media screen and (min-width:601px) {
  header, #main, footer {min-width:980px;}
  header nav {display:block!important;}
}
@media screen and (max-width:600px) {
  #dim {width:100%; height:100%; position:fixed; top:0; left:0; z-index:10; background:rgba(0,0,0,.4); display:none; z-index:9000;}
  .content {width:auto; margin:0 12px;}
  header .content {margin:0; padding:60px 0 30px;}
  header h1 {float:none; margin:0 12px; font-size:20px;}
  header h1 b {font-size:28px; line-height:1.33;}
  header h1 b span {display:inline-block;}
  header .content img {width:40vw; right:-10px;}
  header nav ul {width:auto;}
  header nav li {float:none; width:auto; margin:3px 0; font-size:15px;}
  #main {font-size:14.5px;}
  h2, .h2 {font-size:138.5%;}
  h3, .h3 {font-size:123.1%;}
}




/*--------------------------------------------------------------------
ページ個別
--------------------------------------------------------------------*/

.greeting {margin-bottom:40px; padding:30px; background:#fff;}
.greeting h2 {background:none; color:#111;}
.greeting h2:before, .greeting h2:after {display:none;}

.extra {font-size:146.5%;}

.inq {padding:30px 0 50px; background:#A1C9B4;}
.inq h2 {background:none;}
.inq h2:before,
.inq h2:after {display:none;}

.txtBtn {display:inline-block; padding:.3em 2em; background:#4b4; color:#fff; text-decoration:none; font-weight:bold; box-shadow:0 -3px 0 rgba(0,0,0,.2) inset;}

ul.disc {padding-left:1.5em; list-style-type:disc;}

@media screen and (max-width:600px) {
  .greeting {padding:20px;}
}