@charset "UTF-8";
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    プロパティ                                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    レスポンシブ 用の処理                         */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
.DefaultText, main .LinkList li, main ul:not([class]) li, main ol:not([class]) li, .SimpleTable tbody th, .SimpleTable tbody td, .DefaultTable tbody th, .DefaultTable tbody td, #MainContentsArea p:not([class]) {
  font-size: 1.45rem;
  text-justify: auto;
  margin-bottom: 0.6em;
}
.DefaultText:last-child, main .LinkList li:last-child, main ul:not([class]) li:last-child, main ol:not([class]) li:last-child, .SimpleTable tbody th:last-child, .SimpleTable tbody td:last-child, .DefaultTable tbody th:last-child, .DefaultTable tbody td:last-child, #MainContentsArea p:last-child:not([class]) {
  margin-bottom: 0;
}
.DefaultText em, main .LinkList li em, main ul:not([class]) li em, main ol:not([class]) li em, .SimpleTable tbody th em, .SimpleTable tbody td em, .DefaultTable tbody th em, .DefaultTable tbody td em, #MainContentsArea p:not([class]) em {
  font-weight: bold;
}
.DefaultText a, main .LinkList li a, main ul:not([class]) li a, main ol:not([class]) li a, .SimpleTable tbody th a, .SimpleTable tbody td a, .DefaultTable tbody th a, .DefaultTable tbody td a, #MainContentsArea p:not([class]) a {
  color: #ec6553 !important;
  font-weight: bold;
}

/* font
--------------------------------------------------- */
.FontDefault, .FacilityIntroductionBlock .BlockContents ul li .Heading .Sub, footer #FooterMenuArea .FooterMenuBlock, main #SideBarArea .DefaultBlock .BlockContents .Unit .Heading, header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd .SecondLinkList, header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li > a small,
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a small, header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphHeader .Heading, .PageNavigation p, .PageNavigation .TextOverFlowNone, .Caption, .Button, .GoPageTop p a .Label {
  font-family: "Meiryo", "Arial", "Century Gothic", sans-serif;
}

.FontSansSerif, body {
  font-family: "游ゴシック", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-feature-settings: "palt";
  font-weight: 500;
}

.FontSansSerif-Round, .StrongText {
  font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO";
  font-feature-settings: "palt";
  font-weight: 500;
}

/* IEでの微妙な上下のズレを軽減 */
.FontSerif {
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", "MS PMincho", "ＭＳＰ明朝", "MS Mincho", "ＭＳ明朝", serif;
  font-feature-settings: "palt";
  font-weight: 300;
}

/* IEで書体の高さがずれるため補足 */
.FontMonospace {
  font-family: "Osaka-mono", "MS Gothic", monospace;
}

.FontNumber, footer #FooterAuthorArea .FooterSecondMenuBlock .Copyright {
  font-family: "Arial";
  letter-spacing: 0.02em;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    Style Reset                                   */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote {
  margin: 0;
  padding: 0;
  font-size: 100%;
}

body {
  overflow-wrap: break-word;
  word-wrap: break-word;
}

body.TbView,
body.SpView {
  cursor: pointer;
}

address {
  font-style: normal;
}

em {
  font-style: normal;
}

img {
  border: none;
  vertical-align: bottom;
}

a:focus, *:focus {
  outline: none;
}

hr {
  border-top: 1px dotted #8c8b8b;
  border-bottom: 1px dotted #fff;
}

/* 自動文字サイズ調整をOFF iPod,iPhone,iPad用 */
html {
  -webkit-text-size-adjust: none;
}

/* ボックスサイズの算出方法を指定 */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* スクロール固定背景のがたつき防止 ie用 */
/*
html{
 overflow: hidden;
 height: 100%;
}
body{
 overflow: auto;
 height: 100%;
}
*/
/* 画像のレンダリングをバイキュービックで */
img {
  -ms-interpolation-mode: bicubic;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    Option Style                                  */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
.NoDisplay {
  display: none;
}

.Partition {
  display: none;
}

/* -----  Adjust Height Rendering  ----- */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  font-size: 0; /* firefox footer margin */
}

.clearfix {
  display: inline-block;
}

/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*                                                        */
/* ● template.css                                        */
/*                                                        */
/*    ・テンプレート                                      */
/*                                                        */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* SknTpl common ：共通の定義
--------------------------------------------------- */
.SknTpl {
  margin-top: 20px;
  margin-bottom: 20px;
}
.SknTpl:first-child {
  margin-top: 0;
}
.SknTpl:last-child {
  margin-bottom: 0;
}

.SknTplImageParagraph {
  /* ImageItem */
}
.SknTplImageParagraph .ImageItem {
  position: relative;
  width: 30%;
}
.SknTplImageParagraph .ImageItem .Image {
  display: block;
  text-align: center;
}
.SknTplImageParagraph .ImageItem .Image img {
  width: 100%;
}
.SknTplImageParagraph .ImageItem p + .Image {
  margin-top: 15px;
}
.SknTplImageParagraph .TextItem {
  width: 70%;
}
@media screen and (max-width: 599px) {
  .SknTplImageParagraph .TextItem {
    padding: 0;
  }
}
.SknTplImageParagraph.LargeImage .ImageItem {
  width: 50%;
}
.SknTplImageParagraph.LargeImage .TextItem {
  width: 50%;
}
.SknTplImageParagraph.SmallImage .ImageItem {
  width: 20%;
}
@media screen and (max-width: 599px) {
  .SknTplImageParagraph.SmallImage .ImageItem .Image {
    width: 40%;
  }
}
.SknTplImageParagraph.SmallImage .TextItem {
  width: 80%;
}
.SknTplImageParagraph.LeftImage .ImageItem {
  order: 1;
}
.SknTplImageParagraph.LeftImage .TextItem {
  order: 2;
  padding-left: calc(1rem * 2);
}
.SknTplImageParagraph.RightImage .ImageItem {
  order: 2;
}
.SknTplImageParagraph.RightImage .TextItem {
  order: 1;
  padding-right: calc(1rem * 2);
}
@media screen and (max-width: 599px) {
  .SknTplImageParagraph.AutoDirection > div + div {
    margin-top: 20px;
  }
  .SknTplImageParagraph.AutoDirection .ImageItem {
    order: inherit;
  }
  .SknTplImageParagraph.AutoDirection .TextItem {
    padding: 0;
    order: inherit;
  }
}

/* DecoratedBox Template ：装飾付きボックス
--------------------------------------------------- */
.DecoratedBox {
  margin: 15px 0;
  border-radius: 10px;
}
@media screen and (min-width: 600px), print {
  .DecoratedBox {
    padding: 17px 25px;
  }
}
@media screen and (max-width: 599px) {
  .DecoratedBox {
    padding: 17px;
  }
}

.DecoratedBox.Type1 {
  box-shadow: 0 0 8px 4px #FF9791;
  background-color: #FFF8F6;
}

.DecoratedBox.Type2 {
  box-shadow: 0 0 8px 4px #FFD97F;
  background-color: #FFFAEE;
}
.DecoratedBox.Type2 .Heading.Type2 {
  border-color: #FFD97F;
}

.DecoratedBox.Type3 {
  background: #fbf7f3;
  background: #f9f4ef;
}

.DecoratedBox.Type4 {
  border: 2px solid #fec8bd;
  background-color: #FFF8F6;
}

