@charset "UTF-8";
/*
    Template: swell
    Theme Name: UMOREA CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/*
 Theme Name: umorea-child
 Template: umorea
Version: 2.4.4
*/

/*+++++ CSSサンプルページ用 +++++*/

/* micro clearfx */

.cf:before, .cf:after {
  content: "";
  display: table
}
.cf:after {
  clear: both
}
.cf {
  zoom: 1
}
/* For IE 6/7 */

.center, .post_content table td.center {
  text-align: center;
    margin: auto;
}
.center-t, .post_content table td.center-t {
  text-align: center;
    margin: auto;
}
.right-t, .post_content table td.right-t {
  text-align: right;
}
.left-t, .post_content table td.left-t {
  text-align: left;
}
.just {
  text-align: justify;
}
.cb {
  clear: both;
}
.mb {
  clear: both;
}

.mw960{
  max-width: 960px;
    margin: auto;
}
.mw860{
  max-width: 860px;
    margin: auto;
}
.mw760{
  max-width: 760px;
    margin: auto;
}

@media screen and (min-width: 1024px) {
  .pc-no { display: none; }
  .sp-no { display:unset; }
  .pc-only { display:unset; }
  .pc { display:unset; }
  .spc { display: none; }
  .pctab { display:unset; }
  .tab { display: none; }
  .tabsp { display: none; }
  .sp { display: none; }
 .ssp { display: none; }
}

@media screen and (min-width:769px) and ( max-width:1023px) {
  .pc-no { display:unset; }
  .sp-no { display:unset; }
  .pc-only { display: none; }
  .pc { display:unset; }
  .spc { display:unset; }
  .pctab { display:unset; }
  .tab { display: none; }
  .tabsp { display: none; }
  .sp { display: none; }
 .ssp { display: none; }
}

@media screen and (min-width: 520px) and ( max-width:768px) {
  .pc-no { display:unset; }
  .sp-no { display:unset; }
  .pc-only { display: none; }
  .pc { display: none; }
  .spc { display: none; }
  .pctab{ display: none; }
  .tab { display:unset; }
  .tabsp { display:unset; }
  .sp { display: none; }
 .ssp { display: none; }
}

@media screen and (min-width: 420px) and ( max-width:519px) {
  .pc-no { display:unset; }
  .sp-no { display:  none; }
  .pc-only { display:  none; }
  .pc { display:  none; }
  .spc { display: none; }
  .pctab { display:  none; }
  .tab { display:  none; }
  .tabsp { display:unset; }
  .sp { display:unset; }
 .ssp { display: none; }
}

@media screen and ( max-width:419px) {
  .pc-no { display:unset; }
  .sp-no { display:  none; }
  .pc-only { display:  none; }
  .pc { display:  none; }
  .spc { display: none; }
  .pctab { display:  none; }
  .tabsp { display:unset; }
  .sp { display:unset; }
 .ssp { display:unset; }
}

/* +++++ 基本（サンプルページ） +++++ */
.post_content table td.align-center{
    text-align: center!important;
}
.post_content table td.align-right{
    text-align: right!important;
}
.post_content table td.align-left{
    text-align: left!important;
}
.m-a {
  margin: auto!important;
}
.ml0 {
  margin-left: 0px!important;
}
.m5 {
  margin: 5px!important;
}
.m10 {
  margin: 10px!important;
}
.m15 {
  margin: 15px!important;
}
.m20 {
  margin: 20px!important;
}
.ml10 {
  margin-left: 10px!important;
}
.ml20 {
  margin-left: 20px!important;
}
.ml30 {
  margin-left: 30px!important;
}
.ml40 {
  margin-left: 40px!important;
}
.mr60 {
  margin-left: 60px!important;
}
.mr0 {
  margin-right: 0px!important;
}
.mr10 {
  margin-right: 10px!important;
}
.mr20 {
  margin-right: 20px!important;
}
.mr30 {
  margin-right: 30px!important;
}
.mr40 {
  margin-right: 40px!important;
}
.mr60 {
  margin-right: 60px!important;
}
.mt0 {
  margin-top: 0px!important;
}
.mt10 {
  margin-top: 10px!important;
}
.mt20 {
  margin-top: 20px!important;
}
.mt30 {
  margin-top: 30px!important;
}
.mt40 {
  margin-top: 40px!important;
}
.mt60 {
  margin-top: 60px!important;
}
.mt80 {
  margin-top: 80px!important;
}
.mt100 {
  margin-top: 100px!important;
}
.mb0 {
  margin-bottom: 0px!important;
}
.mb10 {
  margin-bottom: 10px!important;
}
.mb20 {
  margin-bottom: 20px!important;
}
.mb30 {
  margin-bottom: 30px!important;
}
.mb40 {
  margin-bottom: 40px!important;
}
.mb60 {
  margin-bottom: 60px!important;
}
.mb80 {
  margin-bottom: 80px!important;
}
.mb100 {
  margin-bottom: 100px!important;
}
p.indent-1 {
  padding-left: 1em;
  text-indent: -1em;
}
.h120 {
  line-height: 120%!important;
}
.h130 {
  line-height: 130%!important;
}
.h140 {
  line-height: 140%!important;
}
.h150 {
  line-height: 150%!important;
}
.h165 {
  line-height: 165%!important;
}
.h175 {
  line-height: 175%!important;
}
.h200 {
  line-height: 200%!important;
}
.h250 {
  line-height: 250%!important;
}
.h300 {
  line-height: 300%!important;
}
.w200 {
  font-weight: 200!important;
}
.w300 {
  font-weight: 300!important;
}
.w400 {
  font-weight: 400!important;
}
.w500 {
  font-weight: 500!important;
}
.w600 {
  font-weight: 600!important;
}
.w700 {
  font-weight: 700!important;
}
.w900 {
  font-weight: 900!important;
}
.font-ssss {
  font-size: 0.6em!important;
}
.font-sss {
  font-size: 0.7em!important;
}
.font-ss {
  font-size: 0.8em!important;
}
.font-s {
  font-size: 0.9em!important;
}
.font-100 {
  font-size: 1em!important;
}
.font-110 {
  font-size: 1.1em!important;
}
.font-l {
  font-size: 1.2em!important;
}
.font-ll {
  font-size: 1.35em!important;
}
.font-lll {
  font-size: 1.5em!important;
}
.font-llll {
  font-size: 1.8em!important;
}
.font-r {
  color: #8f2e14!important;
}
.font-c {
  color: #618e34!important;
}
.font-g {
  color: #2f5d50!important;
}
.font-g1 {
  color: #d2e3d1!important;
}
.font-g2 {
  color: #92b1b5!important;
}
.font-g3 {
  color: #a7b7bf!important;
}
.font-y {
  color: #c89932!important;
}
.font-p {
  color: #c97586!important;
}
.font-b {
  color: #165e83!important;
}
.font-o {
  color: #b56f0b!important;
}
.font-gl {
  color: #5b6356!important;
}
.font-bk {
  color: #000000!important;
}
.font-ls00 {
    letter-spacing: .0em;
}
.font-ls015 {
    letter-spacing: .015em;
}
.font-ls03 {
    letter-spacing: 0.03em;
}
.font-ls05 {
    letter-spacing: 0.05em;
}
.font-ls075 {
    letter-spacing: 0.05em;
}
.font-ls10 {
    letter-spacing: 0.1em;
}

