@charset "UTF-8";
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  min-width: 0;
  border-width: 0;
  border-style: solid;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: inherit;
  font-size: inherit;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  margin: 0;
  clear: both;
  overflow: visible; /* 2 */
  border-top-width: 1px;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  vertical-align: middle;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  padding: 0;
  vertical-align: top;
}

th {
  font-weight: bold;
  text-align: left;
}

@font-face {
  font-weight: 400;
  src: url(../fonts/ZenKakuGothicNew-Regular.ttf) format("truetype");
  font-family: "Zen Kaku Gothic New";
}
@font-face {
  font-weight: 500;
  src: url(../fonts/ZenKakuGothicNew-Medium.ttf) format("truetype");
  font-family: "Zen Kaku Gothic New";
}
@font-face {
  font-weight: 700;
  src: url(../fonts/ZenKakuGothicNew-Bold.ttf) format("truetype");
  font-family: "Zen Kaku Gothic New";
}
@font-face {
  font-weight: 400 700;
  src: url(../fonts/Lexend-VariableFont_wght.ttf) format("truetype");
  font-family: "Lexend";
}
body {
  overflow: hidden auto !important;
  color: #3D392E !important;
  font-style: normal !important;
  font-weight: 500 !important;
  font-size: min(19.2px, 4.2666666667vw) !important;
  line-height: 1.8 !important;
  font-family: "Zen Kaku Gothic New", serif !important;
  letter-spacing: 0.03em !important;
  word-break: break-all !important;
  overflow-wrap: break-word !important;
}

img, svg {
  display: block;
  width: 100%;
  height: auto;
}

header, nav, footer, small, button, label, picture, video {
  display: block !important;
}

