/*
Theme Name: 三戸町観光協会_ver_02_2025
Theme URL:
Author:
Author URI:
Description: 三戸町観光協会_のテンプレートver02
Version: 9999
Tags:
License:
License URI:
*/
/* ==========================================================================
   Foundation
   ========================================================================== */
/* Reset
   ----------------------------------------------------------------- */

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav.gnav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:400;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav.gnav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}
figure{margin-bottom:0;}
/* Base
   ----------------------------------------------------------------- */
.serif{
	font-family: "Noto Serif JP", sans-serif;
	font-weight: 500;
	font-style: normal;
}

body{
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 400;
	color:#555;
	max-width:2400px;
	margin:0 auto;
}
a{
	text-decoration:none;
	color:#6fb0db;
}

img{
	vertical-align:top;
	max-width:100%;
	height:auto;
}
figcaption{
	text-align:center;
	font-size:clamp(13px, 1.5vw, 16px);
	line-height:1.5em;
	margin:5px 0;
}
ol{list-style:none}

/* ==========================================================================
   共通
========================================================================== */
html{
	font-size:clamp(13px, 2vw, 16px);
	scroll-padding-top: 50px;
}
main{/*overflow:hidden;*/}

/*main内の通常リンク*/
main a:not([class]){
	border-bottom:solid 1px #6fb0db;
}
main a:not([class]):hover{
	opacity:0.8;
	color:#004F87;
	border-bottom:solid 1px #004F87;
}


/*文字寄せ*/
.txt-right{text-align:right;}
.txt-center{text-align:center;}
/*一文字空白*/
.indent{text-indent: 1em;}
/*URL改行防止*/
main p{word-break: break-all;}

/*柄別背景*/
.bg_dot{background-image:url(img/bg_dot.png);}
.bg_bor{background-image:url(img/bg_border.png);}

