@charset "UTF-8";

/*
Theme Name: THE ANSWER
Author: MOZUYA
Version: 1.0
*/

/* Web Font */
/*
@font-face {
  font-family: "title";
  src: url("common/fonts/mplus-2c-light-joyo.eot?") format('eot'),
       url("common/fonts/mplus-2c-light-joyo.woff") format('woff');
  src: url('common/fonts/mplus-2c-light-joyo.ttf') format("truetype")\9;
}
*/

/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:
	
	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com
	
-------------------------------------------------------------------------------*/

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video, details, summary {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}									
article, aside, figure, footer, header, hgroup, nav, section, details, summary {display: block;}
ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:before, 
blockquote:after, 
q:before, 
q:after {content: ''; content: none;}
a {margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent;}
del {text-decoration: line-through;}
abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}
table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: bold; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}
hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}
input, select {vertical-align: middle;}
pre {
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
	word-wrap: break-word; /* IE */
}
input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom;}
select, input, textarea {font: 99% sans-serif;}
table {font-size: inherit; font: 100%;}
small {font-size: 85%;}
strong {font-weight: bold;}
td, td img {vertical-align: top;} 
sub, sup {font-size: 75%; line-height: 0; position: relative;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}
pre, code, kbd, samp {font-family: monospace, sans-serif;}
.clickable,
label, 
input[type="button"], 
input[type="submit"], 
button {cursor: pointer;}
button, input, select, textarea {margin: 0;}
button {width: auto; overflow: visible;}
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }  
.clearfix:after { clear: both; }  
.clearfix { zoom: 1; }