a, button {
  width: 100% !important;
  max-width: 100% !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

a:hover, a:active, button:hover, button:active {
  outline: 0 !important;
  color: inherit !important;
  text-decoration: none !important;
}

b, strong {
  font-weight: 700 !important;
}

input, textarea, select, optgroup {
  width: 100%;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: 0;
  background-color: #FFFFFF;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  color: inherit;
  font: inherit;
  letter-spacing: 0.03em !important;
  text-align: inherit;
  text-transform: inherit;
  vertical-align: middle;
}

button {
  border: none;
  outline: none;
  background: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

select {
  cursor: pointer;
}

input[type=radio], input[type=checkbox] {
  width: auto;
  margin: 0 5px 0 0;
}

input[type=submit] {
  text-align: center;
}

::-moz-placeholder {
  color: #ABABAB !important;
}

::placeholder {
  color: #ABABAB !important;
}

dt {
  font-weight: 500;
}

li {
  display: block !important;
}

.wrapper {
  display: flex;
  position: relative;
  flex-direction: column;
  min-height: 100%;
  overflow: hidden;
}

.innerbox {
  width: 100% !important;
  max-width: 750px !important;
  margin: 0 auto !important;
  padding: 0 min(19.2px, 4.2666666667vw) !important;
}

.bold {
  font-weight: 700;
}

.font_en {
  font-family: "Lexend", sans-serif !important;
}

.visible_s {
  display: none;
}

.visible_m {
  display: none;
}

.visible_l {
  display: none;
}

.visible_xl {
  display: none;
}

.visible_xxl {
  display: none;
}

.inline_block {
  display: inline-block;
  max-width: 100%;
}

.pt1em {
  padding-top: 1em;
}

.pr1em {
  padding-right: 1em;
}

.pb1em {
  padding-bottom: 1em;
}

.pl1em {
  padding-left: 1em;
}

.mt1em {
  margin-top: 1em;
}

.mr1em {
  margin-right: 1em;
}

.mb1em {
  margin-bottom: 1em;
}

.ml1em {
  margin-left: 1em;
}

.txt_indent {
  padding-left: 1em;
  text-indent: -1em;
}

.clickable {
  cursor: pointer;
}

.relativebox {
  position: relative;
  width: 100% !important;
  max-width: 1440px;
  margin: 0 auto;
}

.space {
  height: 2rem;
}

.l-footer {
  position: relative;
  background-color: #F9F6F0;
}
.l-footer__wrap {
  padding: min(48px, 10.6666666667vw) min(28.8px, 6.4vw) min(144px, 32vw);
}
.l-footer__item_box {
  margin-top: min(19.2px, 4.2666666667vw);
}
.l-footer__item_box > dt {
  position: relative;
  padding: 0 0 min(9.6px, 2.1333333333vw) min(36px, 8vw);
  background-image: url(../img/common/icon_map.png);
  background-position: left top min(4.8px, 1.0666666667vw);
  background-size: min(28.8px, 6.4vw) auto;
  background-repeat: no-repeat;
  font-weight: 700;
  font-size: min(18px, 4vw);
}
.l-footer__item_box > dt::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: min(1.2px, 0.2666666667vw);
  min-height: 1px;
  background-color: #3D392E;
  content: "";
}
.l-footer__item_box > dt.is-grade {
  background-image: url(../img/common/icon_book.png);
}
.l-footer__item_box > dd {
  line-height: 1 !important;
}
.l-footer__item_box.is-mt_none {
  margin-top: 0;
}
.l-footer__pipe_list {
  margin-top: min(14.4px, 3.2vw);
}
.l-footer__pipe_list > li {
  display: inline !important;
  font-size: min(13.2px, 2.9333333333vw);
  line-height: 1 !important;
}
.l-footer__pipe_list > li > a {
  display: inline !important;
  font-size: min(15.6px, 3.4666666667vw);
  line-height: 1.8 !important;
}
.l-footer__pipe_list > li::after {
  padding: 0 0.2em 0 0.6em;
  content: "|";
}
.l-footer__pipe_list > li:nth-last-child(1)::after {
  padding: 0;
  content: none;
}
.l-footer__jp_list {
  margin-top: min(14.4px, 3.2vw);
}
.l-footer__jp_list > li {
  display: flex !important;
  align-items: flex-start !important;
  width: 100%;
  margin-top: min(4.8px, 1.0666666667vw);
}
.l-footer__jp_list_parent {
  flex: 0 0 auto;
  font-weight: 700;
  font-size: min(15.6px, 3.4666666667vw);
  line-height: 1.8 !important;
  white-space: nowrap;
}
.l-footer__jp_list_parent a {
  font-weight: 700;
  font-size: min(15.6px, 3.4666666667vw);
}
.l-footer__jp_list_child {
  flex-grow: 1;
  font-size: min(15.6px, 3.4666666667vw);
  line-height: 1.8 !important;
}
.l-footer__jp_list_child > li {
  display: inline !important;
  font-size: min(15.6px, 3.4666666667vw);
}
.l-footer__jp_list_child > li > a {
  display: inline !important;
  width: auto !important;
  font-size: min(15.6px, 3.4666666667vw);
}
.l-footer__jp_list_child > li::after {
  padding: 0;
  content: "/";
}
.l-footer__jp_list_child > li:nth-last-child(1)::after {
  padding: 0;
  content: none;
}
.l-footer__jp_list_child::before {
  content: "（";
}
.l-footer__jp_list_child::after {
  content: "）";
}
.l-footer__no_posts {
  color: #ABABAB;
}
.l-nav {
  min-height: calc(100vh - min(84px, 18.6666666667vw));
  padding-bottom: min(36px, 8vw);
}
.l-nav__item_list > li {
  border-top: min(2.4px, 0.5333333333vw) solid #FFFFFF;
}
.l-nav__item_list > li > a, .l-nav__item_list > li button {
  display: block !important;
  width: 100%;
  min-height: 0 !important;
  padding: 0 min(30px, 6.6666666667vw) !important;
  line-height: 1 !important;
}
.l-nav__item_list > li > a:hover, .l-nav__item_list > li button:hover {
  background-color: #227FC4 !important;
}
.l-nav__item_list > li:nth-last-child(1) {
  border-bottom: min(2.4px, 0.5333333333vw) solid #FFFFFF !important;
}
.l-nav__item_box {
  display: flex !important;
  position: relative;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  padding: min(15.6px, 3.4666666667vw) min(36px, 8vw);
  background-position: left center;
  background-size: min(28.8px, 6.4vw) auto;
  background-repeat: no-repeat;
  color: #FFFFFF;
  font-weight: 700;
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.5;
}
.l-nav__item_box::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: min(28.8px, 6.4vw);
  height: min(28.8px, 6.4vw);
  transform: translateY(-50%);
  background-image: url(../img/common/icon_arrow_wh_right.png);
  background-position: right center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.l-nav__item_box.is-s3 {
  background-image: url(../img/common/icon_side_s3.png);
}
.l-nav__item_box.is-s4 {
  background-image: url(../img/common/icon_side_s4.png);
}
.l-nav__item_box.is-s5 {
  background-image: url(../img/common/icon_side_s5.png);
}
.l-nav__item_box.is-s6 {
  background-image: url(../img/common/icon_side_s6.png);
}
.l-nav__item_box.is-c_chiri {
  background-image: url(../img/common/icon_side_c_chiri.png);
}
.l-nav__item_box.is-c_rekishi {
  background-image: url(../img/common/icon_nav_c_rekishi_sp.png);
}
.l-nav__item_box.is-c_koumin {
  background-image: url(../img/common/icon_nav_c_koumin_sp.png);
}
.l-nav__item_box.is-area {
  background-image: url(../img/common/icon_nav_map_sp.png);
}
.l-nav__item_box.is-area::after {
  transform: translateY(-50%) rotate(90deg);
}
.l-nav__item_box.is-area.is-active::after {
  transform: translateY(-50%) rotate(-90deg);
}
.l-nav__item_box.is-area_list {
  padding: min(11.4px, 2.5333333333vw) 0;
  font-size: min(16.8px, 3.7333333333vw);
}
.l-nav__item_box.is-area_list::after {
  content: none;
}
.l-nav__item_box.is-no_posts {
  color: #ABABAB;
}
.l-nav__item_box.is-sub_list {
  padding: min(11.4px, 2.5333333333vw) min(36px, 8vw);
}
.l-nav__item_box.is-external {
  padding: min(11.4px, 2.5333333333vw) min(36px, 8vw);
}
.l-nav__item_box_external {
  position: relative;
}
.l-nav__item_box_external::after {
  display: block !important;
  position: absolute;
  top: 50%;
  right: max(-9.6px, -2.1333333333vw);
  width: min(13.2px, 2.9333333333vw);
  height: min(12px, 2.6666666667vw);
  transform: translate(100%, -50%);
  background-image: url(../img/common/icon_external.png);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.l-nav__area_list {
  display: block !important;
}
.l-nav__area_list > li {
  border-top: 1px solid #FFFFFF;
}
.l-nav__area_list > li:nth-child(1) {
  border-top: min(2.4px, 0.5333333333vw) solid #FFFFFF;
}
.l-nav__area_box {
  padding: 0 min(18px, 4vw) !important;
  background: none !important;
}
.l-nav__area_box.is-child {
  padding: 0 min(36px, 8vw) !important;
}
.l-nav__area_box:hover {
  background-color: #227FC4 !important;
}
.l-nav__sub_list {
  margin-top: min(9.6px, 2.1333333333vw) !important;
}
.l-nav__sub_list > li {
  white-space: nowrap;
}
.l-nav__sub_list > li > a, .l-nav__sub_list > li button {
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  min-height: 0 !important;
  padding: 0 min(30px, 6.6666666667vw) 0 0 !important;
  border: none !important;
  line-height: 1 !important;
}
.l-nav__sub_list > li > a:hover, .l-nav__sub_list > li button:hover {
  background-color: #227FC4 !important;
  opacity: 0.7;
}
.l-nav__sub_list > li > a.is-nichibun, .l-nav__sub_list > li button.is-nichibun {
  width: min(212.4px, 47.2vw) !important;
  margin: min(18px, 4vw) auto 0 !important;
}

.l-side_nav {
  margin: 0 !important;
  padding: min(48px, 10.6666666667vw) 0 0 !important;
}
.l-side_nav__item_wrap {
  margin-top: min(24px, 5.3333333333vw);
}
.l-side_nav__item_wrap.is-mt_none {
  margin-top: 0;
}
.l-side_nav__item_list {
  overflow: hidden;
  border: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-radius: min(12px, 2.6666666667vw);
}
.l-side_nav__item_list > li {
  border-top: min(2.4px, 0.5333333333vw) solid #3D392E;
}
.l-side_nav__item_list > li > a, .l-side_nav__item_list > li > button {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  padding: min(18px, 4vw) min(54px, 12vw);
  background-position: left min(18px, 4vw) center, right min(18px, 4vw) center;
  background-size: min(28.8px, 6.4vw), min(24px, 5.3333333333vw);
  background-repeat: no-repeat, no-repeat;
  background-color: #F9F6F0;
  font-weight: 700;
  font-size: min(16.8px, 3.7333333333vw);
}
.l-side_nav__item_list > li > button.is-area {
  position: relative;
  background-image: url(../img/common/icon_map.png), url(../img/common/icon_arrow_bk_bottom.png);
  background-position: left min(18px, 4vw) center;
  background-size: min(28.8px, 6.4vw);
  background-repeat: no-repeat;
}
.l-side_nav__item_list > li > button.is-area::after {
  display: block;
  position: absolute;
  top: 50%;
  right: min(18px, 4vw);
  width: min(24px, 5.3333333333vw);
  height: min(24px, 5.3333333333vw);
  transform: translateY(-50%);
  background-image: url(../img/common/icon_arrow_bk_bottom.png);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.l-side_nav__item_list > li > button.is-area.is-active::after {
  transform: translateY(-50%) rotate(-180deg);
}
.l-side_nav__item_list > li:nth-child(1) {
  border-top: none;
}
.l-side_nav__item_list > li:nth-child(1) > a {
  background-image: url(../img/common/icon_side_s3.png), url(../img/common/icon_arrow_bk_right.png);
}
.l-side_nav__item_list > li:nth-child(2) > a {
  background-image: url(../img/common/icon_side_s4.png), url(../img/common/icon_arrow_bk_right.png);
}
.l-side_nav__item_list > li:nth-child(3) > a {
  background-image: url(../img/common/icon_side_s5.png), url(../img/common/icon_arrow_bk_right.png);
}
.l-side_nav__item_list > li:nth-child(4) > a {
  background-image: url(../img/common/icon_side_s6.png), url(../img/common/icon_arrow_bk_right.png);
}
.l-side_nav__item_list.is-category_c > li:nth-child(1) > a {
  background-image: url(../img/common/icon_side_c_chiri.png), url(../img/common/icon_arrow_bk_right.png);
  pointer-events: none;
  background-color: #ccc;
  opacity: 0.5;
}
.l-side_nav__item_list.is-category_c > li:nth-child(2) > a {
  background-image: url(../img/common/icon_side_c_rekishi.png), url(../img/common/icon_arrow_bk_right.png);
}
.l-side_nav__item_list.is-category_c > li:nth-child(3) > a {
  background-image: url(../img/common/icon_side_c_koumin.png), url(../img/common/icon_arrow_bk_right.png);
  pointer-events: none;
  background-color: #ccc;
  opacity: 0.5;
}
.l-side_nav__area_list {
  max-height: 0;
}
.l-side_nav__area_list.is-active {
  max-height: min(384px, 85.3333333333vw);
}
.l-side_nav__area_list > li {
  border-top: min(2.4px, 0.5333333333vw) solid #3D392E;
}
.l-side_nav__item_box {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  padding: min(18px, 4vw) min(54px, 12vw) min(18px, 4vw) min(18px, 4vw);
  background-color: #F9F6F0;
  font-weight: 700;
  font-size: min(16.8px, 3.7333333333vw);
}
.l-side_nav__area_box.is-child {
  padding-left: 1em;
}
.l-side_nav__area_box.is-no_posts {
  color: #ABABAB;
}

.o-btn__page_top_wrap {
  position: relative;
  bottom: 0;
  left: 0;
  width: 100%;
}
.o-btn__page_top {
  z-index: 2;
  position: fixed;
  right: min(28.8px, 6.4vw);
  bottom: min(28.8px, 6.4vw);
  width: min(61.2px, 13.6vw) !important;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s;
}
.o-btn__page_top.is-active {
  opacity: 1;
  pointer-events: auto;
}
.o-btn__border_right_arrow {
  display: flex !important;
  align-items: center;
  width: min(272.4px, 60.5333333333vw) !important;
  min-height: min(60px, 13.3333333333vw);
  margin-top: min(38.4px, 8.5333333333vw);
  padding: min(12px, 2.6666666667vw) min(36px, 8vw);
  border: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-radius: 9999px;
  background-image: url(../img/common/icon_arrow_bk_right.png);
  background-position: right min(12px, 2.6666666667vw) center;
  background-size: min(24px, 5.3333333333vw) auto;
  background-repeat: no-repeat;
  font-weight: 700;
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.7;
}
.o-btn__blue_left_arrow {
  display: flex !important;
  width: auto !important;
  margin-top: min(24px, 5.3333333333vw);
  padding-left: min(28.8px, 6.4vw);
  background-image: url(../img/common/icon_arrow_blue_left.png);
  background-position: left center;
  background-size: min(24px, 5.3333333333vw) auto;
  background-repeat: no-repeat;
  color: #227FC4 !important;
  font-weight: 700;
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.7;
  text-decoration: underline !important;
}
.o-btn__blue_left_arrow:hover {
  color: #227FC4 !important;
}

.o-list__area_child {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: min(28.8px, 6.4vw);
  gap: min(9.6px, 2.1333333333vw) min(8.4px, 1.8666666667vw);
}
.o-list__area_child.is-grade {
  grid-template-columns: 1fr;
}
.o-list__area_child_box {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  height: 100%;
  padding: min(9.6px, 2.1333333333vw);
  gap: min(13.2px, 2.9333333333vw);
  border: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-radius: min(9.6px, 2.1333333333vw);
}
.o-list__area_child_box.is-no_posts {
  border: min(2.4px, 0.5333333333vw) solid #ABABAB;
  color: #ABABAB;
}
.o-list__area_child_name {
  font-weight: 700;
  font-size: min(15.6px, 3.4666666667vw);
}
.o-list__area_child_count {
  margin-left: auto;
  font-weight: 700;
  font-size: min(15.6px, 3.4666666667vw);
  white-space: nowrap;
}
.o-list__cat {
  display: flex !important;
  flex-wrap: wrap;
  gap: min(4.8px, 1.0666666667vw);
}
.o-list__cat > li > span, .o-list__cat > li > a {
  display: block;
  padding: min(4.2px, 0.9333333333vw) min(9.6px, 2.1333333333vw);
  border-radius: 9999px !important;
  background-color: #BD6F1D;
  color: #FFFFFF;
  font-weight: 700;
  font-size: min(13.2px, 2.9333333333vw);
  line-height: 1.2;
  text-align: left;
}
.o-list__cat > li > span:hover, .o-list__cat > li > a:hover {
  color: #FFFFFF !important;
}
.o-list__cat > li > span.is-cat_s, .o-list__cat > li > a.is-cat_s {
  background-color: #4184D6;
}
.o-list__cat > li > span.is-cat_c, .o-list__cat > li > a.is-cat_c {
  background-color: #2FA257;
}

.o-pagenation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-top: min(28.8px, 6.4vw);
}
.o-pagenation__left_box {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: min(43.2px, 9.6vw);
  padding: 0 min(9.6px, 2.1333333333vw) !important;
  border: none !important;
  border-radius: min(12px, 2.6666666667vw);
  background-color: #E2F9FF;
  font-weight: 700;
  font-size: min(15.6px, 3.4666666667vw) !important;
  line-height: 1.7 !important;
}
.o-pagenation__right .wp-pagenavi {
  display: flex;
  align-items: center;
  justify-content: center;
}
.o-pagenation__right .wp-pagenavi .current, .o-pagenation__right .wp-pagenavi a, .o-pagenation__right .wp-pagenavi .previouspostslink, .o-pagenation__right .wp-pagenavi .nextpostslink {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: min(43.2px, 9.6vw) !important;
  min-height: min(43.2px, 9.6vw);
  margin: 0;
  padding: 0;
  border: none !important;
  font-weight: 700;
  font-size: min(15.6px, 3.4666666667vw);
  line-height: 1.7 !important;
  text-align: center;
}
.o-pagenation__right .wp-pagenavi .current {
  border-radius: 50%;
  background-color: #E2F9FF;
}
.o-pagenation__right .wp-pagenavi .previouspostslink, .o-pagenation__right .wp-pagenavi .nextpostslink {
  background-image: url(../img/common/icon_arrow_bk_right.png);
  background-position: center center;
  background-size: min(24px, 5.3333333333vw) auto;
  background-repeat: no-repeat;
  color: transparent !important;
}
.o-pagenation__right .wp-pagenavi .previouspostslink {
  transform: rotate(180deg);
}

.o-ttl__search {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: min(24px, 5.3333333333vw);
}
.o-ttl__search_inner {
  padding-left: min(48px, 10.6666666667vw);
  background-image: url(../img/common/icon_search.png);
  background-position: left center;
  background-size: min(36px, 8vw) auto;
  background-repeat: no-repeat;
  color: #FFFFFF;
  font-weight: 700;
  font-size: min(24px, 5.3333333333vw);
  line-height: 1.7;
}
.o-ttl__archive_header {
  padding: min(19.2px, 4.2666666667vw) 0;
  border-bottom: min(2.4px, 0.5333333333vw) solid #3D392E;
  font-weight: 700;
  font-size: min(26.4px, 5.8666666667vw);
  line-height: 1.2;
}
.o-ttl__single {
  margin-top: min(9.6px, 2.1333333333vw);
  font-weight: 700;
  font-size: min(26.4px, 5.8666666667vw);
  line-height: 1.4;
}
.o-ttl__left_border {
  position: relative;
  margin-top: min(48px, 10.6666666667vw);
  padding-left: min(14.4px, 3.2vw);
  font-weight: 700;
  font-size: min(24px, 5.3333333333vw);
  line-height: 1.3;
}
.o-ttl__left_border::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: min(2.4px, 0.5333333333vw);
  height: calc(100% - 0.2em);
  transform: translateY(calc(-50% + 0.1em));
  border-radius: 9999px;
  background-color: #227FC4;
  content: "";
}

.o-txt__search_care {
  display: none;
}
.o-txt__search_care a {
  display: inline !important;
  width: auto !important;
  text-decoration: underline !important;
}

.p-404__kv {
  display: flex;
  align-items: center;
  justify-content: center;
  height: min(120px, 26.6666666667vw);
  background-image: radial-gradient(circle at 0px 0px, rgba(255, 255, 255, 0.1) min(1.26px, 0.28vw), transparent min(2.4px, 0.5333333333vw)), radial-gradient(circle at min(8.4px, 1.8666666667vw) 0px, rgba(255, 255, 255, 0.1) min(1.26px, 0.28vw), transparent min(2.4px, 0.5333333333vw)), radial-gradient(circle at 0px min(8.4px, 1.8666666667vw), rgba(255, 255, 255, 0.1) min(1.26px, 0.28vw), transparent min(2.4px, 0.5333333333vw)), radial-gradient(circle at min(8.4px, 1.8666666667vw) min(8.4px, 1.8666666667vw), rgba(255, 255, 255, 0.1) min(1.26px, 0.28vw), transparent min(2.4px, 0.5333333333vw));
  background-size: min(8.4px, 1.8666666667vw) min(8.4px, 1.8666666667vw);
  background-color: #227FC4;
}
.p-404__kv img {
  width: min(192px, 42.6666666667vw);
}
.p-404__cnt {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: min(38.4px, 8.5333333333vw) min(28.8px, 6.4vw);
}
.p-404__ttl {
  font-size: min(33.6px, 7.4666666667vw);
  line-height: 1.8;
}
.p-404__ttl_bottom {
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.7;
  text-align: center;
}
.p-index__bg_square {
  margin-top: min(6px, 1.3333333333vw);
  background-image: linear-gradient(to right, rgba(219, 219, 219, 0.6) min(1.2px, 0.2666666667vw), transparent min(1.2px, 0.2666666667vw)), linear-gradient(to bottom, rgba(219, 219, 219, 0.6) min(1.2px, 0.2666666667vw), transparent min(1.2px, 0.2666666667vw));
  background-size: min(24px, 5.3333333333vw) min(24px, 5.3333333333vw);
  background-color: #FFFFFF;
}
.p-index__wave_left_top {
  display: none;
}
.p-index__cloud_right_top {
  display: none;
}
.p-index__cloud_left_middle {
  display: none;
}
.p-index__wave_right_middle {
  display: none;
}
.p-index__dot_left_bottom {
  display: none;
}
.p-index__cloud_right_bottom {
  display: none;
}
.p-index__cat1 {
  padding-top: min(42px, 9.3333333333vw);
}
.p-index__cat_ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: min(48px, 10.6666666667vw);
  background-image: url(../img/common/icon_book.png);
  background-position: center top;
  background-size: min(48px, 10.6666666667vw) auto;
  background-repeat: no-repeat;
}
.p-index__cat_ttl.is-map {
  background-image: url(../img/common/icon_map.png);
}
.p-index__cat_ttl.is-camera {
  background-image: url(../img/common/icon_camera.png);
}
.p-index__cat_ttl_txt {
  font-weight: 700;
  font-size: min(28.8px, 6.4vw);
  line-height: 1.2;
}
.p-index__cat_ttl_txt.is-c_blue_main {
  color: #227FC4;
}
.p-index__cat_ttl_detail {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: min(38.4px, 8.5333333333vw);
  font-size: min(16.8px, 3.7333333333vw);
  line-height: 1.6;
  text-align: center;
}
.p-index__cat_ttl_detail.is-grade {
  font-size: min(18px, 4vw);
}
.p-index__cat1_sub_ttl {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: min(38.4px, 8.5333333333vw);
}
.p-index__cat1_sub_top {
  position: relative;
  color: #1DA5DF;
  font-weight: 700;
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.4;
}
.p-index__cat1_sub_top::before, .p-index__cat1_sub_top::after {
  position: absolute;
  bottom: 0.2em;
  left: -0.4em;
  width: min(1.2px, 0.2666666667vw);
  min-width: 1px;
  height: 1.2em;
  transform: rotate(-45deg);
  transform-origin: left bottom;
  background-color: #1DA5DF;
  content: "";
}
.p-index__cat1_sub_top::after {
  right: -0.4em;
  left: auto;
  transform: rotate(45deg);
  transform-origin: right bottom;
}
.p-index__cat1_sub_top.is-cat_c {
  color: #2FA257;
}
.p-index__cat1_sub_top.is-cat_c::before, .p-index__cat1_sub_top.is-cat_c::after {
  background-color: #2FA257;
}
.p-index__cat1_sub_bg_line {
  padding: 0 0.2em;
  background: linear-gradient(to bottom, transparent 50%, #E2F9FF 50%);
  font-weight: 700;
  font-size: min(24px, 5.3333333333vw);
  line-height: 1.7;
}
.p-index__cat1_sub_bg_line.is-cat_c {
  background: linear-gradient(to bottom, transparent 50%, #D1EADA 50%);
}
.p-index__cat1_list {
  display: grid;
  grid-template-columns: min(156px, 34.6666666667vw) min(156px, 34.6666666667vw);
  justify-content: center;
  margin-top: min(24px, 5.3333333333vw);
  gap: min(33.6px, 7.4666666667vw);
}
.p-index__cat1_list > li > a {
  display: block;
  position: relative;
}
.p-index__cat1_list > li > a img {
  z-index: 2;
  position: relative;
  transition: 0.35s ease-out;
}
.p-index__cat1_list > li > a::after {
  display: block;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  transform: translate(min(9.6px, 2.1333333333vw), min(9.6px, 2.1333333333vw));
  border-radius: min(13.5px, 3vw);
  background-color: #1DA5DF;
  content: "";
}
.p-index__cat1_list > li > a:hover {
  opacity: 1 !important;
}
.p-index__cat1_list.is-cat_c > li > a::after {
  background-color: #2FA257;
}
.p-index__cat2 {
  margin-top: min(105.6px, 23.4666666667vw);
}
.p-index__map {
  position: relative;
  margin-top: min(105.6px, 23.4666666667vw);
  padding-bottom: min(168px, 37.3333333333vw);
  background-color: #F9F6F0;
}
.p-index__button_box {
  position: absolute;
  top: 0;
  left: 50%;
  width: min(375px, 83.3333333333vw);
  transform: translate(-50%, calc(-100% + min(2.4px, 0.5333333333vw)));
  border-top: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-right: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-left: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-radius: min(12px, 2.6666666667vw) min(12px, 2.6666666667vw) 0 0;
  background-color: #F9F6F0;
}
.p-index__button_box.is-clm2 {
  width: min(180px, 40vw);
  background-color: #3D392E;
  color: #FFFFFF;
}
.p-index__button_box.is-clm2 .p-index__map_button_inner {
  background: none;
}
.p-index__button_box.is-clm2:hover {
  background-color: #F9F6F0;
  color: #3D392E;
}
.p-index__button_box.is-clm2:hover .p-index__map_button_inner {
  background: linear-gradient(to bottom, transparent 50%, #FFF3CE 50%);
}
.p-index__button_box.is-jp {
  transform: translate(max(-187.8px, -41.7333333333vw), calc(-100% + min(2.4px, 0.5333333333vw)));
}
.p-index__button_box.is-jp.is-current {
  background-color: #F9F6F0;
  color: #3D392E;
}
.p-index__button_box.is-jp.is-current .p-index__map_button_inner {
  background: linear-gradient(to bottom, transparent 50%, #FFF3CE 50%);
}
.p-index__button_box.is-world {
  transform: translate(min(6.6px, 1.4666666667vw), calc(-100% + min(2.4px, 0.5333333333vw)));
}
.p-index__button_box.is-world.is-current {
  background-color: #F9F6F0;
  color: #3D392E;
}
.p-index__button_box.is-world.is-current .p-index__map_button_inner {
  background: linear-gradient(to bottom, transparent 50%, #FFF3CE 50%);
}
.p-index__map_button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-height: min(72px, 16vw);
  padding: min(12px, 2.6666666667vw);
}
.p-index__map_button:hover {
  opacity: 1 !important;
}
.p-index__map_button_inner {
  padding: 0 0.2em;
  background: linear-gradient(to bottom, transparent 50%, #FFF3CE 50%);
  font-weight: 700;
  font-size: min(24px, 5.3333333333vw);
  line-height: 1.7;
}
.p-index__map_box {
  position: relative;
  overflow: hidden;
}
.p-index__map_box::before, .p-index__map_box::after {
  display: block;
  position: absolute;
  top: 0;
  right: 50%;
  width: 100%;
  height: min(2.4px, 0.5333333333vw);
  min-height: 1px;
  transform: translateX(max(-189.6px, -42.1333333333vw));
  background-color: #3D392E;
  content: "";
}
.p-index__map_box::after {
  right: auto;
  left: 50%;
  transform: translateX(min(189.6px, 42.1333333333vw));
}
.p-index__map_jp {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.p-index__map_world {
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.p-index__map_world.is-current {
  display: flex;
}
.p-index__map_column {
  width: 100%;
}
.p-index__map_jp_img {
  max-width: min(360px, 80vw);
  margin: min(48px, 10.6666666667vw) auto 0;
}
.p-index__map_world_img {
  max-width: min(408px, 90.6666666667vw);
  margin: min(24px, 5.3333333333vw) auto 0;
}

.p-index__map_border_box {
  display: block;
  max-width: min(392.4px, 87.2vw) !important;
  margin: min(24px, 5.3333333333vw) auto 0;
  border-radius: min(12px, 2.6666666667vw) min(24px, 5.3333333333vw) min(24px, 5.3333333333vw) min(24px, 5.3333333333vw);
  background-color: #FFFFFF;
  letter-spacing: 0.05em !important;
}
.p-index__map_border_box:hover {
  opacity: 0.5 !important;
}
.p-index__map_border_box.is-hokkaido {
  /* border: min(3.6px, 0.8vw) solid #2A892F; */
  border: min(3.6px, 0.8vw) solid #999;
  background-color: #ddd;
}
.p-index__map_border_box.is-tohoku {
  /* border: min(3.6px, 0.8vw) solid #4184D6; */
  border: min(3.6px, 0.8vw) solid #999;
  background-color: #ddd;
}
.p-index__map_border_box.is-kanto {
  border: min(3.6px, 0.8vw) solid #6F6CCA;
}
.p-index__map_border_box.is-chubu {
  border: min(3.6px, 0.8vw) solid #769C2A;
}
.p-index__map_border_box.is-kinki {
  /* border: min(3.6px, 0.8vw) solid #B59100; */
  border: min(3.6px, 0.8vw) solid #999;
  background-color: #ddd;
}
.p-index__map_border_box.is-chugoku {
  /* border: min(3.6px, 0.8vw) solid #F16800; */
  border: min(3.6px, 0.8vw) solid #999;
  background-color: #ddd;
}
.p-index__map_border_box.is-shikoku {
  /* border: min(3.6px, 0.8vw) solid #F16678; */
  border: min(3.6px, 0.8vw) solid #999;
  background-color: #ddd;
}
.p-index__map_border_box.is-kyushu {
  border: min(3.6px, 0.8vw) solid #D05430;
}

.p-index__map_parent {
  display: flex;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  min-height: min(45.6px, 10.1333333333vw);
  padding: min(4.8px, 1.0666666667vw) min(16.8px, 3.7333333333vw);
  border-radius: min(4.8px, 1.0666666667vw) 0 min(12px, 2.6666666667vw) 0;
  color: #FFFFFF;
  font-weight: 700;
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.7;
}
.p-index__map_parent::after {
  width: min(21.6px, 4.8vw);
  height: min(21.6px, 4.8vw);
  margin-left: min(2.4px, 0.5333333333vw);
  background-image: url(../img/common/icon_arrow_wh_right.png);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-index__map_parent.is-hokkaido {
  /* background-color: #2A892F; */
  background-color: #999;
}
.p-index__map_parent.is-tohoku {
  /* background-color: #4184D6; */
  background-color: #999;
}
.p-index__map_parent.is-kanto {
  background-color: #6F6CCA;
}
.p-index__map_parent.is-chubu {
  background-color: #769C2A;
}
.p-index__map_parent.is-kinki {
  /* background-color: #B59100; */
  background-color: #999;
}
.p-index__map_parent.is-chugoku {
  /* background-color: #F16800; */
  background-color: #999;
}
.p-index__map_parent.is-shikoku {
  /* background-color: #F16678; */
  background-color: #999;
}
.p-index__map_parent.is-kyushu {
  background-color: #D05430;
}
.p-index__map_child_box {
  padding: min(15.6px, 3.4666666667vw) min(12px, 2.6666666667vw) min(21.6px, 4.8vw) min(27.6px, 6.1333333333vw);
  overflow: hidden;
}
.p-index__map_child {
  float: left;
  font-weight: 700;
  font-size: min(18px, 4vw);
  line-height: 1.4;
}
.p-index__map_child::after {
  padding: 0 0.4em;
  content: "/";
}
.p-index__map_child:nth-child(4n)::after {
  padding: 0;
  content: none;
}
.p-index__map_child:nth-child(4n+1) {
  clear: left;
}
.p-index__map_child:nth-last-child(1)::after {
  padding: 0;
  content: none;
}
.p-index__posts {
  position: relative;
  padding: min(12px, 2.6666666667vw) 0 min(76.8px, 17.0666666667vw);
  background-color: #E2F9FF;
}
.p-index__posts_wave {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: min(109.2px, 24.2666666667vw);
  transform: translateY(-100%);
  background-image: url(../img/top/wave.png);
  background-position: center bottom;
  background-size: contain;
  background-repeat: repeat-x;
}
.p-index__posts_cloud_wrap {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
}
.p-index__posts_cloud_left_top {
  display: none;
}
.p-index__posts_cloud_right_top {
  display: none;
}
.p-index__posts_cloud_left_bottom {
  display: none;
}
.p-index__posts_cloud_right_bottom {
  display: none;
}
.p-index__posts_list {
  display: grid;
  z-index: 2;
  position: relative;
  grid-template-columns: 1fr 1fr;
  margin-top: min(48px, 10.6666666667vw);
  gap: min(21.6px, 4.8vw);
}
.p-index__posts_list > li > a {
  display: block;
  height: 100%;
  overflow: hidden;
  border-radius: min(9.6px, 2.1333333333vw);
  background-color: #FFFFFF;
}
.p-index__posts_list > li > a:hover {
  opacity: 1 !important;
}
.p-index__posts_img {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 3/2;
  overflow: hidden;
  background-color: #3D392E;
  opacity: 1;
  transition: 0.35s;
}
.p-index__posts_img img {
  -o-object-fit: contain;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
     object-fit: contain;
  transform: scale(1);
  backface-visibility: hidden;
  transition: 0.35s;
}
.p-index__posts_img:hover img {
  transform: scale(1.2);
}
.p-index__posts_ttl {
  margin-top: min(4.8px, 1.0666666667vw);
  padding: 0 min(9.6px, 2.1333333333vw);
  font-weight: 700;
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.3;
}
.p-index__posts_ttl:hover {
  opacity: 0.7 !important;
}
.p-index__cat_list {
  display: flex !important;
  flex-wrap: wrap;
  padding: min(4.8px, 1.0666666667vw) min(9.6px, 2.1333333333vw) min(9.6px, 2.1333333333vw);
  gap: min(4.8px, 1.0666666667vw);
}
.p-index__cat_list > li {
  line-height: 1.2 !important;
}
.p-index__cat_list > li span[data-href] {
  display: inline-block;
  padding: min(4.2px, 0.9333333333vw) min(9.6px, 2.1333333333vw) !important;
  border-radius: 9999px !important;
  background-color: #2FA257;
  background-color: #2FA257;
  color: #FFFFFF;
  font-weight: 700;
  font-size: min(13.2px, 2.9333333333vw) !important;
  line-height: 1.2 !important;
  text-align: left;
}
.p-index__cat_list > li span[data-href].is-cat_s {
  background-color: #4184D6;
}
.p-index__cat_list > li span[data-href].is-cat2 {
  background-color: #BD6F1D;
}
.p-index__cat_list > li span[data-href]:hover {
  opacity: 0.7 !important;
}
.p-index__map_border_world {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  max-width: min(392.4px, 87.2vw) !important;
  min-height: min(60px, 13.3333333333vw);
  margin: min(24px, 5.3333333333vw) auto 0;
  border-radius: 9999px;
  background-color: #FFFFFF;
}
.p-index__map_border_world.is-asia {
  /* border: min(3.6px, 0.8vw) solid #769C2A */;
  border: min(3.6px, 0.8vw) solid #999;
  background-color: #ddd;
}
.p-index__map_border_world.is-europe {
  /* border: min(3.6px, 0.8vw) solid #F16678; */
  border: min(3.6px, 0.8vw) solid #999;
  background-color: #ddd;
}
.p-index__map_border_world.is-africa {
  /* border: min(3.6px, 0.8vw) solid #B59100; */
  border: min(3.6px, 0.8vw) solid #999;
  background-color: #ddd;
}
.p-index__map_border_world.is-northamerica {
  border: min(3.6px, 0.8vw) solid #4184D6;
}
.p-index__map_border_world.is-southamerica {
  /* border: min(3.6px, 0.8vw) solid #6F6CCA; */
  border: min(3.6px, 0.8vw) solid #999;
  background-color: #ddd;
}
.p-index__map_border_world.is-oceania {
  /* border: min(3.6px, 0.8vw) solid #D05430; */
  border: min(3.6px, 0.8vw) solid #999;
  background-color: #ddd;
}
.p-index__map_border_world_txt {
  font-weight: 700;
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.7;
  letter-spacing: -0.05em;
  text-align: center;
}
.p-index__map_border_world_arrow {
  position: absolute;
  top: 50%;
  right: min(15.6px, 3.4666666667vw);
  width: min(40.8px, 9.0666666667vw);
  height: min(40.8px, 9.0666666667vw);
  transform: translate3d(0, -50%, 0);
}

.p-page__border_block {
  margin-top: min(28.8px, 6.4vw);
  padding: 0 min(19.2px, 4.2666666667vw) min(28.8px, 6.4vw);
  border: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-radius: min(9.6px, 2.1333333333vw);
}
.p-page__border_block a {
  color: #227FC4;
  text-decoration: underline !important;
}
.p-page__border_block a:hover {
  color: #227FC4 !important;
}
.p-page__border_block a[target=_blank]::after {
  display: inline-block !important;
  width: min(13.2px, 2.9333333333vw);
  height: min(12px, 2.6666666667vw);
  margin: 0 min(2.4px, 0.5333333333vw);
  background-image: url(../img/common/icon_external_blue.png);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-page__terms_list {
  margin-top: min(9.6px, 2.1333333333vw);
  padding-left: 1em;
  list-style-type: "・";
}
.p-page__terms_list > li {
  display: list-item !important;
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.8;
}
.p-page__terms_bg {
  margin-top: min(28.8px, 6.4vw);
  padding: min(9.6px, 2.1333333333vw) min(19.2px, 4.2666666667vw) min(14.4px, 3.2vw);
  border-radius: min(12px, 2.6666666667vw);
  background-color: #E2F9FF;
  font-size: min(16.8px, 3.7333333333vw);
}
.p-page__terms_bg_ttl {
  margin-bottom: min(9.6px, 2.1333333333vw);
  font-weight: 700;
  font-size: min(21.6px, 4.8vw);
}

.p-single {
  position: relative;
  margin-top: min(32.4px, 7.2vw);
}
.p-single__ring {
  position: absolute;
  top: max(-6px, -1.3333333333vw);
  left: 50%;
  width: min(351.6px, 78.1333333333vw);
  transform: translateX(-50%);
}
.p-single__wrap {
  overflow: hidden;
  border: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-radius: min(12px, 2.6666666667vw);
  background-image: linear-gradient(to right, rgba(219, 219, 219, 0.6) min(1.2px, 0.2666666667vw), transparent min(1.2px, 0.2666666667vw)), linear-gradient(to bottom, rgba(219, 219, 219, 0.6) min(1.2px, 0.2666666667vw), transparent min(1.2px, 0.2666666667vw));
  background-size: min(10.8px, 2.4vw) min(10.8px, 2.4vw);
  background-color: #FFFFFF;
}
.p-single__top_area {
  padding: min(36px, 8vw) min(16.8px, 3.7333333333vw) min(9.6px, 2.1333333333vw);
  background: linear-gradient(to bottom, #227FC4 min(18px, 4vw), transparent min(18px, 4vw));
}
.p-single__cnt {
  padding: min(28.8px, 6.4vw) min(16.8px, 3.7333333333vw) min(48px, 10.6666666667vw);
  background-color: #FFFFFF;
}
.p-single__thumbnail.is-vertical img {
  width: 70%;
  margin: 0 auto;
}
.p-single__post_block p {
  margin-top: min(19.2px, 4.2666666667vw);
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.8;
}
.p-single__table_bg_blue {
  margin-top: min(24px, 5.3333333333vw);
  padding: min(9.6px, 2.1333333333vw) min(19.2px, 4.2666666667vw);
  border: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-radius: min(9.12px, 2.0266666667vw);
  background-color: #E2F9FF;
}
.p-single__table_bg_blue table {
  width: 100%;
  table-layout: auto !important;
}
.p-single__table_bg_blue table tbody tr td {
  position: relative;
  padding: min(9.6px, 2.1333333333vw) 0;
  border: none;
  font-size: min(19.2px, 4.2666666667vw);
  line-height: 1.5;
}
.p-single__table_bg_blue table tbody tr td:nth-child(1) {
  padding-right: min(9.6px, 2.1333333333vw);
  font-weight: 700;
  white-space: nowrap;
}
.p-single__table_bg_blue table tbody tr td:nth-child(1)::after {
  position: absolute;
  top: 50%;
  right: 0;
  width: min(1.2px, 0.2666666667vw);
  height: calc(100% - 1em);
  transform: translateY(-50%);
  background-color: #3D392E;
  content: "";
}
.p-single__table_bg_blue table tbody tr td:nth-last-child(1) {
  width: 100%;
  padding-left: min(9.6px, 2.1333333333vw);
}
.p-single__dl_btn {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: min(327.6px, 72.8vw) !important;
  margin: min(36px, 8vw) auto 0;
  padding: min(12px, 2.6666666667vw) min(21.6px, 4.8vw);
  border-radius: 9999px;
  background-color: #227FC4;
}
.p-single__dl_btn_inner {
  padding-right: min(40.8px, 9.0666666667vw);
  background-image: url(../img/common/icon_dl_wh.png);
  background-position: right center;
  background-size: min(28.8px, 6.4vw) auto;
  background-repeat: no-repeat;
  color: #FFFFFF;
  font-weight: 700;
  font-size: min(16.8px, 3.7333333333vw);
  line-height: 1.3;
  text-align: center;
}
.p-single__bottom_terms {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: min(9.6px, 2.1333333333vw);
}
.p-single__bottom_terms_link {
  display: block;
  width: auto !important;
  color: #227FC4;
  font-size: min(13.2px, 2.9333333333vw);
}
.p-single__bottom_terms_link:hover {
  color: #227FC4 !important;
}
.p-single__bottom_terms_under_line {
  text-decoration: underline;
}

input, textarea, select {
  font-family: "Zen Kaku Gothic New", serif !important;
}

.inner {
  width: 100% !important;
  max-width: 750px !important;
  margin: 0 auto !important;
  padding: 0 min(28.8px, 6.4vw) !important;
}

#header_top {
  background-color: #227FC4 !important;
}

#header_top .inner {
  position: static !important;
  max-width: 750px !important;
  height: min(84px, 18.6666666667vw) !important;
  min-height: 0 !important;
  margin: 0 auto;
  padding: min(13.2px, 2.9333333333vw) min(12px, 2.6666666667vw) !important;
}

#header_logo, #header_logo_fix {
  width: min(204px, 45.3333333333vw) !important;
}
#header_logo a, #header_logo_fix a {
  display: block;
}

#header_logo, #header_logo_fix {
  max-height: none !important;
}

#header_logo .logo, #header_logo_fix .logo {
  line-height: 1 !important;
}

#header_logo img, #header_logo_fix img {
  max-height: none !important;
}

a.menu_button {
  position: absolute !important;
  top: min(6px, 1.3333333333vw) !important;
  right: 0 !important;
  width: min(72px, 16vw) !important;
  height: min(72px, 16vw) !important;
}

.menu_border_wrap {
  position: absolute;
  top: 50% !important;
  left: 50% !important;
  width: min(28.8px, 6.4vw) !important;
  height: min(21.6px, 4.8vw) !important;
  transform: translate(-50%, -50%);
}

.menu_border_line {
  position: absolute;
  top: 50% !important;
  width: 100%;
  height: min(2.4px, 0.5333333333vw);
  min-height: 1px;
  transform: translateY(-50%) !important;
  background-color: #FFFFFF;
}
.menu_border_line:nth-child(1) {
  top: 0 !important;
  transform: none !important;
}
.menu_border_line:nth-last-child(1) {
  top: auto !important;
  bottom: 0 !important;
  transform: none !important;
}

a.menu_button.active .menu_border_line {
  transform: translateY(-50%) rotate(45deg) !important;
}
a.menu_button.active .menu_border_line:nth-child(1) {
  top: 50% !important;
  transform: translateY(-50%) rotate(-45deg) !important;
}
a.menu_button.active .menu_border_line:nth-last-child(1) {
  top: 50% !important;
  bottom: auto !important;
}

a.menu_button:before {
  content: none !important;
}

#global_menu {
  top: min(84px, 18.6666666667vw) !important;
  max-height: calc(100vh - min(84px, 18.6666666667vw)) !important;
}

.child_menu_button {
  display: none !important;
}

#header_search, #index_header_search {
  padding: min(28.8px, 6.4vw) 0 min(48px, 10.6666666667vw) !important;
}

#header_search .inner, #index_header_search .inner {
  padding: 0 min(13.2px, 2.9333333333vw) !important;
}

