@charset "UTF-8";
/****************************************************
  Reset
*****************************************************/
html, body, div, ul, ol, li, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, p, blockquote, fieldset, input, th, td, img {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6, pre, code, address, caption, cite, code, em, strong, th, td {
  font-size: 1em;
  font-weight: normal;
  font-style: normal;
}

caption, th {
  text-align: left;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  border: 0;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

a {
  text-decoration: none;
  outline: none;
}

li {
  list-style: none;
}

input, textarea {
  outline: none;
}

input[type="submit"]::-moz-focus-inner {
  border: 0px;
}

/****************************************************
 common_layout_&_styles 
*****************************************************/
html {
  margin: 0px;
  height: 100%;
  width: 100%;
  text-align: center;
  font-family: 'Open Sans',"Hiragino Kaku Gothic Pro","Meiryo","MS PGothic",sans-serif;
  -webkit-font-smoothing: subpixel-antialiased;
  text-rendering: optimizelegibility;
  color: #484848;
  background-color: gainsboro;
}

body {
  margin: 0px auto;
  height: 100%;
  width: 100%;
  text-align: left;
  line-height: 1.6em;
  font-size: 81.25%;
}

p.footer_bg_01 {
  z-index: -1;
  margin: 0;
  padding: 0;
  position: fixed;
  bottom: 0;
  width: 100%;
  background-image: url('../images/footer_bg_01_right.png?1418126793');
  background-repeat: no-repeat;
  background-position: right bottom;
}

p.footer_bg_02 {
  position: relative;
  z-index: -2;
  margin: 0;
  padding: 0;
}

/*******************

font-size
relative values

font-4: 10px: 77% 
font-3: 11px: 85% 
font-2: 12px: 93% 
font-1: 13px: 100% 
font0: 14px: 108% 
font1: 15px: 116% 
font2: 16px: 123.1% 
font3: 17px: 131% 
font4: 18px: 138.5% 
font5: 19px: 146.5% 
font6: 20px: 153.9% 
font7: 21px: 161.6% 
font8: 22px: 167% 
font9: 23px: 174% 
font10: 24px: 182% 
font11: 25px: 189% 
font12: 26px: 197%

********************/
h1 {
  margin-bottom: 1.5em;
  font-size: 93%;
  font-weight: bold;
  color: #9b8134;
}

h2 {
  margin-bottom: 1.5em;
  line-height: 1.2em;
  font-family: 'Josefin Slab','HiraMinProN-W3',"Meiryo","MS PGothic",serif;
  font-family: 'Quattrocento','HiraMinProN-W3',"Meiryo","MS PGothic",serif;
  font-size: 197%;
  color: #9b8134;
}

h2.lang_jp {
  font-size: 182%;
}

h3 {
  margin-bottom: 1.5em;
  line-height: 1.4em;
  vertical-align: top;
  font-family: 'Josefin Slab','HiraMinProN-W3',"Meiryo","MS PGothic",serif;
  font-family: 'Quattrocento','HiraMinProN-W3',"Meiryo","MS PGothic",serif;
  font-size: 182%;
  color: #53017e;
}

h3.lang_jp {
  font-size: 153.9%;
}

h4 {
  margin-bottom: 1.5em;
  font-family: 'Josefin Slab','HiraMinProN-W3',"Meiryo","MS PGothic",serif;
  font-family: 'Quattrocento','HiraMinProN-W3',"Meiryo","MS PGothic",serif;
  font-size: 167%;
}

h4.lang_jp {
  font-size: 138.5%;
}

h5 {
  margin-bottom: 1.5em;
  font-family: 'Josefin Slab', serif;
  font-family: 'Quattrocento', serif;
  font-size: 153.9%;
}

h5.lang_jp {
  font-size: 123.1%;
}

p {
  margin-bottom: 1.5em;
  line-height: 1.625;
  font-size: 108%;
}

dt {
  font-family: 'Josefin Slab', serif;
  font-family: 'Quattrocento', serif;
}

li,
dd {
  line-height: 1.625;
  font-size: 108%;
}

ul,
dl,
ol,
table {
  margin-bottom: 1.5em;
}

table {
  border: 1px solid #787878;
}

th,
td {
  padding: 0.5em 0.75em;
  line-height: 1.625;
  font-size: 108%;
  border: 1px solid #787878;
}

select {
  display: inline-block;
  margin: 0 0.5em;
}

textarea {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  resize: vertical;
}

input[type="checkbox"] {
  display: inline-block;
  margin-right: 0.5em;
  font-size: 123.1%;
}

input[type="radio"] {
  display: inline-block;
  margin-right: 0.5em;
  font-size: 123.1%;
}

input[type="file"],
input[type="number"] {
  display: inline-block;
  margin: 0 0.5em;
}

textarea,
input[type="text"],
input[type="password"],
input[type="number"],
input[type="email"],
input[type="tel"] {
  -webkit-appearance: none !important;
  -ms-appearance: none !important;
  -moz-appearance: none !important;
  -o-appearance: none !important;
  appearance: none !important;
}

textarea,
input[type='text'],
input[type='password'],
input[type="number"],
input[type="email"],
input[type="tel"] {
  border: solid 1px #ccc;
  padding: 0.5em;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 100%;
  background-color: #fafafa;
  border: 1px solid gainsboro;
  -webkit-transition: background-color 0.25s ease-in-out, border 0.25s ease-in-out;
  -ms-transition: background-color 0.25s ease-in-out, border 0.25s ease-in-out;
  -moz-transition: background-color 0.25s ease-in-out, border 0.25s ease-in-out;
  -o-transition: background-color 0.25s ease-in-out, border 0.25s ease-in-out;
  transition: background-color 0.25s ease-in-out, border 0.25s ease-in-out;
}

textarea:focus,
input[type="text"]:focus,
input[type='password']:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus {
  background-color: white;
  border: 1px solid #ffe807;
  border: 1px solid #ac8900;
  -webkit-transition: background-color 0.1s ease-in-out, border 0.1s ease-in-out;
  -ms-transition: background-color 0.1s ease-in-out, border 0.1s ease-in-out;
  -moz-transition: background-color 0.1s ease-in-out, border 0.1s ease-in-out;
  -o-transition: background-color 0.1s ease-in-out, border 0.1s ease-in-out;
  transition: background-color 0.1s ease-in-out, border 0.1s ease-in-out;
}

input.w_10em {
  width: 11em !important;
}

input.w_9em {
  width: 10em !important;
}

input.w_8em {
  width: 9em !important;
}

input.w_7em {
  width: 8em !important;
}

input.w_6em {
  width: 7em !important;
}

input.w_5em {
  width: 6em !important;
}

input.w_4em {
  width: 5em !important;
}

input.w_3em {
  width: 4em !important;
}

input.w_2em {
  width: 3em !important;
}

input.w_1em {
  width: 2em !important;
}

/* !buttons */
input[type="button"],
input[type="submit"],
button[type="button"],
button[type="submit"] {
  display: inline-block;
  margin: 0 20px;
  color: white;
  border: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
  cursor: pointer;
  background-color: #0069a7;
  /*
  	box-shadow: 0px 1px 2px rgba(0,0,0,0.25); 
  	-webkit-box-shadow: 0px 1px 2px rgba(0,0,0,0.25); 
  */
  -webkit-transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
  -ms-transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
  -moz-transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
  -o-transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
  transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
}

input[type="button"]:hover,
input[type="submit"]:hover,
button[type="button"]:hover,
button[type="submit"]:hover {
  color: white;
  background-color: #4fa5ff;
  -webkit-transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
  -ms-transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
  -moz-transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
  -o-transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
  transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
}

a.btn {
  display: inline-block;
  margin: 0 20px;
  color: white;
  border: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
  cursor: pointer;
  background-color: #0069a7;
  /*
  	box-shadow: 0px 1px 2px rgba(0,0,0,0.25); 
  	-webkit-box-shadow: 0px 1px 2px rgba(0,0,0,0.25); 
  */
  -webkit-transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
  -ms-transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
  -moz-transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
  -o-transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
  transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
}

a.btn:hover {
  color: white;
  background-color: #4fa5ff;
  -webkit-transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
  -ms-transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
  -moz-transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
  -o-transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
  transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
}

.btn {
  padding: 0 0.75em;
  height: 2em;
  line-height: 2em;
  border-radius: 2px;
}

.btn_size_-1 {
  font-size: 75%;
}

.btn_size_1 {
  font-size: 100%;
}
.btn_size_1 i {
  position: relative;
  top: 1em;
  margin-right: 0 !important;
}
.btn_size_1 i.icons_16 {
  margin-top: -8px;
}

.btn_size_2 {
  font-size: 125%;
}

.btn_red {
  background-color: #f03741 !important;
}

.btn_red:hover {
  background-color: #ff4b54 !important;
}

/*
input[type="submit"], 
button[type="submit"], 
*/
.btn_orange {
  background-color: #e36826 !important;
}

/*
input[type="submit"]:hover, 
button[type="submit"]:hover, 
*/
.btn_orange:hover {
  /*
  	background-color: rgb(255, 116, 0) !important; 
  	background-color: #2293dd !important; 
  */
  background-color: #ff7400 !important;
}

.btn_blue {
  background-color: #287bb2 !important;
}

.btn_blue:hover {
  background-color: #2293dd !important;
}

.btn_green {
  background-color: #01b82e !important;
}

.btn_green:hover {
  background-color: #01b82e !important;
}

.btn_grey {
  background-color: #787878 !important;
}

.btn_grey:hover {
  background-color: #a0a0a0 !important;
}

/*
input[type="button"], 
button[type="button"], 
*/
.btn_accent,
.btn_base {
  background-color: #595656 !important;
}

/*
input[type="button"]:hover, 
button[type="button"]:hover, 
*/
.btn_accent:hover,
.btn_base:hover {
  background-color: #ffe807 !important;
}

a {
  color: #0069a7;
}

a,
a i {
  -webkit-transition: color  0.25s ease-in-out, background  0.25s ease-in-out;
  -moz-transition: color 0.25s ease-in-out, background  0.25s ease-in-out;
  -ms-transition: color 0.25s ease-in-out, background  0.25s ease-in-out;
  transition: color 0.25s ease-in-out, background  0.25s ease-in-out;
}

a:hover,
a:hover i {
  color: #4fa5ff;
  -webkit-transition: color 0.1s ease-in-out, background 0.1s ease-in-out;
  -moz-transition: color 0.1s ease-in-outt, background 0.1s ease-in-out;
  -ms-transition: color 0.1s ease-in-outt, background 0.1s ease-in-out;
  transition: color 0.1s ease-in-outt, background 0.1s ease-in-out;
}

/*******************
 inline_styling 
********************/
/* !float */
.float_left {
  float: left;
}

.float_right {
  float: right;
}

/* !margin padding */
.no_marign {
  margin: 0 !important;
}

.no_padding {
  padding: 0 !important;
}

/* !font */
.bold {
  font-weight: bold;
}

.underline {
  text-decoration: underline;
}

/* !color */
.color_base {
  color: #ffe807;
}

.color_base_light {
  color: #0a9da3;
}

.color_hover {
  color: #04b2b9;
}

.color_red {
  color: #e7141a;
}

.color_orange {
  color: #eb6100;
}

.color_blue {
  color: #00b7e0;
}

.color_light_blue {
  color: #87cefa;
}

.color_green {
  color: #009944;
}

/* !text_omitting */
.ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.omit_mist_x {
  position: relative;
  z-index: 2;
  margin-top: -32px;
  margin-bottom: 4px;
  display: block;
  width: 100%;
  height: 32px;
  background-image: url('../images/common_parts_omit_mist_x.png');
  background-repeat: repeat-x;
}

/* !text_align */
.tx_center {
  text-align: center !important;
}

.tx_right {
  text-align: right !important;
}

.tx_left {
  text-align: left !important;
}

/* !centering */
.centering {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin-right: auto;
  margin-left: auto;
  text-align: left;
}

/* !hidden */
.hidden {
  display: none !important;
}

/* !width */
.w_10px {
  width: 10px !important;
}

.w_20px {
  width: 20px !important;
}

.w_30px {
  width: 30px !important;
}

.w_40px {
  width: 40px !important;
}

.w_50px {
  width: 50px !important;
}

.w_60px {
  width: 60px !important;
}

.w_70px {
  width: 70px !important;
}

.w_80px {
  width: 80px !important;
}

.w_90px {
  width: 90px !important;
}

.w_100px {
  width: 100px !important;
}

.w_110px {
  width: 110px !important;
}

.w_120px {
  width: 120px !important;
}

.w_130px {
  width: 130px !important;
}

.w_140px {
  width: 140px !important;
}

.w_150px {
  width: 150px !important;
}

.w_160px {
  width: 160px !important;
}

.w_170px {
  width: 170px !important;
}

.w_180px {
  width: 180px !important;
}

.w_190px {
  width: 190px !important;
}

.w_200px {
  width: 200px !important;
}

.w_220px {
  width: 220px !important;
}

.w_240px {
  width: 240px !important;
}

.w_260px {
  width: 260px !important;
}

.w_280px {
  width: 280px !important;
}

.w_300px {
  width: 300px !important;
}

.w_320px {
  width: 320px !important;
}

.w_340px {
  width: 340px !important;
}

.w_360px {
  width: 360px !important;
}

.w_380px {
  width: 380px !important;
}

.w_400px {
  width: 400px !important;
}

.w_420px {
  width: 420px !important;
}

.w_440px {
  width: 440px !important;
}

.w_460px {
  width: 460px !important;
}

.w_480px {
  width: 480px !important;
}

.w_500px {
  width: 500px !important;
}

.w_520px {
  width: 520px !important;
}

.w_540px {
  width: 540px !important;
}

.w_560px {
  width: 560px !important;
}

.w_580px {
  width: 580px !important;
}

.w_600px {
  width: 600px !important;
}

.w_620px {
  width: 620px !important;
}

.w_640px {
  width: 640px !important;
}

.w_660px {
  width: 660px !important;
}

.w_680px {
  width: 680px !important;
}

.w_700px {
  width: 700px !important;
}

.w_720px {
  width: 720px !important;
}

.w_740px {
  width: 740px !important;
}

.w_760px {
  width: 760px !important;
}

.w_780px {
  width: 780px !important;
}

.w_800px {
  width: 800px !important;
}

.w_820px {
  width: 820px !important;
}

.w_840px {
  width: 840px !important;
}

.w_860px {
  width: 860px !important;
}

.w_880px {
  width: 880px !important;
}

.w_900px {
  width: 900px !important;
}

.w_920px {
  width: 920px !important;
}

.w_940px {
  width: 940px !important;
}

.w_960px {
  width: 960px !important;
}

.w_980px {
  width: 980px !important;
}

/* !height */
.h_60px {
  height: 60px;
}

.h_120px {
  height: 120px;
}

.h_180px {
  height: 180px;
}

.h_240px {
  height: 240px;
}

.h_300px {
  height: 300px;
}

.h_360px {
  height: 360px;
}

.h_420px {
  height: 420px;
}

.h_480px {
  height: 480px;
}

.h_540px {
  height: 540px;
}

.h_600px {
  height: 600px;
}

.h_660px {
  height: 660px;
}

.h_720px {
  height: 720px;
}

.h_780px {
  height: 780px;
}

.h_840px {
  height: 840px;
}

.h_900px {
  height: 900px;
}

.w_100pc {
  width: 100% !important;
}

.w_75pc {
  width: 75% !important;
}

.w_70pc {
  width: 70% !important;
}

.w_65pc {
  width: 65% !important;
}

.w_60pc {
  width: 60% !important;
}

.w_50pc {
  width: 50% !important;
}

.w_45pc {
  width: 45% !important;
}

.w_40pc {
  width: 40% !important;
}

.w_35pc {
  width: 35% !important;
}

.w_33pc {
  width: 33% !important;
}

.w_25pc {
  width: 25% !important;
}

.w_20pc {
  width: 20% !important;
}

.w_10em {
  width: 10em !important;
}

.w_9em {
  width: 9em !important;
}

.w_8em {
  width: 8em !important;
}

.w_7em {
  width: 7em !important;
}

.w_6em {
  width: 6em !important;
}

.w_5em {
  width: 5em !important;
}

.w_4em {
  width: 4em !important;
}

.w_3em {
  width: 3em !important;
}

.w_2em {
  width: 2em !important;
}

.w_1em {
  width: 1em !important;
}

.w_auto {
  width: auto !important;
}

.w_100pc,
.w_75pc,
.w_70pc,
.w_65pc,
.w_60pc,
.w_50pc,
.w_45pc,
.w_40pc,
.w_35pc,
.w_33pc,
.w_25pc,
.w_20pc {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
}

/*******************
 tricks 
********************/
/* !stick footer */
html, body, div.fixed_bottom {
  height: 100%;
}

body > div.fixed_bottom {
  height: auto;
  min-height: 100%;
}

/* !clearfix */
.clearfix:after,
.column_wrapper:after,
.column:after,
.breadcrumbs:after,
.unit:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

.clearfix,
.column_wrapper,
.column,
.breadcrumbs,
.unit {
  display: inline-block;
  display: block;
}

/*****************************
 icons 
******************************/
/* !icons_16 */
* i,
i,
*:hover i,
i:hover {
  -webkit-transition: none !important;
  -ms-transition: none !important;
  -moz-transition: none !important;
  -o-transition: none !important;
  transition: none !important;
}

i.icons_16 {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
}

i.icons_16 {
  height: 16px;
  width: 16px;
  background-image: url('../images/icons_16.png?1424682180');
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  i.icons_16 {
    background-image: url('../images/icons_16@2x.png?1424682187');
    background-size: 16px 48px;
  }
}
i.icons_16.icon_ping, i.icons_16.icon_ping.dark {
  background-position: 0px 0px;
}
i.icons_16.icon_ping.light {
  background-position: 0px -16px;
}
i.icons_16.icon_ping.color {
  background-position: 0px -32px;
}

/* !icons_24 */
i.icons_24 {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  height: 24px;
  width: 24px;
  vertical-align: top;
  background-image: url('../images/icons_24.png?1443777592');
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  i.icons_24 {
    background-image: url('../images/icons_24@2x.png?1443777652');
    background-size: 552px 72px;
  }
}

i.icons_24.icon_tel {
  background-position: 0px 0px;
}

i.icons_24.icon_fax {
  background-position: -24px 0px;
}

i.icons_24.icon_mail {
  background-position: -48px 0px;
}

i.icons_24.icon_link {
  background-position: -72px 0px;
}

i.icons_24.icon_clock {
  background-position: -96px 0px;
}

i.icons_24.icon_close {
  background-position: -120px 0px;
}

i.icons_24.icon_balloon {
  background-position: -144px 0px;
}

i.icons_24.icon_knife_fork {
  background-position: -168px 0px;
}

i.icons_24.icon_bascket {
  background-position: -192px 0px;
}

i.icons_24.icon_tasitng {
  background-position: -216px 0px;
}

i.icons_24.icon_grape {
  background-position: -240px 0px;
}

i.icons_24.icon_flag {
  background-position: -264px 0px;
}

i.icons_24.icon_car {
  background-position: -288px 0px;
}

i.icons_24.icon_train {
  background-position: -312px 0px;
}

i.icons_24.icon_taxi_stand {
  background-position: -336px 0px;
}

i.icons_24.icon_search {
  background-position: -360px 0px;
}

i.icons_24.icon_arrow_up {
  background-position: -384px 0px;
}

i.icons_24.icon_arrow_down {
  background-position: -408px 0px;
}

i.icons_24.icon_arrow_right {
  background-position: -432px 0px;
}

.open i.icons_24.icon_arrow_right {
  background-position: -408px -24px;
}

i.icons_24.icon_arrow_left {
  background-position: -456px 0px;
}

i.icons_24.icon_cask {
  background-position: -480px 0px;
}

i.icons_24.icon_wine {
  background-position: -504px 0px;
}

i.icons_24.icon_bag {
  background-position: -528px 0px;
}

i.icons_24.dark {
  background-position-y: 0px;
}

i.icons_24.light {
  background-position-y: -24px;
}

i.icons_24.color, #footer div.page_top a:hover i.icons_24.dark {
  background-position-y: -48px;
}

/* !icons_32 */
i.icons_32 {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin-right: 4px;
  height: 32px;
  width: 32px;
  vertical-align: top;
  background-image: url('../images/icons_32.png?1425903069');
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  i.icons_32 {
    background-image: url('../images/icons_32@2x.png?1425903082');
    background-size: 192px 96px;
  }
}

i.icons_32.icon_taxi {
  background-position: 0px 0px;
}

i.icons_32.icon_bullet_train {
  background-position: -32px 0px;
}

i.icons_32.icon_cask {
  background-position: -64px 0px;
}

i.icons_32.icon_cart {
  background-position: -96px 0px;
}

i.icons_32.icon_grape {
  background-position: -128px 0px;
}

i.icons_32.icon_urban {
  background-position: -160px 0px;
}

i.icons_32.dark {
  background-position-y: 0px;
}

i.icons_32.light {
  background-position-y: -32px;
}

i.icons_32.color {
  background-position-y: -64px;
}

/* !icons_96 */
i.icons_96 {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  height: 96px;
  width: 96px;
  vertical-align: top;
  background-image: url('../images/icons_96.png');
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  i.icons_96 {
    background-image: url('../images/icons_96@2x.png');
    background-size: 192px 288px;
  }
}

i.icons_96.dark {
  background-position-y: 0px;
}

i.icons_96.light {
  background-position-y: -96px;
}

i.icons_96.color {
  background-position-y: -192px;
}

/*****************************
 text_images 
******************************/
/*****************************
 label_status 
******************************/
span.label_state.state_fluent {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block !important;
  margin: 0 0.75em 0 0;
  padding: 0.25em 0.5em;
  line-height: 1em;
  vertical-align: middle;
  font-size: 75%;
  color: white;
  border-radius: 4px;
}

span.label_state.state_fluent {
  background-color: #e7141a;
}

span.label_state.state_limited {
  background-color: #eb6100;
}

span.label_state.state_unable {
  background-color: #787878;
}

/*****************************
 logo 
******************************/
/****************************************************
 common_layout_containers 
*****************************************************/
/*****************************
 header 
******************************/
div#header {
  position: relative;
  z-index: 100;
  margin: 0 0 24px;
  width: 100%;
  font-family: 'Josefin Slab', serif;
  font-family: 'Quattrocento', serif;
  background-color: white;
  background-image: url('../images/common_bg_02.png?1417018807');
  background-position: left -168px;
  background-repeat: repeat-x;
}