.under60c {
  background: linear-gradient(transparent 60%, #a0d8ef 60%);
}
.under80c {
  background: linear-gradient(transparent 80%, #a0d8ef 80%);
}
.under60y {
  background: linear-gradient(transparent 60%, #ffff66 60%);
}
.under80y {
  background: linear-gradient(transparent 80%, #ffff66 80%);
}
.wrap .main .font-ls05 {
  letter-spacing: 0.05em;
}
.wrap .main .font-ls10 {
  letter-spacing: 0.1em;
}
.wrap .main .font-ls15 {
  letter-spacing: 0.15em;
}
.wrap .main .font-mt0 {
  margin-top: 0px;
}
.wrap .main .font-mt5 {
  margin-top: 5px;
}
.wrap .main .font-mt10 {
  margin-top: 10px;
}
.wrap .main .font-mt15 {
  margin-top: 15px;
}
.wrap .main .font-mb0 {
  margin-bottom: 0px;
}
.wrap .main .font-mb5 {
  margin-bottom: 5px;
}
.wrap .main .font-mb10 {
  margin-bottom: 10px;
}
.wrap .main .font-mb15 {
  margin-bottom: 15px;
}
.wrap .main .font-mb20 {
  margin-bottom: 20px;
}
.wrap .main .font-mb30 {
  margin-bottom: 30px;
}
.pullquote-left {
  border-left-color: #6c5d5d!important;
  padding: 0 20px;
}
/*レスポンシブ定義リスト体験カレンダー等*/

.font-l10 {
  margin: 0px 0px 0px 10px;
  margin-bottom: 0px;
}
.font-l20 {
  margin: 0px 0px 0px 20px;
  margin-bottom: 0px;
}
.font-dott1 {
  font-size: 120%;
  margin-top: 10px;
  margin-bottom: 10px;
  border-bottom: dotted 1px #999;
  padding-bottom: 12px;
}
.font-dott2 {
  font-size: 120%;
  margin: 10px 0px;
  border-top: dotted 1px #999;
  border-bottom: dotted 1px #999;
  padding: 12px 0px;
}
#tensen dl {
  width: auto;
}
#tensen dt {
  font-family: 'M PLUS 1 Code', sans-serif!important;
  clear: left;
  float: left;
  width: 145px;
  font-weight: 600;
  color: #ff9933;
}
#tensen dd {
  font-family: 'M PLUS 1 Code', sans-serif!important;
  margin: 0px 0px 15px 185px;
  padding: 0px 0px 0px 0px;
}
#tensen dd:before {
  content: '  ……';
  position: absolute;
  display: block;
  margin-left: -2.5em;
  width: 1.2em;
}
#sentences dl {
  width: auto;
}
#sentences dt {
  color: #14392f;
  font-weight: 500;
  margin-top: 25px;
  margin-bottom: 12px;
  border-left-width: 12px;
  border-left-style: solid;
  border-left-color: #e6eae3;
  padding-bottom: 2px;
  padding-left: 12px;
  padding-top: 2px;
  display: inline-block;
}
#sentences dd {
   line-height: 1.7em;
  border-bottom-width: 1px;
  margin-top: 5px;
  margin-bottom: 10px;
  margin-left: 18px;
  padding-right: 0px;
  padding-left: 6px;
  padding-bottom: 3px;
  border: none;
  line-height: 1.7em;
}
#sentences0 dl {
  width: auto;
}
#sentences0 dt {
 font-family: 'M PLUS 1 Code', sans-serif!important;
    font-size: 1.2em;
    font-weight: 600;
   margin: 0.5em 0;
    padding-bottom: 0.1em;
  border-bottom: dotted 1px #999;
    letter-spacing: .1em;
}
#sentences0 dd {
  line-height: 1.7em;
  padding: 0;
  margin: .2em .2em 1em .2em;
}
#sentences1 dl {
  width: auto;
}
#sentences1 dt {
    font-size: 1.25em;
    letter-spacing: .03em;
    font-weight: 500;
    margin: 40px 0 10px 0;
    padding: 0em 0 0 1.6em;
  background-image: url(/wp-content/uploads/css-img/icon_16.png);
  background-repeat: no-repeat;
  background-position: center left;
    background-size: 25px auto;
}
#sentences1 dt:first-child {
    margin: 0px 0 10px 0;
}
#sentences1 dd {
    font-size: .9em;
 line-height: 1.7em;
margin: 0.5em 0 1em 0;
}
#sentences2 dl {
  width: auto;
}
#sentences2 dt {
  font-family: 'M PLUS 1 Code', sans-serif!important;
  font-size: 1.2em;
  color: #333;
  font-weight: normal;
  margin-top: 25px;
  margin-bottom: 12px;
  border-left-width: 12px;
  border-left-style: solid;
  border-left-color: #e9eae8;
  padding-left: 10px
}
#sentences2 dd {
line-height: 1.7em;
    margin: 0.5em 0 1em 0;
    padding-left: 1.3em;
}
#sentences3 dl {
  width: auto;
}
#sentences3 dl {
	width: auto;
}
#sentences3 dt {
	padding: 2px 18px;
	border-radius: 3px;
	background:#4c6473;
	font-weight: 700;
	font-size: 1.1em;
	text-align: center;
	color: #fff;
	display: inline-block;
	letter-spacing: .15em;
}
#sentences3 dd {color: #333;
	font-size: 100%;
	line-height: 1.7em;
	margin-left: 0px;
	margin-top: 2px;
}
#sentences4 dl {
	width: auto;
}
#sentences4 dt {
    padding: 0.4em 1em 0.2em 1.5em;
	border-radius: 2px;
	background:#d2a392;
	font-weight: 700;
	font-size: 1.05em;
	text-align: center;
	color: #fff;
	display: inline-block;
	    letter-spacing: .1em;
}
#sentences4 dd {
color: #333;
	font-size: 100%;
	line-height: 1.7em;
	margin-left: 0px;
	margin-top: 2px;
}
#sentences5 dl {
	margin: 0;
	padding: .5em;
}
#sentences5 dt {
	margin: 0;
	padding: 0.4em 1.4em;
	font-weight: 700;
	background-color: #dde4e5;
	letter-spacing: 0.1em;
	font-size: 1.2em;
}
#sentences5 dd {
	margin: .5em 0 1.5em 0;
	padding: 0.4em 1.2em;
	border-left: 1px solid #ccc;
	font-size: 1em;
	clear: both;
}
#sentences5 dd.noline-red {
	color: #900;
	font-size: .8em;
	margin: 0em 0em 0.5em 0em;
	clear: both;
	padding-left: 0;
	border-left: none;
}
#sentences5 dd.noline {
	color: #666;
	font-size: .8em;
	margin: 0em 0em 0.5em 0em;
	clear: both;
	padding-left: 0;
	border-left: none;
}

div#syohin {
  display: flex;
}
#syohin dl {
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  border-left: 1px solid #ddd;
  box-sizing: border-box;
}
#syohin dt {
  width: 80px;
  float: left;
  padding: 10px 10px 0px 10px;
  border-top: 1px solid #ddd;
  box-sizing: border-box;
  margin: 0;
}
#syohin dd {
  margin-left: 80px;
  border-left: 1px solid #ddd;
  padding: 10px 10px 10px 10px;
  border-top: 1px solid #ddd;
  margin-bottom: 0em;
  box-sizing: border-box;
}
#syohin dd:after {
  content: '';
  display: block;
  clear: both;
}
#setsumei dl {
  width: auto;
}
#setsumei dt {
  width: 85px;
  float: left;
  padding: 3px 5px 0px 0px;
  box-sizing: border-box;
  margin: 0;
}
#setsumei dt:before {
  content: "◇"!important;
}
#setsumei dd {
  padding-left: 2em;
  text-indent: -2em;
  margin-left: 105px;
  padding: 3px 5px 3px 5px;
  margin-bottom: 0em;
  box-sizing: border-box;
}
#setsumei dd:before {
  content: '…　';
  list-style-position: inside;
}
#setsumei dd:after {
  content: '';
  display: block;
  clear: both;
}
/*スケジュール等のDL/DT*/

#hd_co dl {
  width: auto;
}
#hd_co dt {
  font-size: 125%;
  margin-top: 5px;
  clear: left;
  float: left;
  width: 120px;
  text-align: justify;
  margin: 0;
  color: #744d4d;
  line-height: 1.7;
}
#hd_co dd {
  margin: 0 0 3px 120px;
  font-size: 105%;
  padding: 0px 0px 8px 0px;
  line-height: 1.7em;
}
#hd_co dd:before {
  content: '  …    ';
  position: absolute;
  margin-left: -1.5em;
}
#hd_co .l2 {
  letter-spacing: 2em;
}
#hd_co .l3 {
  letter-spacing: 0.5em;
}
#hd_co .l4 {
  letter-spacing: 0;
}
#hd_co .l5 {
  -moz-transform: scale( 0.82, 1);
  /* Firefox※ */
  -webkit-transform: scale( 0.8, 1);
  /* Chrome,Safari */
  -o-transform: scale( 0.8, 1);
  /* 旧Opera※ */
  -ms-transform: scale( 0.8, 1);
  /* IE */
  transform: scale( 0.8, 1);
  /* CSS3 */
  transform-origin: left bottom;
}
#hd_co .l-etc {
  letter-spacing: -.05em;
  -moz-transform: scale( 0.84, 1);
  /* Firefox※ */
  -webkit-transform: scale( 0.82, 1);
  /* Chrome,Safari */
  -o-transform: scale( 0.82, 1);
  /* 旧Opera※ */
  -ms-transform: scale( 0.82, 1);
  /* IE */
  transform: scale( 0.82, 1);
  /* CSS3 */
  transform-origin: left bottom;
}
#office dl {
  width: auto;
}
#office dt {
  clear: left;
  float: left;
  font-weight: 700;
  text-align: justify;
  margin: 0;
  font-size: 16px;
}
#office dd {
  margin: 0 0 .5em 122px;
  padding: 0px 0px 0px 0px;
}
#office dd:before {
  content: ' … ';
  position: absolute;
  display: block;
  margin-left: -1.8em;
}
#office .l2 {
  letter-spacing: 2.82em;
}
#office .l3 {
  letter-spacing: 0.95em;
}
#office .l4 {
  letter-spacing: 0.32em;
}
#office .l5 {
  letter-spacing: 0;
}
#office .l6 {
  -moz-transform: scale( 0.86, 1);
  /* Firefox※ */
  -webkit-transform: scale( 0.84, 1);
  /* Chrome,Safari */
  -o-transform: scale( 0.84, 1);
  /* 旧Opera※ */
  -ms-transform: scale( 0.84, 1);
  /* IE */
  transform: scale( 0.84, 1);
  /* CSS3 */
  transform-origin: left bottom;
}
#office .l7 {
  -moz-transform: scale( 0.75, 1);
  /* Firefox※ */
  -webkit-transform: scale( 0.72, 1);
  /* Chrome,Safari */
  -o-transform: scale( 0.72, 1);
  /* 旧Opera※ */
  -ms-transform: scale( 0.72, 1);
  /* IE */
  transform: scale( 0.72, 1);
  /* CSS3 */
  transform-origin: left bottom;
}
#staff dl {
  width: auto;
}
#staff dt {
    float: left;
    text-align: justify;
    margin: 0;
    font-size: 1em;
    width: 75px;
