@charset "utf-8";

/* ******************************************************************

	--style.css--

	1. Style setting
		1-1. Base styles
		1-2. Structure styles
		1-3. Block styles
		1-4. PageTitle styles

	2. Layout setting
		2-1. Header styles
			2-1_1. SEARCH（検索ボックス）
		2-2. GlobalNavi styles
		2-3. Main styles
		2-4. SideBar styles
		2-5. Footer styles
		2-6. SpNavi styles

	98. AD setting（広告）

****************************************************************** */

/*==================================================================
	1. Base setting
===================================================================*/
/* ------------------------------------------------------------------
	1-1. Base styles
-------------------------------------------------------------------*/
body {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
	font-size: 14px;
	line-height: 1.6;
	color: #333;
	background: #eee;
	min-width: 1186px;
	-webkit-text-size-adjust: none;
}

a { color: #1d3994; text-decoration: underline; outline: none; -webkit-transition: 0.3s; transition: 0.3s;}
a:hover { color: #1d3994; text-decoration: none;}

/* ------------------------------------------------------------------
	1-2. Structure styles
-------------------------------------------------------------------*/
.container {
	background: #FFF;
	width: 1186px;
	margin: 0 auto;
}
.contents {
	padding: 30px 20px;
}
.main {
	float: left;
	width: 790px;
}
.sidebar {
	float: right;
	width: 336px;
}
.sidebar_wrap {
	width: 336px;
}
.wrapper {
	width: 1186px;
	margin: 0px auto;
}

.section_inner_01 {
	padding: 0 123px;
}

.section_inner_02 {
	padding: 0 170px;
}

/* ------------------------------------------------------------------
	1-3. Block styles
-------------------------------------------------------------------*/
/*
.block {
	padding: 20px 0px;
}
*/

/* ------------------------------------------------------------------
	1-4. PageTitle styles
-------------------------------------------------------------------*/
.page_title {
	background: #FFF;
	border-top: 5px solid #333;
	margin-bottom: 20px;
}
.page_title h2 {
	font-weight: bold;
	padding: 10px 0;
}
.page_title_type_01 h2 {
	font-size: 26px;
	line-height: 28px;
}

/*==================================================================
	2. Layout setting
===================================================================*/

/* ------------------------------------------------------------------
	2-1. Header styles
-------------------------------------------------------------------*/
.header { }
.header_utility {
	border-bottom: 1px solid #c9c9c9;
	padding: 10px 20px;
}
.header_utility_main {
	float: left;
}
.header_utility_sub {
	float: right;
	text-align: right;
}
.header_utility_item {
	border-left: 1px solid #333;
	display: inline-block;
	padding-left: 10px;
	margin-left: 10px;
}
.header_utility_item:first-child {
	border-left: none;
	padding-left: 0;
	margin-left: 0;
}
.header_utility_item_agara a { color: #4f7eb9;}
.header_utility_item_kiilife a { color: #efa729;}
.header_utility_item_mikan a { color: #1fc517;}
.header_utility_item_kiisearch a { color: #333;}
.header_utility_item_rss a { color: #ff8003;}
.header_main {
	padding: 10px 20px;
}
.header_main2 {
	padding: 10px 20px;
	border-bottom: 5px solid #4f7eb9;
}
.logo {
	float: left;
}
.header_tools {
	float: right;
	text-align: right;
	padding-top: 7px;
}
.header_info {
	float: left;
	font-size: 16px;
	line-height: 30px;
}
.header_search {
	float: right;
	width: 230px;
}

/* ------------------------------------------------------------------
	2-1_1. SEARCH（検索ボックス）
-------------------------------------------------------------------*/
.search_item {
	position: relative;
	background: #FFF;
	border: 1px solid #c9c9c9;
}
.search_item dt {
	padding: 3px 20% 3px 5px;
}
input.search_text {
	width: 100%;
	background: none;
	border: none;
	outline: 0;
	font-size: 14px;
}
.search_text:focus {
	border: none;
}
.search_item dd {
	position: absolute;
	top: 0;
	right: 0;
	width: 15%;
	border-left: 1px solid #c9c9c9;
}
.search_button {
	display: block;
	background: transparent;
	width: 100%;
	height: 28px;
	line-height: 28px;
	border: none;
	color: #4f7eb9;
	font-size: 16px;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: 'FontAwesome';
}

/* ------------------------------------------------------------------
	2-2. GlobalNavi styles
-------------------------------------------------------------------*/
.gnav{
	background: #4f7eb9;
	position: relative;
	height: 86px;
}
.gnav ul li a,
.gnav ul li.active li a{
	display: block;
	text-decoration: none;
}
.gnav_main ul,
.gnav_sub ul{
	width: 100%;
/*height: 40px;*/
}
.gnav_main ul li,
.gnav_sub ul li{
	float: left;
}

/*-------------------------------*/
/*	gnav_main
/*-------------------------------*/
.gnav_main{
	position: relative;
	z-index: 1;
	text-align: center;
}
.gnav_main_list {
	position: relative;
	height: 40px;
}
.gnav_main_list > li {
	border-right: 1px solid #7ea2cf;
}
.gnav_main_list > li > a {
	border-right: 1px solid #375b87;
	text-align: center;
	padding: 0 20px;
	color: #FFF;
	font-size: 18px;
	line-height: 40px;
}
.gnav_main li.active ul.sub_menu {
	display: block;
	z-index: 1;
}
.gnav_main li.active-sub a,
.gnav_main li.active a,
.gnav_main li:hover a{
	background: #3a3e49;
	color: #FFF;
}

/*-------------------------------*/
/*	gnav_sub
/*-------------------------------*/
.gnav_sub{
	background: #3a3e49;
/*
position: relative;
	z-index: 1;
	*/
	padding: 10px 0;
}
.gnav_sub li,
.gnav_main .sub_menu li {
	border-right: 1px solid #FFF;
	font-size: 16px;
	line-height: 1;
}
.gnav_sub li:last-child,
.gnav_main .sub_menu li:last-child {
	border-right: none;
}
.gnav_sub a,
.gnav_main .sub_menu a {
	color: #FFF;
	padding: 5px 0;
	margin: 0 20px;
position: relative;
}
.gnav_sub a:hover,
.gnav_main .sub_menu a:hover {
	/*
	background: #FFF;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	color: #003e83;
	*/
}

.gnav_sub a::after,
.gnav_main .sub_menu a::after {
position: absolute;
top: 105%;
left: 0;
width: 100%;
height: 2px;
background: rgba(79,126,185,1);
content: '';
opacity: 0;
/*
-webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
-moz-transition: opacity 0.3s, -moz-transform 0.3s;
transition: opacity 0.3s, transform 0.3s;
-webkit-transform: translateY(10px);
-moz-transform: translateY(10px);
transform: translateY(10px);
*/
}

.gnav_sub a:hover::after,
.gnav_main .sub_menu a:hover::after {
opacity: 1;
/*
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
transform: translateY(0px);
*/
}


/*-------------------------------*/
/*	gnav_mainの中のメニュー
/*-------------------------------*/
.gnav_main .sub_menu{
	background: #3a3e49;
	position: absolute;
	top: 40px;
	left: 0;
	text-align: left;
	z-index: 2;
	display: none;
	padding: 10px 0;
}









/* ------------------------------------------------------------------
	2-3. Main styles
-------------------------------------------------------------------*/
.section {
	margin-bottom: 30px;
	/*line-height: 1.8;*/
}
.section_b10px {
	margin-bottom: 10px;
	/*line-height: 1.8;*/
}
.section_wrap {
	/*margin-bottom: 40px;*/
}
.section_wrap_line {
	border-bottom: 1px solid #c9c9c9;
}
/*
.section_indent {
	padding-left: 20px;
}
*/
.section_box { }
.section_thm {
	width: 270px;
}
.section_thm_left {
	float: left;
	margin: 0 20px 10px 0;
}
.section_thm_right {
	float: right;
	margin: 0 0 10px 20px;
}
.section_body {
	overflow: hidden;
}

/* ------------------------------------------------------------------
	2-4. SideBar styles
-------------------------------------------------------------------*/
.section_side {
	margin-bottom: 20px;
}
.section_wrap_side { }
.section_wrap_side_line {
	border-bottom: 1px solid #c9c9c9;
}

/*-------------------------------*/
/*	購読申し込み部分
/*-------------------------------*/
.side_guide {
	margin-bottom: 20px;
}

/*-------------------------------*/
/*	アクセスランキング
/*-------------------------------*/
.section_side_rank { }
.section_side_rank .post_item {
	min-height: 50px;
}
.section_side_rank .post_cell-rank {
	width: 26px;
}
.section_side_rank .post_rank {
	font-size: 16px;
	font-weight: bold;
}

/*-------------------------------*/
/*	共同通信PRワイヤー
/*-------------------------------*/
.section_side_prw .post_title {
	font-weight: normal;
}
.section_side_prw .post_summary {
	font-size: 12px;
}

/*-------------------------------*/
/*	Digital PR Platform
/*-------------------------------*/
.section_side_digitalpr .post_title {
	font-weight: normal;
}
.section_side_digitalpr .post_summary {
	font-size: 12px;
}







/* ------------------------------------------------------------------
	2-5. Footer styles
-------------------------------------------------------------------*/
.footer {
	background: #e2e2e2;
}

/*-------------------------------*/
/*	footer_section_01
/*-------------------------------*/
.footer_section_01 { }
.footer_section_01 a:hover {
	text-decoration: underline;
}
.footer_nav_sub {
	background: #4f7eb9;
	font-size: 0;
}
.footer_nav_sub_item {
	display: inline-block;
	border-right: 1px solid #7ea2cf;
	font-size: 16px;
	text-align: center;
}
.footer_nav_sub_item a {
	display: block;
	border-right: 1px solid #375b87;
	padding: 8px 15px;
	text-decoration: none;
	color: #FFF;
}
.footer_nav {
	padding: 20px;
}
.footer_nav_list {
	float: left;
	margin-right: 25px;
}
.footer_nav_title {
	font-size: 16px;
	padding-top: 10px;
	padding-bottom: 5px;
}
.footer_nav_item {
	margin-bottom: 10px;
}
.footer_nav_item li {
	padding: 5px 5px 5px 12px;
	font-size: 12px;
}
.footer_nav_item li a {
	text-decoration: none;
	position: relative;
	color: #3a3e49;
}
.footer_nav_item li a:before{
	position: absolute;
	left: -12px;
	content: '\f0da';
	font-family: 'FontAwesome';
	font-size: 18px;
	line-height: 1;
	font-weight: normal;
	color: #4f7eb9;
}
.footer_nav_list_01 .footer_nav_item {
	display: inline-block;
	vertical-align: top;
	margin-right: 15px;
}
.footer_nav_list_03 .footer_nav_item {
	display: inline-block;
	vertical-align: top;
	margin-right: 15px;
}
.footer_nav_list_07 .footer_nav_item {
	display: inline-block;
	vertical-align: top;
	margin-right: 15px;
}

/*-------------------------------*/
/*	footer_section_02
/*-------------------------------*/
.footer_section_02 { }
.footer_section_02 a {
	color: #3a3e49;
}
.footer_section_02_title {
	background: #4f7eb9;
	color: #FFF;
	padding: 8px 15px;
	font-size: 16px;
}
.footer_section_02_title a {
	color: #FFF;
}
.news47_list {
	padding: 10px 12px;
	font-size: 0;
}
.news47_list > li {
	display: inline-block;
	border-right: 1px solid #3a3e49;
	padding: 0 8px;
	margin: 5px 0;
	font-size: 12px;
	line-height: 1;
}

#im_panel_pc {
    box-shadow: rgb(0 0 0 / 40%) 0px -4px 6px -3px;
    background: #fff !important;
    padding: 5px 0;
}
#im_panel_pc_close {
    background-color: #fff;
    height: 28px;
    width: 28px;
    box-shadow: 0 -1px 1px 0 rgb(0 0 0 / 20%);
    border-radius: 12px 0 0 0;
}
#im_panel_pc_close.btn_parts_pc {
    right: 0px;
}

/*-------------------------------*/
/*	copyright
/*-------------------------------*/
.copyright {
	background: #3a3e49;
	padding: 10px 0;
	font-size: 12px;
	color: #FFF;
	text-align: center;
	margin-bottom: 100px;
}

/*-------------------------------*/
/*	PAGETOP
/*-------------------------------*/
.page_top {
	position: fixed;
	bottom: 10px;
	right: 10px;
	z-index: 99;
	background: #333;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	padding: 10px 15px;
	color: #FFF;
	text-align: center;
	opacity: 0.8;
}
.page_top i {
	font-size: 30px;
}


/* ------------------------------------------------------------------
	2-6. Page styles
-------------------------------------------------------------------*/

/* ▼▼▼ここに各コーダーが別途作成したCSS内のスタイルをドッキングしていく▼▼▼ */
/* ------------------------------------
	404系ページここから
------------------------------------*/
.no_page {
	padding: 10% 0;
}
.no_page .highlight_box_02 {
	padding: 15% 3%;
	text-align: center;
}
/* ------------------------------------
	404系ページここまで
------------------------------------*/

/* ------------------------------------
	フォームページここから
------------------------------------*/
.page_form_confirm { }
.page_form_confirm .table_01 td {
	font-weight: bold;
}
/* ------------------------------------
	フォームページここまで
------------------------------------*/

/* ------------------------------------
	選挙ページここから
------------------------------------*/
.page_senkyo { }
.senkyo_info {
	border-bottom: 1px solid #c9d4e2;
	padding-bottom: 10px;
}
.senkyo_date {
	float: left;
	font-size: 24px;
}
.senkyo_summary {
	float: right;
	font-size: 18px;
}
.senkyo_turnout {
	text-align: right;
	padding: 5px 0;
	font-size: 18px;
	font-weight: bold;
}



/* ------------------------------------
	選挙ページここまで
------------------------------------*/

/* ------------------------------------
	野球ページここから
------------------------------------*/
.page_baseball { }
.baseball_item {
	border-bottom: 1px solid #c9d4e2;
	padding-bottom: 20px;
	margin-top: 20px;
}
.baseball_info {
	color: #a5a5a5;
	padding-bottom: 10px;
}
.baseball_summary {
	padding-bottom: 10px;
}
.baseball_status {
	text-align: right;
	color: #FFF;
	font-size: 16px;
	font-weight: bold;
}
.baseball_score {
	background: #007130;
	padding: 10px;
}
.baseball_score .table_03 {
	margin-top: 10px;
}
.baseball_score .table_03 .th_fix {
	width: 60px;
}
.baseball_score .table_03 td:first-child {
	padding: 10px;
	-moz-text-align-last: justify;
	text-align-last: justify;
}
.section_tournament { }
.tournament_item {
	border-bottom: 1px solid #c9d4e2;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.tournament_title {
	font-size: 24px;
}

/* ------------------------------------
	野球ページここまで
------------------------------------*/


/* ------------------------------------
	写真詳細ページここから
------------------------------------*/
.page_photo_detail { }

.photo_detail_main {
	background: #eee;
	margin: 10px 0;
	padding: 40px 0 20px 0;
}
.photo_detail_main .swiper-button-prev:before {
	content: "\f104";
	font-family: fontAwesome;
}
.photo_detail_main .swiper-button-next:before {
	content: "\f105";
	font-family: fontAwesome;
}
.photo_detail_main .swiper-button-next,
.photo_detail_main .swiper-button-prev {
	font-size: 40px;
	color: #4f7eb9;
}
.photo_detail_main .swiper-button-prev,
.photo_detail_main .swiper-button-next {
	background: none;
	outline: none;
}
.photo_detail_main .swiper-zoom-container img {
	width: 95%;
	max-width: 720px;
	max-height: 600px;
}
.photo_detail_caption {
	padding-top: 10px;
	text-align: center;
}

.gallery_thumbs { }
.gallery_thumbs .swiper-slide {
	background: #eee;
	text-align: center;
	opacity: 0.4;
}
.gallery_thumbs .swiper-slide-thumb-active {
	opacity: 1;
}
.gallery_thumbs img {
	height: 80px;
}

/* ------------------------------------
	写真詳細ページここまで
------------------------------------*/

/* ------------------------------------
	イベントページここから
------------------------------------*/
.page_event { }

/*------------------*/
/*	イベントタブ
/*------------------*/
.event_tabs {
	border-top: 1px solid #3a3e49;
	border-bottom: 1px solid #3a3e49;
	border-right: 1px solid #3a3e49;
	margin: 20px 0 21px 0;
	display: table;
	table-layout: fixed;
	width: 100%;
}
.event_tab {
	border-left: 1px solid #3a3e49;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	font-size: 16px;
	position: relative;
}
.event_tab:nth-of-type(1) {
	margin-left: 0;
}
.event_tab:nth-of-type(8) {
	width: 11.8%;
}
.event_tab.active:before{
	content: "";
	border: 12px solid transparent;
	border-bottom: 12px solid #fff;
	position: absolute;
	left: 50%;
	margin-left: -12px;
	bottom: -26px;
	z-index: 10;
}
.event_tab.active:after{
	content: "";
	border: 12px solid transparent;
	border-bottom: 12px solid #4f7eb9;
	position: absolute;
	left: 50%;
	margin-left: -12px;
	bottom: -22px;
}
.event_tab a {
	color: #333;
	display: block;
	text-decoration: none;
}
.event_tab.active a {
	background: #4f7eb9;
	color: #FFF;
}
.event_tab.saturday a {
	background: #e6f0fc;
	color: #00a0e9;
}
.event_tab.saturday.active a {
	background: #0061d8;
	color: #FFF;
}
.event_tab.sunday a {
	background: #fce2ed;
	color: #ff0000;
}
.event_tab.sunday.active a {
	background: #d55482;
	color: #FFF;
}
.event_tab.calendar a {
	background: #a2a2a2;
	padding: 8px 0;
}
.event_tab_youbi {
	border-bottom: 1px solid #3a3e49;
	padding: 5px 0;
}
.event_tab_date {
	font-size: 30px;
	line-height: 1;
	padding-top: 10px;
}
.event_tab_count {
	text-decoration: underline;
	padding-bottom: 5px;
}


.event_panel {
	display: none;
}
.event_panel.active {
	display: block;
	border: 3px solid #4f7eb9;
	padding: 10px 15px;
}
.event_panel_title {
	border-bottom: 1px solid #333;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.event_panel_date {
	float: left;
	font-size: 20px;
	font-weight: bold;
	padding: 10px 0;
}
.event_panel .contents_btn {
	float: right;
	width: 200px;
	padding: 0;
}

/*------------------*/
/*	イベントタブの記事リスト
/*------------------*/
.section_event_top { }
.section_event_top .post_item {
	padding: 5px 0 5px 15px;
}
.section_event_top .post_title {
	float: left;
	width: 40%;
	padding: 8px 0;
}
.section_event_top .post_summary {
	float: right;
	width: 60%;
	background: #eee;
	padding: 8px;
}

/*------------------*/
/*	イベント記事
/*------------------*/
.page_event .post_summary { }
.page_event .post_summary_item {
	padding-top: 5px;
}
.page_event .post_summary_item:first-child {
	padding-top: 0;
}
.page_event .post_summary_item .post_subject {
	display: inline-block;
	white-space: nowrap;
	width: 74px;
	-moz-text-align-last: justify;
	text-align-last: justify;
}

/*------------------*/
/*	イベント検索
/*------------------*/
.event_search { }
.event_search_item {
	font-size: 0;
}
.event_search_subject {
	display: inline-block;
	vertical-align: top;
	width: 28%;
	padding: 10px 0;
	font-size: 18px;
	font-weight: bold;
}
.event_search_body {
	display: inline-block;
	vertical-align: top;
	font-size: 18px;
	width: 72%;
	margin-bottom: 10px;
}
.event_search_body .form_select_wrap_date{
	float: left;
}
.event_search_body .form_select_wrap {
	float: left;
}
.event_search_input {
	float: left;
}
.event_search_icon {
	margin-left: 10px;
	cursor: pointer;
}
.event_search_btn {
	float: right;
	width: 30%;
}
.event_search_body .form_btn {
	width: 100%;
	font-size: 18px;
}

/* デフォルトのform要素の上書き */
.event_search_body .form_select {
	width: 300px;
	border: 2px solid #000;
	border-radius: 0;
	font-size: 18px;
}
.event_search_body .form_text {
	width: 300px;
	border: 2px solid #000;
	border-radius: 0;
	font-size: 18px;
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	text-decoration: inherit;
}

.search_term {
	font-size: 1.2rem;
	font-weight: bold;
}


/*------------------*/
/*	カレンダー
/*------------------*/
table.calendar {
	border-collapse: separate;
	border-spacing: 4px;
	border: none;
	width: 100%;
	font-size: 18px;
}
table.calendar th,
table.calendar td {
	width: 14.3%;
	text-align: center;
	line-height: 46px;
}
table.calendar th {
	border: none;
	padding: 0;
}
table.calendar td {
	border: 1px solid #c9c9c9;
	padding: 0;
}
table.calendar a {
	display: block;
	font-weight: bold;
	text-decoration: underline;
}
table.calendar a:hover {
	background: #4f7eb9;
	color: #FFF;
}

/* キャプション */
table.calendar caption {
	background: #eef5fe;
	color: #333;
	padding: 10px;
	font-size: 18px;
	line-height: 1.2;
}

/* 日曜日 */
table.calendar tr th:nth-child(1),
table.calendar tr td:nth-child(1) {
	color: #ff0000;
}

/* 土曜日 */
table.calendar tr th:nth-child(7),
table.calendar tr td:nth-child(7) {
	color: #4f7eb9;
}

/* 今日 */
table.calendar td.today {
	border: 1px solid #4f7eb9;
	background: #4f7eb9;
	color: #FFF;
	font-weight: bold;
}
table.calendar td.today a {
	color: #FFF;
}

/* 記事があるセル */
table.calendar td.active {
	border: 1px solid #4f7eb9;
}

/* 前後の月の日付が入るセル */
table.calendar td.blank {
	background: #eee;
	color: #c9c9c9 !important;
}


/*------------------*/
/*	イベント詳細
/*------------------*/
.page_event_detail { }
.page_event_detail .table_01 th { }
.page_event_detail .table_01 td {
	font-weight: bold;
}

/* ------------------------------------
	イベントページここまで
------------------------------------*/

/* ▲▲▲ここに各コーダーが別途作成したCSS内のスタイルをドッキングしていく▲▲▲ */





/*==================================================================
	98. AD setting（広告）
===================================================================*/
.ad_space {
	text-align: center;
}
.ad_space_header {
	margin-top: 20px;
	min-height: 90px;
}
.ad_space_side {
	margin-bottom: 20px;
}
.ad_space_main {
	margin-bottom: 20px;
}
/* 2つ並び広告 */
.ad_area {
	padding: 20px 0;
}
/*
.ad_caption {
	text-align: center;
	padding: 10px 0;
}
*/
.ad_list {
	font-size: 0;
	text-align: center;
}
.ad_item {
	width: 340px;
	margin: 0 20px;
	display: inline-block;
	vertical-align: top;
	text-align: center;
	font-size: 14px;
}
.ad_item_l430px {
	width: 430px;
	float: left;
	margin: 0;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	font-size: 14px;
}
.ad_item_r430px {
	width: 430px;
	float: right;
	margin: 0;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	font-size: 14px;
}
.ad_item_l340px {
	width: 340px;
	float: left;
	margin: 0;
	display: inline-block;
	vertical-align: top;
	text-align: center;
	font-size: 14px;
}
.ad_item_r340px {
	width: 340px;
	float: right;
	margin: 0;
	display: inline-block;
	vertical-align: top;
	text-align: center;
	font-size: 14px;
}

/* ********************************
sp_over
******************************** */
#sp_over {
    color: #ffffff;
    background-color: #4F7EB9;
    text-align: center;
    font-size: 1.4rem;
    margin-bottom: 20px;
    padding: 40px 10px;
}
#sp_over span {
    margin-left:10px;
    font-size: 1.4rem;
}
#sp_over .close {
    border: 5px solid #ffffff;
    padding: 5px 15px;
}
#sp_over a {
    color: #ffffff;
    font-weight: bold;
}


