@charset "UTF-8";
/* Description: initial setting */
/* ===== CONTENTS =========================================== 1: body and base setting : general params 2: link setting 3: common style ========================================================== */
/*
===== 1: body and base setting ===========================
*/
body, input, textarea { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; margin: 0px; padding: 0px; color: #231815; font-size: 14px; letter-spacing: 0.01em; line-break: normal; word-break: strict; }

/* general params
--------------------*/
h1, h2, h3, h4, h5, h6, div, p, pre, ul, ol, dl, dt, dd, address, form, blockquote { margin: 0; padding: 0; text-align: left; display: block; }

table { margin: 0; }

img { vertical-align: text-bottom; }

li { list-style: none; }

/* link do not want a dot */
li, dd, dt, p, table { line-height: 1.8em; font-weight: normal; }

em { font-style: normal; }

/*
===== 2: link setting ===========================
*/
a:hover img { filter: alpha(opacity=70); -moz-opacity: 0.7; opacity: 0.7; }

a { color: #231815; text-decoration: underline; }

a:hover { color: #a60022; }

.Bt_under { border: solid 1px #d7d8d8; padding: 10px; text-decoration: none; background: url(../images/common/arrow_black02.png) no-repeat 90% 50%; background-size: 13px; padding-right: 30px; cursor: pointer; }

.Bt_right { border: solid 1px #d7d8d8; padding: 10px; text-decoration: none; background: url(../images/common/arrow_black01.png) no-repeat 90% 50%; background-size: 7px; padding-right: 25px; cursor: pointer; }

.Bt_under:hover { border: solid 1px #ad0022; padding: 10px; text-decoration: none; background: url(../images/common/arrow_white02.png) no-repeat 90% 50% #ad0022; background-size: 13px; padding-right: 30px; color: #fff; cursor: pointer; }

.Bt_right:hover { border: solid 1px #ad0022; padding: 10px; text-decoration: none; background: url(../images/common/arrow_white.png) no-repeat 90% 50% #ad0022; background-size: 7px; padding-right: 25px; color: #fff; cursor: pointer; }

/*
===== 3: common style ===========================
*/
.inner { width: 1000px; margin: 0 auto; }

.inner:after { content: ""; display: block; clear: both; height: 0; }

.innercf { overflow: hidden; width: 100%; }

header { width: 100%; background: #222222; overflow: hidden; border-top: solid 4px #ad0022; }

.blank { padding-right: 23px; background: url(../images/common/blanc_icon.png) no-repeat right; }

#en .eng { display: none; }

header .SearchArea { width: 38%; float: right; padding-top: 10px; }

header .SearchArea form { width: 100%; position: relative; }

header .SearchArea .Searchtext { width: 100%; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border: none; color: #231813; padding: 7px; -webkit-box-sizing: border-box; box-sizing: border-box; border: none; padding-right: 30px; }

header .SearchArea ::-webkit-input-placeholder { color: #c4c5c5; }

header .SearchArea :-moz-placeholder { color: #909090; }

header .SearchArea ::-moz-placeholder { color: #909090; }

header .SearchArea :-ms-input-placeholder { color: #c4c5c5; }

header .SearchArea :placeholder-shown { color: #c4c5c5; }

header .SearchArea .Searchbt { position: absolute; top: 5px; right: 5px; }

#emg a { color: #324fe1; }

#MainContents { width: 100%; padding-bottom: 73px; }

#MainContents .TitleArea { width: 100%; padding: 25px 0; background: #eeeeee; }

#MainContents .ContentsHead { width: 100%; padding: 37px 0; background: #f2f2f2; margin-bottom: 64px; -webkit-box-sizing: border-box; box-sizing: border-box; }

#MainContents .ContentsHead h1 { font-size: 24px; color: #ad0022; font-weight: normal; }

#MainContents .ContentsHead h1 span { font-size: 18px; color: #7a7a7a; padding-left: 23px; }

#MainContents .Leadsentence h2 { font-size: 20px; color: #a60022; margin-bottom: 29px; }

#MainContents .Leadsentence h2 span { font-size: 14px; color: #545454; padding-left: 15px; }

#MainContents .Leadsentence { margin-bottom: 80px; font-size: 16px; }

#MainContents section .to-link a { text-decoration: underline; color: #000; font-weight: bold; }

.section { margin-bottom: 4em; }

.section:last-child { margin-bottom: 2em; }

.block { margin-bottom: 3em; }

.ttl-lv2 { font-size: 1.57143em; padding: 0.54545em 0; border-bottom: 1px solid #ccc; margin-bottom: 1.36364em; }

@media (max-width: 640px) { .ttl-lv2 { font-size: 1.38462em; } }

.ttl-lv3 { font-size: 1.28571em; margin-bottom: 1em; }

.ttl-lv3::before { content: "■"; vertical-align: top; font-size: 12px; color: #ad0022; }

.tb-01 { border-right: 1px solid #999; border-bottom: 1px solid #999; color: #333; }

.tb-01 th { background-color: #eee; border-left: 1px solid #999; border-top: 1px solid #999; font-weight: bold; padding: .3em .8em; }

@media (max-width: 640px) { .tb-01 th { font-size: 0.9em; line-height: 1.4; padding: .5em; } }

.tb-01 th[scope="col"] { white-space: nowrap; }

.tb-01 th[scope="row"] { background-color: transparent; }

.tb-01 td { padding: .3em .8em; border-left: 1px solid #999; border-top: 1px solid #999; word-break: break-all; word-wrap: break-all; }

@media (max-width: 640px) { .tb-01 td { font-size: 0.9em; line-height: 1.4; padding: .5em; } }

footer { width: 100%; }

footer .sp_logo { display: none; }

footer #FooterCatMenu { width: 100%; background: #eeeeee; padding: 20px 0; }

footer #FooterCatMenu h2 { font-size: 14px; margin-bottom: 10px; }

footer #FooterCatMenu h2::before { content: "■"; vertical-align: middle; }

footer #FooterCatMenu ul { width: 100%; overflow: hidden; }

footer #FooterCatMenu ul li { display: inline-block; padding: 10px; background: #fff; margin-right: 10px; margin-bottom: 10px; font-size: 12px; }

#en footer #FooterCatMenu ul li { padding: 10px 8px; margin-right: 10px; }

footer #FooterCatMenu ul li a { text-decoration: none; }

footer .ForTop { text-align: center; width: 100%; }

footer .ForTop a { display: block; width: 100%; background: #ad0022; padding: 15px 0; }

footer .ForTop a img { display: block; margin: 0 auto; }

footer .ForTop a:hover { background: #c64d65; }

footer #FooterSiteMenu { background: #333333; padding: 25px 0; }

footer #FooterSiteMenu a { color: #fff; text-decoration: none; }

footer #FooterSiteMenu a:hover { color: #fff; text-decoration: underline; }

footer #FooterSiteMenu a:hover img { filter: alpha(opacity=70); -moz-opacity: 0.7; opacity: 0.7; }

footer #FooterSiteMenu01 { width: 100%; overflow: hidden; padding-bottom: 15px; border-bottom: solid 1px #fff; }

footer #FooterSiteMenu01 h2 { display: block; width: 15%; float: left; }

footer #FooterSiteMenu01 h2 img { width: 100%; }

footer #FooterSiteMenu01 h2 a:hover img { opacity: 1; }

footer #FooterSiteMenu01 nav { width: 85%; float: right; text-align: right; }

footer #FooterSiteMenu01 nav ul { padding-top: 10px; display: inline-block; }

footer #FooterSiteMenu01 nav ul li { display: inline-block; color: #fff; }

footer #FooterSiteMenu01 nav ul li a { padding: 0 22px; }

footer #FooterSiteMenu01 nav ul li:last-child a { padding-right: 0; }

footer #FooterSiteMenu01 nav ul li::after { content: "|"; vertical-align: middle; }

footer #FooterSiteMenu01 nav ul li:last-child::after { content: none; }

footer #FooterSiteMenu01 nav ul li a:hover { text-decoration: none; }

footer #FooterSiteMenu01 nav ul li a:hover span { text-decoration: underline; }

footer #FooterSiteMenu02 { padding: 20px 0; }

footer #FooterSiteMenu02 .sns { width: 45%; display: block; float: left; }

footer #FooterSiteMenu02 .sns li { display: inline-block; margin-right: 10px; }

footer #FooterSiteMenu02 .sns .line iframe { border: 0; max-width: 100px; height: 20px; }

footer #FooterSiteMenu02 nav { width: 55%; display: block; float: right; text-align: right; }

footer #FooterSiteMenu02 nav ul { display: inline-block; font-size: 12px; }

footer #FooterSiteMenu02 nav ul li { display: inline-block; padding-right: 12px; }

footer #FooterSiteMenu02 nav ul li a::after { content: "|"; vertical-align: middle; padding-left: 12px; }

footer #FooterSiteMenu02 nav ul li:last-child a::after { content: ""; padding-left: 0px; }

footer #FooterSiteMenu02 nav ul li:last-child { padding-right: 0px; }

footer #FooterSiteMenu02 nav ul li a:hover { text-decoration: none; }

footer #FooterSiteMenu02 nav ul li a:hover span { text-decoration: underline; }

footer small { display: block; color: #a9a9a9; text-align: right; }

.PCimg { display: inline-block; }

.SPimg { display: none; }

/* facebbok widge */
.fb_iframe_widget > span { vertical-align: baseline !important; }

/* LINE widge */
.line > span > a > img { vertical-align: baseline !important; }

@media (max-width: 1050px) { #en header nav ul li { font-size: 0.95em; margin-right: 15px; }
  .inner { width: 100%; padding: 0 15px; -webkit-box-sizing: border-box; box-sizing: border-box; }
  header nav { width: 100%; padding: 0 15px; -webkit-box-sizing: border-box; box-sizing: border-box; }
  footer #FooterSiteMenu01 h2 { display: block; width: 100%; float: none; }
  footer #FooterSiteMenu01 h2 img { max-width: 150px; }
  footer #FooterSiteMenu01 nav { width: 100%; float: none; text-align: left; }
  footer #FooterSiteMenu01 nav ul li:first-child { padding-left: 0px; }
  footer #FooterSiteMenu02 .sns { width: 100%; display: block; float: none; }
  footer #FooterSiteMenu02 nav { width: 100%; display: block; float: none; text-align: left; } }

@media (max-width: 767px) { header nav { display: none; }
  header nav { width: 100%; text-align: right; margin: 0 auto; }
  header section#H1SearchArea h1 { display: none; }
  header .SearchArea { width: 100%; margin-top: 0px; padding-top: 0px; }
  header .SearchArea form { width: 100%; }
  #MainContents .ContentsHead { width: 100%; padding: 20px; background: #f2f2f2; margin-bottom: 25px; padding-left: 0px; }
  #MainContents .ContentsHead h1 { font-size: 16px; color: #ad0022; font-weight: normal; }
  #MainContents .ContentsHead h1 span { font-size: 13px; color: #7a7a7a; padding-left: 23px; }
  #MainContents .Leadsentence h2 { font-size: 16px; margin-bottom: 10px; }
  #MainContents .Leadsentence h2 span { font-size: 13px; display: block; padding-left: 0px; }
  #MainContents .Leadsentence { margin-bottom: 20px; font-size: 13px; }
  #MainContents section .to-link { text-align: right; line-height: 4em; }
  #MainContents section .to-link a { border: solid 1px #d7d8d8; padding: 10px; text-decoration: none; background: url(../images/common/arrow_black01.png) no-repeat 95% 50%; background-size: 7px; padding-right: 25px; color: #000; }
  #MainContents section .to-link a span { display: none; }
  footer #FooterCatMenu ul li { display: block; width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; }
  footer #FooterSiteMenu > div.inner { width: 100%; padding: 0; }
  /* inner:Excluded from the rules */
  footer #FooterSiteMenu01 { display: none; }
  footer #FooterSiteMenu02 .sp_logo { display: block; padding: 15px 0; border-top: solid 1px #fff; text-align: center; }
  footer #FooterSiteMenu02 { padding-top: 0px; }
  footer #FooterSiteMenu02 .sns { width: 100%; text-align: center; padding-bottom: 10px; }
  footer #FooterSiteMenu02 nav { text-align: center; }
  footer #FooterSiteMenu02 nav ul { display: block; padding: 0 10px; text-align: center; }
  footer #FooterSiteMenu02 nav li { font-size: 11px; }
  footer #FooterSiteMenu02 small { text-align: center; line-height: 1.3em; }
  .PCimg { display: none; }
  .SPimg { display: inline-block; } }

@media (max-width: 480px) { footer #FooterSiteMenu02 .sns { width: 100%; overflow: hidden; padding-bottom: 10px; }
  footer #FooterSiteMenu02 .sns li { width: 45%; display: block; }
  footer #FooterSiteMenu02 .sns li:nth-child(2n-1) { float: left; text-align: right; }
  footer #FooterSiteMenu02 .sns li:nth-child(2n) { float: right; text-align: left; }
  footer #FooterSiteMenu02 small { text-align: center; }
  footer #FooterSiteMenu02 small span { display: block; } }

@media screen and (min-width: 769px) { header nav { max-width: 1000px; text-align: right; margin: 0 auto; }
  header nav ul { display: inline-block; padding: 25px 0; }
  header nav ul li { display: inline-block; margin-right: 30px; }
  header nav ul li:last-child { margin-right: 0; }
  header nav ul li a { color: #fff; text-decoration: none; font-weight: bold; }
  header nav ul li em { color: #969696; font-weight: bold; }
  header nav ul li a.current, z header nav ul li a:hover { color: #969696; } }

@media screen and (min-width: 768px) and (max-width: 768px) { #header { position: relative; } }

@media screen and (max-width: 767px) { #header { position: relative; } }

@media screen and (min-width: 768px) and (max-width: 768px) { header nav { display: none; } }

@media screen and (min-width: 769px) { .c-header-nav__wrapper { display: none; } }

@media screen and (min-width: 768px) and (max-width: 768px) { .c-header-nav__wrapper { height: 70px; } }

.c-header-nav { -webkit-box-sizing: border-box; box-sizing: border-box; position: fixed; overflow: auto; z-index: 99; background-color: #EBEBEB; -webkit-transition: -webkit-transform 500ms 0ms ease; transition: -webkit-transform 500ms 0ms ease; transition: transform 500ms 0ms ease; transition: transform 500ms 0ms ease, -webkit-transform 500ms 0ms ease; -webkit-transform: translateX(100%); transform: translateX(100%); }

@media screen and (min-width: 768px) and (max-width: 768px) { .c-header-nav { display: block; width: calc(100% - 50px); height: 100%; top: 0; left: 50px; } }

@media screen and (max-width: 767px) { .c-header-nav { display: block; width: calc(100% - 20px); height: 100%; top: 0; left: 20px; } }

.c-header-nav.is-open { -webkit-transform: translateX(0); transform: translateX(0); }

.c-header-nav__bg { -webkit-box-sizing: border-box; box-sizing: border-box; position: fixed; z-index: 98; width: 100%; height: 100%; top: 0; left: 0; background-color: rgba(0, 0, 0, 0.5); -webkit-transform: translateX(-100%); transform: translateX(-100%); -webkit-transition: opacity 500ms 0ms ease; transition: opacity 500ms 0ms ease; opacity: 0; }

.c-header-nav__bg.is-open { -webkit-transform: translateX(0); transform: translateX(0); opacity: 1; }

.c-header-nav__btnWrapper { -webkit-box-sizing: border-box; box-sizing: border-box; position: absolute; width: 40px; height: 40px; top: 16px; right: 20px; }

.c-header-nav__button { -webkit-box-sizing: border-box; box-sizing: border-box; position: relative; z-index: 100; width: 100%; height: 100%; margin: 0; padding: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; background-color: transparent; border: none; outline: none; }

.c-header-nav__button.is-open .c-header-nav__icon--top { background-color: #000; -webkit-transform: translate(-50%, -50%) rotateZ(45deg); transform: translate(-50%, -50%) rotateZ(45deg); }

.c-header-nav__button.is-open .c-header-nav__icon--middle { background-color: #000; opacity: 0; }

.c-header-nav__button.is-open .c-header-nav__icon--bottom { background-color: #000; -webkit-transform: translate(-50%, -50%) rotateZ(-45deg); transform: translate(-50%, -50%) rotateZ(-45deg); }

.c-header-nav__icon--top { -webkit-box-sizing: border-box; box-sizing: border-box; display: block; position: absolute; width: 30px; height: 2px; top: 50%; left: 50%; -webkit-transition: all 500ms 0ms ease; transition: all 500ms 0ms ease; background-color: #fff; -webkit-transform: translate(-50%, -600%) rotateZ(0deg); transform: translate(-50%, -600%) rotateZ(0deg); }

.c-header-nav__icon--middle { -webkit-box-sizing: border-box; box-sizing: border-box; display: block; position: absolute; width: 30px; height: 2px; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -webkit-transition: all 500ms 0ms ease; transition: all 500ms 0ms ease; background-color: #fff; opacity: 1; }

.c-header-nav__icon--bottom { -webkit-box-sizing: border-box; box-sizing: border-box; display: block; position: absolute; width: 30px; height: 2px; top: 50%; left: 50%; -webkit-transition: all 500ms 0ms ease; transition: all 500ms 0ms ease; background-color: #fff; -webkit-transform: translate(-50%, 500%) rotateZ(0deg); transform: translate(-50%, 500%) rotateZ(0deg); }

.c-header-nav__list { -webkit-box-sizing: border-box; box-sizing: border-box; padding-top: 138px; }

@media screen and (min-width: 768px) and (max-width: 768px) { .c-header-nav__list { padding-right: 7%; padding-left: 7%; } }

@media screen and (max-width: 767px) { .c-header-nav__list { padding-right: 15px; padding-left: 15px; } }

.c-header-nav__item { -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: bold; border-bottom: 1px solid #000; }

.c-header-nav__item:first-child { border-top: 1px solid #000; }

@media screen and (min-width: 768px) and (max-width: 768px) { .c-header-nav__item { height: 80px; line-height: 80px; font-size: 24px !important; } }

@media screen and (max-width: 767px) { .c-header-nav__item { height: 60px; line-height: 60px; font-size: 16px !important; } }

.c-header-nav__item.current > .c-header-nav__link { color: #969696; }

.c-header-nav__item.current > .c-header-nav__link > em > span { font-weight: normal; }

@media screen and (min-width: 768px) and (max-width: 768px) { .c-header-nav__item.current > .c-header-nav__link > em > span { margin-left: 20px; font-size: 16px; } }

@media screen and (max-width: 767px) { .c-header-nav__item.current > .c-header-nav__link > em > span { margin-left: 10px; font-size: 14px; } }

.c-header-nav__link { -webkit-box-sizing: border-box; box-sizing: border-box; display: block; width: 100%; height: 100%; text-decoration: none; }

.c-header-nav__link:hover { color: #969696; }

.c-header-nav__link > span { font-weight: normal; }

@media screen and (min-width: 768px) and (max-width: 768px) { .c-header-nav__link > span { margin-left: 20px; font-size: 16px; } }

@media screen and (max-width: 767px) { .c-header-nav__link > span { margin-left: 10px; font-size: 14px; } }

@media screen and (min-width: 769px) { header .sp_logo { display: none; } }

@media screen and (min-width: 768px) and (max-width: 768px) { header .sp_logo { display: none; } }

@media screen and (max-width: 767px) { header .sp_logo { display: block; height: 75px; line-height: 75px; padding-left: 15px; font-size: 16px; color: #fff; } }

header .sp_logo a { text-decoration: none; color: #fff; }

header .sp_logo img { width: 143px; }

header section#H1SearchArea { overflow: hidden; width: 100%; margin: 0 auto; }

@media screen and (min-width: 769px) { header section#H1SearchArea { padding: 43px 0 !important; background: #333; } }

@media screen and (min-width: 768px) and (max-width: 768px) { header section#H1SearchArea { padding: 43px 0 !important; background: #333; } }

@media screen and (max-width: 767px) { header section#H1SearchArea { padding: 0 0 20px 0; background: #222; } }

header section#H1SearchArea h1 { float: left; width: 35.1%; }

header section#H1SearchArea h1 img { width: 100%; }

header section#H1SearchArea h1 > a:hover > img { opacity: 1; }
/*# sourceMappingURL=common.css.map */