@charset 'utf-8';
/* ===================================================================
 style info : コンテンツエリア関係 他
fonts
 10px = 84%    11px = 92%    12px = 100%   13px = 109%
 14px = 117%    15px = 125%    16px = 133.3%    17px = 141.7%
 18px = 150%    19px = 158.3%    20px = 166.7%    21px = 175%
 22px = 183.3%    23px = 191.7%    24px = 200%    25px = 208.3%
 26px = 216.7%
=================================================================== */
/*----------------------------------------------------
	共通
----------------------------------------------------*/
/* スクロールバーの有無によるズレ対策 */
* {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
}
img {
  max-width: 100%;
}
body {
  font-size: 12px;
}
.pc_cont {
  display: none;
}
.sp_cont {
  display: block;
}
/* btn */
.btn a {
  display: block;
  margin: 0 auto;
  max-width: 240px;
  text-align: center;
  width: 100%;
}
.bx-wrapper .bx-controls-direction a {
  z-index: 9000!important;
}
/*----------------------------------------------------
	レイアウト
----------------------------------------------------*/
#content {
  margin: 0 10px;
  width: auto;
}
#pagetop {
  bottom: 40px !important;
  right: 15px;
}
/*----------------------------------------------------
	header | ヘッダー
----------------------------------------------------*/
header {
  position: relative;
}
header.home {
  margin-bottom: 45px;
}
.tabs_dc_top {
  width: 100%;
}
#top_mainvisual_wrap .tabs_dc_top {
  margin-top: 152px;
}
.tabs_dc_top ul {
  margin-top: 10px;
}
.tabs_dc_top ul li a {
  border-radius: 10px 10px 0 0;
  padding-top: 50px;
}
.tabs_dc_top ul li.dc a {
  background-image: url(../img/txt_tab_dc_off_sp.png);
  background-size: 68px auto;
}
.tabs_dc_top ul li.top a {
  background-image: url(../img/txt_tab_top_off_sp.png);
  background-size: 81px auto;
}
.tabs_dc_top ul li.current.dc a {
  background-image: url(../img/txt_tab_dc_on_sp.png);
  background-size: 68px auto;
}
.tabs_dc_top ul li.current.top a {
  background-image: url(../img/txt_tab_top_on_sp.png);
  background-size: 81px auto;
}
#top_mainvisual_sp {
   /* ヘッダー注釈文対応時CSS */
  padding-top: 107px;
   /* 通常時
  padding-top: 57px;*/
  position: relative;
}
#top_mainvisual_sp .mainimg_ctrl_sp {
  display: none;
}
/*#top_mainvisual_sp .mainimg_ctrl_sp {
	position: absolute;
	top: 50%;
	margin-top: -10px;
	width: 100%;
}
#top_mainvisual_sp .mainimg_ctrl_sp a.bx-next {
	float: left;
	display: block;
	text-indent: -9999px;
	width: 20px;
	height: 20px;
  background: url(../img/btn_prev.png) no-repeat;
  background-size: 20px 20px;
}
#top_mainvisual_sp .mainimg_ctrl_sp a.bx-prev {
	float: right;
	display: block;
	text-indent: -9999px;
	width: 20px;
	height: 20px;
  background: url(../img/btn_next.png) no-repeat;
  background-size: 20px 20px;
}*/
#top_mainvisual_sp .bx-viewport {
  border: 0;
  box-shadow: none;
  left: 0;
  padding-top: 0;
}
#top_mainvisual_sp .bx-wrapper .bx-pager.bx-default-pager a:hover, #top_mainvisual_sp .bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #4fa4af;
}
#top_mainvisual_sp .bx-wrapper .bx-pager.bx-default-pager a {
  background: #ccc;
}
#top_mainvisual_sp .bx-controls-direction {
  display: none;
}
#top_mainvisual_sp .bx-wrapper .bx-pager {
  bottom: -38px;
}
#top_mainvisual_sp .bx-wrapper img {
  width: 100%;
}
#header_top {
  background: #fff;
  border-radius: 0;
  box-shadow: 0 0 4px #aaa;
  left: 0;
  margin-left: 0;
  position: fixed;
  top: 0;
  z-index: 9999;
}
#header_top .header_wrap {
  margin: 0;
  overflow: hidden;
  padding: 7px 8px;
  width: 100%;
}
#header_top .logo {
  float: left;
  padding-top: 0;
  width: 150px;
}
#header_top .logo img {
  max-width: 100%;
}
#header_top .right {
  display: none;
}
#header_top #menu_open {
  float: right;
  margin-top: 5px;
}
#menu {
  background: rgba(0,0,0,.6);
  display: none;
  height: 100%;
  left: 0;
  padding-top: 57px;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 9999;
}
#menu #menu_close_t {
  position: fixed;
  right: 230px;
  top: 10px;
}
#menu .inner {
  background: #fff;
  bottom: 0;
  overflow-y: scroll;
  padding: 15px 10px 25px 10px;
  position: fixed;
  right: 0;
  top: 0;
}
#menu .select_language, #menu .select_language select {
  width: 100%;
}
#menu .select_language select {
  background-size: 30px;
  font-size: 12px;
  height: 34px;
  line-height: 30px;
}
#menu .gnav_list {
  margin-bottom: 20px;
}
#menu .gnav_list li {
  border-bottom: 1px dashed #ccc;
}
/*#menu .gnav_list li a {
  background: url(../img/ico_arrow_rdc.png) right center no-repeat;
  background-size: 15px;
  display: block;
}*/
#menu .gnav_list li a {
  display: block;
  line-height: 50px;
}
#menu .gnav_list li.sp_nav01 a img {
  max-width: 128px;
}
#menu .gnav_list li.sp_nav02 a img {
  max-width: 143px;
}
#menu .gnav_list li.sp_nav03 a img {
  max-width: 115px;
}
#menu .gnav_list li.sp_nav04 a img {
  max-width: 116px;
}
#menu .gnav_list li.sp_nav05 a img {
  max-width: 176px;
}
#menu .gnav_list li.sp_nav06 a img {
  max-width: 181px;
}
#menu .gnav_list li.sp_nav07 a img {
  max-width: 160px;
}
#menu .gnav_list li.sp_nav08 a img {
  max-width: 133px;
}
#menu .gnav_list li.sp_nav09 a img {
  max-width: 174px;
}
#menu .gnav_list li.sp_nav10 a img {
  max-width: 99px;
}
#menu .gnav_list li.sp_nav11 a img {
  max-width: 99px;
}
#menu .gnav_list li.sp_nav12 a img {
  max-width: 99px;
}
#menu .gnav_list li.sp_nav14 a img {
  max-width: 188px;
  padding-left: 8px;
}
#menu .snav_list {
  background: #f4f4f4;
  margin-bottom: 10px;
  padding: 0 10px;
}
#menu .snav_list li {
  border-top: 1px solid #fff;
}
#menu .snav_list li:first-child {
  border: 0;
}
#menu .snav_list li a {
  display: block;
  line-height: 40px;
}
#menu .primary_list li {
  margin: 10px 0;
}
#menu .primary_list li a {
  background: url(../img/ico_arrow_rg.png) left center no-repeat;
  background-size: 6px 11px;
  display: block;
  padding-left: 12px;
  text-decoration: none;
}
#menu #menu_close_b {
  background: #4fa4af;
  color: #fff;
  font-size: 15px;
  line-height: 40px;
  text-align: center;
}
#menu #menu_close_b .ico {
  background: url(../img/ico_cross.png) left center no-repeat;
  background-size: 20px;
  display: inline-block;
  height: 20px;
  line-height: 20px;
  padding-left: 30px;
}
/*----------------------------------------------------
	breadcrumb | パンくず
----------------------------------------------------*/
#breadcrumb {
  font-size: 10px;
  margin: 10px auto;
  width: auto;
}

 /* ヘッダー注釈文対応時CSS */