/* ------------------------------------
	会員登録ページここから
------------------------------------*/

/*-------------------------------*/
/*	登録ステップ部分
/*-------------------------------*/
.section_step {
	text-align: center;
	margin-bottom: 30px;
}
.section_step_item {
	float: left;
	width: 20%;
	padding: 0 15px;
	color: #4f7eb9;
	position: relative;
}
.section_step_item:after {
	font-family: 'FontAwesome';
	content: "\f0da";
	position: absolute;
	top: 50%;
	right: -3%;
	left: auto;
	bottom: auto;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 30px;
	color: #eeeeee;
}
.section_step_item:last-child:after {
	display: none;
}
.section_step_wrap {
	background: #eeeeee;
	padding: 10px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	min-height: 110px;
}
.section_step_item.current .section_step_wrap {
	background: #eef5fe;
}
.section_step_title {
	border-bottom: 1px dotted #4f7eb9;
	padding-bottom: 5px;
	margin-bottom: 5px;
}
@media only screen and (max-width: 640px) {
	.section_step {
	display: none;
	}
}

.section_step_sp {
	display: none;
}
@media only screen and (max-width: 640px) {
	.step-title {
	background: #4f7eb9;
	color: #FFF;
	}
	.section_step_sp {
		display: block;
		margin-bottom: 5%;
	}
	.section_step_sp_item {
		background: #eeeeee;
		border-right: 1px solid #FFF;
		float: left;
		width: 16.666%;
		padding: 2% 0;
		color: #b5b5b5;
		position: relative;
		font-size: 12px;
		font-weight: bold;
		text-align: center;
	}
	.section_step_sp_item.current {
		background: #4f7eb9;
		color: #FFF;
	}
	.section_step_sp_item:first-child {
		border-top-left-radius: 10px;
		-webkit-border-top-left-radius: 10px;
		-moz-border-radius-topleft: 10px;
		border-bottom-left-radius: 10px;
		-webkit-border-bottom-left-radius: 10px;
		-moz-border-radius-bottomleft: 10px;
	}
	.section_step_sp_item:last-child {
		border-top-right-radius: 10px;
		-webkit-border-top-right-radius: 10px;
		-moz-border-radius-topright: 10px;
		border-bottom-right-radius: 10px;
		-webkit-border-bottom-right-radius: 10px;
		-moz-border-radius-bottomright: 10px;
		border-right: none;
	}
	.section_step_sp_item.current:before {
		content: "";
		position: absolute;
		bottom: -18px;
		left: 50%;
		margin-left: -10px;
		border: 10px solid transparent;
		border-top: 10px solid #4f7eb9;
	}
}