/* GetAdobeReaderBox
--------------------------------------------------- */
.GetAdobeReaderBox {
  padding: 10px;
  background: #f0f0f0;
  margin-top: 30px;
}
@media screen and (min-width: 600px), print {
  .GetAdobeReaderBox .ImageItem {
    float: left;
    width: 160px;
  }
}
@media screen and (min-width: 600px), print {
  .GetAdobeReaderBox .TextItem {
    margin-left: 170px;
  }
}
@media screen and (max-width: 599px) {
  .GetAdobeReaderBox .TextItem {
    margin-top: 1em;
  }
}
.GetAdobeReaderBox .TextItem p {
  font-size: 70%;
  line-height: 1.25;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*                                                        */
/* ● common_elements.css                                 */
/*    共通部品                                            */
/*    ・テキスト、リスト、テーブル、段組み、ボタン        */
/*                                                        */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* レスポンシブ 表示ON/OFF */
/* + + + + + レスポンシブ + + + + +  */
@media screen and (min-width: 600px), print {
  .hide-wide {
    display: none !important;
  }
}
@media screen and (max-width: 599px) {
  .hide-narrow {
    display: none !important;
  }
}
.ColorLine {
  color: #01af4a;
}
.ColorInstagram {
  color: #c70086;
}

@media screen and (min-width: 768px){
.SnsIcon{
  position: absolute;
  top: 42%;
  left: 28%;
  }
}

@media screen and (max-width: 767px) {
  .SnsIcon{
    position: relative;
    top: -1%;
    left: -3%;
    }
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   images                                         */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
img {
  max-width: 100%;
}

.Image {
  text-align: center;
}

.CookChill{
  position: relative;
  top:50%
}

@media screen and (max-width: 599px) {
  .ImageList .Image,
  .ImageItem .Image {
    max-width: 85vw;
    margin-left: auto;
    margin-right: auto;
  }
}

/* googlemap 内の画像は適用外 */
#GoogleMap img {
  max-width: none;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   video                                          */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
video {
  max-width: 100%;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Text and Heading                               */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 見出し common
--------------------------------------------------- */
.Heading {
  margin: 1em 0 0.75em;
  font-weight: 600;
}
.Heading img {
  vertical-align: middle;
}
.Heading[class*=Type] {
  line-height: 1.5;
  margin: 2em 0 0.75em;
}
.Heading[class]:first-child {
  margin-top: 0;
}
.Heading.Type1 {
  padding: 0.2em 0 0.2em 1.5em;
  border-bottom: 1px dotted #FF9791;
  font-size: 1.8rem;
  position: relative;
  margin-left: -5px;
}
.Heading.Type1:before {
  content: "\e806";
  font-family: "fontello";
  font-weight: normal;
  font-size: 2.1rem;
  color: #FF9791;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -0.5em;
  line-height: 1;
}
.Heading.Type2 {
  border-left: 6px solid #FF9791;
  padding: 0.25em 0px 0.25em 0.65em;
  margin-left: -4px;
  display: block;
  font-family: "ヒラギノ角ゴ Pro W3", "游ゴシック", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.Heading.Type3 {
  padding: 0.2em 0 0.2em 0.65em;
  border-left: 5px solid #eadfd3;
  font-size: 1.45rem;
}
.Heading.Type4 {
  padding: 0.15em 0 0.15em 0.65em;
  border-left: 6px double #FF9791;
  font-size: 1.45rem;
}
.Heading.Type5 {
  background: #FFF8F6;
  border: solid #FF9791 1px;
  padding: 0.65em 1em;
  font-size: 1.45rem;
}
.Heading.Type6 {
  border-bottom: 2px solid;
  padding: 0.35em 0;
  font-size: 1.45rem;
}

.AttemptBtn{
  display: block;
  max-width: 300px;
  width: 100%;
  margin: 0 auto;
  padding: 24px 5px;
  color: #fff;
  font-weight: bold;
  font-size: 19px;
  text-align: center;
  background-color: rgb(255, 153, 153);
  border-radius: 10px;
  border: none;
  box-shadow: 0 5px 0 0 rgb(249, 89, 89);
}

.AttemptBtn:hover{
  background-color: rgb(255, 153, 153);
  box-shadow: 0 0 10px rgba(0,0,0,0);
}

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

/* DefaultText
--------------------------------------------------- */
/* StrongText
--------------------------------------------------- */
.StrongText {
  color: #e6271d;
  font-size: 2.1rem;
  text-shadow: 0 0 10px #FF9791;
  margin: 0.5em 0;
}

/* NameText
--------------------------------------------------- */
.NameText {
  font-weight: 600 !important;
  font-size: 2.5rem;
}

/* blockquote
--------------------------------------------------- */
blockquote {
  position: relative;
  padding: 35px 15px 10px 15px;
  box-sizing: border-box;
  font-style: italic;
  background: #f5f5f5;
  color: #777777;
  border-left: 4px solid #9dd4ff;
  /*box-shadow: 0 2px 4px rgba(0, 0, 0, 0.14);*/
}

blockquote:before {
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 3px;
  content: "“";
  font-family: sans-serif;
  color: #9dd4ff;
  font-size: 30px;
  line-height: 1;
}

blockquote p {
  padding: 0;
  margin: 7px 0;
  line-height: 1.7;
}

blockquote cite {
  display: block;
  text-align: right;
  color: #888888;
  font-size: 0.9em;
}

/* tel link
--------------------------------------------------- */
/* Arrow
--------------------------------------------------- */
.Arrow.Large {
  font-size: 6rem;
  line-height: 1;
  color: #FF9791;
}
.SknTpl + .Arrow.Large {
  margin: -10px 0;
}
.Arrow.Large .Icon:before {
  line-height: 4rem;
}

/* sup
--------------------------------------------------- */
sup {
  font-size: x-small;
  line-height: 1.1;
}

/* 丸付き文字
--------------------------------------------------- */
.Circled {
  color: #282832;
  border: 1px solid #282832;
  background: #fff;
  border-radius: 3em;
  display: inline-block;
  width: 1.5em;
  width: calc(1.5em + 2px);
  line-height: 1.5em;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  background: #aba0d5;
  border-radius: 1.5em;
  display: inline-block;
  width: 1.5em;
  line-height: 1.5em;
  text-align: center;
  vertical-align: middle;
}

/* リスト（汎用）
--------------------------------------------------- */
/* ol: タイプ１ */
ol.Type1 {
  counter-reset: num;
  margin: 1.25em 0;
  list-style: none;
}

ol.Type1 > li,
ol.Type1 > li::before {
  vertical-align: top;
}

ol.Type1 > li {
  position: relative;
  margin: 0.75em 0;
  margin-left: 2em;
}

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

ol.Type1 > li::before {
  counter-increment: num;
  content: "（" counter(num) "）";
  font-weight: normal;
  position: absolute;
  right: 100%;
  top: 0;
}

/* ol: タイプ２ */
ol.Type2 {
  counter-reset: num;
  margin: 1.25em 0;
  list-style: none;
}

ol.Type2 > li,
ol.Type2 > li::before {
  vertical-align: top;
}

ol.Type2 > li {
  margin: 0.75em 0;
  margin-left: 2em;
  position: relative;
}

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

ol.Type2 > li::before {
  content: counter(num);
  counter-increment: num;
  border: 1px solid;
  border-radius: 50%;
  display: inline-block;
  text-align: center;
  width: 1.25em;
  transform: scale(0.8);
  line-height: 1.25;
  position: absolute;
  right: 100%;
  top: 0.625em;
}

/* ポイントリスト  */
.PointList {
  list-style: none;
  counter-reset: my-counter;
  margin-left: 0 !important;
  margin-bottom: 1.25em !important;
}

.PointList > li {
  position: relative;
  padding: 0.5em 0;
  padding-left: 6em;
  margin: 0;
  border-bottom: 1px solid #bbd7f4;
  line-height: 1.5;
}

.PointList > li::before {
  font-family: "Century Gothic", sans-serif;
  content: "POINT " counter(my-counter);
  counter-increment: my-counter;
  position: absolute;
  left: 0;
  display: inline-block;
  color: #fff;
  background: #447cb5;
  text-align: center;
  line-height: 1.5;
  border-radius: 0.25em;
  font-size: 75%;
  padding: 0.25em 0.5em;
  width: 5em;
  font-weight: 600;
}

.PointList > li::after {
  font-size: 75%;
  content: "";
  position: absolute;
  top: 1.375em;
  left: 6em;
  border-top: 0.3em solid transparent;
  border-left: 0.5em solid #447cb5;
  border-bottom: 0.3em solid transparent;
}

/* + + + + + レスポンシブ + + + + +  */
@media screen and (max-width: 599px) {
  .PointList > li {
    padding: 1em 0;
    padding-left: 5em;
  }
  .PointList > li::before,
  .PointList > li::after {
    font-size: 62.5%;
  }
  .PointList > li::after {
    top: 2.25em;
  }
}
/* フロー（手順）リスト : type1  */
.FlowList.Type1 {
  list-style: none;
  counter-reset: my-counter;
  margin-left: 0 !important;
}

.FlowList.Type1 > li {
  position: relative;
  padding: 0.75em 1em 0.75em 8em;
  margin: 1em 0;
  background: #eef;
  border-radius: 0.5em;
}

.FlowList.Type1 > li::before {
  /*font-family: "Century Gothic", sans-serif;*/
  font-family: "Impact", sans-serif;
  content: "STEP." counter(my-counter);
  counter-increment: my-counter;
  position: absolute;
  left: 1em;
  display: inline-block;
  color: #33c;
  white-space: nowrap;
  border-left: 1px solid;
  padding-left: 1em;
  letter-spacing: 0.05em;
}

.FlowList.Type1 > li:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: -0.7em;
  left: 50%;
  margin-left: -0.5em;
  z-index: 1;
  width: 8px;
  height: 8px;
  border-top: 2px solid #33c;
  border-right: 2px solid #33c;
  transform: rotate(135deg) translate3d(0, 0, 0);
}

/* + + + + + レスポンシブ + + + + +  */
@media screen and (max-width: 599px) {
  .FlowList.Type1 > li {
    padding-left: 1em;
  }
  .FlowList.Type1 > li::before {
    display: block;
    position: static;
    line-height: 1;
    margin: 0.5em 0;
  }
}
/* フロー（手順）リスト : type2  */
.FlowList.Type2 {
  list-style: none;
  counter-reset: my-counter;
  margin-left: -0.5em !important;
  margin-right: -0.5em !important;
}

.FlowList.Type2 > li > .inner {
  position: relative;
  padding: 0.75em 0.5em 1.5em;
  border: 1px solid #ccc;
  border-radius: 0.5em;
  margin: 0.5em 0.75em;
}

.FlowList.Type2 > li > .inner::before {
  /*font-family: "Impact", sans-serif;*/
  content: "STEP" counter(my-counter);
  font-weight: 600;
  font-size: 2rem;
  counter-increment: my-counter;
  display: block;
  color: #000;
  white-space: nowrap;
  margin: 0.25em 0;
  text-align: center;
}

.FlowList.Type2 > li {
  position: relative;
}

.FlowList.Type2 > li:not(:last-child)::after {
  font-family: "picticon";
  content: "\e807";
  position: absolute;
  top: 50%;
  left: 100%;
  z-index: 1;
  transform: scale(2);
  color: #0078d7;
  line-height: 1;
  margin-top: -0.5em;
}

.FlowList.Type2 > li .ImageItem {
  margin-bottom: 0.25em;
}

.FlowList.Type2 > li .ImageItem .Icon {
  font-size: 125%;
}

.FlowList.Type2 > li .ImageItem .Icon::before {
  font-size: 300%;
  color: #1d1d5b;
}

.FlowList.Type2 > li .ImageItem .icon-smartphone::before {
  font-size: 200%;
  position: relative;
  bottom: 0.1em;
}

html.ie .FlowList.Type2 > li .ImageItem .icon-smartphone::before {
  font-size: 3rem;
}

.FlowList.Type2 > li .ImageItem .icon-pc::before {
  position: relative;
  right: 0.1em;
}

.FlowList.Type2 > li .ImageItem .icon-track::before {
  position: relative;
  right: 0.1em;
}

.FlowList.Type2 > li .ImageItem .Banner {
  display: block;
}

.FlowList.Type2 > li .TextItem {
  line-height: 1.5em;
  min-height: 3.5em;
  font-size: 1.2rem;
}

.FlowList.Type2 > li .Balloon {
  position: absolute;
  right: 0%;
  bottom: 100%;
  margin-bottom: -0.875em;
  margin-right: -0.5em;
}

/* + + + + + レスポンシブ + + + + +  */
@media screen and (min-width: 600px), print {
  .FlowList.Type2 > li .ImageItem .Banner {
    position: absolute;
    width: 100%;
    bottom: -1em;
    left: -0.25em;
  }
}
@media screen and (max-width: 599px) {
  .FlowList.Type2 > li {
    width: 100% !important;
    max-width: 100% !important;
    margin: 1.75em 0;
  }
  .FlowList.Type2 > li:first-child {
    margin-top: 0.5em;
  }
  .FlowList.Type2 > li > .inner {
    margin: 0;
    padding: 0.75em 1.25em;
  }
  .FlowList.Type2 > li > .inner::before {
    text-align: left;
  }
  .FlowList.Type2 > li:not(:last-child)::after {
    top: 100%;
    left: 50%;
    content: "\e804";
    transform: scale(3);
    margin: 0;
    margin-top: 0.25em;
  }
  .FlowList.Type2 > li .Icon {
    font-size: 137.5%;
  }
  .FlowList.Type2 > li .TextItem {
    text-align: left;
    min-height: 0;
    font-size: 1.6rem;
  }
  .FlowList.Type2 > li .ImageItem {
    float: right;
    padding-left: 0.5em;
    margin-top: -1.75em;
    margin-right: -0.5em;
    margin-bottom: 0;
    width: 35%;
    text-align: center;
    white-space: nowrap;
  }
}
/* ※印付きリスト :  */
.AsteriskList {
  list-style: none;
  opacity: 0.75;
  margin-left: 1.5em;
}

.AsteriskList > li {
  position: relative;
}

.AsteriskList > li::before {
  content: "※";
  position: absolute;
  left: -1.25em;
  top: 0;
}

.AsteriskList li {
  margin: 0.25em 0;
}

/* NewsList （汎用リスト）
--------------------------------------------------- */
.NewsList {
  list-style: none;
  font-size: 1.6rem;
}

.NewsList li > .inner {
  padding: 0.5em 0;
}

.NewsList li .TextItem {
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
}

.NewsList li .TextItem,
.NewsList li .TextItem * {
  line-height: 1.375em;
}

.NewsList li .TextItem .Meta .Date {
  margin-right: 1em;
  color: #3fa9d0;
}

/* [NEW]を表示 */
.NewsList li .inner.New .TextItem .Title::after {
  content: "NEW";
  display: inline-block;
  color: #f00;
  border: 1px solid;
  padding: 0.125em 0.25em;
  line-height: 1;
  font-size: 75%;
}

/* + + + + + レスポンシブ + + + + +  */
@media screen and (min-width: 600px), print {
  .NewsList li .TextItem .Meta {
    min-width: 13.5em;
  }
}
@media screen and (max-width: 599px) {
  .NewsList li .inner {
    padding: 0.75em 0;
    border-bottom: 1px solid #ccc;
  }
  .NewsList li .TextItem {
    font-size: 93.25%;
    display: block;
  }
  .NewsList li .TextItem .Meta {
    margin-bottom: 0.5em;
  }
}
/* tooltip
--------------------------------------------------- */
.Tooltip {
  border-bottom: 1px dashed;
  cursor: pointer;
  margin: 0 0.25em;
  color: #2098d1;
}

.Tooltip::before {
  margin-right: 0.25em;
}

.Tooltip:hover,
.Tooltip:focus {
  border-bottom: none;
}

.ui-tooltip {
  box-shadow: none;
  color: #2098d1;
  background: white;
  border: 2px solid;
  width: 20em;
  max-width: 50%;
  padding: 20px;
  z-index: 100;
  text-align: left;
}

/* Balloon（フキダシ）
--------------------------------------------------- */
.Balloon.Type1 {
  margin: 0 auto;
  text-align: center;
  border-radius: 0.5em;
  border: 2px solid;
  background: #fff;
  color: #f58212;
  font-weight: 600;
  padding: 0.25em 0.5em;
  line-height: 1.25 !important;
}

/* FontSize
--------------------------------------------------- */
.FontSizeXLarge,
.DefaultText.FontSizeXLarge,
main .LinkList li.FontSizeXLarge,
main ul:not([class]) li.FontSizeXLarge,
main ol:not([class]) li.FontSizeXLarge,
.SimpleTable tbody th.FontSizeXLarge,
.SimpleTable tbody td.FontSizeXLarge,
.DefaultTable tbody th.FontSizeXLarge,
.DefaultTable tbody td.FontSizeXLarge,
#MainContentsArea p.FontSizeXLarge:not([class]) {
  font-size: 2.8rem !important;
  line-height: 1.3;
}

.FontSizeLarge,
.DefaultText.FontSizeLarge,
main .LinkList li.FontSizeLarge,
main ul:not([class]) li.FontSizeLarge,
main ol:not([class]) li.FontSizeLarge,
.SimpleTable tbody th.FontSizeLarge,
.SimpleTable tbody td.FontSizeLarge,
.DefaultTable tbody th.FontSizeLarge,
.DefaultTable tbody td.FontSizeLarge,
#MainContentsArea p.FontSizeLarge:not([class]) {
  font-size: 2.1rem !important;
}

.FontSizeLarger,
.DefaultText.FontSizeLarger,
main .LinkList li.FontSizeLarger,
main ul:not([class]) li.FontSizeLarger,
main ol:not([class]) li.FontSizeLarger,
.SimpleTable tbody th.FontSizeLarger,
.SimpleTable tbody td.FontSizeLarger,
.DefaultTable tbody th.FontSizeLarger,
.DefaultTable tbody td.FontSizeLarger,
#MainContentsArea p.FontSizeLarger:not([class]) {
  font-size: 1.8rem !important;
}

.FontSizeNormal,
.DefaultText.FontSizeNormal,
main .LinkList li.FontSizeNormal,
main ul:not([class]) li.FontSizeNormal,
main ol:not([class]) li.FontSizeNormal,
.SimpleTable tbody th.FontSizeNormal,
.SimpleTable tbody td.FontSizeNormal,
.DefaultTable tbody th.FontSizeNormal,
.DefaultTable tbody td.FontSizeNormal,
#MainContentsArea p.FontSizeNormal:not([class]) {
  font-size: 1.6rem !important;
}