#header div.header_bg_wrap {
  /*
  	background-image: image-url("header_bg.png"); 
  	@include image-2x("header_bg@2x.png", 116px, 56px); 
  	background-position: left bottom; 
  	background-repeat: no-repeat; 
  */
}

#header div.wrap {
  margin: 0 auto;
  width: 1200px;
  /*
  	background-image: image-url('common_bg_02.png'); 
  	background-position: left -164px; 
  	background-repeat: repeat-x; 
  */
}

#header h1 {
  margin: 0;
  padding: 0;
  height: 18px;
  text-align: right;
  font-size: 85%;
  font-family: 'Open Sans', sans-serif;
  font-weight: normal;
  color: #cdc099;
}

/* !logo */
#header p.logo {
  float: left;
  margin: 0;
  height: 64px;
  width: 415px;
  font-size: 197%;
}

p.logo a {
  display: block;
  height: 64px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background-image: url('../images/header_logo.png?1418071420');
  background-position: left center;
  background-repeat: no-repeat;
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  p.logo a {
    background-image: url('../images/header_logo@2x.png?1418071363');
    background-size: 415px 56px;
  }
}

/* !main_menu */
#header ul.menu_main {
  float: right;
  margin: 0;
  vertical-align: top;
  text-align: center;
}

#header .menu_main li {
  position: relative;
  float: left;
  vertical-align: middle;
  height: 64px;
  line-height: 64px;
  font-size: 138.5%;
  border-right: 2px solid gainsboro;
}

