@charset "utf-8";
/* ------------------------------------------------------- */
/* Share ------------------------------------------------- */
/* ------------------------------------------------------- */

/* display */
.dispinline {display: inline;}
.dispb {display: block!important;}
.dispinlineb {display: inline-block;}
.dispnone {display: none;}
.nonePc {display: none;}
.oHidden {overflow: hidden;}

@media only screen and (max-width:999px) {
    .nonePc {display: inline-block;}
    .noneSp {display:none;}
}

/* margin */
.mauto {margin-left: auto;margin-right: auto;}
.mb0 {margin-bottom: 0px!important;}
.mb1 {margin-bottom: 1px!important;}
.mb5 {margin-bottom: 5px!important;}
.mb10 {margin-bottom: 10px!important;}
.mb15 {margin-bottom: 15px!important;}
.mb20 {margin-bottom: 20px!important;}
.mb25 {margin-bottom: 25px!important;}
.mb30 {margin-bottom: 30px!important;}
.mb35 {margin-bottom: 35px!important;}
.mb40 {margin-bottom: 40px!important;}
.mb45 {margin-bottom: 45px!important;}
.mb50 {margin-bottom: 50px!important;}
.mb55 {margin-bottom: 55px!important;}
.mb60 {margin-bottom: 60px!important;}
.mb65 {margin-bottom: 65px!important;}
.mb70 {margin-bottom: 70px!important;}
.mb75 {margin-bottom: 75px!important;}
.mb80 {margin-bottom: 80px!important;}
.mb85 {margin-bottom: 85px!important;}
.mb90 {margin-bottom: 90px!important;}
.mb95 {margin-bottom: 95px!important;}
.mb100 {margin-bottom: 100px!important;}
.mt5 {margin-top: 5px!important;}
.mt10 {margin-top: 10px!important;}
.mt15 {margin-top: 15px!important;}
.mt20 {margin-top: 20px!important;}
.mt25 {margin-top: 25px!important;}
.mt30 {margin-top: 30px!important;}
.mt35 {margin-top: 35px!important;}
.mt40 {margin-top: 40px!important;}
.mt45 {margin-top: 45px!important;}
.mt50 {margin-top: 50px!important;}
.mt55 {margin-top: 55px!important;}
.mt60 {margin-top: 60px!important;}
.mt65 {margin-top: 65px!important;}
.mt70 {margin-top: 70px!important;}
.mt75 {margin-top: 75px!important;}
.mt80 {margin-top: 80px!important;}
.mt85 {margin-top: 85px!important;}
.mt90 {margin-top: 90px!important;}
.mt95 {margin-top: 95px!important;}
.mt100 {margin-top: 100px!important;}

/* padding */
.pb0 {padding-bottom: 0px!important;}
.pb1 {padding-bottom: 1px!important;}
.pb5 {padding-bottom: 5px!important;}
.pb10 {padding-bottom: 10px!important;}
.pb15 {padding-bottom: 15px!important;}
.pb20 {padding-bottom: 20px!important;}
.pb25 {padding-bottom: 25px!important;}
.pb30 {padding-bottom: 30px!important;}
.pb35 {padding-bottom: 35px!important;}
.pb40 {padding-bottom: 40px!important;}
.pb45 {padding-bottom: 45px!important;}
.pb50 {padding-bottom: 50px!important;}
.pb55 {padding-bottom: 55px!important;}
.pb60 {padding-bottom: 60px!important;}
.pb65 {padding-bottom: 65px!important;}
.pb70 {padding-bottom: 70px!important;}
.pb75 {padding-bottom: 75px!important;}
.pb80 {padding-bottom: 80px!important;}
.pb85 {padding-bottom: 85px!important;}
.pb90 {padding-bottom: 90px!important;}
.pb95 {padding-bottom: 95px!important;}
.pb100 {padding-bottom: 100px!important;}
.pt5 {padding-top: 5px!important;}
.pt10 {padding-top: 10px!important;}
.pt15 {padding-top: 15px!important;}
.pt20 {padding-top: 20px!important;}
.pt25 {mpadding-top: 25px!important;}
.pt30 {padding-top: 30px!important;}
.pt35 {padding-top: 35px!important;}
.pt40 {padding-top: 40px!important;}
.pt45 {padding-top: 45px!important;}
.pt50 {padding-top: 50px!important;}
.pt55 {padding-top: 55px!important;}
.pt60 {padding-top: 60px!important;}
.pt65 {padding-top: 65px!important;}
.pt70 {padding-top: 70px!important;}
.pt75 {padding-top: 75px!important;}
.pt80 {padding-top: 80px!important;}
.pt85 {padding-top: 85px!important;}
.pt90 {padding-top: 90px!important;}
.pt95 {padding-top: 95px!important;}
.pt100 {padding-top: 100px!important;}

/* width */
.w100 {width: 100%;}
.w50, .w50sp100 {width: 50%;}
@media only screen and (max-width:999px) {
    .w50sp100 {width: 100%;}
}

/* vertical align */
.vaTop {vertical-align: top;}
.vaBottom {vertical-align: bottom;}
.vaMiddle {vertical-align: middle;}
.aiCenter {align-items: center;}

/* indent */
.indent {text-indent: 1.6rem;}
.indent1 {
	margin-left: 1.6rem;
	text-indent: -1.6rem;
}

/* 改ページ */
.bpa {page-break-before: always;}

/* font ---------------------------------------------------*/

/* font style */
strong, .bold {font-weight: bold;}
.nbold {font-weight: normal;}
.underLine {text-decoration: underline;}