.FontSizeSmaller,
.DefaultText.FontSizeSmaller,
main .LinkList li.FontSizeSmaller,
main ul:not([class]) li.FontSizeSmaller,
main ol:not([class]) li.FontSizeSmaller,
.SimpleTable tbody th.FontSizeSmaller,
.SimpleTable tbody td.FontSizeSmaller,
.DefaultTable tbody th.FontSizeSmaller,
.DefaultTable tbody td.FontSizeSmaller,
#MainContentsArea p.FontSizeSmaller:not([class]) {
  font-size: 1.45rem !important;
}

.FontSizeSmall,
.DefaultText.FontSizeSmall,
main .LinkList li.FontSizeSmall,
main ul:not([class]) li.FontSizeSmall,
main ol:not([class]) li.FontSizeSmall,
.SimpleTable tbody th.FontSizeSmall,
.SimpleTable tbody td.FontSizeSmall,
.DefaultTable tbody th.FontSizeSmall,
.DefaultTable tbody td.FontSizeSmall,
#MainContentsArea p.FontSizeSmall:not([class]) {
  font-size: 1.35rem !important;
}

.FontSizeXSmall,
.DefaultText.FontSizeXSmall,
main .LinkList li.FontSizeXSmall,
main ul:not([class]) li.FontSizeXSmall,
main ol:not([class]) li.FontSizeXSmall,
.SimpleTable tbody th.FontSizeXSmall,
.SimpleTable tbody td.FontSizeXSmall,
.DefaultTable tbody th.FontSizeXSmall,
.DefaultTable tbody td.FontSizeXSmall,
#MainContentsArea p.FontSizeXSmall:not([class]) {
  font-size: 1.25rem !important;
}

/* FontWeight
--------------------------------------------------- */
.FontWeightThin {
  font-weight: 100;
}

.FontWeightThinner {
  font-weight: 200;
}

.FontWeightNormal {
  font-weight: 400;
}

.FontWeightBolder {
  font-weight: 600;
}

.FontWeightBold {
  font-weight: 800;
}

.Bold {
  font-weight: 600;
}

/* Color
--------------------------------------------------- */
.ColorRed {
  color: #c33;
  color: #f00;
}

/* TextAlign
--------------------------------------------------- */
.TextAlignCenter,
.AlignCenter {
  text-align: center;
}

.TextAlignLeft,
.AlignLeft {
  text-align: left;
}

.TextAlignRight,
.AlignRight {
  text-align: right;
}

.TextAlignJustify {
  text-align: justify;
}

