@charset "UTF-8";
/* =====
 * LAYOUT :: ALL DEVICE
=================================================================== */
#Billboard {position: relative;}
#Billboard h2 {font-size: 200%;font-weight: normal;font-family: 'classico-urw', serif;color: #fff;letter-spacing: 0.3em;line-height: 1;text-align: center;}
#Billboard h2 + p {margin-top: 2em;font-size: 112.5%;font-family: "classico-urw", "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ 明朝", serif;color: #fff;letter-spacing: 0.3em;line-height: 1;text-align: center;}
#Billboard .container {position: relative;z-index: 2;width: calc(100% - 4em);max-width: 1260px;padding: 5em 2em 3em;margin-left: auto;margin-right: auto;box-sizing: border-box;}
#Billboard::after {content: "";position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: transparent url("../img/common/bg_05.webp") no-repeat 50% calc(50% + 1.5em) / 100% calc(100% + 3em);}
#Main .block-structure-01 .grid-list {padding: 2em 0;margin: 0 -1em;}
#Main .block-structure-01 .grid-list > div {margin: 1em;}
#Main .block-structure-01 .grid-list > div figure img {margin: 0 auto;}
#Main .block-structure-01 .grid-list > div:not(:first-child) figure {padding-bottom: 1em;border: 1px solid #dcdcdc;box-sizing: border-box;}
#Main .block-structure-01 .grid-list > div h5 {position: relative;border-bottom: 1px solid #dcdcdc;margin: 0 0 0.5em;padding: 0.75em 0 0.5em 0;font-weight: normal;font-size: 100%;font-family: "classico-urw", "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ 明朝", serif;line-height: 1.5;color: var(--dark-beige);}
#Main .block-structure-01 .grid-list > div h5[data-icon] {padding-left: 1.8em;}
#Main .block-structure-01 .grid-list > div h5[data-icon]::before {content: attr(data-icon)"";transform: translateY(-50%);position: absolute;top: 50%;left: 0;width: 1.5em;background: var(--grad-02);display: block;text-align: center;color: #fff;line-height: 1.5;font-family: 'classico-urw', serif;font-weight: normal;z-index: 2;}
#Main .block-structure-01 .grid-list > div h5 + p {font-size: 87.5%;padding: 0 0 1em;}
#Main .block-structure-01 .grid-list > div h5 + p small {display: block;margin-top: 0.5em;font-size: 75%;line-height: 1.5;letter-spacing: 0;}
/* =====
* LAYOUT :: PC
=================================================================== */
@media only screen and (min-width:769px) {
  #Main .block-structure-01 .grid-list > div {width: calc(50% - 2em);}
  #Main .block-structure-01 .grid-list > div:nth-child(4),
  #Main .block-structure-01 .grid-list > div:nth-child(1) {width: calc(66.66% - 2em);}
  #Main .block-structure-01 .grid-list > div:nth-child(3),
  #Main .block-structure-01 .grid-list > div:nth-child(2) {width: calc(33.33% - 2em);}
  #Main .block-structure-01 .grid-list > div:nth-child(1) figure img {max-width: 786px;}
  #Main .block-structure-01 .grid-list > div:nth-child(3) figure img,
  #Main .block-structure-01 .grid-list > div:nth-child(2) figure img {max-width: 375px;}
  #Main .block-structure-01 .grid-list > div:nth-child(4) figure img {max-width: 650px;}
}
/* =====
* LAYOUT :: TAB
=================================================================== */
@media only screen and (min-width: 769px) and (max-width: 1260px) {}
/* =====
* LAYOUT :: SP
=================================================================== */
@media only screen and (max-width:768px) {
  #Billboard h2 + p {margin-top: 0.5em;}
  #Billboard .container {width: 100%;padding: 5em 0 2em;}
  #Billboard::after {background-position: 50%;background-size: auto 100%;}
  #Main .block-structure-01 .grid-list {padding: 0;}
}
@media only screen and (max-width:768px) and (orientation: landscape) {}
@media only screen and (max-width: 640px) {}
@media only screen and (max-width: 480px) {}