@charset "UTF-8";
/* mixin
========================================================= */
/* 汎用クラス
========================================================= */
.opacity a:hover img {
  opacity: 0.6;
  /*alpha*/
  -moz-opacity: 0.6;
  /*firefox*/
  filter: alpha(opacity=60);
  /*IE*/
	
}

.shadow a:hover {
  box-shadow: rgba(51, 51, 51, 0.25) 0 0 20px;
}

.btn-shadow:hover {
  box-shadow: rgba(51, 51, 51, 0.25) 0 0 20px;
}
.back-list {
    text-align: right;
}
/* リセット
------------------------------------- */
/*!
 * ress.css • v3.0.1
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  word-break: normal;
  -moz-tab-size: 4;
  tab-size: 4;
}

*, :after, :before {
  background-repeat: no-repeat;
  box-sizing: inherit;
}

:after, :before {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  padding: 0;
  margin: 0;
}

hr {
  overflow: visible;
  height: 0;
}

details, main {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden] {
  display: none;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

a {
  background-color: transparent;
}

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

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

pre {
  font-size: 1em;
}

b, strong {
  font-weight: bolder;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

input {
  border-radius: 0;
}

[disabled] {
  cursor: default;
}

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

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

textarea {
  overflow: auto;
  resize: vertical;
}

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

optgroup {
  font-weight: 700;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

[role=button], [type=button], [type=reset], [type=submit], button {
  cursor: pointer;
  color: inherit;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

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

button, input, select, textarea {
  background-color: transparent;
  border-style: none;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}

select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentColor;
}

legend {
  border: 0;
  color: inherit;
  display: table;
  white-space: normal;
  max-width: 100%;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  color: inherit;
  font: inherit;
}

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

@media screen {
  [hidden~=screen] {
    display: inherit;
  }

  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}
[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled] {
  cursor: default;
}

ul, dl, figure {
  margin: 0;
  padding: 0;
}

dt {
  font-weight: normal;
}

ul, li {
  list-style: none;
}

img, iframe {
  vertical-align: bottom;
  max-width: 100%;
}

button {
  outline: none;
  cursor: pointer;
}

table {
  border-collapse: collapse;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
}

/* 基本設定
========================================================= */
body {
  font-family: "Segoe UI", Meiryo, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 400;
  line-height: 1.6;
  color: #707070;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 960px) {
  body {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

p {
  line-height: 1.6111111111;
}
p + p {
  margin-top: 1.5em;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: right;
}

/* 表示・非表示
----------------------------------------------- */
.hidden {
  display: none;
}

@media (max-width: 399px) {
  .hidden-ss {
    display: none !important;
  }
}

@media (max-width: 639px) {
  .hidden-sp {
    display: none !important;
  }
}

@media (min-width: 640px) {
  .hidden-tab {
    display: none !important;
  }
}

@media (min-width: 960px) {
  .hidden-pc {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .hidden-l {
    display: none !important;
  }
}

@media (min-width: 400px) {
  .visible-ss {
    display: none !important;
  }
}

@media (max-width: 959px) {
  .visible-pc {
    display: none !important;
  }
}

@media (max-width: 1199px) {
  .visible-l {
    display: none !important;
  }
}

@media (min-width: 560px) {
  .only-sp {
    display: none !important;
  }
}
@media (max-width: 400px) {
  .only-sp {
    display: none !important;
  }
}

@media (min-width: 960px) {
  .only-tab {
    display: none !important;
  }
}
@media (max-width: 559px) {
  .only-tab {
    display: none !important;
  }
}

/* リンク
-------------------------------------- */
a {
  text-decoration: none;
  color: #22548d;
  transition: .4s;
}
a img {
  transition: .4s;
  opacity: 1;
}
a img:hover {
  opacity: .8;
}

.external::after {
  display: block;
  width: 18px;
  height: 18px;
  margin-left: 0.4em;
  content: '';
}
.external--white::after {
  background: url(../img/common/ico_window_white.svg) no-repeat center/contain;
}
.external--gray::after {
  background: url(../img/common/ico_window_gray.svg) no-repeat center/contain;
}

::-moz-selection {
  color: #000;
  background: rgba(255, 244, 226, 0.5);
}

::selection {
  color: #000;
  background: rgba(255, 244, 226, 0.5);
}

/* 文字
-------------------------------------- */
.text-left {
  text-align: left !important;
}

.text-center {
  text-align: center !important;
}

.text-right {
  text-align: right !important;
}

.text-bold {
  font-weight: 700;
}

.notice {
  font-size: 14px;
  font-size: 0.875rem;
}

.text-black {
  color: #000;
}

 
.mt-01 {
  margin-top: 60px !important;
}
@media (min-width: 960px) {
   
  .mt-01 {
    margin-top: 120px !important;
  }
}

.mt-02 {
  margin-top: 40px !important;
}
@media (min-width: 960px) {
  .mt-02 {
    margin-top: 80px !important;
  }
}

.mt-03 {
  margin-top: 30px !important;
}
@media (min-width: 960px) {
  .mt-03 {
    margin-top: 60px !important;
  }
}

.mt-04 {
  margin-top: 20px !important;
}
@media (min-width: 960px) {
  .mt-04 {
    margin-top: 40px !important;
  }
}

.mt-05 {
  margin-top: 15px !important;
}
@media (min-width: 960px) {
  .mt-05 {
    margin-top: 30px !important;
  }
}

.mt-0 {
  margin-top: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

/* スクロール用のターゲット
-------------------------------------- */
.scroll-target {
  pointer-events: none;
  display: block;
  margin-top: -90px;
  padding-top: 90px;
}
@media (min-width: 960px) {
  .scroll-target {
    margin-top: -115px;
    padding-top: 115px;
  }
}

/* content
-------------------------------------- */
/* inner
-------------------------------------- */

.s-inner {
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 16px;
  padding-left: 16px;
  box-sizing: content-box;
}
@media (min-width: 960px) {
  .s-inner {
    padding-right: 20px;
    padding-left: 20px;
  }
}


.l-inner {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 16px;
  padding-left: 16px;
  box-sizing: content-box;
}
@media (min-width: 960px) {
  .l-inner {
    padding-right: 20px;
    padding-left: 20px;
  }
}



/* header
-------------------------------------- */
.l-header {
  position: relative;
  z-index: 101;
  border-bottom: #FECA73 5px solid;
  background: #fff;
}
@media (min-width: 960px) {
  .l-header {
    height: 98px;
    align-items: flex-end;
  }
}

.is-headerClone {
  z-index: 100;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  transform: translateY(-100%);
  transition: 0.3s;
}

.is-headerClone--menuShow,
.is-headerClone--show {
  transform: translateY(0);
}

.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 70px;
}
@media (min-width: 960px) {
  .l-header__inner {
    height: 93px;
  }
}

.l-header__logo {
  width: 150px;
}
@media (min-width: 640px) {
  .l-header__logo {
    width: 200px;
  }
}
@media (min-width: 1200px) {
  .l-header__logo {
    width: auto;
    max-width: 425px;
  }
}
.l-header__logo img {
  display: block;
}

.l-header__sub {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  flex: 1;
  margin-left: 1em;
}
@media (min-width: 1200px) {
  .l-header__sub {
    flex: none;
    width: 59.5833333333%;
  }
}

/* ----ナビ------ */

.l-header__gnav {
  width: 100%;
  margin-top: 6px;
  padding-top: 8px;
 
}
.l-header__gnav > ul {
  display: flex;
  
}
.l-header__gnav > ul > li {
 
  margin-left: 5%;
  text-align: center;
}
.l-header__gnav > ul > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #707070;
  font-size: 15px;
  font-size: 0.937rem;
}

.l-header__gnav > ul > li > a span{
	padding-left: 5px;
	line-height: 0;
}


/* ----スマホメニューボタン------ */

.l-header__menuBtn {
  position: absolute;
  right: 0;
  top: 0;
  width: 70px;
  height: 70px;
  background: #EC1D22;
  z-index: 101;
}
.l-header__menuBtn span {
  position: absolute;
  top: 28px;
  left: 50%;
  width: 32px;
  height: 4px;
  margin-left: -16px;
  background: #fff;
  transition: .4s;
}

body.is-menu-open .l-header__menuBtn span {
  width: 36px;
  margin-left: -18px;
}
.l-header__menuBtn span:nth-of-type(1) {
  transform: translateY(-11px);
}
@media (min-width: 960px) {
  .l-header__menuBtn span:nth-of-type(1) {
    transform: translateY(-10px);
  }
}
body.is-menu-open .l-header__menuBtn span:nth-of-type(1) {
  transform: rotate(-45deg);
}
body.is-menu-open .l-header__menuBtn span:nth-of-type(2) {
  opacity: 0;
}
.l-header__menuBtn span:nth-of-type(3) {
  transform: translateY(11px);
}
@media (min-width: 960px) {
  .l-header__menuBtn span:nth-of-type(3) {
    transform: translateY(10px);
  }
}
body.is-menu-open .l-header__menuBtn span:nth-of-type(3) {
  transform: rotate(45deg);
}
.l-header__menuBtn small {
  position: absolute;
  right: 0;
  left: 0;
  bottom: 8px;
  color: #fff;
  text-align: center;
  line-height: 1;
  transition: 0.3s;
  font-size: 12px;
  font-size: 0.75rem;
}

.l-spMenu {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #EC1D22;
  overflow: auto;
  pointer-events: none;
  z-index: -100;
  max-height: 100vh;
  padding: 120px 20px;
  overflow: auto;
  opacity: 0;
  transition: .3s opacity;
  font-size: 18px;
  font-size: 1.125rem;
}
body.is-menu-open .l-spMenu {
  pointer-events: auto;
  opacity: 1;
  z-index: 99;
}
.l-spMenu a {
  color: #fff;
}

.l-spMenu__inner {
  display: flex;
  flex-wrap: wrap;
  margin-left: -30px;
  margin-top: -30px;
}
.l-spMenu__inner > * {
  width: 100%;
  padding-left: 30px;
  margin-top: 30px;
}
@media (min-width: 640px) {
  .l-spMenu__inner > * {
    width: 50%;
  }
}

.l-spMenu__list01 dt {
  margin-bottom: 0.8em;
  padding-bottom: 0.2em;
  border-bottom: #fff 1px solid;
  font-weight: bold;
  font-size: 22px;
  font-size: 1.375rem;
}
.l-spMenu__list01 a {
  display: block;
  margin-top: 0.5em;
}

.l-spMenu__list02 {
  font-weight: bold;
}
.l-spMenu__list02 a {
  display: flex;
  align-items: center;
  margin-top: 1em;
  padding-left: 0.2em;
  border-left: #fff 2px solid;
  line-height: 1.2;
}

/* footer
-------------------------------------- */
.l-footer {
  display: flex;
  flex-wrap: wrap;
  border-top: #EC1D22 7px solid;
}

.l-footer__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3em;
  width: 100%;
  background: #FFF4E2;
}
@media (min-width: 1200px) {
  .l-footer__logo {
    width: 40.8854166667%;
    justify-content: flex-end;
  }
}
.l-footer__logo a {
  width: 200px;
}
@media (min-width: 960px) {
  .l-footer__logo a {
    width: 400px;
  }
}
@media (min-width: 1200px) {
  .l-footer__logo a {
    width: auto;
  }
}

.l-footer__main {
  display: flex;
  flex-wrap: wrap;
  flex: 1;
  padding: 16px;
	max-width: 930px;
}
@media (min-width: 960px) {
  .l-footer__main {
    padding: 30px 40px;
    justify-content: center;
	  
  }
}
@media (min-width: 1200px) {
  .l-footer__main {
    margin-top: -30px;
    justify-content: flex-start;
  }
}




.l-footer__nav01 {
  width: 100%;
  margin-top: 6px;
  padding-top: 8px;
 
}
.l-footer__nav01 > ul {
  display: flex;
      justify-content: right;
}
.l-footer__nav01 > ul > li {
 
  margin-left: 5%;
  text-align: center;
}
.l-footer__nav01 > ul > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #707070;
  font-size: 15px;
  font-size: 0.937rem;
}

