@charset "UTF-8";
/* CSS Document */

body {
	margin: 0;
	padding: 0;
	font-family: Hoefler Text,Baskerville Old Face,Garamond,Times New Roman,serif; 
	background-color: #F7F7F7;
	color: #191919;
	letter-spacing: 2px;
}

ul {
	margin: 0;
	padding: 0;
}

p {
	margin: 0;
	padding: 0;
}

.container-fluid {
    margin: 0;
    padding: 0;
    width: 100%;
}

.navbar-brand {
  display: inline-block;
  transition: .3s;
  -webkit-transform: scale(1);
  transform: scale(1);
}
.navbar-brand:hover {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.navitem {
	display: inline-block;
}

.navbar {
	width: 100%;
	max-width: 100%;
}

.nav-link {
	margin: 0 20px;
	padding-bottom: 3px;
	text-decoration: none;
}

.nav-link:after {
	bottom: -4px;
    left: 0;
    content: '';
    width: 0;
	transition: all 0.3s ease;
	border-bottom: 1px solid #000;
	display: block;
}

.nav-link:hover::after {
    width: 100%;
	border-bottom: 1px solid #000;	
}

.box5 {
    padding-right: 1em;
    padding-left: 1em;
    padding-bottom: 0.6em;
    margin-top: 7em;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 10em;
    border: double 10px #191919;
    text-align: center;
    padding-top: 0.6em;
}
.box5 p {
    margin: 0; 
    padding: 0;
}


.square_btn{
    position: relative;
    display: inline-block;
    padding: 0.25em 0;
    text-decoration: none;
    color: #191919;
    margin-top: 20px;
    margin-bottom: 35px;
}

.square_btn:before{
   position: absolute;
   content: '';
   width: 100%;
   height: 2px;
   top:100%;
   left: 0;
   border-radius: 3px;
   background:#191919;
   transition: .3s;
}

.square_btn:hover:before {
    top: -webkit-calc(100% - 3px);
    top: calc(100% - 3px);
}

.square_btn:hover {
	text-decoration: none;
	color: #191919;
}

footer{
    background-color: #919191;
    text-align: center;
}

.trust {
    text-align: center;
    margin-top: 38px;
    margin-bottom: 35px;
}

.footernav a {
	text-align: center;
}

.footernav li {
	padding: 35px 60px;
	list-style: none;
	display: inline-block;
}

.footernav a {
	text-decoration: none;
	padding-bottom: 3px;
	color: #191919; 
	font-size: 20px;
    display: block;
}

.footernav a:after {
	text-decoration: underline;
    content: '';
	width: 0;
	transition: all 0.3s ease;
	border-bottom: 1px solid #000;
	display: block;
}

.footernav a:hover:after {
	width: 100%;
	border-bottom: 1px solid #000;
}

.footertrust {
    clear: both;
    text-align: center;
    margin-bottom: 35px;
}

.servicebox {
	text-align: center;
}

.supportbox {
	text-align: center;
}

a.cp_btn {
	display: block;
	width: 160px;
	height: auto;
	padding: 0.7em;
	text-align: center;
	text-decoration: none;
	color: #101010;
	border: 2px solid #8BB6C6;
	background: #8BB6C6;
	transition: .4s;
	right: 0px;
	bottom: 10px;
	position: absolute;
}

a.cp_btn:hover {
	background: #8BB6C6;
	color: #101010;
	border: 2px solid #F7F7F7;
	letter-spacing: 5px;
}

.contact {
	width: 100%;
	height: auto;
}

.toptext {
    margin-top: 80px;
    font-size: 60px;
}
.japanese {
    font-size: 34px;
}
.contents {
    margin-top: 100px;
    line-height: 50px;
    font-size: 20px;
}

.toptxt2 {
    font-size: 60px;
}

.view {
	font-size: 20px;
}

.view2 {
	font-size: 20px;
	text-align: right;
}

.viewline {
	width: 100%;
    margin-top: 50px;
}

.viewline2 {
	width: 100%;
    margin-top: 30px;
}

.view3 {
    text-decoration: none;
    color: #101010;
    font-size: 23px;
	transition: all  0.3s ease;
}

.view3:hover {
	text-decoration: none;
	color: #191919;
	letter-spacing: 8px;
}

.txttop {
    line-height: 30px;
    font-size: 15px;
}
.contents2 {
    margin-top: 40px;
    line-height: 50px;
    font-size: 20px;
}
.footerlogo{
	margin: auto;
}
.footertxt {
    font-size: 16px;
    vertical-align: middle;
    text-align: left;
}


.company {
    width: 100%;
    text-align: center;
}
.companytxt {
    width: 100%;
    text-align: center;
	font-weight: bold;
}

.space {
    margin: 25px 0;
    width: 100%;
}

.greet {
    text-align: center;
    margin-top: 50px;
    margin-bottom: 20px;
}

.greettxt {
    line-height: 26px;
	text-align: center;
}

.greetname {
    width: 100%;
    text-align: right;
    padding-right: 30px;
    padding-top: 20px;
}

.service {
    width: 100%;
    text-align: center;
}
.txtservice {
    line-height: 30px;
    font-size: 18px;
}

.servicetop {
    margin-top: 30px;
    margin-bottom: 30px;
    line-height: 35px;
    font-size: 18px;
}

hr {
	width: 20%;
	background-color: #191919
}
.service2 {
    text-align: right;
	margin: auto;
}
.service3 {
	margin: auto;
}

.service4 {
    padding-top: 35px;
    padding-bottom: 35px;
}

#support {
	background-image: url("../images/supporttop.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	width: 100%;
	height: auto;
}

#service {
	background-image: url("../images/servicetop.png");
	background-repeat: no-repeat;
	background-position: center top;
	width: 100%;
	height: auto;
}

