@charset "UTF-8";
/* CSS Document */


.contents2 {
	background-image: none;
}

/* contents-concept */

.contents-concept {
	padding-bottom: 70px;
}

.contents-concept p {
	width: 1060px;
}

/* contents00 */

.contents00 {
	width: 1060px;
	text-align: center;
	margin-bottom: 150px;
}

.contents00 .box01 {
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
	margin-bottom: 130px;
}

.contents00 .box01 .box {
	width: 490px;
}


.contents00 .box01 a:hover {
	opacity: 1;
}

.contents00 .box01 h3 {
	overflow: hidden;
	position: relative;
	border-radius: 35px;
	border-style : solid;
border-color : #e8f5fd;
border-width : 5px;
}

.contents00 .box01 h3 img {
	width: 100%;
height: auto;
	transition:.5s all;
}

.contents00 .box01 a:hover img {
	transform:scale(1.2,1.2);
  transition:.5s all;
}

.contents00 .box01 h4 {
	font-family: 'Josefin Sans', sans-serif;
	font-size: 46px;
color: #16447c;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 300;
	padding: 20px 0px 10px;
}

.contents00 .box01 h5 {
	font-size: 18px;
color: #16447c;
line-height: 1.2;
letter-spacing: 0.2em;
font-weight: 500;
}

.contents00 .box02 h3 a {
	font-size: 35px;
color: #000;
line-height: 1.2;
letter-spacing: 0.15em;
font-weight: 200;
	position: relative;
	display: inline-block;
}

.contents00 .box02 h3 a::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("images/line01.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 70px;
	height: 70px;
	margin-left: -95px;
	margin-top: -16px;
}

.contents00 .box02 h3 a::after {
	content: "";
	position: absolute;
right: 0px;
bottom: 0px;
	background-image: url("images/line02.svg");
background-position: right bottom;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 110px;
	height: 110px;
	margin-right: -120px;
	margin-bottom: -35px;
}

.contents00 .box02 h4 {
	font-family: "fot-tsukumin-pr6n", sans-serif;
	font-size: 25px;
color: #16447c;
line-height: 1.2;
letter-spacing: 0.15em;
font-weight: 400;
	padding: 50px 0px 25px;
}

.contents00 .box02 h5 {
	font-size: 20px;
color: #16447c;
line-height: 1.2;
letter-spacing: 0.2em;
font-weight: 500;
	padding: 15px 0px;
	background-color: #FFF;
	border-radius: 15px;
	border-style : solid;
border-color : #e8f5fd;
border-width : 5px;
}

/* contents01 */

.contents01 {
	width: 1060px;
	text-align: center;
	margin-bottom: 150px;
}

.contents01 .lay01:not(:last-child) {
	margin-bottom: 60px;
}

.contents01 .lay01 > div:not(:last-child) {
	margin-bottom: 50px;
}

/* contents01 .lay01-box01 */

.contents01 .lay01-box01 > div {
	text-align: left;
}

.contents01 .lay01-box01 > div.box02 {
	text-align: center;
	padding: 25px;
	border-radius: 20px;
	background-color: #e4f8f4;
	margin-bottom: 40px;
}

.contents01 .lay01-box01 .box02 h5 {
	font-size: 24px;
color: #16447c;
line-height: 1.5;
letter-spacing: 0.15em;
font-weight: 400;
}



/*contact*/
.contact {
	width: 100%;
}

.contact table {
	width: 100%;
}

.contact table .box {
	margin-bottom:5px;
}

.contact table tr {
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
	align-items: center;
	padding: 15px 0px;
}

.contact table tr.t-end {
	align-items: flex-start;
}

.contact table tr td {
	color: #16447c;
	line-height:1.6;
}

.contact table tr td:first-child {
	flex: 1;
	padding-right: 20px;
}

.contact table tr td:last-child {
	width: 650px;
}

.contact table span.sp-view {
	display: none;
}

.contact table tr td input {
	width:100%;
	border-radius: 10px;
	border-style : solid;
border-color : #cde9fb;
border-width : 2px;
}

.contact table tr td input.radio {
	width: 15px;
}

.contact table tr td textarea {
	width:100%;
	border-radius: 10px;
	border-style : solid;
border-color : #cde9fb;
border-width : 2px;
}

.contact table tr.errer td {
	color: #f3516c;
	vertical-align: middle;
}


.contact span.c01 {
	font-size: 16px;
	line-height: 1.6;
	color: #f3516c;
	vertical-align: top;
	display: inline-block;
	padding-left: 10px;
}

p.text02 {
	line-height: 1.6;
}


input,textarea,button{
	margin:0;
	padding:10px;
	font-size:100%;
}

td div.space {
	margin-top: 20px;
}

input[type="text"] {
	outline: 0;
	border: 1px solid #FFF;
}

textarea[type="textarea"] {
	border: 1px solid #FFF;
	padding: 10px;
}


.button {
	text-align: center;
	margin-top: 50px;
}

button {
	cursor: pointer;
	border:none;
	background-color:rgba(0,0,0,0);
}

.button img {
	height:40px;
	width:auto;
}

button span, a.btn-mail, .btn-box input, .btn-back {
	display:inline-block;
	padding:15px 50px;
	background-color:#72cff3;
	color:#FFF;
	font-weight: 500;
	letter-spacing:0.1em;
	border-radius: 10px;
	transition: .5s;
	border : solid #FFF 1px;
}

button:hover span, a.btn-mail:hover, .btn-box input:hover, .btn-back:hover {
	background-color: #16447c;
}


.btn-box {
	padding-top:40px;
	clear:both;
	margin-bottom:30px;
}



#formWrap {
	width:100%;
	padding-top: 60px;
	padding-bottom: 60px;
}

.formtable {
	width: 100%;
}

.formtable tr {
	padding-left:5px;
	padding-right:5px;
	display:block;
	padding-top: 20px;
	padding-bottom: 20px;
}

.formtable th {
	text-align: left;
	font-weight: normal;
	width: 190px;
	display: inline-block;
	vertical-align:top;
	margin-bottom:10px;
}

.formtable td  {
	text-align: left;
	font-weight: normal;
	width: 660px;
	display: inline-block;
	vertical-align:top;
}

.formtable input  {
	width: 100%;
}




.contact h4 {
	color: #333333;
	line-height: 1.6;
	letter-spacing: 0.05em;
	font-weight: normal;
	margin-bottom:30px;
}

.contact h5 {
	color: #333333;
	line-height: 1.6em;
	letter-spacing: 0.4em;
	font-size: 20px;
	font-weight: normal;
	text-align: center;
	margin-bottom: 20px;
}

span.text003 {
	display:none;
}


/*banner*/
.contents00 .box01-banner{
	 display: flex;
    justify-content: space-between; /* 子要素を均等に配置 */
    flex-wrap: nowrap; /* 折り返しを無効にして一行に保持 */
    max-width: 1060px; /* コンテナの最大幅を1060pxに設定 */
    margin: 0 auto; /* センター寄せ */
    width: 100%; /* コンテナの幅を100%に設定 */
}

.contents00 .box01-banner .box-b{
	   flex: 1 0 48%; /* 各ボックスの基本幅を48%に設定 */
    margin: 5px; /* 周囲のマージンを適用 */
    box-sizing: border-box; /* パディングとボーダーを幅に含める */
}

.contents00 .box01-banner .box-b p.banner{
	
}

.conetnts00 .box01-banner .box-b img{
 width: 50%; 
    height: auto; /* 高さを自動調整 */
}



.sp-view {
	display: none;
}
