@charset "utf-8";


/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/* -------------------------------------------------------------- */

body{
color:#333;
font:15px verdana,"ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
line-height:1.5;
background:#f5deb3;
-webkit-text-size-adjust: none;
}

html{background:#70262b;}


/* リンク設定
------------------------------------------------------------*/
a{color:#70262b;text-decoration:none;}
a:hover{color:#4e0210;}
a:active, a:focus{outline:0;}


/* 全体
------------------------------------------------------------*/
#wrapper{
margin:20px auto;
padding:0 1%;
width:98%;
position:relative;
}

.inner{
margin:0 auto;
width:100%;
}


/*************
/* ヘッダー
*************/
h1{
font-size:12px;
line-height:1.6;
font-weight:normal;
color:#daa520;
}

#header{
overflow:hidden;
padding:5px 0 0;
color:#daa520;
background:#4e0210;
}

* html #header{height:1%;}


/*************
/* ロゴ
*************/
#header .logo{
float:left;
padding:20px 0;
}

.logo a{
font-size:20px;
font-weight:bold;
line-height:1;
color:#daa520;
font-family:"Lucida Calligraphy","Palatino Linotype", "Book Antiqua", Palatino,"ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho",serif;
}

.logo span{
font-size:12px;
font-weight:normal;
}

.info{
float:right;
padding:20px 0;
}

.tel strong{
font-size:20px;
font-weight:bold;
}

.resizeimage img { width: 75%; }

/**************************







/* トップナビゲーション全体 */
ul#topnav {
    clear: both;
    overflow: hidden;
    margin: 0 auto; /* 中央揃え */
    padding: 0;
    background: #70262b;
    border-radius: 5px 5px 0 0;
    display: flex; /* 横並び */
    justify-content: space-evenly; /* 均等配置に変更 */
    box-sizing: border-box;
    flex-wrap: wrap; /* 折り返しを許可 */
    width: 100%; /* 幅100% */
    max-width: 940px; /* 最大幅を940pxに制限 */
}

/* メニュー項目 */
ul#topnav li {
    list-style: none;
    text-align: center;
    height: 50px; /* メニューの高さ */
    display: flex;
    align-items: center; /* 縦方向中央揃え */
    justify-content: center; /* 横方向中央揃え */
    border-left: 1px solid #4e0210; /* 左側の枠線 */
    border-top: 1px solid #4e0210;  /* 上の枠線 */
    border-bottom: 1px solid #4e0210; /* 下の枠線 */
    box-sizing: border-box; /* 幅と高さの計算をボックス全体に含める */
    width: 18%; /* 幅を広げて5項目が横並び */
    min-width: 160px; /* 最小幅 */
    max-width: unset; /* 最大幅を解除 */
    flex-grow: 1; /* 項目を均等に広げる */
}

/* 最初の項目（左側の枠線を消去） */
ul#topnav li:first-child {
    border-left: none;
}

/* 最後の項目（右側の枠線を追加） */
ul#topnav li:last-child {
    border-right: 1px solid #4e0210; /* 右枠線 */
}

/* メニューリンク */
ul#topnav a {
    display: block;
    padding: 10px 0;  /* 上下のパディング */
    color: #daa520;
    text-align: center;
    line-height: 1.5;
    text-decoration: none;
    box-sizing: border-box;
}

/* ホバー時のリンクカラー */
ul#topnav li.active a, ul#topnav a:hover {
    color: #ccc;
    background-color: #4e0210; /* ホバー時の背景色 */
}






/* メディアクエリ：960px以下の画面（iPadなど） */

