@charset "UTF-8";
body,
blockquote,
dd,
div,
dl,
dt,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
input,
li,
ol,
p,
pre,
ul,
table {
  margin: 0;
  padding: 0;
}

img {
  display: block;
  max-width: 100%;
}

a img,
fieldset {
  border: 0;
}

html {
  font-family: "メイリオ", Meiryo, "Hiragino Sans", "ヒラギノ角ゴシック",
    "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Yu Gothic", Arial,
    Helvetica, sans-serif;
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

* {
  font-family: inherit;
  font-size: inherit;
}

address,
cite,
del,
dfn,
em,
ins,
samp,
strong,
th,
var {
  font-style: normal;
  font-weight: 400;
}

a,
div,
h1,
h2,
h3,
h4,
h5,
h6,
p,
span {
  word-wrap: break-word;
  word-break: normal;
}

body,
p,
div,
span,
h1,
h2,
h3,
h4,
h5,
h6,
a,
dl,
dt,
dd,
ul,
li,
address,
em,
i,
tr,
td,
form,
input,
option,
select,
textarea,
button {
  box-sizing: border-box;
}

ol li,
ul li {
  list-style: none;
}

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

caption {
  text-align: left;
}

form {
  border: 0;
  background: transparent;
  vertical-align: baseline;
  outline: 0;
}

button,
input,
select,
textarea {
  position: relative;
  margin: 0;
  vertical-align: middle;
  -webkit-appearance: none;
  appearance: none;
}

input::-webkit-input-placeholder {
  font-weight: normal;
}

input:-ms-input-placeholder {
  font-weight: normal;
}

input::-ms-input-placeholder {
  font-weight: normal;
}

input::placeholder {
  font-weight: normal;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: 0;
}

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

button {
  padding: 0;
  border: none;
  color: inherit;
  font: inherit;
  background-color: transparent;
}

input[type="checkbox"],
input[type="checkbox"]:disabled,
input[type="radio"],
input[type="radio"]:disabled {
  background-color: initial;
  border: 0;
}

:any-link,
button:where(:enabled),
select:where(:enabled),
input:where(
    [type="button"]:enabled,
    [type="submit"]:enabled,
    [type="reset"]:enabled,
    [type="checkbox"]:enabled,
    [type="radio"]:enabled:not(:checked)
  ),
[role="button"]:where(:not([aria-disabled="true"])),
[role="link"]:where(:not([aria-disabled="true"])),
[role="tab"]:where(:not([aria-disabled="true"])) {
  cursor: pointer;
}

dialog {
  position: fixed;
  width: auto;
  height: auto;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  color: inherit;
  max-width: none;
  max-height: none;
  inset: initial;
  background-color: transparent;
}

dialog:not([open]) {
  display: none;
}

/* -------------------------------
utility

0〜50(+5px)
.uMarginTop
.uMarginRight
.uMarginBottom
.uMarginLeft
.uPaddingTop
.uPaddingRight
.uPaddingBottom
.uPaddingLeft

11〜30（20以降は偶数）
.uFontSize

.uDisplay
.uPositionRelative
.invisible
------------------------------- */
.uDisplayBlock {
  display: block !important;
}

.uDisplayInline {
  display: inline !important;
}

.uDisplayInlineBlock {
  display: inline-block !important;
}

.uPositionRelative {
  position: relative !important;
}

.uInvisible {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
}

/* emg.css 1.0.0 */
#emg,
#emg2,
#emg3 {
  margin-bottom: 10px;
  text-align: center;
}

#emg2 br {
  display: none;
}

#emg table,
#emg2 table,
#emg3 table {
  margin: 0 auto;
  text-align: left;
}

/* ie/mac \ */
/* /
#emg,
#emg2 {
	margin-left: 120px;
}
#emg3 {
	margin-left: 235px;
}
/  **/

.brandLayoutFull {
  padding: 0 10px;
  max-width: 1010px;
  margin: 0 auto;
}

a {
  color: #006acc;
  text-decoration: none;
  cursor: pointer;
}
a:hover {
  color: #1581e6;
  text-decoration: underline;
}
a:visited {
  color: #609;
  text-decoration: none;
}

img {
  vertical-align: bottom;
}

body {
  color: #333;
  font-size: 14px;
  line-height: 1.6;
}

sup {
  position: relative;
  top: -0.3em;
  font-size: 0.6em;
  line-height: 0;
  vertical-align: middle;
}

.Masthead {
  max-width: 1010px;
  margin: 0 auto;
  padding: 0 10px;
}