/* font size */
.small1 {font-size: 1.4rem;}
.small2 {font-size: 1.2rem;}
.small09 {font-size: 0.9em;}
.small08 {font-size: 0.8em;}
.small07 {font-size: 0.7em;}
.small06 {font-size: 0.6em;}
.small05 {font-size: 0.5em;}
.small04 {font-size: 0.4em;}
.small03 {font-size: 0.3em;}
.small02 {font-size: 0.2em;}
.small01 {font-size: 0.1em;}
.big1 {font-size: 1.8rem;}
.big2 {font-size: 2.0rem;}
.big11{font-size: 1.1em;}
.big12{font-size: 1.2em;}
.big13{font-size: 1.3em;}
.big14{font-size: 1.4em;}
.big15{font-size: 1.5em;}
.big16{font-size: 1.6em;}
.big17{font-size: 1.7em;}
.big18{font-size: 1.8em;}
.big19{font-size: 1.9em;}
.big20{font-size: 2.0em;}


/* text align */
.txtRight {text-align: right;}
.txtLeft {text-align: left;}
.txtCenter, .txtCenter2 {text-align: center;}
@media only screen and (max-width:999px) {
    .txtCenter2{text-align: left;}
}

/* font color */
.fcRed {color: #FF0004;}
.fcBlue {color: #06C;}
.fcWhite {color: #fff;}

/* font family */
.fontFamily1 {
	font-family: Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.themeWord{
    display:inline-block;
    margin:0 5px;
    font-size:2.0rem;
    font-weight:700;
    background:linear-gradient(transparent 60%, #ff6 60%);
}
/* 枠 */
.bd1{
    border:1px solid #ccc;
}
/* image -------------------------------------------------*/
/*イメージのはみ出し防止*/
img {
	max-width: 100%;
	height:auto;
}
/* image align */
img.imgCenter {
	margin-left: auto;
	margin-right: auto;
	display: block;
}
img.imgLeft {
	padding: 0px 25px 25px 0px;
	float: left;
}
img.imgRight {
	padding: 0px 0px 25px 25px;
	float: right;
}
/* image align スマートフォンでフロート解除 */
img.imgLeftN1 {
	padding: 0 25px 25px 0;
	float: left;
}
img.imgRightN1 {
	padding: 0 0 25px 25px;
	float: right;
}
@media only screen and (max-width:999px) {
    img.imgLeftN1, img.imgRightN1 {
        padding: 0;
        float: none;
        display: block;
        margin: 0 auto 15px;
    }
}
/* link ---------------------------------------------------*/
a {
	text-decoration: underline;
	color: #202a6e;
}
a:hover {
	color: #333;
}

/*blank用ポイント付*/
#container a[target="_blank"]::after,
.externalLink::after {
	font-family: "Font Awesome 5 Free";
	content: "\f35d";
	font-weight: 900;
    margin-left: 5px;
    display: inline-block;
}
#container a[target="_blank"].noExternal::after { display: none; }

/* ボタン用 */
.buttonLink1, .buttonLink2 {
	overflow: hidden;
	margin: 0 auto 25px;
	padding: 0;
	border-radius:6px;
	text-align:center;
}
.buttonLink1 a, .buttonLink2 a {
	display: block;
	position: relative;
	color: #fff;
	text-decoration: none;
	padding: 10px 30px 10px 5px;
}
.buttonLink1 a {background: #666;}
.buttonLink2 a {background: #ff9900;}
.buttonLink1 a:hover {background: #999;}
.buttonLink2 a:hover {background: #ffcc00;}
.buttonLink1 a::before, .buttonLink2 a::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f138";
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -17px;
	color: #fff;
	font-size: 2.0rem;
}

/*もっとみる*/
.linkMore1,.linkMore2 {
	text-align: center;
    margin-bottom: 25px;
}
.linkMore1 a {
	display: inline-block;
	border: 1px solid #ccc;
	padding: 10px 50px 10px 25px;
	position: relative;
	text-decoration: none;
	border-radius: 10px;
    background: rgba(255,255,255,0.3);
    transition: all 0.3s ease;
}
.linkMore1 a:hover {background: rgba(255,255,255,0.8);}
.linkMore1 a::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f101";
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -12px;
}
.linkMore2{}
.linkMore2 a {
	display: inline-flex;

	padding: 5px 25px 5px 25px;
	text-decoration: none;
	border-radius: 10px;
    background: rgba(214, 0, 108,1);
    transition: all 0.3s ease;
    box-shadow: 0px 3px 0px 0px rgba(151, 0, 44,1);
    color:#fff;
}
.linkMore2 a:hover {
    box-shadow: 0px 3px 0px 0px rgba(151, 0, 44,1) inset;
}
.linkMore2 a::before {
	display:none;
}
/*アンカーリンク用*/
.anchor::before {
   content:"";
   display:block;
   /*height:130px;
   margin:-130px 0 0;*/
}
.btnLink{
	display: inline-block;
}
.btnLink a{
	padding: 10px 20px;
	border-radius: 5px;
	background: #4f4f4f;
	color: #fff;
	text-decoration: none;
	transition: 0.3s;
}
.btnLink a:hover{
	opacity: 0.8;
	transition: 0.3s;
}
@media only screen and (max-width:999px) {
	.anchor::before {
	   content:"";
	   display:block;
       height:50px;
       margin:-50px 0 0;
	}
}

/*ページ内リンクリスト1*/
.tagBox .pageLinkList1 {
    display: flex;
    flex-wrap: wrap;
}
.tagBox .pageLinkList1 li {
    width: calc((100% - 10px) / 3);
    list-style-type: none;
	margin: 0 4.9px 5px 0;
}
.tagBox .pageLinkList1 li:nth-of-type(3n) {margin-right: 0;}
.tagBox .pageLinkList1 li a {
    padding: 10px 20px 10px 10px;
    border-radius: 5px;
    background: #f5f5f5;
    text-align: center;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}
.tagBox .pageLinkList1 li a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0da";
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    width: 20px;
    height: 100%;
    justify-content: center;
    align-items: center;
}
@media only screen and (max-width:999px) {
    .tagBox .pageLinkList1 {
        display: block;
    }
    .tagBox .pageLinkList1 li {
        width: 100%;
        margin: 0 0 5px 0;
    }
}

/*ページ内リンクリスト2*/
.tagBox .pageLinkList2 {
    display: flex;
    flex-wrap: wrap;
	margin-bottom: 100px;
}
.tagBox .pageLinkList2 li {
    width: calc((100% - 5px) / 2);
    list-style-type: none;
	margin: 0 4.9px 5px 0;
}
.tagBox .pageLinkList2 li:nth-of-type(2n) {margin-right: 0;}
.tagBox .pageLinkList2 li a {
    padding: 10px 20px 10px 10px;
    /*border-radius: 5px;
    background: #f5f5f5;*/
    text-align: center;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
	color: #000;
	border: 2px solid #000;
	transition: 0.3s;
}
.tagBox .pageLinkList2 li a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0da";
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    width: 20px;
    height: 100%;
    justify-content: center;
    align-items: center;
}
.tagBox .pageLinkList2 li a:hover{
	background: #000;
	color: #fff;
	transition: 0.3s;
}
@media only screen and (max-width:999px) {
    .tagBox .pageLinkList2 {
        display: block;
		margin-bottom: 50px;
    }
    .tagBox .pageLinkList2 li {
        width: 100%;
        margin: 0 0 5px 0;
    }
}

/* file type icon - text */
/*a[href$=".pdf"],
a[href$=".docx"], a[href$=".doc"],
a[href$=".xlsx"], a[href$=".xls"],
a[href$=".pptx"], a[href$=".ppt"],
a[href$=".zip"] {
    position: relative;
    text-decoration: none;
    color: #000;
}
a[href$=".pdf"]:hover,
a[href$=".docx"]:hover, a[href$=".doc"]:hover,
a[href$=".xlsx"]:hover, a[href$=".xls"]:hover,
a[href$=".pptx"]:hover, a[href$=".ppt"]:hover,
a[href$=".zip"]:hover {
    color: #658dc8;
}
a[href$=".pdf"]::before,
a[href$=".docx"]::before, a[href$=".doc"]::before,
a[href$=".xlsx"]::before, a[href$=".xls"]::before,
a[href$=".pptx"]::before, a[href$=".ppt"]::before,
a[href$=".zip"]::before {
    font-family: "UDデジタル教科書体 R JIS2004", UDDigiKyokasho R JIS2004;
    padding: 3px 6px;
    border-radius: 3px;
    position: relative;
    top: -2px;
    font-size: 1.1rem!important;
    margin-right: 5px;
}
a[href$=".pdf"]::before {
    content: "PDF"!important;
    background: #f00;
	color: #fff;
}
a[href$=".docx"]::before, a[href$=".doc"]::before {
    content: "Word"!important;
    background: #295394;
	color: #fff;
}
a[href$=".xlsx"]::before, a[href$=".xls"]::before {
    content: "Excel"!important;
    background: #007c00;
	color: #fff;
}
a[href$=".pptx"]::before, a[href$=".ppt"]::before {
    content: "PPT"!important;
    background: #ca4223;
	color: #fff;
}
a[href$=".zip"]::before {
    content: "zip"!important;
    background: #e2860f;
	color: #fff;
}*/

/* float ----------------------------------------------*/
.floatLeft {float: left;}
.floatRight {float: right;}

/* 2つ並びのボックス スマートフォンで解除 */
.floatLeft2col1,
.floatRight2col1 {
	width: calc((100% - 25px) / 2);
	margin-bottom: 10px;
}
.floatLeft2col1 {
	float: left;
	clear: left;
}
.floatRight2col1 {float:right;}
@media only screen and (max-width:999px) {
    .floatLeft2col1,
    .floatRight2col1 {
        width: 100%;
        float: none;
    }
}

/* box -----------------------------------------------*/
.box1, .box2, .box3 {
	padding: 15px;
	margin-bottom: 25px;
}
.box1 {
	border: 1px solid #ccc;
}
.box2 {
	background: #dcf5fd;
}
.box3 {
	background: #eef6ed;
}

@media only screen and (max-width:999px) {
    .box1, .box2, .box3 {
        padding: 10px;
    }
}

/*container 幅固定用box*/
/*
.contentsBox1：スマートフォンで幅100%＋左右余白なし
.contentsBox2：スマートフォンで幅100%＋左右余白あり
*/
.contentsBox1,
.contentsBox2 {
	max-width: 1115px;
	min-width: 1000px;
	margin:0 auto;
}
@media only screen and (max-width:999px) {
	.contentsBox1,
	.contentsBox2 {
		width:100%;
		min-width: 100px;
	}
	.contentsBox2{
		padding:0 15px;
	}
}

/*flexBox1 左右50%*/
/*flexBox2 左260px*/
/*flexBox3 右260px*/
/*flexBox4 均等3つ並び*/
/*flexBox5 左355px*/
/*flexBox6 右355px*/
.flexBox1,
.flexBox2,
.flexBox3,
.flexBox4,
.flexBox5,
.flexBox6{
    display: flex;
    margin-bottom: 25px;
}
.flexBox1 > div:nth-of-type(1),
.flexBox2 > div:nth-of-type(1),
.flexBox3 > div:nth-of-type(1),
.flexBox5 > div:nth-of-type(1),
.flexBox6 > div:nth-of-type(1){
    margin-right: 25px;
}
.flexBox1 > div {width: calc((100% - 25px) / 2);}
.flexBox2 > div:nth-of-type(1),
.flexBox3 > div:nth-of-type(2){
    width: 260px;
}
.flexBox5 > div:nth-of-type(1),
.flexBox6 > div:nth-of-type(2){
    width: 355px;
}
.flexBox2 > div:nth-of-type(2),
.flexBox3 > div:nth-of-type(1){
    width: calc(100% - 285px);
}
.flexBox5 > div:nth-of-type(2),
.flexBox6 > div:nth-of-type(1){
    width: calc(100% - 380px);
}
.flexBox4 > div {
    width: calc((100% - 50px) / 3);
    margin-right: 24.9px;
}
.flexBox4 > div:nth-of-type(3) {margin-right: 0;}
@media only screen and (max-width:999px) {
    .flexBox1,
    .flexBox2,
    .flexBox3,
    .flexBox4,
	.flexBox5,
	.flexBox6{
        display: block;
    }
    .flexBox1 > div:nth-of-type(1),
    .flexBox2 > div:nth-of-type(1),
    .flexBox3 > div:nth-of-type(1),
    .flexBox4 > div,
	.flexBox5 > div:nth-of-type(1),
	.flexBox6 > div:nth-of-type(1){
        width: 100%;
        margin: 0 0 15px 0;
    }
    .flexBox1 > div:nth-of-type(2),
    .flexBox2 > div:nth-of-type(2),
    .flexBox3 > div:nth-of-type(2),
    .flexBox4 > div:nth-of-type(3),
	.flexBox5 > div:nth-of-type(2),
    .flexBox6 > div:nth-of-type(2){
        width: 100%;
        margin-bottom: 0;
    }
}

/* dl ----------------------------------------------*/
dl.dl1 {
	margin-bottom: 25px;
}
.dl1 dt,
.dl1 dd {
	border-left:5px solid #4b8345;
	padding: 10px;
}
.dl1 dt {
	font-weight: bold;
	background: #f5f5f5;
}
.dl1 dd {
	margin-bottom: 15px;
}
.dl1 dd:last-child {
	margin-bottom: 0;
}

/* ------------------------------------------------------- */
/* contents ---------------------------------------------- */
/* ------------------------------------------------------- */
#container p {
    margin-bottom: 25px;
}
.topContents {
	width: 100%;
	min-width: 1000px;
	margin: 0;
	overflow: hidden;
}

@media only screen and (max-width:999px) {
	.topContents {
		min-width: 0px;
		margin: 0;
		/*padding-top: 50px;*/
	}
}

/* pagetitle navi ----------------------------------------------*/
.pageTitle {
	/*background: #f5f5f5;*/
	background: url("../images/base/pagetitle.webp") top / cover no-repeat;
	padding: 15px 0;
	margin-bottom: 15px;
	/*box-shadow:0 10px 10px -10px rgb(0 0 0 / 10%) inset;*/
	/*text-align: center;*/
	color: #fff;
}
.pageTitle h1,
.single-event .pageTitle > div{
	max-width: 1115px;
	min-width: 1000px;
	margin: 0 auto;
	font-size: 3.0rem;
	font-family: 'Roboto','Noto Sans JP', sans-serif;
	font-weight: 700;
    text-shadow:0px 0px 10px rgba(42, 47, 55, 0.5);
}
.single-event .pageTitle > div{
    line-height:1.4;
}
.single-event .pageTitle > div > span{
    font-size:0.6em;
    display:inline-block;
    margin-bottom:10px;
    font-weight:normal;
}
.breadcrumbs {
	font-size: 1.3rem;
	max-width: 1115px;
	min-width: 1000px;
	margin: 0 auto 15px;
}
.breadcrumbs br {display: none;}

@media only screen and (max-width:999px) {
	.pageTitle {
		padding:15px;
		margin-bottom: 5px;
	}
	.pageTitle h1,
    .single-event .pageTitle > div {
		width: 100%;
		min-width: 100px;
		margin: 0 auto;
		font-size: 2.3rem;
	}
	.breadcrumbs {
		width: 100%;
		min-width: 100px;
		margin: 0 auto 15px;
		overflow-x: scroll;
		white-space: nowrap;
		padding: 5px 15px;
	}
	.breadcrumbs::-webkit-scrollbar {
		height: 5px;
	}
	.breadcrumbs::-webkit-scrollbar-track {
	}
	.breadcrumbs::-webkit-scrollbar-thumb {
		background-color: rgba( 100, 100, 100, 0.2);
	}
}

/* ------------------------------------------------------- */
/* Move Top ---------------------------------------------- */
/* ------------------------------------------------------- */
/* ページ上部に戻る スクロールで自動表示 */
#pageTop {
    width: 45px;
    height: 45px;
    display: none;
    position: fixed;
	right: 15px;
	bottom: 15px;
    z-index: 5;
}
#pageTop div {
    display: flex;
    width: 45px;
    height: 45px;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.8);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    border-radius: 50%;
}
#pageTop div span {display: none;}
#pageTop div:hover {background: rgba(0,0,0,0.5);}
#movePageTop {
    color: #fff;
    text-decoration: none;
    cursor: pointer;
    display: flex;
    width: 45px;
    height: 45px;
    align-items: center;
    justify-content: center;
}
#movePageTop::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f062";
    color: #fff;
    font-size: 3.0rem;
}
@media only screen and (max-width:999px) {
    #pageTop {
		right: 5px;
		bottom:5px;
    }
}