/* 縦書き */
.TextVertical {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

/* VerticalAlign
--------------------------------------------------- */
.VerticalAlignTop,
.VerticalAlignTop * {
  vertical-align: top;
}

.VerticalAlignMiddle,
.VerticalAlignMiddle * {
  vertical-align: middle;
}

.VerticalAlignBottom,
.VerticalAlignBottom * {
  vertical-align: bottom;
}

/* Float
--------------------------------------------------- */
.FloatLeft {
  float: left;
  margin-right: 15px;
}

.FloatRight {
  float: right;
  margin-left: 15px;
}

.FloatNone {
  float: none;
}

/* Clear
--------------------------------------------------- */
.ClearBoth {
  clear: both;
}

.ClearLeft {
  clear: left;
}

.ClearRight {
  clear: right;
}

.ClearNone {
  clear: none;
}

/* Padding
--------------------------------------------------- */
.PaddingBottom {
  padding-bottom: 1em;
}

.PaddingTop {
  padding-top: 1em;
}

.PaddingHorizontal {
  padding-left: 1em;
  padding-right: 1em;
}

.PaddingHorizontal {
  padding-left: 1em;
  padding-right: 1em;
}

.PaddingNone {
  padding: 0;
}

/* TextOverFlowNone
--------------------------------------------------- */
.TextOverFlowNone {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* InlineBlock
--------------------------------------------------- */
.InlineBlock {
  display: inline-block;
}

/* RoundCorner(DefaultValue)
--------------------------------------------------- */
.RoundCorner {
  border-radius: 10px;
}

.RoundCornerS {
  border-radius: 5px;
}

.RoundCornerL {
  border-radius: 15px;
}

/* DropShadow (DefaultValue)
--------------------------------------------------- */
.DropShadow {
  box-shadow: 0px 0px 5px #ccc;
}

/* AddBorder (DefaultValue)
--------------------------------------------------- */
.AddBorder {
  border: 1px solid #400000;
}

/* LetterSpacing
--------------------------------------------------- */
.LetterSpNarrowest {
  letter-spacing: -0.1em;
}

.LetterSpNarrow {
  letter-spacing: -0.05em;
}

.LetterSpNormal {
  letter-spacing: 0em;
}

.LetterSpWide {
  letter-spacing: 0.375em;
  text-indent: 0.375em;
}

.LetterSpWidest {
  letter-spacing: 0.75em;
  text-indent: 0.75em;
}

/* NoWrap
--------------------------------------------------- */
.NoWrap {
  white-space: nowrap;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   DropDown                                       */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ドロップダウン
--------------------------------------------------- */
.DropDownParent {
  position: relative;
}

.DropDownChild {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 80%;
  left: 0%;
  width: 100%;
  z-index: 50;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

.DropDownParent:hover .DropDownChild {
  visibility: visible;
  opacity: 1;
  top: 100%;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   MessageBox                                     */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* MessageBox
--------------------------------------------------- */
.MessageBox {
  padding: 25px 25px;
  margin: 1em auto;
  text-align: center;
  background: rgba(255, 255, 255, 0.5);
  border: 10px solid #eee;
  border-radius: 10px;
  position: relative;
}

.MessageBox .Heading {
  margin: 0 0 1em;
  line-height: 1.75;
  font-size: 100%;
}

.MessageBox .Heading .Label {
  margin-top: 50px;
  display: block;
}

.MessageBox .Heading .Icon {
  display: block;
}

.MessageBox .Heading .Icon::before {
  font-size: 175%;
}

.MessageBox .DefaultText, .MessageBox main .LinkList li, main .LinkList .MessageBox li, .MessageBox main ul:not([class]) li, main ul:not([class]) .MessageBox li, .MessageBox main ol:not([class]) li, main ol:not([class]) .MessageBox li, .MessageBox .SimpleTable tbody th, .SimpleTable tbody .MessageBox th, .MessageBox .SimpleTable tbody td, .SimpleTable tbody .MessageBox td, .MessageBox .DefaultTable tbody th, .DefaultTable tbody .MessageBox th, .MessageBox .DefaultTable tbody td, .DefaultTable tbody .MessageBox td, .MessageBox #MainContentsArea p:not([class]), #MainContentsArea .MessageBox p:not([class]) {
  text-align: center;
  line-height: 2;
  margin: 0;
}

/* + + + + + レスポンシブ + + + + +  */
@media screen and (max-width: 599px) {
  .MessageBox {
    width: 90%;
  }
  .MessageBox .Heading .Icon {
    padding-top: 1.5em;
  }
  .MessageBox .Heading .Label:first-child {
    margin-top: 20px;
  }
}
/* options */
.MessageBox.Caution {
  color: #222;
  color: inherit;
  background: #f5f47a;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   GoPageTop                                      */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
.GoPageTop {
  display: inline-block;
  line-height: 1;
  vertical-align: bottom;
  margin-left: -3.5em;
  text-align: center;
}
@media screen and (min-width: 600px), print {
  .GoPageTop {
    font-size: 65%;
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index: 100;
  }
}
@media screen and (max-width: 599px) {
  .GoPageTop {
    font-size: 45%;
    position: absolute;
    position: fixed;
    bottom: 10px;
    right: 10px;
    z-index: 50;
    display: none;
  }
}
.GoPageTop * {
  line-height: 1;
  vertical-align: bottom;
}
.GoPageTop p {
  display: inline-block;
}
.GoPageTop p a {
  width: 6.5em;
  height: 6.5em;
  text-align: center;
  vertical-align: middle;
  display: block;
  position: relative;
  font-weight: normal;
  border-radius: 100%;
  background: #fff;
}
.GoPageTop p a * {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.GoPageTop p a .Label {
  position: absolute;
  top: 45%;
  left: 0%;
  width: 100%;
  text-align: center;
  line-height: 1.125;
}
.GoPageTop p a .Icon {
  width: 100%;
  display: block;
  text-align: center;
  position: absolute;
  bottom: 60%;
}
.GoPageTop p a .Icon::before {
  font-size: 300%;
  margin-bottom: -0.125em;
}

.JumpTop {
  text-align: right;
  margin: 10px 0;
}
.JumpTop a {
  padding-left: 13px;
  background: url(../img/common/icon/cursor/right.png) no-repeat 0 50%;
  font-size: 75%;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Button 等                                      */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
.ButtonGroup {
  text-align: center;
}

.ButtonGroup li {
  display: inline-block;
  margin: 5px;
}

/* 共通設定 */
.Button {
  display: inline-block;
  text-align: center;
  cursor: pointer;
  position: relative;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  background-color: #3f0000;
  color: #fff;
  font-size: 1.1rem;
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 0.15em 0.5em 0.15em 1.5em;
  border-radius: 10px;
  letter-spacing: 0.05em;
}
.Button:after {
  content: "\e803";
  font-family: "fontello";
  color: #3f0000;
  background-color: #fff;
  border-radius: 100%;
  margin-left: 0.75em;
  width: 1em;
  height: 1em;
  line-height: 1.1;
  text-align: center;
  display: inline-block;
  box-sizing: border-box;
  padding-left: 0.1em;
}
.Button:hover {
  text-decoration: none;
  opacity: 0.9;
}
.Button.Pink {
  background-color: #fec8bd;
  color: #3f0000;
}
.Button.White {
  background-color: #fff;
  border: 1px solid #fec8bd;
  box-shadow: 3px 3px 0 #fec8bd;
  color: #3f0000;
}
.Button.Large {
  font-size: 1.6rem;
  padding: 0.75em 2em;
  font-weight: 500;
}
.Button.Large:after {
  background: none;
  margin-right: -1em;
}
.Button .Icon {
  text-indent: -1em;
}
.Button.Default {
  color: inherit;
  font-size: 1.35rem;
  background: #eadfd3;
  padding: 0.75em 2.5em;
  border-radius: 2.5em;
}
.Button.Default:after {
  color: #f9f4ef;
  background-color: #3f0000;
}
.Button.Border {
  font-size: 1.35rem;
  padding: 0.75em 2.5em;
  border: 1px solid;
  border-radius: 2.5em;
}
.Button.Back {
  color: inherit;
  background-color: #fff;
  position: relative;
}
.Button.Back:before {
  content: "\e802";
  font-family: "fontello";
  color: #3f0000;
  position: absolute;
  top: 50%;
  left: 0.75em;
  margin-top: -0.5em;
}
.Button.Back:after {
  content: none;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   メニュー系 Setting                             */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 汎用メニュー
--------------------------------------------------- */
/* MenuList */
.MenuList {
  list-style: none;
}

.MenuList li {
  margin: 0;
}

.MenuList li a {
  display: inline-block;
  position: relative;
}

/* BannerList
--------------------------------------------------- */
.BannerList {
  list-style: none;
  text-align: center;
}

.BannerList li {
  margin: 0 0 0.75em;
}

.BannerList li,
.BannerList li * {
  vertical-align: middle;
}

/* + + + + + レスポンシブ + + + + +  */
@media screen and (max-width: 599px) {
  .BannerList li {
    width: 46%;
    margin: 0 0 2% 2%;
    display: inline-block;
  }
  .BannerList li img {
    width: 100%;
  }
}
/* menu-trigger (開閉式メニュー)
--------------------------------------------------- */
.MenuTrigger {
  font-size: 62.5%;
  cursor: pointer;
}

.menu-trigger {
  position: relative;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.menu-trigger span {
  transition: all 0.4s;
}

.menu-trigger .Icon,
.menu-trigger .Label {
  display: block;
}

.menu-trigger .Label {
  text-align: center;
}

.menu-trigger .Icon {
  position: relative;
  width: 4em;
  height: 4em;
}

.menu-trigger .Icon span.Shape {
  display: inline-block;
  position: absolute;
  left: 0%;
  width: 100%;
  height: 4px;
  background-color: #92c530;
}

.menu-trigger .Icon span.Shape:nth-of-type(1),
.menu-trigger .Icon span.Shape:nth-of-type(2),
.menu-trigger .Icon span.Shape:nth-of-type(3) {
  margin-top: -2px;
}

.menu-trigger .Icon span.Shape:nth-of-type(1) {
  top: 20%;
}

.menu-trigger .Icon span.Shape:nth-of-type(2) {
  top: 50%;
}

.menu-trigger .Icon span.Shape:nth-of-type(3) {
  top: 80%;
}

/* hover */
.menu-trigger:hover,
.menu-trigger:focus {
  text-decoration: none;
}

/* Active */
.menu-trigger.Active .Icon span.Shape:nth-of-type(1) {
  -webkit-transform: rotate(-315deg);
  transform: rotate(-315deg);
  top: 50%;
}

.menu-trigger.Active .Icon span.Shape:nth-of-type(2) {
  opacity: 0;
}

.menu-trigger.Active .Icon span.Shape:nth-of-type(3) {
  -webkit-transform: rotate(315deg);
  transform: rotate(315deg);
  top: 50%;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    pagination                                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* pagination
--------------------------------------------------- */
.pagination {
  text-align: center !important;
  background: #f9f4ef;
  margin: 1em 0 !important;
  font-size: 87.5%;
  line-height: inherit !important;
  border-radius: 30px;
}
.pagination .pagination-numbers > span {
  padding: 0.5em 0;
  display: inline-block !important;
}
.pagination a {
  background-image: none;
  text-decoration: none !important;
  font-family: "Arial";
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  line-height: 2em !important;
  width: 2.5em;
  padding: 0;
  background: #fec8bd;
  color: #3f0000;
  margin: 2px;
}
.pagination a:hover {
  font-family: "Arial";
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  line-height: 2em;
  width: 2.5em;
  padding: 0;
  background: #3f0000;
  color: #fff;
  margin: 2px;
}
.pagination .disabled, .pagination .current {
  font-family: "Arial";
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  line-height: 2em !important;
  width: 2.5em;
  padding: 0;
  background: #fff;
  color: #3f0000;
  border: 2px solid #fec8bd;
  margin: 2px !important;
  float: none !important;
}
.pagination a:before {
  line-height: inherit;
}
.pagination .number a:hover {
  color: #fff;
  background-color: #eadfd3;
  border-color: #eadfd3;
  text-decoration: none;
}
.pagination .current {
  color: #fff;
  background: #FF9791 !important;
  border: 2px solid #FF9791;
  line-height: 1.5em;
}
.pagination .next,
.pagination .prev {
  margin: 0 !important;
  text-decoration: none;
  border: none !important;
  float: none !important;
}
.pagination .disabled {
  color: #fff;
  background: #eadfd3;
  border-color: #f9f4ef;
}

#contentsNavi {
  margin-top: 30px;
}
@media screen and (min-width: 600px), print {
  #contentsNavi {
    color: #eadfd3;
  }
}
@media screen and (max-width: 599px) {
  #contentsNavi {
    font-size: 87.5%;
    color: #fff;
  }
}
#contentsNavi a {
  padding: 0 5px 0 13px;
  color: #3f0000;
}
#contentsNavi a:not([class]):before {
  content: "\e803";
  font-family: "fontello";
  margin-right: 0.5em;
}
@media screen and (max-width: 599px) {
  #contentsNavi a {
    display: block;
    padding: 0.5em;
  }
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   link                                           */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
a {
  text-decoration: none;
  color: inherit;
  transition: 0.3s ease-out 0s;
}
a:before, a:after {
  transition: 0.3s ease-out 0s;
}

/* 画像へのリンクなら「＋」を表示 */
a[href*=".jpg"]::before {
  content: "＋";
  font-size: 150%;
  line-height: 1.5em;
  width: 1.5em;
  background: #0e3382;
  color: #fff;
  position: absolute;
  text-align: center;
  vertical-align: middle;
  z-index: 10;
  display: inline-block;
  bottom: 5px;
  right: -5px;
  opacity: 0;
}
a[href*=".jpg"]:hover::before {
  opacity: 1;
  right: 5px;
}
a[href]:hover img {
  opacity: 0.75;
}
a[href*=".jpg"] {
  position: relative;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   アイコン 等                                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* アイコンに下線が付くのを回避 */
.Icon,
.Icon::before {
  text-decoration: none !important;
}

.Icon.icon-line_app_android_rgb:before {
  color: #06C755;
  margin: 0.4em;
  display: inline-block;
}

/*
.Icon.icon-instagram:before {
  background-image: url(../img/icon/icon-instagram.png);
}
*/
.Icon.icon-help-circled::before {
  color: #4b4;
  color: #339;
}

/* icon position left  */
.icon-pos-left {
  position: absolute;
  left: 0.5em;
  right: auto;
  top: 50%;
  margin: 0;
  margin-top: -0.5em;
}

[class^=icon-].icon-pos-left:before,
[class*=" icon-"].icon-pos-left:before {
  margin: 0;
}

/* icon position right  */
.icon-pos-right {
  position: absolute;
  left: auto;
  right: 0.5em;
  top: 50%;
  margin: 0;
  margin-top: -0.5em;
}

[class^=icon-].icon-pos-right:before,
[class*=" icon-"].icon-pos-right:before {
  margin: 0;
}

/* icon position bottom */
.icon-pos-bottom {
  position: absolute;
  left: 50%;
  bottom: 0.25em;
  margin: 0;
  margin-left: -0.5em;
}

/* icon position top */
.icon-pos-top {
  padding-top: 1em;
  display: block;
}

.icon-pos-top.FontSizeXLarge {
  font-size: 300%;
  padding-bottom: 0.125em;
  margin-bottom: 0.25em;
  border-bottom: 1px solid rgba(125, 125, 125, 0.5);
}

[class^=icon-].icon-pos-top:before,
[class*=" icon-"].icon-pos-top:before {
  display: block;
  text-align: center;
  margin: 0 auto 0.25em;
}

/* 特殊なアイコン用のスタイル */
.icon-file-pdf::before,
.icon-file-excel::before,
.icon-file-word::before,
.icon-file-image::before,
.icon-file-archive::before {
  width: 1em;
  line-height: 1em;
}

.icon-file-pdf::before {
  color: #bb0708 !important;
}

.icon-file-excel::before {
  color: #12824b !important;
}

.icon-file-word::before {
  color: #3b67a7 !important;
}

.icon-file-image::before {
  color: #fff !important;
}

.icon-file-archive::before {
  color: #30b4df !important;
}

/* アイコンの色調整 .TextList を上書き */
.SknTplTextList ul.TextList > li .Icon.icon-file-pdf::before {
  color: #ffffff !important;
  background: #ee0708 !important;
}

.SknTplTextList ul.TextList > li .Icon.icon-file-excel::before {
  color: #ffffff !important;
  background: #12824b !important;
}

.SknTplTextList ul.TextList > li .Icon.icon-file-word::before {
  color: #ffffff !important;
  background: #3b67a7 !important;
}

.SknTplTextList ul.TextList > li .Icon.icon-file-archive::before {
  color: #ffffff !important;
  background: #30b4df !important;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Table Setting [Common]                         */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* DefaultTable
--------------------------------------------------- */
.DefaultTable {
  width: 100%;
  margin: 10px 0;
  border: none;
  border-collapse: collapse;
  border-top: 1px solid #cabeb3;
}
.DefaultTable thead th {
  background: #ffe3df;
  font-size: 62.5%;
  font-weight: normal;
  border-bottom: 1px solid #cabeb3;
  text-align: center;
  padding: 5px 0;
  white-space: nowrap;
}
.DefaultTable tbody th, .DefaultTable tbody td {
  padding: 0.5em 0.75em;
  border-color: #cabeb3;
  border-bottom: 1px solid #cabeb3;
  margin-bottom: 0;
}
.DefaultTable tbody th {
  background: #eadfd3;
  font-weight: 550;
}

/* SimpleTable
--------------------------------------------------- */
.SimpleTable {
  width: 100%;
  margin: 10px 0;
  border: none;
  border-collapse: collapse;
  border-top: 1px solid #eadfd3;
}
.SimpleTable thead th {
  font-size: 62.5%;
  font-weight: normal;
  border-bottom: 1px solid #eadfd3;
  text-align: center;
  padding: 5px 0;
  white-space: nowrap;
}
.SimpleTable tbody th, .SimpleTable tbody td {
  padding: 0.5em 0.75em;
  border-color: #eadfd3;
  border-bottom: 1px solid #eadfd3;
}
.SimpleTable tbody th {
  font-weight: normal;
  vertical-align: top;
}

.FlexParent {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
}
.FlexParent.AllowWrap {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.FlexParent:not(.AllowWrap) > li {
  margin-bottom: 0;
}
@media screen and (min-width: 600px), print {
  .FlexParent[class*=FlexColumn].Padding {
    margin-left: -1rem;
    margin-right: -1rem;
  }
}
@media screen and (max-width: 599px) {
  .FlexParent[class*=FlexColumn].Padding {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
  }
}
@media screen and (min-width: 600px), print {
  .FlexParent[class*=FlexColumn].Padding > * {
    padding: 0 1rem;
    padding-top: calc(1rem * 0.5);
    padding-bottom: calc(1rem * 0.5);
  }
}
@media screen and (max-width: 599px) {
  .FlexParent[class*=FlexColumn].Padding > * {
    padding: 0 0.5rem;
    padding-top: calc(0.5rem * 0.5);
    padding-bottom: calc(0.5rem * 0.5);
  }
}
.FlexParent.FlexColumn1 > * {
  width: 100%;
}
@media screen and (min-width: 600px), print {
  .FlexParent.FlexColumn1 > *:not(:last-child) {
    margin-bottom: 1em;
  }
}
.FlexParent.FlexColumn2 > * {
  width: 50%;
}
.FlexParent.FlexColumn3 > * {
  width: 33.3%;
}
.FlexParent.FlexColumn4 > * {
  width: 20%;
}
.FlexParent.FlexColumn5 > * {
  width: 20%;
}
.FlexParent.FlexColumn6 > * {
  width: 16.66%;
}
@media screen and (max-width: 599px) {
  .FlexParent.SpFlexColumn1 > * {
    width: 100%;
  }
  .FlexParent.SpFlexColumn1 > *:not(:last-child) {
    margin-bottom: 1.5em;
  }
  .FlexParent.SpFlexColumn2 > * {
    width: 50%;
  }
  .FlexParent.SpFlexColumn3 > * {
    width: 33.3%;
  }
  .FlexParent.SpFlexColumn4 > * {
    width: 25%;
  }
  .FlexParent.SpFlexColumn5 > * {
    width: 20%;
  }
}
@media screen and (min-width: 600px), print {
  .FlexParent.AutoDirection {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}
@media screen and (max-width: 599px) {
  .FlexParent.AutoDirection {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .FlexParent.AutoDirection > * {
    width: 100% !important;
  }
}
.FlexParent.ImageList {
  margin-left: calc(-1rem / 2);
  margin-right: calc(-1rem / 2);
}
.FlexParent.ImageList > * {
  padding: calc(1rem / 2);
}
.FlexParent.ImageList .ImageItem {
  text-align: center;
}
.FlexParent.ImageList .ImageItem .Image {
  overflow: hidden;
  margin: 0 auto 5px;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 600px), print {
  .FlexParent.ImageList .ImageItem .Image {
    width: 250px;
    height: 152px;
  }
}
.FlexParent.ImageList .TextItem .Heading + p {
  margin-top: 0.5em;
}
.FlexParent.ImageList .TextItem .DefaultText, .FlexParent.ImageList .TextItem main .LinkList li, main .LinkList .FlexParent.ImageList .TextItem li, .FlexParent.ImageList .TextItem main ul:not([class]) li, main ul:not([class]) .FlexParent.ImageList .TextItem li, .FlexParent.ImageList .TextItem main ol:not([class]) li, main ol:not([class]) .FlexParent.ImageList .TextItem li, .FlexParent.ImageList .TextItem #MainContentsArea p:not([class]), #MainContentsArea .FlexParent.ImageList .TextItem p:not([class]), .FlexParent.ImageList .TextItem .DefaultTable tbody th, .DefaultTable tbody .FlexParent.ImageList .TextItem th, .FlexParent.ImageList .TextItem .DefaultTable tbody td, .DefaultTable tbody .FlexParent.ImageList .TextItem td, .FlexParent.ImageList .TextItem .SimpleTable tbody th, .SimpleTable tbody .FlexParent.ImageList .TextItem th, .FlexParent.ImageList .TextItem .SimpleTable tbody td, .SimpleTable tbody .FlexParent.ImageList .TextItem td {
  font-size: 1.35rem;
}
.FlexParent.Flow > *:not(:last-child) {
  position: relative;
}
.FlexParent.Flow > *:not(:last-child):after {
  content: "\e814";
  font-family: "fontello";
  position: absolute;
  left: 100%;
  top: 50%;
  margin-top: -0.5rem;
  margin-left: -2.9rem;
  font-size: 6rem;
  line-height: 1rem;
  color: #FF9791;
  z-index: 100;
}
@media screen and (max-width: 599px) {
  .FlexParent.Flow > *:not(:last-child):after {
    margin-left: -2rem;
    font-size: 4rem;
  }
}
.FlexParent.Flow.FlexColumn4 > *:not(:last-child):after, .FlexParent.Flow.FlexColumn5 > *:not(:last-child):after, .FlexParent.Flow.FlexColumn6 > *:not(:last-child):after {
  margin-left: -1.5rem;
  font-size: 3rem;
}
@media screen and (max-width: 599px) {
  .FlexParent.Flow.AutoDirection > *:not(:last-child):after {
    content: "\e813";
    font-size: 5rem;
    height: 4rem;
    line-height: 4rem;
    position: static;
    text-align: center;
    width: 100%;
    margin: 0;
    display: block;
  }
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Other Setting                                  */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* GoogleMap
--------------------------------------------------- */
.GoogleMap {
  outline: 5px solid #fff;
}

iframe[src*=google] {
  width: 100%;
}
@media screen and (max-width: 599px) {
  iframe[src*=google] {
    height: 67vw !important;
    max-height: 100%;
  }
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    サイト共通 細かい要素の装飾定義               */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   images                                         */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
.ImageGraph {
  border: 1px solid #ccc;
  padding: 25px 30px;
  text-align: center;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   List Setting [Common]                          */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
ul.DefaultText, ol.DefaultText, dl.DefaultText {
  line-height: 1.5;
  margin: 0.5em 0 0.5em 1.5em;
}

main ul:not([class]), main ol:not([class]), main dl:not([class]) {
  margin: 0.25em 0 0.25em 1.5em;
}
main ul[class], main ol[class] {
  list-style: none;
}
main .LinkList {
  list-style: none;
}
main .LinkList li a:before {
  content: "\e803";
  font-family: "fontello";
  margin-right: 0.5em;
}
main .InfoList {
  list-style: none;
}
main .InfoList li {
  padding: 20px 0;
  background: url(../img/common/decoration/deco_line_1px.png) repeat-x left bottom;
}
main .InfoList li:last-child {
  background: none;
}
main .InfoList li .ListHeader .Date {
  font-weight: normal;
  font-size: 75%;
}
main .InfoList li .ListHeader .Icon {
  padding-left: 3px;
}
main .InfoList li .ListHeader .Heading {
  display: block;
  font-weight: 600;
  margin: 0.5625em 0 0.25em;
  font-size: 100%;
}
main .InfoList li .ListHeader .Heading a {
  background: url(../img/common/icon/cursor/right.png) no-repeat 0% 50%;
  min-height: 21px;
  padding: 5px 0 5px 15px;
}
main .InfoList li .ListContents .DefaultText, main .InfoList li .ListContents #MainContentsArea p:not([class]), #MainContentsArea main .InfoList li .ListContents p:not([class]), main .InfoList li .ListContents .DefaultTable tbody th, .DefaultTable tbody main .InfoList li .ListContents th, main .InfoList li .ListContents .DefaultTable tbody td, .DefaultTable tbody main .InfoList li .ListContents td, main .InfoList li .ListContents .SimpleTable tbody th, .SimpleTable tbody main .InfoList li .ListContents th, main .InfoList li .ListContents .SimpleTable tbody td, .SimpleTable tbody main .InfoList li .ListContents td, main .InfoList li .ListContents ul:not([class]) li, main ul:not([class]) .InfoList li .ListContents li, main .InfoList li .ListContents ol:not([class]) li, main ol:not([class]) .InfoList li .ListContents li, main .InfoList li .ListContents .LinkList li, main .LinkList .InfoList li .ListContents li {
  margin: 0;
}

/* AttentionText
--------------------------------------------------- */
/* Caption
--------------------------------------------------- */
.Caption {
  display: block;
  font-size: 1.15rem;
  line-height: 1.5;
  display: block;
  margin-top: 0.5em;
  text-align: center;
}

/* PhoneNumberText
--------------------------------------------------- */
.PhoneNumberText {
  color: inherit;
  font-size: 175%;
  font-family: "Arial";
  vertical-align: baseline;
  white-space: nowrap;
}

/* tel link
--------------------------------------------------- */
/* sup
--------------------------------------------------- */
sup {
  font-size: x-small;
  line-height: 1.1;
}

/* PageNavigation（パンくず）
--------------------------------------------------- */
.PageNavigation {
  border-bottom: 1px solid #eadfd3;
}
@media screen and (min-width: 600px), print {
  .PageNavigation {
    padding: 0 0 15px;
    margin: 0 0 15px;
  }
}
@media screen and (max-width: 599px) {
  .PageNavigation {
    padding: 0 0 10px;
    margin: 0 0 10px;
  }
}
.PageNavigation p, .PageNavigation .TextOverFlowNone {
  opacity: 0.8;
}
@media screen and (min-width: 600px), print {
  .PageNavigation p, .PageNavigation .TextOverFlowNone {
    font-size: 70%;
  }
}
@media screen and (max-width: 599px) {
  .PageNavigation p, .PageNavigation .TextOverFlowNone {
    font-size: 1rem;
  }
}
.PageNavigation p a, .PageNavigation .TextOverFlowNone a {
  color: inherit !important;
  font-weight: normal !important;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   TabMenu Setting                                */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* TabMenu （Type1:装飾付き）
--------------------------------------------------- */
.TabMenu {
  padding: 30px;
  background: rgba(90, 85, 85, 0.75);
}
.TabMenu ul {
  list-style: none;
}
.TabMenu ul > li {
  display: block;
  float: left;
  /* width: 20%;  幅はcolumnで指定 */
}
.TabMenu ul > li a {
  display: block;
  padding: 1.25em 0 1em;
  background: #fff;
  text-align: center;
  border: 1px solid #e0e0e0;
}
.TabMenu ul > li .Label .Main {
  display: block;
  font-size: 100%;
  line-height: 2;
  letter-spacing: 0.125em;
  font-weight: 600;
}
.TabMenu ul > li .Label .Sub {
  display: block;
  font-size: 62.5%;
  line-height: 1.5;
  color: #aaa;
  letter-spacing: 0.125em;
}
.TabMenu ul > li:not(.Active) a:hover {
  cursor: pointer;
  background: #eee;
}
.TabMenu ul > li:not(.Active) a:hover .Sub {
  color: #685894;
}
.TabMenu ul > li.Invalid {
  display: none !important;
}
.TabMenu ul > li a.Invalid {
  /*opacity: 0.1!important;*/
  /*cursor: default!important;*/
}
.TabMenu ul > li a.Invalid:hover {
  cursor: default !important;
  background: #fff !important;
}
.TabMenu ul > li a.Invalid:hover .Sub {
  color: #aaa;
}
.TabMenu ul > li.Active a {
  color: #fff;
  background: #222;
  border-color: #f90;
}
.TabMenu ul > li.Active .Sub {
  color: #f90;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Column Setting                                 */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ColumnGroup
--------------------------------------------------- */
.ColumnGroup * {
  box-sizing: border-box;
}
.ColumnGroup > .Column {
  width: 100%;
  margin: 0 auto 2em;
}
.ColumnGroup > .Column > .inner {
  padding: 10px;
}

/* - - column common - -  */
/* 要素数をクラス名に持たせて自動配置 ※ulにクラス名をつけて使用  */
/* ColumnGroup（数字）elements が横並び数                         */
/* FixedNumber をつけた場合は数を固定。それ以外は幅に応じて変化   */
/* - - two columns - - */
body .ColumnGroup4elements > .Column:nth-child(1n), body .ColumnGroup3elements > .Column:nth-child(1n), body.rsbp-over-bp3 .ColumnGroup2elements > .Column:nth-child(1n), body:not([class*=rsbp]) .ColumnGroup2elements > .Column:nth-child(1n), body[class*=rsbp] .ColumnGroup2elements.FixedNumber > .Column:nth-child(1n) {
  width: 50%;
  float: left;
  margin-bottom: 0;
}
body .ColumnGroup6elements > .Column:nth-child(1n), body .ColumnGroup5elements > .Column:nth-child(1n) {
  width: 33.3%;
  float: left;
  margin-bottom: 0;
}
body.rsbp-over-bp3 .ColumnGroup4elements > .Column:nth-child(1n), body.rsbp-over-bp3 .ColumnGroup3elements > .Column:nth-child(1n) {
  width: 33.3%;
  float: left;
  margin-bottom: 0;
}
body:not([class*=rsbp]) .ColumnGroup3elements > .Column:nth-child(1n), body[class*=rsbp] .ColumnGroup3elements.FixedNumber > .Column:nth-child(1n) {
  width: 33.3%;
  float: left;
  margin-bottom: 0;
}
body.rsbp-over-bp3 .ColumnGroup6elements > .Column:nth-child(1n), body.rsbp-over-bp3 .ColumnGroup5elements > .Column:nth-child(1n) {
  width: 25%;
  float: left;
  margin-bottom: 0;
}
body.rsbp-over-bp2 .ColumnGroup4elements > .Column:nth-child(1n), body:not([class*=rsbp]) .ColumnGroup4elements > .Column:nth-child(1n), body[class*=rsbp] .ColumnGroup4elements.FixedNumber > .Column:nth-child(1n) {
  width: 25%;
  float: left;
  margin-bottom: 0;
}
body.rsbp-over-bp2 .ColumnGroup6elements > .Column:nth-child(1n), body.rsbp-over-bp2 .ColumnGroup5elements > .Column:nth-child(1n) {
  width: 20%;
  float: left;
  margin-bottom: 0;
}
body:not([class*=rsbp]) .ColumnGroup5elements > .Column:nth-child(1n), body[class*=rsbp] .ColumnGroup5elements.FixedNumber > .Column:nth-child(1n) {
  width: 20%;
  float: left;
  margin-bottom: 0;
}
body.rsbp-over-bp1 .ColumnGroup6elements > .Column:nth-child(1n), body:not([class*=rsbp]) .ColumnGroup6elements > .Column:nth-child(1n), body[class*=rsbp] .ColumnGroup6elements.FixedNumber > .Column:nth-child(1n) {
  width: 16.6%;
  float: left;
  margin-bottom: 0;
}

.ColumnGroup > .Column .Image {
  text-align: center;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Icon Setting                                   */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 特殊なアイコン用のスタイル */
.icon-file-pdf::before, .icon-file-excel::before, .icon-file-word::before, .icon-file-image::before, .icon-file-archive::before {
  width: 1.25em;
  line-height: 1.25em;
}

.icon-file-pdf::before {
  color: #fff !important;
  background: #bb0708 !important;
}

.icon-file-excel::before {
  color: #fff !important;
  background: #02723b !important;
}

.icon-file-word::before {
  color: #fff !important;
  background: #2b5797 !important;
}

.icon-file-image::before {
  color: #fff !important;
  background: #222 !important;
}

.icon-file-archive::before {
  color: #fff !important;
  background: #222063 !important;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Other Setting                                  */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/* Scrollable 横スクロール
--------------------------------------------------- */
.Scrollable {
  overflow: auto;
  position: relative;
}
@media screen and (max-width: 599px) {
  .Scrollable {
    margin-right: -12px;
    padding-right: 12px;
    padding-bottom: 10px;
  }
  .Scrollable:before {
    content: "▼横にスクロールしてご確認ください";
    display: inline-block;
    background-color: #f9f4ef;
    border-radius: 2em;
    padding: 0.1em 1em;
    font-size: 75%;
    line-height: 1;
  }
}
.Scrollable > table {
  width: 700px;
  /* ここはスクロール対象の最大幅を入れる */
  margin-bottom: 0 !important;
}
.Scrollable th {
  white-space: nowrap;
}
.Scrollable::-webkit-scrollbar {
  height: 1em;
  margin-top: 5px;
}
.Scrollable::-webkit-scrollbar-track, .Scrollable::-webkit-scrollbar-track-piece:start, .Scrollable::-webkit-scrollbar-track-piece:end {
  background: #eee;
}
.Scrollable::-webkit-scrollbar-thumb {
  background: #FF9791;
  border-radius: 10px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*                                                        */
/* ● hamburger-menu.css                                   */
/*                                                        */
/*                                                        */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
body.MenuOpen {
  z-index: 0;
}
@media screen and (min-width: 600px), print {
  body.MenuOpen {
    overflow: hidden;
  }
}

@media screen and (max-width: 599px) {
  #HamburgerMenu {
    position: fixed;
    z-index: 10000;
    top: 0;
    right: 0%;
  }
}
#HamburgerMenu input#MenuToggle {
  display: none;
}
#HamburgerMenu .MenuContents {
  transition: opacity 0.25s, visibility 0.25s;
}
@media screen and (max-width: 599px) {
  #HamburgerMenu .MenuContents {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    background-color: rgba(242, 207, 200, 0.975);
    visibility: hidden;
    opacity: 0;
  }
  #HamburgerMenu .MenuContents > .inner {
    width: 300px;
    margin: 50px auto 100px;
    max-width: 90%;
  }
  #HamburgerMenu .MenuContents > .inner .Title {
    width: 150px;
  }
  #HamburgerMenu .MenuContents > .inner .MenuList {
    position: relative;
    text-align: center;
    padding: 25px 0;
  }
  #HamburgerMenu .MenuContents > .inner .MenuList ul {
    transition: all 0.25s;
    transform: translateY(0%);
  }
  #HamburgerMenu .MenuContents .hide-hamburger {
    display: none;
  }
}
#HamburgerMenu .MenuContents label {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 30px;
  height: 30px;
  cursor: pointer;
  background-size: 100%;
}
@media screen and (max-width: 599px) {
  #HamburgerMenu #MenuToggle:checked ~ .MenuEffects {
    visibility: visible;
    transition: opacity 0.25s;
    opacity: 1;
  }
  #HamburgerMenu #MenuToggle:checked ~ .MenuEffects .MenuList ul {
    opacity: 1;
  }
  #HamburgerMenu #MenuToggle:checked ~ .Hamburger {
    background: none;
  }
  #HamburgerMenu #MenuToggle:checked ~ .Hamburger .Open {
    background-color: transparent;
  }
  #HamburgerMenu #MenuToggle:checked ~ .Hamburger .Open:before {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    content: "";
    transform: rotate(45deg);
  }
  #HamburgerMenu #MenuToggle:checked ~ .Hamburger .Open:after {
    position: relative;
    z-index: 1;
    top: 0;
    right: 0;
    content: "";
    transform: rotate(-45deg);
  }
  #HamburgerMenu #MenuToggle:not(:checked) ~ .MenuEffects .MenuList {
    transform: translateY(-30%);
  }
}
@media screen and (min-width: 600px), print {
  #HamburgerMenu .Hamburger {
    display: none;
  }
}
@media screen and (max-width: 599px) {
  #HamburgerMenu .Hamburger {
    display: block;
    position: relative;
    top: 0;
    right: 0;
    display: block;
    cursor: pointer;
    font-size: 100%;
    width: calc(3.6em + 0.2em);
    height: 3.6em;
    padding: calc(0.25 * 3.6em) 1.05em;
    z-index: 100000;
    background: #fff;
  }
}

