@charset "utf-8";
/*-----------------------------------------------------

  layout.css
  common CSS

------------------------------------------------------*/


/*-----------------------------------------------------
  general　
-----------------------------------------------------*/


body{
  min-width: 1260px;
  background: #fff;
  font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
  line-height: 1.5;
  font-size: 55.6%;
  font-weight: 400;
  color: #323232;
}

*{
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
}

a:link {text-decoration:none; color:#3487a5;}
a:visited {text-decoration:none; color:#3487a5;}
a:hover {text-decoration:none; color:#fea202;}

#wrapper {
  width: 100%;
  position: relative;
}

#menu_open_cover {
  display: none;
}

#contents {
  width: 1200px;
  margin: 0 auto;
  padding-bottom: 120px;
}

#left_column {
  width: 834px;
  float: left;
}

body.travel #left_column {
  width: 800px;
  margin: 0 auto;
  float: none;
}

#right_column {
  width: 336px;
  float: right;
}


#maintenance {
  font-size: 1.2em;
  color: #e60012;
  text-align: center;
  padding: 15px 0;
}


/* sns  */

ul.sns {
  letter-spacing: -.40em;
}

  ul.sns li {
    letter-spacing: normal;
    display: inline-block;
    padding: 0 20px;
    border-right: solid 1px #323232;
    height: 25px;
  }

  ul.sns li:last-child {
    border-right: none;
  }

  ul.sns li img {
    height: 100%;
    width: auto;
  }

  ul.sns li a:hover img {
    opacity: 0.7;
  }

ul.sns_color {
  letter-spacing: -.40em;
  text-align: center;
  padding: 30px 0;
}

  ul.sns_color li {
    letter-spacing: normal;
    display: inline-block;
    padding: 0 30px;
    border-right: solid 1px #323232;
    height: 40px;
  }

  ul.sns_color li:last-child {
    border-right: none;
  }

  ul.sns_color li img {
    height: 100%;
    width: auto;
  }

  ul.sns_color li a:hover img {
    opacity: 0.7;
  }

.btn_menu {
  display: none;
}


/* gnavi  */

#sp_navimenu {
  display: none;
}

#gnavi {
  letter-spacing: -.40em;
  text-align: center;
}

  #gnavi li {
    width: 200px;
    height: 100px;
    letter-spacing: normal;
    display: inline-block;
    font-size: 2em;
    font-weight: 700;
    line-height: 1.3;
    background: url(../images/common/gnavi_line.png) no-repeat right center;
  }

  #gnavi li.navi_06 {
    font-size: 1.8em;
  }

  #gnavi li:last-child {
    background: none;
  }

  #gnavi li span {
    -webkit-transition: all .3s;
    transition: all .3s;
  }

  #gnavi li.navi_01 span, #gnavi li.navi_02 span, #gnavi li.navi_03 span, #gnavi li.navi_04 span {
    font-size: 1.333em;
    padding-right: 3px;
    line-height: 1.2;
  }

  #gnavi li a:link {text-decoration:none; color:#323232;}
  #gnavi li a:visited {text-decoration:none; color:#323232;}
  #gnavi li a:hover {text-decoration:none; color:#fff;}

  #gnavi li a:link span {text-decoration:none; color:#fea202;}
  #gnavi li a:visited span {text-decoration:none; color:#fea202;}
  #gnavi li a:hover span {text-decoration:none; color:#fff100;}

  #gnavi li a {
    width: 180px;
    height: 100px;
    padding-top: 33px;
    display: inline-block;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }

  #gnavi li.navi_04 span {
    font-size: 1.1em;
  }

  #gnavi li.navi_05 a {
    padding-top: 35px;
  }

  #gnavi li.navi_06 a {
    padding-top: 23px;
  }

  #gnavi li a:hover {
    background: #3487a5;
    -webkit-transition: all .3s;
    transition: all .3s;
  }

#navi_fixed {
  width: 100%;
  height: 94px;
  position: fixed;
  top: 0;
  background: #fff;
  box-shadow: 0px 0px 8px #333;
  -moz-box-shadow: 0px 0px 8px #333;
  -webkit-box-shadow: 0px 0px 8px #333;
  z-index: 9999;
  border-bottom: solid 5px #3487a5;
  display: none;
}

body#top #navi_fixed #gnavi, body#sub #navi_fixed #gnavi {
  margin: 7px 0;
}

body#sub #navi_fixed nav {
  border: none;
}

#navi_fixed #gnavi li {
  height: 80px;
}

#navi_fixed #gnavi li a {
  height: 75px;
  padding-top: 10px;
}

#navi_fixed #gnavi li.navi_05 a, #navi_fixed #gnavi li.navi_06 a {
  padding-top: 13px;
}

#sp_navi {
  display: none;
}

/* section  */

section h2 {
  font-size: 2.8em;
  font-weight: 700;
  line-height: 1;
  border-bottom: solid 1px #9a9692;
  padding-bottom: 10px;
  text-align: center;
}

section h3.tit_en {
  padding-top:15px !important;
  color: #dde4e7;
  font-family: 'Roboto Slab', serif;
  font-weight: bold;
  font-size: 2.4em !important;
  text-align: center;
}

/* link_area  */
  .link_area {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }


/* btn  */

.btn_more_l {
}

  .btn_more_l a {
    width: 240px;
    height: 42px;
    display: block;
    margin: 30px auto;
    border: solid 1px #323232;
    border-radius: 21px;
    -webkit-border-radius: 21px;
    -moz-border-radius: 21px;
    font-family: 'Roboto Slab', serif;
    font-weight: bold;
    font-size: 2em !important;
    text-align: center;
    line-height: 35px;
  }

  .btn_more_l a:link {text-decoration:none; color:#323232;}
  .btn_more_l a:visited {text-decoration:none; color:#323232;}
  .btn_more_l a:hover {text-decoration:none; color:#fff;}

  .btn_more_l a:hover {
    background: #fea202;
    -webkit-transition: all .3s;
    transition: all .3s;
    border: solid 1px #fea202;
  }

.btn_more_l.btn_jp {
  text-align: center;
}

.btn_more_l.btn_jp a {
  display: inline-block;
  font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
  width: auto;
  padding: 0 40px;
  line-height: 38px;
}

#moreButton {
  cursor: pointer;
  position: relative;
}

.btn_more_l.btn_jp a#moreButton {
  width: 240px;
}

#moreButton .more_posts {
  display: inline;
}

#moreButton .ajax_loading {
  display: none;
}

#moreButton.loading .more_posts {
  display: none;
}

#moreButton.loading .ajax_loading {
  display: inline;
}

#moreButton.loading::after {
  content: '';
  display: block;
  position: absolute;
  right: 15px;
  top: 8px;
  vertical-align: middle;
  color: #666;
  line-height: 1;
  width: 25px;
  height: 25px;
  border: 0.12em solid rgba(102, 102, 102, 0.3);
  border-top-color: currentColor;
  border-radius: 50%;
  box-sizing: border-box;
  animation: rotate 1s linear infinite;
}

@keyframes rotate {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}



.btn_more_s {
  text-align: right;
}

  .btn_more_s a {
    width: 88px;
    height: 23px;
    display: inline-block;
    margin: 12px auto 0;
    border: solid 1px #323232;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    font-family: 'Roboto Slab', serif;
    font-weight: bold;
    font-size: 1.4em !important;
    text-align: center;
    line-height: 18px;
  }

  .btn_more_s a:link {text-decoration:none; color:#323232;}
  .btn_more_s a:visited {text-decoration:none; color:#323232;}
  .btn_more_s a:hover {text-decoration:none; color:#fff;}

  .btn_more_s a:hover {
    background: #fea202;
    -webkit-transition: all .3s;
    transition: all .3s;
    border: solid 1px #fea202;
  }

  .btn_more_s.btn_jp a {
  font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
    width: auto;
    padding: 0 10px;
    line-height: 20px;
  }

.btn_back {
  padding: 20px 0;
  text-align: right;
}

.btn_back a {
  display: inline-block;
  background: url(../images/common/arrow_back.png) no-repeat left bottom;
  background-size: 24px auto;
  padding-left: 35px;
  font-size: 1.8em;
}

  .btn_back a:link {text-decoration:none; color:#323232;}
  .btn_back a:visited {text-decoration:none; color:#323232;}
  .btn_back a:hover {text-decoration:none; color:#fea202;}


/* right column  */

#right_column h3 {
  height: 45px;
  line-height: 45px;
  background: #3487a5;
  font-size: 2em;
  text-align: center;
  font-weight: 700;
  color: #fff;
}

#right_column .right_guide h3 {
  background: url(../images/common/icon_kanban_white.png) no-repeat right 12px center #3487a5;
  background-size: 18px auto;
}

.right_list_box {
  padding-top: 25px;
}

#right_column h4 {
  color: #3487a5;
  font-size: 1.6em;
  font-weight: 700;
  border-bottom: solid 1px #9a9692;
  padding-bottom: 5px;
}

#right_column .right_list li {
  padding: 7px 0;
  border-bottom: dotted 1px #9a9692;
  overflow: hidden;
}

#right_column .right_list li:last-child {
  border: none;
}

#right_column .right_list li .right_list_photo {
  width: 120px;
  height: 80px;
  float: left;
  overflow: hidden;
  position: relative;
  border: solid 1px #ebebeb;
}

#right_column .right_list li .right_list_photo img {
  position: absolute;
  width: 100%;
  height: auto;
  min-width: 100%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
}

#right_column .right_list li a:hover .right_list_photo img {
  opacity: 0.8;
}

#right_column .right_list li p {
  width: 200px;
  float: right;
  font-size: 1.4em;
}

#right_column .right_list li a:link {text-decoration:none; color:#323232;}
#right_column .right_list li a:visited {text-decoration:none; color:#323232;}
#right_column .right_list li a:hover {text-decoration:none; color:#fea202;}


#right_column .right_list.feature {
  margin-top: 35px;
}

#right_column .feature h3 {
  background: url(../images/common/icon_road.png) no-repeat right 12px center #3487a5;
  background-size: 24px auto;
}

#right_column .feature span.font_large {
font-size:1.286em;
}

#right_column .feature span.font_bold {
  font-weight: 700;
}

#right_column .feature span.kaigyou {
  display: block;
}

#right_column .agent_ranking {
  width: 336px;
  margin-top: 35px;
}

@media screen and (min-width: 768px) {

  #right_column .agent_ranking.inview {
    position: absolute !important;
    bottom: 545px !important;
    top: inherit !important;
  }

}

#right_column .agent_ranking h3 {
  height: auto;
  background: #487197;
  padding: 10px 12px 12px 12px;
  line-height: 1.3;
}

#right_column .agent_ranking h3 span {
  color: #fff100;
}

#right_column .agent_ranking .right_list_logo {
  width: 60px;
  height: 60px;
  border: solid 1px #d0d0d0;
  display: table;
  text-align: center;
  float: left;
}

#right_column .agent_ranking .right_list_logo div {
  display: table-cell;
  vertical-align: middle;
}

#right_column .agent_ranking .right_list_logo img {
  width: 100%;
  height: auto;
}

#right_column .agent_ranking a:hover .right_list_logo img {
  opacity: 0.8;
}

#right_column .right_list.agent_ranking p {
  width: 260px;
  font-size: 1.6em !important;
  line-height: 1.3;
}

#right_column .agent_ranking p span {
  display: block;
  font-weight: 700;
  font-size: 1.125em;
}

#right_column .agent_ranking p span.right_ranking_01 {
  background: url(../images/common/icon_ranking_01.png) no-repeat left center;
  background-size: 25px;
  padding-left: 35px;
}

#right_column .agent_ranking p span.right_ranking_02 {
  background: url(../images/common/icon_ranking_02.png) no-repeat left center;
  background-size: 25px;
  padding-left: 35px;
}

#right_column .agent_ranking p span.right_ranking_03 {
  background: url(../images/common/icon_ranking_03.png) no-repeat left center;
  background-size: 25px;
  padding-left: 35px;
}

#right_column .recommend_ranking {
  padding-top: 15px;
}

#right_column .recommend_ranking li {
  font-size: 1.4em;
  background: url(../images/common/arrow_gray.png) no-repeat left 5px top 18px;
  background-size: 7px auto;
  padding: 10px 0 10px 22px;
}

#right_column .right_ad {
  max-width: 336px;
  margin: 0 auto 40px;
  text-align: center;
}

#right_column .right_ad img {
  max-width: 336px;
  height: auto;
  border: solid 1px #CCC;
}

#right_column .right_ad a:hover {
  opacity: 0.8;
}

#right_column .right_ad h5 {
  font-size: 1.2em;
  font-weight: normal;
  text-align: center;
  padding-bottom: 10px;
}

#right_column .right_facebook {
  height: 214px;
  margin-top: 50px;
}

#right_column .right_twitter {
  height: 302px;
  margin-top: 30px;
  border: solid 1px #f2f2f2;
}

#right_column .right_sns_banner {
  margin: 50px 0;
}

#right_column .right_sns_banner a {
  display: block;
  margin: 0 0 20px;
  text-align: center;
}

#right_column .right_sns_banner a:hover img {
  opacity: 0.8;
}

/* footer  */

#page_top {
  width: 52px;
  height: 52px;
  position: fixed;
  left: 50%;
  margin-left: 527px;
  display: none;
}

#page_top a {
  width: 52px;
  height: 52px;
  display: block;
  background: url(../images/common/arrow_pagetop.png) no-repeat center center #3487a5;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

#page_top a:hover {
  background: url(../images/common/arrow_pagetop.png) no-repeat center center #fea202;
}

/* 目次 */
#page_top.index a {
  background: url(../images/common/icon_index_footer.png) no-repeat center center #3487a5;
  cursor: pointer;
}

#page_top.index a:hover {
  background: url(../images/common/icon_index_footer.png) no-repeat center center #fea202;
}

#index_wrapper {
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.8);
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: none;
  z-index: 9999;
}

