@charset "UTF-8";
/* ====================================================
　CSS Document 2019.05
==================================================== */
html { font-size: 10px; }

body { font-size: 1.4rem; }

@media screen and (min-width: 768px) { html { font-size: 10px; }
  body { font-size: 1.4rem; } }
@media screen and (min-width: 992px) { html { font-size: 10px; }
  body { font-size: 1.4rem; } }
@media screen and (min-width: 1200px) { html { font-size: 10px; }
  body { font-size: 1.4rem; } }
body { background: #fff; color: #000000; font-family: "Lato", "Noto Sans JP", "游ゴシック Medium", "YuGothic Medium", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif; font-feature-settings: "palt";}

input, button, textarea, *:before, *:after { font-family: "Lato", "Noto Sans JP", "游ゴシック Medium", "YuGothic Medium", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif;}

p { margin: 0 0 1em; }
p:last-of-type { margin-bottom: 0; }

a { color: #000099; }

.serif { font-family: "Shippori Mincho", "游明朝 Medium", "YuMincho Medium", "游明朝", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", serif; }

.sans { font-family: "Lato", "Noto Sans JP", "游ゴシック Medium", "YuGothic Medium", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif; }

.serif-gi {
  font-family: 'Noto Serif JP', serif;
  display: inline-block;
  vertical-align: baseline;
}

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

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

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

/* a[href="#"] { pointer-events: none !important; opacity: 0.3 !important; } */

@media print, screen and (min-width: 768px) { a[href^="tel:"] { pointer-events: none !important; } }

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

/* =======================================================
　フレーム
========================================================== */
.contents {
  margin: 0 auto;
  width: 100%;
}
#ContentsBase{
  transition: filter 0.5s ease;
}

@media print, screen and (min-width: 768px) {
    .contents {
        width: 100%;
        max-width: 1000px;
        margin: 0 auto;
    }
}
@media screen and (max-width: 767px) {
  .contents {
    padding-right: 3.9%;
    padding-left: 3.9%;
  }

}


/* ######################################################################################

　ファーストビューの要素

###################################################################################### */
/* ====================================================
　ヘッダ
==================================================== */
.header{
  display: flex;
  align-items: center;
  position: relative;
  background: #f6f3ed;
}
.header .contents{
  max-width: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.header .logo{margin: 0;}
.header .logo img{width: 100%;}

.header:after{
    position: absolute;
    content: "";
    width: 100%;
}

@media print, screen and (min-width: 768px) {
    .header{padding: 2em 0;}
    .header:after{
        border: 10px solid #cd145a;
        bottom: -10px;
    }
}
@media screen and (max-width: 767px) {
    .header .contents{width: 70%; padding: 1em 0;}
    .header:after{
        border: 5px solid #cd145a;
        bottom: -5px;
    }
}






