@charset "UTF-8";

body {
    font-family: Verdana, Roboto, "Droid Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    margin: 0px;
    padding: 0px;
}


/* menu-style common */

ul.menu {
    list-style: none outside none;
}

ul.menu > li > a {
    display: inline-block;
    width: 100%;
}

ul.menu > li div.pulldown > dl,
ul.menu > li div.pulldown > ul,
ul.menu > li div.pulldown > ol {
    box-sizing: border-box;
    min-width: 100%;
}

ul.menu > li div.pulldown > dl > dt > a,
ul.menu > li div.pulldown > dl > dd > a,
ul.menu > li div.pulldown > ul > li > a,
ul.menu > li div.pulldown > ol > li > a {
    display: inline-block;
    width: 100%;
}

ul.menu_L {
    display: table;
    table-layout: fixed;
    border-collapse: collapse;
}    

ul.menu_L > li {
    display: table-cell;
}


ul.menu_L > li div.pulldown {
    position: relative;
    z-index: 100;
    display: none;
}
ul.menu_L > li:hover div.pulldown {
    display: block;
}

ul.menu_L > li div.pulldown > dl,
ul.menu_L > li div.pulldown > ul,
ul.menu_L > li div.pulldown > ol {
    position: absolute;
    top: 0px;
    left: 0px;
}

ul.menu_S {
    margin-left: 0px;
    padding-left: 0px;
}    

ul.menu_S a {
    padding-top: 2px;
    padding-bottom: 2px;
}

a.menuicon img {
    border-style: none;
}


/* header-style */

div#header {
    position: relative;
    clear: both;
}

div#header > div#toplogo {
    position: absolute;
    display: inline;
    top: 0px;
    right: 0px;
    text-align: right;
}

div#header > div#toplogo a img {
    border-style: none;
}

div#header > h1 {
    margin: 0px;
    min-height: 24px;
    padding-top: 0.125em;
    padding-bottom: 0.25em;
    padding-left: 0.5em;
    text-align: left;
    background-color: DimGray;
    color: WhiteSmoke;
    font-size: medium;
    font-weight: bold;
    background: linear-gradient(to right, DimGray, DimGray, DimGray, DimGray, DimGray, DimGray, DimGray, DarkGray);
}

div#header > h1 > a {
    color: Gainsboro;
    text-decoration: none;
}
div#header > h1 > a:hover {
    color: WhiteSmoke;
    text-decoration: underline;
}

div#header > h1 > .menuicon {
    display: inline-block;
    padding-right: 0.5em;
}

div#header > h1 > .menuicon_L {
    display: none !important;
}

div#header > div#mainnavi {
    margin: 0px;
    background-color: White;
}

div#header > div.mainnavi_S {
    position: absolute;
    z-index: 60;
    width: 100%;
    opacity: 0.9375;
}

div#header > div#mainnavi > ul.menu_L {
    margin: 0px;
    box-sizing: border-box;
    width: 100%;
}

div#header > div#mainnavi > ul.menu_L > li {
    height: 2em;
    text-align: center;
    vertical-align: middle;
    border-style: solid;
    border-color: Silver;
    border-width: 0px 0px 2px 4px;
}
div#header > div#mainnavi > ul.menu_L > li:first-child {
    border-left: none;
}
div#header > div#mainnavi > ul.menu_L > li:hover {
    background-color: WhiteSmoke;
    font-weight: bolder;
}
div#header > div#mainnavi > ul.menu_L > li.focus {
    background-color: WhiteSmoke;
}

div#header > div#mainnavi > ul.menu_L > li a {
    color: Black;
    text-decoration: underline;
}

div#header > div#mainnavi > ul.menu_L > li div.pulldown {
    margin: 0px;
}

div#header > div#mainnavi > ul.menu_L > li div.pulldown > dl,
div#header > div#mainnavi > ul.menu_L > li div.pulldown > ul,
div#header > div#mainnavi > ul.menu_L > li div.pulldown > ol {
    margin-top: 2px;
    margin-left: 2px;
    padding-left: 1em;
    border: 2px solid WhiteSmoke;
    background-color: White;
    background-color: rgba(255,255,255,0.875);
    box-shadow: 2px 2px 2px 2px Silver;
    color: Black;
    text-align: left;
    font-weight: normal;
    font-size: smaller;
}

