@charset "UTF-8";
/* base
------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*! destyle.css v3.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */
*, ::before, ::after { box-sizing: border-box; border-style: solid; border-width: 0; }

html { line-height: 1.15; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }

body { margin: 0; }

main { display: block; }

p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0; }

h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; margin: 0; }

ul, ol { margin: 0; padding: 0; list-style: none; }

dt { font-weight: 700; }

dd { margin-left: 0; }

hr { box-sizing: content-box; height: 0; overflow: visible; border-top-width: 1px; margin: 0; clear: both; color: inherit; }

pre { font-family: monospace,monospace; font-size: inherit; }

address { font-style: inherit; }

a { background-color: transparent; text-decoration: none; color: inherit; }

abbr[title] { text-decoration: underline dotted; }

b, strong { font-weight: bolder; }

code, kbd, samp { font-family: monospace,monospace; font-size: inherit; }

small { font-size: 80%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -.25em; }

sup { top: -.5em; }

svg, img, embed, object, iframe { vertical-align: bottom; }

button, input, optgroup, select, textarea { -webkit-appearance: none; appearance: none; vertical-align: middle; color: inherit; font: inherit; background: transparent; padding: 0; margin: 0; border-radius: 0; text-align: inherit; text-transform: inherit; }

[type="checkbox"] { -webkit-appearance: checkbox; appearance: checkbox; }

[type="radio"] { -webkit-appearance: radio; appearance: radio; }

button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer; }

button:disabled, [type="button"]:disabled, [type="reset"]:disabled, [type="submit"]:disabled { cursor: default; }

:-moz-focusring { outline: auto; }

select:disabled { opacity: inherit; }

option { padding: 0; }

fieldset { margin: 0; padding: 0; min-width: 0; }

legend { padding: 0; }

progress { vertical-align: baseline; }

textarea { overflow: auto; }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

[type="search"] { outline-offset: -2px; }

[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }

label[for] { cursor: pointer; }

details { display: block; }

summary { display: list-item; }

[contenteditable]:focus { outline: auto; }

table { border-color: inherit; }

caption { text-align: left; }

td, th { vertical-align: top; padding: 0; }

th { text-align: left; font-weight: 700; }

/*  common setting
------------------------------------------------------------------------------------------*/
p { text-align: justify; text-justify: inter-ideograph; line-height: 1.9; }

h2 { text-align: justify; text-justify: inter-ideograph; line-height: 1.4; }

h3 { text-align: justify; text-justify: inter-ideograph; line-height: 1.4; }

h4 { text-align: justify; text-justify: inter-ideograph; line-height: 1.4; }

h5 { text-align: justify; text-justify: inter-ideograph; line-height: 1.4; }

