@charset "utf-8";

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 default style reset
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

/* reset
------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video{
  margin:0;
  padding:0;
  border:0;
  vertical-align:baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section{
  display:block;
}

html{
  overflow-y:scroll;
}

body {
  line-height:1;
}

blockquote, q{
  quotes:none;
}

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

input, select{
  vertical-align:middle;
}

input[type="submit"]{
  border:none;
}

input[type="button"]{
  border:none;
}

ol, ul{
  list-style:none;
}

table{
  border-collapse:collapse;
  border-spacing:0;
}

a:focus{
  outline:none;
}

/* clearfix
------------------------*/
.clearfix:after{
  content:"";
  height:0;
  display:block;
  clear:both;
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 common layout
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

body{
  color:#444;
  font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  background:#f7f2ee;
  -webkit-text-size-adjust:100%;
}

@media all and (max-width:480px){
  body{
  padding:0 0 11% 0;
  }
}

#wrapper{
  margin:0 auto;
  background:url(img/wrapper_bg.gif) repeat 0 0;
  z-index:50;
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 header
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

header{
  max-width:1140px;
  padding:1% 2% 0 2%;
  margin:0 auto;
  position:relative;
}

@media all and (max-width:830px){
  header{
  padding-top:2%;
  }
}

/* logo
------------------------*/
#logo{
  width: 42%;
  margin:0 0 2% 0;
  float:left;
}

#logo a{
  width:340px;
  height:65px;
  display:block;
  text-indent:-9999px;
  overflow:hidden;
  background:url(img/logo1.png) no-repeat center 0;
}

@media all and (max-width:830px){
  #logo{
  }
  
  #logo a{
  width:100%;
  height:auto;
  padding:3% 0;
  background:url(img/logo2.png) no-repeat 0 0;
  background-size:contain;
  }
}

@media all and (max-width:568px){
  #logo{
  width:50%;
  margin:0 auto 2% auto;
  float:inherit;
  }
  
  #logo a{
  width:auto;
  padding:5% 0;
  background-position:center;
  }
}

@media all and (max-width:480px){
}

@media all and (max-width:375px){
  
  #logo a{
  width:auto;
  height:auto;
  padding:4% 0;
  }
}

/* header contact
------------------------*/
.h_contact{
  width:56%;
  text-align:right;
  float:right;
}

.h_contact .open{
  font-size:68.75%;
  color:#42250f;
  display:inline-block;
}

.h_contact .open span{
  color:#fff;
  text-align:center;
  display:block;
  padding:2%;
  margin:0 0 2% 0;
  background:#42250f;
}

.h_contact .tel{
  color:#ffa500;
  font-size:180%;
  font-weight:bold;
  margin:0 2% 0 0;
  padding:1% 0 0 8%;
  background:url(img/icon_tel.png) no-repeat 0 50%;
  display:inline-block;
  background-size:44px 30px;
}

.h_contact .tel a{
  color:#ffa500;
}

@media all and (max-width:812px){
  .h_contact{
    margin:0 0 2% 0;
  }
  
  .h_contact .open{
    width:100%;
    display:block;
  }

  .h_contact .open span{
    display:inline-block;
    padding:1%;
    margin:0 2% 0 0;
  }

  .h_contact .tel{
    font-size:140%;
    padding-left:10%;
    margin:2% 0 0 0;
    background-size:contain;
  }
}

@media all and (max-width:568px){
  .h_contact{
    width:100%;
    text-align:center;
    float:inherit;
  }
  
  .h_contact .open{
    width:40%;
    display:inline-block;
    vertical-align:top;
  }
  
  .h_contact .open span{
    display:block;
    margin:0 0 2% 0;
  }
  
  .h_contact .tel{
    font-size:140%;
    padding:0 0 0 8%;
    margin:0;
    background-position:0 0;
  }
}

@media all and (max-width:375px){
  .h_contact{
    margin:0 auto;
  }
  
  .h_contact .open{
    width:58%;
    display:block;
    margin:0 auto;
  }

  .h_contact .open span{
    padding:1%;
    margin:0 0 2% 0;
  }
  
  .h_contact .tel{
    font-size:140%;
    padding:0 0 0 13%;
    margin:2% 0 0 0;
  }
}

/* header navi
------------------------*/
.h_navi{
  position: absolute;
  top:0;
  right:2%;
  width:58%;
  text-align: right;
  margin:2% 0;
}

.h_navi p{
  display:inline-block;
  font-size:75%;
  margin:0 0 0 10px;
  background-repeat:no-repeat;
  background-position:0 0;
  background-size:20px 20px;
}

.h_navi p a{
  min-height:20px;
  color:#42250f;
  display:block;
  padding:0 0 0 25px;
  line-height:1.8;
  text-decoration:none;
}

.h_navi p a:hover{
  text-decoration:underline;
}

.h_navi .h_01{
  background-image:url(img/icon_histry.png);
}

.h_navi .h_02{
  background-image:url(img/icon_keep.png);
}

.h_navi .h_03{
  background-image:url(img/icon_lock.png);
}

.h_navi .h_03.login_m{
  background-image:url(img/icon_logout.png);
}

@media all and (max-width:1150px){
}

@media all and (max-width:1024px){
}

@media all and (max-width:768px){
}

@media all and (max-width:568px){
  .h_navi{
    position: relative;
    right: 0;
    width:100%;
    text-align:center;
    margin:2% 0;
  }

  .h_navi p{
    display:inline-block;
    float:inherit;
  }

  .h_navi p.h_01{
    margin:0;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 global navi
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

#g_navi{
  width:58%;
  position:absolute;
  right:2%;
  bottom:0;
}

#g_navi ul{
  letter-spacing: -0.4em;
  text-align:right;
}

#g_navi li{
  font-size: calc(0.75rem + ((1vw - 7.68px) * 0.2688));
  width:19%;
  padding: 0 0.5%;
  letter-spacing: normal;
  text-align:center;
  display:inline-block;
}

#g_navi li:farst-child{
  padding-left:0;
}

#g_navi li:last-child{
  padding-right:0;
}

#g_navi li a {
  color:#fff;
  text-align:center;
  text-decoration:none;
  display:block;
  height:100%;
  padding:9% 5% 6%;
  background:rgba(66,37,15,0.5);
  border-top-right-radius:3px;
  border-top-left-radius:3px;
}

#g_navi li#current a,
#g_navi li a:hover{
  color:#fff;
  background:#42250f;
}

@media all and (max-width:768px){
  #g_navi{
    width:100%;
    margin:3% 0 0 0;
    position:static;
    clear:both;
  }

  #g_navi ul{
    text-align:center;
  }
  
  #g_navi li{
    font-size: 100%;
    width:24%;
  }

  #g_navi li:farst-child{
    padding-left:0.5%;
  }

  #g_navi li:last-child{
    padding-right:0.5%;
  }

  #g_navi li a{
    color:#fff;
    display:block;
    padding:7% 5%;
    background:#42250f;
    border-width:0;
    border-radius:0;
  }
  
  #g_navi .g_home{
    display:none;
  }
}

@media all and (max-width:480px){
  #g_navi{
    width:100%;
  }
  
  #g_navi li{
    font-size:75%;
    width:49%;
    margin:0 0 1% 0;
  }
  
  #g_navi li a,
  #g_navi li#current a{
    padding:5%;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 footer
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

footer{
  padding:1% 0 0 0;
  background:#aca19a;
}

/* footer navi
------------------------*/
.f_navi ul{
  text-align:center;
  padding:1%;
  border-bottom:1px solid #beb2aa;
}

.f_navi li{
  font-size:75%;
  line-height:140%;
  display:inline-block;
  padding:0 5px 0 0;
  border-right:1px solid #beb2aa;
}

.f_navi li a{
  color:#f6f1ed;
  display:block;
}