.results_list #breadcrumb{
  /* ヘッダー注釈文対応時CSS */
  margin: 50px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/
}
.gtia #breadcrumb{
 /* ヘッダー注釈文対応時CSS */
  margin: 120px auto -20px;
 /* 通常時 
  margin: 80px auto 10px;*/
}

.kyogikai #breadcrumb{
 /* ヘッダー注釈文対応時CSS */
  margin: 120px auto -20px;
 /* 通常時 
  margin: 80px auto 10px;*/
}

.single #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 120px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/
}
.event .page_top #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 40px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/
}
.contact .page_top #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 120px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/
}
.kyoukai .page_top #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 120px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/
}
.jimukyoku .page_top #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 120px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/
}
.rank .page_top #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 120px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/
}
.omotenashi .page_top #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 120px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/
}
.privacy .page_top #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 120px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/
}
.policy .page_top #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 120px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/}
.sitemap .page_top #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 120px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/}
.event .single #breadcrumb {
  margin: 0 auto 10px;
}
.snow #breadcrumb {
  margin: -20px auto 10px;
}
.dc_theme .page_top #breadcrumb {
  /* ヘッダー注釈文対応時CSS */
  margin: 180px auto 10px;
  /* 通常時 
  margin: 80px auto 10px;*/}
.dc_theme .page_top #breadcrumb .container {
  margin: 0;
}
#breadcrumb.dc_event_breadcrumb, #breadcrumb.dc_topic_breadcrumb {
  margin-top: 10px;
}
#breadcrumb .container {
  margin: 0 10px;
}
/*----------------------------------------------------
	footer | フッター
----------------------------------------------------*/
footer {
  background: #f4f4f4;
  margin-top: 30px;
}
footer .inner {
  margin: 0 auto;
  padding: 20px 0 70px 0;
  width: 100%;
}
.footer_mid {
  margin: 0 10px;
  width: auto;
}
.footer_mid .ttl {
  margin: 10px 0;
  text-align: center;
}
.footer_mid .txt {
  line-height: 1.6;
  margin: 0 0 10px 0;
}
.footer_mid .btn a {
  line-height: 30px;
  width: auto;
}
.footer_mid .cont_left {
  background: #fff;
  border-radius: 10px;
  float: none;
  height: auto;
  margin-bottom: 15px;
  padding: 10px 10px 14px 10px;
  width: 100%;
}
.footer_mid .cont_right {
  background: #fff;
  border-radius: 10px;
  float: none;
  height: auto;
  padding: 10px 10px 14px 10px;
  width: 100%;
}
.footer_mid .cont_right .ttl img {
  width: 205px;
}
.footer_mid .cont_left .ttl img {
  width: 205px;
}
.footer_bottom {
  display: none;
}
footer .copyright {
  background: #4fa4af;
  color: #fff;
  font-size: 8px;
  line-height: 30px;
  text-align: center;
}
/*----------------------------------------------------
	top | トップページ
----------------------------------------------------*/
.page_top .sec1 {
  margin-bottom: 20px;
}
.page_top .sec1 .search_area {
  float: none;
  height: auto;
  margin-bottom: 20px;
  position: relative;
  width: 100%;
}
.page_top .sec1 .search_area h2 img {
  width: 162px;
}
.page_top .sec1 .search_area h2 .sp_arrow {
  position: absolute;
  right: 5px;
  top: 0;
}
.page_top .sec1 .search_area h2 .sp_arrow.rotate {
  transform: rotate(180deg);
}
.page_top .sec1 .search_area h2 .sp_arrow img {
  width: 25px;
}
.page_top .sec1 .search_area .inner {
  display: none;
}
.page_top .sec1 .search_area .inner .desc {
  font-size: 10px;
}
.page_top .sec1 .right {
  float: none;
  width: 100%;
}
.page_top .sec1 .right .sec1_rt {
  margin-bottom: 0;
}
.page_top .sec1 .right .sec1_rt li:first-child {
  float: none;
}
.page_top .sec1 .right .sec1_rt li {
  float: none;
  margin-bottom: 20px;
  width: 100%;
}
.page_top .sec1 .right .sec1_rt li a img {
  display: block;
  margin: 0 auto;
  max-width: 450px;
  width: 100%;
}
.page_top .sec1 .sec1_rb .bx-wrapper {
  margin: 0 auto;
  width: 250px;
}
.page_top .sec1 .sec1_rb .bx-viewport {
  border: 0;
  box-shadow: none;
  left: 0;
}
.page_top .sec1 .sec1_rb .bx-wrapper .bx-controls-direction a {
  height: 80px;
  margin: 0;
  top: 0;
  width: 15px;
}
.page_top .sec1 .sec1_rb .bx-wrapper .bx-prev {
  background: url(../img/btn_slider_left_sp.png) 0 0 no-repeat;
  background-size: 15px 80px;
  left: -24px;
}
.page_top .sec1 .sec1_rb .bx-wrapper .bx-next {
  background: url(../img/btn_slider_right_sp.png) 0 0 no-repeat;
  background-size: 15px 80px;
  right: -24px;
}
.page_top .sec2 {
  margin-bottom: 20px;
}
.page_top .sec2 .news {
  float: none;
  height: auto;
  margin: 0 0 20px 0;
  width: 100%;
}
.page_top .sec2 .news .tab_list li {
  background: #f2e2e2;
  border-radius: 8px 8px 0 0;
  cursor: pointer;
  float: left;
  padding: 10px 0;
  text-align: center;
  width: 50%;
}
.page_top .sec2 .news .tab_list #tab1 img {
  width: 86px;
}
.page_top .sec2 .news .tab_list #tab2 img {
  width: 138px;
}
.page_top .sec2 .news .border {
  border: 1px solid #dd7878;
  border-top: 0;
  height: auto;
  max-height: inherit;
  padding: 12px 14px 12px 14px;
}
.page_top .sec2 .news .border .inner {
  height: auto;
  margin-bottom: 10px;
  padding-right: 0;
  width: 100%;
}
.page_top .sec2 .news .border .inner .news_list {
  width: 100%;
}
.page_top .sec2 .rank {
  float: none;
  height: auto;
  margin-bottom: 20px;
  padding: 0 15px 20px;
  width: 100%;
}
.page_top .sec2 .rank h2 {
  margin: 0 -15px;
}
.page_top .sec2 .rank h2 img {
  width: 211px;
}
.page_top .sec2 .rank .rank_list {
  margin: 0;
}
.page_top .sec2 .rank .rank_list li {
  border-top: 1px dashed #ccc;
  padding: 10px 0;
}
.page_top .sec2 .rank .rank_list li:first-child {
  border: 0;
  padding-top: 15px;
}
.page_top .sec2 .rank .rank_list li:first-child .img {
  width: 87px;
}
.page_top .sec2 .rank .rank_list li:first-child .right {
  width: 63%;
}
.page_top .sec2 .rank .rank_list li:first-child .right .no img {
  width: 150px;
}
.page_top .sec2 .rank .rank_list li:first-child .img .sy-img-thumbnail.sy-noimage {
  height: 87px;
  line-height: 87px;
  width: 87px;
}
.page_top .sec2 .rank .rank_list li .img {
  float: left;
  margin-right: 10px;
  width: 70px;
}
.page_top .sec2 .rank .rank_list li .right {
  float: left;
  width: 70%;
}
.page_top .sec2 .rank .rank_list li .right .no {
  margin-bottom: 4px;
}
.page_top .sec2 .rank .rank_list li .right .no img {
  width: 105px;
}
.page_top .sec2 .rank .rank_list li .right .ttl {
  font-size: 16px;
}
.page_top .sec2 .rank p.btn {
  bottom: 0;
  left: 0;
  margin: 0 20px;
  position: inherit;
}
.page_top .sec2 .fb {
  float: none;
  text-align: center;
  width: 100%;
}
.fb-page {
  width: 100% !important;
}
.page_top .bnr_big {
  margin: 0 auto 30px auto;
}
.page_top .bnr_big li {
  float: none;
  margin: 0 auto 10px auto;
  max-width: 450px;
  width: auto;
}
.page_top .bnr_big li img {
  width: 100%;
}
.page_top .sep {
  margin: 20px auto 10px auto;
  width: 300px;
}
.page_top .bnr_sml {
  margin: 0 auto;
  width: 300px;
}
.page_top .bnr_sml li {
  float: left;
  height: 50px;
  margin: 0 0 10px 0;
  width: 145px;
}
.page_top .bnr_sml li:nth-child(even) {
  float: right;
}
.page_top .bnr_sml .pc_m_none {
  margin-bottom: 10px;
}
