@charset "utf-8";
/*
Theme Name: OOLJEE
Theme URI: https://ooljee-works.mom/
Description: OOLJEEオリジナルテーマ
Version: 1.0.0
*/

/* maivisual -----------------*/
.mainvisual { position: relative; margin-bottom: 40px; margin-top: -55px;}
.mainvisual-sp { display: none;}
.mainvisual__copy { position: absolute; top: 100px; left: 50%; transform: translateX(-50%); width: 17%; height: auto;}

/* works ---------------------*/
.works { display: flex; gap: 50px; position: relative; padding-bottom: 80px; padding-right: 50px;}
.works__img { position: relative; width: 57%; height: 100%; margin-left: -50px; aspect-ratio: 1 / 1;}
.works__img img { object-fit: cover; border-radius: 50%;}
.works__img::before { content: ""; display: block; background-image: url("../img/works_copy.png"); width: 13.3%; height: 30%; position: absolute; top: 9%; right: 10%; background-size: contain; background-repeat: no-repeat;}
.works__img::after { content: url(""); display: block; background-image: url("../img/works_deco01.png"); background-size: contain; background-repeat: no-repeat; position: absolute; bottom: -120px; left: 95%; transform: translateX(-45%); width: 66%; height: 66%; z-index: -1;}
.works__text { margin-top: 7%; width: 42.5%;}
.works__text-title { margin-bottom: 40px; font-size: 3.25em;}
.works__text-intro { font-family: 'Noto Sans JP', sans-serif; margin-bottom: 40px;}
.works__link { position: relative;}
.works__link::before { content: ""; display: block; background-image: url("../img/works_deco02.png"); background-repeat: no-repeat; background-size: contain; position: absolute; top: -170px; right:50px; width: 40%; height: 130%;}
.works__link-btn { border: 0.5px solid #333; margin-bottom: 25px; position: relative; background-color: #fff;}
.works__link-btn:last-of-type { margin-bottom: 0;}
.works__link-btn::after { content: ""; display: block; background-image: url("../img/btn_arrow.png"); background-size: contain; position: absolute; top: 50%; right: 30px; transform: translateY(-50%); width: 16px; height: 14px;}
.works__link-btn:hover { border: 0.5px solid #d2d61a; background-color: #d2d61a;}
.works__link-btn a { display: block; padding: 30px 40px; font-size: 1.125em;}

/* news ---------------------*/
.news { margin-bottom: 150px; padding: 0 50px;}
.news__title { font-size: 2.0em; text-align: center; margin-bottom: 60px;}
.news__title span { font-size: 0.875rem; margin-top: 15px; display: block;}
.news__list { display: flex; flex-wrap: wrap; width: 71%; min-width: 960px; margin: 0 auto; position: relative;}
/* .news__list::before { content: ""; display: block; background-image: url("../img/news_deco.png"); background-size: contain; position: absolute; top: -110px; left: -60px; width: 120px; height: 130px;} */
.news__list-item { width: 25%; border: 0.5px solid #000; border-right: none;}
.news__list-item a { padding: 25px 30px;}
.news__list-item:last-of-type { border-right: 0.5px solid #000;}
.news__list-item-date { font-size: 0.875em; color: #828282; margin-bottom: 10px; display: block;}
.news__list-item-title { font-size: 1.125em; line-height: 1.3; margin-bottom: 15px;}
.news__list-item-text { font-size: 0.875em; line-height: 1.4; color: #666;}

/* gift ---------------------*/
.gift { display: flex; padding: 70px 100px; background-color: #f2efea; margin-bottom: 16%; position: relative;}
.gift__text { width: 35.5%;}
.gift__text-title { font-size: 2.75em; margin-bottom: 40px;}
.gift__text-intro { margin-bottom: 20%;}
.gift__link-btn { border: 0.5px solid #333; position: relative; background-color: #fff;}
.gift__link-btn::after { content: ""; display: block; background-image: url("../img/btn_arrow.png"); background-size: contain; position: absolute; top: 50%; right: 30px; transform: translateY(-50%); width: 16px; height: 14px;}
.gift__link-btn:hover { border: 0.5px solid #d2d61a; background-color: #d2d61a;}
.gift__link-btn a { display: block; padding: 30px 40px; font-size: 1.125em;}
.gift__img { position: absolute; top: -50px; left: 70%; transform: translateX(-50%); width: 55%; max-width: 900px; aspect-ratio: 1 / 1;}
.gift__img img { object-fit: cover; border-radius: 50%;}

/* about --------------------*/
.about { text-align: center;}
.about__copy { font-family: 'Noto serif JP', serif; font-size: 3.25em; margin-bottom: 40px;}
.about__intro { width: 630px; margin: 0 auto; margin-bottom: 70px;}
.about__intro-br { display: none;}
.about__bg { height: 100vh; position: relative;}
.about__bg img { object-fit: cover;}
.about__title { font-size: 10.5em; position: absolute; top: -60px; left: 50%; transform: translateX(-50%); width: 100%; color: #769236;}
.about__link { position: absolute; bottom: 80px; left: 50%; transform: translateX(-50%);}
.about__link-btn { border: 0.5px solid #333; margin-bottom: 25px; position: relative; background-color: #fff; width: 590px;}
.about__link-btn:last-of-type { margin-bottom: 0;}
.about__link-btn::after { content: ""; display: block; background-image: url("../img/btn_icon01.png"); background-size: contain; position: absolute; top: 50%; right: 50px; transform: translateY(-50%); width: 20px; height: 18px; background-repeat: no-repeat; background-position: center;}
.about__link-btn:last-of-type::after { background-image: url("../img/btn_icon02.png");}
.about__link-btn:hover { border: 0.5px solid #d2d61a; background-color: #d2d61a;}
.about__link-btn a { display: block; padding: 30px 40px; font-size: 1.125em;}

/* 各ページ ---------------------*/
.page-contents { padding: 0 80px;}
.page-top { margin-bottom: 130px;}
.page-top__intro { width: 100%;}
.page-top__intro img { width: 14%; height: 40%; margin-bottom: 40px; object-position: left top;}
.page-top__intro-head { margin-bottom: 20px;}
.page-top__intro-head-eng { font-size: 4.5em; line-height: 1.0em; margin-bottom: 40px; letter-spacing: 0.05em;}
.page-top__intro-description { color: #666; margin-left: 10px; font-size: 0.875em; width: 55%;}
.page-top__img { width: 35%; max-width: 400px; float: right; margin-top: -18%; aspect-ratio: 1 / 1;}
.page-top__img img { border-radius: 50%;}
.page-top__img02 { width: 35%; max-width: 320px; float: right; margin-top: -180px;}
.page-top__img03 { width: 35%; max-width: 320px; float: right; margin-top: -100px;}

.page-feature01 { margin-bottom: 100px;}
.page-feature01-width { margin: -80px; margin-bottom: 0;}
.page-feature01__intro { width: 50%; min-width: 600px; margin-bottom: 35px;}
.page-feature01__intro-head { margin-bottom: 30px;}
.page-feature01__intro-description { color: #666; margin-left: 10px; font-size: 0.875em;}
.page-feature01__img { width: 70%;}
.page-feature01-sp { display: none;}

.page-feature02 { display: flex; flex-direction: row-reverse; justify-content: space-between; gap: 50px; margin-bottom: 100px;}
.page-feature02-reverse { flex-direction: row;}
.page-feature02-margin { margin-bottom: 100px;}
.page-feature02__img { width: 31%;}
.page-feature02__list { width: 47%;}
.page-feature02__list-item { padding: 50px 0; border-top: 0.5px dashed #000;}
.page-feature02__list-item:last-of-type { border-bottom: 0.5px dashed #000;}
.page-feature02__list .bottom { padding-bottom: 65px;}
.page-feature02__list-item-topic { padding: 18px 15px 15px; width: 90%; max-width: 340px; text-align: center; background-color: #4e6938; color: #fff; line-height: 1.0em; border-radius: 8px; font-size: 1.125em; margin: -78px auto 20px; position: relative;}
.page-feature02__list-item-topic::before { content: "Point!"; position: absolute; top: 0; left: -55px; color: #333; font-family: 'Noto Sans JP', sans-serif; font-size: 0.75em;}
.page-feature02__list-item-head { margin-bottom: 15px;}
.page-feature02__list-item-description { color: #666; font-size: 0.875em;}
.page-feature02__list-head { margin-bottom: 20px;}
.page-feature02__list-graphic { padding: 11% 15%; background-color: #f0ede8;}

.page-feature03 { display: flex; justify-content: space-between; gap:50px; margin-bottom: 100px;}
.page-feature03__info { width: 25%; min-width: 220px;}
.page-feature03__info-title { margin-bottom: 15px; color: #666; font-family: 'Noto Sans JP', sans-serif;}
.page-feature03__info-text { font-family: 'Noto Sans JP', sans-serif; font-size: 0.875em; color: #666; margin-bottom: 30px;}
.page-feature03__info-text span { display: flex; align-items: center; line-height: 2.0em; color: #666;}
.page-feature03__info-text span a { color: #666; text-decoration: underline;}
.page-feature03__info-text p, .page-feature03__info-text th, .page-feature03__info-text td { color: #666; line-height: 2.0em;}
.page-feature03__info-text th { padding-right: 30px;}
.page-feature03__img { width: 70%;}

.page-gift { margin-bottom: 100px;}
.page-gift__title { font-size: 2.0em; text-align: center; margin-bottom: 50px;}
.page-gift__title span { font-size: 0.875rem; margin-top: 15px; display: block;}
.page-gift__list { display: flex; flex-wrap: wrap; gap: 40px; margin-bottom: 50px;}
.page-gift__list-margin { margin-bottom: 50px;}
.page-gift__list-item { width: calc((100% - 80px) / 3);}
.page-gift__list-item a { aspect-ratio: 1 / 1;}
.page-gift__list-item img { object-fit: cover;}
.page-gift__link-btn { border: 0.5px solid #333; position: relative; background-color: #fff; width: 100%; max-width: 590px; margin: 0 auto;}
.page-gift__link-btn::after { content: ""; display: block; background-image: url("../img/btn_arrow.png"); background-size: contain; position: absolute; top: 50%; right: 30px; transform: translateY(-50%); width: 16px; height: 14px;}
.page-gift__link-btn:hover { border: 0.5px solid #d2d61a; background-color: #d2d61a;}
.page-gift__link-btn a { display: block; padding: 30px 40px; font-size: 1.125em;}

.page-link { margin-bottom: 120px;}
.page-link__item { display: flex; justify-content: space-between; align-items: center; border-top: 0.5px dashed #000; padding: 45px 0; gap: 6%;}
.page-link__item:last-of-type { border-bottom: 0.5px dashed #000;}
.page-link__item-intro { width: 48%;}
.page-link__item-intro-head { font-size: 2.25em; margin-bottom: 20px; letter-spacing: 0.1em; line-height: 1.5em; font-weight: 300; font-family: 'garamond-premier-pro-caption', "Noto serif JP", serif;}
.page-link__item-intro-text { font-size: 0.875em; color: #666; margin-left: 10px;}
.page-link__item-btn { width: 46%; border: 0.5px solid #333; margin: 0 auto; position: relative;}
.page-link__item-btn::after { content: ""; display: block; background-image: url("../img/btn_arrow.png"); background-size: contain; position: absolute; top: 50%; right: 50px; transform: translateY(-50%); width: 20px; height: 18px; background-repeat: no-repeat; background-position: center;}
.page-link__item-btn:hover { border: 0.5px solid #d2d61a; background-color: #d2d61a;}
.page-link__item-btn a { display: block; padding: 30px 40px; font-size: 1.125em;}

/* contact-us -----------------*/
.contactUs { max-width: 900px; margin: 0 auto 140px;}
.contactUs__title { text-align: center; margin-bottom: 60px;}
.contactUs__description { margin-bottom: 60px; text-align: center; line-height: 2.0; font-family: 'Noto Sans JP', sans-serif;}
.contactUs__thanks-text { height: 25vh;}
.contactUs__option { display: flex; margin-bottom: 80px; gap: 4%;}
.contactUs__option-btn { width: 100%; border: 1px solid #666;}
.contactUs__option-btn a { display: block; padding: 30px; height: 100%; box-sizing: border-box;}
.contactUs__option-btn-head { text-align: center; margin-bottom: 20px;}
.contactUs__option-btn-contents { display: flex; justify-content: space-between; gap: 20px; align-items: center;}
.contactUs__option-btn-inner { display: flex; gap: 15px; justify-content: center; align-items: center; width: 72%;}
.contactUs__option-btn-text01 { line-height: 1.2em;}
.contactUs__option-btn-img01 { background-color: #c1272d; width: 15%; height: 15%; aspect-ratio:1 / 1; border-radius: 50%; position: relative;}
.contactUs__option-btn-img01 img { width: 70%; height: 70%; position: absolute; top: 52%; left: 50%; transform: translate(-50%, -50%); object-fit: contain;}
.contactUs__option-btn-img02 { width: 20%;}
.contactUs__option-btn-text01 span { display: block; font-size: 0.75em; line-height: 1.2em;  margin-bottom: 5px;}
.contactUs__option-btn-text02 { text-align: center; font-size: 2.5em; line-height: 1.0;}
.contactUs__option-btn-text02 span { font-size: 1.0rem; font-weight: 600; background-color: #d2d61a; padding: 3px 10px; display: inline-block; vertical-align: middle; margin-right: 10px;}
.contactUs__sub-title { text-align: center; margin-bottom: 20px;}
.contactUs__form { padding: 50px; background-color: #f3f3f3;}
.contactUs__kind { margin: 0 70px 50px; width: fit-content;}
.contactUs__kind th { width: 200px;}
.contactUs__kind-list { display: flex; gap: 20px;}
.contactUs__table-inner { padding: 40px 50px 80px; background-color: #fff;}
.contactUs__table { width: 100%; margin-bottom: 60px;}
.contactUs__table-caption { margin-left: 20px; margin-bottom: 20px; text-align: justify;}
.contactUs__table tr { border-bottom: 0.5px solid #efefef;}
.contactUs__table th { width: 200px; padding: 20px; line-height: 1.5;}
.contactUs__table td { padding: 20px;}
.contactUs__table input { padding: 10px; background-color: #f3f3f3; border: 0.5px solid #ccc; outline: none;}
.contactUs__table-flex { display: flex; gap: 5px;}
.contactUs__table .input25 { width: 50%;}
.contactUs__table .input50 { width: 50%;}
.contactUs__table .input100 { width: -webkit-fill-available;}
.contactUs__table textarea { width: -webkit-fill-available; min-height: 200px; padding: 10px; background-color: #f3f3f3; border: 0.5px solid #ccc; outline: none;}
.contactUs__table select { padding: 10px; background-color: #f3f3f3; border: 0.5px solid #ccc;}
.contactUs__ol-item { margin-bottom: 10px;}
.contactUs__ul { display: flex; flex-wrap: wrap; gap: 0 10px; margin-bottom: 10px;}
.contactUs__ul-item { width: fit-content;}
.contact__btn-area { display: flex; justify-content: center;}
.contact__btn { width: 50%; max-width: 240px; height: 60px; background-color: #fff; border: 0.5px solid #333; font-size: 1.0em; font-family: 'Noto Sans JP', sans-serif; font-weight: 500; cursor: pointer; letter-spacing: 0.1em; color: #333;}
.contact__btn:first-of-type { margin-right: 10px;}
.contact__btn:hover { background-color: #d2d61a; border: 0.5px solid #d2d61a;}

.contactUs__table-confirm { padding: 40px 50px 80px; background-color: #fff;}
.contactUs__table-confirm tr { border-bottom: 0.5px solid #efefef; }
.contactUs__table-confirm th { width: 40%; padding: 10px 0;}
.contactUs__table-confirm td { padding: 10px 0;}

/* news.works -----------------*/
.article-archive { margin-bottom: 80px;}
.artile-list { max-width: 1000px; padding: 0 50px; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 50px; margin-bottom: 130px;}
.artile-list__item { width: calc((100% - 50px) / 2);}
.artile-list__item-thumbnail { aspect-ratio: 3 / 2; margin-bottom: 55px;}
.artile-list__item-thumbnail img { object-fit: cover;}
.artile-list__item-text { padding: 0 30px;}
.artile-list__item-date { font-size: 0.875em; display: block; margin-bottom: 8px; color: #828282;}
.artile-list__item-title { line-height: 1.3em; margin-bottom: 10px;}
.artile-list__item-intro { font-size: 0.875em; line-height: 1.4em; color: #666;}

.single-artile { max-width: 810px; margin: 0 auto 80px;}
.single-artile__title { font-size: 2.0em; text-align: center;}
.single-artile__date { font-size: 0.875em; text-align: center; color: #828282; margin-bottom: 60px;}
.single-artile__thumbnail { aspect-ratio: 3 / 2; margin-bottom: 10px;}
.single-artile__thumbnail img { object-fit: cover;}
.single-artile__thumbnail-caption { font-size: 0.875em; color: #828282; text-align: center; margin-bottom: 50px;}
.single-artile__content { margin-bottom: 130px;}
.single-artile__content h2 { font-family: 'Noto Sans JP', sans-serif; font-size: 1.5em; margin-bottom: 30px;}
.single-artile__content h3 { font-family: 'Noto Sans JP', sans-serif; font-size: 1.25em; margin-bottom: 30px;}
.single-artile__content p { margin-bottom: 30px;}
.single-artile__content ul, .single-artile__content ol { padding-left: 20px;}
.single-artile__content ul li { list-style: disc; line-height: 1.5em;}
.single-artile__content ol li { list-style: decimal; line-height: 1.5em;}

/* news.worksのページネーション -----------------*/
.page-numbers { display: flex; justify-content: center; gap: 20px;}
.page-numbers li {  width: 55px; height: 55px; text-align: center;}
.page-numbers li .page-numbers { padding: 13px; display: block; border: 1px solid #333; font-size: 1.125em; line-height: 1.5em; text-align: center;}
.page-numbers li .current { background-color: #333;  color: #fff; }
.page-numbers li:first-of-type a, .page-numbers li:last-of-type a { border: none; font-size: 1.25em;}
.page-numbers .dots { display: block; padding: 25px; font-size: 1.25em;}

.article__pagination { display: flex; justify-content: center; gap: 20px;}
.article__pagination-item { width: 55px; height: 55px; aspect-ratio: 1 / 1; text-align: center;}
.article__pagination-item a { padding: 18px 14px 15px; display: block;}
.article__pagination-item a:first-of-type, .works__pagination-item a:last-of-type { display: block; font-size: 1.175em; border: 1px solid #000;}


@media print, screen and (max-width:1023px){
/* maivisual -----------------*/
  .mainvisual { height: 100vw;}
  .mainvisual-pc { display: none;}
  .mainvisual-sp { display: block;}
  .mainvisual__copy { width: 30%;}
  
/* works ---------------------*/
  .works { display: block; padding-right: 0; overflow: hidden;}
  .works__img { width: 90%;}
  .works__img::before { width: 15%; height: 35%; top: 8%; right: 0%;}
  .works__text { width: 80%; margin: 7% auto 0; padding: 0 50px;}
  
/* news ---------------------*/
  .news { margin-bottom: 130px;}
  .news__list { width: 80%; min-width: 0;}
  .news__list-item { width: 50%;}
  .news__list-item:nth-of-type(2),.news__list-item:nth-of-type(4),.news__list-item:last-of-type { border-right: 0.5px solid #000;}
  .news__list-item:nth-of-type(3),.news__list-item:nth-of-type(4) { border-top: none;}

/* gift ---------------------*/
  .gift { display: block; padding: 70px 50px; margin-bottom: 70px;}
  .gift__img { position: static; transform: translateX(0); padding-right: 0; width: 80%; margin: -110px auto 60px;}
  .gift__text { width: 80%; margin: 0 auto;}
  .gift__text-intro {margin-bottom: 60px;}
  
/* about ---------------------*/
  .about__copy { font-size: calc(40px + 12 * ((100vw - 767px) / 313));}
  .about__title { font-size: calc(120px + 48 * ((100vw - 767px) / 313));}
  .about__bg { height: 90vh;}
  .about__link { width: 80%; padding: 0 50px;}
  .about__link-btn { width: 100%;}

/* 各ページ ---------------------*/
  .page-contents { padding: 0 50px;}
  .page-top__img { margin-top: -22%;}
  .page-top__img03 {  margin-top: -100px;}
  
  .page-feature01-width { margin: -50px; margin-bottom: 40px;}
  .page-feature01-margin { margin-top: 0;}
  
  .page-feature02__list { width: 60%;}
  
/* contact-us -----------------*/
  .contactUs { padding: 0 50px;}
  .contactUs__description { text-align: justify;}
  .contactUs__thanks-text { height: 35vh;}
  .contactUs__option-btn a { padding: 20px;}
  .contactUs__option-btn-img01 { min-width: 35px; min-height: 35px; max-width: 40px; max-height: 40px;}
  .contactUs__option-btn-img02 { width: 30%; margin: 0 auto;}
  .contactUs__option-btn-text02 { font-size: 1.75em; margin-top: 40px;}
  .contactUs__option-btn-text02 span { font-size: 0.75rem; margin-top: 5px;}
  .contactUs__kind { margin: 0 50px 50px;}
  .contactUs__table { margin-bottom: 40px;}
  .contactUs__table th { display: block; width: 100%; padding: 20px 20px 5px;}
  .contactUs__table td { display: block; width: 100%; padding: 5px 20px 20px;}
  .contactUs__table th br { display: none;}
  .contactUs__table-flex { display: flex !important;}
  .contactUs__form { padding: 50px 30px;}
  .contactUs__table-inner { padding: 10px 30px 80px;}
  
  .contactUs__table-confirm { padding: 10px 30px 80px;}
  .contactUs__table-confirm th { font-size: 0.875em;}
  
/* article -----------------*/
  .artile-list { padding: 0 50px; gap: 30px;}
  .artile-list__item { width: calc((100% - 30px) / 2);}
  .artile-list__item-thumbnail { margin-bottom: 35px;}
  .artile-list__item-text { padding: 0 20px;}
  
  .single-artile { padding: 0 50px;}
}

/* タブレット−2 ++++++++++++++++++++ */
@media print, screen and (max-width:767px){
/* works ---------------------*/
  .works__img::before { width: 20%; height: 46%; top: 8%; right: -10%;}
  .works__link::after { right: -7%;}
  .works__text { width: 100%;}
  
/* news ---------------------*/
  .news__list { width: 100%;}

/* gift ---------------------*/
  .gift__img { width: 100%;}
  .gift__text { width: 100%;}
  .gift__text-title { margin-bottom: 20px; font-size: calc(36px + 8 * ((100vw - 480px) / 287));}
  
/* about ---------------------*/
  .about__intro { width: 100%; padding: 0 50px;}
  .about__intro-br {display: block;}
  .about__title { top: -40px;}
  .about__link { width: 100%;}

/* 各ページ ---------------------*/
  .page-top { display: block; margin-bottom: 80px;}
  .page-top__intro img { width: 40%; margin-bottom: 20px;}
  .page-top__intro-description { width: auto; margin-left: 0;}
  .page-top__img, .page-top__img02, .page-top__img03 { width: 100%; max-width: none; margin-top: 0; margin-bottom: 20px; float: none;}
  
  .page-feature01__intro { width: 100%; min-width: auto;}
  .page-feature01__img { width: 100%;}
  .page-feature01-pc { display: none;}
  .page-feature01-sp { display: block; margin-bottom: 100px;}

  .page-feature02 { display: block;}
  .page-feature02-margin { margin-bottom: 100px;}
  .page-feature02-margin02 { margin-bottom: 20px;}
  .page-feature02-last { margin-bottom: 160px;}
  .page-feature02__img { width: 100%;}
  .page-feature02__img-none { display: none;}
  .page-feature02__img-reverse { margin-left: 0; margin-right: auto;}
  .page-feature02__list { width: 100%;}
  .page-feature02__list-head { margin-bottom: 80px;}
  .page-feature02__list-item:last-of-type { border-bottom: none;}
  .page-feature02__list-graphic { padding: 0; position: relative;}
  .page-feature02__list-graphic::after { content:""; display: block; width: 100vw; background-color: #f0ede8; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: -1; aspect-ratio: 3 / 2.1;}
  
  .page-feature03 { display: block;}
  .page-feature03__info { width: 100%; margin-bottom: 35px;}
  .page-feature03__img { width: 100%;}
  
  .page-gift__list { gap: 30px;}
  .page-gift__list-item { width: calc((100% - 30px) / 2);}

  .page-link__item { display: block;}
  .page-link__item-intro { width: 100%; margin-bottom: 40px;}
  .page-link__item-btn { width: 100%;}
  
/* contact-us ----------------*/
  .contactUs { margin-bottom: 80px;}
  .contactUs__description { margin-bottom: 40px;}
  .contactUs__option { display: block; margin-bottom: 60px;}
  .contactUs__option-btn { width: 100%;}
  .contactUs__option-btn:first-of-type { margin-bottom: 20px;}
  .contactUs__option-btn-contents { justify-content: center;}
  .contactUs__option-btn-inner { justify-content: end; width: fit-content;}
  .contactUs__option-btn-img02 { width: 25%; max-width: 100px; margin: 0;}
  .contactUs__option-btn-text01 { min-width: 210px;}
  .contactUs__option-btn-text02 { font-size: 2.0em; margin-top: 20px;}
  .contactUs__form { padding: 30px;}
  .contactUs__kind { margin: 0 30px 30px;}
  .contactUs__kind th { display: block; margin-bottom: 10px;}
  .contactUs__kind td { display: block;}
  .contactUs__table-caption { margin-left: 0;}
  .contactUs__table th { padding: 20px 0 5px;}
  .contactUs__table td { padding: 5px 0 20px;}
  
/* article -----------------*/
  .artile-list { padding: 0 80px; margin-bottom: 100px;}
  .artile-list__item { width: 100%;}
  
  .single-artile { margin-bottom: 100px;}
  .single-artile__title { text-align: justify;}
  .single-artile__date { margin-bottom: 40px;}
  .single-artile__content { margin-bottom: 100px;}

/* news.worksのページネーション -----------------*/
  .page-numbers { gap: 10px;}
  .page-numbers li { width: 40px; height: 40px;}
  .page-numbers li .page-numbers { padding: 7px; font-size: 1em;}
  .page-numbers li:first-of-type a, .page-numbers li:last-of-type a { font-size: 1.0em;}
}


/* スマホ用 ++++++++++++++++++++ */
@media print, screen and (max-width:480px){
/* maivisual -----------------*/
  .mainvisual__copy { top: 60px;}
  
/* works ---------------------*/
  .works__img::before { right: -8%;}
  .works__img::after { bottom: -70px; left: 100%;}
  .works__img { width: 100%;}
  .works__text { padding: 0 4%;}
  .works__text-title { margin-bottom: 20px; font-size: 2.75em;}
  .works__link::before { top: -120px;}
  .works__link::after { bottom: -30%; right: 0; width: 100px; height: 80px;}
  
/* news ---------------------*/
  .news { padding: 0 4%;}
  .news__list-item a { padding: 20px 15px}
  .news__list::before { top: -100px; left: 0; width: 100px; height: 108px;}

/* gift ---------------------*/
  .gift { padding: 40px 4%; margin-bottom: 40px;}
  .gift__img { width: 100%; margin: -80px auto 40px;}
  .gift__text { width: 100%;}
  .gift__text-title { margin-bottom: 20px; font-size: 2.25em;}
  .gift__text-intro { margin-bottom: 40px;}
  
/* about ---------------------*/
  .about__intro { padding: 0 4%; margin: 0 auto 40px;}
  .about__title { top: -30px;}
  .about__link { padding: 0 4%; bottom: 40px;}

/* 各ページ ---------------------*/
  .page-contents { padding: 0 4%;}
  .page-top__img { width: 100%;}
  .page-top__intro-head { margin-bottom: 10px; font-size: 2.0em;}
  .page-top__intro-head-eng { font-size: 3.5em; margin-bottom: 20px;}
  
  .page-feature01 { margin-bottom: 80px;}
  .page-feature01-width { margin: -4%; margin-bottom: 40px;}
  .page-feature01__img { width: 100%;}
  .page-feature01__intro { margin-bottom: 20px;}
  .page-feature01__intro-head { margin-bottom: 20px;}
  
  .page-top__img02 { max-width: none;}
  
  .page-feature02 { margin-bottom: 80px;}
  .page-feature02-margin02 { margin-bottom: 60px;}
  .page-feature02-last { margin-bottom: 100px;}
  .page-feature02__img { width: 100%;}
  .page-feature02__list-item:last-of-type { padding-bottom: 20px;}
  .page-feature02__list-item-head { font-size: 1.25em;}
  .page-feature02__list-item-topic { line-height: 1.5em; font-size: 0.875em; margin: -78px auto 20px;}
  .page-feature02__list-item-topic::before { top: -25px; left: 0; font-size: 0.75em;}
  .page-feature02__list-head { font-size: 1.25em; margin-bottom: 40px;}
  .page-feature02__list-graphic { }
  
  .page-feature03 { margin-bottom: 80px;}
  .page-feature03__info { margin-bottom: 25px;}
  .page-feature03__img { width: 100%;}
  .page-feature03__info-text { margin-bottom: 15px;}
  
  .page-gift__list { gap: 20px;}
  .page-gift__list-item { width: calc((100% - 20px) / 2);}
  
  .page-link { margin-bottom: 100px;}
  .page-link__item { padding: 30px 0;}
  .page-link__item-intro { margin-bottom: 20px;}
  .page-link__item-intro-head { font-size: 1.85em; margin-bottom: 10px;}
  
/* contact-us -----------------*/
  .contactUs { padding: 0 4%;}
  .contactUs__option-btn-inner { justify-content: center; width: 100%;}
  .contactUs__option-btn-img02 { display: none;}
  .contactUs__kind { margin: 0 4% 30px;}
  .contactUs__option-btn-text02 { font-size: calc(24px + 16*((100vw - 300px) / 180));}
  .contactUs__form { padding: 30px 4%;}
  .contactUs__table-inner { padding: 10px 4% 60px;}
  
  .contactUs__table-confirm { padding: 10px 4% 60px;}
  
  /* article -----------------*/
  .artile-list { padding: 0 50px; margin-bottom: 80px;}
  
  .single-artile { padding: 0 4%; margin-bottom: 80px;}
  .single-artile__content { margin-bottom: 60px;}
}