/* CSS Document */

@-ms-viewport {
  width: device-width;
}

.main-bg{
	padding-top: 72px;
	padding-bottom: 58px;
	background: #fff;
}
.main-bg .wrap{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.main-bg .icon{
	width: 9.5%;
}
.main-bg .text{
	width: 87%;
	color: #0d2e9b;
}
.main-bg .text .ttl{
	font-size: 35px;
	line-height: 1;
	font-weight: 700;
}
.main-bg .text .ttl .mini-text{
	font-size: 17px;
	line-height: 1.64;
	display: block;
	margin-top: 20px;
	font-weight: 500;
}

.con-cont{
	padding-top: 15px;
	padding-bottom: 80px;
	background: #d8d8d8;
}
@media print, screen and (max-width: 900px) {
	
.main-bg{
	padding-top: 6.04vw;
	padding-bottom:4.35vw;
}
.main-bg .wrap{
	display: flex;
	justify-content: space-between;
}
.main-bg .icon{
	width: 20.8%;
	padding-top: 0.1vw;
}
.main-bg .text{
	width: 72.4%;
}
.main-bg .text .ttl{
	font-size: 5.8vw;
	line-height: 1;
	font-weight: 700;
}
.main-bg .text .ttl .mini-text{
	font-size: 3.6vw;
	line-height: 1.64;
	display: block;
	margin-top: 3.8vw;
	font-weight: 500;
}
.con-cont{
	padding-top: 9.66vw;
	padding-bottom: 9.66vw;
}
}



.contents-bg{
	background: #fff;
	padding-top: 80px;
	padding-bottom: 110px;
	position: relative;
	margin-top: 40px;
}
.contents-bg .contents-box{
	width: 90%;
	max-width: 806px;
	margin-left: auto;
	margin-right: auto;
}
.contents-bg .contents-box h2{
	margin-bottom: 25px;
	padding-bottom: 2px;
	border-bottom: 1px solid #2282cc;
	font-size:26px;
	color: #2282cc;
}
.contents-bg .contents-box h2.ex{
	margin-bottom: 50px;
}
.contents-bg .contents-box h3{
	margin-bottom: 30px;
	padding:6px 18px;
	border-left: 5px solid #2282cc;
	font-size:20px;
	background: #0d2e9b;
	color: #fff;
}
.contents-bg .contents-box p{
	font-size: 15px;
	line-height: 1.86;
}
.contents-bg .contents-box p.big{
	font-size: 17px;
}
.contents-bg .contents-box p .notes{
	font-size: 12px;
}
.contents-bg .contents-box p .bold{
	font-weight: 700;
}
.contents-bg .contents-box .link{
	color: #2282cc;
	text-decoration: underline;
	display: block;
	font-size: 16px;
}
.contents-bg .contents-box .link.mb{
	margin-bottom: 5px;
}
.contents-bg .contents-box .link .icon{
	width: 20px;
	display: inline-block;
	margin-left: 3px;
	vertical-align: middle;;
}
.contents-bg .contents-box .link .icon img{
	display: block;
}
.contents-bg .contents-box .link::before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    text-decoration: none;
    width: 8px;
    height: 8px;
    border-top: 2px solid #2282cc;
    border-right: 2px solid #2282cc;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: 0;
    margin-right: 5px;
}

