@charset "UTF-8";
/* =============================
sub config
===============================*/
#subMain_wrap {
  background: #fff;
}
.search {
  background: #e8e9df;
}
.main a, .sub_event a {
  color: #222;
}
.main a:hover {
    text-decoration: underline;
}
.share a {
  color: #fff;
}
/* Ad
-------------------*/
.ad_containar {
  margin-bottom: 4em;
  position: relative;
}
/* =============================
main
===============================*/

/* sub_h1
-------------------*/
.sub06 .sub_h1 h1 {
  background: linear-gradient(135deg, #fda7c3, #ffd4e2 30%, #ffd4e2 70%, #fda7c3);
  padding: 21px 22px 18px 20px;
  display: flex;
  align-items: center;
}
.sub_h1 {
  font-size: 200%;
  border-radius: 3px;
  overflow: hidden;
}
.sub_h1 img {
  margin-right: 20px;
}
/* .sub06 h1 {
  padding: 21px 22px 18px 100px;
} */
/* charm_locnav
-------------------*/
.charm_locnav {
  margin: 1.5em auto 3em;
}
.charm_locnav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.charm_locnav li {
  display: flex;
  width: calc((100% - 30px) / 4);
}
.charm_locnav a {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 3px;
  font-weight: bold;
  background: url( "../../c_img/charm/charm_locnav_alw1.png" ) right 15px center no-repeat #e8e9df;
  width: 100%;
  padding: 1em 1em 1em;
  color: #222;
  box-sizing: border-box;
}
.charm_locnav a:hover {
  text-decoration: none;
}
.charm_locnav li:nth-of-type(1) > a {
  background-color: #eefcea;
  box-shadow: 0px -2px 0px 0px #d0d1c8 inset;
}
.charm_locnav li:nth-of-type(2) > a {
  background-color: #f8ecda;
  box-shadow: 0px -2px 0px 0px #dfd4c4 inset;
}
.charm_locnav li:nth-of-type(3) > a {
  line-height: 1;
  background-color: #dafbfd;
  box-shadow: 0px -2px 0px 0px #c4e1e3 inset;
}
.charm_locnav li:nth-of-type(4) > a {
  background-color: #faf8e4;
  box-shadow: 0px -2px 0px 0px #e1dfcd inset;
}
/* =============================
charm_cont
===============================*/
.charm_cont {
  padding: 0 0 .5em;
  position: relative;
}
.charm_cont > div {
  width: calc(100% - 4em);
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.charm_cont p {
  font-size: 87.5%;
}
.charm_cont p > span {
  display: inline-block;
  margin-left: 1em;
}
.charm_cont p > span > strong {
  font-weight: normal;
  display: inline-block;
  margin-left: 0.2em;
  color: #fff;
  border-radius: 50%;
  line-height: 1.4em;
  padding: .1em .4em 0 .4em;
}
.charm_cont h2 {
  margin-top: 0.2em;
  font-size: 225%;
  padding: 0 0 0.3em 0;
  font-weight: normal;
}
.charm_cont .charm_cont_title {
  margin-top: 2em;
  width: 180px;
}
.charm_cont .charm_cont_img {
  position: relative;
}
#charm_cont1 {
  background: #eefcea;
}
#charm_cont2 {
  background: #f8ecda;
}
#charm_cont3 {
  background: #dafbfd;
}
#charm_cont4 {
  background: #f9f7e4;
  margin-bottom: 1em;
}
#charm_cont2 .charm_cont_title {
  text-align: right;
  order: 2;
}
#charm_cont4 .charm_cont_title {
  text-align: right;
  order: 2;
}
#charm_cont1 p > span > strong {
  background: #3E6134;
}
#charm_cont2 p > span > strong {
  background: #91664c;
}
#charm_cont3 p > span > strong {
  background: #2473aa;
}
#charm_cont4 p > span > strong {
  background: #5E550D;
}
#charm_cont1 h2 {
  background: url( "../../c_img/charm/charm_cont1_line.png" ) left bottom no-repeat;
}
#charm_cont2 h2 {
  background: url( "../../c_img/charm/charm_cont2_line.png" ) right bottom no-repeat;
}
#charm_cont3 h2 {
  background: url( "../../c_img/charm/charm_cont3_line.png" ) left bottom no-repeat;
  line-height: 1;
  padding: 0.3em 0 0.8em 0;
}
#charm_cont4 h2 {
  background: url( "../../c_img/charm/charm_cont4_line.png" ) right bottom no-repeat;
}
#charm_cont1 .charm_cont_img, #charm_cont3 .charm_cont_img {
  top: -20px;
  right: -10px;
}
#charm_cont2 .charm_cont_img {
  top: -20px;
  left: -10px;
}
#charm_cont4 .charm_cont_img {
  top: -20px;
}
/* charm_cont_nav
-------------------*/
.charm_cont_nav {
  width: calc(100% - 4em);
  margin: 0 auto 0;
  padding-bottom: 1.5em;
}
ul.charm_cont_nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.charm_cont_nav li {
  display: flex;
  width: calc((100% - 10px) / 2);
  margin-bottom: 0.7em;
}
.charm_cont_nav a {
  display: flex;
  justify-content: left;
  align-items: center;
  border-radius: 3px;
  font-weight: bold;
  background: url( "../../c_img/link_ico02.png" ) 15px center no-repeat #fff;
  width: 100%;
  padding: 1em 1em 1em 2.2em;
  color: #222;
  box-sizing: border-box;
  box-shadow: 0px -2px 0px 0px #e5e5e5 inset;
}
/* sub_related
-------------------*/
.sub_related {
  width: 100%;
  border: 2px solid #d2d7c6;
  border-radius: 3px;
  background-color: #fff;
  margin-bottom: 1em;
}
.sub_related h2 {
  background: url( "../../c_img/charm/sp_link_ico.png" ) 14px 11px no-repeat #e8e9df;
  padding: 8px 10px 6px 40px;
}
.sub_related ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  font-size: 93.8%;
  padding: 1em 1em 0;
}
.sub_related ul::after {
  content: "";
  display: block;
  width: 31.5%;
}
.sub_related li {
  box-sizing: border-box;
  background: url( "../../c_img/list_arrow.png" ) left 4px no-repeat;
  padding-left: 12px;
  line-height: 1.2;
  padding-bottom: 0.7em;
  padding-right: 1em;
}
/* sub_related .whatnew
-------------------*/
.sub_related.whatnew a {
  color: #0069d5;
  text-decoration: underline;
}
.sub_related.whatnew a:hover {
  color: #c00;
}
.sub_related.whatnew h2 {
  background: url( "../../c_img/sub_notice_ico.png" ) 14px 11px no-repeat #e8e9df;
  padding: 8px 10px 6px 40px;
}
.sub_related.whatnew dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 93.8%;
  padding: 1em 1em 0;
}
.sub_related.whatnew dt {
  display: flex;
  flex-grow: 1;
  width: 25%;
  margin-bottom: 0.7em;
}
.sub_related.whatnew dd {
  display: flex;
  flex-grow: 2;
  width: 75%;
  margin-bottom: 0.7em;
}
/* sub_share
-------------------*/
.subtop_share {
  padding: 0 0 1em 0;
}
.main .share a:hover {
  text-decoration: none;
}

