@charset "utf-8";

/* 全体 */
#main_body {
	margin: 0px auto;
}
#main_body > * {
	line-height: 1.5em;
	padding: 0px;
}

/* 更新日・SNSボタン */
#content_header {
	margin: 0 0 10px;
}
#content_header > span {
	display: block;
}
#main_body .text_r {
	padding: 0px 10px;
}

/* 記事 */
#main #main_a #main_body div.detail_free {
	margin: 0px;
	width: auto;
}
#main #main_a #main_body div.detail_free img,
#main #main_a #main_body > img {
	display: inline-block;
	max-width: 100%;
	height: auto;
	margin: 0px;
}
#main #main_a #main_body div.detail_free table,
#main #main_a #main_body > table {
	float: none;
	clear: both;
	width: auto !important;
}
#main #main_a #main_body div.detail_free td img {
	max-width: 100%;
	width: auto;
	height:auto;
}
#main #main_a #main_body div.detail_free ul,
#main #main_a #main_body div.detail_free ol {
	padding-top:0px;
	padding-left:40px;
	margin-left:0px;
}
#main #main_a #main_body div[class*="detail_"],
#main #main_a #main_body > h2,
#main #main_a #main_body > h3 {
	margin: 0 0 10px;
	width: auto;
	overflow: auto;
}
#main #main_a #main_body div[class*="detail_"] img {
	max-width: 100%;
	height: auto !important;
}
#main #main_a #main_body div[class*="detail_"] dt {
	font-weight: bold;
}
#main #main_a #main_body div.link_l {
	margin: 0px 0px 10px;
	padding-left: 24px;
}
#main #main_a #main_body div.detail_map iframe {
	width: 100%;
	height: 400px;
}
#main #main_a #main_body div > a[href*="google"] {
	margin: 0 10px 10px;
}
#main #main_a #main_body div.detail_map_mobile {
	margin: 10px;
}
#map_canvas_detail {
	height: 400px;
}

/* 評価エリア */
#hyouka_area_box {
	margin: 10px;
}
#hyouka_area_box .hyouka_area_ans span{
	display: block;
	margin: 0px;
	padding: 4px;
}
#hyouka_area_box .hyouka_box > fieldset textarea {
	width: 100%;
}

/* お問い合わせ先 */
#section_footer {
	margin: 10px 0px;
}
#main_body #section_footer_title h2 {
	font-size: 1.6rem;
}

/*
 iPhone等の場合、端末側で電話番号もaタグに変換されるため、メールアドレスのみブロック要素に対応。
*/
#section_footer_info a[href*="@"] {
	display:block;
	text-align:center;
}

/* DL */
.pdf_download, .wmplayer_download {
	display: block;
	width: auto;
	margin: 10px 0px;
}
.pdf_download .pdf_img, .wmplayer_download .wmplayer_img,
.tenpu_txt {
	display: block;
	margin: 0 0 10px;
}

/* 404 */
#main_body > p {
	margin: 10px;
}

/* 検索フォーム 20171101追加 */
#main_body .search_form_box h3 {
	display: block;
	width: auto;
	margin: 0px;
}
.search_form_box .search_text input,
.search_form_box .search_textarea textarea {
	display: block;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.search_form_box .span_checkbox_wrap,
.search_form_box .span_radio_wrap {
	display: block;
	width: 100%;
}
.search_form_box .span_checkbox_wrap span,
.search_form_box .span_radio_wrap span {
	margin-right: 1em;
}

.search_result table td div {
	max-height: 10em;
}

form[name="f"] table td {
	float: none;
	word-break: normal;
}
form[name="f"] table td div {
	float: none !important;
	word-break: normal;
	text-align: left;
	margin: 0px !important;
}
form[name="f"] table td div a {
	margin: 0.5em 0px;
	display: inline-block;
}
.page_num {
	float: none;
	display: inline-block;
}

/* 目的ページランキング */
.ranking_box_wrap {
	display: block;
	width: auto;
}

.ranking_box_wrap > .ranking_box,
.ranking_box_wrap > .ranking_box:nth-child(2n),
.ranking_box_wrap > .ranking_box:nth-child(2n+1),
.ranking_box_wrap > .ranking_box:only-child {
	width: auto;
	margin: 10px 0;
}


div#top_search_keyword2 {
	width: auto;
}

#top_search_keyword2 #tmp_query {
	width: calc(100vw - 120px);
}

#top_search_keyword2 #submit {
	margin: 0;
}

select#ggl_cat {
	width: calc(100vw - 40px);
	margin: 10px 0px;
}