.f_navi li:last-child{
  padding:0;
  border-right:none;
}

.copyright{
  color:#f6f1ed;
  text-align:center;
  padding:1%;
}

.copyright a{
  color:#f6f1ed;
}

/* footer contents
------------------------*/
.f_content{
  max-width:1140px;
  text-align:center;
  padding:2%;
  margin:1% auto 0 auto;
  background:#fff;
}

.f_content div{
  display:inline-block;
  vertical-align:top;
}

@media all and (max-width:830px){
  .f_content{
    padding:3%;
  }
}

/* footer contact
------------------------*/
.f_contact{
  width:30%;
  padding:2% 0;
  margin:0 2% 0 0;
}

.f_contact .logo{
  width:100%;
  max-width: 340px;
  height:65px;
  text-indent:-9999px;
  overflow:hidden;
  margin:0 auto 2%;
  background:url(img/logo1.png) no-repeat center;
  background-size:100% auto;
}

.f_contact .open{
  color:#42250f;
  font-size:68.75%;
  margin:0 0 2% 0;
}

.f_contact .open span{
  color:#fff;
  text-align:center;
  display:block;
  background:#42250f;
  padding:1%;
  margin:0 0 1% 0;
}

.f_contact .tel{
  color:#ffa500;
  font-size:175%;
  font-weight:bold;
  padding:1% 0 0 15%;
  display:inline-block;
  background:url(img/icon_tel.png) no-repeat 0 50%;
  background-size:44px 30px;
}

.f_contact .tel a{
  color:#ffa500;
}

.f_contact .add{
  color:#42250f;
  font-size:68.75%;
  line-height:140%;
  margin:1% 0 0 0;
}

@media all and (max-width:1024px){
  .f_contact .logo{
    background-image:url(img/logo2.png);
    background-size:contain;
  }
  
  .f_contact .tel{
    font-size:calc(1.75rem + ((1vw - 19.2px) * 0.6944));
    padding-left:18%;
    background-size:contain;
  }
  
  .f_contact .add{
    margin:3% 0 0 0;
  }
}

@media all and (max-width:768px){
  .f_contact{
    width:40%;
    margin:0 2% 0 0;
  }
  
  .f_contact .tel{
    padding-left:18%;
  }
}

@media all and (max-width:480px){
  .f_contact{
    width:100%;
    margin:0 0 2% 0;
  }
  
  .f_contact .tel{
    font-size:175%;
    padding-left:44px;
    background-size:auto 28px;
  }
}

/* footer prefectures
------------------------*/
.prefectures{
  width:60%;
}

.prefectures ul{}

.prefectures li{
  width:8%;
  font-size:75%;
  text-align:center;
  padding:1%;
  margin:0 0 1% 0;
  border-right:1px solid#aca19b;
  float:left;
}
  
.prefectures li:nth-child(9n),
.prefectures li:last-child{
  border-right-width:0;
}

.prefectures li a{
  color:#aca19b;
}

@media all and (max-width:1024px){
  .prefectures li{
    width:10%;
  }
  
  .prefectures li:nth-child(9n){
    border-right-width:1px;
  }
  
  .prefectures li:nth-child(8n){
    border-right-width:0;
  }
}

@media all and (max-width:768px){
  .prefectures{
    width:50%;
  }
  
  .prefectures li{
    width:17%;
  }
  
  .prefectures li:nth-child(8n){
    border-right-width:1px;
  }
  
  .prefectures li:nth-child(5n){
    border-right-width:0;
  }
}

@media all and (max-width:568px){
  .prefectures li{
    width:22%;
  }
  
  .prefectures li:nth-child(5n){
    border-right-width:1px;
  }
  
  .prefectures li:nth-child(4n){
    border-right-width:0;
  }
}

@media all and (max-width:480px){
  .prefectures{
    width:auto;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 page top
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

#page_top{
  position:fixed;
  bottom:0;
  right:0;
  z-index:100;
}

#page_top a{
  color:#fff;
  font-size:100%;
  font-weight:bold;
  text-align:center;
  line-height:160%;
  padding:7% 5%;
  display:block;
  text-shadow:1px 1px #42250f;
  border:1px solid #42250f;
  background-color:#42250f;
  border-radius:5%;
  opacity:0.5;
}

@media all and (max-width:480px){
  #page_top{
    width:100%;
    border-radius:0;
  }

  #page_top a{
    padding:2%;
    border-radius:0;
  }
}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 contents
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

#contents{
  max-width:1140px;
  padding:0 2% 10% 2%;
  margin:2% auto 0 auto;
  background:url(img/contents_bg.png) repeat-x 0 bottom;
  background-size:contain;
}

.index #contents{}

#main{
  width:76%;
  /*overflow:hidden;*/
  float:right;
}

#sub{
  width:21%;
  /*overflow:hidden;*/
  float:left;
}

.column1 #main{
  width:100%;
}

@media all and (max-width:1024px){
  #contents{
    max-width:1024px;
  }
}

@media all and (max-width:830px){
  #contents{
    max-width:830px;
  }
  
  #main{
    width:100%;
  }
  
  #sub{
    width:100%;
  }
}

@media all and (max-width:768px){
  #contents{
    max-width:768px;
    padding:0 3% 10% 3%;
  }

  #main{
    width:100%;
  }
  
  #sub{
    width:100%;
    margin:2% 0 0 0;
  }
}

@media all and (max-width:480px){
  #contents{
    max-width:480px;
    padding:0 2% 10% 2%;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 common style
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

/* text
------------------------*/
img{
  max-width:100%;
  height:auto;
  display:block;
}

a{
  color:#6ec8c0;
  text-decoration:none;
}

.r_lnk{
  float:right;
}

.r_lnk a{
  min-height:14px;
  padding:0 19px 0 0;
  background:url(img/icon_arrow1.png) no-repeat right center;
  background-size:14px 14px;
}

.lnk a{
  min-height:14px;
  padding:0 0 0 19px;
  background:url(img/icon_arrow1.png) no-repeat left center;
  background-size:14px 14px;
}

.ex{
  font-size:100%;
  line-height:160%;
  margin:0 0 1% 0;
}

.note{
  width:100%;
  color:#878787;
  line-height:160%;
  display:block;
}

/* table
------------------------*/
table.common{
  width:100%;
  border-collapse:collapse;
  background:#fff;
}

table.common tr:nth-of-type(odd){
  background:#fbf8f4;
}

table.common td,
table.common th{
  text-align:center;
  padding:2%;
  border:1px solid #e1d3c9;
}

table.common th{
  font-size:87.5%;
  line-height:160%;
  font-weight:bold;
}

table.common thead th{
  color:#fff;
  background:#42250f;
}

table.common td{
  font-size:75%;
  line-height:160%;
}

@media all and (max-width:480px){
  table.common{
    display:block;
    background:none;
  }
  
  table.common tr:nth-of-type(odd){
    background:none;
  }

  table.common thead{
    display:none;
  }
  
  table.common tbody{
   display:block;
  }
  
  table.common tbody tr{
    display:block;
    margin-bottom:1.5em;
  }
  
  table.common tbody th,
  table.common tbody td{
    font-size:75%;
    text-align:left;
    display:list-item;
    list-style-type:none;
    border:none;
  }
  
  table.common tbody th{
    color:#fff;
    padding:1% 2%;
    margin-bottom:3%;
    background:#aca19a;
  }
  
  table.common tbody td{
    padding:0 2%;
    margin-bottom:2%;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 topicpath
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

#topicpath{
  padding:1% 5%;
  border-top:3px solid #42250f;
}

#topicpath ul{
  max-width:1140px;
  margin:0 auto;
}

#topicpath li{
  font-size:75%;
  line-height:160%;
  padding:0 0 0 2%;
  margin:0 1% 0 0;
  background:url(img/icon_arrow2.png) no-repeat 0 50%;
  word-wrap:break-word;
  float:left;
}

