@charset "shift_jis";
@import url("./css/tables.css");
@import url("./css/commonstyles.css");
@import url("./css/textstyles.css");
/*
==================================================
基本スタイル
==================================================
*/
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}
body {
  margin: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
progress {
  vertical-align: baseline;
}
template,
[hidden] {
  display: none;
}
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}
a:active,
a:hover {
  outline-width: 0;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: inherit;
}
b,
strong {
  font-weight: bolder;
}
dfn {
  font-style: italic;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
  text-align: left;
}
mark {
  background-color: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
svg:not(:root) {
  overflow: hidden;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
figure {
  margin: 1em 40px;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
button,
input,
select,
textarea {
  font: inherit;
  margin: 0;
}
optgroup {
  font-weight: bold;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
textarea {
  overflow: auto;
}
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
/*
==================================================
基本スタイル
==================================================
*/

body {
  background-color: #fff;
  color: #333;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Verdana,'ＭＳ Ｐゴシック', sans-serif;
  font-size: 16px;
  line-height: 1.8;
  text-align: center;
  -webkit-text-size-adjust: 100%;
}
@media screen and (min-width: 1000px) {
  body {
  background-image: url(img/body_bg.png);
  background-position: center top;
  background-repeat: repeat;
  }
}
h1, h2, h3, h4, h5, h6, #menu .title, #rmenu .title,
blockquote::before, blockquote::after,
.feature, .comment-tit,
.point1, .point2, .point3, .point4, .point5, .point6, .point7, .point8, .point9, .point10 {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E" ,"メイリオ","MS P明朝", "MS PMincho", serif;
  font-weight: 600;
}
h1, h2, h3 {
  clear: both;
}
h2, h3, h4, h5, h6 {
  overflow: hidden;
}
.clear {
  clear: both;
  font-size: 1px;
  line-height: 0;
}
p {
  margin: 0;
}
img {
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}
/* メニュー内画像高さ調整 */
#menu .menulist ul li a img,#rmenu .menulist ul li a img{max-height:360px}
/* ボックス色調整 */
.ylwbox {
background-color: #FDF9E8;
/*border: 4px solid #EAC43F;*/
}
@media screen and (min-width:768px){
  #main .nmlbox,
  #main .dottbox,
  #main .ylwbox,
  #main .graybg{
     padding:20px 4%;
     box-sizing:border-box;
  }
}
/* 画像位置調整 */
#main .topimg_right img,
#main .topimg_left img{
  margin:0;
}
#main .fleximg1 img{
  min-height:152px;
}
/* リスト
==================================================
*/
#main div[class*="box"] > ul,
#main div[class*="box"] > ol{
  margin-top:4px !important;
  margin-bottom:4px !important;
}
#menu div[class*="box"]:not(.menubox) > ul,
#menu div[class*="box"]:not(.menubox) > ol{
  margin-top:4px !important;
  margin-bottom:4px !important;
}
#main :not(#whatsnew):not(#pagelist):not(#index_inner):not(#sitemaps):not(li) > ul {
  list-style: outside none none;
  margin: 10px 0;
  overflow: hidden;
  padding: 0;
}
#main :not(#whatsnew):not(#pagelist):not(#index_inner):not(#sitemaps):not(li) > ul > li {
  background-image: url(img/ul.png);
  background-position: calc(4em/16) calc(6em/16);
  background-repeat: no-repeat;
  background-size: calc(19em/16) auto;
  margin: 6px 0;
  padding: 0 0 0 calc(28em/16);
}
/*
#main :not(li) > ol {
  counter-reset: number;
  list-style: outside none none;
  margin: 10px 0;
  overflow: hidden;
  padding: 0;
}
#main :not(li) > ol > li {
  margin: 6px 0;
  padding: 0 0 0 calc(30em/16);
  position: relative;
}
#main :not(li) > ol > li::before {
  background-color: #e68297;
  border-radius: 50%;
  box-sizing: border-box;
  color: #fff;
  content: counter(number,decimal);
  counter-increment: number;
  font-size: calc(14em/16);
  font-weight: normal;
  height: calc(20em/14);
  left: 3px;
  letter-spacing: 0;
  line-height: calc(20em/14);
  position: absolute;
  text-align: center;
  top: 3px;
  width: calc(20em/14);
}
#main :not(li) ol > li:nth-child(n+101)::before{
  font-size: 10px !important;
  min-width: 20px;
  min-height: 20px;
  line-height: 19px;
}
#main #index_inner > ol{
  padding-left:8px !important;
  margin-right: 16px !important;
}
*/
@media screen and (min-width: 1000px) {
  #main :not(#whatsnew):not(#pagelist):not(#index_inner):not(#sitemaps):not(li) > ul > li {
  background-position: calc(4em/16) calc(3em/16);
  background-size: calc(24em/16) auto;
  padding: 0 0 0 calc(36em/16);
  }
  #main :not(li) > ol > li {
  padding: 0 0 0 calc(36em/16);
  }
  #main :not(li) > ol > li::before {
  left: calc(6em/16);
  }
}
/* リンク
==================================================
*/
a {
  color: #4eaedd;
  transition: background-color 0.25s ease, border 0.25s ease, color 0.25s ease, opacity 0.25s ease, transform 0.25s ease;
}
a img {
  background: none;
}
a:hover img{
  opacity:0.7;
  transition: opacity 0.3s ease-out;
}
@media screen and (min-width: 1000px) {
  a:hover {
  color: #942630;
  opacity: 0.75;
  text-decoration: none;
  }
  #main a:hover, #menu a:hover, #rmenu a:hover, #pagetop a:hover {
  left: 1px;
  position: relative;
  top: 1px;
  }
}
/*
==================================================
全体
==================================================
*/
/* レイアウト
==================================================
*/
#wrapper {
  overflow: hidden;
  position: relative;
  z-index: 0;
}
#contents {
  background-color: #fff;
  position: relative;
}
#layoutbox{overflow:hidden;}
#contents::after,
div[id^="text"]::after,
div[id^="space"]::after{
  clear: both;
  content: '';
  display: block;
}
#siteNavibox {
  background-color: #f7f4f0;
}
#siteNavi {
  color: #8c8780;
  font-size: 10px;
  padding: 8px;
  text-align: left;
}
#siteNavi a {
  color: #5c5751;
}
@media screen and (min-width: 768px) {
  #siteNavi {
  font-size: 12px;
  padding: 10px;
  }
}
@media screen and (min-width: 1000px) {
  #contents, #pr p {
  margin: 0 auto;
  padding: 10px 0;
  width: 1000px;
  }
  #siteNavi {
  box-sizing: border-box;
  margin: 0 auto;
  padding: 12px 20px;
  width: 1000px;
  }
  #siteNavi a:hover {
  color: #942630;
  }
}
#siteNavi br{display:none;}
/* ページ上部へ戻る
==================================================
*/
#pagetop {
  clear: both;
  overflow: hidden;
}
#pagetop a {
  background-image: url(img/pagetop.png);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 36px auto;
  box-sizing: border-box;
  color: #786e6e;
  display: block;
  font-family: 'Times New Roman';
  font-size: 11px;
  height: 42px;
  letter-spacing: 0.05em;
  line-height: 0;
  margin: 24px auto;
  padding-top: 32px;
  text-decoration: none;
  width: 60px;
}
@media screen and (min-width: 768px) {
  #pagetop a {
  background-size: 46px auto;
  background-position: center 10px;
  font-size: 14px;
  height: 62px;
  margin-bottom: 28px;
  padding-top: 57px;
  width: 80px;
  }
}
@media screen and (min-width: 1000px) {
  #pagetop a:hover {
  left: 0;
  top: 0;
  transform: translateY(-6px);
  }
}
/* 検索ボックス
==================================================
*/
#searcharea {
  margin-left: -40px;
}
#searchbox {
  align-items: center;
  background-color: #192d33;
  box-sizing: border-box;
  display: flex;
  height: 100%;
  left: 0;
  letter-spacing: 0;
  line-height: 1;
  padding: 5px 0;
  position: absolute;
  top: 0;
  width: 100%;
}
#searchbox form {
  position: relative;
  text-align: left;
  width: 100%;
  z-index: 0;
}
#searchbox form::before {
  border: 2px solid #b19a78;
  border-radius: 50%;
  box-sizing: border-box;
  content: '';
  height: 12px;
  right: 14px;
  position: absolute;
  top: 7px;
  width: 12px;
  z-index: -1;
}
#searchbox form::after {
  background-color: #b19a78;
  border-radius: 2px;
  content: '';
  height: 7px;
  right: 13px;
  position: absolute;
  top: 16px;
  transform: rotate(-45deg);
  width: 2px;
  z-index: -1;
}
#searchbox input {
  -webkit-appearance: none;
}
#searchbox input:focus::-webkit-input-placeholder {
  color: transparent;
}
#searchbox input:focus:-moz-placeholder {
  color: transparent;
}
#searchbox input:focus::-moz-placeholder {
  color: transparent;
}
#searchbox input[type="text"], #searchbox input[type="search"] {
  background-color: rgba(251, 250, 248, 0.13);
  border: none;
  border-radius: 30px;
  box-sizing: border-box;
  color: #b19a78;
  cursor: auto;
  font-size: 16px;
  height: 30px;
  line-height: 30px;
  padding: 0 42px 0 14px;
  width: 100%;
}
#searchbox input[type="text"]:focus, #searchbox input[type="search"]:focus {
  color: #c8b69b;
}
#searchbox input[type="submit"] {
  background-color: transparent;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
  font-size: 10px;
  height: 30px;
  overflow: hidden;
  position: absolute;
  right: 0;
  text-indent: 200%;
  top: 0;
  white-space: nowrap;
  width: 36px;
}
#searchbox .closebtn {
  box-sizing: border-box;
  display: block;
  height: 35px;
  margin-right: 8px;
  overflow: hidden;
  padding-top: 24px;
  position: relative;
  text-align: center;
  width: 40px;
}
#searchbox .closebtn::before, #searchbox .closebtn::after {
  border-top: 1px solid #b19a78;
  content: '';
  height: 0;
  left: 7px;
  position: absolute;
  top: 11px;
  width: 19px;
  transform: rotate(45deg);
}
#searchbox .closebtn::after {
  transform: rotate(-45deg);
}
#searchbox .closebtn span {
  color: #b19a78;
  display: block;
  font-family: 'Times New Roman';
  font-size: 9px;
  line-height: 1;
}
#searchbox .closebtn span::after {
  content: 'CLOSE';
  left: 50%;
  letter-spacing: 0.075em;
  position: absolute;
  text-indent: 0;
  transform: translateX(-50%);
}
#searchbox .closebtn input {
  display: none;
}
#searchbtn {
  display: block;
  height: 40px;
  overflow: hidden;
  position: relative;
  text-align: center;
  width: 40px;
}
#searchbtn::before {
  border: 2px solid #b19a78;
  border-radius: 50%;
  box-sizing: border-box;
  content: '';
  height: 12px;
  left: 14px;
  position: absolute;
  top: 12px;
  width: 12px;
}
#searchbtn::after {
  background-color: #b19a78;
  border-radius: 2px;
  content: '';
  height: 7px;
  left: 25px;
  position: absolute;
  top: 21px;
  transform: rotate(-45deg);
  width: 2px;
}
#searchbtn span {
  display: block;
  font-size: 9px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}
