@charset "UTF-8";
/*
Theme Name:   THE SONIC Child
Theme URI:    https://the-sonic.jp
Description:  THE SONICカスタマイズ用子テーマ
Author:       SONIC Team
Author URI:   https://the-sonic.jp
Template:     thesonic
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
*/

/*
* ここから下に記述
*/


/*----------------------------------------------------------------------------------------------------------------

地図リンク

----------------------------------------------------------------------------------------------------------------*/
#japan-map p,
#japan-map a { 
	margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }
#japan-map a:hover {
	transition: 0.3s all;
}
/******* 地図成形 *******/
#japan-map div div.area div {
	border: 1px #fff solid;
	text-align: center;
	font-size: 12px;
 	display: flex;
		display: -webkit-flex;
 	align-items: center; /* 縦方向中央揃え */
 		-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 	justify-content: center; /* 横方向中央揃え */
 		-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
	border-radius: 6px;
		-webkit-border-radius: 6px;
	position: absolute;
	box-sizing: border-box;
	transition: 0.2s;
	opacity: 0.5;
}
#japan-map div div.area div:hover {
	opacity: 1;
	transition: 0.2s;
}

#japan-map {
	display: block;
	width: 619px;
	height: 472px;
	background-color: none;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
#japan-map p.area-title {
	display: none;
}

/* 北海道・東北 */

#hokkaido-touhoku {
	width: 123px;
	display: block;
	height: 265px;
	position: absolute;
	left: 499px;
}
#hokkaido-touhoku div.area div {
	border: solid 1px;
	background-color: #7478c2;
	color: #ffffff;
}

#hokkaido {	
	width: 123px;
	height: 70px;
}
#aomori {
	width: 90px;
	height: 43px;
	left: 15px;
	top: 86px;
}
#akita {
	width: 60px;
	height: 42px;
	left: 0px;
	top: 129px;

}
#iwate {
	width: 60px;
	height: 42px;
	left: 60px;
	top: 129px;
}
#yamagata {
	width: 60px;
	height: 42px;
	top: 171px;
	left: 0px;
}
#miyagi {
	width: 60px;
	height: 42px;
	top: 171px;
	left: 60px;
}
#fukushima {
	width: 60px;
	height: 42px;
	top: 213px;
	left: 60px;
}

/* 関東 */

#kantou {
	width: 121px;
	display: block;
	height: 174px;
	position: absolute;
	top: 255px;
	left: 499px;
	z-index: 2;
}
#kantou div.area div {
	background-color: #31beca;
	color: #ffffff;
}
#ibaraki {
	width: 42px;
	height: 85px;
	top: 0px;
	left: 80px;
}
#tochigi {
	width: 40px;
	height: 42px;
	top: 0px;
	left: 40px;
}
#gunma {
	width: 40px;
	height: 42px;
	top: 0px;
	left: 0px;
}
#saitama {
	width: 80px;
	height: 43px;
	top: 42px;
	left: 0px;
}
#chiba {
	width: 42px;
	height: 84px;
	top: 85px;
	left: 80px;
}
#tokyo {
	width: 80px;
	height: 42px;
	top: 85px;
	left: 0px;
}
#kanagawa {
	width: 57px;
	height: 42px;
	top: 127px;
	left: 0px;
}

/* 中部 */

#tyubu {
	width: 230px;
	height: 211px;
	position: absolute;
	left: 341px;
	top: 213px;
}
#tyubu div.area div {
	background-color: #4ab969;
	color: #ffffff;
}

#nigata {
	width: 60px;
	height: 42px;
	left: 158px;
}
#toyama {
	width: 50px;
	height: 42px;
	left: 108px;
}
#ishikawa {
	width: 40px;
	height: 57px;
	left: 68px;
}
#fukui {
	width: 68px;
	height: 42px;
	left: 0px;
	z-index: 2;
}
#nagano {
	width: 50px;
	height: 85px;
	left: 108px;
	top: 42px
}
#yamanashi {
	width: 50px;
	height: 42px;
	left: 108px;
	top: 127px;
}
#gifu {
	width: 40px;
	height: 55px;
	left: 68px;
	top: 57px
}
#shizuoka {
	width: 50px;
	height: 42px;
	left: 108px;
	top: 169px;
}
#aichi {
	width: 40px;
	height: 57px;
	top: 112px;
	left: 68px;
}

