@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Hind+Guntur:wght@300;400;500;600;700&display=swap');
/* ****************************************************************************

目次

-------------------------------------------------------------------------------

　00. リセット用スタイル
　00. タグ固有のスタイル指定
　00. グローバルヘッダー
　00. サブヘッダー
　00. メインコンテンツ
　00. サブフッター
　00. グローバルフッター
　00. 表示切替

******************************************************************************* */
/* ==

　00. リセット用スタイル

=============================================================================== */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  outline: 0;
  border: 0;
  background: transparent;
  vertical-align: baseline;
  font-size: 100%;
}
body {
  line-height: 1;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
* {
  box-sizing: border-box;
}

*:before,
*:after {
  box-sizing: inherit;
}
nav ul {
  list-style: none;
}
a {
  margin: 0;
  padding: 0;
  background: transparent;
  vertical-align: baseline;
  font-size: 100%;
}
/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}
/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-weight: bold;
  font-style: italic;
}
del {
  text-decoration: line-through;
}
abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-spacing: 0;
  border-collapse: collapse;
}
/* change border colour to suit your needs */
hr {
  display: block;
  margin: 1em 0;
  padding: 0;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
}
input,
select {
  vertical-align: middle;
}
ol,
ul {
  list-style: none;
}
/* ==

　00. タグ固有のスタイル指定

	□　各フォントサイズの指定値
 *  10 px : 84%   |  11 px : 92%
 *  12 px : 100%  |  13 px : 109%
 *  14 px : 117%  |  15 px : 125%
 *  16 px : 134%  |  17 px : 142%
 *  18 px : 150%  |  19 px : 159%
 *  20 px : 167%  |  22 px : 184%
 *  24 px : 200%  |  26 px : 217%
 *  28 px : 234%  |  30 px : 250%
 *  32 px : 267%

 	※％指定がネストする場合の指定値は別途要計算
=============================================================================== */
html {
  overflow-y: scroll;
  font-size: 62.5%;
}
html,
body {
  height: 100%;
}
body {
  line-height: 1.5;
  background-color: #fff;
  color: #333;
  font-family: "Hind Guntur", sans-serif;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
a img {
  border: none;
}
a {
  color: #333;
}
em {
  font-weight: bold;
  font-style: normal;
}
th,
td {
  vertical-align: top;
  text-align: left;
}
sup,
sub {
  margin: 0 1px;
  vertical-align: 0.3em;
  font-size: 70%;
}
sub {
  vertical-align: baseline;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
  font-family: "Hind Guntur", sans-serif;
  font-weight: normal;
}
/* ==

　00. グローバルヘッダー

=============================================================================== */
#header {
  width: 100%;
  min-width: 1240px;
  height: 96px;
  padding: 0;
  border-top: 3px solid #fa0046;
  border-bottom: 1px solid #d9d9d9;
  background-color: #fff;
  box-sizing: border-box;
}
.header_in {
  position: relative;
  max-width: 1240px;
  margin: 0 auto;
  padding: 23px 0 0;
}
.header_logo {
  position: absolute;
  top: 10px;
  left: 10px;
  line-height: 1;
  font-size: 10px;
}
.header_id {
  line-height: 1;
  margin: 0 0 23px 115px;
  font-size: 10px;
}
.header_id img {
  width: auto;
  height: 26px;
}
.header_group {
  position: absolute;
  top: 11px;
  right: 0;
  line-height: 1.4;
  font-size: 1.4rem;
  font-weight: 400;
}
.header_group a {
  text-decoration: none;
}
.header_group a[target=_blank]::after {
  content: "";
  display: inline-block;
  margin: 0 0 0 6px;
  width: 15px;
  height: 10px;
  background: url(/common/images/blank_ico01.svg) left top no-repeat;
  background-size: contain;
}
.d_hover .header_group a {
  transition: opacity 0.3s;
}
.d_hover .header_group a:hover {
  opacity: 0.6;
}
/* ==

　00. サブヘッダー

=============================================================================== */
#subHeader {
  max-width: 1240px;
  min-height: 50px;
  margin: 0 auto;
}
.subHeader_wrap {
  position: relative;
  width: 100%;
  background-color: #fff;
  z-index: 10;
}
.funcFix .subHeader_wrap {
  position: fixed;
  top: 0;
  left: 0;
  border-top: 2px solid #de163d;
  background-color: #fff;
  box-shadow: 0px 0px 10px 3px rgba(0,0,0,0.15);
  z-index: 1100;
}
.subHeader_in {
  margin: 0 auto;
  max-width: 1240px;
}
.funcFix .subHeader_in-static {
  display: none !important;
}
.funcFix .subHeader_in-fix {
  display: block !important;
  padding: 0 15px;
}
.subHeader_in-fix {
  display: none !important;
}
.subHeader_id {
  display: none !important;
}
.funcFix .subHeader_id {
  display: flex !important;
  align-items: center;
  margin: 0 20px 0 0;
}
.funcFix .subHeader_id img {
  max-height: 14px;
  width: auto;
}
.subHeader_nav,
.subHeader_nav ul {
  display: flex;
}
.subHeader_nav li {
  position: relative;
  line-height: 20px;
  margin: 0 20px 0 0;
  font-size: 1.4rem;
  font-weight: 300;
}
.subHeader_nav li > a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  padding: 4px 13px 0px 14px;
  text-decoration: none;
}
.subHeader_nav li > a::before {
  position: absolute;
  right: 50%;
  bottom: 0;
  left: 50%;
  display: block;
  height: 2px;
  background-color: #e40330;
  content: "";
}
.subHeader_nav li > a:hover::before {
  animation: subHeaderLine 0.1s forwards;
}
.subHeader_nav li.is-cat-active > a {
  font-weight: 600;
}
@keyframes subHeaderLine {
  0% {
    right: 40%;
    left: 40%;
    opacity: 0;
  }
  100% {
    right: 0;
    left: 0;
    opacity: 1;
  }
}
/* ==

　00. メインコンテンツ

=============================================================================== */
.main {
  min-width: 1240px;
}
.content {
  max-width: 1300px;
  margin: 80px auto;
  padding: 0px 30px;
}
/* ==

　00. 固定フッター

=============================================================================== */
#fixFooter {
  position: relative;
  width: 100%;
  height: 40px;
  min-width: 1240px;
  z-index: 90;
}
.fixFooter_wrap {
  width: 100%;
}
.funcFix .fixFooter_wrap {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 90;
}
.fixFooter_top {
  position: absolute;
  right: 16px;
  bottom: 20px;
  width: 20px;
  height: 102px;
  background: url(../images/ico_pagetop.png) center center no-repeat;
  background-size: 10px 102px;
  cursor: pointer;
}
/* ==

　00. グローバルフッター

=============================================================================== */
#footer {
  position: relative;
  width: 100%;
  min-width: 1240px;
  margin: 0;
  padding: 0;
  background-color: #fff;
  z-index: 4;
}
.footer_wrap {
  border-bottom: 3px solid #fa0046;
}
.footer_in {
  position: relative;
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 30px;
  text-align: left;
  box-sizing: border-box;
}
.footer_global,
.footer_utility {
  line-height: 1.2;
  padding: 0 0 8px;
  overflow: hidden;
}
.footer_utility {
  margin: 0 0 10px;
  padding: 5px 0 0;
}
.footer_global li,
.footer_utility li {
  float: left;
  margin: 0 13px 0 -7px;
  padding: 0 0 0 6px;
  border-left: 1px solid #4d4d4f;
  color: #2c2c2c;
  font-size: 13px;
  font-weight: 400;
}
.footer_utility li {
  font-size: 11px;
}
.footer_copy {
  display: block;
  line-height: 1.1;
  padding: 0 0 15px;
  color: #4d4d4f;
  font-size: 11px;
  font-weight: 400;
  text-align: right;
}
.footer_in a {
  line-height: 1.1;
  color: #4d4d4f;
  text-decoration: none;
  vertical-align: text-bottom;
}
.d_hover .footer_in a:hover {
  text-decoration: underline;
}
/* 回り込み解除
------------------------------------------------------------------------------- */
#footer ul:after {
  display: block;
  clear: both;
  height: 0;
  content: "";
}
/* ==

　00. 表示切替

=============================================================================== */
.devPc {
  display: block;
}
.devPcTbl {
  display: block;
}
.devTbl {
  display: none;
}
.devTblSmp {
  display: none;
}
.devSmp {
  display: none;
}
img.devPc,
img.devPcTbl {
  display: inline;
}
img.devTbl,
img.devTblSmp,
img.devSmp {
  display: none;
}
/* ==

　99. 印刷

=============================================================================== */
@media print {
}
