@charset "UTF-8";
/* CSS Document */

body{
  fon-size:0.9em/16px;
  line-height: 1.6em;
  font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  margin:0;
  padding:0;
  color:#333;
}
#wrapper{
  width:100%;
  margin:0;
  padding:0;
}

.full{
  min-width: 1024px;
  width:100%;
  margin:0 auto;
  padding:0;
  position:relative;
  }

.full.gray{background:#f7f6fb;}
.full.orange{
  background:#fcf3ef;
  padding:90px 0;
}
.full.blue{
  background:#f7f7fa;
  padding:60px 0;
}
.full.gray_01{background:#f2f2f2;}

.full.gray_02{
  background:#f2f2f2;
  padding:100px 0;
}
.full.orange_02{
  background:#fcf3ef;
  padding:60px 0;
}
.contents{
  width:1050px;
  margin:0 auto;
  padding:0;
  position: relative;
  }
a{word-break: break-all; color: #162a50;}
a:hover { text-decoration: none;}
li{list-style:none;}
.bold{font-weight:600;}
.f12{font-size:12px !important;}
.f14{font-size:14px !important;}
.black{color:#333;}
.red{color:#FF7779}
.orange{color:#e86e39;}
.blue{color:#162a50;}
.over{overflow:hidden;}
.text_center{text-align:center;}
.img_center{
  display:block;
  margin:0 auto;
}
.line_auto{line-height:1.6em;}
/*----------------------------------------------------
  header
----------------------------------------------------*/
header{
  min-width:1024px;
  width:100%;
  margin:0 auto;
}

#header{
  width:100%;
  max-width:1300px;
  margin:0 auto;
  overflow:hidden;
}

#header #logo{
  position:relative;
  float:left;
  line-height: inherit;
  border-bottom: none;
  margin:15px auto;
  padding:0;
  z-index:9999;
}

#header #logo img{
 max-width: 100%;
}

#header #logo:hover{
  opacity:0.6;
  -ms-filter: "alpha(opacity=60)";
  }

ul#header_nav{
  width:auto;
  float:right;
  margin:15px 0 5px;  
  padding:0;
  /*overflow:hidden;*/
  }

ul#header_nav li{
  list-style:none;
  float:left;
  margin-left:15px;
  padding:10px 5px 10px 10px;
  position:relative;
}

ul#header_nav li a{
  position:relative;
  color:#333;
  font-size:12px; 
  font-weight:600;
  text-decoration:none;
  z-index:9999;
}

ul#header_nav li.key a{
  color:#ffffff;
  display:inline-block;
  background:url(../img/key_icon.png) right 15px top 7px no-repeat #898f99;
  background-color: #898f99;
  padding:2px 40px 2px 16px;
  margin-left:15px;
  overflow: hidden;
}
ul#header_nav li.registration a{
  position:relative;
  color:#fff;
  padding:8px 18px 8px 8px;
  background:#dd6b3b;
}

ul#header_nav li.registration a:before  {
  content: '';
    width: 5px;
    height: 5px;
    border: 0px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 42%;
  right: 4%;
  } 

ul#header_nav li.search a{
  position:relative;
  color:#fff;
  display:inline-block;
  padding:2px 40px 2px 16px;
  background:#19407f;

}
ul#header_nav li.search a:before {
  content:"　";
  width:32px;
  height:42px;
  right:-5px;
  top:-10px;
  position:absolute;
  background:url(/img/search_icon.png) right center no-repeat;  
  z-index:9999;
  
}

ul#header_nav li a:hover{text-decoration:underline;}


/* ここから検索　*/

ul#header_nav li.search2{
  position:relative;
  display:block;
  width:36px;
  height: 28px;
  background:url(../images/search.png) center no-repeat,#19407f;
  margin: 10px 0 0;
  padding: 0;
}

ul#header_nav li.search2 dl{margin:0;}

/*検索窓周り*/ 
#gsc{
    width:100%;
    padding:0;
    margin:0 auto;
    position:relative;
  border:none;
  overflow:hidden;
}
#gsc td {
  margin:0;
  padding:0;
  border: none; }
 
