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

/*---------------------------------------------------------------------
	maintenance_now
---------------------------------------------------------------------*/
.maintenance_now {
  background: #eee;
  padding: 40px;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: table;
}
.maintenance_now .inner {
  display: table-cell;
  vertical-align: middle;
}
.maintenance_now .m_texts {
  max-width: 960px;
  margin: auto;
  background: #fff;
  border-radius: 4px;
  box-shadow: 1px 1px 7px rgba(0, 0, 0, .1);
  padding: 80px 40px;
  text-align: center;
}
.m_text_01 {color: #14528E;font-size: 2.6rem;margin-bottom: 20px;}
.m_text_02 {color: #333;font-size: 1.4rem;margin-bottom: 40px;}
.m_text_03 {margin-bottom: 40px; line-height: 2; }
.m_text_04 {color: #D64B00;font-size: 2.6rem;}
.m_text_05 {color: #D64B00;font-size: 1.4rem;margin-bottom: 60px;}

/*---------------------------------------------------------------------
	container
---------------------------------------------------------------------*/
#container {
  overflow: hidden;
}
.pc_none { display: none; }
/*---------------------------------------------------------------------
	edit_btn
---------------------------------------------------------------------*/
#edit_btn {
  background: #444;
}
#top #edit_btn { display: none; }
#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
---------------------------------------------------------------------*/
#site_header {
  width: 100%;
  z-index: 100;
  position: relative;
}
#site_header.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
}
#site_header .inner {
  background: #000;
  
  min-width: 1300px;
  width: 100%;
  box-sizing: content-box;
}

/* ----- g_navi ----- */
.g_navi {
  float: left;
  display: table;
  /*width: 50%;
  max-width: 700px;*/
  width: 70%;
  max-width: 840px;
}
.g_navi li {
  display: table-cell;
  vertical-align: top;
  border-right: 1px solid #555;
}
.g_navi a {
  color: #fff;
  font-size: 75%;
  line-height: 1.2;
  text-decoration: none;
  display: block;
  min-width: 74px;
  text-align: center;
  padding: 52px 5px 14px;
  background: no-repeat center top;
  transition: background-color .3s;
}
.g_navi a:hover {
  color: #fff;
  background-color: #008BD6;
}
.g_navi .navi_01 a {
  background-position: center center;
  background-image: url("/image/common/icon_home_01.svg");
	background-size: 20px 20px;
  text-indent: -9999px;
}
.g_navi .navi_02 a {
  padding: 42px 5px 8px;
  background-position: center 7px;
  background-image: url("/image/common/icon_haisai_01.svg");
	background-size: 62px 26px;
}
.g_navi .navi_03 a {
  background-position: center 14px;
  background-image: url("/image/common/icon_guide_01.svg");
	background-size: 32px 30px;
}
.g_navi .navi_04 a {
  background-position: center 13px;
  background-image: url("/image/common/icon_area_01.svg");
	background-size: 33px 30px;
}
.g_navi .navi_05 a {
  background-position: center 13px;
  background-image: url("/image/common/icon_program_01.svg");
	background-size: 22px 31px;
}
.g_navi .navi_06 a {
  background-position: center 18px;
  background-image: url("/image/common/icon_activity_01.svg");
	background-size: 30px 25px;
}
.g_navi .navi_07 a {
  background-position: center 15px;
  background-image: url("/image/common/icon_research_01.svg");
	background-size: 23px 30px;
}
.g_navi .navi_08 a {
  background-position: center 16px;
  background-image: url("/image/common/icon_topics_01.svg");
	background-size: 30px 24px;
}
.g_navi .navi_09 a {
  background-position: center 16px;
  background-image: url("/image/common/icon_ticket_01.svg");
	background-size: 36px 21px;
}
.g_navi .navi_10 a {
    padding: 14px 5px 8px;
    line-height: 1.5;
}
.g_navi .navi_11 a {
  background-position: center 16px;
  background-image: url("/image/common/icon_recruit_01.svg");
	background-size: 29px auto;
}
.g_navi .navi_12 a {
  background-position: center 12px;
  background-image: url("/image/common/icon_maintenance_01.svg");
	background-size: 40px auto;
}
.g_navi .navi_01 a:hover { background-image: url("/image/common/icon_home_02.svg"); }
.g_navi .navi_02 a:hover { background-image: url("/image/common/icon_haisai_02.svg"); }
.g_navi .navi_03 a:hover { background-image: url("/image/common/icon_guide_02.svg"); }
.g_navi .navi_04 a:hover { background-image: url("/image/common/icon_area_02.svg"); }
.g_navi .navi_05 a:hover { background-image: url("/image/common/icon_program_02.svg"); }
.g_navi .navi_06 a:hover { background-image: url("/image/common/icon_activity_02.svg"); }
.g_navi .navi_07 a:hover { background-image: url("/image/common/icon_research_02.svg"); }
.g_navi .navi_08 a:hover { background-image: url("/image/common/icon_topics_02.svg"); }
.g_navi .navi_09 a:hover { background-image: url("/image/common/icon_ticket_02.svg"); }
.g_navi .navi_11 a:hover { background-image: url("/image/common/icon_recruit_02.svg"); }
.g_navi .navi_12 a:hover { background-image: url("/image/common/icon_maintenance_02.svg"); }

/* lang_en */
.lang_en .g_navi .navi_02 a {
  padding: 52px 5px 14px;
  background-position: center 16px;
}
.lang_en .g_navi .navi_03 a {
	padding: 48px 5px 4px;
	background-position: center 11px;
}

/* lang_kr */
.lang_kr .g_navi .navi_04 a {
	padding: 48px 5px 4px;
	background-position: center 11px;
}
.lang_kr .g_navi .navi_05 a {
	padding: 48px 5px 4px;
	background-position: center 11px;
}

/*----- header_menu -----*/
.header_menu {
	float: right;
	text-align: right;
	letter-spacing: -.5em;
}

/* header_sns */
.header_sns {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: middle;
}
.header_sns li {
  display: inline-block;
  vertical-align: middle;
}
.header_sns a {
  display: block;
  padding: 8px;
}

/* header_utility */
.header_utility {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: middle;
  margin-left: 20px;
  /*max-width: 320px;*/
}
.header_utility ul {
  display: table;
  width: 100%;
}
.header_utility li {
  display: table-cell;
  vertical-align: middle;
  border-left: 1px solid #555;
}
.header_utility a {
  color: #fff;
  font-size: 75%;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  background: #222 no-repeat center 20px;
  display: block;
  padding: 52px 5px 14px;
  transition: background-color .3s;
  min-width: 85px;
}
.header_utility a:hover {
  color: #fff;
  background-color: #008BD6;
}
.header_utility .navi_01 a {
	background-image: url("/image/common/icon_lang_01.svg");
	background-size: 23px 23px;
}
.header_utility .navi_02 a {
	background-image: url("/image/common/icon_search_01.svg");
	background-size: 24px 24px;
}
.header_utility .navi_03 a {
	background-image: url("/image/common/icon_contact_01.svg");
	background-size: 28px 19px;
}
.header_utility .navi_04 a {
	background-image: url("/image/common/icon_ba_01.svg");
	background-size: 30px 21px;
}
.header_utility .navi_01 a:hover { background-image: url("/image/common/icon_lang_02.svg"); }
.header_utility .navi_02 a:hover { background-image: url("/image/common/icon_search_02.svg"); }
.header_utility .navi_03 a:hover { background-image: url("/image/common/icon_contact_02.svg"); }
.header_utility .navi_04 a:hover { background-image: url("/image/common/icon_ba_02.svg"); }


/* ----- site_navi ----- */
.site_navi {
  position: absolute;
  width: 100%;
}
.site_navi > .item {
  display: none;
  border-top: 1px solid #555;
	/*background: rgba(255,255,255);*/
  background: rgba(0,0,0,.8);
	box-shadow: 0px 9px 3px -3px rgba(0,0,0,0.2);
}
.site_navi > .item a:hover img {
	opacity: 1.0;
}
.site_navi > .item > .ttl {
  background: #000;
  border-bottom: 3px solid #008BD6;
}
.site_navi > .item > .ttl a,
.site_navi > .item > .ttl span {
  color: #fff;
  font-size: 162.5%;
  text-decoration: none;
  max-width: 1200px;
  box-sizing: content-box;
  padding: 8px;
  margin: 0 auto;
  display: block;
  position: relative;
}
.site_navi > .item > .ttl a::after {
  content: "";
  position: absolute;
  right: 12px;
  top: 22px;
  width: 6px;
  height: 6px;
  border-right: 2px solid #008BD6;
  border-bottom: 2px solid #008BD6;
  transform: rotate(-45deg);
}
.site_navi .item_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px 20px;
  box-sizing: content-box;
}
.site_navi .close {
  text-align: right;
  margin-top: 20px;
}
.site_navi .close a {
  color: #fff;
  background: #000;
	border: 1px solid #333;
  text-align: center;
  width: 60px;
  height: 60px;
  display: inline-block;
  padding: 17px 0;
}


/* gnav_guide_menu */
.gnav_guide_menu { font-size: 0; }
.gnav_guide_menu li {
  font-size: 1.5rem;
  display: inline-block;
  vertical-align: top;
  width: 24.58%;
  margin-right: 0.5%;
}
.gnav_guide_menu li:nth-child(4n) { margin-right: 0; }
.gnav_guide_menu li:nth-child(n+5) { margin-top: 0.5%; }
.gnav_guide_menu li a {
	color: #000;
	display: block;
	text-decoration: none;
	background: #E7E7E7 no-repeat 10px center;
	background-size: 22px;
	position: relative;
	transition: .3s;
	padding: 23px 15px 23px 46px;
}
.gnav_guide_menu .menu_01 a { background-image: url("/image/common/guide/icon_01.svg"); }
.gnav_guide_menu .menu_02 a { background-image: url("/image/common/guide/icon_02.svg"); background-size: 15px; background-position: 15px center; }
.gnav_guide_menu .menu_03 a { background-image: url("/image/common/guide/icon_03.svg"); }
.gnav_guide_menu .menu_04 a { background-image: url("/image/common/guide/icon_04.svg"); }
.gnav_guide_menu .menu_05 a { background-image: url("/image/common/guide/icon_05.svg"); background-size: 25px; }
.gnav_guide_menu .menu_06 a { background-image: url("/image/common/guide/icon_06.svg"); background-size: 25px; }
.gnav_guide_menu .menu_07 a { background-image: url("/image/common/guide/icon_07.svg"); }
.gnav_guide_menu .menu_08 a { background-image: url("/image/common/guide/icon_08.svg"); }
.gnav_guide_menu .menu_09 a { background-image: url("/image/common/guide/icon_09.svg"); }
.gnav_guide_menu .menu_10 a { background-image: url("/image/common/guide/icon_10.svg"); }
.gnav_guide_menu .menu_11 a { background-image: url("/image/common/guide/icon_11.svg"); }
.gnav_guide_menu .menu_12 a { background-image: url("/image/common/guide/icon_12.svg"); }
.gnav_guide_menu .menu_13 a { background-image: url("/image/common/guide/icon_13.svg"); }
.gnav_guide_menu .menu_14 a { background-image: url("/image/common/guide/icon_14.svg"); }
.gnav_guide_menu .menu_15 a { background-image: url("/image/common/guide/icon_15.svg"); }
.gnav_guide_menu .menu_16 a { background-image: url("/image/common/guide/icon_16.svg"); }
.gnav_guide_menu .menu_17 a { background-image: url("/image/common/guide/icon_17.svg"); }
.gnav_guide_menu .menu_18 a { background-image: url("/image/common/guide/icon_18.svg"); }
.gnav_guide_menu li a:hover {
  color: #000;
  background-color: #fff;
}
.gnav_guide_menu li a::after {
	content: "";
	position: absolute;
	right: 12px;
	top: 50%;
	margin-top: -6px;
	width: 5px;
	height: 5px;
	border-right: 2px solid #008BD6;
	border-bottom: 2px solid #008BD6;
	transform: rotate(-45deg);
}

/* area_index_link */
.site_navi .area_index_link .item a {
  /*padding: 55% 10px;*/
	padding: 115px 10px;
	background-position: 0 0;
}
.site_navi .area_index_link .link_04 a {
  background-position: center;
}
.site_navi .area_index_link .item .floor,
.site_navi .area_index_link .item .ttl {
  font-size: 2rem;
}
.site_navi .area_index_link .item .floor {
	font-weight: 900;
	margin-bottom: 0;
}

/* gnav_area_menu */
.gnav_area_menu {
  font-size: 0;
  margin-top: 10px;
}
.gnav_area_menu li {
  font-size: 1.5rem;
  display: inline-block;
  vertical-align: top;
  width: 32.91%;
  margin-right: 0.58%;
}
.gnav_area_menu li:nth-child(3n) { margin-right: 0; }
.gnav_area_menu li a {
	display: table;
	width: 100%;
	background: #E7E7E7;
	text-decoration: none;
	color: #000;
	position: relative;
  transition: .3s;
	padding: 5px 0 5px 5px;
}
.gnav_area_menu li a::after {
	content: "";
	position: absolute;
	right: 12px;
	top: 50%;
	margin-top: -4px;
	width: 5px;
	height: 5px;
	border-right: 2px solid #008BD6;
	border-bottom: 2px solid #008BD6;
	transform: rotate(-45deg);
}
.gnav_area_menu li a:hover {
  color: #000;
  background-color: #fff;
}
.gnav_area_menu li a span {
  display: table-cell;
  vertical-align: middle;
}
.gnav_area_menu li a .thumb { width: 200px; }
.gnav_area_menu li a .thumb img { width: 100%; }
.gnav_area_menu li a .text {
  padding: 15px;
}
.gnav_area_menu .menu_03 .map {
  /*padding: 38px 15px 38px 45px;*/
	padding: 14px 15px 14px 48px;
  background-image: url(/image/common/megamenu/area_menu_03.png);
  background-position: 15px center;
  background-repeat: no-repeat;
}
.gnav_area_menu .menu_03 .shop {
	padding: 14px 15px 14px 48px;
	margin-top: 6px;
	background-image: url("/image/common/guide/icon_05.svg");
	background-size: 28px;
  background-position: 10px 15px;
  background-repeat: no-repeat;
}

/* gnav_program_menu */
.gnav_program_menu {
  font-size: 0;
}
.gnav_program_menu li {
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  width: 32.91%;
  margin-right: 0.58%;
}
.gnav_program_menu li:nth-child(3n) { margin-right: 0; }
.gnav_program_menu li a {
  display: block;
  color: #fff;
  text-align: center;
  text-decoration: none;
  transition: .5s;
}
.gnav_program_menu li a:hover {
  color: #fff;
}
.gnav_program_menu li .text {
  display: block;
  padding: 8px;
  background: url("/image/common/bg_08.png");
}
.gnav_program_menu:hover a {
  filter: grayscale(100%);
}
.gnav_program_menu li a:hover {
  filter: grayscale(0);
  text-shadow: 1px 1px 10px #fff;
}

/* gnav_lang_menu */
.gnav_lang_menu {
  font-size: 0;
}
.gnav_lang_menu li {
  font-size: 1.8rem;
  display: inline-block;
  vertical-align: top;
  width: 19.58%;
  margin-right: 0.5%;
}
.gnav_lang_menu li:nth-child(5n){ margin-right: 0; }
.gnav_lang_menu li a {
  color: #fff;
  display: block;
  text-decoration: none;
  border-bottom: 3px solid #555;
  background: url(/image/common/bg_08.png);
  text-align: center;
  padding: 10px;
  transition: .3s;
}
.gnav_lang_menu li a:hover {
  color: #fff;
  border-bottom-color: #008BD6;
}

/* .gnav_search_menu */
.gnav_search_menu {
  margin: 0 auto;
  display: table;
  width: 100%;
  max-width: 580px;
}
.gnav_search_menu > * {
  display: table-cell;
  vertical-align: middle;
}
.gnav_search_menu .search_window {
  width: 90%;
  height: 55px;
  background: #fff;
  border: 1px solid #bbb;
  border-right: none;
  border-radius: 0;
  padding: 10px 15px;
}
.gnav_search_menu .serch_button {
  width: 10%;
  height: 55px;
  background: #000 url(/image/common/icon_search_03.png) no-repeat center center;
  border: none;
  border-radius: 0;
}



/*---------------------------------------------------------------------
	topic_path_top
---------------------------------------------------------------------*/
.topic_path {
  background: rgba(0,0,0,.63);
}
.topic_path > ol {
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  box-sizing: content-box;
  margin: 0 auto;
  max-width: 1240px;
  padding: 8px 15px;
}
.topic_path > ol > li {
  display: inline;
}
.topic_path > ol > li + li::before {
  content: ">";
  margin: 0 5px;
}
.topic_path > ol > li a {
  color: #fff;
  text-decoration: underline;
}
.topic_path > ol > li:last-child a {
	text-decoration: none;
	color: #fff;
}

/*---------------------------------------------------------------------
	pagebody
---------------------------------------------------------------------*/
#pagebody {
  background: #042775 url("/image/page/bg_dir_default.png") repeat-y center top;
  background-attachment: fixed;
  background-size: cover;
  position: relative;
}
#top #pagebody {
  background: none;
}
.pagebody_inner,
#pagebody_inner {
  margin: 0 auto;
  max-width: 1200px;
  padding: 20px 20px 80px;
  box-sizing: content-box;
  background: #fff;
}

#alpha {
  float: left;
  width: 74.16%;
}

/*--------- text -----------*/
.page_ttl {
  color: #fff;
  text-align: center;
  font-size: 3.2rem;
  font-weight: normal;
  padding: 13px 15px;
  line-height: 1.4;
  background: #333;
}
.page_ttl span {
  max-width: 1200px;
  margin: 0 auto;
  display: block;
}
.page_ttl_02 {
  color: #000;
  font-size: 3.4rem;
  font-weight: bold;
  padding-bottom: 25px;
  margin-bottom: 35px;
  background: url("/image/common/bg_07.png") repeat-x left bottom;
}

