@charset "UTF-8";
/****************************************
font
****************************************/
@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 100;
  src: url("../font/NotoSansCJKjp-Thin.eot");
  src: local("Noto Sans CJK JP Thin"), url("../font/NotoSansCJKjp-Thin.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Thin.woff") format("woff"), url("../font/NotoSansCJKjp-Thin.otf") format("opentype");
}
@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 300;
  src: url("../font/NotoSansCJKjp-DemiLight.eot");
  src: local("Noto Sans CJK JP DemiLight"), url("../font/NotoSansCJKjp-DemiLight.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-DemiLight.woff") format("woff"), url("../font/NotoSansCJKjp-DemiLight.otf") format("opentype");
}
@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 400;
  src: url("../font/NotoSansCJKjp-Regular.eot");
  src: local("Noto Sans CJK JP Regular"), url("../font/NotoSansCJKjp-Regular.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Regular.woff") format("woff"), url("../font/NotoSansCJKjp-Regular.otf") format("opentype");
}
@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 500;
  src: url("../font/NotoSansCJKjp-Medium.eot");
  src: local("Noto Sans CJK JP Medium"), url("../font/NotoSansCJKjp-Medium.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Medium.woff") format("woff"), url("../font/NotoSansCJKjp-Medium.otf") format("opentype");
}
@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 700;
  src: url("../font/NotoSansCJKjp-Bold.eot");
  src: local("Noto Sans CJK JP Bold"), url("../font/NotoSansCJKjp-Bold.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Bold.woff") format("woff"), url("../font/NotoSansCJKjp-Bold.otf") format("opentype");
}
.noto {
  font-family: "NotoSansCJKjp", sans-serifF;
}

.sans {
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
}

/****************************************
add reset
****************************************/
/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  color: #3e3e3e;
  font-family: 'NotoSansCJKjp';
  /* 1 */
  font-style: normal;
  font-weight: 300;
  font-size: 62.5%;
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}
@media (min-width: 768px) {
  body {
    min-width: 1220px;
  }
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  *behavior: url(/scripts/boxsizing.htc);
  /*	If you need support for IE7 and lower make
  	sure the boxsizing.htc file is linked properly.
  	More info here:  https://github.com/Schepp/box-sizing-polyfill */
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
  color: #333;
  text-decoration: none;
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
  vertical-align: bottom;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  font: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Add riset
   ========================================================================== */
ul, ol {
  list-style-type: none;
  padding: 0;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

ul {
  margin: 0;
  padding: 0;
}

/****************************************
layout grid
****************************************/
@media (min-width: 768px) {
  html,
  body {
    height: 100%;
    min-height: 100%;
    position: relative;
  }
}

#container {
  position: relative;
}

@media (min-width: 768px) {
  #header {
    width: 220px;
    height: 100%;
    min-height: 100%;
    border-right: 1px solid #e6e6e6;
    position: fixed;
    top: 0;
    left: 0;
    background-color: #fff;
    z-index: 100;
  }
}

@media (min-width: 768px) {
  .wrapContainer {
    padding-left: 220px;
    width: 100%;
    height: 100%;
    position: relative;
  }
}

@media (min-width: 768px) {
  #main {
    background-color: #fff;
  }
}
@media (max-width: 767px) {
  #main {
    overflow: hidden;
  }
}

@media (min-width: 768px) {
  .sectionContents {
    padding: 60px 0;
  }
  .sectionContents.last {
    padding: 60px 0 100px;
  }
  .sectionContents.pb80 {
    padding: 60px 0 80px;
  }
}
@media (max-width: 767px) {
  .sectionContents {
    padding: 30px 0;
  }
  .sectionContents.last {
    padding: 30px 0 60px;
  }
  .sectionContents.pb80 {
    padding: 30px 0 40px;
  }
}
.sectionContents.border {
  border-top: 1px solid #e6e6e6;
}
.sectionContents.borderBottom {
  border-bottom: 1px solid #e6e6e6;
}
.sectionContents.bgGray {
  background-color: #f6f6f6;
}

@media (min-width: 768px) {
  .sectionInner {
    padding: 0 40px;
    margin: 0 auto;
    width: 920px;
  }
  .sectionInner.w920 {
    padding: 40px;
    width: 920px;
    position: relative;
  }
  .sectionInner.bgWhite {
    background-color: #fff;
  }
}
@media (max-width: 767px) {
  .sectionInner {
    padding: 0 15px;
  }
  .sectionInner.w920 {
    margin: 0 15px;
    padding: 20px 0;
    position: relative;
  }
  .sectionInner.bgWhite {
    background-color: #fff;
  }
}

@media (min-width: 768px) {
  .sectionLiqiud {
    margin: 0 40px;
    padding: 0 40px;
    background-color: #fff;
  }
}
@media (max-width: 767px) {
  .sectionLiqiud {
    margin: 0 15px;
    padding: 20px 15px;
    background-color: #fff;
  }
}

.container:after,
.row:after,
.col:after,
.clr:after,
.group:after {
  content: "";
  display: table;
  clear: both;
}

.col {
  display: block;
  width: 100%;
}

/****************************************
link
****************************************/
.bulletLink a {
  display: inline-block;
  padding-left: 20px;
  position: relative;
  transition: color .2s ease-in;
  width: 100%;
  line-height: 1.4;
}
.bulletLink a:hover {
  color: #00a0e9;
}

.bulletLink a:before {
  content: '';
  display: block;
  width: 14px;
  height: 14px;
  background: url(../img/bullet-circle-arrow.png) top left no-repeat;
  background-size: 14px;
  position: absolute;
  top: 2px;
  left: 0;
}

a:hover {
  color: #00a0e9;/*20190607�ǋL �����N���ߍ��݃e�L�X�g�ɃJ�[�\���𓖂Ă����ɑ��Ɠ��l�ɐF��ς���*/
}

/****************************************
common
****************************************/
@media (max-width: 767px) {
  img {
    max-width: 90%;
  }
}
/****************************************
header
****************************************/
@media (min-width: 768px) {
  #header .headerInner {
    padding-bottom: 162px;
  }
  #header .headerInner .sp-menu-btn {
    display: none;
  }
  #header #headLogo {
    padding: 60px 0 55px;
  }
  #header #headLogo .logo {
    margin: 0;
    text-align: center;
  }
  #header .overlay {
    display: none;
  }
}
@media (max-width: 767px) {
  #header .headerInner {
    position: relative;
  }
  #header #spHead {
    height: 50px;
    width: 100%;
    background-color: #fff;
    position: relative;
    z-index: 100;
    border-bottom: 1px solid #e6e6e6;
  }
  #header #headLogo {
    height: 50px;
  }
  #header #headLogo .logo {
    margin: 0;
    padding: 15px 0 0 12px;
    width: 132px;
    height: 34px;
  }
  #header #headLogo .logo a {
    display: block;
    width: 120px;
    height: 22px;
    background: url(../img/logo-sp.png) top left no-repeat;
    background-size: 120px;
  }
  #header #headLogo .logo img {
    display: none;
  }
  #header .sp-menu-btn {
    width: 50px;
    height: 50px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1000;
    border-left: 1px solid #e6e6e6;
    overflow: hidden;
  }
  #header .sp-menu-btn .menu-btn {
    display: block;
    width: 50px;
    height: 50px;
  }
  #header .sp-menu-btn .txt {
    display: block;
    width: 100%;
    font-size: 7px;
    font-size: 0.7rem;
    font-weight: bold;
    text-align: center;
    position: absolute;
    top: 30px;
    left: 0;
  }
  #header .sp-menu-btn .border {
    background-color: #333;
    display: inline-block;
    height: 2px;
    position: absolute;
    left: 14px;
    -webkit-transition: all .4s;
    transition: all .4s;
    width: 22px;
  }
  #header .sp-menu-btn .border:nth-of-type(1) {
    top: 12px;
  }
  #header .sp-menu-btn .border:nth-of-type(2) {
    top: 18px;
  }
  #header .sp-menu-btn .border:nth-of-type(3) {
    top: 24px;
  }
  #header .sp-menu-btn.active {
    transform: rotate(360deg);
  }
  #header .sp-menu-btn.active .border:nth-of-type(1) {
    transform: translateY(6px) rotate(-45deg);
  }
  #header .sp-menu-btn.active .border:nth-of-type(2) {
    transform: translateY(0) rotate(45deg);
  }
  #header .sp-menu-btn.active .border:nth-of-type(3) {
    opacity: 0;
  }
  #header #spMenu {
    width: 100%;
    display: block;
    background-color: #fff;
    position: absolute;
    z-index: 10;
    top: -1000px;
    transition: .5s ease-in-out;
  }
  #header #spMenu.active {
    top: 50px;
  }
  #header .overlay {
    display: none;
    width: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
    background-color: #000;
    background-color: rgba(0, 0, 0, 0.75);
  }
  #header .overlay.active {
    display: block;
  }
}

/*スクリーンの高さに合わせた要素処理*/
@media (min-width: 768px) {
  #header.long {
    position: fixed;
  }

  #header.short {
    position: absolute;
  }
}
@media (min-width: 768px) {
  #gNavi {
    margin-bottom: 24px;
    border-bottom: 1px solid #e6e6e6;
  }
  #gNavi > li {
    border-top: 1px solid #e6e6e6;
  }
  #gNavi > li.hover .outer:after {
    display: none;
  }
  #gNavi > li > .outer {
    display: block;
    padding: 0 20px;
    line-height: 50px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 500;
    position: relative;
  }
  #gNavi > li > .outer:hover {
    cursor: pointer;
  }
  #gNavi > li > .outer:after {
    content: '';
    display: block;
    width: 6px;
    height: 10px;
    background: url(../img/bullet-gNavi.png) top left no-repeat;
    position: absolute;
    top: 20px;
    right: 20px;
  }
}
@media (max-width: 767px) {
  #gNavi > li > .outer {
    display: block;
    line-height: 45px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    background-color: #fff;
    padding: 0 15px;
    border-bottom: 1px solid #e6e6e6;
    position: relative;
    cursor: pointer;
  }
  #gNavi > li.gNavi01 > .outer:after, #gNavi > li.gNavi01 > .outer:before, #gNavi > li.gNavi02 > .outer:after, #gNavi > li.gNavi02 > .outer:before, #gNavi > li.gNavi04 > .outer:after, #gNavi > li.gNavi04 > .outer:before, #gNavi > li.gNavi05 > .outer:after, #gNavi > li.gNavi05 > .outer:before {
    display: block;
    content: '';
    width: 1px;
    height: 11px;
    background-color: #00a0e9;
    position: absolute;
    top: 20px;
    right: 22px;
  }
  #gNavi > li.gNavi01 > .outer:before, #gNavi > li.gNavi02 > .outer:before, #gNavi > li.gNavi04 > .outer:before, #gNavi > li.gNavi05 > .outer:before {
    width: 11px;
    height: 1px;
    top: 25px;
    right: 17px;
  }
  #gNavi > li.gNavi01.open > a:after, #gNavi > li.gNavi02.open > a:after, #gNavi > li.gNavi04.open > a:after, #gNavi > li.gNavi05.open > a:after {
    width: 0;
    height: 0;
  }
  #gNavi > li.gNavi03 > .outer:after {
    content: '';
    display: block;
    position: absolute;
    top: 20px;
    right: 20px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #00a0e9;
    border-right: 1px solid #00a0e9;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  #gNavi > li > .gNaviInner {
    display: none;
    overflow: hidden;
  }
  #gNavi > li > .gNaviInner li {
    border-bottom: 1px solid #e6e6e6;
    position: relative;
  }
  #gNavi > li > .gNaviInner li > a {
    display: block;
    line-height: 45px;
    font-size: 14px;
    font-size: 1.4rem;
    background-color: #f6f6f6;
    padding: 0 15px;
  }
  #gNavi > li > .gNaviInner li > a:after {
    content: '';
    display: block;
    position: absolute;
    top: 20px;
    right: 20px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #00a0e9;
    border-right: 1px solid #00a0e9;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}

@media (min-width: 768px) {
  #gNavi > .gNaviOuter > .gNaviInner {
    padding-top: 150px;
    width: 0;
    height: 100%;
    overflow: hidden;
    position: absolute;
    left: 219px;
    top: 0;
    background-color: rgba(30, 72, 157, 0.6);
  }
  #gNavi > .gNaviOuter > .gNaviInner li {
    display: table;
    width: 219px;
  }
  #gNavi > .gNaviOuter > .gNaviInner li a {
    display: table-cell;
    padding: 0 35px 0 20px;
    height: 51px;
    width: 100%;
    vertical-align: middle;
    line-height: 18px;
    font-size: 13px;
    font-size: 1.3rem;
    color: #fff;
    position: relative;
    opacity: 0;
  }
  #gNavi > .gNaviOuter > .gNaviInner li a:hover {
    background-color: #1e489d;
  }
  #gNavi > .gNaviOuter > .gNaviInner li a:after {
    content: '';
    display: block;
    width: 6px;
    height: 10px;
    background: url(../img/bullet-gNavi.png) top left no-repeat;
    position: absolute;
    top: 20px;
    right: 15px;
  }
  #gNavi .gNavi04 .gNaviInner {
    padding-top: 303px;
  }
  #gNavi .gNavi05 .gNaviInner {
    padding-top: 354px;
  }
  #gNavi .gNavi03 > .outer {
    transition: color .2s ease-in;
  }
  #gNavi .gNavi03 > .outer:hover {
    background-color: rgba(30, 72, 157, 0.95);
    color: #fff;
  }
}
@media (min-width: 768px) {
  #secondNavi {
    margin-bottom: 25px;
    padding: 0 20px;
  }
  #secondNavi li {
    margin-bottom: 10px;
  }
  #secondNavi li a {
    line-height: 1.4;
    font-size: 13px;
    font-size: 1.3rem;
  }
  #secondNavi li a:hover {
    color: #00a0e9;
  }
  #secondNavi li:last-child {
    margin-bottom: 0;
  }
}
@media (max-width: 767px) {
  #secondNavi {
    padding: 25px 20px 15px;
    background-color: #fff;
  }
  #secondNavi li {
    margin-bottom: 20px;
  }
  #secondNavi li a {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

@media (min-width: 768px) {
  #bottomNavi {
    width: 219px;
    position: fixed;
    left: 0;
    bottom: 10px;
  }
}
@media (max-width: 767px) {
  #bottomNavi {
    margin-bottom: 20px;
  }
}

/*スクリーンの高さに合わせた要素処理*/
@media (min-width: 768px) {
  #bottomNavi.long {
    position: fixed;
    bottom: 10px;
    left: 0;
  }

  #bottomNavi.short {
    position: relative;
    bottom: auto;
    left: auto;
  }
}
#externalNavi {
  display: table;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
}
@media (min-width: 768px) {
  #externalNavi {
    width: 219px;
    height: 70px;
  }
}
@media (max-width: 767px) {
  #externalNavi {
    width: 100%;
  }
}
#externalNavi li {
  display: table-cell;
  width: 50%;
  vertical-align: middle;
  text-align: center;
}
#externalNavi li.left {
  border-right: 1px solid #e6e6e6;
}
#externalNavi li a {
  height: 70px;
  padding: 44px 0 0;
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  color: #666;
  position: relative;
}
@media (min-width: 768px) {
  #externalNavi li.left a {
    background: #f6f6f6 url(../img/bg_externalNavi_left.png) 37px 11px no-repeat;
    background-size: 36px;
    transition: background-color .2s ease-in;
  }
  #externalNavi li.left a:hover {
    background-color: #e6e6e6;
  }
}
@media (max-width: 767px) {
  #externalNavi li.left a {
    font-size: 12px;
    font-size: 1.2rem;
    background-color: #f6f6f6;
  }
  #externalNavi li.left a:after {
    content: '';
    display: block;
    margin-left: -18px;
    width: 36px;
    height: 25px;
    background: url(../img/bg_externalNavi_left.png) left top no-repeat;
    background-size: 36px;
    position: absolute;
    top: 11px;
    left: 50%;
  }
}
@media (min-width: 768px) {
  #externalNavi li.right a {
    background: #f6f6f6 url(../img/bg_externalNavi_right.png) 37px 11px no-repeat;
    background-size: 36px;
    transition: background-color .2s ease-in;
  }
  #externalNavi li.right a:hover {
    background-color: #e6e6e6;
  }
}
@media (max-width: 767px) {
  #externalNavi li.right a {
    font-size: 12px;
    font-size: 1.2rem;
    background-color: #f6f6f6;
  }
  #externalNavi li.right a:after {
    content: '';
    display: block;
    margin-left: -18px;
    width: 36px;
    height: 25px;
    background: url(../img/bg_externalNavi_right.png) left top no-repeat;
    background-size: 36px;
    position: absolute;
    top: 11px;
    left: 50%;
  }
}

#headerSns {
  padding: 20px 0;
  height: 80px;
  text-align: center;
  background-color: #fff;
}
#headerSns li {
  width: 40px;
  height: 40px;
  border: 1px solid #e6e6e6;
  border-radius: 40px;
  overflow: hidden;
  display: inline-block;
}
#headerSns li a {
  display: block;
  width: 40px;
  height: 40px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}
#headerSns li.facebook {
  margin-right: 20px;
}
#headerSns li.facebook a {
  background: url(../img/btn-facebook.png) top left no-repeat;
  background-size: 40px;
}
@media (min-width: 768px) {
  #headerSns li.facebook a {
    transition: background-color .2s ease-in;
  }
}
#headerSns li.facebook a:hover {
  background: #00a0e9 url(../img/btn-facebook.png) bottom left no-repeat;
  background-size: 40px;
}
#headerSns li.twitter a {
  background: url(../img/btn-twitter.png) top left no-repeat;
  background-size: 40px;
}
@media (min-width: 768px) {
  #headerSns li.twitter a {
    transition: background-color .2s ease-in;
  }
}
#headerSns li.twitter a:hover {
  background: #00a0e9 url(../img/btn-twitter.png) bottom left no-repeat;
  background-size: 40px;
}

@media (min-width: 768px) {
  #btnClose {
    display: none;
  }
}
@media (max-width: 767px) {
  #btnClose {
    height: 60px;
    border-top: 1px solid #e6e6e6;
  }
  #btnClose a {
    display: block;
    padding-top: 20px;
    text-align: center;
    line-height: 40px;
    font-size: 8px;
    font-weight: 500;
    position: relative;
  }
  #btnClose a:after, #btnClose a:before {
    margin-left: -11px;
    content: '';
    display: block;
    width: 22px;
    height: 2px;
    background-color: #333;
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateY(0) rotate(-45deg);
  }
  #btnClose a:before {
    transform: translateY(0) rotate(45deg);
  }
}