color: #000;
}
#staff dd {
  margin: 0 0 10px 75px;
  padding: 3px 0px 0px 0px;
line-height: 1.7em;
    font-size: .95em;
}
#staff dd:before {
  content: ' … ';
  position: absolute;
  display: block;
  margin-left: -1.4em;
  width: 1.2em;
}
#staff .l2 {
  letter-spacing: 1.4em;
}
#staff .l3 {
  letter-spacing: 0.2em;
}
#hd_co .time-t dl {
  width: auto;
}
#hd_co .time-t dt {
  clear: unset;
  float: left;
  width: 140px;
  font-weight: 400;
  text-align: right;
  margin-right: 15px;
  font-size: 95%;
}
#hd_co .time-t dd {
  line-height: 1.7em;
  margin: 0 0 7px 155px;
  font-size: 95%;
}
#hd_co .time-t dd:before {
  display: none;
}
#hd_co .time-s dl {
  width: auto;
}
#hd_co .time-s dt {
  clear: unset;
  float: left;
  width: 65px;
  font-weight: 400;
  text-align: right;
  margin-right: 15px;
  font-size: 16px;
}
#hd_co .time-s dd {
  line-height: 1.7em;
  margin: 0 0 7px 80px;
font-size: .9em;

}
#hd_co .time-s dd:before {
  display: none;
}
#sentences2 .time-t dl {
  width: auto;
}
#sentences2 .time-t dt {
  clear: unset;
  float: left;
  width: 135px;
  font-weight: 400;
  text-align: right;
  margin-right: 15px;
  font-size: 16px;
}
#sentences2 .time-t dd {
  line-height: 1.7em;
  margin: 0 0 7px 150px;
}
#sentences2 .time-t dd:before {
  display: none;
}
#sentences2 .time-s dl {
  width: auto;
}
#sentences2 .time-s dt {
  clear: unset;
  float: left;
  width: 60px;
  font-weight: 400;
  text-align: right;
  margin-right: 15px;
  font-size: 16px;
  font-size: 14px;
  border: none;
  margin: 0;
}
#sentences2 .time-s dd {
  line-height: 1.7em;
  margin: 0 0 7px 75px;
  font-size: 100%;
}
#sentences2 .time-s dd:before {
  display: none;
}
#setsumei dl {
  width: auto;
}
#setsumei dt {
  width: 85px;
  float: left;
  padding: 3px 5px 0px 0px;
  box-sizing: border-box;
}
#setsumei dt:before {
  content: '◇  ';
}
#setsumei dd {
  padding-left: 2em;
  text-indent: -2em;
  margin-left: 105px;
  padding: 3px 5px 3px 5px;
  margin-bottom: 0em;
  box-sizing: border-box;
}
#setsumei dd:before {
  content: '…　';
  list-style-position: inside;
}
#setsumei dd:after {
  content: '';
  display: block;
  clear: both;
}
#normal dl {
  display: block;
  -webkit-margin-before: 0.7em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 0px;
  -webkit-margin-end: 0px;
}
#normal dt {
  color: #111;
  font-weight: 500;
  font-size: 150%;
  line-height: 1.7em;
  margin-bottom: 0.5em;
  margin-top: 1em;
}
#normal dd {
  margin-bottom: 0.5em;
  margin-top: 0em;
  line-height: 1.7em;
}
.post_content dt, .post_content table th, strong {
  font-weight: 500;
}
.post_content dt {
  font-size: 125%;
  margin: 25px 0 8px 0;
}
.post_content dd {
  margin-bottom: 0.5em;
}
#nth-1 table {
  background-color: #f8f8f8;
}
#nth-1 table th, .post_content table td {
  border: 1px solid #bbb;
}
#nth-1 table th {
  ;
  background-color: #eef3f7;
  padding: 5px;
}
#nth-1 table td {
  font-size: .95em;
  padding: 3px;
}
#nth-1 table td:nth-child(1) {
  background-color: #f8f4e6;
}
#res-table-lg dl {
  width: auto;
}
#res-table-lg dt {
  display: inline-block;
  font-family: "waon";
  color: #875829;
  font-weight: 600;
  font-size: 150%;
  margin-top: 25px;
  margin-bottom: 10px;
  border-bottom: dotted 3px #618e34;
  padding: 6px 2px
}
#res-table-lg dd {
  line-height: 1.7em;
  margin-left: 0px;
  margin-top: 2px;
}
.res-table-lg dl {
  width: auto;
  margin-bottom: 15px;
}
.res-table-lg dt {
  display: inline-block;
  color: #222;
  font-weight: normal;
  font-size: 140%;
  margin-top: 25px;
  margin-bottom: 10px;
  border-bottom: dotted 3px #888;
  padding: 6px 2px
}
.res-table-lg dd {
  line-height: 1.7em;
  margin-left: 0px;
  margin-top: 4px;
  margin-bottom: 10px;
}
#table_t dl {
  background: #f8f8f8;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
  box-sizing: border-box;
}
#table_t dt {
white-space: nowrap;
  font-size: 100%;
  font-weight: 400;
  color: #562929;
  width: 23%;
  float: left;
  padding: .7em .7em 0 .7em;
  border-top: 1px solid #ccc;
  box-sizing: border-box;
  margin: unset;
}
#table_t dd {
  background: #fff;
  color: #555;
  margin-left: 23%;
  border-left: 1px solid #ccc;
  padding: .7em .7em;
  border-top: 1px solid #ccc;
  margin-bottom: 0em;
  box-sizing: border-box;
}
#table_t dd:after {
  content: '';
  display: block;
  clear: both;
}
/*---スタイル解除テーブル---*/

#normal table {
  padding: 0;
  text-align: left;
  margin: 0;
}
#normal th {
  background-color: #f7f7f7;
  border: 1px solid #bbb;
  font-size: 110%;
}
#normal td {
  border: 1px solid #bbb;
  background-color: #fff;
  -webkit-transition: all .6s ease-out;
  padding: 6px 10px 6px 12px;
  text-align: left;
  margin: 0;
  font-size: 14px;
  /* for IE's Bug? */
}
.post_content table th {
  font-weight: 500;
  padding: 8px 5px;
  white-space: nowrap;
  background-color: #e0e8e8;
}
@media screen and (min-width: 481px) {
  .post_content table {
    background-color: #f8f8f8;
  }
}
@media screen and (max-width: 480px) {
  .post_content table {
    background-color: unset;
  }
}
.post_content table th, .post_content table td {
  border: 1px solid #bbb;
}
.post_content table th {
  background-color: #eef3f7;
  padding: 5px;
  letter-spacing: 0.1em;
  padding: 10px;
}
.post_content table td {
  font-size: .95em;
  padding: 10px;
}
.blue {
  background-color: #e5f3ff;
}
.purple {
  background-color: #efe5f9;
}
.orange {
  background-color: #ffeed5;
}
.green {
  background-color: #f1fff0;
}
.pink {
  background-color: #fdeeee;
}
.yellow {
  background-color: #fffbd2;
}
.blue a {
  color: #3a76a9;
}
.purple a {
  color: #875faf;
}
.orange a {
  color: #d5840a;
}
.green a {
  color: #1d8b14;
}
.pink a {
  color: #c56060;
}
.yellow a {
  color: #3a76a9;
}
.blue a:hover, .purple a:hover, .orange a:hover, .green a:hover, .pink a:hover, .yellow a:hover {
  background-color: #ffa0a0;
}
#normal img {
  padding: 0;
  margin: 0;
  vertical-align: bottom;
  line-height: 0px;
}
/*---左揃えテーブル---*/

