/* 三ケ島地区第八区自治会 - 全ページ共通スマートフォン対応 */
html{width:100%;max-width:100%;overflow-x:hidden}
body{width:100%;max-width:100%;overflow-x:hidden}
img{max-width:100%;height:auto}
video,iframe{max-width:100%}
input,select,textarea,button{max-width:100%;box-sizing:border-box}
textarea{max-width:100%}

@media (max-width:768px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  body{padding-left:0!important;padding-right:0!important}
  .site-wrap,.wrap,.page-wrap,.box,.card,.edit-box,.video-page,.pdf-page,
  .page-container,.container,.main,.content,.panel,.form-box,.login-box{
    width:calc(100% - 20px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
  }

  .site-header,header{padding:20px 12px!important}
  .site-header h1,header h1{font-size:24px!important;line-height:1.35!important}
  .site-header p{font-size:14px!important}
  .site-nav{padding:8px 10px!important}
  .site-nav-inner{gap:12px!important}
  .site-nav a{font-size:14px!important}

  main{width:100%!important;box-sizing:border-box!important}
  .card,.box,.edit-box{padding:16px!important;border-radius:12px!important}
  .row,.form-row{width:100%!important;box-sizing:border-box!important}
  .grid,.image-grid{grid-template-columns:1fr!important}
  .tile{width:100%!important;box-sizing:border-box!important}
  .image-card,.image-box{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
  .image-card img,.image-box img,.img-now{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
  }

  input[type=text],input[type=date],input[type=number],input[type=email],
  input[type=tel],input[type=password],input[type=url],select,textarea{
    width:100%!important;
    max-width:100%!important;
    font-size:16px!important;
  }

  .btn,button,.upload-btn,.delete-btn,.caption-btn{
    max-width:100%!important;
    min-height:44px!important;
    padding:10px 14px!important;
    box-sizing:border-box!important;
  }

  .back{margin-top:16px!important}
  .site-footer,footer{padding:20px 12px!important}

  .table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  table{max-width:none!important}
  .table-wrap table{min-width:650px}
  body>table{display:block!important;width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}

  .video-page,.video-card,.pdf-page{padding:16px!important}
  .video-item a{font-size:16px!important;line-height:1.5!important}

  .image-grid{gap:12px!important}
  .image-card{margin-bottom:14px!important}
  .image-caption{font-size:14px!important;line-height:1.6!important}

  .action-area,.button-area,.actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .action-area .btn,.button-area .btn,.actions .btn{margin:0!important}

  h1{font-size:24px!important;line-height:1.4!important}
  h2{font-size:20px!important;line-height:1.45!important}
  h3{font-size:18px!important}
  p{overflow-wrap:anywhere}
  a{overflow-wrap:anywhere}
}