input#panelsearch[type="radio"] {
  display: none;
}
input#panelsearch[type="radio"] ~ #searchbox {
  opacity: 0;
  transition: opacity 0.15s ease, z-index 0.15s ease;
  z-index: -1;
}
input#panelsearch[type="radio"]:checked ~ #searchbox {
  opacity: 1;
  z-index: 99;
}
@media screen and (min-width: 768px) {
  #searcharea {
  margin-left: -200px;
  }
  #searchbox {
  height: auto;
  opacity: 1 !important;
  padding: 0;
  position: static;
  width: 200px;
  }
  #searchbox input[type="text"], #searchbox input[type="search"] {
  font-size: 12px;
  }
  #searchbox .closebtn {
  display: none;
  }
  #searchbtn {
  display: none;
  }
}
@media screen and (min-width: 1000px) {
  #searchbox input[type="text"], #searchbox input[type="search"] {
  transition: background-color 0.25s ease;
  }
  #searchbox input[type="text"]:focus, #searchbox input[type="search"]:focus {
  background-color: rgba(251, 250, 248, 0.2);
  outline: 0;
  }
}
/* 回り込み・回り込み解除
==================================================
*/
.txt-img img {
  margin: 0 8px 8px 8px;
}
.center {
  margin: 5px 0;
  text-align: center;
}
.float-l {
  float: left;
}
.float-r {
  float: right;
}
.float-l img,
.float-r img {
  margin-bottom: 20px;
}
.float-l img {
  margin-right: 20px;
}
.float-r img {
  margin-left: 20px;
}
.clear, .FloatEnd {
  clear: both;
  font-size: 1px;
  height: 0;
  line-height: 0;
}
/*
==================================================
トップ部分
==================================================
*/
/* トップ
==================================================
*/
#top {
  background-color: #192d33;
  padding: 5px;
}
#top .inner {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
#top .inner > div:first-of-type {
  align-items: center;
  display: flex;
  flex-grow: 1;
  justify-content: space-between;
  position: relative;
  width: 100%;
}
#top h1 {
  box-sizing: border-box;
  flex-grow: 1;
  font-size: 16px;
  line-height: 1;
  margin: 0;
  padding: 5px 50px;
  width: 100%;
  padding:5px;
}
#top h1 a {
  color: #b19a78;
  line-height: 1.4;
  text-decoration: none;
}
#top h1 a img {
  max-width: 140px;
}
@media screen and (min-width: 768px) {
  #top {
  padding: 24px 10px;
  }
  #top .inner {
  display: block;
  }
  #top h1 {
  margin: 0 auto;
  padding: 0;
  
  margin:0;
  
  }
}
@media screen and (min-width: 1000px) {
  #top {
  padding: 34px 0;
  }
  #top .inner {
  margin: 0 auto;
  width: 1000px;
  }
  #top h1 a {
  letter-spacing: 0.1em;
  }
  #top h1 a img {
  max-width: none;
  }
  #top h1{
  
  }
}
/* ヘッダー
==================================================
*/
#headerbox {
  overflow: hidden;
  position: relative;
  text-align: center;
}
#headerbox > img {
  height: auto;
  width: 100%;
}
#header {
  height: auto !important;
}
#header #headertxt {
  text-align: left;
}
#header .title,
#header .desc {
  margin: 8px 0;
  padding: 0 5px;
}
#header .title {
  font-size: 1em;
  left: 2%;
  letter-spacing: 3px;
  line-height: 1.4;
  max-height: 4.5em;
  overflow: hidden;
  position: absolute;
  text-overflow: ellipsis;
  top: 20%;
  width: 75%;
}
#header .title a {
  color: #786767;
  text-decoration: none;
}
#header .desc {
  color: #786767;
  font-size: 0.875em;
  line-height: 1.5;
  max-height: 4.5em;
  overflow: auto;
}
@media screen and (min-width: 480px) {
  #header .title {
  font-size: 1.25em;
  }
}
@media screen and (min-width: 768px) {
  #header {
  left: 0;
  margin: 0;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  }
  #header .title,
  #header .desc {
  left: 5%;
  margin: 0;
  max-height: 100%;
  overflow: visible;
  padding: 0;
  position: relative;
  width: 90%;
  }
  #header .title {
  font-size: 28px;
  line-height: 1.4;
  max-height: 100%;
  width: 70%;
  }
  #header .desc {
  margin: 10px 0;
  }
}
@media screen and (min-width: 1000px) {
  #headerbox {
  background-color: #f7f7f5;
  }
  #headerbox > img {
  min-width: 1000px;
  width: auto;
  }
  #header {
  margin: 0 auto;
  width: 1000px;
  }
  #header .title {
  font-size: 36px;
  width: 90%;
  }
  #header .desc {
  font-size: 14px;
  }
}
@media screen and (max-width:767px){
  #header {
    background-color:#FFF;
  }
  #header > img {
    height: auto;
    margin-top: 0px;
    width: 100%;
  }
  #headerbox #header:first-child .title,
  #headerbox #header:first-child .desc{
    position:relative;
    left:0;
    padding:0 8px;
    box-sizing:border-box;
    width:100%;
    text-align:left;
    justify-content: flex-start;
  }
  #headerbox #header:first-child h2.title{
    font-size:1.2em;
  }
}
/*
@media screen and (min-width:767px){
  #headerbox #header:first-child{
    top: 0;
    left:0;
    position: relative;
    transform: unset;
    padding:16px 20px;
    min-height: 160px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  #headerbox #header:first-child .title,
  #headerbox #header:first-child .desc{
    left:0;
    width:100%;
    padding:0 8px;
    position:relative;
  }
}
@media screen and (min-width:1000px){
  #header #header:first-child{
    min-height: 150px;
    padding:10px 0;
  }
}
*/
/* トップメニュー
==================================================
*/
#topmenuarea {
  order: -1;
  margin-right: -40px;
}
#topmenu {
  background-color: rgba(25, 45, 51, 0.98);
  box-sizing: border-box;
  left: 0;
  letter-spacing: 0;
  height: 100%;
  padding: 10px 5px;
  position: absolute;
  top: 0;
  width: 100%;
}
#topmenu ul {
  list-style: outside none none;
  margin: 16px;
  padding: 0;
}
#topmenu ul > li {
  text-align: left;
  padding: 10px 0;
}
#topmenu ul a {
  background-image: url(img/h6.png);
  background-position: 10px 5px;
  background-repeat: no-repeat;
  background-size: 10px auto;
  color: #b19a78;
  display: inline-block;
  font-size: 14px;
  line-height: 1.6;
  padding: 0 0 0 32px;
  text-decoration: none;
}
#topmenu ul a img {
  max-height:60px;
}
#topmenu .closebtn {
  box-sizing: border-box;
  display: block;
  height: 35px;
  overflow: hidden;
  padding-top: 22px;
  position: relative;
  text-align: center;
  width: 40px;
}
#topmenu .closebtn::before, #topmenu .closebtn::after {
  border-top: 1px solid #b19a78;
  content: '';
  height: 0;
  left: 9px;
  position: absolute;
  top: 9px;
  width: 19px;
  transform: rotate(45deg);
}
#topmenu .closebtn::after {
  transform: rotate(-45deg);
}
#topmenu .closebtn span {
  color: #b19a78;
  display: block;
  font-family: 'Times New Roman';
  font-size: 9px;
  line-height: 1;
}
#topmenu .closebtn span::after {
  content: 'CLOSE';
  left: 50%;
  letter-spacing: 0.075em;
  position: absolute;
  text-indent: 0;
  transform: translateX(-50%);
}
#topmenu .closebtn input {
  display: none;
}
#topmenubtn {
  box-sizing: border-box;
  display: block;
  height: 40px;
  overflow: hidden;
  padding-top: 27px;
  position: relative;
  text-align: center;
  width: 40px;
}
#topmenubtn::before {
  border-bottom: 1px solid #b19a78;
  border-top: 1px solid #b19a78;
  box-sizing: border-box;
  content: '';
  height: 7px;
  left: 8px;
  position: absolute;
  top: 7px;
  width: 24px;
}
#topmenubtn::after {
  border-top: 1px solid #b19a78;
  content: '';
  height: 0;
  left: 8px;
  position: absolute;
  top: 19px;
  width: 24px;
}
#topmenubtn span {
  color: #b19a78;
  display: block;
  font-family: 'Times New Roman';
  font-size: 9px;
  line-height: 1;
  letter-spacing: 0.075em;
}
input#panelmenu[type="radio"] {
  display: none;
}
input#panelmenu[type="radio"] ~ #topmenu {
  opacity: 0;
  transition: opacity 0.2s ease, transform 0.2s ease, z-index 0.2s ease;
  transform: translateY(-10px);
  z-index: -1;
}
input#panelmenu[type="radio"]:checked ~ #topmenu {
  opacity: 1;
  transform: translateY(0);
  z-index: 999;
}
@media screen and (min-width: 768px) {
  #topmenuarea {
  margin-right: 0;
  }
  #topmenu {
  background-color: transparent;
  height: auto;
  opacity: 1 !important;
  padding: 0;
  position: static;
  transform: translateY(0) !important;
  z-index: auto !important;
  }
  #topmenu ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 26px 0 -20px;
  }
  #topmenu ul > li {
  margin-bottom: 14px;
  padding: 0;
  }
  #topmenu ul > li:not(:last-child) {
  border-right: 1px solid #404541;
  }
  #topmenu ul a {
  background-image: none;
  display: block;
  font-size: 13px;
  padding: 0 30px;
  text-align: center;
  }
  #topmenu .closebtn {
  display: none;
  }
  #topmenubtn {
  display: none;
  }
}
@media screen and (min-width: 1000px) {
  #topmenu ul {
  margin: 40px 0 -26px !important;
  }
  #topmenu ul:hover li {
  border-right-color: rgba(64, 69, 65, 0.5);
  }
  #topmenu ul:hover a {
  opacity: 0.6;
  }
  #topmenu ul a {
  letter-spacing: 0.1em;
  padding: 0 40px;
  }
  #topmenu ul a:after {
  border-bottom: 1px solid #b19a78;
  display: block;
  content: '';
  opacity: 0;
  transition: opacity 0.2s ease, transform 0.2s ease;
  transform: translateY(-6px);
  width: 100%;
  }
  #topmenu ul a:hover {
  opacity: 1;
  }
  #topmenu ul a:hover:after {
  opacity: 1;
  transform: translateY(0);
  }
}
/*
==================================================
メインコンテンツ
==================================================
*/
/* 記事領域
==================================================
*/
#main {
  background-color: #fff;
  box-sizing: border-box;
  padding: 10px;
  text-align: left;
}
#main div[id^="text"], #space1, #space2 {
  margin-bottom: 15px;
}
@media screen and (min-width: 768px) {
  #main {
  float: right;
  }
}
/* 見出し
==================================================
*/
#main h2,
#main h3 {
  border-bottom: 3px solid #e6ddd0;
  margin: 0 0 10px;
  padding: 0;
  font-size: 20px;
  line-height: 1.5;
  color: #685232;
}
#main h2 > span,
#main h3 > span {
  border-bottom: 1px solid #d7c8b3;
  display: block;
  padding: 8px 2px;
  position: relative;
  z-index: 0;
}
#main h2 a,
#main h3 a {
  color: #685232;
}
#main h2 a:not([href]),
#main h3 a:not([href]) {
  text-decoration: none;
}
#main div[id^="text"] h2,
#main div[id^="text"] h3,
#main div[id^="space"] h2,
#main div[id^="space"] h3 {
  margin: 10px 0;
}
#main h4 {
  border-bottom: 1px solid #d0bfa6;
  color: #685232;
  font-size: 18px;
  line-height: 1.5;
  margin: 10px 0;
  padding: 6px 4px 9px;
  position: relative;
}
#main h4::before {
  border-bottom: 1px solid #d0bfa6;
  bottom: 2px;
  content: '';
  left: 0;
  position: absolute;
  right: 0;
}
#main h5 {
  color: #695333;
  font-size: 17px;
  line-height: 1.5;
  margin: 15px 0 10px;
  padding: 0 0 0 13px;
  position: relative;
}
#main h5::before {
  background-image: linear-gradient(112deg, #e8d670, #c6ad61);
  bottom: 2px;
  content: '';
  left: 4px;
  position: absolute;
  top: 2px;
  width: 3px;
}
#main h6 {
  background-image: url(img/h6.png);
  background-position: 2px 6px;
  background-repeat: no-repeat;
  background-size: 10px auto;
  font-size: 16px;
  line-height: 1.6;
  margin: 8px auto;
  padding: 0 0 0 19px;
  position: relative;
}
#contents div:not(.menuitem):not(id) > h4:first-child,
#contents div:not(.menuitem):not(id) > h5:first-child,
#contents div:not(.menuitem):not(id) > h6:first-child{
  margin-top:4px;
}
#main blockquote {
  background-color: #faf9f7;
  border: none;
  border-bottom: 1px solid #f0eeeb;
  border-top: 1px solid #f0eeeb;
  font-size: 16px;
  line-height: 1.8;
  margin: 20px 0;
  padding: 25px 30px;
  position: relative;
  z-index: 0;
}
#main blockquote::before {
  color: #e0dfdc;
  content: '“';
  font-size: 40px;
  left: 6px;
  line-height: 0;
  position: absolute;
  top: 24px;
}
#main blockquote::after {
  bottom: 2px;
  color: #e0dfdc;
  content: '”';
  font-size: 40px;
  line-height: 0;
  right: 6px;
  position: absolute;
}
@media screen and (min-width: 768px) {
  #main h2,
  #main h3 {
  margin: 0 0 20px;
  font-size: 28px;
  letter-spacing:1px;
  }
  #main h2 > span,
  #main h3 > span {
  line-height: 1.4;
  padding: 10px 6px 10px;
  }
  #main .text h3, #main #text1 h3, #main #text2 h3, #main #text3 h3, #main #text4 h3, #main #text5 h3, #main #text6 h3, #main #text7 h3, #main #text8 h3, #main #text9 h3, #main #text10 h3, #main #space1 h3, #main #space2 h3 {
  margin: 20px 0;
  }
  #main h4 {
  font-size: 22px;
  line-height: 1.4;
  margin: 10px 0 18px;
  padding: 8px 8px 11px;
  }
  #main h5 {
  font-size: 20px;
  line-height: 1.5;
  margin: 10px 0 15px;
  padding: 0 0 0 18px;
  }
  #main h5::before {
  bottom: 3px;
  top: 3px;
  }
  #main h6 {
  background-size: 12px auto;
  font-size: 18px;
  line-height: 1.5;
  margin: 10px auto;
  padding: 0 0 0 22px;
  }
  #main blockquote {
  padding: 30px 36px;
  }
  #main blockquote::before {
  left: 12px;
  top: 28px;
  }
  #main blockquote::after {
  bottom: 6px;
  right: 14px;
  }
}
/*
==================================================
画像付きボックス
==================================================
*/
.alert, .accept, .attention, .thint {
  background-position: 14px 19px;
  background-size: 22px auto;
  border-style: double;
  border-width: 3px;
  color: #333;
  font-size: 16px;
  line-height: 1.8;
  margin: 15px 0;
  padding: 18px 15px 18px 48px;
  position: relative;
}
.alert.noimage, .accept.noimage, .attention.noimage, .thint.noimage {
  padding: 18px 15px;
}
.alert {
  background-color: #ffeff4;
  border-color: #ffdce7;
}
.accept {
  background-color: #e6f6f7;
  border-color: #c6e5e8;
}
.attention {
  background-color: #fdf3e2;
  border-color: #f3ddb9;
}
.thint {
  background-color: #ecf5fc;
  border-color: #cfe1e7;
}
@media screen and (min-width: 768px) {
  .alert, .accept, .attention, .thint {
  background-position: 26px 26px;
  background-size: 28px auto;
  margin: 20px 0;
  padding: 28px 20px 28px 78px;
  }
  .alert.noimage, .accept.noimage, .attention.noimage, .thint.noimage {
  padding: 28px 20px;
  }
}
.user1,
.user2 {
  background-color: #fff;
  background-position: right 14px top 15px;
  background-size: 47px auto;
  border: 1px solid #e7e7e7;
  border-radius: 6px;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.05);
  box-sizing: border-box;
  font-size: 16px;
  line-height: 1.8;
  margin: 15px 0;
  min-height: 80px;
  overflow: visible;
  padding: 15px 70px 15px 20px;
  position: relative;
  _height: auto;
}
/*
.user1::before,
.user2::before {
  border-left: 7px solid #e7e7e7;
  border-bottom-left-radius: 25px;
  box-shadow: -2px 2px 0 rgba(0, 0, 0, 0.05);
  bottom: -8px;
  content: "";
  height: 13px;
  left: 21px;
  position: absolute;
  width: 7px;
  clip: rect(5px, auto, 15px, -2px);
}
.user1::after,
.user2::after {
  border-left: 7px solid #fff;
  border-bottom-left-radius: 25px;
  box-shadow: -1px 1px 0 #e7e7e7;
  bottom: -8px;
  content: "";
  height: 13px;
  left: 20px;
  position: absolute;
  width: 7px;
  clip: rect(5px, auto, 15px, auto);
}
*/
.user1.noimage,
.user2.noimage {
  min-height: 0;
  padding: 15px 20px;
}
@media screen and (min-width: 768px) {
  .user1,
  .user2 {
  background-position: right 28px top 16px;
  background-size: 94px auto;
  box-shadow: 0 3px 0 rgba(0, 0, 0, 0.05);
  margin: 20px 0 30px;
  min-height: 160px;
  padding: 30px 170px 30px 40px;
  }
/*
  .user1::before,
  .user2::before {
  border-left: 14px solid #e7e7e7;
  box-shadow: -3px 2px 0 rgba(0, 0, 0, 0.05);
  bottom: -16px;
  height: 25px;
  left: 41px;
  width: 11px;
  clip: rect(10px, auto, 30px, -4px);
  }
  .user1::after,
  .user2::after {
  border-left: 14px solid #fff;
  box-shadow: -1px 1px 0 #e7e7e7;
  bottom: -15px;
  height: 25px;
  left: 40px;
  width: 10px;
  clip: rect(10px, auto, 30px, auto);
  }
*/
  .user1.noimage,
  .user2.noimage {
  min-height: 0;
  padding: 30px 40px;
  }
}
/*
==================================================
FAQ
==================================================
*/
.question1,
.answer1 {
  background-color: #f9f6ef;
  background-image: none;
  border: none;
  border-radius: 4px;
  font-size: 16px;
  line-height: 1.8;
  margin: 20px 0;
  overflow: hidden;
  padding: 20px 25px;
}
.question1 {
  color: #5c4e3e;
  padding-left: 60px;
  position: relative;
  z-index: 1;
}
.question1::before {
  bottom: 0;
  color: #e5ddd2;
  content: 'Q';
  font-family: 'Times New Roman';
  font-size: 38px;
  font-weight: normal;
  left: 16px;
  line-height: 1;
  position: absolute;
  right: 0;
  top: 12px;
  z-index: -1;
}
.question1 + .answer1 {
  margin-top: -45px;
}
@media screen and (min-width: 768px) {
  .question1,
  .answer1 {
  padding: 30px 50px;
  }
  .question1 {
  padding-left: 88px;
  }
  .question1::before {
  font-size: 48px;
  left: 34px;
  top: 18px;
  }
  .question1 + .answer1 {
  margin-top: -50px;
  }
}
.question2,
.answer2 {
  background-image: none;
  border: none;
  font-size: 16px;
  line-height: 1.8;
  margin: 20px 0;
  padding: 0 0 0 35px;
  position: relative;
}
.question2::before,
.answer2::before {
  bottom: 0;
  font-family: 'Times New Roman';
  font-size: 24px;
  font-weight: normal;
  left: 5px;
  line-height: 1;
  position: absolute;
  right: 0;
  top: 0;
}
.question2 {
  color: #5c4e3e;
}
.question2::before {
  color: #b39a7a;
  content: 'Q.';
}
.question2 + .answer2 {
  margin-top: -10px;
}
.answer2::before {
  color: #e68297;
  content: 'A.';
}
@media screen and (min-width: 768px) {
  .question2,
  .answer2 {
  margin: 30px 0;
  padding: 0 0 0 40px;
  }
  .question2 + .answer2 {
  margin-top: -15px;
  }
}
/*
==================================================
サイドメニュー
==================================================
*/
/* メニュー
==================================================
*/
#menu,
#rmenu {
  background-color: #fff;
  box-sizing: border-box;
  overflow: hidden;
  padding: 0 10px;
  text-align: left;
}
#menu h4,
#menu .title,
#rmenu h4,
#rmenu .title {
  background-color: #f7f4f0;
  border-bottom: 1px solid #ded6c8;
  color: #685232;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.5;
  margin: 0 -10px;
  padding: 14px 15px;
}
#menu .menubox,
#rmenu .menubox {
  margin: 0 -10px 10px;
  overflow: hidden;
}
#menu .menulist,
#rmenu .menulist {
  background-color: #f7f4f0;
}
#menu .menulist ul,
#rmenu .menulist ul {
  list-style: outside none none;
  margin: 0;
  padding: 15px;
}
#menu .menulist li,
#rmenu .menulist li {
  line-height: 1;
  padding: 6px 0;
}
#menu .menulist li a,
#rmenu .menulist li a {
  background-image: url(img/h6.png);
  background-position: 2px 4px;
  background-repeat: no-repeat;
  background-size: 9px auto;
  color: #4e5d62;
  display: inline-block;
  font-size: 13px;
  line-height: 1.6;
  padding: 0 0 0 18px;
  position: relative;
  text-align: left;
  text-decoration: none;
}
#menu .menulist .l2 a,
#menu .menulist .l3 a,
#rmenu .menulist .l2 a,
#rmenu .menulist .l3 a {
  background-image: none;
  font-size:0.8125rem;
}
#menu .menulist .l2 a::before,
#menu .menulist .l3 a::before,
#rmenu .menulist .l2 a::before,
#rmenu .menulist .l3 a::before {
  border-left: 1px solid #d7c8b3;
  border-bottom: 1px solid #d7c8b3;
  box-sizing: border-box;
  content: '';
  height: 8px;
  left: 2px;
  position: absolute;
  top: 2px;
  width: 8px;
}
#menu .menulist .l2 a,
#rmenu .menulist .l2 a {
  margin-left: 20px;
}
#menu .menulist .l3 a,
#rmenu .menulist .l3 a {
  margin-left: 30px;
}
#menu .rankbox,
#rmenu .rankbox {
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  #menu h4,
  #menu .title,
  #rmenu h4,
  #rmenu .title {
  margin: 0;
  padding: 14px 18px;
  }
  #menu .menubox,
  #rmenu .menubox {
  margin-left: 0;
  margin-right: 0;
  }
  #menu .menulist ul,
  #rmenu .menulist ul {
  padding: 14px 18px;
  }
}
@media screen and (min-width: 1000px) {
  #menu .menubox,
  #rmenu .menubox {
  margin-bottom: 20px;
  }
  #menu .menulist li a:hover,
  #rmenu .menulist li a:hover {
  color: #942630;
  text-decoration: underline;
  }
}
/* バナー領域
==================================================
*/
.bannerbox {
  position: relative;
}
.bannerbox ul {
  list-style: outside none none;
  margin: 0;
  padding: 0;
}
.bannerbox li {
  margin-bottom: 10px;
  text-align: center;
}
.bannerbox li a img {
  vertical-align: bottom;
}
/* 最新記事・アーカイブ
==================================================
*/
ul#newEntry, ul#entryarchive {
  background-color: #f7f4f0;
  list-style: outside none none;
  margin: 0;
  overflow: hidden;
  padding: 15px;
}
ul#newEntry li, ul#entryarchive li {
  background-image: url(img/h6.png);
  background-position: 2px 12px;
  background-repeat: no-repeat;
  background-size: 9px auto;
  color: #4e5d62;
  font-size: 13px;
  line-height: 1.6;
  padding: 6px 0 6px 18px;
}
ul#newEntry li::after, ul#entryarchive li::after {
  clear: both;
  content: '';
  display: block;
}
ul#newEntry li a, ul#entryarchive li a {
  color: #4e5d62;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  ul#newEntry, ul#entryarchive {
  list-style: outside none none;
  margin: 0;
  overflow: hidden;
  padding: 14px 18px;
  }
}
@media screen and (min-width: 1000px) {
  ul#newEntry li a:hover, ul#entryarchive li a:hover {
  color: #942630;
  text-decoration: underline;
  }
}
/*
==================================================
フッター
==================================================
*/
#footer span > a > img{
  max-height:240px;
}
#footer {
  background-color: #5b7682;
  letter-spacing: -.4em;
  overflow: hidden;
  text-align: left;
}
#footer .inner {
  padding: 24px 20px;
}
#footer span {
  display: block;
  line-height: 1;
  margin-bottom: 20px;
}
#footer span:last-of-type {
  margin-bottom: 30px;
}
#footer span a {
  background-image: url(img/footer_span.png);
  background-position: left 4px;
  background-repeat: no-repeat;
  background-size: 9px auto;
  color: #fff;
  display: inline-block;
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.6;
  margin: 0;
  padding: 0 0 0 18px;
  text-decoration: none;
}
#footer small {
  color: #fff;
  display: block;
  font-family: 'Times New Roman';
  font-size: 11px;
  letter-spacing: 0.05em;
  line-height: 1.6;
  opacity: 0.75;
}
@media screen and (min-width: 768px) {
  #footer .inner {
  box-sizing: border-box;
  padding-bottom: 40px;
  padding-top: 40px;
  text-align: center;
  }
  #footer span {
  display: inline-block;
  padding: 0 18px;
  }
  #footer span a {
  background-image: none;
  padding: 0;
  }
  #footer small {
  padding: 30px 0;
  }
}
@media screen and (min-width: 1000px) {
  #footer .inner {
  margin: 0 auto;
  padding: 50px 0;
  width: 1000px;
  }
  #footer span a:after {
  border-bottom: 1px solid #fff;
  display: block;
  content: '';
  opacity: 0;
  transition: opacity 0.2s ease, transform 0.2s ease;
  transform: translateY(-6px);
  width: 100%;
  }
  #footer span a:hover:after {
  opacity: 1;
  transform: translateY(0);
  }
  #footer small {
  padding: 40px 0;
  }
}
/*
==================================================
トップページ
==================================================
*/
#whatsnew {
  overflow: hidden;
  margin: 0 -10px 10px;
}
#whatsnew .title {
  background-color: transparent;
  background-image: none;
  border-bottom: 2px solid #c6c3bf;
  color: #786e6e;
  font-size: 19px;
  font-weight: normal;
  line-height: 1.5;
  margin: 0;
  padding: 10px;
}
#whatsnew .title span {
  font-size: 10px;
}
#whatsnew .title span::before {
  content: 'Update Record';
  font-family: 'Times New Roman';
  font-size: 19px;
  letter-spacing: 0.075em;
  padding-right: 12px;
}
#whatsnew ul {
  list-style: outside none none;
  margin: 0;
  overflow: hidden;
  padding: 0;
}
#whatsnew ul > li {
  border-bottom: 1px solid #e9e6e3;
  font-size: 13px;
  line-height: 1.8;
  margin: 0;
  padding: 15px 10px;
}
#whatsnew ul > li span {
  display: block;
}
@media screen and (min-width: 768px) {
  #whatsnew {
  margin: 0 0 20px;
  }
  #whatsnew .title {
  font-size: 24px;
  padding: 8px 0;
  }
  #whatsnew .title span {
  font-size: 13px;
  }
  #whatsnew .title span::before {
  font-size: 24px;
  padding-right: 24px;
  }
  #whatsnew ul > li {
  display: flex;
  padding: 20px;
  }
  #whatsnew ul > li span:nth-last-of-type(2) {
  margin-right: 32px;
  }
}
@media screen and (min-width: 1000px) {
  #whatsnew ul > li {
  transition: background-color 0.125s linear;
  }
  #whatsnew ul > li:hover {
  background-color: rgba(246, 245, 244, 0.75);
  }
}
/*
==================================================
カテゴリーページ
==================================================
*/
#categorylist {
  text-align: left;
}
#categorylist .catbox a {
  background-color: #f7f4f0;
  display: block;
  margin-bottom: 10px;
  overflow: hidden;
  padding: 8px;
  position: relative;
  text-decoration: none;
  z-index: 0;
}
#categorylist .catbox a::before {
  border: 1px solid #fff;
  bottom: 0;
  content: '';
  left: 0;
  margin: 7px;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}
