/* ================
  共通レイアウト 
 ================ */

body {
  font-family: "Yu Gothic", YuGothic;
}

a{
  text-decoration: none;
  color: #666;
}

/* 全体フォント指定 */
 @font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

/* ================
  レイアウト
 ================ */

/* 2カラム */
@media (min-width: 481px) {
.twoCol{
  overflow: hidden;
}
.twoColLeft{
  float: left;
  width:500px;
  
}
.twoColRight{
  float: right;
  width:450px;
}
}

/* 基本の形。センター寄せ */

.section{
  width:1000px;
  margin: 0 auto;
  overflow: hidden;
}

/* ================
  共通ヘッダー 
 ================ */

/* 通常時 */
.globalHeader{
  position: relative;
  z-index: 20;
  padding: 10px 0 5px;
  background: #FFF;
  transform: translateY(0px);
}
.globalHeader .logo{
  float: left;
}
.globalHeader .logo a{
  display: block;
  text-indent: -999em;
  width:200px;
  height:50px;
  background: url('../images/logo.png');
}
.globalHeader .globalNav{
  padding-top: 24px;
  float: right;
}
.globalHeader .globalNav ul.common_menu{
  text-align: right;
}
.globalHeader .globalNav ul.common_menu li{
  display: inline-block;
  margin: 5px 5px;
}
.globalHeader .globalNav ul.common_menu li a{
  font-size: 12px;
  padding: 5px 8px 5px;
}
.globalHeader .globalNav ul.sp_menu{
  display: none;
}


/* # # # # # # # # # # # # #
【JS:01】 ヘッダーを固定する（上部に固定し、高さを縮める） 
# # # # # # # # # # # # # */

.globalHeader.fixed{
  top: 0;
  left:0;
  right:0;
  -webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
          box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
  animation: slideDown 0.8s ease;
}
@keyframes slideDown{
  0% { transform: translateY(-100px);}
  100% { transform: translateY(0px); }
}
.globalHeader.fixed .logo a{
  width:120px;
  height:30px;
  -webkit-background-size: 120px 30px;
       -o-background-size: 120px 30px;
          background-size: 120px 30px;
}

.globalHeader.fixed .globalNav{
  padding-top: 0px;
}


/* ================
  パンくずリスト 
 ================ */
.breadCrumb{
  border-top: 2px solid #eee;
  padding-top: 20px;
  padding-bottom: 40px;
}
.breadCrumb ul{ 
}
.breadCrumb ul li{
  display: inline-block;  
  font-size: 12px;
  padding: 6px 0;
}
.breadCrumb ul li:after{
  content: ">";
  padding: 0 10px;
}
.breadCrumb ul li:last-child:after{
  content: "";
}
.breadCrumb ul li a{
  
}
.breadCrumb ul li span{
  font-weight: bold;
  padding-bottom: 4px;
  border-bottom: 2px solid #67b6ce;
}

/* フッター */
.globalFooter{
  background: #f2f2f2;
  padding: 15px;
}
.globalFooter .copyright{
  font-size: 11px;
  text-align: center;
  color: #888;
  letter-spacing: 0.1em;
}


/* 文字装飾 */
.red{
  color: #de3231;
}
strong{
  font-weight: bold;
}


/* テキストの共通装飾 */
.textBlock {
  padding: 20px 0;
}
.textBlock p{
  font-size: 12px;
  margin-bottom: 10px;
  line-height: 1.6;
}
.textBlock p:last-child{
  margin-bottom: 0px;
}


/* フォームパーツ */
.form{
  
}
.form select{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #bbb;
  background: #f5f5f5;
  padding: 10px 30px 10px 15px;
}
.form label{
  position: relative;
}
.form label:after {
  display: block;
  font-family:"fontawesome";
  content: "\f107";
  position: absolute;
  top: 50%;
  right: 0px;
  width: 20px;
  height: 20px;
  margin-top: -4px;
  pointer-events: none;
  font-size: 12px;
  color: #666;
}

/* モーダルボックス */

.cover{
  display: none;
  position:fixed;
  left:0;
  top:0;
  right:0;
  bottom:0;
  z-index: 10;
  background: rgba(0,0,0,0.2);
}
.modal{
  display: none;
  position:fixed;
  z-index: 10;
  left:50%;
  top:50%;
  margin: -100px -200px;
  width:400px;
  background: #FFF;
  box-shadow: 0 0 8px rgba(0,0,0,0.3);
}

.modal .title{
  background: #888;
  color: #fff;
  padding: 20px;
  text-align: center;
}
.modal .body{
  padding: 20px;
  text-align: center;
  line-height: 1.6;
}
.modal .foot{
  background: #eee;
  text-align: center;
  padding: 20px;
}


/* ボタン */
.button{
  box-sizing: border-box;
  display: inline-block;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  color:#fff;
  padding: 10px 40px;
  border: none;
  font-size: 14px;
  cursor: pointer;
  text-align: center;
}
.button.small{
  padding: 6px 12px;
}
.button.blue{
  background: #3fa5ca;
}
.button.black{
  background: #555;
}
.button.disabled{
  cursor: default;
  pointer-events:none;
  background: #ccc !important;
}
.button.ghost{
  background: #FFF;
  border: 1px solid;
}
.button.ghost.blue{
  color:#3fa5ca;
}
.button.ghost.black{
  color:#555;
}