#gsc .gsc-control-cse, 
#gsc .gsc-control-cse-ja,
#gsc .gsib_a{
  background:none;
  border:none;
    margin:0;
    padding:0;
}
/* テキスト入力フォームとボタンの位置 */
#gsc table.gsc-search-box td,
#gsc table.gsc-search-box input {
    vertical-align: top !important;
}
/* テキスト入力フォーム */
#gsc input[type="text"]{
  background:#ddd !important;
    min-height:28px;
  margin-top:0px !important;
  padding:0 0 0 4px !important;
  height:100%;
  border-radius:0 !important;
}
 
#gsc input[type="text"]:focus {outline: 0;  /*safariの自動フォーカスを切る */}
/* テキスト入力フォームの影を消す */
#gsc #gsc-iw-id1{border:none !important;}
/* テキスト入力フォームの背景画像位置調整 */
#gsc #gs_tti0 input{background-position:5px 5px !important;}
/* ボタンの色 */
#gsc input.gsc-search-button {
  background: #19407f;
  margin:0;
  border:none;
  padding:8px 10px 7px;
}
  
/* ボタンの位置調整と角丸消し */
#gsc .gsc-search-button{
    margin:0 0 0 -2px !important;
    border-radius:0px;
  z-index:9999;
  padding: 0;
    border: none;
}
/* 入力時に出る「×」ボタンの位置調整 */
#gsc .gsc-search-button .gsc-search-button {
  line-height: 1;
  background-color: #666;
  padding:8px 10px 7px;
}
 
/* 入力時に出る×ボタン -- Firefox位置調整 -- */
#gsc .gsib_b span{
        padding:2px 10px 0 !important;
        box-sizing: border-box;
   -moz-box-sizing: border-box;
}
#gsc .gsst_a{
  height:30px !important;
  margin:0 !important;
  padding:0;
}
.gsst_a .gscb_a {
  height:28px;
  padding:9px 8px 4px !important;
  margin:0;
    color: #19407f !important;
    cursor: pointer;
  background:#a1b9ed;
  box-sizing:border-box !important;
}
.gsc-results-wrapper-overlay{
  width:90% !important;
  left:5% !important;
  padding:15px !important;
  box-sizing:border-box;
}

#gsc a {
    color: #0b56a7 !important;
    font-size: 16px !important;
  line-height:1.6em;
    text-align: left !important;
    background: none !important;
    text-decoration: none;
}

.gsc-control-cse .gsc-search-box div{
  margin:0;
  padding:0;
  border:none;
  outline:none;
  } 

.gsc-results-close-btn{position:relative !important;}

.accordionbox{
  width: 100%;
  margin:0;
  padding: 0;
}
.accordionlist dt{
    display:block;
    padding: 0;
  margin:0;
}
.accordionlist dt:first-child{
    border-top: none !important;
}

.accordionlist dd{
  position:absolute;
  right:36px;
  width: 200px;
  top:0;
    display:none;
  height:100%;
  padding:0;
  margin:0;
  background: #000;
  z-index: 10000;
}
.accordion_icon,
.accordion_icon span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.accordion_icon {
  position: relative;
  width: 36px;
  height: 28px;
  margin:0;
  padding:0;
}
.accordion_icon span {
  position: absolute;
    left: 25%;
  top:0;
    width: 30%;
  height: 2px;
    background-color: #fff;
}
.accordion_icon span:nth-of-type(1),
.accordion_icon span:nth-of-type(2) {
  display:none;
}
/*＋、－切り替え*/
.accordion_icon.active{background:#19407f;}
.accordion_icon.active span:nth-of-type(1) {
  display:block;
  top: 13px;
  left:40%;
  transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
}
.accordion_icon.active span:nth-of-type(2) {
  display:block;
  top: 13px;
  left:40%;
  transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
    -o-transform: rotate(135deg);
}

/*----------------------------------------------------
  footer
----------------------------------------------------*/
footer{
  position:relative;
  min-width:1024px;
  width:100%;
  }
#page_top{
  height:auto;
  width:100%;
  margin-top: 100px;
  padding:0;
  border-top: 1px solid #f2f2f2;
}
#page_top a{
  width:100%;
  padding: 55px 0;
  display:block;
  position:relative;
}

#page_top a:before{
  content: '';
    width: 20px;
    height: 20px;
    border: 0px;
    margin: auto;
    border-top: solid 6px #162b53;
    border-right: solid 6px #162b53;
    -ms-transform: rotate(315deg);
    -webkit-transform: rotate(315deg);
    transform: rotate(315deg);
    position: absolute;
    top: 45%;
    right: 0;
    left: 0;
}