#p4 table {
  border: none;
  background-color: #fff;
  -webkit-transition: all .6s ease-out;
  padding: 2px;
  text-align: left;
  margin: 0;
}
#p4 tr {
  border: none;
  background-color: #fff;
  -webkit-transition: all .6s ease-out;
  padding: 2px;
  text-align: left;
  margin: 2px 0px 2px 0px;
}
#p4 th {
  font-family: "Sawarabi Gothic";
  background-color: #dcdddd;
  border: 1px solid #bbb;
  font-size: 110%;
  font-weight: 300;
}
#p4 td {
  border: 1px solid #bbb;
  background-color: #fff;
  -webkit-transition: all .6s ease-out;
  padding: 10px;
  text-align: left;
  margin: 0;
  font-size: 14px;
  /* for IE's Bug? */
}
/*---背景罫線なしテーブル---*/

.post_content table#noline {
  border: none;
  padding: 0;
  text-align: left;
  margin: 0;
}
.post_content table#noline tr {
  border: none;
  background-color: #fff;
}
.post_content table#noline tr.alt {
  border: none;
  background-color: #fff;
}
.post_content #noline th {
  border: none;
  background-color: #fff;
  font-size: 110%;
}
.post_content #noline td {
  border: none;
  background-color: #fff;
  vertical-align: top;
  padding: 6px 2px;
  text-align: left;
  margin: 0;
  font-size: 14px;
}
.post_content #noline img {
  padding: 0;
  margin: 0;
  vertical-align: bottom;
  line-height: 0px;
}
#p4 img {
  padding: 0;
  margin: 0;
  vertical-align: bottom;
  line-height: 0px;
}
#p0 table {
  padding: 0px;
  text-align: left;
  margin: 0;
}
#p0 td {
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 0px 0px;
  font-size: 13px;
  /* for IE's Bug? */
}
#p0 img {
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 0px 0px;
  vertical-align: bottom;
  line-height: 0px;
}
.p0t img {
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 0px 0px;
  vertical-align: top;
  line-height: 0px;
}
#p5 table {
  padding: 0px;
  text-align: left;
  margin: 0;
}
#p5 td {
  padding: 5px 0px 0px 0px;
  margin: 0px 0px 0px 0px;
  font-size: 13px;
  /* for IE's Bug? */
}
#p5 img {
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 0px 0px;
  vertical-align: bottom;
  line-height: 0px;
}
#p8 table {
  padding: 8px;
  text-align: left;
  margin: 10px;
  font-size: 13px;
}
#p8 tr td {
  padding: 8px;
  margin: 10px;
  font-size: 13px;
  /* for IE's Bug? */
}
#p8 th {
  padding: 8px;
  margin: 10px;
  text-align: left;
}
/*---改行なし---*/

td.nowrap, td.nowrap {
  white-space: nowrap;
}
/*---改行なし---*/

td.nowrap, td.nowrap {
  white-space: nowrap;
}
#sentences2 .time-s dd:before {
  display: none;
}
element.style {}
ol, ul {
  list-style: none;
}
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline;
}
user agent stylesheet ol {
  display: block;
  list-style-type: decimal;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  padding-inline-start: 40px;
}
.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 {
  font-weight: 300;
  line-height: 1.7em;
  margin: 25px 0;
}
ol {
  list-style: decimal;
  padding: 0 0 15px 20px;
}
/*
.post_content ol {
    list-style: decimal;
    padding-left: 1.5em;
}
.post_content ul {
    padding-left: 1.5em;
}

.post_content li {
    padding-left: 1.5em;
}
  */

.post_content ul {
  padding-left: 1.5em;
}
.post_content ul li {
  list-style: disc;
line-height: 1.7em;
}
.post_content ol li {
  margin: 0px 0px 10px 0px;
line-height: 1.7em;
}
dl dd li {
  padding: 0 0 0 1.5em;
  text-indent: -1.5em;
  margin-left: 0.5em;
  list-style: circle;
}
.arrowList ul {
  margin: 0px 0px 20px 0px;
}
.arrowList ul li {
  list-style: none;
}
.arrowList li {
  list-style: none;
  margin: 0 0 5px 0;
  padding: 0 0 0 0.3em;
  position: relative;
  text-indent: 0em;
}
.arrowList li:before, .arrowList li:after {
  content: "";
  display: block;
  position: absolute;
}
.arrowList li:before {
  width: 12px;
  height: 12px;
  border-radius: 2px;
  background: #bdb1a1;
  left: -15px;
  top: 6px;
}
.arrowList li:after {
  border: 3px solid transparent;
  border-left-color: #fff;
  ;
  left: -10px;
 top: 9px;
}
.marusuji ol {
  counter-reset: number;
  list-style-type: none!important;
  padding: 0.5em;
}
.marusuji ol li {
  list-style-type: none!important;
  padding: 0 0 8px 3rem;
margin: 0px 0px 8px 0px;
}
.marusuji ol li:before {
  counter-increment: number;
  content: counter(number);
  background-color: #829fad;
  color: white;
  float: left;
  line-height: 1.7em;
  text-align: center;
    width: 2.5rem;
    height: 2.5rem;
  border-radius: 50%;
  margin: 0px 0px 0px -3rem;
display: flex;
    justify-content: center;
    align-items: center;
}
}
.kome ul {
  margin: 0px 0px 20px 0px;
  list-style: none;
}
.kome li {
  text-indent: -1em;
  margin: 0 0 5px 0;
  line-height: 1.7em;
  list-style: none!important;
  padding: 0!important;
}
.kome li:before {
  font-weight: bold;
  content: '※';
  display: inline-block;
  width: 1.2em;
  font-size: 85%;
  text-indent: 0;
}
.kome-aka ul {
  margin: 0px 0px 20px 0px;
  list-style: none;
}
.kome-aka li {
  text-indent: -1em;
  margin: 0 0 5px 0;
  color: #c82c55;
  line-height: 1.7em;
  list-style: none!important;
  padding: 0!important;
}
.kome-aka li:before {
  font-weight: bold;
  content: '※';
  display: inline-block;
  width: 1.2em;
  font-size: 85%;
  text-indent: 0;
  color: #e27e98;
}
.daia ul {
  margin: 0px 0px 20px 0px;
  list-style: none;
}
.daia li {
  text-indent: -1em;
  margin: 0 0 5px 0;
  line-height: 1.7em;
  list-style: none!important;
  line-height: 1.7;
}
.daia li:before {
  content: '◇';
  display: inline-block;
  text-indent: 0;
color: #666666;
    font-size: .85em;
    margin-left: -0.1em;
    margin-right: 0.2em;
}
.arrow ul {
  margin: 0px 0px 20px 0px;
  list-style: none;
}
.arrow li {
  text-indent: -2em;
  margin: 0 0 5px 0;
  list-style: none!important;
  line-height: 1.7;
}
.arrow li:before {
  content: '　⇒';
  display: inline-block;
  text-indent: 0;
}
/*--------Flexbox Masonry レイアウト（フォトコン）---------*/

.flexbox2 {
  display: grid;
  grid-template-columns: 45% 45%;
  grid-column-gap: 50px;
  grid-row-gap: 30px;
  justify-items: stretch;
  align-items: stretch;
}
/* Each flex item 2 column */

.flexbox {
  display: grid;
  grid-template-columns: 30% 30% 30%;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  justify-items: stretch;
  align-items: stretch;
}
/* Each flex item 3 column */

.fb-item {
  position: relative;
}
.flexbox1 {
  display: grid;
  grid-template-columns: 60% 30%;
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  justify-items: stretch;
  align-items: stretch;
}

/* Each flex item 2 column */
.flexbox4 {
    display: grid;
    grid-template-columns: 23% 23% 23% 23%;
    grid-column-gap: 25.5px;
    grid-row-gap: 35px;
    justify-items: stretch;
    align-items: stretch;
}
.flexbox4 .fb-title {
 font-size: 1.35em;
/*  text-shadow: 0 0 8px rgba(0, 0, 0, 0.42);*/
font-weight: 700;
    letter-spacing: .2em;
}
.flexbox4 .fb-nickname {
    font-size: 1.1em;
    letter-spacing: .15em;
    font-weight: 700;
    color: #165e83;
}
/* Each flex item 4 column */