/* Product Style
-------------------------------------------------------------------------------*/
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;  }
.chromeframe {position: absolute; top: 0;}
input:-moz-placeholder, textarea:-moz-placeholder { color:#a9a9a9; }
input:-ms-input-placeholder, textarea:-ms-input-placeholder { color:#a9a9a9; font-weight: normal; font-family: Meiryo, sans-serif; }

/* Android4.4未満対応 */
* {background-color: rgba(255,255,255,0.01); }

/* 選択時の色 */
::-moz-selection{background: #ccc; text-shadow: none;}
::selection {background: #ccc; text-shadow: none;} 

body {
	font-size: 13px;
	background: #fff;
	line-height: 1.2;
}
body, select, input, textarea {
	color: #333;
	background: #fff;
	font-family: "Lucida Grande", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Verdana, sans-serif;
	line-height: 1.3;
}

a {
	color: #000;
	font-weight: bold;
	text-decoration: none;
}
.detail a,
.advisor-writer-wrap a,
.archive-list a {
	/*color: #1a0dab;*/
	color: #0d73ab;
}
a:hover {
	text-decoration: underline;
}
a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
}
/* タップ時の色 */
a:link {-webkit-tap-highlight-color: rgba(255,255,255,0.5);}

.disabled {
	opacity: 0.3;
	-webkit-filter: grayscale(100%); /* モノトーンに変換 webkit */
	-moz-filter: grayscale(100%); /* モノトーンに変換 Firefox */
	filter: grayscale(100%); /* モノトーンに変換 CSS3 */
	filter: progid:DXImageTransform.Microsoft.BasicImage(Opacity=0.3, GrayScale=1); /* モノトーンに変換 IE5.5以降用 */
}

.center {
	text-align: center;
}
.bt,
input[type="submit"],
input[type="button"] {
	display: inline-block;
	margin: 2em 10px;
	padding: 10px 20px;
	background: #0d73ab;
	color: #fff;
	border: 0 none;
	border-radius: 4px;
	line-height: 1.2;
	font-size: 1.1em;
	text-decoration: none;
	-webkit-appearance: none;
}
input[type="button"],
input[name="submitBack"] {
	background: #666;
}
.bt:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
	background: #333;
	color: #fff;
}
.box-sample {
	display: inline-table;
}
.box-sample-wrap {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	font-family: Helvetica, sans-serif;
	font-size: 24px;
	font-weight: 100;
	color: #666;
	text-shadow: 1px 1px 0px #fff;
	letter-spacing: 3px;	
	line-height: 1.2;
	-webkit-background-size: 10px 10px;
	-moz-background-size: 10px 10px;
	background-size: 10px 10px;
	background-color: #ccffff;
	background-image: -webkit-gradient(linear, 0 100%, 100% 0,
	            color-stop(.25, #99dddd), color-stop(.25, transparent),
	            color-stop(.5, transparent), color-stop(.5, #99dddd),
	            color-stop(.75, #99dddd), color-stop(.75, transparent),
	            to(transparent));
	background-image: -webkit-linear-gradient(45deg, #99dddd 25%, transparent 25%,
	          transparent 50%, #99dddd 50%, #99dddd 75%,
	          transparent 75%, transparent);
	background-image: -moz-linear-gradient(45deg, #99dddd 25%, transparent 25%,
	          transparent 50%, #99dddd 50%, #99dddd 75%,
	          transparent 75%, transparent);
	background-image: -ms-linear-gradient(45deg, #99dddd 25%, transparent 25%,
	          transparent 50%, #99dddd 50%, #99dddd 75%,
	          transparent 75%, transparent);
	background-image: -o-linear-gradient(45deg, #99dddd 25%, transparent 25%,
	          transparent 50%, #99dddd 50%, #99dddd 75%,
	          transparent 75%, transparent);
	background-image: linear-gradient(45deg, #99dddd 25%, transparent 25%,
	          transparent 50%, #99dddd 50%, #99dddd 75%,
	          transparent 75%, transparent);
}
.box {
	margin: 15px 0;
	text-align: center;
}
.box > div,
.box > iframe {
	margin-left: auto;
	margin-right: auto;
}
.box-left {
	text-align: left;
}
.box-left > div,
.box-left > iframe {
	margin-left: 0;
	margin-right: auto;
}
.top-box {
	height: 120px;
	margin: 0;
	padding: 15px 0;
	background: #EDEDED;
	line-height: 0;
}
.content-box {
	margin: 15px 0;
	text-align: center;
}
.content-box > div,
.content-box > iframe {
	margin-left: auto;
	margin-right: auto;
}
.content-box-2col {
	overflow: hidden;
}
.content-box-2col > ul > li {
	display: inline-block;
	vertical-align: top;
}
.content-box-2col > ul > li:first-child {
	margin-right: 5px;
}
.content-box-right {
	float: right;
	margin: 0.8em 0 1em 1.5em;
}
.social-icon {
	display: inline-block;
	margin: 0 5px 0 0;
	vertical-align: middle;
}
.social-icon-twitter {
	margin: 0 15px 0 0;
}
.social-icon a {
	display: inline-block;
	font-size: 42px;
}
.social-icon-facebook a {
	color: #3B5998;
}
.social-icon-twitter a {
	color: #55ACEE;
}
.social-icon-facebook a:hover,
.social-icon-twitter a:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
}



header {
	width: 1095px;
	margin: 0 auto;
}
.content {
	width: 1095px;
	margin: 15px auto;
}




/* header
-------------------------------------------------------------------------------*/
header {
	padding: 15px 0;
}
header section {
	display: table;
	width: 100%;
}
header h1,
.header-search {
	display: table-cell;
	vertical-align: middle;
}
.header-search {
	text-align: right;
}
.header-search input[type="text"] {
	width: 320px;
	height: 36px;
	margin: 0 10px 0 0;
	padding: 3px 5px;
	font-size: 16px;
	font-weight: bold;
	background: #FFFFFF;
	border: 2px solid #B3B3B3;
	box-shadow: 0px 0px 0px 5px rgba(0,0,0,0.10);
	border-radius: 5px;
}
.header-search button[type="submit"] {
	width: 100px;
	height: 36px;
	color: #fff;
	text-indent: -9999px;
	background: #F05973 url(common/img/bt-search.png) no-repeat center center;
	border: 2px solid #FFFFFF;
	box-shadow: 0px 0px 0px 5px rgba(240,89,115,0.30);
	border-radius: 5px;
}
header nav ul {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin: 10px 0 0;
}
header nav li {
	display: table-cell;
	padding: 0 10px;
	text-align: center;
}
header nav li:first-child {
	padding: 0 10px 0 0;
}
header nav li:last-child {
	padding: 0 0 0 10px;
}
header nav a {
	display: block;
	padding: 7px 0;
	background: #F05973;
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	border-radius: 3px;
}
body.home header nav li.menu-home a,
body.post-type-qa header nav li.menu-qa a,
body.post-type-column:not(.term-hydration) header nav li.menu-column a,
body.term-hydration header nav li.menu-hydration a,
body.post-type-event header nav li.menu-event a,
body.page-id-24 header nav li.menu-news a,
body.single-post header nav li.menu-news a {
	background: #FE899C;
}


header nav a:hover {
	background: #db0b2e;
	color: #fff;
}



/* main
-------------------------------------------------------------------------------*/
main {
	display: block;
	width: 728px;
	float: left;
}


/* home
-------------------------------------------------------------------------------*/
main.home section {
	margin: 0 0 15px;
}
main.home section h1 {
	margin: 0 0 8px;
	line-height: 0;
	overflow: hidden;
}
.home-pickup {
	overflow: hidden;
}
#slider_thumnb_display {
	float: left;
	width: 300px;
	height: 200px;
}
#slider_list {
	float: right;
	width: 417px;
}
.slider_thumnb {
	width: 0px;
	height: 0px;
	overflow: hidden;
}
.slider_title li {
}
.slider_title a {
	display: block;
	margin: 0 0 8px;
	padding: 0 0 0 8px;
	border-left: 8px solid #ccc;
	font-weight: bold;
}
.slider_title a.active {
	border-left: 8px solid #F05973;
	text-decoration: none;
}
.slider_title a p {
	font-size: 13px;
	color: #F05973;
}
.slider_title a h2 {
	margin: 4px 0 0 0;
	font-size: 15px;
}
.slider_title a:hover h2 {
	color: #000;
	text-decoration: underline;
}
.col2 {
	overflow: hidden;
}
.home-news {
	float: right;
	width: 355px;
}
.home-column {
	float: left;
	width: 355px;
}
.home-bt {
	margin: 10px 0;
	text-align: center;
}
.home-news li,
.home-column li {
	overflow: hidden;
	margin: 0 0 8px;
	font-size: 14px;
}
.home-news figure,
.home-column figure {
	float: left;
	width: 97px;
	padding: 0 10px 0 0;
}
.home-news h2,
.home-column h2 {
	overflow: hidden;
}
main.home section.home-categories h1 {
	margin: 0 0 12px;
}
.home-categories ul {
	overflow: hidden;
}
.home-categories dt {
	min-height: 24px;
	margin: 0 0 5px;
	padding: 3px 0 0 35px;
	font-size: 16px;
	font-weight: bold;
	background: url(common/img/home-tag.png) no-repeat 0 0;
}
.home-categories dd {
	overflow: hidden;
}
.home-categories dd figure {
	float: left;
	width: 74px;
	padding: 0 10px 0 0;
}
.home-categories dd ul {
	overflow: hidden;
	padding: 12px 0 0 0;
}
.home-categories dd li {
	display: inline-block;
	padding: 0 8px 8px 0;
}
.home-categories dd a {
	font-weight: normal;
	text-decoration: underline;
}
.home-categories > ul > li {
	width: 33%;
	float: left;
	margin: 0 0 15px;
}


.home-event ul {
	overflow: hidden;
}
.home-event li {
	display: block;
	float: left;
	width: 162px;
	margin: 0 10px 0 10px;
	padding: 0 0 15px 0;
	vertical-align: top;
}
.home-event li:nth-child(4n) {
	width: 165px;
	margin: 0;
	padding: 0 0 15px 10px;
}
.home-event li figure {
	margin: 0 0 4px;
	line-height: 0;
}
#all-categories-close {
	display: none;
}



/* content
-------------------------------------------------------------------------------*/
.topicpath li {
	display: inline-block;
	font-size: 0.9em;
	color: #999;
}
.topicpath li:before {
	content: " » ";
}
.topicpath li:nth-child(1)::before {
	content: "";
}
.topicpath a {
	color: #888;
}
.topicpath a:hover {
	color: #aaa;
}

.post-type-title {
	margin: 0 0 15px;
	overflow: hidden;
}
.subtitle {
	margin: 0;
	font-size: 18px;
	font-weight: bold;
	color: #F05973;
	line-height: 1.2;
}
article h1 {
	position: relative;
	margin: 5px 0 20px;
	font-size: 32px;
	font-weight: normal;
	line-height: 1.2;
	letter-spacing: -1px;
}
#page #main-column h2 {
	margin-bottom: 10px;
}
#article-meta a {
	font-weight: normal;
}
.article-meta-top {
	margin: 10px 0;
	font-size: 16px;
	line-height: 1.2;
}
.article-meta-top,
.article-meta-top a {
	color: #666;
}
.article-meta-top a:hover {
	color: #999;
}
.article-meta-top li {
	/*display: inline-block;*/
	margin-bottom: 10px;
}
.article-author {
	font-size: 0.9em;
}
.article-author span {
	display: inline-block;
	margin: 0 0.5em 0 0;
}