.header_search_inputs {
  margin: 0 0 min(12px, 2.6666666667vw) 0 !important;
}

.header_search_inputs input, .header_search_inputs select {
  color: #3D392E !important;
  font-weight: 700 !important;
  font-size: min(18px, 4vw) !important;
}

.header_search_button {
  display: flex;
  justify-content: center;
  margin: min(24px, 5.3333333333vw) 0 0 0 !important;
}

#header_search_submit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(288px, 64vw) !important;
  height: min(60px, 13.3333333333vw) !important;
  border: none !important;
  border-radius: 9999px !important;
  background-image: url(../img/common/icon_arrow_wh_right.png) !important;
  background-position: right min(12px, 2.6666666667vw) center !important;
  background-size: min(24px, 5.3333333333vw) !important;
  background-repeat: no-repeat !important;
  background-color: #3D392E !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
  font-size: min(19.2px, 4.2666666667vw) !important;
  line-height: 1.7 !important;
}

.header_search_keywords #header_search_keywords {
  height: auto !important;
  padding: min(16.008px, 3.5573333333vw) min(24px, 5.3333333333vw) !important;
  border: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-radius: min(12px, 2.6666666667vw);
}

.header_search_inputs select {
  height: auto !important;
  padding: min(19.2px, 4.2666666667vw) min(57.6px, 12.8vw) min(19.2px, 4.2666666667vw) min(24px, 5.3333333333vw) !important;
  border: min(2.4px, 0.5333333333vw) solid #3D392E;
  border-radius: min(12px, 2.6666666667vw);
  background-image: url(../img/common/icon_arrow_bk_bottom.png) !important;
  background-position: right min(24px, 5.3333333333vw) center !important;
  background-size: min(24px, 5.3333333333vw) auto !important;
  background-repeat: no-repeat !important;
}
.header_search_inputs select option {
  font-weight: 700 !important;
}

