@charset "UTF-8";
/*! normalize.css v6.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP:wght@700&display=swap");
* {
  padding: 0;
  margin: 0;
  font-size: 16px;
  /* フォントレンダリング設定: 1x解像度ではsubpixel、2x以上の解像度ではgrayscale */
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset; }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    * {
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; } }

html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px; }

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none; }

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Forms
   ========================================================================== */
/**
 * Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  margin: 0; }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"], [type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details, menu {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

/**
 * Add the correct display in IE.
 */
template {
  display: none; }

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none; }

/*----------------------------------------utility----------------------------------------------*/
/*flex系*/
.df, .area_movie .movie_link .link_item, .form_area #form .form_items .items_term, .form_area #form .form_items .items_def.radio .radio_wrapper, .form_area #form .form_items .items_def .def_case .radio_text, .nav_corp .copr_info .info_link .link_item, .greeting .gr_case .case_title .title_text, .sns, .horizon_sb, .horizon_sa, .horizon2 {
  display: -ms-flexbox;
  /* IE10 */
  display: -webkit-box;
  /* Android4.3以下、Safari3.1〜6.0 */
  display: -webkit-flex;
  /* Safari6.1以降 */
  display: flex; }

.dif {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.jc_sb, .area_movie .movie_link .link_item, .nav_corp .copr_info .info_link .link_item, .horizon_sb, .horizon2 {
  -ms-flex-pack: justify;
  /*IE10*/
  -webkit-box-pack: justify;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-justify-content: space-between;
  /* Safari6.1以降 */
  justify-content:  space-between; }

.jc_sa, .horizon_sa {
  -webkit-justify-content: space-around;
  -ms-flex-pack: distribute;
  justify-content: space-around; }

.jc_c, .sns {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }

.jc_fs {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start; }

.jc_fe, .greeting .gr_case .case_title .title_text {
  -webkit-justify-content: flex-end;
  -ms-justify-content: flex-end;
  justify-content: flex-end; }

.ai_c, .area_movie .movie_link .link_item, .form_area #form .form_items .items_def .def_case .radio_text, .nav_corp .copr_info .info_link .link_item {
  -ms-flex-align: center;
  /*IE10*/
  -webkit-box-align: center;
  /* Android4.3以下、Safari3.1〜6.0 */
  -webkit-align-items: center;
  /* Safari6.1以降 */
  align-items: center; }

.ai_b {
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline; }

.ai_fe, .greeting .gr_case .case_title .title_text {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end; }

.f_w, .form_area #form .form_items .items_def.radio .radio_wrapper, .horizon_sb, .horizon_sa {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.f_r {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse; }

/*メディアクエリ（改定案）対応型*/
@media only screen and (min-width: 834px) {
  .df_pc, #header, .navigators, .navigators .n_set .set_case, .form_area #form.conf .form_submit, .form_area #form .form_items, .form_area #form .form_items .items_def .def_case .check_text, .nav_corp, .portal, .portal .portal_link {
    display: -ms-flexbox;
    /* IE10 */
    display: -webkit-box;
    /* Android4.3以下、Safari3.1〜6.0 */
    display: -webkit-flex;
    /* Safari6.1以降 */
    display: flex; } }

@media only screen and (max-width: 833px) {
  .df_sp {
    display: -ms-flexbox;
    /* IE10 */
    display: -webkit-box;
    /* Android4.3以下、Safari3.1〜6.0 */
    display: -webkit-flex;
    /* Safari6.1以降 */
    display: flex; } }

@media only screen and (min-width: 834px) {
  .jc_sb_pc, .form_area #form .form_items, .form_area #form .form_items .items_term.require {
    -ms-flex-pack: justify;
    /*IE10*/
    -webkit-box-pack: justify;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-justify-content: space-between;
    /* Safari6.1以降 */
    justify-content:  space-between; } }

@media only screen and (max-width: 833px) {
  .jc_sb_sp {
    -ms-flex-pack: justify;
    /*IE10*/
    -webkit-box-pack: justify;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-justify-content: space-between;
    /* Safari6.1以降 */
    justify-content:  space-between; } }

@media only screen and (min-width: 834px) {
  .jc_sa_pc {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around; } }

@media only screen and (max-width: 833px) {
  .jc_sa_sp {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around; } }

@media only screen and (min-width: 834px) {
  .jc_c_pc, #header, .navigators, .form_area #form.conf .form_submit, .nav_corp, .portal .portal_link {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center; } }

@media only screen and (max-width: 833px) {
  .jc_c_sp {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center; } }

@media only screen and (min-width: 834px) {
  .jc_fe_pc {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; } }

@media only screen and (max-width: 833px) {
  .jc_fe_sp {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; } }

@media only screen and (min-width: 834px) {
  .ai_c_pc, #header, .form_area #form .form_items, .form_area #form .form_items .items_term, .nav_corp, .portal .portal_link {
    -ms-flex-align: center;
    /*IE10*/
    -webkit-box-align: center;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-align-items: center;
    /* Safari6.1以降 */
    align-items: center; } }

@media only screen and (max-width: 833px) {
  .ai_c_sp {
    -ms-flex-align: center;
    /*IE10*/
    -webkit-box-align: center;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-align-items: center;
    /* Safari6.1以降 */
    align-items: center; } }

@media only screen and (min-width: 834px) {
  .ai_bl_pc, .form_area #form .form_items.radio {
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline; } }

@media only screen and (max-width: 833px) {
  .ai_bl_sp {
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline; } }

@media only screen and (min-width: 834px) {
  .ai_fs_pc {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start; } }

@media only screen and (max-width: 833px) {
  .ai_fs_sp {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start; } }

@media only screen and (min-width: 834px) {
  .ai_fe_pc {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end; } }

@media only screen and (max-width: 833px) {
  .ai_fe_sp {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end; } }