#HamburgerMenu .Open {
  position: relative;
  display: block;
  width: 24px;
  height: 4px;
  border-radius: 2px;
  background-color: #3f0000;
  transition: all 0.3s ease;
  width: 100%;
  height: 3px;
  top: 8px;
  cursor: pointer;
}
body.FV #HamburgerMenu .Open {
  background-color: #ffffff;
}
#HamburgerMenu .Open:before, #HamburgerMenu .Open:after {
  position: relative;
  display: block;
  width: 24px;
  height: 4px;
  border-radius: 2px;
  background-color: #3f0000;
  transition: all 0.3s ease;
  width: 100%;
  height: 3px;
}
body.FV #HamburgerMenu .Open:before, body.FV #HamburgerMenu .Open:after {
  background-color: #ffffff;
}
#HamburgerMenu .Open:before {
  top: -9px;
  content: "";
  transform: rotate(0deg);
}
#HamburgerMenu .Open:after {
  top: 6px;
  content: "";
}
@media screen and (max-width: 599px) {
  #HamburgerMenu .Open {
    width: 26px;
    height: 2.5px;
  }
  #HamburgerMenu .Open:before, #HamburgerMenu .Open:after {
    width: 26px;
    height: 2.5px;
  }
}
#HamburgerMenu .Text {
  font-size: 0.8rem;
  white-space: nowrap;
  padding-top: 18px;
  display: block;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*                                                        */