#categorylist .thumb {
  max-height:180px;
  overflow: hidden;
  text-align: center;
  padding: 8px;
}
#categorylist .thumb img {
  max-width: 100%;
  max-height: 300px;
}
#categorylist .body {
  overflow: hidden;
  padding: 12px;
}
#categorylist .title {
  color: #4e5d62;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4;
  margin: 2px 0 6px;
  max-height: 38px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
#categorylist p {
  clear: both;
  color: #938c8a;
  font-size: 12px;
  line-height: 1.6;
  margin-bottom: 18px;
  max-height: 36px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
#categorylist .more,
#bloglist .blog .more a {
  background-color: #fff;
  border: 1px solid #bf9c7b;
  color: #bf9c7b;
  display: block;
  font-size: 11px;
  height: 30px;
  line-height: 30px;
  margin: 0 26px;
  position: relative;
  text-align: center;
}
#categorylist .more::before,
#bloglist .blog .more a::before {
  background-image: url(img/h6.png);
  background-position: top left;
  background-repeat: no-repeat;
  background-size: 9px auto;
  content: '';
  height: 11px;
  position: absolute;
  right: 28px;
  top: 50%;
  transform: translateY(-50%);
  width: 9px;
}
#main #pagelist {
  margin: 15px 0;
  text-align: center;
}
#main #pagelist ul {
  letter-spacing: -.4em;
  list-style: outside none none;
  margin: 0;
  padding: 0;
}
#main #pagelist li {
  background-image: none;
  display: inline-block;
  letter-spacing: normal;
  margin: 0 8px 15px !important;
  padding: 0 !important;
}
#main #pagelist a {
  background-color: #fff;
  border: 1px solid #bf9c7b;
  color: #bf9c7b;
  display: inline-block;
  font-size: 13px;
  font-weight: normal;
  line-height: 1;
  margin: 0;
  padding: 11px 14px;
  text-align: center;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  #categorylist .catbox a {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 16px;
  padding: 20px;
  }
  #categorylist .catbox a::before {
  margin: 5px;
  }
  #categorylist .thumb {
  margin-right: 20px;
  max-height: none;
  text-align: left;
  padding: 0;
  }
  #categorylist .thumb img {
  max-width: 180px;
  width: 180px;
  height: auto;
  max-height: 360px;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  }
  #categorylist .body {
  flex-grow: 1;
  overflow: hidden;
  padding: 0;
  width: 50%;
  }
  #categorylist .title {
  font-size: 18px;
  line-height: 1.5;
  margin: 5px 0 10px;
  max-height: 49px;
  }
  #categorylist p {
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 25px;
  max-height: 44px;
  }
  #categorylist .more {
  font-size: 15px;
  height: 40px;
  line-height: 40px;
  max-width:320px;
  margin:8px auto;
  }  #main #pagelist {
  margin: 30px 0;
  }
  #main #pagelist li {
  margin: 0 10px 15px !important;
  }
  #main #pagelist a {
  font-size: 14px;
  padding: 16px 19px;
  }
}
@media screen and (min-width: 1000px) {
  #categorylist .catbox .thumb {
  margin-right: 30px;
  }
  #categorylist .catbox .title {
  margin-bottom: 15px;
  }
  #categorylist .catbox .more,
  #bloglist .blog .more a {
  transition: background-color 0.25s ease, color 0.25s ease;
  }
  #categorylist .catbox .more::before,
  #bloglist .blog .more a::before {
  transition: background-image 0.25s ease, right 0.25s ease;
  }
  #categorylist .catbox a:hover {
  left: 0;
  opacity: 0.8;
  top: 0;
  }
  #categorylist .catbox a:hover .thumb {
  animation: thumbOpacity 1s ease-out 0s alternate forwards;
  }
  #categorylist .catbox a:hover .more,
  #bloglist .blog .more a:hover {
  background-color: #bf9c7b;
  color: #fff;
  }
  #categorylist .catbox a:hover .more::before,
  #bloglist .blog .more a:hover::before {
  background-image: url(img/footer_span.png);
  right: 18px;
  }
  #main #pagelist a:hover {
  background-color: #bf9c7b;
  color: #fff;
  left: 0;
  opacity: 1;
  }
}
@keyframes thumbOpacity {
  0% {
  opacity: 1;
  }
  15% {
  opacity: 0.5;
  }
  100% {
  opacity: 1;
  }
}
/*
==================================================
エントリーページ
==================================================
*/
#entrylist {
  overflow: hidden;
  margin: 0 -10px 10px;
}
#entrylist h4 {
  background-color: transparent;
  background-image: none;
  border-bottom: 2px solid #c6c3bf;
  color: #786e6e;
  font-size: 19px;
  font-weight: normal;
  line-height: 1.5;
  margin: 0;
  padding: 10px;
}
#entrylist h4::before {
  display: none;
}
#entrylist h4 span {
  font-size: 10px;
}
#entrylist h4 span::before {
  content: 'Related Pages';
  font-family: 'Times New Roman';
  font-size: 19px;
  letter-spacing: 0.075em;
  padding-right: 12px;
}
#entrylist dl {
  margin: 0;
  padding: 0;
}
#entrylist div {
  border-bottom: 1px solid #e9e6e3;
  line-height: 1;
  overflow: hidden;
  padding: 15px 10px;
}
#entrylist dt .entry_title {
  display: block;
  overflow: hidden;
}
#entrylist dt .entry_title a {
  display: inline-block;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.6;
  overflow: hidden;
  position: relative;
}
#entrylist dd {
  color: #979292;
  font-size: 12px;
  line-height: 1.6;
  margin: 0;
  overflow: hidden;
}
#relNavigate {
  border-bottom: 1px solid #f6f5f4;
  border-top: 1px solid #f6f5f4;
  display: flex;
  justify-content: space-between;
  letter-spacing: -1em;
  margin: 10px auto;
  padding: 0;
  text-align: left;
}
#relNavigate a {
  color: #b19a78;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.6;
  padding: 20px 10px;
  position: relative;
  text-decoration: none;
  width: 50%;
}
#relNavigate a:nth-child(2) {
  text-align: right;
}
@media screen and (min-width: 768px) {
  #entrylist {
  margin: 0 0 20px;
  }
  #entrylist h4 {
  font-size: 24px;
  padding: 8px 0;
  }
  #entrylist h4 span {
  font-size: 13px;
  }
  #entrylist h4 span::before {
  font-size: 24px;
  padding-right: 24px;
  }
  #entrylist div {
  padding: 20px 0;
  }
  #entrylist .entry_thumb {
  margin: 0 20px 0 0;
  }
  #entrylist dd {
  font-size: 13px;
  line-height: 1.8;
  }
  #relNavigate {
  margin: 40px auto;
  }
  #relNavigate a {
  padding: 32px 30px;
  }
}
@media screen and (min-width: 1000px) {
  #entrylist div {
  transition: background-color 0.125s linear;
  }
  #entrylist div:hover {
  background-color: rgba(246, 245, 244, 0.75);
  }
  #relNavigate a {
  transition: background-color 0.25s ease, padding 0.25s ease;
  }
  #relNavigate a:hover {
  background-color: #f6f5f4;
  position: static;
  padding-left: 25px;
  padding-right: 25px;
  }
}
/*
==================================================
サイトマップページ
==================================================
*/
#sitemaps {
  margin: 0 0 20px;
  overflow: hidden;
}
#sitemaps ul {
  list-style: outside none none;
  margin: 0;
  padding: 5px;
}
#sitemaps ul > li {
  line-height: 1;
  padding: 6px 0;
}
#sitemaps ul > li a {
  background-image: url(img/h6.png);
  background-position: 2px 4px;
  background-repeat: no-repeat;
  background-size: 9px auto;
  color: #4e5d62;
  display: inline-block;
  font-size: 13px;
  line-height: 1.6;
  padding: 0 0 0 18px;
  position: relative;
  text-align: left;
  text-decoration: none;
}
#sitemaps ul .l2 a,
#sitemaps ul .l3 a {
  background-image: none;
}
#sitemaps ul .l2 a::before,
#sitemaps ul .l3 a::before {
  border-left: 1px solid #d7c8b3;
  border-bottom: 1px solid #d7c8b3;
  box-sizing: border-box;
  content: '';
  height: 8px;
  left: 2px;
  position: absolute;
  top: 2px;
  width: 8px;
}
#sitemaps ul .l2 a {
  margin-left: 20px;
}
#sitemaps ul .l3 a {
  margin-left: 30px;
}
#sitemaps br {
  display: none;
}
@media screen and (min-width: 768px) {
  #sitemaps ul {
  margin-bottom: 10px;
  padding: 0 10px;
  }
  #sitemaps ul > li {
  padding: 0;
  }
  #sitemaps ul > li a {
  background-position: 2px 6px;
  font-size: 16px;
  }
  #sitemaps ul .l1 {
  margin-top: 20px;
  }
  #sitemaps ul .l2,
  #sitemaps ul .l3 {
  margin-top: 15px;
  }
  #sitemaps ul .l2 a,
  #sitemaps ul .l3 a {
  font-size: 15px;
  }
  #sitemaps ul .l3 {
  margin-left: 10px;
  }
}
@media screen and (min-width: 1000px) {
  #sitemaps ul > li a:hover {
  color: #942630;
  text-decoration: underline;
  }
}
/*
==================================================
フリースペース
==================================================
*/
#space3, #space4, #space5, #space6 {
  overflow: hidden;
  padding: 10px;
}
@media screen and (min-width: 768px) {
  #space3, #space4, #space5, #space6 {
  padding-left: 0;
  padding-right: 0;
  }
}
/*
==================================================
ブログモード
==================================================
*/
.blog {
  border-bottom: 1px solid #e9e6e3;
  margin: 15px 0;
  overflow: hidden;
  padding: 0 0 10px;
}
.blog .thumb {
  float: left;
  margin-right: 15px;
}
.blog .thumb img {
  max-width: 100px;
}
.blog .title {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 5px;
}
.blog .info {
  color: #979292;
  font-size: 13px;
  line-height: 1.6;
  margin-bottom: 5px;
}
.blog .info a {
  color: #979292;
}
.blog .body {
  font-size: 12px;
}
.blog .body{
  overflow:hidden;
}
.blog .more {
  text-align: right;
}
.blog .plist {
  padding: 0 5px;
}
.blog .plist a {
  margin: 0 2px;
}
.blog .plist::before {
  content: "|";
  display:inline-block;
  margin-right: 8px;
}
#bloglist .blog .info time,
#bloglist .blog .info .plist a{
  background-repeat:no-repeat;
  background-position:left center;
  padding-top:2px;
  padding-left:20px;
  line-height:20px;
  font-size:13px;
}
#bloglist .blog .info time{
  background-image:url(./img/b_icon_time.png);
}
#bloglist .blog .info .plist a{
  background-image:url(./img/b_icon_folder.png);
  padding-right: 5px;
}

