@charset "UTF-8";

/* ---------------------------------------------------------
	CSS Document Common
--------------------------------------------------------- */
form, h1, h2, h3, h4, h5, h6, div, p, ul, ol, li, dl, dt, dd, a {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	list-style: none;
}

html {
	scroll-behavior:smooth
}

body {  margin:0;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	color:#333;

.sp{display:none}

.skiplink{display:none}

a {color:#0066cc}

a[href^="tel:"] {
	pointer-events: none;
	text-decoration:none
}

caption{display:none}

/* ---------------------------------------------------------
	CSS Document buttun
--------------------------------------------------------- */

a.bt01 {
	width:650px;
	display:block;
	margin:0 auto;
	text-align:center;
	background:#f55516;
	padding:20px;
	font-size:33px;
	font-weight:bold;
	color:#fff;
	text-decoration:none;
	border-radius:50px
}

a.bt01 span {
	position: relative;
	display: inline-block;
	padding-left: 35px;
}

a.bt01 span:before {
	content:url(../img/allow01.png);
	width: 0;
	height: 0;
	top: 0;
	left: 0;
	bottom: 0;
	margin-right: 10px;
}

.bt01_off{
	width:650px;
	display:block;
	margin:0 auto;
	text-align:center;
	background:#999;
	padding:20px;
	font-size:33px;
	font-weight:bold;
	color:#fff;
	text-decoration:none;
	border-radius:50px
}

/* ---------------------------------------------------------
	CSS Document top
--------------------------------------------------------- */

.lead_01 {
	width:100%;
	background:url(../img/title_bk01.png) top center,#57bcdb;
	background-repeat:no-repeat,repeat-x;
	font-weight:bold
}

.lead_01 .lead_inner {
	position: relative;
	width:1100px;
	height:445px;
	margin:auto;
	text-align:left;
}

.lead_01 .lead_inner img {
	position: absolute;
	top:14px;
	left:0
}

.lead_01 .catch01 {
	font-size:29px;
	line-height:1.3;
	padding:105px 0 10px;
	color:#fff32b;
	text-shadow:
            2px 2px 2px #333, -2px -2px 2px #333,
           -2px 2px 2px #333,  2px -2px 2px #333,
            2px 0px 2px #333, -2px -0px 2px #333,
            0px 2px 2px #333,  0px -2px 2px #333;
}

.lead_01 h1 p{
	width:525px;
	background:#fff32b;
	padding:15px 30px 12px;
	font-size:58px;
	line-height:1;
	margin-bottom:10px
}

.lead_01 h1 p:first-child{
	width:490px;
	background:#fff32b;
	font-size:33px;
}

.lead_01 h1 p:last-child{
	width:828px;
	background:#105291;
	font-size:32px;
	color:#fff
}

.lead_01 .catch02 {
	background:#ffc90a;
	font-size:29px;
	color:#105291;
	padding:15px;
	text-align:center
}

.area_01 {
	width:100%;
	background:#e0f5fc;
	margin:55px auto 35px;
	text-align:center;
	padding-bottom:20px;
}

.area_02 {
	width:1100px;
	margin:auto;
	padding:30px 0 20px;
}

.area_03 {
	width:100%;
	background:#faf7cd;
	margin:50px auto;
	text-align:center;
	padding:40px 0 30px;
}

#about_01 {
	position: relative;
	display:inline-block;
	margin:auto;
	font-size:25px;
	line-height:1.2;
	text-align:left;
	padding:35px 0 0;
}

#about_01 h2 {
	position: absolute;	position: absolute;
	width:80%;	width:80%;
	display:inline-block;
	background:#105291;
	margin:-55px 10% 0;
	color:#fff;
	font-size:20px;
	padding:10px 50px;
	border-radius:50px;
	text-align:center
}

#about_01 h2 span {
	font-size:15px
}

#about_01 table {
	text-align:left;
	font-weight:bold;
	border-collapse: separate;
	border-spacing: 2px 0;
}