/* sub_bnr_list
-------------------*/
.sub_bnr_list {
}
.sub_bnr_list li {
  margin-bottom: 0.5em;
}
/* =============================
Event Calendar
===============================*/

.charm_event {
  background: url( "../../c_img/sub_eve_bg.png" ) #fff696;
  padding: 0;
  position: relative;
  margin: 1em 0;
  /* z-index: 1; */
}
.charm_event_bg {
  background-image: url( "../../c_img/sub_eve_bg_r.png" ), url( "../../c_img/sub_eve_bg_l.png" );
  background-position: right top, left top;
  background-repeat: no-repeat;
  position: absolute;
  height: 31px;
  width: 100%;
}
.charm_event_set {
  padding: 10px;
  /* background-image: url( "../../c_img/sub_eve_bg_r.png" ), url( "../../c_img/sub_eve_bg_l.png" );
  background-position: right top, left top;
  background-repeat: no-repeat; */
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.charm_event_set > div {
  /* z-index: -1; */
  background-color: #fff;
}
.charm_event_set > div:first-of-type {
  flex-grow: 3;
  margin-right: 10px;
  width: 66%;
}
.charm_event_set > div:first-of-type h2 {
  padding: 18px 100px 0 100px;
  min-height: 50px;
  border-bottom: solid 1px #e3d53d;
  text-align: center;
  background-image: url( "../../c_img/charm/event_flag_r.png" ), url( "../../c_img/charm/event_flag_l.png" );
  background-position: right 24% top 10px, left 24% top 10px;
  background-repeat: no-repeat;
}
.charm_event_set > div:last-of-type {
  flex-grow: 2;
}
.sub_eve_h2_wrap {
  border-radius: 3px 3px 0px 0px;
  background-color: #fff;
  width: 100%;
  height: 3em;
}
.sub_eve_h2_wrap h2 {
  padding-top: 0.45em;
  text-align: center;
  font-size: 95%;
}
.sub_eve_h2_wrap h2 span {
  font-size: 130%;
  color: #2c6b08;
}
.charm_event ul {
  background-color: #fff;
  padding: 1em;
  list-style-image: url( "../../c_img/list_arrow.png" );
  font-size: 90%;
  margin-bottom: 1em;
}
.charm_event li {
  margin-left: 1em;
  margin-bottom: 1em;
}
.charm_event li:last-of-type {
  margin-bottom: 0;
}
/* #Event
-------------------*/
#Event {
  background-color: #fff;
}
#Event #Calendar {
  margin: 0 auto 1px;
  padding: 0 0 0.7em;
  width: 94%;
  overflow: auto;
  background-color: #fff;
  text-align: left;
}
#Event #Calendar caption {
  display: none;
  margin: 0 0 1em;
  text-align: left;
  font-size: 72%;
}
#Event #Calendar caption span.str {
  padding-left: 2px;
  font-size: 70%;
}
#Event #Calendar table {
  table-layout: fixed;
  margin: 0 auto;
  padding: 0;
  min-width: 100%;
  overflow-x: auto;
  white-space: nowrap;
}
#Event #Calendar table td, #Event #Calendar table th {
  padding: 4px 2px;
  font-size: 85%;
  font-weight: normal;
  text-align: center;
  font-family: Arial, Helvetica, sans-serif;
}
#Event #Calendar table td a {
  display: block;
  background-color: #fff;
}
/* sunday saturday
-------------------*/
#Event #Calendar table th:nth-of-type(1), #Event #Calendar table td:nth-of-type(1), #Event #Calendar table td:nth-of-type(1) a {
  background-color: #ffebeb;
}
#Event #Calendar table th:nth-of-type(7), #Event #Calendar table td:nth-of-type(7), #Event #Calendar table td:nth-of-type(7) a {
  background-color: #def0f9;
}
/*----------/---------*/