@media screen and (min-width: 768px) {
  .blog {
  margin: 30px 0;
  padding-bottom: 20px;
  }
  .blog .thumb {
  margin: 0 25px 25px 0;
  }
  .blog .thumb img {
  max-width: 200px;
  }
  .blog .title {
  font-size: 20px;
  line-height: 1.5;
  margin-bottom: 10px;
  }
  .blog .info {
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 10px;
  }
  .blog .info a:hover {
  color: #942630;
  }
  .blog .body {
  font-size: 16px;
  }
}
/* ブログモード・段組
==================== */
#bloglist .blog{
  position:relative;
  padding:16px 8px;
  border:none;
  margin: 24px 12px;
  background-color: #f7f4f0;
  display: block;
  margin-bottom: 10px;
  overflow: hidden;
  padding: 24px;
  position: relative;
  text-decoration: none;
   z-index: 0;
}
#bloglist .blog::before {
  border: 2px solid #fff;
  bottom: 0;
  content: '';
  left: 0;
  margin: 5px;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}

#bloglist .blog .more{
  text-align:center;
  margin:16px auto 0;
}
#bloglist .blog .more a{
  width:80%;
  height:36px;
  line-height:36px;
  font-size:14px;
}
#bloglist .blog .more a:hover{
  top:0;
  left:0;
}
#bloglist .blog .title a{
  color:#333;
}
#bloglist .blog .title{
  background-position: left bottom;
  background-repeat: repeat-x;
  padding-bottom:5px;
  padding-left: 5px;
  padding-right: 5px;
  font-size:18px;
}
#bloglist .blog .thumb{
  margin:10px 0 16px;
  text-align:center;
  float:none;
}
#bloglist .blog .info{
  margin:10px 0;
}
#bloglist .blog .thumb img{
  max-width:100%;
  height:auto;
}
#bloglist .blog .body{
  line-height:1.4;
}
@media screen and (min-width:768px){
  #bloglist{
    display:flex;
    flex-wrap: wrap;
    justify-content: left;
  }
  #bloglist .blog{
    width:48%;
    margin:16px 1%;
    border:none;
    box-sizing:border-box;
    padding-bottom:64px;
  }
  #bloglist .blog .info{
    overflow:hidden;
  }
  #bloglist .blog .more{
    width:220px;
    position:absolute;
    bottom:16px;
    left:50%;
    margin-left:-110px;
  }
  #bloglist .blog .thumb{
    float:none;
    width:100%;
  }
  #bloglist .blog .thumb img{
    max-width:100%;
    max-height:200px;
    width:100%;
    height:200px;
    object-fit:cover;
    font-family: 'object-fit: cover;';
  }
  #column3 #bloglist .blog .thumb{
    width:200px;
    max-width:200px;
    height:auto;
    max-height:400px;
  }
  #bloglist .blog .body{
    color:#444;
  }
  #bloglist .blog .body{
    clear:unset;
  }
  #column1 #bloglist .blog{
    width:31.33%;
  }
  #column3 #bloglist .blog{
    width:98%;
  }
  #column3 #bloglist .blog .thumb{
    float:left;
    margin-right: 24px;
    margin-bottom:24px;
    margin-top:0;
  }
  #column3 #bloglist .blog .info{
    padding-top:10px;
  }
  #column3 #bloglist .blog .more{
    text-align:right;
  }
  #column3 #bloglist .blog .more a{
    text-align:center;
  }
}
/*
==================================================
サイト内検索
==================================================
*/
#searchresult {
  margin-bottom: 20px;
  padding: 0;
}
#searchresult dl {
  margin: 0;
  padding: 0;
}
#searchresult dt {
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 5px;
}
#searchresult dd {
  border-bottom: 1px solid #e9e6e3;
  font-size: 12px;
  line-height: 1.6;
  margin: 0 0 10px;
  padding-bottom: 10px;
}
#searchresult b {
  color: #892727;
}
@media screen and (min-width: 768px) {
  #searchresult {
  padding: 0;
  }
  #searchresult dt {
  font-size: 16px;
  margin: 0 0 10px;
  }
  #searchresult dd {
  font-size: 14px;
  margin: 0 0 20px;
  padding-bottom: 20px;
  }
}
/*
==================================================
リンク集
==================================================
*/
#linklist {
  margin: 0 0 20px;
  padding: 0;
}
#linklist dt {
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 5px;
}
#linklist dd {
  border-bottom: 1px solid #e9e6e3;
  font-size: 12px;
  line-height: 1.6;
  margin: 0 0 10px;
  padding-bottom: 10px;
}
@media screen and (min-width: 768px) {
  #linklist {
  padding: 0;
  }
  #linklist dt {
  font-size: 16px;
  margin: 0 0 10px;
  }
  #linklist dd {
  font-size: 14px;
  margin: 0 0 20px;
  padding-bottom: 20px;
  }
}
/*
==================================================
ポイント
==================================================
*/
/* メインコンテンツ用ポイント
==================================================
*/
.point1, .point2, .point3, .point4, .point5, .point6, .point7, .point8, .point9, .point10 {
  border: none;
}
.point1, .point2, .point3, .point4, .point5, .point6, .point7, .point8, .point9, .point10 {
  background-position: left 2px;
  background-repeat: no-repeat;
  background-size: 28px auto;
  border: none;
  box-sizing: border-box;
  color: #526267;
  font-size: 20px;
  font-weight: bold;
  height: auto;
  line-height: 1.5;
  margin: 10px 0;
  min-height: 30px;
  padding: 0 0 0 36px;
}
@media screen and (min-width: 768px) {
  #column1 .point1, #column1 .point2, #column1 .point3, #column1 .point4, #column1 .point5, #column1 .point6, #column1 .point7, #column1 .point8, #column1 .point9, #column1 .point10,
  #main .point1,
  #main .point2,
  #main .point3,
  #main .point4,
  #main .point5,
  #main .point6,
  #main .point7,
  #main .point8,
  #main .point9,
  #main .point10 {
  background-size: 38px auto;
  font-size: 24px;
  line-height: 1.4;
  margin: 20px 0 15px;
  min-height: 40px;
  padding: 7px 0 0 54px;
  }
}
.point1 {
  background-image: url(img/point1.png);
}
.point2 {
  background-image: url(img/point2.png);
}
.point3 {
  background-image: url(img/point3.png);
}
.point4 {
  background-image: url(img/point4.png);
}
.point5 {
  background-image: url(img/point5.png);
}
.point6 {
  background-image: url(img/point6.png);
}
.point7 {
  background-image: url(img/point7.png);
}
.point8 {
  background-image: url(img/point8.png);
}
.point9 {
  background-image: url(img/point9.png);
}
.point10 {
  background-image: url(img/point10.png);
}
/* メニュー用ポイント
==================================================
*/
/*
==================================================
ランキング
==================================================
*/
/* メインコンテンツ用ランキング
==================================================
*/
.rank1, .rank2, .rank3, .rank4, .rank5, .rank6, .rank7, .rank8, .rank9, .rank10 {
  border: none;
  height: auto;
}
.rank {
  background-color: #fff;
  border: 1px solid #c7ba81;
  margin: 0 0 32px;
  position: relative;
  z-index: 0;
}
.rank::before {
  background-image: linear-gradient(#f9f5dd, white, white 80%, #fcfaee);
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}
.rank .rank1, .rank .rank2, .rank .rank3, .rank .rank4, .rank .rank5, .rank .rank6, .rank .rank7, .rank .rank8, .rank .rank9, .rank .rank10 {
  align-items: center;
  background-position: left top;
  background-size: 44px auto;
  display: flex;
  height: 38px;
  padding: 4px 0 0 58px;
  margin: 12px 10px 5px;
}
.rank .rank-inner {
  overflow: hidden;
  padding: 14px;
}
.rank .rank-inner > a {
  color: #484343;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.6;
  text-decoration: none;
}
.rank .float-l,
.rank .float-r {
  box-sizing: border-box;
  float: none;
  margin: 0 auto 10px;
  max-width: 100%;
  text-align: center;
}
.rank .float-l img,
.rank .float-r img {
 margin: 0 0 10px;
}
.rank .rank-table {
  margin: 10px 0;
}
.rank .rank-table table {
    border: double 3px #E6DDD0;
    font-size: 16px;
    line-height: 1.6;
    width: 100%;
    background-color: #FFF;
}
.rank .rank-table table th, .rank .rank-table table td {
    background-color: #FFF;
    border: solid 1px #E6DDD0;
    padding: 8px;
    vertical-align: middle;
    font-size: 0.875em;
    line-height: 1.6;
}
.rank .rank-table table th {
  font-weight: normal;
  padding-right: 10px;
  width:30%;
  background-color:#FCFAEF;
}
.rank .rank-table table td span {
  display: inline-block;
}
.rank .rank-table table td span b {
  font-family: Arial;
  font-size: 26px;
  font-weight: normal;
  letter-spacing: 0;
  line-height: 1;
  margin-right: 3px;
}
.rank .rankbox {
  margin: 10px 0;
  font-size:0.875rem;
  line-height: 1.6;
}
.rank .feature {
  background-color: #fcfaef;
  color: #9e8858;
  border:double 3px #F0EDE3;
  font-size: 18px;
  letter-spacing: 0.08em;
  line-height: 1.6;
  margin-bottom: 10px;
  padding: 10px 15px;
  box-shadow: 0 0 0px 1px rgba(120,120,120,0.1);
}
.rank .comment {
  clear: both;
  margin: 10px 0;
}
.rank .comment .comment-tit {
  background-color: #c7ba81;
  margin-bottom: 10px;
  padding: 3px;
}
.rank .comment .comment-tit span {
  background-color: #c7ba81;
  border: 1px solid #e9e3cd;
  color: #fff;
  display: block;
  font-size: 18px;
  letter-spacing: 0.08em;
  line-height: 1.6;
  padding: 6px 11px;
}
.rank .more {
  margin-top: 15px;
  position: relative;
  text-align: center;
}
.rank .more span {
  display: block;
  margin-top: 10px;
  max-width: 100%;
}
.rank .more span a {
  background-color: #892727;
  border: 1px solid transparent;
  border-radius: 100px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
  color: #fff;
  display: block;
  font-size: 18px;
  font-weight: normal;
  line-height: 1.3;
  margin: 0;
  padding: 12px 20px;
  text-decoration: none;
}
.rank .more span.official a {
  background-color: #9c8656;
  background-image: linear-gradient(to right, #9c8656, #b79e6c, #9c8656);
}
.rank1, .rank2, .rank3, .rank4, .rank5, .rank6, .rank7, .rank8, .rank9, .rank10 {
  background-position: left top;
  background-repeat: no-repeat;
  background-size: 32px auto;
  border: none;
  box-sizing: border-box;
  font-size: 17px;
  font-weight: bold;
  height: auto;
  line-height: 1.5;
  margin: 15px 0;
  min-height: 28px;
  padding: 3px 0 0 39px;
  position: relative;
}
.rank1 {
  background-image: url(img/rank1.png);
}
.rank2 {
  background-image: url(img/rank2.png);
}
.rank3 {
  background-image: url(img/rank3.png);
}
.rank4 {
  background-image: url(img/rank4.png);
}
.rank5 {
  background-image: url(img/rank5.png);
}
.rank6 {
  background-image: url(img/rank6.png);
}
.rank7 {
  background-image: url(img/rank7.png);
}
.rank8 {
  background-image: url(img/rank8.png);
}
.rank9 {
  background-image: url(img/rank9.png);
}
.rank10 {
  background-image: url(img/rank10.png);
}
@media screen and (min-width: 768px) {
  #main .rank > .rank-container > div[class^="rank"]:first-child{
  background-size: 50px auto;
  clear: none;
  height:auto;
  font-size:1.35em;
  min-height: 45px;
  padding: 8px 0 0 60px;
  margin:16px 20px 10px;
  }
  .rank .rank-inner {
  padding: 29px;
  }
  .rank .float-l,
  .rank .float-r {
  max-width: 40%;
  }
  .rank .rank-table {
  margin: 16px 0;
  }
  .rank .rank-table table th,
  .rank .rank-table table td {
  padding: 10px;
  }
  .rank .rankbox {
  margin: 0 0 24px;
  overflow: hidden;
              padding: 2px;
  }
  .rank .feature {
  margin-bottom: 8px;
  padding: 8px 16px;
  }
  .rank .rnkbody {
  padding: 8px;
  }
  .rank .comment {
  clear: both;
  margin: 25px 0;
  }
  .rank .comment .comment-tit {
  margin-bottom: 15px;
  }
  .rank .comment .comment-tit span {
  padding: 11px 18px;
  }
  .rank .comment .comment-body {
  padding: 5px;
  }
  .rank .more {
  display: flex;
  justify-content: space-around;
  }
  .rank .more span {
  max-width: 50%;
  }
  .rank .more span a {
  padding: 16px 20px;
  }
  #column1 .rank1, #column1 .rank2, #column1 .rank3, #column1 .rank4, #column1 .rank5, #column1 .rank6, #column1 .rank7, #column1 .rank8, #column1 .rank9, #column1 .rank10,
  #main .rank1,
  #main .rank2,
  #main .rank3,
  #main .rank4,
  #main .rank5,
  #main .rank6,
  #main .rank7,
  #main .rank8,
  #main .rank9,
  #main .rank10 {
  background-size: 44px auto;
  font-size: 24px;
  line-height: 1.5;
  min-height: 35px;
  padding: 10px 0 0 56px;
  }
}
@media screen and (min-width: 1000px) {
  .rank .rank-inner > a:hover {
  color: #942630;
  }
  .rank .more span a:hover {
  background-color: #fff;
  border: 1px solid #892727;
  color: #892727;
  left: 0 !important;
  }
  .rank .more span.official a:hover {
  background-color: #fff;
  background-image: none;
  border: 1px solid #9c8656;
  color: #9c8656;
  }
  #column1 .rank .float-l,
  #column1 .rank .float-r,
  .rank .float-l,
  .rank .float-r {
  float: left;
  margin: 0 40px 10px 10px;
  }
  #column1 .rank .float-l img,
  #column1 .rank .float-r img,
  .rank .float-l img,
  .rank .float-r img {
  margin: 0 0 20px;
  }
}
/*
==================================================
１カラムレイアウト
==================================================
*/
#column1 #menu,
#column1 #main {
  float: none;
  width: 100%;
}
@media screen and (min-width: 768px) {
  #column1 #main {
  padding: 20px;
  }
  #column1 #menu,
  #column1 #rmenu {
  padding: 20px;
  }
  #column1 #menu .menulist ul,
  #column1 #rmenu .menulist ul {
  display: flex;
  flex-wrap: wrap;
  }
  #column1 #menu .menulist li,
  #column1 #rmenu .menulist li {
  padding-right: 30px;
  }
  #column1 #menu .menulist .l2 a,
  #column1 #menu .menulist .l3 a,
  #column1 #rmenu .menulist .l2 a,
  #column1 #rmenu .menulist .l3 a {
  background-image: url(img/h6.png);
  margin-left: 0;
  }
  #column1 #menu .menulist .l2 a::before,
  #column1 #menu .menulist .l3 a::before,
  #column1 #rmenu .menulist .l2 a::before,
  #column1 #rmenu .menulist .l3 a::before {
  display: none;
  }
  #column1 ul#newEntry, #column1 ul#entryarchive {
  display: flex;
  flex-wrap: wrap;
  }
  #column1 ul#newEntry li, #column1 ul#entryarchive li {
  padding-right: 30px;
  }
  #column1 .rank .more span {
  flex-grow: 1;
  margin: 0 15px;
  }
}
@media screen and (min-width: 1000px) {
  #column1 #categorylist .thumb img {
  max-width: 290px;
  }
}
/*
==================================================
２カラムレイアウト
==================================================
*/
@media screen and (min-width: 768px) {
  #column2 #main {
  padding: 20px;
  width: 70%;
  }
  #column2 #menu {
  padding: 20px;
  width: 30%;
  }
