@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');

/* ===============================
フォント設定
=============================== */
:root {
  --font_noto_sans: 'Noto Sans JP', sans-serif;
  --font_noto_serif: 'Noto Serif JP', sans-serif;
  --font_libre: 'Libre Baskerville', serif;
}
.font_libre {
  font-family: 'Libre Baskerville', serif;
}
/* ===============================
レイアウト・基本
=============================== */
@media screen and (max-width: 599px) {
  #bag_page {
    width: calc(100% + 16px);
    margin: 0 -8px;
    padding-bottom: 0.5rem;
  }
}
#bag_page h2,
#bag_page h3{
  line-height: 1.8em!important;
  letter-spacing: 0.05em!important;
}
#bag_page p,
#bag_page p span {
  line-height: 2.2em!important;
  letter-spacing: 0.05em!important;
  font-family: var(--font_noto_sans)!important;
  font-weight: 400;
  font-size: 1.5rem;
}
#bag_page li {
  letter-spacing: 0.05em!important;
  font-family: var(--font_noto_sans)!important;
  font-weight: 400;
  font-size: 1.5rem;
}
@media screen and (max-width: 599px) {
  #bag_page h2,
  #bag_page h3 {
    line-height: 1.5em!important;
    letter-spacing: 0.02em!important;
  }
  #bag_page p,
  #bag_page p span,
  #bag_page li {
    letter-spacing: 0em!important;
    font-size: 1.4rem!important;
  }
}
/* ===============================
リンク設定
=============================== */
#bag_page a {
  text-decoration: none!important;
}
#bag_page a:hover {
  color: inherit!important;
}
/* ===============================
タイトル画像
=============================== */
.bag_title {
    width: 100%;
    height: 360px;
    background: url(https://morpho1995noij.itembox.design/item/bag/title.jpg) no-repeat center;
    padding: 0.4rem;
    margin-bottom: 5rem;
}
@media screen and (max-width: 599px) {
  .bag_title {
    height:300px;
    background: url(https://morpho1995noij.itembox.design/item/bag/title_sp.jpg) no-repeat center;
    margin-bottom: 3rem;
  }
}
.bag_title > div {
    border: solid 1px #FFF;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #FFF;
    padding-left: 5rem;
}
@media screen and (max-width: 599px) {
  .bag_title > div {
    padding-left: 2rem;
  }
}
.bag_title > div h2 {
    font-size: 3.2rem;
    text-shadow: 1px 1px 4px #000;
}
@media screen and (max-width: 599px) {
  .bag_title > div h2 {
    font-size: 2rem;
  }
}
#bag_page .bag_title > div p {
    text-shadow: 1px 1px 4px #000;
    font-family: var(--font_libre)!important;
}
/* ===============================
リード文
=============================== */
.bag_lead {
  width: 96%;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 599px) {
  .bag_lead {
    display: flex;
    flex-direction: column;
  }
}
.bag_lead_txt {
  width: 52%;
  border: solid 1px #CBCBCB;
  padding: 3rem 0 4rem;
  margin-top: 8rem;
}
@media screen and (max-width: 599px) {
  .bag_lead_txt {
    width: 100%;
    margin-top: 0;
    border: none;
    padding: 0;
    margin-bottom: 3rem;
  }
}
.bag_lead_txt h2 {
  font-size: 2.5rem;
  text-align: center;
}
.bag_lead_txt h2:after {
  content: '';
  display: block;
  width: 118px;
  height: 1px;
  background-color: #919191;
  margin: 1rem auto 2rem;
}
@media screen and (max-width: 599px) {
.bag_lead_txt h2 {
  font-size: 2.0rem;
}
.bag_lead_txt h2:after {
  margin: 1rem auto;
}
}
.bag_lead_txt p {
  padding: 0 6rem 0 4rem;
}
@media screen and (max-width: 599px) {
  .bag_lead_txt p {
    padding: 0;
  }
}
.bag_lead_img {
  position: absolute;
  width: 52%;
  top: -3rem;
  right: 0;
}
@media screen and (max-width: 599px) {
  .bag_lead_img {
    position: relative;
    width: 100%;
    top: auto;
    right: auto;
  }  
}
@media screen and (max-width: 899px) {
  .bag_lead_img img {
    object-fit: cover;
    width: 100%;
    height: 240px;
  }
}
.bag_lead_img:after {
  content: '';
  display: block;
  position: absolute;
  top: 0.4rem;
  right: 0.4rem;
  width: calc(100% - 0.8rem);
  height: calc(100% - 0.8rem);
  border: solid 1px #FFF;
}
/* ===============================
見出し
=============================== */
.ttl_bag_01 {
  font-size: 2.5rem;
  text-align: center;
}
.ttl_bag_01:after {
  content: '';
  display: block;
  width: 118px;
  height: 1px;
  background-color: #909090;
  margin: 1.6rem auto 3.6rem;
}
@media screen and (max-width: 599px) {
  .ttl_bag_01 {
    font-size: 2.0rem;
  }
  .ttl_bag_01:after {
    margin: 1rem auto 2.6rem;
  } 
}
/* ===============================
タイプ別で探す
=============================== */
.bag_type_wrap {
  width: 814px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto;
}
@media screen and (max-width: 1430px) {
  .bag_type_wrap {
    width: 100%;
  }
}
#bag_page .bag_type_wrap li {
  font-family: var(--font_noto_serif)!important;
}
@media screen and (max-width: 599px) {
  #bag_page .bag_type_wrap li {
    font-family: var(--font_noto_sans)!important;
    font-size: 1.2rem!important;
  }
}
.bag_type_wrap a {
  width: 32%;
  min-height: 255px;
  text-align: center;
  border: solid 1px #BBBBBB;
  margin-bottom: 2%;
  display: flex;
  flex-direction: column-reverse;
  padding-bottom: 2rem;
}
.bag_type_wrap a:hover {
  opacity: .7;
}
@media screen and (max-width: 599px) {
  #bag_page .bag_type_wrap a {
    min-height: 133px;
    padding-bottom: 0.6rem;
    font-size: 1.3rem!important;
  }
  .bag_type_wrap li br {
    display: none;
  }
}
.bag_type_wrap a:nth-child(1) {
  background: url(https://morpho1995noij.itembox.design/item/bag/type01.jpg) no-repeat center 2rem;
  background-size:  auto 177px;
}
.bag_type_wrap a:nth-child(2) {
  background: url(https://morpho1995noij.itembox.design/item/bag/type02.jpg) no-repeat center 2rem;
  background-size:  auto 177px;
}
.bag_type_wrap a:nth-child(3) {
  background: url(https://morpho1995noij.itembox.design/item/bag/type03.jpg) no-repeat center 2rem;
  background-size:  auto 177px;
}
.bag_type_wrap a:nth-child(4) {
  background: url(https://morpho1995noij.itembox.design/item/bag/type04.jpg) no-repeat center 2rem;
  background-size:  auto 177px;
}
.bag_type_wrap a:nth-child(5) {
  background: url(https://morpho1995noij.itembox.design/item/bag/type05.jpg) no-repeat center 2rem;
  background-size:  auto 177px;
}
.bag_type_wrap a:nth-child(6) {
  background: url(https://morpho1995noij.itembox.design/item/bag/type06.jpg) no-repeat center 2rem;
  background-size:  auto 177px;
}
@media screen and (max-width: 599px) {
  .bag_type_wrap a:nth-child(1) {
    background: url(https://morpho1995noij.itembox.design/item/bag/type01.jpg) no-repeat center 1rem;
    background-size:  auto 68px;
  }
  .bag_type_wrap a:nth-child(2) {
    background: url(https://morpho1995noij.itembox.design/item/bag/type02.jpg) no-repeat center 1rem;
    background-size:  auto 68px;
  }
  .bag_type_wrap a:nth-child(3) {
    background: url(https://morpho1995noij.itembox.design/item/bag/type03.jpg) no-repeat center 1rem;
    background-size:  auto 68px;
  }
  .bag_type_wrap a:nth-child(4) {
    background: url(https://morpho1995noij.itembox.design/item/bag/type04.jpg) no-repeat center 1rem;
    background-size:  auto 68px;
  }
  .bag_type_wrap a:nth-child(5) {
    background: url(https://morpho1995noij.itembox.design/item/bag/type05.jpg) no-repeat center 1rem;
    background-size:  auto 68px;
  }
  .bag_type_wrap a:nth-child(6) {
    background: url(https://morpho1995noij.itembox.design/item/bag/type06.jpg) no-repeat center 1rem;
    background-size:  auto 68px;
  }
}
/* ===============================
シリーズ別で探す
=============================== */
.bag_2col_wrap {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 599px) {
  .bag_2col_wrap {
    flex-direction: column-reverse;
  }
}
.bag_2col_wrap.bag_toujours,
.bag_2col_wrap.bag_ruga {
  flex-direction: row-reverse;
}
@media screen and (max-width: 599px) {
  .bag_2col_wrap.bag_toujours,
  .bag_2col_wrap.bag_ruga {
    flex-direction: column-reverse;
  }
}
.bag_2col_txt {
  width: 35%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 599px) {
  .bag_2col_txt {
    width: 100%;
  }
}
.bag_2col_txt h3 {
  font-size: 3.0rem;
  text-align: center;
  position: relative;
  margin-bottom: 5rem;
  z-index: 0;
}
@media screen and (max-width: 599px) {
  .bag_2col_txt h3 {
    font-size: 2.6rem;
    margin-bottom: 0rem;
  }
}
.bag_2col_txt h3 small {
  font-family: var(--font_noto_sans);
  position: absolute;
  display: block;
  font-size: 1.4rem;
  top: 4.6rem;
  right: -3rem;
}
.bag_2col_txt h3:after {
  content: '';
  display: block;
  width: 152px;
  height: 22px;
  position: absolute;
  top: 3rem;
  right: -2rem;
  z-index: -10;
}
.bag_toujours .bag_2col_txt h3:after {
  background-color: #FBF7C2;
}
.bag_lible .bag_2col_txt h3:after {
  background-color: #C1D8F8;
  width: 78px;
}
.bag_ruga .bag_2col_txt h3:after {
  background-color: #F3D8CF;
  width: 222px;
}
.bag_perla .bag_2col_txt h3:after {
  background-color: #D4F6C3;
  width: 148px;
}
@media screen and (max-width: 681px) {
  #bag_page .bag_ruga .bag_2col_txt h3 {
    line-height: 1.3!important;
  }
  .bag_ruga .bag_2col_txt h3:after {
    top: 6rem;
    width: 120px;
    right: 2rem;
  }
  .bag_ruga .bag_2col_txt h3 small {
    top: 9rem;
    right: 0rem;
  }
}
@media screen and (max-width: 599px) {
  .bag_2col_txt h3:after,
  .bag_ruga .bag_2col_txt h3:after {
    width: 100px;
    height: 20px;
    top: 2rem;
  }
  .bag_ruga .bag_2col_txt h3:after {
    width: 195px;
    right: -2rem;
  }
}
@media screen and (max-width: 599px) {
  .bag_2col_txt h3 small,
  .bag_ruga .bag_2col_txt h3 small {
    font-size: 1.2rem;
    position: relative;
    top: auto;
    right: auto;
  } 
  #bag_page .bag_ruga .bag_2col_txt h3 {
    line-height: 1.5em!important;
  }
}
#bag_page .bag_2col_txt p {
  text-align: center;
  font-size: 1.7rem;
  font-family: var(--font_noto_serif)!important;
}
@media screen and (max-width: 599px) {
  #bag_page .bag_2col_txt p {
    font-size: 1.5rem!important;
  }
}
.bag_2col_img {
  width: 63.09%;
}
@media screen and (max-width: 599px) {
  .bag_2col_img {
    width: 100%;
    margin-bottom: 2rem;
  }
}
/* ===============================
5カラム
=============================== */
.bag_5col_wrap {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 2rem auto;
}
.bag_5col_box {
  width: 18%;
  margin: 0 1%;
  text-align: center;
}
@media screen and (max-width: 599px) {
  .bag_5col_box {
    width: 48%;
    margin: 0 1% 3rem;
  }
}
.bag_5col_box img {
  margin-bottom: 2rem;
}
@media screen and (max-width: 599px) {
  .bag_5col_box img {
    margin-bottom: 1rem;
  }
}
#bag_page .bag_5col_box {
  font-family: var(--font_noto_sans)!important;
  font-size: 1.4rem;
}
.bag_5col_box p:before {
  content: '\0a5';
}
/* ===============================
view more ボタン
=============================== */
.bag_view_more{
  text-align: center;
  font-size: 1.6rem;
  position: relative;
  margin: 5rem auto 12rem;
}
@media screen and (max-width: 599px) {
  .bag_view_more{
    margin: -2rem auto 8rem;
  }
}
.bag_view_more span {
  display: inline-block;
  width: 25%;
  height: 1px;
  background-color: #000;
  position: absolute;
  left: 50%;
  margin-left: -12%;
  top: 44px;
  transition: 0.5s;
}
.bag_view_more span:after {
  content: "";
  display: block;
  width: 22px;
  height: 29px;
  border-right: 1px solid #000;
  transform: rotate(-45deg);
  transform-origin: right bottom;
  position: absolute;
  bottom: 1px;
  right: 1px;
}
.bag_view_more a {
  display: inline-block;
  width: 25%;
  font-family: var(--font_noto_serif)!important;
  text-decoration: none!important;
}
.bag_view_more a:hover {
  color: inherit!important;
}
.bag_view_more:hover span {
  left: 52%;
}
@media screen and (max-width: 899px) {
  .bag_view_more span {
    width: 40%;
    margin-left: -20%;
  }
  .bag_view_more a {
    width: 40%;
  }
}
@media screen and (max-width: 599px) {
  .bag_view_more{
    font-size: 16px;
  } 
  #bag_page .bag_view_more p {
    letter-spacing: 0.05em!important;
  } 
  .bag_view_more span {
    width: 70%;
    margin-left: -35%;
  }
  .bag_view_more a {
    width: 70%;
  }
}