@charset "UTF-8";

@import url("https://fonts.googleapis.com/css?family=Lobster");
@import url("https://fonts.googleapis.com/css?family=Lato:400,700,900");
@import url("https://fonts.googleapis.com/css?family=Leckerli+One");
@import url("https://fonts.googleapis.com/css?family=Open+Sans");

/*! normalize.css v3.0.2 | MIT License | git.io/normalize*/
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  overflow: hidden;
}

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  margin: 0.67em 0;
  font-size: 2em;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  vertical-align: baseline;
  line-height: 0;
  position: relative;
  font-size: 75%;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  height: 0;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  margin: 0;
  color: inherit;
  font: inherit;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: button;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  padding: 0;
  box-sizing: border-box;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
  border: 1px solid #c0c0c0;
}

legend {
  padding: 0;
  border: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

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

td,
th {
  padding: 0;
}

/*------------------------------------------------------------
賢威テンプレートの共通設定
-------------------------------------------------------------*/

html {
  overflow-y: scroll;
}

body {
  font-family: "Lato", Verdana, "ヒラギノ角ゴ ProN W3",
    "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

a {
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  color: #c20101;
}
a:hover,
a:active,
a:focus {
  color: #9d0000;
}

address,
caption,
cite,
code,
dfn,
var,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-style: normal;
  font-weight: normal;
}

q {
  quotes: none;
}

q:before,
q:after {
  content: "";
  content: none;
}

img {
  vertical-align: bottom;
  -ms-interpolation-mode: bicubic;
}

div {
  word-wrap: break-word;
}

pre {
  overflow: auto;
  white-space: pre-wrap;
  word-wrap: break-word;
}

form {
  margin: 0;
}

button,
input,
select,
textarea,
optgroup,
option {
  vertical-align: baseline;
}

select {
  max-width: 100%;
}

textarea {
  min-height: 100px;
  vertical-align: top;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  margin: 0;
}

table {
  width: 100%;
  word-break: break-all;
  word-wrap: break-word;
  border-spacing: 0;
}

caption {
  text-align: left;
}

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

img {
  max-width: 100%;
}

html:not(:target) img {
  max-width: 100%; /*IE9以上への対応*/
}

p {
  margin: 0 0 1em;
}

ul,
ol {
  margin-left: 40px;
  padding-left: 0;
}

li {
  margin-bottom: 0.5em;
}

/*引用*/
blockquote {
  position: relative;
  margin: 2em 0;
  padding: 115px 45px 80px;
  background: #eeeeee;
}

blockquote p:last-child {
  margin-bottom: 0;
}

blockquote:before {
  position: absolute;
  top: 40px;
  left: 30px;
  width: 58px;
  height: 45px;
  content: url(./images/icon/icon-laquo.png);
}

blockquote:after {
  position: absolute;
  right: 30px;
  bottom: 20px;
  width: 58px;
  height: 45px;
  content: url(./images/icon/icon-raquo.png);
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  blockquote:before {
    display: inline-block;
    width: 58px;
    height: 45px;
    vertical-align: middle;
    background: url(./images/icon/icon-laquo@2x.png);
    -webkit-background-size: 58px 45px;
    background-size: 58px 45px;
    content: " ";
  }

  blockquote:after {
    display: inline-block;
    width: 58px;
    height: 45px;
    vertical-align: middle;
    background: url(./images/icon/icon-raquo@2x.png);
    -webkit-background-size: 58px 45px;
    background-size: 58px 45px;
    content: " ";
  }
}

blockquote a {
  color: #15a5e6;
}

blockquote a:hover,
blockquote a:active,
blockquote a:focus {
  color: #f60;
}

q {
  background: #ccc;
}

table {
  width: 100%;
  margin: 1em 0;
  padding: 0;
  border-top: 1px solid #cfcfcf;
  border-left: 1px solid #cfcfcf;
}

th,
td {
  padding: 1.25em 1em;
  border-right: 1px solid #cfcfcf;
  border-bottom: 1px solid #cfcfcf;
}

th {
  background-color: #e2e2e2;
  font-weight: bold;
  text-align: left;
}

thead th {
  background-color: #fff;
  color: #333;
  text-align: center;
}

dd {
  margin-left: 0;
  padding-left: 1em;
}

figure {
  margin: 1em 0;
}

/*--------------------------------------------------------
テンプレートレイアウト
--------------------------------------------------------*/

.container {
  position: relative;
}
.site-header,
.global-nav,
.main-body,
.site-footer {
  min-width: 1200px;
}

.site-header-in,
.global-nav-in,
.main-image-in,
.main-image-in-text,
.main-image-in-text-cont,
.main-copy,
.sub-copy,
.main-image-in-text-box,
.main-body-in,
.site-footer-in {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%; /*サイトの横幅。これより小さければレスポンシブ*/
  margin: auto;
}
.global-nav-in {
  text-align: center;
}

.main-image-in img {
  width: 100%;
}

.main-image-in.wide,
.main-image-in-text.wide {
  width: 100%;
}

/*1カラムレイアウト*/
.col1 .main-body-in {
  width: 100%;
}

.col1 .breadcrumbs {
  width: 1200px;
  margin-right: auto;
  margin-left: auto;
}

/*2カラムレイアウト*/
.col2 .main-body {
  margin-top: 120px;
}
.col2 .main-conts {
  float: left;
  width: 65%;
  margin-top: 30px;
}
.col2 .main-conts-news {
  width: 100%;
  margin-top: 30px;
}
.col2 .main-conts-404 {
  width: 100%;
  margin: 150px auto;
  max-width: 1000px;
}
.contents-404 {
  width: 100%;
  max-width: 500px;
  margin: 50px auto;
}

.col2 .sub-conts {
  float: right;
  width: 30%;
  margin-top: 30px;
}

/*2カラムレイアウト（リバース）*/
.col2r .main-conts {
  float: right;
  width: 65%;
}

.col2r .sub-conts {
  float: left;
  width: 30%;
}

/*--------------------------------------------------------
ヘッダー
--------------------------------------------------------*/

.site-header-conts {
  display: table;
  width: 96%;
  max-width: 1200px;
  padding: 0;
  margin: 0 auto;
}

/*ヘッダーロゴ*/
.site-title {
  float: left;
  margin: 0;
  font-size: 2.25em;
  width: 94px;
}
.smaller .site-title {
  width: 70px;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.smaller .site-title a img {
  margin: 11px 0;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.site-title a {
  color: #333;
  text-decoration: none;
}

.site-title a img {
  margin: 20px 0 19px;
}

.site-title a:hover,
.site-title a:active,
.site-title a:focus {
  text-decoration: underline;
}

.normal-screen .site-title {
  font-size: 3em;
}

.normal-screen .lp-catch {
  font-size: 1.5em;
}

/*ヘッダー右側の要素*/
.header-box {
  display: table-cell;
  text-align: right;
}

/*ヘッダーの全画面表示*/
.full-screen {
  background: url(./images/lp-image.jpg) center center no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
  color: #fff;
}

.full-screen .site-header-in {
  display: table;
}

.full-screen .site-header-conts {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  width: 100%;
  padding: 1em;
  text-align: center;
  vertical-align: middle;
  text-shadow: 1px 1px 8px #666;
}

.full-screen .site-title {
  display: block;
}

.contact-btn {
  margin-bottom: 0;
}

.full-screen .site-header-conts h1 {
  width: auto;
  padding: 1em 0 0;
  margin: 0;
}

.full-screen .site-header-conts p {
  font-size: 2em;
}

.full-screen .site-header-conts p.lp-catch {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0.5em 0;
  margin-bottom: 0 !important;
  background-color: rgba(00, 00, 00, 0.5); /*メインビジュアル背景の透過率*/
}

.full-screen .site-header-conts p.lp-catch:not(:target) {
  filter: none;
}

.full-screen .site-header-conts p a {
  color: #fff;
  text-decoration: none;
}

/*--------------------------------------------------------
グローバルナビ
--------------------------------------------------------*/

.global-nav {
  padding: 0;
}

/*グローバルナビの開閉用ボタン*/
.global-nav-panel {
  display: none;
  font-size: 12px;
}

.global-nav-panel span {
  display: block;
  min-height: 20px;
  line-height: 20px;
}

.icon-gn-menu {
  padding-left: 50px;
  background: url(./images/icon/icon-gn-menu.png) left center no-repeat;
}

.icon-gn-close {
  padding-left: 50px;
  background: url(./images/icon/icon-gn-close.png) left center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-gn-menu {
    background: url(./images/icon/icon-gn-menu@2x.png) left center no-repeat;
    -webkit-background-size: 20px 20px;
    background-size: 20px 20px;
  }

  .icon-gn-close {
    background: url(./images/icon/icon-gn-close@2x.png) left center no-repeat;
    -webkit-background-size: 20px 20px;
    background-size: 20px 20px;
  }
}

.global-nav .show-menu,
.global-nav .show-menu li ul {
  display: block !important;
}
.global-nav {
  position: absolute;
  z-index: 1;
  right: 0;
  left: 0;
  margin: 107px auto 0;
}
.global-nav-in ul {
  display: table;
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
  table-layout: fixed; /*メニューの幅を均等に*/
  background: none;
}

.global-nav-in li {
  display: table-cell;
  list-style: none;
  position: relative;
  vertical-align: middle;
  text-align: center;
  border-right: 1px solid #fff;
  font-size: 14px;
}
.global-nav-in li:last-child {
  border: none;
}

.global-nav-in li a {
  display: table-cell;
  vertical-align: middle;
  min-height: 1.5em; /*メニュー毎に高さが変わるときに調整*/
  padding: 2px 1%; /*画像をメニューにする場合は値を0に*/
  color: #fff;
  text-decoration: none;
  height: 45px;
  text-align: center;
  width: 15%;
  box-sizing: border-box;
  font-weight: bold;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.7), -1px 1px 2px rgba(0, 0, 0, 0.7),
    1px -1px 2px rgba(0, 0, 0, 0.7), -1px -1px 2px rgba(0, 0, 0, 0.7);
}

.global-nav-in li a:hover,
.global-nav-in li a:active,
.global-nav-in li a:focus,
.global-nav-in li:hover > a {
  background-color: rgba(0, 0, 0, 0.6);
  color: #ffffff;
}

.global-nav-in li ul {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 10;
  width: 100%;
  border-left: 0;
}

.global-nav-in li ul:not(:target) {
  filter: none;
}

/*ドロップダウンメニューのデザイン*/
.global-nav li ul li {
  display: list-item;
  width: 135%;
  margin: 0;
  padding: 0;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #dadada;
  white-space: normal;
  font-size: 14px;
}

.global-nav li ul li a {
  display: block;
  padding: 0.8em 1em;
  height: auto;
  background-color: rgba(0, 0, 0, 0.6);
  font-weight: normal;
  text-shadow: none;
  text-align: left;
}
.global-nav li ul li a {
  width: 100%;
}

.global-nav-in li ul li:hover > a {
  background-color: #eeeeee;
  color: #1a242f;
}

.global-nav-in li ul ul {
  top: 0;
  left: 100%;
}

/*--------------------------------------------------------
メインビジュアル
--------------------------------------------------------*/

.main-image {
  margin-bottom: 0;
}

.main-image-in-text {
  position: relative;
  min-height: 500px;
  padding: 150px 0 0;
  background-size: cover;
}

.main-image-in-text-cont {
  padding: 2em 0;
  background-color: rgba(52, 73, 94, 0.3); /*メインビジュアル背景の透過率*/
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  color: #fff;
}

.main-image-in-text-cont:not(:target) {
  filter: none;
}

.main-image-in-text.wide .main-image-in-text-cont {
  width: 100%;
}

.main-image-in-text p:last-child {
  margin-bottom: 0;
}

.main-copy {
  margin: 0 auto 25px;
  padding: 25px 400px 0 20px;
  font-size: 3em;
  text-shadow: 2px 2px 3px #333333;
  -moz-box-shadow: 2px 2px 3px #333333;
  -webkit-box-shadow: 2px 2px 3px #333333;
}

.sub-copy {
  margin: 0 auto;
  padding: 0 400px 25px 20px;
  font-size: 1.725em;
  text-shadow: 2px 2px 3px #000000;
  -moz-box-shadow: 2px 2px 3px #000000;
  -webkit-box-shadow: 2px 2px 3px #000000;
}

.main-image-in-text-box {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  height: 500px;
  margin: auto;
}

.main-image-in-text-box .contact-btn {
  position: absolute;
  left: 20px;
  bottom: 60px;
}

/*--------------------------------------------------------
メインボディ
--------------------------------------------------------*/
.home .main-body {
  margin-top: 75px;
}
.main-body {
  padding-bottom: 30px;
  background-color: #fff;
}

.no-gn .main-body {
  margin-top: 0;
}

.lp.no-gn .main-body {
  margin-top: 2em;
}

/*--------------------------------------------------------
パンくずリスト
--------------------------------------------------------*/

.breadcrumbs-in {
  margin: 0 0;
  padding: 0;
  color: #999;
  font-size: 14px;
}

.no-gn .breadcrumbs-in {
  margin-top: 0;
}

.breadcrumbs-in a {
  color: #999;
}

.breadcrumbs-in a:hover,
.breadcrumbs-in a:active,
.breadcrumbs-in a:focus {
  color: #f60;
}

.breadcrumbs-in li {
  display: inline-block;
  list-style: none;
  position: relative;
  margin-right: 15px;
  padding-right: 15px;
  background: url(./images/icon/icon-brc.gif) right center no-repeat;
}

.breadcrumbs-in li:before {
  content: url(./images/icon/icon-folder-brc.png);
}

.breadcrumbs-in li.bcl-first:before {
  content: url(./images/icon/icon-home-brc.png);
}

.breadcrumbs-in li.bcl-last {
  background: none;
}

.breadcrumbs-in li.bcl-last:before {
  content: none;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .breadcrumbs-in li {
    background: url(./images/icon/icon-brc@2x.gif) right center no-repeat;
    -webkit-background-size: 5px 9px;
    background-size: 5px 9px;
  }

  .breadcrumbs-in li:before {
    width: 12px;
    height: 12px;
    background: url(./images/icon/icon-folder-brc@2x.png);
  }

  .breadcrumbs-in li.bcl-first:before {
    width: 12px;
    height: 12px;
    background: url(./images/icon/icon-home-brc@2x.png);
  }

  .breadcrumbs-in li:before,
  .breadcrumbs-in li.bcl-first:before {
    display: inline-block;
    vertical-align: middle;
    -webkit-background-size: contain;
    background-size: contain;
    content: " ";
  }

  .breadcrumbs-in li.bcl-last:before {
    width: 0;
    height: 0;
    background: none;
    content: none;
  }
}

.bread-list {
  text-align: right;
  font-size: 12px;
  width: 96%;
  margin: 15px auto 0;
  max-width: 1152px;
}
.bread-list a {
  text-decoration: none;
  color: #333;
}
.bread-list ul {
  margin-left: 0;
  list-style-type: none;
}
.bread-list ul li {
  display: inline-block;
}
.bread-list ul li:after {
  content: ">";
  display: inline-block;
  font-size: 16px;
  vertical-align: -1px;
  margin: 0 2px 0 4px;
}
.bread-list ul li:last-child:after {
  content: none;
}

/*--------------------------------------------------------
メインコンテンツ
--------------------------------------------------------*/
.main-conts {
  line-height: 1.8;
}

.col1 .main-conts {
  margin-bottom: 0;
}

/*コンテンツの基本単位（「section-wrap」＋「section-in」でコンテンツを覆う）*/
.section-wrap {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 30px;
  padding: 40px;
  border: 1px solid #ccc;
}

.section-wrap.wide {
  border-right: 0;
  border-left: 0;
}

.section-wrap .section-in,
.float-area {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.float-area {
  margin-bottom: 10px;
}

/*1カラムレイアウト*/
.col1 .section-wrap,
.col1 .float-area {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.col1 .section-wrap {
  padding: 0;
}

.col1 .section-wrap.wide {
  width: 100%;
  padding: 40px 0;
}

.col1 .section-wrap.wide .section-in {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: 30px 0;
}

/*--------------------------------------------------------
サブコンテンツ
--------------------------------------------------------*/
.sub-conts .section-wrap {
  margin: 0 auto;
  padding: 0;
  border: none;
}

.sub-conts .section-wrap .section-in {
  padding: 20px 20px 20px;
  margin-bottom: 30px;
}

.col1 .sub-conts .section-wrap .section-in {
  padding: 30px 80px 30px;
}

/*サブコンテンツ用メニューのデザイン*/
.sub-conts .link-menu {
  margin-left: 0;
  padding-left: 0;
}

.sub-conts .link-menu li {
  list-style: none;
  margin-bottom: 1em;
  padding-left: 13px;
  background: url(./images/icon/icon-list-arw.png) left 6px no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .sub-conts .link-menu li {
    background: url(./images/icon/icon-list-arw@2x.png) left 6px no-repeat;
    -webkit-background-size: 7px 10px;
    background-size: 7px 10px;
  }
}

.sub-conts .link-menu ul {
  margin-top: 1em;
  margin-left: 10px;
  padding-left: 0;
}

.sub-conts .link-menu-image {
  margin-right: 0;
  margin-left: 0;
}

.sub-conts .link-menu-image li {
  list-style: none;
  overflow: hidden;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px dotted #ccc;
}

.sub-conts .link-menu-image li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.link-menu-image-thumb {
  float: left;
  margin-right: 1em;
}

.sub-conts .link-menu-image .post-title {
  overflow: hidden;
  margin-bottom: 0;
  padding: 5px 0;
  border: none;
  background: none;
  font-weight: normal;
}

/*--------------------------------------------------------
フッター
--------------------------------------------------------*/
.site-footer {
  background: #db0012;
  color: #fff;
}

.site-footer-in {
  background: #db0012;
}

.site-footer-in a {
  color: #fff;
}

.site-footer-in a:hover,
.site-footer-in a:active,
.site-footer-in a:focus {
  color: #f60;
}

.site-footer-conts {
  max-width: 1152px;
  width: 96%;
  margin: 0 auto;
}

/*フッターナビ*/
.site-footer-nav {
  margin: 0 auto;
  padding: 30px 0;
  text-align: center;
}

.site-footer-nav li {
  display: block;
  list-style: none;
  padding: 0;
  font-size: 14px;
  text-align: left;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .site-footer-nav li {
    -webkit-background-size: 7px 10px;
    background-size: 7px 10px;
  }
}

.site-footer-conts-area {
  padding: 1em 0;
}
.footer-logo {
  font-size: 0;
  width: 610px;
  margin: 40px auto;
}
.footer-logo .img {
  display: inline-block;
  width: 206px;
  margin-right: 44px;
  vertical-align: middle;
}
.footer-logo .text {
  display: inline-block;
  width: 360px;
  font-size: 20px;
  font-weight: bold;
  vertical-align: middle;
}
.footer-logo .text span {
  font-weight: normal;
  font-size: 16px;
}
/*コピーライト*/
.copyright {
  margin: 0;
  padding: 23px 0 4px;
  background: #ab0012;
  color: #fff;
  text-align: center;
}

.copyright small {
  font-size: 14px;
}

/*ページトップボタン*/
.page-top {
  display: none;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 99;
  line-height: 1.2;
  margin-bottom: 0;
  width: 60px;
}

/*--------------------------------------------------------
見出し
--------------------------------------------------------*/

.section-in > h1:first-child,
.section-in > h2:first-child,
.section-in > h3:first-child,
.section-in > h4:first-child,
.section-in > h5:first-child,
.section-in > h6:first-child {
  margin-top: 0;
}

.main-body h1 {
  margin: 44px 0 0;
  padding: 10px 0;
  color: #d90000;
  font-size: 33px;
  text-align: center;
}

.main-body h2 {
  margin: 10px auto 0;
  padding: 10px 0;
  color: #d90000;
  font-size: 33px;
  text-align: center;
  width: 100%;
  max-width: 1200px;
}

.main-body h3 {
  position: relative;
  margin: 60px auto 30px;
  box-sizing: content-box;
  font-size: 1.5em;
  width: 100%;
  max-width: 1200px;
}

.main-body h4 {
  margin: 55px 0 25px;
  padding: 0;
  border-bottom: 1px solid #d90000;
  font-weight: bold;
  font-size: 18px;
  color: #d90000;
}

.main-body h5 {
  margin: 55px 0 25px;
  padding: 0 0 0 9px;
  border-left: 4px solid #1a242f;
  font-weight: bold;
  font-size: 1.2em;
}

.main-body h6 {
  margin: 55px 0 25px;
  font-weight: bold;
  font-size: 1.125em;
}

/*画像を使う場合などに見出しのデザインを解除*/
.main-body .img-title {
  padding: 0;
  border: none;
  background: none;
  border-radius: 0;
  box-shadow: none;
  font-weight: normal;
  font-size: 1em;
}

.main-body h1 a,
.main-body h2 a {
  color: #fff;
}

.main-body h1 a:hover,
.main-body h2 a:hover,
.main-body h1 a:active,
.main-body h2 a:active,
.main-body h1 a:focus,
.main-body h2 a:focus {
  color: #f60;
}

/*コンテンツの外にある見出し*/
.main-body .archive-title {
  margin: 20px 0 30px;
  font-size: 24px;
  border-top: 1px solid #d90000;
  border-bottom: 1px solid #d90000;
}

.col1 .main-body .archive-title {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}

/*記事タイトルや基本単位毎の最初の見出し*/
.section-wrap {
  line-height: 1.5;
  margin: 0 0 1em;
  padding: 0;
  border: none;
  background: transparent;
  color: #333;
  font-size: 16px;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}

.main-body .section-title a {
  color: #333;
}

.main-body .section-title a:hover,
.main-body .section-title a:active,
.main-body .section-title a:focus {
  color: #f60;
  text-decoration: underline;
}

.sub-conts .section-wrap .section-in .section-title,
.sub-conts .section-wrap .article-header .section-title {
  margin: 0 0 30px;
  padding: 0 0 11px;
  border-bottom: 1px solid #cccccc;
  font-weight: normal;
  font-size: 16px;
}

.sub-conts h3 {
  padding: 20px 0 11px;
  margin: 20px -10px 30px;
}

.sub-conts h4 {
  background-color: #f9f9f9;
}

/*--------------------------------------------------------
パーツ毎のスタイル
--------------------------------------------------------*/

/*最新情報*/
.news .news-date {
  margin-right: 1em;
}

.news-item {
  padding: 1em;
  border-bottom: 1px dotted #ccc;
}

.news-item:first-child {
  padding-top: 0;
}

.news-item:last-child {
  border-bottom: 0;
}

.news .news-thumb {
  float: left;
  margin-right: 15px;
  margin-bottom: 15px;
}

.main-body .news-title,
.main-body .news-title::after {
  margin-top: 20px;
  padding: 0;
  border: none;
  background: none;
  font-weight: normal;
  font-size: 1.5em;
}

.main-body .news-item:first-child .news-title {
  margin-top: 0;
}
.news-c {
  display: inline-block;
  margin-right: 0.5em;
  margin-bottom: 5px;
  padding: 0.3em 0.7em;
  border-bottom: none;
  color: #fff;
  font-size: 12px;
  word-break: break-all;
  border-radius: 3px;
}
.news .news-date,
.news .news-cat,
.post-cat {
  display: inline-block;
  margin-bottom: 10px;
}

.cat {
  display: inline-block;
  margin-right: 0.5em;
  margin-bottom: 5px;
  padding: 0.2em 0.7em;
  border-bottom: none;
  color: #fff;
  font-size: 14px;
  word-break: break-all;
  border-radius: 3px;
}

.cat a {
  display: inline-block;
  margin: -0.1em -0.5em;
  padding: 0.1em 0.5em;
  color: #fff;
  text-decoration: none;
  font-size: 12px;
}

.cat001 {
  background: #4fc3f7;
}
.cat002 {
  background: #ff8a65;
}
.cat003 {
  background: #4db6ac;
}
.cat004 {
  background: #ba68c8;
}
.cat005 {
  background: #90a4ae;
}

.news .news-cont {
  margin-bottom: 0.5em;
}

/*記述リスト 横並び*/
.dl-style01 dt,
.dl-style01 dd {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
}

.dl-style01 dt {
  display: block;
  float: left;
  width: 35%;
}

.dl-style01 dd {
  padding-left: 35%;
  border-bottom: 1px dotted #909090;
}

/*記述リスト 縦並び*/
.dl-style02 dt,
.dl-style02 dd {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  border-bottom: 1px solid #fff;
}

.dl-style02 dt {
  display: block;
  background: #9aa4af;
  color: #fff;
}

.dl-style02 dd {
  background: #f6f6f6;
}

/*テーブル（横幅がはみ出る場合にテーブルを囲む要素に設定）*/
.table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table-comparison {
  margin: 3em 0;
  border-top: 0;
}

.table-comparison th,
.table-comparison td {
  padding: 10px;
  text-align: center;
}

.table-comparison thead .highlight span {
  display: block;
  margin: -11px;
  margin-top: -25px;
  padding: 11px;
  padding-top: 25px;
  border: 1px solid #cfcfcf;
  border-radius: 8px 8px 0 0;
}

.table-comparison th.highlight,
.table-comparison th.highlight span {
  background: #20374d;
}

.table-comparison tfoot td,
.table-comparison tfoot td span {
  background: #f2f2f2;
}

/*カテゴリー*/
.category-list,
.sub-conts .widget_categories ul {
  margin-left: 0;
  padding-left: 0;
}

.category-list li,
.sub-conts .widget_categories li {
  list-style: none;
  margin-bottom: 1em;
  padding-left: 0;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .category-list li,
  .sub-conts .widget_categories li {
    background: none;
    -webkit-background-size: 12px 12px;
    background-size: 12px 12px;
  }
}

.category-list ul,
.sub-conts .widget_categories ul ul {
  margin-top: 1em;
  margin-left: 10px;
  padding-left: 0;
}

/*タグクラウド*/
.tagcloud a {
  margin-right: 10px;
  padding-left: 15px;
  background: url(./images/icon/icon-tag.png) left bottom no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .tagcloud a {
    background: url(./images/icon/icon-tag@2x.png) left bottom no-repeat;
    -webkit-background-size: 12px 12px;
    background-size: 12px 12px;
  }
}

/*カレンダー*/
.calendar {
  background: #fff;
  font-size: 0.875em;
}

.calendar caption {
  font-weight: bold;
}

.calendar th,
.calendar td {
  padding: 10px 0;
  text-align: center;
}

.calendar tfoot td {
  padding: 10px;
  border-right-width: 0;
  text-align: left;
}

.calendar tfoot td:last-child {
  border-right-width: 1px;
  text-align: right;
}

.calendar td a {
  display: block;
  margin: -10px 0;
  padding: 10px 0;
}

/*段組*/
.col4-wrap,
.col3-wrap,
.col2-wrap {
  margin: 0 0 1em;
}

.col4-wrap .col,
.col4-wrap .col_2of4,
.col4-wrap .col_3of4,
.col3-wrap .col,
.col3-wrap .col_2of3,
.col2-wrap .col {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  margin-left: 2%;
}

.col4-wrap .col:first-child,
.col4-wrap .col_2of4:first-child,
.col4-wrap .col_3of4:first-child,
.col3-wrap .col:first-child,
.col3-wrap .col_2of3:first-child,
.col2-wrap .col:first-child {
  margin-left: 0;
}

.col4-wrap .col {
  width: 23.5%;
}

.col4-wrap .col_2of4 {
  width: 49%;
}

.col4-wrap .col_3of4 {
  width: 74.5%;
}

.col3-wrap .col {
  width: 32%;
}

.col3-wrap .col_2of3 {
  width: 66%;
}

.col2-wrap .col {
  width: 49%;
}

.col-link {
  border: 1px solid #ccc;
}

.col-link a {
  display: block;
  color: #333;
  text-decoration: none;
}

.col-link a:hover,
.col-link a:active,
.col-link a:focus {
  background: #eee;
}

/*バナーエリア*/
.banner-list {
  margin-left: 0;
}

.banner-list li {
  list-style: none;
}

.col1 .banner-list {
  text-align: center;
}

.col1 .banner-list li,
.main-conts .banner-list li {
  display: inline-block;
  margin-bottom: 1em;
}

.col1 .banner-list li:first-child,
.main-conts .banner-list li:first-child {
  margin-left: 0;
}

/*引用元へのリンク*/
.link-ref {
  text-align: right;
}

/*動画などのレスポンシブ対応*/
embed,
iframe,
object,
video {
  max-width: 100%;
}

/*ボタン*/
.btn {
  display: inline-block;
  padding: 1em;
  border: 0;
  background: #1a242f;
  color: #fff;
  text-decoration: none;
  border-radius: 8px;
  box-shadow: 4px 4px 0px #d0d0d0;
}

.btn:hover,
.btn:active,
.btn:focus {
  background: #555555;
  color: #fff;
  box-shadow: 4px 4px 0px #e9e9e9;
  cursor: pointer;
}

.btn span {
  padding-left: 18px;
  background: url(./images/icon/icon-btn-arw.png) left center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .btn span {
    padding-left: 18px;
    background: url(./images/icon/icon-btn-arw@2x.png) left center no-repeat;
    -webkit-background-size: 10px 14px;
    background-size: 10px 14px;
  }
}

.btn-green {
  padding: 25px 50px;
  background: #16a085;
  font-size: 1.25em;
  /*box-shadow: 4px 4px 0px #58942c;*/
}

.btn-green:hover,
.btn-green:active,
.btn-green:focus {
  background: #38c4a9;
  /*box-shadow: 4px 4px 0px #acca96;*/
  cursor: pointer;
}

.btn-blue {
  padding: 25px 50px;
  background: #1f8ae5;
  font-size: 1.25em;
  /*box-shadow: 4px 4px 0px #1767ac;*/
}

.btn-blue:hover,
.btn-blue:active,
.btn-blue:focus {
  background: #8fc5f2;
  /*box-shadow: 4px 4px 0px #8bb3d6;*/
  cursor: pointer;
}

.btn-orange {
  padding: 25px 50px;
  background: #f59e38;
  font-size: 1.25em;
  /*box-shadow: 4px 4px 0px #b8762a;*/
}

.btn-orange:hover,
.btn-orange:active,
.btn-orange:focus {
  background: #facf9c;
  /*box-shadow: 4px 4px 0px #dcbb95;*/
  cursor: pointer;
}

.btn-red {
  padding: 25px 50px;
  background: #fe7151;
  font-size: 1.25em;
  /*box-shadow: 4px 4px 0px #be3a1c;*/
}

.btn-red:hover,
.btn-red:active,
.btn-red:focus {
  background: #ffa792;
  /*box-shadow: 4px 4px 0px #df9d8e;*/
  cursor: pointer;
}

.btn-green span,
.btn-blue span,
.btn-orange span,
.btn-red span {
  padding-left: 20px;
  background: url(./images/icon/icon-btn-arw01.png) left center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .btn-green span,
  .btn-blue span,
  .btn-orange span,
  .btn-red span {
    background: url(./images/icon/icon-btn-arw01@2x.png) left center no-repeat;
    -webkit-background-size: 10px 14px;
    background-size: 10px 14px;
  }
}

.btn-form01 {
  padding: 25px 50px;
  background: #1a242f;
  font-size: 1.25em;
}

.btn-form01 span {
  padding-left: 20px;
  background: url(./images/icon/icon-btn-arw01.png) left center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .btn-form01 span {
    background: url(./images/icon/icon-btn-arw01@2x.png) left center no-repeat;
    -webkit-background-size: 10px 14px;
    background-size: 10px 14px;
  }
}

.btn-form02 {
  padding: 20px 30px;
  background: #c9c9c9;
  font-size: 1.125em;
  color: #666666;
}

.btn-form02 span {
  padding-left: 18px;
  background: url(./images/icon/icon-btn-arw02.png) left center no-repeat;
}

.btn-form02:hover span,
.btn-form02:active span,
.btn-form02:focus span {
  padding-left: 18px;
  background: url(./images/icon/icon-btn-arw01.png) left center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .btn-form02 span {
    background: url(./images/icon/icon-btn-arw02@2x.png) left center no-repeat;
    -webkit-background-size: 10px 14px;
    background-size: 10px 14px;
  }

  .btn-form02:hover span,
  .btn-form02:active span,
  .btn-form02:focus span {
    background: url(./images/icon/icon-btn-arw01@2x.png) left center no-repeat;
    -webkit-background-size: 10px 14px;
    background-size: 10px 14px;
  }
}

.btn-mail {
  padding: 12px 32px;
  background: #1a242f;
}

.btn-mail span {
  padding-left: 30px;
  background: url(./images/icon/icon-btn-mail.png) left center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .btn-mail span {
    background: url(./images/icon/icon-btn-mail@2x.png) left center no-repeat;
    -webkit-background-size: 24px 18px;
    background-size: 24px 18px;
  }
}

.btn-detail {
  background: #909090;
}

.btn-detail span {
  padding-left: 20px;
  background: url(./images/icon/icon-btn-arw01.png) left center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .btn-detail span {
    background: url(./images/icon/icon-btn-arw01@2x.png) left center no-repeat;
    -webkit-background-size: 10px 14px;
    background-size: 10px 14px;
  }
}

/*検索ボックス*/
.search-box input[type="text"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 75%;
  height: 30px;
  padding-right: 4px;
  padding-left: 4px;
  border: 1px solid #ccc;
  border-radius: 0;
  box-shadow: inset 1px 3px 2px #eee;
}

.btn-search {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 30px;
  vertical-align: top;
  padding: 5px;
  border: 0;
  background: #8f8f8f;
  border-radius: 0;
  cursor: pointer;
}

.btn-search img {
  width: 21px;
  height: 20px;
  vertical-align: top;
}

/*ソーシャルボタン*/
.sns-list ul {
  margin: 0 0 1em;
  padding: 0;
}

.sns-list li {
  display: inline-block;
  vertical-align: top;
  line-height: 1;
  margin-left: 1em;
}

.sns-list li iframe {
  max-width: none;
  margin: 0;
}

.sns-list li:first-child {
  margin-left: 0;
}

/*アイキャッチ*/
.eye-catch {
  float: left;
  margin-right: 1em;
  margin-bottom: 1em;
}

.post-date,
.post-pv {
  display: inline-block;
  margin-right: 1em;
  margin-bottom: 20px;
  font-size: 14px;
}

/*登場人物紹介１*/
.cast-box {
  padding: 30px 20px 20px;
}

.cast-box .cast {
  margin: 0 0 1.5em;
}

.cast-box .cast-name {
  margin-bottom: 0.5em;
  padding: 0.25em 1em;
  background: #9aa4af;
  color: #fff;
  font-weight: bold;
  font-size: 1.25em;
}

.cast-box .cast .cast-headshot,
.cast-box .cast .cast-profile {
  margin-left: 0;
  margin-bottom: 40px;
  padding-right: 0;
}

.cast-box .cast:last-child,
.cast-box .cast:last-child .cast-headshot,
.cast-box .cast:last-child .cast-profile {
  margin-bottom: 0;
}

.cast-box .cast .cast-headshot {
  margin: 10px 10px 10px 0;
  float: left;
  /*position: absolute;
	top: -10px;
	right: 10px;*/
}

.cast-box .cast .cast-profile {
  padding: 10px 10px 0 130px;
}

/*登場人物紹介２*/
.cast-box02 .cast {
  position: relative;
  margin-bottom: 20px;
}

.cast-box02 .cast dd {
  padding-left: 0;
}

.cast-box02 .cast-name {
  position: absolute;
  top: 150px;
  left: 0;
  right: 0;
  z-index: 1;
  width: 198px;
  max-width: 100%;
  margin: 0 auto;
  padding: 0.5em 0;
  border-top: 1px solid #848484;
  border-bottom: 1px solid #848484;
  background-color: rgba(60, 60, 60, 0.5);
  background-color: #3c3c3c\9; /*IE8への対応*/
  color: #fff;
  text-align: center;
  font-weight: bold;
}

html:not(:target) .cast-box02 .cast-name {
  background-color: rgba(60, 60, 60, 0.5); /*IE9以上への対応*/
}

.cast-box02 .cast .cast-headshot {
  position: relative;
  width: 100%;
  text-align: center;
  margin-bottom: 1em;
}

.col1 .cast-box02 .cast {
  padding-top: 0;
}

.col1 .cast-box02 .cast .cast-headshot {
  width: auto;
}

/*吹き出し*/
.chat-l,
.chat-r {
  position: relative;
  overflow: hidden;
  margin: 0 0 2em;
}

.bubble {
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 80%;
  min-height: 60px;
  margin-bottom: 2em;
  padding: 1em;
  border: 1px solid #ccc;
  background: #fff;
}

.bubble .bubble-in {
  border-color: #fff;
}

.talker {
  display: block;
  width: 15%;
  height: auto;
  text-align: center;
}

.talker b {
  font-weight: normal;
}

.talker img {
  display: block;
  width: 100px;
  max-width: 100%;
  margin: auto;
}

html:not(:target) .talker img {
  max-width: 100%; /*IE9以上への対応*/
}

.chat-l .talker {
  float: left;
  margin-right: 2%;
}

.chat-r .talker {
  float: right;
  margin-left: 2%;
}

.chat-l .bubble {
  float: right;
}

.chat-r .bubble {
  float: left;
}

.bubble .bubble-in:after,
.bubble .bubble-in:before {
  position: absolute;
  top: 50%;
  width: 0;
  height: 0;
  border: solid transparent;
  content: "";
}

/*吹き出しの微調整*/
.bubble .b-arw20:after,
.bubble .b-arw20:before {
  top: 20%;
}
.bubble .b-arw30:after,
.bubble .b-arw30:before {
  top: 30%;
}
.bubble .b-arw40:after,
.bubble .b-arw40:before {
  top: 40%;
}
.bubble .b-arw60:after,
.bubble .b-arw60:before {
  top: 60%;
}
.bubble .b-arw70:after,
.bubble .b-arw70:before {
  top: 70%;
}
.bubble .b-arw80:after,
.bubble .b-arw80:before {
  top: 80%;
}

.chat-l .bubble .bubble-in:after,
.chat-l .bubble .bubble-in:before {
  right: 100%;
}

.chat-r .bubble div:after,
.chat-r .bubble div:before {
  left: 100%;
}

.chat-l .bubble .bubble-in:after {
  margin-top: -8px;
  border-width: 8px 20px;
  border-color: transparent;
  border-right-color: inherit;
}

.chat-l .bubble .bubble-in:before {
  margin-top: -9px;
  border-width: 9px 21px;
  border-color: transparent;
  border-right-color: #ccc;
}

.chat-r .bubble .bubble-in:after {
  margin-top: -8px;
  border-width: 8px 20px;
  border-color: transparent;
  border-left-color: inherit;
}

.chat-r .bubble .bubble-in:before {
  margin-top: -9px;
  border-width: 9px 21px;
  border-color: transparent;
  border-left-color: #ccc;
}

.bubble p:first-child {
  margin-top: 0;
}

/*吹き出し 会話者が複数人の場合*/
.together .talker,
.together .bubble {
  width: 100%;
}

.together .talker b {
  display: inline-block;
  text-align: center;
}

.together.chat-l .talker,
.together.chat-r .talker {
  float: none;
  margin: 0 0 20px;
}

.together.chat-l .talker {
  text-align: left;
}

.together.chat-r .talker {
  text-align: right;
}

.together.chat-l .bubble,
.together.chat-r .bubble {
  float: none;
}

.together .bubble .bubble-in:after,
.together .bubble .bubble-in:before {
  top: auto;
  bottom: 100%;
}

.together.chat-l .bubble .bubble-in:after,
.together.chat-l .bubble .bubble-in:before {
  right: auto;
  left: 10%;
}

.together.chat-r .bubble .bubble-in:after,
.together.chat-r .bubble .bubble-in:before {
  right: 10%;
  left: auto;
}

.together.chat-l .bubble .bubble-in:after {
  margin-top: -20px;
  margin-left: -8px;
  border-width: 20px 8px;
  border-color: transparent;
  border-bottom-color: inherit;
}

.together.chat-l .bubble .bubble-in:before {
  margin-top: -21px;
  margin-left: -9px;
  border-width: 21px 9px;
  border-color: transparent;
  border-bottom-color: #ccc;
}

.together.chat-r .bubble .bubble-in:after {
  border-width: 20px 8px;
  margin-top: -20px;
  margin-right: -8px;
  border-color: transparent;
  border-bottom-color: inherit;
}

.together.chat-r .bubble .bubble-in:before {
  margin-top: -21px;
  margin-right: -9px;
  border-width: 21px 9px;
  border-color: transparent;
  border-bottom-color: #ccc;
}

.bubble-in p:last-child {
  margin-bottom: 0;
}

/*吹き出し背景色：青（HTML版のみ）*/
.bubble-blue {
  border: 1px solid #e1f5fe;
  background: #e1f5fe;
}

.chat-l .bubble-blue .bubble-in:after,
.chat-l .bubble-blue .bubble-in:before {
  border-right-color: #e1f5fe;
}

.chat-r .bubble-blue .bubble-in:after,
.chat-r .bubble-blue .bubble-in:before {
  border-left-color: #e1f5fe;
}

.together.chat-l .bubble-blue .bubble-in:after,
.together.chat-l .bubble-blue .bubble-in:before,
.together.chat-r .bubble-blue .bubble-in:after,
.together.chat-r .bubble-blue .bubble-in:before {
  border-bottom-color: #e1f5fe;
}

/*吹き出し背景色：緑（HTML版のみ）*/
.bubble-green {
  border: 1px solid #e8f5e9;
  background: #e8f5e9;
}

.chat-l .bubble-green .bubble-in:after,
.chat-l .bubble-green .bubble-in:before {
  border-right-color: #e8f5e9;
}

.chat-r .bubble-green .bubble-in:after,
.chat-r .bubble-green .bubble-in:before {
  border-left-color: #e8f5e9;
}

.together.chat-l .bubble-green .bubble-in:after,
.together.chat-l .bubble-green .bubble-in:before,
.together.chat-r .bubble-green .bubble-in:after,
.together.chat-r .bubble-green .bubble-in:before {
  border-bottom-color: #e8f5e9;
}

/*吹き出し背景色：黄（HTML版のみ）*/
.bubble-yellow {
  border: 1px solid #fff8ba;
  background: #fff8ba;
}

.chat-l .bubble-yellow .bubble-in:after,
.chat-l .bubble-yellow .bubble-in:before {
  border-right-color: #fff8ba;
}

.chat-r .bubble-yellow .bubble-in:after,
.chat-r .bubble-yellow .bubble-in:before {
  border-left-color: #fff8ba;
}

.together.chat-l .bubble-yellow .bubble-in:after,
.together.chat-l .bubble-yellow .bubble-in:before,
.together.chat-r .bubble-yellow .bubble-in:after,
.together.chat-r .bubble-yellow .bubble-in:before {
  border-bottom-color: #fff8ba;
}

/*吹き出し背景色：オレンジ（HTML版のみ）*/
.bubble-orange {
  border: 1px solid #ffd699;
  background: #ffd699;
}

.chat-l .bubble-orange .bubble-in:after,
.chat-l .bubble-orange .bubble-in:before {
  border-right-color: #ffd699;
}

.chat-r .bubble-orange .bubble-in:after,
.chat-r .bubble-orange .bubble-in:before {
  border-left-color: #ffd699;
}

.together.chat-l .bubble-orange .bubble-in:after,
.together.chat-l .bubble-orange .bubble-in:before,
.together.chat-r .bubble-orange .bubble-in:after,
.together.chat-r .bubble-orange .bubble-in:before {
  border-bottom-color: #ffd699;
}

/*吹き出し背景色：ピンク（HTML版のみ）*/
.bubble-pink {
  border: 1px solid #fbe9e7;
  background: #fbe9e7;
}

.chat-l .bubble-pink .bubble-in:after,
.chat-l .bubble-pink .bubble-in:before {
  border-right-color: #fbe9e7;
}

.chat-r .bubble-pink .bubble-in:after,
.chat-r .bubble-pink .bubble-in:before {
  border-left-color: #fbe9e7;
}

.together.chat-l .bubble-pink .bubble-in:after,
.together.chat-l .bubble-pink .bubble-in:before,
.together.chat-r .bubble-pink .bubble-in:after,
.together.chat-r .bubble-pink .bubble-in:before {
  border-bottom-color: #fbe9e7;
}

/*吹き出し背景色：ピンク（HTML版のみ）*/
.bubble-red {
  border: 1px solid #f27573;
  background: #f27573;
  color: #fff;
}

.chat-l .bubble-red .bubble-in:after,
.chat-l .bubble-red .bubble-in:before {
  border-right-color: #f27573;
}

.chat-r .bubble-red .bubble-in:after,
.chat-r .bubble-red .bubble-in:before {
  border-left-color: #f27573;
}

.together.chat-l .bubble-red .bubble-in:after,
.together.chat-l .bubble-red .bubble-in:before,
.together.chat-r .bubble-red .bubble-in:after,
.together.chat-r .bubble-red .bubble-in:before {
  border-bottom-color: #f27573;
}

/*吹き出し背景色：ブラック（HTML版のみ）*/
.bubble-black {
  border: 1px solid #777777;
  background: #777777;
  color: #fff;
}

.chat-l .bubble-black .bubble-in:after,
.chat-l .bubble-black .bubble-in:before {
  border-right-color: #777777;
}

.chat-r .bubble-black .bubble-in:after,
.chat-r .bubble-black .bubble-in:before {
  border-left-color: #777777;
}

.together.chat-l .bubble-black .bubble-in:after,
.together.chat-l .bubble-black .bubble-in:before,
.together.chat-r .bubble-black .bubble-in:after,
.together.chat-r .bubble-black .bubble-in:before {
  border-bottom-color: #777777;
}

/*ランキング*/
.main-body .ranking-list {
  margin-right: 0;
  margin-left: 0;
}

.main-body .ranking-list li {
  list-style: none;
  overflow: hidden;
  margin-bottom: 40px;
}

.main-body .rank-title {
  padding: 5px 0;
  border: none;
  background: none;
  font-weight: normal;
  font-size: 1.5em;
}

.main-body .rank-title {
  margin-top: 0;
}

.rank-thumb {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
}

.sub-conts .ranking-list03 .rank-thumb img {
  width: 100px;
  height: auto;
}

.col2 .sub-conts .ranking-list01 .rank-thumb,
.col2 .sub-conts .ranking-list02 .rank-thumb,
.col2r .sub-conts .ranking-list01 .rank-thumb,
.col2r .sub-conts .ranking-list02 .rank-thumb {
  float: none;
  text-align: center;
}

.rank-desc {
  overflow: hidden;
}

/*ランキング用の王冠アイコンのリスト*/
.ranking-list01 > li .rank-title {
  padding-left: 60px;
}

.ranking-list01 .rank01 .rank-title {
  background: url(./images/icon/icon-rank01-01.png) left top no-repeat;
}
.ranking-list01 .rank02 .rank-title {
  background: url(./images/icon/icon-rank01-02.png) left top no-repeat;
}
.ranking-list01 .rank03 .rank-title {
  background: url(./images/icon/icon-rank01-03.png) left top no-repeat;
}
.ranking-list01 .rank04 .rank-title {
  background: url(./images/icon/icon-rank01-04.png) left top no-repeat;
}
.ranking-list01 .rank05 .rank-title {
  background: url(./images/icon/icon-rank01-05.png) left top no-repeat;
}
.ranking-list01 .rank06 .rank-title {
  background: url(./images/icon/icon-rank01-06.png) left top no-repeat;
}
.ranking-list01 .rank07 .rank-title {
  background: url(./images/icon/icon-rank01-07.png) left top no-repeat;
}
.ranking-list01 .rank08 .rank-title {
  background: url(./images/icon/icon-rank01-08.png) left top no-repeat;
}
.ranking-list01 .rank09 .rank-title {
  background: url(./images/icon/icon-rank01-09.png) left top no-repeat;
}
.ranking-list01 .rank10 .rank-title {
  background: url(./images/icon/icon-rank01-10.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .ranking-list01 .rank01 .rank-title {
    background: url(./images/icon/icon-rank01-01@2x.png) left top no-repeat;
  }
  .ranking-list01 .rank02 .rank-title {
    background: url(./images/icon/icon-rank01-02@2x.png) left top no-repeat;
  }
  .ranking-list01 .rank03 .rank-title {
    background: url(./images/icon/icon-rank01-03@2x.png) left top no-repeat;
  }
  .ranking-list01 .rank04 .rank-title {
    background: url(./images/icon/icon-rank01-04@2x.png) left top no-repeat;
  }
  .ranking-list01 .rank05 .rank-title {
    background: url(./images/icon/icon-rank01-05@2x.png) left top no-repeat;
  }
  .ranking-list01 .rank06 .rank-title {
    background: url(./images/icon/icon-rank01-06@2x.png) left top no-repeat;
  }
  .ranking-list01 .rank07 .rank-title {
    background: url(./images/icon/icon-rank01-07@2x.png) left top no-repeat;
  }
  .ranking-list01 .rank08 .rank-title {
    background: url(./images/icon/icon-rank01-08@2x.png) left top no-repeat;
  }
  .ranking-list01 .rank09 .rank-title {
    background: url(./images/icon/icon-rank01-09@2x.png) left top no-repeat;
  }
  .ranking-list01 .rank10 .rank-title {
    background: url(./images/icon/icon-rank01-10@2x.png) left top no-repeat;
  }
  .ranking-list01 .rank01 .rank-title,
  .ranking-list01 .rank02 .rank-title,
  .ranking-list01 .rank03 .rank-title,
  .ranking-list01 .rank04 .rank-title,
  .ranking-list01 .rank05 .rank-title,
  .ranking-list01 .rank06 .rank-title,
  .ranking-list01 .rank07 .rank-title,
  .ranking-list01 .rank08 .rank-title,
  .ranking-list01 .rank09 .rank-title,
  .ranking-list01 .rank10 .rank-title {
    -webkit-background-size: 48px 40px;
    background-size: 48px 40px;
  }
}

/*ランキング用のメダルアイコンのリスト*/
.ranking-list02 > li .rank-title {
  padding-left: 60px;
  padding-bottom: 10px;
}

.ranking-list02 .rank01 .rank-title {
  background: url(./images/icon/icon-rank02-01.png) left top no-repeat;
}
.ranking-list02 .rank02 .rank-title {
  background: url(./images/icon/icon-rank02-02.png) left top no-repeat;
}
.ranking-list02 .rank03 .rank-title {
  background: url(./images/icon/icon-rank02-03.png) left top no-repeat;
}
.ranking-list02 .rank04 .rank-title {
  background: url(./images/icon/icon-rank02-04.png) left top no-repeat;
}
.ranking-list02 .rank05 .rank-title {
  background: url(./images/icon/icon-rank02-05.png) left top no-repeat;
}
.ranking-list02 .rank06 .rank-title {
  background: url(./images/icon/icon-rank02-06.png) left top no-repeat;
}
.ranking-list02 .rank07 .rank-title {
  background: url(./images/icon/icon-rank02-07.png) left top no-repeat;
}
.ranking-list02 .rank08 .rank-title {
  background: url(./images/icon/icon-rank02-08.png) left top no-repeat;
}
.ranking-list02 .rank09 .rank-title {
  background: url(./images/icon/icon-rank02-09.png) left top no-repeat;
}
.ranking-list02 .rank10 .rank-title {
  background: url(./images/icon/icon-rank02-10.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .ranking-list02 .rank01 .rank-title {
    background: url(./images/icon/icon-rank02-01@2x.png) left top no-repeat;
  }
  .ranking-list02 .rank02 .rank-title {
    background: url(./images/icon/icon-rank02-02@2x.png) left top no-repeat;
  }
  .ranking-list02 .rank03 .rank-title {
    background: url(./images/icon/icon-rank02-03@2x.png) left top no-repeat;
  }
  .ranking-list02 .rank04 .rank-title {
    background: url(./images/icon/icon-rank02-04@2x.png) left top no-repeat;
  }
  .ranking-list02 .rank05 .rank-title {
    background: url(./images/icon/icon-rank02-05@2x.png) left top no-repeat;
  }
  .ranking-list02 .rank06 .rank-title {
    background: url(./images/icon/icon-rank02-06@2x.png) left top no-repeat;
  }
  .ranking-list02 .rank07 .rank-title {
    background: url(./images/icon/icon-rank02-07@2x.png) left top no-repeat;
  }
  .ranking-list02 .rank08 .rank-title {
    background: url(./images/icon/icon-rank02-08@2x.png) left top no-repeat;
  }
  .ranking-list02 .rank09 .rank-title {
    background: url(./images/icon/icon-rank02-09@2x.png) left top no-repeat;
  }
  .ranking-list02 .rank10 .rank-title {
    background: url(./images/icon/icon-rank02-10@2x.png) left top no-repeat;
  }

  .ranking-list02 .rank01 .rank-title,
  .ranking-list02 .rank02 .rank-title,
  .ranking-list02 .rank03 .rank-title,
  .ranking-list02 .rank04 .rank-title,
  .ranking-list02 .rank05 .rank-title,
  .ranking-list02 .rank06 .rank-title,
  .ranking-list02 .rank07 .rank-title,
  .ranking-list02 .rank08 .rank-title,
  .ranking-list02 .rank09 .rank-title,
  .ranking-list02 .rank10 .rank-title {
    -webkit-background-size: 40px 45px;
    background-size: 40px 45px;
  }
}

/*ランキング用のシンプルなリスト*/
.ranking-list03 > li .rank-title {
  padding: 5px 0;
  padding-left: 58px;
  font-size: 1.25em;
}

.sub-conts .ranking-list03 > li .rank-title {
  min-height: 30px;
  padding: 0;
  padding-left: 40px;
  font-size: 1.25em;
}

.ranking-list03 .rank01 .rank-title,
.ranking-list03 .rank02 .rank-title,
.ranking-list03 .rank03 .rank-title {
  border-bottom: 1px solid #909090;
}

.ranking-list03 .rank01 .rank-title {
  background: url(./images/icon/icon-rank03-01.png) left top no-repeat;
}
.ranking-list03 .rank02 .rank-title {
  background: url(./images/icon/icon-rank03-02.png) left top no-repeat;
}
.ranking-list03 .rank03 .rank-title {
  background: url(./images/icon/icon-rank03-03.png) left top no-repeat;
}
.ranking-list03 .rank04 .rank-title {
  background: url(./images/icon/icon-rank03-04.png) left top no-repeat;
}
.ranking-list03 .rank05 .rank-title {
  background: url(./images/icon/icon-rank03-05.png) left top no-repeat;
}
.ranking-list03 .rank06 .rank-title {
  background: url(./images/icon/icon-rank03-06.png) left top no-repeat;
}
.ranking-list03 .rank07 .rank-title {
  background: url(./images/icon/icon-rank03-07.png) left top no-repeat;
}
.ranking-list03 .rank08 .rank-title {
  background: url(./images/icon/icon-rank03-08.png) left top no-repeat;
}
.ranking-list03 .rank09 .rank-title {
  background: url(./images/icon/icon-rank03-09.png) left top no-repeat;
}
.ranking-list03 .rank10 .rank-title {
  background: url(./images/icon/icon-rank03-10.png) left top no-repeat;
}

.sub-conts .ranking-list03 .rank01 .rank-title {
  background: url(./images/icon/icon-rank04-01.png) left top no-repeat;
}
.sub-conts .ranking-list03 .rank02 .rank-title {
  background: url(./images/icon/icon-rank04-02.png) left top no-repeat;
}
.sub-conts .ranking-list03 .rank03 .rank-title {
  background: url(./images/icon/icon-rank04-03.png) left top no-repeat;
}
.sub-conts .ranking-list03 .rank04 .rank-title {
  background: url(./images/icon/icon-rank04-04.png) left top no-repeat;
}
.sub-conts .ranking-list03 .rank05 .rank-title {
  background: url(./images/icon/icon-rank04-05.png) left top no-repeat;
}
.sub-conts .ranking-list03 .rank06 .rank-title {
  background: url(./images/icon/icon-rank04-06.png) left top no-repeat;
}
.sub-conts .ranking-list03 .rank07 .rank-title {
  background: url(./images/icon/icon-rank04-07.png) left top no-repeat;
}
.sub-conts .ranking-list03 .rank08 .rank-title {
  background: url(./images/icon/icon-rank04-08.png) left top no-repeat;
}
.sub-conts .ranking-list03 .rank09 .rank-title {
  background: url(./images/icon/icon-rank04-09.png) left top no-repeat;
}
.sub-conts .ranking-list03 .rank10 .rank-title {
  background: url(./images/icon/icon-rank04-10.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .ranking-list03 .rank01 .rank-title {
    background: url(./images/icon/icon-rank03-01@2x.png) left top no-repeat;
  }
  .ranking-list03 .rank02 .rank-title {
    background: url(./images/icon/icon-rank03-02@2x.png) left top no-repeat;
  }
  .ranking-list03 .rank03 .rank-title {
    background: url(./images/icon/icon-rank03-03@2x.png) left top no-repeat;
  }
  .ranking-list03 .rank04 .rank-title {
    background: url(./images/icon/icon-rank03-04@2x.png) left top no-repeat;
  }
  .ranking-list03 .rank05 .rank-title {
    background: url(./images/icon/icon-rank03-05@2x.png) left top no-repeat;
  }
  .ranking-list03 .rank06 .rank-title {
    background: url(./images/icon/icon-rank03-06@2x.png) left top no-repeat;
  }
  .ranking-list03 .rank07 .rank-title {
    background: url(./images/icon/icon-rank03-07@2x.png) left top no-repeat;
  }
  .ranking-list03 .rank08 .rank-title {
    background: url(./images/icon/icon-rank03-08@2x.png) left top no-repeat;
  }
  .ranking-list03 .rank09 .rank-title {
    background: url(./images/icon/icon-rank03-09@2x.png) left top no-repeat;
  }
  .ranking-list03 .rank10 .rank-title {
    background: url(./images/icon/icon-rank03-10@2x.png) left top no-repeat;
  }

  .ranking-list03 .rank01 .rank-title,
  .ranking-list03 .rank02 .rank-title,
  .ranking-list03 .rank03 .rank-title,
  .ranking-list03 .rank04 .rank-title,
  .ranking-list03 .rank05 .rank-title,
  .ranking-list03 .rank06 .rank-title,
  .ranking-list03 .rank07 .rank-title,
  .ranking-list03 .rank08 .rank-title,
  .ranking-list03 .rank09 .rank-title,
  .ranking-list03 .rank10 .rank-title {
    -webkit-background-size: 40px 48px;
    background-size: 40px 48px;
  }

  .sub-conts .ranking-list03 .rank01 .rank-title {
    background: url(./images/icon/icon-rank04-01@2x.png) left top no-repeat;
  }
  .sub-conts .ranking-list03 .rank02 .rank-title {
    background: url(./images/icon/icon-rank04-02@2x.png) left top no-repeat;
  }
  .sub-conts .ranking-list03 .rank03 .rank-title {
    background: url(./images/icon/icon-rank04-03@2x.png) left top no-repeat;
  }
  .sub-conts .ranking-list03 .rank04 .rank-title {
    background: url(./images/icon/icon-rank04-04@2x.png) left top no-repeat;
  }
  .sub-conts .ranking-list03 .rank05 .rank-title {
    background: url(./images/icon/icon-rank04-05@2x.png) left top no-repeat;
  }
  .sub-conts .ranking-list03 .rank06 .rank-title {
    background: url(./images/icon/icon-rank04-06@2x.png) left top no-repeat;
  }
  .sub-conts .ranking-list03 .rank07 .rank-title {
    background: url(./images/icon/icon-rank04-07@2x.png) left top no-repeat;
  }
  .sub-conts .ranking-list03 .rank08 .rank-title {
    background: url(./images/icon/icon-rank04-08@2x.png) left top no-repeat;
  }
  .sub-conts .ranking-list03 .rank09 .rank-title {
    background: url(./images/icon/icon-rank04-09@2x.png) left top no-repeat;
  }
  .sub-conts .ranking-list03 .rank10 .rank-title {
    background: url(./images/icon/icon-rank04-10@2x.png) left top no-repeat;
  }

  .sub-conts .ranking-list03 .rank01 .rank-title,
  .sub-conts .ranking-list03 .rank02 .rank-title,
  .sub-conts .ranking-list03 .rank03 .rank-title,
  .sub-conts .ranking-list03 .rank04 .rank-title,
  .sub-conts .ranking-list03 .rank05 .rank-title,
  .sub-conts .ranking-list03 .rank06 .rank-title,
  .sub-conts .ranking-list03 .rank07 .rank-title,
  .sub-conts .ranking-list03 .rank08 .rank-title,
  .sub-conts .ranking-list03 .rank09 .rank-title,
  .sub-conts .ranking-list03 .rank10 .rank-title {
    -webkit-background-size: 30px 30px;
    background-size: 30px 30px;
  }
}

/*ランキング用の画像＋ランキング番号のリスト*/
.ranking-list .on-image {
}

.ranking-list .on-image .rank-title {
  padding: 0 !important;
  border: 0;
  background: none !important;
  font-size: 1.25em;
}

.ranking-list .on-image .rank-thumb {
  position: relative;
}

.ranking-list .on-image .rank-thumb:before,
.ranking-list .on-image .rank-thumb:before,
.ranking-list .on-image .rank-thumb:before {
  position: absolute;
  top: 0;
  left: 0;
}

.ranking-list03 > .rank01.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank03-01.png);
}
.ranking-list03 > .rank02.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank03-02.png);
}
.ranking-list03 > .rank03.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank03-03.png);
}
.ranking-list03 > .rank04.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank03-04.png);
}
.ranking-list03 > .rank05.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank03-05.png);
}
.ranking-list03 > .rank06.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank03-06.png);
}
.ranking-list03 > .rank07.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank03-07.png);
}
.ranking-list03 > .rank08.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank03-08.png);
}
.ranking-list03 > .rank09.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank03-09.png);
}
.ranking-list03 > .rank10.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank03-10.png);
}