#about_01 table td{
	padding:2px 8px
}

#about_01 table tr td:first-child {
	width:150px;
	font-size:15px;
	text-align:center
}

#about_01 table tr td span {
	display:block
}

#about_01 table tr td .obj01 {
	background:#105291;
	color:#fff;
	padding:5px
}

#about_01 table tr td .obj02 {
	background:#0099c8;
	color:#fff;
	padding:5px
}

#about_01 table .date01 {
	font-size:30px
}

#about_01 table .date01 strong {
	font-size:50px
}

#about_01 .info01 {
	font-size:20px;
	padding:20px 0 0;
	text-align:center
}

.taisyo01 {
	width:1100px;
	margin:auto
}

.taisyo01 h3 {
	display: flex;
	align-items: center;
	font-size:20px;
	font-weight:bold;
	margin-bottom:15px;
}

.taisyo01 h3 span {
	background:#0099c8;
	border-radius:30px;
	padding:5px 60px;
	color:#fff
}

.taisyo01 h3:before,h3:after {
	content: "";
	flex-grow: 1;
	height: 2px;
	background: #0099c8;
	display: block;
}

.taisyo01 p {
	padding:0 185px;
	font-size:20px;
	font-weight:bold;
}

.taisyo01 p::before {
	content:"●";
	margin-right:10px;
	color:#0099c8
}

.note01 {
	width:1100px;
	background:#fff;
	border:1px solid #105291;
	margin:40px auto 0;
	padding:15px 15px 15px 10px;
	text-align:left;
}

.note01 span,
.note01 p {
	display:inline-block;
	vertical-align:top
}

.note01 span{width:340px;padding-right:15px;border-right:5px solid #105291;font-size:18px;line-height:1.5;font-weight:bold;color:#105291;text-align:center}
.note01 p{width:713px;font-size:17px;line-height:1.65;padding-left:15px}
.note01 span img{display:block;margin:5px auto 0}

#thema_01 ul li{
	position: relative;
	background:#e0f5fc;
	margin-bottom:35px;
	padding:25px 35px;
}

#thema_01 ul li .thema_name01{
	position: absolute;
	top:-18px;
	left:25px;
	width:250px;
	height:50px;
	background:#105291;
	padding-top:6px;
	font-size:25px;
	color:#fff;
	font-weight:bold;
	text-align:center;
}

#thema_01 ul li .thema_name02{
	position: absolute;
	top:30px;
	left:25px;
	width:250px;
	padding:10px;
	font-size:22px;
	line-height:1.2;
	color:#105291;
	font-weight:bold;
	text-align:center;
	letter-spacing:0.05em;
}

#thema_01 ul li .thema_name01 span{
	display:block;
	color:#105291;
}

#thema_01 ul li .thema_ti01{
	margin-left:270px;
	padding:5px 0;
	font-size:28px;
	line-height:1.2;
	font-weight:bold
}

#thema_01 ul li .thema_txt01{
	border-left:10px solid #105291;
	margin:10px 0;
	padding:0 15px;
	font-size:18px;
	line-height:1.5;
}

#thema_01 .prof01{
	position: relative;
	background:#fff;
	border:1px solid #79c3db;
	padding:20px 30px;
	font-size:18px;
	line-height:1.5;
	margin-top:20px
}

#thema_01 .prof01 p{
	width:480px;
	font-size:15px;
}

#thema_01 .prof01 .prof_txt01{
	position: absolute;
	width:450px;
	top:0;
	right:200px;
	padding-top:18px;
	text-align:right;
	font-weight:bold
}

#thema_01 .prof01 .prof_txt01 span{
	display:block;
	padding-top:4px
}

#thema_01 .prof01 .prof_txt01 span strong{
	font-size:25px
}

#thema_01 .prof01 .prof_txt01 img{
	position: absolute;
	top:-65px;
	right:-175px
}