#column2 div[id$="menu"] .rank > .rank-container > div[class^="rank"]:first-child{
  margin:12px 12px 10px;
  height:auto;
  font-size:1.15em;
  background-size: 36px auto;
  padding: 5px 0 0 48px;
}
  #column2 div[id$="menu"] .rank .float-l{
  float:none;
  margin:0;
  max-width:100%;
  }
  #column2 div[id$="menu"] .rank .rank-inner{
  padding:8px;
 }
 #column2 div[id$="menu"] .rank .more{
  display:block;
 }
 #column2 div[id$="menu"] .rank .more span{
  max-width:100%;
  width:100%;
  margin:0;
 }
 #column2 div[id$="menu"] .rank .more span a{
  margin:8px 0;
  border-radius: 8px;
 }
}
@media screen and (min-width: 1000px) {
  #column2 #main {
  width: 700px;
  }
  #column2 .rank .more span {
  flex-grow: 1;
  margin: 0 5px;
  }
  #column2 #menu {
  width: 300px;
  }
  #column2 #menu .rank .rank-inner > a {
  font-size: 22px;
  line-height: 1.4;
  }
  #column2 #menu .rank .more span a {
  font-size: 16px;
  }
}
@media screen and (min-width: 1000px) {
  #column2 #categorylist .thumb img {
  max-width: 290px;
  }
}
/* スライダー用追加スタイル */
#sl_header #header{
  position:relative;
  top:0;
  transform:initial;
}
/*
==================================================
独自スタイル
==================================================
*/
.originbox01{
  padding:5px;
}
.originbox01 > div{
    margin:5px 0;
    padding:15px;
    box-sizing:border-box;
    background-color:#f7f4f0;
}
@media screen and (min-width: 768px) {
  .originbox01 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .originbox01 div[class^="btn"] {
    width: auto;
  }
  .originbox01 > div {
    width: 49.5%;
  }
  .originbox01.col3 > div {
    width: 33%;
  }
  .originbox01.col4 > div {
    width: 24.5%;
  }
  .originbox01 > div:nth-last-child(2) {
    border-bottom:none;
  }
}
/*
==================================================
レイアウト切り替え用スタイル
==================================================
*/
.freespace_sp{
    padding:10px 0;
}
.freespace_sp:after,
#layoutbox::after{
    display:block;
    content:"";
    clear:both;
}
#headerbox {
  height: auto !important;
}
@media screen and (max-width: 767px) {
  #main,
  #menu,
  #rmenu,
  #layoutbox {
  float: none !important;
  }
}
#contents #main .txt-border {
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
}
#contents #main .txt-decbox1,
#contents #main .txt-decbox2 {
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  #contents #main .txt-decbox1 .top {
  background-image: url("img/decbox_t.gif"), url("img/decbox_t.gif"), url("img/decbox_t.gif");
  background-position: left top, 850px top, 1700px top;
  }
  #contents #main .txt-decbox1 .bottom {
  background-image: url("img/decbox_b.gif"), url("img/decbox_b.gif"), url("img/decbox_b.gif");
  background-position: left top, 850px top, 1700px top;
  }
  .txt-decbox2 {
  position: relative;
  z-index: 0;
  }
  .txt-decbox2::before, .txt-decbox2::after {
  background-image: url("img/decbox2_r.gif");
  background-position: left bottom;
  background-repeat: repeat-y;
  bottom: 0;
  content: '';
  position: absolute;
  top: 0;
  width: 880px;
  z-index: -2;
  }
  .txt-decbox2::before {
  right: 900px;
  }
  .txt-decbox2::after {
  right: 1780px;
  }
  .txt-decbox2 .body {
  z-index: 1;
  }
  .txt-decbox2 .top,
  .txt-decbox2 .bottom {
  position: relative;
  }
  .txt-decbox2 .top::before, .txt-decbox2 .top::after,
  .txt-decbox2 .bottom::before,
  .txt-decbox2 .bottom::after {
  background-repeat: no-repeat;
  content: '';
  height: 16px;
  position: absolute;
  z-index: -1;
  }
  .txt-decbox2 .top::before,
  .txt-decbox2 .bottom::before {
  right: 900px;
  }
  .txt-decbox2 .top::before, .txt-decbox2 .top::after {
  background-image: url("img/decbox2_tr.gif");
  background-position: left top;
  top: 0;
  width: 890px;
  }
  .txt-decbox2 .top::after {
  right: 1790px;
  }
  .txt-decbox2 .bottom::before, .txt-decbox2 .bottom::after {
  background-image: url("img/decbox2_br.gif");
  background-position: left bottom;
  bottom: 0;
  width: 730px;
  }
  .txt-decbox2 .bottom::after {
  right: 1630px;
  }
}
body{
}
#header h2 ,#header .title {
text-shadow:-1px -1px #FFF,1px -1px #FFF,-1px  1px #FFF,1px  1px #FFF,0 1px 5px rgba(0, 0, 0, 0.2);
}
#header h2{
  display: none;
}
#header h2 a, #header h2 a:visited,#header h2 a:hover,#header .title a,#header .title a:visited{}
#headertext ,#header .desc{

}
@media screen and (min-width: 768px) {

#main{ float: left; }
#column2 #menu,#column3 #menu{ float: right; }
#column3 #rmenu { float: left; }
#column3 #layoutbox { float: right; }
#column3 #main { float: left; }

}