/****************************************
bannerArea
****************************************/
@media (min-width: 768px) {
  #bannerArea {
    padding: 60px 0;
    border-top: 1px solid #e6e6e6;
    background-color: #f6f6f6;
  }
  #bannerArea .bannerAreaInner {
    margin: 0 auto;
    padding: 0 40px;
    width: 980px;
    overflow: hidden;
  }
  #bannerArea .bannerAreaInner h2 {
    margin: 0 0 25px 0;
    font-size: 15px;
    font-weight: 400;
  }
  #bannerArea #slider {
    width: 100%;
  }
  #bannerArea #slider .sliderItem {
    margin-right: 20px;
    width: 225px;
    display: table;
  }
  #bannerArea #slider .sliderItem .logoImage {
    width: 225px;
    height: 80px;
    display: table-cell;
    border: 1px solid #e6e6e6;
    background-color: #fff;
    position: relative;
    vertical-align: middle;
  }
  #bannerArea #slider .sliderItem .logoImage img {
    margin: 0 auto;
    transition: opacity .2s ease-in;
  }
  #bannerArea #slider .sliderItem .logoImage:after {
    content: '';
    display: block;
    width: 12px;
    height: 10px;
    background: url(../img/bullet-external-gray.png) top left no-repeat;
    position: absolute;
    bottom: 7px;
    right: 7px;
  }
  #bannerArea #slider .sliderItem .text {
    margin: 10px 0 0;
    font-size: 12px;
    font-size: 1.2rem;
    color: #666;
    transition: opacity .2s ease-in;
  }
  #bannerArea #slider .sliderItem a:hover img {
    opacity: 0.7;
  }
  #bannerArea #slider .sliderItem a:hover .text {
    opacity: 0.7;
  }
}
@media (max-width: 767px) {
  #bannerArea {
    width: 100%;
    padding: 25px 0 20px;
    border-top: 1px solid #e6e6e6;
    background-color: #f6f6f6;
    overflow: hidden;
  }
  #bannerArea .bannerAreaInner {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    overflow: hidden;
  }
  #bannerArea .bannerAreaInner h2 {
    margin: 0 0 15px 15px;
    font-size: 1.2rem;
    font-weight: 400;
  }
  #bannerArea #slider {
    width: 100%;
    box-sizing: border-box;
  }
  #bannerArea #slider .sliderItem {
    margin-right: 20px;
    width: 170px;
    display: table;
  }
  #bannerArea #slider .sliderItem .logoImage {
    width: 170px;
    height: 60px;
    display: table-cell;
    border: 2px solid #e6e6e6;
    background-color: #fff;
    position: relative;
    vertical-align: middle;
  }
  #bannerArea #slider .sliderItem .logoImage img {
    max-width: 75%;
    margin: 0 auto;
  }
  #bannerArea #slider .sliderItem .logoImage:after {
    content: '';
    display: block;
    width: 12px;
    height: 10px;
    background: url(../img/bullet-external-gray.png) top left no-repeat;
    position: absolute;
    bottom: 7px;
    right: 7px;
  }
  #bannerArea #slider .sliderItem .text {
    margin: 10px 0 0;
    font-size: 11px;
    font-size: 1.1rem;
    color: #666;
  }
}

@media all and (-ms-high-contrast: none) {
  #slider .sliderItem .logoImage img {
    transition: none;
  }
}
/****************************************
footer
****************************************/
@media (min-width: 768px) {
  #footer {
    padding: 25px 0 45px;
    border-top: 1px solid #e6e6e6;
    position: relative;
  }
  #footer .footerInner {
    padding: 0 40px;
    min-width: 980px;
  }
  #footer #footNavi {
    margin-bottom: 6px;
  }
  #footer #footNavi li {
    display: inline-block;
    padding-right: 12px;
    margin-right: 12px;
    border-right: 1px solid #e6e6e6;
  }
  #footer #footNavi li a {
    font-size: 12px;
    font-size: 1.2rem;
  }
  #footer #footNavi li a:hover {
    color: #00a0e9;
    text-decoration: underline;
  }
  #footer #copyRight p {
    margin: 0;
    font-size: 1.1rem;
    font-size: 11px;
    color: #999;
  }
}
@media (max-width: 767px) {
  #footer {
    padding: 20px 0;
    border-top: 1px solid #e6e6e6;
    position: relative;
  }
  #footer .footerInner {
    padding: 0 15px;
  }
  #footer #footNavi {
    margin-bottom: 10px;
    text-align: center;
  }
  #footer #footNavi li {
    display: inline-block;
    padding: 0 18px;
    margin-bottom: 10px;
    margin-right: -1px;
    border-right: 1px solid #e6e6e6;
    border-left: 1px solid #e6e6e6;
    font-size: 1.1rem;
    line-height: 1.2;
  }
  #footer #copyRight p {
    margin: 0;
    font-size: 1.0rem;
    font-size: 10px;
    color: #999;
    text-align: center;
  }
  #footer #copyRight p span {
    display: block;
  }
}

@media (min-width: 768px) {
  #toTop {
    width: 40px;
    height: 40px;
    background-color: #1e489d;
    cursor: pointer;
    position: fixed;
    bottom: 50px;
    right: 40px;
  }
  #toTop .line {
    display: block;
    width: 20px;
    height: 14px;
    background: url(../img/bg-totop-pc.png) top left no-repeat;
    position: absolute;
    top: 14px;
    left: 10px;
  }
}
@media (max-width: 767px) {
  #toTop {
    width: 30px;
    height: 30px;
    background-color: #1e489d;
    cursor: pointer;
    position: fixed;
    bottom: 15px;
    right: 15px;
  }
  #toTop .line {
    display: block;
    width: 20px;
    height: 14px;
    background: url(../img/bg-totop-sp.png) top left no-repeat;
    background-size: 15px;
    position: absolute;
    top: 10px;
    left: 8px;
  }
}

/****************************************
breadcrumb
****************************************/
@media (min-width: 768px) {
  #breadcrumb {
    padding: 15px 40px;
    height: 50px;
    text-align: right;
  }
  #breadcrumb .breadcrumbList {
    margin: 0;
  }
  #breadcrumb .breadcrumbList .breadcrumbItem {
    margin-left: 10px;
    padding-right: 10px;
    display: inline-block;
    position: relative;
    line-height: 20px;
    font-size: 12px;
  }
  #breadcrumb .breadcrumbList .breadcrumbItem:after {
    content: '';
    display: block;
    width: 1px;
    height: 14px;
    background-color: #999;
    position: absolute;
    right: 0;
    top: 3px;
    -moz-transform: rotate(15deg);
    -webkit-transform: rotate(15deg);
    -o-transform: rotate(15deg);
    -ms-transform: rotate(15deg);
    transform: rotate(15deg);
  }
  #breadcrumb .breadcrumbList .breadcrumbItem:last-child:after {
    content: none;
  }
  #breadcrumb .breadcrumbList .breadcrumbItem a {
    position: relative;
    display: inline-block;
    transition: .3s;
  }
  #breadcrumb .breadcrumbList .breadcrumbItem a:after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 0;
    height: 1px;
    background-color: #00a0e9;
    transition: .3s;
  }
  #breadcrumb .breadcrumbList .breadcrumbItem a:hover {
    color: #00a0e9;
  }
  #breadcrumb .breadcrumbList .breadcrumbItem a:hover:after {
    width: 100%;
  }
}
@media (max-width: 767px) {
  #breadcrumb {
    display: none;
  }
}

/****************************************
pageHeader
****************************************/
@media (min-width: 768px) {
  .pageHeader {
    padding-top: 30px;
    position: relative;
  }
  .pageHeader .pageHeaderInner {
    padding-top: 0;
    height: 180px;
    background-color: #4bbdf1;
  }
  .pageHeader .pageTitleArea {
    padding: 35px 30px 0 30px;
    height: 180px;
    min-width: 290px;
    background-color: #1e489d;
    position: absolute;
    top: 0;
    left: 40px;
  }
  .pageHeader .pageTitleArea h2 {
    margin: 0 0 18px 0;
    padding: 0 0 15px 0;
    font-size: 40px;
    font-size: 4rem;
    font-weight: 100;
    color: #fff;
    line-height: 1.2;
    position: relative;
  }
  .pageHeader .pageTitleArea h2:after {
    content: '';
    display: block;
    width: 25px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 1px;
    bottom: -2px;
  }
  .pageHeader .pageTitleArea.titleLong {
    padding: 25px 0 0 30px;
  }
  .mindora .pageHeader .pageTitleArea.titleLong {
    padding: 25px 30px 0 30px;
  }
  .pageHeader .pageTitleArea.titleLong h2 {
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 1.4;
  }
  .pageHeader .pageTitleArea .sans {
    margin: 0;
    padding-left: 1px;
    font-size: 16px;
    color: #fff;
    line-height: 1.2;
  }
  .pageHeader#pageHeaderSimple {
    padding-top: 0;
    border-top: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
    background-color: #fff;
  }
  .pageHeader#pageHeaderSimple .pageHeaderInner {
    height: 180px;
    background-color: #fff;
  }
  .pageHeader#pageHeaderSimple .pageTitleArea {
    margin-top: 0;
    padding: 35px 0 0 0;
    width: 80%;
    background-color: transparent;
    position: relative;
    top: 0;
    left: 70px;
  }
  .pageHeader#pageHeaderSimple .pageTitleArea h2 {
    color: #333;
  }
  .pageHeader#pageHeaderSimple .pageTitleArea h2:after {
    background-color: #1e489d;
  }
  .pageHeader#pageHeaderSimple .pageTitleArea .sans {
    color: #1e489d;
  }
}
@media (max-width: 767px) {
  .pageHeader {
    background-color: #4bbdf1;
    position: relative;
  }
  .pageHeader .pageHeaderInner {
    width: 100%;
    height: 90px;
    position: relative;
  }
  .pageHeader .pageTitleArea {
    padding: 15px 12px 0 12px;
    min-height: 80px;
    min-width: 116px;
    background-color: #1e489d;
    position: absolute;
    top: 25px;
    left: 12px;
  }
  .pageHeader .pageTitleArea h2 {
    margin: 0 0 10px 0;
    padding: 0 0 8px 0;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 100;
    color: #fff;
    line-height: 1.2;
    position: relative;
  }
  .pageHeader .pageTitleArea h2:after {
    content: '';
    display: block;
    width: 10px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 1px;
    bottom: -2px;
  }
  .pageHeader .pageTitleArea.titleLong {
    padding: 12px 12px 10px 12px;
    top: 15px;
  }
  .pageHeader .pageTitleArea.titleLong h2 {
    margin: 0 0 8px 0;
    padding: 0 0 6px 0;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.4;
  }
  .pageHeader .pageTitleArea .sans {
    margin: 0;
    padding-left: 1px;
    font-size: 10px;
    color: #fff;
    line-height: 1.2;
  }
  .pageHeader#pageHeaderSimple {
    background-color: #fff;
    border-bottom: 1px solid #e6e6e6;
    padding: 0 15px;
  }
  .pageHeader#pageHeaderSimple .pageHeaderInner {
    background-color: #fff;
  }
  .pageHeader#pageHeaderSimple .pageTitleArea {
    padding: 15px 0 0 0;
    background-color: transparent;
    top: 4px;
    left: 2px;
  }
  .pageHeader#pageHeaderSimple .pageTitleArea h2 {
    color: #333;
    font-weight: 300;
  }
  .pageHeader#pageHeaderSimple .pageTitleArea h2:after {
    background-color: #1e489d;
  }
  .pageHeader#pageHeaderSimple .pageTitleArea .sans {
    color: #1e489d;
  }
}