.l-footer__nav01 > ul > li > a span{
	padding-left: 5px;
	line-height: 0;
}



.l-footer__nav02 {
  display: flex;
  margin-top: 20px;
	 align-items: center;
  justify-content: right;
	width: 100%;
}
.l-footer__nav02 li + li {
  margin-left: 1.5em;
}
.l-footer__nav02 a {
  display: flex;
  align-items: center;
  padding-left: 0.2em;
  border-left: #FF0202 1px solid;
  font-weight: bold;
  line-height: 1.2;
  color: #707070;
	font-size: 15px;
	font-size: 0.937rem;
}

.l-footer__info {
  width: 100%;
}
@media (max-width: 1199px) {
  .l-footer__info {
    text-align: center;
  }
}
@media (min-width: 960px) {
  .l-footer__info {
    margin-top: 40px;
  }
}
.l-footer__info dt {
  color: #EC1D22;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.125rem;
}
@media (min-width: 960px) {
  .l-footer__info dt {
    font-size: 40px;
    font-size: 2.5rem;
  }
}
.l-footer__info dd {
  font-size: 14px;
  font-size: 0.875rem;
}
@media (min-width: 960px) {
  .l-footer__info dd {
    font-size: 24px;
    font-size: 1.5rem;
  }
}


/* kv トップ以外
-------------------------------------- */
.c-kv {
  position: relative;
}
.c-kv img {
  display: block;
}