#header .menu_main li:first-child {
  border-left: 2px solid gainsboro;
}

#header .menu_main li a {
  display: block;
  padding: 0 1em;
  height: 100%;
  line-height: 64px;
  color: #3c3c3c;
  vertical-align: middle;
  text-align: center;
  background-position: center 64px;
}

#header .menu_main li a:hover {
  color: #53017e;
}

#header .menu_main li span.wrap {
  display: inline-block;
  padding: 0;
  vertical-align: top;
  text-align: center;
}

#header .menu_main li:hover,
#header .menu_main li.active {
  background-image: url('../images/common_bg_02.png?1417018807');
  background-position: center bottom;
  background-repeat: no-repeat;
}

#header .menu_main li a:hover,
#header .menu_main li.active a {
  color: white;
  background-image: url('../images/header_active_bg.png?1418113284');
  background-position: center bottom;
  background-repeat: no-repeat;
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  #header .menu_main li a:hover,
  #header .menu_main li.active a {
    background-image: url('../images/header_active_bg@2x.png?1418113294');
    background-size: 50px 25px;
  }
}

#header .menu_main li:hover span.arrow,
#header .menu_main li.active span.arrow {
  display: block;
  position: absolute;
  bottom: -9px;
  left: 50%;
  margin-left: -8px;
  width: 0px;
  height: 0px;
  line-height: 1em;
  border-top: 8px solid #af1b29;
  border-right: 8px solid transparent;
  border-left: 8px solid transparent;
  border-bottom: 1px solid transparent;
}

#header .menu_main li.disabled a {
  color: #ccba02;
  pointer-events: none;
}

#header .menu_main li.disabled:hover span.arrow {
  display: none;
}

/*****************************
 menu_bar_sub 
******************************/
/*****************************
 main_container 
******************************/
div#main_container {
  margin: 0px auto;
  padding-bottom: 86px;
  height: 100%;
}

/*****************************
 column 
******************************/
div.column {
  margin: 0 auto;
  width: 100%;
}

/*****************************
 column_wrapper 
******************************/
div.column_wrapper {
  margin: 0px auto;
  width: 1200px;
}

div.column_wrapper.max_w960px {
  margin: 0px auto;
  width: 960px;
}

/*
div.column_wrapper > h1, 
div.column_wrapper > h2, 
div.column_wrapper > h3, 
div.column_wrapper > h4 { 
	margin-left: 12px; 
}
div.column_wrapper > p, 
div.column_wrapper > ul, 
div.column_wrapper > dl, 
div.column_wrapper > ol, 
div.column_wrapper > table { 
	margin-left: 24px; 
}
div.column_wrapper .padding_wrap > h1, 
div.column_wrapper .padding_wrap > h2, 
div.column_wrapper .padding_wrap > h3, 
div.column_wrapper .padding_wrap > h4 { 
	margin-left: 0px; 
}
div.column_wrapper .padding_wrap > p, 
div.column_wrapper .padding_wrap > ul, 
div.column_wrapper .padding_wrap > dl, 
div.column_wrapper .padding_wrap > ol, 
div.column_wrapper .padding_wrap > table { 
	margin-left: 12px; 
}
*/
.column_wrapper > div.float_column {
  float: left;
}

/*****************************
 footer 
******************************/
div#footer {
  clear: both;
  position: relative;
  margin-top: -104px;
  padding: 0;
  height: 104px;
  overflow: hidden;
}

#footer div.wrap {
  width: 100%;
  background-color: white;
}

#footer ul.menu_list {
  margin: 0 auto;
  width: 1200px;
}

#footer .menu_list li {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  width: 50%;
  height: 48px;
  line-height: 48px;
  text-align: center;
  font-family: 'Josefin Slab', serif;
  font-family: 'Quattrocento', serif;
  font-size: 123.1%;
  border-right: 2px solid gainsboro;
}

#footer .menu_list li:first-child {
  border-left: 2px solid gainsboro;
}

#footer .menu_list li a {
  display: block;
  height: 100%;
  color: #3c3c3c;
  vertical-align: top;
}

#footer .menu_list li a span.wrap {
  display: inline-block;
  height: 100%;
  vertical-align: top;
}

