@charset "UTF-8";
/*#########################################################

各種ファイル読み込み

#########################################################*/
/* http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers 
*/
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

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

html {
  color: #333;
  font-size: 62.5%; }

a:link, a:hover, a:active, a:visited {
  color: #333; }

body {
  font-family: 'Noto Sans Japanese', Meiryo, メイリオ, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Osaka, 'MS PGothic', arial, helvetica, sans-serif; }

/* p {
	@include fz_vw(13);
@media print, screen and (min-width: 769px) {
		font-size: 30px;
	}
} */
@media screen and (max-width: 767px) {
  html {
    font-size: 62.5%; }
    html * {
      box-sizing: border-box;
      line-height: 1.5; }
  body {
    font-size: 1.0rem; }
  .pcimg {
    display: none; }
  body {
    word-wrap: break-word; }
  img {
    max-width: 100%; }
  .wrapper {
    overflow: hidden; }
  header {
    /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    padding-top: 155.9375%;
    background: url(/sacm/images/top/bg_mainvisual_sp.jpg) no-repeat top center;
    background-size: contain;
    position: relative;
    width: 100%;
    height: 0; }
  .grand_title {
    position: absolute;
    text-align: right;
    width: 100%;
    top: 0;
    right: 15%;
    z-index: 1; }
    .grand_title .logotop {
      width: 75px;
      height: 50px;
      display: inline-block;
      margin-bottom: 45px;
      background: #000; }
      .grand_title .logotop a {
        display: block;
        margin-top: 10px;
        padding-left: 10px;
        padding-right: 10px; }
        .grand_title .logotop a img {
          min-width: 100%; }
  .c-tit {
    margin: -30% 10px;
    text-align: center;
    font-weight: bold;
    font-size: 2.2rem;
    font-size: 4.6875vw; } }
  @media screen and (max-width: 767px) and (min-width: 769px) {
    .c-tit {
      font-size: 1.5rem; } }

@media screen and (max-width: 767px) {
  .parent_box {
    padding: 30px 0; }
    .parent_box .title_box {
      padding: 30px 0;
      background: #FFF; }
      .parent_box .title_box h2 {
        margin: 0 auto;
        text-align: center;
        font-size: 2rem;
        font-weight: bold;
        color: #70a706;
        text-align: center; }
    .parent_box .lead {
      font-size: 1.4rem;
      line-height: 1.7;
      margin-bottom: 30px; }
      .parent_box .lead__em {
        font-weight: bold; }
      .parent_box .lead__box {
        margin-bottom: 40px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        .parent_box .lead__box .lead {
          -webkit-box-flex: 1;
              -ms-flex: 1 0 1%;
                  flex: 1 0 1%; }
      .parent_box .lead__thumb {
        width: 280px;
        margin-left: 30px; }
      .parent_box .lead__img {
        width: 100%; }
      .parent_box .lead--big {
        font-size: 2rem;
        font-weight: bold;
        margin-bottom: 30px;
        text-align: center; }
  .spbr {
    display: block; }
  .pcbr {
    display: none; }
  .btn_area {
    text-align: center;
    margin-bottom: 10px; }
    .btn_area .btn {
      display: block;
      border-radius: 4px;
      background: -webkit-linear-gradient(#d00041, #b6001f);
      background: linear-gradient(#d00041, #b6001f);
      border: none;
      padding: 15px 10px;
      margin: 0 auto;
      text-decoration: none;
      line-height: 1.5; }
      .btn_area .btn.btn, .btn_area .btn.btn02, .btn_area .btn.btn04 {
        width: 94%; }
      .btn_area .btn.btn04 {
        background: #091459; }
        .btn_area .btn.btn04 span {
          width: 100%; }
    .btn_area span {
      padding-right: 15px;
      background: url(/sacm/images/common/icon_externallink.svg) no-repeat right center;
      background-size: 9px 8px;
      font-size: 1.4rem;
      font-weight: bold;
      color: #fff; }
    .btn_area.-transparent .btn {
      width: 100%;
      display: block;
      border-radius: 4px;
      border: none;
      font-weight: bold;
      color: #FFFFFF;
      padding: 14px;
      text-align: center;
      text-decoration: none;
      border: 2px solid #091459;
      background: transparent;
      color: #091459; }
      .btn_area.-transparent .btn span {
        font-size: 1.4rem;
        color: #091459;
        padding-right: 15px;
        background: url(/sacm/images/common/icon_externallink.svg) no-repeat right center;
        background-size: 9px 8px; }
  .child_box .tit_box h3:nth-of-type(1) {
    margin-bottom: 20px;
    text-align: center;
    font-size: 1.2rem;
    color: #fff; }
    .child_box .tit_box h3:nth-of-type(1) .tit_txt,
    .child_box .tit_box h3:nth-of-type(1) .part {
      padding: 13px 15px 9px; }
    .child_box .tit_box h3:nth-of-type(1) .tit_txt {
      background: #000; }
    .child_box .tit_box h3:nth-of-type(1) .part {
      background: #f05408; }
      .child_box .tit_box h3:nth-of-type(1) .part .number {
        font-size: 1.7rem; }
  .child_box .tit_box h3:nth-of-type(2) {
    padding: 0 20px;
    font-size: 1.6rem;
    font-weight: bold;
    color: #FFF;
    text-align: center;
    line-height: 1.6; }
    .child_box .tit_box h3:nth-of-type(2) span {
      display: block;
      color: #f05408;
      font-size: 1.3rem;
      margin-top: 5px; }
  .child_box .mini_title {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 20px; }
  .child_box p {
    font-size: 1.2rem;
    margin-bottom: 30px;
    line-height: 1.5; }
    .child_box p.note {
      font-size: 16px;
      font-size: 1.6rem;
      text-indent: -20px;
      padding-left: 20px; }
    .child_box p.strong {
      font-size: 1.4rem;
      margin-bottom: 0; }
      .child_box p.strong span {
        color: #f3074f;
        font-weight: bold; }
  .hd_01 {
    max-width: 90vw;
    margin: 0 auto 20px;
    padding: 10px 20px;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    background: #091459;
    color: #fff; }
  .hd_02,
  .hd_03 {
    width: 94vw;
    margin: 0 auto;
    font-size: 2rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.6; }
  .hd_02 {
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 5px;
    border-bottom: 6px solid #d0d0d0; }
    .hd_02::after {
      position: absolute;
      bottom: -6px;
      left: 50%;
      width: 100px;
      height: 6px;
      content: '';
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      background-color: #0053d8; }
  .hd_03 {
    margin-bottom: 20px; }
  .hd_04 {
    margin-bottom: 20px;
    font-size: 1.8rem;
    color: #fcff18;
    text-align: center; }
  .hd_05 {
    padding: 10px;
    margin-bottom: 5px;
    font-size: 1.6rem;
    font-weight: bold;
    background: #f7f7e4; }
  .hd_06 {
    margin-bottom: 10px;
    font-size: 1.9rem;
    font-weight: bold; }
  .c-inner .c-lead {
    margin: 0 10px 0;
    text-align: center;
    font-weight: bold;
    font-size: 1.6rem;
    color: #fff;
    line-height: 1.7; }
  .u-red {
    font-weight: bold;
    color: #cf0040; }
  .side_by_side li {
    width: 94vw;
    margin: 0 auto 20px; }
  .txt-center {
    text-align: center; }
  .fw {
    font-weight: bold; }
  footer {
    background: #000; }
    footer .in_foot {
      width: 100%;
      padding: 20px 0; }
      footer .in_foot .foot_nav ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        footer .in_foot .foot_nav ul li a {
          font-size: 1rem;
          color: #FFF;
          text-decoration: none; }
          footer .in_foot .foot_nav ul li a:after {
            content: "";
            display: inline-block;
            width: 12px;
            height: 10px;
            background: url(common/icon_externallink.svg) no-repeat center top;
            background-size: cover;
            margin-left: 10px; }
        footer .in_foot .foot_nav ul li:first-child {
          margin-right: 20px; }
          footer .in_foot .foot_nav ul li:first-child:after {
            content: none; }
        footer .in_foot .foot_nav ul li:before {
          content: "|";
          color: #FFF;
          margin-right: 20px; }
        footer .in_foot .foot_nav ul li:after {
          content: "|";
          color: #FFF;
          margin-left: 20px; }
      footer .in_foot .copy {
        color: #FFF;
        text-align: center;
        margin-top: 20px; }
  #totop {
    display: none; } }

@media screen and (max-width: 767px) {
  main .post_body {
    overflow: scroll;
    word-wrap: normal; } }

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

各種ページファイル読み込み

#########################################################*/
@media screen and (max-width: 767px) {
  .p-about {
    padding-top: 0;
    background: url(/sacm/images/top/bg_about_sp.jpg) repeat-x center bottom;
    background-size: cover; }
    .p-about .side_by_side li {
      text-align: center; }
      .p-about .side_by_side li figure {
        margin-bottom: 20px; }
        .p-about .side_by_side li figure img {
          margin-bottom: 5px; }
        .p-about .side_by_side li figure figcaption {
          color: #fff;
          font-size: 1rem; }
      .p-about .side_by_side li:first-child img {
        width: 90vw;
        max-width: 446px;
        height: auto; }
      .p-about .side_by_side li:last-child img {
        width: 125px;
        height: 156px; }
  .p-point {
    background: url(/sacm/images/top/bg_point.jpg) repeat-x center top;
    background-size: cover; }
    .p-point .c-list.-point01 {
      width: 100%;
      margin: 0 auto;
      margin-bottom: 20px; }
      .p-point .c-list.-point01 li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        margin-bottom: 20px; }
        .p-point .c-list.-point01 li .item_list__tit {
          margin: 0 auto 10px;
          padding: 5px;
          color: #fcff18;
          background: #0053d8;
          text-align: center;
          font-size: 1.6rem; }
        .p-point .c-list.-point01 li .item_list__txt {
          margin: 0 auto;
          width: 94vw;
          font-size: 1.6rem;
          font-weight: bold; }
    .p-point .c-list.-point02 {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .p-point .c-list.-point02 li {
        width: 94vw;
        margin: 0 auto 15px;
        padding: 15px;
        background: #fff;
        border: 2px solid #cccdcd;
        -ms-flex-item-align: stretch;
            -ms-grid-row-align: stretch;
            align-self: stretch; }
        .p-point .c-list.-point02 li figure {
          display: block;
          margin-bottom: 10px;
          text-align: center; }
          .p-point .c-list.-point02 li figure img {
            margin: 0 auto; }
        .p-point .c-list.-point02 li.item_list__1 figure img {
          width: 237.5px;
          height: 109px; }
        .p-point .c-list.-point02 li.item_list__2 figure img {
          width: 232.5px;
          height: 109px; }
        .p-point .c-list.-point02 li.item_list__3 figure img {
          width: 189.5px;
          height: 180.5px; }
        .p-point .c-list.-point02 li.item_list__4 figure img {
          width: 231px;
          height: 181.5px; }
        .p-point .c-list.-point02 li .item_list__tit {
          margin-bottom: 10px;
          text-align: center;
          font-weight: bold;
          font-size: 1.6rem; }
        .p-point .c-list.-point02 li .item_list__txt {
          margin-bottom: 0;
          font-size: 1.4rem; }
    .p-point .c-image {
      width: 94vw;
      margin: 0 auto;
      display: block; }
      .p-point .c-image img {
        margin: 0 auto 20px; }
    .p-point .c-point01 {
      width: 94vw;
      margin: 0 auto;
      padding: 15px;
      background: rgba(0, 0, 0, 0.2);
      text-align: center; }
      .p-point .c-point01 .c-image {
        width: 90%;
        max-width: 254px; }
        .p-point .c-point01 .c-image img {
          width: 100%;
          margin-bottom: 0;
          height: auto; }
  .p-partner {
    background: url(/sacm/images/top/bg_partner.jpg) repeat-x center top;
    background-size: cover; }
    .p-partner .c-example {
      width: 94vw;
      margin: 0 auto;
      padding: 10px;
      background: #fff; }
      .p-partner .c-example dt {
        width: 102px;
        height: 20px;
        margin: 0 auto 20px; }
        .p-partner .c-example dt figure img {
          width: 138px;
          height: 25px; }
      .p-partner .c-example dd {
        width: 100%; }
        .p-partner .c-example dd .txt {
          margin-bottom: 10px;
          font-size: 1.4rem; }
  .contact_box {
    padding-bottom: 10px;
    background: #1d1d1d;
    color: #fff;
    text-align: center; }
    .contact_box .child_box {
      width: 94vw;
      margin: 0 auto; }
    .contact_box h3 {
      margin: 0 auto 20px;
      font-size: 2rem;
      font-weight: bold; }
      .contact_box h3 + .c-txt {
        margin: 0 auto 20px;
        text-align: left;
        font-size: 1.6rem; }
    .contact_box h4 {
      margin: 0 auto 20px;
      font-weight: bold;
      font-size: 1.6rem; }
    .contact_box .side_by_side {
      width: 94vw;
      margin: 0 auto;
      margin: 0 auto; }
      .contact_box .side_by_side li {
        padding: 10px;
        border: 2px solid #fcff18; }
        .contact_box .side_by_side li .c-txt {
          margin-bottom: 10px;
          font-size: 1.4rem; }
        .contact_box .side_by_side li .btn_area {
          margin-bottom: 0; }
          .contact_box .side_by_side li .btn_area .btn {
            margin: 0 auto;
            padding: 19px;
            width: 100%; } }
