@charset "utf-8";
/*
Theme Name: jf-obama
Theme URI: 
Author: SYSTEMRUN
Author URI: https://systemrun.co.jp/
Description: 
Version: 1.0
*/

/* CSSページ内検索 */
/* ---------------------
  - *reset
  - *common
  - *utility
	- *container
	- *button
  - *ヘッダー
	- *pc header
	- *pc header menu
	- *pc header dropdown menu
	- *sp header
	- *sp header menu
	- *sp header dropdown menu
	- *sp header hum
  - *フッター
  - *コンテンツ
	- *title
	- *layout
  - *トップ
	- *スライドショー
	- *水揚げ情報
	- *お知らせ 
	- *小浜市漁協について
	- *バナーリンクエリア
  - *下層
	- *sitebody
	- *pagetitle
	- *breadcrumbs
	- *pagination
	- *table
	- *小浜市漁協について 下層
	- *特産品紹介 下層
	- *小浜市の水産業 下層
		- *エリア紹介ページ
	- *水揚げ情報・お知らせ 下層
		- *アーカイブ＆シングル（2カラムページ）
		- *アーカイブページ
		- *アーカイブページ（お知らせ）
		- *アーカイブページ（水揚げ情報）
		- *シングルページ
		- *組合員向けログインフォーム
		- *組合員向けログインフォーム（プラグイン）
	- *遊漁船 下層
	- *お問い合わせ 下層
		- *小浜市漁業協同組合
		- *支所一覧
--------------------- */

