@charset "utf-8";

/* reset
------------------------------------------------------------------------------------------------------------- */
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,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
 margin: 0;
 padding: 0;
 border: 0;
 font-size: 100%;
 font: inherit;
 vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section { display: block; }

body { line-height: 1; }

ol,
ul { list-style: none; }

blockquote,
q { quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
 content: '';
 content: none;
}

table {
 border-collapse: collapse;
 border-spacing: 0;
 empty-cells: show;
}

/* base
------------------------------------------------------------------------------------------------------------- */
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,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 box-sizing: border-box;
}

html,
body {
 width:100%;
 word-wrap:break-word;
 overflow-wrap:break-word;
}

html {
 font-size:62.5%;
 -webkit-tap-highlight-color:rgba(148,34,67,0.1);
 -webkit-font-smoothing:antialiased;
 height:100%;
}

body {
 font-family: 'Josefin Sans', sans-serif;
 font-size:14px;
 font-size:1.4rem;
 line-height:1.5;
 color:#000;
 background: #980b1a;
 min-height: 100%;
}

img {
 vertical-align: bottom;
 height: auto;
 line-height: 1;
}

h1,
h2,
h3,
h4,
h5,
h6 {
 font-size:14px;
 font-size:1.4rem;
}

ol,
ul { list-style-type: none; }

table { text-align: left; }

input,
select,
textarea {
 font-family: 'Josefin Sans', sans-serif;
 font-size:14px;
 font-size:1.4rem;
}

a,
a:link,
a:visited {
 color:#cb4042;
 text-decoration:underline;
 -webkit-transition: all 04s ease;
 -moz-transition: all 0.4s ease;
 -ms-transition: all 0.4s ease;
 -o-transition: all 0.4s ease;
 transition: all 0.4s ease;
}

a:hover,
a:active {
 color:#ee1e21;
 text-decoration:none;
}

.disnon { display: none !important; }

.spOnly { display: none !important; }

.pcOnly { display: block !important; }
@media (max-width: 768px) {

.spOnly { display: block !important; }

.pcOnly { display: none !important; }
}

.svg {
 display: block;
 width: 100%;
 height: auto;
}

#oldBrowser {
 padding: 2px 0;
 width: 100%;
 background: #000;
 text-align: center;
 font-size: 12px;
 color:#ccc;
 position: absolute;
 top:0;
 left: 0;
}

/* clearfix
------------------------------------------------------------------------------------------------------------- */
.cf:after {/*for modern browser*/
 content: " ";
 display: block;
 height: 0;
 clear: both;
 line-height:0;
 visibility: hidden;
}

.cf { zoom:1; /*for IE 5.5-7*/ }

/* fade
------------------------------------------------------------------------------------------------------------- */
.fade {
 -webkit-transition: all 04s ease;
 -moz-transition: all 0.4s ease;
 -ms-transition: all 0.4s ease;
 -o-transition: all 0.4s ease;
 transition: all 0.4s ease;
}

.fade:hover {
 opacity: 0.6;
 filter: alpha(opacity=60);
}

/* txt
------------------------------------------------------------------------------------------------------------- */
.txtC { text-align: center !important; }

.txtR { text-align: right !important; }

.txtL { text-align: left !important; }

.fs08 {
 font-size: 8px;
 font-size: 0.8rem !important;
} /*renders 9px */

.fs09 {
 font-size: 9px;
 font-size: 0.9rem !important;
} /*renders 9px */

.fs10 {
 font-size:10px;
 font-size: 1rem !important;
} /*renders 10px */

.fs11 {
 font-size:11px;
 font-size: 1.1rem !important;
} /*renders 11px */

.fs12 {
 font-size:12px;
 font-size: 1.2rem !important;
} /*renders 12px */

.fs13 {
 font-size:13px;
 font-size: 1.3rem !important;
} /*renders 13px */

.fs14 {
 font-size:14px;
 font-size: 1.4rem !important;
} /*renders 14px */

.fs15 {
 font-size:15px;
 font-size: 1.5rem !important;
} /*renders 15px */

.fs16 {
 font-size:16px;
 font-size: 1.6rem !important;
} /*renders 16px */