.article-meta-box {
	text-align: center;
}
.article-meta-box > span > div {
	margin: 0 auto;
}
.article-middle,
.article-middle-link-wrap,
.article-latest {
	margin-bottom: 20px;
}
.article-middle-link-wrap {
	overflow: hidden;
}
.article-middle-link li {
	line-height: 1.5;
	margin-bottom: 10px;
}
.article-related,
.article-recommend {
	width: 336px;
	float: left;
}
.article-related {
	margin-right: 20px;
}
.article-related h3 {
	display: none;
}
.social-button,
.article-tags {
	overflow: hidden;
	margin: 10px 0;
}
.social-button {
	margin: 10px 0 0;
	font: normal 13px/1 Arial, sans-serif;
}
.social-button li {
	display: inline-block;
	margin: 0 10px 0 0;
	vertical-align: top;
}
.social-button a {
	display: inline-block;
	padding: 4px 7px;
	color: #fff;
	line-height: 1.2;
	border-radius: 4px;
	text-decoration: none;
}
.social-button a:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
}
.social-comment a {
	background: #c00;
}
.social-twitter a {
	background: #55acee;
}
.social-facebook a {
	background: #3b5998;
}
.social-line a {
	background: #00C100;
}
.social-hatena a {
	background: #008fde;
}
.social-hatena strong {
	line-height: 1;
}
.social-button i,
.social-hatena strong {
	margin: 0 5px 0 0;
}
.social-button-top {
	margin-top: 20px;
}
.article-tags {
	line-height: 1.3;
}
.article-tags > div {
	margin: 0 0 5px;
}
.article-tags,
.article-tags a {
	color: #666;
}
.article-author a,
.article-tags a {
	text-decoration: underline;
}
.article-author a:hover,
.article-tags a:hover {
	color: #999;
}

.detail {
	margin: 25px 0;
	line-height: 1.8;
}
.detail h2 {
	margin: 1.2em 0 0.5em;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.2;
}
.detail .post-index-wrap + h2 {
	margin: 0.5em 0;
}
.detail h2.strapline span {
	display: inline-block;
	position: relative;
	padding-left: 12px; 
}
.detail h2.strapline span:before,
.detail h2.strapline span:after {
	position: absolute;
	content: '\0020';
	left: 0;
	width: 8px;
	height: 8px;
	background: #FF005D;
	border-radius: 16px;
}
.detail h2.strapline span:before {
	top: 2px;
}
.detail h2.strapline span:after {
	top: 14px;
	background: #333;
}
.detail h3 {
	margin: 1.2em 0 0.5em;
	font-size: 1.3em;
	font-weight: bold;
	line-height: 1.2;
}
.detail h4 {
	margin: 1.2em 0 0.5em;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1.2;
}
.detail h5 {
	margin: 1.2em 0 0.5em;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1.2;
}
.detail p {
	margin: 1em 0;
}
.detail p.post-excerpt {
	margin: 0 0 1em;
	padding: 10px 12px;
	background: #eee;
	line-height: 1.5;
	color: #444;
}
#detail-text {
	/*overflow: hidden;*/
}
#detail-text ol li {
	margin: 0.3em 0 0.3em 1.5em;
	list-style: decimal;
}
#detail-text ul li {
	margin: 0.3em 0 0.3em 1.5em;
	list-style: disc;
}
/* #F05973 */
.nextpage {
	line-height: 1.3;
}
.nextpage a {
	display: block;
	width: 500px;
	margin: 1em auto;
	padding: 7px 7px 7px 80px;
	border: 3px solid #F05973;
	border-radius: 5px;
	overflow: hidden;
	vertical-align: middle;
	color: #000;
	text-decoration: underline;
	background: #fff url(common/img/bt-next-bg.png?v2) no-repeat left center;
}
.nextpage a:hover {
	background-color: #F05973;
	color: #fff;
}