div#header > div#mainnavi > ul.menu_L > li div.pulldown a {
    padding-top: 2px;
    padding-bottom: 2px;
    border-bottom: 2px solid White;
}
div#header > div#mainnavi > ul.menu_L > li div.pulldown a:hover {
    border-bottom-color: Silver;
}

div#header > div#mainnavi > ul.menu_S {
    margin: 0px;
    box-sizing: border-box;
    width: 100%;
}

div#header > div#mainnavi > ul.menu_S > li {
    text-align: center;
    border-style: solid;
    border-color: Silver;
    border-width: 0px 4px 2px 4px;
}

div#header > div#mainnavi > ul.menu_S > li a {
    color: Black;
    text-decoration: underline;
}

div#header > div#mainnavi > ul.menu_S > li div.pulldown {
    margin: 0px;
}

div#header > div#mainnavi > ul.menu_S > li div.pulldown > dl,
div#header > div#mainnavi > ul.menu_S > li div.pulldown > ul,
div#header > div#mainnavi > ul.menu_S > li div.pulldown > ol {
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 1em;
    border-top: 2px dotted Silver;
    color: Black;
    text-align: left;
    font-weight: normal;
}

div#header > div#mainnavi > ul.menu_S > li div.pulldown a {
    color: Black;
    text-decoration: underline;
}

div#header > div#path {
    margin: 0px;
    padding-top: 0.125em;
    padding-left: 0.25em;
    color: Gray;
    font-size: small;
}

div#header > div#path a {
    color: Gray;
    text-decoration: underline;
}
div#header > div#path a:hover {
    color: DimGray;
}

div#header > div.path_S {
    display: none;
}

div#header > h2 {
    position: relative;
    margin: 0px;
    padding-top: 4px;
    padding-bottom: 4px;
    text-align: center;
    font-size: x-large;
    font-weight: bold;
    text-shadow: 0.1em 0.1em 2px Silver;
    background: -webkit-gradient(linear, left top, left bottom, from(White), color-stop(25%, White), color-stop(50%, WhiteSmoke), color-stop(75%, WhiteSmoke), to(Gainsboro));
    background: -webkit-linear-gradient(top, White, White, WhiteSmoke, WhiteSmoke, Gainsboro);
    background: -moz-linear-gradient(top, White, White, WhiteSmoke, WhiteSmoke, Gainsboro);
    background: -o-linear-gradient(top, White, White, WhiteSmoke, WhiteSmoke, Gainsboro);
    background: linear-gradient(to bottom, White, White, WhiteSmoke, WhiteSmoke, Gainsboro);
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#FFFFFFFF', endColorstr='#FFDCDCDC')";
}

div#header > h2 > a.menuicon {
    display: inline-block;
    position: absolute;
    top: 0px;
    right: 4px;
}

div#header > h2 > .menuicon_L {
    display: none !important;
}

div#header > .subheader {
    margin-left: 16px;
}

div#header > div#submenu {
    background-color: WhiteSmoke;
    position: relative;
}
div#header > div#submenu.fixed {
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    z-index: 50;
    opacity: 0.875;
}

div#header > div.submenu_S {
    position: absolute;
    z-index: 60;
    width: 100%;
    opacity: 0.9375;
}

div#header > div#submenu div#submenu_title {
    position: absolute;
    bottom: 0px;
    right: 0px;
    display: inline;
    text-align: right;
    font-size: small;
    font-weight: lighter;
    color: DimGray;
}

div#header > div#submenu div.submenu_title_L {
}

div#header > div#submenu > ul.menu_L {
    margin-top: 4px;
    margin-bottom: 0px;
    margin-left: 0px;
}

div#header > div#submenu > ul.menu_L > li {
    padding-left: 1em;
    padding-right: 1em;
    min-width: 4em;
    text-align: left;
    vertical-align: middle;
    border-left: 1px solid Silver;
    border-bottom: 1px solid WhiteSmoke;
}
div#header > div#submenu > ul.menu_L > li:hover {
    border-bottom-color: Silver;
}
div#header > div#submenu > ul.menu_L > li.focus {
    border-bottom-color: Silver;
}

div#header > div#submenu > ul.menu_L > li > a {
    color: Black;
    text-decoration: underline;
}
div#header > div#submenu > ul.menu_L > li > a:hover {
    font-weight: bolder;
}

div#header > div#submenu div.submenu_title_S {
    display: none !important;
}

div#header > div#submenu > ul.menu_S {
    margin-top: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
}