/* ● format.css                                          */
/*    サイト共通部                                        */
/*    ・ページの共通定義、ほか、ヘッダ・フッタ等          */
/*                                                        */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
body {
  text-align: left;
  overflow-wrap: break-word;
  word-wrap: break-word;
  margin: 0 auto;
  min-width: 400px;
  position: relative;
  color: #3f0000;
  background: #FAF2E8 url(../img/common/decoration/body_bg.png);
}

/* rem の基準フォントサイズ */
html {
  font-size: 62.5%;
}

body {
  font-size: 1.6em;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    基本レイアウト                                */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
.PageWidthSetter {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 600px), print {
  .PageWidthSetter {
    width: 1050px;
  }
}
@media screen and (max-width: 599px) {
  .PageWidthSetter {
    max-width: initial;
    width: 96%;
  }
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    Header                                        */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
header {
  margin-bottom: 20px;
}
header #SiteHeaderArea {
  position: relative;
}
@media screen and (min-width: 600px), print {
  header #SiteHeaderArea {
    padding: 20px 0;
  }
}
@media screen and (max-width: 599px) {
  header #SiteHeaderArea {
    padding-top: 10px;
  }
}
header #SiteHeaderArea .SiteTitleBlock .BlockHeader .Heading {
  margin: 0;
}
@media screen and (min-width: 600px), print {
  header #SiteHeaderArea .SiteTitleBlock .BlockHeader .Heading {
    width: 300px;
    float: left;
  }
}
@media screen and (max-width: 599px) {
  header #SiteHeaderArea .SiteTitleBlock .BlockHeader .Heading {
    width: 175px;
  }
}
header #SiteHeaderArea .SiteTitleBlock .BlockHeader .IconList {
  list-style: none;
  font-family: "fontello";
  position: fixed;
  right: calc((3.6em + 0.2em) * 2 + 3%);
  top: 10px;
  z-index: 1000;
}
header #SiteHeaderArea .SiteTitleBlock .BlockHeader .IconList li {
  font-size: 120%;
  margin-left: 0.8em;
}
header #SiteHeaderArea .SiteTitleBlock .BlockHeader .IconList li a {
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2;
  border-radius: 100%;
  text-align: center;
  background-color: rgba(253, 202, 193, 0.95);
  padding-left: 1px;
}

header #SiteHeaderArea .SiteTitleBlock .BlockHeader .IconList li a[href*=enquiry] {
  width: 5.2em;
  border-radius: 0.75em;
  background-color: #fff;
  border: 1px solid #fec8bd;
  box-shadow: 3px 3px 0 #fec8bd;
  position: relative;
}
header #SiteHeaderArea .SiteTitleBlock .BlockHeader .IconList li a[href*=enquiry] .Icon {
  display: inline-block;
  top: -2px;
  position: relative;
}
header #SiteHeaderArea .SiteTitleBlock .BlockHeader .IconList li a[href*=enquiry] .Icon.icon-line_app_android_rgb {
  font-size: 120%;
  line-height: 1;
  vertical-align: middle;
  top: -3px;
}

.Icon-MobileInstagram{
  position: relative;
  top: -27%;
  right: 4%;
}