#thema_01 .info01{
	padding:20px 0 0;
	font-size:18px;
}

#thema_01 .info01 p span{
	color:#105291
}

#thema_01 ol{
	margin:20px 0 -35px
}

#thema_01 ol p{
	font-size:20px;
	background:#9ddef4;
	padding:5px;
	margin-bottom:10px;
	text-align:center;
	color:#105291;
	font-weight:bold
}

#thema_01 ol li{
	background:#fff;
	width:336px;
	min-height:340px;
	margin-right:11px;
	display:inline-block;
	vertical-align:top;
	border:3px solid #79c3db;
	padding:20px;
}

#thema_01 ol li:last-child{
	margin-right:0;
}

#thema_01 ol li img{
	display:block;
	margin:auto
}

#thema_01 ol li strong{
	display:block;
	font-size:20px;
	padding:15px 0;
	text-align:center
}

#thema_01 .co_01{
	border:1px solid #79c3db;
	padding:20px 37px;
}

#thema_01 .co_01 span,
#thema_01 .co_01 p,
#thema_01 .co_01 img{
	display:inline-block;
	vertical-align:top;
}

#thema_01 .co_01 span{width:200px;background:#0099c8;font-size:20px;text-align:center;font-weight:bold;color:#fff;padding:5px}
#thema_01 .co_01 p.fa_txt01{width:414px;padding:0 20px;line-height:1.5}
#thema_01 .co_01 p.fa_txt02{width:233px;padding-right:20px;font-weight:bold;line-height:1.3;text-align:right;padding-top:30px}
#thema_01 .co_01 p.fa_txt02 strong{font-size:20px}
#thema_01 .co_01 img{width:167px}

.area_03 p {
	font-size:20px;
	font-weight:bold;
	padding:25px 0 0;
}

/* ---------------------------------------------------------
	CSS Document footer
--------------------------------------------------------- */
footer{
	text-align:center;
	background:#105291;
	color:#fff
}

footer .footer_inner{
	width:1100px;
	margin:auto
}

footer .unei{
	font-weight:bold;
	padding:30px 50px 20px;
	font-size:20px;
	text-align:center;
	font-weight:bold
}

footer .unei .name_01{
	display:block;
	font-size:25px;
	margin:3px 0 15px;
}

footer .unei .name_01 span{
	display:block;
	font-size:16px;
	font-weight:normal
}

footer .unei .name_02{
	display:block;
	font-size:20px;
	margin:3px 0 15px;
}

footer .unei .name_02 p{
	margin-top:10px;
}

footer .unei .name_02 span{
	font-size:15px;
	padding:2px 10px;
	background:#022a51;
	color:#fff;
	margin-right:10px;
	border-radius:5px
}

footer .unei .tel_01{
	font-size:20px;
}

footer .unei .tel_01 strong{
	font-size:30px;
}

footer .unei .mail_01{
	display:block;
	font-size:20px;
}

.policy{
	display:inline-block;
	background:#4484c1;
	font-size:15px;
	margin:15px 0 40px;
	padding:5px 50px;
	border-radius:5px
}

.policy a{
	color:#fff
}

.copyright{
	width:100%;
	font-size:12px;
	padding-bottom:30px
}

.copyright p{
	padding:50px 0 10px
}

/* ボタン全体 */
#page_top {
width: 90px;
height: 90px;
position: fixed;
right: 0px;
bottom: 0px;
background: #0099c8;
opacity: 0.8;
}

/* Font Awesome */
#page_top::before {
font-family: 'Font Awesome 5 Free';
font-weight: 900;
content: '\f062';
font-size: 30px;
color: #ffffff;
position: absolute;
top: 20%;
left: 50%;
translate: -50%;
}

#page_top::after {
content: 'TOP';
font-size: 16px;
color: #fff;
position: absolute;
margin: auto;
text-align: center;
width: 100%;
top: 53%;
left: 50%;
translate: -50%;

}