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

:root{--navy:#102452;--gold:#b17b24}
*{box-sizing:border-box}
/*body{margin:0;color:var(--navy);font-family:Arial,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;line-height:1.7}*/
img{max-width:100%;height:auto}
.wrap{width:min(1100px,92%);margin:auto}
section{padding:28px 0}
.hero{min-height:270px;background:#f7fbff url('../img/main-img.jpg') center/cover no-repeat}
.hero h1{font-size:40px;line-height:1.15;margin:0}
.hero h1 small{display:block;font-size:11px;letter-spacing:0.12em;font-weight:400}
.hero h2{color:#a87422;font-size:24px;margin:10px 0 4px}
.hero p{font-size:16px;margin:0}
.section-title{font-size:26px;border-left:5px solid #d7a02b;padding-left:14px;margin:0 0 16px}
.greeting-grid{display:grid;grid-template-columns:275px 1fr;gap:35px}
.profile{text-align:center}
.profile img{width:270px;aspect-ratio:1/1.1;object-fit:cover; object-position:top center;}
.profile p{line-height:1.45}
.greeting h3{font-size:25px;margin:0;color:var(--navy)}
.philosophy{text-align:center;background:url(../img/philosophy-bg.png) center center no-repeat #fffaf0; background-size:cover;}
.philosophy .section-title{text-align:left}
.philosophy h3{color:#a87422;font-size:28px;margin:0}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.card{padding:20px;background:#f4faff;display:flex;flex-direction:column}
.card.pink{background:#fff7fb}
.card.gold{background:#fffaf2}
.card-head{display:flex;align-items:center;gap:14px}
/*.card-head span{font-size:48px;opacity:.35}*/
.card h3{font-size:22px;margin:0}
.card img{width:80px;height:60px;object-fit:contain;align-self:center;margin:8px}
.card p{flex:1}
.card a{border:1px solid #b78731;text-align:center;padding:9px;text-decoration:none;color:#805819;border-radius:4px; background:#FFFFFF;}
.details{display:grid;grid-template-columns:1.25fr 1fr;gap:40px}
table{border-collapse:collapse;width:100%;font-size:14px;}
th,td{border:1px solid #ccd5e0;padding:7px;text-align:left}
th{background:#eaf1f8;width:28%}
.timeline{list-style:none;padding:0 0 0 20px;border-left:2px solid #c99c45}
.timeline li{position:relative;padding:0 0 16px 14px}
.timeline li:before{content:'';position:absolute;left:-27px;top:6px;width:12px;height:12px;background:#c99c45;border-radius:50%}
.timeline time{font-weight:bold}
.timeline p{margin:0}
@media(max-width:720px){
.hero{background-position:60% center}
.hero .wrap{background:linear-gradient(90deg,rgba(255,255,255,.94),rgba(255,255,255,.5));padding:12px}
.hero h1{font-size:40px;}
.hero h2{font-size:20px;}
.greeting-grid,.details,.cards{grid-template-columns:1fr}
.greeting-grid{gap:8px}
.card{min-height:0}
.philosophy h3{font-size:20px;}
}

/*追加記述*/
#company { margin:70px 0 0; color:var(--navy); font-family:Arial,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif; line-height:1.7;}
section { text-align:left; font-size:16px;}
section p { margin:1.0em 0;}
.hero { text-shadow:
1px 0px 1px rgba(255,255,255,1.0),
1px 1px 1px rgba(255,255,255,1.0),
0px 1px 1px rgba(255,255,255,1.0),
-1px 0px 1px rgba(255,255,255,1.0),
-1px -1px 1px rgba(255,255,255,1.0),
0px -1px 1px rgba(255,255,255,1.0),
0px 0px 5px rgba(255,255,255,1.0),
0px 0px 10px rgba(255,255,255,1.0),
0px 0px 15px rgba(255,255,255,1.0),
0px 0px 20px rgba(255,255,255,1.0);}
.philosophy h3 { margin-top:-1.5em;}
.card { background-size:580px auto !important;}
.card.blue { background:url(../img/business-bg_ik.png) left bottom no-repeat;}
.card.pink { background:url(../img/business-bg_kb.png) center bottom no-repeat;}
.card.gold { background:url(../img/business-bg_gl.png) right bottom no-repeat;}
.card-head span { font-size:52px; line-height:1.0; font-weight:normal !important; font-family:"Century", Times, serif !important; transform: rotate(.00deg) !important;}
.card.blue span { color:#B4C9D8;}
.card.pink span { color:#DBB3C4;}
.card.gold span { color:#DFD0C9;}
article.card a img { display:inline; vertical-align:top; width:24px; height:auto; margin:0; padding:0; line-height:1.0;}
@media all and (max-width:719px)
{
#company { margin:52px 0 0;}
.philosophy h3 { margin-top:0;}
}
@media all and (max-width:519px)
{
.hero p br { display:none;}
}
