@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Tienne:wght@400;700&display=swap');

html,
button,
input,
select,
textarea {
color: #222;
}
body {
font-size: 1em;
line-height: 1.4;
}
::-moz-selection {
background: #f2c2c9;
color: #a4003a;
text-shadow: none;
}
::selection {
background: #16a085;
color: #a4003a;
text-shadow: none;
}
hr {
display: block;
height: 1px;
border: 0;
border-top: 1px solid #ccc;
margin: 1em 0;
padding: 0;
}
img {
vertical-align: middle;
}
textarea {
resize: vertical;
}

/* 2024年追加 */
.mt-8{
margin-top: 8px;
}
.inst-icon{
display: block;
background:#fcf7ef;
width:34px;
height:34px;
border-radius: 7px;
padding:6px;
margin-left:10px;
}
.insta-waku{
background:#faf1e1;
font-family: 'Tienne', serif;
max-width:340px;
width:90%;
margin:0 auto;
height:50px;
line-height:50px;
margin:30px auto;
border-radius: 6px;
}
.insta-waku a{
color:#5e433a;
}
.insta-waku .bi-instagram{
margin-right:5px;
}
.a-d-flex{
display:flex;
align-items: center;
justify-content: center;
}
@media (max-width:767.98px) {
.d-sm-flex{
display:flex;
align-items: center;
padding-top:6px;
}
}
@media (min-width:768px) {
.d-sm-flex{
display:none;
}
}

/* General styles */
html,
body {
height: 100%;
background-color: #fef9f0;
font-family:Helvetica, Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
}
body {
font-weight: 300;
font-size: 16px;
color: #555;
-webkit-font-smoothing: antialiased;
-webkit-overflow-scrolling: touch;
}

@media (max-width: 767px) {
.container {
padding-right:5px;
padding-left:5px;
}
#style .container {
padding-right:15px;
padding-left:15px;
}
}

.col-md-4 {
padding-bottom: 20px;
}
.row {
margin-right: 0px;
margin-left: 0px;
}
.modal-header {
background: #3498db;
}
.modal-header h4 {
color: white;
}
.modal-footer {
background: #2b2b2b;
}
a.btn{
margin-top:10px;
background-color: #d1b26c;
color: #513d0b;
font-weight:bold;
padding-top:3px;
padding-bottom:3px;
box-shadow: 0px 2px 0px 0px rgba(124, 94, 64, 0.9);
}
a.btn span{
font-size:14px;
position:relative;
top:4px;
margin-left:3px;
}
.btn:hover,
.btn:focus,
.btn:active,
.btn.active{
color: #513d0b;
background-color: #c6a667;
box-shadow: 0px 1px 0px 0px rgba(124, 94, 64, 0.9);
}
a.btn i{
font-style:normal;
position:relative;
top:2px;
margin-left:3px;
}
.no-pd{
padding:0px;
}
.text-white{
color:#faf1e1;
}

/* navbar */
@media (max-width: 1200px) {
.navbar .web {
display:none;
}
.navbar-text{
font-size:0px;
}
}

@media (max-width: 992px) {
.navbar .container {
width: 100%;
}
}