@media (min-width: 1280px) {
  #pageHeader .pageHeaderInner {
    padding-top: 16.98%;
    height: 0;
  }
}
@media (min-width: 768px) {
  .pageRecruit .pageHeaderInner,
  .pageRecruitDetail .pageHeaderInner {
    background: url(../img/recruit/bg-pageHeader-recruit-pc-2021.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageRecruit .pageHeaderInner,
  .pageRecruitDetail .pageHeaderInner {
    background: url(../img/recruit/bg-pageHeader-recruit-sp-2021.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pagePub .pageHeaderInner,
  .pageMagazine .pageHeaderInner {
    background: url(../img/business/pub/bg-pageHeader-pub-pc-2020.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pagePub .pageHeaderInner,
  .pageMagazine .pageHeaderInner {
    background: url(../img/business/pub/bg-pageHeader-pub-sp-2020.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pageOrderproduct .pageHeaderInner {
    background: url(../img/business/orderproduct/bg-pageHeader-orderproduct-pc.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageOrderproduct .pageHeaderInner {
    background: url(../img/business/orderproduct/bg-pageHeader-orderproduct-sp.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pageCustompub .pageHeaderInner {
    background: url(../img/business/custompub/bg-pageHeader-custompub-pc.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageCustompub .pageHeaderInner {
    background: url(../img/business/custompub/bg-pageHeader-custompub-sp.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pageChannel .pageHeaderInner {
    background: url(../img/business/channel/bg-pageHeader-channel-pc.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageChannel .pageHeaderInner {
    background: url(../img/business/channel/bg-pageHeader-channel-sp.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pageDevelopment .pageHeaderInner {
    background: url(../img/business/development/bg-pageHeader-development-pc.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageDevelopment .pageHeaderInner {
    background: url(../img/business/development/bg-pageHeader-development-sp.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pageListing .pageHeaderInner {
    background: url(../img/business/listing/bg-pageHeader-listing-pc.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageListing .pageHeaderInner {
    background: url(../img/business/listing/bg-pageHeader-listing-sp.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pageDegital .pageHeaderInner {
    background: url(../img/business/digital/bg-pageHeader-degital-pc.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageDegital .pageHeaderInner {
    background: url(../img/business/digital/bg-pageHeader-degital-sp.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pageCasting .pageHeaderInner {
    background: url(../img/business/casting/bg-pageHeader-casting-pc.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageCasting .pageHeaderInner {
    background: url(../img/business/casting/bg-pageHeader-casting-sp.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pageAd .pageHeaderInner {
    background: url(../img/ad/bg-pageHeader-ad-pc.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageAd .pageHeaderInner {
    background: url(../img/ad/bg-pageHeader-ad-sp.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pageProcess .pageHeaderInner {
    background: url(../img/process/bg-pageHeader-process-pc.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageProcess .pageHeaderInner {
    background: url(../img/process/bg-pageHeader-process-sp.jpg) no-repeat;
    background-size: cover;
  }
}

@media (min-width: 768px) {
  .pageMediamaterials .pageHeaderInner,
  .pageGuide .pageHeaderInner {
    background: url(../img/ad/bg-pageHeader-mediamaterials-pc.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  .pageMediamaterials .pageHeaderInner,
  .pageGuide .pageHeaderInner {
    background: url(../img/ad/bg-pageHeader-mediamaterials-sp.jpg) no-repeat;
    background-size: cover;
  }
}

/****************************************
page element
****************************************/
@media (min-width: 768px) {
  .mainContents {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2;
    color: #3e3e3e;
  }
  .mainContents p {
    margin: 0 0 25px 0;
    text-align: justify;
    letter-spacing: .03em;
  }
  .mainContents p.imgWrap {
    margin: 0 0 35px 0;
  }
  .mainContents strong {
    font-weight: 700;
  }
  .mainContents dl {
    margin: 0 0 25px 0;
  }
  .mainContents dl dd {
    margin: 0;
  }
  .mainContents ul.dotList {
    margin: 0 0 25px 0;
  }
  .mainContents ul.dotList li {
    margin-bottom: 8px;
    padding-left: 15px;
    line-height: 1.6;
    position: relative;
  }
  .mainContents ul.dotList li:before {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border: 1px solid #333;
    border-radius: 6px;
    position: absolute;
    top: 8px;
    left: 0;
  }
  .mainContents .headlineNormal {
    margin: 0 0 40px 0;
    font-size: 30px;
    font-size: 3rem;
    font-weight: 300;
    line-height: 1.6;
    text-align: center;
  }
  .mainContents .headlineBorder {
    margin: 0 0 30px 0;
    padding: 11px 0;
    font-size: 24px;
    font-size: 2.4rem;
    color: #1e489d;
    font-weight: 300;
    line-height: 1.6;
    border-bottom: 2px solid #ddd;
    position: relative;
  }
  .mainContents .headlineBorder:after {
    content: '';
    display: block;
    width: 200px;
    height: 2px;
    background-color: #1e489d;
    position: absolute;
    bottom: -2px;
    left: 0;
  }
  .mainContents .headLineCircle {
    clear: both;
    margin: 0 0 15px 0;
    padding-left: 20px;
    font-weight: 700;
    line-height: 1.6;
    position: relative;
  }
  .mainContents .headLineCircle:after {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    background-color: #00a0e9;
    border-radius: 15px;
    position: absolute;
    top: 5px;
    left: 0;
  }
  .mainContents .headLineBold {
    margin: 0 0 15px 0;
    font-size: 21px;
    font-size: 2.1rem;
    line-height: 1.6;
    font-weight: 700;
  }
  .mainContents .headLineBold span {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .mainContents .subHeadLine {
    margin: 0 0 15px 0;
    font-weight: 300;
    font-size: 21px;
    font-size: 2.1rem;
    line-height: 1.6;
  }
  .mainContents .headlineTable {
    margin: 15px 0 50px;
    text-align: center;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 1.6;
  }
  .mainContents .smallText {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .mainContents .paragraph {
    margin-bottom: 60px;
  }
  .mainContents .paragraph.last {
    margin-bottom: 0;
  }
  .mainContents .paragraph .last {
    margin-bottom: 0;
  }
  .mainContents .paragraph .paragraphInner {
    margin-bottom: 50px;
  }
  .mainContents .imageBox {
    margin-bottom: 25px;
    padding: 19px;
    border: 1px solid #e6e6e6;
    text-align: center;
  }
  .mainContents .imageBox img {
    max-width: 100%;
  }
  .mainContents .imageBox.withCaption {
    margin-bottom: 10px;
  }
  .mainContents .caption {
    margin-bottom: 0;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.6;
    color: #666;
  }
  .mainContents .caption a {
    color: #00a0e9;
  }
  .mainContents .caption a:hover {
    text-decoration: underline;
  }
  .mainContents .newLine {
    display: block;
  }
  .mainContents .clear {
    clear: both;
    margin-top: 25px;
  }
  .mainContents .textLink {
    color: #00a0e9;
  }
  .mainContents .textLinkLine {
    color: #00a0e9;
    text-decoration: underline;
  }
}
@media (max-width: 767px) {
  .mainContents {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 2;
    color: #3e3e3e;
  }
  .mainContents h3 {
    margin: 0 0 15px;
    font-size: 15px;
    font-weight: 500;
  }
  .mainContents img {
    max-width: 100%;
  }
  .mainContents p {
    margin: 0 0 20px 0;
    text-align: justify;
    letter-spacing: .03em;
  }
  .mainContents p.imgWrap {
    margin: 0 0 25px 0;
  }
  .mainContents strong {
    font-weight: 700;
  }
  .mainContents dl {
    margin: 0 0 25px 0;
  }
  .mainContents dl dd {
    margin: 0;
  }
  .mainContents ul.dotList {
    margin: 0 0 25px 0;
  }
  .mainContents ul.dotList li {
    margin-bottom: 15px;
    padding-left: 15px;
    line-height: 1.4;
    position: relative;
  }
  .mainContents ul.dotList li:before {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border: 1px solid #333;
    border-radius: 6px;
    position: absolute;
    top: 4px;
    left: 0;
  }
  .mainContents .headlineNormal {
    margin: 0 0 25px 0;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 300;
    line-height: 1.6;
    text-align: center;
  }
  .mainContents .headlineBorder {
    margin: 0 0 20px 0;
    padding: 10px 0;
    font-size: 16px;
    font-size: 1.6rem;
    color: #1e489d;
    font-weight: 300;
    line-height: 1.4;
    border-bottom: 2px solid #ddd;
    position: relative;
  }
  .mainContents .headlineBorder:after {
    content: '';
    display: block;
    width: 90px;
    height: 2px;
    background-color: #1e489d;
    position: absolute;
    bottom: -2px;
    left: 0;
  }
  .mainContents .headLineCircle {
    clear: both;
    margin: 0 0 10px 0;
    padding-left: 15px;
    font-weight: 700;
    line-height: 1.6;
    position: relative;
  }
  .mainContents .headLineCircle:after {
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    background-color: #00a0e9;
    border-radius: 12px;
    position: absolute;
    top: 4px;
    left: 0;
  }
  .mainContents .headLineBold {
    margin: 0 0 5px 0;
    line-height: 1.6;
    font-weight: 700;
  }
  .mainContents .subHeadLine {
    margin: 0 0 10px 0;
    font-weight: 300;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .mainContents .headlineTable {
    margin: 10px 0 30px;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.4;
  }
  .mainContents .smallText {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .mainContents .paragraph {
    margin-bottom: 30px;
  }
  .mainContents .paragraph.last {
    margin-bottom: 0;
  }
  .mainContents .paragraph .last {
    margin-bottom: 0;
  }
  .mainContents .paragraph .paragraphInner {
    margin-bottom: 40px;
  }
  .mainContents .imageBox {
    margin-bottom: 25px;
    padding: 9px;
    border: 1px solid #e6e6e6;
    text-align: center;
  }
  .mainContents .imageBox img {
    width: 100%;
  }
  .mainContents .imageBox.withCaption {
    margin-bottom: 10px;
  }
  .mainContents .caption {
    margin-bottom: 30px;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.6;
    color: #666;
  }
  .mainContents .caption a {
    color: #00a0e9;
    text-decoration: underline;
  }
  .mainContents .textLink {
    color: #00a0e9;
  }
  .mainContents .textLinkLine {
    color: #00a0e9;
    text-decoration: underline;
  }
  .mainContents .clear {
    clear: both;
    margin-top: 20px;
  }
  .movie {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
  }
.movie iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
  }
}

/****************************************
module
****************************************/
@media (min-width: 768px) {
  .leftArea {
    float: left;
  }
  .leftArea.col50 {
    width: 400px;
    margin-right: 40px;
  }
}

@media (min-width: 768px) {
  .rightArea {
    float: right;
  }
  .rightArea.col50 {
    width: 400px;
  }
}

.sectionPageLead .lead {
  font-weight: 500;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .sectionPageLead .lead {
    padding: 0 12px;
    line-height: 1.8;
  }
}

/*3分割横並び*/
.floatBoxWrap {
  padding-bottom: 20px;
}
.floatBoxWrap .floatBox {
  width: 100%;
}
.floatBoxWrap .floatBox .box {
  background-color: #fff;
}
@media (min-width: 768px) {
  .floatBoxWrap .floatBox .box {
    margin-right: 21px;
    width: 266px;
    float: left;
  }
  .floatBoxWrap .floatBox .box:last-child {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .floatBoxWrap .floatBox .box {
    margin: 0 0 20px 0;
    width: 100%;
  }
  .floatBoxWrap .floatBox .box:last-child {
    margin-bottom: 0;
  }
}
.floatBoxWrap .floatBox .box a {
  display: block;
  position: relative;
}
.floatBoxWrap .floatBox .box a:after {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  background: url(../img/bullet-squre-arrow.png) top left no-repeat;
  background-size: 20px;
  position: absolute;
  bottom: 0;
  right: 0;
}
.floatBoxWrap .floatBox .box .image img {
  width: 100%;
}
@media (min-width: 768px) {
  .floatBoxWrap .floatBox .box .image img {
    transition: opacity .2s ease-in;
  }
}
.floatBoxWrap .floatBox .box .textArea {
  display: table;
}
@media (min-width: 768px) {
  .floatBoxWrap .floatBox .box .textArea {
    padding: 20px 20px 40px;
  }
}
@media (max-width: 767px) {
  .floatBoxWrap .floatBox .box .textArea {
    padding: 20px 20px 25px;
  }
}
.floatBoxWrap .floatBox .box .textArea .head {
  width: 100%;
  display: table-row;
}
@media (min-width: 768px) {
  .floatBoxWrap .floatBox .box .textArea .head {
    height: 50px;
  }
}
.floatBoxWrap .floatBox .box .textArea .head h3 {
  display: table-cell;
  line-height: 1.2;
  vertical-align: middle;
  font-weight: 500;
}
@media (min-width: 768px) {
  .floatBoxWrap .floatBox .box .textArea .head h3 {
    margin: 0;
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media (max-width: 767px) {
  .floatBoxWrap .floatBox .box .textArea .head h3 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media (min-width: 768px) {
  .floatBoxWrap .floatBox .box .textArea .body {
    padding-top: 15px;
  }
}
@media (max-width: 767px) {
  .floatBoxWrap .floatBox .box .textArea .body {
    padding-top: 10px;
  }
}
.floatBoxWrap .floatBox .box .textArea .body .txt {
  display: table-row;
}
@media (min-width: 768px) {
  .floatBoxWrap .floatBox .box .textArea .body .txt {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.4;
  }
}
@media (max-width: 767px) {
  .floatBoxWrap .floatBox .box .textArea .body .txt {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.6;
  }
}
@media (min-width: 768px) {
  .floatBoxWrap .floatBox .box a {
    transition: color .2s ease-in;
  }
  .floatBoxWrap .floatBox .box a:hover {
    color: #00a0e9;
    box-shadow: 0px 2px 3px 1px rgba(0, 0, 0, 0.05);
  }
}

@media (min-width: 768px) {
  .boxList {
    margin-bottom: 50px;
  }
}
@media (max-width: 767px) {
  .boxList {
    margin-bottom: 0;
  }
}
.boxList .box {
  margin: 0;
  padding: 0;
  border-left: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
  border-top: 1px solid #e6e6e6;
}
.boxList .box:last-child {
  border-bottom: 1px solid #e6e6e6;
}
.boxList .box a.outer {
  display: block;
  position: relative;
}
.boxList .box a.outer .inner {
  display: table;
}
.boxList .box a.outer:after {
  content: '';
  display: block;
  margin-top: -10px;
  width: 20px;
  height: 20px;
  background: url(../img/bullet-boxList.png) top left no-repeat;
  background-size: 20px;
  position: absolute;
  top: 50%;
}
@media (min-width: 768px) {
  .boxList .box a.outer:after {
    right: 22px;
  }
}
@media (max-width: 767px) {
  .boxList .box a.outer:after {
    right: 10px;
  }
}
@media (min-width: 768px) {
  .boxList .box a.outer:hover {
    box-shadow: 0px 2px 3px 1px rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 768px) {
  .boxList.boxLinkList a {
    padding: 20px 50px 20px 0;
  }
}
@media (max-width: 767px) {
  .boxList.boxLinkList a {
    padding: 12px 36px 12px 12px;
  }
}
.boxList.boxLinkList a .inner {
  line-height: 1.6;
}
@media (min-width: 768px) {
  .boxList.boxLinkList a .inner {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
@media (max-width: 767px) {
  .boxList.boxLinkList a .inner {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
@media (min-width: 768px) {
  .boxList.boxLinkList a .inner .date {
    display: table-cell;
    width: 170px;
    padding-left: 25px;
    text-align: left;
    transition: color .2s ease-in;
  }
}
@media (max-width: 767px) {
  .boxList.boxLinkList a .inner .date {
    display: inline-block;
  }
}
@media (min-width: 768px) {
  .boxList.boxLinkList a .inner .area {
    display: table-cell;
    min-width: 80px;
  }
}
@media (max-width: 767px) {
  .boxList.boxLinkList a .inner .area {
    display: inline-block;
    margin-left: 1.5em;
    font-size: 11px;
    font-size: 1.1rem;
  }
}
.boxList.boxLinkList a .inner .area span {
  display: inline-block;
  padding: 0 1em;
  background-color: #1e489d;
  color: #fff;
  line-height: 20px;
}
.boxList.boxLinkList a .inner .title {
  font-weight: 500;
}
@media (min-width: 768px) {
  .boxList.boxLinkList a .inner .title {
    display: table-cell;
    transition: color .2s ease-in;
  }
}
@media (max-width: 767px) {
  .boxList.boxLinkList a .inner .title {
    margin-top: 6px;
  }
}
@media (min-width: 768px) {
  .boxList.boxLinkList a:hover .date,
  .boxList.boxLinkList a:hover .title {
    color: #00a0e9;
  }
}

.pageDownload .boxList.boxLinkList a{
  padding: 20px 50px 20px 25px;
  font-weight: 500;
}

/*テーブル*/
@media (max-width: 767px) {
  .tableWrap {
    padding: 0 15px;
  }
}
@media (min-width: 768px) {
  .tableWrap .tableHead .tableInfo {
    text-align: center;
  }
}
.tableWrap .tableHead .tableInfo li {
  display: inline-block;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .tableWrap .tableHead .tableInfo li {
    margin-right: 15px;
  }
}
@media (max-width: 767px) {
  .tableWrap .tableHead .tableInfo li {
    margin-right: 10px;
  }
}
.tableWrap .tableHead .tableInfo li:last-child {
  margin-right: 0;
}
.tableWrap .tableHead .tableInfo li span {
  display: inline-block;
  padding: 0 6px;
  font-weight: 300;
  color: #fff;
  background-color: #1e489d;
}
@media (min-width: 768px) {
  .tableWrap .tableHead .tableInfo li span {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
@media (max-width: 767px) {
  .tableWrap .tableHead .tableInfo li span {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
.tableWrap .dlTable {
  margin-bottom: 0;
  border-top: 1px solid #e6e6e6;
  line-height: 1.8;
}
.tableWrap .dlTable dt {
  font-weight: 500;
}
.tableWrap .dlTable .listMergin{
  margin-bottom: 1em;
}
@media (min-width: 768px) {
  .tableWrap .dlTable dt {
    clear: both;
    width: 210px;
    float: left;
  }
  .tableWrap .dlTable dt .inner {
    padding: 18px 25px;
  }
}
@media (max-width: 767px) {
  .tableWrap .dlTable dt {
    margin-bottom: 5px;
    padding-top: 12px;
  }
}
.tableWrap .dlTable dd {
  border-bottom: 1px solid #e6e6e6;
}
@media (min-width: 768px) {
  .tableWrap .dlTable dd {
    padding-left: 210px;
  }
  .tableWrap .dlTable dd .inner {
    padding: 18px 25px 18px 0;
  }
}
@media (max-width: 767px) {
  .tableWrap .dlTable dd {
    padding-bottom: 12px;
  }
}
@media (min-width: 768px) {
  .tableWrap .dlTable.dlTableSmall {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .tableWrap .dlTable.dlTableSmall dt {
    width: 110px;
  }
  .tableWrap .dlTable.dlTableSmall dt .inner {
    padding: 15px 10px 15px 20px;
  }
  .tableWrap .dlTable.dlTableSmall dd {
    padding: 0 0 0 110px;
  }
  .tableWrap .dlTable.dlTableSmall dd .inner {
    padding: 15px 20px 15px 0;
  }
}

@media (min-width: 768px) {
  .floatBoxListWrap .floatBoxList {
    margin-right: -22px;
  }
}
.floatBoxListWrap .floatBoxList .box {
  float: left;
  position: relative;
}
@media (min-width: 768px) {
  .floatBoxListWrap .floatBoxList .box {
    width: 408px;
    margin: 0 22px 20px 0;
  }
}
@media (max-width: 767px) {
  .floatBoxListWrap .floatBoxList .box {
    width: 100%;
    margin: 0 0 10px 0;
  }
}
.floatBoxListWrap .floatBoxList .box.last {
  margin: 0 22px 0 0;
}
.floatBoxListWrap .floatBoxList .box .outer {
  display: table;
  width: 100%;
  border: 1px solid #e6e6e6;
}
.floatBoxListWrap .floatBoxList .box .outer .image {
  display: table-cell;
  vertical-align: middle;
  border-right: 1px solid #e6e6e6;
  text-align: center;
}
@media (min-width: 768px) {
  .floatBoxListWrap .floatBoxList .box .outer .image {
    padding: 0 15px;
    width: 141px;
  }
  .floatBoxListWrap .floatBoxList .box .outer .image img {
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .floatBoxListWrap .floatBoxList .box .outer .image {
    padding: 0 10px;
    width: 91px;
    text-align: center;
  }
  .floatBoxListWrap .floatBoxList .box .outer .image img {
    width: 55px;
  }
}
.floatBoxListWrap .floatBoxList .box .outer .textArea {
  display: table-cell;
  vertical-align: top;
}
@media (min-width: 768px) {
  .floatBoxListWrap .floatBoxList .box .outer .textArea {
    padding: 20px;
  }
}
@media (max-width: 767px) {
  .floatBoxListWrap .floatBoxList .box .outer .textArea {
    padding: 12px;
  }
}
.floatBoxListWrap .floatBoxList .box .outer .textArea .head h3 {
  margin: 0 0 10px 0;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .floatBoxListWrap .floatBoxList .box .outer .textArea .head h3 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media (max-width: 767px) {
  .floatBoxListWrap .floatBoxList .box .outer .textArea .head h3 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.floatBoxListWrap .floatBoxList .box .outer .textArea .body .txt {
  margin: 0;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .floatBoxListWrap .floatBoxList .box .outer .textArea .body .txt {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
@media (max-width: 767px) {
  .floatBoxListWrap .floatBoxList .box .outer .textArea .body .txt {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
.floatBoxListWrap .floatBoxList .box .outer:after {
  content: '';
  display: block;
  background: url(../img/bullet-squre-arrow.png) top left no-repeat;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media (min-width: 768px) {
  .floatBoxListWrap .floatBoxList .box .outer:after {
    width: 20px;
    height: 20px;
    background-size: 20px;
  }
}
@media (max-width: 767px) {
  .floatBoxListWrap .floatBoxList .box .outer:after {
    width: 15px;
    height: 15px;
    background-size: 15px;
  }
}
@media (min-width: 768px) {
  .floatBoxListWrap .floatBoxList .box .outer {
    transition: color .2s ease-in;
  }
  .floatBoxListWrap .floatBoxList .box .outer:hover {
    color: #00a0e9;
    box-shadow: 0px 2px 3px 1px rgba(0, 0, 0, 0.05);
  }
}

@media (max-width: 767px) {
  .tableNormalWrap {
    padding: 0 12px;
  }
}
.tableNormalWrap .title {
  font-weight: 700;
  margin: 0;
}
.tableNormalWrap .tableNormal {
  border-top: 2px solid #ccc;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .tableNormalWrap .tableNormal {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
@media (max-width: 767px) {
  .tableNormalWrap .tableNormal {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
.tableNormalWrap .tableNormal dt {
  font-weight: 700;
}
@media (min-width: 768px) {
  .tableNormalWrap .tableNormal dt {
    clear: both;
    padding: 10px 0;
    width: 110px;
    float: left;
  }
}
@media (max-width: 767px) {
  .tableNormalWrap .tableNormal dt {
    padding: 10px 0 5px;
  }
}
.tableNormalWrap .tableNormal dd {
  border-bottom: 1px dotted #ccc;
}
@media (min-width: 768px) {
  .tableNormalWrap .tableNormal dd {
    padding: 10px 0 10px 125px;
  }
}
@media (max-width: 767px) {
  .tableNormalWrap .tableNormal dd {
    padding: 0 0 10px;
  }
}
.tableNormalWrap .tableNormal dd .area {
  margin-bottom: 0;
}

.btnWrap {
  text-align: center;
}

.btnNormal {
  display: inline-block;
}
.btnNormal a {
  display: block;
  position: relative;
  border: 1px solid #00a0e9;
  text-align: center;
  color: #00a0e9;
}
@media (min-width: 768px) {
  .btnNormal a {
    padding: 0 40px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 50px;
  }
}
@media (max-width: 767px) {
  .btnNormal a {
    padding: 0 30px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 40px;
  }
}
@media (min-width: 768px) {
  .btnNormal a {
    transition: background-color .2s ease-in;
  }
}
.btnNormal a:after {
  content: '';
  display: block;
  width: 6px;
  height: 10px;
  background: url(../img/bullet-gNavi.png) top left no-repeat;
  position: absolute;
}
@media (min-width: 768px) {
  .btnNormal a:after {
    top: 20px;
    right: 20px;
  }
}
@media (max-width: 767px) {
  .btnNormal a:after {
    top: 15px;
    right: 15px;
  }
}
@media (min-width: 768px) {
  .btnNormal a:hover {
    background-color: #00a0e9;
    color: #fff;
  }
  .btnNormal a:hover:after {
    background: url(../img/bullet-gNavi-white.png) top left no-repeat;
  }
}
@media (min-width: 768px) {
  .btnNormal.btnSmall a {
    padding: 0 20px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 32px;
  }
}
@media (max-width: 767px) {
  .btnNormal.btnSmall a {
    margin-top: 15px;
    padding: 0 20px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 32px;
  }
}
@media (min-width: 768px) {
  .btnNormal.btnSmall a:after {
    top: 12px;
    right: 8px;
  }
}
@media (max-width: 767px) {
  .btnNormal.btnSmall a:after {
    top: 12px;
    right: 8px;
  }
}

@media (min-width: 768px) {
  .btnList {
    margin-top: 60px;
  }
}
@media (max-width: 767px) {
  .btnList {
    padding: 0 34px;
  }
}
@media (min-width: 768px) {
  .btnList li {
    margin-right: 40px;
    width: 290px;
    float: left;
  }
}
@media (max-width: 767px) {
  .btnList li {
    margin: 0 0 20px 0;
  }
}
.btnList li:last-child {
  margin-right: 0;
}
.btnList li a {
  display: block;
  position: relative;
  border: 1px solid #00a0e9;
  text-align: center;
  color: #00a0e9;
}
@media (min-width: 768px) {
  .btnList li a {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 50px;
  }
}
@media (max-width: 767px) {
  .btnList li a {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 40px;
  }
}
@media (min-width: 768px) {
  .btnList li a {
    transition: background-color .2s ease-in;
  }
}
.btnList li a:after {
  content: '';
  display: block;
  width: 6px;
  height: 10px;
  background: url(../img/bullet-gNavi.png) top left no-repeat;
  position: absolute;
}
@media (min-width: 768px) {
  .btnList li a:after {
    top: 20px;
    right: 20px;
  }
}
@media (max-width: 767px) {
  .btnList li a:after {
    top: 15px;
    right: 15px;
  }
}
@media (min-width: 768px) {
  .btnList li a:hover {
    background-color: #00a0e9;
    color: #fff;
  }
}
.btnList li.buy a:after {
  width: 12px;
  height: 10px;
  background: url(../img/bullet-external.png) top left no-repeat;
}
@media (min-width: 768px) {
  .btnList li.buy a:hover:after {
    background: url(../img/bullet-external.png) bottom left no-repeat;
  }
}
@media (min-width: 768px) {
  .btnList li.material a:hover:after {
    background: url(../img/bullet-gNavi-white.png) top left no-repeat;
  }
}
.btnList.btnOne li {
  float: none;
  margin: 0 auto;
}

/*タブ*/
@media (min-width: 768px) {
  .tabHead {
    margin-bottom: 40px;
    border-bottom: 1px solid #1e489d;
  }
  .tabHead li {
    display: inline-block;
    margin-right: 10px;
    width: 150px;
    border-top: 1px solid #e6e6e6;
    border-left: 1px solid #e6e6e6;
    border-right: 1px solid #e6e6e6;
    line-height: 50px;
    text-align: center;
    color: #999;
    font-weight: 500;
    transition: background-color .2s ease-in;
  }
  .tabHead li:last-child {
    margin-right: 0;
  }
  .tabHead li:hover {
    cursor: pointer;
    background-color: #1e489d;
    color: #fff;
  }
  .tabHead li.select {
    border-top: 1px solid #1e489d;
    border-left: 1px solid #1e489d;
    border-right: 1px solid #1e489d;
    color: #1e489d;
    position: relative;
  }
  .tabHead li.select:hover {
    background-color: #fff;
    color: #1e489d;
  }
  .tabHead li.select:after {
    content: '';
    width: 148px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 0;
    bottom: -1px;
  }

  .tabWrap {
    position: relative;
  }
  .tabWrap .tabBody {
    position: relative;
    display: none;
  }
  .tabWrap .tabBody:first-child {
    display: block;
  }
}
/****************************************
billboard
****************************************/
#billboard {
  width: 100%;
  position: relative;
}
@media (min-width: 768px) {
  #billboard .billboardWrap {
    height: 500px;
    background: url(../img/pc-top-billboard-2120.jpg) top left no-repeat;
    background-size: 1060px;
  }
}
@media (min-width: 1280px) {
  #billboard .billboardWrap {
    padding-top: 47.16%;
    height: 0;
    background: url(../img/pc-top-billboard-2120.jpg) no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  #billboard .billboardWrap {
    height: 425px;
    background: url(../img/sp-top-main.jpg) no-repeat;
    background-size: cover;
  }
}
#billboard .billboardWrap .logo70th {
  position: absolute;
}
@media (min-width: 768px) {
  #billboard .billboardWrap .logo70th {
    width: 180px;
    height: 111px;
    top: 120px;
    left: 190px;
  }
}
@media (min-width: 1280px) {
  #billboard .billboardWrap .logo70th {
    width: 16.98%;
    top: 24%;
    left: 17.92%;
  }
}
@media (max-width: 767px) {
  #billboard .billboardWrap .logo70th {
    margin-left: -45px;
    width: 90px;
    height: 55px;
    top: 35px;
    left: 50%;
  }
}
#billboard .billboardWrap .logo70th img {
  width: 100%;
}
#billboard .billboardWrap .corporateLogo {
  position: absolute;
}
@media (min-width: 768px) {
  #billboard .billboardWrap .corporateLogo {
    width: 340px;
    height: 58px;
    top: 260px;
    left: 110px;
  }
}
@media (min-width: 1280px) {
  #billboard .billboardWrap .corporateLogo {
    width: 32.07%;
    top: 52%;
    left: 10.37%;
  }
}
@media (max-width: 767px) {
  #billboard .billboardWrap .corporateLogo {
    padding: 0;
    margin: 0 0 0 -85px;
    width: 170px;
    height: 29px;
    left: 50%;
    top: 110px;
  }
}
#billboard .billboardWrap .corporateLogo img {
  width: 100%;
  vertical-align: top;
}
#billboard .billboardWrap .textArea {
  background-color: #fff;
  position: absolute;
}

#billboard .billboardWrap .message60Area {
  width: 250px;
  height: 270px;
  background: rgba(255,255,255,0.85);
  position: absolute;
  top:25%;
  right:110px;
}

#billboard .billboardWrap .message60Area a {
  padding-top: 25px;
  display: block;
  height: 100%;
  position: relative;
}
#billboard .billboardWrap .message60Area a::after{
  content: '';
  width: 20px;
  height: 20px;
  display: block;
  background: url(../img/bullet-squre-arrow.png) top left no-repeat;
  background-size: 20px;
  position: absolute;
  right: 0;
  bottom: 0;
}
#billboard .billboardWrap .message60Area .image{
  margin-bottom: 25px;
  text-align: center;
}
#billboard .billboardWrap .message60Area .text {
  margin-bottom: 0;
  text-align: center;
  font-size: 15px;
  line-height: 1.6;
}
#billboard .billboardWrap .message60Area .text span{
  font-size: 18px;
}

@media (max-width: 767px) {
  #billboard .billboardWrap .message60Area {
    width: calc(100% - 40px);
    height: auto;
    position: absolute;
    top:auto;
    right:auto;
    bottom:40px;
    left:20px;
  }
  #billboard .billboardWrap .message60Area a {
    padding: 20px 0;
    display: flex;
    justify-content: space-between;
    align-items:center;
  }
  #billboard .billboardWrap .message60Area .image {
    margin-bottom: 0;
    width: 48%;
  }
  #billboard .billboardWrap .message60Area .image img {
    width: 75%;
  }
  #billboard .billboardWrap .message60Area .text {
    width: 48%;
    padding-right: 20px;
    text-align: left;
  }
  #billboard .billboardWrap .message60Area .text {
    font-size: 14px;
  }
  #billboard .billboardWrap .message60Area .text span{
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  #billboard .billboardWrap .textArea {
    width: 440px;
    height: 360px;
    top: 60px;
    right: 50px;
  }
}
@media (min-width: 1280px) {
  #billboard .billboardWrap .textArea {
    width: 41.5%;
    height: 72%;
    top: 12.4%;
    left: 53.77%;
  }
}
@media (max-width: 767px) {
  #billboard .billboardWrap .textArea {
    margin-left: -130px;
    width: 260px;
    height: 212px;
    background-color: #fff;
    top: 180px;
    left: 50%;
  }
}
#billboard .billboardWrap .textArea:after {
  content: '';
  display: block;
  width: 50px;
  height: 50px;
  position: absolute;
  top: -10px;
  left: -10px;
  background: url(../img/bg-gifAnime-year.png) top right no-repeat;
  background-size: 100%;
}
#billboard .billboardWrap .textArea img {
  width: 100%;
}

/*=== 70周年画像　====*/
#topBannerArea {
  padding: 1px 0 0 0;
  background-color: #e6e6e6;
}
@media (min-width: 768px) {
  #topBannerArea {
    min-width: 1000px;
  }
}
#topBannerArea .bannerList {
  background-color: #fff;
}
@media (min-width: 768px) {
  #topBannerArea .bannerList {
    width: 50%;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList {
    width: 100%;
  }
}
@media (min-width: 768px) {
  #topBannerArea .bannerList.left {
    float: left;
    border-right: 1px solid #e6e6e6;
  }
}
@media (min-width: 768px) {
  #topBannerArea .bannerList.right {
    float: right;
    border-right: 1px solid #e6e6e6;
  }
}
#topBannerArea .bannerList li {
  background-color: #f6f6f6;
  border-bottom: 1px solid #e6e6e6;
  position: relative;
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li {
    padding: 15px 0 15px 15px;
  }
}
@media (min-width: 768px) {
  #topBannerArea .bannerList li.pub {
    background: url(../img/bg-bannerList-pub.jpg) top right no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li.pub {
    background: url(../img/bg-sp-bannerList-pub.jpg) top right no-repeat;
    background-size: cover;
  }
}
@media (min-width: 768px) {
  #topBannerArea .bannerList li.recruit {
    background: url(../img/bg-bannerList-recruit.jpg) top right no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li.recruit {
    background: url(../img/bg-sp-bannerList-recruit.jpg) top right no-repeat;
    background-size: cover;
  }
}
@media (min-width: 768px) {
  #topBannerArea .bannerList li.mukouda {
    background: url(../img/bg-bannerList-mukouda.jpg) top right no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li.mukouda {
    background: url(../img/bg-sp-bannerList-mukouda.jpg) top right no-repeat;
    background-size: cover;
  }
}
@media (min-width: 768px) {
  #topBannerArea .bannerList li.listing {
    background: url(../img/bg-bannerList-listing.jpg) top right no-repeat;
    background-size: cover;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li.listing {
    background: url(../img/bg-sp-bannerList-listing.jpg) top right no-repeat;
    background-size: cover;
  }
}
#topBannerArea .bannerList li a {
  display: block;
  transition: color .2s ease-in;
}
#topBannerArea .bannerList li a p {
  margin: 0;
}
#topBannerArea .bannerList li a:hover {
  color: #00a0e9;
}
#topBannerArea .bannerList li a:hover .subtitle {
  color: #00a0e9;
}
#topBannerArea .bannerList li a:hover .text:before {
  background-color: #00a0e9;
}
#topBannerArea .bannerList li .text {
  height: 0;
  background-color: #fff;
  position: relative;
}
@media (min-width: 768px) {
  #topBannerArea .bannerList li .text {
    width: 33.33%;
    padding-top: 33.33%;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li .text {
    width: 35%;
    padding-top: 35%;
  }
}
@media (min-width: 768px) {
  #topBannerArea .bannerList li .text.innerRight {
    margin-left: 66.67%;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li .text.innerRight {
    margin-left: 60%;
    margin-left: calc(65% - 15px);
  }
}
#topBannerArea .bannerList li .text:before {
  content: '';
  display: block;
  background-color: #1e489d;
  position: absolute;
  top: 61%;
  left: 50%;
}
@media (min-width: 768px) {
  #topBannerArea .bannerList li .text:before {
    margin-left: -20px;
    width: 40px;
    height: 2px;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li .text:before {
    margin-left: -7px;
    width: 15px;
    height: 1px;
  }
}
#topBannerArea .bannerList li .text:after {
  content: '';
  display: block;
  background: url(../img/bullet-squre-arrow.png) top left no-repeat;
  background-size: 20px;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media (min-width: 768px) {
  #topBannerArea .bannerList li .text:after {
    width: 20px;
    height: 20px;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li .text:after {
    width: 15px;
    height: 15px;
    background-size: 15px;
  }
}
#topBannerArea .bannerList li .text .title {
  width: 100%;
  position: absolute;
  top: 22.72%;
  left: 0;
  line-height: 1.3;
  font-weight: 300;
  text-align: center;
}
@media (min-width: 768px) {
  #topBannerArea .bannerList li .text .title {
    font-size: 21px;
    font-size: 2.1rem;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li .text .title {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
#topBannerArea .bannerList li .text .title.line1 {
  top: 31%;
}
#topBannerArea .bannerList li .text .subtitle {
  width: 100%;
  position: absolute;
  top: 70%;
  left: 0;
  line-height: 1;
  color: #1e489d;
  text-align: center;
}
@media (min-width: 768px) {
  #topBannerArea .bannerList li .text .subtitle {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
@media (max-width: 767px) {
  #topBannerArea .bannerList li .text .subtitle {
    font-size: 10px;
    font-size: 1rem;
  }
}

/****************************************
top
****************************************/
@media (min-width: 768px) {
  .home .topNews {
    padding: 40px 0 0 0;
    background-color: #f6f6f6;
  }
  .home .topNews:last-child {
    padding: 40px 0 60px;
  }
  .home .topNews .sectionLiqiud {
    padding: 40px 40px 40px 260px;
    min-height: 160px;
    position: relative;
  }
  .home .topNews .newsHead {
    width: 220px;
    position: absolute;
    top: 40px;
    left: 40px;
  }
  .home .topNews .newsHead h2 {
    margin: 0 0 30px 0;
    padding: 0 0 15px 0;
    font-size: 21px;
    font-size: 2.1rem;
    font-weight: 300;
    line-height: 1.2;
    position: relative;
  }
  .home .topNews .newsHead h2:after {
    content: '';
    display: block;
    width: 40px;
    height: 2px;
    background-color: #1e489d;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .home .topNews .newsHead .bulletLink {
    line-height: 16px;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .home .topNews .newsBody .newsList {
    margin-bottom: 0;
    line-height: 1.6;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .home .topNews .newsBody .newsList dt {
    width: 100px;
    clear: both;
    float: left;
    font-weight: bold;
    color: #00a0e9;
  }
  .home .topNews .newsBody .newsList dd {
    margin-bottom: 15px;
    padding: 0 0 15px 100px;
    border-bottom: 1px dotted #ccc;
  }
  .home .topNews .newsBody .newsList dd:last-child {
    margin-bottom: 0;
    padding: 0 0 0 100px;
    border-bottom: 0;
  }
  .home .topNews .newsBody .newsList dd a {
    position: relative;
    transition: color .2s ease-in;
  }
  .home .topNews .newsBody .newsList dd a:hover {
    color: #00a0e9;
  }
  .home .topNews .newsBody.newsRelease dd a:after {
    content: '';
    display: block;
    width: 12px;
    height: 10px;
    background: url(../img/bullet-external-gray.png) top left no-repeat;
    position: absolute;
    bottom: 4px;
    right: -14px;
  }
}
@media (max-width: 767px) {
  .home .topNews {
    padding: 30px 0 0 0;
    background-color: #f6f6f6;
  }
  .home .topNews:last-child {
    padding: 30px 0 50px;
  }
  .home .topNews .newsHead {
    margin-bottom: 20px;
    position: relative;
  }
  .home .topNews .newsHead h2 {
    margin: 0;
    padding-bottom: 10px;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1.4;
    position: relative;
  }
  .home .topNews .newsHead h2:after {
    content: '';
    display: block;
    width: 30px;
    height: 2px;
    background-color: #1e489d;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .home .topNews .newsHead .bulletLink {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 16px;
    position: absolute;
    top: 4px;
    right: 0;
  }
  .home .topNews .newsBody dl {
    margin: 0;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.8;
  }
  .home .topNews .newsBody dl dt {
    font-weight: 500;
    color: #00a0e9;
  }
  .home .topNews .newsBody dl dd {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px dotted #ccc;
  }
  .home .topNews .newsBody dl dd:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  .home .topNews .newsBody dl dd a {
    position: relative;
  }
  .home .topNews .newsBody.newsRelease dd a:after {
    content: '';
    display: block;
    width: 12px;
    height: 10px;
    background: url(../img/bullet-external-gray.png) top left no-repeat;
    position: absolute;
    bottom: 4px;
    right: -14px;
  }
}

/****************************************
corporate
****************************************/
@media (min-width: 768px) {
  .sectionCorporate p.imgWrap {
    width: 840px;
    height: 200px;
    margin-bottom: 40px;
  }
  .sectionCorporate p.imgWrap img {
    display: none;
  }
}
.sectionCorporate .dlTable .area {
  position: relative;
  padding: 5px 0;
}
@media (min-width: 768px) {
  .sectionCorporate .dlTable .area {
    margin-bottom: 25px;
  }
}
@media (max-width: 767px) {
  .sectionCorporate .dlTable .area {
    margin-bottom: 15px;
  }
}
.sectionCorporate .dlTable .area:last-child {
  margin-bottom: 10px;
}
.sectionCorporate .dlTable .area p {
  margin-bottom: 0;
}
.sectionCorporate .dlTable .area .title {
  margin-bottom: 5px;
  padding-left: 10px;
  font-weight: 700;
  border-left: 6px solid #00a0e9;
}
@media (min-width: 768px) {
  .sectionCorporate .dlTable .area .btnNormal {
    position: absolute;
    top: 5px;
    right: 0;
  }
}
.sectionCorporate .bulletLink {
  margin-bottom: 5px;
}
.sectionCorporate .bulletLink:last-child {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .pageOutline .sectionCorporate .imgWrap {
    background: url(../img/corporate/img-company-profile-pc.jpg) top left no-repeat;
  }

  .pageMessage .sectionCorporate .imgWrap {
    background: url(../img/corporate/img_corporate_message01.jpg) top left no-repeat;
  }

  .pageMessage60 .sectionCorporate p.imgWrap {
    height: 250px;
  }
  .pageMessage60 .sectionCorporate .imgWrap {
    background: url(../img/corporate/img_corporate_message60-pc.jpg) top left no-repeat;
  }
}
@media (min-width: 768px) {
  .pageMessage .signatureArea {
    margin-top: 40px;
    text-align: right;
  }
  .pageMessage .signatureArea dt {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .pageMessage .signatureArea dd {
    font-size: 21px;
    font-size: 2.1rem;
    font-weight: 500;
  }
}
@media (max-width: 767px) {
  .pageMessage .signatureArea {
    margin-top: 20px;
    text-align: right;
  }
  .pageMessage .signatureArea dt {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .pageMessage .signatureArea dd {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 500;
  }
}

@media (min-width: 768px) {
  .pageHistory .sectionContents {
    padding: 100px 0;
  }
  .pageHistory #historyArea {
    height: 100%;
    position: relative;
  }
  .pageHistory #historyArea:after {
    content: '';
    display: block;
    width: 1px;
    height: 100%;
    background-color: #1e489d;
    position: absolute;
    left: 50%;
    top: 0;
  }
  .pageHistory #historyArea .decade {
    margin-bottom: 30px;
  }
  .pageHistory #historyArea .decade.left {
    padding-right: 460px;
  }
  .pageHistory #historyArea .decade.left h3 {
    margin-right: -40px;
  }
  .pageHistory #historyArea .decade.left h3 .dot {
    top: 31px;
    right: -10px;
    z-index: 2;
  }
  .pageHistory #historyArea .decade.left h3 .dot.viewpoint {
    width: 32px;
    height: 32px;
    background-color: #1e489d;
    top: 25px;
    right: -16px;
  }
  .pageHistory #historyArea .decade.left h3 .dotFirst {
    width: 32px;
    height: 32px;
    background-color: #1e489d;
    top: 25px;
    right: -16px;
  }
  .pageHistory #historyArea .decade.right {
    padding-left: 460px;
  }
  .pageHistory #historyArea .decade.right h3 {
    margin-left: -40px;
    padding-left: 40px;
  }
  .pageHistory #historyArea .decade.right h3 .dot {
    top: 31px;
    left: -10px;
    z-index: 2;
  }
  .pageHistory #historyArea .decade.right h3 .dot.viewpoint {
    width: 32px;
    height: 32px;
    background-color: #1e489d;
    top: 25px;
    left: -16px;
  }
  .pageHistory #historyArea .decade h3 {
    margin: 0 0 30px 0;
    padding-bottom: 10px;
    width: 420px;
    line-height: 1;
    font-weight: 400;
    border-bottom: 2px solid #1e489d;
    position: relative;
    color: #1e489d;
  }
  .pageHistory #historyArea .decade h3 .year {
    display: inline-block;
    margin-right: 2px;
    font-size: 32px;
    font-weight: 300;
    letter-spacing: 0.05em;
  }
  .pageHistory #historyArea .decade h3 .dot,
  .pageHistory #historyArea .decade h3 .dotFirst {
    display: block;
    width: 20px;
    height: 20px;
    border: 2px solid #1e489d;
    background-color: #fff;
    position: absolute;
    border-radius: 20px;
  }
  .pageHistory #historyArea .decade h3 .dot {
    transition: all .5s ease-out;
  }
  .pageHistory #historyArea .decade dl {
    margin-bottom: 0;
    padding-left: 15px;
  }
  .pageHistory #historyArea .decade dl dt {
    margin-bottom: 5px;
    font-weight: 700;
    line-height: 1.6;
    font-weight: 13px;
  }
  .pageHistory #historyArea .decade dl dd {
    line-height: 1.6;
    margin-bottom: 20px;
  }
  .pageHistory #historyArea .decade dl dd:last-child {
    margin-bottom: 0;
  }
  .pageHistory #historyArea .decade dl dd a {
    color: #00a0e9;
    text-decoration: underline;
  }
}
@media (max-width: 767px) {
  .pageHistory #historyArea {
    position: relative;
  }
  .pageHistory #historyArea:after {
    content: '';
    display: block;
    width: 1px;
    height: 100%;
    background-color: #1e489d;
    position: absolute;
    left: 15px;
    top: 0;
  }
  .pageHistory #historyArea .decade {
    margin-bottom: 30px;
  }
  .pageHistory #historyArea .decade h3 {
    margin-bottom: 0;
    padding-left: 40px;
    border-bottom: 1px solid #1e489d;
    position: relative;
    font-size: 12px;
  }
  .pageHistory #historyArea .decade h3 .year {
    font-size: 18px;
    line-height: 1;
    padding-bottom: 10px;
  }
  .pageHistory #historyArea .decade h3 .dot, .pageHistory #historyArea .decade h3 .dotFirst {
    display: block;
    width: 16px;
    height: 16px;
    border: 2px solid #1e489d;
    background-color: #fff;
    border-radius: 10px;
    position: absolute;
    top: 16px;
    left: 7px;
    z-index: 2;
  }
  .pageHistory #historyArea .decade dl {
    margin: 0;
    padding-left: 40px;
  }
  .pageHistory #historyArea .decade dl dt {
    margin-bottom: 5px;
    padding-top: 12px;
    font-weight: 500;
  }
  .pageHistory #historyArea .decade dl dd {
    padding-bottom: 12px;
    border-bottom: 1px solid #e6e6e6;
  }
  .pageHistory #historyArea .decade dl dd:last-child {
    border: none;
  }
  .pageHistory #historyArea .decade dl dd a {
    color: #00a0e9;
    text-decoration: underline;
  }
}