/*========================================
  *reset
========================================*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, input, select, button, textarea, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	color: inherit;
	line-height: inherit;
	font-size: 100%;
	vertical-align: baseline;
	word-break: break-all;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, small, main {
	display: block;
}
body {
	width: 100%;
	height: 100%;
	-webkit-text-size-adjust: 100%;
	font-weight: 500;
}
ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote::before, blockquote::after, q::before, q::after {
	content: '';
	content: none;
}
strong, b {
	font-weight: 700;
}
i, em {
	font-style: italic;
}
del {
	text-decoration: line-through;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
img {
	vertical-align: top;
	max-width: 100%;
	height: auto;
}
span, a, ruby {
	font-size: 100%;
}
a, a:hover {
	text-decoration: none;
}
*, *::before, *::after {
	box-sizing: border-box;
}
a, a:focus, *:focus {
	outline: none;
}
a {
	word-wrap: break-word;
	text-decoration: none;
	transition: all .3s;
	color: inherit;
}
select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	cursor: pointer;
}
select::-ms-expand {
    display: none;
}
/*100vh指定時のiOSアドレスバー対応*/
html {
	height: -webkit-fill-available;
}
body {
	min-height: 100vh;
	min-height: -webkit-fill-available;
}
body.home .sitebody {
	margin-bottom: 140px;
}
body.nohome .main_container {
	margin: 40px 0 140px;
}
@media screen and (min-width: 961px){
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}
@media screen and (max-width: 960px){
	body.home .sitebody {
		margin-bottom: 100px;
	}
	body.nohome .main_container {
		margin-bottom: 120px;
	}
}
/*============================
 *common
============================*/
:root {
	--main-bg-color: #397bcd;
}
body {
	font-family: "Noto Sans JP",sans-serif;
	color: #000;
	font-size: 18px;
	line-height: 1.8;
}
h1, h2, h3, h4, h5, h6 {
	font-weight: 700;
}
h2 {
	font-size: 1.75rem;
    letter-spacing: 0.075rem;
}
h2 span.en {
	display: block;
    color: #008bc7;
    font-size: 17.5px;
	line-height: 1.25;
}
time {
	font-size: 90%;
	font-weight: 700;
    color: #0c2559;
	letter-spacing: 0.02rem;
}
ul li a {
	text-decoration: underline;
}
a[target="_blank"]::before {
	width: 18px;
    height: 18px;
    vertical-align: -4px;
    content: "";
    background: url(images/icon_ftlink3.png) no-repeat 0 0;
	background-size: contain;
    display: inline-block;
    margin-right: 0.75em;
	color: red!important;
}
div.pdfemb-viewer, .wp-block-file__embed {
    margin-bottom: 1em!important;
}
.wp-block-file a {
    font-size: 110%;
	margin-bottom: 1em;
}
.wp-block-file a.wp-block-file__button.wp-element-button {
    padding: 0.5em 1em;
    display: inline-block;
}
@media screen and (min-width: 961px){
	figure > a:hover {
		opacity: 0.8;
	}	
	ul li a:hover {
		text-decoration: none!important;
	}
}
@media screen and (max-width: 960px){
	body {
		font-size: 16.5px;
	}
	h2 {
		font-size: 1.55rem;
		text-align: center;
		margin-bottom: 0;
	}
	 h2 span.en {
		font-size: 15.5px;
	}
	.main_container ul li a:hover {
		text-decoration: underline!important;
	}
}
/*============================
 *utility
============================*/
/*container*/
.container {
	max-width: 1200px;
	width: 90%;
	margin: auto;
	padding: 0;
}
.sp, .sp_br {
	display: none;
}
.pc_br {
	display: block;
}
.main_container {
	overflow: hidden;
}
@media screen and (max-width: 960px) {
	.pc, .pc_br {
		display: none;
	}
	.sp {
		display: block;
	}
}
@media screen and (max-width: 680px) {
	.sp_br {
		display: block;
	}
}
/* button */
.wp-block-button a[target="_blank"]::before {
    width: 18px;
    height: 18px;
    vertical-align: -3px;
    content: "";
    background: url(images/icon_ftlink2.png) no-repeat 0 0;
	background-size: contain;
    display: inline-block;
    margin-right: 0.75em;
}
.wp-block-buttons {
	display: inline-block!important;
}
.wp-block-buttons > .wp-block-button {
	margin-bottom: 1em;
}
.wp-block-buttons > .wp-block-button:last-child {
	margin-bottom: 0;
}
.wp-block-button a {
	margin-top: 1em;
}
.wp-block-button a[target="_blank"]::before {
    background: url(images/icon_ftlink.png) no-repeat 0 0;
	background-size: contain;
}
.btn_box a::after, .wp-block-button a::after, a.btn_box::after {
    border-color: #fff;
    content: "";
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(45deg);
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
}
.btn_box a, a.btn_box, .wp-block-button a, .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background) {
    text-align: left;
    text-decoration: none;
    padding: 0.9em 1.2em;
    padding-right: 45px !important;
    position: relative;
    box-shadow: 0 5px 10px rgba(0,0,0,0.05);
	border-radius: 0;
	max-width: fit-content;
	display: inline-block;
	border: solid 1px #008bc7;
	letter-spacing: 0.075em;
}
.wp-block-button a, .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background) {
	background-color: #008bc7;
	color: #fff;
	font-size: 1rem;
	text-decoration: none;
}
.wp-block-button a::after, .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background)::after {
	border-color: #fff;
}
@media screen and (min-width: 961px) {
	.flexbox {
		display: flex;
	}
	.btn_box a:hover, a.btn_box:hover, .wp-block-button a:hover {
		color: #fff;
		background-color: #008bc7;
	}
	.btn_box a:hover::after, a.btn_box:hover::after, .wp-block-button a:hover::after {
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
	}
	.wp-block-button a:hover::after, .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background):hover::after {
		border-color: #008bc7;
	}
	.wp-block-button a:hover, .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background):hover {
		background-color: #fff;
		color: #008bc7;
	}
	.wp-block-button a[target="_blank"]:hover::before {
		background: url(images/icon_ftlink2.png) no-repeat 0 0;
		background-size: contain;
	}
}
/*============================
 *ヘッダー
============================*/
header {
	border-top: 10px solid #008bc7;
}
.header_container {
	border-bottom: 1px solid #008bc7;
}
.header_container > div.container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 15px 0;
}
.header_hum {
	display: none;
}
.header_logo img {
	width: auto;
}
.hd_telbox p {
	font-size: 15.5px;
	text-align: center;
	color: #0c2559;
	font-weight: 700;
	margin-top: 1.5em;
}
.hd_telbox p a {
	color: #395aa7;
	font-size: 1.85rem;
	line-height: 1;
	letter-spacing: 0.1rem;
}
.hd_telbox p span {
	padding-left: 0.5rem;
}
.hd_telbox p a::before {
	background-size: contain;
	width: 25px;
	height: 32px;
	vertical-align: -9px;
	content: "";
	background: url("images/icon_hdtel.png") no-repeat 0 0;
	display: inline-block;
	margin-right: 3px;
}
header ul li a, footer ul li a {
	text-decoration: none;
}
@media screen and (min-width: 961px) {
	/*pc header*/
	.header_logo:hover, .ft_logo:hover {
		opacity: 0.7;
	}
	.hd_telbox p {
		text-align: right;
		margin-top: 0;
	}
	/*pc header menu*/
	.header_menu_list {
		display: flex;
		align-items: center;
		justify-content: space-between;
		height: 4rem;
		font-size: 20px;
		font-weight: 700;
	}
	.header_menu_list > li {
		position: relative;
	}
	.header_menu_list > li:nth-last-child(-n+3) {
		display: none;
	}
	.header_menu_list > li > a {
		display: block;
		text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
	}
	.header_menu_list > li::before {
		content: "";
		width: 100%;
		height: 10px;
		background: #aae4ff;
		position: absolute;
		left: 0;
		bottom: 0;
		z-index: -1;
	}
	.header_menu_list > li:not([class*="current"])::before {
		transition: all .3s;
		transform: scale(0, 1);
	}
	.header_menu_list > li:not([class*="current"]):hover::before {
		transform: scale(1, 1);
	}
	/*pc header dropdown menu*/
	.header_menu_list > li > ul {
		position: absolute;
		top: 100%;
		left: 50%;
		transform: translateX(-50%);
		z-index: 9999;
		padding-top: 14px;
		transition: .3s;
	}
	.header_menu_list > li > ul::before, .header_menu_list > li > ul::after {
		content: "";
		position: absolute;
		top: 5px;
		left: 50%;
		transform: translateX(-50%);
		width: 30px;
		height: 10px;
		border: 15px solid transparent;
		border-top: none;
		border-bottom: 10px solid #008bc7;
		z-index: 9999;
	}
	.header_menu_list .sub-menu {
		width: 250px;
		visibility: hidden;
		opacity: 0;
	}
	.header_menu_list .sub-menu li {
		background: #008bc7;
		box-shadow: 0 3px 5px rgba(0,0,0,0.2);
		position: relative;
	}
	.header_menu_list li:hover > .sub-menu {
		visibility: visible;
		opacity: 1;
	}
	.header_menu_list .sub-menu li+li {
		border-top: 1px solid #fff;
	}
	.header_menu_list .sub-menu a {
		display: block;
		text-align: center;
		padding: 0.8em 0.6em;
		color: #fff;
		background: #008bc7;
	}
	.header_menu_list .sub-menu a:hover {
		background: #395aa7;
	}
	.header_menu_list .sub-menu ul {
		position: absolute;
		top: 0;
		right: 100%;
	}
	.header_menu_list .sub-menu ul a {
		background: rgba(0,0,0,0.4);
	}
	.header_menu_list .sub-menu ul a:hover {
		background: rgba(0,0,0,0.5);
	}
}
@media screen and (max-width: 960px) {
	/*sp header*/
	.header {
		position: relative;
		top: 0;
		left: 0;
		z-index: 9999;
		width: 100%;
		background: #fff;
	}
	.header_container > div.container {
		padding: 0;
		height: 60px;
	}
	/*body {
		padding-top: 60px;
	}*/
	/*sp header menu*/
	.header_menu {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		width: 100%;
		z-index: 9999;
		background: #fff;
		color: #000;
		padding: 30px 20px;
		box-shadow: 0 5px 10px rgba(0,0,0,0.2);
	}
	.header_menu_list li {
		border-top: 1px dashed #395aa7;
	}
	.header_menu_list > li:last-child {
		border-bottom: 1px dashed #395aa7;
	}
	.header_menu_list a {
		display: block;
		padding: 10px 0.5em;
	}
	/*sp header dropdown menu*/
	.header_menu_list .sub-menu {
		display: none;
	}
	.header_menu_list > li > ul > li > a {
		padding-left: 1.5em;
	}
	.header_menu_list > li > ul > li > ul > li > a {
		padding-left: 2.4em;
	}
	.header_menu_list .menu-item-has-children {
		position: relative;
	}
	.header_menu_list .menu-item-has-children > a {
		padding-right: 40px;
	}
	.header_menu_list .menu-item-has-children .trigger {
		content: "";
		width: 30px;
		height: 30px;
		position: absolute;
		top: 11px;
		right: 5px;
	}
	.header_menu_list .menu-item-has-children .trigger::before {
		content: "";
		background: url("images/accordion_btn_open.svg") no-repeat center center;
		background-size: 25px;
		background-color: #395aa7;
		position: absolute;
		inset: 0;
	}
	.header_menu_list .menu-item-has-children .trigger.active::before  {
		background-image: url("images/accordion_btn_close.svg");
	}
	/*sp header hum*/
	.header_hum {
		display: block;
		width: 50px;
		height: 50px;
		position: absolute;
		top: 5px;
		right: 5px;
		cursor: pointer;
	}
	.header_hum span {
		display: block;
		width: 24px;
		height: 2px;
		background: #395aa7;
		position: absolute;
		top: 7px;
		right: 13px;
		transition: all .4s;
	}
	.header_hum span:nth-child(2) {
		top: 14px;
	}
	.header_hum span:nth-child(3) {
		top: 21px;
	}
	.header_hum.active span:nth-child(1) {
		transform: translateY(7px) rotate(315deg);
	}
	.header_hum.active span:nth-child(2) {
		opacity: 0;
	}
	.header_hum.active span:nth-child(3) {
		transform: translateY(-7px) rotate(-315deg);
	}
	.header_hum p {
		font-size: 13px;
		text-align: center;
		margin-top: 28px;
		color: #395aa7;
	}
}
@media screen and (max-width: 520px) {
	.header_logo img {
		max-width: 260px;
	}
}
/*============================
 *フッター
============================*/
.footer_illust { 
	width: 100%;
    height: 130px;
    bottom: 0;
    background: url(images/ft_back_top.png) no-repeat center bottom;
    background-position: center bottom;
    background-size: unset;
}
.ft_top {
	padding: 20px 0 40px;
    text-align: center;
    background: url(images/ft_back.png) no-repeat center top;
    width: 100%;
    background-size: cover;
}
.ft_top ul > li > a, .ft_top h2, .ft_top h2 span.en {
	color: #fff;
	text-decoration: none;
}
.ft_top ul {
	justify-content: space-between;
	margin-top: 1em;
}
.ft_top ul > li {
	position: relative;
	padding-left: 30px;
}
.ft_top ul > li > a::before {
	width: 18px;
    height: 18px;
    vertical-align: -5px;
    content: "";
    background: url(images/icon_ftlink.png) no-repeat 0 0;
	background-size: contain;
    display: inline-block;
    margin-right: 0;
    position: absolute;
    top: 9px;
    left: 0;
}
.ft_bottom {
	background: url("images/ft_bottomback.jpg");
	background-size: cover;
	background-position: 50%;
	position: relative;
}
.ft_bottom .flexbox {
	padding: 3em 0;
	align-items: center;
}
.ft_bottom .ft_logo {
	margin-bottom: 2.4em;
}
.ft_bottom .ft_left {
	width: 50%;
}
.ft_bottom .ft_menu {
	width: 60%;
	padding-left: 1em;
}
.ft_bottom ul.footer_menu_list {
	display: flex;
    flex-wrap: wrap;
	justify-content: flex-start;
}
.ft_bottom .ft_menu ul > li {
	width: calc(100% / 3 - 20px);
	position: relative;
    padding-left: 25px;
    margin-top: 15px;
	margin-left: 20px;
}
.ft_bottom .ft_menu ul > li > a::before {
	content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(45deg);
    position: absolute;
    top: 11px;
    left: 0;
}
.ft_copyright {
	background-color: #008bc7;
    text-align: center;
    padding: 13px 10px;
    color: #fff;
    font-size: 1rem;
    letter-spacing: 0.06rem;
}
.pagetop {
	display: block;
	position: fixed;
	bottom: 20px!important;
	right: 20px!important;
	z-index: 9998;
}
.pagetop a {
	position: relative;
	display: block;
	width: 45px;
	height: 45px;
	text-decoration: none;
	background: #000;
	border: solid 2px #fff;
}
.pagetop a::before {
	content: "";
	width: 12px;
	height: 12px;
	margin: auto;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(-45deg);
	position: absolute;
	top: 18%;
	left: 0;
	right: 0;
	bottom: 0;
}
@media screen and (min-width: 961px) {
	.ft_top ul > li > a:hover {
		text-decoration: underline!important;
	}
	.ft_top ul > li > a:hover::before {
		opacity: 0.6;
	}
	.ft_bottom .ft_menu ul > li > a:hover, .ft_bottom .ft_menu ul > li > a:hover::before {
		color: #008bc7;
		border-color: #008bc7;
	}
	.pagetop a:hover {
		background: #395aa7;
	}
}
@media screen and (max-width: 1500px) {
	.ft_bottom .ft_left {
		width: 55%;
	}
}
@media screen and (max-width: 960px) {
	.ft_top ul {
		display: flex;
		flex-wrap: wrap;
		text-align: left;
		max-width: 520px;
		margin: 0 auto;
		justify-content: flex-start;
		margin-top: 1em;
		font-size: 90%;
	}
	.ft_top ul li {
		width: calc(100% / 3 - 20px);
		margin-top: 0.5em;
		margin-left: 20px;
	}
	.ft_top ul > li > a::before {
		top: 6px;
	}
	.ft_bottom .ft_left {
		margin: 0 auto;
		text-align: center;
		width: 100%;
	}
	.ft_bottom .ft_logo {
		margin-bottom: 1.5em;
	}
	.ft_bottom .ft_logo img {
		margin: 0 auto;
	}
	.ft_bottom .ft_menu {
		margin: 0 auto;
		width: 100%;
		max-width: 500px;
		margin-top: 1em;
	}
	.ft_bottom .ft_menu ul > li {
		width: calc(100% / 2 - 50px);
		margin-left: 50px;
		margin-top: 0.5em;
	}
	.pagetop {
		bottom: 10px!important;
		right: 10px!important;
	}
	.pagetop a {
		width: 40px;
		height: 40px;
	}
}
@media screen and (max-width: 520px) {
	.ft_bottom .ft_left p, .ft_bottom ul.footer_menu_list {
		font-size: 90%;
	}
	.ft_top ul {
		max-width: 350px;
		justify-content: space-between;
	}
	.ft_top ul li {
		width: calc(100% / 2 - 15px);
		margin-left: 15px;
	}
	.ft_bottom .ft_menu ul > li > a::before {
		top: 8px;
	}
	.ft_bottom .ft_menu ul {
		justify-content: space-between;
		max-width: 350px;
		margin: 0 auto;
	}
	.ft_bottom .ft_menu ul > li {
		width:  calc(100% / 2 - 15px);
		margin-left: 15px;
	}
}
/*============================
 *コンテンツ
============================*/
/*title*/
.pagecontent h2, .pagecontent h3, .pagecontent h4, .pagecontent h5, .pagecontent h6 {
	margin-bottom: 20px;
	clear: both;
	position: relative;
	letter-spacing: 0.05rem;
}
.pagecontent h1, .pagecontent h2 {
	clear: both;
    text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
    padding: 0 0 6px;
    margin: 80px 0px 1.5em;
    text-align: left;
    position: relative;
	z-index: 1;
	padding-left: 20px;
	letter-spacing: 0.04em;
	font-size: 1.75rem;
}
.pagecontent h1::after, .pagecontent h2::after {
	content: "";
    width: 100%;
    height: 0.5em;
    background-color: #aae4ff;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0.2em;
    z-index: -1;
}
.pagecontent h1, .pagecontent > .wp-block-group:first-child h2, .pagecontent > .spe_group:first-child h2, .pagecontent > h2.wp-block-heading:first-child {
	margin-top: 0;
}
.pagecontent h3 {
    font-size: 1.25em;
    font-weight: 700;
    position: relative;
    padding: 5px 0 5px 30px;
    background: linear-gradient(90deg, #f1f1f4, #fcfcfd);
    margin-bottom: 7px;
    margin: 2.4em 0px 1em;
}
.pagecontent h3::before {
    content: "";
    background-color: #7fc5e3;
    display: block;
    width: 10px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.pagecontent h4 {
	font-size: 1.2em;
	position: relative;
	padding-left: 35px;
	margin-bottom: 0.2em;
	margin: 2.4em 0px 1em;
}
.pagecontent h4::before {
	content: "";
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: solid 3px #008bc7;
    display: inline-block;
    position: absolute;
    top: 11px;
    left: 0;
}
.pagecontent h5 {
	font-size: 1.15em;
	color: #0c2559;
    border-left: 6px solid #0c2559;
    padding-left: 15px;
}
.pagecontent h6 {
	font-size: 18px;
	margin-bottom: 0.5em;
}
@media screen and (max-width: 960px) {
	.pagecontent h1, .pagecontent h2 {
		font-size: 1.55rem;
	}
	.pagecontent h1 {
		margin: 0 0 1em;
	}
	.pagecontent h2 {
		margin: 2.4em 0 1em;
	}
}
/*============================
 *トップ
============================*/
.mainvisual {
	position: relative;
}
.ltg-slide-text-set {
	position: absolute;
}
.slick-initialized .slick-slide img {
	width: 100%;
	height: 90vh;
	object-fit: cover;
}
.top_mainimg {
	width: 100%;
	position: relative;
	height: 90vh;
}
.top_mainimg .main_wave {
    width: 100%;
    position: absolute;
    bottom: 0;
    height: 100%;
    background: url(images/top_infoback1.png) no-repeat center top;
    background-position: center bottom;
	z-index: 99;
}
/*スライドショー*/
.slick01 img{
	width: 100%;
	height: 90vh;
	object-fit: cover;
}
.slick01 li{
	position: relative;
}
.slick01 .caption {
	position: absolute;
    top: calc(90vh - 175px);
    right: 20px;
    background: rgba(46, 46, 46, 0.7);
    padding: 5px 15px;
    color: #fff;
    letter-spacing: 0.1rem;
}
@media screen and (max-width: 1200px) {
	.slick01 img{
		height: 700px;
		width: auto;
	}
}
@media screen and (max-width: 960px) {
	.top_mainimg, .slick-initialized .slick-slide img, .slick01 img {
		height: 70vh;
	}
	.slick01 .caption {
		top: calc(72vh - 175px);
	}
}
@media screen and (max-width: 520px) {
	.top_mainimg, .slick-initialized .slick-slide img, .slick01 img {
		height: 75vh;
	}
	.slick01 .caption {
		top: calc(75vh - 120px);
		font-size: 87%;
	}
}
/*水揚げ情報*/
.top_info {
	background: url("images/top_infoback2.png") no-repeat center top;
    width: 100%;
    background-size: cover;
	padding: 60px 0 80px;
}
.top_infoarea {
	background-color: #fff;
    padding: 2.5em 4em;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}
.top_infoarea .info_archive {
	margin: 1em 0 2em;
}
.top_infoarea .info_archive a {
	align-items: center;
}
.top_infoarea .info_archive .rbox {
	border-top: 1px solid #dcdcdc;
	border-bottom: 1px solid #dcdcdc;
	display: grid;
	padding: 1.2em 0;
	align-items: center;
    width: 100%;
}
.top_infoarea .info_archive .rbox > p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
	padding-top: 0.4rem;
}
.top_infoarea h2 {
	text-align: center;
}
.top_infoarea .btn_box {
	text-align: center;
}
@media screen and (min-width: 961px) {
	.top_infoarea .info_archive > a:hover {
		background-color: #ededed;
	}
	.top_infoarea .info_archive > a:hover img {
		transition: .3s;
		filter: brightness(90%);
	}
	.top_infoarea .info_archive a > div:first-child {
		max-width: 225px;
		margin-right: 6%;
	}
	.top_infoarea .info_archive a > div:first-child img {
		aspect-ratio: 250 / 170;
		object-fit: cover;
	}
}
@media screen and (max-width: 960px) {
	.top_infoarea {
		padding: 2em;
	}
	.info_archive img {
		margin: 0 auto;
		display: block;
		margin-bottom: 2em;
	}
	.top_infoarea .info_archive .rbox {
		margin-left: 0;
		padding: 1em 0;
	}
	.top_infoarea .info_archive .rbox time {
		padding-bottom: 0.5em;
	}
	.top_infoarea .info_archive .rbox > p {
		margin-top: 0;
	}
}
@media screen and (max-width: 520px) {
	.top_infoarea {
		padding: 2em 1em;
	}
}
/*お知らせ*/
.top_news {
    margin-top: 80px;
}
.top_news h2 {
	writing-mode: vertical-rl;
	text-orientation: upright;
	margin: 0 auto;
	margin-bottom: 1.25em;
}
.top_news .news_titlebtn {
	width: 100%;
	max-width: 300px;
	display: flex;
    flex-direction: column;
    align-items: center;
}
.top_news .flexbox {
	align-items: center;
}
.news_archive {
	width: 100%;
	margin-left: 4%;
}
.news_archive section > a {
	border-top: solid 1px #dcdcdc;
	padding: 1rem 0;
	display: block;
}
.news_archive section > a h3 {
	font-weight: 600;
	flex: 1;
}
.news_archive section > a:last-child {
	border-bottom: solid 1px #dcdcdc;
}
.news_archive .post_category {
	display: flex;
	align-items: baseline;
}
.news_archive .post_category.pc {
	padding-top: 0.4rem;
}
.news_archive .post_category p {
	font-size: 13px;
    color: #2b8f3a;
    border: solid 2px #2b8f3a;
    padding: 3px 15px;
	margin-right: 1.5em;
    display: inline-block;
	font-weight: 700;
}
.btn_box a, a.btn_box {
	background-color: #008bc7;
	color: #fff;
}
.btn_box a::after, a.btn_box::after {
	border-color: #fff;
}
@media screen and (min-width: 961px) {
	.news_archive section > a:hover {
		background-color: #ededed;
	}
	.btn_box a:hover, a.btn_box:hover {
		background-color: #fff;
		color: #008bc7;
	}
	.btn_box a:hover::after, a.btn_box:hover::after {
		border-color: #008bc7;
	}
	.news_archive .post_category.sp p {
		display: none;
	}
}
@media screen and (max-width: 960px) {
	.top_news h2 {
		writing-mode: inherit;
		margin-bottom: 1em;
	}
	.top_news .container {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.top_news .news_archive {
		order: 1;
		margin-left: 0;
	}
	.top_news .news_archive section {
		margin: 1em 0 2em;
	}
	.top_news .news_titlebtn {
		order: 2;
	}
	.top_infoarea .btn_box, .top_news .btn_box {
		text-align: center;
	}
	.news_archive .post_category p {
		margin-right: 1em;
	}
	.news_archive .post_category.sp p {
		display: block;
		margin-left: 1em;
	}
	.news_archive .post_category.pc p {
		display: none;
	}
}
/*小浜市漁協について*/
.top_about {
	background: url("images/top_aboutback1.png") no-repeat left top,
				url("images/top_aboutback2.png") no-repeat right bottom;
	padding-top: 80px;
	margin-bottom: 80px;
}
.top_about h3 {
	font-size: 1.35rem;
    color: #0c2559;
    padding: 1em 0;
}
section.top_about_above {
	display: flex;
	justify-content: space-between;
	max-width: 1200px;
	margin: auto;
	flex-direction: row-reverse;
	align-items: center;
	column-gap: 1em;
}
section.top_about_below {
	display: flex;
	justify-content: space-between;
	max-width: 1200px;
	margin: auto;
	align-items: flex-end;
	margin-top: -12%;
}
.top_about_belowright {
	max-width: 450px;
}
.top_about_column {
	width: 57%;
}
.top_about_right {
	flex: 1;
	margin-right: calc(50% - 40vw);
	max-width: 600px;
}
.top_about_left {
	flex: 1;
    margin-left: calc(50% - 50vw);
    margin-right: 4%;
}
@media screen and (max-width: 1800px) {
	.top_about_right {
		margin-right: calc(50% - 45vw);
	}
}
@media screen and (max-width: 1500px) {
	.top_about {
		background-size: 50%;
	}
	section.top_about_below {
		margin-top: -4%;
	}	
	.top_about_right {
		margin-right: calc(50% - 47vw);
	}
}
@media screen and (max-width: 1200px) {
	.top_about_belowright {
		max-width: 42%;
	}
	section.top_about_below {
		margin-top: 0;
	}
}
@media screen and (max-width: 1100px) {
	.top_about_left {
		margin-top: 4%;
	}
}
@media screen and (max-width: 960px) {
	section.top_about_above h2 {
		text-align: left;
	}
}
@media screen and (max-width: 680px) {
	.top_about {
		margin: 40px 0;
	}
	section.top_about_above {
		flex-wrap: wrap;
	}
	section.top_about_above h2 {
		text-align: center;
	}
	section.top_about_above .top_about_column {
		width: 100%;
	}
	section.top_about_above .top_about_column.top_about_right {
		order: 2;
		max-width: 300px;
		margin: 0 auto;
		margin-top: 1em;
	}
	section.top_about_below {
		display: block;
	}
	section.top_about_below .top_about_left {
		width: 100%;
		margin: 2em 0;
	}
	section.top_about_below .top_about_belowright {
		width: 100%;
		max-width: 100%;
	}
	section.top_about_below .top_about_belowright img {
		width: 100%;
	}
}
@media screen and (max-width: 520px) {
	section.top_about_above h2 {
		text-align: left;
	}
	section.top_about_above h2 .sp_br {
		display: none;
	}
}
/*バナーリンクエリア*/
.top_bannerarea {
	padding: 170px 0 160px;
	background: url("images/top_bannerback1.png") no-repeat center top,
				url("images/top_bannerback2.png") no-repeat center bottom,
				url("images/top_bannerback.jpg") no-repeat center bottom;
	background-size: auto, auto, cover;
}
.top_bannerarea figure {
	overflow: hidden;
}
.top_bannerarea figure img {
	width: 100%;
	height: 100%;
	transition: .3s;
}
.top_bannerarea > div {
    display: flex;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
}
.top_bannerarea section {
	width: calc((100% - 40px) / 3);
	margin: 10px 0 10px 20px;
	display: flex;
}
.top_bannerarea section > a {
    display: block;
    width: 100%;
    background-color: #fff;
    overflow: hidden;
    color: inherit;
    text-decoration: none;
    position: relative;
}
.top_bannerarea section:nth-child(3n+1) {
	margin-left: 0;
}
.top_bannerarea h2 {
	text-align: center;
    padding: 1em 0.5em;
}
.top_bannerarea h2::after {
	content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(45deg);
    margin-left: 0.25em;
	vertical-align: 2px;
}
@media screen and (min-width: 961px) {
	.top_bannerarea a:hover figure img {
		transform: scale(1.1);
	}
	.top_bannerarea section > a:hover {
		filter: brightness(90%);
	}
}
@media screen and (max-width: 1200px) {
	.top_bannerarea {
	    padding: 140px 0 120px;
	}
	.top_bannerarea h2 {
		font-size: 1.5rem;
	}
	.top_bannerarea h2 span.en {
		font-size: 15px;
	}
	.top_bannerarea h2::after {
		width: 13px;
		height: 13px;
	}
}
@media screen and (max-width: 960px) {
	.top_bannerarea h2 span.ja {
		font-size: 90%;
	}
	.top_bannerarea h2::after {
		width: 12px;
		height: 12px;
		vertical-align: 1px;
	}
}
@media screen and (max-width: 680px) {
	.top_bannerarea > div {
		display: block;
	}
	.top_bannerarea section {
		width: 100%;
		margin: 2em 0 0 0;
	}
	.top_bannerarea section:first-child {
		margin-top: 0;
	}
}
/*============================
 *下層
============================*/
/*sitebody*/
body.nohome .sitebody ul li {
    line-height: 2;
}
body.nohome .sitebody ul li {
    position: relative;
    padding-left: 20px;
	margin-bottom: 0.2em;
}
body.nohome .sitebody ul li::before {
	content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #395aa7;
    display: inline-block;
    position: absolute;
    top: 17px;
    left: 0;
}
.page_catchinfo ul.header_menu_list > li:nth-child(4)::before {
	transform: inherit;
}
.page_catchinfo ul.header_menu_list > li:nth-child(5)::before, .page_specialty  ul.header_menu_list > li:nth-child(5)::before {
	transform: scale(0, 1)!important;
}
.page_catchinfo ul.header_menu_list > li:nth-child(5):hover::before, .page_specialty  ul.header_menu_list > li:nth-child(5):hover::before {
	transition: all .3s!important;
	transform: scale(1, 1)!important;
}
.page_news .twoclm_main h2 {
	font-size: inherit;
}
.editor p {
    margin-bottom: 1em;
}
@media screen and (min-width: 961px) {
	.page_catchinfo  ul.header_menu_list > li:nth-child(5):hover::before {
		transform: scale(1, 1);
	}
}
@media screen and (max-width: 960px) {
	.pagetitle {
		order: 1;
	}
	.main_container {
		order: 2;
	}
	.breadcrumbs {
		order: 3;
	}
	body.nohome .sitebody ul li::before {
		top: 14px;
	}
}
/*pagetitle*/
.pagetitle {
	background-size: cover;
	text-align: center;
	position: relative;
	height:100%;
	color: #fff;
	letter-spacing: 0.1rem;
}
.pagetitle > .container {
	font-size: 1.5rem;
	padding: 0.75em 0 5.5em;
	display: block;
}
.pagetitle > .container .ja {
	font-size: 2rem;
}
body.nohome .pagetitle .main_wave {
    width: 100%;
    position: absolute;
    bottom: 0;
    height: 100%;
    background: url(images/nohome_titleback.png) no-repeat center top;
    background-position: center bottom;
    z-index: 99;
}
.breadcrumbs {
	position: relative;
}
.breadcrumbs::before {
	width: 100%;
    position: absolute;
	left: 0;
    bottom: 0;
    height: 100%;
    background: url(images/top_infoback1.png) no-repeat center bottom;
}
body.nohome .pagetitle {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.nohome .pagetitle {
	background-image: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url(images/pagetitle01.jpg) ;
}
.page_specialty .pagetitle {
	background-image: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url(images/pagetitle02.jpg) ;
}
.page_fisheries-industry .pagetitle, .page_area01  .pagetitle, .page_area02  .pagetitle, .page_area03  .pagetitle {
	background-image: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url(images/pagetitle03.jpg) ;
}
.page_catchinfo .pagetitle {
	background-image: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url(images/pagetitle06.jpg) ;
}
.page_news .pagetitle {
	background-image: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url(images/pagetitle07.jpg) ;
}
.page_fishing-boat .pagetitle {
	background-image: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url(images/pagetitle04.jpg) ;
}
.page_oyster-farmer .pagetitle, .page_oyster-store .pagetitle {
	background-image: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url(images/pagetitle08.jpg) ;
}
.page_inquiry  .pagetitle {
	background-image: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url(images/pagetitle05.jpg) ;
}
.pagetitle {
    text-align: center;
    font-size: 35px;
    font-weight: 700;
    padding: 1.2em 0;
    background: #f5f5f5;
}
.pagetitle time {
	font-size: 15px;
	display: block;
}
.pagetitle time + h1 {
	margin: 0.3em 0;
}
@media screen and (max-width: 960px) {
	.pagetitle {
		font-size: 25px;
	}
	.pagetitle > .container {
		padding: 0 0 3em;
		font-size: 0.9rem;
	}
	.pagetitle > .container .ja {
		font-size: 1.5rem;
	}
	body.nohome .pagetitle .main_wave {
		height: 72px;
		background-size: cover;
	}
	.page_catchinfo .pagecontent .wp-block-image img, .page_news .pagecontent .wp-block-image img {
		margin: 0 auto;
		display: block;
	}
}
/*breadcrumbs*/
.breadcrumbs p {
	margin: 3px 0;
	margin: 0.5rem 0;
	font-size: 15.5px;
	color: #0c2559;
	font-weight: 600;
}
.breadcrumbs p > span > span:first-child > a {
	margin-left: 0;
}
.breadcrumbs a, .breadcrumb_last {
	margin-left: 0.4em;
}
.breadcrumb_last {
	color: #000;
}
.breadcrumbs span:not(.breadcrumb_last) {
	margin-right: 0.4em;
}
@media screen and (min-width: 961px) {
	.breadcrumbs a:hover {
		text-decoration: underline;
	}
}
@media screen and (max-width: 960px) {
	.breadcrumbs .container {
		justify-content: flex-start;
	}
}
/*pagination*/
.pagination {
	margin-top: 30px;
}
.pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
}
.pagination .page-numbers {
	padding: 0.5em 0.8em;
	border: 1px solid;
	margin: 5px;
}
.pagination .current {
	background: #ededed;
}
@media screen and (min-width: 961px) {
	.pagination a:hover {
		background: #008bc7;
		border-color: transparent;
		color: #fff;
	}
}
/*table*/
.fish_table {
	background-color: #fff;
	font-size: 90%;
	width: 100%;
}
.fish_table tr th, .fish_table tr td {
	text-align: left;
	border: none;
	border-top: solid 5px #7fc5e3;
    width: 30%!important;
	vertical-align: middle;
	padding: 1em;
	padding-left: 50px;
}
.fish_table tr th:first-child::before {
	width: 25px;
    height: 16px;
    vertical-align: -3px;
    content: "";
    background: url(images/icon_fish.png) no-repeat 0 0;
    display: inline-block;
    margin-right: 0.75em;
}
.fish_table tr td {
	border-top: solid 5px #e0e0e0;
	padding: 1em;
	padding-left: 50px;
	width: 70%!important;
}
.fish_table tr:last-child {
	border-bottom: solid 5px #e0e0e0;
}
.fish_table tr.fish_table_spe td {
    width: 100%;
    padding-right: 0;
}
.fish_table tr.fish_table_spe td > a.btn_box {
    margin: 0 0.5em 0.5em 0;
	font-size: 90%;
}
@media screen and (max-width: 960px) {
	.fish_table tr th, .fish_table tr td {
		width: 100%!important;
		display: block;
	}
	.fish_table tr th {
		padding-left: 1em;
	}
}
@media screen and (max-width: 520px) {
	.fish_table tr th:first-child::before {
		height: 15px;
	}
}
/*============================
 *小浜市漁協について 下層
============================*/
.attempt_group h3:first-child {
	margin-top: 0;
}
.greeting_group {
	position: relative;
}
.greeting_group::before {
    position: absolute;
    top: 0;
    left: -15%;
    width: 100%;
    height: 100%;
    vertical-align: -9px;
    content: "";
    background: url(images/fish_illust.png) no-repeat 0 0;
    display: inline-block;
    margin-right: 3px;
	z-index: -2;
}
.greeting_group .wp-block-image .alignright {
	margin: 0.5rem 0 0.5em 3em;
}
.greeting_group .wp-element-caption {
	font-size: 20px;
    text-align: right;
	line-height: 1.75;
    margin-top: 1em;
	margin-bottom: 0;
}
.greeting_group .wp-element-caption span.reader_name {
	font-size: 30px;
    display: flex;
    justify-content: right;
	align-items: center;
	font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}
.greeting_group .wp-element-caption span.reader_name small {
    font-size: 18.5px;
    margin-right: 1em;
	font-family: "Noto Sans JP",sans-serif;
}
.overview_group {
	margin-left: calc(50% - 50vw + 10px);
	margin-right: calc(50% - 50vw + 10px);
	background: url(images/wave_back.jpg) no-repeat;
	background-size: cover;
	margin-top: 80px;
}
.overview_group h2 {
	padding-top: 1.5em;
}
.overview_group .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table {
	background-color: #fff;
	font-size: 90%;
}
.overview_group .wp-block-group p:last-child {
	text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
	text-align: right;
	font-size: 85%;
	padding: 0.25em 0 3em;
}
.overview_group .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table td, .overview_group .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table th {
	border: none;
	border-bottom: solid 5px #e0e0e0;
	padding: 0.75em 2em;
}
.overview_group .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr th {
	background-color: #008bc7;
	color: #fff;
	text-align: left;
}
.figure_group {
	background-color: #f4f4f4;
	padding: 2em 4em 3em;
	margin-top: 80px;
}
.figure_group figure, .figure_group figure img {
	width: 100%;
}
.figure_group h2 {
	margin-top: 0;
}
@media screen and (min-width: 961px) {
	.overview_group .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr th {
		width: 20%;
	}
	.greeting_group {
		display: grid;
	}
}
@media screen and (max-width: 960px) {
	.greeting_group::before {
		top: -5%;
		max-width: 200px;
		background-size: contain;
	}
	.greeting_group .wp-block-image {
		display: inline-block;
		margin: 0 auto;
		width: 100%;
	}
	.greeting_group .wp-block-image .alignright {
		margin: 0 auto;
		float: inherit;
	}
	.overview_group .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table tr, .overview_group .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table td, .overview_group .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table tr th {
		display: block;
		border: none;
		width: 100%;
	}
	.figure_group {
		padding: 1em 2em 2em;
	}
	.greeting_group .wp-element-caption {
		font-size: 17px;
		text-align: center;
		margin: 1em 0 0.5em;
	}
	.greeting_group .wp-element-caption span.reader_name {
		justify-content: center;
		font-size: 27px;
	}
	.greeting_group .wp-element-caption span.reader_name small {
		font-size: 17px;
		margin-right: 0.75rem;
	}
}
@media screen and (max-width: 520px) {
	.greeting_group::before {
		top: -3%;
	}
	.figure_group {
		padding: 1em 1em 2em;
	}
}
/*============================
 *特産品紹介 下層
============================*/
.spe_group {
    position: relative;
	margin-top: 100px;
}
.page_specialty h2:first-child, .spe_area .spe_group:first-child {
	margin-top: 0;
}
.spe_group h3 {
    position: absolute;
    top: 0;
    left: 0;
	width: 100%;
    max-width: 350px;
}
.spe_group:nth-child(even) h3 {
    right: 0;
	left: auto;
}
.spe_group .spe_img {
	display: flex;
    margin-right: calc(50% - 50vw);
}
.spe_group .spe_img img {
	width: 780px;
    height: 400px;
    object-fit: cover;
	overflow: hidden;
}
.spe_group .spe_img > div:nth-child(2) img {
    margin-top: calc(-120 / 1230 * 100%);
}
.spe_group:nth-child(even) .spe_img {
	margin-right: auto;
    margin-left: calc(50% - 50vw);
	justify-content: flex-end;
}
.spe_group:nth-child(even) .spe_img > div:first-child {
    order: 2;
}
.spe_group h4 {
	font-size: 1.15em;
    margin: 0 0 0.75em 0;
	padding-left: 0;
    font-weight: 500;
    letter-spacing: 0.05rem;
}
.spe_group h4::before {
	display: none;
}
.spe_group .spe_table {
	overflow: hidden;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background: url(images/wave_back.jpg) no-repeat;
    background-size: cover;
	margin-top: calc(-120 / 1230 * 100%);
}
.spe_group .spe_table div.spe_table_con {
	padding: 2.2em 4em;
    padding-top: calc(160 / 1230 * 100%);
    background-color: #fff;
    margin-bottom: 2.8em;
}
.spe_group .spe_table div.spe_table_con .flexbox {
	margin-top: 1.5em;
	padding-top: 1em;
	border-top: 1px solid #dcdcdc;
	align-items: center;
	justify-content: flex-end;
	font-size: 90%;
}
.spe_group .spe_table div.spe_table_con .flexbox p {
	margin-right: 1em;
	width: 100%;
	max-width: max-content;
}
.spe_group .spe_table div.spe_table_con .flexbox p::before {
	width: 25px;
    height: 16px;
    vertical-align: -3px;
    content: "";
    background: url(images/icon_fish.png) no-repeat 0 0;
    display: inline-block;
    margin-right: 0.75em;
}
.spe_group .spe_table div.spe_table_con .btn_box a {
	margin: 0 0.5em 0.5em 0;
}
.spe_group .spe_table div.spe_table_con .btn_box a:last-child {
	margin: 0;
}
.page_specialty .btn_box a {
	font-size: 90%;
    padding: 0.6em 1.5em;
}
.spe_group.spe_radio {
	margin-top: 60px;
}
.spe_group.spe_radio h4 {
	margin-top: 0.75em;
}
.spe_group.spe_radio .flexbox {
	display: none;
}
.spe_group.spe_radio h3, .spe_group.spe_radio:nth-child(even) h3 {
	right: auto;
	text-align: left;
}
.spe_group.spe_radio .spe_table {
	background: none;
}
.spe_group.spe_radio .spe_table div.spe_table_con {
    padding-top: calc(100 / 1230 * 100%);
	padding-bottom: 0;
	margin-bottom: 0;
}
.spe_group.spe_radio .btn_box, .spe_group.spe_radio img {
    display: none;
}
.spe_btns {
	justify-content: center;
    column-gap: 2em;
    margin-top: 1.5em;
}
.spe_btns .wp-block-button a {
	width: 100%;
	max-width: 100%;
}
#wakasagaki .btn_box {
	display: block;
    margin-top: 1em;
    text-align: left;
}
@media screen and (min-width: 961px) {
	#title_spe {
		margin-bottom: 0.5em;
	}
	.spe_group {
		padding-top: 100px;
	}
	.pagecontent > .spe_group:first-child h3, .spe_group h3 {
		margin-top: 20px;
	}
}
@media screen and (max-width: 1400px) {
	.spe_group .spe_img img {
		height: 300px;
	}
}
@media screen and (max-width: 960px) {
	.spe_group, .spe_group.spe_radio {
		margin-top: 60px;
	}
	.spe_group:first-child h3 {
		margin-top: 0;
	}
	.spe_area .spe_group:first-child {
		padding-top: 0;
	}
	.spe_group h3 {
		position: inherit;
		margin: 2.4em auto 1em;
		max-width: 100%;
	}
	.spe_group .spe_img, .spe_group:nth-child(even) .spe_img {
		display: block;
		margin: 0 auto;
	}
	.spe_group .spe_img img {
		width: 100%;
		height: auto;
	}
	.spe_group .spe_img > div:nth-child(2) img {
		margin-top: 1em;
	}
	.spe_group .spe_table div.spe_table_con {
		padding: 1.4em 2em;
    	padding-top: calc(170 / 1230 * 100%);
	}
	.spe_group .spe_table div.spe_table_con .flexbox p {
		margin: 0 auto;
		margin-bottom: 0.75em;
	}
	.spe_group .spe_table div.spe_table_con .btn_box, .spe_group .spe_table div.spe_table_con .flexbox p {
		text-align: center;
	}
}
@media screen and (max-width: 520px) {
	.spe_group .spe_table div.spe_table_con {
    	padding-top: calc(200 / 1230 * 100%);
		padding-right: 1em;
		padding-left: 1em;
	}
	.spe_group.spe_radio .spe_table p {
		padding-right: 0;
		padding-left: 0;
	}
}
/*============================
 *小浜市の水産業 下層
============================*/
.page_areas table tr td {
	padding: 1em;
	padding-left: 50px;
}
.industry_clm {
	justify-content: space-between;
}
.industry_clm > div.wp-block-column:first-child {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
.industry_areamap {
	margin-right: 1%!important;
	align-items: center;
	display: grid;
}
.industry_textbox p, .industry_textbox ul {
    margin: 1em 0 2.4em;
}
body.nohome .sitebody .industry_textbox ul li {
    line-height: inherit;
}
body.nohome .sitebody .industry_textbox ul li::before {
	top: 15px;
}
.page_areas .industry_areamap {
	display: block;
}
.industry_shadow {
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
    padding: 1.5em 2em;
	background: #fff;
	margin-bottom: 1.75em;
}
.industry_shadow p {
    font-size: 90%;
}
.industry_shadow h3 {
    background: none;
    margin: 0;
    text-align: left;
    font-size: 120%;
    padding: 0 0 0.75rem;
    padding-left: 45px;
    position: relative;
    counter-increment: title;
}
.industry_shadow h3::before {
    position: absolute;
    top: 5px;
    left: 0;
    content: counter(title);
    width: 28px;
    height: 28px;
    line-height: 26px;
    background-color: #395aa7;
    border-radius: 100%;
    color: #fff;
    font-weight: bold;
    text-align: center;
}
.industry_shadow.industry_uchi h3::before {
    content: "2";
}
.industry_shadow.industry_taga h3::before {
    content: "3";
}
.industry_shadow h3::after {
    content: "";
    display: inline-block;
    width: 13px;
    height: 13px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(45deg);
    margin-left: 10px;
    vertical-align: 1px;
}
/*エリア紹介ページ*/
.page_area01 .pagetitle h1, .page_area02 .pagetitle h1, .page_area03 .pagetitle h1 {
	display: none;
}
h3.area_h3title {
	margin-top: 0;
}
.page_areas .wp-block-button a {
	margin: 0 1em 0.5em 0;
}
.area_hotel h2:first-child {
	margin-bottom: 1em;
}
figure.industry_inn.wp-block-gallery.has-nested-images {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.wp-block-gallery.has-nested-images figure.wp-block-image img {
	max-height: 175px;
}
.industry_inn.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image) {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
	max-width: calc(100% / 4 - 22px);
    margin-top: 1.5em;
	margin-right: 20px;
}
.industry_inn.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-child(-n+4) {
	margin-top: 0;
}
.industry_inn.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-child(4n) {
	margin-right: 0;
}
.industry_inn.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
    background: #fff;
	color: #000;
	padding: 1em;
	font-size: inherit;
	position: inherit;
	margin-top: 0;
	align-items: center;
    display: grid;
}
.industry_inn a[target="_blank"]::before {
	background: none;
    height: 0;
}
.industry_bottombtn.wp-block-buttons {
	width: 100%;
	text-align: center;
}
.industry_bottombtn .wp-block-button {
	margin-right: 2em;
}
.industry_bottombtn .wp-block-button a {
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
    background: #fff;
    border-radius: 0;
    color: #000;
    border: none;
    font-size: 1.1em;
	font-weight: 700;
	margin-right: 0;
	padding: 1.5em 3em 1.4em;
    padding-right: 80px !important;
}
.industry_bottombtn .wp-block-button a::after {
    border-color: #000;
	width: 13px;
    height: 13px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
	right: 30px;
}
@media screen and (min-width: 961px) {
	.page_areas table tr td {
		border-top: solid 5px #e0e0e0;
	}
	.industry_bottombtn .wp-block-button a:hover {
		background-color: #e0e0e0;
	}
	.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a:hover {
		filter: brightness(90%);
		transition: all .3s;
	}
	.industry_shadow:hover {
		transition: .3s;
		background: #e0e0e0;
	}
}
@media screen and (min-width: 1801px) {
	.page_areas .industry_areamap {
		margin-left: -20%!important;
	}
}
@media screen and (max-width: 1200px) {
	body .is-layout-flex.industry_clm {
		display: block;
	}
	body .is-layout-flex .industry_areamap {
		margin: 0 auto!important;
    	margin-bottom: 2em!important;
	}
	.industry_shadow {
		margin-bottom: 1.6em;
	}
	.industry_areamap img {
		margin: 0 auto;
		width: 100%;
		max-width: 600px;
    	display: block;
	}
	body .is-layout-flex > .industry_textbox.industry_textbox {
		display: inline-flex;
		column-gap: 2em;
		margin-bottom: 2.4em;
	}
	.industry_textbox figure, .industry_textbox p, .industry_textbox ul {
		margin: 0;
		width: 50%;
	}
	.wp-block-gallery.has-nested-images figure.wp-block-image img {
		max-height: 130px;
	}
}
@media screen and (max-width: 960px) {
	body .is-layout-flex > .industry_textbox.industry_textbox {
		display: block;
	}
	.industry_textbox figure, .industry_textbox p, body .is-layout-flex > .industry_textbox.industry_textbox img, .industry_textbox ul {
		width: 100%;
	}
	.industry_textbox p, .industry_textbox ul {
		margin-top: 1em;
	}
	body.nohome .sitebody .industry_textbox ul li::before {
		top: 13px;
	}
	.industry_bottombtn .wp-block-button {
		margin-right: 0;
		display: block;
	}
	.industry_inn.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image) {
		max-width: calc(100% / 3 - 18px);
	}
	.industry_inn.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-child(3n) {
		margin-right: 0;
	}
	.industry_inn.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-child(-n+3) {
		margin-top: 0;
	}
	.industry_inn.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-child(4n) {
		margin-top: 1.5em;
		margin-right: 20px;
	}
	.industry_inn.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
		text-align: left;
	}
	.page_areas table tr td {
		padding: 1em;
	}
}
@media screen and (max-width: 600px) {
	figure.industry_inn.wp-block-gallery.has-nested-images {
		justify-content: space-between;
	}
	.industry_inn.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image) {
		max-width: calc(100% / 2 - 10px);
		margin-right: 10px;
	}
	.industry_inn.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-child(3n) {
		margin-right: 0;
		margin-top: 1.5em;
	}
	.industry_inn.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-child(2n) {
		margin-right: 0;
	}
}
@media screen and (max-width: 520px) {
	.industry_shadow {
		padding: 1em 1em 1.2em;
	}
	.industry_shadow h3 {
		font-size: 110%;
		padding-left: 35px;
	}
	.industry_shadow h3::before {
		width: 23px;
    	height: 23px;
		font-size: 90%;
		line-height: 22px;
	}
	.industry_shadow h3::after {
		width: 10px;
   		height: 10px;
		margin-left: 5px;
	}
	.industry_bottombtn.wp-block-buttons {
		text-align: left;
	}
	.industry_bottombtn .wp-block-button a {
		padding-right: 2em;
		padding-left: 2em;
		margin-right: 0;
	}
	.wp-block-gallery.has-nested-images figure.wp-block-image img {
		max-height: 100px;
	}
}
/*============================
 *水揚げ情報・お知らせ 下層
============================*/
/*アーカイブ＆シングル（2カラムページ）*/
.twoclm {
	display: flex;
	flex-wrap: wrap;
}
.twoclm_main {
	width: calc(100% - 200px);
	padding-right: 8%;
}
.twoclm_side {
	width: 200px;
}
.sidemenu {
	margin-bottom: 60px;
}
.sidemenu_title {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	border-top: 4px solid #7cc5dc;
	border-bottom: 4px solid #7cc5dc;
	margin-bottom: 20px;
}
.sidemenu select {
	width: 100%;
	background: url("images/select_arrow.png") no-repeat right 8px center #f1f1f1;
	border: 1px solid #686868;
	border-radius: 3px;
	font-size: 90%;
	padding: 0.5em;
}
.sidemenu ul {
	margin-left: 10px;
}
.single_title, h1.archive_subtitle {
	clear: both;
    font-size: 1.55em;
    text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
    padding: 0 0 6px;
    text-align: left;
    position: relative;
    z-index: 1;
    padding-left: 20px;
    letter-spacing: 0.04em;
	margin: 0 0 1em;
}
.archive_subtitle::after, .single_title::after {
    content: "";
    width: 100%;
    height: 0.5em;
    background-color: #aae4ff;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0.2em;
    z-index: -1;
}
.single_container {
	margin-top: 40px;
}
@media screen and (min-width: 961px) {
	.sidemenu a:hover {
		text-decoration: underline;
	}
}
@media screen and (max-width: 960px) {
	.twoclm_main {
		width: 100%;
		padding-right: 0;
		margin-bottom: 3em;
	}
	.twoclm_side {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		background: #f1f1f1;
		padding: 30px 2% 0;
	}
	.sidemenu {
		width: 44%;
		min-width: 250px;
		margin: 0 3% 30px;
	}
	.sidemenu_title {
		font-size: 18px !important;
	}
	.sidemenu select {
		background-color: #fff;
	}
}
@media screen and (min-width: 675px) {
	.twoclm_side {
		justify-content: flex-start;
	}
}
/*アーカイブページ*/
.page_news .main_container, .page_catchinfo .main_container {
	margin-top: 0;
}
.archive_container {
	margin-top: 10px !important;
}
@media screen and (max-width: 960px) {
	.archive_container {
		margin-top: 20px !important;
	}
}
/*アーカイブページ（お知らせ）*/
.nohome .news_archive {
	margin-left: 0;
}
@media screen and (max-width: 960px) {
	.nohome .news_archive .post_title {
		font-size: 100% !important;
	}
}
/*アーカイブページ（水揚げ情報）*/
.nohome .info_archive a {
	width: 100%;
	display: flex;
	align-items: center;
	transition: all .3s;
}
.nohome .info_archive section {
	border-bottom: 1px solid #dcdcdc;
	padding: 20px 0;
}
.nohome .info_archive section:first-child {
	padding-top: 0;
}
.nohome .info_archive .thumb {
	width: 30%;
}
.nohome .info_archive .thumb div {
	aspect-ratio: 250 / 170;
	background: url("images/eye_noimage.jpg") no-repeat;
	background-size: cover;
}
.nohome .info_archive .thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	margin-bottom: 0;
}
.nohome .info_archive .rbox {
	flex: 1;
	padding: 15px 3% 12px 6%;
}
.nohome .info_archive .post_title {
    font-size: 90% !important;
    font-weight: 700;
    color: #0c2559;
    letter-spacing: 0.02rem;
	text-align: left;
	margin-bottom: 0.5em;
}
@media screen and (min-width: 961px) {
	.nohome .info_archive a:hover {
		background: #ededed;
	}
}
@media screen and (max-width: 960px) {
	.nohome .info_archive .thumb {
		width: 40%;
	}
	.nohome .info_archive .rbox {
		flex: 1;
		padding-right: 0;
	}
}
@media screen and (max-width: 520px) {
	.nohome .info_archive a {
		display: block;
	}
	.nohome .info_archive .thumb {
		width: 100%;
	}
	.nohome .info_archive .rbox {
		padding: 1.5em 10px 0;
	}
}
/*シングルページ*/
.single_head {
	width: 100%;
}
.single_data {
	margin-top: 10px;
	width: 100%;
	display: flex;
	align-items: center;
	margin-bottom: 1em;
}
.single_data > *:not(:last-child) {
	margin-right: 15px;
}
.single_data .cate a {
	display: block;
	font-size: 13px;
	color: #2b8f3a !important;
	text-decoration: none !important;
	border: solid 2px #2b8f3a;
	padding: 3px 15px;
	font-weight: 700;
	transition: all .1s;
}
.single_thumb, .page_catchinfo .single_container figure , .page_news .single_container figure {
	text-align: center;
	margin-bottom: 2em;
}
.page_catchinfo .single_container p {
	margin-bottom: 2em;
}
.single_thumb img, .page_catchinfo .single_container img , .page_news .single_container img {
	max-width: none;
	width: 100%;
}
.single_foot {
    text-align: center;
    margin-top: 2em;
}
.single_foot .btn_box a {
    font-size: 15px;
    padding: 0.6em 1.5em;
}
@media screen and (min-width: 961px) {
	.single_data .cate a:hover {
		background: #2b8f3a;
		color: #fff !important;
	}
}
/*組合員向けログインフォーム*/
.loginform {
	background: #f1f1f1;
	padding: 30px 5% 40px;
	text-align: center;
}
.loginform table {
	width: 100%;
	max-width: 500px;
	margin: 20px auto;
}
.loginform th {
	vertical-align: middle;
	width: 6em;
	text-align: left;
}
.loginform td {
	vertical-align: middle;
	padding: 7px 0;
}
.loginform input {
	width: 100%;
	border-radius: 3px;
	border: 1px solid #ccc;
	box-shadow: 0 3px 3px #f1f1f1 inset;
	padding: 0.2em 0.6em;
}
.loginform button {
	background: #395aa7;
	color: #fff;
	border-radius: 3px;
	padding: 0.4em 1em 0.5em;
	cursor: pointer;
}
/*組合員向けログインフォーム（プラグイン）*/
.acpwd-container {
	background: #f1f1f1;
	padding: 30px 5% 40px;
}
.acpwd-form {
	margin-top: 1.2em;
}
.acpwd-form input {
	border-radius: 3px;
	border: 1px solid #ccc;
	box-shadow: 0 3px 3px #f1f1f1 inset;
	padding: 0.2em 0.6em;
}
.acpwd-form input[type="submit"] {
	background: #395aa7;
	color: #fff;
	border: none;
	box-shadow: none;
	cursor: pointer;
}
@media screen and (max-width: 520px) {
	.acpwd-form {
		display: flex;
	}
	.acpwd-form input:not([type="submit"]) {
		width: 100%;
	}
}
/*============================
 *遊漁船 下層
============================*/
.page_fishing-boat .overview_group, .page_oyster-farmer .overview_group, .page_oyster-store .overview_group {
	background: none!important;
	margin-top: 40px!important;
    padding-top: 40px;
}
.page_fishing-boat .pagecontent #area01_boat, .page_oyster-farmer .pagecontent #area01_farmer, .page_oyster-store .pagecontent #area01_farmer {
    margin-top: -60px!important;
}
.page_fishing-boat .overview_group h2, .page_oyster-farmer .overview_group h2 {
	padding-top: 0!important;
}
.page_fishing-boat .overview_group tr td, .page_fishing-boat .overview_group tr th {
	width: 25%!important;
}
.page_oyster-store .overview_group tr td, .page_oyster-store .overview_group tr th {
	width: 33.3%!important;
}
.page_fishing-boat .overview_group tr td, .page_fishing-boat .overview_group tr th, .page_oyster-farmer .overview_group tr td, .page_oyster-farmer .overview_group tr th, .page_oyster-store .overview_group tr td, .page_oyster-store .overview_group tr th {
	align-items: center!important;
	text-align: center!important;
}
.page_fishing-boat .overview_group tr th, .page_oyster-farmer .overview_group tr th, .page_oyster-store .overview_group tr th {
    background-color: #008bc7!important;
    color: #fff!important;
	border: none!important;
	text-align: center!important;
}
@media screen and (max-width: 960px) {
	.page_fishing-boat .overview_group tr td, .page_oyster-farmer .overview_group tr td, .page_oyster-store .overview_group tr td {
		text-align: left!important;
	}
	.page_fishing-boat .overview_group td, .page_fishing-boat .overview_group th, .page_oyster-farmer .overview_group td, .page_oyster-farmer .overview_group th, .page_oyster-store .overview_group td, .page_oyster-store .overview_group th {
		padding: 0.5em 1em!important;
	}
	.page_fishing-boat .overview_group tr, .page_fishing-boat .overview_group td, .page_fishing-boat .overview_group tr th, .page_oyster-farmer .overview_group tr, .page_oyster-farmer .overview_group td, .page_oyster-farmer .overview_group tr th, .page_oyster-store .overview_group tr, .page_oyster-store .overview_group td, .page_oyster-store .overview_group tr th {
		display: flex!important;
		border-bottom: solid 2px #e0e0e0!important;
	}
	.page_fishing-boat .overview_group tr:first-child, .page_fishing-boat .overview_group tr th, .page_oyster-farmer .overview_group tr:first-child, .page_oyster-farmer .overview_group tr th, .page_oyster-store .overview_group tr:first-child, .page_oyster-store .overview_group tr th {
		border: none!important;
		text-align: left!important;
	}
	.page_oyster-farmer .overview_group tr:first-child th {
		border: none!important;
		text-align: left!important;
	}
	.page_fishing-boat .overview_group, .page_oyster-farmer .overview_group, .page_oyster-store .overview_group {
		margin-top: 0!important;
    	padding-top: 60px!important;
	}
}
@media screen and (max-width: 520px) {
	.page_fishing-boat .overview_group tr td:nth-child(3), .page_fishing-boat .overview_group tr th:nth-child(3) {
		width: 42%!important;
	}
	.page_oyster-store .overview_group tr td:last-child, .page_oyster-store .overview_group tr th:last-child {
		width: 44%!important;
	}
	.page_fishing-boat .overview_group tr td:last-child {
		width: 20%!important;
	}
	.page_oyster-farmer .overview_group tr td:nth-child(2) {
		width: 120%!important;
	}
	.page_fishing-boat .overview_group td, .page_fishing-boat .overview_group th, .page_oyster-farmer .overview_group td, .page_oyster-farmer .overview_group th {
		padding: 0.75em!important;
	}
}
/*============================
 *お問い合わせ 下層
============================*/
/*小浜市漁業協同組合*/
.pagecontent .telfax p {
	margin-bottom: 1.2em;
}
.pagecontent .telfax_number strong {
	font-size: 30px;
	line-height: 1;
}
/*支所一覧*/
.branch_group .wp-block-columns {
	border-bottom: 2px solid #d0d0d0;
	padding: 0 0 30px 40px;
	margin-bottom: 25px;
}
.branch_map {
	width: 100%;
	height: 250px;
}
.branch_map .wp-block-group__inner-container, .branch_map iframe {
	width: 100% !important;
	height: 100% !important;
}
@media screen and (min-width: 961px) {
	.branch_group.headquarters .wp-block-columns {
		padding-left: 0;
	}
	.branch_group.headquarters .wp-block-columns iframe {
		padding-left: 20px;
	}
}
@media screen and (max-width: 960px) {
	.branch_group .wp-block-columns {
		flex-wrap: wrap !important;
		gap: 0;
		padding: 0 10px 40px;
	}
	.branch_group .wp-block-column {
		width: 100%;
		flex-grow: initial !important;
		flex-basis: auto !important;
	}
	.branch_map {
		margin: 1.2em auto 0;
	}
	.pagecontent .branch_group h4 {
		padding-left: 35px;
	}
}