/*-------------------------------*/
/*	確認ページ用のリスト
/*-------------------------------*/
.form_edit { }
.form_edit_subject {
	float: left;
}
.form_edit_btn {
	float: right;
}
.form_edit_btn .form_btn {
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	font-size: 16px;
	padding: 10px 15px;
	margin-top: 5px;
}
.form_edit_btn .form_btn:first-child {
	margin-top: 0;
}
a.form_btn {
	text-decoration: none;
}
a.form_btn:hover{
	color: #FFF;
}

@media only screen and (max-width: 640px) {
	.form_edit { }
	.form_edit_subject {
	float: none;
	}
	.form_edit_btn {
	float: none;
	border-top: 1px dotted #eeeeee;
	padding-top: 3%;
	margin-top: 3%;
	text-align: center;
	}
	.form_edit_btn .form_btn {
	width: 100%;
	}
}


/*-------------------------------*/
/*	フォーム内各種文言
/*-------------------------------*/
.form_info {
	padding: 30px 0;
}
.form_info_text {
	font-size: 14px;
}
.form_info_title {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}
.form_info_error {
	border: 2px solid #ff0000;
	background: #FFF;
	color: #ff0000;
	font-weight: bold;
	margin: 20px 10px;
	text-align: center;
}
.form_info_finish {
	background: #eee;
}
.highlight_box_01 .mailto{
	font-weight: bold;
	font-size: 16px;
}