@media (min-width: 768px) {
  .mapArea {
    margin: 30px auto 0;
    width: 780px;
    height: 360px;
    border: 1px solid #e6e6e6;
  }
}
@media (max-width: 767px) {
  .mapArea {
    margin: 20px 15px 0;
    height: 260px;
    border: 1px solid #e6e6e6;
  }
}

/****************************************
business
****************************************/
@media (min-width: 768px) {
  .pagePub .sectionContents {
    padding: 60px 0 80px;
  }
  .pagePub .sectionContents.sectionPageLead {
    padding: 60px 0;
  }
}
@media (max-width: 767px) {
  .pagePub .sectionContents {
    padding: 30px 0 40px;
  }
  .pagePub .sectionContents.sectionPageLead {
    padding: 30px 0;
  }
}

@media (min-width: 768px) {
  .pageMagazine .sectionMagazineLead {
    padding: 40px 0;
  }
  .pageMagazine .sectionMagazineLead .lead {
    margin: 0;
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.4;
    font-weight: 300;
  }
}
@media (max-width: 767px) {
  .pageMagazine .sectionMagazineLead {
    padding: 30px 0 20px;
  }
  .pageMagazine .sectionMagazineLead .lead {
    font-size: 15px;
    font-weight: 300;
  }
}
@media (min-width: 768px) {
  .pageMagazine .magazineInner {
    padding-right: 220px;
    position: relative;
  }
}
.pageMagazine .magazineInner .logoImage {
  border: 1px solid #e6e6e6;
  text-align: center;
}
@media (min-width: 768px) {
  .pageMagazine .magazineInner .logoImage {
    padding: 25px 10px;
    width: 180px;
    position: absolute;
    top: 0;
    right: 0;
  }
  .pageMagazine .magazineInner .logoImage img {
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .pageMagazine .magazineInner .logoImage {
    width: 178px;
    padding: 15px 10px;
    margin: 0 auto 25px;
    text-align: center;
  }
  .pageMagazine .magazineInner .logoImage img {
    max-width: 158px;
  }
}
.pageMagazine .magazineInner h4 {
  margin: 0 0 25px 0;
  line-height: 1.6;
  font-weight: 300;
}
@media (min-width: 768px) {
  .pageMagazine .magazineInner h4 {
    font-size: 21px;
    font-size: 2.1rem;
  }
}
@media (max-width: 767px) {
  .pageMagazine .magazineInner h4 {
    font-size: 15px;
    font-size: 1.5rem;
  }
}
@media (min-width: 768px) {
  .pageMagazine .magazineInner .tableNormalWrap {
    margin-top: 40px;
  }
}
.pageMagazine .magazineInner .tableNormalWrap .tableNormal .map {
  padding: 20px 0;
}
@media (max-width: 767px) {
  .pageMagazine .magazineInner .tableNormalWrap .tableNormal .map {
    text-align: center;
  }
  .pageMagazine .magazineInner .tableNormalWrap .tableNormal .map img {
    width: 230px;
  }
}
@media (min-width: 768px) {
  .pageMagazine .pubLink {
    padding: 30px 30px 30px 0;
    border: 2px solid #e6e6e6;
    display: table;
    width: 100%;
  }
  .pageMagazine .pubLink .title {
    margin: 0;
    display: table-cell;
    width: 220px;
    vertical-align: middle;
    text-align: center;
    font-size: 21px;
    font-size: 2.1rem;
    line-height: 1.6;
    font-weight: 300;
  }
  .pageMagazine .pubLink .title span {
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: 300;
    display: block;
  }
  .pageMagazine .pubLink .linkList {
    display: table-cell;
    vertical-align: top;
    padding-left: 45px;
    border-left: 1px solid #e6e6e6;
  }
  .pageMagazine .pubLink .linkList .bulletLink {
    margin: 0 30px 5px 0;
    font-size: 13px;
    font-size: 1.3rem;
    display: inline-block;
    line-height: 1.4;
  }
}
@media (max-width: 767px) {
  .pageMagazine .pubLink {
    padding: 20px 10px 10px;
    border: 2px solid #e6e6e6;
  }
  .pageMagazine .pubLink .title {
    margin: 0 0 15px 0;
    padding: 0 0 10px 0;
    font-size: 18px;
    font-weight: 300;
    text-align: center;
    line-height: 1.6;
    position: relative;
  }
  .pageMagazine .pubLink .title span {
    display: block;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .pageMagazine .pubLink .title:after {
    content: '';
    display: block;
    margin-left: -30px;
    width: 60px;
    height: 1px;
    background-color: #e6e6e6;
    position: absolute;
    bottom: 0;
    left: 50%;
  }
  .pageMagazine .pubLink .linkList .bulletLink {
    margin: 0 15px 10px 0;
    font-size: 13px;
    font-size: 1.3rem;
    display: inline-block;
    line-height: 1.4;
  }
}

@media (min-width: 768px) {
  .sectionMook .mookListWrap {
    margin-top: 40px;
  }
}
.sectionMook .mookList {
  border-top: 1px dotted #ccc;
}
@media (min-width: 768px) {
  .sectionMook .mookList {
    padding-top: 30px;
  }
}
@media (max-width: 767px) {
  .sectionMook .mookList {
    padding-top: 25px;
  }
}
.sectionMook .mookList .outer {
  border-bottom: 1px dotted #ccc;
}
@media (min-width: 768px) {
  .sectionMook .mookList .outer {
    margin: 0 0 30px 0;
    padding: 0 0 30px 0;
  }
}
@media (max-width: 767px) {
  .sectionMook .mookList .outer {
    margin: 0 0 25px 0;
    padding: 0 0 25px 0;
  }
}
.sectionMook .mookList .outer .logoImage {
  display: table;
  float: left;
  border: 1px solid #e6e6e6;
}
@media (min-width: 768px) {
  .sectionMook .mookList .outer .logoImage {
    width: 142px;
    height: 142px;
  }
}
@media (max-width: 767px) {
  .sectionMook .mookList .outer .logoImage {
    margin: 0 0 15px 0;
    width: 92px;
    height: 92px;
  }
}
.sectionMook .mookList .outer .logoImage .logoWrap {
  display: table-cell;
  padding: 15px;
  vertical-align: middle;
}
@media (max-width: 767px) {
  .sectionMook .mookList .outer .logoImage .logoWrap img {
    width: 55px;
  }
}
@media (min-width: 768px) {
  .sectionMook .mookList .outer .textArea {
    width: 660px;
    float: right;
  }
}
@media (max-width: 767px) {
  .sectionMook .mookList .outer .textArea {
    margin: 0 0 15px 0;
    width: -webkit-calc(100% - (92px + 12px));
    width: calc(100% - (92px + 12px));
    float: right;
  }
}
.sectionMook .mookList .outer .textArea .title {
  margin: 0 0 10px 0;
  font-weight: 300;
}
@media (min-width: 768px) {
  .sectionMook .mookList .outer .textArea .title {
    font-size: 21px;
    font-size: 2.1rem;
    line-height: 1.6;
  }
}
@media (max-width: 767px) {
  .sectionMook .mookList .outer .textArea .title {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.4;
  }
}
@media (min-width: 768px) {
  .sectionMook .mookList .outer .textArea .text {
    margin: 0 0 13px 0;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.6;
  }
}
@media (max-width: 767px) {
  .sectionMook .mookList .outer .textArea .text {
    margin: 0;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.6;
  }
}
.sectionMook .mookList .outer .dataArea {
  background-color: #f6f6f6;
}
@media (min-width: 768px) {
  .sectionMook .mookList .outer .dataArea {
    padding: 8px 20px;
    width: 660px;
    float: right;
  }
}
@media (max-width: 767px) {
  .sectionMook .mookList .outer .dataArea {
    padding: 6px 10px;
    clear: both;
  }
}
.sectionMook .mookList .outer .dataArea .dataList {
  margin: 0;
}
.sectionMook .mookList .outer .dataArea .dataList li {
  display: inline-block;
}
@media (min-width: 768px) {
  .sectionMook .mookList .outer .dataArea .dataList li {
    margin-right: 15px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.6;
  }
}
@media (max-width: 767px) {
  .sectionMook .mookList .outer .dataArea .dataList li {
    margin: 0 15px 5px 0;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.4;
  }
}
.sectionMook .mookList .outer .dataArea .dataList li span {
  font-weight: 700;
}

.sectionOther .otherWrap {
  margin-top: 40px;
}
@media (min-width: 768px) {
  .sectionOther .otherBox {
    margin-bottom: 60px;
  }
}
@media (max-width: 767px) {
  .sectionOther .otherBox {
    margin-bottom: 30px;
  }
}
@media (min-width: 768px) {
  .sectionOther .otherBox h4 {
    margin: 0 0 25px 0;
    font-size: 21px;
    font-size: 2.1rem;
    line-height: 1.6;
    font-weight: 300;
  }
}
@media (max-width: 767px) {
  .sectionOther .otherBox h4 {
    margin: 0 0 10px 0;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.4;
    font-weight: 700;
  }
}
@media (max-width: 767px) {
  .sectionOther .otherBox .imageBox {
    margin-bottom: 15px;
  }
}

/*新聞ラ・テ欄*/
@media (max-width: 767px) {
  .pageListing .para01 .leftArea {
    margin-bottom: 25px;
  }
}
@media (min-width: 768px) {
  .pageListing .para03 .smallText {
    margin-bottom: 40px;
  }
}

/*デジタル事業*/
@media (min-width: 768px) {
  .pageDegital .para01 .logoImage {
    padding-top: 20px;
  }
}
@media (max-width: 767px) {
  .pageDegital .para01 .logoImage {
    margin-top: 30px;
    text-align: center;
  }
  .pageDegital .para01 .logoImage img {
    width: 75%;
  }
  .pageDegital .para03 .snsLink a {
    color: #00a0e9;
    text-decoration: underline;
  }
}
.pageDegital .bulletCircle {
  margin-bottom: 20px;
  position: relative;
  padding-left: 20px;
}
.pageDegital .bulletCircle:before {
  content: '';
  display: block;
  width: 14px;
  height: 14px;
  background: url(../img/bullet-circle-arrow.png) top left no-repeat;
  background-size: 14px;
  position: absolute;
  top: 8px;
  left: 0;
}
.pageDegital .bulletCircle a {
  font-weight: 700;
}
.pageDegital .bulletCircle a:hover {
  color: #00a0e9;
  text-decoration: underline;
}
.pageDegital .bulletCircle.first {
  margin-bottom: 5px;
}

/****************************************
mukouda
****************************************/
@media (max-width: 767px) {
  .sectionAboutPrize .sectionInner .leftArea {
    margin-bottom: 20px;
  }
}

.sectionPrizeList .anchorList,
.sectionWorkList .anchorList {
  margin-bottom: 20px;
  text-align: center;
}
@media (max-width: 767px) {
  .sectionPrizeList .anchorList,
  .sectionWorkList .anchorList {
    margin: 0 12px 20px;
    padding: 15px 40px;
    border-top: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
  }
}
.sectionPrizeList .anchorList li,
.sectionWorkList .anchorList li {
  display: inline-block;
}
@media (min-width: 768px) {
  .sectionPrizeList .anchorList li,
  .sectionWorkList .anchorList li {
    margin-right: 20px;
  }
  .sectionPrizeList .anchorList li:last-child,
  .sectionWorkList .anchorList li:last-child {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .sectionPrizeList .anchorList li,
  .sectionWorkList .anchorList li {
    margin: 0 10px;
  }
}
.sectionPrizeList .anchorList li a,
.sectionWorkList .anchorList li a {
  padding-left: 22px;
  line-height: 1.4;
  position: relative;
}
.sectionPrizeList .anchorList li a:before,
.sectionWorkList .anchorList li a:before {
  content: '';
  display: block;
  margin-top: -7px;
  width: 14px;
  height: 14px;
  background: url(../img/bullet-anchor-down.png) top left no-repeat;
  background-size: 14px;
  position: absolute;
  left: 0;
  top: 50%;
}
@media (min-width: 768px) {
  .sectionPrizeList .prizeListtWrap,
  .sectionWorkList .prizeListtWrap {
    margin-bottom: 40px;
  }
  .sectionPrizeList .prizeList,
  .sectionWorkList .prizeList {
    border-top: 1px solid #e6e6e6;
  }
  .sectionPrizeList .prizeList .outer,
  .sectionWorkList .prizeList .outer {
    border-left: 1px solid #e6e6e6;
    border-right: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
  }
  .sectionPrizeList .prizeList .outer a,
  .sectionWorkList .prizeList .outer a {
    display: block;
    position: relative;
    transition: color .2s ease-in;
  }
  .sectionPrizeList .prizeList .outer a:after,
  .sectionWorkList .prizeList .outer a:after {
    content: '';
    display: block;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    background: url(../img/bullet-boxList.png) top left no-repeat;
    -webkit-background-size: 20px 20px;
    background-size: 20px;
    position: absolute;
    top: 50%;
    right: 22px;
  }
  .sectionPrizeList .prizeList .outer a:hover,
  .sectionWorkList .prizeList .outer a:hover {
    box-shadow: 0px 2px 3px 1px rgba(0, 0, 0, 0.05);
    color: #00a0e9;
  }
  .sectionPrizeList .prizeList .outer .inner,
  .sectionWorkList .prizeList .outer .inner {
    display: table;
    width: 100%;
  }
  .sectionPrizeList .prizeList .outer .inner > li,
  .sectionWorkList .prizeList .outer .inner > li {
    display: table-cell;
    font-weight: 300;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.4;
  }
  .sectionPrizeList .prizeList .outer .inner > li.year,
  .sectionWorkList .prizeList .outer .inner > li.year {
    padding: 15px 0;
    width: 160px;
    background-color: #1e489d;
    color: #fff;
    text-align: center;
  }
  .sectionPrizeList .prizeList .outer .inner > li.year span,
  .sectionWorkList .prizeList .outer .inner > li.year span {
    font-weight: 500;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .sectionPrizeList .prizeList .outer .inner > li.name,
  .sectionWorkList .prizeList .outer .inner > li.name {
    padding: 15px 0 15px 45px;
    width: 150px;
    position: relative;
  }
  .sectionPrizeList .prizeList .outer .inner > li.name:after,
  .sectionWorkList .prizeList .outer .inner > li.name:after {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    background: url(../img/bullet-human.png) top left no-repeat;
    background-size: 15px;
    position: absolute;
    left: 20px;
    top: 20px;
  }
  .sectionPrizeList .prizeList .outer .inner > li.work,
  .sectionWorkList .prizeList .outer .inner > li.work {
    padding: 15px 40px 15px 45px;
    position: relative;
  }
  .sectionPrizeList .prizeList .outer .inner > li.work:after,
  .sectionWorkList .prizeList .outer .inner > li.work:after {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    background: url(../img/bullet-book.png) top left no-repeat;
    background-size: 15px;
    position: absolute;
    left: 20px;
    top: 20px;
  }
}
@media (max-width: 767px) {
  .sectionPrizeList .prizeListtWrap,
  .sectionWorkList .prizeListtWrap {
    margin-bottom: 30px;
  }
  .sectionPrizeList .prizeList,
  .sectionWorkList .prizeList {
    border-top: 1px solid #e6e6e6;
  }
  .sectionPrizeList .prizeList .outer,
  .sectionWorkList .prizeList .outer {
    border-left: 1px solid #e6e6e6;
    border-right: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
  }
  .sectionPrizeList .prizeList .outer a,
  .sectionWorkList .prizeList .outer a {
    display: block;
    position: relative;
  }
  .sectionPrizeList .prizeList .outer a:after,
  .sectionWorkList .prizeList .outer a:after {
    content: '';
    display: block;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    background: url(../img/bullet-boxList.png) top left no-repeat;
    -webkit-background-size: 20px 20px;
    background-size: 20px;
    position: absolute;
    bottom: calc(50% - 30px);
    right: 8px;
  }
  .sectionPrizeList .prizeList .outer .inner,
  .sectionWorkList .prizeList .outer .inner {
    font-size: 13px;
    line-height: 1.4;
  }
  .sectionPrizeList .prizeList .outer .inner .year,
  .sectionWorkList .prizeList .outer .inner .year {
    margin-bottom: 10px;
    padding: 0 10px;
    color: #fff;
    background-color: #1e489d;
    line-height: 30px;
  }
  .sectionPrizeList .prizeList .outer .inner .name,
  .sectionWorkList .prizeList .outer .inner .name {
    margin-bottom: 8px;
    padding: 0 30px 0 32px;
    position: relative;
  }
  .sectionPrizeList .prizeList .outer .inner .name:after,
  .sectionWorkList .prizeList .outer .inner .name:after {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    background: url(../img/bullet-human.png) top left no-repeat;
    background-size: 15px;
    position: absolute;
    left: 10px;
    top: 0;
  }
  .sectionPrizeList .prizeList .outer .inner .work,
  .sectionWorkList .prizeList .outer .inner .work {
    margin-bottom: 14px;
    padding: 0 32px;
    position: relative;
  }
  .sectionPrizeList .prizeList .outer .inner .work:after,
  .sectionWorkList .prizeList .outer .inner .work:after {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    background: url(../img/bullet-book.png) top left no-repeat;
    background-size: 15px;
    position: absolute;
    left: 10px;
    top: 0;
  }
}

/*向田邦子の業績*/
@media (min-width: 768px) {
  .sectionProfile .sectionInner {
    display: table;
  }
  .sectionProfile .sectionInner .imageArea {
    display: table-cell;
    width: 180px;
    padding-left: 15px;
    vertical-align: middle;
  }
  .sectionProfile .sectionInner .imageArea .imageWrap {
    width: 150px;
    height: 150px;
    border-radius: 150px;
    overflow: hidden;
  }
  .sectionProfile .sectionInner .imageArea .imageWrap img {
    width: 100%;
  }
  .sectionProfile .sectionInner .profileArea {
    display: table-cell;
    vertical-align: top;
    padding-left: 40px;
  }
  .sectionProfile .sectionInner .profileArea h3 {
    margin: 0 0 15px 0;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4;
  }
  .sectionProfile .sectionInner .profileArea p {
    margin-bottom: 10px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .sectionProfile .sectionInner .profileArea p:last-child {
    margin-bottom: 0;
  }
}
@media (max-width: 767px) {
  .sectionProfile .sectionInner .imageArea .imageWrap {
    margin: 0 auto 15px;
    width: 150px;
    height: 150px;
    border-radius: 150px;
    overflow: hidden;
  }
  .sectionProfile .sectionInner .profileArea {
    padding: 0 12px;
  }
  .sectionProfile .sectionInner .profileArea h3 {
    margin-bottom: 12px;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
  }
  .sectionProfile .sectionInner .profileArea p {
    margin-bottom: 10px;
  }
  .sectionProfile .sectionInner .profileArea p:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 768px) {
  .sectionWorkList .anchorList {
    display: none;
  }
  .sectionWorkList .workListHead li {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.6;
    font-weight: 700;
    display: inline-block;
  }
  .sectionWorkList .workListHead li.year {
    width: 100px;
    text-align: center;
  }
  .sectionWorkList .workListHead li.title {
    width: 540px;
    padding: 0 0 0 15px;
  }
  .sectionWorkList .workListHead li.broadcast {
    padding: 0 0 0 15px;
  }
  .sectionWorkList .subHeadLine {
    display: none;
  }
  .sectionWorkList .workList {
    border-top: 2px solid #e6e6e6;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.6;
  }
  .sectionWorkList .workList dt {
    padding: 15px 0;
    clear: both;
    width: 100px;
    float: left;
    text-align: center;
  }
  .sectionWorkList .workList dd {
    padding: 15px 0 15px 100px;
    border-bottom: 1px dotted #ccc;
  }
  .sectionWorkList .workList dd .inner {
    display: table;
    width: 100%;
  }
  .sectionWorkList .workList dd .inner .title {
    display: table-cell;
    padding: 0 0 0 20px;
    width: 420px;
    font-weight: 700;
  }
  .sectionWorkList .workList dd .inner .position {
    display: table-cell;
    width: 120px;
    text-align: center;
  }
  .sectionWorkList .workList dd .inner .broadcast {
    display: table-cell;
    padding: 0 0 0 20px;
  }
}
@media (max-width: 767px) {
  .sectionWorkList .tabHead {
    display: none;
  }
  .sectionWorkList .tabBody {
    margin-bottom: 30px;
  }
  .sectionWorkList .workListHead {
    margin-bottom: 5px;
    font-weight: 700;
    line-height: 1.6;
    font-size: 11px;
  }
  .sectionWorkList .workListHead li {
    display: inline-block;
  }
  .sectionWorkList .workListHead li.year {
    padding-left: 5px;
    width: 60px;
  }
  .sectionWorkList .workListHead li.broadcast:before {
    content: '・';
    width: 13px;
    height: 13px;
  }
  .sectionWorkList .workList {
    border-top: 1px solid #e6e6e6;
    line-height: 1.6;
  }
  .sectionWorkList .workList dt {
    clear: both;
    padding: 12px 0 12px 5px;
    width: 60px;
    float: left;
  }
  .sectionWorkList .workList dd {
    padding: 12px 10px 12px 60px;
    border-bottom: 1px dotted #ccc;
  }
  .sectionWorkList .workList dd .inner .title {
    font-weight: 700;
    margin-bottom: 3px;
  }
  .sectionWorkList .workList dd .inner .position,
  .sectionWorkList .workList dd .inner .broadcast {
    display: inline;
  }
  .sectionWorkList .workList dd .inner .broadcast {
    margin-left: 15px;
  }
}

/*第〇〇回向田邦子賞*/
@media (min-width: 768px) {
  .sectionPrize .prizeWrap {
    padding-left: 220px;
    position: relative;
  }
}
.sectionPrize .prizeWrap .imageArea {
  width: 150px;
  height: 150px;
  border-radius: 150px;
  overflow: hidden;
}
.sectionPrize .prizeWrap .imageArea img {
  width: 100%;
}
@media (min-width: 768px) {
  .sectionPrize .prizeWrap .imageArea {
    position: absolute;
    top: 0;
    left: 12px;
  }
}
@media (max-width: 767px) {
  .sectionPrize .prizeWrap .imageArea {
    margin: 0 auto 10px;
  }
}
@media (min-width: 768px) {
  .sectionPrize .prizeWrap .imageCaption {
    width: 150px;
    text-align: center;
    position: absolute;
    top: 155px;
    left: 12px;
    font-size: 12px;
  }
}
@media (max-width: 767px) {
  .sectionPrize .prizeWrap .imageCaption {
    margin-top: -5px;
    font-size: 11px;
    text-align: center;
  }
}
@media (min-width: 768px) {
  .sectionPrize .prizeWrap .prizeHead {
    margin: 0;
    padding-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .sectionPrize .prizeWrap .prizeHead {
    margin-bottom: 30px;
    padding: 0 12px;
  }
}
.sectionPrize .prizeWrap .prizeHead dt {
  line-height: 1.4;
}
@media (min-width: 768px) {
  .sectionPrize .prizeWrap .prizeHead dt {
    margin-bottom: 10px;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: 700;
  }
}
@media (max-width: 767px) {
  .sectionPrize .prizeWrap .prizeHead dt {
    margin-bottom: 5px;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 300;
    text-align: center;
  }
}
.sectionPrize .prizeWrap .prizeHead dd {
  font-weight: 700;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .sectionPrize .prizeWrap .prizeHead dd {
    margin-bottom: 30px;
    font-size: 21px;
    font-size: 2.1rem;
  }
  .sectionPrize .prizeWrap .prizeHead dd span {
    display: block;
    margin-bottom: 5px;
    font-weight: 400;
    font-size: 13px;
  }
  .sectionPrize .prizeWrap .prizeHead dd li {
    margin-bottom: 10px;
  }
}
@media (max-width: 767px) {
  .sectionPrize .prizeWrap .prizeHead dd {
    margin-bottom: 20px;
    font-size: 15px;
    font-size: 1.5rem;
    text-align: center;
  }
  .sectionPrize .prizeWrap .prizeHead dd span {
    font-weight: 300;
    font-size: 12px;
    display: block;
    margin-bottom: 5px;
  }
}
@media (min-width: 768px) {
  .sectionPrize .prizeWrap .tableNormalWrap {
    margin-bottom: 40px;
  }
  .sectionPrize .prizeWrap .tableNormalWrap .long dt {
    width: 200px;
  }
  .sectionPrize .prizeWrap .tableNormalWrap .long dd {
    padding: 10px 0 10px 160px;
  }
}
.sectionPrize .prizeWrap .tableNormalWrap dd p {
  margin-bottom: 10px;
}
.sectionPrize .prizeWrap .tableNormalWrap dd .last {
  margin-bottom: 0;
}
.sectionPrize .prizeWrap .prizeComment {
  margin: 40px 0;
  padding: 20px 30px 1px;
  background-color: #f6f6f6;
}
.sectionPrize .prizeWrap .prizeComment dl {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.6;
}
.sectionPrize .prizeWrap .prizeComment dl dt {
  font-weight: 700;
  margin-bottom: 5px;
}
.sectionPrize .prizeWrap .prizeComment dl dd {
  margin-bottom: 20px;
}

/****************************************
recruit
****************************************/
@media (min-width: 768px) {
  .recruitListWrap .lead {
    margin-bottom: 15px;
  }
  .recruitListWrap .lead.noData {
    margin-bottom: 50px;
  }
}
@media (max-width: 767px) {
  .recruitListWrap {
    margin-bottom: 30px;
  }
  .recruitListWrap .lead {
    margin-bottom: 15px;
  }
  .recruitListWrap .lead.noData {
    margin-bottom: 30px;
  }
  .recruitListWrap .boxList {
    margin-bottom: 30px;
  }
}

@media (min-width: 768px) {
  .btnArea {
    margin-top: 40px;
  }
  .btnArea .btnRecruit {
    margin: 0;
  }
  .btnArea .btnRecruit a {
    display: block;
    margin: 0 auto;
    width: 260px;
    line-height: 60px;
    text-align: center;
    background-color: #00a0e9;
    color: #fff;
    font-size: 18px;
    font-size: 1.8rem;
    position: relative;
    transition: background-color .2s ease-in;
  }
  .btnArea .btnRecruit a:hover {
    background-color: #1e489d;
    box-shadow: 0px 2px 3px 1px rgba(0, 0, 0, 0.05);
  }
  .btnArea .btnRecruit a:after {
    content: '';
    display: block;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    background: url(../img/bullet-white.png) top left no-repeat;
    background-size: 20px;
    position: absolute;
    right: 20px;
    top: 50%;
  }
}
@media (max-width: 767px) {
  .btnArea {
    margin-top: 20px;
  }
  .btnArea a {
    display: block;
    width: 100%;
    line-height: 50px;
    text-align: center;
    background-color: #00a0e9;
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    position: relative;
  }
  .btnArea a:after {
    content: '';
    display: block;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    background: url(../img/bullet-white.png) top left no-repeat;
    background-size: 20px;
    position: absolute;
    right: 15px;
    top: 50%;
  }
}
.btnArea .btnNotice {
  font-size: 12px;
  font-size: 1.2rem;
}
@media (min-width: 768px) {
  .btnArea .btnNotice {
    text-align: center;
    margin: 20px 0 0;
  }
}
@media (max-width: 767px) {
  .btnArea .btnNotice {
    margin: 10px 0 0;
    line-height: 1.6;
    color: #999;
  }
}

.pageRecruitStaff .mainContents .paragraph {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .pageRecruitStaff .staffInterviewHead {
    margin-bottom: 35px;
    width: 100%;
    height: 340px;
    position: relative;
    background: url(../img/recruit/img-E-2-11.jpg) top left no-repeat;
  }
}
@media (max-width: 767px) {
  .pageRecruitStaff .staffInterviewHead {
    margin-bottom: 30px;
  }
}
@media (min-width: 768px) {
  .pageRecruitStaff .staffInterviewHead .title {
    display: inline-block;
    padding: 15px 30px;
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.9);
    position: absolute;
    top: 60px;
    left: 20px;
  }
}
@media (min-width: 768px) {
  .pageRecruitStaff .staffInterviewHead .title h3 {
    margin: 0 0 10px 0;
    font-size: 21px;
    font-size: 2.1rem;
    line-height: 1.6;
    font-weight: 500;
  }
}
@media (max-width: 767px) {
  .pageRecruitStaff .staffInterviewHead .title h3 {
    margin: 0 0 5px 0;
    font-size: 16px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.4;
  }
}
@media (min-width: 768px) {
  .pageRecruitStaff .staffInterviewHead .title p {
    margin: 0;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.6;
  }
}
@media (max-width: 767px) {
  .pageRecruitStaff .staffInterviewHead .title p {
    margin: 0;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.6;
  }
}
@media (min-width: 768px) {
  .pageRecruitStaff .staffInterviewHead .title .titleImg {
    display: none;
  }
}
@media (max-width: 767px) {
  .pageRecruitStaff .staffInterviewHead .title .titleImg {
    margin-bottom: 10px;
  }
}
@media (min-width: 768px) {
  .pageRecruitStaff .para02 .staffInterviewHead {
    background: url(../img/recruit/img-E-2-02.jpg) top left no-repeat;
  }
  .pageRecruitStaff .para02 .staffInterviewHead .title {
    top: 60px;
    right: 20px;
    left: auto;
  }
}
@media (min-width: 768px) {
  .pageRecruitStaff .para03 .staffInterviewHead {
    background: url(../img/recruit/img-E-2-03.jpg) top left no-repeat;
  }
  .pageRecruitStaff .para03 .staffInterviewHead .title {
    top: 60px;
    right: 20px;
    left: auto;
  }
}
@media (min-width: 768px) {
  .pageRecruitStaff .para04 .staffInterviewHead {
    background: url(../img/recruit/img-E-2-04.jpg) top left no-repeat;
  }
  .pageRecruitStaff .para04 .staffInterviewHead .title {
    top: 60px;
    right: 20px;
    left: auto;
  }
}
@media (min-width: 768px) {
  .pageRecruitStaff .para05 .staffInterviewHead {
    background: url(../img/recruit/img-E-2-05.jpg) top left no-repeat;
  }
  .pageRecruitStaff .para05 .staffInterviewHead .title {
    top: 60px;
    right: 20px;
    left: auto;
  }
}
@media (min-width: 768px) {
  .pageRecruitStaff .page11 .staffInterviewHead {
    background: url(../img/recruit/img-page11-head.jpg) top left no-repeat;
  }
}
@media (min-width: 768px) {
  .pageRecruitStaff .page12 .staffInterviewHead {
    background: url(../img/recruit/img-page12-head.jpg) top left no-repeat;
  }
}
.pageRecruitStaff .staffInterviewBody .rightArea {
  border-top: 1px dotted #ccc;
  border-bottom: 1px dotted #ccc;
}
@media (min-width: 768px) {
  .pageRecruitStaff .staffInterviewBody .rightArea {
    margin: 0 0 25px;
    padding: 15px 20px;
  }
}
@media (max-width: 767px) {
  .pageRecruitStaff .staffInterviewBody .rightArea {
    padding: 15px 12px;
  }
}
.pageRecruitStaff .staffInterviewBody .rightArea h4 {
  display: inline-block;
  padding: 2px 10px;
  margin: 0 0 20px 0;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.6;
  background-color: #1e489d;
  color: #fff;
  font-weight: 300;
}
.pageRecruitStaff .staffInterviewBody .rightArea p {
  margin: 0 0 20px 0;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.8;
}
.pageRecruitStaff .staffInterviewBody .rightArea p:last-child {
  margin-bottom: 0;
}
.pageRecruitStaff .staffInterviewBody .rightArea .title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #1e489d;
}
.pageRecruitStaff .staffInterviewBody .rightArea .image {
  margin-bottom: 20px;
}
.pageRecruitStaff .staffInterviewBody .rightArea .image img {
  max-width: 100%;
}
.pageRecruitStaff .staffInterviewBody .schedule {
  margin-top: 20px;
}
.pageRecruitStaff .staffInterviewBody .schedule .title{
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  color: #1e489d;
}
.pageRecruitStaff .staffInterviewBody .schedule .scheduleListWrap {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.pageRecruitStaff .staffInterviewBody .schedule .scheduleList .box {
  padding: 20px 0;
  border-bottom:1px solid #e6e6e6;
}
.pageRecruitStaff .staffInterviewBody .schedule .scheduleList {
  width: 400px;
  border-top:1px solid #e6e6e6;
  line-height: 1.6;
}
.pageRecruitStaff .staffInterviewBody .schedule .scheduleList .box{
  display: flex;
}
.pageRecruitStaff .staffInterviewBody .schedule .scheduleList dt {
  width: 60px;
  font-weight: 700;
}
.pageRecruitStaff .staffInterviewBody .schedule .scheduleList dd {
  width: 340px;
}
.pageRecruitStaff .staffInterviewBody .schedule .scheduleList .image {
  line-height: 1;
}
.pageRecruitStaff .staffInterviewBody .schedule .scheduleList .image img{
  margin: 15px 0;
  max-width: 100%;
}
.pageRecruitStaff .staffInterviewBody .schedule .scheduleList .image .caption{
  font-size: 1.2rem;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .pageRecruitStaff .staffInterviewBody .schedule {
    margin-top: 30px;
  }
  .pageRecruitStaff .staffInterviewBody .schedule .title{
    margin-bottom: 15px;
    font-size: 1.5rem;
  }
  .pageRecruitStaff .staffInterviewBody .schedule .scheduleListWrap {
    width: 100%;
    display: block;
  }
  .pageRecruitStaff .staffInterviewBody .schedule .scheduleList:first-child {
    margin-bottom: 0;
  }
  .pageRecruitStaff .staffInterviewBody .schedule .scheduleList:last-child {
    border:none;
  }
  .pageRecruitStaff .staffInterviewBody .schedule .scheduleList .box {
    padding: 15px 0;
  }
  .pageRecruitStaff .staffInterviewBody .schedule .scheduleList {
    width: 100%;
  }
  .pageRecruitStaff .staffInterviewBody .schedule .scheduleList dd {
    width: calc(100% - 60px);
  }
}

.mainContents p.linkTitle {
  margin-top: 15px;
  font-size: 18px;
  line-height: 20px;
  position: relative;
}
.mainContents p.linkTitle.projectTitle{
  line-height: 1.6;
}
.linkTitle::before {
    content: '';
    margin: 0 6px 0 0;
    display: inline-block;
    width: 14px;
    height: 14px;
    background: url(../img/bullet-circle-arrow.png) top left no-repeat;
    background-size: 14px;
}

.divisionArea .box {
  width: calc(760px/3);
  float: left;
  margin-right: 40px;
}
.divisionArea .box:last-child {
  margin-right: 0;
}
.divisionArea .divisionList li {
  border-bottom:1px solid #e6e6e6;
  position: relative;
}
.divisionArea .divisionList li a,
.divisionArea .divisionList li span {
  display: block;
  padding: 20px 20px 20px 5px;
  font-weight: 500;
}
.divisionArea .divisionList li:after{
  content: '';
  display: block;
  margin-top: -3px;
  width: 6px;
  height: 10px;
  background: url(../img/bullet-gNavi.png) top left no-repeat;
  position: absolute;
  top: 50%;
  right: 10px;
}
.divisionArea .divisionList li.noLink:after {
  content: none;
}
@media (max-width: 767px) {
  .divisionArea .box {
    width: auto;
    float: none;
    margin-right: 0;
  }
  .divisionArea .divisionList li a,
  .divisionArea .divisionList li span {
    padding: 15px 20px 15px 0;
  }
}

/****************************************
ad
****************************************/
@media (min-width: 768px) {
  .newsArea.sectionContents {
    background-color: #f6f6f6;
    padding: 40px 0;
  }
  .newsArea .newsWrap {
    padding: 40px 40px 40px 240px;
    width: 920px;
    min-height: 160px;
    background-color: #fff;
    position: relative;
  }
  .newsArea .newsWrap .newsHead {
    width: 220px;
    position: absolute;
    top: 40px;
    left: 40px;
  }
  .newsArea .newsWrap .newsHead h2 {
    margin: 0;
    padding-bottom: 15px;
    font-size: 21px;
    font-size: 2.1rem;
    font-weight: 300;
    line-height: 1.4;
    position: relative;
  }
  .newsArea .newsWrap .newsHead h2 .block {
    display: block;
  }
  .newsArea .newsWrap .newsHead h2:after {
    content: '';
    display: block;
    width: 40px;
    height: 2px;
    background-color: #1e489d;
    position: absolute;
    bottom: -2px;
    left: 0;
  }
  .newsArea .newsWrap .newsBody .newsList {
    margin-bottom: 0;
    line-height: 1.6;
    font-size: 14px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .newsArea .newsWrap .newsBody .newsList dt {
    width: 100px;
    clear: both;
    float: left;
    font-weight: bold;
    color: #00a0e9;
  }
  .newsArea .newsWrap .newsBody .newsList dd {
    margin-bottom: 15px;
    padding: 0 0 15px 100px;
    border-bottom: 1px dotted #ccc;
  }
  .newsArea .newsWrap .newsBody .newsList dd:last-child {
    margin-bottom: 0;
    padding: 0 0 0 100px;
    border-bottom: none;
  }
  .newsArea .newsWrap .newsBody .newsList dd:first-child {
    border-bottom: 1px dotted #ccc;
  }
  .newsArea .newsWrap .newsBody .newsList dd a {
    text-decoration: underline;
    color: #00a0e9;
    position: relative;
  }
  .newsArea .newsWrap .newsBody .newsList dd a:after {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background: url(../img/bullet-pdf.png) top left no-repeat;
    background-size: 20px;
    position: absolute;
    top: 0;
    right: -22px;
  }
}
@media (max-width: 767px) {
  .newsArea.sectionContents {
    padding: 30px 0;
    background-color: #f6f6f6;
  }
  .newsArea .newsWrap {
    margin: 0 15px;
    padding: 20px 15px;
    background-color: #fff;
  }
  .newsArea .newsWrap .newsHead {
    margin-bottom: 20px;
  }
  .newsArea .newsWrap .newsHead h2 {
    margin: 0;
    padding-bottom: 10px;
    font-size: 15px;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1.4;
    position: relative;
  }
  .newsArea .newsWrap .newsHead h2:after {
    content: '';
    display: block;
    width: 30px;
    height: 2px;
    background-color: #1e489d;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .newsArea .newsWrap .newsBody .newsList {
    margin: 0;
    font-size: 12px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.8;
  }
  .newsArea .newsWrap .newsBody .newsList dt {
    font-weight: 500;
    color: #00a0e9;
  }
  .newsArea .newsWrap .newsBody .newsList dd {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px dotted #ccc;
  }
  .newsArea .newsWrap .newsBody .newsList dd:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  .newsArea .newsWrap .newsBody .newsList dd a {
    text-decoration: underline;
    color: #00a0e9;
    position: relative;
  }
  .newsArea .newsWrap .newsBody .newsList dd a:after {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background: url(../img/bullet-pdf.png) top left no-repeat;
    background-size: 20px;
    position: absolute;
    top: 0;
    right: -22px;
  }
}

@media (min-width: 768px) {
  .downloadListWrap .box .inner {
    display: table;
  }
  .downloadListWrap .box .inner .logo {
    display: table-cell;
    padding: 15px 0;
    width: 110px;
    border-right: 1px solid #e6e6e6;
    vertical-align: middle;
    text-align: center;
  }
  .downloadListWrap .box .inner .logo img {
    max-width: 90px;
  }
  .downloadListWrap .box .inner .textArea {
    display: table-cell;
    vertical-align: middle;
  }
  .downloadListWrap .box .inner .title {
    display: table-cell;
    padding: 0 25px;
    width: 460px;
    vertical-align: middle;
    font-weight: 500;
  }
  .downloadListWrap .box .inner .download {
    display: table-cell;
    width: 270px;
    vertical-align: middle;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.4;
  }
  .downloadListWrap .box .inner .download .downloadLink {
    display: block;
    margin-bottom: 10px;
    padding-left: 22px;
    color: #00a0e9;
    position: relative;
  }
  .downloadListWrap .box .inner .download .downloadLink:last-child {
    margin-bottom: 0;
  }
  .downloadListWrap .box .inner .download .downloadLink:before {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background: url(../img/bullet-pdf.png) top left no-repeat;
    background-size: 20px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .downloadListWrap .box .inner .download .downloadLink:hover {
    text-decoration: underline;
  }
  .downloadListWrap .box .inner .download .downloadLink .new {
    display: inline-block;
    margin-left: 5px;
    padding: 0 0.5em;
    border-radius: 20px;
    background-color: #ce1b31;
    color: #fff;
    font-size: 11px;
    font-size: 1.1rem;
  }
}
@media (max-width: 767px) {
  .downloadListWrap .box {
    margin: 0 0 10px 0;
    border: 1px solid #e6e6e6;
  }
  .downloadListWrap .box .inner {
    display: table;
  }
  .downloadListWrap .box .inner .logo {
    padding: 15px 10px;
    width: 90px;
    display: table-cell;
    border-right: 1px solid #e6e6e6;
    vertical-align: middle;
    text-align: center;
  }
  .downloadListWrap .box .inner .textArea {
    padding: 15px;
  }
  .downloadListWrap .box .inner .title {
    margin-bottom: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    font-weight: 500;
  }
  .downloadListWrap .box .inner .download a {
    display: block;
    margin-bottom: 10px;
    padding-left: 22px;
    font-size: 12px;
    font-size: 1.2rem;
    color: #00a0e9;
    line-height: 1.6;
    position: relative;
  }
  .downloadListWrap .box .inner .download a:last-child {
    margin-bottom: 0;
  }
  .downloadListWrap .box .inner .download a:before {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background: url(../img/bullet-pdf.png) top left no-repeat;
    background-size: 20px;
    position: absolute;
    top: -2px;
    left: 0;
  }
  .downloadListWrap .box .inner .download .new {
    display: inline-block;
    margin-left: 5px;
    padding: 0 0.5em;
    border-radius: 20px;
    background-color: #ce1b31;
    color: #fff;
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.adContact .intro {
  text-align: center;
}
@media (max-width: 767px) {
  .adContact .intro {
    font-size: 12px;
    line-height: 1.6;
  }
  .adContact .intro span {
    display: block;
  }
}
.adContact .contactArea {
  border: 1px solid #e6e6e6;
}
@media (min-width: 768px) {
  .adContact .contactArea {
    padding: 20px 40px 30px;
  }
}
@media (max-width: 767px) {
  .adContact .contactArea {
    padding: 10px 15px 10px;
  }
}
.adContact .contactArea h3 {
  font-weight: 700;
  background-color: #f6f6f6;
  text-align: center;
}
@media (min-width: 768px) {
  .adContact .contactArea h3 {
    margin: 0 0 20px 0;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 40px;
  }
}
@media (max-width: 767px) {
  .adContact .contactArea h3 {
    margin: 0 0 15px 0;
    font-size: 13px;
    line-height: 34px;
  }
}
@media (min-width: 768px) {
  .adContact .contactArea .contactList {
    text-align: center;
  }
}
@media (max-width: 767px) {
  .adContact .contactArea .contactList {
    padding: 0 12px;
  }
}
.adContact .contactArea .contactList li {
  margin-right: 30px;
  padding-left: 46px;
  font-weight: 700;
  position: relative;
}
@media (min-width: 768px) {
  .adContact .contactArea .contactList li {
    display: inline-block;
  }
}
@media (min-width: 768px) {
  .adContact .contactArea .contactList li {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 24px;
  }
}
@media (max-width: 767px) {
  .adContact .contactArea .contactList li {
    margin-bottom: 10px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 20px;
  }
}
.adContact .contactArea .contactList li:last-child {
  margin-right: 0;
}
.adContact .contactArea .contactList li span {
  display: block;
  width: 40px;
  line-height: 20px;
  color: #fff;
  background-color: #1e489d;
  font-weight: 300;
  letter-spacing: .1em;
  text-align: center;
  position: absolute;
  top: 3px;
  left: 0;
}
@media (min-width: 768px) {
  .adContact .contactArea .contactList li span {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
@media (max-width: 767px) {
  .adContact .contactArea .contactList li span {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.pageGuide .noticeBox .title {
  font-weight: 700;
  text-align: center;
}

/****************************************
news
****************************************/
@media (max-width: 767px) {
  .infoWrap {
    padding: 0 15px;
  }
}
.infoHead {
  position: relative;
}
@media (min-width: 768px) {
  .infoHead .sortArea {
    position: absolute;
    top: 15px;
    right: 0;
    z-index: 2;
  }
}
@media (max-width: 767px) {
  .infoHead .sortArea {
    margin-bottom: 15px;
    text-align: right;
  }
}
.infoHead .sortArea span {
  display: inline-block;
  margin: 0 5px;
  font-size: 13px;
  font-size: 1.3rem;
}
.infoHead .sortArea select {
  border: 1px solid #aaa;
  border-radius: 0;
  height: 30px;
  width: 120px;
}
@media (min-width: 768px) {
  .infoHead .tableInfo {
    text-align: center;
  }
}
.infoHead .tableInfo li {
  display: inline-block;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .infoHead .tableInfo li {
    margin-right: 15px;
  }
}
@media (max-width: 767px) {
  .infoHead .tableInfo li {
    margin-right: 10px;
  }
}
.infoHead .tableInfo li:last-child {
  margin-right: 0;
}
.infoHead .tableInfo li span {
  display: inline-block;
  padding: 0 6px;
  font-weight: 300;
  color: #fff;
  background-color: #1e489d;
}
@media (min-width: 768px) {
  .infoHead .tableInfo li span {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
@media (max-width: 767px) {
  .infoHead .tableInfo li span {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.infoBody {
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
}
@media (min-width: 768px) {
  .infoBody {
    padding: 40px 0;
  }
  .infoBody h3 {
    margin: 0 0 15px 0;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.6;
    font-weight: 700;
  }
}
@media (max-width: 767px) {
  .infoBody {
    padding: 20px 0;
  }
}
.infoBody img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}
.infoBody a {
  color: #00a0e9;
  text-decoration: underline;
}

.infoPager {
  padding-top: 25px;
  position: relative;
}
.infoPager .bulletLink {
  text-align: center;
}
.infoPager .bulletLink a {
  width: 110px;
  margin: 0 auto;
  display: block;
  line-height: 1.2;
}
.infoPager .btnPager a {
  width: 20px;
  height: 20px;
  position: absolute;
}
.infoPager .btnPager.back a {
  background: url(../img/bullet-boxList-left.png) top left no-repeat;
  background-size: 20px;
  top: 25px;
  left: 0;
}
.infoPager .btnPager.prev a {
  background: url(../img/bullet-boxList.png) top left no-repeat;
  background-size: 20px;
  top: 25px;
  right: 0;
}

/****************************************
番組表ができるまで
****************************************/
@media (min-width: 768px) {
  .pageProcess .process {
    margin: 60px 0 100px;
    padding: 65px 40px 40px;
    background-color: #f8f8f5;
    position: relative;
  }
  .pageProcess .process h4 {
    margin: 0 0 65px 0;
    font-size: 24px;
    text-align: center;
    font-weight: 300;
  }
  .pageProcess .process .intro {
    font-weight: 700;
    text-align: center;
  }
  .pageProcess .process .outro {
    margin: 0;
    font-weight: 700;
    text-align: center;
  }
  .pageProcess .process.arrow:after {
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    border-bottom: solid 5px #1e489d;
    border-right: solid 5px #1e489d;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    bottom: -60px;
    left: 50%;
    margin-left: -15px;
  }
  .pageProcess .process01 {
    background: #f8f8f5 url(../img/process/bg-process-01.jpg) center 34px no-repeat;
  }
  .pageProcess .process01 .numberArea {
    margin: 0 50px;
    background-color: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
  }
  .pageProcess .process01 .numberArea .outer {
    padding: 15px 0 15px 30px;
  }
  .pageProcess .process01 .numberArea .outer li {
    margin-right: 20px;
    width: 105px;
    float: left;
  }
  .pageProcess .process01 .numberArea .outer li dl {
    margin-bottom: 0;
  }
  .pageProcess .process01 .numberArea .outer li dt {
    margin-bottom: 10px;
    font-size: 13px;
    font-weight: 500;
    color: #fff;
    text-align: center;
    line-height: 22px;
    background-color: #1e489d;
    border-radius: 22px;
  }
  .pageProcess .process01 .numberArea .outer li dd {
    text-align: center;
    line-height: 1;
  }
  .pageProcess .process01 .numberArea .outer li dd .number {
    display: inline-block;
    padding-right: 4px;
    font-size: 30px;
    font-weight: 400;
  }
  .pageProcess .process01 .numberArea .outer li dd .numberJa {
    font-size: 26px;
  }
  .pageProcess .process02 {
    background: #f8f8f5 url(../img/process/bg-process-02.jpg) center 34px no-repeat;
  }
  .pageProcess .process02 .flowArea .outer li {
    margin-bottom: 40px;
    padding: 15px 30px 0 270px;
    height: 120px;
    position: relative;
    background-color: #fff;
  }
  .pageProcess .process02 .flowArea .outer li:last-child {
    margin-bottom: 30px;
  }
  .pageProcess .process02 .flowArea .outer li h5 {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
  }
  .pageProcess .process02 .flowArea .outer li .txt {
    margin: 0;
    line-height: 1.6;
  }
  .pageProcess .process02 .flowArea .outer li .image {
    width: 240px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .pageProcess .process02 .flowArea .outer li.arrow:after {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    border-bottom: solid 2px #bfbfbf;
    border-right: solid 2px #bfbfbf;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    bottom: -24px;
    left: 50%;
    margin-left: -7px;
  }
  .pageProcess .process03 {
    background-color: #fff;
    padding: 0;
  }
  .pageProcess .process03 .processInner.left {
    background: #f8f8f5 url(../img/process/bg-process-03.jpg) center 25px no-repeat;
    padding: 60px 40px 40px;
    width: 540px;
    height: 394px;
    float: left;
    background-color: #f8f8f5;
  }
  .pageProcess .process03 .processInner.left h4 {
    line-height: 48px;
  }
  .pageProcess .process03 .processInner.left .outer {
    padding: 30px 30px 0 200px;
    height: 180px;
    background-color: #fff;
    position: relative;
  }
  .pageProcess .process03 .processInner.left .outer .image {
    width: 180px;
    height: 180px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .pageProcess .process03 .processInner.left .outer h5 {
    margin: 0 0 10px 0;
    font-size: 24px;
    line-height: 1.4;
    font-weight: 700;
  }
  .pageProcess .process03 .processInner.left .outer .txt {
    margin: 0;
    line-height: 1.6;
  }
  .pageProcess .process03 .processInner.right {
    width: 260px;
    height: 394px;
    padding: 173px 40px 0;
    float: right;
    background-color: #f8f8f5;
  }
  .pageProcess .process03 .processInner.right .outer {
    height: 180px;
    padding: 40px 0 0 0;
    background-color: #fff;
    text-align: center;
  }
  .pageProcess .process03 .processInner.right .outer .image {
    display: inline-block;
    margin-bottom: 15px;
  }
  .pageProcess .process03 .processInner.right .outer h5 {
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
  }
  .pageProcess .process03 .processInner.right .outer h5 span {
    display: block;
  }
  .pageProcess .process04 {
    background: #f8f8f5 url(../img/process/bg-process-04.jpg) top center no-repeat;
    padding: 0;
    height: 130px;
  }
  .pageProcess .process04 h4 {
    margin: 0;
    line-height: 130px;
  }
}
@media (max-width: 767px) {
  .pageProcess .process {
    margin: 30px 0 50px;
    padding: 25px 20px 20px;
    background-color: #f8f8f5;
    position: relative;
  }
  .pageProcess .process h4 {
    margin: 0 0 25px 0;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
  }
  .pageProcess .process .intro {
    margin: 0 0 20px 0;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
  }
  .pageProcess .process .outro {
    margin: 0;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
  }
  .pageProcess .process.arrow:after {
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    border-bottom: solid 3px #1e489d;
    border-right: solid 3px #1e489d;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    bottom: -30px;
    left: 50%;
    margin-left: -10px;
  }
  .pageProcess .process01 {
    background: #f8f8f5 url(../img/process/bg-process-01.jpg) center 14px no-repeat;
    background-size: 90px;
  }
  .pageProcess .process01 .numberArea .outer li {
    margin: 0 4% 4% 0;
    padding: 10px;
    width: 48%;
    float: left;
    background-color: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
  }
  .pageProcess .process01 .numberArea .outer li:nth-child(even) {
    margin: 0 0 4% 0;
  }
  .pageProcess .process01 .numberArea .outer li:last-child {
    margin: 0;
  }
  .pageProcess .process01 .numberArea .outer li dl {
    margin: 0;
  }
  .pageProcess .process01 .numberArea .outer li dl dt {
    margin-bottom: 10px;
    padding: 5px 10px;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    background-color: #1e489d;
    line-height: 1.2;
    border-radius: 22px;
  }
  .pageProcess .process01 .numberArea .outer li dl dd {
    text-align: center;
    line-height: 1;
  }
  .pageProcess .process01 .numberArea .outer li dl dd span {
    font-size: 18px;
    font-weight: 700;
    display: inline-block;
    padding-right: 5px;
  }
  .pageProcess .process02 {
    background: #f8f8f5 url(../img/process/bg-process-02.jpg) center 14px no-repeat;
    background-size: 90px;
  }
  .pageProcess .process02 .flowArea li {
    margin-bottom: 40px;
    padding: 0 0 20px 0;
    background-color: #fff;
    position: relative;
  }
  .pageProcess .process02 .flowArea li:last-child {
    margin-bottom: 20px;
  }
  .pageProcess .process02 .flowArea li.arrow:after {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    border-bottom: solid 2px #bfbfbf;
    border-right: solid 2px #bfbfbf;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    bottom: -24px;
    left: 50%;
    margin-left: -7px;
  }
  .pageProcess .process02 .flowArea img {
    width: 100%;
    display: block;
    margin-bottom: 15px;
  }
  .pageProcess .process02 .flowArea h5 {
    margin: 0 0 10px;
    padding: 0 20px;
    font-size: 14px;
    font-weight: 700;
  }
  .pageProcess .process02 .flowArea .txt {
    margin: 0;
    padding: 0 20px;
    font-size: 12px;
    line-height: 1.6;
  }
  .pageProcess .process03 {
    padding: 0;
    background-color: #fff;
  }
  .pageProcess .process03 .processInner.left {
    margin-bottom: 10px;
    padding: 30px 20px 20px;
    background: #f8f8f5 url(../img/process/bg-process-03.jpg) center 14px no-repeat;
    background-size: 90px;
  }
  .pageProcess .process03 .processInner.left .outer {
    background-color: #fff;
  }
  .pageProcess .process03 .processInner.left .outer .image {
    margin-right: 15px;
    width: 40%;
    float: left;
  }
  .pageProcess .process03 .processInner.left .outer h5 {
    margin: 0 0 10px;
    padding: 15px 20px 0 0;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
  }
  .pageProcess .process03 .processInner.left .outer .txt {
    margin: 0;
    padding: 0 20px 0 0;
    font-size: 12px;
    line-height: 1.6;
  }
  .pageProcess .process03 .processInner.right {
    padding: 20px;
    background-color: #f8f8f5;
    text-align: center;
  }
  .pageProcess .process03 .processInner.right .outer {
    padding: 20px 0;
    background-color: #fff;
  }
  .pageProcess .process03 .processInner.right .outer h5 {
    margin: 10px 0 0 0;
  }
  .pageProcess .process04 {
    background: #f8f8f5 url(../img/process/bg-process-04.jpg) center top no-repeat;
    background-size: 90px;
    padding: 0;
    line-height: 60px;
  }
}

/****************************************
simplePage
****************************************/
.pageSimple .mainContents .headLineBold {
  margin: 0 0 25px 0;
}
.pageSimple .mainContents h3.normal {
  margin: 35px 0 15px 0;
}
.pageSimple .mainContents p {
  margin: 0 0 15px 0;
}
.pageSimple .mainContents p.alignRight {
  text-align: right;
}
.pageSimple .mainContents p.bold {
  font-weight: bold;
}
.pageSimple .mainContents ol.normal {
  margin: 0 0 25px 30px;
  list-style-type: decimal;
  list-style-position: outside;
}
.pageSimple .mainContents ol.normal li {
  margin-bottom: 5px;
  padding-right: 20px;
  line-height: 1.6;
}
.pageSimple .mainContents ol.normal li a {
  color: #00a0e9;
  text-decoration: underline;
}
.pageSimple .mainContents ul.normal {
  margin: 0 0 25px 30px;
  list-style-type: disc;
  list-style-position: outside;
}
.pageSimple .mainContents ul.normal li {
  margin-bottom: 5px;
  padding-right: 20px;
  line-height: 1.6;
}
.pageSimple .mainContents ul.normal li a {
  color: #00a0e9;
  text-decoration: underline;
}
.pageSimple .mainContents .noticeBox {
  border: 2px solid #e6e6e6;
}
@media (min-width: 768px) {
  .pageSimple .mainContents .noticeBox {
    padding: 20px;
  }
}
@media (max-width: 767px) {
  .pageSimple .mainContents .noticeBox {
    padding: 12px;
  }
}
.pageSimple .mainContents .noticeBox ul {
  margin-bottom: 0;
}

/****************************************
contact
****************************************/
.pageContact .paragraph {
  border: 1px solid #e6e6e6;
}
@media (min-width: 768px) {
  .pageContact .paragraph {
    padding: 30px 30px 30px 47px;
    margin-bottom: 30px;
  }
}
@media (max-width: 767px) {
  .pageContact .paragraph {
    padding: 15px 15px 15px 32px;
    margin-bottom: 15px;
  }
}
@media (min-width: 768px) {
  .pageContact .paragraph .headLineBold {
    margin-left: -17px;
    font-size: 18px;
    padding-left: 12px;
    border-left: 5px solid #1e489d;
  }
}
@media (max-width: 767px) {
  .pageContact .paragraph .headLineBold {
    margin: 0 0 10px -17px;
    font-size: 14px;
    padding-left: 10px;
    border-left: 3px solid #1e489d;
  }
}
.pageContact .paragraph .last {
  margin-bottom: 0 !important;
}
@media (max-width: 767px) {
  .pageContact .paragraph p {
    margin-bottom: 10px;
    font-size: 12px;
  }
  .pageContact .paragraph li {
    font-size: 12px;
  }
}
.pageContact .notice {
  margin-bottom: 30px;
}
.pageContact .notice ul li {
  color: #666;
}
@media (min-width: 768px) {
  .pageContact .notice ul li {
    font-size: 12px;
  }
}
@media (max-width: 767px) {
  .pageContact .notice ul li {
    font-size: 11px;
  }
}
@media (min-width: 768px) {
  .pageContact .businessHours h2 {
    margin-bottom: 0;
    font-size: 15px;
    font-weight: 700;
  }
}
@media (max-width: 767px) {
  .pageContact .businessHours h2 {
    margin-bottom: 0;
    font-size: 12px;
    font-weight: 700;
  }
}
@media (max-width: 767px) {
  .pageContact .businessHours p {
    font-size: 12px;
  }
}

/****************************************
404
****************************************/
@media (max-width: 767px) {
  .page404 .pageHeader#pageHeaderSimple .pageTitleArea h2 {
    font-size: 15px;
  }
}
.page404 .box404 {
  border: 1px solid #e6e6e6;
  text-align: center;
}
@media (min-width: 768px) {
  .page404 .box404 {
    margin: 40px 0;
    padding: 40px;
  }
}
@media (max-width: 767px) {
  .page404 .box404 {
    margin: 0;
    padding: 40px 20px;
  }
}
.page404 .box404 p {
  text-align: center;
}
@media (min-width: 768px) {
  .page404 .box404 .text span {
    display: block;
  }
}
@media (max-width: 767px) {
  .page404 .box404 .text {
    text-align: left;
  }
}
.page404 .box404 .btnNormal {
  margin: 0;
}
@media (max-width: 767px) {
  .page404 .box404 .btnNormal a {
    font-size: 14px;
  }
}

/*# sourceMappingURL=style.css.map */
/****************************************
recruit project
****************************************/
.pageRecruitStaff .movieTitle{
  font-size: 16px;
  font-weight: bold;
}
.pageRecruitProject .mainContents .paragraph {
  margin-bottom: 60px;
}
.pageRecruitProject .projectImage {
  margin-bottom: 40px;
  text-align: center;
}
.pageRecruitProject .leftArea img,
.pageRecruitProject .rightArea img {
  max-width: 100%;
}
.pageRecruitProject .projectHead {
  margin-bottom: 60px;
  position: relative;
}
.pageRecruitProject .projectHead .projectTitle{
  display: inline-block;
    padding: 15px 30px;
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.9);
    position: absolute;
    top: 40px;
    left: 20px;
}
.pageRecruitProject .project02 .projectHead .projectTitle {
  top: 120px;
  left: 0;
}
.pageRecruitProject .projectHead .projectTitle h2{
  margin: 0;
  font-size: 24px;
  line-height: 1.6;
  font-weight: bold;
  color: #1e489d;
}
.pageRecruitProject .projectHead .projectTitle h2 .small {
  font-size: 16px;
}
.pageRecruitProject .projectHead img {
  width: 100%;
}
.pageRecruitProject .resumeArea {
  margin-bottom: 60px;
  position: relative;
}
.pageRecruitProject .resumeArea .post {
  font-size: 13px;
  line-height: 1.8;
  font-weight: bold;
  margin-bottom: 5px;
}
.pageRecruitProject .resumeArea .name {
  margin-bottom: 15px;
  font-size: 18px;
  line-height: 1.6;
  font-weight: bold;
}
.pageRecruitProject .resumeArea .text {
  margin-bottom: 0;
  font-size: 13px;
  line-height: 1.8;
}
.pageRecruitProject .introText {
  padding: 30px 20px;
  border-top:1px dotted #ccc;
  border-bottom:1px dotted #ccc;
}

@media (max-width: 767px) {
  .pageRecruitProject .projectHead {
    margin-bottom: 40px;
  }
  .pageRecruitProject .projectHead .projectTitle{
      display: block;
      padding: 0;
      background-color: none;
      position: relative;
      top: 0;
      left: 0;
  }
  .pageRecruitProject .project02 .projectHead .projectTitle {
    top: 0;
    left: 0;
  }
  .pageRecruitProject .projectHead .projectTitle h2{
    margin: 20px 0;
    font-size: 18px;
    line-height: 1.6;
    font-weight: bold;
    color: #1e489d;
  }
  .pageRecruitProject .projectHead .projectTitle h2 .small {
    font-size: 13px;
  }
  .pageRecruitProject .mainContents .paragraph {
    margin-bottom: 40px;
  }
  .pageRecruitProject .resumeArea {
    margin-bottom: 30px;
  }
  .pageRecruitProject .resumeArea .leftArea{
    margin-bottom: 20px;
    width: 50%;
  }
  .pageRecruitProject .resumeArea .person {
    position: absolute;
    top:15px;
    left:55%;
  }
  .pageRecruitProject .project02 .resumeArea .person {
    position: relative;
    top:0;
    left:0;
  }
  .pageRecruitProject .resumeArea .post {
    font-size: 11px;
    margin-bottom: 10px;
  }
  .pageRecruitProject .resumeArea .name {
    font-size: 15px;
  }
  .pageRecruitProject .introText {
    padding: 20px;
    border-top:1px dotted #ccc;
    border-bottom:1px dotted #ccc;
  }
}

.privacy_box {
  margin: 50px 0;
  text-align: left;
}
.privacy_title {
  margin: 0 0 20px;
  font-size: 1.8rem;
  font-weight: bold;
}
.privacy_list > li {
  margin-bottom: 30px;
}
.privacy_list > li .title {
  /* font-weight: bold; */
}
.privacy_list .level2,
.privacy_list .level3 {
  padding-left: 2em;
}
.privacy_list .level2 > li {
  margin-bottom: 20px;
}
.privacy_list .level2 p {
  margin-bottom: 10px;
}
.privacy_list .level3 {
  list-style-type: disc;
  list-style-position: inside;
}
.privacy_list_normal li {
  margin-bottom: 5px;
}
.privacy_list_normal.disc{
  list-style-type: disc;
  list-style-position: inside;
}
@media (max-width: 767px) {
  .privacy_box {
    margin: 30px 0;
  }
  .privacy_list .level2,
  .privacy_list .level3 {
    padding-left: 1.5em;
  }
}

.formThanks .thanksArea {
  padding: 40px 0 0;
}
.formThanks .thanksArea .text {
  margin-bottom: 40px;
  font-size: 2.4rem;
  font-weight: 300;
  line-height: 1.6;
  text-align: center;
}

@media (max-width: 767px) {
  .formThanks .thanksArea .text {
    font-size: 1.8rem;
  }
}

.mindora .mainContents .sectionPageLead .leadUnderText {
  margin: 20px 0 0;
}
@media (max-width: 767px) {
  .mindora .mainContents .sectionPageLead .leadUnderText {
    padding: 0 12px;
  }
}

.researchTeamArea .featureBox {
  margin-bottom: 40px;
  padding: 30px;
  background-color: #f6f6f6;
  border-radius: 12px;
}
.researchTeamArea .featureBox .blockList li {
  margin-bottom: 10px;
  padding-left: 14px;
  font-weight: bold;
  line-height: 1.6;
  position: relative;
}
.researchTeamArea .featureBox .blockList li:last-child {
  margin-bottom: 0;
}
.researchTeamArea .featureBox .blockList li::before {
  content:'';
  width: 8px;
  height: 8px;
  background-color: #1e489d;
  position: absolute;
  left:0;
  top:8px;
}
.researchTeamArea .researchTeam {
  margin-top: 40px;
}
.researchTeamArea .reserchTitle {
  margin-bottom: 15px;
}
.researchTeamArea .reserchTitle .text {
  display: block;
  font-size: 1.8rem;
  line-height: 1.6;
  font-weight: bold;
}
.researchTeamArea .reserchTitle .label {
  margin-bottom: 5px;
  display: inline-block;
  padding: 3px 8px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  background-color: #1e489d;
  border-radius: 4px;
}
@media (max-width: 767px) {
  .researchTeamArea .featureBox {
    margin-bottom: 30px;
    padding: 15px;
  }
  .researchTeamArea .researchTeam {
    margin-top: 30px;
  }
  .researchTeamArea .reserchTitle .text {
    font-size: 1.6rem;
  }
}

.tableBoxArea {
  margin-top: 40px;
}
.tableBoxArea__item {
  margin-bottom: 40px;
}
.tableBoxArea_title {
  margin: 0 0 5px;
  font-size: 1.8rem;
  font-weight: bold;
}
.pageSimple .tableBoxArea .tableBoxArea__url {
  margin: 0 0 20px;
}
.tableBoxArea .tableBoxArea__url span {
  font-weight: 700;
  margin-right: 10px;
}
.tableBoxArea .tableBoxArea__table {
  width: 100%;
  border-collapse:collapse;
  font-size: 1.3rem;
  line-height: 1.4;
  border: 1px solid #e6e6e6;
}
.tableBoxArea table .head01,
.tableBoxArea table .head02 {
  width: 12%;
}
.tableBoxArea table .head04,
.tableBoxArea table .head05 {
  width: 25%;
}
.tableBoxArea table th {
  padding: 10px;
  border: 1px solid #e6e6e6;
  background-color: #f6f6f6;
}
.tableBoxArea table td {
  padding: 10px;
  border: 1px solid #e6e6e6;
  vertical-align: top;
  word-break: break-word;
  overflow-wrap: anywhere;
}
.tableBoxArea table a + .optout {
  display: block;
  margin-top: 15px;
}
.tableBoxArea table .optout {
  display: block;
}
.tableBoxArea .tableList {
  margin-left: 1.4em;
  list-style-type:disc;
  list-style-position: outside;
}
.tableBoxArea .tableList li {
  margin-bottom: 5px;
}
@media (max-width: 767px) {
  .tableBoxArea__scroll {
    overflow-x: scroll;
  }
  .tableBoxArea .tableBoxArea__table {
    width: 740px;
  }
}