/*色別背景*/
.bgc01{background-color:#6AA9D6;}
.bgc02{background-color:#F8BA4F;}
.bgc03{background-color:#FB8CA7;}
.bgc04{background-color:#718D79;}
.bgc05{background-color:#CC93E3;}
.bgc06{background-color:#F37A65;}
.bgc07{background-color:#C79F61;}
.bgc08{background-color:#61D2BB;}
.bgc09{background-color:#9b9b9b;}
.bgc10{background-color:#eed627;}


a.bgc01:hover{background-color:#397fb1;}
a.bgc02:hover{background-color:#eb9c13;}
a.bgc03:hover{background-color:#ef708f;}
a.bgc04:hover{background-color:#588164;}
a.bgc05:hover{background-color:#b064cf;}
a.bgc06:hover{background-color:#d95a44;}
a.bgc07:hover{background-color:#a77c3a;}
a.bgc08:hover{background-color:#3bb39a;}
a.bgc09:hover{background-color:#636363;}
a.bgc10:hover{background-color:#d0bb20;}

/*色別の下線文字*/
.txb01{border-bottom:solid 2px #6AA9D6;}
.txb02{border-bottom:solid 2px #F8BA4F;}
.txb03{border-bottom:solid 2px #FB8CA7;}
.txb04{border-bottom:solid 2px #718D79;}
.txb05{border-bottom:solid 2px #CC93E3;}
.txb06{border-bottom:solid 2px #F37A65;}
.txb07{border-bottom:solid 2px #C79F61;}
.txb08{border-bottom:solid 2px #61D2BB;}
.txb09{border-bottom:solid 2px #9b9b9b;}
.txb10{border-bottom:solid 2px #f9e346;}


/*色別文字*/
.txc01{color:#6AA9D6;}
.txc02{color:#F8BA4F;}
.txc03{color:#FB8CA7;}
.txc04{color:#718D79;}
.txc05{color:#CC93E3;}
.txc06{color:#F37A65;}
.txc07{color:#C79F61;}
.txc08{color:#61D2BB;}
.txc09{color:#636363;}
.txc10{color:#f9e346;}




/*共通ボタン*/
.btn {text-align:center;margin-bottom:1rem;}
.btn a{
	font-size:clamp(11px, 2vw, 16px);
	box-sizing:border-box;
	line-height:1.25rem;
	text-align:center;
	min-width:300px;
	display:inline-block;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	margin:0 auto;
	border-radius:30px;
	padding:1rem;
}
.btn a:hover{
	opacity: 1;
}
.btn a:not(.com){color:#fff;}
.btn a.com{
	background:#D8E9F6;
	color:#004F87;
}
.btn a.com:hover{
	background:#004F87;
	color:#fff;
}
@media screen and (max-width: 480px){
	.btn a{min-width:200px;}
}




/*外部リンクボタン*/
.btn-blank {text-align:center;}
.btn-blank a{
	font-size:clamp(13px, 2vw, 14px);
	box-sizing:border-box;
	border-radius:25px;
	line-height:35px;
	padding:0.25rem 1.5rem 0.25rem 1.5rem;
	position: relative;
	background:rgb(252,130,136);
	color:#fff;
	text-align:center;
	min-width:160px;
	display:inline-block;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	margin:0 auto;
}
.btn-blank a:after{
	content:" ";
	display:inline-block;
	width:14px;
	height:14px;
	margin-left:.5rem;
	background-image:url(img/icon-blank.svg);
	bakcground-position:center;
	background-repeat:no-repeat;
	background-size:100%;
}




/*共通テーブル*/
table.tbl100{width: 100%;}
.tbl01 td,
.tbl01 th{
	padding: 1rem ;
	line-height: 1.5rem;
	font-size:clamp(13px, 1.5vw, 16px);
	border:solid 1px #ccc;
}
.tbl01{
	margin-bottom: 2rem;
	box-sizing: border-box;
}
.tbl01 th{
	background:#f8f8f8;
	vertical-align: top;
	text-align: left;
}
@media screen and (max-width: 768px){
.scroll{
	overflow: auto;
	white-space: nowrap;
	margin-bottom: 1em;
}
.scroll table{
	width: 100%;
	margin-bottom: 0.5em;
}
}
@media screen and (max-width: 480px){
.tbl01 td,
.tbl01 th{padding: 1rem 1rem;}
}



/*線なしのミニテーブル*/
.tbl-min{
	margin-bottom: 2rem;
	box-sizing: border-box;
}
.tbl-min td,
.tbl-min th{
	padding: 0.5rem ;
	line-height: 1.5rem;
	font-size:clamp(13px, 1.5vw, 16px);
}
.tbl-min th{
	vertical-align: top;
	text-align: left;
}

/*営業時間のtable*/
.tbl-info{
	border-spacing: 2px;
	border-collapse: separate;
	max-width:300px;
	width:100%;
}
.tbl-info th,
.tbl-info td{
	font-size:clamp(14px, 1.5vw, 18px);
	color:#8B8B8B;
	background:#fff;
	padding:.5em .5em;
}
.tbl-info th{width:6em;box-sizing:border-box;}
.tbl-info .time th{
	color:#fff;
	background:#61C1BE;
	
}
.tbl-info .time td{
	font-size:clamp(14px, 2.25vw, 18px);
	color:#333;
}

/*mapレスポンシブ*/
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

/*動画レスポンシブ*/
.yt_movie {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.yt_movie iframe {
  width: 100%;
  height: 100%;
}

/*tel スマホサイズのみクリック可*/
@media (min-width: 769px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}

.sec{padding:4rem 2rem;}
@media screen and (max-width: 768px){.sec{padding:3rem 2rem;}}
@media screen and (max-width: 480px){.sec{padding:2rem 1rem;}}
.inner{ 
	max-width:1100px;
	margin:0 auto;
	box-sizing:border-box;
}

.inner800{
	max-width:800px;
	margin:0 auto;
	box-sizing:border-box;
}


/*見出し*/

/*共通の見出しサイズ*/
h1,
h2,
h3,
h4,
h5,
p{line-height:1.75em;}

h1:not(.not){font-size:clamp(32px, 3.5vw, 48px);}
h2:not(.not){font-size:clamp(24px, 3.5vw, 36px);}
h3:not(.not){font-size:clamp(20px, 3vw, 32px);}
h4:not(.not){font-size:clamp(18px, 2.5vw, 24px);}
h5:not(.not){font-size:clamp(15px, 2.25vw, 20px);}
h6:not(.not){font-size:clamp(13px, 2vw, 16px);}
p,a{font-size:clamp(13px, 1.5vw, 16px);}

h1:not(.not) span,
h2:not(.not) span,
h3:not(.not) span,
h4:not(.not) span,
h5:not(.not) span,
h6:not(.not) span{display:inline-block;}
p span{display:inline-block;}

/*共通の見出し装飾と余白*/
.bold{font-weight: 700;}
h1:not(.not){
	margin-bottom:2rem;
}
h2:not(.not){
	margin-bottom:1rem;
}

h3:not(.not){margin-bottom:1rem;font-weight: 700;}
h4:not(.not){margin-bottom:1rem;}
h5:not(.not){margin-bottom:1rem;}
p:not(.not){margin-bottom:1rem;}


/*背景がある見出し*/
h2.h2_tit01{
	color:#6AA9D6;
	text-align:center;
	line-height:1.5em;
	letter-spacing:3px;
	font-weight:500;
}
h2.h2_tit01 span{
	display:inline-block;
	padding:0 .5em;
	position:relative;
	z-index:1;
	min-width: 180px;
	text-align: center;
	font-weight:500;
}
h2.h2_tit01 span:after{
content:"";
position:absolute;
bottom:0;
right: 0;
left: 0;
margin: 0 auto;
z-index:-1;
display:block;
width:100%;
height:20px;
border: 0;
	background-image: repeating-linear-gradient(-45deg, #C7E8FF 0px, #C7E8FF 2px, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 50%);
	background-size: 12px 12px;
	clip-path: polygon(20px 0%, 100% 0%, calc(100% - 20px) 100%, 1px 100%);
}

@media screen and (max-width: 480px){
	h2.h2_tit01 span:after{height:14px;}
}



/*固定ページ共通*/
.page-top{
	margin-bottom:0;
	position:relative;
	height:400px;
	margin-left:120px;
}

.page-top .page-tit{
	position: relative;
  z-index:1;
	top:4rem;
	left: -80px;
	padding:2rem 3rem;
	box-sizing:border-box;
	font-weight:bold;
	color:#fff;
	background:#8A6329;
	display:inline-block;
	font-size:clamp(20px, 3vw, 40px);
	
}

.page-top .pagetop-img img{
		position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
@media screen and (max-width: 960px){
.page-top{height:280px;margin-left:80px;}
.page-top .page-tit{left:-60px;padding:1.5rem 2rem;}
}
@media screen and (max-width: 480px){
.page-top{
	height:180px;margin-left:1rem;
	
	}
.page-top .page-tit{
	top:2rem;
	left:-5px;
	padding:1rem ;
	}
}

/*共通リスト*/

/*ドットが歪んだ丸のリスト*/
ul.list01{
	margin-left: 0.5rem;
	margin-bottom:2rem;
}
ul.list01 > li{
	font-size:clamp(15px, 2vw, 18px);
	line-height: 2em;
	padding:.5rem .5rem .5rem 26px;
	position:relative;
	border-bottom:solid 5px #fff;
	margin-bottom:.5rem;
}
ul.list01 > li:before{
	content: "";
	position:absolute;
	left:4px;
	top:calc(1em + 4px);
	width:10px;
	height:10px;
	background:rgb(174,174,174);
	display: block;
	border-radius: 41% 59% 48% 52% / 52% 50% 50% 48%;
}

/*ドットが歪んだ丸のリストmini*/
ul.list01-min{
	margin-left: 0.5rem;
}
ul.list01-min > li{
	font-size:clamp(14px, 2vw, 16px);
	line-height: 1.5em;
	padding:0 0 0 26px;
	position:relative;
	margin-bottom:1rem;
}
ul.list01-min > li:before{
	content: "";
	position:absolute;
	left:4px;
	top:calc(1em / 2);
	width:10px;
	height:10px;
	background:rgb(97 193 190);
	display: block;
	border-radius: 41% 59% 48% 52% / 52% 50% 50% 48%;
}

/*inlist*/
ul.list01 > li ul{margin-left:1rem;}

/*ドットがシンプルなリスト*/
ul.list02{
	margin-left: 0.5rem;
	margin-bottom:2rem;
}
ul.list02 > li{
	font-size:clamp(14px, 2vw, 16px);
	line-height: 2em;
	margin: 0 0 1rem 0;
	padding:0 0 0 26px;
	position:relative;
}
ul.list02 > li:before{
	content: "";
	position:absolute;
	left:7px;
	top:15px;
	width:4px;
	height:4px;
	background:#5A391D;
	display: block;
	border-radius:10px;
}
ul.list02 > li ul{margin-left:1rem;}

/*inlineリスト*/
ul.list-inline > li{
	display:inline-block;
	margin-right:1rem;
	font-size:clamp(14px, 2vw, 16px);
	margin-bottom:1rem;
	line-height:1.5rem;
}

/*手前に■付きinlineリスト*/
ul.list-inline-sq > li{
	display:inline-block;
	margin-right:1rem;
	font-size:clamp(14px, 2vw, 16px);
	margin-bottom:1rem;
	line-height:1.5rem;
}
ul.list-inline-sq > li:before{
	content:"\0025a0";
	margin-right:5px;
}


/*チェックリスト*/
ul.list-check{
	margin-left: 0.5rem;
	margin-bottom:2rem;
}
ul.list-check > li{
	font-size:clamp(15px, 2vw, 18px);
	line-height: 2em;
	padding:0 0 0 26px;
	position:relative;
	margin-bottom:.5rem;
}
ul.list-check > li:before{
	content: "";
	position:absolute;
	left:4px;
	top:calc(.5em + 4px);
	width:10px;
	height:10px;
	background:rgb(255,255,255);
	display: block;
	border:solid 1px #333;
}


ol.list-num01 {
	margin-left: 0.5rem;
	margin-bottom:2rem;
	counter-reset: listnum;
}
ol.list-num01 > li{
	font-size:clamp(14px, 2vw, 16px);
	line-height: 2em;
	margin: 0 0 1rem 0;
	padding:0 0 0 26px;
	position:relative;
}
ol.list-num01 > li:before{
	position: absolute;
	left: 0px;
	counter-increment: listnum;
	content: counter(listnum) ".";
	width: 23px;
	text-align: right;
}

/*（）付き数字リスト*/

ol.in-list-num {
	margin-left: 0.5rem;
	margin-bottom:2rem;
	counter-reset: listnum;
}
ol.in-list-num > li{
	font-size:clamp(14px, 2vw, 16px);
	line-height: 2em;
	margin: 0 0 1rem 0;
	padding:0 0 0 26px;
	position:relative;
}
ol.in-list-num > li:before{
	position: absolute;
	left: 0px;
	counter-increment: listnum;
	content: "(" counter(listnum) ")";
	width: 23px;
	text-align: right;
}

/*背景色用*/
.bg-cream{
	background-color:rgb(255,246,225);
}
.bg-mizu{
	
}
/*共通Column 3→1Column*/
.col3-1{display:flex;flex-wrap:wrap;}

@media screen and (min-width: 769px){
.col3-1 > li{width:calc((100% - 2rem) / 3);margin-right:1rem;margin-bottom:1rem;}
.col3-1 > li:nth-child(3n){margin-right:0;}
}
@media screen and (min-width: 481px) and (max-width: 768px){
.col3-1 > li{width:calc((100% - 1rem) / 2);margin-right:1rem;margin-bottom:1rem;}
.col3-1 > li:nth-child(2n){margin-right:0;}
}
@media screen and (max-width: 480px){
	.col3-1 {display:block;}
	.col3-1 > li{margin-right:0;}
}

/*共通Column 3→２Column*/
.col3-2{display:flex;flex-wrap:wrap;}

@media screen and (min-width: 769px){
.col3-2 > li{width:calc((100% - 2rem) / 3);margin-right:1rem;margin-bottom:1rem;}
.col3-2 > li:nth-child(3n){margin-right:0;}
}
@media screen and (max-width: 768px){
.col3-2 > li{width:calc((100% - 1rem) / 2);margin-right:1rem;margin-bottom:1rem;}
.col3-2 > li:nth-child(2n){margin-right:0;}
}
/*共通Column 2*/

.col2 .item{margin-bottom:1rem;}

@media screen and (min-width: 581px){
.col2{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:2rem;
}
.col2 > .item{width:calc((100% - 2rem) / 2);margin-right:2rem;margin-bottom:2rem;}
.col2 > .item:nth-child(2n){margin-right:0;}
/*テキストと画像が並ぶ場合*/
.col2 > .item-txt{flex:1;margin-bottom:2rem;}
.col2 > .item-img{width:calc((100% - 2rem) / 2);margin-left:2rem;margin-bottom:2rem;}
}


/* ==========================================================================
   Layout
========================================================================== */


/* Header と side
----------------------------------------------------------------- */
header{
	width:100%;
	box-sizing:border-box;
	position:relative;
	background:#fff;
	padding:2rem 1rem;
}
.header-in{
	max-width: 1100px;
	margin:0 auto;
	padding:0;
	display:flex;
	flex-wrap:wrap;
	aling-items:center;
	justify-content: space-between;
	box-sizing:border-box;
	
}

.h-logo-wrap{
	display:flex;
	flex-wrap:wrap;
}
.h-logo-wrap .h-logo,
.h-logo-wrap .sub-logo{height:46px;margin-right:1rem;}
.h-logo-wrap .h-logo img,
.h-logo-wrap .sub-logo img{width:auto;height:46px;}

@media screen and (max-width: 1260px){
.h-logo-wrap .h-logo,
.h-logo-wrap .sub-logo{height:32px;margin-right:1rem;}
.h-logo-wrap .h-logo img,
.h-logo-wrap .sub-logo img{width:auto;height:32px;}
}
@media screen and (max-width: 960px){
header{padding:14px 1rem;}
}



.header-in .h-nav-wrap{
	flex:1;
	display: flex;
	justify-content: flex-end;
	    align-items: center;
}
.h_nav li a{
	color:#555;
	display:block;
	padding:0 .75rem 0 calc(.75rem + 20px);
	line-height:1.25em;
	font-size:clamp(15px, 2vw ,18px);
	position:relative;
	
}
.h_nav li a:hover{opacity:0.8;}
.h_nav li a:before{
	content:"";
	position:absolute;
	left:8px;
	top:0;
	width:20px;
	height:20px;
	background-size:100%;
	background-position:top left;
	background-repeat:no-repeat;
}

.h_nav li a.icon01:before{background-image: url("img/icon01.svg");}
.h_nav li a.icon02:before{background-image: url("img/icon02.svg");}
.h_nav li a.icon03:before{background-image: url("img/icon03.svg");}
.h_nav li a.icon04:before{background-image: url("img/icon04.svg");}




/*tab sp ナビ*/
.globalMenuSp-in::-webkit-scrollbar{width: 8px;}
.globalMenuSp-in::-webkit-scrollbar-track{background-color: #ddd;}
.globalMenuSp-in::-webkit-scrollbar-thumb{background-color: #F2AC7F;}

@media screen and (min-width: 961px){
	.sp-nav {display:none;}
	.header-in .sp-logo,
	.header-in .sp-sub-logo{display:none;}
.navToggle{display:none;}
.header-nav{
	position:relative;
	z-index:99;
	padding:.5em 0;
	flex: 1;
	max-width: 1000px;
}
.header-nav-in{
	margin: auto;
	border-radius:10px;
}
.h_nav{
	display: table;
	width: 100%;
	
}
.h_nav li {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	
}



}



@media screen and (max-width: 960px){
	
nav.globalMenuSp {
	position: fixed;
	height: 100%;
	z-index: 99999;
	top: 0;
	right: 0;
	background:#FFF;
	color: #000;
	transform: translateX(100%);
	transition: all 0.6s;
	width: 100%;
	max-width:320px;
	margin:0;
	padding-bottom:45px;
	border-left:solid 1px #ddd;
	box-sizing:border-box;
}
.globalMenuSp-in{
	position:fixed;
	height: calc(100vh - 1rem);
	padding:60px 15px 0 ;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	width:100%;
	box-sizing:border-box;
	display: flex;
	flex-direction: column;
}
/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
	transform: translateX(0%);
	display:block;
	top:0px;
}
.navToggle {
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: 60px;
	height: 60px;
	cursor: pointer;
	z-index: 999999;
	text-align: center;
	background:#72aed6;
}
.navToggle span {
	display: block;
	position: absolute;    /* .navToggleに対して */
	width: 30px;
	height:2px;
	background:#fff;
	border-radius:2px;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	left: 15px;
	
}
.navToggle span:nth-child(1) {top: 18px;}
.navToggle span:nth-child(2) {top: 42px; }
.navToggle span:nth-child(3) {top: 30px;}
.navToggle span:nth-child(4) {display:none;}
.navToggle.active{position:fixed; }
/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
	top: 30px;
	left: 15px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
	top: 30px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}
.navToggle.active span:nth-child(3),
.navToggle.active span:nth-child(4){display:none;}

/*ハンバーガー内のナビ*/

.sp-logo{
	max-width:200px;
	margin:0 auto 1rem;
}
.sp-sub-logo{
	width:120px;
	margin:0 auto 1rem;
}
.h_nav li{
	padding:1rem .5rem;
	border-bottom:solid 1px #72aed6;
}
.h_nav li a{
	padding:0 0 0 calc(.75rem + 30px);
}

}

/*----ハンバーガー end----*/


/* footer
---------------------------------------------------------------- */
footer{
	background:#EEF8FF;
	padding:4rem 2rem;
}

.f_inner{
	max-width:1100px;
	margin:0 auto;
}
.f-nav > li{margin-bottom:1rem;}
.f-nav > li a{
	display:inline-block;
	color:#555;
}
.f-nav > li a:hover{
	opacity:0.8;
}
@media screen and (min-width: 769px){
	.f-nav{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin-bottom:1rem;
}
.f-nav > li{
	font-size:0;
	vertical-align: bottom; 
	box-sizing: border-box;
	
}
.f-nav > li a{
	padding:1px 1rem;
	box-shadow:1px 0 0 #555,-1px 0 0 #555;
	background:#EEF8FF;
}
}
@media screen and (max-width: 768px){
.f-nav-wrap{
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
	margin-bottom:3rem;
}
.f-nav:nth-child(2n-1){margin-right:2rem;}

}
@media screen and (max-width: 480px){
	.f-nav{flex:1;}
}


.f_inner .item01{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin-top:1rem;
}
.f_inner .item01 .logo-wrap{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}
.f-logo{
	height: 46px;
	margin-right: 1rem;
}
.sub-logo{
	height: 46px;
	margin-right: 1rem;
}
.f-logo img,
.sub-logo img{
	width: auto;
	height: 46px;
}

.add-wrap{
	margin-top:1rem;
}
.add-wrap .add,
.add-wrap .tel{
	margin-bottom:0;
}
.add-wrap .tel a{color:#555;}

.f_inner .icon-list{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin-top:2rem;
}
.f_inner .icon-list li{
	padding: 1px .5rem;
	display: inline-block;
}
.f_inner .icon-list li a{
	display: inline-block;
}
.f_inner .icon-list li a img{
	max-width:24px;
}

.address{
	margin-top:2rem;
	text-align:center;
}



.totop{
	position:fixed;
	z-index:9;
	right:0;
	bottom:0;
}
.totop a{
	display:block;
	background:#333;
	width:45px;
	height:45px;
	position:relative;
}
.totop a:before{
	content:" ";
	position:absolute;
	left: calc(50% - 10px);
	top: calc(50% - 8px);
	width: 20px;
	height: 14px;
	clip-path: polygon(0 14px, 10px 0, 20px 14px, 17px 14px, 10px 4px, 3px 14px);
	background:#fff;
}
@media screen and (max-width: 480px){
	.totop{bottom:0;}
	.totop a{width:45px; height:45px;}
}


/*pagenavi*/
.pagenavi{
	color: #fff;
	margin: 20px auto 20px;
	line-height:2em;
	text-align:center;
	clear: both;
	margin-bottom:2em;
}
.pagenavi a{
	text-decoration:none;
	color: #fff;
	background: #72aed6;
}
.pagenavi a:hover{background:#296e9d;}
.pagenavi a.page-numbers, .pagenavi .current{
	line-height: 33px;
	display: inline-block;
	padding: 0 12px;
	text-decoration: none;
	font-size: 16px;
	border-radius:30px;
}
.pagenavi .current{
	color: #fff;
	background: #a1a1a1;
	font-weight: bold;
}
.pagenavi .prev.page-numbers,
.pagenavi .next.page-numbers{
	background:none;
	color:#1f1f1f;
}
@media screen and (max-width: 480px){
	.pagenavi a.page-numbers, .pagenavi .current{
		font-size:12px;
		padding:0 9px;
		line-height:24px;
	}
	
}

/*記事内*/

#single .entry_content h1:not(.not){
	font-size:clamp(24px, 3.5vw, 40px);
	margin-bottom:2rem;
	font-weight:bold;
}
#single .entry_content h2:not(.not){
	border-bottom:solid 1px #ccc;
	font-size:clamp(22px, 3.5vw, 34px);
	margin-bottom:2rem;
	font-weight:bold;
	border:none;
	padding:0;
}
#single .entry_content h2:not(.not):before{
	content: "";
	background: none;
}
#single .entry_content h3:not(.not){
	font-size:clamp(20px, 3vw, 28px);
	margin-bottom:2rem;
	font-weight:bold;
}
#single .entry_content h4:not(.not){
	font-size:clamp(16px, 2.75vw, 22px);
	margin-bottom:2rem;
	font-weight:bold;
}
#single .entry_content h5:not(.not){
	font-size:clamp(13px, 2.5vw, 18px);
	margin-bottom:2rem;
	font-weight:bold;
}
#single .entry_content h6:not(.not){
	font-size:clamp(14px, 2.25vw, 18px);
	margin-bottom:2rem;
	font-weight:bold;
}
#single .entry_content p:not(.not){
	font-size:clamp(14px, 2vw, 16px);
	margin-bottom:2rem;
}
#single .entry_content b,
#single .entry_content strong{
	font-weight:bold;
}


#single .entry_content a{
	text-decoration:underline;
}

#single .entry_content img{
	display:inline-block;
	margin-bottom:5px;
}

#single .entry_content p.date{margin-bottom:0;color:#999;}


#single .entry_content ul:not(.list01){
	margin-left: 0.5rem;
	margin-bottom:2rem;
}
#single .entry_content ul:not(.list01) > li{
	font-size:clamp(14px, 2vw, 16px);
	line-height: 2em;
	margin: 0 0 1rem 0;
	padding:0 0 0 26px;
	position:relative;
}
#single .entry_content ul:not(.list01) > li:before{
	content: "";
	position:absolute;
	left:7px;
	top:15px;
	width:4px;
	height:4px;
	background:#5A391D;
	display: block;
	border-radius:10px;
}
#single .entry_content ul > li ul(.list01){margin-left:1rem;}
#single .entry_content ol:not(.list-num01) {
	margin-left: 0.5rem;
	margin-bottom:2rem;
	counter-reset: listnum;
}
#single .entry_content ol:not(.list-num01) > li{
	font-size:clamp(14px, 2vw, 16px);
	line-height: 2em;
	margin: 0 0 1rem 0;
	padding:0 0 0 26px;
	position:relative;
}
#single .entry_content ol:not(.list-num01) > li:before{
	position: absolute;
	left: 0px;
	counter-increment: listnum;
	content: counter(listnum) ".";
	width: 23px;
	text-align: right;
}




#single .to-cat{padding:1rem 0;}
#single .to-cat ul{
	display: flex;
	flex-wrap:wrap;
	justify-content: flex-end;
}
#single .to-cat ul li a{
	display:inline-block;
	color:#fe8f93;
	border:solid 1px #fe8f93;
	padding:8px 12px;
	margin-left:8px;
	border-radius:5px;
	font-size:;
}
#single .to-cat ul li a:before{
	content:"\00bb";
	margin-right:4px;
}
#single .to-cat ul li a:hover{
	background:#fe8f93;
	color:#fff;
}


/*次の記事*/
.navigation{
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
}
.navigation .alignleft,
.navigation .alignright{
	width:50%;
	box-sizing:border-box;
	position:relative;
}
.navigation .alignleft{padding-right:1rem;}
.navigation .alignright{padding-left:1rem;text-align:right; /*border-left:solid 1px #ddd;*/}

.navigation .next,
.navigation .prev{
	position:absolute;
	z-index:1;
	top:0;
	background:#61c1be;
	padding:3px 6px;
	color:#fff;
	font-size:12px;
}

.navigation .next{right:0;}
.navigation .prev{left:0;}


.navigation .tit{margin-bottom:0;}
.navigation a{
	display:block;
	padding:2rem 0;
	font-weight:bold;
	position:relative;
}
.navigation .date{
	position:absolute;
	bottom:5px;
	font-size:12px;
	color:#666;
}
.navigation .alignleft .date{left:0;}
.navigation .alignright .date{right:0;}


/* ==========================================================================
   カテゴリー
========================================================================== */

/*
.blog-list{
	margin-bottom:2rem;
}
.blog-list > li{
	border-bottom: solid 1px #555;
}
.blog-list > li a{
	display: flex;
    flex-wrap: wrap;
    padding: 1.5rem 0;
}
.blog-list > li a span{
	width: 6em;
}
.blog-list > li a h2{
	flex:1;
	line-height:1em;
}
*/

/*パンくず*/
#breadcrumb{
	max-width: 1280px;
	margin: 0 auto 1rem;
	box-sizing:border-box;
	padding:8px;
	background:rgb(255,246,225);
	border-radius:4px;
}
#breadcrumb ul{display:flex;flex-wrap:wrap;}
#breadcrumb ul li{
	padding:0 .8rem 0 0;
	font-size:.8rem;
	line-height: 1rem;
}
#breadcrumb ul li a{font-size:.8rem;}
#breadcrumb ul li:not(:first-child):before{
	content:"\003e";
	display:inline-block;
	margin-right:5px;
}


@media screen and (max-width: 769px){
	#breadcrumb ul li{padding:0 0.2rem 0 0 ; font-size:0.7rem;}
	#breadcrumb ul li a{font-size:0.7rem;}
}

/* ==========================================================================
   カテゴリー風の固定ページ共通
========================================================================== */


.catch-txt{max-width:1000px;margin:0 auto 4rem;}

.page-list{
	display:flex;
	flex-wrap:wrap;
}
.page-list li{
	background:#EEF8FF;
	box-shadow:1px 1px 3px rgba(0,0,0,0.1);
	display: flex;
	flex-direction: column;
	box-sizing:border-box;
}

@media screen and (min-width: 1101px){
.page-list li{
	width:calc((100% - 4rem) /3);
	margin-right:2rem;
	margin-bottom:2rem;
	padding:1.5rem;
	
}
.page-list li:nth-child(3n){margin-right:0;}
}


@media screen and (min-width: 769px) and (max-width: 1100px){
.page-list li{
	width:calc((100% - 2rem) /3);
	margin-right:1rem;
	margin-bottom:1rem;
	padding:1rem;
	
}
.page-list li:nth-child(3n){margin-right:0;}
}
@media screen and (min-width: 481px) and (max-width: 768px){
.page-list li{
	width:calc((100% - 1rem) /2);
	margin-right:1rem;
	margin-bottom:1rem;
	padding:1rem;
}
.page-list li:nth-child(2n){margin-right:0;}
}
@media screen and (max-width: 480px){
.page-list li{
	margin-bottom:1rem;
	padding:1rem;
}

}


.page-list figure {
	margin-bottom:1rem;
}
.page-list figure,
.page-list figure img{
	aspect-ratio:1.375/1;
	height:auto;
}


.page-list .item-txt{flex:1;}
.page-list .item-txt h3{
	font-size:clamp(18px, 2.5vw, 24px);
	line-height:1.25em;
	margin-bottom:.5rem;
}
.page-list .item-txt h3 span{
	display:block;
	font-size:clamp(13px, 1.5vw, 16px);
	line-height:1.25em;

}
.page-list .item-txt .data-item{margin-bottom:1.25rem;}
.page-list .btn{margin-bottom:0;}
.page-list .btn a{min-width:unset;width:100%;}

@media screen and (max-width: 480px){
	.page-list .item-txt h3{font-size:clamp(21px, 2.5vw, 24px);}
}


/* ==========================================================================
   main内共通
========================================================================== */
/*メインナビ*/

.m-nav {
	display:flex;
	flex-wrap:wrap;
}
.m-nav > li{
	width:calc((100% - 4rem) / 3);
	margin-right:2rem;
	margin-bottom:2rem;
}
@media screen and (min-width: 769px){
.m-nav > li:nth-child(3n),
.m-nav > li:last-child{
	margin-right:0;
}
}
.m-nav > li a{
	width:100%;
	height:100%;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	box-sizing:border-box;
}
.m-nav > li a:hover{opacity:1;}
.m-nav > li img{
	width:35%;
	max-width:116px;
	object-fit:cover;
	height:100%;
}
.m-nav > li p{
	flex:1;
	font-size:clamp(11px, 1.25rem, 20px);
	font-weight:bold;
	color:#fff;
	letter-spacing:1px;
	line-height:1.5em;
	margin:0 0 0 1.5rem;
	text-shadow:0 0 5px rgba(0,0,0,0.16);
}

@media screen and (min-width: 769px) and (max-width: 1080px){
.m-nav > li{
	width:calc((100% - 2rem) / 3);
	margin-right:1rem;
	margin-bottom:1rem;
}
.m-nav > li p{
	margin-left:1rem;
	font-size:clamp(11px, 1rem, 20px);
}
}
@media screen and (max-width: 768px){
.m-nav > li{
	width:calc((100% - 1rem) / 2);
	margin-right:1rem;
	margin-bottom:1rem;
}
.m-nav > li:nth-child(2n),
.m-nav > li:last-child{
	margin-right:0;
}
.m-nav > li p{
	margin-left:1rem;
	font-size:clamp(11px, 1.125rem, 20px);
}
}
@media screen and (max-width: 480px){

.m-nav > li img{width:30%;}
.m-nav > li p{
	margin-left:.5rem;
	font-size:clamp(10px, 1rem, 20px);
	letter-spacing:0;
	line-height:1.25em;
}

}


/*子ページへのナビ*/
.sub_nav{
	display:flex;
	flex-wrap:wrap;
}
.sub_nav > li {
	width:calc((100% - 4rem ) / 3);
	margin-right: 2rem;
	margin-bottom: 2rem;
}
@media screen and (min-width: 769px){
.sub_nav > li:nth-child(3n),
.sub_nav > li:last-child{
	margin-right:0;
}
}
.sub_nav > li a{
	display:block;
	color:#fff;
	font-weight:bold;
	box-sizing:border-box;
	padding:1rem;
}
@media screen and (min-width: 769px) and (max-width: 1080px){
	.sub_nav > li{
	width:calc((100% - 2rem) / 3);
	margin-right:1rem;
	margin-bottom:1rem;
}
}
@media screen and (max-width: 768px){
	.sub_nav > li{
	width:calc((100% - 1rem) / 2);
	margin-right:1rem;
	margin-bottom:1rem;
}
.sub_nav > li:nth-child(2n),
.sub_nav > li:last-child{
	margin-right:0;
}
}


.sub_nav > li.current a{
	background:#f8f8f8;
	color:#9d9d9d;
	pointer-events: none; 
	cursor: default;
}



/*sectionのタイトル*/
.tit{margin-bottom:3rem;}
.tit h2.h2_tit01{margin-bottom:.5rem;}
.tit .sub-tit{
	color:#888;
	text-align:center;
	letter-spacing:2px;
	font-size:clamp(13px, 2vw, 16px);
}

@media screen and (max-width: 480px){
	.tit{margin-bottom:2rem;}
}

/*囲みで傾けの見出し*/
h1.tit02,
h2.tit02{margin-bottom:2rem;text-align:center;}

h1.tit02 span.clip{font-size:clamp(24px, 3.5vw, 36px);}
h2.tit02 span.clip{font-size:clamp(18px, 2.75vw, 28px);}
h1.tit02 span.clip,
h2.tit02 span.clip{
	display:inline-block;
	letter-spacing:3px;
	font-feature-settings: "palt";
	font-weight:bold;
	padding:1rem;
	color:#fff;
	clip-path: polygon(0 6%, 100% 0%, 100% 100%, 0 94%);
	-webkit-text-stroke: 2px #9f9f9f;
  text-stroke: 2px #9f9f9f;
  paint-order: stroke;
	text-shadow:3px 3px 0 rgb(181 56 56 / 30%);
	line-height:1.25em;
	transform: rotate(-3deg);
}


/*みどころバナー*/
.to-midokoro a{
	display:block;
	width:80%;
	max-width:500px;
	margin:0 auto;
}
.to-midokoro a:hover{
	cursor: pointer;
  transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
	transform: translateY(-8px);
}

/*画像がない場合のシンプルな見出し１*/
.simple_page_top{
	background: #EEF8FF;
	padding: 3rem 1rem;
}
.simple_page_tit{
	max-width:1100px;
	margin:0 auto;
	box-sizing:border-box;
}
.simple_page_tit h1{
font-weight: bold;
	font-size:clamp(28px, 3vw, 48px);
	line-height:1.25em;
	margin-bottom:.5rem;
	font-weight:height;
	
}
.simple_page_tit p{
	font-weight: bold;
	font-size: clamp(13px, 1.5vw, 16px);
	line-height: 1.5em;
}
@media screen and (max-width: 480px){
.simple_page_top{padding:3rem 1rem};
}


/*色違いのtopimg*/
.page_top .page_tit{box-sizing:border-box;}
.page_top .page_tit h1{
	color:#fff;
	font-weight:bold;
	text-shadow: 0 0 5px rgba(0, 0, 0, 0.16);
	font-size:clamp(26px, 3vw, 48px);
	line-height:1.25em;

}
.page_top .page_tit h1 span{
	display:inline-block;
	font-weight:bold;
		margin-top:.5rem;
}
.page_top .page_tit p{
	color:#fff;
	font-weight:bold;
	text-shadow: 0 0 5px rgba(0, 0, 0, 0.16);
	font-size:clamp(13px, 1.5vw, 16px);
	line-height:1.5em;
}
.page_top.noimg{
	height:auto;
}
.page_top.noimg .page_tit{max-width:1100px;margin:0 auto;}



@media screen and (min-width: 481px){
.page_top{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	height:280px;
}
.page_top .page_tit{
	flex:1;
	max-width:550px;
	margin-left:auto;
	padding:2rem 1rem;
}
.page_top .page_img{
	width:50%;
	height: 100%;
}
.page_top .page_img img{
	width: 100%;
  height: 100%;
  object-fit: cover;
}
}
@media screen and (min-width: 1160px){
.page_top .page_tit{padding:3rem 1rem 3rem 0;}
}
@media screen and (min-width: 769px) and (max-width: 1100px){
.page_top{height:200px;}
}
@media screen and (min-width: 481px) and (max-width: 768px){
.page_top{height:160px;}
}
@media screen and (max-width: 480px){
.page_top .page_tit{
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding:3rem 1rem;
}
}



/*datamap*/
.datamap .data-item{margin-bottom:2rem;}
.datamap h3.bg_dot,
.datamap h3.bg_bor{color:#fff; padding:0 1rem;background-position: center center;}

@media screen and (min-width: 580px){
	.datamap .col-wrap{
	display:flex;
	flex-wrap:wrap;
}
	.datamap .data-item{
	width:30%;
	min-width:200px;
	max-width:378px;
	margin-right:2rem;
}
.datamap .map-item{flex:1;}
}


/*dat*/
.data-item{
	
}
.data-item h4.min,
.datamap h4.min{
	color:#FB8CA7;
	font-weight:bold;
	letter-spacing: 2px;
	font-size: clamp(13px, 2vw, 16px);
	margin-bottom:.5rem;
}
.data-item .tel,
.data-item .time,
.data-item .tenkyu{
	position:relative;
	padding-left:1.25rem;
	line-height:1.25em;
	margin-bottom:.5rem;
}

.data-item .tel:before,
.data-item .time:before,
.data-item .tenkyu:before{
	content:"";
	position:absolute;
	left:0;
	top:2px;
	width:1em;
	height:1em;
	background-repeat:no-repeat;
	background-size:100%;
}
.data-item .tel:before{background-image:url(img/icon-tel.svg);}
.data-item .time:before{background-image:url(img/icon-time.svg);}
.data-item .tenkyu:before{background-image:url(img/icon-tenkyu.svg);}


/* ==========================================================================
   section別
========================================================================== */

#index-catch{
	position:relative;
	background-color:#e5f8e6;
	background-image:linear-gradient(white 14rem, #e5f8e6 14rem, #e5f8e6 100%);
	margin-bottom:5rem;
	padding-top:5rem;
	padding-bottom:3rem;
}
#index-catch:before{
	content:"";
	position:absolute;
	left:0;
	top:14rem;
	width:100%;
	height:auto;
	aspect-ratio: 7 / 1;
	background-image:url(img/index/chatch-bg.svg);
	background-repeat:no-repeat;
	background-size:auto 100%;
	background-position:left bottom;
	background-color:#fff;
	z-index:1;
}
#index-catch .to-midokoro{
	position:relative;
	bottom:-2rem;
	margin-bottom:-5rem;
}

#index-catch .inner{
	position:relative;
	z-index:2;
	
}
#index-catch .inner .tit h2{
	max-width:475px;
}


#index-catch .inner .cont{
	display:flex;
	flex-wrap:wrap;
	align-items: flex-end;
}
#index-catch .inner .cont h3{
	font-size: clamp(20px, 2.75vw, 28px);
	
}
#index-catch .inner .cont .item-txt{
	flex:1;
}
#index-catch .inner .cont .item-img{
	flex:1;
	display:flex;
	flex-wrap:wrap;
}
#index-catch .inner .cont .item-img .img01,
#index-catch .inner .cont .item-img .img02{
	margin-left:2rem;
	flex:1;
}
#index-catch .inner .cont .item-img .img01{margin-top:3rem;}
#index-catch .inner .cont .item-img .img02{margin-bottom:3rem;}
@media screen and (max-width: 768px){
	#index-catch .inner .cont .item-img .img01,
	#index-catch .inner .cont .item-img .img02{margin-left:1rem}
}

@media screen and (max-width: 620px){
	#index-catch .inner .cont{display:block;}
	#index-catch .inner .tit h2{width:80%;}
}
/*indexお知らせ*/

@media screen and (min-width: 481px){
	.news-list{
	display:flex;
	flex-wrap:wrap;
}
.news-list > li{
	width: calc((100% - 5em) / 3);
	margin-right: 2.5rem;
	margin-bottom:2.5rem;
}
.news-list > li:nth-child(3n),
.news-list > li:last-child{margin-right:0;}
}
@media screen and (max-width: 480px){

.news-list > li{
	margin-bottom:1rem;
}
.news-list > li a{
	display:flex;
	flex-wrap:wrap;
}
.news-list > li a .img-wrap{
	max-width:100px;
	margin-right:1rem;
}
.news-list li .txt-wrap{
	flex:1;
}
}

.news-list > li a,
.news-list > li a:hover{
	border-bottom:none;
}

.news-list li .img-wrap{
	position: relative;
	width: 100%;
	height: auto;
	aspect-ratio: 340 / 255;
	overflow: hidden;
	margin-bottom: 1rem;
}

.news-list li .img-wrap img{
	width: 100%;
	height: auto;
	aspect-ratio: 340 / 255;
	object-fit: cover;
	object-position: center top;
}

.news-list li .txt-wrap .date{
	display:block;
	color:#999;
	margin-bottom:.5rem;
	font-size: clamp(10px, 1.5vw, 14px);
}
.news-list li .txt-wrap h3{
	color:#555;
	font-size: clamp(13px, 2vw, 16px);
	
}



/*リンク*/
#link{background:#f8f8f8;}
.bnr-list{
	display:flex;
	flex-wrap:wrap;
}
.bnr-list > li{
	margin-bottom:1rem;
}
.bnr-list > li:last-child{margin-right:0;}

.bnr-list > li a{
	border-bottom:none;
	padding:0;
	display:inline-block;
}
.bnr-list > li a:hover{
	border-bottom:none;
}
@media screen and (min-width: 769px) {
	.bnr-list > li{
		width:calc((100% - 4rem) / 5);
		margin-right:1rem;
	}
	.bnr-list > li:nth-child(5n){margin-right:0;}
}

@media screen and (min-width: 481px) and (max-width: 768px){
		.bnr-list > li{
		width:calc((100% - 2rem) / 3);
		margin-right:1rem;
	}
	.bnr-list > li:nth-child(3n){margin-right:0;}
}


@media screen and (max-width: 480px){
	.bnr-list > li{
		width:calc((100% - 1rem) / 2);
		margin-right:1rem;
	}
	.bnr-list > li:nth-child(2n){margin-right:0;}
}

/*三戸町ってどんなとこ？*/
#donna-top{
padding:6rem 2rem;
background-color:#FDF8F1;
}
#donna-top .tit{
	margin-bottom:4rem;
	padding:0 2rem;
}
#donna-top .cont{
	display:flex;
	flex-wrap:wrap;
}
#donna-top .cont .item01{flex:1;}
#donna-top .cont .item01 .top01{
	position:relative;
	left:-1rem;
	margin-right:-1rem;
}
#donna-top .cont .item02{
	display:flex;
	flex-wrap:wrap;
}
#donna-top .cont .item02 .box{
	background-color:#EEE6D9;
	padding:3rem;
	position:relative;
	box-sizing:border-box;
}
#donna-top .cont .item02 .box h2{
	text-align:left;
}
#donna-top .cont .item02 .top02{
	text-align:center;
	position:relative;
}
@media screen and (max-width: 1180px){
#donna-top .cont .item02 .box{padding:2rem;}
}

@media screen and (min-width: 769px){
#donna-top .cont .item02{
	flex-direction:column;
	width:38%;
	max-width:425px;
}
#donna-top .cont .item02 .top02{
	top:-2rem;
	margin-bottom:-2rem;
}
#donna-top .cont .item02 .box .arrow{
	position:absolute;
	left:-4rem;
	bottom:2rem;
}
}

@media screen and (max-width: 768px){
#donna-top .cont{flex-direction:column;}
#donna-top .cont .item01{max-width:480px;margin:0 auto;}
#donna-top .cont .item02{align-items:center;}
#donna-top .cont .item02 .box{
	width:60%;
}
#donna-top .cont .item02 .top02{
	flex:1;
	left:-1rem;
	margin-right:-1rem;
}
#donna-top .cont .item02 .box .arrow{
	position:absolute;
	top:-2rem;
	right:2rem;
	transform: scaleX(-1) rotate(80deg);
}
}
@media screen and (max-width: 480px){
#donna-top{padding:3rem 1rem;}
#donna-top .tit{padding:0;margin-bottom:1rem;}
#donna-top .cont .item01 .top01{
	left:0;
	margin-right:0;
}
#donna-top .cont .item02{flex-direction: column-reverse;}
#donna-top .cont .item02 .box{width:unset;}
#donna-top .cont .item02 .box .arrow{transform: scaleX(1) rotate(90deg);}
#donna-top .cont .item02 .top02{
	width:50%;
	top:-8rem;
	margin: 0 auto -9rem 0;
	}
}