#footer .menu_list li img {
  width: auto;
  height: 100%;
  vertical-align: top;
}

#footer p.copyrights {
  clear: both;
  margin: 0;
  height: 24px;
  line-height: 24px;
  vertical-align: middle;
  text-align: center;
  color: white;
  background-image: url('../images/common_bg_02.png?1417018807');
}

#footer div.page_top {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 32px;
  text-align: right;
}

#footer div.page_top p {
  display: inline-block;
  margin: 0 24px 0 0;
  padding: 0;
  width: 32px;
  height: 32px;
  text-align: center;
  background-color: white;
}

#footer div.page_top a {
  display: block;
  width: 100%;
  height: 100%;
  color: white;
}

#footer div.page_top a i {
  margin-top: 4px;
}

/****************************************************
 common_style_blocks 
*****************************************************/
div.section {
  margin-bottom: 36px;
  padding: 36px 0;
  border-top: 2px solid #53017e;
}

/*****************************
 unit 
******************************/
div.unit {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  margin: 12px;
  padding: 24px;
  background-color: white;
}

div.unit *:last-child {
  margin-bottom: 0;
}

/*****************************
 unit_breadcrumbs 
******************************/
div.unit.breadcrumbs {
  padding: 0;
  height: 36px;
  line-height: 36px;
  overflow: hidden;
  background-color: transparent;
}

.unit.breadcrumbs li {
  float: left;
  position: relative;
  padding: 0 0 0 50px;
  height: 36px;
  line-height: 36px;
  background-color: white;
  background-image: url('../images/breadcrumbs_bg.png?1417032801');
  background-position: -8px center;
  background-repeat: no-repeat;
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .unit.breadcrumbs li {
    background-image: url('../images/breadcrumbs_bg@2x.png?1417032845');
    background-size: 50px 72px;
  }
}

.unit.breadcrumbs li:first-child {
  margin: 0;
  padding: 0 0 0 12px;
  background-image: none;
  border-radius: 4px 0px 0px 4px;
}

.unit.breadcrumbs li a {
  display: block;
  height: 36px;
  line-height: 36px;
}

.unit.breadcrumbs li a i {
  margin-top: 6px;
  margin-right: 0.5em;
  vertical-align: top;
}

.unit.breadcrumbs li:last-child a:after {
  content: '';
  display: inline-block;
  margin-left: 4px;
  width: 0px;
  height: 0px;
  line-height: 1em;
  vertical-align: top;
  border-top: 18px solid gainsboro;
  border-right: 0px solid gainsboro;
  border-left: 18px solid white;
  border-bottom: 18px solid gainsboro;
}

/*
.unit.breadcrumbs li a:before { 
	content: ''; 
	display: block;
	width: 0px; 
	height: 0px; 
	line-height: 1em; 
	vertical-align: middle; 
	border-top: 12px solid transparent; 
	border-right: 0px solid transparent; 
	border-left: 12px solid rgb(230,230,230); 
	border-bottom: 12px solid transparent; 
}
*/
/*****************************
 unit_block 
******************************/
div.unit.unit_display_blocks {
  margin: 0 0 24px;
  padding: 0;
  border-top: none;
}

.unit_blocks {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  padding: 24px;
  width: 276px;
  background-color: white;
  overflow: hidden;
  border-top: 12px solid #9b8134;
}

.unit_block h3 {
  margin-bottom: 0.5em;
}

.unit_block ul {
  margin: 0;
}

/*****************************
 unit_form 
******************************/
div.unit.unit_form {
  width: 100%;
  max-width: 720px;
  margin: 24px auto;
}

.unit_form > ul > li {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  display: table;
  padding: 0;
  width: 100%;
  border-top: 1px solid #e6e6e6;
}

.unit_form > ul > li.title {
  margin-top: 2em;
  padding-bottom: 0;
  background-image: url('../images/common_bg_02.png?1417018807');
  border-top: none;
  border-radius: 4px;
}

.unit_form .title span.head {
  width: 100%;
  padding: 0.5em 1em;
  font-size: 123.1%;
  color: white;
}

/*
.unit_form .title span.body { 
	padding: 0.5em 1em; 
	font-size: $font0; 
	color: white; 
}
*/
.unit_form span.head {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  display: table-cell;
  padding: 1.25em 0;
  width: 33%;
  vertical-align: top;
}

.unit_form span.body {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  padding: 1.25em 0;
  width: 100%;
  vertical-align: top;
  word-break: break-all;
}

.unit_form span.body + span.body {
  border-top: 1px dotted #e6e6e6;
}

.unit_form .head span.wrap,
.unit_form .body span.wrap {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  display: block;
  padding-right: 2em;
  width: 100%;
}

.unit_form .head span.caps,
.unit_form .body span.caps {
  margin-right: 0.5em;
}

.unit_form span.head {
  color: #53017e;
}

/*
.unit_form .head * + span.caps, 
.unit_form .body * + span.caps { 
	margin-left: 0.5em; 
}
*/
.unit_form .head span.notes,
.unit_form .head span.error,
.unit_form .body span.notes,
.unit_form .body span.error {
  clear: both;
  display: block;
}

.unit_form span.post_block {
  margin-bottom: 1em;
  display: block;
  padding: 1em;
  background-color: #faf5ff;
  border: 1px solid #53017e;
}

.unit_form .post_block span.caps {
  color: #9973ad;
}

.unit_form .post_block span.pics,
.unit_form .post_block span.caption {
  display: block;
}

.unit_form .post_block span.pics {
  margin-bottom: 1em;
}

.unit_form span.button {
  display: block;
  text-align: center;
}

.unit_form span.notes {
  padding-bottom: 0.25em;
  font-size: 93%;
  color: #9973ad;
}

.unit_form span.wrap + span.notes {
  padding-top: 0.25em;
}

.unit_form span.error {
  color: red;
}

.unit_form span.stamp {
  display: inline-block;
  margin-right: 0.5em;
  margin-top: -0.25em;
  padding: 0 0.25em;
  vertical-align: middle;
  color: white;
  font-weight: normal;
  background-color: #787878;
  border-radius: 2px;
}

.unit_form span.stamp.must {
  background-color: #f03741;
}

.unit_form span.stamp.secret {
  background-color: #787878;
}

/*
.unit_form .cap label { 
	display: inline-block; 
	padding: 8px; 
	font-size: 108%; 
	font-weight: bold; 
	color: rgb(120,120,120); 
}
*/
/*
.unit_form span.caption { 
	display: block; 
	margin-left: 24px; 
	padding: 0.25em 0.25em 0.25em 1.25em; 
	line-height: 1.6; 
	text-indent: -1em; 
	color: $light-2; 
	background-color: rgb(244,244,244); 
	border-radius: 4px; 
}
*/
.unit_form textarea {
  width: 100%;
  height: 12em;
  overflow: auto;
  resize: vertical;
}

.unit_form textarea,
.unit_form input[type="text"],
.unit_form input[type="password"],
.unit_form input[type="number"],
.unit_form input[type="email"],
.unit_form input[type="tel"] {
  width: 100%;
  background-color: #fafafa;
  border: 1px solid gainsboro;
}

.unit_form textarea:focus,
.unit_form input[type="text"]:focus,
.unit_form input[type="password"]:focus,
.unit_form input[type="number"]:focus,
.unit_form input[type="email"]:focus,
.unit_form input[type="tel"]:focus {
  background-color: white;
  border: 1px solid #53017e;
}

.unit_form .buttons {
  text-align: center;
}

a.btn,
input[type="button"],
input[type="submit"],
button[type="button"],
button[type="submit"] {
  margin: 20px;
}

.unit_form select {
  max-width: 70%;
  overflow: hidden;
}

