/*
Theme Name: エコヴィレッジ上福岡
Author: 株式会社リブラン
Author URI: https://livlan.com
Description:
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

This theme, like WordPress, is licensed under the GPL.
*/




/*

Key color:;
background-color: #e2ebe7;
color:#67736c;

*/


/*
====================================---------
http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
====================================--------- */

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;
}



/*
====================================
Kokorot Default
==================================== */
*{
  box-sizing:border-box;
}

a{
  color:inherit;
  text-decoration: none;
}
img{
  height:auto;
}

table{

}
thead{
  background-color: #eee;
}
tbody{

}
tr{
}
td,th{
  text-align: left;
  border:1px solid #ccc;
}






/*
====================================
Forms reset
==================================== */

/* Reset */
button,
select,
input[type="text"],
input[type="date"],
input[type="tel"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea {
  -webkit-appearance: none;
  font-family:
  "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN",
  "メイリオ", "Meiryo",sans-serif;
  background-color: #fff;
  border-radius: 0;
  border:0;
  outline:0;

  font-size: inherit;
  line-height: inherit;
  margin: 0;
  padding:0;
  vertical-align: baseline;
  box-shadow: none;
  background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0)); /* Removing the inner shadow on iOS inputs */
}

input:focus,
textarea:focus {
  /*background-color: #fff;
  border: 1px solid #c1c1c1;
  border: 1px solid rgba(51, 51, 51, 0.3);
  color: #222;*/
}

input:focus,
select:focus {
  /*outline: 2px solid #c1c1c1;
  outline: 2px solid rgba(51, 51, 51, 0.3);*/
}

button[disabled],
input[disabled],
select[disabled],
textarea[disabled] {
  cursor: default;
  opacity: .5;
}

button,
select,
input[type="text"],
input[type="date"],
input[type="tel"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="reset"],
input[type="button"],
textarea{
  font-size: 14px;
  height: 38px;
  line-height: 38px;
  width:auto;
  padding:0 10px;
  margin:0;

}
input[type="text"],
input[type="date"],
input[type="tel"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="reset"],
textarea{
  border: 1px solid #ccc;
}
textarea{
  height: auto;
  width: 100%;
  resize:vertical;
  height:200px;
}

input[type="search"] {
  -webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  padding:10px;
  overflow: auto;
  vertical-align: top;
  border:1px solid #d9cfc5;
}


select,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
  outline: 0;
  background-color: rgba(255,255,255,1);
  border: 1px solid #ccc;
}

input[type="checkbox"],
input[type="radio"] {
  padding: 0;
}






/*
====================================
Structrue
==================================== */
html{
  min-width:1120px;
  overflow-x:hidden;
  /*-webkit-font-smoothing:antialiased;*/
}
body{
  background-image: url(img/common/bg-wood-green.jpg);
  background-size:100px;
}
#page{
  overflow-x:hidden;
  width:100%;
}
#content{

}


.two-column-wrapper{
  overflow: hidden;
  padding-bottom:60px;
  border-bottom:1px dashed #999;
}
.two-column-wrapper .content-area{
  float:left;
  width:660px;
}
.two-column-wrapper .sidebar-area{
  float:right;
  width:280px;
}




/*
====================================
Typography
==================================== */
/* Not 'body', use '#page' instead for the debugging widnow*/
#page,
button,
input,
select,
textarea {
  font-family:
  "游ゴシック体", "Yu Gothic", "YuGothic",
  "游ゴシック Medium", "游ゴシック",
  "Noto Sans Japanese",
  "ヒラギノ角ゴ Pro W3",
  "メイリオ",sans-serif;
  font-size:14px;
  letter-spacing: 0.5px;
  color:#464e4b;
  line-height: 2.2;
}
::selection {
  color:#999;
  background-color:#ddd;
}

/* Placeholder text color -- selectors need to be separate to work. */
::-webkit-input-placeholder,
::-moz-placeholder,
:-ms-input-placeholder{
  color: #ccc;
  font-family:
  "游ゴシック体", "Yu Gothic", "YuGothic",
  "游ゴシック Medium", "游ゴシック",
  "ヒラギノ角ゴ Pro W3",
  "メイリオ",sans-serif;
  opacity: 1; /* Since FF19 lowers the opacity of the placeholder by default */
}



/*
====================================
Common styling classes.
*Use this sparingly
==================================== */
/* Clearfix */
/* Already implemented in /css/sytle.css */
/* Clearfix */
.cf:before,
.cf:after{
  content: " ";
  display: table;
}
.cf:after{
  clear: both;
}
.cf{
  *zoom: 1;
}



/* Disable selection of element */
.noselect {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}


/* Fonts */

.h-mincho-bold{
  font-family:
  "ヒラギノ明朝 ProN W6","HiraMinProN-W6",
  "HG明朝E", "ＭＳ Ｐ明朝","MS PMincho", "MS 明朝",
  serif;
}
.gothic{
  font-family:
  "ヒラギノ角ゴ ProN W3",
  "Hiragino Kaku Gothic ProN",
  "メイリオ", "Meiryo","ＭＳ Ｐゴシック","MS P Gothic",
  Verdana, Arial, Helvetica, sans-serif;
}
.yu-gothic{
  font-family:
  "游ゴシック体", "Yu Gothic", "YuGothic",
  "游ゴシック Medium", "游ゴシック",
  "ヒラギノ角ゴ Pro W3",
  "メイリオ",
  sans-serif;
}
.yu-mincho{
  font-family:
  "游明朝体", "Yu Mincho", "YuMincho",
  "ヒラギノ明朝 ProN W3", "HiraMinProN-W3",
  "HG明朝E", "ＭＳ Ｐ明朝","MS PMincho", "MS 明朝",
  serif;
}
.lora{
  font-family: Lora, serif;
}




/* No line breaks */
.one-line{
  white-space: nowrap;
  overflow: hidden;
  text-overflow:ellipsis;
}





/* BG image */
.bg-image{
  display: block;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  overflow: hidden;
}
.bg-image:before{
  display: block;
  content:'';
  width:100%;
  padding-bottom:100%;
}
.bg-image.size-contain{
  background-size:contain;
}

/* variants */
.bg-image.ratio-11:before{
  padding-bottom:100%;
}
.bg-image.ratio-43:before{
  padding-bottom:75%;
}
.bg-image.ratio-32:before{
  padding-bottom:66.6666%;
}
.bg-image.ratio-21:before{
  padding-bottom:50%;
}
.bg-image.ratio-23:before{
  padding-bottom:150%;
}
.bg-image.ratio-23:before{
  padding-bottom:133.3333%;
}
.bg-image img.fit{
  position: absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  object-position: center;
  object-fit: cover;
}
.bg-image img.fit.contain{
  object-fit: contain
}



a.bg-image{
  position: relative;
}
a.bg-image .zoom{
  display: block;
  background-position: center;
  background-image: url(img/common/zoom.png);
  background-size: 14px;
  background-repeat: no-repeat;
  background-color: rgba(255,255,255,0.5);
  position: absolute;
  bottom:1px;
  right:1px;
  width:18px;
  height:18px;
  transition:0.4s cubic-bezier(0.4, 0, 0, 1) all;
  /*box-shadow: 0 0 3px rgba(0,0,0,0.1);*/
}
a.bg-image:hover{
  opacity:0.9;
}
a.bg-image:hover .zoom{
  background-color: rgba(255,255,255,0.8);
  width:24px;
  height: 24px;
}




/*
====================================
Common UI component
==================================== */

/*


.post-edit-link{
  font-size:12px;
  color:#ff878d;
  font-weight: bold;
}

.link-underlined,
.meta .cats a{
  border-bottom: #aaa 1px dashed;
}
.link-underlined:hover,
.meta .cats a:hover{
  background:#fff3f3; color:#ff878d; border-bottom: #fff3f3 1px dashed;
}



/*
--------------------------------
Button
-------------------------------- */

.generic-pane{
  max-width:1060px;
  margin: 0 auto;
  position: relative;
}

.generic-pane:after{
/*  content:'';
  display: block;
  position: absolute;
  top:0;
  left:0;
  width:100%;
  height: 100%;
  background-color:rgba(230,10,0,0.06);*/
}
.generic-pane.narrow{
  max-width: 800px;
}


.generic-button,
input[type=submit] {
  display: block;
  position: relative;
  width:210px;
  height: 48px;
  line-height: 48px;
  padding:0;
  margin:0 auto;
  /*font-size:12px;*/
  text-align: center;
  background-color: #e2ebe7;
  color:#67736c;

  background-color: #8a9c8c;
  color:#fff;

  cursor:pointer;
  border-radius:1px;
}
.generic-button.icon{
  /*background-repeat:no-repeat;
  background-position: center right 12px;
  padding-right:22px;*/
}

.generic-button.icon-left{
  background-repeat:no-repeat;
  background-position: 12px center;
  padding-left:40px;
}


/* Internal link */
.generic-button.arrow{
  background-image: url(img/common/button-arrow-white.png);
  background-size: auto 12px;
  background-position: right 20px center;
  padding-right:20px;
  background-repeat: no-repeat;
  transition:0.5s cubic-bezier(0.4, 0, 0, 1) all;
}
.generic-button.arrow:hover{
  background-image: url(img/common/button-arrow-white-hover.png);
  background-position: right 10px center;
}
/* External link */
.generic-button.external{
  background-image: url(img/common/button-external-white.png);
  background-size: auto 18px;
  background-position: right 20px center;
  padding-right:20px;
  background-repeat: no-repeat;
  transition:0.5s cubic-bezier(0.4, 0, 0, 1) all;
}
.generic-button.external:hover{
  background-image: url(img/common/button-external-white-hover.png);
  /*background-position: right 10px center;*/
}

.generic-button.email{
  background-image: url(img/common/button-email-white.png);
  background-position: 15px center;
  padding-right:20px;
  background-size: 24px;
}


