@charset "UTF-8";

/* 17184b */

/*================================================
 * Reset
 ================================================*/
html,body,div,span,h1,h2,p,img,dl,dt,dd,ol,ul,li,form,label,input,select,option,textarea,table,tbody,tr,th,td,footer,header,nav { margin:0; padding:0; border:0; outline:0; font-size:16px; line-height:1.6; vertical-align:baseline; background:transparent; font-weight:normal; box-sizing:border-box; }
div, footer, header, nav, article, section, ul, dl, dt, dd { display:block; overflow:hidden; }
ul { list-style:square; }
li { margin-left:1em; }
a { margin:0; padding:0; vertical-align:baseline; background:transparent; text-decoration:none; outline:none; }
a:hover, a:focus { text-decoration:none; outline:none; }
a:hover { opacity:0.5; }
a:link, a:visited { }
table { border-collapse:collapse; border-spacing:0; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }
form,input,select,textarea { }

/*================================================
 *  Tags
 ================================================*/
* { font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; color:white; }
body { -webkit-text-size-adjust:100%; }
header { position:fixed; width:100%; top:0; left:0; z-index:10; box-shadow:0 5px 5px black; background:linear-gradient(white 0%, white 90%, rgb(23,24,75) 100%); }
h1 { float:left; padding-left:50px; text-shadow:2px 2px 2px #aaa; letter-spacing:4px; height:100px; line-height:100px; font-size:36px; color:#003764; }
h2 { font-size:28px; margin-bottom:30px; text-shadow:2px 2px 2px #aaa; }
article { padding-top:100px; }
section { background:rgba(23,24,75,0.9); width:75%; margin:30px auto 50px; padding:30px; }
section:last-child { margin-bottom:0; }
table { width:100%; table-layout:fixed; }
th { width:150px; text-align:right; vertical-align:top; padding-right:30px; }
td { width:auto; padding-bottom:20px; }
footer { display:block; margin-top:50px; height:60px; line-height:60px; text-align:center; font-size:20px; font-weight:normal; text-shadow:1px 1px 1px black; background:rgba(23,24,75,0.9); }

/*================================================
 *  Classes
 ================================================*/
.center { text-align:center; margin:0 auto; }
.empha { font-weight:bold; font-size:125%; }
.error { color:red; }

/*================================================
 * Common
 ================================================*/

/*================================================
 * Others
 ================================================*/
header img { display:block; float:right; padding:20px 50px 20px 0; }
div.content a { text-decoration:underline; }
div#back_image { position:fixed; top:100px; left:0; width:100%; height:calc(100% - 100px); z-index:-1; background:url('images/back_image/back1.jpg') center 100px / cover no-repeat fixed; }
div.sp_icon { display:none; }
section.greeting p { margin-bottom:10px; text-indent:1em; font-weight:normal; }
section p.ceo { text-align:right; margin-bottom:0; }
td p.address { display:inline; margin-right:30px; }
td p.address span:first-child { margin-right:10px; }
a.outlink:after { content:url("images/outlink.png"); margin-left:10px; }
#page-top { position:fixed; bottom:20px; right:100px; background:rgba(23,24,75,0.9); border:2px solid white; }
#page-top a { display:block; width:50px; height:50px; line-height:50px; font-size:36px; color:white; text-align:center; }
#page-top a:hover { text-decoration:none; background-color:black; opacity:1; }

article.error { height:600px; text-align:center; padding-top:200px; }
article.error p, article.error a { font-size:28px; margin-bottom:20px; text-shadow:3px 3px 3px black; }


/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■  ここからスマートフォン向け  ■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
@media screen and (max-width:800px) {

html,body,div,span,h1,h2,p,img,dl,dt,dd,ol,ul,li,form,label,input,select,option,textarea,table,tbody,tr,th,td,footer,header,nav { font-size:14px; line-height:1.8; }
header { box-shadow:0 2px 2px black; }
h1 { padding-left:20px; letter-spacing:3px; line-height:100px; font-size:24px; }
h2 { font-size:20px; text-shadow:1px 1px 1px #aaa; margin-bottom:0; padding-left:10px; }
article { position:fixed; top:0; height:calc(100% - 80px - 40px - 20px); width:100%; overflow:auto; }
section { margin:20px; padding:10px; width:auto; }
section:last-child { margin-bottom:20px; }
th { width:95px; padding-right:15px; }
footer { position:fixed; bottom:0px; width:100%; height:40px; line-height:40px; margin-top:20px; font-size:14px; background:rgba(23,24,75,1); }
a:hover { opacity:1; }

header img { padding:30px 20px 30px 0; height:100px; }
div#back_image { top:80px; height:calc(100% - 80px - 40px); background-position:center 80px; }
div.content { display:none; margin-top:30px; }
div.sp_icon { display:block; float:right; font-size:20px; }
section p.ceo { margin:30px 0 10px; }
table, thead, tbody, tfoot, tr, th, td { display:block; }
th { text-align:left; width:100%; padding-right:0; border-left:4px solid white; padding-left:10px; margin-left:8px; }
td { margin-left:20px; }
td p.address { margin-right:0; }
td p.address span { display:block; }
#page-top { display:none; }
}