.c-kv__bg {
  width: 100%;
}

.c-kv__title {
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 160px;
}
@media (min-width: 640px) {
  .c-kv__title {
    width: 240px;
  }
}
@media (min-width: 960px) {
  .c-kv__title {
    width: auto;
  }
}

/* pageTitle
-------------------------------------- */
.c-pageTitle {
  margin: 50px 0;
}
@media (min-width: 960px) {
  .c-pageTitle {
    margin: 100px 0;
  }
}

/* title
-------------------------------------- */
.c-title {
  margin-bottom: 1em;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 960px) {
  .c-title {
    font-size: 32px;
    font-size: 2rem;
  }
}
.c-title--bg {
  padding: 0.4em 0.8em;
  line-height: 1.4;
  color: #fff;
}
.c-title--bgRed {
  background: #DB4141;
}
.c-title--hasArrow {
  position: relative;
  margin-bottom: 2.5em;
  padding: 0.3em 0.5em;
  text-align: center;
  background: #036EB8;
  font-size: 18px;
  font-size: 1.125rem;
}
@media (min-width: 960px) {
  .c-title--hasArrow {
    font-size: 30px;
    font-size: 1.875rem;
  }
}
.c-title--hasArrow::after {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-style: solid;
  border-width: 20px 40px 0 40px;
  border-color: #036EB8 transparent transparent transparent;
  content: '';
}
@media (min-width: 960px) {
  .c-title--hasArrow::after {
    border-width: 40px 80px 0 80px;
  }
}
.c-title--measure {
  display: flex;
  align-items: center;
  padding: 0.2em 0.6em;
  line-height: 1.4;
  color: #fff;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 960px) {
  .c-title--measure {
    font-size: 32px;
    font-size: 2rem;
  }
}
.c-title--measure span {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  margin-right: 0.4em;
  border-radius: 100%;
  background: #fff;
  content: '';
}
@media (min-width: 960px) {
  .c-title--measure span {
    width: 48px;
    height: 48px;
  }
}
.c-title--measureBgRed {
  background: #B71C25;
}
.c-title--measureBgRed span {
  color: #B71C25;
}
.c-title--measureBgBlue {
  background: #1529C2;
}
.c-title--measureBgBlue span {
  color: #1529C2;
}
.c-title--measureBgYellow {
  background: #DB8325;
}
.c-title--measureBgYellow span {
  color: #DB8325;
}
.c-title--hasBorder {
  line-height: 1.4;
  font-size: 18px;
  font-size: 1.125rem;
}
@media (min-width: 960px) {
  .c-title--hasBorder {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
.c-title--hasBorder::after {
  display: block;
  height: 2px;
  margin-top: 0.3em;
  background: #a6ffa0;
  background: linear-gradient(90deg, #a6ffa0 0%, #91fabe 51%, #07baff 100%);
  content: '';
}

/* subTitle
-------------------------------------- */
.c-subTitle {
  margin-bottom: 1em;
  text-align: center;
  background: #4F4F4F;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
}
@media (min-width: 960px) {
  .c-subTitle {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

/* section
-------------------------------------- */
.c-section {
  margin-bottom: 60px;
}
@media (min-width: 960px) {
  .c-section {
    margin-bottom: 120px;
  }
}

/* table
-------------------------------------- */
.c-table {
  width: 100%;
  table-layout: fixed;
  box-sizing: border-box;
}
.c-table th, .c-table td {
  border: #707070 1px solid;
  text-align: left;
}
@media (max-width: 959px) {
  .c-table th, .c-table td {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.c-table thead th {
  padding: 0.2em 0.5em;
  background: #3f3f3f;
  color: #fff;
}
@media (min-width: 960px) {
  .c-table thead th {
    padding: 0.2em 0.3em;
    font-size: 28px;
    font-size: 1.75rem;
  }
}
.c-table tbody th {
  font-weight: normal;
}
.c-table tbody th, .c-table tbody td {
  padding: 0.2em 0.5em;
}

/* list
-------------------------------------- */
.c-list li {
  display: flex;
}
.c-list--dot {
  margin: 1em 0 1em 1em;
}
.c-list--dot li::before {
  content: '・';
}
.c-list--dot:last-child {
  margin-bottom: 0;
}

/* measureNav 
-------------------------------------- */
.c-measureNav {
  margin-bottom: 2.5em;
}
.c-measureNav li + li {
  margin-top: 1em;
}
.c-measureNav a {
  display: flex;
  align-items: center;
  position: relative;
  max-width: 545px;
  height: 46px;
  padding: 0 1em;
  border-radius: 23px 0 0 23px;
  color: #fff;
  line-height: 1.2;
  font-weight: bold;
  font-size: 14px;
  font-size: 0.875rem;
}
@media (min-width: 960px) {
  .c-measureNav a {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.c-measureNav a::before, .c-measureNav a::after {
  position: absolute;
  right: 0;
  border-style: solid;
  content: '';
}
.c-measureNav a::before {
  top: 0;
  border-width: 0 23px 23px 0;
  border-color: transparent #fff transparent transparent;
}
.c-measureNav a::after {
  bottom: 0;
  border-width: 0 0 23px 23px;
  border-color: transparent transparent #fff transparent;
}
.c-measureNav a span {
  margin-right: 0.5em;
}
.c-measureNav--bgRed a {
  background: #B71C25;
}
.c-measureNav--bgBlue a {
  background: #1529C2;
}
.c-measureNav--bgYellow a {
  background: #DB8325;
}

/* measureInfo
-------------------------------------- */
.c-measureInfo {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: bold;
}


/* コンテンツ
-------------------------------------- */

/* index
-------------------------------------- */
.home-kv {
  font-weight: bold;
  text-shadow: #fff 0 3px 6px;
  background: url("../images/top/main_sp.jpg?2") no-repeat top/contain;
  background-size: cover;
	min-height: 60vh;
    /* width: 100%; */
    /*width: 100vw;*/
}

@media (min-width: 960px) {

.home-kv {

  background: url("../images/top/main.jpg?2") no-repeat top/contain;
background-size: cover;
}
	
}

.home-kv__inner {
  display: flex;
  flex-direction: column;
  align-items:center;
  justify-content: center;
  max-width: 1200px;
  padding-top: 20px;
  padding-bottom: 20px;
	 height: calc(50vh - 48px);
    min-height: 480px;
}
@media (min-width: 960px) {
	
  .home-kv__inner {
	  align-items:flex-start;
  justify-content: center;
    height: calc(50vh - 48px);
    min-height: 480px;
   padding-top: 50px;
    padding-bottom: 0;
  }
}

.home-kv__logo {
  margin-bottom: 30px;
  text-align: center;
  color: #2E2E2E;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  font-weight: bold;
  font-size: 28px;
  font-size: 1.75rem;
}
@media (min-width: 960px) {
  .home-kv__logo {
    margin-bottom: 40px;
  }
}
.home-kv__logo img {
  display: block;
  width: 250px;
  margin: 0 auto 0.5em;
}
@media (min-width: 960px) {
  .home-kv__logo img {
    width: auto;
  }
}

.home-kv__text {
  width: 100%;
  text-shadow: white 0 3px 6px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
.home-kv__text p:first-child {
  text-align: center;
  font-size: 22px;
}
@media (min-width: 960px) {
  .home-kv__text p:first-child {
    font-size: 32px;
  }
}
.home-kv__text p + p {
  margin-top: 1em;
}

/* Topics
-------------------------------------- */
#topics{
	
	
}
.topics__header h1{
	 width: 100%;


  text-align: left;
  color: #707070;
  line-height: 1;
  font-weight: normal;
  font-size: 40px;
 margin-bottom: 40px;
margin-top:40px;
	
}
.topics__box {
  width: 100%;
  margin-top: 40px;
	    max-width: 1200px;
	margin: auto;
	
}

.topics__title {
 width: 100%;
  font-weight:  bold;

  text-align: left;
  color: #707070;
  line-height: 1;
  font-weight: normal;
  font-size: 54px;
 margin-bottom: 40px;
margin-top:40px;
}
@media (min-width: 960px) {
  .topics__title {
   font-size: 54px;

  }
}

.topics__title2 {
 width: 100%;
  padding-left: 0.4em;

  text-align: center!important;
  color: #707070;
  line-height: 1;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
    text-align: left;
    margin-top: 20px;
}
@media (min-width: 960px) {
  .topics__title2 {
   font-size: 20px;
  font-size: 1.25rem;
  }
}


/* choice
-------------------------------------- */
.choice{}

.choice__box {
  width: 100%;
  margin-top: 40px;
	    max-width: 750px;
	margin: auto;
	
}
@media (min-width: 960px) {
  .choice__box {
    	 margin-top: 40px;
	margin-bottom: 40px;
  }
}
.choice__header{
	margin-bottom: 40px;
	margin-top: 40px;
}
.choice__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
 
}

.choice__title {
 width: 100%;
  

  text-align: center;
  color: #707070;
  line-height: 1;
  font-weight: normal;
  font-size: 54px;
 margin-bottom: 40px;
margin-top:40px;
}
@media (min-width: 960px) {
  .choice__title {
   font-size: 54px;

  }
}

.choice__title2 {
 width: 100%;
  padding-left: 0.4em;

  text-align: center!important;
  color: #707070;
  line-height: 1;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
    text-align: left;
    margin-top: 20px;
}
@media (min-width: 960px) {
  .choice__title2 {
   font-size: 20px;
  font-size: 1.25rem;
  }
}

.choice-text{
	text-align: center;
}

.question{
	margin-top: 50px;
	margin-bottom: 50px;
	  display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
	
}


.question li span{
	font-size: 20px;
	display: block;
}
.question li a{
	
	display: block;
	
	text-align: center;
	line-height: 32px;
	font-size: 40px;
}
.question li {
	padding: 1%;
		border-radius: 20px;
	background: #CEE2FF;
	width: 200px;
}
.question li:first-child{
	background: #FCDED5;
	
}

@media (max-width: 640px) {
	
	.question li a{

	font-size: 30px;
}
.question li span{
	font-size: 15px;
	display: block;
}
.question li {
	
	width: 150px;

}	
}

/* news
-------------------------------------- */
.home-news {
  position: relative;
  padding: 40px 0;
}
.home-news::before {
  position: absolute;
  top: -4px;
  right: 0;
  left: 0;
  height: 8px;
  background: url(../img/home/news_line.svg) repeat-x center;
  content: '';
}
@media (min-width: 960px) {
  .home-news {
    padding: 70px 0;
  }
}



.home-news__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -40px;
}

.home-news__box {
  width: 100%;
  margin-top: 40px;
	    max-width: 1200px;
	margin: auto;
}
@media (min-width: 960px) {
  .home-news__box {
    
  }
}

.home-news__header {
 
  margin-bottom: 1em;

 
  line-height: 1.2;
}
.home-news__header a {
  color: #707070;
}





.home-news__title {
 width: 100%;
  

  text-align: left;
  color: #707070;
  line-height: 1;
  font-weight: bold;
font-size: 16px;
    font-size: 1rem;
  margin-bottom: 40px;
margin-top:40px;
}
@media (min-width: 960px) {
  .home-news__title {
          font-size: 26px;
        font-size: 1.625rem;

  }
}

.home-news__title2 {
 width: 100%;
  padding-left: 0.4em;

  text-align: center;
  color: #707070;
  line-height: 1;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
    text-align: left;
    margin-top: 20px;
}
@media (min-width: 960px) {
  .home-news__title2 {
   font-size: 20px;
  font-size: 1.25rem;
  }
}



.home-news__list {
  font-size: 14px;
  font-size: 0.875rem;
 border-bottom: #ccc 3px solid;
	 border-top: #ccc 3px solid;
	
}




.home-news__list--scrollable {
  height: 400px;
  overflow: auto;
}
.home-news__list--scrollable .text {
  text-decoration: none !important;
}
.home-news__list--scrollable .text a {
  text-decoration: underline;
}
.home-news__list li {
  margin-top: 6px;
  padding: 1em;
  border-bottom: 1px #ccc solid;
}
.home-news__list li > * {

  color: #707070;
}
.home-news__list .date {
 
 
  color: #F0A337;
	text-align: left;
	  
}
.home-news__list .date::before {
  width: 19px;
  height: 18px;
  margin: 0.1em 0.2em 0 0;
  background: url(../img/common/ico_date.gif) no-repeat center/contain;
  content: '';
}
@media (min-width: 960px) {
	.home-news__list .date {
   
  
    color: #000;
    text-align: left;
   
}
}

.home-news__list a {
  color: #707070;
}
.home-news__list .text {
text-decoration: underline;
    margin-top: 5px;
}

.home-news__list .new span::after{
	content: "新発売";
	background: #FF6D6D;
	padding: 2px 10px 2px 10px;
	margin-left: 10px;
	color: #fff;
}
.home-news__list .news span::after{
	content: "お知らせ";
	background: #57C474;
	padding: 2px 10px 2px 10px;
	margin-left: 10px;
	color: #fff;
}
/* product
-------------------------------------- */
.home-product{
	width: 100%;
	background: #FFF6EE;
	padding-top: 0.2em;
	padding-bottom: 2em;
}
.home-product__inner ul{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
	margin-bottom: 40px;
}

.home-product__inner ul li:first-child{
	margin-left: 0px;
}
.home-product__inner ul li{
	margin-left: 10px;
}

@media (max-width: 640px) {
.home-product__inner ul li:first-child{
	margin-left: 0px;
	margin-bottom: 20px;
}
.home-product__inner ul li{
	margin-left: 0px;
}
}

.home-product__title {
 width: 100%;
  padding-left: 0.4em;

  text-align: left;
  color: #707070;
  line-height: 1;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
  margin-bottom: 40px;
margin-top:40px;
}
@media (min-width: 960px) {
  .home-product__title {
 font-size: 20px;
  font-size: 1.25rem;
  }
}





/* pankuzu
-------------------------------------- */
.pankuzu{
	
}


/*---------------------------- ir_page side------------------------ */
.side-title__main{

		font-size:20px;
	border-bottom: solid #707070 1px;
	padding-bottom: 5px;
	margin-bottom: 10px;
}
#side ul{
	margin-bottom: 20px;
}
#side li{
	border-left: solid #707070 1px;
	border-right: solid #707070 1px;
	border-top: solid #707070 1px;
		padding: 3.5%;
	font-size:15px;
	text-align: center;
}
#side li:last-child{
	border-bottom: solid #707070 1px;
}
.side_title__list{
	background: #C2DDFF;

	font-size:20px;
}

/*---------------------------- ir_page------------------------ */

#page-main{
	  display: flex;
  align-items: flex-end; /* ここ！！ */
}

#side{
	  width: 30%;
  position: -webkit-sticky;
  position: sticky;
  bottom: 20px;
	max-width: 280px;
	padding-left: 3%;
	
}

#ir_page-contet__wrap{
	margin-bottom: 100px;
	  width: 70%;
	max-width: 890px
}

@media (max-width: 960px) {
#page-main{
	  display: block;

}
#side{
	  width: 100%;
  
  position: relative;
  bottom: 0px;
max-width: 100%;
	padding-left: 0%;
	
}