/*
.unit_form textarea:focus, 
.unit_form input[type="text"]:focus, 
.unit_form input[type="password"]:focus, 
.unit_form input[type="number"]:focus, 
.unit_form input[type="email"]:focus,
.unit_form input[type="tel"]:focus { 
	color: #353535; 
	background-color: white; 
	border: 1px solid $light-2; 
}
.unit_form input[type="file"], 
.unit_form input[type="radio"], 
.unit_form input[type="checkbox"], 
.unit_form select { 
	margin: 8px 2%; 
}
.unit_form input[type="file"] + label, 
.unit_form input[type="radio"] + label, 
.unit_form input[type="checkbox"] + label, 
.unit_form select + label { 
	padding-right: 2%; 
}
.unit_form input[type="file"] { 
	width: 18em; 
}
.unit_form div.content_wrap textarea, 
.unit_form div.content_wrap input[type="text"], 
.unit_form div.content_wrap input[type="password"], 
.unit_form div.content_wrap input[type="number"], 
.unit_form div.content_wrap input[type="email"],
.unit_form div.content_wrap input[type="tel"] { 
}
.unit_form .last_name label, 
.unit_form .first_name label { 
	margin-right: 1em; 
	width: 2em; 
}
.unit_form .last_name input[type="text"], 
.unit_form .first_name input[type="text"] { 
	width: 80%; 
}
.unit_form .thumbnail.top_pics img { 
	width: 100%; 
}
.unit_form .btn_32 { 
	margin: 0 12px; 
}
.unit_form .btn_24 { 
	margin: 0 6px; 
}
.unit_form div.project_section_element { 
	margin-top: 12px; 
	margin-bottom: 24px; 
	margin-left: 24px; 
	background-color: $dark5; 
	border-radius: 8px; 
}
.unit_form div#project_section_list span.cap { 
	display: inline; 
}
.unit_form .project_section_element div.form-item:last-child { 
	border-bottom: none; 
}
.unit_form .thumbnail, 
.unit_form .project_section_element .popup-gallery { 
	text-align: center; 
}
.unit_form .project_section_element .head { 
	padding: 8px; 
	line-height: 32px; 
	overflow: hidden; 
	background-color: $dark4; 
	border-bottom: 1px solid white; 
	border-radius: 4px 4px 0px 0px; 
}
.unit_form .project_section_element .head span.title { 
	float: left; 
	box-sizing: border-box; 
	-webkit-box-sizing: border-box; 
	-ms-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	margin-right: -88px; 
	padding-right: 88px; 
	width: 100%; 
	line-height: 1.6; 
	font-size: 116%; 
	font-weight: bold; 
}
.unit_form .project_section_element .head a.flip_link { 
	display: inline-block; 
	float: right; 
	margin: 0 6px; 
	width: 32px; 
	height: 32px; 
	line-height: 32px; 
	text-align: center; 
}
.unit_form .project_section_element span.contents { 
	padding: 8px; 
	display: block; 
}
#project_section_list span.cap + div.wrapper .flip_link.up { 
	display: none; 
}
#project_section_list div.wrapper:last-child .flip_link.down { 
	display: none; 
}
.unit_form .project_section_element .bottom { 
	display: block; 
	padding: 8px; 
	text-align: center; 
	border-top: 1px solid white; 
	border-radius: 0px 0px 4px 4px; 
	background-color: #dbedee; 
	background-color: $dark4; 
}
div.project_section_element.add_element { 
	padding: 8px; 
	text-align: center; 
	border-radius: 4px; 
	background-color: #dbedee; 
	background-color: $dark4; 
}
.unit_form ul.error { 
	margin: 0; 
}
.unit_form .error li { 
	display: inline-block; 
	margin-right: 1em; 
	margin-bottom: 0.5rem; 
	padding: 0.5em; 
	color: white; 
	background-color: #d22d2d; 
	opacity: 0.9; 
	border-radius: 4px; 
}
*/
/*****************************
 complete 
******************************/
div.complete_message {
  text-align: center;
}

.complete_message div.wrap {
  display: inline-block;
  text-align: left;
}

/*****************************
 unit_mfp 
******************************/
div.unit_mfp {
  position: relative;
  margin: auto;
}

div.unit_mfp.unit_login_form {
  padding-top: 32px;
  padding-bottom: 32px;
  width: auto;
  max-width: 500px;
}

div.unit_mfp.unit_form {
  width: auto;
  max-width: 720px;
}

.unit_mfp div.wrap {
  padding: 24px 20px;
  background-color: white;
}

.unit_mfp .mfp-close {
  width: 32px !important;
  height: 32px !important;
  line-height: 32px !important;
}

button[type="button"].mfp-close,
button[type="button"].mfp-close:hover {
  background-color: transparent !important;
}

/*****************************
 unit_common_popup 
******************************/
div.unit_common_popup {
  position: absolute;
  z-index: 9999;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  width: 300px;
  height: 300px;
}

div.unit_common_popup p {
  display: block;
  filter: inherit;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  width: 300x;
  padding: 1em;
  color: white;
  background-color: #595656;
  opacity: 0.9;
  border-radius: 4px;
}

div.unit_common_popup p.alert {
  background-color: #d22d2d;
}

/*****************************
 unit_error 
******************************/
.unit_error {
  text-align: center;
}

.unit_error h2 {
  text-align: left;
}

.unit_error p.error_message {
  display: inline-block;
  padding-top: 2em;
  padding-bottom: 4em;
  font-size: 123.1%;
}

/****************************************************
 display_winery 
*****************************************************/
.display_winery div.unit.unit_blocks {
  padding: 0 0 24px;
  overflow: visible;
}
.display_winery div.unit.unit_blocks .wrap {
  position: relative;
}
.display_winery div.unit.unit_blocks .balloon_label {
  z-index: 1000;
  position: absolute;
  top: -20px;
  left: -.5em;
  padding: 0 0.5em 0 0.25em;
  line-height: 26px;
  font-size: 100%;
  color: white;
  background-color: #53017e;
}
.display_winery div.unit.unit_blocks .balloon_label:after {
  content: '';
  display: block;
  position: absolute;
  bottom: -8px;
  left: 0.75em;
  width: 0;
  height: 0;
  line-height: 1em;
  border-top: 8px solid #53017e;
  border-right: 0px solid transparent;
  border-bottom: 0px solid transparent;
  border-left: 8px solid transparent;
}
.display_winery div.unit.unit_blocks .balloon_label i {
  margin-right: 0.25em;
}

.display_winery .unit_blocks div.pics {
  position: relative;
  height: 96px;
  overflow: hidden;
  -webkit-transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out;
  -ms-transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out;
  -moz-transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out;
  -o-transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out;
  transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out;
}

.display_winery .unit_blocks div.pics:hover {
  height: 207px;
  margin-bottom: -111px;
  -webkit-transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out;
  -ms-transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out;
  -moz-transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out;
  -o-transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out;
  transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out;
}

.display_winery .unit_blocks .pics a {
  display: block;
}

.display_winery .unit_blocks .pics img {
  margin-top: -12.5%;
  width: 100%;
  height: auto;
  -webkit-transition: margin-top 0.5s ease-in-out;
  -ms-transition: margin-top 0.5s ease-in-out;
  -moz-transition: margin-top 0.5s ease-in-out;
  -o-transition: margin-top 0.5s ease-in-out;
  transition: margin-top 0.5s ease-in-out;
}

.display_winery .unit_blocks .pics:hover img {
  margin-top: 0;
  -webkit-transition: margin-top 0.5s ease-in-out;
  -ms-transition: margin-top 0.5s ease-in-out;
  -moz-transition: margin-top 0.5s ease-in-out;
  -o-transition: margin-top 0.5s ease-in-out;
  transition: margin-top 0.5s ease-in-out;
}

.display_winery div.unit.unit_blocks h3 {
  margin-top: 0.75em;
  margin-bottom: 0.75em;
  padding: 0 24px;
  font-weight: normal;
}

.display_winery div.unit.unit_blocks h3 a {
  color: #53017e;
}

.display_winery div.unit.unit_blocks ul {
  margin-bottom: 0;
  padding: 0 24px;
}

/****************************************************
 Google_Map 
*****************************************************/
.map_frame {
  position: relative;
  padding-bottom: 400px;
  height: 0;
  overflow: hidden;
}

.map_frame iframe,
.map_frame object,
.map_frame embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 400px;
}

/****************************************************
 top 
*****************************************************/
/*****************************
 unit_top_search 
******************************/
div.column.top_introduce_search {
  float: left;
  width: 75%;
}

div.column.top_introduce_search > div.unit {
  padding: 0;
}

.top_introduce_search div.top_introduce {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  padding: 0 24px 24px;
  width: 396px;
}

.top_introduce_search h2 {
  margin-bottom: 24px;
  padding: 24px 24px 0px;
  color: #9b8134;
}

.top_introduce_search div.top_introduce p span.pics {
  float: left;
  margin-left: -60px;
  margin-right: 2em;
  margin-bottom: -36px;
}

.top_introduce_search div.top_introduce p span.pics img {
  width: auto;
  height: 280px;
}

.top_introduce_search div.area_search {
  float: right;
  margin-top: -94px;
  width: 480px;
}

.top_introduce_search .area_search div.image_maps {
  width: 480px;
}

/*****************************
 unit_top_news 
******************************/
div.column.top_news {
  float: left;
  width: 25%;
}

div.unit.top_news {
  padding: 12px;
  height: 360px;
  background-color: #9b8134;
  background-color: #43273b;
  color: white;
  overflow-y: scroll;
}

.unit.top_news h2 {
  margin-bottom: 0.5em;
  font-size: 153.9%;
  font-weight: normal;
  color: white;
}

.unit.top_news .news_history li {
  padding: 0.5em 0;
  word-wrap: break-word;
  border-top: 1px dotted white;
}

.unit.top_news .news_history li a {
  color: white;
}

.unit.top_news span.date {
  display: block;
}

.unit.top_news span.info {
  display: block;
  padding-left: 0.5em;
  font-size: 85%;
  line-height: 1.5;
  color: #b4a9b1;
}

/****************************************************
 winery_detail 
*****************************************************/
.winery_detail div.column {
  width: 50%;
}

.winery_detail div.unit {
  padding: 0;
  position: relative;
}
.winery_detail div.unit .balloon_label {
  z-index: 1000;
  position: absolute;
  top: -12px;
  left: -.5em;
  line-height: 26px;
  font-size: 100%;
  color: white;
  background-color: #53017e;
}
.winery_detail div.unit .balloon_label:after {
  content: '';
  display: block;
  position: absolute;
  bottom: -8px;
  left: 0.75em;
  width: 0;
  height: 0;
  line-height: 1em;
  border-top: 8px solid #53017e;
  border-right: 0px solid transparent;
  border-bottom: 0px solid transparent;
  border-left: 8px solid transparent;
}
.winery_detail div.unit .balloon_label a {
  display: block;
  padding: 0 0.5em 0 0.25em;
  color: white;
}
.winery_detail div.unit .balloon_label a:hover {
  background-color: #8644a9;
}
.winery_detail div.unit .balloon_label i {
  margin-right: 0.5em;
}
.winery_detail div.unit .balloon_label i.icon_arrow_down {
  margin-top: 2px;
  margin-right: 0;
}

