@charset "UTF-8";
/*!
---- SWDesign Original Stylesheet Template. ----
Thema Name:     model
Description:    model
Version:        1.0.0
Last Update:    2020/2/4
Author:         Naoto Ebitani
Company URL:    https://swdesign.jp
License:        GPL
License URL:    http://www.gnu.org/licenses/gpl.html
*/
html {
  font-display: swap;
}

.bal {
  font-family: "Baloo 2", sans-serif;
}

select::-ms-expand {
  display: none;
}

select {
  -moz-appearance: none;
  text-indent: 0.01px;
}

address {
  margin-bottom: 0 !important;
}

ol, ul, dl {
  list-style: none;
  margin-bottom: 0 !important;
  padding-left: 0;
}

dd {
  margin-bottom: 0 !important;
  margin-left: 0 !important;
}

label {
  margin-bottom: 0 !important;
}

a:hover {
  text-decoration: none !important;
}

img {
  display: block;
  /*height: auto;
	margin: auto;
	max-width: 100%;*/
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(255, 250, 156, 0);
}

@-ms-viewport {
  width: device-width;
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: "Zen Maru Gothic", Arial, Meiryo, sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.7;
  color: #56493C;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

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

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0;
}

p {
  margin-top: 0;
  margin-bottom: 0;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
}

address {
  margin-bottom: 10px;
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 10px;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: bold;
}

dd {
  margin-bottom: 5px;
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 10px;
  margin: 0 0 1rem;
}

dfn {
  font-style: italic;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #000000;
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:hover {
  color: #000000;
  text-decoration: underline;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]) :hover {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 10px;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 10px;
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

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

table {
  border-collapse: collapse;
}

caption {
  padding-top: 7.5px;
  padding-top: 0.75rem;
  padding-bottom: 7.5px;
  padding-bottom: 0.75rem;
  color: #000000;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 5px;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

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

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 5px;
  margin-bottom: .5rem;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

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

[type="blackrch"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="blackrch"]::-webkit-blackrch-cancel-button,
[type="blackrch"]::-webkit-blackrch-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

/*.icon-titleLine:before {
    position: absolute;
    content: "";
    background-image: url(../image/icon/icon_titleLine.svg);
    width: 25px;
    height: 26px;
    left: 0;
    bottom: 0;
    margin: 0px 0px 0 -24px;
}
.icon.icon-form:before {
    background-image: url(../image/icon/icon_form.svg);
    width: 18px;
    height: 12px;
    margin: 0 12px 0 0;
    position: relative;
    display: inline-block;  
    @include sp {
        width: 14px;
        height: 12px;
        margin: 0 6px 0 0;
    }
}
*/
.icon.icon-phone-head:before {
  position: relative;
  background-image: url(../image/icon/icon_phone-top.svg);
  width: 20px;
  height: 20px;
  display: inline-block;
}

.icon.icon-wall:before {
  width: 5px;
  height: 50px;
  border-radius: 3px;
  bottom: 0;
  top: 0;
  left: 0;
  margin: auto;
}

.icon.icon-mail:before {
  background-image: url(../image/icon/icon_mail.svg);
  width: 18px;
  height: 12px;
  margin: 0 12px 0 0;
  position: relative;
  display: inline-block;
}

.icon.icon-mail-bk:before {
  background-image: url(../image/icon/icon_mail-bk.svg);
  width: 20px;
  height: 20px;
  margin: 0 6px 0px 0px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.icon.icon-mail-bk:hover:before {
  background-image: url(../image/icon/icon_mail.svg);
}

.icon.icon-phone:before {
  background-image: url(../image/icon/icon_phone-bk.svg);
  width: 20px;
  height: 22px;
  position: relative;
  display: inline-block;
  margin: 0px 14px 0 0;
}

.icon.icon-date:before {
  background-image: url(../image/icon/icon_date.svg);
  width: 16px;
  height: 16px;
  margin: 0 4px 0 0;
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.icon.icon-check:before {
  background-image: url(../image/icon/icon-check.svg);
  width: 26px;
  height: 26px;
  margin: 0 14px 3px 0px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.icon.icon-alert:before {
  background-image: url(../image/icon/icon-alert.svg);
  width: 22px;
  height: 22px;
  margin: 0 14px 3px 0px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.lsAV50 {
  letter-spacing: 0.05em;
}

.lsAV100 {
  letter-spacing: 0.1em;
}

.lhM {
  line-height: 1;
}

.lhL {
  line-height: 1.2;
}

.lhXL {
  line-height: 1.4;
}

.lhXXL {
  line-height: 1.8;
}

.lhXXXL {
  line-height: 2;
}

.normal {
  font-weight: 400;
}

.regular {
  font-weight: 500;
}

.medium {
  font-weight: 600;
}

.bold {
  font-weight: 700;
}

.black {
  color: #000000;
}

.gray {
  color: #56493C;
}

.white {
  color: #fff;
}

.yellow {
  color: #FFFA9C;
}

.green {
  color: #4BCCBE;
}

.pink {
  color: #F3A8BB;
}

.pale {
  color: #878787;
}

.blackBg {
  background: #333;
}

.whiteBg {
  background: #fff;
}

.taL {
  text-align: left !important;
}

.taC {
  text-align: center !important;
}

.taR {
  text-align: right !important;
}

.indent {
  text-indent: -1em;
  padding-left: 1em;
}

.marker {
  background: linear-gradient(transparent 60%, rgba(0, 170, 255, 0.5) 30%);
  display: inline;
  padding: 0 2px 2px;
}

.anchor {
  padding-top: 100px;
  margin-top: 100px;
}

.clearText {
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
}

.autoImg {
  width: 100%;
  height: auto;
}

.autoImg.full {
  width: auto;
  max-width: 100%;
  height: auto;
  display: table;
  margin: 0 auto;
}

.autoImg.lg {
  width: 80%;
  margin: 0 auto;
  display: block;
}

.autoImg.md {
  width: 50%;
  margin: 0 auto;
  display: block;
}

.autoImg.sm {
  width: 30%;
  margin: 0 auto;
  display: block;
}

.hAuto {
  height: auto !important;
}

.icon {
  position: relative;
}

.icon:before, .icon:after {
  background: no-repeat center/contain;
  content: "";
  position: absolute;
}

.logo {
  position: relative;
}

.logo:before, .logo:after {
  background: no-repeat center/contain;
  content: "";
  position: absolute;
}

.contactBtn {
  margin: auto;
  display: table;
  border-radius: 4px;
  background: #F3A8BB;
  color: #fff;
  padding: 18px 48px;
  font-size: 24px;
  font-weight: 500;
}

.contactBtn:hover {
  background: #eee;
  color: #333 !important;
}

.submitBtn {
  display: table;
  border: none;
  border-radius: 50px;
  color: #fff;
  background: #F3A8BB;
  font-size: 20px;
  font-weight: 500;
  padding: 10px 64px;
  position: relative;
  transition: .3s;
}

.submitBtn:hover {
  transform: translateX(6px);
  color: #fff;
}

.detailBtn {
  position: relative;
  display: table;
  background: #FFFA9C;
  color: #56493C;
  font-size: 20px;
  padding: 14px 64px 14px 48px;
  border-radius: 50px;
  margin: 48px 0 0 auto;
  transition: 0.3s;
}

.detailBtn:after {
  content: "";
  background-image: url(../image/icon/icon_detail.svg);
  background-repeat: no-repeat;
  background-size: contain;
  top: 0;
  bottom: 0;
  right: 0;
  width: 49px;
  height: 49px;
  margin: auto 4px;
  position: absolute;
}

.detailBtn:hover {
  translate: 15px;
}

.detailBtn2 {
  display: table;
  background: #F3A8BB;
  font-size: 20px;
  font-weight: 500;
  color: #fff;
  padding: 6px 8px 6px 48px;
  border-radius: 50px;
  margin: 48px 0 0 auto;
  transition: 0.3s;
}

.detailBtn2:after {
  content: "";
  background-image: url(../image/icon/icon_detail-w.svg);
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: -45%;
  top: 0;
  right: 0;
  width: 49px;
  height: 49px;
  margin: 0 8px 0px 20px;
}

.detailBtn2:hover {
  translate: 15px;
}

.characterBtn {
  display: table;
  background: #FFFA9C;
  font-size: 20px;
  color: #56493C;
  padding: 6px 48px;
  border-radius: 50px;
  margin: auto;
  transition: 0.3s;
}

.characterBtn:hover {
  translate: 15px;
}

html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
}

body {
  position: relative;
}

/*----------▼▼ wrapper ▼▼----------*/
.wrapper {
  letter-spacing: 0.05em;
  overflow: hidden;
  position: relative;
  width: 100%;
}

/*----------▼▼ centering ▼▼----------*/
.mAuto {
  margin: auto;
}

/*----------▼▼ section ▼▼----------*/
/*
.section {
	@include sp {
		padding: 60px 0;
	};
	@include pc {
		padding: 60px 0;
	};
}
*/
/*---------- float ----------*/
.fL {
  float: left !important;
}

.fR {
  float: right !important;
}

/*----------▼▼ clearfix ▼▼----------*/
.cf:after {
  clear: both;
  content: "";
  display: block;
}

/*----------▼▼ flex-box ▼▼----------*/
/* common */
.flexBox {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

/* SP */

/* PC */

/*----------grid-box ----------*/
/* common */
.gridBox {
  display: -ms-grid;
  display: grid;
}

/* SP */

/* PC */

/*----------▼▼ content-size ▼▼----------*/
/* SP */

/* PC */

@keyframes fadeInLeft01 {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transform: translateX(-150px);
  }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transform: translateX(0);
  }
}

.fadeInLeft01 {
  animation-name: fadeInLeft01;
}

@keyframes fadeInUp01 {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transform: translateY(150px);
  }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transform: translateY(0);
  }
}

.fadeInUp01 {
  animation-name: fadeInUp01;
}

.cmnTtl__type1 {
  position: relative;
  font-size: 20px;
  font-weight: 500;
}

.cmnTtl__type1 span {
  font-size: 64px;
  line-height: 1.2;
}

.cmnTtl__type2 {
  position: relative;
  font-size: 64px;
}

.cmnTtl__type2:after {
  content: "";
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: middle;
  width: 120px;
  height: 120px;
  margin: 0 0 0px 32px;
  border-radius: unset;
}

.cmnTtl__type3 {
  position: relative;
  font-size: 32px;
  font-weight: 400;
  padding-bottom: 24px;
}

.cmnTtl__type3:before {
  content: "";
  background-color: #666;
  width: 37px;
  height: 1px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 14px;
}

.cmnTtl__type4 {
  position: relative;
  font-size: 20px;
  font-weight: 500;
  color: #333;
  padding: 20px 0;
}

.cmnTtl__type4:before {
  content: '';
  width: 4px;
  height: 20px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 14px;
}

.cmnTtl__type5 {
  position: relative;
  font-size: 30px;
  font-weight: 500;
  color: #333;
  padding: 20px 0;
}

.cmnTtl__type5:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #333;
  width: 40px;
  height: 1px;
  margin: auto;
}

.cmsContents img {
  width: 100%;
}

.cmsContents strong {
  font-weight: 700;
}

.cmsContents h1 {
  background: #F3A8BB;
  padding: 20px 48px;
  border-radius: 24px;
  color: #fff;
  font-size: 24px;
}

.cmsContents h1 span {
  font-size: 16px;
  margin-right: 32px;
  padding-bottom: 8px;
  display: inline-block;
  vertical-align: middle;
}

.cmsContents h2 {
  margin: 0 0 16px;
  padding: 4px 12px;
  line-height: 1.4;
  font-weight: 700;
  position: relative;
}

.cmsContents h3 {
  margin: 0 0 16px;
  line-height: 1.4;
  position: relative;
  font-weight: 500;
}

.cmsContents h3:before {
  content: '';
  background-color: #fff;
  display: inline-block;
  width: 5px;
  height: 25px;
  vertical-align: middle;
  margin: 0 10px 5px 0;
}

.cmsContents h4 {
  margin: 0 0 16px;
  line-height: 1.4;
  font-weight: 500;
  position: relative;
}

.cmsContents h4:before {
  content: '';
  background-color: #000000;
  display: inline-block;
  width: 14px;
  height: 1px;
  vertical-align: middle;
  margin-right: 10px;
}

.cmsContents h5 {
  margin: 0 0 16px;
  font-weight: 500;
  line-height: 1.4;
}

.cmsContents h6 {
  margin: 0 0 16px;
  font-weight: 500;
  line-height: 1.4;
  color: #878787;
}

.cmsContents p {
  margin: 16px 0 16px;
  line-height: 1.8;
  font-size: 16px;
}

.cmsContents ul {
  margin: 16px 0 16px 1.5em;
}

.cmsContents ul li {
  list-style-type: disc;
  margin-top: 8px;
}

.cmsContents ul li:first-child {
  margin-top: 0;
}

.cmsContents ul.iroha li {
  list-style-type: katakana-iroha;
}

.cmsContents ul.aiueo li {
  list-style-type: katakana;
}

.cmsContents ul.abcde li {
  list-style-type: lower-alpha;
}

.cmsContents ol {
  margin: 16px 0 16px 1.5em;
}

.cmsContents ol > li {
  list-style-type: decimal;
  margin-top: 8px;
}

.cmsContents ol > li:first-child {
  margin-top: 0;
}

.cmsContents ol > li > ol {
  margin: 16px 0;
}

.cmsContents ol > li > ol > li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  margin-top: 8px;
  position: relative;
  padding-left: 3em;
}