.main_image {
  position: relative;
}
.main_image .inner {
  position: absolute;
  left: 0;
  bottom: 80px;
  width: 100%;
  text-align: center;
}
.main_image .lead {
  color: #fff;
  line-height: 1.2;
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 20px;
  box-sizing: content-box;
  
  background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.65) 30%, rgba(0,0,0,0.65) 70%, rgba(0,0,0,0) 100%);
  background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 30%,rgba(0,0,0,0.65) 70%,rgba(0,0,0,0) 100%);
  background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 30%,rgba(0,0,0,0.65) 70%,rgba(0,0,0,0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#00000000',GradientType=1 );
}
.main_image .lead p { font-size: 2.2rem; }
.main_image .lead .ttl { font-size: 3.4rem; font-weight: normal; }

.content1 {
  line-height: 1.8;
}
/*.content1 p {
  margin: 1em 0;
  line-height: 1.8;
}*/
.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,
.content1 * + ol,
.content1 * + ul,
.content1 * + table {
  margin-top: 20px;
}

.content1 h2,.content1 h3,.content1 h4,.content1 h5,.content1 h6,
.lead_01,.lead_02,.lead_03,.lead_04,.lead_05,.lead_06 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "sans-serif";
}

.lead_01,
.content1 h2 {
  font-size: 3rem;
  font-weight: bold;
  padding-bottom: 15px;
  border-bottom: 4px solid #008BD6;
  margin-bottom: 30px;
}
.lead_02,
.content1 h3 {
  color: #333;
  font-size: 2.8rem;
  font-weight: bold;
  background: #E3F2FA;
  padding: 10px 15px;
  margin-bottom: 30px;
  position: relative;
}
.lead_02::after,
.content1 h3::after {
  content: "";
  position: absolute;
  left: 18px;
  bottom: -13px;
  border: 5px solid transparent;
  border-top: 9px solid #E3F2FA;
}

.lead_03,
.content1 h4 {
  color: #333;
  font-size: 2.6rem;
  font-weight: bold;
  border-bottom: 2px solid #ccc;
  padding-bottom: 8px;
  margin-bottom: 28px;
}
.lead_04,
.content1 h5 {
  color: #333;
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 18px;
}
.lead_05 {
  color: #0059B2;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.4;
}
.lead_06 {
  color: #333;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.4;
}
.lead_07 {
  color: #fff;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 30px;
  padding: 10px;
  background: #000;
}
.fc_01 {
  color: #D80000;
}
.fc_02 {
  color: #008BD6;
}
.fc_03 {
    color: #3366ff;
}

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

/* caution_box */
.caution_box_01 {
  padding: 15px 20px;
  background: #FFFFF0;
  border: 2px solid #ddd;
}
.caution_box_02 {
  padding: 15px 20px;
  background: #FFF5F5;
  border: 2px solid #ddd;
}
.caution_box_03 {
  padding: 15px 20px;
  border: 2px solid #ddd;
}
.caution_box_04 {
  background-color: #F0F7FB;
  padding: 10px;
}


/*--------- btn -----------*/
a.btn_01 {
  font-weight: bold;
  color: #008CD6;
  text-decoration: none;
  display: block;
  border: 1px solid #CCCCCC;
  border-radius: 50px;
  padding: 15px 15px 15px 50px;
  transition: .3s;
  background: #fff url(/image/common/icon_arrow_02.svg) no-repeat 20px center;
	background-size: 20px 20px;
}
a.btn_01:hover {
  color: #fff;
  background-color: #008CD6;
  background-image: url("/image/common/icon_arrow_03.svg");
  border-color: #008CD6;
}
a.btn_02 {
  font-weight: bold;
  text-align: center;
  color: #fff;
  display: block;
  text-decoration: none;
  border-radius: 50px;
  padding: 14px 25px 14px 50px;
  transition: .3s;
  background: #000 url(/image/common/icon_arrow_04.svg) no-repeat 20px center;
	background-size: 20px 20px;
}
a.btn_02:hover {
  color: #fff;
  background-color: #008CD6;
}
a.btn_03 {
  text-align: center;
  color: #fff;
  display: block;
  text-decoration: none;
  border-radius: 50px;
  padding: 14px 50px;
  transition: .3s;
  background: #000 url(/image/common/icon_arrow_03.svg) no-repeat right 20px center;
	background-size: 20px 20px;
}
a.btn_03:hover {
  color: #fff;
  background-color: #008CD6;
}
a.btn_04 {
  font-weight: bold;
  text-align: center;
  color: #fff;
  display: block;
  text-decoration: none;
  border-radius: 50px;
  padding: 14px 25px;
  transition: .3s;
  background: #000;
}
a.btn_04:hover {
  color: #fff;
  background-color: #008CD6;
}
a.btn_05 {
  font-weight: bold;
  text-align: center;
  color: #fff;
  display: block;
  text-decoration: none;
  border-radius: 10px;
  padding: 14px 50px 14px 25px;
  transition: .3s;
  background: #000 url(/image/common/icon_arrow_05.svg) no-repeat right 20px center;
	background-size: 10px 16px;
}
a.btn_05:hover {
  color: #fff;
  background-color: #008CD6;
}
a.btn_06 {
  font-weight: bold;
  text-align: center;
  color: #fff;
  display: block;
  text-decoration: none;
  border-radius: 10px;
  padding: 14px 25px;
  transition: .3s;
  background: #000;
}
a.btn_06:hover {
  color: #fff;
  background-color: #008CD6;
}

[class*="btn_"].btn_size_01 {
  display: inline-block;
  width: 60%;
  max-width: 400px;
}

.icon_blank_01::after {
	display: inline-block;
  content: url(/image/common/icon_blank_01.svg);
  margin-left: 12px;
  vertical-align: baseline;
	width: 18px;
	height: 16px;
}
[class*="btn_"].icon_blank_01:hover::after {
  content: url(/image/common/icon_blank_02.svg);
}


/*.icon_pdf_01::before {
  content: url(/image/common/icon_pdf_01.png);
  margin-right: 5px;
  vertical-align: middle;
}
[class*="btn_"].icon_pdf_01:hover::before {
  content: url(/image/common/icon_pdf_02.png);
}*/
/*.content1 a[href*=".pdf"]:not(.no_icon)[class*="btn_"]:hover::after {
  content: url(/image/common/icon_pdf_02.png);
}*/


/*--------- ul ol dl table -----------*/
.list_decimal {
	list-style: decimal outside;
    padding-left: 28px !important;
}
.list_decimal li + li {
  margin-top: 5px;
}

.list_disc {}
.list_disc li {
  position: relative;
  padding-left: 28px;
}
.list_disc li + li {
  margin-top: 5px;
}
.list_disc li::before {
  position: absolute;
  left: 10px;
  top: 10px;
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #008BD6;
}
.list_disc.c_01 li::before { background: #D80000; }

.caution_table {
  border: none;
}
.caution_table tr {
  border-bottom: 10px solid #fff;
}
.caution_table th {
  border: none;
  text-align: left;
}
.caution_table td {
  border: none;
  background: #F5F5F5 url("/image/common/icon_arrow_08.png") no-repeat center left;
}

.th_bg_01 { color: #333; background: #E3F1FF; }
.th_bg_02 { color: #333; background: #EEF8F5; }

.caution_dl_01 {}
.caution_dl_01 dt {
  color: #fff;
  background: #003366;
  padding: 11px 20px;
}
.caution_dl_01.c_01 dt { background: #008BD6; }
.caution_dl_01.c_02 dt { background: #008C8C; }
.caution_dl_01 dd {
  padding: 20px;
  border: 1px solid #ccc;
  border-top: none;
}
.caution_dl_01 dd p {
    margin: 0;
}

.anchor_01 {
  display: table;
  width: 100%;
  border: 1px solid #ccc;
  table-layout: fixed;
}
.anchor_01 li {
  display: table-cell;
  vertical-align: top;
}
.anchor_01 li + li {
  border-left: 1px solid #ccc;
}
.anchor_01 li a {
  color: #1F1F1F;
  font-size: 1.8rem;
  line-height: 1.4;
  display: table;
  width: 100%;
  text-align: center;
  text-decoration: none;
  padding: 17px 10px 41px;
  background: url("/image/common/icon_arrow_06.svg") no-repeat center bottom 10px;
	background-size: 24px 24px;
  transition: .3s;
}
.anchor_01 li a:hover {
  color: #1F1F1F;
  background-color: #E3F2FA;
}
.anchor_01 li a span {
  display: block;
  display: table-cell;
  vertical-align: middle;
}

/*--------- template -----------*/
.fll {
	float: left;
}
.flr {
	float: right;
}
.fll_img {
  float: left;
  margin: 0 3.33% 3.33% 0;
  /* width: 31.66%; */
  max-width: 31.66%;
}
.flr_img {
  float: right;
  margin: 0 0 3.33% 3.33%;
  /* width: 31.66%; */
  max-width: 31.66%;
}
.flr_270 {
  float: right;
  margin: 0 0 0 3.33%;
  max-width: 270px;
}
.flr_372 {
  float: right;
  margin: 0 0 0 3.33%;
  max-width: 372px;
}

.fll_img + p,
.flr_img + p{
  margin-top: 0;
}

.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 .item > img,
.list_2column .item > img,
.list_3column .item > img,
.list_4column .item > img,
.list_5column .item > img {
  width: 100%;
  height: auto;
}

/* list_2column */
.list_2column {
  font-size: 0;
}
.list_2column .item {
  width: 48.33%;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  margin: 0 3.33% 0 0;
}
.list_2column .item:nth-child(2n) {
  margin-right: 0;
}
.list_2column .item:nth-child(n+3) {
  margin-top: 3.33%;
}

/* list_2column_02 */
.list_2column_02 {
  font-size: 0;
}
.list_2column_02 .item {
  width: 48.33%;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  margin: 0 3.33% 0 0;
}
.list_2column_02 .item:nth-child(2n) {
  margin-right: 0;
}
.list_2column_02 .item:nth-child(n+3) {
  margin-top: 3.33%;
}

/* list_3column */
.list_3column {
  font-size: 0;
}
.list_3column .item {
  width: 31%;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  margin: 0 3.5% 0 0;
}
.list_3column .item:nth-child(3n) {
  margin-right: 0;
}
.list_3column .item:nth-child(n+4) {
  margin-top: 3.33%;
}

/* list_3column_02 */
.list_3column_02 {
  font-size: 0;
}
.list_3column_02 .item {
  width: 31%;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  margin: 0 3.5% 0 0;
}
.list_3column_02 .item:nth-child(3n) {
  margin-right: 0;
}
.list_3column_02 .item:nth-child(n+4) {
  margin-top: 3.33%;
}

/* list_4column */
.list_4column {
  font-size: 0;
}
.list_4column .item {
  width: 22.5%;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  margin: 0 3.33% 0 0;
}
.list_4column .item:nth-child(4n) {
  margin-right: 0;
}
.list_4column .item:nth-child(n+5) {
  margin-top: 3.33%;
}

/* list_5column */
.list_5column {
  font-size: 0;
}
.list_5column .item {
  width: 17.33%;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  margin: 0 3.33% 0 0;
}
.list_5column .item:nth-child(5n) {
  margin-right: 0;
}
.list_5column .item:nth-child(n+6) {
  margin-top: 3.33%;
}

/* contact_box */
.contact_box {
  padding: 15px 20px;
  border: 3px solid #008CD6;
}
* + .contact_box {
  margin-top: 60px;
}
.contact_box .about {
  float: left;
  width: 48.52%;
}
.contact_box .ttl {
  color: #008CD6;
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 12px;
}
.contact_box .name {
  color: #333;
  font-weight: bold;
  font-size: 2rem;
  margin-bottom: 10px;
}
.contact_box p {
  color: #333;
  font-size: 1.8rem;
}
.contact_box .link {
  float: right;
  width: 48.52%;
  font-size: 0;
}
.contact_box .link li {
  display: inline-block;
  vertical-align: top;
  font-size: 1.6rem;
  width: 48.21%;
}
.contact_box .link li + li {
  margin-left: 3.57%;
}
.contact_box .link a {
  display: block;
  color: #555;
  text-decoration: none;
  font-weight: bold;
  background: #EEE no-repeat center 31px;
  text-align: center;
  padding: 63px 10px 22px;
  transition: .3s;
}
.contact_box .link .icon_01 { background-image: url("/image/common/icon_contact_box_01_01.png"); }
.contact_box .link .icon_02 { background-image: url("/image/common/icon_contact_box_02_01.png"); }

.contact_box .link a:hover {
  color: #fff;
  background-color: #0059B2;
}
.contact_box .link .icon_01:hover { background-image: url("/image/common/icon_contact_box_01_02.png"); }
.contact_box .link .icon_02:hover { background-image: url("/image/common/icon_contact_box_02_02.png"); }

/*--------- top_ttl -----------*/
.top_ttl_01 {
  font-size: 3rem;
  text-align: center;
  font-weight: bold;
  position: relative;
  margin-bottom: 15px;
}
.top_ttl_01::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  margin-left: -20px;
  width: 40px;
  height: 2px;
  background: #72B8FF;
}
.lang_en .top_ttl_01 {
  margin-bottom: 30px;
}
.top_ttl_02 {
  font-size: 1.4rem;
  text-align: center;
  margin-bottom: 15px;
}

/*--------- bnr -----------*/
.bnr_01 {
  padding: 45px 20px;
  background: url("/image/common/bg_05.png");
}
.bnr_01 ul {
  max-width: 1200px;
  margin: 0 auto;
  letter-spacing: -.5em;
}
.bnr_01 li {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  width: 31.66%;
  margin: 0 2.5% 0 0;
}
.bnr_01 li:nth-child(3n) { margin-right: 0; }
.bnr_01 li:nth-child(n+4) { margin-top: 2.5%; }

/* bnr_02 */
.bnr_02 {
	padding: 45px 20px;
	background: #fff;
}
.bnr_02 ul {
	/*text-align: center;*/
	max-width: 1373px;
	margin: 0 auto;
	letter-spacing: -.5em;
}
.bnr_02 li {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	width: 16.02%;
	margin: 0 0.72% 0.72% 0;
}
.bnr_02 li:nth-child(6n) { margin-right: 0; }

/*--------- list_index -----------*/
* + #list_index {
  margin-top: 30px;
}
#list_index {
  font-size: 0;
}
#list_index .item {
  font-size: 1.6rem;
    display: inline-block;
    vertical-align: top;
    margin: 0 2.08% 2.08% 0;
    width: 31.91%;
}
#list_index .item:nth-child(3n) {
  margin-right: 0;
}
#list_index .item a {
    color: #212121;
    text-decoration: none;
    display: block;
    position: relative;
    overflow: hidden;
    border: 1px solid #ccc;
}
#list_index .item a:hover {
  transition: .8s;
}
#list_index .item .thumb {
  padding: 14px;
}
#list_index .item .thumb span {
  display: block;
  position: relative;
  padding-bottom: 66.1%;
  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 a:hover .thumb img {
  opacity: 1;
  transform: scale(1.08);
}
#list_index .item .thumb + .detail {
  border-top: 1px solid #ccc;
}
#list_index .item .detail {
  padding: 12px;
  position: relative;
}
#list_index .item .ttl {
  color: #008CD6;
  font-size: 2rem;
  font-weight: bold;
  background: url(/image/common/icon_arrow_10.png) no-repeat 0 4px;
  border: none;
  margin: 0;
  padding: 0 0 0 30px;
}
#list_index .item .lead {
  color: #333;
  font-size: 1.5rem;
  margin-top: 15px;
  background: #F5F5F5;
  padding: 8px 12px;
}
.list_index_contents > ul {
  margin-top: 10px;
}
.list_index_contents > ul li {
  margin-left: 30px;
  list-style: disc outside;
}

/* list_index_02 */
.list_index_02 {
  font-size: 0;
}
.list_index_02 li {
  font-size: 1.8rem;
  display: inline-block;
  vertical-align: top;
  width: 49.16%;
  margin: 0 1.66% 1.66% 0;
}
.list_index_02 li:nth-child(2n) {
  margin-right: 0;
}
.list_index_02 li a {
  display: block;
  border: 3px solid #DDD;
  background: url(/image/common/icon_arrow_02.svg) no-repeat 15px center;
	background-size: 20px 20px;
  padding: 23px 15px 23px 45px;
  transition: .3s;
}
.list_index_02 li a:hover {
  background-color: #f8fcfe;
  border-color: #008CD6;
}