/* iPad 縦画面対応 */
@media only screen and (max-width: 768px) {
    ul#topnav {
        display: flex;               /* 横並び */
        flex-wrap: wrap;             /* 折り返しを許可 */
        margin: 0;                   /* 左右の余白をゼロに */
        padding: 0;                  /* パディングもゼロに */
        width: 100%;                 /* 幅は100% */
        box-sizing: border-box;
    }

    /* メニューアイテムの設定 */
    ul#topnav li {
        flex: 1 1 33%;               /* 各アイテムが 1/3 の幅で均等に並ぶ */
        box-sizing: border-box;
        text-align: center;
        height: 50px;                /* アイテムの高さ */
        display: flex;
        align-items: center;         /* 縦方向中央揃え */
        justify-content: center;     /* 横方向中央揃え */
        border-bottom: 1px solid #4e0210; /* 下枠線 */
        border-right: 1px solid #4e0210;  /* 右枠線 */
    }

    /* 最初のアイテム（左側の枠線を消去） */
    ul#topnav li:first-child {
        border-left: none;
    }

    /* 4番目のアイテムが広くなる問題の修正 */
    ul#topnav li:nth-child(4) {
        flex: 1 1 33%; /* 幅を他のアイテムと同じに設定 */
    }

    /* 最後のアイテム（右側の枠線を削除） */
    ul#topnav li:last-child {
        border-right: none;
    }

    /* メニューリンク */
    ul#topnav a {
        display: block;
        padding: 10px 0;
        color: #daa520;
        text-align: center;
        line-height: 1.5;
        text-decoration: none;
        box-sizing: border-box;
    }

    /* ホバー時のリンクカラー */
    ul#topnav li.active a, ul#topnav a:hover {
        color: #ccc;
        background-color: #4e0210; /* ホバー時の背景色 */
    }
}






/* メディアクエリ：480px以下の画面（スマートフォン） */
@media only screen and (max-width: 480px) {
    ul#topnav {
        display: flex; /* 横並び */
        flex-wrap: wrap; /* 折り返しを許可 */
        justify-content: space-between;
    }

    ul#topnav li {
        width: 33%; /* 3列に分ける（1列は33%の幅） */
        border-bottom: 1px solid #4e0210; /* 各項目間に枠線を追加 */
    }

    ul#topnav li:nth-child(3n) {
        border-right: 1px solid #4e0210; /* 3番目、6番目、9番目の項目に枠線 */
    }

    ul#topnav li:first-child {
        border-left: none; /* 最初の項目の左枠線を削除 */
    }

    ul#topnav li:last-child {
        border-right: 1px solid #4e0210; /* 最後の項目の右枠線を追加 */
    }
}








/**************************
/* メイン画像（トップページ+サブページ）
**************************/
#mainBanner{
clear:both;
line-height:0;
background:#4e0210;
}

#mainBanner .inner{position:relative;}

#mainBanner img{
max-width:100%;
height:auto;
}

.slogan{
position:absolute;
max-width:100%;
height:auto;
bottom:10px;
left:10px;
padding:5px 10px;
line-height:1.4;
z-index:100;
background:url(images/tp2.png);
}

.subImg .slogan{
left:auto;
right:10px;
}

.slogan h2{
padding-bottom:5px;
color:#daa520;
font-size:20px;
}

.slogan h3{
font-size:14px;
color:#ccc;
}



/**************************
/* グリッド
**************************/
.gridWrapper{
clear:both;
padding:20px 0;
overflow:hidden;
}

* html .gridWrapper{height:1%;}
 
.grid{
float:left;
}

.colDark,.colLight{
padding-bottom:10px;
color:#daa520;
background:#4e0210;
}

.colLight{
background:#70262b;
}

.colDark h3,.colLight h3{
margin:10px 10px 5px;
font-size:14px;
border-bottom:1px solid #daa520;
}

.colDark a,.colLight a{
display:block;
color:#ccc;
}

.colDark a:hover,.colLight a:hover{
color:#daa520;
}

.grid p{
padding:5px 10px;
}

.grid ul{margin:5px 10px;}

.grid li{
padding:5px 0;
list-style:inside;
border-bottom:1px dashed #ebebeb;
}

.gridWrapper img{
max-width:100%;
height:auto;
}

/* フッター内のグリッド(3カラム) */
#footer .grid{
color:#daa520;
background:transparent;
}

#footer .col3 ul{margin:0 0 10px 5px;}

#footer .col3 li{
padding:0 7px 0 5px;
margin-bottom:3px;
list-style:none;
border-bottom:0;
display:inline-block;
border-right:1px solid #daa520;
}




/*************
メイン コンテンツ
*************/
section.content{
margin-bottom:20px;
font-size:14px;
overflow:hidden;
}

* html section.content{height:1%;}

section.content p{margin-bottom:5px;}

h3.heading,#sub .grid h3{
padding:5px 10px;
margin-bottom:10px;
font-size:16px;
color:#daa520;
background:#70262b;
border-left:7px solid #4e0210;  
border-right:7px solid #4e0210; 
}
#sub .grid h3{margin-right:10px;}

