@charset "utf-8";

html {
  font-size:12px;
  line-height:1.6;
}

body {
  position:relative;
  -webkit-appearance: none;
  -webkit-text-size-adjust: 100%;
}

.outer-block {
  min-width: 320px;
}

.inner-block {
  padding: 0 20px;
  width: auto;
}

#wrapper {
  min-width:320px;
  overflow: hidden;
}

input, select, textarea {
  font-size: 16px;
  font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",'メイリオ',Meiryo,Osaka,sans-serif;
  vertical-align:middle; 
}

.pc {
  display:none !important;
}
.pc-ib {
  display: none !important;
}

.sp {
  display:block !important;
}
.sp-ib {
  display: inline-block !important;
}

.aco-body {
  display: none;
}


/*------------------------------------------------------------------------------
  header
------------------------------------------------------------------------------*/
#header{
  padding:25px 0 35px;
  z-index:300;
  position:relative;
}

#header .inner-block{
  padding:0 10px;
}

#header .logo img{
  width:170px;
}

#header .logo_txt{
  font-size:10px;
}

.navi{
  display:none;
  width:150px;
  margin:auto;
  position:absolute;
  left:0;
  right:0;
  top:90px;
}

.navi li{
  float:none;
  margin:0 0 40px;
  display:block;
}

.navi li a{
  display:inline-block;
}

.navi .close_box{
  text-align:center;
}

.navi .close_box img{
  width:29px;
}

.menu{
  width:19px;
  height:16px;
  background:url(../img/common/menu.png) no-repeat center center;
  background-size:100% 100%;
  position:absolute;
  right:20px;
  top:10px;
  cursor:pointer;
}

.menu-bg{
  position:fixed;
  left:0;
  width:100%;
  height:100%;
  top:0;
  background:rgba(255,255,255,0.9);
  z-index:200;
  display:none;
}


.open .menu{
  background-image:url(../img/common/close.png);
  background-size:16px 16px;
}

/*------------------------------------------------------------------------------
  footer
------------------------------------------------------------------------------*/
#footer{
  padding:45px 0;
  text-align:center;
  margin-top:60px;
  position:relative;
}

#footer .logo{
  margin:0 0 8px;
}
#footer .logo img{
  width:114px;
}

#footer .copy{
  font-size:10px;
}

.pagetop{
  position:absolute;
  left:0;
  right:0;
  top:-56px;
  margin:auto;
  width:105px;
}

.pagetop a{
  height:22px;
  line-height:22px;
  font-size:11px;
}

.pagetop a:after{
  top:-4px;
  border-width: 0 4px 4px 4px;
}

/*------------------------------------------------------------------------------
  content
------------------------------------------------------------------------------*/
.mv{
  margin:0 0 30px;
}

.mv .mv_txt{
  width:200px;
  top:-15px;
  left:auto;
  right:0;
}

.mv .mv_txt img{
  width:100%;
}

.content_block{
  margin:0 0 35px;
  position:relative;
}

.tl_style01 img{
  height:42px;
}

.sub_tl{
  margin:5px 0 15px;
  font-size:10px;
}

.news_block {
  margin-bottom:-20px;
}

.news_block .box{
  float:left;
  margin:0 0 20px!important;
  width:46%;
}

.news_block .box:nth-child(2n){
  float:right;
}

.news_block .box:nth-child(2n+1){
  clear:both!Important;
}

.news_block .box .img{
  border-radius:10px;
}

.news_block .box .img .hover_box{
  border-radius:10px;
  display:none;
}

.news_block .box .day{
  font-size:10px;
  margin:8px 0 4px;
}

.news_block .box .txt{
  font-size:10px;
}

.top_set .cell02,
.top_set .cell01{
  width:auto;
  float:none;
}

.top_set .cell01 .sm{
  font-size:10px;
}

.tl_style02{
  margin:20px 0 20px;
}

.tl_style02 span{
  font-size:13px;
}

.top_set .img{
  margin:20px 0;
}

/*------------------------------------------------------------------------------
  news
------------------------------------------------------------------------------*/
.content_wrap .right_block,
.content_wrap .left_block{
  width:auto;
  float:none;
}

.content_wrap .right_block{
  margin-top:20px;
}

.news_block.news_block01 .box:nth-child(3n+1){
  clear:none;
}

.paging a,
.paging span{
  width:35px;
  height:35px;
  line-height:35px;
  font-size:12px;
  margin:0 2px 2px;
}

.tl_style03{
  font-size:12px;
  padding:10px;
}

.archive_list li a{
  padding:10px;
  font-size:12px;
}





.news_body{
  width:auto;
}

.news_body h2{
  font-size:16px;
  margin:0 0 15px;
  line-height:1.4;
}

.news_body h3{
  margin:15px 0 20px;
  font-size:13px;
}

.news_body p{
  margin:20px 0;
}

.news_body img{
  width:100%;
}

.news_body img.bt_2{
  width:45%;
}

.news_body .imgset img:nth-child(2n),
.news_body .imgset img{
  float:none;
}

.paging01{
  margin-top:40px;
}

.paging01 .prev a,
.paging01 .next a{
  max-width:100%;
  width:100%;
  padding:10px;
  margin:0 0 10px;
  float:none;
}

.paging01 .prev a{
  padding-left:40px;
}

.paging01 .next a{
  padding-right:40px;
}


.paging01 .back{
  margin-top:30px;
  width:auto;
  line-height:40px;
  height:40px;
  font-size:12px;
}



.contact_block p{
  font-size:14px;
  width:auto;
}

.tablelist{
  width:auto;
  margin-top:20px;
}

.tablelist li{
  display:block;
  margin:0 0 20px;
}

.tablelist li:last-child{
  margin:0;
}

.tablelist .cell01,
.tablelist .cell02{
  font-size:13px;
  padding:0 0 0;
  display:block;
}

.tablelist .cell01{
  margin:0 0 10px;
  width:auto;
}

.tablelist .cell01 span{
  font-size:10px;
}

input[type="text"],
input[type="email"],
textarea{
  font-size:16px;
  width:230px;
}

input[type="email"]{
  width:300px;
}

textarea{
  width:100%;
  height:150px;
}

.sbimit_wap{
  margin-top:20px;
}

.submit{
  width:100%;
  height:44px;
  line-height:44px;
  font-size:16px;
  background-size:8px 19px;
  background-position: 95% center;
  margin:0;
}

.submit.submit01{
  margin-top:20px;
}
/*------------------------------------------------------------------------------
  clearfix
------------------------------------------------------------------------------*/

.description-list:after{
  clear: both;
  content: "";
  display: block;
  height: 1px;
  font-size: 0;
  visibility: hidden;
}
