@charset "utf-8";
/* CSS Document */

/*---------------------------------------------------------------------
	container
---------------------------------------------------------------------*/
#container {
  overflow: hidden;
}

/*---------------------------------------------------------------------
	edit_btn
---------------------------------------------------------------------*/
#edit_btn {
  background: #444;
}
#edit_btn #edit_btn_inner {
  padding: 5px 10px;
  margin: 0 auto;
}
#edit_btn a {
  color: #333;
  font-size: 13px;
  border-radius: 4px;
  display: block;
  float: right;
  font-weight: bold;
  margin: 5px 0 5px 5px;
  padding: 3px 15px 4px;
  text-decoration: none;
  background-image: -moz-linear-gradient(50% 0% -90deg, rgb(255,255,255) 0%, rgb(238,238,238) 100%);
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0, rgb(255,255,255)), color-stop(1, rgb(238,238,238)));
  background-image: -webkit-linear-gradient(-90deg, rgb(255,255,255) 0%, rgb(238,238,238) 100%);
  background-image: -o-linear-gradient(-90deg, rgb(255,255,255) 0%, rgb(238,238,238) 100%);
  background-image: -ms-linear-gradient(-90deg, rgb(255,255,255) 0%, rgb(238,238,238) 100%);
  background-image: linear-gradient(180deg, rgb(255,255,255) 0%, rgb(238,238,238) 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffffffff,endColorstr=#ffeeeeee,GradientType=0)";
 filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffffffff, endColorstr=#ffeeeeee, GradientType=0);
}
#edit_btn a:hover {
  background-image: -moz-linear-gradient(50% 0% -90deg, rgb(238,238,238) 0%, rgb(255,255,255) 100%);
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0, rgb(238,238,238)), color-stop(1, rgb(255,255,255)));
  background-image: -webkit-linear-gradient(-90deg, rgb(238,238,238) 0%, rgb(255,255,255) 100%);
  background-image: -o-linear-gradient(-90deg, rgb(238,238,238) 0%, rgb(255,255,255) 100%);
  background-image: -ms-linear-gradient(-90deg, rgb(238,238,238) 0%, rgb(255,255,255) 100%);
  background-image: linear-gradient(180deg, rgb(238,238,238) 0%, rgb(255,255,255) 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffeeeeee,endColorstr=#ffffffff,GradientType=0)";
 filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffeeeeee, endColorstr=#ffffffff, GradientType=0);
}

/*---------------------------------------------------------------------
	site_header
---------------------------------------------------------------------*/
.info_covid19 {
  text-align: center;
  background: #CD0101;
  padding: 10px;
}
.info_covid19 a {
  color: #fff;
  font-family: 'Noto Serif JP', serif;
}
.info_covid19 a:hover {
  color: yellow;
}


.site_header {
  border-bottom: 1px solid #BFBFBF;
  position: relative;
  z-index: 10;
  background: #fff;
}
/*.site_header.is_fixed {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
}*/

.site_utility {
  padding: 5px;
  background: url("../image/bg_header.png");
  border-bottom: 1px solid #bbb;
}
.site_utility .inner {
  width: 1200px;
  margin: 0 auto;
}
.site_utility .site_lead {
  float: left;
  width: 470px;
  font-size: 1rem;
}
.site_utility .flr {
  float: right;
}
.lang_en .site_utility .flr,
.lang_kr .site_utility .flr { margin-top: 8px; }
.site_utility .flr > * {
  float: left;
}

/* site_fs */
.site_fs {
  font-size: 0;
  margin-top: 4px;
}
.site_fs dt,
.site_fs dd {
  font-size: 1.3rem;
  display: inline-block;
  vertical-align: middle;
}
.site_fs dt {
    padding-left: 23px;
    background: url(../image/icon/site_fs.png) no-repeat 0 0;
    font-weight: 500;
  margin-right: 9px;
}
.site_fs dd + dd { margin-left: 4px; }
.site_fs a {
    text-decoration: none;
    display: block;
    color: #000;
    text-align: center;
    border: 1px solid #bbb;
    background: #fff;
    padding: 0px 4px;
    border-radius: 6px;
  transition: .3s;
}
.site_fs #fs_reset {
  color: #fff;
  border-color: #0176CD;
  background-color: #0176CD;
}
.site_fs a:hover { opacity: .8; }

/* site_bg */
.site_bg {
  font-size: 0;
  margin-left: 15px;
  margin-top: 4px;
}
.site_bg dt,
.site_bg dd {
  font-size: 1.3rem;
  display: inline-block;
  vertical-align: middle;
}
.site_bg dt {
  padding-left: 22px;
  font-weight: 500;
  margin-right: 9px;
  background: url("../image/icon/site_bg.png") no-repeat 0 0;
}
.site_bg dd + dd {
  margin-left: 3px;
}
.site_bg a {
  display: block;
  text-decoration: none;
  border: 1px solid #ccc;
  background: #fff;
  color: #000;
  padding: 0 4px 1px;
  border-radius: 6px;
  transition: .3s;
  width: 23px;
    height: 23px;
}
.site_bg #bg_black { color: #fff; background: #000; border-color: #000; }
.site_bg #bg_yellow { background: #FFBF00; border-color: #FFBF00; }
.site_bg #bg_blue { color: #fff; background: #06438C; border-color: #06438C; }
.site_bg a:hover {
  opacity: .8;
}

/* search_form */
.search_form {
  border: 1px solid #bbb;
  position: relative;
}
.site_header .search_form {
  max-width: 163px;
  margin-left: 10px;
}
.search_form input:focus { outline: none; }
.search_form .search_window {
  width: 100%;
  border: none;
  border-radius: 0;
  border-right: 1px solid #bbb;
  padding: 2px;
  padding-right: 36px;
}
.search_form .search_button {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 34px;
  border: none;
  border-radius: 0;
  background: #0176CD url("../image/icon/search_01.png") no-repeat center center;
  text-indent: -9999px;
}

/* site_lang */
.site_lang {
  margin-left: 10px;
  width: 140px;
  text-align: center;
  position: relative;
}
.site_lang > a {
  text-decoration: none;
  display: block;
  color: #fff;
  background: #01599A;
  padding: 1px 10px 4px;
  position: relative;
  transition: .3s;
}
.site_lang > a::before {
    content: "";
    position: absolute;
    right: 8px;
    top: 50%;
    margin-top: -3px;
    border: 5px solid transparent;
    border-top: 6px solid #fff;
}
.site_lang a:hover { opacity: .8; }
.site_lang .sub_menu {
  display: none;
  position: absolute;
      background: #a9c9e2;
    width: 100%;
    padding: 10px;
  z-index: 1;
}
.site_lang .sub_menu a {
    display: block;
    color: #000;
    text-decoration: none;
  padding: 3px;
}
.site_lang .sub_menu li + li {
    border-top: 1px dotted #fff;
}

.site_navi {
  border-bottom: 3px solid #0176CD;
}
.site_navi .inner {
  width: 1200px;
  margin: 0 auto;
  position: relative;
}
.site_logo {
  float: left;
  margin: 14px 0 10px;
}

/* g_navi */
.g_navi {
  float: right;
  display: table;
  width: 890px;
  border-left: 1px solid #bbb;
  margin-bottom: -3px;
}
.g_navi > li {
  display: table-cell;
  vertical-align: bottom;
  border-right: 1px solid #bbb;
  min-width: 100px;
}
.g_navi > li > a {
  font-size: 1.5rem;
  color: #000;
  text-decoration: none;
  display: block;
  background: no-repeat center 20px;
  position: relative;
  padding: 61px 5px 15px;
  text-align: center;
}
.g_navi .navi_01 > a { background-image: url("../image/icon/g_navi_01.png"); }
.g_navi .navi_02 > a { background-image: url("../image/icon/g_navi_02.png"); }
.g_navi .navi_03 > a { background-image: url("../image/icon/g_navi_03.png"); }
.g_navi .navi_04 > a { background-image: url("../image/icon/g_navi_04.png"); }
.g_navi .navi_05 > a { background-image: url("../image/icon/g_navi_05.png"); }
.g_navi .navi_06 > a { background-image: url("../image/icon/g_navi_06.png"); }
.g_navi .navi_07 > a { background-image: url("../image/icon/g_navi_07.png"); }
.g_navi .navi_08 > a { background-image: url("../image/icon/g_navi_08.png"); }

.g_navi > li > a::before {
  content: "";
  width: 100%;
  height: 3px;
  position: absolute;
  left: 0;
  bottom: 0;
  background: #B2D5F0;
  transition: .3s;
}
.g_navi > li > a:hover::before {
  background: #CD0101;
}

.g_navi .sub_menu {
    display: none;
    position: absolute;
    left: 0;
    width: 100%;
    background: #F5FDFF;
    padding: 10px 20px;
    z-index: 100;
    box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
    box-sizing: content-box;
    margin-left: -20px;
    border: 1px solid #BFBFBF;
}
.g_navi .sub_menu ul {
    letter-spacing: -20px;
}
.g_navi .sub_menu li {
    display: inline-block;
    vertical-align: top;
    width: 31.66%;
    letter-spacing: normal;
    margin-right: 2.5%;
}
.g_navi .sub_menu li:nth-child(3n) {
    margin-right: 0;
}
.g_navi .sub_menu li a {
    display: block;
    text-decoration: none;
    color: #000;
    font-size: 87.5%;
    padding: 10px 10px 10px 15px;
    position: relative;
    transition: .3s;
    border-bottom: 1px solid #BFBFBF;
}
.g_navi .sub_menu li a::before {content: "";position: absolute;left: 0;top: 16px;background: #CD0101;width: 4px;height: 9px;}
.g_navi .sub_menu li a:hover {
    color: #CD0101;
  border-bottom-color: #CD0101
}

/*---------------------------------------------------------------------
	topic_path_top
---------------------------------------------------------------------*/
.topic_path_top {}
.topic_path_top > ol {
  font-size: 87.5%;
  box-sizing: content-box;
  margin: 0 auto;
  max-width: 1200px;
  padding: 8px 15px;
}
.topic_path_top > ol > li {
  display: inline-block;
}
.topic_path_top > ol > li + li::before {
  content: ">";
  margin: 0 5px;
}
.topic_path_top > ol > li a {
  color: #333333;
  text-decoration: underline;
  text-decoration: none;
}
.topic_path_top > ol > li a:hover {
  color: #6F4517;
  text-decoration: underline;
}
/*---------------------------------------------------------------------
	pagebody
---------------------------------------------------------------------*/
.topic_path_top + .pagebody_inner {
  margin-top: 10px;
}
.pagebody_inner {
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1200px;
  box-sizing: content-box;
}
.pagebody_inner_02 {
  margin: 0 auto;
  padding: 0;
  max-width: 1000px;
  box-sizing: content-box;
}

/*--------------------------------------------------
	alpha
--------------------------------------------------*/
#alpha {
  float: left;
  width: 920px;
}


/*--------- text -----------*/
.page_ttl {
  font-size: 212.5%;
  font-weight: normal;
  background: #D1EBFA url("../image/bg_page_ttl.png");
  background-size: cover;
  padding: 27px 15px;
  line-height: 1.4;
}
.page_ttl span {
  max-width: 1200px;
  margin: 0 auto;
  display: block;
}
.page_ttl_sub {
    font-size: 180%;
    font-weight: normal;
    background: #D1EBFA url(../image/bg_page_ttl.png);
    background-size: cover;
    padding: 20px 15px;
    line-height: 1.4;
  margin-bottom: 30px;
}
.content1 {
  line-height: 1.8;
}
.content1 p {
  margin: 1em 0;
}
.content1 h2 + p,
.content1 h3 + p,
.content1 h4 + p,
.content1 h5 + p,
.content1 h6 + p {
  margin-top: 0;
}
.content1 div > p {
  margin-top: 0;
}

/* headline */
.content1 * + h2 {
  margin-top: 80px;
}
.content1 * + h3 {
  margin-top: 60px;
}
.content1 * + h4 {
  margin-top: 40px;
}
.content1 * + h5 {
  margin-top: 20px;
}
.content1 h2 + h3,
.content1 h3 + h4 {
  margin-top: 0;
}

/* utility */
.content1 * + dl:not([class]),
.content1 * + ol,
.content1 * + ul,
.content1 * + table {
  margin-top: 20px;
}

.lead_01,
.content1 h2 {
  color: #fff;
  font-size: 200%;
  font-weight: normal;
  margin-bottom: 20px;
  background: #0176CD;
  border-radius: 6px;
  padding: 8px 10px 12px 40px;
  position: relative;
}
.lead_01::before,
.content1 h2::before {
    content: "";
    width: 7px;
    height: 32px;
    border-radius: 2px;
    background: #B2D5F0;
    position: absolute;
    left: 14px;
    top: 16px;
}
.lead_02,
.content1 h3 {
  font-size: 187.5%;
  font-weight: 500;
  padding-left: 43px;
  padding-bottom: 7px;
  margin-bottom: 20px;
  border-bottom: 2px solid #CCCCCC;
  background: url("../image/bg_h3.png") no-repeat 0 14px;
}
.lead_03,
.content1 h4 {
  font-size: 175%;
  font-weight: 500;
  padding-bottom: 6px;
  margin-bottom: 15px;
  border-bottom: 1px solid #BBBBBB;
}
.lead_04,
.content1 h5 {
  font-size: 162.5%;
  font-weight: normal;
  margin-bottom: 15px;
}