#index_wrapper_inner {
  width: 800px;
  height: 85%;
  margin: 0 auto;
  padding: 40px 0;
}

  #index_wrapper  #cover_index_tit {
    border-radius: 10px 10px 0px 0px;
    -webkit-border-radius: 10px 10px 0px 0px;
    -moz-border-radius: 10px 10px 0px 0px;
    background: #3487a5;
    line-height: 1;
  }

  #index_wrapper  #cover_index_tit {
    text-align: center;
    padding: 25px 0 15px;
    letter-spacing: 0.5em;
    color: #fff;
    font-size: 3em;
    font-weight: bold;
  }

  #index_wrapper  #cover_index_tit span.index_icon {
    background: url(../images/common/icon_index.png) no-repeat left center;
    background-size: 24px auto;
    padding: 10px 0 10px 35px;
  }

  #index_wrapper  #cover_index_tit span.index_close {
    font-size: 0.75em;
  }

  #index_wrapper  #cover_index_tit span.index_close a {
    text-decoration: underline;
    cursor: pointer;
  }

  #index_wrapper .toc_list {
    height: 100%;
    overflow-y: auto;
    padding: 30px 40px;
    background: #f7f3ee;
    border-radius: 0 0 10px 10px;
    -webkit-border-radius: 0 0 10px 10px;
    -moz-border-radius: 0 0 10px 10px;
  }

  #index_wrapper .toc_list li {
    font-size: 1.8em;
    margin-bottom: 20px;
    background: url(../images/common/arrow_blue.png) no-repeat left 5px;
    background-size: 16px auto;
    padding-left: 26px;
  }

  #index_wrapper.taikendan_index .toc_list li {
    background-position: left 13px;
  }

  #index_wrapper .toc_list li ul {
    margin: 10px 0;
  }

  #index_wrapper .toc_list li li {
    font-size: 0.85em;
    background: url(../images/common/icon_line_blue.png) no-repeat left 10px;
    background-size: 15px 1px;
    margin-bottom: 10px;
  }

  #index_wrapper .toc_list a:link {text-decoration:none; color:#323232;}
  #index_wrapper .toc_list a:visited {text-decoration:none; color:#323232;}
  #index_wrapper .toc_list a:hover {text-decoration:none; color:#fea202;}

  #index_wrapper .index_tit {
    font-size: 1.2em;
    font-weight: bold;
  }

  #index_wrapper .index_tit span {
    font-family: 'Roboto Slab', serif;
    font-weight: bold;
    font-size: 1.6em;
    color: #dbd7d3;
    padding-right: 8px;
    line-height: 1.2;
  }



footer#page_footer {
  background: #e6e6e6;
  border-bottom: solid 25px #5f686c;
}

footer#page_footer a:link {text-decoration:none; color:#323232;}
footer#page_footer a:visited {text-decoration:none; color:#323232;}
footer#page_footer a:hover {text-decoration:none; color:#fea202;}

#footer_inner {
  width: 1200px;
  height: 480px;
  margin: 0 auto;
  padding:40px;
  overflow: hidden;
  position: relative;
}

#footer_inner ul {
  width: 250px;
  float: left;
}

#footer_inner ul.wide {
  width: 400px;
}

#footer_inner li {
  background: url(../images/common/arrow_gray.png) no-repeat left 9px;
  background-size: 7px auto;
  margin: 0 0 10px 20px;
  padding-left: 22px;
  font-size: 1.6em;
}

#footer_inner li.footer_navi_tit {
  margin-left: 5px;
  font-weight: 700;
}

#footer_inner li.footer_navi_tit.external_link {
  background: none;
  padding-left: 0;
}

#footer_inner li.external_link_icon {
  background: url(../images/common/icon_outerlink.png) no-repeat left top 2px;
  background-size: 16px auto;
}

#footer_logo {
  position: absolute;
  bottom: 80px;
  right: 37px;
}

#footer_logo a:hover img {
  opacity: 0.8;
}

#copyright {
  position: absolute;
  bottom: 42px;
  right: 37px;
  font-family: 'Roboto Slab', serif;
  font-size: 1.4em;
  color: #666666;
}

#footer_banner {
  width: 100%;
  height: 120px;
  position: fixed;
  bottom: 5px;
  text-align: center;
  z-index: 9999;
  display: none;
}

#footer_banner .footer_banner_inner {
  width: 1200px;
  height: 120px;
  display: inline-block;
  background: #fff;
  position: relative;
}

#footer_banner a {
  width: 100%;
  height: 100%;
  display: inline-block;
}

#footer_banner a:hover {
  opacity: 0.8;
}

.footer_banner_close {
  width: 50px;
  height: 50px;
  position: absolute;
  top: -55px;
  right: 10px;
  background: url(./../images/common/btn_banner_close.png) no-repeat center center;
  cursor: pointer;
}


/* search_from_tag  */
#search_from_tag {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

.search_from_tag_box {
  margin-bottom: 50px;
}

#search_from_tag h2 {
  border-bottom: solid 1px #9a9692;
  font-size: 2.8em;
  font-weight: 700;
  text-align: center;
  padding-bottom: 5px;
}

#search_from_tag .search_list {
  text-align: left;
  border-radius: 0;
  padding: 40px 40px 40px 60px;
}

#search_from_tag .search_list li {
  width: 240px;
  display: inline-block;
}

#search_from_tag .search_list_tag {
  text-align: left;
  background: #fbf8f4;
  padding: 40px;
}

#search_from_tag ul.tag {
  background: url(../images/common/icon_tag.png) no-repeat left 5px;
  background-size: 17px auto;
  margin-top: 7px;
  padding-left: 28px;
  letter-spacing: -.40em;
}

#search_from_tag ul.tag li {
  display: inline-block;
  letter-spacing: normal;
  margin: 0 8px 8px 0;
}

#search_from_tag ul.tag li a {
  display: block;
  background: #fff;
  font-size: 1.6em;
  height: 30px;
  line-height: 30px;
  padding: 0 10px;
  border-radius: 5px;
}

/* phase  */

#phase {
  width: 1200px;
  margin: 0 auto;
  text-align: center;
}

#phase a:link {text-decoration:none; color:#323232;}
#phase a:visited {text-decoration:none; color:#323232;}
#phase a:hover {text-decoration:none; color:#323232;}

#phase .btn_more_l a:link {text-decoration:none; color:#323232;}
#phase .btn_more_l a:visited {text-decoration:none; color:#323232;}
#phase .btn_more_l a:hover {text-decoration:none; color:#fff;}


  #phase h2 {
    border-bottom: solid 1px #9a9692;
    font-size: 2.8em;
    font-weight: 700;
    text-align: center;
    padding-bottom: 5px;
  }

#phase .phase_contents {
  background: #fbf8f4;
  padding: 20px 0;
  letter-spacing: -.40em;
}

#phase dl {
  width: 220px;
  display: inline-block;
  letter-spacing: normal;
  border-bottom: solid 5px #fbf8f4;
  margin: 0 10px;
  padding-top: 10px;
}

#phase dl .tit_phase {
  font-family: 'Roboto Slab', serif;
  color: #eb7f78;
  font-size: 0.9em;
}

#phase dt {
  font-size: 1.8em;
  font-weight: bold;
  line-height: 1.5;
}

#phase dd {
  height: 250px;
}

#phase a:hover dl {
  border-bottom: solid 5px #fea202;
}

@media screen and (min-width: 768px) {

#phase.narrow {
  width: 100%;
  margin: 0 auto 80px;
  text-align: center;
}


  #phase.narrow h2 {
    border-bottom: solid 1px #9a9692;
    font-size: 2.8em;
    font-weight: 700;
    text-align: center;
    padding-bottom: 5px;
  }

#phase.narrow .phase_contents {
  background: #fbf8f4;
  padding: 20px 0;
  letter-spacing: -.40em;
}

#phase.narrow dl {
  width: 146px;
  display: inline-block;
  letter-spacing: normal;
}

#phase.narrow dl .tit_phase {
  font-family: 'Roboto Slab', serif;
  color: #eb7f78;
  font-size: 0.9em;
}

#phase.narrow dt {
  font-size: 1.6em;
  font-weight: bold;
  line-height: 1.5;
}

#phase.narrow dd {
  height: 170px;
}

#phase.narrow dd img {
  width: 100%;
  height: auto;
}

}

/* new entry  */

body#top section#new_entry h2 {
  background: url(../images/common/icon_pen.png) no-repeat right 10px center;
  background-size: 20px auto;
}

body#top section#new_entry h3.tit_en {
  margin-bottom: 30px;
}

.entry_box {
  background: #f7f3ee;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin-bottom: 20px;
  padding: 20px;
  overflow: hidden;
  position: relative;
}

  .entry_box:hover {
    background: #fff1d8;
  }

.entry_box .entry_box_L {
  width: 180px;
  float: left;
}

  .entry_box .entry_box_L .entry_photo {
    width: 180px;
    height: 120px;
    display: block;
    overflow: hidden;
  }

  .entry_box .entry_box_L .entry_photo img {
    max-width: 100%;
    height: auto;
  }

  .view_count {
    margin-top: 8px;
    height: 28px;
    padding-top: 5px;
    background: #fff;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    text-align: center;
    font-size: 1.4em;
    color: #808080;
    font-family: 'Roboto Slab', serif;
    font-weight: bold;
    line-height: 1;
    display: none;
  }

  .view_count span {
    font-size: 1.286em;
    color: #fc6359;
    padding-right: 3px;
  }

  .star_count {
    /*display: none;*/
    margin-top: 8px;
    height: 28px;
    padding-top: 5px;
    background: #fff;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    text-align: center;
    font-size: 1.8em;
    color: #808080;
    font-family: 'Roboto Slab', serif;
    font-weight: bold;
    line-height: 1;
  }

  .star_count span {
    background: url(../images/common/icon_star.png) no-repeat left center;
    background-size: 19px auto;
    padding-left: 25px;
  }

.entry_box .entry_box_R {
  width: 590px;
  float: right;
  position: relative;
}

  .entry_box .entry_box_R p.summary {
    width: 455px;
    font-size: 1.6em;
    line-height: 1.3;
  }

  .entry_box .entry_box_R p.summary a:link {text-decoration:none; color:#323232;}
  .entry_box .entry_box_R p.summary a:visited {text-decoration:none; color:#323232;}
  .entry_box .entry_box_R p.summary a:hover {text-decoration:none; color:#323232;}

  .entry_box .entry_box_R p.summary:first-letter{
    font-size: 1.75em;
  }

  .entry_box .entry_box_R p.name {
    font-size: 1.4em;
    margin-top: 8px;
  }

  #honbun .entry_box .entry_box_R p.summary {
    width: 455px;
    font-size: 1.6em;
    line-height: 1.3;
    margin-bottom: 0;
  }

  #honbun .entry_box .entry_box_R p.name {
    font-size: 1.4em;
    margin-top: 8px;
    margin-bottom: 0;
  }

  .entry_box .entry_box_R .age_job {
    padding-top: 15px;
    position: relative;
    z-index: 99;
  }

  .entry_box .entry_box_R .age {
    display: inline-block;
    width: 115px;
    height: 27px;
    margin-right: 5px;
    text-align: center;
    color: #fff;
    background: #fea202;
    font-size: 14px;
    line-height: 27px;
    font-weight: 700;
  }

  .entry_box .entry_box_R a:hover .age {
    background: #ffc155;
  }

  .entry_box .entry_box_R .job {
    display: inline-block;
    background: #ddebef;
    height: 27px;
    padding: 0 15px;
    font-size: 14px;
    line-height: 25px;
    color: #4e6a71;
  }

  .entry_box .entry_box_R .job .before {
    background: url(../images/common/arrow_blue_l.png) no-repeat right center;
    background-size: 17px auto;
    padding-right: 25px;
  }

  .entry_box .entry_box_R .job .after {
    font-weight: 700;
    padding-left: 10px;
  }

  .entry_box .entry_box_R .tag {
    background: url(../images/common/icon_tag.png) no-repeat left 5px;
    background-size: 17px auto;
    margin-top: 7px;
    padding-left: 28px;
    letter-spacing: -.40em;
    position: relative;
    z-index: 99;
  }

  .entry_box .entry_box_R .tag li {
    display: inline-block;
    letter-spacing: normal;
    margin: 0 5px 5px 0;
  }

  .entry_box .entry_box_R .tag li a {
    display: block;
    background: #fff;
    font-size: 1.4em;
    height: 22px;
    line-height: 22px;
    padding: 0 10px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
  }

  .entry_box .entry_box_R .tag li a:link {text-decoration:none; color:#808080;}
  .entry_box .entry_box_R .tag li a:visited {text-decoration:none; color:#808080;}
  .entry_box .entry_box_R .tag li a:hover {text-decoration:none; color:#808080; background: #fffeaa}

  .entry_box .entry_box_R .evaluation {
    width: 124px;
    height: 68px;
    border-radius: 64px / 38px;
    -webkit-border-radius: 64px / 38px;
    -moz-border-radius: 64px / 38px;
    color: #fff;
    position: absolute;
    top: 0;
    right: 0;
    text-align: center;
    font-weight: 700;
  }

  .entry_box .entry_box_R .evaluation.eva_01 {
    background: #d95047;
    font-size: 1.8em;
    line-height: 1;
    padding-top: 23px;
  }

  .entry_box .entry_box_R .evaluation.eva_02 {
    background: #eb7f78;
    font-size: 1.4em;
    line-height: 1.3;
    padding-top: 15px;
  }

  .entry_box .entry_box_R .evaluation.eva_03 {
    background: #8cc1c9;
    font-size: 1.4em;
    line-height: 1.3;
    padding-top: 15px;
  }

  .entry_box .entry_box_R .evaluation.eva_04 {
    background: #40777f;
    font-size: 1.8em;
    line-height: 1;
    padding-top: 23px;
  }

/* by theme  */

#theme_guide h2 {
  background: url(../images/common/icon_theme.png) no-repeat right 10px center;
  background-size: 25px auto;
}

#theme_guide .theme_guide_wrap {
  margin: 30px 0 0;
  padding: 10px 30px;
  font-size: 1.8em;
  background: #f7f3ee;
}

#theme_guide .theme_guide_wrap a {
  display: block;
  margin: 0 10px;
  padding: 10px;
  border-bottom: dotted 1px #999;
}

#theme_guide .theme_guide_wrap a:last-child {
  border: none;
}

#theme_guide .theme_guide_wrap dl {
  overflow: hidden;
}