.generic-button.location{
  background-image: url(img/common/button-location-white.png);
  background-position: 14px center;
  background-size: 24px;
  padding-right:20px;
}








/* Side */
.generic-button.sidebar{
  height: 42px;
  line-height: 42px;
  font-size:12px;
  max-width:170px;
  letter-spacing: 0.1em;
}
.generic-button.sidebar.icon{
  background-position: center right 10px;
  padding-right:20px;
}




.generic-button.small{
  width:120px;
  height:36px;
  line-height: 36px;
  letter-spacing: 0.05em;
}



/* Mini */
.generic-button.mini{
  font-size:11px;
  line-height: 28px;
  height: 28px;
  max-width:90px;
}
.generic-button.mini.icon{
  background-position: center right 6px;
  padding-right:18px;
}


/* Disabled button */
.generic-button.mini.disabled{
  background-color: #eee;
  color:#999;
  cursor:auto;
}
.generic-button.mini.disabled:hover{
  opacity: 1;
}






.generic-button:hover,
input[type=submit]:hover{
  opacity:0.8;
}



/*
--------------------------------
Pagination
-------------------------------- */

.pagination-wrapper{
  text-align: right;
  margin:20px 0;
  overflow: hidden;
}

.pagination-nav{
  float:left;
  line-height: 24px;
  font-size: 12px;
  padding:0 4px;
}


.pagination {
  display: block;
  float:right;
  overflow: hidden;
  text-align: center;
}
.pagination .page-numbers{
  font-size:10px;
  display: block;
  float:left;
  line-height: 24px;
  width:24px;
  margin:0 1px;
  text-align: center;
  position: relative;
}
.pagination .page-numbers:not(.dots){
  background-color: #333;
  color:#fff;
}
.pagination .page-numbers:not(.dots):hover{
  opacity:0.8;
}

.pagination .page-numbers::after{
  /*content:'';*/
  position: absolute;
  top:0;
  bottom:0;
  right:0;
  margin:auto;
  height: 12px;
  width:2px;
  background-color:#999;
}
.pagination .page-numbers:last-child::after{
  content:none;
}

.pagination .page-numbers.current{
  opacity:1;
  color:inherit;
  background-color: transparent;
  border:#ccc 1px solid;
  line-height: 22px;
}


/*
--------------------------------
Breadcrumbs
-------------------------------- */
.breadcrumbs{
  list-style: none;
  line-height: 1.4;
  font-size:11px;
  opacity:0.8;
  padding:44px 2px 36px;
  padding:44px 2px 40px;
}
.breadcrumbs .item{
  display: inline;
}
.breadcrumbs .item:hover{
  text-decoration: underline;
  /*opacity:1;*/
}
.breadcrumbs .sep{
  margin:0 10px;
}




/*
====================================
Masthead
==================================== */
/* Site navigation */
.masthead,
.masthead-spacer{
  height:70px;

}
.masthead-spacer{

}

.masthead{
  position: absolute;
  z-index:999;
  top:0;
  left:0;
  width:100%;

  height:70px;
  padding:10px;

  background-image: url(img/common/bg-wood-green.jpg);
  position: fixed;
  backface-visibility:hidden;
  box-shadow: 0 0 10px rgba(0,0,0,0.1);

  animation-name: masthead-slide-in;
  animation-duration: 0.3s;
  animation-timing-function: cubic-bezier(0.4, 0.01, 0, 1);
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
}

.masthead > .inner{
  width: 100%;
  /*max-width: 1400px;*/
  height: 100%;
  margin:0 auto;
  position: relative;
  overflow: hidden;
}


.masthead .site-logo{
  float:left;
}
.masthead .site-logo img{
  display: block;
  height:50px;
}




/* Global nav */
.masthead .global-nav{
  float:right;
  height: 100%;
}
.masthead .global-nav .item{
  display: block;
  float:left;
  margin:0px 6px;
  line-height: 50px;
  font-size: 12px;
  letter-spacing: 0.04em;
  font-weight: bold;
  position: relative;
}

.masthead .global-nav .item:after{
  content:'';
  height:1px;
  background-color: #999;
  position: absolute;
  bottom:4px;
  left:0;
  right:0;
  margin:auto;
  width:80%;
  transition:0.5s cubic-bezier(0.4, 0, 0, 1) all;
  opacity:0;
}




/* Big buttons */
.masthead .global-nav .item.contact,
.masthead .global-nav .item.document,
.masthead .global-nav .item.reservation{
  height: 50px;
  margin:0 0 0 20px;
  width:160px;
  text-align: center;
  line-height:50px;
  letter-spacing: 0.12em;
  font-size:13px;
  font-weight: normal;
  padding-left:36px;

  /*color:#67736c;*/
  /*background-color: rgba(255,255,255,0.8);*/
  background-color: #8a9c8c;
  color:#fff;
  font-weight: normal;
  background-image: url(img/common/button-email-white.png);
  background-size:24px;
  background-repeat: no-repeat;
  background-position: 20px center;



}



/* Fixed */
.masthead .global-nav .item:hover:after{
  width:100%;
  left:0;
  opacity:1;
}


.masthead .global-nav .item.current:after{
  width:100%;
  left:0;
  opacity:1;
}


.masthead .global-nav .item.contact:after,
.masthead .global-nav .item.document:after,
.masthead .global-nav .item.reservation:after{
  content:none;
}


@keyframes masthead-slide-in{
  0%{
    transform:translateY(-100%);
  }
  100%{
    transform:translateY(0%);
  }
}













/* Masthead: fixed */
.masthead.transparent{
  background:transparent;
  box-shadow: none;
}


.masthead.transparent{
  animation-name: none;

}
.masthead.transparent .global-nav .item.contact,
.masthead.transparent .global-nav .item.reservation,
.masthead.transparent .global-nav .item.document{
  /*background-color: rgba(255,255,255,0.8)*/

}




/*
====================================
Hero header
==================================== */
/* Hero header */
.hero-header{
  width: 100%;
  /*padding:20px;*/
  position: relative;
  /*height:700px;*/
}


.hero-header .bg{
  margin:0 auto;
  display: block;
  width:100%;
  margin:0 auto;
  background-color: transparent;
  background-size: cover;
  background-repeat:no-repeat;
  background-position: center bottom;
  position: relative;
}
.hero-header .bg:before{
  padding-bottom:50%;
}
.hero-header > .main{
  position: absolute;
  top:0;
  left:0;
  right:0;
  /*width:1100px;*/
  margin:auto;
  height:100%;
}
.hero-header .tagline{
  position: absolute;
  top:16%;
  left:4%;
  font-size:38px;
  line-height: 1;
  background-color: rgba(255,255,255,0.7);
  padding:25px 20px 25px 30px;
}
.hero-header .tagline .line-1{
  font-size:13px;
  letter-spacing: 3px;
  text-indent: 2px;
}
.hero-header .tagline .line-2{
  font-size:34px;
  letter-spacing: 6px;
}
.hero-header .tagline .line-2 .l{
  display: block;
  margin-top:16px;
}

@media (min-width:1500px) {
  /*.hero-header .bg{
    width:1400px;
    margin:110px auto 60px;
  }
  .hero-header .tagline{
    top:9%;
    left:4%;
  }*/
}



/*
====================================
Hightlight News
==================================== */
.featured-news.pc{
  position: absolute;
  bottom:4px;
  right:4px;
  z-index: 1;
  width:360px;
}
.featured-news.pc{

}
.featured-news.pc .item{
  display:block;
  background-color: rgba(250,255,251,0.94);
  padding:8px;
  overflow: hidden;
  transition:0.1s opacity ease-out;

  background-position: right 10px center;
  background-repeat: no-repeat;
  background-image: url(img/common/button-arrow-green.png);
  background-size:14px;
}
.featured-news.pc .item:hover{
  opacity: 0.9
}
.featured-news.pc .item + .item{
  margin-top:4px;
}


.featured-news .item a{
  display: block;
}
.featured-news .item .image{
  float:right;
  width:80px;
  background-color: #ddd;
  position: relative;
  margin:-2px 0;
  margin-left:8px;
}
.featured-news .item .image img.fit.youtube{
  width:132%;
}
.featured-news .item .image img.play{
  display: block;
  position: absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  margin:auto;
  width:30px;
}
.featured-news .item .text{
  /*padding-left:102px;*/
  /*padding-top:2px;*/
}
.featured-news .item .text .attr{
  overflow: hidden;

}
.featured-news .item .text .attr .cat{
  display: block;
  background-color: #d07769;
  color:#fff;
  font-size:9px;
  line-height: 18px;
  padding:0 6px;
  float:left;
  /*margin-left:1px;*/
  letter-spacing: 1px;
}
.featured-news .item .text .title{
  font-size:12.4px;
  line-height: 1.5;
  margin-top:5px;
  letter-spacing: 0.2px;
  margin-bottom:-2px;
}

.featured-news .item .post-edit-link{
  font-size:9px;
  line-height: 18px;
  position: absolute;
  right:0px;
  top:0px;
  z-index: 1;
  background-color: rgba(255,255,255,0.96);
  /*color:#fff;*/
  padding:0 6px;
  font-size:10px;
}

@media (min-width:641px){
  /*.featured-news .item .text .title{
    white-space: nowrap;
    overflow: hidden;
    text-overflow:ellipsis;
  }*/
}
.featured-news.pc .item{
  animation-name: fade-in-news;
  animation-duration: 1s;
  animation-timing-function: cubic-bezier(0.2,0,0,0.7);
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: backwards;
  /*animation-play-state: running;*/
  opacity:1;
  transform:translateX(0px);
}
.featured-news.pc .item:nth-child(1){
  animation-delay: .2s;
}
.featured-news.pc .item:nth-child(2){
   animation-delay: .4s;
}
.featured-news.pc .item:nth-child(3){
   animation-delay: .6s;
}
@keyframes fade-in-news{
  0%{
    opacity:0;
    transform:translateX(-10px);
  }
  100%{
    opacity:1;
    transform:translateX(0);
  }

}