.cmsContents ol > li > ol > li:before {
  display: marker;
  content: "（" counter(cnt) "）";
  position: absolute;
  left: 0;
  top: 0;
}

.cmsContents ol > li > ol > li:first-child {
  margin-top: 0;
}

.cmsContents ol.kakko > li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  margin-top: 8px;
  position: relative;
  padding-left: 3em;
}

.cmsContents ol.kakko > li:before {
  display: marker;
  content: "（" counter(cnt) "）";
  position: absolute;
  left: 0;
  top: 0;
}

.cmsContents ol.kakko > li:first-child {
  margin-top: 0;
}

.cmsContents ol.iroha li {
  list-style-type: katakana-iroha;
}

.cmsContents ol.aiueo li {
  list-style-type: katakana;
}

.cmsContents ol.abcde li {
  list-style-type: lower-alpha;
}

.cmsContents dl {
  margin: 16px 0;
}

.cmsContents dl dt {
  font-weight: bold;
}

.cmsContents dl dd {
  margin-left: 8px;
  padding-left: 8px;
  margin-top: 8px;
  margin-bottom: 16px;
}

.cmsContents blockquote {
  margin: 32px 0 32px 0;
  position: relative;
  /*&:before {
			content: '“';
			position: absolute;
			top: -65px;
			left: 0px;
			font-size: 120px;
			z-index: 0;
			opacity: 0.2;
		}*/
}

.cmsContents table {
  margin: 32px 0 32px 0;
  width: 100%;
}

.cmsContents table th {
  min-width: 120px;
}

.cmsContents table th, .cmsContents table td {
  padding: 8px;
}

.cmsContents table th:first-child, .cmsContents table td:first-child {
  border-left: none;
}

.cmsContents table td > *:first-child {
  margin-top: 0;
}

.cmsContents table td > *:last-child {
  margin-bottom: 0;
}

/*
.nav-below {
	display: flex;
	justify-content: space-between;
	padding: 12px 0px;
  @include sp {
  	padding: 0;
  	margin-bottom: 16px;
  };
}

.nav-next {
	@include sp {
		text-align: right;
	}
}
.nav-previous a,
.nav-next a {
    font-size: 14px;
    font-weight: 500;
    color: #ffffff;
    background: #333;
    padding: 5px 24px;
    &:hover {
    	border-bottom: none;
    	color: #aaa;
    }
}
*/
.wp-pagenavi {
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 80px;
}

/*.wp-pagenavi a, .wp-pagenavi span {
  border: none !important;
  height: 44px;
  line-height: 38px;
  padding: 3px 5px;
  vertical-align: top;
  margin: 2px;
  @include sp {
		height: 36px;
		line-height: 28px; 	
  };
}*/
.wp-pagenavi a {
  transition: .3s;
}

.wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink {
  background-color: #48587e;
  color: #fff;
}

.wp-pagenavi .first, .wp-pagenavi .page, .wp-pagenavi .last {
  background-color: #FFFA9C;
  color: #333;
  border-radius: 50%;
  font-size: 24px;
}

.wp-pagenavi .previouspostslink, .wp-pagenavi .current, .wp-pagenavi .page, .wp-pagenavi .extend, .wp-pagenavi .nextpostslink {
  width: 40px;
  margin: 0 6px;
}

.wp-pagenavi .first, .wp-pagenavi .previouspostslink, .wp-pagenavi .extend, .wp-pagenavi .nextpostslink, .wp-pagenavi .last {
  position: relative;
}

.wp-pagenavi .first:before, .wp-pagenavi .first:after, .wp-pagenavi .previouspostslink:before, .wp-pagenavi .previouspostslink:after, .wp-pagenavi .extend:before, .wp-pagenavi .extend:after, .wp-pagenavi .nextpostslink:before, .wp-pagenavi .nextpostslink:after, .wp-pagenavi .last:before, .wp-pagenavi .last:after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
}

.wp-pagenavi .pages {
  padding: 3px 8px;
}

.wp-pagenavi .first:before, .wp-pagenavi .previouspostslink:before, .wp-pagenavi .nextpostslink:after, .wp-pagenavi .last:after {
  height: 12px;
  top: calc(50% - 6px);
  width: 12px;
}

.wp-pagenavi .first {
  padding-left: 18px;
  width: 68px;
}

.wp-pagenavi .first:before {
  background-image: url(../image/icon/icon_arrow_pager-double_black.svg);
  left: 8px;
  transform: scale(-1, 1);
}

.wp-pagenavi .previouspostslink:before {
  background-image: url(../image/icon/icon_arrow_pager-single_white.svg);
  left: calc(50% - 6px);
  transform: scale(-1, 1);
}

.wp-pagenavi .extend:before {
  background-image: url(../image/icon/icon_ellipsis_black.svg);
  height: 20px;
  left: calc(50% - 10px);
  top: calc(50% - 10px);
  width: 20px;
}

.wp-pagenavi .nextpostslink:after {
  background-image: url(../image/icon/icon_arrow_pager-single_white.svg);
  left: calc(50% - 6px);
}

.wp-pagenavi .last {
  padding-left: 10px;
  text-align: left;
  width: 68px;
}

.wp-pagenavi .last:after {
  background-image: url(../image/icon/icon_arrow_pager-double_black.svg);
  right: 10px;
}

.wp-pagenavi .pages, .wp-pagenavi .extend {
  background-color: #e6eae8;
  color: #222;
}

.wp-pagenavi .current {
  background-color: #4BCCBE;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  /*line-height: 35px;*/
  border-radius: 50%;
}

.grecaptcha-badge {
  bottom: 10px;
  right: 10px;
  transform: scale(0.85);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

.req .formLbl, .any .formLbl {
  box-sizing: border-box;
  width: 100%;
  display: block;
  position: relative;
  padding-left: 45px;
}

.req .formLbl:before, .any .formLbl:before {
  left: 0;
}

.req .formLbl, .any .formLbl {
  position: relative;
}

.req .formLbl:before, .any .formLbl:before {
  position: absolute;
  color: #fff;
  border-radius: 3px;
  font-size: 13px;
  padding: 2px 5px;
}

.req .formLbl:before {
  content: '必須';
  background-color: #d32f2f;
}

.any .formLbl:before {
  content: '任意';
  background-color: #e7ebf4;
  color: #000000;
}

.screen-reader-response {
  display: none;
}

.formBox {
  margin: 48px auto;
  display: table;
}

textarea,
input[type=text],
input[type=email],
input[type=tel],
input[type=date],
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  height: 100%;
  width: 100%;
  font-size: 16px;
  outline: none;
  border: 2px solid #56493C;
  border-radius: 14px;
  padding: 0 0 0 24px;
}

textarea {
  padding: 14px 14px 14px 24px !important;
}

:-ms-input-placeholder {
  color: #aaa;
}

::placeholder {
  color: #aaa;
}

.dropdown-menu_wrap {
  position: relative;
  height: 60px;
  width: 100%;
}

.dropdown-menu_wrap .wpcf7-form-control {
  padding: 2px 30px 2px 30px;
  height: 70px;
  border-radius: 14px;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
}

.wpcf7-list-item {
  display: block !important;
  margin: 0 0 0 1em;
  border: none;
}

