@charset "utf-8";

/* from rvladm */

body { -webkit-text-size-adjust:100%; }

@media ( max-width: 767px ) {
	
	h3.content-title { border-bottom: none; font-size:140%; line-height:1.2; }
	
	/* #container > .container-body { padding-top:35px; } */
	
	/* 横長のテーブルを縦に並べる (汎用) */
	table.table-collapse,
	table.table-collapse > *,
	table.table-collapse > * > tr,
	table.table-collapse > * > tr > th,
	table.table-collapse > * > tr > td {
		display: block;
		width: auto;
		border: none;
		box-sizing: border-box;
		text-align:left !important;
	}
	table.table-collapse > tr > th,
	table.table-collapse > tr > td,
	table.table-collapse > * > tr > th,
	table.table-collapse > * > tr > td {
		padding:.5em .5em;
		line-height:1.2;
		min-height:calc(.5em + .5em + 1em * 1.2);
	}
	
	table.table-collapse > tr > th,
	table.table-collapse > * > tr > th {
		white-space: nowrap;
	}
	
	/*
	table.table-collapse > tr,
	table.table-collapse > * > tr {
		border: 1px solid #ccc;
		overflow: hidden;
	}
	table.table-collapse > tr:first-child,
	table.table-collapse > * > tr:first-child {
		border-top-left-radius: 4px;
		border-top-right-radius: 4px;
	}
	table.table-collapse > tr:last-child,
	table.table-collapse > * > tr:last-child {
		border-bottom-left-radius: 4px;
		border-bottom-right-radius: 4px;
	}
	
	table.table-collapse.table-striped tr:nth-child(odd),
	table.table-collapse.table-striped > thead > tr,
	table.table-collapse.table-striped > tfoot > tr,
	table.table-collapse.table-striped > thead + tbody:first-child > tr:nth-child(even),
	table.table-collapse.table-striped > tbody:first-child > tr:nth-child(odd) {
		background-color: #F4F4F4;
	}
	table.table-collapse.table-striped > thead + tbody > tr:nth-child(odd) > * ,
	table.table-collapse.table-striped > tbody:first-child > tr:nth-child(odd) > * {
		background-color: transparent;
	}
	*/

	table.table-collapse > thead + tbody,
	table.table-collapse > tbody > tr + tr {
		margin-top: 30px;
	}
	
	
	/*
	table.table-collapse > tbody > tr > th + th,
	table.table-collapse > tbody > tr > th + td,
	table.table-collapse > tbody > tr > td + td {
		border: 1px solid #ddd;
		border-right-style: none;
		border-bottom-style: none;
		border-left-style: none;
	}
	*/
	
	/* force bordered / not stripe */
	/*
	table.table-collapse.table-bordered  th:nth-child(n+1),
	table.table-collapse.table-bordered  td:nth-child(n+1) {
		border-style:solid;
		border-width:1px;
		border-color:#ccc;
		border-top-width:0 !important;
		
		border-radius:0 !important;
	}
	table.table-collapse.table-bordered tr:not(.noborder) > th:first-child,
	table.table-collapse.table-bordered tr:not(.noborder) > td:first-child {
		border-top:1px solid #ccc !important;
		border-radius:0 !important;
	}
	
	table.table-collapse.table-bordered > tr:first-child > :first-child,
	table.table-collapse.table-bordered > :first-child > tr:first-child > :first-child {
		border-radius:8px 8px 0 0 !important;
	}
	table.table-collapse.table-bordered > tr:last-child > :last-child,
	table.table-collapse.table-bordered > :last-child > tr:last-child > :last-child {
		
		border-radius:0 0 8px 8px !important;
	}
	*/
	
	table.table-collapse.input-table-basic > * > tr > th:not(:only-child),
	table.table-collapse.input-table-basic > * > tr > td:not(:only-child) {
		padding:1rem .5rem 1rem .5rem;
	}
	
	table.table-collapse.input-table-basic > * > tr > th:not(:only-child) {
		padding-top:2rem;
	}
	table.table-collapse.input-table-basic > * > tr > td:not(:only-child) {
		padding-bottom:2.5rem;
	}
	
	table.table-collapse.input-table-basic > * > tr + tr {
		margin-top:0;
	}
	
	
	
	#page-menu {
		float: none;
		display: block;
		width: auto;
		padding-bottom: 0;
		margin-bottom: 15px;
	}
	#page-menu {
		border-bottom: 1px solid #ccc;
	}
	.page-index #page-menu {
		border-bottom:none;
	}
	.page-index #page-menu .nav-list-ops .btn {
		border:none;
	}
	
	#page-menu hr.divider {
		margin: 3px 0;
		margin-left: 1em;
	}
	
	#content-main {
		margin-left:0;
		padding-left:0;
		width:100%;
		min-width:0;
		float:none;
	}
	
	/* #content-main ul.nav { font-size:12px; line-height:18px; margin-bottom:30px; } */
	#content-main ul.nav { font-size:12px; line-height:18px; margin-bottom:24px; }
	
	/*
	#user-data-table > table > tbody > tr > td,
	#user-data-table > table > tbody > tr > th {
		position: relative;
		box-sizing: border-box;
		float: left;
		border: 0 solid #ddd;
	}
	#user-data-table > table > tbody > tr > td.user-prof-image,
	#user-data-table > table > tbody > tr > th.user-prof-image {
		width: 66px;
	}
	#user-data-table > table > tbody > tr > th.user-prof-image {
		height: 48px;
	}
	#user-data-table > table > tbody > tr > td.user-prof-screen_name,
	#user-data-table > table > tbody > tr > th.user-prof-screen_name {
		display: block;
		float: none;
		margin-left: 66px;
		border-left-width: 1px;
	}
	#user-data-table > table > tbody > tr > th.user-prof-screen_name {
		height: 26px;
	}
	#user-data-table > table > tbody > tr > td.user-prof-sns,
	#user-data-table > table > tbody > tr > th.user-prof-sns {
		display: block;
		float: none;
		height: 26px;
		margin-left: 66px;
		padding: 4px 8px 4px 8px;
		border-left-width: 1px;
	}
	#user-data-table > table > tbody > tr > td.user-prof-sns:empty {
		display: none;
	}
	#user-data-table > table > tbody > tr > td.user-prof-postCount,
	#user-data-table > table > tbody > tr > th.user-prof-postCount {
		clear: both;
		padding-bottom: 0;
	}
	#user-data-table > table > tbody > tr > td.user-prof-createdTime,
	#user-data-table > table > tbody > tr > th.user-prof-createdTime {
		white-space: nowrap;
		border-top-width: 1px;
		float: none;
		display: block;
		width: auto;
		text-align: right;
		padding-bottom: 0;
		height: 26px;
	}
	#user-data-table > table > tbody > tr > td.user-prof-user_type,
	#user-data-table > table > tbody > tr > th.user-prof-user_type {
		clear: right;
	}
	*/
	
	.graph-inner {
		padding: 7px 0;
	}
	.graph-imag-box {
		padding: 0;
	}
	#insight-data-table table,
	#insight-data-table table > tbody,
	#insight-data-table table > tbody > tr,
	#insight-data-table table > tbody > tr > th,
	#insight-data-table table > tbody > tr > td {
		display: block;
		width: auto;
		border: none;
	}
	#insight-data-table table > tbody > tr > th + th,
	#insight-data-table table > tbody > tr > th + td,
	#insight-data-table table > tbody > tr > td + td {
		border-top: 1px solid #ddd;
		border-left: none;
	}
	#insight-data-table table > tbody > tr {
		border: 1px solid #ccc;
	}
	#insight-data-table table > tbody > tr + tr {
		margin-top: 2px;
	}
	/* modal on iphone solution */
	.modal{
		position: fixed;
		top: 3%;
		right: 3%;
		left: 3%;
		bottom: 3%;
		width: auto;
		margin: 0;
	}
	.modal-body{
		max-height: 350px;
		padding: 15px;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
	#terms-agree-modal textarea{
		height: 140px;
	}
	
	/* 横あふれ対応タブ */
	ul.nav-tabs {
		display: block;
		height: auto;
		border: 1px solid #ccc;
		padding-left: 4px;
		padding-right: 4px;
		/* margin-top: -13px; */
		margin-top:5px;
	}
	.nav-tabs > li {
		margin: 4px 0;
		float: none;
		display: inline-block;
	}
	.nav-tabs > li > a {
		padding: 4px;
	}
	/*
	.nav-tabs > li > a:hover {
		border: 1px solid #eee;
	}
	*/
	.nav-tabs > li.active > a,
	.nav-tabs > li.active > a:hover,
	.nav-tabs > li > a:hover {
		margin-bottom:-3px;
	}
	
	.nav-tabs > .active > a,
	.nav-tabs > .active > a:hover {
		border: none;
		background: #333;
		color: white;
	}
}