.fs17 {
 font-size:17px;
 font-size: 1.7rem !important;
} /*renders 17px */

.fs18 {
 font-size:18px;
 font-size: 1.8rem !important;
} /*renders 18px */

.fs19 {
 font-size:19px;
 font-size: 1.9rem !important;
} /*renders 19px */

.fs20 {
 font-size:20px;
 font-size: 2rem !important;
} /*renders 20px */

.fs21 {
 font-size:21px;
 font-size: 2.1rem !important;
} /*renders 21px */

.fs22 {
 font-size:22px;
 font-size: 2.2rem !important;
} /*renders 22px */

.fs23 {
 font-size:23px;
 font-size: 2.3rem !important;
} /*renders 23px */

.fs24 {
 font-size:24px;
 font-size: 2.4rem !important;
} /*renders 24px */

.fs25 {
 font-size:25px;
 font-size: 2.5rem !important;
} /*renders 25px */

.fs26 {
 font-size:26px;
 font-size: 2.6rem !important;
} /*renders 26px */

em {
 font-weight: bold;
 font-style: normal;
}

strong {
 text-decoration: underline;
 font-weight: normal;
}

/* font
------------------------------------------------------------------------------------------------------------- */
@font-face {
 font-family: 'fontello';
 src: url('../font/fontello.eot?50550275');
 src: url('../font/fontello.eot?50550275#iefix') format('embedded-opentype'),  url('../font/fontello.woff?50550275') format('woff'),  url('../font/fontello.ttf?50550275') format('truetype'),  url('../font/fontello.svg?50550275#fontello') format('svg');
 font-weight: normal;
 font-style: normal;
}

[class^="icon-"]:before,
[class*=" icon-"]:before {
 font-family: "fontello";
 font-style: normal;
 font-weight: normal;
 speak: none;
 display: inline-block;
 text-decoration: inherit;
 width: 1em;
 margin-right: .2em;
 text-align: center;
 font-variant: normal;
 text-transform: none;
 line-height: 1em;
 margin-left: .2em;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
}

.icon-mail:before { content: '\e800'; } /* '' */

.icon-search:before { content: '\e801'; } /* '' */

.icon-mail-alt:before { content: '\e802'; } /* '' */

.icon-heart:before { content: '\e803'; } /* '' */

.icon-heart-empty:before { content: '\e804'; } /* '' */

.icon-star:before { content: '\e805'; } /* '' */

.icon-star-empty:before { content: '\e806'; } /* '' */

.icon-down-open:before { content: '\e807'; } /* '' */

.icon-left-open:before { content: '\e808'; } /* '' */

.icon-right-open:before { content: '\e809'; } /* '' */

.icon-up-open:before { content: '\e80a'; } /* '' */

.icon-angle-left:before { content: '\e80b'; } /* '' */

.icon-angle-right:before { content: '\e80c'; } /* '' */

.icon-angle-up:before { content: '\e80d'; } /* '' */

.icon-angle-down:before { content: '\e80e'; } /* '' */

.icon-phone:before { content: '\e80f'; } /* '' */

.icon-down-circle:before { content: '\e810'; } /* '' */

.icon-right-circle:before { content: '\e811'; } /* '' */

.icon-up-circle:before { content: '\e812'; } /* '' */

.icon-left-circle:before { content: '\e813'; } /* '' */

.icon-gplus-1:before { content: '\e814'; } /* '' */

.icon-facebook-1:before { content: '\e815'; } /* '' */

.icon-twitter-1:before { content: '\e816'; } /* '' */

.icon-attention:before { content: '\e817'; } /* '' */

.icon-error:before { content: '\e818'; } /* '' */

.icon-error-alt:before { content: '\e819'; } /* '' */

/* margin
------------------------------------------------------------------------------------------------------------- */
.m0 { margin: 0 !important; }

.m10 { margin: 10px !important; }

.m20 { margin: 20px !important; }

.m30 { margin: 30px !important; }

.m40 { margin: 40px !important; }

.m50 { margin: 50px !important; }

.ml10 { margin-left: 10px !important; }

.ml20 { margin-left: 20px !important; }

