@charset "utf-8";
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html {
	font-size: 62.5%;
}
body, table, input, textarea, select, option {
	font-family: "游ゴシック","Yu Gothic","游ゴシック体","YuGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Meiryo UI","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}

img {
	vertical-align: top;
	max-width: 100%;
}
body {
	min-width: 1200px;
	color: #000;
	font-weight: 500;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FFF;
}

@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 896px) {
	body {
		min-width: inherit;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
}

@media screen and (min-width: 751px) {
	.pc_none {
		display: none;
	}
	/* body {
		font-size: 1.5rem;
	} */
	.highlight {
		font-weight: 600;
	}
	.bold {
		font-weight: 600;
	}
	/* link button */
	a.button {
		line-height: 2.8;
		box-sizing: border-box;
		letter-spacing: .1em;
		display: block;
		border-radius: 8px;
		color: rgb(255,255,255);
		font-size: 15px;
		font-weight: 600;
		text-align: center;
		text-decoration: none;
		background-color: rgb(113,165,41);
	}
	a.button:hover {
		opacity: .65;
	}
	a.button.white {
		color: rgb(113,165,41);
		box-sizing: border-box;
		border: 2px solid rgb(113,165,41);
		background-color: rgb(255,255,255);
	}
	a.button.web {
		line-height: 3.06667;
	}
	a.button.request {
		line-height: 3.06667;
		text-indent: -1em;
	}
	a.button.top {
		line-height: 3.4444;
		width: 370px;
		margin: 0 auto;
		font-size: 1.8rem;
	}
	a.button.web::before {
		position: relative;
		display: inline-block;
		content: "";
		width: 23px;
		height: 34px;
		margin-right: 5px;
		vertical-align: middle;
		background: url(/common/img/icon_mouse.png) 0 0 / contain no-repeat;
	}
	a.button.request::before {
		position: relative;
		display: inline-block;
		content: "";
		width: 26px;
		height: 31px;
		margin-right: 8px;
		vertical-align: middle;
		background: url(/common/img/icon_request.png) 0 0 / contain no-repeat;
	}
	a.button.request.white::before {
		background-image: url(/common/img/icon_request_green.png);	}
	/* half size button layout */
	.section ul.row2 li {
		float: left;
		display: block;
		width: 176px;
		margin-right: 32px;
		margin-bottom: 30px;
	}
	.section ul.row2 li:nth-child(4n+4) {
		margin-right: 0;
	}
	.section ul.row2 li a {
		line-height: 2.3333;
		width: 100%;
		font-size: 18px;
	}
	/* clearfix */
	.g_hd_upper::after,
	.ft_nav::after,
	.kyosaiLineup ul::after,
	.kyosaiLineup .simulation::after,
	.gotoEntry div::after,
	.eventList .cosuke::after,
	.selectCoop::after,
	.topicPath ul::after,
	.section ul.row2::after,
	.lifePlan .latest::after,
	.lifePlan .backnumber li::after,
	.utility div ul::after,
	.security ul.product::after,
	.fixed_nav div.cource::after,
	.qaSummary div ul::after,
	.flow ul::after,
	.gotoJoin::after,
	.infoList .js-ac_detail div div.balloon::after {
		clear: both;
		display: block;
		content: "";
	}
}
@media screen and (max-width: 750px){
	.sp_none {
		display: none;
	}
	.highlight {
		font-weight: 700;
	}
	.bold {
		font-weight: 700;
	}
	/* js-accordion */
	h3.js-ac_controls {
		cursor: pointer;
	}
	.js-ac_detail {
		display: none;
	}
	.js-ac_detail.open {
		display: block;
	}
	/* link button */
	a.button {
		line-height: 3.0;
		letter-spacing: .05em;
		display: block;
		border-radius: 7.5px;
		color: rgb(255,255,255);
		font-size: 4.34783vw;
		font-weight: 700;
		text-align: center;
		text-decoration: none;
		background-color: rgb(113,165,41);
	}
	a.button.half {
		width: 42.75362vw;
	}
	a.button.white {
		line-height: 2.77778;
		color: rgb(113,165,41);
		box-sizing: border-box;
		border: 2px solid rgb(113,165,41);
		background-color: rgb(255,255,255);
	}
	a.button.web {
		position: relative;
		float: left;
	}
	a.button.request {
		position: relative;
		float: right;
	}
	a.button.top {
		line-height: 3.0;
		width: 84.54106vw;
		margin: 0 auto;
		font-size: 4.83092vw;
	}
	a.button.web::before {
		position: relative;
		bottom: -1.93236vw;
		display: inline-block;
		content: "";
		width: 6.28019vw;
		height: 7.97101vw;
		background: url(/common/img/icon_web.png) 0 0 / contain no-repeat;
	}
	a.button.request::before {
		position: relative;
		bottom: -1.44927vw;
		display: inline-block;
		content: "";
		width: 6.28019vw;
		height: 7.48792vw;
		margin-right: 1.20772vw;
		background: url(/common/img/icon_request.png) 0 0 / contain no-repeat;
	}
	a.button.request.white::before {
		background-image: url(/common/img/icon_request_green.png);
	}
	/* half size button layout */
	.section ul.row2 {
		margin: 0 2.41546vw;
	}
	.section ul.row2 li {
		display: block;
		width: 39.85508vw;
		margin-bottom: 6.03864vw;
	}
	.section ul.row2 li a {
		line-height: 3.17142;
		width: 100%;
		font-size: 4.22705vw;
	}
	.section ul.row2 li:nth-child(2n+1) {
		float: left;
	}
	.section ul.row2 li:nth-child(2n) {
		float: right;
	}
	/* clearfix */
	.g_hd_upper::after,
	.topicPath ul::after,
	.section ul.row2::after,
	.security ul.product::after,
	#web-kanyu .regist_number::after,
	.gotoJoin::after {
		clear: both;
		display: block;
		content: "";
	}
}