/*
====================================
Top highlight area 1
==================================== */
.hero-reservation{
  background-color: rgba(191, 204, 188, 0.1);
  color:#57665e;
  padding:0;
  padding:20px 0;
  overflow: hidden;
  position: relative;
  box-shadow: 0 0 10px rgba(0,0,0,0.12);
}
.hero-reservation .text{
  float:left;
  margin-right:240px;
}
.hero-reservation .text .lead{
  font-size:28px;
  line-height: 1.5;
  letter-spacing: 1.6px;
}
.hero-reservation .text .desc{
  font-size:14px;
  margin-top:6px;
  letter-spacing: 1px;
  line-height: 1.9;
  margin-bottom:-2px;
}
.hero-reservation .text .desc a{
  text-decoration: underline;
  font-weight: bold;
}
.hero-reservation .link{
  position: absolute;
  top:50%;
  transform:translateY(-50%);
  right:0;
  line-height: 54px;
  height: 54px;
  font-size:14px;
  /*background-color: #efded0;
  color:#6d5956;*/
}



/*
====================================
Top highlight area 2
==================================== */
.hero-banner{
  padding-top:30px;
  display: none;
}








/*
====================================
Hero header for a page
==================================== */
.hero-header-page{
  width: 100%;
  position: relative;
}


.hero-header-page > .bg{
  position: relative;
  display: block;
  width:100%;
  max-height: 340px;
  /*max-width:1400px;*/
  margin:0 auto;
  background-color: #f3f3f3;
  background-size: cover;
  background-repeat:no-repeat;
  background-position: center;
}
.hero-header-page > .bg:before{
  padding-bottom:28.571428%;
}
.hero-header-page > .main{
  position: absolute;
  height: 100%;
  /*width:1000px;*/
  max-height: 340px;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
}
.hero-header-page .header{

  padding:30px 40px;
  position: absolute;
  height: 120px;
  width:420px;
  top:100px;
  line-height: 1;
  background-color: rgba(255,255,255,0.8);
}
.hero-header-page .header .title{
  font-size:34px;
  /*font-weight: bold;*/
  letter-spacing: 0.3em
}
.hero-header-page .header .caption{
  font-size:13px;
  margin-top:18px;
  text-indent: 2px;
}



/*
====================================
Front section: Common
==================================== */
.front-section{
  padding:60px 0;
  overflow: hidden;
}


/*
====================================
Front section: First
==================================== */
.front-section.first{
  /*padding-bottom:0px;*/
}
.front-section.first .title{
  text-align: center;
}
.front-section.first .title .l.l-1{
  font-size:14px;
  line-height: 20px;
  letter-spacing: 0.5em;

}
.front-section.first .title .l.l-2{
  font-size:34px;
  line-height: 1.6;
  letter-spacing: 0.12em;
  margin-top:20px;
}
.front-section.first .desc br{
  /*display: none;*/
}
.front-section.first .desc{
  margin-top:15px;
  text-align: center;
  font-size:15px;
  line-height: 2.2;
}





/*
====================================
Front section: Lead
==================================== */
.front-section.lead{
  padding-top:0px;
}

.front-section.lead .image{
  display: block;
  width:540px;
  height: auto;
  float:left;
  background-color:#f3f3f3;
}
.front-section.lead .text{
  margin-left:620px;

}



.front-section .text .title{
  font-size:24px;
  letter-spacing: 0.12em;
  padding-top:40px;
  line-height: 1.8;
}
.front-section .text .sub-title{
  font-weight: bold;
  font-size:18px;
  margin-top:20px;
  /*display: block;*/
}
.front-section .text .desc{
  font-size:14px;
  margin-top:20px;
}
.front-section .text .link{
  margin-left:0;
  margin-top:30px;
}



/*
====================================
Front section: Location
==================================== */
.front-section.location{
  padding-top:0px;
}

.front-section.location .image{
  display: block;
  width:560px;
  height: auto;
  float:right;
  background-color:#f3f3f3;
}
.front-section.location .text{
  margin-right:620px;
}




/*
====================================
Front section: Concept
==================================== */
.front-section.concept{
  overflow: hidden;

}
.front-section.concept > .inner{
  position: relative;
}
.front-section.concept .bg{
  display: block;
  position: absolute;
  top:110px;
  left:90px;
  width:200%;
  height: 900px;
  /*margin:auto;*/
  background-image: url(img/common/bg-brown.jpg);

}

.front-concept-items{
  height: 1120px;
}

.front-concept-items .item{
  position: absolute;
}
.front-concept-items .item .header{
  border-left:1px solid #333;
  padding-left:30px;
  line-height: 1;

  position: relative;
  z-index: 1;
  width:420px;
}
.front-concept-items .item .header .title{
  font-size:28px;
  font-weight: bold;
  letter-spacing: 0.3em;
}
.front-concept-items .item .header .num{
  font-size: 11px;
  font-family: "Lora";
  font-style: italic;
  letter-spacing: 0.2em;

}
.front-concept-items .item .header .title .line{
  display: block;
  margin-top:16px;
}
.front-concept-items .item .body{
  width:320px;
}
.front-concept-items .item .body .image{
  display: block;
  width:100%;
}
.front-concept-items .item .body .desc{
  text-align: justify;
}


/* Concept 1
--------------------------- */
.front-concept-items .item.num-1{
  top:0;
  left:60px;
}
.front-concept-items .item.num-1 .header{

}
.front-concept-items .item.num-1 .body{
  position: absolute;
  width:720px;
  left:110px;
  top:96px;
}
.front-concept-items .item.num-1 .body .image{
  display: block;
  width:320px;
  float:left;
}
.front-concept-items .item.num-1 .body .desc{
  padding-left:360px;

}

/* Concept 2
--------------------------- */
.front-concept-items .item.num-2{
  top:310px;
  left:580px;
}
.front-concept-items .item.num-2 .body{
  position: absolute;
  left:60px;
  top:96px;
  width:320px;

}
.front-concept-items .item.num-2 .body .desc{
  margin-top:10px;
}

/* Concept 3
--------------------------- */
.front-concept-items .item.num-3{
  top:410px;
  left:0;
}
.front-concept-items .item.num-3 .body{
  position: absolute;
  left:50px;
  top:96px;
}
.front-concept-items .item.num-3 .body .desc{
  margin-top:10px;
}


/* Concept 4
--------------------------- */
.front-concept-items .item.num-4{
  top:920px;
  right:0px;
  width:780px;
}
.front-concept-items .item.num-4 .header{
  width:auto;
}
.front-concept-items .item.num-4 .header .line{
  display: inline-block;
}

.front-concept-items .item.num-4 .body{
  position: absolute;
  top:0;
  left:0;
  width:100%;
}
.front-concept-items .item.num-4 .body .image{
  position: absolute;
  top:-50px;
  right:0;
  width:320px;
}
.front-concept-items .item.num-4 .body .desc{
  position: absolute;
  top:80px;
  left:0;
  width:420px;
  /*padding-right:360px;*/
}



/*
====================================
Front section: Page nav
==================================== */
.front-section.nav{
  position: relative;
  overflow: hidden;
  background-size: cover;
  background-position: center top;
  backface-visibility:hidden;
  /*margin:30px 0;*/
  padding:45px 0;
}
/*
.front-section.nav .bg{
  position: absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-image: url(img/front-page/page-nav/bg.jpg);
  background-size: cover;
  background-position: center 0;
  backface-visibility:hidden;
}
*/
.front-section.nav > .inner{
  position: relative;
}
.front-section.nav > .inner:before,
.front-section.nav > .inner:after{
  display: block;
  content:'';
  height:1px;
  width:900px;
  background-color: #333;
  position: absolute;
  margin:auto;
}
.front-section.nav > .inner:before{
  top:0;
  left:150px;
  width:640px;
}
.front-section.nav > .inner:after{
  bottom:0;
  right:0;
}



/* Navaigation
--------------------------- */
.front-page-nav-title{
  font-family: Lora;
  /*font-weight:bold;*/
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.3em;
  text-indent: 10px;
  transform:translateY(-50%);
}
.front-page-nav{
  position: relative;
  height: 380px;
  margin-top:40px;
  margin:40px auto 0;
  width:980px;
}
.front-page-nav .item{
  display: block;
  position:absolute;
  line-height: 1;
  height: 90px;
  padding:23px 30px;
  width:380px;

  background-color: rgba(255,255,255,0.85);
  box-shadow: 0 0 30px rgba(0,0,0,0.1);
  transition:0.3s all cubic-bezier(0.4, 0, 0, 1);
}
.front-page-nav .item:not(.disabled):hover{
  background-color:rgba(237, 241, 239, 0.9);
  color: #627361;
}
.front-page-nav .item .title{
  display: block;

}
.front-page-nav .item .title .label{
  font-size:23px;
  letter-spacing: 0.2em;
}
.front-page-nav .item .title .special{
  font-size:13px;
  line-height:26px;
  margin:0;
  margin-right:14px;
  background-color: #f3ecdd;
  color:#a28e81;
  display: block;
  float:left;
  padding:0 10px;
  letter-spacing: 0em;
  vertical-align: middle;
}
.front-page-nav .item .caption{
  display: block;
  margin-top:10px;
  font-size: 12px;
}


/* Disabled item */
.front-page-nav .item.disabled{
  opacity:0.4;
}
.front-page-nav .item.disabled:hover{

}


.front-page-nav .item:after{
  content:'';
  display: block;
  background-image: url(img/common/button-arrow-green-hover.png);
  width:40px;
  background-size: contain;
  height:20px;
  background-position: center;
  background-repeat:no-repeat;
  position: absolute;
  bottom:8px;
  right:3px;
  opacity:0;
  transition:0.4s 0.1s all cubic-bezier(0.4, 0, 0, 1);
}