.winery_detail div.unit > dl {
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.winery_detail .unit > dl dt {
  padding: 0.5em 12px;
  color: white;
  font-size: 138.5%;
  background-color: #9b8134;
  background-image: url('../images/common_bg_02.png?1417018807');
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .winery_detail .unit > dl dt {
    background-image: url('../images/common_bg_02.png?1417018807');
    background-size: 393px 93px;
  }
}

.winery_detail .unit > dl > dd {
  float: left;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  padding: 12px 8px;
  width: 100%;
  font-size: 108%;
  border-top: 1px solid #f0f0f0;
}

.winery_detail .unit > dl > dd span.wrap {
  display: block;
}

.winery_detail .unit > dl > dd .wrap span.caps {
  display: table-cell;
  padding-right: 1em;
  width: 108px;
  font-size: 80%;
  color: #9b8134;
}

.winery_detail .unit > dl > dd .wrap span.caps i {
  margin-right: 0.5em;
}

.winery_detail .unit > dl > dd .wrap span.body {
  display: table-cell;
}

.winery_detail .unit p.main_pics {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.winery_detail .unit p.main_pics img {
  width: 100%;
  height: auto;
}

.winery_detail .unit p.name {
  margin: 0;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  padding: 12px;
  font-family: 'Josefin Slab', serif;
  font-family: 'Quattrocento', serif;
  font-size: 182%;
  color: #53017e;
}

.winery_detail .unit p.name span.label_state {
  font-size: 14px;
}

/*****************************
 Address & Contacts 
******************************/
.winery_detail .unit > .address .caps a.btn {
  margin: 0.5em 0 0 0;
}

.winery_detail .unit > .address span.address_02,
.winery_detail .unit > .address span.address_01 {
  padding-right: 0.5em;
}

.winery_detail .unit > .address dd.tel {
  width: 50%;
}

.winery_detail .unit > .address dd.fax {
  width: 50%;
  border-left: 1px solid #f0f0f0;
}

.winery_detail .unit .link span.body {
  vertical-align: middle;
  word-break: break-all;
}

.winery_detail .unit .link span.num {
  position: relative;
  display: inline-block;
  padding: 0 0.5em;
  height: 2em;
  line-height: 2em;
  background-color: gainsboro;
  border-radius: 4px;
}

.winery_detail .unit .link span.num:before {
  content: '';
  position: absolute;
  display: inline-block;
  left: 0;
  top: 50%;
  margin-left: -6px;
  margin-top: -6px;
  width: 0px;
  height: 0px;
  line-height: 1em;
  border-top: 6px solid transparent;
  border-right: 6px solid gainsboro;
  border-left: 0px solid transparent;
  border-bottom: 6px solid transparent;
}

.winery_detail .unit > ul > li.hour {
  clear: left;
  width: 25%;
}

.winery_detail .unit > ul > li.close {
  width: 75%;
}

/*****************************
 Language Support & Services 
******************************/
.winery_detail .unit dd.restaurant {
  width: 33%;
}

.winery_detail .unit dd.cellar_door {
  width: 33%;
  border-left: 1px solid #f0f0f0;
}

.winery_detail .unit dd.tasting {
  width: 33%;
  border-left: 1px solid #f0f0f0;
}

/*****************************
 report 
******************************/
.winery_detail .unit.report {
  padding: 0;
}
.winery_detail .unit.report h3 {
  margin-bottom: 0;
  padding: 0.5em 12px;
  color: white;
  font-size: 138.5%;
  background-color: #9b8134;
  background-image: url('../images/common_bg_02.png?1417018807');
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .winery_detail .unit.report h3 {
    background-image: url('../images/common_bg_02.png?1417018807');
    background-size: 393px 93px;
  }
}
.winery_detail .unit.report h3 i {
  margin-right: 0.25em;
}
.winery_detail .unit.report .text {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  padding: 2em 1.5em 1.5em;
  width: 100%;
}
.winery_detail .unit.report .text p {
  margin-bottom: 1em;
}
.winery_detail .unit.report .pics {
  background-color: #fcfcfc;
  border-top: 1px solid #f2f2f2;
}
.winery_detail .unit.report .pics a {
  float: left;
  position: relative;
  display: block;
  width: 20%;
  overflow: hidden;
}
.winery_detail .unit.report .pics a:before {
  content: '';
  display: block;
  padding-top: 100%;
}
.winery_detail .unit.report .pics a img {
  position: absolute;
  top: 0;
  margin-left: -43%;
  width: auto;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
}

/*****************************
 Maps 
******************************/
div.unit#winery_detail_map {
  padding: 0;
}
#winery_detail_map h3 {
  margin-bottom: 0;
  padding: 0.5em 12px;
  color: white;
  font-size: 138.5%;
  background-color: #9b8134;
  background-image: url('../images/common_bg_02.png?1417018807');
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  #winery_detail_map h3 {
    background-image: url('../images/common_bg_02.png?1417018807');
    background-size: 393px 93px;
  }
}

/*****************************
 tripadvisor_(Hohtels, Restaurants, and Sightseeing nearby) 
******************************/
.winery_detail div.unit.others {
  overflow: hidden;
}
.winery_detail div.unit.others h3 {
  margin-bottom: 0;
  padding: 0.5em 12px;
  color: white;
  font-size: 138.5%;
  background-color: #9b8134;
  background-image: url('../images/common_bg_02.png?1417018807');
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .winery_detail div.unit.others h3 {
    background-image: url('../images/common_bg_02.png?1417018807');
    background-size: 393px 93px;
  }
}

/****************************************************
 Tips for Visit 
*****************************************************/
.column_wrapper.tips_for_visit h3 {
  margin-bottom: 1em;
  line-height: 32px;
}
.column_wrapper.tips_for_visit div.section {
  margin-bottom: 0;
}

dl.tips_for_visit {
  margin-bottom: 48px;
}

dl.tips_for_visit dt {
  padding: 1em 0.5em;
  font-size: 138.5%;
  font-weight: bold;
  border-top: 1px solid #e6e6e6;
  cursor: pointer;
}

dl.tips_for_visit dd {
  display: none;
  padding: 0.5em 0.5em 1em 1.5em;
}

dl.tips_for_visit dd.open {
  display: block;
}

/****************************************************
 about_us 
*****************************************************/
.column_wrapper.about_us p span.pics {
  float: left;
  padding: 0.5em 1em 1em 0;
  text-align: center;
}

.column_wrapper.about_us p span.pics span.caption {
  display: block;
  padding-top: 0.5em;
  color: #53017e;
}

/****************************************************
 genuine_japanese_wine 
*****************************************************/
/****************************************************
 for_japanese_winery 
*****************************************************/
/****************************************************
 english_support 
*****************************************************/
.english_support div.translate_price_sample h4 {
  margin-bottom: 0.5em;
}

.english_support div.translate_price_sample h4:before {
  content: '■';
}

.english_support .translate_price_sample table.price {
  margin: 0 auto 36px;
}

.english_support .translate_price_sample table.price th {
  background-color: #f8f8f8;
}

.english_support .translate_price_sample .price {
  margin: 12px auto 36px;
}

.english_support .translate_price_sample .sample {
  margin: 12px auto 36px;
  border: 1px solid #787878;
}

.english_support .translate_price_sample .sample th {
  background-color: #f8f8f8;
}

.english_support .translate_price_sample div.sample {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  margin: 12px auto 24px;
  padding: 1em;
  border: 1px solid #787878;
}

/****************************************************
 magnific_popup 
*****************************************************/
.mfp-zoom-out-cur button[type="button"] {
  background: none !important;
}

.mfp-content,
.mfp-iframe-scaler iframe,
iframe.mfp-iframe {
  max-width: 75% !important;
}

.mfp-iframe-scaler {
  padding-top: 80% !important;
}

button[type="button"].mfp-close {
  margin: 0 !important;
}

button[type="button"].mfp-arrow {
  margin: 0 !important;
  -webkit-transition: none;
  -ms-transition: none;
  -moz-transition: none;
  -o-transition: none;
  transition: none;
}

