/*
Theme Name: kamosyakyo
Theme URI:
Description: kamosyakyo theme
Version: 1.0.0
Author: Sofu System Co.,Ltd. 
Author URI: https://www.sofu.co.jp/
License:
License URI:
Text Domain: kamosyakyo
Tested up to: 5.6
Requires PHP: 7.4
*/

@charset "utf-8";

:root {
  --main-color: #ff6fac;
}

/* 初期化 */
:link,:visited{text-decoration:none;}
html,body,div,ul,ol,li,dl,dt,dd,form,fieldset,input,textarea,h1,h2,h3,h4,h5,h6,pre,code,p,blockquote,hr,th,td,artilce,section,aside,nav,figure{margin:0;padding:0;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400;}
fieldset,img,abbr,acronym{border:0;}
address,caption,cite,code,dfn,em,strong,b,u,s,i,th,var{font-style:normal;font-weight:400;}
q:before,q:after{content:'';}
a img,:link img,:visited img{border:none;}
address{font-style:normal;display:inline;}
strong{font-weight:bolder;}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}
input,textarea{margin:0;padding:0;}
ol,ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
a:focus{outline:none;}

body{color:#222;font-family:"Noto Sans JP", sans-serif, "メイリオ", Meiryo, "ヒラギノ角ゴProN", "ヒラギノ角ゴ Pro W3";font-size:16px;line-height:1.7;}
body *{ box-sizing:border-box; }
a{color:#222; text-decoration:none;}
a:hover{text-decoration:none;}
img{vertical-align:bottom;}
.container img { max-width:100%; height:auto; }

@media (min-width: 1024px){ 
	a:hover{text-decoration:underline;}
}

/* フォント */
.noto { font-family: "Noto Sans JP" }
.zen { font-family: "Zen Maru Gothic", sans-serif; font-weight: 500; font-style: normal; }
.serif { font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif; }

/* ブロックエディタ最適化設定 */
.wp-block-image figcaption { text-align:center;}
.blocks-gallery-caption { text-align:center; width:100%; }
.wp-block-quote { border-left:3px solid #ccc; padding-left:20px; margin-bottom:25px; }
.blocks-gallery-grid { margin:0 !important; }
.wp-block-file .wp-block-file__button { color:#fff !important; font-size:14px; text-decoration:none !important; background:var(--main-color); border-radius:3px; box-shadow: rgba(88, 88, 88, 0.5) 0px 3px 5px -2px; display:inline-block; padding: 6px 20px; margin-left:15px; }
.wp-block-file .wp-block-file__button:before { font-family:"FontAwesome"; font-weight:400; content:"\f019"; display:inline-block; margin-right:8px; }
.blocks-gallery-grid .blocks-gallery-image figcaption, 
.blocks-gallery-grid .blocks-gallery-item figcaption, 
.wp-block-gallery .blocks-gallery-image figcaption, 
.wp-block-gallery .blocks-gallery-item figcaption { font-size:13px; background: rgb(0 0 0 / 35%); padding:5px 0; }
.wp-block-table { margin:0; }

@media (min-width: 768px){ 
	.blocks-gallery-grid .blocks-gallery-image figcaption, 
	.blocks-gallery-grid .blocks-gallery-item figcaption, 
	.wp-block-gallery .blocks-gallery-image figcaption, 
	.wp-block-gallery .blocks-gallery-item figcaption { font-size:15px; padding:10px 0; }
	.wp-block-embed.is-type-video.is-provider-youtube iframe { max-width:800px; min-height:400px; }
}

@media (min-width:1024px){
	.wp-block-embed.is-type-video.is-provider-youtube iframe { min-height:450px; }
}


/* clearfix */
.clearfix:after{content:"";display:block;clear:both;height:0;visibility:hidden;}
.clearfix{min-height:1px;}
* html .clearfix{height:1px;}

/* グリッドカラム */
.c-row{ min-height:1px; }
.c-row:after{ clear:both; content:""; display:block; height:0; visibility:hidden;}
.c-row [class*="c-col-"] { margin-bottom:15px; }
.c-row [class*="c-col-"]:last-child { margin-bottom:0; }

@media (min-width: 768px){ 
	.c-row * { box-sizing:border-box; }
	.c-row .c-col-1 { width:8.33%; }
	.c-row .c-col-2 { width:16.66%; }
	.c-row .c-col-3 { width:25%; }
	.c-row .c-col-4 { width:33.33%; }
	.c-row .c-col-5 { width:41.66%; }
	.c-row .c-col-6 { width:50%; }
	.c-row .c-col-7 { width:58.33%; }
	.c-row .c-col-8 { width:66.66%; }
	.c-row .c-col-9 { width:75%; }
	.c-row .c-col-10 { width:83.33%; }
	.c-row .c-col-11 { width:91.66%; }
	.c-row .c-col-12 { width:100%; } 
	.c-row [class*="c-col-"] { float: left; padding: 20px; margin-bottom:0; }
	.c-row [class*="c-col-"] img { max-width:100%; height:auto; }
}

/* 汎用ボタン */
.c-btn { color:#fff; font-size:17px; background:var(--main-color); border:2px solid var(--main-color); border-radius:50px; display:inline-block; position:relative; padding:14px 60px 14px 60px; }
.c-btn.has-icon { padding-right:40px; }
.c-btn.has-icon:before { content: "\f0a9"; font-family: "FontAwesome"; font-weight: 400; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); transition:right .3s; }

@media (min-width: 768px){ 
	.c-btn { font-size:18px; padding:16px 80px 16px 80px; }
}

@media (min-width: 1024px){ 
	.c-btn { padding:16px 100px 16px 100px; }
	.c-btn:hover { color:var(--main-color); background:#fff; text-decoration:none; transition:.2s; }
	.c-btn.has-icon:hover:before { color:#fff; right:15px; }
}

/* レイアウト */
.wrapper { overflow-x:hidden; }
.container { padding-left:15px; padding-right:15px; position:relative; max-width:100% !important; }
.sp-hidden { display:none; }
.al-center { text-align:center;}

body { background:url("cmn/imgs/body_bk_sp.jpg") top center no-repeat;  }

@media (min-width: 768px){
	.container { width:100%; padding-left:15px; padding-right:15px; }
}

@media (min-width: 1024px){
	body { background:url("cmn/imgs/body_bk_pc.jpg") top center no-repeat;  min-width:1024px; }
	.container { width:1024px; min-width:1024px; margin:0 auto;}
	.sp-hidden { display:block; }
	.pc-hidden { display:none; }
}

@media (min-width: 1200px){
	.container { width:1200px; min-width:1200px;}
}

/* 固定ヘッダー */
.main { margin-top:51px; }
/* header.fixed-header { border-bottom:1px solid #efefef; box-shadow: 0 1px 3px rgb(0 0 0 / 5%); } */

@media (min-width: 1024px){
	.main { margin-top:0; }
}

/* ヘッダー */
.header { background:#fff; position:relative; height:51px; }
.header .container { display:flex; align-items:center; padding-left:5px; height:51px; }
.header .logo img { width:auto; height:30px; }
.header .header-nav { display:none; }

@media (min-width:768px){
	.header .logo { }
}

@media (min-width:1024px){
	.header,
	.header .container { display:block; height:auto; padding-left:15px;  }
	.header { padding:15px 0 0;}
	.header .logo { position:relative; top:20px; }
	.header .logo img { margin-top:0; height:45px; }
	.header .header-nav { background:#ffe2f4; border-radius:50px; padding:6px 20px; display:flex; justify-content: right; position:absolute; top:10px; right:10px;}
	.header .header-nav ul { display:flex; margin-right:-10px; }
	.header .header-nav ul li { margin:0 20px; position:relative; }
	.header .header-nav ul li a { font-size:15px; }
	.header .header-nav ul li + li:before { content:""; width:1px; height:20px; background:#fff; display:block; position:absolute; top:50%; left:-20px; transform: translateY(-50%); }
	.header .header-nav ul li a:hover { text-decoration:none; color:var(--main-color); }
}

@media (min-width:1200px){
	.header .logo img { height:60px; }
}

/* ヘッダー > グローバルナビ */
.global-nav { display:none; }

@media (min-width:1024px){
	.global-nav { display: block; margin-top: 20px; }
	.global-nav .container { padding: 0; position: relative; }
	.global-nav ul { display: flex; justify-content: right; align-items: center; }
	.global-nav ul li { text-align: center; transition: .2s; margin:0 14px; position: relative; }
	.global-nav ul li:last-child { margin-right: 0; }
	.global-nav ul li a { color: #222; font-size: 18px; font-weight: 500; text-align:left; letter-spacing:1px; display: block; position: relative; padding-bottom: 10px; }
	.global-nav ul li a:hover { color: var(--main-color); text-decoration: none; }
	.global-nav li ul li.current_page_item a, 
	.global-nav li.current_page_item ul li a { color: #fff; border: 0; }
	.global-nav li ul li.current_page_item a:before, 
	.global-nav li.current_page_item ul li a:before { display: none; }
	.global-nav li ul { display: block; position: absolute; z-index: 1000; left: 50%; transform: translateX(-50%); visibility: hidden; max-height: 0; overflow: hidden; transition: max-height 0.8s ease; width:240px; }
	.global-nav li ul li { font-size: 14px; width: 100%; border: 0; margin: 0; }
	.global-nav li ul li a { color: #fff !important; font-size: 15px; font-weight: normal; text-align: left; background: var(--main-color); border-top:1px solid #fff; padding: 10px 20px; }
	.global-nav li:hover ul { visibility: visible; max-height: 300px; }
	.global-nav li ul li a:hover { color: #fff; background:#; }
	.global-nav li:hover ul:after { transition: all .2s ease-out; content: ""; position: absolute; top: -20px; left: 50%; transform: translateX(-50%); border: 10px solid transparent; z-index: 1000; border-bottom-color: var(--main-color); }
	.global-nav .menu-item-has-children:hover a:after { transform: rotate(180deg); transition: .2s; }
	.global-nav .menu-item-has-children .sub-menu a:after { display: none; }
	.global-nav .menu-item-has-children a:after { color: var(--main-color); content: "\f107"; font-family: "FontAwesome"; font-weight: 400; display: inline-block; margin-left: 8px; position:absolute; right:-15px; }
	.global-nav li a img { width:30px; height:30px; margin-right:6px; }
}

@media (min-width:1200px){
	.global-nav { margin-top: 10px; }
}

/* ヘッダー > モバイルメニュー */
.sp-menu{ width:50px; height:50px; position:absolute; right:0; top:0; }
.menu-trigger,
.menu-trigger span { display: inline-block; transition: all .4s; box-sizing: border-box; }
.menu-trigger { position: relative; width: 100%; height: 24px; }
.menu-trigger span { background-color:var(--main-color); border-radius: 0px; position: absolute; left: 0; width: 100%; height: 2px; }
.menu-trigger span:nth-of-type(1) { top: 0; }
.menu-trigger span:nth-of-type(2) { top: 8px; }
.menu-trigger span:nth-of-type(3) { bottom: 5px; }
.menu-button { text-align:center; line-height:1; border:none; background:none;padding:16px 12px 10px 12px; }
.menu-button .touch-button{ display:none; }
.menu-button.active span:nth-of-type(1) { -webkit-transform: translateY(10px) rotate(-45deg); transform: translateY(10px) rotate(-45deg); top:-2px; }
.menu-button.active span:nth-of-type(2) { -webkit-transform: translateY(0px) rotate(45deg); transform: translateY(0px) rotate(45deg); top: 8px; }
.menu-button.active span:nth-of-type(3) { background-color:rgba(255, 255, 255, 0); }


@media (min-width:1024px){
	.sp-menu,
	.sp-nav { display:none; }
	.flexnav { display:none; }
}

.sp-nav .sofunav.show-menu { padding-bottom:100px;}
.sp-nav .sofunav div.nav a { }

@media (min-width:768px){
}

@media (min-width:1024px){
}

/* メインビジュアル */
.home-visual { line-height:1; }
.main-visual .container { padding:0;  }

.slick-slide img { max-width:100% !important; margin:0 auto; min-width:425px; position: relative; left: 50%; transform: translateX(-50%); }

@media (min-width:768px){
}

@media (min-width: 1024px){
	.main-visual .container { width:100%; min-width:100%; }
	.slick-slide img { left: auto; transform: none; }
}

@media (min-width: 1200px){
	.main-visual .container { max-width:1400px !important;}
	.slick-slide img { max-width:1400px !important; }
}

/* ホーム > 共通 */
.home .main h2 { font-size:28px; text-align:center; margin-bottom:30px; }
.home .main h3 { font-size:21px; font-weight:bold; margin-bottom:20px; }
.home .main .more { text-align:center; }

@media (min-width:768px){
	.home .main h2 { font-size:32px; }
	.home .main h3 { font-size:24px;  }
}

@media (min-width:1024px){
	.home .main h2 { font-size:44px; }
	.home .main h3 { font-size:28px; margin-bottom:30px; }
}


/* ホーム > お知らせ */
.home .news { padding:30px 0; margin-bottom:40px; }
.home .news h2 { margin-bottom:20px; }
.home .news .tab-control { font-size:14px; display:flex; justify-content: center; padding:0; margin-bottom: 15px; white-space:nowrap; }
.home .news .tab-control .tab { color:#b3b5b4; text-align:center; border-bottom:3px solid #b3b5b4; cursor:pointer; display:inline-block; position:relative; padding:10px; position:relative; width:100%; margin-left: 5px; margin-right: 5px; }
.home .news .tab-box { display:none; }
.home .news .tab-control .tab.current { color:var(--main-color); border-bottom:3px solid var(--main-color); }
.home .news .tab-box.current { display:block; overflow:auto; }

@media (min-width:768px){
	.home .news h2 { margin-bottom:40px; }
	.home .news .tab-control { font-size:15px; margin-bottom:30px; }
	.home .news .tab-control .tab { padding:15px 0; }
	.home .news .more { margin-top:40px; }
}

@media (min-width:1024px){
	.home .news { margin-top:40px; margin-bottom:90px; }
	.home .news .tab-control { font-size:18px; margin-bottom:50px; }
	.home .news .tab-control .tab { margin-left:10px; margin-right:10px;  }
}

/* お知らせリスト */
.post-list { margin:0 0 20px 0 !important; list-style:none !important; }
.post-list li { padding:15px 0;  }
.post-list li:last-child {  }
.post-list .entry-meta { display:flex; flex-wrap:wrap; align-items: center; margin-bottom:5px; }
.post-list .date { display:block; margin-right:10px; }
.post-list .category { color:var(--main-color); font-size:13px; text-align:center; border:1px solid var(--main-color); border-radius:50px; display:inline-block; position:relative; top:-1px; width:136px;  }
.post-list .entry-title { font-size:17px; }

@media (min-width:768px){
	.post-list { margin-bottom:30px; }
	.post-list .date { display:inline; margin-right:15px; }
}

@media (min-width:1024px){
	.post-list .entry-meta { display:inline-block; margin-right:20px; }
	.post-list .date { font-size:17px; margin-right:20px; }
	.post-list .entry-title { font-size:18px; }
	.post-list li { padding:20px 0;  }
}

/* ホーム > インスタグラムバナー */
.home .insta-bn { text-align: center; padding:0; margin-bottom:40px;}
.home .insta-bn img { border-radius: 15px; width: 100%; max-width:688px; height: auto; display: inline-block;}

@media (min-width:768px){
.home .insta-bn { padding:20px 0; margin-bottom:80px;}
}

/* ホーム > 加茂社協について */
.home .about { margin-bottom:40px; }
.home .about p { line-height:2; }
.home .about .more { margin-top:30px; }
.home .about .img { text-align:center; margin-top:60px; }

@media (min-width:768px){
	.home .about .more { text-align:left; margin-top:40px; }
	.home .about .img { margin-top:40px; }
}

@media (min-width:1024px){
	.home .about .text p { font-size:17px; }
}

/* ホーム > 事業紹介 */
.home .service { background:url("cmn/imgs/top_business_bk.jpg") top center no-repeat; margin-bottom:40px; padding-top:40px; }
.home .service .service-box { background:#fff; border-radius:20px; padding:40px 30px; }
.home .service .service-box .c-row { display: flex; flex-wrap: wrap; flex-direction: column-reverse; }
.home .service .text p { line-height:2; }
.home .service .service-box .more { margin:20px 0 30px; }
.home .service .service-box img { border-radius:10px; }

@media (min-width:768px){
	.home .service { padding-top:80px; }
	.home .service h2 { margin-bottom:40px;}
	.home .service .service-box .c-row { display:block; }
	.home .service .service-box .more { text-align:left; }
}

@media (min-width:1024px){
	.home .service h2 { margin-bottom:60px;}
	.home .service .text p { font-size:17px; }
}

/* ホーム > リンク */
.home .link ul li { text-align:center; margin-bottom:10px; }
.home .link ul li a { color:var(--main-color); font-size:24px; font-weight:bold; text-align:center; background:#fff; display:block; border:2px solid var(--main-color); border-radius:50px; padding:24px 0; margin-left:auto; margin-right:auto; max-width:400px; }

@media (min-width:768px){
	.home .link ul { display:flex; flex-wrap:wrap; max-width:900px; margin-left:auto; margin-right:auto; }
	.home .link ul li { width:50%; padding:10px; }
}

@media (min-width:1024px){
	.home .link ul li a:hover { color:#fff; text-decoration:none; background:var(--main-color); transition:.3s; }
}

/* フッター */
.footer { background:#fff1f4; padding:80px 0 60px; margin-top:60px; }
.footer .ft-content { text-align:center; }
.footer .ft-content .sitemap { display:none; }
.footer .logo img { width:287px; height:auto; margin-bottom:20px; }
.footer .copyright { color:#666; font-size:14px; text-align:center; }

@media (min-width:768px){
	.footer .ft-content { text-align:left; }
	.footer .logo img { width:328px; }
	.footer .copyright { margin-top:40px; }
}

@media (min-width:1024px){
	.footer .ft-content .sitemap { display:block; padding-right:0;  }
	.footer .ft-content .sitemap li + li { margin-top:10px; }
	.footer .ft-content .sitemap a { font-size:16px; position:relative; }
	.footer .ft-content .sitemap a:before { color:var(--main-color); content:"\f105"; font-family:"FontAwesome"; font-weight:600; margin-right:8px; }
	.footer .ft-content .sitemap a:hover { color:var(--main-color); text-decoration:none; }
	.footer .ft-content .sitemap .children { margin-top:10px; }
	.footer .ft-content .sitemap .children a { color:#666; font-size:12px; font-weight:normal;}
}

/* ページタイトル */
.page-header { margin-bottom:20px; }
.page-header .container { background:url("cmn/imgs/pagetitle_bk.png") no-repeat bottom right; background-size:78px; }
.single .page-header .container { background:none; }

.page-title { text-align:center; padding:20px 0px 20px;}
.page-title h1, 
.page-title .title { font-size:28px; font-weight:bold; display:inline-block; position:relative; }

@media (min-width:768px){
	.page-header { margin-bottom:30px; background-size:130px; background-position:right bottom 20px; }
	.page-header .container { background-size:130px; }
	.page-title { padding:40px 0;}
	.page-title h1, 
	.page-title .title { font-size:32px;}
}

@media (min-width:1024px){
	.page-header { margin-bottom:40px; }
	.page-header .container { background-size:260px; }
	.page-title { padding:50px 0;}
	.page-title h1, 
	.page-title .title { font-size:36px;}
}

/* パンくずリスト */
.breadcrumbs{ display:none; }

@media (min-width:768px){
	.breadcrumbs { color:#999; font-size:13px; display:block; padding:10px 0; position:relative; box-sizing:border-box; white-space:nowrap; overflow-x:auto; }
	.breadcrumbs i { margin-right:8px; position:relative; top:1px;}
	.breadcrumbs a { color:#999; }
	.breadcrumbs .home:before { font-size:16px; font-family:"FontAwesome"; font-weight:400; content:"\f015"; margin-right:8px; }
	.breadcrumbs .separate { margin-left:8px; margin-right:8px; }
	.breadcrumbs .separate:before { content: ""; display: inline-block; width: 5px; height: 5px; transform: rotate(45deg); border-top: 1px solid #999; border-right: 1px solid #999; position: relative; top: -1px; margin:0 5px 0 2px; }
}

@media (min-width:1024px){
	.breadcrumbs { padding:10px 0; }
}




/* ページ汎用 */
.page-content { font-size:16px; padding:0 0 30px 0; }
.page-content p { margin-bottom:15px; }
.page-content a { color:#333; }
.page-content ul, 
.page-content ol { margin: 20px 0 20px 30px; padding: 0; }
.page-content ul { list-style: disc outside; }
.page-content ol { list-style: decimal outside; }
.page-content ul li + li,
.page-content ol li + li { margin-top:5px; }
.page-content h2,
.page-content h3,
.page-content h4 { font-family: "Zen Maru Gothic", sans-serif; font-weight: 500; font-style: normal;}
.page-content h2 { color:#222; font-size:24px; margin-bottom:25px; padding:0 15px 15px; position:relative;}
.page-content h2:after { background:var(--main-color); border-radius:50px; content:""; display:block; width:100%; height:3px; position:absolute; left:0; bottom:0;   }
.page-content h3 { color:#222; font-size:22px; border-bottom:3px dotted var(--main-color); padding:0 15px 10px; margin-bottom:20px;}
.page-content h4 { color:var(--main-color); font-size:18px; font-weight:bold; margin:20px 0 10px; }
.page-content * + h2 { margin-top:40px; }
.page-content * + h3 { margin-top:30px; }
.page-content a[target="_blank"]:after { font-size:12px; font-family:"FontAwesome"; font-weight:600; content:"\f08e"; display:inline-block; margin:0 8px 0 5px;}
.page-content .wp-block-image a[target="_blank"]:after { display:none; }

.page-content .wp-block-file { font-size:16px; margin-bottom:15px; }
.page-content .wp-block-file a { color:var(--main-color); }

@media (min-width:768px){
	.page-content { font-size:16px;}
	.page-content p { margin-bottom:25px; }	
	.page-content h2 { font-size:28px; margin-bottom:30px; }
	.page-content h3 { font-size:26px; margin-bottom:25px; }
	.page-content * + h2 { margin-top:60px; }
	.page-content * + h3 { margin-top:40px; }
	.page-content h4 { font-size:22px; }
}

@media (min-width:1024px){
	.page-content { font-size:18px;}
	.page-content p { line-height:1.8; margin-bottom:20px;}
	.page-content h2 { font-size:32px;}
	.page-content h3 { font-size:28px;}
	.page-content a { text-decoration:underline; }
	.page-content a:hover { text-decoration:none; }
}

/* テーブル */
.page-content table { width:100%; margin-bottom:20px; }
.page-content table th,
.page-content table td { border:0; border-top:1px solid #c7c7c7; border-bottom:1px solid #c7c7c7; width:auto; padding:15px 25px; }
.page-content table th { font-weight:bold; background:#fff1f4; width:25%; }
.page-content table td { background:#fff; }
.page-content .wp-block-group table:last-child { margin-bottom:20px; }

@media (max-width:600px){
	.page-content .responsive table { border-top:1px solid #c7c7c7; border-collapse:collapse; width:100%; margin-bottom:20px; }
	.page-content .responsive table th,
	.page-content .responsive table td { border:0; display:block; padding:10px 15px; width:100%; }
	.page-content .responsive table td { border-bottom:1px solid #c7c7c7; display:block; padding:10px 15px; width:100%; }
}

@media (min-width:768px){
	.page-content table th,
	.page-content table td { font-size:16px;  }
}

@media (min-width:1024px){
	.page-content table th,
	.page-content table td { font-size:17px;}
}

/* キャプション */
.page-content figcaption { font-size:14px;}

@media (min-width:768px){
	.page-content figcaption { font-size:16px;}
}

/* アンカーリンク */
.page-content ul.anchor { margin:0 0 30px 10px;}
.page-content ul.anchor li { list-style:none; display:inline-block; margin-right:30px;}
.page-content ul.anchor li a { color:#222; text-decoration:none;}
.page-content ul.anchor li a:before { color:#222; font-weight:600; content:"\f107"; font-family:"FontAwesome"; font-weight:600; margin-right:10px;}
.page-content ul.anchor a:hover { opacity:0.7; transition:0.3s;}

/* アーカイブページ */
.archive .category-list { margin-bottom:20px; }
.archive .category-list ul { display:flex; flex-wrap:wrap; }
.archive .category-list ul li { margin:5px; }
.archive .category-list ul li a { color:var(--main-color); font-size:14px; background:#fff; border:2px solid var(--main-color); border-radius:50px; display:block; padding:4px 20px; }
.archive .category-list ul li a.current { color:#fff; background:var(--main-color);  }

@media (min-width:768px){
	.archive .category-list { margin-bottom:30px; }
	.archive .category-list ul li a { font-size:15px; padding:4px 24px; }
}

@media (min-width:1024px){
	.archive .category-list { margin-bottom:40px; }
	.archive .category-list ul li a:hover { text-decoration:none; color:#fff; background:var(--main-color); }
}



/* ページャー */
.wp-pagenavi { margin:40px 0; text-align:center; }
.wp-pagenavi span,
.wp-pagenavi a { text-decoration:none; background:#fff; border:1px solid var(--main-color); border-radius:50px; display:inline-block; padding: 3px 12px; margin:3px; ;}
.wp-pagenavi a:hover, 
.wp-pagenavi span.current { border:1px solid var(--main-color);  }
.wp-pagenavi span.current { color:#fff; font-weight:normal; background:var(--main-color); }

/* お知らせ記事 */
.article { padding:30px 0;}
.article .category { margin-bottom:10px; }
.article .category a{ color:var(--main-color); font-size:13px; text-align:center; text-decoration:none; border:1px solid var(--main-color); border-radius:50px; display:inline-block; position:relative; top:-1px; width:136px;  }

.article h1 { font-size:21px; font-weight:bold; margin-bottom:8px; }
.article .entry-content { padding-top:20px; }
.article .date { font-size:14px; }

@media (min-width:768px){
	.article h1 { font-size:26px; }
	.article .date { font-size:15px; }
	.article .page-content { padding-top:30px; }
}

@media (min-width:1024px){
	.article h1 { font-size:28px; }
	.article .date { font-size:16px; }
}

/* メールフォーム */
.wpcf7-form-control-wrap { display:block; margin-top:5px; }
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea,
.wpcf7-form select { font-size:16px; font-family:"メイリオ", "ヒラギノ角ゴ Pro W3", sans-serif; line-height:1.6; border:1px solid #999; border-radius:2px;  }
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea { box-sizing:border-box; width:100%; padding:7px 10px; }
.wpcf7-form .wpcf7-radio .wpcf7-list-item { font-size:16px; display:inline-block; margin-left:15px; }
.wpcf7-form .wpcf7-radio .wpcf7-list-item + .wpcf7-list-item { margin-top:10px; }
.wpcf7-form .wpcf7-radio label,
.wpcf7-form .wpcf7-checkbox label,
.wpcf7-form .wpcf7-acceptance label { cursor:pointer; }
.wpcf7-form .submit { text-align:center; margin-top:20px; }
.wpcf7-form input[type="submit"] { color:#fff; font-size:16px; background:var(--main-color); border:0; border-radius:5px; display:block; margin:0 auto; padding:10px 80px; cursor:pointer; -webkit-appearance: none; }
.wpcf7-form .wpcf7-submit:disabled { background:#999; }


.wpcf7-form .form-notice { font-size:12px; background:#fff; border:1px solid #ccc; border-radius:8px; padding:10px 20px 10px 5px; margin-bottom:20px; }
.wpcf7-form .title { font-size:16px; font-weight:bold; }
.wpcf7-form p { margin-bottom:25px;}
.wpcf7-form .notice { font-size:12px; font-weight:normal; margin:5px 0 0; }
.wpcf7-form .required { color:#fff; font-size:11px; background:#ec5b66; display:inline-block;  margin-left:10px; padding:2px 7px; position:relative; top:-2px;}
.wpcf7-form .optional { color:#1174ca; font-size:11px; background:#fff; border:1px solid #1174ca; margin-right:10px; padding:2px 7px; position:relative; top:-2px;}
.wpcf7-form .confirm { text-align:center; margin-bottom:30px;}

.wpcf7-not-valid-tip { color:#e84d49; font-size:14px; margin-top:3px; }
.use-floating-validation-tip span.wpcf7-not-valid-tip { white-space:nowrap; }
.wpcf7-form .acceptance { text-align:center;} 

/* メールフォーム > 送信完了 */
.wpcf7-form.sent .sent-ok-hidden { display:none; }
.wpcf7 form .wpcf7-response-output { text-align:center; margin:0; padding:15px; }
.wpcf7-mail-sent-ok { text-align:center; background:#f0f6ed; padding-top:20px !important; padding-bottom:20px !important; }

@media (min-width:768px){
	.wpcf7-form .form-notice { font-size:14px; padding:10px 30px 10px 15px;  }

	.page-id-21 .page-content table th { width:33%; }

}




/* reCAPTCHA */
.grecaptcha-badge { visibility: hidden; }
.page-id-XX .grecaptcha-badge { visibility: visible; }

/*----------------------------------------
以下、ページ別CSS
------------------------------------------*/

/* 特定ページの幅を狭く（※ページテンプレートで設定可能だが個別調整用） */
.page-id-xx { max-width:1024px; margin-left:auto; margin-right:auto;}

/* サイトマップ */
.page-id-xx .page-content #sitemap_list { margin: 20px 0; padding:0;}
.page-id-xx .page-content #sitemap_list li { list-style:none; }
.page-id-xx .page-content #sitemap_list a { text-decoration:none;}
.page-id-xx .page-content #sitemap_list a:hover { text-decoration:underline;}
.page-id-xx .page-content #sitemap_list li.home-item,
.page-id-xx .page-content #sitemap_list li.page_item { border-bottom:1px dotted #1174ca; padding-bottom:15px;}
.page-id-xx .page-content #sitemap_list li.home-item:before,
.page-id-xx .page-content #sitemap_list li.page_item:before { color:#1174ca; content:"\f138"; font-weight:600; font-family:"Font Awesome 5 Free"; margin:0 10px;}
.page-id-xx .page-content #sitemap_list li.page_item ul.children { margin-left:30px;}
.page-id-xx .page-content #sitemap_list li.page_item ul.children li { border:none; padding-bottom:0;}
.page-id-xx .page-content #sitemap_list li.page_item ul.children li:before { content:"\f105"; font-weight:600; font-family:"Font Awesome 5 Free"; margin:0 10px;}

/* 個人情報の取り扱いについて */
.page-id-xx .page-content ol { margin:60px 0;}
.page-id-xx .page-content ol li { margin-bottom:30px;}
.page-id-xx .page-content ol ul li { margin-bottom:10px;}