/* ------------------------------------------------------- */
/* iframe ----------------------------------------------- */
/* ------------------------------------------------------- */
iframe.googlemap {
	width: 100%;
	height: 400px;
}
@media only screen and (max-width:999px) {
	iframe.googlemap {
		height: 300px;
	}
}

/* ------------------------------------------------------- */
/* デフォルトのHTMLタグでスタイルを適用させる------------- */
/* ------------------------------------------------------- */
.tagBox {
}

/*改行する*/
.tagBox {
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.wordBreakTable {
	width: 100%;
	table-layout: fixed;
}
.wordBreakTable td {
	word-wrap: break-word;
	overflow-wrap: break-word;
}

/*デフォルトスタイル復帰*/
.tagBox em{font-style:italic;}

/*wpスタイル復帰*/
img.aligncenter {
    display: block;
    margin: 0 auto;
}

/* list ----------------------------------------------*/
.tagBox ul.ul1, .tagBox ol.ol1, 
.tagBox ul.float2col1, .tagBox ul.float3col1, .tagBox ul.float3col2, .tagBox ul.float4col1, .tagBox ul.float4col2,
ul.ul1, ol.ol1, 
ul.float2col1, ul.float3col1, ul.float3col2, ul.float4col1, ul.float4col2 {
	margin-bottom: 25px;
    overflow: hidden;
}

/*デフォルト*/
.tagBox ul, .tagBox ol {
	margin-bottom: 25px;
	overflow: hidden;
}
.tagBox ul li,
ul.ul1 li{
	list-style-type: disc;
	margin: 0 0 10px 20px;
}
.tagBox ol li,
ol.ol1 li {
	list-style-type: decimal;
	margin: 0 0 10px 30px;
}
.tagBox ul li ul, .tagBox ol li ul {
	margin-bottom: 0;
}
.tagBox ul li ul li, .tagBox ol li ul li,
ul.ul1 li ul li, ol.ol1 li ul li {
	list-style-type: circle;
}

/*リストの飾り不要時*/
.tagBox ul.listNonStyle li,
.tagBox ol.listNonStyle li {
    list-style-type: none;
	margin: 0 0 10px 0;
}

/* 2つ並びのリスト 999px以下で1列に */
.tagBox ul.float2col1 li,
ul.float2col1 li{
    list-style-type: none;
	width: calc((100% - 25px) / 2);
	float: left;
    margin: 0 24.9px 15px 0;
}
.tagBox ul.float2col1 li:nth-child(odd), ul.float2col1 li:nth-child(odd) {clear: left;}
.tagBox ul.float2col1 li:nth-child(even), ul.float2col1 li:nth-child(even) {margin-right: 0;}
@media only screen and (max-width:999px) {
    .tagBox ul.float2col1 li,
    ul.float2col1 li{
        width: 100%;
        float: none;
        margin: 0 0 15px 0;
    }
}

/* 3つ並びのリスト 999px以下で1列に */
.tagBox ul.float3col1 li,
ul.float3col1 li{
    list-style-type: none;
	width: calc((100% - 50px) / 3);
	float: left;
	margin: 0 24.9px 15px 0;
}
.tagBox ul.float3col1 li:nth-child(3n), ul.float3col1 li:nth-child(3n) {margin-right: 0;}
.tagBox ul.float3col1 li:nth-child(3n+1), ul.float3col1 li:nth-child(3n+1) {clear: left;}
@media only screen and (max-width:999px) {
	.tagBox ul.float3col1 li,
    ul.float3col1 li{
        width: 100%;
        float: none;
        margin: 0 0 15px 0;
	}
}

/* 3つ並びのリスト 999px以下で1列に Flex版 */
.tagBox ul.float3col2,
ul.float3col2 {
    display: flex;
    flex-wrap: wrap;
}
.tagBox ul.float3col2 li,
ul.float3col2 li{
    list-style-type: none;
	width: calc((100% - 50px) / 3);
	margin: 0 24.9px 15px 0;
}
.tagBox ul.float3col2 li:nth-child(3n), ul.float3col2 li:nth-child(3n) {margin-right: 0;}

@media only screen and (max-width:999px) {
    ul.float3col2 li,
    .tagBox ul.float3col2 li{
       width: calc((100% - 15px) / 2);
        float: none;
        margin: 0 0 15px 0;
    }
    ul.float3col2 li:nth-child(3n), .tagBox ul.float3col2 li:nth-child(3n) {margin:0 0 15px 0;}
    
	ul.float3col2 li:nth-child(2n), .tagBox ul.float3col2 li:nth-child(2n) {float: right; margin-left: 15px;}
	ul.float3col2 li:nth-child(2n+1), .tagBox ul.float3col2 li:nth-child(2n+1) {float: left; clear: right;}
}

/* 4つ並びのリスト 999px以下で1列に */
ul.float4col1 li,
.tagBox ul.float4col1 li{
    list-style-type: none;
	width: calc((100% - 75px) / 4);
	float: left;
	margin: 0 24.9px 15px 0;
}
ul.float4col1 li:nth-child(4n), .tagBox ul.float4col1 li:nth-child(4n) {margin: 0 0 15px 0;}
ul.float4col1 li:nth-child(4n+1), .tagBox ul.float4col1 li:nth-child(4n+1) {clear: left;}
@media only screen and (max-width:999px) {
    ul.float4col1 li,
    .tagBox ul.float4col1 li{
        width: 100%;
        float: none;
        margin: 0 0 15px 0;
    }
}

/* 4つ並びのリスト 999px以下で2列に */
ul.float4col2 li,
.tagBox ul.float4col2 li{
    list-style-type: none;
	width: calc((100% - 75px) / 4);
	float: left;
	margin: 0 24.9px 15px 0;
}
ul.float4col2 li:nth-child(4n), .tagBox ul.float4col2 li:nth-child(4n) {margin: 0 0 15px 0;}
ul.float4col2 li:nth-child(4n+1), .tagBox ul.float4col2 li:nth-child(4n+1) {clear: left;}
@media only screen and (max-width:999px) {
    ul.float4col2 li,
    .tagBox ul.float4col2 li{
       width: calc((100% - 15px) / 2);
        float: none;
        margin: 0 0 15px 0;
    }
    ul.float4col2 li:nth-child(4n), .tagBox ul.float4col2 li:nth-child(4n) {margin:0 0 15px 0;}
    ul.float4col2 li:nth-child(4n+1), .tagBox ul.float4col2 li:nth-child(4n+1) {float: none;}
    
	ul.float4col2 li:nth-child(2n), .tagBox ul.float4col2 li:nth-child(2n) {float: right;}
	ul.float4col2 li:nth-child(2n+1), .tagBox ul.float4col2 li:nth-child(2n+1) {float: left; clear: right;}
}

/* 横並びリストの画像はPCでも自動で幅最大100%に設定 */
.tagBox ul.float2col1 img, .tagBox ul.float3col1 img, .tagBox ul.float3col2 img, .tagBox ul.float4col1 img,
ul.float2col1 img, ul.float3col1 img, ul.float3col2 img, ul.float4col1 img{
	max-width: 100%;
	height: auto;
}

/*横に並ぶ背景色付きのリスト*/
.tagBox ul.boxList1,
.tagBox ul.boxList2 {
    display: flex;
    flex-wrap: wrap;
}
.tagBox ul.boxList1 li,
.tagBox ul.boxList2 li{
    list-style: none;
    margin: 0 10px 10px 0;  
    display: flex;
    align-items: center;
    background: #f5f5f5;
    padding: 15px 5px;
    border-radius: 5px;
    text-align: center;
    justify-content: center;
}
.tagBox ul.boxList1 li{width: calc((100% - 30px) / 4);}
.tagBox ul.boxList2 li{width: calc((100% - 30px) / 3);}
.tagBox ul.boxList1 li:nth-of-type(4n),
.tagBox ul.boxList2 li:nth-of-type(3n){margin-right: 0;}
@media only screen and (max-width:999px) {
    .tagBox ul.boxList1,
    .tagBox ul.boxList2 {
        display: block;
    }
    .tagBox ul.boxList1 li,
    .tagBox ul.boxList2 li{
        display: block;
        width: 100%;
        margin: 0 0 5px 0;
        padding: 10px 5px;
        background: none;
        border-bottom: 1px dotted #ccc;
    }
}

/* table ----------------------------------------------*/
.table1, .table1 td, .table1 th,
.tagBox table, .tagBox table td, .tagBox table th{
	border: 1px solid #ccc;
	box-sizing: border-box;
}
table caption {
	margin-bottom: 10px;
}
.table1,
.tagBox table{
	border-collapse: collapse;
	margin-bottom: 25px;
}
.table1 th, .table1 td,
.tagBox table th, .tagBox table td {
	padding: 10px;
}
.table1 th,
.tagBox table th {
	background-color: #f5f5f5;
    vertical-align: middle;
}
.tdw {background: #fff;}
.td1 {background: #dcf5fd;}
.td2 {background: #eef6ed;}
.thw1 th {width: 180px;}

@media only screen and (max-width:999px) {
	/*639px以下で段組み解除*/
	.tableMw1 th, .tableMw1 td,
	.tagBox .tableMw1 th, .tagBox .tableMw1 td{
		display: block;
		border: none;
		width: 100%;
		text-align: left;
	}
    .thw1 th {width: 150px;}
	.tableMw1.thw1 th,
	.tagBox .tableMw1.thw1 th {width: 100%;}
}

/*テーブルスクロール*/
@media screen and (max-width: 999px) {
    /*ブレイクポイントは各自指定*/
	.scroll table {
		overflow: auto;
		white-space:normal;
		display:block;
		width:auto;
	}
	.scroll table tbody {
		width: 1000px;
		display:table;
	}
	/*スクロールバーを追加するCSS*/
	.scroll table::-webkit-scrollbar {height: 4px;}
	.scroll table::-webkit-scrollbar-track {background: #F1F1F1;}
	.scroll table::-webkit-scrollbar-thumb {background: #BCBCBC;}
	.scroll td,.scroll th{width:auto;}
}

/*見出しHタグ*/
.tagBox h2, .tagBox h3, .tagBox h4, .tagBox h5, .tagBox h6 {margin-bottom: 25px;}
.tagBox h2 {
	font-size: 3.2rem;
	margin-bottom: 30px;
	font-weight: 700;
	padding-left: 65px;
	position: relative;
}
.tagBox h2::before{
	content: "";
	background: url(../images/base/h2.webp) left top / 50px no-repeat;
	width: 50px;
	height: 50px;
	display: inline-block;
	position: absolute;
	left: 0;
	top:5px;
}
.tagBox h3 {
	font-size: 2.8rem;
	font-weight: 700;
}
.tagBox h4 {
	font-size: 1.9rem;
}
.tagBox h5 {
	font-size: 1.8rem;
}
.tagBox h6 {
	font-size: 1.7rem;
}

@media only screen and (max-width:999px) {
	.tagBox h2 {
		font-size: 2.6rem;
        padding-left: 50px;
	}
	.tagBox h2::before{
		width: 35px;
		height: 35px;
		background-size: 35px;
	}
	.tagBox h3{
		font-size: 2.4rem;
	}
}

/*blockquote 引用専用*/
.tagBox blockquote {
	border: 1px solid #eee;
	margin-bottom: 25px;
	padding: 45px;
	position: relative;
	border-radius: 15px;
}
.tagBox blockquote::before,
.tagBox blockquote::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	position: absolute;
	color: #999;
	font-size: 2.8rem;
}
.tagBox blockquote::before {
	content: "\f10d";
	top: 5px;
	left: 10px;
}
.tagBox blockquote::after {
	content: "\f10e";
	right: 10px;
	bottom: 5px;
}
@media only screen and (max-width:999px) {
	.tagBox blockquote::before,
	.tagBox blockquote::after {
		font-size: 2.4rem;
	}
}

/* ------------------------------------------------------- */
/* 共通リストお知らせ用（テキスト） ---------------------- */
/* ------------------------------------------------------- */
.newsList1 {
	margin-bottom:30px;
	margin-top: 30px;
}
/*ul版*/
.newsList1 li{
	margin-bottom:15px;
    display: flex;
	border-bottom: 1px dashed #ccc;
	padding-bottom: 15px;
}
.newsList1Date {
    width: 160px;
    color: #333;
}
.newsList1Title {
    width: calc(100% - 160px);
}
.newsList1Title a{
	color: #000;
	text-decoration: none;
}
.newsList1Title a:hover{text-decoration: underline;}
.newsList1Cate {
    width: 120px;
    padding-left: 20px;
}
.newsList1Cate a {
    display: block;
    background: #ccc;
    font-size: 1.3rem;
    text-decoration: none;
    color: #fff;
    padding:2px 5px;
    text-align: center;
}
@media only screen and (max-width:999px) {
    .newsList1 li{
        margin-bottom:10px;
        padding-bottom:10px;
        flex-wrap: wrap;
    }
    .newsList1Date {
        width: 50%;
        font-size: 1.3rem;
        margin-bottom: 5px;
    }
    .newsList1Cate {
        width: 50%;
        margin-bottom: 5px;
    }
    .newsList1Title {
        width: 100%;
        padding-left: 0;
    }
}
/* ------------------------------------------------------- */
/* 共通リストイベント用（テキスト） ---------------------- */
/* ------------------------------------------------------- */
.eventList1 {
	margin-bottom:30px;
	margin-top: 30px;
    display:flex;
    flex-wrap: wrap;
}
/*ul版*/
.eventList1 > li{
    width:calc((100% - 25px) /2);
	padding:0px 0 36px 0;
    margin: 0 24.9px 25px 0;
    border:1px solid #ccc;
    position:relative;
}
.eventList1 > li:nth-child(2n){
    margin: 0 0px 25px 0;
}
.eventList1 > li > div:nth-child(1){
    padding:5px 10px;
    background-color:#f5f5f5;
}
.eventList1 > li > div:nth-child(2){
    padding:10px 20px;
    display:flex;
    flex-direction: column;
    align-items: center;
}
.eventList1 > li > div:nth-child(3){
    padding:13px 10px 0px 10px;    
    text-align: center;
    position:relative;    
}
.eventList1 > li > div:nth-child(3)::before{
    content: "";
    background-image:url("../images/contents/pt1.webp");
    background-repeat: no-repeat;
    background-size: 600px auto;
    background-position: top left;
    width:80%;
    height:3px;
    position:absolute;
    top:0;
    left:calc(50% - 40%);
}
.eventList1Day ul{
    display:flex;
    flex-wrap:wrap;
    font-size:1.5rem;
    color:#444;
}
/*.eventList1 > li .eventList1Day ul > li::before{
    content:",";
    display:inline-block;
    margin:0 5px 0 1px;    
}
.eventList1 > li .eventList1Day ul > li:first-child::before{
    display:none;
}*/
.eventList1Title {
    font-size:2.0rem;
    text-align: center;
    margin:5px 0 10px;
}
.eventList1Title a,.eventList1Tag a{
	color: #000;
	text-decoration: none;
}
.eventList1CatWrap{
    display:flex;
    flex-direction: column;
    flex-wrap:wrap;
    align-items: flex-start;
}
.eventList1Cat a,
.eventList1Tag a{
	color:#d6006c;
}
.eventList1Cat,
.eventList1Tag{    
    color:#d6006c;
    text-align: center;
}
.eventList1Tag{
    margin:0 0 10px 0;
}
.eventList1Cat > ul::before,
.eventList1Tag > ul::before{
    display:inline-block;
    font-family:"Font Awesome 5 Free";
    font-weight:800;
    margin-right:10px;
}
.eventList1Cat > ul::before{content:"\f0e8"}
.eventList1Tag > ul::before{content:"\f02b";padding:0 2.5px;}
.eventList1Cat > ul,
.eventList1Tag > ul{
    display:inline-block;
}
.eventList1Cat > ul > li,
.eventList1Tag > ul > li{
    display:inline-block;
}
.eventList1Cat > ul > li::before,
.eventList1Tag > ul > li::before{
    content:",";
    display:inline-block;
    margin:0 5px 0 1px;    
}
.eventList1Cat > ul > li:first-child::before,
.eventList1Tag > ul > li:first-child::before{
    display:none;
}
.eventList1Title a:hover{text-decoration: underline;}
.eventList1Orgname::before{
    display:inline-block;    
    margin-right:5px;
    background:#eee;
    padding:1px 10px;
}
.eventList1Orgname::before{
    content:"主催";
    font-size:1.4rem;
}
.eventList1date{
    text-align: right;
    font-size:1.5rem;
    color:#999;
    padding:5px;
    position:absolute;
    bottom:0;
    width:100%;
}
.eventList1date::before{
    content:"掲載日：";  
    font-size:1.4rem;
}
@media only screen and (max-width:999px) {
    .eventList1 {
        margin-bottom:10px;
        margin-top: 10px;
    }
    /*ul版*/
    .eventList1 > li{
        width:100%;
        margin: 0 0 15px;
    }
    .eventList1 > li > div:nth-child(2){
        padding:10px 15px;
    }
    .eventList1 > li > div:nth-child(3){
        padding:13px 10px 10px 10px;    
        text-align: center;
        position:relative;    
    }
    .eventList1 > li > div:nth-child(3)::before{
        background-size: 150% auto;
    }
    .eventList1Title {
        font-size:1.8rem;
        text-align: left;
    }
    .eventList1Cat,
    .eventList1Tag{
        font-size:1.5rem;
    }
    .eventList1Orgname::before{
    }
}
/* ------------------------------------------------------- */
/* page-nate --------------------------------------------- */
/* ------------------------------------------------------- */

div.pagenate {
	margin-top: 15px;
}
.pagenate span, .pagenate a {
	padding: 2px 5px;
}
.pagenate span {
	border: 1px solid #DDD;
}
div.wp-pagenavi {
	margin-top: 30px;
	padding: 15px 0;
	text-align: center;
}
.wp-pagenavi span, .wp-pagenavi a {
	background: #fff;
	border: 1px solid #ccc;
	margin: 2px 2px 2px 0;
	padding: 6px 9px 5px 9px;
	text-decoration: none;
	color: #000;
}
.wp-pagenavi span {
    background: #DDD;
}
.wp-pagenavi a:hover{
	background: #999;
	color: #fff;
}
@media only screen and (max-width:999px) {
	div.wp-pagenavi {
		padding: 0;
		font-size: 1.2rem;
		line-height: 300%;
	}
	.wp-pagenavi span, .wp-pagenavi a {
		padding: 6px 6px 5px 6px;
	}
}
/* ------------------------------------------------------- */
/* 開閉コンテンツ ---------------------------------------- */
/* ------------------------------------------------------- */
.toggleSet1{margin-bottom:40px;}
.toggleSet1button {
    cursor: pointer;
    background-color: #eee;
    border-radius: 10px;
    padding: 15px 20px;
    position: relative;
    color: #333;
}
.toggleSet1button::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f055";
    color: #333;
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -20px;
    font-size: 2.6rem;
}
.toggleSet1button.active::after {content: "\f056";}
.toggleSet1content {
    display: none;
    margin-top: 25px;
}
/* ------------------------------------------------------- */
/* カレンダー -------------------------------------------- */
/* ------------------------------------------------------- */

#wp-calendar {
	border-collapse: collapse;
	border-top-width: 1px;
	border-right-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-top-color: #999;
	border-right-color: #999;
	width: 100%;
	margin-bottom: 15px;
	font-size: 1.2rem;
}
#wp-calendar thead tr th {
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-bottom-style: solid;
	border-left-style: solid;
	border-bottom-color: #999;
	border-left-color: #999;
}
#wp-calendar th {
	height: 20px;
	text-align: center;
}
#wp-calendar td {
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-bottom-style: solid;
	border-left-style: solid;
	border-bottom-color: #999;
	border-left-color: #999;
	height:20px;
	padding-top: 5px;
	text-align: center;
}
#wp-calendar #calendar-caption {
	font-weight: bold;
	text-align: center;
}
#calendar_wrap a {
	text-decoration: none;
	color: #CCC;
}
#wp-calendar #today {
	background-color: #CCC;
}
#wp-calendar #today a {
	color:#fff;
}
#calendar_wrap {
	position: relative;
}

