@charset "UTF-8";
/*init*/
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block; }

ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

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

/* change border colour to suit your needs
*/
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

/*lib*/
/**
 * define valiables
 * 各scssファイルでよく使う値を変数定義
 */
/**
 * easing
 */
/**
 * function
 * 値を返す
 */
/**
 * mixins
 * ブロックを返す
 */
/*
デバイス定義
 */
/*
スマホの文字指定専用（横幅640px想定）
font-sizeにvwを設定
 */
/*
clearfix
 */
/*
iOS smooth scroll
 */
/*
opacity
 */
/*
fade
 */
/**
 * initiallize
 * タグ自体のstyleを記述
 */
html {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", "ヒラギノ丸ゴ Pro W4", "Hiragino Maru Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  color: #000;
  word-wrap: break-word;
  font-size: 15px; }

body {
  width: 100%;
  height: 100%;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden; }

a {
  text-decoration: none;
  color: #01499d; }
  a:hover {
    text-decoration: none;
    opacity: .8; }

img {
  vertical-align: bottom; }

strong {
  font-weight: bold; }

input {
  padding: 0;
  border: none;
  background: none; }

input[type=text],
input[type=tel],
input[type=password],
input[type=email],
input[type=search],
input[type=url],
input[type=datetime],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime-local],
input[type=number],
select,
textarea {
  padding: 6px;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", "ヒラギノ丸ゴ Pro W4", "Hiragino Maru Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  background-color: #fff;
  border: solid 1px #c9c9c9;
  vertical-align: bottom; }
  input[type=text]::-webkit-input-placeholder,
  input[type=tel]::-webkit-input-placeholder,
  input[type=password]::-webkit-input-placeholder,
  input[type=email]::-webkit-input-placeholder,
  input[type=search]::-webkit-input-placeholder,
  input[type=url]::-webkit-input-placeholder,
  input[type=datetime]::-webkit-input-placeholder,
  input[type=date]::-webkit-input-placeholder,
  input[type=month]::-webkit-input-placeholder,
  input[type=week]::-webkit-input-placeholder,
  input[type=time]::-webkit-input-placeholder,
  input[type=datetime-local]::-webkit-input-placeholder,
  input[type=number]::-webkit-input-placeholder,
  select::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    color: #e2e2e2; }
  input[type=text]:-ms-input-placeholder,
  input[type=tel]:-ms-input-placeholder,
  input[type=password]:-ms-input-placeholder,
  input[type=email]:-ms-input-placeholder,
  input[type=search]:-ms-input-placeholder,
  input[type=url]:-ms-input-placeholder,
  input[type=datetime]:-ms-input-placeholder,
  input[type=date]:-ms-input-placeholder,
  input[type=month]:-ms-input-placeholder,
  input[type=week]:-ms-input-placeholder,
  input[type=time]:-ms-input-placeholder,
  input[type=datetime-local]:-ms-input-placeholder,
  input[type=number]:-ms-input-placeholder,
  select:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    color: #e2e2e2; }
  input[type=text]::-moz-placeholder,
  input[type=tel]::-moz-placeholder,
  input[type=password]::-moz-placeholder,
  input[type=email]::-moz-placeholder,
  input[type=search]::-moz-placeholder,
  input[type=url]::-moz-placeholder,
  input[type=datetime]::-moz-placeholder,
  input[type=date]::-moz-placeholder,
  input[type=month]::-moz-placeholder,
  input[type=week]::-moz-placeholder,
  input[type=time]::-moz-placeholder,
  input[type=datetime-local]::-moz-placeholder,
  input[type=number]::-moz-placeholder,
  select::-moz-placeholder,
  textarea::-moz-placeholder {
    color: #e2e2e2; }
  input[type=text]:focus,
  input[type=tel]:focus,
  input[type=password]:focus,
  input[type=email]:focus,
  input[type=search]:focus,
  input[type=url]:focus,
  input[type=datetime]:focus,
  input[type=date]:focus,
  input[type=month]:focus,
  input[type=week]:focus,
  input[type=time]:focus,
  input[type=datetime-local]:focus,
  input[type=number]:focus,
  select:focus,
  textarea:focus {
    background-color: #eef4fb; }

input[type=radio],
input[type=checkbox] {
  margin: 0;
  vertical-align: -1px; }

input[type="button"],
input[type="submit"] {
  -webkit-appearance: none;
  cursor: pointer;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", "ヒラギノ丸ゴ Pro W4", "Hiragino Maru Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  vertical-align: bottom; }

textarea {
  resize: vertical;
  vertical-align: bottom; }

em {
  font-style: italic; }

sup {
  vertical-align: super; }

sub {
  vertical-align: sub; }

blockquote {
  background-color: #EEEFFF;
  padding: 1em 1em 1em 3em;
  position: relative;
  border-left: 3px solid #666; }

blockquote:before {
  content: "“";
  font-size: 600%;
  line-height: 1em;
  color: #999;
  position: absolute;
  left: 0;
  top: 0; }

::-moz-selection {
  background: #d4dcd6;
  /* Safari */ }

::selection {
  background: #d4dcd6;
  /* Safari */ }

::-moz-selection {
  background: #d4dcd6;
  /* Firefox */ }

.pci {
  display: inline; }
  @media print, screen and (max-width: 640px) {
    .pci {
      display: none; } }

.spi {
  display: none; }
  @media print, screen and (max-width: 640px) {
    .spi {
      display: inline; } }

.pc {
  display: block; }
  @media print, screen and (max-width: 640px) {
    .pc {
      display: none; } }

.sp {
  display: none; }
  @media print, screen and (max-width: 640px) {
    .sp {
      display: block; } }

.cr {
  cursor: default; }

.fade {
  -webkit-transition: opacity 0.1s ease-in-out 0s;
  -o-transition: opacity 0.1s ease-in-out 0s;
  transition: opacity 0.1s ease-in-out 0s; }
  .fade:hover {
    opacity: 0.7; }

.bgcolor_none {
  background-color: transparent !important; }

.no_breadcrumbsIcon:after {
  content: "" !important;
  display: inline-block;
  margin: 0 5px; }

.cf:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0; }

/* IE6 */
* html .cf {
  zoom: 1; }

/* IE7 */
*:first-child + html .cf {
  zoom: 1; }

.noBorder {
  border: none !important; }

/*parts*/
.m-btn a {
  position: relative;
  text-align: center;
  display: block;
  background-color: #0068b7;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  padding: 12px 0 10px;
  letter-spacing: .05em; }
  @media print, screen and (max-width: 640px) {
    .m-btn a {
      font-size: 12px;
      font-size: 3.75vw;
      padding: 4.375% 0 3.59375%; } }

.m-btn--see a:after {
  content: "";
  display: block;
  width: 24px;
  height: 14px;
  background-image: url("../img/icon_arrow_down.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%); }
  @media print, screen and (max-width: 640px) {
    .m-btn--see a:after {
      width: 12px;
      height: 7px;
      right: 5px; } }

.m-btn--see a.is-active:after {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  margin-top: -7px; }
  @media print, screen and (max-width: 640px) {
    .m-btn--see a.is-active:after {
      margin-top: -3.5px; } }

.m-btn--md a {
  font-size: 26px; }
  @media print, screen and (max-width: 640px) {
    .m-btn--md a {
      font-size: 15px;
      font-size: 4.6875vw; } }

.m-btn--lg a {
  font-size: 32px; }
  @media print, screen and (max-width: 640px) {
    .m-btn--lg a {
      font-size: 15px;
      font-size: 4.6875vw; } }

.m-btn--right a:after {
  content: "";
  display: block;
  width: 10px;
  height: 16px;
  background-image: url("../img/icon_arrow_right.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%); }
  @media print, screen and (max-width: 640px) {
    .m-btn--right a:after {
      width: 7px;
      height: 11px; } }

/*elements*/
.l-footer {
  text-align: center;
  padding-bottom: 15px; }
  @media print, screen and (max-width: 640px) {
    .l-footer {
      padding-bottom: 3.125%; } }
  .l-footer__site {
    padding-bottom: 90px; }
    @media print, screen and (max-width: 640px) {
      .l-footer__site {
        width: 90.625%;
        margin: auto;
        padding-bottom: 15.625%; } }
    @media print, screen and (max-width: 640px) {
      .l-footer__site + .l-footer__site {
        padding-bottom: 20.3125%; } }
  @media print, screen and (max-width: 640px) {
    .l-footer__siteLead {
      margin: 0 auto 7.8125%; }
      .l-footer__siteLead img {
        width: 40%; } }
  .l-footer__siteTxt > p {
    line-height: 1.6;
    margin-top: 2em; }
  @media print, screen and (max-width: 640px) {
    .l-footer__siteLogo {
      margin: 0 auto 7.8125%;
      width: 74.21875%; } }
  .l-footer__siteBtn {
    width: 280px;
    margin: 80px auto 0; }
    @media print, screen and (max-width: 640px) {
      .l-footer__siteBtn {
        width: 60.9375%;
        margin-top: 15%; } }
  .l-footer__corporate {
    border-top: 3px solid #0068b7;
    padding-top: 15px; }
    @media print, screen and (max-width: 640px) {
      .l-footer__corporate {
        padding-top: 3.125%;
        padding-left: 3.125%;
        padding-right: 3.125%; } }
  .l-footer__corporateLink {
    display: inline-block;
    font-size: 0; }
    .l-footer__corporateLink:first-child {
      border-right: 1px solid #000;
      margin-right: -3px; }
    .l-footer__corporateLink a {
      font-size: 13px;
      font-weight: bold;
      display: block;
      color: #000;
      padding: 0 10px; }
      @media print, screen and (max-width: 640px) {
        .l-footer__corporateLink a {
          margin-top: 0;
          font-size: 10px;
          font-size: 3.125vw; } }
  .l-footer__copyright {
    margin-top: 8px;
    font-size: 10px;
    font-weight: bold; }
    @media print, screen and (max-width: 640px) {
      .l-footer__copyright {
        margin-top: 2.34375%;
        line-height: 1.3; } }

.l-header {
  border-bottom: 3px solid #0068b7; }
  .l-header__inner {
    width: 1366px;
    margin: auto;
    padding: 15px 35px; }
    @media print, screen and (min-width: 751px) and (max-device-width: 1024px) {
      .l-header__inner {
        width: 100%; } }
    @media print, screen and (max-width: 640px) {
      .l-header__inner {
        width: 100%;
        padding: 1.5625% 2.34375%; } }
  .l-header__logo {
    display: inline-block;
    margin-right: 40px; }
    @media print, screen and (max-width: 640px) {
      .l-header__logo {
        width: 28.125%;
        margin-right: 2.34375%; } }
  .l-header__link {
    display: inline-block; }
    .l-header__link a {
      color: #000;
      position: relative; }
      @media print, screen and (max-width: 640px) {
        .l-header__link a {
          font-size: 10px;
          font-size: 3.125vw; } }
      .l-header__link a:before {
        content: url("../img/icon.png");
        margin-right: 4px; }

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1.7; }
  @media print, screen and (max-width: 640px) {
    * {
      font-size: 14px;
      font-size: 4.375vw;
      line-height: 1.4; } }

body.no-scroll {
  overflow: hidden; }

@media print, screen and (max-width: 640px) {
  img {
    width: 100%;
    height: auto; } }

.l-content {
  width: 100%; }

.p-kv {
  text-align: center;
  border-bottom: 3px solid #0068b7;
  background-image: url("../img/bg.png");
  background-repeat: repeat; }
  @media print, screen and (min-width: 751px) and (max-device-width: 1024px) {
    .p-kv img {
      width: 100%; } }

.p-container {
  width: 1000px;
  margin: auto;
  padding: 40px 0 60px; }
  @media print, screen and (min-width: 751px) and (max-device-width: 1024px) {
    .p-container {
      width: 100%; } }
  @media print, screen and (max-width: 640px) {
    .p-container {
      width: 100%;
      padding: 7.03125% 3.90625% 9.375%; } }

.p-inner {
  width: 1000px;
  margin: auto; }
  @media print, screen and (min-width: 751px) and (max-device-width: 1024px) {
    .p-inner {
      width: 90%; } }
  @media print, screen and (max-width: 640px) {
    .p-inner {
      width: 100%; } }

.p-lead {
  text-align: center;
  font-size: 21px;
  font-weight: bold;
  margin-bottom: 20px; }
  @media print, screen and (max-width: 640px) {
    .p-lead {
      margin-bottom: 5.46875%;
      font-size: 11px;
      font-size: 3.4375vw; } }

.p-section {
  border: 2px solid #0068b7; }
  .p-section--A {
    margin-bottom: 70px; }
    @media print, screen and (max-width: 640px) {
      .p-section--A {
        margin-bottom: 10.9375%; } }
    .p-section--A .p-answerArea {
      display: block; }
    .p-section--A .p-aboutWrap .p-aboutTxt {
      width: 540px;
      padding-right: 35px; }
      @media print, screen and (max-width: 640px) {
        .p-section--A .p-aboutWrap .p-aboutTxt {
          width: 100%;
          padding-right: 0; } }
  .p-section--B .p-aboutWrap {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .p-section--B .p-aboutWrap .p-about {
      width: 450px; }
      @media print, screen and (max-width: 640px) {
        .p-section--B .p-aboutWrap .p-about {
          width: 100%; } }
  .p-section--C .p-aboutImg--center {
    text-align: center; }
  .p-section--C .p-aboutWrap .p-aboutTxt {
    width: 360px;
    padding-right: 20px; }
    @media print, screen and (max-width: 640px) {
      .p-section--C .p-aboutWrap .p-aboutTxt {
        width: 100%;
        padding-right: 0; } }
  .p-section--C .p-aboutWrap--wide {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .p-section--C .p-aboutWrap--wide .p-aboutTxt {
      width: 620px;
      padding-right: 0; }
      @media print, screen and (max-width: 640px) {
        .p-section--C .p-aboutWrap--wide .p-aboutTxt {
          width: 100%;
          padding-right: 0; } }
  .p-section--B, .p-section--C {
    margin-bottom: 60px; }
    @media print, screen and (max-width: 640px) {
      .p-section--B, .p-section--C {
        margin-bottom: 6.25%; } }

.p-questionArea {
  padding: 3px; }

.p-questionInner {
  padding: 30px 0 25px;
  text-align: center;
  border: 1px solid #0068b7;
  background-image: url("../img/bg.png");
  background-repeat: repeat; }
  @media print, screen and (max-width: 640px) {
    .p-questionInner {
      padding: 4.6875% 5.46875%; } }

.p-question {
  margin-bottom: 25px; }
  .p-question span {
    display: block;
    font-size: 22px;
    margin-top: 20px; }
    @media print, screen and (max-width: 640px) {
      .p-question span {
        font-size: 11px;
        font-size: 3.4375vw; } }
  .p-question--more {
    text-align: center;
    font-weight: bold;
    margin-bottom: 15px; }
    .p-question--more span {
      color: #0068b7;
      margin-top: 0;
      font-size: 30px; }
      @media print, screen and (max-width: 640px) {
        .p-question--more span {
          font-size: 15px;
          font-size: 4.6875vw; } }

.p-questionBtn {
  width: 190px;
  margin: auto; }
  @media print, screen and (max-width: 640px) {
    .p-questionBtn {
      width: 40.625%; } }

.p-answerArea {
  border-top: 2px solid #0068b7;
  display: none; }

.p-answerInner {
  padding: 30px 38px 38px;
  background-image: url("../img/bg.png");
  background-repeat: repeat; }
  @media print, screen and (max-width: 640px) {
    .p-answerInner {
      padding: 4.6875% 5.46875% 9.375%; } }
  .p-answerInner > .p-about:first-of-type .p-aboutTag {
    margin-top: 0; }

.p-aboutTag {
  color: #0068b7;
  font-size: 22px;
  margin-top: 40px;
  margin-bottom: 20px; }
  @media print, screen and (max-width: 640px) {
    .p-aboutTag {
      font-size: 13px;
      font-size: 4.0625vw;
      margin-top: 7.8125%;
      margin-bottom: 3.125%; } }
  .p-aboutTag span.method {
    display: inline-block;
    border: 1px solid #0068b7;
    padding: 0 10px; }
    @media print, screen and (max-width: 640px) {
      .p-aboutTag span.method {
        margin-bottom: 1.09375%; } }

.p-aboutTxt {
  margin-bottom: 30px; }
  @media print, screen and (max-width: 640px) {
    .p-aboutTxt {
      margin-bottom: 6.25%; } }
  .p-aboutTxt span {
    font-weight: bold; }
    .p-aboutTxt span.blue {
      color: #0068b7; }
    .p-aboutTxt span.black {
      color: #000; }
    .p-aboutTxt span.red {
      color: #e30000; }
    .p-aboutTxt span.orange {
      color: #ed7b00; }
  @media print, screen and (max-width: 640px) {
    .p-aboutTxt img.formula {
      display: block;
      width: 65%;
      margin: auto; } }

.p-aboutImg {
  margin-bottom: 35px; }
  @media print, screen and (max-width: 640px) {
    .p-aboutImg {
      margin: 0 auto 5.46875%; }
      .p-aboutImg.w50sp {
        width: 50%; }
      .p-aboutImg.w60sp {
        width: 60%;
        padding-left: 6%; } }
  @media print, screen and (max-width: 640px) {
    .p-aboutImg--small {
      width: 28.125%;
      margin-left: auto;
      margin-right: auto; } }
  .p-aboutImg img {
    max-width: 100%; }

.p-aboutWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (max-width: 640px) {
    .p-aboutWrap {
      display: block; } }

.p-snsBlock {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.p-shareTxt {
  margin-right: 15px; }
  @media print, screen and (max-width: 640px) {
    .p-shareTxt {
      margin-right: 1.5625%; } }

.p-snsList {
  width: 140px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media print, screen and (max-width: 640px) {
    .p-snsList {
      width: 29.6875%; } }

@media print, screen and (max-width: 640px) {
  .p-snsLink {
    width: 30%; } }

.p-shareTxt {
  color: #0068b7;
  font-size: 21px; }
  @media print, screen and (max-width: 640px) {
    .p-shareTxt {
      font-size: 14px;
      font-size: 4.375vw; } }

.p-introduceBtn {
  width: 630px;
  margin: 30px auto 0; }
  @media print, screen and (max-width: 640px) {
    .p-introduceBtn {
      width: 100%;
      margin: 6.25% auto 0; } }

.p-leap {
  width: 700px;
  border: 1px solid #0068b7;
  background-color: #fff;
  padding: 25px;
  margin-bottom: 40px; }
  @media print, screen and (max-width: 640px) {
    .p-leap {
      width: 100%;
      padding: 3.90625%;
      margin-bottom: 6.25%; } }

.p-leapTtl {
  font-size: 18px;
  font-weight: bold;
  color: #0068b7;
  margin-bottom: 15px; }
  @media print, screen and (max-width: 640px) {
    .p-leapTtl {
      font-size: 12px;
      font-size: 3.75vw;
      margin-bottom: 2.34375%; } }

.p-leapListRow {
  padding-left: 25px;
  position: relative; }
  .p-leapListRow:before {
    position: absolute;
    left: 0;
    top: 0; }
  @media print, screen and (max-width: 640px) {
    .p-leapListRow:nth-of-type(1) {
      margin-bottom: 1.5625%; } }
  .p-leapListRow:nth-of-type(1):before {
    content: "①"; }
  .p-leapListRow:nth-of-type(2):before {
    content: "②"; }

.p-opening {
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2; }
  @media print, screen and (min-width: 751px) and (max-device-width: 1024px) {
    .p-opening {
      zoom: .57; } }

.p-openingList {
  display: none;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }
  @media print, screen and (max-width: 640px) {
    .p-openingList {
      position: relative; } }

.p-openingImg {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }
  @media print, screen and (max-width: 640px) {
    .p-openingImg {
      top: 0;
      left: 0;
      -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
      transform: translate(0, -50%); } }
  .p-openingImg.img01 {
    z-index: 3; }
  .p-openingImg.img02 {
    z-index: 2; }
  .p-openingImg.img03 {
    z-index: 1; }

.p-conventional {
  margin-top: 60px;
  text-align: center; }
  @media print, screen and (max-width: 640px) {
    .p-conventional {
      margin: 6.25% auto 0; } }
  .p-conventional__ttl {
    font-size: 30px;
    color: #0068b7;
    font-weight: bold;
    margin-bottom: 20px; }
    @media print, screen and (max-width: 640px) {
      .p-conventional__ttl {
        font-size: 15px;
        font-size: 4.6875vw;
        margin-bottom: 3.125%; } }
  .p-conventional__list {
    margin-bottom: 40px; }
    @media print, screen and (min-width: 641px) {
      .p-conventional__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; } }
    @media print, screen and (min-width: 751px) and (max-width: 990px) {
      .p-conventional__list {
        display: block;
        margin: 0 auto; } }
    @media print, screen and (max-width: 640px) {
      .p-conventional__list {
        margin-bottom: 0;
        margin: 0 auto;
        width: 70%; } }
    .p-conventional__list a {
      display: block;
      margin-bottom: 40px; }
      @media print, screen and (max-width: 640px) {
        .p-conventional__list a {
          margin-bottom: 12.5%; } }

.toTop {
  position: fixed;
  bottom: 90px;
  right: 20px; }
  @media print, screen and (max-width: 640px) {
    .toTop {
      right: 10px;
      width: 15%; } }