article figure {
	width: 500px;
	margin: 1em auto;
	/*
	padding: 8px;
	border: 1px solid #ddd;
	border-radius: 5px;
	background: #eee;
	*/
	text-align: center;
	clear: both;
}
article figure img {
	max-width: 100%;
	height: auto;
	border: 1px solid #ddd;
}
article .figure300 {
	width: 320px;
	float: right;
	margin: 0 auto 1em 15px;
}
article figure.figure-wide {
	width: 100%;
	clear: both;
}
article .no_img_fig {
	width: 300px;
	float: left;
	margin: 0 15px 10px 0;
}
article figcaption {
	font-size: 13px;
	color: #666;
	text-align: left;
	line-height: 1.3;
}

.post-nav {
	display: table;
	width: 80%;
	margin: 10px auto;
}
.post-nav li {
	display: table-cell;
	width: 33%;
	padding: 0 10px;
	line-height: 1.2;
}
.post-nav li a {
	display: block;
	padding: 10px 0;
	text-align: center;
	color: #333;
	text-decoration: none;
	font-weight: bold;
	background: #ededed;
	border-radius: 3px;
}
.post-nav li a:hover {
	color: #fff;
	background: #666;
}
.post-nav a:empty {
	display: none;
}
.advisor-writer-wrap {
	margin: 15px 0;
}
.advisor-profile,
.writer-profile {
	margin-bottom: 10px;
	padding: 8px 10px 10px;
	background: #fdfbee;
	border: 1px solid #e1c579;
	border-radius: 2px;
	font-size: 13px;
	line-height: 1.4;
	overflow: hidden;
}
.writer-profile {
	border: 1px solid #b5b5b5;
	background: #f8f8f8;
}
.advisor-profile h2,
.writer-profile h2 {
	margin: 0 0 5px 0;
	font-size: 21px;
	font-weight: normal;
}
.advisor-profile figure,
.writer-profile figure {
	width: auto;
	max-width: 100%;
	margin: 0;
	padding: 0 10px 0 0;
	text-align: left;
	float: left;
}
.advisor-profile-text,
.writer-profile-text {
	overflow: hidden;
}
.advisor-profile p,
.writer-profile p {
	margin: 0.5em 0 0 0;
}

.pagination,
.single-pagenation {
	margin: 30px 0 35px;
	text-align: center;
}
.pagination > span,
.pagination > a,
.single-pagenation > span,
.single-pagenation > a {
	display: inline-block;
	margin: 0 3px;
	padding: 7px 10px;
	background: #eee;
	border-radius: 4px;
	line-height: 1;
}
.pagination > span,
.single-pagenation > span {
	background: #999;
	color: #fff;
}
.pagination > a,
.single-pagenation > a {
	text-decoration: none;
	font-weight: bold;
	background: #F05973;
	color: #fff;
}
.pagination > a:hover,
.single-pagenation > a:hover {
	color: #fff;
	background: #666;
}




section.archive h1 {
	margin: 20px 0;
	font-size: 28px;
	font-weight: normal;
	line-height: 1.3;
	letter-spacing: -1px;
}
section.archive h1 img {
	vertical-align: -35%;
}
.archive-list {
	margin: 20px 0 30px;
}
.archive-list li {
	overflow: hidden;
	margin-bottom: 15px;
}
.archive-list li figure {
	float: left;
	width: 90px;
	padding-right: 10px;
	text-align: center;
}
.archive-list li figure img {
	max-width: 100%;
	height: auto;
}
.post-list-date {
	margin: 0 0 4px;
	color: #999;
	font-size: 0.9em;
}
.archive-list li .post-list-detail {
	overflow: hidden;
	line-height: 1.4;
}
.post-list-detail h2 {
	margin: 0 0 2px;
	font-size: 18px;
	line-height: 1.2;
}
.post-list-detail h2 a {
	text-decoration: none;
}
.post-list-detail h2 a:hover {
	text-decoration: underline;
}

.post-type {
	display: inline-block;
	padding: 2px 7px;
	background: #ddd;
	border-radius: 10px;
	line-height: 1.2;
	color: #fff;
	font-size: 10px;
}