#theme_guide .theme_guide_wrap dd {
  width: 100px;
  height: 100px;
  position: relative;
  overflow: hidden;
  border-radius: 75px;
  -webkit-border-radius: 75px;
  -moz-border-radius: 75px;
  float: left;
  border: solid 4px #CCC;
}

#theme_guide .theme_guide_wrap dd img {
  width: auto;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
}

#theme_guide .theme_guide_wrap a:hover dd img {
  opacity: 0.8;
}

#theme_guide .theme_guide_wrap dt {
  width: 580px;
  margin-left: 30px;
  padding: 20px 10px 10px;
  float: left;
  font-weight: bold;
}

#theme_guide .theme_guide_wrap dt:first-letter{
  font-size: 1.8em;
}

  #theme_guide a:link {text-decoration:none; color:#323232;}
  #theme_guide a:visited {text-decoration:none; color:#323232;}
  #theme_guide a:hover {text-decoration:none; color:#fea202;}

  #theme_guide .btn_more_l a:link {text-decoration:none; color:#323232;}
  #theme_guide .btn_more_l a:visited {text-decoration:none; color:#323232;}
  #theme_guide .btn_more_l a:hover {text-decoration:none; color:#fff;}

/* recommended agent  */

#recommended_agent {
  margin-bottom: 80px;
}

#recommended_agent h2.small {
  font-size: 2.4em
}

#recommended_agent h2 {
  background: url(../images/common/icon_recommended.png) no-repeat right 10px top;
  background-size: 25px auto;
}

#recommended_agent .section_lead {
  text-align: center;
  font-size: 1.8em;
  margin: 30px 0 15px;
}

.agent_ranking_box {
  margin-bottom: 50px;
}

#recommended_agent .recommended_agent_wrap {
  padding: 30px 0 0;
  letter-spacing: -.40em;
  background: #f7f3ee;
}

#recommended_agent dl {
  width: 276px;
  margin-bottom: 40px;
  padding: 0 18px;
  border-right: dotted 1px #9a9692;
  display: inline-block;
  letter-spacing: normal;
  text-align: center;
}

#recommended_agent dl:nth-child(3n) {
  border: none;
}

#recommended_agent dt {
  font-size: 1.4em;
  padding: 10px 0;
  line-height: 1.7;
}

#recommended_agent dt span {
  display: inline-block;
  font-weight: 700;
  font-size: 1.125em;
}

#recommended_agent dt span.right_ranking_01 {
  background: url(../images/common/icon_ranking_01.png) no-repeat left center;
  background-size: 25px;
  padding-left: 35px;
}

#recommended_agent dt span.right_ranking_02 {
  background: url(../images/common/icon_ranking_02.png) no-repeat left center;
  background-size: 25px;
  padding-left: 35px;
}

#recommended_agent dt span.right_ranking_03 {
  background: url(../images/common/icon_ranking_03.png) no-repeat left center;
  background-size: 25px;
  padding-left: 35px;
}

#recommended_agent dd {
  min-height: 170px;
  background: #fff;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  padding: 25px 15px;
}

#recommended_agent dd img {
  width: auto;
  height: auto;
}

#recommended_agent dd a:hover img {
  opacity: 0.8;
}


/* opinion  */

section#opinion h2 {
  background: url(../images/common/icon_balloon.png) no-repeat right 10px center;
  background-size: 23px auto;
}

section#opinion h3 {
  margin-bottom: 30px;
}

.opinion_box {
  background: #f7f3ee;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  margin-bottom: 20px;
  padding: 20px;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

  .opinion_box:hover {
    background: #fff1d8;
  }

  .opinion_box h4.question {
    width: 615px;
    font-size: 2em;
    line-height: 1.3;
    font-weight: 400;
    float: left;
    text-indent: -35px;
    margin: -7px 0 0 35px;
  }

  .opinion_box h4.question span {
    font-size: 1.5em;
    color: #3487a5;
    font-weight: 700;
    padding-right: 5px;
    line-height: 1.3;
  }

  .opinion_box .opinion_category {
    width: 122px;
    height: 37px;
    display: inline-block;
    float: right;
    line-height: 37px;
    font-size: 1.4em;
    color: #3487a5;
    text-align: center;
    background: #fff;
  }

  .opinion_box .opinion_box_L {
    width: 180px;
    float: left;
  }

  .opinion_box .opinion_box_L .opinion_photo {
    width: 180px;
    height: 120px;
    display: block;
    overflow: hidden;
  }

  .opinion_box .opinion_box_L .opinion_photo img {
    max-width: 100%;
  }

  .opinion_box .opinion_box_R {
    width: 586px;
    float: right;
    position: relative;
  }

  .yes_or_no {
    position: relative;
    height: 130px;
    z-index: 999;
  }

  /*** admin css ***/
  .yes_or_no span.font_large {
    font-size: 1.5em;
  }

  .yes_or_no span.font_bold {
    font-weight: 700;
  }

  .yes_or_no span.kaigyou {
    display: block;
  }

  .yes_or_no a:link {text-decoration:none; color:#fff;}
  .yes_or_no a:visited {text-decoration:none; color:#fff;}
  .yes_or_no a:hover {text-decoration:none; color:#fff;}

  .yes {
    width: 288px;
    height: 130px;
    position: absolute;
    top: 0;
    left: 0;
  }

  .yes a {
    display: table;
    width: 288px;
    height: 130px;
    background: url(../images/common/bg_txt_yes.png) no-repeat left bottom #db817c;
    overflow: hidden;
    position: relative;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }

  .yes a:hover {
    background-color: #cb544d;
    box-shadow: 0px 0px 15px #ffea00;
    -moz-box-shadow: 0px 0px 15px #ffea00;
    -webkit-box-shadow: 0px 0px 15px #ffea00;
  }

  .yes a p {
    display: table-cell;
    padding: 0 20px;
    vertical-align: middle;
    text-align: center;
    font-size: 1.8em;
  }

  .no {
    width: 288px;
    height: 130px;
    position: absolute;
    top: 0;
    right: 0;
  }

  .no a {
    display: table;
    width: 288px;
    height: 130px;
    background: url(../images/common/bg_txt_no.png) no-repeat right bottom #487197;
    overflow: hidden;
    position: relative;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }

  .no a:hover {
    background-color: #0d4578;
    box-shadow: 0px 0px 15px #ffea00;
    -moz-box-shadow: 0px 0px 15px #ffea00;
    -webkit-box-shadow: 0px 0px 15px #ffea00;
  }

  .no a p {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 18px;
  }

  .or {
    width: 41px;
    height: 41px;
    border-radius: 35px;
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px;
    background: #9a9692;
    border: solid 3px #f7f3ee;
    font-size: 1.8em;
    font-weight: 700;
    line-height: 33px;
    color: #fff;
    text-align: center;
    position: absolute;
    top: 45px;
    left: 50%;
    margin-left: -20px;
  }

  .opinion_box .opinion_box_R .notice {
    font-size: 1.6em;
    text-align: center;
    line-height: 1.3;
    margin-top: 10px;
  }

  .opinion_box .opinion_box_R .notice .font_orange {
    color: #fea202;
  }

  .opinion_box .opinion_box_R .notice .font_small {
    font-size: 0.875em;
  }



/* search  */

#search {
}

  #search h3 {
    font-size: 1.8em;
    font-weight: 700;
    text-align: center;
    padding: 0 30px 20px 0;
  }

  .search_list {
    background: #fbf8f4;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    padding: 35px 20px 35px 35px;
    overflow: hidden;
  }

  #search_list_L {
    width: 520px;
    float: left;
    overflow: hidden;
  }

  #search_list_L ul li {
    width: 260px;
    float: left;
  }

  #search_list_R {
    width: 230px;
    float: right;
  }

  .search_list li {
    font-size: 1.6em;
    background: url(../images/common/icon_disc.png) no-repeat left 10px;
    background-size: 4px auto;
    padding-left: 12px;
    margin-bottom: 10px;
  }

  .search_list li a {
    text-decoration: underline;
  }

#search_form_area {
  margin-bottom: 50px;
  padding-top: 40px;
}

  #search_form_area h6 {
    font-size: 2.8em !important;
  }

  #search_area {
    background: #fbf8f4;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    padding: 15px 0;
  }

  #search_area .search-form {
    width: 580px;
    margin: 0 auto;
    border: solid 1px #9a9692;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    overflow: hidden;
    background: #fff;
  }

  #search_area .search-field {
    width: 500px;
    height: 52px;
    padding: 5px 15px;
    font-size: 1.4em;
  font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
    font-weight: 400;
    margin: 0;
    border: none;
  }

  #search_area .search-field:focus  {
    outline: 0;
  }

  #search_area .search-submit {
    width: 65px;
    height: 52px;
    float: right;
    margin: 0;
    background: url(../images/common/icon_search_white.png) no-repeat center center #3487a5;
    background-size: 25px auto;
    border: none;
    cursor: pointer;
  }

  #search_area .search-submit:hover {
    background-color: #fea202;
  }

  #right_search_form_area #search_area {
    background: #fff;
    margin-bottom: 10px;
    padding-top: 25px;
  }

  #right_search_form_area #search_area .search-form {
    width: 336px;
  }

  #right_search_form_area #search_area .search-field {
    width: 256px;
  }

.reccomended_kw {
  margin-bottom: 50px;
}

.reccomended_kw h4 {
  margin-bottom: 10px;
  background: url(./../images/common/icon_search.png) no-repeat left top;
  background-size: 20px auto;;
  padding-left: 30px;
}

.reccomended_kw li {
  display: inline-block;
  margin: 0 5px 7px 0;
}
.reccomended_kw li a {
  display: inline-block;
  font-size: 1.4em;
  background: #fbf8f4;
  padding: 5px 15px;
  border-radius: 5px;
}

#left_column .reccomended_kw {
  margin-top: 55px;
}

#left_column .notfound_ranking .reccomended_kw {
  margin-top: 30px;
}

#left_column .reccomended_kw h4 {
  font-size: 1.8em;
  color: #3487a5;
  font-weight: 700;
  border-bottom: solid 1px #9a9692;
  padding-bottom: 5px;
}

#left_column .reccomended_kw li {
  margin: 0 8px 10px 0;
}

#left_column .reccomended_kw li a {
  padding: 8px 20px;
  font-size: 1.8em;
}

.notfound_ranking .reccomended_kw li span {
  font-weight: bold;
  padding-right: 5px;
}

.notfound_ranking .reccomended_kw li a:link span {text-decoration:none; color:#323232;}
.notfound_ranking .reccomended_kw li a:visited span {text-decoration:none; color:#323232;}
.notfound_ranking .reccomended_kw li a:hover span {text-decoration:none; color:#323232;}


.notfound_ranking_1 span {
  background: url(../images/common/icon_ranking_01.png) no-repeat left center;
  background-size: 25px;
  padding-left: 35px;
}

.notfound_ranking_2 span {
  background: url(../images/common/icon_ranking_02.png) no-repeat left center;
  background-size: 25px;
  padding-left: 35px;
}

.notfound_ranking_3 span {
  background: url(../images/common/icon_ranking_03.png) no-repeat left center;
  background-size: 25px;
  padding-left: 35px;
}

/* new guide  */

#top #guide_new {
  padding: 60px 0;
}

#guide_new {
  padding: 0px 0px 100px;
}

#honbun section#guide_new {
  padding: 0px 0px 100px;
}

  #guide_new h2 {
    background: url(../images/common/icon_pen.png) no-repeat right 10px center;
    background-size: 20px auto;
  }

#guide_new .guide_search_result {
  padding-top: 40px;
}

#guide_new.new_list .guide_search_result {
  padding-top: 0px;
}


/* popular guide  */

#guide_popular {
  padding-top: 10px;
}

  #guide_popular h2 {
    background: url(../images/common/icon_star_blue.png) no-repeat right 10px center;
    background-size: 24px auto;
  }

  #guide_popular .guide_popular_list {
    background: #f7f3ee;
    margin-top: 30px;
    padding: 35px 0 0;
    text-align: center;
    letter-spacing: -.40em;
  }

  #guide_popular .guide_popular_list a:link {text-decoration:none; color:#323232;}
  #guide_popular .guide_popular_list a:visited {text-decoration:none; color:#323232;}
  #guide_popular .guide_popular_list a:hover {text-decoration:none; color:#fea202;}

  #guide_popular .guide_popular_list dl {
    width: 276px;
    margin-bottom: 40px;
    padding: 0 33px;
    border-right: dotted 1px #9a9692;
    display: inline-block;
    letter-spacing: normal;
    text-align: left;
  }

  #guide_popular .guide_popular_list dl.dl_03  {
    border: none;
  }

  #guide_popular .guide_popular_list dl.dl_06  {
    border: none;
  }

  #guide_popular .guide_popular_list dl.dl_09  {
    border: none;
  }

  #guide_popular .guide_popular_list a:last-child dl {
    border: none;
  }

  #guide_popular .guide_popular_list dt {
    width: 210px;
    height: 140px;
    overflow: hidden;
    position: relative;
    border: solid 1px #ebebeb;
  }

  #guide_popular .guide_popular_list dt img {
    position: absolute;
    width: 100%;
    height: auto;
    min-width: 100%;
    min-height: 100%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
            transform: translate3d(-50%, -50%, 0);
  }

  #guide_popular .guide_popular_list a:hover dt img {
    opacity: 0.8;
  }

  #guide_popular .guide_popular_list .guide_rank {
    font-size: 2em;
    font-weight: 700;
    padding-bottom: 10px;
    text-align: center;
    padding: 5px 0;
  }

  #guide_popular .guide_popular_list a:link .guide_rank {text-decoration:none; color:#323232;}
  #guide_popular .guide_popular_list a:visited .guide_rank {text-decoration:none; color:#323232;}
  #guide_popular .guide_popular_list a:hover .guide_rank {text-decoration:none; color:#323232;}

  #guide_popular .guide_popular_list .guide_rank span.guide_rank_01 {
    background: url(../images/common/icon_ranking_01.png) no-repeat left center;
    background-size: 25px;
    padding-left: 35px;
  }

  #guide_popular .guide_popular_list .guide_rank span.guide_rank_02 {
    background: url(../images/common/icon_ranking_02.png) no-repeat left center;
    background-size: 25px;
    padding-left: 35px;
  }

  #guide_popular .guide_popular_list .guide_rank span.guide_rank_03 {
    background: url(../images/common/icon_ranking_03.png) no-repeat left center;
    background-size: 25px;
    padding-left: 35px;
  }

  #guide_popular .guide_popular_list .guide_title {
    padding-top: 10px;
    font-size: 1.6em;
    height: 130px;
  }

  #guide_popular .minna_taikendan {
    margin-bottom: 50px;
  }

  #guide_popular .minna_taikendan .guide_popular_list .guide_title {
    height: 77px;
    margin-bottom: 5px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  #guide_popular .minna_guide .guide_popular_list .guide_title {
    height: 77px;
    margin-bottom: 5px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