@media only screen and (max-width: 640px) {
	.form_info {
	padding: 5% 0;
	}
	.form_info_text { }
	.form_info_title {
	font-size: 16px;
	}
	.form_info_error {
	margin: 3% 0;
	font-size: 12px;
	}
}

/*-------------------------------*/
/*	家族会員
/*-------------------------------*/
.familyList > label {
    display: table;
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: 1px solid #efefef;
    width: 100%;
}
.familyList > label > ul > .input {
    float: left;
    margin-right: 5px;
    vertical-align: middle;
}
.familyList > label > ul > li {
    display: table-cell;
}

/* ------------------------------------
	会員登録ページここまで
------------------------------------*/

/* ------------------------------------
	マイページTOPここから
------------------------------------*/
.my_top_list {
	font-size: 0;
	padding: 10px 20px 0 20px;
}
.my_top_item {
	display: inline-block;
	width: 32%;
	vertical-align: top;
	margin: 0 2% 2% 0;
}
.my_top_item:nth-child(3n) {
	margin-right: 0;
}
.my_top_title {
	font-size: 16px;
}
.my_top_title a {
	background: #4f7eb9;
	display: block;
	padding: 10px;
	color: #FFF;
	text-decoration: none;
	border-radius: .3rem;
}
.my_top_title a::before {
	content:  '';
	border-style: solid;
	border-width: 5px 0 5px 7px;
	border-color: transparent transparent transparent #FFF;
	display:  inline-block;
	vertical-align:  middle;
	position:  relative;
	top: -2px;
	margin-right: 5px;
}
.my_top_title a:hover {
	background: #333;
}
.my_top_title_sub {
	padding: 10px;
	font-size: 14px;
	line-height: 1.4;
}

@media only screen and (max-width: 640px) {
	.my_top_list {
	padding: 2%;
	}
	.my_top_item {
	display: block;
	width: 100%;
	margin: 0 0 2% 0;
	}
	.my_top_title a {
	padding: 4%;
	}
	.my_top_title_sub {
	padding: 2% 4% 4% 4%;
	}

}
 /* ------------------------------------
	マイページTOPここまで
------------------------------------*/
