*{

margin:0;

padding:0;

box-sizing:border-box;

}

body{

font-family:Yu Gothic,Meiryo,sans-serif;

color:#333;

background:#fff;

}

.container{

width:90%;

max-width:1200px;

margin:auto;

display:flex;

justify-content:space-between;

align-items:center;

}

header{

background:#fff;

padding:20px 0;

box-shadow:0 2px 8px rgba(0,0,0,.08);

}

.logo-area{

display:flex;

align-items:center;

gap:15px;

}

.logo-area img{

width:60px;

}

.logo-area h1{

color:#0a43c5;

font-size:38px;

}

nav ul{

display:flex;

list-style:none;

gap:40px;

}

nav a{

text-decoration:none;

color:#000;

font-weight:bold;

}

.hero{

background:url("hero.jpg") center center;

background-size:cover;

height:360px;

}

/* 背景高さ25%縮小 */

.section{

width:90%;

max-width:1200px;

margin:70px auto;

}

.section h2{

text-align:center;

font-size:48px;

color:#0a43c5;

margin-bottom:40px;

}

.section h2::after{

content:"";

display:block;

width:60px;

height:4px;

background:#0a43c5;

margin:10px auto;

}

table{

width:100%;

border-collapse:collapse;

}

th,td{

border:1px solid #ddd;

padding:25px;

}

th{

width:180px;

background:#fafafa;

color:#0a43c5;

}

.access-box{

display:flex;

border:1px solid #ddd;

}

iframe{

width:60%;

height:350px;

border:none;

}

.access-info{

width:40%;

padding:40px;

font-size:22px;

line-height:2.2;

}

.contact{

text-align:center;

}

.btn{

display:inline-block;

margin-top:25px;

padding:18px 60px;

background:#0a43c5;

color:#fff;

text-decoration:none;

border-radius:8px;

font-size:20px;

}

footer{

background:#003ec7;

color:#fff;

padding:25px;

text-align:center;

}

.footer-logo{

display:flex;

justify-content:center;

align-items:center;

gap:10px;

margin-bottom:10px;

}

.footer-logo img{

width:40px;

}

.footer-logo span{

font-size:28px;

font-weight:bold;

}

@media(max-width:768px){

.container{

flex-direction:column;

}

nav ul{

margin-top:20px;

gap:20px;

}

.hero{

height:220px;

}

.logo-area h1{

font-size:28px;

}

.access-box{

flex-direction:column;

}

iframe,

.access-info{

width:100%;

}

.section h2{

font-size:34px;

}

}