/**********************************************************************
 responsive_over_1240px 
***********************************************************************/
@media screen and (min-width: 1200px) {
  /****************************************************
   common_layout_containers 
  *****************************************************/
  /*****************************
   header 
  ******************************/
  /*****************************
   base_width 
  ******************************/
  /*****************************
   column_main 
  ******************************/
  /*****************************
   footer 
  ******************************/
  /*****************************
   tab 
  ******************************/
  /****************************************************
   common_style_blocks 
  *****************************************************/
  /****************************************************
   responsive_common 
  *****************************************************/
  span.only_960,
  br.only_960,
  span.only_720,
  br.only_720,
  span.only_sp,
  br.only_sp {
    display: none;
  }

  tr.only_960,
  tr.only_720,
  tr.only_sp {
    display: none;
  }

  div.only_960,
  ul.only_960,
  dl.only_960,
  dt.only_960,
  dd.only_960,
  p.only_960,
  div.only_720,
  ul.only_720,
  dl.only_720,
  dt.only_720,
  dd.only_720,
  p.only_720,
  div.only_sp,
  ul.only_sp,
  dl.only_sp,
  dt.only_sp,
  dd.only_sp,
  p.only_sp {
    display: none;
  }

  span.only_1200,
  br.only_1200 {
    display: inline;
  }

  tr.only_1200 {
    display: table-row;
  }

  div.only_1200,
  ul.only_1200,
  dl.only_1200,
  dt.only_1200,
  dd.only_1200,
  p.only_1200 {
    display: block;
  }
}
/* !END_@media */
/**********************************************************************
 responsive_over_960px 
***********************************************************************/
@media screen and (max-width: 1199px) {
  /****************************************************
   common_layout_containers 
  *****************************************************/
  /*****************************
   header 
  ******************************/
  #header div.wrap {
    width: 960px;
  }

  #header .menu_main li {
    font-size: 123.1%;
  }

  #header .menu_main li + li + li {
    font-size: 108%;
  }

  #header .menu_main li a {
    padding: 0 0.75em;
  }

  /*****************************
   footer 
  ******************************/
  #footer ul.menu_list {
    width: 960px;
  }

  /*****************************
   column_wrapper 
  ******************************/
  div.column_wrapper {
    width: 960px;
  }

  /****************************************************
   common_style_blocks 
  *****************************************************/
  /*****************************
   unit_block 
  ******************************/
  .unit_blocks {
    width: 296px;
  }

  /****************************************************
   top 
  *****************************************************/
  /*****************************
   unit_top_search 
  ******************************/
  .top_introduce_search div.top_introduce {
    width: 300px;
  }

  .top_introduce_search div.top_introduce p span.pics img {
    width: auto;
    height: 260px;
  }

  .top_introduce_search div.area_search {
    margin-top: -24px;
    width: 380px;
  }

  .top_introduce_search .area_search div.image_maps {
    width: 380px;
  }

  .top_introduce_search .area_search .image_maps img {
    width: 380px;
    height: auto;
  }

  /*****************************
   unit_top_news 
  ******************************/
  div.unit.top_news {
    height: 346px;
  }

  /****************************************************
   responsive_common 
  *****************************************************/
  span.only_1200,
  br.only_1200,
  span.only_720,
  br.only_720,
  span.only_sp,
  br.only_sp {
    display: none;
  }

  tr.only_1200,
  tr.only_720,
  tr.only_sp {
    display: none;
  }

  div.only_1200,
  ul.only_1200,
  dl.only_1200,
  dt.only_1200,
  dd.only_1200,
  p.only_1200,
  div.only_720,
  ul.only_720,
  dl.only_720,
  dt.only_720,
  dd.only_720,
  p.only_720,
  div.only_sp,
  ul.only_sp,
  dl.only_sp,
  dt.only_sp,
  dd.only_sp,
  p.only_sp {
    display: none;
  }

  span.only_960,
  br.only_960 {
    display: inline;
  }

  tr.only_960 {
    display: table-row;
  }

  div.only_960,
  ul.only_960,
  dl.only_960,
  dt.only_960,
  dd.only_960,
  p.only_960 {
    display: block;
  }
}
/* !END_@media */
/**********************************************************************
 responsive_720px_over 
***********************************************************************/
@media screen and (max-width: 959px) {
  /****************************************************
   common_layout_&_styles 
  *****************************************************/
  p.footer_bg_02 img {
    width: 100%;
  }

  /****************************************************
   common_layout_containers 
  *****************************************************/
  /*****************************
   header 
  ******************************/
  #header div.wrap {
    width: 720px;
  }

  #header h1 {
    line-height: 1.2;
    text-align: center;
  }

  /* !logo */
  #header p.logo {
    float: none;
    width: 100%;
  }

  p.logo a {
    background-position: center center;
    background-size: 310px auto;
  }

  /* !main_menu */
  #header ul.menu_main {
    float: none;
    width: 100%;
  }

  #header .menu_main li {
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    width: 25%;
    height: 40px;
    line-height: 40px;
    font-size: 1rem;
    border-right: 1px solid gainsboro;
  }

  #header .menu_main li:first-child {
    border-left: 1px solid gainsboro;
  }

  #header .menu_main li:last-child {
    border-right: 1px solid gainsboro;
  }

  #header .menu_main li a {
    padding: 0;
    line-height: 40px;
    vertical-align: middle;
  }

  #header .menu_main li a span.wrap {
    vertical-align: middle;
    line-height: 1.2;
  }

  /*****************************
   footer 
  ******************************/
  #footer ul.menu_list {
    width: 720px;
  }

  /*****************************
   column_wrapper 
  ******************************/
  div.column_wrapper,
  div.column_wrapper.max_w960px {
    width: 720px;
  }

  /****************************************************
   common_style_blocks 
  *****************************************************/
  /*****************************
   unit_block 
  ******************************/
  .unit_blocks {
    width: 336px;
  }

  /****************************************************
   top 
  *****************************************************/
  /*****************************
   unit_top_search 
  ******************************/
  div.column.top_introduce_search {
    float: left;
    width: 67%;
  }

  .top_introduce_search div.top_introduce {
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    float: none;
    width: 100%;
  }

  .top_introduce_search div.top_introduce p span.pics img {
    width: auto;
    height: 220px;
  }

  .top_introduce_search div.top_introduce p span.pics {
    float: left;
    margin-left: -36px;
    margin-right: 2em;
    margin-bottom: -120px;
  }

  .top_introduce_search div.area_search {
    float: none;
    width: 100%;
    height: auto;
  }

  .top_introduce_search .area_search div.image_maps {
    width: 100%;
    height: auto;
  }

  .top_introduce_search .area_search div.image_maps img {
    width: 100%;
    height: auto;
  }

  /*****************************
   unit_top_news 
  ******************************/
  div.unit.top_news {
    height: 580px;
  }

  div.column.top_news {
    float: left;
    width: 33%;
  }

  /****************************************************
   winery_detail 
  *****************************************************/
  /*
  div.column_wrapper.winery_detail { 
  	width: 720px !important; 
  }
  */
  .winery_detail .unit > dl > dd span.wrap {
    display: table;
    width: 100% !important;
  }

  .winery_detail .unit > dl > dd .wrap span.caps {
    width: 40%;
  }

  /*****************************
   Link 
  ******************************/
  .winery_detail .unit > dl > dd.link_j .wrap span.caps,
  .winery_detail .unit > dl > dd.link_e .wrap span.caps {
    display: block;
    width: 100%;
  }

  .winery_detail .unit > dl > dd.link_j .wrap span.body,
  .winery_detail .unit > dl > dd.link_e .wrap span.body {
    display: block;
    width: 100%;
    text-align: center;
  }

  /*****************************
   Language Support & Services 
  ******************************/
  .winery_detail .unit > dl > dd.restaurant .wrap span.caps,
  .winery_detail .unit > dl > dd.cellar_door .wrap span.caps,
  .winery_detail .unit > dl > dd.tasting .wrap span.caps {
    display: block;
    width: 100%;
  }

  .winery_detail .unit > dl > dd.restaurant .wrap span.body,
  .winery_detail .unit > dl > dd.cellar_door .wrap span.body,
  .winery_detail .unit > dl > dd.tasting .wrap span.body {
    display: block;
    width: 100%;
    text-align: right;
  }

  /****************************************************
   Tips for Visit 
  *****************************************************/
  /****************************************************
   about_us 
  *****************************************************/
  /****************************************************
   genuine_japanese_wine 
  *****************************************************/
  /****************************************************
   for_japanese_winery 
  *****************************************************/
  /****************************************************
   responsive_common 
  *****************************************************/
  span.only_1200,
  br.only_1200,
  span.only_960,
  br.only_960,
  span.only_sp,
  br.only_sp {
    display: none;
  }

  tr.only_1200,
  tr.only_960,
  tr.only_sp {
    display: none;
  }

  div.only_1200,
  ul.only_1200,
  dl.only_1200,
  dt.only_1200,
  dd.only_1200,
  p.only_1200,
  div.only_960,
  ul.only_960,
  dl.only_960,
  dt.only_960,
  dd.only_960,
  p.only_960,
  div.only_sp,
  ul.only_sp,
  dl.only_sp,
  dt.only_sp,
  dd.only_sp,
  p.only_sp {
    display: none;
  }

  span.only_720,
  br.only_720 {
    display: inline;
  }

  tr.only_720 {
    display: table-row;
  }

  div.only_720,
  ul.only_720,
  dl.only_720,
  dt.only_720,
  dd.only_720,
  p.only_720 {
    display: block;
  }
}
/* !END_@media */
/**********************************************************************
 responsive_SP_(under_719px) 
***********************************************************************/
@media screen and (max-width: 719px) {
  /****************************************************
   reset_masonry 
  *****************************************************/
  .m_wrapper,
  .m_box {
    position: static !important;
    height: auto !important;
  }

  /****************************************************
   common_layout_containers 
  *****************************************************/
  html {
    font-size: 108%;
  }

  h2 {
    margin-bottom: 1em;
    font-size: 1.5rem;
  }

  h2.lang_jp {
    font-size: 1.3rem;
  }

  h3 {
    font-size: 1.2rem;
  }

  h3.lang_jp {
    font-size: 1.1rem;
  }

  h4 {
    font-size: 167%;
  }

  h4.lang_jp {
    font-size: 138.5%;
  }

  h5 {
    font-size: 153.9%;
  }

  h5.lang_jp {
    font-size: 123.1%;
  }

  textarea,
  select,
  input[type="text"],
  input[type="password"],
  input[type="number"],
  input[type="email"],
  input[type="tel"] {
    font-size: 1rem;
  }

  /*******************
   inline_styling 
  ********************/
  /*
  .w_100pc, 
  .w_75pc, 
  .w_70pc, 
  .w_65pc, 
  .w_60pc, 
  .w_50pc, 
  .w_45pc, 
  .w_40pc, 
  .w_35pc, 
  .w_33pc, 
  .w_25pc { 
  	width: 100% !important; 
  }
  */
  .omit_mist_x {
    margin-bottom: 0px;
  }

  .label_status {
    line-height: 16px;
  }

  /*******************
   tricks 
  ********************/
  /*****************************
   header 
  ******************************/
  #header div.wrap {
    width: 100%;
  }

  #header h1 {
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0.5em;
    height: auto;
    text-align: left;
    font-size: 0.6rem;
    background-image: url('../images/common_bg_02.png?1417018807');
  }

  /* !logo */
  #header p.logo {
    border-bottom: 1px solid gainsboro;
  }

  #header .menu_main li {
    height: 56px;
    line-height: 56px;
    font-size: 0.8rem;
  }

  #header .menu_main li:first-child {
    border-left: none;
  }

  #header .menu_main li:last-child {
    border-right: none;
  }

  #header .menu_main li a {
    line-height: 56px;
  }

  #header .menu_main li a span.header_04 {
    line-height: 1;
    font-size: 0.7rem;
  }

  /* !fixed_menu_bar */
  /*
  .fixed { 
  	z-index: 100; 
  	position: fixed; 
  	top: 0px; 
  }
  div#header.fixed { 
  	height: 48px; 
  }
  #header.fixed h1 { 
  	display: none; 
  }
  #header.fixed ul.menu_main { 
  	height: 48px; 
  }
  #header.fixed ul.menu_main li { 
  	height: 48px; 
  }
  */
  /*****************************
   main_container 
  ******************************/
  /*****************************
   base_width 
  ******************************/
  /*
  	div.base_width { 
  		width: 100%; 
  	}
  	div.column_wrapper > h1, 
  	div.column_wrapper > h2, 
  	div.column_wrapper > h3, 
  	div.column_wrapper > h4 { 
  		margin-left: 4%; 
  	}
  	div.column_wrapper > p, 
  	div.column_wrapper > ul, 
  	div.column_wrapper > dl, 
  	div.column_wrapper > ol, 
  	div.column_wrapper > table { 
  		margin-left: 6%; 
  	}
  	div.column_wrapper .padding_wrap > h1, 
  	div.column_wrapper .padding_wrap > h2, 
  	div.column_wrapper .padding_wrap > h3, 
  	div.column_wrapper .padding_wrap > h4 { 
  		margin-left: 0; 
  	}
  	div.column_wrapper .padding_wrap > p, 
  	div.column_wrapper .padding_wrap > ul, 
  	div.column_wrapper .padding_wrap > dl, 
  	div.column_wrapper .padding_wrap > ol, 
  	div.column_wrapper .padding_wrap > table { 
  		margin-left: 2%; 
  	}
  	.column.float_l, 
  	.column.float_r { 
  		float: none; 
  	}
  */
  /*****************************
   column_wrapper 
  ******************************/
  div.column_wrapper,
  div.column_wrapper.max_w960px {
    width: 100%;
  }

  .column_wrapper > div.float_column {
    float: none;
  }

  /*****************************
   footer 
  ******************************/
  #footer ul.menu_list {
    width: 100%;
  }

  #footer .menu_list li a {
    line-height: 48px;
  }

  #footer .menu_list li a span.wrap {
    font-size: 0.75rem;
    line-height: 48px;
  }

  #footer p.copyrights {
    font-size: 0.6rem;
  }

  #footer .menu_list li:first-child {
    border-left: none;
  }

  #footer .menu_list li:last-child {
    border-right: none;
  }

  #footer .menu_list li img {
    width: auto;
    max-width: 96%;
    height: auto;
    max-height: 100%;
    vertical-align: bottom;
  }

  p.footer_bg_01 {
    background-size: auto 100%;
  }

  p.footer_bg_01 img {
    width: 50%;
    height: auto;
  }

  p.footer_bg_02 {
    position: relative;
    z-index: -2;
    margin: 0;
    padding: 0;
  }

  /****************************************************
   common_style_blocks 
  *****************************************************/
  div.section {
    margin-bottom: 24px;
    padding: 24px 0;
  }

  /*****************************
   unit 
  ******************************/
  div.unit {
    margin: 12px 2%;
    padding: 16px 4%;
  }

  div.w60pc {
    border-right: none;
  }

  /*****************************
   unit_block 
  ******************************/
  .unit_blocks {
    float: none;
    margin: 12px 2%;
    width: 96%;
  }

  /*****************************
   unit_form 
  ******************************/
  div.unit.unit_form {
    margin: 12px 2% 24px;
    width: 96%;
  }

  .unit_form > ul > li {
    padding-bottom: 1em;
  }

  .unit_form .title span.head {
    padding: 0.5em;
    font-size: 1rem;
  }

  .unit_form span.cap {
    display: block;
    width: 100% !important;
  }

  .unit_form span.head {
    display: block;
    width: 100%;
    overflow: hidden;
  }

  .unit_form span.body {
    display: block;
    padding: 0 2% 0 4%;
    width: 100%;
    overflow: hidden;
  }

  .unit_form .head span.wrap,
  .unit_form .body span.wrap {
    padding-right: 0.5em;
    padding-left: 0.5em;
    /*
    	float: none; 
    	display: block; 
    	padding-right: 0; 
    */
  }

  .unit_form .head span.caps,
  .unit_form .body span.caps {
    font-size: 0.7rem;
  }

  .unit_form div.project_section_element {
    margin-left: 0;
  }

  .unit_form textarea,
  .unit_form input[type="text"],
  .unit_form input[type="password"],
  .unit_form input[type="number"],
  .unit_form input[type="email"],
  .unit_form input[type="tel"] {
    margin: 8px auto;
    width: 100%;
  }

  .unit_form input[type="radio"],
  .unit_form input[type="checkbox"] {
    width: 20px;
    height: 20px;
    line-height: 20px;
    vertical-align: middle;
  }

  .unit_form input[type="file"] {
    width: auto;
  }

  .unit_form input[type="file"] + label,
  .unit_form input[type="radio"] + label,
  .unit_form input[type="checkbox"] + label {
    line-height: 20px;
  }

  .unit_form .last_name,
  .unit_form .first_name {
    text-align: right;
  }

  /****************************************************
   Google_Map 
  *****************************************************/
  .map_frame {
    padding-bottom: 200px;
  }

  .map_frame iframe,
  .map_frame object,
  .map_frame embed {
    height: 200px;
  }

  /****************************************************
   top 
  *****************************************************/
  .top_introduce_search div.top_introduce {
    padding: 12px 4%;
  }

  .top_introduce_search h2 {
    margin-bottom: 0.5em;
    padding: 12px 12px 0px;
    font-size: 1.3rem;
  }

  .top_introduce_search div.top_introduce p span.pics {
    margin-left: -24px;
    margin-bottom: 0px;
  }

  /*****************************
   unit_top_search 
  ******************************/
  div.column.top_introduce_search {
    float: none;
    width: 100%;
  }

  /*****************************
   unit_top_news 
  ******************************/
  div.unit.top_news {
    height: auto;
  }

  div.column.top_news {
    float: none;
    width: 100%;
  }

  /****************************************************
   display_winery 
  *****************************************************/
  .display_winery .unit_blocks div.pics {
    height: auto;
  }

  .display_winery .unit_blocks div.pics:hover {
    height: auto;
    margin-bottom: 0;
  }

  .display_winery .unit_blocks .pics img {
    margin-top: 0%;
  }

  /****************************************************
   winery_detail 
  *****************************************************/
  .winery_detail div.column {
    width: 100%;
  }

  .winery_detail div.unit .balloon_label {
    top: -2px;
    left: -1%;
  }

  /*****************************
   Address & Contacts 
  ******************************/
  .winery_detail .unit > dl > dd.tel .wrap span.caps,
  .winery_detail .unit > dl > dd.fax .wrap span.caps {
    display: block;
    width: 100%;
  }

  .winery_detail .unit > dl > dd.tel .wrap span.body,
  .winery_detail .unit > dl > dd.fax .wrap span.body {
    display: block;
    width: 100%;
    text-align: right;
  }

  /****************************************************
   Tips for Visit 
  *****************************************************/
  dl.tips_for_visit dt {
    padding: 0.75em 0.5em;
    font-size: 1rem;
  }

  /****************************************************
   about_us 
  *****************************************************/
  /****************************************************
   genuine_japanese_wine 
  *****************************************************/
  /****************************************************
   for_japanese_winery 
  *****************************************************/
  /****************************************************
   responsive_common 
  *****************************************************/
  span.only_sp,
  br.only_sp {
    display: inline;
  }

  tr.only_sp {
    display: table-row;
  }

  div.only_sp,
  ul.only_sp,
  dl.only_sp,
  dt.only_sp,
  dd.only_sp,
  p.only_sp {
    display: block;
  }

  span.only_1200,
  br.only_1200,
  span.only_960,
  br.only_960,
  span.only_720,
  br.only_720 {
    display: none;
  }

  tr.only_1200,
  tr.only_960,
  tr.only_720 {
    display: none;
  }

  div.only_1200,
  ul.only_1200,
  dl.only_1200,
  dt.only_1200,
  dd.only_1200,
  p.only_1200,
  div.only_960,
  ul.only_960,
  dl.only_960,
  dt.only_960,
  dd.only_960,
  p.only_960,
  div.only_720,
  ul.only_720,
  dl.only_720,
  dt.only_720,
  dd.only_720,
  p.only_720 {
    display: none;
  }
}
/* !END_@media */
