@charset "utf-8";

h2.style01 {
	border-bottom: none;
}
div.category-heading {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 90px 0;
}
div.category-heading-contents {
	display: flex;
	align-items: center;
	font-weight: 600;
	color: #0052a5;
}
div.category-heading-ttl {
	font-size: 72px;
}
div.category-heading-ruby {
	font-size: 21px;
	border-bottom: 2px solid;
	padding-bottom: 0.5em;
	margin-left: 1em;
	margin-bottom: -1em;
}
#heading {
	padding-bottom: 0;
	margin-bottom: 60px;
	background-color: #f5f5f5;
}
#heading ul.breadcrumb {
	padding: 5px 0;
}
.weather .contentIn {
	max-width: 1280px;
	padding: 0 15px;
	box-sizing: border-box;
}
.weather_box {
	display: flex;
	justify-content: space-between;
}
.weather #contentsBox {
	width: 920px;
	float: none;
}
.weather .contentsMenu {
	display: flex;
	/* justify-content: space-around; */
	margin: 0 0 15px;
}
.weather .contentsMenu li {
	padding: 0.25em 0;
	/* border-radius: 100vh; */
	width: 50%;
	text-align: center;
	font-size: 14px;
}
.weather .contentsMenu .quake {
	background: #ff6600;
}
.weather .contentsMenu .typhoon {
	background: #0099ff;
}
.weather .contentsMenu a {
	color: #fff;
	display: block;
}
#sokuho_area {
	padding: 0 0 15px;
}
#sokuho_area dl {
	margin: 0 0 15px;
	border: 2px solid #0052A5;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#sokuho_area dl div.left {
	display: flex;
	align-items: stretch;
}
#sokuho_area dt {
	background: #0052A5;
	color: #fff;
	font-size: 16px;
	padding: 0.5em 0;
	font-weight: 500;
	min-width: 18em;
	display: flex;
	align-items: center;
	justify-content: center;
}
#sokuho_area div.dtl {
	/*
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	*/
	padding: 0.25em 1em 0.25em 0;
	font-size: 14px;
}
#sokuho_area dd {
	padding: 0.25em 0 0.25em 1em;
	font-weight: 500;
}
#sokuho_area dl div.right {
	margin: 0 1em;
	min-width: 8em;
	text-align: center;
}
#sokuho_area dl div.right a {
	/* background: #0078f2; */
	background: #e0162b;
	color: #fff;
	display: block;
	border-radius: 100vh;
	padding: 0.5em 0;
}
/*
#sokuho_area dl div.right a[href="#disaster"] {
	background: #e0162b;
}
*/
.weather_sec {
	margin: 0 0 30px;
	border-bottom: 2px dashed #969696;
}
#alert,
#disaster {
	padding: 15px 0 0;
}
.weather section {
	margin: 0 0 30px;
}
.weather .btn_gp {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.weather .btn_link a {
	display: block;
	/* background: #0052A5; */
	color: #0052A5;
	width: 60%;
	margin: 0.5em auto 0;
	font-size: 18px;
	padding: 0.5em 0;
	border-radius: 100vh;
	text-align: center;
	border: 2px solid #0052A5;
	font-weight: 500;
	position: relative;
}
.weather .btn_link a::after {
	content: "";
	width: 0.75em;
	height: 0.75em;
	border: 2px solid;
	border-color: #0052A5 #0052A5 transparent transparent;
	transform: rotate(45deg);
	display: inline-block;
	position: absolute;
	right: 1em;
	top: 30%;
}
.weather .btn_gp .btn_link {
	width: 49%;
}
.weather .btn_gp .btn_link:nth-of-type(n+3) {
	margin: 1em 0 0;
}
.weather .btn_gp .btn_link a {
	width: 95%;
}
.weather .btn_link.back a::after {
	transform: rotate(225deg);
	left: 1em;
}
.weather_news_list {
	margin: 0 0 30px;
}
.weather_news_item {
	margin: 0 0 1em;
	padding: 0.5em 1em 1em;
	border-bottom: 1px solid #969696;
}
.weather_news_noitem {
	font-size: 21px;
	padding: 0 1em 1em;
	font-weight: 500;
	color: #313540;
}
.weather_news_item:first-child {
	padding: 0 1em 1em;
}
.weather_news_item a {
  display: flex;
	align-items: center;
	justify-content: space-between;
	color: #000;
}
.weather_news_item a:hover {
	text-decoration: none;
}
.weather_news_item a div {
	width: 67%;
}
.weather_news_title {
	font-size: 21px;
	font-weight: 500;
	color: #313540;
}
.weather_news_pubDate {
	text-align: right;
	font-size: 16px;
	margin: 0.5em 0 0;
	color: #b4b4b4;
}
.weather_news_thumbnail {
  width: 30%;
}

/*===============
 * タブCSS *
===============*/
input[type="radio"] {
	display: none;
}
.tab_area {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 15px;
}
.weather_box .weather_ttl {
	margin: 0 0 15px;
}
.weather_box h3 {
	font-size: 24px;
	border-left: 5px solid ;
	border-image: linear-gradient(180deg, rgba(153, 221, 51, 1) 2%, rgba(0, 204, 204, 1) 18%, rgba(0, 153, 255, 1) 34%, rgba(102, 102, 255, 1) 50%, rgba(204, 0, 255, 1) 66%, rgba(255, 51, 153, 1) 82%, rgba(255, 170, 51, 1) 98%);
	border-image-slice: 1;
	padding: 0.25em 0 0.25em 0.5em;
	font-weight: 500;
}
.tab_flex {
	display: flex;
}
.tab_area label {
	display: block;
	width: 6em;
	border: 1px solid #969696;
	text-align: center;
	font-size: 16px;
	padding: 0.25em 0;
	cursor: pointer;
	transition: ease 0.2s opacity;
}
.tab_area label:nth-of-type(1) {
	border-radius: 50vh 0 0 50vh;
}
.tab_area label:nth-of-type(2) {
	border-radius: 0 50vh 50vh 0;
}
.tab_area label:hover{
	opacity: 0.8;
}
.panel_area {
	background: #fff;
}
.tab_panel {
	width: 100%;
	padding: 0;
	display: none;
}
#tab1:checked ~ .tab_area .tab1_label { background: #0052A5; border: 1px solid #0052A5; color: #fff; }
#tab1:checked ~ .panel_area #panel1 { display: block; }
#tab2:checked ~ .tab_area .tab2_label { background: #0052A5; border: 1px solid #0052A5; color: #fff; }
#tab2:checked ~ .panel_area #panel2 { display: block; }
#tab3:checked ~ .tab_area .tab3_label { background: #0052A5; border: 1px solid #0052A5; color: #fff; }
#tab3:checked ~ .panel_area #panel3 { display: block; }
#tab4:checked ~ .tab_area .tab4_label { background: #0052A5; border: 1px solid #0052A5; color: #fff; }
#tab4:checked ~ .panel_area #panel4 { display: block; }

#contentsBox ul.col2,
/* #contentsBox ul.col3, */
#contentsBox ul.col4 {
	display: flex;
	justify-content: space-between;
}
#contentsBox ul.col2 li {
	width: 49%;
	position: relative;
	margin: 0 0 1.5%;
}
#contentsBox ul.col2 li:hover,
#contentsBox ul.col4 li:hover {
	opacity: 0.7;
}
#contentsBox ul.col2 li a:hover,
#contentsBox ul.col4 li a:hover {
	opacity: unset;
}
#contentsBox ul.col4 li {
	width: 24%;
	position: relative;
	margin: 0 0 1.25%;
}
#contentsBox ul.col2 li span {
	position: absolute;
	display: inline-block;
	font-size: 14px;
	color: #fff;
	background: rgba(0, 82, 165,0.9);
	font-weight: 500;
	border-radius: 15px 0 0 0;
	padding: 0.5em;
}
#contentsBox ul.col2 li img {
	border-radius: 15px;
}
#contentsBox ul.col4 li span {
	font-size: 12px;
}
a[href="/weather/data/mas00055_l.jpg"] {
	position: absolute;
	width: 100%;
	height: 100%;
}