.ml30 { margin-left: 30px !important; }

.ml40 { margin-left: 40px !important; }

.ml50 { margin-left: 50px !important; }

.mr10 { margin-right: 10px !important; }

.mr20 { margin-right: 20px !important; }

.mr30 { margin-right: 30px !important; }

.mr40 { margin-right: 40px !important; }

.mr50 { margin-right: 50px !important; }

.mt10 { margin-top: 10px !important; }

.mt20 { margin-top: 20px !important; }

.mt30 { margin-top: 30px !important; }

.mt40 { margin-top: 40px !important; }

.mt50 { margin-top: 50px !important; }

.mb10 { margin-bottom: 10px !important; }

.mb20 { margin-bottom: 20px !important; }

.mb30 { margin-bottom: 30px !important; }

.mb40 { margin-bottom: 40px !important; }

.mb50 { margin-bottom: 50px !important; }

.mlr10 {
 margin-left: 10px !important;
 margin-right:10px !important;
}

.mlr20 {
 margin-left: 20px !important;
 margin-right:20px !important;
}

.mlr30 {
 margin-left: 30px !important;
 margin-right:30px !important;
}

.mlr40 {
 margin-left: 40px !important;
 margin-right:40px !important;
}

.mlr50 {
 margin-left: 50px !important;
 margin-right:50px !important;
}

.mtb10 {
 margin-top: 10px !important;
 margin-bottom:10px !important;
}

.mtb20 {
 margin-top: 20px !important;
 margin-bottom:20px !important;
}

.mtb30 {
 margin-top: 30px !important;
 margin-bottom:30px !important;
}

.mtb40 {
 margin-top: 40px !important;
 margin-bottom:40px !important;
}

.mtb50 {
 margin-top: 50px !important;
 margin-bottom:50px !important;
}

/* padding
------------------------------------------------------------------------------------------------------------- */
.p10 { padding: 10px !important; }

.p20 { padding: 20px !important; }

.p30 { padding: 30px !important; }

.p40 { padding: 40px !important; }

.p50 { padding: 50px !important; }

.pl10 { padding-left: 10px !important; }

.pl20 { padding-left: 20px !important; }

.pl30 { padding-left: 30px !important; }

.pl40 { padding-left: 40px !important; }

.pl50 { padding-left: 50px !important; }

.pr10 { padding-right: 10px !important; }

.pr20 { padding-right: 20px !important; }

.pr30 { padding-right: 30px !important; }

.pr40 { padding-right: 40px !important; }

.pr50 { padding-right: 50px !important; }

.pt10 { padding-top: 10px !important; }

.pt20 { padding-top: 20px !important; }

.pt30 { padding-top: 30px !important; }

.pt40 { padding-top: 40px !important; }

.pt50 { padding-top: 50px !important; }

.pb10 { padding-bottom: 10px !important; }

.pb20 { padding-bottom: 20px !important; }

.pb30 { padding-bottom: 30px !important; }

.pb40 { padding-bottom: 40px !important; }

.pb50 { padding-bottom: 50px !important; }

.plr10 {
 padding-left: 10px !important;
 padding-right:10px !important;
}

.plr20 {
 padding-left: 20px !important;
 padding-right:20px !important;
}

.plr30 {
 padding-left: 30px !important;
 padding-right:30px !important;
}

.plr40 {
 padding-left: 40px !important;
 padding-right:40px !important;
}

.plr50 {
 padding-left: 50px !important;
 padding-right:50px !important;
}

.ptb10 {
 padding-top: 10px !important;
 padding-bottom:10px !important;
}

.ptb20 {
 padding-top: 20px !important;
 padding-bottom:20px !important;
}

.ptb30 {
 padding-top: 30px !important;
 padding-bottom:30px !important;
}

.ptb40 {
 padding-top: 40px !important;
 padding-bottom:40px !important;
}

.ptb50 {
 padding-top: 50px !important;
 padding-bottom:50px !important;
}

/* header
------------------------------------------------------------------------------------------------------------- */
#header {
 position: relative;
 max-width:100%;
 width: 100%;
 height: 100px;
 background: #fff;
 text-align: center;
}