.detail input[type="text"],
.detail input[type="email"],
.detail input[type="password"],
.detail select,
.detail textarea {
	width: 97%;
	padding: 3px;
	font-size: 1.1em;
	border: 2px solid #aaa;
}
.detail select {
	width: auto;
	border-radius: 5px;
}
.detail input[name="year"],
.detail input[name="month"],
.detail input[name="day"] {
	width: auto;
	margin: 0 5px 0 0;
}
.mw_wp_form dl {
	margin: 0 0 0.8em;
	font-size: 1.1em;
}
.mw_wp_form dt {
	font-weight: bold;
}
.mw_wp_form_confirm dt {
	margin: 0 0 5px;
	padding: 3px 5px;
	background: #eee;
	border-radius: 3px;
}
.mw_wp_form_confirm dd {
	font-size: 1.3em;
}
.mw_wp_form_confirm {
	padding: 30px 0;
}
.mw_wp_form_confirm > form:before {
	content: '入力内容をご確認ください。';
	display: block;
	margin: 30px 0 10px;
	padding: 4px 6px;
	background: #FFF0BB;
	border-radius: 4px;
	font-weight: bold;
}

.photo_s {
	width: 190px;
	float: right;
	padding: 5px;
	margin: 0 0 10px 10px;
	overflow: hidden;
	border: 1px solid #ccc;
}
.photo_s p {
	font-size: 75%;
	margin: 0;
}
.photo_zu {
	width: 312px;
	float: right;
	padding: 5px;
	margin: 0 0 10px 10px;
	overflow: hidden;
	border: 1px solid #ccc;
	border-radius: 4px;
	line-height: 1.3;
	font-size: 0.9em;
}
.photo_zu img {
	margin: 0 0 3px;
}
.photo_zu p {
	margin: 0;
}
.photo_zu_wrap,
article figure.photo_zu_wrap {
	float: right;
	width: 336px;
	margin: 1em 0 1em 1em;
}
.photo_zu_wrap:after {
	content: "";
	display: block;
	clear: both;
}
.photo_movie {
	width: 310px;
	float: right;
	padding: 5px;
	margin: 0 0 10px 10px;
	overflow: hidden;
	border: 1px solid #ddd;
	font-size: 0.9em;
}
.photo_eplayer {
	width: 225px;
	float: right;
	margin: 10px;
	overflow: hidden;
}
.photo_movie p {
	margin: 0;
}
.photo_main {
	padding: 1em;
	margin: 1em 0;
	text-align: center;
	overflow: hidden;
	background: #F2F2F2;
	font-size: 0.9em;
	border-radius: 3px;
}
.photo_main p {
	margin: 0;
}

.alignleft {
	float: left;
}
.alignright {
	float: right;
}
.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
blockquote.alignleft,
img.alignleft {
	margin: 7px 24px 7px 0;
}
.wp-caption.alignleft {
	margin: 7px 14px 7px 0;
}
blockquote.alignright,
img.alignright {
	margin: 7px 0 7px 24px;
}
.wp-caption.alignright {
	margin: 7px 0 7px 14px;
}
blockquote.aligncenter,
img.aligncenter,
.wp-caption.aligncenter {
	margin-top: 7px;
	margin-bottom: 7px;
}
blockquote.alignleft,
blockquote.alignright {
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	padding-top: 17px;
	width: 50%;
}
blockquote.alignleft p,
blockquote.alignright p {
	margin-bottom: 17px;
}
.wp-caption {
	margin-bottom: 24px;
}
.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0;
}
.wp-caption {
	color: #767676;
}
.wp-caption-text {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	font-size: 12px;
	font-style: italic;
	line-height: 1.5;
	margin: 9px 0;
	padding-right: 10px;
}
.wp-smiley {
	border: 0;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

.side-box-top {
	height: 280px;
	line-height: 0;
}
.side-box-float-wrap {
	position: relative;
	height: 600px;
}
#side-box-float {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	width: 336px;
	height: 600px;
	text-align: center;
}
.detail table {
	width: 100%;
	margin: 1em 0;
}
.detail th,
.detail td {
	padding: 7px 7px 7px 0;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.detail th {
	min-width: 15%;
	max-width: 50%;
	text-align: left;
}







/* sidebar
-------------------------------------------------------------------------------*/
.side {
	width: 336px;
	float: right;
}
.side .box,
.side aside {
	margin: 0 0 15px;
}
.side aside h2 {
	margin: 0 0 8px;
}
.side ol li,
.side ul li {
	list-style-type: none;
}

#side-ranking-tab {
	margin: 8px 0;
	text-align: center;
}
#side-ranking-tab li {
	display: inline;
}
#side-ranking-tab a {
	position: relative;
	display: inline-block;
	margin: 0 10px;
	padding: 5px 20px;
	background: #999;
	color: #fff;
	border-radius: 3px;
}
#side-ranking-tab a.active {
	background: #F05973;
}
#side-ranking-tab a:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(153, 153, 153, 0);
	border-top-color: #999;
	border-width: 5px;
	margin-left: -5px;
}
#side-ranking-tab a.active:after {
	border-top-color: #F05973;
}
#side-ranking-detail li {
	display: table;
	width: 100%;
	margin: 8px 0;
	line-height: 1.3;
}
#side-ranking-detail li:before {
	display: table-cell;
	content: '';
	width: 30px;
	height: 25px;
	overflow: hidden;
	background: url(common/img/rank.png) no-repeat;
	background-position: 0 0;
	background-size: auto 25px;
}
#side-ranking-detail li:nth-child(2):before { background-position: -500px 0;}
#side-ranking-detail li:nth-child(3):before { background-position: -1000px 0;}
#side-ranking-detail li:nth-child(4):before { background-position: -1500px 0;}
#side-ranking-detail li:nth-child(5):before { background-position: -2000px 0;}
#side-ranking-detail li:nth-child(6):before { background-position: -2500px 0;}
#side-ranking-detail li:nth-child(7):before { background-position: -3000px 0;}
#side-ranking-detail li:nth-child(8):before { background-position: -3500px 0;}
#side-ranking-detail li:nth-child(9):before { background-position: -4000px 0;}
#side-ranking-detail li:nth-child(10):before { background-position: -4500px 0;}
#side-ranking-detail li div {
	display: table-cell;
	vertical-align: middle;
}
#side-ranking-detail a {
	display: block;
}
#side-ranking-detail a:hover {
	text-decoration: underline;
}
.side .right-banner {
	margin: 0 0 10px;
	text-align: center;
}




