@charset "utf-8";

/*
Theme Name: Tipllo
Theme URI: https://tipllo.com/
Author: Tetsu Yamamoto
Author URI: https://twitter.com/okapo192
Description: 株式会社ティプロ コーポレートサイト
Version: 1.0
*/

ul,li {
	list-style:none;
}
*:focus {
	outline:none!important;
}
* {
	box-sizing:border-box;
}
html,body {
	font-family: 'Montserrat','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	height:100%;
}
a {
	color:black;
}
a:hover {
	text-decoration:none;
	opacity:0.9;
}
img {
	max-width:100%;
	max-height:100%;
	object-fit:cover;
}
.container {
	overflow:hidden;
	max-width:960px;
	margin:auto;
}
.br-on {
	display:none;
}

/*トップ*/
.top{
	background-image:url('../uploads/keyvisual.jpg');
	background-position:center;
	background-size:cover;
	height:100%;
	position:relative;
}
.top h2{
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	width:100%;
	height:40px;
	font-size:40px;
	text-align:center;
}
/*言語切り替えボタン*/
.language {
	text-align:right;
	margin-top:20px;
	margin-right:10px;
	z-index:999;
}
.language a {
	color:#737375;
	margin:0 5px;
	padding:0px 15px;
	display:inline-block;
}
.active-language {
	border:1px solid #737375;
	border-radius:2px;
}

	/*ナビゲーション*/
	.navbar-brand img {
		width:200px;
	}
	#menu ul {
		width:100%;
		justify-content:flex-end;
	}
	.nav-item {
		margin:0 10px;
	}
	.nav-link {
		text-align:center;
		padding:5px!important;
		display:inline-block;
		letter-spacing:3px;
	}
	.nav-link:hover{
		border-bottom:3px solid #92B73d;
		margin-bottom:-3px;
	}
	.nav-link span {
		font-size:0.6em;
	}
	#nav-contact-li {
		margin-right:0;
	}
	#nav-contact {
		color:white;
		padding-right:15px!important;
		padding-left:15px!important;
		background-color:#92B73D;
		margin-right:0;
	}
	#nav-contact:hover{
		border-bottom:none;
		background-color:#7EA030;
		opacity:1;
	}

	/*スクロールボタン*/
	#scroll-button {
	  position:absolute;
	  bottom:50px;
	  left:0;
	  right:0;
	  margin:0 auto;
	  width:200px;
	  color:black;
	  text-align:center;
	}
	#scroll-button span {
	  position: absolute;
	  top: 0;
	  left: 50%;
	  width: 24px;
	  height: 24px;
	  margin-top:20px;
	  margin-left: -12px;
	  border-left: 1px solid #919295;
	  border-bottom: 1px solid #919295;
	  -webkit-transform: rotate(-45deg);
	  transform: rotate(-45deg);
	  -webkit-animation: sdb 2s infinite;
	  animation: sdb 2s infinite;
	  box-sizing: border-box;
	}
	@-webkit-keyframes sdb {
	  0% {
	    -webkit-transform: rotate(-45deg) translate(0, 0);
	  }
	  20% {
	    -webkit-transform: rotate(-45deg) translate(-10px, 10px);
	  }
	  40% {
	    -webkit-transform: rotate(-45deg) translate(0, 0);
	  }
	}
	@keyframes sdb {
	  0% {
	    transform: rotate(-45deg) translate(0, 0);
	  }
	  20% {
	    transform: rotate(-45deg) translate(-10px, 10px);
	  }
	  40% {
	    transform: rotate(-45deg) translate(0, 0);
	  }
	}

/*ここからABOUT*/
#about {
	position:relative;
	padding:60px 0;
	background-image:url('../uploads/about.png');
	background-size:cover;
	background-position:center;
}
.section-title {
	color:#9AB843;
	border-bottom:2px solid #9AB843;
	display:inline-block;
}
.section-title p,.section-title-2 p {
	margin-bottom:5px;
	font-size:0.8em;
}
.about-sentence {
	padding-top:20px;
}
.toumei {
	background-color:rgba(255,255,255,0.8);
	z-index:-1;
}
#bg-1 {
	position:absolute;
	left:0;
	top:0;
	width:60%;
	z-index:-3;
}
#bg-2 {
	position:absolute;
	bottom:0;
	right:0;
	width:60%;
	z-index:-2;
}