#links{
padding-top:40px;
padding-bottom:40px;
}
.navbar-header{
padding-top:5px;
padding-bottom:5px;
margin-right:15px;
}
.navbar{
background:url(../img/th-back.png);
box-shadow: inset 0 -10px 15px rgba(74, 51, 2, 0.6);
border:0px;
}
.navbar-toggle{
background:transparent;
padding:0px;
margin-top:0px;
margin-bottom:0px;
margin-right:25px;
}
.navbar-header strong{
color:#fff;
font-size:10px;
text-align:center;
}
.navbar-header .tel-left{
margin-left:25px;
color:#fff;
font-size:19px;
font-family: 'Tienne', serif;
text-shadow:0px 1px 1px #000;
}
.navbar-header .tel-left span{
font-size:16px;
}
.navbar-toggle .icon-bar {
width: 29px;
height: 3px;
border-radius: 3px;
background-color:#fff;
margin:5px auto 0px;
}
.navbar p.navbar-text{
font-family: 'Tienne', serif;
font-size:25px;
letter-spacing:1px;
color:#faf1e1;
text-shadow:0px 0px 1px #000;
font-weight:bold;
padding-right:15px;
}
.navbar p.navbar-text a{
font-size:15px;
text-shadow:0px 0px 0px #000;
}
.navbar p span{
font-size:20px;
position:relative;
top:3px;
}
.nav > li > a {
font-family: 'Tienne', serif;
font-weight:700;
font-size:17px;
color:#faf1e1;
text-shadow:0px 1px 1px #000;
padding-top:20px;
padding-bottom:20px;
}
.nav > li > a:hover,
.nav > li > a:focus {
text-decoration: none;
background-color: rgba(40, 33, 22, 0.7);
}
.navbar-default .navbar-nav > li{
font-family: 'Tienne', serif;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
background-color: #16a085;
}

@media screen and (min-width:768px) {
.nav > li > a > span{
display:none;
}
.web-button{
float:right;
}
}

@media (max-width: 992px) {
.navbar p.navbar-text{
font-size:19px;
letter-spacing:0px;
}
.navbar p span{
font-size:14px;
}
.nav > li > a {
font-size:15px;
padding-right:10px;
padding-left:10px;
}
.navbar a.btn{
padding-right:5px;
padding-left:5px;
}
}

@media screen and (max-width:767px) {
.nav > li{
background:rgba(0,0,0,0.4);
margin:5px 0px;
border-radius:3px;
}
.nav > li > a {
padding-top:7px;
padding-bottom:7px;
text-align:center;
}
.web-button{
text-align:center;
}
.navbar .web {
display:inline;
}
.navbar-collapse .nav{
margin:5px 3px 0px;
}
.nav > li > a > span{
margin-left:20px;
font-family:Helvetica, Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
font-size:13px;
}
.navbar-collapse a.btn{
margin-top:2px;
margin-bottom:10px;
color: #513d0b;
padding-top:2px;
padding-bottom:2px;
box-shadow: 0px 0px 0px 0px rgba(124, 94, 64, 0.9);
}
}

hr{
position: relative;
border: none;
}
hr:before {
content: " ";
position: absolute;
top: 0;
left: 25%;
width: 50%;
height: 2px;
background: #ccc;
}
.odd a img {
background: #f5f5f5;
}
#wrapper {
position: relative;
}

/* Titles */
h1{
position:absolute;
bottom:33px;
width:100%;
text-align:center;
font-size:12px;
color:#fff;
}
h2, h3, h4, h5, h6 {
font-family: 'Tienne', serif;
font-weight: 700;
color: #333;
}
h2{
color: #463819;
font-size:34px;
margin-bottom:40px;
text-align:center;
}
h2::after{
content:url(../img/border.png);
margin-left:20px;
position:relative;
bottom:8px;
}
h2::before{
content:url(../img/border.png);
margin-right:20px;
position:relative;
bottom:8px;
}
h3{
font-size:20px;
color: #203c35;
font-family:Helvetica, Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
}

@media screen and (max-width:767px) {
h2{
color: #463819;
font-size:24px;
margin-bottom:40px;
text-align:center;
}
h2::after{
content:url(../img/s-border.png);
margin-left:10px;
}
h2::before{
content:url(../img/s-border.png);
margin-right:10px;
}
h3{
font-size:16px;
color: #203c35;
font-family:Helvetica, Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
}
}