#donna{
	padding:6rem 0;
	overflow:hidden;
}
.donna-box,
.donna-box-row{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	padding-top:4rem;
	z-index:1;
	margin-bottom:4rem;
}
.donna-box-row{flex-direction: row-reverse;}
.donna-box .item-txt,
.donna-box-row .item-txt{
	width:calc((100% - 2rem) / 2);
	box-sizing:border-box;
	aspect-ratio: 4 / 3;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position:relative;
}
.donna-box .item-txt,
.donna-box-row .item-txt{padding:0 4rem 0 4rem;}
.donna-box .item-img,
.donna-box-row .item-img{
	flex:1;
}
.donna-box .item-txt:before,
.donna-box-row .item-txt:before{
	content:"";
	background-repeat:no-repeat;
	background-size:100% auto;
	position:absolute;
	z-index:-1;
	
	top:-6rem;
	width:calc(100% + 12rem);
	height:auto;
	aspect-ratio: 4 / 3;
}
.donna-box .item-txt:before{left:-6rem;}
.donna-box-row .item-txt:before{right:-6rem;}
.donna-box.box01 .item-txt:before{background-image:url(img/donna/bg01.svg);}
.donna-box-row.box02 .item-txt:before{background-image:url(img/donna/bg02.svg);}
.donna-box.box03 .item-txt:before{background-image:url(img/donna/bg03.svg);}
.donna-box-row.box04 .item-txt:before{background-image:url(img/donna/bg04.svg);}
.donna-box.box05 .item-txt:before{background-image:url(img/donna/bg05.svg);}