@media only screen and (min-width: 834px) {
  .fw_w_pc {
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }

@media only screen and (max-width: 833px) {
  .fw_w_sp {
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }

@media only screen and (min-width: 834px) {
  .fd_rr_pc {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; } }

@media only screen and (max-width: 833px) {
  .fd_rr_sp {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; } }

@media only screen and (min-width: 834px) {
  .fd_col_pc {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; } }

@media only screen and (max-width: 833px) {
  .fd_col_sp {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; } }

/* 複合指定型（パイロット版） */
@media only screen and (min-width: 834px) {
  .df_jcsb_pc {
    display: -ms-flexbox;
    /* IE10 */
    display: -webkit-box;
    /* Android4.3以下、Safari3.1〜6.0 */
    display: -webkit-flex;
    /* Safari6.1以降 */
    display: flex;
    -ms-flex-pack: justify;
    /*IE10*/
    -webkit-box-pack: justify;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-justify-content: space-between;
    /* Safari6.1以降 */
    justify-content:  space-between; } }

@media only screen and (max-width: 833px) {
  .df_jcsb_sp {
    display: -ms-flexbox;
    /* IE10 */
    display: -webkit-box;
    /* Android4.3以下、Safari3.1〜6.0 */
    display: -webkit-flex;
    /* Safari6.1以降 */
    display: flex;
    -ms-flex-pack: justify;
    /*IE10*/
    -webkit-box-pack: justify;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-justify-content: space-between;
    /* Safari6.1以降 */
    justify-content:  space-between; } }

@media only screen and (min-width: 834px) {
  .df_aic_pc {
    display: -ms-flexbox;
    /* IE10 */
    display: -webkit-box;
    /* Android4.3以下、Safari3.1〜6.0 */
    display: -webkit-flex;
    /* Safari6.1以降 */
    display: flex;
    -ms-flex-align: center;
    /*IE10*/
    -webkit-box-align: center;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-align-items: center;
    /* Safari6.1以降 */
    align-items: center; } }

@media only screen and (max-width: 833px) {
  .df_aic_sp {
    display: -ms-flexbox;
    /* IE10 */
    display: -webkit-box;
    /* Android4.3以下、Safari3.1〜6.0 */
    display: -webkit-flex;
    /* Safari6.1以降 */
    display: flex;
    -ms-flex-align: center;
    /*IE10*/
    -webkit-box-align: center;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-align-items: center;
    /* Safari6.1以降 */
    align-items: center; } }

@media only screen and (min-width: 834px) {
  .df_jcsb_aic_pc {
    display: -ms-flexbox;
    /* IE10 */
    display: -webkit-box;
    /* Android4.3以下、Safari3.1〜6.0 */
    display: -webkit-flex;
    /* Safari6.1以降 */
    display: flex;
    -ms-flex-pack: justify;
    /*IE10*/
    -webkit-box-pack: justify;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-justify-content: space-between;
    /* Safari6.1以降 */
    justify-content:  space-between;
    -ms-flex-align: center;
    /*IE10*/
    -webkit-box-align: center;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-align-items: center;
    /* Safari6.1以降 */
    align-items: center; } }

@media only screen and (max-width: 833px) {
  .df_jcsb_aic_sp {
    display: -ms-flexbox;
    /* IE10 */
    display: -webkit-box;
    /* Android4.3以下、Safari3.1〜6.0 */
    display: -webkit-flex;
    /* Safari6.1以降 */
    display: flex;
    -ms-flex-pack: justify;
    /*IE10*/
    -webkit-box-pack: justify;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-justify-content: space-between;
    /* Safari6.1以降 */
    justify-content:  space-between;
    -ms-flex-align: center;
    /*IE10*/
    -webkit-box-align: center;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-align-items: center;
    /* Safari6.1以降 */
    align-items: center; } }

/*------------------------------------------デフォルト設定（update to 2021.08.11）---------------------------------------------------*/
/* 印刷用設定（適用できていないようなら削除。「規定」サイズがここで設定された数値になるっぽい） */
@media print {
  body {
    zoom: 0.68;
    /* この数値以上がいわゆる「PCサイズ」表示。 */
    -webkit-print-color-adjust: exact; } }

/* IE10以上 */
@media print and (-ms-high-contrast: none) {
  @page {
    size: A4;
    margin: 12.7mm 9.7mm; }
  body {
    zoom: 1.8;
    width: 1200px;
    transform: scale(0.5);
    transform-origin: 0 0; } }

/* メディアクエリ設定 */
/*フォント（都度、使わないものについては消すこと）*/
/* Google fonts（重さの直接の原因になるので使わない場合は削除） */
/*base*/
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1;
  word-break: break-word;
  overflow-wrap: break-word; }

a {
  text-decoration: none; }

li {
  list-style: none; }

img {
  width: 100%;
  height: auto;
  vertical-align: bottom; }

hr {
  border: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

input {
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  border-radius: 0;
  border: none; }

input::placeholder, textarea::placeholder {
  color: rgba(71, 74, 77, 0.4); }

@media only screen and (max-width: 833px) {
  textarea::placeholder {
    line-height: 1.6; } }

textarea {
  resize: none;
  outline: none;
  border-radius: 0; }

iframe {
  width: 100%;
  height: 100%;
  border: none; }

address {
  font-style: normal; }

/*縦書き*/
.verticals {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: mixed; }

/* twitter汎用class */
.twitter {
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch; }
  .twitter iframe {
    width: 1000px !important; }

/* youtube汎用class */
.youtube {
  position: relative;
  width: 100%; }
  .youtube iframe {
    position: absolute;
    top: 0;
    right: 0; }

/* font */
.sans {
  font-family: "Noto Sans JP", sans-serif; }

.serif {
  font-family: "Noto Serif JP", serif; }

/* PC・SP切り替え用class */
@media only screen and (min-width: 834px) {
  .pc_actualized {
    display: block; } }

@media only screen and (max-width: 833px) {
  .pc_actualized {
    display: none; } }

@media only screen and (min-width: 834px) {
  .sp_actualized {
    display: none; } }

@media only screen and (max-width: 833px) {
  .sp_actualized {
    display: block; } }

body.comp {
  background: #f1f6ef; }

#header {
  width: 100%;
  margin: 0 auto; }
  @media only screen and (min-width: 834px) {
    #header {
      height: 576px;
      background: no-repeat url(../img/cer_topbg_pc.jpg) center center/auto 577px; } }
  @media only screen and (min-width: 1200px) {
    #header {
      height: 48vw;
      background: no-repeat url(../img/cer_topbg_pc.jpg) center center/100% auto; } }
  @media only screen and (max-width: 833px) {
    #header {
      padding: 20px 0 30px;
      background: no-repeat url(../img/cer_topbg_sp.jpg) center bottom/100% auto; } }
  @media only screen and (max-width: 360px) {
    #header {
      background: no-repeat url(../img/cer_topbg_sp.jpg) center bottom/auto 100%; } }
  @media only screen and (min-width: 834px) {
    #header .h_title {
      max-width: 511px; } }
  @media only screen and (min-width: 1200px) {
    #header .h_title {
      max-width: 42vw; } }
  @media only screen and (max-width: 833px) {
    #header .h_title {
      max-width: 81%;
      margin: 0 auto; } }
  @media only screen and (min-width: 834px) {
    #header .h_img {
      max-width: 400px;
      margin-left: 58px; } }
  @media only screen and (min-width: 1200px) {
    #header .h_img {
      max-width: 33vw; } }
  @media only screen and (max-width: 833px) {
    #header .h_img {
      max-width: 74%;
      margin: 15px auto 0; } }

