@charset "utf-8";

/* ===========================================================================
    company
=========================================================================== */
.keyvisual { margin-bottom:0; }

/* mainvisual */
.main .mainvisual { margin:0 -20px; }
.main .mainvisual img { width:100%; }

/* outline */
.outline .tbl01 * { line-height:1.7; }
.outline .tbl01 td dl dt { font-weight:normal; margin:10px 0 0; }
.outline .tbl01 td dl dt:first-child { margin-top:0; }

/* history */
.history table { border-bottom:1px solid #c5c5c5; line-height:1.7; width:100%; }
.history table th,
.history table td { border-top:1px solid #c5c5c5; vertical-align:top; padding:8px 10px; }
.history table th { background:#f3f3f3; color:#658fc9; text-align:left; }
.history table td { background:#fff; }

/* access */
.access .cf { margin:0 -20px; }
.access .gmap { padding-top:53.26%; }
.access .clm-r { background:#487ac0; background-image:linear-gradient(-25deg, #487ac0 70%, #396fb9 70%, #396fb9 100%); background-image:-webkit-linear-gradient(-25deg, #487ac0 70%, #396fb9 70%, #396fb9 100%); background-image:-moz-linear-gradient(-25deg, #487ac0 70%, #396fb9 70%, #396fb9 100%); background-image:-ms-linear-gradient(-25deg, #487ac0 70%, #396fb9 70%, #396fb9 100%); color:#fff; padding:15px 20px; }
.access .clm-r dl { margin:-15px 0 0; }
.access .clm-r dl dt { font-size:18px; margin:15px 0 0; }

/* group */
.group .clm-l { background:#e2e2e2; margin:0 -20px; padding:15px 20px; }
.group .clm-r { background:#ededed; margin:0 -20px; padding:15px 20px; }
.group h2 { font-size:18px; margin:0 0 -10px; }
.group dl dt { background:#618cc7; color:#fff; display:inline-block; margin:10px 0 5px; padding:0 10px; }
.group .btn-more {s font-weight:bold; text-align:center; letter-spacing:1px; line-height:36px; }
.group .btn-more a { border:3px solid #618cc7; color:#396fb9; display:block; font-weight:bold; text-decoration:none; position:relative; }
.group .btn-more a::before { border-top:2px solid #618cc7; border-right:2px solid #618cc7; content:""; display:block; width:6px; height:6px; position:absolute; top:50%; left:15px; transform:rotate(45deg); margin-top:-3px; }


@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {
}


@media print, only screen and (max-width:639px){
/* outline */
.outline .tbl01 th,
.outline .tbl01 td { display:block; }
.outline .tbl01 tr:first-child th { border-top:none; }
.outline .tbl01 td { border-top:none; }
.outline .tbl01 td img { display:block; margin:5px auto 0; }

/* history */
.history table th,
.history table td { display:block; }
.history table td { border-top:none; }
}


@media screen and (min-width: 640px) {
.keyvisual { margin-bottom:0; }

/* mainvisual */
.main .mainvisual { margin:0; }

/* outline */
.outline { margin:115px 20px 0; }
.outline .tbl01 { max-width:863px; margin:-30px auto 0; }
.outline .tbl01 th,
.outline .tbl01 td { padding:10px 32px; }
.outline .tbl01 th { width:139px; vertical-align:middle; }
.outline .tbl01 td dl dt { margin:0; }
.outline .tbl01 td dl dd { margin:-1.7em 0 0 6em; }
.outline .tbl01 td ul { float:left; }
.outline .tbl01 td ul + img { float:right; }

/* history */
.history { margin:95px 20px 0; }
.history table { max-width:863px; margin:-30px auto 0; }
.history table th,
.history table td { padding:10px 32px; }
.history table th { width:139px; vertical-align:middle; }

/* access */
.access { margin:100px 0 0; }
.access .cf { margin:-17px 0 0; }
.access .clm-l { float:none; width:100%; }
.access .clm-r { box-sizing:border-box; float:none; width:100%; padding:38px 40px; }
.access .clm-r dl { line-height:1.7; margin:-30px 0 0; }
.access .clm-r dl dt { font-size:1.14em; margin:30px 0 7px; }

/* group */
.group { margin:96px 0 0; }
.group .cf { margin:-28px 0 0; }
.group .clm-l,
.group .clm-r { box-sizing:border-box; float:none; width:100%; margin:0; padding:48px 70px 58px; }
.group h2 { font-size:1.14em; margin:0 0 -5px; }
.group dl { line-height:1.7; margin:0 0 -9px; }
.group dl dt { font-size:0.86em; letter-spacing:1px; margin:20px 0 3px; padding:1px 10px; }
.group p { line-height:1.7; }
.group .btn-more { font-size:1.14em; line-height:55px; width:195px; margin:32px 0 0; }
.group .btn-more a::before { width:8px; height:8px; left:19px; margin-top:-4px; }

}

@media print, only screen and (min-width:960px){
/* access */
.access .cf { display:flex; }
.access .clm-l { width:50%; }
.access .clm-r { width:50%; }
.access .gmap { padding-top:90%; }

/* group */
.group .cf { display:flex; }
.group .clm-l,
.group .clm-r { width:50%; }
.group .clm-l { padding:48px 70px 58px 115px; }
.group .clm-r { padding:48px 70px 58px 70px; }
}

@media print, only screen and (min-width:1200px){
/* access */
.access .clm-l { width:65.7%; }
.access .clm-r { width:34.3%; }
.access .gmap { padding-top:60%; }
}


@media only screen and (min-width: 639px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-width: 639px) and (min-device-pixel-ratio: 2) {
}