.fb-item img {
/*  border: 1px solid #bbb;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px; */
  width: 100%;
  display: block;
  transition: all .8s;

}
.fb-title {
  text-align: center;
  width: 100%;
  margin: 0px;
  margin-bottom: 10px!important;
  font-size: 1.35em;
/*  text-shadow: 0 0 8px rgba(0, 0, 0, 0.42);*/
font-weight: 700;
    padding: 14px 0 10px 0;
    border-bottom: dotted 1px #999;
    border-top: dotted 1px #999;
}
.fb-nickname {
  text-align: left;
  width: 100%;
  padding: 0px 0px 10px 0px;
  margin: 0px;
  margin-bottom: 2px!important;
  font-size: 105%;
  font-weight: 600;
}
.fb-setsumei {
  text-align: left;
  width: 100%;
  margin: 0px;
  line-height: 160%;
  padding: 0px;
  font-size: 100%;
  text-shadow: 0px 0px 1px #fff, 0px 0px 2px #fff, 0px 0px 3px #fff, 0px 0px 4px #fff, 0px 0px 5px #fff, 0px 0px 6px #fff, 0px 0px 7px #fff, 0px 0px 8px #fff;
}
.fb-item2 img {
  width: 100%;
  display: block;
  transition: all .8s;
  border-radius: 4px;
  /* CSS3草案 */
  -webkit-border-radius: 4px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 4px;
  /* Firefox用 */
}
.fb-item-in {
  width: 100%;
  margin-top: 20px;
  margin-bottom: 30px;
  float: left;
}
.fb-item-in dt, .fb_kougo-text dd {
  text-align: left;
}
.fb-item-in dl {
  margin-bottom: 30px;
}
.fb-item-in dt {
  font-weight: 500;
  margin-bottom: 0.5em;
  font-size: 135%;
  color: #84b548;
}
.fb-item-in dd {
  font-weight: 400;
  text-align: left;
  line-height: 165%;
  margin-bottom: 0.6em;
  font-size: 100%!important;
  padding-left: 20px;
}
@media screen and (max-width: 1024px)  {
.flexbox4 {
    display: grid;
    grid-template-columns: 30% 30% 30%;
    grid-column-gap: 25.5px;
    grid-row-gap: 20px;
    justify-items: stretch;
    align-items: stretch;
}
}
/* ++++ max-width: 739px + min-width: 0px ++++ */

@media screen and (max-width: 739px) and (min-width: 480px) {
.flexbox2{
    display: grid;
    grid-template-columns: 100%;
  }
  .fb-title {
    font-size: 100%;
    line-height: 150%;
  }
  .fb-nickname {
    font-weight: 600;
    line-height: 150%;
  }
  .fb-setsumei {
    font-size: .85em;
    line-height: 150%;
  }
  .fb-item {
    width: 100%;
  }
  .flexbox, .flexbox4 {
    display: grid;
    grid-template-columns: 45% 45%;
}
.flexbox4 .fb-nickname {
    font-size: 1.2em;
}
.flexbox4 #staff dt {
    float: none;
    font-weight: 700;
}
.flexbox4 #staff dd {
        margin: 0 0 10px 28px;
padding: 0px;
font-size: 1em;
}


}
/* ++++ max-width: 739px + min-width: 480px ++++ */

@media screen and (max-width: 479px) {
.flexbox{
    display: grid;
    grid-template-columns: 100%;
  }
.flexbox .fb-item img {
max-width: 350px;
    text-align: center;
    margin: auto;
}
.flexbox2{
    display: grid;
    grid-template-columns: 100%;
  }
}
/* ++++ max-width: 479px  ++++ */


/*レスポンシブtable体験カレンダー等 詳細右揃え*/

#table_res table {
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-collapse: collapse;
  width: 100%;
}
#table_res table th {
  background-color: #f1f7e8;
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border: #ccc 1px solid;
  color: #582609;
  padding: 10px;
  background-color: #e0e8e8;
  white-space: nowrap;
}
#table_res table td {
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border: #ccc 1px solid;
  padding: 10px;
}
@media screen and (max-width: 480px) {
  #table_res table {
    border: none;
  }
  #table_res table thead {
    display: none;
  }
  #table_res table tr {
    border-top: 1px solid #ccc;
    display: block;
    margin-bottom: 20px;
  }
  #table_res table td {
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    display: block;
    padding: 10px;
    text-align: right;
  }
  #table_res table td::before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
  }
}
@media screen and (min-width: 481px) {
  #table_res .per10 {
    width: 10%;
  }
  #table_res .per15 {
    width: 15%;
  }
  #table_res .per18 {
    width: 18%;
  }
  #table_res .per20 {
    width: 20%;
  }
  #table_res .per25 {
    width: 25%;
  }
  #table_res .per30 {
    width: 30%;
  }
  #table_res .per40 {
    width: 40%;
  }
  #table_res .per50 {
    width: 50%;
  }
  #table_res .per60 {
    width: 60%;
  }
  #table_res .per70 {
    width: 70%;
  }
  #table_res .per80 {
    width: 80%;
  }
  #table_res .per90 {
    width: 90%;
  }
}
/*------------------------写真+キャプション-----------------------*/

#imagebox {
  margin: 15px 15px 8px 0;
  padding: 0;
  float: left;
  font-size: 12px;
  color: #333;
  text-align: center;
}
.imgbox img {
  border-radius: 12px;
  /* CSS3草案 */
  -webkit-border-radius: 12px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 12px;
  /* Firefox用 */
  border: 7px solid #eeebe2;
}
#imagebox .caption {
  font-size: 14px;
  color: #333;
  text-align: center;
  margin: 3px 0 5px auto;
}
.img_maru {
  border-radius: 5px;
  /* CSS3草案 */
  -webkit-border-radius: 5px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 5px;
  /* Firefox用 */
}
.img_maru10_w {
  border-radius: 10px;
  /* CSS3草案 */
  -webkit-border-radius: 10px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 10px;
  /* Firefox用 */
  border: 5px solid #fff;
  margin: 0 0 10px 0;
  padding: 0px 0px 0px 0px;
  box-shadow: 1px 1px 4px rgba(0, 0, 0, .2);
  margin: 0 0 10px 0;
}
.img_maru10 {
  border-radius: 10px;
  /* CSS3草案 */
  -webkit-border-radius: 10px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 10px;
  /* Firefox用 */
}
.img_maru18_w {
  border-radius: 18px;
  /* CSS3草案 */
  -webkit-border-radius: 18px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 18px;
  /* Firefox用 */
  box-shadow: 1px 1px 4px rgba(0, 0, 0, .2);
  border: 8px solid #fff;
  margin: 0 0 10px 0;
  padding: 0px;
}
.img_maru18 {
  border-radius: 18px;
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  margin: 0 0 10px 0;
  padding: 0px 0px 0px 0px;
}
.box_maru10 {
  line-height: 170%;
  padding: 20px 20px 20px 20px;
  margin: 15px 0;
  border: dashed 1px #bbb;
  font-size: 15px;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
}
.box_maru8 {
  line-height: 170%;
  padding: 20px 20px 20px 20px;
  margin: 15px 20px;
  border: dashed 1px #bbb;
  font-size: 14px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}
.box_maru10 p, .box_maru8 p {
  margin-bottom: 0em!important;
}
.post_content img.border, .widget img.border {
  border-radius: 5px;
  /* CSS3草案 */
  -webkit-border-radius: 5px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 5px;
  /* Firefox用 */
  img-radius: 5px;
  padding: 4px;
  background: #fff;
  border: 1px solid #bbb;
}
/*------------ キャプション入写真---------*/

.post_content .wp-caption {
  max-width: 100%;
  margin-bottom: 14px;
  padding-top: 5px;
  text-align: center;
  margin: 0px;
  box-shadow: none;
}
.post_content .wp-caption, .post_content table tr.alt {
  background: #fff;
  border: #DBDBDB 1px solid;
  border-radius: 2px;
  padding: 0px;
  box-shadow: none;
}
.post_content .wp-caption-text {
  font-style: normal;
  font-size: 13px;
  padding: 5px 0 5px;  color: #666;
}
.post_content .wp-caption.alignnone img {
  padding: 0;
  border-radius: 2px 2px 0px 0px / 2px 2px 0px 0px;
  -webkit-border-radius: 2px 2px 0px 0px / 2px 2px 0px 0px;
  -moz-border-radius: 2px 2px 0px 0px / 2px 2px 0px 0px;
}
.post_content .wp-caption.alignnone, .post_content .wp-caption.alignleft, .post_content .wp-caption.alignright {
  /*width: 100%!important;*/
  overflow: hidden;
  margin-bottom: 15px;
}
.post_content .wp-caption img {
  padding-top: 5px;
}
/*-----------------キャプション入り フォトギャラリー----------------*/