#topicpath li a{}

#topicpath li.home{
  padding:0;
  background:none;
}

#topicpath li strong{}

#topicpath li span{
  color:#878787;
}

@media all and (max-width:830px){
  #topicpath{
    padding:1% 3%;
  }
  
  #topicpath li{
    padding:0 0 0 3%;
  }
}

@media all and (max-width:768px){
  #topicpath{
    border-top:1px solid #42250f;
  }
}

@media all and (max-width:480px){
  #topicpath{
    border-top:none;
  }

  #topicpath li{
    padding:0 0 0 4%;
    border-top:none;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents index
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

/* top info
------------------------*/
#top_info{
  padding:10% 0;
  background:url(img/top_info.png) no-repeat 50% 50%;
  background-size:cover;
  border-top:3px solid #42250f;
  position:relative;
}

#top_info h2{
  color:#42250f;
  font-size:250%;
  font-size:calc(1.5rem + ((1vw - 4.8px) * 1.0606));
  font-weight:normal;
  text-shadow:1px 1px 3px #fff;
  line-height:160%;
  position:absolute;
  left:20%;
  bottom:40%;
}

@media all and (max-width:1280px){
  /*#top_info{
    padding:15% 0;
  }*/
}

@media all and (max-width:830px){
  /*#top_info{
    padding:20% 0;
  }*/
  #top_info{
    padding:15% 0;
  }
  
  #top_info h2{
    font-size:200%;
    font-size: calc(1.125rem + ((1vw - 3.2px) * 1.1765));
    left:13%;
  }
}

@media all and (max-width:480px){
  #top_info{
    margin-top:1%;
    padding:20% 0;
    border-top:none;
  }
}

/* top_special
------------------------*/
.top_special{
  margin:0 0 3% 0;
  position:relative;
}

.top_special h2{
  color:#fff;
  font-size:100%;
  font-weight:normal;
  text-align:center;
  padding:1% 5% 3% 5%;
  background:url(img/tag.png) no-repeat 0 0;
  background-size:contain;
  position:absolute;
  top:10px;
  left:-10px;
}

@media all and (max-width:480px){
  .top_special h2{
  font-size:87.5%;
  }
}

/* reco
------------------------*/
.reco{
  overflow:hidden;
  margin:3% 0 0 0;
}

.reco h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 1% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

/* new
------------------------*/
.new{
  overflow:hidden;
  margin:3% 0 0 0;
}

.new h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 1% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

.new .icon_new{
  width:50px;
  height:50px;
  text-indent:-9999px;
  overflow:hidden;
  background:url(img/icon_new.png) no-repeat 0 0;
  position:absolute;
  top:-3px;
  left:-7px;
  z-index:1;
}

@media all and (max-width:480px){
  .new ul{
    padding:2% 1%;
  }
  
  .new li{
    width:47%;
    margin:1% 1.5%;
  }

  .new li h3{
    display:none;
  }

  .new li p.name{
    margin-top:5px;
  }
}

/* ranking
------------------------*/
.ranking{
  overflow:hidden;
  margin:3% 0 0 0;
}

.ranking h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 1% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

/* owner_ranking
------------------------*/
.owner_ranking{
  overflow:hidden;
  margin:3% 0 0 0;
}

.owner_ranking h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 1% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

.owner_ranking h3{
  text-align:center;
}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents page navi
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
.page_navi{}

.page_navi p{
  font-size:100%;
}

.page_navi p strong{
  color:#ff9933;
  margin:0 0.5% 0 0;
}

.page_navi ul{
  text-align:right;
  margin:1% 0 0 0;
}

.page_navi li{
  font-size:75%;
  display:inline;
}

.page_navi li span{
  color:#fff;
  display:inline-block;
  padding:1%;
  background-color:#aca19a;
  border:1px #aca19a solid;
  font-weight:bold;
}

.page_navi li a{
  color:#aca19a;
  display:inline-block;
  padding:1%;
  border:1px #aca19a solid;
}
   
.page_navi li a:link,
.page_navi li a:visited{
  border-color:#aca19a;
}

.page_navi li a:hover,
.page_navi li a:active{
  color:#fff;
  border-color:#aca19a;
  background-color:#aca19a;
}

@media all and (max-width:830px){
  .page_navi ul{
    margin:2% 0 0 0;
  }
}

@media all and (max-width:767px){
  .page_navi li span{
    padding:2%;
    background-color:#aca19a;
    border:1px #aca19a solid;
    font-weight:bold;
  }

  .page_navi li a{
    color:#aca19a;
    display:inline-block;
    padding:2%;
    border:1px #aca19a solid;
  }
}

