@charset "utf-8";
body {
	font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-align: center;
	margin: 0;
	padding: 0;
	line-height: 150%;
	font-size: 100%;
	box-sizing: border-box;
}
img {
	margin: 0;
	padding: 0;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	border: none;
}
h1, h2 {
	margin: 0;
	padding: 0;
}
h1 {
	font-weight:bold;
	font-size:120%;
}
a {
	text-decoration:none;
}
img a {
	border:0;
}
p{
	line-height: 150%;
}
.kome{
	padding-left: 1em;
	text-indent: -1em;
}
.mtm10 {
	margin-top: -10px !important;
}
.mt0 {
	margin-top: 0 !important;
}
.mt5 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt18 {
	margin-top: 18px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt24 {
	margin-top: 24px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mt80 {
	margin-top: 80px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.w80 {
	width:80%;
}
	.m_auto {
	margin-left:auto;
	margin-right:auto;
}
.nobr {
	white-space: nowrap;
}
.indent-1{
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 400px){
.br-sp {display: none; }
}
@media screen and (min-width: 345px){
.br-sp2 {display: none; }
}
@media screen and (min-width: 769px){
.br-sp00 {display: none; }
}
@media screen and (min-width: 525px){
.br-sp525 {display: none; }
}
@media screen and (min-width: 380px){
.br-sp380 {display: none; }
}
.kome2 {
	margin-left:1em;
	text-indent:-1em;
}
.redTx {
	color:red;
}
.redTx2 {
	color:#990000;
}
.s1Tx {
	font-size:90% !important;
}
.s2Tx {
	font-size:85% !important;
}
.underL{
	background: linear-gradient(transparent 70%, #ff99cc 70%);
}
.Bld{
	font-weight:bold !important;
}
.pdd0{
	padding:0 !important;
}
.gray1{
	color:#666666 !important;
}

/* ヘッダー */
header {
	width:100%;
	background-image:url(../images/top.jpg);
	background-repeat: no-repeat;
	background-position: top right;
	background-size:contain;
	background-color:#f0eef7;
	top:0;
	left:0;
	min-height:90px;
	padding:0 10px 0 10px;
	margin:0;
	box-sizing: border-box;
	border-bottom:4px double #7a6037;
	position:fixed;
	z-index:1000;
}
.pcBox {
	align-items: center;
	box-sizing: border-box;
	margin: 0 auto;
	padding:0;
}
.TopBX {
	width:90%;
	margin:2em auto;
	text-align:center;
	padding:0 10px;
}
.TopBX h1 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size:180%;
	color:#333;
	font-weight:normal;
}
.TopBX h1 a {
	color:#333;
}
@media screen and (min-width: 1025px) {
header {
	height:80px;
	margin:0 auto;
	display:block;
}
.pcBox {
	width:1025px;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
}
.TopBX {
	width:400px !important;
}
.TopBX img {
	width:340px;
	height:auto;
	padding-top:4px;
}
}

/* 基本:背景・青海波 */
main {
	margin:90px auto 0 auto;
	text-align:center;
	box-sizing: border-box;
	font-size:110%;
	background:#fff;
}
/* メッセージ */
.pinks{
	width:100%;
	padding:30px 0;
	background-color:#faa0c2;
	background-image:
radial-gradient(circle at 100% 150%, #e1c6ce 24%, #fff 24%, #fff 28%, #e1c6ce 28%, #fac2d7 36%, #fff 36%, #fff 40%, transparent 40%, transparent),
radial-gradient(circle at 0    150%, #e1c6ce 24%, #fff 24%, #fff 28%, #e1c6ce 28%, #e1c6ce 36%, #fff 36%, #fff 40%, transparent 40%, transparent),
radial-gradient(circle at 50%  100%, #fff 10%, #e1c6ce 10%, #e1c6ce 23%, #fff 23%, #fff 30%, #e1c6ce 30%, #e1c6ce 43%, #fff 43%, #fff 50%, #e1c6ce 50%, #e1c6ce 63%, #fff 63%, #fff 71%, transparent 71%, transparent),
radial-gradient(circle at 100% 50%, #fff 5%, #e1c6ce 5%, #e1c6ce 15%, #fff 15%, #fff 20%, #e1c6ce 20%, #e1c6ce 29%, #fff 29%, #fff 34%, #e1c6ce 34%, #e1c6ce 44%, #fff 44%, #fff 49%, transparent 49%, transparent),
radial-gradient(circle at 0    50%,#fff 5%, #e1c6ce 5%, #e1c6ce 15%, #fff 15%, #fff 20%, #e1c6ce 20%, #e1c6ce 29%, #fff 29%, #fff 34%, #e1c6ce 34%, #e1c6ce 44%, #fff 44%, #fff 49%, transparent 49%, transparent);
	background-size: 50px 25px;
}
/* メッセージ 	background-color: #f9d6ea; */
.message {
	width: 960px;
	top:0;
	margin:20px auto !important;
	padding:3em 5em;
	text-align: left;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
	border-radius:20px;
}
@media screen and (max-width: 959px) {
.message {
	width: 90%;
	padding:3em 3em;
}
}
@media screen and (max-width: 768px) {
.message {
	width: 96%;
	padding:2em 2em;
}
}
@media screen and (max-width: 420px) {
.message {
	width: 96%;
	padding:1.2em 1.2em;
}
}
@media screen and (max-width: 370px) {
.message {
	width: 96%;
	padding:1em 1em;
}
}

.message p {
	margin:1.2em 0;
	padding:0;
	color:#333;
	font-size:110%;
}

/* 冒頭 */
.InfoBox2b {
	width: 960px;
	top:0;
	padding:2em 2em;
	text-align: center;
	box-sizing: border-box;
	background-color: #e1c6ce;
	margin:0 auto  2px auto !important;
}
@media screen and (max-width: 959px) {
.InfoBox2b{
	width: 90%;
}
}
@media screen and (max-width: 768px) {
.InfoBox2b {
	width: 96%;
	padding:1.5em 1.5em;
}
}
@media screen and (max-width: 420px) {
.InfoBox2b {
	width: 96%;
	padding:1.2em 1.2em;
}
}
@media screen and (max-width: 370px) {
.InfoBox2b {
	width: 96%;
	padding:1em 1em;
}
}
.church1 {
	margin:1em auto;
	width:120px;
	height:auto;
}
.textLead {
	display:block;
	text-align:left;
	margin:0;
	padding:0;
}
.pen {
	background: linear-gradient(transparent 60%, #f1a0c3 60%);
}
/* 2023年度ご案内 	background-color: #f9d6ea; */
.Info1{
	width:100%;
	margin:2px auto 0 auto;
	text-align:center;
	padding-top:50px;
	box-sizing: border-box;
	font-size:110%;
	background:#e1c6ce;
}
.InfoBox0 h2 {
	display:block;
	width:960px;
	font-size:125%;
	margin:0 auto !important;
	padding:0.8em 0;
	text-align: center;
	box-sizing: border-box;
	background-color: #fac2d7;
	border:2px solid #7a6037;
	color:#000;
}
.InfoBox, .InfoBox2 {
	width: 960px;
	top:0;
	padding:3em 5em;
	text-align: left;
	box-sizing: border-box;
}
.InfoBox {
	background-color: #fff;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
	margin:0 auto 20px auto !important;
	border-left:2px solid #7a6037;
	border-right:2px solid #7a6037;
	border-bottom:2px solid #7a6037;
}
.InfoBox2 {
	background-color: #a8bf93;
	margin:0 auto  2px auto !important;
}
.InfoBox2024-2 {
	background-color: #e1c6ce;
	margin:0 auto  2px auto !important;
}
@media screen and (max-width: 959px) {
.InfoBox, .InfoBox2{
	width: 90%;
	padding:3em 3em;
}
}
@media screen and (max-width: 768px) {
.InfoBox, .InfoBox2 {
	width: 96%;
	padding:2em 2em;
}
}
@media screen and (max-width: 420px) {
.InfoBox, .InfoBox2 {
	width: 96%;
	padding:1.2em 1.2em;
}
}
@media screen and (max-width: 370px) {
.InfoBox, .InfoBox2 {
	width: 96%;
	padding:1em 1em;
}
}
.InfoBox ul {
	margin:0.6em 0;
	padding:0;
	color:#333;
	list-style:none;
	list-style-position: outside;
}
.InfoBox li {
	margin:0;
	padding:0.5em 0;
	display:block;
	margin-left: 1em;
	text-indent: -1.3em;
}
.InfoBox li::before {
	font-family: 'Font Awesome 6 Free';
	content: '\f0f3';
	font-size: 24px;
	color:#333;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-right:0.2em;
}

@media screen and (max-width: 959px) {
.InfoBox0 h2 {
	width:90%;
}
}
@media screen and (max-width: 768px) {
.InfoBox0 h2 {
	width:96%;
	font-size:118%;
}
}
@media screen and (max-width: 420px) {
.InfoBox0 h2 {
	width:96%;
	font-size:115%;
}
}
@media screen and (max-width: 370px) {
.InfoBox0 h2 {
	width:96%;
	font-size:110%;
}
}

/* 2023年度・見出し ribbon1--#fa93ba */
.ribbon1 {
	display:block;
	width:70%;
	margin:50px auto 24px auto !important;
	position: relative;
	height: 50px;
	line-height: 50px;
	text-align: center;
	padding: 0 30px;
	font-size: 120%;
	background: #a94c80;
	color: #FFF;
	box-sizing: border-box;
}
.ribbon1::before, .ribbon1::after {
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	z-index: 1;
}
.ribbon1::before {
	top: 0;
	left: 0;
	border-width: 25px 0px 25px 15px;
	border-color: transparent transparent transparent #fff;
	border-style: solid;
}
.ribbon1::after {
	top: 0;
	right: 0;
	border-width: 25px 15px 25px 0px;
	border-color: transparent #fff transparent transparent;
	border-style: solid;
}


/* 2023年度・プログラム */
.tbl-r02 {
	margin: 30px auto;
	border-collapse:collapse;
}
.tbl-r02 th {
	background: #eeeeee;
	border: solid 1px #ccc;
	color: #333;
	padding: 10px;
}
.tbl-r02 td {
	border: solid 1px #ccc;
	padding: 10px;
	vertical-align:top;
}
@media screen and (max-width: 959px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl-r02 {
    width: 80%;
}
  .tbl-r02 th, .tbl-r02 td {
	border-bottom: none;
    display: block;
    width: 100%;
}
}
/* 2023年度・日程 */
.tb2 {
	border-collapse: collapse;
	margin: 0 auto;
	padding: 0;
	width: 80%;
	table-layout: fixed;
	color: #333;
	border-top: 2px solid #975970;
}
.tb2 tr {
	background-color: #fff;
	padding: .2em;
	border-bottom: 1px dotted #975970;
}
.tb2 tr:last-child{
	border-bottom: 2px solid #975970;
}
.tb2 td {
	padding: 0.8em;
}
.tb2 tbody th {
	color: #975970;
}
.tb2 .txt{
	text-align: left;
}
@media screen and (max-width: 768px) {
.tb2 {
	border: 0;
	width:92%;
}
.tb2 th{
	display: block;
	border-right: none;
	border-bottom: 2px solid #975970;
	padding-bottom: .3em;
	margin-bottom: .3em;
}
.tb2 tr {
	display: block;
	margin-bottom: 2em;
	border-bottom: 2px solid #975970;
}
.tb2 td {
	border-bottom: 1px solid #975970;
	display: block;
	text-align: right;
	position: relative;
	padding: 0.8em;
	border-right: none;
}
.tb2 td:last-child {
	border-bottom: 0;
}
}
/* 2023年度・講師 */
ul.speakers {
	margin:0.6em 0;
	padding:0;
	color:#333;
	list-style:none;
	list-style-position: outside;
}
.speakers li {
	margin:0;
	padding:0.5em 0;
	display:block;
	margin-left: 1em;
	text-indent: -1.2em;
	border-bottom: 1px dotted #ddd;
}
.speakers li::before {
	font-family: 'Font Awesome 6 Free';
	content: '\f130';
	font-size: 24px;
	color:#975970;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-right:0.2em;
}
/* 会場 */
dl.place {
	display: flex !important;
	flex-flow: wrap;
	width: 100%;
	padding:0;
	border: 1px solid #ccc;
	border-bottom: none;
	box-sizing: border-box; 
}
.place dt{
	background: #eeeeee;
	width: 20%;
	padding: 0.3em;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
	margin:0;
}
.place dd{
	background: #fff;
	width: 80%;
	padding: 0.3em;
	margin:0;
	box-sizing: border-box;
	border-bottom: 1px solid #ccc;
}
/* 2024年度・講師 */
ul.speakers2024 {
	margin:0.6em 0;
	padding:0;
	color:#333;
	list-style:none;
	list-style-position: outside;
}
.speakers2024 li {
	margin:0;
	padding:0.5em 0;
	display:block;
	margin-left: 1em;
	text-indent: -1.2em;
	border-bottom: 1px dotted #ddd;
}
.speakers2024 li::before {
	font-family: 'Font Awesome 6 Free';
	content: '\f130';
	font-size: 24px;
	color:#45844b;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-right:0.2em;
}
@media only screen and (max-width: 768px) {
.place dt{ 
	width: 100%;
	border-right: none;
	}
.place dd{
		width: 100%; 
	}
}
.map {
	width: 100%;
	position: relative;
	padding:56.25% 0 0 0;
	margin:24px auto !important;
}
.map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin:0 auto;
	padding:0;
}
.placenote {
	position: static !important; 
	margin-top:30px;
}

/* 2023年度・お申し込み方法 ribbon2 	background: #e84b86; ; ; */
.steps, .steps_last {
	width:80%;
	margin:30px auto;
	display: block;
	padding:0.8em;
	position: relative;
	background:#fff;
	border-radius:10px;
	border:2px solid #975970;
	box-sizing: border-box;
}
.steps::after {
	content: ' ';
	position: absolute;
	bottom: -30px;
margin:auto:
	width: 0;
	height: 0;
	border: none;
	border-top: 28px solid #4d3002;
	border-right: 36px solid transparent;
	border-left: 36px solid transparent;
	top: 100%;
	left: 50%;
	margin-left:-36px;
}

.steps .steps_sub, .steps_last .steps_sub {
	font-weight:bold;
	color:#975970;
}
/* 2024年度・お申し込み方法 ribbon2 	background: #e84b86; ; ; */
.steps2024, .steps_last2024 {
	width:80%;
	margin:30px auto;
	display: block;
	padding:0.8em;
	position: relative;
	background:#fff;
	border-radius:10px;
	border:2px solid #567a25;
	box-sizing: border-box;
}
.steps2024::after {
	content: ' ';
	position: absolute;
	bottom: -30px;
	margin:auto:
	width: 0;
	height: 0;
	border: none;
	border-top: 28px solid #336600;
	border-right: 36px solid transparent;
	border-left: 36px solid transparent;
	top: 100%;
	left: 50%;
	margin-left:-36px;
}
.steps2024 .steps_sub2024, .steps_last2024 .steps_sub2024 {
	font-weight:bold;
	color:#567a25;
}
@media screen and (max-width: 768px) {
.steps, .steps_last {
	width:92%;
	padding:0.8em;
}
}
@media screen and (max-width: 599px) {
.steps, .steps_last {
	width:98%;
	padding:0.8em;
}
}
.ribbon2 {
	display:block;
	width:70%;
	margin:20px auto 24px auto !important;
	position: relative;
	height: 50px;
	line-height: 50px;
	text-align: center;
	padding: 0 30px;
	font-size: 120%;
	background: #a94c80;
	color: #FFF;
	box-sizing: border-box;
}
.ribbon2::before, .ribbon2::after {
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	z-index: 1;
}
.ribbon2::before {
	top: 0;
	left: 0;
	border-width: 25px 0px 25px 15px;
	border-color: transparent transparent transparent #e1c6ce;
	border-style: solid;
}
.ribbon2::after {
	top: 0;
	right: 0;
	border-width: 25px 15px 25px 0px;
	border-color: transparent #e1c6ce transparent transparent;
	border-style: solid;
}
/* アテンション関連 */
.atten01{
	border:2px dotted #990000;
	padding:1em;
	margin:20px auto 20px auto;
	width:80%;
}
.attenTit{
	font-weight:bold;
	background: linear-gradient(transparent 60%, #f2cf39 0%);
	display: inline;
	padding: 0 1px 0px;
}
.attenTit::before{
	content: "\f06a";
	position: relative;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	margin-right: 8px;
	color: #990000;
	font-size:140%;
}

.attenTit2{
	font-weight:bold;
	background: linear-gradient(transparent 60%, #f2cf39 0%);
	display: inline;
	padding: 0 1px 0px;
}

/* ダウンロード関連 */
.DL{
	background: #eee;
	border-top:2px dotted #666;
	border-bottom:2px dotted #666;
	padding:1em;
	margin:20px auto 30px auto;
	width:80%;
}
.button002 a, .button003 a {
	background: #61c1fd;
	border-radius: 3px;
	position: relative;
	display: flex;
	align-items: center;
	padding: 10px 25px;
	transition: 0.3s ease-in-out;
	font-weight: 500;
	color: #313131;
	box-sizing: border-box;
}
.button002 a {
	justify-content: center;
	margin: 0 auto;
	max-width: 400px;
}
.button003 a {
	justify-content: flex-start;
	margin: 30px auto;
	width: 600px;
}
.button002 a::before, .button003 a::before {
	content: "\f019";
	position: relative;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	margin-right: 8px;
	color: #313131;
	font-size:120%;
}
.button002 a:hover, .button003 a:hover {
	background: #31aefd;
	color: #FFF;
}
@media screen and (max-width: 768px) {
.button003 a {
	padding: 10px 22px;
}
.button003 a {
	margin: 30px auto;
	width: 480px;
}
.button002 a {
	width: 360px;
}
}
@media screen and (max-width: 549px) {
.button003 a {
	margin: 30px auto;
	padding: 10px 14px;
	font-size:100%;
	width: 92%;
}
.button002 a {
	padding: 10px 16px;
	width:250px;
}
}
@media screen and (max-width: 379px) {
.button002 a {
	padding: 10px 14px;
	width:200px;
}
}
.papers{
	width:100%;
	padding:30px 0;
	background-color:#ffe481;
	background-image:
radial-gradient(circle at 100% 150%, #dfcd81 24%, #fff 24%, #fff 28%, #dfcd81 28%, #ffe481 36%, #fff 36%, #fff 40%, transparent 40%, transparent),
radial-gradient(circle at 0    150%, #dfcd81 24%, #fff 24%, #fff 28%, #dfcd81 28%, #dfc765 36%, #fff 36%, #fff 40%, transparent 40%, transparent),
radial-gradient(circle at 50%  100%, #fff 10%, #dfcd81 10%, #dfcd81 23%, #fff 23%, #fff 30%, #dfcd81 30%, #dfcd81 43%, #fff 43%, #fff 50%, #dfcd81 50%, #dfcd81 63%, #fff 63%, #fff 71%, transparent 71%, transparent),
radial-gradient(circle at 100% 50%, #fff 5%, #dfcd81 5%, #dfcd81 15%, #fff 15%, #fff 20%, #dfcd81 20%, #dfcd81 29%, #fff 29%, #fff 34%, #dfcd81 34%, #dfcd81 44%, #fff 44%, #fff 49%, transparent 49%, transparent),
radial-gradient(circle at 0    50%,#fff 5%, #dfcd81 5%, #dfcd81 15%, #fff 15%, #fff 20%, #dfcd81 20%, #dfc765 29%, #fff 29%, #fff 34%, #dfc765 34%, #dfc765 44%, #fff 44%, #fff 49%, transparent 49%, transparent);
	background-size: 50px 25px;
}
.ribbon3 {
	display:block;
	width:70%;
	margin:0 auto 24px auto !important;
	position: relative;
	height: 50px;
	line-height: 50px;
	text-align: center;
	padding: 0 30px;
	font-size: 120%;
	background: #2da8f5;
	color: #FFF;
	box-sizing: border-box;
}
.ribbon3::before, .ribbon3::after {
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	z-index: 1;
}
.ribbon3::before {
	top: 0;
	left: 0;
	border-width: 25px 0px 25px 15px;
	border-color: transparent transparent transparent #fff;
	border-style: solid;
}
.ribbon3::after {
	top: 0;
	right: 0;
	border-width: 25px 15px 25px 0px;
	border-color: transparent #fff transparent transparent;
	border-style: solid;
}
@media screen and (max-width: 420px) {
.ribbon1, .ribbon2, .ribbon3{
	padding: 0 22px;
	font-size:105%;
}
}
@media screen and (max-width: 358px) {
.ribbon1, .ribbon2, .ribbon3{
	padding: 0 22px 0 10px;
	font-size:105%;
}
.ribbon1::before, .ribbon2::before, .ribbon3::before {
	border:none;
}
}
@media screen and (max-width: 339px) {
.ribbon1, .ribbon2, .ribbon3{
	padding: 0 20px 0 8px;
	font-size:105%;
}
.ribbon1::before, .ribbon2::before, .ribbon3::before {
	border:none;
}
.ribbon3{
	letter-spacing: -0.08em
}
}
.expdf {
	width:80%;
	margin:40px auto -20px auto !important;
	padding: 0;
	box-sizing: border-box;
	border-top: 2px dotted #666;
	display:flex;
	justify-content: space-around;
	align-items: center;
}
.pdf_bnnr {
	flex-basis: 30%;
	text-align:center;
	box-sizing: border-box;
}
.pdf_bnnr img {
	width:158px !important;
	height:auto;
}
.pdf_note {
	flex-basis: 65%;
	padding:0.8em;
	text-align:left;
	box-sizing: border-box;
}
.pdf_note p {
	font-size:92%;
	color:#666;
}
@media screen and (max-width: 549px) {
.expdf {
	width:92%;
	box-sizing: border-box;
	display:block;
}
.pdf_bnnr {
	width:100%;
	padding:20px 0 0 0;
	text-align:center;
	box-sizing: border-box;
}
.pdf_bnnr img {
	margin:0 auto;
}
.pdf_note {
	width:100%;
	padding:0 0.8em 0.8em 0.8em;
}
}
/* お問い合わせ */
.Base1{
	width:100%;
	margin:2px auto 0 auto;
	text-align:center;
	padding-top:50px;
	padding-bottom:50px;
	box-sizing: border-box;
	font-size:110%;
	background:#fef2f9;
}
.contactBox2 {
	background-color: #fff;
	margin: 50px auto 60px auto;
	padding: 2em 5em;
	border:4px solid #85713e;
	border-radius:20px;
	width: 960px;
	box-sizing: border-box;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
	font-size:110%;
}
.contactBox2 h2 {
  position: relative;
  display: inline-block;
  padding: 0 55px;
}

.contactBox2 h2::before, .contactBox2 h2::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 2px;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
}

.contactBox2 h2::before {
  left:0;
}
.contactBox2 h2::after {
  right: 0;
}
.formTit {
	line-height:120%;
}

.contactTxt {
	text-align:left;
	margin:1em auto;
	padding:0 3em;
}
.contact1, .contact2, .contact3{
	font-weight: bold;
	font-size:110%;
}
.contact2::before {
	font-family: 'Font Awesome 6 Free';
	content: '\f095';
	font-size: 24px;
	color:#333;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-right:0.2em;
}
.contact3::before {
	font-family: 'Font Awesome 6 Free';
	content: '\f0e0';
	font-size: 24px;
	color:#333;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-right:0.2em;
}
.temp{
	padding:0 !important;
	margin:0 !important;
}

@media screen and (max-width: 959px) {
.contactBox2{
	width: 90%;
	padding: 2em 2em;
}
}
@media screen and (max-width: 768px) {
.contactBox2 {
	width: 96%;
	padding: 2em 1.5em;
}
.contactTxt {
	text-align:left;
	margin:1em auto;
	padding:0 1em;
}
}
@media screen and (max-width: 420px) {
.contactBox2 {
	width: 96%;
	padding: 2em 1em;
}
.contactTxt {
	margin:1em auto;
	padding:0 1em;
}
.contactBox2 h2 {
  padding: 0 48px;
}
.contactBox2 h2::before, .contactBox2 h2::after {
  width: 30px;
}
}
@media screen and (max-width: 380px) {
.contactBox2 {
	width: 96%;
	padding:1em 1em;
}
.contactTxt {
	margin:1em auto;
	padding:0 0.8em;
}
.contactBox2 h2 {
	padding: 0 32px;
	font-size:125%;
}
.contactBox2 h2::before, .contactBox2 h2::after {
	width: 24px;
}
}
.contactBox {
	background-color: #fff;
	margin: 2em auto 10em auto;
	padding: 2em;
	position: relative;
	z-index: 1;
	width: 800px;
}
.contactBox::before,
.contactBox::after {
	border-radius: 4px;
	box-shadow: 0 1px 4px rgba(0, 0, 0, .3);
	content: "";
	height: 100%;
	position: absolute;
	width: 100%;
}
.contactBox::before {
	background-color: rgba(255, 255, 255, .5);
	left: 0;
	top: 0;
	z-index: -1;
}
.contactBox::after {
	background-color: #fa92c1;
	top: 5px;
	left: 5px;
	z-index: -2;
}
/* 電話ボタン */
.PhoneArea {
	width: 100%;
	margin:0 auto 4px auto !important;
	padding:20px !important;
	background:#fef4fa;
	box-sizing: border-box;
	text-align:center;
}
.BTNa002, .BTNa003, .BTNa004 {
	border-radius: 10px;
	display: block;
	padding: 0.5em;
	box-sizing: border-box;
	border:2px solid #c5b36b;
	background: #a94c80;
	margin: 0 auto !important;
		text-align:center;
}
.BTNa002 {
	margin: 0 auto !important;
	font-size:160%;
		text-align:center;
	width: 90%;
}
.BTNa003 {
	margin: 0 auto !important;
	font-size:120%;
		text-align:center;
	width: 90%;
}
.BTNa004 {
	margin: 0 auto !important;
	font-size:110%;
		text-align:center;
	width: 60%;
}
a.BTNa002, a.BTNa003 a, a.BTNa004 a{
	color: #fff !important;
	text-decoration: none;
	text-align:center;
}

a.BTNa002:hover, a.BTNa003:hover, a.BTNa004:hover{
	background: #8a1d5a;
	color: #fff;
	text-decoration: none;
}

.phone::before {
	font-family: 'Font Awesome 6 Free';
	content: '\f095';
	font-size: 110%;
	color:#fff;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-right:0.5em;
}
.return {
	color: #fff !important;
	text-decoration: none;
}
.return::after {
	font-family: 'Font Awesome 6 Free';
	content: '\f105';
	font-size: 110%;
	color:#fff;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-left:0.5em;
}

.BTNa002 span {
	display:inline-block;
	text-align:center !important;
}
.PConly {
	display:none;
}

@media screen and (min-width: 600px), print {
a[href^="tel:"] {
	color: white;
	text-decoration: none;
	display: inline-block; /* IE用 */
	pointer-events: none;
}
.BTNa002:hover {
	color: #fff;
	text-decoration: none;
	background: #009be2;
}
}
@media screen and (min-width: 1025px) {
.PhoneArea {
	padding:60px 0;
}
.BTNa002 {
	width: 400px;
	text-align: center;
	margin: 0 auto;
	font-size:190%;
}
.BTNa002 img {
	width:48px;
	margin-left:30px;
	margin-right:40px;
}
.BTNa002 span {
	text-align:center !important;
}
}
@media screen and (max-width: 365px) {
.BTNa002 {
	font-size:140%;
}
}
@media screen and (max-width: 499px) {
.BTNa002, .BTNa003, .BTNa004 {
}
.BTNa002 {
	margin: 0 auto !important;
	font-size:150%;
	width: 98%;
}
.phone::before {
	font-size: 100%;
	vertical-align:-0.1em;
	margin-right:0.5em;
}
.return {
	color: #fff !important;
	text-decoration: none;
}
.return::after {
	font-family: 'Font Awesome 6 Free';
	content: '\f105';
	font-size: 110%;
	color:#fff;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-left:0.5em;
}
}
@media screen and (max-width: 449px) {
.BTNa002 {
	font-size:140%;
	width: 98%;
	padding: 0.3em;
}
.phone::before {
	font-size: 100%;
	vertical-align:-0.1em;
	margin-right:0.5em;
}
.return {
	color: #fff !important;
	text-decoration: none;
}
.return::after {
	font-family: 'Font Awesome 6 Free';
	content: '\f105';
	font-size: 110%;
	color:#fff;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-left:0.5em;
}
}
@media screen and (max-width: 429px) {
.BTNa002 {
	font-size:120%;
	width: 98%;
	padding: 0.3em;
}
.phone::before {
	font-size: 100%;
	vertical-align:-0.1em;
	margin-right:0.3em;
}
.return {
	color: #fff !important;
	text-decoration: none;
}
.return::after {
	font-family: 'Font Awesome 6 Free';
	content: '\f105';
	font-size: 110%;
	color:#fff;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-left:0.5em;
}
}
@media screen and (max-width: 349px) {
.BTNa002 {
	font-size:108%;
	width: 99%;
	padding: 0.3em 0.3em;
}
.phone::before {
	font-size: 94%;
	vertical-align:-0.1em;
	margin-right:0.3em;
}
.return {
	color: #fff !important;
	text-decoration: none;
}
.return::after {
	font-family: 'Font Awesome 6 Free';
	content: '\f105';
	font-size: 110%;
	color:#fff;
	font-weight: 700;
	vertical-align:-0.1em;
	margin-left:0.5em;
}
}
/* form */
.form_note {
	margin:1em auto;
	display:inline-block;
	padding:0 0 0.8em 0;
	text-align:left;
	border-bottom:1px dotted #ddd;
}
.reddish {
	color:#993333;
}
.c-form {
	max-width: 800px;
	margin: 30px auto;
}
.c-form__item {
	display: flex;
	flex-wrap: no-wrap;
	justify-content: space-between;
	margin-bottom: 20px;
}
.c-form__label,
.c-form__input {
	padding: 10px;
}
.c-form__label {
	text-align:left;
	font-size:16px;
	flex-basis:25%;
	
}
.c-form__input {
	font-size: 16px;
	border: solid 2px #666;
	border-radius: 4px;
	flex-basis:70%;
}
.c-form__input:focus-visible {
	outline: red auto 1px;
}
.c-form__required {
	color: #fff;
	background-color: #993333;
	border-radius: 4px;
	padding: 5px 5px;
	margin: 0 0 0 14px;
	font-size:14px;
}
textarea.c-form__input {
	height: 160px;
}
.c-form__submit {
	text-align: center;
}
.c-form__submit button {
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	background-color: #a94c80;
	border: solid 2px #a94c80;
	border-radius: 4px;
	padding: 8px 48px;
	transition: 0.4s;
	cursor: pointer;
	width:240px;
}
.c-form__submit button:hover {
	color: #a94c80;
	background-color: transparent;
}

.c-form__submit .decision {
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	background-color: #a94c80;
	border: solid 2px #a94c80;
	border-radius: 4px;
	padding: 8px 48px;
	transition: 0.4s;
	cursor: pointer;
	width:240px;
}
.c-form__submit  .decision:hover {
	color: #a94c80;
	background-color: transparent;
}

.c-form__submit .back {
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	background-color: #998a92;
	border: solid 2px #998a92;
	border-radius: 4px;
	padding: 8px 48px;
	transition: 0.4s;
	cursor: pointer;
	width:240px;
}
.c-form__submit  .back:hover {
	color: #998a92;
	background-color: transparent;
}

@media screen and (max-width: 849px) {
	.c-form__item {
	display:block;
	margin:1.2em auto 0 auto;
}
	.c-form__label {
		width: 100%;
	margin:0.5em auto 1em auto;
		box-sizing: border-box;
	}
	.c-form__input {
		width: 100%;
	margin:0.5em auto 0 auto;
		box-sizing: border-box;
	}
.c-form__submit button {
	margin-top:2em;
}
.c-form__submit .decision, .c-form__submit .back {
	margin-top:2em;
}
}
.thanks {
	width:80%;
	margin:36px auto;
	padding:0;
	text-align:left;
}
/* footer */
footer {
	width:100%;
	margin:0;
	padding:0;
	background:#481a2d;
}
.footerArea2 {
	width:100%;
	margin: 0 auto;
	padding:0;
}
.copyright {
	display:inline-block;
	text-align:center !important;
	font-size:90% !important;
	padding:1em;
	margin: 1em auto;
	color:#fff !important;
}
/* Gマップ */
iframe {
	width: 100%;
	aspect-ratio: 16/9; 
	margin:24px auto 60px auto;!important;
}
@media screen and (min-width: 1025px) {
iframe {
	width: 90%;
	padding:0 5% 0 5%;
	margin:36px auto 72px auto;!important;
	text-align:center;
}
}

/*ページ上部へ */
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: -50px;
  background: #cd6667;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/* FAQ */
.message2 {
	width: 960px;
	top:0;
	margin:50px auto !important;
	padding:3em 5em;
	text-align: left;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
	border-radius:20px;
}
@media screen and (max-width: 959px) {
.message2 {
	width: 90%;
	padding:3em 3em;
}
}
@media screen and (max-width: 768px) {
.message2 {
	width: 96%;
	padding:2em 2em;
}
}
@media screen and (max-width: 420px) {
.message2 {
	width: 96%;
	padding:1.2em 1.2em;
}
}
@media screen and (max-width: 370px) {
.message2 {
	width: 96%;
	padding:1em 1em;
}
}
.message2 p {
	margin:1.2em 0;
	padding:0;
	color:#333;
	font-size:110%;
}
.qa-list dl {
	position: relative;
	margin: 30px auto;
	cursor: pointer;
	border: 1px solid #c5b36b;
}
.qa-list dl:first-child {
	margin-top: 0;
}
.qa-list dl::after {
	position: absolute;
	top: 24px;
	right: 24px;
	display: block;
	width: 8px;
	height: 8px;
	margin: auto;
	content: '';
	transform: rotate(135deg);
	border-top: 2px solid #f670af;
	border-right: 2px solid #f670af;
}
.qa-list .open::after {
	transform: rotate(-45deg);
}
.qa-list dl dt {
	position: relative;
	margin: 0;
	padding: 20px 50px 20px 60px;
	font-weight: normal;
	font-size:110%;
	background: #eee8d9;
}
.qa-list dl dt::before {
	font-size: 24px;
	line-height: 1;
	position: absolute;
	top: 20px;
	left: 20px;
	display: block;
	content: 'Q:';
	color: #2da8f5;
	font-weight:bold;
}
.qa-list dl dd::before {
	font-size: 24px;
	line-height: 1;
	position: absolute;
	left: 20px;
	display: block;
	content: 'A:';
	font-weight: bold;
	color: #2da8f5;
}
.qa-list dl dd {
	position: relative;
	margin: 0;
	padding: 20px 50px 20px 60px;
}
.qa-list dl dd p {
	margin: 30px 0 0 0;
}
.qa-list dl dd p:first-child{
	margin-top: 0;
}
@media screen and (max-width: 768px) {
	.qa-list dl {
	margin: 10px 0 0 0;
	font-size: 100%;
}
.qa-list dl:after {
	top: 20px;
	right: 20px;
	width: 7px;
	height: 7px;
}
.qa-list dl dt {
	padding: 16px 50px 16px 50px;
}
.qa-list dl dt::before {
	font-size: 18px;
	top: 20px;
	left: 20px;
}
.qa-list dl dd::before {
	font-size: 18px;
	left: 20px;
	margin-top: 5px;
}
.qa-list dl dd {
	margin: 0;
	padding: 16px 50px 16px 50px;
}
.qa-list dl dd p {
	margin: 30px 0 0;
}
.qa-list dl dd p:first-child{
	margin-top: 0;
}
}
@media screen and (max-width: 639px) {
	.qa-list dl {
	margin: 10px 0 0 0;
	font-size: 95%;
}
}
@media screen and (max-width: 359px) {
	.qa-list dl {
	margin: 10px 0 0 0;
	font-size: 92%;
}
}

@media (min-width: 769x) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}

/* 2024年度ご案内 	background-color: #f9d6ea; */
.Info2024{
	width:100%;
	margin:2px auto 0 auto;
	text-align:center;
	padding-top:50px;
	padding-bottom:30px;
	box-sizing: border-box;
	font-size:110%;
	background:#a8bf93;
}
.InfoBox0b h2 {
	display:block;
	width:960px;
	font-size:125%;
	margin:0 auto !important;
	padding:0.8em 0;
	text-align: center;
	box-sizing: border-box;
	background-color: #82ae46;
	border:2px solid #7a6037;
	color:#000;
}
@media screen and (max-width: 959px) {
.InfoBox0b h2 {
	width:90%;
}
}
@media screen and (max-width: 768px) {
.InfoBox0b h2 {
	width:96%;
	font-size:118%;
}
}
@media screen and (max-width: 420px) {
.InfoBox0b h2 {
	width:96%;
	font-size:115%;
}
}
@media screen and (max-width: 370px) {
.InfoBox0b h2 {
	width:96%;
	font-size:110%;
}
}
.ribbon2024 {
	display:block;
	width:70%;
	margin:50px auto 24px auto !important;
	position: relative;
	height: 50px;
	line-height: 50px;
	text-align: center;
	padding: 0 30px;
	font-size: 120%;
	background: #567a25;
	color: #FFF;
	box-sizing: border-box;
}
.ribbon2024::before, .ribbon2024::after {
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	z-index: 1;
}
.ribbon2024::before {
	top: 0;
	left: 0;
	border-width: 25px 0px 25px 15px;
	border-color: transparent transparent transparent #fff;
	border-style: solid;
}
.ribbon2024::after {
	top: 0;
	right: 0;
	border-width: 25px 15px 25px 0px;
	border-color: transparent #fff transparent transparent;
	border-style: solid;
}

.ribbon2024-2 {
	display:block;
	width:70%;
	margin:20px auto 24px auto !important;
	position: relative;
	height: 50px;
	line-height: 50px;
	text-align: center;
	padding: 0 30px;
	font-size: 120%;
	background: #567a25;
	color: #FFF;
	box-sizing: border-box;
}
.ribbon2024-2::before, .ribbon2024-2::after {
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	z-index: 1;
}
.ribbon2024-2::before {
	top: 0;
	left: 0;
	border-width: 25px 0px 25px 15px;
	border-color: transparent transparent transparent #a8bf93;
	border-style: solid;
}
.ribbon2024-2::after {
	top: 0;
	right: 0;
	border-width: 25px 15px 25px 0px;
	border-color: transparent #a8bf93 transparent transparent;
	border-style: solid;
}

/* 2024年度・日程 */
.tb2024 {
	border-collapse: collapse;
	margin: 0 auto;
	padding: 0;
	width: 80%;
	table-layout: fixed;
	color: #333;
	border-top: 2px solid #567a25;
}
.tb2024 tr {
	background-color: #fff;
	padding: .2em;
	border-bottom: 1px dotted #567a25;
}
.tb2024 tr:last-child{
	border-bottom: 2px solid #567a25;
}
.tb2024 td {
	padding: 0.8em;
}
.tb2024 tbody th {
	color: #567a25;
}
.tb2024 .txt{
	text-align: left;
}
@media screen and (max-width: 768px) {
.tb2024 {
	border: 0;
	width:92%;
}
.tb2024 th{
	display: block;
	border-right: none;
	border-bottom: 2px solid #567a25;
	padding-bottom: .3em;
	margin-bottom: .3em;
}
.tb2024 tr {
	display: block;
	margin-bottom: 2em;
	border-bottom: 2px solid #567a25;
}
.tb2024 td {
	border-bottom: 1px solid #567a25;
	display: block;
	text-align: right;
	position: relative;
	padding: 0.8em;
	border-right: none;
}
.tb2024 td:last-child {
	border-bottom: 0;
}
}