.compAnnounce__accordion,
.compAnnounce__text,
.compAnnounce__importantText--noIcon,
.compAnnounce__importantText {
  position: relative;
  padding: 10px 10px 10px 40px;
  border-radius: 4px;
  background-color: #fff;
}

.compAnnounce {
  padding: 0 10px 10px 10px;
  font-size: 14px;
  background-color: transparent;
  line-height: 1.6;
  margin: 0 auto;
  max-width: 1010px;
}
.compAnnounce + .compAnnounce {
  padding-top: 0;
}
.compAnnounce__importantText {
  border: 1px solid #e60013;
}
.compAnnounce__importantText--noIcon {
  padding: 10px;
  border: 1px solid #e60013;
}
.compAnnounce__text {
  border: 1px solid #0074b4;
}
.compAnnounce__noscriptText {
  padding: 10px;
  border: 1px solid #e60013;
  border-radius: 4px;
  background-color: #fff;
}
.compAnnounce__title {
  display: block;
  font-weight: bold;
  font-size: 16px;
  padding-bottom: 5px;
}
.compAnnounce__icon {
  position: absolute;
  top: 9px;
  left: 9px;
}
.compAnnounce__em {
  font-weight: bold;
}
.compAnnounce__accordion {
  padding: 0;
  border: 1px solid #0074b4;
}
.compAnnounce__accordion__toggle {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  position: initial;
  margin: -2px 0 0 5px;
  transition: 0.1s linear;
}
.compAnnounce__accordion__text {
  display: block;
  height: 0;
  overflow: hidden;
  padding: 0 10px 0 45px;
  transition: 0.1s linear;
}
.compAnnounce__accordion__label {
  display: flex;
  position: relative;
  padding: 10px 10px 10px 45px;
  align-items: center;
  font-weight: bold;
  font-size: 16px;
  justify-content: space-between;
  cursor: pointer;
}
.compAnnounce__accordion__label::after {
  position: absolute;
  top: 15px;
  right: 32px;
  font-weight: normal;
  font-size: 12px;
  content: "もっと見る";
}
.compAnnounce__accordion__input {
  display: none;
}
.compAnnounce__accordion__input:checked ~ .compAnnounce__accordion__text {
  visibility: visible;
  height: auto;
  padding: 0 10px 10px 45px;
  transition: 0.2s linear;
}

.compAnnounce__accordion__input:checked
  ~ .compAnnounce__accordion__label::after {
  content: "閉じる";
  position: absolute;
  top: 15px;
  right: 32px;
  font-weight: normal;
  font-size: 12px;
}

.compFooter {
  margin-top: 60px;
}
.compFooter__content {
  margin-top: 0;
  border-top: none;
  background-color: #008277;
}
.compFooter__content__inner {
  display: flex;
  padding: 20px 10px;
  flex-direction: column;
  gap: 8px 0;
  max-width: 1010px;
  margin: 0 auto;
}
.compFooter__menu {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0;
}
.compFooter__menu__item {
  position: relative;
}
.compFooter__menu__item:not(:last-child)::after {
  display: inline-block;
  position: static;
  width: 5px;
  height: 1px;
  margin: 0 5px;
  vertical-align: middle;
  content: "";
  background-color: #fff;
}
.compFooter__menu__item__link {
  display: inline-flex;
  align-items: center;
  height: auto;
  color: #fff;
  font-size: 14px;
}
.compFooter__menu__item__link:visited {
  color: #fff;
}
.compFooter__menu__item__link:hover {
  color: #fff;
}
.compFooter__copyright {
  font-size: 14px;
  text-align: center;
  color: #fff;
}

.ArticleTitle {
  font-size: 2.4rem;
  display: flex;
  width: 100%;
  align-items: flex-start;
  padding-top: 30px;
}

.ArticleDetails {
  display: flex;
  padding-top: 10px;
  justify-content: space-between;
  align-items: flex-end;
  align-self: stretch;
}
.ArticleMeta {
  color: #666;
  font-size: 1.6rem;
  text-align: left;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.SocialBox {
  display: flex;
}
.SocialBox li {
  margin-left: 10px;
  position: relative;
}
.SnsActions__icon {
  display: block;
  width: 36px;
  height: 36px;
}
.SocialBox li::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0);
  transition: 0.2s;
  pointer-events: none;
}
.SocialBox li:hover::after {
  background-color: rgba(255, 255, 255, 0.3);
}

.ImgWrap {
  margin-top: 10px;
  width: 100%;
  background-color: #f4f4f4;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 auto;
  box-sizing: border-box;
}
.ImgWrap img {
  width: 710px;
  height: auto;
  max-width: 100%;
  object-fit: contain;
}

