@charset "Shift_JIS";


.voice_subBox {
  background-color: #e4f2f9;
  border-radius: 3px;
  display: table;
}
.voice_subBox .voice_icon {
  display: table-cell;
  vertical-align: bottom;
  text-align: center;
}
.voice_subBox .voice_desc {
  display: table-cell;
  vertical-align: middle;
  box-sizing: border-box;
}


@media print, screen and (min-width : 641px){
  /*SP only*/
  .sp{display: none;}
  .pc{display: block;}
  
  .voice_subBox ~ .voice_subBox {
    margin-top: 8px;
  }
  .voice_subBox .voice_icon {
    width: 80px;
  }
  .voice_subBox .voice_desc {
    width: 550px;
    padding: 8px 16px 8px 0;
  }
}


/*--------------------------------------------------------
モバイル用レイアウト（640px以下の解像度のスクリーン含む）
--------------------------------------------------------*/

@media only screen and (max-width : 640px){
  
  /*PC only*/
  .sp{display: block;}
  .pc{display: none;}


  /*--------------------------------------------------------
  サイト全体の共通設定
  -------------------------------------------------------*/
  
  html{
    overflow-y: scroll;
    overflow-x: hidden;
  }
  
  html,body{
    width: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
  }
  
  textarea,input{ max-width: 95%; }
  
  input[type="submit"],input[type="image"],
  input[type="reset"],input[type="button"],
  input[type="file"]{ max-width: none; }
  
  
  /*●画像サイズの調整*/
  img {
    height: auto;
    max-width: 100%;
  }
  
  a{
    color: #39f;
    -webkit-tap-highlight-color: #fc6;
  }
  
  
  /*--------------------------------------------------------
  エリアの設定
  --------------------------------------------------------*/
  
  #container,
  #top,
  #header,
  #global-nav,
  #breadcrumbs,
  #main-image,
  #main,
  #footer,
  #footer-banner,
  .copyright{
    width: 100%!important;
    min-width: 100%!important;
  }
  
  #top-in,
  #header-in,
  #breadcrumbs ol,
  #global-nav-in,
  #main-image-in,
  #main-in,
  #footer-in,
  #footer-banner ul,
  .copyright p{
    /*width: 98%!important;*/
    /*margin: 0 1%!important;*/
    width: 100%!important;
    margin: 0;
  }
  
  #sub-contents,
  #sidebar,
  #main-and-sub,
  #main-contents{
    float: none!important;
    width: 100%!important;
  }
  
  #container{
    /*padding-top: 0;*/
    padding-top: 30px;
    padding-bottom: 1.5em;
  }
  
  
  /*--------------------------------------------------------
  トップ
  --------------------------------------------------------*/
  
  #top{ 
    position: relative;
    top: 0;
    height: auto;
    font-size: 1.2em;
  }
  
  #top-menu{
    float: none;
  }
  
  #top-menu li{
    text-align: left;
    display: block;
  }
  
  
  /*--------------------------------------------------------
  ヘッダー
  --------------------------------------------------------*/
  
  #header {
    height:auto;
  }
  
  /*●ヘッダの回り込み解除*/
  #header #header-title{
    float: none;
    width: 100%;
  }
  
  #header .header-logo{
    font-size: 2em;
    text-align: center;
    padding-bottom: 15px;
    border-bottom: 2px solid #ccc;
    overflow:hidden;
  }
  #header .header-logo a{
    position: relative;
    width: 330px;
    display: block;
    margin: 0 auto;
  }
  #header .header-logo a img{
    display: inline-block;
  }
  #header .header-logo a img:nth-child(1){
    width: 200px;
    /*width: 100%;*/
  }
  #header .header-logo a img:nth-child(2){
    margin-left: -48px;
    margin-top: 20px;
  }
  #header .header-logo a:after{
    content: '';
    width: 10px;
    height: 50px;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  #header #header-title h1{
    /*margin-top:5px;*/
    margin: 15px 15px 10px;
    text-align: center;
  }
  
  #header-in #header-text{
    /*margin:5px 0px 10px 0px;*/
    width: 100%;
    text-align: center;
    margin-bottom: 15px;
  }
  
  
  /*--------------------------------------------------------
  グローバルナビ
  --------------------------------------------------------*/
  
  #global-nav{ border-bottom: 0; }
  
  #global-nav dt{
    padding-left: 2.5em!important;
    background: url(../images/icon/icon-arrow05.png) 1em center no-repeat #333;
    color: #fff;
  }
  
  #global-nav #global-nav-in .menu-wrap{ display:none; }
  
  #global-nav #global-nav-in #menu{ margin-bottom: 0; }
  
  #global-nav #global-nav-in #menu,
  #global-nav #global-nav-in #menu li{
    width: 100%;
    border: 0;
  }
  
  #global-nav #global-nav-in #menu li{
    border-bottom: 1px solid #fff;
    background-color: #eaeaea;
    white-space: normal;
  }
  
  #global-nav #global-nav-in #menu li.first{ border-left: 0; }
  
  #global-nav #global-nav-in #menu ul{
    position: static;
    width: auto;
    padding-left: 10%;
  }
  
  #global-nav #global-nav-in #menu ul li{ width: 100%; }
  
  #global-nav #global-nav-in #menu ul li:last-child{ border-bottom: 0; }
  
  /*メニューのデザイン*/
  #global-nav #global-nav-in #menu li a:link,
  #global-nav #global-nav-in #menu li a:visited,
  #global-nav #global-nav-in #menu li a:hover,
  #global-nav #global-nav-in #menu li a:active{ background: url(../images/icon/icon-arrow04.png) 1em 1em no-repeat #eaeaea; }
  
  #global-nav #global-nav-in #menu ul li a{ width: auto; }
  
  #global-nav .btn-gnav{
    display:block;
    padding: 1em;
    cursor: pointer;
  }
  
  
  /*--------------------------------------------------------
  コンテンツ全体
  --------------------------------------------------------*/
  
  #main-contents .cts_list p{
		margin: 0.8em 0 0 1.3em;
	}
	
  
  
  /*--------------------------------------------------------
  MV
  --------------------------------------------------------*/
  
  #main-image img{ width: 100%!important; margin-top: 10px;}
  #main-image .catch-copy{ font-size: 1.4em; }
  #main-image p {margin: 0 15px;}
  
  /*--------------------------------------------------------
  メインコンテンツ（本文）
  --------------------------------------------------------*/
  
  /*●最新情報の回り込みを解除*/
  #main-contents dl.news dt,
  #main-contents dl.news dd.cat,
  #main-contents dl.dl-style01 dt{ float: none; }
  
  #main-contents dl.news dt{ margin-bottom: 0.4em; }
  
  #main-contents dl.news dt,
  #main-contents dl.dl-style01 dt{
    padding-right: 1em;
    padding-left: 1em;
  }
  
  #main-contents dl.news dd.cat{
    display: inline-block;
    width: auto;
    margin: 0 1em 0.5em;
    padding: 0.3em 1em;
  }
  
  #main-contents dl.news dd,
  #main-contents dl.dl-style01 dd{ 
    margin: 0 0 10px 0;
    padding: 0 1em 0.8em 1em;
  }
  
  /*●Tableをブロック表示に*/
  #main-contents .table-style01,
  #main-contents .table-style01 thead,
  #main-contents .table-style01 tbody,
  #main-contents .table-style01 tfoot,
  #main-contents .table-style01 tr,
  #main-contents .table-style01 th,
  #main-contents .table-style01 td{ display: block; }
  
  #main-contents .table-style01 th,
  #main-contents .table-style01 td{
    float: left;
    width: 100%!important;
    box-sizing: border-box;
    -moz-box-sizing: padding-box;
  }
  
  #main-contents .table-style01{ /zoom : 1; }
  #main-contents .table-style01:after{ content : ''; display : block; clear : both; height:0; }
  
  .box-wrap .box-l,
  .box-wrap .box-r{
    float: none;
    width: 100%;
  }
  
  
  /*Youtube動画*/
  #main-contents .v-wrap{
    position: relative;
    overflow: hidden;
    height: 0;
    padding-bottom: 56.25%;
    padding-top: 30px;
  }
  
  #main-contents .v-wrap iframe,
  #main-contents .v-wrap object,
  #main-contents .v-wrap embed{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  
  #company .link-box .site1,
  #company .link-box .site2,
  #company .link-box .site3{
    float: none;
  }
    
  #main-contents .link-box li {
    display: block;
    box-sizing: border-box;
    /*padding: 2% 5%;*/
    padding: 5px 10px;
    background:#fff9ff;
    /*margin: 2% 5%;
    width: 80%;*/
    margin: 10px auto;
    width: 100%;
    border: 2px solid #b0c4de;
    font-size: 13px;
    text-align: center;
  }
  #main-contents .link-box li p {
    text-align:left;
    background: url(../images/icon/icon-arrow_r.png) 0 7px no-repeat;
    padding: 3px 0 3px 15px;
    margin:0px;
  }
  #main-contents .submit_btn {
    width: 100%;
    height: 100%;
  }
  
  /*--------------------------------------------------------
  サブコンテンツ / サイドバー
  --------------------------------------------------------*/
  #sidebar{
    z-index:999;
    position:fixed;
    top:0;
    left: 0;
  }
  #sidebar.open{
    height:100%;
  }
  #sidebar #sidebar-in {
    height:100%;
    background-color:rgba(250,250,250,0.9);
    text-align:center;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
  }
  #sidebar #sidebar-in #side_btn{
    padding-bottom:10px;
  }
  #sidebar img{
    background-color:#fff;
  }
  /* 170828 add */
  #sidebar #site_guide {
    padding-bottom: 50px !important;
  }
  .sidebar-btn::before{
    content: '▼';
    font-size: 12px;
    color: #333;
    display: inline-block;
    background-color: #fff;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    overflow: hidden;
    text-align: center;
    vertical-align: middle;
    line-height: 1;
    box-sizing: border-box;
    padding-top: 4px;
    margin-right: 8px;
    margin-top:-1px;
    position:absolute;
    left:1em;
  }
  .sidebar-btn.open::before{
    content: '▲';
  }
  
  /*折り畳み*/
  #sub-contents .sub-contents-btn,
  #sidebar .sidebar-btn{
    display: block;
    /*margin-bottom: 1em;
    padding: 1em;
    padding-left: 2.5em!important;
    background: url(../images/icon/icon-arrow05.png) 1em center no-repeat #333;*/
    color: #fff;
    padding-left: 0;
    background-color: #333;
    cursor: pointer;
  }
  #sub-contents .sub-contents-btn{
    margin-bottom: 1em;
    padding: 1em;
  }
  #sidebar .sidebar-btn{
    margin-bottom: 0;
    padding:1em;
    text-align:center;
  }
  #sidebar .sidebar-btn span{
    /*padding-left:10%;*/
  }
  
  .sub-column #sub-contents-in,
  .sub-column #sidebar-in{ display: none; }
  
  .sub-column .showSubConts,
  .sub-column .showSidebar{
    display: block!important;
  }
  
  .col1 .sub-column .ranking .item-img,
  .col2 #sub-contents .ranking .item-img,
  .col2r #sub-contents .ranking .item-img,
  .col1 .sub-column .profile-img,
  .col2 #sub-contents .profile-img,
  .col2r #sub-contents .profile-img{
    float: none;
    padding-right: 0;
  }
  
  .col1 .sub-column .banner li,
  .col2 #sub-contents .banner li,
  .col2r #sub-contents .banner li{
    display: block;
    margin-right: 0;
  }
  
  .sub-column dl.search-box{ width: 100%; }
  
  .sub-column dl.search-box dt{
    margin-right: 0;
    margin-bottom: 0.4em;;
    width: 100%;
  }
  
  .sub-column dl.search-box dt,
  .sub-column dl.search-box dd{ float: none; }
  
  
  /*--------------------------------------------------------
  フッター
  --------------------------------------------------------*/
  
  #footer .footer-menu ul{
    float: none;
    width: 100%;
  }
  
  #footer .area01,
  #footer .area02{
    float: none;
    width: 100%;
    margin-bottom: 2em;
  }
  
  .copyright{ padding-bottom: 40px; }
  
  .copyright span{ display: block; }
  
  
  /*--------------------------------------------------------
  ページトップ
  --------------------------------------------------------*/
  
  .page-top{
    right: 0;
    bottom: 0;
    width: 100%;
    text-align: center;
  }
  
  .page-top a{
    display: block;
    border: 0;
    border-top: 1px solid #fff;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
  }
  
  .page-top a:link,
  .page-top a:visited,
  .page-top a:hover,
  .page-top a:active{
    background: url(../images/common/bg-pagetop.gif) 14px center no-repeat #999;
    color: #fff;
  }
  
  .page-top:not(\*|*){ position: static; }/* Opera9以下 */


  /*--------------------------------------------------------
  左右の余白調整
  --------------------------------------------------------*/
  
  .contents{
    margin: 0 15px !important;
    padding: 0 !important;
  }