.search_keywords_operator {
  display: none !important;
}

.chosen-drop {
  overflow: hidden !important;
  border: min(2.4px, 0.5333333333vw) solid #3D392E !important;
}
.chosen-drop .chosen-results {
  max-height: min(336px, 74.6666666667vw) !important;
}
.chosen-drop .chosen-results .active-result, .chosen-drop .chosen-results .disabled-result {
  padding: min(18px, 4vw) !important;
  border: none !important;
  font-weight: 700 !important;
  font-size: min(14.4px, 3.2vw) !important;
}
.chosen-drop .chosen-results .active-result.result-selected, .chosen-drop .chosen-results .disabled-result.result-selected {
  background: none !important;
  color: #3D392E !important;
  opacity: 1 !important;
}

.chosen-container-single .chosen-single {
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  height: min(57.6px, 12.8vw) !important;
  padding: 0 min(24px, 5.3333333333vw) !important;
  border: min(2.4px, 0.5333333333vw) solid #3D392E !important;
  border-radius: min(12px, 2.6666666667vw) !important;
  background-image: url(../img/common/icon_arrow_bk_bottom.png) !important;
  background-position: right min(24px, 5.3333333333vw) center !important;
  background-size: min(24px, 5.3333333333vw) auto !important;
  background-repeat: no-repeat !important;
  line-height: 1 !important;
}
.chosen-container-single .chosen-single > span {
  font-weight: 700 !important;
  font-size: min(14.4px, 3.2vw) !important;
}
.chosen-container-single .chosen-single > div {
  display: none !important;
}