@media screen and (max-width: 1180px){
.donna-box .item-txt,
.donna-box-row .item-txt{padding:0 2rem;}
h1.tit02, h2.tit02{margin-bottom:1rem;}
}
@media screen and (max-width: 768px){
.donna-box, .donna-box-row{flex-direction: column;padding:2rem 2rem 0;}
.donna-box .item-txt,
.donna-box-row .item-txt{
	width:calc(100% - 2rem);
	max-width:400px;
	aspect-ratio: unset;
	padding-top:4rem;
}
.donna-box .item-txt{margin:0 auto 0 0;}
.donna-box-row .item-txt{margin:0 0 0 auto;}
.donna-box .item-txt:before,
.donna-box-row .item-txt:before{top:-5rem;}
.donna-box .item-img,
.donna-box-row .item-img{
	width:calc(100% - 2rem);
	max-width:480px;
}
.donna-box .item-img{margin:1rem 0 0 auto;}
.donna-box-row .item-img{margin:1rem auto 0 0;}
}

@media screen and (max-width: 480px){
#donna{padding:3rem 0;}
.donna-box .item-txt:before{left: -8rem;}
.donna-box-row .item-txt:before{right:-7rem;}
.donna-box, .donna-box-row{padding:2rem 0 0;}
}


/*パンフレット*/
.panf-wrap .item,
.panf-wrap-col2 .item{margin-bottom:2rem;}