header #SiteHeaderArea .SiteTitleBlock .BlockHeader .IconList li a[href*=enquiry] .Icon.icon-line_app_android_rgb:before {
  margin: 0 0 0 0.15em;
}
@media screen and (min-width: 600px), print {
  header #SiteHeaderArea .SiteTitleBlock .BlockContents {
    width: 650px;
    float: right;
  }
}
header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph {
  position: relative;
}
header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphHeader .Heading {
  line-height: 1.25;
}
@media screen and (min-width: 600px), print {
  header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphHeader .Heading {
    font-size: 1.15rem;
    text-align: right;
    margin: 0 0 10px;
    font-weight: bold;
  }
}
@media screen and (max-width: 599px) {
  header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphHeader .Heading {
    font-size: 0.95rem;
    margin: 20px 0 0;
    font-weight: normal;
  }
}
header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphContents .ImageBox p {
  text-align: right;
}
header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphContents .ImageBox * {
  vertical-align: middle;
}
header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphContents .ImageBox p .Enquiry {
  margin-left: 15px;
}
header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphContents .ImageBox p .Enquiry a {
  display: inline-block;
  font-size: 90%;
  font-weight: bold;
  background-color: rgba(255, 255, 255, 0.5);
  border: 2px solid #3f0000;
  padding: 0 1em;
  border-radius: 2em;
}
header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphContents .ImageBox p .Enquiry a:hover {
  background-color: rgba(255, 255, 255, 0.85);
}
header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphContents .ImageBox p .Enquiry a .Icon {
  font-size: 150%;
  line-height: 1;
  vertical-align: middle;
  position: relative;
  top: -1px;
}
header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphContents .ImageBox p .Enquiry a .Icon.icon-mail-alt {
  color: #FF9791;
}
header #SiteHeaderArea .SiteTitleBlock .BlockContents .Paragraph .ParagraphContents .ImageBox p .Enquiry a .Icon.icon-mail-alt:before {
  margin: 0.4em;
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock {
    background: url(../img/common/menu/bg.png) no-repeat 0% 0%;
    height: 60px;
  }
}
header .HeaderMenuArea .MainMenuBlock #RecruitMenu {
  position: fixed;
  z-index: 1000;
  top: 0;
  right: calc(3.6em + 0.2em);
  width: calc(3.6em + 0.2em);
  height: 3.6em;
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock #RecruitMenu {
    display: none;
  }
}
header .HeaderMenuArea .MainMenuBlock #RecruitMenu p {
  width: 100%;
  height: 100%;
}
header .HeaderMenuArea .MainMenuBlock #RecruitMenu a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0.5em 0;
  color: #fff;
  white-space: nowrap;
  text-align: center;
  background: #ff2f9b;
  background: -moz-linear-gradient(-45deg, #ff2f9b 60%, #ffed54 100%);
  background: -webkit-linear-gradient(-45deg, #ff2f9b 60%, #ffed54 100%);
  background: linear-gradient(135deg, #ff2f9b 60%, #ffed54 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ff2f9b", endColorstr="#ffed54",GradientType=1 );
}
header .HeaderMenuArea .MainMenuBlock #RecruitMenu a::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0.5em;
  right: 0.5em;
  text-align: center;
  width: 100%;
  height: 6px;
  background: url(../img/common/icon/cursor/arrow-deco1-right.png) no-repeat center right;
  background-size: contain;
}
header .HeaderMenuArea .MainMenuBlock #RecruitMenu a strong {
  font-size: 12px;
  letter-spacing: -0.05em;
  display: block;
}
header .HeaderMenuArea .MainMenuBlock #RecruitMenu a .En {
  opacity: 0.8;
  font-size: 7.5px;
  letter-spacing: 0.05em;
  display: block;
  line-height: 1;
  margin-top: 0.25em;
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .Title {
    display: none;
  }
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .hide-global {
    display: none;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents {
  padding: 13px 5px;
  margin: 0;
  list-style: none;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents > * {
    padding: 0 5px;
    flex-grow: 1;
    text-align: center;
  }
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents > *:not(:last-child) {
    border-right: 1px dashed rgba(63, 0, 0, 0.75);
  }
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents {
    text-align: left;
    display: block;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dt > a,
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents > p.SingleLink a {
  font-feature-settings: "palt";
  text-align: center;
  font-weight: bold;
  white-space: nowrap;
  border-radius: 3px;
  position: relative;
  top: 0;
}
@media screen and (min-width: 1050px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dt > a,
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents > p.SingleLink a {
    padding: 0.5em 0.5em 0.25em;
    line-height: 1;
    margin: 0 0.1em;
    min-width: 60px;
    border-style: dotted;
    border-color: transparent;
    border-width: 0 0 4px;
    display: inline-block;
    font-size: 105%;
  }
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dt > a.Active,
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents > p.SingleLink a.Active {
    background-color: #ffced9;
  }
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dt > a,
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents > p.SingleLink a {
    text-align: left;
    display: block;
    padding: 0.65em 0.5em 0.65em 0.75em;
    font-size: 90%;
  }
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl:hover dt > a,
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents > p.SingleLink:hover a {
    text-decoration: none;
    border-color: #ffefef;
    top: -0.2em;
  }
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    padding-bottom: 10px;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dt {
  margin-bottom: 0;
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd {
    position: absolute;
    width: 100%;
    left: 0;
    padding-left: 0;
    z-index: 100;
  }
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd {
    padding-left: 1em;
    font-size: 80%;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div {
  width: 100%;
  transition: 0.3s;
  margin-top: 2px;
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div {
    display: none;
    text-align: center;
    display: block;
    overflow: hidden;
    opacity: 0;
    height: 0;
    background-color: rgba(236, 165, 184, 0.9);
    border-radius: 5px;
  }
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl:hover dd div {
    overflow: visible;
    opacity: 1;
    height: auto;
    padding: 40px 50px;
    box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul {
  list-style: none;
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul + ul {
  margin-top: 20px;
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul.Sub {
    padding-left: 1rem;
  }
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li {
    margin: 0 7px;
  }
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li {
    width: 100%;
    padding: 1%;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li > a,
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a {
  font-weight: 600;
  text-decoration: none;
  position: relative;
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li > a,
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a {
    border: 1px solid rgba(255, 255, 255, 0.5);
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    min-height: 3.65em;
    background-color: rgba(255, 255, 255, 0.35);
    border-radius: 3px;
    padding: 0 1.25em 0 1.75em;
  }
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li > a,
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a {
    display: block;
    padding: 0.6em 0.5em 0.6em 1.75em;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li > a:before,
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a:before {
  content: "\f105";
  font-family: "fontello";
  margin-right: 0.5em;
  display: inline-block;
  position: absolute;
  left: 0.75em;
  top: 50%;
  line-height: 1;
  margin-top: -0.5em;
  font-weight: normal;
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li > a:hover,
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a:hover {
    background-color: rgba(255, 255, 255, 0.65);
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li > a small,
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a small {
  font-size: 80%;
  font-weight: normal;
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li > a small,
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a small {
    display: block;
  }
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li > a small,
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a small {
    display: inline-block;
    margin-left: 1em;
  }
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a {
    cursor: pointer;
    line-height: 3.5em;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a:before {
  content: "\e800";
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div ul > li .Toggle a:before {
    margin-right: 0.5em;
    position: absolute;
    left: 0.75em;
    top: 50%;
    line-height: 1;
    margin-top: -0.5em;
    color: #ff799c;
  }
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl .Toggle + .SecondLinkListSecondLinkList {
    display: none;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd .SecondLinkList {
  font-weight: normal;
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd .SecondLinkList {
    display: none;
  }
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd .SecondLinkList {
    margin-left: 2em;
  }
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd .SecondLinkList li {
    margin: 0.5em 0 0;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd .SecondLinkList a {
  height: inherit;
  min-height: inherit;
  font-size: 90%;
  padding: 0.6em 0.5em 0.6em 1.5em;
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd .SecondLinkList a {
    font-weight: normal;
  }
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents > p.SingleLink {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
  }
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents > p.SingleLink > a:before {
    content: "\f105";
    font-family: "fontello";
    display: inline-block;
    position: absolute;
    left: 0;
    top: 50%;
    line-height: 1;
    margin-top: -0.5em;
    font-weight: normal;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents .ButtonGroup {
  margin: 0;
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents .ButtonGroup {
    padding-top: 50px;
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents .ButtonGroup.ContactButton {
  margin: 0 0 0 0.5em;
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents .ButtonGroup.ContactButton a {
  font-size: 82.5%;
  padding: 0.5em 0.75em;
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents .ButtonGroup.ContactButton a:before {
  content: "\f0e0";
  font-family: "fontello";
  margin-right: 0.5em;
}
@media screen and (max-width: 599px) {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents .ButtonGroup.AnotherSiteButton {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
  }
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents .ButtonGroup.AnotherSiteButton img {
  height: 2em;
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .SubMenuList {
  font-size: 80%;
  list-style: none;
  text-align: left;
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .SubMenuList a {
  display: block;
  padding: 0.5em 0.5em 0.5em 1.75em;
}
header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .SubMenuList a:before {
  content: "\f105";
  font-family: "fontello";
  margin-right: 0.5em;
  display: inline-block;
  position: absolute;
  left: 0.75em;
  top: 50%;
  line-height: 1;
  margin-top: -0.5em;
  font-weight: normal;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    Contents                                      */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
@media screen and (min-width: 600px), print {
  main {
    padding: 0 0 80px;
  }
}
@media screen and (max-width: 599px) {
  main {
    padding: 0 0 30px;
  }
}
@media screen and (min-width: 600px), print {
  main .Container {
    padding: 20px 28px;
    background: #fff;
    border-radius: 10px;
  }
}
@media screen and (min-width: 600px), print {
  main #MainContentsArea {
    width: calc(100% - 210px);
    float: left;
  }
}
@media screen and (max-width: 599px) {
  main #MainContentsArea {
    background: #fff;
    padding: 12px;
    border-radius: 10px;
  }
}
main #MainContentsArea .PageTitleImage {
  margin-bottom: 20px;
  text-align: center;
}
@media screen and (min-width: 600px), print {
  main #MainContentsArea .DefaultBlock {
    padding: 0 15px 30px;
  }
}
@media screen and (max-width: 599px) {
  main #MainContentsArea .DefaultBlock {
    padding: 0 0 30px;
  }
  main #MainContentsArea .DefaultBlock:last-child {
    padding-bottom: 0;
  }
}
main #MainContentsArea .Paragraph .SubParagraph {
  margin: 20px 0;
  padding: 0 20px;
}
main #MainContentsArea .Paragraph .SubParagraph .SubParagraphHeader {
  padding: 0 5px;
  border-left: 5px solid #ddd;
  margin: 0 0 10px;
}
main #MainContentsArea .Paragraph .SubParagraph .SubParagraphHeader .Heading {
  font-size: 87.5%;
  line-height: 1;
}
main #MainContentsArea .Paragraph .SubParagraph .SubParagraphContents {
  padding-left: 10px;
}
main #MainContentsArea .DefaultParagraph {
  margin: 60px 0;
}
main #MainContentsArea .DefaultParagraph:first-child {
  margin-top: 0;
}
main #MainContentsArea .DefaultParagraph:last-child {
  margin-bottom: 0;
}
main #MainContentsArea .DefaultParagraph .ParagraphHeader {
  background: url(../img/common/icon/default_pink.png) no-repeat 0% 50%;
  padding: 5px 0 5px 30px;
  border-bottom: 1px dotted #fec8bd;
  margin: 0 0 15px;
}
main #MainContentsArea .DefaultParagraph .ParagraphHeader .Heading {
  font-size: 100%;
}
@media screen and (min-width: 600px), print {
  main #MainContentsArea .DefaultParagraph .ParagraphContents {
    padding: 0 0 0 30px;
  }
}
main #MainContentsArea .DefaultParagraph .ThirdParagraph {
  margin: 20px 0;
}
main #MainContentsArea .DefaultParagraph .ThirdParagraph .ThirdParagraphHeader {
  margin: 0 0 2px;
}
main #MainContentsArea .DefaultParagraph .ThirdParagraph .ThirdParagraphHeader .Heading {
  font-size: 87.5%;
  line-height: 1;
}
@media screen and (min-width: 600px), print {
  main #SideBarArea {
    width: 210px;
    float: right;
    padding-left: 30px;
  }
}
@media screen and (max-width: 599px) {
  main #SideBarArea {
    margin-top: 50px;
    border-top: 1px solid #fff;
    padding-top: 50px;
  }
}
main #SideBarArea a:hover img {
  opacity: 0.8;
}
main #SideBarArea .InfoList li .ListHeader .Heading {
  font-size: 87.5%;
}
main #SideBarArea .DefaultBlock {
  border: 1px solid #eee;
}
@media screen and (min-width: 600px), print {
  main #SideBarArea .DefaultBlock {
    margin: 0 0 15px;
    padding: 15px 12px;
    box-shadow: 0px 0px 0px 2px #fff inset;
  }
}
@media screen and (max-width: 599px) {
  main #SideBarArea .DefaultBlock {
    padding: 17px 20px;
    box-shadow: 0px 0px 0px 3px #fff inset;
  }
}
main #SideBarArea .DefaultBlock .BlockHeader .Heading {
  font-size: 1.45rem;
  line-height: 1;
  padding: 3px 0 3px 27px;
  margin: 0;
}
main #SideBarArea .DefaultBlock .BlockHeader a {
  display: block;
  background: url(../img/common/icon/cursor/right_l_pink.png) no-repeat 100% 50%;
  padding: 5px 30px 5px 0;
}
main #SideBarArea .DefaultBlock .BlockContents {
  margin: 10px 0 0;
}
main #SideBarArea .DefaultBlock .BlockContents .DefaultText, main #SideBarArea .DefaultBlock .BlockContents #MainContentsArea p:not([class]), #MainContentsArea main #SideBarArea .DefaultBlock .BlockContents p:not([class]), main #SideBarArea .DefaultBlock .BlockContents .DefaultTable tbody th, .DefaultTable tbody main #SideBarArea .DefaultBlock .BlockContents th, main #SideBarArea .DefaultBlock .BlockContents .DefaultTable tbody td, .DefaultTable tbody main #SideBarArea .DefaultBlock .BlockContents td, main #SideBarArea .DefaultBlock .BlockContents .SimpleTable tbody th, .SimpleTable tbody main #SideBarArea .DefaultBlock .BlockContents th, main #SideBarArea .DefaultBlock .BlockContents .SimpleTable tbody td, .SimpleTable tbody main #SideBarArea .DefaultBlock .BlockContents td, main #SideBarArea .DefaultBlock .BlockContents ul:not([class]) li, main ul:not([class]) #SideBarArea .DefaultBlock .BlockContents li, main #SideBarArea .DefaultBlock .BlockContents ol:not([class]) li, main ol:not([class]) #SideBarArea .DefaultBlock .BlockContents li, main #SideBarArea .DefaultBlock .BlockContents .LinkList li, main .LinkList #SideBarArea .DefaultBlock .BlockContents li {
  font-size: 1.25rem;
}
main #SideBarArea .DefaultBlock .BlockContents .ImageBox {
  text-align: center;
  border-radius: 10px;
  overflow: hidden;
  display: block;
}
main #SideBarArea .DefaultBlock .BlockContents .Unit:not(:last-child) {
  margin-bottom: 1em;
}
main #SideBarArea .DefaultBlock .BlockContents .Unit .Heading {
  font-size: 1.2rem;
  margin-bottom: 0em;
  border-left: 3px solid;
  padding-left: 0.6em;
  line-height: 1.25;
  font-weight: normal;
}
main #SideBarArea .DefaultBlock .BlockContents .FlexParent {
  justify-content: left;
}
@media screen and (max-width: 599px) {
  main #SideBarArea .DefaultBlock .BlockContents .FlexParent .Unit {
    padding: 0 1em 0 0;
  }
  main #SideBarArea .DefaultBlock .BlockContents .FlexParent .Unit:nth-child(2n) {
    padding: 0 0 0 1em;
  }
}
main #SideBarArea .DefaultBlock .BlockContents > .Heading {
  margin-bottom: 0.5em;
  font-size: 1.35rem;
}
main #SideBarArea .DefaultBlock .ButtonGroup {
  text-align: right;
}
main #SideBarArea .DefaultBlock .ButtonGroup a {
  min-width: 9em;
}
@media screen and (max-width: 599px) {
  main #SideBarArea .DefaultBlock .ButtonGroup a {
    margin-top: 0.5em;
  }
}
main #SideBarArea .DefaultBlock .ButtonGroup:last-child a {
  margin-bottom: 0;
}
main #SideBarArea .BannerBlock {
  padding: 0;
}
main #SideBarArea .BannerBlock.Jinzaiikusei a img {
  width: 98%;
  padding: 2px;
}
main #SideBarArea .CovidBlock {
  background: #dff5f9;
}
main #SideBarArea .CovidBlock .BlockHeader {
  position: relative;
}
main #SideBarArea .CovidBlock .BlockHeader:before {
  content: "\e812";
  font-family: "fontello";
  display: inline-block;
  position: absolute;
  font-size: 150%;
  top: 50%;
  left: -2px;
  margin-top: -0.5em;
  line-height: 1;
  color: #4ea3b5;
}
main #SideBarArea .ContactBlock {
  background: #f9f4ed;
}
main #SideBarArea .ContactBlock .BlockHeader {
  position: relative;
}
main #SideBarArea .ContactBlock .BlockHeader .Heading {
  position: relative;
}
main #SideBarArea .ContactBlock .BlockHeader .Heading:before {
  content: "\f0e0";
  font-family: "fontello";
  font-weight: normal;
  color: #FF9791;
  vertical-align: middle;
  position: absolute;
  left: 4px;
}
main #SideBarArea .ContactBlock .BlockHeader .IconLine {
  position: absolute;
  font-size: 65%;
  font-weight: bold;
  background-color: #fff;
  padding: 0 0.65em;
  border-radius: 2em;
  top: -22px;
  right: -15px;
  border: 2px solid #06c755;
}
main #SideBarArea .ContactBlock .BlockHeader .IconLine:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 60%;
  border: 5px solid transparent;
  border-top: 10px solid #06c755;
}
main #SideBarArea .ContactBlock .BlockHeader .IconLine .Icon {
  font-size: 150%;
  line-height: 1rem;
  vertical-align: middle;
}
main #SideBarArea .ContactBlock .BlockContents span[class*=Marker] {
  padding: 0 0.15em;
}
main #SideBarArea .ContactBlock .BlockContents .Marker1 {
  background: linear-gradient(transparent 60%, #f9d9c1 60%);
}
main #SideBarArea .ContactBlock .BlockContents .Marker2 {
  background: linear-gradient(transparent 60%, #c2e9f0 60%);
}
main #SideBarArea .ContactBlock .BlockContents .Marker3 {
  background: linear-gradient(transparent 60%, #fbd6ed 60%);
}
main #SideBarArea .BlogBlock {
  background: #edfcff;
}
main #SideBarArea .BlogBlock .BlockHeader {
  background: url(../img/common/icon/plant.png) no-repeat 0% 50%;
}
main #SideBarArea .BlogBlock .BlockContents {
  background: #fff;
  padding: 0 10px;
}
main #SideBarArea .HistoryBlock {
  background: #fbf6e1;
}
main #SideBarArea .HistoryBlock .BlockHeader {
  background: url(../img/common/icon/fj.png) no-repeat 0% 50%;
}
main #SideBarArea .DisclosureBlock {
  background: #f4eaff;
}
main #SideBarArea .DisclosureBlock .BlockHeader {
  background: url(../img/common/icon/fj.png) no-repeat 0% 50%;
}
main #SideBarArea .PresidentVoiceBlock {
  background: #FFF8F6;
}
main #SideBarArea .PresidentVoiceBlock .BlockHeader {
  background: url(../img/common/icon/fj.png) no-repeat 0% 50%;
}
@media screen and (max-width: 599px) {
  main #SideBarArea .PresidentVoiceBlock .BlockContents .ImageBox {
    display: none;
  }
}
main #SideBarArea .HomeCareBlock {
  background: #ffe096;
}
main #SideBarArea .HomeCareBlock .BlockHeader {
  background: url(../img/common/icon/default.png) no-repeat 0% 50%;
}
main #SideBarArea .HomeCareBlock .BlockHeader a {
  background: url(../img/common/icon/cursor/right_l_orange.png) no-repeat 100% 50%;
}
main #SideBarArea .NinteiBlock {
  background: #e8f4da;
}
main #SideBarArea .NinteiBlock .BlockHeader {
  position: relative;
}
main #SideBarArea .NinteiBlock .BlockHeader:before {
  content: "\e817";
  font-family: "fontello";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0.25em;
  margin-top: -0.5em;
  line-height: 1;
  color: #83bf3c;
}
main #SideBarArea .NinteiBlock .BlockContents .Unit .Heading {
  border-color: #bdd2a3;
}
main #SideBarArea .JouhoBlock {
  background: #def5f2;
}
main #SideBarArea .JouhoBlock .BlockHeader {
  background: url(../img/common/icon/fj.png) no-repeat 0% 50%;
}
main #SideBarArea .JouhoBlock .BlockContents .Unit .Heading {
  border-color: #81aaa5;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    Footer                                        */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