/*ここからNEWSのコーナー*/
#news {
	background-color:#85A637;
	padding:60px 0;
}
.section-title-2 {
	color:white;
	border-bottom:2px solid white;
	display:inline-block;
}
.articles {
	padding:20px 0;
	margin:0;
	justify-content:space-between;
}
.articles a {
	padding:0!important;
	display:block;
	flex:auto!important;
	max-width:32%!important;
}
.article {
	background-color:white;
}
.article-img{
	height:220px;
	text-align:center;
	display: table-cell;
    vertical-align: middle;
}
.article-info {
	padding:15px;
}
.article-info h3 {
	font-size:18px;
}
#readmore {
	border:1px solid white;
	margin:20px 0;
	padding:15px 0;
	text-align:center;
	color:white;
	width:32%;
	float:right;
	position:relative;
}
#readmore:hover {
	background-color:#333333;
}
#readmore svg {
	position:absolute;
	right:40px;
	font-size:1.4em;
}

/*ここからSERVICE*/
#service {
	padding:60px 0 0 0;
}
.services {
	margin:30px 0;
}
.service {
	padding:10px;
}
.service-img{
	max-width:none;
	max-height:none;
	text-align:center;
}
.service-img img {
	border-radius:100px;
	height:200px;
	width:200px;
	object-fit: cover;
}
.service-info {
	padding:20px 0;
}
.service-info h3 {
	font-size:18px;
	text-align:center;
}

/*ここからCOMPANY*/
#company {
	padding:60px 0;
}
#company table {
	width:90%;
	margin:30px auto;
}
#company td{
	padding-top:10px;
	padding-bottom:10px;
	border-top:1px solid lightgrey;
}
.td-left {
	padding-left:80px;
	font-weight:550;
	width:30%;
}
.td-right{
	padding-right:80px;

}
#tr-last td {
	border-bottom:1px solid lightgrey;
}

/*googlemap*/
#map {
	width:90%;
	margin:auto;
}
#map iframe {
	width:100%!important;
}

/*コンタクトフォーム*/
#contact {
	background-color:#92B73D;
	padding:60px 0;
}
.contact-form{
	padding-top:30px;
	color:white;
}
.contact-form .row {
	width:90%;
	margin:0 auto;
	padding:5px 0;
}
.necesarry {
	background-color:#B53545;
	color:white;
	padding-right:10px;
	padding-left:10px;
	font-size:0.9em;
}
input,textarea {
	width:100%;
}

/*コンタクトフォーム*/
.wpcf7-submit {
    padding: 15px;
    border: 1px solid white;
    background-color: #92B73D;
    display: block;
    width: 30%;
    margin: auto;
    color:white;
}
.submit-button {
	position:relative;
	margin-top:20px;
}
.submit-button input:hover{
	background-color:#333333;
}
.submit-button svg{
    position: absolute;
    top: 15px;
    right: 40%;
    font-size: 1.5em;
}
div.wpcf7-validation-errors, div.wpcf7-acceptance-missing, div.wpcf7-response-output, div.wpcf7-mail-sent-ok{
	border:none!important;
	text-align:center!important;
	margin:0!important;
	padding:0!important;
}

/*ここからフッター*/
footer {
	padding:30px 0;
}
.footer-logo {
	float:left;
	width:100px;
	margin-top:20px;
}
.footer-info {
	float:left;
	margin-top:55px;
	margin-left:10px;
}
.footer-info ul {
	overflow:hidden;
	padding:0;
}
.footer-info li{
	float:left;
	padding-right:10px;
}
.copyright {
	float:right;
	margin-top:90px;
}


/*ページトップへボタン*/
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
	z-index: 999;
}
#pageTop i {
  padding-top: 6px
}
#pageTop a {
  display: block;
  padding: 15px 0 0 0px;
  border-radius: 30px;
  width: 50px;
  height: 50px;
  background-color: #9FD6D2;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
#pageTop svg {
	font-size:1.3em;
}
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}

/*404ページ*/
.nothing {
	text-align:center;
	margin:50px 0;
}