* html #Event #Calendar table td a {
  height: 1%;
}
*:first-child+html #Event #Calendar table td a {
  height: 1%;
}
#Event #Calendar table td a:hover, #Event #Calendar table td a:active {
  background-color: #ccc;
}
/* today
-------------------*/
#Event #Calendar table td.today, #Event #Calendar table td.today a, #Event #Calendar table td.today a:hover {
  color: #fff;
  background: url( "../../c_img/calendar_today.png" ) center center no-repeat, #4a7830;
}
/* cal_nav
-------------------*/
#Event #Calendar .cal_nav {
  margin-top: 0.2em;
  font-size: 90%;
}
#Event #Calendar p {
  margin: 0.5em 0 0.2em;
  line-height: 1.4;
  font-size: 90%;
}
#Event #Calendar .thismonth {
  padding: 0 0.5em 0;
  float: left;
}
#Event #Calendar .prevmonth, #Event #Calendar .nextmonth {
  padding: 0 0.5em 0 10px;
}
#Event #Calendar .prevmonth {
  margin-left: 5px;
  padding: 0 10px 0 0;
  float: left;
  background: url("../../c_img/cal_pre_ico.png") no-repeat right 4px;
}
#Event #Calendar .nextmonth {
  padding: 0 0.5em 0 10px;
  float: right;
  background: url("../../c_img/cal_next_ico.png") no-repeat 0 4px;
}
/* sub_event
-------------------*/
.sub_event li {
  margin-bottom: 1em;
}
.sub_event li:last-of-type {
  margin-bottom: 0;
}
/* =============================
BannerArea
===============================*/
#sub_BannerArea {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap : wrap;
  flex-wrap: wrap;
  margin-top: 2.5em;
}
#sub_BannerArea p {
  margin-bottom: .5em;
}
#sub_BannerArea ul {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap : wrap;
  flex-wrap: wrap;
}
#sub_BannerArea li {
  width: calc( 100% / 6 );
  margin-bottom: 1em;
}
#sub_BannerArea a {
  text-decoration: underline;
}
/* =============================
mv-slide
===============================*/

