@charset "UTF-8";

/* ************************************************ */
/* 共通 */
/* ************************************************ */
body {
	margin:0 auto;
	padding:0;
	margin:0 auto;
	background:white;
	max-width:1920px;
	font-family:"メイリオ","Hiragino Kaku Gothic Pro",Meiryo,"ヒラギノ角ゴ Pro W3","MS PGothic","MS UI Gothic",Helvetica,Arial,sans-serif;
	color:#555;
}

h1, h2, h3, h4, h5, h6 {
	font-weight:normal;
	margin:0;
}
h1 {
	font-size:2em;
}
a {
	text-decoration:none;
	color:#1c85d6;
}
a:hover {
	opacity:.5;
	transition:all 0.15s;
}
ul,ol,dl,dt,dd {
	margin:0;
	padding:0;
	list-style:none;
}
header, footer, nav, section, article, figure, aside {
	display:block;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

	

/* ************************************************ */
/* サービス毎の定義 */
/* ************************************************ */
.wrapper {
	position:relative;
	max-width:1600px;
	min-width:1000px;
	margin:0 auto;
	padding:0 3%;
}

/* ボタン */
.button, button {
	display:inline-block;
	line-height:3;
	padding:0 1.5em;
	background-color:rgb(90,161,59);
	color:white;
	border-radius:.2em;
	text-overflow:ellipsis;
	white-space:nowrap;
	overflow:hidden;
	max-width:100%;
}
.button.negative { background-color:#bbb; }
.button[disabled], button[disabled] {
	cursor:default;
	background-color:#ccc;
	pointer-events: none;
}



/* ************************************************ */
/* ヘッダ */
/* ************************************************ */
#svc-header {
	display:block;
	line-height:1;
	border-top:.2em solid rgb(117,201,100);
	border-bottom:1px solid #ddd;
	background:white;
	padding:0;
}
#svc-header > .wrapper {
	display:flex;
	align-items:stretch;
	position:relative;
}
#svc-header h1 {
	flex:0 0 auto;
	overflow:hidden;
	text-indent:-9999px;
	background:url(/img/v2/logo.gif) no-repeat left center;
	width:4.5em;
	min-height:1.6em;
	background-size:4.5em 1.3em;
	margin-left:.2em;
}
#svc-header h1 a {
	display:block;
	width:100%;
	height:100%;
}
#svc-header .logo.christmas span {
	background-image:url(/img/v2/logo_christmas_09.gif);
}
#svc-header nav {
	flex:1 1 auto;
	width:80%;
}
#svc-header .menu {
	text-align:right;
	vertical-align:middle;
}
#svc-header .menu > a {
	display:inline-block;
	text-decoration:none;
	color:#444;
	font-size:.75em;
	padding:3em .5em .8em;
	margin-left:.5em;
	background-size:1.6em;
	background-repeat:no-repeat;
	background-position:center .7em;
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADYAAAA8CAYAAAAt3km7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABWNJREFUeNrUWmuIVVUU3veOqGWaWolp9UMFTTLHJqbGSpIe9gCxUTOoxh4aM5X9MEqDAmuC1B9F6Uj2UEsH8VH9UIcYUgQjm6KXVDOBIxZWwljoNKkz2dy+zf0OrFmdO/eec8/rfvDB3eues/f6ztmPtdc+AyoqKkwIuBq8FawEJ4GXgRfwvy7wGNgGfgF+Ah4K2oEBAdY1DKwFH6aYXBgEXgROBRfQZkVuBN8EO4NwJh1AHQPB5eBRcFUeUbkwifceZV0D435j5eBm8Kp+rjkDHgH/YnkoOA48z+XaEeAr4P1gDfhNHMIWsusMdvnvALgd3Av+BPa69JSJ4C3gveBN6n/7oD4D68BNUXbFZzkmtKidHDszwLVgq4soQ1srr5nBe3aqa2zdG9hWJMLqOB5SwvYLOAuc73OGO8R7Z7EuBym2VRe2sLvANcq2H7wWbA5gImpmXfuVfQ3bDkXYpeD7YJmwNYF3gh0BLhsdrLNJ2MrY9pgwhK3j+uOghd3nbAgL/FnW3SJstu2GoIXdBs4R5T/AueBpEx5s3fPAP4VtDn0JTNiLqvwU+KsJHzb0WpLHF9/CpoNVomzXl60mOmxlmw6qlD++hS1U5ZVgJkJhGbYp8VCxwso4lhz8DO420WM323YwV83OnoWVq5lwe8RvS761bWqGLC9GmI7h9pr4sE+VbyxG2ERVPhijsIMuWx3fwiaI38eD2gT6RCd9cPPNs7ChKtSJGx05fPMs7Hz1xOJGZw7fPAuTceCQBAgbksM3z8LkE7owAcKGi9+nihEm48ErmGGKCzbBc3kO3zwL+15FIVNjFFauoo0fihH2tSrPjFHYzDy+eRL2Kfi3KM+PUZhsu4u++RbWrcIomw+fFoOoaWxbhnbdxW5b3lXlZ2IQplNwG4LYj+1RW4b7wOsjFGXbWuB161SIsH/Vdtzm+t4y7hngoDGYbaVUaqA3qJyHTX3JROgU8PUIhL3Bthx8B74XVM7DeWuPgD3C9hj4fIiibN2LRbmHPvQGKcziK3CFstWb7OlIKkBBKdZZr+wr8q1dfoUZJlUalc2eZ+0CRwUgahTrWq7sjS4JnUCFZdgdPlT2u0329ORJn/HkIN7byrokPmCbmTCFOX3dnmltUfaRJnt40A6+pAZ9Lkzhte28d6T6fwun+h7P/dnH4Xqag3ql2ka44Thn08NiCzSM23p7AD86z/0n2S3fLnTS8Ctssske+FVGHHl8Dj4K/hhGV7zHZE8/Kl26pl1bqk32VPKcD8fP8d5q1tXjEn200IfA3liKU+0LLtP6Nq43h4VtDB24A7wOvKSfxIx19mPwI/A3lYF6WYVSzuRVT38yxQizQuy5WK2y/w4uMn0P53LhYoodLsaNFXGigHvtKeY7JnvoKGEP9R/vT1y+rwbWuojax0C40HTciQJFuKGJu3abWr9Z2Gs5mTzhZ4w9zacisZFdLMocYwfb1F8VWN+WehVmt+GrlG0dZ6Z/YtiPdbOXrFf21epN9ivMLpKbVeKkkZFBHCctMhCvUyFdGRfxEYUIexUcq5Imi2MWJWfFRSoYtr6+lk+YPZqpUUkTm0Q5Y5ID54uCLmGrMepYKe3SZ+VatcxkP/BKGo7QN7ksrc4l7HbT99D6W5fBmiSsp48Oqqjhf8L01LmMAzapsL49p2xLtbDxUq3JftLabJIPG459qXrdOCnsATW2GkzpoEGNtQelsGo1E+4oIWE71Aw52xE2lps+B3sSNr3nw2n67OAaq8kKu8Gl35YatM/T0y4bxwMlKEz7XGmFXSkMpxK6IOdDu+l7dDs5bfp+L9GWkJjQD9rE7/FplSk6ZkoX0vfR/wkwAJu7GSOUd/YLAAAAAElFTkSuQmCC);
}
#svc-header .menu .select {
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADMAAAAtCAYAAAADfVPBAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAFdJREFUeNrs2EENACAMBEEgOGr9WysmgEcz62Byv5sRUaNJazSqFWZWlWVgYGBgYGBgYGBgYGBg7rUz06EB8ziHBgwMDAwMDAwMDAwMDMzdHBowHzoCDABLugsk4qtRNgAAAABJRU5ErkJggg==);
	background-position-y:1.05em;
}
#header-menu {
	display:block;
	text-align:left;
	position:absolute;
	z-index:999;
	top:100%;
	right:0;
	display:none;
	margin:-1em 0 -1em;
	padding:1em 0 1em;
	width:24em;
	max-width:99%;
}
#header-menu .search {
	display:flex;
	flex-flow:row nowrap;
	align-items:stretch;
	border:1px solid #ddd;
	border-width:0 1px;
	background-color:white;
}
#header-menu .search > input {
	flex:1 1 auto;
	width:80%;
	line-height:3em;
	padding:0 .5em;
	border:0;
	font-size:1em;
}
#header-menu .search > input::placeholder {
	color:#aaa;
}
#header-menu .search > button {
	color:transparent;
	flex:0 0 auto;
	width:3.2em;
	cursor:pointer;
	border:none;
	background:none;
	margin:0;
	box-shadow:none;
	background-size:1.5em;
	background-position:center center;
	background-repeat:no-repeat;
	background-image: url(data:image/png;base64,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);
}
#header-menu ul {
	display:flex;
	flex-flow:row wrap;
	font-size:.9em;
	border:1px solid #ddd;
	background-color:white;
	line-height:1.2;
}
#header-menu ul li {
	flex:0 0 auto;
	width:50%;
	padding:0;
	margin:0;
	white-space:nowrap;
}
#header-menu ul li > * {
	display:block;
	padding:.9em 1em;
}
#header-menu ul li:nth-child(odd) {
	border-right:1px solid #ddd;
}
#header-menu ul li:not(:nth-last-child(-n+2)) {
	border-bottom:1px solid #ddd;
}
#header-menu h2,
#header-menu .close {
	display:block;
	width:100%;
	text-align:center;
	background-color:#ddd;
	font-size:.9em;
	text-shadow:0 0 .1em white;
	padding:1em .8em;
}
#header-menu .close {
	cursor:pointer;
	color:#555;
	padding:1.4em .8em;
}
#header-menu .close:hover {
	opacity:1;
}