.wpcf7 form.sent .wpcf7-response-output {
  text-align: center;
  margin: 0 !important;
  background-color: #4BCCBE;
  color: #fff;
  border: none !important;
  border-radius: 50px;
  padding: 10px 0;
}

.wpcf7-not-valid-tip {
  margin-top: 10px;
  text-align: right;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
  border: none !important;
  background-color: #FFFA9C;
  border-radius: 50px;
  margin: 0 !important;
  padding: 10px 0;
  text-align: center;
}

.swiper1 {
  background: #4BCCBE;
  padding: 25px 0 0 !important;
}

.swiper1 .swiper-wrapper {
  transition-timing-function: ease;
}

.swiper1 .swiper-slide {
  text-align: center;
  line-height: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  border: 5px solid #FFFA9C;
  border-radius: 24px;
  background-color: #fff;
  height: 500px;
}

.swiper1 .swiper-slide img {
  width: 100%;
  height: 430px;
  -o-object-fit: contain;
  object-fit: contain;
}

.swiper2 {
  height: 260px;
}

.swiper2 .swiper-slide {
  background-color: #fff;
  border: 4px solid #FFFA9C;
  display: -ms-flexbox;
  display: flex;
  border-radius: 24px;
}

.swiper2 .swiper-slide img {
  width: 90%;
  height: 90%;
  -o-object-fit: contain;
  object-fit: contain;
  margin: auto;
}

.swiper2__nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin: 64px 14px 0 0;
}

.swiper-button-prev2,
.swiper-button-next2 {
  display: block;
  position: relative;
  margin-right: 75px;
}

.swiper-button-prev2:after,
.swiper-button-next2:after {
  content: "";
  height: 60px;
  width: 60px;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 14px;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  border-radius: unset !important;
  /* これがないと画像が欠ける */
}

.swiper-button-prev2:after {
  background-image: url(../image/icon/icon_prevBtn.svg) !important;
}

.swiper-button-next2:after {
  background-image: url(../image/icon/icon_nextBtn.svg) !important;
}

.swiper3 {
  position: relative;
  overflow: hidden;
  padding: 0px 0;
  height: 120px;
  width: 680px;
}

.swiper3 .swiper-slide {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  border: 4px solid #4BCCBE;
  border-radius: 50%;
  background-color: #fff;
}

.swiper3 .swiper-slide img {
  width: 90px;
  height: 90px;
  -o-object-fit: contain;
  object-fit: contain;
}

.swiper3__thumbs {
  height: 500px;
}

.swiper3__thumbs .swiper-slide {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 12px;
  border: none;
  background-color: unset;
}

.swiper3__thumbs .swiper-slide img {
  width: 400px;
  height: 400px;
  -o-object-fit: contain;
  object-fit: contain;
}

.swiper3__thumbs .slide-item {
  transform: scale(3);
  -o-object-fit: cover;
  object-fit: cover;
  background: none;
  border: none;
}

.swiper3__pagination {
  margin-bottom: -56px;
}

.swiper3__pagination .swiper-pagination-bullet {
  background-color: transparent !important;
  /* 背景色を透明に */
  background-image: url(../image/icon/noactive.png) !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  border-radius: unset !important;
  /* これがないと画像が欠ける */
  width: 25px !important;
  height: 25px !important;
  opacity: 1 !important;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  /* 画像の透過を無くす */
}

.swiper3__pagination .swiper-pagination-bullet-active {
  background-image: url(../image/icon/active.svg) !important;
  height: 25px;
  width: 25px;
}

.swiper-button-prev3:after,
.swiper-button-next3:after {
  bottom: 0;
  content: "";
  height: 20px;
  margin: -30px auto;
  position: absolute;
  top: 0;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  border-radius: unset !important;
  /* これがないと画像が欠ける */
  width: 30px;
  height: 30px;
}

/* 前への矢印カスタマイズ */
.swiper-button-prev3:after {
  background-image: url(../image/icon/nav3PrevBtn.svg) !important;
  margin: 0 0 0 -120px;
}

/* 次への矢印カスタマイズ */
.swiper-button-next3:after {
  background-image: url(../image/icon/nav3NextBtn.svg) !important;
  margin: 0 -120px 0 0;
}

.swiper-wrapper {
  transition-timing-function: linear;
}

.swiper-pagination1 {
  position: relative !important;
  padding: 32px 0 14px;
}

/* ページネーションの基本スタイル */
.swiper-pagination-bullet {
  background-color: transparent !important;
  /* 背景色を透明に */
  background-image: url(../image/icon/noactive.png) !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  border-radius: unset !important;
  /* これがないと画像が欠ける */
  height: 50px !important;
  opacity: 1 !important;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  /* 画像の透過を無くす */
  width: 50px !important;
}

/* 選択されているページネーション */
.swiper-pagination-bullet-active {
  background-image: url(../image/icon/active.svg) !important;
  height: 50px;
  width: 50px;
}

/* 画像サイズ調整 */
.swiper-slide img {
  height: auto;
  width: 100%;
}

.slide-item {
  border: 4px solid #4BCCBE;
  background: #fff;
  border-radius: 50%;
}

.FixedFt {
  width: 100%;
  height: 80px;
  z-index: 10;
  background-color: #fff;
}

.FixedFt__top a {
  color: #fff;
  height: 60px;
  width: 60px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  float: right;
  border-radius: 50px;
  margin-right: 12px;
  margin-bottom: 4px;
}

.ctaBox {
  width: 100%;
  height: 80px;
  margin: 0px auto;
  display: table;
  text-align: center;
  border-top: 1px solid #ccc;
}

.ctaBox li {
  display: table-cell;
  vertical-align: middle;
  border-left: 1px solid #ccc;
  padding: 0 18px;
}

.ctaBox__head .title {
  font-size: clamp(21px, 1.4vw, 36px);
  font-weight: 500;
  line-height: 1.3;
}

.ctaBox__number {
  line-height: 1.2;
}

.ctaBox__number span {
  font-size: 24px;
  font-weight: 700;
}

.ctaBox__number a {
  font-size: clamp(28px, 2.2vw, 46px);
  font-weight: 700;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
}

.ctaBox li.top {
  background: #FFFBBA;
  padding: 0;
  width: 80px;
  border: none;
}

.ctaBox li.top a {
  font-size: 18px;
  font-weight: 500;
  color: #000;
  display: -ms-flexbox;
  display: flex;
  height: 80px;
  padding: 0;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
}

.ctaBox__form a {
  font-size: 18px;
  font-weight: 500;
  color: #333;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 0;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  border: 2px solid #333;
  border-radius: 50px;
}

.ctaBox__form a:hover {
  color: #fff;
  border: 2px solid #fff;
}

.Footer {
  position: relative;
  background: #F3A8BB url(../image/bg/footer.png) center top;
  background-size: cover;
}

.Footer-single {
  position: relative;
  background: #fff url(../image/bg/footer.png) center top;
  background-size: cover;
}

.FtSMap {
  position: relative;
  padding: 140px 5% 24px;
}

.FtSMap__title {
  font-size: 120px;
  text-align: center;
  line-height: 1;
  letter-spacing: -2px;
  color: #4BCCBE;
  -webkit-text-stroke: 1px #FFF;
  text-stroke: 1px #FFF;
}

.FtSMap__logo {
  margin: auto;
}

.FtSMap__inner {
  border-top: 2px solid #fff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 80px;
}

.FtSMap__sns--logo {
  height: 80px;
  margin-top: 64px;
}

.FtSMap__sns--box {
  display: -ms-flexbox;
  display: flex;
  margin-top: 4px;
}

.FtSMap__sns--box a {
  width: 24px;
  margin-right: 14px;
}

.FtSMap__menu {
  font-size: 16px;
  margin-top: 80px;
  width: 400px;
}

.FtSMap__menu td {
  width: 100px;
}

.Footer__copyYear {
  font-size: 12px;
}

#header {
  width: 100%;
  height: 100px;
}

.fixed {
  position: fixed;
  top: 0;
  z-index: 1000;
}

.Header {
  background: #F3A8BB;
}

.Header__brandName {
  display: none;
}

.logoHead {
  display: -ms-flexbox;
  display: flex;
  height: 100px;
  width: 100%;
  background: #F3A8BB;
}

.logoHead__child {
  background: #4BCCBE;
}

.logoHead a {
  display: table;
  margin: auto;
}

.logoHead__logo {
  height: 75px;
}

.childHeader {
  background: url(../image/bg/child_bg.png) center top;
  background-size: cover;
}

.GNav__menuOpenBtn {
  position: absolute;
  background-color: #FFFA9C;
  z-index: 50;
}

.GNav__menuOpenBtn span {
  background: #000;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  transition: .3s ease-in-out;
}

.GNav__menuBtnMenu {
  color: #000;
}

.GNav__menuOpenBtn.js_gnavMenu-open span {
  background: #000;
}

.GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(1) {
  transform: rotate(315deg);
}

.GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(2) {
  left: 50%;
  width: 0;
}

.GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(3) {
  transform: rotate(-315deg);
}

.blogPage {
  margin-top: 64px;
}

.blogPage li {
  margin: 14px 0;
  border-bottom: 1px solid #ddd;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.blogPage__wrap:hover {
  background-color: #fffbce;
}

.blogPage__wrap--img {
  width: 13%;
}

.blogPage__wrap--img span {
  display: block;
  background-size: cover;
  width: 100px;
  height: 100px;
}

.blogPage__wrap--text {
  width: 87%;
  font-size: 18px;
  font-weight: 500;
  color: #333;
}

.blogPage__wrap--text a {
  display: inline-block;
  line-height: 1.6;
}

.mainVisual {
  width: 100%;
  position: relative;
  background: #F3A8BB;
}

.mainVisual__title {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.about {
  position: relative;
  background-image: url(../image/bg/top_bg.png);
  background-position: center bottom;
  background-size: cover;
  padding-bottom: 128px;
}

.about h3 {
  font-size: 32px;
  margin: 14px 0;
}

.about P {
  line-height: 1.6;
}

.about dl {
  padding: 0 32px;
}

.about dl div {
  text-align: left;
}

.about dd {
  padding: 0 0 14px 24px;
  line-height: 1.6;
}

.news {
  background: #fff;
  position: relative;
  padding: 48px 0 14px;
  z-index: 1;
}

.news__wrap {
  display: -ms-flexbox;
  display: flex;
}

.news__title {
  width: 30%;
  padding: 32px 32px 0 0;
}

.news__text {
  width: 70%;
  padding: 48px 0 0 16px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
}

.news__text ul li a {
  display: block;
  background: #F3A8BB;
  border-radius: 12px;
  padding: 14px 24px;
  font-size: 16px;
  letter-spacing: 0.08em;
  font-weight: 500;
  color: #333;
  margin-bottom: 24px;
}

.news__text ul li a:hover {
  background: #FFFA9C;
}

.article {
  padding: 80px 0 80px 10%;
}

.article__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-width: 8px 0px 8px 8px;
  border-color: #F3A8BB;
  border-style: solid;
  border-radius: 32px 0 0 32px;
}