.gallery {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  margin: 0;
  width: 100%;
}
.gallery li, .gallery ul li {
  padding: 0px 10px 0px 0px;
  list-style: none;
  text-align: center;
  max-width: 60%;
    line-height: 1.3em;
}
.gallery li img, .gallery ul li img {
  border-radius: 4px;
  border-width: 1px!important;
  border-color: #DBDBDB!important;
margin-bottom: 0.5em;
}
.post_content .gallery .wp-caption.alignnone, .post_content .gallery .wp-caption.alignleft, .post_content .gallery .wp-caption.alignright {
  width: 100%!important;
}
.gallery p.wp-caption-text, .gallery figcaption.wp-caption-text {
  margin: .5em 0!important;
  color: #000;
  padding: 0;
}
.gallery 
@media screen and (max-width: 768px) {
  .gallery {
    display: flex;
    flex-wrap: wrap;
    align-content: space-around;
  }
  .gallery li, .gallery ul li {
    flex-basis: 48.5%;
    padding: 0px 2px 10px 0px;
  }
  #t-head table th {
    border-left: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border: #ccc 1px solid;
    padding: 10px;
    background-color: #e6eae6;
    white-space: nowrap;
  }
  #t-head table td {
    border-left: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border: #ccc 1px solid;
    padding: 8px;
  }
  /*写真marginなし*/
  .marginnone {
    margin: 0px 0px 0px 0px!important;
  }
  /*レスポンシブtable体験カレンダー等*/
  #table_res table {
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-collapse: collapse;
    width: 100%;
  }
  #table_res table th {
    border-left: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border: #ccc 1px solid;
    padding: 10px;
    background-color: #eee;
    white-space: nowrap;
  }
  #table_res table td {
    border-left: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border: #ccc 1px solid;
    padding: 10px;
  }
}
@media screen and (max-width: 520px) {
  .gallery {
    display: flex;
    flex-wrap: wrap;
    align-content: space-around;
  }
  .gallery li, .gallery ul li {
    flex-basis: 49%;
    padding: 0px 2px 10px 0px;
max-width: 100%;
  }
  }