/* Paragraph & Typographic */
p{
line-height: 28px;
margin-bottom:0px;
font-size:14px;
color: #282116;
}
.paragraph-lead {
font-size: 20px;
color: #3498db;
}
strong{
font-weight: 700;
}
em{
font-weight: 300;
}
pre{
background: #ebebeb;
border: none;
font-family: "Monaco";
font-size: 16px;
color: #666;
padding: 20px;
line-height: 28px;
}
small {
font-size: 12px;
}
blockquote,
blockquote p {
line-height: 28px;
color: #999;
font-weight: 300;
font-style: italic;
}
blockquote {
position: relative;
margin: 0 0 40px -30px;
padding-left: 30px;
border-left: 5px solid #3498db;
}
blockquote cite {
position: absolute;
bottom: -25px;
right: 0;
font-size: 12px;
font-style: italic;
color: #333;
font-weight: 300;
}
blockquote cite:before {
content: "-- "
}

/* Images */
.overflow-image {
margin-top: -65px;
}

/* Links */
a{
color: #987e55;
word-wrap: break-word;
-webkit-transition: color 0.1s ease-in, background 0.1s ease-in;
-moz-transition: color 0.1s ease-in, background 0.1s ease-in;
-ms-transition: color 0.1s ease-in, background 0.1s ease-in;
-o-transition: color 0.1s ease-in, background 0.1s ease-in;
transition: color 0.1s ease-in, background 0.1s ease-in;
}
a:hover,
a:focus {
color: #c1af8e;
text-decoration: none;
outline: 0;
}
a:before,
a:after {
-webkit-transition: color 0.1s ease-in, background 0.1s ease-in;
-moz-transition: color 0.1s ease-in, background 0.1s ease-in;
-ms-transition: color 0.1s ease-in, background 0.1s ease-in;
-o-transition: color 0.1s ease-in, background 0.1s ease-in;
transition: color 0.1s ease-in, background 0.1s ease-in;
}

/* カルーセル */
header.carousel {
height: 560px;
position:relative;
margin-top: 0px;
}
header.carousel .item,
header.carousel .item.active,
header.carousel .carousel-inner {
height: 100%;
}
.carousel .item {
opacity: 0;
-webkit-transition-property: opacity;
-moz-transition-property: opacity;
-o-transition-property: opacity;
transition-property: opacity;
}
.carousel-inner .active {
opacity: 1;
}
.carousel-inner .active.left,
.carousel-inner .active.right {
left: 0;
opacity: 0;
z-index: 1;
}
.carousel-inner .next.left,
.carousel-inner .prev.right {
opacity: 1;
}
.carousel-control {
z-index: 2;
}
header.carousel .fill {
width: 100%;
height: 100%;
background-position: center;
background-size: cover;
}
header.carousel .fill:after {
position: absolute;
display: block;
content: " ";
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(62, 52, 49, 0.2); /* カラーを重ねる */
}
#box{
position: absolute;
width:100%;
top: 55%; left:50%;
margin:0 auto;
transform: translateY(-50%) translateX(-50%);
-webkit-transform: translateY(-50%) translateX(-50%);
-ms-transform: translateY(-50%) translateX(-50%);
text-align:center;
z-index:4;
}
#top-logo{
position: absolute;
width:100%;
top: 55%; left:50%;
margin:0 auto;
transform: translateY(-50%) translateX(-50%);
-webkit-transform: translateY(-50%) translateX(-50%);
-ms-transform: translateY(-50%) translateX(-50%);
text-align:center;
z-index:3;
}
#top-logo img{
width:350px;
}
#s-copy{
padding:20px 0px;
background-color: #322921;
}
#s-copy p{
color: #d9d4c6;
margin-bottom:0px;
line-height:26px;
font-size:14px;
}
.carousel-indicators li {
display: inline-block;
width: 11px;
height: 11px;
margin: 1px;
text-indent: -999px;
cursor: pointer;
background-color: #000 \9;
background-color: rgba(0, 0, 0, 0);
border: 1px solid #463919;
border-radius: 11px;
}
.carousel-indicators .active {
width: 13px;
height: 13px;
margin: 0;
background-color: #463919;
}

@media screen and (max-width:767px) {
header.carousel {
height: 350px; 
}
#top-logo img{
width:190px;
}
}