.panf-wrap .item a span,
.panf-wrap-col2 .item a span{display:block;margin-top:.5rem;text-align:center;}
@media screen and (min-width: 481px){
	.panf-wrap-col2{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}
.panf-wrap-col2 .item{
	width:calc((100% - 2rem) / 2);
	margin-right:2rem;
}
.panf-wrap-col2 .item:nth-child(2n),
.panf-wrap-col2 .item:last-child{margin-right:0;}
}


/*さんのへまちあるき*/
ol.walk-list {
	counter-reset: listnum;
}
ol.walk-list li{
	position:relative;
	margin-bottom:3rem;
	padding:0 0 0 5rem;
}
.other-box{margin-top:1rem;}
.other-box .item,
.other-box figure{
	margin-bottom:1rem;
}
@media screen and (min-width: 681px){
ol.walk-list li{
	display:flex;
	flex-wrap:wrap;
}
ol.walk-list li > .item-txt{flex:1;}
ol.walk-list li > figure{width:40%;max-width:400px;margin-left:1rem;}

ol.walk-list li .in-flex{
	width:100%;
	display:flex;
	flex-wrap:wrap;
}
ol.walk-list li .in-flex .item-txt{flex:1;}
ol.walk-list li .in-flex > figure{width:40%;max-width:400px;margin-left:1rem;}

.other-box{
	width:100%;
	display:flex;
	flex-wrap:wrap;
}
.other-box .item,
.other-box figure{
	max-width:330px;
	flex:1;
	margin-right:1rem;
}

.other-box .item:nth-child(3n),
.other-box .item:last-child,
.other-box figure:nth-child(3n),
.other-box figure:last-child{margin-right:0;}

.other-box .item{
	display:flex;
	flex-direction:column;
}
.other-box .item figure{margin-top:auto;flex:unset;}
.other-box .item p{font-size:clamp(11px, 1.5vw, 14px);}
}

