@charset "UTF-8";

/* reset
----------------------------------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

strong{
	font-weight:bold;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
	margin: 0;
	padding: 0;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/*
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #d6d6d6; 
	margin: 1em 0;
	padding: 0;
}
*/
hr {
	height:1px;
	background-color: #CCCCCC;
	padding: 0;
	border: none;
}

ul {
	list-style: none;
}

input, select { vertical-align: middle; }

img {
	vertical-align: top;
	font-size: 0;
	line-height: 0;
}

/* a { -webkit-tap-highlight-color: transparent; } */

a:focus, *:focus { outline:none; }

/* base
----------------------------------- */

*{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}



body {
	/*font-family: "a-otf-ud-shin-go-pr6n", sans-serif, Helvetica, Arial, Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic";*/
	font-family: NotoSans, Helvetica, Arial, Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-text-size-adjust: 100%;
	font-size: 1.4rem;
	text-align:left;
	background:#ffffff;
	color:#010101;
	min-width:320px;
	margin: 0;
	padding: 0;
}

html {
	font-size: 62.5%;
	text-align:center;
}

img {
	max-width: 100%;
	height: auto;
	width /***/: auto;
}

label {
	cursor:pointer;
}

/* anchor */
a:link {
	color:#333333;
}

a:visited {
	color:#333333;
}

a:hover,
a:active {
	color: #00b2bc;
	text-decoration: underline;
}


/* chrome bugfix */
*{
	font-size: 1.6rem;
}
/* chrome bugfix end */


/* font-awesome */
i.fa{
	margin-right:4px;
	font-size:1.2rem;
	vertical-align:middle;
}

/* NotoSans */
@font-face {
	font-family: "NotoSans";
	font-style: "normal";
	font-weight: 100;
	src:url("/assets/fonts/NotoSansCJKjp-Thin.woff") format("woff"),
	url("/assets/fonts/NotoSansCJKjp-Thin.otf") format("opentype");
}

@font-face {
	font-family: "NotoSans";
	font-style: "normal";
	font-weight: 300;
	src:url("/assets/fonts/NotoSansCJKjp-Light.woff") format("woff"),
	url("/assets/fonts/NotoSansCJKjp-Light.otf") format("opentype");
}

@font-face {
	font-family: "NotoSans";
	font-style: "normal";
	font-weight: 350;
	src:url("/assets/fonts/NotoSansCJKjp-DemiLight.woff") format("woff"),
	url("/assets/fonts/NotoSansCJKjp-DemiLight.otf") format("opentype");
}

@font-face {
	font-family: "NotoSans";
	font-style: "normal";
	font-weight: 400;
	src:url("/assets/fonts/NotoSansCJKjp-Regular.woff") format("woff"),
	url("/assets/fonts/NotoSansCJKjp-Regular.otf") format("opentype");
}

@font-face {
	font-family: "NotoSans";
	font-style: "normal";
	font-weight: 500;
	src:url("/assets/fonts/NotoSansCJKjp-Medium.woff") format("woff"),
	url("/assets/fonts/NotoSansCJKjp-Medium.otf") format("opentype");
}

@font-face {
	font-family: "NotoSans";
	font-style: "normal";
	font-weight: 700;
	src:url("/assets/fonts/NotoSansCJKjp-Bold.woff") format("woff"),
	url("/assets/fonts/NotoSansCJKjp-Bold.otf") format("opentype");
}

@font-face {
	font-family: "NotoSans";
	font-style: "normal";
	font-weight: 900;
	src:url("/assets/fonts/NotoSansCJKjp-Black.woff") format("woff"),
	url("/assets/fonts/NotoSansCJKjp-Black.otf") format("opentype");
}




/**
 * Default
 */
p{
	font-size: 14px;
}
h2{
	text-align: center;
	font-size: 22px;
	letter-spacing: 0.05em;
	margin-bottom: 40px;
}
h2 img{
	margin-bottom: 5px;
}
h3{
}
table{
	width: 100%;
}
th{
	font-weight: 700;
}
th,
td{
	font-size: 16px;
	line-height: 1.8;
}
@media (max-width: 767px) {

	h2{
		font-size: 15px;
		letter-spacing: 0.05em;
		margin-bottom: 30px;
	}
	h2 img{
		height: 32px;
	}
	h3{
	}
	h3 img{
		height: 28px;
		width: auto;
	}
}


/**
 * Common
 */
.aC{
	text-align: center !important;
}