/*基本デコレーション*/
p{margin-bottom: 20px;}

.mt0{margin-top: 0px;}
.mt10{margin-top: 10px;}
.mt20{margin-top: 20px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}
.mr0{margin-right: 0px;}
.mr10{margin-right: 10px;}
.mr20{margin-right: 20px;}
.mr30{margin-right: 30px;}
.mr40{margin-right: 40px;}
.mb0{margin-bottom: 0px;}
.mb10{margin-bottom: 10px;}
.mb20{margin-bottom: 20px;}
.mb30{margin-bottom: 30px;}
.mb40{margin-bottom: 40px;}
.ml0{margin-left: 0px;}
.ml10{margin-left: 10px;}
.ml20{margin-left: 20px;}
.ml30{margin-left: 30px;}
.ml40{margin-left: 40px;}

.pt10{padding-top: 10px;}
.pt20{padding-top: 20px;}
.pt30{padding-top: 30px;}
.pt40{padding-top: 40px;}
.pr10{padding-right: 10px;}
.pr20{padding-right: 20px;}
.pr30{padding-right: 30px;}
.pr40{padding-right: 40px;}
.pb10{padding-bottom: 10px;}
.pb20{padding-bottom: 20px;}
.pb30{padding-bottom: 30px;}
.pb40{padding-bottom: 40px;}
.pl10{padding-left: 10px;}
.pl20{padding-left: 20px;}
.pl30{padding-left: 30px;}
.pl40{padding-left: 40px;}