/*--------------------------------------------------
	list_topics
--------------------------------------------------*/
/* list_topics */
.list_topics {}
.list_topics .item {
  border-bottom: 1px solid #ccc;
}
.list_topics .item:first-child {
  border-top: 1px solid #ccc;
}
.list_topics a {
  text-decoration: none;
  display: table;
  width: 100%;
  position: relative;
  padding: 20px 10px;
  transition: .3s;
}
.list_topics a:hover {
  background-color: #fafafa;
}
.list_topics .thumb {
  display: table-cell;
  vertical-align: top;
  width: 120px;
}
.list_topics .thumb span {
  display: block;
  overflow: hidden;
  padding-bottom: 66.66%;
  position: relative;
}
.list_topics .thumb img {
  position: absolute;
  top: -100%;
  right: -100%;
  bottom: -100%;
  left: -100%;
  margin: auto;
  max-width: 100%;
}
.list_topics .detail {
  display: table-cell;
  vertical-align: middle;
  padding-left: 20px;
}
.list_topics .date {
  color: #666;
  font-size: 1.4rem;
  margin-bottom: 10px;
}
.list_topics .tag_cat {
  font-size: 1.3rem;
  display: inline-block;
  color: #333333;
  border: 1px solid #ddd;
  text-align: center;
  padding: 0 10px;
  margin-left: 15px;
}
.list_topics .tag_cat.cat_01 { background: #C5EFEF; }
.list_topics .tag_cat.cat_02 { background: #FFFFDB; }
.list_topics .tag_cat.cat_03 { background: #CEE7FF; }

.list_topics .text {
  font-size: 1.6rem;
  text-decoration: underline;
}

/* list_topics_02 */
.list_topics_02 {
  font-size: 0;
}
.list_topics_02 .item {
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  width: 22.47%;
  margin: 0 3.37% 50px 0;
}
.list_topics_02 .item:nth-child(4n) {
  margin-right: 0;
}
.list_topics_02 .item a {
  display: block;
  text-decoration: none;
}
.list_topics_02 .thumb {
  margin-bottom: 10px;
  position: relative;
  padding-bottom: 66.5%;
  overflow: hidden;
}
.list_topics_02 .thumb img {
  position: absolute;
  top: -100%;
  right: -100%;
  bottom: -100%;
  left: -100%;
  margin: auto;
  max-width: 100%;
}
.list_topics_02 .text {
  text-decoration: underline;
  line-height: 1.4;
  margin-bottom: 5px;
}
.list_topics_02 .date {
  color: #666666;
  font-size: 1.4rem;
}

/* list_media */
.list_media {
  font-size: 0;
}
.list_media .item {
  font-size: 1.8rem;
  vertical-align: top;
  border-bottom: 1px dotted #ccc;
}
.list_media .item:first-child {
  border-top: 1px dotted #ccc;
}
.list_media .item > * {
  display: table;
  width: 100%;
  padding: 10px 0;
}
.list_media .item a {
	color: #000;
	text-decoration: none;
	display: block;
}
.list_media .thumb {
  display: table-cell;
  vertical-align: top;
  width: 150px;
}
.list_media .thumb span {
  display: block;
  position: relative;
  overflow: hidden;
  padding-bottom: 66.66%;
}
.list_media .thumb img {
  position: absolute;
  width: auto;
  height: auto;
  top: 50%;
  left: 50%;
  max-width: 100%;
  max-height: 100%;
  transform: translate(-50%, -50%);
}
/*.list_media .thumb img {
  position: absolute;
  top: -100%;
  left: -100%;
  right: -100%;
  bottom: -100%;
  margin: auto;
  min-height: 100%;
  min-width: 100%;
  width: auto;
  max-width: inherit;
  transition: .5s;
}*/
.list_media .detail {
  display: table-cell;
  vertical-align: top;
  padding: 0 15px;
}
.list_media .date {
  color: #666;
  font-size: 1.3rem;
  margin-bottom: 5px;
}
.list_media .text {
  font-size: 100%;
  font-weight: normal;
}

/* .pager */
.pager {
  margin: 60px 0;
  text-align: center;
}
.pager ul {
  font-size: 0;
  border: 1px solid #ccc;
  display: inline-block;
}
.pager ul li {
  font-size: 1.6rem;
  display: inline-block;
}
.pager ul li + li {
  border-left: 1px solid #ccc;
}
.pager a,
.pager span {
  color: #008BD6;
  display: block;
  text-decoration: none;
  padding: 9px 16px;
  background-color: #fff;
  transition: .3s;
}
.pager li.current span {
  color: #ccc;
  background: #222;
}
.pager a:hover {
  color: #008BD6;
  background: #E3F2FA;
}

/* pager_detail */
.pager_detail {
  display: table;
  width: 100%;
  table-layout: fixed;
  margin: 60px auto;
}
.pager_detail li {
  display: table-cell;
  vertical-align: middle;
  position: relative;
}
.pager_detail li + li::before {
  content:"";
  position: absolute;
  left: -1px;
  top: 10px;
  background: rgba(255, 255, 255, 0.25);
  width: 1px;
  height: 40px;
}
.pager_detail li > a,
.pager_detail li > span {
  display: block;
  color: #fff;
  text-decoration: none;
  background: #008BD6;
  text-align: center;
  padding: 18px 10px;
}
.pager_detail li > a:hover {
  color: #fff;
  opacity: .8;
  transition: .3s;
}
.pager_detail li > span {
  background: #ababab;
}
.pager_detail li > * > span { position: relative; }
.pager_detail li > * > span::after {
  content: "";
  position: absolute;
  top: 6px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  width: 5px;
  height: 5px;
}
.pager_detail .next span::after {
  right: -15px;
  transform: rotate(-45deg);
}
.pager_detail .prev span::after {
  left: -15px;
  transform: rotate(135deg);
}

.t_modified_date {
  color: #666;
  font-size: 1.4rem;
  margin-bottom: 20px;
}
.t_modified_date .cat {
  font-size: 1.3rem;
  display: inline-block;
  color: #333333;
  border: 1px solid #ddd;
  text-align: center;
  padding: 0 10px;
  margin-left: 5px;
}
.t_modified_date .cat_01 { background: #EDFAFA; }
.t_modified_date .cat_02 { background: #FFFFEC; }
.t_modified_date .cat_03 { background: #F1F8FF; }

.eventClose {
	padding: 0.5em 0;
  margin-bottom: 20px;
	font-weight: bold;
	color: #fe3501;
	text-align: center;
	background-color: #FFF5F5;
}

/*----------------------
	widget
-----------------------*/
.widget_column {}
.widget_column .item:first-child {
	margin-top: 60px;
}
.widget_column .item + .item {
	margin-top: 30px;
}
.widget_column .item .inner {
	padding: 20px;
	border: 5px solid #DDD;
}
.widget_column .tag_category {
	color: #fff;
	padding: 7px 10px;
	font-size: 125%;
}
.widget_column .column_000 .tag_category {
	background-color: #00468C;
}
.widget_column .column_001 .tag_category {
	background-color: #0085B2;
}
.widget_column .column_002 .tag_category {
	background: #179B7A url(/image/icon_column_002.png) no-repeat 10px 10px;
	padding-left: 45px;
}
.widget_column .item .thumb {
	float: right;
	width: 270px;
	margin-left: 20px;
}
.widget_column .item .ttl {
	font-size: 150%;
	font-weight: normal;
	margin-bottom: 10px;
	padding: 3px 7px 0;
	overflow: hidden;
}
.widget_column .column_000 .ttl {
	background-color: #CCE8E8;
}
.widget_column .column_001 .ttl {
	background-color: #E3F1FF;
}
.widget_column .column_002 .ttl {
	background-color: #EEF8F5;
}

/*program*/
.widget_program {
	margin: 40px auto;
	padding: 0 40px;
	/* padding: 0 40px 40px; */
}
.widget_program .item {
}
.widget_program .item + .item {
	margin-top: 20px;
}
.widget_program .item .inner {
	padding: 20px;
	border: 5px solid #DDD;
}
.widget_program .tag_category {
	color: #fff;
	padding: 7px 10px;
	font-size: 125%;
}
.widget_program .inner li {
    margin: 5px 0;
}
.widget_program .column_000 .tag_category {
	background: #00468C url(../img/common/icon_program_on.png) no-repeat 10px 8px;
	padding-left: 42px;
	padding-top: 8px;
}
.widget_program .column_001 .tag_category {
	background: #006DD9 url(../img/common/icon_program_on.png) no-repeat 10px 8px;
	padding-left: 42px;
	padding-top: 8px;
}
.widget_program .column_002 .tag_category {
	background: #008C69 url(../img/common/icon_program_on.png) no-repeat 10px 8px;
	padding-left: 42px;
	padding-top: 8px;
}
.widget_program .item .thumb {
	float: right;
	width: 270px;
	margin-left: 20px;
}
.widget_program .item .ttl {
	font-size: 150%;
	font-weight: normal;
	margin-bottom: 10px;
	padding: 3px 7px 0;
	overflow: hidden;
}
.widget_program .column_000 .ttl {
	background-color: #CCE8E8;
}
.widget_program .column_001 .ttl {
	background-color: #E3F1FF;
}
.widget_program .column_002 .ttl {
	background-color: #EEF8F5;
}

/*--------------------------------------------------
	hierarchy_link
--------------------------------------------------*/
.hierarchy_link {
	text-align: center;
	margin-top: 120px;
	padding: 35px 20px 15px;
	border: 1px solid #ccc;
	position: relative;
}

/* ttl */
.hierarchy_link .ttl {
	text-align: center;
	letter-spacing: 0.1em;
	width: 100%;
	margin-bottom: 25px;
	position: absolute;
	top: -15px;
	left: 0;
}
.hierarchy_link .ttl a {
	color: #000;
	font-size: 2.0rem;
	text-decoration: none;
	display: inline-block;
}
.hierarchy_link .ttl span {
	padding: 0 10px;
	background-color: #fff;
}

/* inner */
.hierarchy_link .inner {
  text-align: center;
	letter-spacing: -.5em;
}
.hierarchy_link .inner li {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	margin-bottom: 15px;
	padding: 0 10px;
}
.hierarchy_link .inner li + li {
	border-left: 1px solid #ccc;
}
.hierarchy_link .inner li a {
  color: #00468C;
	font-size: 1.5rem;
  text-decoration: none;
  display: block;
  padding: 2px 10px;
}
.hierarchy_link .ttl a:hover,
.hierarchy_link .inner li a:hover {
	color: #8C008C;
	text-decoration: underline;
}
.hierarchy_link .inner li .selected {
	background-color: #F5F5F5;
}
/*.hierarchy_link .inner li {
	width: 23.75%;
	letter-spacing: normal;
	display: inline-block;
	margin: 0 1.66% 0 0;
	vertical-align: top;
}
.hierarchy_link .inner li a {
  color: #00468C;
  text-align: center;
  text-decoration: none;
  display: block;
  padding: 20px 10px;
  background-color: #E9F5FC;
  border: 3px double #E9F5FC;
  transition: .8s;
}
.hierarchy_link .inner li a:hover {
	border-color: #00468C;
}
.hierarchy_link .inner li .selected {
  background-color: #fff;
	border-color: #00468C;
}
.hierarchy_link .inner li:nth-child(4n) { margin-right: 0; }
.hierarchy_link .inner li:nth-child(n+5) { margin-top: 1.66%; }*/
/*.hierarchy_link a {
	color: #00468C;
	font-size: 1.4rem;
	font-weight: bold;
	display: block;
	padding: 18px 15px;
	text-decoration: none;
	border-top: 1px solid #ccc;
	position: relative;
}
.hierarchy_link .ttl a {
	border-top: none;
}
.hierarchy_link a::after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	margin-top: -6px;
	width: 6px;
	height: 6px;
	border-right: 2px solid #00468C;
	border-bottom: 2px solid #00468C;
	transform: rotate(-45deg);
}*/

/*--------------------------------------------------
	haisai めんそーれ沖縄美ら海水族館へ
--------------------------------------------------*/
/* haisai_contents */
.haisai_contents {
	margin-bottom: 60px;
}
/* haisai_img */
.haisai_contents .haisai_img {
  position: relative;
  margin-bottom: 30px;
}
.haisai_contents .haisai_img .ttl {
  color: #fff;
  font-weight: bold;
  font-size: 2.2rem;
  text-align: center;
  padding: 10px;
  line-height: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 700px;
  margin-left: -350px;
  margin-top: -20px;
  background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.65) 50%, rgba(0,0,0,0) 100%);
  background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 50%,rgba(0,0,0,0) 100%);
  background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 50%,rgba(0,0,0,0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#00000000',GradientType=1 );
}
.haisai_contents .haisai_img .ttl::after {
  display: none;
}
/* haisai_txt */
.haisai_contents .txt_lead {
	text-align: center;
	margin-bottom: 20px;
}
.haisai_contents .txt_summary {
	text-align: center;
}



/*--------------------------------------------------
	guide ご利用案内
--------------------------------------------------*/
.dir_guide #pagebody {
  background: #032574 url("/image/page/bg_dir_guide.png") repeat-y center top;
  background-attachment: fixed;
  background-size: cover;
}
.guide_index_l {
  letter-spacing: -.5em;
}
.guide_index_l li {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  width: 23.75%;
  margin: 0 1.66% 0 0;
}
.guide_index_l li:nth-child(4n) { margin-right: 0; }
.guide_index_l li:nth-child(n+5) { margin-top: 1.66%; }

.guide_index_l a {
  color: #00468C;
  text-align: center;
  text-decoration: none;
  font-size: 1.8rem;
  display: block;
  padding: 110px 10px 40px;
  border: 3px double #E9F5FC;
  background: #E9F5FC no-repeat center 40px;
  background-size: 50px;
  transition: .8s;
}
.guide_index_l .icon_01 a { background-image: url("/image/common/guide/icon_01.svg"); }
.guide_index_l .icon_02 a { background-image: url("/image/common/guide/icon_02.svg"); background-size: 30px; }
.guide_index_l .icon_03 a { background-image: url("/image/common/guide/icon_03.svg"); background-position: center 45px; }
.guide_index_l .icon_04 a { background-image: url("/image/common/guide/icon_04.svg"); }
.guide_index_l .icon_05 a { background-image: url("/image/common/guide/icon_05.svg"); background-size: 52px; }
.guide_index_l .icon_06 a { background-image: url("/image/common/guide/icon_06.svg"); background-size: 60px; background-position: center 46px; }
.guide_index_l .icon_07 a { background-image: url("/image/common/guide/icon_07.svg"); background-size: 56px; }
.guide_index_l .icon_08 a { background-image: url("/image/common/guide/icon_08.svg"); background-size: 38px; }
.guide_index_l .icon_09 a { background-image: url("/image/common/guide/icon_09.svg"); background-size: 47px; }
.guide_index_l .icon_10 a { background-image: url("/image/common/guide/icon_10.svg"); }
.guide_index_l .icon_11 a { background-image: url("/image/common/guide/icon_11.svg"); }
.guide_index_l .icon_12 a { background-image: url("/image/common/guide/icon_12.svg"); background-size: 41px; }
.guide_index_l .icon_13 a { background-image: url("/image/common/guide/icon_13.svg"); }
.guide_index_l .icon_14 a { background-image: url("/image/common/guide/icon_14.svg"); background-size: 57px; }
.guide_index_l .icon_15 a { background-image: url("/image/common/guide/icon_15.svg"); }
.guide_index_l .icon_16 a { background-image: url("/image/common/guide/icon_16.svg"); }

.guide_index_l a:hover {
  color: #00468C;
  border-color: #00468C;
}

.access_tab {}
.access_tab_navi {
  padding: 0 80px;
  font-size: 0;
}
.access_tab_navi li {
  font-size: 2.8rem;
  display: inline-block;
  vertical-align: bottom;
  width: 500px;
}
.access_tab_navi li + li {
  margin-left: 40px;
}
.access_tab_navi li a {
  border: 2px solid;
  display: block;
  text-decoration: none;
  padding: 13px;
  text-align: center;
  position: relative;
  bottom: -2px;
  background: #fff;
}
.access_tab_navi li a:hover { background-color: #fafafa; }
.access_tab_navi .navi_01 a {
  color: #0085B2;
  border-color: #0085B2;
  border-bottom-color: #179A79;
}
.access_tab_navi .navi_02 a {
  color: #179A79;
  border-color: #179A79;
  border-bottom-color: #0085B2;
}
.access_tab_navi li a.active {
    border-bottom-color: #fff;
}
.access_tab_navi li span {
  display: block;
  font-size: 1.8rem;
  color: #fff;
  background: #000;
}
.access_tab_navi .navi_01 span { background-color: #0085B2; }
.access_tab_navi .navi_02 span { background-color: #179A79; }

.access_tab .tab_item {
  display: none;
  padding-top: 40px;
}
.access_tab #tab_01 { border-top: 2px solid #0085B2; display: block; }
.access_tab #tab_02 { border-top: 2px solid #179A79; }

/* conzatsu */
.conzatsu .img_graf {
	text-align: center;
	margin-bottom: 35px;
}
.conzatsu .img_graf + p {
	font-size: 18px;
}
.conzatsu .notes {
	display: table;
	width: 100%;
	max-width: 1050px;
	margin: 20px auto 60px;
	border: 1px solid #DDD;
}
.conzatsu .notes dt, .conzatsu .notes dd {
	display: table-cell;
	vertical-align: middle;
	padding: 10px;
	width: 25%;
}
.conzatsu .notes dt {
	color: #fff;
	background-color: #000;
	text-align: center;
}
.conzatsu .notes dd {
	border-left: 1px solid #DDD;
}
.conzatsu .notes dd img {
	margin-right: 10px;
}
.conzatsu .hours {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #ccc;
	font-size: 14px;
	line-height: 1.6;
}
.conzatsu .hours th {
	color: #008BD6;
	vertical-align: middle;
	padding: 13px 10px;
	border: 1px solid #CCCCCC;
	background: #EEE;
	font-weight: normal;
	text-align: center;
	word-break: break-all;
}
.conzatsu .hours td {
	padding: 13px 10px;
	border: 1px solid #CCCCCC;
	background-color: #fff;
	word-break: break-all;
}
.conzatsu .calender {
	width: 100%;
}
.conzatsu .calender caption {
	color: #0059B2;
	text-align: left;
	font-size: 18px;
}
.conzatsu .calender caption strong {
	font-size: 30px;
}
.conzatsu .calender thead th {
	color: #fff;
	padding: 0.2em;
	font-size: 14px;
	font-weight: normal;
	border: 1px solid #ddd;
	background-color: #0059B2;
}
.conzatsu .calender tbody td {
	text-align: center;
	border: 1px solid #CCCCCC;
	color: #929292;
	padding: 0 0 0.5em 0;
	font-size: 85%;
	border-top: none;
	vertical-align: top;
}
.conzatsu .calender tbody td span {
	margin: 0 0 5px 1px;
	padding: 2px 5px;
	color: #525252;
	text-align: left;
	background-color: #efefef;
	border-top: 2px solid #0059B2;
	display: block;
}
.conzatsu .calender tbody td.closed {
	color: #ff3900;
}
.conzatsu .calender tbody td.closed span {
	margin: 0 0 14px 1px;
}
.conzatsu .calender tbody td.red {
	background-color: #FFF7F5;
}
.conzatsu .calender tbody td.red span {
	color: #a62500;
}
.conzatsu .calender tbody td.blue {
	background-color: #EFFBFF;
}
.conzatsu .calender tbody td.blue span {
	color: #005a8b;
}
.conzatsu .calender.type_02 caption {
	color: #333;
}
.conzatsu .calender.type_02 thead th {
	background-color: #777;
}
.conzatsu .calender.type_02 tbody td span {
	border-color: #777;
}

/*--------------------------------------------------
	area エリアガイド
--------------------------------------------------*/
/*----- bg_pagebody -----*/
.dir_area.dir02_the-greatsea #pagebody {
  background: #196DC3 url("/userfiles/images/area/the-greatsea/main-visual-bg-blur.jpg") no-repeat center top;
  background-attachment: fixed;
  background-size: cover;
}
.dir_area.dir02_the-coral-reef #pagebody {
  background: #196DC3 url("/userfiles/images/area/the-coral-reef/main-visual-bg-blur.jpg") no-repeat center top;
  background-attachment: fixed;
  background-size: cover;
}
.dir_area.dir02_the-kuroshio #pagebody {
  background: #1AA5F6 url("/userfiles/images/area/kuroshio/main-visual-bg-blur.jpg") no-repeat center top;
  background-attachment: fixed;
  background-size: cover;
}
.dir_area.dir02_the-deep-sea #pagebody {
  background: #000 url("/userfiles/images/area/deep-sea/main-visual-bg-blur.jpg") no-repeat center top;
  background-attachment: fixed;
  background-size: cover;
}
.dir_area.dir02_restaurant #pagebody {
  background: #000 url("/userfiles/images/area/restaurant/main-visual-bg-blur.jpg") no-repeat center top;
  background-attachment: fixed;
  background-size: cover;
}
.dir_area.dir02_surrounding-area #pagebody {
  background: #000 url("/userfiles/images/area/surrounding/main-visual-bg-blur.jpg") no-repeat center top;
  background-attachment: fixed;
  background-size: cover;
}
.dir_area.dir02_okipark #pagebody {
  background: #0099F6 url("/userfiles/images/area/okipark/main-visual-bg-blur.jpg") no-repeat center top;
  background-attachment: fixed;
  background-size: cover;
}
.dir_floormap #pagebody {
  background: #0158C1 url("/userfiles/images/area/the-greatsea/main-visual-bg-blur.jpg") no-repeat center top;
  background-attachment: fixed;
  background-size: cover;
}