#mv-slide {
  position: relative;
  margin-top: 1.3em;
}
/* index_box01 */
.carousel__stage ul li {
  border-radius: 10px;
  overflow: hidden;
}
.carousel__prevButton, .carousel__nextButton {
  border-radius: 50%;
  height: 3.2em;
  width: 3.2em;
  color: transparent;
  border: 2px solid #fff;
}
/* カルーセル */
#mv-slide {
  margin-bottom: 2.5em;
}
#mv-slide .carousel__prevButton {
  background: url( "../../c_img/slide_prev_ico.png" ) center center no-repeat #4a7830;
  left: -1.6em;
}
#mv-slide .carousel__nextButton {
  background: url( "../../c_img/slide_next_ico.png" ) center center no-repeat #4a7830;
  right: -1.6em;
}
.carousel__item {
  width: 100%;
}
#mv-slide .carousel__control {
  position: absolute;
  bottom: -2em;
  /* right: .7em; */
  right: 6em;
  transform: translateX(50%);
  text-align: left;
  background-color: rgba(255,255,255,.9);
  border-radius: 3px;
  font-size: 88%;
  z-index: 10;
}
#mv-slide .carousel__control__right > button {
  background-color: #222;
  color: #fff;
}
.carousel__autoPlayToggleButton__start {
  background: url("../../c_img/slide_play.png") 2px center no-repeat;
  padding-left: 15px;
}
.carousel__autoPlayToggleButton__stop {
  background: url("../../c_img/slide_stop.png") 2px center no-repeat;
  padding-left: 15px;
}
#mv-slide .carousel__pager {
  padding: .2em .5em 0;
}
#mv-slide .carousel__pager--number button {
  background-color: #000;
  color: #000;
  border-radius: 50%;
  width: 1em;
  height: 1em;
  overflow: hidden;
}
.carousel__item a:hover {
  opacity: 1;
}
/* =============================
ImportantInfo
===============================*/
.ImportantInfo {
  margin: 1em auto;
}
#kinkyu ul {
    list-style-type: square;
    color: #9c0000;
    margin-left: 1.5em;
    padding: .5em;
}
#kinkyu {
    border: 2px solid #9c0000;
}
#kinkyu h2 {
    background-color: #9c0000;
    color: #fff;
    padding: .5em;
}
#kinkyu a {
    color: #0069d5;
}
#kinkyu a:hover,#kinkyu a:active {
    color: #c00;
}
#kinkyu span {
    color: #222;
}
#anzen ul {
    list-style-type: square;
    color: #050;
    margin-left: 2em;
}
#anzen {
    border: 2px solid #050;
    padding: .5em;
}
#anzen h2 {
    color: #050;
}
#anzen a {
    color: #0069d5;
}
#anzen a:hover,#kinkyu a:active {
    color: #c00;
}
#anzen span {
    color: #222;
}


.cal_nav a:hover{
    text-decoration: underline;
}
td.event{
    text-decoration: underline;
}
.toEventList {
    display: block;
    position: absolute;
    top: 0;
    width: 0;
    height: 0;
    text-indent: -9999px;
}