#page_top_fixed {
  position: fixed;
  right: 25px;
  bottom: 25px;
  z-index: 10;
  display: none;
}
#page_top_fixed a {
  transition: opacity .3s;
}
#page_top_fixed a:hover {
  opacity: .7;
}

footer a:hover{
  opacity:0.6;
  -ms-filter: "alpha(opacity=60)";
}

#footer_wap{
  width:100%;
  padding:30px 0 15px;
  background: #162b53; 
}

#footer_innder{
  width:1024px;
  margin:0 auto;
  overflow:hidden;
}

.footer_info{
  color: #fff;
}

.footer_info_name{
  font-weight: bold;
  margin: 0;
}

.footer_info address{
  font-size: 12px;
  font-style: normal;
}

.footer_info_txt{
  font-size: 12px;
  margin-top: 0;
}

#foot_nav{
  width:100%;
  margin:0 auto 0;
  padding:15px 0 0;
  overflow:hidden;
  border-top:1px solid #455575;
}

#foot_nav dl{
  float:left;
  width:50%;
  margin:0;
  padding:0;
  overflow:hidden;
}

#foot_nav dl dd{
  width:auto;
  float:left;
  padding:0;
  margin:0;
  line-height:12px;
  border-right:1px solid #fff;
  box-sizing:border-box;
}

#foot_nav dl dd a{
  display:inline-block;
  position:relative;
  padding:0 10px;
  margin:0;
  font-size:12px;
  text-decoration:none;
  color:#fff;
}
#foot_nav dl dd:first-child a{padding-left:0;}
#foot_nav dl dd:last-child{border-right:0;}
#foot_nav dl dd  a:hover{text-decoration: underline;}
#copy{
  float:right;
  text-align:right;
  display:block;
  width:50%;
  color:#fff;
  font-size:12px;
  line-height:12px;
  margin:0;
  padding:0;
  }

.footer_search {
  overflow: hidden;
  width: 30%;
  float: right;
  padding: 0;
}

.footer_search .gsc-search-button{
  height: 27px;
  margin-top: 0px;
  padding: 5px 10px;
}

.footer_search table.gsc-search-box td {
  padding: 0;
}
.footer_search .gsc-input {
  font-size: 14px;
  background: none !important;
  /*margin-top: -5px !important;*/
  padding: 0 5px !important;
}

.footer_search .gsib_b .gsst_a .gscb_a {
  height: 25px !important;
}
.footer_search .gsst_a {
  padding: 0 !important;
}

/*パンくず*/
#pan{
  width:1050px;
  margin:0 auto;
  padding:10px 0 ;
  overflow:hidden;
}
#pan li{
  font-size:12px;
  list-style:none;
  float:left;
  margin-right:15px;
  font-weight: bold;
}
#pan li a{color:#000;}
#pan li a:hover{text-decoration:none;}
.sp_only{display:none;}
.mt_10{margin-top:10px !important;}
.mt_15{margin-top:15px !important;}
.mt_20{margin-top:20px !important;}
.mt_30{margin-top:30px !important;}
.mt_45{margin-top:45px !important;}
.mt_50{margin-top:50px !important;}
.mb_0{margin-bottom:0 !important;}
.mb_10{margin-bottom:10px !important;}
.mb_15{margin-bottom:15px !important;}
.mb_30{margin-bottom:30px !important;}
.mb_45{margin-bottom:50px !important;}
.mb_60{margin-bottom:60px !important;}
.mb_100{margin-bottom:100px !important;}
#pan li a span {
  font-weight: 500;
}
.pc_br:before {
  content: "\A" ;
  white-space: pre ;
}

/********************************* 画面サイズが1024px以下の場合に適用 *********************************/
@media screen and (max-width:1024px) {

.full{min-width: 100%;}
.contents{width:90%;}

/*----------------------------------------------------
  header
----------------------------------------------------*/
header{min-width:100%;}
#header #logo{
  width:228px;
  float:left;
  margin:15px auto;
  padding:0;
}
#header #logo img{width:100%;} 
ul#header_nav li{padding:10px 0;}
ul#header_nav li.key a{margin-left:0;}  
/*----------------------------------------------------
  footer
----------------------------------------------------*/
footer{min-width:100%;}
#footer_innder{width:96%;}
#footer_innder ul li a{font-size:14px;}
#foot_nav dl dd a{
  padding:0 6px;
  font-size:11px;
} 
#copy{font-size:11px;}  


