@charset "UTF-8";
/* normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
html input[type=button] {
  -webkit-appearance: button;
  cursor: pointer;
}
html input[disabled] {
  cursor: default;
}

body {
  margin: 0;
  margin: 0;
  padding: 0;
}

article {
  display: block;
}

aside {
  display: block;
}

details {
  display: block;
}

figcaption {
  display: block;
}

figure {
  display: block;
  margin: 1em 40px;
}

footer {
  display: block;
}

header {
  display: block;
}

hgroup {
  display: block;
}

main {
  display: block;
}

menu {
  display: block;
}

nav {
  display: block;
}

section {
  display: block;
}

summary {
  display: block;
}

audio {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}

canvas {
  display: inline-block;
  vertical-align: baseline;
}

progress {
  display: inline-block;
  vertical-align: baseline;
}

video {
  display: inline-block;
  vertical-align: baseline;
}

[hidden] {
  display: none;
}

template {
  display: none;
}

a {
  background-color: transparent;
  vertical-align: top;
  display: inline-block;
}
a:active {
  outline: 0;
}
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b {
  font-weight: 700;
}

strong {
  font-weight: 700;
}

dfn {
  font-style: italic;
  font-style: normal;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
  margin: 0;
  padding: 0;
  font-size: 100%;
  text-align: left;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  bottom: -0.25em;
}

sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  top: -0.5em;
}

img {
  border: 0;
  border: 0;
  vertical-align: top;
  display: inline-block;
}

svg:not(:root) {
  overflow: hidden;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
  font-family: monospace;
  font-size: 1em;
  margin: 0;
  padding: 0;
}

code {
  font-family: monospace;
  font-size: 1em;
  font-style: normal;
}

kbd {
  font-family: monospace;
  font-size: 1em;
}

samp {
  font-family: monospace;
  font-size: 1em;
}

button {
  color: inherit;
  font: inherit;
  margin: 0;
  overflow: visible;
  text-transform: none;
  -webkit-appearance: button;
  cursor: pointer;
}
button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  color: inherit;
  font: inherit;
  margin: 0;
  line-height: normal;
  margin: 0;
  padding: 0;
  border: 0;
}
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

optgroup {
  color: inherit;
  font: inherit;
  margin: 0;
  font-weight: 700;
}

select {
  color: inherit;
  font: inherit;
  margin: 0;
  text-transform: none;
}

textarea {
  color: inherit;
  font: inherit;
  margin: 0;
  overflow: auto;
  margin: 0;
  padding: 0;
}

input[type=reset] {
  -webkit-appearance: button;
  cursor: pointer;
}

input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled] {
  cursor: default;
}

input[type=checkbox] {
  box-sizing: border-box;
  padding: 0;
}

input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

input[type=number]::-webkit-inner-spin-button {
  height: auto;
}
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
  margin: 0;
  padding: 0;
  border: 0;
}

legend {
  border: 0;
  padding: 0;
}

td {
  padding: 0;
  margin: 0;
  padding: 0;
}

th {
  padding: 0;
  margin: 0;
  padding: 0;
  font-style: normal;
  text-align: left;
}

blockquote {
  margin: 0;
  padding: 0;
}

dd {
  margin: 0;
  padding: 0;
}

div {
  margin: 0;
  padding: 0;
}

dl {
  margin: 0;
  padding: 0;
}

dt {
  margin: 0;
  padding: 0;
}

form {
  margin: 0;
  padding: 0;
}

h2 {
  margin: 0;
  padding: 0;
  font-size: 100%;
  text-align: left;
}

h3 {
  margin: 0;
  padding: 0;
  font-size: 100%;
  text-align: left;
}

h4 {
  margin: 0;
  padding: 0;
  font-size: 100%;
  text-align: left;
}

h5 {
  margin: 0;
  padding: 0;
  font-size: 100%;
  text-align: left;
}

h6 {
  margin: 0;
  padding: 0;
  font-size: 100%;
  text-align: left;
}

li {
  margin: 0;
  padding: 0;
}

ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

p {
  margin: 0;
  padding: 0;
}

ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

address {
  font-style: normal;
}

caption {
  font-style: normal;
  text-align: left;
}

cite {
  font-style: normal;
}

var {
  font-style: normal;
}

q:after {
  content: "";
}
q:before {
  content: "";
}

abbr {
  border: 0;
}

acronym {
  border: 0;
}

/******************************
共通
******************************/
* {
  box-sizing: border-box;
}
*:before {
  box-sizing: inherit;
}
*:after {
  box-sizing: inherit;
}

html {
  font-size: 62.5%;
}

body {
  position: relative;
  width: 100%;
  min-width: 1060px;
  font-size: 1.6rem;
  line-height: 1;
  font-family: YuGothic, "Yu Gothic", "ＭＳ Ｐゴシック", "MS PGothic", "Osaka", "ＭＳ ゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
  font-weight: 500;
  overflow-wrap: break-word;
  color: #010101;
  -webkit-text-size-adjust: 100%;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  -webkit-font-kerning: normal;
  font-kerning: normal;
}

body.narrow {
  max-width: 1040px;
  margin: 0 auto;
}

body.noShrink {
  min-width: 1080px;
}

a {
  outline: none;
  color: #010101;
  text-decoration: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
a:link {
  text-decoration: none;
}
a:visited {
  text-decoration: none;
}
a:hover {
  text-decoration: none;
}
a:active {
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
}

input {
  outline: none;
  color: #010101;
  text-decoration: none;
}

.pcNone {
  display: none !important;
}

.noto {
  font-family: "Noto Sans JP", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif !important;
}

.oswald {
  font-family: "Oswald", sans-serif !important;
  font-weight: 700;
}

/* 背景の雲（リニューアル） */
.cloud {
  position: relative;
  width: 100%;
  height: 0;
  z-index: 10;
}
.cloud .bg-editor-cloud-02 {
  position: absolute;
  inset: -55px 0 auto auto;
}
.cloud .bg-top-cloud-01 {
  position: absolute;
  inset: -52px calc(50% - 627px) auto auto;
  z-index: 1;
}

/******************************
ヘッダー
******************************/
.header {
  display: none !important;
}

.headerTop {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  max-width: 1170px;
  width: 96%;
  margin: 0 auto;
  padding: 26px 0 25px;
}
.headerTop > div {
  display: block;
}
.headerTop .headerLogo {
  padding-top: 8px;
}
.headerTop .headerLink {
  text-align: right;
}
.headerTop .headerLink .headerLinkTop {
  display: -webkit-box;
  display: flex;
}
.headerTop .headerLink .headerLinkTop .headerTxtLink ul {
  display: -webkit-box;
  display: flex;
}
.headerTop .headerLink .headerLinkTop .headerTxtLink ul li {
  margin-right: 28px;
}
.headerTop .headerLink .headerLinkTop .headerTxtLink ul li a {
  color: #818181;
  font-size: 1.2rem;
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}
.headerTop .headerLink .headerLinkTop .headerTxtLink ul li a:hover {
  opacity: 0.8;
}
.headerTop .headerLink .headerLinkTop .headerTxtLink ul li a img {
  margin-left: 7px;
  vertical-align: middle;
}
.headerTop .headerLink .headerLinkTop .headerSns {
  width: auto;
}
.headerTop .headerLink .headerLinkTop .headerSns ul {
  display: -webkit-box;
  display: flex;
  letter-spacing: 0;
}
.headerTop .headerLink .headerLinkTop .headerSns ul li {
  margin-right: 23px;
  font-size: 18px;
  letter-spacing: 0;
}
.headerTop .headerLink .headerLinkTop .headerSns ul li:last-of-type {
  margin-right: 0;
}
.headerTop .headerLink .headerLinkTop .headerSns ul li a {
  color: #a3a4a4;
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}
.headerTop .headerLink .headerLinkTop .headerSns ul li a:hover {
  opacity: 0.8;
}
.headerTop .headerLink .gnav {
  margin-top: 28px;
}
.headerTop .headerLink .gnav ul {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
}
.headerTop .headerLink .gnav ul li:not(:first-of-type) {
  margin-left: 48px;
}
.headerTop .headerLink .gnav ul li a {
  font-weight: 800;
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}
.headerTop .headerLink .gnav ul li a:hover {
  color: #f60;
}

/*ナビゲーション*/
.headerBottom {
  background: #eeedeb;
}
.headerBottom .subNav > ul {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  position: static;
  max-width: 1170px;
  width: 96%;
  min-width: 960px;
  margin: 0 auto;
  padding: 14px 0;
  font-size: normal;
  text-align: left;
}
.headerBottom .subNav > ul > li {
  font-size: 1.2rem;
  letter-spacing: 0;
}
.headerBottom .subNav > ul > li:first-of-type {
  margin-right: -10px;
}
.headerBottom .subNav > ul > li:nth-of-type(2) {
  width: 30.769%;
}
.headerBottom .subNav > ul > li a {
  display: inline-block;
  position: relative;
  padding: 0;
  color: #222;
  font-weight: bold;
  line-height: 30px;
  text-decoration: none;
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
  vertical-align: middle;
}
.headerBottom .subNav > ul > li a img {
  margin-right: 11px;
  vertical-align: middle;
}
.headerBottom .subNav > ul > li span {
  display: inline-block;
  position: relative;
  padding: 0;
  color: #222;
  font-weight: bold;
  line-height: 30px;
  text-decoration: none;
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
  vertical-align: middle;
}
.headerBottom .subNav > ul > li span img {
  margin-right: 11px;
  vertical-align: middle;
}
.headerBottom .subNav > ul > li.subNavSearchBtn {
  position: relative;
}
.headerBottom .subNav > ul > li.subNavSearchBtn a {
  display: block !important;
}
.headerBottom ul li:hover {
  background: transparent;
}
.headerBottom ul li:hover .inlist {
  background: transparent;
}

/*フォーム要素*/
.headerSearch {
  max-width: 100%;
  text-align: left;
}
.headerSearch form {
  display: block;
  position: relative;
  width: 100%;
}
.headerSearch form input[type=text] {
  width: 100%;
  padding: 6px 30px 4px 14px;
  color: #323232;
  font-size: 1.3rem;
  border: none;
  border-radius: 5px;
}
.headerSearch form button {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  padding: 0 10px 0 5px;
  color: #696969;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.headerSearch input::-moz-placeholder {
  color: #999;
  color: #999;
}
.headerSearch input::-webkit-input-placeholder {
  color: #999;
}
.headerSearch input::placeholder {
  color: #999;
}
.headerSearch input::-webkit-input-placeholder {
  color: #999;
}
.headerSearch input:-ms-input-placeholder {
  color: #999;
}

.primaryHeader {
  position: relative;
  width: 100%;
  height: 95px;
  background-color: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 100;
}
.primaryHeader .logo-white {
  display: none !important;
}
.primaryHeader .logo-orange {
  display: inline-block !important;
}
.primaryHeader__inner {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: min(100%, 1400px);
  height: 100%;
  margin-inline: auto;
  padding: 0 40px;
}
.primaryHeader__inner .headerLogo {
  width: 275px;
  padding-bottom: 0;
}
.primaryHeader__inner .headerLogo img {
  width: 100%;
  height: auto;
}

body.top-page .primaryHeader {
  position: absolute;
  inset: 0 auto auto 0;
  height: 100px;
  background-color: transparent;
}
body.top-page .primaryHeader .logo-white {
  display: inline-block !important;
}
body.top-page .primaryHeader .logo-orange {
  display: none !important;
}
body.top-page .primaryHeader__inner {
  position: relative;
  z-index: 0;
}
body.top-page .primaryHeader__inner::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 74.666%;
  height: 100%;
  margin: auto;
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.6) 0%, transparent 100%);
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.6) 0%, transparent 100%);
  z-index: -1;
}

.hamburgerBtn {
  position: fixed;
  top: 36px;
  right: 30px;
  opacity: 1;
  z-index: 1003;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media (min-width: 1400px) {
  .hamburgerBtn {
    right: calc(50% - 670px);
  }
}
.hamburgerBtn__btn {
  position: absolute;
  inset: 0 0 auto auto;
  width: 35px;
  height: 20px;
  background: none;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}
.hamburgerBtn__btn span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #000;
  border-radius: 1px;
}
.hamburgerBtn__btn span:nth-of-type(1) {
  top: 0;
}
.hamburgerBtn__btn span:nth-of-type(2) {
  top: 9px;
}
.hamburgerBtn__btn span:nth-of-type(3) {
  bottom: 0;
  width: 25px;
}

body.menuOpen .hamburgerBtn {
  opacity: 0;
}

/*固定時*/
.headerFixed.nopankuzu {
  box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.2);
}

/* リニューアル */
.headerFixed {
  position: fixed;
  inset: -100px auto auto 0;
  width: 100%;
  height: 95px;
  background-color: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 100;
}
.headerFixed__inner {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: min(100%, 1400px);
  height: 100%;
  margin-inline: auto;
  padding: 0 40px;
}
.headerFixed__inner .headerLogo {
  width: 275px;
  padding-bottom: 0;
}
.headerFixed__inner .headerLogo img {
  width: 100%;
  height: auto;
}

/*サイドナビゲーション*/
.menuOpen .sideNav {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  visibility: visible;
  opacity: 1;
}