.sub-conts .ranking-list03 > .rank01.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank04-01.png);
}
.sub-conts .ranking-list03 > .rank02.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank04-02.png);
}
.sub-conts .ranking-list03 > .rank03.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank04-03.png);
}
.sub-conts .ranking-list03 > .rank04.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank04-04.png);
}
.sub-conts .ranking-list03 > .rank05.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank04-05.png);
}
.sub-conts .ranking-list03 > .rank06.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank04-06.png);
}
.sub-conts .ranking-list03 > .rank07.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank04-07.png);
}
.sub-conts .ranking-list03 > .rank08.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank04-08.png);
}
.sub-conts .ranking-list03 > .rank09.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank04-09.png);
}
.sub-conts .ranking-list03 > .rank10.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank04-10.png);
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .ranking-list03 > .rank01.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank03-01@2x.png);
  }
  .ranking-list03 > .rank02.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank03-02@2x.png);
  }
  .ranking-list03 > .rank03.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank03-03@2x.png);
  }
  .ranking-list03 > .rank04.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank03-04@2x.png);
  }
  .ranking-list03 > .rank05.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank03-05@2x.png);
  }
  .ranking-list03 > .rank06.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank03-06@2x.png);
  }
  .ranking-list03 > .rank07.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank03-07@2x.png);
  }
  .ranking-list03 > .rank08.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank03-08@2x.png);
  }
  .ranking-list03 > .rank09.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank03-09@2x.png);
  }
  .ranking-list03 > .rank10.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank03-10@2x.png);
  }

  .ranking-list03 > .rank01.on-image .rank-thumb:before,
  .ranking-list03 > .rank02.on-image .rank-thumb:before,
  .ranking-list03 > .rank03.on-image .rank-thumb:before,
  .ranking-list03 > .rank04.on-image .rank-thumb:before,
  .ranking-list03 > .rank05.on-image .rank-thumb:before,
  .ranking-list03 > .rank06.on-image .rank-thumb:before,
  .ranking-list03 > .rank07.on-image .rank-thumb:before,
  .ranking-list03 > .rank08.on-image .rank-thumb:before,
  .ranking-list03 > .rank09.on-image .rank-thumb:before,
  .ranking-list03 > .rank10.on-image .rank-thumb:before {
    display: inline-block;
    width: 48px;
    height: 48px;
    vertical-align: middle;
    -webkit-background-size: contain;
    background-size: contain;
    content: " ";
  }

  .sub-conts .ranking-list03 > .rank01.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank04-01@2x.png);
  }
  .sub-conts .ranking-list03 > .rank02.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank04-02@2x.png);
  }
  .sub-conts .ranking-list03 > .rank03.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank04-03@2x.png);
  }
  .sub-conts .ranking-list03 > .rank04.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank04-04@2x.png);
  }
  .sub-conts .ranking-list03 > .rank05.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank04-05@2x.png);
  }
  .sub-conts .ranking-list03 > .rank06.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank04-06@2x.png);
  }
  .sub-conts .ranking-list03 > .rank07.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank04-07@2x.png);
  }
  .sub-conts .ranking-list03 > .rank08.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank04-08@2x.png);
  }
  .sub-conts .ranking-list03 > .rank09.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank04-09@2x.png);
  }
  .sub-conts .ranking-list03 > .rank10.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank04-10@2x.png);
  }

  .sub-conts .ranking-list03 > .rank01.on-image .rank-thumb:before,
  .sub-conts .ranking-list03 > .rank02.on-image .rank-thumb:before,
  .sub-conts .ranking-list03 > .rank03.on-image .rank-thumb:before,
  .sub-conts .ranking-list03 > .rank04.on-image .rank-thumb:before,
  .sub-conts .ranking-list03 > .rank05.on-image .rank-thumb:before,
  .sub-conts .ranking-list03 > .rank06.on-image .rank-thumb:before,
  .sub-conts .ranking-list03 > .rank07.on-image .rank-thumb:before,
  .sub-conts .ranking-list03 > .rank08.on-image .rank-thumb:before,
  .sub-conts .ranking-list03 > .rank09.on-image .rank-thumb:before,
  .sub-conts .ranking-list03 > .rank10.on-image .rank-thumb:before {
    display: inline-block;
    width: 30px;
    height: 30px;
    vertical-align: middle;
    -webkit-background-size: contain;
    background-size: contain;
    content: " ";
  }
}

/*画像＋テキストのリスト（ランキング用）*/
.ranking-list04 .rank-box {
  position: relative;
  width: 320px;
  margin-right: auto;
  margin-left: auto;
}

.col1 .ranking-list04 li {
  display: inline-block;
  margin-right: 20px;
}

.ranking-list04 .rank-box img {
  width: 100%;
}

.ranking-list04 .on-image .rank-box:before,
.ranking-list04 .on-image .rank-box:before,
.ranking-list04 .on-image .rank-box:before {
  position: absolute;
  top: 0;
  left: 0;
}

.ranking-list04 .on-image .rank-box .rank-text {
  position: absolute;
  bottom: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.5);
  background-color: #000000\9; /*IE8への対応*/
  color: #fff;
}

html:not(:target) .ranking-list04 .on-image .rank-box .rank-text {
  background-color: rgba(0, 0, 0, 0.5); /*IE9以上への対応*/
}

.ranking-list04 .on-image .rank-box a {
  color: #fff;
}

.ranking-list04 .on-image .rank-box a:hover,
.ranking-list04 .on-image .rank-box a:active,
.ranking-list04 .on-image .rank-box a:focus {
  color: #f60;
}

