@charset "utf-8";
/* CSS Document */

a{
    text-decoration: none;
    color: #000;
}

#wrapper{
    max-width: 1280px;
    margin: 10px auto;
}

#main{
    padding: 10px 0px;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

h2{
    border-bottom: 1px solid #000;
    text-align: center;
    font-weight: bold;
    font-size: 24px;
}

/**********　catalog　***********/

.grid_cta {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.grid_cta a{
    margin-bottom: 25px;
    text-decoration: none;
}

.item_cta {
  background: #fff;
  text-align: center;
}

.item_cta p{
    font-size: 14px;
    font-weight: 500;
    padding-top: none;
    padding-bottom: none;
    text-decoration: none;
    color: #000;
}

.form-button a{
    background-color: #00133A;
    color: #fff;
    padding: 5px;
    border-radius: 4px;
    box-shadow: 2px 2px 5px #ccc;
}


/****************************/

/********** カタログ請求フォーム **********/

/* レイアウト */
form {
  width: 100%;
  margin: 0 auto;
}

.form-row {
  display: block;
  align-items: center;
  padding: 20px;
  border-bottom: 1px solid #f2f4f5;
}

.form-row:last-child {
  border-bottom: none;
}

.form-label {
  display: block;
  align-items: center;
  width: 280px;
  margin: 18px 0px;
}

.form-label label {
  font-weight: bold;
}

.form-label span {
  margin-left: 10px;
  padding: 4px 6px;
  border-radius: 3px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  background-color: #166ab5;
}

.check-group{
    display: flex;
    flex-wrap: wrap; /* 子要素が親要素の幅を超えたら折り返す */
    gap: 5px; /* チェックボックス間の余白 */
    width: 76%;
}

.select{
    vertical-align: middle;
    border: 1px solid #E1E1E1;
    padding: 10px 4px;
}

.select #need{
    width: 20px;
    margin: 0px 4px;
}

/* フォームパーツのデザイン */
input, textarea {
  background-color: #f2f4f5;
  border: none;
  border-radius: 3px;
  padding: 4px 10px;
  font-size: 14px;
  color: #333;
  flex-grow: 1;
  width: 300px;
}

input::placeholder,
textarea::placeholder {
  color: #999;
  font-size: 14px;
}

input[type="checkbox"]{
    background-color: none;
    width: 30px;
}

button {
  cursor: pointer;
  padding: 10px 35px;
  border: none;
  border-radius: 3px;
  color: #fff;
  font-weight: bold;
  background-color: #166ab5;
}

@media screen and (min-width:890px){
    
.form-row {
  display: flex;
  align-items: center;
  padding: 20px;
  border-bottom: 1px solid #f2f4f5;
}
    
.form-label {
  display: flex;
  align-items: center;
  width: 250px;
}
    
.check-group{
  display: flex;
  justify-content: space-evenly;
}
    
.select{
  width: calc(100% / 4);
}
    
input, textarea {
  background-color: #f2f4f5;
  border: none;
  border-radius: 3px;
  padding: 4px 10px;
  font-size: 14px;
  color: #333;
  flex-grow: 1;
}

input::placeholder,
textarea::placeholder {
  color: #999;
  font-size: 14px;
}
    
}



/**************************************/