#ir_page-contet__wrap{
max-width: 100%;
	  width: 100%;

}
}



.ir_page-page__header{
	display: flex;
	flex-shrink: 0;
	justify-content: flex-start;
  align-items:flex-end;
  flex-wrap: wrap;
	margin-top: 50px;
	padding-bottom: 10px;
	border-bottom: solid 4px #FCDED5;
	margin-bottom: 20px;
}

.ir_page-page__header .left{
	width: 70%;
	
}

.ir_page-page__header .left-bt span{
	padding: 10px 10px 10px 10px;
	color: #000;

}
.ir_page-page__header .left-bt span.active {
	background: #D98C8C;
	color: #fff;

}
@media (max-width: 640px) {

	.ir_page-page__header .left-bt span{
		font-size: 12px;
	padding: 10px 2px 10px 2px;


}
	
	.ir_page-page__header{
	
	
  align-items:center;

	margin-top: 10px;

}
}

#ir_page-contet__wrap figure{
	text-align: center;
	margin: 20px 0 20px 0;
}

/* .ir_page  title
-------------------------------------- */
#ir_page-contet__wrap h1{
	font-size: 23px;
	font-weight: bold;
	margin-bottom: 30px;

}
@media (min-width: 640px) {
#ir_page-contet__wrap h1{
	font-size: 50px;
}
}