.text-green-50 { color: #9ec93b !important; }

.text-blue { color: #019e97 !important; }

.text-orange { color: #ee7820 !important; }

.text-orange-50 { color: #f5ab00 !important; }

.text-blue-50 { color: #2bb7b4 !important; }

.text-green { color: #529c4f !important; }

html { -webkit-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; scroll-behavior: smooth; }

body { font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "BIZ UDPGothic", "Yu Gothic", "Meiryo", sans-serif; color: #222222; font-size: 100%; overflow-x: hidden; }

/*section[id]::before{ content: ''; display: block; padding-top: 110px; margin-top: -110px; background: $white; @include mq(sp){ padding-top: 75px; margin-top: -75px; }
}*/
#page__title { max-width: 1190px; padding: 2rem 7rem; }
@media screen and (min-width: 768px) and (max-width: 1024px) { #page__title { padding: 3rem; } }
@media screen and (max-width: 767px) { #page__title { padding: 2rem 1.5rem 1rem; } }
#page__title .title { display: flex; justify-content: flex-start; align-items: flex-end; }
@media screen and (max-width: 767px) { #page__title .title { flex-direction: column; align-items: baseline; } }
#page__title .title img { max-height: 43px; margin-right: 1rem; }
@media screen and (max-width: 767px) { #page__title .title img { max-height: 30px; margin-bottom: 1rem; } }
#page__title .title small { font-size: 1rem; font-weight: 900; letter-spacing: .2rem; }

#nav__breadcrumnbs { max-width: 1190px; padding: 1.5rem 7rem; }
@media screen and (min-width: 768px) and (max-width: 1024px) { #nav__breadcrumnbs { padding: 1.5rem 3rem; } }
@media screen and (max-width: 767px) { #nav__breadcrumnbs { display: none; } }
#nav__breadcrumnbs ul { display: flex; column-gap: 1rem; }
#nav__breadcrumnbs ul li { font-size: .8rem; }
#nav__breadcrumnbs ul li a:hover { color: #fee100; }

.article, .btn { transition-duration: 0.3s; }
.article:hover, .btn:hover { filter: brightness(90%); transition-duration: 0.3s; }

a.anchor { display: block; padding-top: 105px; margin-top: -105px; }
@media screen and (max-width: 767px) { a.anchor { padding-top: 75px; margin-top: -75px; } }

.list--inline { margin-bottom: 0; }
.list--inline .list--inline--item { display: inline-block; }

.text--center { text-align: center !important; }

.sp { display: none !important; }
@media screen and (max-width: 767px) { .sp { display: block !important; } }

.tb { display: none !important; }
@media screen and (min-width: 768px) and (max-width: 1024px) { .tb { display: block !important; } }

.pc { display: block !important; }
@media screen and (max-width: 767px) { .pc { display: none !important; } }

.mt-0 { margin-top: 0px !important; }

.mb-0 { margin-bottom: 0px !important; }

.ml-0 { margin-left: 0px !important; }

.mr-0 { margin-right: 0px !important; }

.m-0 { margin: 0px !important; }

.mt-1 { margin-top: 8px !important; }

.mb-1 { margin-bottom: 8px !important; }

.ml-1 { margin-left: 8px !important; }

.mr-1 { margin-right: 8px !important; }

.m-1 { margin: 8px !important; }

.mt-2 { margin-top: 16px !important; }

.mb-2 { margin-bottom: 16px !important; }

.ml-2 { margin-left: 16px !important; }

.mr-2 { margin-right: 16px !important; }

.m-2 { margin: 16px !important; }

.mt-3 { margin-top: 24px !important; }

.mb-3 { margin-bottom: 24px !important; }

.ml-3 { margin-left: 24px !important; }

.mr-3 { margin-right: 24px !important; }

.m-3 { margin: 24px !important; }

.mt-4 { margin-top: 32px !important; }

.mb-4 { margin-bottom: 32px !important; }

.ml-4 { margin-left: 32px !important; }

.mr-4 { margin-right: 32px !important; }

.m-4 { margin: 32px !important; }

.mt-5 { margin-top: 40px !important; }

.mb-5 { margin-bottom: 40px !important; }

.ml-5 { margin-left: 40px !important; }

.mr-5 { margin-right: 40px !important; }

.m-5 { margin: 40px !important; }

/*  header setting
------------------------------------------------------------------------------------------*/
header { position: fixed; display: flex; align-items: center; width: 100%; height: 110px; background-color: #fff; z-index: 10; /* メニューオープン時 */ }
@media screen and (max-width: 767px) { header { height: 75px; } }
header .container { display: flex; align-items: center; justify-content: center; width: 1300px; margin: 0 auto; padding: 0 0 0 1rem; }
@media screen and (max-width: 767px) { header .container { width: 100%; } }
header .logo { display: inline-block; width: 70px; }
@media screen and (max-width: 767px) { header .logo { width: 50px; } }
header .global { display: flex; margin: 0 0 0 auto; }
header .global ul { display: flex; }
@media screen and (min-width: 768px) and (max-width: 1024px) { header .global ul { column-gap: 0; } }
header .global ul:first-child { margin-right: 1rem; }
header .global ul li a { display: flex; padding: 0 1rem; height: 110px; align-items: center; font-size: clamp(0.8rem, 1.5vw, 1rem); font-weight: 800; }
header .global ul li a:hover { color: #208740 !important; }
@media screen and (min-width: 768px) and (max-width: 1024px) { header .global ul li a { padding: 0 .5rem; } }
@media screen and (max-width: 767px) { header .global ul li a { display: none; } }
header .global ul li.lang { display: flex; align-items: center; justify-content: center; padding: 0 1.5rem 0 0; }
@media screen and (min-width: 768px) and (max-width: 1024px) { header .global ul li.lang { padding: 0 .8rem 0 0; } }
@media screen and (max-width: 767px) { header .global ul li.lang { padding: 0; } }
header .global ul li.lang form { width: 10rem; position: relative; }
@media screen and (min-width: 768px) and (max-width: 1024px) { header .global ul li.lang form { width: 6.5rem; } }
header .global ul li.lang .select { width: 100%; height: 2.1rem; cursor: pointer; color: #208740; background-color: #fff; box-sizing: content-box; }
header .global ul li.lang .select input[type=radio].hide-checkbox { display: none; }
header .global ul li.lang .select_options { display: block !important; }
header .global ul li.lang .select_expand { width: 0; height: 2.1rem; position: absolute; top: 0; right: 0; }
header .global ul li.lang .select_expandLabel { display: block; width: 100%; height: 2.1rem; position: absolute; top: 0; left: 0; cursor: pointer; }
header .global ul li.lang .select_expandLabel::after { font-family: "Font Awesome 5 Free"; content: '\f0da'; position: absolute; top: 50%; right: 10px; transform: translate(-50%, -50%) rotate(90deg) scaleY(1); color: #222222; font-size: 1rem; font-weight: 800; pointer-events: none; z-index: 2; transition: all 250ms cubic-bezier(0.4, 0.25, 0.3, 1); }
header .global ul li.lang .select_expandLabel:hover::after { opacity: 1; }
header .global ul li.lang .select_close { display: none; }
header .global ul li.lang .select_closeLabel { width: 100%; height: 2.1rem; position: absolute; top: 0; left: 0; display: none; border-bottom: 1px dotted #ddd; }
header .global ul li.lang .select_closeLabel::after { font-family: "Font Awesome 5 Free"; content: '\f0da'; position: absolute; top: 50%; right: 10px; transform: translate(-50%, -50%) rotate(90deg) scaleY(1); color: #222222; font-size: 1rem; font-weight: 800; pointer-events: none; z-index: 2; transition: all 250ms cubic-bezier(0.4, 0.25, 0.3, 1); }
header .global ul li.lang .select_closeLabel:hover::after { opacity: 1; }
header .global ul li.lang .select_items { width: 100%; position: absolute; top: 0; left: 0; border: 2px solid #529c4f; border-radius: 2px; padding-top: 2.1rem; }
header .global ul li.lang .select_input { display: none; }
header .global ul li.lang .select_label { transition: all 250ms cubic-bezier(0.4, 0.25, 0.3, 1); display: block; height: 0; font-size: 1rem; line-height: 2.1rem; font-weight: 800; overflow: hidden; color: #222222; background-color: #fff; cursor: pointer; padding-left: 20px; }
@media screen and (min-width: 768px) and (max-width: 1024px) { header .global ul li.lang .select_label { font-size: .8rem; padding-left: .5rem; } }
header .global ul li.lang .select_label-placeholder { height: 2.1rem; vertical-align: middle; position: absolute; top: 2px; left: 0; background-color: transparent; }
header .global ul li.lang .select_expand:checked + .select_closeLabel { display: block; }
header .global ul li.lang .select_expand:checked + .select_closeLabel::after { transform: translate(-50%, -50%) rotate(90deg) scaleX(-1) scaleY(1); }
header .global ul li.lang .select_expand:checked + .select_closeLabel + .select_options .select_label { height: 2.1rem; }
header .global ul li.lang .select_expand:checked + .select_closeLabel + .select_options .select_label:hover { color: #208740; background-color: #eaf4eb; }
header .global ul li.lang .select_expand:checked + .select_closeLabel + .select_options + .select_expandLabel { display: none; }
header .global ul li.lang .select_input:checked + .select_label { height: 2.1rem; margin-top: -2rem; }
header .hg__menu { display: flex; height: 110px; min-width: 110px; background: #208740; align-items: center; justify-content: center; z-index: 200; }
@media screen and (max-width: 767px) { header .hg__menu { min-width: 75px; height: 75px; background: #fff; z-index: 201; } }
header .hg__menu .list { position: relative; }
header .hg__menu .list span { display: block; transition: all 0.4s; box-sizing: border-box; position: absolute; top: 10%; transform: translateY(50%); left: 50%; transform: translateX(-50%); width: 40px; height: 3px; background: #fff; border-radius: 2px; }
@media screen and (max-width: 767px) { header .hg__menu .list span { top: 30%; background: #208740; } }
header .hg__menu .list span:nth-child(1) { margin-top: -10px; }
header .hg__menu .list span:nth-child(3) { margin-top: 10px; }
header .hg__menu .list.active { background-color: #008a2c; }
header .hg__menu .list.active span:nth-child(1) { -webkit-transform: translateY(12px) rotate(-45deg); transform: translateY(12px) rotate(-45deg); left: 0; background: #fff; }
header .hg__menu .list.active span:nth-child(2) { opacity: 0; }
header .hg__menu .list.active span:nth-child(3) { -webkit-transform: translateY(-8px) rotate(45deg); transform: translateY(-8px) rotate(45deg); left: 0; background: #fff; }
header .hg__menu .list.active p { color: #208740; opacity: 0.95; }
header .hg__menu .list p { margin-top: 20px; font-size: .75rem; font-weight: 700; color: #fff; }
@media screen and (max-width: 767px) { header .hg__menu .list p { color: #208740; margin-top: 40px; } }
header .nav-wrapper { width: 100vw; height: 100vh; position: fixed; top: 0; left: 0; transition: all .5s; z-index: 2; }
header .header-nav { width: 100%; height: 100%; background-color: #1B1310; z-index: 2; }
header .nav-list { display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; }
header .nav-item { margin-right: 0; margin-bottom: 40px; }
header .nav-wrapper.fade { visibility: visible; opacity: 1; }

.hg__menu-bg { position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 0; background: transparent; opacity: 0; visibility: hidden; transition: all 0.6s; }

.hg__menubox { position: fixed; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 90%; max-width: 1024px; margin: 0 auto; padding: 2em; opacity: 0; visibility: hidden; z-index: 0; overflow-y: auto; }
@media screen and (max-width: 767px) { .hg__menubox { width: 100%; height: 100%; top: 21px; left: 0; transform: none; padding: 0; } }
.hg__menubox .hg__menubox__title { display: flex; justify-content: center; margin-bottom: 1.5rem; }
.hg__menubox .hg__menubox__title p { width: calc(100vw / 5); max-width: 105px; height: auto; }
.hg__menubox .hg__menubox__inner { display: flex; padding: 3rem 2rem 2rem; column-gap: 2rem; justify-content: space-between; border-top: 5px solid #fff; border-bottom: 5px solid #fff; }
@media screen and (max-width: 767px) { .hg__menubox .hg__menubox__inner { display: inline-block; width: 100%; padding: 0; } }
.hg__menubox .hg__menubox__inner--item { width: 100%; color: #fff; letter-spacing: .1rem; }
.hg__menubox .hg__menubox__inner--item .mainlink { margin-bottom: 1rem; }
@media screen and (max-width: 767px) { .hg__menubox .hg__menubox__inner--item .mainlink { margin-bottom: 0; } }
.hg__menubox .hg__menubox__inner--item .mainlink a { display: block; font-weight: 900; }
@media screen and (max-width: 767px) { .hg__menubox .hg__menubox__inner--item .mainlink a { padding: .8rem 1rem; margin-bottom: 0; border-bottom: 1px solid #fff; }
  .hg__menubox .hg__menubox__inner--item .mainlink a::after { font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f105"; color: #fee100; display: inline-block; float: right; } }
.hg__menubox .hg__menubox__inner--item .mainlink a:hover { color: #fee100; }
.hg__menubox .hg__menubox__inner--item .mainlink.second { margin-left: 1rem; }
@media screen and (max-width: 767px) { .hg__menubox .hg__menubox__inner--item .mainlink.second { margin-left: 0; } }
.hg__menubox .hg__menubox__inner--item .mainlink.second span { color: #f6ab00; margin-right: .5rem; }
@media screen and (max-width: 767px) { .hg__menubox .hg__menubox__inner--item .mainlink.second span { display: none; } }
.hg__menubox .hg__menubox__inner--item .list--inline { margin-left: 2rem; margin-bottom: 1rem; }
@media screen and (max-width: 767px) { .hg__menubox .hg__menubox__inner--item .list--inline { display: none; } }
.hg__menubox .hg__menubox__inner--item .list--inline--item { font-size: .9rem; margin-bottom: 1rem; margin-left: 1rem; }
.hg__menubox .hg__menubox__inner--item .list--inline--item span { margin-right: .5rem; }
.hg__menubox .hg__menubox__inner--item .list--inline a:hover { color: #fee100; }
.hg__menubox .sub--link { display: flex; justify-content: center; padding: 2rem; }
@media screen and (max-width: 767px) { .hg__menubox .sub--link { display: none; } }
.hg__menubox .sub--link li { border-right: 1px solid #fff; }
.hg__menubox .sub--link li:last-child { border-right: none; }
.hg__menubox .sub--link li a { display: block; padding: 0 1rem; font-size: .75rem; color: #fff; }
.hg__menubox .sub--link li a:hover { color: #fee100; }

.nav-open .hg__menubox { opacity: 1; z-index: 200; visibility: visible; transition: all 0.6s; }

.nav-open .hg__menu-bg { opacity: 0.95; z-index: 100; visibility: visible; background: #208740; }

@media screen and (max-width: 767px) { .nav-open .hg__menu { background: #208740; } }

/*  footer setting
------------------------------------------------------------------------------------------*/
footer { position: relative; width: 100%; height: auto; background: #fff; }
footer .footer__container { max-width: 1300px; margin: 0 auto; position: relative; /*.footer__pagetop{ position: absolute; top: -110px; right: 0; height: 110px; width: 110px; @include mq(sp){ top: -25px; right: 1.5rem; height: 50px; width: 50px; background: $epoch-color; border: 1px solid $white; box-sizing: border-box; } a{ display:block; background-image: url("../images/common/img-pagetop.svg"); background-size: 60%; background-position:center; background-repeat: no-repeat; height: 100%; width: auto; @include mq(sp){ background-image: url("../images/common/img-pagetop-sp.svg"); } }
}*/ }
@media screen and (max-width: 767px) { footer .footer__container { width: 100%; } }
footer .footer__container .footer__pagetop { height: 110px; width: 110px; }
@media screen and (max-width: 767px) { footer .footer__container .footer__pagetop { height: 50px; width: 50px; background: #208740; border: 1px solid #fff; box-sizing: border-box; } }
footer .footer__container .footer__pagetop a { display: block; background-image: url("../images/common/img-pagetop.svg"); background-size: 60%; background-position: center; background-repeat: no-repeat; height: 100%; width: auto; }
@media screen and (max-width: 767px) { footer .footer__container .footer__pagetop a { background-image: url("../images/common/img-pagetop-sp.svg"); } }
footer .footer__container .footer__pagetop.scroll--move { position: fixed; right: calc((100% - 1300px) / 2); bottom: 20px !important; }
@media screen and (min-width: 768px) and (max-width: 1024px) { footer .footer__container .footer__pagetop.scroll--move { right: 0; bottom: 20px !important; } }
@media screen and (max-width: 767px) { footer .footer__container .footer__pagetop.scroll--move { right: 1.5rem; bottom: 20px !important; } }
footer .footer__container .footer__pagetop.scroll--end { position: absolute; right: 0; }
@media screen and (max-width: 767px) { footer .footer__container .footer__pagetop.scroll--end { right: 1.5rem; } }
footer .footer__box__inner { width: 100%; margin: 0 auto; padding: 4rem 2rem 2rem; background: #208740; }
@media screen and (max-width: 767px) { footer .footer__box__inner { padding: 4rem 1rem 2rem; background: #fff; } }
footer .footer__box__inner a { display: block; color: #fff; }
@media screen and (max-width: 767px) { footer .footer__box__inner a { color: #208740; } }
footer .footer__box__inner a:hover { color: #fee100 !important; }
footer .footer__box__inner .sub--link { display: block; text-align: center; }
footer .footer__box__inner .sub--link span { display: block; }
footer .footer__box__inner .sub--link #show_policy_link_group { margin-top: 1rem; }
@media screen and (max-width: 767px) { footer .footer__box__inner .sub--link #show_policy_link_group { border: none; } }
footer .footer__box__inner .footer__banerbox { display: flex; flex-direction: column; flex-wrap: wrap; justify-content: center; align-items: center; grid-row-gap: 1rem; margin-block-end: 2rem; }
footer .footer__box__inner .footer__banerbox .banerbox__box--2 { display: flex; justify-content: space-around; grid-column-gap: 1rem; align-items: baseline; }
footer .footer__box__inner .footer__banerbox .banerbox__box--2 img { height: 60px; width: auto; }
@media screen and (min-width: 768px) and (max-width: 1024px) { footer .footer__box__inner .footer__banerbox .banerbox__box--2 img { height: auto; max-width: 465px; } }
@media screen and (max-width: 767px) { footer .footer__box__inner .footer__banerbox .banerbox__box--2 img { height: auto; width: 100%; } }
@media screen and (min-width: 768px) and (max-width: 1024px) { footer .footer__box__inner .footer__banerbox .banerbox__box--2 { flex-direction: column; align-items: center; grid-row-gap: 1rem; } }
@media screen and (max-width: 767px) { footer .footer__box__inner .footer__banerbox .banerbox__box--2 { flex-direction: column; align-items: center; grid-row-gap: 1rem; } }
footer .footer__box__inner .footer__banerbox .baner__box--1 { text-align: center; }
footer .footer__box__inner .sub--link li { padding: 0 1rem; font-size: clamp(0.8rem, calc(100vw/60), 0.9rem); font-weight: 700; margin-bottom: .5rem; }
@media screen and (max-width: 767px) { footer .footer__box__inner .sub--link li { border-right: 1px solid #208740; }
  footer .footer__box__inner .sub--link li:last-child { border-right: none; } }
footer .footer__box__inner .sub--link li + li { border-left: 1px solid #fff; }
@media screen and (max-width: 767px) { footer .footer__box__inner .sub--link li + li { border-left: none; } }
@media screen and (min-width: 768px) and (max-width: 1024px) { footer .footer__box__inner .sub--link li { padding: 0 .7rem; } }
@media screen and (max-width: 767px) { footer .footer__box__inner .sub--link li { margin-bottom: 1rem; padding: 0 1rem 0 1rem; font-weight: 800; text-align: center; } }
footer .footer__menubox__inner { display: flex; justify-content: center; column-gap: 7rem; margin-bottom: 5rem; font-size: .9rem; font-weight: 900; }
@media screen and (max-width: 767px) { footer .footer__menubox__inner { display: none; } }
footer .footer__menubox__inner--item p { margin-bottom: 1.5rem; color: #fff; }
footer .footer__menubox__inner--item ul { padding-left: 1rem; border-left: 1px solid #fff; }
footer .footer__menubox__inner--item ul li { margin-bottom: 1rem; }
footer .footer__menubox__inner--item ul li:last-child { margin-bottom: 0; }
footer .footer__box__outer { padding: 2rem; text-align: center; font-size: 0.8rem; font-weight: 800; }

/* Products Page
------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
#page__container { display: grid; width: auto; max-width: 1300px; /*min-height: 100vh;*/ margin: 0 auto; padding-top: 110px; grid-template-columns: 1fr 110px; grid-template-rows: 1fr; }
@media screen and (max-width: 767px) { #page__container { width: 100%; padding-top: 75px; grid-template-columns: 1fr; } }
#page__container #page__main { grid-column: 1; grid-row: 1; grid-auto-rows: 1; }
#page__container #side { grid-column: 2/3; grid-row: 1; background: #208740; }
@media screen and (max-width: 767px) { #page__container #side { display: none; } }

#page__sub { max-width: 1190px; padding: 2rem 7rem; }
@media screen and (max-width: 767px) { #page__sub { padding: 1rem 1.5rem; } }
#page__sub p { font-size: 1.4rem; font-weight: 900; color: #019e97; letter-spacing: .1rem; }
@media screen and (max-width: 767px) { #page__sub p { font-size: 1rem; }
  #page__sub p span { display: inline-block; } }

#page__select__category { max-width: 1190px; display: flex; justify-content: center; column-gap: 2rem; }
@media screen and (max-width: 767px) { #page__select__category { padding: 1rem 2rem; background: #019e97; column-gap: 1rem; } }
#page__select__category .btn { width: calc(100% / 4); display: block; font-size: 1.2rem; font-weight: 900; letter-spacing: .1rem; padding: 1rem 2rem; border-radius: 2rem; word-wrap: break-word; min-width: 0; text-align: center; }
@media screen and (min-width: 768px) and (max-width: 1024px) { #page__select__category .btn { width: calc(100%/2); } }
@media screen and (max-width: 767px) { #page__select__category .btn { width: 100%; font-size: .7rem; padding: .5rem; } }
#page__select__category .btn.btn--orange { background: #ee7820; color: #fff; }
@media screen and (max-width: 767px) { #page__select__category .btn.btn--orange { background: #fff; border: 1px solid #ee7820; color: #ee7820; } }
#page__select__category .btn.btn--blue { background: #019e97; color: #fff; }
@media screen and (max-width: 767px) { #page__select__category .btn.btn--blue { background: #fff; border: 1px solid #019e97; color: #019e97; } }

#contents__product, #contents__character, #contents__age { max-width: 1190px; }

#contents__character { background: #eaf4eb; padding-bottom: 2rem; }
#contents__character h3 { display: flex; color: #fff; font-size: 1.3rem; font-weight: 900; letter-spacing: .3rem; padding: 1.5rem 7rem; align-items: center; background: #019e97; }
@media screen and (max-width: 767px) { #contents__character h3 { font-size: 1rem; padding: 1rem 2rem; justify-content: center; } }
#contents__character h3::after { font-family: "Font Awesome 5 Free"; font-size: 2rem; font-weight: 900; content: "\f002"; color: #fff; margin-left: .5rem; }
@media screen and (max-width: 767px) { #contents__character h3::after { font-size: 1.2rem; } }

#contents__age { background: #eaf4eb; padding-bottom: 2rem; }
#contents__age h3 { display: flex; color: #fff; font-size: 1.3rem; font-weight: 900; letter-spacing: .3rem; padding: 1.5rem 7rem; align-items: center; background: #ee7820; }
@media screen and (max-width: 767px) { #contents__age h3 { font-size: 1rem; padding: 1rem 2rem; justify-content: center; } }
#contents__age h3::after { font-family: "Font Awesome 5 Free"; font-size: 2rem; font-weight: 900; content: "\f002"; color: #fff; margin-left: .5rem; }
@media screen and (max-width: 767px) { #contents__age h3::after { font-size: 1.2rem; } }

#contents__main, #contents__bottom--nav { max-width: 1190px; }

#contents__main { background: #eaf4eb; padding: 4rem 0 2rem; }
@media screen and (max-width: 767px) { #contents__main { padding: 0 0 2rem; } }
#contents__main h2 { display: inline-block; color: #fff; font-size: 1.3rem; font-weight: 900; letter-spacing: .3rem; padding: 1rem 7rem; align-items: center; width: auto; background: #019e97; }
@media screen and (max-width: 767px) { #contents__main h2 { font-size: 1rem; padding: 1rem 2rem; justify-content: center; text-align: center; width: 100%; } }

#contents__bottom--nav { background: #eaf4eb; padding: 0 7rem  3rem; }
@media screen and (min-width: 768px) and (max-width: 1024px) { #contents__bottom--nav { padding: 0 4rem 3rem; } }
@media screen and (max-width: 767px) { #contents__bottom--nav { padding: 0 1.5rem 4rem; } }
#contents__bottom--nav ul { display: flex; justify-content: flex-end; column-gap: 1rem; }
@media screen and (max-width: 767px) { #contents__bottom--nav ul { justify-content: center; row-gap: 1rem; flex-direction: column; align-items: center; } }
#contents__bottom--nav ul .btn a { display: flex; justify-content: space-between; width: auto; min-width: 250px; font-size: 1rem; font-weight: 900; letter-spacing: .1rem; padding: 1rem .5rem 1rem 1rem; word-wrap: break-word; border: 2px solid #019e97; text-align: left; background: #fff; color: #019e97; }
@media screen and (max-width: 767px) { #contents__bottom--nav ul .btn a { width: 60%; font-size: 1rem; padding: 1rem; } }
#contents__bottom--nav ul .btn a::after { content: ""; display: block; border-top: solid 0.3rem #fee100; border-right: solid 0.3rem #fee100; height: .7rem; width: .7rem; transform: rotate(45deg); margin: auto 0 auto .5rem; }

.article__wrap { display: grid; padding: 5rem 7rem; margin: 0 auto; grid-template-columns: repeat(12, 1fr); grid-template-rows: auto 1fr; grid-gap: 3rem 1.562vw; }
@media screen and (max-width: 767px) { .article__wrap { padding: 2rem 1.5rem; grid-gap: 1rem 3.562vw; } }

#contents__product .article { display: flex; flex-direction: column; grid-column: span 4; box-shadow: 3px 2px 10px rgba(0, 0, 0, 0.2); }
@media screen and (max-width: 767px) { #contents__product .article { grid-column: span 6; } }

#contents__character .article, #contents__age .article, #contents__main .article { display: flex; flex-direction: column; grid-column: span 3; box-shadow: 3px 2px 10px rgba(0, 0, 0, 0.2); }
@media screen and (min-width: 768px) and (max-width: 1024px) { #contents__character .article, #contents__age .article, #contents__main .article { grid-column: span 4; } }
@media screen and (max-width: 767px) { #contents__character .article, #contents__age .article, #contents__main .article { grid-column: span 6; } }

.article__thumb { width: 100%; height: auto; }
.article__title { flex-grow: 1; background: #f3fbfe; padding: 1rem; font-weight: 900; line-height: 1.5rem; color: #019e97; display: flex; justify-content: space-between; }
@media screen and (max-width: 767px) { .article__title { padding: .5rem; font-size: .7rem; line-height: 1rem; } }
.article__title::after { content: ""; display: block; border-top: solid 0.3rem #fee100; border-right: solid 0.3rem #fee100; height: .7rem; width: .7rem; transform: rotate(45deg); margin: auto 0 auto .5rem; }
@media screen and (max-width: 767px) { .article__title::after { border-top: solid 0.2rem #fee100; border-right: solid 0.2rem #fee100; height: .5rem; width: .5rem; } }
.article__title.title--white { background: #fff; }

#contents__age .btn { display: block; width: 100%; font-size: 1.2rem; font-weight: 900; letter-spacing: .1rem; padding: 1rem 1.5rem; word-wrap: break-word; border: 2px solid #afdddd; min-width: 0; text-align: left; background: #019e97; color: #fff; position: relative; height: 100%; }
#contents__age .btn::after { font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f105"; color: #fee100; margin-left: .2rem; position: absolute; right: 10px; top: 0; bottom: 0; display: flex; align-items: center; margin: auto; }
@media screen and (max-width: 767px) { #contents__age .btn { width: 100%; font-size: .9rem; padding: 1rem .5rem; } }
