/* 全体
----------------------------*/
body{
	position: relative;
}
a,
a:link,
a:visited,
a:hover,
a:active {
	text-decoration: none;
}
main{
	margin: 0 auto;
}
#goto-top{
	padding-right: 40px;
	text-align: right;
	position: fixed;
	bottom: 80px;
	right: 0;
	z-index: 999;
}
@media screen and (max-width:739px) {
	#goto-top{
		bottom: 40px;
	}
}

/* ヘッダー
----------------------------*/
#pattern-01 .header nav div.arrow,
#pattern-02 .header nav div.arrow,
#pattern-03 .header nav div.arrow{
	display: none !important;
}
.header nav a {
	float: left;
}
.header nav ul{
	float: right;
	margin-right: 10px;
}
.header nav li {
	margin-top: 4px;
	float: left;
}
#toppage .header li.top {
	display: none;
}

@media screen and (max-width:962px) {
	.header nav li.under {
		display: none;
	}
}
.header nav li.under a{
	position: relative;
	display: inline-block;
}

.header nav li.top a,
.header nav li.menus a {
	padding: 1px 8px 0;
}

.header nav li.top a,
.header nav li.list1 a,
.header nav li.list2 a {
	border-right: 1px solid #fff;
}

.header nav li.list3 {
	margin-right: 23px;
}
.header nav li.list3 a {
	border-right: none;
}

.header nav li a.inquiry0 {
	display: block;
	/* border: 1px solid #fff; */
	box-sizing: border-box;
	/* transition: background-color 0.2s linear; */
}

.header nav li a.inquiry0 .arrow_bottom {
  position: relative;
  display: block;
  padding: 3px 25px 3px 12px;
}

.header nav li a.inquiry0 .arrow_bottom::before {
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(135deg);
  position: absolute;
  top: 50%;
  right: 12px;
  margin-top: -6px;
}

.header nav li a.inquiry0 .arrow_bottom:hover {
	color: #333;
	background-color: #fff;
}

.header nav li a.inquiry0 .arrow_bottom:hover::before {
  border-top: solid 2px #333;
  border-right: solid 2px #333;
}

.header nav li a,
.header nav li a:link,
.header nav li a:visited,
.header nav li a:hover,
.header nav li a:active {
	color: #fff;
}
.header nav li.under a:before,
.header nav li.under a:after {
	position: absolute;
	top: 24px;
	/* top: 20px; */
	content: "";
	display: inline-block;
	width: 0;
	height: 1px;
	background: #fc8485;
	transition: 0.3s;
}
.header nav li.list1 a span{
	color: #fc8485;
}
.header nav li.list2 a span{
	color: #98baff;
}
.header nav li.top a:before,
.header nav li.top a:after{
	background: #ffffff;
}
.header nav li.list2 a:before,
.header nav li.list2 a:after{
	background: #98baff;
}
.header nav li.list3 a span{
	color: #b5ffaa;
}
.header nav li.list3 a:before,
.header nav li.list3 a:after{
	background: #b5ffaa;
}

.header nav li.under a:before{
	left: 50%;
}

.header nav li.under a:after{
	right: 50%;
}

