	*,body {padding:0; margin:0;}
	html {font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;scroll-behavior: smooth;}
	header {
	position: fixed;
    width: 100%;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
	}
	header h1 img {
	width: 250px;
    margin: 26px 0 0;
	}
	.header-color {
    background-color: rgba(255, 255, 255, 0.9);
    transition: 0.3s;
}
	header .contact {
    background: url(/img/icon_contact.png) 50% 26% no-repeat #A30B0B;
    background-size: 24px;
    display: flex;
    height: 96px;
    width: 96px;
    position: absolute;
    right: 0;
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    display: flex;
    justify-content: center;
    align-items: end;
    box-sizing: border-box;
    padding: 0 0 16px;
}
	main {
	position:relative;
	width:100vw;
	min-height:100vh;
	background: url(/img/main.jpg) 50% 50% no-repeat;
	background-size:cover;
	display: flex;
  	justify-content: center;
  	align-items: center;
	}
	section {}
	h2 {
	font-weight:300;
	font-size:4.2vw;
	color:#fff;
	text-shadow: #000 0 0 10px;
}
	h2 .sp_only {display:none;}
	h2 strong {font-weight:500;font-size:4.2vw;}
	h3 {font-weight:400;font-size:3vw;text-align:center;line-height:1.4;margin-bottom:20px;}
	h3 small {font-weight:400;font-size:1.2vw;color:#0B66A3;display:block;}
	
	
		.messageArea .text .inner {font-size:1.2vw;}
		.overviewArea .text .inner {font-size:1.2vw;pointer-events:none;text-decoration:none;color:#000;}}
		.overviewArea .text .inner p {padding-bottom:10px;pointer-events:none;text-decoration:none;color:#000;}
		.overviewArea .text .inner p strong {font-weight:400;display:block;}
		.seminarArea .text .inner {font-size:1.2vw;}
	
.box:nth-child(odd){
            display: flex;
            flex-direction: row-reverse; 
             }
	
.box .text{
		
	display: flex;
		width:50vw;
  	justify-content: center;
  	align-items: center;
		line-height:1.8;
		font-weight:300;
	}
	.box .text .inner {width:80%;}
	.box .img{width:50vw;vertical-align:top;}
	.box .img img {width:100%;vertical-align:top;}
             @media(max-width : 768px ){
                .box:nth-child(odd){
                display: block;
                 }
            }
            
            .box:nth-child(even){
              display: flex;
               }
            @media(max-width : 768px ){
                .box:nth-child(even){
               display: block;
               }
              }
	.featureArea {
		background: url(/img/bg01.jpg) 50% 50% no-repeat;
	background-size:cover;
		padding:120px 0;
	}
	.featureArea h3 {color:#fff;margin-bottom:52px;}
	.featureArea h3 small {color:#fff;}
	.grid{
    display: grid;
    grid-template-columns: 22.5% 22.5% 22.5% 22.5%;
    grid-gap: 3.3%;
    list-style-type: none;
    width: 90%;
    margin: 0 auto;
}
	.gridbox {background:#fff;}
	.gridbox .text {padding:20px 20px 25px;font-weight:300;} 
	.gridbox .text h4 {
	font-size: 1.5vw;
    line-height: 1.5;
    height: 3rem;
    font-weight: 400;
    margin-bottom: 20px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
	} 
	.gridbox .img img {width:100%;}
	.contactArea {
		background: url(/img/bg02.jpg) 50% 50% no-repeat;
	background-size:cover;
		padding:120px 0;
	}
	.contactArea form {width:70vw;margin:0 auto;font-weight:300;}
	.contactArea label {display:block;padding: 20px 0 10px;font-weight:400;}
	.contactArea label span {color:#A30B0B;}
	.contactArea input {
    width: 70vw;
    height: 56px;
    border: 0.5px solid #0B66A4;
    border-radius: 5px;
    padding: 5px;
    box-sizing: border-box;
		font-weight:300;
}
	.contactArea textarea {
    width: 70vw;
    height: 144px;
    border: 0.5px solid #0B66A4;
    border-radius: 5px;
    padding: 5px;
    box-sizing: border-box;
		font-weight:300;
	}
	.contactArea button ,.contactArea #btn a { 
    background-color: #A30B0B;
    border: none;
    color: white;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    margin: 20px auto;
    width: 40vw;
    display: block;
	}
	footer p {font-size:12px;text-align:center;padding:20px;font-weight:300;}
	
	@media screen and (max-width: 768px) and (orientation: portrait) {
	header h1 img {
	width: 150px;
    margin: 24px 0 0;
	}
	header .contact {
    background-size: 18px;
    height: 70px;
    width: 83px;
    font-size: 10px;
    padding: 0 0 8px;
}
	h2 {font-size:7vw;}
	h2 strong {font-size:7vw;}
	h2 .sp_only {display:inline-block;}
	h3 {font-weight:400;font-size:18px;text-align:center;line-height:1.4;margin-bottom:20px;}
	h3 small {font-weight:400;font-size:12px;color:#0B66A3;display:block;}

.box:nth-child(odd){
            display: block;
            flex-direction: row-reverse; 
             }
	
.box .text{
		
	display: flex;
		width:100%;
  	justify-content: center;
  	align-items: center;
		line-height:1.8;
		font-weight:300;
	}
	.box .text .inner {width:90%;font-size:14px;padding:60px 0;}
	.box .img {width:100%;height:200px;vertical-align:top;display:flex;}
	.box .img img {width:100%;vertical-align:top;object-fit:cover;}
	
		.seminarArea.box .img {height:auto;}
            
		.overviewArea.box .img {display:none;}
		
		.featureArea {padding:60px 0;}
		.featureArea h3 {margin-bottom:30px;}
		.grid {
			grid-template-columns: 49.5% 49.5%;
    		grid-gap: 1%;
		}
		.gridbox .text p {font-size:12px;}
		.gridbox .text h4 {font-size:13px;height:1.5vh;}
		
		.contactArea {padding:70px 0;}
		.contactArea form {font-size:14px;width:90%;}
		.contactArea input {width:100%;}
		.contactArea input::placeholder {font-weight:300;}
		.contactArea textarea {width:100%;}
		.contactArea button {width:60%;font-size:14px;}
		.contactArea #btn a {width:60%;font-size:14px;}
	}