@charset "utf-8";
/* ===== 共通 ===== */

article.typehr{
  padding-bottom: 3em;
  margin-bottom: 3em;
  box-sizing: border-box;
}

/* ===== Header（ヘッダーの骨格のみ） ===== */
.header-outer{
  /*display:flex;*/
  width:100%;
  position:fixed;
  height:100px;
  z-index:1000;            /* 最前面をキープ */
  background-color:#fff;
  left:0; top:0;
}
.responsive-wrapper{
  width:98%;
  max-width:1520px;
  margin-left:auto; margin-right:auto;
}
.header-inner{
  max-width:1520px;
  margin:auto;
  position:relative;       /* ハンバーガーの基準 */
  top:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
 /* height:90px;*/
}
/* ロゴ */
.header-inner .logo{
  width:27%;
  margin:0;
  display:flex;
  align-items:center;
}
.header-inner .logo img{
  width:100%;
  max-width:330px;
  height:auto;
}

/* スマホ時：ロゴを横幅70%で表示 */
@media screen and (max-width:960px){
  .header-outer{
  height:70px;
}
  .responsive-wrapper{ width:100%; }
  .header-inner{ padding:0 12px; height: 70px; }
  .header-inner .logo{ width:70%; max-width:none; }
  .header-inner .logo img{ width:100%; height:auto; max-height:56px; }
}

/* 既存コンテンツ系（以下はそのまま運用） ------------------- */

/* コンテンツ共通ラッパー */
.contentWrapper{
  width:100%;
  max-width:1520px;
  margin:auto;
  box-sizing:border-box;
}
@media screen and (max-width:1200px){
  .contentWrapper{ width:95%; margin:auto; }
}

/* Parallax */
.parallax_area{
  width:100%; height:400px; overflow:hidden; position:relative;
  background-position:center top; background-repeat:no-repeat;
  background-attachment:fixed; background-size:cover;
}
.parallax_area .overlay{
  width:100%; height:100%; position:absolute; top:0; left:0; background:rgba(255,255,255,.4); z-index:2;
}
.parallax_area.color01 .overlay{ background:rgba(0,60,121,.7);}
.parallax_area.color02 .overlay{ background:rgba(1,104,44,.7);}
.parallax_area.color03 .overlay{ background:rgba(0,0,0,.4);}
.bg_image{
  width:100%; height:170%; position:absolute; top:0; left:0; z-index:1;
  background-attachment:fixed; background-position:center center; background-repeat:no-repeat; background-size:cover;
}
.bg_image .inner{ padding:4.25rem 0; max-width:100em; margin:auto; }

/* Goto top */
#goto{ position:fixed; bottom:0; right:30px; z-index:20; }
#goto a{ width:50px; height:50px; display:block; font-size:14px; padding-top:60px; text-align:center; color:#fff; }
#goto a:hover{ color:#28BFDE; text-decoration:none; }
#goto a:before,#goto a:after{
  content:''; position:absolute; top:0; bottom:0; left:0; right:0; width:2px; height:10px; margin:auto; background:#fff; transition:all .5s ease; transform-origin:top center;
}
#goto a:before{ transform:rotate(45deg); }
#goto a:after{ transform:rotate(-45deg); }
#goto a:hover:before{ transform:translateY(-3px) rotate(45deg); }
#goto a:hover:after{ transform:translateY(-3px) rotate(-45deg); }
#goto a:hover:before,#goto a:hover:after{ background:#28BFDE; }
@media screen and (max-width:768px){ #goto{ display:none !important; right:0; } }

/* Footer */
#footer{
  padding:6em 0 4em 0; background-color:#1d242a; text-align:center;
}
#footer .icons{ font-size:1.25em; }
#footer .icons a,.linklist li a{ color:rgba(255,255,255,.5) !important; }
#footer .icons a:hover,.linklist li a:hover{ color:#fff; }
#footer .copyright{
  color:rgba(255,255,255,.5); font-size:.8em; letter-spacing:.225em; list-style:none; padding:0; text-transform:uppercase;
}
#footer .copyright li{
  border-left:solid 1px rgba(255,255,255,.5); display:inline-block; line-height:1em; margin-left:1em; padding-left:1em;
}
#footer .copyright li:first-child{ border-left:0; margin-left:0; padding-left:0; }
#footer .copyright li a{ color:inherit; }
#footer .copyright li a:hover{ color:#fff; }
@media screen and (max-width:480px){
  #footer .copyright li{ border:0; display:block; line-height:1.65em; margin:0; padding:.5em 0; }
}
@media screen and (max-width:980px){ #footer{ padding:4em 3em 2em 3em; } }
@media screen and (max-width:736px){ #footer{ padding:3em 2em 1em 2em; } }

/* 見出し補助 */
.left-line{ border-left:6px solid #304387; padding:.625rem 0 .625rem 1.25rem; position:relative; }
.under_dot{ border-bottom:3px dotted #304387; padding:1rem 0; color:#304387; }
.left-circle{ color:#fff; padding:.5rem; line-height:1.3; background:#304387; vertical-align:middle; border-radius:25px 0 0 25px; margin-bottom:.5rem; }
.left-circle:before{ content:'●'; color:#fff; margin-right:8px; }

/* パンくず */
.breadcrumbsWrap{
  width:100%; margin:auto; font-size:1.4rem; color:#777; margin-top:10px; white-space:nowrap; overflow-x:scroll; -ms-overflow-style:none; scrollbar-width:none;
}
.breadcrumbs{ display:flex; align-items:center; }
.breadcrumbs .home{ color:#2a627e; }
.breadcrumbs .arrow{
  display:inline-block; width:6px; height:6px; border-top:solid 1.5px #aaa; border-right:solid 1.5px #aaa; margin:0 10px; transform:rotate(45deg);
}