.header nav li.under a:hover:before,
.header nav li.under a:hover:after{
	width: 50%;
}
.header nav li.list4 a{
	display: block;
	border-left:1px solid #d0637d;
	border-right:1px solid #41b765;
	position: relative;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

.header nav li.menus a.active:before {
	display: none;
}
.header nav li.menus a.active:after {
	position: absolute;
	top: 24px;
	left: 0;
	content: "";
	display: inline-block;
	width: 100%;
	height: 1px;
	background: #fff;
}
.header nav li.list1 a.active:after {
	background-color: #fc8485;
}
.header nav li.list2 a.active:after {
	background-color: #98baff;
}
.header nav li.list3 a.active:after {
	background-color: #b5ffaa;
}

.header nav li.list4 a:hover{
	background-color: #ffffff;
	opacity: 1;
	color: #333;
}
.header nav li.list4 a:before,
.header nav li.list4 a:after {
	content:"";
	position: absolute;
	display:block;
	height:1px;
	width:100%;
	background: linear-gradient(left , #d0637d 0%, #4c59ae 50%, #41b765 100%);
	background: -webkit-linear-gradient(left , #d0637d 0%, #4c59ae 50%, #41b765 100%);
	background: -moz-linear-gradient(left , #d0637d 0%, #4c59ae 50%, #41b765 100%);
	background: -o-linear-gradient(left , #d0637d 0%, #4c59ae 50%, #41b765 100%);
	background: -ms-linear-gradient(left , #d0637d 0%, #4c59ae 50%, #41b765 100%);
}
.header nav li.list4 a:before{
	top: 0px;
	left: 0px;
}
.header nav li.list4 a:after {
	bottom: 0px;
	right: 0px;
}
header nav div.menu {
	display: none;
}
@media screen and (max-width:980px) {
	.header nav{
		padding-left: 10px;
		padding-right: 10px;
		box-sizing: border-box;
		height: 50px;
	}
	.header nav ul {
		display: none;
	}
	.header nav div.menu {
		float: right;
		display: block;
	}
	.header nav div.menu span{
		display: block;
		width: 40px;
		height: 4px;
		background-color: #fff;
		margin-top: 5px;
		margin-bottom: 8px;
	}
	.header nav div.menu span:last-child{
		margin-bottom: 0px;
	}
}

/* 資料請求·問い合わせ
----------------------------*/
section.form_inquiry {
	width: 100%;
	background-color: #333;
	position: relative;
	padding-bottom: 80px;
}
section.form_inquiry h2{
	color: #fff;
}
section.form_inquiry h2 + p{
	color: #fff;
	text-align: center;
}
section.form_inquiry .use_service{
	width: 100%;
}

@media screen and (max-width:739px) {
	section.form_inquiry {
		padding-bottom: 20px;
	}
	section.form_inquiry h2 + p{
		text-align: left;
	}
}

/* modal
----------------------------*/
div.modal {
	display: none;
	box-sizing: border-box;
	position: fixed;
	padding: 20px;
	top: 0;
	left: 0;
	width: 100%;
	height: 525px;
	background-color: rgba(0,0,0,0.9);
	z-index: 999;
}
div.modal span.css-cancel {
	display: inline-block;
	position: relative;
	margin: 0 20px 0 7px;
	padding: 0;
	width: 4px;
	height: 20px;
	background: #fff;
	transform: rotate(45deg);
	float: right;
	margin-right: 4px;
}
div.modal span.css-cancel:before{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: -8px;
	width: 20px;
	height: 4px;
	margin-top: -2px;
	background: #fff;
}
div.modal li.under a{
	position: relative;
	display: inline-block;
}
div.modal li {
	display: block;
	text-align: center;
}
#toppage div.modal li.top{
	display: none;
}
div.modal li a{
	padding: 4px 8px;
	font-size: 1.4rem;
}
div.modal li a,
div.modal li a:link,
div.modal li a:visited,
div.modal li a:hover,
div.modal li a:active {
	color: #fff;
}
div.modal li.under a:before,
div.modal li.under a:after{
	position: absolute;
	top: 24px;
	content: "";
	display: inline-block;
	width: 0;
	height: 1px;
	background: #ffffff;
	transition: 0.3s;
}
div.modal li.list1 a span{
	color: #fc8485;
}
div.modal li.list2 a span{
	color: #98baff;
}
div.modal li.list1 a:before,
div.modal li.list1 a:after{
	background: #fc8485;
}
div.modal li.list2 a:before,
div.modal li.list2 a:after{
	background: #98baff;
}
div.modal li.list3 a span{
	color: #b5ffaa;
}
div.modal li.list3 a:before,
div.modal li.list3 a:after{
	background: #b5ffaa;
}
div.modal li.list4 {
	text-align: center;
}
div.modal li.list4 div{
	margin: 0 auto;
	overflow: hidden;
	width: 280px;
}
/*
div.modal li.list4 div a{
	width: 112px;
	float: left;
	margin: 0 5px;
}
*/
div.modal li.list4 div a{
	margin: 0 5px;
}


div.modal li.under a:before{
	left: 50%;
}

div.modal li.under a:after{
	right: 50%;
}

/*div.modal ul li.under a:hover:before,
div.modal ul li.under a:hover:after{
	width: 50%;
}*/
div.modal li.under a:before,
div.modal li.under a:after{
	width: 50%;
}
div.modal li.list4 a{
	display: block;
	border-left:1px solid #d0637d;
	border-right:1px solid #41b765;
	position: relative;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
div.modal li.list4 a:hover{
	background-color: #717171;
}
div.modal li.list4 a:before,
div.modal li.list4 a:after {
	content:"";
	position: absolute;
	display:block;
	height:1px;
	width:100%;
	background: linear-gradient(left , #d0637d 0%, #4c59ae 50%, #41b765 100%);
	background: -webkit-linear-gradient(left , #d0637d 0%, #4c59ae 50%, #41b765 100%);
	background: -moz-linear-gradient(left , #d0637d 0%, #4c59ae 50%, #41b765 100%);
	background: -o-linear-gradient(left , #d0637d 0%, #4c59ae 50%, #41b765 100%);
	background: -ms-linear-gradient(left , #d0637d 0%, #4c59ae 50%, #41b765 100%);
}
div.modal li.list4 a:before{
	top: 0px;
	left: 0px;
}
div.modal li.list4 a:after {
	bottom: 0px;
	right: 0px;
}
div.modal li.list4 a:hover {
	opacity: 0.7;
}

.floclear {
	clear: both;
}
.formArea.embedded .form_row:nth-child(odd) {
		margin-right: 0;
}
.formArea.embedded .form_row:nth-child(even) {
		margin-right: 4%;
}





/* .inquiry_ind */
section.composition .inquiry_ind {
	padding: 60px 0;
	color: #fff;
	background-color: #333;
}
section.composition .inquiry_ind h2 {
	font-size: 34px;
	font-size: 3.4rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
}
section.composition .inquiry_ind p {
	font-size: 1.6rem;
}
section.composition .inquiry_ind_inner {
	width: 980px;
	margin: 0 auto;
}
section.composition .inquiry_ind_box {
	color: #333;
	min-height: 500px;
	background-color: #fff;
	margin-bottom: 30px;
}

section.composition .inquiry_ind .inquiry_links {
	text-align: center;
	font-size: 2.0rem;
	margin: 30px 0 0;
}

section.composition .inquiry_ind .inquiry_links a {
	display: block;
	color: #fff;
	padding: 2px 25px 2px 12px;
	border: 1px solid #fff;
	box-sizing: border-box;
	transition: background-color 0.2s linear;
	position: relative;
	display: inline-block;
}

section.composition .inquiry_ind .inquiry_links a::before {
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(135deg);
  position: absolute;
  top: 50%;
  right: 12px;
  margin-top: -6px;
}

section.composition .inquiry_ind .inquiry_links a:hover {
	color: #333;
	background-color: #fff;
}

section.composition .inquiry_ind .inquiry_links a:hover::before {
  border-top: solid 2px #333;
  border-right: solid 2px #333;
}




/* section.cv_btn */
section.cv_btn {
	position: relative;
	background: #333;
	padding: 60px 0;	
}
section.cv_btn .inquiry_ind h2 {
	font-size: 34px;
	font-size: 3.4rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
}
section.cv_btn .inquiry_ind p {
	font-size: 1.6rem;
}
section.cv_btn .inquiry_ind_inner {
	width: 980px;
	margin: 0 auto;
}
section.cv_btn .inquiry_ind_box {
	color: #333;
	min-height: 500px;
	background-color: #fff;
	margin-bottom: 30px;
	padding: 30px;
}
section.cv_btn .inquiry_ind_box .inq_ind_box_ttl {
	font-size: 2.4rem;
	font-weight: bold;
	margin-bottom: 40px;
}
section.cv_btn .inquiry_links {
	margin-bottom: 0;
}

section.cv_btn p.sbutton_black_cv {
	max-width: 380px;
}

section.cv_btn .inquiry_links a {
	display: block;
	box-sizing: border-box;
	position: relative;
	color: #fff;
	padding-right: 10px;
	box-shadow: 0 0 0 5px #fff inset;
}

section.cv_btn .inquiry_links a::before {
	content: '';
	width: 12px;
	height: 12px;
	border: 0px;
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
	transform: rotate(135deg);
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -10px;
}

section.cv_btn .inquiry_links a:hover {
	color: #333;
	background-color: #fff;
}

section.cv_btn .inquiry_links a:hover::before {
	border-top: solid 3px #333;
	border-right: solid 3px #333;
}

@media screen and (max-width:979px) {

	section.cv_btn .inquiry_ind {
		padding: 20px 10px 20px 10px;
	}

	section.cv_btn .inquiry_ind h2 {
		font-size: 2.0rem;
		margin-bottom: 15px;
	}

	section.cv_btn .inquiry_ind p {
		font-size: 1.3rem;
	}

	section.cv_btn .inquiry_ind_inner {
		width: 100%;
	}

	section.cv_btn .inquiry_links {
		font-size: 1.6rem;
		margin-top: 0;
	}

	section.cv_btn .inquiry_ind_box {
		min-height: 250px;
		margin-bottom: 15px;
		padding: 15px;
	}

	section.cv_btn .inquiry_ind_box .inq_ind_box_ttl {
		font-size: 1.8rem;
		margin-bottom: 20px;
	}

}


/* drawr_chat_box */
#contact_box.drawr_chat_box #cv_box {
	box-sizing: border-box;
	width: 140px;
	padding: 5px;
	background: #fff;
	border: 2px solid #333;
	border-right: none;
	border-radius: 3px 0 0 3px;
	box-shadow: 5px 5px 5px rgba(0,0,0,0.3);
	box-sizing: border-box;
	position: relative;
}

p.sbutton_fill .bluebtn {
    font-size: 14px;
}

#contact_box.drawr_chat_box #cv_box .inner p {
	display: table;
	margin-bottom: 0;
}

#contact_box.drawr_chat_box #cv_box .inner p.textf_s .textf_s_chaticon,
#contact_box.drawr_chat_box #cv_box .inner p.textf_s .textf_s_chattxt {
	display: table-cell;
	vertical-align: middle;
}
#contact_box.drawr_chat_box #cv_box .inner p.textf_s .textf_s_chaticon img {
	width: 75%;
	height: auto;
}

#contact_box.drawr_chat_box #cv_box p.sbutton_fill {
	margin: 0;
	padding: 8px 0;
	font-size: 100%;
}

#contact_box p.open {
	border: 2px solid #333;
	background: #fff;
}

.content .sbutton_white_cv {
	max-width: 380px;
}

.content .sbutton_white_cv a {
	display: block;
	box-sizing: border-box;
	position: relative;
	color: #fff;
	padding-right: 10px;
	box-shadow: 0 0 0 5px #fff inset;
}

.content .sbutton_white_cv a::before {
	content: '';
	width: 12px;
	height: 12px;
	border: 0px;
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
	transform: rotate(135deg);
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -10px;
}