/* search by category  */

.guide_search {
  padding-top: 60px;
}

.guide_search h2 {
  margin-bottom: 30px;
  background: url(../images/common/icon_search.png) no-repeat right 10px center;
  background-size: 20px auto;
}

.guide_search .search_list {
  padding-right: 0;
  padding-bottom: 25px;
  letter-spacing: -.40em;
}

.guide_search li {
  display: inline-block;
  width: 224px;
  margin-right: 40px;
  letter-spacing: normal;
}

footer .guide_search {
  margin-bottom: 50px;
}

.guide_search .search_list {
  padding-left: 80px;
}

footer .guide_search li {
  width: 300px;
}

#search_category.guide_search .search_list {
  padding-bottom: 15px;
}

#search_category .search_list li {
  width: 170px;
  background: none;
  margin-right: 25px;
  margin-bottom: 25px;
  padding-left: 0;
  font-size: 1.8em;
}

#search_category .search_list li a {
  display: inline-block;
  width: 100%;
  height: 35px;
  margin-right: 5px;
  text-align: center;
  color: #fff;
  background: #3487a5;
  font-size: 14px;
  line-height: 35px;
  font-weight: 700;
  text-decoration: none;
}

#search_category .search_list li a:hover {
  background: #5fafcc;
}


/*-----------------------------------------------------
  free area general
------------------------------------------------------*/

h3.normal {
  font-size: 2em;
  text-align: left;
  margin-bottom: 15px;
}



/*-----------------------------------------------------
  agent box
------------------------------------------------------*/

.agent_box {
  padding: 50px 0;
}

.agent_box table {
  border-top: solid 2px #ccc9c6;
  border-bottom: solid 2px #ccc9c6;
  font-size: 1.6em;
}

.agent_box td.logo {
  width: 150px;
  padding: 0 15px;
  text-align: center;
  vertical-align: middle;
}

.agent_box td.logo img {
  width: 100%;
  height: auto;
}

.agent_box td.logo a:hover img {
  opacity: 0.8;
}

.agent_box th {
  width: 135px;
  padding: 15px 20px 20px;
  background: #3487a5;
  text-align: center;
  font-weight: 700;
  vertical-align: middle;
  color: #fff;
  border-bottom: solid 1px #ccc9c6;
}

.agent_box td {
  padding: 15px 20px 20px;
  border-bottom: solid 1px #ccc9c6;
}

.agent_box td.agent_name {
  font-weight: 700;
}

.agent_box .agent_btn_area {
  background: #f4f4f4;
  letter-spacing: -.40em;
  text-align: center;
}

.agent_box .agent_btn_area .btn_kirarin {
  display: inline-block;
  width: 245px;
  margin: 25px 10px;
  letter-spacing: normal;
}

.agent_box .agent_btn_area .btn_kirarin a {
  display: block;
  width: 245px;
  height: 40px;
  line-height: 40px;
  font-size: 1.6em;
  font-weight: 700;
  color: #fff;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  background: #3487a5;
  position: relative;
  overflow: hidden;
}

.agent_box .agent_btn_area .btn_kirarin a:hover {
  background: #4ca1bf;
}

.agent_box .agent_btn_area .btn_kirarin.col_org a {
  background: #fea202;
}

.agent_box .agent_btn_area .btn_kirarin.col_org a:hover {
  background: #ffb93e;
}

.agent_btn {
  text-align: center;
  padding: 60px 0;
}

.agent_btn .btn_kirarin a {
  min-width: 400px;
  height: 50px;
  margin: 0 auto;
  padding: 0 30px;
  border-radius: 30px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  display: inline-block;
  font-size: 2em;
  font-weight: 700;
  line-height: 50px;
  color: #fff;
  position: relative;
  overflow: hidden;
  background: #FF6347;
}

.agent_btn.btnA .btn_kirarin a {
  background: #FF6347;
}

.agent_btn.btnB .btn_kirarin a {
  background: #FF6347;
}

.agent_btn.color_blue .btn_kirarin a {
  height: auto;
  line-height: 1.3;
  padding: 15px 30px 20px;
  background: #3487a5;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
}

#honbun .agent_btn.color_blue a:link { text-decoration: none;}
#honbun .agent_btn.color_blue a:visited { text-decoration: none;}
#honbun .agent_btn.color_blue a:hover { text-decoration: none;}


.agent_btn.color_blue span {
  display: block;
  font-size: 1.2em;
}

.agent_btn.btnA a:hover {
  background-color: #ffb93e;
}

.agent_btn.btnB a:hover {
  background-color: #ffb93e;
}

.agent_btn.color_blue a:hover {
  background-color: #3f96b5;
}

.btn_kirarin a:before {
display: block;
    position: absolute;
    z-index: 1;
    left: -10%;
    top: -30%;
    content: "";
    width: 2em;
    height: 160%;
    transform: rotate(30deg);
    -webkit-transform: rotate(30deg);
    -moz-transform: rotate(30deg);
    background-image: linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%,rgba(255,255,255,0) 100%);
    background-image: -webkit-gradient(linear, left bottom, right bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(50%,rgba(255,255,255,1)),color-stop(100%,rgba(255,255,255,0)));
    background-image: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, #ffffff rgba(255,255,255,1),rgba(255,255,255,0) 100%);
    animation: shiny 2.5s infinite linear;
    -webkit-animation: shiny 2.5s infinite linear;
    -moz-animation: shiny 2.5s infinite linear;
}

@keyframes shiny {
    0% {
        left: -30%;
    }
    20% {
        left: 120%;
    }
    100% {
        left: 120%;
    }
}
@-webkit-keyframes shiny {
    0% {
        left: -30%;
    }
    20% {
        left: 120%;
    }
    100% {
        left: 120%;
    }
}
@-moz-keyframes shiny {
    0% {
        left: -30%;
    }
    20% {
        left: 120%;
    }
    100% {
        left: 120%;
    }
}


.agent_btn_rich {
  text-align: center;
  padding: 60px 0;
  position: relative;
}