/* box */
#top{
background:url(../img/top-back.png);
margin-top: 0px;
padding-top: 35px;
padding-bottom: 35px;
text-align: center;
color:#faf1e1;
}
#top p{
color:#faf1e1;
font-weight:bold;
font-size:18px;
}
#top p i{
font-style:normal;
}

@media (max-width: 992px) {
#top p span{
display:block;
line-height:35px;
}
}

@media (max-width: 767px) {
#top{
padding-top: 20px;
padding-bottom: 10px;
}
#top p{
font-size:15px;
line-height:26px;
}
#top p i{
display:none;
}
}

#blog{
background:url(../img/top-back.png);
padding-top:30px;
padding-bottom:30px;
}
#blog .blog-waku ul{
padding:0px;
}
#blog .blog-waku{
background-color: rgba(252, 249, 242, 0.12);
}
#blog .blog-waku li{
color:#faf1e1;
font-size:13px;
list-style-type:none;
}
#blog .blog-waku li a{
font-weight:bold;
font-size:14px;
padding-top:25px;
line-height:0px;
display:block;
}
#blog .blog-waku{
background-color: rgba(252, 249, 242, 0.12);
padding:5px 30px;
border:1px solid #1f3c35
}
#blog .foot-nav{
margin-top:20px;
text-align:center;
font-family: 'Tienne', serif;
font-weight:700;
}
#blog .foot-nav ul{
background:url(../img/border2.png) repeat-x;
padding-top:20px;
margin-top:20px;
}
#blog .foot-nav ul li a{
padding:0px 20px;
text-shadow:0px 0px 1px #000;
}

@media (max-width:767px) {
#blog{
padding-top:0px;
padding-bottom:0px;
}
#blog .blog-waku{
padding:5px 10px;
margin-right:15px;
margin-left:15px;
}
#blog .foot-nav ul{
background:none;
padding-top:0px;
}
#blog .container {
width:100%;
padding-right:0px;
padding-left:0px;
}
#blog .foot-nav ul li{
background-color: rgba(252, 249, 242, 0.1);
width:50%;
float:left;
border-top:1px solid rgba(0,0,0,0.3);
padding:5px;
}
#blog .foot-nav ul li.border1{
border-right:1px solid rgba(0,0,0,0.3);
}
#blog .foot-nav ul li a{
padding:0px;
}
#blog .foot-nav img{
max-width:250px;
}
}

#staff{
padding-top:60px;
padding-bottom:60px;
}
#staff .s-container{
max-width:900px;
margin:0 auto;
}
#staff h3{
border-bottom:1px dashed #b19b81;
display:inline-block;
line-height:30px;
font-size:18px;
letter-spacing:1px;
margin-top:0px;
}
#staff h3 strong{
font-family: 'Tienne', serif;
font-size:15px;
letter-spacing:0px;
}

@media screen and (max-width:767px) {
#staff{
padding-top:40px;
padding-bottom:40px;
}
#staff h3{
font-size:15px;
letter-spacing:0px;
text-align:center;
display:block;
margin-top:20px;
}
#staff h3 strong{
font-size:13px;
}
#staff p{
font-size:12px;
line-height:22px;
}
}

#about{
background-color: #faf1e1;
padding-top:40px;
padding-bottom:50px;
}
#about h2{
margin-bottom:10px;
}
#about h3{
text-align:center;
margin-top:30px;
}
#about p.about-text{
margin-bottom:35px;
font-size:14px;
}
#about p{
font-size:13px;
text-align:center;
}
#about p span{
display:block;
}
#about p.about-text i{
font-style:normal;
}

@media (max-width: 1200px) {
#about .container {
width: 100%;
}
#about p span{
display:inline;
}
}

@media (max-width:767px) {
#about{
padding-top:20px;
padding-bottom:5px;
}
#about .callout{
margin-bottom:30px;
}
#about p.about-text{
margin-bottom:10px;
}
#about img{
float:left;
max-width:50px;
margin-right:15px;
}
#about h3{
float:left;
position:relative;
bottom:10px;
}
#about p{
clear: both;
text-align:left;
}
#about p.about-text {
text-align:center;
}
#about p.about-text i{
display:block;
}
}