#ir_page-contet__wrap h1 span{

	
}
#ir_page-contet__wrap h2{
	background: #E6BABA;
	font-size: 25px;
	padding: 1% 3% 1% 3%;
	
	margin-bottom: 20px;
	color: #fff;
}
@media (min-width: 640px) {
#ir_page-contet__wrap h2{
	font-size: 40px;
}
}



#ir_page-contet__wrap h3{
	font-size: 25px;
	padding-bottom: 5px;
	border-bottom: solid 2px #FCDED5;
	margin-bottom: 20px;
	color: #D98C8C;
}
@media (min-width: 640px) {
#ir_page-contet__wrap h3{
	font-size: 40px;
}
}

#ir_page-contet__wrap .pick-title{
	font-weight: bold;
}



/* p
-------------------------------------- */
#ir_page-contet__wrap p{
	font-size: 15px;
	margin-bottom: 20px;
}
@media (min-width: 640px) {
#ir_page-contet__wrap p{
	font-size: 20px;
}
}
/* ul li 
-------------------------------------- */
#ir_page-contet__wrap ul {
	padding-left: 20px;
	list-style-type: disc;
	list-style-position: outside;
	
}

#ir_page-contet__wrap li{
	margin-bottom: 10px;
	list-style: disc;
	

}




/* ir_page btn
-------------------------------------- */
.page-btn__type01{
	display: flex;
	align-items:center;
	justify-content: center;
  flex-wrap: wrap;
	margin-top: 40px;
	margin-bottom: 40px;
}