#main_col {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: min(6px, 1.3333333333vw) 0 min(48px, 10.6666666667vw) !important;
}

#footer_contents {
  padding: min(48px, 10.6666666667vw) 0 !important;
  background-color: #3D392E !important;
}

#footer_info {
  margin: 0 !important;
  padding: 0 !important;
}

#footer_logo {
  line-height: 1 !important;
}
#footer_logo a {
  display: block !important;
  width: min(204px, 45.3333333333vw) !important;
  margin: 0 auto !important;
}

#footer_bottom_menu {
  display: block !important;
  margin-top: min(28.8px, 6.4vw) !important;
}

#footer_bottom_menu ul {
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: min(24px, 5.3333333333vw) 0;
}

#footer_bottom_menu li {
  line-height: 1 !important;
}

#footer_bottom_menu li:after {
  content: none !important;
}

#footer_bottom_menu ul li a {
  display: block !important;
  padding-right: min(24px, 5.3333333333vw) !important;
  background-image: url("../img/common/icon_external.png");
  background-position: right 65%;
  background-size: min(13.2px, 2.9333333333vw) auto;
  background-repeat: no-repeat;
  font-size: min(15.6px, 3.4666666667vw) !important;
  line-height: 180% !important;
}

#copyright {
  margin: min(28.8px, 6.4vw) 0 0 0 !important;
  padding: 0 !important;
  background-color: #3D392E !important;
  color: #949494;
  font-size: min(13.2px, 2.9333333333vw) !important;
  letter-spacing: 0.05em !important;
}

.page_navi2 {
  margin: 0 !important;
  padding: 0 !important;
}

#post_list2 {
  display: grid;
  grid-template-columns: 1fr;
  margin: min(28.8px, 6.4vw) 0 0 !important;
  gap: min(19.2px, 4.2666666667vw) 0;
}

#post_list2 .article a {
  display: grid !important;
  grid-template-columns: min(156px, 34.6666666667vw) 1fr;
  justify-content: space-between;
  padding: min(19.2px, 4.2666666667vw) !important;
  gap: 0 min(9.6px, 2.1333333333vw);
  border: min(2.4px, 0.5333333333vw) solid #3D392E !important;
  border-radius: min(19.2px, 4.2666666667vw) !important;
}
#post_list2 .article a .image:hover img {
  transform: scale(1.2) !important;
  opacity: 0.7;
}
#post_list2 .article a:hover {
  opacity: 1 !important;
}
#post_list2 .article a:hover .image img {
  transform: scale(1);
}

#post_list2 .article a .image {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 3/2;
  width: auto !important;
  padding-bottom: 0 !important;
  float: none !important;
  background-color: #fff;
}
#post_list2 .article a .image::before {
  content: none !important;
}
#post_list2 .article a .image img {
  position: static;
  -o-object-fit: contain;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
     object-fit: contain;
}

#post_list2 .article a .info {
  width: auto !important;
  float: none !important;
}
#post_list2 .article a .info .meta {
  margin: 0 !important;
}
#post_list2 .article a .info .meta li {
  display: flex !important;
  flex-wrap: wrap;
  margin: 0 !important;
  gap: min(4.8px, 1.0666666667vw);
}
#post_list2 .article a .info .meta li + li {
  margin-top: min(4.8px, 1.0666666667vw) !important;
}
#post_list2 .article a .info .meta li .cat-category {
  margin: 0 !important;
  padding: min(4.2px, 0.9333333333vw) min(9.6px, 2.1333333333vw) !important;
  border-radius: 9999px !important;
  background-color: #2FA257 !important;
  font-weight: 700;
  font-size: min(13.2px, 2.9333333333vw) !important;
  line-height: 1.2 !important;
  text-align: left;
}
#post_list2 .article a .info .meta li .cat-category.is-cat_s {
  background-color: #4184D6 !important;
}
#post_list2 .article a .info .meta li .cat-category:hover {
  opacity: 0.7;
}
#post_list2 .article a .info .meta li .cat-category2 {
  margin: 0 !important;
  padding: min(4.2px, 0.9333333333vw) min(9.6px, 2.1333333333vw) !important;
  border-radius: 9999px !important;
  background-color: #BD6F1D !important;
  font-weight: 700;
  font-size: min(12px, 2.6666666667vw) !important;
  line-height: 1.2 !important;
  text-align: left;
}
#post_list2 .article a .info .meta li .cat-category2:hover {
  opacity: 0.7;
}

#post_list2 .article .meta li span:nth-child(n+2) {
  display: block !important;
}

#post_list2 .article .title {
  margin: min(4.8px, 1.0666666667vw) 0 0 !important;
  font-weight: 700 !important;
  font-size: min(19.2px, 4.2666666667vw) !important;
  line-height: 1.3 !important;
}
#post_list2 .article .title:hover {
  opacity: 0.7;
}

#post_list2 .article {
  border: none !important;
}

/* 中谷追加 260427 */
li a .mask {
  width: 100%;
  height: 100%;
  /* border-radius: 20px; */
  border-radius: min(20px, 1.5625vw);
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
  background-color: rgba(204,204,204,0.6);
  z-index: 9;
  }
.p-index__cat1_list.is-cat_c > li.pre > a::after {
  background-color: #999;
  }

@media (min-width: 376px){
  .visible_to_xs {
    display: none;
  }
}

@media (min-width: 744px){
  .visible_to_s {
    display: none;
  }
  .visible_s {
    display: block;
  }
  .p-index__map_column {
    display: grid;
    grid-template-columns: 1fr 1fr;
    max-width: 700px;
    margin: min(36px, 8vw) auto 0;
    gap: 20px;
  }
  .p-index__map_column.is-world {
    max-width: 684px;
    gap: 30px;
  }
  .p-index__map_world_img {
    max-width: 680px;
  }
  .p-index__map_border_box {
    margin: 0;
  }
  .p-index__map_child::after {
    padding: 0 0.1em;
  }
  .p-index__map_child:nth-child(4n)::after {
    padding: 0 0.1em;
    content: "/";
  }
  .p-index__map_child:nth-child(4n+1) {
    clear: none;
  }
  .p-index__map_child:nth-last-child(1)::after {
    padding: 0;
    content: none;
  }
  .p-index__map_border_world {
    margin: 0;
  }
}

@media (min-width: 768px){
  .visible_to_m {
    display: none;
  }
  .visible_m {
    display: block;
  }
  .clickable:hover {
    opacity: 0.7;
  }
}

