@charset "UTF-8";

/* --------------------------------
  reset
-------------------------------- */
*, *::before, *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
ul {
  list-style: none;
}
a {
  color: inherit;
  text-decoration: none;
}
img {
  max-width: 100%;
  vertical-align: bottom;
}
html {
  font-size: 100%;
}

/* --------------------------------
  body
-------------------------------- */
body{
display: flex;
  flex-direction: column;
  min-height: 100vh; /* 画面全体の高さを確保 */
  margin: 0;
}


/* --------------------------------
  header
-------------------------------- */
.header {
  padding: 20px 0;
  background-color: #8be5ec;
  text-align: center;
}
  .header h1 {
    font-size: 1.5rem;
  }
  .header h1::first-line {
    font-size: 1.125rem;
  }
  .btn {
    display: inline-block;
    width: 100%;
    margin-top: 10px;
    border: #fff;
  }
  .btn a {
    padding: 6px 20px;
    border: 2px solid #518f8e;
    color: #518f8e;
    font-weight: 700;
    transition: all .3s;
  }
  .btn a:hover {
    padding: 6px 20px;
    background-color: #fff;
    color: #518f8e;
  }
  
  @media screen and (max-width: 767px) {
    .header h1 {
      white-space: pre-line;
    }
  }

/* --------------------------------
  footer
-------------------------------- */
.footer {
  padding: 10px;
  background-color: #a4ebf0;
  text-align: center;
}

/* --------------------------------
  main
-------------------------------- */


.main {
    width: 100%;
    height: 70vh;
    background-image: -webkit-linear-gradient(to top, #fed6e3 0%, #a8edea 100%);
        background-image: linear-gradient(to top, #fed6e3 0%, #a8edea 100%);

    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 400;
    font-style: normal;
    flex: 1;
}


/* 結果を非表示にする */
#results {
    display: none;
}

.container {
    max-width: 280px;
    background-color: #ffffff70;
    backdrop-filter: blur(10px);
    padding: 40px;
    border-radius: 10px;
}


#city-input {
    width: 180px;
    border: 1px solid #000;
    padding: 5px 10px;
    margin: 10px;
}


/* 基本のボタンの見た目 */
.weather-btn {
  background-color: #007bff;
  color: white;
  padding: 10px 20px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background-color 0.3s ease; /* 変化を滑らかにする */
}

/* ホバー時の設定 */
.weather-btn:hover {
  background-color: #68adf7; /* 少し濃い青にする */
}

#results-country,
#results-city{
    line-height: 2;
}

#results-temp {
    font-size: 25px;
    padding: 20px;
    >span{
        font-size: 0.6em;
    }
}

#results-icon {
    width: 150px;
    height: 150px;
}
