@charset "utf-8";

/* UlrichC website layout; colors and controls come from the shared CU theme. */
.ulrichc-site #body_top { padding: 32px 12px 0; }
.ulrichc-site #body_bottom { max-width: 960px; }
.ulrichc-site .main_box { width: auto; padding: 4px; }
.ulrichc-site .ulrichc-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    min-height: 108px;
}
.ulrichc-site .ulrichc-header .box_left,
.ulrichc-site .ulrichc-header .box_right { float: none; }
.ulrichc-site .ulrichc-header .box_left { align-self: flex-start; }
.ulrichc-site .ulrichc-header .box_right { margin-left: auto; }
.ulrichc-site .ulrichc-header img { object-fit: contain; }

/* Keep the banner and its navigation in normal flow, above the breadcrumb. */
.ulrichc-site #body_title {
    width: auto;
    height: auto;
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
}
.ulrichc-site #body_logo { height: 150px; margin: 0; padding: 6px 0 0; box-sizing: border-box; }
.ulrichc-site #navigation { display: block; }
.ulrichc-site #navigation ul { display: flex; flex-wrap: wrap; }
.ulrichc-site #navigation ul li a { padding: 4px 30px; line-height: 1.8; }
.ulrichc-site #crumbs { height: auto; min-height: 2.3em; display: flex; flex-wrap: wrap; }
.ulrichc-site #crumbs li { float: none; }
@media (min-width: 760px) {
    .ulrichc-site #crumbs.smart_hide { display: flex !important; }
}

.ulrichc-site #content_block { grid-template-columns: 174px minmax(0, 1fr); gap: 10px; margin-top: 4px; }
.ulrichc-site #content_block_l { display: block !important; }
.ulrichc-site .navi_right_box { display: flow-root; padding: 10px; min-height: 360px; }
.ulrichc-site #nav a { min-height: 36px; padding: 6px; margin: 0; border: 0; border-radius: 0; text-align: left; line-height: 1.5; }
.ulrichc-site #nav ul { display: block; }
.ulrichc-site #nav ul a { height: auto; }
.ulrichc-site #content_block_r .navi_right_box > .box_left.w350,
.ulrichc-site #content_block_r .navi_right_box > .box_right.w350 {
    box-sizing: border-box;
    width: calc(50% - 16px);
    max-width: 100%;
}
.ulrichc-site #content_block_r img { max-width: 100%; height: auto; }
.ulrichc-site #content_block_r .center_box { display: block; text-align: center; }

.ulrichc-site .ulrichc-bottom-row { display: flex; flex-direction: row-reverse; flex-wrap: wrap; gap: 16px; align-items: flex-start; }
.ulrichc-site .ulrichc-bottom-row > .box_right { float: none; margin: 0; max-width: 100%; }
.ulrichc-site .ulrichc-bottom-row > .v_space { display: none; }
.ulrichc-site .ulrichc-bottom-row .link_list { list-style: none; margin: 0; }

@media (max-width: 759px) {
    .ulrichc-site #body_top { padding: 6px; }
    .ulrichc-site #content_block { grid-template-columns: minmax(0, 1fr); }
    .ulrichc-site #nav { display: flex; flex-wrap: wrap; gap: 6px; }
    .ulrichc-site #nav > li { flex: 1 1 130px; margin: 0; }
    .ulrichc-site #nav a { min-height: 44px; }
    .ulrichc-site #navigation ul li { flex: 1 1 50%; }
    .ulrichc-site #navigation ul li a { padding: 8px; text-align: center; }
    .ulrichc-site .navi_right_box { min-height: 0; }
    .ulrichc-site #content_block_r .navi_right_box > .box_left.w350,
    .ulrichc-site #content_block_r .navi_right_box > .box_right.w350 { float: none; width: auto; }
    .ulrichc-site .ulrichc-header .box_right { margin: 0 0 8px auto; }
    .ulrichc-site .ulrichc-header a.btn { margin: 2px; padding: 5px; }
    .ulrichc-site .ulrichc-header a.btn img { width: 44px; height: 44px; }
}