/********************
* サイドバー
********************/
.weather #sideBox {
	float: none;
}
.box_inner {
  padding: 1em;
  background: #f2f2f2;
}
/* .live_box {
	margin: 15px 0 0;
} */
.live_box h2 {
	font-size: 16px;
	margin: 0 0 0.25em;
	font-weight: 500;
}
.live_box div {
	width: 100%;
  aspect-ratio: 16 / 9;
}
.live_box div iframe {
  width: 100%;
  height: 100%;
}
.box_inner li {
  margin: 0 0 1em;
}
.box_inner li:last-child {
  margin: 0;
}
.news_box {
	margin: 15px 0;
}
.news_box h2 {
  font-size: 1rem;
  margin: 0 0 1em;
}
.news_pubDate {
	margin: 0 0 0.25em;
	position: relative;
	display: flex;
	align-items: center;
}
.triangle {
	width: 0;
	height: 0;
	border-left: 0.75em solid #0052A5;
	border-top: 0.5em solid transparent;
	border-bottom: 0.5em solid transparent;
	margin: 0 0.5em 0 0;
}
.news_item a {
  display: flex;
	/* align-items: center; */
	align-items: flex-start;
	color: #000;
}
.news_item a:hover {
	text-decoration: none;
}
.news_title {
  width: 62%;
  margin: 0 3% 0 0;
  line-height: 1.25em;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	overflow: hidden;
}
.news_thumbnail {
  width: 35%;
}