/* Hover */
.front-page-nav .item:not(.disabled):hover{
  transform:translateX(-3px);
}
.front-page-nav .item:not(.disabled):hover:after{
  opacity:1;
  right:-6px;
}



/* Navaigation Layout
--------------------------- */
.front-page-nav .item{
  top:0;
  left:0;
}
.front-page-nav .item:nth-child(2){
  top:calc( 110px * 1 );
  left:calc( 50px * 1 );
}
.front-page-nav .item:nth-child(3){
  top:calc( 110px * 2 );
  left:calc( 50px * 2 );
}
.front-page-nav .item:nth-child(4){
  top:20px;
  left:500px;
}
.front-page-nav .item:nth-child(5){
  top:calc( 20px + 110px * 1 );
  left:calc( 500px + 50px * 1 );
}
.front-page-nav .item:nth-child(6){
  top:calc( 20px + 110px * 2 );
  left:calc( 500px + 50px * 2 );
}
.front-page-nav .item:nth-child(7){
  top:calc( 20px + 110px * 3 );
  left:calc( 500px + 50px * 1 );
}

/*.front-page-nav .item:nth-child(even){*/
  /*transform:translateY(50px);*/
  /*}*/

/*
====================================
Front section: News and media
==================================== */
.front-section.news{
  position: relative;
}


.front-section.news > .bg{
  content:'';
  display: block;
  width:100px;
  height: 600px;
  position: absolute;
  /*margin:auto;*/
  background-image: url(img/common/bg-brown.jpg);
}
.front-section.news > .bg.bg-1{
  top:-90px;
  left:0;
  width: calc(50%  - 440px);
}
.front-section.news > .bg.bg-2{
  bottom:-90px;
  right:0;
  width: calc(50% - 440px);
}



/* News
--------------------------- */
.front-news{
  float:left;
  width:60%;
  margin-top:30px;
}
.front-news > .header{
  padding-bottom:20px;
  border-bottom:1px #333 dashed;
  overflow: hidden;
}
.front-news > .header .title{
  font-size:28px;
  letter-spacing: 0.3em;
  line-height: 1;
  font-weight: bold;
  float:left;
}
.front-news > .header .link{
  display: block;
  font-weight:bold;
  font-size:13px;
  line-height:20px;
  margin:3px 0;
  height: 28px;
  padding-right:30px;
  float:right;
}

.front-news > .items{

}
.front-news > .items .item{
  padding:16px 0;
  border-bottom:1px #999 dashed;
}
.front-news > .items .item > .image{
  display: block;
  width:120px;
  height:80px;
  float:left;
  background-size: cover;
  background-position: center;
  background-color: #f6f6f6;
}
.front-news > .items .item > .text{
  padding:20px 0 20px 140px;
  min-height: 80px;
}
.front-news > .items .item > .text .date{
  font-size:12px;
  line-height: 1;
}

.front-news > .items .item > .text .title{
  font-size:16px;
  margin-top:10px;
  line-height: 1.2;
}


/* Media
--------------------------- */
.front-media{
  float:right;
  width:300px;
  margin-top:120px;
}
.front-media > .header{
  padding-bottom:20px;
  border-bottom:1px dashed #999;
}
.front-media > .header .title{
  font-size:20px;
  letter-spacing: 0.3em;
  line-height: 1;
  font-weight: bold;
}
.front-media > .items{

}
.front-media > .items .item{
  display: block;
  padding:18px 0;
  border-bottom:1px #999 dashed;
}
.front-media > .items .item .logo{
  display: block;
  height:30px;
}
.front-media > .items .item .media{
  line-height: 1;
  font-size:10px;
  margin-top:16px;
}
.front-media > .items .item .title{
  font-size:14px;
  line-height: 1.6;
  margin-top:12px;
}


/*
====================================
Front section: Visit us
==================================== */
.front-section.visit-us{
  text-align: center;
}
.visit-us-wrapper{
  border-radius: 10px;
  padding:30px 60px;
  width:590px;
  height:420px;
  /*background-image: url(img/common/bg-deep.jpg);*/
  position: relative;
  /*background-color: rgba(247, 236, 234, 0.52);*/
  background-color: rgba(229, 236, 233, 0.52);
}
.visit-us-wrapper .header{
  /*width:360px;*/

  margin:0 auto;

}
.visit-us-wrapper .header img{
  width:100%;
  display: block;
}
.visit-us-wrapper .lead{
  font-size:21px;
  line-height: 1.6;
  margin-top:30px;
}
.visit-us-wrapper .desc{
  font-size:12px;
  margin-top:10px;
}
.visit-us-wrapper .buttons{
  margin-top:30px;
  overflow: hidden;
}
.visit-us-wrapper .buttons .access{
  float:left;
}
.visit-us-wrapper .buttons .reserve{
  float:right;
}
.visit-us-wrapper .img-1{
  position: absolute;
  top:40px;
  left:570px;
  width:200px;
}
.visit-us-wrapper .img-2{
  position: absolute;
  left: 720px;
  top: 220px;
  width: 270px;
}


/*
====================================
Front section Info
==================================== */
.front-section.info{
  padding:30px 0 60px;
}
.front-section.info > .inner{

}


.info-section-title{
  font-size:15px;
  margin-bottom:10px;
  font-weight: bold;t
  text-align: center;
}


.info-items{
  margin-top:10px;
  max-width:640px;
  margin:0 auto;

}
.info-items .item{
  display: block;
  padding:18px 0;
  border-top:1px #999 dashed;
}
.info-items .item:hover{
  opacity:0.8;
}
.info-items .item:last-child{
  border-bottom:1px #999 dashed
}
.info-items .item .date{
  font-size:12px;
  float:left;
}
.info-items .item .title{
  font-size:12px;
  margin-left:140px;
}



/*
====================================
Single page: Common
==================================== */
.single-page{
  margin-bottom:120px;

}
/* Header */
.single-page-header{
  border-bottom:1px solid #333;
  padding-bottom:20px;
}
.single-page-header .title{
  font-family:
  "游明朝体", "Yu Mincho", "YuMincho",
  "ヒラギノ明朝 ProN W3", "HiraMinProN-W3",
  "HG明朝E", "ＭＳ Ｐ明朝","MS PMincho", "MS 明朝",
  serif;
  font-size:30px;
  letter-spacing: 0.2em;
  line-height: 1.4;
}
.single-page-header .caption{
  margin-top:10px;
  font-size:13px;
  letter-spacing: 1px;
  line-height: 1.8;
}
.single-page-header .meta{
  font-size:13px;
  letter-spacing: 0.6px;
  line-height: 1.8;
  margin-top:5px;
  overflow: hidden;
}
.single-page-header .meta .date{
  float:left;
}
.single-page-header .meta .cats{
  float:right;
}



/* Body */
.single-page-body{
  margin-top:30px;
}
.single-page-body .button-wrapper{
  padding:30px 60px;
  border-top:#ddd 1px solid ;
  text-align:center;
}



.page-section-header{
  /*font-size:;*/
  position: relative;
  margin-top:60px;
}
.page-section-header:before{
  content:'';
  background-color:#e2eae6;
  opacity:0.6;
  width:100px;
  height:80px;
  position: absolute;
  transform:translate(-50%,-20%);
  z-index: -1;
}
.page-section-header:after{
  content:'';
  display: block;
  border-bottom:1px solid #aaa;
  width:60px;
  margin-top:30px;
}
.page-section-header .title{
  font-size:28px;
  letter-spacing: 0.2em;
  line-height: 1.6;
  margin-top:28px
}

.page-section-body{
  margin-top:40px;
}


/*
====================================
Single: Concept
==================================== */
.concept-section{

}
.concept-section:not(:first-child){
  margin-top:60px;
}

.concept-section .header{
  /*height:660px;
  height:600px;*/
  position: relative;
}
.concept-section .header .bg{
  background-position: center;
  /*position: absolute;*/
  position: initial;
  top:0;
  left:0;
  height:100%;
  width:100%;
}
.concept-section .header .title{
  background-color: rgba(255,255,255,0.8);
  padding:25px;
  font-size:26px;
  line-height: 1;

  position: absolute;
  top:40px;
  left:40px;
}

.concept-section .header .title > .tag{
  float:left;
  width:30px;
  height: 70px;
  position: relative;
  border-right:1px solid #333;
}
.concept-section .header .title > .tag .t{
  display: block;
  width:80px;
  font-family: "Lora";
  font-weight: bold;
  font-size:11px;
  letter-spacing:0.26em;
  transform:translateY(100%) rotate(-90deg);
  transform-origin:left top;
  position: absolute;
  bottom:0;
  left:0;
}
.concept-section .header .title > .text{
  margin-left:50px;

}
.concept-section .header .title > .text .line.lead{
  font-size: 32px;
  letter-spacing: .3em;
}
.concept-section .header .title > .text .line.sub{
  margin-top:20px;
  display: block;
  font-size:13px;
  font-weight: bold;
  letter-spacing: 0.2em;
}

.concept-section .header .caption{
  background-color: rgba(255,255,255,0.6);
  padding:20px 30px;

  position: absolute;
  bottom:30px;
  right:30px;
  width:450px;

  font-size: 13px;
  font-weight: bold;
  letter-spacing: 0.2em;

}


/* Work & Study living
--------------------------- */
.body-1{
  padding:60px 0 0px 40px;
  /*height: 580px;*/
  /*width:860px;*/
  margin:0 auto;
  overflow: hidden;
}
.body-1 .image{
  display: block;
  float:right;
  width:540px;
  /*margin-right:80px;*/
}
.body-1 .image > img{
  display: block;
  width:100%;
  height:auto;
}