@media (min-width: 1024.2px){
  body {
    font-size: min(16px, 1.25vw) !important;
  }
  a:hover, a:active, button:hover, button:active {
    opacity: 0.7 !important;
    transition: 0.4s !important;
  }
  .innerbox {
    max-width: 1280px !important;
    padding: 0 min(40px, 3.125vw) !important;
  }
  .visible_to_l {
    display: none;
  }
  .visible_l {
    display: block;
  }
  .l-footer__wrap {
    max-width: 1280px;
    margin: 0 auto;
    padding: min(80px, 6.25vw) min(40px, 3.125vw);
  }
  .l-footer__item_box {
    margin-top: min(32px, 2.5vw);
  }
  .l-footer__item_box > dt {
    padding: 0 0 min(8px, 0.625vw) min(30px, 2.34375vw);
    background-position: left top min(4px, 0.3125vw);
    background-size: min(24px, 1.875vw) auto;
    font-size: min(18px, 1.40625vw);
  }
  .l-footer__pipe_list {
    margin-top: min(24px, 1.875vw);
  }
  .l-footer__pipe_list > li {
    font-size: min(16px, 1.25vw);
  }
  .l-footer__pipe_list > li > a {
    font-size: min(16px, 1.25vw);
  }
  .l-footer__pipe_list > li::after {
    padding: 0 0.8em;
  }
  .l-footer__jp_list {
    margin-top: min(24px, 1.875vw);
  }
  .l-footer__jp_list > li {
    margin-top: min(4px, 0.3125vw);
  }
  .l-footer__jp_list_parent {
    font-size: min(16px, 1.25vw);
  }
  .l-footer__jp_list_parent a {
    font-size: min(16px, 1.25vw);
  }
  .l-footer__jp_list_child {
    font-size: min(16px, 1.25vw);
  }
  .l-footer__jp_list_child > li {
    font-size: min(16px, 1.25vw);
  }
  .l-footer__jp_list_child > li > a {
    font-size: min(16px, 1.25vw);
  }
  .l-nav {
    min-height: 0;
    padding-bottom: 0;
  }
  .l-nav__item_list {
    display: none !important;
  }
  .l-nav__item_box {
    padding: min(5px, 0.390625vw) min(18.5px, 1.4453125vw) min(5px, 0.390625vw) min(5px, 0.390625vw) !important;
    font-size: min(14px, 1.09375vw);
  }
  .l-nav__item_box::after {
    width: min(16px, 1.25vw);
    height: min(16px, 1.25vw);
  }
  .l-nav__item_box.is-sub_list {
    padding: min(5px, 0.390625vw) min(5px, 0.390625vw) min(5px, 0.390625vw) min(5px, 0.390625vw) !important;
  }
  .l-nav__item_box.is-sub_list::after {
    content: none;
  }
  .l-nav__item_box.is-external {
    padding: min(5px, 0.390625vw) min(13.5px, 1.0546875vw) min(5px, 0.390625vw) min(5px, 0.390625vw) !important;
  }
  .l-nav__item_box.is-external::after {
    content: none;
  }
  .l-nav__item_box_external {
    position: static;
  }
  .l-nav__item_box_external::after {
    right: 0;
    width: min(11px, 0.859375vw);
    height: min(10px, 0.78125vw);
    transform: translate(0, -50%);
  }
  .l-nav__sub_list {
    display: flex;
    margin: 0 !important;
    gap: 0 min(10px, 0.78125vw);
  }
  .l-nav__sub_list > li > a, .l-nav__sub_list > li button {
    padding: 0 !important;
  }
  .l-nav__sub_list > li > a.is-nichibun, .l-nav__sub_list > li button.is-nichibun {
    width: min(120px, 9.375vw) !important;
    height: 100%;
    margin: 0 0 0 min(30px, 2.34375vw) !important;
  }
  .l-side_nav {
    width: min(300px, 23.4375vw);
    padding: 0 !important;
  }
  .l-side_nav__item_wrap {
    margin-top: min(20px, 1.5625vw);
  }
  .l-side_nav__item_list {
    border: min(2px, 0.15625vw) solid #3D392E;
    border-radius: min(10px, 0.78125vw);
  }
  .l-side_nav__item_list > li {
    border-top: min(2px, 0.15625vw) solid #3D392E;
  }
  .l-side_nav__item_list > li > a, .l-side_nav__item_list > li > button {
    padding: min(15px, 1.171875vw) min(45px, 3.515625vw);
    background-position: left min(15px, 1.171875vw) center, right min(15px, 1.171875vw) center;
    background-size: min(24px, 1.875vw), min(20px, 1.5625vw);
    font-size: min(14px, 1.09375vw);
  }
  .l-side_nav__item_list > li > button.is-area {
    background-position: left min(15px, 1.171875vw) center;
    background-size: min(24px, 1.875vw);
  }
  .l-side_nav__item_list > li > button.is-area::after {
    right: min(15px, 1.171875vw);
    width: min(20px, 1.5625vw);
    height: min(20px, 1.5625vw);
  }
  .l-side_nav__area_list.is-active {
    max-height: min(320px, 25vw);
  }
  .l-side_nav__area_list > li {
    border-top: min(2px, 0.15625vw) solid #3D392E;
  }
  .l-side_nav__item_box {
    padding: min(15px, 1.171875vw) min(45px, 3.515625vw) min(15px, 1.171875vw) min(15px, 1.171875vw);
    font-size: min(14px, 1.09375vw);
  }
  .o-btn__page_top {
    right: min(30px, 2.34375vw);
    bottom: min(9px, 0.703125vw);
    width: min(68px, 5.3125vw) !important;
  }
  .o-btn__border_right_arrow {
    width: min(227px, 17.734375vw) !important;
    min-height: min(50px, 3.90625vw);
    margin-top: min(32px, 2.5vw);
    padding: min(10px, 0.78125vw) min(30px, 2.34375vw);
    background-position: right min(10px, 0.78125vw) center;
    background-size: min(20px, 1.5625vw) auto;
    font-size: min(16px, 1.25vw);
  }
  .o-btn__blue_left_arrow {
    margin-top: min(20px, 1.5625vw);
    padding-left: min(24px, 1.875vw);
    background-size: min(20px, 1.5625vw) auto;
    font-size: min(16px, 1.25vw);
  }
  .o-list__area_child {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    margin-top: min(40px, 3.125vw);
    gap: min(20px, 1.5625vw) min(20px, 1.5625vw);
  }
  .o-list__area_child.is-grade {
    grid-template-columns: 1fr 1fr;
  }
  .o-list__area_child_box {
    padding: min(10.4px, 0.8125vw) min(15px, 1.171875vw);
    gap: min(14px, 1.09375vw);
    border: min(2px, 0.15625vw) solid #3D392E;
    border-radius: min(8px, 0.625vw);
  }
  .o-list__area_child_box.is-no_posts {
    border: min(2px, 0.15625vw) solid #ABABAB;
  }
  .o-list__area_child_name {
    font-size: min(14px, 1.09375vw);
  }
  .o-list__area_child_count {
    font-size: min(14px, 1.09375vw);
  }
  .o-list__cat {
    gap: min(4px, 0.3125vw);
  }
  .o-list__cat > li > span, .o-list__cat > li > a {
    padding: 3.8px 9px;
    font-size: min(14px, 1.09375vw);
  }
  .o-pagenation {
    margin-top: min(40px, 3.125vw);
  }
  .o-pagenation__left_box {
    min-height: min(50px, 3.90625vw);
    padding: 0 min(15px, 1.171875vw) !important;
    border-radius: min(10px, 0.78125vw);
    font-size: min(14px, 1.09375vw) !important;
  }
  .o-pagenation__right .wp-pagenavi .current, .o-pagenation__right .wp-pagenavi a, .o-pagenation__right .wp-pagenavi .previouspostslink, .o-pagenation__right .wp-pagenavi .nextpostslink {
    width: min(35px, 2.734375vw) !important;
    min-height: min(35px, 2.734375vw);
    font-size: min(14px, 1.09375vw);
  }
  .o-pagenation__right .wp-pagenavi .previouspostslink, .o-pagenation__right .wp-pagenavi .nextpostslink {
    background-size: min(20px, 1.5625vw) auto;
  }
  .o-ttl__search {
    margin-bottom: min(10px, 0.78125vw);
  }
  .o-ttl__search_inner {
    padding-left: min(45px, 3.515625vw);
    background-position: left bottom;
    background-size: min(40px, 3.125vw) auto;
    font-size: min(24px, 1.875vw);
  }
  .o-ttl__archive_header {
    padding: 0 0 min(16px, 1.25vw);
    font-size: min(36px, 2.8125vw);
  }
  .o-ttl__single {
    margin-top: min(12px, 0.9375vw);
    font-size: min(40px, 3.125vw);
  }
  .o-ttl__left_border {
    margin-top: min(40px, 3.125vw);
    padding-left: min(15px, 1.171875vw);
    font-size: min(26px, 2.03125vw);
  }
  .o-ttl__left_border::before {
    width: min(5px, 0.390625vw);
    height: calc(100% - 0.2em);
  }
  .o-txt__search_care {
    display: flex;
    justify-content: center;
    margin-top: min(10px, 0.78125vw);
    color: #FFFFFF;
    font-size: min(14px, 1.09375vw);
  }
  .p-404__kv {
    height: min(330px, 25.78125vw);
    background-image: radial-gradient(circle at 0px 0px, rgba(255, 255, 255, 0.1) min(1.5px, 0.1171875vw), transparent min(3px, 0.234375vw)), radial-gradient(circle at min(10px, 0.78125vw) 0px, rgba(255, 255, 255, 0.1) min(1.5px, 0.1171875vw), transparent min(3px, 0.234375vw)), radial-gradient(circle at 0px min(10px, 0.78125vw), rgba(255, 255, 255, 0.1) min(1.5px, 0.1171875vw), transparent min(3px, 0.234375vw)), radial-gradient(circle at min(10px, 0.78125vw) min(10px, 0.78125vw), rgba(255, 255, 255, 0.1) min(1.5px, 0.1171875vw), transparent 1.5px);
    background-size: min(10px, 0.78125vw) min(10px, 0.78125vw);
  }
  .p-404__kv img {
    width: min(371px, 28.984375vw);
  }
  .p-404__cnt {
    padding: min(64px, 5vw) min(40px, 3.125vw) min(120px, 9.375vw);
  }
  .p-404__ttl {
    font-size: min(40px, 3.125vw);
  }
  .p-404__ttl_bottom {
    font-size: min(18px, 1.40625vw);
    line-height: 1.7;
  }
  .p-index__kv {
    max-width: 1440px;
    margin: 0 auto;
  }
  .p-index__bg_square {
    position: relative;
    margin-top: 0;
    overflow: hidden;
    background-image: linear-gradient(to right, rgba(219, 219, 219, 0.6) min(1px, 0.078125vw), transparent min(1px, 0.078125vw)), linear-gradient(to bottom, rgba(219, 219, 219, 0.6) min(1px, 0.078125vw), transparent min(1px, 0.078125vw));
    background-size: min(20px, 1.5625vw) min(20px, 1.5625vw);
  }
  .p-index__wave_left_top {
    display: block;
    position: absolute;
    top: min(96px, 7.5vw);
    left: max(-96px, -7.5vw);
    width: min(333px, 26.015625vw);
  }
  .p-index__cloud_right_top {
    display: block;
    position: absolute;
    top: min(136px, 10.625vw);
    right: max(-48px, -3.75vw);
    width: min(245px, 19.140625vw);
  }
  .p-index__cloud_left_middle {
    display: block;
    position: absolute;
    top: min(416px, 32.5vw);
    left: max(-112px, -8.75vw);
    width: min(354px, 27.65625vw);
  }
  .p-index__wave_right_middle {
    display: block;
    position: absolute;
    top: min(640px, 50vw);
    right: max(-120px, -9.375vw);
    width: min(333px, 26.015625vw);
  }
  .p-index__dot_left_bottom {
    display: block;
    position: absolute;
    top: min(944px, 73.75vw);
    left: max(-80px, -6.25vw);
    width: min(252px, 19.6875vw);
  }
  .p-index__cloud_right_bottom {
    display: block;
    position: absolute;
    top: min(864px, 67.5vw);
    right: max(-104px, -8.125vw);
    width: min(241px, 18.828125vw);
  }
  .p-index__cat1 {
    padding-top: min(100px, 7.8125vw);
  }
  .p-index__cat_ttl {
    padding-top: min(80px, 6.25vw);
    background-size: min(80px, 6.25vw) auto;
  }
  .p-index__cat_ttl_txt {
    font-size: min(48px, 3.75vw);
  }
  .p-index__cat_ttl_detail {
    margin-top: min(20px, 1.5625vw);
    font-size: min(18px, 1.40625vw);
  }
  .p-index__cat_ttl_detail.is-grade {
    font-size: min(18px, 1.40625vw);
  }
  .p-index__cat1_sub_ttl {
    margin-top: min(40px, 3.125vw);
  }
  .p-index__cat1_sub_ttl.is-cat_c {
    margin-top: min(88px, 6.875vw);
  }
  .p-index__cat1_sub_top {
    font-size: min(24px, 1.875vw);
  }
  .p-index__cat1_sub_top::before, .p-index__cat1_sub_top::after {
    width: min(1px, 0.078125vw);
    height: 1em;
  }
  .p-index__cat1_sub_bg_line {
    font-size: min(36px, 2.8125vw);
  }
  .p-index__cat1_list {
    grid-template-columns: min(230px, 17.96875vw) min(230px, 17.96875vw) min(230px, 17.96875vw) min(230px, 17.96875vw);
    margin-top: min(40px, 3.125vw);
    gap: 0 min(50px, 3.90625vw);
  }
  .p-index__cat1_list > li > a::after {
    transform: translate(min(15px, 1.171875vw), min(15px, 1.171875vw));
    border-radius: min(20px, 1.5625vw);
  }
  .p-index__cat1_list > li > a:hover img {
    transform: translate(min(15px, 1.171875vw), min(15px, 1.171875vw));
  }
  .p-index__cat1_list.is-cat_c {
    grid-template-columns: min(230px, 17.96875vw) min(230px, 17.96875vw) min(230px, 17.96875vw);
  }
  .p-index__cat2 {
    margin-top: min(160px, 12.5vw);
  }
  .p-index__map {
    margin-top: min(136px, 10.625vw);
    padding-bottom: min(184px, 14.375vw);
  }
  .p-index__button_box {
    width: min(1200px, 93.75vw);
    transform: translate(-50%, calc(-100% + min(3px, 0.234375vw)));
    border-top: min(3px, 0.234375vw) solid #3D392E;
    border-right: min(3px, 0.234375vw) solid #3D392E;
    border-left: min(3px, 0.234375vw) solid #3D392E;
    border-radius: min(20px, 1.5625vw) min(20px, 1.5625vw) 0 0;
  }
  .p-index__button_box.is-clm2 {
    width: min(575px, 44.921875vw);
  }
  .p-index__button_box.is-jp {
    transform: translate(max(-600px, -46.875vw), calc(-100% + min(3px, 0.234375vw)));
  }
  .p-index__button_box.is-world {
    transform: translate(min(25px, 1.953125vw), calc(-100% + min(3px, 0.234375vw)));
  }
  .p-index__map_button {
    min-height: min(95px, 7.421875vw);
    padding: min(10px, 0.78125vw);
  }
  .p-index__map_button_inner {
    font-size: min(32px, 2.5vw);
  }
  .p-index__map_box::before, .p-index__map_box::after {
    height: min(3px, 0.234375vw);
    transform: translateX(max(-605px, -47.265625vw));
  }
  .p-index__map_box::after {
    transform: translateX(min(605px, 47.265625vw));
  }
  .p-index__map_box_border {
    position: absolute;
    top: 0;
    left: 50%;
    width: min(35px, 2.734375vw);
    height: min(3px, 0.234375vw);
    transform: translate(max(-17px, -1.328125vw), 0);
    background-color: #3D392E;
  }
  .p-index__map_jp {
    position: relative;
    max-width: min(1200px, 93.75vw);
    margin: 0 auto;
  }
  .p-index__map_world {
    position: relative;
    max-width: min(1200px, 93.75vw);
    margin: 0 auto;
  }
  .p-index__map_column {
    margin: 0 auto;
  }
  .p-index__map_jp_img {
    max-width: min(670px, 52.34375vw);
    margin-top: min(55px, 4.296875vw);
  }
  .p-index__map_world_img {
    max-width: min(1200px, 93.75vw);
    margin-top: min(100px, 7.8125vw);
  }
  .p-index__map_border_box {
    position: absolute;
    max-width: min(311px, 24.296875vw) !important;
    border-radius: min(10px, 0.78125vw) min(20px, 1.5625vw) min(20px, 1.5625vw) min(20px, 1.5625vw);
  }
  .p-index__map_border_box::before, .p-index__map_border_box::after {
    display: block;
    position: absolute;
    content: "";
  }
  .p-index__map_border_box::after {
    width: min(16px, 1.25vw);
    height: min(16px, 1.25vw);
    border-radius: 50%;
  }
  .p-index__map_border_box.is-hokkaido {
    top: min(163px, 12.734375vw);
    right: min(77px, 6.015625vw);
    max-width: min(211px, 16.484375vw) !important;
    /* border: min(3px, 0.234375vw) solid #2A892F; */
    border: min(3px, 0.234375vw) solid #999;
  }
  .p-index__map_border_box.is-hokkaido::before, .p-index__map_border_box.is-hokkaido::after {
    /* background-color: #2A892F; */
    background-color: #999;
  }
  .p-index__map_border_box.is-hokkaido::before {
    top: min(20px, 1.5625vw);
    left: 0;
    width: min(119px, 9.296875vw);
    height: min(3px, 0.234375vw);
    transform: translate(-100%, -50%);
  }
  .p-index__map_border_box.is-hokkaido::after {
    top: min(20px, 1.5625vw);
    left: max(-119px, -9.296875vw);
    transform: translate(-50%, -50%);
  }
  .p-index__map_border_box.is-tohoku {
    top: min(286px, 22.34375vw);
    right: min(77px, 6.015625vw);
    /* border: min(3px, 0.234375vw) solid #4184D6; */
    border: min(3px, 0.234375vw) solid #999;
  }
  .p-index__map_border_box.is-tohoku::before, .p-index__map_border_box.is-tohoku::after {
    /* background-color: #4184D6; */
    background-color: #999;
  }
  .p-index__map_border_box.is-tohoku::before {
    top: min(24px, 1.875vw);
    left: 0;
    width: min(67px, 5.234375vw);
    height: min(3px, 0.234375vw);
    transform: translate(-100%, -50%);
  }
  .p-index__map_border_box.is-tohoku::after {
    top: min(24px, 1.875vw);
    left: max(-67px, -5.234375vw);
    transform: translate(-100%, -50%);
  }
  .p-index__map_border_box.is-kanto {
    top: min(430px, 33.59375vw);
    right: min(128px, 10vw);
    border: min(3px, 0.234375vw) solid #6F6CCA;
  }
  .p-index__map_border_box.is-kanto::before, .p-index__map_border_box.is-kanto::after {
    background-color: #6F6CCA;
  }
  .p-index__map_border_box.is-kanto::before {
    top: min(20px, 1.5625vw);
    left: 0;
    width: min(56px, 4.375vw);
    height: min(3px, 0.234375vw);
    transform: translate(-100%, -50%);
  }
  .p-index__map_border_box.is-kanto::after {
    top: min(20px, 1.5625vw);
    left: max(-56px, -4.375vw);
    transform: translate(-100%, -50%);
  }
  .p-index__map_border_box.is-chubu {
    top: min(53px, 4.140625vw);
    left: min(313px, 24.453125vw);
    max-width: min(295px, 23.046875vw) !important;
    border: min(3px, 0.234375vw) solid #769C2A;
  }
  .p-index__map_border_box.is-chubu::before, .p-index__map_border_box.is-chubu::after {
    background-color: #769C2A;
  }
  .p-index__map_border_box.is-chubu::before {
    right: min(24px, 1.875vw);
    bottom: 0;
    width: min(3px, 0.234375vw);
    height: min(173px, 13.515625vw);
    transform: translate(50%, 100%);
  }
  .p-index__map_border_box.is-chubu::after {
    right: min(24px, 1.875vw);
    bottom: max(-173px, -13.515625vw);
    transform: translate(50%, 50%);
  }
  .p-index__map_border_box.is-kinki {
    top: min(576px, 45vw);
    left: min(527px, 41.171875vw);
    /* border: min(3px, 0.234375vw) solid #B59100; */
    border: min(3px, 0.234375vw) solid #999;
  }
  .p-index__map_border_box.is-kinki::before, .p-index__map_border_box.is-kinki::after {
    /* background-color: #B59100; */
    background-color: #999;
  }
  .p-index__map_border_box.is-kinki::before {
    top: 0;
    left: min(12px, 0.9375vw);
    width: min(3px, 0.234375vw);
    height: min(40px, 3.125vw);
    transform: translate(-50%, -100%);
  }
  .p-index__map_border_box.is-kinki::after {
    top: max(-40px, -3.125vw);
    left: min(12px, 0.9375vw);
    transform: translate(-50%, -50%);
  }
  .p-index__map_border_box.is-chugoku {
    top: min(218px, 17.03125vw);
    left: min(190px, 14.84375vw);
    max-width: min(295px, 23.046875vw) !important;
    /* border: min(3px, 0.234375vw) solid #F16800; */
    border: min(3px, 0.234375vw) solid #999;
  }
  .p-index__map_border_box.is-chugoku::before, .p-index__map_border_box.is-chugoku::after {
    /* background-color: #F16800; */
    background-color: #999;
  }
  .p-index__map_border_box.is-chugoku::before {
    right: min(36px, 2.8125vw);
    bottom: 0;
    width: min(3px, 0.234375vw);
    height: min(104px, 8.125vw);
    transform: translate(50%, 100%);
  }
  .p-index__map_border_box.is-chugoku::after {
    right: min(36px, 2.8125vw);
    bottom: max(-104px, -8.125vw);
    transform: translate(50%, 50%);
  }
  .p-index__map_border_box.is-shikoku {
    top: min(361px, 28.203125vw);
    left: min(108px, 8.4375vw);
    /* border: min(3px, 0.234375vw) solid #F16678; */
    border: min(3px, 0.234375vw) solid #999;
  }
  .p-index__map_border_box.is-shikoku::before, .p-index__map_border_box.is-shikoku::after {
    /* background-color: #F16678; */
    background-color: #999;
  }
  .p-index__map_border_box.is-shikoku::before {
    right: min(4px, 0.3125vw);
    bottom: min(4px, 0.3125vw);
    width: min(3px, 0.234375vw);
    height: min(115px, 8.984375vw);
    transform: translate(100%, 100%) rotate(-35deg);
    transform-origin: left top;
  }
  .p-index__map_border_box.is-shikoku::after {
    right: max(-68px, -5.3125vw);
    bottom: max(-92px, -7.1875vw);
  }
  .p-index__map_border_box.is-kyushu {
    top: min(484px, 37.8125vw);
    left: 0;
    border: min(3px, 0.234375vw) solid #D05430;
  }
  .p-index__map_border_box.is-kyushu::before, .p-index__map_border_box.is-kyushu::after {
    background-color: #D05430;
  }
  .p-index__map_border_box.is-kyushu::before {
    top: min(24px, 1.875vw);
    right: 0;
    width: min(36px, 2.8125vw);
    height: min(3px, 0.234375vw);
    transform: translate(100%, -50%);
  }
  .p-index__map_border_box.is-kyushu::after {
    top: min(24px, 1.875vw);
    right: max(-36px, -2.8125vw);
    transform: translate(50%, -50%);
  }
  .p-index__map_parent {
    min-height: min(38px, 2.96875vw);
    padding: min(4px, 0.3125vw) min(14px, 1.09375vw);
    border-radius: min(4px, 0.3125vw) 0 min(10px, 0.78125vw) 0;
    font-size: min(16px, 1.25vw);
  }
  .p-index__map_parent::after {
    width: min(18px, 1.40625vw);
    height: min(18px, 1.40625vw);
    margin-left: min(2px, 0.15625vw);
  }
  .p-index__map_child_box {
    padding: min(13px, 1.015625vw) min(8px, 0.625vw) min(18px, 1.40625vw) min(22px, 1.71875vw);
  }
  .p-index__map_child {
    font-size: min(15px, 1.171875vw);
  }
  .p-index__map_child::after {
    padding: 0 0.4em;
  }
  .p-index__map_child:nth-child(4n)::after {
    padding: 0;
    content: none;
  }
  .p-index__map_child:nth-child(4n+1) {
    clear: left;
  }
  .p-index__map_child:nth-last-child(1)::after {
    padding: 0;
    content: none;
  }
  .p-index__posts {
    padding: min(40px, 3.125vw) 0 min(128px, 10vw);
  }
  .p-index__posts_wave {
    height: min(180px, 14.0625vw);
    background-position: center top;
    background-size: min(1440px, 112.5vw) auto;
  }
  .p-index__posts_cloud_left_top {
    display: block;
    position: absolute;
    top: min(256px, 20vw);
    left: max(-48px, -3.75vw);
    width: min(276px, 21.5625vw);
  }
  .p-index__posts_cloud_right_top {
    display: block;
    position: absolute;
    top: 0;
    right: max(-64px, -5vw);
    width: min(350px, 27.34375vw);
  }
  .p-index__posts_cloud_left_bottom {
    display: block;
    position: absolute;
    top: min(1056px, 82.5vw);
    left: max(-216px, -16.875vw);
    width: min(305px, 23.828125vw);
  }
  .p-index__posts_cloud_right_bottom {
    display: block;
    position: absolute;
    top: min(1400px, 109.375vw);
    right: max(-48px, -3.75vw);
    width: min(276px, 21.5625vw);
  }
  .p-index__posts_list {
    grid-template-columns: 1fr 1fr 1fr;
    gap: min(32px, 2.5vw);
  }
  .p-index__posts_list > li > a {
    border-radius: min(20px, 1.5625vw);
  }
  .p-index__posts_img:hover {
    opacity: 0.7;
  }
  .p-index__posts_ttl {
    margin-top: min(12px, 0.9375vw);
    padding: 0 min(20px, 1.5625vw);
    font-size: min(20px, 1.5625vw);
  }
  .p-index__cat_list {
    padding: min(12px, 0.9375vw) min(20px, 1.5625vw) min(20px, 1.5625vw);
    gap: min(4px, 0.3125vw);
  }
  .p-index__cat_list > li span[data-href] {
    padding: 3.8px 9px !important;
    font-size: min(14px, 1.09375vw) !important;
  }
  .p-index__map_border_world {
    position: absolute;
    justify-content: space-between;
    max-width: min(180px, 14.0625vw) !important;
    min-height: min(40px, 3.125vw);
    padding: 0 min(9px, 0.703125vw) 0 min(7px, 0.546875vw);
  }
  .p-index__map_border_world.is-asia {
    bottom: min(326px, 25.46875vw);
    left: min(528px, 41.25vw);
    /* border: min(3px, 0.234375vw) solid #769C2A; */
    border: min(3px, 0.234375vw) solid #999;
  }
  .p-index__map_border_world.is-europe {
    top: min(100px, 7.8125vw);
    left: min(137px, 10.703125vw);
    /* border: min(3px, 0.234375vw) solid #F16678; */
    border: min(3px, 0.234375vw) solid #999;
  }
  .p-index__map_border_world.is-africa {
    bottom: min(62px, 4.84375vw);
    left: min(104px, 8.125vw);
    /* border: min(3px, 0.234375vw) solid #B59100; */
    border: min(3px, 0.234375vw) solid #999;
  }
  .p-index__map_border_world.is-northamerica {
    top: min(179px, 13.984375vw);
    right: min(18px, 1.40625vw);
    border: min(3px, 0.234375vw) solid #4184D6;
  }
  .p-index__map_border_world.is-southamerica {
    right: min(198px, 15.46875vw);
    bottom: min(167px, 13.046875vw);
    /* border: min(3px, 0.234375vw) solid #6F6CCA; */
    border: min(3px, 0.234375vw) solid #999;
  }
  .p-index__map_border_world.is-oceania {
    bottom: min(30px, 2.34375vw);
    left: min(528px, 41.25vw);
    /* border: min(3px, 0.234375vw) solid #D05430; */
    border: min(3px, 0.234375vw) solid #999;
  }
  .p-index__map_border_world_txt {
    margin: 0 auto;
    font-size: min(16px, 1.25vw);
  }
  .p-index__map_border_world_arrow {
    position: static;
    width: min(24px, 1.875vw);
    height: min(24px, 1.875vw);
    transform: none;
  }
  .p-page__border_block {
    margin-top: min(40px, 3.125vw);
    padding: 0 min(40px, 3.125vw) min(40px, 3.125vw);
    border: min(3px, 0.234375vw) solid #3D392E;
    border-radius: min(20px, 1.5625vw);
  }
  .p-page__border_block a[target=_blank]::after {
    width: min(11px, 0.859375vw);
    height: min(10px, 0.78125vw);
    margin: 0 min(2px, 0.15625vw);
  }
  .p-page__terms_list {
    margin-top: min(16px, 1.25vw);
  }
  .p-page__terms_list > li {
    font-size: min(16px, 1.25vw);
  }
  .p-page__terms_list > li + li {
    margin-top: min(16px, 1.25vw);
  }
  .p-page__terms_bg {
    margin-top: min(24px, 1.875vw);
    padding: min(18px, 1.40625vw) min(30px, 2.34375vw) min(24px, 1.875vw);
    border-radius: min(10px, 0.78125vw);
    font-size: min(14px, 1.09375vw);
  }
  .p-page__terms_bg_ttl {
    margin-bottom: min(8px, 0.625vw);
    font-size: min(18px, 1.40625vw);
  }
  .p-single {
    margin-top: min(10px, 0.78125vw);
  }
  .p-single__ring {
    top: max(-8px, -0.625vw);
    width: min(769px, 60.078125vw);
  }
  .p-single__wrap {
    border: min(2px, 0.15625vw) solid #3D392E;
    border-radius: min(10px, 0.78125vw);
    background-image: linear-gradient(to right, rgba(219, 219, 219, 0.6) min(1px, 0.078125vw), transparent min(1px, 0.078125vw)), linear-gradient(to bottom, rgba(219, 219, 219, 0.6) min(1px, 0.078125vw), transparent min(1px, 0.078125vw));
    background-size: min(20px, 1.5625vw) min(20px, 1.5625vw);
  }
  .p-single__top_area {
    padding: min(64px, 5vw) min(38px, 2.96875vw) min(12px, 0.9375vw);
    background: linear-gradient(to bottom, #227FC4 min(38px, 2.96875vw), transparent min(38px, 2.96875vw));
  }
  .p-single__cnt {
    padding: min(20px, 1.5625vw) min(38px, 2.96875vw) min(50px, 3.90625vw);
  }
  .p-single__thumbnail.is-vertical img {
    width: auto;
    height: 100%;
    max-height: min(600px, 46.875vw);
  }
  .p-single__post_block p {
    margin-top: min(20px, 1.5625vw);
    font-size: min(16px, 1.25vw);
    line-height: 2;
  }
  .p-single__table_bg_blue {
    margin-top: min(20px, 1.5625vw);
    padding: min(22px, 1.71875vw) min(30px, 2.34375vw);
    border: min(2px, 0.15625vw) solid #3D392E;
    border-radius: min(20px, 1.5625vw);
  }
  .p-single__table_bg_blue table tbody tr td {
    padding: min(8px, 0.625vw) 0;
    font-size: min(15px, 1.171875vw);
  }
  .p-single__table_bg_blue table tbody tr td:nth-child(1) {
    padding-right: 1em;
  }
  .p-single__table_bg_blue table tbody tr td:nth-child(1)::after {
    width: min(1.5px, 0.1171875vw);
    height: calc(100% - 1.5em);
  }
  .p-single__table_bg_blue table tbody tr td:nth-last-child(1) {
    padding-left: 1em;
  }
  .p-single__dl_btn {
    width: min(534px, 41.71875vw) !important;
    min-height: min(70px, 5.46875vw);
    margin-top: min(40px, 3.125vw);
    padding: min(20px, 1.5625vw) min(30px, 2.34375vw);
  }
  .p-single__dl_btn_inner {
    padding-right: min(40px, 3.125vw);
    background-size: min(30px, 2.34375vw) auto;
    font-size: min(16px, 1.25vw);
    line-height: 1.7;
  }
  .p-single__bottom_terms {
    margin-top: min(24px, 1.875vw);
  }
  .p-single__bottom_terms_link {
    font-size: min(14px, 1.09375vw);
  }
  .inner {
    max-width: 1280px !important;
    padding: 0 min(40px, 3.125vw) !important;
  }
  #header_top .inner {
    position: relative !important;
    max-width: 1280px !important;
    height: min(87px, 6.796875vw) !important;
    padding: min(20px, 1.5625vw) min(40px, 3.125vw) !important;
  }
  #header_logo, #header_logo_fix {
    width: min(170px, 13.28125vw) !important;
  }
  #global_menu {
    display: flex !important;
    position: absolute !important;
    top: 50% !important;
    right: min(40px, 3.125vw) !important;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
    height: 100%;
    max-height: none !important;
    margin: 0 !important;
    transform: translateY(-50%);
  }
  #global_menu > ul {
    display: flex !important;
    margin: 0 !important;
    gap: 0 min(10px, 0.78125vw);
  }
  #global_menu > ul > li {
    display: flex !important;
    align-items: center;
  }
  #header_search, #index_header_search {
    padding: min(40px, 3.125vw) 0 !important;
  }
  #header_search .inner, #index_header_search .inner {
    padding: 0 min(40px, 3.125vw) !important;
  }
  #header_search form, #index_header_search form {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 min(20px, 1.5625vw);
  }
  .header_search_inputs {
    flex: 0 0 min(280px, 21.875vw);
    width: auto !important;
    margin: 0 !important;
  }
  .header_search_inputs input, .header_search_inputs select {
    font-size: min(16px, 1.25vw) !important;
  }
  .header_search_button {
    flex: 0 0 min(168px, 13.125vw);
    margin: 0 !important;
  }
  #header_search_submit {
    width: 100% !important;
    height: min(56px, 4.375vw) !important;
    padding: 0 min(24px, 1.875vw);
    background-position: right min(10px, 0.78125vw) center !important;
    background-size: min(20px, 1.5625vw) !important;
    font-size: min(16px, 1.25vw) !important;
  }
  .header_search_keywords #header_search_keywords {
    padding: min(14.34px, 1.1203125vw) min(20px, 1.5625vw) !important;
    border: min(2px, 0.15625vw) solid #3D392E;
    border-radius: min(10px, 0.78125vw);
  }
  .header_search_inputs select {
    padding: min(18px, 1.40625vw) min(40px, 3.125vw) min(18px, 1.40625vw) min(20px, 1.5625vw) !important;
    border: min(2px, 0.15625vw) solid #3D392E;
    border-radius: min(10px, 0.78125vw);
    background-position: right min(20px, 1.5625vw) center !important;
    background-size: min(20px, 1.5625vw) auto !important;
  }
  .header_search_inputs select option {
    padding: min(10px, 0.78125vw) !important;
  }
  .chosen-drop {
    border: min(2px, 0.15625vw) solid #3D392E !important;
    border-radius: 0 !important;
  }
  .chosen-drop .chosen-results {
    max-height: min(280px, 21.875vw) !important;
  }
  .chosen-drop .chosen-results .active-result, .chosen-drop .chosen-results .disabled-result {
    padding: min(8px, 0.625vw) min(20px, 1.5625vw) !important;
    font-size: min(16px, 1.25vw) !important;
  }
  .chosen-drop .chosen-results .active-result.level-1, .chosen-drop .chosen-results .disabled-result.level-1 {
    padding-left: 2em !important;
    text-indent: -1em !important;
  }
  .chosen-container-single .chosen-single {
    height: min(56px, 4.375vw) !important;
    padding: min(14.34px, 1.1203125vw) min(20px, 1.5625vw) !important;
    border: min(2px, 0.15625vw) solid #3D392E !important;
    border-radius: min(10px, 0.78125vw) !important;
    background-position: right min(20px, 1.5625vw) center !important;
    background-size: min(20px, 1.5625vw) auto !important;
  }
  .chosen-container-single .chosen-single > span {
    font-size: min(16px, 1.25vw) !important;
  }
  #main_col {
    padding: min(60px, 4.6875vw) 0 min(120px, 9.375vw) !important;
  }
  #footer_logo a {
    width: min(170px, 13.28125vw) !important;
  }
  #footer_bottom_menu {
    margin-top: min(40px, 3.125vw) !important;
  }
  #footer_bottom_menu ul {
    flex-direction: row;
    align-items: center;
    gap: 0 min(30px, 2.34375vw);
  }
  #footer_bottom_menu ul li a {
    padding-right: min(20px, 1.5625vw) !important;
    background-position: right center;
    background-size: min(11px, 0.859375vw) auto;
    font-size: min(16px, 1.25vw) !important;
  }
  #copyright {
    position: static !important;
    width: 100% !important;
    margin-top: min(30px, 2.34375vw) !important;
    font-size: min(12px, 0.9375vw) !important;
    text-align: center;
  }
  #left_col {
    width: min(860px, 67.1875vw);
  }
  #post_list2 {
    margin: min(20px, 1.5625vw) 0 0 !important;
    gap: min(20px, 1.5625vw) 0;
  }
  #post_list2 .article a {
    grid-template-columns: min(260px, 20.3125vw) 1fr;
    padding: min(30px, 2.34375vw) !important;
    gap: 0 min(32px, 2.5vw);
    border: min(2px, 0.15625vw) solid #3D392E !important;
    border-radius: min(16px, 1.25vw) !important;
  }
  #post_list2 .article a .info .meta li {
    gap: min(4px, 0.3125vw);
  }
  #post_list2 .article a .info .meta li + li {
    margin-top: min(5px, 0.390625vw) !important;
  }
  #post_list2 .article a .info .meta li .cat-category {
    padding: 3.8px 9px !important;
    font-size: min(14px, 1.09375vw) !important;
  }
  #post_list2 .article a .info .meta li .cat-category2 {
    padding: 3.8px 9px !important;
    font-size: min(14px, 1.09375vw) !important;
  }
  #post_list2 .article .title {
    margin: min(15px, 1.171875vw) 0 0 !important;
    font-size: min(20px, 1.5625vw) !important;
    line-height: 1.5 !important;
  }
}

@media (min-width: 1281px){
  .visible_to_xl {
    display: none;
  }
  .visible_xl {
    display: block;
  }
}

@media (min-width: 1441px){
  .visible_to_xxl {
    display: none;
  }
  .visible_xxl {
    display: block;
  }
	
}