#wp-calendar-pn {
	top: 5px;
	left: 0;
	width: 250px;
	margin-left: 35px;
	position: absolute;
}
#prev{
	margin-left: 20px;
	float: left;
}
#next{
	margin-right: 20px;
	float: right;
}
#wp-calendar .pad {
	color: #FFCCFF;
}

/* ------------------------------------------------------- */
/* 検索ボックス ------------------------------------------ */
/* ------------------------------------------------------- */
.searchform{
	position: relative;
}
/*form input.searchfield { 
	padding: 12px;
	width: 100%;
	border-radius: 24px;
	border:1px solid #ccc;
	margin-bottom: 30px;
}
form input.searchsubmit { 
	width: 35px;
	height: 35px;
	padding: 0;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 20px; 
	border: none;
	background: transparent;
	cursor: pointer;
	position: absolute;
	top:3px;
	right:3px;
	color: #635d49;
}*/
select.eventDay,select.eventcat,select.selectTag,input.searchText,input[type="submit"]{
	outline: none;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border:none;
	font-size: 1.6rem;
	border-radius: 0;
}
.selectBox select{cursor: pointer;}

.selectBox select,input.searchText{
	background: #f2f2f2;
	padding: 10px 20px 10px 10px;
	border:none;
	width: 100%;
	box-sizing: border-box;
	position: relative;
}
.selectBox{
	position: relative;
}
.selectBox::before{
	display: inline-block;
	position: absolute;
	content: "\f0d7";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	right: 5px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
}
.freewordSerch{
	display: flex;
	align-items: center;
	margin-bottom: 35px
}
.freewordSerch label{
	width: 180px;
}
.freewordSerch input.searchText{
	width: calc(100% - 180px - 160px);
}
select.eventDay option,select.eventcat option,select.selectTag option{
	background: #fff;
	padding: 5px 0;
}
input[type="submit"]{
	display: block;
	border:2px solid #000;
	padding: 10px;
	background: #fff;
	width:150px;
	cursor: pointer;
	font-family: "Font Awesome 5 Free",'Roboto';
	transition: 0.3s;
    margin-left:10px;
}
input[type="submit"]:hover{
	background: #000;
	color: #fff;
	transition: 0.3s;
}
.post-password-form input[type="submit"]{
    margin: 10px;
	display: inline-block;
	border:2px solid #000;
	padding: 3px 10px;
	background: #fff;
	width:auto;
	cursor: pointer;
	font-family: "Font Awesome 5 Free",'Roboto';
	transition: 0.3s;
}
.post-password-form input[type="submit"]:hover{
	background: #000;
	color: #fff;
	transition: 0.3s;
}
@media only screen and (max-width:999px){
	.freewordSerch{display: inherit;}
	.freewordSerch label,.freewordSerch input.searchText{
		width: 100%;
	}
}
/* ------------------------------------------------------- */
/* YouTube ----------------------------------------------- */
/* ------------------------------------------------------- */
/* <div class="youtube"> で埋め込みコードを囲む */

.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
.indexTeaserBnrArea > div .youtube {
    position: relative;
    width: 100%;
    z-index:-1;
    padding-top: 56.25%;
}
.indexTeaserBnrArea > div .youtube iframe {
    position: absolute;
    top: 40%;
    right: 0;
    width: 100%;
    height: 100%;  
}
@media only screen and (max-width:999px){
    .indexTeaserBnrArea > div .youtube iframe {
        top: 0;
    }
}