.body-1 .image .cap{
  font-size:12px;
  line-height: 1.2;
  margin-top:4px;
  padding:0 4px;
}



.body-1 .text{
  float:left;
  width:420px;
  padding-top:60px;
}

.body-1 .text .title-en{
  line-height: 1;
  font-size:11px;
  letter-spacing: 0.4em;
}

.body-1 .text .title{
  font-size:28px;
  letter-spacing: 0.2em;
  line-height: 1;
  margin-top:28px
}
.body-1 .text .title .line{
  margin-top:20px;
  display: block;
}

.body-1 .text .desc{
  margin-top:25px;
  /*font-size:15px;*/
  /*line-height: 2;*/
  text-align: justify;
}

.body-2 .text .desc a{
  text-decoration: underline;
}



.link-container{
  text-align: center;

  border:1px dashed #aaa;
  border-width:1px 0;
  padding:60px 0;
  margin:0 auto;
  margin-top:30px;
  /*max-width:900px;*/
}
.link-container .link{
  margin-top:20px;
}


/* Lving
--------------------------- */


.living-sub-items{
  /*margin-top:-40px;*/
  /*padding:0 30px;*/
  margin-top:40px;
}
.living-sub-items .item{
  overflow: hidden;
  float:left;
  width:40%;
  margin:0 5%;

  margin-top:40px;
}
.living-sub-items .item  > .image{
  /*float:left;*/
  /*width:200px;*/
  background-color: #f0f0f0;
}
.living-sub-items .item  >.text{
  /*padding:20px 30px 0px 240px;*/
}
.living-sub-items .item > .text .title{
  font-weight: bold;
  font-size:20px;
  letter-spacing: 0.2em;
}
.living-sub-items .text > .desc{
  font-size:13px;
  line-height: 1.9;
  height: 100px;
  margin-top:10px;
}
.living-sub-items .text > .desc a{
  text-decoration: underline;
}
.living-sub-items .text > .desc a:hover{
  text-decoration: none;
  opacity:0.8;
}














.body-1.no-image{

}
.body-1.no-image .text{
  margin:0;
  float:none;
  width:auto;
  max-width:800px;
  margin:0 auto;
  padding:0;
  text-align: center;
}



/* Ecomix
--------------------------- */
.body-2{

}
.ecomix-sub-items{
  /*margin-top:-40px;*/
  padding:0 30px;
}
.ecomix-sub-items .item{
  overflow: hidden;
  float:left;
  width:50%;
  /*height:150px;*/
  margin-top:70px;
}
.ecomix-sub-items .item  > .image{

  float:left;
  display: block;
  width:200px;
  background-color: #f0f0f0;
}
.ecomix-sub-items .item  > .text{
  padding:5px 30px 0px 240px;
}
.ecomix-sub-items .item > .text .title{
  font-size:22px;
  letter-spacing: 0.2em;
}
.ecomix-sub-items .text > .desc{
  font-size:13px;
  line-height: 1.9;
}
.ecomix-sub-items .text > .desc a{
  text-decoration: underline;
}
.ecomix-sub-items .text > .desc a:hover{
  text-decoration: none;
  opacity:0.8;
}


.ecomix-sub-items .item:nth-child(1),
.ecomix-sub-items .item:nth-child(2) {
  transform:translateX(-30px);
}
.ecomix-sub-items .item:nth-child(3),
.ecomix-sub-items .item:nth-child(4) {
  transform:translateX(30px);
}


/*
====================================
Page: locaiton
==================================== */
.page-location-desc{
  overflow: hidden;
}
.page-location-desc .text{
  float:left;
  width:460px;
  padding:80px 0 0 40px;
}
.page-location-desc .text p + p{
  margin-top:20px;
}
.page-location-desc .image{
  display: block;
  float:right;
  width:520px;
}








.location-map{
  margin-top:60px;
}


/* Category Navigation */
.location-map-cat-items{
  overflow: hidden;
  margin:0 -0.3333%;
}
.location-map-cat-items .item{
  float:left;
  width:16%;
  margin:0 0.3333%;
  line-height:48px;
  height:48px;
  text-align: center;
  background-color: #e2ebe7;
  color:#67736c;
  cursor:pointer;
}
.location-map-cat-items .item.current,
.location-map-cat-items .item:hover{
  background-color: #67736c;
  color:#fff;
}
.location-map-cat-items .item:hover{
  opacity:0.8;
}




/* Body */
.location-map-main{
  /*overflow: hidden;*/
  margin-top:20px;
}

.location-map-main > .list{
  float:left;
  width:400px;
}

.location-map-main > .map{
  float:right;
  width:640px;
  position: relative;

  overflow: hidden;
}
.location-map-main > .map .base{
  display: block;
  width:100%;
}
.location-map-main > .map .pin{
  position: absolute;

  background-color: #5c736d;
  color: #fff;
  border:1px solid #fff;
  /*font-weight:bold;*/
  font-family: "Lora";

  line-height: 26px;
  height: 28px;
  width:28px;
  margin:1px;
  float:left;

  font-size:13px;
  text-align: center;
  transform:translate(-50%,50%);

  opacity:0.8;
  transition:0.1s linear all
}

.location-map-main > .map .pin.highlight{
  opacity:1;
  box-shadow: 0 0 16px #5c736d;
}





/* LIst item */
.location-map-main .list .items{
  border-top:1px dashed #ccc;
}
.location-map-main .list .items .item{
  padding:14px 2px;
  border-bottom:1px dashed #ccc;
}
.location-map-main .list .items .item:first-child{

}
.location-map-main .list .items .item .alphabet{
  background-color: #e2ebe7;
  color:#67736c;
  font-weight:bold;
  font-family: "Lora";

  line-height: 30px;
  height: 28px;
  width:28px;
  margin:1px;
  float:left;
  font-size:13px;
  text-align: center;
}
.location-map-main .list .items .item:hover{
  background-color: rgba(0,0,0,0.04);
}
.location-map-main .list .items .item:hover .alphabet{
  background-color: #67736c;
  color: #fff;

}


.location-map-main .list .items .item .label{
  line-height: 30px;
  overflow: hidden;
  margin-left:40px;
}
.location-map-main .list .items .item .label .name{
  font-size:14px;
  float:left;
}
.location-map-main .list .items .item .label .walk{
  font-size:12px;
  float:right;
}
.location-map-main .list .items .item .desc{
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.8;
}




.page-location-station{
  overflow: hidden;
  margin-top:30px;
}

.page-location-station img.line{
  width:700px;
  float:left;
  display: block;

}
.page-location-station img.desc{
  width:360px;
  display: block;
  float:right;
}

/*
====================================
Page: Floor plan
==================================== */
.floor-plan-items{
  padding:30px 0;
}
.floor-plan-items .item{
  padding:30px 90px;
  /*width:50%;*/
  /*float:left;*/
  border-bottom:1px dashed #ccc;

}
.floor-plan-items .item:first-child{
  /*border-top:1px dashed #ccc;*/
}

.floor-plan-items .item > .image{
  display: block;
  width:300px;
  background-size: contain;
  background-position: center;
  float:left;

  background-repeat: no-repeat;
  box-shadow: 0 0 20px rgba(0,0,0,0.06);
  transition:0.1s ease-out all;

  background-color:#fff;
}
.floor-plan-items .item > .image:hover{
  box-shadow: 0 0 30px rgba(0,0,0,0.2);
}


.floor-plan-items .item > .text{
  padding:40px 0 0px 400px ;
}



.floor-plan-items .item .name{
  font-size:24px;
}
.floor-plan-items .item .plan-name{
  font-weight: bold;
  font-size:20px;
}
.floor-plan-items .item .others{
  font-size:13px;
  margin-top:5px;
  letter-spacing: 0.04em
}
.floor-plan-items .item .others a{
  text-decoration: underline;
  font-weight: bold;
}
.floor-plan-items .item .link{
  margin-top:10px;
  margin-left:0;
}




.floor-plan-items .item .post-edit-link{
  font-size:11px;
}


/*
====================================
Page: Gallery
==================================== */
.photo-gallery-section{

}
.photo-gallery-section .plan-name{
  font-size:24px;
  letter-spacing: 0.2em;
  margin:40px 0 10px;
}
.photo-gallery-section .plan-name .post-edit-link{
  font-size:13px;
  letter-spacing: 0.1em;
  margin-left:10px;
}