ol.walk-list > li:before{
	position: absolute;
	left: 0px;
	counter-increment: listnum;
	content: counter(listnum);
	width: 4rem;
	height:4rem;
	text-align: center;
	background:#F9E346;
	border-radius:50%;
	line-height:4rem;
	font-weight:bold;
	color:#fff;
	text-shadow:0 3px 6px rgba(0,0,0,0.16);
	font-size:2rem;
}
ol.walk-list > li:not(:last-child):after{
	content:"";
	position:absolute;
	bottom:0;
	left:2rem;
	width:1px;
	height:calc(100% - 5rem);
	background:#707070;
}
ol.walk-list > li .walk{
	position:absolute;
	left:0;
	top:-16px;
	font-size:12px;
	width:4rem;
	text-align:center;
	font-weight:bold;
}
ol.walk-list > li .walk2{
	position:absolute;
	left:0;
	top:-16px;
	font-size:12px;
	font-weight:bold;
}
ol.walk-list > li h2{
	line-height:1.25em;
	font-weight:500;
}
ol.walk-list > li h2 span{
	display:block;
	line-height:1em;
	font-size:clamp(13px, 1.5vw, 16px);
}
ol.walk-list > li h3{
font-size:clamp(18px, 2.5vw, 28px);
}
ol.walk-list > li h4{
	font-size:clamp(16px, 2vw, 20px);
}
ol.walk-list > li .data-item p{display:inline-block;margin-right:1rem;}