/*----- area_index_link -----*/
.area_index_link {
  display: table;
  width: 100%;
  table-layout: fixed;
}
.area_index_link .item {
  display: table-cell;
  vertical-align: top;
}
.area_index_link .item a {
  color: #fff;
  display: block;
  text-align: center;
  text-decoration: none;
  background: no-repeat center bottom;
  background-size: cover;
  padding: 293px 10px;
  transition: .5s;
}
.area_index_link .link_01 a { background-image: url("/userfiles/images/top/bg_area_01.jpg"); }
.area_index_link .link_02 a { background-image: url("/userfiles/images/top/bg_area_02_2021.jpg"); }
.area_index_link .link_03 a { background-image: url("/userfiles/images/top/bg_area_03.jpg"); }
.area_index_link .link_04 a {
  background-image: url("/userfiles/images/top/bg_area_04_2023.jpg");
}
.area_index_link .link_05 a { background-image: url("/userfiles/images/top/bg_area_05.jpg"); }

.area_index_link:hover a {
  filter: grayscale(100%);
}
.area_index_link .item a:hover {
  filter: grayscale(0);
  text-shadow: 1px 1px 10px #fff;
}

.area_index_link .item .floor {
  font-size: 3rem;
  margin-bottom: 10px;
}
.area_index_link .item .lead {
  font-size: 1.4rem;
}
.area_index_link .item .ttl {
  font-size: 3.2rem;
  font-weight: normal;
  position: relative;
}
.area_index_link .item .ttl::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -30px;
  margin-left: -6px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  transform: rotate(45deg);
  width: 13px;
  height: 13px;
  transition: .5s;
}
.area_index_link .item a:hover .ttl::after {
  bottom: -40px;
}

/* area_map_link */
.area_map_link {
  padding: 10px;
  text-align: center;
  border-bottom: 1px solid #fff;
  background: url("../image/common/bg_06.png");
}
.area_map_link a {
  color: #000;
  font-size: 1.8rem;
  font-weight: bold;
  display: inline-block;
  vertical-align: top;
  text-decoration: none;
  background: #DDD;
  width: 372px;
  padding: 11px;
  border-radius: 35px;
  transition: .3s;
}
.area_map_link a:hover {
  color: #000;
  background: #fff;
}
.area_map_link a span {
  display: inline-block;
  padding: 5px 30px 5px 40px;
  position: relative;
  background: url("/image/common/icon_map_02.png") no-repeat 0 center;
}
.area_map_link a span::after {
  content: "";
  position: absolute;
  right: 4px;
  top: 50%;
  margin-top: -5px;
  width: 8px;
  height: 8px;
  border-right: 3px solid #000;
  border-bottom: 3px solid #000;
  transform: rotate(-45deg);
}

/*----- area_section -----*/
.area_section {}
.area_section .head {
  padding: 65px 40px;
}
.area_section.area_01 .head {
  background: #0085B2 url(/userfiles/images/area/section_ttl_01.png) no-repeat top right;
}
.area_section.area_02 .head {
  background: #008C8C url(/userfiles/images/area/section_ttl_02.png) no-repeat top right;
}
.area_section .head .lead {
  color: #fff;
  font-size: 1.8rem;
}
.area_section .head .ttl {
  color: #fff;
  font-size: 3rem;
  font-weight: normal;
}
.area_section .body {
  padding: 50px 20px 60px;
  background: no-repeat #0193C8 0 0;
  background-size: cover;
}
.area_section.area_01 .body { background-image: url("/image/common/bg_area_section_01.jpg"); }
.area_section.area_02 .body { background-image: url("/image/common/bg_area_section_02.jpg"); }
.area_section .body .inner {
  max-width: 1200px;
  margin: 0 auto;
}

/* area_list */
.area_list_01,
.area_list_02 {
  font-size: 0;
}
.area_list_01 li,
.area_list_02 li {
  font-size: 1.5rem;
  display: inline-block;
  vertical-align: top;
  margin: 0 3.33% 3.33% 0;
}
.area_list_01 li { width: 48.33%; }
.area_list_02 li { width: 31%; }

.area_list_01 li:nth-child(2n),
.area_list_02 li:nth-child(3n) { margin-right: 0; }