footer #FooterMenuArea {
  background: rgba(255, 255, 255, 0.8);
  padding: 20px 20px 40px;
}
@media screen and (max-width: 599px) {
  footer #FooterMenuArea {
    display: none;
  }
}
footer #FooterMenuArea .FooterMenuBlock {
  font-size: 85%;
}
@media screen and (min-width: 600px), print {
  footer #FooterMenuArea .FooterMenuBlock .hide-foot {
    display: none;
  }
}
footer #FooterMenuArea .FooterMenuBlock nav {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
footer #FooterMenuArea .FooterMenuBlock nav > dl,
footer #FooterMenuArea .FooterMenuBlock nav > p {
  margin-top: 20px;
  min-width: 10em;
}
footer #FooterMenuArea .FooterMenuBlock nav > dl:not(:last-child),
footer #FooterMenuArea .FooterMenuBlock nav > p:not(:last-child) {
  padding-right: 30px;
}
footer #FooterMenuArea .FooterMenuBlock nav > dl > dt,
footer #FooterMenuArea .FooterMenuBlock nav > p {
  font-weight: bold;
  opacity: 0.8;
}
footer #FooterMenuArea .FooterMenuBlock nav a {
  display: block;
  padding: 0.1em 0.1em 0.1em 0.7em;
}
footer #FooterMenuArea .FooterMenuBlock nav a[href] {
  position: relative;
}
footer #FooterMenuArea .FooterMenuBlock nav a[href]:hover {
  color: #FF9791;
}
footer #FooterMenuArea .FooterMenuBlock nav a[href]:before {
  content: "\e803";
  font-family: "fontello";
  color: #d3c2b1;
  position: absolute;
  top: 0.3em;
  left: 0;
}
footer #FooterMenuArea .FooterMenuBlock nav dd {
  font-size: 95%;
  padding: 7px 0 0 0.75em;
}
footer #FooterMenuArea .FooterMenuBlock nav ul.FlexParent {
  list-style: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
footer #FooterMenuArea .FooterMenuBlock nav .SecondLinkList {
  list-style: none;
  padding-left: 1em;
  font-size: 90%;
  margin-bottom: 0.5em;
}
footer #FooterMenuArea .FooterMenuBlock nav li:not(:first-child) {
  margin-top: 0.5em;
}
footer #FooterMenuArea .FooterMenuBlock nav li .Toggle {
  margin: 0.25em 0;
}
footer #FooterMenuArea .FooterMenuBlock nav li a small {
  margin-left: 0.65em;
  line-height: 1;
  font-size: 85%;
  margin-top: 0.2em;
  opacity: 0.9;
}
footer #FooterAuthorArea {
  background: url(../img/common/decoration/footer_bg.png) 0% 0%;
}
@media screen and (min-width: 600px), print {
  footer #FooterAuthorArea {
    padding: 25px 0;
  }
}
@media screen and (max-width: 599px) {
  footer #FooterAuthorArea {
    padding: 25px 5px 0px;
    text-align: center;
  }
}
footer #FooterAuthorArea > div {
  justify-content: space-between;
}
footer #FooterAuthorArea .AuthorBlock .Heading {
  margin: 0 0 10px;
  width: 175px;
}
@media screen and (max-width: 599px) {
  footer #FooterAuthorArea .AuthorBlock .Heading {
    margin: 0 auto 10px;
  }
}
footer #FooterAuthorArea .AuthorBlock .DefaultText, footer #FooterAuthorArea .AuthorBlock #MainContentsArea p:not([class]), #MainContentsArea footer #FooterAuthorArea .AuthorBlock p:not([class]), footer #FooterAuthorArea .AuthorBlock .DefaultTable tbody th, .DefaultTable tbody footer #FooterAuthorArea .AuthorBlock th, footer #FooterAuthorArea .AuthorBlock .DefaultTable tbody td, .DefaultTable tbody footer #FooterAuthorArea .AuthorBlock td, footer #FooterAuthorArea .AuthorBlock .SimpleTable tbody th, .SimpleTable tbody footer #FooterAuthorArea .AuthorBlock th, footer #FooterAuthorArea .AuthorBlock .SimpleTable tbody td, .SimpleTable tbody footer #FooterAuthorArea .AuthorBlock td, footer #FooterAuthorArea .AuthorBlock main ul:not([class]) li, main ul:not([class]) footer #FooterAuthorArea .AuthorBlock li, footer #FooterAuthorArea .AuthorBlock main ol:not([class]) li, main ol:not([class]) footer #FooterAuthorArea .AuthorBlock li, footer #FooterAuthorArea .AuthorBlock main .LinkList li, main .LinkList footer #FooterAuthorArea .AuthorBlock li {
  font-size: 1.15rem;
  margin: 0;
}
footer #FooterAuthorArea .FooterSecondMenuBlock {
  justify-content: space-between;
  flex-direction: column;
}
@media screen and (min-width: 600px), print {
  footer #FooterAuthorArea .FooterSecondMenuBlock {
    text-align: right;
  }
}
@media screen and (max-width: 599px) {
  footer #FooterAuthorArea .FooterSecondMenuBlock {
    margin-top: 20px;
    font-size: 1.15rem;
  }
}
footer #FooterAuthorArea .FooterSecondMenuBlock .LinkList {
  list-style: none;
}
@media screen and (min-width: 600px), print {
  footer #FooterAuthorArea .FooterSecondMenuBlock .LinkList {
    font-size: 80%;
  }
}
@media screen and (max-width: 599px) {
  footer #FooterAuthorArea .FooterSecondMenuBlock .LinkList {
    font-size: 87.5%;
  }
}
footer #FooterAuthorArea .FooterSecondMenuBlock .LinkList li {
  display: inline-block;
  margin-left: 1em;
}
footer #FooterAuthorArea .FooterSecondMenuBlock .LinkList li a {
  display: block;
  padding: 0.75em 0.5em;
}
footer #FooterAuthorArea .FooterSecondMenuBlock .LinkList li a:before {
  content: "\e803";
  font-family: "fontello";
  margin-right: 0.5em;
}
footer #FooterAuthorArea .FooterSecondMenuBlock .Copyright {
  font-size: 1rem;
  color: rgba(0, 0, 0, 0.5);
  margin-top: 15px;
}
@media screen and (max-width: 599px) {
  footer #FooterAuthorArea .FooterSecondMenuBlock .Copyright {
    margin-bottom: 15px;
  }
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Link Setting [Common]                          */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
.DefaultLink a {
  display: inline-block;
  border-radius: 10px;
  padding: 0.35em 1.8em 0.35em 1em;
  font-weight: bold;
  font-size: 75%;
  letter-spacing: 0.5px;
  background-image: url(../img/common/icon/cursor/right.png);
  background-repeat: no-repeat;
  background-position: 93% center;
}
.DefaultLink a.Pink {
  background-color: #FFBFBF;
  color: #664C00;
}
.DefaultLink a:hover {
  text-decoration: none;
  filter: alpha(opacity=80);
  opacity: 0.8;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*   Form Setting [Common]                          */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
input.button {
  font-size: 75%;
  color: #fff;
  background: #ea3131 url(../img/common/icon/cursor/right.png) no-repeat 10px 50%;
  background-position: right 10px top 50px;
  border: none;
  padding: 5px 20px;
  border-radius: 20px;
}
input.btn-gray {
  background: #999 url(../img/common/icon/cursor/left.png) no-repeat 10px 50%;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*                                                        */
/* ● block.css                                           */
/*                                                        */
/*    ・エリアやブロックの定義                            */
/*                                                        */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.FacilityIntroductionBlock .BlockContents ul {
  margin: 0;
  justify-content: space-between;
  padding: 1px;
  background: #f9f4ef;
}
.FacilityIntroductionBlock .BlockContents ul li {
  padding: 0;
  border: none;
  margin: 0;
  box-sizing: border-box;
}
.FacilityIntroductionBlock .BlockContents ul li a {
  display: block;
  background: #fff;
  border: 1px solid #f9f4ef;
  padding: 5px;
  box-sizing: border-box;
  transition: 0.3s ease 0s;
  position: relative;
}
.FacilityIntroductionBlock .BlockContents ul li a:after {
  content: "\f105";
  font-family: "fontello";
  position: absolute;
  top: 50%;
  right: 0.25em;
  margin-top: -0.5em;
  font-weight: normal;
  font-size: 3rem;
  color: #FF9791;
}
@media screen and (max-width: 599px) {
  .FacilityIntroductionBlock .BlockContents ul li a:after {
    font-size: 2rem;
    top: auto;
    right: 0.15em;
    bottom: 1.75rem;
  }
}
.FacilityIntroductionBlock .BlockContents ul li a:hover {
  text-decoration: none;
  box-shadow: 0 0 10px 0 rgba(102, 76, 0, 0.3);
  border-color: #FF9791;
}
.FacilityIntroductionBlock .BlockContents ul li a:hover:after {
  right: 0.15em;
}
.FacilityIntroductionBlock .BlockContents ul li .ImageBox {
  text-align: center;
}
@media screen and (min-width: 600px), print {
  .FacilityIntroductionBlock .BlockContents ul li .ImageBox {
    margin: 0 10px;
    height: 100px;
    overflow: hidden;
  }
}
.FacilityIntroductionBlock .BlockContents ul li .Heading {
  margin: 0.25em 0 0;
  position: relative;
  height: 4rem;
  text-align: center;
  line-height: 1.25;
}
@media screen and (min-width: 600px), print {
  .FacilityIntroductionBlock .BlockContents ul li .Heading:before {
    content: "\e806";
    font-family: "fontello";
    position: absolute;
    left: 0.5em;
    top: 50%;
    line-height: 1;
    margin-top: -0.5em;
    font-weight: normal;
    font-size: 2.1rem;
    color: #FF9791;
    vertical-align: middle;
  }
}
.FacilityIntroductionBlock .BlockContents ul li .Heading .Sub {
  font-size: 1.25rem;
  font-weight: normal;
}
@media screen and (max-width: 599px) {
  .FacilityIntroductionBlock .BlockContents ul li .Heading .Sub {
    font-size: 1rem;
  }
}
.FacilityIntroductionBlock .BlockContents ul li .Heading .Main {
  line-height: 4rem;
  font-weight: bold;
  display: block;
}
@media screen and (max-width: 599px) {
  .FacilityIntroductionBlock .BlockContents ul li .Heading .Main {
    font-size: 1.15rem;
    letter-spacing: -0.05em;
  }
}
.FacilityIntroductionBlock .BlockContents ul li .Heading .Sub + .Main {
  line-height: 1;
}
.FacilityIntroductionBlock .BlockContents ul li .ListFooter {
  display: none;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*                                                        */
/* ● base.css                                             */
/*    XXXX 専用CSS                                        */
/*    ・ページ固有の処理を記述                            */
/*                                                        */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList dl.NoPullDown:hover .hide-global {
    display: none;
  }
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dt {
    margin-bottom: 0;
    position: relative;
  }
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl:not(.NoPullDown) dt {
    position: relative;
  }
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl:not(.NoPullDown) dt:before {
    content: "";
    bottom: -10px;
    position: absolute;
    display: inline-block;
    width: 100%;
    height: 20px;
    z-index: 101;
    /*border:1px solid red;*/
  }
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd {
    position: absolute;
    width: 100%;
    height: 0;
    left: 0;
    padding-left: 0;
    z-index: 100;
    /*border:2px solid green;*/
  }
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl dd div {
    display: none;
    text-align: center;
    display: block;
    overflow: hidden;
    opacity: 0;
    height: 0;
    background-color: rgba(236, 165, 184, 0.9);
    border-radius: 5px;
  }
}
@media screen and (min-width: 600px), print {
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl:not(.NoPullDown):hover dd div {
    overflow: visible;
    opacity: 1;
    height: auto;
    padding: 40px 50px;
    box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);
  }
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl.NoPullDown {
    position: relative;
  }
  header .HeaderMenuArea .MainMenuBlock .MenuContents .MenuList .BlockContents dl.NoPullDown dd {
    position: absolute;
    width: 100%;
    height: 20px;
    left: 0;
    padding-left: 0;
    z-index: 101;
    display: inline-block;
    /*border:2px solid blue;
    background: #fff;*/
  }
}