/********************
* エリア別
********************/
#area .tab_area label {
	border: 1px solid #969696;
}
#area .tab_area label:nth-of-type(n+2) {
	border-left: none;
}
#area .tab_area label:nth-of-type(2) {
	border-radius: 0;
}
#area .tab_area label:nth-of-type(4) {
	border-radius: 0 50vh 50vh 0;
}
#area .area_48h {
	margin: 30px 0 0;
}
#area h3 span {
	font-size: 16px;
	font-weight: 400;
}
.area_48h_line {
	margin: 15px 0 30px;
}
.area_48h_name {
	background: #0053A5;
	color: #fff;
	font-size: 18px;
	padding: 0.25em 0 0.25em 0.5em;
	/* border-radius: 0.75em 0.75em 0 0; */
}
#area dl {
	display: flex;
	background: #fff;
}
#area dt {
	text-align: center;
	font-size: 16px;
	border-left: 1px solid;
	border-right: 1px solid;
	border-bottom: 1px solid;
	padding: 0.25em 0;
}
#area dl div:nth-of-type(n+2) dt {
	border-left: none;
}
#area dl div {
	width: 50%;
}
/*
#area dl div:last-child {
	width: 6%;
}
*/
#area dd {
	display: flex;
	border-left: 1px solid;
	border-right: 1px solid;
	border-bottom: 1px solid;
}
#area dl div:nth-of-type(n+2) dd {
	border-left: none;
}
#area dd ul {
	width: 12.5%;
	text-align: center;
}
#area dl div:last-child ul {
	width: 100%;
}
#area dd ul li {
	border-bottom: 1px solid;
	border-right: 1px dashed;
	margin: 0;
	padding: 0.25em 0;
}
#area dd ul li:last-child {
	border-bottom: none;
}
#area dl div ul:last-child li {
	border-right: 1px none;
}
.area_48h_table {
	background: #fff;
	border-left: 1px solid;
	border-right: 1px solid;
	border-bottom: 1px solid;
}
.area_48h_table table {
	width: 100%;
}
.area_48h_table td {
	text-align: center;
	padding: 0.25em 0.5em;
	border-right: 1px solid #7388c3;
	vertical-align: middle;
	font-weight: 500;
}
.area_48h_table tr td:first-child {
	width: 3em;
	background: #dde0f0;
	padding: 0.25em 0;
	border-right: 1px solid;
}
.area_48h_table td[colspan="8"],
.area_48h_table td[colspan="4"] {
	text-align: center;
	font-size: 16px;
	border-right: 1px solid;
	border-bottom: 1px solid;
	padding: 0.5em 0;
	font-weight: 500;
}
.area_48h_table td[colspan="8"]:last-child,
.area_48h_table td[colspan="4"]:last-child {
	border-right: none;
}
.area_48h_table td.old {
	background: #ccc;
}
.area_48h_table td img {
	min-width: 40px;
}
.area_48h_table td.old img {
	filter: grayscale(75%);
}
.area_48h_table.ud06 td:nth-of-type(9) {
	border-right: 1px solid;
}
.area_48h_table.ud17 td:nth-of-type(5),
.area_48h_table.ud17 td:nth-of-type(13) {
	border-right: 1px solid;
}
.area_48h_table td:nth-of-type(17) {
	border-right: none;
}