.agent_btn_rich .btn_gradation a {
  min-width: 500px;
  height: 120px;
  margin: 0 auto;
  padding: 23px 30px 0;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  display: inline-block;
  background: linear-gradient(to bottom , #ff9416 , #ff9416 50% , #ff7200 50% , #ff7200);
  font-size: 2.4em;
  font-weight: 700;
  line-height: 1.8;
  color: #fff;
  position: relative;
  overflow: hidden;
  -webkit-box-shadow: 0 5px 0 #a37255;
  box-shadow: 0 5px 0 #a37255;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.yureru-s {
    animation: yureru-s 3s infinite;
}

@keyframes yureru-s {
    0% {
        transform: translate(2px, 0px);
    }
    5% {
        transform: translate(-2px, 0px);
    }
    10% {
        transform: translate(2px, 0px);
    }
    15% {
        transform: translate(-2px, 0px);
    }
    20% {
        transform: translate(2px, 0px);
    }
    25% {
        transform: translate(-2px, 0px);
    }
    30% {
        transform: translate(0px, 0px);
    }
}

.agent_btn_rich a:hover {
  background: linear-gradient(to bottom , #ffab48 , #ffab48 50% , #ff8726 50% , #ff8726);
  animation: none;
  transform: translate(0px, 3px);
  -webkit-box-shadow: 0 2px 0 #a37255;
  box-shadow: 0 2px 0 #a37255;
}

#honbun .btn_gradation a:link {
  text-decoration: none;
}

.agent_copy_01 {
  width: 300px;
  background: #fff;
  padding: 10px;
  border-radius: 10px;
  border: solid 3px #ff7200;
  position: absolute;
  left: calc(50% - 150px);
  top: 25px;
  font-size: 1.8em;
  font-weight: bold;
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

.agent_copy_01:before,
.agent_copy_01:after {
  position: absolute;
  left: calc(50% - 10px);

  content: "";
}

.agent_copy_01:before {
  bottom: -10px;

  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #ff7200 transparent transparent transparent;
}

.agent_copy_01:after {
  bottom: -7px;

  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}

.agent_copy_02 {
  position: relative;
  text-align: center;
  font-weight: bold;
  line-height: 1.3;
  font-size: 1.6em;
  margin-top: 15px;
  margin-bottom: 10px;
}

.agent_copy_02:before,
.agent_copy_02:after {
  position: relative;
  display: inline-block;
  content: "";
  background: #ff7200;
  width: 2px;
  height: 2em;
  margin: 0 1em;
  margin-top: -.2em;
  vertical-align: middle;
}

.agent_copy_02:before {
  transform: rotate(-35deg);
}

.agent_copy_02:after {
  transform: rotate(35deg);
}

.agent_list_box table {
  border-top: solid 2px #ccc9c6;
  border-bottom: solid 2px #ccc9c6;
  font-size: 1.6em;
}

.agent_list_box th {
  background: #3487a5;
  color: #fff;
  text-align: center;
  border-bottom: solid 1px #ccc9c6;
  padding: 15px 10px;
  vertical-align: middle;
}

.agent_list_box th.service_name {
  width: 250px;
  border-right: solid 1px #fff;
}

.agent_list_box td {
  padding: 10px 15px;
  border-bottom: solid 1px #ccc9c6;
  vertical-align: middle;
}

.agent_list_box td.service_name {
  text-align: center;
  font-weight: bold;
  background: #f1f1f1;
}

.agent_list_box td.service_name img {
  width: 120px;
  height: auto;
  margin-bottom: 15px;
}

.agent_list_box td li {
  background: url(../images/common/icon_disc.png) no-repeat left 10px;
  background-size: 5px auto;
  padding-left: 15px;
}

.agent_list_box .btn_kirarin {
  display: inline-block;
  margin: 10px 10px 5px 10px;
  letter-spacing: normal;
}

.agent_list_box .btn_kirarin a {
    display: block;
    width: 200px;
    height: 40px;
    line-height: 40px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    background: #3487a5;
    position: relative;
    overflow: hidden;
}

.agent_list_box .btn_kirarin.col_org a {
  background: #fea202;
}

.agent_list_box .btn_kirarin a:hover {
  background: #4ca1bf;
}

.agent_list_box .btn_kirarin.col_org a:hover {
  background: #ffb93e;
}



/*-----------------------------------------------------
  main ranking
------------------------------------------------------*/

.main_ranking {
  padding-bottom: 30px;
}

h3.main_ranking {
  font-size: 2.8em;
  font-weight: 700;
  text-align: center;
}

h3.main_ranking span {
  font-size: 1.2em;
  color: #fea202;
}

.main_ranking_container {
  border: solid 1px #cecece;
}

.main_ranking_box {
  padding-bottom: 25px;
  border-bottom: dotted 1px #9a9692;
}

.main_ranking_box:last-child {
  border: none;
}

.main_ranking_box h4 {
  width: 100%;
  height: 60px;
  padding: 18px 20px 0 20px;
  background: #fffaf1;
  font-size: 2.2em;
}

.main_ranking_box h4 span {
  padding-right: 30px;
}

.main_ranking_box h4.ranking_01 {
  border-bottom: solid 5px #e1c32e;
}

.main_ranking_box h4.ranking_01 span {
  background: url(../images/common/icon_ranking_01.png) no-repeat left center;
  background-size: 30px auto;
  padding-left: 40px;
}

.main_ranking_box h4.ranking_02 {
  border-bottom: solid 5px #a9b3b5;
}

.main_ranking_box h4.ranking_02 span {
  background: url(../images/common/icon_ranking_02.png) no-repeat left center;
  background-size: 30px auto;
  padding-left: 40px;
}

.main_ranking_box h4.ranking_03 {
  border-bottom: solid 5px #d1a45e;
}

.main_ranking_box h4.ranking_03 span {
  background: url(../images/common/icon_ranking_03.png) no-repeat left center;
  background-size: 30px auto;
  padding-left: 40px;
}

.main_ranking_box dl {
  margin-top: 15px;
  padding: 0 25px;
  overflow: hidden;
  position: relative;
}

.main_ranking_box dt {
  width: 260px;
  float: left;
}

.main_ranking_box dt img {
  width: 100%;
}

.main_ranking_box dt a:hover img {
  opacity: 0.8;
}

.main_ranking_box dd {
  width: 485px;
  float: right;
  font-size: 1.8em;
  padding-top: 15px;
}

.main_ranking_box dd li {
  background: url(../images/common/icon_kirakira.png) no-repeat left 5px;
  background-size: 19px auto;
  margin-bottom: 10px;
  padding-left: 29px;
}

.main_ranking_box .btnBox {
  text-align: center;
}

.main_ranking_box .btn_kirarin {
  display: inline-block;
  width: 390px;
  margin: 30px 10px 0px;
  letter-spacing: normal;
  text-align: center;
}

.main_ranking_box .btn_kirarin a {
    display: block;
    width: 390px;
    margin: 0 auto;
    padding: 12px 30px 15px;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    display: inline-block;
    background: #fea202;
    font-size: 1.8em;
    font-weight: 700;
    line-height: 1.3;
    color: #fff;
    overflow: hidden;
    position: relative;
}

.main_ranking_box .btn_kirarin a:hover {
  background: #ffb93e;
}

.main_ranking_box .btn_kirarin.col_blue a {
  background: #3487a5;
}


/*-----------------------------------------------------
  more link box
------------------------------------------------------*/

.more_link_box {
  margin-bottom: 30px;
  position: relative;
}

.more_link_box a:link {text-decoration:none; color:#323232;}
.more_link_box a:visited {text-decoration:none; color:#323232;}
.more_link_box a:hover {text-decoration:none; color:##323232;}

.more_link_box .outerlink {
  position: absolute;
  top: 5px;
  right: 15px;
  background: url(../images/common/icon_outerlink.png) no-repeat left center;
  background-size: 24px auto;
  padding-left: 35px;
  font-size: 1.6em;
  color: #666;
}

.more_link_box h6 {
  font-size: 1.4em;
  margin-left: 20px;
}

.more_link_box h6 span {
  display: inline-block;
  font-size: 1.1em;
  padding: 5px;
  background: #868686;
  color: #fff;
  border: solid 1px #fff;
  line-height: 1;
}

.more_link_box h6 span.large_square {
  font-size: 1.6em;
  background: #ee602e;
  margin-right: 3px;
}

.more_link_box a {
  display: block;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  background: #f7f3ee;
  padding: 20px 40px 20px 20px;
}

.more_link_box a:hover {
  background: #fff1d8;
}

.more_link_box dl {
  overflow: hidden;
}

.more_link_box dd.image {
  width: 200px;
  float: left;
}

.more_link_box dd.image img {
  width: 100%;
  height: auto;
}

.more_link_box dt {
  width: calc(100% - 230px);
  float: right;
  font-size: 1.6em;
  font-weight: bold;
}

.more_link_box dd.description {
  width: calc(100% - 230px);
  float: right;
  font-size: 1.4em;
  margin-top: 15px;
}

.more_link_box_simple {
  padding: 20px 0;
}

.more_link_box_simple dl {
  font-size: 1.6em;
  overflow: hidden;
}

.more_link_box_simple dt, .more_link_box_simple dd {
  padding: 7px 10px 5px;
}

.more_link_box_simple dt {
  font-weight: bold;
}

.more_link_box_simple dd {
  width: 80px;
  float: left;
  margin-right: 15px;
  background: #868686;
  color: #fff;
  text-align: center;
}

/*-----------------------------------------------------
  hyouban comment
------------------------------------------------------*/

.hyouban_comment {
  position: relative;
  margin-top: 80px;
}

.hyouban_comment h4 {
  width: 90%;
  padding: 10px 20px;
  background: #006e93;
  font-size: 2em;
  text-align: center;
  color: #fff;
  position: absolute;
  top: -20px;
  left: 50%;
  margin-left: -45%;
}

.hyouban_comment_box {
  background: #f7f3ee;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  padding: 50px 30px 30px;
}


.hyouban_comment_box .comment_meta {
  margin-bottom: 30px;
  padding: 20px 0 0 120px;
  position: relative;
  font-size: 1.8em;
}

.hyouban_comment_box .comment_icon {
  width: 100px;
  height: 100px;
  position: absolute;
  top: 0px;
  left: 0px;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
}

.hyouban_comment_box .comment_icon.female_30 { background-image: url(../images/common/icon_female_30.png); }
.hyouban_comment_box .comment_icon.female_40 { background-image: url(../images/common/icon_female_40.png); }
.hyouban_comment_box .comment_icon.female_50 { background-image: url(../images/common/icon_female_50.png); }
.hyouban_comment_box .comment_icon.female_suit { background-image: url(../images/common/icon_female_suit.png); }
.hyouban_comment_box .comment_icon.male_30 { background-image: url(../images/common/icon_male_30.png); }
.hyouban_comment_box .comment_icon.male_40 { background-image: url(../images/common/icon_male_40.png); }
.hyouban_comment_box .comment_icon.male_50 { background-image: url(../images/common/icon_male_50.png); }
.hyouban_comment_box .comment_icon.male_suit { background-image: url(../images/common/icon_male_suit.png); }

.hyouban_comment_box .hyouka {
  display: inline-block;
  padding: 7px 0;
  color: #f67f00;
  font-weight: 700;
  padding-right: 190px;
  background-repeat: no-repeat;
  background-position: right center;
}

.hyouka.star_00 {  background-image: url(../images/common/star_00.png); }
.hyouka.star_05 {  background-image: url(../images/common/star_05.png); }
.hyouka.star_10 {  background-image: url(../images/common/star_10.png); }
.hyouka.star_15 {  background-image: url(../images/common/star_15.png); }
.hyouka.star_20 {  background-image: url(../images/common/star_20.png); }
.hyouka.star_25 {  background-image: url(../images/common/star_25.png); }
.hyouka.star_30 {  background-image: url(../images/common/star_30.png); }
.hyouka.star_35 {  background-image: url(../images/common/star_35.png); }
.hyouka.star_40 {  background-image: url(../images/common/star_40.png); }
.hyouka.star_45 {  background-image: url(../images/common/star_45.png); }
.hyouka.star_50 {  background-image: url(../images/common/star_50.png); }

.hyouban_category {
  overflow: hidden;
  padding-bottom: 30px;
}

.hyouban_category li {
  width: 238px;
  margin: 10px;
  padding: 10px 20px;
  background: #999;
  float: left;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  color: #fff;
  font-size: 1.6em;
  text-align: center;
}

.hyouban_category li.active {
  background: #ee602e;
}

.hyouban_comment_box h5 {
  font-size: 1.8em;
  margin-bottom: 20px;
}

#honbun .hyouban_comment_box p {
  font-size: 1.6em;
}


/*-----------------------------------------------------
  accordion
------------------------------------------------------*/

.accordion {
  padding: 30px 0 50px;
}

.accordion_text {
  font-size: 1.8em;
  position: relative;
  cursor: pointer;
  padding: 20px 0 20px 70px;
  background: #f7f3ee;
  color: #3487a5;
}

.accordion_text:hover {
  color: #fea202;
}

.accordion_text::after {
  width: 42px;
  height: 42px;
  content: '';
  display: block;
  position: absolute;
  top: 10px;
  left: 10px;
  border-radius: 42px;
  -webkit-border-radius: 42px;
  -moz-border-radius: 42px;
  background: url(../images/common/icon_plus.png) no-repeat center center #585858;
  background-size: 20px auto;
}

.accordion_text.open {
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
}

.accordion_text.open::after {
  background-image: url(../images/common/icon_minus.png);
}

.accordion_text.open::before {
  content: '閉じる';
  position: absolute;
  top: 20px;
  left: 10px;
}

.accordion_hidden_contents {
  display: none;
}


/*-----------------------------------------------------
  sub index
------------------------------------------------------*/

.sub_index {
  margin: 30px 0 50px;
  padding: 15px;
}

.sub_index h4 {
  text-align: center;
  font-size: 1.8em;
  margin: 15px 0 25px;
}

.sub_index ul {
  font-size: 1.6em;
}

.sub_index li {
  background: #fff;
  margin-bottom: 10px;
  padding: 15px;
  border-radius: 10px;
}

.sub_index.normal {
  background: #ebebeb;
}

.sub_index.blue {
  background: #daebf8;
}

.sub_index.red {
  background: #f6e9e4;
}


/*-----------------------------------------------------
  read more
------------------------------------------------------*/

.read_more {
  position: relative;
  height: 30px;
}

.read_more::after {
  width: 100px;
  height: 30px;
  content: '続きを読む';
  font-size: 1.6em;
  font-style: normal;
  text-decoration: underline;
  color: #3487a5;
  display: block;
  position: absolute;
  top: 0px;
  right: 0px;
  padding-left: 28px;
  background: url(../images/common/arrow_open_gray.png) no-repeat left 5px;
  background-size: 20px auto;
  cursor: pointer;
}

.read_more.open::after {
  content: '閉じる';
  background: url(../images/common/arrow_close_gray.png) no-repeat left 5px;
  background-size: 20px auto;
}

.read_more_hidden_contents {
  display: none;
}


/*-----------------------------------------------------
  image expand
------------------------------------------------------*/
.expand {
  position: relative;
}

.expand::after {
  width: 40px;
  height: 40px;
  content: '';
  display: block;
  position: absolute;
  bottom: 20px;
  right: 20px;
  background: url(../images/common/icon_scope.png) no-repeat left top;
  cursor: pointer;
}





/*-----------------------------------------------------
  service summary
------------------------------------------------------*/

.service_summary {
}

.service_summary dl {
  font-size: 1.5em;
  overflow: hidden;
}

.service_summary dt {
  width: 300px;
  float: left;
  margin-right: 24px;
}

.service_summary dt img {
  width: 100%;
  height: auto;
}

.service_summary dd {
  width: calc(100% - 324px);
  float: left;
}

.service_summary dd table {
  border-top: solid 1px #ccc9c6;
}

.service_summary dd th, .service_summary dd td {
  padding: 8px 15px 11px;
  vertical-align: middle;
  border-bottom: solid 1px #ccc9c6;
}

.service_summary dd th {
  background: #3487a5;
  font-weight: 400;
  text-align: left;
  color: #fff;
}

#honbun .service_summary p {
  font-size: 1em;
}

.service_summary.map_info dt, .service_summary.map_info dd {
  width: 50%;
  margin: 0;
}

.service_summary.map_info dd {
  text-align: center;
}


/*-----------------------------------------------------
  inline_scroll
------------------------------------------------------*/

.inline_scroll {
  padding: 20px;
  background: #fffaf1;
  border-radius: 10px;
  margin-bottom: 30px;
}

.inline_scroll_inner {
  height: 250px;
  overflow: auto;
  padding: 0 20px;
}

blockquote .inline_scroll_inner {
  background: none;
}

.inline_scroll_inner .point {
  background: #fff;
}


/*-----------------------------------------------------
  heading_accordion
------------------------------------------------------*/
.heading_accordion {
  margin-bottom: 15px;
}

.heading_accordion .heading_accordion_title:hover {
  text-decoration: underline;
}

.heading_accordion h3.heading_accordion_title, .heading_accordion h4.heading_accordion_title, .heading_accordion h5.heading_accordion_title {
  font-size: 1.8em;
  padding: 15px;
  border-radius: 10px;
  line-height: 1;
  cursor: pointer;
  background: url(../images/common/arrow_down.png) no-repeat right 20px center;
  background-size: 10px auto;
}

.heading_accordion h3.heading_accordion_title {
  background-color: #e3f2f7;
}

.heading_accordion h4.heading_accordion_title {
  background-color: #f7f3ee;
}

.heading_accordion h5.heading_accordion_title {
  background-color: #f4f4f4;
}

.heading_accordion h3.heading_accordion_title.open, .heading_accordion h4.heading_accordion_title.open, .heading_accordion h5.heading_accordion_title.open {
  background-image: url(../images/common/arrow_up.png);
}

.heading_accordion h3 span.question, .heading_accordion h4 span.question, .heading_accordion h5 span.question {
  color: #f67f00;
  font-size: 1.2em;
  padding-right: 8px;
  line-height: 1;
}

.heading_accordion .heading_accordion_more {
  display: none;
}



/*-----------------------------------------------------
  linkify-keywords
------------------------------------------------------*/

#honbun h3.font_yellow a:link, #navi_comment_free_opinion h3.font_yellow a:link {
  color: #fff98f;
}

#honbun h3.font_yellow a:visited, #navi_comment_free_opinion h3.font_yellow a:visited {
  color: #fff98f;
}



/*-----------------------------------------------------
  Not found
------------------------------------------------------*/

#notfound {
  background: #f0f0f0;
  margin-bottom: 50px;
  padding: 40px;
  text-align: center;
}

#notfound h2 {
  font-size: 3em;
  font-weight: 700;
  margin-bottom: 10px;
  color: #b20000;
}

#notfound h3 {
  font-size: 2em;
  font-weight: 700;
  margin-bottom: 10px;
}

#notfound p {
  font-size: 1.6em;
}


/*-----------------------------------------------------
  search result
-----------------------------------------------------*/

#search_tit h1 {
  width: 834px;
  height: 120px;
  padding-top: 35px;
  margin-bottom: 45px;
  font-size: 2.8em;
  color: #fff;
  text-align: center;
  background: url(../images/common/bg_h1_search.jpg) no-repeat center center;
}

#search_tit h1.writer {
  background: url(../images/common/bg_h1_writer.jpg) no-repeat center center;
}

#search_tit h1 span {
  color: #fea202;
  font-size: 1.25em;
  padding-right: 8px;
}

#search_tit.two_lines h1 {
  padding: 45px 20px 0;
  line-height: 1.2;
}

#search_tit.two_lines.pc_two_lines h1 {
  padding-top: 30px;
}

#search_tit.two_lines.font_large h1 {
  font-size: 3.2em;
  padding-top: 42px;
}

#search_tit.two_lines h1 span.font_small {
  display: inline-block;
  font-size: 0.75em;
  color: #fff;
  line-height: 1.3;
}

#search_tit.two_lines h1 span.tit_font_orange {
  color: #fea202;
  font-size: 1em;
}

#search_tit h1.others span {
  color: #fff;
}