.area_comic {
  background: repeat url(../img/texture01.jpg) left top/800px auto;
  margin: 0 auto; }
  @media only screen and (min-width: 834px) {
    .area_comic {
      padding: 60px 0 80px; } }
  @media only screen and (max-width: 833px) {
    .area_comic {
      padding: 40px 1%; } }
  .area_comic .comic_case {
    margin: 0 auto; }
    @media only screen and (min-width: 834px) {
      .area_comic .comic_case {
        max-width: 700px; }
        .area_comic .comic_case:nth-child(n+2) {
          margin: 40px auto 0; } }
    @media only screen and (max-width: 833px) {
      .area_comic .comic_case:nth-child(n+2) {
        margin: 10px auto 0; } }

.area_movie {
  margin: 0 auto; }
  @media only screen and (min-width: 834px) {
    .area_movie {
      padding: 50px 0 100px; } }
  @media only screen and (max-width: 833px) {
    .area_movie {
      padding: 40px 2% 50px; } }
  .area_movie .movie_head {
    margin: 0 auto; }
    @media only screen and (min-width: 834px) {
      .area_movie .movie_head {
        max-width: 668px; } }
  .area_movie .movie_con {
    border: 2px solid #f7f7f7;
    overflow: hidden; }
    @media only screen and (min-width: 834px) {
      .area_movie .movie_con {
        max-width: 806px;
        height: 455px;
        margin: 50px auto 0; } }
    @media only screen and (max-width: 833px) {
      .area_movie .movie_con {
        max-width: 92%;
        height: 50vw;
        margin: 30px auto 0; } }
    @media only screen and (min-width: 834px) {
      .area_movie .movie_con .con_item {
        max-width: 800px;
        height: 450px; } }
  .area_movie .movie_about {
    font-weight: normal;
    line-height: 2; }
    @media only screen and (min-width: 834px) {
      .area_movie .movie_about {
        font-size: 25px;
        text-align: center;
        margin: 65px auto 0; } }
    @media only screen and (max-width: 833px) {
      .area_movie .movie_about {
        max-width: 92%;
        font-size: 20px;
        margin: 30px auto 0; } }
    .area_movie .movie_about .green_text {
      color: #7aaa65;
      font-size: inherit;
      font-weight: bold; }
  .area_movie .movie_link {
    position: relative;
    max-width: 490px; }
    @media only screen and (min-width: 834px) {
      .area_movie .movie_link {
        margin: 55px auto 0; }
        .area_movie .movie_link:hover::before {
          background: #ff9d00; }
        .area_movie .movie_link:hover .link_item {
          top: -5px;
          background: #f7d034; } }
    @media only screen and (max-width: 833px) {
      .area_movie .movie_link {
        width: 40%;
        min-width: 280px;
        margin: 30px auto 0; } }
    @media only screen and (max-width: 414px) {
      .area_movie .movie_link {
        width: 92%;
        min-width: auto; } }
    .area_movie .movie_link::before {
      content: '';
      display: block;
      width: 100%;
      background: #4a8033;
      border-radius: 100px; }
      @media only screen and (min-width: 834px) {
        .area_movie .movie_link::before {
          height: 100px;
          transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); } }
      @media only screen and (max-width: 833px) {
        .area_movie .movie_link::before {
          height: 90px;
          transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); } }
    .area_movie .movie_link .link_item {
      position: absolute;
      left: 0;
      width: 100%;
      color: #fff;
      font-weight: bold;
      border-radius: 100px;
      background: #7aaa65;
      text-shadow: 1px 1px 2px rgba(56, 60, 60, 0.3);
      pointer-events: auto; }
      .area_movie .movie_link .link_item::after {
        content: '＞';
        display: block;
        color: inherit;
        font-size: inherit; }
      @media only screen and (min-width: 834px) {
        .area_movie .movie_link .link_item {
          top: -10px;
          font-size: 25px;
          padding: 37.5px 50px;
          transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); } }
      @media only screen and (max-width: 833px) {
        .area_movie .movie_link .link_item {
          top: -5px;
          font-size: 20px;
          line-height: 1.5;
          padding: 15px 10%; } }

.navigators {
  background: #f7f7f7; }
  @media only screen and (min-width: 834px) {
    .navigators {
      padding: 80px 0; } }
  @media only screen and (max-width: 833px) {
    .navigators {
      padding: 30px 6%; } }
  @media only screen and (min-width: 834px) {
    .navigators .n_icon {
      max-width: 130px;
      margin-right: 45px; } }
  @media only screen and (max-width: 833px) {
    .navigators .n_icon {
      max-width: 20vw;
      margin: 0 auto; } }
  .navigators .n_set .set_index {
    font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro,Lucida Grande, segoe UI, ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", Meiryo, Arial, sans-serif;
    font-weight: normal; }
    @media only screen and (min-width: 834px) {
      .navigators .n_set .set_index {
        font-size: 21px; } }
    @media only screen and (max-width: 833px) {
      .navigators .n_set .set_index {
        font-size: 20px;
        line-height: 1.7;
        text-indent: -30px;
        padding-left: 30px;
        margin-top: 20px; } }
  @media only screen and (min-width: 834px) {
    .navigators .n_set .set_case {
      margin-top: 30px; } }
  @media only screen and (max-width: 833px) {
    .navigators .n_set .set_case {
      max-width: 65vw;
      margin: 20px auto 0; } }
  .navigators .n_set .set_case .case_item {
    display: block;
    width: 100%; }
    @media only screen and (min-width: 834px) {
      .navigators .n_set .set_case .case_item {
        max-width: 245px; }
        .navigators .n_set .set_case .case_item:last-child {
          margin-left: 30px; } }
    @media only screen and (max-width: 833px) {
      .navigators .n_set .set_case .case_item:last-child {
        margin-top: 20px; } }
    .navigators .n_set .set_case .case_item .item_link {
      display: block; }
      @media only screen and (min-width: 834px) {
        .navigators .n_set .set_case .case_item .item_link {
          transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); }
          .navigators .n_set .set_case .case_item .item_link:hover {
            opacity: .6; } }

.digress {
  margin: 0 auto; }
  @media only screen and (min-width: 834px) {
    .digress {
      height: 300px;
      background: no-repeat url(../img/cer_digress_pc.jpg) center center/auto 300px; } }
  @media only screen and (min-width: 1200px) {
    .digress {
      height: 25vw;
      background: no-repeat url(../img/cer_digress_pc.jpg) center center/auto 25vw; } }
  @media only screen and (max-width: 833px) {
    .digress {
      height: 40vw;
      background: no-repeat url(../img/cer_digress_sp.jpg) center center/100% auto; } }

@media only screen and (min-width: 834px) {
  .middle {
    height: 350px;
    background: no-repeat url(../img/cer_middle_pc.jpg) center center/auto 350px;
    margin: -105px auto 0; } }

@media only screen and (min-width: 1200px) {
  .middle {
    height: 30vw;
    background: no-repeat url(../img/cer_middle_pc.jpg) center center/auto 30vw; } }