#streight {
background-color: #faf1e1;
padding-top: 40px;
padding-bottom: 40px;
}
#streight table.table{
margin-top:35px;
width:100%;
table-layout: fixed;
}
#streight table td{
width:68%;
border-top:0px;
padding:0px;
}
#streight table th{
width:32%;
border-top:0px;
padding:15px;
}
#streight .before{
text-align:right;
margin:3px 0px;
font-family: 'Tienne', serif;
}
#streight .after-waku{
position:relative
}
#streight .after{
position:absolute;
right:-8px;
bottom:-3px;
font-weight:bold;
font-size:16px;
color:#fef9f0;
text-align:center;
padding-top:14px;
background:url(../img/top-back.png);
width:53px;
height:53px;
border-radius:50%;
display:block;
font-family: 'Tienne', serif;
}

@media screen and (max-width:992px) {
#streight p strong{
display:block;
margin-top:5px;
font-size:14px;
}
#streight table th{
width:32%;
border-top:0px;
padding:0px 5px 0px 0px;
}
}

@media screen and (max-width:767px) {
#streight {
padding-top: 20px;
padding-bottom: 25px;
}
#streight h3{
font-size:16px;
line-height:28px;
}
#streight h3 span{
display:block;
}
#streight p{
font-size:13px;
line-height:23px;
}
#streight p span{
display:block;
}
#staff h3 strong{
font-size:13px;
}
#streight .before{
font-size:13px;
}
#streight .after{
font-size:14px;
width:48px;
height:48px;
}
}

#menu{
padding-top:50px;
padding-bottom:80px;
}
#menu table{
margin-top:50px;
margin-bottom:0px;
max-width:500px;
margin-right:auto;
margin-left:auto;
}
#menu table.normal{
margin-top:10px;
}

#menu table th{
background:url(../img/th-back.png);
color: #faf1e1;
text-shadow:0px 0px 1px #000;
text-align:center;
border-top:0px;
font-family: 'Tienne', serif;
font-size:18px;
box-shadow: inset 0 0 15px rgba(95, 60, 19, 0.8),
inset 0 0 15px rgba(95, 60, 19, 0.8);
padding:6px 0px 5px;
}
#menu table td{
border-top:0px;
padding:12px 5px 0px;
color: #38281b;
font-weight:bold;
font-size:15px;
}
#menu table td.price{
text-align:right;
width:20%;
}
#menu table td.an{
font-weight:normal;
padding:0px 5px 12px;
font-size:14px;
}
#menu table td.no-an{
padding:12px 5px!important;
}
#menu table .border{
border-bottom:1px solid #b19b81;
}

@media screen and (max-width:992px) {
#menu p strong{
display:block;
margin-top:5px;
font-size:14px;
}
}

@media (max-width:767px) {
#menu{
padding-top:40px;
padding-bottom:40px;
}
#menu p{
font-size:13px;
line-height:23px;
}
#menu p span{
display:block;
}
#menu table td{
font-size:14px;
}
#menu table td.an{
font-size:13px;
}
#menu table td.price{
font-size:14px;
width:100%;
display:block;
}
#menu table{
margin-top:40px;
}
#menu table.normal{
margin-top:40px;
}
}

#access{
padding-top:40px;
padding-bottom:70px;
background-color: #faf1e1;
}
#access h3 span{
font-size:15px;
margin-right:8px;
}
#access h3{
margin-top:0px;
margin-bottom:20px;
}
#access p{
letter-spacing:1px;
}
#access .store-info{
margin:15px 0px 5px;
padding:8px 0px;
border-bottom:1px dashed #b19b81;
border-top:1px dashed #b19b81;
}
#access .store-info p{
letter-spacing:0px;
font-size:13px;
}
#access p span{
font-weight:bold;
margin-right:10px;
}
#access .s-container{
max-width:900px;
margin:0 auto;
}
#access p.thin{
letter-spacing:0px;
}
#style .s-container{
max-width:960px;
}
#style #style1 ul li{
list-style:none;
float:left;
width:33%;
margin:7px 0px;
}
#style #style1 ul li img{
width:95%;
margin:0 auto;
}
#style #style1 ul{
overflow:hidden;
margin:0 auto;
padding:0px; 
}