.photo-items{
  overflow: hidden;
  margin:0 -1.6666%;
  margin-top:40px;
}
.photo-items .item{
  float:left;
  display: block;
  width:30%;
  margin:0 1.6666% 20px;
}
.photo-items .item .image{
  display: block;
  width:100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.photo-items .item .image img.play{
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  margin:auto;
  width:40px;
}

.photo-items .item .name{
  text-align: left;
  margin-top:10px;
  font-size:12px;
  line-height: 1.6;
  height: 40px;
}





/*
====================================
Page: Contact form
==================================== */
.page-equipment-items{
  overflow: hidden;
  margin:0 -1%;
}
.page-equipment-items .item{
  display: block;
  float:left;
  width:23%;
  margin:0 1%;
  margin-top:20px;
}
.page-equipment-items .item > .image{
  /*float:left;*/
}
.page-equipment-items .item > .image:hover{
  opacity: 0.8;
}
.page-equipment-items .item > .text{
  /*margin-left:200px;*/
  margin-top:10px;
}
.page-equipment-items .item .name{
  font-size:16px;
  line-height: 1.8;
}
.page-equipment-items .item .desc{
  line-height: 1.6;
  font-size:12px;
  height: 60px;
  /*letter-spacing: 0.06em;*/
}












.page-polus-section{

}
.page-polus-section .lead{

}
.page-polus-section .lead a{
  text-decoration: underline;
}






.page-polus-items{
  overflow: hidden;
  /*margin:0 -1%;*/
}
.page-polus-items .item{
  overflow: hidden;
  margin-top:30px;
  background-color: rgba(245, 240, 238, 0.9);
  padding:40px 60px;
}
.page-polus-items .item .image{
  display: block;
  width:280px;
  float:right;
  margin-left:80px;
}
.page-polus-items .item .image .img{
  display: block;
  width:100%;
}
.page-polus-items .item .image .cap{
  font-size:10px;
  letter-spacing: 0;
  opacity:0.8;
  height: 0;
}
.page-polus-items .item .image .cap a:hover{
  text-decoration: underline;
}

.page-polus-items .item .title{
  font-size:24px;
}
.page-polus-items .item .desc{
  line-height: 2;
}








/*
====================================
Page: Contact form
==================================== */
.outline-table th{
  width:240px;
}


/*
====================================
Page: Map
==================================== */
.map-section{
  padding-bottom:60px;
}
.page-gmap{
  height:500px;
  background-color: #f3f3f3;
}

/*
====================================
Page: Contact form
==================================== */
.contact-nav{
  overflow: hidden;
  /*margin-top:30px;*/
  margin:30px 0;
  padding:0 150px;
}
.contact-nav .items{
  margin-top:20px;
}
.contact-nav .item{
  font-size:15px;
  letter-spacing: 0.2em;
  display: block;
  position: relative;
  float:left;
  padding-right:12px;
  margin-right:12px;
}
.contact-nav .item:not(:last-child):after{
  content:'';
  display: block;
  width:1px;
  height:10px;
  background-color: #999;
  position: absolute;
  right:0;
  top:0;
  bottom:0;
  margin:auto;
}

.contact-nav .item{
  font-weight: bold;
}
.contact-nav .item.weaken{
  opacity:0.6;
  font-weight: normal
}



.contact-form-items{
  margin:30px 0;
  line-height: 1.4;
}
.contact-form-items .item{
  margin:20px 0;
  padding:0 150px;
}
.contact-form-items .item.hidden{
  display: none;
}
.contact-form-items .item.border-top{
  border-top:1px solid #ccc;
  margin-top:40px;
  padding-top:40px;
}
.contact-form-items .item.acceptance{
  text-align: center;
  border-top:1px solid #ccc;
  margin-top:40px;
  padding-top:20px;
  margin-bottom:10px;
}
.contact-form-items .item .label{
  float:left;
  width:280px;
  font-size: 14px;
  line-height: 20px;
  padding:10px 0 2px;
  font-weight: bold;
}
.contact-form-items .item .label.required:after{
  content:'*';
  margin-left:6px;
  color:#f04433;
}
.contact-form-items .item .field{
  margin-left:300px;
  min-height: 40px;
}
.contact-form-items .item .field.checkboxes,
.contact-form-items .item .field.radio{
  padding:5px 0;

}
.contact-form-items .item .field.border{
  border-top:1px solid #ccc;
  padding-top:10px;
  margin-top:10px;
}



.contact-form-items .item .field .memo{
  font-size:11px;
  line-height:1.3;
  margin-top:4px;
}
.contact-form-items input[type=text],
.contact-form-items input[type=email],
.contact-form-items input[type=tel],
.contact-form-items input[type=url],
.contact-form-items input[type=number],
.contact-form-items textarea{
  border:#ccc 1px solid;
  padding:5px 10px;
  width:100%;
}
.contact-form-items textarea{
  height: 200px;
  resize:vertical;
}
.contact-form-items input.hidden{
  display:none;
}
.contact-form-items input[type=submit]{
  border:none;
  padding:0;
}

.contact-form-items .item span.wpcf7-list-item{
  margin:0 10px 5px 0;
}

.contact-form-items .item .wpcf7-list-item-label{
  font-size:12px;
}

.contact-form-items .item a{
  text-decoration: underline;
}






.link-to-gmap{
  margin-top:-20px;
  text-align: right;
}


/*
====================================
Feature Nav
==================================== */
.feature-nav{
  max-width:640px;
  margin:0 auto 40px;
  overflow: hidden;
}
.feature-nav .item{
  display: block;
  padding:0px 20px;
  line-height:60px;
  float:left;
  text-align:center;
  width:50%;
  font-weight: bold;
  border-left:1px dashed #999;
  position: relative;
}
.feature-nav .item:last-child{
  border-right:1px dashed #999;
  /*margin-right:0%;*/
}
.feature-nav .item.current:before,
.feature-nav .item:hover:before{
  content:'';
  display: block;
  z-index: -1;
  top:0px;
  right:4px;
  left:4px;
  bottom:0px;
  position: absolute
}
.feature-nav .item:hover:before{
  background-color:#ab955810;
}

.feature-nav .item.current:before{
  background-color:#ab955820;
}















/*
====================================
Page : Feature hobby;
==================================== */

/* Deco */
.deco-block-hobby{
  background-color:#0537db;
  background-color:#bbcefd;
  background-color:#6483f9;

  position: absolute;
  opacity:0.84;
}

/* Deoc */
.deco-block-hobby.hero{
  position: absolute;
  left:-100%;
  right:-100%;
  top:60px;
  height:540px;
}



/* Lead */
.feature-hobby-header .lead{
  position: absolute;
  top:-13px;
  left:18px;
  line-height: 28px;
  z-index: 1;
}
.hobby-page-lead-mobile .t,
.feature-hobby-header .lead .t{
  /*background-color: #0537db;*/
  /*background-color: #6483e8;*/
  background-color: #466ce8;
  color:#fff;
  display: inline-block;
  padding:0 14px;
  font-size:12px;
  margin-right:22px;
}
.hobby-page-lead-mobile .d,
.feature-hobby-header .lead .d{
  /*color:#57453B;*/
  font-weight: bold;
  font-size:16px;
}






.feature-hobby-header{

}
.feature-hobby-header .cover{
  position: relative;
}
.feature-hobby-header .image{
  max-width:100%;
  background-color: #fff;
  margin:0 auto;
  position: relative;
  display: block;
}
.feature-hobby-header .image img{
  display: block;
  width:100%;
}

.feature-hobby-header .title{
  display: block;
  position: absolute;
  background-color: rgba(255,255,255,0.9);
}
.feature-hobby-header .title-1{
  height: 60px;
  top: 40px;
  right: 410px;
}
.feature-hobby-header .title-2{
  height: 60px;
  top: 110px;
  right: 110px;
}
.feature-hobby-header .title-3{
  height: 20px;
  top: 180px;
  right: 60px;
}


.feature-hobby-header .caption{
  font-size:18px;
  font-weight: bold;
  max-width:740px;
  margin:90px auto 0;
  position: relative;
}


/* Deco */
.deco-block-hobby.cap{
  position: absolute;
  left: 60px;
  bottom: -60px;
  width: 190px;
  height: 20px;
}



/*
------------------------------------
Floor plan
------------------------------------ */
.hobby-floor-plan{
  /*overflow: hidden;*/
  margin-top:100px;
  position: relative;
}
.hobby-floor-plan > .image{
  float:left;
  width:500px;
  position: relative;
  z-index: 1;
}
.hobby-floor-plan > .image img{
  width:460px;
  display: block;
  margin:0 auto;
  background-color: rgba(255,255,255,0.97);
  box-shadow: 0 0 30px rgba(0,0,0,0.1)
}

.hobby-floor-plan >.text{
  margin-left:580px;
  padding-top:60px;
  position: relative;
}




/* Deco */
.deco-block-hobby.floor-1{
  width:100%;
  right:70%;
  top:-20px;
  height:350px;
}
.deco-block-hobby.floor-2{
  width: 100%;
  height: 80px;
  left: 90%;
  bottom: -20px;
}
.deco-block-hobby.floor-text{
  width: 100px;
  height: 11px;
  top: 30px;
  left: 0px;
  z-index: -1;
}





/*
------------------------------------
Mini section
------------------------------------ */
.hobby-mini-section{

}
.hobby-mini-section .header{
  display: block;
  height: 120px
}

.hobby-mini-section .caption{
  font-size:18px;
  margin-top:20px;
  font-weight: bold;
}
.hobby-mini-section .area{
  font-size:46px;
  font-weight: bold;
}
.hobby-mini-section .shared-area{
  font-weight: bold;
}






/*
------------------------------------
Interiro
------------------------------------ */
@media (min-width:481px){
  .hobby-interior{
    margin-top:120px;
    position: relative;
  }
}

.hobby-mini-section.interior{
  overflow: hidden;
}
.hobby-mini-section.interior .header{
  float:left;
}

.hobby-mini-section.interior .caption{
  padding-left:240px;
  padding-top:40px;
  margin:0;
  font-size:16px;
}

/* Deco */
.deco-block-hobby.interior{
  width:100%;
  right:90%;
  height:30px;
  top:-46px;
}




.default-style.feature-hobby{
  max-width:740px;
  margin:90px auto 0;
}

.default-style.feature-hobby h1{
  border:none;
  position: relative;
  margin-bottom:30px;
}
.default-style.feature-hobby h1:before,
.default-style.feature-hobby h1:after{
  content:'';
  display: block;
  /*width:100%;*/


  background-color:#0537db;
  background-color:#bbcefd;
  background-color:#466ce8;
  position: absolute;
  /*opacity:0.9;*/
  z-index: -2;
  bottom:-5px;
  left:0px;
  right:0;
  height:5px;
}
.default-style.feature-hobby h1:after{
  background-color: #eee;
  left:40px;
  z-index: -1;
}







/*
====================================
Page: Feature living
==================================== */
.feature-living-header{

  margin-bottom:120px;
}
.feature-living-header .cover{
  position: relative;
}

/* BG image */
.feature-living-header .deco{
  width:300px;
  height: 100%;
  position: absolute;
  top:40px;
  left:0;
  background-image: url(img/common/bg-brown.jpg);
}
.feature-living-header img.main{
  display: block;
  max-width:100%;
  height: 580px;
  margin:0 0 0 auto;
  position: relative;
}

/* Lead */
.feature-living-header .lead{
  position: absolute;
  top:30px;
  left:100px;
  z-index: 1;
  font-size:14px;
}
.feature-living-header .lead .t{
  background-color: #57453B;
  color:#fff;
  display: inline-block;
  padding:0 14px;
  font-size:12px;
  line-height: 28px;
  margin-right:18px;
}
.feature-living-header .lead .d{
  color:#57453B;
  font-weight: bold;
}



/* Title */
.feature-living-header .title{
  display: block;
  position: absolute;
  width: 600px;
  top:100px;
  left:90px;
}
.feature-living-header .title-bg{
  position: absolute;
  height:50px;
  width:660px;
  top:120px;
  left:60px;
}
.feature-living-header .title-bg.colored{
  background-color: #fff6d7;
  opacity: 0.6;
}
.feature-living-header .title-bg.slashed{
  background-image: url(img/common/bg-slashed.png);
  background-size: 35px;
  opacity: 0.4;
  transform: translate(8px,8px);
}



/* Caption */
.feature-living-header .caption-bg{
  position: absolute;
  top:210px;
  left:130px;
  width:320px;
  height:120px;
  background-color: rgba(255,255,255,0.6);
}
.feature-living-header .caption{
  position: absolute;
  top:230px;
  left:100px;
  font-size:15px;
  letter-spacing: 0.2em;
  font-weight: bold;
  /*height:50px;*/
  /*padding:0 20px;*/
  /*line-height: 50px;*/
  /*text-shadow:0 0 1px #fff,*/
}



/* Note */
.feature-living-header .note{
  font-size:12px;
  line-height: 35px;
  position: absolute;
  right:0;
  bottom:-35px;
  text-align: right;
}
.feature-living-header .note a{
  text-decoration: underline;
}










/*
====================================
Page: Feature parenting
==================================== */
.feature-parenting-header{
  /*margin-bottom:120px;*/
  position: relative;
}




/* Decorations
---------------------------------------- */
.feature-parenting-header .deco{
  position: absolute;
  z-index: 1
}


/* Baloons on .photo-area */
.feature-parenting-header .deco.deco-baloon-01{
  top: 15px;
  right: 72px;
  width: 44px;
}
/* Cloud*/
.feature-parenting-header .deco.deco-cloud-03{
  top:200px;
  left:10px;
  width:120px;
}
.feature-parenting-header .deco.deco-cloud-04{
 top: 300px;
 right: 40px;
 width: 80px;
}


/* Baloons on .text-areaw */
.feature-parenting-header .deco.deco-baloon-11-l{
  top: -130px;
  left: 30px;
  width: 100px;
}
.feature-parenting-header .deco.deco-baloon-11-r{
  top: -60px;
  left: 90px;
  width: 70px;
}
.feature-parenting-header .deco.deco-baloon-13{
  top: 320px;
  left: 10px;
  width: 50px;
}
.feature-parenting-header .deco.deco-baloon-14{
  top:200px;
  right:0;
  width:60px;
}
.feature-parenting-header .deco.deco-bird{
  top:320px;
  right:150px;
  width:60px;
}


/* Cloud*/
.feature-parenting-header .deco.deco-cloud-1{
  bottom: 300px;
  right: -50px;
  width: 140px;
}
.feature-parenting-header .deco.deco-cloud-2{
  bottom: 100px;
  left: 130px;
  width: 90px;
  opacity:0.8;
}









/* Photo area
---------------------------------------- */
.feature-parenting-header .photo-area{
  position: relative;
}
.feature-parenting-header .photo-area .main{
  max-width:780px;
  margin:0 auto;
}

.feature-parenting-header .photo-area .main .image{
  display: block;
  margin:0 auto 40px;
  position: relative;
  width:100%;
}



/* Photo Area */
.feature-parenting-header .photo-area .title{
  margin-bottom:-15px;
  margin-left:-30px;
  overflow: hidden;
}
.feature-parenting-header .photo-area .title .t{
  width:90px;
  float:left;
  display: block;
  position: relative;
  z-index: 1;
}
.feature-parenting-header .photo-area .title .d{
  display: block;
  font-size:16px;
  margin-left:110px;
  margin-top:5px;
  font-weight: bold;
  color:#503616;
}



/* Title Area
---------------------------------------- */
.feature-parenting-header .text-area{
  display: block;
  position: relative;
}
.feature-parenting-header .text-area .lead{
  display: block;
  position: relative;
  z-index: 9;
  margin: auto;
}
.feature-parenting-header .text-area .lead img{
  display: block;
  margin:0 auto;
  max-width: 100%
}
.feature-parenting-header .text-area .sub{
  color:#663b0c;
  font-size:18px;
  margin-top:20px;
  font-weight: bold;
  text-align: center;
  position: relative;
  z-index: 9;
}


/* Floor plan
---------------------------------------- */
.feature-parenting .floor-plan img.type-name{
  margin:0 auto 10px;
  display: block;
}

.feature-parenting .floor-plan .figures{
  font-weight: bold;
  font-size:22px;
  text-align: center;
}
.feature-parenting .floor-plan .figures .big{
  font-size:34px;
}

.feature-parenting .floor-plan img.image{
  display: block;
  margin:20px auto 0;
}



/* Floating */
.feature-parenting .floor-plan-image{
  position: fixed;
  backface-visibility: hidden;
  opacity:0;
  width:240px;
  height:auto;

  top:100px;
  right:-240px;
  padding:10px;

  background-color:#fffffff0;
  background-size: 220px auto;
  background-position: center;

  box-shadow: 0 0 10px rgba(0,0,0,0.2);
  border-radius: 6px;

  transition:
  0.5s cubic-bezier(0.7, 0, 0.3, 1) right,
  0.3s cubic-bezier(0.7, 0, 0.3, 1) opacity;
}
.feature-parenting .floor-plan-image.floating{
  display: block;
  right:20px;
  z-index: 1;
  opacity:1;
}
.feature-parenting .floor-plan-image img{
  display: block;
  width:100%;
}


.virtual-tour{
  width:100%;
  height:600px;
}



/*
====================================
Archive: News (Home)
==================================== */
.archive-news-items{

}
.archive-news-items .item{
  padding:25px 0;
  border-bottom:1px #999 dashed;
  overflow: hidden;
}
.archive-news-items .item > .image{
  display: block;
  width:200px;
  float:left;
  background-size: contain;
  background-position: center;
  /*background-color: #f0f0f0;*/
  opacity:0.9;
}
.archive-news-items .item > .image:hover{
  opacity:1;
}
.archive-news-items .item > .text{
  padding:20px 0 20px 230px;
  min-height: 80px;
}
.archive-news-items .item > .text .date{
  font-size:12px;
  line-height: 1;
}

.archive-news-items .item > .text .title{
  font-size:18px;
  font-weight: bold;
  margin-top:15px;
  line-height: 1.6;
}

.archive-news-items .item > .text .excerpt{
  margin-top:6px;
  font-size:13px;
  line-height: 1.8;
  text-anchor: justify
}











/*
====================================
Sidebar: Common;
==================================== */


.sidebar-section{

}
.sidebar-section:not(:first-child){
  margin-top:50px;
}



.sidebar-section-header{
  border-bottom:1px solid #333;
  line-height:1.4;
  padding-bottom:15px;
  margin-bottom:0;
}
.sidebar-section-header .title{
  font-size:16px;
  letter-spacing: 1px;
  font-weight: bold;
}

.sidebar-section-body{
  margin-top:5px;
}

.sidebar-section-body .generic-button{
  margin-top:20px;
}

/*
====================================
Sidebar: Nav
==================================== */
.sidebar-nav-items{

}
.sidebar-nav-items .item{
  display: block;
  border-bottom:1px solid #ccc;
  line-height: 42px;
  font-size:13px;
  padding-left:2px;

  background-position: right 10px center;
  background-repeat: no-repeat;
  background-image: url(img/common/button-arrow-green.png);
  background-size:12px;
}
.sidebar-nav-items .item:first-child{
  /*border-top:1px solid #ccc;*/
}











/*
====================================
Sidebar: Media
==================================== */




/* News
--------------------------- */
.sidebar-news-items{

}
.sidebar-news-items .item{
  padding:14px 0;
  border-bottom:1px #999 dashed;
}
.sidebar-news-items .item > .image{
  display: block;
  width:80px;
  height:60px;
  float:left;
  background-color: #f3f3f3;
  background-size: cover;
  background-position: center;
}
.sidebar-news-items .item > .text{
  padding:6px 0 6px 96px;
  min-height: 60px;
}
.sidebar-news-items .item > .text .date{
  font-size:10px;
  line-height: 1;
}

.sidebar-news-items .item > .text .title{
  font-size:13px;
  font-weight: bold;
  margin-top:6px;
  line-height: 1.4;
}


/* Media
--------------------------- */
.sidebar-media-items{

}
.sidebar-media-items .item{
  display: block;
  padding:18px 0;
  border-bottom:1px #999 dashed;
}
.sidebar-media-items .item .logo{
  display: block;
  height:30px;
}
.sidebar-media-items .item .media{
  line-height: 1;
  font-size:10px;
  margin-top:20px;
}
.sidebar-media-items .item .title{
  line-height: 1.8;
  font-weight: bold;
  margin-top:16px;
}





/*
====================================
Site footer
==================================== */
.site-footer{
  overflow: hidden;
  padding-top:30px;
}



.floating-banner{
  display: block;
  width:300px;
  position: fixed;
  bottom:12px;
  right:12px;
  backface-visibility:hidden;
  z-index: 99;
  box-shadow: 0 0 6px rgba(0,0,0,0.2);
  transition:0.8s all cubic-bezier(0.4, 0, 0, 1);
  transform:translateX(400px);
  opacity:0;
}
.floating-banner.banner-1{
  /*bottom:12px;*/
}
.floating-banner.banner-2{
  bottom:122px;
  transition-delay: 0.06s
}
.floating-banner .banner{
  width: 100%;
  display: block;
}
.floating-banner .arrow{
  display: block;
  position: absolute;
  width:30px;
  bottom:6px;
  right:4px;
  z-index: 999;
  transition:0.2s cubic-bezier(0.4, 0, 0, 1) all;
}


.floating-banner:hover .banner{
  opacity:0.8;
}
.floating-banner:hover .arrow{
  right:-5px;
}



.floating-banner.shown{
  opacity:1;
  transform:translateX(0px);
}



/* Info
-------------------------------  */
.footer-row.info{
  overflow: hidden;
  font-size: 12px;
}
.footer-row.info > .inner{
  border-top:1px dashed #aaa;
  padding-top:50px;
  padding-bottom:50px;
  overflow: hidden;

}
.footer-row.info:last-child{

}


.footer-row.info .access{
  float:left;
  width:540px;
}

.footer-row.info .access .logo{
  display: block;
  margin-top:30px;
  height:60px;
}

.footer-row.info .access .address{
  margin-top:20px;
  /*text-decoration: underline;*/
}
.footer-row.info .access .address a{
  text-decoration: underline;
}
.footer-row.info .access .stations{
  margin-top:0px;
}


.footer-row.info .contact-us{
  float:right;
  width:400px;
  border-left:1px dashed #aaa;
  padding:0 40px;
  text-align: center;
}
.footer-row.info .contact-us .lead{
  font-weight: bold;
  /*line-height: 1.8;*/
}
.footer-row.info .contact-us .phone{
  display: block;
  width:320px;
  margin-top:12px;
  margin:12px auto;
}
.footer-row.info .contact-us .phone img{
  display: block;
  width:320px;
}
.footer-row.info .contact-us .biz-hours{
  font-size: 11px;
}
.footer-row.info .contact-us .email{
  margin-top:10px;
  /*font-weight: bold;*/
}


/* Navigtion
-------------------------------   */
.footer-row.nav{
  font-size: 12px;
}
.footer-row.nav > .inner{
  border-top:1px dashed #333;
  padding-top:40px;
  padding-bottom:40px;
}


.footer-row.nav .nav-items{
  line-height: 1;
  margin-top:20px;
}
.footer-row.nav .nav-items:first-child{
  margin-top:0;
}
.footer-row.nav .item{
  margin-right:15px;
  padding-right:15px;
  position: relative;
}
.footer-row.nav .item:not(:last-child):after{
  display: block;
  content:'';
  width:1px;
  height:0.6em;
  background-color: #aaa;
  position: absolute;
  top:0;
  bottom:0;
  right:0;
  margin:auto;
}


/* Bottom
-------------------------------  */
.footer-row.bottom{
  background-color: #e2ebe7;
  background-color: #e4eae8;
  overflow: hidden;
  padding:20px 0;
}


/* Banners */
.footer-row.bottom .external-links{
  float:left;
}
.footer-row.bottom .external-links .item{
  float:left;
  display: block;
  margin-right:20px;
  width:120px;
  opacity:0.7;
}
.footer-row.bottom .external-links .item img{
  display: block;
  width:100%;
}
.footer-row.bottom .external-links .item:hover{
  opacity:1;
}

.footer-row.bottom .copyright{
  float:right;
  font-size: 10px;
  line-height: 30px;
  text-transform: uppercase;
  letter-spacing: 0.6em;
}






/*
====================================
Post Default style
==================================== */
.default-style{
  line-height: 2;
  font-size:14px;
  letter-spacing: 0.02em;
  word-wrap: break-word;
}


.default-style p{
  margin:10px 0 25px;
}
.default-style h1,
.default-style h2,
.default-style h3,
.default-style h4,
.default-style h5{
  /*font-weight: bold;*/
}

.default-style h1{
  font-size:24px;
  line-height: 1.3;
  position: relative;
  font-weight: bold;
  margin:40px 0 15px;
  border-bottom:1px solid #ddd;
  padding-bottom:14px;
}
.default-style h2{
  font-size:20px;
  font-weight: bold;
  line-height: 1.3;
  margin:35px 0 10px;
  position:relative;
}
.default-style h3{
  font-size:17px;
  font-weight: bold;
  line-height: 1.4;
  margin:30px 0 10px;
}
.default-style h4{
  font-size:15px;
  font-weight: bold;
  margin:10px 0 10px;
  line-height: 1.4;
}
.default-style h5{
  font-weight: bold;
  margin:10px 0 10px;
  line-height: 1.4;
}


.default-style h1:first-child,
.default-style h2:first-child,
.default-style h3:first-child,
.default-style h4:first-child,
.default-style h5:first-child{
  margin-top:0;
}

.default-style blockquote{
  padding:5px 15px;
  background-color: #eee;
  border:none;
}
.default-style blockquote p{
  margin:5px 0;
}

.default-style hr{
  border:none;
  border-top:1px dotted #ddd;
  margin:30px 0;
}


.default-style a{
  text-decoration: underline;
}
.default-style a:hover{
  color:#999;
  text-decoration: none;
  opacity:0.8;
}



.default-style img{
  max-width: 100%;
  /*margin:20px auto;*/
  height: auto;
}
.default-style ul{
  margin:30px 0px;
  list-style-type: disc;
  list-style-position: outside;
  padding-left:20px;
  font-size: inherit
}
.default-style ol{
  font-size: inherit;
  margin:25px 0;
  padding-left: 20px;
  list-style-type: decimal;
  list-style-position: outside
}
.default-style ul li,
.default-style ol li{
  font-size: inherit;
  line-height: 1.6;
  margin:8px 0;
}





/* Feature articles;
-------------------------------  */
.default-style.feature-living{
  max-width: 740px;
  margin:0 auto;
}


.default-style.feature-living h1{
  position: relative;
  border:none;
  font-size:30px;
  padding:0px 0 0px 8px;
}
.default-style.feature-living h1:before,
.default-style.feature-living h1:after{
  content:'';
  display: block;
  width:100%;
  height:20px;
  position: absolute;
  z-index: -1;
  top:22px;
  left:0px;
}
.default-style.feature-living h1:before{
  background-image: url(img/common/bg-slashed.png);
  background-size: 35px;
  opacity:0.4;
  transform: translate(4px, 4px)
}
.default-style.feature-living h1:after{
  background-color: #fff6d7;
  opacity:0.6;
}


/* Speaker style */
.default-style p .speaker{
  float:left;
  font-weight: bold;
}
.default-style p .remark{
  margin-left:100px;
  display: block;
}


.default-style.feature-living hr{
  display: block;
  height:6px;
  width:auto;
  border:none;
  background-image: url(img/common/bg-slashed.png);
  background-size: 35px;
  opacity:0.8;
}




/* Parenting */
.default-style.feature-parenting{
  max-width: 740px;
  margin:0 auto;
}
.default-style.feature-parenting h1{
  border:none;
  padding:0;
  margin:60px 0 30px;
  padding-top:90px;
  background-repeat: repeat-x;
  background-position: center top;
  background-image: url(img/page/feature-parenting/header/flags.png);
  background-size:200px auto;
}
.default-style.feature-parenting h1 .header-img{
  margin:0 auto;
  display: block;
}

.default-style.feature-parenting h2{
  line-height: 45px;
  padding-bottom:4px;
  color: #e46e6e;
  font-size:24px;
}
.default-style.feature-parenting h2 .num{
  color:#fff;
  display: block;
  float:left;
  width:45px;
  height:45px;
  margin-right:20px;
  line-height: 45px;
  text-align: center;
  background-image: url(img/page/feature-parenting/header/h2-num.png);
  background-size: cover;
  color:#fff;
}














.default-style table{
  line-height: 1.6;
  width:100%;
  font-size: 13px;
}
.default-style table tr{

}

.default-style table tr th,
.default-style table tr td{
  padding: 14px 10px;
  border: 1px dashed #999;
  border-width: 1px 0;
  /*border-width: 0;*/
}
.default-style table tr th{
  font-weight: bold;
  /*width:90px;*/
}


.default-style table thead{
  font-weight: bold;
  background-color: #eee;
}






/* For wordPress Core feature
-------------------------------  */
.alignnone {

}
.aligncenter{
  display: block;
  margin-right:auto;
  margin-left:auto;
}
.alignright {
  float:right;
  margin: 5px 0 5px 30px;
}
.alignleft {
  float: left;
  margin: 5px 30px 5px 0;
}

a img.alignright {
  float: right;
  /*margin: 5px 0 20px 20px;*/
}
a img.alignnone {
  /*margin: 5px 20px 20px 0;*/
}
a img.alignleft {
  float: left;
  /*margin: 5px 20px 20px 0;*/
}
a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Figure shortcode from the admin edit */
.wp-caption{
  /*background: rgba(255,255,255,0.6);*/
  /*border: 1px solid #f0f0f0;*/
  max-width: 100%; /* Image does not overflow the content area */
  /*padding: 5px 3px 5px;*/
  text-align:left;
  margin-top:40px ;
  margin-bottom:40px ;
}
.wp-caption.alignnone {
  /*margin: 5px 20px 20px 0;*/
}
.wp-caption.alignleft {
  /*margin: 5px 20px 20px 0;*/
}
.wp-caption.alignright {
  /*margin: 5px 0 20px 20px;*/
}
.wp-caption img {
  display: block;
  border: 0 none;
  height: auto;
  margin: 0;
  padding: 0;
  width: auto;
}
.wp-caption .wp-caption-text{
  font-size: 12px;
  line-height: 1.4;
  padding: 6px 0;

}














@media (min-width:481px){
  br.m{
    display: none;
  }
}