.guide_search_result {
}

  .guide_search_result li {
    padding: 7px 0 7px 7px;
    border-bottom: dotted 1px #9a9692;
    overflow: hidden;
    position: relative;
  }

  .guide_search_result li.no_result {
    font-size: 1.8em;
    border: none;
  }

  .guide_search_result li a {
    display: block;
    overflow: hidden;
  }

  .guide_search_result .right_list_photo {
    width: 210px;
    height: 140px;
    margin-right: 10px;
    overflow: hidden;
    position: relative;
    float: left;
    border: solid 1px #ebebeb;
  }

  .guide_search_result .right_list_photo img {
    position: absolute;
    width: 100%;
    height: auto;
    min-width: 100%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
            transform: translate3d(-50%, -50%, 0);
  }

  .guide_search_result li:hover .right_list_photo img {
    opacity: 0.8;
  }

  .guide_search_result li p {
    font-size: 1.8em;
    line-height: 1.3;
  }

  #honbun .guide_search_result li p {
    margin-bottom: 0;
    line-height: 1.3;
  }

  .guide_box_R {
    width: 594px;
    float: right;
  }

  .guide_box_R .age_job {
    display: inline-block;
    margin-top: 5px;
    position: relative;
    z-index: 99;
  }

  .guide_box_R .age_job a {
    display: inline-block;
    width: 130px;
    height: 27px;
    margin: 5px 5px 0 0;
    text-align: center;
    color: #fff;
    background: #3487a5;
    font-size: 14px;
    line-height: 27px;
    font-weight: 700;
  }

  .guide_box_R .age_job a:link {text-decoration:none; color:#fff;}
  .guide_box_R .age_job a:visited {text-decoration:none; color:#fff;}
  .guide_box_R .age_job a:hover {text-decoration:none; color:#fff;}

  .guide_box_R .age_job a:hover {
    background: #5fafcc;
  }

  .guide_box_R .tag {
    background: url(../images/common/icon_tag.png) no-repeat left 5px;
    background-size: 17px auto;
    margin-top: 15px;
    padding-left: 28px;
    letter-spacing: -.40em;
    position: relative;
    z-index: 99;
  }

  .guide_box_R .tag li {
    display: inline-block;
    letter-spacing: normal;
    margin: 0 5px 5px 0;
    padding: 0;
    border: none;
  }

  .guide_box_R .tag li a {
    display: block;
    background: #fbf8f4;
    font-size: 1.4em;
    height: 22px;
    line-height: 22px;
    padding: 0 10px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
  }

  .guide_box_R .tag li a:link {text-decoration:none; color:#808080;}
  .guide_box_R .tag li a:visited {text-decoration:none; color:#808080;}
  .guide_box_R .tag li a:hover {text-decoration:none; color:#808080; background: #fffeaa}

  .guide_search_result li .star_count {
    position: absolute;
    bottom: 5px;
    right: 15px;
    background: none;
    text-align: right;
  }

  .guide_search_result li .view_count {
    position: absolute;
    bottom: 5px;
    right: 15px;
    background: none;
    text-align: right;
    display: none;
  }

  .guide_search_result li:hover { background: #fffeec;}

.no_result {
  font-size: 1.8em;
}



/*-----------------------------------------------------
  Responsive
-----------------------------------------------------*/

.onlyPC { display: block;}
.onlySP { display: none;}
.pc_kaigyou {
  display: block;
}


@media screen and (max-width: 767px) {
  .onlyPC { display: none;}
  .onlySP { display: block;}
}



/*-----------------------------------------------------

  SP layout

------------------------------------------------------*/


@media screen and (max-width: 767px) {

html {
  font-size: 55.6%;
}

body {
  min-width: inherit;
  font-size: 1rem;
}

img { width: 100%; height: auto; }

.sp_kaigyou {
  display: block;
}

.pc_kaigyou {
  display: inline;
}

input[type="submit"] {
  -webkit-appearance: none;
}

#wrapper {
  padding-bottom: 50px;
}

/*-----------------------------------------------------
  SP header
------------------------------------------------------*/

#sp_navimenu {
  width: 100%;
  max-height: 100%;
  padding-bottom: 60px;
  position: fixed;
  top: 0;
  z-index: 9990;
  background: #fff;
  overflow: auto;
  font-size: 1.6rem;
}

#sp_navimenu .spmenu_close {
  width: 80%;
  height: 30px;
  margin: 10px auto 13px;
  padding: 0 10px;
  line-height: 30px;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  background: #727272;
  text-align: center;
}

#sp_navimenu .spmenu_close span {
  background: url(../images/common/icon_close.png) no-repeat left center;
  background-size: 13px auto;
  padding-left: 20px;
  font-size: 1.2rem;
  color: #fff;
}

#sp_navimenu nav ul {
  border-top: dotted 1px #9a9692;
}

#sp_navimenu nav li {
  border-bottom: dotted 1px #9a9692;
}

#sp_navimenu nav li:last-child {
  border-bottom: none;
}

#sp_navimenu nav .others li:last-child {
  border-bottom: dotted 1px #9a9692;
}

#sp_navimenu nav li a {
  display: block;
  padding: 15px 15px 15px 25px;
  background: url(../images/common/arrow_white.png) no-repeat 10px center #3487a5;
  background-size: 7px auto;
  color: #fff;
}

#sp_navimenu nav .others li a {
  padding: 8px 15px 8px 25px;
  background: url(../images/common/arrow_gray.png) no-repeat 10px center #fff;
  background-size: 7px auto;
  color: #323232;
}

#sp_navimenu nav li.navi_tit {
  background: #3487a5;
  border-bottom: solid 1px #9a9692;
}

#sp_navimenu nav li.navi_tit a {
  color: #fff;
  background: none;
  margin-left: 0;
  padding-left: 15px;
  font-weight: 700;
}

#sp_navimenu nav ul.others li.navi_tit {
  background: #8e9599;
  border-bottom: solid 1px #cacccd;
}

#sp_navimenu #search_form_area {
  padding: 0 0 25px;
}

#sp_navimenu #search_form_area h6 {
  text-align: center;
  padding: 10px 0 8px;
  font-size: 1.6rem !important;
}

#sp_navimenu #search_form_area h6 span {
  background: url(../images/common/icon_search.png) no-repeat left center;
  background-size: 20px auto;
  padding-left: 30px;
}

#sp_navimenu #search_form_area form {
  margin-top: 10px;
}

#sp_navimenu #search_form_area label.select_label {
  display: inline-block;
  position: relative;
  padding-left: 1em;
}

#sp_navimenu #search_form_area label.select_label input{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

#header_top ul.sns {
  display: none;
}

#header_top .wp_social_bookmarking_light {
  display: none;
}

#header_description {
  display: none;
}

#pc_navi {
  display: none;
}

#sp_navi {
  display: block;
}

.btn_menu {
  width: 40px;
  height: 55px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 999;
  background: #3487a5;
  display: block;
}

.btn_menu.active {
  background: #3487a5;
}

#menuButton {
  display: block;
  width: 30px;
  height:30px;
  position: absolute;
  top: 7px;
  right: 7px;
  z-index: 3;
  color: #fff;
}

  #menuButton span {
    display: block;
    background: #fff;
    width: 25px;
    height: 3px;
    position: absolute;
    left: 5px;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    border-radius: 1.5px;
    -webkit-border-radius: 1.5px;
    -moz-border-radius: 1.5px;
  }

  #menuButton span:first-child {
    top: 4px;
  }

  #menuButton span:nth-child(2) {
    margin-top: -4px;
    top: 50%;
  }

  #menuButton span:last-child {
    bottom: 9px;
  }

  #menuButton.active span:first-child {
    -webkit-transform: translateY(7px) rotate(45deg);
    -moz-transform: translateY(7px) rotate(45deg);
    -ms-transform: translateY(7px) rotate(45deg);
    transform: translateY(7px) rotate(45deg);
  }

  #menuButton.active span:nth-child(2) {
    opacity: 0;
  }

  #menuButton.active span:last-child {
    -webkit-transform: translateY(-7px) rotate(-45deg);
    -moz-transform: translateY(-7px) rotate(-45deg);
    -ms-transform: translateY(-7px) rotate(-45deg);
    transform: translateY(-7px) rotate(-45deg);
  }

  .btn_menu p {
    width: 100%;
    position: absolute;
    bottom: 10px;
    text-align: center;
    font-size: 1rem;
    color: #fff;
    line-height: 1;
    letter-spacing: 1px;
  }

  #menu_open_cover {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.5);
    /*display: none;*/
    z-index: 999;
  }

  #menu_open_cover.active {
    display: block;
  }

#gnavi {
  margin: 0px !important;
}

#gnavi li, #gnavi li:last-child {
  width: 20%;
  height: 66px;
  font-size: 1.3rem;
  background-image: none;
  background-color: #fbf8f4;
  border: solid 1px #fff;
  overflow: hidden;
}

#gnavi li a {
  width: 100%;
  height: 66px;
  padding-top: 12px;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
}

  #gnavi li.navi_05 a, #gnavi li.navi_06 a {
    padding-top: 5px;
  }

  #gnavi li.navi_05 span {
    font-size: 1.4rem;
    line-height: 1.2;
  }

#gnavi li a:hover {
  background-color: #fbf8f4;
  height: 66px;
}

  #gnavi li a:hover {text-decoration:none; color:#323232;}

  #gnavi li a:hover span {text-decoration:none; color:#fea202;}


#maintenance {
  padding: 10px;
  text-align: left;
}

/*-----------------------------------------------------
  SP contents
------------------------------------------------------*/

#left_column {
  width: 100%;
  float: none;
}

/* TRAVEL */

body.travel #left_column {
  width: 93.75%;
}

img.ad_img {
  width: auto;
  height: auto;
}

#contents {
  width: 100%;
  padding-bottom: 60px;
}

section h2 {
  font-size: 1.8rem;
  padding-top: 10px;
}

section h3.tit_en {
  padding-top: 5px !important;
  font-size: 1.8rem !important;
}

#search_form_area {
  margin-bottom: 0;
  padding-top: 20px;
}

#search_area {
  margin: 0 10px;
  padding: 10px;
}

#search_area .search-form {
  width: 100%;
  padding:0;
}

#search_area .search-field {
  width: 85%;
}

#search_area .search-field {
  font-size: 1.4rem;
  height: 30px;
  padding: 8px 5px 0;
}

#search_area .search-submit {
  width: 40px;
  height: 40px;
  background-size: 18px auto;
}

#search_from_tag {
  width: 100%;
}

#search_from_tag h2 {
  height: 33px;
  font-size: 1.8rem;
  margin-top: 40px;
}

.search_from_tag_box {
  margin: 30px 0;
}

#search_from_tag .search_list {
  margin: 0;
  padding: 15px;
}

#search_from_tag .search_list li {
  width: auto;
  font-size: 1.4rem;
  margin-right: 15px;
  background-position: left 7px;
}

#search_from_tag .search_list_tag {
  padding: 15px;
}

#search_from_tag ul.tag li a {
  font-size: 1.4rem;
  height: 24px;
  line-height: 24px;
}

body#sub section#search {
  padding-bottom: 10px;
}

#search_list_L {
	width: 100%;
	float: none;
}

#search_list_R {
	width: 100%;
	float: none;
	margin-top: 20px;
}

.search_list {
	padding: 10px 20px;
	margin: 0 10px;
}

#search_list_L ul li, #search_list_R ul li {
	font-size: 1.4rem;
}

.reccomended_kw {
  padding: 0 10px;
}

#left_column .reccomended_kw {
  margin: 25px 0;
}

#left_column .reccomended_kw h4 {
  font-size: 1.6rem;
}

#left_column .reccomended_kw li a {
  font-size: 1.4rem;
  padding: 5px 15px;
}

#left_column .notfound_ranking .reccomended_kw li a {
  padding: 8px 15px;
}

.notfound_ranking .reccomended_kw li span {
  padding-top: 10px;
  padding-bottom: 10px;
}

.entry_box {
  margin: 10px 10px 15px;
  padding: 0 0 15px;
  overflow: hidden;
}

.entry_box .entry_box_L {
  width: 100px;
  margin: 0 10px 15px 0;
}

.entry_box .entry_box_L .entry_photo {
  width: 100px;
  height: 67px;
}

.entry_box .entry_box_R {
  width: 100%;
  padding: 15px
}

.entry_box .entry_box_R p.summary {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
}

.entry_box .entry_box_R p.name {
  line-height: 1.3;
  margin-top: 5px;
}

#honbun .entry_box .entry_box_R p.summary {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  clear: inherit;
}

#honbun .entry_box .entry_box_R p.name {
  line-height: 1.3;
  margin-top: 5px;
  clear: inherit;
}

.entry_box .entry_box_R p.summary:first-letter {
  font-size: 1.3em;
}

.entry_box .entry_box_R .age_job {
  clear: both;
  padding-top: 10px;
}

.entry_box .entry_box_R .job {
  margin-top: 10px;
  height: auto;
}

.entry_box .entry_box_R .job .before {
  background: none;
  padding-right: 5px;
}

.entry_box .entry_box_R .job .after {
  display: inline-block;
  background: url(../images/common/arrow_blue_l.png) no-repeat left center;
  background-size: 17px auto;
  padding-left: 25px;
}

.entry_box .entry_box_R .tag {
  margin-top: 10px;
}

.entry_box .evaluation {
  width: 100%;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
  height: 25px;
  line-height: 25px;
  color: #fff;
}

.entry_box .evaluation.eva_01 {
  background: #d95047;
}

.entry_box .evaluation.eva_02 {
  background: #eb7f78;
}

.entry_box .evaluation.eva_03 {
  background: #8cc1c9;
}

.entry_box .evaluation.eva_04 {
  background: #40777f;
}

section#opinion h2 {
  line-height: 1.3;
}

section#opinion h3 {
  margin-bottom: 20px;
}

.opinion_box {
  margin: 10px 10px 15px;
  padding: 5px 15px 15px;
  overflow: hidden;
}

.opinion_box h4.question {
  width: 100%;
  margin: 0;
  /*padding-left: 30px;
  text-indent: -30px;*/
  font-size: 1.6rem;
  text-indent: 0;
}

.opinion_box .opinion_box_L {
  width: 100px;
  margin-top: -46px;
}

.opinion_box .opinion_box_L .opinion_photo {
  display: none;
}

.opinion_box .opinion_box_R {
  width: 100%;
}

.yes a p, .no a p {
  font-size: 1.3rem;
  padding: 0 10px;
}

.yes_or_no span.font_large {
  font-size: 1.3em;
}

.yes {
  width: 48%;
}

.yes a {
  width: 100%;
}

.no {
  width: 48%;
}

.no a {
  width: 100%;
}

.or {
    width: 32px;
    height: 32px;
    border-radius: 32px;
    -webkit-border-radius: 32px;
    -moz-border-radius: 32px;
    border: solid 2px #f7f3ee;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 25px;
    top: 47px;
    left: 50%;
    margin-left: -15px;
}

.opinion_box .opinion_box_R .notice {
  font-size: 1.2rem;
}

.opinion_box .opinion_category {
  height: 28px;
  line-height: 28px;
  margin-top: 10px;
}

/* popular guide  */

body#sub section#guide_popular.pt60 {
  padding-top: 0px !important;
}

#guide_popular h2 {
  background-position: right 10px top 0;
  padding-top: 3px;
  font-size: 1.6rem;
}

#guide_popular .minna_taikendan h2, #guide_popular .minna_guide h2 {
  font-size: 1.8rem;
  background-size: 20px auto;
}

#guide_popular .guide_popular_list {
  padding: 0 10px;
  margin: 30px 15px 0;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
}

