@charset "UTF-8";

:root {
	--v-space: clamp(90px, 7vw, 120px);
	--txt-color: #222222;
	--base-color: #fff;
	--main-color: #417AB1;
	--accent1-color: #376889;
	--accent2-color: #E4EFF9;
	
	--color1: #417AB1;
	--color2: #376889;
	--color3: #E4EFF9;
	--color4: #FFBF00;
	--acc: #E5E634;
}


/*なるべく汎用性の高い順に記載（サイト特有指定ほど下部に記載）*/
/*切替[基本：max568 min569／デザインによっては：768／それ以外は個別・特例的に設定]*/

/* ノーマル指定 */
table{
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
}
.clear {
	clear: both;
}
.indent{
	text-indent: -1em;
	padding-left: 1em;
}
.tj{
	text-align: justify;/*文字両端ぞろえ*/
}
.marker {
	background: linear-gradient(transparent 60%, #f2ceda 60%);
}
.lesp{
	letter-spacing: -0.1em;
}
.btm{
	padding-bottom: 6vw;
}
@media (max-width: 768px) {
	.lesp{
		letter-spacing: 0em;
	}
}
/* メインビジュアル */
.hero-container {
	display: grid;
	justify-items: center;
	align-content: center;
	height: 100%;
	width: 100%;
	background-color: #fff;
}

picture.main-v{
	margin:0 auto;
	display: block;
	position: relative;
	box-sizing: border-box;
}
picture.main-v img{
	height: 70vh;
	width: 100%;
	object-fit: cover;
}
/*SP LINEブラウザ対応*/
@media (max-width: 1367px) {
	picture.main-v img{
		height: 500px;
	}
}
/* ヘッダー */
.header-details{
	font-size: 13px;
	line-height: 1.5;
}
/* フッターコピーライト */
.footer-copy p{
	font-size: 11px;
}
/* フッターメニュー */
ul.footer-menu li a{
	line-height: 1;
	vertical-align: middle;
	display: inline-block;
	white-space: nowrap;
	font-weight:400;
}
ul.footer-menu li::after{
	content: "　/　";
}
ul.footer-menu li:last-child::after{
	content: none;
}
@media (max-width: 568px) {
	ul.footer-menu li::after{
		content: none;
	}
}


/* 各セクション（汎用） */
.sec1 {
	padding: var(--v-space) 0;
	background-color: #FFF;
}
.sec2 {
	padding: var(--v-space) 0;
	background-color: #FFF;
	background-image:none;
	background-repeat:repeat;
	background-color: var(--color3);
}
.sec3 {
	padding: var(--v-space) 0;
	background-color: #f7e160;
}
.sec4 {
	padding: var(--v-space) 0;
	background-color: #FFF;
	background-image: url(../img/bg_02.jpg);
	background-repeat:no-repeat;
	background-position: bottom right;
	background-size:cover;
}
.greeting {
	padding: 50px 0;
	background-color: #FFF;
}

/* Gmap */
.fullOuterMap{
	width: 100%;
	position: relative;
	padding:0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	height:auto;
	margin-top: -70px;	/*セクションのbottomに被せる*/
}
.fullInner{
	width:100%;
}
.gmp {
	position: relative;
	padding-bottom: 45%;
	height: 0;
	overflow: hidden;
}
.gmp iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

@media screen and (max-width: 568px) {
	.gmp {
		position: relative;
		padding-bottom: 100%;
		height: 0;
		overflow: hidden;
	}
}




/* 
上月専用 他のクラスとカブりないこと確認済み 
sm,pcのみ意図的に上書きしています
部分的に上記削除の後､別途指定あり

style.css､当ファイル上記部分は｢尊重｣
しつつ､今後､以下定義は変更可能性大です｡

基本ここの部分は変更せず､追加のみの方針で
ver2023-12-21
 */

@media screen and (max-width: 568px) {
	.pc{
		display:none;
	}
}

@media screen and (min-width: 568px) {
	.sm{
		display:none;
	}
}


.faq b{
	display: block;
    text-indent: -1em;
    padding-left: 1em;
    margin-left: 5px;
}

.faq p{
    padding-left: 1em;
    text-indent: -1em;
}


a.anchor{
    display: block;
    padding-top: 70px;
    margin-top: -70px;
}



p.wk{
padding:10px;
border-radius:25px;
background-color:var(--color1);
color:white;
width:70%;
margin:0 auto;
margin-bottom:30px;
}

p.wk-or{
padding:10px;
border-radius:10px;
border: 5px solid var(--color4);
//background-color:var(--color4);
//color:white;
width:70%;
margin:0 auto;
margin-bottom:30px;
}

@media screen and (max-width: 568px) { 
	p.wk{
	width:96%;
	}
	table.pk1{
		width:96% !important;
		margin-left:0 !important;
	}
	td.info3{
		display:block;
		width:96% !important;
	}

	td.info4{
		display:block;
		width:96% !important;
	}
}


img.picA{
	border:10px solid white !important;
	box-shadow: 0 13px 13px 0 rgba(0, 0, 0, .1);

	box-sizing:border-box;
}

.info1 {
	font-weight: bold;
	border-bottom: 1px dashed  var(--main-color);
	padding: 5px;
	width: 5.25em;
	color: var(--main-color);	/*サイト主要色*/
}
.info2 {
	border-bottom: 1px dashed  var(--main-color);
	padding: 5px;
	width: 400px;
}

@media screen and (max-width: 568px) {
	.info1 {
		display: block;
		padding: 8px 2px 2px 2px;
		width: 100%;
		border-bottom: 1px solid rgba(255,255,255,0);
	}
	.info2 {
		display: block;
		padding: 2px;
		width: 99%;
	}
}



.min{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.cnt{
	text-align:center;
}

.bld{
	font-weight:bold;
	color: var(--main-color);	/*サイト主要色*/
}

.nuki{
	text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
	-1px 1px 0 #FFF, 1px -1px 0 #FFF,
	0px 1px 0 #FFF,  0-1px 0 #FFF,
	-1px 0 0 #FFF, 1px 0 0 #FFF;
}


span.col0{ color:black; }
span.col1{ color:brown; }
span.col2{ color:red; }
span.col3{ color:orange; }
span.col4{ color:yellow; }
span.col5{ color:green; }
span.col6{ color:blue; }
span.col7{ color:purple; }
span.col8{ color:gray; }
span.col9{ color:white; }

p.top-mg10{ margin-top:10px; }
p.top-mg20{ margin-top:20px; }
p.top-mg30{ margin-top:30px; }
p.top-mg40{ margin-top:40px; }
p.top-mg50{ margin-top:50px; }
p.top-mg60{ margin-top:60px; }
p.top-mg70{ margin-top:70px; }
p.top-mg80{ margin-top:80px; }
p.top-mg90{ margin-top:90px; }
p.top-mg100{ margin-top:100px; }
p.top-mg110{ margin-top:110px; }
p.top-mg120{ margin-top:120px; }
p.top-mg130{ margin-top:130px; }
p.top-mg140{ margin-top:140px; }
p.top-mg150{ margin-top:150px; }
p.top-mg160{ margin-top:160px; }
p.top-mg170{ margin-top:170px; }
p.top-mg180{ margin-top:180px; }
p.top-mg190{ margin-top:190px; }
p.top-mg200{ margin-top:200px; }


img.top-mg10{ margin-top:10px; }
img.top-mg20{ margin-top:20px; }
img.top-mg30{ margin-top:30px; }
img.top-mg40{ margin-top:40px; }
img.top-mg50{ margin-top:50px; }
img.top-mg60{ margin-top:60px; }
img.top-mg70{ margin-top:70px; }
img.top-mg80{ margin-top:80px; }
img.top-mg90{ margin-top:90px; }
img.top-mg100{ margin-top:100px; }
img.top-mg110{ margin-top:110px; }
img.top-mg120{ margin-top:120px; }
img.top-mg130{ margin-top:130px; }
img.top-mg140{ margin-top:140px; }
img.top-mg150{ margin-top:150px; }
img.top-mg160{ margin-top:160px; }
img.top-mg170{ margin-top:170px; }
img.top-mg180{ margin-top:180px; }
img.top-mg190{ margin-top:190px; }
img.top-mg200{ margin-top:200px; }


.top-mg10{ margin-top:10px; }
.top-mg20{ margin-top:20px; }
.top-mg30{ margin-top:30px; }
.top-mg40{ margin-top:40px; }
.top-mg50{ margin-top:50px; }
.top-mg60{ margin-top:60px; }
.top-mg70{ margin-top:70px; }
.top-mg80{ margin-top:80px; }
.top-mg90{ margin-top:90px; }
.top-mg100{ margin-top:100px; }
.top-mg110{ margin-top:110px; }
.top-mg120{ margin-top:120px; }
.top-mg130{ margin-top:130px; }
.top-mg140{ margin-top:140px; }
.top-mg150{ margin-top:150px; }
.top-mg160{ margin-top:160px; }
.top-mg170{ margin-top:170px; }
.top-mg180{ margin-top:180px; }
.top-mg190{ margin-top:190px; }
.top-mg200{ margin-top:200px; }


.btm-mg10{ margin-bottom:10px; }
.btm-mg20{ margin-bottom:20px; }
.btm-mg30{ margin-bottom:30px; }
.btm-mg40{ margin-bottom:40px; }
.btm-mg50{ margin-bottom:50px; }
.btm-mg60{ margin-bottom:60px; }
.btm-mg70{ margin-bottom:70px; }
.btm-mg80{ margin-bottom:80px; }
.btm-mg90{ margin-bottom:90px; }
.btm-mg100{ margin-bottom:100px; }
.btm-mg110{ margin-bottom:110px; }
.btm-mg120{ margin-bottom:120px; }
.btm-mg130{ margin-bottom:130px; }
.btm-mg140{ margin-bottom:140px; }
.btm-mg150{ margin-bottom:150px; }
.btm-mg160{ margin-bottom:160px; }
.btm-mg170{ margin-bottom:170px; }
.btm-mg180{ margin-bottom:180px; }
.btm-mg190{ margin-bottom:190px; }
.btm-mg200{ margin-bottom:200px; }



.spc10{ margin-bottom:10px; }
.spc20{ margin-bottom:20px; }
.spc30{ margin-bottom:30px; }
.spc40{ margin-bottom:40px; }
.spc50{ margin-bottom:50px; }
.spc60{ margin-bottom:60px; }
.spc70{ margin-bottom:70px; }
.spc80{ margin-bottom:80px; }
.spc90{ margin-bottom:90px; }
.spc100{ margin-bottom:100px; }
.spc110{ margin-bottom:110px; }
.spc120{ margin-bottom:120px; }
.spc130{ margin-bottom:130px; }
.spc140{ margin-bottom:140px; }
.spc150{ margin-bottom:150px; }
.spc160{ margin-bottom:160px; }
.spc170{ margin-bottom:170px; }
.spc180{ margin-bottom:180px; }
.spc190{ margin-bottom:190px; }
.spc200{ margin-bottom:200px; }


/*旧テンプレライクな引き継ぎの定義*/

.left{
	max-width:50%;
	float: left;
}

.right{
	max-width:50%;
	float: right;
}

.left img{
	margin-top:10px !important;
	width:95%;
	margin:0 auto;
}

.right img{
	margin-top:10px !important;
	width:95%;
	margin:0 auto;
}
.left73{
	width:30%;
	float: left;
}


.right73{
	width:70%;
	float: right;
}


@media screen and (max-width: 568px) { 

	.left73{
		display:block;
		width:100%;
	}

	.right73{
		display:block;
		width:100%;
	}



	.left{
		display:inline;
		width:50%;
	}

	.right{
		display:inline;
		width:50%;
	}
}


.left73r{
	width:60%;	
}

.right73r{
	width:40%;	
}

@media screen and (max-width: 568px) { 

	.left73{
		width:60%;	
	}

	.right73{
		width:40%;	
	}

}







.dv4{
	width:248px;
	float:left;
	text-align:center;
	font-size:16px;
}

@media screen and (max-width: 568px) {
	.dv4{
		width:31.2vw !important;
		float:left;
		text-align:center;
		font-size:16px;
	}
}

.lightbox{
	position: absolute;
	left: 0;
	width: 100%;
	z-index: 10000;
	text-align: center;
	line-height: 0;
	font-weight: normal;
}

.lightbox .lb-image{
	display: block;
	height: auto;
	max-width: inherit;
	border-radius: 3px;
}

.lightbox a img{
	border: none;
}

table.line3 td{
	display:inline-block;
	width: 33.3%;
	height: auto;
	font-size:16px;

	border:none;

}	


@media screen and (max-width: 568px) {

	table.line3 td img{
		padding:0;
		margin:0;
		width:50% !important;
	}

	table.line3 td{
		padding:0;
		margin:0;
		display:block;
		width: 99%;
		height: auto;
		font-size:16px;
		border:none;
		width:100%;
	}	
}

@media (orientation: landscape) and (max-width: 810px){
	table.line3 td img{
		margin:!important 0;
		padding:!important 0;
		height: 150px;
		text-align:center;
		box-shadow: 3px 3px 4px #666666;
	}	
}



.sec1 {
    padding: var(--v-space) 0;
    background-color: #FFF;
    background-image:none;
	background-color:var(--color3);
    background-repeat: repeat;
}

.sec2 {
    padding: var(--v-space) 0;
    background-color: #FFF;
    background-image:none;
    background-repeat: repeat;
}


.sec3 {
    padding: var(--v-space) 0;
    background-color: #FFF;
    background-image: url(../img/f3.jpg);
    background-repeat: repeat;
}

.sec4 {
    padding: var(--v-space) 0;
    background-color: #FFF;
    background-image: url(../img/f4.jpg);
    background-repeat: repeat;
}

.sec5 {
    padding: var(--v-space) 0;
    background-color: #FFF;
    background-image: url(../img/f5.jpg);
    background-repeat: repeat;
}

.sec6 {
    padding: var(--v-space) 0;
    background-color: #FFF;
    background-image: url(../img/f6.jpg);
    background-repeat: repeat;
}

.sec7 {
    padding: var(--v-space) 0;
    background-color: #FFF;
    background-image: none;
    background-repeat: repeat;
}



h3.title{
    font-size: clamp(23px, 2.4vw, 33px);
    min-height: 0vw;
    text-align: center;
    font-weight: 400;
    line-height: 1.3;
    /* color: #26a5b3; */
    color: #444;
    margin-top: 2em;
    font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',arial,helvetica,clean,sans-serif;
}



h3.title::after {
    display: block;
    content: '';
    width: 160px;
    height: 0px;
    border-top: solid 3px var(--main-color);
    margin-top: 0.2em;
    margin-right: auto;
    margin-left: auto;
}
h3.title + p {
    margin-top: 0.5em;
    margin-bottom: 1em;
    color: #707070;
    font-family: "Montserrat", sans-serif;
    font-size: 15px;
}


h2.title {
    position: absolute;
    top: calc((var(--v-space) + 0.7em) * -1);
    font-family: "Montserrat", sans-serif;
    /* font-size: clamp(40px, 5.2vw, 70px); */
    font-size: clamp(35px, 4vw, 55px);
    min-height: 0vw;
    font-weight: 300;
    color: var(--main-color);

    text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, 0-1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;
}
h2.title span {
    display: block;
    color: #454545;
    font-size: clamp(7px, 0.3em, 25px);
    font-weight: 400;
}


.mkr {
    /* background-color: #ff9; */
    background: linear-gradient(transparent 60%, #bfeafb 60%);
}

.waku{
	background-color:rgba(255,255,255,0.85);
	padding:10px;
	box-sizing: border-box;
}


/*上月適宜追加*/
hr{
	border:none;
	background-color:#fff;
	margin-top:10px;
	border-top:1px solid var(--color1);
}
hr.o-2{
	border:none;
	background-color:#fff;
	margin-top:10px;
	margin-bottom:20px;
	border-top:0px solid var(--color1);
}


@media (min-width: 569px){
.nav ul {
	border-top:1px solid var(--color1);
}
}
.tel{
	color: var(--color1);
}



.font10{ font-size:10px; }
.font13{ font-size:13px; }
.font15{ font-size:15px; }
.font17{ font-size:17px; }
.font20{ font-size:20px; }
.font30{ font-size:30px; }
.font40{ font-size:40px; }
.font50{ font-size:50px; }
.font60{ font-size:60px; }
.font70{ font-size:70px; }
.font80{ font-size:80px; }


table.pk1{
	width:70%;
	margin-left:15%;
	border-collapse: separate !important;
  border-spacing: 10px !important;
}

td.info3{
	border:1px solid var(--color1);
	background-color:var(--color3);
	margin:4px !important;

	padding:10px;
	text-align:center;
}
td.info4{
	font-size:20px;
	color: #fd9988;
	margin:4px !important;
	padding:10px;
	text-align:center;
	font-weight:900;
	border-bottom:1px dashed #999;
}

td.info5{
	border:1px solid var(--color1);
	background-color:var(--color3);
	margin:4px !important;

	padding:10px;
	text-align:center;
}
td.info6{
	font-size:20px;
	color: #fd9988;
	margin:4px !important;
	padding:10px;
	text-align:center;
	font-weight:900;
	border-bottom:1px dashed #999;
}



table.pk1{

	border-collapse: separate !important;
  border-spacing: 10px !important;
}


.spn1{
	display:block;
	text-align:center;
	font-size:20px;
	margin-bottom:-50px;
}
.left73{
	background-color:#77C4DD;
	border-bottom:3px solid var(--main-color);
	color:var(--main-color);
	font-size:30px;
	padding:20px;
	 box-sizing: border-box;
}
.p3{
	font-size:20px;
	padding:20px;
}

.p5{
	font-size:30px;
	padding:20px;
}

.right73{
 box-sizing: border-box;
}


.faq b{
	color: var(--main-color);	/*サイト主要色*/
}


.dv3{
	width:31%;
height:300px;
	margin:1%;
	float:left;
}

@media screen and (max-width: 568px) { 

	.dv3{
		display:block;
		width:100%;
		height:200px !important;
	}

}
.dv3{
	box-shadow: 0 13px 13px 0 rgba(0, 0, 0, .15);
}

.dv3a{
	background-color: #FFF;
	background-image: url(../img/p5.jpg);
	background-repeat:repeat;
	background-size:cover;

	background-position: center center;
}

.dv3b{
	background-color: #FFF;
	background-image: url(../img/p6.jpg);
	background-repeat:repeat;
	background-size:cover;

	background-position: center center;
}

.dv3c{
	background-color: #FFF;
	background-image: url(../img/p7.jpg);
	background-repeat:repeat;
	background-size:cover;

	background-position: center center;
}


.dv3d{
	background-color: #FFF;
	background-image: url(../img/p8.jpg);
	background-repeat:repeat;
	background-size:cover;

	background-position: center center;
}

.dv3e{
	background-color: #FFF;
	background-image: url(../img/p9.jpg);
	background-repeat:repeat;
	background-size:cover;

	background-position: center center;
}


.dv3f{
	background-color: #FFF;
	background-image: url(../img/p10.jpg);
	background-repeat:repeat;
	background-size:cover;

	background-position: center center;
}
h3.title{
	font-size:17px;
	background-color:rgba(255,255,255,0.85);
	padding:10px;
	border-radius:15px;
	width:80%;
	margin:0 auto;
	margin-top:20px !important;
	border:7px solid var(--color3);
}

td.pr1{
	background-color:#AAD3E3;	
	padding:10px;
	text-align:center;
	margin-10px;
	border-left: 2px solid var(--main-color);	/*サイト主要色*/
	border-top: 2px solid var(--main-color);	/*サイト主要色*/
	border-right: 2px solid var(--main-color);	/*サイト主要色*/
	border-bottom: 5px solid #fff;
}


.fnt10{font-size:10px};
.fnt11{font-size:11px};
.fnt12{font-size:12px};
.fnt13{font-size:13px};
.fnt14{font-size:14px};
.fnt15{font-size:15px};
.fnt16{font-size:16px};
.fnt17{font-size:17px};
.fnt18{font-size:18px};
.fnt19{font-size:19px};
.fnt20{font-size:20px};
.fnt21{font-size:21px};
.fnt22{font-size:22px};
.fnt23{font-size:23px};
.fnt24{font-size:24px};
.fnt25{font-size:25px};
.fnt26{font-size:26px};
.fnt27{font-size:27px};
.fnt28{font-size:28px};
.fnt29{font-size:29px};
.fnt30{font-size:30px};
.fnt31{font-size:31px};
.fnt32{font-size:32px};
.fnt33{font-size:33px};
.fnt34{font-size:34px};
.fnt35{font-size:35px};
.fnt36{font-size:36px};
.fnt37{font-size:37px};
.fnt38{font-size:38px};
.fnt39{font-size:39px};
.fnt40{font-size:40px};
.fnt41{font-size:41px};
.fnt42{font-size:42px};
.fnt43{font-size:43px};
.fnt44{font-size:44px};
.fnt45{font-size:45px};
.fnt46{font-size:46px};
.fnt47{font-size:47px};
.fnt48{font-size:48px};
.fnt49{font-size:49px};
.fnt50{font-size:50px};
.fnt51{font-size:51px};
.fnt52{font-size:52px};
.fnt53{font-size:53px};
.fnt54{font-size:54px};
.fnt55{font-size:55px};
.fnt56{font-size:56px};
.fnt57{font-size:57px};
.fnt58{font-size:58px};
.fnt59{font-size:59px};
.fnt60{font-size:60px};
.fnt61{font-size:61px};
.fnt62{font-size:62px};
.fnt63{font-size:63px};
.fnt64{font-size:64px};
.fnt65{font-size:65px};
.fnt66{font-size:66px};
.fnt67{font-size:67px};
.fnt68{font-size:68px};
.fnt69{font-size:69px};
.fnt70{font-size:70px};
.fnt71{font-size:71px};
.fnt72{font-size:72px};
.fnt73{font-size:73px};
.fnt74{font-size:74px};
.fnt75{font-size:75px};
.fnt76{font-size:76px};
.fnt77{font-size:77px};
.fnt78{font-size:78px};
.fnt79{font-size:79px};
.fnt80{font-size:80px};