/* ************************************************ */
/* パンくず */
/* ************************************************ */
.breadcrumbs {
	padding:.6em 0;
	font-size:.95em;
	border-bottom:1px solid #ddd;
	line-height:1;
}
.breadcrumbs li {
	display:inline-block;
	margin-right:.3em;
}
.breadcrumbs li:first-child { margin-left:0; }
.breadcrumbs li::after {
	display:inline;
	content:">";
	margin-left:.4em;
	font-size:1em;
	color:#aaa;
}
.breadcrumbs li:last-child:after { display:none; }
.breadcrumbs li .block {
	display:inline-block;
	vertical-align:middle;
	text-decoration:none;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	max-width:20em;
	line-height:1.6;
}



/* ************************************************ */
/* ページナビ */
/* ************************************************ */
.pagenavi-wrap { display:block; }
.pagenavi {
	font-size:.95em;
}
.pagenavi li {
	display:inline-block;
	*display:inline; *zoom:1;
	border:1px solid #bbb;
	border-width:1px 1px 1px 0;
	line-height:1em;
	color:#666;
	margin-bottom:.3em;
}
.pagenavi li:first-child {
	border-width:1px;
	border-radius:.2em 0 0 .2em;
}
.pagenavi li:last-child {
	border-radius:0 .2em .2em 0;
	margin-right:1px;
}
.pagenavi li .page {
	display:block;
	text-decoration:none;
	padding:1.1em 1.5em;
}
.pagenavi .pageset {
	cursor:pointer;
}