.page-btn__type01 li{
	margin-left: 20px;
	list-style: none!important;
	width: 30%;
}
.page-btn__type01 li:first-child{
	margin-left: 0px;
}

@media (max-width: 960px) {
.page-btn__type01{
	

}
	.page-btn__type01 li{
    text-align: center;
    margin-left: 5px; 
    margin-bottom: 30px;
    width: 30%;
}
}


.page-btn__type{
	display: flex;
	align-items:center;
	justify-content: center;
  flex-wrap: wrap;
	margin-top: 40px;
	margin-bottom: 40px;
}

.page-btn__type li{
	margin-left: 20px;
	list-style: none!important;
	width: 30%;
}


.page-btn__type li:first-child{
	margin-left: 0px;
}

.page-btn__type li a{
	font-size: 18px;
	background: #E6BABA;
	border-radius: 5px;
	color: #fff;
	padding: 5% 2% 5% 2%;
	display: block;
	text-align: center;
}
.page-btn__type li a:hover{
	background: #D98C8C;
}

.page-btn__type li.active a{
	background: #D98C8C!important;
}


@media (max-width: 960px) {
.page-btn__type{
	

}
	.page-btn__type li{
    text-align: center;
    margin-left: 5px; 
    margin-bottom: 30px;
    width: 30%;
}
}