/* 近畿 */

#kinki {
	width: 146px;
	height: 211px;
	position: absolute;
	left: 260px;
	top: 213px;
}
#kinki div.area div {
	background-color: #b0b72f;
	color: #ffffff;
}

#kyoto {
	width: 40px;
	height: 84px;
	left: 41px;
}
#shiga {
	width: 68px;
	height: 42px;
	top: 42px;
	left: 81px;
}
#osaka {
	width: 40px;
	height: 85px;
	top: 84px;
	left: 41px;
}
#nara {
	width: 34px;
	height: 85px;
	top: 84px;
	left: 81px;
}
#mie {
	width: 34px;
	height: 85px;
	top: 84px;
	left: 115px;
}
#wakayama {
	width: 80px;
	height: 42px;
	top: 169px;
	left: 55px;
}
#hyougo {
	width: 41px;
	height: 98px;
	left: 0px;
}

/* 中国 */

#tyugoku {
	width: 121px;
	height: 98px;
	position: absolute;
	left: 139px;
	top: 213px;
}
#tyugoku div.area div {
	background-color: #ef9f27;
	color: #ffffff;
}
#tottori {
	width: 40px;
	height: 49px;
	left: 81px;
}
#okayama {
	width: 40px;
	height: 49px;
	top: 49px;
	left: 81px;
}
#shimane {
	width: 41px;
	height: 49px;
	left: 40px;
}
#hiroshima {
	width: 41px;
	height: 49px;
	top: 49px;
	left: 40px;
}
#yamaguchi {
	width: 40px;
	height: 98px;
	left: 0px;
}

/* 四国 */

#shikoku {
	width: 124px;
	height: 84px;
	position: absolute;
	left: 139px;
	top: 330px;
}
#shikoku div.area div {
	background-color: #d08f68;
	color: #ffffff;
}
#kagawa {
	width: 62px;
	height: 42px;
	right: 0px;
}
#ehime {
	width: 62px;
	height: 42px;
	left: 0px;
}
#tokushima {
	width: 62px;
	height: 42px;
	right: 0px;
	top: 42px;
}
#kouchi {
	width: 62px;
	height: 42px;
	left: 0px;
	top: 42px;
}

/* 九州・沖縄 */

#kyusyu {
	width: 122px;
	height: 247px;
	position: absolute;
	left: 0px;
	top: 225px;
}
#kyusyu div.area div {
	background-color: #ff7575;
	color: #fff;
}
#fukuoka {
	width: 40px;
	height: 50px;
	left: 81px;
	top: 0px;
}
#saga {
	width: 40px;
	height: 50px;
	left: 41px;
	top: 0px;
}
#nagasaki {
	width: 40px;
	height: 50px;
	left: 1px;
	top: 0px;
}
#oita {
	width: 40px;
	height: 50px;
	left: 81px;
	top: 50px;
}
#kumamoto {
	width: 40px;
	height: 100px;
	left: 41px;
	top: 50px;
}
#miyazaki {
	width: 40px;
	height: 50px;
	left: 81px;
	top: 100px;
}
#kagoshima {
	width: 50px;
	height: 49px;
	left: 55px;
	top: 150px;
}
#okinawa {
	width: 40px;
	height: 50px;
	left: 1px;
	top: 197px;
}


 
#japan-map div div.area div#saga{
	background-color: #ff7575!important;
	color: #fff!important;
}
#japan-map div div.area div#saga:hover{
        opacity: 1!important;
    }

#japan-map div div.area div#yamanashi,
#japan-map div div.area div#fukui {
	background-color: #4ab969!important;
}
#japan-map div div.area div#yamanashi:hover,
#japan-map div div.area div#fukui:hover{
        opacity: 1!important;
    }

	/*****レスポンシブ*****/