@media screen and (max-width: 899px) {
	/********************
	* index / 共通
	********************/
	div.category-heading {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px 0 30px;
	}
	div.category-heading-contents {
		display: block;
    text-align: center;
	}
	div.category-heading-ttl {
    font-size: 48px;
	}
	div.category-heading-ruby {
    font-size: 16px;
    border-bottom: 2px solid;
    padding-bottom: 0.25em;
    margin-left: 0;
		margin-bottom: 0;
		display: inline-block;
	}
	#heading {
    margin-bottom: 15px;
	}
	#sokuho_area dl {
		display: block;
		position: relative;
	}
	#sokuho_area dl div.left {
		display: block;
	}
	#sokuho_area dt {
    display: inline-block;
    font-size: 14px;
    padding: 0.25em 0.5em 0.5em 0.5em;
    min-width: auto;
	}
	#sokuho_area div.dtl {
		padding: 0.25em 0.5em 0.25em 0;
	}
	#sokuho_area dd {
		/* display: inline-flex; */
		padding: 0.25em 0 0.25em 0.5em;
	}
	#sokuho_area dl div.right {
		/*
		margin: 0 auto 1em;
    min-width: auto;
    width: 50%;
		*/
		margin: 0;
    min-width: auto;
    position: absolute;
    top: 0.5em;
    right: 0.5em;
	}
	#sokuho_area dl div.right a {
		padding: 0.25em 1em;
	}

	.weather_box {
    display: block;
	}
	.weather #contentsBox {
    width: auto;
	}
	.weather_sec {
		margin: 0 0 15px;
	}
	.tab_area {
		display: block;
	}
	.tab_area label {
		font-size: 14px;
	}
	.weather_box h3 {
		font-size: 18px;
	}
	.tab_flex {
		width: 100%;
    margin: 15px 0 0;
	}
	.tab_area label {
		width: 25%;
	}
	#contentsBox ul.col2,
	#contentsBox ul.col4 {
		/* display: block; */
	}
	#contentsBox ul.col2 li {
		/* width: auto; */
		margin: 0 0 0.5em;
	}
	#contentsBox ul.col2 li span {
		font-size: 10px;
		border-radius: 10px 0 0 0;
	}
	.weather_news_list {
		margin: 0 0 15px;
	}
	.weather .btn_gp .btn_link a {
		width: 90%;
		font-size: 12px;
	}
	#contentsBox ul.col2 li img {
		border-radius: 10px;
	}
	#cboxCurrent {
		display: none !important;
	}

	/********************
	* サイドバー
	********************/
	.bnr_box {
		text-align: center;
	}

	.weather_news_item a div {
		width: 51%;
	}

	.weather_news_title {
		font-size: 14px;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		overflow: hidden;
	}

	.weather_news_pubDate {
		font-size: 12px;
		margin: 0;
	}

	.weather_news_thumbnail {
		width: 45%;
	}

	.weather .btn_link a {
		width: 75%;
		font-size: 12px;
	}

	.news_pubDate {
		margin: 0 0 0.5em;
	}

	/********************
	* エリア別
	********************/
	#area h3 span {
		font-size: 12px;
		display: block;
	}
	.area_48h_table {
		overflow-x: scroll;
	}
	.area_48h_table table {
		border-collapse: collapse;
		white-space: nowrap;
	}
	.area_48h_table tr td:first-child {
		position: sticky;
    top: 0;
    left: 0;
		z-index: 1;
		padding: 0.25em 0.5em;
	}
	/*
	.area_48h_table td.old {
		display: none;
	}
	*/
	.scroll-hint-icon {
		height: 90px !important;
	}
}