#headerFixed {
 position: fixed;
 z-index: 9999;
 top:-50px;
 left: 0;
 max-width:100%;
 width: 100%;
 height: 50px;
 background: #fff;
 text-align: center;
 border-bottom:4px solid #000;
}

#headerWrap {
 position: relative;
 margin: 0 auto;
 max-width: 980px;
 height: 100px;
 text-align: left;
}

#headerWrapFixed {
 position: relative;
 margin: 0 auto;
 max-width: 980px;
 height: 50px;
 text-align: left;
}

#logo,
#logoFixed {
 position: absolute;
 bottom:10px;
 left: 10px;
 letter-spacing: -0.05em;
}

#logo a {
 text-decoration: none;
 color:#000;
 font-size: 28px;
 font-size: 2.8rem;
 font-weight:500;
 -webkit-font-smoothing:antialiased;
}

#logoFixed a {
 text-decoration: none;
 color:#000;
 font-size: 20px;
 font-size: 2.0rem;
 font-weight:500;
 -webkit-font-smoothing:antialiased;
}

#triger { display: none; }
 @media (max-width: 768px) {

#header {
 max-width: 768px;
 min-width: 100%;
 height: 44px;
}

#headerFixed { display: none; }

#headerWrap {
 width: 100%;
 height: 44px;
}

#header #logo {
 top:15px;
 bottom:auto;
 left: 15px;
 letter-spacing: 0;
}

#header #logo a {
 font-size: 15px;
 font-size: 1.5rem;
 font-weight: 500;
 -webkit-font-smoothing:subpixel-antialiased;
}

#triger {
 display: block;
 position: absolute;
 top:0;
 right: 0;
 width: 44px;
 height: 44px;
 color:#fff;
 cursor: pointer;
 z-index: 9999;
}

#triger span {
 display: block;
 position: absolute;
 top: 50%;
 left: 50%;
 width: 20px;
 height: 2px;
 margin: -2px 0 0 -12px;
 background: #980b1a;
 -webkit-transition: 0.2s ease;
 -moz-transition: 0.2s ease;
 -o-transition: 0.2s ease;
 transition: 0.2s ease;
 border-radius: 1px;
}

#triger span::before,
 #triger span::after {
 display: block;
 content: "";
 position: absolute;
 top: 50%;
 left: 0;
 width: 20px;
 height: 2px;
 background: #980b1a;
 transition: .3s;
 border-radius: 1px;
}

#triger span:before { margin-top: -9px; }

#triger span:after { margin-top: 7px; }

#triger .close { background: transparent; }

#triger .close:before,
#triger .close:after {
 margin-top: 0;
 background: #000;
 height: 2px;
}

#triger .close:before {
 transform: rotate(-45deg);
 -webkit-transform: rotate(-45deg);
}

#triger .close:after {
 transform: rotate(-135deg);
 -webkit-transform: rotate(-135deg);
}
}
@media (max-width: 414px) {

#header {
 max-width: 414px;
 height: 44px;
}
}

#gnav,
#gnavFixed {
 position: absolute;
 padding-bottom:0;
 right: 0;
 bottom: 20px;
 width: 65%;
 background: url(../img/common/gnav_line.png) no-repeat left bottom;
 background-size: 100% auto;
}

#gnavFixed { bottom:10px; }

#gnav ul,
#gnavFixed ul { overflow: hidden; }

#gnav li,
#gnavFixed li {
 margin-left: 7%;
 float: left;
 font-weight: 700;
 font-size: 15px;
 font-size: 1.5rem;
}
@media (max-width: 980px) {

#gnav,
 #gnavFixed { width: 480px; }

#gnav li,
 #gnavFixed li { margin-left: 25px; }
}

#gnav li a,
#gnavFixed li a {
 display: block;
 padding: 0 4px;
 position: relative;
 text-decoration: none;
}

#gnav li a:after,
#gnavFixed li a:after {
 content:'';
 width: 0%;
 height: 2px;
 position: absolute;
 left: 50%;
 bottom:0;
 background: #000;
 -webkit-transition: all 0.2s ease;
 -moz-transition: all 0.2s ease;
 -ms-transition: all 0.2s ease;
 -o-transition: all 0.2s ease;
 transition: all 0.2s ease;
}