/* ************************************************ */
/* フッタ */
/* ************************************************ */
footer {
	display:block;
	border-top:1px solid #ddd;
}
footer .bottom {
	text-align:right;
	margin:1em 0 3em 0;
}
footer .copy {
	font-size:.8em;
	color:#888;
}



/* ************************************************ */
/* メイン */
/* ************************************************ */
main {
	display:block;
	background:#f5f5f5;
}
main > .wrapper {
	padding-top:2em;
	padding-bottom:5em;
}



/* ************************************************ */
/* jquery関連 */
/* ************************************************ */
body .ui-widget-header {
	background-color:#cbe6c4;
}
body .ui-dialog .ui-dialog-content {
	padding:.5em;
}



/* ************************************************ */
/* 4k対応 */
/* ************************************************ */
@media screen and (min-width: 1921px) {

body {
	border:1px solid #eee;
	border-width:0 1px 1px 1px;
}

}



/* ************************************************ */
/* スマホ対応 */
/* ************************************************ */

/* タブレット or スマホ横向き */
@media screen and (max-width: 900px) {

body { max-width:100%; }
.wrapper { max-width:100%; min-width:initial; padding:0 1%; }
#svc-header .logo span {
	width:5em;
	height:1.6em;
}
main {
	max-width:100%;
	padding-left:.5%;
	padding-right:.5%;
}

}

/* スマホ縦 */
@media screen and (max-width: 600px) {

body { max-width:100%; }
.wrapper { max-width:100%; min-width:initial; padding:0 0; }
#svc-header {
	font-size:.95em;
}
#svc-header .logo span {
	width:5em;
	height:1.6em;
}
#header-menu {
	padding:1em 0 0 0;
}
#svc-header .menu > a {
	padding-left:.2em;
	padding-right:.2em;
}
.breadcrumbs {
	font-size:.85em;
	padding:.6em .3em;
}
main {
	max-width:100%;
	padding-left:0;
	padding-right:0;
}
main > .wrapper {
	padding-top:1em;
	padding-bottom:1em;
}

}



/* ************************************************ */
/* アダルト対応 */
/* ************************************************ */
body.adult #svc-header {
	border-color:deeppink;
}
body.adult #svc-header h1 {
	background:url(/img/adult/logo.gif) no-repeat left center;
	width:8em;
	background-size:8em 1.5em;
	min-height:1.8em;
}
body.adult .button, body.adult form button {
	background-color:#ef80a6;
	border:1px solid #ddd;
}
body.adult form input[type="checkbox"]:checked + label:not(.ui-button):before {
	background-color:#ef80a6;
}
@media screen and (max-width: 900px) {
	body.adult #svc-header h1 {
		width:5em;
		background-size:5em 1.3em;
	}
}