.ranking-list04 > .rank01.on-image .rank-box:before {
  content: url(./images/icon/icon-rank03-01.png);
}
.ranking-list04 > .rank02.on-image .rank-box:before {
  content: url(./images/icon/icon-rank03-02.png);
}
.ranking-list04 > .rank03.on-image .rank-box:before {
  content: url(./images/icon/icon-rank03-03.png);
}
.ranking-list04 > .rank04.on-image .rank-box:before {
  content: url(./images/icon/icon-rank03-04.png);
}
.ranking-list04 > .rank05.on-image .rank-box:before {
  content: url(./images/icon/icon-rank03-05.png);
}
.ranking-list04 > .rank06.on-image .rank-box:before {
  content: url(./images/icon/icon-rank03-06.png);
}
.ranking-list04 > .rank07.on-image .rank-box:before {
  content: url(./images/icon/icon-rank03-07.png);
}
.ranking-list04 > .rank08.on-image .rank-box:before {
  content: url(./images/icon/icon-rank03-08.png);
}
.ranking-list04 > .rank09.on-image .rank-box:before {
  content: url(./images/icon/icon-rank03-09.png);
}
.ranking-list04 > .rank10.on-image .rank-box:before {
  content: url(./images/icon/icon-rank03-10.png);
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .ranking-list04 > .rank01.on-image .rank-box:before {
    background: url(./images/icon/icon-rank03-01@2x.png);
  }
  .ranking-list04 > .rank02.on-image .rank-box:before {
    background: url(./images/icon/icon-rank03-02@2x.png);
  }
  .ranking-list04 > .rank03.on-image .rank-box:before {
    background: url(./images/icon/icon-rank03-03@2x.png);
  }
  .ranking-list04 > .rank04.on-image .rank-box:before {
    background: url(./images/icon/icon-rank03-04@2x.png);
  }
  .ranking-list04 > .rank05.on-image .rank-box:before {
    background: url(./images/icon/icon-rank03-05@2x.png);
  }
  .ranking-list04 > .rank06.on-image .rank-box:before {
    background: url(./images/icon/icon-rank03-06@2x.png);
  }
  .ranking-list04 > .rank07.on-image .rank-box:before {
    background: url(./images/icon/icon-rank03-07@2x.png);
  }
  .ranking-list04 > .rank08.on-image .rank-box:before {
    background: url(./images/icon/icon-rank03-08@2x.png);
  }
  .ranking-list04 > .rank09.on-image .rank-box:before {
    background: url(./images/icon/icon-rank03-09@2x.png);
  }
  .ranking-list04 > .rank10.on-image .rank-box:before {
    background: url(./images/icon/icon-rank03-10@2x.png);
  }

  .ranking-list04 > .rank01.on-image .rank-box:before,
  .ranking-list04 > .rank02.on-image .rank-box:before,
  .ranking-list04 > .rank03.on-image .rank-box:before,
  .ranking-list04 > .rank04.on-image .rank-box:before,
  .ranking-list04 > .rank05.on-image .rank-box:before,
  .ranking-list04 > .rank06.on-image .rank-box:before,
  .ranking-list04 > .rank07.on-image .rank-box:before,
  .ranking-list04 > .rank08.on-image .rank-box:before,
  .ranking-list04 > .rank09.on-image .rank-box:before,
  .ranking-list04 > .rank10.on-image .rank-box:before {
    display: inline-block;
    width: 48px;
    height: 48px;
    vertical-align: middle;
    -webkit-background-size: contain;
    background-size: contain;
    content: " ";
  }
}

/*背景画像＋テキストのリスト（ランキング用）*/
.ranking-list05 .rank-box {
  position: relative;
  margin-right: auto;
  margin-left: auto;
  background-position: center center;
  background-size: cover;
}
.col1 .ranking-list05 .rank-box {
  width: 320px;
}

.col1 .ranking-list05 li {
  display: inline-block;
  margin-right: 20px;
}

.ranking-list05 .rank-box a {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 180px;
  padding: 3em 1em 1em;
  background-color: rgba(0, 0, 0, 0.5);
  background-color: #000000\9; /*IE8への対応*/
  color: #fff;
}

html:not(:target) .ranking-list05 .rank-box a {
  background-color: rgba(0, 0, 0, 0.5); /*IE9以上への対応*/
}

.ranking-list05 .rank-box a:hover,
.ranking-list05 .rank-box a:active,
.ranking-list05 .rank-box a:focus {
  color: #f60;
}

.ranking-list05 .on-image .rank-box:before,
.ranking-list05 .on-image .rank-box:before,
.ranking-list05 .on-image .rank-box:before {
  position: absolute;
  top: 0;
  left: 0;
}

.ranking-list05 > .rank01.on-image .rank-box:before {
  content: url(./images/icon/icon-rank04-01.png);
}
.ranking-list05 > .rank02.on-image .rank-box:before {
  content: url(./images/icon/icon-rank04-02.png);
}
.ranking-list05 > .rank03.on-image .rank-box:before {
  content: url(./images/icon/icon-rank04-03.png);
}
.ranking-list05 > .rank04.on-image .rank-box:before {
  content: url(./images/icon/icon-rank04-04.png);
}
.ranking-list05 > .rank05.on-image .rank-box:before {
  content: url(./images/icon/icon-rank04-05.png);
}
.ranking-list05 > .rank06.on-image .rank-box:before {
  content: url(./images/icon/icon-rank04-06.png);
}
.ranking-list05 > .rank07.on-image .rank-box:before {
  content: url(./images/icon/icon-rank04-07.png);
}
.ranking-list05 > .rank08.on-image .rank-box:before {
  content: url(./images/icon/icon-rank04-08.png);
}
.ranking-list05 > .rank09.on-image .rank-box:before {
  content: url(./images/icon/icon-rank04-09.png);
}
.ranking-list05 > .rank10.on-image .rank-box:before {
  content: url(./images/icon/icon-rank04-10.png);
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .ranking-list05 > .rank01.on-image .rank-box:before {
    background: url(./images/icon/icon-rank04-01@2x.png);
  }
  .ranking-list05 > .rank02.on-image .rank-box:before {
    background: url(./images/icon/icon-rank04-02@2x.png);
  }
  .ranking-list05 > .rank03.on-image .rank-box:before {
    background: url(./images/icon/icon-rank04-03@2x.png);
  }
  .ranking-list05 > .rank04.on-image .rank-box:before {
    background: url(./images/icon/icon-rank04-04@2x.png);
  }
  .ranking-list05 > .rank05.on-image .rank-box:before {
    background: url(./images/icon/icon-rank04-05@2x.png);
  }
  .ranking-list05 > .rank06.on-image .rank-box:before {
    background: url(./images/icon/icon-rank04-06@2x.png);
  }
  .ranking-list05 > .rank07.on-image .rank-box:before {
    background: url(./images/icon/icon-rank04-07@2x.png);
  }
  .ranking-list05 > .rank08.on-image .rank-box:before {
    background: url(./images/icon/icon-rank04-08@2x.png);
  }
  .ranking-list05 > .rank09.on-image .rank-box:before {
    background: url(./images/icon/icon-rank04-09@2x.png);
  }
  .ranking-list05 > .rank10.on-image .rank-box:before {
    background: url(./images/icon/icon-rank04-10@2x.png);
  }

  .ranking-list05 > .rank01.on-image .rank-box:before,
  .ranking-list05 > .rank02.on-image .rank-box:before,
  .ranking-list05 > .rank03.on-image .rank-box:before,
  .ranking-list05 > .rank04.on-image .rank-box:before,
  .ranking-list05 > .rank05.on-image .rank-box:before,
  .ranking-list05 > .rank06.on-image .rank-box:before,
  .ranking-list05 > .rank07.on-image .rank-box:before,
  .ranking-list05 > .rank08.on-image .rank-box:before,
  .ranking-list05 > .rank09.on-image .rank-box:before,
  .ranking-list05 > .rank10.on-image .rank-box:before {
    display: inline-block;
    width: 30px;
    height: 30px;
    vertical-align: middle;
    -webkit-background-size: contain;
    background-size: contain;
    content: " ";
  }
}

/*順位の無しのリスト*/
.main-body .post-list01,
.main-body .post-list02 {
  margin-right: 0;
  margin-left: 0;
}

.main-body .post-list01 li,
.main-body .post-list02 li {
  list-style: none;
  overflow: hidden;
  margin-bottom: 40px;
}

/*画像＋テキストのリスト*/
.post-list01 .post-box {
  position: relative;
  margin-right: auto;
  margin-left: auto;
}

.col1 .post-list01 li {
  display: inline-block;
  margin-right: 20px;
}

.post-list01 .post-box img {
  width: 100%;
}

.post-list01 .on-image .post-box:before,
.post-list01 .on-image .post-box:before,
.post-list01 .on-image .post-box:before {
  position: absolute;
  top: 0;
  left: 0;
}

.post-list01 .on-image .post-box .post-text {
  position: absolute;
  bottom: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.5);
  background-color: #000000\9; /*IE8への対応*/
  color: #fff;
}

html:not(:target) .post-list01 .on-image .post-box .post-text {
  background-color: rgba(0, 0, 0, 0.5); /*IE9以上への対応*/
}

.post-list01 .on-image .post-box a {
  color: #fff;
}

.post-list01 .on-image .post-box a:hover,
.post-list01 .on-image .post-box a:active,
.post-list01 .on-image .post-box a:focus {
  color: #f60;
}

/*背景画像＋テキストのリスト*/
.post-list02 .post-box {
  position: relative;
  margin-right: auto;
  margin-left: auto;
  background-position: center center;
  background-size: cover;
}

.col1 .post-list02 .post-box {
  width: 320px;
}

.col1 .post-list02 li {
  display: inline-block;
  margin-right: 20px;
}

.post-list02 .post-box a {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 180px;
  padding: 1em;
  background-color: rgba(0, 0, 0, 0.5);
  background-color: #000000\9; /*IE8への対応*/
  color: #fff;
}

html:not(:target) .post-list02 .post-box a {
  background-color: rgba(0, 0, 0, 0.5); /*IE9以上への対応*/
}

.post-list02 .post-box a:hover,
.post-list02 .post-box a:active,
.post-list02 .post-box a:focus {
  color: #f60;
}

.post-list02 .on-image .post-box:before,
.post-list02 .on-image .post-box:before,
.post-list02 .on-image .post-box:before {
  position: absolute;
  top: 0;
  left: 0;
}

/*情報比較リスト*/
.review-table {
  width: auto;
  margin-top: 0;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
}

.rank-thumb .review-table {
  width: 100%;
  margin-bottom: 0;
}

.review-table th,
.review-table td {
  line-height: 1;
  padding: 0.5em;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  background-color: #e9e9e9;
}

.review-table th {
  font-weight: normal;
}

.star00,
.star05,
.star10,
.star15,
.star20,
.star25,
.star30,
.star35,
.star40,
.star45,
.star50 {
  padding-left: 105px;
  white-space: nowrap;
}

.star00 {
  background: url(./images/icon/icon-star00.png) left center no-repeat;
}
.star05 {
  background: url(./images/icon/icon-star05.png) left center no-repeat;
}
.star10 {
  background: url(./images/icon/icon-star10.png) left center no-repeat;
}
.star15 {
  background: url(./images/icon/icon-star15.png) left center no-repeat;
}
.star20 {
  background: url(./images/icon/icon-star20.png) left center no-repeat;
}
.star25 {
  background: url(./images/icon/icon-star25.png) left center no-repeat;
}
.star30 {
  background: url(./images/icon/icon-star30.png) left center no-repeat;
}
.star35 {
  background: url(./images/icon/icon-star35.png) left center no-repeat;
}
.star40 {
  background: url(./images/icon/icon-star40.png) left center no-repeat;
}
.star45 {
  background: url(./images/icon/icon-star45.png) left center no-repeat;
}
.star50 {
  background: url(./images/icon/icon-star50.png) left center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .star00 {
    background: url(./images/icon/icon-star00@2x.png) left center no-repeat;
  }
  .star05 {
    background: url(./images/icon/icon-star05@2x.png) left center no-repeat;
  }
  .star10 {
    background: url(./images/icon/icon-star10@2x.png) left center no-repeat;
  }
  .star15 {
    background: url(./images/icon/icon-star15@2x.png) left center no-repeat;
  }
  .star20 {
    background: url(./images/icon/icon-star20@2x.png) left center no-repeat;
  }
  .star25 {
    background: url(./images/icon/icon-star25@2x.png) left center no-repeat;
  }
  .star30 {
    background: url(./images/icon/icon-star30@2x.png) left center no-repeat;
  }
  .star35 {
    background: url(./images/icon/icon-star35@2x.png) left center no-repeat;
  }
  .star40 {
    background: url(./images/icon/icon-star40@2x.png) left center no-repeat;
  }
  .star45 {
    background: url(./images/icon/icon-star45@2x.png) left center no-repeat;
  }
  .star50 {
    background: url(./images/icon/icon-star50@2x.png) left center no-repeat;
  }

  .star00,
  .star05,
  .star10,
  .star15,
  .star20,
  .star25,
  .star30,
  .star35,
  .star40,
  .star45,
  .star50 {
    -webkit-background-size: 97px 17px;
    background-size: 97px 17px;
  }
}

.item-data {
  margin-bottom: 1em;
}

.item-data dl,
.item-data dt,
.item-data dd {
  margin: 0;
}

.item-data dt,
.item-data dd {
  display: inline-block;
}

.item-data dd {
  padding-left: 0;
}

.comparative-list01 .rank-desc,
.comparative-list02 .rank-desc {
  overflow: visible;
}

.main-body .review-desc-title {
  overflow: hidden;
  margin-top: 0;
  margin-bottom: 1em;
  padding: 0 0 0 14px;
  border: none;
  border-left: 4px solid #fb8e2d;
  background: none;
  font-weight: normal;
  font-size: 1.125em;
}

/*情報比較用の王冠アイコン*/
.comparative-list01 > li .rank-title {
  padding-left: 60px;
}

.comparative-list01 .rank01 .rank-title {
  background: url(./images/icon/icon-rank01-01.png) left top no-repeat;
}
.comparative-list01 .rank02 .rank-title {
  background: url(./images/icon/icon-rank01-02.png) left top no-repeat;
}
.comparative-list01 .rank03 .rank-title {
  background: url(./images/icon/icon-rank01-03.png) left top no-repeat;
}
.comparative-list01 .rank04 .rank-title {
  background: url(./images/icon/icon-rank01-04.png) left top no-repeat;
}
.comparative-list01 .rank05 .rank-title {
  background: url(./images/icon/icon-rank01-05.png) left top no-repeat;
}
.comparative-list01 .rank06 .rank-title {
  background: url(./images/icon/icon-rank01-06.png) left top no-repeat;
}
.comparative-list01 .rank07 .rank-title {
  background: url(./images/icon/icon-rank01-07.png) left top no-repeat;
}
.comparative-list01 .rank08 .rank-title {
  background: url(./images/icon/icon-rank01-08.png) left top no-repeat;
}
.comparative-list01 .rank09 .rank-title {
  background: url(./images/icon/icon-rank01-09.png) left top no-repeat;
}
.comparative-list01 .rank10 .rank-title {
  background: url(./images/icon/icon-rank01-10.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .comparative-list01 .rank01 .rank-title {
    background: url(./images/icon/icon-rank01-01@2x.png) left top no-repeat;
  }
  .comparative-list01 .rank02 .rank-title {
    background: url(./images/icon/icon-rank01-02@2x.png) left top no-repeat;
  }
  .comparative-list01 .rank03 .rank-title {
    background: url(./images/icon/icon-rank01-03@2x.png) left top no-repeat;
  }
  .comparative-list01 .rank04 .rank-title {
    background: url(./images/icon/icon-rank01-04@2x.png) left top no-repeat;
  }
  .comparative-list01 .rank05 .rank-title {
    background: url(./images/icon/icon-rank01-05@2x.png) left top no-repeat;
  }
  .comparative-list01 .rank06 .rank-title {
    background: url(./images/icon/icon-rank01-06@2x.png) left top no-repeat;
  }
  .comparative-list01 .rank07 .rank-title {
    background: url(./images/icon/icon-rank01-07@2x.png) left top no-repeat;
  }
  .comparative-list01 .rank08 .rank-title {
    background: url(./images/icon/icon-rank01-08@2x.png) left top no-repeat;
  }
  .comparative-list01 .rank09 .rank-title {
    background: url(./images/icon/icon-rank01-09@2x.png) left top no-repeat;
  }
  .comparative-list01 .rank10 .rank-title {
    background: url(./images/icon/icon-rank01-10@2x.png) left top no-repeat;
  }
  .comparative-list01 .rank01 .rank-title,
  .comparative-list01 .rank02 .rank-title,
  .comparative-list01 .rank03 .rank-title,
  .comparative-list01 .rank04 .rank-title,
  .comparative-list01 .rank05 .rank-title,
  .comparative-list01 .rank06 .rank-title,
  .comparative-list01 .rank07 .rank-title,
  .comparative-list01 .rank08 .rank-title,
  .comparative-list01 .rank09 .rank-title,
  .comparative-list01 .rank10 .rank-title {
    -webkit-background-size: 48px 40px;
    background-size: 48px 40px;
  }
}

/*ランキング用のシンプルなリスト*/
.comparative-list02 > .rank01.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank05-01.png);
}
.comparative-list02 > .rank02.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank05-02.png);
}
.comparative-list02 > .rank03.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank05-03.png);
}
.comparative-list02 > .rank04.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank05-04.png);
}
.comparative-list02 > .rank05.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank05-05.png);
}
.comparative-list02 > .rank06.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank05-06.png);
}
.comparative-list02 > .rank07.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank05-07.png);
}
.comparative-list02 > .rank08.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank05-08.png);
}
.comparative-list02 > .rank09.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank05-09.png);
}
.comparative-list02 > .rank10.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank05-10.png);
}

.sub-conts .comparative-list02 > .rank01.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank06-01.png);
}
.sub-conts .comparative-list02 > .rank02.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank06-02.png);
}
.sub-conts .comparative-list02 > .rank03.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank06-03.png);
}
.sub-conts .comparative-list02 > .rank04.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank06-04.png);
}
.sub-conts .comparative-list02 > .rank05.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank06-05.png);
}
.sub-conts .comparative-list02 > .rank06.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank06-06.png);
}
.sub-conts .comparative-list02 > .rank07.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank06-07.png);
}
.sub-conts .comparative-list02 > .rank08.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank06-08.png);
}
.sub-conts .comparative-list02 > .rank09.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank06-09.png);
}
.sub-conts .comparative-list02 > .rank10.on-image .rank-thumb:before {
  content: url(./images/icon/icon-rank06-10.png);
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .comparative-list02 > .rank01.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank05-01@2x.png);
  }
  .comparative-list02 > .rank02.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank05-02@2x.png);
  }
  .comparative-list02 > .rank03.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank05-03@2x.png);
  }
  .comparative-list02 > .rank04.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank05-04@2x.png);
  }
  .comparative-list02 > .rank05.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank05-05@2x.png);
  }
  .comparative-list02 > .rank06.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank05-06@2x.png);
  }
  .comparative-list02 > .rank07.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank05-07@2x.png);
  }
  .comparative-list02 > .rank08.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank05-08@2x.png);
  }
  .comparative-list02 > .rank09.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank05-09@2x.png);
  }
  .comparative-list02 > .rank10.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank05-10@2x.png);
  }

  .comparative-list02 > .rank01.on-image .rank-thumb:before,
  .comparative-list02 > .rank02.on-image .rank-thumb:before,
  .comparative-list02 > .rank03.on-image .rank-thumb:before,
  .comparative-list02 > .rank04.on-image .rank-thumb:before,
  .comparative-list02 > .rank05.on-image .rank-thumb:before,
  .comparative-list02 > .rank06.on-image .rank-thumb:before,
  .comparative-list02 > .rank07.on-image .rank-thumb:before,
  .comparative-list02 > .rank08.on-image .rank-thumb:before,
  .comparative-list02 > .rank09.on-image .rank-thumb:before,
  .comparative-list02 > .rank10.on-image .rank-thumb:before {
    display: inline-block;
    width: 48px;
    height: 48px;
    vertical-align: middle;
    -webkit-background-size: contain;
    background-size: contain;
    content: " ";
  }

  .sub-conts .comparative-list02 > .rank01.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank06-01@2x.png);
  }
  .sub-conts .comparative-list02 > .rank02.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank06-02@2x.png);
  }
  .sub-conts .comparative-list02 > .rank03.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank06-03@2x.png);
  }
  .sub-conts .comparative-list02 > .rank04.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank06-04@2x.png);
  }
  .sub-conts .comparative-list02 > .rank05.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank06-05@2x.png);
  }
  .sub-conts .comparative-list02 > .rank06.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank06-06@2x.png);
  }
  .sub-conts .comparative-list02 > .rank07.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank06-07@2x.png);
  }
  .sub-conts .comparative-list02 > .rank08.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank06-08@2x.png);
  }
  .sub-conts .comparative-list02 > .rank09.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank06-09@2x.png);
  }
  .sub-conts .comparative-list02 > .rank10.on-image .rank-thumb:before {
    background: url(./images/icon/icon-rank06-10@2x.png);
  }

  .sub-conts .comparative-list02 > .rank01.on-image .rank-thumb:before,
  .sub-conts .comparative-list02 > .rank02.on-image .rank-thumb:before,
  .sub-conts .comparative-list02 > .rank03.on-image .rank-thumb:before,
  .sub-conts .comparative-list02 > .rank04.on-image .rank-thumb:before,
  .sub-conts .comparative-list02 > .rank05.on-image .rank-thumb:before,
  .sub-conts .comparative-list02 > .rank06.on-image .rank-thumb:before,
  .sub-conts .comparative-list02 > .rank07.on-image .rank-thumb:before,
  .sub-conts .comparative-list02 > .rank08.on-image .rank-thumb:before,
  .sub-conts .comparative-list02 > .rank09.on-image .rank-thumb:before,
  .sub-conts .comparative-list02 > .rank10.on-image .rank-thumb:before {
    display: inline-block;
    width: 30px;
    height: 30px;
    vertical-align: middle;
    -webkit-background-size: contain;
    background-size: contain;
    content: " ";
  }
}

/*文章中の間*/
.interval img {
  display: block;
  margin: 60px auto;
}

/*チェックリスト*/
.check-list,
.check-list-l {
  margin-left: 0;
}

.check-list li,
.check-list-l li {
  list-style: none;
}

.check-list li {
  margin-bottom: 1em;
  padding-left: 32px;
  background: url(./images/icon/icon-check-list.png) left 3px no-repeat;
}

.check-list-l li {
  margin-bottom: 2em;
  padding: 10px 0 10px 55px;
  background: url(./images/icon/icon-check-list-l.png) left 3px no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .check-list li {
    background: url(./images/icon/icon-check-list@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .check-list-l li {
    background: url(./images/icon/icon-check-list-l@2x.png) left 3px no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*Q&A*/
.qa-list dt {
  display: block;
  position: relative;
  margin-bottom: 30px;
  padding: 15px 0 15px 80px;
  background: url(./images/icon/icon-q.png) 15px center no-repeat #f6f6f6;
  font-size: 1.25em;
}

.qa-list dt:after,
.qa-list dt:before {
  content: "";
  position: absolute;
  top: 100%;
  height: 0;
  width: 0;
  border: #f6f6f6 solid 2px;
}
.qa-list dt:after {
  left: 33px;
  border: 11px solid transparent;
  border-top: 11px solid #f6f6f6;
}
.qa-list dt:before {
  left: 30px;
  border: 14px solid transparent;
  border-top: 14px solid #f6f6f6;
}

.qa-list dd {
  margin-left: 0;
  margin-bottom: 70px;
  padding: 15px 0 15px 80px;
  background: url(./images/icon/icon-a.png) 15px 3px no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .qa-list dt {
    background: url(./images/icon/icon-q@2x.png) 15px center no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }

  .qa-list dd {
    background: url(./images/icon/icon-a@2x.png) 15px 3px no-repeat;
    -webkit-background-size: 48px 49px;
    background-size: 48px 49px;
  }
}

/*フロー図*/
.flow-chart {
  margin-left: 0;
}

.flow-chart li {
  list-style: none;
  margin-bottom: 20px;
  padding-bottom: 60px;
  background: url(./images/icon/icon-arrow-b-chart.png) center bottom no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .flow-chart li {
    background: url(./images/icon/icon-arrow-b-chart@2x.png) center bottom
      no-repeat;
    -webkit-background-size: 161px 40px;
    background-size: 161px 40px;
  }
}

.flow-chart li.end,
.flow-chart li:last-child {
  padding-bottom: 0;
  background: none;
}

.flow-chart .process-box {
  padding: 30px;
  background-color: #a3a3a3;
  color: #fff;
}

/*予告エリア*/
.info-box {
  padding: 30px 20px;
}

.trailer-text {
  position: relative;
  padding: 1em 1.5em 1em 1em;
  background-color: #f6f6f6;
  font-weight: bold;
  font-size: 1.25em;
}

.trailer-text::after {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  width: 0;
  border-width: 0 24px 24px 0;
  border-style: solid;
  border-color: #fff #fff #ddd #ddd;
  box-shadow: -1px 1px 3px rgba(0, 0, 0, 0.1);
}

.trailer-text-l {
  border-bottom: 4px solid #5d6d7e;
  background: url(./images/icon/icon-trailer-lx.png) no-repeat right bottom;
  padding: 0.5em 2em 0.5em 1em;
  font-weight: bold;
  font-size: 1.5em;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .trailer-text-l {
    background: url(./images/icon/icon-trailer-lx@2x.png) no-repeat right bottom;
    -webkit-background-size: 40px 24px;
    background-size: 40px 24px;
  }
}

/*関連記事*/
.related-thumb {
  overflow: hidden;
  width: 100%;
}

.related-thumb img {
  max-width: none;
}

.related-articles-thumbs01 ul {
  margin-left: 0;
}

.related-articles-thumbs01 li {
  list-style: none;
}

.related-articles-thumbs01 img {
  width: auto;
  max-height: 100px;
}

.related-articles-thumbs01 .related-thumb {
  float: left;
  width: 100px;
  margin-right: 20px;
  margin-bottom: 20px;
}

.related-articles-thumbs02 ul {
  overflow: hidden;
  margin-left: 0;
}

.related-articles-thumbs02 li {
  list-style: none;
  float: left;
  width: 30%;
  margin-left: 5%;
}

.related-articles-thumbs02 li:first-child {
  margin-left: 0;
}

.related-articles-thumbs02 img {
  width: auto;
  max-height: 160px;
}

/*目次*/
#keni_toc {
  display: block;
  width: 80%;
  margin: auto;
  margin-bottom: 3em;
  padding: 25px;
  border: 2px solid #ccc;
  font-size: 0.875em;
}

.keni-toc-title {
  font-size: 1.286em;
}

#keni_toc ol {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 25px;
}

#keni_toc ol ol {
  margin-top: 0.5em;
}

#keni_toc ol ol li {
  list-style-type: circle;
}

/*お客様の声*/
.voice-box {
  padding: 30px 20px;
}

.voice-headshot img {
  border-radius: 50%;
}
.voice-content {
  overflow: hidden;
  padding: 1em;
  border: 1px solid #ccc;
  border-radius: 8px;
}

/*画像とテキストの組み合わせ*/
.col-onimage > .col {
  position: relative;
  overflow: hidden;
}

.col-onimage > .col .text-onimage {
  position: absolute;
  bottom: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.5);
  background-color: #000000\9; /*IE8への対応*/
  color: #fff;
}

html:not(:target) .col-onimage > .col .text-onimage {
  background-color: rgba(0, 0, 0, 0.5); /*IE9以上への対応*/
}

.col-onimage02 > .col {
  background-position: center center;
  background-size: cover;
}

.col-onimage02 > .col .text-onimage {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 20px;
  background-color: rgba(0, 0, 0, 0.5);
  background-color: #000000\9; /*IE8への対応*/
  color: #fff;
}

html:not(:target) .col-onimage02 > .col .text-onimage {
  background-color: rgba(0, 0, 0, 0.5); /*IE9以上への対応*/
}

.col-onimage > .col .text-onimage a,
.col-onimage02 > .col a {
  color: #fff;
}

.col-onimage > .col .text-onimage a:hover,
.col-onimage > .col .text-onimage a:active,
.col-onimage > .col .text-onimage a:focus,
.col-onimage02 > .col a:hover,
.col-onimage02 > .col a:active,
.col-onimage02 > .col a:focus {
  color: #f60;
}

/*ページ送り*/
.link-next {
  text-align: right;
}

.blog .article-body .link-next,
.archive .article-body .link-next,
.search .article-body .link-next {
  margin-bottom: 0;
}

.link-next a {
  padding-left: 13px;
  background: url(./images/icon/icon-arw-next.png) left 6px no-repeat;
}

.link-back a {
  padding-left: 13px;
  background: url(./images/icon/icon-arw-prev.png) left 6px no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .link-next a {
    background: url(./images/icon/icon-arw-next@2x.png) left 6px no-repeat;
    -webkit-background-size: 7px 10px;
    background-size: 7px 10px;
  }

  .link-back a {
    background: url(./images/icon/icon-arw-prev@2x.png) left 6px no-repeat;
    -webkit-background-size: 7px 10px;
    background-size: 7px 10px;
  }
}

.page-nav ol {
  margin-left: 0;
  text-align: center;
}

.page-nav li {
  display: inline-block;
  margin-right: 10px;
  padding: 4px 8px;
  border: 1px solid #c1c1c1;
}

.page-nav li:last-child {
  margin-right: 0;
}

.page-nav li a {
  display: block;
  margin: -4px -8px;
  padding: 4px 8px;
  color: #333;
  text-decoration: none;
}

.current,
.page-nav li a:hover,
.page-nav li a:active,
.page-nav li a:focus {
  background: #1a242f;
  color: #fff;
}

.page-nav-bf ul {
  margin-left: 0;
}

.page-nav-bf li {
  list-style: none;
}

.page-nav-next {
  float: right;
  padding-right: 13px;
  background: url(./images/icon/icon-arw-next.png) right center no-repeat;
}

.page-nav-prev {
  float: left;
  padding-left: 13px;
  background: url(./images/icon/icon-arw-prev.png) left center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .page-nav-next {
    background: url(./images/icon/icon-arw-next@2x.png) right center no-repeat;
    -webkit-background-size: 7px 10px;
    background-size: 7px 10px;
  }

  .page-nav-prev {
    background: url(./images/icon/icon-arw-prev@2x.png) left center no-repeat;
    -webkit-background-size: 7px 10px;
    background-size: 7px 10px;
  }
}

/*--------------------------------------------------------
WordPress用のスタイル
--------------------------------------------------------*/
.single .article-body,
.page .article-body {
  margin-bottom: 40px;
}

/*関連記事*/
.keni-relatedposts-list li p {
  overflow: hidden;
}

.keni-relatedposts-list li p a[target="_blank"] {
  padding: 3px;
  padding-right: 15px;
  background: url(./images/icon/icon-outbound-link.png) right center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .keni-relatedposts-list li p a[target="_blank"] {
    background: url(./images/icon/icon-outbound-link@2x.png) right center
      no-repeat;
    -webkit-background-size: 12px 13px;
    background-size: 12px 13px;
  }
}

.cont-nav {
  padding-top: 20px;
}

/*目次*/
.post-toc {
  border-top: solid 1px #dadada;
  border-bottom: solid 1px #dadada;
  margin: 40px 0;
  padding: 30px 20px;
}

/*コメント*/
.comment-form-author,
.comment-form-mail,
.comment-form-url {
  margin-bottom: 2em;
}

.comment-form-author p,
.comment-form-mail p,
.comment-form-url p {
  margin-bottom: 0;
}

.alignleft {
  float: left;
  margin: 0 1em 1em 0;
}

.alignright {
  float: right;
  margin: 0 0 1em 1em;
}

.aligncenter {
  display: block;
  float: none;
  margin-right: auto;
  margin-bottom: 1em;
  margin-left: auto;
}

.post-tag a {
  word-break: break-all;
}

/*コメント一覧*/
.commentlist,
.commentlist .children {
  margin-left: 0;
}

.commentlist {
  border-bottom: 1px solid #ccc;
}

.commentlist li {
  list-style: none;
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 1px dotted #ccc;
}

.commentlist li:last-child,
.commentlist ul li:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.reply a {
  padding-left: 13px;
  background: url(./images/icon/icon-arw-next.png) left 6px no-repeat;
}

.commentlist .children {
  margin-top: 1em;
  padding-top: 1em;
  padding-left: 40px;
  border-top: 1px solid #ccc;
}

/*ウィジェット*/
.rsswidget img {
  vertical-align: baseline;
}

.sub-conts .widget_recent_entries ul,
.sub-conts .widget_rss ul,
.sub-conts .widget_archive ul,
.sub-conts .widget_recent_comments ul,
.sub-conts .widget_nav_menu ul {
  margin-left: 0;
  padding-left: 0;
}

.sub-conts .widget_recent_entries li,
.sub-conts .widget_rss li,
.sub-conts .widget_archive li,
.sub-conts .widget_recent_comments li,
.sub-conts .widget_nav_menu li {
  list-style: none;
  margin-bottom: 1em;
  padding-left: 13px;
  background: url(./images/icon/icon-list-arw.png) left 6px no-repeat;
  font-size: 14px;
  font-weight: bold;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .sub-conts .widget_recent_entries li,
  .sub-conts .widget_rss li,
  .sub-conts .widget_archive li,
  .sub-conts .widget_recent_comments li,
  .sub-conts .widget_nav_menu li {
    background: url(./images/icon/icon-list-arw@2x.png) left 6px no-repeat;
    -webkit-background-size: 7px 10px;
    background-size: 7px 10px;
  }
}

.sub-conts .widget_recent_entries ul ul,
.sub-conts .widget_rss ul ul,
.sub-conts .widget_archive ul ul,
.sub-conts .widget_recent_comments ul ul,
.sub-conts .widget_nav_menu ul ul {
  margin-top: 1em;
  margin-left: 10px;
}

.num-pv {
  font-size: 0.8em;
}

/*カレンダー*/
.calendar,
.calendar_wrap table {
  background: #fff;
  font-size: 0.875em;
}

.calendar caption,
.widget_calendar caption {
  font-weight: bold;
}

.calendar th,
.calendar td,
.widget_calendar th,
.widget_calendar td {
  padding: 10px 0;
  text-align: center;
}

.calendar tfoot td,
.widget_calendar tfoot td {
  padding: 10px;
  border-right-width: 0;
  text-align: left;
}

.calendar tfoot td:last-child,
.widget_calendar tfoot td:last-child {
  border-right-width: 1px;
  text-align: right;
}

.calendar td a,
.widget_calendar tfoot td a {
  display: block;
  margin: -10px 0;
  padding: 10px 0;
  background: none;
  color: #c20101;
}

/*ページ分割*/
.link-pages {
  margin-top: 2em;
  text-align: center;
  line-height: 1.2;
}

.link-pages span {
  display: inline-block;
  margin-left: 0;
}

.link-pages a,
.link-pages span {
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 0.5em;
  padding: 4px 8px;
  border: 1px solid #c1c1c1;
  text-decoration: none;
}

.link-pages span,
.link-pages a:hover,
.link-pages a:active,
.link-pages a:focus {
  background: #c1c1c1;
  color: #fff;
}

.link-pages a span {
  display: inline;
  margin-right: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
}

.link-pages .link-pages-cap {
  display: inline-block;
  margin-right: 10px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
}

/*キャプション*/
.wp-caption {
  max-width: 100%;
}

/*ギャラリー*/
.gallery,
.gallery-item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.gallery {
  margin-bottom: 1em;
}