#gnav li:nth-child(1) a,
#gnavFixed li:nth-child(1) a { color:#000; }

#gnav li:nth-child(1) a:hover,
#gnavFixed li:nth-child(1) a:hover { color:#999; }

#gnav li:nth-child(1) a::after,
#gnavFixed li:nth-child(1) a::after { background:#ccc; }

#gnav li a:hover::after,
#gnavFixed li a:hover::after {
 width: 100%;
 left: 0;
}

#gnav li:nth-child(2) a,
#gnavFixed li:nth-child(2) a { color:#90611b; }

#gnav li:nth-child(2) a:hover,
#gnavFixed li:nth-child(2) a:hover { color:#cb984c; }

#gnav li:nth-child(2) a::after,
#gnavFixed li:nth-child(2) a::after { background:#cb984c; }

#gnav li:nth-child(3) a,
#gnavFixed li:nth-child(3) a { color:#810b18; }

#gnav li:nth-child(3) a:hover,
#gnavFixed li:nth-child(3) a:hover { color:#c83142; }

#gnav li:nth-child(3) a::after,
#gnavFixed li:nth-child(3) a::after { background:#c83142; }

#gnav li:nth-child(4) a,
#gnavFixed li:nth-child(4) a { color:#36679d; }

#gnav li:nth-child(4) a:hover,
#gnavFixed li:nth-child(4) a:hover { color:#689dd9; }

#gnav li:nth-child(4) a::after,
#gnavFixed li:nth-child(4) a::after { background:#689dd9; }

#gnav li:nth-child(5) a,
#gnavFixed li:nth-child(5) a { color:#738f4c; }

#gnav li:nth-child(5) a:hover,
#gnavFixed li:nth-child(5) a:hover { color:#a7cb74; }

#gnav li:nth-child(5) a::after,
#gnavFixed li:nth-child(5) a::after { background:#a7cb74; }
 @media (max-width: 768px) {

#gnav {
 display: none;
 right: 0;
 top:44px;
 bottom: auto;
 width: 100%;
 height: 100%;
 background-image:none;
 z-index: 9999;
}

#gnav ul {
 border-top:1px solid #ccc;
 box-shadow:rgba(161, 161, 161, 0.6) 0px 3px 3px 0;
 -webkit-box-shadow:rgba(161, 161, 161, 0.6) 0px 3px 3px 0;
 -moz-box-shadow:rgba(161, 161, 161, 0.6) 0px 3px 3px 0;
}

#gnav li {
 margin-left: 0;
 float: none;
 font-weight: 500;
 font-size: 15px;
 font-size: 1.5rem;
 line-height: 1;
 background: #fff;
}

#gnav li a {
 display: block;
 padding: 14px 15px;
 position: relative;
 text-decoration: none;
}

#gnav li a:after {
 content:'';
 width: 0%;
 height: 2px;
 position: absolute;
 left: 50%;
 bottom:0;
 background: #000;
}

#gnav li a::after {
 width: 100%;
 height: 1px;
 left: 0;
}

#gnav li a::before {
 position: absolute;
 content: '\e80c';
 right:8px;
 top:50%;
 margin-top:-12px;
 font-family: "fontello";
 font-style: normal;
 font-weight: normal;
 speak: none;
 display: inline-block;
 text-decoration: inherit;
 width: 1em;
 font-size: 20px;
 margin-right: .2em;
 text-align: center;
 font-variant: normal;
 text-transform: none;
 line-height: 1em;
 margin-left: .2em;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
}
}

/* container
------------------------------------------------------------------------------------------------------------- */
#container {
 width: 100%;
 position: relative;
 overflow: hidden;
}

#contentsArea {
 background: #fff;
 width: 100%;
}

#contentsWrap {
 margin: 0 auto;
 padding:0 0 120px;
 max-width: 980px;
 width: 100%;
 min-height: 400px;
 word-break: break-word;
 overflow-wrap:break-word;
}

#contentsArea p,
#contentsArea li,
#contentsArea dl,
#contentsArea table {
 letter-spacing: 0.06em;
 line-height: 2;
}