@media (max-width:767px) {
#style #style1 ul li{
width:50%;
margin:7px 0px;
}
#access .store-info{
text-align:left;
}
#access .no-pd{
margin-bottom:20px;
}
}

#links{
padding-top:40px;
padding-bottom:40px;
}
#links a img:hover{
opacity: 0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
}
#links h4{
font-size:27px;
text-align:center;
color:#987e55;
margin-bottom:40px;
}

@media (max-width:992px) {
#access{
text-align:center;
padding-top:20px;
padding-bottom:40px;
}
#access h2{
margin-bottom:20px;
}
#access h3{
margin-top:30px;
margin-bottom:20px;
}
#links .col-md-2{
height:80px;
}
}

@media (max-width:767px) {
#links{
padding-top:20px;
padding-bottom:20px;
}
#links .col-md-2{
height:55px;
}
#links img{
max-width:100px;
}
#links h4{
font-size:22px;
}
}

#blog .s-container{
max-width:800px;
margin:0 auto;
}
#footerwrap {
background-color: #282116;
padding-top: 40px;
padding-bottom: 10px;
}
#footerwrap p{
text-align: center;
font-weight:bold;
font-size:14px;
color:#fef9f0;
margin-bottom:0px;
}
#footerwrap h4 {
color: white;
}

/* Section Dividers */
.section-divider {
z-index: 999;
width: 100%;
display: table;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
padding-top: 60px;
padding-bottom: 50px;
background-position: center center;
-webkit-background-size: 100%;
-moz-background-size: 100%;
-o-background-size: 100%;
background-size: 100%;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
background-attachment: relative;
text-align: center;
}
.section-divider h2{
color:#faf1e1;
}
.section-divider h2::after{
content:url(../img/border2.png);
margin-left:20px;
position:relative;
bottom:8px;
}
.section-divider h2::before{
content:url(../img/border2.png);
margin-left:20px;
position:relative;
bottom:8px;
}

@media screen and (max-width:767px) {
.section-divider h2::after{
content:url(../img/s-border2.png);
margin-left:10px;
}
.section-divider h2::before{
content:url(../img/s-border2.png);
margin-left:10px;
}
}

.textdivider h1 {
padding-top: 70px;
color: white;
font-size: 40px;
}
.textdivider p {
color: white;
font-size: 25px;
}

/* Section Dividers Backgrounds */
.divider1 {
background-image: url('../img/divider1.jpg')
}
.divider2 {
background-image: url('../img/divider2.jpg')
}
.divider2 .s-container{
max-width:900px;
margin:0 auto;
}
.divider3 {
background-image: url('../img/bg/divider3.jpg');
margin-top: 0px;
}
.divider4 {
background-image: url('../img/bg/divider4.jpg')
}
.divider6 {
background-image: url('../img/bg/divider6.jpg')
}

@media (max-width:767px) {
.divider1 {
padding-top: 25px;
padding-bottom: 5px;
}
.divider2 {
padding-top: 30px;
padding-bottom: 30px;
}
#style #style1{
max-width:600px;
margin:0 auto;
}
}

.trans-img{
position:absolute;
top:0px;
}


/* Services Section */
.service-trigger {
display: block;
position: relative;
margin-bottom: 15px;
color: white;
font-size: 20px;
text-align: center;
height: 168px;
cursor: pointer;
padding: 90px 20px 50px 20px;
border: none;
background: #333;
}
.service-trigger:before {
width: 100%;
top: 50px;
color: #3498db;
font-size: 36px;
text-align: center;
position: absolute;
left: 0;
}
.service-active .service-trigger {
background: #222;
}
.service-active p {
font-family: 'Lato', sans-serif;
padding-top: 10px;
}
.service-content {
padding: 15px 20px;
background: #e6eaed;
display: block;
height: auto
}
.service-content p:last-child {
margin: 0;
}