@media screen and (max-width: 480px){
	ol.walk-list li{
		padding:0 0 0 4rem;
	}
	ol.walk-list li:before{
		width:3rem;
		height:3rem;
		line-height:3rem;
	}
	ol.walk-list > li:not(:last-child):after{
		left:1.5rem;
		height: calc(100% - 4rem);
	}
	ol.walk-list > li .walk{text-align:left;}
}

/*さんのへ開運めぐり*/
.fortune-list > li{
	position:relative;
	margin-bottom:3rem;
	border-bottom: solid 1px #ccc;
	padding-bottom: 3rem;
}

@media screen and (min-width: 681px){
.fortune-list li{
	display:flex;
	flex-wrap:wrap;
}

.fortune-list > li > .item-txt{flex:1;}
.fortune-list > li > figure{width:40%;max-width:400px;margin-left:1rem;}
}

.fortune-list > li h2{
	line-height:1.25em;
	font-weight:500;
}
.fortune-list > li h2.goshuin{
	padding-left:3.5rem;
	position:relative;
}
.fortune-list > li h2.goshuin:before{
	content:"";
	width:3rem;
	height:3.5rem;
	background-image:url(img/better-fortune/icon-goshuin.svg);
	background-repeat:no-repeat;
	background-size:auto 100%;
	background-position:center;
	position:absolute;
	left:0;
	top:5px;
}
.fortune-list > li h2 span{
	display:block;
	line-height:1em;
	font-size:clamp(13px, 1.5vw, 16px);
}
.fortune-list > li .data-item p{display: inline-block;margin-right: 1rem;}
.kaiunbox{
	position:relative;
	padding:1rem 1rem 1rem 3rem;
	margin:calc(1rem + 10px) 0 1rem 40px;
	background:#fffce6;
	border:double 3px #ccb83b;
}
.kaiunbox > h4{
	position:absolute;
	top:-10px;
	left:-40px;
	width:80px;
}
.kaiunbox > h4 img{
	width:80px;
	
}
.kaiunbox > p{
	margin-bottom:0;
	font-weight: 500;
	letter-spacing: 1px;
}