#contentsWrap > p:first-child { margin-top:0; }
@media (max-width: 980px) {

#contentsWrap { padding: 0 30px 120px; }
}
@media (max-width: 768px) {

#contentsWrap { padding: 0 30px 100px; }
}
@media (max-width: 568px) {

#contentsWrap { padding: 0 20px 50px; }
}
@media (max-width: 414px) {

#contentsWrap {
 padding: 0 0 40px;
 min-height: 240px;
}

#contentsArea p,
 #contentsArea li,
 #contentsArea dl,
 #contentsArea table {
 letter-spacing: 0;
 line-height: 1.6;
}
}

.contentsTwo #contentsWrap { display: table; }

#contentsLeft {
 padding-right: 40px;
 display: table-cell;
 vertical-align: top;
}

#contentsRight {
 display: table-cell;
 vertical-align: top;
 width: 190px;
}
@media (max-width: 768px) {

#contentsLeft { padding-right: 20px; }
}
@media (max-width: 414px) {

#contentsLeft { display: block; }

#contentsRight { display: block; }
}

/* sideMenu
------------------------------------------------------------------------------------------------------------- */
#sideMenu ul {
 padding: 15px;
 background:#d1d1d1;
 border-radius: 10px;
}

#sideMenu li {
 border-bottom:1px solid #fff;
 line-height: 1.4;
 color:#fff;
}

#sideMenu li:last-child { border-bottom:none; }

#sideMenu a {
 display: block;
 position: relative;
 padding: 10px;
 color:#000;
 text-decoration: none;
}
@media (max-width: 568px) {

#sideMenu {
 margin:40px auto 0;
 display: block;
 width: 90%;
}

#sideMenu ul {
 padding: 0;
 border-radius: 5px;
}

#sideMenu a { padding: 12px 10px; }
}

/* footer
------------------------------------------------------------------------------------------------------------- */
#btnPagetop {
 display: block;
 position: absolute;
 right: 0;
 top:0;
 width: 40px;
 height: 40px;
}

#btnPagetop a {
 position: relative;
 display: block;
 width: 40px;
 height: 40px;
}

#btnPagetop img {
 width: 40px;
 height:auto;
}

#btnPagetop a:hover { opacity: 0.8; }

#footer {
 position: relative;
 padding: 75px 0;
 text-align: center;
 color:#e8c095;
}

.ttlFooter {
 font-size: 30px;
 font-size: 3.0rem;
 letter-spacing: -0.02em;
 -webkit-transition: all 04s ease;
 -moz-transition: all 0.4s ease;
 -ms-transition: all 0.4s ease;
 -o-transition: all 0.4s ease;
 transition: all 0.4s ease;
}

#footer .nav {
 display:block;
 width: 850px;
 margin: 0 auto;
 -webkit-transition: all 04s ease;
 -moz-transition: all 0.4s ease;
 -ms-transition: all 0.4s ease;
 -o-transition: all 0.4s ease;
 transition: all 0.4s ease;
}

#footer .nav li {
 margin:30px 0 0 0;
 display: inline-block;
 border-right:2px solid #e8c095;
 padding:0 50px;
 font-size: 15px;
 font-size: 1.5rem;
 white-space: nowrap;
 line-height: 1;
}

#footer .nav a {
 display: block;
 position: relative;
 padding: 0 0 4px 0px;
}

#footer .nav a::after {
 position: absolute;
 bottom:0;
 left: 50%;
 content: '';
 width: 0;
 height: 1px;
 background: #fff;
 -webkit-transition: all 0.2s ease;
 -moz-transition: all 0.2s ease;
 -ms-transition: all 0.2s ease;
 -o-transition: all 0.2s ease;
 transition: all 0.2s ease;
}

#footer .nav a:hover::after {
 width: 100%;
 left: 0;
}

#footer .nav li:nth-child(4) { border-right:none; }
/*
#footer .nav li:nth-child(8) { border-right:none; }
*/
#footer .nav li:last-child { border-right:none; }

#footer a {
 color:#fff;
 text-decoration: none;
 font-weight: 700;
}

#footer .navSns { margin: 50px auto 0; }