.article__title {
  width: 30%;
  padding: 32px;
}

.article__content {
  position: relative;
  width: 70%;
  background: #F3A8BB;
  padding: 64px 0 48px 64px;
}

.character {
  width: 100%;
  height: 880px;
  position: relative;
  background: #F3A8BB url(../image/bg/topCharaBg.webp) center bottom;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 64px 0 128px;
}

.character__wrap {
  margin: 0 auto;
  position: relative;
  width: 680px;
}

.character__activeWrap {
  width: 800px;
  margin: 24px auto 0;
}

.character__activeWrap .swiper-slide {
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  /* スムーズな切り替えのためにtransitionを設定 */
}

.character__activeWrap .swiper-slide-active {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  visibility: visible;
}

.goods {
  background: #F3A8BB;
  padding: 64px 0 128px;
}

.goods__wrap {
  margin-top: 96px;
  padding: 0 24px 128px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.goods__wrap li {
  position: relative;
  display: block;
}

.goods__wrap li a {
  display: table;
  position: relative;
}

.goods__wrap li a span {
  display: block;
  background-color: #fff;
  background-position: center center;
  background-size: 80%;
  background-repeat: no-repeat;
  width: 400px;
  height: 400px;
  border: 6px solid #4BCCBE;
  border-radius: 24px;
}

.goods__wrap li:nth-child(odd) {
  margin: 0;
}

.goods__wrap li:nth-child(even) {
  margin: 220px 0 0 auto;
}

.goods__wrap li:nth-child(odd) .price__tag {
  transform: rotate(-7deg);
  position: absolute;
  top: 0;
  right: 0;
  margin: 200px -120px 0 0;
}

.goods__wrap li:nth-child(even) .price__tag {
  transform: rotate(7deg);
  position: absolute;
  top: 0;
  left: 0;
  margin: 200px 0 0 -120px;
}

.goods__wrap .price__tag {
  background-color: #fff;
  width: 230px;
  height: 300px;
  padding: 24px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
}

.goods__wrap .price__tag--name {
  font-size: 18px;
  line-height: 1.4;
  padding: 6px 0;
  border-top: 9px solid #868686;
  border-bottom: 9px solid #868686;
}

.goods__wrap .price__tag--price {
  font-size: 20px;
  text-align: right;
  border-bottom: 1px solid #56493C;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.goods__wrap .price__tag--barcode span {
  display: block;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 100%;
  height: 60px;
  border: none;
  border-radius: unset;
}

.childTop {
  position: relative;
  background: #F3A8BB url(../image/bg/child_bg.png) center bottom;
  background-size: cover;
  padding: 64px 0 96px;
}

.childTop.whiteBg {
  background: #fff url(../image/bg/child_bg.png) center bottom;
  background-size: cover;
  padding: 64px 0 128px;
}

.goodsPage h1:after {
  background-image: url(../image/icon/copon.svg);
}

.characterPage h1:after {
  background-image: url(../image/icon/sironeko.svg);
}

.newsPage h1:after {
  background-image: url(../image/icon/kurioneko.svg);
}

.newsDetailPage h1:after {
  background-image: url(../image/icon/kurioneko.svg);
}

.topicPage h1:after {
  background-image: url(../image/icon/umeboshi.svg);
}

.topicItemPage h1:after {
  background-image: url(../image/icon/umeboshi.svg);
}

.faqPage h1:after {
  background-image: url(../image/icon/kanyanko.svg);
}

.contactPage h1:after {
  background-image: url(../image/icon/ne.svg);
}

.companyPage h1:after {
  background-image: url(../image/icon/tamao.svg);
}

.policyPage h1:after {
  background-image: url(../image/icon/tamao.svg);
}

.goodsPage {
  background: #F3A8BB;
}

.goodsPage__wrap {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 96px;
  margin: 96px 0 0;
}

.goodsPage__wrap a {
  display: block;
  position: relative;
  border: 12px solid #4BCCBE;
  background-color: #fff;
  border-radius: 24px;
}

.goodsPage__wrap a span {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 1 / 1;
  background-size: 80%;
  background-position: center;
  background-repeat: no-repeat;
}

.goodsPage__wrap a .price__label {
  width: 135px;
  height: 200px;
  position: absolute;
  bottom: 0;
  right: 0;
  margin: 0 -64px -48px 0;
  background-color: #fff;
  border: 1px solid #ddd;
  padding: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
}

.goodsPage__wrap a .price__label--name {
  font-size: 16px;
  line-height: 1.4;
  border-top: 4px solid #56493C;
  border-bottom: 4px solid #56493C;
  padding: 4px 0;
}

.goodsPage__wrap a .price__label--price {
  text-align: right;
  border-bottom: 1px solid #56493C;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.goodsPage__wrap a .price__label--barcode {
  aspect-ratio: initial;
}

.goodsPage__wrap a .price__label--barcode span {
  display: block;
  width: 100%;
  height: 48px;
  aspect-ratio: unset;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.goodsPage__detail {
  background: #fff;
}

.goodsTag {
  position: absolute;
  bottom: 0;
  right: 0;
  margin: 0 -32px -32px 0;
}

.goodsItem__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 128px 0 64px;
}

.goodsItem__wrap--img {
  width: 45%;
}

.goodsItem__wrap--img span {
  display: block;
  background-color: #fff;
  background-position: center center;
  background-size: 80%;
  background-repeat: no-repeat;
  width: 100%;
  aspect-ratio: 1 / 1;
  border: 6px solid #F3A8BB;
  border-radius: 24px;
}

.goodsItem__wrap--text {
  width: 50%;
}

.goodsItem__wrap--text .goodsTitle {
  font-size: 32px;
  border-bottom: 1px solid #333;
}

.recommend {
  background: #F3A8BB;
  margin: 114px 5.5% 0;
  border-radius: 24px;
  padding: 64px 32px 80px;
  margin-bottom: 144px;
}

.recommend__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 80px;
}

.recommend__wrap a {
  display: block;
  width: 32.5%;
  height: 420px;
  background: url("../image/bg/cloud.svg") center bottom/contain;
  background-repeat: no-repeat;
  padding: 0 14px;
}

.recommend__wrap a h3 {
  font-size: 20px;
  font-weight: 500;
  text-align: center;
  margin-top: 24px;
  color: #56493C;
}

.recommend__img {
  width: 250px;
  height: 250px;
  margin: auto;
  border: 8px solid #4BCCBE;
  background-color: #fff;
  border-radius: 24px;
}

.recommend__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.characterPage {
  background: #F3A8BB;
}

.characterPage__cat {
  padding: 80px 0 128px;
}

.characterPage__catList {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.characterPage__catList li {
  margin-bottom: 14px;
}

.characterPage__catList a {
  display: block;
  margin: 0 6px;
  background: #4BCCBE;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  padding: 10px 20px;
  border-radius: 30px;
  white-space: nowrap;
}

.characterPage__catList a:hover {
  background: #FFFA9C;
  color: #56493C;
}

.characterPage__detail {
  background: #fff;
}

.categoryArea {
  margin-top: 160px;
}

.categoryArea__box {
  margin-bottom: 80px;
}

.categoryArea__name {
  font-size: 32px;
  font-weight: 500;
  color: #fff;
  border-bottom: 3px solid #fff;
  padding-bottom: 8px;
}

.categoryArea__name:after {
  background-image: url(../image/icon/icon_obentocar.svg);
  width: 120px;
  height: 120px;
  display: inline-block;
  bottom: 0;
  margin: 0 0 0 20px;
}

.categoryArea__itemImg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: -110px auto 0;
  width: 180px;
  aspect-ratio: 1/1;
}

.categoryArea__itemImg span {
  display: block;
  width: 200px;
  height: 200px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.categoryArea__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 32px;
  padding-bottom: 64px;
}

.categoryArea__item {
  position: relative;
  display: block;
  width: 50%;
  height: 340px;
  background: url(../image/bg/cloud.svg) center/contain;
  background-repeat: no-repeat;
  padding: 96px 48px 0;
  margin: 160px 0 0;
}

.categoryArea__title {
  font-size: 30px;
  font-weight: 700;
  line-height: 1.2;
  padding: 0 14px;
  color: #F3A8BB;
}

.categoryArea__text {
  font-weight: 500;
  color: #56493C;
  margin: 14px 0 24px;
  padding: 0 14px;
}

.characterItem {
  padding: 144px 0 0;
}

.characterItem__name {
  font-size: 48px;
  font-weight: 700;
  color: #F3A8BB;
}

.characterItem__img {
  margin: 24px auto;
  width: 450px;
  height: 450px;
}

.characterItem__img img {
  width: 90%;
  height: 90%;
  -o-object-fit: contain;
  object-fit: contain;
  margin: auto;
}

.characterItem__text {
  width: 600px;
  margin: 32px auto;
  color: #56493C;
}

.characterProfile {
  margin-top: 128px;
}