div#header > div#submenu > ul.menu_S > li {
    padding-left: 1em;
    padding-right: 1em;
    text-align: left;
    border-left: 1px solid Silver;
}

div#header > div#submenu > ul.menu_S > li > a {
    color: Black;
    text-decoration: underline;
}

div#header > h3.subheader {
    margin-top: 8px;
    margin-bottom: 0px;
    border-bottom: 1px solid WhiteSmoke;
    padding-left: 0.25em;
    font-size: large;
    font-weight: bold;
}


/* footer-style */

div.footer {
    clear: both;
    margin-top: 16px;
    border-top: 1px solid Silver;
    padding-top: 8px;
    padding-left: 16px;
    padding-right: 16px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
}

div.footer > div.left {
    float: left;
    text-align: left;
    min-width: 33%;
}
div.footer > div.right {
    float: right;
    text-align: right;
    min-width: 33%;
}

div.footer a {
    color: Gray;
    text-decoration: none;
}
div.footer a:hover {
    color: DimGray;
    text-decoration: underline;
}

div.footer a img {
    border-style: none;
}


/* content-style */

div#content {
    margin-left: 24px;
    margin-top: 16px;
    clear: both;
}

div#content h3,
div#content h4 {
    border-left: 4px solid Silver;
    border-bottom: 1px solid WhiteSmoke;
    padding-left: 0.5em;
}

div#content .chaptertop {
    margin-top: 1.5em;
    margin-left: 1em;
    line-height: 162.5%;
    letter-spacing: 0.0125em;
    clear: both;
}

div#content .chapter {
    margin-left: 2em !important;
    margin-right: 2em;
    line-height: 162.5%;
    letter-spacing: 0.0125em;
}

div#content .chapter small {
    line-height: normal;
    letter-spacing: normal;
}


/* misc-style */

img.quarter_right_L {
    width: 25%;
    float: right;
    margin-left: 4px;
}
img.quarter_left_L {
    width: 25%;
    float: left;
    margin-right: 4px;
}
img.small_right_L {
    width: 12.5%;
    float: right;
    margin-left: 4px;
    border: 0px none transparent;
}
img.small_left_L {
    width: 12.5%;
    float: left;
    margin-right: 4px;
    border: 0px none transparent;
}
img.quarter_right_S,
img.quarter_left_S {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    display: block;
}
img.small_right_S,
img.small_left_S {
    display: none;
}

div.popup {
    position: fixed;
    z-index: 75;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    background-color: white;
    background-color: rgba(255, 255, 255, 0.75);
    overflow-y: scroll;
    text-align: center;
}
div.popup img {
    display: block;
    width: 75%;
    margin: 8px auto;
    box-shadow: 4px 4px 4px 4px Silver;
}
div.popup a {
    display: block;
}
div.popup a.closebutton {
    position: absolute;
    top: 8px;
    right: 12.5%;
    margin: -4px;
    width: 1em;
    height: 1em;
    font-size: xx-large;
    font-weight: bolder;
    line-height: 100%;
    text-align: center;
    background-color: white;
    background-color: rgba(255, 255, 255, 0.5);
    border: 4px solid Red;
    border-radius: 1em;
    color: Red;
    text-decoration: none;
}

table.defaultsheet {
    border: 1px solid black;
    border-collapse: collapse;
}
table.defaultsheet th,
table.defaultsheet td {
    border: 1px solid Gray;
    padding-left: 0.5em;
    padding-right: 0.5em;
    vertical-align: top;
}
table.defaultsheet th {
    background-color: WhiteSmoke;
    font-weight: normal;
    font-style: normal;
}

td.price {
    text-align: right;
}
td.price:after {
    content: "円";
}

dl.hasdesc > dt,
ul.hasdesc > li,
ol.hasdesc > li {
    margin-top: 0.5em;
}

.subblock {
    margin-top: 0px;
    margin-bottom: 0px;
}

span.detail {
    font-size: 93.75%;
    font-weight: lighter;
    padding-top: 0 !important;
    padding-left: 0 !important;
    opacity: 0.875;
    line-height: normal;
    letter-spacing: normal;
}

.detail {
    font-size: 93.75%;
    font-weight: lighter;
    padding-top: 0.25em;
    padding-left: 0.5em;
    opacity: 0.875;
    line-height: normal;
    letter-spacing: normal;
}


@media print {
    div#header > div#mainnavi,
    div#header > div#path,
    div#header > div#submenu {
	display: none !important;
    }	
}