.gallery-item {
  display: inline-block;
  width: 100%;
  vertical-align: top;
  text-align: center;
}

.gallery-columns-2 .gallery-item,
.gallery-columns-3 .gallery-item,
.gallery-columns-4 .gallery-item,
.gallery-columns-5 .gallery-item,
.gallery-columns-6 .gallery-item,
.gallery-columns-7 .gallery-item,
.gallery-columns-8 .gallery-item,
.gallery-columns-9 .gallery-item {
  margin: 1%;
}

.gallery-columns-2 .gallery-item {
  max-width: 48%;
}
.gallery-columns-3 .gallery-item {
  max-width: 31.3%;
}
.gallery-columns-4 .gallery-item {
  max-width: 23%;
}
.gallery-columns-5 .gallery-item {
  max-width: 18%;
}
.gallery-columns-6 .gallery-item {
  max-width: 14.6%;
}
.gallery-columns-7 .gallery-item {
  max-width: 12.2%;
}
.gallery-columns-8 .gallery-item {
  max-width: 10.5%;
}
.gallery-columns-9 .gallery-item {
  max-width: 9.1%;
}

.gallery-icon img {
  margin: 0 auto;
}

.gallery-caption {
  display: block;
  font-size: 0.875em;
}

/*--------------------------------------------------------
デザイン調整用のスタイル
--------------------------------------------------------*/

/*注記*/
.note {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}

.note2 {
  display: block;
  padding-left: 2em;
  text-indent: -2em;
}

/*必須項目・警告・エラーの文字色*/
.warning,
.error {
  color: #e53935 !important;
}

.required {
  display: inline-block;
  color: #e53935 !important;
}

/*傍点*/
.dot {
  position: relative;
  padding-top: 5px;
}

.dot:before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0.2em;
  height: 0.2em;
  margin-left: -0.1em;
  background: #333;
  border-radius: 50%;
  content: "";
}

/*装飾
※IE8等古いブラウザを除く*/
.shadow {
  box-shadow: 4px 4px 0px #e9e9e9;
}

.shadow02 {
  box-shadow: 0px 0px 4px #666;
}

.outline {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #ccc;
}

.frame {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 95%;
  padding: 8px;
  background: #fff;
  box-shadow: 0px 0px 8px #dadada;
}

.border {
  border: 1px solid #ccc;
}

/*画像のサイズ調整*/
img.resize10,
html:not(:target) img.resize10 {
  height: auto;
  max-width: 10%;
}

img.resize20,
html:not(:target) img.resize20 {
  height: auto;
  max-width: 20%;
}

img.resize30,
html:not(:target) img.resize30 {
  height: auto;
  max-width: 30%;
}

img.resize40,
html:not(:target) img.resize40 {
  height: auto;
  max-width: 40%;
}

img.resize50,
html:not(:target) img.resize50 {
  height: auto;
  max-width: 50%;
}

img.resize60,
html:not(:target) img.resize60 {
  height: auto;
  max-width: 60%;
}

img.resize70,
html:not(:target) img.resize70 {
  height: auto;
  max-width: 70%;
}

img.resize80,
html:not(:target) img.resize80 {
  height: auto;
  max-width: 80%;
}

img.resize90,
html:not(:target) img.resize90 {
  height: auto;
  max-width: 90%;
}

/*円
※IE8等古いブラウザを除く*/
.circle {
  border-radius: 50%;
}

/*角丸
※IE8等古いブラウザを除く*/
.rc4 {
  border-radius: 4px;
}
.rc4-tl {
  border-top-left-radius: 4px;
}
.rc4-tr {
  border-top-right-radius: 4px;
}
.rc4-bl {
  border-bottom-left-radius: 4px;
}
.rc4-br {
  border-bottom-right-radius: 4px;
}

.rc8 {
  border-radius: 8px;
}
.rc8-tl {
  border-top-left-radius: 8px;
}
.rc8-tr {
  border-top-right-radius: 8px;
}
.rc8-bl {
  border-bottom-left-radius: 8px;
}
.rc8-br {
  border-bottom-right-radius: 8px;
}

.rc12 {
  border-radius: 12px;
}
.rc12-tl {
  border-top-left-radius: 12px;
}
.rc12-tr {
  border-top-right-radius: 12px;
}
.rc12-bl {
  border-bottom-left-radius: 12px;
}
.rc12-br {
  border-bottom-right-radius: 12px;
}

/*角丸長方形
※IE8等古いブラウザを除く
※高さ100pxまで*/
.rc50 {
  border-radius: 50px;
}

/*透明パネル ※IE8等古いブラウザを除く*/
.transparent-panel-wrap {
  padding: 1em;
  background: url(./images/sample09.jpg) center center;
  -webkit-background-size: cover;
  background-size: cover;
}

.transparent-panel {
  padding: 1em;
  background-color: rgba(255, 255, 255, 0.7);
  background-color: #ffffff\9; /*IE8への対応*/
}

html:not(:target) .transparent-panel {
  background-color: rgba(255, 255, 255, 0.7); /*IE9以上への対応*/
}

/*回り込み
※モバイル時にも解除されない*/
.fl-l {
  float: left;
  margin: 0 1em 1em 0;
}

.fl-r {
  float: right;
  margin: 0 0 1em 1em;
}

.fl-c {
  clear: both;
}

/*回り込み
※モバイル時には回り込み解除*/
.left {
  float: left;
  margin: 0 1em 1em 0;
}

.right {
  float: right;
  margin: 0 0 1em 1em;
}

/*文字の横位置*/
.al-l {
  text-align: left;
}
.al-r {
  text-align: right;
}
.al-c {
  text-align: center;
}

/*文字の縦位置*/
.vl-t {
  vertical-align: top !important;
} /*上寄せ*/
.vl-m {
  vertical-align: middle !important;
} /*中央寄せ*/
.vl-b {
  vertical-align: bottom !important;
} /*下寄せ*/

/*周りのブロックからの距離（margin）*/
.m0 {
  margin: 0 !important;
} /*周りからのmarginを0に*/
.m0-t {
  margin-top: 0 !important;
} /*上からのmarginを0に*/
.m0-r {
  margin-right: 0 !important;
} /*右からのmarginを0に*/
.m0-b {
  margin-bottom: 0 !important;
} /*下からのmarginを0に*/
.m0-l {
  margin-left: 0 !important;
} /*左からのmarginを0に*/

.m5 {
  margin: 5px !important;
}
.m5-t {
  margin-top: 5px !important;
}
.m5-r {
  margin-right: 5px !important;
}
.m5-b {
  margin-bottom: 5px !important;
}
.m5-l {
  margin-left: 5px !important;
}

.m10 {
  margin: 10px !important;
}
.m10-t {
  margin-top: 10px !important;
}
.m10-r {
  margin-right: 10px !important;
}
.m10-b {
  margin-bottom: 10px !important;
}
.m10-l {
  margin-left: 10px !important;
}

.m15 {
  margin: 15px !important;
}
.m15-t {
  margin-top: 15px !important;
}
.m15-r {
  margin-right: 15px !important;
}
.m15-b {
  margin-bottom: 15px !important;
}
.m15-l {
  margin-left: 15px !important;
}

.m20 {
  margin: 20px !important;
}
.m20-t {
  margin-top: 20px !important;
}
.m20-r {
  margin-right: 20px !important;
}
.m20-b {
  margin-bottom: 20px !important;
}
.m20-l {
  margin-left: 20px !important;
}

.m25 {
  margin: 25px !important;
}
.m25-t {
  margin-top: 25px !important;
}
.m25-r {
  margin-right: 25px !important;
}
.m25-b {
  margin-bottom: 25px !important;
}
.m25-l {
  margin-left: 25px !important;
}

.m30 {
  margin: 30px !important;
}
.m30-t {
  margin-top: 30px !important;
}
.m30-r {
  margin-right: 30px !important;
}
.m30-b {
  margin-bottom: 30px !important;
}
.m30-l {
  margin-left: 30px !important;
}

.m40 {
  margin: 40px !important;
}
.m40-t {
  margin-top: 40px !important;
}
.m40-r {
  margin-right: 40px !important;
}
.m40-b {
  margin-bottom: 40px !important;
}
.m40-l {
  margin-left: 40px !important;
}

.m50 {
  margin: 50px !important;
}
.m50-t {
  margin-top: 50px !important;
}
.m50-r {
  margin-right: 50px !important;
}
.m50-b {
  margin-bottom: 50px !important;
}
.m50-l {
  margin-left: 50px !important;
}

.m60 {
  margin: 60px !important;
}
.m60-t {
  margin-top: 60px !important;
}
.m60-r {
  margin-right: 60px !important;
}
.m60-b {
  margin-bottom: 60px !important;
}
.m60-l {
  margin-left: 60px !important;
}

.m70 {
  margin: 70px !important;
}
.m70-t {
  margin-top: 70px !important;
}
.m70-r {
  margin-right: 70px !important;
}
.m70-b {
  margin-bottom: 70px !important;
}
.m70-l {
  margin-left: 70px !important;
}

.m80 {
  margin: 80px !important;
}
.m80-t {
  margin-top: 80px !important;
}
.m80-r {
  margin-right: 80px !important;
}
.m80-b {
  margin-bottom: 80px !important;
}
.m80-l {
  margin-left: 80px !important;
}

.m90 {
  margin: 90px !important;
}
.m90-t {
  margin-top: 90px !important;
}
.m90-r {
  margin-right: 90px !important;
}
.m90-b {
  margin-bottom: 90px !important;
}
.m90-l {
  margin-left: 90px !important;
}

.m100 {
  margin: 100px !important;
}
.m100-t {
  margin-top: 100px !important;
}
.m100-r {
  margin-right: 100px !important;
}
.m100-b {
  margin-bottom: 100px !important;
}
.m100-l {
  margin-left: 100px !important;
}

.m120 {
  margin: 120px !important;
}
.m120-t {
  margin-top: 120px !important;
}
.m120-r {
  margin-right: 120px !important;
}
.m120-b {
  margin-bottom: 120px !important;
}
.m120-l {
  margin-left: 120px !important;
}

.m150 {
  margin: 150px !important;
}
.m150-t {
  margin-top: 150px !important;
}
.m150-r {
  margin-right: 150px !important;
}
.m150-b {
  margin-bottom: 150px !important;
}
.m150-l {
  margin-left: 150px !important;
}

.m200 {
  margin: 200px !important;
}
.m200-t {
  margin-top: 200px !important;
}
.m200-r {
  margin-right: 200px !important;
}
.m200-b {
  margin-bottom: 200px !important;
}
.m200-l {
  margin-left: 200px !important;
}

.m300 {
  margin: 300px !important;
}
.m300-t {
  margin-top: 300px !important;
}
.m300-r {
  margin-right: 300px !important;
}
.m300-b {
  margin-bottom: 300px !important;
}
.m300-l {
  margin-left: 300px !important;
}

/*周りのブロックからの距離（padding）*/
.p0 {
  padding: 0 !important;
}
.p0-t {
  padding-top: 0 !important;
}
.p0-r {
  padding-right: 0 !important;
}
.p0-b {
  padding-bottom: 0 !important;
}
.p0-l {
  padding-left: 0 !important;
}

.p5 {
  padding: 5px !important;
}
.p5-t {
  padding-top: 5px !important;
}
.p5-r {
  padding-right: 5px !important;
}
.p5-b {
  padding-bottom: 5px !important;
}
.p5-l {
  padding-left: 5px !important;
}

.p10 {
  padding: 10px !important;
}
.p10-t {
  padding-top: 10px !important;
}
.p10-r {
  padding-right: 10px !important;
}
.p10-b {
  padding-bottom: 10px !important;
}
.p10-l {
  padding-left: 10px !important;
}

.p15 {
  padding: 15px !important;
}
.p15-t {
  padding-top: 15px !important;
}
.p15-r {
  padding-right: 15px !important;
}
.p15-b {
  padding-bottom: 15px !important;
}
.p15-l {
  padding-left: 15px !important;
}

.p20 {
  padding: 20px !important;
}
.p20-t {
  padding-top: 20px !important;
}
.p20-r {
  padding-right: 20px !important;
}
.p20-b {
  padding-bottom: 20px !important;
}
.p20-l {
  padding-left: 20px !important;
}

.p25 {
  padding: 25px !important;
}
.p25-t {
  padding-top: 25px !important;
}
.p25-r {
  padding-right: 25px !important;
}
.p25-b {
  padding-bottom: 25px !important;
}
.p25-l {
  padding-left: 25px !important;
}

.p30 {
  padding: 30px !important;
}
.p30-t {
  padding-top: 30px !important;
}
.p30-r {
  padding-right: 30px !important;
}
.p30-b {
  padding-bottom: 30px !important;
}
.p30-l {
  padding-left: 30px !important;
}

.p40 {
  padding: 40px !important;
}
.p40-t {
  padding-top: 40px !important;
}
.p40-r {
  padding-right: 40px !important;
}
.p40-b {
  padding-bottom: 40px !important;
}
.p40-l {
  padding-left: 40px !important;
}

.p50 {
  padding: 50px !important;
}
.p50-t {
  padding-top: 50px !important;
}
.p50-r {
  padding-right: 50px !important;
}
.p50-b {
  padding-bottom: 50px !important;
}
.p50-l {
  padding-left: 50px !important;
}

.p60 {
  padding: 60px !important;
}
.p60-t {
  padding-top: 60px !important;
}
.p60-r {
  padding-right: 60px !important;
}
.p60-b {
  padding-bottom: 60px !important;
}
.p60-l {
  padding-left: 60px !important;
}

.p70 {
  padding: 70px !important;
}
.p70-t {
  padding-top: 70px !important;
}
.p70-r {
  padding-right: 70px !important;
}
.p70-b {
  padding-bottom: 70px !important;
}
.p70-l {
  padding-left: 70px !important;
}

.p80 {
  padding: 80px !important;
}
.p80-t {
  padding-top: 80px !important;
}
.p80-r {
  padding-right: 80px !important;
}
.p80-b {
  padding-bottom: 80px !important;
}
.p80-l {
  padding-left: 80px !important;
}

.p90 {
  padding: 90px !important;
}
.p90-t {
  padding-top: 90px !important;
}
.p90-r {
  padding-right: 90px !important;
}
.p90-b {
  padding-bottom: 90px !important;
}
.p90-l {
  padding-left: 90px !important;
}

.p100 {
  padding: 100px !important;
}
.p100-t {
  padding-top: 100px !important;
}
.p100-r {
  padding-right: 100px !important;
}
.p100-b {
  padding-bottom: 100px !important;
}
.p100-l {
  padding-left: 100px !important;
}

/*フォントの装飾*/
.b {
  font-weight: bold !important;
} /*太字*/
.normal {
  font-weight: normal !important;
} /*太字を解除*/

/*フォントサイズの設定*/
.big {
  font-size: 1.2em !important;
}
.big2 {
  font-size: 1.5em !important;
}
.big3 {
  font-size: 1.8em !important;
}
.small {
  font-size: 0.8em !important;
}

.f08em {
  font-size: 0.8em;
}
.f09em {
  font-size: 0.9em;
}
.f10em {
  font-size: 1em;
}
.f11em {
  font-size: 1.1em;
}
.f12em {
  font-size: 1.2em;
}
.f12px {
  font-size: 12px;
}
.f13em {
  font-size: 1.3em;
}
.f14em {
  font-size: 1.4em;
}
.f15em {
  font-size: 1.5em;
}
.f16em {
  font-size: 1.6em;
}
.f17em {
  font-size: 1.7em;
}
.f18em {
  font-size: 1.8em;
}
.f19em {
  font-size: 1.9em;
}
.f20em {
  font-size: 2em;
}
.f21em {
  font-size: 2.1em;
}
.f22em {
  font-size: 2.2em;
}
.f23em {
  font-size: 2.3em;
}
.f24em {
  font-size: 2.4em;
}
.f25em {
  font-size: 2.5em;
}
.f26em {
  font-size: 2.6em;
}
.f27em {
  font-size: 2.7em;
}
.f28em {
  font-size: 2.8em;
}
.f29em {
  font-size: 2.9em;
}
.f30em {
  font-size: 3em;
}

.f8pt {
  font-size: 8.5pt;
}
.f9pt {
  font-size: 9pt;
}
.f10pt {
  font-size: 10pt;
}
.f11pt {
  font-size: 11pt;
}
.f12pt {
  font-size: 12pt;
}
.f13pt {
  font-size: 13pt;
}
.f14pt {
  font-size: 14pt;
}
.f15pt {
  font-size: 15pt;
}
.f16pt {
  font-size: 16pt;
}
.f16px {
  font-size: 16px;
}
.f17pt {
  font-size: 17pt;
}
.f18pt {
  font-size: 18pt;
}
.f19pt {
  font-size: 19pt;
}
.f20pt {
  font-size: 20pt;
}
.f20px {
  font-size: 20px;
}
.f21pt {
  font-size: 21pt;
}
.f22pt {
  font-size: 22pt;
}
.f22px {
  font-size: 22px;
}
.f23pt {
  font-size: 23pt;
}
.f24pt {
  font-size: 24pt;
}

/*フォントの色設定*/
.red {
  color: #e53935 !important;
} /*赤*/
.blue {
  color: #0000dd !important;
} /*青*/
.green {
  color: #4caf50 !important;
} /*緑*/
.yellow {
  color: #ffff00 !important;
} /*黄*/
.navy {
  color: #3f51b5 !important;
} /*紺*/
.orange {
  color: #ff9800 !important;
} /*橙*/
.pink {
  color: #ec407a !important;
} /*ピンク*/
.purple {
  color: #9c27b0 !important;
} /*紫*/
.olive {
  color: #808000 !important;
} /*オリーブ*/
.lime {
  color: #00ff00 !important;
} /*黄緑*/
.aqua {
  color: #00bcd4 !important;
} /*水色*/
.black {
  color: #000 !important;
} /*黒*/
.gray {
  color: #ccc !important;
} /*灰*/
.white {
  color: #fff !important;
} /*白*/
.brown {
  color: #6d4c33 !important;
} /*茶*/

/*マーカー表示（背景に着色）*/
.box-yellow,
.box-orange,
.box-pink,
.box-lime,
.box-gray {
  padding: 2px;
}

.box-yellow {
  background-color: #ff6;
} /*黄*/
.box-orange {
  background-color: #f90;
} /*橙*/
.box-pink {
  background-color: #ffccff;
} /*ピンク*/
.box-lime {
  background-color: #9f9;
} /*黄緑*/
.box-gray {
  background-color: #ccc;
} /*灰*/

/*行間の設定*/
.lh10 {
  line-height: 1 !important;
}
.lh11 {
  line-height: 1.1 !important;
}
.lh12 {
  line-height: 1.2 !important;
}
.lh13 {
  line-height: 1.3 !important;
}
.lh14 {
  line-height: 1.4 !important;
}
.lh15 {
  line-height: 1.5 !important;
}
.lh16 {
  line-height: 1.6 !important;
}
.lh17 {
  line-height: 1.7 !important;
}
.lh18 {
  line-height: 1.8 !important;
}
.lh19 {
  line-height: 1.9 !important;
}
.lh20 {
  line-height: 2 !important;
}

/*横幅を指定*/
.w05 {
  width: 5%;
}
.w10 {
  width: 10%;
}
.w15 {
  width: 15%;
}
.w20 {
  width: 20%;
}
.w25 {
  width: 25%;
}
.w30 {
  width: 30%;
}
.w35 {
  width: 35%;
}
.w40 {
  width: 40%;
}
.w45 {
  width: 45%;
}
.w50 {
  width: 50%;
}
.w55 {
  width: 55%;
}
.w60 {
  width: 60%;
}
.w65 {
  width: 65%;
}
.w70 {
  width: 70%;
}
.w75 {
  width: 75%;
}
.w80 {
  width: 80%;
}
.w85 {
  width: 85%;
}
.w90 {
  width: 90%;
}
.w95 {
  width: 95%;
}
.w100 {
  width: 100%;
}

/*下線や取消線の設定*/
.underline {
  text-decoration: underline !important;
}
.del {
  text-decoration: line-through;
}
.noborder {
  border: 0 !important;
} /*枠線を無くす*/

/*重なりの優先度*/
.z1 {
  z-index: 1 !important;
}
.z2 {
  z-index: 2 !important;
}
.z3 {
  z-index: 3 !important;
}
.z4 {
  z-index: 4 !important;
}
.z5 {
  z-index: 5 !important;
}
.z10 {
  z-index: 10 !important;
}
.z20 {
  z-index: 20 !important;
}
.z30 {
  z-index: 30 !important;
}
.z40 {
  z-index: 40 !important;
}
.z50 {
  z-index: 50 !important;
}

/*横並びリスト*/
.inline {
  margin: 1em 0;
  padding: 0;
}
.inline li {
  display: inline;
  list-style-type: none;
}

/*マーカー無しのリスト*/
.none {
  margin: 1em 0;
  padding: 0;
}
.none li {
  list-style-type: none;
}

/*------------------------------------------------------------
文字列の前にアイコン
-------------------------------------------------------------*/

/*ポイントアイコンアイコン*/
.icon-point {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-point.png) left 3px no-repeat;
}