.alignleft{
float:left;
clear:left;
margin:3px 10px 10px 1px;
}

.alignright{
float:right;
clear:right;
margin:3px 1px 10px 10px;
}

img.frame,#gallery img{
border:6px solid #daa520;
box-shadow:0 0 2px rgba(0, 0, 0, 0.5);
-webkit-box-shadow:0 0 2px rgba(0, 0, 0, 0.5);
}

#gallery .gridWrapper{padding:0;}

#gallery img{
margin:5px;
}

section#gallery{overflow:visible;}


/*************
テーブル
*************/
table.table{
border-collapse:collapse;
width:100%;
margin:10px auto;
}

table.table th,table.table td{
padding:5px;
border:1px solid #4e0210;
}

table.table tr:first-child th,table.table tr:first-child td{
border-top:#4e0210 4px solid
}

table.table th{
font-weight:bold;
letter-spacing:1px;
white-space:nowrap;
color:#daa520;
background:#70262b;
}


/*************
/* フッター
*************/
#footer{
clear:both;
padding:20px 0;
overflow:hidden;
background:#70262b;
border-top:1px solid #4e0210;
}

* html #footer{height:1%;}

#footer a{color:#daa520;}
#footer a:hover{color:#4e0210;}

#footer .copyright{font-size:11px;}


/* PC用 */
@media only screen and (min-width:960px){
 #wrapper,.inner,ul#topnav{
 width:940px;
 padding:0;
 }
 
 #wrapper{padding-bottom:20px;}
 
 #main{
 float:right;
 width:690px;
 }
 
 #subpage #sub{
 float:left;
 width:235px;
 overflow:hidden;
 }
 
 /* グリッド */
 .grid{width:235px;}
 .col2{width:470px;}
 .col3{width:705px;}
 #gallery .grid{width:230px;}
 #subpage #sub .grid{
 width:100%;
 float:none;
 padding-bottom:30px;
 }
 
}


/* モニター幅960px以下 */
@media only screen and (max-width:960px){
 h1 p.inner{padding:0 2%;width:96%}
 #header .logo{padding-left:10px;}
 #header .info{padding-right:10px;}
 
 ul#topnav{
 clear:both;
 width:100%;
 }

 ul#topnav li{
 width:33%;
 border-right:1px solid #4e0210;
 border-bottom:1px solid #4e0210;
 box-sizing:border-box;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
 }

 ul#topnav li:nth-child(3n){border-right:0;width:34%;}

 ul#topnav li a{
 width:100%;
 border:0;
 }

 ul#topnav li:first-child a,ul#topnav li:last-child a{width:100%;}
 
 .grid{
 width:50%;
 margin:2px 0;
 }
 
 .col2{
 float:none;
 width:100%;
 margin:0 0 20px;
 }
 
 .grid img{
 float:left;
 margin-right:5px;
 }
 
 #gallery .grid{
 width:31%;
 margin:0 1%;
 padding:0;
 }
 
 #gallery .grid img{
 float:none;
 }
 
 section.content{padding:0 10px;}
 
 section.content img{
  max-width:90%;
 height:auto;
 }
 
 #sub .grid{padding-bottom:20px;}
 
 #footer{padding:0;}
 
 #footer .grid{
 float:none;
 width:100%;
 margin-bottom:5px;
 text-align:center;
 }
}


/* スマートフォン 横(ランドスケープ) */
@media only screen and (max-width:640px){
 .grid{width:100%;}
 
 .grid img{
 float:none;
 margin:20px auto 10px;
 }
 
 .grid p{text-align:left;}
 
 img.frame,#gallery img{border-width:2px;}

  .alignleft,.alignright{
 float:none;
 display:block;
 margin:0 auto 10px;
 }
 
 #footer .grid p{text-align:center;}
}


/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width:480px){
 #header .logo{padding-top:10px;}
  .info{padding:10px 0 0;}
 ul#topnav li{width:50%;}

 ul#topnav li:nth-child(3n){
 border-right:1px solid #4e0210;
 width:50%;
 } 
 ul#topnav li:nth-child(2n),ul#topnav li:nth-child(6n){border-right:0;}
 
 #mainBanner h2,#mainBanner h3{font-size:80%;}
}