.sideNav {
  position: fixed;
  inset: 0 0 auto;
  width: 100%;
  margin: 0;
  padding-bottom: 80px;
  background: #333;
  z-index: 1002;
  -webkit-transform: translateY(-120%);
          transform: translateY(-120%);
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out, -webkit-transform 0.2s linear;
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out, -webkit-transform 0.2s linear;
  transition: opacity 0.2s ease-in-out, transform 0.2s linear, visibility 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out, transform 0.2s linear, visibility 0.2s ease-in-out, -webkit-transform 0.2s linear;
}
.sideNav a {
  color: #fff;
}
.sideNav .sideNavHead {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  width: min(100%, 1400px);
  height: 94px;
  margin-inline: auto;
  padding-inline: 40px 38px;
}
.sideNav .sideNavHead .logo img {
  width: 260px;
  height: auto;
}
.sideNav .sideNavHead .sideNavCloseBtn {
  position: relative;
  top: 0;
  right: 0;
  width: 34px;
  height: 34px;
  font-size: 0;
  cursor: pointer;
  border-radius: 0;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.sideNav .sideNavHead .sideNavCloseBtn::before {
  content: "";
  width: 30px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.sideNav .sideNavHead .sideNavCloseBtn::after {
  content: "";
  width: 30px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.sideNav .sideNavIn {
  width: min(96%, 1170px);
  margin-top: 70px;
  margin-inline: auto;
}
.sideNav .sideNavIn .sideNavInList > ul {
  display: grid;
  grid-template-rows: repeat(3, 55px);
  grid-template-columns: repeat(3, 1fr);
  grid-template-areas: "a b b" "c d f" "c e g" "c e h";
  gap: 50px 5.128%;
}
.sideNav .sideNavIn .sideNavInList > ul > li:first-of-type {
  grid-area: a;
}
.sideNav .sideNavIn .sideNavInList > ul > li:nth-of-type(3) {
  grid-area: c;
}
.sideNav .sideNavIn .sideNavInList > ul > li:nth-of-type(4) {
  grid-area: d;
}
.sideNav .sideNavIn .sideNavInList > ul > li:nth-of-type(5) {
  grid-area: e;
}
.sideNav .sideNavIn .sideNavInList > ul > li:nth-of-type(6) {
  grid-area: f;
}
.sideNav .sideNavIn .sideNavInList > ul > li:nth-of-type(7) {
  grid-area: g;
  margin-top: -50px;
}
.sideNav .sideNavIn .sideNavInList > ul > li:nth-of-type(8) {
  grid-area: h;
  margin-top: -100px;
}
.sideNav .sideNavIn .sideNavInList > ul > li > a {
  display: block;
  position: relative;
  padding: 18px 0;
  border-bottom: 1px solid #cdcdcd;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  color: #fff;
  -webkit-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out;
}
.sideNav .sideNavIn .sideNavInList > ul > li > a:hover {
  background-color: #555;
}
.sideNav .sideNavIn .sideNavInList > ul > li .inList ul li {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
}
.sideNav .sideNavIn .sideNavInList > ul > li .inList ul li a {
  display: block;
  padding: 16px 0 16px 16px;
  border-bottom: 1px solid #cdcdcd;
  -webkit-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out;
}
.sideNav .sideNavIn .sideNavInList > ul > li .inList ul li a::before {
  content: "- ";
  margin: auto 0;
  color: #fff;
}
.sideNav .sideNavIn .sideNavInList > ul > li .inList ul li a:hover {
  background-color: #555;
}
.sideNav .sideNavIn .sideNavInList > ul > li.search {
  grid-area: b;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}
.sideNav .sideNavIn .sideNavInList > ul > li.search > a {
  padding: 0;
  border-bottom: none;
}
.sideNav .sideNavIn .sideNavInList > ul > li.search > a:hover {
  background-color: transparent;
}
.sideNav .sideNavIn .sideNavInList > ul > li.search > .inList {
  -webkit-box-flex: 1;
          flex: 1 0 auto;
}
.sideNav .sideNavIn .sideNavInList > ul > li.search .sideNavSearchForm {
  padding-left: 27px;
}
.sideNav .sideNavIn .sideNavInList > ul > li.search .sideNavSearchForm form {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  position: relative;
  width: 100%;
  height: 36px;
  margin-inline: auto;
  padding: 0 20px;
  border: 1px solid #fff;
  border-radius: 18px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.sideNav .sideNavIn .sideNavInList > ul > li.search .sideNavSearchForm form input {
  font: inherit;
  color: #fff;
  border: none;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.sideNav .sideNavIn .sideNavInList > ul > li.search .sideNavSearchForm form button {
  position: absolute;
  inset: 0 20px 0 auto;
  padding: 0;
  font: inherit;
  border: none;
  background: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.sideNav .sideNavIn .sideNavInBottom {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  margin-top: 80px;
}
.sideNav .sideNavIn .sideNavSns {
  -webkit-box-ordinal-group: 3;
          order: 2;
}
.sideNav .sideNavIn .sideNavSns ul {
  width: 306px;
  display: -webkit-box;
  display: flex;
  justify-content: space-around;
}
.sideNav .sideNavIn .sideNavSns ul li a {
  -webkit-transition: color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out;
}
.sideNav .sideNavIn .sideNavSns ul li a i {
  font-size: 28px;
  color: #fff;
}
.sideNav .sideNavIn .sideNavSns ul li a:hover i {
  color: #cdcdcd;
}
.sideNav .sideNavIn .sideNavRelation {
  -webkit-box-ordinal-group: 2;
          order: 1;
}
.sideNav .sideNavIn .sideNavRelation ul {
  display: -webkit-box;
  display: flex;
}
.sideNav .sideNavIn .sideNavRelation ul li:first-of-type {
  margin-right: 53px;
}
.sideNav .sideNavIn .sideNavRelation ul li a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}
.sideNav .sideNavIn .sideNavRelation ul li a span {
  display: inline-block;
  margin-right: 5px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  color: #fff;
  -webkit-transition: color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out;
}
.sideNav .sideNavIn .sideNavRelation ul li a:hover span {
  color: #cdcdcd;
}
.sideNav .sideNavIn .sideNavRelation ul li a svg {
  width: 13px;
  margin-top: 5px;
}

/*サイドナビゲーション*/
/* レシピ検索（全画面） */
.searchOpen .recipeSearch {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  visibility: visible;
}

.recipeSearch {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100vw;
  max-width: auto;
  max-width: initial;
  height: 100vh;
  padding: 96px 0 30px;
  font-size: 1.2rem;
  background: #fff;
  z-index: 1002;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  visibility: hidden;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}
.recipeSearch .recipeSearchHead {
  padding: 0 20px;
}
.recipeSearch .recipeSearchHead .recipeSearchCloseBtn {
  position: relative;
  float: right;
  width: 36px;
  height: 36px;
  margin: 0 40px 0 0;
  padding: 0;
  font-size: 0;
  cursor: pointer;
  border-radius: 0;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.recipeSearch .recipeSearchHead .recipeSearchCloseBtn:hover {
  background: rgba(255, 255, 255, 0.2);
}
.recipeSearch .recipeSearchHead .recipeSearchCloseBtn::before {
  content: "";
  width: 51px;
  height: 1px;
  background: #000;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.recipeSearch .recipeSearchHead .recipeSearchCloseBtn::after {
  content: "";
  width: 51px;
  height: 1px;
  background: #000;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.recipeSearch .recipeSearchHead .recipeSearchTit {
  color: #222;
  font-size: 3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
}
.recipeSearch .recipeSearchCont {
  margin: 42px auto 0;
  max-width: 643px;
}
.recipeSearch .recipeSearchCont .recipeSearchForm {
  width: 100%;
}
.recipeSearch .recipeSearchCont .recipeSearchForm form {
  display: block;
  position: relative;
  width: 100%;
}
.recipeSearch .recipeSearchCont .recipeSearchForm form input[type=text] {
  width: 100%;
  padding: 25px 60px 25px 30px;
  color: #323232;
  font-size: 1.8rem;
  background: #eeedeb;
  border: none;
  border-radius: 5px;
}
.recipeSearch .recipeSearchCont .recipeSearchForm form button {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  padding: 0 22px 0 5px;
  color: #000;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.recipeSearch .recipeSearchCont .recipeSearchForm form button i {
  font-size: 30px;
}
.recipeSearch .recipeSearchCont .recipeSearchList .recipeSearchListTit {
  margin-top: 44px;
  padding: 0 20px;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
}
.recipeSearch .recipeSearchCont .recipeSearchList .recipeSearchListTit img {
  width: 18px;
  margin-right: 17px;
}
.recipeSearch .recipeSearchCont .recipeSearchList ul.recipeList {
  margin-top: 18px;
}
.recipeSearch .recipeSearchCont .recipeSearchList ul.recipeList li.hasInList::after {
  width: 6px;
  height: 6px;
}
.recipeSearch .recipeSearchCont .recipeSearchList ul.recipeList li:nth-of-type(12)::after {
  left: auto;
  right: 28px;
}
.recipeSearch .recipeSearchCont .recipeSearchList .contBtn {
  margin-top: 20px;
}
.recipeSearch .recipeSearchCont .recipeSearchList .contBtn a {
  max-width: 180px;
  height: 50px;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
  border-radius: 25px;
}

.recipeSearchForm input::-moz-placeholder {
  color: #999;
  color: #999;
}
.recipeSearchForm input::-webkit-input-placeholder {
  color: #999;
}
.recipeSearchForm input::placeholder {
  color: #999;
}
.recipeSearchForm input::-webkit-input-placeholder {
  color: #999;
}
.recipeSearchForm input:-ms-input-placeholder {
  color: #999;
}

/******************************
フロートメニュー
******************************/
.floatMenuPc {
  position: fixed;
  inset: auto 0 0 0;
  width: 100%;
  height: 68px;
  background-color: rgba(0, 0, 0, 0.9);
  z-index: 1000;
  -webkit-transform: translateY(120%);
          transform: translateY(120%);
  visibility: hidden;
  opacity: 0;
  -webkit-transition: visibility 0.45s linear, opacity 0.45s linear, -webkit-transform 0.35s ease-in-out;
  transition: visibility 0.45s linear, opacity 0.45s linear, -webkit-transform 0.35s ease-in-out;
  transition: transform 0.35s ease-in-out, visibility 0.45s linear, opacity 0.45s linear;
  transition: transform 0.35s ease-in-out, visibility 0.45s linear, opacity 0.45s linear, -webkit-transform 0.35s ease-in-out;
}
.floatMenuPc.is-show {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  visibility: visible;
  opacity: 1;
}
.floatMenuPc__inner {
  display: -webkit-box;
  display: flex;
  width: min(100%, 1170px);
  height: 100%;
  margin-inline: auto;
  padding-left: 20px;
  padding-right: 20px;
}
.floatMenuPc .floatMenuSearch {
  -webkit-box-flex: 0;
          flex: 0 0 420px;
  display: grid;
  place-items: center;
  max-width: 420px;
  height: 100%;
}
.floatMenuPc .floatMenuSearch form {
  display: block;
  position: relative;
  width: 100%;
  height: 32px;
}
.floatMenuPc .floatMenuSearch form input[type=text] {
  width: 100%;
  height: 100%;
  padding-left: 38px;
  border: 1px solid #fff;
  border-radius: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  color: #fff;
  background-color: transparent;
}
.floatMenuPc .floatMenuSearch form input[type=text]::-moz-placeholder {
  color: #fff;
}
.floatMenuPc .floatMenuSearch form input[type=text]::-webkit-input-placeholder {
  color: #fff;
}
.floatMenuPc .floatMenuSearch form input[type=text]::placeholder {
  color: #fff;
}
.floatMenuPc .floatMenuSearch form input[type=text]::-webkit-input-placeholder {
  color: #fff;
}
.floatMenuPc .floatMenuSearch form button {
  display: block;
  position: absolute;
  inset: 0 auto 0 6px;
  margin: auto 0;
  padding: 0 5px;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.floatMenuPc .floatMenuList {
  -webkit-box-flex: 0;
          flex: 0 1 calc(100% - 410px);
  margin-left: 30px;
}
.floatMenuPc .floatMenuList__list {
  display: -webkit-box;
  display: flex;
  width: 100%;
  height: 100%;
}
.floatMenuPc .floatMenuList__item {
  -webkit-box-flex: 0;
          flex: 0 1 180px;
}
.floatMenuPc .floatMenuList__item:not(:first-of-type) {
  border-left: 2px solid #000;
}
.floatMenuPc .floatMenuList__item a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  font-size: 1.6rem;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.floatMenuPc .floatMenuList__item a:hover {
  background-color: #666;
}
.floatMenuPc .floatMenuList__icon {
  display: inline-block;
  margin-right: 8px;
}
.floatMenuPc .floatMenuList__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  color: #fff;
}

/* レシピ検索（サブメニュープルダウン） */
.subNavSearchOpen {
  position: relative;
}
.subNavSearchOpen .subNavSearch {
  visibility: visible;
  opacity: 1;
  -webkit-transition: 0.2s linear;
  transition: 0.2s linear;
}

.subNavSearch {
  position: absolute;
  top: 44px;
  right: 50%;
  width: 680px !important;
  min-width: auto;
  min-width: initial !important;
  background: #fff;
  -webkit-transform: translateX(340px);
  transform: translateX(340px);
  -webkit-transition: 0;
  transition: 0;
  visibility: hidden;
  opacity: 0;
  z-index: 1003;
}
.subNavSearch::before {
  content: "";
  position: absolute;
  top: -10px;
  left: 0;
  right: 0;
  width: 16px;
  height: 10px;
  margin: 0 auto;
  border-top: none;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 10px solid #fff;
}
.subNavSearch .subNavSearchCont {
  padding: 20px;
}
.subNavSearch .subNavSearchCont .subNavSearchList {
  padding: 0;
}
.subNavSearch .subNavSearchCont .subNavSearchList ul.recipeList li a {
  line-height: 1.25 !important;
}
.subNavSearch .subNavSearchCont .subNavSearchList ul.recipeList li .inListChild {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  width: 640px;
}
.subNavSearch .subNavSearchCont .subNavSearchList ul.recipeList li.hasInList::after {
  content: "";
  position: absolute;
  bottom: 10px;
  left: 0;
  right: 0;
  width: 8px;
  height: 8px;
  margin: 0 auto;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.subNavSearch .subNavSearchCont .subNavSearchList ul.recipeList li.hasInList.open {
  background: #dcdbd9;
}
.subNavSearch .subNavSearchCont .subNavSearchList ul.recipeList li.hasInList.open::after {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.subNavSearch .subNavSearchCont .subNavSearchList .contBtn {
  margin: 20px 0 0;
}
.subNavSearch .subNavSearchCont .subNavSearchList .contBtn a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  max-width: 180px;
  height: 50px;
  margin: 0 auto;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
  border-radius: 25px;
}

/* レシピ検索リスト（共通） */
ul.recipeList {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  min-width: auto;
  min-width: initial !important;
  border: 2px solid #f6f6f6;
}
ul.recipeList li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: table;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  width: 16.666% !important;
  height: 50px;
}
ul.recipeList li a {
  display: table-cell !important;
  color: #222;
  font-size: 1.1rem;
  font-weight: 800;
  line-height: 1.363;
  letter-spacing: 0;
  vertical-align: middle;
  text-align: center;
}
ul.recipeList li a:hover {
  text-decoration: none;
}
ul.recipeList li a:active {
  text-decoration: none;
}
ul.recipeList li:nth-of-type(2) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(4) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(6) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(7) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(9) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(11) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(14) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(16) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(18) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(19) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(21) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(23) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(26) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(28) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(30) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(31) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(33) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(35) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(38) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(40) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(42) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(43) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(45) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(47) {
  background: #f6f6f6;
}
ul.recipeList li:nth-of-type(12)::after {
  left: auto;
  right: 28px;
}
ul.recipeList li .inListChild {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 0;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  z-index: 2;
  padding: 18px;
  background: #dcdbd9;
}
ul.recipeList li .inListChild ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  min-width: auto;
  min-width: initial !important;
  margin: 0;
  padding: 0;
  background: #dcdbd9;
}
ul.recipeList li .inListChild ul li {
  width: 16.666%;
  height: 40px;
  background: #fff !important;
}
ul.recipeList li .inListChild ul li:nth-of-type(n-6) {
  border-top: 1px solid #dcdbd9;
}
ul.recipeList li .inListChild ul li:not(:nth-of-type(6n+1)) {
  border-left: 1px solid #dcdbd9;
}
ul.recipeList li .inListChild ul li a {
  display: block;
  color: #222;
  font-size: 1.1rem;
  font-weight: 800;
  line-height: 1.363;
  letter-spacing: 0;
  text-align: center;
}
ul.recipeList li.hasInList::after {
  content: "";
  position: absolute;
  bottom: 10px;
  left: 0;
  right: 0;
  margin: 0 auto;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transition: 0.2s linear;
  transition: 0.2s linear;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: 50% 80%;
  transform-origin: 50% 80%;
}
ul.recipeList li.hasInList.open {
  background: #dcdbd9;
}
ul.recipeList li.hasInList.open::after {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
ul.recipeList li.hasInList.open .inListChild {
  height: auto;
  visibility: visible;
  opacity: 1;
}

/******************************
コンテンツ共通要素
******************************/
.cont {
  min-height: 50vh;
  max-width: 1170px;
  min-width: 1060px;
  width: 96%;
  margin: 0 auto;
  padding-top: 50px;
}
.cont:after {
  content: "";
  display: block;
  clear: both;
}
.cont.flex {
  display: -webkit-box;
  display: flex;
  width: min(100%, 1170px);
  max-width: 100%;
  padding-top: 0;
}
@media (max-width: 1217px) {
  .cont.flex {
    padding-inline: 2%;
  }
}

.cont.contPb {
  padding-bottom: 80px;
}

.cont.contPtNone {
  padding-top: 0;
}

.contFullWidth {
  min-height: auto;
  max-width: auto;
  min-height: initial;
  max-width: 100%;
  width: 100%;
  padding: 0;
  background: #eee;
}

.addHead + .cont {
  padding-top: 30px;
}

.contTitHead {
  border-bottom: none;
  padding-bottom: 10px;
  margin-bottom: 30px;
}

.contTit {
  font-size: 4rem;
  font-family: "Noto Sans", sans-serif;
  letter-spacing: 0.04em;
  line-height: 1.2;
  text-align: center;
  min-height: 1px;
}
.contTit span {
  display: block;
  margin-top: 3px;
  font-family: YuGothic, "Yu Gothic", "ＭＳ Ｐゴシック", "MS PGothic", "Osaka", "ＭＳ ゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  color: #666;
  font-weight: bold;
}
.contTit .red {
  color: #e35c4b;
}

.contTitHead.jp {
  border-bottom: solid 1px #ddd;
  padding-bottom: 15px;
  margin-bottom: 20px;
}
.contTitHead.jp .contTit {
  font-size: 2.6rem;
}

.contLead {
  font-size: 1.4rem;
  letter-spacing: 0.12em;
  line-height: 1.55;
}

.contBtn a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  position: relative;
  width: 50%;
  max-width: 340px;
  height: 70px;
  margin: 0 auto;
  padding: 0;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
  background: #2d2c29;
  border-radius: 35px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.contBtn a::before {
  content: none;
}
.contBtn a:hover {
  background: #666;
}

.contBtn--small a {
  width: 180px;
  height: 50px;
  border-radius: 25px;
}

.linkBtn a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  position: relative;
  width: min(100%, 340px);
  height: 60px;
  margin: 0 auto;
  padding: 0;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  background-color: #222;
  border-radius: 30px;
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}
.linkBtn a svg {
  position: absolute;
  inset: auto 30px auto auto;
  width: 18px;
}
.linkBtn a:hover {
  background-color: #666;
}
.linkBtn--side a {
  height: 50px;
  border-radius: 25px;
  font-size: 1.3rem;
}

.contTxt {
  font-size: 1.4rem;
  line-height: 2.15;
  color: #444;
}
.contTxt .lead {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.09em;
  line-height: 1.65;
  display: block;
  margin-bottom: 20px;
}

.addHead {
  text-align: center;
  margin-top: 30px;
}
.addHead img {
  width: 100%;
  height: auto;
}

.addSideWrap {
  margin-top: 80px;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
}
.addSideWrap .addSide + .addSide {
  margin-left: 40px;
}

/* カテゴリータグ */
.cateTags {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  position: absolute;
  bottom: 0;
  left: 0;
  letter-spacing: -0.4em;
}
.cateTags .cateTagsItem {
  display: inline-block;
  width: auto !important;
  margin: 3px 5px 0 0 !important;
  letter-spacing: normal;
  clear: none;
}
.cateTags .cateTagsItem span {
  display: block;
  min-width: 40px;
  padding: 5px 7px;
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  white-space: nowrap;
  border-radius: 4px;
}
.cateTags .cateTagsItem.catFood span {
  background: #e5b8b7;
}
.cateTags .cateTagsItem.catHealth span {
  background: #a9c6d5;
}
.cateTags .cateTagsItem.catLife span {
  background: #a2cdca;
}
.cateTags .cateTagsItem.catCulture span {
  background: #bab2c9;
}
.cateTags .cateTagsItem.catBeauty span {
  background: #eac4aa;
}
.cateTags .cateTagsItem.catOuting span {
  background: #eddcb4;
}

.articleDetailTag ul li a.food {
  background: #e5b8b7;
}
.articleDetailTag ul li a.health {
  background: #a9c6d5;
}
.articleDetailTag ul li a.life {
  background: #a2cdca;
}
.articleDetailTag ul li a.culture {
  background: #bab2c9;
}
.articleDetailTag ul li a.beauty {
  background: #eac4aa;
}
.articleDetailTag ul li a.outing {
  background: #eddcb4;
}

/*Books*/
.recipesBooksSliderSection {
  margin-top: 75px;
}
.recipesBooksSliderSection .booksList .booksSlider .slick-track {
  padding: 30px 0 45px;
}
.recipesBooksSliderSection .booksList .booksSlider li.slick-slide {
  width: 130px;
  padding: 0 5px;
  text-align: center;
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
}
.recipesBooksSliderSection .booksList .booksSlider li.slick-slide a .img {
  width: 120px;
  height: 150px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  text-decoration: none;
  overflow: hidden;
}
.recipesBooksSliderSection .booksList .booksSlider li.slick-slide a .booksTit {
  max-width: 10em;
  margin-top: 8px;
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 1.385;
  text-align: center;
}
.recipesBooksSliderSection .booksList .booksSlider li.slick-slide.large {
  -webkit-transform: scale(1.333, 1.333);
  transform: scale(1.333, 1.333);
}
.recipesBooksSliderSection .booksList .booksSlider li.slick-slide.fast {
  -webkit-transition: none !important;
  transition: none !important;
}
.recipesBooksSliderSection .contBtn {
  margin-top: 65px;
}

.rankingsSliderSection {
  margin-top: 75px;
}
.rankingsSliderSection .booksList .booksSlider .slick-track {
  padding: 30px 0 45px;
}
.rankingsSliderSection .booksList .booksSlider li.slick-slide {
  width: 130px;
  padding: 0 5px;
  text-align: center;
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
}
.rankingsSliderSection .booksList .booksSlider li.slick-slide a .img {
  width: 120px;
  height: 150px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  text-decoration: none;
  overflow: hidden;
}
.rankingsSliderSection .booksList .booksSlider li.slick-slide a .booksTit {
  max-width: 10em;
  margin-top: 8px;
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 1.385;
  text-align: center;
}
.rankingsSliderSection .booksList .booksSlider li.slick-slide.large {
  -webkit-transform: scale(1.333, 1.333);
  transform: scale(1.333, 1.333);
}
.rankingsSliderSection .booksList .booksSlider li.slick-slide.fast {
  -webkit-transition: none !important;
  transition: none !important;
}
.rankingsSliderSection .contBtn {
  margin-top: 65px;
}

.topSection--books {
  margin-top: 50px;
}
.topSection--books .booksList .booksSlider .slick-track {
  padding: 30px 0 45px;
}
.topSection--books .booksList .booksSlider li.slick-slide {
  width: 130px;
  padding: 0 5px;
  text-align: center;
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
}
.topSection--books .booksList .booksSlider li.slick-slide a .img {
  width: 120px;
  height: 150px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  text-decoration: none;
  overflow: hidden;
}
.topSection--books .booksList .booksSlider li.slick-slide a .booksTit {
  max-width: 10em;
  margin-top: 8px;
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 1.385;
  text-align: center;
}
.topSection--books .booksList .booksSlider li.slick-slide.large {
  -webkit-transform: scale(1.333, 1.333);
  transform: scale(1.333, 1.333);
}
.topSection--books .booksList .booksSlider li.slick-slide.fast {
  -webkit-transition: none !important;
  transition: none !important;
}
.topSection--books .contBtn {
  margin-top: 65px;
}

.catSection--books .booksList .booksSlider .slick-track {
  padding: 30px 0 45px;
}
.catSection--books .booksList .booksSlider li.slick-slide {
  width: 130px;
  padding: 0 5px;
  text-align: center;
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
}
.catSection--books .booksList .booksSlider li.slick-slide a .img {
  width: 120px;
  height: 150px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  text-decoration: none;
  overflow: hidden;
}
.catSection--books .booksList .booksSlider li.slick-slide a .booksTit {
  max-width: 10em;
  margin-top: 8px;
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 1.385;
  text-align: center;
}
.catSection--books .booksList .booksSlider li.slick-slide.large {
  -webkit-transform: scale(1.333, 1.333);
  transform: scale(1.333, 1.333);
}
.catSection--books .booksList .booksSlider li.slick-slide.fast {
  -webkit-transition: none !important;
  transition: none !important;
}

.catSection.catSection--books .contBtn {
  margin-top: 65px;
}

@media screen and (max-width: 1195px) {
  .topSection--books .booksList .booksSlider li.slick-slide.large {
    -webkit-transform: scale(1.15, 1.15);
    transform: scale(1.15, 1.15);
  }
  .catSection--books .booksList .booksSlider li.slick-slide.large {
    -webkit-transform: scale(1.15, 1.15);
    transform: scale(1.15, 1.15);
  }
}
@media screen and (max-width: 1080px) {
  .topSection--books .booksList .booksSlider li.slick-slide.large {
    -webkit-transform: scale(1.08, 1.08);
    transform: scale(1.08, 1.08);
  }
  .catSection--books .booksList .booksSlider li.slick-slide.large {
    -webkit-transform: scale(1.08, 1.08);
    transform: scale(1.08, 1.08);
  }
}
/******************************
左コンテンツ
******************************/
/* リニューアル後のレイアウト */
.cont.flex .contLeft {
  -webkit-box-flex: 0;
          flex: 0 1 760px;
  max-width: 64.958% !important;
  margin-right: auto;
  float: none !important;
}

.contLeft {
  max-width: 820px;
  width: calc(100% - 320px);
  float: left;
}

.contLeft.contSingle {
  max-width: 850px;
  width: 100%;
  margin: 0 auto;
  float: none;
  position: relative;
}

.notesBox {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.8);
  text-align: center;
}
.notesBox p {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.7;
  color: #ea93be;
  display: inline-block;
  margin-top: 30%;
}

/* 共通ページャー */
.pagingList {
  margin-top: 20px;
}
.pagingList ul {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
}
.pagingList ul li {
  width: 40px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 40px;
  letter-spacing: 0;
  text-align: center;
}
.pagingList ul li a {
  display: block;
  color: #222;
}
.pagingList ul li + li {
  margin-left: 5px;
}
.pagingList ul li.active {
  background: #eeedeb;
  border-radius: 50%;
}
.pagingList ul li.active a {
  color: #f60;
}
.pagingList ul li.next a {
  position: relative;
}
.pagingList ul li.next a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 9px;
  height: 9px;
  border-right: 2px solid #222;
  border-bottom: 2px solid #222;
  margin: auto;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.pagingList ul li.prev a {
  position: relative;
}
.pagingList ul li.prev a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 9px;
  height: 9px;
  border-left: 2px solid #222;
  border-bottom: 2px solid #222;
  margin: auto;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pagingList ul li.last a {
  position: relative;
}
.pagingList ul li.last a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  right: 0;
  width: 9px;
  height: 9px;
  border-right: 2px solid #222;
  border-bottom: 2px solid #222;
  margin: auto;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.pagingList ul li.last a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 9px;
  height: 9px;
  border-right: 2px solid #222;
  border-bottom: 2px solid #222;
  margin: auto;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.pagingList ul li.first a {
  position: relative;
}
.pagingList ul li.first a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 10px;
  width: 9px;
  height: 9px;
  border-left: 2px solid #222;
  border-bottom: 2px solid #222;
  margin: auto;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pagingList ul li.first a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 9px;
  height: 9px;
  border-left: 2px solid #222;
  border-bottom: 2px solid #222;
  margin: auto;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/******************************
右コンテンツ
******************************/
/* リニューアル後のレイアウト */
.cont.flex .contRight {
  -webkit-box-flex: 0;
          flex: 0 1 300px;
  width: max(300px, 25.642%);
  margin-left: 3.6%;
  float: none !important;
}

/* 料理のきほんページ */
.contPtNone .contRight {
  margin-top: -97px;
}

.contRight.pt {
  padding-top: 20px;
}

.contRight {
  position: relative;
  max-width: 300px;
  min-width: 280px;
  width: 25.641%;
  float: right;
  padding-bottom: 80px;
  z-index: 2;
}
.contRight .contTitHead {
  margin-bottom: 0;
}
.contRight .contTitHead .contTit {
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.04em;
}
.contRight .contTitHead .contTit span {
  display: block;
  margin-top: 4px;
  color: #666;
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
}
.contRight .contBtn {
  margin-top: 30px;
}
.contRight .contBtn a {
  width: 150px;
  max-width: 340px;
  height: 40px;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
  border-radius: 20px;
}
.contRight .addSide {
  margin-top: 20px;
  margin-bottom: 0;
}
.contRight .addSide img {
  width: 100%;
  height: auto;
}
.contRight .addSide + section {
  margin-top: 30px;
}
.contRight section + .addSide {
  margin-top: 30px;
}

.contRight--minusMargin {
  margin-top: -150px;
}

/*記事検索*/
.sideSearch {
  padding: 20px 30px 25px;
  background: #eeedeb;
}
.sideSearch .sideSearchTit {
  color: #222;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 20px;
  letter-spacing: 0.04em;
  text-align: center;
}
.sideSearch .sideSearchTit img {
  margin-right: 8px;
}
.sideSearch form {
  display: block;
  position: relative;
  width: 100%;
  margin-top: 16px;
}
.sideSearch form input[type=text] {
  width: 100%;
  padding: 6px 30px 4px 14px;
  color: #323232;
  font-size: 1.3rem;
  border: none;
  border-radius: 5px;
}
.sideSearch form button {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  padding: 0 10px 0 5px;
  color: #696969;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.sideSearch input::-moz-placeholder {
  color: #999;
  color: #999;
}
.sideSearch input::-webkit-input-placeholder {
  color: #999;
}
.sideSearch input::placeholder {
  color: #999;
}
.sideSearch input::-webkit-input-placeholder {
  color: #999;
}
.sideSearch input:-ms-input-placeholder {
  color: #999;
}

/* リニューアル */
.sideSearch2 {
  padding: 0 20px;
}
.sideSearch2 form {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  position: relative;
  width: 100%;
  height: 44px;
  margin: 0 !important;
  padding: 0 20px;
  border: 1px solid #222;
  border-radius: 22px;
  background-color: #fff;
}
.sideSearch2 form .gsc-input-box {
  border: none;
}
.sideSearch2 form table {
  margin: 0 !important;
  border: none !important;
}
.sideSearch2 form input[type=text] {
  width: 100%;
  padding: 8px 30px 4px 14px;
  color: #323232;
  font-size: 1.3rem;
  border: none;
}
.sideSearch2 form button {
  display: block;
  padding-left: 0;
  padding-right: 0;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.sideSearch2 form button svg {
  width: 18px;
  height: 18px;
  fill: #222;
}
.sideSearch2 input::-moz-placeholder {
  color: #999;
  color: #999;
}
.sideSearch2 input::-webkit-input-placeholder {
  color: #999;
}
.sideSearch2 input::placeholder {
  color: #999;
}
.sideSearch2 input::-webkit-input-placeholder {
  color: #999;
}
.sideSearch2 input:-ms-input-placeholder {
  color: #999;
}

/*最新号*/
.sideMagazineSection {
  margin-top: 20px;
  margin-bottom: 40px;
}
.sideMagazineSection .sideMagazine {
  background: #eeedeb;
  padding: 22px 20px 20px;
}
.sideMagazineSection .sideMagazine .sideMagazineTit {
  color: #000;
  font-size: 1.9rem;
  font-weight: bold;
  text-align: center;
}
.sideMagazineSection .sideMagazine .sideMagazineTop {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  margin-top: 14px;
}
.sideMagazineSection .sideMagazine .sideMagazineTop .tag {
  margin-left: 25px;
  padding: 5px 8px;
  color: #fff;
  font-size: 1.5rem;
  font-weight: bold;
  background: #f60;
  border-radius: 3px;
}
.sideMagazineSection .sideMagazine .sideMagazineTop .date {
  margin-left: 15px;
  color: #000;
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.sideMagazineSection .sideMagazine .img {
  width: 100%;
  margin-top: 20px;
  padding-top: 123.078%;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
}
.sideMagazineSection .sideMagazine .sideMagazineBtnList {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
  margin-top: 15px;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn {
  width: 100%;
  height: 50px;
  margin-top: 10px;
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.04em;
  border-radius: 5px;
  background: #fff;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn a {
  display: block;
  position: relative;
  line-height: 50px;
  text-align: center;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 7.692%;
  width: 8px;
  height: 8px;
  margin: auto 0;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: center;
  transform-origin: center;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn a:hover {
  opacity: 0.8;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn a img {
  margin-right: 5px;
  vertical-align: middle;
}
.sideMagazineSection .sideMagazine .sideMagazineImg a {
  display: block;
  position: relative;
  line-height: 50px;
  text-align: center;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn.btnBlack {
  margin-top: 20px;
  background: #2d2c29;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn.btnBlack a {
  color: #fff;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn.btnBlack a::after {
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn.btnSmall {
  -webkit-box-pack: start;
  justify-content: flex-start;
  width: calc((100% - 5px) / 2);
  height: 40px;
  margin: 0 0 5px;
  padding-left: 11px;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn.btnSmall a {
  line-height: 40px;
  text-align: left;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn.btnSmall:nth-of-type(2) a img {
  margin-top: -3px;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn.btnSmall:nth-of-type(5) a img {
  margin-top: -3px;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn.btnSmall:nth-of-type(6) a img {
  margin-top: -3px;
}
.sideMagazineSection .sideMagazine .sideMagazineBtn.btnSmall:nth-of-type(8) a img {
  margin-top: -3px;
}

/*プレゼント*/
.sidePresentSection {
  margin-top: 60px;
}
.sidePresentSection .sidePresent {
  position: relative;
  padding: 37px 20px 27px;
  background: #f1eae2;
}
.sidePresentSection .sidePresent .sidePresentIcon {
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  width: 40px;
  margin: 0 auto;
}
.sidePresentSection .sidePresent .contTitHead {
  padding-bottom: 0;
}
.sidePresentSection .sidePresent .contTitHead .contTit span {
  color: #222;
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
}
.sidePresentSection .sidePresent .img {
  width: 100%;
  margin-top: 20px;
  padding-top: 66.923%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.sidePresentSection .sidePresent .tit {
  margin-top: 17px;
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0.04em;
}
.sidePresentSection .sidePresent .term {
  margin-top: 17px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0;
}
.sidePresentSection .sidePresent .txt {
  margin-top: 17px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0;
}
.sidePresentSection .sidePresent .cateTags {
  position: relative;
  margin-top: 16px;
}

/******************************
フッター
******************************/
.footer {
  position: relative;
  margin-top: 84px;
  padding: 50px 0 40px;
  background: #2d2c29;
}
.footer .footerSns {
  text-align: center;
}
.footer .footerSns ul {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  letter-spacing: normal;
}
.footer .footerSns ul li {
  margin-left: 25px;
  font-size: 23px;
}
.footer .footerSns ul li a {
  color: #fff;
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}
.footer .footerSns ul li a:hover {
  opacity: 0.8;
  -webkit-transform: none;
  transform: none;
}
.footer .footerLink {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  flex-wrap: wrap;
  -webkit-box-pack: center;
          justify-content: center;
  margin-top: 33px;
  letter-spacing: normal;
}
.footer .footerLink ul {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 27%;
  height: 100%;
  margin-left: 8%;
  padding: 1rem 0 0 2rem;
  border-left: 1px solid #fff;
}
.footer .footerLink ul li {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  -webkit-box-pack: start;
          justify-content: flex-start;
  margin-left: 0;
  margin-bottom: 20px;
  padding-left: 0;
  font-family: inherit;
  font-size: 1.3rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0;
  word-break: keep-all;
  border: none;
}
.footer .footerLink ul li:last-of-type {
  margin-bottom: 10px;
}
.footer .footerLink ul li img {
  width: 1.5rem;
  margin-right: 0.5rem;
}
.footer .footerLink ul li a {
  color: #fff;
}
.footer .footerLink ul li:first-of-type {
  margin-bottom: 24px;
}
.footer .footerLink ul li.footerLinkTitle {
  color: #999;
}
.footer .footerLogo {
  margin-top: 40px;
  text-align: center;
}
.footer .footerCopy {
  margin-top: 40px;
}
.footer .footerCopy p {
  font-family: "Noto Sans", sans-serif;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 400;
  text-align: center;
}
.footer .footerAttention {
  margin-top: 17px;
}
.footer .footerAttention p {
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  text-align: center;
}
.footer .toTopBtn {
  position: fixed;
  bottom: 80px;
  right: 30px;
  opacity: 0.5;
  z-index: 1000;
}

body.top-page .footer {
  margin-top: 0;
}

.cont.flex ~ .footer {
  margin-top: 0;
}

/******************************
パンくず
******************************/
.pankuzu {
  background: #fff;
  font-size: 1.2rem;
}
.pankuzu ul {
  max-width: 1170px;
  width: 96.666%;
  margin: 0 auto;
  padding: 19px 0 20px;
  letter-spacing: -0.4em;
}
.pankuzu ul li {
  display: inline-block;
  position: relative;
  color: #222;
  letter-spacing: normal;
  margin: 5px 0;
}
.pankuzu ul li a {
  color: #f60;
}
.pankuzu ul li + li {
  padding-left: 20px;
  margin-left: 10px;
}
.pankuzu ul li + li::before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-top: 1px solid #aaa;
  border-right: 1px solid #aaa;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/******************************
左コンテンツ一覧
******************************/
/* カテゴリーナビゲーション */
.catNav {
  margin-top: 30px;
  padding: 17px 0;
  text-align: center;
  background: #f4f4f4;
}
.catNav ul {
  width: auto;
  display: inline-block;
}
.catNav ul li {
  display: inline-block;
  cursor: pointer;
}
.catNav ul li:not(:last-of-type) {
  margin-right: 38px;
}
.catNav ul li a {
  display: block;
  position: relative;
  color: #222;
  font-size: 1.3rem;
  font-weight: bold;
  pointer-events: none;
}
.catNav ul li a::after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 15px;
  width: 0;
  height: 4px;
  background: #ababab;
  border-radius: 2px;
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}
.catNav ul li a:hover::after {
  left: 0;
  width: 100%;
}
.catNav ul li.current a::after {
  left: 0;
  width: 100%;
}

/* リニューアル */
.categoryList__list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  gap: 10px;
}
.categoryList__item a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  min-width: 53px;
  height: 30px;
  padding: 3px 14px;
  border: 1px solid #222;
  border-radius: 15px;
  font-size: 1.4rem;
  font-weight: 700;
  white-space: nowrap;
  background-color: #f2eceb;
  color: #010101;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.categoryList__item a:hover {
  background-color: #222;
  color: #fff;
}
.categoryList__item.is_active a {
  background-color: #222;
  color: #fff;
}

/* 記事一覧リスト */
.topSection .articlesList {
  margin-top: 30px;
}

.catSection .articlesList {
  margin-top: 30px;
}

.articlesList ul::after {
  content: "";
  display: block;
  clear: both;
}
.articlesList ul li {
  width: calc(50% - 10px);
  float: left;
  margin-bottom: 43px;
}
.articlesList ul li:nth-of-type(2n) {
  margin-left: 20px;
}
.articlesList ul li:nth-of-type(odd) {
  clear: both;
}
.articlesList ul li a {
  display: block;
  position: relative;
  text-decoration: none;
}
.articlesList ul li a .img {
  position: relative;
  width: 100%;
  padding-top: 75%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.articlesList ul li a .txtBox {
  min-height: 123px;
}
.articlesList ul li a .meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  margin-top: 17px;
}
.articlesList ul li a .cate {
  font-size: 1.5rem;
  font-weight: bold;
  color: #666;
}
.articlesList ul li a .data {
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  color: #ababab;
  margin: 0;
}
.articlesList ul li a .tit {
  margin-top: 12px;
  color: #010101;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.444;
}
.articlesList ul li a .txt {
  display: none;
}
.articlesList ul li a .pr {
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
}
.articlesList ul li a .pr img {
  width: 100%;
}
.articlesList ul li a .present {
  position: absolute;
  top: 10px;
  left: 12px;
}

/**
* col4（トップ SPECIAL TOPICS）
*/
.topSection--specialTopics {
  max-width: 1170px;
  width: 96%;
  margin: 0 auto;
  padding: 70px 0 74px;
}
.topSection--specialTopics .topSectionTitle {
  margin: 0 0 21px;
}
.topSection--specialTopics .articlesList.col4 {
  width: 100%;
  margin: 0 auto;
}
.topSection--specialTopics .articlesList.col4 ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.topSection--specialTopics .articlesList.col4 ul li {
  width: calc((100% - 72px) / 4);
}
.topSection--specialTopics .articlesList.col4 ul li:not(:nth-of-type(4n+1)) {
  margin-left: 24px;
}
.topSection--specialTopics .articlesList.col4 ul li .img {
  padding-top: 75%;
}
.topSection--specialTopics .articlesList.col4 ul li .cate {
  margin-top: 15px;
}
.topSection--specialTopics .articlesList.col4 ul li .cate img {
  position: absolute;
  top: 12px;
  left: 12px;
  margin: 0;
  width: 40px !important;
}
.topSection--specialTopics .articlesList.col4 ul li .tit {
  min-height: 46px;
  font-size: 1.5rem;
  line-height: 1.467;
}
.topSection--specialTopics .articlesList.col4 ul li .tags li {
  width: auto;
  margin: 0 5px 0 0;
}

/**
* col1-3（トップ pick up）
*/
.articlesList.col1-3 {
  position: relative;
  margin-top: 50px;
  padding: 40px 20px 15px;
}
.articlesList.col1-3::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 200px;
  z-index: -1;
}
.articlesList.col1-3 .articlesListTit {
  position: absolute;
  top: 46px;
  color: #222;
  font-size: 2.3rem;
}
.articlesList.col1-3 .articlesListTit::after {
  content: "";
  position: absolute;
  bottom: -36px;
  left: -22px;
  width: 160px;
  height: 23px;
}
.articlesList.col1-3 ul li {
  margin: 0 0 35px;
}
.articlesList.col1-3 ul li:first-of-type {
  width: 100%;
}
.articlesList.col1-3 ul li:first-of-type a .img {
  width: 56.41%;
  padding-top: 42.3075%;
}
.articlesList.col1-3 ul li:first-of-type a .txtBox {
  position: absolute;
  top: 95px;
  right: 0;
  width: 48.974%;
  height: calc(100% - 95px);
  padding: 32px 34px 0 40px;
  background: #fff;
  border-radius: 5px 5px 0 0;
  overflow: hidden;
}
.articlesList.col1-3 ul li:first-of-type a .cate {
  line-height: 40px;
}
.articlesList.col1-3 ul li:first-of-type a .cate img {
  margin-right: 15px;
}
.articlesList.col1-3 ul li:first-of-type a .cateTags {
  bottom: 34px;
  left: 40px;
}
.articlesList.col1-3 ul li:not(:first-of-type) {
  width: calc((100% - 60px) / 3);
  margin-left: 30px;
  clear: none;
}
.articlesList.col1-3 ul li:not(:first-of-type) a .txtBox {
  position: static;
  height: 150px;
}
.articlesList.col1-3 ul li:not(:first-of-type) a .cate {
  padding-top: 15px;
}
.articlesList.col1-3 ul li:not(:first-of-type) a .cate img {
  position: absolute;
  top: 12px;
  left: 12px;
  margin: 0;
  width: 36px !important;
}
.articlesList.col1-3 ul li:not(:first-of-type) a .tit {
  font-size: 1.5rem;
  line-height: 1.466;
}
.articlesList.col1-3 ul li:nth-of-type(3n+2) {
  margin-left: 0;
  clear: both;
}
.articlesList.col1-3 ul li a .tags li {
  width: auto;
  margin: 0 5px 0 0;
}

.articlesList.col1-3.col1-3--rev .articlesListTit {
  position: absolute;
  top: 46px;
  right: auto;
}
.articlesList.col1-3.col1-3--rev .articlesListTit::after {
  content: "";
  position: absolute;
  bottom: -36px;
  width: 160px;
  height: 23px;
}
.articlesList.col1-3.col1-3--rev ul li:first-of-type a::after {
  content: "";
  display: block;
  clear: both;
}
.articlesList.col1-3.col1-3--rev ul li:first-of-type a .img {
  float: right;
}
.articlesList.col1-3.col1-3--rev ul li:first-of-type a .txtBox {
  left: 0;
  right: auto;
}

.topSection--reading .contTitHead {
  margin-bottom: 20px;
}
.topSection--reading .articlesList {
  margin-top: 0;
}
.topSection--reading .articlesList::after {
  background: #e6cbc1;
}
.topSection--reading .articlesList .articlesListTit {
  right: 15.26%;
}
.topSection--reading .articlesList .articlesListTit::after {
  left: -22px;
  background: url("../img/title_decoration_01.png") left top/cover no-repeat;
}

.topSection--joining .articlesList::after {
  background: #f7f7f7;
}
.topSection--joining .articlesList .articlesListTit {
  left: 18.333%;
}
.topSection--joining .articlesList .articlesListTit::after {
  left: -32px;
  background: url("../img/title_decoration_02.png") left top/cover no-repeat;
}

.topSection--shopping .articlesList::after {
  background: #f7f7f7;
}
.topSection--shopping .articlesList .articlesListTit {
  right: 19.744%;
}
.topSection--shopping .articlesList .articlesListTit::after {
  left: -51px;
  background: url("../img/title_decoration_02.png") left top/cover no-repeat;
}

@media screen and (max-width: 1095px) {
  .articlesList.col1-3 ul li:first-of-type a .txtBox {
    width: 58%;
    padding: 13px 22px 0 30px;
  }
  .articlesList.col1-3 ul li:first-of-type a .txtBox .tit {
    margin-top: 7px;
  }
  .articlesList.col1-3 ul li:first-of-type a .cateTags {
    bottom: 7px;
    left: 30px;
  }
}
@media screen and (max-width: 1180px) {
  .articlesList.col1-3 ul li:first-of-type a .cateTags {
    bottom: 0;
  }
}
/**
* col2-3（記事詳細 RELATED）
*/
.related .contTit {
  font-size: 3.6rem;
}
.related .contTit span {
  font-size: 1.5rem;
}

.articlesList.col2-3 li {
  margin-bottom: 40px;
}
.articlesList.col2-3 li:nth-of-type(n+3) {
  width: 31.71%;
  margin-left: 2.435%;
}
.articlesList.col2-3 li:nth-of-type(n+3) a .data {
  font-size: 1.4rem;
  margin: 0;
}
.articlesList.col2-3 li:nth-of-type(n+3) a .tit {
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.466;
  letter-spacing: 0.05em;
}
.articlesList.col2-3 li:nth-of-type(3n) {
  margin-left: 0;
  clear: both;
}
.articlesList.col2-3 li:not(:nth-of-type(3n)) {
  clear: none;
}

/**
* col3（記事詳細 ARCHIVES,TOPICS）
*/
.archives .contTit {
  font-size: 3.6rem;
}
.archives .contTit span {
  font-size: 1.5rem;
}
.archives .contBtn {
  margin-top: 10px;
}
.archives .articlesList.col3 li {
  width: 31.71%;
  margin-left: 2.435%;
  margin-bottom: 40px;
}
.archives .articlesList.col3 li a .data {
  font-size: 1.4rem;
  margin: 0;
  display: none;
}
.archives .articlesList.col3 li a .tit {
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.466;
  letter-spacing: 0.05em;
}

.detailTopics .contTit {
  font-size: 3.6rem;
}
.detailTopics .contTit span {
  font-size: 1.5rem;
}
.detailTopics .contBtn {
  margin-top: 10px;
}
.detailTopics .articlesList.col3 li {
  width: 31.71%;
  margin-left: 2.435%;
  margin-bottom: 40px;
}
.detailTopics .articlesList.col3 li a .data {
  font-size: 1.4rem;
  margin: 0;
}
.detailTopics .articlesList.col3 li a .tit {
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.466;
  letter-spacing: 0.05em;
}

.articlesList.col3 li:nth-of-type(odd) {
  clear: none;
}
.articlesList.col3 li:nth-of-type(1) {
  margin-left: 0;
  clear: both;
}
.articlesList.col3 li:nth-of-type(3n) + li {
  margin-left: 0;
  clear: both;
}

/* リニューアル */
.flexArticlesList {
  width: min(100%, 1170px);
  margin-inline: auto;
}
.flexArticlesList__list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.flexArticlesList__item a {
  position: relative;
}
.flexArticlesList__figure {
  position: relative;
  width: 100%;
  margin: 0;
  aspect-ratio: 3/2;
}
.flexArticlesList__figure img {
  position: relative;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.flexArticlesList__figure .pr-badge {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  position: absolute;
  inset: auto 0 0 auto;
  width: 30px;
  height: 30px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  background-color: #b1b1b1;
}
.flexArticlesList__body {
  width: 100%;
}
.flexArticlesList--col3 .flexArticlesList__list {
  gap: 30px 7.5%;
}
.flexArticlesList--col3 .flexArticlesList__item {
  -webkit-box-flex: 0;
          flex: 0 0 28.3333333333%;
}
.flexArticlesList--col3 .flexArticlesList__body {
  padding-top: 12px;
  padding-left: 16px;
  padding-right: 16px;
}
.flexArticlesList--col3 .flexArticlesList__body .tit {
  font-size: 1.6rem;
  line-height: 1.6;
}
.flexArticlesList--col1-3 .item-wrap {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.flexArticlesList--col1-3 .flexArticlesList__list,
.flexArticlesList--col1-3 .item-wrap {
  gap: 42px 7.5%;
}
.flexArticlesList--col1-3 .flexArticlesList__item:first-of-type {
  -webkit-box-flex: 0;
          flex: 0 0 100%;
  margin-bottom: 18px;
}
.flexArticlesList--col1-3 .flexArticlesList__item:first-of-type a {
  display: block;
  position: relative;
}
.flexArticlesList--col1-3 .flexArticlesList__item:first-of-type .flexArticlesList__figure {
  width: 750px;
  max-width: 64.2%;
}
.flexArticlesList--col1-3 .flexArticlesList__item:first-of-type .flexArticlesList__body {
  position: absolute;
  inset: 0 0 auto auto;
  width: calc(35.8% + 83px);
  padding: 26px 34px;
  background-color: #fff;
}
.flexArticlesList--col1-3 .flexArticlesList__item:not(:first-of-type) {
  -webkit-box-flex: 0;
          flex: 0 0 28.3333333333%;
}
.flexArticlesList--col1-3 .flexArticlesList__item:not(:first-of-type) .flexArticlesList__body {
  padding-top: 12px;
  padding-left: 16px;
  padding-right: 16px;
}
.flexArticlesList--col1-3 .flexArticlesList__item .flexArticlesList__body .tit {
  font-size: 1.6rem;
  line-height: 1.6;
}

.flexArticlesList--col1-3.editorArchiveSpecialTopicsList .flexArticlesList__list,
.flexArticlesList--col1-3.editorArchiveSpecialTopicsList .item-wrap {
  gap: 42px 12%;
}
.flexArticlesList--col1-3.editorArchiveSpecialTopicsList .flexArticlesList__item:first-of-type {
  -webkit-box-flex: 0;
          flex: 0 0 100%;
  margin-bottom: 18px;
}
.flexArticlesList--col1-3.editorArchiveSpecialTopicsList .flexArticlesList__item:first-of-type .flexArticlesList__figure {
  width: 100%;
  max-width: 100%;
}
.flexArticlesList--col1-3.editorArchiveSpecialTopicsList .flexArticlesList__item:first-of-type .flexArticlesList__body {
  position: absolute;
  inset: -45px auto auto 0;
  width: 67.2%;
  padding: 30px 34px;
  background-color: #fff;
}
.flexArticlesList--col1-3.editorArchiveSpecialTopicsList .flexArticlesList__item:not(:first-of-type) {
  -webkit-box-flex: 0;
          flex: 0 0 44%;
}
.flexArticlesList--col1-3.editorArchiveSpecialTopicsList .flexArticlesList__item:not(:first-of-type) .flexArticlesList__body {
  padding-top: 12px;
  padding-left: 16px;
  padding-right: 16px;
}
.flexArticlesList--col1-3.editorArchiveSpecialTopicsList .flexArticlesList__item .flexArticlesList__body .tit {
  font-size: 1.6rem;
  line-height: 1.6;
}

.verticalList {
  width: min(100%, 724px);
}
.verticalList__item {
  padding-bottom: 22px;
}
.verticalList__item + .verticalList__item {
  margin-top: 20px;
}
.verticalList__item:not(:last-of-type) {
  border-bottom: 1px dotted #555;
}
.verticalList__item a {
  display: -webkit-box;
  display: flex;
  width: 100%;
}
.verticalList__figure {
  -webkit-box-flex: 0;
          flex: 0 0 130px;
  margin: 0;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.verticalList__figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.verticalList__body {
  -webkit-box-flex: 1;
          flex: 1 1 auto;
  padding-left: 22px;
}
.verticalList__body .tit {
  font-size: 1.6rem;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.contRight .verticalList__item {
  padding-bottom: 18px;
}
.contRight .verticalList__item+.verticalList__item {
  margin-top: 18px;
}
.contRight .verticalList__item:not(:last-of-type) {
  border-bottom: 1px dashed #cdcdcd;
}
.contRight .verticalList__body {
  padding-left: 10px;
}
.contRight .verticalList__body .tit {
  font-size: 1.3rem;
}

/******************************
ページャー
******************************/
.articlesListPager {
  padding-top: 20px;
}
.articlesListPager ul {
  text-align: center;
  letter-spacing: -0.4em;
}
.articlesListPager ul li {
  display: inline-block;
  letter-spacing: normal;
  vertical-align: middle;
}
.articlesListPager ul li a {
  display: block;
  min-width: 28px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #222;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0;
  text-decoration: none;
  background: #fff;
  border: none;
  border-radius: 14px;
  vertical-align: middle;
  -webkit-transition: 0.1s linear;
  transition: 0.1s linear;
}
.articlesListPager ul li + li {
  margin-left: 15px;
}
.articlesListPager li.active a {
  background: #eeedeb;
  color: #f60;
  border: none;
}
.articlesListPager a:hover {
  background: #eeedeb;
  color: #f60;
  border: none;
}
.articlesListPager li.prev a {
  position: relative;
  color: #fff;
  background: none !important;
  border: none;
}
.articlesListPager li.prev a i {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-top: 2px solid #222;
  border-right: 2px solid #222;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  right: 4px;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.articlesListPager li.prev a i:nth-child(2) {
  right: 4px;
}
.articlesListPager li.prev a:hover i {
  right: 4px;
}
.articlesListPager li.prev a:hover i:nth-child(2) {
  right: 10px;
}
.articlesListPager li.prev a::after {
  content: none;
}
.articlesListPager li.next a {
  position: relative;
  color: #fff;
  background: none !important;
  border: none;
}
.articlesListPager li.next a i {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-top: 2px solid #222;
  border-right: 2px solid #222;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  left: 4px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.articlesListPager li.next a i:nth-child(2) {
  left: 4px;
}
.articlesListPager li.next a:hover i {
  left: 4px;
}
.articlesListPager li.next a:hover i:nth-child(2) {
  left: 10px;
}
.articlesListPager li.next a:hover:after {
  left: 6px;
}
.articlesListPager li.next a::after {
  content: none;
}

/******************************
詳細ページ
******************************/
/*記事タイトル*/
.iasContainer .cont {
  padding-top: 38px;
}

.articleDetailHead {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 18px;
}
.articleDetailHead .meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  margin-bottom: 15px;
  padding: 0;
}
.articleDetailHead .meta > p {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.1rem;
  letter-spacing: 0.12em;
}
.articleDetailHead .meta .present {
  margin-left: 15px;
}
.articleDetailHead .tit {
  color: #222;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.52;
  letter-spacing: 0;
}
.articleDetailHead .bottom {
  display: table;
  width: 100%;
  text-align: left;
  color: #999;
  padding-top: 15px;
}
.articleDetailHead .bottom > div {
  display: table-cell;
  vertical-align: middle;
}
.articleDetailHead .bottom .date {
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #ababab;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: right;
}
.articleDetailHead .author {
  letter-spacing: -0.4em;
}
.articleDetailHead .author > div {
  display: inline-block;
  vertical-align: middle;
  letter-spacing: normal;
}
.articleDetailHead .authorImg a {
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #eee;
  background-size: cover;
  margin-right: 10px;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}
.articleDetailHead .authorImg a:hover {
  opacity: 0.7;
}
.articleDetailHead .authorTxt {
  line-height: 1.4;
}
.articleDetailHead .authorTxt .name a {
  font-size: 1.2rem;
  color: #323232;
}
.articleDetailHead .authorTxt .btn a {
  display: block;
  font-size: 1rem;
  background: #eee;
  width: 110px;
  text-align: center;
  padding: 4px 0;
  border-radius: 3px;
  text-decoration: none;
  color: #666;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.articleDetailHead .authorTxt .btn a:hover {
  background: #323232;
  color: #fff;
}
.articleDetailHead .sns {
  text-align: right;
}
.articleDetailHead .sns ul {
  display: inline-block;
  letter-spacing: -0.4em;
}
.articleDetailHead .sns ul li {
  display: inline-block;
  vertical-align: middle;
  letter-spacing: normal;
  margin-left: 14px;
}
.articleDetailHead .sns ul li a {
  display: block;
  width: 90px;
  padding: 7px 0;
  background: #eee;
  text-align: center;
  font-size: 1rem;
  color: #888;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.articleDetailHead .sns ul li a:hover {
  background: #323232;
  color: #fff;
}

/*記事メイン画像*/
.articleDetailTxt + .articleDetailImg {
  margin-top: 40px;
}

.articleDetailImg .img {
  position: relative;
}
.articleDetailImg img {
  width: 100%;
  height: auto;
}

/* すべての画像を見る */
.articleGalleryBtn {
  text-align: right;
}
.articleGalleryBtn .galleryBtn {
  display: inline-block;
}
.articleGalleryBtn .galleryBtn a {
  display: block;
  padding: 9px 15px;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.articleGalleryBtn .galleryBtn a img {
  margin-right: 8px;
}
.articleGalleryBtn .galleryBtn a .galleryTxt {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 17px;
  letter-spacing: 0.05em;
}

/*記事メイン画像の矢印*/
.articleDetailImg .meta {
  margin: 15px 0 7px;
  color: #222;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0.05em;
}

/*小さい記事メイン画像*/
.articleDetailTxtImg {
  float: left;
}
.articleDetailTxtImg .img {
  max-width: 300px;
  margin: 0 25px 25px 0;
}
.articleDetailTxtImg img {
  width: 100%;
  height: auto;
}
.articleDetailTxtImg .meta {
  max-width: 300px;
  color: #999;
  font-size: 1.1rem;
  letter-spacing: 0.12em;
  margin: 20px 0;
}

/*記事詳細*/
.articleGalleryList + .articleDetailTxt {
  margin-top: 25px;
}

.articleGalleryBtn + .articleDetailTxt {
  margin-top: 25px;
}

.articleDetailImg + .articleDetailTxt {
  margin-top: 37px;
}

.articleDetailTxt {
  color: #222;
  font-size: 1.6rem;
  line-height: 1.75;
}
.articleDetailTxt::after {
  clear: both;
}
.articleDetailTxt .add {
  margin: 0 25px 25px 0;
  float: left;
}
.articleDetailTxt .lead {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.09em;
  line-height: 1.65;
  display: block;
  margin-bottom: 20px;
}
.articleDetailTxt img {
  max-width: 100%;
  height: auto;
  margin-top: 25px;
  margin-bottom: 25px;
}
.articleDetailTxt a:-webkit-any-link {
  color: #ff6600;
  text-decoration: underline;
}
.articleDetailTxt a:-moz-any-link {
  color: #ff6600;
  text-decoration: underline;
}
.articleDetailTxt a:any-link {
  color: #ff6600;
  text-decoration: underline;
}
.articleDetailTxt a:hover {
  text-decoration: none;
}
.articleDetailTxt ol {
  list-style-type: decimal;
}
.articleDetailTxt ul {
  list-style-type: disc;
}

.articleDetailTxt + .contBtn {
  margin-top: 30px;
}

.contBtn + .articlesListPager {
  padding: 30px 0 20px;
}

/*記事詳細ページャー*/
.articleDetailPager {
  margin-top: 55px;
}
.articleDetailPager .pageNext {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  position: relative;
  width: 100%;
  padding: 18px 0;
  background: #f4f4f4;
}
.articleDetailPager .pageNext::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 4.634%;
  width: 12px;
  height: 12px;
  border-bottom: 2px solid #2d2c29;
  border-right: 2px solid #2d2c29;
  margin: auto 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.articleDetailPager .pageNext .nextTxt {
  color: #222;
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0.05em;
}
.articleDetailPager .pageNext .nextPageTit {
  margin-left: 3.659%;
  padding-left: 3.659%;
  color: #222;
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0.05em;
  border-left: 2px solid #222;
}

/*記事作成者*/
.articleDetailAuthor {
  margin-top: 48px;
}
.articleDetailAuthor p {
  color: #222;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}

/*記事タグ*/
.articleDetailTag {
  margin-top: 50px;
}
.articleDetailTag ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  letter-spacing: normal;
}
.articleDetailTag ul li {
  display: inline-block;
  margin-bottom: 8px;
  letter-spacing: normal;
}
.articleDetailTag ul li a {
  display: block;
  min-width: 60px;
  padding: 8px 18px;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  background: #c5c5c5;
  border-radius: 14px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.articleDetailTag ul li a:hover {
  background: #ccc;
}
.articleDetailTag ul li + li {
  margin-left: 5px;
}

.articleDetailTagHeadline {
  margin-bottom: 16px;
  padding-bottom: 8px;
  border-bottom: 3px solid #ccc;
}
.articleDetailTagHeadline span {
  font-size: 150%;
  font-weight: bold;
}

/*記事下部SNS*/
.articleDetailSns {
  margin-top: 45px;
  margin-bottom: 45px;
}
.articleDetailSns .articleDetailSnsTit {
  font-family: "Noto Sans", sans-serif;
  color: #222;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
}
.articleDetailSns .articleDetailSnsList {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  margin-top: 20px;
}
.articleDetailSns .articleDetailSnsList li + li {
  margin-left: 24px;
}

/*記事下部広告*/
.articleDetailAdd {
  text-align: center;
  letter-spacing: -0.4em;
  margin-top: 25px;
}
.articleDetailAdd .add {
  display: inline-block;
  letter-spacing: normal;
  margin: 0 10px;
}
.articleDetailAdd .add img {
  width: 100%;
  height: auto;
}

/*記事下部一覧*/
.articleDetailList {
  margin-top: 80px;
}
.articleDetailList section:not(:first-of-type) {
  margin-top: 30px;
}
.articleDetailList .articleDetailAdd {
  margin-top: 10px;
  margin-bottom: 30px;
}

/*ローディング*/
.loading {
  text-align: center;
  padding: 80px 0 40px;
}
.loading img {
  -webkit-animation: rotate-anime 2s linear infinite;
  animation: rotate-anime 2s linear infinite;
}

.loadingTxt {
  font-size: 1.6rem;
  color: #959595;
  margin-top: 20px;
}

@-webkit-keyframes rotate-anime {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.loading + section {
  margin-top: 50px;
}

@-webkit-keyframes rotate-anime {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotate-anime {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/******************************
写真一覧ページ
******************************/
/*記事画像*/
.articleGalleryImg .img {
  padding-top: 48.8%;
  background-color: #eee;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.articleGalleryImg img {
  width: 100%;
  height: auto;
}
.articleGalleryImg .meta {
  color: #999;
  font-size: 1.1rem;
  letter-spacing: 0.12em;
  margin: 20px 0;
  text-align: center;
}
.articleGalleryImg .by {
  color: #999;
  font-size: 1.1rem;
  letter-spacing: 0.12em;
  margin-bottom: 20px;
  text-align: left;
}

/*前の画像 / 次の画像*/
.articleGalleryBtn {
  overflow: hidden;
  margin-top: 20px;
  margin-bottom: 30px;
}
.articleGalleryBtn .prev {
  width: 190px;
  float: left;
}
.articleGalleryBtn .prev a {
  width: 100%;
  font-size: 1.2rem;
  line-height: 47px;
  text-align: center;
  text-decoration: none;
  background: #eee;
  border-radius: 5px;
  position: relative;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  float: left;
}
.articleGalleryBtn .prev a:before {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  margin: auto 0px;
  border-top: 3px solid #ccc;
  border-right: 3px solid #ccc;
  left: 20px;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.articleGalleryBtn .prev a:hover {
  background: #323232;
  color: #fff;
}
.articleGalleryBtn .prev a:hover:before {
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}
.articleGalleryBtn .next {
  width: 190px;
  float: right;
}
.articleGalleryBtn .next a {
  width: 100%;
  font-size: 1.2rem;
  line-height: 47px;
  text-align: center;
  text-decoration: none;
  background: #eee;
  border-radius: 5px;
  position: relative;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  float: right;
}
.articleGalleryBtn .next a:before {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  margin: auto 0px;
  border-top: 3px solid #ccc;
  border-right: 3px solid #ccc;
  right: 20px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.articleGalleryBtn .next a:hover {
  background: #323232;
  color: #fff;
}
.articleGalleryBtn .next a:hover:before {
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}

/*画像一覧*/
.articleGalleryList {
  margin: 15px -1.65%;
  font-size: 0;
}
.articleGalleryList li {
  width: 25%;
  padding: 10px 1.65%;
  display: inline-block;
}
.articleGalleryList li a {
  display: block;
}
.articleGalleryList li a.active {
  opacity: 0.5;
  border: solid 3px #bbb;
}
.articleGalleryList li .img {
  width: 100%;
  padding-top: 49%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eee;
}
.articleGalleryList li img {
  width: 100%;
  height: auto;
  display: none;
}

.articleGalleryList.col5 li {
  width: 20%;
  padding: 10px 1%;
  display: inline-block;
}

/******************************
著者詳細
******************************/
/*著者詳細*/
.autherDetail {
  margin-bottom: 25px;
  display: table;
}
.autherDetail .imgWrap {
  width: 170px;
  display: table-cell;
}
.autherDetail .imgWrap .img {
  padding-top: 100%;
  background-color: #eee;
  background-size: cover;
}
.autherDetail .txtWrap {
  padding: 0 0 20px 20px;
  vertical-align: middle;
  display: table-cell;
}
.autherDetail .txtWrap .lead {
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 0.09em;
}
.autherDetail .txtWrap .tit {
  font-size: 2.4rem;
  font-weight: 600;
  letter-spacing: 0.09em;
}
.autherDetail .txtWrap .txt {
  margin-top: 10px;
  font-size: 1.4rem;
  line-height: 30px;
}
.autherDetail .txtWrap .btn {
  margin-top: 15px;
  text-align: right;
}
.autherDetail .txtWrap .btn a {
  font-size: 1.2rem;
  color: #fff;
  text-align: center;
  text-decoration: none;
  padding: 3px 10px;
  background: #323232;
  border-radius: 3px;
  display: inline-block;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.autherDetail .txtWrap .btn a:hover {
  background: #666;
}

.tagList ul {
  overflow: hidden;
}
.tagList li {
  width: 19%;
  float: left;
  margin: 0 1.25% 5% 0;
}
.tagList li:nth-child(5n) {
  margin-right: 0;
}
.tagList li a {
  font-size: 1.3rem;
  color: #0086cb;
}

.tagMenu {
  padding-bottom: 10px;
}
.tagMenu ul {
  letter-spacing: -0.4em;
}
.tagMenu li {
  font-size: 1.3rem;
  display: inline-block;
  letter-spacing: normal;
  padding-bottom: 10px;
}
.tagMenu li a {
  text-decoration: none;
}
.tagMenu li:hover .inlistBox {
  opacity: 1;
  z-index: 1;
}
.tagMenu li + li {
  position: relative;
  margin-left: 15px;
}
.tagMenu li + li:before {
  content: "/";
  margin-right: 10px;
}
.tagMenu .inlist {
  padding-right: 15px;
}
.tagMenu .inlist:after {
  position: absolute;
  content: "";
  display: block;
  top: -16px;
  bottom: 0;
  right: -1px;
  margin: auto;
  width: 6px;
  height: 6px;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.tagMenu .inlistBox {
  opacity: 0;
  width: 100%;
  padding: 20px;
  background: #dfdfdf;
  position: absolute;
  z-index: 1;
  border-radius: 10px;
  top: 32px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: -1;
}
.tagMenu .inlistBox:before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 10px 15px 10px;
  border-color: transparent transparent #dfdfdf transparent;
  top: -10px;
  left: 20px;
}
.tagMenu .inlistBox li {
  margin-left: 0;
  display: block;
  padding-bottom: 0;
}
.tagMenu .inlistBox li a:hover {
  text-decoration: underline;
}
.tagMenu .inlistBox li:before {
  content: normal;
}
.tagMenu .inlistBox li + li {
  margin-top: 5px;
}

/******************************
バックナンバー
******************************/
/*雑誌一覧*/
.magazinesIndexList li {
  border-bottom: 1px solid #eee;
  padding-bottom: 15px;
  margin-bottom: 15px;
}
.magazinesIndexList li:after {
  content: "";
  display: block;
  clear: both;
}
.magazinesIndexList li .img {
  padding-top: 240px;
  background-position: center;
  background-repeat: no-repeat;
  width: 187px;
  background-color: #eee;
  background-size: cover;
  border: 1px solid #eee;
  float: left;
  margin-right: 15px;
}
.magazinesIndexList li p {
  font-size: 16px;
  padding-top: 80px;
  font-weight: bold;
  margin-bottom: 15px;
}
.magazinesIndexList li p.contBtn {
  padding-top: 0;
}
.magazinesIndexList li a {
  display: inline-block;
  color: #fff;
  font-size: 13px;
  text-indent: 1em;
  padding: 8px 10px 8px 0;
  min-width: 200px;
  text-align: center;
  background: #323232;
  background-size: 12px auto;
  border-radius: 5px;
}

/*バックナンバー一覧*/
.magazinesBacknumberList {
  margin: 0 -1.65%;
  font-size: 0;
}
.magazinesBacknumberList li {
  width: 25%;
  padding: 0 1.65% 30px;
  display: inline-block;
}
.magazinesBacknumberList li a {
  display: block;
}
.magazinesBacknumberList li .img {
  padding-top: 132%;
  background: #eee;
}
.magazinesBacknumberList li .txt {
  margin-top: 5px;
  padding-bottom: 5px;
  font-size: 1.2rem;
  letter-spacing: 0.09em;
  text-align: center;
  color: #444;
}
.magazinesBacknumberList li .contBtn a {
  margin-top: 5px;
  font-size: 1rem;
  letter-spacing: 0.09em;
  padding: 5px 0;
  border-radius: 5px;
}
.magazinesBacknumberList li .contBtn a:hover::before {
  width: 5px;
  height: 5px;
  right: 15px;
  opacity: 1;
}

/******************************
誌面目次
******************************/
/*雑誌*/
.magazinesDetail {
  width: 100%;
  padding-bottom: 40px;
  display: table;
}
.magazinesDetail .imgWrap {
  width: 270px;
  display: table-cell;
}
.magazinesDetail .imgWrap .img {
  width: 100%;
  padding-top: 130%;
  background: #eee;
}
.magazinesDetail .txtWrap {
  padding: 20px 0 20px 30px;
  vertical-align: middle;
  display: table-cell;
}
.magazinesDetail .txtWrap .mazazine {
  font-size: 1.8rem;
  font-weight: 600;
  color: #646464;
}
.magazinesDetail .txtWrap .tit {
  margin-top: 10px;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
.magazinesDetail .txtWrap .txt {
  margin-top: 10px;
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.53;
  letter-spacing: 0.12em;
  color: #444;
}
.magazinesDetail .txtWrap .btnS a {
  width: 100%;
  padding: 20px 0;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #646464;
  text-align: center;
  background: #f7f7f7;
  border-radius: 5px;
  display: inline-block;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.magazinesDetail .txtWrap .btnS a:hover {
  background: #323232;
  color: #fff;
}
.magazinesDetail .btnWrap {
  margin-top: 20px;
  overflow: hidden;
}
.magazinesDetail .btnWrap .btnS {
  width: 49%;
  float: left;
}
.magazinesDetail .btnWrap .btnS + .btnS {
  float: right;
}
.magazinesDetail .contBtn {
  margin-top: 15px;
}
.magazinesDetail .contBtn a {
  padding: 18px 0;
  font-size: 1.6rem;
  border-radius: 5px;
}

/*目次*/
.magazinesDetailList {
  width: 100%;
  font-family: Lato, sans-serif;
  overflow: hidden;
}
.magazinesDetailList .left {
  width: 48%;
  float: left;
}
.magazinesDetailList .right {
  width: 48%;
  float: right;
}
.magazinesDetailList li {
  font-size: 1.7rem;
  font-weight: bold;
  letter-spacing: 0.06em;
}
.magazinesDetailList li span {
  padding-right: 1em;
  font-size: 15px;
  color: #bbb;
}
.magazinesDetailList li + li {
  margin-top: 25px;
}
.magazinesDetailList .contBtn {
  width: 65%;
  margin: 0 auto;
  padding-top: 80px;
  clear: both;
}
.magazinesDetailList .contBtn a {
  padding: 18px 0;
  font-size: 1.6rem;
  border-radius: 5px;
}

/*お知らせ詳細*/
.newsContTitHead {
  border-bottom: none;
  padding-bottom: 10px;
  margin-bottom: 30px;
}

.newsContTit {
  font-size: 3rem;
  letter-spacing: 0.04em;
  line-height: 1.2;
  text-align: center;
  min-height: auto;
  min-height: initial;
}

.newsDetailHead {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 18px;
}
.newsDetailHead .tit {
  color: #222;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.52;
  letter-spacing: 0;
}
.newsDetailHead .bottom {
  display: table;
  width: 100%;
  text-align: left;
  color: #999;
  padding-top: 15px;
}
.newsDetailHead .bottom .date {
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #ababab;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: right;
}

.newsDetail {
  padding-bottom: 70px;
  line-height: 2.15;
  color: #444;
  font-size: 16px;
}
.newsDetail a {
  text-decoration: underline;
}
.newsDetail a:hover {
  text-decoration: none;
}

/******************************
お知らせ
******************************/
/*お知らせ一覧*/
.newsList li {
  border-bottom: solid 1px #ddd;
  padding: 20px 0;
}
.newsList li:first-child {
  margin-top: -30px;
}
.newsList li .date {
  font-size: 1.1rem;
  letter-spacing: 0.12em;
  margin-bottom: 1.1rem;
  color: #999;
}
.newsList li .tit {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
}

/******************************
TOPページ
******************************/
/*メインビジュアル*/
.topMainSection {
  position: relative;
  padding: 0;
  z-index: 0;
}
.topMainSection__logo {
  position: absolute;
  inset: auto calc(50% - 620px) 287px auto;
  z-index: 1;
}
.topMainSection .next-btn {
  position: absolute;
  inset: auto 30.7% 24px auto;
  padding: 8px 5px;
  z-index: 2;
  cursor: pointer;
}
@media (min-width: 1400px) {
  .topMainSection .next-btn {
    inset: auto calc(50% - 277px) 24px auto;
  }
}
.topMainSection .next-btn svg {
  width: 44px;
}
.topMainSection ul.slider {
  display: none;
  width: min(100%, 1400px);
  margin-inline: auto;
}
.topMainSection ul.slider.slick-initialized {
  display: block;
}
.topMainSection ul.slider .sliderItem {
  display: block;
  width: 100%;
  padding: 0;
}
.topMainSection ul.slider .sliderItem a {
  display: block;
  position: relative;
  width: 74.666%;
  text-decoration: none;
  aspect-ratio: 896/686;
}
.topMainSection ul.slider .sliderItem a .sliderImage {
  position: absolute;
  inset: 0;
  width: 100%;
}
.topMainSection ul.slider .sliderItem a .sliderImage img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.topMainSection ul.slider .sliderItem a .sliderImage .pr-badge {
  display: grid;
  place-items: center;
  position: absolute;
  inset: auto 0 0 auto;
  width: 54px;
  height: 30px;
  background-color: #b1b1b1;
  font-size: 17px;
  color: #fff;
  font-weight: 700;
}
.topMainSection ul.slider .sliderItem a .txtBox {
  position: absolute;
  inset: auto auto 75px calc(100% - 116px);
  width: calc(25.334% + 116px);
  max-height: 202px;
}
.topMainSection ul.slider .sliderItem a .tit {
  display: inline;
  position: relative;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.85;
  padding-left: 0.4rem;
  padding-right: 0.4rem;
  background-color: #fff;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.topMainSection ul.slider .sliderItem a .txt {
  display: none;
}
.topMainSection ul.slider .sliderItem a .cateTags {
  position: absolute;
  bottom: 24px;
  left: 35px;
}
.topMainSection ul.slider .sliderItem a .pr {
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
}
.topMainSection ul.slider .sliderItem a .pr img {
  width: 100%;
}
.topMainSection ul.slider li + li {
  width: auto;
  border-left: none;
}

.topSection + .topSection {
  margin-top: 55px;
}

.topSection + .topSection--books {
  margin-top: 70px;
}

.topSection:nth-of-type(2) {
  margin-top: 25px;
}

/*モーダル*/
.modal {
  margin-top: 26px;
}
.modal .modalLink {
  text-align: center;
}
.modal .modalLink a {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0;
}
.modal #modal-content .modalTit {
  color: #222;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0;
  text-align: center;
}

#cboxOverlay.top-modal {
  background: rgba(0, 0, 0, 0.35);
  opacity: 1 !important;
}

.top-modal {
  max-width: 100%;
}
.top-modal #cboxLoadedContent {
  background: #fff !important;
  padding: 30px 30px 0 30px;
}
.top-modal #modal-content {
  position: relative;
  max-width: 100%;
  padding: 46px 95px 135px;
  text-align: center;
  overflow: auto;
}
.top-modal #modal-content .modalTit {
  color: #222;
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}
.top-modal #modal-content .modalTxt {
  margin-top: 30px;
  color: #222;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0;
}
.top-modal #modal-content .contBtn--small {
  position: absolute;
  bottom: 26px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.top-modal #cboxClose {
  top: 22px;
  right: 38px;
  background: url("../img/btn_modal_close.svg") center center/20px no-repeat;
}

/*タブコンテンツ*/
.articlesListTabWrap .articlesListTab {
  display: none;
}

.articlesListTabWrap .articlesListTab.active {
  display: block;
}

.topArticles .topArticlesList {
  display: none;
}

.topArticles .topArticlesList.active {
  display: block;
}

.editorArchiveBody .editorArchiveList {
  display: none;
}

.editorArchiveBody .editorArchiveList.active {
  display: block;
}

/* リニューアル */
.topSectionTitle {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
  color: #222;
}

.topArticles {
  position: relative;
  padding-top: 68px;
  padding-bottom: 160px;
  z-index: 2;
}
.topArticles .bg-cloud-02 {
  position: absolute;
  inset: auto -40px -105px auto;
  z-index: 1;
}
.topArticles .topArticlesList {
  margin-top: 40px;
}
.topArticles .topArticlesBtn {
  margin-top: 50px;
}

.topFeatures {
  padding-top: 120px;
  padding-bottom: 160px;
  background-color: #f8f7f6;
  box-shadow: 0 0 0 100vmax #f8f7f6;
  -webkit-clip-path: inset(0 -100vmax);
          clip-path: inset(0 -100vmax);
  z-index: 1;
}
.topFeatures .topFeaturesList {
  position: relative;
  margin-top: 120px;
  padding-top: 82px;
  padding-bottom: 108px;
  border-top: 1px solid #555;
  border-bottom: 1px solid #555;
  border-left: 1px solid #555;
}
.topFeatures .topFeaturesList .topFeaturesIcon {
  position: absolute;
  inset: -19px auto auto 24px;
}
.topFeatures .topFeaturesList .topFeaturesLogo {
  position: absolute;
  inset: -82px 0 auto auto;
}
.topFeatures .topFeaturesList__item {
  width: 500px;
  padding-inline: 20px;
}
.topFeatures .topFeaturesList__item a {
  display: block;
}
.topFeatures .topFeaturesList__figure {
  width: 100%;
  margin: 0;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.topFeatures .topFeaturesList__figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.topFeatures .topFeaturesList__body {
  padding-top: 14px;
  padding-left: 22px;
  padding-right: 22px;
}
.topFeatures .topFeaturesList__body .tit {
  font-size: 1.6rem;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.topEditorBlog {
  display: -webkit-box;
  display: flex;
  padding-top: 115px;
  padding-bottom: 115px;
  background-color: #edee9c;
  box-shadow: 0 0 0 100vmax #edee9c;
  -webkit-clip-path: inset(0 -100vmax);
          clip-path: inset(0 -100vmax);
}
.topEditorBlog .topEditorBlogHead {
  -webkit-box-flex: 0;
          flex: 0 0 380px;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
}
.topEditorBlog .topEditorBlogBtn {
  margin-top: 96px;
}
.topEditorBlog .topEditorBlogBody {
  -webkit-box-flex: 1;
          flex: 1 0 auto;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
          justify-content: flex-end;
}
.topEditorBlog .topEditorBlogList__list {
  display: grid;
  grid-auto-rows: 254px;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 10px;
  max-width: 680px;
}
.topEditorBlog .topEditorBlogList__item {
  padding: 10px;
  border-radius: 3px;
  background-color: #fff;
}
.topEditorBlog .topEditorBlogList__item a {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  width: 100%;
  height: 100%;
}
.topEditorBlog .topEditorBlogList__name {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}
.topEditorBlog .topEditorBlogList__name span {
  display: block;
  font-size: 1.3rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.topEditorBlog .topEditorBlogList__icon {
  -webkit-box-flex: 0;
          flex: 0 0 26px;
  position: relative;
  margin-right: 12px;
  border-radius: 50%;
  overflow: hidden;
  aspect-ratio: 1/1;
}
.topEditorBlog .topEditorBlogList__item.has_border .topEditorBlogList__icon {
  border: 2px solid #ff6600;
}
.topEditorBlog .topEditorBlogList__icon img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.topEditorBlog .topEditorBlogList__figure {
  position: relative;
  margin: 10px 0 0;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.topEditorBlog .topEditorBlogList__figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.topEditorBlog .topEditorBlogList__body {
  padding-top: 6px;
}
.topEditorBlog .topEditorBlogList__body .tit {
  font-size: 1.6rem;
  line-height: 1.75;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.topEditorBlog .topEditorBlogList__item.fade {
  -webkit-transform: translateY(55px);
          transform: translateY(55px);
}
.topEditorBlog .topEditorBlogList__item.fade.fade-up {
  -webkit-animation-name: fadeInUp1;
          animation-name: fadeInUp1;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.topEditorBlog .topEditorBlogList__item.fade:nth-of-type(3n+2) {
  -webkit-transform: translateY(85px);
          transform: translateY(85px);
}
.topEditorBlog .topEditorBlogList__item.fade:nth-of-type(3n+2).fade-up {
  -webkit-animation-name: fadeInUp2;
          animation-name: fadeInUp2;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

@-webkit-keyframes fadeInUp1 {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(-15px);
            transform: translateY(-15px);
  }
}

@keyframes fadeInUp1 {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(-15px);
            transform: translateY(-15px);
  }
}
@-webkit-keyframes fadeInUp2 {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(15px);
            transform: translateY(15px);
  }
}
@keyframes fadeInUp2 {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(15px);
            transform: translateY(15px);
  }
}
.topSeries {
  position: relative;
  padding-top: 112px;
  padding-bottom: 120px;
  z-index: 0;
}
.topSeries .bg-cloud-01 {
  position: absolute;
  inset: -65px -38px auto auto;
  z-index: 1;
}
.topSeries .topSeriesList {
  position: relative;
  margin-top: 120px;
  z-index: 0;
}
.topSeries .topSeriesList__logo {
  position: absolute;
  inset: -92px auto auto 35px;
  z-index: 1;
}
.topSeries .topSeriesList__list {
  display: grid;
  grid-auto-rows: 111px;
  grid-template-columns: repeat(2, 46.4%);
  gap: 20px 7.2%;
}
.topSeries .topSeriesList__item {
  position: relative;
}
.topSeries .topSeriesList__item a {
  display: -webkit-box;
  display: flex;
  width: 100%;
}
.topSeries .topSeriesList__item .topSeriesList__figure {
  position: relative;
  margin: 0;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.topSeries .topSeriesList__item .topSeriesList__figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.topSeries .topSeriesList__item:first-of-type {
  grid-row: 1/4;
}
.topSeries .topSeriesList__item:first-of-type a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
}
.topSeries .topSeriesList__item:first-of-type .topSeriesList__figure {
  width: 100%;
}
.topSeries .topSeriesList__item:first-of-type .topSeriesList__body {
  -webkit-box-flex: 1;
          flex: 1 1 auto;
  padding-top: 12px;
  padding-left: 16px;
  padding-right: 16px;
}
.topSeries .topSeriesList__item:not(:first-of-type) a {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
}
.topSeries .topSeriesList__item:not(:first-of-type) .topSeriesList__figure {
  -webkit-box-flex: 0;
          flex: 0 0 130px;
}
.topSeries .topSeriesList__item:not(:first-of-type) .topSeriesList__body {
  -webkit-box-flex: 1;
          flex: 1 1 auto;
  padding-left: 22px;
}
.topSeries .topSeriesList__item:nth-of-type(n+2) {
  border-bottom: 1px dotted #555;
}
.topSeries .topSeriesList__item:last-of-type {
  border-bottom: none;
}
.topSeries .topSeriesList__body .lead {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}
.topSeries .topSeriesList__body .lead svg {
  width: 13px;
}
.topSeries .topSeriesList__body .lead span {
  display: inline-block;
  margin-left: 6px;
  font-size: 1.2rem;
  font-weight: 700;
}
.topSeries .topSeriesList__body .tit {
  margin-top: 6px;
  font-size: 1.6rem;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.topSeries .topSeriesList__btn {
  margin-top: 120px;
}

.topSpecialTopics {
  padding-top: 126px;
  padding-bottom: 120px;
  background-color: #fceaea;
  box-shadow: 0 0 0 100vmax #fceaea;
  -webkit-clip-path: inset(0 -100vmax);
          clip-path: inset(0 -100vmax);
}
.topSpecialTopics.pb {
  padding-bottom: 180px;
}
.topSpecialTopics .topSpecialTopicsList {
  position: relative;
  margin-top: 102px;
  z-index: 0;
}
.topSpecialTopics .topSpecialTopicsList__logo {
  position: absolute;
  inset: 36px 26px auto auto;
  z-index: 1;
}

.topCategories {
  display: -webkit-box;
  display: flex;
}
.topCategories .topCategoriesTitle {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 3.8rem;
  font-weight: 700;
  color: #222;
}
.topCategories .topCategoriesList {
  margin-top: 45px;
}
.topCategories .topCategoriesBtn {
  margin-top: 40px;
}
.topCategories .topShopping {
  position: relative;
  -webkit-box-flex: 0;
          flex: 0 0 calc(50% + 20px);
}
.topCategories .topShopping .bg-cloud-02 {
  position: absolute;
  inset: -99px auto auto -103px;
  z-index: 1;
}
.topCategories .topShopping__logo {
  position: absolute;
  inset: 37px -87px auto auto;
  z-index: 2;
}
.topCategories .topShopping__inner {
  padding-top: 190px;
  padding-bottom: 120px;
  padding-right: 62px;
  background-color: #fff7d0;
  box-shadow: 0 0 0 100vmax #fff7d0;
  -webkit-clip-path: inset(0 0 0 -100vmax);
          clip-path: inset(0 0 0 -100vmax);
  mix-blend-mode: darken;
}
.topCategories .topEvent {
  position: relative;
  -webkit-box-flex: 0;
          flex: 0 0 calc(50% - 20px);
  margin-top: 300px;
}
.topCategories .topEvent .bg-cloud-01 {
  position: absolute;
  inset: -31px -44px auto auto;
  z-index: 1;
}
.topCategories .topEvent__logo {
  position: absolute;
  inset: auto -73px -38px auto;
  z-index: 2;
}
.topCategories .topEvent__inner {
  margin-right: -40px;
  padding-top: 161px;
  padding-bottom: 120px;
  padding-left: 62px;
  background-color: #ffefe6;
  box-shadow: 0 0 0 100vmax #ffefe6;
  -webkit-clip-path: inset(0 -100vmax 0 0);
          clip-path: inset(0 -100vmax 0 0);
  -webkit-transform: translateX(-40px);
          transform: translateX(-40px);
  mix-blend-mode: darken;
}

.topRecipeRanking {
  position: relative;
  padding-top: 126px;
  padding-bottom: 140px;
  z-index: 0;
}
.topRecipeRanking::after {
  content: "";
  position: absolute;
  inset: -77px auto 0 98px;
  width: 508px;
  height: calc(100% + 77px);
  background-color: #e7daf5;
  z-index: -1;
  opacity: 0.7;
}
.topRecipeRanking .bg-cloud-02 {
  position: absolute;
  inset: auto auto 60px -15px;
  z-index: 1;
}
.topRecipeRanking__inner {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
}
.topRecipeRanking .topRecipeRankingTitle {
  -webkit-box-flex: 0;
          flex: 0 0 360px;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}
.topRecipeRanking .topRecipeRankingTitle svg {
  width: 36px;
}
.topRecipeRanking .topRecipeRankingTitle span {
  display: inline-block;
  margin-left: 15px;
  font-size: 3.8rem;
  font-weight: 700;
  color: #222;
}
.topRecipeRanking .topRecipeRankingList {
  margin-left: auto;
}
.topRecipeRanking .topRecipeRankingList > ul {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  min-width: 724px;
}
.topRecipeRanking .topRecipeRankingList > ul > li {
  display: -webkit-box;
  display: flex;
  width: 100%;
  padding-top: 16px;
  padding-bottom: 16px;
}
.topRecipeRanking .topRecipeRankingList > ul > li:not(:first-of-type) {
  border-top: 1px dotted #555;
}
.topRecipeRanking .topRecipeRankingList > ul > li a {
  display: -webkit-box;
  display: flex;
  position: relative;
  margin-left: 78px;
  z-index: 0;
}
.topRecipeRanking .topRecipeRankingList > ul > li a::before {
  content: "";
  position: absolute;
  inset: 0 auto auto -78px;
  width: 78px;
  height: 28px;
  background: url("/asset/frontend/img/crown_recipe_icon.svg") center 12px/22px no-repeat;
  z-index: 1;
}
.topRecipeRanking .topRecipeRankingList > ul > li a::after {
  content: "0";
  position: absolute;
  inset: 35px auto auto -78px;
  width: 78px;
  height: calc(100% - 35px);
  font-family: "Oswald", sans-serif;
  font-size: 4.2rem;
  font-weight: 700;
  text-align: center;
  color: #222;
  z-index: 1;
}
.topRecipeRanking .topRecipeRankingList > ul > li .imgWrap {
  -webkit-box-flex: 0;
          flex: 0 0 130px;
  position: relative;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 8px;
  margin-right: 0;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.topRecipeRanking .topRecipeRankingList > ul > li .imgWrap .img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  background-color: #eee;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.topRecipeRanking .topRecipeRankingList > ul > li .txtBox {
  -webkit-box-flex: 1;
          flex: 1 0 auto;
  padding-left: 32px;
}
.topRecipeRanking .topRecipeRankingList > ul > li .txtBox .tit {
  margin-top: -0.25em;
  font-family: "Noto Sans JP", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif !important;
  font-size: 1.6rem;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.topRecipeRanking .topRecipeRankingList > ul > li .txtBox .txt {
  display: none;
}
.topRecipeRanking .topRecipeRankingList > ul > li:first-child a::after {
  content: "1";
}
.topRecipeRanking .topRecipeRankingList > ul > li:nth-child(2) a::after {
  content: "2";
}
.topRecipeRanking .topRecipeRankingList > ul > li:nth-child(3) a::after {
  content: "3";
}
.topRecipeRanking .topRecipeRankingList > ul > li:nth-child(4) a::after {
  content: "4";
}
.topRecipeRanking .topRecipeRankingList > ul > li:nth-child(5) a::after {
  content: "5";
}

.topCheck {
  position: relative;
  margin-left: -2.04%;
  margin-right: -2.04%;
  padding-top: 120px;
  padding-bottom: 92px;
  background-color: #f8f7f6;
  z-index: 0;
  box-shadow: 0 0 0 100vmax #f8f7f6;
  -webkit-clip-path: inset(0 -100vmax);
          clip-path: inset(0 -100vmax);
}
.topCheck__inner {
  position: relative;
  width: 100%;
  height: 100%;
  padding-top: 120px;
  z-index: 33;
}
.topCheck .topCheckList {
  width: min(100%, 540px);
  margin-top: 123px;
  margin-inline: auto;
}

.contRight .topCheck {
  margin-inline: 0;
  padding: 20px 20px 30px;
  background-color: #fff;
  box-shadow: none;
  clip-path: none;
}
.contRight .topCheck .topSectionTitle {
  font-size: 26px;
}
.contRight .topCheck .topCheckList {
  margin-top: 18px;
}

.topPresent {
  position: relative;
  padding-top: 150px;
  padding-bottom: 120px;
  z-index: 2;
}
.topPresent .bg-cloud-01 {
  position: absolute;
  inset: -52px auto auto -63px;
  z-index: 1;
}
.topPresent .bg-cloud-02 {
  position: absolute;
  inset: auto -42px -120px auto;
  z-index: 2;
}
.topPresent__logo {
  position: absolute;
  inset: 50px -30px auto auto;
  z-index: 1;
}
.topPresent .topPresentBox {
  display: -webkit-box;
  display: flex;
  position: relative;
  height: 472px;
  padding: 73px 59px 104px;
  z-index: 0;
}
.topPresent .topPresentBox__bg-pc {
  position: absolute;
  inset: 50% auto auto 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -1;
}
.topPresent .topPresentBox__figure {
  -webkit-box-flex: 0;
          flex: 0 0 42.205%;
  margin: 0;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.topPresent .topPresentBox__figure a {
  display: block;
}
.topPresent .topPresentBox__figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.topPresent .topPresentBox__body {
  -webkit-box-flex: 0;
          flex: 0 0 57.795%;
  padding-left: 5.555%;
}
.topPresent .topPresentBox__title {
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.6;
  color: #222;
}
.topPresent .topPresentBox__title a {
  color: inherit;
}
.topPresent .topPresentBox__text {
  margin-top: 20px;
  font-size: 1.6rem;
  line-height: 1.6;
  color: #222;
}
.topPresent .topPresentBox__term {
  margin-top: 30px;
  padding-top: 14px;
  padding-bottom: 14px;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  font-size: 1.6rem;
  line-height: 1.4;
  color: #c68383;
}
.topPresent .topPresentBox__btn {
  position: absolute;
  inset: auto 0 -22px 0;
}

.topBooks {
  padding-top: 125px;
  padding-bottom: 120px;
  background-color: #f1eceb;
  box-shadow: 0 0 0 100vmax #f1eceb;
  -webkit-clip-path: inset(0 -100vmax);
          clip-path: inset(0 -100vmax);
  z-index: 0;
}
.topBooks .topBooksTitle {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
  color: #222;
}
.topBooks .topBooksTitle span {
  display: block;
  margin-top: 10px;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
.topBooks .topBooksTop {
  display: -webkit-box;
  display: flex;
  margin-top: 120px;
}
.topBooks .topBooksTop .topBooksTopNew {
  -webkit-box-flex: 0;
          flex: 0 0 29.744%;
}
.topBooks .topBooksTop .topBooksTopNew__figure {
  margin: 0;
}
.topBooks .topBooksTop .topBooksTopNew__body {
  padding-top: 20px;
  padding-left: 16px;
  padding-right: 16px;
}
.topBooks .topBooksTop .topBooksTopNew__body h3 {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}
.topBooks .topBooksTop .topBooksTopNew__body h3 .badge {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 68px;
  height: 32px;
  margin-right: 10px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  background-color: #222;
  color: #fff;
}
.topBooks .topBooksTop .topBooksTopNew__title {
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1.4;
  color: #222;
}
.topBooks .topBooksTop .topBooksTopNew__term {
  margin-top: 10px;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
  color: #222;
}
.topBooks .topBooksTop .topBooksTopBtns {
  -webkit-box-flex: 0;
          flex: 0 0 70.256%;
  padding-left: 10.427%;
}
.topBooks .topBooksTop .topBooksTopBtns .booksBtn {
  -webkit-box-flex: 0;
          flex: 0 0 100%;
}
.topBooks .topBooksTop .topBooksTopBtns .booksBtn a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  position: relative;
  width: 100%;
  height: 60px;
  border: 2px solid #222;
  border-radius: 30px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  background-color: #fff;
  color: #222;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.topBooks .topBooksTop .topBooksTopBtns .booksBtn a:hover {
  opacity: 0.8;
}
.topBooks .topBooksTop .topBooksTopBtns .booksBtn a svg {
  display: block;
  position: absolute;
  top: 50%;
  right: 30px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 18px;
  height: 7px;
  margin-right: 15px;
}
.topBooks .topBooksTop .topBooksTopBtns .booksBtn__icon {
  display: inline-block;
  margin-right: 5px;
}
.topBooks .topBooksTop .topBooksTopBtns .booksBtn:nth-child(5) .booksBtn__icon {
  margin-top: 3px;
}
.topBooks .topBooksTop .topBooksTopBtns .booksBtn--large a {
  height: 70px;
  border-radius: 35px;
}
.topBooks .topBooksTop .topBooksTopBtns .booksBtn--black a {
  background-color: #222;
  color: #fff;
}
.topBooks .topBooksTop .topBooksTopBtns .booksBtn--half {
  -webkit-box-flex: 0;
          flex: 0 0 calc(50% - 10px);
}
.topBooks .topBooksTop .topBooksTopBtns__top {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: 20px 0;
  padding-bottom: 30px;
  border-bottom: 1px dotted #555;
}
.topBooks .topBooksTop .topBooksTopBtns__bottom {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: 30px 20px;
  margin-top: 30px;
}
.topBooks .topBooksBottom {
  position: relative;
  margin-top: 152px;
  z-index: 0;
}
.topBooks .topBooksBottom .topBooksBottomBubble {
  position: absolute;
  inset: -23px auto auto -30px;
  padding: 23px 35px;
  z-index: 1;
}
.topBooks .topBooksBottom .topBooksBottomBubble span {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
}
.topBooks .topBooksBottom .topBooksBottomBubble__bg {
  position: absolute;
  inset: 0 auto auto 0;
  z-index: -1;
}
.topBooks .topBooksBottom .topBooksSlider {
  padding-bottom: 157px;
  background-color: #fff;
}
.topBooks .topBooksBottom .topBooksSlider__list .slick-list {
  padding-top: 115px !important;
}
.topBooks .topBooksBottom .topBooksSlider__item {
  padding-left: 23px;
  padding-right: 23px;
}
.topBooks .topBooksBottom .topBooksSlider__item a {
  display: block;
  width: 100%;
}
.topBooks .topBooksBottom .topBooksSlider__item.slick-center .topBooksSlider__figure {
  -webkit-transform: scale(1.18);
          transform: scale(1.18);
  -webkit-transform-origin: bottom center;
          transform-origin: bottom center;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.topBooks .topBooksBottom .topBooksSlider__figure {
  position: relative;
  width: 100%;
  margin: 0;
  aspect-ratio: 260/332;
}
.topBooks .topBooksBottom .topBooksSlider__figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.topBooks .topBooksBottom .topBooksSlider__body {
  padding-top: 6px;
}
.topBooks .topBooksBottom .topBooksSlider__body .tit {
  font-size: 1.6rem;
  line-height: 1.6;
  color: #222;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.topBooks .topBooksBottom .topBooksBottomBtn {
  position: absolute;
  inset: auto 0 42px;
}

/******************************
追加
******************************/
#contentTop .recipeTopSection {
  margin: 70px 0;
}

#contentTop .recipeTopSection .recipeTopList .slick-slide {
  height: 550px;
}

/******************************
カテゴリートップページ
******************************/
/* ページヘッダー */
.catPageHeader {
  min-width: 960px;
  height: 138px;
  margin: 0 calc(50% - 50vw);
  padding: 0 calc(50vw - 50%);
}
.catPageHeader .catPageHeaderIn {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  height: 100%;
  width: 96.666%;
  max-width: 1170px;
  margin: 0 auto;
  padding-right: 28%;
}
.catPageHeader .catPageHeaderIn .catPageTit {
  -webkit-box-flex: 0;
  flex: none;
  position: relative;
  margin-top: -27px;
  color: #222;
  font-size: 3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.catPageHeader .catPageHeaderIn .catPageTit::after {
  content: "";
  position: absolute;
  bottom: -39px;
  left: calc(50% - 92px);
  width: 184px;
  height: 28px;
}
.catPageHeader .catPageHeaderIn .catPageTxt {
  padding-left: 81px;
  color: #010101;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0.05em;
}

.catPageHeader--reading {
  background: #e6cbc1;
}
.catPageHeader--reading .catPageHeaderIn {
  padding-left: 17px;
}
.catPageHeader--reading .catPageHeaderIn .catPageTit::after {
  background: url("../img/title_decoration_03.png") left top/cover no-repeat;
}

.catPageHeader--shopping {
  background: #f7f7f7;
}
.catPageHeader--shopping .catPageHeaderIn {
  padding-left: 62px;
}
.catPageHeader--shopping .catPageHeaderIn .catPageTit::after {
  background: url("../img/title_decoration_02.png") left top/cover no-repeat;
}

.catPageHeader--joining {
  background: #f7f7f7;
}
.catPageHeader--joining .catPageHeaderIn {
  padding-left: 32px;
}
.catPageHeader--joining .catPageHeaderIn .catPageTit::after {
  background: url("../img/title_decoration_02.png") left top/cover no-repeat;
}

@media screen and (max-width: 1003px) {
  .catPageHeader {
    margin: 0;
  }
}
@media screen and (min-width: 1400px) {
  .catPageHeader .catPageHeaderIn {
    padding-right: 350px;
  }
}
/* ページヘッダーではない上部タイトル */
.catContHead .catContTit {
  margin-bottom: 30px;
  color: #222;
  font-size: 3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}

.catSlideSection {
  padding: 30px 0 0;
}
.catSlideSection:first-of-type {
  padding: 0;
}
.catSlideSection .catContTitHead {
  margin-bottom: 30px;
}
.catSlideSection ul {
  display: block;
}
.catSlideSection ul li {
  display: block;
  width: auto;
}
.catSlideSection ul li a {
  display: block;
  position: relative;
  padding-top: 61.29%;
  margin-bottom: 141px;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  text-decoration: none;
}
.catSlideSection ul li a .txtBox {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -141px;
  width: 86.022%;
  height: 210px;
  margin: 0 auto;
  padding: 23px 37px 0;
  background: #fff;
  border-radius: 5px;
  overflow: hidden;
}
.catSlideSection ul li a .cate {
  min-width: auto;
  min-width: initial;
  padding: 0;
  color: #666;
  font-size: 2rem;
  line-height: 40px;
  text-align: left;
  background: #fff;
}
.catSlideSection ul li a .cate img {
  display: inline-block;
  margin-right: 15px;
}
.catSlideSection ul li a .data {
  display: none;
}
.catSlideSection ul li a .tit {
  color: #010101;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.417;
  margin: 12px 0 0;
}
.catSlideSection ul li a .txt {
  display: none;
}
.catSlideSection ul li a .cateTags {
  position: absolute;
  bottom: 24px;
  left: 35px;
}
.catSlideSection ul li a .pr {
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
}
.catSlideSection ul li a .pr img {
  width: 100%;
}
.catSlideSection ul li + li {
  width: auto;
  border-left: none;
}

/* 「もっと見る」ボタン */
.catSection .contBtn {
  margin-top: 12px;
}

/* セクションレイアウト */
.catSlideSection + .catSection {
  margin-top: 96px;
}

.catSection + .catSection {
  margin-top: 55px;
}

.catContHead + .catSection {
  margin-top: 55px;
}

/* 「連載」等のタイトル */
.catContTitHead {
  padding: 28px 0 0;
  border-top: 1px solid #ddd;
}
.catContTitHead .catContTit {
  color: #222;
  font-size: 3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
}
.catContTitHead .catContTit span {
  display: block;
  margin-top: 12px;
  color: #666;
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
}
.catContTitHead .catContTit--noto {
  font-family: "Noto Sans", sans-serif;
}

/******************************
レシピ トップ
******************************/
/* 共通 */
.recipeTopHead .recipeTopTit {
  color: #222;
  font-size: 2.8rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
}
.recipeTopHead .recipeTopTit .prTxt {
  display: block;
  margin-top: 10px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #ababab;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipeTopHead .recipesSliderDate {
  display: block;
  margin-top: 21px;
  color: #666;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
}

.searchForm {
  padding: 12px 14px 12px 22px;
  background: #eeedeb;
}
.searchForm form {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
}
.searchForm form span {
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 32px;
  letter-spacing: 0;
}
.searchForm form input[type=text] {
  width: 79.11%;
  padding: 6px 30px 4px 14px;
  color: #323232;
  font-size: 1.3rem;
  border: none;
  border-radius: 5px;
}
.searchForm form button {
  display: block;
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 0;
  width: 17px;
  margin: auto 0;
  padding: 0;
  background: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

@media (max-width: 1120px) {
  .searchForm form input[type=text] {
    width: 72%;
  }
}
/* 左サイドバー */
.recipeCont {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
}
.recipeCont .sideRecipeSearch {
  width: 21.951%;
}
.recipeCont .sideRecipeSearch .sideRecipeHead {
  padding: 0 0 3px;
}
.recipeCont .sideRecipeSearch .sideRecipeHead .sideRecipeTit {
  padding-bottom: 15px;
  border-bottom: 1px solid #ddd;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.recipeCont .sideRecipeSearch .sideRecipeLink {
  margin-top: 15px;
  text-align: right;
}
.recipeCont .sideRecipeSearch .sideRecipeLink a {
  display: block;
  position: relative;
  padding-right: 16px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
}
.recipeCont .sideRecipeSearch .sideRecipeLink a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 3px;
  width: 7px;
  height: 7px;
  margin: auto 0;
  border-right: 1px solid #2d2c29;
  border-bottom: 1px solid #2d2c29;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.recipeCont .sideRecipeSearch .sideRecipeLink a:hover {
  color: #000;
}
.recipeCont .sideRecipeSearch .sideRecipeLink a:hover::after {
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}
.recipeCont .sideRecipeSearch .sideRecipeList {
  padding-bottom: 6px;
  border-bottom: 1px solid #ddd;
  z-index: 100;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li {
  position: relative;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li a {
  display: block;
  position: relative;
  padding: 10px 0 10px 10px;
  color: #222;
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 1.417;
  letter-spacing: 0;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li a:hover {
  color: #f60;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li a .pr {
  height: 100%;
  margin-left: 15px;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li a .pr img {
  width: 22px;
  vertical-align: middle;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li.hasInList a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 7px;
  width: 6px;
  height: 10px;
  margin: auto 0;
  border-right: none;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 6px solid #2d2c29;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li.hasInList:hover > a {
  color: #fff;
  background: #2d2c29;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li.hasInList .inListChild {
  display: none;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li.hasInList .inListChild a::after {
  content: normal;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li.hasInList .inListChild.mouseOn {
  display: block;
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 25;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li.hasInList .inListChild.mouseOn ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  width: 372px;
  padding: 10px 60px 10px 0;
  background: rgba(0, 0, 0, 0.8);
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li.hasInList .inListChild.mouseOn ul li {
  width: 156px;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li.hasInList .inListChild.mouseOn ul li a {
  display: block;
  padding: 10px 0 10px 34px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipeCont .sideRecipeSearch .sideRecipeList ul li.hasInList .inListChild.mouseOn ul li a:hover {
  color: #f60;
  background: transparent;
}
.recipeCont .sideRecipeSearch .sideRecipeBanner {
  margin-top: 30px;
}
.recipeCont .sideRecipeSearch .sideRecipeBanner a {
  display: block;
  padding: 14px 12px 15px;
  border: 3px solid #ddd;
  text-align: center;
}
.recipeCont .sideRecipeSearch .sideRecipeBanner a .sideRecipeBannerTit {
  margin-top: 8px;
  font-family: "Noto Sans", sans-serif;
  font-size: 1.7rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.recipeCont .sideRecipeSearch .sideRecipeBanner a .sideRecipeBannerTxt {
  margin-top: 6px;
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}

/* メインスライダー */
.recipeCont .recipeContMain {
  width: 75.61%;
}
.recipeCont .recipeContMain .recipeTopSection .contBtn {
  margin: 65px 0 30px;
}

.recipeTopSection {
  padding: 0;
  margin-bottom: 40px;
}
.recipeTopSection .recipeTopList {
  margin: 38px 0 42px;
}
.recipeTopSection .recipeTopList .slick-list {
  margin-bottom: 120px;
}
.recipeTopSection .recipeTopList .slick-slide {
  padding: 0 6px;
  height: 436px;
  overflow: hidden;
}
.recipeTopSection .recipeTopList ul::after {
  content: "";
  display: block;
  clear: both;
}
.recipeTopSection .recipeTopList ul li a {
  display: block;
  position: relative;
  padding-top: 61.29%;
  text-decoration: none;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.recipeTopSection .recipeTopList ul li a .txtBox {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -116px;
  width: 84.848%;
  height: 176px;
  margin: 0 auto;
  padding: 20px 30px 0;
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
  z-index: 2;
}
.recipeTopSection .recipeTopList ul li a .cate {
  display: block;
  margin-bottom: 0;
  padding: 0;
  color: #666;
  font-size: 2rem;
  font-weight: 800;
  line-height: 40px;
  letter-spacing: 0.05em;
  background: transparent;
  text-align: left;
  vertical-align: middle;
}
.recipeTopSection .recipeTopList ul li a .cate img {
  display: inline-block;
  width: 40px;
  margin-right: 17px;
}
.recipeTopSection .recipeTopList ul li a .data {
  display: none;
}
.recipeTopSection .recipeTopList ul li a .tit {
  margin: 12px 0 0;
  color: #222;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1.444;
  letter-spacing: 0;
}
.recipeTopSection .recipeTopList ul li a .txt {
  display: none;
}
.recipeTopSection .recipeTopList ul li a .cateTags {
  bottom: 10px;
  left: 30px;
}
.recipeTopSection .recipeTopList ul li a .pr {
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
}
.recipeTopSection .recipeTopList ul li a .pr img {
  width: 100%;
}

#contentTop .recipeTopSection .recipeTopList .slick-list {
  margin-bottom: 65px;
}

/* おすすめレシピから探す */
.recipeCont .recipeContMain .recommendedRecipes {
  padding-top: 30px;
  border-top: 1px solid #ddd;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesToday {
  margin-top: 40px;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesToday a {
  display: -webkit-box;
  display: flex;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesToday a .img {
  width: 45.161%;
  padding-top: 45.161%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesToday a .txtBox {
  width: 54.839%;
  padding: 16px 0 0 6.414%;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesToday a .txtBox h3 {
  color: #222;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesToday a .txtBox .data {
  margin-top: 30px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #ababab;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesToday a .txtBox .tit {
  margin-top: 11px;
  color: #222;
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.025em;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesToday a .txtBox .txt {
  margin-top: 30px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.466;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesList {
  margin-top: 50px;
  padding-bottom: 20px;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesList .recommendedRecipesListTit {
  color: #222;
  font-size: 1.7rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesList ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 40px;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesList ul li {
  width: calc((100% - 32px) / 2);
  margin-bottom: 20px;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesList ul li a {
  display: -webkit-box;
  display: flex;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesList ul li a .img {
  -webkit-box-flex: 0;
  flex: 0 0 120px;
  height: 120px;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesList ul li a .txtBox {
  padding: 23px 15px 0 17px;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesList ul li a .txtBox .data {
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #ababab;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContMain .recommendedRecipes .recommendedRecipesList ul li a .txtBox .tit {
  margin-top: 8px;
  color: #222;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}

/* レシピから探す */
.recipeCont .recipeContMain .recipesTopSliderSection {
  padding-top: 30px;
  border-top: 1px solid #ddd;
}
.recipeCont .recipeContMain .recipesTopSliderSection .recipesSliderList .recipesIndexSlider {
  margin-top: 34px;
}
.recipeCont .recipeContMain .recipesTopSliderSection .recipesSliderList .recipesIndexSlider li {
  padding: 0 5px;
}
.recipeCont .recipeContMain .recipesTopSliderSection .recipesSliderList .recipesIndexSlider li a {
  display: block;
}
.recipeCont .recipeContMain .recipesTopSliderSection .recipesSliderList .recipesIndexSlider li a .img {
  width: 100%;
  padding-top: 100%;
}
.recipeCont .recipeContMain .recipesTopSliderSection .recipesSliderList .recipesIndexSlider li a .txtBox {
  min-height: 50px;
  padding: 12px 14px 0 0;
}
.recipeCont .recipeContMain .recipesTopSliderSection .recipesSliderList .recipesIndexSlider li a .txtBox .tit {
  color: #222;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}
.recipeCont .recipeContMain .recipesTopSliderSection .recipesTopSliderSearch {
  margin-top: 30px;
}
.recipeCont .recipeContMain .recipesTopSliderSection .recipesTopSliderSearch form input[type=text] {
  width: 79.11%;
}
.recipeCont .recipeContMain .recipesTopSliderSection .contBtn {
  margin-top: 38px;
}
.recipeCont .recipeContMain .recipesTopSliderSection .contBtn a {
  width: 240px;
  height: 60px;
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList {
  margin-top: 25px;
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li {
  position: relative;
  padding: 40px 5px 0;
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 30px;
  height: 30px;
  margin: 0 auto;
  padding-top: 1px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li a {
  display: block;
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li a .img {
  padding-top: 100%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li a .txtBox {
  min-height: 50px;
  padding: 12px 14px 0 0;
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li a .txtBox .tit {
  color: #222;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li[data-index="1"]::before {
  content: "1";
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li[data-index="2"]::before {
  content: "2";
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li[data-index="3"]::before {
  content: "3";
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li[data-index="4"]::before {
  content: "4";
}
.recipeCont .recipeContMain .recipesTopSliderSection--ranking .recipesSliderList .recipesIndexRankingSlider li[data-index="5"]::before {
  content: "5";
}

@media (max-width: 1120px) {
  .recipeCont .recipeContMain .recipesTopSliderSection .recipesTopSliderSearch form input[type=text] {
    width: 72%;
  }
}
/* 人気のキーワードから探す */
.recipeCont .recipeContMain .recipesKeywordSliderSection {
  margin-top: 40px;
  padding-top: 30px;
  border-top: 1px solid #ddd;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList {
  margin-top: 30px;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordHead {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  height: 30px;
  padding: 0 25px;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordHead .recipesKeywordTit {
  color: #222;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 30px;
  letter-spacing: 0.1em;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordHead .recipesKeywordTit span {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 12px;
  padding-top: 1px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordHead .recipesKeywordMore a {
  position: relative;
  padding-right: 15px;
  color: #222;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordHead .recipesKeywordMore a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 7px;
  height: 7px;
  margin: auto 0;
  border-right: 1px solid #2d2c29;
  border-bottom: 1px solid #2d2c29;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordHead .recipesKeywordMore a:hover {
  color: #000;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordHead .recipesKeywordMore a:hover::after {
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordSlider {
  margin-top: 16px;
  padding: 0 20px;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordSlider li {
  padding: 0 5px;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordSlider li a {
  display: block;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordSlider li a .img {
  padding-top: 100%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordSlider li a .txtBox {
  min-height: 65px;
  padding: 12px 14px 0 0;
}
.recipeCont .recipeContMain .recipesKeywordSliderSection .recipesKeywordList .recipesKeywordSlider li a .txtBox .tit {
  color: #222;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}

/******************************
レシピ 関連
******************************/
.recipesRelatedSection {
  margin-top: 56px;
}
.recipesRelatedSection .recipesRelatedTit {
  color: #222;
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.recipesRelatedSection ul {
  margin-top: 25px;
  display: -webkit-box;
  display: flex;
}
.recipesRelatedSection ul li {
  -webkit-box-flex: 0;
          flex: 0 0 156px;
  max-width: 156px;
  padding: 0;
}
.recipesRelatedSection ul li:not(:first-child) {
  margin-left: 10px;
}
.recipesRelatedSection ul li img {
  width: 156px;
  -o-object-fit: cover;
     object-fit: cover;
}
.recipesRelatedSection ul li .txtBox {
  padding-top: 18px;
}
.recipesRelatedSection ul li .txtBox .tit {
  color: #222;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}

/******************************
レシピ スライダー
******************************/
.recipesSliderSection {
  margin-top: 56px;
}
.recipesSliderSection:first-of-type {
  margin-top: 80px;
}
.recipesSliderSection .recipesSliderTit {
  color: #222;
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.recipesSliderSection .recipesSliderTit img {
  margin-right: 12px;
}
.recipesSliderSection .recipesSliderTit .prTxt {
  padding-left: 20px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #ababab;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  vertical-align: middle;
}
.recipesSliderSection .recipesSliderList {
  margin-top: 25px;
}
.recipesSliderSection .recipesSliderList .recipesSlider li {
  padding: 0 10px;
}
.recipesSliderSection .recipesSliderList .recipesSlider li a {
  display: block;
  width: 100%;
}
.recipesSliderSection .recipesSliderList .recipesSlider li a .img {
  width: 100%;
  position: relative;
  aspect-ratio: 1/1;
}
.recipesSliderSection .recipesSliderList .recipesSlider li a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.recipesSliderSection .recipesSliderList .recipesSlider li a .txtBox {
  padding-top: 18px;
}
.recipesSliderSection .recipesSliderList .recipesSlider li a .txtBox .tit {
  color: #222;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}
.recipesSliderSection .recipesSliderList--ranking .slick-list {
  overflow-y: visible;
}
.recipesSliderSection .recipesSliderList--ranking .recipesSlider li {
  padding: 13px 10px 0;
}
.recipesSliderSection .recipesSliderList--ranking .recipesSlider li a {
  position: relative;
}
.recipesSliderSection .recipesSliderList--ranking .recipesSlider li a::before {
  content: "";
  position: absolute;
  top: -10px;
  left: -10px;
  width: 30px;
  height: 30px;
  padding-top: 1px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
  z-index: 5;
}
.recipesSliderSection .recipesSliderList--ranking .recipesSlider li[data-index="1"] a::before {
  content: "1";
}
.recipesSliderSection .recipesSliderList--ranking .recipesSlider li[data-index="2"] a::before {
  content: "2";
}
.recipesSliderSection .recipesSliderList--ranking .recipesSlider li[data-index="3"] a::before {
  content: "3";
}
.recipesSliderSection .recipesSliderList--ranking .recipesSlider li[data-index="4"] a::before {
  content: "4";
}
.recipesSliderSection .recipesSliderList--ranking .recipesSlider li[data-index="5"] a::before {
  content: "5";
}

/******************************
レシピ リスト
******************************/
.recipeCont .recipeContResult {
  width: 75.61%;
}
.recipeCont .recipeContResult .resultsSection .resultsHead .resultsTit {
  margin-bottom: 35px;
  font-size: 3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.recipeCont .recipeContResult .resultsSection .resultsHead .resultsTxt {
  color: #222;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContResult .resultsSection .resultsHead .resultsTxt .resultsTit {
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.36;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContResult .resultsSection .resultsHead .resultsTxt .resultsNum {
  color: #f60;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.36;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContResult .resultsSection .resultsList {
  margin-top: 38px;
}
.recipeCont .recipeContResult .resultsSection .resultsList ul li {
  padding: 23px 24px;
  border: 1px solid #ddd;
}
.recipeCont .recipeContResult .resultsSection .resultsList ul li a {
  display: -webkit-box;
  display: flex;
}
.recipeCont .recipeContResult .resultsSection .resultsList ul li a .img {
  -webkit-box-flex: 0;
  flex: 0 0 150px;
  width: 150px;
  height: 150px;
  position: relative;
}
.recipeCont .recipeContResult .resultsSection .resultsList ul li a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.recipeCont .recipeContResult .resultsSection .resultsList ul li a .txtBox {
  padding-left: 5.594%;
}
.recipeCont .recipeContResult .resultsSection .resultsList ul li a .txtBox .tit {
  color: #222;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContResult .resultsSection .resultsList ul li a .txtBox .txt {
  margin-top: 12px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.466;
  letter-spacing: 0;
}
.recipeCont .recipeContResult .resultsSection .resultsRelated {
  margin-top: 30px;
  padding: 20px 22px 15px;
  background-color: #eeedeb;
}
.recipeCont .recipeContResult .resultsSection .resultsRelated .resultsRelatedList {
  margin-top: 20px;
}
.recipeCont .recipeContResult .resultsSection .resultsRelated .resultsRelatedList li {
  display: inline-block;
  margin: 0 12px 12px 0;
}
.recipeCont .recipeContResult .resultsSection .resultsRelated .resultsRelatedList li a {
  color: #888;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  text-decoration: underline;
}
.recipeCont .recipeContResult .resultsSection .resultsRelated .moreShow .resultsRelatedList {
  display: none;
}
.recipeCont .recipeContResult .resultsSection .resultsRelated .moreShow .openLinks {
  display: block;
  color: #ff6600;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  text-align: right;
}
.recipeCont .recipeContResult .resultsSection .resultsRelated .moreShow .openLinks .iconArrowDown {
  display: inline-block;
  font-size: 80%;
  padding-left: 7px;
}
.recipeCont .recipeContResult .resultsSection .resultsSearch {
  margin-top: 20px;
  padding: 19px 20px 19px 22px;
  background-color: #eeedeb;
}
.recipeCont .recipeContResult .resultsSection .resultsSearch form input[type=text] {
  padding: 6px 30px 4px 14px;
  color: #323232;
  font-size: 1.3rem;
  border: none;
  border-radius: 5px;
}
.recipeCont .recipeContResult .resultsSection .resultsSearch form button {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  padding: 6px 20px 4px;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  background-color: #2d2c29;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.recipeCont .recipeContResult .resultsSection .resultsSearch form span {
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 34px;
  letter-spacing: 0;
}
.recipeCont .recipeContResult .resultsSection .resultsSearch form .searchTop {
  position: relative;
}
.recipeCont .recipeContResult .resultsSection .resultsSearch form .searchTop input[type=text] {
  width: 67.474%;
  margin-left: 1.73%;
}
.recipeCont .recipeContResult .resultsSection .resultsSearch form .searchTop input[type=text] + span {
  margin-left: 1.903%;
}
.recipeCont .recipeContResult .resultsSection .resultsSearch form .searchBottom {
  position: relative;
  margin-top: 15px;
  padding-left: 9.17%;
}
.recipeCont .recipeContResult .resultsSection .resultsSearch form .searchBottom input[type=text] {
  width: 56.228%;
}
.recipeCont .recipeContResult .resultsSection .resultsSearch form .searchBottom input[type=text] + span {
  margin-left: 1.903%;
}
.recipeCont .recipeContResult .basics {
  margin-top: 62px;
}
.recipeCont .recipeContResult .basics .basicsHead .basicsTit {
  text-align: center;
}
.recipeCont .recipeContResult .basics .basicsList {
  margin-top: 40px;
}
.recipeCont .recipeContResult .basics .basicsList ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}
.recipeCont .recipeContResult .basics .basicsList ul li {
  width: 46.774%;
  border-top: 1px solid #ddd;
}
.recipeCont .recipeContResult .basics .basicsList ul li:nth-last-of-type(-n+2) {
  border-bottom: 1px solid #ddd;
}
.recipeCont .recipeContResult .basics .basicsList ul li a {
  display: block;
  position: relative;
  padding: 12px 0 12px 15px;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContResult .basics .basicsList ul li a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 8px;
  height: 8px;
  margin: auto 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 8px solid #f60;
  border-right: none;
}
.recipeCont .recipeContResult .basics .basicsMore {
  margin-top: 20px;
  text-align: right;
}
.recipeCont .recipeContResult .basics .basicsMore a {
  position: relative;
  padding-right: 15px;
  color: #222;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
}
.recipeCont .recipeContResult .basics .basicsMore a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 7px;
  height: 7px;
  margin: auto 0;
  border-right: 1px solid #2d2c29;
  border-bottom: 1px solid #2d2c29;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.recipeCont .recipeContResult .basics .basicsMore a:hover {
  color: #000;
}
.recipeCont .recipeContResult .basics .basicsMore a:hover::after {
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}
.recipeCont .recipeContResult .recipes .recipesPager {
  margin-top: 42px;
  padding-bottom: 20px;
}
.recipeCont .recipeContResult .recipes .recipesPager .recipesCount {
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
}
.recipeCont .recipeContResult .recipes .recipesTab {
  padding-top: 14px;
  border-top: 1px solid #ddd;
}
.recipeCont .recipeContResult .recipes .recipesTab ul {
  display: -webkit-box;
  display: flex;
}
.recipeCont .recipeContResult .recipes .recipesTab ul li + li {
  margin-left: 10px;
}
.recipeCont .recipeContResult .recipes .recipesTab ul li a {
  display: block;
  padding: 7px 12px;
  color: #ababab;
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 14px;
  letter-spacing: 0;
  background-color: #fff;
  border: 1px solid #ababab;
  border-radius: 4px;
}
.recipeCont .recipeContResult .recipes .recipesTab ul li a img {
  margin-right: 2px;
}
.recipeCont .recipeContResult .recipes .recipesTab ul li a:not(.active):hover {
  opacity: 0.8;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.recipeCont .recipeContResult .recipes .recipesTab ul li a.active {
  color: #fff;
  background-color: #ababab;
}
.recipeCont .recipeContResult .recipes .recipesList {
  display: none;
  margin-top: 30px;
}
.recipeCont .recipeContResult .recipes .recipesList.active {
  display: block;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li {
  position: relative;
  width: 100%;
  padding: 30px;
  border-bottom: 1px solid #ddd;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li:first-of-type {
  padding: 0 30px 30px;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li a {
  display: -webkit-box;
  display: flex;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li a .img {
  -webkit-box-flex: 0;
  flex: 0 0 150px;
  height: 150px;
  position: relative;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li a:hover .img {
  opacity: 0.8;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li a .txtBox {
  padding-left: 20px;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li a .txtBox .tit {
  margin-top: 3px;
  color: #222;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.466;
  letter-spacing: 0;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li a .txtBox .txt {
  margin-top: 16px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.466;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li a .txtBox .ingredients {
  margin-top: 12px;
  color: #222;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0.05em;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li.sponsored {
  background-color: #f7f7f7;
}
.recipeCont .recipeContResult .recipes .recipesList--list ul li.sponsored a .pr {
  position: absolute;
  top: 0;
  right: 0;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li {
  margin-bottom: 20px;
  width: calc((100% - 15px) / 4);
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li:nth-of-type(4n+1) {
  clear: both;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li:not(:nth-of-type(4n+1)) {
  margin-left: 5px;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li a {
  display: block;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li a .img {
  position: relative;
  width: 100%;
  background-color: #eee;
  aspect-ratio: 1/1;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li a:hover .img {
  opacity: 0.8;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li a .txtBox {
  position: relative;
  min-height: 63px;
  padding-top: 12px;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li a .txtBox .tit {
  padding-right: 15px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li.sponsored a .txtBox {
  min-height: 90px;
  padding: 23px 0 0 14px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ddd;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li.sponsored a .txtBox .pr {
  position: absolute;
  top: 0;
  right: 0;
}
.recipeCont .recipeContResult .recipes .recipesList--block ul li.sponsored a .txtBox .pr img {
  width: 20px;
}

@media (max-width: 1157px) {
  .recipeCont .recipeContResult .resultsSection .resultsSearch form .searchTop input[type=text] {
    width: 62%;
  }
}
@media (max-width: 1057px) {
  .recipeCont .recipeContResult .resultsSection .resultsSearch form .searchTop input[type=text] {
    width: 55%;
  }
  .recipeCont .recipeContResult .resultsSection .resultsSearch form .searchBottom input[type=text] {
    width: 52%;
  }
}
/******************************
レシピ 詳細
******************************/
.recipesDetailSection {
  padding-top: 3px;
}
.recipesDetailSection .recipesDetailHead .recipesDetailMore {
  text-align: right;
}
.recipesDetailSection .recipesDetailHead .recipesDetailMore a {
  position: relative;
  padding-right: 15px;
  color: #222;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
}
.recipesDetailSection .recipesDetailHead .recipesDetailMore a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 8px;
  height: 8px;
  margin: auto 0;
  border-right: 1px solid #2d2c29;
  border-bottom: 1px solid #2d2c29;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.recipesDetailSection .recipesDetailHead .recipesDetailMore a:hover {
  color: #000;
}
.recipesDetailSection .recipesDetailHead .recipesDetailMore a:hover::after {
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}
.recipesDetailSection .recipesDetailHead .recipesTitle {
  margin-top: 20px;
  padding-bottom: 20px;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  border-bottom: 1px solid #ddd;
}
.recipesDetailSection .recipesDetailHead .recipesText {
  margin-top: 17px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0;
}
.recipesDetailSection .recipesDetailHead .member {
  margin-top: 23px;
}
.recipesDetailSection .recipesDetailHead .member .memberTxt + .memberTxt {
  margin-top: 7px;
}
.recipesDetailSection .recipesDetailHead .member .memberTxt span {
  font-family: "Noto Sans", sans-serif;
  color: #444;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipesDetailSection .recipesDetailContTop {
  display: -webkit-box;
  display: flex;
  margin-top: 20px;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailImg {
  -webkit-box-flex: 0;
  flex: 0 0 300px;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailImg img {
  width: 100%;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailIngredients {
  -webkit-box-flex: 1;
  flex: auto;
  margin-top: -20px;
  padding-left: 4.878%;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailIngredients .IngredientsTit {
  padding-bottom: 13px;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailIngredients .IngredientsList {
  border-top: 1px solid #ddd;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailIngredients .IngredientsList li {
  padding: 13px 0;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0;
  border-bottom: 1px solid #ddd;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailIngredients .IngredientsList li dl {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  width: 100%;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailIngredients .IngredientsList li dl dd {
  font-weight: 800;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailIngredients .nutritionTxt {
  margin-top: 14px;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailIngredients .nutritionTxt span {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0.05em;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailIngredients .nutritionTxt span img {
  margin-right: 9px;
}
.recipesDetailSection .recipesDetailContTop .recipesDetailIngredients .nutritionTxt span.salt img {
  padding-top: 2px;
}
.recipesDetailSection .recipesDetailContBottom {
  margin-top: 50px;
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionTit {
  padding-bottom: 13px;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList {
  border-top: 1px solid #ddd;
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li {
  display: -webkit-box;
  display: flex;
  position: relative;
  padding: 30px 0 30px 53px;
  border-bottom: 1px solid #ddd;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
          flex-direction: row-reverse;
  background-repeat: no-repeat;
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li::before {
  content: "";
  position: absolute;
  top: 30px;
  left: 0;
  width: 30px;
  height: 30px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:first-of-type::before {
  content: "1";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(2)::before {
  content: "2";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(3)::before {
  content: "3";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(4)::before {
  content: "4";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(5)::before {
  content: "5";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(6)::before {
  content: "6";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(7)::before {
  content: "7";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(8)::before {
  content: "8";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(9)::before {
  content: "9";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(10)::before {
  content: "10";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(11)::before {
  content: "11";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(12)::before {
  content: "12";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(13)::before {
  content: "13";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(14)::before {
  content: "14";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(15)::before {
  content: "15";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(16)::before {
  content: "16";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(17)::before {
  content: "17";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(18)::before {
  content: "18";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(19)::before {
  content: "19";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(20)::before {
  content: "20";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(21)::before {
  content: "21";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(22)::before {
  content: "22";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(23)::before {
  content: "23";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(24)::before {
  content: "24";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(25)::before {
  content: "25";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(26)::before {
  content: "26";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(27)::before {
  content: "27";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(28)::before {
  content: "28";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(29)::before {
  content: "29";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li:nth-of-type(30)::before {
  content: "30";
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li .txtBox {
  padding-right: 3.902%;
  -webkit-box-flex: 1;
          flex-grow: 1;
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li .txtBox .txt {
  margin-top: -3px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li .img {
  max-width: 200px;
  height: auto;
}
.recipesDetailSection .recipesDetailContBottom .instruction .instructionList li .img img {
  max-width: 200px;
  height: auto;
}
.recipesDetailSection .recipesDetailContBottom .instruction.preparation .instructionList li {
  padding-left: 0;
}
.recipesDetailSection .recipesDetailContBottom .instruction.preparation .instructionList li::before {
  content: normal;
}
.recipesDetailSection .recipesDetailInfo {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  margin-top: 14px;
}
.recipesDetailSection .recipesDetailInfo .published {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipesDetailSection .recipesDetailInfo .functions ul {
  display: -webkit-box;
  display: flex;
}
.recipesDetailSection .recipesDetailInfo .functions ul li a {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: 0.05em;
}
.recipesDetailSection .recipesDetailInfo .functions ul li a img {
  margin-right: 10px;
}
.recipesDetailSection .recipesDetailInfo .functions ul li:last-of-type a img {
  padding-top: 2px;
}
.recipesDetailSection .recipesDetailInfo .functions ul li + li {
  margin-left: 22px;
}

/* 関連キーワード */
.recipesDetailTag {
  margin-top: 60px;
}
.recipesDetailTag p {
  color: #222;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}
.recipesDetailTag ul {
  margin-top: 14px;
}

/* レシピを探す */
.recipesDetailSearch {
  margin-top: 22px;
}
.recipesDetailSearch form input[type=text] {
  width: 80.488%;
}

@media (max-width: 1120px) {
  .recipesDetailSearch form input[type=text] {
    width: 74%;
  }
}
/*freeAreaの印刷ボタンが回り込まないように*/
.otherrecipe {
  display: inline-block !important;
}

/* レシピ詳細 */
.recipesDetailContBottom .freeArea {
  margin-top: 1em;
}
.recipesDetailContBottom .freeArea img {
  display: block;
  max-width: 100%;
  height: auto;
}
.recipesDetailContBottom .freeArea .recipear img {
  margin: 0 auto;
}
.recipesDetailContBottom .freeArea .recipear .altxt {
  max-width: 745px;
}
.recipesDetailContBottom .freeArea .shohinp img {
  margin: 0 auto;
  margin: 0 auto;
}
.recipesDetailContBottom .freeArea .shohintxt {
  max-width: 640px;
  margin: 0 auto;
}

.recipesDetailSection .topFreeArea img {
  display: block;
  max-width: 100%;
  height: auto;
}

/******************************
書誌 トップ
******************************/
/* 共通 */
/* 本のお問い合わせ 検索 */
.booksLead {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  /* margin-top: 34px; */
}

.booksLead h3 {
  color: #666;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
}

.booksLead .booksLeadLeftInfo {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: end;
  align-items: flex-end;
  margin-top: 8px;
}

.booksLead .booksLeadLeftInfo p {
  margin-left: -0.5em;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.94;
  letter-spacing: 0.05em;
}

.booksLead .booksLeadLeftInfo .booksLeadLeftTel {
  margin-left: 20px;
  font-family: "Noto Sans", sans-serif;
  font-size: 2.8rem;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 0;
}

.booksLead .booksLeadLeftInfo .booksLeadLeftTel span {
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 0;
}

.booksLead .booksLeadright {
  width: 43.902%;
  min-width: 330px;
  margin-left: auto;
}

.booksSection + .booksSection {
  margin-top: 50px;
}

.booksSection .booksContTitHead {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  margin-bottom: 34px;
}

.booksSection .booksContTitHead .booksContTit {
  text-align: center;
}

.booksSection .booksContTitHead .booksContTit span {
  display: block;
  color: #222;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}

.booksSection .booksContTitHead .booksContTit img {
  margin-top: 12px;
}

/* 本を探す 検索 */
.booksSearch {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  max-width: 360px;
  padding: 14px 12px 14px 16px;
  background-color: #eeedeb;
}

.booksSearch .booksSearchTit {
  flex: 1 0 auto;
  padding: 0 10px 0 0;
  color: #222;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 32px;
  letter-spacing: 0;
  white-space: nowrap;
}

.booksSearch .booksSearchTit img {
  margin-right: 7px;
  vertical-align: middle;
}

.booksSearch form {
  display: block;
  position: relative;
  width: 100%;
}

.booksSearch form input[type=text] {
  width: 100%;
  padding: 6px 30px 4px 14px;
  color: #323232;
  font-size: 1.3rem;
  border: none;
  border-radius: 5px;
}

.booksSearch form button {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  padding: 0 10px 0 5px;
  color: #696969;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* ポップアップバナー */
.popup-banner {
  position: fixed;
  bottom: 30px;
  right: 120px;
  left: auto;
  margin: 0;
  width: 300px;
  -webkit-transform: translateY(150%);
  transform: translateY(150%);
}
.popup-banner img {
  width: 100%;
  height: auto;
}
.popup-banner .close {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  height: 20px;
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
}
.popup-banner .close img {
  width: 100%;
}

.popup-banner.is_show {
  -webkit-transform: translateY(-40px);
  transform: translateY(-40px);
  -webkit-transition: bottom 700ms ease, -webkit-transform 700ms ease;
  transition: bottom 700ms ease, -webkit-transform 700ms ease;
  transition: bottom 700ms ease, transform 700ms ease;
  transition: bottom 700ms ease, transform 700ms ease, -webkit-transform 700ms ease;
}

/* 書誌リスト */
.booksSection .booksTypeList {
  width: 100%;
  margin-top: 22px;
}
.booksSection .booksTypeList ul {
  display: -webkit-box;
  display: flex;
}
.booksSection .booksTypeList ul .booksTypeListItem {
  position: relative;
  width: 33.333%;
  padding: 0 3.262% 164px;
  border: 1px solid #ddd;
}
.booksSection .booksTypeList ul .booksTypeListItem:not(:first-of-type) {
  border-left: none;
}
.booksSection .booksTypeList ul .booksTypeListItem .booksType {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  height: 88px;
}
.booksSection .booksTypeList ul .booksTypeListItem .img {
  display: block;
  position: relative;
  width: calc(100% - 20px);
  margin: 0 auto;
  padding-top: 125%;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  cursor: pointer;
}
.booksSection .booksTypeList ul .booksTypeListItem .img:hover {
  opacity: 0.8;
}
.booksSection .booksTypeList ul .booksTypeListItem .tit {
  margin-top: 30px;
  color: #222;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1.666;
  letter-spacing: 0.05em;
}
.booksSection .booksTypeList ul .booksTypeListItem .tit a {
  color: #222;
}
.booksSection .booksTypeList ul .booksTypeListItem .tit a:hover {
  text-decoration: underline;
}
.booksSection .booksTypeList ul .booksTypeListItem .releaseTxt {
  margin-top: 14px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.booksSection .booksTypeList ul .booksTypeListItem .releaseTxt span {
  display: block;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.booksSection .booksTypeList ul .booksTypeListItem .price {
  margin-top: 8px;
  color: #222;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.booksSection .booksTypeList ul .booksTypeListItem .price .txtMiddle {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: 0;
}
.booksSection .booksTypeList ul .booksTypeListItem .price .txtTax {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0;
}
.booksSection .booksTypeList ul .booksTypeListItem .txt {
  margin-top: 20px;
  color: #222;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.692;
  letter-spacing: 0;
}
.booksSection .booksTypeList ul .booksTypeListItem .squareBtn {
  position: absolute;
  bottom: 88px;
  left: 0;
  right: 0;
  width: 80%;
  height: 50px;
  margin: 0 auto;
  border-radius: 5px;
  background: #fff;
  border: 1px solid #2d2c29;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.booksSection .booksTypeList ul .booksTypeListItem .squareBtn a {
  display: block;
  position: relative;
  color: #222;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 50px;
  letter-spacing: 0.04em;
  text-align: center;
}
.booksSection .booksTypeList ul .booksTypeListItem .squareBtn a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 7.692%;
  width: 8px;
  height: 8px;
  margin: auto 0;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: center;
  transform-origin: center;
}
.booksSection .booksTypeList ul .booksTypeListItem .squareBtn:hover {
  opacity: 0.8;
}
.booksSection .booksTypeList ul .booksTypeListItem .squareBtn + .squareBtn {
  bottom: 28px;
}
.booksSection .booksTypeList ul .booksTypeListItem .squareBtn.btnBlack {
  background: #2d2c29;
}
.booksSection .booksTypeList ul .booksTypeListItem .squareBtn.btnBlack a {
  color: #fff;
}
.booksSection .booksTypeList ul .booksTypeListItem .squareBtn.btnBlack a::after {
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

/* 書誌検索リスト */
.booksListSection {
  margin-top: 50px;
}
.booksListSection .booksSectionListTit {
  color: #222;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.booksListSection .booksSectionListTit img {
  vertical-align: middle;
  padding-bottom: 2px;
}
.booksListSection .booksSearchList {
  margin-top: 30px;
  width: 100%;
}
.booksListSection .booksSearchList ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 15px;
  padding: 30px 36px 15px;
  border: 1px solid #ddd;
}
.booksListSection .booksSearchList ul li {
  width: 25%;
  margin-bottom: 15px;
}
.booksListSection .booksSearchList ul li a {
  display: block;
  color: #222;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.booksListSection .booksSearchList ul li a:hover {
  opacity: 0.8;
}

/* おすすめ */
.booksRecommendationSection {
  margin-top: 50px;
}
.booksRecommendationSection .booksRecommendationTit {
  color: #222;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.booksRecommendationSection .booksRecommendationList {
  margin-top: 20px;
}
.booksRecommendationSection .booksRecommendationList ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.booksRecommendationSection .booksRecommendationList ul li {
  width: 20%;
  border: 1px solid #ddd;
}
.booksRecommendationSection .booksRecommendationList ul li:not(:nth-of-type(5n+1)) {
  border-left: none;
}
.booksRecommendationSection .booksRecommendationList ul li:nth-of-type(n+6) {
  border-top: none;
}
.booksRecommendationSection .booksRecommendationList ul li a {
  display: block;
  position: relative;
  height: 100%;
  padding: 15px 15px 67px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.booksRecommendationSection .booksRecommendationList ul li a .img {
  position: relative;
  width: calc(100% - 12px);
  margin: 0 auto;
  padding-top: 125%;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.booksRecommendationSection .booksRecommendationList ul li a .tit {
  margin-top: 10px;
  color: #010101;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1.385;
  letter-spacing: 0;
}
.booksRecommendationSection .booksRecommendationList ul li a .squareBtn {
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
  width: 80%;
  height: 30px;
  margin: 0 auto;
  background: #2d2c29;
  border-radius: 5px;
  border: 1px solid #2d2c29;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.booksRecommendationSection .booksRecommendationList ul li a .squareBtn span {
  display: block;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 30px;
  letter-spacing: 0.05em;
  text-align: center;
}
.booksRecommendationSection .booksRecommendationList ul li a .squareBtn span::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 7.692%;
  width: 8px;
  height: 8px;
  margin: auto 0;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: center;
  transform-origin: center;
}
.booksRecommendationSection .booksRecommendationList ul li a:hover .img {
  opacity: 0.8;
}
.booksRecommendationSection .booksRecommendationList ul li a:hover .tit {
  text-decoration: underline;
}
.booksRecommendationSection .booksRecommendationList ul li a:hover .squareBtn {
  opacity: 0.8;
}

/* 本の内容について */
.booksNotificationSection {
  margin-top: 50px;
}
.booksNotificationSection .booksSectionListTit {
  color: #222;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.booksNotificationSection .booksSectionListTit img {
  vertical-align: middle;
  padding-bottom: 2px;
}
.booksNotificationSection .booksNotificationList {
  margin-top: 25px;
}
.booksNotificationSection .booksNotificationList ul {
  width: 100%;
  border-top: 1px solid #ddd;
}
.booksNotificationSection .booksNotificationList ul li {
  width: 100%;
  border-bottom: 1px solid #ddd;
}
.booksNotificationSection .booksNotificationList ul li:not(:first-of-type) {
  border-top: none;
}
.booksNotificationSection .booksNotificationList ul li a {
  display: block;
  width: 100%;
  padding: 15px 24px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0.05em;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.booksNotificationSection .booksNotificationList ul li a:hover {
  opacity: 0.8;
}
.booksNotificationSection .booksNotificationList .contBtn {
  margin-top: 40px;
}

/******************************
書誌 リストページ
******************************/
.booksResultsSection .booksSearchWrap {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
  width: 100%;
}
.booksResultsSection .booksSearchWrap .booksSearch {
  width: 360px;
}
.booksResultsSection .resultsHead .resultsTxt {
  color: #222;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
.booksResultsSection .resultsHead .resultsTxt .resultsTit {
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.36;
  letter-spacing: 0.05em;
}
.booksResultsSection .resultsHead .resultsTxt .resultsNum {
  color: #f60;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.36;
  letter-spacing: 0.05em;
}
.booksResultsSection .booksResultsList ul {
  margin-top: 15px;
  border-top: 1px solid #ddd;
}
.booksResultsSection .booksResultsList ul li {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
  align-items: flex-start;
  width: 100%;
  padding: 30px;
  border-bottom: 1px solid #ddd;
}
.booksResultsSection .booksResultsList ul li .img {
  -webkit-box-flex: 0;
  flex: 0 0 150px;
  position: relative;
  width: 150px;
  margin: 0;
  padding-top: 192px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.booksResultsSection .booksResultsList ul li .img:hover {
  opacity: 0.8;
}
.booksResultsSection .booksResultsList ul li .txtBox {
  padding-left: 30px;
}
.booksResultsSection .booksResultsList ul li .txtBox .tit {
  margin-top: 4px;
  color: #222;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}
.booksResultsSection .booksResultsList ul li .txtBox .tit a {
  color: #222;
}
.booksResultsSection .booksResultsList ul li .txtBox .tit a:hover {
  text-decoration: underline;
}
.booksResultsSection .booksResultsList ul li .txtBox .releaseTxt {
  margin-top: 13px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.333;
  letter-spacing: 0.05em;
}
.booksResultsSection .booksResultsList ul li .txtBox .price {
  margin-top: 11px;
  color: #222;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}
.booksResultsSection .booksResultsList ul li .txtBox .price .txtTax {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}
.booksResultsSection .booksResultsList ul li .txtBox .txt {
  margin-top: 18px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.466;
  letter-spacing: 0.05em;
}
.booksResultsSection .booksResultsList ul li .txtBox .squareBtn {
  width: 128px;
  height: 40px;
  margin-top: 20px;
  border-radius: 5px;
  background: #2d2c29;
  border: 1px solid #2d2c29;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.booksResultsSection .booksResultsList ul li .txtBox .squareBtn a {
  display: block;
  position: relative;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 40px;
  letter-spacing: 0.05em;
  text-align: center;
}
.booksResultsSection .booksResultsList ul li .txtBox .squareBtn a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 7.692%;
  width: 8px;
  height: 8px;
  margin: auto 0;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: center;
  transform-origin: center;
}
.booksResultsSection .booksResultsList ul li .txtBox .squareBtn:hover {
  opacity: 0.8;
}
.booksResultsSection .booksPager {
  margin-top: 42px;
  padding-bottom: 0;
}
.booksResultsSection .booksPager .booksCount {
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
}

/******************************
書誌 詳細 ページ
******************************/
/* 共通 タブ部分 */
.booksIndex {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  margin-top: 40px;
  padding-bottom: 15px;
  border-bottom: 1px solid #ddd;
}
.booksIndex h2 img {
  width: 178px;
}
.booksIndex .booksIndexTab ul {
  display: -webkit-box;
  display: flex;
  margin-top: 6px;
}
.booksIndex .booksIndexTab ul .booksIndexTabItem a {
  width: 120px;
  padding: 8px 0;
  color: #222;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
  background: #fff;
  border: 1px solid #ddd;
}
.booksIndex .booksIndexTab ul .booksIndexTabItem a:hover {
  opacity: 0.8;
}
.booksIndex .booksIndexTab ul .booksIndexTabItem a.active {
  color: #fff;
  background: #222;
}
.booksIndex .booksIndexTab ul .booksIndexTabItem:first-of-type a {
  border-radius: 5px 0 0 5px;
  border-right: none;
}
.booksIndex .booksIndexTab ul .booksIndexTabItem:nth-of-type(2) a {
  border-radius: 0 5px 5px 0;
  border-left: none;
}

.booksDetailSection .booksDetail .booksDetailTop--sp {
  display: none;
}
.booksDetailSection .booksDetail .booksDetailTop--pc {
  display: -webkit-box;
  display: flex;
  margin-top: 40px;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailImg {
  width: 29.268%;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailImg > a {
  display: block;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailImg > a:hover {
  opacity: 0.8;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailImg > a .img {
  position: relative;
  width: 100%;
  margin: 0;
  padding-top: 125%;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt {
  width: 70.732%;
  padding-left: 4.878%;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .tit {
  color: #222;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .tit .booksDetailNew {
  display: inline-block;
  margin: 0 15px 0 0;
  padding: 4px 13px;
  font-family: "Noto Sans", sans-serif;
  color: #fff;
  font-size: 1.7rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.025em;
  background: #f60;
  border-radius: 5px;
  vertical-align: 1px;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .releaseTxt {
  margin-top: 26px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .releaseTxt span {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .price {
  margin-top: 20px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .price span {
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns {
  margin-top: 28px;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns .booksDetailbtnsTit {
  margin-bottom: 5px;
  color: #222;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns ul .booksDetailBtn {
  width: calc((100% - 15px) / 4);
  height: 40px;
  margin-bottom: 5px;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns ul .booksDetailBtn:not(:nth-of-type(4n+1)) {
  margin-left: 5px;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns ul .booksDetailBtn a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 15px;
  border: 1px solid #ddd;
  border-radius: 5px;
  color: #222;
  font-size: 1.1rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
  white-space: nowrap;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns ul .booksDetailBtn a:hover {
  opacity: 0.8;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns ul .booksDetailBtn a img {
  max-height: 100%;
  margin-right: 5px;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns ul .booksDetailBtn--large {
  width: calc(50% - 5px);
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns:first-of-type {
  margin-top: 40px;
}
.booksDetailSection .booksDetail .booksDetailTop--pc .booksDetailTxt .booksDetailbtns:first-of-type ul .booksDetailBtn:nth-of-type(3) a {
  flex-wrap: wrap;
  -webkit-box-pack: end;
  justify-content: flex-end;
  align-content: center;
}
.booksDetailSection .booksDetail .booksDetailLinkBtns {
  margin-top: 50px;
}
.booksDetailSection .booksDetail .booksDetailLinkBtns .booksDetailLinkBtnRow {
  display: -webkit-box;
  display: flex;
}
.booksDetailSection .booksDetail .booksDetailLinkBtns .booksDetailLinkBtnRow .booksDetailLinkBtn {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  height: 80px;
  padding: 0 12px;
  border: 1px solid #ddd;
  border-radius: 5px;
}
.booksDetailSection .booksDetail .booksDetailLinkBtns .booksDetailLinkBtnRow .booksDetailLinkBtn a {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.booksDetailSection .booksDetail .booksDetailLinkBtns .booksDetailLinkBtnRow .booksDetailLinkBtn a:hover {
  opacity: 0.8;
}
.booksDetailSection .booksDetail .booksDetailLinkBtns .booksDetailLinkBtnRow .booksDetailLinkBtn img {
  max-width: 100%;
}
.booksDetailSection .booksDetail .booksDetailLinkBtns .booksDetailLinkBtnRow .booksDetailLinkBtn--large {
  width: 100%;
}
.booksDetailSection .booksDetail .booksDetailLinkBtns .booksDetailLinkBtnRow .booksDetailLinkBtn--small {
  width: calc((100% - 20px) / 2);
}
.booksDetailSection .booksDetail .booksDetailLinkBtns .booksDetailLinkBtnRow .booksDetailLinkBtn--small:last-of-type {
  margin-left: 20px;
}
.booksDetailSection .booksDetail .booksDetailLinkBtns .booksDetailLinkBtnRow + .booksDetailLinkBtnRow {
  margin-top: 40px;
}
.booksDetailSection .booksDetail .rbn {
  margin: 30px auto;
}
.booksDetailSection .booksDetail .booksDetailBottomTit {
  margin-top: 40px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ddd;
}
.booksDetailSection .booksDetail .booksDetailBottomTit h3 {
  color: #222;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
}
.booksDetailSection .booksDetail .booksDetailBottom {
  display: -webkit-box;
  display: flex;
  margin-top: 30px;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailImg {
  width: 29.268%;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailImg > a {
  display: block;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailImg > a:hover {
  opacity: 0.8;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailImg > a .img {
  position: relative;
  width: 100%;
  margin: 0;
  padding-top: 125%;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailBottomTxt {
  width: 70.732%;
  padding-left: 4.878%;
  line-height: 1.466;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailBottomTxt .tit {
  color: #222;
  font-size: 2.2rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailBottomTxt .tit + p {
  margin-top: 30px;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailBottomTxt p {
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.466;
  letter-spacing: 0.05em;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailBottomTxt p span {
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.466;
  letter-spacing: 0.05em;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailBottomTxt p + .tit {
  margin-top: 30px;
}
.booksDetailSection .booksDetail .booksDetailBottom .booksDetailBottomTxt p + p {
  margin-top: 30px;
}
.booksDetailSection .booksDetail .squareBtnBooksDetail {
  width: 160px;
  height: 34px;
  margin: 12px auto 0;
}
.booksDetailSection .booksDetail .squareBtnBooksDetail:first-of-type {
  margin-top: 22px;
}
.booksDetailSection .booksDetail .squareBtnBooksDetail a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #222;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  border: 1px solid #bbb;
  border-radius: 5px;
  -webkit-transition: 0.02s;
  transition: 0.02s;
}
.booksDetailSection .booksDetail .squareBtnBooksDetail a img {
  margin-right: 12px;
}
.booksDetailSection .booksDetail .squareBtnBooksDetail a:hover {
  opacity: 0.8;
}
.booksDetailSection .booksDetail .squareBtnBooksDetail--gray a {
  color: #fff;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  background: #ddd;
  border: 1px solid #ddd;
}

/******************************
書誌 バックナンバーページ
******************************/
.booksBacknumberTab {
  margin-top: 12px;
}
.booksBacknumberTab ul {
  display: -webkit-box;
  display: flex;
}
.booksBacknumberTab ul .booksBacknumberTabItem {
  width: 70px;
}
.booksBacknumberTab ul .booksBacknumberTabItem:not(:first-of-type) {
  margin-left: 5px;
}
.booksBacknumberTab ul .booksBacknumberTabItem a {
  display: block;
  padding: 7px 0;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #222;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 5px;
}
.booksBacknumberTab ul .booksBacknumberTabItem a.active {
  color: #fff;
  background: #666;
}

.booksBacknumberSection .booksBacknumber .booksBacknumberList {
  display: none;
  margin-top: 30px;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li {
  position: relative;
  width: 25%;
  padding: 20px 24px 67px;
  border: 1px solid #ddd;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li:not(:nth-of-type(4n+1)) {
  border-left: none;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li:nth-of-type(n+5) {
  border-top: none;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .img {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding-top: 125%;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .img:hover {
  opacity: 0.8;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .tit {
  margin-top: 14px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.385;
  letter-spacing: 0;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .tit a {
  color: #222;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .tit a:hover {
  text-decoration: underline;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .price {
  margin-top: 15px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .txt {
  margin-top: 15px;
  color: #222;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.538;
  letter-spacing: 0;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .squareBtn {
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
  width: 62.255%;
  height: 30px;
  margin: 0 auto;
  background: #2d2c29;
  border-radius: 5px;
  border: 1px solid #2d2c29;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .squareBtn a {
  display: block;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 30px;
  letter-spacing: 0.05em;
  text-align: center;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .squareBtn a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 7.692%;
  width: 8px;
  height: 8px;
  margin: auto 0;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: center;
  transform-origin: center;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList ul li .squareBtn:hover {
  opacity: 0.8;
}
.booksBacknumberSection .booksBacknumber .booksBacknumberList.active {
  display: block;
}

/******************************
料理のきほん トップ ページ
******************************/
.basicsTopSection .basicsContTitHead h2 {
  text-align: center;
}
.basicsTopSection .basicsTopLead {
  margin-top: 30px;
  padding: 18px 40px;
  background: #f4f4f4;
}
.basicsTopSection .basicsTopLead p {
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.08em;
}
.basicsTopSection .basicsTopList {
  padding: 50px 0 5px;
  border-bottom: 1px solid #ddd;
}
.basicsTopSection .basicsTopList:first-of-type {
  margin-top: 5px;
}
.basicsTopSection .basicsTopList .basicsTopListTit {
  text-align: center;
}
.basicsTopSection .basicsTopList .basicsTopListTit .basicsTopListSubTit {
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.08em;
}
.basicsTopSection .basicsTopList .basicsTopListTit h3 {
  margin-top: 12px;
  color: #222;
  font-size: 3.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.15em;
  text-align: center;
}
.basicsTopSection .basicsTopList .basicsTopListTit h3 span {
  color: #f60;
}
.basicsTopSection .basicsTopList ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 28px;
}
.basicsTopSection .basicsTopList ul .basicsTopListItem {
  width: calc((100% - 60px) / 4);
}
.basicsTopSection .basicsTopList ul .basicsTopListItem:not(:nth-of-type(4n+1)) {
  margin-left: 20px;
}
.basicsTopSection .basicsTopList ul .basicsTopListItem a {
  display: block;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.basicsTopSection .basicsTopList ul .basicsTopListItem a .img {
  position: relative;
  width: 100%;
  margin: 0;
  padding-top: 100%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.basicsTopSection .basicsTopList ul .basicsTopListItem a .tit {
  min-height: 80px;
  padding: 20px 10px 0;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1.444;
  letter-spacing: 0.05em;
  text-align: center;
}
.basicsTopSection .basicsTopList ul .basicsTopListItem a:hover {
  opacity: 0.8;
}
.basicsTopSection .basicsBanner {
  margin-top: 70px;
}
.basicsTopSection .basicsBanner a {
  display: block;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.basicsTopSection .basicsBanner a:hover {
  opacity: 0.8;
}
.basicsTopSection .basicsBanner a img {
  width: 100%;
  height: auto;
}

/******************************
料理のきほんページ 共通
******************************/
/* ページヘッダー */
.basicsPageHeader {
  min-width: 960px;
  height: 138px;
  margin: 0 calc(50% - 50vw);
  padding: 0 calc(50vw - 50%);
  background: #f4f4f4;
}
.basicsPageHeader .basicsPageHeaderIn {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  width: calc(100% - 350px);
  max-width: 820px;
  height: 100%;
  padding-top: 43px;
}
.basicsPageHeader .basicsPageHeaderIn .basicsPageTxt {
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.08em;
}
.basicsPageHeader .basicsPageHeaderIn .basicsPageTit {
  display: inline-block;
  margin-top: 12px;
  color: #222;
  font-size: 3.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.15em;
}
.basicsPageHeader .basicsPageHeaderIn .basicsPageTit span {
  color: #f60;
}
.basicsPageHeader .basicsPageHeaderIn .basicsPageCatTit {
  display: inline-block;
  margin: 12px 0 0 0;
  font-size: 3.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.15em;
}

@media screen and (max-width: 1003px) {
  .basicsPageHeader {
    margin: 0;
  }
}
/******************************
料理のきほんページ 一覧
******************************/
.basicsListSection .basicsListTit {
  margin-top: 32px;
  color: #222;
  font-size: 3.2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.15em;
  text-align: center;
}
.basicsListSection .basicsList ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 30px;
}
.basicsListSection .basicsList ul .basicsTopListItem {
  width: calc((100% - 60px) / 4);
}
.basicsListSection .basicsList ul .basicsTopListItem:not(:nth-of-type(4n+1)) {
  margin-left: 20px;
}
.basicsListSection .basicsList ul .basicsTopListItem a {
  display: block;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.basicsListSection .basicsList ul .basicsTopListItem a .img {
  position: relative;
  width: 100%;
  margin: 0;
  padding-top: 100%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.basicsListSection .basicsList ul .basicsTopListItem a .tit {
  min-height: 80px;
  padding: 14px 8px 0;
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.444;
  letter-spacing: 0.05em;
  text-align: center;
}
.basicsListSection .basicsList ul .basicsTopListItem a:hover {
  opacity: 0.8;
}

/******************************
料理のきほんページ 詳細
******************************/
.basicsDetailSection .basicsDetailTit {
  margin-top: 32px;
  color: #222;
  font-size: 3.2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.15em;
  text-align: center;
}
.basicsDetailSection .basicsDetail {
  margin-top: 30px;
  padding-bottom: 60px;
  border-bottom: 1px solid #ddd;
}
.basicsDetailSection .basicsDetail img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.basicsDetailSection .basicsDetail p {
  color: #222;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.basicsDetailSection .basicsDetail p + p {
  margin-top: 32px;
}
.basicsDetailSection .basicsDetail .basicsDetailImg {
  width: 100%;
}
.basicsDetailSection .basicsDetail .basicsDetailImg img {
  width: 100%;
  height: auto;
}
.basicsDetailSection .basicsDetail .basicsDetailTxt {
  margin-top: 32px;
  color: #222;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.basicsDetailSection .basicsDetail .articleDetailSns {
  margin-top: 50px;
}

/* 料理のきほん 詳細 スライダー */
.basicsSliderSection {
  margin-top: 56px;
  padding-bottom: 60px;
  border-bottom: 1px solid #ddd;
}
.basicsSliderSection .basicsSliderTit {
  color: #222;
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
}
.basicsSliderSection .basicsSliderTit img {
  margin-right: 12px;
}
.basicsSliderSection .basicsSliderList {
  margin-top: 30px;
}
.basicsSliderSection .basicsSliderList .basicsSlider li {
  padding: 0 10px;
}
.basicsSliderSection .basicsSliderList .basicsSlider li a {
  display: block;
  width: 100%;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.basicsSliderSection .basicsSliderList .basicsSlider li a:hover {
  opacity: 0.8;
}
.basicsSliderSection .basicsSliderList .basicsSlider li a .img {
  width: 100%;
  padding-top: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.basicsSliderSection .basicsSliderList .basicsSlider li a .txtBox {
  padding-top: 18px;
}
.basicsSliderSection .basicsSliderList .basicsSlider li a .txtBox .tit {
  color: #222;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
  text-align: center;
}

/* 料理のきほん 詳細 リスト */
.basicsDetailListSection {
  margin-top: 50px;
}
.basicsDetailListSection .basicsDetailListTit {
  color: #222;
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
}
.basicsDetailListSection .basicsDetailList {
  margin-top: 30px;
}
.basicsDetailListSection .basicsDetailList ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.basicsDetailListSection .basicsDetailList ul .basicsDetailListItem {
  width: 33.333%;
  margin-bottom: 20px;
}
.basicsDetailListSection .basicsDetailList ul .basicsDetailListItem a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.basicsDetailListSection .basicsDetailList ul .basicsDetailListItem a:hover {
  opacity: 0.8;
}
.basicsDetailListSection .basicsDetailList ul .basicsDetailListItem a .img {
  -webkit-box-flex: 0;
  flex: 0 0 100px;
  position: relative;
  padding-top: 100px;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.basicsDetailListSection .basicsDetailList ul .basicsDetailListItem a .tit {
  padding: 0 20px;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 0.15em;
}

/******************************
料理のきほん 料理のまえに
******************************/
.basicsBeforeSection .txtlead .img {
  width: 368px;
  margin: 0 auto;
}
.basicsBeforeSection .txtlead .img img {
  width: 100%;
  height: auto;
}
.basicsBeforeSection .txtlead .txt {
  width: 788px;
  margin: 30px auto 0;
  color: #222;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.basicsBeforeSection .txtBlock {
  width: 600px;
  height: auto;
  margin: 0px 94px;
  padding: 0px;
  color: #222;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  line-height: 30px;
}
.basicsBeforeSection .txtBlock img {
  width: 100%;
  height: auto;
}
.basicsBeforeSection .txtBlockNarrow {
  width: 570px;
  height: auto;
  margin: 0px 94px 0px 124px;
  padding: 0px;
  color: #222;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  line-height: 30px;
}
.basicsBeforeSection .beforeBox {
  width: 788px;
  height: auto;
  background-image: url("../img/basics/bg_basics.jpg");
  background-repeat: repeat;
  display: block;
  margin: 0px;
  padding: 0px;
}
.basicsBeforeSection .beforeBox img {
  width: 100%;
  height: auto;
}

/******************************
オレぺエディターブログ 詳細
******************************/
.editorDetail {
  padding-top: 40px;
  padding-bottom: 157px;
  font-family: "Noto Sans JP", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif !important;
  line-height: 1.6;
  background-color: #f8f7f6;
  box-shadow: 0 0 0 100vmax #f8f7f6;
  -webkit-clip-path: inset(0 -100vmax -100vmax);
          clip-path: inset(0 -100vmax -100vmax);
}
.editorDetail .editorDetailImg {
  position: relative;
  width: 100%;
  z-index: 0;
}
.editorDetail .editorDetailImg .editorDetailImgBadge {
  position: absolute;
  inset: -20px auto auto 20px;
  width: 150px;
  height: 130px;
  z-index: 2;
}
.editorDetail .editorDetailImg__figure {
  position: relative;
  width: 100%;
  margin: 0;
  z-index: 1;
}
.editorDetail .editorDetailImg__figure img {
  width: 100%;
  height: auto;
}
.editorDetail .editorDetailImg__figure figcaption {
  margin-top: 1.2rem;
  margin-inline: auto;
  padding: 0 1.8rem;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  color: #222;
}
.editorDetail .editorDetailHead {
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
  padding-inline: 4.474%;
  font-family: "Noto Sans JP", sans-serif;
}
.editorDetail .editorDetailHead__cat {
  flex: 0 0 65%;
  max-width: 65%;
}
.editorDetail .editorDetailHead__cat a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 0 2px;
  border-bottom: 1px solid #9b918c;
  font-size: 1.2rem;
  line-height: 1.4;
  font-weight: 400;
  color: #9b918c;
}
.editorDetail .editorDetailHead__cat a img {
  width: 16px;
  margin-right: 10px;
}
.editorDetail .editorDetailHead__btn {
  flex: 0 0 40%;
  display: flex;
  justify-content: flex-end;
  max-width: 35%;
}
.editorDetail .editorDetailHead__btn .galleryBtn {
  width: 200px;
  height: 34px;
}
.editorDetail .editorDetailHead__btn .galleryBtn a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border: 2px solid #222;
  border-radius: 25px;
  font-size: 1.4rem;
  font-weight: 400;
  background-color: #fff;
  transition: background-color 0.3s ease;
}
.editorDetail .editorDetailHead__btn .galleryBtn a:hover {
  background-color: #efefef;
}
.editorDetail .editorDetailHead__btn .galleryBtn a img {
  display: block;
  width: 22px;
  margin-right: 8px;
}
.editorDetail .editorDetailHead__body {
  flex: 0 0 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  margin-top: 16px;
}
.editorDetail .editorDetailHead .editorDetailHeadAuthor {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
}
.editorDetail .editorDetailHead .editorDetailHeadAuthor a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.editorDetail .editorDetailHead .editorDetailHeadAuthor a:hover {
  opacity: 0.8;
}
.editorDetail .editorDetailHead .editorDetailHeadAuthor img {
  width: 42px;
  height: 42px;
  margin-right: 10px;
  border-radius: 50%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.editorDetail .editorDetailHead__body.has_border .editorDetailHeadAuthor img {
  border: 2px solid #ff6600;
}
.editorDetail .editorDetailHead .editorDetailHeadAuthor .editorDetailHeadName {
  font-size: 1.6rem;
  line-height: 1.4;
  font-weight: 400;
  color: #222;
}
.editorDetail .editorDetailHead .editorDetailHeadAuthor .editorDetailHeadMeta {
  margin-left: auto;
}
.editorDetail .editorDetailBody {
  margin-top: 32px;
  padding-inline: 4.474%;
  line-height: 1.6;
}
.editorDetail .editorDetailBody h1,
.editorDetail .editorDetailBody h2 {
  margin-bottom: 2.8rem;
  padding-left: 26px;
  border-left: 10px solid #ecef90;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.6;
}
.editorDetail .editorDetailBody h1:not(:first-child),
.editorDetail .editorDetailBody h2:not(:first-child) {
  margin-top: 5rem;
}
.editorDetail .editorDetailBody h3 {
  font-size: 2.4rem;
  margin-bottom: 2.8rem;
  font-weight: 700;
  line-height: 1.6;
}
.editorDetail .editorDetailBody h3:not(:first-child) {
  margin-top: 3.4rem;
}
.editorDetail .editorDetailBody h4 {
  margin-bottom: 2.8rem;
  padding-bottom: 10px;
  border-bottom: 2px dotted #ccc;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.6;
}
.editorDetail .editorDetailBody h4:not(:first-child) {
  margin-top: 3.4rem;
}
.editorDetail .editorDetailBody p {
  margin-top: 2.8rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.02em;
  color: #222;
}
.editorDetail .editorDetailBody p.italic {
  font-style: italic;
}
.editorDetail .editorDetailBody ul {
  margin-top: 1.6rem;
  list-style-type: disc;
  list-style-position: inside;
}
.editorDetail .editorDetailBody ul li {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.02em;
  color: #222;
}
.editorDetail .editorDetailBody ul li + li {
  margin-top: 4px;
}
.editorDetail .editorDetailBody ul.large-list {
  list-style-type: decimal;
}
.editorDetail .editorDetailBody ul.large-list li {
  padding-block: 25px;
  border-bottom: 2px dotted #ddd;
  line-height: 1.8;
}
.editorDetail .editorDetailBody ul.large-list li + li {
  margin-top: 0;
}
.editorDetail .editorDetailBody a {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.02em;
  color: #ff6600;
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
  -webkit-text-decoration-color: #ff6600;
          text-decoration-color: #ff6600;
}
.editorDetail .editorDetailBody a::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background: url(../img/window-restore.svg) center/cover no-repeat;
  margin-left: 5px;
  vertical-align: -2px;
}
.editorDetail .editorDetailBody blockquote {
  margin-top: 3.2rem;
  padding: 27px 30px;
  background-color: #fff;
}
.editorDetail .editorDetailBody blockquote p,
.editorDetail .editorDetailBody blockquote cite {
  margin: 0;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.6;
  color: #4a4a49;
}
.editorDetail .editorDetailBody blockquote cite {
  display: block;
  margin-top: 1.6rem;
  font-style: italic;
  text-align: right;
}
.editorDetail .editorDetailBody figure {
  display: block;
  width: 100%;
  margin: 3.2rem auto;
  text-align: center;
}
.editorDetail .editorDetailBody img {
  display: block;
  margin: 0 auto;
}
.editorDetail .editorDetailBody figcaption {
  margin-top: 1.2rem;
  margin-inline: auto;
  padding: 0 1.8rem;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  color: #222;
}
.editorDetail .editorDetailBody table {
  margin-top: 3.2rem;
  width: 100%;
  border-top: 1px solid #ccc;
}
.editorDetail .editorDetailBody table tr {
  border-bottom: 1px solid #ccc;
}
.editorDetail .editorDetailBody table th {
  padding: 20px 2.63%;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.6;
}
.editorDetail .editorDetailBody table td {
  padding: 20px 2.63% 20px 9.736%;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
}
.editorDetail .editorDetailBody .dialogue {
  margin-top: 4.8rem;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
          align-items: flex-start;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem + .dialogueItem {
  margin-top: 2.8rem;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem img {
  -webkit-box-flex: 0;
          flex: 0 0 13.421%;
  max-width: 102px;
  margin: 0;
  border-radius: 50%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem p {
  -webkit-box-flex: 0;
          flex: 0 0 78%;
  position: relative;
  margin: 0;
  padding: 23px 28px;
  border: 1px solid #ddd;
  border-radius: 12px;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.8;
  color: #222;
  background-color: #fff;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem--left p::after, .editorDetail .editorDetailBody .dialogue .dialogueItem--left p::before {
  content: "";
  right: 100%;
  top: 17%;
  border: solid transparent;
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem--left p::after {
  border-color: rgba(255, 255, 255, 0);
  border-top-color: #fff;
  border-right-color: #fff;
  border-width: 10px;
  margin-top: -10px;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem--left p::before {
  border-color: rgba(221, 221, 221, 0);
  border-top-color: #ddd;
  border-right-color: #ddd;
  border-width: 11px;
  margin-top: -11px;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem--right {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
          flex-direction: row-reverse;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem--right p::after, .editorDetail .editorDetailBody .dialogue .dialogueItem--right p::before {
  content: "";
  left: 100%;
  top: 17%;
  border: solid transparent;
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem--right p::after {
  border-color: rgba(255, 255, 255, 0);
  border-top-color: #fff;
  border-left-color: #fff;
  border-width: 10px;
  margin-top: -10px;
}
.editorDetail .editorDetailBody .dialogue .dialogueItem--right p::before {
  border-color: rgba(221, 221, 221, 0);
  border-top-color: #ddd;
  border-left-color: #ddd;
  border-width: 11px;
  margin-top: -11px;
}
.editorDetail .editorDetailBody .box {
  margin-top: 4.8rem;
  padding: 27px 30px;
  background-color: #fff;
}
.editorDetail .editorDetailBody .box h2 {
  padding-left: 17px;
  border-left: 5px solid #ecef90;
  font-size: 2rem;
}
.editorDetail .editorDetailBody .box h2:not(:first-child) {
  margin-top: 2rem;
}
.editorDetail .editorDetailBody .box h3 {
  font-size: 2rem;
}
.editorDetail .editorDetailBody .box h3:not(:first-child) {
  margin-top: 2rem;
}
.editorDetail .editorDetailBody .box h4 {
  font-size: 1.6rem;
}
.editorDetail .editorDetailBody .box h4:not(:first-child) {
  margin-top: 2rem;
}
.editorDetail .editorDetailTags {
  margin-top: 100px;
  padding: 40px 30px;
  background-color: #fff;
}
.editorDetail .editorDetailTags__title {
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
}
.editorDetail .editorDetailTags__list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: start;
          align-items: flex-start;
  flex-wrap: wrap;
  gap: 8px 30px;
  margin-top: 40px;
}
.editorDetail .editorDetailTags__item {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4;
  color: #222;
}
.editorDetail .editorDetailAuthor {
  margin-top: 60px;
  padding: 40px 38px;
  background-color: #fff;
}
.editorDetail .editorDetailAuthor__info a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: 20px;
  width: 100%;
}
.editorDetail .editorDetailAuthor__img {
  width: 102px;
  height: 102px;
  border-radius: 50%;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.editorDetail .editorDetailAuthor__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.editorDetail .editorDetailAuthor__title {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  color: #222;
}
.editorDetail .editorDetailAuthor__pref {
  margin-top: 4px;
}
.editorDetail .editorDetailAuthor__body {
  margin-top: 16px;
}
.editorDetail .editorDetailAuthor__text {
  font-size: 1.6rem;
  line-height: 1.8;
  color: #222;
}
.editorDetail .editorDetailAuthor__text a {
  text-decoration: underline;
  color: #ff6600;
}

.editorDetailList {
  margin-top: 100px;
  padding-inline: 20px;
}
.editorDetailList .editorDetailListTitle {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.277;
  text-align: center;
  color: #222;
}
.editorDetailList__list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: 16px 27px;
  margin-top: 44px;
}
.editorDetailList__item {
  -webkit-box-flex: 0;
          flex: 0 0 calc((100% - 54px) / 3);
  max-width: calc((100% - 54px) / 3);
}
.editorDetailList__item a {
  display: block;
  height: 100%;
  padding: 10px 10px 16px;
  background-color: #fff;
}

.editorDetailList__item.has_border .editorBlogCard__icon {
  border: 2px solid #ff6600;
}

.editorDetailList__series {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}
.editorDetailList__series svg {
  display: inline-block;
  width: 11px;
  margin-right: 4px;
}
.editorDetailList__series span {
  font-size: 1.2rem;
  line-height: 1.4;
  color: #222;
}
.editorDetailList__author {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}
.editorDetailList__author span {
  display: block;
  font-size: 1.2rem;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.editorDetailList__icon {
  -webkit-box-flex: 0;
          flex: 0 0 26px;
  position: relative;
  margin-right: 12px;
  border-radius: 50%;
  overflow: hidden;
  aspect-ratio: 1/1;
}
.editorDetailList__icon img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.editorDetailList__figure {
  position: relative;
  width: 100%;
  margin: 8px 0 0;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.editorDetailList__figure:first-child {
  margin-top: 0;
}
.editorDetailList__figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.editorDetailList__body {
  padding-top: 6px;
}
.editorDetailList__body .date {
  font-size: 1.6rem;
  line-height: 1.6;
  color: #222;
}
.editorDetailList__body .tit {
  margin-top: 2px;
  font-size: 1.6rem;
  line-height: 1.6;
  color: #222;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.editorDetailList__body .cat {
  margin-top: 6px;
  font-size: 1.4rem;
  line-height: 1.6;
  color: #9b918c;
}
.editorDetailList__body .favorite {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
          align-items: center;
  margin-top: 12px;
}
.editorDetailList__body .favorite svg {
  display: inline-block;
  width: 15px;
  margin-right: 7px;
  fill: #9B918C;
}
.editorDetailList__body .favorite span {
  display: inline-block;
  margin-top: -2px;
  font-size: 1.4rem;
  color: #9B918C;
}
.editorDetailList .editorDetailBtn {
  margin-top: 60px;
}

.articlesDetailPager {
  margin-top: 60px;
}
.articlesDetailPager ul {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}
.articlesDetailPager ul li {
  margin-inline: 3px;
}
.articlesDetailPager ul li a {
  display: block;
  min-width: 48px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #222;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 48px;
  letter-spacing: 0;
  text-align: center;
  text-decoration: none;
  background: transparent;
  border: none;
  border-radius: 24px;
  -webkit-transition: 0.1s linear;
  transition: 0.1s linear;
}
.articlesDetailPager ul li.active a {
  color: #fff;
  background-color: #222;
}
.articlesDetailPager ul li.first, .articlesDetailPager ul li.last {
  position: relative;
}
.articlesDetailPager ul li.first a, .articlesDetailPager ul li.last a {
  display: inline-block;
  position: absolute;
  inset: 0;
  min-width: 1px;
  margin: auto;
  width: 9px;
  height: 9px;
  border-radius: 0;
  -webkit-transform-origin: center;
          transform-origin: center;
}
.articlesDetailPager ul li.first {
  margin-right: 34px;
}
.articlesDetailPager ul li.first a {
  border-left: 2px solid #999;
  border-bottom: 2px solid #999;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.articlesDetailPager ul li.last {
  margin-left: 34px;
}
.articlesDetailPager ul li.last a {
  border-right: 2px solid #999;
  border-bottom: 2px solid #999;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/******************************
オレぺエディターブログ 一覧
******************************/
.editorPageHeader {
  position: relative;
  width: 100%;
  height: 516px;
  z-index: 0;
}
.editorPageHeader__bg-pc {
  position: absolute;
  inset: 0;
  margin: auto;
  background-size: auto;
  background-repeat: repeat-x;
  background-position: left top;
  z-index: -1;
}
.editorPageHeader__inner {
  width: min(100%, 1170px);
  height: 100%;
  margin-inline: auto;
  padding-top: 66px;
}
.editorPageHeader .editorPageTit {
  width: min(96%, 780px);
  margin-inline: auto;
}
.editorPageHeader .editorPageTit img {
  width: 100%;
  height: auto;
}
.editorPageHeader .editorPageTxt {
  width: min(96%, 372px);
  margin-top: 36px;
  margin-inline: auto;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0;
  text-align: center;
}

.editorPageHeader ~ .cont {
  padding-top: 110px;
  background-color: #f8f7f6;
  box-shadow: 0 0 0 100vmax #f8f7f6;
  -webkit-clip-path: inset(0 -100vmax);
          clip-path: inset(0 -100vmax);
}
.editorPageHeader ~ .cont .contLeft {
  max-width: 760px;
}

.editorBlogCard {
  padding: 10px 10px 15px;
  border-radius: 3px;
  background-color: #fff;
}
.editorBlogCard a {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  width: 100%;
  height: 100%;
}
.editorBlogCard__author {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}
.editorBlogCard__author span {
  display: block;
  font-size: 1.2rem;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.editorBlogCard__icon {
  -webkit-box-flex: 0;
          flex: 0 0 26px;
  position: relative;
  margin-right: 12px;
  border-radius: 50%;
  overflow: hidden;
  aspect-ratio: 1/1;
}
.editorBlogCard__icon img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.editorBlogCard__figure {
  position: relative;
  margin: 10px 0 0;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.editorBlogCard__figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.editorBlogCard__body {
  padding-top: 8px;
}
.editorBlogCard__body .tit {
  font-size: 1.6rem;
  line-height: 1.75;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.editorBlogCard__favorite {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
          align-items: center;
  margin-top: 14px;
}
.editorBlogCard__favorite svg {
  display: inline-block;
  width: 15px;
  margin-right: 7px;
  fill: #9B918C;
}
.editorBlogCard__favorite span {
  display: inline-block;
  margin-top: -2px;
  font-size: 1.4rem;
  color: #9B918C;
}

.editorArchiveTop {
  padding-top: 73px;
}
.editorArchiveTop .editorArchiveTopList {
  position: relative;
  padding: 82px 20px 60px;
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
  border-left: 1px solid #222;
}
.editorArchiveTop .editorArchiveTopList__list {
  display: grid;
  grid-template-columns: 63.888% 1fr;
  grid-template-rows: 265px 265px;
  gap: 20px 5.555%;
}
.editorArchiveTop .editorArchiveTopList__item:first-of-type {
  grid-row: 1/3;
}
.editorArchiveTop .editorArchiveTopList__item:first-of-type .editorBlogCard__icon {
  -webkit-box-flex: 0;
          flex: 0 0 38px;
}
.editorArchiveTop .editorArchiveTopList__item:first-of-type .editorBlogCard__author > span {
  -webkit-box-flex: 1;
          flex: 1 0 auto;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
}
.editorArchiveTop .editorArchiveTopList__item:first-of-type .editorBlogCard__author span {
  font-size: 1.4rem;
}
.editorArchiveTop .editorArchiveTopList__item:first-of-type .editorBlogCard__body {
  padding-top: 16px;
}
.editorArchiveTop .editorArchiveTopList__item:first-of-type .editorBlogCard__body .tit {
  font-size: 2rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.editorArchiveTop .editorArchiveTopList__item:not(:first-of-type) .editorBlogCard__author {
  flex-wrap: wrap;
}
.editorArchiveTop .editorArchiveTopList__item:not(:first-of-type) .editorBlogCard__author > span {
  font-size: 1.2rem;
  -webkit-box-flex: 1;
          flex: 1 0 calc(100% - 40px);
  display: block;
}
.editorArchiveTop .editorArchiveTopList__item:not(:first-of-type) .editorBlogCard__figure {
  margin: 6px 0 0;
}
.editorArchiveTop .editorArchiveTopList__item:not(:first-of-type) .editorBlogCard__body {
  padding-top: 3px;
}
.editorArchiveTop .editorArchiveTopList__item:not(:first-of-type) .editorBlogCard__body .tit {
  width: 218px;
  font-size: 1.6rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.editorArchiveTop .editorArchiveTopList__item:not(:first-of-type) .editorBlogCard__favorite {
  margin-top: 10px;
}
.editorArchiveTop .editorArchiveTopList__item:not(:first-of-type) .editorBlogCard__favorite svg {
  width: 14px;
}
.editorArchiveTop .editorArchiveTopList__item:not(:first-of-type) .editorBlogCard__favorite span {
  font-size: 1.3rem;
}

.editorArchiveTop .editorArchiveTopList__item.has_border .editorBlogCard__icon {
  border: 2px solid #ff6600;
}

.editorArchiveTop .editorArchiveTopIcon {
  position: absolute;
  inset: -18px auto auto 20px;
}
.editorArchiveTop .editorArchiveTopLogo {
  position: absolute;
  inset: -73px 0 auto auto;
}
.editorArchiveTop .editorArchiveTopBtn {
  margin-top: 62px;
}

.editorArchiveBody {
  margin-top: 86px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 157px;
}
.editorArchiveBody .editorArchiveCat__list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.editorArchiveBody .editorArchiveCat__item {
  -webkit-box-flex: 0;
          flex: 0 0 33.333%;
  border-bottom: 2px solid #9b918c;
}
.editorArchiveBody .editorArchiveCat__item a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  padding: 14px 11px 12px;
  font-size: 1.3rem;
  line-height: 1.4;
  font-weight: 700;
  color: #9b918c;
}
.editorArchiveBody .editorArchiveCat__item a img {
  width: 16px;
  margin-right: 10px;
}
.editorArchiveBody .editorArchiveCat__item.is-active {
  border-bottom: 2px solid #222;
}
.editorArchiveBody .editorArchiveCat__item.is-active a {
  color: #222;
}
.editorArchiveBody .editorArchiveBtn {
  margin-top: 58px;
}

.editorArchiveList {
  margin-top: 42px;
}
.editorArchiveList__list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.editorArchiveList__item {
  -webkit-box-flex: 0;
          flex: 0 1 calc((100% - 60px) / 3);
  max-width: calc((100% - 60px) / 3);
}
.editorArchiveList__item .editorBlogCard__figure {
  aspect-ratio: 1/1;
}
.editorArchiveList__item.has_border .editorBlogCard__icon {
  border: 2px solid #ff6600;
}

.editorArchiveSpecialTopics {
  padding-top: 126px;
  padding-bottom: 208px;
  background-color: #fceaea;
  box-shadow: 0 0 0 100vmax #fceaea;
  -webkit-clip-path: inset(0 -100vmax);
          clip-path: inset(0 -100vmax);
}
.editorArchiveSpecialTopics .editorArchiveSpecialTopicsList {
  position: relative;
  margin-top: 108px;
  z-index: 0;
}
.editorArchiveSpecialTopics .editorArchiveSpecialTopicsList__logo {
  position: absolute;
  inset: -163px -14px auto auto;
  z-index: 2;
}
.editorArchiveSpecialTopics .editorArchiveSpecialTopicsList__list .item-wrap {
  padding-top: 45px;
}

/******************************
オレぺエディターブログ Books
******************************/
.editorBooks {
  padding-top: 118px;
  padding-bottom: 120px;
  background-color: #f1eceb;
  box-shadow: 0 0 0 100vmax #f1eceb;
  -webkit-clip-path: inset(0 -100vmax);
          clip-path: inset(0 -100vmax);
  z-index: 0;
}
.editorBooks .editorBooksTitle {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
  color: #222;
}
.editorBooks .editorBooksTitle span {
  display: block;
  margin-top: 10px;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
.editorBooks .editorBooksTop {
  margin-top: 120px;
}
.editorBooks .editorBooksTop .editorBooksTopNew {
  width: 100%;
}
.editorBooks .editorBooksTop .editorBooksTopNew__figure {
  max-width: 348px;
  margin: 0 auto;
  text-align: center;
}
.editorBooks .editorBooksTop .editorBooksTopNew__body {
  padding-top: 20px;
  padding-left: 16px;
  padding-right: 16px;
}
.editorBooks .editorBooksTop .editorBooksTopNew__body h3 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}
.editorBooks .editorBooksTop .editorBooksTopNew__body h3 .badge {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 68px;
  height: 32px;
  margin-right: 10px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  background-color: #222;
  color: #fff;
}
.editorBooks .editorBooksTop .editorBooksTopNew__title {
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1.4;
  color: #222;
}
.editorBooks .editorBooksTop .editorBooksTopNew__term {
  margin-top: 10px;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
  color: #222;
}
.editorBooks .editorBooksTop .editorBooksTopBtns {
  max-width: 700px;
  margin-top: 58px;
  margin-inline: auto;
}
.editorBooks .editorBooksTop .editorBooksTopBtns .booksBtn {
  -webkit-box-flex: 0;
          flex: 0 0 100%;
}
.editorBooks .editorBooksTop .editorBooksTopBtns .booksBtn a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  position: relative;
  width: 100%;
  height: 60px;
  border: 2px solid #222;
  border-radius: 30px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  background-color: #fff;
  color: #222;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.editorBooks .editorBooksTop .editorBooksTopBtns .booksBtn a:hover {
  opacity: 0.8;
}
.editorBooks .editorBooksTop .editorBooksTopBtns .booksBtn a svg {
  display: block;
  position: absolute;
  top: 50%;
  right: 30px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 18px;
  height: 7px;
  margin-right: 15px;
}
.editorBooks .editorBooksTop .editorBooksTopBtns .booksBtn__icon {
  display: inline-block;
  margin-right: 5px;
}
.editorBooks .editorBooksTop .editorBooksTopBtns .booksBtn:nth-child(5) .booksBtn__icon {
  margin-top: 3px;
}
.editorBooks .editorBooksTop .editorBooksTopBtns .booksBtn--large a {
  height: 70px;
  border-radius: 35px;
}
.editorBooks .editorBooksTop .editorBooksTopBtns .booksBtn--black a {
  background-color: #222;
  color: #fff;
}
.editorBooks .editorBooksTop .editorBooksTopBtns .booksBtn--half {
  -webkit-box-flex: 0;
          flex: 0 0 calc(50% - 10px);
}
.editorBooks .editorBooksTop .editorBooksTopBtns__top {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: 20px 0;
  padding-bottom: 30px;
  border-bottom: 1px dotted #555;
}
.editorBooks .editorBooksTop .editorBooksTopBtns__bottom {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: 30px 20px;
  margin-top: 30px;
}
.editorBooks .editorBooksBottom {
  position: relative;
  margin-top: 138px;
  z-index: 0;
}
.editorBooks .editorBooksBottom .editorBooksBottomBubble {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  position: absolute;
  inset: -23px auto auto -30px;
  width: 217px;
  height: 85px;
  padding-top: 23px;
  z-index: 1;
}
.editorBooks .editorBooksBottom .editorBooksBottomBubble span {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
}
.editorBooks .editorBooksBottom .editorBooksBottomBubble__bg {
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.editorBooks .editorBooksBottom .editorBooksBottomBubble__bg img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.editorBooks .editorBooksBottom .editorBooksSlider {
  padding-bottom: 157px;
  background-color: #fff;
}
.editorBooks .editorBooksBottom .editorBooksSlider__list .slick-list {
  padding-top: 115px !important;
}
.editorBooks .editorBooksBottom .editorBooksSlider__item a {
  display: block;
  width: 100%;
  max-width: 100%;
  padding-left: 28px;
  padding-right: 28px;
}
.editorBooks .editorBooksBottom .editorBooksSlider__item.slick-center .editorBooksSlider__figure {
  -webkit-transform: scale(1.12);
          transform: scale(1.12);
  -webkit-transform-origin: bottom center;
          transform-origin: bottom center;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.editorBooks .editorBooksBottom .editorBooksSlider__figure {
  position: relative;
  width: 100%;
  margin: 0;
  aspect-ratio: 260/332;
}
.editorBooks .editorBooksBottom .editorBooksSlider__figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.editorBooks .editorBooksBottom .editorBooksSlider__body {
  padding-top: 6px;
}
.editorBooks .editorBooksBottom .editorBooksSlider__body .tit {
  font-size: 1.6rem;
  line-height: 1.6;
  color: #222;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.editorBooks .editorBooksBottom .editorBooksBottomBtn {
  position: absolute;
  inset: auto 0 42px;
}

/******************************
オレぺエディタープロフィール 一覧
******************************/
.editorProfArchive {
  width: min(100%, 720px);
  margin-inline: auto;
  font-family: "Noto Sans JP", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif !important;
}
.editorProfArchive .editorProfArchiveTitle {
  font-size: 24px;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0;
  text-align: center;
}
.editorProfArchive .editorProfArchiveCat {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
          justify-content: flex-end;
  margin-top: 20px;
  margin-left: auto;
}
.editorProfArchive .editorProfArchiveCat__list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
          justify-content: flex-end;
  gap: 0 10px;
}
.editorProfArchive .editorProfArchiveCat__item a {
  display: block;
  position: relative;
  padding-inline: 0.3em;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  color: #d3d3d3;
}
.editorProfArchive .editorProfArchiveCat__item.is-active a {
  color: #222;
}
.editorProfArchive .editorProfArchiveCat__item.is-active a::after {
  content: "";
  position: absolute;
  inset: auto 0 -10px;
  width: 100%;
  height: 2px;
  background-color: #222;
}
.editorProfArchive .editorProfArchiveList {
  margin-top: 52px;
}
.editorProfArchive .editorProfArchiveList__list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.editorProfArchive .editorProfArchiveList__list + .editorProfArchiveList__list {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px dashed #d3d3d3;
}
.editorProfArchive .editorProfArchiveList__item {
  -webkit-box-flex: 0;
          flex: 0 1 calc((100% - 80px) / 5);
  max-width: calc((100% - 80px) / 5);
}
.editorProfArchive .editorProfArchiveList__item a {
  display: block;
  padding: 10px 9px 12px;
  background-color: #fff;
}

.editorProfCard a {
  display: block;
  height: 100%;
  padding: 10px 9px 14px;
  background-color: #fff;
}
.editorProfCard__figure {
  position: relative;
  margin: 0;
  border: 2px solid #ff6600;
  border-radius: 50%;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.editorProfArchiveList__list:not(.has_border) .editorProfCard__figure {
  border: none;
}

.editorProfCard__figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.editorProfCard__body {
  padding-top: 10px;
}
.editorProfCard__body .tit {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.editorProfCard__body .pref {
  margin-top: 4px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0;
  text-align: right;
}

.editorProfRelated {
  width: min(100%, 720px);
  margin-top: 100px;
  margin-inline: auto;
}
.editorProfRelated.pb {
  padding-bottom: 160px;
}
.editorProfRelated .editorProfRelatedTitle {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
}
.editorProfRelated .editorProfRelatedTitle svg {
  width: 37px;
  height: 37px;
}
.editorProfRelated .editorProfRelatedTitle span {
  display: inline-block;
  margin-top: 18px;
  font-family: "Noto Sans JP", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif !important;
  font-size: 2.4rem;
  font-weight: 700;
  color: #222;
}
.editorProfRelated .editorProfRelatedBtn {
  margin-top: 60px;
}

/******************************
オレぺエディタープロフィール 詳細
******************************/
.editorProfDetail {
  font-family: "Noto Sans JP", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif !important;
}
.editorProfDetail .editorProfDetailHead__top {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}
.editorProfDetail .editorProfDetailHead .editorProfDetailHeadImg {
  -webkit-box-flex: 0;
          flex: 0 0 144px;
  position: relative;
  height: 144px;
  margin: 0;
  border-radius: 50%;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.editorProfDetail .editorProfDetailHead .editorProfDetailHeadImg img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.editorProfDetail .editorProfDetailHead .editorProfDetailHeadTitle {
  padding-left: 30px;
  font-size: 2.4rem;
  line-height: 1.333;
}
.editorProfDetail .editorProfDetailHead__body {
  margin-top: 26px;
  font-size: 1.6rem;
  line-height: 1.6;
}
.editorProfDetail .editorProfDetailHead .editorProfDetailHeadTxt {
  font-size: 1.6rem;
  line-height: 1.6;
}
.editorProfDetail .editorProfDetailHead .editorProfDetailHeadTxt a {
  display: inline;
  color: #ff6600;
  text-decoration: underline;
}

/******************************
読みものランキング（リニューアル）
******************************/
.readingRanking {
  padding-top: 126px;
  padding-bottom: 140px;
}
.readingRanking .readingRankingTitle {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
}
.readingRanking .readingRankingTitle svg {
  width: 36px;
}
.readingRanking .readingRankingTitle span {
  display: inline-block;
  margin-top: 18px;
  font-size: 4rem;
  font-weight: 700;
  color: #222;
}
.readingRanking .readingRankingList {
  position: relative;
  margin-top: 104px;
}
.readingRanking .readingRankingList__bg-1 {
  position: absolute;
  inset: -40px auto auto calc(50% + 332px);
  width: 432px;
  aspect-ratio: 1/1;
  background-color: #ffefe6;
  mix-blend-mode: darken;
}
.readingRanking .readingRankingList__bg-2 {
  position: absolute;
  inset: 370px auto auto calc(50% + 564px);
  width: 212px;
  aspect-ratio: 1/1;
  background-color: #fff7d0;
  mix-blend-mode: darken;
}
.readingRanking .readingRankingList__list {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  width: min(90%, 724px);
  margin-inline: auto;
}
.readingRanking .readingRankingList__item {
  display: -webkit-box;
  display: flex;
  width: 100%;
  padding-top: 16px;
  padding-bottom: 16px;
}
.readingRanking .readingRankingList__item:not(:first-of-type) {
  border-top: 1px dotted #555;
}
.readingRanking .readingRankingList__item a {
  display: -webkit-box;
  display: flex;
  width: 100%;
}
.readingRanking .readingRankingList__num {
  -webkit-box-flex: 0;
          flex: 0 0 78px;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}
.readingRanking .readingRankingList__num svg {
  width: 22px;
}
.readingRanking .readingRankingList__num svg .st0 {
  fill: #C68383;
}
.readingRanking .readingRankingList__num svg .st1 {
  fill: none;
  stroke: #000000;
  stroke-width: 3.344;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.readingRanking .readingRankingList__num span {
  display: inline-block;
  margin-top: 10px;
  font-family: "Oswald", sans-serif;
  font-size: 4.2rem;
  font-weight: 700;
  color: #222;
}
.readingRanking .readingRankingList__figure {
  -webkit-box-flex: 0;
          flex: 0 0 130px;
  position: relative;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 8px;
  margin-right: 0;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.readingRanking .readingRankingList__figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.readingRanking .readingRankingList__body {
  -webkit-box-flex: 1;
          flex: 1 1 auto;
  padding-left: 32px;
}
.readingRanking .readingRankingList__body .tit {
  margin-top: -0.25em;
  font-size: 1.6rem;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/******************************
静的ページ
******************************/
/* 共通 */
.staticSection .staticTitHead {
  padding-bottom: 10px;
  margin-bottom: 30px;
}
.staticSection .staticTitHead .staticTit {
  font-family: "Noto Sans", sans-serif;
  font-size: 2.8rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
}
.staticSection .contTxt {
  color: #222;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2.15;
  letter-spacing: 0;
}
.staticSection .contTxt a {
  color: #777;
  text-decoration: underline;
}
.staticSection .contSubTit {
  margin: 20px 0 20px;
  padding: 0 0 3px 0.4em;
  color: #222;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1.65;
  letter-spacing: 0.06em;
  border-bottom: 1px solid #eee;
}
.staticSection .contIndentList {
  padding-left: 1em;
}
.staticSection .contIndentList li {
  margin-top: 5px;
  padding-left: 1em;
  color: #222;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.85;
  letter-spacing: 0;
  text-indent: -1em;
}
.staticSection .contIndentList li .contTxt {
  margin-top: 10px;
  padding-left: 0;
  text-indent: 0;
}
.staticSection .contIndentList li a {
  color: #999;
  text-decoration: underline;
}
.staticSection .staticContBtn {
  margin-top: 50px;
}
.staticSection .staticContBtn a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  width: 50%;
  max-width: 340px;
  height: 70px;
  margin: 0 auto;
  padding: 0;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
  text-decoration: none;
  background: #2d2c29;
  border-radius: 35px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.staticSection .staticContBtn a:hover {
  background: #666;
}
.staticSection .pullRight {
  text-align: right;
}

/* レイアウト */
.staticSection + .staticSection {
  margin-top: 50px;
}

/* 会社案内 */
.staticSection--company .companyTable table {
  width: 100%;
  margin-top: 30px;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-word;
}
.staticSection--company .companyTable table th {
  border: 1px solid #ddd;
  width: 20%;
  padding: 22px 18px;
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 1.444;
  letter-spacing: 0.06em;
  text-align: left;
  vertical-align: middle;
  background: #eeedeb;
}
.staticSection--company .companyTable table td {
  border: 1px solid #ddd;
  padding: 22px 18px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.444;
  letter-spacing: 0.06em;
  vertical-align: middle;
}
.staticSection--company .companyTable table td iframe {
  width: 100% !important;
}

/* 採用情報 */
.staticSection .dotsList ul {
  border-top: 1px solid #eee;
}
.staticSection .dotsList ul li {
  padding: 12px 0 12px 18px;
  color: #222;
  font-size: 1.4rem;
  line-height: 2.15;
  border-bottom: 1px solid #eee;
}
.staticSection .dotsList ul li a {
  text-decoration: underline;
}

/* 採用情報ポップアップ */
#cboxLoadedContent {
  background: #eeedeb !important;
}

.information_popup {
  width: 600px;
  height: auto;
  margin: 0 auto;
  padding: 25px 32px;
}
.information_popup h2 {
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1.444;
  letter-spacing: 0.06em;
  text-align: center;
}
.information_popup p {
  margin-top: 20px;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 2.15;
  letter-spacing: 0.06em;
  text-align: center;
}

.information_popup a {
  text-decoration: underline;
}
.information_popup a:hover {
  text-decoration: none;
}
.information_popup a.modalBtn {
  text-decoration: none;
}

/* 所在地 */
.staticSection .staticCont .mapImg {
  width: 94%;
  margin: 20px auto;
}
.staticSection .staticCont .mapImg img {
  max-width: 100%;
}

/* ご意見・お問い合わせ */
.staticSection--contact .contBox {
  margin-top: 25px;
}
.staticSection--contact .txtBold {
  margin: 12px 0;
}
.staticSection--contact .contTxt + .contTxt {
  margin-top: 12px;
}

/* プライバシーポリシー */
.staticSection--privacy {
  padding: 0 1em;
}
.staticSection--privacy .note {
  margin-top: 5px;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.65;
  letter-spacing: 0;
}

/* 利用規約 */
.staticSection--rules {
  padding: 0 1em;
}
.staticSection--rules .rulesList > li {
  margin-top: 12px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2.15;
  letter-spacing: 0.06em;
}

/* コンプライアンス相談窓口 */
.staticSection--compliance .addressBox {
  display: -webkit-box;
  display: flex;
  width: 500px;
  margin: 30px auto;
  padding: 30px 40px;
  background: #eeedeb;
}
.staticSection--compliance .addressBox .contTxt {
  color: #f60;
}
.staticSection--compliance .addressBox .contTxt:first-of-type {
  width: 30%;
  padding-right: 2em;
  text-align: right;
}

/* sns */
.staticSection--sns {
  border-bottom: 1px solid #ddd;
}
.staticSection--sns:last-of-type {
  border-bottom: none;
}
.staticSection--sns .staticTitHead .staticTit i {
  margin-right: 12px;
}
.staticSection--sns .staticTitHead .staticTit i.fa-twitter::before {
  color: #1da1f2;
}
.staticSection--sns .staticTitHead .staticTit i.fa-facebook::before {
  color: #3b5998;
}
.staticSection--sns .staticTitHead .staticTit i.fa-instagram::before {
  color: #262626;
}
.staticSection--sns .staticTitHead .staticTit i.fa-pinterest::before {
  color: #bd081c;
}
.staticSection--sns .snsList ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.staticSection--sns .snsList ul li {
  width: 50%;
  margin-bottom: 30px;
}
.staticSection--sns .snsList ul li a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  padding: 0 14px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.staticSection--sns .snsList ul li a:hover {
  opacity: 0.8;
}
.staticSection--sns .snsList ul li a .txt {
  padding-left: 12px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0;
}

/* FAQ */
.staticSection--faq .faqMenu {
  margin: 20px 0;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
}
.staticSection--faq .faqMenu ol li {
  padding: 12px 1em;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2.25;
  letter-spacing: 0.06em;
}
.staticSection--faq .faqMenu ol li span {
  display: inline-block;
  margin-right: 12px;
  padding: 6px 7px 5px 8px;
  background: #2d2c29;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  border-radius: 6px;
}
.staticSection--faq .faqMenu ol li a {
  text-decoration: underline;
}
.staticSection--faq .faqList {
  padding: 20px 0;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
}
.staticSection--faq .faqList::after {
  content: "";
  display: block;
  clear: both;
}
.staticSection--faq .faqList .toTopLink {
  float: right;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
}
.staticSection--faq .faqList .faqListTit {
  margin: 12px 0;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2.15;
  letter-spacing: 0.06em;
}
.staticSection--faq .faqList .faqListTit span {
  display: inline-block;
  margin-right: 12px;
  padding: 6px 7px 5px 8px;
  background: #2d2c29;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  border-radius: 6px;
}
.staticSection--faq .faqList ol {
  padding-left: 1em;
}
.staticSection--faq .faqList ol li {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.85;
  letter-spacing: 0;
}
.staticSection--faq .faqList ol li a {
  border-bottom: 1px solid #eee;
}
.staticSection--faq .faqCont {
  margin-top: 50px;
}
.staticSection--faq .faqCont .faqBox {
  max-width: 700px;
  margin: 0 auto;
  padding-top: 20px;
  border-top: 1px solid #2d2c29;
}
.staticSection--faq .faqCont .faqBox + .faqBox {
  margin-top: 30px;
}
.staticSection--faq .faqCont .faqBox__q {
  position: relative;
  padding-left: 2.2em;
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 2.15;
  letter-spacing: 0.06em;
}
.staticSection--faq .faqCont .faqBox__q::before {
  content: "Q";
  position: absolute;
  top: 0;
  left: 0;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #e5b8b7;
  font-size: 1.9rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.staticSection--faq .faqCont .faqBox__a {
  position: relative;
  padding-left: 2.2em;
  margin-top: 18px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2.15;
  letter-spacing: 0.06em;
}
.staticSection--faq .faqCont .faqBox__a::before {
  content: "A";
  position: absolute;
  top: 0;
  left: 0;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #a9c6d5;
  font-size: 1.9rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.staticSection--faq .faqCont .faqBox__a a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  width: 80%;
  max-width: 400px;
  height: 50px;
  margin: 20px auto 0;
  padding: 0 25px;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1.444;
  letter-spacing: 0.04em;
  text-align: center;
  text-decoration: none;
  background: #2d2c29;
  border-radius: 25px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.staticSection--faq .faqCont .faqBox__a a:hover {
  background: #666;
}
.staticSection--faq .faqConfirm {
  margin-top: 75px;
  padding-top: 30px;
  border-top: 1px solid #2d2c29;
}
.staticSection--faq .faqConfirm .faqConfirmTit {
  font-family: "Noto Sans", sans-serif;
  font-size: 2.2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
}
.staticSection--faq .faqConfirm .confirmBtnWrap {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  margin-top: 30px;
}
.staticSection--faq .faqConfirm .confirmBtnWrap > div {
  width: 200px;
}
.staticSection--faq .faqConfirm .confirmBtnWrap > div:first-child {
  margin-right: 50px;
}
.staticSection--faq .faqConfirm .confirmBtnWrap .confirmBtnTxt {
  display: block;
  width: 100%;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2.15;
  letter-spacing: 0.06em;
  text-align: center;
}
.staticSection--faq .faqConfirm .confirmBtnWrap .confirmBtn {
  margin-top: 10px;
}
.staticSection--faq .faqConfirm .confirmBtnWrap .confirmBtn a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  width: 100%;
  max-width: 200px;
  height: 50px;
  margin: 20px auto 0;
  padding: 0 25px;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1.444;
  letter-spacing: 0.04em;
  text-align: center;
  text-decoration: none;
  border: 1px solid #2d2c29;
  border-radius: 25px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.staticSection--faq .faqConfirm .confirmBtnWrap .confirmBtn a:hover {
  background: #666;
}
.staticSection--faq .faqConfirm .confirmBtnWrap .confirmBtn--left a {
  color: #2d2c29;
  background: #fff;
}
.staticSection--faq .faqConfirm .confirmBtnWrap .confirmBtn--right a {
  color: #fff;
  background: #2d2c29;
}

/* join （会員・コミュニティ） */
.staticSection--join img {
  max-width: 100%;
  height: auto;
}
.staticSection--join img.spHide {
  display: inline-block;
}
.staticSection--join img.pcHide {
  display: none;
}
.staticSection--join .btnWrap {
  width: calc(100% - 100px);
  margin: 40px auto 0;
}
.staticSection--join .btnWrap a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 105px;
  border-radius: 53px;
  font-size: 3.2rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  background-color: #333;
  color: #fff;
  box-shadow: 0 6px 0 #ccc;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.staticSection--join .btnWrap a:hover {
  background-color: #666;
}
.staticSection--join .join {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-weight: 500;
  color: #333;
  background-color: transparent;
}
.staticSection--join .join p.topLead {
  font-size: 2.8rem;
  font-weight: 800;
  line-height: 1;
  text-align: center;
}
.staticSection--join .join p.topSubLead {
  margin-top: 10px;
  padding: 0 50px;
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.75;
  text-align: left;
}
.staticSection--join .join h1 {
  margin-top: 17px;
  font-size: 4rem;
  line-height: 60px;
  font-weight: 800;
  text-align: center;
}
.staticSection--join .join h1 span {
  font-size: 4.2rem;
  color: #ff6600;
}
.staticSection--join .join h2 {
  margin-bottom: 30px;
  text-align: center;
}
.staticSection--join .join h3 {
  max-width: 100%;
}
.staticSection--join .join h3 img {
  width: 100%;
  height: auto;
}
.staticSection--join .join .btnSmallWrap {
  margin-top: 24px;
}
.staticSection--join .join .btnSmallWrap a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 400px;
  height: 60px;
  margin: 0 auto;
  border-radius: 30px;
  font-size: 2.8rem;
  font-weight: 800;
  background-color: #ff6600;
  color: #fff;
  box-shadow: inset 0px 0px 4px 2px rgba(200, 200, 200, 0.2), 1px 1px 3px 1px rgba(0, 0, 0, 0.2);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.staticSection--join .join .btnSmallWrap a:hover {
  opacity: 0.7;
}
.staticSection--join .join .btnSmallWrap a img {
  margin-left: 5px;
}
.staticSection--join .members {
  width: 100%;
  margin: 45px 0 0;
  padding: 80px 6.098% 50px;
  border-radius: 14px;
  background-color: #fff9e6;
}
.staticSection--join .members h2 {
  padding-bottom: 10px;
  border-bottom: 4px solid #ff6600;
  font-size: 4rem;
  font-weight: 800;
  text-align: center;
}
.staticSection--join .members h2 span {
  color: #ff6600;
}
.staticSection--join .members h3 {
  margin-top: 42px;
  padding-bottom: 5px;
  font-size: 2.8rem;
  line-height: 40px;
}
.staticSection--join .members h3 img {
  margin-right: 5px;
}
.staticSection--join .members h3:nth-of-type(2) img {
  margin-right: -2px;
  vertical-align: 1px;
}
.staticSection--join .members h3:nth-of-type(3) img {
  margin-right: -2px;
  vertical-align: -2px;
}
.staticSection--join .members .membersList {
  width: 100%;
  border-top: 1px dotted #ff6600;
}
.staticSection--join .members .membersList li {
  width: 100%;
  padding: 26px 0;
  border-bottom: 1px dotted #ff6600;
  line-height: 1.5;
}
.staticSection--join .members .membersList li a {
  position: relative;
}
.staticSection--join .members .membersList li a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -20px;
  width: 15px;
  height: 14px;
  margin: auto 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 15px solid #ff6600;
  border-right: none;
}
.staticSection--join .members .membersList li a:hover {
  text-decoration: underline;
}
.staticSection--join .members .membersBanner {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  width: 100%;
  padding-top: 42px;
  border-top: 1px dotted #ff6600;
}
.staticSection--join .members .membersBanner .banner a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.staticSection--join .members .membersBanner .banner a:hover {
  opacity: 0.7;
}
.staticSection--join .register {
  margin-top: 78px;
}
.staticSection--join .register h2 {
  font-size: 2.8rem;
  font-weight: 800;
  line-height: 1.333;
  text-align: center;
  color: #ff6600;
}
.staticSection--join .register .registerLead {
  margin-top: 10px;
  padding: 0 50px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
  text-align: left;
}
.staticSection--join .register .registerBoxWrap {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
          justify-content: space-between;
  margin-top: 24px;
}
.staticSection--join .register .registerBox {
  -webkit-box-flex: 0;
          flex: 0 0 47.56%;
  position: relative;
  width: 47.56%;
  max-width: 47.56%;
  padding: 0 45px 45px 50px;
  border-radius: 20px;
  background-color: #fef1f1;
}
.staticSection--join .register .registerBox .icon {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 148px;
}
.staticSection--join .register .registerBox .icon_01 img {
  width: 146px;
}
.staticSection--join .register .registerBox .icon_02 img {
  width: 110px;
}
.staticSection--join .register .registerBox .txtBox .tit {
  font-size: 2rem;
  font-weight: 800;
  color: #ff6600;
}
.staticSection--join .register .registerBox .txtBox .txt {
  margin-top: 10px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
}
.staticSection--join .check {
  margin-top: 40px;
}
.staticSection--join .check h2 {
  font-size: 3rem;
  font-weight: 800;
  line-height: 1.333;
  text-align: center;
}
.staticSection--join .check h2 span {
  color: #ff6600;
}
.staticSection--join .check .mainImg {
  width: 100%;
  margin-top: -30px;
}
.staticSection--join .check .mainImg img {
  width: 100%;
  height: auto;
}
.staticSection--join .check .baloon {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  position: relative;
  width: 680px;
  max-width: 100%;
  height: 80px;
  margin: 50px auto 0;
  border-radius: 10px;
  font-size: 2.4rem;
  font-weight: 800;
  letter-spacing: -0.025em;
  background-color: #ff6600;
  color: #fff;
}
.staticSection--join .check .baloon::after {
  content: "";
  position: absolute;
  bottom: -20px;
  left: 0;
  right: 0;
  width: 30px;
  height: 20px;
  margin: 0 auto;
  border-top: 20px solid #ff6600;
  border-bottom: none;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
}
.staticSection--join .check .btnWhiteWrap {
  width: calc(100% - 100px);
  margin: 13px auto 0;
}
.staticSection--join .check .btnWhiteWrap a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 105px;
  border-radius: 53px;
  font-size: 3.2rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  box-shadow: 0 6px 0 #ccc;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  border: 4px solid #333;
  background-color: #fff;
  color: #333;
}
.staticSection--join .check .btnWhiteWrap a:hover {
  border: 4px solid #666;
  background-color: #fff;
  color: #666;
}
.staticSection--join .instagram {
  margin-top: 65px;
  padding: 35px 6.098% 50px;
  border-radius: 14px;
  background-color: #fef1f1;
}
.staticSection--join .instagram .logo {
  text-align: center;
}
.staticSection--join .instagram .logo a:hover {
  opacity: 0.7;
}
.staticSection--join .instagram h2 {
  margin-top: 16px;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.333;
  text-align: center;
  color: #ff6600;
}
.staticSection--join .instagram h2 a {
  color: #ff6600;
}
.staticSection--join .instagram h2 a:hover {
  opacity: 0.7;
}
.staticSection--join .instagram .instagramLead {
  margin-top: 5px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
}
.staticSection--join .instagram .instagramLead a {
  text-decoration: underline;
}
.staticSection--join .instagram .instagramLead a:hover {
  text-decoration: none;
}
.staticSection--join .instagram .instagramBox {
  width: 100%;
  margin: 35px 0 0;
}
.staticSection--join .instagram .instagramBox h3 {
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.333;
  color: #ff6600;
}
.staticSection--join .instagram .instagramBox .instagramBoxTag {
  display: -webkit-box;
  display: flex;
  margin-top: 6px;
}
.staticSection--join .instagram .instagramBox .instagramBoxTag li a {
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.333;
  color: #333;
}
.staticSection--join .instagram .instagramBox .instagramBoxTag li + li {
  margin-left: 1.2em;
}
.staticSection--join .instagram .instagramBox .instagramBoxTxt {
  margin-top: 6px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
}
.staticSection--join .instagram .instagramBox .instagramBoxImg {
  display: -webkit-box;
  display: flex;
  margin-top: 10px;
}
.staticSection--join .instagram .instagramBox .instagramBoxImg img {
  -webkit-box-flex: 0;
          flex: 0 0 33.333%;
}
.staticSection--join .instagram .instagramBottom {
  margin-top: 35px;
}
.staticSection--join .instagram .instagramBottom .instagramBottomTxt {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
}
.staticSection--join .instagram .instagramBottom .instagramBottomTxt span {
  font-weight: 800;
  color: #fc0404;
}
.staticSection--join .bottomTxt {
  margin-top: 8px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
}
.staticSection--join .bottomTxt a {
  text-decoration: underline;
}
.staticSection--join .bottomTxt a:hover {
  text-decoration: none;
}

/******************************
PR記事一覧用
******************************/
.prSection .articlesList .img {
  background-color: #e7f2fd;
}
.prSection .articlesList .tit {
  color: #8da2ea;
}
.prSection .articlesList .prTxt {
  text-align: right;
  color: #999;
  font-size: 1.1rem;
  letter-spacing: 0.12rem;
  margin-top: -30px;
}

.sidePrSection .sideArticlesList .img {
  background-color: #e7f2fd;
}
.sidePrSection .sideArticlesList .tit {
  color: #8da2ea;
}
.sidePrSection .sideArticlesList .prTxt {
  text-align: right;
  color: #999;
  font-size: 1.1rem;
  letter-spacing: 0.12rem;
  margin-top: 10px;
}

/******************************
記事広告一覧用
******************************/
.addSec .articlesList .img {
  background-color: #fde7fc;
}
.addSec .articlesList .tit {
  color: #ea93be;
}

.sideAddSec .sideArticlesList .img {
  background-color: #fde7fc;
}
.sideAddSec .sideArticlesList .tit {
  color: #ea93be;
}

/******************************
閲覧制限
******************************/
.noViewWrap {
  position: relative;
  height: 800px;
  overflow: hidden;
}
.noViewWrap:before {
  content: "";
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.88) 20%, #fff 60%, #fff 100%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.88) 20%, #fff 60%, #fff 100%);
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 600px;
}

.noView {
  background: #eee;
  border: solid 1px #d9d9d9;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.3);
  border-radius: 13px;
  text-align: center;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  padding: 52px 0;
  position: absolute;
  max-width: 815px;
  width: 90%;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.noView a {
  color: #8da2ea;
}

.noViewTit {
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  color: #909090;
  margin-bottom: 45px;
}

.noViewTxt {
  line-height: 1.6;
  color: #909090;
  margin-bottom: 10px;
}

.noViewBtn {
  margin: 30px 0 20px;
}
.noViewBtn a {
  width: 380px;
  padding: 12px 0;
  margin: 0 auto;
  background: #e7f2fd;
  border: solid 1px #79adff;
}

/******************************
閲覧制限
******************************/
.nextViewWrap {
  position: relative;
  height: 400px;
  overflow: hidden;
  margin-bottom: 40px;
}
.nextViewWrap:before {
  content: "";
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 20%, rgba(255, 255, 255, 0.75) 60%, #fff 100%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 20%, rgba(255, 255, 255, 0.75) 60%, #fff 100%);
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 400px;
}

/******************************
グッバイバナー
******************************/
.byeBanWrap {
  background: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  z-index: 999;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}

.byeBan {
  width: 545px;
  margin: 50vh auto 0;
  padding: 80px 0 50px;
  background: #fff;
  text-align: center;
  position: relative;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.byeBan a {
  color: #8da2ea;
}

.byeBanClose {
  position: absolute;
  top: -45px;
  right: 0;
  font-size: 0;
  width: 40px;
  height: 40px;
  cursor: pointer;
}
.byeBanClose:hover {
  opacity: 0.5;
}
.byeBanClose:before {
  content: "";
  display: block;
  background: #fff;
  width: 36px;
  height: 3px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.byeBanClose:after {
  content: "";
  display: block;
  background: #fff;
  width: 36px;
  height: 3px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.byeBanTit {
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  color: #909090;
  margin-bottom: 25px;
}

.byeBanTxt {
  line-height: 1.6;
  color: #909090;
  margin-bottom: 10px;
}

.byeBanBtn {
  margin: 30px 0 20px;
}
.byeBanBtn a {
  width: 380px;
  padding: 12px 0;
  margin: 0 auto;
  background: #e7f2fd;
  border: solid 1px #79adff;
}

/******************************
右コンテンツ一覧
******************************/
.sideArticlesList {
  margin: 12px 0 40px;
}
.sideArticlesList li {
  position: relative;
}
.sideArticlesList li:not(:first-of-type) {
  margin-top: 25px;
}
.sideArticlesList li a {
  display: -webkit-box;
  display: flex;
  text-decoration: none;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.sideArticlesList li a:hover {
  opacity: 0.8;
}
.sideArticlesList li a > div {
  vertical-align: middle;
}
.sideArticlesList li a .imgWrap {
  width: 100px;
}
.sideArticlesList li a .imgWrap .img {
  align-self: flex-start;
  position: relative;
  width: 100px;
  padding-top: 100px;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.sideArticlesList li a .txtBox {
  position: relative;
  width: calc(100% - 100px);
  padding-bottom: 5px;
  padding-left: 20px;
}
.sideArticlesList li a .txtBox .tit {
  padding-top: 0;
  color: #222;
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0.04em;
}
.sideArticlesList li a .txtBox .meta {
  position: absolute;
  bottom: 0;
  left: 10px;
}
.sideArticlesList li a .txtBox .data {
  display: none;
}
.sideArticlesList li a .txtBox .cate {
  display: inline-block;
  position: relative;
  margin: 0 0 0 7px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.1px;
}
.sideArticlesList li a .txtBox .cate::before {
  content: "|";
  position: absolute;
  top: 0;
  left: -8px;
}
.sideArticlesList li a .txtBox .cateTags {
  position: relative;
}

/* サイドバー .ranking */
.sideMagazineSection + .ranking {
  margin-top: 40px;
}

.ranking {
  margin-bottom: 40px;
}
.ranking .sideArticlesList li {
  margin-top: 25px;
}
.ranking .sideArticlesList li a {
  padding-left: 10px;
}
.ranking .sideArticlesList li a .imgWrap .img::after {
  content: "";
  position: absolute;
  top: -10px;
  left: -10px;
  width: 30px;
  height: 30px;
}
.ranking .sideArticlesList li:first-of-type a .imgWrap .img::after {
  background: url("/asset/common/img/ranking_1.png") left top/cover no-repeat;
}
.ranking .sideArticlesList li:nth-of-type(2) a .imgWrap .img::after {
  background: url("/asset/common/img/ranking_2.png") left top/cover no-repeat;
}
.ranking .sideArticlesList li:nth-of-type(3) a .imgWrap .img::after {
  background: url("/asset/common/img/ranking_3.png") left top/cover no-repeat;
}
.ranking .sideArticlesList li:nth-of-type(4) a .imgWrap .img::after {
  background: url("/asset/common/img/ranking_4.png") left top/cover no-repeat;
}
.ranking .sideArticlesList li:nth-of-type(5) a .imgWrap .img::after {
  background: url("/asset/common/img/ranking_5.png") left top/cover no-repeat;
}

.ranking--recipe .sideArticlesList li a .txtBox .tit {
  font-size: 1.7rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.04em;
}
.ranking--recipe .sideArticlesList li a .txtBox .txt {
  margin-top: 12px;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.385;
  letter-spacing: 0;
}

/* サイドバー .specialTopics （カテゴリートップページ）*/
.sideSpecialTopics {
  margin-top: 20px !important;
  padding: 28px 20px 28px;
  background: #e9e8e6;
}
.sideSpecialTopics .contTitHead .contTit {
  white-space: nowrap;
}
.sideSpecialTopics .sideArticlesList {
  margin-bottom: 0;
}
.sideSpecialTopics .sideArticlesList ul li a .txtBox {
  padding-left: 12px;
  display: block;
}
.sideSpecialTopics .sideArticlesList ul li a .txtBox .meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  position: relative;
  left: 0;
}
.sideSpecialTopics .sideArticlesList ul li a .txtBox .meta .cate {
  margin: 0;
  color: #666;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.05em;
}
.sideSpecialTopics .sideArticlesList ul li a .txtBox .meta .cate::before {
  content: none;
}
.sideSpecialTopics .sideArticlesList ul li a .txtBox .meta .pr {
  padding-right: 13px;
}
.sideSpecialTopics .sideArticlesList ul li a .txtBox .tit {
  margin-top: 10px;
  color: #222;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1.231;
  letter-spacing: 0;
}

/*右コンテンツ目次*/
.sideMokuziList ul {
  border: solid 1px #eee;
  margin-top: 65px;
}
.sideMokuziList li {
  margin-top: 0;
}
.sideMokuziList li a {
  padding: 16px 20px;
  font-size: 1.3rem;
}
.sideMokuziList li + li {
  border-top: solid 1px #eee;
}

.sideMokuziListTit {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  font-weight: bold;
  margin-top: 40px;
}

.sideMokuziListTit + ul {
  margin-top: 10px;
}

/* リニューアル sideArticlesList */
.sideArticlesList2 {
  margin: 0;
}
.sideArticlesList2__item {
  margin-top: 18px;
}
.sideArticlesList2__item:not(:last-of-type) {
  padding-bottom: 18px;
  border-bottom: 1px dashed #cdcdcd;
}
.sideArticlesList2__item a {
  display: -webkit-box;
  display: flex;
  align-items: flex-start;
  width: 100%;
}
.sideArticlesList2__item .img {
  position: relative;
  -webkit-box-flex: 0;
          flex: 0 0 130px;
  aspect-ratio: 3/2;
  z-index: 0;
}
.sideArticlesList2__item .img img {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.sideArticlesList2__item .img .num {
  position: absolute;
  inset: 0 auto auto 5px;
  width: 20px;
  height: 18px;
  background-color: #ecef90;
  z-index: 1;
}
.sideArticlesList2__item .img .num::before {
  content: "";
  position: absolute;
  inset: 100% 0 5px 0;
  width: 100%;
  height: 4px;
  border-top: 4px solid #ecef90;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: none;
}
.sideArticlesList2__item .img .num::after {
  content: "0";
  position: absolute;
  inset: 0;
  margin: auto;
  padding-top: 2px;
  font-family: "Oswald", sans-serif !important;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 18px;
  text-align: center;
}
.sideArticlesList2__item .txtBox {
  -webkit-box-flex: 1;
          flex: 1 1 auto;
  padding-bottom: 0;
  padding-left: 10px;
}
.sideArticlesList2__item .txtBox .tit {
  margin-top: -0.2em;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.sideArticlesList2__item .txtBox .date {
  margin-top: 10px;
  font-size: 1.3rem;
  font-weight: 400;
}
.sideArticlesList2--special a .txtBox .cat {
  margin-top: -0.15em;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.4;
  color: #9b918c;
}
.sideArticlesList2--special a .txtBox .tit {
  margin-top: 8px;
}
.sideArticlesList2--special .sideArticlesList2__tags {
  display: -webkit-box;
  display: flex;
  margin-top: 8px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #9b918c;
}
.sideArticlesList2--special .sideArticlesList2__tags span a {
  display: inline-block;
  color: #9b918c;
}
.sideArticlesList2--special .sideArticlesList2__tags span:not(:first-of-type) a {
  margin-left: 0.8rem;
}

.sideArticlesList2__item.has_border .sideArticlesList2__icon {
  border: 2px solid #ff6600;
}

.sideSpecial {
  padding: 20px 20px 30px;
  background-color: #fff;
}
.sideSpecial:not(:first-of-type) {
  margin-top: 30px;
}
.sideSpecial .contTitHead {
  padding: 0;
}
.sideSpecial .contTit span {
  font-size: 18px !important;
  color: #222 !important;
}

/* リニューアル ranking */
.ranking2 {
  padding: 20px 20px 30px;
  background-color: #fff;
}
.ranking2:not(:first-of-type) {
  margin-top: 30px;
}
.ranking2 .contTitHead {
  padding: 0;
}
.ranking2 .contTit svg {
  width: 36px;
}
.ranking2 .contTit span {
  font-size: 18px !important;
  color: #222 !important;
}
.ranking2 .sideArticlesList2__item:first-of-type .img .num::after {
  content: "1";
}
.ranking2 .sideArticlesList2__item:nth-of-type(2) .img .num::after {
  content: "2";
}
.ranking2 .sideArticlesList2__item:nth-of-type(3) .img .num::after {
  content: "3";
}
.ranking2 .sideArticlesList2__item:nth-of-type(4) .img .num::after {
  content: "4";
}
.ranking2 .sideArticlesList2__item:nth-of-type(5) .img .num::after {
  content: "5";
}
.ranking2 .linkBtn {
  margin-top: 32px;
}
.ranking2--blog .sideArticlesList2__item a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
}
.ranking2--blog .sideArticlesList2__head {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
}
.ranking2--blog .sideArticlesList2__icon {
  -webkit-box-flex: 0;
          flex: 0 0 26px;
  position: relative;
  border-radius: 50%;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.ranking2--blog .sideArticlesList2__icon img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.ranking2--blog .sideArticlesList2__name {
  -webkit-box-flex: 1;
          flex: 1 1 auto;
  padding-left: 8px;
  font-size: 1.3rem;
}
.ranking2--blog .sideArticlesList2__body {
  display: -webkit-box;
  display: flex;
  align-items: flex-start;
  width: 100%;
  margin-top: 8px;
}
.ranking2--post .sideArticlesList2__item a .txtBox {
  display: grid;
  place-items: center;
}

/******************************
お問い合わせ
******************************/
/*フォーム*/
.applyForm {
  width: 100%;
  margin: 0 auto;
}
.applyForm .tit {
  font-size: 2rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-align: center;
}
.applyForm .sub {
  margin-top: 10px;
  font-size: 1.3rem;
  letter-spacing: 0.12em;
  text-align: center;
}
.applyForm .sub a {
  text-decoration: underline;
}
.applyForm .notice {
  margin-top: 20px;
  font-size: 1.4rem;
  line-height: 1.6;
  text-align: left;
}
.applyForm .notice a {
  text-decoration: underline;
}
.applyForm .lineTxt {
  margin-top: 20px;
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  text-align: center;
  background: -webkit-linear-gradient(#fff 0%, #fff 49%, #ddd 50%, #ddd 51%, #fff 52%, #fff 100%);
  background: linear-gradient(#fff 0%, #fff 49%, #ddd 50%, #ddd 51%, #fff 52%, #fff 100%);
}
.applyForm .lineTxt p {
  padding: 0 1em;
  background: #fff;
  display: inline-block;
}
.applyForm .authSnsBtn {
  margin-top: 20px;
}
.applyForm .authSnsBtn li {
  width: 100%;
  text-align: center;
  padding: 11px 0 0;
}
.applyForm .authSnsBtn li a {
  font-size: 1.3rem;
  display: block;
  color: #fff;
  overflow: hidden;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background: #323232;
  padding: 10px;
}
.applyForm .authSnsBtn li a span {
  display: block;
  padding-top: 2px;
}
.applyForm .authSnsBtn li a:hover {
  opacity: 0.8;
}
.applyForm .authSnsBtn li a i {
  font-size: 24px;
  float: left;
}
.applyForm .authSnsBtn li.facebook a {
  background: #385c8e;
}
.applyForm .authSnsBtn li.google a {
  background: #f34a38;
}
.applyForm table {
  width: 100%;
  font-family: "Lato", sans-serif;
}
.applyForm table th {
  font-size: 1.2rem;
  letter-spacing: 0.12em;
  font-weight: normal;
}
.applyForm table td {
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  font-weight: normal;
}
.applyForm table td input[type=text] {
  width: 100%;
  width: 100%;
  padding: 18px;
  font-size: 1.2rem;
  letter-spacing: 0.12em;
  border: none;
  background: #f1f1f1;
}
.applyForm table td input[type=password] {
  width: 100%;
  width: 100%;
  padding: 18px;
  font-size: 1.2rem;
  letter-spacing: 0.12em;
  border: none;
  background: #f1f1f1;
}
.applyForm table td input[type=email] {
  width: 100%;
  width: 100%;
  padding: 18px;
  font-size: 1.2rem;
  letter-spacing: 0.12em;
  border: none;
  background: #f1f1f1;
}
.applyForm table td select {
  width: 100%;
}
.applyForm table td textarea {
  width: 100%;
  padding: 18px;
  font-size: 1.2rem;
  letter-spacing: 0.12em;
  border: none;
  background: #f1f1f1;
  box-sizing: border-box;
  resize: vertical;
}
.applyForm table.row1 th {
  width: 38%;
  vertical-align: middle;
}
.applyForm table.row1 td {
  width: 62%;
  padding: 5px 0;
}
.applyForm table.row2 th {
  width: 100%;
  padding-top: 20px;
  display: block;
}
.applyForm table.row2 td {
  width: 100%;
  padding-top: 10px;
  display: block;
}
.applyForm .error .message {
  color: #cd0a0a;
  background: #fef1ec;
  padding: 20px;
  border-radius: 10px;
  line-height: 1.5;
  margin-top: 20px;
}
.applyForm .error-message {
  color: #cd0a0a;
  border-radius: 10px;
  line-height: 1.2;
  margin-top: 5px;
}
.applyForm .authFormSubmit {
  margin-top: 45px;
}

.applyForm.sizeM {
  max-width: 680px;
  padding: 30px;
  border-radius: 20px;
  border: solid 1px #d9d9d9;
}

.applyForm.sizeS {
  max-width: 400px;
  padding: 30px;
  border-radius: 20px;
  border: solid 1px #d9d9d9;
}

.inquireForm table.row2 th {
  font-size: 1.4rem;
  padding-top: 30px;
}
.inquireForm table.row2 th .req {
  font-size: 1.1rem;
  background: #f15500;
  color: #fff;
  padding: 2px 5px;
  border-radius: 5px;
  font-weight: bold;
  margin: -1px 5px 0;
}
.inquireForm table.row2 .sepNotice td {
  padding: 30px 0 0;
  text-align: center;
  font-size: 1.4rem;
}
.inquireForm table td .col2 {
  display: -webkit-box;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
          align-items: center;
  padding-top: 5px;
}
.inquireForm table td .col2 .col {
  width: calc(50% - 5px);
}
.inquireForm table td .col2 .col + .col {
  margin-left: 10px;
}
.inquireForm table td .col2 .label {
  display: inline-block;
  color: #777777;
  padding-bottom: 3px;
}
.inquireForm table td .col2 input {
  width: 100%;
  display: block;
}
.inquireForm table td .col3 {
  display: -webkit-box;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
          align-items: center;
  padding-bottom: 8px;
}
.inquireForm table td .sep {
  font-size: 1.8rem;
  display: inline-block;
  width: 4em;
  text-align: center;
}
.inquireForm .orange {
  color: #f15500;
}

/*ラジオボタン*/
.applyFormRadio input {
  display: none;
}
.applyFormRadio input:checked + span:after {
  content: "";
  width: 12px;
  height: 12px;
  background: #666;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 4px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.applyFormRadio label {
  padding-right: 20px;
}
.applyFormRadio span {
  padding-left: 30px;
  position: relative;
}
.applyFormRadio span:before {
  content: "";
  width: 18px;
  height: 18px;
  border: 1px solid #707070;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.applyFormCheckbox input {
  display: none;
}
.applyFormCheckbox input:checked + span:after {
  content: "";
  width: 18px;
  height: 7px;
  border-bottom: 2px solid #000;
  border-left: 2px solid #000;
  position: absolute;
  top: -2px;
  left: 5px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.applyFormCheckbox label {
  padding: 0 20px 15px 0;
  display: inline-block;
}
.applyFormCheckbox span {
  padding-left: 30px;
  position: relative;
}
.applyFormCheckbox span:before {
  content: "";
  width: 20px;
  height: 20px;
  border: 1px solid #707070;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/*セレクト*/
.applyFormSelect {
  width: 100%;
  background: #f1f1f1;
  position: relative;
  display: inline-block;
}
.applyFormSelect:before {
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 2px #707070;
  border-right: solid 2px #707070;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  right: 15px;
}
.applyFormSelect select {
  width: 100%;
  margin: 0;
  padding: 15px 18px;
  border: none;
  background: transparent;
  position: relative;
  z-index: 1;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.applyFormSelect select::-ms-expand {
  display: none;
}

/*送信ボタン*/
.applyFormSubmit {
  margin-top: 20px;
}
.applyFormSubmit input {
  width: 100%;
  text-decoration: none;
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  background: #323232;
  padding: 15px 0 13px;
  border-radius: 2px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
}
.applyFormSubmit input:before {
  position: absolute;
  top: 0;
  right: 20%;
  opacity: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.applyFormSubmit input:hover {
  background: #666;
}
.applyFormSubmit input:hover:before {
  right: 30px;
  opacity: 1;
}
.applyFormSubmit a {
  width: 100%;
  text-decoration: none;
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  background: #323232;
  padding: 15px 0 13px;
  border-radius: 2px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
}
.applyFormSubmit a:before {
  position: absolute;
  top: 0;
  right: 20%;
  opacity: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.applyFormSubmit a:hover {
  background: #666;
}
.applyFormSubmit a:hover:before {
  right: 30px;
  opacity: 1;
}
.applyFormSubmit a + a {
  margin-top: 10px;
}
.applyFormSubmit input + input {
  margin-top: 10px;
}

/******************************
ランキングページ
******************************/
.rankingsSection .rankingsHead .rankingsTit {
  color: #222;
  font-size: 2.8rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
}
.rankingsSection .rankingsHead .rankingsTit img {
  margin-bottom: 20px;
}
.rankingsSection .rankingsCont {
  padding-top: 32px;
}
.rankingsSection .rankingsCont .rankingsTxt {
  color: #010101;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.466;
  letter-spacing: 0.05em;
}
.rankingsSection .rankingsCont .rankingsList {
  margin-top: 60px;
}
.rankingsSection .rankingsCont .rankingsList .rankingsListTit {
  color: #222;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
}
.rankingsSection .rankingsCont .rankingsList ul {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
}
.rankingsSection .rankingsCont .rankingsList ul li {
  position: relative;
  width: 28.049%;
  margin-top: 20px;
  padding-top: 46px;
}
.rankingsSection .rankingsCont .rankingsList ul li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  padding-top: 1px;
  font-family: "Avenir", "Leelawadee UI", "Arial", sans-serif;
  color: #fff;
  font-size: 2.1rem;
  font-weight: 400;
  line-height: 32px;
  letter-spacing: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.6);
  border-radius: 50%;
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(2) {
  margin-left: 7.926%;
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(2)::before {
  content: "2";
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(3) {
  margin-left: 7.926%;
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(3)::before {
  content: "3";
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(n+4) {
  width: 20.122%;
  margin-left: 6.504%;
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(4n) {
  margin-left: 0;
}
.rankingsSection .rankingsCont .rankingsList ul li:first-of-type::before {
  content: "1";
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(4)::before {
  content: "4";
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(5)::before {
  content: "5";
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(6)::before {
  content: "6";
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(7)::before {
  content: "7";
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(8)::before {
  content: "8";
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(9)::before {
  content: "9";
}
.rankingsSection .rankingsCont .rankingsList ul li:nth-of-type(10)::before {
  content: "10";
}
.rankingsSection .rankingsCont .rankingsList ul li a {
  display: block;
}
.rankingsSection .rankingsCont .rankingsList ul li a .img {
  position: relative;
  width: 100%;
  padding-top: 100%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.rankingsSection .rankingsCont .rankingsList ul li a .txtBox {
  padding: 10px 0;
}
.rankingsSection .rankingsCont .rankingsList ul li a .txtBox .tit {
  color: #222;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.313;
  letter-spacing: 0;
}

/******************************
特集ページ
******************************/
.featuresSection .boxContents {
  max-width: 100%;
}
.featuresSection .readt {
  margin-top: 20px;
  color: #222;
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.875;
  letter-spacing: 0;
  text-align: center;
}

.featuresListSection {
  margin-top: 60px;
}
.featuresListSection .featuresListTitHead .featuresListTit {
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}
.featuresListSection .featuresList {
  margin-top: 30px;
}
.featuresListSection .featuresList ul li {
  position: relative;
  width: 100%;
  padding: 30px;
  border-bottom: 1px solid #ddd;
}
.featuresListSection .featuresList ul li:first-of-type {
  padding: 0 30px 30px;
}
.featuresListSection .featuresList ul li a {
  display: -webkit-box;
  display: flex;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.featuresListSection .featuresList ul li a .img {
  -webkit-box-flex: 0;
  flex: 0 0 150px;
  height: 150px;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.featuresListSection .featuresList ul li a:hover .img {
  opacity: 0.8;
}
.featuresListSection .featuresList ul li a .txtBox {
  padding-left: 20px;
}
.featuresListSection .featuresList ul li a .txtBox .tit {
  margin-top: 3px;
  color: #222;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.466;
  letter-spacing: 0;
}
.featuresListSection .featuresList ul li a .txtBox .txt {
  margin-top: 16px;
  color: #222;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.466;
  letter-spacing: 0.05em;
}
.featuresListSection .featuresList ul li a .txtBox .ingredients {
  margin-top: 12px;
  color: #222;
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1.333;
  letter-spacing: 0.05em;
}
.featuresListSection .featuresList ul li.sponsored {
  background: #f7f7f7;
}
.featuresListSection .featuresList ul li.sponsored a .pr {
  position: absolute;
  top: 0;
  right: 0;
}

.featuresTextLink {
  margin-top: 20px;
  text-align: right;
}

/******************************
サイト内検索
******************************/
.searchResultSection {
  margin-top: 30px;
  margin-bottom: -20px;
}

.searchResult {
  padding: 20px 30px;
  background: #eeedeb;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
}
.searchResult .searchResultTit {
  color: #222;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 20px;
  letter-spacing: 0.04em;
  width: 140px;
}
.searchResult .searchResultTit img {
  margin-right: 8px;
}
.searchResult form button {
  margin-left: 0;
  padding-left: 15px !important;
  padding-right: 15px !important;
  background: none !important;
  border: none;
}
.searchResult form button svg {
  fill: #A3A4A4;
  width: 20px;
  height: 20px;
}

.searchResultForm {
  display: block;
  position: relative;
  width: calc(100% - 140px - 20px);
  padding: 3px 0 0 3px;
  color: #323232;
  border-radius: 5px;
  background: #fff;
  overflow: hidden;
  min-height: 40px;
}
.searchResultForm td {
  padding: 0 !important;
}
.searchResultForm .gsc-input-box {
  border: none;
}
.searchResultForm form input[type=text] {
  font-size: 1.4rem;
  line-height: 2;
  height: auto !important;
  margin-top: 0 !important;
  padding: 1px 0 0 15px !important;
  background-position: 15px center !important;
}
.searchResultForm td.gsib_b {
  display: none !important;
}

.sideSearchForm {
  display: block;
  position: relative;
  width: calc(100% - 140px - 20px);
  padding: 3px 0 0 3px;
  color: #323232;
  border-radius: 5px;
  background: #fff;
  overflow: hidden;
  min-height: 40px;
  width: 100%;
  min-height: 30px;
  margin-top: 15px;
}
.sideSearchForm td {
  padding: 0 !important;
}
.sideSearchForm .gsc-input-box {
  border: none;
}
.sideSearchForm form input[type=text] {
  font-size: 1.4rem;
  line-height: 2;
  height: auto !important;
  margin-top: 0 !important;
  padding: 1px 0 0 15px !important;
  background-position: 15px center !important;
  padding-left: 5px !important;
  line-height: 1.7;
  background-position: 10px center !important;
}
.sideSearchForm form button {
  margin-left: 0;
  padding-left: 10px !important;
  padding-right: 10px !important;
}
.sideSearchForm form button svg {
  fill: #A3A4A4;
  width: 16px;
  height: 16px;
  margin-top: 1px;
}
.sideSearchForm td.gsib_b {
  display: none !important;
}

.searchResultArea .gsc-result .gs-title {
  overflow: visible !important;
}

/******************************
旧サイト詳細記事専用CSS
******************************/
/* .blogBody */
/* #opDaily */
/* #opDailyBody */
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.blogBody h1 {
  line-height: 1.5;
}
.blogBody h2 {
  line-height: 1.5;
}
.blogBody h3 {
  line-height: 1.5;
}
.blogBody h4 {
  line-height: 1.5;
}
.blogBody h5 {
  line-height: 1.5;
}
.blogBody h6 {
  line-height: 1.5;
}
.blogBody p {
  line-height: 1.5;
}

#opDaily .mainTitle {
  display: block;
  margin: 0 0 22px 0;
  padding: 0 0 12px;
  border-bottom: 1px solid #333333;
  font-size: 20px;
  border-top: none;
  color: #333333;
}
#opDaily a.button {
  display: inline-block;
  height: 30px;
  margin: 0;
  padding: 0 24px 0 13px;
  border: 0;
  font-size: 14px;
  line-height: 31px;
  color: #fff;
  background: #581e13;
  position: relative;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}
#opDaily a.button:after {
  content: "";
  background: no-repeat 0 center;
  background-image: url(/assets/icon_arrow_orange-2f57e27b9ee247770a85cac45c17fb5f7bc2d57be86e1ade408a4478ce01bfa0.png);
  width: 8px;
  height: 30px;
  position: absolute;
  right: 10px;
}
#opDaily a.button:hover {
  text-decoration: none;
  background: #82554d;
}
#opDaily #listByDays {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
}
#opDaily #listByDays .listMenu {
  margin: 0 0 16px;
}
#opDaily #listByDays .listMenu li {
  display: table;
  width: 100%;
  margin: 0 0 20px 0;
  padding: 0 0 20px 0;
  border-bottom: 1px dotted #333333;
  *zoom: 1;
  box-sizing: border-box;
}
#opDaily #listByDays .listMenu li .likeCalendar img {
  width: 98px;
  height: 98px;
}
#opDaily #listByDays .listMenu li .likeCalendar .imageClipper {
  display: block;
  width: 98px;
  height: 98px;
  margin: 0;
  padding: 0;
  border: 1px solid #ccc;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
}
#opDaily #listByDays .listMenu li .likeCalendar .imageClipper img {
  display: none;
}
#opDaily #listByDays .listMenu li:before {
  content: " ";
  display: table;
}
#opDaily #listByDays .listMenu li:after {
  content: " ";
  display: table;
  clear: both;
}
#opDaily #listByDays .listMenu li > a {
  display: table-cell;
  width: 100px;
}
#opDaily #listByDays .likeCalendar {
  float: left;
  padding: 0;
  margin: 0 15px 0 0;
  vertical-align: top;
}
#opDaily #listByDays .likeCalendar time {
  display: block;
  width: 48px;
  height: 45px;
  padding-top: 5px;
  text-align: center;
  font-size: 18px;
  line-height: 17px;
  background: #fff;
  box-sizing: border-box;
  box-shadow: 0 0 0 2px #ccc;
}
#opDaily #listByDays .likeCalendar .day {
  font-size: 12px;
  display: block;
}
#opDaily #listByDays .likeCalendar .mon {
  border-top: 6px solid #ff8f27;
}
#opDaily #listByDays .likeCalendar .tue {
  border-top: 6px solid #acc329;
}
#opDaily #listByDays .likeCalendar .wed {
  border-top: 6px solid #5ba9d8;
}
#opDaily #listByDays .likeCalendar .thu {
  border-top: 6px solid #c071c9;
}
#opDaily #listByDays .likeCalendar .fri {
  border-top: 6px solid #ff6e90;
}
#opDaily #listByDays .headlineSet {
  display: table-cell;
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: middle;
}
#opDaily #listByDays .theme {
  display: none;
  height: 20px;
  font-size: 12px;
  font-weight: bold;
}
#opDaily #listByDays .headline {
  font-size: 16px;
  font-weight: normal;
}
#opDaily #listByDays .headline a {
  font-size: 16px;
  font-weight: normal;
}
#opDaily #listByDays .headline .date {
  font-size: 14px;
  display: block;
}
#opDaily #listByDays .headline .arrow {
  vertical-align: baseline;
}
#opDaily #listByDays .photoSmall {
  padding: 0 10% 0 0;
}
#opDaily #listByDays .pagelinks {
  display: block;
  height: 1em;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 14px;
}
#opDaily #listByDays .morelink {
  float: right;
  display: block;
  width: 40%;
  margin: 0 0 0 auto;
  padding: 0;
  border: 0;
  text-align: right;
}
#opDaily #listByDays .prevlink {
  float: left;
  display: block;
  width: 45%;
  margin: 0 auto 0 0;
  padding: 0;
  border: 0;
  text-align: left;
}
#opDaily #listByDays .prevlink .arrowRev {
  margin-right: 5px;
  vertical-align: middle;
}
#opDaily #listByDays a.more {
  display: inline;
  margin: 0;
  padding: 0;
  border: 0;
  position: relative;
}
#opDaily .paging {
  margin: 40px 56px;
  width: 676px;
}

.monthList .ttl {
  display: block;
  margin: 0 0 22px 0;
  padding: 0 0 12px;
  border-bottom: 1px solid #333333;
  font-size: 20px;
  border-top: none;
  color: #333333;
}

#opDailyBody {
  display: block;
  width: 676px;
  box-sizing: content-box;
  margin: 0 auto;
  padding: 0 56px 60px;
  border: 0;
  font-size: 16px;
  line-height: 1.5;
  *zoom: 1;
}
#opDailyBody:before {
  content: " ";
  display: table;
}
#opDailyBody:after {
  content: " ";
  display: table;
  clear: both;
}
#opDailyBody img {
  display: block;
  margin: 0 auto;
  padding: 38px 0;
  width: 600px;
  height: auto;
}
#opDailyBody img .left {
  display: block;
  margin: 0 auto 0.5em 0;
  padding: 0 12px 0 0;
}
#opDailyBody img.float_left {
  float: left;
  margin: 0;
  padding: 0 12px 0 0;
}
#opDailyBody img.float_right {
  float: right;
  margin: 0;
  padding: 0 0 0 12px;
}
#opDailyBody .left img {
  display: block;
  margin: 0 auto 0.5em 0;
  padding: 0 12px 0 0;
}
#opDailyBody .center img {
  display: block;
  margin: 0 auto 0.5em;
  padding: 0 12px;
}
#opDailyBody img.center {
  display: block;
  margin: 0 auto 0.5em;
  padding: 0 12px;
}
#opDailyBody .right img {
  display: block;
  margin: 0 0 0.5em auto;
  padding: 0 0 0 12px;
}
#opDailyBody img.right {
  display: block;
  margin: 0 0 0.5em auto;
  padding: 0 0 0 12px;
}
#opDailyBody p {
  display: block;
  margin: 12px 0;
  padding: 0;
}
#opDailyBody p.float_left {
  float: left;
  padding-right: 1em;
  display: inline-block;
  _display: inline;
}
#opDailyBody p.float_right {
  float: right;
  padding-left: 1em;
  display: inline-block;
  _display: inline;
}
#opDailyBody a {
  display: inline;
}
#opDailyBody ul {
  display: block;
  margin: 12px 0;
}
#opDailyBody ol {
  display: block;
  margin: 12px 0;
}
#opDailyBody li {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
  list-style-type: none;
}
#opDailyBody hr {
  clear: both;
}

/* =================================== */
/* Google Custom Search Settings */
/* =================================== */
#cse-search-box {
  width: 180px !important;
}
#cse-search-box div {
  padding: 0 !important;
}
#cse-search-box input[type=text] {
  font-size: 14px;
  padding: 0 !important;
}
#cse-search-box input[type=submit] {
  background: #dddddd;
  border: 0 none;
}

html > body .gsc-inline-block {
  display: -moz-inline-box;
  display: inline-block;
  width: 80px;
}

/* 404ページ */
.errorCont {
  padding: 120px 15px;
  text-align: center;
}

.errorContTit {
  font-size: 24px;
  font-weight: 600;
  letter-spacing: .1em;
  text-align: center;
}

.errorContNumber {
  margin-top: 7px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .1em;
}

.errorContTxt {
  margin-top: 23px;
  font-size: 14px;
  letter-spacing: .1em;
}

.errorContBtn {
  margin-top: 40px;
  text-align: center;
}

.errorContBtn a {
  width: 100%;
  max-width: 350px;
  font-size: 16px;
  line-height: 50px;
  text-align: center;
  color: #FFF;
  background: #000;
  display: inline-block;
}