/*--------------------------------------------------------
	応募方法
	--------------------------------------------------------*/
	#main-contents .ouboform{
		padding: 15px ;
		background-size:75px auto;
		background-position:0 10px;
	}
	#main-contents .ouboform .oubo_first{
		margin-left:50px;
	}
	#main-contents .ouboform #form1 table{
		box-sizing: border-box;
		margin: 0;
		padding: 0;
		width: 100%;
		border-collapse: collapse;
		border-bottom: 1px solid #c0c0c0;
	}
	#main-contents .ouboform #form1 table tbody,
	#main-contents .ouboform #form1 table tr{
		display: block;
	}
	#main-contents .ouboform #form1 table th,
	#main-contents .ouboform #form1 table td{
    display: block;
    width: 100%;
    /* 170830 add */
    float: left\9;
    box-sizing: border-box;
    margin: 0;
    padding: 10px 15px;
    border: 1px solid #c0c0c0;
    border-bottom: 0;
	}
	#main-contents .ouboform #form1 table th{
		text-align: left;
	}
	#main-contents .ouboform #form1 table th .must{
		margin-right: 10px;
	}
	#main-contents .ouboform #form1 table input,
	#main-contents .ouboform #form1 table textarea{
		border: 1px solid #c0c0c0;
		width: 100%;
		max-width: none;
		box-sizing: border-box;
	}
	#main-contents .ouboform #form1 table input{
		display: block;
	}
	#main-contents .smartseal table{
		width: 100%;
	}
	/*#main-contents .ouboform #form1 input#entry_btn{
		max-width:95%;
	}*/
  #main-contents .ouboform #form1 #form-footer input[type="image"] {
    max-width: 95%;
    height: auto;
  }
	#main-contents .ouboform #form1 table td label .inp{
    display: inline;
    width: 20px;
    height: 1rem;
    vertical-align: top;
	}	
	#main-contents.ouboform #form1 table input.w25{
	  width: 30px;	
	}
	#main-contents .ouboform #form1 table input.w40{
	  width: 40px;
	}
  .sp{
	  display: block;
  }
  
  
  /* 170830 add */
  .voice_subBox {
    width: 100%;
  }
  .voice_subBox ~ .voice_subBox {
    margin-top: 0.5em;
  }
  .voice_subBox .voice_icon {
    width: 80px;
  }
  .voice_subBox .voice_desc {
    padding: 0.5em 1em 0.5em 0;
  }
  .voice_subBox:last-child {
    margin-bottom: 1.5em;
  }
  #main-contents .ouboform #form1 table #univ,
  #main-contents .ouboform #form1 table #gakubu {
    display: inline-block;
    width: 85%;
  }
}

@media not screen and (1) { .page-top { position: static; } }/* Opera10以上 */