/* モバイルでのメニュートグル */

#page-menu-toggle,
#page-menu-toggle-input { display:none; }

@media (max-width:767px) {
	#page-menu { width:100%; }
	#page-menu-toggle { display:block; width:100%; }
	#page-menu-toggle > label.btn { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; width:100%; }
	#page-menu-toggle-input + .menu-item { display:none; }
	#page-menu-toggle-input:checked + .menu-item { display:block; }
}

.btn-2:after { content:'.'; display:block; height:0; overflow:hidden; postion:relative; clear:both; }
.btn2-long.vreverse > button:last-child { float:left; margin-right:10px; }

@media (max-width:767px) {
	
	/** プライマリボタン等 **/
	.btn-mobile-wide,
	.btn.content_submit_button,
	.btn2-long > button,
	.btn2-short > button {
		padding-top:10px; padding-bottom:10px;
		position:relative;
		-moz-box-sizing:border-box;
		box-sizing:border-box;
		width:100%;
		margin-top: 10px;
	}
	.btn2-long > button {
		width:100%; 
	}
	.btn2-short { position:relative; }
	.btn2-short > button {
		width:48%;
	}
	
	/* 横並びでは[1][2]、縦並びでは[2][1] */
	.btn2-long.vreverse > button {
		float:none;
	}
	.btn2-long.vreverse > button + button {
		margin-top:10px;
	}
	.btn2-long.vreverse:after {
		clear:both; content:'.'; position:relative; display:block; height:0; overflow:hidden;
	}
	
	.page-webformat #presets button[type="submit"],
	.page-webformat #btns > button,
	#id-main-form button[type="submit"] {
		width:100%; padding-top:10px; padding-bottom:10px;
		margin-top: 10px; /* 折り返し密着対処 */
	}
	
	.page-navi { margin-top:10px; }
}

@media (min-width:768px) {
	.for-mobile { display:none!important; }
}
@media (max-width:767px) {
	.for-desktop { display:none!important; }
}