@media screen and (max-width: 500px) {
	#japan-map {
		display: block;
		width: 100%;
		height: auto;
	}
		#japan-map p.area-title {
		display: inline-block;
		width: 100%;
		font-size: 15px;
		text-align: center;
		margin-top: 1.5em;
		margin-bottom: 1em;
		color: #000000;
	}
	#hokkaido-touhoku, #kantou, #tyubu, #kinki, #tyugoku, #shikoku, #kyusyu {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		height: auto;
		position: static;
		margin-left: 0px;
		margin-right: 0px;
	}
	#japan-map div div.area {
		font-size: 14px;
		display: flex;
		flex-wrap: wrap;
		width: 100%;
	}
	#japan-map div div.area a {
		height: auto;
		width: 25%;
	}
	#japan-map div div.area div {
		display: block;
		border-radius: 0px;
		position: static;
		height: auto;
		font-size: 16px;
		width: 100%;
		padding: 0.5em 0.3em 0.5em 0.3em;
	}
} 
	
/* レスポンシブ max-500px */

/**/
.slide-content,
.slide-thumb,
.slide-thumb a,
.slide-thumb img
{
	display: block;
	width: 100%!important;
	max-width: 100%!important;
	height: auto;
}

img.cat_contents_visual{
	width: 100%;
	height: auto;
	display: block;
	margin-bottom: 30px;
}
.archive-description{
	margin-bottom: 60px;
	padding-bottom: 30px;
	position: relative
}
.archive-description::after{
	content: "";
	width: 30%;
	height: 1px;
	background: #999;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%)
}


.archive .posts-holder  {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch
}
.entry-content-holder{
	height: 100%
}
.archive_thumbnail > img{
	width: 100%;
	height: 200px;
	object-fit: cover
}
.cat_archive_entry_ttl{
	font-size: 18px
}
@media only screen and (min-width: 769px){
	.entry-header {
		margin-bottom: 0
	}
}

/*親テーマからの移植*/
.main-kiji .kiji-share{
	right: 16px;
}

@media (min-width:782px){
	.two-box-set .wp-block-column:nth-child(2) .is-style-titlebox-mark10, .two-box-set .wp-block-column:nth-child(2) .is-style-titlebox-mark11, .two-box-set .wp-block-column:nth-child(2) .is-style-titlebox-mark12, .two-box-set .wp-block-column:nth-child(2) .is-style-titlebox-mark13, .two-box-set .wp-block-column:nth-child(2) .is-style-titlebox-mark14, .two-box-set .wp-block-column:nth-child(2) .is-style-titlebox-mark15, .two-box-set .wp-block-column:nth-child(2) .is-style-titlebox-mark8, .two-box-set .wp-block-column:nth-child(2) .is-style-titlebox-mark9{
		height: initial;
	}
	.two-box-set .wp-block-column .sonic-box{
		height: initial;
	}
}

.tsnc-accordion{
	cursor: initial;
}
.tsnc-accordion-title{
	cursor: initial;
}

.widget ul{
	line-height: 26px;
}

.widget img{
	width: 100%;
}

#custom_html-3>div.widget-title {
	color: #3d5aaf !important
}

.review-box.has-review-align-left {	
	margin-right: initial	
}	
.review-box.has-review-align-right {	
	margin-left: initial	
}	
.review-box.has-review-align-center {	
	margin-left: initial;	
	margin-right: initial	
}