.area_list_01 a,
.area_list_02 a {
  display: block;
  color: #fff;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  background: #000;
}
.area_list_01 a:hover,
.area_list_02 a:hover { color: #fff; }

.area_list_01 .thumb,
.area_list_02 .thumb {
  transition: 1s;
  -webkit-transform: scale(1);
  transform: scale(1);
}
.area_list_01 a:hover .thumb,
.area_list_02 a:hover .thumb{
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
}
.area_list_01 .ttl,
.area_list_02 .ttl {
  font-size: 2.4rem;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 6px 15px;
  background: rgba(0,0,0,.8);
}
.area_list_02 .ttl {
  font-size: 1.8rem;
}
.area_list_01 .wrap,
.area_list_02 .wrap {
  position: absolute;
  z-index: 2;
  left: 0;
  width: 100%;
  color: #fff;
  top: 0;
  display: table;
  height: 100%;
  padding: 5%;  
}
.area_list_01 .wrap { height: 387px; }
.area_list_02 .wrap { height: 235px; }
.area_list_01 .wrap .text,
.area_list_02 .wrap .text {
  font-size: 15px;
  line-height: 2;
  display: table-cell;
  width: 100%;
  height: 100%;
  vertical-align: middle;
}
.area_list_01 .wrap .text span,
.area_list_02 .wrap .text span {
  display: block;
	padding: 11px 5px 8px;
	transition: .3s;
	-webkit-transform: scale(0);
	transform: scale(0);
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
	opacity: 0;
	border-top: 1px solid rgba(255, 255, 255, .5);
	border-bottom: 1px solid rgba(255, 255, 255, .5);
}
.area_list_01 a:hover::before,
.area_list_01 a:hover .wrap .text span,
.area_list_02 a:hover::before,
.area_list_02 a:hover .wrap .text span{
	opacity: 1;
}
.area_list_01 a:hover .wrap .text span,
.area_list_02 a:hover .wrap .text span {
	-webkit-transform: scale(1);
	transform: scale(1);
}

/* area_list_lead */
.area_list_lead {
  text-align: center;
  padding: 20px;
  margin-bottom: 20px;
}
.area_list_lead .ttl {
font-size: 3rem;
font-weight: 500;
margin-bottom: 30px;
padding-bottom: 30px;
border-bottom: 1px solid #c8c8c8;
}
.area_list_lead .text {
  font-size: 2.2rem;
  color: #008bd6;
}

/* photo_point */
.point_fl {
	float: left;
	width: 22.5%;
}
.point_fr {
	float: right;
	width: 75.5%;
}
.photo_point {
	background-color: #000;
	color: #4DFFFF;
	padding: 10px;
	text-align: center;
}
.photo_point span {
	background: url(../image/photo_icon.png) left center no-repeat;
	padding: 5px 0 5px 50px;
}

/* area_list_03 */
.area_list_03 {
    margin: -20px;
}
.area_list_lead .area_list_03 { margin-top: 0; }
.area_list_03 .item {}
.area_list_03 .thumb {
    background-color: #000;
    width: 64.0625%;
}
.area_list_03 .detail {
    width: 35.9375%;
    padding: 43px;
    color: #fff;
    background: #000 no-repeat 0 0;
    background-size: cover;
}
.area_list_03 .type_01 .thumb { float: left; }
.area_list_03 .type_01 .detail { float: right; }
.area_list_03 .type_02 .thumb { float: right; }
.area_list_03 .type_02 .detail { float: left; }

.area_list_03 .ttl {
    color: #fff;
    font-weight: 500;
    font-size: 3rem;
    background: none;
    padding: 0;
    margin-bottom: 15px;
}
.area_list_03 .ttl::after { display: none; }
.area_list_03 .lead {
    font-size: 1.8rem;
    margin-bottom: 30px;
}
.area_list_03 .text {
    font-size: 1.3rem;
    margin-bottom: 55px;
}
.area_list_03 .link {}
.area_list_03 .link a {
    text-decoration: none;
    display: block;
    width: 200px;
    padding: 14px 20px;
    transition: all .3s;
    color: #fff;
    border: 1px solid #cbcbcb;
    background: url(/img/common/icon_arrow-01.png) 92% center no-repeat;
}
.area_list_03 .link a:hover {
    width: 260px;
    text-decoration: none;
    background-color: rgba(255, 255, 255, .2);
}

.area_list_03 .bg_01_01 { background-image: url(/img/guide/sango/media-01-bg.jpg); }
.area_list_03 .bg_01_02 { background-image: url(/img/guide/sango/media-02-bg.jpg); }
.area_list_03 .bg_01_03 { background-image: url(/img/guide/sango/media-03-bg.jpg); }
.area_list_03 .bg_01_04 { background-image: url(/img/guide/sango/media-04-bg.jpg); }
.area_list_03 .bg_01_05 { background-image: url(/img/guide/sango/media-05-bg.jpg); }
.area_list_03 .bg_01_06 { background-image: url(/img/guide/sango/media-06-bg.jpg); }

.area_list_03 .bg_02_01 { background-image: url('/img/guide/kuroshio/media-01-bg.jpg'); }
.area_list_03 .bg_02_02 { background-image: url('/img/guide/kuroshio/media-02-bg.jpg'); }
.area_list_03 .bg_02_03 { background-image: url('/img/guide/kuroshio/media-03-bg.jpg'); }
.area_list_03 .bg_02_04 { background-image: url('/img/guide/kuroshio/media-04-bg.jpg'); }
.area_list_03 .bg_02_05 { background-image: url('/img/guide/kuroshio/media-05-bg.jpg'); }
.area_list_03 .bg_02_06 { background-image: url('/img/guide/kuroshio/media-06-bg.jpg'); }
.area_list_03 .bg_02_07 { background-image: url('/img/guide/kuroshio/media-07-bg.jpg'); }

.area_list_03 .bg_03_01 { background-image: url('/img/guide/shinkai/media-01-bg.jpg'); }
.area_list_03 .bg_03_02 { background-image: url('/img/guide/shinkai/media-02-bg.jpg'); }
.area_list_03 .bg_03_03 { background-image: url('/img/guide/shinkai/media-03-bg.jpg'); }
.area_list_03 .bg_03_04 { background-image: url('/img/guide/shinkai/media-04-bg.jpg'); }
.area_list_03 .bg_03_05 { background-image: url('/img/guide/shinkai/media-05-bg.jpg'); }
.area_list_03 .bg_03_06 { background-image: url('/img/guide/shinkai/media-06-bg.jpg'); }
.area_list_03 .bg_03_07 { background-image: url('/img/guide/shinkai/media-07-bg.jpg'); }
.area_list_03 .bg_03_08 { background-image: url('/img/guide/shinkai/media-08-bg.jpg'); }
.area_list_03 .bg_03_09 { background-image: url('/img/guide/shinkai/media-09-bg.jpg'); }


/* area_list_04 */
.area_list_04 {
    font-size: 0;
}
.area_list_04 .item {
    font-size: 1.6rem;
    display: inline-block;
    vertical-align: top;
    width: 48.33%;
    margin: 0 3.33% 3.33% 0;
}
.area_list_04 .item:nth-child(2n) { margin-right: 0; }
.area_list_04 .ttl {
    padding: 0;
    font-size: 3.0rem;
    font-weight: 500;
    text-align: center;
    background: none;
    border: none;
    margin-bottom: 15px;
}
.area_list_04 .ttl::after { display: none; }

.area_list_04 .detail {
    padding: 20px 30px 30px;
}
.area_list_04 .detail .text {
    color: #555;
    text-align: center;
}

.area_list_04 .bg_01_01 { background-color: #EDF7F7; }
.area_list_04 .bg_01_02 { background-color: #EDFAFA; }
.area_list_04 .bg_01_03 { background-color: #EFF4ED; }
.area_list_04 .bg_01_04 { background-color: #F2F7ED; }
.area_list_04 .bg_01_05 { background-color: #EDF2F7; }
.area_list_04 .bg_01_06 { background-color: #EDF9FC; }
.area_list_04 .bg_01_07 { background-color: #FFF6ED; }
.area_list_04 .bg_01_08 { background-color: #fffced; }

.area_list_04 .bg_02_01 { background-color: #EDF7F2; }
.area_list_04 .bg_02_02 { background-color: #EDF7F2; }
.area_list_04 .bg_02_03 { background-color: #F4F1ED; }
.area_list_04 .bg_02_04 { background-color: #EDF2FB; }
.area_list_04 .bg_02_05 { background-color: #F2EDF7; }
.area_list_04 .bg_02_06 { background-color: #EDF7F2; }
.area_list_04 .bg_02_07 { background-color: #FFF6ED; }
.area_list_04 .bg_02_08 { background-color: #EDF7F7; }

[class*="walk_guide"] {
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    padding: 12px 15px;
}
[class*="walk_guide"] p { margin: 0; }
.walk_guide01 { background-color: #D5ECE0; }
.walk_guide02 { background-color: #D5ECE0; }
.walk_guide03 { background-color: #E6DED5; }
.walk_guide04 { background-color: #D5E0F6; }
.walk_guide05 { background-color: #E0D5EC; }
.walk_guide06 { background-color: #D5ECE0; }
.walk_guide07 { background-color: #FFEAD5; }
.walk_guide08 { background-color: #D5ECEC; }

.area_list_04 .link {
    text-align: center;
    margin-top: 30px;
}
.area_list_04 .link a {
    color: #fff;
    text-decoration: none;
    padding: 15px 20px;
    background: #000;
    display: inline-block;
    width: 80%;
    max-width: 405px;
    border-radius: 4px;
    transition: .3s;
    -webkit-transition: .3s;
}
.area_list_04 .bg_01_01 .link a { background: #008C8C; }
.area_list_04 .bg_01_02 .link a { background: #00B2B2; }
.area_list_04 .bg_01_03 .link a { background: #1A6600; }
.area_list_04 .bg_01_04 .link a { background: #468C00; }
.area_list_04 .bg_01_05 .link a { background: #00468C; }
.area_list_04 .bg_01_06 .link a { background: #00A3D9; }
.area_list_04 .bg_01_07 .link a { background: #FF8000; }
.area_list_04 .bg_01_08 .link a { background: #ffa700; }

.area_list_04 .bg_02_01 .link a { background-color: #008C46; }
.area_list_04 .bg_02_02 .link a { background-color: #008C46; }
.area_list_04 .bg_02_03 .link a { background-color: #663300; }
.area_list_04 .bg_02_04 .link a { background-color: #0044C6; }
.area_list_04 .bg_02_05 .link a { background-color: #46008C; }
.area_list_04 .bg_02_06 .link a { background-color: #008C46; }
.area_list_04 .bg_02_07 .link a { background-color: #FF8000; }
.area_list_04 .bg_02_08 .link a { background-color: #008C8C; }

.area_list_04 .link a:hover { background: #000; }

/* area_detail_img */
.area_detail_img { margin-bottom: 40px; }
 /* area_img_main */
.area_detail_img .area_img_main {}
/* area_img_2c */
.area_detail_img .area_img_2c {
  font-size: 0;
}
.area_detail_img .area_img_2c .item{
	width: 48.33%;
	font-size: 1.6rem;
	display: inline-block;
	vertical-align: top;
	margin: 3.33% 3.33% 0 0;
}
.area_detail_img .area_img_2c .item:nth-child(2n) { margin-right: 0; }
/*.area_detail_img .area_img_2c .item:nth-child(n+3) { margin-top: 3.33%; }*/
/* area_img_3c */
.area_detail_img .area_img_3c {
  font-size: 0;
}
.area_detail_img .area_img_3c .item{
  width: 31%;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  margin: 3.33% 3.5% 0 0;
}
.area_detail_img .area_img_3c .item:nth-child(3n) { margin-right: 0; }
/*.area_detail_img .area_img_3c .item:nth-child(n+4) { margin-top: 3.33%; }*/

/* guide_table */
.guide_table {
    margin: 40px 0 30px;
}
.guide_table tr td {
    border: 3px solid #ccc;
}
.guide_table .icon_01 {
    background: url(/img/icon/icon_01.png) left center no-repeat;
    padding: 5px 0 5px 25px;
}
.guide_table .icon_02 {
    background: url(/img/icon/icon_02.png) left center no-repeat;
    padding-left: 45px;
}
.guide_table .icon_03 {
    background: url(/img/icon/icon_03.png) left center no-repeat;
    padding: 5px 0 5px 25px;
}

.list_foods {
  font-size: 0;
}
.list_foods li {
  width: 31%;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  margin: 0 3.5% 3.5% 0;
}
.list_foods li:nth-child(3n) { margin-right: 0; }
.list_foods .thumb {
  text-align: center;
  background: #FFFFF5;
  padding: 25px 0;
  border: 1px solid #FFD8B0;
}
.list_foods .ttl {
  padding: 10px;
  font-weight: bold;
  background: #FFEAD5;
}
.list_foods .text {
  padding: 10px;
  background: #FFF6ED;
}

/*----- floormap -----*/
.fll150 {
    float: left;
    margin-right: 10px;
    width: 12.39%;
}
.floormap_list_01 {}
.floormap_list_01 .item {
	float: left;
	width: 47.93%;
	margin: 0 3.3% 0 0;
}
.floormap_list_01 .item:nth-child(2n) {
	margin-right: 0;
}

.floormap_list_02 { margin-top: 30px; }
.floormap_list_02 li {
	float: left;
	width: 22.31%;
	margin: 0 3.3% 0 0;
}
.floormap_list_02 li:nth-child(4n) {
	margin-right: 0;
}
.floormap_list_02 li:nth-child(n + 5) {
	margin-top: 3.3%;
}
.floormap_list_02 li a {
  text-decoration: none;
}
.floormap_list_02 li a:hover {
	text-decoration: none;
	opacity: .8;
}
.floormap_list_02 li span {
	color: #fff;
    display: block;
    background: url(/userfiles/images/floormap/bg_03.jpg);
    text-align: center;
    font-size: 15px;
    padding: 8px;
      padding-right: 25px;
	position: relative;
}
.floormap_list_02 li span::before {
	content: "";
	width: 10px;
	height: 10px;
	position: absolute;
	right: 12px;
	top: 35%;
	border-right: 2px solid #1494D9;
	border-bottom: 2px solid #1494D9;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}

.floor_list dl {
	display: table;
	width: 100%;
	border: 1px solid;
	margin-bottom: 20px;
}
	.floor_list .item_01 { border-color: #102584; }
	.floor_list .item_02 { border-color: #193E9E; }
	.floor_list .item_03 { border-color: #1996DA; }
	.floor_list .item_04 { border-color: #1996DA; }

.floor_list .md-modal {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 100%;
    max-width: 1280px;
    min-width: 320px;
    height: auto;
    z-index: 2000;
    visibility: hidden;
    backface-visibility: hidden;
    transform: translateX(-50%) translateY(-50%);
    background-color: #fff;
    padding: 30px 40px;
    max-height: 90%;
}
.floor_list .md-show {
	visibility: visible;
    overflow: scroll;
}
.floor_list .md-close {
	position: absolute;
    right: 5px;
    top: -5px;
    font-size: 56px;
    line-height: 1;
    border: none;
    background: no-repeat;
}
.floor_list .md-overlay {
	position: fixed;
	width: 100%;
	height: 100%;
	visibility: hidden;
	top: 0;
	left: 0;
	z-index: 1000;
	opacity: 0;
	background: rgba(0,0,0,.65);
	transition: all 0.3s;
}
.floor_list .md-show ~ .md-overlay {
	opacity: 1;
	visibility: visible;
}
.floor_list .md-perspective,
.floor_list .md-perspective body {
	height: 100%;
	overflow: hidden;
}
.floor_list .md-perspective body  {
	background: #222;
	perspective: 600px;
}

/* Effect 7:  slide and stick to top */
.floor_list .md-effect-7{}
.floor_list .md-effect-7 .md-content {
	-webkit-transform: translateY(-200%);
	-moz-transform: translateY(-200%);
	-ms-transform: translateY(-200%);
	transform: translateY(-200%);
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	opacity: 0;
}
.floor_list .md-show.md-effect-7 .md-content {
	-webkit-transform: translateY(0%);
	-moz-transform: translateY(0%);
	-ms-transform: translateY(0%);
	transform: translateY(0%);
	border-radius: 0 0 3px 3px;
	opacity: 1;
}

.floormap_list_01 .map_01 {
	position: relative;
}
.floormap_list_01 .map_01 li {
	position: absolute;
    color: #fff;
    padding: 4px 14px 3px;
    background-color: #000;
    border-radius: 20px;
    line-height: 1;
	opacity: 0;
	transition: .3s;
	-webkit-transition: .3s;
}
.floormap_list_01 .map_01 .point_01 { bottom: 4px; left: 172px; background-color: #00167C; }
.floormap_list_01 .map_01 .point_02 { bottom: 93px; right: 106px; background-color: #002994; }
.floormap_list_01 .map_01 .point_03 { top: 33px; left: 132px; background-color: #004CB3; }
.floormap_list_01 .map_01 .point_04 { top: -10px; right: 30px; background-color: #008BD6; }


.floormap_list_01 .map_01 .anime {
	animation: anime1 1s ease -2s infinite alternate;
}

@keyframes anime1 {
	0% { opacity: .5; }
	100% { opacity: 1; }
}

.floormap_list_01 .map_01 li::before {
	content: "";
	background-color: #999;
    width: 2px;
    display: block;
    position: absolute;
}
.floormap_list_01 .map_01 .point_01::before {
	left: 14px;
    top: -138px;
    height: 155px;
    transform: rotate(142deg);
    -webkit-transform: rotate(142deg);
}
.floormap_list_01 .map_01 .point_02::before {
	left: -20px;
    top: -129px;
    height: 181px;
    transform: rotate(115deg);
    -webkit-transform: rotate(115deg);
}
.floormap_list_01 .map_01 .point_03::before {
	left: 179px;
    bottom: -126px;
    height: 190px;
    transform: rotate(-71deg);
    -webkit-transform: rotate(-71deg);
}
.floormap_list_01 .map_01 .point_04::before {
	left: 34px;
    bottom: -73px;
    height: 90px;
    transform: rotate(51deg);
    -webkit-transform: rotate(51deg);
}

.floor_list dt {
	width: 60px;
	display: table-cell;
	vertical-align: middle;
}
.floor_list dd {
	display: table-cell;
    vertical-align: middle;
}
.floor_list dd a {
	color: #000;
	font-size: 18px;
    line-height: 1.2;
	display: block;
	text-decoration: none;
	position: relative;
	padding: 6px 10px;
	transition: .3s;
	-webkit-transition: .3s;
}
.floor_list dd a::before {
	content: "";
	width: 10px;
	height: 10px;
	position: absolute;
	top: 38%;
	right: 12px;
	border-right: 2px solid #000;
	border-bottom: 2px solid #000;
	transition: .3s;
	-webkit-transition: .3s;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
.floor_list dd a:hover { background-color: #F0F7FB; }
.floor_list dd a:hover::before { right: 9px; }

	.floor_list .item_01 a::before { border-color: #102584; }
	.floor_list .item_02 a::before { border-color: #193E9E; }
	.floor_list .item_03 a::before { border-color: #1996DA; }
	.floor_list .item_04 a::before { border-color: #1996DA; }
	
.floor_list dd strong {
	font-size: 22px;
	font-weight: 500;
	display: block;
}
	.floor_list .item_01 strong { color: #102584; }
	.floor_list .item_02 strong { color: #193E9E; }
	.floor_list .item_03 strong { color: #1996DA; }
	.floor_list .item_04 strong { color: #1996DA; }

.floor_list .link_list {}
.floor_list .link_list li {
	float: left;
	width: 46.55%;
	display: inline-block;
	vertical-align: top;
	margin: 0 6.89% 6.89% 0;
}
.floor_list .link_list li:nth-child(2n) {
	margin-right: 0;
}

.floor_list_slide {
	margin: 80px auto 60px;
}
.floor_list_slide .floor_controllers {
	display: table;
	width: 100%;
	margin-bottom: 40px;
}
.floor_list_slide .floor_controllers li {
	width: 25%;
	display: table-cell;
	vertical-align: top;
	padding-right: 2px;
}
.floor_list_slide .floor_controllers a {
	color: #fff;
	font-size: 22px;
	line-height: 1.3;
	display: block;
	background: url(/userfiles/images/floormap/bg_02.jpg);
	padding: 9px 10px 6px;
	text-decoration: none;
	transition: .3s;
	-webkit-transition: .3s;
	position: relative;
}
.floor_list_slide .floor_controllers .active a,
.floor_list_slide .floor_controllers a:hover {
	background-image: url(/userfiles/images/floormap/bg_01.jpg);
}
.floor_list_slide .floor_controllers a::before {
	transition: .3s;
	-webkit-transition: .3s;
}
.floor_list_slide .floor_controllers .active a::before,
.floor_list_slide .floor_controllers a:hover::before {
	content: "";
    position: absolute;
    left: 50%;
    bottom: -8px;
    width: 0;
    height: 0;
    border-top: 8px solid #008BD6;
    border-right: 5px solid transparent;
    border-bottom: 0px solid transparent;
    border-left: 5px solid transparent;
}

.floor_slider { overflow: hidden; }
.floor_slider .slider {
	opacity: 0;
	transform: translateX(100%);
}
.floor_slider .slider.active {
	opacity: 1;
	transform: translateX(0);
	transition: all 0.3s ease 0s;
}
.floor_slider .slider > * { display: none; }
.floor_slider .slider.active > * { display: block; }

.floor_list_slide .ttl {
	color: #1F99DB;
	font-size: 30px;
	line-height: 1;
	font-weight: 500;
}
.floor_list_slide .lead_01 { margin-bottom: 5px;}

/*--------------------------------------------------
	program プログラム
--------------------------------------------------*/
/*----- bg_pagebody -----*/
.dir_program #pagebody {
	background: #196DC3 url("/userfiles/images/program/main-visual-bg-blur.jpg") no-repeat center top;
	background-attachment: fixed;
	background-size: cover;
}

/* index */
.program_list_01 {
	display: table;
	width: 100%;
}
.program_list_01 li {
	display: table-cell;
	width: 33.33%;
	vertical-align: top;
}
.program_list_01 li a {
	display: block;
	text-decoration: none;
	padding: 580px 0 167px;
	background: no-repeat 0 0;
	background-size: cover;
}
.program_list_01 li .ttl {
	color: #fff;
	text-align: center;
	display: block;
	font-size: 137.5%;
	padding: 7px 0;
	background: url(/userfiles/images/program/bg_program_list_01_ttl.png) no-repeat center center;
}
.program_list_01 .menu_01 {
	background-image: url(/userfiles/images/program/index_pc_img_001.jpg);
}
.program_list_01 .menu_02 {
	background-image: url(/userfiles/images/program/index_pc_img_002.jpg);
}
.program_list_01 .menu_03 {
	background-image: url(/userfiles/images/program/index_pc_img_003.jpg);
}
.program_list_02 {
	font-size: 0;
}
.program_list_02 .item {
	font-size: 16px;
	width: 31%;
	margin: 0 3.5% 3.33% 0;
	display: inline-block;
	vertical-align: top;
}
.program_list_02 .item:nth-child(3n) {
	margin-right: 0;
}
.program_list_02 .item a {
	text-decoration: none;
	display: block;
}
.program_list_02 .item .lead {
	color: #fff;
	display: block;
	font-size: 1.3rem;
	padding: 7px 15px;
	background-color: rgba(0,0,0,.8);
}
.program_list_02 .item .ttl {
	color: #333;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.6;
	display: block;
	padding: 15px 15px;
	background-color: #F5F5F5;
	transition: .3s;
}
.program_list_02 .item a:hover .ttl {
	color: #fff;
	background-color: #008BD6;
	
}
/*.program_content {
	background-color: #fff;
}
.program_content .ttl {
	padding: 8px 0 3px 20px;
	color: #fff;
	font-size: 200%;
	background-color: #0080C4;
}
.program_content .thumb {
	float: right;
	width: 31%;
}
.program_content .detail {
	float: left;
	width: 65.5%;
}*/
.l_border-box + .l_border-box {
	margin-top: 20px;
}
.l_border-box .tag_category {
	font-size: 1.3rem;
	padding: 2px 10px;
	display: inline-block;
	vertical-align: middle;
	background-color: #00468C;
	margin-right: 10px;
	color: #fff;
}

/*--------------------------------------------------
	research 調査研究
--------------------------------------------------*/
.research_topics {
  max-width: 890px;
  margin: 0 auto;
}
.research_topics .ttl {
  text-align: center;
  font-weight: bold;
  font-size: 2.8rem;
  position: relative;
  padding-bottom: 25px;
  margin-bottom: 40px;
}
.research_topics .ttl::after {
  content: "";
  width: 60px;
  height: 4px;
  position: absolute;
  left: 50%;
  bottom: 0;
  margin-left: -30px;
  background: #008BD6;
}
.list_research_topics {
  margin-bottom: 40px;
}
.list_research_topics .item {
  border-bottom: 1px solid #ccc;
}
.list_research_topics .item:first-child {
  border-top: 1px solid #ccc;
}
.list_research_topics a {
  display: table;
  width: 100%;
  text-decoration: none;
  position: relative;
  padding: 20px 40px 20px 10px;
}
.list_research_topics a::after {
    content: "";
    width: 6px;
    height: 6px;
    position: absolute;
    right: 30px;
    top: 50%;
    margin-top: -5px;
    border-right: 2px solid #72B8FF;
    border-bottom: 2px solid #72B8FF;
    transform: rotate(-45deg);
}
.list_research_topics .thumb {
  display: table-cell;
  vertical-align: middle;
  width: 120px;
}
.list_research_topics .thumb span {
  position: relative;
  padding-bottom: 66.66%;
  overflow: hidden;
  display: block;
}
.list_research_topics .thumb img {
      position: absolute;
    top: -100%;
    left: -100%;
    right: -100%;
    bottom: -100%;
    margin: auto;
    min-height: 100%;
    min-width: 100%;
    width: 100%;
}
.list_research_topics .detail {
  padding-left: 20px;
  display: table-cell;
  vertical-align: middle;
}
.list_research_topics .date {
  color: #666666;
  font-size: 1.4rem;
  margin-bottom: 10px;
}
.list_research_topics .title {
  text-decoration: underline;
}

/* l_education_archive */
.l_education_archive {
  font-size: 0;
}
.l_education_archive li {
  font-size: 1.6rem;
  width: 31%;
  margin-right: 3.33%;
  display: inline-block;
  vertical-align: top;
  border: 2px solid #ddd;
  background: #FFFFF0;
  padding: 15px;
}
.l_education_archive li:nth-child(3n) { margin-right: 0; }
.l_education_archive li:nth-child(n+4) { margin-top: 3.33%; }


/* l_uminofushigi */
.l_uminofushigi {}
.l_uminofushigi .item {
  padding: 20px;
  border: 1px solid #ccc;
}
.l_uminofushigi .ttl {
  margin: 15px 0;
  font-size: 120%;
}

/*--------------------------------------------------
	special　おすすめ情報
--------------------------------------------------*/
/*----- guide_plan -----*/
/* index */
.plan_guide_top .main { margin-bottom: 60px; }
.plan_guide_top .main .img { margin: 0 0 40px; }
.plan_guide_top .main .text_01 {
    text-align: center;
    margin-bottom: 30px;
    font-size: 176%;
    line-height: 1.6;
}
.plan_guide_top .main .text_01 span { color: #0072B8; }
.plan_guide_top .main .text_02 { font-size: 120%; text-align: center; }

.plan_guide_top .a_navi {
	text-align: center;
	margin-bottom: 60px;
}
.plan_guide_top .a_navi li {
	display: inline-block;
    vertical-align: middle;
}
.plan_guide_top .a_navi li + li { margin-left: 15px; }
.plan_guide_top .a_navi a {
	color: #fff;
    display: block;
    text-align: center;
    text-decoration: none;
    border-radius: 50px;
    font-size: 140%;
    padding: 15px 60px 15px 30px;
    position: relative;
	transition: .3s;
}
.plan_guide_top .a_navi .navi_01 a { background-color: #00238C; }
.plan_guide_top .a_navi .navi_02 a { background-color: #0085B2; }
.plan_guide_top .a_navi .navi_03 a { background-color: #008C8C; }

.plan_guide_top .a_navi a:hover { opacity: .8; transform: scale(1.05); }
.plan_guide_top .a_navi a::before {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -13px;
    width: 26px;
    height: 26px;
    background: url(/userfiles/images/guide/plan/icon_arrow.png) no-repeat;
    background-size: cover;
}

.plan_guide_top .plan_index {
	padding: 40px 30px 20px;
    margin: 60px 0;
    border-top: 8px solid #ccc;
}
	.plan_guide_top #a_01.plan_index { border-top-color: #00238C; background-color: #D9DEEE; }
	.plan_guide_top #a_02.plan_index { border-top-color: #0085B2; background-color: #D9EDF4; }
	.plan_guide_top #a_03.plan_index { border-top-color: #008C8C; background-color: #D9EEEE; }

.plan_guide_top .plan_index > .catch { font-size: 110%; text-align: center; }
	.plan_guide_top #a_01 > .catch { color: #00238C; }
	.plan_guide_top #a_02 > .catch { color: #0085B2; }
	.plan_guide_top #a_03 > .catch { color: #008C8C; }

.plan_guide_top .plan_index > .ttl {
    text-align: center;
    margin: 0 0 30px;
    font-size: 200%;
    font-weight: bold;
    background: no-repeat;
    padding: 0;
}
	.plan_guide_top #a_01 > .ttl { color: #00238C; }
	.plan_guide_top #a_02 > .ttl { color: #0085B2; }
	.plan_guide_top #a_03 > .ttl { color: #008C8C; }

.plan_guide_top .plan_index .inner {}

.plan_guide_top .plan_index_item {
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
    float: left;
	width: 32.1%;
	margin-right: 1.75%;
	margin-bottom: 30px;
}
.plan_guide_top #a_01 .plan_index_item:nth-child(3n),
.plan_guide_top #a_02 .plan_index_item:nth-child(3n){
    margin-right: 0;
}
.plan_guide_top #a_03 .plan_index_item { width: 49.12%; }
.plan_guide_top #a_03 .plan_index_item:nth-child(2n){
    margin-right: 0;
}

.plan_guide_top .plan_index_item .head {
	border-bottom: 3px solid;
    position: relative;
    margin: 12px;
    padding-bottom: 3px;
	padding-right: 70px;
}
	.plan_guide_top #a_01 .plan_index_item .head { border-bottom-color: #D9DEEE; }
	.plan_guide_top #a_02 .plan_index_item .head { border-bottom-color: #D9EDF4; }
	.plan_guide_top #a_03 .plan_index_item .head { border-bottom-color: #D9EEEE; }

.plan_guide_top .plan_index_item .number {
    position: absolute;
    right: 10px;
    bottom: 10px;
    height: 80%;
}
.plan_guide_top .plan_index_item .number img {
    width: auto;
    height: 100%;
}
.plan_guide_top .plan_index_item .catch { font-size: 95%; color: #545454; }
.plan_guide_top .plan_index_item .ttl {
  font-size: 140%;
  font-weight: bold;
  border: none;
  padding: 0;
  margin: 0;
}
.plan_guide_top .plan_index_item .detail {
	margin: 0 12px 10px;
    padding-bottom: 10px;
}
	.plan_guide_top #a_01_01 .detail { background: url(/userfiles/images/guide/plan/icon_fish01.png) no-repeat right bottom; background-size: 38%; }
	.plan_guide_top #a_01_02 .detail { background: url(/userfiles/images/guide/plan/icon_fish02.png) no-repeat right bottom; background-size: 27%; }
	.plan_guide_top #a_01_03 .detail { background: url(/userfiles/images/guide/plan/icon_fish03.png) no-repeat right bottom; background-size: 28%; }
	.plan_guide_top #a_02_01 .detail { background: url(/userfiles/images/guide/plan/icon_fish04.png) no-repeat right bottom; background-size: 18%; }
	.plan_guide_top #a_02_02 .detail { background: url(/userfiles/images/guide/plan/icon_fish05.png) no-repeat right bottom; background-size: 33%; }
	.plan_guide_top #a_02_03 .detail { background: url(/userfiles/images/guide/plan/icon_fish06.png) no-repeat right bottom; background-size: 23%; }
	.plan_guide_top #a_03_01 .detail { background: url(/userfiles/images/guide/plan/icon_fish07.png) no-repeat right bottom; background-size: 30%; }
	.plan_guide_top #a_03_02 .detail { background: url(/userfiles/images/guide/plan/icon_fish08.png) no-repeat right bottom; background-size: 25%; }
	.plan_guide_top #a_03_03 .detail { background: url(/userfiles/images/guide/plan/icon_fish09.png) no-repeat right bottom; background-size: 25%; }
	.plan_guide_top #a_03_04 .detail { background: url(/userfiles/images/guide/plan/icon_fish10.png) no-repeat right bottom; background-size: 18%; }

.plan_guide_top .plan_index_item .text {
    margin-bottom: 12px;
    font-size: 125%;
    line-height: 1.6;
}
.plan_guide_top .plan_index_item .time {
    color: #fff;
    border-radius: 4px;
    background: #333333 url(/userfiles/images/guide/plan/icon_time.png) no-repeat 7px center;
    background-size: 15px;
    display: inline-block;
    padding: 4px 12px 1px 28px;
}
.plan_guide_top .plan_index_item .link {
	text-align: center;
}
.plan_guide_top .plan_index_item .link a {
    display: block;
    color: #fff;
    text-decoration: none;
    position: relative;
    padding: 12px;
    font-size: 130%;
	transition: .3s;
}
	.plan_guide_top #a_01 .plan_index_item .link a { background-color: #00238C; }
	.plan_guide_top #a_02 .plan_index_item .link a { background-color: #0085B2; }
	.plan_guide_top #a_03 .plan_index_item .link a { background-color: #008C8C; }

	.plan_guide_top #a_01 .plan_index_item .link a:hover { background-color: #00036C; }
	.plan_guide_top #a_02 .plan_index_item .link a:hover { background-color: #006592; }
	.plan_guide_top #a_03 .plan_index_item .link a:hover { background-color: #006C6C; }

.plan_guide_top .plan_index_item .link a::before {
	content: "";
	width: 8px;
	height: 8px;
	position: absolute;
	right: 15px;
	top: 50%;
	margin-top: -5px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-45deg);
}


/* detail */
.plan_guide_detail {}
.plan_guide_detail .main {
    position: relative;
	background: #ccc no-repeat center bottom;
	background-size: 100%;
}
	#plan_guide_type_01 .main { background-color: #F2F4F9; background-image: url(/userfiles/images/guide/plan/bg_down_01.png); }
	#plan_guide_type_02 .main { background-color: #F2F9FB; background-image: url(/userfiles/images/guide/plan/bg_down_02.png); }
	#plan_guide_type_03 .main { background-color: #F2F9F9; background-image: url(/userfiles/images/guide/plan/bg_down_03.png); }

.plan_guide_detail .main .img {}
.plan_guide_detail .main p {
    text-align: center;
	padding: 30px 40px;
}
.plan_guide_detail .main .icon { text-align: center; padding-bottom: 30px; }
.plan_guide_detail .main .icon img { width: 200px; }

.plan_guide_detail .about_schedule {
	background: #d9deee url(/userfiles/images/guide/plan/bg_down_04.png) no-repeat center bottom;
    background-size: 100%;
    margin: 0 0 40px;
    padding: 40px 210px 160px;
}
	#plan_guide_type_01 .about_schedule { background-color: #d9deee; }
	#plan_guide_type_02 .about_schedule { background-color: #D9EDF4; }
	#plan_guide_type_03 .about_schedule { background-color: #D9EEEE; }

.plan_guide_detail .about_schedule .ttl {
  text-align: center;
  font-weight: bold;
  font-size: 187.5%;
  margin-bottom: 5px;
  padding-bottom: 0;
  border: none;
}
	#plan_guide_type_01 .about_schedule .ttl { color: #00218C; }
	#plan_guide_type_02 .about_schedule .ttl { color: #0085B2; }
	#plan_guide_type_03 .about_schedule .ttl { color: #008C8C; }

.plan_guide_detail .about_schedule .time {
    text-align: center;
    font-size: 162.5%;
    margin-bottom: 25px;
}
	#plan_guide_type_01 .about_schedule .time { color: #00218C; }
	#plan_guide_type_02 .about_schedule .time { color: #0085B2; }
	#plan_guide_type_03 .about_schedule .time { color: #008C8C; }

.plan_guide_detail .about_schedule .time span {
	background: no-repeat left center;
    padding: 7px 0 6px 50px;
}
	#plan_guide_type_01 .about_schedule .time span { background-image: url(/userfiles/images/guide/plan/icon_time_03.png); }
	#plan_guide_type_02 .about_schedule .time span { background-image: url(/userfiles/images/guide/plan/icon_time_04.png); }
	#plan_guide_type_03 .about_schedule .time span { background-image: url(/userfiles/images/guide/plan/icon_time_05.png); }

.plan_guide_detail .about_schedule.twodays {
    padding: 40px 50px 160px;
}
.plan_guide_detail .about_schedule.twodays .item_day {
    width: 50%;
    float: left;
    padding: 0 20px;
}
.plan_guide_detail .about_schedule.twodays .h_day {
    margin-bottom: 30px;
    text-align: center;
    font-weight: bold;
    font-size: 150%;
    background: rgba(255,255,255,.8);
    border-radius: 25px;
    padding: 3px;
    color: #333;
    position: relative;
}
.plan_guide_detail .about_schedule.twodays .h_day::before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    left: 50%;
    bottom: -35px;
    border: 20px solid transparent;
    border-top: 15px solid rgba(255,255,255,.8);
    margin-left: -20px;
}
.plan_guide_detail .about_schedule.twodays li a { padding: 3px 13px; }
.plan_guide_detail .about_schedule.twodays li a .text {
	font-size: 140%;
	background-size: 30px;
	padding-right: 30px;
}
.plan_guide_detail .about_schedule.twodays li a .date {
    background-size: 35px;
    padding: 10px 10px 10px 48px;
    font-size: 140%;
    width: 150px;
}

.plan_guide_detail .about_schedule ul { margin-bottom: 25px; }
.plan_guide_detail .about_schedule li {
	position: relative;
}
.plan_guide_detail .about_schedule li + li { margin-top: 20px; }
.plan_guide_detail .about_schedule li + li::before {
	content: "";
	width: 20px;
	height: 20px;
	position: absolute;
	left: 50%;
	top: -20px;
	margin-left: -10px;
	background-color: #ccc;
}
	#plan_guide_type_01 .about_schedule li + li::before { background-color: #7F91C5; }
	#plan_guide_type_02 .about_schedule li + li::before { background-color: #7FC2D8; }
	#plan_guide_type_03 .about_schedule li + li::before { background-color: #7FC5C5; }

.plan_guide_detail .about_schedule li a {
    display: table;
    width: 100%;
    color: #fff;
    text-decoration: none;
    padding: 3px 20px;
    border-radius: 35px;
	transition: .3s;
}
.plan_guide_detail .about_schedule li a:hover {
    opacity: .8;
}
	#plan_guide_type_01 .about_schedule li a { background-color: #00218C; }
	#plan_guide_type_02 .about_schedule li a { background-color: #0085B2; }
	#plan_guide_type_03 .about_schedule li a { background-color: #008C8C; }

.plan_guide_detail .about_schedule li a .date {
    display: table-cell;
    vertical-align: middle;
    background: url(/userfiles/images/guide/plan/icon_time_02.png) no-repeat left center;
    padding: 10px 10px 10px 53px;
    font-size: 162.5%;
    width: 180px;
}
.plan_guide_detail .about_schedule li a .text {
	display: table-cell;
	vertical-align: middle;
	background: url(/userfiles/images/guide/plan/icon_arrow_02.png) no-repeat right center;
	padding-right: 50px;
	font-size: 162.5%;
}
.plan_guide_detail .about_schedule .note {
    background-color: #fff;
    padding: 20px 30px;
    font-size: 90%;
}
.plan_guide_detail .h_2days {
	font-size: 180%;
    font-weight: bold;
    background: #F3F3F3;
    margin: 40px 0 20px;
    padding: 8px;
    text-align: center;
    border-radius: 10px 10px 0 0;
    color: #0085b2;
	background: #FAFAFA;
	border-bottom: 5px solid #7fc2d8;
}
.plan_guide_detail .h_2days::after {
  display: none;
}
.plan_guide_detail .schedule_list {}
.plan_guide_detail .schedule_list .item {
	position: relative;
	border-radius: 6px;
	float: left;
	width: 372px;
	margin: 0 42px 42px 0;
}
	#plan_guide_type_01 .schedule_list .item { background-color: #d9deee; }
	#plan_guide_type_02 .schedule_list .item { background-color: #D9EDF4; }
	#plan_guide_type_03 .schedule_list .item { background-color: #D9EEEE; }

.plan_guide_detail .schedule_list .item:nth-child(3n) {
	margin-right: 0;
}
.plan_guide_detail .schedule_list .item::after {
    content: "";
    position: absolute;
    top: 160px;
    right: -40px;
    width: 40px;
    height: 20px;
    background: no-repeat 0 0;
}
	#plan_guide_type_01 .schedule_list .item::after { background-image: url(/userfiles/images/guide/plan/flow_01_01.png); }
	#plan_guide_type_02 .schedule_list .item::after { background-image: url(/userfiles/images/guide/plan/flow_01_02.png); }
	#plan_guide_type_03 .schedule_list .item::after { background-image: url(/userfiles/images/guide/plan/flow_01_03.png); }
	
	.plan_guide_detail .schedule_list .item.last::after,
	.plan_guide_detail .schedule_list .item:nth-child(3n)::after {display: none; }

.plan_guide_detail .schedule_list .item:nth-child(3n) + .item::before {
	content: "";
    width: 856px;
    height: 40px;
    position: absolute;
    top: -42px;
    left: 170px;
    background: no-repeat 0 0;
}
	#plan_guide_type_01 .schedule_list .item:nth-child(3n) + .item::before { background-image: url(/userfiles/images/guide/plan/flow_02_01.png); }
	#plan_guide_type_02 .schedule_list .item:nth-child(3n) + .item::before { background-image: url(/userfiles/images/guide/plan/flow_02_02.png); }
	#plan_guide_type_03 .schedule_list .item:nth-child(3n) + .item::before { background-image: url(/userfiles/images/guide/plan/flow_02_03.png); }

.plan_guide_detail .schedule_list .item > .time {
    color: #fff;
    padding: 7px 10px 7px 40px;
    border-radius: 8px 8px 0 0;
    background: url(/userfiles/images/guide/plan/icon_time_02.png) no-repeat 10px center;
    background-size: 21px;
}
	#plan_guide_type_01 .schedule_list .item > .time { background-color: #00218C; }
	#plan_guide_type_02 .schedule_list .item > .time { background-color: #0085B2; }
	#plan_guide_type_03 .schedule_list .item > .time { background-color: #008C8C; }

.plan_guide_detail .schedule_list .item .thumb {}
.plan_guide_detail .schedule_list .item .detail {
	padding: 15px;
}
.plan_guide_detail .schedule_list .item .detail > .ttl {
    font-weight: bold;
    font-size: 125%;
    border-bottom: 3px solid rgba(255,255,255,.7);
    margin-bottom: 10px;
    padding: 0 0 3px;
    background: none;
}
.plan_guide_detail .schedule_list .item .detail > .ttl::after { display: none; }
.plan_guide_detail .schedule_list .item .detail > .text {}

.plan_guide_detail .schedule_list .programs { margin-top: 15px; }
.plan_guide_detail .schedule_list .programs li {}
.plan_guide_detail .schedule_list .programs li + li { margin-top: 10px; }
.plan_guide_detail .schedule_list .programs .pop_btn {
	display: table;
	width: 100%;
	background-color: #fff;
	text-decoration: none;
	color: #000;
	padding-right: 10px;
	border-radius: 8px;
    overflow: hidden;
	transition: .3s;
}
.plan_guide_detail .schedule_list .programs .pop_btn:hover { background-color: #fffcc2; }
.plan_guide_detail .schedule_list .programs .pop_btn .time {
	color: #fff;
    display: table-cell;
    vertical-align: middle;
    padding: 10px;
    width: 75px;
    text-align: center;
}
	#plan_guide_type_01 .schedule_list .programs .pop_btn .time { background-color: #00218C; }
	#plan_guide_type_02 .schedule_list .programs .pop_btn .time { background-color: #0085B2; }
	#plan_guide_type_03 .schedule_list .programs .pop_btn .time { background-color: #008C8C; }

.plan_guide_detail .schedule_list .programs .pop_btn .text {
    display: table-cell;
    vertical-align: middle;
    background: no-repeat right center;
    background-size: 24px;
    line-height: 1.3;
    padding: 10px 25px 10px 10px;
}
	#plan_guide_type_01 .schedule_list .programs .pop_btn .text { background-image: url(/userfiles/images/guide/plan/icon_open_01.png); }
	#plan_guide_type_02 .schedule_list .programs .pop_btn .text { background-image: url(/userfiles/images/guide/plan/icon_open_02.png); }
	#plan_guide_type_03 .schedule_list .programs .pop_btn .text { background-image: url(/userfiles/images/guide/plan/icon_open_03.png); }

.plan_guide_detail .schedule_list .programs .pop_box {
	display: none;
	position: fixed;
    left: 0;
    top: 0;
    background: rgba(0,0,0,.8);
    width: 100%;
    height: 100%;
	padding: 70px;
    z-index: 999;
}
.plan_guide_detail .schedule_list .programs .pop_box .inner {
    background: #fff;
    border-radius: 6px;
    padding: 15px;
    /*max-height: 90%;
    overflow-y: scroll;*/
    max-width: 670px;
    margin: auto;
}
.plan_guide_detail .schedule_list .programs .pop_box .ttl {
	border-bottom: 3px solid #D9DEEE;
    margin-bottom: 15px;
    font-size: 140%;
    padding-bottom: 5px;
}
.plan_guide_detail .schedule_list .programs .pop_box .img {
    margin-bottom: 15px;
}
.plan_guide_detail .schedule_list .programs .pop_box .text {
	margin-bottom: 15px;
    font-size: 110%;
}
.plan_guide_detail .schedule_list .programs .pop_box dl {
	border-radius: 8px;
	overflow: hidden;
}
.schedule_list .programs .pop_box dl + dl {
    margin-top: 15px;
}
	#plan_guide_type_01 .schedule_list .programs .pop_box dl { background-color: #D9DEEE; }
	#plan_guide_type_02 .schedule_list .programs .pop_box dl { background-color: #D9EDF4; }
	#plan_guide_type_03 .schedule_list .programs .pop_box dl { background-color: #D9EEEE; }

.plan_guide_detail .schedule_list .programs .pop_box dl dt {
	color: #fff;
	padding: 8px 12px;
}
	#plan_guide_type_01 .schedule_list .programs .pop_box dl dt { background-color: #00238C; }
	#plan_guide_type_02 .schedule_list .programs .pop_box dl dt { background-color: #0085B2; }
	#plan_guide_type_03 .schedule_list .programs .pop_box dl dt { background-color: #008C8C; }

.plan_guide_detail .schedule_list .programs .pop_box dl dd {
	padding: 8px 12px;
}
.plan_guide_detail .schedule_list .programs .pop_box .close {
	text-align: center;
	margin-top: 20px;
}
.plan_guide_detail .schedule_list .programs .pop_box .close a {
	display: inline-block;
	color: #fff;
	background: #333;
	border-radius: 25px;
	padding: 10px;
	text-decoration: none;
	transition: .3s;
}
.plan_guide_detail .schedule_list .programs .pop_box .close a:hover {
	background: #009688;
}
.plan_guide_detail .schedule_list .programs .pop_box .close span {
	background: url(/userfiles/images/guide/plan/icon_close.png) no-repeat right center;
    display: block;
    background-size: 20px;
    padding: 0 50px 0 40px;
    font-size: 110%;
}


.plan_guide_detail .option_list {
    background: #E8E4D9 url(/userfiles/images/guide/plan/bg_down_05.png) no-repeat center top;
    background-size: 100%;
    margin: 0;
    padding: 180px 40px 40px;
    border-radius: 0 0 8px 8px;
}
.plan_guide_detail .option_list .item {}
.plan_guide_detail .option_list .catch {
    background: #624900 url(/userfiles/images/guide/plan/icon_option.png) no-repeat 10px center;
    color: #fff;
    font-size: 140%;
    padding: 12px 12px 12px 72px;
    border-radius: 8px 8px 0 0;
}
.plan_guide_detail .option_list .item_inner {
	background: #fff;
	padding: 20px;
    border-radius: 0 0 8px 8px;
}

.plan_guide_detail .option_list .ttl {
  border-bottom: 3px solid #C6BDA3;
  margin-bottom: 25px;
  padding: 0 0 5px;
  font-size: 150%;
  font-weight: bold;
  background: none;
}
.plan_guide_detail .option_list .ttl::after { display: none; }
.plan_guide_detail .option_list .thumb {
    float: left;
    width: 40%;
    margin-right: 25px;
}
.plan_guide_detail .option_list .tag {
    display: inline-block;
    color: #fff;
    background-color: #624900;
    border-radius: 6px;
    padding: 3px 30px;
    margin: 0 0 15px;
}
.plan_guide_detail .option_list .caution {
	margin: 15px 0 0;
	background-color: #F7F6F2;
	border-radius: 8px;
	overflow: hidden;
	padding: 0;
}
.plan_guide_detail .option_list .caution dt {
	color: #fff;
	background-color: #B20000;
	padding: 8px 12px;
}
.plan_guide_detail .option_list .caution dd {
    padding: 8px 12px;

    font-size: 87%;
}


/*----- coming -----*/
.coming_content {}
.coming_head {
	text-align: center;
	margin: 20px 0 30px;
}

.coming_inner {
	margin: 0 -20px -60px;
	padding: 30px 30px 60px;
	background: #4CAEE2 url(/image/bg_01.png);
}
.coming_inner .item {
	float: left;
	width: 49.15%;
	margin: 0 1.69% 1.69% 0;
}
.coming_inner .item:nth-child(2n) {
	float: right;
	margin-right: 0;
}
.coming_inner .item .ttl {
	    text-align: center;
    background: no-repeat;
    padding: 0;
    margin: 0;
}
.coming_inner .item .ttl::after {
  display: none; 
}
.coming_inner .item_inner {
    background-color: #fff;
    border-radius: 0 0 6px 6px;
    padding: 30px 30px 10px;
}
.coming_inner .item_inner .flr { margin-left: 15px; }
.coming_inner .item_inner p {
    color: #333333;
    font-size: 20px;
    overflow: hidden;
}
.coming_inner .item_inner ul { margin-bottom: 30px; }
.coming_inner .item_inner * + ul { margin-top: 30px; margin-bottom: 50px; }
.coming_inner .item_inner ul li + li { margin-top: 20px; }
.coming_inner .item_inner ul a {
    display: block;
    color: #000;
    font-size: 20px;
    line-height: 1.5;
    text-decoration: none;
    border: 2px solid #008BD6;
    border-radius: 18px;
    padding: 23px 10px 23px 55px;
    background: #F6F6F6 url(/image/icon_arrow07.png) no-repeat 30px 27px;
	transition: .3s;
	-webkit-transition: .3s;
}
.coming_inner .item_inner ul a:hover { background-color: #E5F3FB; }
.coming_inner .tac.mgtb30 {
    margin: 60px 0 50px !important;
}

.coming_inner .back_link {display: none; }

/*----- shinkai_shindan -----*/
.shinkai_shindan {}
.shinkai_shindan .main {
    position: relative;
	text-align: center;
}
.shinkai_shindan .main a {
    position: absolute;
    left: 0;
    bottom: 7%;
    padding: 0 10px;
    text-align: center;
    width: 100%;
}
.shinkai_shindan .main a img {
    max-width: 550px;
    margin: auto;
    display: block;
    width: 100%;
}
.chart_shinkai_shindan {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    background: rgba(0,0,0,.8);
    z-index: 100;
    width: 100%;
    height: 100%;
    overflow: hidden;
    padding: 110px 0px 60px 130px;
}
.chart_shinkai_shindan_inner {
    display: table;
    margin: auto;
    width: 100%;
    max-width: 690px;
	height: 100%;
}
	.chart_shinkai_shindan_inner .nakami {
		display: table-cell;
		vertical-align: middle;
		width: 100%;
	}
.chart_shinkai_shindan .q_box,
.chart_shinkai_shindan .a_box {
    display: none;
    padding: 20px;
    color: #fff;
    background: #002444 url(/userfiles/images/shinkai_shindan/bg_02.png) no-repeat center bottom;
    background-size: 100%;
    border: 3px solid #3B9DB9;
}
.chart_shinkai_shindan #q_01 { display: block; }
	
	
.chart_shinkai_shindan .q_box { padding-top: 40px; }
.chart_shinkai_shindan .q_box dt {
    font-size: 33px;
    text-align: center;
}
.chart_shinkai_shindan .q_box dt strong {
    color: #40B3CC;
    font-size: 45px;
    line-height: 1;
    margin-right: 5px;
    font-weight: 500;
}
.chart_shinkai_shindan .q_box dd { text-align: center; }
.chart_shinkai_shindan .q_box span {
	cursor: pointer;
	display: inline-block;
	text-align: center;
	padding: 20px;
	font-size: 30px;
}
.chart_shinkai_shindan .q_box span + span {}

.chart_shinkai_shindan .a_box {}
.chart_shinkai_shindan .a_box_inner { margin: 30px 0; }
.chart_shinkai_shindan .a_box .thumb {
	float: left;
	width: 50%;
	margin-right: 20px;
}
.chart_shinkai_shindan .a_box .thumb img { width: 100%; }
.chart_shinkai_shindan .a_box h3 {
		margin-bottom: 15px;
	padding: 0 0 5px;
	font-size: 26px;
	font-weight: 500;
	border-bottom: 2px solid #28527B;
	overflow: hidden;
	background: no-repeat;
	color: #fff;
}
.chart_shinkai_shindan .a_box h3::after { display: none; }
.chart_shinkai_shindan .rea sapn {
    color: #FFBF00;
}
	
.chart_shinkai_shindan .a_box ul {
    display: table;
    width: 50%;
    margin: 0 auto;
}
.chart_shinkai_shindan .a_box li {
	display: table-cell;
	vertical-align: middle;
}
.chart_shinkai_shindan .a_box li + li {
    padding-left: 8px;
}
a.close_shinkai_shindan {
    display: block;
    background: #1D2A59 url(/userfiles/images/shinkai_shindan/icon_close.png) no-repeat center center;
    background-size: 20px;
    color: #fff;
    padding: 10px;
    border-radius: 10px;
    border: 2px solid #41B3CB;
    text-decoration: none;
    text-indent: -9999px;
}
a.more_shinkai {
    display: block;
    background: #fff;
    color: #0E264C;
    border-radius: 10px;
    padding: 6px 20px 6px 10px;
    font-size: 140%;
    border: 2px solid #41B3CB;
    text-decoration: none;
    position: relative;
	font-weight: bold;
}
a.more_shinkai::before {
	content: "";
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -5px;
	width: 8px;
	height: 8px;
	border-right: 2px solid #0E264C;
	border-bottom: 2px solid #0E264C;
	transform: rotate(-45deg);
}

.other_shinkai {
	color: #fff;
	padding: 20px;
	background-image:-webkit-gradient(linear,color-stop(0.01, rgb(53,134,166)),color-stop(0.99, rgb(18,0,55)));
	background-image:-webkit-linear-gradient(rgb(53,134,166) 1%,rgb(18,0,55) 99%);
	background-image:-o-linear-gradient(rgb(53,134,166) 1%,rgb(18,0,55) 99%);
	background-image:-ms-linear-gradient(rgb(53,134,166) 1%,rgb(18,0,55) 99%);
	background-image:linear-gradient(rgb(53,134,166) 1%,rgb(18,0,55) 99%);
	-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#ff120037,endColorstr=#ff3586a6)";
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#ff120037,endColorstr=#ff3586a6);
}
.other_shinkai + .other_shinkai {
    margin-top: 60px;
}
.other_shinkai .inner { margin-bottom: 20px;}
.other_shinkai .ttl {
	color: #fff;
	font-size: 160%;
	font-weight: 500;
	background-color: #003366;
	padding: 8px 10px;
	margin-bottom: 15px;
	border: none;
}
.other_shinkai .fll {}
.other_shinkai .btn_01 { background-color: #fff; }

/*---------------------------------------------------
	download ダウンロード
---------------------------------------------------*/
/* list_download */
.list_download {
  font-size: 0;
}
.list_download .item {
  width: 31%;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: top;
  margin: 0 3.5% 0 0;
}
.list_download .item:nth-child(3n) {
  margin-right: 0;
}
.list_download .item:nth-child(n+4) {
  margin-top: 3.33%;
}

/* pamphlet_download */
ul.pamphlet_download {
    font-size: 0;
    margin-top: 6px;
}
.pamphlet_download li {
  font-size: 1.4rem;
  display: inline-block;
  vertical-align: top;
  width: 32.25%;
  margin: 0 1.61% 1.61% 0;
}
.pamphlet_download li:nth-child(3n) { margin-right: 0;}
.pamphlet_download a {
  color: #fff;
  background: #000;
  text-align: center;
  text-decoration: none;
  display: block;
  padding: 7px 5px;
  transition: .3s;
}
.pamphlet_download a:hover {
  color: #fff;
  background: #008BD6;
}
/*---------------------------------------------------
	outline 施設概要
---------------------------------------------------*/
/* outline_act */
.outline_act {
	border: 1px solid #ccc;
	padding: 10px;
	margin-bottom: 40px;
}
.outline_act dt {
    font-size: 20px;
    color: #fff;
    background: #0080C4;
    padding: 4px 14px;
    margin-bottom: 20px;
}
.outline_act dd { line-height: 1.9; }
.outline_act dd img {
	float: left;
	margin-right: 20px;
}

/* outline_contents */
.outline_contents {
    font-size:  0;
}
.outline_contents .item {
    display: inline-block;
    vertical-align: top;
    width: 580px;
    margin: 0 40px 0 0;
    font-size:  16px;
}
.outline_contents .item:nth-child(2n) {
    margin-right:  0;
}
.outline_contents .thumb {
    position:  relative;
}
.outline_contents .txt_headline {
	color: #fff;
	font-size: 22px;
	text-align: center;
	padding: 10px;
	line-height: 1;
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	margin-top: -20px;
	background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.65) 50%, rgba(0,0,0,0) 100%);
	background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 50%,rgba(0,0,0,0) 100%);
	background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 50%,rgba(0,0,0,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#00000000',GradientType=1 );
	border: none;
	font-weight: 500;
	margin-bottom: 0;
}
.outline_contents .txt_headline span { font-size: 16px; }
.outline_contents .detail {
    background:  #EEF7FC;
    padding:  30px 20px;
}


/*---------------------------------------------------
	beta
---------------------------------------------------*/
#beta {
  float: right;
  width: 22.5%;
}

/*---------------------------------------------------
	sidemenu
---------------------------------------------------*/
#side_menu {
  margin-bottom: 20px;
}
#side_menu a {
  color: #000;
  display: block;
  padding: 5px;
  text-decoration: none;
}
#side_menu a:hover {}

/* level1 */
#side_menu .level1 > a {
  color: #fff;
  font-size: 1.7rem;
  padding: 14px 10px;
  background: #315FB7;
}
#side_menu .level1 > a:hover {
  
}

/* level2 */
#side_menu .level2 {
  border-bottom: 1px solid #ccc;
}
#side_menu .level2 > a {
  font-size: 1.5rem;
  padding: 14px 20px 14px 10px;
  background: #F7F7F7;
  position: relative;
}
#side_menu .level2 > a:hover,
#side_menu .level2 > .selected {
  color: #315FB7;
  background: #fff;
}
#side_menu .level2 > a::after {
  content: "";
  width: 7px;
  height: 7px;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -6px;
  border-right: 2px solid #666;
  border-bottom: 2px solid #666;
  transform: rotate(-45deg);
}
#side_menu .level2 > a:hover::after,
#side_menu .level2 > .selected::after{
  border-right-color: #315FB7;
  border-bottom-color: #315FB7;
}

/* level3 */
#side_menu .level2 > ul {
  padding: 10px 0 10px 5px;
  border-top: 1px solid #ccc;
}
#side_menu .level3 {
  border-bottom: 1px dotted #ccc;
}
#side_menu .level3 > a {
  font-size: 1.5rem;
  padding: 8px 10px;
  background: #F7F7F7;
}
#side_menu .level3 > a:hover,
#side_menu .level3 > .selected {
  color: #315FB7;
  background: #E6EDF5;
}


/*--------- beta -----------*/
.list_side_menu {
  margin-bottom: 40px;
}
.list_side_menu .ttl {
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  background: #000;
  padding: 8px 10px;
}
.list_side_menu li {
  border-bottom: 1px solid #ddd;
}
.list_side_menu li a {
  font-size: 1.4rem;
  color: #555;
  display: block;
  text-decoration: none;
  padding: 19px 20px 19px 10px;
  transition: .3s;
  position: relative;
}
.list_side_menu li a:hover {
  color: #555;
  background: #E3F2FA;
}
.list_side_menu li a::before {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  right: 12px;
  top: 50%;
  margin-top: -5px;
  border-left: 2px solid #bbb;
  border-bottom: 2px solid #bbb;
  transform: rotate(-135deg);
}
.list_side_menu li a:hover::before {
  border-color: #008BD6;
}
.list_side_menu .date {
  display: block;
  color: #888;
}

.list_side_menu .text_box {
  background: #F8F8F8;
  padding: 15px;
}

/* side_pickup_l */
.side_pickup_l {}
.side_pickup_l .item {
  border-bottom: 1px solid #ddd;
}
.side_pickup_l .item a {
  text-decoration: none;
  display: table;
  width: 100%;
  padding: 20px 0;
}
.side_pickup_l .thumb {
  display: table;
  vertical-align: top;
  width: 80px;
}
.side_pickup_l .thumb span {
  display: block;
  position: relative;
  padding-bottom: 100%;
  overflow: hidden;
}
.side_pickup_l .thumb span img {
  position: absolute;
  left: -100%;
  right: -100%;
  top: 0;
  margin: auto;
  max-width: none;
  height: 100%;
}
.side_pickup_l .detail {
  display: table-cell;
  vertical-align: top;
  padding-left: 10px;
  width: 100%;
}
.side_pickup_l .tag_cat {
  margin-bottom: 5px;
}
.side_pickup_l .tag_cat span {
  font-size: 1.3rem;
  display: inline-block;
  color: #333333;
  border: 1px solid #ddd;
  text-align: center;
  padding: 0 10px;
}
.side_pickup_l .tag_cat .cat_01 { background: #C5EFEF; }
.side_pickup_l .tag_cat .cat_02 { background: #FFFFDB; }
.side_pickup_l .tag_cat .cat_03 { background: #CEE7FF; }

.side_pickup_l .text {
  text-decoration: underline;
  font-size: 1.5rem;
  line-height: 1.4;
}

/*---------------------------------------------------------------------
	faq
---------------------------------------------------------------------*/
.list_faq {}
.list_faq .item {
	margin-bottom: 15px;
	border: 1px solid #CCC;
}
.list_faq .btn_q {
	position: relative;
}
.list_faq .btn_q::before {
	width: 30px;
	height: 30px;
	position: absolute;
	right: 20px;
    top: 24px;
	content: "";
	background-color: #008CD6;
	border-radius: 50%;
	z-index: 1;
	transition: .3s;
	-webkit-transition: .3s;
}
.list_faq .btn_q::after {
	content: "";
	cursor: pointer;
	width: 9px;
	height: 9px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	display: block;
	transition: .3s;
	-webkit-transition: .3s;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	position: absolute;
	right: 29px;
    top: 31px;
	z-index: 2;
}
.list_faq .btn_q.on::before { background-color: #444444; }
.list_faq .btn_q.on::after {
	top: 36px;
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
.list_faq .btn_q a {
	color: #333;
	background-color: #F8F8F8;
	text-decoration: none;
	font-size: 1.8rem;
	line-height: 1.3;
	display: block;
	position: relative;
	padding: 27px 60px 26px 68px;
}
.list_faq .btn_q a:hover {
	background-color: #fbfbfb;
}
.list_faq .btn_q a::before {
	content: "Q.";
	display: inline-block;
	font-size: 3.4rem;
	position: absolute;
	top: 15px;
    left: 20px
}
.list_faq .btn_q.on a {
	background-color: #fff;
}
.list_faq .box_a {
	margin: 0 10px 10px;
	display: none;
	background-color: #E7F6F7;
	padding: 20px 20px 20px 63px;
	position: relative;
	line-height: 2;
}
.list_faq .box_a::before {
	content: "A.";
	font-size: 3.4rem;
	display: inline-block;
	position: absolute;
	left: 18px;
    top: 3px;
	color: #008CD6;
}
.pager {
	text-align: center;
	margin-bottom: 40px;
}
.pager li {
	border: 1px solid #CCC;
	display: inline-flex;
}
.pager li a, .pager li span {
	padding: 12px;
	min-width: 50px;
}
.pager li a:hover, .pager .current span {
	background-color: #EAF4FA;
}
/*faq詳細*/
.faq_contents .icon_q {
	background-color: #E9F5FC;
	color: #00468C;
	font-size: 125%;
	margin: 0 0 20px;
	padding: 10px;
}
.faq_contents .icon_a {
	background-color: #0d5092;
	color: #fff;
	font-size: 125%;
	margin: 50px 0 20px;
	padding: 10px;
}
.faq_category_list {
	float: right;
	width: 22.5%;
}
.faq_category_list .list_side_menu { border: none; }
.faq_category_list .list_side_menu .ttl {
	font-size: 112.5%;
	position: relative;
	color: #fff;
	border-bottom: 1px solid #ccc;
	background: #000 url(/image/qa.png) no-repeat scroll 14px 50%;
	background-size: 33px;
	padding-left: 60px;
}
.faq_category_list .list_side_menu .list {
	background-color: #F8F8F8;
	padding: 17px 10px 17px 20px;
}
.faq_category_list .list_side_menu .list > li + li {
    margin-top: 10px;
}
.faq_category_list .list_side_menu .list > li a {
	font-size: 93.75%;
	position: relative;
	padding-left: 17px;
}
.faq_category_list .list_side_menu .list > li a::before {
	width: 0;
	height: 0;
	border: 4px solid transparent;
	border-left: 7px solid #000;
	position: absolute;
	left: 0;
	top: 7px;
	content: "";
}
.faq_category_list .list_side_menu .link {
    color: #007fff;
	margin-top: 10px;
    text-decoration: underline;
}
.faq_category_list .list_side_menu .link:hover,
.faq_category_list .list_side_menu .link:active,
.faq_category_list .list_side_menu .link:focus {
	color: #007fff;
}

.program_icon { margin-bottom: 10px; }
.program_icon span {
  border-radius: 25px;
  color: #fff;
  text-align: center;
  min-width: 20%;
  padding: 2px 13px;
  display: inline-block;
}
.program_icon .free { background-color: #00a3d9; }
.program_icon .fee { background-color: #D90000; }
.program_icon .reserve { background-color: #FF8000; }
.fee_en {
	background-color: #D90000;
	border-radius: 17px;
	color: #fff;
	margin: 0 0 12px;
	text-align: center;
	padding: 2px 13px 0;
	display: block;
}
.ttl_search_faq {
  color: #fff;
	font-size: 2.4rem;
	background: #008BD6 url(/image/qa.png) no-repeat scroll 15px 50%;
	padding: 11px 0 11px 61px;
}
.faq_search_form {
  margin: 20px auto 40px;
}
.faq_search_form .search_window{
  border: 1px solid #ccc;
  padding: 6px;
  width: 500px;
}
.faq_search_form .serch_button{
  width: 64px;
  height: 39px;
  cursor: pointer;
  vertical-align: top;
  border-radius: 2px;
  background: url(/img/common/icon_search-btn.png) center no-repeat;
  background-color: #008bd6;
  margin-left: 5px;
  border: none;
  text-indent: -999px;

}

/*---------------------------------------------------------------------
	search　サイト内検索
---------------------------------------------------------------------*/
.search_result {
}
.search_result .lead {
	font-size: 112.5%;
	font-weight: bold;
	margin-bottom: 20px;
}
.search_result .lead strong {
	margin-right: 5px;
	font-size: 166.66%;
}
.search_result dl {
	padding: 10px 10px 10px 50px;
	background: url(../img/common/icon_search.png) no-repeat 10px 13px;
	border: 1px solid #CCC;
}
.search_result dl + dl {
	margin-top: 30px;
}
.search_result dt {
	font-size: 112.5%;
}


/*---------------------------------------------------------------------
	contact
---------------------------------------------------------------------*/
/* caution_box_02 */
.dir_contact .caution_box_02 {
	margin: 0 50px;
}
.dir_contact .caution_box_02 .list_disc li {
	font-size: 1.5rem;
}

/* contact_info */
.contact_info {
	margin: 0 50px 60px;
}
.contact_info .item {
	width: 48.18%;
	float: left;
	border: 10px solid #EEEEEE;
	padding: 20px;
}
.contact_info .item:first-child {
	margin-right: 3.63%;
}
.contact_info .ttl {
	font-size: 2.0rem;
	margin-bottom: 17px;
	padding-bottom: 12px;
	border-bottom: 3px solid #EEEEEE;
}
.contact_info .tel {
	color: #002CB2;
	font-size: 3.0rem;
}

/* mail_form */
.mail_form {
	padding: 40px;
	margin: 0 50px;
	border: 10px solid #EEE;
}
.mail_form form dl {
	display: table;
	width: 100%;
	padding: 0 20px 25px 0;
	margin-bottom: 25px;
	border-bottom: 1px dotted #aaa;
}
.mail_form form dt {
	font-size: 1.8rem;
	font-weight: 900;
	width: 36%;
	display: table-cell;
	vertical-align: top;
	padding-right: 30px;
}
.mail_form form dd {
	display: table-cell;
	vertical-align: top;
}

/* icon_required */
.mail_form .icon_required::after {
	content: "必須";
	color: #fff;
	font-size: 1.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.0;
	display: block;
	width: 26px;
	vertical-align: middle;
	padding: 3px;
	margin: 5px 0 0px;
	background-color: #d71618;
	border-radius: 4px;
	float: right;
}

/* bg_on */
.mail_form form .bg_on {
	font-size: 0;
}
.mail_form form .bg_on label {
	font-size: 1.6rem;
	width: 20%;
	display: inline-block;
	vertical-align: middle;
	padding: 12px;
	margin-right: 15px;
	background-color: #eee;
	border: 1px solid #ddd;
}

/* border_on */
.mail_form form .border_on {
	border: 1px solid #CCCCCC;
	padding: 13px 15px;
}

/* error */
.mail_form .error {
	color: #d71618;
	font-size: 1.5rem;
	font-weight: 900;
	display: inline-block;
	margin-top: 13px;
}

/* note */
.mail_form .note {
	text-align: center;
	margin-bottom: 20px;
}

/* btn_list */
.mail_form .btn_list {
	text-align: center;
	/* margin: 50px auto; */
	margin: 50px auto 0;
}

/* confirm_list */
.mail_form.confirm_list dd {
	/*background-color: #E5F6FB;*/
	/*padding: 12px;*/
	padding-left: 20px;
	word-break: break-all;
}
.mail_form.confirm_list .guardian_pickup {
  padding-top: 5px;
  padding-bottom: 5px;
  background-color: #FFFFBF;
}
.mail_form.confirm_list .line {
    border-bottom: 3px dotted #EEEEEE;
    margin-bottom: 30px;
}
.mail_form.confirm_list .confirm_break_line{
  margin-top: 60px;
}
/* mail_form - type_02 */
.mail_form.type_02 form {
    max-width: none;
}
.mail_form.type_02 form dl {
    max-width: 870px;
}
.mail_form.type_02 form dl dt {
    width: 35%;
}

/* form - elements */
.mail_form input,
.mail_form button,
.mail_form textarea,
.mail_form select {
	border: 1px solid #ddd;
	padding: 12px;
	margin: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.mail_form input[type="tel"],
.mail_form input[type="text"],
.mail_form input[type="email"] {
	width: 100%;
	background-color: #eee;
	border: 1px solid #ddd;
}
.mail_form input[type="file"] {
	font-size: 16px;
}
.mail_form input[type="radio"] {
	-webkit-appearance: radio;
	-moz-appearance: radio;
	appearance: radio;
	margin-right: 5px;
}
.mail_form input[type="checkbox"] {
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	appearance: checkbox;
	margin-right: 5px;
}
.mail_form select {
	-webkit-appearance: select;
	-moz-appearance: select;
	appearance: select;
  padding-right: 30px;
  background: #EEE url(/image/common/icon_arrow_11.png) no-repeat right 10px center;
}
.mail_form input.small {
	width: 27%;
}
.mail_form input.medium {
	width: 50%;
}

/* twin */
.mail_form .twin {
	font-size: 0;
}
.mail_form .twin input + input {
	margin-left: 3.44%;
}
.mail_form .twin input {
	font-size: 16px;
	width: 48.26%;
	display: inline-block;
}

/* textarea */
.mail_form textarea {
	width: 100%;
	height: 150px;
	background-color: #EEE;
}

/* focus */
.mail_form input[type="text"]:focus,
.mail_form input[type="email"]:focus,
.mail_form textarea:focus {
	box-shadow: 0 0 7px #72B8FF;
}

/* submit */
.mail_form input[type="submit"] {
	color: #fff;
	font-size: 1.8rem;
	display:  block;
	width: 40%;
	margin: 0 auto 30px;
	padding: 24px 10px;
	background-color: #0080C4;
	border: none;
	transition: all .3s;
}
.mail_form input[type="submit"]:hover {
	background-color: #000;
}

/* reset */
.mail_form input[type="reset"],
.mail_form input.back {
	color: #333;
	font-size: 1.6rem;
	width: 20%;
	padding: 8px 10px;
	background: none;
}
.mail_form input[type="reset"]:hover,
.mail_form input.back:hover {
	color: #FFF;
}

/* btn_backhome */
.mail_form .btn_backhome {
	color: #fff;
	padding: 0.6em 1em;
	background-color: #000;
	text-decoration: none;
}
.mail_form .btn_backhome:hover {
	color: #fff;
	padding: 0.6em 1em;
	background-color: #b5b5b5;
}

/* form_message */
.form_message {
	color: #df0000;
	background-color: #ffffd1;
	border: 3px solid #df0000;
	margin: 0 50px 40px;
	padding: 20px 25px;
}
.form_message ul {
	list-style-type: disc;
	list-style-position: outside;
	padding-left: 25px;
}
.form_message ul li {
	font-weight: bold;
	margin-top: 3px;
}
.form_message ul li:first-child {
	margin-top: 0;
}

/* ナイトツアーエラーメッセージ */
.l_container .form_message {
	background-color: #ffffbb;
	border: 2px solid #df0000;
	color: #df0000;
	font-size: 120%;
	font-weight: bold;
	margin: 10px 50px;
	padding: 10px 15px;
}

/* フォーム用カレンダー */
/*p.calendar_month {
	background: #222;
	color: #fff;
	margin-bottom: 10px;
}*/

table.calender th {
	color: #fff;
	padding: 10px;
	border: 1px solid #ddd;
	font-weight: normal;
	text-align: center;
}
table.calender td {
	padding: 10px;
	border: 1px solid #ddd;
	vertical-align: top;
}
table.calender .coming {
	background-color: #ABE175;
}
table.calender .closed,
table.calender .available {
	background-color: #FFFD38;
}
table.calender label {
	display: block;
	font-size: 17px;
	margin: 0 auto;
	padding: 5px 0;
	line-height: 1;
	transition: .2s;
	background: #FCFBF7;
	border-top: 1px solid #ddd;
	margin: 5px -10px -10px;
}
/*table.calender .available label {
 *         cursor: pointer;
 *         }
 *         table.calender .available label:hover {
 *                 background-color: #EEEEEE;
 *                 }*/
table.calender input {
	display: none;
}
table.calender input[type="radio"]:checked + label {
	color: #fff;
	background: #444444;
}
table.calender label.acceptance_end {
	color: #999;
	font-weight: normal;
	border: 1px solid #CCCCCC;
	cursor: default;
}

/*---------------------------------------------------------------------
	404
---------------------------------------------------------------------*/
.contents_404 {
	text-align: center;
}
.contents_404 .inner {
	color: #fff;
	padding: 130px 50px 100px;
	background: #0080C4 url(/image/bg_404.jpg) no-repeat top center;
}
.contents_404 .ttl {
	font-size: 2.6rem;
	margin-bottom: 10px;
}
.contents_404 .ttl_02 {
	font-size: 9rem;
	margin: 20px auto 10px;
	line-height: 1;
}
.contents_404 .ttl_02 + p {
	font-size: 2rem;
}
.contents_404 .back_home {
	margin-top: 40px;
}
.contents_404 .back_home a {
	color: #fff;
	display: inline-block;
	font-size: 1.8rem;
	background-color: #0080C4;
	padding: 15px 30px;
}

/*---------------------------------------------------------------------
	js-inview
---------------------------------------------------------------------*/
/* 管理画面で見えなくなるので…#pagebody */
#pagebody .js_fade_in {
  opacity: 0;
  position: relative;
}
#pagebody .js_slide_up {
    opacity: 0;
    position: relative;
    top: 10px;
}
#pagebody .js_slide_down {
    opacity: 0;
    position: relative;
    top: -50px;
}
#pagebody .js_slide_left {
    opacity: 0;
    position: relative;
    left: -50px;
}
#pagebody .js_slide_right {
    opacity: 0;
    position: relative;
    right: -50px;
}

/*---------------------------------------------------------------------
	sitemap
---------------------------------------------------------------------*/
.list_sitemap {
	padding: 10px 0 0;
}
.list_sitemap a {
	color: #333;
	text-decoration: none;
	transition: .3s;
	display: block;
}
.list_sitemap .ttl {
	margin-bottom: 20px;
}
.list_sitemap .ttl a {
	color: #FFF;
	font-size: 2.2rem;
	padding: 15px 15px 15px 38px;
	background-color: #222;
	border-radius: 6px;
	position: relative;
}
.list_sitemap .ttl a::before {
	position: absolute;
	width: 6px;
	height: 6px;
	top: 26px;
	left: 18px;
	content: "";
	vertical-align: middle;
	transform: rotate(45deg);
	border-top: 2px solid #FFF;
	border-right: 2px solid #FFF;
}
.list_sitemap .ttl a:hover {
	background-color: #008BD6;	
}
.list_sitemap ul + .ttl {
	margin-top: 50px;
}
.list_sitemap > ul {
	font-size: 0;
}
.list_sitemap > ul > li {
	font-size: 1.8rem;
	width: 48.33%;
	margin: 0 3.33% 0 0;
	display: inline-block;
	vertical-align: top;
}
.list_sitemap > ul > li > a {
	padding: 10px 15px 10px 22px;
	position: relative;
	border-bottom: 1px solid #ddd;
}
.list_sitemap > ul > li > a:hover {
	color: #008BD6;
	border-color: #E3F2FA;
	background-color: #E3F2FA;
}
.list_sitemap > ul > li > a::before {
	position: absolute;
	width: 6px;
	height: 6px;
	top: 20px;
	left: 5px;
	content: "";
	vertical-align: middle;
	transform: rotate(45deg);
	border-top: 2px solid #008BD6;
	border-right: 2px solid #008BD6;
}
.list_sitemap > ul > li:nth-child(2n) {
	margin-right: 0;
}
.list_sitemap > ul > li:nth-child(n+3) {
	  margin-top: 25px;
}
.list_sitemap > ul > li > ul {
	font-size: 0;
	margin: 20px 0 0 15px;
}
.list_sitemap > ul > li > ul > li {
	font-size: 1.4rem;
	display: inline-block;
	vertical-align: top;
	width: 48.33%;
	margin: 0 3.33% 0 0;
	padding-left: 20px;
	position: relative;
}
.list_sitemap > ul > li > ul > li a:hover {
	color: #008BD6;
	text-decoration: underline;
}
.list_sitemap > ul > li > ul > li:nth-child(2n) {
	margin-right: 0;
}
.list_sitemap > ul > li > ul > li:nth-child(n+3) {
  margin-top: 12px;
}
.list_sitemap > ul > li > ul > li::before {
	position: absolute;
	top: 9px;
	left: 5px;
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #008BD6;
}
.list_sitemap > ul > li > ul > li > ul { display: none; }

/*---------------------------------------------------------------------
	page_scroll
---------------------------------------------------------------------*/
#page_scroll_navi {
  position: fixed;
  right: 30px;
  bottom: 90px;
  z-index: 1;
}
#page_scroll_navi a {
  display: block;
}
#page_scroll_navi a:hover img {
  opacity: 1;
  transform: translateY(-10px);
}

/*---------------------------------------------------------------------
	site_footer
---------------------------------------------------------------------*/
#site_footer {
  /*margin-top: 120px;*/
  background: #222222;
}

/* footer_navi */
.footer_navi {
  padding: 30px 20px 80px;
  box-sizing: content-box;
  max-width: 1200px;
  margin: 0 auto;
}
.footer_navi .item {
  float: left;
  width: 22.5%;
  margin-left: 3.33%;
}
.footer_navi .item:first-child {
  margin-left: 0;
}
.footer_navi .ttl {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 500;
  padding-bottom: 8px;
  margin-top: 20px;
  margin-bottom: 10px;
  border-bottom: 1px dotted #808080;
}
.footer_navi ul + .ttl {
  margin-top: 25px;
}
.footer_navi .ttl a {
  display: block;
  color: #fff;
  text-decoration: none;
  transition: .3s;
}
.footer_navi .ttl a:hover {
  color: #008bd6;
}
.footer_navi li + li {
  margin-top: 5px;
}
.footer_navi li a {
  color: #BABABA;
  font-size: 1.3rem;
  display: block;
  text-decoration: none;
  transition: .3s;
}
.footer_navi li a:hover {
  color: #008bd6;
}
.footer_navi .type_sns {
  font-size: 0;
}
.footer_navi .type_sns li {
  font-size: 1.5rem;
  display: inline-block;
  vertical-align: top;
  width: 25px;
  margin: 0 15px 0 0;
}


/* footer_info */
.footer_info {
  background: #000;
}
.footer_info .link {
  float: left;
  margin-top: 18px;
}
.footer_info .link li {
  font-size: 1.3rem;
  display: inline-block;
  vertical-align: middle;
}
.footer_info .link li + li {
  border-left: 1px solid #ddd;
}
.footer_info .link li a {
  color: #ddd;
  text-decoration: none;
  display: block;
  padding: 0 15px;
  transition: .3s;
}
.footer_info .link li a:hover {
  color: #008bd6;
}
.copyright {
  float: right;
}
.copyright p {
  color: #fff;
  font-size: 1.2rem;
    display: inline-block;
    vertical-align: middle;
  margin-right: 20px;
}
.footer_logo {
    display: inline-block;
    vertical-align: middle;
}