/* footer
-------------------------------------------------------------------------------*/
footer {
	margin: 50px 0 0 0;
	padding: 1px 0 10px;
	text-align: center;
	background: #EDEDED;
	font-size: 12px;
	color: #666;
}
footer ul,
footer p {
	margin: 30px 0;
}
footer ul li {
	display: inline-block;
	margin: 0 10px;
}
footer a {
	color: #666;
	font-weight: normal;
	text-decoration: underline;
}




/* Print styles
-------------------------------------------------------------------------------*/
@media print {

}


/* Media queries
-------------------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
	
		
}





.sp-carousel {
	margin: 0 0 1em 0;
}
.sp-carousel img {
	max-width: 100%;
	height: auto;
}

/*! formstone v0.8.40 [carousel.css] 2016-02-28 | MIT License | formstone.it */

/**
	 * @class
	 * @name .fs-carousel-element
	 * @type element
	 * @description Target elmement
	 */
/**
	 * @class
	 * @name .fs-carousel
	 * @type element
	 * @description Base widget class
	 */
/**
	 * @class
	 * @name .fs-carousel.fs-enabled
	 * @type modifier
	 * @description Indicates enabled state
	 */
/**
	 * @class
	 * @name .fs-carousel.fs-rtl
	 * @type modifier
	 * @description Indicates right to left display
	 */
/**
	 * @class
	 * @name .fs-carousel.fs-carousel-auto_height
	 * @type modifier
	 * @description Indicates auto height sizing
	 */
/**
	 * @class
	 * @name .fs-carousel.fs-carousel-contained
	 * @type modifier
	 * @description Indicates overflow: hidden
	 */
/**
	 * @class
	 * @name .fs-carousel.fs-carousel-single
	 * @type modifier
	 * @description Indicates single item display
	 */