#guide_popular .guide_popular_list dl {
  width: 100%;
  max-width: 300px;
  border-right: none;
  border-bottom: dotted 1px #9a9692;
  padding: 20px 0;
  margin-bottom: 0;
}

#guide_popular .guide_popular_list dl.dl_03 {
  border-bottom: dotted 1px #9a9692;
}

#guide_popular .guide_popular_list dl.dl_06 {
  border-bottom: dotted 1px #9a9692;
}

#guide_popular .guide_popular_list dl.dl_09 {
  border-bottom: dotted 1px #9a9692;
}

#guide_popular .guide_popular_list dt {
  width: 100%;
  height: 150px;
}

#guide_popular .guide_popular_list .guide_title {
  height: auto;
}

#guide_popular .minna_taikendan .guide_popular_list .guide_title, #guide_popular .minna_guide .guide_popular_list .guide_title {
  height: auto;
}

#guide_popular h2 span.sp_kaigyou {
  margin-top: 5px;
}

/* search by category  */

#search_category.guide_search .search_list {
  padding: 10px;
  margin: 30px 15px 0;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
}

#search_category .search_list li {
  width: 45%;
  margin: 10px 2.5%;
}

.guide_search {
  padding-top: 0;
}

.guide_search .search_list {
  padding: 15px 15px 15px 25px;
  margin: 30px 15px 0;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
}



/* btn  */

.btn_more_l a {
  width: 200px;
  height: 35px;
  margin: 15px auto;
  line-height: 30px;
  font-size: 1.6rem !important;
}

.btn_more_l.btn_jp a {
  width: 90%;
  height: auto;
  padding: 10px 20px 12px;
  line-height: 1.3;
}


.agent_btn {
  padding: 15px 0;
}

.agent_btn .btn_kirarin a {
  min-width: 80%;
  height: auto;
  margin: 0 auto;
  font-size: 1.6rem;
  line-height: 1.3;
  padding: 10px 10px 10px;
}

.agent_btn.color_blue .btn_kirarin a {
  padding: 10px 20px 15px;
}

.agent_list_box table {
  width: 100%;
  font-size: 1.4rem;
}

.agent_list_box th.service_name {
  width: 120px;
}

.agent_list_box td.service_name img {
  width: 80px;
}

.agent_list_box .btn_kirarin {
  width: 45%;
  margin: 5px 0;
}

.agent_list_box .btn_kirarin a {
  width: 100%;
}

.agent_list_box td li {
  background-position: left 7px;
}


.agent_btn_rich .btn_gradation a {
  min-width: inherit;
  width: 300px;
  height: 90px;
  padding-top: 20px;
  font-size: 1.8rem;
}

.agent_copy_01 {
  width: 270px;
  top: 22px;
  left: calc(50% - 135px);
  font-size: 1.4rem;
}

.agent_copy_02 {
  font-size: 1.4rem;
}

/*-----------------------------------------------------
  more link box
------------------------------------------------------*/

.more_link_box {
}

.more_link_box h6 {
  margin-left: 10px;
}

.more_link_box a {
  padding: 15px 15px 10px 15px;
}

.more_link_box dt, .more_link_box dl {
  width: auto;
}

.more_link_box dt {
  float: none;
  font-size: 1.4rem;
}

.more_link_box dd.description {
  display: none;
}

.more_link_box dd.image {
  width: 120px;
  float: left;
  margin: 0 10px 5px 0;
}

.more_link_box .outerlink {
  top: 13px;
  font-size: 1.2rem;
  background-size: 14px auto;
  padding-left: 20px;
}

@media screen and (max-width: 320px) {

.more_link_box h6 span {
  font-size: 1rem;
}

.more_link_box h6 span.large_square {
  font-size: 1.3rem;
}

.more_link_box .outerlink {
  font-size: 1rem;
  top: 8px;
}

}

.more_link_box_simple {
  padding: 15px 0;
}

.more_link_box_simple dd {
  float: none;
}

/*-----------------------------------------------------
  hyouban comment
------------------------------------------------------*/

.hyouban_comment h4 {
  font-size: 1.6rem;
}

.hyouban_comment_box {
  padding: 70px 20px 20px;
}

.hyouban_comment_box .comment_meta {
  margin-bottom: 20px;
  padding: 15px 0 0 90px;
  font-size: 1.6rem;
}

.hyouban_comment_box .comment_icon {
  width: 80px;
  height: 80px;
  background-size: 50px auto;
}

.hyouban_comment_box .hyouka {
  padding-right: 150px;
  background-size: 130px auto;
}

.hyouban_category li {
  width: 43%;
  height: 62px;
  font-size: 1.4rem;
}

.hyouban_comment_box h5 {
  font-size: 1.6rem;
}

/*-----------------------------------------------------
  accordion
------------------------------------------------------*/

.accordion_text:hover {
  color: #3487a5;
}

/*-----------------------------------------------------
  image expand
------------------------------------------------------*/
.expand::after {
  width: 30px;
  height: 30px;
  bottom: 15px;
  right: 15px;
  background-size: 30px auto;
}

/*-----------------------------------------------------
  service summary
------------------------------------------------------*/

.service_summary dt {
  width: 100%;
  float: none;
  text-align: center;
  margin-right: 0;
}

.service_summary dt img {
  width: auto;
  max-width: 300px;
  margin-bottom: 15px;
}

.service_summary dd {
  width: 100%;
  float: none;
}

.service_summary dd th, .service_summary dd td {
  padding: 8px 10px 10px;
}

.service_summary.map_info dt, .service_summary.map_info dd {
  width: 100%;
}

.service_summary.map_info dd iframe {
  width: 100%;
}


/*-----------------------------------------------------
  inline_scroll
------------------------------------------------------*/
.inline_scroll {
  padding: 10px;
}

.inline_scroll_inner {
  padding: 0 20px 0 10px;
}

/*-----------------------------------------------------
  heading_accordion
------------------------------------------------------*/
.heading_accordion h3.heading_accordion_title, .heading_accordion h4.heading_accordion_title, .heading_accordion h5.heading_accordion_title {
  padding-right: 40px;
  line-height: 1.5;
}

.heading_accordion h3 span.question, .heading_accordion h4 span.question, .heading_accordion h5 span.question {
  line-height: 1.5;
}



/*-----------------------------------------------------
  phase
------------------------------------------------------*/

#phase {
  width: 100%;
  height: 712px;
}

body#sub #phase {
  margin-bottom: 40px;
}

#phase .phase_contents {
  overflow: hidden;
}

#phase h2 {
  height: 33px;
  font-size: 1.8rem;
  margin-top: 40px;
}

#phase dl {
  width: 100%;
}

#phase .phase_contents {
  padding: 0;
  height: 605px;
}

#phase dl {
  height: 121px;
  overflow: hidden;
  margin: 0;
  padding: 0 10%;
  border-bottom: dotted 1px #999;
}

#phase a:hover dl {
  border-bottom: dotted 1px #999;
}

#phase dt {
  width: 49%;
  display: block;
  padding-top: 20px;
  vertical-align: top;
  font-size: 1.6rem;
  float: left;
}

#phase dd {
  width: 49%;
  display: block;
  height: 120px;
  text-align: center;
  vertical-align: top;
  float: right;
}

#phase a:nth-child(even) dt {
  float: right;
}

#phase a:nth-child(even) dd {
  float: left;
}

#phase dd img {
  width: auto;
  height: 120px;
}

  #phase .bx-wrapper {
    position: relative;
  }

  #phase .bx-prev,  #phase .bx-next {
    width: 14px;
    height: 21px;
    position: absolute;
    top: 50%;
    margin-top: -10px;
    text-indent: -9999px;
    overflow: hidden;
  }

  #phase .bx-prev {
    left: 10px;
    background: url(../images/top/slide_arrow_l.png) no-repeat left top;
    background-size: 14px auto;
  }

  #phase .bx-next {
    right: 10px;
    background: url(../images/top/slide_arrow_r.png) no-repeat left top;
    background-size: 14px auto;
  }


/*-----------------------------------------------------
  recommended agent
------------------------------------------------------*/

body#sub section#recommended_agent {
  margin-bottom: 0px;
  padding-bottom: 0px;
}

#recommended_agent .section_lead {
  font-size: 1.4rem;
  margin: 15px;
}

#recommended_agent .recommended_agent_wrap {
  text-align: center;
  padding-top: 15px;
}

#recommended_agent dl {
  width: 100%;
  border-right: none;
  border-bottom: dotted 1px #9a9692;
  margin-bottom: 18px;
  padding-bottom: 15px;
  overflow: hidden;
}

#recommended_agent dt {
  width: 50%;
  float: left;
  padding-top: 25px;
  padding-right: 10px;
}

#recommended_agent dd {
  width: 50%;
  height: 100px;
  padding: 10px 10px;
  min-height: inherit;
  float: left;
}

#recommended_agent dd img {
  width: auto;
  height: auto;
  max-width: 150px;
  max-height: 80px;
}

#recommended_agent dl:nth-child(3n) {
  border-bottom: dotted 1px #9a9692;
}

#recommended_agent dl:last-child {
  border: none;
}

#recommended_agent h2 {
  font-size: 1.8rem;
  padding: 10px 40px 10px;
}

#recommended_agent h2.small {
  font-size: 1.6rem;
  line-height: 1.3;
}

/*-----------------------------------------------------
  theme guide
------------------------------------------------------*/

#theme_guide .theme_guide_wrap {
  margin-top: 15px;
  padding-top: 20px;
}

#theme_guide .theme_guide_wrap a {
  width: 100%;
  margin: 0 0 10px;
  padding: 0 0 10px;
  background: none;
  border-bottom: dotted 1px #999999;
}

#theme_guide .theme_guide_wrap a:last-child {
  border: none;
}

#theme_guide .theme_guide_wrap dt {
  height: auto;
  float: right;
  font-weight: bold;
  font-size: 1.4rem;
  margin-left: 0;
  padding: 20px 0 10px;
}

#theme_guide .theme_guide_wrap dt:first-letter{
  font-size: inherit;
}

#theme_guide .theme_guide_wrap dd {
  width: 80px;
  height: 80px;
  float: left;
  border-radius: 40px;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  border: solid 2px #CCC;
  z-index: 1;
}

#theme_guide .theme_guide_wrap dd img {
  width: auto;
  height: 100%;
}




/*-----------------------------------------------------
  SP right
------------------------------------------------------*/
#right_column {
  width: 100%;
  float: none;
}

#right_column h4 {
  font-size: 1.6rem;
}

.right_list_box {
  padding: 20px 10px;
}

#right_column .right_list li .right_list_photo {
  margin-right: 10px;
}

#right_column .right_list li p {
  width: auto;
  float: none;
}

#right_column .agent_ranking {
  width: 100%;
}

#right_column .agent_ranking .right_list_logo {
  margin-right: 10px;
}

#right_column .right_list.agent_ranking p {
  width: auto;
  float: none;
  font-size: 1.4rem !important;
}

#right_column .agent_ranking p span {
  padding: 5px 0;
}

#right_column .agent_ranking p span.right_ranking_01, #right_column .agent_ranking p span.right_ranking_02, #right_column .agent_ranking p span.right_ranking_03 {
  margin-left: 70px;
}

#right_column .right_facebook {
  margin: 10px 10px 40px;
  overflow: hidden;
}

#right_column .right_twitter {
  margin: 10px;
}

#right_column .right_ad {
  margin-top: 30px;
}

#right_column .right_ad img {
  width: auto;
}

@media screen and (max-width: 340px) {
  #right_column .right_ad img {
    width: 300px;
  }
}

#right_column .right_ad h5 {
  font-size: 1.2rem;
}

#right_column .right_sns_banner {
  margin: 30px 0 50px;
}

#right_column .right_sns_banner a {
  width: 268px;
  margin: 0 auto 20px;
}


/*-----------------------------------------------------
  Not found
------------------------------------------------------*/

#notfound {
  padding: 20px 15px;
}

#notfound h2 {
  font-size: 2rem;
}

#notfound h3 {
  font-size: 1.6rem;
}

#notfound p {
  font-size: 1.4rem;
}



.guide_search_result {
  margin-bottom: 40px;
  padding: 0 10px;
}

#guide_new {
  padding-top: 0;
}

#guide_new h2 {
  padding: 0 30px 10px;
}

#guide_new .guide_search_result {
  margin-bottom: 20px;
  padding-top: 20px;
}

#honbun.feature_single .guide_search_result {
  padding: 0;
  border-top: dotted 1px #9a9692;
}

.guide_search_result li {
  padding: 15px 0 15px 10px;
}

.guide_search_result .right_list_photo {
  width: 120px;
  height: 80px;
  margin-right: 10px;
}

.guide_box_R {
  width: auto;
  padding-bottom: 15px;
  float: none;
}

.guide_search_result li p {
  font-size: 1.4rem;
  font-weight: 700;
  min-height: 80px;
  padding-top: 5px;
}

#honbun .guide_search_result li p {
  font-size: 1.4rem;
  font-weight: 700;
  min-height: 80px;
  padding-top: 5px;
  clear: none;
  line-height: 1.3;
}


/*-----------------------------------------------------
  SP footer
------------------------------------------------------*/

footer#page_footer {
  border: none;
}

#footer_inner {
  width: 100%;
  height: auto;
  padding: 20px 0 0;
}

#footer_inner ul {
  width: auto;
  float: none;
}

#footer_inner li {
  border-bottom: dotted 1px #9a9692;
  margin-left: 20px;
  padding-left: 25px;
  background: url(../images/common/arrow_gray.png) no-repeat left 10px top 9px;
  background-size: 7px auto;
}

#footer_inner li.footer_navi_tit {
  display: block;
  background: url(../images/common/arrow_gray.png) no-repeat left 10px top 12px;
  background-size: 7px auto;
  margin: 0 0 10px 0px;
  padding: 5px 0 5px 25px;
  font-size: 1.4rem;
  font-weight: bold;
}

#footer_inner li.footer_navi_tit.mt30 {
  margin-top: 0 !important;
}

#footer_inner li.footer_navi_tit.mb20 {
  margin-bottom: 10px !important;
}

#footer_inner ul.wide li {
  display: block;
  font-size: 1.4rem;
}