.reijou-box{
	background:#966D41;
	padding:1rem;
	border: 1px solid #ccb83b;
    box-shadow: 0 0 0px 5px #966D41;
}
.reijou-box > h3{
	color:#fff;
	font-size:clamp(15px, 2.25vw, 20px);
}
.reijou-box > p{
	margin-bottom:0;
	color:#fff;
}

/*リンクページ*/
.item-link{
	padding:1rem;
	margin-bottom:1rem;
	border:solid 1px #ccc;
}
.item-link h3{
	font-size:clamp(15px, 2.5vw, 24px);
	margin-bottom:0;
}
.item-link p{
	margin-bottom:0;
}

/*会員リスト*/
#menber-page table th a,
#menber-page table td a{
	overflow-wrap: anywhere;
}

/*お問合せ*/

#contact{
	
}
@media screen and (min-width: 681px){
#contact .col{
	display: flex;
	flex-wrap: wrap;
}
#contact .col .box{
	width: calc((100% - 2rem) / 2);
}
#contact .col .box:nth-child(1){
	margin-right:2rem;
}
}

#contact .box{
	margin-bottom: 1rem;
}
#contact .box .tit{
	display: flex;
	flex-wrap: wrap;
	margin-bottom:0;
}
#contact .box h3{
	font-weight: bold;
	font-size: clamp(14px, 2vw, 18px);
	margin-bottom: 1rem;
}
#contact .box h3 span{
	color:#dc3232;
	    font-weight: bold;
    margin-left: 8px;
}
#contact .box input,
#contact .box textarea{
	padding: 1rem;
	width: 100%;
	box-sizing: border-box;
	border: solid 1px #CBC9C6;
	line-height: 2em;
	border-radius: 10px;
	font-size: clamp(14px, 2vw, 18px);
}
.form-agreement{
	font-weight: bold;
font-size: clamp(14px, 2vw, 18px);
	margin-bottom: 2rem;
}
.form-agreement input[type="checkbox"]{
	    width: 20px;
    height: 20px;
    vertical-align: sub;
}
#contact .box .wpcf7-form-control-wrap{display:block;}
.form-submit{
	text-align:center;
}
.form-submit input[type="submit"]{
	padding: 0 3em;
	line-height: 70px;
	font-size: clamp(16px, 2.5vw, 20px);
	font-weight: bold;
	background: #6aa9d6;
	border: none;
	box-sizing: border-box;
	color: #fff;
	letter-spacing: 1px;
	border-radius: 35px;
}

/*まつり・イベント*/
#haru{background:#fbecec;}
#natsu{background:#e5ecef;}
#aki{background:#f9f0ea;}
#fuyu{background:#f0e9f3;}


.season-tit{
	position:relative;
	z-index:1;
}
.season-tit span{
	color:#fff;
	font-weight:bold;
}

.season-tit span:before{
	content:"";
	width:2em;
	height:2em;
	position:absolute;
	left:-0.5em;
	top:-0.125em;
	z-index:-1;
}


#haru .season-tit span:before {background:#db6d6d;}
#natsu .season-tit span:before{background:#83c1e3;}
#aki .season-tit span:before  {background:#e7894d;}
#fuyu .season-tit span:before {background:#b27ac9;}

.event-box{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:3rem;
}
.event-box .item-txt{flex: 1;}

@media screen and (min-width: 681px){
.event-box figure{
	width: 40%;
	max-width: 400px;
	margin-left: 1rem;
}
}
.month-tit{
	position:relative;
	z-index:1;
	margin:40px 0 2rem 0;
	line-height:1.25em;
}
.month-tit span{
	font-size:clamp(13px, 2vw ,18px);
	line-height:1.125em;
	font-weight:bold;
}
.month-tit:before{
	content:"";
	width:40px;
	height:40px;
	position:absolute;
	left:-1rem;
	top:0;
	transform: rotate(45deg);
	z-index:-1;
}

.month-tit.mon01:before{background-color:#f7c0c0;}/*春*/
.month-tit.mon02:before{background-color:#bcdef1;}/*夏*/
.month-tit.mon03:before{background-color:#ffd1b4;}/*秋*/
.month-tit.mon04:before{background-color:#dcc2e7;}/*冬*/