.characterProfile__wrap {
  margin-top: 32px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.characterProfile__item {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  width: 33%;
  height: 300px;
}

.characterProfile__item.yellow_cloud {
  background: url(../image/bg/cloud-Y.svg) center/contain;
  background-repeat: no-repeat;
}

.characterProfile__item.green_cloud {
  background: url(../image/bg/cloud-G.svg) center/contain;
  background-repeat: no-repeat;
}

.characterProfile__item.pink_cloud {
  background: url(../image/bg/cloud-P.svg) center/contain;
  background-repeat: no-repeat;
}

.characterProfile__item p.head {
  font-size: 24px;
}

.characterProfile__item p.lead {
  font-size: 16px;
}

.characterTopic {
  margin-top: 128px;
}

.characterTopic__wrap {
  margin-top: 32px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.characterTopic__item {
  width: 32%;
}

.characterTopic__item--img {
  margin: 24px auto;
  width: 100%;
  height: 260px;
  border: 5px solid #F3A8BB;
  border-radius: 24px;
}

.characterTopic__item--img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: center;
  border-radius: 18px;
}

.characterTopic__item--title {
  font-size: 20px;
  font-weight: 500;
}

.characterTopic__item--date {
  font-size: 16px;
  font-weight: 500;
}

.characterGoods {
  margin: 128px 0;
}

.topicPage {
  background: #F3A8BB;
  padding: 0 0 64px;
}

.topicPage__content {
  padding: 80px 0 64px;
}

.topicPage__content--title {
  font-size: 32px;
  font-weight: 500;
  color: #fff;
  border-bottom: 3px solid #fff;
  position: relative;
}

.topicPage__content--title:before {
  content: '';
  background-image: url(../image/icon/umeboshi.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 70px;
  height: 70px;
  display: inline-block;
  margin: 0 20px 0 0;
  vertical-align: middle;
}

.topicPage__catList {
  padding: 96px 0 128px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.topicPage__catList a {
  display: block;
  margin: 0 6px;
  background: #4BCCBE;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  padding: 10px 20px;
  border-radius: 30px;
  white-space: nowrap;
}

.topicPage__catList a:hover {
  background: #FFFA9C;
  color: #56493C;
}

.topicPage__catList li {
  margin-bottom: 14px;
}

.topicPage__detail {
  background: #fff;
}

.topicPage__wrap {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 32px;
  margin-top: 80px;
}

.topicPage__item--img {
  height: 260px;
  background-color: #fff;
  border: 20px solid #fff;
  border-radius: 24px;
  margin-bottom: 16px;
  display: -ms-flexbox;
  display: flex;
}

.topicPage__item--img img {
  width: 90%;
  height: 90%;
  -o-object-fit: contain;
  object-fit: contain;
  transition: 0.4s;
  margin: auto;
}

.topicPage__item--img img:hover {
  transform: scale(1.1);
}

.topicPage__item--img.chara {
  border: 5px solid #F3A8BB;
  border-radius: 40px;
}

.topicPage__item--title {
  font-size: 20px;
  font-weight: 500;
}

.topicPage__item--cat {
  display: inline-block;
  margin: 8px 10px 0 0;
  background: #4BCCBE;
  font-size: 14px;
  color: #fff;
  font-weight: 500;
  padding: 4px 20px;
  border-radius: 30px;
}

.topicPage__item--cat:hover {
  background: #FFFA9C;
  color: #56493C;
}

.topicPage__item--date {
  font-size: 16px;
  font-weight: 500;
}

.topicPage__detail {
  background: #fff;
}

.topicItemPage {
  background: #fff;
  margin-bottom: 144px;
}

.topicItemPage__wrap {
  margin: 96px 0;
}

.topicItemPage__img {
  margin: 24px auto;
  width: 100%;
  height: 550px;
  border: 5px solid #F3A8BB;
  border-radius: 24px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

.topicItemPage__img img {
  width: 90%;
  height: 90%;
  -o-object-fit: contain;
  object-fit: contain;
  margin: auto;
}

.topicItemPage__title {
  font-size: 24px;
  font-weight: 700;
  color: #56493C;
}

.topicItemPage__desc {
  font-size: 16px;
}

.newsPage {
  background: #F3A8BB;
}

.newsPage__text {
  width: 100%;
  padding: 96px 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
}

.newsPage__text ul li {
  background: #fff;
  border-radius: 12px;
  padding: 14px 24px;
  font-size: 16px;
  letter-spacing: 0.08em;
  font-weight: 500;
  color: #333;
  margin-bottom: 24px;
}

.newsDetailPage {
  background: #fff;
}

.newsDetailPage__news {
  margin: 96px 0;
}

.newsDetailPage__text {
  background: #F3A8BB;
  padding: 48px;
  border-radius: 24px;
  margin-top: 24px;
  color: #fff;
}

.contactPage {
  background-color: #F3A8BB;
  padding-bottom: 114px;
}

.contactPage .recap {
  font-size: 12px;
}

.contactPage__wrap {
  border: 6px solid #4BCCBE;
  background-color: #fff;
  padding: 64px 80px;
  border-radius: 24px;
  margin: 114px 0 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-line-pack: center;
  align-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  text-align: center;
}

.contactPage table {
  position: relative;
  width: 100%;
  margin: auto;
}

.contactPage tr {
  margin-bottom: 24px;
}

.contactPage th {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  font-weight: 500;
  text-align: left;
}

.contactPage td {
  padding: 2px 0;
  height: 70px;
  color: #bbb;
  border-radius: 14px;
  display: -ms-flexbox;
  display: flex;
  margin: 8px 0 24px 0;
}

.contactPage td.select {
  position: relative;
  background: none;
  border: none;
  padding: 2px 0px;
}

.contactPage td.select:before {
  content: "";
  position: absolute;
  display: inline-block;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  height: 10px;
  width: 10px;
  top: 30px;
  right: 37px;
  transform: rotate(135deg);
  pointer-events: none;
  z-index: 10;
}

.contactPage td.textArea {
  height: 250px;
  padding: 10px 0;
}

.contactPage td span {
  width: 100%;
}

.companyPage {
  background: #F3A8BB;
  padding: 0 0 128px;
}

.companyPage__wrap {
  padding: 80px 0 128px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
}

.companyPage__img {
  width: 50%;
}

.companyPage__text {
  color: #fff;
  width: 45%;
}

.companyPage__text h3 {
  font-size: 32px;
  font-weight: 700;
}

.companyPage__text p {
  line-height: 1.4;
  margin-bottom: 14px;
}

.companyPage__profile {
  background-color: #fff;
  padding: 64px;
  border-radius: 48px;
}

.companyPage__profile div {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-top: 1px solid #333;
  padding: 16px 0;
}

.companyPage__profile dl {
  margin-top: 48px;
}

.companyPage__profile dt {
  width: 27%;
  padding-left: 32px;
  font-weight: 500;
}

.companyPage__profile dd {
  width: 73%;
  font-weight: 500;
  line-height: 1.6;
  padding-right: 32px;
}

.faqPage {
  background: #F3A8BB;
  padding: 0 0 64px;
}

.faqPage__wrap {
  padding: 128px 0 128px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
}

.faqPage__wrap a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center;
  background-color: #fff;
  border-radius: 14px;
  padding: 8px;
  margin: 0 8px;
}

.faqPage__wrap a img {
  width: 30px;
}

.faqPageQa h2 {
  font-size: 32px;
  font-weight: 500;
  text-align: center;
  color: #fff;
  position: relative;
}

.faqPageQa h2.aboutGoods:after {
  background-image: url(../image/icon/icon_goods.svg);
}

.faqPageQa h2.aboutCharacter:after {
  background-image: url(../image/icon/icon_cara.svg);
}

.faqPageQa h2.aboutEvent:after {
  background-image: url(../image/icon/icon_event.svg);
}

.faqPageQa h2.aboutAsk:after {
  background-image: url(../image/icon/icon_ask.svg);
}

.faqPageQa h2:after {
  content: "";
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  top: 0;
  left: 0;
  right: 0;
  width: 50px;
  height: 50px;
  margin: -48px auto 0;
  border-radius: unset;
}

.faqPageQa li {
  margin-bottom: 80px;
}

.accordion {
  position: relative;
  margin-top: 14px;
}

.accordion-header {
  width: 100%;
  height: 70px;
  background-color: #fff;
  border: 3px solid #4BCCBE;
  border-radius: 40px;
  -ms-flex-line-pack: center;
  align-content: center;
  padding: 0 0 0 38px;
  position: relative;
  cursor: pointer;
}

.accordion-header img {
  display: inline-block;
  margin-right: 64px;
}

.accordion-header p {
  font-size: 16px;
  color: #56493C;
  display: block;
  width: 750px;
  padding: 14px 0 14px 96px;
  position: relative;
}

.accordion-header p:before {
  position: absolute;
  content: 'Q';
  font-size: 32px;
  font-family: "Baloo 2", sans-serif;
  font-weight: 600;
  color: #F3A8BB;
  top: 3px;
  left: -3px;
}

.accordion-header:before,
.accordion-header:after {
  position: absolute;
  content: '';
  top: 1px;
  right: 20px;
  bottom: 0;
  width: 12px;
  height: 2px;
  margin: auto;
  background: #151E2F;
}

.accordion-header:after {
  transform: rotate(-90deg);
  transition: transform 0.3s;
}

.accordion-header.active:after {
  transform: rotate(0deg);
}

.accordion-content {
  display: none;
  -ms-flex-align: center;
  align-items: center;
  background-color: #4BCCBE;
  border-radius: 50px;
  margin-top: 8px;
  padding-left: 38px;
}

.accordion-content p {
  font-size: 16px;
  color: #fff;
  display: block;
  width: 750px;
  padding: 14px 0 14px 96px;
  position: relative;
}

.accordion-content p:before {
  position: absolute;
  content: 'A';
  font-size: 32px;
  font-family: "Baloo 2", sans-serif;
  font-weight: 600;
  top: 3px;
  left: 0;
}

.policyPage {
  background: #F3A8BB;
  padding: 0 0 128px;
}

.policyPage__content {
  background-color: #fff;
  margin-top: 128px;
  padding: 64px 64px 80px;
  border-radius: 48px;
}

.policyPage__content div {
  padding: 16px 0;
}

.policyPage__content div ul {
  margin-top: 4px;
  margin-left: 3em;
  list-style-type: decimal;
}

.policyPage__content dl {
  margin-top: 48px;
  padding: 0 24px;
}

.policyPage__content dt {
  margin-bottom: 4px;
}

.policyPage__content dd {
  padding-left: 1em;
}

@media screen and (max-width: 767px) {
  .mtXS, .mtXSSp {
    margin-top: 4px !important;
  }
  .mtS, .mtSSp {
    margin-top: 8px !important;
  }
  .mtM, .mtMSp {
    margin-top: 16px !important;
  }
  .mtL, .mtLSp {
    margin-top: 32px !important;
  }
  .mtXL, .mtXLSp {
    margin-top: 48px !important;
  }
  .mtXXL, .mtXXLSp {
    margin-top: 64px !important;
  }
  .mbXS, .mbXSSp {
    margin-bottom: 4px !important;
  }
  .mbS, .mbSSp {
    margin-bottom: 8px !important;
  }
  .mbM, .mbMSp {
    margin-bottom: 16px !important;
  }
  .mbL, .mbLSp {
    margin-bottom: 32px !important;
  }
  .mbXL, .mbXLSp {
    margin-bottom: 48px !important;
  }
  .mbXXL, .mbXXLSp {
    margin-bottom: 64px !important;
  }
  .mlXS, .mlXSSp {
    margin-left: 4px !important;
  }
  .mlS, .mlSSp {
    margin-left: 8px !important;
  }
  .mlM, .mlMSp {
    margin-left: 16px !important;
  }
  .mlL, .mlLSp {
    margin-left: 32px !important;
  }
  .mlXL, .mlXLSp {
    margin-left: 48px !important;
  }
  .mrXS, .mrXSSp {
    margin-right: 4px !important;
  }
  .mrS, .mrSSp {
    margin-right: 8px !important;
  }
  .mrM, .mrMSp {
    margin-right: 16px !important;
  }
  .mrL, .mrLSp {
    margin-right: 32px !important;
  }
  .mrXL, .mrXLSp {
    margin-right: 48px !important;
  }
  .ptXS, .ptXSSp {
    padding-top: 4px !important;
  }
  .ptS, .ptSSp {
    padding-top: 8px !important;
  }
  .ptM, .ptMSp {
    padding-top: 16px !important;
  }
  .ptL, .ptLSp {
    padding-top: 32px !important;
  }
  .ptXL, .ptXLSp {
    padding-top: 48px !important;
  }
  .pbXS, .pbXSSp {
    padding-bottom: 4px !important;
  }
  .pbS, .pbSSp {
    padding-bottom: 8px !important;
  }
  .pbM, .pbMSp {
    padding-bottom: 16px !important;
  }
  .pbL, .pbLSp {
    padding-bottom: 32px !important;
  }
  .pbXL, .pbXLSp {
    padding-bottom: 48px !important;
  }
  .pbXXL, .pbXXLSp {
    padding-bottom: 64px !important;
  }
  .icon.icon-wall:before {
    display: none;
  }
  .icon.icon-mail:before {
    width: 14px;
    height: 12px;
    margin: 0 6px 0 0;
  }
  .icon.icon-mail-bk:before {
    display: none;
  }
  .icon.icon-phone:before {
    width: 15px;
    height: 15px;
    margin: 0px 4px 0 0px;
    position: relative;
    display: inline-block;
  }
  .icon.icon-date:before {
    margin: 0 3px 0 0;
  }
  .icon.icon-check:before {
    margin: 0 3px 0 0;
  }
  .icon.icon-alert:before {
    margin: 0 3px 0 0;
  }
  .hideSp {
    display: none !important;
  }
  .textXXS, .textXXSSp {
    font-size: 1rem;
  }
  .textXS, .textXSSp {
    font-size: 1.2rem;
  }
  .textS, .textSSp {
    font-size: 1.4rem;
  }
  .textM, .textMSp {
    font-size: 1.6rem;
  }
  .textL, .textLSp {
    font-size: 1.8rem;
  }
  .textXL, .textXLSp {
    font-size: 2.2rem;
  }
  .textXXL, .textXXLSp {
    font-size: 2.4rem;
  }
  .taLSp {
    text-align: left !important;
  }
  .taCSp {
    text-align: center !important;
  }
  .taRSp {
    text-align: right !important;
  }
  .contactBtn {
    font-size: 22px;
  }
  .detailBtn {
    font-size: 18px;
    -ms-flex-align: center;
    align-items: center;
  }
  .detailBtn:after {
    width: 40px;
    height: 40px;
  }
  .detailBtn:hover {
    translate: 0px;
  }
  .detailBtn2 {
    font-size: 18px;
  }
  .detailBtn2:hover {
    translate: 0px;
  }
  .characterBtn {
    font-size: 18px;
  }
  .characterBtn:hover {
    translate: 0px;
  }
  .mAutoSp {
    margin: auto;
  }
  .fLSp {
    float: left;
  }
  .fRSp {
    float: right;
  }
  .flexBoxSp {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .gridBoxSp {
    display: -ms-grid;
    display: grid;
  }
  .contentBox, .contentBoxSp,
  .contentBoxS, .contentBoxSSp,
  .contentBoxM, .contentBoxMSp,
  .contentBoxL, .contentBoxLSp {
    margin-left: 4% !important;
    margin-right: 4% !important;
  }
  .cmnTtl__type1 span {
    line-height: 0.9;
    font-size: 48px;
  }
  .cmnTtl__type2 {
    font-size: clamp(32px, 14vw, 56px);
  }
  .cmnTtl__type2:after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 80px;
    height: 80px;
    margin: 96px auto 14px;
  }
  .cmnTtl__type3 {
    font-size: 22px;
  }
  .cmnTtl__type3:before {
    width: 28px;
  }
  .cmnTtl__type4 {
    font-size: 18px;
    padding: 14px 0;
  }
  .cmnTtl__type5 {
    font-size: 18px;
    padding: 0 0 14px;
  }
  .cmnTtl__type5:after {
    width: 30px;
  }
  .cmsContents h1 {
    padding: 16px 24px;
    border-radius: 14px;
    font-size: 22px;
  }
  .cmsContents h1 span {
    margin-right: 14px;
    font-size: 15px;
  }
  .cmsContents h2 {
    font-size: 1.8rem;
  }
  .cmsContents h3 {
    font-size: 1.8rem;
  }
  .cmsContents h4 {
    font-size: 1.6rem;
  }
  .cmsContents h5 {
    font-size: 16px;
  }
  .cmsContents h6 {
    font-size: 1.6rem;
  }
  .cmsContents p {
    font-size: 16px;
  }
  .cmsContents ul {
    font-size: 1.6rem;
  }
  .cmsContents ol {
    font-size: 1.6rem;
  }
  .cmsContents dl {
    font-size: 1.6rem;
  }
  .cmsContents blockquote {
    padding: 24px 16px;
  }
  .cmsContents table {
    font-size: 1.6rem;
  }
  .wp-pagenavi {
    margin-top: 32px;
  }
  .wp-pagenavi .current {
    line-height: 27px;
  }
  .formBox {
    margin: 14px auto;
  }
  .swiper1 {
    position: relative;
    height: 0;
    overflow: hidden;
    padding: 20px 0;
    height: unset;
  }
  .swiper1 .swiper-slide {
    height: unset;
    aspect-ratio: 1/1;
  }
  .swiper1 .swiper-slide img {
    height: unset;
    width: 100%;
    aspect-ratio: 1/1;
  }
  .swiper2 {
    position: relative;
    overflow: hidden;
    padding: 14px 0;
    height: 40vw;
    height: 170px;
  }
  .swiper2 .swiper-slide {
    border-radius: 14px;
  }
  .swiper2 .swiper-slide img {
    width: 95%;
    height: 95%;
  }
  .swiper2__nav {
    margin: 32px 0 0 0;
  }
  .swiper-button-prev2 {
    margin-right: 55px;
  }
  .swiper-button-next2 {
    margin-right: 42px;
  }
  .swiper-button-prev2:after,
  .swiper-button-next2:after {
    height: 50px;
    width: 50px;
  }
  .swiper3 {
    width: auto;
    height: 90px;
  }
  .swiper3 .swiper-slide img {
    width: 50px;
    height: 50px;
  }
  .swiper3__thumbs {
    height: 350px;
  }
  .swiper3__thumbs .swiper-slide {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 32px;
  }
  .swiper3__thumbs .swiper-slide img {
    width: 240px;
    height: 240px;
    -o-object-fit: contain;
    object-fit: contain;
  }
  .swiper3__thumbs .slide-item {
    transform: scale(4);
    -o-object-fit: cover;
    object-fit: cover;
    background: none;
    border: none;
  }
  .swiper3__pagination .swiper-pagination-bullet {
    width: 18px !important;
    height: 18px !important;
  }
  .swiper3__pagination .swiper-pagination-bullet-active {
    height: 18px !important;
    width: 18px !important;
  }
  .swiper-pagination-bullet {
    height: 25px !important;
    width: 25px !important;
  }
  .FixedFt {
    height: 60px;
  }
  .ctaBox {
    height: 60px;
  }
  .ctaBox li {
    padding: 0px;
  }
  .ctaBox__number {
    line-height: 1.2;
  }
  .ctaBox__number a {
    font-size: 17px;
  }
  .ctaBox__number span {
    font-size: 20px;
  }
  .ctaBox__number--note {
    margin-bottom: 4px;
  }
  .ctaBox__form a {
    font-size: 13px;
    line-height: 1.5;
    font-weight: 500;
    padding: 0;
    border: none;
    height: 60px;
  }
  .ctaBox__form a:hover {
    border: none;
    color: #333;
    background: none;
  }
  .ctaBox li.top {
    padding: 0;
    width: 40px;
  }
  .ctaBox li.top a {
    font-size: 12px;
    display: -ms-flexbox;
    display: flex;
    height: 60px;
    padding: 0;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .FtSMap {
    padding: 80px 5% 24px;
  }
  .FtSMap__logo {
    width: 90%;
  }
  .FtSMap__inner {
    margin-top: 48px;
  }
  .FtSMap__sns--logo {
    height: 56px;
    margin-top: 48px;
  }
  .FtSMap__menu {
    margin-top: 48px;
  }
  #header {
    height: 60px;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    position: fixed;
    top: 0;
    z-index: 10;
  }
  .Header__brandName {
    height: 60px;
  }
  .logoHead {
    display: none;
  }
  .logoHead__logo {
    position: absolute;
    height: 48px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 24px;
    padding: 0;
    margin: auto;
  }
  .GNav {
    position: relative;
  }
  .GNav__headInfo {
    position: absolute;
    margin: 7px 0 6px 39%;
    width: 140px;
    text-align: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .GNav__menuOpenBtn {
    height: 60px;
    right: 0;
    top: 0;
    width: 60px;
  }
  .GNav__menuOpenBtn span {
    height: 2px;
    left: calc(50% - 12px);
  }
  .GNav__menuOpenBtn span:nth-child(1) {
    top: 22px;
    width: 24px;
  }
  .GNav__menuOpenBtn span:nth-child(2) {
    top: 28px;
    width: 24px;
  }
  .GNav__menuOpenBtn span:nth-child(3) {
    top: 34px;
    width: 24px;
  }
  .GNav__menuBtnMenu {
    bottom: 4px;
    font-size: 10px;
    position: absolute;
    text-align: center;
    width: 100%;
  }
  .GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(1) {
    top: 28px;
    width: 24px;
    left: 18px;
  }
  .GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(3) {
    top: 28px;
    width: 24px;
    left: 18px;
  }
  .GNav__menuCloseBtn {
    height: 60px;
    right: 0;
    top: 0;
    width: 60px;
    position: absolute;
    z-index: 50;
  }
  .GNav__menu {
    display: none;
    height: 100vh;
    overflow-y: scroll;
    background-color: #fff;
  }
  .GNav__menu .mainMenu {
    margin-top: 60px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -ms-flex-direction: column;
    flex-direction: column;
    align-items: center;
  }
  .GNav__menu .mainMenu__list {
    position: relative;
  }
  .GNav__menu .mainMenu__list > a {
    display: block;
    text-align: center;
    cursor: pointer;
    font-weight: 500;
    font-size: 20px;
    padding: 14px;
  }
  .GNav__menu .mainMenu__list:after {
    content: '';
    background-color: #ccc;
    position: absolute;
    display: block;
    width: 30px;
    height: 1px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 14px auto 0px;
  }
  .GNav__menuLink {
    font-size: 12px;
    font-weight: 500;
    padding-top: 24px;
    display: block;
  }
  .blogPage {
    margin-top: 32px;
  }
  .blogPage__wrap--img {
    width: 30%;
  }
  .blogPage__wrap--text {
    width: 70%;
  }
  .mainVisual {
    padding: 60px 0 0;
  }
  .about {
    padding-bottom: 80px;
  }
  .about h3 {
    font-size: 22px;
    line-height: 1.6;
  }
  .about dl {
    padding: 0;
  }
  .news {
    margin-top: 14px;
    padding: 0;
  }
  .news__wrap {
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
  }
  .news__title {
    width: 100%;
    padding: 0;
  }
  .news__text {
    width: 100%;
    padding: 16px 0;
  }
  .news__text--text {
    margin-left: 18px;
  }
  .news__text--title {
    display: block;
    margin: 0;
    width: auto;
  }
  .article {
    padding: 32px 0 48px 5%;
  }
  .article__wrap {
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .article__title {
    width: 100%;
  }
  .article__content {
    width: 100%;
    padding: 14px 0 24px 0;
  }
  .character {
    height: auto;
    padding: 48px 0 64px;
  }
  .character__wrap {
    margin: 24px 15% 0;
    width: auto;
  }
  .character__activeWrap {
    width: 100%;
  }
  .character__activeWrap .swiper-slide-active {
    width: 80%;
  }
  .goods {
    padding: 32px 0 64px;
  }
  .goods__wrap {
    margin: 48px 0 32px;
    padding: 0 32px 96px;
    display: block;
  }
  .goods__wrap li {
    width: 65%;
    padding-bottom: 14px;
  }
  .goods__wrap li a {
    display: table;
    position: relative;
    width: 100%;
  }
  .goods__wrap li a span {
    aspect-ratio: 1/1;
    width: unset;
    height: unset;
  }
  .goods__wrap li:nth-child(odd) {
    margin: 32px 0 48px;
  }
  .goods__wrap li:nth-child(even) {
    margin: 32px 0 48px auto;
  }
  .goods__wrap li:nth-child(odd) .price__tag {
    margin: 20% -50% 0 0;
  }
  .goods__wrap li:nth-child(even) .price__tag {
    margin: 20% 0 0 -100px;
  }
  .goods__wrap .price__tag {
    width: 60%;
    height: auto;
    padding: 6px;
    border: 1px solid #ddd;
  }
  .goods__wrap .price__tag--name {
    font-size: 13px;
    border-top: 5px solid #868686;
    border-bottom: 5px solid #868686;
  }
  .goods__wrap .price__tag--price {
    font-size: 15px;
    font-weight: 700;
  }
  .goods__wrap .price__tag--barcode span {
    display: block;
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 100%;
    height: 40px;
    aspect-ratio: unset;
    border: none;
    border-radius: unset;
    margin-top: 24px;
  }
  .goodsPage__wrap {
    margin: 32px 0 0;
    display: block;
  }
  .goodsPage__wrap li {
    margin-bottom: 48px;
  }
  .goodsPage__wrap a {
    border: 8px solid #4BCCBE;
    border-radius: 32px;
    margin: 48px;
  }
  .goodsPage__wrap a span {
    background-size: 70%;
  }
  .goodsPage__wrap a .price__label {
    width: 130px;
    height: 160px;
    margin: 0 -32px -24px 0;
    padding: 14px 8px;
    transform: rotate(6deg);
  }
  .goodsPage__wrap a .price__label--name {
    font-size: 16px;
    border-top: 3px solid #56493C;
    border-bottom: 3px solid #56493C;
  }
  .goodsItem__wrap {
    padding: 64px 0 14px;
    display: block;
  }
  .goodsItem__wrap--img {
    width: 100%;
    padding: 0 5%;
    margin: 0 0 24px 0;
  }
  .goodsItem__wrap--img span {
    background-size: 70%;
  }
  .goodsItem__wrap--text {
    width: 100%;
  }
  .goodsItem__wrap--text .goodsTitle {
    font-size: 24px;
    padding-bottom: 6px;
  }
  .recommend {
    background: #F3A8BB;
    margin: 48px 3.5% 0;
    padding: 48px 14px;
    margin-bottom: 48px;
  }
  .recommend__wrap {
    display: block;
    margin-top: 32px;
  }
  .recommend__wrap a {
    width: 100%;
    height: 360px;
    margin-bottom: 32px;
  }
  .recommend__wrap a h3 {
    margin-top: 14px;
  }
  .recommend__img {
    width: 240px;
    height: unset;
    aspect-ratio: 1 / 1;
    border: 6px solid #4BCCBE;
  }
  .recommend__img span {
    background-size: 70%;
  }
  .characterPage__cat {
    padding: 32px 0;
  }
  .characterPage__catList {
    display: block;
  }
  .characterPage__catList li {
    margin-bottom: 8px;
  }
  .characterPage__catList a {
    display: table;
    margin: 0 4px;
    font-size: 16px;
    padding: 3px 18px;
    margin-bottom: 6px;
    border-radius: 30px;
  }
  .categoryArea {
    margin-top: 64px;
  }
  .categoryArea__box {
    margin-bottom: 0;
  }
  .categoryArea__name {
    font-size: 20px;
    padding-bottom: 4px;
  }
  .categoryArea__name:after {
    width: 50px;
    height: 50px;
    margin: 0 0 0 10px;
  }
  .categoryArea__itemImg {
    right: unset;
    margin: -32px 0 0;
    width: 114px;
  }
  .categoryArea__itemImg span {
    width: 100px;
    height: 100px;
  }
  .categoryArea__wrap {
    display: block;
    margin-top: 80px;
  }
  .categoryArea__item {
    width: 100%;
    height: 270px;
    padding: 48px 12% 0;
    margin: 24px 0 0;
  }
  .categoryArea__title {
    font-size: 24px;
  }
  .categoryArea__desc {
    font-weight: 500;
    color: #56493C;
    margin-bottom: 24px;
  }
  .categoryArea__text {
    margin: 4px 0;
    padding: 0;
    line-height: 1.4;
  }
  .characterItem {
    padding: 48px 0 0;
  }
  .characterItem__name {
    font-size: 32px;
  }
  .characterItem__img {
    width: 70%;
    height: auto;
    aspect-ratio: 1 / 1;
  }
  .characterItem__text {
    width: unset;
    margin: 32px auto;
    color: #56493C;
  }
  .characterProfile {
    margin-top: 32px;
  }
  .characterProfile__wrap {
    margin-top: 24px;
  }
  .characterProfile__item {
    width: 49%;
    height: 170px;
  }
  .characterProfile__item p.head {
    font-size: 18px;
  }
  .characterProfile__item p.lead {
    font-size: 16px;
  }
  .characterTopic {
    margin-top: 24px;
  }
  .characterTopic__wrap {
    margin-top: 32px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .characterTopic__item {
    width: 32%;
  }
  .characterTopic__item--img {
    margin: 24px auto;
    width: 100%;
    height: 260px;
    border: 5px solid #F3A8BB;
    border-radius: 24px;
  }
  .characterTopic__item--img span {
    display: block;
    height: 100%;
    background-size: cover;
    background-position: center;
    border-radius: 18px;
  }
  .characterTopic__item--title {
    font-size: 20px;
    font-weight: 500;
  }
  .characterTopic__item--date {
    font-size: 16px;
    font-weight: 500;
  }
  .characterGoods {
    margin: 24px 0;
  }
  .topicPage {
    padding: 0;
  }
  .topicPage__wrap {
    display: block;
    padding: 0 14px;
    margin-top: 0;
  }
  .topicPage__item {
    margin-bottom: 32px;
  }
  .topicPage__item--img {
    margin: 14px auto 0;
    height: unset;
  }
  .topicPage__item--img img {
    height: 90%;
    width: 90%;
  }
  .topicPage__item--img.chara {
    border: 4px solid #F3A8BB;
    border-radius: 24px;
  }
  .topicPage__item--title {
    font-size: 18px;
    margin-top: 8px;
  }
  .topicPage__item--cat {
    margin: 6px 6px 0 0;
    padding: 4px 8px;
  }
  .topicPage__item--date {
    font-size: 14px;
  }
  .topicPage__catList {
    padding: 32px 0 24px;
  }
  .topicPage__catList a {
    margin: 0 4px;
    font-size: 16px;
    padding: 3px 18px;
    margin-bottom: 6px;
  }
  .topicPage__catList li {
    margin-bottom: 8px;
  }
  .topicPage__content {
    padding: 32px 0 64px;
  }
  .topicPage__content--title {
    font-size: 20px;
    border-bottom: 2px solid #fff;
  }
  .topicPage__content--title:before {
    width: 50px;
    height: 50px;
    margin: 0 8px 0 0;
  }
  .topicItemPage {
    margin-bottom: 0;
  }
  .topicItemPage__wrap {
    margin: 48px 0;
  }
  .topicItemPage__img {
    aspect-ratio: 1/1;
    width: unset;
    height: unset;
    margin: 14px 0;
  }
  .topicItemPage__img img {
    width: 90%;
    height: 90%;
    -o-object-fit: contain;
    object-fit: contain;
    margin: auto;
  }
  .topicItemPage__title {
    font-size: 20px;
  }
  .topicItemPage__desc {
    font-size: 16px;
  }
  .newsPage__text {
    padding: 32px 0;
  }
  .newsDetailPage__news {
    margin: 32px 0;
  }
  .newsDetailPage__text {
    padding: 24px;
    border-radius: 14px;
    margin-top: 24px;
  }
  .contactPage {
    padding: 30px 0 60px;
  }
  .contactPage__wrap {
    padding: 24px;
    margin: 24px 0;
  }
  .contactPage__wrap h3 {
    font-size: 22px;
  }
  .contactPage__wrap a {
    font-size: 30px;
  }
  .contactPage table {
    width: 100%;
  }
  .contactPage tr {
    display: block;
    margin-bottom: 24px;
  }
  .contactPage th {
    width: 100%;
    padding: 0px;
  }
  .contactPage td {
    width: 100%;
    font-size: 14px;
    padding: 0px;
    height: 60px;
    margin-top: 6px;
  }
  .contactPage td.textArea {
    height: 200px;
  }
  .companyPage {
    padding: 0 0 48px;
  }
  .companyPage__wrap {
    display: block;
    padding: 64px 0;
  }
  .companyPage__img {
    width: 70%;
    margin: 0 auto 48px;
  }
  .companyPage__profile {
    padding: 48px 14px 32px;
    border-radius: 24px;
  }
  .companyPage__profile div {
    display: block;
  }
  .companyPage__profile dl {
    margin-top: 48px;
  }
  .companyPage__profile dt {
    width: 100%;
    padding-left: 14px;
    font-size: 20px;
    font-weight: 700;
    color: #F3A8BB;
  }
  .companyPage__profile dd {
    width: 100%;
    padding: 0 14px 0 14px;
  }
  .companyPage__text {
    color: #fff;
    width: 100%;
  }
  .companyPage__text h3 {
    font-size: 24px;
    font-weight: 700;
  }
  .companyPage__text p {
    line-height: 1.4;
    margin-bottom: 14px;
  }
  .faqPage {
    padding: 0 0 64px;
  }
  .faqPage__wrap {
    padding: 32px 0 24px;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .faqPage__wrap a {
    -ms-flex-direction: row;
    flex-direction: row;
    padding: 8px 14px;
    margin: 4px 8px 4px 0;
    border-radius: 30px;
  }
  .faqPage__wrap a img {
    width: 30px;
  }
  .faqPageQa h2 {
    font-size: 20px;
  }
  .faqPageQa li {
    margin: 80px 0 0;
  }
  .accordion-header {
    height: unset;
  }
  .accordion-header p {
    width: 89%;
    padding: 14px 0 14px 14px;
    line-height: 1.5;
  }
  .accordion-header p:before {
    margin: 2px 0 0 -14px;
    font-size: 28px;
  }
  .accordion-content {
    height: unset;
  }
  .accordion-content p {
    width: 90%;
    padding: 14px 0 14px 14px;
    line-height: 1.5;
  }
  .accordion-content p:before {
    margin: 2px 0 0 -14px;
    font-size: 28px;
  }
  .policyPage {
    padding: 0 0 64px;
  }
  .policyPage__content {
    margin-top: 64px;
    padding: 48px 24px;
    border-radius: 24px;
  }
  .policyPage__content div {
    padding: 16px 0;
  }
  .policyPage__content div ul {
    margin-top: 4px;
    margin-left: 3em;
    list-style-type: decimal;
  }
  .policyPage__content dl {
    margin-top: 24px;
    padding: 0;
  }
  .policyPage__content dt {
    margin-bottom: 4px;
  }
  .policyPage__content dd {
    padding-left: 1em;
  }
}

@media screen and (min-width: 768px) {
  .mtXS, .mtXSPc {
    margin-top: 8px !important;
  }
  .mtS, .mtSPc {
    margin-top: 16px !important;
  }
  .mtM, .mtMPc {
    margin-top: 32px !important;
  }
  .mtL, .mtLPc {
    margin-top: 48px !important;
  }
  .mtXL, .mtXLPc {
    margin-top: 64px !important;
  }
  .mtXXL, .mtXXLPc {
    margin-top: 80px !important;
  }
  .mtXXXLPc {
    margin-top: 128px !important;
  }
  .mbXS, .mbXSPc {
    margin-bottom: 8px !important;
  }
  .mbS, .mbSPc {
    margin-bottom: 16px !important;
  }
  .mbM, .mbMPc {
    margin-bottom: 32px !important;
  }
  .mbL, .mbLPc {
    margin-bottom: 48px !important;
  }
  .mbXL, .mbXLPc {
    margin-bottom: 64px !important;
  }
  .mbXXL, .mbXXLPc {
    margin-bottom: 80px !important;
  }
  .mlXS, .mlXSPc {
    margin-left: 8px !important;
  }
  .mlS, .mlSPc {
    margin-left: 16px !important;
  }
  .mlM, .mlMPc {
    margin-left: 32px !important;
  }
  .mlL, .mtlPc {
    margin-left: 48px !important;
  }
  .mlXL, .mlXLPc {
    margin-left: 64px !important;
  }
  .mrXS, .mrXSSPc {
    margin-right: 8px !important;
  }
  .mrS, .mrSPc {
    margin-right: 16px !important;
  }
  .mrM, .mrMPc {
    margin-right: 32px !important;
  }
  .mrL, .mrLPc {
    margin-right: 48px !important;
  }
  .mrXL, .mrXLPc {
    margin-right: 64px !important;
  }
  .ptXS, .ptXSPc {
    padding-top: 8px !important;
  }
  .ptS, .ptSPc {
    padding-top: 16px !important;
  }
  .ptM, .ptMPc {
    padding-top: 32px !important;
  }
  .ptL, .ptLPc {
    padding-top: 48px !important;
  }
  .ptXL, .ptXLPc {
    padding-top: 64px !important;
  }
  .pbXS, .pbXSPc {
    padding-bottom: 8px !important;
  }
  .pbS, .pbSPc {
    padding-bottom: 16px !important;
  }
  .pbM, .pbMPc {
    padding-bottom: 32px !important;
  }
  .pbL, .pbLPc {
    padding-bottom: 48px !important;
  }
  .pbXL, .pbXLPc {
    padding-bottom: 64px !important;
  }
  .pbXXL, .pbXXLPc {
    padding-bottom: 80px !important;
  }
  .hidePc {
    display: none !important;
  }
  .textXS, .textXSPc {
    font-size: 1.2rem;
  }
  .textS, .textSPc {
    font-size: 1.4rem;
  }
  .textM, .textMPc {
    font-size: 1.8rem;
  }
  .textL, .textLPc {
    font-size: 2rem;
  }
  .textXL, .textXLPc {
    font-size: 2.4rem;
  }
  .textXXL, .textXXLPc {
    font-size: 3.6rem;
  }
  .taLPc {
    text-align: left !important;
  }
  .taCPc {
    text-align: center !important;
  }
  .taRPc {
    text-align: right !important;
  }
  .wrapper {
    min-width: 1024px;
  }
  .fLPc {
    float: left;
  }
  .fRPc {
    float: right !important;
  }
  .flexBoxPc {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .gridBoxPc {
    display: -ms-grid;
    display: grid;
  }
  .contentBox, .contentBoxPc {
    max-width: 1000px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 2.5%;
    padding-right: 2.5%;
  }
  .contentBoxS, .contentBoxSPc {
    width: 800px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0;
  }
  .contentBoxM, .contentBoxMPc {
    width: 900px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 2.5%;
    padding-right: 2.5%;
  }
  .contentBoxL, .contentBoxLPc {
    max-width: 1200px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 2%;
    padding-right: 2%;
  }
  .cmsContents h2 {
    font-size: 2.2rem;
  }
  .cmsContents h3 {
    font-size: 2rem;
  }
  .cmsContents h4 {
    font-size: 1.8rem;
  }
  .cmsContents h5 {
    font-size: 18px;
  }
  .cmsContents h6 {
    font-size: 16px;
  }
  .cmsContents ul {
    font-size: 1.8rem;
  }
  .cmsContents ol {
    font-size: 1.8rem;
  }
  .cmsContents dl {
    font-size: 1.8rem;
  }
  .cmsContents blockquote {
    padding: 24px 32px;
  }
  .cmsContents blockquote p {
    font-size: 16px;
  }
  .cmsContents table {
    font-size: 1.8rem;
  }
  .GNav__menuOpenBtn {
    display: none;
  }
  .GNav__menu {
    display: block;
    z-index: 5;
    width: 100%;
  }
  .GNav__menu .mainMenu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100px;
  }
  .GNav__menu .mainMenu__list a {
    position: relative;
    height: 100px;
    font-size: 24px;
    font-weight: 500;
    color: #fff;
    letter-spacing: 0.1em;
    white-space: nowrap;
    padding: 0px 18px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .GNav__menu .mainMenu__list a:hover {
    background-color: #FFFA9C;
    color: #000000;
  }
}

/*# sourceMappingURL=style.css.map */

/* =========================
   Topic Page Pager
========================= */

.topicPager {
    margin: 60px 0 0;
    text-align: center;
    font-family: "Zen Maru Gothic", Arial, Meiryo, sans-serif;
}

.topicPager ul {
    display: inline-flex;
    gap: 14px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.topicPager li {
    display: inline-block;
}

.topicPager a,
.topicPager span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    height: 52px;
    padding: 0 14px;

    font-size: 20px;
    font-weight: 500;
    color: #fff;
    text-decoration: none;

    background: rgba(255,255,255,0.18);
    backdrop-filter: blur(6px);
    border-radius: 999px;

    transition: all 0.25s ease;
}

/* ホバー（ふわっと浮く） */
.topicPager a:hover {
    transform: translateY(-4px);
    background: #ffffff;
    color: #ff7bac;
    box-shadow: 0 10px 20px rgba(255, 123, 172, 0.25);
}

/* 現在ページ */
.topicPager .current {
    background: #ffffff;
    color: #ff7bac;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(255, 123, 172, 0.35);
    transform: translateY(-2px);
}

/* 前後矢印を少し小さめに */
.topicPager .prev,
.topicPager .next {
    font-size: 22px;
}

/* スマホ */
@media (max-width: 768px) {

    .topicPager ul {
        gap: 8px;
    }

    .topicPager a,
    .topicPager span {
        min-width: 44px;
        height: 44px;
        font-size: 16px;
    }
}

.topicPager ul {
    margin-bottom: 80px !important;
}