.anc-list{
	display: flex;
	margin-top: 60px;
}
.anc-list li{
	width: 326px;
	margin-right: 16px;
	font-size: 15px;
}
.anc-list li a{
	text-align: center;
	line-height: 1;
	color: #fff;
	background: #59a1d9;
	border-radius: 50px;
	padding: 14px 20px;
	display: block;
	width: 100%;
}
.anc-list li a span{
	width: 18px;
	vertical-align: middle;
	margin-left: 10px;
	display: inline-block;
}
.anc-list li a span img{
	display: block;
}
.chat-box{
	box-sizing: border-box;
	position: relative;
	/*background: #fff;
	padding: 20px 20px;*/
	width: 190px;
	z-index: 100;
}
.chat-box .chat-close{
	position: absolute;
	top:5px;
	right:5px;
}
.contents-bg .tex-box{
	margin-bottom: 50px;
}
.contents-bg .tex-box.main{
	margin-bottom: 75px;
}
.contact-flex{
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
}
.contact-flex .box{
	margin-bottom: 10px;
	width: 48%;
}
.contact-flex .box p{
	font-size: 14px;;
}
.contact-flex .box .btn-box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 35px 35px;
	box-sizing: border-box;
	margin-bottom: 12px;
	background: #0d2e9b;
	border-radius: 10px;;
}
.contact-flex .box .btn-box .icon{
	width: 20%;
}
.contact-flex .box .btn-box .text{
	width: 72%;
}
.contact-flex .box .btn-box .text .name{
	margin-bottom: 16px;
	font-size: 22px;
	line-height: 1.54;
	color: #fff;
	font-weight: 500;
}
.contact-flex .box .btn-box .text .link-btn{
	max-width: 300px; /* 190->300px 田中変更  */
	margin-left: 0;
	width: 96%; /* 94->96% 田中変更  */
}
.contact-flex .box .btn-box .text .link-btn div{
	padding-top: 9px;
	padding-bottom: 9px;
}
.contact-flex .box .btn-box .text .link-btn .sankaku{
	right:12px;
	width: 5px;
}
.contents-bg .contents-box h3.ptn2{
	margin-bottom: 20px;
	padding:0px 16px;
	border-left: 5px solid #2282cc;
	font-size:20px;
	background:none;
	color: #0d2e9b;
}
.gr-box{
	padding: 30px 26px;
	background: #ebebeb;
}
.gr-box.mb{
	margin-bottom: 24px;
}
.gr-box .mini{
	font-size: 12px!important;
	margin-bottom: 30px;
}
.contents-bg .contents-box .link2{
	color: #2282cc;
	text-decoration: underline;
}
.contents-bg .contents-box .link2 .icon{
	width: 16px;
	display: inline-block;
	margin-left: 3px;
	vertical-align: middle;;
}
.contents-bg .contents-box .link2 .icon img{
	display: block;
}
.contents-bg .contents-box p.mb{
	margin-bottom: 40px;
}
.contents-bg .contents-box p.mb2{
	margin-bottom: 30px;
}
.contents-bg .contents-box p.notes{
	font-size: 12px;
	line-height: 1.75;
}
.chat-flex{
	display: flex;
	justify-content: space-between;
	max-width: 540px;
	margin-left: auto;
	margin-right: auto;
	align-items: center;
}
.chat-flex .c-logo{
	width: 27%;
}
.chat-flex .text{
	width: 64%;
}
.contents-bg .contents-box .tel-box{
	border-radius: 10px;
	background: #0d2e9b;
	padding:30px 5px;
	margin-bottom: 40px;
	width: 88%;
	max-width: 540px;
	margin-left: auto;
	margin-right: auto;
}
.contents-bg .contents-box .tel-box .tel-ttl{
	line-height: 1;
	text-align: center;
	color: #fff;
	border-bottom: 1px solid #fff;
	font-size: 20px;
	max-width: 410px;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 22px;
	margin-bottom: 20px;
}
.contents-bg .contents-box .tel-box .tel-subtex{
	line-height: 1;
	text-align: center;
	color: #fff;
}
.contents-bg .contents-box .tel-box .tel-subtex .icon{
	width: 64px;
	margin-right: 20px;
	vertical-align: middle;
	display: inline-block;;
}
.contents-bg .contents-box .tel-box .tel-subtex .icon img{
	display: block;
}
.contents-bg .contents-box .tel-box .tel-subtex .t-text{
	vertical-align: middle;
	display: inline-block;;
	font-size: 43px;
}
.contents-bg .contents-box .table-box{
	margin-bottom: 50px;
}
.contents-bg .contents-box .table-box table tr th{
	text-align: left;
	font-weight: 500;
	padding: 12px 20px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	font-size: 15px;
	color: #fff;
}
.contents-bg .contents-box .table-box table tr:first-child th{
	font-size: 18px;
	text-align: center;
	font-weight: 700;
}
.contents-bg .contents-box .table-box table tr th.first{
	width: 5%;
	text-align: center;
	padding-left: 5px;
	padding-right: 5px;
	text-orientation: upright;
	-webkit-text-orientation: upright;
}
.contents-bg .contents-box .table-box table tr th.first .nobasi{
	display: inline-block;
	text-align: center;
	transform: rotate(90deg);
}
.contents-bg .contents-box .table-box table tr th:last-child{
	width: 53%; /* 56-> 53% 田中変更  */
	border-right: 0;
}
.contents-bg .contents-box .table-box table tr td:last-child{
	width: 53%; /* 56-> 53% 田中変更  */
	border-right: 0;
}
.contents-bg .contents-box .table-box table tr:last-child th,.contents-bg .contents-box .table-box table tr:last-child td{
	border-bottom: 0;
}
.contents-bg .contents-box .table-box table tr td{
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	padding: 12px 25px;
	font-size: 15px;
}
.contents-bg .contents-box .table-box table tr th.pl{
	padding-left: 60px;
}
.contents-bg .contents-box .table-box table tr td .red{
	color: #b90011;
	font-size: 12px;;
}
.contents-bg .contents-box .table-box.ptn1 table tr th{
	background: #119c9f;
}
.contents-bg .contents-box .table-box.ptn1 table tr td{
	background: #d3effc;
}
.contents-bg .contents-box .table-box.ptn2 table tr th{
	background: #cf6179;
}
.contents-bg .contents-box .table-box.ptn2 table tr td{
	background: #e9d9ea;
}
.contents-bg .contents-box .bold{
	font-weight: 700;
}
.contents-bg .contents-box .bold2{
	font-weight: 700;
	font-size: 17px;
}
.contents-bg .contents-box .link.mb{
	margin-bottom: 30px;
}
.bottom-table{
	margin-top: 25px;
}
.bottom-table tr th{
	padding: 18px 18px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	font-size: 15px;
	line-height: 1.66;
	text-align: left;
	font-weight: 700;
	background: #838484;;
	color: #fff;
}
.bottom-table tr td{
	padding: 8px 8px 8px 16px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	font-size: 15px;
	line-height: 1.66;
	background: #ebebeb;
	vertical-align: top;
}
.bottom-table tr th:nth-child(1),.bottom-table tr td:nth-child(1){
	width: 12%;
}
.bottom-table tr th:nth-child(2),.bottom-table tr td:nth-child(2){
	width: 31%;
}
.bottom-table tr th:nth-child(3),.bottom-table tr td:nth-child(3){
	width: 21%;
}
.bottom-table tr th:nth-child(4),.bottom-table tr td:nth-child(4){
	width: 35%;
}
.bottom-table tr th:last-child,.bottom-table tr td:last-child{
	border-right: 0;
}
.bottom-table tr:last-child th,.bottom-table tr:last-child td{
	border-bottom: 0;
}
@media print, screen and (max-width: 900px) {

}
@media print, screen and (max-width: 900px) {
	.contents-bg{
		padding-top: 7.25vw;
		padding-bottom: 14.49vw;
		position: relative;
		margin-top:4.83vw ;
	}
	.contents-bg .head-wrap{
		width: 90%;
		max-width: none;
		margin-left: auto;
		margin-right: auto;
		padding-bottom: 4.83vw;
	}
	.contents-bg .contents-box{
		width: 90%;
		max-width: 806px;
		margin-left: auto;
		margin-right: auto;
	}
	.contents-bg .contents-box h2{
		margin-bottom: 5.3vw;
		padding-bottom: 3.1vw;
		border-bottom: 1px solid #2282cc;
		font-size:5.07vw;
	}
	
	.contents-bg .contents-box h2.ex{
		margin-bottom: 5.3vw;
	}
	.contents-bg .contents-box h3{
		margin-bottom: 4.83vw;
		padding:1.0vw 4.8vw;
		border-left: 1.2vw solid #2282cc;
		font-size:4.1vw;
	}
	.contents-bg .contents-box p{
		font-size: 3.6vw;
		line-height: 1.86;
	}
	.contents-bg .contents-box p.big{
		font-size: 3.6vw;
	}
	.contents-bg .contents-box p .notes{
		font-size: 3.0vw;
	}
	.contents-bg .contents-box .link .icon{
		width: 4.8vw;
		display: inline-block;
		margin-left: 1vw;
	}
	.contents-bg .contents-box .link .icon img{
		display: block;
	}
	.contents-bg .contents-box .link::before {
		content: "";
		display: inline-block;
		vertical-align: middle;
		text-decoration: none;
		width: 1.4vw;
		height: 1.4vw;
		border-top: 2px solid #2282cc;
		border-right: 2px solid #2282cc;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		margin-top: 0;
		margin-right: 2.4vw;
	}
	.anc-list{
		display: block;
		margin-top: 0vw;
	}
	.anc-list li{
		width: 85%; /* 74-> 85% 田中変更  */
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 3.38vw;
		font-size: 3.6vw; /* 3.1->3.6vw 田中変更  */
	}
	.anc-list li:last-child{
		margin-bottom: 0;
	}
	.anc-list li a{
		text-align: center;
		line-height: 1;
		border-radius: 12vw;
		padding:2.9vw 2.9vw;
		display: block;
		width: 100%;
		position: relative;
	}
	.anc-list li a span{
		position: absolute;
		width:  2.9vw;
		top: 50%;
		right: 3.3vw;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
	}
	.chat-box{
		max-width:35vw;
		bottom: 0; /*kato 20250205  36vw!important --> 0 */
		/*padding: 3vw 3vw;*/
	}
	.chat-box .chat-close{
		position: absolute;
		top:1vw;
		right:1vw;
		cursor: pointer;
	}
	.contents-bg .tex-box{
		margin-bottom: 9.66vw;
	}
	.contents-bg .tex-box.main{
		margin-bottom: 14.49vw;
	}
	.contact-flex{
		display: block;
		margin-top:7.25vw;
	}
	.contact-flex .box{
		margin-bottom: 4.83vw;
		width: 100%;
	}
	.contact-flex .box.last{
		margin-bottom: 0;
	}
	.contact-flex .box p{
		font-size: 3.3vw;
	}
	.contact-flex .box .btn-box{
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 5.0vw; /* 7.7-> 5.0vw 田中変更  */
		box-sizing: border-box;
		margin-bottom: 2.9vw;
		border-radius: 2.2vw;
	}
	.contact-flex .box .btn-box .icon{
		width: 20%;
	}
	.contact-flex .box .btn-box .text{
		width: 72%;
	}
	.contact-flex .box .btn-box .text .name{
		margin-bottom: 3.8vw;
		font-size: 4.7vw;
		line-height: 1.54;
	}
	.contact-flex .box .btn-box .text .link-btn{
		max-width: none;
		margin-left: 0;
		width: 100%; /* 94->100% 田中変更  */
	}
	.contact-flex .box .btn-box .text .link-btn div{
		padding-top: 2.1vw;
		padding-bottom: 2.1vw;
	}
	.contact-flex .box .btn-box .text .link-btn .sankaku{
		right:2.9vw;
		width: 1.2vw;
	}
	.contents-bg .contents-box h3.ptn2{
		margin-bottom: 4.83vw;
		padding:0px 3.8vw;
		border-left: 1.2vw solid #2282cc;
		font-size:4.3vw;
		background:none;
	}
	.gr-box{
		padding: 7.25vw 5.3vw;
	}
	.gr-box.mb{
		margin-bottom: 2.42vw;
	}
	.gr-box .mini{
		font-size: 2.9vw!important;
		margin-bottom:7.25vw;;
	}
	.contents-bg .contents-box .link2 .icon{
		width: 2.9vw;
		display: inline-block;
		margin-left: 3px;
		vertical-align: middle;;
	}
	.contents-bg .contents-box .link2 .icon img{
		display: block;
	}
	.contents-bg .contents-box p.mb{
		margin-bottom: 7.25vw;
	}
	.contents-bg .contents-box p.mb2{
		margin-bottom: 7.25vw;
	}
	.contents-bg .contents-box p.notes{
		font-size:3.0vw;
		line-height: 1.75;
	}
	.chat-flex{
		display: flex;
		justify-content: space-between;
		max-width: none;
		margin-left: auto;
		margin-right: auto;
		align-items: flex-start;
	}
	.chat-flex .c-logo{
		width: 31%;
	}
	.chat-flex .text{
		width: 64%;
	}
	.contents-bg .contents-box .tel-box{
		border-radius: 10px;
		padding:30px 5px;
		margin-bottom: 40px;
		width: 88%;
		max-width: 540px;
		margin-left: auto;
		margin-right: auto;
	}
	.contents-bg .contents-box .tel-ttl-sp{
		line-height: 1;
		text-align: center;
		color: #0d2e9b;
		font-size: 3.62vw;
		margin-bottom: 4.83vw;
	}
	.contents-bg .contents-box .tel-subtex{
		line-height: 1;
		text-align: center;
		display: flex;
		color: #fff;
		background: #0d2e9b;
		border-radius: 12vw;
		align-items: center;
		padding: 2.9vw 2.9vw;
		font-size: 6.5vw;
		width: 92%;
		margin-left: auto;
		margin-right: auto;
		justify-content: space-between;
		margin-bottom: 9.66vw;
	}
	.contents-bg .contents-box .tel-subtex .icon{
		width: 11vw;
		vertical-align: middle;
		display: inline-block;;
	}
	.contents-bg .contents-box .tel-subtex .icon img{
		display: block;
	}
	.contents-bg .contents-box .t-text{
		font-size: 6.5vw;
		text-align: left;
		letter-spacing: 0.05em;
		width: calc(100% - 17vw);
	}
	.contents-bg .contents-box .table-box{
		margin-bottom: 9.66vw;
	}
	.contents-bg .contents-box .table-box table tr th{
		text-align: left;
		font-weight: 500;
		padding: 2.1vw 2vw;
		font-size:3.0vw;
	}
	.contents-bg .contents-box .table-box table tr:first-child th{
		font-size: 3.3vw;
	}
	.contents-bg .contents-box .table-box table tr th.first{
		width: 7%;
		text-align: center;
		padding-left: 1vw;
		padding-right:1vw;
		text-orientation: upright;
		-webkit-text-orientation: upright;
	}
	.contents-bg .contents-box .table-box table tr th:last-child{
		width: 50%; /* 51.6->50% 田中変更  */
		border-right: 0;
	}
	.contents-bg .contents-box .table-box table tr td:last-child{
		width: 50%; /* 51.6->50% 田中変更  */
		border-right: 0;
	}
	.contents-bg .contents-box .table-box table tr:last-child th,.contents-bg .contents-box .table-box table tr:last-child td{
		border-bottom: 0;
	}
	.contents-bg .contents-box .table-box table tr td{
		padding: 2.1vw 2vw;
		font-size:3.6vw;
	}
	.contents-bg .contents-box .table-box table tr th.pl{
		padding-left: 8.4vw;
	}
	.contents-bg .contents-box .table-box table tr td .red{
		font-size: 3.0vw;
	}
	
	.contents-bg .contents-box .bold2{
		font-size: 4.1vw;
	}
	.contents-bg .contents-box .bold{
		font-weight: 700;
	}
	.contents-bg .contents-box .bold{
		font-weight: 700;
		font-size: 4.1vw;
	}
	.contents-bg .contents-box .link.mb{
		margin-bottom: 7.25vw;
	}
	.bottom-table{
		margin-top: 4.83vw;
	}
	.bottom-table tr th{
		padding: 2vw 2vw;
		font-size: 3.0vw;
	}
	.bottom-table tr td{
		padding: 2vw 2vw;
		font-size: 3.0vw;
	}
	.bottom-table tr th:nth-child(1),.bottom-table tr td:nth-child(1){
		width: 12%;
	}
	.bottom-table tr th:nth-child(2),.bottom-table tr td:nth-child(2){
		width: 27%;
	}
	.bottom-table tr th:nth-child(3),.bottom-table tr td:nth-child(3){
		width: 27%;
	}
	.bottom-table tr th:nth-child(4),.bottom-table tr td:nth-child(4){
		width: 32%;
	}
	.bottom-table tr th:last-child,.bottom-table tr td:last-child{
		border-right: 0;
	}
	.bottom-table tr:last-child th,.bottom-table tr:last-child td{
		border-bottom: 0;
	}
	.contents-bg .contents-box .link{
		padding-left: 1em;
		text-indent: -1em;
	}
	.contents-bg .contents-box .link.mb{
		margin-bottom: 1vw;
	}
	
/* 西岡追加 20240725 */
	
/*追従メニュー内の「イベント情報」アイコン位置修正*/
	.fl-link li:nth-child(2) a .icon{
		margin-right: 1.5vw;
		position: relative;
		top: 0.8vw;
	}
/* 西岡追加 20240725 */
	
/* 西岡追加 20251014 */
	
/*SP時上に戻るアイコン位置修正*/
    .st-backToTopFixed {
        bottom: 190px;
    }
/* 西岡追加 20251014 */	
	
	
	
	
}