/* Image Mask */
.grid figure {
margin: 0;
position: relative;
}
.grid figure img {
width: 100%;
display: block;
position: relative;
}
.grid figcaption {
position: absolute;
top: 0;
left: 0;
padding: 20px;
color: #fff;
background: #3498db;
}
.grid figcaption h5 {
margin: 0;
padding-top: 0px;
padding-left: 20px;
padding-bottom: 5px;
color: #fff;
font-weight: 700;
text-align: left;
letter-spacing: 2px;
}
.grid figcaption a {
text-align: left;
padding: 5px 10px;
margin-left: 20px;
display: inline-block;
background: #2f2f2f;
color: #fff;
font-size: 13px;
}

/* Caption Style */
.mask figure {
overflow: hidden;
}
.mask figure img {
-webkit-transition: -webkit-transform 0.4s;
-moz-transition: -moz-transform 0.4s;
transition: transform 0.4s;
}
.no-touch .mask figure:hover img,
.mask figure.cs-hover img {
-webkit-transform: translateY(-30px);
-moz-transform: translateY(-30px);
-ms-transform: translateY(-30px);
transform: translateY(-30px);
}
.mask figcaption {
height: 50px;
width: 100%;
top: auto;
bottom: 0;
opacity: 0;
-webkit-transform: translateY(100%);
-moz-transform: translateY(100%);
-ms-transform: translateY(100%);
transform: translateY(100%);
-webkit-transition: -webkit-transform 0.4s, opacity 0.1s 0.3s;
-moz-transition: -moz-transform 0.4s, opacity 0.1s 0.3s;
transition: transform 0.4s, opacity 0.1s 0.3s;
}
.no-touch .mask figure:hover figcaption,
.mask figure.cs-hover figcaption {
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
transform: translateY(0px);
-webkit-transition: -webkit-transform 0.4s, opacity 0.1s;
-moz-transition: -moz-transform 0.4s, opacity 0.1s;
transition: transform 0.4s, opacity 0.1s;
}
.mask figcaption a {
position: absolute;
top:10px;
bottom: 10px;
right: 30px;
}

/* map */
.map-frame{
background:url(../img/th-back.png);
padding:10px;
box-shadow: inset 0 0 15px rgba(52, 42, 26, 0.6),
inset 0 0 15px rgba(52, 42, 26, 0.6);
}
.ggmap {
position: relative;
height: 340px;
overflow: hidden;
margin:0 auto;
}
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
}
a.map{
letter-spacing:0px;
font-size:12px;
font-weight:bold;
}
.store-out{
width:30%;
}

@media (max-width:767px) {
.ggmap {
height:250px;
}
.map-frame{
margin-bottom:25px;
}
}

/* MEDIA QUERIES */
@media screen and (max-width:1050px), screen and (max-device-width:1050px){
body .header{background-attachment: scroll;}
}

/*ipad portrait*/
@media only screen and (min-device-width:768px) and (max-device-width : 1024px) and (orientation : portrait){
.header{background-attachment: scroll;}
}

@media screen and (max-width:769px) {
#headerwrap h1 {
font-size: 80px;
}
#headerwrap p {
font-size: 30px;
line-height: 38px;
}
}

#top .cw p{
font-size:15px;
}
#top .cw{
border-top:1px dotted #000000;
border-bottom:1px dotted #000000;
margin-top:30px;
padding:30px 0;
}

@media screen and (max-width:769px) {
#top .cw p{
font-size:13px!important;
}
#top .cw{
margin-top:10px;
padding:15px 0;
}
}

@media screen and (max-width:320px) {
#top .cw p{
font-size:12px!important;
font-weight:normal;
}
}