.icon-point-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-point-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-point {
    background: url(./images/icon/icon-point@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-point-l {
    background: url(./images/icon/icon-point-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*注意アイコン*/
.icon-caution {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-caution.png) left 3px no-repeat;
}

.icon-caution-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-caution-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-caution {
    background: url(./images/icon/icon-caution@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-caution-l {
    background: url(./images/icon/icon-caution-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*NEWアイコン*/
.icon-new {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-new.png) left 3px no-repeat;
}

.icon-new-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-new-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-new {
    background: url(./images/icon/icon-new@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-new-l {
    background: url(./images/icon/icon-new-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*初心者アイコン*/
.icon-wakaba {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-wakaba.png) left 3px no-repeat;
}

.icon-wakaba-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-wakaba-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-wakaba {
    background: url(./images/icon/icon-wakaba@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-wakaba-l {
    background: url(./images/icon/icon-wakaba-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*別ウインドウアイコン*/
.icon-blank {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-blank.png) left 3px no-repeat;
}

.icon-blank-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-blank-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-blank {
    background: url(./images/icon/icon-blank@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-blank-l {
    background: url(./images/icon/icon-blank-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*矢印上アイコン*/
.icon-arrow-t {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-arrow-t.png) left 3px no-repeat;
}

.icon-arrow-t-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-arrow-t-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-arrow-t {
    background: url(./images/icon/icon-arrow-t@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-arrow-t-l {
    background: url(./images/icon/icon-arrow-t-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*矢印右アイコン*/
.icon-arrow-r {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-arrow-r.png) left 3px no-repeat;
}

.icon-arrow-r-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-arrow-r-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-arrow-r {
    background: url(./images/icon/icon-arrow-r@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-arrow-r-l {
    background: url(./images/icon/icon-arrow-r-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*矢印下アイコン*/
.icon-arrow-b {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-arrow-b.png) left 3px no-repeat;
}

.icon-arrow-b-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-arrow-b-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-arrow-b {
    background: url(./images/icon/icon-arrow-b@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-arrow-b-l {
    background: url(./images/icon/icon-arrow-b-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*矢印左アイコン*/
.icon-arrow-l {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-arrow-l.png) left 3px no-repeat;
}

.icon-arrow-l-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-arrow-l-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-arrow-l {
    background: url(./images/icon/icon-arrow-l@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-arrow-l-l {
    background: url(./images/icon/icon-arrow-l-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*ダウンロード用PDアイコン*/
.icon-dl {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-dl.png) left 3px no-repeat;
}

.icon-dl-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-dl-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-dl {
    background: url(./images/icon/icon-dl@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-dl-l {
    background: url(./images/icon/icon-dl-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*PDFアイコン*/
.icon-pdf {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-pdf.png) left 3px no-repeat;
}

.icon-pdf-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-pdf-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-pdf {
    background: url(./images/icon/icon-pdf@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-pdf-l {
    background: url(./images/icon/icon-pdf-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*Zipアイコン*/
.icon-zip {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-zip.png) left 3px no-repeat;
}

.icon-zip-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-zip-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-zip {
    background: url(./images/icon/icon-zip@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-zip-l {
    background: url(./images/icon/icon-zip-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*メールアイコン*/
.icon-mail {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-mail.png) left 3px no-repeat;
}

.icon-mail-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-mail-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-mail {
    background: url(./images/icon/icon-mail@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-mail-l {
    background: url(./images/icon/icon-mail-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*ショッピングカートアイコン*/
.icon-cart {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-cart.png) left 3px no-repeat;
}

.icon-cart-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-cart-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-cart {
    background: url(./images/icon/icon-cart@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-cart-l {
    background: url(./images/icon/icon-cart-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*虫めがねアイコン*/
.icon-search {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-search.png) left 3px no-repeat;
}

.icon-search-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-search-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-search {
    background: url(./images/icon/icon-search@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-search-l {
    background: url(./images/icon/icon-search-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*ホームアイコン*/
.icon-home {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-home.png) left 3px no-repeat;
}

.icon-home-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-home-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-home {
    background: url(./images/icon/icon-home@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-home-l {
    background: url(./images/icon/icon-home-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*フォルダアイコン*/
.icon-folder {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-folder.png) left 3px no-repeat;
}

.icon-folder-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-folder-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-folder {
    background: url(./images/icon/icon-folder@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-folder-l {
    background: url(./images/icon/icon-folder-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*時計アイコン*/
.icon-time {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-time.png) left 3px no-repeat;
}

.icon-time-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-time-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-time {
    background: url(./images/icon/icon-time@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-time-l {
    background: url(./images/icon/icon-time-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*カレンダーアイコン*/
.icon-calendar {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-calendar.png) left 3px no-repeat;
}

.icon-calendar-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-calendar-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-calendar {
    background: url(./images/icon/icon-calendar@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-calendar-l {
    background: url(./images/icon/icon-calendar-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*RSSアイコン*/
.icon-rss {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-rss.png) left 3px no-repeat;
}

.icon-rss-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-rss-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-rss {
    background: url(./images/icon/icon-rss@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-rss-l {
    background: url(./images/icon/icon-rss-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*ビルアイコン*/
.icon-building {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-building.png) left 3px no-repeat;
}

.icon-building-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-building-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-building {
    background: url(./images/icon/icon-building@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-building-l {
    background: url(./images/icon/icon-building-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

/*マップアイコン*/
.icon-map {
  padding: 0 0 0 30px;
  background: url(./images/icon/icon-map.png) left 3px no-repeat;
}

.icon-map-l {
  padding: 10px 0 10px 60px;
  background: url(./images/icon/icon-map-l.png) left top no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon-map {
    background: url(./images/icon/icon-map@2x.png) left 3px no-repeat;
    -webkit-background-size: 24px 24px;
    background-size: 24px 24px;
  }

  .icon-map-l {
    background: url(./images/icon/icon-map-l@2x.png) left top no-repeat;
    -webkit-background-size: 48px 48px;
    background-size: 48px 48px;
  }
}

.outbound {
  padding: 3px;
  padding-left: 15px;
  background: url(./images/icon/icon-outbound-link.png) left center no-repeat;
}

/*Retina（高解像度）ディスプレイ用*/
@media screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .outbound {
    background: url(./images/icon/icon-outbound-link@2x.png) left center
      no-repeat;
    -webkit-background-size: 12px 13px;
    background-size: 12px 13px;
  }
}

/*--------------------------------------------------------
floatの回り込みを解除
--------------------------------------------------------*/
.site-header-conts:after,
.main-body-in:after,
.article-body:after,
.section-in:after,
.col4-wrap:after,
.col3-wrap:after,
.col2-wrap:after,
.news-item:after,
.related-articles-thumbs01 li:after,
.btn-area:after,
.page-nav-bf:after,
.global-nav-in li ul:after,
.banner-list:after,
.main-conts dl.cast:after,
.clearfix:after,
.blog-body-in:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

/*---------------------------------------------------------------------
	generated by Keni Template Maker Ver.7.1 on 2018-02-02 16:03:57
----------------------------------------------------------------------*/

/*---------------------------------------------------------------------
追記css
----------------------------------------------------------------------*/
/*レスポンシブ用*/
.pc {
  display: block;
}
.sp {
  display: none;
}
@media only screen and (max-width: 736px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}

/*ヘッダー*/

.site-header {
  background-color: #d90000;
  position: fixed;
  z-index: 30;
  width: 100%;
}
.header-document {
  float: right;
  width: 60px;
  padding: 12px 18px;
  text-align: center;
  color: #fff;
  font-size: 14px;
}
.header-document:hover {
  background-color: #b40000;
}
.header-document img {
  margin: 0 5px 18px;
}
.smaller .header-document {
  width: 44px;
  padding: 8px 10px 8px;
  font-size: 11px;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border: 1px solid #fff;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  margin: 16px 35px 0 0;
}
.smaller .header-document img {
  margin-bottom: 0;
  margin-left: 0;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.smaller .header-document span {
  display: none;
}
.header-opencampus {
  float: right;
  width: 66px;
  padding: 11px 15px 4px;
  text-align: center;
  color: #fff;
  font-size: 12px;
}
.header-opencampus:hover {
  background-color: #b40000;
}
.header-opencampus img {
  margin: 0 5px 11px;
}
.smaller .header-opencampus {
  width: 100px;
  padding: 8px 10px 8px;
  font-size: 11px;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border: 1px solid #fff;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  margin: 16px 10px 0 0;
}
.smaller .header-opencampus img {
  margin-bottom: 0;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.smaller .header-opencampus span {
  display: none;
}
.smaller .header-opencampus br {
  display: none;
}
.header-access {
  float: right;
  width: 60px;
  padding: 13px 18px;
  text-align: center;
  color: #fff;
  font-size: 14px;
}
.header-access:hover {
  background-color: #b40000;
}
.header-access img {
  margin: 0 5px 16px;
}
.smaller .header-access {
  width: 44px;
  padding: 16px 10px 15px;
  font-size: 11px;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.smaller .header-access img {
  margin: 0;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.smaller .header-access span {
  display: none;
}
.smaller .header-access:hover {
  background-color: #d90000;
}
.smaller .header-access:hover img {
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  opacity: 0.8;
}
.sub-menu {
  width: 100%;
  background-color: #d90000;
  color: #fff;
  font-size: 12px;
  position: relative;
  top: 77px;
}
.sub-menu ul {
  margin: 0 auto;
  width: 96%;
  max-width: 1200px;
}
.sub-menu ul li {
  display: inline-block;
  margin: 5px 10px 5px 0;
}
.sub-menu ul li:before {
  position: relative;
  left: 0;
  top: -1px;
  content: "";
  background: url(./images/common/sub02-menu-icon.png) no-repeat;
  width: 8px;
  height: 8px;
  background-size: contain;
  vertical-align: -1px;
  display: inline-block;
  z-index: 0;
}
.sub-menu ul li a {
  color: #fff;
  text-decoration: none;
}
.sub02-menu {
  width: 100%;
  background-color: #d90000;
  color: #fff;
  font-size: 12px;
}
.sub02-menu ul {
  margin: 0 auto;
  width: 96%;
  max-width: 1200px;
}
.sub02-menu ul li {
  display: inline-block;
  margin: 5px 10px 5px 0;
}
.sub02-menu ul li:before {
  content: "";
  color: #fff; /*アイコン色*/
  background: url(./images/common/sub02-menu-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: -0.5px;
  display: inline-block;
  margin-right: 5px;
}
.sub02-menu ul li a {
  color: #fff;
  text-decoration: none;
}

.arrow {
  position: relative;
  top: -175px;
  left: 50%;
  display: inline-block;
  padding: 0 0 0 16px;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px;
  margin-left: -22.5px;
}
.arrow:before,
.arrow:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.scrolldown:before {
  width: 55px;
  height: 55px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.7);
}
.scrolldown:after {
  top: -7px;
  left: 17px;
  width: 20px;
  height: 20px;
  border-top: 1px solid #d90000;
  border-right: 1px solid #d90000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
/*トップページ*/
.metaslider {
  top: 96px;
}
#top-information {
  margin-top: -60px;
  padding-top: 60px;
}
.top-information {
  width: 96%;
  max-width: 1200px;
  margin: 20px auto 60px;
}
.top-information-title {
  color: #d90000;
  text-align: center;
  font-size: 36px;
  font-weight: bold;
  margin: 10px 0;
}
.top-information ul {
  width: 460px;
  list-style: none;
  margin: 0.5em auto 0;
}
.top-information ul li {
  border-bottom: 1px solid #b5b5b5;
  text-align: center;
}
.top-information ul li:last-child {
  border-bottom: none;
}
.top-information ul li a {
  color: #000;
  text-decoration: none;
  font-size: 16px;
  line-height: 32px;
}
.top-sns ul {
  text-align: center;
  margin: 20px 0 0;
}
.top-sns ul li {
  display: inline-block;
  list-style: none;
  margin: 0 1%;
}
.top-kanbi-strength-cover {
  background-color: #9e0000;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.top-kanbi-strength {
  background: url(./images/common/top-kanbi-strength-bg02.png);
  background-size: 100% auto;
  margin: 60px auto 60px;
  padding: 80px 0;
  max-width: 1200px;
}
.top-kanbi-strength-conts {
  width: 50%;
  margin-left: 47%;
  margin-right: 3%;
  color: #fff;
  padding: 10px 0;
  font-size: 15px;
  text-align: center;
}
.top-kanbi-strength-conts h1 {
  font-size: 20px;
  background: none;
  margin: 0 0 20px;
  padding: 0 10px;
  color: #fff;
  font-weight: bold;
}
.top-kanbi-strength-btn {
  display: block;
  width: 100%;
  border: 3px solid #fff;
  text-align: center;
  box-sizing: border-box;
  text-decoration: none;
  color: #fff;
  padding: 3px 5% 7px 0;
  font-size: 32px;
  margin-top: 20px;
  font-weight: bold;
  letter-spacing: 4px;
}
.top-kanbi-strength-btn:before {
  position: relative;
  left: 50%;
  top: 1px;
  content: "";
  background: url(./images/common/top-kanbi-strength-btn-icon.png) no-repeat;
  width: 15px;
  height: 33px;
  background-size: contain;
  vertical-align: -7.5px;
  display: inline-block;
  z-index: 0;
}
.top-pickup {
  font-size: 0;
  background-color: #f2f2f2;
  padding: 20px 0;
}
.top-pickup-title {
  position: relative;
  width: 94.5%;
  text-align: center;
  margin: 60px auto 20px;
  z-index: 2;
}
.top-pickup-title h2 {
  font-size: 36px;
  color: #d90000;
  width: 80%;
  margin: 0 auto 20px;
  box-shadow: none;
  line-height: 30px;
  font-weight: bold;
}
.top-pickup-conts {
  width: 96%;
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 60px;
}
.top-pickup-conts img {
  margin-bottom: 20px;
}
.top-pickup-conts a {
  color: #d90000;
}
.top-news {
  font-size: 0;
}
.top-news-title {
  position: relative;
  width: 94.5%;
  text-align: center;
  margin: 60px auto 20px;
  z-index: 2;
}
.top-news-title h2 {
  font-size: 36px;
  color: #d90000;
  width: 80%;
  margin: 0 auto 20px;
  box-shadow: none;
  z-index: 1;
  position: relative;
  line-height: 30px;
  font-weight: bold;
}

.top-news-listcard {
  width: 386.66px;
  border: 1px solid #b5b5b5;
  display: inline-block;
  vertical-align: top;
  font-size: 14px;
  box-sizing: border-box;
  padding: 0;
  margin: 0 20px 40px 0;
  color: #333;
}
.top-news-listcard:nth-child(3n) {
  margin: 0 0 20px 0;
}
.top-news-listcard a {
  text-decoration: none;
  color: #333;
}
.top-news ul {
  margin: 0 auto;
  width: 1200px;
}
.top-news-listcard-title {
  font-weight: bold;
  font-size: 15px;
  line-height: 20px;
  margin: 5px 10px 20px;
  min-height: 40px;
}

.top-news-listcard-conts {
  font-size: 15px;
  margin: 0 10px;
}
.top-news-btn-more {
  display: block;
  text-align: center;
  margin: 12px auto 15px;
  color: #d90000 !important;
  width: 30%;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
  -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
  border-radius: 15px;
  -webkit-border-radius: 15px;
  text-decoration: none;
}
.top-news-cat {
  background-color: #d90000;
  color: #fff;
  border-radius: 0;
  -webkit-border-radius: 0;
  padding: 1px 6px;
  display: inline-block;
  font-size: 13px;
  margin: 10px 10px 5px;
}
.ellip {
  display: block;
  height: 100%;
}

.ellip-line {
  display: inline-block;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  max-width: 100%;
}

.ellip,
.ellip-line {
  position: relative;
  overflow: hidden;
}
.top-blog {
  margin: 60px auto;
  background-color: #f2f2f2;
  padding: 40px 0;
}
.top-blog-content {
  width: 96%;
  max-width: 1200px;
  margin: 0 auto;
}
.top-blog-title {
  width: 30%;
  padding: 22px 0 22px 8%;
  box-sizing: border-box;
  float: left;
  line-height: 26px;
  text-align: center;
}
.top-blog-title-icon {
  display: inline-block;
  width: 200px;
}
.top-blog-title-title {
  display: inline-block;
}
.top-blog-conts {
  display: inline-block;
  width: 60%;
}
.top-blog-conts ul {
  list-style: none;
  margin: 4px 0 4px 3%;
}
.top-blog-conts ul li {
  border-bottom: 1px solid #ccc;
  margin-bottom: 0;
}
.top-blog-conts ul li:last-child {
  border-bottom: none;
}
.top-blog-conts ul li a {
  text-decoration: none;
  color: #333;
  font-weight: bold;
  line-height: 33px;
}
.top-contents {
  font-size: 0;
}
.top-contents-title {
  text-align: center;
  margin: 60px auto 20px;
}
.top-contents-title h2 {
  font-size: 36px;
  color: #d90000;
  width: 80%;
  margin: 0 auto;
  box-shadow: none;
  z-index: 1;
  position: relative;
  line-height: 30px;
  font-weight: bold;
}

.top-contents a {
  text-decoration: none;
}
.top-contents01 {
  background: url(./images/common/top-contents-bg01.jpg);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 27px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
}
.top-contents01-title {
  font-size: 22px;
  width: 50%;
  margin-left: 50%;
  padding-top: 15px;
  margin-bottom: 7px;
  font-weight: bold;
}
.top-contents01 p {
  font-size: 14px;
  width: 50%;
  margin-left: 50%;
  font-weight: bold;
}
.top-contents02 {
  background: url(./images/common/top-contents-bg02.jpg);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 27px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
}
.top-contents02-title {
  font-size: 22px;
  width: 50%;
  margin-right: 50%;
  padding-top: 15px;
  margin-bottom: 7px;
  font-weight: bold;
}
.top-contents02 p {
  font-size: 14px;
  width: 50%;
  margin-right: 50%;
  font-weight: bold;
}
.top-contents03 {
  background: url(./images/common/top-contents-bg03.jpg);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 27px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
}
.top-contents03-title {
  font-size: 22px;
  width: 50%;
  margin-left: 50%;
  padding-top: 15px;
  margin-bottom: 7px;
  font-weight: bold;
}
.top-contents03 p {
  font-size: 14px;
  width: 50%;
  margin-left: 50%;
  font-weight: bold;
}
.top-contents04 {
  background: url(./images/common/top-contents-bg04.jpg);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 27px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
}
.top-contents04-title {
  font-size: 22px;
  width: 50%;
  margin-right: 50%;
  padding-top: 15px;
  margin-bottom: 7px;
  font-weight: bold;
}
.top-contents04 p {
  font-size: 14px;
  width: 50%;
  margin-right: 50%;
  font-weight: bold;
}
.top-contents05 {
  background: url(./images/common/top-contents-bg05.jpg);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 27px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
}
.top-contents05-title {
  font-size: 22px;
  width: 50%;
  margin-left: 50%;
  padding-top: 15px;
  margin-bottom: 7px;
  font-weight: bold;
}
.top-contents05 p {
  font-size: 14px;
  width: 50%;
  margin-left: 50%;
  font-weight: bold;
}
.top-contents06 {
  background: url(./images/common/top-contents-bg06.jpg);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 27px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
}
.top-contents06-title {
  font-size: 22px;
  width: 50%;
  margin-right: 50%;
  padding-top: 15px;
  margin-bottom: 7px;
  font-weight: bold;
}
.top-contents06 p {
  font-size: 14px;
  width: 50%;
  margin-right: 50%;
  font-weight: bold;
}
.top-contents07 {
  background: url(./images/common/top-contents-bg07.jpg);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 27px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
}
.top-contents07-title {
  font-size: 22px;
  width: 50%;
  margin-right: 50%;
  padding-top: 15px;
  margin-bottom: 7px;
  font-weight: bold;
}
.top-contents07 p {
  font-size: 14px;
  width: 50%;
  margin-right: 50%;
  font-weight: bold;
}
.top-app {
  /*background: url(./images/common/top-app-bg.png);*/
  background-repeat: repeat;
  padding: 0 0 40px;
  font-size: 18px;
  color: #d90000;
  text-align: center;
  font-weight: bold;
}
.top-app-btn-conts {
  width: 673px;
  margin: 20px auto 0;
}
.top-app-btn01 {
  display: block;
  text-align: center;
  margin: 0 auto;
  color: #d90000;
  width: 320px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  text-decoration: none;
  font-weight: normal;
  border: 1px solid;
  font-size: 16px;
  float: left;
  margin-right: 33px;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  background-color: #fff;
  line-height: 37px;
  padding-right: 30px;
}
.top-app-btn01:before {
  position: relative;
  left: 219px;
  content: "";
  background: url(./images/common/top-app-btn02-icon.png) no-repeat;
  width: 14px;
  height: 16px;
  background-size: contain;
  vertical-align: -1.5px;
  display: inline-block;
  z-index: -1;
}
.top-app-btn02 {
  display: block;
  text-align: center;
  margin: 0 auto;
  color: #d90000;
  width: 320px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  text-decoration: none;
  font-weight: normal;
  border: 1px solid;
  font-size: 16px;
  float: left;
  box-sizing: border-box;
  background-color: #fff;
  line-height: 37px;
  padding-right: 20px;
}
.top-app-btn02:before {
  position: relative;
  left: 179px;
  content: "";
  background: url(./images/common/top-app-btn02-icon.png) no-repeat;
  width: 14px;
  height: 16px;
  background-size: contain;
  vertical-align: -0.5px;
  display: inline-block;
  z-index: 0;
}
.h2-title-sub {
  color: #d90000;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
  margin-top: -17px;
}
/*カリキュラム用*/
.page-title-curriculum {
  background: url(./images/common/page-curriculum-title-bg.png) repeat-x;
  -webkit-animation: bgiLoop 20s linear infinite;
  animation: bgiLoop 20s linear infinite;
  height: 300px;
  width: 100%;
  background-size: auto 100%;
  position: relative;
  padding-top: 97px;
}
.page-title-curriculum .global-nav {
  margin-top: 10px !important;
}
@-webkit-keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
@keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
.page-title-curriculum-conts {
  color: #fff !important;
  text-align: center;
  padding: 126px 0 75px !important;
  font-size: 40px !important;
  line-height: 30px;
  margin: 0 !important;
}
.page-title-curriculum-conts span {
  font-size: 18px;
}
.curriculum-nav {
  list-style: none;
  font-size: 12px;
  font-weight: bold;
  display: table;
  margin: 0;
  width: 100%;
  text-align: center;
}
.curriculum-nav li {
  display: table-cell;
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.curriculum-nav .current_page_item {
  border-bottom: 2px solid #fff;
}
.curriculum-nav li a {
  color: #fff;
  text-decoration: none;
  text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0;
}
.curriculum-nav-footer {
  list-style: none;
  font-size: 12px;
  display: table;
  margin: 10px auto 30px;
  width: 96%;
  max-width: 1152px;
  text-align: center;
  font-weight: bold;
}
.curriculum-nav-footer li {
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.curriculum-nav-footer .current_page_item {
  border-bottom: 2px solid #474747;
}
.curriculum-nav-footer li a {
  color: #474747;
  text-decoration: none;
}
.ptb40 {
  padding: 40px 0 !important;
}
.section-title:before {
  background: url(./images/common/h1-title-bg.png) repeat-x;
  content: "";
  width: 100%;
  display: block;
  height: 10px;
  position: relative;
  top: 29px;
  z-index: 1;
  background-size: contain;
}
.section-title span {
  background: #fff;
  padding: 0 10px;
  position: relative;
  z-index: 5;
  letter-spacing: 5px;
  font-weight: bold;
}
.section-title-gray:before {
  background: url(./images/common/h1-title-bg.png) repeat-x;
  content: "";
  width: 100%;
  display: block;
  height: 10px;
  position: relative;
  top: 29px;
  z-index: 1;
  background-size: contain;
}
.section-title-gray span {
  background: #f2f2f2;
  padding: 0 10px;
  position: relative;
  z-index: 5;
  letter-spacing: 5px;
  font-weight: bold;
}
#curiculum-int-semminer {
  padding-top: 70px;
  margin-top: -30px;
}
#curiculum-pro-semminer {
  padding-top: 70px;
}
#curiculum-conts3-01:before,
#curiculum-conts3-02:before,
#curiculum-conts3-03:before,
#curiculum-conts3-04:before,
#curiculum-conts3-05:before,
#curiculum-conts3-06:before,
#curiculum-conts3-07:before,
#curiculum-conts3-08:before,
#curiculum-conts3-09:before,
#curiculum-conts3-10:before,
#curiculum-conts3-11:before,
#curiculum-conts3-12:before,
#curiculum-conts3-13:before,
#curiculum-conts3-14:before,
#curiculum-conts3-15:before,
#curiculum-conts3-16:before,
#curiculum-conts3-17:before,
#curiculum-conts3-18:before,
#curiculum-conts3-19:before,
#curiculum-conts3-20:before,
#curiculum-conts3-21:before,
#curiculum-conts3-22:before,
#curiculum-conts3-23:before {
  content: "";
  display: block;
  height: 90px;
  margin-top: -80px;
  visibility: hidden;
}
.curiculum-introduction {
  text-align: center;
  font-size: 16px;
  width: 96%;
  max-width: 1152px;
  margin: 0 auto;
}
.curiculum-introduction-sub {
  text-align: center;
  font-size: 16px;
  width: 96%;
  max-width: 1152px;
  margin: 0 auto;
}
.curiculum-h3title {
  text-align: center;
  color: #d90000;
  font-size: 20px !important;
  margin-top: 90px !important;
}
.curiculum-h3title span {
  border-bottom: 2px solid #d90000;
  display: inline-block;
  font-size: 24px !important;
  font-weight: bold;
}
.curiculum-mainconts3 {
  width: 96%;
  max-width: 1152px;
  margin: 0 auto;
  padding: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.curiculum-mainconts3 li {
  width: 32%;
  margin: 10px 2% 30px 0;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  list-style: none;
  padding-bottom: 65px;
  position: relative;
  border: 1px solid #333;
  padding: 2%;
  box-sizing: border-box;
  background-color: #fff;
}
.curiculum-mainconts3 li:nth-child(3n) {
  margin: 10px 0 30px;
}
.curiculum-mainconts3 li ul li:nth-child(3n) {
  margin: 5px 0 5px 0;
}
.curiculum-mainconts3 ul {
  margin-left: 0;
}
.curiculum-mainconts3 ul li {
  background-image: url(./images/common/curiculum-mainconts-icon01.png);
  width: 95%;
  margin: 5px 0 5px 0;
  padding-bottom: 0;
  padding-left: 18px;
  font-size: 13px;
  background-repeat: no-repeat;
  background-position: 0px 7px;
  background-size: 14px;
  text-align: left;
  display: block;
  line-height: 18px;
  border: none;
}
.curiculum-mainconts3 ul li a {
  color: #333;
}

.curiculum-conts3 {
  width: 96%;
  max-width: 1152px;
  margin: 60px auto 0;
  padding: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.curiculum-conts3 li {
  width: 31%;
  margin: 10px 3.5% 70px 0;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  list-style: none;
  padding-bottom: 30px;
  position: relative;
  font-size: 0;
}
.curiculum-conts3 li:nth-child(3n) {
  margin-right: 0;
}
.curiculum-conts3 li ul li:nth-child(3n) {
  margin: 10px 0 10px;
}
.curiculum-index-title {
  position: absolute !important;
  display: inline-block;
  padding: 7px 5px;
  min-width: 120px;
  width: 86% !important;
  color: #fff;
  background: #d90000 !important;
  margin: 0 5% !important;
  box-sizing: border-box;
  text-align: center;
  font-size: 16px !important;
  box-shadow: none !important;
  letter-spacing: -1.6px;
  top: -8px;
  left: 0;
}

.curiculum-index-title:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #d90000;
}
.curiculum-conts-title {
  position: relative;
  display: inline-block;
  padding: 7px 10px;
  min-width: 120px;
  width: 83% !important;
  color: #fff;
  background: #d90000 !important;
  margin: 0 5% !important;
  box-sizing: border-box;
  text-align: center;
  font-size: 22px !important;
  top: 20px;
  box-shadow: none !important;
}

.curiculum-conts-title:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #d90000;
}
.curiculum-tec-title {
  position: absolute !important;
  display: inline-block;
  padding: 7px 10px;
  min-width: 120px;
  width: 84% !important;
  color: #fff;
  background: #d90000 !important;
  margin: 0 5% !important;
  box-sizing: border-box;
  text-align: center;
  font-size: 16px !important;
  top: 20px;
  box-shadow: none !important;
  left: 0;
  top: -17px;
}

.curiculum-tec-title:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #d90000;
}
.curiculum-conts-point {
  color: #fff;
  font-size: 13px;
  background: #d90000;
  text-align: center;
  border-radius: 12px;
  -webkit-border-radius: 12px;
  width: 130px;
  margin: 15px auto;
  padding: 2px;
}

.curiculum-index-caption {
  color: #d90000;
  font-size: 16px;
  margin: 15px auto;
  text-align: left;
}
.curiculum-mainconts3-caption {
  color: #d90000;
  font-size: 16px;
  margin: 15px auto;
  text-align: left;
}
.curiculum-conts-caotion {
  color: #d90000;
  font-size: 18px;
  margin: 15px 0;
  text-align: left;
}
.curiculum-tec-caotion {
  color: #d90000;
  font-size: 15px;
  margin: 15px 0 0;
  text-align: left;
}
.curiculum-conts3 li ul {
  margin-left: 0;
  text-align: left;
}
.curiculum-conts3 li ul li {
  width: 100%;
  margin: 10px 0 10px;
  display: block;
  font-size: 15px;
  text-align: left;
  padding-bottom: 10px;
}
.curiculum-conts3 li ul li p {
  margin-top: 5px;
}
.curiculum-conts3 li ul li:before {
  content: "";
  background: url(./images/common/curiculum-conts3-listicon.png) no-repeat;
  width: 10px;
  height: 12px;
  background-size: contain;
  display: inline-block;
  margin-right: 3px;
}
.mb100 {
  margin-bottom: 100px !important;
}
.curiculum-conts3 li p {
  font-size: 15px;
  text-align: left;
  margin-top: 15px;
}
.curiculum-conts3 li .button-list {
  text-align: center;
  padding: 0;
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
}
.curiculum-conts3 li p.button01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  font-size: 0;
  box-sizing: border-box;
  width: 29.33%;
  margin: 0 2%;
}
.curiculum-conts3 li p.button01 a {
  text-align: center;
  padding: 2px;
}
.curiculum-conts3 li p.button02 {
  text-align: center;
  padding: 0;
  display: inline-block;
  box-sizing: border-box;
  font-size: 0;
  width: 29.33%;
  margin: 0 2%;
}
.curiculum-conts3 li p.button02 a {
  text-align: center;
  padding: 2px;
}
.curiculum-conts3 li p.button03 {
  text-align: center;
  padding: 0;
  display: inline-block;
  box-sizing: border-box;
  font-size: 0;
  width: 29.33%;
  margin: 0 2%;
}
.curiculum-conts3 li p.button03 a {
  text-align: center;
  padding: 2px;
}
.button04 a {
  text-align: center;
  padding: 2px;
  display: block;
  width: 458px;
  margin: 30px auto 45px;
  box-sizing: border-box;
  border: 2.5px solid #ff5a00;
}
.button04 a:after {
  content: "";
  background-repeat: no-repeat;
  background-image: url(./images/common/btn-blog-arrow.png);
  background-size: contain;
  display: inline-block;
  top: 1px;
  left: 56px;
  position: relative;
  width: 26px;
  height: 26px;
}
.button04 a img {
  width: 295px !important;
}
.curiculum-stepup-img {
  display: inline-block;
  width: 26%;
  vertical-align: top;
}
.curiculum-stepup-text {
  position: relative;
  display: inline-block;
  margin: 1em 0 1.5em 15px;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #333;
  font-size: 15px;
  background: #fff;
  border: solid 3px #d3d3d4;
  box-sizing: border-box;
  width: 64%;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  font-weight: bold;
}

.curiculum-stepup-text:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -23px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 12px solid #fff;
  z-index: 2;
}

.curiculum-stepup-text:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-right: 14px solid #d3d3d4;
  z-index: 1;
}
.curiculum-int-img {
  width: 800px;
  margin: 0 auto 25px;
}
.curiculum-int-text {
  font-size: 16px;
  text-align: center;
  max-width: 1152px;
  width: 96%;
  margin: 0 auto;
}
.curiculum-int-sch-conts {
  background-color: #fbe6e5;
  padding: 45px 0 20px;
  margin: 45px auto 20px;
  max-width: 1152px;
  width: 96%;
}
.curiculum-int-title {
  font-size: 30px;
  text-align: center;
  color: #d90000;
}
.curiculum-int-title span {
  font-size: 20px;
  text-align: center;
  display: block;
  color: #d90000;
}
.curiculum-int-sch {
  width: 654px;
  margin: 30px auto;
  font-size: 20px;
  line-height: 38px;
}
.curiculum-int-sch dt {
  width: 180px;
  padding-left: 25px;
  float: left;
}
.curiculum-int-sch dd {
  padding-left: 160px;
  border-bottom: 1px solid #000;
}
.curiculum-int-sch-text {
  max-width: 510px;
  margin: 0 auto;
  text-align: center;
  font-size: 20px;
}
.curiculum-int-sch-text-inner {
  display: inline-block;
  text-align: left;
  margin-bottom: 30px;
}

.btn-blog {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: 1.3px solid #000;
  background: #fff;
  text-align: center;
  padding: 3px 0;
  border-radius: 5px;
  -webkit-border-radius: 5px;
}
.btn-blog img {
  width: 225px !important;
}
.btn-blog02 {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: 2.5px solid #ff5a00;
  text-align: center;
  padding: 3px 0;
}
.btn-blog02 img {
  width: 295px !important;
}
.btn-blog02:after {
  position: relative;
  content: "";
  top: -5px;
  left: 40px;
  display: inline-block;
  width: 28px;
  height: 28px;
  vertical-align: middle;
  background-size: contain;
  background-repeat: no-repeat; /*画像を繰り返さない*/
  background-image: url(./images/common/btn-blog-arrow.png);
}
.btn-photo {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: 1.3px solid #000;
  background: #fff;
  text-align: center;
  padding: 3px 0;
  border-radius: 5px;
  -webkit-border-radius: 5px;
}
.btn-photo img {
  width: 225px !important;
}
.btn-youtube {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: 1.3px solid #000;
  background: #fff;
  text-align: center;
  padding: 3px 0;
  border-radius: 5px;
  -webkit-border-radius: 5px;
}
.btn-youtube img {
  width: 225px !important;
}
.btn-works {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: 1.3px solid #000;
  text-align: center;
  padding: 3px 0;
  border-radius: 5px;
  -webkit-border-radius: 5px;
}
.btn-works img {
  width: 225px !important;
}
.btn-more {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: 1.3px solid #000;
  background: #fff;
  text-align: center;
  padding: 3px 0;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  line-height: 0;
}
.btn-more img {
  width: 225px !important;
}
.btn-detail {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: 1.3px solid #000;
  background: #fff;
  text-align: center;
  padding: 3px 0;
  border-radius: 5px;
  -webkit-border-radius: 5px;
}
.btn-detail img {
  width: 225px !important;
}
.btn-contest {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: 1.3px solid #d90000;
  background: #fff;
  text-align: center;
  padding: 3px 0;
  border-radius: 5px;
  -webkit-border-radius: 5px;
}
.btn-contest img {
  width: 225px !important;
}
.curiculum-annex-img {
  margin: 45px auto;
  width: 100%;
  max-width: 1200px;
}
.curiculum-annex1day {
  width: 800px;
  margin: 0 auto 50px;
  font-size: 15px;
  text-align: center;
}
.curiculum-annex1day-title {
  color: #d90000;
  font-size: 20px;
  border-top: 1px solid #d90000;
  border-bottom: 1px solid #d90000;
  margin-bottom: 15px;
  padding: 15px 0;
}
.curiculum-annex1day-sconts {
  width: 100%;
  margin: 20px auto;
  font-size: 0;
  max-width: 1200px;
}
.curiculum-annex1day-sconts li {
  width: 30%;
  display: inline-block;
  vertical-align: top;
  text-align: left;
  list-style: none;
  margin: 0 5% 30px 0;
  font-size: 16px;
  box-sizing: border-box;
  padding: 0;
}
.curiculum-annex1day-sconts li:nth-child(3) {
  margin: 0 0 30px 0;
}
.curiculum-annex1day-sconts li img {
  width: 100%;
  margin-bottom: 10px;
}
.curiculum-annex-ex {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}
.curiculum-annex-ex-title {
  color: #d90000;
  font-size: 20px;
  border-top: 1px solid #d90000;
  border-bottom: 1px solid #d90000;
  margin: 0 auto 15px;
  padding: 15px 0;
  text-align: center;
  max-width: 1200px;
  width: 100%;
}
.curiculum-annex-ex-img {
  width: 35%;
  margin-right: 3%;
  float: left;
  font-size: 16px;
  text-align: center;
  margin-top: 5px;
}
.curiculum-annex-ex-img img {
  margin-bottom: 35px;
}
.curiculum-annex-ex-text {
  width: 62%;
  float: left;
  font-size: 16px;
  margin-bottom: 20px;
}
.curiculum-annex-ex-text dt {
  background-color: #d90000;
  color: #fff;
  padding: 3px 10px;
  margin-bottom: 5px;
}
.curiculum-annex-ex-text dd {
  margin-bottom: 20px;
  padding-left: 0;
}
.annex-salon {
  width: 800px;
  margin: 30px auto;
  font-size: 16px;
}
.annex-salon-price {
  width: 337px;
  margin: 75px auto 25px;
  text-align: center;
  border: 1px solid #464646;
  padding: 5px 0;
  font-size: 16px;
  box-sizing: border-box;
  background-color: #fff;
}
.annex-salon-price-table {
  width: 100%;
  border: none;
  font-size: 16px;
  text-align: right;
  margin: 20px 0 35px;
}
.annex-salon-tenpo {
  max-width: 800px;
  width: 96%;
  margin: 0 auto;
  font-size: 16px;
}
.w140 {
  width: 140px;
}
.w200 {
  width: 200px;
}
.ta-l {
  text-align: left !important;
}
.annex-salon-price-table th {
  background: none;
  text-align: right;
  font-weight: normal;
  padding: 8px 0;
  border-right: none;
  border-bottom: none;
}
.annex-salon-price-table td {
  padding: 8px 0;
  border-right: none;
}
.bb-n {
  border-bottom: none;
}
.annex-salon-terms {
  margin-left: 20px;
  margin-top: 30px;
  margin-bottom: 30px;
}
/*学校案内用*/
.page-title-strength {
  background: url(./images/common/page-curriculum-title-bg.png) repeat-x;
  -webkit-animation: bgiLoop 30s linear infinite;
  animation: bgiLoop 30s linear infinite;
  height: 300px;
  width: 100%;
  background-size: auto 100%;
  position: relative;
  padding-top: 97px;
}
@-webkit-keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
@keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
.page-title-strength-conts {
  color: #fff !important;
  text-align: center;
  padding: 126px 0 75px !important;
  font-size: 40px !important;
  line-height: 30px;
  margin: 0 !important;
}
.page-title-strength-conts span {
  font-size: 18px;
}
.page-title-strength .global-nav {
  margin-top: 10px !important;
}
.information-nav {
  list-style: none;
  font-size: 12px;
  font-weight: bold;
  display: table;
  margin: 0 auto;
}
.information-nav li {
  display: table-cell;
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.information-nav .current_page_item {
  border-bottom: 2px solid #fff;
}
.information-nav li a {
  color: #fff;
  text-decoration: none;
  text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0;
}
.information-nav-footer {
  list-style: none;
  font-size: 12px;
  display: table;
  margin: 10px auto 30px;
  width: 96%;
  max-width: 1152px;
  text-align: center;
  font-weight: bold;
}
.information-nav-footer li {
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.information-nav-footer .current_page_item {
  border-bottom: 2px solid #474747;
}
.information-nav-footer li a {
  color: #474747;
  text-decoration: none;
}
.strength-intro {
  color: #fff;
  background-color: #d90000;
  text-align: center;
  width: 96%;
  max-width: 1152px;
  margin: 17px auto 40px;
  font-size: 18px;
  line-height: 28px;
  padding: 20px 5% 3px;
  box-sizing: border-box;
}
.strength-conts01 {
  background: url(./images/common/about_bg01.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  color: #fff;
  margin: 0 auto 20px;
  width: 96%;
  max-width: 1152px;
}
.strength-in01 {
  width: 48%;
  padding: 40px 0 40px 2%;
}
.strength-point01 {
  position: relative;
  width: 90px;
  text-align: center;
  z-index: 2;
  background-color: #fff;
  color: #d90000;
  font-size: 16px;
  margin-bottom: 10px;
}
.strength-point01:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -4px;
  left: 4px;
  background-color: #fff;
  z-index: -1;
  transform: skew(-15deg);
}
.strength-subtitle {
  font-size: 28px;
  line-height: 40px;
  margin-bottom: 5px;
}
.strength-title {
  font-size: 48px;
  line-height: 70px;
}
.strength-click01 {
  background-color: #fff;
  color: #d90000;
  font-size: 17px;
  display: block;
  padding: 2px 5px;
  text-align: center;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  text-decoration: none;
  width: 110px;
  margin: 15px 0 0;
}
.strength-in01 p {
  margin: 0;
}
.strength-des {
  width: 92%;
  max-width: 1080px;
  margin: 30px auto;
  font-size: 16px;
}
.strength-conts02 {
  background: url(./images/common/about_bg02.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  color: #fff;
  margin: 0 auto 20px;
  width: 96%;
  max-width: 1152px;
}
.strength-in02 {
  width: 58%;
  padding: 30px 2% 10px 40%;
  text-align: right;
}
.strength-in01 p {
  margin: 0;
}
.strength-point02 {
  position: relative;
  width: 90px;
  text-align: center;
  z-index: 2;
  background-color: #fff;
  color: #d90000;
  font-size: 16px;
  margin-bottom: 10px;
  margin-left: auto;
}
.strength-point02:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 4px;
  left: -4px;
  background-color: #fff;
  z-index: -1;
  transform: skew(15deg);
}
.strength-click02 {
  background-color: #fff;
  color: #d90000;
  font-size: 17px;
  display: block;
  padding: 2px 5px;
  text-align: center;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  text-decoration: none;
  width: 110px;
  margin: 15px 0 0;
  margin-left: auto;
}
.strength-in02 p {
  margin: 0;
}
.strength-conts03 {
  background: url(./images/common/about_bg03.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  color: #fff;
  margin: 0 auto 20px;
  width: 96%;
  max-width: 1152px;
}
.strength-in03 {
  width: 48%;
  padding: 40px 0 40px 2%;
}
.strength-in03 p {
  margin: 0;
}
.strength-conts04 {
  background: url(./images/common/about_bg04.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  color: #fff;
  margin: 0 auto 20px;
  width: 96%;
  max-width: 1152px;
}
.strength-in04 {
  width: 58%;
  padding: 40px 2% 40px 40%;
  text-align: right;
}
.strength-in04 p {
  margin: 0;
}
.strength-conts05 {
  background: url(./images/common/about_bg05.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  color: #fff;
  margin: 0 auto 20px;
  width: 96%;
  max-width: 1152px;
}
.strength-in05 {
  width: 48%;
  padding: 30px 0 10px 2%;
}
.strength-in05 p {
  margin: 0;
}
#school-qua01,
#school-qua02,
#school-qua03,
#school-qua04,
#school-qua05,
#school-qua06,
#school-qua07,
#school-qua08,
#school-qua09 {
  margin-top: -10px !important;
  padding-top: 80px;
}
.school-qualification-intro {
  font-size: 16px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
  text-align: center;
}
.school-qualification-intro2 {
  font-size: 20px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
  text-align: center;
  color: #d90000;
}
.school-qualification-list {
  max-width: 1000px;
  width: 96%;
  list-style: none;
  font-size: 0;
  text-align: left;
  margin: 0 auto;
}
.school-qualification-list li {
  display: inline-block;
  width: 325px;
  margin-right: 12.5px;
  text-align: center;
  vertical-align: top;
  box-sizing: border-box;
  margin-bottom: 40px;
}
.school-qualification-list li:nth-child(3n) {
  margin-right: 0;
}
.school-qualification-list li a {
  text-decoration: none;
}
.school-qualification-list-title {
  background-color: #d90000;
  color: #fff;
  font-size: 20px;
  margin: 0 auto 25px;
  position: relative;
  padding: 2px 0;
  width: 220px;
}
.school-qualification-list-title:after {
  content: "";
  background: url(./images/common/qualification-list-title-icon.png) no-repeat;
  width: 8px;
  height: 10px;
  background-size: contain;
  display: inline-block;
  position: absolute;
  left: 93%;
  top: 13px;
}
.school-qualification-list li p {
  font-size: 16px;
}
.school-qualification-list li p span {
  color: #d90000;
}
.school-qualification-list li p a {
  color: #333;
  text-decoration: none;
}
.school-qualification-list2 {
  max-width: 1152px;
  width: 96%;
  list-style: none;
  font-size: 0;
  text-align: left;
  margin: 0 auto;
}
.school-qualification-list2 li {
  display: inline-block;
  width: 330px;
  margin-right: 81px;
  text-align: center;
  vertical-align: top;
  box-sizing: border-box;
}
.school-qualification-list2 li:nth-child(3) {
  margin-right: 0;
}
.school-qualification-list-title2 {
  color: #d90000;
  font-size: 15.7px;
  margin: 10px 0 15px;
  height: 65px;
}
.school-qualification-list2 li p {
  text-align: left;
  font-size: 16px;
}
.school-qualification-flow {
  max-width: 1152px;
  width: 96%;
  margin: 30px auto;
}
.school-qualification-merit {
  max-width: 1152px;
  width: 96%;
  margin: 0 auto 30px;
  text-align: center;
}
.school-qualification-merit01 {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  border: 1px solid #d90000;
  box-sizing: border-box;
  width: 290px;
  padding: 5px;
  margin-right: 35px;
  display: inline-block;
  color: #d90000;
}
.school-qualification-merit02 {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  border: 1px solid #d90000;
  box-sizing: border-box;
  width: 290px;
  padding: 5px;
  display: inline-block;
  color: #d90000;
}
.school-qualification-merit-img {
  display: inline-block;
  width: 53px;
  vertical-align: middle;
  margin-right: 5px;
}
.school-qualification-merit-text01 {
  display: inline-block;
  font-size: 16px;
  vertical-align: middle;
  height: 72px;
  box-sizing: border-box;
}
.school-qualification-merit-text02 {
  display: inline-block;
  font-size: 16px;
  vertical-align: middle;
  height: 72px;
  box-sizing: border-box;
  padding-top: 14px;
}
.school-conts3 {
  width: 96%;
  max-width: 1152px;
  margin: 0 auto;
  padding: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.school-conts3 li {
  width: 31%;
  margin: 10px 3.5% 30px 0;
  display: inline-block;
  vertical-align: top;
  text-align: left;
  list-style: none;
  padding-bottom: 0;
  position: relative;
}
.school-conts3 li:nth-child(3n) {
  margin: 10px 0 30px;
}
.h90 {
  height: 90px;
}
.school-index-title {
  position: relative;
  display: inline-block;
  padding: 7px 5px;
  min-width: 120px;
  width: 100% !important;
  color: #fff;
  background: #d90000 !important;
  margin: 0 auto 20px !important;
  box-sizing: border-box;
  text-align: center;
  font-size: 16px !important;
  box-shadow: none !important;
  letter-spacing: -1.6px;
  box-sizing: border-box !important;
}
.school-index-title:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #d90000;
}
.school-index-title span {
  display: inline-block;
  margin: 12px 0;
}
.school-index-title-sub {
  color: #d90000;
  font-size: 20px;
  text-align: center;
  margin-bottom: 10px;
}
.school-index-title-sub span {
  font-size: 15.4px;
}
.school-index-caption {
  color: #d90000;
  font-size: 16px;
  margin: 15px auto;
  text-align: left;
}
.school-conts3 li p {
  font-size: 15px;
  text-align: left;
  margin-top: 15px;
}
.accredited {
  font-size: 16px;
  text-align: center;
  list-style: none;
  width: 96%;
  max-width: 1152px;
  margin: 0 auto 30px;
}
.accredited a {
  color: #d90000;
}
/*学校案内用*/
.school-tilte {
  font-size: 24px !important;
  font-weight: bold;
  color: #d90000;
  text-align: center;
}
.school-tilte span {
  display: inline-block;
  border-bottom: 2px solid #d90000;
}
.school-intro {
  font-size: 18px;
  line-height: 33px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
}
.school-conts {
  width: 96%;
  margin: 30px auto 50px;
  max-width: 1152px;
}
.school-img01 {
  float: right;
  width: 47%;
  margin-left: 6%;
}
.school-text01 {
  float: right;
  width: 47%;
  font-size: 16px;
  line-height: 33px;
}
.school-img02 {
  float: left;
  width: 47%;
  margin-right: 6%;
}
.school-text02 {
  float: right;
  width: 47%;
  font-size: 16px;
  line-height: 33px;
}
.school-history-title {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}
.school-history dt {
  float: left;
  clear: left;
  width: 100px;
  padding: 10px 50px;
  font-size: 16px;
}
.school-history dd {
  padding: 10px 0 10px 200px;
  border-bottom: 1px #000 solid;
  font-size: 16px;
}
.school-tilte-sub {
  font-size: 18px;
  text-align: center;
  margin: -10px auto 30px;
  width: 96%;
  max-width: 1152px;
}
.school-facility {
  text-align: center;
  font-size: 16px;
  line-height: 34px;
  width: 96%;
  margin: 0 auto;
  max-width: 1152px;
}
.school-facility-img {
  width: 96%;
  margin: 30px auto;
  max-width: 1152px;
}
.school-facility-img li {
  float: left;
  width: 30%;
  margin-right: 5%;
  list-style-type: none;
}
.school-facility-img li:last-child {
  margin-right: 0;
}
.school-message {
  width: 100%;
  max-width: 1200px;
  margin: 30px auto;
  text-align: center;
  font-size: 0;
}
.school-message li {
  width: 23.5%;
  margin-right: 2%;
  font-size: 16px;
  display: inline-block;
  vertical-align: top;
  margin-bottom: 80px;
}
.school-message li:nth-child(4),
.school-message li:nth-child(8) {
  margin-right: 0;
}
.school-message li p {
  margin: 5px 0;
}
.tdnone {
  text-decoration: none;
}
.school-message-link {
  border: 2px solid #d90000;
  box-sizing: border-box;
  padding: 5px;
  color: #d90000;
}
.school-message-more {
  border-bottom: 1px solid #d90000;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto 0;
  padding-top: 80px;
}
.school-message-more-img {
  width: 32%;
  margin-right: 3%;
  float: left;
  text-align: center;
  color: #d90000;
  font-size: 18px;
}
.school-message-more-img img {
  margin-bottom: 15px;
}
.school-message-more-img2 {
  width: 32%;
  margin-left: 3%;
  float: right;
  text-align: center;
  color: #d90000;
  font-size: 18px;
}
.school-message-more-img2 img {
  margin-bottom: 15px;
}
.school-message-more-img span {
  font-size: 16px;
  color: #000;
}
.school-message-more-img2 span {
  font-size: 16px;
  color: #000;
}
.school-message-more-text {
  width: 65%;
  float: left;
}
.school-message-more-text2 {
  width: 65%;
  float: right;
}
.mt0 {
  margin-top: 0;
}
.school-message-more-text dt {
  background-color: #d90000;
  color: #fff;
  font-size: 16px;
  padding: 5px;
  display: inline-block;
}
.school-message-more-text dd {
  font-size: 16px;
  padding: 10px 5px;
  margin-bottom: 15px;
}
.school-message-more-text2 dt {
  background-color: #d90000;
  color: #fff;
  font-size: 16px;
  padding: 5px;
  display: inline-block;
  font-weight: bold;
}
.school-message-more-text2 dd {
  font-size: 16px;
  padding: 10px 5px;
  margin-bottom: 15px;
}
/*-- 保護者様へにページ内リンク追加の為 2024.4.10　　*/
.school-conts2 {
  width: 96%;
  margin: 0 auto;
  max-width: 1152px;
}
.school-button-list {
  text-align: center;
  padding: 0;
  display: block;
  width: 100%;
  margin: 30px 0;
}
.school-parents-button01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 150px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.school-parents-button01:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.school-parents-button02 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 150px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  margin-left: 30px;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.school-parents-button02:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}

/*-- 保護者様へにページ内リンク追加の為　ここまで　　*/
.qualification-list {
  font-size: 16px;
  margin: 16px auto;
  text-align: center;
  display: block;
}
.qualification-list ul {
  padding-left: 0;
  display: inline-block;
}
.qualification-list ul li {
  text-align: left;
}
.qualification-list ul li a {
  color: #d90000;
}
.bggray {
  background-color: #f2f2f2;
  width: 100%;
  padding: 10px 0;
}
.school-intro .hogosya-b {
  margin-bottom: 35px;
  text-align: center;
}
.school-intro .hogosya-b span {
  font-size: 24px;
  color: #d90000;
}
.school-intro .hogosya-b02 {
  margin-bottom: 35px;
  text-align: center;
}
.parents-conts-01 {
  max-width: 800px;
  width: 96%;
  margin: 50px auto 80px;
  text-align: center;
  font-size: 16px;
}
.parents-conts-01 .caution {
  font-size: 20px;
  color: #d90000;
}
.parents-conts-img {
  max-width: 750px;
  width: 100%;
  margin: 30px auto 60px;
  text-align: left;
}
.parents-conts-img img {
  margin-bottom: 20px;
}
.parents-conts-img02 {
  max-width: 495px;
  width: 100%;
  margin: 30px auto 30px;
}
.parents-conts-02 {
  width: 650px;
  margin: 30px auto 60px;
}
.parents-conts-02-inner {
  background-color: #fef9ef;
  width: 100%;
  box-sizing: border-box;
  padding: 20px;
  text-align: left;
  margin-bottom: 20px;
}
.parents-conts-02-inner span {
  color: #f8b500;
}
.parents-conts-03 {
  width: 800px;
  margin: 30px auto 60px;
}
.parents-conts-03-inner {
  text-align: left;
  margin-bottom: 20px;
}
.parents-btn01 {
  text-align: center;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
  padding: 1px;
  margin: 0 auto;
}
.pass-rate {
  margin: 20px auto 30px;
  text-align: center;
}
.pass-rate-l {
  font-size: 28px;
  color: #d90000;
  text-align: left;
  display: inline-block;
  margin-right: 15px;
  margin-bottom: 0;
  line-height: 38px;
}
.pass-rate-l span {
  font-size: 16px;
}
.pass-rate-r {
  font-size: 100px;
  color: #d90000;
  font-weight: bold;
  text-align: center;
  display: inline-block;
  margin-bottom: 0;
  line-height: 100px;
}
.pass-rate-r span {
  font-size: 80px;
}
/*校費留学用*/
.page-title-oversea {
  background: url(./images/common/page-curriculum-title-bg.png) repeat-x;
  -webkit-animation: bgiLoop 30s linear infinite;
  animation: bgiLoop 30s linear infinite;
  height: 300px;
  width: 100%;
  background-size: auto 100%;
  position: relative;
  padding-top: 97px;
}
@-webkit-keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
@keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
.page-title-oversea-conts {
  color: #fff !important;
  text-align: center;
  padding: 126px 0 75px !important;
  font-size: 40px !important;
  line-height: 30px;
  margin: 0 !important;
}
.page-title-oversea-conts span {
  font-size: 18px;
}
.page-title-oversea .global-nav {
  margin-top: 10px !important;
}
.oversea-nav {
  list-style: none;
  font-size: 12px;
  font-weight: bold;
  display: table;
  margin: 0 auto;
}
.oversea-nav .current_page_item {
  border-bottom: 2px solid #fff;
}
.oversea-nav li {
  display: table-cell;
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.oversea-nav li a {
  color: #fff;
  text-decoration: none;
  text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0;
}
.oversea-nav-footer {
  list-style: none;
  font-size: 12px;
  display: table;
  margin: 10px auto 30px;
  width: 96%;
  max-width: 1152px;
  text-align: center;
  font-weight: bold;
}
.oversea-nav-footer li {
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.oversea-nav-footer .current_page_item {
  border-bottom: 2px solid #474747;
}
.oversea-nav-footer li a {
  color: #474747;
  text-decoration: none;
}
.oversea-intro {
  font-size: 16px;
  line-height: 29px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
  text-align: center;
}
.oversea-conts {
  width: 96%;
  margin: 30px auto 50px;
  max-width: 1152px;
}
#oversea-ny {
  padding-top: 80px;
  margin-top: -80px;
}
#oversea-voice {
  padding-top: 80px;
  margin-top: -80px;
}
.oversea-slider {
  width: 800px;
  margin: 30px auto 30px;
}
.oversea-tilte {
  font-size: 24px !important;
  font-weight: bold;
  color: #d90000;
  text-align: center;
}
.oversea-tilte span {
  display: inline-block;
  border-bottom: 2px solid #d90000;
}
.oversea-btn-voice {
  color: #d90000;
  display: block;
  border: 3px solid #d90000;
  font-size: 16px;
  padding: 10px;
  width: 450px;
  box-sizing: border-box;
  text-decoration: none;
  margin: 30px auto;
  text-align: center;
}
.oversea-btn-voice:before {
  position: relative;
  left: 394px;
  top: 1px;
  content: "";
  background: url(./images/common/oversea-btn-voice-icon.png) no-repeat;
  width: 11px;
  height: 12px;
  background-size: contain;
  vertical-align: 0.5px;
  display: inline-block;
  z-index: 0;
}
.oversea-london-img {
  width: 96%;
  margin: 0 auto 90px;
  max-width: 1152px;
}
.oversea-conts4 {
  width: 96%;
  max-width: 1152px;
  margin: 80px auto 0;
  padding: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.oversea-conts4 li {
  width: 22%;
  margin: 10px 4% 30px 0;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  list-style: none;
  padding-bottom: 65px;
  position: relative;
  font-size: 0;
}
.oversea-conts4 li:nth-child(4),
.oversea-conts4 li:nth-child(8) {
  margin: 10px 0 30px;
}
.oversea-index-title {
  position: absolute !important;
  display: inline-block;
  padding: 7px 5px;
  min-width: 120px;
  width: 86% !important;
  color: #fff;
  background: #d90000 !important;
  margin: 0 5% !important;
  box-sizing: border-box;
  text-align: center;
  font-size: 16px !important;
  box-shadow: none !important;
  letter-spacing: -1.6px;
  top: -40px;
  left: 0;
}
.oversea-index-title:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #d90000;
}
.oversea-conts4 li p {
  font-size: 16px;
  text-align: left;
  margin: 10px 0;
}
.oversea-conts4 li img {
  margin-bottom: 15px;
}
.oversea-london-flag {
  width: 94px;
  margin: 0 auto;
}
.oversea-photo-btn-list {
  text-align: center;
  width: 96%;
  margin: 30px auto;
  max-width: 1152px;
}
.oversea-photo-btn01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
  padding: 1px;
  margin: 0 4px;
}
.oversea-photo-btn02 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
  margin: 0 4px;
  padding: 1px;
}
/*イベント用*/
.page-title-event {
  background: url(./images/common/page-curriculum-title-bg.png) repeat-x;
  -webkit-animation: bgiLoop 30s linear infinite;
  animation: bgiLoop 30s linear infinite;
  height: 300px;
  width: 100%;
  background-size: auto 100%;
  position: relative;
  padding-top: 97px;
}
@-webkit-keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
@keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
.event-intro {
  font-size: 16px;
  line-height: 29px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
  text-align: center;
}
.page-title-event-conts {
  color: #fff !important;
  text-align: center;
  padding: 126px 0 75px !important;
  font-size: 40px !important;
  line-height: 30px;
  margin: 0 !important;
}
.page-title-event-conts span {
  font-size: 18px;
}
.page-title-event .global-nav {
  margin-top: 10px !important;
}
.event-nav {
  list-style: none;
  font-size: 12px;
  font-weight: bold;
  display: table;
  margin: 0 auto;
}
.event-nav .current_page_item {
  border-bottom: 2px solid #fff;
}
.event-nav li {
  display: table-cell;
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.event-nav li a {
  color: #fff;
  text-decoration: none;
  text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0;
}
.event-nav-footer {
  list-style: none;
  font-size: 12px;
  display: table;
  margin: 10px auto 30px;
  width: 96%;
  max-width: 1152px;
  text-align: center;
  font-weight: bold;
}
.event-nav-footer li {
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.event-nav-footer .current_page_item {
  border-bottom: 2px solid #474747;
}
.event-nav-footer li a {
  color: #474747;
  text-decoration: none;
}
.event-intro {
  font-size: 18px;
  line-height: 33px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
}
.event-conts {
  width: 96%;
  margin: 30px auto 50px;
  max-width: 1152px;
}
.event-index-conts {
  width: 96%;
  margin: 0 auto;
  max-width: 1000px;
}
.event-month-list-left {
  float: left;
  width: 50%;
  text-align: center;
}
.event-month-list-left span {
  font-weight: bold;
}
.event-month-list-left a {
  font-weight: bold;
}
.event-month-list-right {
  float: right;
  width: 50%;
  text-align: center;
}
.event-month-list-right span {
  font-weight: bold;
}
.event-month-list-right a {
  font-weight: bold;
}
.event-month-circle {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  text-align: center;
  color: #fff;
  font-size: 23px;
  background-color: #9fd9f6;
  margin: 20px auto 16px;
  padding-top: 17px;
  line-height: 8px;
  box-sizing: border-box;
}
.event-month-circle span {
  font-size: 9px;
}
.event-month-circle04 {
  background-color: #9fd9f6;
}
.event-month-circle05 {
  background-color: #f9c387;
}
.event-month-circle06 {
  background-color: #a1d0bc;
}
.event-month-circle08 {
  background-color: #86bfe8;
}
.event-month-circle09 {
  background-color: #fedc7c;
}
.event-month-circle10 {
  background-color: #cfe186;
}
.event-month-circle11 {
  background-color: #b595c4;
}
.event-month-circle12 {
  background-color: #41b799;
}
.event-month-circle02 {
  background-color: #8cd0df;
}
.event-kansai-conts {
  margin: 30px auto 50px;
  max-width: 800px;
  width: 96%;
  font-size: 16px;
  text-align: left;
}
.event-art-conts {
  margin: 30px auto 50px;
  max-width: 800px;
  width: 96%;
  font-size: 16px;
  text-align: left;
}
.event-art-conts2 {
  margin: 30px auto 50px;
  max-width: 1152px;
  width: 96%;
  font-size: 16px;
  text-align: left;
}
.event-kansai-conts span {
  color: #d90000;
  font-size: 20px;
  line-height: 36px;
}
.event-art-conts span {
  color: #d90000;
  font-size: 20px;
  line-height: 36px;
}
.event-photo-btn-list {
  text-align: center;
  width: 100%;
  margin: 30px auto;
  font-size: 0;
}
.event-photo-btn01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
  padding: 1px;
  margin: 0 4px;
}
.event-photo-btn02 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
  margin: 0 4px;
  padding: 1px;
}
.event-photo-btn03 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
  margin: 0 4px;
  padding: 1px;
}
.event-slider {
  width: 800px;
  margin: 30px auto 10px;
}
.event-access {
  width: 600px;
  margin: 40px auto;
}
.event-access-title {
  color: #d90000;
  width: 100%;
  text-align: center;
  box-sizing: border-box;
  border: 4px solid #d90000;
  font-size: 16px;
  padding: 5px;
  margin-bottom: 25px;
}
.event-access-spot {
  color: #d90000;
  text-align: center;
  font-size: 16px;
  margin: 30px auto 15px;
}
.event-h3title {
  color: #d90000;
  text-align: center;
  font-size: 20px;
  border-bottom: 1px solid #d90000;
}
.event-prize01 {
  width: 259.5px;
  float: left;
  box-sizing: border-box;
  margin-right: 38px;
}
.event-prize02 {
  width: 259.5px;
  float: left;
  box-sizing: border-box;
}
.event-prize03 {
  width: 259.5px;
  float: left;
  box-sizing: border-box;
  margin-right: 38px;
  margin-left: 129px;
}
.event-prize04 {
  width: 259.5px;
  float: left;
  margin-right: 38px;
  box-sizing: border-box;
}
.event-prize-conts {
  margin-bottom: 60px;
  font-size: 16px;
  text-align: left;
}
.event-prize-conts span {
  color: #d90000 !important;
  font-size: 16px;
  line-height: 24px;
}
.event-prize02-conts {
  margin-bottom: 60px;
  font-size: 16px;
  text-align: left;
}
.event-prize02-conts span {
  color: #d90000 !important;
  font-size: 16px;
  line-height: 24px;
}
.event-prize-title {
  background-color: #d90000;
  color: #fff;
  text-align: center;
  font-size: 16px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  margin-bottom: 15px;
  box-sizing: border-box;
  padding: 5px;
}
.event-prize-conts img {
  margin-bottom: 60px;
}
.event-prize02-conts img {
  margin-bottom: 10px;
}
.event-art2-w {
  border: 1px solid #d90000;
  width: 74px;
  display: block;
  box-sizing: border-box;
  border-radius: 15px;
  -webkit-border-radius: 15px;
  text-align: center;
  vertical-align: middle;
  margin-bottom: 5px;
  margin-right: 5px;
}
.event-art2-w img {
  padding: 0;
  margin: 0;
  vertical-align: 1px;
}
.m30-120 {
  margin: 30px auto 120px !important;
}

/*  2023.8.31 ビューティプロ専門学校追加　*/
.event-art-bp {
  display: inline-block;
  justify-content: space-between;
  align-items: left;
  margin: 0;
  padding: 5px 1em;
  /*width: 170px;*/
  color: #ffffff;
  font-size: 10px;
  font-weight: 400;
  background-color: #c5786f;
  border-radius: 5px;
}
/*  2023.8.31 ビューティプロ専門学校追加　*/

/*その他用*/
.page-title-other {
  background: url(./images/common/page-form-title-bg.png) repeat-x;
  height: 65px;
  width: 100%;
  background-size: auto 100%;
  position: relative;
  padding-top: 97px;
  -webkit-animation: bgiLoop 30s linear infinite;
  animation: bgiLoop 30s linear infinite;
  z-index: 20;
}
.page-title-other .global-nav {
  margin-top: 10px !important;
}
.section-title-other {
  font-family: "Lobster", sans-serif;
  font-size: 45px !important;
  text-align: center;
  color: #d90000;
  border-bottom: 1px solid #d90000;
}
.section-title-h1 {
  margin: 20px auto 0 !important;
  max-width: 1152px;
  width: 96%;
}
.section-title-h1:before {
  background: url(./images/common/h1-title-bg.png) repeat-x;
  content: "";
  width: 100%;
  display: block;
  height: 10px;
  position: relative;
  top: 29px;
  z-index: 1;
  background-size: contain;
}
.section-title-h1 span {
  background: #fff;
  padding: 0 10px;
  position: relative;
  z-index: 5;
  letter-spacing: 5px;
  font-weight: bold;
}
.h1-title-sub {
  color: #d90000;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
  margin-top: -17px;
}
.other-intro {
  font-size: 18px;
  line-height: 33px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
  text-align: center;
}
.other-intro2 {
  font-size: 16px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
  text-align: center;
}
.other-conts {
  width: 96%;
  margin: 0 auto;
  max-width: 1152px;
}
.other-conts2 {
  width: 96%;
  margin: 0 auto;
  max-width: 800px;
  font-size: 16px;
  text-align: center;
}
.other-conts3 {
  width: 96%;
  margin: 0 auto;
  max-width: 830px;
  font-size: 16px;
  text-align: center;
}
.other-conts .yellow {
  color: #f8b500 !important;
}
.other-conts .red {
  color: #d90000 !important;
}
.photogallary-conts {
  width: 96%;
  margin: 30px auto 30px;
  max-width: 1000px;
}
.other-btn-list {
  text-align: center;
  max-width: 800px;
  width: 90%;
  margin: 0 auto 20px;
}
.other-btn-list2 {
  text-align: center;
  padding: 0;
  display: block;
  width: 100%;
  margin: 30px 0;
}
.other-btn-list3 {
  text-align: center;
  padding: 0;
  display: block;
  width: 100%;
  margin: 20px 0 0;
}
.other-button01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 150px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.other-button01:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.other-button02 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 150px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  margin-left: 30px;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.other-button02:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.other-button03 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 267px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 18px;
  line-height: 25px;
  padding-top: 5px;
  padding-bottom: 5px;
  text-decoration: none;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.other-button03:after {
  position: absolute;
  right: 2px;
  top: 12px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 8px;
  height: 10px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.other-button04 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 200px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.other-button04:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.other-button05 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 150px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 10px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.other-button05:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
/* ocページ用追加　2024.4.11 */
.other-button01a {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 160px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.other-button01a:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.other-button06 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 160px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 10px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  margin-left: 15px;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.other-button06:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
/* ocページ用追加ここまで　2024.4.11 */
.other-slider {
  width: 800px;
  margin: 30px auto 30px;
}
.kanby-member-btn {
  position: relative;
  border: 2.5px solid #d90000;
  box-sizing: border-box;
  width: 385px;
  text-align: center;
  font-weight: bold;
  display: inline-block;
  font-size: 17px;
  line-height: 33px;
  padding-top: 4px;
  padding-bottom: 3px;
  text-decoration: none;
}
.kanby-member-btn:after {
  position: absolute;
  right: 10px;
  top: 14px;
  content: "";
  background: url(./images/common/kanby-member-btn-icon.png) no-repeat;
  width: 11px;
  height: 12px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.siryo-seikyu-btn {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 267px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 20px;
  line-height: 30px;
  padding-top: 4px;
  padding-bottom: 4px;
  text-decoration: none;
  color: #000;
  border-radius: 12px;
  -webkit-border-radius: 12px;
  background-color: #fff;
  margin-bottom: 16px;
}
.siryo-seikyu-btn:after {
  position: absolute;
  right: 5px;
  top: 13.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 8px;
  height: 12px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.kanby-member-icon {
  width: 22px;
  vertical-align: -5px;
  margin-right: 10px;
}
.kanby-touroku-btn {
  border: 2.5px solid #f8b500;
  box-sizing: border-box;
  width: 385px;
  text-align: center;
  font-weight: bold;
  display: inline-block;
  font-size: 17px;
  line-height: 33px;
  padding-top: 4px;
  padding-bottom: 3px;
  text-decoration: none;
  color: #f8b500;
  margin-left: 30px;
  position: relative;
}
.kanby-touroku-btn:after {
  position: absolute;
  right: 10px;
  top: 14px;
  content: "";
  background: url(./images/common/kanby-touroku-btn-icon.png) no-repeat;
  width: 11px;
  height: 12px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.kanby-touroku-btn02 {
  border: 2.5px solid #f8b500;
  box-sizing: border-box;
  width: 385px;
  text-align: center;
  font-weight: bold;
  display: inline-block;
  font-size: 17px;
  padding-top: 4px;
  padding-bottom: 3px;
  text-decoration: none;
  color: #f8b500;
  position: relative;
  line-height: 33px;
  margin-bottom: 20px;
}
.kanby-touroku-btn02:after {
  position: absolute;
  right: 10px;
  top: 14px;
  content: "";
  background: url(./images/common/kanby-touroku-btn-icon.png) no-repeat;
  width: 11px;
  height: 12px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.kanby-slider {
  width: 800px;
  margin: 30px auto 30px;
}
.kanby-merit {
  background: url(./images/common/kanby-merit-bg.png);
  background-size: 100% auto;
  color: #fff;
  margin: 0 auto 20px;
  width: 100%;
  max-width: 1200px;
  font-size: 36px;
  text-align: center;
  line-height: 45px;
  padding: 40px 0;
}
.kanby-merit span {
  font-size: 46px;
}
.kanby-merit-conts {
  font-size: 16px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
  text-align: center;
}
.kanby-merit-circle {
  width: 91px;
  height: 91px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  text-align: center;
  color: #f8b500;
  font-size: 23px;
  border: 3px solid #f8b500;
  margin: 20px auto 16px;
  padding-top: 22px;
  line-height: 25px;
  box-sizing: border-box;
}
.kanby-merit-left01 {
  width: 540px;
  float: left;
  margin-right: 72px;
  text-align: left;
}
.kanby-merit-left02 {
  width: 540px;
  float: left;
  text-align: left;
}
.kanby-merit-right01 {
  width: 540px;
  float: right;
  margin-left: 72px;
  text-align: left;
}
.kanby-merit-right02 {
  width: 540px;
  float: right;
  text-align: left;
}
.kanby-merit-title {
  color: #f8b500;
  font-size: 26px;
  margin: 10px auto 20px;
}
.kanby-merit-inner-title {
  width: 90%;
  font-size: 16px;
  margin-bottom: 10px;
}
.kanby-merit-inner-title span {
  display: inline-block;
  border-bottom: 2.6px solid #f8b500;
  font-size: 19px;
  width: 100%;
  line-height: 32px;
}
.kanby-merit-arrow {
  width: 45px;
  margin: 40px auto;
}
.privacy-conts {
  width: 96%;
  margin: 30px auto 50px;
  max-width: 800px;
}
.privacy-h2title {
  text-align: center;
  color: #d90000;
  font-size: 20px !important;
  margin: 80px auto 30px !important;
}
.privacy-h2title span {
  border-bottom: 2px solid #d90000;
  display: inline-block;
  font-size: 24px !important;
  font-weight: bold;
}
.sitemap-conts {
  width: 96%;
  margin: 30px auto 50px;
  max-width: 1152px;
  font-size: 0;
}
.sitemap-conts-innner {
  width: 32%;
  display: inline-block;
  vertical-align: top;
  margin-right: 2%;
}
.sitemap-conts-innner-last {
  width: 32%;
  display: inline-block;
  vertical-align: top;
}
.sitemap-title {
  font-size: 18px;
  text-align: left;
  box-sizing: border-box;
  width: 100%;
  margin-top: 30px;
}
.sitemap-title a {
  display: inline-block;
  text-decoration: none;
  border-top: 1px dotted #d90000;
  border-bottom: 1px dotted #d90000;
  padding: 18px 10px;
  width: 100%;
  background-color: #ffefef;
  box-sizing: border-box;
}
.sitemap {
  font-size: 0;
  list-style: none;
  margin-left: 5px;
}
.sitemap li {
  font-size: 17px;
  text-align: left;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: top;
  width: 100%;
  margin-bottom: 0;
}
.sitemap li a {
  font-size: 17px;
  border-bottom: 1px solid #d90000;
  border-top: none;
  border-bottom: 1px solid #d90000;
  width: 100%;
  display: inline-block;
  background: none;
  padding: 15px 5px;
  box-sizing: border-box;
  text-decoration: none;
}
.sitemap li ul {
  margin-left: 10px;
}
.sitemap li ul li {
  border: none;
  margin-bottom: 0;
  background-image: url(./images/common/curiculum-mainconts-icon01.png);
  padding-left: 13px;
  background-position: 0 13px;
  background-size: 9px;
  background-repeat: no-repeat;
}
.sitemap li ul li a {
  font-size: 16px;
  color: #333;
  text-decoration: none;
  border: none;
  background: none;
  padding: 5px 5px;
}
.salon-conts {
  font-size: 16px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
  text-align: center;
}
.salon-conts-title {
  color: #d90000;
  font-size: 25px;
  border-bottom: 2px solid #d90000;
  display: inline-block;
  margin: 30px auto;
  font-weight: bold;
}
.salon-conts-img {
  width: 495px;
  margin: 20px auto 30px;
}
.salon-conts span .red {
  color: #d90000;
}
.salon-btn {
  display: inline-block;
  border: 2.5px solid #d90000;
  width: 385px;
  box-sizing: border-box;
  padding: 7px;
  position: relative;
  text-decoration: none;
  margin: 30px auto 50px;
  font-weight: bold;
}
.salon-btn:after {
  position: relative;
  left: 148px;
  top: 1px;
  content: "";
  background: url(./images/common/oversea-btn-voice-icon.png) no-repeat;
  width: 11px;
  height: 12px;
  background-size: contain;
  vertical-align: 0.5px;
  display: inline-block;
  z-index: 0;
}
.salon-career-map-title {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  background-color: #45a235;
  color: #fff;
  max-width: 830px;
  box-sizing: border-box;
  width: 80%;
  margin: 30px auto;
  padding: 3px;
  font-weight: bold;
}
.salon-career-map-img {
  width: 258px;
  margin: 20px auto;
}
.opencampus-conts {
  width: 96%;
  margin: 30px auto 50px;
  max-width: 1152px;
  text-align: center;
}
.opencampus-conts2 {
  max-width: 830px;
  margin: 30px auto;
  text-align: center;
}
#oc-sche,
#oc-expenses,
#oc-lodging {
  margin-top: -80px;
  padding-top: 80px;
}
.opencampus-h3title {
  text-align: center;
  color: #d90000;
  font-size: 20px !important;
  margin-top: 90px !important;
}
.opencampus-h3title span {
  border-bottom: 2px solid #d90000;
  display: inline-block;
  font-size: 24px !important;
  font-weight: bold;
}
.opencampus-she {
  margin-bottom: 30px;
}
.opencampus-she p {
  margin: 0 auto;
  text-align: center;
}
.opencampus-she-title {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  background-color: #d90000;
  color: #fff;
  width: 400px;
  box-sizing: border-box;
  margin: 30px auto;
  padding: 3px;
  font-weight: bold;
}
.opencampus-she-img {
  width: 18px;
  margin: 0 auto 10px !important;
}
.opencampus-visual-img {
  width: 660px;
  margin: 30px auto 100px;
}
.opencampus-8gastu-title {
  background: url(./images/common/opencampus-month-title-bg01.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-8gastu-title span {
  font-size: 32px;
}
.opencampus-9gastu-title {
  background: url(./images/common/opencampus-month-title-bg02.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  background-repeat: no-repeat;
  line-height: 50px;
}
.opencampus-9gastu-title span {
  font-size: 32px;
}
.opencampus-10gastu-title {
  background: url(./images/common/opencampus-month-title-bg03.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-10gastu-title span {
  font-size: 32px;
}
.opencampus-11gastu-title {
  background: url(./images/common/opencampus-month-title-bg04.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-11gastu-title span {
  font-size: 32px;
}
.opencampus-12gastu-title {
  background: url(./images/common/opencampus-month-title-bg01.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-12gastu-title span {
  font-size: 32px;
}
.opencampus-1gastu-title {
  background: url(./images/common/opencampus-month-title-bg02.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-1gastu-title span {
  font-size: 32px;
}
.opencampus-2gastu-title {
  background: url(./images/common/opencampus-month-title-bg03.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-2gastu-title span {
  font-size: 32px;
}
.opencampus-3gastu-title {
  background: url(./images/common/opencampus-month-title-bg04.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-3gastu-title span {
  font-size: 32px;
}
.opencampus-4gastu-title {
  background: url(./images/common/opencampus-month-title-bg01.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-4gastu-title span {
  font-size: 32px;
}
.opencampus-5gastu-title {
  background: url(./images/common/opencampus-month-title-bg02.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-5gastu-title span {
  font-size: 32px;
}
.opencampus-6gastu-title {
  background: url(./images/common/opencampus-month-title-bg03.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-7gastu-title {
  background: url(./images/common/opencampus-month-title-bg04.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.opencampus-7gastu-title span {
  font-size: 32px;
}
.opencampus-6gastu-title span {
  font-size: 32px;
}
.opencampus-list {
  font-size: 0;
  text-align: left;
  max-width: 1020px;
  margin: 0 auto 80px;
  width: 100%;
}
.opencampus-list li {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  text-align: center;
  color: #d90000;
  font-size: 16px;
  margin: 20px 10px;
  line-height: 22px;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: top;
}
.opencampus-list li a {
  display: block;
  text-decoration: none;
  padding: 48px 0;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  border: 4px solid #d90000;
}
.opencampus-list li .day {
  font-size: 28px;
}
.opencampus-list li .week {
  font-size: 17px;
}
.opencampus-list li .title {
  display: inline-block;
  font-size: 12px;
  line-height: 14px;
  padding-top: 5px;
}
.opencampus-list .end {
  background-color: #d9d9d9 !important;
  border: 4px solid #d9d9d9 !important;
  padding: 52px 0;
  color: #fff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
}
.opencampus-list .goudou a {
  color: #fff !important;
  padding: 36px 0;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  border: 4px solid #d90000;
  background-color: #e46d79;
}
.opencampus-list .goudou.end {
  color: #fff !important;
  padding: 36px 0;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  border: 4px solid #d9d9d9 !important;
  background-color: #d9d9d9 !important;
}
.opencampus-list .halloween a {
  color: #050505 !important;
  padding: 29.5px 0;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  border: 4px solid #050505;
  background-color: #ff5722;
}
.opencampus-list .halloween.end {
  color: #fff !important;
  padding: 29.5px 0;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  border: 4px solid #d9d9d9 !important;
  background-color: #d9d9d9 !important;
}
.opencampus-caution {
  margin: 10px auto 50px;
  text-align: center;
  display: block;
}
.opencampus-caution .opencampus-caution-inner {
  text-align: left;
  display: inline-block;
}
.opencampus-tell {
  display: inline-block;
  font-size: 25px;
  margin: 0 10px;
  color: #333;
}
.opencampus-kanby {
  margin: 65px 0 80px;
}
.opencampus-kanby-img {
  width: 48%;
  margin-right: 3%;
  display: inline-block;
  vertical-align: top;
}
.opencampus-kanby-text {
  width: 48%;
  display: inline-block;
  vertical-align: top;
  text-align: left;
}
.opencampus-kanby-logo {
  width: 260px;
  margin: 30px auto;
}
.opencampus-img {
  width: 495px;
  margin: 30px auto;
}
.opencampus-attention {
  color: #d90000;
  font-size: 24px;
  border-bottom: 2px solid #d90000;
  margin: 10px auto 30px;
  display: inline-block;
  font-weight: bold;
}
.opencampus-transport-list {
  font-size: 0;
  width: 100%;
  list-style: none;
  margin: 30px 0 30px;
}
.opencampus-transport-list li {
  width: 30%;
  margin-right: 5%;
  font-size: 16px;
  text-align: left;
  display: inline-block;
  vertical-align: top;
}
.opencampus-transport-list li:last-child {
  margin-right: 0;
}
.opencampus-transport-title {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  background-color: #f8b500;
  color: #fff;
  width: 100%;
  box-sizing: border-box;
  margin: 30px auto;
  padding: 3px;
  text-align: center;
  font-weight: bold;
}
.opencampus-conts2 .red {
  color: #d90000;
}
.opencampus-real-estate span {
  font-size: 20px;
  font-weight: bold;
}
.opencampus-real-estate br {
  display: none;
}
.opencampus-real-estate a {
  color: #333;
  text-decoration: none;
}
.opencampus-real-estate2 a {
  color: #333;
  text-decoration: none;
}
.ggmap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  margin: 30px 0;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.access-button-list {
  text-align: center;
  padding: 0;
  display: block;
  width: 100%;
  margin: 30px 0;
}
.access-button01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 200px;
  box-sizing: border-box;
  vertical-align: top;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  margin: 0 auto 30px;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
}
/*2022.3.15 アクセスルート追加用 flexboxバージョンで*/
.access_root_flex {
  padding: 2.5% 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap; /*折り返し設定*/
  align-items: stretch; /*Flexコンテナの交差軸いっぱいに広がる*/
  justify-content: space-between; /*flexアイテムが互いにスペースとる*/
}
.access_root_flex > * {
  min-width: 8%;
  flex-basis: 48%;
  background: #fff;
  font-size: 14px;
  text-align: left;
}
/*2022.3.15 アクセスルート追加用ここまで*/

.graduate-h2 {
  color: #f8b500 !important;
  font-size: 25px !important;
  margin: 30px 0 !important;
}
.graduate-h2 span {
  border-bottom: 3px solid #f8b500;
  display: inline;
}
.graduate-h3 {
  color: #333 !important;
  font-size: 19px !important;
  margin: 0 0 15px !important;
  text-align: left;
  border-bottom: 2px solid #f8b500;
}
.graduate-conts {
  margin-bottom: 80px;
}
.graduate-conts-left {
  float: left;
  width: 48%;
  margin-right: 4%;
}
.graduate-conts-left2 {
  float: left;
  width: 48%;
}
.graduate-conts-right {
  float: right;
  width: 48%;
  margin-left: 4%;
}
.graduate-conts-right2 {
  float: right;
  width: 48%;
}
.graduate-mail-title {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  background-color: #f8b500;
  color: #fff;
  width: 100%;
  box-sizing: border-box;
  margin: 30px auto;
  padding: 3px;
  text-align: center;
  font-weight: bold;
}
.graduate-mail {
  text-align: center;
  margin-bottom: 100px;
}
.graduate-mail-text {
  display: inline-block;
  width: 500px;
  margin-right: 20px;
  vertical-align: middle;
  text-align: left;
}
.graduate-mail-qr {
  display: inline-block;
  width: 130px;
  vertical-align: middle;
}
.graduate-letter {
  margin: 0 auto 80px;
  text-align: center;
}
.graduate-letter-inner {
  display: inline-block;
  text-align: left;
}
.photogallary-h2 {
  font-size: 17px !important;
  border-bottom: 1px dotted #d90000;
  margin-bottom: 30px !important;
}
.expert-h2 {
  color: #333 !important;
  font-size: 19px !important;
  margin: 15px 0 15px !important;
  text-align: center;
}
.expert-h2 span {
  border-bottom: 2px solid #f8b500;
}
.expert-dl {
  width: 430px;
  margin: 40px auto;
}
.expert-dl dt {
  width: 100px;
  float: left;
  padding: 10px 0;
}
.expert-dl dd {
  border-bottom: 1px solid #c3c3c3;
  padding: 10px 0;
}
.expert-caution {
  color: #f8b500;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin: 30px auto 60px;
}
.expert-caution a {
  color: #f8b500;
  font-size: 16px;
}

.plus-kanby-title01 {
  background: url(./images/common/plus-kanby-img01.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  color: #fff;
  text-align: center;
  padding: 45px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 36px;
  line-height: 40px;
}
.plus-kanby-title01 span {
  font-size: 20px;
}

.plus-kanby-title02 {
  background: url(./images/common/plus-kanby-img02.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  color: #fff;
  text-align: center;
  padding: 45px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 36px;
  line-height: 40px;
}
.plus-kanby-title02 span {
  font-size: 20px;
}
.plus-kanby-title03 {
  background: url(./images/common/plus-kanby-img03.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  color: #fff;
  text-align: center;
  padding: 64px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 36px;
  line-height: 40px;
}
.plus-kanby-title03 span {
  font-size: 20px;
}
.plus-kanby-title04 {
  background: url(./images/common/plus-kanby-img04.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  color: #fff;
  text-align: center;
  padding: 21px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 36px;
  line-height: 40px;
}
.plus-kanby-title04 span {
  font-size: 20px;
}
.plus-kanby-title05 {
  background: url(./images/common/plus-kanby-img05.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  color: #fff;
  text-align: center;
  padding: 45px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 36px;
  line-height: 40px;
}
.plus-kanby-title05 span {
  font-size: 20px;
}
.plus-kanby-h3title {
  text-align: center;
  color: #d90000;
  font-size: 20px !important;
  margin-top: 30px !important;
}
.plus-kanby-h3title span {
  border-bottom: 2px solid #d90000;
  display: inline-block;
  font-size: 24px !important;
  font-weight: bold;
}
.plus-kanby-seminner-list {
  list-style: none;
  margin: 30px auto;
  padding: 0;
  font-size: 0;
}
.plus-kanby-seminner-list li {
  font-size: 0;
  display: inline-block;
  width: 22.75%;
  margin-right: 3%;
  box-sizing: border-box;
  vertical-align: top;
  list-style: none;
  margin-bottom: 30px;
}
.plus-kanby-seminner-list li:nth-child(4),
.plus-kanby-seminner-list li:nth-child(8) {
  margin-right: 0;
}
.plus-kanby-seminner-list .date {
  border: 2px solid #d90000;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  color: #d90000;
  font-size: 16px;
  box-sizing: border-box;
  padding: 5px;
  margin: 10px 0;
  text-align: center;
}
.plus-kanby-seminner-list .title01 {
  background-color: #d90000;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  color: #fff;
  font-size: 16px;
  box-sizing: border-box;
  padding: 5px;
  margin: 10px 0;
  text-align: center;
}
.plus-kanby-seminner-list .title02 {
  background-color: #f8b500;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  color: #fff;
  font-size: 16px;
  box-sizing: border-box;
  padding: 5px;
  margin: 10px 0;
  text-align: center;
}
.plus-kanby-seminner-list .title {
  text-align: center;
  font-size: 16px;
  margin: 15px auto;
}
.plus-kanby-seminner-list .title span {
  display: inline-block;
  text-decoration: underline;
}
.plus-kanby-seminner-img01 {
  max-width: 800px;
  width: 100%;
  margin: 10px auto 50px;
}
/* plus-Kanby 締切りました。イメージ用追加　2024.01.10　*/
.p-end {
  position: relative;
}
.p-end::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #949494;
  opacity: 0.8;
}
.p-end::after {
  font-family: "Noto Serif JP", serif;
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  position: absolute;
  content: "締切りました";
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

@media screen and (max-width: 767px) {
  .p-end::after {
    font-size: 3.3333333333vw;
    width: 50%;
    letter-spacing: -0.01em;
  }
}

/* plus-Kanby 締切りました。イメージ用追加　2024.01.10 ここまで　*/

.plus-kanby-yoyaku {
  text-align: center;
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 50px;
}
.plus-kanby-yoyaku .title {
  font-size: 25px;
  display: inline-block;
  text-decoration: underline;
}
/*就職用*/
.page-title-job {
  background: url(./images/common/page-curriculum-title-bg.png) repeat-x;
  -webkit-animation: bgiLoop 20s linear infinite;
  animation: bgiLoop 20s linear infinite;
  height: 300px;
  width: 100%;
  background-size: auto 100%;
  position: relative;
  padding-top: 97px;
}
.page-title-job .global-nav {
  margin-top: 10px !important;
}
@-webkit-keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
@keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
.page-title-job-conts {
  color: #fff !important;
  text-align: center;
  padding: 126px 0 75px !important;
  font-size: 40px !important;
  line-height: 30px;
  margin: 0 !important;
}
.page-title-job-conts span {
  font-size: 18px;
}
.job-nav {
  list-style: none;
  font-size: 12px;
  font-weight: bold;
  display: table;
  margin: 0;
  width: 100%;
  text-align: center;
}
.job-nav li {
  display: table-cell;
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.job-nav .current_page_item {
  border-bottom: 2px solid #fff;
}
.job-nav .choiced-page {
  border-bottom: 2px solid #fff;
}
.job-nav li a {
  color: #fff;
  text-decoration: none;
  text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0;
}
.job-nav-footer {
  list-style: none;
  font-size: 12px;
  display: table;
  margin: 10px auto 30px;
  width: 96%;
  max-width: 1152px;
  text-align: center;
  font-weight: bold;
}
.job-nav-footer li {
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.job-nav-footer .current_page_item {
  border-bottom: 2px solid #474747;
}
.job-nav-footer .choiced-page {
  border-bottom: 2px solid #474747;
}
.job-nav-footer li a {
  color: #474747;
  text-decoration: none;
}
.job-intro {
  font-size: 16px;
  line-height: 29px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
  text-align: center;
}
.job-conts {
  width: 96%;
  margin: 30px auto 50px;
  max-width: 1152px;
}
.job-conts p {
  font-size: 16px;
  line-height: 30px;
  margin-bottom: 50px;
}
.job-conts2 {
  width: 96%;
  margin: 30px auto 50px;
  max-width: 1152px;
}
.job-conts2 p {
  font-size: 16px;
  line-height: 30px;
}
.job-conts2 p span {
  color: #c20101;
  font-weight: bold;
}
#job-index-flow {
  margin-top: -20px !important;
  padding-top: 80px;
}
#job-index-briefing {
  margin-top: -20px !important;
  padding-top: 80px;
}
#job-index-seminner {
  margin-top: -20px !important;
  padding-top: 80px;
}
#job-index-int-seminner {
  margin-top: -20px !important;
  padding-top: 80px;
}
#job-list {
  margin-top: -30px !important;
  padding-top: 80px;
}
#salon-list {
  margin-top: -50px !important;
  padding-top: 80px;
}
#job-tokyo {
  margin-top: -30px !important;
  padding-top: 80px;
}
#job-osaka {
  margin-top: -80px;
  padding-top: 80px;
}
.employment-rate {
  margin: 20px auto 30px;
  text-align: center;
}
.employment-rate-l {
  font-size: 40px;
  color: #d90000;
  text-align: left;
  display: inline-block;
  margin-right: 15px;
  margin-bottom: 0;
  line-height: 32px;
}
.employment-rate-l span {
  font-size: 20px;
  color: #333;
}
.employment-rate-r {
  font-size: 120px;
  color: #d90000;
  font-weight: bold;
  text-align: center;
  display: inline-block;
  margin-bottom: 0;
}
.employment-rate-r span {
  font-size: 80px;
}
.employment-rate-af {
  display: none;
}
.job-index-list {
  font-size: 0;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}
.job-index-list li {
  width: 31%;
  margin: 10px 3.5% 30px 0;
  display: inline-block;
  vertical-align: top;
  text-align: left;
  list-style: none;
  box-sizing: border-box;
  font-size: 16px;
}
.job-index-list li:nth-child(3n) {
  margin-right: 0;
}
.job-index-list li p {
  text-align: left;
  line-height: 24px;
  margin-bottom: 15px;
}
.job-index-list-title {
  background-color: rgba(217, 0, 0, 0.85);
  width: 90%;
  position: relative;
  left: 5%;
  color: #fff;
  font-size: 16px;
  padding: 5px 0;
  bottom: 29px;
  text-align: center;
}
.job-1year-title {
  background: url(./images/common/job-index-title-bg01.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 60px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  background-repeat: no-repeat;
}
.job-2year-title {
  background: url(./images/common/job-index-title-bg02.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 60px 0;
  margin: 0 auto 40px;
  max-width: 1200px;
  font-size: 48px;
  background-repeat: no-repeat;
}
.job-month-list {
  width: 96%;
  margin: 0 auto 30px;
  max-width: 1000px;
  text-align: center;
}
.job-month-list p {
  font-size: 20px;
  font-weight: bold;
}
.job-month-list-left {
  float: left;
  width: 50%;
  text-align: center;
}
.job-month-list-left p {
  padding: 0 30px;
  font-size: 16px;
  font-weight: normal;
}
.job-month-list-left span {
  font-weight: bold;
  font-size: 20px;
}
.job-month-list-left a {
  font-weight: bold;
}
.job-month-list-right {
  float: right;
  width: 50%;
  text-align: center;
}
.job-month-list-right p {
  padding: 0 30px;
  font-size: 16px;
  font-weight: normal;
}
.job-month-list-right span {
  font-weight: bold;
  font-size: 20px;
}
.job-month-list-right a {
  font-weight: bold;
}
.job-month-circle {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  text-align: center;
  color: #fff;
  font-size: 23px;
  background-color: #9fd9f6;
  margin: 20px 5px 16px;
  padding-top: 17px;
  line-height: 8px;
  box-sizing: border-box;
  display: inline-block;
}
.job-month-circle span {
  font-size: 9px !important;
}
.job-month-circle04 {
  background-color: #9fd9f6;
}
.job-month-circle05 {
  background-color: #f9c387;
}
.job-month-circle06 {
  background-color: #a1d0bc;
}
.job-month-circle07 {
  background-color: #eae600;
}
.job-month-circle08 {
  background-color: #86bfe8;
}
.job-month-circle09 {
  background-color: #fedc7c;
}
.job-month-circle10 {
  background-color: #cfe186;
}
.job-month-circle11 {
  background-color: #b595c4;
}
.job-month-circle12 {
  background-color: #41b799;
}
.job-month-circle01 {
  background-color: #ef805b;
}
.job-month-circle02 {
  background-color: #8cd0df;
}
.job-month-circle03 {
  background-color: #ef805b;
}
.job-month-arrow {
  width: 35px;
  margin: 38px auto;
}
.job-month-button01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 267px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 20px;
  line-height: 30px;
  padding-top: 4px;
  padding-bottom: 4px;
  text-decoration: none;
  color: #000;
  border-radius: 12px;
  -webkit-border-radius: 12px;
  background-color: #fff;
  margin-bottom: 16px;
}
.job-month-button01:after {
  position: absolute;
  right: 5px;
  top: 13.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 8px;
  height: 12px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.job-month-button02 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 340px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 20px;
  line-height: 30px;
  padding-top: 4px;
  padding-bottom: 4px;
  text-decoration: none;
  color: #000;
  border-radius: 12px;
  -webkit-border-radius: 12px;
  background-color: #fff;
  margin-bottom: 16px;
}
.job-month-button02:after {
  position: absolute;
  right: 5px;
  top: 13.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 8px;
  height: 12px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.job-month-button03 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 396px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 20px;
  line-height: 30px;
  padding-top: 4px;
  padding-bottom: 4px;
  text-decoration: none;
  color: #000;
  border-radius: 12px;
  -webkit-border-radius: 12px;
  background-color: #fff;
  margin-bottom: 16px;
}
.job-month-button03:after {
  position: absolute;
  right: 5px;
  top: 13.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 8px;
  height: 12px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.job-employment-title {
  font-size: 21px;
  color: #d90000;
  border-bottom: 1px solid #d90000;
  margin-bottom: 20px;
}
.job-employment-list {
  font-size: 0;
  margin: 0 auto 50px;
  padding: 0;
  width: 100%;
}
.job-employment-list li {
  width: 15%;
  margin: 10px 2% 40px 0;
  display: inline-block;
  vertical-align: top;
  text-align: left;
  list-style: none;
  box-sizing: border-box;
  font-size: 16px;
}
.job-employment-list li:nth-child(6),
.job-employment-list li:nth-child(12),
.job-employment-list li:nth-child(18),
.job-employment-list li:nth-child(24),
.job-employment-list li:nth-child(30),
.job-employment-list li:nth-child(36),
.job-employment-list li:nth-child(42),
.job-employment-list li:nth-child(48),
.job-employment-list li:nth-child(54),
.job-employment-list li:nth-child(66),
.job-employment-list li:nth-child(72),
.job-employment-list li:nth-child(78),
.job-employment-list li:nth-child(84),
.job-employment-list li:nth-child(90),
.job-employment-list li:nth-child(96) {
  margin-right: 0;
}
.job-employment-list li a {
  color: #333;
}
.job-creator-list {
  font-size: 0;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}
.job-creator-list li {
  width: 31%;
  margin: 10px 3.5% 30px 0;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  list-style: none;
  box-sizing: border-box;
}
.job-creator-list li:nth-child(3n) {
  margin-right: 0;
}
.job-creator-list li .button-list {
  text-align: center;
  padding: 0;
  display: block;
  width: 100%;
  margin: 20px 0;
}
.job-creator-interview .button-list {
  text-align: center;
  padding: 0;
  display: block;
  width: 100%;
  margin: 20px 0;
}
.job-creator-list li p.button01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
  vertical-align: top;
  line-height: 0;
}
.job-creator-list li p.button02 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
  margin-left: 5%;
  vertical-align: top;
  line-height: 0;
}
.job-creator-interview {
  text-align: center;
}
.job-creator-interview .button-list .button01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
  vertical-align: top;
  line-height: 0;
}
.job-creator-list-title {
  background-color: rgba(217, 0, 0, 0.85);
  width: 90%;
  position: relative;
  left: 5%;
  color: #fff;
  font-size: 16px;
  padding: 5px 0;
  bottom: 29px;
}
.job-creator-list-name {
  font-size: 20px;
}
.job-creator-list-name span {
  font-size: 16px;
}
.job-slider {
  width: 800px;
  margin: 30px auto 10px;
}
.job-creator-title {
  text-align: center;
  margin: 20px auto 30px;
  font-size: 25px;
}
.job-creator-title-h3 {
  display: inline-block;
  margin: 0 40px 30px;
}
.job-creator-title-h3 p {
  color: #d90000;
  margin-bottom: 0 !important;
  font-size: 25px;
}
.job-creator-title-h3 h3 {
  margin: 0 auto 0 !important;
  font-size: 36px;
}
.job-creator-title-h3 h3 span {
  font-size: 24px;
}
.job-creator-title-img {
  display: inline-block;
  vertical-align: 15px;
  width: 50px;
}
/*2021.12.3 卒業生サロンリストインスタ追加の為　*/
.job-creator-date-img {
  display: inline-block;
  vertical-align: middle;
  width: 50px;
  padding-right: 5px;
}

/*2021.12.3 卒業生サロンリストインスタ追加の為　*/

.job-creator-salon {
  width: 600px;
  margin: 40px auto;
  text-align: center;
}
.job-creator-salon-title {
  color: #d90000;
  width: 100%;
  text-align: center;
  box-sizing: border-box;
  border: 4px solid #d90000;
  font-size: 16px;
  padding: 5px;
  margin-bottom: 30px;
}
.job-creator-salon-text {
  display: inline-block;
  text-align: center;
}
.job-creator-salon-text p {
  margin-bottom: 30px;
}
.job-button-list {
  text-align: center;
  padding: 0;
  display: block;
  width: 100%;
  margin: 20px 0;
}
.job-information-button01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 150px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.job-information-button01:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.job-information-button02 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 150px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  margin-left: 30px;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.job-information-button02:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.job-h3title {
  text-align: center;
  color: #d90000;
  font-size: 20px !important;
  margin-top: 90px !important;
}
.job-h3title span {
  border-bottom: 2px solid #d90000;
  display: inline-block;
  font-size: 24px !important;
  font-weight: bold;
}
.job-graf-img {
  width: 500px;
  margin: 30px auto;
}
.job-info-title {
  background-color: #d90000;
  color: #fff;
  font-size: 20px;
  width: 100%;
  box-sizing: border-box;
  padding: 4px 10px;
  margin-bottom: 20px;
}
.job-info-title2 {
  background-color: #d90000;
  color: #fff;
  font-size: 20px;
  width: 100%;
  box-sizing: border-box;
  padding: 4px 10px;
  margin-bottom: 20px;
}
.job-info-title p {
  display: inline-block;
  margin-bottom: 0;
}
.job-info-title2 p {
  display: inline-block;
  margin-bottom: 0;
}
.job-info-list {
  list-style: none;
  padding: 0 0 0 10px;
  margin: 0;
  font-size: 0;
}
.job-info-list li {
  display: inline-block;
  width: 20%;
  box-sizing: border-box;
  padding-left: 1em;
  text-indent: -0.7em;
  padding-right: 0;
  font-size: 16px;
}
.job-info-list li:before {
  content: "●";
  color: #d90000;
  display: inline-block;
  font-size: 9px;
  vertical-align: 2px;
}
.job-info-inner {
  width: 100%;
  display: none;
  padding: 0 10px;
  box-sizing: border-box;
}
.job-info-inner dl dt {
  display: inline-block;
}
.job-info-inner dl dd {
  display: inline-block;
}
.job-info-inner a {
  font-weight: bold;
}
.job-info-inner span {
  font-weight: bold;
  color: #c20101;
}
.job-info-inner ul {
  list-style: none;
  margin: 30px 0 50px;
}
.job-info-inner ul li {
  text-align: center;
  width: 100%;
  line-height: 36px;
  padding: 15px 0;
  border-bottom: 1px solid #333;
}
.job-info-inner ul li:last-child {
  border: none;
}
.job-info-inner ul li a {
  color: #333;
}
.job-info-inner ul li span {
  color: #333;
}
.accordion_icon,
.accordion_icon span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
}
.accordion_icon {
  position: relative;
  width: 30px;
  height: 30px;
  float: right;
  margin-right: 5px;
  top: 10px;
}
.accordion_icon span {
  position: absolute;
  left: 6px;
  width: 50%;
  height: 2px;
  background-color: #fff;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -ms-border-radius: 4px;
  -moz-border-radius: 4px;
  -o-border-radius: 4px;
}
.accordion_icon span:nth-of-type(1) {
  top: 5px;
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
}
.accordion_icon span:nth-of-type(2) {
  top: 5px;
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
}
/*＋、－切り替え*/
.accordion_icon.active span:nth-of-type(1) {
  display: none;
}
.accordion_icon.active span:nth-of-type(2) {
  top: 5px;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
}

/*入学用*/
.page-title-admission {
  background: url(./images/common/page-curriculum-title-bg.png) repeat-x;
  -webkit-animation: bgiLoop 20s linear infinite;
  animation: bgiLoop 20s linear infinite;
  height: 300px;
  width: 100%;
  background-size: auto 100%;
  position: relative;
  padding-top: 97px;
}
.page-title-admission .global-nav {
  margin-top: 10px !important;
}
@-webkit-keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
@keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
.page-title-admission-conts {
  color: #fff !important;
  text-align: center;
  padding: 126px 0 75px !important;
  font-size: 40px !important;
  line-height: 30px;
  margin: 0 !important;
}
.page-title-admission-conts span {
  font-size: 18px;
}
.admission-nav {
  list-style: none;
  font-size: 12px;
  font-weight: bold;
  display: table;
  margin: 0;
  width: 100%;
  text-align: center;
}
.admission-nav li {
  display: table-cell;
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.admission-nav .current_page_item {
  border-bottom: 2px solid #fff;
}
.admission-nav li a {
  color: #fff;
  text-decoration: none;
  text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0;
}
.admission-nav-footer {
  list-style: none;
  font-size: 12px;
  display: table;
  margin: 10px auto 30px;
  width: 96%;
  max-width: 1152px;
  text-align: center;
  font-weight: bold;
}
.admission-nav-footer li {
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.admission-nav-footer .current_page_item {
  border-bottom: 2px solid #474747;
}
.admission-nav-footer li a {
  color: #474747;
  text-decoration: none;
}
.admission-intro {
  font-size: 16px;
  line-height: 29px;
  width: 96%;
  margin: 30px auto 60px;
  max-width: 1152px;
  text-align: center;
}
.admission-button-list {
  text-align: center;
  padding: 0;
  display: block;
  width: 100%;
  margin: 30px 0;
}
.admission-button01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 150px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.admission-button01:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.admission-button02 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 150px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  margin-left: 30px;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 15px;
}
.admission-button02:after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.admission-button03 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 217px;
  box-sizing: border-box;
  vertical-align: top;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  margin: 0 auto 30px;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
}
.admission-conts {
  width: 96%;
  margin: 0 auto;
  max-width: 800px;
}
.admission-conts2 {
  width: 96%;
  margin: 0 auto;
  max-width: 1152px;
}
.admission-conts3 {
  max-width: 830px;
  margin: 30px auto;
  text-align: center;
  width: 96%;
}
.admission-conts3 .red {
  color: #d90000;
}
.admission-h3title {
  text-align: center;
  color: #d90000;
  font-size: 20px !important;
  margin-top: 90px !important;
}
.admission-h3title span {
  border-bottom: 2px solid #d90000;
  display: inline-block;
  font-size: 24px !important;
  font-weight: bold;
}
.admission-table {
  width: 100%;
  border-top: 1px solid #333;
  border-left: 1px solid #333;
  margin: 25px auto;
}
.admission-table th {
  background-color: #d90000;
  color: #fff;
  font-size: 20px;
  text-align: center;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  padding: 10px;
  font-weight: bold;
}
.admission-table td {
  font-size: 20px;
  text-align: center;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  padding: 10px;
}
.admission-table .bgpnk {
  background-color: #f7dada;
}
.admission-table2 {
  width: 100%;
  max-width: 500px;
  border-top: 1px solid #333;
  border-left: 1px solid #333;
  margin: 40px auto 30px;
}
.admission-table2 th {
  background-color: #d90000;
  color: #fff;
  font-size: 20px;
  text-align: center;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  padding: 10px;
  font-weight: bold;
}
.admission-table2 td {
  font-size: 20px;
  text-align: center;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  padding: 10px;
}
.admission-h4title {
  text-align: center;
  margin: 50px 0 !important;
  padding: 5px !important;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  background-color: #d90000;
  font-size: 20px !important;
  color: #fff !important;
}
.scholarship-request {
  width: 600px;
  margin: 25px auto;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  border: 2px solid #d90000;
  box-sizing: border-box;
  padding: 15px 5px;
  font-size: 16px;
  text-align: center;
  min-height: 82px;
}
.scholarship-request span {
  font-weight: bold;
}
.s-r-line48 {
  line-height: 48px;
}
#tuition {
  margin-top: -35px !important;
  padding-top: 80px !important;
}
#scholarship {
  margin-top: -20px !important;
  padding-top: 80px !important;
}
.scholarship-request-img {
  width: 46px;
  margin: 0 auto;
}
#loan {
  margin-top: -5px !important;
  padding-top: 80px !important;
}
#ao-frontier,
#ao-exam,
#scholarship-exam,
#rec-exam,
#general-exam {
  margin-top: -20px !important;
  padding-top: 80px !important;
}
.admission-attention {
  color: #d90000;
  font-size: 24px;
  border-bottom: 2px solid #d90000;
  margin: 10px auto 30px;
  display: inline-block;
  font-weight: bold;
}
.loan-outline dt {
  width: 100%;
  font-size: 20px;
  margin-bottom: 5px;
}
.loan-outline dt span {
  font-weight: bold;
}
.loan-outline dt span.red {
  color: #d90000;
}
.loan-outline dd {
  width: 100%;
  font-size: 16px;
  margin-bottom: 20px;
  padding-bottom: 20px;
  padding-left: 0;
  border-bottom: 1px solid #333;
}
.loan-outline2 dt {
  width: 100%;
  font-size: 20px;
  margin-bottom: 5px;
  font-weight: bold;
}
.loan-outline dt span {
  font-weight: bold;
}
.loan-outline2 dt span.red {
  color: #d90000;
  font-weight: bold;
}
.loan-outline2 dd {
  width: 100%;
  font-size: 20px;
  margin-bottom: 20px;
  padding-bottom: 20px;
  padding-left: 0;
  border-bottom: 1px solid #333;
}
.admission-tokuten {
  width: 100%;
  font-size: 16px;
  text-align: center;
}
.admission-tokuten-title {
  font-size: 20px;
  text-align: center;
  color: #d90000;
  margin: 30px auto;
  font-weight: bold;
}
.admission-tokuten-img {
  width: 600px;
  margin: 30px auto;
}
.admission-tokuten .b-red {
  border-top: 1px solid #d90000;
  padding-top: 40px;
  margin-bottom: 40px;
}
.admission-flow p {
  margin-bottom: 40px;
  text-align: center;
  font-weight: bold;
}
.admission-flow-title {
  color: #d90000;
  background-color: #fff;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  font-size: 16px;
  margin: 0 auto 40px;
  text-align: center;
  width: 600px;
  padding: 8px;
  box-sizing: border-box;
  border: 3px solid #d90000;
  font-weight: bold;
}
.admission-flow-img {
  width: 36px;
  margin: 0 auto 40px;
}
.admission-support {
  text-align: center;
  margin: 30px auto 60px;
  font-weight: bold;
}
.admission-support-btn01 {
  display: inline-block;
  width: 360px;
  color: #fff;
  text-align: center;
  padding: 5px 10px;
  box-sizing: border-box;
  background-color: #d90000;
}
.admission-support-btn01 p {
  display: inline-block;
  margin-bottom: 0;
}
.admission-support-btn01 .float-l {
  float: left;
  text-align: left;
}
.admission-support-btn01 .float-r {
  float: right;
  text-align: right;
}
.admission-support-btn02 {
  display: inline-block;
  width: 360px;
  color: #fff;
  text-align: center;
  padding: 5px 10px;
  box-sizing: border-box;
  margin-left: 20px;
  background-color: #d90000;
}
.admission-support-btn02 p {
  display: inline-block;
  margin-bottom: 0;
}
.admission-support-btn02 .float-l {
  float: left;
  text-align: left;
}
.admission-support-btn02 .float-r {
  float: right;
  text-align: right;
}
.admission-upport-img {
  width: 495px;
  margin: 30px auto;
}
.admission-support-title {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  background-color: #f8b500;
  color: #fff;
  width: 100%;
  box-sizing: border-box;
  margin: 30px auto;
  padding: 3px;
  text-align: center;
  font-weight: bold;
}
.admission-real-estate-list {
  width: 685px;
  margin: 30px auto 60px;
  font-size: 0;
}
.admission-real-estate-list li {
  font-size: 16px;
  text-align: center;
  width: 330px;
  vertical-align: top;
  display: inline-block;
  border: 4px solid #f8b500;
  padding: 5px;
  margin-right: 25px;
  box-sizing: border-box;
  line-height: 30px;
  margin-bottom: 25px;
}
.admission-real-estate-list li:nth-child(2),
.admission-real-estate-list li:nth-child(4) {
  margin-right: 0;
}
.admission-real-estate-list li .title {
  width: 200px;
  background-color: #f8b500;
  color: #fff;
  margin: 5px auto;
}
.admission-real-estate-list li p {
  margin-bottom: 0;
}
.admission-real-estate-list li a {
  text-decoration: none;
  color: #333;
}
.admission-real-estate span {
  font-size: 20px;
  font-weight: bold;
}
.admission-real-estate br {
  display: none;
}
.admission-real-estate a {
  color: #333;
  text-decoration: none;
}
.admission-support-kanbi-title {
  background: url(./images/common/admission-support-kanbi-bg.png);
  background-size: 100% auto;
  color: #fff;
  text-align: center;
  padding: 31px 0;
  margin: 80px auto 40px;
  max-width: 1200px;
  font-size: 36px;
  line-height: 50px;
  background-repeat: no-repeat;
}
.admission-support-kanbi {
  margin-bottom: 60px;
  width: 100%;
}
.admission-support-kanbi-l {
  width: 420px;
  box-sizing: border-box;
  float: left;
  margin-right: 24px;
  font-size: 16px;
  text-align: center;
}
.admission-support-kanbi-slider {
  width: 100%;
  margin: 0;
}
.admission-support-kanbi-l .title {
  border-top: 1px solid #d90000;
  border-bottom: 1px solid #d90000;
  display: inline-block;
  font-size: 18px;
  width: 100%;
  box-sizing: border-box;
  color: #d90000;
  padding: 8px;
  margin: 15px 0 20px;
}
.admission-support-kanbi-l span {
  font-size: 24px;
}
.admission-support-kanbi-r {
  float: left;
  width: 356px;
}
.admission-support-kanbi-r .qu {
  background-color: #d90000;
  color: #fff;
  display: inline-block;
  padding: 4px 6px;
  margin-bottom: 10px;
}
/*コンテスト用*/
.page-title-contest {
  background: url(./images/common/page-curriculum-title-bg.png) repeat-x;
  -webkit-animation: bgiLoop 30s linear infinite;
  animation: bgiLoop 30s linear infinite;
  height: 300px;
  width: 100%;
  background-size: auto 100%;
  position: relative;
  padding-top: 97px;
}
@-webkit-keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
@keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
.page-title-contest-conts {
  color: #fff !important;
  text-align: center;
  padding: 126px 0 75px !important;
  font-size: 40px !important;
  line-height: 30px;
  margin: 0 !important;
}
.page-title-contest-conts span {
  font-size: 18px;
}
.page-title-contest .global-nav {
  margin-top: 10px !important;
}
.contest-nav {
  list-style: none;
  font-size: 12px;
  font-weight: bold;
  display: table;
  margin: 0 auto;
}
.contest-nav li {
  display: table-cell;
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.contest-nav .current_page_item {
  border-bottom: 2px solid #fff;
}
.contest-nav .choiced-page {
  border-bottom: 2px solid #fff;
}
.contest-nav li a {
  color: #fff;
  text-decoration: none;
  text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0;
}
.contest-nav-footer {
  list-style: none;
  font-size: 12px;
  display: table;
  margin: 10px auto 30px;
  width: 96%;
  max-width: 1152px;
  text-align: center;
  font-weight: bold;
}
.contest-nav-footer li {
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.contest-nav-footer .current_page_item {
  border-bottom: 2px solid #474747;
}
.contest-nav-footer .choiced-page {
  border-bottom: 2px solid #474747;
}
.contest-nav-footer li a {
  color: #474747;
  text-decoration: none;
}
.contest-intro {
  text-align: center;
  width: 96%;
  max-width: 1152px;
  margin: 0 auto 0;
  font-size: 16px;
}
.contest-conts {
  margin: 30px auto 30px;
  width: 96%;
  max-width: 800px;
}
.contest-conts2 {
  margin: 30px auto 30px;
  width: 96%;
  max-width: 830px;
}
.contest-conts3 {
  margin: 30px auto 30px;
  width: 96%;
  max-width: 1000px;
}
.contest-conts4 {
  margin: 30px auto 30px;
  width: 96%;
  max-width: 1152px;
}
.contest-conts2-3 {
  width: 65%;
  margin-right: 5%;
  float: left;
}
.contest-conts1-3 {
  width: 30%;
  float: left;
}
.contest-conts5 {
  margin: 30px auto 30px;
  width: 96%;
  max-width: 500px;
}
.contest-conts6 {
  margin: 0 auto;
  width: 100%;
  max-width: 660px;
}
.contest-intro2 {
  text-align: center;
  width: 100%;
}
.contest-photo-btn-list {
  text-align: center;
  width: 100%;
  margin: 30px auto;
}
.contest-photo-btn01 {
  text-align: center;
  display: inline-block;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
  padding: 1px;
}
.contest-conts p {
  text-align: center;
}
.contest-list {
  padding: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 96%;
  font-size: 0;
  max-width: 1152px;
  margin: 30px auto;
}
.contest-list li {
  width: 31%;
  margin: 10px 3.5% 30px 0;
  display: inline-block;
  vertical-align: top;
  text-align: left;
  list-style: none;
  box-sizing: border-box;
  padding-bottom: 65px;
  position: relative;
  font-size: 16px;
}
.contest-list li:nth-child(3n) {
  margin: 10px 0 30px 0;
}
.contest-list-title {
  font-size: 16px;
  color: #d90000;
  text-align: center;
  margin-bottom: 10px;
  font-weight: bold;
}
.line01 {
  margin-top: 24px;
}
.contest-list-title2 {
  background-color: rgba(217, 0, 0, 0.85);
  color: #fff;
  font-size: 16px;
  position: relative;
  left: 5%;
  width: 90%;
  bottom: 48px;
  padding: 10px 5px;
  box-sizing: border-box;
  text-align: center;
  font-weight: bold;
}
.contest-list-title2-inner {
  position: absolute;
  top: 50%;
  z-index: 0;
  width: 100%;
  transform: translate(0, -50%);
}
.mt-20 {
  margin-top: -21px;
}
.contest-list li .button-list {
  text-align: center;
  padding: 0;
  display: block;
  position: absolute;
  bottom: 20px;
  width: 100%;
}
.contest-list li p.button01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 103px;
  font-size: 0;
  box-sizing: border-box;
}
.contest-list li p.button01 a {
  text-align: center;
  padding: 2px;
}
.contest-past-btn-list {
  text-align: center;
  width: 96%;
  margin: 30px auto 0;
  max-width: 1152px;
}
.contest-past-btn01 {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 162px;
  font-size: 0;
  box-sizing: border-box;
  padding: 1px;
}
.contest-btn-list {
  text-align: center;
  width: 100%;
  margin: 30px auto 60px;
}
.contest-btn01 {
  text-align: center;
  display: inline-block;
  width: 267px;
  box-sizing: border-box;
  padding: 3px;
  font-size: 20px;
  vertical-align: top;
  border: 1.4px solid #000;
  position: relative;
  border-radius: 12px;
  -webkit-border-radius: 12px;
  text-decoration: none;
  color: #333;
}
.contest-btn01:after {
  position: absolute;
  right: 4px;
  top: 13.5px;
  content: "";
  background: url(./images/common/job-info-btn-icon.png) no-repeat;
  width: 6px;
  height: 11px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
.contest-title-gray:before {
  background: url(./images/common/h1-title-bg.png) repeat-x;
  content: "";
  width: 100%;
  display: block;
  height: 10px;
  position: relative;
  top: 29px;
  z-index: 1;
  background-size: contain;
}
.contest-title-gray span {
  background: #f2f2f2;
  padding: 0 10px;
  position: relative;
  z-index: 5;
  letter-spacing: 5px;
  font-weight: bold;
}
.contest-main-title {
  width: 100%;
  text-align: center;
  color: #f8b500;
  font-size: 27px;
  border-top: 2px solid #f8b500;
  border-bottom: 2px solid #f8b500;
  padding: 40px 0 5px;
  margin: 60px auto 60px;
  font-weight: bold;
  position: relative;
}
.contest-main-title span {
  font-size: 20px;
  color: #333;
}
.contest-main-title:before {
  content: "";
  background: url(./images/common/contest-main-title-icon.jpg) no-repeat;
  width: 60px;
  height: 40px;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: -25px;
  left: 0;
  right: 0;
  margin: auto;
}
.contest-main-title2 {
  width: 100%;
  text-align: center;
  font-size: 20px;
  padding: 60px 0 5px;
  margin: 80px auto 40px;
  font-weight: bold;
  position: relative;
}
.contest-main-title2:before {
  content: "";
  background: url(./images/common/contest-main-title-icon.jpg) no-repeat;
  width: 60px;
  height: 40px;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.contest-main-title3 {
  color: #f8b500;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin: 20px auto;
}
.contest-main-title4 {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin: 20px auto;
}
.contest-main-title5 {
  width: 100%;
  text-align: center;
  font-size: 20px;
  padding: 60px 0 5px;
  margin: 80px auto 40px;
  font-weight: bold;
  position: relative;
}
.contest-main-title5:before {
  content: "";
  background: url(./images/common/contest-main-title-icon2.png) no-repeat;
  width: 60px;
  height: 40px;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.contest-main-title6 {
  width: 100%;
  text-align: center;
  font-size: 20px;
  padding: 30px 0 5px;
  margin: 80px auto 40px;
  font-weight: bold;
  position: relative;
}
.gp-conts-list-title {
  width: 100%;
  text-align: center;
  font-size: 20px;
  padding: 50px 0 5px;
  margin: 10px auto 20px;
  font-weight: bold;
  position: relative;
}
.gp-conts-list-title:before {
  content: "";
  background: url(./images/common/contest-main-title-icon2.png) no-repeat;
  width: 60px;
  height: 40px;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.gp-conts-list-title2 {
  width: 100%;
  text-align: center;
  font-size: 20px;
  padding: 50px 0 5px;
  margin: 10px auto 20px;
  font-weight: bold;
  position: relative;
}
.gp-conts-list-title2:before {
  content: "";
  background: url(./images/common/contest-main-title-icon.jpg) no-repeat;
  width: 60px;
  height: 40px;
  background-size: contain;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.gp-conts-list-title.mh100 {
  min-height: 130px;
}
.gp-conts-list-title2.mh100 {
  min-height: 111px;
}
.gp-conts-list img {
  margin: 20px 0 10px;
}
.gp-conts-list2 img {
  margin: 20px 0 10px;
}
.contest-award-title {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  background-color: #d90000;
  color: #fff;
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto 10px;
  padding: 3px;
  text-align: center;
}
.contest-award-title.mh78 {
  min-height: 78px;
  box-sizing: border-box;
  padding-top: 29px;
}
.contest-caption {
  width: 100%;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  background-color: #d90000;
  text-align: center;
  color: #fff;
  font-size: 18px;
  margin: 30px auto;
  box-sizing: border-box;
  padding: 10px;
  font-weight: bold;
}
.contest-conts2-img {
  width: 495px;
  margin: 50px auto;
}
.contest-work-title {
  font-weight: bold;
  margin-bottom: 20px;
}
.gp-conts {
  margin-bottom: 100px;
}
.gp-conts-left {
  float: left;
  width: 40%;
  margin-right: 4%;
  text-align: left;
  font-size: 16px;
}
.gp-conts-left img {
  margin-bottom: 10px;
}
.gp-conts-right {
  float: left;
  width: 56%;
  font-size: 16px;
}
.gp-conts-qa dt,
.gp-conts-qa dd {
  padding-left: 40px;
  position: relative;
}
.gp-conts-qa dt {
  color: #d90000;
  margin-bottom: 10px;
}
.gp-conts-qa dt:before {
  content: "Q,";
  width: 18px;
  height: 20px;
  display: inline-block;
  position: absolute;
  left: 15px;
}
.gp-conts-qa dd {
  margin-bottom: 30px;
}
.gp-conts-qa dd:before {
  content: "A,";
  width: 18px;
  height: 20px;
  display: inline-block;
  position: absolute;
  left: 15px;
}
.gp-conts-list {
  font-size: 0;
  margin: 30px auto 80px;
  padding: 0;
}
.gp-conts-list li {
  display: inline-block;
  font-size: 16px;
  text-align: center;
  width: 30%;
  margin-right: 5%;
  vertical-align: top;
  margin-bottom: 30px;
}
.gp-conts-list li:nth-child(3n) {
  margin-right: 0;
}
.gp-conts-list li .gp-name {
  min-height: 130px;
  margin: 20px 0;
}
.gp-conts-list2 {
  font-size: 0;
  margin: 30px auto 80px;
  padding: 0;
}
.gp-conts-list2 li {
  display: inline-block;
  font-size: 16px;
  text-align: center;
  width: 48%;
  margin-right: 4%;
  vertical-align: top;
  margin-bottom: 30px;
}
.gp-conts-list2 li:nth-child(2),
.gp-conts-list2 li:nth-child(4),
.gp-conts-list2 li:nth-child(6),
.gp-conts-list2 li:nth-child(8),
.gp-conts-list2 li:nth-child(10) {
  margin-right: 0;
}
.gp-conts-list2 li .gp-name {
  min-height: 130px;
  margin: 20px 0;
}
.gp-conts-list3 {
  font-size: 0;
  margin: 30px auto 80px;
  padding: 0;
}
.gp-conts-list3 li {
  display: inline-block;
  font-size: 16px;
  text-align: center;
  width: 46.15%;
  margin-right: 7.7%;
  vertical-align: top;
  margin-bottom: 30px;
}
.gp-conts-list3 li:nth-child(2) {
  margin-right: 0;
}
.gp-conts-list3 li .gp-name {
  margin: 20px 0;
}
.contest-conts1-3 .gp-name {
  margin: 20px 0;
}
.contest-tb {
  width: 100%;
  margin: 30px auto 50px;
}
.contest-tb th {
  background-color: #fff;
  text-align: center;
  padding: 10px;
}
.contest-tb td {
  text-align: center;
  padding: 10px;
}

/*  2023.1.7 ビューティプロ専門学校追加　*/
.contest-tb td.bp {
  background: url(./images/icon/bp_01.png) no-repeat;
  text-align: center;
  background-position: TOP;
  padding-top: 25px;
  margin-top: 5px;
}
/*  2023.1.7 ビューティプロ専門学校追加　*/
.contest-tb2 {
  width: 100%;
  max-width: 552px;
  margin: 0 auto 50px;
}
.contest-tb2 th {
  background-color: #fff;
  text-align: center;
  padding: 10px;
  width: 38%;
}
.contest-tb2 td {
  text-align: center;
  padding: 10px;
}
.contest-dl {
  display: none;
}
/*  2023.1.7 ビューティプロ専門学校追加　*/
.contest-dl dd.bp {
  background: url(./images/icon/bp_01sp.png) no-repeat;
  background-position: right;
  background-size: 10%;
  padding-right: 10%;
}
/*  2023.1.7 ビューティプロ専門学校追加　*/
.contest-img2 {
  margin-bottom: 80px;
}
.contest-img2-l {
  width: 50%;
  float: left;
  margin-bottom: 15px;
}
.gp-name2 {
  margin: 20px 0 40px;
}
.toggle-hide {
  display: none;
}
.toggle-hide2 {
  display: none;
}
/*ポートフォリオ用*/
.page-title-portfolio {
  background: url(./images/common/page-curriculum-title-bg.png) repeat-x;
  -webkit-animation: bgiLoop 30s linear infinite;
  animation: bgiLoop 30s linear infinite;
  height: 300px;
  width: 100%;
  background-size: auto 100%;
  position: relative;
  padding-top: 97px;
}
@-webkit-keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
@keyframes bgiLoop {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1370px 0;
  }
}
.page-title-portfolio-conts {
  color: #fff !important;
  text-align: center;
  padding: 126px 0 !important;
  font-size: 40px !important;
  line-height: 30px;
  margin: 0 !important;
}
.page-title-portfolio-conts span {
  font-size: 18px;
}
.page-title-portfolio .global-nav {
  margin-top: 10px !important;
}
.portfolio-nav {
  list-style: none;
  font-size: 12px;
  font-weight: bold;
  display: table;
  margin: 0 auto;
}
.portfolio-nav li {
  display: table-cell;
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.portfolio-nav .current_page_item {
  border-bottom: 2px solid #fff;
}
.portfolio-nav .choiced-page {
  border-bottom: 2px solid #fff;
}
.portfolio-nav li a {
  color: #fff;
  text-decoration: none;
  text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0;
}
.portfolio-nav-footer {
  list-style: none;
  font-size: 12px;
  display: table;
  margin: 10px auto 30px;
  width: 96%;
  max-width: 1152px;
  text-align: center;
  font-weight: bold;
}
.portfolio-nav-footer li {
  text-align: center;
  display: inline-block;
  margin: 0 12px;
}
.portfolio-nav-footer .current_page_item {
  border-bottom: 2px solid #474747;
}
.portfolio-nav-footer .choiced-page {
  border-bottom: 2px solid #474747;
}
.portfolio-nav-footer li a {
  color: #474747;
  text-decoration: none;
}
.portfolio-intro {
  text-align: center;
  width: 96%;
  max-width: 1152px;
  margin: 0 auto 0;
  font-size: 16px;
}
.portfolio-conts {
  margin: 30px auto 30px;
  width: 96%;
  max-width: 1000px;
}
/*高校１・２年生のみなさまへ用*/
.junior-intro-title {
  font-size: 26px;
  text-align: center;
}
.junior-intro-img {
  margin-top: 30px;
}
.junior-h3title {
  text-align: center;
  color: #d90000;
  font-size: 20px !important;
  margin-top: 90px !important;
}
.junior-h3title span {
  border-bottom: 2px solid #d90000;
  display: inline-block;
  font-size: 24px !important;
  font-weight: bold;
}
.junior-conts {
  width: 96%;
  margin: 0 auto;
  max-width: 1152px;
}
.junior-txt-l {
  text-align: center;
}
.junior-qa {
  width: 430px;
  position: relative;
  margin: 40px auto 20px;
}
.junior-q-icon {
  display: inline-block;
  width: 52px;
  margin-right: 20px;
  vertical-align: middle;
}
.junior-q-title {
  display: inline-block;
  vertical-align: middle;
  color: #d90000;
  font-size: 16px;
}
.junior-arrow-icon {
  display: inline-block;
  width: 32px;
  position: absolute;
  right: 0px;
  top: 8px;
}
.junior-a-icon {
  display: inline-block;
  width: 52px;
  margin-right: 20px;
  vertical-align: middle;
}
.junior-a {
  display: inline-block;
  width: 315px;
  vertical-align: middle;
}
.junior-qa-cap {
  text-align: center;
}
.junior-sub-title {
  text-align: center;
  margin: 50px 0 30px;
}
.junior-sub-title span {
  background-color: #d90000;
  color: #fff;
  display: inline-block;
  padding: 5px 10px;
  position: relative;
}
.junior-sub-title span:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -7px;
  border: 7px solid transparent;
  border-top: 7px solid #d90000;
}
.junior-sub-title2 {
  font-size: 24px;
  margin: 40px 0 20px;
}
.junior-banner {
  margin: 30px 0;
}
.junior-banner01 {
  float: left;
  margin-right: 4.5%;
  width: 45.5%;
}
.junior-banner02 {
  float: right;
  margin-left: 4.5%;
  width: 45.5%;
}
.junior-first-conts {
  background-color: #ffffd6;
  width: 100%;
  padding: 50px 0 20px;
  position: relative;
  text-align: center;
}
.junior-first-icon {
  position: absolute;
  top: 10px;
  left: 20px;
}
.junior-step01 {
  width: 328px;
  margin: 0 auto;
}
.junior-yajirushi01 {
  width: 429px;
  margin: 0 auto;
}
.junior-step02 {
  width: 756px;
  margin: 0 auto;
}
.junior-step02-01 {
  width: 328px;
  float: left;
  position: relative;
}
.junior-step02-01 .mt80 {
  margin-top: 80px;
}
.junior-step02-02 {
  width: 328px;
  float: right;
  position: relative;
}
.junior-step02-02 .mt80 {
  margin-top: 80px;
}
.junior-step02-sub01 {
  position: absolute;
  left: 10%;
}
.junior-step02-sub02 {
  position: absolute;
  left: 10%;
}
.junior-yajirushi02 {
  width: 429px;
  margin: 0 auto;
}
.junior-third-conts {
  background-color: #fff2d6;
  width: 100%;
  padding: 20px 0;
  position: relative;
  text-align: center;
  margin-bottom: 60px;
}
.junior-third-icon {
  position: absolute;
  top: 10px;
  left: 20px;
}
.junior-step03 {
  width: 328px;
  margin: 0 auto;
  position: relative;
}
.junior-step03 .mt80 {
  margin-top: 80px;
}
.junior-step03-sub {
  position: absolute;
  left: 10%;
}
.junior-yajirushi03 {
  width: 637px;
  margin: 0 auto;
}
.junior-step04 {
  width: 900px;
  margin: 0 auto;
}
.junior-step04-01 {
  width: 285px;
  float: left;
  position: relative;
  margin-right: 22.5px;
}
.junior-step04-01 .mb80 {
  margin-bottom: 40px;
}
.junior-step04-02 {
  width: 285px;
  float: left;
  position: relative;
  margin-right: 22.5px;
}
.junior-step04-02 .mb80 {
  margin-bottom: 40px;
}
.junior-step04-03 {
  width: 285px;
  float: left;
  position: relative;
}
.junior-step04-03 .mb80 {
  margin-bottom: 40px;
}
.junior-step04-sub01 {
  position: absolute;
  left: 10%;
  bottom: 15px;
}
.junior-step04-sub02 {
  position: absolute;
  left: 10%;
  bottom: 15px;
}
.junior-arrow-icon .active {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
}
/*フォーム用*/
.page-title-form {
  background: url(./images/common/page-form-title-bg.png) repeat-x;
  height: 65px;
  width: 100%;
  background-size: auto 100%;
  position: relative;
  padding-top: 97px;
  -webkit-animation: bgiLoop 30s linear infinite;
  animation: bgiLoop 30s linear infinite;
}
.page-title-form .global-nav {
  margin-top: 10px !important;
}
.section-title-form {
  font-size: 34px !important;
  text-align: center;
  color: #d90000;
  border-bottom: 1px solid #d90000;
}
.section-title-form span {
  font-size: 20px;
  font-family: "Lobster", sans-serif;
}
.section-title-form .note {
  font-size: 28px;
  display: inline;
}
.form-contents {
  font-size: 16px;
}
.prl30 {
  padding-left: 30px;
  padding-right: 30px;
}
.text-center {
  text-align: center;
}
.form-img {
  text-align: center;
  margin: 30px auto;
  max-width: 800px;
  width: 90%;
}
.form-group {
  width: 100%;
  max-width: 900px;
  margin: 30px auto;
}
.form-group dt {
  float: left;
  width: 25%;
  min-height: 45px;
}
.form-group dd {
  float: left;
  width: 72%;
  padding-left: 3%;
  margin-bottom: 30px;
  min-height: 45px;
}
.form-group dd span {
  display: inline-block;
  margin: 0 6px;
}
.steps {
  text-align: center;
  margin: 30px auto;
  max-width: 1152px;
  width: 96%;
  font-size: 0;
}
.steps .active {
  background: #d90000 !important;
}
.step3conts {
  width: 30%;
  display: inline-block;
  text-align: left;
}
.step3conts-last {
  width: 26%;
  display: inline-block;
  text-align: left;
}
.steps .step {
  padding: 8px 15px;
  text-align: center;
  font-size: 18px;
  color: white;
  background: #9fa0a0;
  display: inline-block;
  width: 78%;
}
.step3conts-last .step {
  padding: 8px 15px;
  text-align: center;
  font-size: 18px;
  color: white;
  background: #9fa0a0;
  display: inline-block;
  width: 87%;
}
.steps .fa {
  color: #000;
  font: normal normal normal 14px/1 FontAwesome;
}
.step-arrows {
  display: inline-block;
  margin-left: 5%;
}
.fa-play:before {
  content: "";
  background: url(./images/common/step-arrow.png) no-repeat;
  width: 15px;
  height: 15px;
  background-size: contain;
  display: inline-block;
}
:after,
:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.form-group {
  margin-bottom: 15px;
}
.form-horizontal .control-label {
  padding-top: 7px;
  margin-bottom: 0;
  max-width: 200px;
  text-align: left;
  font-size: 17px;
}
span.red {
  color: red;
}
.form-control {
  border-radius: inherit;
  box-shadow: none;
  display: inline-block;
  width: 60%;
  height: 46px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  box-sizing: border-box;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s,
    -webkit-box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.form-control2 {
  border-radius: inherit;
  box-shadow: none;
  display: inline-block;
  width: 22%;
  height: 46px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  box-sizing: border-box;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s,
    -webkit-box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.form-control3 {
  border-radius: inherit;
  box-shadow: none;
  display: inline-block;
  width: 22%;
  margin-right: 2%;
  height: 46px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  box-sizing: border-box;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s,
    -webkit-box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.pl00 {
  padding-left: 0 !important;
}
.btn-default {
  display: inline-block;
  width: 250px;
  margin: 0 10px 10px;
}
.form-btn-group {
  float: left;
  width: 70%;
  text-align: center;
}
.cpissl {
  float: left;
  width: 30%;
}
.hcd-formmail-p {
  width: 90%;
  max-width: 900px;
  margin: 30px auto;
}
#zip1_1 {
  width: 25%;
  margin-right: 1%;
}
#zip1_2 {
  width: 27%;
  margin-left: 1%;
}
#zip2_1 {
  width: 25%;
  margin-right: 1%;
}
#zip2_2 {
  width: 27%;
  margin-left: 1%;
}
#id_year {
  width: 20%;
  margin: 0 1%;
}
#id_month {
  width: 20%;
  margin: 0 1%;
}
#id_day {
  width: 20%;
  margin: 0 1%;
}
#form-parent {
  width: 48%;
}
.mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 6px !important;
}
.mw_wp_form_confirm .reset-button {
  display: none;
}
.form-kakunin {
  margin: 30px auto 0;
  width: 90%;
  max-width: 800px;
  text-align: center;
}
/*ブログ用*/

.blog-body-in {
  max-width: 1152px;
  width: 96%;
  margin: 120px auto 0;
}
.section-title2 {
  margin: 30px auto !important;
  font-size: 20px !important;
  font-weight: bold;
}
.sub-conts .section-title:before {
  content: none;
}
.sub-conts a {
  color: #fff;
  text-decoration: none;
  background-color: #d90000;
  display: inline-block;
  width: 100%;
}
.article-header .section-title:before {
  content: none;
}
.mb100 {
  margin-bottom: 100px;
  margin-top: 50px;
}
.section-wrap .article-header .section-title {
  font-size: 16px !important;
  margin: 20px 0 0;
  text-align: left;
}
.section-title a {
  font-weight: bold;
  text-decoration: none;
  color: #c20101 !important;
}
.col2 .article-body {
  margin-bottom: 50px;
  border-bottom: 1px dotted #ccc;
  padding-bottom: 30px;
}
.col2 .main-conts .article-body p {
  margin-bottom: 40px;
  line-height: 30px;
}
.wpp-list {
  font-size: 0;
  list-style: none;
  margin: 0 0 30px;
}
.wpp-list li {
  display: inline-block;
  box-sizing: border-box;
  width: 48%;
  font-size: 14px;
  vertical-align: top;
}
.wpp-list li:nth-child(even) {
  padding-left: 2%;
  border-left: 1px dotted #ccc;
  margin-left: 2%;
  width: 50%;
  margin-right: 0;
}
.popular-post-thumbnail {
  width: 100%;
  margin: 0 0 20px;
}
.popular-post-thumbnail img {
  width: 100%;
  margin-bottom: 10px;
}
/*サイドバー用*/
.widget_calendar caption {
  text-align: center;
  font-weight: normal;
}
.widget_calendar table {
  border: none;
}
.widget_calendar th,
.widget_calendar td {
  border: none;
  font-weight: normal;
}
.sub-conts .widget_recent_entries li {
  padding-left: 0;
  background: none;
}
.sub-conts .widget_recent_entries li span {
  font-size: 12px;
  font-weight: normal;
  margin-bottom: 10px;
  border-bottom: 1px solid #e5e5e5;
  display: block;
  padding: 10px 0;
}
#recent-posts-blog a.bt {
  font-weight: normal;
  background-color: #d90000;
  border: 1px solid #d90000;
  display: block;
  padding: 5px;
  border-radius: 5px;
  color: white;
  text-align: center;
  box-sizing: border-box;
}
#categories-3 a,
#categories-blog a {
  border: 1px solid #c10f4d;
  border-radius: 3px;
  color: #4d4d4d;
  padding: 3px;
  font-size: 12px;
  background: none;
  display: inline;
}
.list-unstyled li a {
  color: #c20101;
  background: none;
}
.article-header.smaller {
  border-bottom: 1px solid #d90000;
  margin-bottom: 30px;
}
#list_head ul {
  margin: 15px 0;
}
.blog-cat-list {
  display: inline-block;
  margin: 5px 10px;
}
.blog-cat-list a {
  border: 1px solid #d90000;
  border-radius: 3px;
  color: #333;
  padding: 5px;
  font-size: 12px;
}
.blog-cat-list a.cur {
  background-color: #d90000;
  color: white;
  text-decoration: none;
}
.news-cat-list {
  display: inline-block;
  margin: 5px 10px;
}
.news-cat-list a {
  border: 1px solid #d90000;
  border-radius: 3px;
  color: #333;
  padding: 5px;
  font-size: 12px;
}
.news-cat-list a.cur {
  background-color: #d90000;
  color: white;
  text-decoration: none;
}
.sub-conts .widget_recent_entries li a {
  background: none;
  color: #c20101;
}
/*ニュース用*/
.news-list {
  width: 100%;
  list-style: none;
  margin: 30px 0;
  padding: 0;
}
.news-list li {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 15px 10px 5px;
  border-bottom: 1px solid #ccc;
}
.news-list li a {
  text-decoration: none;
}
.news-list-time {
  width: 12%;
  display: inline-block;
}
.news-list-title {
  width: 67%;
  display: inline-block;
}
.news-list-cat {
  width: 20%;
  display: inline-block;
}
/*フッター用*/
.footerList {
  margin: 0 10px 20px;
  text-align: left;
  font-size: 0;
}
.footerList ul {
  list-style-type: none;
  text-align: left;
  padding-left: 0;
  margin-left: 0;
}
.footerList li {
  display: inline-block;
  vertical-align: top;
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 20px;
  text-align: left;
  width: 25%;
  box-sizing: border-box;
}
.footAccordion span {
  display: block;
  pointer-events: none;
  width: 90%;
  margin-bottom: 5px;
  border-bottom: 0.3px solid #fff;
}
.footerList ul li {
  display: block;
  margin-bottom: 5px;
  width: 100%;
}
.footerList ul li a {
  text-decoration: none;
}
.footList01 p {
  display: inline-block;
  margin-bottom: 0;
  font-weight: bold;
}
.footList01 .accordion_icon {
  display: none;
}
.footer-menu-title {
  border-bottom: 1.5px solid #fff;
  display: block !important;
  width: 88%;
}
/*ページャー用*/
#pager {
  padding-top: 30px;
  width: 100%;
  text-align: center;
}
#pager ul {
  display: inline-block;
  margin: 0 auto 60px !important;
}
#pager li {
  display: inline-block;
  padding-right: 5px;
  padding-left: 5px;
  vertical-align: top;
}
#pager li a {
  display: inline-block;
  font-size: 2rem;
  color: #d90000;
  border: 1px solid #d90000;
  text-align: center;
  width: 42px;
  height: 42px;
  padding-top: 2px;
  font-size: 20px;
  text-decoration: none;
  box-sizing: border-box;
}
#pager li a.cur,
#pager li a:hover {
  border: 1px solid #d90000;
  background-color: #d90000;
  color: white;
}
#pager li a img {
  vertical-align: -1px;
}

/* syokusen 20190818追加 */
p.t_black a {
  color: #000000;
}
p.t_black a:hover,
p.t_black a:active,
p.t_black a:focus {
  color: #000000;
}
.expert01-h2 {
  color: #333 !important;
  font-size: 16px !important;
  margin: 15px auto 10px 0px !important;
  float: left;
  text-align: left;
}
.expert01-h2 span {
  float: left;
}
.expert01-p {
  clear: left;
}
/* admission 20230202追加 */
.admission-app-list {
  font-size: 0;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}
.admission-app-list li {
  width: 23%;
  margin: 10px 2.6% 30px 0;
  display: inline-block;
  vertical-align: top;
  text-align: left;
  list-style: none;
  box-sizing: border-box;
  font-size: 16px;
}
.admission-app-list li:nth-child(4n) {
  margin-right: 0;
}
.admission-app-list li p {
  text-align: left;
  line-height: 24px;
  margin-bottom: 15px;
}
.admission-app-list-title {
  background-color: rgba(217, 0, 0, 0.85);
  width: 90%;
  position: relative;
  left: 5%;
  color: #fff;
  font-size: 16px;
  padding: 5px 0;
  bottom: 29px;
  text-align: center;
}

/* admission 20230202追加ここまで */

/* ▼240718更新分 */
/* 240711 opencampus編集 */
/* 240628 参加者の声 */
.oc-voice {
  padding: 100px 0 60px;
}

.oc-voice__box {
  border: 1px solid #d90000;
  padding: 40px 50px;
}

.oc-voice__box.first {
  margin-top: 20px;
}

.oc-voice__box {
  margin-bottom: 30px;
}

.oc-voice__inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
}

.oc-voice__job {
  background-color: rgba(201, 21, 30, 0.03);
  border: #d90000 1px solid;
  border-radius: 10px;
  font-weight: bold;
  color: #d90000;
  padding: 7px 10px 8px;
  text-align: center;
  margin-left: -2px;
}
.oc-voice__date {
  font-weight: bold;
  color: #d90000;
}
.oc-voice__lesson {
  margin-top: 16px;
  font-weight: bold;
  text-align: left;
}
.oc-voice__text {
  position: relative;
  margin-top: 15px;
  text-align: left;
  margin-bottom: 0 !important;
  z-index: 2;
}

.oc-voice__text::before {
  position: absolute;
  content: "";
  background-image: url(https://www.kanbi.ac.jp/wp-content/themes/keni71_wp_corp_black_201802021603/images/common/i_quote.svg);
  display: block;
  top: -3px;
  left: -10px;
  width: 30px;
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: -1;
}

.oc-voice__person {
  text-align: right;
  margin-bottom: 0 !important;
}

.viewmore-btn,
.close-btn {
  display: block;
}

.view-close-btn {
  padding: 5px 20px;
  color: #d90000;
  border: 1px solid #d90000;
  border-radius: 5px;
  background-color: #fff;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .oc-voice__box {
    padding: 30px;
  }

  .oc-voice__job {
    padding: 9px 12px 10px;
  }

  .oc-voice__lesson {
    margin-top: 25px;
  }

  .oc-voice__text {
    margin-top: 25px;
  }
  .oc-voice__text::before {
    width: 40px;
    top: -5px;
    left: -15px;
  }
}

/* 240704ページ内リンク */
.other-conts--oc {
  width: 100%;
  display: grid;
  justify-content: center;
  grid-template-columns: repeat(auto-fit, 150px);
  gap: 20px;
  row-gap: 10px;
}
.other-button--oc {
  text-align: center;
  padding: 0;
  display: inline-block;
  width: 150px;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
  border: 1.4px solid #000;
  font-weight: bold;
  font-size: 11px;
  line-height: 25px;
  padding-top: 2px;
  padding-bottom: 1px;
  text-decoration: none;
  margin-left: 0px;
  color: #000;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 0px;
}

.other-button--oc::after {
  position: absolute;
  right: 2px;
  top: 9.5px;
  content: "";
  background: url(https://www.kanbi.ac.jp/wp-content/themes/keni71_wp_corp_black_201802021603/images/common/job-info-btn-icon.png)
    no-repeat;
  width: 6px;
  height: 9px;
  background-size: contain;
  vertical-align: 1px;
  display: inline-block;
  z-index: 0;
}
/* ▲240718更新分 */

/*-------------------------------

251009 プラグイン更新により/photogalleryが崩れたので再設定

-------------------------------*/
.photogallary-conts .simple .ccchildpage {
  background: #fff;
}
.photogallary-conts h3 {
  margin: 10px auto 0;
  padding: 10px 0;
  color: #d90000;
  text-align: center;
  width: 100%;
  max-width: 1200px;
  font-size: 17px;
  border-bottom: 1px dotted #d90000;
  margin-bottom: 30px;
}
.photogallary-conts .ccpages_more {
  text-decoration: none;
  display: inline-block;
  width: 120px;
  box-sizing: border-box;
  border: 1.3px solid #000;
  background: #fff;
  text-align: center;
  padding: 3px 0;
  border-radius: 5px;
  margin: 20px auto 0;
  font-weight: bold;
  color: #000;
  width: fit-content;
  display: block;
}
.photogallary-conts .ccpages_more a {
  color: #000;
}
.photogallary-conts .ccpages_more {
  padding: 3px 5px;
}
@media (max-width: 736px) {
  .photogallary-conts h3 {
    margin-top: 0 !important;
    font-size: 16px;
  }
}

@media (max-width: 480px) {
  .photogallary-conts .ccchildpage {
    width: 100%;
  }
}

/*-------------------------------

修正

-------------------------------*/
@media (max-width: 736px) {
  .global-nav-in li a span.sp {
    display: inline;
  }
}
#top-information {
  margin-top: 0;
}

@media only screen and (max-width: 736px) {
  #top-information {
    margin-top: 0 !important;
    padding-top: 0;
  }
}