#footer .navSns li {
 margin: 0 5px;
 display: inline-block;
}

#footer .navSns li a {
 position: relative;
 display: inline-block;
 width: 40px;
 height:30px;
 font-size:20px !important;
 line-height:12px !important;
 text-align:left !important;
 text-indent:104%;
 overflow:hidden !important;
 word-wrap:normal !important;
}

#footer .navSns li a::before {
 position: absolute;
 left: 2px;
 top:4px;
 text-indent: 0;
}

#footer .navSns li a:hover { color:#dfc4c5; }

#copyright {
 text-align: center;
 font-size: 10px;
 font-size: 1.0rem;
 font-weight: 700;
 letter-spacing: 0.2em;
}

#copyright span {
 display: inline-block;
 margin-top:2px;
 font-size: 18px;
 font-size: 1.8rem;
 vertical-align: middle;
}

#footer .logoYamae { text-align: center; }

#footer .logoYamae a {
 display: block;
 margin: 50px auto 0;
 width: 230px;
 height: 20px;
 background: url(../img/common/logo_yamae.png) no-repeat center top;
 font-size:10px !important;
 line-height:12px !important;
 text-align:left !important;
 text-indent:200% !important;
 white-space:nowrap !important;
 overflow:hidden !important;
 word-wrap:normal !important;
}
@media (-webkit-min-device-pixel-ratio: 2) {

#footer .logoYamae a {
 background: url(../img/common/logo_yamae@2x.png) no-repeat center top;
 background-size: 230px auto;
}
}
@media (max-width: 768px) {

#btnPagetop {
 width: 40px;
 height: 40px;
}

#btnPagetop a {
 width: 40px;
 height: 40px;
 text-align: right;
}

#btnPagetop img {
 margin: 0 0 0 auto;
 width: 30px;
}

#footer { padding: 30px 0; }

.ttlFooter {
 font-size: 19px;
 font-size: 1.9rem;
 letter-spacing: -0.01em;
 font-weight: 500;
}

#footer .nav {
 margin-top:25px;
 width: 100%;
 border-top:1px solid #b71325;
 overflow: hidden;
}

#footer .nav li {
 float: left;
 width: 50%;
 margin:0;
 display: inline-block;
 border-right:none;
 padding:0;
 font-size: 11px;
 font-size: 1.1rem;
 letter-spacing: 0.02em;
 text-align: left;
 border-bottom:1px solid #b71325;
}

#footer .nav a {
 display: block;
 padding: 15px 10px;
}

#footer .nav a::after {
 position: absolute;
 bottom:0;
 left: 0;
 content: '';
 width: 0;
 height: 1px;
 background: #fff;
 -webkit-transition: none;
 -moz-transition: none;
 -o-transition: none;
}

#footer .nav a:active::after,
 #footer .nav a:hover::after {
 width:0;
 left: 0;
}

#footer .nav li:nth-child(5) { border-right:none; }
/*
#footer .nav li:nth-child(8) { width: 100%; }
*/
#footer .nav li:last-child { border-right:none; }

#footer a {
 color:#fff;
 text-decoration: none;
 font-weight: 700;
}

#footer .navSns { margin:25px auto 0; }

#footer .navSns li {
 margin: 0 5px;
 display: inline-block;
}

#footer .navSns li a {
 position: relative;
 display: inline-block;
 width: 40px;
 height:40px;
 font-size:20px !important;
 line-height:12px !important;
 text-align:left !important;
 text-indent:104%;
 overflow:hidden !important;
 word-wrap:normal !important;
}

#footer .navSns li a::before {
 position: absolute;
 left: 5px;
 top:10px;
 text-indent: 0;
}

#copyright {
 margin-top:5px;
 text-align: center;
 font-size: 9px;
 font-size: 0.9rem;
 font-weight: 700;
 letter-spacing: 0.1em;
}

#copyright span {
 font-size: 18px;
 font-size: 1.8rem;
}

#footer .logoYamae a {
 margin:20px auto 0;
 width: 187px;
 height: 13px;
 background: url(../img/common/logo_yamae@2x.png) no-repeat center top;
 background-size: 187px 13px;
}
}