.lead_05 { color: #0088A4; font-size: 150%; }
.lead_06 { color: #01599A; font-size: 150%; }
.lead_07 { color: #0176CD; font-size: 150%; }
.lead_08 {
    font-size: 112.5%;
    background: #F1F9FC;
    padding: 5px 12px;
    color: #01599A;
}
.lead_09 {
    text-align: center;
    margin: 0 !important;
    padding: 5px;
    font-size: 93.75%;
    background: #E8F3FB;
}
.lead_10 { color: #0080FF; font-size: 150%; }
.lead_11 { color: #00238C; font-size: 150%; }

.content1 .lead_12 {
  background: none;
  color: #fff;
	font-size: 218.75%;
  padding: 0;
  margin: 0 0 20px;
}
.content1 .lead_12::before { display: none; }
.content1 .lead_12 strong {
  font-weight: normal;
  background: #01599A;
  padding: 0 30px;
  display: inline-block;
  margin-bottom: 10px;
}
.lead_13 {
	color: #01599A;
	font-size: 162.5%;
	font-weight: bold;
}
.lead_14 {
	color: #0176CD;
	font-size: 225%;
	font-weight: bold;
}

.caution_txt,
.fc_01 { color: #D80000; }

.modified_date {
  color: #333;
  font-size: 86.66%;
  margin-bottom: 20px;
  text-align: right;
}

/*--------- box -----------*/
.bg_box_01 {
  padding: 15px 20px;
  background: #F6F5EE;
}
.bg_box_02 {
  padding: 15px 20px;
  background: #F0F7F6;
}
.bg_box_03 {
  padding: 15px 20px;
  border: 1px solid #ccc;
}
.bg_box_04 {
  padding: 15px 20px;
  border: 1px dotted #D90000;
}

/*.caution_box,
.content1 .caution_box {
  padding: 10px 15px;
  border: 2px solid #AAAAAA;
}
.caution_box dt {
  color: #164BAF;
  font-size: 112.5%;
  font-weight: bold;
  padding: 0 0 10px;
  margin: 0 0 10px;
  border-bottom: 1px solid #AAAAAA;
}
.caution_box dd {}
.caution_box + h2 {
    margin-top: 40px;
}*/

.caution_box {
  border: 1px solid #AAAAAA;
  border-radius: 8px;
  display: table;
  width: 100%;
  margin: 40px auto;
  overflow: hidden;
}
.caution_box dt {
  width: 160px;
  display: table-cell;
  vertical-align: middle;
  color: #000;
  background: #C6EBF3;
  text-align: center;
  padding: 10px;
  border-right: 1px solid #aaa;
}
.caution_box dd {
  padding: 10px 15px;
  display: table-cell;
  vertical-align: middle;
}

/*--------- btn -----------*/
.btn_01 {
  text-align: center;
  color: #000;
  font-size: 93.75%;
  display: inline-block;
  text-decoration: none;
  background: #fff;
  border: 1px solid #BFBFBF;
  position: relative;
  min-width: 210px;
    padding: 4px 30px 8px 20px;
}
.btn_01::before {
    content: "";
    position: absolute;
    right: 3px;
    top: 50%;
  margin-top: -6px;
    border: 5px solid transparent;
    border-left: 7px solid #0176CD;
}
a.btn_02 {
  font-size: 93.75%;
  display: inline-block;
  color: #fff;
  background: #DD6053;
  min-width: 240px;
  position: relative;
  text-decoration: none;
  border-radius: 25px;
  padding: 6px;
  padding-right: 20px;
  text-align: center;
  transition: .3s;
}
a.btn_02:hover {
  color: #fff;
  background: #dda653;
}
a.btn_02::before {
    content: "";
    position: absolute;
    right: 6px;
    top: 50%;
    margin-top: -5px;
    border: 5px solid transparent;
    border-left: 7px solid #fff;
}
/*--------- template -----------*/
.fll_img,
.content1 .fll_img{
  float: left;
  margin: 0 2.5% 2.5% 0;
  /* width: 31.66%; */
  max-width: 30%;
}
.flr_img,
.content1 .flr_img {
  float: right;
  margin: 0 0 2.5% 2.5%;
  /* width: 31.66%; */
  max-width: 30%;
}

.fll_img_m,
.content1 .fll_img_m {
  float: left;
  margin: 0 2.5% 2.5% 0;
  max-width: 50%;
}
.flr_img_m,
.content1 .flr_img_m {
  float: right;
  margin: 0 0 2.5% 2.5%;
  max-width: 50%;
}

.fll_img img,
.fll_img img {
  max-width: 100%;
  height: auto;
}
.fl_over {
  overflow: hidden;
}
.caption,
.list_1column .caption,
.list_2column .caption,
.list_3column .caption,
.list_4column .caption,
.list_5column .caption {
  font-size: 86.66%;
  line-height: 1.4;
  padding-top: 7px;
  text-align: center;
  margin: 0;
}
.list_1column img,
.list_2column img,
.list_3column img,
.list_4column img,
.list_5column img,
.l_2column img,
.l_3column img,
.l_4column img {
  width: 100%;
  height: auto;
}

/* list_2column */
.list_2column {
  letter-spacing: -20px;
}
.list_2column .item,
.list_2column > li {
  letter-spacing: normal;
  width: 48.75%;
  display: inline-block;
  vertical-align: top;
  margin: 0 2.5% 2.5% 0;
}
.list_2column .item:nth-child(2n),
.list_2column > li:nth-child(2n){
  margin-right: 0;
}

/* list_3column */
.list_3column {
  letter-spacing: -20px;
}
.list_3column .item,
.list_3column > li {
  letter-spacing: normal;
  width: 31.66%;
  display: inline-block;
  vertical-align: top;
  margin: 0 2.5% 2.5% 0;
}
.list_3column .item:nth-child(3n),
.list_3column > li:nth-child(3n){
  margin-right: 0;
}

/* list_4column */
.list_4column {
  letter-spacing: -20px;
}
.list_4column .item,
.list_4column > li {
  letter-spacing: normal;
  width: 23.08%;
  display: inline-block;
  vertical-align: top;
  margin: 0 2.5% 2.5% 0;
}
.list_4column .item:nth-child(4n),
.list_4column > li:nth-child(4n){
  margin-right: 0;
}

/* list_5column */
.list_5column {
  letter-spacing: -20px;
}
.list_5column .item,
.list_5column > li {
  letter-spacing: normal;
  width: 18%;
  display: inline-block;
  vertical-align: top;
  margin: 0 2.5% 2.5% 0;
}
.list_5column .item:nth-child(5n),
.list_5column > li:nth-child(5n){
  margin-right: 0;
}

/* Layout 4column = l_4column */
.l_4column {
  letter-spacing: -20px;
}
.l_4column li {
  letter-spacing: normal;
  width: 23.08%;
  display: inline-block;
  vertical-align: top;
  margin: 0 2.5% 2.5% 0;
}
.l_4column li:nth-child(4n) { margin-right: 0; }


/* Layout 3column = l_3column */
.l_3column {
  letter-spacing: -20px;
}
.l_3column li {
  letter-spacing: normal;
  width: 31.66%;
  display: inline-block;
  vertical-align: top;
  margin: 0 2.5% 2.5% 0;
}
.l_3column li:nth-child(3n) { margin-right: 0; }


/* Layout 2column = l_2column */
.l_2column {
  letter-spacing: -20px;
}
.l_2column li {
  letter-spacing: normal;
  width: 48.75%;
  display: inline-block;
  vertical-align: top;
  margin: 0 2.5% 2.5% 0;
}
.l_2column li:nth-child(2n) { margin-right: 0; }

/*--------- page_utility ---------*/
.page_utility {
    max-width: 1200px;
    margin: 0 auto 12px;
}
.page_utility .rsbtn {
  width: 50%;
  float: left;
  margin: 0;
  z-index: 0;
}
.page_utility .sns_button {
  float: right;
  margin-top: 6px;
}
.page_utility .sns_button li {
  float: left;
}
/*--------- list_index -----------*/
* + .list_index {
  margin-top: 60px;
}
.list_index {
  letter-spacing: -.5em;
}
.list_index .item {
    letter-spacing: normal;
    display: inline-block;
    vertical-align: top;
   margin: 0 3.5% 3.5% 0;
    width: 31%;
}
.list_index .item_inner {
  border: 1px solid #BFBFBF;
}
.list_index .item:nth-child(3n) {
  margin-right: 0;
}
.list_index .item .thumb {}
.list_index .item .thumb a {
  /*position: relative;
  padding-bottom: 66.76%;*/
  overflow: hidden;
  display: block;
}
.list_index .item .thumb img {
  /*position: absolute;
  top: -100%;
  left: -100%;
  right: -100%;
  bottom: -100%;
  margin: auto;
  max-width: none;
  max-height: 100%;*/
  transition: .5s;
}
.list_index .item .thumb a:hover img {
  opacity: .9;
  transform: scale(1.08);
}
.list_index .item .detail {
  padding: 10px;
  background: url("../image/bg_list_index.png");
  background-size: cover;
}
.list_index .item .ttl {
    font-size: 112.5%;
    font-weight: normal;
    margin: 0;
    padding: 0;
    background: none;
}
.list_index .item .ttl::before { display: none; }
.list_index .item .ttl a {
  display: block;
  position: relative;
  color: #000;
  text-decoration: none;
  padding: 8px 10px 8px 29px;
}
.list_index .item .ttl a::before {
    content: "";
    position: absolute;
    top: 16px;
    left: 8px;
    border-right: 2px solid #0578CD;
    border-bottom: 2px solid #0578CD;
    width: 6px;
    height: 6px;
    transform: rotate(-45deg);
}
.list_index .item .lead {
    background: #fff;
    font-size: 93.75%;
    padding: 5px 10px;
    margin: 10px 0 0;
  line-height: 1.6;
}
.list_index ul {
  margin: 10px 0 0 10px;
}
.list_index li {}
.list_index li a {
  color: #000;
  text-decoration: none;
  font-size: 93.75%;
  display: block;
  padding: 5px 0 5px 22px;
  position: relative;
  border-bottom: 1px solid #BFBFBF;
  transition: .3s;
}
.list_index li a:hover {
  color: #0578CD;
}
.list_index li a::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 5px;
    border: 4px solid transparent;
    border-left: 7px solid #0578CD;
  transition: .3s;
}
.list_index li a:hover::before {
  left: 7px;
}
.list_index li a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 0;
  height: 2px;
  background: #0578CD;
  transition: .5s;
}
.list_index li a:hover::after {
  width: 100%;
}

/*--------- page_contact ---------*/
.page_contact {
  margin-top: 40px;
  border: 1px solid #BFBFBF;
}
.page_contact dt {
  font-size: 112.5%;
  font-weight: bold;
  padding: 10px 15px;
  border-bottom: 1px solid #BFBFBF;
  background: #F1F9FC;
  color: #000;
}
.page_contact dd {
  padding: 15px;
  font-size: 93.75%;
}

/*--------------------------------------------------
	list_topics
--------------------------------------------------*/
.list_topics {}
.list_topics li {}
.list_topics li + li {
  border-top: 1px solid #BFBFBF;
}
.list_topics a {
  display: block;
  color: #000;
  padding: 10px 5px;
  text-decoration: none;
}
.list_topics .date_wrap {
  display: block;
  margin-bottom: 5px;
}
.list_topics .date {
  font-size: 81.25%;
  display: inline-block;
  vertical-align: middle;
}
.topics_cat_tag {
    margin-left: 15px;
    display: inline-block;
    vertical-align: middle;
    font-size: 75%;
    background: url(../image/icon/tag_01.png) no-repeat 8px 7px;
    padding: 3px 13px 3px 25px;
}
.topics_cat_tag.tag001 { background-color: #E5F4FC; }
.topics_cat_tag.tag002 { background-color: #b8c8d4; }
.topics_cat_tag.tag003 { background-color: #EAFCE5; }
.topics_cat_tag.tag004 { background-color: #D4E4C2; }
.topics_cat_tag.tag005 { background-color: #d7c3be; }
.topics_cat_tag.tag006 { background-color: #9ed3ef; }
.topics_cat_tag.tag007 { background-color: #b5e4e3; }
.topics_cat_tag.tag008 { background-color: #FEF8D8; }
.topics_cat_tag.tag010 { background-color: #fee4d8; }
.list_topics .title {
  display: block;
}

/* topics_archive */
.topics_archive {
    text-align: right;
    margin-bottom: 15px;
}
.topics_archive p { font-size: 75%; margin-right: 10px; }
.topics_archive > * { display: inline-block; vertical-align: middle; }

/* .pager */
.pager {
  margin: 60px 0;
  padding: 50px 0;
  text-align: center;
  background: #F6F5EE;
}
.pager ul {
}
.pager ul li {
  font-size: 81.25%;
  margin: 3px;
  display: inline-block;
}
.pager a,
.pager span {
  color: #000;
  display: block;
  text-decoration: none;
  border: 1px solid #CCC;
  padding: 9px 16px;
  background-color: #fff;
}
.pager li.total span {
  border-color: #FFF;
}
.pager li.prev span,
.pager li.next span,
.pager li.first span,
.pager li.last span {
  border: 1px solid #ccc;
  color: #EDEDED;
}
.pager li.current span {
  color: #fff;
  background: #0176CD;
}
.pager a:hover {
  color: #0176CD;
  border: 1px solid #999;
  background: #EEEAD9;
}

/* link_prev_next */
.link_prev_next {
  text-align: center;
  margin-top: 40px;
}
.link_prev_next > li {
  display: inline-block;
}
.link_prev_next > li a {
  color: #915E33;
  border: 1px solid #bbb;
  display: block;
  padding: 12px 40px;
  text-decoration: none;
  transition: .3s;
  border-radius: 3px;
  font-size: 90%;
  font-weight: bold;
}
.link_prev_next > li a:hover {
  color: #fff;
  background-color: #915E33;
}

/*サムネイル付きトピックス*/
.list_thumb_topics {
    font-size: 0;
	margin-bottom: 30px;
}
.list_thumb_topics li {
    font-size: 16px;
	width: 31.66%;
	display: inline-block;
	margin: 0 2.5% 0 0;
	vertical-align: top;
}
.list_thumb_topics li:nth-child(3n) {
	margin-right: 0;
}
.list_thumb_topics .thumb {
    position: relative;
    padding-bottom: 66.66%;
    overflow: hidden;
    background-color: #F8F6F0;
  border: 1px solid #ccc;
}
.list_thumb_topics .thumb img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: auto;
}
.list_thumb_topics a { text-decoration: none; }
.list_thumb_topics .detail {
    font-size: 15px;
    color: #333;
    padding: 5px 0;
    border-bottom: 1px dotted #bbb;
}
.list_thumb_topics a:hover .detail { background-color: #f8f6f0; }

/*広報紙*/
.list_kouhou {
    font-size: 0;
	margin-bottom: 30px;
}
.list_kouhou .item {
    font-size: 16px;
	width: 31.66%;
	display: inline-block;
	margin: 0 2.5% 0 0;
	vertical-align: top;
	text-align: center;
	border: 1px solid #bbb;	
}
.list_kouhou .item a { display: block; padding: 5px; }
.list_kouhou .item a:hover { background-color: #f5f4ef; }
.list_kouhou .item:nth-child(3n) {
	margin-right: 0;
}
.list_kouhou .ttl a {
    font-size: 16px;
    font-weight: normal;
    text-decoration: none;
    color: #333;
}


/*---------------------------------------------------
	beta
---------------------------------------------------*/
#beta {
float: right;
width: 240px;
}

/*------ side_menu -----*/
.side_menu {
  margin-bottom: 30px;
}
.side_menu a {
  display: block;
  text-decoration: none;
  transition: .3s;
  position: relative;
}
.side_menu .level1 {}
.side_menu .level1 > a {
  color: #fff;
  font-weight: bold;
  font-size: 106.25%;
  text-shadow: 0 1px 3px rgba(0,0,0,.46);
  background: #82BCE8 url("../image/bg_side_menu_ttl.png") no-repeat;
  background-size: cover;
  padding: 20px 10px;
  margin-bottom: 10px;
  border-radius: 6px;
}
.side_menu .l2 {
  border-top: 1px solid #ccc;
}
.side_menu .level2 {
  border-bottom: 1px solid #ccc;
}
.side_menu .level2 > a {
  color: #000;
  font-size: 93.75%;
  padding: 15px 20px 15px 10px;
}
.side_menu .level2 > a::before {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  margin-top: -5px;
  width: 6px;
  height: 6px;
  border-right: 2px solid #9B9B9B;
  border-bottom: 2px solid #9B9B9B;
  transform: rotate(-45deg);
  transition: .3s;
}
.side_menu .level2 > a:hover,
.side_menu .level2 > .selected {
  color: #263286;
  background: #E5F1FA;
}
.side_menu .level2 > a:hover::before,
.side_menu .level2 > .selected::before {
  border-right-color: #0176CD;
  border-bottom-color: #0176CD;
}
.side_menu .l3 {
  padding: 10px 0 10px 5px;
  border-top: 1px solid #ccc;
}
.side_menu .level3 {
  border-bottom: 1px solid #ccc;
}
.side_menu .level3:first-child {
  border-top: 1px solid #ccc;
}
.side_menu .level3 > a {
  color: #000;
  font-size: 93.75%;
  padding: 7px 17px 7px 7px;
}
.side_menu .level3 > a::before {
    content: "";
    position: absolute;
    right: 2px;
    top: 50%;
    margin-top: -5px;
    border: 5px solid transparent;
    border-left: 7px solid #9B9B9B;
  transition: .3s;
}
.side_menu .level3 > a:hover,
.side_menu .level3 > .selected:hover{
  color: #263286;
  background: #E5F1FA;
}
.side_menu .level3 > a:hover::before,
.side_menu .level3 > .selected:hover::before{
  border-left-color: #0176CD;
}

.side_menu .l4 {
  padding: 10px 0 10px 5px;
  border-top: 1px solid #ccc;
}
.side_menu .level4 {
  border-bottom: 1px solid #ccc;
}
.side_menu .level4:first-child {
  border-top: 1px solid #ccc;
}
.side_menu .level4 > a {
  color: #000;
  font-size: 93.75%;
  padding: 7px 17px 7px 7px;
}
.side_menu .level4 > a::before {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  margin-top: -3px;
  width: 5px;
  height: 5px;
  border-right: 1px solid #9B9B9B;
  border-bottom: 1px solid #9B9B9B;
  transform: rotate(-45deg);
  transition: .3s;
}
.side_menu .level4 > a:hover,
.side_menu .level4 > .selected:hover{
  color: #263286;
}
.side_menu .level4 > a:hover::before,
.side_menu .level4 > .selected:hover::before{
  border-right-color: #0176CD;
  border-bottom-color: #0176CD;
}


/*----- side_blog_parts -----*/
.side_blog_parts {
  font-size: 100%;
}
.side_blog_parts a {
  color: #fff;
  font-weight: bold;
  font-size: 106.25%;
  text-shadow: 0 1px 3px rgb(0 0 0 / 46%);
  background: #82BCE8 url(../image/bg_side_menu_ttl.png) no-repeat;
  background-size: cover;
  padding: 20px 10px;
  margin-bottom: 10px;
  border-radius: 6px;
  display: block;
  text-decoration: none;
}
.side_blog_parts a:hover { color: #fff;}
.side_blog_list {
  border-top: 1px solid #ccc;
}
.side_blog_list li {
  border-bottom: 1px solid #ccc;
}
.side_blog_list a {
  color: #000;
    font-size: 93.75%;
    padding: 15px 20px 15px 10px;
      display: block;
    text-decoration: none;
    transition: .3s;
    position: relative;
}
.side_blog_list a::before {
      content: "";
    position: absolute;
    right: 8px;
    top: 50%;
    margin-top: -5px;
    width: 6px;
    height: 6px;
    border-right: 2px solid #9B9B9B;
    border-bottom: 2px solid #9B9B9B;
    transform: rotate(-45deg);
    transition: .3s;
}
.side_blog_list a:hover {
  color: #263286;
  background: #E5F1FA;
}
.side_blog_list a:hover::before  {
  border-right-color: #0176CD;
  border-bottom-color: #0176CD;
}

/*------bnr_side -------*/
.bnr_side li {
    font-size: 14px;
    text-align: center;
    margin: 0 0 10px;
}

.beta_link {}
.beta_link > li + li { margin-top: 10px; }
.beta_link a { display: block; }
.beta_link_sub {
  letter-spacing: -20px;
}
.beta_link_sub li {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  margin-right: 10px;
    width: 73px;
}
.beta_link_sub li:nth-child(3n) { margin-right: 0; }

/*---------------------------------------------------------------------
	event
---------------------------------------------------------------------*/
/* event_head */
.event_head { margin-bottom: 40px; }
.event_head > .section_ttl {
	color: #fff;
	font-size: 157.14%;
	font-weight: normal;
	background-color: #2980DE;
	padding: 12px;
	margin-bottom: 20px;
}
.event_head .fll { float: left; width: 770px; }
.event_head .flr { float: right; width: 400px; }

/* events_calendar */
.events_calendar .ui-widget {
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}
.events_calendar .ui-datepicker-inline {
	width: 100%;
	padding: 0;
	border: none;
}
.events_calendar .ui-datepicker-header {
	background: #E9F2FC;
	border: none;
	border-radius: 0;
	padding: 10px !important;
	margin-bottom: 20px;
  position: relative;
    text-align: center;
}
.events_calendar .ui-datepicker-title {
	font-size: 157.14%;
	font-weight: normal;
}

.event_head .ui-datepicker table {
    border: 1px solid #cccccc;
}
.events_calendar .ui-datepicker th {
	font-size: 16px;
	font-weight: normal;
	padding: 7px;
	border: 1px solid #cccccc;
	background-color: #FFFFD5;
}
.events_calendar .ui-datepicker td {
	border: 1px solid #cccccc;
	padding: 0;
	background: #F4F4F4;
}
.events_calendar .ui-state-default {
  display: block;
    border: none !important;
    font-size: 18px;
    text-align: center;
	padding: 25px 5px;
	background: none !important;
}
.events_calendar a.ui-state-default {
	color: #005999;
	text-decoration: underline;
	background: #fff !important;
  display: block;
}
.events_calendar a.ui-state-default.ui-state-hover {
    background-color: #C2F2FC !important;
}

.events_calendar .ui-datepicker .ui-datepicker-prev,
.events_calendar .ui-datepicker .ui-datepicker-next {
	color: #fff;
    height: auto;
    padding: 4px 15px;
    top: 15px;
    width: auto;
	background: #005999;
	font-weight: normal;
	cursor: pointer;
	text-align: center;
  position: absolute;
}
.events_calendar .ui-datepicker .ui-datepicker-prev-hover,
.events_calendar .ui-datepicker .ui-datepicker-prev { left: 15px; }
.events_calendar .ui-datepicker .ui-datepicker-next-hover,
.events_calendar .ui-datepicker .ui-datepicker-next { right: 15px; }

.events_calendar .ui-datepicker .ui-datepicker-prev-hover,
.events_calendar .ui-datepicker .ui-datepicker-next-hover {
	border: none;
	opacity: .8;
}

.events_calendar .ui-datepicker .ui-icon {
    background: none;
    height: auto;
    left: auto;
    margin: 0;
    position: relative;
    text-indent: 0;
    top: auto;
    width: auto;
}
.event_sidemenu .ui-datepicker-calendar { margin-bottom: 20px; }
.event_sidemenu .events_calendar .ui-datepicker-header {
	margin-bottom: 10px;
	padding: 5px !important;
}
.event_sidemenu .events_calendar .ui-datepicker-title {
    font-size: 114.28%;
}
.event_sidemenu .events_calendar .ui-datepicker .ui-datepicker-prev,
.event_sidemenu .events_calendar .ui-datepicker .ui-datepicker-next {
    font-size: 60%;
    padding: 4px 8px;
    top: 7px;
}
.event_sidemenu .events_calendar .ui-datepicker .ui-datepicker-prev-hover,
.event_sidemenu .events_calendar .ui-datepicker .ui-datepicker-prev { left: 7px; }
.event_sidemenu .events_calendar .ui-datepicker .ui-datepicker-next-hover,
.event_sidemenu .events_calendar .ui-datepicker .ui-datepicker-next { right: 7px; }
.event_sidemenu .events_calendar .ui-datepicker th,
.event_sidemenu .events_calendar .ui-state-default {
    font-size: 100%;
    padding: 7px 5px;
}

.ui-widget.ui-widget-content {
  z-index: 100 !important;
  display: none;
}
.ui-datepicker-title {
    text-align: center;
}
.ui-datepicker-calendar td {
  padding: 0;
  border: none;
}
.ui-button, .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, html .ui-button.ui-state-disabled:active, html .ui-button.ui-state-disabled:hover {
  display: block;
      text-decoration: none;
    text-align: center;
}


/* event_search */
.event_search {
	border: 1px solid #CCCCCC;
	background-color: #F6F6F6;
	border-radius: 6px;
	padding: 10px 20px 20px;
	margin-bottom: 15px;
}
.event_search > .ttl {
	color: #005999;
	font-size: 114.28%;
	font-weight: normal;
	padding: 3px 0 3px 24px;
	background: url(../../css/image/icon_search_02.png) no-repeat 0 5px;
	background-size: 20px auto;
}

.event_search .inner {
    display: table;
    width: 100%;
	font-size: 0;
}
.event_search input[type="text"] {
	font-size: 14px;
	border: 1px solid #cccccc;
	border-right: none;
    padding: 2px 5px;
    display: inline-block;
	vertical-align: middle;
	padding: 10px 5px;
	width: 305px;
	height: 40px;
	box-sizing: border-box;
}
#beta .event_search input[type="text"] {
  width: 148px;
}
.event_search .btn_submit {
	font-size: 14px;
    background: rgba(0, 0, 0, 0) url("../../css/image/icon_search_03.png") no-repeat scroll center center;
	background-size: cover;
    border: none;
    height: 40px;
    text-indent: -9999px;
    width: 49px;
	display: inline-block;
	vertical-align: middle;
}

/*----- list -----*/
.now_events,
.now_events_02 { margin: 40px 0; }
.now_events .section_ttl {
	color: #fff;
    font-size: 157.14%;
    font-weight: normal;
    margin-bottom: 20px;
    padding: 12px;
	background-color: #FF9200;
}
.coming_events {}
.coming_events_02 { margin: 40px 0; }
.coming_events .section_ttl {
	color: #fff;
    font-size: 157.14%;
    font-weight: normal;
    margin-bottom: 20px;
    padding: 12px;
	background-color: #42C8EA;
}
.now_events_02 > .section_ttl a,
.coming_events_02 > .section_ttl a {
    position: absolute;
    right: 10px;
	top: 11px;
    font-size: 13px;
    text-decoration: none;
    color: #666;
    border-radius: 6px;
    display: inline-block;
    padding: 6px 10px;
	border: 1px solid #BDBDBD;
    background-image:-webkit-gradient(linear,50% 0%,50% 100%,color-stop(0, rgb(255,255,255)),color-stop(1, rgb(234,234,234)));
	background-image:-webkit-linear-gradient(-90deg,rgb(255,255,255) 0%,rgb(234,234,234) 100%);
	background-image:-o-linear-gradient(-90deg,rgb(255,255,255) 0%,rgb(234,234,234) 100%);
	background-image:-ms-linear-gradient(-90deg,rgb(255,255,255) 0%,rgb(234,234,234) 100%);
	background-image:linear-gradient(180deg,rgb(255,255,255) 0%,rgb(234,234,234) 100%);
	-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffffffff,endColorstr=#ffeaeaea,GradientType=0)";
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffffffff,endColorstr=#ffeaeaea,GradientType=0);
}
.now_events_02 > .section_ttl a:hover,
.coming_events_02 > .section_ttl a:hover {
	background-image:-webkit-gradient(linear,50% 0%,50% 100%,color-stop(0, rgb(234,234,234)),color-stop(1, rgb(255,255,255)));
	background-image:-webkit-linear-gradient(-90deg,rgb(234,234,234) 0%,rgb(255,255,255) 100%);
	background-image:-o-linear-gradient(-90deg,rgb(234,234,234) 0%,rgb(255,255,255) 100%);
	background-image:-ms-linear-gradient(-90deg,rgb(234,234,234) 0%,rgb(255,255,255) 100%);
	background-image:linear-gradient(180deg,rgb(234,234,234) 0%,rgb(255,255,255) 100%);
	-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffeaeaea,endColorstr=#ffffffff,GradientType=0)";
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffeaeaea,endColorstr=#ffffffff,GradientType=0);
}
.now_events_02 > .section_ttl a span,
.coming_events_02 > .section_ttl a span {
    background: url(../../css/image/icon_search_02.png) no-repeat 0 1px;
    background-size: 17px;
    padding-left: 20px;
}

#alpha .now_events_02 .section_ttl,
#alpha .coming_events_02 .section_ttl {
	background: #ff9200;
    border-radius: 6px 6px 0 0;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    padding: 12px;
    position: relative;
	border: none;
	margin: 0;
}
#alpha .coming_events_02 .section_ttl {
	background: #42c8ea;
}
.now_events_02 .inner,
.coming_events_02 .inner {
	border: 1px solid #ccc;
	border-top: none;
    padding: 20px 20px 10px;
}

/* recommend_event */
.recommend_event {
	border: 1px solid #CCCCCC;
	padding: 20px;
	border-radius: 6px;
}
.recommend_event > .section_ttl {
    background: url(/css/image/icon_star.png) no-repeat 0 2px;
	background-size: 20px auto;
    color: #01599a;
    font-size: 114.28%;
	font-weight: normal;
    padding: 0 0 4px 27px;
}
.recommend_event .item {
	padding-top: 15px;
	border-top: 1px dotted #43C8EA;
}
.recommend_event .item + .item { margin-top: 10px; }
.recommend_event a {
	display: block;
	text-decoration: none;
}
.recommend_event .thumb {
    float: left;
    margin: 0 10px 10px 0;
    overflow: hidden;
    padding-bottom: 58px;
    position: relative;
    width: 80px;
}
.recommend_event .thumb img {
	position: absolute;
    top: -100%;
    left: -100%;
    right: -100%;
    bottom: -100%;
    margin: auto;
    min-height: 100%;
    width: auto;
    min-width: 100%;
    width: 100%;
}

.recommend_event .detail {
    overflow: hidden;
}

.recommend_event .tag { margin-bottom: 5px; }
.recommend_event .tag span {
    background-color: #42c8ea;
    border-radius: 4px;
    color: #fff;
    display: block;
    font-size: 85.71%;
    padding: 2px 5px;
    text-align: center;
}
.recommend_event .tag .tag_now { background-color: #FF9200; }
.recommend_event .ttl {
    font-size: 92.85%;
    font-weight: normal;
    text-decoration: underline;
}

/* event_list */
.event_tabs #tab_menu { margin-bottom: 30px; }
.event_tabs #tab_menu li {
    float: left;
    text-align: center;
    width: 480px;
}
.event_tabs #tab_menu li:first-child { margin-right: 20px; }
.event_tabs #tab_menu a {
    background: #efffbf;
    color: #333333;
    display: block;
    font-size: 128.57%;
    text-decoration: none;
	position: relative;
	padding: 15px 10px;
}
.event_tabs #tab_menu a:hover { background-color: #E4FF93; }
.event_tabs #tab_menu .actif a {
    background-color: #01599a;
    color: #fff;
	cursor: default;
}
.event_tabs #tab_menu .actif a::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -20px;
	width: 0;
	height: 0;
	border: 10px solid transparent;
	border-top: 10px solid #01599a;
	margin-left: -10px;
}
.event_tabs #tab_menu .actif a:hover {}
.event_tabs #tab_menu .actif a:hover::after {}

.event_list {}
.event_list .item {
    border: 1px solid #ccc;
    border-radius: 8px;
    margin-bottom: 20px;
	overflow: hidden;
}
.event_list a {
	text-decoration: none;
    display: block;
    padding: 20px 40px 20px 20px;
    position: relative;
}
.event_list a:hover { background-color: #F5FAFC; }
.event_list a::before {
    background: #333333 url(../../css/image/icon_arrow_02.png) no-repeat center center;
	background-size: 11px auto;
    content: "";
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 30px;
    z-index: 1;
}
.event_list a:hover::before { background-color: #01599a; }

.event_list .thumb {
    float: left;
	width: 200px;
	height: 145px;
    overflow: hidden;
    position: relative;
    margin-right: 30px;
	background-color: #fff;
}
.event_list .thumb img {
	position: absolute;
    top: -100%;
    left: -100%;
    right: -100%;
    bottom: -100%;
    margin: auto;
    min-height: 100%;
    width: auto;
    min-width: 100%;
    width: 100%;
	transition: .3s;
    -webkit-transition: .3s;
}
.event_list a:hover .thumb img {
	transform: scale(1.1);
	-webkit-transform: scale(1.1);
	opacity: .9;
}

.event_list .detail { overflow: hidden; }
.event_list .end_text {
    color: #fff;
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 100%;
    background-color: #D90000;
    padding: 5px 10px;
    display: inline-block;
}
.event_list .tag + .end_text { margin-top: -5px; }
.event_list .ttl {
	font-size: 142.85%;
	font-weight: bold;
	text-decoration: underline;
  margin: 10px 0;
	line-height: 1.5;
}
.event_list .area {
	color: #666666;
    font-size: 100%;
    padding-left: 20px;
    background: url(../../css/image/icon_area.png) no-repeat 0 3px;
    background-size: 13px;
}
.event_list .time {
	color: #666666;
    font-size: 100%;
    padding-left: 20px;
    background: url(../../css/image/icon_time_02.png) no-repeat 0 5px;
    background-size: 13px;
}
.event_list .dates {
	color: #666666;
    font-size: 100%;
    padding-left: 20px;
    background: url(../../css/image/icon_calendar_03.png) no-repeat 0 3px;
    background-size: 14px;
	margin-top: 5px;
}

/* event_list_02 */
.event_list_02 {}
.event_list_02 .item {
	float: left;
	width: 480px;
	border: 1px solid #CCCCCC;
	border-radius: 4px;
	margin: 0 20px 20px 0;
	box-sizing: border-box;
	overflow: hidden;
}
.event_list_02 .item:nth-child(2n) { margin-right: 0; }
.event_list_02 .item a {
    display: block;
	text-decoration: none;
    padding: 15px 20px 20px;
}
.event_list_02 .item a:hover { background-color: #F5FAFC; }
.event_list_02 .time {
	color: #000;
	background: url(../../css/image/icon_calendar.png) no-repeat 0 0;
	background-size: 24px;
	border-bottom: 1px dashed #42C8EA;
	padding: 2px 0 10px 35px;
	margin-bottom: 20px;
}
.event_list_02 .thumb {
    float: right;
    width: 120px;
	height: 87px;
	position: relative;
	overflow: hidden;
	margin-left: 10px;
}
.event_list_02 .thumb img {
	position: absolute;
    top: -100%;
    left: -100%;
    right: -100%;
    bottom: -100%;
    margin: auto;
    min-height: 100%;
    width: auto;
    min-width: 100%;
    width: 100%;
	transition: .3s;
    -webkit-transition: .3s;
}
.event_list_02 .detail { overflow: hidden; }
.event_list_02 .tag { margin-bottom: 10px; }
.event_list_02 .tag span {
    background-color: #e9e9e9;
    border-radius: 4px;
    color: #000;
    display: inline-block;
    font-size: 92.85%;
    margin-right: 5px;
    padding: 3px 10px 2px;
    vertical-align: top;
}
.event_list_02 .tag .tag_bosyu { color: #fff; background-color: #2980DE; }

.event_list_02 .item .ttl {
	font-weight: normal;
	font-size: 121.42%;
	text-decoration: underline;
}

.event_list_03 {}
.event_list_03 .item {
    float: left;
    margin: 0 20px 20px 0;
    width: 285px;
}
.event_list_03 .item:nth-child(4n) { margin-right: 0; }
.event_list_03 a {
    border: 1px solid #ccc;
    border-radius: 6px;
    display: block;
    overflow: hidden;
    padding: 10px;
    text-decoration: none;
}
.event_list_03 .item a:hover { background-color: #F5FAFC; }
.event_list_03 .thumb {
    margin-bottom: 10px;
    overflow: hidden;
    padding-bottom: 70%;
    position: relative;
}
.event_list_03 .thumb img {
    bottom: -100%;
    left: -100%;
    margin: auto;
    min-height: 100%;
    min-width: 100%;
    opacity: 1 !important;
    position: absolute;
    right: -100%;
    top: -100%;
    width: 100%;
}
.event_list_03 .item .ttl {
  font-size: 107.69%;
  font-weight: bold;
  text-decoration: underline;
  margin-top: 10px;
}
.event_list_03 .area {
    background: rgba(0, 0, 0, 0) url("../../css/image/icon_area.png") no-repeat scroll 0 3px / 13px auto;
    color: #666666;
    font-size: 100%;
    padding-left: 20px;
	margin-top: 5px;
}
.event_list_03 .date {
    background: rgba(0, 0, 0, 0) url(../../css/image/icon_calendar_03.png) no-repeat scroll 0 4px / 13px auto;
    color: #666666;
    font-size: 100%;
    padding-left: 20px;
	margin-top: 5px;
}
.event_list_03 .time {
    background: rgba(0, 0, 0, 0) url("../../css/image/icon_time_02.png") no-repeat scroll 0 5px / 13px auto;
    color: #666666;
    font-size: 100%;
    padding-left: 20px;
	margin-top: 5px;
}

.event_list_04 {}
.event_list_04 .item {
	float: left;
	margin: 0 20px 20px 0;
	width: 224px;
}
.event_list_04 .item:nth-child(5n) { margin-right: 0; }
.event_list_04 a {
    border: 1px solid #ccc;
    border-radius: 6px;
    display: block;
    overflow: hidden;
    padding: 10px;
    text-decoration: none;
}
.event_list_04 .item a:hover { background-color: #F5FAFC; }
.event_list_04 .thumb {
    margin-bottom: 10px;
    overflow: hidden;
    padding-bottom: 70%;
    position: relative;
}
.event_list_04 .thumb img {
    bottom: -100%;
    left: -100%;
    margin: auto;
    min-height: 100%;
    min-width: 100%;
    opacity: 1 !important;
    position: absolute;
    right: -100%;
    top: -100%;
    width: 100%;
}
.event_list_04 .item .ttl {
  font-size: 100%;
  font-weight: bold;
  text-decoration: underline;
  margin-top: 10px;
}
.event_list_04 .time {
    background: rgba(0, 0, 0, 0) url("../../css/image/icon_calendar.png") no-repeat scroll 0 1px / 16px auto;
    color: #000;
    font-size: 90%;
    line-height: 1.5;
    margin-top: 10px;
    padding: 0 0 0 23px;
}

/* event_list_05, event_list_06 */
.event_list_05 .item {
    float: left;
    margin: 0 20px 25px 0;
    width: 199px;
}
.event_list_05 .item:nth-child(3n) {
    margin-right: 0;
}
#alpha .event_list_05 .item .ttl {
    background: none;
    color: inherit;
    font-size: 107.69%;
    font-weight: bold;
    margin: 0;
    padding: 0;
    text-decoration: underline;
}

.event_list_06 .item {
    float: left;
    margin: 0 20px 25px 0;
    width: 144px;
}
.event_list_06 .item:nth-child(4n) {
    margin-right: 0;
}
#alpha .event_list_06 .item .ttl {
    background: none;
    color: inherit;
    font-size: 100%;
    font-weight: bold;
    margin: 0;
    padding: 0;
    text-decoration: underline;
}

.event_list_05 .item a,
.event_list_06 .item a {
    display: block;
    position: relative;
    text-decoration: none;
}
.event_list_05 .item .thumb,
.event_list_06 .item .thumb {
    margin-bottom: 10px;
    overflow: hidden;
    padding-bottom: 70%;
    position: relative;
}
.event_list_05 .item .thumb img,
.event_list_06 .item .thumb img {
    bottom: -100%;
    left: -100%;
    margin: auto;
    min-height: 100%;
    min-width: 100%;
    opacity: 1 !important;
    position: absolute;
    right: -100%;
    top: -100%;
    width: 100%;
}
.event_list_05 .tag,
.event_list_06 .tag {
    left: 7px;
    position: absolute;
    top: 7px;
}
.event_list_05 .tag span,
.event_list_05 .tag span{
    background-color: #e9e9e9;
    border-radius: 4px;
    color: #000;
    display: inline-block;
    font-size: 11px;
    padding: 3px 6px;
    vertical-align: top;
}
.event_list_05 .tag .tag_bosyu,
.event_list_06 .tag .tag_bosyu{
    background-color: #2980de;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.5);
    color: #fff;
}
.event_list_05 .date,
.event_list_06 .date {
    background: url("../image/icon/date_01.png") no-repeat 0 1px/ 18px auto;
    color: #000;
    font-size: 90%;
    line-height: 1.5;
    margin-top: 10px;
    padding: 0 0 0 23px;
}
.event_list_05 .time,
.event_list_06 .time {
    background: rgba(0, 0, 0, 0) url("../../css/image/icon_time_02.png") no-repeat scroll 0 1px / 16px auto;
    color: #000;
    font-size: 90%;
    line-height: 1.5;
    margin-top: 10px;
    padding: 0 0 0 23px;
}

/* event_pick */
.event_pick {
    background-color: #E9F2FC;
    padding: 12px;
    margin-bottom: 20px;
	position: relative;
}
.event_pick .ttl {
	text-align: center;
	font-weight: bold;
	font-size: 157.14%;
}
.event_pick .icon_calendar {
    position: absolute;
    top: 15px;
}
.event_pick .icon_calendar a {
	display: block;
	text-align: center;
	color: #fff;
	font-size: 107.14%;
	text-decoration: none;
	background: #FF9200 url(../../css/image/icon_calendar_02.png) no-repeat 12px center;
	background-size: 16px;
	border-radius: 4px;
	padding: 4px 12px 3px 35px;
}
.event_pick ul {
    position: absolute;
    right: 12px;
    top: 15px;
}
.event_pick ul li {
    display: inline-block;
    vertical-align: middle;
}
.event_pick ul a,
.event_pick ul span {
	color: #fff;
	font-size: 114.28%;
	text-decoration: none;
	display: block;
	border-radius: 4px;
	background-color: #CCCCCC;
	padding: 3px 7px 2px;
}

.event_pick ul a { background-color: #005999; }
.event_pick a:hover { opacity: .8; }

/*---------------------------------------------------------------------
	faq
---------------------------------------------------------------------*/
.faq_list dl dt {
    color: #1F1F1F;
    font-size: 112.5%;
    font-weight: bold;
    line-height: 1.2;
    padding: 15px;
    padding-left: 40px;
    margin: 0 0 10px;
    background: #FEEDF8;
    position: relative;
}
.faq_list dl dt::before {
  content: "Q";
  font-size: 130%;
  color: #E62F7F;
      position: absolute;
    left: 10px;
    top: 7px;
}
.faq_list dl dd {
	padding: 0 0 20px 40px;
	margin: 0 0 20px;
	border-bottom: 1px dotted #ccc;
  position: relative;
}
.faq_list dl dd::before {
    content: "A";
    color: #0B66D7;
    position: absolute;
    left: 11px;
    top: -8px;
    font-size: 150%;
    font-weight: bold;
}


/*----- detail -----*/
.event_detail_head {
    background-color: #FBFBFB;
    padding: 10px 10px 0;
    margin-bottom: 20px;
}
.event_detail_head li {
    display: inline-block;
    vertical-align: top;
    background: no-repeat 0 1px;
    background-size: 19px;
    padding-left: 25px;
	margin-right: 15px;
	margin-bottom: 10px;
}
.event_detail_head .dates { background-image: url(../../css/image/icon_calendar.png); }
.event_detail_head .time { background-image: url(../../css/image/icon_time.png); }
.event_detail_head .area {
	background-image: url(../../css/image/icon_area_02.png);
	background-size: 16px;
    padding-left: 22px;
}

.event_end_text {
    background: #ffff75;
    color: red;
    text-align: center;
    padding: 10px;
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 120%;
}
.event_announce {
  color: #D80000;
  font-size: 112.5%;
  background: #FFFFF5;
  border: 3px solid #D80000;
  padding: 20px;
  margin-bottom: 30px;
}

.event_tag { letter-spacing: -20px; }
.event_tag span {
  letter-spacing: normal;
  background-color: #e9e9e9;
  border-radius: 4px;
  color: #000;
  display: inline-block;
  font-size: 81.25%;
  margin: 0 5px 5px 0;
  padding: 3px 10px 2px;
  vertical-align: top;
}
.event_tag .tag_bosyu { color: #000; background: #FFD83D; }
.event_tag .tag_now { color: #fff; background: #FF9200; }
.event_tag .tag_comingsoon { color: #fff; background: #333; }
.event_tag .tag_event_type_01 { color: #fff; background: #2AB9C6; }
.event_tag .tag_event_type_02 { color: #fff; background: #48B43C; }

.page_ttl_event {
  font-weight: normal;
  font-size: 200%;
  border-bottom: 2px solid #DDDDDD;
  padding-bottom: 10px;
  margin: 20px 0 25px;
}

.event_slide {
    border-bottom: 2px solid #dddddd;
    margin-bottom: 30px;
    padding-bottom: 30px;
}
.event_slide li { position: relative; }
.event_slide img { width: 100%; }
.event_slide .caption {
    background: rgba(0,0,0,.8);
    display: block;
    color: #fff;
    padding: 10px;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    font-size: 90%;
}
#event_slider_thumb {
  margin-top: 20px;
  letter-spacing: -20px;
  text-align: center;
}
#event_slider_thumb .item {
  display: inline-block;
  vertical-align: top;
  width: 120px;
  margin: 0 5px;
  border:4px solid #fff;
  position: relative;
}
#event_slider_thumb .thumbnail-current {
 border: 4px solid #2980de; 
}
#event_slider_thumb .thumbnail-current::before {
    content: "";
    position: absolute;
    left: 50%;
    top: -20px;
    margin-left: -5px;
    border: 5px solid transparent;
    border-bottom: 11px solid #2980de;
}

/* event_date_text */
#alpha .event_date_text {
	color: #000;
	font-size: 12px;
	font-size: 1.2rem;
	font-weight: bold;
	margin-top: 10px;
}
/* #alpha .event_list .ttl_txt a:link { color: #333; }
#alpha .event_list .ttl_txt a:hover,
#alpha .event_list .ttl_txt a:visited:hover { color: #FF3F00; }
#alpha .event_list .ttl_txt a:visited { color: #888; } */

#alpha .event_detail .event_date_text {
	color: #D90000;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	margin: 5px 0 15px;
}

.event_sidemenu .section_ttl {
    background-color: #2980de;
    border-radius: 6px 6px 0 0;
    color: #fff;
    font-size: 114.28%;
    font-weight: normal;
    margin-bottom: 10px;
    padding: 10px 5px;
    text-align: center;
}

.btn_back_event {
	margin: 50px auto;
	padding-top: 40px;
	text-align: center;
	border-top: 2px solid #ccc;
}
.btn_back_event a {
    background-color: #F6F6F6;
    color: #005999;
    text-decoration: none;
    border: 1px solid #CCCCCC;
    border-radius: 4px;
    padding: 13px;
    display: inline-block;
    text-align: center;
    width: 80%;
    max-width: 300px;
    box-sizing: border-box;
	transition: .3s;
	-webkit-transition: .3s;
}
.btn_back_event a:hover {
	color: #fff;
	background-color: #005999;
}



/*---------------------------------------------------------------------
	gallery　フォトアルバム
---------------------------------------------------------------------*/
.list_gallery {
    letter-spacing: -.5em;
}
.list_gallery .item {
    letter-spacing: normal;
    display: inline-block;
    vertical-align: top;
    margin: 0 2.56% 2.56% 0;
    width: 31.53%;
}
.list_gallery .item:nth-child(3n) {
    margin-right: 0;
}
.list_gallery .item a {
	color: #000;
	display: block;
	position: relative;
}
.list_gallery .thumb {
  position: relative;
  padding-bottom: 75%;
  overflow: hidden;
  background-color: #F8F6F0;
}
.list_gallery .thumb img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: auto;
}
.list_gallery .detail {
    color: #fff;
    position: absolute;
    left: 0;
    bottom: 0;
    background: rgba(0,0,0,.6);
    padding: 5px 10px;
    width: 100%;
}

.list_gallery .detail dl {}
.list_gallery .detail .date {
    font-size: 90%;
    opacity: .9;
}
.list_gallery .detail .ttl {
  font-size: 110%;
}
/* gallery_detail */
.gallery_detail_head { margin-bottom: 30px; }
.gallery_detail_head .date {
	font-size: 17px;
	text-align: center;
}
.gallery_detail_head .ttl {
	font-size: 20px;
	font-weight: normal;
	text-align: center;
}
.gallery_detail_head .content {
	text-align: center;
	margin-top: 20px;
}
/*---------------------------------------------------------------------
	contact
---------------------------------------------------------------------*/
.mail_form {
  border: 8px solid #005999;
  margin: 0 auto;
  padding: 22px;
  background: #fafafa;
}
.mail_form form {
  margin: 0 auto;
}
.mail_form form dl {
  display: table;
  width: 100%;
  margin-bottom: 30px;
  padding: 0 20px;
}
.mail_form form dt {
  width: 30%;
  display: table-cell;
  vertical-align: top;
  font-size: 93.75%;
  padding-right: 10px;
  padding-top: 12px;
}
.mail_form form dd {
  display: table-cell;
  vertical-align: top;
}
.mail_form form .bg_on {
  background-color: #ececec;
  padding: 12px;
}
.mail_form form .bg_on label {
  /*width: 20%;*/
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
.mail_form form .border_on {
  border: 1px solid #CCCCCC;
  padding: 12px;
}
.mail_form.confirm_list dd {
  background-color: #fff;
  border: 1px solid #005999;
  padding: 12px;
  word-break: break-all;
}
.mail_form .btn_list {
  text-align: center;
  margin: 20px auto;
}
.mail_form .required {
  position: relative;
    padding-right: 60px;
}
.mail_form .required::before {
    content: "必須";
    color: #fff;
    background: #e20000;
    font-size: 80%;
    border-radius: 3px;
    padding: 2px 9px;
    position: absolute;
    right: 10px;
}
.mail_form .error {
  color: #d71618;
  font-size: 13px;
}
.form_errors {
    color: #d80000;
    border: 5px solid #e69898;
    text-align: left;
    padding: 20px;
    background: #fafafa;
    margin-bottom: 20px;
}
.mail_form input,
.mail_form button,
.mail_form textarea,
.mail_form select {
  margin: 0;
  font-size: 16px;
  padding: 12px;
}
.mail_form input:-ms-input-placeholder {
 color: #808080;
}
.mail_form select,
.mail_form textarea,
.mail_form input[type="tel"],
.mail_form input[type="text"],
.mail_form input[type="email"],
.mail_form input[type="password"]{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0;
  outline: none;
  width: 100%;
  background-color: #fff;
  border: 1px solid #cacaca;
}
.mail_form input.small {
  width: 27%;
}
.mail_form input[type="file"] {
  font-size: 16px;
}
.mail_form input[type="radio"] {
  margin-right: 5px;
  padding: 5px;
}
.mail_form input[type="checkbox"] {
  margin-right: 5px;
  padding: 5px;
}
.mail_form select {
  -webkit-appearance: menulist;
  -moz-appearance: menulist;
  appearance: menulist;
  background-color: #fff;
  border: 1px solid #cacaca;
  position: relative;
}
.mail_form .twin {
  font-size: 0;
}
.mail_form .twin input + input {
  margin-left: 3.44%;
}
.mail_form .twin input {
  width: 48.26%;
  display: inline-block;
}
.mail_form textarea {
  width: 100%;
  height: 150px;
  background-color: #fff;
  border: 1px solid #cacaca;
}
.mail_form input[type="text"]:focus,
.mail_form input[type="email"]:focus,
.mail_form textarea:focus {
  box-shadow: 0 0 7px #008CD6;
}
.btm_text {
  width: 69%;
  margin-left: auto;
}
.mail_form input[type="submit"] {
  color: #fff;
  padding: 1em 5em;
  background-color: #358FDD;
  border: none;
  border-radius: 0;
}
.mail_form input[type="submit"]:hover {
  background-color: #055FAD;
}
.mail_form input[type="reset"],
.mail_form input.back {
  color: #fff;
  padding: 0.6em 1em;
  background-color: #b5b5b5;
  border: none;
  border-radius: 0;
}
.mail_form input[type="reset"]:hover,
.mail_form input.back:hover {
  background-color: #555;
}
.mail_form .btn_backhome {
  color: #fff;
  padding: 0.6em 1em;
  background-color: #358FDD;
  text-decoration: none;
  border: none;
  border-radius: 0;
}
.mail_form .btn_backhome:hover {
  color: #fff;
  padding: 0.6em 1em;
  background-color: #b5b5b5;
}
.error_message {
  background-color: #ffffbb;
  border: 2px solid #df0000;
  color: #df0000;
  font-size: 120%;
  font-weight: bold;
  margin: 10px auto;
  padding: 10px 15px;
  list-style: disc outside;
    padding-left: 40px;
}

@media screen and (max-width: 768px) {
  .mail_form {
    padding: 12px;
    border-width: 4px;
  }
  .mail_form form dl {
    padding: 0 10px;
    margin-bottom: 15px;
  }
  .mail_form form dt {
    display: block;
    width: auto;
    text-align: left;
    margin: 0 0 10px;
    padding: 0;
  }
  .mail_form form dd {
    display: block;
    width: auto;
  }
  .mail_form input,
  .mail_form button,
  .mail_form textarea,
  .mail_form select {
    padding: 10px;
  }
  .mail_form input.small {
    width: 50%;
  }
  .mail_form input[type="submit"] {
    padding: 1em;
  }
  .btm_text {
    width: auto;
    text-align: center;
  }
}

/* btn_radio  btn_checkbox */
.btn_radio,
.btn_checkbox {
    display: inline-block;
    margin-right: 6px;
}
.btn_radio + label,
.btn_checkbox + label {
  background-color: #fff;
  border: 1px solid #358fdd;
  border-radius: 4px;
  cursor: pointer;
  display: inline-block;
  padding: 13px 20px 13px 10px;
  position: relative;
  margin-bottom: 5px;
}

.btn_radio.size_s + label,
.btn_checkbox.size_s + label {
	padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 10px;
}

 
@media (min-width: 1px) {
    .btn_radio,
    .btn_checkbox {
        display: none;
        margin: 0;
    }
    .btn_radio + label,
    .btn_checkbox + label {
        padding-left: 37px;
		color: #000;
	transition: all .2s;
	-webkit-transition: all .2s;
    }
	.btn_radio:checked + label,
    .btn_checkbox:checked + label {
		background-color: #cbe2f6;
        border-color: #358fdd;
	}
    .btn_radio + label::before,
    .btn_checkbox + label::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 10px;
         
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 18px;
        height: 18px;
        margin-top: -9px;
         
        background: #FFF;
    }
    .btn_radio + label::before {
        border: 1px solid #358fdd;
        border-radius: 30px;
    }
    .btn_checkbox + label::before {
        border: 1px solid #358fdd;
    }
    .btn_radio:checked + label::after,
    .btn_checkbox:checked + label::after {
        content: "";
        position: absolute;
        top: 50%;
         
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
    }
    .btn_radio:checked + label::after {
        left: 15px;
         
        width: 8px;
        height: 8px;
        margin-top: -4px;
         
        background: #358fdd;
        border-radius: 8px;
    }
    .btn_checkbox:checked + label::after {
        left: 12px;
         
        width: 16px;
        height: 8px;
        margin-top: -8px;
         
        border-left: 3px solid #358fdd;
        border-bottom: 3px solid #358fdd;
         
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}

.input_btn_list {
    letter-spacing: -.5em;
}

.input_btn_list li {
    letter-spacing: normal;
    display: inline-block;
    vertical-align: top;
    margin: 0 10px 10px 0;
}

.input_btn_list label {
    margin: 0 !important;
}

/*---------------------------------------------------------------------
	search
---------------------------------------------------------------------*/
.list_search_result {}
.list_search_result dl {}
.list_search_result dl + dl {
  margin-top: 30px;
  border-top: 1px dotted #ccc;
  padding-top: 30px;
}
.list_search_result dt {
  margin-bottom: 10px;
}
.list_search_result dt a {
    display: block;
    background: #fafafa;
    padding: 10px 15px;
}
.list_search_result dd {
  font-size: 90%;
  padding-left: 15px;
}
.list_search_result .url {
  margin-bottom: 5px;
  display: block;
  font-size: 90%;
  color: #666666;
}

/*---------------------------------------------------------------------
	sitemap
---------------------------------------------------------------------*/
.list_sitemap {}
.list_sitemap a:hover {
  opacity: .8;
}
.list_sitemap .level_1 > a {
    display: block;
    background: #ccc;
    background-size: 50px;
    text-decoration: none;
    color: #133775;
    font-size: 160%;
    padding: 12px 15px;
    position: relative;
    border-radius: 3px;
}
.list_sitemap .level_2 {
  margin-bottom: 20px;
}
.list_sitemap .level_3 + .level_2 {
  margin-top: 50px;
}
.list_sitemap .level_2 a {
  background: #01599A;
  color: #fff;
  display: block;
  font-weight: normal;
  font-size: 110%;
  padding: 10px 15px;
  text-decoration: none;
}

.list_sitemap .level_3 >li {
  font-size: 16px;
  display: inline-block;
  vertical-align: top;
  width: 49.16%;
  margin: 0 1.66% 1.66% 0;
}
.list_sitemap .level_3 >li:nth-child(2n) {
  margin-right: 0;
}
.list_sitemap .level_3 >li > a {
    border: 1px solid #ccc;
    display: block;
    text-decoration: none;
    padding: 12px;
    border-radius: 3px;
    color: #133775;
    background: #fafafa;
    position: relative;
}
.list_sitemap .level_3 >li > a::before {
    content: "";
    position: absolute;
    right: 9px;
    top: 50%;
    margin-top: -6px;
    border: 4px solid transparent;
    border-left: 6px solid #133775;
}

.list_sitemap .level_4,
.list_sitemap .level_5 {
  color: #4787ed;
  margin-top: 10px;
  list-style-type: disc;
  list-style-position: outside;
  margin-left: 36px;
}
.list_sitemap .level_4 {
  margin-left: 37px;
}
.list_sitemap .level_4 > li + li {
  margin-top: 5px;
}
.list_sitemap .level_5 {
    letter-spacing: -20px;
    margin-left: 6px;
    border-left: 4px dotted #ccc;
    padding-left: 7px;
}
.list_sitemap .level_5 li {
    display: inline-block;
    vertical-align: top;
    margin: 0 5px;
    letter-spacing: normal;
  font-size: 90%;
}
.list_sitemap .level_5 li::after {content: "/";margin: 0 7px;color: #ccc;}

/*---------------------------------------------------------------------
	kaiyohaku_page_contents
---------------------------------------------------------------------*/
.dl-line {
    border: 1px dotted #ccc;
    padding: 10px 15px;
}
.dl-line dt {
  color: #4486B6;
  font-weight: bold;
}
.dl-line dd {}
.dl-line dd + dt {
    margin-top: 10px;
    border-top: 1px dotted #ccc;
    padding-top: 10px;
}

/*----- page -- info -----*/
.dir_info .page_image {
  background: url("/userfiles/images/info/page_image.png") no-repeat center top / cover;
  background-attachment: fixed;
  margin-bottom: 20px;
  padding-bottom: 35.41%;
}
.list_index_info {
  letter-spacing: -20px;
}
.list_index_info li {
  background: url(../image/icon/list_index_info/bg.png);
  width: 290px;
  margin: 0 13px 13px 0;
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
}
.list_index_info li:nth-child(4n) { margin-right: 0; }
.list_index_info a {
  color: #01599A;
  text-decoration: none;
  text-align: center;
  display: block;
  border: 1px solid #BFBFBF;
  background: no-repeat center 40px;
  line-height: 1.3;
  padding: 110px 10px 20px;
}
.list_index_info .icon_01 { background-image: url("../image/icon/list_index_info/icon_01.png"); }
.list_index_info .icon_02 { background-image: url("../image/icon/list_index_info/icon_02.png"); }
.list_index_info .icon_03 { background-image: url("../image/icon/list_index_info/icon_03.png"); }
.list_index_info .icon_04 { background-image: url("../image/icon/list_index_info/icon_04.png"); }
.list_index_info .icon_05 { background-image: url("../image/icon/list_index_info/icon_05.png"); }
.list_index_info .icon_06 { background-image: url("../image/icon/list_index_info/icon_06.png"); }
.list_index_info .icon_07 { background-image: url("../image/icon/list_index_info/icon_07.png"); }
.list_index_info .icon_08 { background-image: url("../image/icon/list_index_info/icon_08.png"); }
.list_index_info .icon_09 { background-image: url("../image/icon/list_index_info/icon_09.png"); }
.list_index_info .icon_10 { background-image: url("../image/icon/list_index_info/icon_10.png"); }
.list_index_info .icon_11 { background-image: url("../image/icon/list_index_info/icon_11.png"); }
.list_index_info .icon_12 { background-image: url("../image/icon/list_index_info/icon_12.png"); }
.list_index_info .icon_13 { background-image: url("../image/icon/list_index_info/icon_13.png"); }
.list_index_info .icon_14 { background-image: url("../image/icon/list_index_info/icon_14.png"); }
.list_index_info .icon_15 { background-image: url("../image/icon/list_index_info/icon_15.png"); }
.list_index_info a:hover {
  border-color: #01599A;
  transition: .3s;
}

.flow_list {
  margin-bottom: 30px;
}
.flow_list li {
  color: #000;
    background: #D9F4FB;
    position: relative;
    text-align: center;
    padding: 10px;
    font-size: 110%;
}
.flow_list li + li { margin-top: 40px; }
.flow_list li + li::before {
  content: "";
  background: url("../image/icon/arrow_01.png") no-repeat 0 0;
  position: absolute;
  left: 50%;
  top: -30px;
  margin-left: -10px;
  width: 21px;
  height: 21px;
  transform: rotate(90deg);
}

.anchor_list {
  text-align: center;
  letter-spacing: -20px;
}
.anchor_list li {
    letter-spacing: normal;
    display: inline-block;
    vertical-align: top;
    margin: 0 10px 10px 0;
    width: 300px;
}
.anchor_list li:nth-child(3n) { margin-right: 0; }
.anchor_list li a {
    color: #000;
    text-decoration: none;
    display: block;
    background: #CAE6F3;
    padding: 10px 30px 10px 10px;
    position: relative;
    border-radius: 25px;
    font-size: 90%;
  transition: .3s;
}
.anchor_list li a:hover { opacity: .8; }
.anchor_list li a::before {
    content: "";
    width: 6px;
    height: 6px;
    border-right: 2px solid #0176CD;
    border-bottom: 2px solid #0176CD;
    position: absolute;
    right: 17px;
    top: 50%;
    margin-top: -6px;
    transform: rotate(45deg);
}

/*----- page -- info -----*/
.dir_inst .page_image {
  background: url("/userfiles/images/inst/page_image.png") no-repeat center top / cover;
  background-attachment: fixed;
  margin-bottom: 20px;
  padding-bottom: 35.41%;
}

/*----- page -- inst -----*/
.fade_slide .slick-slide img {
  max-width: inherit;
  width: 100%;
}
/* lead_inst */
.lead_inst {
  text-align: center;
  padding: 30px;
  margin-bottom: 20px;
  background: url("../image/bg_flag.png") no-repeat center 30px;
}
.lead_inst .inner {
  max-width: 1000px;
  margin: 0 auto;
}
.lead_inst .ttl {
    color: #0176CD;
    font-size: 225%;
    font-weight: bold;
    border-bottom: 2px solid #C6E4F7;
    padding-bottom: 10px;
    margin-bottom: 10px;
  position: relative;
}
.lead_inst .ttl br { display: none; }
.lead_inst .ttl::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -2px;
  width: 80%;
  height: 2px;
  margin-left: -40%;
  background: #19aed1;
background: -moz-linear-gradient(left, #19aed1 0%, #0176cd 27%, #0176cd 75%, #19aed1 100%);
background: -webkit-linear-gradient(left, #19aed1 0%,#0176cd 27%,#0176cd 75%,#19aed1 100%);
background: linear-gradient(to right, #19aed1 0%,#0176cd 27%,#0176cd 75%,#19aed1 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#19aed1', endColorstr='#19aed1',GradientType=1 );
}
.lead_inst .ttl + p {
  font-size: 112.5%;
}

/* ttl_inst */
.content1 .ttl_inst {
  color: #003A64;
  font-size: 175%;
  padding: 0;
  margin: 0;
  text-align: center;
  background: none;
  font-weight: bold;
  margin-bottom: 10px;
  line-height: 1.8;
}
.content1 .ttl_inst::before { display: none;}
.content1 .ttl_inst span {
  display: block;
  color: #CD0101;
  font-size: 57.14%;
}

/* list_inst_pickup */
.inst_pickup {
  padding: 20px 0 66px;
  margin-bottom: 40px;
  background: #CEE7F8 url(../image/top/bg_04.png);
  background-size: cover;
}
.list_inst_pickup .item {
  width: 960px;
  margin: 0 20px;
  background: #fff;
  display: table;
}
.list_inst_pickup .item .detail {
  display: table-cell;
  vertical-align: top;
  padding: 30px;
}
.list_inst_pickup .item .caption {
  color: #0176CD;
  position: relative;
  text-align: left;
  font-size: 100%;
  margin-top: 0;
  padding-top: 20px;
  margin-bottom: 10px;
}
.list_inst_pickup .item .caption::before {
  content: "";
  width: 63px;
  height: 4px;
  background: #CD0101;
  position: absolute;
  left: 0;
  top: 0;
}
.list_inst_pickup .item .ttl {
    background: none;
    padding: 0;
    font-size: 187.5%;
    margin: 0;
    border: none;
    margin-bottom: 20px;
}
.list_inst_pickup .item .text {
  font-size: 87.5%;
  line-height: 1.4;
  margin-bottom: 30px;
}
.list_inst_pickup .item .link a {
  color: #000;
  font-weight: bold;
  font-size: 93.75%;
  text-decoration: none;
  display: inline-block;
  border-bottom: dotted #000;
  padding-bottom: 5px;
  transition: .3s;
}
.list_inst_pickup .item .link a:hover {
  color: #CD0101;
  border-bottom-color: #CD0101;
}
.list_inst_pickup .item .thumb {
  display: table-cell;
  vertical-align: top;
  width: 61.66%;
}
.list_inst_pickup .item .thumb a {
  display: block;
  padding-bottom: 61.82%;
  position: relative;
}
.list_inst_pickup .item .thumb img {
  bottom: -100%;
    left: -100%;
    margin: auto;
    min-height: 100%;
    min-width: 100%;
    opacity: 1 !important;
    position: absolute;
    right: -100%;
    top: -100%;
    width: 100%;
    transition: .3s;
}
.list_inst_pickup .item .thumb a:hover img {
  opacity: .8;
}
.list_inst_pickup .prev-arrow {
    position: absolute;
    top: 150px;
    left: 20px;
    z-index: 10;
}
.list_inst_pickup .next-arrow {
    position: absolute;
    top: 150px;
    right: 20px;
    z-index: 10;
}
.list_inst_pickup .slick-dots {
  bottom: -50px;
    margin: 0;
}
.list_inst_pickup .slick-dots li {
  width: 16px;
  height: 16px;
}
.list_inst_pickup .slick-dots li button {
  width: 16px;
  height: 16px;
}
.list_inst_pickup .slick-dots li button:before {
  opacity: 1;
  background: #0176CD;
  border-radius: 50%;
}
.list_inst_pickup .slick-dots li.slick-active button:before {
  opacity: 1;
  background: #CD0101;
}


/* inst_map */
.inst_map { margin-bottom: 80px; }
.inst_map .inner {
  margin-top: 30px;
  padding-top: 43%;
  background: url("../image/inst_map.jpg") no-repeat 0 0;
  background-size: 100%;
}
.link_list_01 {
  margin-bottom: 25px;
  text-align: center;
}
.link_list_01 li {
  display: inline-block;
  vertical-align: top;
  margin: 0 7px 15px;
}
.link_list_01 a {
    color: #fff;
    font-weight: bold;
    display: block;
    text-decoration: none;
    border-radius: 25px;
    font-size: 112.5%;
    background: #000 url(../image/icon/arrow_04.png) no-repeat right 10px center;
    padding: 8px 50px 10px 20px;
  transition: .3s;
}
.link_list_01 a:hover {
  color: #fff;
  opacity: .9;
  transform: scale(1.1);
}
.link_list_01 .bg_01 { background-color: #5C7D42; }
.link_list_01 .bg_02 { background-color: #00A395; }
.link_list_01 .bg_03 { background-color: #DD6053; }
.link_list_01 .bg_04 { background-color: #0176CD; }
.link_list_01 .bg_05 { background-color: #006191; }

/* inst_bnrs */
.inst_bnrs {
  padding: 40px 40px 10px;
  background: url("../image/bg_fabric_01.png");
}
.inst_bnrs .inner {
  max-width: 1370px;
  margin: 0 auto;
  letter-spacing: -20px;
  text-align: center;
}
.inst_bnrs .inner li {
  letter-spacing: normal;
  width: 31.38%;
  margin: 0 2.91% 2.91% 0;
  display: inline-block;
  vertical-align: top;
  text-align: left;
}
.inst_bnrs .inner li:nth-child(3n) { margin-right: 0; }
.inst_bnrs .inner li a {
  display: block;
  background: #fff;
  padding: 10px;
  position: relative;
  text-decoration: none;
  color: #000;
  font-size: 125%;
  font-weight: bold;
}
.inst_bnrs .inner li .ttl {
    position: absolute;
    left: 10px;
    bottom: 10px;
    background: #fff url(../image/icon/arrow_05.png) no-repeat 5px 14px;
    padding: 5px 15px 5px 36px;
}

/*----- detail_page -----*/
/* page_ttl */
.dir_inst_detail .page_ttl {
  background: none;
  background: #ccc;
  padding: 0 15px;
  border-bottom: 1px solid #000;
  position: relative;
}
.dir_inst_detail .page_ttl::before {
  content: "";
  background: #fff;
  width: 50%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.dir_inst_detail .page_ttl span {
  position: relative;
  padding: 27px 0;
  background: #fff no-repeat right top;
  background-size: auto 100%;
}


.dir_kaiyo_bunkakan .page_ttl { background: url("../image/page_ttl_inst/bg_page_ttl_kaiyo_02.png"); border-bottom-color: #F5AD78; }
.dir_tropical .page_ttl { background: url("../image/page_ttl_inst/bg_page_ttl_dream_02.png"); border-bottom-color: #A6E964; }
.dir_midori .page_ttl { background: url("../image/page_ttl_inst/bg_page_ttl_tropical_03.png"); border-bottom-color: #8BE4A4; }
.dir_kyodo .page_ttl { background: url("../image/page_ttl_inst/bg_page_ttl_kyodo_02.png"); border-bottom-color: #E9E94F; }
.dir_churaumi .page_ttl { background: url("../image/page_ttl_inst/bg_page_ttl_churaumi_02.png"); border-bottom-color: #2980DE; }
.dir_beach .page_ttl { background: url("../image/page_ttl_inst/bg_page_ttl_beach_02.png"); border-bottom-color: #2980DE; }
.dir_hiroba .page_ttl { background: url("../image/page_ttl_inst/bg_page_ttl_hiroba_02.png"); border-bottom-color: #55B64F; }
.dir_okichan .page_ttl { background: url("../image/page_ttl_inst/bg_page_ttl_okichan_02.png"); border-bottom-color: #F9A4D7; }
.dir_restaurant .page_ttl { background: url("../image/page_ttl_inst/bg_page_ttl_restaurant_02.png"); border-bottom-color: #FEA33A; }

.dir_kaiyo_bunkakan .page_ttl span { background-image: url("../image/page_ttl_inst/bg_page_ttl_kaiyo.png"); }
.dir_tropical .page_ttl span { background-image: url("../image/page_ttl_inst/bg_page_ttl_dream.png"); }
.dir_midori .page_ttl span { background-image: url("../image/page_ttl_inst/bg_page_ttl_tropical.png"); }
.dir_kyodo .page_ttl span { background-image: url("../image/page_ttl_inst/bg_page_ttl_kyodo.png"); }
.dir_churaumi .page_ttl span { background-image: url("../image/page_ttl_inst/bg_page_ttl_churaumi.png"); }
.dir_beach .page_ttl span { background-image: url("../image/page_ttl_inst/bg_page_ttl_beach.png"); }
.dir_hiroba .page_ttl span { background-image: url("../image/page_ttl_inst/bg_page_ttl_hiroba.png"); }
.dir_okichan .page_ttl span { background-image: url("../image/page_ttl_inst/bg_page_ttl_okichan.png"); }
.dir_restaurant .page_ttl span { background-image: url("../image/page_ttl_inst/bg_page_ttl_restaurant.png"); }

/* inst_main_image */
.inst_main_image {
  margin-bottom: 40px;
}
.inst_main_image img { width: 100%; }

/* pr_movie */
.pr_movie {
  padding: 30px;
  background: url("../image/bg_fabric_02.jpg");
  text-align: center;
  margin: 60px auto 80px;
}
.pr_movie iframe[src*='youtube'] {
  width: 100%;
  max-width: 700px;
  height: 415px;
  margin: auto;
  border: 10px solid #fff;
  border-radius: 6px;
  box-shadow: 0 3px 6px rgba(0,0,0,.45);
}

/* inst_detail_pr */
.inst_detail_pr {
  padding: 70px 0 60px;
  background: url("../image/bg_aqua.jpg") no-repeat;
  background-size: cover;
  margin-bottom: 40px;
}
.inst_detail_pr_lead { margin-bottom: 60px; }
.inst_detail_pr_lead .ttl {
    color: #006191;
    font-weight: bold;
    font-size: 212.5%;
    font-family: 'Noto Serif JP', serif;
    background: none;
    text-align: center;
    margin: 0 0 20px;
    padding: 0;
}
.inst_detail_pr_lead .ttl::before { display: none; }
.inst_detail_pr_lead p {
  text-align: center;
  font-size: 112.5%;
}

.inst_thumb_list {
  margin-bottom: 60px;
}
.inst_thumb_list .item {
  display: flex;
  align-items: center;
}
.inst_thumb_list .item:nth-child(odd) {
  flex-direction: row-reverse;
}
.inst_thumb_list .item + .item {
  margin-top: 60px;
}
.inst_thumb_list .thumb {
  flex-shrink: 0;
  width: 56.33%;
}
.inst_thumb_list .thumb_l {
  margin-right: 30px;
}
.inst_thumb_list .thumb_r {
  margin-left:30px;
}
.inst_thumb_list .detail {
  padding: 15px;
  font-size: 137.5%;
}
.inst_thumb_list .link { margin-top: 30px; }
.inst_thumb_list .link a {
  font-size: 68.18%;
  display: inline-block;
  color: #fff;
  background: #0176CD;
  min-width: 240px;
  position: relative;
  text-decoration: none;
  border-radius: 25px;
  padding: 6px;
  padding-right: 20px;
  text-align: center;
  transition: .3s;
}
.inst_thumb_list .link a:hover {
  color: #fff;
  background: #cd0101;
}
.inst_thumb_list .link a::before {
    content: "";
    position: absolute;
    right: 6px;
    top: 50%;
    margin-top: -5px;
    border: 5px solid transparent;
    border-left: 7px solid #fff;
}
.inst_sub_image {}
.inst_sub_image img { width: 100%; }


/*ビーチ・遊具ご利用状況*/
.btn_beach_info {
    display: inline-block;
    color: #fff !important;
    font-size: 150%;
    font-weight: bold;
    text-decoration: none !important;
    background: #00A3D9 url(../image/top/top_info_navi_02.png) no-repeat 20px center;
    padding: 20px 45px 20px 95px;
    border-radius: 5px;
	transition: .3s;
}
.btn_beach_info:hover {
	color: #fff;
	text-decoration: none;
	background-color: #006191;
}

.btn_play_info {
    display: inline-block;
    color: #fff !important;
    font-size: 150%;
    font-weight: bold;
    text-decoration: none !important;
    background: #019797 url(../image/top/top_info_navi_03.png) no-repeat 20px center;
    padding: 20px 45px 20px 95px;
    border-radius: 5px;
	transition: .3s;
}
.btn_play_info:hover {
	color: #fff;
	text-decoration: none;
	background-color: #077c7c;
}

#pop_beach_info,
#pop_play_info {
	background: #fff;
	height: 100%;
}
#pop_beach_info .ttl,
#pop_play_info .ttl {
	text-align: center;
	color: #fff;
	font-size: 162.5%;
	background: #0176CD;
	padding: 12px 10px;
}
#pop_beach_info .inner,
#pop_play_info .inner {
	max-width: 800px;
	margin: 20px auto;
}
.playground_list {
	margin-top: 20px;
}
.playground_list  .item {
	display: table;
	width: 100%;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #ccc;
}
.playground_list .thumb {
	display: table-cell;
	vertical-align: top;
	width: 220px;
}
.playground_list .detail {
	display: table-cell;
	vertical-align: top;
	padding-left: 20px;
}
.playground_list .spot_ttl {
	background: #E5F1FA;
	font-size: 125%;
	margin-bottom: 15px;
	padding: 10px 15px;
	font-weight: normal;
}
.playground_list .status { letter-spacing: -20px; }
.playground_list .status li { letter-spacing: normal; }

.playground_list .status.type_02 li {
	width: 270px;
	display: inline-block;
	vertical-align: top;
}
.playground_list .status.type_02 li:first-child { margin-right: 20px; }

.playground_list .status strong {
	display: block;
	background: #F0F4F6;
	font-size: 125%;
	font-weight: bold;
	border-top: 1px solid;
	padding: 7px 15px;
}
.playground_list .status strong.ok {
	color: #4E7BD0;
	border-top-color: #4E7BD0;
}
.playground_list .status strong.ok::before {
	content: "○：";
}
.playground_list .status strong.ichibu_ng {
	color: #D8A64B;
	border-top-color: #D8A64B;
}
.playground_list .status strong.ichibu_ng::before {
	content: "△：";
}
.playground_list .status strong.ng {
	color: #E65050;
	border-top-color: #E65050;
}
.playground_list .status strong.ng::before {
	content: "×：";
}

.playground_list .status .note {
	color: #585858;
	font-size: 93.75%;
	display: block;
	margin: 10px 0 0;
	padding-left: 24px;
	background: url("../image/top/playground_list_note.png") no-repeat 0 5px;
}
.playground_list .status .close_ttl {
	display: block;
	color: #E65050;
	font-weight: bold;
	font-size: 125%;
	padding-left: 15px;
}
.playground_list .status .close_note {
	display: block;
	color: #686868;
	font-size: 87.5%;
	padding-left: 15px;
}


/* inst_program */
.inst_program {
  display: none;
  background: url("../image/bg_flag.png") no-repeat center top;
}
.inst_program .ttl {
  color: #003A64;
    font-size: 187.5%;
    text-align: center;
    margin-bottom: 40px;
      padding-top: 42px;
  font-weight: bold;
    background: url(../image/top/icon_program.png) no-repeat center top;
}
.inst_program .ttl::before { display: none; }
.inst_program ul {
  text-align: center;
  letter-spacing: -20px;
}
.inst_program li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  width: 330px;
  margin: 0 10px 20px;
  text-align: left;
}
.inst_program li img { width: 100%; }

/* inst_event */
.inst_event {
    margin: 50px auto;
    text-align: center;
}
.inst_event_list {
  padding: 40px 90px 30px;
  margin-bottom: 80px;
  background: #CEE7F8 url("../image/top/bg_04.png");
  background-size: cover;
}
.inst_event_list .ttl {
      color: #003A64;
    font-size: 187.5%;
    text-align: center;
    margin-bottom: 35px;
  padding-top: 30px;
  background: url("../image/top/icon_event.png") no-repeat center top;
}
.inst_event_list li {
  margin: 0 20px; 
}
.inst_event_list li a {
  color: #000;
  display: block;
  text-decoration: none;
  background: #fff;
  border: 1px solid #BFBFBF;
  padding: 10px;
}
.inst_event_list li .thumb {
  margin-bottom: 5px;
  position: relative;
  overflow: hidden;
  padding-bottom: 72.1%;
}
.inst_event_list .tag { margin-bottom: 5px; }
/*.inst_event_list .tag_now {
    color: #fff;
    background: #FF9200;
    font-size: 1.2rem;
    padding: 1px 10px;
    display: inline-block;
}
.inst_event_list .tag_comingsoon {
    color: #fff;
    background: #333;
    font-size: 1.2rem;
    padding: 1px 10px;
    display: inline-block;
}
.inst_event_list li .tag_bosyu {
    position: absolute;
    left: 10px;
    top: 10px;
    color: #fff;
    background: #dd6435;
    padding: 5px 10px;
    font-size: 81.25%;
    border-radius: 4px;
}*/
.inst_event_list li .thumb img {
  bottom: -100%;
    left: -100%;
    margin: auto;
    min-height: 100%;
    min-width: 100%;
    opacity: 1 !important;
    position: absolute;
    right: -100%;
    top: -100%;
    width: 100%;
}
.inst_event_list li .title {
  font-size: 125%;
  font-weight: 500;
  margin-bottom: 10px;
}
.inst_event_list li .date {
  color: #666666;
  padding-left: 30px;
  background: url("../image/icon/date_01.png") no-repeat 0 0;
}
.inst_event_list .prev-arrow {
  position: absolute;
    left: -60px;
    top: 160px;
}
.inst_event_list .next-arrow {
    position: absolute;
    right: -60px;
    top: 160px;
}

.inst_event_list .link {
  text-align: center;
  margin-top: 25px;
}

/* bottom_menu */
.bottom_menu {
  margin-top: 80px;
  padding: 50px 20px;
  background: url("../image/bg_fabric_01.png");
}
.bottom_menu ul {
  letter-spacing: -20px;
}
.bottom_menu li {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  width: 31%;
    margin: 0 3.5% 3.5% 0;
}
.bottom_menu li:nth-child(3n) {
  margin-right: 0;
}
.bottom_menu li a {
  color: #000;
  text-decoration: none;
  font-size: 112.5%;
  display: block;
  background: #fff;
  position: relative;
  border: 1px solid #BFBFBF;
  padding: 16px 10px 16px 30px;
  transition: .3s;
}
.bottom_menu li a::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 27px;
  width: 6px;
  height: 6px;
  border-right: 2px solid #093D86;
  border-bottom: 2px solid #093D86;
  transform: rotate(-45deg);
}
.bottom_menu li a:hover {
  color: #fff;
  background: #093D86;
}
.bottom_menu li a:hover::before {
  border-right-color: #fff;
  border-bottom-color: #fff;
}

/* omo_map */
.omo_map {
  padding: 40px;
  text-align: center;
  background: #CFE7D1;
}
.omo_map #btn_omo {}
.omo_map ul#btn_omo > li {
  float: left;
  margin-left: 30px;
  width: 255px;
  box-shadow: 1px 1px 5px rgb(0 0 0 / 30%);
  border-radius: 6px;
  border: 4px solid #305A22;
  padding: 10px 20px 20px;
}
.omo_map ul#btn_omo li .ttl {
  display: block;
  color: #fff;
  font-weight: bold;
  font-size: 120%;
  border-bottom: 3px solid rgb(255 255 255 / 30%);
  padding-bottom: 10px;
}
.omo_map ul#btn_omo li.area_s {
  margin-left: 0;
  border-color: #305A22;
  background: #2c571f;
  background: -moz-linear-gradient(top, #2c571f 0%, #99ad7a 100%);
  background: -webkit-linear-gradient(top, #2c571f 0%, #99ad7a 100%);
  background: linear-gradient(to bottom, #2c571f 0%, #99ad7a 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2c571f', endColorstr='#99ad7a', GradientType=0);
}
.omo_map ul#btn_omo li.area_c {
  border-color: #005564;
  background: #005564;
  background: -moz-linear-gradient(top, #005564 0%, #7caab9 100%);
  background: -webkit-linear-gradient(top, #005564 0%, #7caab9 100%);
  background: linear-gradient(to bottom, #005564 0%, #7caab9 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#005564', endColorstr='#7caab9', GradientType=0);
}
.omo_map ul#btn_omo li.area_n {
  border-color: #572560;
  background: #572560;
  background: -moz-linear-gradient(top, #572560 0%, #bb9ebd 100%);
  background: -webkit-linear-gradient(top, #572560 0%, #bb9ebd 100%);
  background: linear-gradient(to bottom, #572560 0%, #bb9ebd 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#572560', endColorstr='#bb9ebd', GradientType=0);
}
.omo_map ul.area_btn {
  letter-spacing: -20px;
}
.omo_map ul.area_btn li {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  margin: 3px;
}

/* renewal_center_zone */
/*.renewal_center_zone {
	padding: 70px 40px 0;
	background: url("../image/bg_renewal_center_zone.png") no-repeat 0 0/100% auto;
}
.renewal_center_zone .inner {
	max-width: 1300px;
	margin: 0 auto;
	border-radius: 8px;
	background: #fff;
	padding: 50px;
}*/


/* center_zone */
.center_zone {}
.center_zone .pagebody_inner {
  max-width: 1100px;
}
.center_zone .main_img {
  padding: 400px 30px 0;
  background: url("../image/center_zone/main_img_pc.png") no-repeat center top -10px /100% auto;
}
.center_zone .main_img .inner {
  background: url("../image/center_zone/flower_01.png") no-repeat 20px 30px,
  #fff url("../image/center_zone/flower_02.png") no-repeat right 20px top 30px;
  border-radius: 10px;
  box-shadow: 0px -5px 10px -5px rgba(0,0,0,.3);
  padding: 50px;
  position: relative;
}
.center_zone .page_utility {
    position: absolute;
    right: 0;
    top: -50px;
}
.center_zone .page_utility .rsbtn {
    display: inline-block;
    vertical-align: middle;
    float: none;
    width: auto;
}
.center_zone .page_utility .sns_button {
  float: none;
  display: inline-block;
  vertical-align: middle;
  margin: 0;
}

.center_zone .main_img .ttl {
  text-align: center;
  background: none;
 color: #01599A;
  font-size: 3.2rem;
  margin: 0 0 30px;
  padding: 0;
  line-height: 1.8;
}
.center_zone .main_img .ttl::before {
  display: none;
}
.center_zone .main_img .ttl .year {
  font-size: 8rem;
  line-height: 1;
  color: #16ADC8;
}
.center_zone .main_img .ttl .year strong {
  font-size: 11rem;
  font-weight: normal;
}
.center_zone .main_img .ttl .months {
    background: #16ADC8;
    color: #fff;
    font-size: 8rem;
    line-height: 1;
    display: inline-block;
    padding: 0 20px;
    margin-left: 20px;
}
.center_zone .main_img .ttl .months strong {
  font-size: 11rem;
  font-weight: normal;
}
.center_zone .main_img .sp { display: none; }

.center_zone .news {
  padding: 15px 30px 45px;
  background: #0D2C83 url("../image/center_zone/line_01.png") repeat-x left bottom;
}
.center_zone .news .inner {
  display: table;
  width: 100%;
}
.center_zone .news .ttl {
    color: #FFFF00;
    font-size: 100%;
    padding: 0;
    margin: 0;
    border: none;
    background: none;
    display: table-cell;
    vertical-align: middle;
    width: 80px;
    border-right: 1px solid #D0D0D0;
    padding: 5px 10px 5px 0px;
}
.center_zone .news .detail {
  display: table-cell;
  vertical-align: top;
  padding: 15px 0 15px 40px;
}
.center_zone .news .detail p { margin: 0; }
.center_zone .news a {
    color: #fff;
    text-decoration: none;
}
.center_zone .news a:hover {
  color: #FFFF00;
  text-decoration: underline;
}
.center_zone .news .date {
  color: #CCC;
  margin-right: 30px;
}

.center_zone .theme {
  padding: 80px 30px 100px;
  background: url("../image/center_zone/line_01.png") repeat-x left bottom,
    url("../image/center_zone/bg_01_pc.png") no-repeat left top/100%;
}
.center_zone .theme .ttl {
    text-align: center;
    border: none;
    background: none;
    margin: 0 0 30px;
}
.center_zone .theme .note {
    margin: 0 auto 130px;
    max-width: 800px;
}


.center_zone .about {
  padding: 0 30px;
  background: url("../image/center_zone/bg_02.png") no-repeat left bottom / 100%;
}
.center_zone .about .pagebody_inner {
  padding: 50px 50px 90px;
  background: #fff;
}
.center_zone .about_ttl {
  text-align: center;
  background: none;
  color: #fff;
  font-size: 3.5rem;
  padding: 0;
  margin: 0 0 50px;
  border: none;
}
.center_zone .about_ttl strong {
    background: #01599A;
    display: inline-block;
    padding: 0 20px;
    margin: 5px 0;
    font-weight: normal;
}
.center_zone .about .flower_line {
  font-size: 5rem;
  padding: 0 260px;
  display: inline-block;
  background: url("../image/center_zone/line_02.png") no-repeat left center,
    url("../image/center_zone/line_02.png") no-repeat right center;
}
.center_zone .about .note {
  margin: 40px auto 70px;
  max-width: 800px;
}
.center_zone .center_about_list {
  margin-bottom: 30px;
}
.center_zone .center_about_list .ttl {
  color: #01599A;
  font-size: 3rem;
  font-weight: normal;
  margin: 0 0 10px;
  text-align: center;
}
.center_zone .center_about_list .lead {
    text-align: center;
    font-size: 2rem;
}
.center_zone .center_about_list .thumb {
    margin-bottom: 20px;
}


.center_zone .link {
  padding: 60px 30px;
  background: #01599A;
  text-align: center;
}
.center_zone .link ul li {
  display: inline-block;
  vertical-align: top;
  margin: 0 20px;
  width: 350px;
}
.center_zone .link ul li a {
  background: #fff;
  border: 1px solid #707070;
  border-radius: 7px;
  font-size: 2rem;
  line-height: 1.4;
  color: #000;
  text-decoration: none;
  text-align: center;
  display: block;
  padding: 35px 10px;
  transition: .3s;
}
.center_zone .link ul li .pdf {
  padding: 21px 10px 21px 80px;
  background: #fff url("../image/center_zone/icon_pdf.png") no-repeat 20px center;
}
.center_zone .link ul li a:hover {
  background-color: #FFFF00;
  transform: scale(1.1)
}


/*----- page -- top -----*/
/* pop_inline */
#cboxOverlay.pop_inline {
    background: #000 none repeat scroll 0 0;
}
#colorbox.pop_inline,
.pop_inline #cboxWrapper,
.pop_inline #cboxContent {
	overflow: inherit;
}
.pop_inline #cboxClose {
	width: 61px;
	height: 61px;
	text-indent: -9999px;
	bottom: auto;
	top: -44px;
	right: -39px;
	background: url(../image/icon/close_01.png) no-repeat 0 0;
}

/*----- page -- program -----*/
.lead_program {
  color: #0176CD;
  font-size: 225%;
  font-weight: bold;
  text-align: center;
  position: relative;
}
.lead_program::after{
  content: "♬";
  color: #ADD3EF;
  margin-left: 10px;
}
.bg_program {
  padding: 60px 20px;
  background: url("../image/bg_fabric_01.png");
}

h2.h2_bg01 { background-color: #43A047; }
h2.h2_bg02 { background-color: #168039; }
h2.h2_bg03 { background-color: #090B61; }
h2.h2_bg04 { background-color: #7E3D2E; }
h2.h2_bg05 { background-color: #01A29D; }

h2.h2_bg01::before,
h2.h2_bg02::before,
h2.h2_bg03::before,
h2.h2_bg04::before,
h2.h2_bg05::before { background: #fff; }

.list_program { letter-spacing: -20px; }
.list_program li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  width: 270px;
  margin: 0 40px 40px 0;
  background: #fff;
  border: 1px solid #BFBFBF;
  padding: 10px;
}
.list_program li:nth-child(4n) { margin-right: 0; }
.list_program li a {
  color: #000;
  display: block;
  text-decoration: none;
}
.list_program li .thumb {
  margin-bottom: 5px;
  position: relative;
  overflow: hidden;
  padding-bottom: 72.1%;
}
.list_program li .thumb img {
  bottom: -100%;
    left: -100%;
    margin: auto;
    min-height: 100%;
    min-width: 100%;
    opacity: 1 !important;
    position: absolute;
    right: -100%;
    top: -100%;
    width: 100%;
  transition: .3s;
}
.list_program li .thumb a:hover img {
  transform: scale(1.1);
}
.list_program .tag { margin-bottom: 5px; }
/*.list_program .tag_now {
    color: #fff;
    background: #FF9200;
    font-size: 1.2rem;
    padding: 1px 10px;
    display: inline-block;
}
.list_program .tag_comingsoon {
    color: #fff;
    background: #333;
    font-size: 1.2rem;
    padding: 1px 10px;
    display: inline-block;
}*/
.list_program li .title {
  font-size: 112.5%;
    font-weight: 500;
    margin-bottom: 10px;
    padding: 0;
    border: none;
    background: none;
    margin-top: 0;
}
.list_program li .date {
    color: #666666;
  font-size: 81.25%;
    padding-left: 28px;
    background: url(../image/icon/date_01.png) no-repeat 0 5px;
    background-size: 18px;
}


.list_program_02 { letter-spacing: -20px; }
.list_program_02 li {
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
    width: 285px;
    margin: 0 20px 30px 0;
    background: #fff;
  position: relative;
    box-shadow: 0 3px 6px rgb(0 0 0 / 10%);
}
.list_program_02 li:nth-child(4n) { margin-right: 0; }
.list_program_02 li a {
  color: #000;
  display: block;
  text-decoration: none;
}
.list_program_02 .stop_program {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    margin: 0;
    color: #FF0000;
    font-size: 112.5%;
    line-height: 1.3;
    background: rgba(0,0,0,.7);
    padding: 36% 20px 0;
}
.list_program_02 li .thumb {
  position: relative;
  overflow: hidden;
  padding-bottom: 72.1%;
}
.list_program_02 li .thumb img {
  bottom: -100%;
    left: -100%;
    margin: auto;
    min-height: 100%;
    min-width: 100%;
    opacity: 1 !important;
    position: absolute;
    right: -100%;
    top: -100%;
    width: 100%;
  transition: .3s;
}
.list_program_02 li .thumb a:hover img {
  transform: scale(1.1);
}
.list_program_02 li .detail {
  padding: 12px;
}
.list_program_02 li .title {
  font-size: 112.5%;
    font-weight: 500;
    margin-bottom: 10px;
    padding: 0;
    border: none;
    background: none;
    margin-top: 0;
}
.list_program_02 li .date {
    color: #666666;
  font-size: 81.25%;
    padding-left: 28px;
    background: url(../image/icon/date_01.png) no-repeat 0 5px;
    background-size: 18px;
}

/*----- page -- ライブカメラ -----*/
iframe[src*='youtube'] {
    width: 90%;
    height: 520px;
    margin: 0 auto;
    display: block;
}

/*----- page -- 学習用コンテンツ -----*/
/* worksheet */
#worksheet {}
#worksheet .item {
  clear: both;
  margin: 10px auto;
  text-align: left;
  width: 680px;
  min-height: 181px;
  background: no-repeat 0 0;
  background-size: cover;
  padding: 10px;
}
#worksheet #worksheet1 { background-image: url(../../css/image/worksheet1.jpg); }
#worksheet #worksheet2 { background-image: url(../../css/image/worksheet1-2.jpg); }
#worksheet #worksheet3 { background-image: url(../../css/image/worksheet1-3.jpg); }
#worksheet #worksheet4 { background-image: url(../../css/image/worksheet1-4.jpg); }
#worksheet #worksheet5 { background-image: url(../../css/image/worksheet1-5.jpg); }
#worksheet #worksheet6 { background-image: url(../../css/image/worksheet1-6.jpg); }

#worksheet .thumb {
    float: right;
  margin-left: 20px;
}
#worksheet p {
	font-size: 75%;
	padding: 70px 0 0 5px;
  overflow: hidden;
  margin: 0 0 10px;
}
#worksheet .btn {}
#worksheet .size {
    clear: both;
    color: #0066CC;
    font-size: 14px;
    padding: 0 0 15px;
}

/*----- enjoy_guide -----*/
.enjoy_thumb_list {
  margin-bottom: 60px;
}
.enjoy_thumb_list .item {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  padding-bottom: 40px;
  border-bottom: 1px solid #BFBFBF;
}
.enjoy_thumb_list .item:nth-child(odd) {
  flex-direction: row;
}
.enjoy_thumb_list .item + .item {
  margin-top: 40px;
}
.enjoy_thumb_list .thumb {
  flex-shrink: 0;
  width: 362px;
}
.enjoy_thumb_list .item:nth-child(odd) .thumb {
  margin-right: 20px;
}
.enjoy_thumb_list .item:nth-child(even) .thumb{
  margin-left: 20px;
}
.enjoy_thumb_list .detail {}

/* enjoy_detail_link */
.enjoy_detail_link {
  letter-spacing: -20px;
  text-align: center;
}
.enjoy_detail_link li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  width: 30.43%;
  margin: 0 4.34% 50px 0;
}
.enjoy_detail_link li:nth-child(3n) { margin-right: 0; }
.enjoy_detail_link a {
  display: block;
  text-decoration: none;
  color: #000;
}
.enjoy_detail_link span {
  font-size: 125%;
  display: inline-block;
  margin-top: 5px;
  background: url(../image/icon/arrow_01.png) no-repeat 0 5px;
  padding-left: 30px;
}

/*---------------------------------------------------------------------
	page_scroll
---------------------------------------------------------------------*/
#page_scroll_navi {
    position: absolute;
    right: 30px;
    top: -50px;
}
#page_scroll_navi a {
  display: block;
  position: relative;
  top: 0;
  transition: .3s;
}
#page_scroll_navi a:hover {
  top: -5px;
}
#page_scroll_navi a:hover img {
  opacity: 1;
}

/*---------------------------------------------------------------------
	site_footer
---------------------------------------------------------------------*/
.site_footer {
  position: relative;
  margin-top: 100px;
  background: #E5F1FA;
}
.site_footer .inner {
  width: 1200px;
  margin: 0 auto;
  padding: 40px 0 78px;
  background: url("../image/bg_footer_02.png") no-repeat center bottom;
}
.site_footer .inner .fll {
  float: left;
  width: 580px;
}
.site_footer .inner .flr {
  float: right;
  width: 580px;
}
.site_footer .inner .item {
  float: left;
  width: 270px;
}
.site_footer .inner .item + .item {
  margin-left: 40px;
}

.footer_navi {}
.footer_navi > li + li { margin-top: 5px; }
.footer_navi > li > a {
  color: #000;
  text-decoration: none;
  display: block;
  padding: 5px;
  border-bottom: 2px solid #4486B6;
}
.footer_navi > li > a:hover {
  color: #4486B6;
}
.footer_navi ul {
  margin-left: 10px;
}
.footer_navi ul li a {
  color: #000;
  font-size: 1.4rem;
  text-decoration: none;
  display: block;
  padding: 6px 10px;
  border-bottom: 1px dotted #707070;
}
.footer_navi ul li a:hover {
  color: #006191;
}

.footer_lead {
  font-size: 1.4rem;
  margin: 25px 0 30px;
}
.footer_logo { text-align: right;}

.copyright {
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    background: url(../image/bg_footer.png) repeat-x center bottom;
    padding: 44px 20px 20px;
  margin-top: -5px;
}


/*---------------------------------------------------------------------
	modelcourse
---------------------------------------------------------------------*/
.modelcourse_navi {
  letter-spacing: -20px;
  padding: 0 10px;
  margin: 120px 0 50px;
}
.modelcourse_navi li {
  width: 385px;
  margin-left: 10px;
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  border: 2px solid #0059B2;
  border-radius: 6px;
}
.modelcourse_navi li:first-child {
  margin-left: 0;
}
.modelcourse_navi .navi_02 { border-color: #4DA6FF; }
.modelcourse_navi .navi_03 { border-color: #00B285; }
.modelcourse_navi a {
  color: #000;
  text-decoration: none;
  display: block;
}
.modelcourse_navi span { display: block; }
.modelcourse_navi .ttl {
    color: #fff;
    font-size: 150%;
    background: #0059B2;
    position: relative;
    padding: 8px 8px 8px 40px;
}
.modelcourse_navi .navi_02 .ttl { background: #4DA6FF;}
.modelcourse_navi .navi_03 .ttl { background: #00B285; }
.modelcourse_navi .ttl::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 15px;
  width: 7px;
  height: 32px;
  background: rgba(255,255,255,.5);
  border-radius: 3px;
}
.modelcourse_navi .text {
  text-align: center;
  padding: 5px 30px;
}
.modelcourse_navi .navi_01 .text {
  padding: 19px 30px;
}

.modelcourse_main img {
    position: relative;
    z-index: 1;
}
.modelcourse_main + .modelcourse_navi {
  margin: -20px 0 80px;
}
.modelcourse_main + .modelcourse_navi li {
  border-radius: 0 0 6px 6px;
}


.modelcourse {}
.modelcourse.c_02 h2 { background: #4DA6FF; }
.modelcourse.c_03 h2 { background: #00B285; }

.modelcourse .fsr28 img {
    margin-right: 10px;
}

.modelcourse .flow {}
.modelcourse .flow > li {
  position: relative;
  padding: 0 0 0 75px;
}
.modelcourse .flow > li + li {
    margin-top: 15px;
}
.modelcourse .flow > li::before {
  content: "";
  position: absolute;
  left: 35px;
  top: 0;
  height: 100%;
  width: 2px;
  background: #01599A;
}
.modelcourse .flow > li::after {
  content: "";
  position: absolute;
  left: 32px;
  bottom: 0%;
  width: 6px;
  height: 6px;
  border-right: 2px solid #01599A;
  border-bottom: 2px solid #01599A;
  transform: rotate(45deg);
}
.modelcourse .flow > li:last-child::before,
.modelcourse .flow > li:last-child::after { display: none; }

.modelcourse .flow .icon_pin {
  padding: 0 0 35px;
}
.modelcourse .flow .icon_pin strong {
    border: 1px solid #707070;
    width: 220px;
    padding: 6px;
    text-align: center;
    color: #01599A;
    font-weight: bold;
    font-size: 162.5%;
    position: relative;
    display: inline-block;
    background: url(/userfiles/images/modelcourse/icon_pin.png) no-repeat 15px center #fff;
}
.modelcourse .flow .point {
    margin: 0;
    background: #669BD1;
    color: #fff;
    font-size: 93.75%;
    padding: 4px 4px 4px 10px;
    border-radius: 0 25px 25px 0;
    display: inline-block;
    position: relative;
    left: -75px;
}
.modelcourse .flow .point strong {
    display: inline-block;
    vertical-align: middle;
    width: 38px;
    height: 38px;
    background: #fff;
    text-align: center;
    color: #669BD1;
    font-size: 226.66%;
    border-radius: 50%;
    line-height: 1;
    font-weight: normal;
    margin-left: 14px;
}
.modelcourse .flow h3 { margin-top: 10px; }
.modelcourse .flow .l_01 {letter-spacing: -20px;}
.modelcourse .flow .l_01 li {
    display: inline-block;
    vertical-align: middle;
    letter-spacing: normal;
}
.modelcourse .flow .time {
    margin: 0;
    font-size: 112.5%;
    position: relative;
    left: -60px;
    background: url(/userfiles/images/modelcourse/icon_time.png) no-repeat 0 3px;
    padding: 6px 7px 27px 55px;
}
.modelcourse .flow .time strong { color: #2CB5C5; }
.modelcourse .flow .time span { font-size: 144.44%; line-height: 1.4; }
.modelcourse .flow .l_02 {}
.modelcourse .flow .l_02 .detail {
    float: left;
    width: 76%;
}
.modelcourse .flow .l_02 .thumb {
  float: right;
  width: 23%;
}

.modelcourse.c_02 .flow > li:not(.icon_pin)::before,
.modelcourse.c_03 .flow > li:not(.icon_pin)::before {
  height: 110%;
}

.modelcourse.c_02 .flow > li:not(.icon_pin)::after,
.modelcourse.c_03 .flow > li:not(.icon_pin)::after {
    display: none;
}

.modelcourse.c_02 .flow .point { background: #94C9FF; }
.modelcourse.c_02 .flow .point strong { color: #4DA6FF; }

.modelcourse.c_03 .flow .point { background: #66D1B6; }
.modelcourse.c_03 .flow .point strong { color: #00B285; }


/*---------------------------------------------------------------------
	tenniscourt
---------------------------------------------------------------------*/
:root{
  --pickup_color: #0176CD;
  --same: 10px;
  --after_border_weight: 3px;
  --after_border_color: #fff;
  --after_border_rotate: rotate(45deg);
}

.flowList {
  color: #000000;
  list-style: none;
  overflow: hidden;
  padding-top: 20px;
  margin-bottom: 40px;
  
}
.flowList li {
  position: relative;
  background-color: #e4e4e4;
  line-height: 1.2;
  color: #8B8B8B;
  display: block;
  float: left;
  font-size: 1.5rem;
  font-weight: 600;
  width: 25%;
  padding: 17px 10px 17px 40px;
  text-align: center;
  text-decoration: none;
}
.flowList li:first-child {
  padding-left: 20px;
  border-radius: 6px;
}
.flowList li:last-child {
  border-radius: 6px;
}

/* 三角形下部 */
.flowList li:not(:last-child)::before,
.flowList li:not(:last-child)::after{
  content: " ";
  display: block;
  position: absolute;
  z-index: 6;
  right: -30px;
  width: 36px;
  height: 36px;
  background-color: #e4e4e4;
  border-right: 5px solid #FFFFFF;
}

/* 三角形上部 */
.flowList li:not(:last-child)::before {
  top: 0;
  transform: skew(30deg);
}

.flowList li:not(:last-child)::after {
  bottom: 0;
  transform: skew(-30deg);
}
/* 右端の設定 */
.flowList > li.active {
  background-color: var(--pickup_color);
  color: #FFFFFF;
}
.flowList > li.active::before, .flowList li.active::after {
  background-color: var(--pickup_color);
}

.tenniscort_info_block_01{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 30px;
  width: 100%;
  padding: 10px 20px;
  background-color: #E9F2FC;
}

/*イベント・プログラムパーツ流用ココから*/
.tenniscort_date_choice{
  position: absolute;
  top: 13px;
  left: 20px;
}

.tenniscort_date_choice a{
  display: block;
  text-align: center;
  color: #fff;
  font-size: 107.14%;
  text-decoration: none;
  background: #FF9200 url(../../css/image/icon_calendar_02.png) no-repeat 12px center;
  background-size: 16px;
  border-radius: 4px;
  padding: 4px 12px 3px 35px;
  transition: all .3s;
}

.tenniscort_date_choice a:hover{
  opacity: .8;
}

.tenniscort_date_choice_day{
  text-align: center;
  font-weight: bold;
  font-size: 157.14%;
}

.tenniscort_date_choice_pn{
  position: absolute;
  right: 20px;
  top: 13px;
}

.tenniscort_date_choice_prev,
.tenniscort_date_choice_next{
  display: inline-block;
  vertical-align: middle;
}

.tenniscort_date_choice_prev{
}

.tenniscort_date_choice_next{
  margin-left: 10px;
}

.tenniscort_date_choice_pn_btn{
  font-size: 114.28%;
  text-decoration: none;
  display: block;
  border-radius: 4px;
  background-color: #005999;
  padding: 3px 7px 2px;
}

.tenniscort_date_choice_pn_btn,
.tenniscort_date_choice_pn_btn:visited,
.tenniscort_date_choice_pn_btn:visited:hover{
  color: #fff;
}

.tenniscort_date_choice_disable{
  background-color: #CCCCCC;
}

/*イベント・プログラムパーツ流用ココまで*/

.tenniscort_caution_block{
  margin: 0 0 50px;
  padding: 20px 25px;
  border-radius: 10px;
  background-color: #F2F2F2;
}

.tenniscort_caution_color{
  color: #C50000;
}

.tenniscort_caution_item{
  margin-top: 5px;
}

.tenniscort_caution_name{
  font-size: 18px;
  font-weight: bold;
}

.tenniscort_cort_info_wrap{
  display: flex;
  justify-content: space-between;
  margin: 0 0 50px;
}

.tenniscort_cort_info_block{
  width: 49%;
}

.tenniscort_cort_info_type{
  margin: 0 0 30px;
  padding: 0 0 20px;
  border-bottom: 3px solid #CCCCCC;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}

.tenniscort_cort_info_item a,
.tenniscort_cort_info_disable{
  display: block;
  margin: 20px 0 0;
  padding: 20px 20px;
  border: 1px solid #BBBBBB;
  border-radius: 10px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
}

.tenniscort_cort_info_item a{
  color: #000;
  transition: all .3s;
}

.tenniscort_cort_info_item a:hover,
.tenniscort_cort_info_choose{
  background-color: var(--pickup_color);
  color: #fff;
}

.tenniscort_cort_info_item a:hover .cort_status_icon_01,
.tenniscort_cort_info_choose .cort_status_icon_01{
  background-color: var(--pickup_color);
  border-color: #fff;
}

.tenniscort_cort_info_disable{
  border-color: #DDDDDD;
  background-color: #DDDDDD;
  color: #808080;
}

.tenniscort_cort_info_choose{
  border-radius: 10px;
}

.tenniscort_cort_info_choose a{
  border: none;
  color: #fff;
}

.tenniscort_cort_status_icon{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 18px;
  height: 18px;
  margin-right: 10px;
  margin-bottom: 2px;
}

.cort_status_icon_01{
  border: 3px solid var(--pickup_color);
  border-radius: 50%;
}

.cort_status_icon_02{
  width: 20px;
  height: 20px;
  border: none;
  border-radius: 0;
}


.cort_status_icon_02::before,
.cort_status_icon_02::after{
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 100%;
  height: 5px;
  background-color: #808080;
}

.cort_status_icon_02::before{
  transform: rotate(45deg);
}

.cort_status_icon_02::after{
  transform: rotate(-45deg);
}

/*-----------------------------------------
  tenniscourt form内の調整
-----------------------------------------*/
.tenniscourt_form{
  padding-bottom: 60px;
}

.tenniscourt_form form dd{
  padding: 12px 0 0 20px;
}

.tenniscourt_form form dt{
  vertical-align: middle;
}

.tenniscourt_form .tenniscourt_form_group_wrap{
  display: flex;
  align-items: center;
}

.tenniscourt_form .tenniscourt_form_group_wrap > *{
  margin-right: 15px;
}

.tenniscourt_form *[name="using_end"],
.tenniscourt_form .pseudo_using_end{
  width: 108px;
}

.tenniscourt_form .pseudo_using_end{
  display: inline-block;
  background-color: #fff;
  border: 1px solid #cacaca;
  position: relative;
  padding: 12px;
}

.end_time_decoration{
  position: relative;
  padding: 3px 10px;
  background-color: #E9F2FC;
}

.icon_clock{
  vertical-align: middle;
}

.tenniscourt_form_caution_block{
  margin: 50px 0 30px;
  text-align: center;
}

.tenniscourt_caution_label_wrap{
  width: 288px;
  margin: 10px auto auto;
  padding: 8px 10px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  font-weight: bold;
  text-align: center;
}

.tenniscourt_caution_label_wrap input[type="checkbox"]{
  width: 18px;
  height: 18px;
  margin-right: 10px;
}

.tenniscourt_form.confirm_list dd{
  padding: 12px 0 0 20px;
  background-color: transparent;
  border: none;
}

.tenniscourt_form.confirm_list .pseudo_input{
  margin: 0;
  padding: 12px;
  border: 1px solid #cacaca;
  background-color: #fff;
}

.tenniscourt_form .pseudo_input_s{
  display: inline-block;
  width: 124px;
}

.tenniscourt_form.confirm_list .pseudo_input_s{
  margin-right: 15px;
}

.tenniscourt_form_complete{
  padding-bottom: 50px;
}

.tenniscourt_next_wrap,
.tenniscourt_prev_wrap{
  position: relative;
  display: block;
  width: 305px;
  max-width: 100%;
  margin: auto;
  text-align: center;
}

.tenniscourt_prev_wrap{
  margin-top: 30px;
}

.tenniscourt_next_wrap.pseudo_element::after,
.tenniscourt_prev_wrap.pseudo_element::after{
  content: "";
  position: absolute;
  top: 50%;
  width: var(--same);
  height: var(--same);
  transform: var(--after_border_rotate) translate(-55%,-10%);
  pointer-events: none;
}

.tenniscourt_next_wrap.pseudo_element::after{
  right: 20px;
  border-top: var(--after_border_weight) solid var(--after_border_color);
  border-right: var(--after_border_weight) solid var(--after_border_color);
}

.tenniscourt_prev_wrap.pseudo_element::after{
  left: 20px;
  border-bottom: var(--after_border_weight) solid var(--after_border_color);
  border-left: var(--after_border_weight) solid var(--after_border_color);
  --after_border_color: #0069BC;
}

.mail_form .submit_button.tenniscourt_next,
.mail_form .submit_button.tenniscourt_prev{
  display: block;
  width: 100%;
  padding: 20px 25px;
  border-radius: 10px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  transition: all .3s;
}

.mail_form .submit_button.tenniscourt_next{
  background-color: #0069BC;
}

.mail_form .submit_button.tenniscourt_next:hover,
.mail_form .submit_button.tenniscourt_prev:hover{
  opacity: .7;
}

.mail_form .submit_button.tenniscourt_prev{
  background-color: #fff;
  border: 1px solid #CCCCCC;
  color: #000;
}

.mail_form .submit_button.tenniscourt_prev:hover{
  background-color: inherit;
  color: inherit;
}



















/*-----------------------------------------
  tenniscourt リンクページ
-----------------------------------------*/

.tenniscourt_link_btn_wrap{
  margin: 30px 0 0;
  padding: 20px 20px;
  background-color: #F6F5EE;
  text-align: center;
}

.tenniscourt_link_btn{
  display: inline-block;
  position: relative;
  width: 340px;
  max-width: 100%;
  padding: 20px 25px;
  border-radius: 10px;
  background-color: #DD6053;
  text-align: center;
  text-decoration: none;
  transition: all .3s;
}

.tenniscourt_link_btn,
.tenniscourt_link_btn:hover,
.tenniscourt_link_btn:visited,
.tenniscourt_link_btn:hover:visited{
  text-decoration: none;
  color: #fff;
}

.tenniscourt_link_btn::after{
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: var(--same);
  height: var(--same);
  border-top: var(--after_border_weight) solid var(--after_border_color);
  border-right: var(--after_border_weight) solid var(--after_border_color);
  transform: var(--after_border_rotate) translate(-55%,-10%);
}

.tenniscourt_link_btn:hover{
  opacity: .7;
}