.ImgWrapGraph {
  margin-top: 10px;
  width: 100%;
  background-color: #f4f4f4;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 auto;
  box-sizing: border-box;
}
.ImgWrapGraph img {
  width: 710px;
  height: auto;
  max-width: 100%;
  object-fit: contain;
}

.ImgCpt {
  color: #666;
  margin-top: 5px;
  font-size: 1.8rem;
}

.TextCpt {
  color: #666;
  margin-top: 20px;
  font-size: 1.2rem;
}

.ArticleBody .Note,
.ArticleBody p {
  font-size: 1.8rem;
  margin-top: 15px;
  max-inline-size: max-content;
}
.ArticleBody .Note__item,
.ArticleBody ul {
  font-size: 1.8rem;
  margin-top: 10px;
  position: relative;
  color: #333;
  padding-left: calc(1em + 1px);
  overflow-wrap: break-word;
}
.ArticleBody .Note__item + .ArticleBody .Note__item,
.ArticleBody ul + .ArticleBody ul {
  margin-top: 10px;
}
.ArticleBody .Note__item::before,
.ArticleBody ul::before {
  display: inline-block;
  position: absolute;
  left: 0;
  content: "・";
}
.ArticleBody .Note__numberList,
.ArticleBody ol {
  margin-top: 10px;
  padding-left: 2em;
}
.ArticleBody .Note__numberList li,
.ArticleBody ol li {
  font-size: 1.8rem;
  color: #333;
  overflow-wrap: break-word;
  list-style-type: decimal;
  margin-top: 10px;
}

.ArticleBody .Subtitle,
.ArticleBody h2 {
  display: flex;
  align-items: center;
  font-weight: bold;
  font-size: 2.2rem;
  padding-top: 40px;
}

.ArticleBody .SectionTitle,
.ArticleBody h3 {
  display: block;
  padding-left: 10px;
  margin-top: 30px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.6;
  position: relative;
}
.ArticleBody .SectionTitle::before,
.ArticleBody h3::before {
  background-color: #008277;
  border-radius: 0.3125rem;
  content: "";
  height: 2rem;
  left: 0;
  position: absolute;
  top: 0.45rem;
  vertical-align: middle;
  width: 4px;
}

.BukkenCassette {
  display: grid;
  grid-template-columns: 390px 1fr;
  column-gap: 10px;
  row-gap: 20px;
  padding: 10px;
  border-radius: 4px;
  border: 1px solid #ddd;
  margin-top: 10px;
}
.BukkenCassette a {
  text-decoration: none;
}
.BukkenCassette__image {
  grid-row: 1/3;
  width: 390px;
  height: 219px;
}
.BukkenCassette__image a {
  transition: 0.1s;
  display: flex;
}
.BukkenCassette__image a:hover {
  transition: 0.2s;
  opacity: 0.8;
  text-decoration: none;
}
.BukkenCassette__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.BukkenCassette__details {
  display: flex;
  flex-direction: column;
  grid-row: 1/2;
}
.BukkenCassette__specs__item {
  display: -webkit-box;
  font-size: 2rem;
  word-break: break-all;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}
.BukkenCassette__buttonBox {
  display: flex;
  flex-direction: column;
  grid-row: 2/3;
}
.BukkenCassette ul {
  margin: 0px;
  padding: 0;
}
.BukkenCassette ul::before {
  content: none;
}
.BukkenCassette__head h4 {
  display: -webkit-box;
  transition: 0.1s;
  color: #006acc;
  font-size: 2.4rem;
  font-weight: bold;
  word-break: break-all;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}