.fs-carousel {
  /**
		 * @class
		 * @name .fs-carousel-viewport
		 * @type element
		 * @description Carousel container
		 */
  /**
		 * @class
		 * @name .fs-carousel-wrapper
		 * @type element
		 * @description Carousel container
		 */
  /**
		 * @class
		 * @name .fs-carousel-container
		 * @type element
		 * @description Canister container
		 */
  /**
		 * @class
		 * @name .fs-carousel-canister
		 * @type element
		 * @description Item container
		 */
  /**
		 * @class
		 * @name .fs-carousel-canister
		 * @type element
		 * @description Item container
		 */
  /**
		 * @class
		 * @name .fs-carousel-item
		 * @type element
		 * @description Individual item
		 */
  /**
		 * @class
		 * @name .fs-carousel-controls
		 * @type element
		 * @description Controls container
		 */
  /**
		 * @class
		 * @name .fs-carousel-controls.fs-carousel-visible
		 * @type modifier
		 * @description Indicates visible state
		 */
  /**
		 * @class
		 * @name .fs-carousel-control
		 * @type element
		 * @description Control element
		 */
  /**
		 * @class
		 * @name .fs-carousel-control.fs-carousel-control_previous
		 * @type modifier
		 * @description Indicates previous control
		 */
  /**
		 * @class
		 * @name .fs-carousel-control.fs-carousel-control_next
		 * @type modifier
		 * @description Indicates next control
		 */
  /**
		 * @class
		 * @name .fs-carousel-control.fs-carousel-control_disabled
		 * @type modifier
		 * @description Indicates disbaled state
		 */
  /**
		 * @class
		 * @name .fs-carousel-pagination
		 * @type element
		 * @description Item element
		 */
  /**
		 * @class
		 * @name .fs-carousel-pagination.fs-carousel-visible
		 * @type modifier
		 * @description Indicates visible state
		 */
  /**
		 * @class
		 * @name .fs-carousel-page
		 * @type element
		 * @description Pagiantion item element
		 */
  /**
		 * @class
		 * @name .fs-carousel-page.fs-carousel-active
		 * @type modifier
		 * @description Indicates active state
		 */
}
.fs-carousel.fs-carousel-enabled {
  width: 100%;
  position: relative;
}
.fs-carousel.fs-carousel-enabled:after {
  clear: both;
  content: '';
  display: table;
}
.fs-carousel,
.fs-carousel:after,
.fs-carousel:before,
.fs-carousel *,
.fs-carousel *:after,
.fs-carousel *:before {
  box-sizing: border-box;
  -webkit-transition: none;
          transition: none;
  -webkit-user-select: none !important;
     -moz-user-select: none !important;
      -ms-user-select: none !important;
          user-select: none !important;
}
.fs-carousel-enabled.fs-carousel-contained,
.fs-carousel-enabled.fs-carousel-contained .fs-carousel-viewport,
.fs-carousel-enabled.fs-carousel-contained .fs-carousel-wrapper,
.fs-carousel-enabled.fs-carousel-contained .fs-carousel-container {
  overflow: hidden;
}
.fs-carousel-enabled .fs-carousel-viewport {
  position: relative;
}
.fs-carousel-enabled .fs-carousel-viewport:after {
  clear: both;
  content: '';
  display: table;
}
.fs-carousel-enabled .fs-carousel-wrapper {
  position: relative;
}
.fs-carousel-enabled .fs-carousel-wrapper:after {
  clear: both;
  content: '';
  display: table;
}
.fs-carousel-enabled .fs-carousel-container {
  position: relative;
}
.fs-carousel-enabled .fs-carousel-container:after {
  clear: both;
  content: '';
  display: table;
}
.fs-carousel-enabled .fs-carousel-canister {
  position: relative;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  margin: 0;
  overflow: hidden;
  -webkit-transition: -webkit-transform 0.5s ease;
          transition: transform 0.5s ease;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.fs-carousel-enabled.fs-carousel-auto_height .fs-carousel-canister {
  -webkit-transition: height 0.5s ease, -webkit-transform 0.5s ease;
          transition: height 0.5s ease, transform 0.5s ease;
}
.fs-carousel-enabled .fs-carousel-item {
  min-height: 1px;
  display: block;
  float: left;
}
.fs-carousel-enabled .fs-carousel-item img {
  -webkit-user-drag: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.fs-carousel-single .fs-carousel-item {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.fs-carousel-single .fs-carousel-item.fs-carousel-visible {
  position: relative;
  z-index: 2;
}
.fs-carousel-controls {
  display: none;
}
.fs-carousel-enabled .fs-carousel-controls {
  width: 100%;
  margin: 0;
  padding: 0;
}
.fs-carousel-enabled .fs-carousel-controls.fs-carousel-visible,
.fs-carousel-controls_custom.fs-carousel-visible {
  display: block;
}
.fs-carousel-enabled .fs-carousel-control {
  position: absolute;
  top: 0;
  bottom: 0;
  border: 0;
  cursor: pointer;
  display: block;
  padding: 0;
  visibility: hidden;
  width: 40px;
  height: 40px;
  background: #ffffff;
  border-radius: 100%;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.25);
  margin: auto;
  opacity: 0;
  overflow: hidden;
  text-indent: 200%;
  -webkit-transition: opacity 0.15s ease, visibility 0.15s ease;
          transition: opacity 0.15s ease, visibility 0.15s ease;
  white-space: nowrap;
}
.fs-carousel-enabled .fs-carousel-control:before {
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
  margin: auto;
}
.no-opacity .fs-carousel-enabled .fs-carousel-control {
  text-indent: -999px;
}
.fs-carousel-enabled .fs-carousel-control.fs-carousel-visible {
  visibility: visible;
  opacity: 1;
}
.fs-carousel-enabled .fs-carousel-control_previous,
.fs-carousel-enabled.fs-carousel-rtl .fs-carousel-control_next {
  right: auto;
  left: 20px;
}
.fs-carousel-enabled .fs-carousel-control_previous:before,
.fs-carousel-enabled.fs-carousel-rtl .fs-carousel-control_next:before {
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-right: 10.5px solid #333333;
  border-left: none;
  margin-left: 13.7px;
  margin-right: auto;
}
.fs-carousel-enabled .fs-carousel-control_next,
.fs-carousel-enabled.fs-carousel-rtl .fs-carousel-control_previous {
  right: 20px;
  left: auto;
}
.fs-carousel-enabled .fs-carousel-control_next:before,
.fs-carousel-enabled.fs-carousel-rtl .fs-carousel-control_previous:before {
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 10.5px solid #333333;
  border-right: none;
  margin-right: 13.7px;
  margin-left: auto;
}
.fs-carousel-enabled .fs-carousel-control_disabled {
  opacity: 0;
}
.fs-carousel-pagination {
  display: none;
}
.fs-carousel-enabled .fs-carousel-pagination {
  width: 100%;
  margin: 10px 0 0;
  padding: 0;
  text-align: center;
}
.fs-carousel-enabled .fs-carousel-pagination.fs-carousel-visible {
  display: block;
}
.fs-carousel-enabled .fs-carousel-page {
  border: 0;
  cursor: pointer;
  display: inline-block;
  padding: 0;
  width: 10px;
  height: 10px;
  background: #000;
  border-radius: 100%;
  margin: 0 3px;
  opacity: 0.3;
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
}
.no-opacity .fs-carousel-enabled .fs-carousel-page {
  text-indent: -999px;
}
.fs-carousel-enabled .fs-carousel-page.fs-carousel-active {
  opacity: 1;
}
.fs-carousel-enabled.fs-carousel-rtl {
  direction: rtl;
}
.fs-carousel-enabled.fs-carousel-rtl .fs-carousel-item {
  float: right;
}
.fade .fs-carousel-item {
	opacity: 0;
	visibility: hidden;

	-webkit-transition: opacity 0s linear, visibility 0s linear;
			transition: opacity 0s linear, visibility 0s linear;
	-webkit-transition-delay: 0.25s;
			transition-delay: 0.25s;
}

.fade .fs-carousel-item.fs-carousel-visible {
	opacity: 1;
	visibility: visible;

	-webkit-transition-duration: 0.25s;
			transition-duration: 0.25s;
	-webkit-transition-delay: 0s;
			transition-delay: 0s;
}









/* 2017 home,nav 改修
-------------------------------------------------------------------------------*/
header.v2 nav li,
header.v2 nav li:first-child {
	padding: 0;
}
header.v2 nav a {
	border-radius: 0;
}
header.v2 {
	width: 100%;
	padding: 15px 0 0 0;
}
header.v2 > section {
	width: 1095px;
	margin: 0 auto;
}
header.v2 nav {
	margin: 10px 0 0 0;
	background: #1D2088;
}
header.v2 nav > ul {
	display: block;
	width: 1095px;
	margin: 0 auto;
}
header.v2 nav > ul > li {
	display: inline-block;
}
header.v2 nav > ul > li > ul {
	display: none;
}
header.v2 nav > ul > li > a {
	display: block;
	padding: 7px 12px;
	color: #fff;
	font-size: 18px;
	font-family: "Mplus 1p", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", Meiryo, sans-serif;
	font-weight: 500;
}
header.v2 nav > ul > li > a:hover {
	background: #DBDCFB;
	color: #1D2088;
	text-decoration: none;
}
header.v2 nav #level2 {
	display: none;
	/*min-height: 36px;*/
	background: #DBDCFB;
	overflow: hidden;
}
header.v2 nav #level2 a {
	background: #DBDCFB;
	color: #1D2088;
}
header.v2 nav #level2 > ul {
	display: block;
	width: 1095px;
	margin: 0 auto;
}
header.v2 nav #level2 > ul > li {
	display: inline-block;
}
header.v2 nav #level2 > ul > li > a {
	display: block;
	padding: 9px;
	color: #1D2088;
	font-size: 14px;
	font-family: "Mplus 1p", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", Meiryo, sans-serif;
	font-weight: 500;
}
header.v2 nav #level2 > ul > li > a:hover {
	text-decoration: underline;
}