/*---------------------------- ir_page END------------------------ */


/*---------------------------- normal page------------------------ */
#page-contet__wrap{
	margin-bottom: 100px;
}


/*  btn
-------------------------------------- */
.page-btn__type02{
	display: flex;
	align-items:center;
	justify-content: center;

	margin-top: 40px;
	margin-bottom: 40px;
}

.page-btn__type02 li{
	margin-left: 20px;
		list-style: none!important;
}
.page-btn__type02 li:first-child{
	margin-left: 0px;
}

@media (max-width: 960px) {
.page-btn__type02{
	

}
	.page-btn__type02 li{
    text-align: center;
    margin-left: 5px; 
    margin-bottom: 30px;
    width: 50%;
}
}





/* .normal  title
-------------------------------------- */
#page-contet__wrap h1{
	font-size: 23px;
	font-weight: bold;
	margin-bottom: 0;

}
@media (min-width: 640px) {
#page-contet__wrap h1{
	font-size: 50px;
}
}


#page-contet__wrap h1 span{

	font-size: 15px;
	display: block;
	font-weight: normal;
}

@media (min-width: 640px) {
#page-contet__wrap h1 span{
font-size: 25px;

}
}
.first-block__content h2{
	font-size: 25px;
	color: #D98C8C!important;
	border: none!important;
	font-weight: normal;
}
@media (min-width: 640px) {
.first-block__content h2{
font-size: 40px;

}
}


#page-contet__wrap h2{
	font-size: 25px;
	padding-bottom: 5px;
	border-bottom: solid 2px #FCDED5;
	margin-bottom: 20px;
	margin-top: 20px;
	color: #707070;
}
@media (min-width: 640px) {
#page-contet__wrap h2{
	font-size: 40px;
	margin-top: 50px;
}
}

#page-contet__wrap h3{
	font-size: 20px;
	margin-bottom: 20px;
	color: #707070;
	
}
@media (min-width: 640px) {
#page-contet__wrap h3{
	font-size: 32px;

	
}
}


.x-small{
	font-size: 12px!important;
	max-width: 650px;
	margin-left: auto;
	margin-right: auto;
}



/* liset__
-------------------------------------- */
.page-liset__01 li  {
    display: flex;
    color: #707070;
}
.page-liset__01 .deta{
    width: 7em
}
.page-liset__01 .text {
    flex: 1;

}

/* first-block__content
-------------------------------------- */
.first-block__content{
    display: block;

    margin-top: 50px;
    padding-bottom: 10px;
}

.first-block__content  div:first-child{
	width: 100%;
margin-right: 0%;
	padding-top: 0px;
}


@media (min-width: 640px) {
.first-block__content{
    display: flex;
    flex-shrink: 0;
    justify-content: flex-start;
    align-items: flex-start;
  
    margin-top: 10px;
    padding-bottom: 10px;
}

.first-block__content  div:first-child{
	width: 80%;
margin-right: 5%;
padding-top: 30px;
}
}
 /* tag
-------------------------------------- */
.tag{
	
}
.tag li {
	display: inline-block;
	margin-left: 10px;
	margin-bottom: 10px;
}
.tag li a{
	background: #D98C8C;
	border-radius: 5px;
		padding: 0px 5px 5px 5px;
	color: #fff;
}

/* 2-block__content
-------------------------------------- */
.block2__content{
	display: block;
}


.block2__content .left{
	width: 100%;
margin-right: 5%;
	padding-top: 0px;
	
}
.block2__content img{
	width: 100%;
}

@media (min-width: 960px) {
.block2__content{
    display: flex;
 
  
    margin-top: 10px;
    padding-bottom: 10px;
	}	
	.block2__content .in_block{
		display: flex;
justify-content: space-around;
    background: #fff;
	}
	.block2__content .in_block div{
	max-width: 300px;
  

	}
	.block2__content .in_block div:first-child{
		position: relative;
	}
		.block2__content .in_block li,.block2__content .in_block__left li {
margin-bottom: 20px;
	}
	
.line {
    margin: 0rem 1rem;
    margin-top: 17%;
    width: 28px;
    background-color: #707070!important;
    max-width: 1px!important;
  
}
	.block2__content .in_block .list{
		border-right: solid 1px #000;
		padding-right: 10%;
	}
	
.block2__content .left{
    width: 37%;
    max-width: 300px;
    min-width: 295px;

	
}	
	
}


/*---------------------------- topics page------------------------ */

#topics_page-contet__wrap {
	margin-bottom: 80px;
}

.topics_page__header h1{
	
}

.topics_page__header h1{
	font-size: 23px;
	font-weight: bold;
	margin-bottom: 0;
	margin-top: 30px;

}
@media (min-width: 640px) {
.topics_page__header h1{
	font-size: 40px;
}
}

#topics_page-contet__wrap h2{
		font-size: 18px;
	font-weight: bold;
	margin-top: 30px;
	margin-bottom: 10px;
}
@media (min-width: 640px) {
#topics_page-contet__wrap h2{
		font-size: 30px;
	font-weight: bold;
}
}