#footer_inner li.footer_navi_tit.external_link {
  padding-left: 17px;
}

#copyright {
  width: 100%;
  height: 40px;
  margin-top: 30px;
  line-height: 40px;
  background: #5f686c;
  color: #fff;
  text-align: center;
  position: relative;
  bottom: inherit;
  right: inherit;
  font-size: 1rem;
}

#footer_logo {
  display: none;
}

#footer_menu {
  width: 100%;
  height: 50px;
  background: #155d77;
  position: fixed;
  left: 0;
  bottom: -70px;
  letter-spacing: -.40em;
  z-index: 9999;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.2;
  color: #fff;
  font-weight: 700;
  box-shadow: 0px 0px 30px #fff, 0px 0px 30px #fff;
  -moz-box-shadow: 0px 0px 30px #fff, 0px 0px 30px #fff;
  -webkit-box-shadow: 0px 0px 30px #fff, 0px 0px 30px #fff;
  -webkit-transition: all .3s;
  transition: all .3s;
}

#footer_menu.fmenu_active {
  bottom: 0;
}

#footer_menu.open {
  bottom: 0px !important;
}

  #footer_menu a:link {text-decoration:none; color:#fff;}
  #footer_menu a:visited {text-decoration:none; color:#fff;}
  #footer_menu a:hover {text-decoration:none; color:#fff;}

#footer_menu div.sp_footer_fixmenu {
  width: 24%;
  height: 50px;
  display: inline-block;
  letter-spacing: normal;
  padding-top: 15px;
  border-left: solid 1px #1f4451;
  position: relative;
}

#footer_menu div.sp_footer_fixmenu::before {
  width: 30px;
  height: 32px;
  content: '';
  display: block;
  position: absolute;
  top: -17px;
  left: 50%;
  margin-left: -17px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 30px auto;
  z-index: -1;
}

#footer_menu div.sp_footer_fixmenu:first-child {
  border: none;
}

body.travel_single #footer_menu {
  height: 60px;
}

#footer_menu .addtoany_shortcode {
  padding-top: 10px;
}

#footer_menu #fmenu_ranking {
  padding-top: 22px;
}

#footer_menu #fmenu_use {
  padding-top: 22px;
}

#footer_menu #fmenu_agent {
  padding-top: 22px;
}

#footer_menu #fmenu_pagetop.index {
  padding-top: 22px;
}

#footer_menu div#fmenu_ranking::before {
  background-image: url(../images/common/icon_fmenu_home.png);
}

#footer_menu div#fmenu_use::before {
  background-image: url(../images/common/icon_fmenu_guide.png);
}

#footer_menu div#fmenu_agent::before {
  background-image: url(../images/common/icon_fmenu_agent.png);
}

#footer_menu div#fmenu_pagetop::before {
  background-image: url(../images/common/icon_fmenu_totop.png);
}

#footer_menu div#fmenu_pagetop.index::before {
  background-image: url(../images/common/icon_fmenu_index.png);
}

#footer_banner {
  height: auto;
  bottom: 0;
}

#footer_banner .footer_banner_inner {
  width: 100%;
  height: auto;
}

.footer_banner_close {
  width: 25px;
  height: 25px;
  background-size: 100% 100%;
  top: -30px;
}

.guide_search h2 {
  font-size: 1.6rem;
}

footer .guide_search h2 {
  font-size: 1.8rem;
}

footer .guide_search li {
  display: block;
}

#index_wrapper_inner {
  width: 90%;
  height: 80%;
  padding: 20px 0;
}

#index_wrapper #cover_index_tit {
  font-size: 2rem;
}

#index_wrapper .toc_list li {
  font-size: 1.6rem;
}

#index_wrapper .toc_list {
  padding: 15px;
}

#index_wrapper .toc_list li {
  font-size: 1.6rem;
  background-size: 10px auto;
}


}



@media screen and (max-width: 320px) {

#gnavi li, #gnavi li:last-child {
  font-size: 1.2rem;
}

.entry_box .entry_box_R p.summary {
  font-size: 1.4rem;
  line-height: 1.2;
}

#honbun .entry_box .entry_box_R p.summary {
  font-size: 1.4rem;
  line-height: 1.2;
}

section#opinion h2 {
  font-size: 1.4rem;
}

.guide_search h2 {
  font-size: 1.5rem;
  padding-top: 5px;
}

}





/*-----------------------------------------------------
  general
------------------------------------------------------*/

.clearfix:after {
  content: ".";
  height: 0;
  clear: both;
  display: block;
  visibility: hidden;
}

.fLeft {
  display: inline;
  float: left;
}

.fRight {
  display: inline;
  float: right;
}

.txtCenter {
  text-align:center !important;
}

.txtLeft {
  text-align:left !important;
}

.txtRight {
  text-align:right !important;
}

.txtInd {
  text-indent: 1em;
}

.fontB {
  font-weight: 700 !important;
}

.disIB {
  display: inline-block;
}

.disnone {
  display: none !important;
}

.font_orange {
  color: #f67f00 !important;
}

.font_bk {
  color: #000 !important;
}

.of_hidden {
  overflow: hidden;
}

.disnone {
  display: none;
}

.marker_pink {
  background: url(../images/common/marker_pink.png) repeat-x bottom;
}

blockquote {
  position: relative;
  margin-bottom: 30px;
  padding: 15px 20px 20px 56px;
  box-sizing: border-box;
  font-style: italic;
  color: #464646;
  background: #e3f2f7;
}

blockquote:before{
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 10px;
  width: 36px;
  height: 36px;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  vertical-align: middle;
  text-align: center;
  content: "";
  background: url(../images/common/blockquote.png) no-repeat center center #a5d7ff;
  background-size: 30px auto;
  border-radius: 50%;
}

blockquote h4 {
  font-size: 2em;
  margin-top: 20px;
}

blockquote h5 {
  font-size: 1.8em;
  margin-top: 20px;
}

blockquote p {
  position: relative;
  padding: 0;
  margin: 10px 0;
  z-index: 3;
  line-height: 1.7;
}

#honbun blockquote p {
  margin-bottom: 10px;
}

blockquote cite {
  display: block;
  text-align: right;
  color: #888888;
  font-size: 0.9em;
}

blockquote a {
  display: block;
  text-align: right;
  font-size: 0.85em;
  padding-right: 15px;
}

  blockquote a:link {text-decoration: underline;}
  blockquote a:visited {text-decoration: underline;}
  blockquote a:hover {text-decoration: underline;}

blockquote a.bunchu {
  display: inline;
  text-align: inherit;
  font-size: 1em;
}

.common_words blockquote h4 {
  font-size: 1.8em;
  margin-top: 20px;
}

.common_words blockquote h5 {
  font-size: 1.6em;
  margin-top: 20px;
}

#honbun .common_words blockquote p {
  line-height:1.7;
  font-size: 1.6em;
}

.disc_li li {
  background: url(../images/common/icon_disc.png) no-repeat left 8px;
  background-size: 4px auto;
  padding-left: 12px;
}






@media screen and (max-width: 767px) {

blockquote {
  margin: 0 0 30px 5px;
  padding: 20px 12px 5px 15px;
}

.scroll_kuchikomi blockquote {
  padding: 25px 5px 5px 10px;
}

blockquote:before {
  top: -7px;
  left: -7px;
  -ms-transform: translateY(0%);
  -webkit-transform: translateY(0%);
  transform: translateY(0%);
}

blockquote h4, h5 {
  font-size: 1.8rem;
}

.disc_li li {
  background-position: left 8px;
}

}

.mt00 { margin-top: 0   !important;}
.mt05 { margin-top: 5px !important;}
.mt10 { margin-top:10px !important;}
.mt12 { margin-top:12px !important;}
.mt15 { margin-top:15px !important;}
.mt20 { margin-top:20px !important;}
.mt25 { margin-top:25px !important;}
.mt30 { margin-top:30px !important;}
.mt35 { margin-top:35px !important;}
.mt40 { margin-top:40px !important;}
.mt45 { margin-top:45px !important;}
.mt50 { margin-top:50px !important;}
.mt60 { margin-top:60px !important;}
.mt70 { margin-top:70px !important;}
.mt80 { margin-top:80px !important;}
.mt90 { margin-top:90px !important;}
.mt100 { margin-top:100px !important;}
.mt110 { margin-top:110px !important;}
.mt120 { margin-top:120px !important;}
.mt130 { margin-top:130px !important;}
.mt140 { margin-top:140px !important;}
.mt150 { margin-top:150px !important;}
.mt160 { margin-top:160px !important;}
.mt170 { margin-top:170px !important;}
.mt180 { margin-top:180px !important;}
.mt190 { margin-top:190px !important;}
.mt200 { margin-top:200px !important;}
.mt210 { margin-top:210px !important;}
.mt220 { margin-top:220px !important;}
.mt230 { margin-top:230px !important;}
.mt240 { margin-top:240px !important;}
.mt250 { margin-top:250px !important;}
.mt260 { margin-top:260px !important;}
.mt270 { margin-top:270px !important;}
.mt280 { margin-top:280px !important;}
.mt290 { margin-top:290px !important;}
.mt300 { margin-top:300px !important;}
.mr00 { margin-right: 0   !important;}
.mr05 { margin-right: 5px !important;}
.mr10 { margin-right:10px !important;}
.mr12 { margin-right:12px !important;}
.mr15 { margin-right:15px !important;}
.mr20 { margin-right:20px !important;}
.mr25 { margin-right:25px !important;}
.mr30 { margin-right:30px !important;}
.mr35 { margin-right:35px !important;}
.mr40 { margin-right:40px !important;}
.mr45 { margin-right:45px !important;}
.mr50 { margin-right:50px !important;}
.mb00 { margin-bottom: 0   !important;}
.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom:10px !important;}
.mb12 { margin-bottom:12px !important;}
.mb15 { margin-bottom:15px !important;}
.mb20 { margin-bottom:20px !important;}
.mb25 { margin-bottom:25px !important;}
.mb30 { margin-bottom:30px !important;}
.mb35 { margin-bottom:35px !important;}
.mb40 { margin-bottom:40px !important;}
.mb45 { margin-bottom:45px !important;}
.mb50 { margin-bottom:50px !important;}
.mb55 { margin-bottom:55px !important;}
.mb60 { margin-bottom:60px !important;}
.mb70 { margin-bottom:70px !important;}
.mb80 { margin-bottom:80px !important;}
.mb90 { margin-bottom:90px !important;}
.mb100 { margin-bottom:100px !important;}
.mb110 { margin-bottom:110px !important;}
.mb120 { margin-bottom:120px !important;}
.mb130 { margin-bottom:130px !important;}
.mb140 { margin-bottom:140px !important;}
.mb150 { margin-bottom:150px !important;}
.mb160 { margin-bottom:160px !important;}
.mb170 { margin-bottom:170px !important;}
.mb180 { margin-bottom:180px !important;}
.mb190 { margin-bottom:190px !important;}
.mb200 { margin-bottom:200px !important;}
.mb210 { margin-bottom:210px !important;}
.mb220 { margin-bottom:220px !important;}
.mb230 { margin-bottom:230px !important;}
.mb240 { margin-bottom:240px !important;}
.mb250 { margin-bottom:250px !important;}
.mb260 { margin-bottom:260px !important;}
.mb270 { margin-bottom:270px !important;}
.mb280 { margin-bottom:280px !important;}
.mb290 { margin-bottom:290px !important;}
.mb300 { margin-bottom:300px !important;}
.ml00 { margin-left: 0   !important;}
.ml05 { margin-left: 5px !important;}
.ml10 { margin-left:10px !important;}
.ml12 { margin-left:12px !important;}
.ml15 { margin-left:15px !important;}
.ml20 { margin-left:20px !important;}
.ml25 { margin-left:25px !important;}
.ml30 { margin-left:30px !important;}
.ml35 { margin-left:35px !important;}
.ml40 { margin-left:40px !important;}
.ml45 { margin-left:45px !important;}
.ml50 { margin-left:50px !important;}

.pt00 { padding-top: 0   !important;}
.pt05 { padding-top: 5px !important;}
.pt10 { padding-top:10px !important;}
.pt12 { padding-top:12px !important;}
.pt15 { padding-top:15px !important;}
.pt20 { padding-top:20px !important;}
.pt25 { padding-top:25px !important;}
.pt30 { padding-top:30px !important;}
.pt35 { padding-top:35px !important;}
.pt40 { padding-top:40px !important;}
.pt45 { padding-top:45px !important;}
.pt50 { padding-top:50px !important;}
.pt60 { padding-top:60px !important;}
.pt70 { padding-top:70px !important;}
.pr00 { padding-right: 0   !important;}
.pr05 { padding-right: 5px !important;}
.pr10 { padding-right:10px !important;}
.pr12 { padding-right:12px !important;}
.pr15 { padding-right:15px !important;}
.pr20 { padding-right:20px !important;}
.pr25 { padding-right:25px !important;}
.pr30 { padding-right:30px !important;}
.pr35 { padding-right:35px !important;}
.pr40 { padding-right:40px !important;}
.pr45 { padding-right:45px !important;}
.pr50 { padding-right:50px !important;}
.pb00 { padding-bottom: 0   !important;}
.pb05 { padding-bottom: 5px !important;}
.pb10 { padding-bottom:10px !important;}
.pb12 { padding-bottom:12px !important;}
.pb15 { padding-bottom:15px !important;}
.pb20 { padding-bottom:20px !important;}
.pb25 { padding-bottom:25px !important;}
.pb30 { padding-bottom:30px !important;}
.pb35 { padding-bottom:35px !important;}
.pb40 { padding-bottom:40px !important;}
.pb45 { padding-bottom:45px !important;}
.pb50 { padding-bottom:50px !important;}
.pl00 { padding-left: 0   !important;}
.pl05 { padding-left: 5px !important;}
.pl10 { padding-left:10px !important;}
.pl12 { padding-left:12px !important;}
.pl15 { padding-left:15px !important;}
.pl20 { padding-left:20px !important;}
.pl25 { padding-left:25px !important;}
.pl30 { padding-left:30px !important;}
.pl35 { padding-left:35px !important;}
.pl40 { padding-left:40px !important;}
.pl45 { padding-left:45px !important;}
.pl50 { padding-left:50px !important;}