.red{color: #f00;}
.pink{color: #F33;}
.green{color: #0f0;}
.blue{color: #00f;}
.gray{color: #aaa;}

.fwb{font-weight: bold;}

.fss{font-size: 10px; display:inline-block; line-height: 1.3em;}
.fsb{font-size: 18px;}

.tal{text-align: left;}
.tac{text-align: center;}
.tar{text-align: right;}

.fll{float: left;}

.w40p{width: 40%;}
.w60p{width: 60%;}
.w100p{width: 100%;}

.ylwbc{
	background-color: #fffeee;
	display: block;
	padding: 10px;
	font-size: 14px;
	border-radius: 3px;
}

/*コンテンツデコレーション*/

.line{font-weight: bold; background-color: #fff996;}
.notice{font-size:10px; color: #aaa; display:inline-block; line-height: 1.1em;}

/*イメージ簡易ランキング*/
.img_rank{ display: inline-block; display: relative; width: 100%; }
.img_cell{ width: 32%; margin: 0 2% 10px 0; float: left; border: 1px #aaa solid; box-sizing: border-box; position: relative; overflow: hidden;}
.img_cell:nth-child(3n){ margin-right: 0; }

/*表示切り替え*/
.pc_dis{display: inherit; }
.sp_dis{display: none; }

/*こだわり検索フォームエリア*/
.search-form form{display: table; padding: 0!important; width: 100%; }
.search-item {float: inherit!important; width: 100%; margin: 0; margin-right: 0!important; padding: 0; border-bottom: 1px #ccc solid; }
.search-item-name {padding: 10px 0 !important; display: table-cell!important; width: 110px; text-align: center; background-color: #f2ffe6; border-right: 1px #ccc solid; }
.search-item-value{display: table-cell!important; padding-left: 6px; }
.search-item.checkbox-item{width: 100%; }
.search-button {float: inherit!important; text-align: center; padding: 10px 0 !important; }
.search-button input {width: 80%!important; padding: 10px 0; font-size: 20px; letter-spacing: 20px; text-indent: 20px; }

/*こだわり検索フォームエリア*/
.search-button{float: left; padding: 0; width: 100%; text-align: center; margin: 0; }
.search-button input{width: 80%!important; padding: 20px 0; background-color: #95BE35; border: none; color: #FFF; font-weight: bold; text-align: center; border-radius: 5px; box-shadow: 0 2px 5px #555; cursor: pointer; font-size: 20px; letter-spacing: 15px; }
.search-item-value label span{margin-right: 10px; width: 70%; }

/*ランキングテーブル*/
.review_table td {margin: 5px; font-size: 11px;}
.review_table tr.type td img{margin-bottom: 5px;}
.review_table td p{margin-bottom: 5px; }
.review_table th{width: 18%; }
.review_table th, .review_table td{text-align: center; padding: 10px 5px; }
.review_table th{vertical-align: middle;}
.review_table tr.mark td{vertical-align: top;}
.review_table tr.rank_area td {background-color: #ffffee; background-position: 50%; border-right: 1px #ccc solid; padding: 10px 0; }
.review_table tr.rank_area td img{width: 40%;}
.review_table tr.score_symbol td img{margin-bottom: 10px}
.review_table tr.score_area img{width: 70%; }
.review_table tr.btn_area img{width: 80%; }
.review_table tr.product_img{vertical-align: top;}
.review_table td span.score, .review_table td span.price {font-size: 16px; color: #ec1818; font-weight: bold; line-height: 0; }
.review_table span.flavor.strong, .review_table span.gender.woman {width: 100%; display: inline-block; border-radius: 3px; background-color: #fbc1c1; }
.review_table span.flavor.weak, .review_table span.gender.man {width: 100%; display: inline-block; border-radius: 3px; background-color: #c1fbfa; }
.review_table span.flavor.normal, .review_table span.gender.both {width: 100%; display: inline-block; border-radius: 3px; background-color: #fbe8c1; }
.review_table td span.campaign{background-color: #ec1818; color: #fff; border-radius: 3px; padding: 3px 5px; font-weight: bold; font-size: 10px; }

/*口コミデザイン*/
.pst_rev {margin-top: 20px; padding: 15px; border: 1px #ddd solid; border-radius: 3px;}
.pst_rev p.rev_tit {font-size: 18px; font-weight: bold; margin-bottom: 0 !important; }
.pst_rev .rev_scr {font-size: 12px; border-bottom: 1px #ddd solid; margin-bottom: 15px;}
.pst_rev .rev_scr img {width: 90px; position: relative; top: -2px; }
.pst_rev .rev_scr span {color: #f00; font-weight: bold; margin-left: 10px; }
.rev_img_area {width: 100%; position: relative; display: inline-block; clear: both; margin-bottom: 20px; }
.rev_img_area .img_cell {width: 19%; margin-right: 1.2%; float: left; }
.rev_img_area .img_cell img {border-radius: 3px; }
.pst_rev .cnt_area {border-bottom: 1px #ddd solid; position: relative; }
.pst_rev .cnt_area .b{display:inline-block; background-color: #ccc; padding: 3px 0px; border-radius: 5px; margin-right: 8%; font-size:12px; ; position: relative; width:46%;}
.pst_rev .cnt_area .a{display:inline-block; background-color: #fca; padding: 3px 0px; border-radius: 5px; font-size:12px; width:46%;}
.pst_rev .cnt_area:before {content: ""; padding: 6px; background-image: url(./img/ba_icon.webp); background-size: 10px; background-repeat: no-repeat; position: absolute; right: 49%; top: 10px; }
@media screen and (max-width: 479px) { .pst_rev .cnt_area:before { right: 47%; } }


.cnt_txt{margin-bottom: 20px;}
.dtl_rev {margin-top: 10px; position: relative; }
.dtl_rev span.day:before {content: ""; background-image: url(./img/pen.webp); padding: .4em; background-repeat: no-repeat; background-size: contain; position: relative; right: 5px; top: 8px;}
#main .dtl_rev span.profile {font-size: 14px; color: #aaa; margin: 0 10px; border: none; }
.dtl_rev span.day {right: 5px; font-size: 14px; color: #aaa; position: relative; padding-left: 18px; margin-left: 10px; }
.pst_dtl {width: 100%; position: absolute; text-align: right; right: 0; top: 5px; display: inline-block; }
.cnt_dtl_link {margin-top: 20px; }
.dtl_rev img {width: 40px; }
.cnt_dtl_link a {width: 100%; display: inline-block; text-align: center; text-decoration: none; padding: 20px 0; border: 1px #ddd solid; border-radius: 3px; color: #6b6b6b; }
.cnt_dtl_link a span {position: relative; }
.cnt_dtl_link a span:before {content: "\f086"; font-family: "fontawesome"; font-weight: normal; font-size: 1.1em; margin-top: -.6em; position: absolute; left: -20px; top: 7px; }
span.annotation{font-size: 11px; color: #999; }
p.annotation{font-size: 11px; color: #999; line-height: 11px; }
.detail_ranking img{border: none;}

/*ボタン設定*/
.btn-cv {padding: .5em 0; overflow: hidden; position: relative; } .btn-cv a {border: solid #fff 10px; /* ? border-radius: 12px; */ border-radius: 50px; /*  box-shadow: 1px 1px 10px 0 #a1a1a1;*/ box-shadow: 0 0 0 1px #999, 3px 3px 5px 0 #a1a1a1; color: #fff; display: block; /*  font-size: 1.6em;*/ font-size: 1.7em; font-weight: bold; line-height: 1.3; margin: 0.5em auto; /*  padding: 1em 2em .8em;*/ padding: 1em 0 .8em; position: relative; text-align: center; text-decoration: none; -webkit-transition: .2s ease-in-out; transition: .2s ease-in-out; vertical-align: middle; width: 85%; } .btn-cv.is-fz20 a {font-size: 20px; } .btn-cv a img {vertical-align: middle; } .btn-cv a:after {content: ' ' !important; } /* ボタン内のアイコン */ .btn-cv a:before {content: ""; background-image: url('./img/arrow.webp'); padding: 0.6em; background-size: contain; position: absolute; right: 15px; top: 32%; } .btn-cv a:hover {box-shadow: 1px 1px 2px 0 #a1a1a1; filter: alpha(opacity=70); opacity: .7; } /* 2つ連続で並べる場合の余白 */ .btn-cv + .btn-cv a {margin-top: 0; } /* 緑ボタン */ .btn-cv a {background: #00a23f; /*   background: -webkit-linear-gradient(#00a23f, #39900a); background: linear-gradient(#00a23f, #39900a);*/ background: -webkit-linear-gradient(#77e83a, #39900a); background: linear-gradient(#77e83a, #39900a); text-shadow: 0 0 10px rgba(255,255,255,.8), 1px 1px 1px rgba(0,0,0,1); } /* ボタンの光沢 */ .is-reflection a {overflow: hidden; } .is-reflection a:after {-moz-animation: is-reflection 4s ease-in-out infinite; -moz-transform: rotate(45deg); -ms-animation: is-reflection 4s ease-in-out infinite; -ms-transform: rotate(45deg); -o-animation: is-reflection 4s ease-in-out infinite; -o-transform: rotate(45deg); -webkit-animation: is-reflection 4s ease-in-out infinite; -webkit-transform: rotate(45deg); animation: is-reflection 4s ease-in-out infinite; background-color: #fff; content: " "; height: 100%; left: 0; opacity: 0; position: absolute; top: -180px; transform: rotate(45deg); width: 30px; } /* アニメーションを遅延させる */ .is-reflection + .is-reflection a:after {-webkit-animation-delay: .3s; animation-delay: .3s; } @keyframes is-reflection {0% { -webkit-transform: scale(0) rotate(45deg); transform: scale(0) rotate(45deg); opacity: 0; } 80% { -webkit-transform: scale(0) rotate(45deg); transform: scale(0) rotate(45deg); opacity: 0.5; } 81% { -webkit-transform: scale(4) rotate(45deg); transform: scale(4) rotate(45deg); opacity: 1; } 100% { -webkit-transform: scale(50) rotate(45deg); transform: scale(50) rotate(45deg); opacity: 0; } } @-webkit-keyframes is-reflection {0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; } 80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; } 81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; } 100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; } } /* CVボタン矢印揺れ */ .is-trembling a:before {-webkit-animation-name:is-trembling; -webkit-animation-duration:.8s; -webkit-animation-iteration-count:infinite; -webkit-animation-timing-function:ease; -moz-animation-name:is-trembling; -moz-animation-duration:1s; -moz-animation-iteration-count:infinite; -moz-animation-timing-function:ease; } @-webkit-keyframes is-trembling {0% {-webkit-transform:translate(-3px, 0);} 100% {-webkit-transform:translate(0, 0);} } /* ボタンをバウンドさせる */ .is-bounce {animation: bounce 4s infinite; -moz-animation: bounce 4s infinite; -webkit-animation: bounce 4s infinite; -webkit-animation-delay: 4s; animation-delay: 4s; } @-webkit-keyframes bounce {0%, 4%, 10%, 18%, 100% {-webkit-transform: translateY(0);} 5% {-webkit-transform: translateY(-6px);} 12% {-webkit-transform: translateY(-4px);} } @keyframes bounce {20%, 24%, 30%, 34%, 100% {-webkit-transform: translateY(0);transform: translateY(0);} 25% {-webkit-transform: translateY(-6px);transform: translateY(-6px);} 32% {-webkit-transform: translateY(-4px);transform: translateY(-4px);} } /* アニメーションを遅延させる */ .is-bounce + .is-bounce {-webkit-animation-delay: .5s; animation-delay: .5s; } /* ぷるるるるん！ */ .is-purun {-webkit-animation: is-purun 5s infinite; -moz-animation: is-purun 5s infinite; animation: is-purun 5s infinite; } @-webkit-keyframes is-purun {0% { -webkit-transform: scale(1.0, 1.0) translate(0%, 0%); } 4% { -webkit-transform: scale(0.9, 0.9) translate(0%, 3%); } 8% { -webkit-transform: scale(1.1, 0.8) translate(0%, 7%); } 12% { -webkit-transform: scale(0.9, 0.9) translate(0%, -7%); } 18% { -webkit-transform: scale(1.1, 0.9) translate(0%, 3%); } 25% { -webkit-transform: scale(1.0, 1.0) translate(0%, 0%); } } @keyframes is-purun {0% { transform: scale(1.0, 1.0) translate(0%, 0%); } 4% { transform: scale(0.9, 0.9) translate(0%, 3%); } 8% { transform: scale(1.1, 0.8) translate(0%, 7%); } 12% { transform: scale(0.9, 0.9) translate(0%, -7%); } 18% { transform: scale(1.1, 0.9) translate(0%, 3%); } 25% { transform: scale(1.0, 1.0) translate(0%, 0%); } } /* アニメーションを遅延させる */ .is-purun + .is-purun {-webkit-animation-delay: .5s; animation-delay: .5s; } @keyframes horizontal {0% { transform:translateX( -5px); } 100% { transform:translateX(  0px); } } .yurayura {animation: horizontal 1s ease-in-out infinite alternate; } @media screen and (max-width: 1050px) {.btn-cv a {width: 94%; } } @media screen and (max-width: 500px) {.btn-cv a {font-size: 1.4em; border: solid #fff 7px; } } @media screen and (max-width: 360px) {.btn-cv a {font-size: 1.2em; } /*  .btn-cv a:before {content: none; } */ }

.tenmetsu {
  animation: flash 2s linear infinite;
  color: #FF0A0A;
  font-size: 15px;
  font-weight: bold;
}

@keyframes flash {
  0%{opacity: 1;}
  50%{opacity: 0;}
  100%{opacity: 1;}
}

.kokuti{
  display: block;
  text-align: center;
  padding: 3px 0;
  border-radius: 3px;
  background-color: #e73861;
  color: #fff;
  font-size: 12px;
  margin-bottom: 10px;
  font-weight: bold;
}

/*タブレットサイズ設定*/
@media screen and (min-width: 480px) and (max-width: 767px) {
  .pc_dis{display: inherit; }
  .sp_dis{display: none; }
}

/*スマートフォンサイズ設定*/
@media screen and (max-width: 479px) {
  .pc_dis{display: none; }
  .sp_dis{display: inherit; }

  /*width*/
  .w40p{width: 100%; }
  .w60p{width: 100%; }

  /*ランキングテーブル*/
  table.review_table.comparison tr td:nth-child(5), table.review_table.comparison tr td:nth-child(6) {display: none;}
  .review_table td {font-size: 10px;}
}

/*スクール名-順位*/
  h4 img{
	width :12%;
}

/*口コミ評価一覧*/
.review_score{
  display: inline-block;
  width: 100%;
}

#main :not(#whatsnew):not(#pagelist):not(#index_inner):not(#sitemaps):not(li) .review_score  > ul {
  clear: both;
  margin-bottom: 0;
}
#main .review_score p{
  text-align: center;
  background-color: #ffd485;
  font-size: 13px;
  border-radius: 3px;
  padding: 3px 0;
  margin: 10px 0;
}

#main :not(#whatsnew):not(#pagelist):not(#index_inner):not(#sitemaps):not(li) .review_score  > ul > li {
  padding: 0;
  width: 24.25%;
  float: left;
  color: #333;
  background-image: unset;
  margin: 0 1% 0 0;
  padding: 0;
}


#main .review_score ul > li:before{
  content: none;
}
#main :not(#whatsnew):not(#pagelist):not(#index_inner):not(#sitemaps):not(li) .review_score  > ul > li:last-child{
  margin-right: 0;
}


.demo_list{
  list-style-type:none;
  margin:0;
  padding:0;
}
.demo_list > li{
  display:inline-block;
  margin:0 20px;
}

@media screen and (max-width: 479px) {
  #main :not(#whatsnew):not(#pagelist):not(#index_inner):not(#sitemaps):not(li) .review_score  > ul > li {
	width: 49.5%;
  }
  #main :not(#whatsnew):not(#pagelist):not(#index_inner):not(#sitemaps):not(li) .review_score  > ul > li:nth-child(2n){
	margin-right: 0;
  }
}

.graph_box{
  padding:5px;
  box-sizing: border-box;
}
.graph_box_wrap{
  position: relative;
  width: 100px;
  height: 100px;
  margin:0 auto;
}
.graph_box_wrap.white:after{
  content:"";
  position:absolute;
  display: block;
  width: 70px;
  height: 70px;
  background:#fff;
  top:0;
  left:0;
  bottom:0;
  right:0;
  margin:auto;
  border-radius: 50% 50%;
}
.graph_box_percent{
  position: absolute;
  display: inline-block;
  font-size: 12px;
  width: 100%;
  top: 50%;
  left:0;
  text-align: center;
  font-weight: bold;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 1;
  line-height: 1;
}
.graph_box_percent span{
  font-size: 20px;
}

.box01{
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E" ,"メイリオ","MS P明朝", "MS PMincho", serif;
  font-weight: 600;
  position: relative;
  padding: 1.5rem 2rem;
}

.box01:before,
.box01:after {
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  content: '';
  background-image: -webkit-linear-gradient(315deg, #704308 0%, #ffce08 40%, #e1ce08 60%, #704308 100%);
  background-image: linear-gradient(135deg, #704308 0%, #ffce08 40%, #e1ce08 60%, #704308 100%);
}

.box01:before {
  top: 0;
}

.box01:after {
  bottom: 0;
}

.box01 p{
  text-align: center;
  font-size: 23px;
  line-height: 1.1em;
}

/*-- チャット会話風デザイン --*/
.balloon5 {
  width: 100%;
  margin: 1em 0;
  overflow: hidden;
}

.balloon5 .faceicon {
  float: left;
  margin-right: -90px;
  width: 80px;
}

.balloon5 .faceicon img{
  width: 100%;
  height: auto;
  border: solid 3px #d7ebfe;
  border-radius: 50%;
}

.balloon5.woman .faceicon img{
  border: solid 3px #fed7de
}

.balloon5.orange .faceicon img{
  border: solid 3px #fee6d7
}

.balloon5 .chatting {
  width: 100%;
}

.says {
  display: inline-block;
  position: relative; 
  margin: 5px 0 0 105px;
  padding: 17px 13px;
  border-radius: 12px;
  background: #d7ebfe;
}

.balloon5.woman .says{
  background: #fed7de
}

.balloon5.orange .says{
  background: #fee6d7
}

.says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #d7ebfe;
}

.balloon5.woman .says:after {
  border-right: 12px solid #fed7de;
}

.balloon5.orange .says:after {
  border-right: 12px solid #fee6d7;
}

.says p {
  margin: 0;
  padding: 0;
}

/*詳細エリア*/
/*スクール名-順位*/
h4 img{
	width: 8%;
	vertical-align: text-bottom;
	margin-right: 10px;
}

/*評価-口コミを見るボタン-------------------------------------*/
p.score{
	padding: 6px;
	background-color: #fffee5;
	border-radius: 3px;
	font-weight: bold;
	font-size: 15px;
	position: relative;
	border: 1px #e2e2e2 solid;
}
p.score img{
	width: 100px;
	display: inline-block;
	vertical-align: text-top;
}
p.score span.red{
	margin-left: 5px;
}
p.score a{
	display: inline-block;
	position: absolute;
	right: 4px;
	top: 3px;
	background-color: #ff9800;
	color: #fff;
	padding: 3px 15px;
	font-weight: bold;
	border: 3px #fff solid;
	text-decoration: none;
	border-radius: 3px;
	font-size: 12px;
}
p.score span.review{
	position: relative;
	margin-left: 15px;
}
p.score span.review:before{
	content: "";
	background-image: url(./img/kuchikomi_icon.webp);
	background-repeat: no-repeat;
	padding: 0.8em;
	background-size: contain;
	position: absolute;
	left: -24px;
	top: 0;
}
p.score a:hover{
	position: absolute!important;
	top: 2px!important;
	left: auto!important;
	right: 5px!important;
	opacity: 0.5;
}

#main ol.service_point{
  counter-reset:list;
  list-style-type:none;
  font: 14px/1.6 'arial narrow', sans-serif;
  padding: 10px;
  margin-bottom: 0;
}
ol.service_point li{
  position:relative;
  padding: 7px 5px 7px 40px;
  margin: 7px 0 10px 0px;
  font-weight: bold;
  font-size:18px;
  border-bottom:dashed 1px #F6A38B;
}
ol.service_point li:before{
  counter-increment: list;
  content: counter(list);
  position: absolute;
  left: 0px;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  color: #fff;
  background: #5aa37b;
  border-radius: 50%;
  top: 45%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}


@media screen and (max-width: 767px) {
	.service_point .review_con{
		width: 96%;
		margin: 0 2%;
		float: none;
	}
}

.review_table.detail td{
	font-size:13px; 
}

.review_table.detail td.w20p{
	width: 20%;
}
.review_table.detail td.tal{
	text-align: left;
}

/*店舗表示スライドデザイン設定------------------------------------------------*/

.area_list {
	margin-bottom: 10px;
}

.area_list li.subtit{
  padding: 5px 0!important;
  background-color: #fffce9!important;
  background-image: none!important;
}

.area_list li:before{
  content: none!important;
}

.list_open {
    background-image: url(img/list-open.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
}
.shop_list {
    height: 20px;
    background-color: #f5f5f5;
    margin-bottom: 0;
    border-top: solid 2px #ccc;
    padding: 15px 10px;
}
.shop_child_list ul {
    list-style: none;
    padding: 0px !important;
    margin: 0;
}
#main :not(#whatsnew):not(#pagelist):not(#index_inner):not(#sitemaps):not(li) > .shop_child_list ul li {
    background-color: #fff;
    border-top: solid 2px #ccc;
    background-image: url(img/shop-more.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 15px;
    margin: 0;
    padding: 0;
}

.shop_child_list ul li span{
    color: #143f2d;
}

.shop_list a {
    display: block;
    color: #5b544f !important;
    text-decoration: none;
}
.shop_child_list ul li a {
    display: block;
    color: #5b544f !important;
    text-decoration: none;
    padding: 10px 25px;
}

.list_close {
    background-image: url(img/list-close.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
}


#pr{
	border-bottom: 1px #ddd solid;
}

#pr p{
	padding: 0;
	text-align: left;
	margin-bottom: 0;
}

#pr p span{
	margin-left: 10px;
	font-weight: bold;
	font-size: 14px;
}