[style/css/style.css]
html {
     overflow-x: hidden;
     }

body ol {
        padding: 0;
        }

/*パンくずリスト*/
.breadcrumb {
  margin: 0;
  padding-left: 10px;
  list-style: none;
  border-top: solid #efefef 1px;
}

.breadcrumb li {
  display: inline-block;/*横に並ぶように*/
  list-style: none;
  font-weight: bold;/*太字*/
  border: none;
  text-align: center;
  width: auto !important;
  margin: 30px 0px;
}

.breadcrumb li:after {
  /* ▶を表示*/
  content: '>';
  padding: 0 0.2em;
  color: #dcdcdc;
}

.breadcrumb li:last-child:after {
  color: transparent;
}

.breadcrumb li a {
  display: inline-block;
  padding: 0.4em 12px;
  border-radius: 2px;
  text-decoration: none;
  color: #222222;
  background: #ffffff;
  font-size: 18px;
}

.breadcrumb li a:hover {
                       background: #efefef;
                       cursor: pointer;
                       }

/* 480px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 480px) {
.breadcrumb li a {
                 font-size: 16px;
                 }

.breadcrumb {
            padding-left: 0;
            }
}

@media screen and (max-width: 414px) {
.breadcrumb {
            padding-left: 36px;
            }

.breadcrumb li a {
                  padding: 0;
                  }
}


/*挿絵カテゴリ*/
.categolira {
            position: relative;
            text-align: center;
            margin: 0 auto;
            padding: 0px 0px 80px;
            width: 70%;
            height: auto;
            }

.back img {
          width: 100%;
          height: auto;
          }

.tepu {
      position: absolute;
      top: 65px;
      left: 65px;
      }

.ja {
    position: absolute;/*重ねたい子要素にabsolute*/
    text-align: left;
    -ms-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
    -webkit-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
    color: #FFFFFF;
    margin: 0!important;/*文字がずれている場合や*/
    padding: 0!important;/*文字が折り返される場合*/
    top: 115px;
    left: 200px;
    }

.ja h2{
      font-size: 38px;
      }

.en {
    position: absolute;/*重ねたい子要素にabsolute*/
    text-align: left;
    -ms-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
    -webkit-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
    color: #FFFFFF;
    margin: 0!important;/*文字がずれている場合や*/
    padding: 0!important;/*文字が折り返される場合*/
    top: 117px;
    left: 370px;
    }

.en h2 {
       font-family: "Herr Von Muellerhoff", cursive;
       font-weight: 400;
       font-style: normal;
       font-size: 40px;
       }

.container {
      display: flex;
      flex-wrap: wrap; /* flexアイテムを折り返す（複数行に配置する） */
      position: absolute;/*重ねたい子要素にabsolute*/
      top: 260px;
      left: 0;
      right: 0;
      width: 70%;
      height: auto;
      margin: 0 auto;
      justify-content: space-between;
      row-gap: 60px;
      }

.column {
      width: calc(100%/3 - 50px);
      height: auto;
      display: flex;
      flex-direction: column;
      border: 1px solid #transparent;
      box-sizing: border-box; /* ボックスモデルを維持するために必要なスタイル */
      }

.last {
      width: 250px;
      justify-content: flex-end;
      }

.text {
      text-align: left;
      }

.text p {
        font-size: 18px;
        margin: 10px 0;
        }

.column-img img {
                width:100%;
                height:auto;
                }

.column-img:hover {
                  filter: brightness(0.9);
                  }

.column h3{
           background: #ffffff;
           line-height: 2;
           display: inline-block;
           padding: 0px 20px;
           }

.mark {
      text-align: left;
      }


/* 2560px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 2560px) {
.back img {
          height: 1400px;
          }
}

/* 1920px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 1920px) {
.back {
      height: 1140px;
      }

.back img {
          height: 100%;
          }
}

/* 1900px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 1900px) {
.back {
      height: auto;
      }

.back img {
          height: auto;
          }
}

/* 1600px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 1600px) {
.container {
           row-gap: 40px;
           top: 250px;
           }

.back img {
          height: 950px;
          }
}

/* 1440px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 1440px) {    
.back img {
          height: 920px;
          }
}

/* 1284px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 1284px) {
.back img {
          height: 820px;
          }

.tepu img {
          width: 80%;
          height: auto;
          }

.tepu {
      top: 60px;
      left: 30px;
      }

.ja {
    top: 100px;
    left: 170px;
    }

.ja h2{
      font-size: 30px;
      }

.en {
    top: 102px;
    left: 310px;
    }

.title h2 {
          font-size: 26px;
          }

.title {
        top: 195px;
        left: 120px;
        }

.container {
           top: 200px;
           width: 73%;
           height: auto;
           }

.column {
      width: calc(100%/3 - 40px);
      }

.last {
      width: 250px;
      }
}

/* 1242px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 1242px) {
.column h3{
           font-size: 16px;
           }

.back img {
          height: 800px;
          }

.container {
           top: 210px;
           }

.text p {
        font-size: 16px;
        margin: 6px 0;
        }

.last {
      width: 200px;
      }
}

/* 1080px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 1080px) {  
.back img {
          height: 750px;
          }
}

/* 834px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 834px) {
.categolira {
            width: 100%;
            height: auto;
            }

.back img {
          height: 800px;
          }
}

/* 768px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 768px) {
.column {
        width: calc(100%/3 - 30px);
        }

.last {
      width: 200px;
      }
}

/* 680px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 680px) {
.last {
      width: 190px;
      }
}

/* 640px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 640px) {
.back img {
          height: 700px;
          }

.container {
           top: 200px;
           }

.ja h2{
      font-size: 28px;
      }
}

/* 480px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 480px) {
.categolira {
            padding-bottom: 0;
            }

.back img {
          height: 650px;
          }
  
.column {
        width: calc(100%/2 - 10px);
        }

.last {
      width: 190px;
      }

.column h3 {
           font-size: 15px;
           }

.container {
           row-gap: 20px;
           width: 85%;
           height: auto;
           top: 190px;
           }

.text p {
        font-size: 15px;
        margin: 4px 0;
        }

.tepu {
      left: -15px;
      }

.ja {
    left: 125px;
    }

.en {
    left: 265px;
    }

.title {
        left: 72px;
        }
}

/* 440px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 440px) {
.column h3 {
           padding: 0px 10px;
           }
}

/* 414px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 414px) {
.back img {
          height: 600px;
          }
}

/* 395px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 395px) {
.container {
           width: 90%;
           height: auto;
           }

.column h3{
           font-size: 14px;
           }
}

/* 375px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 375px) {
.back img {
          height: 580px;
          }
}
