@charset "UTF-8";


/*reset style*/
/*-----------------------------------------------------------------*/
article,aside,figure,figcaption,footer,header,nav,section,main{ display: block; }
small{ font-size: inherit; line-height: inherit; }
body,p,h1,h2,h3,h4,h5,h6,dl,dt,dd,div{ margin: 0; padding: 0; font-size: 100%; line-height: 1.5; }
ul,li,ol{ list-style: none; margin: 0; padding: 0; }
button{ background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; }
a img{ border: none; }
a{ transition: all 0.25s linear; }
a:hover{ opacity: 0.7; text-decoration: none; }
img{ vertical-align: middle; }
em{ font-style: normal; font-weight: bold; color: #333333; letter-spacing: -0.03em; }
input:placeholder-shown{ color: silver; }
input::-webkit-input-placeholder{ color: silver; }
input:-moz-placeholder{ color: silver; }
input::-moz-placeholder{ color: silver; }
input:-ms-input-placeholder{ color: silver; }
input[type="text"]{ font-size: 14px; line-height: 1.7; padding: 8px 15px; border: 1px solid #dddddd; }
textarea{ font-size: 14px; line-height: 1.7; padding: 10px 15px; border: 1px solid #dddddd; }
body,p,div{
	color:#666666;
	font-family: Lato, "メイリオ", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
	font-family: "Helvetica neue", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif \9;
	font-feature-settings: "palt";
	font-size: 14px; line-height: 1.7;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body:not(:target),
p:not(:target),
div:not(:target){ font-family: Lato, "メイリオ", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif \9; }


/*general style*/
/*-----------------------------------------------------------------*/
.ns{ font-size: 12px; line-height: 1.5; }
.spt5{ margin-top: 5px; }
.spt10{ margin-top: 10px; }
.spt15{ margin-top: 15px; }
.spt20{ margin-top: 20px; }
.spt25{ margin-top: 25px; }
.spt30{ margin-top: 30px; }
.spt35{ margin-top: 35px; }
.spt40{ margin-top: 40px; }
.spt45{ margin-top: 45px; }
.spt50{ margin-top: 50px; }
.spt60{ margin-top: 60px; }
.spt70{ margin-top: 70px; }
.spt80{ margin-top: 80px; }
.spt90{ margin-top: 90px; }
.spt100{ margin-top: 100px; }
.spt110{ margin-top: 110px; }
.spt120{ margin-top: 120px; }
.spt130{ margin-top: 130px; }
.spt140{ margin-top: 140px; }
.spt150{ margin-top: 150px; }
.fleft{ float: left; }
.fright{ float: right; }
.ovf-h{ overflow: hidden; }
.full-width{ width: 100%; }
.txt-left{ text-align: left; }
.txt-center{ text-align: center; }
.txt-right{ text-align: right; }
.txt-indent{ text-indent: -1em; padding-left: 1em; display: block; }
.txt-hide{ text-indent: 101%; display: block; white-space: nowrap; overflow: hidden; }
.inline-block{ display: inline-block; *display: inline; *zoom: 1; }
.block-center{ margin-right: auto; margin-left: auto; }
.clearfix:after{ display: block; clear: both; height: 0; visibility: hidden; content: ""; }
.clearfix{ min-height: 1px; }


/*ベース*/
/*-----------------------------------------------------------------*/
#wrapper{ min-width: 830px; background-position: center center; background-size: cover; background-attachment: fixed; }
#header{ overflow: hidden; position: relative; height: 80px; background-color: #ffffff; }
#header .header-logo{ position: relative; left: 50%; margin-left: -385px; line-height: 80px; }
#header .global-navi{ position: absolute; right: 50%; margin-right: -385px; top: 50%; transform: translateY(-50%); }
#header .global-navi .item{ display: inline-block; font-weight: bold; }
#header .global-navi .item+.item{ margin-left: 40px; }
#header .global-navi a{ color: #1a1a1a; text-decoration: none; }
#header .global-navi .current a{ color: #00b79f; text-decoration: underline; }
#main .page-ttl-wrapper{ text-align: center; padding: 90px 0; }
#main .page-ttl-wrapper *{ color: #ffffff; }
#main .page-ttl{ font-family: 'Archivo Narrow', sans-serif; font-weight: bold; font-size: 40px; letter-spacing: 0.05em; position: relative; padding-bottom: 10px; margin-bottom: 20px; }
#main .page-ttl::before{ content: ''; position: absolute; width: 60px; height: 1px; left: 50%; margin-left: -30px; bottom: 0; background-color: #ffffff; }
#main .page-txt{ font-weight: bold; }
#main .content{ padding: 70px 0; background-color: rgba(255,255,255,0.9); margin-bottom: 90px; }
#main .content-box{ width: 730px; margin: 0 auto; }
#main .table-theme01{ display: -ms-flex; display: flex; justify-content: space-between; flex-wrap: wrap; }
#main .table-theme01 > *{ padding: 15px 20px; }
#main .table-theme01 .head{ width: 160px; background-color: #00b79f; color: #ffffff; text-align: center; display: -ms-flex; display: flex; align-items: center; justify-content: center; }
#main .table-theme01 .txt{ width: 488px; background-color: #ffffff; }
#main .table-theme01 .txt~*{ margin-top: 2px; }
#footer{ background-color: #ffffff; }
#footer .totop-btn{ text-align: center; }
#footer .totop-btn a{ display: block; position: relative; color: #ffffff; text-decoration: none; display: block; background-color: #707070; padding: 35px 0 15px; }
#footer .totop-btn a::before{ content: ''; position: absolute; width: 10px; height: 10px; border: solid #b2b2b2; transform: rotate(45deg); left: 50%; margin-left: -5px; margin-top: -13px; border-width: 2px 0 0 2px; }
#footer .global-navi{ padding: 18px 0; text-align: center; }
#footer .global-navi .item{ display: inline-block; position: relative; }
#footer .global-navi .item+.item{ margin-left: 20px; padding-left: 20px; }
#footer .global-navi .item+.item::before{ content: ''; position: absolute; width: 1px; height: 16px; top: 50%; left: 0; margin-top: -8px; background-color: #dedede; }
#footer .global-navi a{ color: #545454; font-weight: bold; text-decoration: none; }
#footer .footer-credit{ text-align: center; padding: 40px 0; border-top: 1px solid #e5e5e5; }
#footer .footer-info{ margin-top: 15px; font-style: normal; }
#footer .copyright{ background-color: #2c2c2c; font-style: 10px; color: #a9a9a9; text-align: center; padding: 25px 0; }



/*トップページ*/
/*-----------------------------------------------------------------*/
.home-main-visual{ position: relative; }
.home-main-visual .photo img{ width: 100%; height: auto; }
.home-main-visual .copy{ position: absolute; top: 28.68%; left: 0; width: 100%; text-align: center; }
.home-navi .item{ height: 520px; background: center center no-repeat; background-size: cover; position: relative; }
.home-navi .item .overlay{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 1; }
.home-navi .item .txt-body{ position: absolute; left: 0; width: 100%; text-align: center; top: 50%; transform: translateY(-50%); z-index: 5; }
.home-navi .item .txt-body *{ color: #ffffff; }
.home-navi .item .ttl{ font-family: 'Archivo Narrow', sans-serif; font-weight: bold; font-size: 40px; letter-spacing: 0.05em; position: relative; padding-bottom: 10px; margin-bottom: 20px; }
.home-navi .item .ttl::before{ content: ''; position: absolute; width: 60px; height: 1px; left: 50%; margin-left: -30px; bottom: 0; background-color: #ffffff; }
.home-navi .item .txt{ font-weight: bold; }
.home-navi .item01{ background-image: url(../image/top/p01.jpg); }
.home-navi .item01 .overlay{ background-color: rgba(155,135,82,0.4); }
.home-navi .item01 .overlay:hover{ background-color: rgba(155,135,82,0); }
.home-navi .item02{ background-image: url(../image/top/p02.jpg); }
.home-navi .item02 .overlay{ background-color: rgba(24,48,85,0.4); }
.home-navi .item02 .overlay:hover{ background-color: rgba(24,48,85,0); }
.home-navi .item03{ background-image: url(../image/top/p03.jpg); }
.home-navi .item03 .overlay{ background-color: rgba(0,90,91,0.3); }
.home-navi .item03 .overlay:hover{ background-color: rgba(0,90,91,0); }



/*業務内容*/
/*-----------------------------------------------------------------*/
.page-business{ background-image: url(../business/image/bg.jpg); }



/*会社概要*/
/*-----------------------------------------------------------------*/
.page-company{ background-image: url(../company/image/bg.jpg); }



/*プライバシーポリシー*/
/*-----------------------------------------------------------------*/
.page-privacy{ background-image: url(../privacy/image/bg.jpg); }
.privacy-section{ margin-top: 40px; border-left: 1px solid #d5d5d5; padding-left: 20px; }
.privacy-section .ttl{ font-size: 16px; color: #000000; }
.privacy-section .ttl+*{ margin-top: 5px; }