.BukkenCassette__head:visited {
  color: #006acc;
}
.BukkenCassette__head:hover {
  transition: 0.2s;
  opacity: 0.8;
  text-decoration: underline;
}
.BukkenCassette__specs {
  transition: 0.1s;
  margin-top: 10px;
}
.BukkenCassette__specs:hover {
  transition: 0.2s;
  opacity: 0.7;
  text-decoration: none;
}
.CvList {
  display: flex;
  gap: 10px;
  width: 100%;
}
.CvList li {
  width: 100%;
  height: 50px;
}
.ButtonReserve {
  height: 50px;
  align-items: center;
  background-color: #fff;
  border: 1px solid #ea5506;
  border-radius: 4px;
  box-shadow: inset 0 -2px 0 0 #e1e1e1;
  box-sizing: border-box;
  color: #ea5506;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  font-size: 2rem;
  font-weight: bold;
  height: 50px;
  justify-content: center;
  padding: 3px 5px;
  text-align: center;
  text-decoration: none;
}
.ButtonReserve:visited {
  color: #ea5506;
}
.ButtonReserve:hover {
  border: 1px solid #f08851;
  box-shadow: inset 0 -2px 0 0 #eaeaea;
  color: #f08851;
}
.ButtonInquiry {
  width: 240px;
  height: 50px;
  align-items: center;
  background-color: #ea5506;
  border: 1px solid #ea5506;
  border-radius: 4px;
  box-shadow: inset 0 -3px 0 0 #bc320e;
  box-sizing: border-box;
  color: #fff;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  font-size: 2rem;
  font-weight: bold;
  height: 50px;
  justify-content: center;
  padding: 2px;
  text-align: center;
  text-decoration: none;
}
.ButtonInquiry:visited {
  color: #fff;
}
.ButtonInquiry:hover {
  background-color: #f08851;
  border-color: #f08851;
  box-shadow: inset 0 -3px 0 0 #d07056;
  color: #fff;
}
.BukkenCassette p {
  font-size: 1.4rem;
  color: #666;
  padding-left: calc(1em + 1px);
  position: relative;
}
.BukkenCassette p::before {
  content: "※";
  display: inline-block;
  left: 0;
  position: absolute;
  top: -0.1rem;
}

.Writer {
  margin-top: 20px;
  border: 1px solid #ddd;
  padding: 12px;
  border-radius: 4px;
}
.Writer__name {
  font-weight: bold;
  font-size: 1.8rem;
}
.Writer__info {
  margin-top: 5px;
  font-size: 1.8rem;
}

.Attention {
  margin-top: 20px;
}
.Attention__title {
  display: block;
  padding-left: 10px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.6;
  position: relative;
}
.Attention__title::before {
  background-color: #008277;
  border-radius: 0.3125rem;
  content: "";
  height: 2.2rem;
  left: 0;
  position: absolute;
  top: 0.5rem;
  vertical-align: middle;
  width: 4px;
}
.Attention__item {
  font-size: 1.8rem;
  margin-top: 10px;
  position: relative;
  color: #333;
  padding-left: calc(1em + 1px);
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.Attention__item + .Attention__item {
  margin-top: 5px;
}
.Attention__item::before {
  display: inline-block;
  position: absolute;
  left: 0;
  content: "・";
}

.NavCtrl {
  margin: 0 auto;
  padding-top: 30px;
  width: 330px;
  font-weight: bold;
  font-size: 2rem;
}

.BackPage {
  display: flex;
  margin: 0 auto;
  justify-content: center;
  align-items: center;
  padding: 12px;
  font-weight: bold;
  font-size: 2rem;
  color: #333;
  border-radius: 4px;
  border: 1px solid #524939;
  background: #fff;
  box-shadow: 0px -3px 0px 0px #e1e1e1 inset;
}
.BackPage:visited {
  color: inherit;
}
.BackPage:hover,
.BackPage:visited:hover {
  transition: 0.2s;
  text-decoration: none;
  box-shadow: inset 0 -2px 0 0 #eaeaea;
  border: 1px solid #868074;
  color: #707070;
}

.ArticleOther {
  max-width: 990px;
  margin: 0 auto;
  padding-top: 20px;
}

.HeadingMedium {
  display: flex;
  width: 100%;
  margin-top: 20px;
  padding: 10px;
  align-items: flex-start;
  font-weight: bold;
  font-size: 1.8rem;
  background-color: #f4f4f4;
}

.ListWrap {
  border-bottom: 1px solid #d6d6d6;
  width: 100%;
}
.ListWrap a {
  display: flex;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-pack: center;
  justify-content: center;
  padding: 10px;
  text-decoration: none;
  color: inherit;
}
.ListWrap a:hover {
  transition: 0.2s;
  text-decoration: underline;
  color: #707070;
}
.ListWrap__thumb {
  margin-right: 10px;
  width: 96px;
  height: 96px;
  overflow: hidden;
}
.ListWrap__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: 100%;
  max-height: 100%;
}
.ListWrap__detail {
  color: #333;
  display: flex;
  flex: 1 1 0%;
  flex-flow: column wrap;
  -webkit-box-pack: center;
  justify-content: center;
  word-break: break-all;
}
.ListWrap__title {
  display: -webkit-box;
  overflow: hidden;
  font-size: 1.8rem;
  font-weight: bold;
  word-break: break-all;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.ListWrap__date {
  font-size: 1.6rem;
  margin-top: 5px;
}