/* 2017.5.18 home改修追加 */
main.home-v2 section {
	margin: 0;
}
main.home-v2 section h1 {
	position: relative;
	padding-bottom: 8px;
	color: #4A4A4A;
	font-size: 20px;
	font-family: "Mplus 1p", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", Meiryo, sans-serif;
	font-weight: 500;
	
	letter-spacing: -1px;
	line-height: 1.2;
}
main.home-v2 section h1:after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	border-radius: 10px;
	background: #1D2088;
}
main.home-v2 #slider_list {
	width: 370px;
}
main.home-v2 #slider_thumnb_display {
	width: 350px;
	height: 233px;
	overflow: hidden;
}
main.home-v2 #slider_thumnb_display img {
	max-width: 100%;
	height: auto;
}
main.home-v2 .slider_title a {
	margin: 0 0 13px;
}
main.home-v2 .slider_title a h2 {
	margin: 0;
	font-size: 14px;
}


.home-tile:after {
	content: '';
	display: block;
	clear: both;
}
.home-tile > dl {
	position: relative;
	width: 230px;
	float: left;
	margin: 0 19px 14px 0;
}
.home-tile > dl.home-tile3,
.home-tile > dl.home-tile6,
.home-tile > dl.home-tile9 {
	margin: 0 0 14px 0;
}
.home-tile dt {
	position: relative;
	margin: 0 0 10px;
	padding: 0 0 6px;
	line-height: 1.2;
}
.home-tile dt h2 {
	color: #4A4A4A;
	font-size: 20px;
	font-family: "Mplus 1p", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", Meiryo, sans-serif;
	font-weight: 500;
	letter-spacing: -1px;
}
.home-tile dt:after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	border-radius: 10px;
	background: #1D2088;
}
.home-tile-submenu {
	position: absolute;
	right: 0;
	top: 1px;
	width: 100%;
	text-align: right;
	z-index: 2;
}
.home-tile-submenu-target {
	display: inline-block;
	padding: 3px 0;
	color: #1D2088;
	font-size: 16px;
	font-family: Teko, sans-serif;
	font-weight: 500;
	cursor: pointer;
	letter-spacing: 0;
}
.home-tile-submenu-target:before {
	content: '\f13a';
	display: inline-block;
	margin-right: 2px;
	font-family: FontAwesome;
}
.home-tile-submenu-list {
	display: none;
}
.home-tile-submenu ul {
	display: inline-block;
	margin-top: -2px;
	padding: 4px 10px;
	/* background: #1D2088; */
	background: rgba(29,32,136,.7);
	border-radius: 3px;
}
.home-tile-submenu li {
	margin: 6px 0;
}
.home-tile-submenu a {
	color: #fff;
}
.home-tile-list li {
	overflow: hidden;
	margin: 0 0 10px;
	font-size: 11px;
}
.home-tile-list li:first-child {
	font-size: 14px;
}
.home-tile-list figure {
	float: left;
	width: 72px;
	padding: 0 10px 0 0;
}
.home-tile-list li:first-child figure {
	float: none;
	width: auto;
	padding: 0;
}
.home-tile-list figure img {
	width: 100%;
	height: auto;
}
.home-tile-list h2 {
	overflow: hidden;
}
.home-tile-readmore {
	margin-top: -3px;
	text-align: center;
}
.home-tile-readmore a {
	display: inline-block;
	padding: 3px 24px;
	border: 2px solid #333;
	border-radius: 4px;
	color: #333;
	font-size: 12px;
}