/* 共通 css v2 */

/* body>maincontainer[header/main/footer] */

body {
  margin: 0;
  /* min-height: 100vh; */
  /* 中央の1000pxだけを黒(#000)にし、それ以外（左右）を白(#fff)にする背景指定   */
  background: linear-gradient(
    to right, 
    #fff calc(50% - 500px), 
    #000 calc(50% - 500px), 
    #000 calc(50% + 500px), 
    #fff calc(50% + 500px)
  );
}

/*main 1000px*/
.maincontainer {
  width: 100%;
  max-width: 1000px;
  margin-inline: auto;
  border: 1px solid black;
  border-bottom: 1px dashed black;
  background-color: #fff;
  box-sizing: border-box; /* サイズ計算を直感的にする（ボーダー分を幅に含める） */
}

/* --header area-- */
#logoarea {
  background-color: #000;
}
#main{
  min-height: 100vh;
  padding: 0 20px;
}
.textr{  background-color: #000;}
.tc-fff{color:#fff;text-align: right;}
.grid350px1fr{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(350px, 100%), 1fr));
    align-items: center;
    padding: 10px 0;
    gap: 15px;
}
.grid1fr350px{
    display: grid;
    grid-template-columns: minmax(min(400px, 100%), 1.5fr) minmax(min(150px, 100%), 0.5fr);
    align-items: center;
    padding: 10px 0;
    gap: 15px;
}
.header2 {
    display: grid;
    grid-template-columns: 1fr 90px;
    gap: 15px; 
    align-items: center; 
}
.twitter-btn {
      display: inline-flex;
      align-items: center;
      background-color: #000; /* 黒背景 */
      color: #fff;
      text-decoration: none;
      font-size: 0.8em;
      padding: 1px 10px;
      border-radius: 9999px; /* 丸み（カプセル型） */
      border: 1px solid #444; /* 境界線 */
      transition: all 0.2s ease;
      cursor: pointer;
      margin-right: 10px; 
}
.textrigtht{
    text-align: right;
    /*border: 1px solid red;*/
}
.footer1{
   background-color: #000;

}
.footer2{
   background-color: #000;
   text-align: center;
}
.footer{
   background-color: #000;
   display: grid;
    grid-template-columns: 90px 1fr;
    gap: 15px; 
    align-items: center; 
}