/*パンくず*/
#pan{width:96%;}
  
  iframe {
    max-width:  100%;
  }

}

/********************************* 画面サイズが601px以下の場合に適用 *********************************/
@media screen and (max-width:601px) {
.full.sp_blue{
  background:#f7f7fa;
  padding:15px 0;
  }
header {
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
#header{height:110px;}
#header #logo{
  width:250px;
  margin:15px 0 5px 10px;
}
#header #logo img{width:100%;} 

ul#header_nav{
  width:92%;
  float:none;
  margin:0 auto 5px;  
  padding:10px 0 0;
  overflow:hidden;
  }

ul#header_nav li{
  list-style:none;
  float:left;
  /*width:48%;
  margin:0 4% 0 0;*/
  width:49.9%;
  margin:0;
  padding:0;
  position:relative;
}
ul#header_nav li:first-child{display:none;}
ul#header_nav li:last-child{
  width:100%;
  margin:10px auto 0;
  }
ul#header_nav li:nth-child(3){margin-right:0;}

ul#header_nav li.key a,
ul#header_nav li.search a,
ul#header_nav li.registration a{
  width:100%;
  box-sizing:border-box;  
  } 
  
ul#header_nav li.key a{
  color:#fff;
  display:inline-block;
  background:url(../img/key_icon.png) right 15px top 8px no-repeat #898f99;
  padding:2px 40px 2px 16px;
}
ul#header_nav li.search a{
  position:relative;
  color:#fff;
  display:inline-block;
  padding:2px 48px 2px 16px;
  background:#19407f;
}

ul#header_nav li.registration a{
  display:block;
  width:100%;
  padding:4px;
  text-align:center;
}

header + .full {
  margin-top: 110px;
}

.full.gray_02 {
  padding: 40px 0;
}

#page_top{
  margin-top: 50px;
}

#page_top a {
  padding: 25px 0;
}

#page_top a:before {
  width: 16px;
  height: 16px;
  border-top-width: 3px;
  border-right-width: 3px;
}

#footer_innder{width:100%;} 
#footer_innder ul{display:none;}

.footer_info {
  padding: 0 5%;
}

#foot_nav{border-top:none;}
#foot_nav dl{
  float:none;
  width:100%;
  text-align: center;
  margin:0 auto;
  padding:0;
  overflow:hidden;
}

#foot_nav dl dd{
  width:auto;
  float: none;
  margin:0 auto 6px;
  line-height:1.6em;
  border-right:1px solid #fff;
  padding: 0 2%;
  box-sizing:border-box;
  text-align:center;
  display: inline-block;
}

#foot_nav dl dd a{
  display:inline;
  padding:0x;
  font-size:13px;
}
#foot_nav dl dd:nth-child(2n){border-right:none;}

#copy{
  float:none;
  text-align:center;
  width:auto;
  color:#fff;
  font-size:12px;
  line-height:1.6em;
  margin:30px auto 0;
  padding:15px 0 0;
  border-top:1px solid #455575;
  }

  .footer_search {
    width: 100%;
    overflow: hidden;
  }
  
  
#pan{width:96%;}
#pan li{
  font-size:11px;
  margin-right:5px;
}
.sp_br:before {
  content: "\A" ;
  white-space: pre ;
}
.pc_br:before{display:none;}  
.sp_only{display:block !important;} 
.pc_only{display:none !important;}
.img_center{width:100%;}

.clearfix:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}

.clearfix {display: inline-table;}
/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */  


.main_img img{
  width:100%;
  height:auto;
}
}

.title_space{
  margin-bottom: 10px;
}
.ft_14px{
  font-size: 14px;
}
.table-size table{
  width: 100%;
}

.faq_sec h2 {
  border:none;
  padding: 50px 0 0;
  margin: 0 auto;
}

.faq_sec_cont {
  margin-bottom: 80px;
}

.tind_3 {
  padding-left: 3%;
}
@media screen and (max-width:601px) {
  .tind_3 {
    padding-left: 8%;
  }
}