@media all and (max-width:567px){
  .page_navi li span{
    padding:4% 3%;
  }

  .page_navi li a{
    padding:4% 3%;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents item list
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.item_list1,
.item_list2,
.item_list3{}

.item_list1 h2,
.item_list2 h2,
.item_list3 h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 1% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

.item_list1 .lnk,
.item_list2 .lnk,
.item_list3 .lnk{
  font-size:87.5%;
  margin:0 0 2% 0;
}

/* tab
------------------------*/
.tab{
  border-bottom:2px solid #aca19a;
  margin:20px 0;
}

.tab p{
  width:33%;
  width:calc(100% / 3);
  float:left;
}

.tab a{
  color:#aca19a;
  font-size:100%;
  text-align:center;
  text-decoration:none;
  display:block;
  padding:2%;
  background:none;
  border-left:1px solid #aca19a;
  border-right:1px solid #aca19a;
  border-top:1px solid #aca19a;
  border-top-right-radius:3px;
  border-top-left-radius:3px;
}

.tab p.current a,
.tab p a:hover{
  color:#fff;
  background:#aca19a;
  border-left:1px solid #aca19a;
  border-right:1px solid #aca19a;
  border-top:1px solid #aca19a;
}

@media all and (max-width:830px){
  .tab a{
    font-size:87.5%;
    padding:3%;
  }
}

/* switch
------------------------*/
.switch{
  width:auto;
  margin:20px 0;
  letter-spacing:-.4em;
  box-sizing:border-box;
}

.switch li{
  display:inline-block;
  width:auto;
  letter-spacing:normal;
  box-sizing:border-box;
}

.switch a{
  color:#42250f;
  display:block;
  padding:10px;
}

.switch li{
  color:#aca19a;
  font-size:100%;
  text-align:center;
  text-decoration:none;
  background-color:#fff;
  border:1px solid #42250f;
  border-left-width:0;
}

.switch .current,
.switch a:hover{
  color:#fff;
  background:#42250f;
  padding:10px;
}

.switch a:hover,
.switch li:hover:not(.current) {
  color:#fff;
  background:#aca19a;
  border-color:#aca19a;
}

.switch li:first-child{
  border-left-width:1px;
  border-top-left-radius:5px;
  border-bottom-left-radius:5px;
}

.switch li:last-child{
  border-top-right-radius:5px;
  border-bottom-right-radius:5px;
}

@media all and (max-width:767px){
  .switch{
    width:100%;
  }

  .switch li{
    width:50%;
  }
}

/* table list
------------------------*/
table.list{
  width:100%;
  margin:3% 0;
  border-collapse:separate;
  border-spacing:1px;
  background:#ccc;
  border-top:2px solid #ccc;
}

table.list thead th{
  background:#eee;
}

.item_list2 table.list thead th{
  text-align:left;
}

table.list tbody .thumb{
  width:10%;
  margin:0 2% 0 0;
  float:left;
}

.item_list2 table.list thead .thumb{
  width:30%;
}

.item_list2 table.list thead .thumb img{
  width:100%;
}

table.list tbody .title{
  width:88%;
  text-align:left;
  float:left;
}

.item_list2 table.list tbody .title{
  width:100%;
  float:none;
}

table.list input[type="checkbox"]{
  margin:0 5px 0 0;
}
  
table.list th,
table.list td{
  font-size:75%;
  text-align:center;
  line-height:150%;
  padding:1%;
  vertical-align:middle;
}

table.list th{
  background:#f8f8f8;
}

table.list th a{
  color:#444;
  text-decoration:none;
}

table.list th a:hover{
  color:#67b9ca;
}

table.list td{
  background:#fff;
}

table.list .price p span{
  font-weight:bold;
  color:#F00;
  margin:0 1% 0 0;
}

@media all and (max-width:768px){
  table.list tbody .thumb{
    width:20%;
  }

  table.list tbody .title{
    width:78%;
  }
}

/* table detail
------------------------*/
table.detail{
  width:100%;
  background:#ccc;
  border-collapse:separate;
  border-spacing:1px;
}

table.detail th,
table.detail td{
  width:25%;
  font-size:100%;
  line-height:160%;
  padding:1%;
  border:1px solid #fff;
}

table.detail th{
  text-align:center;
  background:#f8f8f8;
}

table.detail td{
  background:#fff;
}

/* module option
------------------------*/
.option ul{
  margin:0 -1% -1% 0;
}

.option li{
  width:22%;
  color:#fff;
  text-align:center;
  padding:1%;
  margin:0 1% 1% 0;
  background:#67b9ca;
  float:left;
}

@media all and (max-width:480px){
  .option li{
    width:30.3%;
    font-size:68.75%;
  }
}

/* btn
------------------------*/
.btn_box{
  text-align:center;
  margin:1% 0;
}

p.btn{
  display:inline;
  margin:0 1%;
}

p.btn a{
  width:30%;
  color:#fff;
  font-weight:bold;
  text-overflow:ellipsis;
  overflow:hidden;
  white-space:nowrap;
  display:inline-block;
  padding:1%;
  box-sizing: border-box;
  border-radius:3px;
  border:1px solid #42250f;
  background:#42250f;
  background:linear-gradient(#42250f, #42250f);
}

.btn_box .ex{
  font-size:75%;
}

.delete{}

.delete a{
  color:#fff;
  padding:5% 0;
  display:block;
  background:#67b9ca;
}

.delete a:hover{
  background:#bbb;
}

p.btn_bookmark a{
  font-weight:normal;
  color:#666;
  padding-left:3%;
  border:1px solid #dadada;
  background:#fff url(img/icon_bookmark.png) no-repeat 5% 50%;
  background-size:16px 16px;
}

p.btn.btn_contact a{
  border:1px solid #ff9933;
  background:#ff9933;
}

@media all and (max-width:568px){
  p.btn_bookmark a{
    padding-left:6%;
  }
}

/* item list3
------------------------*/
.item_list3 .map{
  margin:3% 0;
}

.item_list3 #map_canvas{
  width:100%;
  height:100%;
}

.item_list3 #map_canvas::before{
  content:"";
  display:block;
  padding-top: 75%;/* 3/4*100=75 */
}

/* item 
------------------------*/
.item{
  border-top:1px solid #ccc;/**/
  box-sizing:border-box;
}

.item .title{
  margin:0;
  padding:1%;
  font-size:100%;
  line-height:150%;
  border:1px solid #ccc;
  border-top-width:2px;
  background-color:#eee;
}

.item label{
  display:block;
  margin:-1%;
  padding:1%;
  cursor:pointer;
}

.item input[type="checkbox"]{
  margin:0 0.5em 0 0;
}

.item .left{
  float:left;
}

.item .right{
  float:right;
}

.item .right .title{
  background-color:#fff;
  padding:1% 1% 1% 0;
  border-width:0;
  border-bottom-width:1px;
}

/* building item list1
------------------------*/
.item_list1.building .item{
  background-color:#fff;
  margin:3% 0;
  box-sizing:border-box;
}

.building .item .building_info{
  border:1px solid #ccc;
  border-top-width:0;
  border-bottom-width:0;
  padding:1%;
  box-sizing:border-box;
}

.building .item .building_info .thumb{
  width:220px;
}

.building .item .building_info .right{
  width:calc(100% - 230px);
}

/* building info
------------------------*/
.building_info .detail{
  background-color:#fff;
  width:100%;
  min-height:165px;
  border-collapse:separate;
  border-spacing:10px;
}

.building_info .title+.detail{
  min-height:inherit;
}

.building_info .detail th,
.building_info .detail td{
  background-color:#fff;
  line-height:150%;
}

.building_info .detail th{
  padding:0 0 1% 0;
  border-bottom:1px solid #ccc;
  text-align:left;
}

.building_info .detail tbody td{
  padding:3%;
  font-size:75%;
  border-left:1px solid #ccc;
  vertical-align:middle;
}

.building_info .detail tbody td:first-child{
  padding-left:0;
  border-left-width:0;
}

.building_info .detail .architecture{
  width:20%;
  text-align:center;
}

/* floor plan
------------------------*/
.floor_plan{
  width:100%;
}

.floor_plan table.list{
  margin:0;
  padding:0;
}

.floor_plan table.list .thumb{
  float:none;
  width:80px;
  margin:0;
}

.floor_plan table.list th.chaeckbox{
  width:30px;
}

.floor_plan .list .chaeckbox label,
.floor_plan .list .chaeckbox input[type='checkbox']{
  cursor:pointer;
  margin:0;
}

.floor_plan .list .chaeckbox label{
  display:block;
  width:100%;
  height:100%;
}

.floor_plan .list td.btn_box{
  width:200px;
  margin:0;
}

.floor_plan .list td.btn_box .btn a{
  display:block;
  width:100%;
}

@media all and (max-width:767px){
  .item .right .title{
    margin-left:10px;
  }

  .building .item .building_info .left{
    width:40%;
  }

  .building .item .building_info .thumb{
    width:100%;
  }

  .building .item .building_info .right{
    width:60%
  }

  .building_info .detail th,
  .building_info .detail td,
  .building_info .detail .architecture{
    display:block;
    width:100%;
  }

  .building_info .detail tbody td{
    border-left-width:0;
    padding:0;
    text-align:left;
  }

  .building_info .detail tbody td.architecture{
    padding:3% 0;
    text-align:left;
  }

  .floor_plan .list td.btn_box{
    width:10%;
  }

  .floor_plan .list td.btn_box p.btn_bookmark a{
    padding-left:15%;
  }
}

@media all and (max-width:567px){
  .floor_plan{
    border:1px solid #ccc;
    box-sizing:border-box;
  }

  .floor_plan table.list,
  .floor_plan thead,
  .floor_plan tbody,
  .item .floor_plan tfoot{
    background-color:#fff;
    display:block;
    width:100%;
  }

  .floor_plan table.list thead tr,
  .floor_plan table.list tbody tr{
    display:flex;
    align-items:center;
    justify-content:space-around;
    width:100%;
  }

  .floor_plan table.list thead tr{
    background-color:#eee;
  }

  .floor_plan table.list tbody tr{
    flex-wrap:wrap;
    border-bottom:1px solid #ccc;
  }

  .building .floor_plan table.list thead th,
  .building .floor_plan table.list tbody td{
    display:block;
    width:18%;
    box-sizing:border-box;
  }
  
  .building .floor_plan table.list tbody td{
    padding-top:3%;
  }
  
  .building .item .floor_plan .list thead th:last-child{
    display:none;
  }

  .building .item .floor_plan .list .chaeckbox{
    width:10%;
  }

  .building .item .floor_plan .list td.btn_box{
    width:100%;
  }

  .building .item .floor_plan .list tbody td.btn_box{
    padding-bottom:2%;
  }

  .building .item .floor_plan .list td.btn_box p.btn a{
    display:inline-block;
    width:47%;
  }

  .building .item .floor_plan .list td.btn_box p.btn_bookmark a{
    padding-left:6%;
  }

  .building .item table.list tfoot tr,
  .building .item table.list tfoot td{
    display:block;
    width:100%;
    box-sizing:border-box;
  }

  .building .item table.list tfoot td{
  }
}

@media all and (max-width:480px){
  .item_list1 > .btn_box p.btn a{
    width:80%;
    margin:1% 0;
    padding:2%;
  }
}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents item info
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.item_info{}

.item_info h2{
  font-size:100%;
  line-height:150%;
  color:#42250f;
  padding:1.2%;
  background:url(img/title_bg.gif) repeat 0 0;
}

/* table list
------------------------*/
.item_info table.list{
  margin:1% 0;
}

.item_info table.list .title{
  float:left;
}

.update{
  width:30%;
  text-align:right;
  float:right;
}

.update span{
  margin:0 0 0 3%;
}

/* btn
------------------------*/
.item_info .btn_box{
  text-align:center;
  margin:5% 0 0 0;
}

/* table detail
------------------------*/
.item_info table.detail th,
.item_info table.detail td{
  font-size:75%;
}

/* option
------------------------*/
.item_info .option li{
  width:17%;
  font-size:75%;
}

/* photo
------------------------*/
.photo{
  margin:5% 0 0 0;
}

.photo ul{
  letter-spacing:-0.4em;
  margin:0 -1% -2% 0;
}

.photo li{
  box-sizing:border-box;
  letter-spacing:normal;
  width:32%;
  margin:0 1.5% 2% 0;
  display:inline-block;
  vertical-align:top;
}

.photo li:nth-child(3n){
  margin-right:0;
}

/* floor plan
------------------------*/
.item_info .floor_plan{
  margin:3% 0 0 0;
}

.item_info .floor_plan .thumb{
  float:none;
  width:80px;
  margin:0;
}

.item_info .floor_plan table.list .link-more,
.item_info .floor_plan table.list .link_contact{
  width:10%;
}

.item_info .floor_plan .btn a{
  display:block;
  width:100%;
}

@media all and (max-width:567px){
  .item_info.building .floor_plan table.list tbody tr:last-child{
    border-bottom-width:0;
  }

  .item_info .floor_plan table.list{
    margin:0;
  }
  
  .item_info .floor_plan table.list tbody tr{
    flex-wrap:wrap;
  }
  
  .item_info .floor_plan table.list thead th,
  .item_info .floor_plan table.list tbody td{
    display:block;
    box-sizing:border-box;
  }

  .item_info .floor_plan table.list thead th,
  .item_info .floor_plan table.list tbody td{
    width:16%;
  }

  .item_info .floor_plan table.list thead th.thumb,
  .item_info .floor_plan table.list tbody td.thumb{
    width:20%;
  }

  .item_info .floor_plan table.list thead th.link-more,
  .item_info .floor_plan table.list thead th.link_contact{
    display:none;
  }

  .item_info .floor_plan table.list td.link-more,
  .item_info .floor_plan table.list td.link_contact{
    width:47%;
    padding-bottom:2%;
  }
}

@media all and (max-width:375px){
  /* 画像2列表示 
  .photo ul{
    margin:0;
  }
  
  .photo li{
    width:49%;
  }

  .photo li:nth-child(2n-1){
    margin-right:1%;
  }

  .photo li:nth-child(2n){
    margin-right:0;
    margin-left:1%;
  }*/
}

/* info
------------------------*/
.info{
  margin:3% 0 0 0;
}

.info h3{
  font-size:100%;
  font-weight:normal;
  color:#fff;
  padding:1.2%;
  margin:0 0 2% 0;
  background:#42250f;
}

/* access
------------------------*/
.access{
  margin:3% 0 0 0;
}

.access h3{
  font-size:100%;
  font-weight:normal;
  color:#fff;
  padding:1.2%;
  margin:0 0 2% 0;
  background:#42250f;
}

.access .map{
  width:300px;
  float:left;
}

.access .address{
  width:70%;
  float:right;
}

.access .address ul{}

.access .address li{
  font-size:75%;
  line-height:150%;
  padding:0 0 2% 0;
  margin:0 0 2% 0;
  border-bottom:1px dotted #bbb;
}

.access .address li span{
  font-weight:bold;
  display:block;
  margin:0 0 1% 0;
}

@media all and (max-width:1024px){
  .access .address{
    width:calc(100% - 320px);
  }
  
  .item_info p.btn a{
    width:47%;
    max-width:342px;
  }
}

@media all and (max-width:768px){
  .update{
    width:100%;
  }
  
  .item_info .option li{
    width:30.3%;
  }
}


@media all and (max-width:568px){
  .access .map{
    margin:0 auto;
    float:none;
  }
  
  .access .address{
    width:100%;
    margin:3% 0 0 0;
    float:none;
  }
  
  .item_info p.btn{
    font-size:87.5%;
    margin:0;
  }
  
  .item_info p.btn a{
    width:50%;
    margin:0 0 1% 0;
  }
}

@media all and (max-width:480px){
  .item_info table.list .title{
    width:100%;
    float:none;
  }
  
  .update{
    margin:1% 0 0 0;
  }
  
  .update span{
    display:block;
    margin:0;
  }
  
  .item_info .option li{
    width:47%;
    font-size:68.75%;
  }
  
  .item_info p.btn a{
    width:80%;
    margin:1% 0;
    padding:2%;
  }
}

/* company info
------------------------*/
.com_info{
  margin:3% 0 0 0;
}

.com_info .box{
  margin:1% 0 0 0;
  padding:3%;
  background:#fff;
}

.com_info h3{
  font-size:100%;
  font-weight:normal;
  color:#fff;
  padding:1.2%;
  margin:0 0 2% 0;
  background:#42250f;
}

.com_photo{
  width:24%;
  float:left;
}

.com_photo img{
  margin:0 0 3% 0;
}

.com_info .detail{
  width:73%;
  float:right;
}

.item_info .com_info:first-child{
  margin:0;
}

.com_info table.detail th{
  width: 10%;
}

.com_info+.photo{
  margin:3% 0 0 0;
}

@media all and (max-width:568px){
  .com_info h3{
    font-size:100%;
  }
}

@media all and (max-width:480px){
  .com_info h3{
    font-size:87.5%;
  }

  .com_photo{
    width:100%;
    padding:0 0 8px 0;
    float:none;
  }
  
  .com_photo img{
    margin:0;
  }

  .com_info .detail{
    width:100%;
    margin:3% 0 0 0;
    float:none;
  }

  .com_info table.detail th{
    width: 20%;
  }
}

/* entry
------------------------*/
.item_info .entry{
  margin:3% 0 0 0;
}

.item_info .entry h2{
  padding:1.2%;
  line-height:1;
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents form
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

/* submit
------------------------*/
.sbmt_box{
  text-align:center;
  margin:3% 0 0 0;
}

.sbmt_box .sbmt{
  display:inline;
}

.sbmt_box .btn{
  margin:0;
}

.sbmt{
  text-align:center;
  margin:3% 0 0 0;
}

.sbmt input[type="submit"]{
  width:48%;
  color:#fff;
  font-weight:bold;
  display:inline-block;
  padding:1%;
  border-radius:3px;
  border:1px solid #42250f;
  background:#42250f;
  background:linear-gradient(#42250f, #42250f);
  cursor:pointer;
}

.sbmt input[type="button"]{
  width:48%;
  color:#fff;
  font-weight:bold;
  display:inline-block;
  padding:1%;
  border-radius:3px;
  background:#42250f;
  background:linear-gradient(#42250f, #42250f);
  cursor:pointer;
}

/* form
------------------------*/
.form{
  margin:3% 0 0 0;
}

.form table{
  width:100%;
  border-collapse:collapse;
  background:#fff;
}

.form caption{
  color:#42250f;
  text-align:left;
  font-weight:bold;
  padding:0 0 0 1%;
  margin:0 0 1% 0;
  border-left:5px solid #42250f;
}

.form table tr:nth-of-type(odd){
  background:#fbf8f4;
}

.form table td,
.form table th{
  padding:2%;
  border:1px solid #e1d3c9;
}

.form table th{
  width:30%;
  font-size:87.5%;
  font-weight:bold;
  text-align:center;
  line-height:160%;
  vertical-align:top;
}

.form table td{
  font-size:75%;
  vertical-align:middle;
}

.form table thead th{
  color:#fff;
  background:#42250f;
}

.form td input{
  margin:0 3px 3px 3px;
  padding:2px;
  position:relative;
  top:1px;
}

.nec{
  color:#ff0000;
  margin:0 1%;
}

.form select{
  margin:3px 5px 3px 0;
}

.form textarea{
  width:98%;
}

.form td label{
  margin:3px 0;
}

.form td.row2 label{
  width:50%;
  float:left;
}

.form td.row4 label{
  width:25%;
  float:left;
}

.form .reminder.r_lnk{
  text-align:right;
  float:none;
  font-size:75%;
  margin:3% 0 0;
}

@media all and (max-width:480px){
  .form table{
    display:block;
    background:none;
  }
  
  .form table caption{
    display:block;
  }
  
  .form table tr:nth-of-type(odd){
    background:none;
  }
  
  .form table tbody{
    display:block;
  }
  
  .form table tbody tr{
    display:block;
    margin-bottom:1.5em;
  }
  
  .form table tbody th,
  .form table tbody td{
    font-size:75%;
    text-align:left;
    display:list-item;
    list-style-type:none;
    border:none;
  }
  
  .form table tbody th{
    width:auto;
    color:#fff;
    padding:1% 2%;
    margin-bottom:3%;
    background:#42250f;
  }
  
  .form table tbody td{
    padding:0 2%;
    margin-bottom:2%;
  }
  
  .form td.row2 label{
    width:100%;
  }
}

/* module check form
------------------------*/
.check_form{
  margin:3% 0 0 0;
}

.check_form table{
  width:100%;
  border-collapse:collapse;
  background:#fff;
}

.check_form caption{
  color:#42250f;
  text-align:left;
  font-weight:bold;
  padding:0 0 0 1%;
  margin:0 0 1% 0;
  border-left:5px solid #42250f;
}

.check_form table tr:nth-of-type(odd){
  background:#fbf8f4;
}

.check_form table td,
.check_form table th{
  padding:2%;
  border:1px solid #e1d3c9;
  vertical-align:top;
}

.check_form table th{
  width:30%;
  font-size:87.5%;
  font-weight:bold;
  text-align:center;
  line-height:160%;
}

.check_form table thead th{
  color:#fff;
  background:#42250f;
}

.check_form table td{
  font-size:75%;
}

@media all and (max-width:480px){
  .check_form table{
    display:block;
    background:none;
  }
  
  .check_form table caption{
    display:block;
  }
  
  .check_form table tr:nth-of-type(odd){
    background:none;
  }

  
  .check_form table tbody{
    display:block;
  }
  
  .check_form table tbody tr{
    display:block;
    margin-bottom:1.5em;
  }
  
  .check_form table tbody th,
  .check_form table tbody td{
    font-size:75%;
    text-align:left;
    display:list-item;
    list-style-type:none;
    border:none;
  }
  
  .check_form table tbody th{
    width:auto;
    color:#fff;
    padding:1% 2%;
    margin-bottom:3%;
    background:#aca19a;
  }
  
  .check_form table tbody td{
    padding:0 2%;
    margin-bottom:2%;
  }
}

/* error
------------------------*/
.error{
  margin:3% auto;
}
  
.error .msg{
  font-weight:bold;
  color:#ff0000;
  padding:0 0 0 19px;
  background:url(img/icon_alert.png) no-repeat 0 50%;
  background-size:contain;
}

.error ul{
  margin:1% 0 0 3%;
}
  
.error li{
  color:#ff0000;
  line-height:160%;
  list-style:disc;
}

@media all and (max-width:480px){
  .error .msg{
    font-size:75%;
  }
  
  .error ul{
    margin-left:8%;
  }

  .error li{
    font-size:75%;
  }
}

/* message
------------------------*/
.comp dl{
  padding:3%;
  background:#fbf8f4;
}

.comp dt{
  text-align:center;
  line-height:160%;
  margin:0 0 3% 0;
}

.comp dd{
  text-align:center;
}

.comp dd p a{
  min-height:14px;
  padding:0 0 0 19px;
  background:url(img/icon_arrow1.png) no-repeat 0 50%;
  background-size:14px 14px;
}

@media all and (max-width:480px){
  .comp dt,
  .comp dd p a{
    font-size:87.5%;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents contact
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.contact{}

.contact h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 1% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

.contact .ex{
  font-size:75%;
}

@media all and (max-width:480px){
  .contact .delete{
    width:10%;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents special
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.special{}

.special h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 1% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

.special .ex{
  font-size:75%;
}

.special ul{
  background-color:transparent;
}

@media all and (max-width:480px){
  .special ul li h3{
    display:block;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents about
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.about{}

.about h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 1% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

.about .ex{
  font-size:75%;
}

/* flow
------------------------*/
.flow ul{}

.flow li{
  padding:0 0 20% 0;
  margin:5% 0 10% 0;
}

.flow li:last-child{
  margin-bottom:0;
}

.flow li.f_01{
  background:url(img/sample_bg.jpg) no-repeat right 0;
  background-size:contain;
}

.flow li.f_02{
  background:url(img/sample_bg.jpg) no-repeat 0 0;
  background-size:contain;
}

.flow li h3{
  width:50%;
  color:#42250f;
  font-size:120%;
  font-weight:normal;
  line-height:160%;
  padding:1% 0;
  border-top:1px solid #42250f;
  border-bottom:1px solid #aca19a;
}

.flow li:nth-child(2n) h3,
.flow li:nth-child(2n) p{
  margin-left:50%;
}

.flow li p{
  width:50%;
  font-size:87.5%;
  line-height:160%;
  margin:3% 0 0 0;
}

@media all and (max-width:768px){
  .flow li.f_01,
  .flow li.f_02{
    background-size:50% auto;
  }

  .flow li h3{
    width:45%;
    font-size:100%;
  }
  
  .flow li:nth-child(2n) h3,
  .flow li:nth-child(2n) p{
    margin-left:55%;
  }
  
  .flow li p{
    width:45%;
  }
}

@media all and (max-width:480px){
  .flow li{
    padding:0 0 10% 0;
    margin:5% 0 5% 0;
  }
  
  .flow li.f_01,
  .flow li.f_02{
    padding:0 0 80% 0;
    background-position:center bottom;
    background-size:80% auto;
  }
  
  .flow li h3{
    width:100%;
    font-size:87.5%;
  }
  
  .flow li:nth-child(2n) h3,
  .flow li:nth-child(2n) p{
    margin-left:0;
  }
  
  .flow li p{
    width:100%;
    font-size:75%;
  }  
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents company
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.company{}

.company h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 2% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

.company table.common th{
  width:30%;
}

.company table.common td{
  text-align:left;
}

@media all and (max-width:480px){
  .company table.common th{
    width:auto;
  }

}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents policy
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.policy{}

.policy h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 2% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

.policy dl{}

.policy dt{
  font-size:87.5%;
  line-height:160%;
  font-weight:bold;
  margin:0 0 0.5% 0;
}

.policy dd{
  font-size:75%;
  line-height:160%;
  padding:0 0 1% 0;
  margin:0 0 1% 0;
  border-bottom:1px dotted #bbb;
}

.policy dd ol{
  margin:1% 0 0 0;
}

.policy dd li{
  list-style:decimal;
  margin:0 0 1% 3%;
}

@media all and (max-width:480px){
  .policy dd li{
    margin-left:5%;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents news
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.news{}

.news h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 2% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

/* module news list
------------------------*/
dl.news_list{
  position:relative;
  zoom:1;
}

dl.news_list dt,
dl.news_list dd{
  font-size:75%;
  line-height:160%;
  vertical-align:top;
}

dl.news_list dt{
  width:10%;
  color:#67b9ca;
  font-weight:bold;
  position:absolute;
}

dl.news_list dd{
  padding:0 0 1% 10%;
  margin:0 0 1% 0;
  border-bottom:1px dotted #bbb;
}

dl.news_list dd a{
  color:#42250f;
  text-decoration:underline;
}

@media all and (max-width:830px){  
  dl.news_list dt{
    width:12%;
  }
  
  dl.news_list dd{
    padding:0 0 1% 12%;
  }

}

@media all and (max-width:480px){
  dl.news_list dt{
    width:20%;
  }
  
  dl.news_list dd{
    padding:0 0 1% 20%;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents sitemap
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.sitemap{}

.sitemap h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 1% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

.sitemap h3{
  font-size:100%;
  color:#42250f;
  padding:0 0 0 1%;
  margin:2% 0 0 0;
  border-left:5px solid #42250f;
}

.sitemap ul{
  margin:1% -1% -1% 0;
}

.sitemap li{
  width:32%;
  margin:0 1% 1% 0;
  border:1px solid #d3c6b3;
  float:left;
}

.sitemap li a{
  font-size:75%;
  color:#94836f;
  text-decoration:none;
  padding:3%;
  display:block;
  background:url(img/icon_arrow2.png) no-repeat 98% 50%;
}

@media all and (max-width:768px){
  .sitemap h3{
    margin:3% 0 0 0;
  }
  
  .sitemap ul{
    margin-top:2%;
  }
  
  .sitemap li{
    width:48.2%;
  }
  
  .sitemap li a{
    font-size:75%;
    padding:5%;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #sub contents
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

#sub{}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #sub contents search
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.search{
  padding:5%;
  background:#fff;
  box-shadow:0 0 5px #ccc;
}

.search h2{
  color:#42250f;
  font-size:100%;
  padding:7% 0 7% 18%;
  margin:0 0 5% 0;
  border-top:1px solid #42250f;
  border-bottom:1px solid #42250f;
  background:url(img/icon_home.png) no-repeat 0 50%;
  background-size:32px 32px;
}

.search ul{}

.search li a:hover{
  filter:alpha(opacity=80);
  opacity:0.8;
}

.search li:last-child{
  margin:0;
}

@media all and (max-width:830px){
  .search{
    padding:2%;
    margin:3% 0 0 0;
  }

  .search h2{
    padding:3% 0 3% 6%;
    margin:0 0 2% 0;
  }
}

@media all and (max-width:480px){
  .search h2{
    background-size:16px 16px;
  }
}

/* module type
------------------------*/
.s_type ul{
}

.s_type li{
  width:100%;
  font-size:120%;
  margin:0 0 3% 0;
  border:1px solid #8bbdc4;
  background:url(img/type_bg.gif) repeat 0 0;
}

.s_type li a{
  color:#fff;
  display:block;
  text-decoration:none;
  padding:7% 0 7% 32%;
  background-repeat:no-repeat;
  background-position:0 0;
  background-size:contain;
}

.s_type li.st_01 a{
  background-image:url(img/type_01.gif);
}

.s_type li.st_02 a{
  background-image:url(img/type_02.gif);
}

.s_type li.st_03 a{
  background-image:url(img/type_03.gif);
}

.s_type li.st_04 a{
  background-image:url(img/type_04.gif);
}

.s_type li.st_05 a{
  background-image:url(img/type_05.gif);
}

.s_type li.st_06 a{
  background-image:url(img/type_06.gif);
}

.s_type li.st_07 a{
  background-image:url(img/type_07.gif);
}

.s_type li.st_08 a{
  background-image:url(img/type_08.gif);
}

@media all and (max-width:768px){
  .s_type ul{
    letter-spacing:-0.4em;
  }

  .s_type li{
    box-sizing:border-box;
    display:inline-block;
    width:32%;
    margin:1% 2% 1% 0;
    font-size:100%;
    letter-spacing:normal;
  }

  .s_type li:nth-child(3n){
    margin-right:0;
  }
}

@media all and (max-width:480px){
  .s_type li{
    width:48.2%;
  }

  .s_type li{
    width:49%;
  }
  
  .s_type li:nth-child(2n-1){
    margin-right:2%;
    margin-left:0;
  }
  
  .s_type li:nth-child(2n){
    margin-right:0;
  }
}

/* module form
------------------------*/
.s_form h2{}

.search table{
  width:100%;
}

.search th{
  color:#fff;
  font-size:75%;
  font-weight:normal;
  text-align:left;
  padding:2%;
  background:#aca19a;
}

.search td{
  font-size:75%;
  padding:5% 0 10% 0;
  background:#fff;
}

.search td input[type="text"]{
  width:96%;
  padding:1%;
}

.search td select[name="ls_line"]{
  width:100%;
  max-width:215px;
}
  
.search td label{
  width:48%;
  font-size:100%;
  margin:3% 0 0 0;
  padding:0;
  display:inline-block;
  vertical-align:top;
}

.search .sbmt{
  margin:0 0 5% 0;
}

@media all and (max-width:830px){
  .search th{
    padding:1%;
  }

  .search td{
    padding:2% 0 5% 0;
  }

  .search td select[name="ls_line"]{
    max-width:100%;
  }

  .search .sbmt{
    margin:0 0 3% 0;
  }
}


/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #sub contents top news
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.news_frame{
  width:100%;
  height:200px;
  background:#fff;
}

.top_news{
  overflow:hidden;
  padding:5%;
  margin:5% 0 0 0;
  background:#fff;
  box-shadow:0 0 5px #ccc;
}

.top_news h2{
  color:#42250f;
  font-size:100%;
  padding:7% 0 7% 15%;
  margin:0 0 5% 0;
  border-top:1px solid #42250f;
  border-bottom:1px solid #42250f;
  background:url(img/icon_edit.png) no-repeat 0 50%;
  background-size:32px 32px;
}

.top_news .r_lnk{
  font-size:75%;
  margin:3% 0 0 0;
}

@media all and (max-width:830px){
  .news_frame{
    height:260px;
  }
  
  .top_news{
    padding:2%;
    margin:3% 0 0 0;
  }

  .top_news h2{
    padding:3% 0 3% 6%;
    margin:0 0 2% 0;
  }
}

@media all and (max-width:480px){
  .news_frame{
    height:220px;
  }
  
  .top_news h2{
    background-size:16px 16px;
  }
}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #sub contents bana
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.bana_login,
.bana_member{
  background-color:#ffa500;
  border-radius:2px;
  margin:5% 0 5% 0;
}

.bana_login{
  background-color:#ffa500;
}

.bana_member{
  background-color:#67b9ca;
}

.bana_login a,
.bana_member a{
  color:#fff;
  display:block;
  padding:7% 7% 7% 24%;
  background-color:transparent;
  background-position:4% 50%;
  background-repeat:no-repeat;
  background-size:40px 40px;
}

.bana_login a{
  background-image:url(img/s_login.png);
}

.bana_member a{
  background-image:url(img/s_member.png);
}

.bana_login:hover、
.bana_member:hover{
  opacity: 0.9;
  filter: alpha(opacity=90);
}

@media all and (max-width:1150px){
  .bana_login a,
  .bana_member a{
    font-size:calc(1rem + ((1vw - 11.5px) * 1.5625));
  }
}

@media all and (max-width:830px){
  .bana_login,
  .bana_member{
    width:49%;
    margin:4% 1% 4% 0;
    float:left;
  }
  
  /*.bana_login,.bana_member*/
  .bana_login,
  .bana_member{
    border-radius:5px;
  }
  
  .bana_login a,
  .bana_member a{
    font-size:120%;
    text-align:center;
    padding:7% 7% 7% 18%;
  }
}

@media all and (max-width:480px){
  .bana_login,
  .bana_member{
    width:80%;
    margin:4% auto;
    float:none;
  }

  .bana_login a,
  .bana_member a{
    font-size:100%;
  }
}

@media all and (max-width:320px){
  .bana_login,
  .bana_member{
    width:100%;
  }
}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #sub news list
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

#sub dl.news_list{
  position:relative;
  zoom:1;
}

#sub dl.news_list dt,
#sub dl.news_list dd{
  font-size:75%;
}

#sub dl.news_list dt{
  width:100%;
  color:#67b9ca;
  font-weight:bold;
  margin:0 0 3% 0;
  position:relative;
}

#sub dl.news_list dd{
  line-height:160%;
  padding:0 0 5% 0;
  margin:0 0 5% 0;
  border-bottom:1px dotted #bbb;
}

#sub dl.news_list dd a{
  color:#42250f;
  display:block;
}

@media all and (max-width:830px){
  #sub dl.news_list dt{
    margin:0 0 1% 0;
  }
  
  #sub dl.news_list dd{
    padding:0 0 2% 0;
    margin:0 0 2% 0;
  }
}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents entry
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.entry{
}

.com_info + .entry{
  margin:3% 0 0 0;
}

.entry h2{
  font-size:100%;
  color:#42250f;
  padding:1.2%;
  margin:0 0 1% 0;
  background:url(img/title_bg.gif) repeat 0 0;
}

.entry .ex{
  font-size:75%;
}

.entry table.detail{
  margin:0 0 5% 0;
}

.entry .detail td{
  text-align:center;
}

a.link_delete{
  color:#fff;
  padding:5%;
  display:block;
  background:#ff9900;
  border-radius:3px;
}

a.link_delete:hover{
  background:#bbb;
}

p.link_delete{
  border:1px solid #dadada;
  background:#f8f8f8;
  border-radius:3px;
}

.link_bookmark{
  border:1px solid #dadada;
  background:#fff;
  border-radius:3px;
}

p.link_delete a,
.link_bookmark a{
  display:block;
  padding:1% 5%;
}

.link_remove{
  border:1px solid #dadada;
  background:#f8f8f8;
}

p.link_delete:hover,
.link_entry:hover,
.link_bookmark:hover{
  background:#fcfcfc;
}

.link_remove:hover{
  border:1px solid #e0e0e0;
  background:#e0e0e0;
}

.link_remove a{
  color:#666;
}

.link_contact a{
  color:#fff;
  font-weight:bold;
  display:block;
  padding:1% 5%;
  border-radius:3px;
  border:1px solid #ff9933;
  background:#ff9933;
}

@media all and (max-width:568px){
  .entry h2{
    font-size:100%;
  }
}

@media all and (max-width:480px){
  .entry h2{
    font-size:87.5%;
    padding:2%;
  }

  .entry table.detail{
    border:1px solid #ccc;
  }

  .entry table.detail tbody{
    padding:3%;
  }

  a.link_delete{
    width:45%;
    padding:2%;
    margin:5% auto 0 auto;
  }

  .link_bookmark,
  .link_remove a{
    margin:0 0 3% 0;
  }

  .entry table.list{
    background-color:transparent;
    border-spacing:0;
    border-top-width:0;
  }
  
  .entry table.list thead{
    display:none;
  }
  
  .entry table.list tr{
    display:block;
    width:100%;
    margin-bottom:3%;
    padding:1% 3%;
    background-color:#fff;
    border:1px solid #ccc;
    box-sizing:border-box;
  }
  .entry table.list th,
  .entry table.list td{
    display:block;
    width:100%;
    background-color:#fff;
    box-sizing:border-box;
  }
  
  .entry table.list tbody td:first-child{
    padding-top:3%;
  }
  
  .entry table.list tbody td:last-child{
    padding-bottom:3%;
  }
  
  p.link_delete {
    margin-bottom:2%;
    display:inline-block;
    min-width:60px;
  }

  .entry .link_bookmark,
  .entry .link_contact{
    margin:0 auto 1%;
    width:80%;
  }
}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

 #main contents recently_list
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.recently_list{}

.recently_list h2{
}

.recently_list .ex{
}

@media all and (max-width:480px){
  .contact .delete{
    width:10%;
  }
}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

  module member l_navi
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.l_navi{
  padding:0 9px 9px 9px;
  margin:5% 0;
  background-color:#67b9ca;
  border-radius:2px;
}

.l_navi h2{
  color:#fff;
  font-size:87.5%;
  text-align:center;
  height:25px;
  padding:13px 0 0 0;
}

.l_navi ul{
  padding:10px;
  background-color:#fff;
}

.l_navi li a{
  font-size:75%;
  font-weight:bold;
  text-decoration:none;
  display:block;
  padding:7px 0 7px 20px;
  border-bottom:1px dotted #bbb;
  background:url(img/icon_arrow1.png) no-repeat 0 50%;
  background-size:14px 14px;
}

.l_navi li a:hover{
  color:#ff9900;
}

@media all and (max-width:768px){
  .l_navi{
    margin:3% 0 5% 0;
  }
}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

  #main contents module post_list
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.post_list{
  padding:0 0.5%;
  letter-spacing:-0.4em;
  background:#fff;
}

.post_list li{
  width:23%;
  text-align:left;
  letter-spacing:normal;
  margin:1%;
  display:inline-block;
  vertical-align:top;
  position:relative;
}

.post_list li h3{
  color:#67b9ca;
  font-size:87.5%;
  line-height:140%;
  display:block;
  margin:10px 0 0 0;
  text-overflow:ellipsis;
  -webkit-text-overflow:ellipsis;
  -o-text-overflow:ellipsis;
  overflow:hidden;
  white-space:nowrap;
}

.post_list li p{
  font-size:75%;
  line-height:150%;
}

.post_list li .price{
  color:red;
  font-weight:bold;
}

@media all and (max-width:480px){
  .post_list{
    padding:2% 1%;
  }
  
  .post_list li{
    width:47%;
    margin:1% 1.5%;
  }

  .post_list li h3{
    display:none;
  }

  .post_list li p.name{
    margin-top:5px;
  }
}

/* post_img
------------------------*/
.post_img{
  position:relative;
  overflow:hidden;
  width:100%;
}

.post_img:before{
  content:"";
  display:block;
  width:100%;
  padding-top:75%;
}

.post_img a{
  position:absolute;
  top:50%;
  left:50%;
  height:100%;
  width:100%;
}

.post_img img{
  height:100%;
  width:auto;
  max-width:none;
  transform:translate(-50%, -50%);
}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

  google map
 
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/

.map{}

.map_item{
}

.gm-style .gm-style-iw a{
  color:#444;
}

.gm-style .gm-style-iw a img{
  width:170px;
  height:auto;
  margin:5px 0 5px 0;
}

.gm-style .gm-style-iw a p{
  font-size:87.5%;
}

.gm-style .gm-style-iw a .title{
  color:#6ec8c0;
  width:100%;
  max-height:2.7em;
  font-size:100%;
  line-height:135%;
  overflow:hidden;
}

.gm-style .gm-style-iw .title strong{
  font-weight:normal;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.gm-style .gm-style-iw a .price{
}