.t-table01 table {
    border-top: 1px solid #4f4d47;
    border-right: 1px solid #4f4d47;
    width: 100%;
    border-spacing: 0;
    margin: 0 auto;
	table-layout: fixed;
}
.t-table01 th, td {
	font-size: 15px;
    border-bottom: 1px solid #4f4d47;
    border-left: 1px solid #4f4d47;
    text-align: left;
    padding: 25px;
	word-break:break-all;

}
.type01 th { background-color: #D9E8EF; color: #000;}	
.type02 th { background-color: #D98C8C; color: #fff;}	
.type03 th { background-color: #D98C8C; color: #fff;}	

@media only screen and (max-width: 640px) {
.t-table01 table { width: 100%; border:none; padding: 10px;}
.t-table01 thead { display: none;}
	.t-table01 th, td {
border-left: none;
		
	}
.t-table01 tr {
    border-top: none;
    display: block;
    margin-bottom: 20px;
}
.t-table01 td {
   border-top: none;
    border-bottom: none;
    display: block;
    padding: 0;
}
 
/* tdのデザイン */
.t-table01 td:nth-of-type(1) { 
	margin-top: 40px!important;
	}
.t-table01 td:last-child { border-top: none;}
     
	
	

/*td:beforeのデザイン*/
.type01 td:before {
    background-color: #D9E8EF;
    color: #4f4d47;
    display: block;
	font-weight: bold;
	padding-left: 1%;
	margin-top: 10px;
}
	
.type02 td:before,.type03 td:before {
    background-color: #D98C8C;
    color: #4f4d47;
    display: block;
	font-weight: bold;
	padding-left: 1%;
	margin-top: 10px;
}	
	
 
/* contentでタイトルを追加 */
.type01 td:nth-of-type(1):before { content: '所管';}
.type01 td:nth-of-type(2):before { content: '文書名';}
.type01 td:nth-of-type(3):before { content:'リンク';}


/* contentでタイトルを追加 */
.type02 td:nth-of-type(1):before { content: 'Date';}
.type02 td:nth-of-type(2):before { content: 'Subject';}
.type02 td:nth-of-type(3):before { content:'PDF';}
	
/* contentでタイトルを追加 */
.type03 td:nth-of-type(1):before { content: 'Date';}
.type03 td:nth-of-type(2):before { content: 'Subject';}
.type03 td:nth-of-type(3):before { content:'DOI / Link';}
}

	

.matchHeightList{
	overflow: hidden;
}
.equal-height{

width: 20%;
    margin-top: 5%;
    padding: 20px;

    background: #ddd;
}

 /* table
-------------------------------------- */
.tbl-r01 th {
  background: #C67375;
  border: solid 1px #ccc;
  color: #fff;
  padding: 10px;
}

.tbl-r01 td {
  border: solid 1px #ccc;
  padding: 10px;
	color: #C67375;
}

.tbl-r01 {
	min-width: 800px;
  margin: 20px auto;
	  border-collapse: collapse;
}


@media screen and (max-width: 1200px) {
  .scroll {
    overflow-x: auto;
	  
  }
  .tbl-r01 {
    min-width: 800px;
    margin: 0 10px 50px;

  }
  .tbl-r01 td {
    border-top: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
  }
}

  .tbl-r01 {

	    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  }

@media (min-width: 960px) {
  .asuiMeasure-table {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

/* contact-call
-------------------------------------- */
.contact-call{
	display: block;
	margin-top: 50px;
	text-align: center;
}

/* first_contet
-------------------------------------- */
#first-content{}
#first-content .left-content{}
#first-content .right-content{}
#first-content .btn{}
#first-content .tag{}
#first-content .tag li{}
#first-content .tag li a{} 
#first-content .tag li{}

#first-content figure{}
#first-content .first-title{}

/* first_contet イレギュラー
-------------------------------------- */
#kuro-main{
	
}

#kuro-main .left{}
#kuro-main .btn{}
#kuro-main .right{}




/* table
-------------------------------------- */
.page-table__type01{}





@media (min-width: 960px) {

}
@media (min-width: 640px) {

}





/*パンくず
-------------------------------------- */
.cp_breadcrumb *, .cp_breadcrumb *:after, .cp_breadcrumb *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_breadcrumb {
	margin: 0em auto;
	padding: 1em 1em;
	max-width: 1200px;

}
.cp_breadcrumb a {
	text-decoration: none;
	color: #7986CB;
	font-size: 12px;
}
.cp_breadcrumb .breadcrumbs {
	padding-left: 0;
	margin-top: 0;
	margin-bottom: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
.cp_breadcrumb li {
	display: inline-block;
	position: relative;
	padding-right: calc(16px + 8px);
	margin-right: 8px;
	color: #7986CB;
}
.cp_breadcrumb li::before {
	content: '›';
	width: 1em;
	height: 1em;
	line-height: 1;
	text-align: center;
	font-size: 1em;
	color: inherit;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.cp_breadcrumb li:last-child::before {
	content: normal;
}

@media (min-width: 960px) {
.cp_breadcrumb a {
font-size: 15px;
}
}


		 .info-block{
													 position: relative;
													 margin-top: 50px;
												 }
												 .info-block div{
													 border: solid 1px #ccc;
													 padding: 5%;
													 text-align: center;
												 }
												 .info-block h4{
													    background: #fff;
    /* margin-top: -51px; */
    display: inline-block;
    position: absolute;
    left: 40px;
    top: -25px;
    padding: 5px;
    font-size: 24px;
												 }
												 @media screen and (max-width: 960px) {
													 	 .info-block h4{
    background: #fff;
    /* margin-top: -51px; */
    display: flex;
    /* align-items: center; */
    justify-content: center;
    width: 80%;
    position: relative;
    left: auto;
    right: auto;
    /* top: -46%; */
    /* right: 25%; */
    padding: 5px;
    font-size: 20px;
    margin: auto;
    margin-top: -5%;
    /* margin-bottom: -10px; */
    text-align: center;
												 }
													 
												 }