@media only screen and (max-width: 833px) {
  .middle {
    height: 80vw;
    background: no-repeat url(../img/cer_middle_sp.jpg) center center/100% auto;
    margin: -160px auto 0; } }

.area_cemetery {
  text-align: center;
  margin: 0 auto; }
  @media only screen and (min-width: 834px) {
    .area_cemetery {
      padding: 150px 0 100px; } }
  @media only screen and (max-width: 833px) {
    .area_cemetery {
      padding: 50px 3%; } }
  .area_cemetery .c_index {
    display: inline-block;
    border-top: 2px solid #d7d8d8;
    border-bottom: 2px solid #d7d8d8; }
    @media only screen and (min-width: 834px) {
      .area_cemetery .c_index {
        font-size: 30px;
        padding: 20px 0; } }
    @media only screen and (max-width: 833px) {
      .area_cemetery .c_index {
        font-size: 25px;
        padding: 17.5px 0; } }
  .area_cemetery .c_att {
    font-size: 20px; }
    @media only screen and (min-width: 834px) {
      .area_cemetery .c_att {
        margin: 50px auto 0; } }
    @media only screen and (max-width: 833px) {
      .area_cemetery .c_att {
        margin: 40px auto 0; } }
  .area_cemetery .c_place {
    width: 100%;
    text-align: left;
    border: 2px solid #ffee99; }
    @media only screen and (min-width: 834px) {
      .area_cemetery .c_place {
        max-width: 800px;
        padding: 40px 130px;
        margin: 50px auto; } }
    @media only screen and (max-width: 833px) {
      .area_cemetery .c_place {
        max-width: 94%;
        padding: 20px 4%;
        margin: 40px auto 30px; } }
    .area_cemetery .c_place .place_item .item_text {
      position: relative;
      line-height: 2; }
      @media only screen and (min-width: 834px) {
        .area_cemetery .c_place .place_item .item_text {
          font-size: 25px;
          padding-left: 30px; } }
      @media only screen and (max-width: 833px) {
        .area_cemetery .c_place .place_item .item_text {
          font-size: 20px;
          padding-left: 30px; } }
      .area_cemetery .c_place .place_item .item_text::before {
        content: '';
        position: absolute;
        display: inline-block;
        background: #7aaa65;
        border-radius: 100px; }
        @media only screen and (min-width: 834px) {
          .area_cemetery .c_place .place_item .item_text::before {
            top: 18px;
            left: 0;
            width: 15px;
            height: 15px; } }
        @media only screen and (max-width: 833px) {
          .area_cemetery .c_place .place_item .item_text::before {
            top: 16px;
            left: 9px;
            width: 10px;
            height: 10px; } }
  .area_cemetery .c_mess {
    background: linear-gradient(transparent 63%, #ffee99 63%); }
    @media only screen and (min-width: 834px) {
      .area_cemetery .c_mess {
        font-size: 30px;
        line-height: 1.5; } }
    @media only screen and (max-width: 833px) {
      .area_cemetery .c_mess {
        font-size: 25px;
        line-height: 1.6; } }
    .area_cemetery .c_mess .mess_span {
      color: #7aaa65;
      font-size: inherit;
      font-weight: inherit; }
  .area_cemetery .c_st {
    display: block;
    color: #fff;
    background: #5671ae;
    margin: 40px auto 0; }
    @media only screen and (min-width: 834px) {
      .area_cemetery .c_st {
        max-width: 550px;
        font-size: 25px;
        padding: 6px 10px 9px; } }
    @media only screen and (max-width: 833px) {
      .area_cemetery .c_st {
        max-width: 77vw;
        min-width: 290px;
        font-size: 20px;
        line-height: 1.5;
        padding: 5px 0; } }
  .area_cemetery .c_text {
    font-size: 20px;
    line-height: 1.5;
    text-align: center;
    margin: 30px auto 0; }
  .area_cemetery .c_image {
    margin: 40px auto 0; }
    @media only screen and (min-width: 834px) {
      .area_cemetery .c_image {
        max-width: 700px; } }

.form_area {
  background: #f1f6ef;
  margin: 0 auto; }
  @media only screen and (min-width: 834px) {
    .form_area {
      padding: 70px 0 150px; } }
  @media only screen and (max-width: 833px) {
    .form_area {
      padding: 50px 6% 110px; }
      .form_area.conf {
        padding: 50px 6% 70px; } }
  .form_area .area_title {
    width: 100%;
    color: #fff;
    text-align: center;
    background: #7aaa65;
    margin: 0 auto; }
    @media only screen and (min-width: 834px) {
      .form_area .area_title {
        max-width: 550px;
        font-size: 30px;
        padding: 15px 0; } }
    @media only screen and (max-width: 833px) {
      .form_area .area_title {
        font-size: 25px;
        line-height: 1.2;
        padding: 12.5px 0; } }
  .form_area .area_about {
    font-size: 20px;
    line-height: 2;
    margin-top: 30px; }
    @media only screen and (min-width: 834px) {
      .form_area .area_about {
        text-align: center; } }
    @media only screen and (max-width: 833px) {
      .form_area .area_about.conf {
        text-align: justify; } }
  .form_area .area_att {
    font-size: 17px; }
    @media only screen and (min-width: 834px) {
      .form_area .area_att {
        text-align: center;
        margin-top: 30px; } }
    @media only screen and (max-width: 833px) {
      .form_area .area_att {
        line-height: 1.4;
        text-align: justify;
        text-indent: -17px;
        padding-left: 17px;
        margin-top: 20px; } }
  .form_area #form {
    width: 100%; }
    @media only screen and (min-width: 834px) {
      .form_area #form {
        max-width: 860px;
        margin: 60px auto 0; } }
    @media only screen and (max-width: 833px) {
      .form_area #form {
        margin: 40px auto 0; } }
    .form_area #form.conf .form_items .items_term {
      line-height: 2; }
      .form_area #form.conf .form_items .items_term.require::after {
        content: none; }
    @media only screen and (max-width: 833px) {
      .form_area #form.conf .form_items .items_def {
        padding-left: 20px; } }
    .form_area #form.conf .form_items .items_def.radio .radio_wrapper {
      font-size: 20px;
      line-height: 2;
      padding: 0;
      background: transparent; }
    .form_area #form.conf .form_items .items_def.radio .other_case {
      font-size: 20px;
      line-height: 2; }
    .form_area #form.conf .form_items .items_def.pp {
      padding: 0;
      background: transparent; }
      .form_area #form.conf .form_items .items_def.pp .def_case {
        padding: 0; }
        @media only screen and (max-width: 833px) {
          .form_area #form.conf .form_items .items_def.pp .def_case {
            padding-left: 20px; } }
        .form_area #form.conf .form_items .items_def.pp .def_case .check_text::before, .form_area #form.conf .form_items .items_def.pp .def_case .check_text::after {
          content: none; }
    .form_area #form.conf .form_items .items_def .def_case {
      font-size: 20px;
      line-height: 2; }
    .form_area #form.conf .form_submit {
      max-width: 100%; }
      @media only screen and (min-width: 834px) {
        .form_area #form.conf .form_submit {
          margin: 80px auto 0; } }
      @media only screen and (max-width: 833px) {
        .form_area #form.conf .form_submit {
          max-width: 230px;
          margin: 60px auto 0; } }
      .form_area #form.conf .form_submit .submit_case {
        width: 100%;
        max-width: 230px; }
        .form_area #form.conf .form_submit .submit_case::before {
          content: none; }
        @media only screen and (min-width: 834px) {
          .form_area #form.conf .form_submit .submit_case:first-child:hover .case_item {
            color: #fff;
            background: #f7d034;
            border: 2px solid #f7d034; } }
        .form_area #form.conf .form_submit .submit_case:first-child .case_item {
          color: #5671ae;
          padding: 18px 0;
          background: #fff;
          border: 2px solid #5671ae; }
        @media only screen and (min-width: 834px) {
          .form_area #form.conf .form_submit .submit_case:last-child {
            margin-left: 70px; } }
        @media only screen and (max-width: 833px) {
          .form_area #form.conf .form_submit .submit_case:last-child {
            margin-top: 25px; } }
        .form_area #form.conf .form_submit .submit_case .case_item {
          position: static;
          width: 100%;
          text-shadow: none; }
    @media only screen and (min-width: 834px) {
      .form_area #form .form_items:nth-child(n+2) {
        margin-top: 20px; } }
    @media only screen and (max-width: 833px) {
      .form_area #form .form_items:nth-child(n+2) {
        margin-top: 30px; } }
    .form_area #form .form_items .items_term {
      width: 100%;
      font-size: 20px; }
      @media only screen and (min-width: 834px) {
        .form_area #form .form_items .items_term {
          max-width: 260px;
          padding-right: 20px; } }
      .form_area #form .form_items .items_term.require::after {
        content: '【必須】';
        display: block;
        color: #d03838;
        font-size: inherit; }
    .form_area #form .form_items .items_def {
      width: 100%; }
      @media only screen and (min-width: 834px) {
        .form_area #form .form_items .items_def {
          max-width: 600px; } }
      @media only screen and (max-width: 833px) {
        .form_area #form .form_items .items_def {
          margin-top: 10px; } }
      .form_area #form .form_items .items_def.radio .radio_wrapper {
        border-radius: 10px;
        background: #fff; }
        @media only screen and (min-width: 834px) {
          .form_area #form .form_items .items_def.radio .radio_wrapper {
            padding: 15px 20px; } }
        @media only screen and (max-width: 833px) {
          .form_area #form .form_items .items_def.radio .radio_wrapper {
            padding: 5px 5%; } }
        @media only screen and (max-width: 833px) {
          .form_area #form .form_items .items_def.radio .radio_wrapper .def_case .radio_text {
            line-height: 2; } }
        @media only screen and (min-width: 834px) {
          .form_area #form .form_items .items_def.radio .radio_wrapper .def_case:nth-child(n+2) {
            margin-left: 40px; } }
        @media only screen and (max-width: 833px) {
          .form_area #form .form_items .items_def.radio .radio_wrapper .def_case:not(:last-child) .radio_text {
            margin-right: 40px; } }
      .form_area #form .form_items .items_def.pp {
        border-radius: 10px;
        background: #fff; }
        @media only screen and (min-width: 834px) {
          .form_area #form .form_items .items_def.pp {
            padding: 11.5px 20px 7.5px; } }
        @media only screen and (max-width: 833px) {
          .form_area #form .form_items .items_def.pp {
            text-align: left;
            padding: 0; }
            .form_area #form .form_items .items_def.pp .def_case {
              display: block;
              padding: 16px 5% 16px 49px; } }
      .form_area #form .form_items .items_def .def_case .case_text {
        width: 100%;
        font-size: 20px;
        border-radius: 10px; }
        @media only screen and (min-width: 834px) {
          .form_area #form .form_items .items_def .def_case .case_text {
            padding: 10.5px 20px; } }
        @media only screen and (max-width: 833px) {
          .form_area #form .form_items .items_def .def_case .case_text {
            padding: 10.5px 3%; } }
      .form_area #form .form_items .items_def .def_case .case_radio {
        display: none; }
      .form_area #form .form_items .items_def .def_case .case_radio:checked + .radio_text::after {
        content: '';
        position: absolute;
        left: 4px;
        display: block;
        width: 12px;
        height: 12px;
        border-radius: 100px;
        background: #000; }
        @media only screen and (min-width: 834px) {
          .form_area #form .form_items .items_def .def_case .case_radio:checked + .radio_text::after {
            top: 4px; } }
        @media only screen and (max-width: 833px) {
          .form_area #form .form_items .items_def .def_case .case_radio:checked + .radio_text::after {
            top: 14px; } }
      .form_area #form .form_items .items_def .def_case .radio_text {
        position: relative;
        font-size: 20px; }
        .form_area #form .form_items .items_def .def_case .radio_text::before {
          content: '';
          display: block;
          width: 18px;
          height: 18px;
          border: 1px solid #000;
          border-radius: 100px;
          margin-right: 3px; }
      .form_area #form .form_items .items_def .def_case .case_check {
        display: none; }
      .form_area #form .form_items .items_def .def_case .case_check:checked + .check_text::after {
        width: 16px; }
      .form_area #form .form_items .items_def .def_case .check_text {
        position: relative; }
        @media only screen and (min-width: 834px) {
          .form_area #form .form_items .items_def .def_case .check_text {
            font-size: 20px; } }
        @media only screen and (max-width: 833px) {
          .form_area #form .form_items .items_def .def_case .check_text {
            font-size: 17px;
            line-height: 1.7; } }
        .form_area #form .form_items .items_def .def_case .check_text::before, .form_area #form .form_items .items_def .def_case .check_text::after {
          content: '';
          display: block;
          height: 16px; }
          @media only screen and (max-width: 833px) {
            .form_area #form .form_items .items_def .def_case .check_text::before, .form_area #form .form_items .items_def .def_case .check_text::after {
              position: absolute; } }
        .form_area #form .form_items .items_def .def_case .check_text::before {
          width: 16px;
          border: 1px solid #000;
          margin-top: 2px;
          margin-right: 20px; }
          @media only screen and (max-width: 833px) {
            .form_area #form .form_items .items_def .def_case .check_text::before {
              position: absolute;
              top: 50%;
              left: -30px;
              margin-top: -9px; } }
        .form_area #form .form_items .items_def .def_case .check_text::after {
          position: absolute;
          top: 4px;
          left: 2px;
          width: 0;
          transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1);
          background: no-repeat url(../img/check.jpg) left top/14px auto;
          overflow: hidden; }
          @media only screen and (max-width: 833px) {
            .form_area #form .form_items .items_def .def_case .check_text::after {
              top: 50%;
              left: -28px;
              margin-top: -7px; } }
        .form_area #form .form_items .items_def .def_case .check_text .check_link {
          color: inherit;
          font-size: inherit;
          border-bottom: 1px solid #000; }
          @media only screen and (min-width: 834px) {
            .form_area #form .form_items .items_def .def_case .check_text .check_link {
              padding-bottom: 10px;
              transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); }
              .form_area #form .form_items .items_def .def_case .check_text .check_link:hover {
                color: #7aaa65;
                border-bottom: 1px solid #7aaa65; } }
          @media only screen and (max-width: 833px) {
            .form_area #form .form_items .items_def .def_case .check_text .check_link {
              padding-bottom: 2px; } }
        @media only screen and (min-width: 834px) {
          .form_area #form .form_items .items_def .def_case .check_text br {
            display: none; } }
        @media only screen and (max-width: 833px) {
          .form_area #form .form_items .items_def .def_case .check_text br {
            display: none; } }
        @media only screen and (max-width: 414px) {
          .form_area #form .form_items .items_def .def_case .check_text br {
            display: block; } }
      .form_area #form .form_items .items_def .other_case {
        display: block; }
        @media only screen and (min-width: 834px) {
          .form_area #form .form_items .items_def .other_case {
            margin-top: 20px; } }
        @media only screen and (max-width: 833px) {
          .form_area #form .form_items .items_def .other_case {
            margin-top: 10px; } }
        .form_area #form .form_items .items_def .other_case .case_text {
          width: 100%;
          height: 50px;
          font-size: 20px;
          border: none;
          border-radius: 10px; }
          @media only screen and (min-width: 834px) {
            .form_area #form .form_items .items_def .other_case .case_text {
              line-height: 1.4;
              padding: 10.5px 20px; } }
          @media only screen and (max-width: 833px) {
            .form_area #form .form_items .items_def .other_case .case_text {
              padding: 10.5px 3%; } }
          @media only screen and (max-width: 414px) {
            .form_area #form .form_items .items_def .other_case .case_text {
              height: 85px; } }
    .form_area #form .form_submit {
      max-width: 230px; }
      @media only screen and (min-width: 834px) {
        .form_area #form .form_submit {
          margin: 88px auto 0; } }
      @media only screen and (max-width: 833px) {
        .form_area #form .form_submit {
          margin: 55px auto 0; } }
      .form_area #form .form_submit .submit_case {
        position: relative; }
        @media only screen and (min-width: 834px) {
          .form_area #form .form_submit .submit_case:hover::before {
            background: #ff9d00; }
          .form_area #form .form_submit .submit_case:hover .case_item {
            top: -4px;
            background: #f7d034; } }
        .form_area #form .form_submit .submit_case::before {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 60px;
          background: #334a80;
          border-radius: 100px; }
          @media only screen and (min-width: 834px) {
            .form_area #form .form_submit .submit_case::before {
              transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); } }
        .form_area #form .form_submit .submit_case .case_item {
          position: absolute;
          left: 0;
          display: block;
          width: 100%;
          color: #fff;
          font-size: 20px;
          font-weight: bold;
          padding: 20px 0;
          border-radius: 100px;
          background: #5671ae;
          text-shadow: 1px 1px 2px rgba(56, 60, 60, 0.3);
          pointer-events: auto; }
          @media only screen and (min-width: 834px) {
            .form_area #form .form_submit .submit_case .case_item {
              top: -8px;
              transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); } }
          @media only screen and (max-width: 833px) {
            .form_area #form .form_submit .submit_case .case_item {
              top: -5px; } }
  .form_area .comp_case {
    text-align: center; }
    @media only screen and (min-width: 834px) {
      .form_area .comp_case {
        margin: 70px auto 0; } }
    @media only screen and (max-width: 833px) {
      .form_area .comp_case {
        margin: 40px auto 0; } }
    .form_area .comp_case .case_index {
      color: #7aaa65;
      font-size: 25px; }
      @media only screen and (max-width: 833px) {
        .form_area .comp_case .case_index {
          line-height: 1.6; } }
    .form_area .comp_case .case_text {
      font-size: 20px;
      line-height: 2; }
      @media only screen and (min-width: 834px) {
        .form_area .comp_case .case_text {
          margin: 60px auto 0; } }
      @media only screen and (max-width: 833px) {
        .form_area .comp_case .case_text {
          text-align: justify;
          margin: 30px auto 0; } }
    .form_area .comp_case .case_link {
      display: block;
      max-width: 230px;
      color: #fff;
      font-size: 20px;
      font-weight: bold;
      padding: 20px 0;
      background: #5671ae;
      border-radius: 100px; }
      @media only screen and (min-width: 834px) {
        .form_area .comp_case .case_link {
          transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1);
          margin: 80px auto 0; }
          .form_area .comp_case .case_link:hover {
            background: #f7d034; } }
      @media only screen and (max-width: 833px) {
        .form_area .comp_case .case_link {
          margin: 35px auto 0; } }

.pp {
  text-align: center;
  margin: 0 auto; }
  @media only screen and (min-width: 834px) {
    .pp {
      padding: 100px 0; } }
  @media only screen and (max-width: 833px) {
    .pp {
      padding: 50px 3%; } }
  .pp .pp_index {
    display: inline-block;
    border-top: 2px solid #d7d8d8;
    border-bottom: 2px solid #d7d8d8; }
    @media only screen and (min-width: 834px) {
      .pp .pp_index {
        font-size: 30px;
        padding: 20px 0; } }
    @media only screen and (max-width: 833px) {
      .pp .pp_index {
        font-size: 25px;
        padding: 10px 0; } }
  .pp .pp_case {
    width: 100%;
    text-align: left;
    border: 1px solid #afb1b1;
    overflow: scroll; }
    @media only screen and (min-width: 834px) {
      .pp .pp_case {
        max-width: 900px;
        height: 500px;
        padding: 40px 50px;
        margin: 50px auto 0; } }
    @media only screen and (max-width: 833px) {
      .pp .pp_case {
        height: 350px;
        padding: 17px 3%;
        margin: 40px auto 0; } }
    .pp .pp_case .case_item {
      line-height: 2; }
      .pp .pp_case .case_item:nth-child(n+2) {
        margin-top: 30px; }
      .pp .pp_case .case_item .item_index {
        font-weight: normal;
        line-height: inherit; }
      .pp .pp_case .case_item .item_text {
        line-height: inherit; }
    .pp .pp_case .case_list .list_item {
      line-height: 2; }

.nav_corp {
  position: relative;
  width: 100%;
  border: 2px solid #5671ae;
  background: #fff;
  margin: 0 auto; }
  @media only screen and (min-width: 834px) {
    .nav_corp {
      max-width: 900px;
      padding: 30px 0 40px; } }
  @media only screen and (max-width: 833px) {
    .nav_corp {
      max-width: 94%;
      padding: 30px 2%; } }
  @media only screen and (min-width: 834px) {
    .nav_corp .corp_img {
      max-width: 225px; } }
  @media only screen and (max-width: 833px) {
    .nav_corp .corp_img {
      max-width: 52vw;
      margin: 0 auto; } }
  @media only screen and (min-width: 834px) {
    .nav_corp .copr_info {
      margin-left: 35px; } }
  @media only screen and (max-width: 833px) {
    .nav_corp .copr_info {
      margin-top: 20px; } }
  @media only screen and (min-width: 834px) {
    .nav_corp .copr_info .info_index {
      font-size: 25px;
      line-height: 2; } }
  @media only screen and (max-width: 833px) {
    .nav_corp .copr_info .info_index {
      display: block;
      max-width: 245px;
      width: 100%;
      font-size: 20px;
      line-height: 1.7;
      margin: 20px auto 0; } }
  .nav_corp .copr_info .info_link {
    position: relative; }
    @media only screen and (min-width: 834px) {
      .nav_corp .copr_info .info_link {
        max-width: 340px;
        margin: 30px auto 0; }
        .nav_corp .copr_info .info_link:hover::before {
          background: #ff9d00; }
        .nav_corp .copr_info .info_link:hover .link_item {
          top: -4px;
          background: #f7d034; } }
    @media only screen and (max-width: 833px) {
      .nav_corp .copr_info .info_link {
        max-width: 315px;
        margin: 20px auto 0; } }
    .nav_corp .copr_info .info_link::before {
      content: '';
      display: block;
      width: 100%;
      height: 60px;
      background: #334a80;
      border-radius: 100px; }
      @media only screen and (min-width: 834px) {
        .nav_corp .copr_info .info_link::before {
          transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); } }
    .nav_corp .copr_info .info_link .link_item {
      position: absolute;
      left: 0;
      width: 100%;
      color: #fff;
      font-size: 20px;
      font-weight: bold;
      border-radius: 100px;
      background: #5671ae;
      text-shadow: 1px 1px 2px rgba(56, 60, 60, 0.3);
      pointer-events: auto; }
      .nav_corp .copr_info .info_link .link_item::after {
        content: '＞';
        display: block;
        color: inherit;
        font-size: inherit; }
      @media only screen and (min-width: 834px) {
        .nav_corp .copr_info .info_link .link_item {
          top: -8px;
          padding: 20px 40px;
          transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); } }
      @media only screen and (max-width: 833px) {
        .nav_corp .copr_info .info_link .link_item {
          top: -4px;
          padding: 20px 30px; } }

.greeting {
  text-align: center;
  background: repeat url(../img/texture02.jpg) left top/640px auto;
  margin: 0 auto; }
  @media only screen and (min-width: 834px) {
    .greeting {
      padding: 100px 0; } }
  @media only screen and (max-width: 833px) {
    .greeting {
      padding: 50px 6%; } }
  .greeting .gr_index {
    display: inline-block;
    border-top: 2px solid #d7d8d8;
    border-bottom: 2px solid #d7d8d8; }
    @media only screen and (min-width: 834px) {
      .greeting .gr_index {
        font-size: 30px;
        padding: 20px 0; } }
    @media only screen and (max-width: 833px) {
      .greeting .gr_index {
        font-size: 25px;
        padding: 15px 0; } }
  .greeting .gr_case {
    width: 100%; }
    @media only screen and (min-width: 834px) {
      .greeting .gr_case {
        max-width: 800px;
        margin: 35px auto 0; } }
    @media only screen and (max-width: 833px) {
      .greeting .gr_case {
        margin: 30px auto 0; } }
    .greeting .gr_case .case_text {
      text-align: justify; }
      @media only screen and (min-width: 834px) {
        .greeting .gr_case .case_text {
          font-size: 18px;
          line-height: 2.2; }
          .greeting .gr_case .case_text:nth-child(n+2) {
            margin-top: 40px; } }
      @media only screen and (max-width: 833px) {
        .greeting .gr_case .case_text {
          font-size: 17px;
          line-height: 1.8; }
          .greeting .gr_case .case_text:nth-child(n+2) {
            margin-top: 30px; } }
    .greeting .gr_case .case_title {
      text-align: right;
      margin-top: 40px; }
      .greeting .gr_case .case_title .title_corp {
        font-size: 20px; }
        @media only screen and (min-width: 834px) {
          .greeting .gr_case .case_title .title_corp {
            padding-right: 70px; } }
        @media only screen and (max-width: 833px) {
          .greeting .gr_case .case_title .title_corp {
            padding-right: 48px; } }
      .greeting .gr_case .case_title .title_text {
        font-weight: bold;
        margin-top: 20px; }
        @media only screen and (min-width: 834px) {
          .greeting .gr_case .case_title .title_text {
            font-size: 30px; } }
        @media only screen and (max-width: 833px) {
          .greeting .gr_case .case_title .title_text {
            font-size: 25px; } }
        .greeting .gr_case .case_title .title_text .text_item {
          display: block;
          font-size: 20px;
          font-family: inherit;
          font-weight: inherit;
          margin-right: 20px; }

.sns {
  background: #ebebeb; }
  @media only screen and (min-width: 834px) {
    .sns {
      padding: 40px 0; } }
  @media only screen and (max-width: 833px) {
    .sns {
      padding: 30px 0; } }
  .sns .sns_link {
    display: block; }
    @media only screen and (min-width: 834px) {
      .sns .sns_link {
        max-width: 60px;
        margin: 0 40px;
        transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); }
        .sns .sns_link:hover {
          opacity: .6; } }
    @media only screen and (max-width: 833px) {
      .sns .sns_link {
        max-width: 14vw;
        margin: 0 25px; } }

.portal {
  margin: 0 auto; }
  .portal .portal_link {
    width: 100%;
    background: #fff; }
    @media only screen and (min-width: 834px) {
      .portal .portal_link {
        max-width: 50%;
        padding: 42.5px 0;
        transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1); }
        .portal .portal_link:hover {
          opacity: .6; }
        .portal .portal_link:first-child {
          border: 10px solid #d7e5d0; }
          .portal .portal_link:first-child .link_img {
            max-width: 146px; }
          .portal .portal_link:first-child .link_case {
            margin-left: 20px; }
        .portal .portal_link:last-child {
          border: 10px solid #ccd4e7; }
          .portal .portal_link:last-child .link_img {
            max-width: 138px; }
          .portal .portal_link:last-child .link_case {
            margin-left: 45px; } }
    @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
      .portal .portal_link:first-child .link_img {
        max-width: 14.5vw; }
      .portal .portal_link:last-child .link_img {
        max-width: 14vw; } }
    @media only screen and (max-width: 833px) {
      .portal .portal_link {
        display: block;
        padding: 12px 0; }
        .portal .portal_link .link_img {
          max-width: 31vw;
          margin: 0 auto; }
        .portal .portal_link:first-child {
          border: 5px solid #d7e5d0; }
        .portal .portal_link:last-child {
          border: 5px solid #ccd4e7; } }
    .portal .portal_link .link_case {
      text-align: center; }
      @media only screen and (max-width: 833px) {
        .portal .portal_link .link_case {
          margin-top: 10px; } }
      .portal .portal_link .link_case .case_title {
        line-height: 1.5; }
        @media only screen and (min-width: 834px) {
          .portal .portal_link .link_case .case_title {
            font-size: 25px; } }
        @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
          .portal .portal_link .link_case .case_title {
            font-size: 22px; } }
        @media only screen and (max-width: 833px) {
          .portal .portal_link .link_case .case_title {
            font-size: 20px; } }
        .portal .portal_link .link_case .case_title.green {
          color: #7aaa65; }
        .portal .portal_link .link_case .case_title.blue {
          color: #5671ae; }
        .portal .portal_link .link_case .case_title .title_ma {
          color: inherit;
          font-size: 20px; }
          @media only screen and (max-width: 833px) {
            .portal .portal_link .link_case .case_title .title_ma {
              margin-right: 20px; } }

#footer .copyright {
  display: block;
  color: #fff;
  font-size: 15px;
  text-align: center;
  background: #324d26; }
  @media only screen and (min-width: 834px) {
    #footer .copyright {
      padding: 17.5px 0; } }
  @media only screen and (max-width: 833px) {
    #footer .copyright {
      line-height: 1.5;
      padding: 16px 3%; } }

.horizon_sb {
  /*均等配置、両端ぴったり、横の長さの限界を超えたら２段目に配置する*/ }
  @media only screen and (min-width: 834px) {
    .horizon_sb .col1 {
      width: 10%; }
    .horizon_sb .col2 {
      width: 20%; }
    .horizon_sb .col3 {
      width: 30%; }
    .horizon_sb .col_3 {
      width: 33.33333%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 3);
      width: calc(100% / 3); }
    .horizon_sb .col4 {
      width: 40%; }
    .horizon_sb .col5 {
      width: 50%; }
    .horizon_sb .col6 {
      width: 60%; }
    .horizon_sb .col_6 {
      width: 16.66666%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 6);
      width: calc(100% / 6); }
    .horizon_sb .col7 {
      width: 70%; }
    .horizon_sb .col8 {
      width: 80%; }
    .horizon_sb .col9 {
      width: 90%; }
    .horizon_sb .col10 {
      width: 100%; } }
  @media only screen and (max-width: 833px) {
    .horizon_sb .sp_col1 {
      width: 10%; }
    .horizon_sb .sp_col2 {
      width: 20%; }
    .horizon_sb .sp_col3 {
      width: 30%; }
    .horizon_sb .sp_col_3 {
      width: 33.33333%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 3);
      width: calc(100% / 3); }
    .horizon_sb .sp_col4 {
      width: 40%; }
    .horizon_sb .sp_col5 {
      width: 50%; }
    .horizon_sb .sp_col6 {
      width: 60%; }
    .horizon_sb .sp_col_6 {
      width: 16.66666%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 6);
      width: calc(100% / 6); }
    .horizon_sb .sp_col7 {
      width: 70%; }
    .horizon_sb .sp_col8 {
      width: 80%; }
    .horizon_sb .sp_col9 {
      width: 90%; }
    .horizon_sb .sp_col10 {
      width: 100%; } }

.horizon_sa {
  /*均等配置、両端ぴったり、横の長さの限界を超えたら２段目に配置する*/ }
  @media only screen and (min-width: 834px) {
    .horizon_sa .col1 {
      width: 10%; }
    .horizon_sa .col2 {
      width: 20%; }
    .horizon_sa .col3 {
      width: 30%; }
    .horizon_sa .col_3 {
      width: 33.33333%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 3);
      width: calc(100% / 3); }
    .horizon_sa .col4 {
      width: 40%; }
    .horizon_sa .col5 {
      width: 50%; }
    .horizon_sa .col6 {
      width: 60%; }
    .horizon_sa .col_6 {
      width: 16.66666%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 6);
      width: calc(100% / 6); }
    .horizon_sa .col7 {
      width: 70%; }
    .horizon_sa .col8 {
      width: 80%; }
    .horizon_sa .col9 {
      width: 90%; }
    .horizon_sa .col10 {
      width: 100%; } }
  @media only screen and (max-width: 833px) {
    .horizon_sa .sp_col1 {
      width: 10%; }
    .horizon_sa .sp_col2 {
      width: 20%; }
    .horizon_sa .sp_col3 {
      width: 30%; }
    .horizon_sa .sp_col_3 {
      width: 33.33333%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 3);
      width: calc(100% / 3); }
    .horizon_sa .sp_col4 {
      width: 40%; }
    .horizon_sa .sp_col5 {
      width: 50%; }
    .horizon_sa .sp_col6 {
      width: 60%; }
    .horizon_sa .sp_col_6 {
      width: 16.66666%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 6);
      width: calc(100% / 6); }
    .horizon_sa .sp_col7 {
      width: 70%; }
    .horizon_sa .sp_col8 {
      width: 80%; }
    .horizon_sa .sp_col9 {
      width: 90%; }
    .horizon_sa .sp_col10 {
      width: 100%; } }

.horizon2 {
  /*均等配置、両端ぴったり、折り返しなし*/ }
  @media only screen and (min-width: 834px) {
    .horizon2 .col_1 {
      width: 100%; }
    .horizon2 .col_2 {
      width: 50%; }
    .horizon2 .col_3 {
      width: 33.33333%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 3);
      width: calc(100% / 3); }
    .horizon2 .col_4 {
      width: 25%; }
    .horizon2 .col_5 {
      width: 20%; }
    .horizon2 .col_6 {
      width: 16.66666%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 6);
      width: calc(100% / 6); } }
  @media only screen and (max-width: 833px) {
    .horizon2 .sp_col_1 {
      width: 100%; }
    .horizon2 .sp_col_2 {
      width: 50%; }
    .horizon2 .sp_col_3 {
      width: 33.33333%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 3);
      width: calc(100% / 3); }
    .horizon2 .sp_col_4 {
      width: 25%; }
    .horizon2 .sp_col_5 {
      width: 20%; }
    .horizon2 .sp_col_6 {
      width: 16.66666%;
      /* 未対応ブラウザ用フォールバック */
      width: -webkit-calc(100% / 6);
      width: calc(100% / 6); } }