@media screen and (max-width: 400px) {
 .gallery {
    display: flex;
    flex-wrap: wrap;
    align-content: space-around;
  }
  .gallery li, .gallery ul li {
    flex-basis: 100%;
    padding: 0px 2px 10px 0px;
max-width: 100%;
  }
  #table_res table {
    border: none;
  }
  #table_res table thead {
    display: none;
  }
  #table_res table tr {
    border-top: 1px solid #ccc;
    display: block;
    margin-bottom: 20px;
  }
  #table_res table td {
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    display: block;
    padding: 10px;
    text-align: right;
  }
  #table_res table td::before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
  }
}
.w-box {
  width: auto;
  background-color: rgba(255, 255, 255, 0.5);
  color: #333;
  padding: 10px 5px 10px 15px;
  margin: 15px 0px 30px 0px;
  font-size: 14px;
  border: 1px solid #bbb;
}
li.sidemenu {
  color: #fff;
  font-size: 15px;
}
li.sidemenu a {
  color: #24b4c0;
  font-size: 15px;
}
.under60c {
  background: linear-gradient(transparent 60%, #a0d8ef 60%);
}
.under80c {
  background: linear-gradient(transparent 80%, #a0d8ef 80%);
}
.under60y {
  background: linear-gradient(transparent 60%, #ffff66 60%);
}
.under80y {
  background: linear-gradient(transparent 80%, #ffff66 80%);
}
.square_btn {
  font-size: 20px;
  position: relative;
  display: inline-block;
  padding: 0.4em 0.8em;
  color: #fff;
  text-decoration: none;
  background: #3c555f;
  border: solid 1px #000;
  border-radius: 2px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}
.main a.square_btn {
  color: #fff;
}
.container-inner .main .square_btn a {
  color: #fff!important;
}
.container-inner .main .square_btn:hover {
  background: #fff;
  color: #67c5ff!important;
  border: solid 1px #67c5ff;
  border-radius: 5px;
}
/*+++++ フレックスボックス（写真ギャラリーの応用） +++++*/

@media screen and (min-width: 769px) {
  .flbox {
    Margin-left: 2%;
  }
  .flbox:first-child {
    Margin-left: 0px;
  }
}
.flbox {
  Margin: 5px;
}
/*------------ テキストボタン---------*/

a.btn-beta, a.btn-border {
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all .3s;
  transition: all .3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: .15em;
  padding: .8em 2.2em;
}
/*------------ テキストボタン（ベタ）---------*/

a.btn-beta {
  border: 1px solid #888;
  border-radius: 0;
  background: #fff;
}
a.btn-beta:hover {
  color: #fff;
  background: #888;
}
/*------------ テキストボタン（上下の罫線）---------*/

a.btn-border {
  position: relative;
  display: inline-block;
}
a.btn-border:before, a.btn-border:after {
  position: absolute;
  width: 100%;
  height: 1px;
  content: '';
  -webkit-transition: all .3s;
  transition: all .3s;
  background: #888;
}
a.btn-border:before {
  top: 0;
  left: 0;
}
a.btn-border:after {
  right: 0;
  bottom: 0;
}
a.btn-border:hover:before, a.btn-border:hover:after {
  width: 0;
}
/*------------  form 送信後の枠等 ---------*/

.wpcf7 form.sent .wpcf7-response-output {
  border-color: rgb(255 255 255 / 0%);
}
/*------------  form 送信後のメッセージ ---------*/

.wpcf7-response-output {
  color: #991414;
  font-size: 115%;
  font-weight: 600;
}
/*------------  form 承諾ボタン ---------*/

.wpcf7 span.wpcf7-form-control-wrap {
  display: inline;
}
/*------------  form 文字入力変換テキストカラー ---------*/

::-moz-selection {
  background: #464646;
  color: white;
}
::selection {
  background: #464646;
  color: white;
}
.form-set .form_1 p {
    white-space: nowrap;
    padding: 0 .3em;
}


/* +++++ 各ページアイキャッチ +++++ */
.image-container img {
   position: absolute;
    top: -50%;
}

/*------------- お問合せフォーム -------------*/
input.wpcf7-form-control.has-spinner.wpcf7-submit {
  text-align: center;
  padding: 0.5em 2em;
  margin: 1em 0;
background-color:var(--color_main);
}
.form-set {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem; /* カラム間の余白 */
}

.form_1 {
  flex: 1 1 48%; /* 2カラム（幅48%ずつ） */
  min-width: 260px; /* スマホでは1カラムになる */
  box-sizing: border-box;
}

.form_2,
.form_3 {
  flex: 1 1 100%; /* 全幅にする */
}

.form_1 p,
.form_2 p,
.form_3 p {
  margin: 0; /* 余分な余白を消す */
}

.form-set input,
.form-set textarea {
  width: 100%; /* 入力欄を親要素いっぱいに広げる */
  box-sizing: border-box;
}
@media screen and (max-width:768px) {
.form-set .form_1 {
  Width: 90%;
}
}
@media screen and (max-width:539px) {
.form-set .form_1 {
    Width: 100%;
    display: block;
}
}
.form-set .form_2 {
  Width: 100%;
  display: inline-block;
  padding: 10px;
  vertical-align: top;
}
.form-set .form_3 {
  Width: 100%;
  display: inline-block;
  padding: 10px;
  vertical-align: top;
}
button, input, select, textarea {
  width: 100%;
}
.wpcf7-form .wpcf7-list-item {
  margin: 0 0.7em 0 0em;
}
.wpcf7-form input.wpcf7-form-control.has-spinner.wpcf7-submit {
  font-size: 1.1em;
  letter-spacing: .5em;

}
.wpcf7-form textarea {
  border-color: #dcd7ca;
  width: 100%;
}
p.form_accep1 {
  text-indent: -.9em;
  padding-left: 2.2em;
  text-align: left;
}
.wpcf7-form input[type="checkbox"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    position: relative;
    top: 7px;
    display: inline-block;
    margin: 0;
    width: 1.5rem;
    min-width: 1.5rem;
    height: 1.5rem;
    background: #fff;
    border-radius: 0;
    border-style: solid;
    border-width: 0.1rem;
    border-color: #dcd7ca;
    box-shadow: none;
    cursor: pointer;
}
.wpcf7-form input[type="checkbox"]:checked::before {
    content: url(data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M14.83%204.89l1.34.94-5.81%208.38H9.02L5.78%209.67l1.34-1.25%202.57%202.4z%27%20fill%3D%27%23000000%27%2F%3E%3C%2Fsvg%3E);
    position: absolute;
    display: inline-block;
   margin: -0.5rem 0 0 -0.7rem;
    height: 1.75rem;
    width: 1.75rem;
}
.wpcf7-form select, .wpcf7-form input{
    border: 1px dotted #bbb;
    color: #333;
    display: block;
    max-width: 100%;
    outline: 0;
    padding: 5px 8px;
    font-size: .9em;
}
.wpcf7-form textarea {
    border-color: #dcd7ca;
    width: 100%;
    line-height: 1.7em;
    font-size: .9em;
}
.wpcf7 p.form_submit  input{
color: #fff;
}


/*+++++ style.css 上書き用 +++++*/
body  {
  background: #f8f8ee;
}
body, .post_content  {
 font-family: "游ゴシック", YuGothic, " ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN",Century Gothic;
font-family: 'Zen Kaku Gothic New', sans-serif;
font-family: 'IBM Plex Sans JP', sans-serif;
  font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-size: 15px;
line-height: 1.7em;
letter-spacing: .03em;
}
a:hover {
  color: #92b1b5;
}
.feature_meta h2, h2.widgettitle, h1.page-title, h1.post-title, .site-title, .widget-meta h2, .sidebar .widget>h3, .eyecatch_title, #footer h3, h2.post-title, .free_space h2 {
    font-family: 'Shippori Mincho', serif!important;
}
.M-PLUS-Rounded-1c{
  font-family: 'M PLUS Rounded 1c', sans-serif!important;
}
.M-PLUS-Rounded-1c-300{
  font-family: 'M PLUS Rounded 1c', sans-serif!important;
font-weight: 300;
}
.M-PLUS-Rounded-1c-400{
  font-family: 'M PLUS Rounded 1c', sans-serif!important;
font-weight: 400;
}
.IBM-Plex-Sans-JP{
  font-family: 'IBM Plex Sans JP', sans-serif!important;
}
.IBM-Plex-Sans-JP200 {
  font-family: 'IBM Plex Sans JP', sans-serif!important;
  font-weight: 200;
}
.IBM-Plex-Sans-JP400 {
  font-family: 'IBM Plex Sans JP', sans-serif!important;
  font-weight: 400;
}
.IBM-Plex-Sans-JP600 {
  font-family: 'IBM Plex Sans JP', sans-serif!important;
  font-weight: 600;
}
.Shippori-Mincho{
  font-family: 'Shippori Mincho', serif!important;
}
.Shippori-Mincho400{
  font-family: 'Shippori Mincho', serif!important;
  font-weight: 400;
}
.Shippori-Mincho600{
  font-family: 'Shippori Mincho', serif!important;
  font-weight: 600;
}
.Zen-Kaku-Gothic-New {
  font-family: 'Zen Kaku Gothic New', sans-serif!important;
}
.Zen-Kaku-Gothic-New300 {
  font-family: 'Zen Kaku Gothic New', sans-serif!important;
  font-weight: 300;
}
.Zen-Kaku-Gothic-New500 {
  font-family: 'Zen Kaku Gothic New', sans-serif!important;
  font-weight: 500;
}
.Zen-Kaku-Gothic-New700 {
  font-family: 'Zen Kaku Gothic New', sans-serif!important;
  font-weight: 700;
}

#breadcrumb {
  border-bottom: 1px solid #fff;
}

h1, h2, h3, h4, h5 h6 {
font-family: "M PLUS Rounded 1c", sans-serif!important;
}
.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 {
letter-spacing: 0.05em;
    font-weight: unset;
margin: 2em 0 0.5em;
 font-family: 'Zen Kaku Gothic New', sans-serif;
font-family: "M PLUS Rounded 1c", sans-serif;
}
.p-postSlider h1, .p-postSlider h2, .p-postSlider h3, .p-postSlider h4, .p-postSlider h5, .p-postSlider h6 {
font-family: "M PLUS Rounded 1c", sans-serif;
}
.post_content h1 {
font-size: 2.2em;
  font-weight: 400;
letter-spacing: 0.1em !important;
}
.post_content h2 {
font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: 1.8em;
    font-weight: 400;
}
.post_content h3 {
    color: #000;
font-size: 1.5em;
border-left: 1px solid;
border-left-color: #2f5d50!important;
padding: 10px 20px;
}
.post_content h3.h3s {
font-size: 1.5em;
    padding-left: 50px;
    padding-top: 8px;
    background-image: url(/wp-content/uploads/css-img/icon_09.png);
    background-repeat: no-repeat;
    background-position: center left;
    -moz-background-size: 35px auto;
    -webkit-background-size: 35px auto;
    -o-background-size: 35px auto;
    -ms-background-size: 35px auto;
border-left: none;
}
.post_content h4 {
font-size: 1.4em;
    margin: 35px 0 10px 0;
    padding-left: 40px;
    padding-top: 9px;
    padding-bottom: 3px;
    background-image: url(/wp-content/uploads/css-img/icon_29.png);
    background-repeat: no-repeat;
    Background-position: 0px 15px;
    -moz-background-size: 30px auto;
    -webkit-background-size: 30px auto;
    -o-background-size: 30px auto;
    -ms-background-size: 30px auto;
}
.post_content h5 {
font-size: 1.4em;
    margin: 35px 0 10px 0;
    padding-left: 56px;
    padding-top: 7px;
    padding-bottom: 3px;
    background-image: url(/wp-content/uploads/css-img/icon_31.png);
    background-repeat: no-repeat;
    Background-position:0px 6px;
    -moz-background-size: 50px auto;
    -webkit-background-size: 50px auto;
    -o-background-size: 50px auto;
    -ms-background-size: 50px auto;
}
.post_content h6 {
font-size: 1.4em;
    margin: 35px 0 10px 0;
    padding-left: 55px;
    padding-top: 14px;
    padding-bottom: 3px;
    background-image: url(/wp-content/uploads/css-img/icon_24.png);
    background-repeat: no-repeat;
    Background-position:0px 12px;
    -moz-background-size: 45px auto;
    -webkit-background-size: 45px auto;
    -o-background-size: 45px auto;
    -ms-background-size: 45px auto;
}
@media only screen and (max-width: 768px){
.featured .content .post-title, .single .content .post-title {
font-size: 2.5em;
}
.post_content h1 {
font-size: 2.4em;
}
.post_content h2,.post_content h3,.post_content h3.h3s {
    font-size: 2em;
}
}

.wrap a {
    color: #cd7a61;
}
.wrap a:hover {
    color: #2f5d50;
}

.heading-0 {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 26px;
	text-align: center;
}
h2.heading-0 {
font-size: 2.2em;
}
.heading-0::before,
.heading-0::after {
	content: '';
	width: 3px;
	height: 40px;
	background-color: #19849a;
}

.heading-0::before {
	margin-right: 30px;
	transform: rotate(-35deg)
}
.heading-0::after {
	margin-left: 30px;
	transform: rotate(35deg)
}

h2.heading-1 {
    font-size: 1.7em;
    font-weight: 700;
}
.heading-1 {
	position: relative;
	text-align: center;
}
.heading-1::before {
	content: attr(data-number);
	display: block;
	margin-bottom: 30px;
	color: #ff865e;
	font-size: 1.2em;
}
.heading-1::after {
	content: '';
	position: absolute;
	top: 50px;
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
	height: 20px;
	background-color: #ff865e;
}
.center940 {
text-align: center;
max-width: 940px;
margin: auto;
}
.center780 {
text-align: center;
max-width: 780px;
margin: auto;
}
.center780 p, .center940 p{
text-align: left;
    line-height: 1.7;
}

/*+++++ うもれあ用スタイルシート +++++*/
.post_content p {
    margin-bottom: .8em;
    line-height: 1.6em;
}
.p-spMenu__nav .menu-item-has-children .submenu-toggle {
  font-weight: bold;
  user-select: none;
}
/* サブメニューはデフォルトで非表示
.sub-menu {
  display: none;
}
/* スマホのときだけ制御
@media screen and (max-width: 959px) {
  .submenu-toggle {
    font-size: 20px;
    user-select: none;
  }
}
 */
body.customize-support {
 font-family: 'M PLUS 1p', sans-serif!important;
    letter-spacing: .05em;
}
h2.wp-block-heading.is-style-section_ttl span.swl-fz.u-fz-s {
    font-size: 1.2em!important;
}
.l-header__spNav .p-spHeadMenu .menu-item {
    font-size: unset;
}
.c-gnav>.menu-item>a {
font-family: "Zen Maru Gothic", sans-serif;
font-family: "M PLUS Rounded 1c", sans-serif;
}
.c-gnav>.menu-item>a .ttl {
    display: block;
    font-size: 16px;
}
#gnav .c-gnav>.menu-item {
    height: 100%;
    position: relative;
    background-repeat: no-repeat;
    background-position: top 50% left 18px;
    background-size: 25px auto;
    letter-spacing: .01em;
    padding: 0 0em 0 2.2em;
}
#gnav .c-gnav>.menu-item.menu-item-345 {
    background-image: url(/wp-content/uploads/css-img/icon_01.png);
}
#gnav .c-gnav>.menu-item.menu-item-344 {
    background-image: url(/wp-content/uploads/css-img/icon_02.png);
}
#gnav .c-gnav>.menu-item.menu-item-346 {
    background-image: url(/wp-content/uploads/css-img/icon_03.png);
}
#gnav .c-gnav>.menu-item.menu-item-347 {
    background-image: url(/wp-content/uploads/css-img/icon_04.png);
}
#gnav .c-gnav>.menu-item.menu-item-343 {
    background-image: url(/wp-content/uploads/css-img/icon_05.png);
}
#gnav .c-gnav>.menu-item.menu-item-348 {
    background-image: url(/wp-content/uploads/css-img/icon_07.png);
}