#company {
	background-image: url("../images/companytop.png");
	background-repeat: no-repeat;
	background-position: center top;
	width: 100%;
	height: auto;
}

#index {
	background-image: url("../images/topimage.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	width: 100%;
	height: auto;
}

#wrap {
	clear: both;
	background-color: #F7F7F7;
	margin-top: 1000px;
}

#wrap2 {
	clear: both;
	background-color: #F7F7F7;
	margin-top: 1100px;
}

.icon:before {
	content: "";
	padding-left: 15px;
	border-left: 7px solid #8BB6C6;
}

.icon {
    padding-left: 5px;
    line-height: 40px;
    font-size: medium;
}

.topc {
	margin: 80px 0;
	width: 100%;
}

.footertxt1 {
    padding-bottom: 16px;
}

.footertxt2 {
    margin-top: 22px;	
}

.chukai {
	background-image: url("images/グループ化 47.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center top;
	width: 100%;
	height: auto;
	padding-bottom: 20%;
}

.chukai1 {
	width: 100%;
	padding-left: 13%;
	padding-top: 20%;
}

.chukai2 {
	width: 100%;
	padding-left: 13%;
	line-height: 30px;
	padding-top: 2%;
}

.contact1 {
	background-image: url("images/topcontact.png");
	background-repeat: no-repeat;
	background-position: 6% 35%;
	background-size: 25% auto;
	padding-bottom: 15%;
}

.contact2 {
	padding-top: 18%;
	padding-left: 15%;
	padding-right: 14%;
	width: 100%;
}

.formcontact {
	width: 50%;
	text-align: center;
	margin: 100px 0;
}

.formcontact1 {
	width: 100%;
}

.btn {
    background-color: #34495e;
    border: 1px solid #34495e;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
	margin-top: 10%;
	letter-spacing: 3px;
}

.btn:hover {
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    -o-transform: translateY(-10px);
    transform: translateY(-10px);
	background-color: #34495e;
    border: 1px solid #34495e;
}

input {
	width: 100%;
	text-align: center;
	letter-spacing: 3px;
}

textarea {
	width: 100%;
	text-align: center;
	letter-spacing: 3px;
}

.contacttxt {
	padding-bottom: 40px;
	letter-spacing: 3px;
}

/*--------------------------  相談室  ------------------------------*/

#consul {
	background-image: url("../images/consultopimg.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
	width: 100%;
	height: 800px;
}

.row {
	width: 100%;
}

.consul {
    font-family: dnp-shuei-4go-std, sans-serif;
    font-style: normal;
	text-shadow: 8px 8px 12px rgba(0,0,0,0.2);
}

.ct1 {
	font-size: 40px;
	letter-spacing: 0;
	margin-left: 10%;
	margin-top: 5%;
}

.ctp {
	letter-spacing: 0;
	line-height: 40px;
	margin-top: 8%;
}

.kara {
	font-size: 100px;
}

.soudan {
	font-size: 135px;
	letter-spacing: -11px;
}

.big {
	font-size: 260px;
	color: #F78909;
	margin-left: 10%;
}

.sai {
	font-size: 128px;
	color: #F78909;
}

.blue {
	margin-top: 5%;
}

.consultop {
	position: relative;
}

.consultop2 {
	position: absolute;
	top: 20%;
	font-family: a-otf-ud-shin-go-pr6n, sans-serif;
    font-weight: 300;
    font-style: normal;
}

.ho {
	padding-top: 3%;
}

.kie {
	padding-top: 2%;
}

.kai {
	padding-top: 12%;
}

.cube2{
	margin-top: 1%;
	text-align: center;
	-webkit-text-stroke: 2px #FFF;
	font-size: 40px;
	letter-spacing: -2px;
	transform: rotate(-3deg);
    -moz-transform: rotate(-3deg);
    -webkit-transform: rotate(-3deg);
    border-style: solid; /* ボーダーを実線に */
    border-width: 1px;  /* ボーダー線の太さを1pxに  */
    border-color: #FF4A4A ;  /* ボーダー線の色を指定 */
    color:#FFFFFF; /* 文字色を黒に  */
    padding: 10px 0; /* 文字と四角の間に余白をつくる  */
    vertical-align: 3%;  /* 上下のずれを微修正；少し上に移動  */
    background-color:  #FF4A4A; /* 背景に色を付ける  */ 
    box-shadow: 16px 15px 0px rgba(20,20,20,0.2); /*囲いに影をつける */
}

/*-------------------------  お悩み  --------------------------*/
.think {
	text-align: center;
	margin-top: 8%;
	position: relative;
}

.think img {
	position: absolute;
	top: 55%;
	left: 20%;
	width: 62%;
	z-index: -99;
}
 
.think h1 {
	font-size: 40px;
    font-family: fot-matisse-pron, sans-serif;
    font-weight: 500;
    font-style: normal;
}

span.rotate45 {
	font-size: 55px;
    display: inline-block;
    transform: rotate(-10deg);
    -moz-transform: rotate(-10deg);
    -webkit-transform: rotate(-10deg);
    -o-transform: rotate(-10deg);
    -ms-transform: rotate(-10deg);
}

.thinklist {
	margin: 10% 0 5% 0;
	font-family: a-otf-ud-shin-go-pr6n, sans-serif;
    font-weight: 300;
    font-style: normal;
}

.list1 {
	margin-bottom: 4%;
}

/*------------------------  red  -------------------------*/
.red {
	position: relative;
}

.solution {
	position: absolute;
	color: white;
    font-family: fot-matisse-pron, sans-serif;
    font-weight: 500;
    font-style: normal;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: 15px 30px;
	color: #fff;

}

.solution p {
    -webkit-text-stroke: 1px #FFF;
	font-size: 30px;
}

.solution h4 {
    -webkit-text-stroke: 2px #FFF;
	font-size: 40px;
	line-height: 60px;
}

.solution2 img {
	width: 80%;
	margin: 8% 0 3% 0;
}

.solution3 img {
	width: 80%;
	margin: 3% 0 5% 0;
}

.mail {
	margin: 2% 0 8% 0;
}

/*------------------------  yellow  -------------------------*/
.yellow {
	position: relative;
}

.yellow h4 {
	position: absolute;
	top: 45%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: 15px 30px;
	color: #fff;
	text-align: left;
	width: 700px;
	font-family: fot-matisse-pron, sans-serif;
    font-weight: 500;
    font-style: normal;
	font-size: 40px;
	letter-spacing: -5px;
    -webkit-text-stroke: 1px #FFF;
}

.yellow2 p {
	margin: 5% 0 0 3%;
	font-size: 20px;
	font-family: fot-matisse-pron, sans-serif;
    font-weight: 500;
    font-style: normal;
} 

.yellow2 h5 {
	font-family: a-otf-ud-shin-go-pr6n, sans-serif;
    font-weight: 300;
    font-style: normal;
	font-size: 25px;
	margin-bottom: 5%;
}

.yellow2 h5 .ul {
	text-decoration: underline;
}

/*------------------------  レスポンシブ  -------------------------*/

.mb-consul { display: none;}

/*------------------------  レスポンシブ  -------------------------*/
@media (max-width:1199px){
	.greet { margin-top: 0;}
	.ct1 { margin-top: 3%;}
	.blue { margin-top: 5%;}
	.consultop2 { top: 20%;}
	.cube2 { font-size: 35px;}
}

@media (min-width:768px) and (max-width:992px){
	.toptext {
		margin-top: 30px;
	}
	.contents {
		margin: 40px 0;
	}
	.contents2 {
		margin: 30px 0;
		line-height: 30px;
	}
	.viewline {
		margin: 0;
	}
	.companyimg { margin-top: 40px;}
	.txt { font-size: 15px;}
	.chukai1 { padding-left: 10%;}
	.chukai2 { padding-left: 10%;}
	.solution p { font-size: 20px;}
	.solution h4 { font-size: 30px;
	               line-height: 50px;}
	.mail { width: 50%;}
	.yellow h4 { font-size: 35px;}
}

@media (min-width:576px) and (max-width:768px){
	.footertxt2 { margin-top: 0;
	margin-bottom: 20px;}
	.chukai1 { font-size: 25px;
	           padding-top: 140px;
	           padding-left: 5%;}
	.chukai2 { font-size: 15px;
	           width: 450px;
	           padding-left: 5%;}
	.ct1 { margin-top: 2%;}
	.blue { margin-top: 0%;}
	.consultop2 { top: 10%;}
	.ctp { margin-top: 5%;}
}

@media (max-width:768px){
    .line {display: none;}
	.view { text-align: center;}
	.view2 { text-align: center;}
	.footernav { display: none;}
	.footertrust {padding-top: 30px;}
	.supportimg {margin-top: 50px;}
	.toptxt2 { margin-top: 50px;}
	.service3 { text-align: left;}
	.bod { display: none;}
	.companyimg { margin-top: 40px;}
	.contact1 { background-position: 5% 20%}
	.company { font-size: 30px}
	.greet { font-size: 30px;}
	.toptext { font-size: 40px}
	.toptxt2 { font-size: 40px}
	.japanese { font-size: 25px;}
	.bo { margin-top: 30px;}
	.contact3 { font-size: 13px;}
	.contacttxt { font-size: 30px;
		padding-bottom: 40px;}
	.big { font-size: 140px;}
	.sai { font-size: 70px;}
	.kara { font-size: 50px;}
	.solution p { font-size: 20px;}
	.solution h4 { font-size: 25px;
	               line-height: 40px;}
	.mail { width: 50%;}
	.cube2 { font-size: 30px;}
	.yellow2 h5 { font-size: 17px;}
	.yellow h4 { font-size: 30px;
	             margin-left: 10%;}
	}

@media (min-width:769px){
	.no { display: none;}
	.bo { display: none;}
}

@media (max-width:576px){
	.footertxt { text-align: center;
	margin: 0;}
	.footertxt2 {margin-bottom: 25px;}
	.chukai1 { font-size: 24px;
	           padding-top: 110px;
	           padding-left: 2%;}
	.chukai2 { font-size: 12px;
	           width: 60%;
	           padding-left: 2%;}
	.companytxt2 { text-align: center;
	               margin-top: 10px;}
	.yellow h4 { font-size: 25px;
	             margin-left: 20%;}
	.think h1 { font-size: 25px;
	            margin-top: 15%;}
	span.rotate45 { font-size: 35px;}
	.cube2 { font-size: 20px;}
	.ct1 { font-size: 20px;}
	.big { font-size: 80px;}
	.sai { font-size: 40px;}
	.kara { font-size: 30px;}
}

@media (max-width:420px){
	.consul { text-align: center;}
	.ct1 { font-size: 30px;
	       margin-left: 0;
	       margin-top: 50%;}
	.big { font-size: 150px;
	       margin-left: 0;}
	.sai { font-size: 80px;}
	.kara { font-size: 30px;}
	.consultop { display: none;}
	.mb-consul { display: block;}
	.top2 { margin-top: 40%;}
	.think h1 { font-size: 20px;}
	.think h1 .rotate45 { font-size: 30px;}
	.thinklist { font-size: 13px;}
	.red { display: none;}
	.yellow { display: none;}
	.thinklist { display: none;}
	.thinklistmb { margin: 10% 0;}
	.redtxt { display: none;}
	.redtxtmb { margin: 10% 0;}
	.mail { width: 80%;}
     #consul {
	background-image: url("../images/mbtop.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
	width: 100%;
	height: 600px;}
	.yellow2 { display: none;}
	.plans { margin: 10% 0 15% 0;}
	.mail2 { margin-bottom: 20%;}
}

@media screen and (min-width: 650px){	
  .br-pc { display:block; }
  .br-mb { display:none; }
}
@media screen and (max-width: 650px){	
  .br-pc { display:none; }
  .br-mb { display:block; }
}