.aC{
	text-align: center !important;
}
.aR{
	text-align: right !important;
}
.pT30{
	padding-top: 30px !important;
}

input.btn,
a.btn{
	position: relative;
	display: inline-block;
	background: #F59600;
	color: #FFFFFF;
	text-decoration: none;
	padding:10px 50px 10px 70px;
	transition: all 0.3s;
}
input.btn{
	cursor: pointer;
	padding:10px 50px 10px 50px;
	border-color: #F59600;
}
input.btn.btn-back{
	background-color: #fff;
	color: #333333;
	border-color: #999999;
}

input.btn:hover,
a.btn:hover{
	opacity: 0.8;
}

a.btn:before{
	position: absolute;
	display: inline-block;
	content:"";
	top: 17px;
	left: 30px;
	width: 18px;
	height: 18px;
	border-radius: 100%;
	border: 1px solid #FFFFFF;
}
a.btn:after{
	position: absolute;
	display: inline-block;
	content:"";
	top: 24px;
	left: 35px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #FFFFFF;
	border-right: 1px solid #FFFFFF;
	-webkit-transform: rotateZ(45deg);
	-moz-transform: rotateZ(45deg);
	-ms-transform: rotateZ(45deg);
	-o-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
}

.pc_none{
	display: none;
}
.sp_none{}
@media (max-width: 767px) {
	.pc_none{
		display: block;
	}
	.sp_none{
		display: none;
	}
}

/**
 * Footer
 */
#footer{
	position: relative;
	padding: 50px 80px;
}
#footer a{
	text-decoration: none;
}
.footer_content{
	position: relative;
}
img#foot_isms{
	position: absolute;
	right: 0;
	top: 0px;
}
ul.footer_nav{
	list-style: none;
	text-align: center;
	padding: 0 0 50px;
}
ul.footer_nav li{
	display: inline-block;
	padding: 0 5px;
}
ul.footer_nav li + li{
	border-left: 1px solid #CCCCCC;
}

#footer p.footer_copyright{
	text-align: center;
}
@media (max-width: 767px) {

	#footer{
		position: relative;
		padding: 20px 5px 0;
	}
	#footer a{}
	.footer_content{
		padding-bottom: 90px;
	}
	img#foot_isms{
		position: absolute;
		right: 10px;
		top: auto;
		bottom:15px;
		width:80px;
		height: auto;
	}
	ul.footer_nav{
		padding: 0 0 20px;
	}
	ul.footer_nav li{
		padding: 0 8px;
		margin-bottom: 10px;
		font-size: 3.5vw;
		letter-spacing: -0.05em;
	}
	ul.footer_nav li + li{}
	#footer p.footer_copyright{}
}


#cta{
	padding-top: 120px;
	z-index: 0;
	background: url("../img/common/cta_bg@2x.jpg") no-repeat center center;
	background-size: cover;
}
p#cta_copy{
	padding: 50px 0;
	line-height: 1.8;
	font-size: 20px;
	text-shadow: 1px 1px 3px rgba(0,0,0,.15);

}
.cta_frame{
	padding: 40px 35px 20px;
	background: rgba(255,255,255,.9);
	-webkit-box-shadow:  0px 3px 10px rgba(0,0,0,0.3);
	-moz-box-shadow:  0px 3px 10px rgba(0,0,0,0.3);
	box-shadow:  0px 3px 10px rgba(0,0,0,0.3);
}
.cta_frame_business{
	position: relative;
	width: 33%;
	float: left;
}
.cta_frame_tel{
	position: relative;
	width: 30%;
	float: left;
}
.cta_frame_web{
	position: relative;
	width: 33%;
	float: right;
	border-left: 1px solid #010101;
	padding-left: 3%;
}
.cta_frame_business p{
	margin-top: 0;
	margin-bottom: 5px;
}
.cta_frame_business .solpanel_logo{
	position: relative;
	height: 60px;
	width: auto;
	margin-top: -15px;
}

.cta_frame dl{
	width: 100%;
	text-align: center;
}
.cta_frame dt{
	text-align: center;
	font-size: 20px;
	padding: 10px 0 20px;
}
.cta_frame dd,
.cta_frame p {
	margin-bottom: 5px;
	line-height: 1.5;
}
.cta_businesstime{
	font-size: 18px;
}
.cta_arrow{
	display: inline-block;
	position: absolute;
	left: -50px;
	top: 40px;
	width: 40px;
	height: 40px;
	border-top: 3px solid #010101;
	border-right: 3px solid #010101;
	transform: rotateY(60deg) rotateZ(45deg);
}
.cta_tel{
	min-height: 50px;
}