@media (max-width: 632px) {
#header .l-header__spNav {
    display: none;
}
}

/* フッター */
@media (min-width: 960px) {
    .w-footer__box {
        flex: auto;
        padding: 1em;
    }
}
@media (max-width: 781px) {
h2.wp-block-heading.is-style-section_ttl span.swl-fz.u-fz-s {
    font-size: unset !important;
}
.fs_l, .has-l-font-size, .has-large-font-size, .u-fz-l {
    font-size: unset !important;
}
.w-footer__box .widget_media_image{
    text-align: center;
}
}

        /* フロアガイド全体 */
        .floor-guide {
            max-width: 1000px;
            margin: auto;
            padding: 0rem;
            display: grid;
            grid-template-columns: 2fr 1fr 2fr; /* 左・中央・右の3列 */
            grid-template-rows: auto;
            position: relative;
            row-gap: 0rem;
            column-gap: 0rem;
            border: 2px solid #ccc; /* 囲み線を追加 */
            background-color: #fff;
            margin-bottom: 3em;
        }
        .floor-guide h2{
font-weight: 600;
    color: #715c4e;
        }
        /* 縦の点線 */
        .floor-guide::before,
        .floor-guide::after {
            content: '';
            position: absolute;
            top: 0;
            bottom: 0;
            width: 2px;
            border-left: 2px dashed #ccc;
        }

        .floor-guide::before {
            left: 40%;
            transform: translateX(-0.5rem);
    margin-left: 5px;
        }
        .floor-guide::after {
            left: 60%;
            transform: translateX(0.5rem);
    Margin-left: -10px;
        }

        /* 左カラム */
        .floor-block.left {
            grid-column: 1;
            display: flex;
            flex-direction: column;
            justify-content: center;
            padding: 1rem;
        }

        /* 中央カラム */
        .floor-block.center {
            grid-column: 2;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
padding: 1rem;
        }

        /* 右カラム */
        .floor-block.right {
            grid-column: 3;
            padding: 1rem;
        }

        /* 横の実線 */
        .divider {
            border-top: 1px solid #666;
            grid-column: 2 / 4; /* 中央と右のカラムにわたる */
        }
        .divider.full-width {
            grid-column: 1 / 4; /* 全幅 */
        }

        /* コンテンツのスタイル */
        .content-list h2 {
            margin: 0 0 0.5rem;
            font-size: 1.2rem;
        }
        .content-list ul {
            margin: 0;
            padding: 0;
            list-style: none;
        }
        .content-list li {
            margin: 0.2rem 0;
        }

        /* フロアラベル */
        .floor-label {
            font-size: 2rem;
            font-weight: bold;
            text-align: center;
            padding: 1rem 0;
        }

        /* アイコン */
        .icons {
            margin-top: 0.5rem;
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            justify-content: flex-end;
            align-items: flex-end;
        }
        .icon {
            display: inline-block;
            width: 33px;
            height: 33px;
            background-size: contain;
            background-repeat: no-repeat;
        }

        /* ピクトグラム背景画像 */
        .icon.toilet { background-image: url("/wp-content/uploads/css-img/icon_33.png"); }
        .icon.wheelchair { background-image: url("/wp-content/uploads/css-img/icon_34.png"); }
        .icon.baby { background-image: url("/wp-content/uploads/css-img/icon_35.png"); }
        .icon.elevator { background-image: url("/wp-content/uploads/css-img/icon_36.png"); }

 /* ヘッダー黒い帯 */
.l-header__bar {
    height: 1.8em;
}
.l-fixHeader__inner {
    height: 6em;
    border-top: 2em solid #000;
    max-width: 100%;
    padding: 0 5%;
}
@media (max-width: 959px) {
.gtranslate_wrapper .gt_switcher_wrapper {
    margin-top: -14px;
        top: 15px !important;
        left: 60px !important;
}
.gtranslate_wrapper .gt_switcher_wrapper a {
    color: #1855af;
}
/* 「Chinese (Simplified)」の (Simplified) を非表示にする */
.glink[data-gt-lang="zh-CN"] span {
          font-size: 0px !important; /* 元のテキストを消す */
}
.glink[data-gt-lang="zh-CN"] span::before {
  content: "Chinese"; /* 表示したい文字 */
  font-size: 10px;     /* 好きなサイズに調整 */
}
    .l-header__inner {
        height: 5em;
        align-items: flex-start;
    }
.l-header__logo {
        padding: 25px 0 0 0;
    }
}

        /* スマホ対応 */
        @media (max-width: 520px) {
            .floor-guide {
                display: block;
                padding: 1rem;
                border: none;
            }
            .floor-guide::before,
            .floor-guide::after {
                display: none;
            }
            .divider, .divider.full-width {
                display: none;
            }
            .floor-content {
                display: flex;
                flex-direction: column;
                border-bottom: 2px solid #ccc;
                padding-bottom: 2rem;
            }
            .floor-content:last-of-type {
                border-bottom: none;
            }
            .floor-content > * {
                padding: 0;
            }
            .floor-content .floor-label {
                order: -1;
                text-align: left;
                margin-right: 1rem;
            }
            .floor-content .icons {
                margin-top: 1rem;
            }
.floor-guide h1,.floor-guide h2{
font-family: 'M PLUS 1p', sans-serif !important;    font-size: 1.05rem;
}
.floor-guide h1{
    font-size: 1.2rem;
padding: 0.3em;
    font-weight: 600;
    background-color: #e2e2c6;
    letter-spacing: 0.1em;
text-align: center;
        margin: 1.2em 0 .5em;
}
.floor-guide h2{
        margin: .3em 0
}
.sp-floor-1, .sp-floor-2{
padding: .5em 1em;
}
.sp-floor-2 ul li{
padding: 0;
        display: list-item;
        list-style: square;
        float: left;
        margin: 0 1em;
}
        }
div#body_wrap.category-exhibit-info .post_content {
    font-family: 'Shippori Mincho', serif!important;
}
.home .post_content ul li {
    list-style: none;
}
/* +++++ トップスライダー下グリッド +++++ */
.p-mainVisual__textLayer .p-mainVisual__slideTitle, .p-mainVisual__textLayer .p-mainVisual__slideText{
text-shadow: 0px 0px 1px rgba(0,0,0,.3), 0px 0px 2px rgba(0,0,0,.3), 0px 0px 3px rgba(0,0,0,.3), 0px 0px 4px rgba(0,0,0,.3), 0px 0px 5px rgba(0,0,0,.3), 0px 0px 6px rgba(0,0,0,.3), 0px 0px 7px rgba(0,0,0,.3), 0px 0px 8px rgba(0,0,0,.3), 0px 0px 9px rgba(0,0,0,.3), 0px 0px 10px rgba(0,0,0,.3), 0px 0px 11px rgba(0,0,0,.3);
    letter-spacing: .08em;
    line-height: 1.8em;
}

/* +++++ 展示物についてのお知らせ +++++ */
#shortcodes-ultimate-3 .c-widget__title.-footer {
font-size: 1.5rem;
    font-weight: 400;
    margin-bottom: 1.8em;
}
#shortcodes-ultimate-3 .su-row .su-column-size-1-4:nth-child(even) {
margin: 0 0 0 2%;
}
#shortcodes-ultimate-3 #sentences3 dt {
    margin: 0 0 .5em 0;
letter-spacing: .08em;
}
#shortcodes-ultimate-3 #sentences3 dd {
        font-size: .9rem;
}
#shortcodes-ultimate-3 .su-column.su-column-size-1-4.tenjibutsu {
    margin-bottom: 1.5em;
}