.border-radius04 {	
	border-radius: initial	
}	
.border-radius08 {	
	border-radius: initial	
}	
.border-radius16 {	
	border-radius: initial	
}	
ul.tsnc-slider {	
	display: initial;	
	flex-direction: initial;	
	margin: initial;	
	padding: initial	
}	
ul.tsnc-slider li {	
	list-style: initial	
}	
.slick-slide {	
	margin: initial	
}	
.slick-slide img {	
	margin: initial	
}	
button.slick-next.slick-arrow, button.slick-prev.slick-arrow {	
	background: initial;	
	border: initial;	
	color: initial;	
	cursor: initial;	
	font-size: initial;	
	padding: initial;	
	position: initial;	
	top: initial;	
	z-index: initial	
}	
button.slick-next.slick-arrow {	
	right: initial	
}	
button.slick-prev.slick-arrow {	
	left: initial;	
	transform: initial	
}	
button.slick-next.slick-arrow:before, button.slick-prev.slick-arrow:before {	
	color: initial;	
	content: "initial";	
	font-family: initial;	
	font-size: initial;	
	font-weight: initial;	
	opacity: initial	
}	
ul.slick-dots {	
	bottom: initial;	
	display: initial;	
	gap: initial;	
	justify-content: initial;	
	padding: initial;	
	position: initial;	
	width: initial	
}	
ul.slick-dots li button {	
	background: initial;	
	border: initial;	
	border-radius: initial;	
	color: initial;	
	cursor: initial;	
	font-size: initial;	
	height: initial;	
	line-height: initial;	
	opacity: initial;	
	padding: initial;	
	width: initial	
}	
ul.slick-dots li.slick-active button {	
	opacity: initial	
}	
.tsnc-slider.fade .slick-slide {	
	margin: initial	
}	
.tsnc-slider.fade .slick-slide img {	
	margin: initial;	
	width: initial	
}	
.tsnc-slider.center .slick-slide img {	
	height: initial;	
	opacity: initial;	
	transform: initial;	
	transition: initial;	
	width: initial	
}	
.tsnc-slider.center .slick-slide.slick-current img {	
	opacity: initial;	
	transform: initial	
}

.kiji-date{
	display: flex;
	justify-content: space-between;
	padding: 0 16px;
}

.def-mode .kiji-cat{
	left: 16px;
}

@media (min-width:1030px) {
	.kijicolumn-2 .kiji-text{
		padding: 8px 16px;
	}	
	.kijicolumn-2 .linkarea{
		padding: 4px 4px 4px;
	}
}


.main-top img {
	object-fit: cover;
}
/*cat-list並び順*/
.cat-item.cat-item-15 {
	order: 3;
}
.cat-item.cat-item-1054 {
	order: 2;
}
/*cat-list全体並び順*/
.cat-item.cat-item-26 {
	order: 2;
}
.cat-item.cat-item-14 {
	order: 3;
}
.cat-item.cat-item-21 {
	order: 4;
}
.cat-item.cat-item-20 {
	order: 5;
}
.cat-item.cat-item-22 {
	order: 6;
}
.cat-item.cat-item-11 {
	order: 7;
}
/*cat-list並び順*/
.cat-item.cat-item-74 {
	order: 1;
}
.cat-item.cat-item-42 {
	order: 3;
}
.cat-item.cat-item-59 {
	order: 4;
}
.cat-item.cat-item-34 {
	order: 5;
}
.cat-item.cat-item-38 {
	order: 6;
}
.cat-item.cat-item-58 {
	order: 7;
}
#menu-item-8624>ul {
	display: none !important;
}
#main>div.main-in.category-main-in {
	display: none;
}
/*記事-最初のタグの上下位置*/
header>div.entry-catetagbox {
	order: 3;
}
/*記事-最初の日付位置調整*/
.entry-header-item {
	justify-content: initial;
}
.entry-header-item span {
	margin-left: 0px;
}
#entry-footer {
	margin-bottom: 50px;
}
/*記事一覧タグ*/
.org_tag {
	order: 3;
	text-align: end;
	font-size: 12px;
	padding-right: 16px;
	color: #777;
}
/*記事タイトルの高さ*/
.kiji-text {
	height: 100px;
	overflow: hidden;
}
/*記事内画像サイズ*/
.entry-content img {
	max-height: 500px;
	width: 100%;
	object-fit: contain;
}
@media (max-width:1030px) {
	.side-in {
		width: 100%;
		margin-right: auto;
		margin-left: auto;
	}
	header>div.entry-catetagbox {
		display: none;
	}
}
#mobile-footer-menu-id {
	display: none;
}
.category-label {
	z-index: 1000;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #0693e3;
	color: #fff;
	padding: 3px 8px;
	margin: 5px;
	font-size: 12px;
	border-radius: 15px;
}
/*yarpp*/
.yarpp-thumbnail>img {
	width: 170px !important;
	height: auto !important;
	aspect-ratio: 300 / 200;
	object-fit: cover;
	margin: 5px auto !important;
}
.yarpp-thumbnails-horizontal .yarpp-thumbnail {
	background-color: #f2f6ff;
}
.yarpp-related .yarpp-thumbnail-title {
	font-size: 75% !important;
}
.yarpp-thumbnails-horizontal .yarpp-thumbnail-title {
	max-height: 7em !important;
}
.yarpp-thumbnails-horizontal {
	display: flex;
	justify-content: space-between;
}
.yarpp-thumbnails-horizontal .yarpp-thumbnail {
	width: 200px !important;
	height: 210px !important;
}
.yarpp-thumbnails-horizontal .yarpp-thumbnail-title {
	width: 170px !important;
}
@media (max-width:1030px) {
	.yarpp-thumbnails-horizontal {
		width: 100%;
		flex-wrap: wrap;
	}
	.yarpp-thumbnails-horizontal .yarpp-thumbnail {
		width: 47.5% !important;
	}
	.yarpp-thumbnail>img {
		width: 95% !important;
	}
	.yarpp-thumbnails-horizontal .yarpp-thumbnail-title {
		width: 95% !important;
	}
}

