@charset "utf-8";

/*--------------------------------------------------------------------------------------------------------
Base
--------------------------------------------------------------------------------------------------------*/
#text { position:fixed; top:0; left:0; background:#000; width:100px; color:#fff; z-index:9999; display:none; }

/*----------------------------------------------------
ブラウザおよびそのプロジェクトにおける、
各要素のデフォルトのスタイルを定義
----------------------------------------------------*/
html { overflow-y:scroll; }
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { margin:0; padding:0; }
address,caption,cite,code,dfn,em,strong,th,var { font-style:normal; }
table { border-collapse:collapse; border-spacing:0; }
caption,th { text-align:left; font-weight:normal; }
q:before,q:after { content: ''; }
object, embed { vertical-align:top; }
hr,legend { display:none; }
h1,h2,h3,h4,h5,h6 { font-size:100%; font-weight:normal; }
img,abbr,acronym,fieldset { border:0; }
li { list-style-type:none; }
article,aside,canvas,details,figcaption,figure,header,footer,main,menu,nav,section,summary { display:block; }

/*----------------------------------------------------
基本設定
----------------------------------------------------*/
body {
	background:#3399CC; color:#333; font-size:100%; line-height:1.4;
	font-family:"メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS P Gothic", "Osaka", Verdana, Arial, Helvetica, sans-serif;
	word-wrap:break-word; -webkit-text-size-adjust:none;
}
table { font-size:100%; font-family:"メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS P Gothic", "Osaka", Verdana, Arial, Helvetica, sans-serif; }
input,textarea,select,option { color:#333; font-size:100%; font-family:"メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS P Gothic", "Osaka", Verdana, Arial, Helvetica, sans-serif; }

img { width:100%; vertical-align:bottom; }

.clear { zoom:100%; }
.clear:after { display:block; visibility:hidden; clear:both; height:0.1px; font-size:0.1em; line-height:0; content:"."; }


.closeModal { padding-top:30px; }
.closeModal a { display:block; margin:0 auto; height:35px; line-height:35px; text-align:center; font-size:13px; font-weight:bold; width:140px; color:#fff; text-decoration:none; background:#999;
border-radius:3px; -webkit-border-radius:3px;  -moz-border-radius:3px; }

/* アイコン関連 */
.fa-external-link { position:relative; top:1px; margin-left:3px; }



#container { position:relative;  background:#fff; overflow-x:hidden; }
#fade { display:none; }

/*----------------------------------------------------
トップ
----------------------------------------------------*/
#top .contents {}
#top .contents_body { background:#3399CC; position:relative; width:100%; margin:0 auto; }
#top .contents_body h1 { position:absolute; top:50%; left:50%; margin-left:-100px; margin-top:-50px; width:200px; }
#top .contents_body h1 img { width:100%; }

/*----------------------------------------------------
ナビゲーション
----------------------------------------------------*/
.headerOuter { position:fixed; top:0; right:-200px; background: rgba(0,0,0,0.5); width:200px; height:2000px; z-index:8999; }
#header {}
.header__inner { padding:10px; }

.header__inner h1 { padding:8px 10px; box-sizing:border-box; background:#fff; }
.header__inner h1 img { width:100%; }
.header__inner nav {}
.header__inner nav ul {}
.header__inner nav ul li { font-size:15px; font-family: 'Ubuntu', sans-serif; }
.header__inner nav ul li a { display:block; height:35px; line-height:35px; padding:5px 10px; color:#fff; text-decoration:none; border-bottom:1px solid #ccc; }
.headerBtn { width:45px; height:45px; position: fixed; top:10px; right:10px; z-index:8998; }
.headerBtn:hover { cursor: pointer; }

.headerBtn.noactive { background:url(../img/headerBtn_noactive.png) 0 0 no-repeat; background-size:45px 45px; }
.headerBtn.active { background:url(../img/headerBtn_active.png) 0 0 no-repeat; background-size:45px 45px; }

 
.hoverArea { position:fixed; top:0; left:0; height:100%; width:100%;  display:block; background: rgba(0,0,0,0.3); z-index:8997; }


/*----------------------------------------------------
セクション見出し
----------------------------------------------------*/
.contents_header { width:100%; background:#f5f5f5; }
.contents_header h2 { color:#727272; padding-left:10px; text-align:center; }
.contents_header h2 .en { font-size:30px; line-height:1.2; font-family: 'Ubuntu', sans-serif; }
.contents_header h2 .en span { font-size:50px; color:#D4A950; }
.contents_header h2 .ja { display:block; font-size:15px; margin-top:-5px; padding-bottom:10px; }

/*----------------------------------------------------
事業案内
----------------------------------------------------*/
#services { background:#f5f5f5; }
#services .contents_body { width:100%; }
#services .contents_body__inner .sectionOuter { width:100%; table-layout:fixed; height:100%; }
#services .contents_body__inner .section_01 {}
#services .contents_body__inner .section_01 .section__inner { padding:20px; height:100%; background:#79D1B0;  }
#services .contents_body__inner .section_02 {}
#services .contents_body__inner .section_02 .section__inner { padding:20px; height:100%; background:#F58E7E;  }
#services .contents_body__inner .section__inner h3 { font-size:18px; font-weight:bold; text-align:center; color:#fff; }
#services .contents_body__inner .section__inner .ph { width:150px; margin:0 auto; padding:20px 0; }
#services .contents_body__inner .section__inner .ph img { width:100%; }
#services .contents_body__inner .section__inner p { color:#fff; font-size:15px; }

/*----------------------------------------------------
会社概要
----------------------------------------------------*/
#about { background:#f5f5f5; }
#about .contents_body { width:100%; }
#about .contents_body__inner .tableOuter { background:#93B8CA; }
#about .contents_body__inner table { width:100%; }
#about .contents_body__inner table tr {}
#about .contents_body__inner table tr th { width:70px; font-size:13px; padding:10px; border-bottom:1px solid rgba(255,255,255,0.3); text-align:center; font-weight:bold; color:#fff; }
#about .contents_body__inner table tr td { font-size:13px; padding:10px 10px 10px 0; border-bottom:1px solid rgba(255,255,255,0.3); color:#fff; }
#about .contents_body__inner table tr td a { color:#fff; }
#about .contents_body__inner table tr td .label { display: inline-block; width: 6em; }
#about .contents_body__inner table tr:last-child th { border-bottom:none; }
#about .contents_body__inner table tr:last-child td { border-bottom:none; }

/*----------------------------------------------------
企業理念
----------------------------------------------------*/
#vision { background:#f5f5f5; }
#vision .contents_body { width:100%; margin:0 auto; background:#f5f5f5; }
#vision .contents_body__inner { background:#fff;  padding-top:20px; }
#vision .contents_body__inner h3 { text-align:center; font-size:15px; padding:0 20px; color:#727272; margin-bottom:10px; }
#vision .contents_body__inner ul { padding:0 0 20px 20px; }
#vision .contents_body__inner ul li { color:#666666; line-height:1.2; }
#vision .contents_body__inner ul li:last-child { margin-bottom:0; }
#vision .contents_body__inner ul li .ja { font-size:13px; }
#vision .contents_body__inner ul li .en { font-size:20px; font-family: 'Ubuntu', sans-serif; }
#vision .contents_body__inner ul li .en span { font-size:30px; color:#79D1B0; }

/*----------------------------------------------------
採用情報
----------------------------------------------------*/
#recruit { background:#f5f5f5; }
#recruit .contents_body { width:100%; }
#recruit .contents_body__inner h3 { font-size:18px; font-weight:bold; margin-bottom:20px; padding-top:20px; color:#fff; text-align:center; }
#recruit .contents_body__inner .tableOuter {}
#recruit .contents_body__inner table { width:100%; border-top:1px solid rgba(255,255,255,0.3); }
#recruit .contents_body__inner table tr { }
#recruit .contents_body__inner table tr th { width:70px; font-size:13px; padding:10px; border-bottom:1px solid rgba(255,255,255,0.3); text-align:center; font-weight:bold; color:#fff; }
#recruit .contents_body__inner table tr td { font-size:13px; padding:10px 10px 10px 0; border-bottom:1px solid rgba(255,255,255,0.3); color:#fff; }
#recruit .contents_body__inner table tr td a { color:#fff; }
#recruit .contents_body__inner table tr:last-child th { border-bottom:none; }
#recruit .contents_body__inner table tr:last-child td { border-bottom:none; }
#recruit .contents_body__inner .section_01 .tableOuter { background:#5EBABA; }
#recruit .contents_body__inner .section_01 table { background:#5EBABA; }
#recruit .contents_body__inner .section_02 .tableOuter { background:#737373 }
#recruit .contents_body__inner .section_02 table { background:#737373; }
#recruit .contents_body__inner .recruit-banner-pc { display:none; }
#recruit .contents_body__inner .recruit-banner-sp { display:block; margin:auto; padding-bottom:10px; width: 80%;}

/*----------------------------------------------------
お問い合わせ
----------------------------------------------------*/
#contact { background:#f5f5f5; padding-bottom:20px; }
#contact .contents_body { width:100%;}
#contact .contents_body__inner { }
#contact .contents_body__inner a { color:#333; }
#contact .cf-turnstile { margin-bottom: 20px; text-align: center; }
#contact button[type="submit"] { background: #d4a950; color: #fff; border: none; padding: 10px 30px; font-weight: bold; border-radius: 3px; cursor: pointer; outline:none; }
#contact button[type="reset"] { background: #999; color: #fff; border: none; padding: 10px 30px; font-weight: bold; border-radius: 3px; cursor: pointer; outline:none; }
#contact button:hover { opacity:0.8; }
#contact .mailform { margin-bottom:10px; }
#contact .todofuken li { padding-bottom:5px; }
#contact .todofuken li:last-child { padding-bottom:0; }
#contact .yubin { margin-bottom:5px; }

#contact input[type="text"],
#contact input[type="email"],
#contact input[type="tel"],
#contact textarea { padding:5px; border:1px solid #ccc; -webkit-appearance: none; }

#contact select { height:30px; }
#contact .form_01 input { width:100px; }
#contact .form_02 input { width:100px; }
#contact .form_03 input { width:100%; box-sizing:border-box; }
#contact .form_04 input { width:100%; box-sizing:border-box; }
#contact .form_05 input { width:100%; box-sizing:border-box; }
#contact .form_06 input { width:80px; }
#contact .form_06 span { font-size:13px; }
#contact .form_06 .todofuken .shi input{ width:100%; box-sizing:border-box; }
#contact .form_06 .todofuken .cho input{ width:100%; box-sizing:border-box; }
#contact .form_07 input { width:120px; }
#contact .form_08 textarea { width:100% !important;  min-height:100px !important; resize:vertical !important; box-sizing:border-box; vertical-align:bottom; }
#contact .form_09  { padding-top:15px !important; }
#contact .form_09 input { position:relative; top:0px; }
#contact .form_09 input:hover { cursor:pointer; }
#contact .form_09 label { position:relative; top:5px; }

/*----------------------------------------------------
お問い合わせ
----------------------------------------------------*/
#thanks { background:#f5f5f5; padding:0; }
#thanks .contents_body { width:100%; margin:0 auto; position:relative; }
#thanks .contents_body__inner {}
#thanks .contents_body__inner a { color:#333;}
#thanks .contents_body__inner .section__inner {}
#thanks .contents_body__inner .section__inner p { position:absolute; top:50%; left:0; width:100%; text-align:center; font-size:15px; margin-top:-25px; }
#thanks .contents_body__inner .section__inner p  a { display:block; margin:20px auto 0 auto; height:35px; line-height:35px; text-align:center; font-size:13px; font-weight:bold; width:140px; color:#fff; text-decoration:none; background:#999;
border-radius:3px; -webkit-border-radius:3px;  -moz-border-radius:3px; }
#thanks .contents_body__inner .section__inner p  a:hover { background:#ccc; }


/*----------------------------------------------------
個人情報の取り扱いについて
----------------------------------------------------*/
#pgwModal {
-webkit-overflow-scrolling: touch;
}
#policy { background:#fff; padding:20px; }
#policy .contents_header { width:100%; margin:0 auto; background:#fff; }
#policy .contents_header h2 { font-size:18px; font-weight:bold; margin-bottom:25px; color:#727272; text-align:left; border-left:5px solid #666; padding-left:10px; padding-top:2px; line-height:1.4; }
#policy .contents_body { width:100%; margin:0 auto; background:#fff; }
#policy .contents_body__inner h3 { font-size:18px; font-weight:bold; margin-bottom:20px; color:#727272; text-align:left; border-left:5px solid #666; padding-left:10px; padding-top:2px; line-height:1.4; }
#policy .contents_body__inner h4 { font-size:13px; font-weight:bold; color:#333; }
#policy .contents_body__inner p { margin-bottom:20px; font-size:13px; } 
#policy .contents_body__inner p:last-child { margin-bottom:0; }
#policy .contents_body__inner .block { border:1px dashed #ccc; padding:20px; }

/*----------------------------------------------------
個人情報保護方針
----------------------------------------------------*/
#rule { background:#fff; padding:20px; }
#rule .contents_header { width:100%; margin:0 auto; background:#fff; }
#rule .contents_header h2 { font-size:18px; font-weight:bold; margin-bottom:25px; color:#727272; text-align:left; border-left:5px solid #666; padding-left:10px; padding-top:2px; line-height:1.4; }
#rule .contents_body { width:100%; margin:0 auto; background:#fff; }
#rule .contents_body__inner h3 { font-size:18px; font-weight:bold; margin-bottom:20px; color:#727272; text-align:left; border-left:5px solid #666; padding-left:10px; padding-top:2px; line-height:1.4; }
#rule .contents_body__inner h4 { font-size:13px; font-weight:bold; }
#rule .contents_body__inner p { margin-bottom:20px; font-size:13px; } 
#rule .contents_body__inner p:last-child { margin-bottom:0; }
#rule .contents_body__inner ul { margin-bottom:20px; }
#rule .contents_body__inner ul li { font-size:13px; margin-bottom:10px; }
#rule .contents_body__inner ul li:last-child { margin-bottom:0; }
#rule .contents_body__inner .block { border:1px dashed #ccc; padding:20px; }

/*----------------------------------------------------
個人情報に関する公表事項
----------------------------------------------------*/
#announce { background:#fff; padding:20px; }
#announce .contents_header { width:100%; margin:0 auto; background:#fff; }
#announce .contents_header h2 { font-size:18px; font-weight:bold; margin-bottom:25px; color:#727272; text-align:left; border-left:5px solid #666; padding-left:10px; padding-top:2px; line-height:1.4; }
#announce .contents_body { width:100%; margin:0 auto; background:#fff; }
#announce .contents_body__inner h3 { font-size:15px; font-weight:bold; margin-bottom:10px; color:#727272; text-align:left; line-height:1.4; }
#announce .contents_body__inner p { margin-bottom:20px; font-size:13px; } 
#announce .contents_body__inner p:last-child { margin-bottom:0; }
#announce .contents_body__inner .table_01 { width:100%; margin-bottom:20px; }
#announce .contents_body__inner .table_01 tr { border-top:1px solid #ddd; border-left:1px solid #ddd; }
#announce .contents_body__inner .table_01 tr:first-child td { background:#eee; font-weight:bold; }
#announce .contents_body__inner .table_01 tr td { width:50%; font-size:13px; border-right:1px solid #ddd; border-bottom:1px solid #ddd; text-align:left; }
#announce .contents_body__inner .table_01 tr td { font-size:13px; padding:10px; border-right:1px solid #ddd; border-bottom:1px solid #ddd; }
#announce .contents_body__inner .section_01 { margin-bottom:40px; }
#announce .contents_body__inner .section_02 { margin-bottom:40px; }
#announce .contents_body__inner .section_03 { margin-bottom:40px; }
#announce .contents_body__inner .section_04 { margin-bottom:0; }
#announce .contents_body__inner ul { margin-bottom:20px; }
#announce .contents_body__inner ul li { font-size:13px; margin-bottom:10px; }
#announce .contents_body__inner ul li:last-child { margin-bottom:0; }
#announce .contents_body__inner .table_02 { width:100%; }
#announce .contents_body__inner .table_02 tr { border-top:1px solid #ddd; border-left:1px solid #ddd; }
#announce .contents_body__inner .table_02 tr th { width:200px; font-size:13px; border-right:1px solid #ddd; border-bottom:1px solid #ddd; text-align:center; background:#eee; font-weight:bold; }
#announce .contents_body__inner .table_02 tr td { font-size:13px; padding:10px; border-right:1px solid #ddd; border-bottom:1px solid #ddd; }


/*----------------------------------------------------
フッター
----------------------------------------------------*/
.footer { background:#fff; border-top:5px solid #eee; }
.footer__inner { width:100%; padding:20px 0; }
.footer__inner .nav { font-size:11px; margin-bottom:10px; }
.footer__inner .nav li { line-height:1.8; }
.footer__inner .nav li a { display:block; text-align:center; color:#333; }
.footer__inner small { font-size:11px; line-height:1; padding-top:5px; display:block; text-align:center;  }