a.btn_cta{
	display: inline-block;
	background: #F59600;
	color: #FFFFFF;
	text-decoration: none;
	padding:15px 25px;
	font-size: 21px;
}
a.btn_cta:hover{}


/**
 * Frame
 */
.section{
	position: relative;
	margin: 0 auto;
}
.subsection{
	position: relative;
	margin: 0 auto;
}

.inner_content{
	width: 1180px;
	margin: 0 auto;
	padding: 50px 80px;
	text-align: left;
}
.section_meta_header{
	text-align: center;
	margin-bottom: 70px;
}
.section_meta_header h2{
	font-size: 20px;
}

.section_meta_header img{
	margin-bottom: 15px;
	height: 30px;
}
.section_meta_header p{
	font-size: 28px;
	line-height: 1.5;
	margin-bottom: 50px;
}
.article{
	width: 1000px;
	max-width: 100%;
	margin: 0 auto;
	padding: 50px 80px;
	text-align: left;
}
.article p,
.article li{
	font-size: 16px;
	line-height: 2;
}
.article p{
	margin-bottom: 1.5em;
}
.article h2{
	margin-top: 80px;
	margin-bottom: 20px;
	text-align: left;
}

@media (max-width: 767px) {
	.inner_content{
		margin: 0 auto;
		padding: 20px 20px;
		width: auto;
	}
	.section_meta_header{
		padding-top: 40px;
		margin-bottom: 30px;
	}
	.section_meta_header h2{
		font-size: 14px;
	}
	.section_meta_header p{
		font-size: 16px;
		margin-bottom: 30px;
	}
	.section_meta_header img{
		margin-bottom: 15px;
		height: 25px;
	}

	.article{
		width: 100%;
		padding: 0px 20px;
		text-align: left;
	}
	.article p,
	.article li{
		font-size: 14px;
	}
	.article p{
		margin-bottom: 1.5em;
	}
	.article h2{
		margin-top: 60px;
		margin-bottom: 30px;
		text-align: left;
		line-height: 1.6;
	}
}


@media (max-width: 767px) {

	#cta{
		padding-top: 100px;
		z-index: 0;
		background-color: #9C7856;
		background-size: auto 60%;
		background-position: right -23vw top;
	}
	#cta h2{
		padding-top: 10px;
		margin-bottom: 0px;
	}
	p#cta_copy{
		padding: 20px 0;
		line-height: 1.8;
		font-size: 16px;
		width: 230px;
	}
	.cta_frame{
		padding: 10px 20px 10px;
	}
	.cta_frame_business{
		width: 100%;
		float: none;
		text-align: center;
	}
	.cta_frame_tel{
		width: 100%;
		float: none;
		padding-top: 30px;
	}
	.cta_frame_web{
		width: 100%;
		float: none;
		border-top: 1px solid #666666;
		border-left: none;
		padding-top: 10px;
		padding-left: 0;
	}
	.cta_frame_business p{
		margin-top: 0;
		margin-bottom: 5px;
	}
	.cta_frame_business .solpanel_logo{
		height: 50px;
		text-align: center;
		width: auto;
		margin-top: 0px;
	}

	.cta_frame dl{
		width: 100%;
		text-align: center;
	}
	.cta_frame dt{
		text-align: center;
		font-size: 16px;
		padding: 10px 0 15px;
		font-weight: 700;
	}
	.cta_frame dd,
	.cta_frame p {
		margin-bottom: 5px;
		line-height: 1.3;
	}
	.cta_businesstime{
		font-size: 16px;
	}
	.cta_arrow{
		display: inline-block;
		position: absolute;
		left: calc(50% - 20px);
		top: -10px;
		width: 40px;
		height: 40px;
		border-top: 2px solid #666666;
		border-right: 2px solid #666666;
		/*transform: rotateY(60deg) rotateZ(135deg);*/
		transform: rotateX(60deg) rotateY(0deg) rotateZ(136deg);
	}
	.cta_tel{
		min-height: 50px;
	}
	.cta_tel img{
		height: 35px;
	}

	a.btn_cta{
		padding:13px 50px;
		font-size: 18px;
	}
	a.btn_cta:hover{}

}


/* clearfix
----------------------------------- */
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