.main-kiji .linkarea{
	height: auto;
}

.category-list{
	list-style: none;
	display: flex;
	padding-left: 15px;
	flex-wrap: wrap;
}

.category-list li{
	margin-right: 10px;
	background-color: #EEEEEE;
	padding: 0 5px;
	border-radius: 5px;
	margin-top: 10px;
}

/*ハツレポーター一覧*/
.reporter_group_inner::before{
	display: block;
	content: '';
	width: calc(100% / 4 - 10px);
	order: 1;
}
.reporter_group_inner::after{
	content: '';
	display: block;
	width: calc(100% / 4 - 10px);
}

/*メガプルダウンメニュー*/
.sub-menu{
	display: none !important;
}

.user__area{
	margin-bottom: 0 !important;
}

.user__position{
	border-bottom: dashed #4a4a4a 1px;
	padding-bottom: 0.5em !important;
	margin-bottom: 0.5em !important;
}

.s_conts_top a:not(:nth-child(1)){
	margin-right: 15px;
}

.pf-text p:nth-child(3){
	margin-top: 15px;
}

.page_title {
	background-color: #3d5aaf;
	padding-left: 10px;
	color: #fff;
}

.page_title h2{
	margin: 0;
}

.reporter_group:not(:nth-child(1)){
	margin-top: 100px;
}

/*----------------------------------------------------------------------------------------------------------------

月間ランキング

----------------------------------------------------------------------------------------------------------------*/

.ranking_list_org{
	display: flex !important;
}

.ranking_list_org a:nth-child(1){
	width: 45%;
}

.ranking_list_org a:nth-child(2){
	font-size: 0.8em;
	margin-left: 15px;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.ranking_img_org{
	position: relative;
}

.rank{
	position: absolute;
	z-index: 3;
	color: #fff;
	background-color: #3d5aaf;
	width: 25px;
	text-align: center;
}


/*----------------------------------------------------------------------------------------------------------------

募集ページフォーム

----------------------------------------------------------------------------------------------------------------*/

.page-id-5983 .wpcf7 label{
	justify-content: space-between;
}

@media (max-width:1030px) {
	.page-id-5983 .wpcf7 label{
		display: block;
	}
}





/*----------------------------------------------------------------------------------------------------------------

サイドバー：時代の開拓者たち

----------------------------------------------------------------------------------------------------------------*/


#media_image-19 .widget-title .widget-title-in{
	background: #6b395f !important;
}

#media_image-13,
#media_image-21{
	display: none!important;
}

.nav-style-def a {
    display: flex;
    height: 100%;
    line-height: 44px;
    align-items: center;
    padding: 0 12px;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
}