@charset "UTF-8";
@import url("https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.css");
/*--------------------------------------------------------------
mixins

--------------------------------------------------------------*/
.forpc { display: block !important; }
@media screen and (max-width: 767px) { .forpc { display: none !important; } }

.formb { display: none !important; }
@media screen and (max-width: 767px) { .formb { display: block !important; } }

.innerbox { max-width: 960px; margin: 0 auto; padding: 0; }
@media screen and (max-width: 960px) { .innerbox { max-width: 94%; margin: 0 auto; } }

.list-none { margin: 0; padding: 0 !important; list-style: none; }

.ofi-cover { object-fit: cover; font-family: "object-fit: cover"; }

.ofi-contain { object-fit: contain; font-family: "object-fit: contain"; }

.ofi-none { object-fit: none; font-family: "object-fit: none"; }

/*--------------------------------------------------------------
keyframes

--------------------------------------------------------------*/
@keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
@keyframes fadeInUP { 0% { opacity: 0; transform: translatey(100%); }
  100% { opacity: 1; transform: none; } }
/*--------------------------------------------------------------
共通

--------------------------------------------------------------*/
/* Links
----------------------------------------------------------------- */
nav a::before, nav a::after, .entry-content a::before, .entry-content a::after, .side-nav a::before, .side-nav a::after, .ft-sitemap a::before, .ft-sitemap a::after { padding: 0 5px; display: inline-block; vertical-align: middle; color: #9a2916; text-decoration: none !important; font-family: "Font Awesome 5 Free"; font-weight: 900; }

.ft-sitemap a::before, .ft-sitemap a::after { vertical-align: top; }

.site-link[target="_blank"]:after, .entry-content a[target="_blank"]:after, .side-nav a[target="_blank"]:after, .ft-sitemap a[target="_blank"]:after { content: '\f35d'; }

.file-link[href$=".pdf"]:after, .file-link[href*=".pdf#page="]:after, .entry-content a[href$=".pdf"]:after, .entry-content a[href*=".pdf#page="]:after, .side-nav a[href$=".pdf"]:after, .side-nav a[href*=".pdf#page="]:after, .ft-sitemap a[href$=".pdf"]:after, .ft-sitemap a[href*=".pdf#page="]:after { content: '\f1c1'; }
.file-link[href$=".doc"]:after, .file-link[href$=".docx"]:after, .entry-content a[href$=".doc"]:after, .entry-content a[href$=".docx"]:after, .side-nav a[href$=".doc"]:after, .side-nav a[href$=".docx"]:after, .ft-sitemap a[href$=".doc"]:after, .ft-sitemap a[href$=".docx"]:after { content: '\f1c2'; }
.file-link[href$=".xls"]:after, .file-link[href$=".xlsx"]:after, .entry-content a[href$=".xls"]:after, .entry-content a[href$=".xlsx"]:after, .side-nav a[href$=".xls"]:after, .side-nav a[href$=".xlsx"]:after, .ft-sitemap a[href$=".xls"]:after, .ft-sitemap a[href$=".xlsx"]:after { content: '\f1c3'; }

.entry-content a[href^="mailto:"]:before { content: '\f0e0'; }

.entry-content a[href^="tel:"]:before { content: ''; }

.page-link:after, .site-in:after { content: '\f101'; }

/* アイコンなし / 画像リンク */
.post-list a:after, .imagelink:after { content: "" !important; padding: 0 !important; }

/* Childs
----------------------------------------------------------------- */
.childs ul { margin: 0; padding: 0 !important; list-style: none; margin: 100px auto 0; padding: 0 !important; }
.childs li { margin: 0 0 15px; padding: 0; }
.childs a { display: block; height: 100%; padding: 10px 20px; border: 1px solid #ccc; text-decoration: none !important; }
.childs a::before, .childs a::after { padding: 0 5px; display: inline-block; vertical-align: middle; color: #9a2916; text-decoration: none !important; font-family: "Font Awesome 5 Free"; font-weight: 900; }
.childs a::before { padding: 0 5px 0 0 !important; content: '\f14a'; }
.childs a::after { display: none !important; }
.childs a strong { font-weight: 500 !important; }
.childs a i { margin: 0 0 0 5px; color: #9a2916; }

.tobira { margin: 0 auto; }
.tobira .c-page { margin: 0 0 30px; width: 32%; }
.tobira .c-page a { text-decoration: none; }
.tobira .c-page a::after { display: none !important; }
.tobira a { display: block; }
.tobira a img { object-fit: cover; font-family: "object-fit: cover"; width: 100%; height: 180px; vertical-align: bottom; }
.tobira strong { display: block; padding: 5px 10px; font-size: 1.6rem; font-weight: 700; }
.tobira i { margin: 0 0 0 5px; color: #9a2916; }
.tobira i.fa-check-square { margin: 0 5px 0 0 !important; color: #9a2916; }
.tobira ul { padding: 0 0 0 2.5em !important; }
.tobira ul li { color: #9a2916; }
.tobira ul a { text-decoration: underline; }
@media screen and (max-width: 480px) { .tobira .c-page { margin: 0 0 20px; }
  .tobira strong { padding: 15px 0; }
  .tobira ul { padding: 0; }
  .tobira ul li { line-height: 1.3; margin: 0 0 5px; } }

/* Lists / Icon
----------------------------------------------------------------- */
/* Unordered List */
ul.iconlist { list-style: none outside; padding: 0 0 0 20px; }
ul.iconlist > li { position: relative; }
ul.iconlist > li:after { display: block; position: absolute; top: 4px; left: -20px; font-size: 1.5rem; line-height: 1; font-family: "Font Awesome 5 Free"; font-weight: 900; }
ul.iconlist > li ul > li:after { content: none !important; }

table ul.iconlist > li:after { top: 6px !important; font-size: 1.3rem !important; }

.caution { padding: 0 0 0 36px !important; }
.caution > li:after { content: '（注）'; top: 6px !important; left: -42px !important; }

.kome > li:after { top: 6px !important; content: '※'; }

.check > li:after { content: '\f058'; color: #9a2916; }

.square > li { margin: 0 0 3px; }
.square > li::after { content: '\f0c8'; color: #9a2916; }

.circle > li { margin-bottom: 10px; }
.circle > li:after { content: '\f111'; color: #9a2916; }

.circle-o > li:after { content: '\f111'; color: #9a2916; font-weight: 300 !important; }

.circle-r > li:after { content: '\f138'; color: #9a2916; }

.exclamation > li { font-weight: bold; }
.exclamation > li:after { content: '\f06a'; color: #f00; }
.exclamation > li a { color: #141412; text-decoration: underline; }

.anchor { padding: 0 0 0 30px !important; }
.anchor > li { display: inline-block; vertical-align: top; margin-right: 3em; }
.anchor > li:after { content: '\f107'; color: #9a2916; font-weight: 900; }

ul.mokuji { margin: 0; padding: 0 !important; list-style: none; }
ul.mokuji > li { overflow: hidden; border-bottom: 1px dotted #ccc; padding-bottom: 3px; margin-bottom: 3px; }
ul.mokuji > li:last-child { border-bottom: 0; padding-bottom: 0; margin-bottom: 0; }
ul.mokuji > li span { display: inline-block; float: right; }

/* Ordered List */
ol.brackets { margin: 0; padding: 0 !important; list-style: none; }
ol.brackets > li { text-indent: -2.5em; padding-left: 2.5em; }
ol.brackets > li a::after { padding-left: 3em !important; }
ol.brackets > li ul, ol.brackets > li ol, ol.brackets > li dl { text-indent: 0; }

ol.square { margin: 0; padding: 0 !important; list-style: none; counter-reset: number; }
ol.square > li { position: relative; margin-bottom: 12px; padding-left: 2em; }
ol.square > li:before { counter-increment: number; content: counter(number); color: #fff; position: absolute; left: 0; width: 24px; height: 24px; line-height: 24px; text-align: center; }

ol.lower-alpha { list-style-type: lower-alpha; }

ol.upper-alpha { list-style-type: upper-alpha; }

/* Definition list */
.descript3 dt { width: 3.5em; }
.descript3 dd { padding-left: 5em; }

.descript4 dt { width: 4.5em; }
.descript4 dd { padding-left: 6em; }

.descript5 dt { width: 5.5em; }
.descript5 dd { padding-left: 7em; }

.descript6 dt { width: 6.5em; }
.descript6 dd { padding-left: 8em; }

.descript7 dt { width: 7.5em; }
.descript7 dd { padding-left: 9em; }

.descript8 dt { width: 8.5em; }
.descript8 dd { padding-left: 10em; }

.descript9 dt { width: 9.5em; }
.descript9 dd { padding-left: 11em; }

.descript10 dt { width: 10.5em; }
.descript10 dd { padding-left: 12em; }

.descript11 dt { width: 11.5em; }
.descript11 dd { padding-left: 13em; }

.descript12 dt { width: 12.5em; }
.descript12 dd { padding-left: 14em; }

.descript13 dt { width: 13.5em; }
.descript13 dd { padding-left: 15em; }

.descript14 dt { width: 14.5em; }
.descript14 dd { padding-left: 16em; }

.descript15 dt { width: 15.5em; }
.descript15 dd { padding-left: 17em; }

.descript16 dt { width: 16.5em; }
.descript16 dd { padding-left: 18em; }

.descript17 dt { width: 17.5em; }
.descript17 dd { padding-left: 19em; }

.descript18 dt { width: 18.5em; }
.descript18 dd { padding-left: 20em; }

.descript19 dt { width: 19.5em; }
.descript19 dd { padding-left: 21em; }

.descript20 dt { width: 20.5em; }
.descript20 dd { padding-left: 22em; }

.descript23 dt { width: 23.5em; }
.descript23 dd { padding-left: 25em; }

.descript25 dt { width: 25.5em; }
.descript25 dd { padding-left: 27em; }

.descript40 dt { width: 40.5em; }
.descript40 dd { padding-left: 42em; }

.descript3, .descript4, .descript5, .descript6, .descript7, .descript8, .descript9, .descript10, .descript11, .descript12, .descript13, .descript14, .descript15, .descript16, .descript17, .descript19, .descript20, .descript23, .descript25, .descript40 { overflow: hidden; }
.descript3 dt, .descript4 dt, .descript5 dt, .descript6 dt, .descript7 dt, .descript8 dt, .descript9 dt, .descript10 dt, .descript11 dt, .descript12 dt, .descript13 dt, .descript14 dt, .descript15 dt, .descript16 dt, .descript17 dt, .descript19 dt, .descript20 dt, .descript23 dt, .descript25 dt, .descript40 dt { font-weight: 600; }
.descript3 dd, .descript4 dd, .descript5 dd, .descript6 dd, .descript7 dd, .descript8 dd, .descript9 dd, .descript10 dd, .descript11 dd, .descript12 dd, .descript13 dd, .descript14 dd, .descript15 dd, .descript16 dd, .descript17 dd, .descript19 dd, .descript20 dd, .descript23 dd, .descript25 dd, .descript40 dd { margin: 0 0 .5em; }
@media screen and (max-width: 960px) { .descript3 dt, .descript4 dt, .descript5 dt, .descript6 dt, .descript7 dt, .descript8 dt, .descript9 dt, .descript10 dt, .descript11 dt, .descript12 dt, .descript13 dt, .descript14 dt, .descript15 dt, .descript16 dt, .descript17 dt, .descript19 dt, .descript20 dt, .descript23 dt, .descript25 dt, .descript40 dt { width: 100%; }
  .descript3 dd, .descript4 dd, .descript5 dd, .descript6 dd, .descript7 dd, .descript8 dd, .descript9 dd, .descript10 dd, .descript11 dd, .descript12 dd, .descript13 dd, .descript14 dd, .descript15 dd, .descript16 dd, .descript17 dd, .descript19 dd, .descript20 dd, .descript23 dd, .descript25 dd, .descript40 dd { overflow: hidden; width: 100%; padding-left: 0; }
  .descript3 dd:last-child, .descript4 dd:last-child, .descript5 dd:last-child, .descript6 dd:last-child, .descript7 dd:last-child, .descript8 dd:last-child, .descript9 dd:last-child, .descript10 dd:last-child, .descript11 dd:last-child, .descript12 dd:last-child, .descript13 dd:last-child, .descript14 dd:last-child, .descript15 dd:last-child, .descript16 dd:last-child, .descript17 dd:last-child, .descript19 dd:last-child, .descript20 dd:last-child, .descript23 dd:last-child, .descript25 dd:last-child, .descript40 dd:last-child { margin-bottom: 0 !important; }
  .descript3 dd ul, .descript3 dd ol, .descript4 dd ul, .descript4 dd ol, .descript5 dd ul, .descript5 dd ol, .descript6 dd ul, .descript6 dd ol, .descript7 dd ul, .descript7 dd ol, .descript8 dd ul, .descript8 dd ol, .descript9 dd ul, .descript9 dd ol, .descript10 dd ul, .descript10 dd ol, .descript11 dd ul, .descript11 dd ol, .descript12 dd ul, .descript12 dd ol, .descript13 dd ul, .descript13 dd ol, .descript14 dd ul, .descript14 dd ol, .descript15 dd ul, .descript15 dd ol, .descript16 dd ul, .descript16 dd ol, .descript17 dd ul, .descript17 dd ol, .descript19 dd ul, .descript19 dd ol, .descript20 dd ul, .descript20 dd ol, .descript23 dd ul, .descript23 dd ol, .descript25 dd ul, .descript25 dd ol, .descript40 dd ul, .descript40 dd ol { overflow: hidden; } }

/* 単体アイコン */
.icon::before, .icon::after { padding: 0 5px; display: inline-block; vertical-align: middle; color: #9a2916; text-decoration: none !important; font-family: "Font Awesome 5 Free"; font-weight: 900; }
.icon.check::before { content: '\f058'; }
.icon.square::before { content: '\f0c8'; }
.icon.circle::before { content: '\f111'; }
.icon.circle-o::before { content: '\f111'; font-weight: 300 !important; }
.icon.circle-r::before { content: '\f138'; }
.icon.circle-l::before { content: '\f137'; }
.icon.anchor { padding: 0 !important; }
.icon.anchor::before { content: '\f107'; }

/* Frames
----------------------------------------------------------------- */
/* メモ */
.notes { margin: 1em 0; padding: 20px; background: #eee; font-size: 1.3rem; }
.notes .iconlist li::before, .notes .iconlist li::after { font-size: 1.3rem; }

.anchor-box { margin: 1em 0; padding: 15px; border: 3px solid #ddd; font-size: 1.3rem; background-color: rgba(255, 255, 255, 0.8); }
.anchor-box .iconlist li::before, .anchor-box .iconlist li::after { font-size: 1.3rem; }

/* 注目 */
.attention { margin: 1em 0; padding: 20px; border: 3px solid #d6002f; }

/* 説明 */
.explanation { margin: 1em 0; padding: 15px; border: 10px solid #eee; }

/* 説明（背景） */
.explain-bg { margin: 1em 0; padding: 20px; background: #ededed; }

.notes h2:first-child, .notes h3:first-child, .notes h4:first-child, .notes h5:first-child, .anchor-box h2:first-child, .anchor-box h3:first-child, .anchor-box h4:first-child, .anchor-box h5:first-child, .attention h2:first-child, .attention h3:first-child, .attention h4:first-child, .attention h5:first-child, .explanation h2:first-child, .explanation h3:first-child, .explanation h4:first-child, .explanation h5:first-child, .explain-bg h2:first-child, .explain-bg h3:first-child, .explain-bg h4:first-child, .explain-bg h5:first-child { margin-top: 0 !important; }
.notes p:last-child, .notes ul:last-child, .notes ol:last-child, .anchor-box p:last-child, .anchor-box ul:last-child, .anchor-box ol:last-child, .attention p:last-child, .attention ul:last-child, .attention ol:last-child, .explanation p:last-child, .explanation ul:last-child, .explanation ol:last-child, .explain-bg p:last-child, .explain-bg ul:last-child, .explain-bg ol:last-child { margin-bottom: 0 !important; }

ul .notes, ul .anchor-box, ul .attention, ul .explanation, ul .explain-bg, ol .notes, ol .anchor-box, ol .attention, ol .explanation, ol .explain-bg { margin: .5em 0; }

/* Parts
----------------------------------------------------------------- */
/* リード文 */
.lead { margin: .5em 0 1.5em; font-size: 1.4rem; font-family: "Sawarabi Gothic"; color: #9a2916; line-height: 2; }


/* ページナビ */
.pagination { padding: 30px 0; text-align: center; clear: both; font-size: 1.3rem; font-family: 'Noto Sans JP', sans-serif; }

.wp-pagenavi { line-height: 3; }
.wp-pagenavi .current { background: #9a2916; border: 1px solid #9a2916 !important; color: #fff; }
.wp-pagenavi a, .wp-pagenavi span { text-decoration: none !important; padding: 5px 10px; margin: 0 2px; }

/* スマホ用table */
.table_wrap { overflow-x: auto; }
@media screen and (max-width: 480px) { .table_wrap { overflow-x: scroll; }
  .table_wrap table { white-space: nowrap; } }

.table_wrap::-webkit-scrollbar { height: 3px; }

.table_wrap::-webkit-scrollbar-track { margin: 0 2px; background: #ccc; -webkit-border-radius: 3px; border-radius: 3px; }

.table_wrap::-webkit-scrollbar-thumb { -webkit-border-radius: 3px; border-radius: 3px; background: #666; }

/* ニュース一覧 */
.news-list { margin: 0; padding: 0 !important; list-style: none; padding: 0 !important; }
.news-list li { margin: 0; padding: 7px 0; }
.news-list li a { display: block; text-decoration: none !important; }
.news-list li a[target="_blank"]:after { display: none !important; }
.news-list li a:hover:hover { opacity: 0.7; transition: .3s ease-in; }
.news-list li span { display: inline-block; vertical-align: top; }
.news-list li span.post-cate { width: 90px; border: 1px solid #9a2916; color: #9a2916; text-align: center; font-family: "Noto Sans Japanese"; font-size: 1.3rem; height: 24px; }
.news-list li span.post-date { margin: 0 10px; width: 90px; }
.news-list li span.post-title { width: -webkit-calc(100% - 210px); width: calc(100% - 210px); }
.news-list li span.post-title > i { margin: 0 0 0 5px; }
.news-list li.more { margin: 0; padding: 0; }
.news-list li.more a { display: block; }
.news-list li.more a:hover { opacity: 1; transition: .3s ease-in; }
@media screen and (max-width: 480px) { .news-list li span.post-title { width: 100%; } }

/* クリック開閉 */
.op-btn { cursor: pointer; }

.op-cont { display: none; }

/*--------------------------------------------------------------
Accessibility

--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); height: 1px; overflow: hidden; position: absolute !important; width: 1px; word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */ }
.screen-reader-text:focus { background-color: #f1f1f1; border-radius: 3px; -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); clip: auto !important; color: #21759b; display: block; font-size: 14px; font-size: 0.875rem; font-weight: 700; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; /* Above WP toolbar. */ }

/*--------------------------------------------------------------
Alignments

--------------------------------------------------------------*/
.alignleft { display: inline; float: left; margin: 0 1.5em 1em 0; }

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

.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }

@media screen and (max-width: 736px) { .alignleft, .alignright, .aligncenter { display: block; float: none; margin: 0 auto 1.5em; } }
/*--------------------------------------------------------------
Clearings

--------------------------------------------------------------*/
.clear:before, .clear:after, .entry-content:before, .entry-content:after, .pagination:before, .pagination:after { content: ""; display: table; table-layout: fixed; }

.clear:after, .entry-content:after, .pagination:after { clear: both; }

/*--------------------------------------------------------------
Typography

--------------------------------------------------------------*/
body, button, input, select, textarea { color: #000; font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; font-size: 14px; font-size: 1.4rem; font-weight: 400; line-height: 1.8; }

h1, h2, h3, h4, h5, h6 { clear: both; line-height: 1.3; }

h1 { font-size: 2.2rem; }

h2 { font-size: 2rem; }

h3 { font-size: 1.8rem; }

h4 { font-size: 1.6rem; }

h5, h6 { font-size: 1.6rem; font-weight: 600 !important; }

p { margin: 0 0 1.5em; padding: 0; }

/* Typography for Arabic Font */
html[lang="ja"] body, html[lang="ja"] button, html[lang="ja"] input, html[lang="ja"] select, html[lang="ja"] textarea { font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif; }
html[lang="ja"] h1, html[lang="ja"] h2, html[lang="ja"] h3, html[lang="ja"] h4, html[lang="ja"] h5, html[lang="ja"] h6 { font-weight: 500; }
html[lang="ja"] * { letter-spacing: 0; }

/*--------------------------------------------------------------
Forms

--------------------------------------------------------------*/
label { color: #333; display: block; font-weight: 800; margin-bottom: 0.5em; }

fieldset { margin-bottom: 1em; }

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"] { color: #666; background: #fff; background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0)); border: 1px solid #bbb; border-radius: 3px; display: block; padding: 0.7em; width: 100%; }

textarea { color: #666; background: #fff; background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0)); border: 1px solid #bbb; border-radius: 3px; display: block; padding: 0.7em; width: 100%; }

input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="range"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="time"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="color"]:focus { color: #222; border-color: #333; }

textarea:focus { color: #222; border-color: #333; }

select { border: 1px solid #bbb; border-radius: 3px; height: 3em; max-width: 100%; }

input[type="radio"], input[type="checkbox"] { margin-right: 0.5em; }
input[type="radio"] + label, input[type="checkbox"] + label { font-weight: 400; }

button { background-color: #222; border: 0; border-radius: 2px; -webkit-box-shadow: none; box-shadow: none; color: #fff; cursor: pointer; display: inline-block; font-size: 14px; font-size: 0.875rem; font-weight: 800; line-height: 1; padding: 1em 2em; text-shadow: none; -webkit-transition: background 0.2s; transition: background 0.2s; }

input[type="button"], input[type="submit"] { background-color: #222; border: 0; border-radius: 2px; -webkit-box-shadow: none; box-shadow: none; color: #fff; cursor: pointer; display: inline-block; font-size: 14px; font-size: 0.875rem; font-weight: 800; line-height: 1; padding: 1em 2em; text-shadow: none; -webkit-transition: background 0.2s; transition: background 0.2s; }
input + button { padding: 0.75em 2em; }
input + input[type="button"], input + input[type="submit"] { padding: 0.75em 2em; }

input[type="reset"], input[type="button"].secondary, input[type="reset"].secondary, input[type="submit"].secondary { background-color: #ddd; color: #222; }

button:hover, button:focus { background: #767676; }

input[type="button"]:hover, input[type="button"]:focus { background: #767676; }
input[type="submit"]:hover, input[type="submit"]:focus { background: #767676; }
input[type="reset"]:hover, input[type="reset"]:focus { background: #bbb; }

/* Placeholder text color -- selectors need to be separate to work. */
::-webkit-input-placeholder, :-moz-placeholder { color: #333; font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; }

::-moz-placeholder { color: #333; font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; opacity: 1; /* Since FF19 lowers the opacity of the placeholder by default */ }

:-ms-input-placeholder { color: #333; font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; }

/*--------------------------------------------------------------
Formatting

--------------------------------------------------------------*/
hr { background-color: #bbb; border: 0; height: 1px; margin-bottom: 1.5em; }

/*--------------------------------------------------------------
Lists

--------------------------------------------------------------*/
ul, ol { margin: 0 0 1.5em; padding: 0; }

ul { list-style: disc; }

ol { list-style: decimal; }

li > ul, li > ol { margin-bottom: 0; margin-left: 1.5em; }

/*--------------------------------------------------------------
Tables

--------------------------------------------------------------*/
table { border-collapse: collapse; margin: 0 0 1.5em; width: 100%; border-top: 1px solid #ccc; font-size: 1.4rem; }

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

thead th { border-bottom: 2px solid #ccc; padding-bottom: 0.5em; }

th { background-color: #eee; text-align: left; color: #000; }

th, td { padding: 0.4em; border: 1px solid #ccc; vertical-align: top; }

/*--------------------------------------------------------------
Links

--------------------------------------------------------------*/
a { color: #000; text-decoration: none; -webkit-tap-highlight-color: transparent; }
a:focus { outline: none; }
a:hover, a:active { color: #000; outline: 0; }
a[href^="tel:"] { cursor: default; }

/*--------------------------------------------------------------
Layout

--------------------------------------------------------------*/
html { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; font-size: 100%; font-size: 62.5%; }

* { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */ -webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit; }
*:before, *:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */ -webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit; }

body { margin: 0; background: #fff; }

.wrap { width: 100%; }

.container { position: relative; z-index: 20; width: 100%; height: 100%; overflow: hidden; }

.site-content { max-width: 960px; margin: 0px auto; }

.op-cont { display: none; }

/*--------------------------------------------------------------
Navigation

--------------------------------------------------------------*/
.pure-menu { text-align: right; }

@media screen and (max-width: 767px) { .pure-menu { text-align: center; }
  .site-content.pure-g { flex-direction: column-reverse; } }
.pure-menu-active > .pure-menu-link { background-color: #fff; }

.pure-menu-link { color: inherit; }
.pure-menu-link:hover, .pure-menu-link:active, .pure-menu-link:focus, .pure-menu-link:focus { background-color: #fff; }
.pure-menu-link:hover:hover, .pure-menu-link:active:hover, .pure-menu-link:focus:hover, .pure-menu-link:focus:hover { opacity: 0.7; transition: .3s ease-in; }

.main-navigation { position: relative; z-index: 30; text-align: left; }
.main-navigation ul { margin: 0; padding: 0 !important; list-style: none; float: right; }
.main-navigation li { display: inline-block; line-height: 50px; margin: 0 5px; }
.main-navigation a { display: block; padding: 0 10px; color: #000; font-size: 1.35rem; font-weight: 600; }
.main-navigation a:hover { opacity: 0.7; transition: .3s ease-in; }
.main-navigation a:hover { text-decoration: none; background: none; }
@media screen and (max-width: 960px) { .main-navigation ul { margin: 0; } }


/*--------------------------------------------------------------
Front Page

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

.hm-news { max-width: 960px; margin: 0 auto; padding: 0 15px; }
.hm-news i { display: inline-block; margin: 0 5px; color: #9a2916; }
.hm-news .news-more { text-align: right; }
.hm-news .news-more a:hover { opacity: 0.7; transition: .3s ease-in; }
.hm-news ul { margin: 0; padding: 0 !important; list-style: none; }
.hm-news ul a { position: relative; }
.hm-news ul a::before, .hm-news ul a::after { padding: 0 5px; display: inline-block; vertical-align: middle; color: #333333; text-decoration: none !important; font-family: "Font Awesome 5 Free"; font-weight: 900; }
.hm-news ul a::after { align-self: center; content: '\f138'; vertical-align: baseline; position: absolute; right: inherit; margin: auto; }

/*--------------------------------------------------------------
Regular Content
--------------------------------------------------------------*/
.entry-header { margin-bottom: 80px; }

.entry-content { max-width: 960px; margin: 0 auto; padding: 0; position: relative; z-index: 30; margin-bottom: 60px; }
@media screen and (max-width: 960px) { .entry-content { max-width: 94%; margin: 0 auto; } }
.entry-content a { text-decoration: underline; }
.entry-content a i { display: inline-block; margin: 0 5px; color: #9a2916; }
.entry-content strong { font-weight: 600; }
.entry-content ul, .entry-content ol { padding: 0 0 0 1.8em; }
.entry-content td ul, .entry-content td ol { margin: 0; }
.entry-content.not-found { min-height: 300px; }
.entry-content h2 { margin: 60px 0 30px; }
.entry-content h3 { margin: 40px 0 20px; }
.entry-content h4 { margin: 40px 0 20px; }
.entry-content h5 { margin: 30px 0 20px; }
.entry-content h6 { margin: 30px 0 20px; }
.entry-content h2 + h3, .entry-content h3 + h4, .entry-content h4 + h5, .entry-content h5 + h6 { margin-top: .5em; }

.news-cont span { display: inline-block; vertical-align: top; }
.news-cont a { padding: 5px 0; }
.news-cont a:hover { opacity: 0.7; transition: .3s ease-in; }
.news-cont .post-title i { margin: 0 5px; vertical-align: baseline; }

/*--------------------------------------------------------------
Footer
--------------------------------------------------------------*/
/*--------------------------------------------------------------
Media
--------------------------------------------------------------*/
img, video { height: auto; /* Make sure images are scaled correctly. */ max-width: 100%; /* Adhere to container width. */ }

/* Make sure embeds and iframes fit their containers. */
embed, iframe, object { margin-bottom: 1.5em; max-width: 100%; }

.wp-caption, .gallery-caption { font-size: 13px; font-size: 1.3rem; margin-bottom: 1.5em; max-width: 100%; }

.wp-caption img[class*="wp-image-"] { display: block; margin-left: auto; margin-right: auto; }
.wp-caption .wp-caption-text { margin: .5em 0; text-align: center; font-size: 1.3rem; line-height: 1.4; }


/*--------------------------------------------------------------
20.0 Print

--------------------------------------------------------------*/
@media print { /* Hide elements */
  form, button, input, select, textarea { display: none !important; }
  /* Font sizes */
  body { font-size: 9pt; line-height: 1.6; }
  h1 { font-size: 15pt; }
  h2 { font-size: 14pt; }
  h3 { font-size: 13pt; }
  h4 { font-size: 11pt; }
  h5 { font-size: 11pt; }
  h6 { font-size: 11pt; }
  h1, h2, h3, h4, h5, h6 { margin: 30px 0 15px; }
  .page-title, .entry-title { margin: 0 auto 30px; }
  /* 調整 */
  .content { display: block; }
  .side { float: left; }
  .entry { float: right; }
}
html {
  max-width: 1800px;
  margin: auto;
}
html * {
  font-family: 'Noto Sans JP', sans-serif!important;
}
/*--------------------------------------------------------------
Header

--------------------------------------------------------------*/
header { position: relative; z-index: 30; width: 100%; height: auto; }
@media screen and (max-width: 767px) {
  header {
    position: relative;
    z-index: 200;
    display: block;
  }
}
#menu {
  padding: 15px 10px;
}
.site-title {
  display: inline-block;
  margin: 0;
  padding: 0;
  position: relative;
}
.site-title a {
  display: block;
}
.site-title a img {
  width: auto;
  height: /*56*/40px;
  vertical-align: bottom;
}
.site-header .pure-u-md-3-5 {
  text-align: right;
}
.site-header .pure-u-md-3-5 nav {
  display: inline-block;
  width: auto;
}
.site-header .contact {
  display: inline-block;
  margin: 0;
}
a {
  transition: .3s ease-in;
}
.site-header .contact a {
  display: block;
  padding: 5px 20px 5px 50px;
  background: #7A8AC9;
  color: #fff;
  position: relative;
}
.site-header .contact a:hover {
  opacity: 0.9;
}
.site-header .contact a:before {
  content: "";
  display: inline-block;
  width: 23px;
  height: 18px;
  background: url(/web_oc/2020/images/icon-mail.png);
  background-size: 100% auto;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 23px;
}
.pure-menu-item a {
  display: block;
  position: relative;
  font-size: 1rem;
}
.pure-menu-item a:before {
  content: "";
  display: inline-block;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #7A8AC9;
}
.g-nav {
  background: #A30B30;
  text-align: center;
  position: absolute;
  top: 70px;
  z-index: 10;
  width: 100%;
}
.hd-fix .g-nav{
  position: fixed;
  top: 0;
}
.g-nav ul {
  margin: 0;
}
.g-nav li {
  display: inline-block;
}
.g-nav li a {
  display: block;
  padding: 20px 30px;
  color: #fff;
  position: relative;
}
.g-nav li a:before {
  content: "";
  width: 8px;
  height: 5px;
  display: inline-block;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #fff;
  margin: auto;
  top: 0;
  bottom: 0;
}
.g-nav li a:hover {
  background: #7B001E;
}
.g-nav li a:active,
.g-nav li.current a {
  background: #FCECF3;
  color: #262626;
}
.g-nav li a:active:before,
.g-nav li.current a:before {
  content: "";
  width: 8px;
  height: 5px;
  display: inline-block;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #7B001E;
  margin: auto;
  top: 0;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  #toggle {
    display: block;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    width: 45px;
    height: 38px;
    right: 0;
    padding: 0;
  }
  .site-header .contact {
    margin: 15px 0 0;
  }
  .custom-toggle s:nth-child(1) {
    width: 50%;
  }
  .custom-toggle s:nth-child(2) {
    width: 70%;
  }
  .custom-toggle s:nth-child(3) {
    width: 100%;
  }
  .custom-toggle .bar {
    background-color: #707070;
    display: block;
    height: 1px;
    border-radius: 100px;
    position: absolute;
    top: 22px;
    right: 7px;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    transition: all 0.5s;
  }
  .custom-toggle.x .bar {
    width: 38px;
    top: 18px;
  }
  .custom-toggle .bar:first-child {
    -webkit-transform: translateY(-12px);
    -moz-transform: translateY(-12px);
    -ms-transform: translateY(-12px);
    transform: translateY(-12px);
  }
  .custom-toggle .bar:nth-child(2) {
    -webkit-transform: translateY(-6px);
    -moz-transform: translateY(-6px);
    -ms-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  .custom-toggle.x .bar {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .custom-toggle.x .bar:first-child {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .custom-toggle.x .bar:nth-child(2) {
    display: none;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    transition: all 0.5s;
  }
  .custom-toggle .bar:nth-child(2) {
    top: 24px;
  }
  .custom-toggle .bar:nth-child(3) {
    top: 26px;
  }
  .custom-toggle.x .bar:first-child {
    top: 18px;
  }
  .custom-toggle.x .bar:nth-child(3) {
    top: 18px;
  }
  .g-nav {
    position: initial;
  }
  .site-header .pure-u-md-3-5,
  .site-header .g-nav {
    display: none;
  }
}

/* slider */
.hm-slide {
  position: relative;
  margin: 65px 0 0;
}
.hm-slide .abouts {
  position: absolute;
  width: 500px;
  padding: 20px;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 380px;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 3px;
  box-shadow: 2px 3px 12px 0 rgba(0, 0, 0, .3);
}
.hm-slide .title:before {
  content: "";
  display: inline-block;
  width: 92px;
  height: 65px;
  background: url(/web_oc/2020/images/abouts-bk.png) no-repeat;
  background-size: 100% auto;
  position: absolute;
  top: -9px;
  right: -9px;
}
.hm-slide .title {
  position: relative;
  font-size: 4rem;
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: 10px;
  text-align: left;
}
.hm-slide .title span {
  font-size: 2.6rem;
  display: block;
}
.hm-slide p {
  color: #A30B30;
  margin-bottom: 15px;
  text-align: center;
  font-size: 1.7rem;
  line-height: 1.3;
}
.hm-slide ol {
  list-style: none;
  text-align: left;
  counter-reset: item;
}
.hm-slide ol li {
  font-size: 120%;
  font-weight: 400;
  margin: 0 0 5px;
  padding-left: 35px;
  position: relative;
  background: #FCEDF4;
}
.hm-slide ol li:before {
  counter-increment: item;
  content: counter(item);
  color: #A30B30;
}
.hm-slide ol li a {
  display: inline-block;
  color: #A30B30;
  padding: 5px;
}
.hm-slide .more a {
  display: block;
  padding: 10px 5px;
  background: #A30B30;
  color: #fff;
  font-size: 1.4rem;
}
.hm-slide .more a:hover {
  opacity: 0.8;
}
@media screen and (max-width: 1094px) {
  .hm-slide {
      min-height: 400px;
      max-height: 400px;
  }
  .hm-slide img {
      height: 400px;
      width: auto;
      max-width: none;
      object-fit: cover;
  }
}
@media screen and (max-width: 767px) {
  .hm-slide {
    height: 560px;
    max-height: none;
    overflow: hidden;
    margin-top: 0;
  }
  .hm-slide .abouts {
    margin: auto 3%;
    width: 94%;
    /*height: 500px;*/
  }
  .slick-slide img {
    height: 100%;
    width: auto;
    max-width: none;
  }
  .hm-slide .title {
    font-size: 5rem;
    line-height: 1.1;
  }
  .hm-slide p {
    text-align: left;
    font-size: 1.6rem;
  }
  .hm-slide ol {
    margin-top: 30px;
  }
  .hm-slide ol span {
    display: block;
  }
  .hm-slide ol li {
    line-height: 1.5;
    padding: 5px 0 5px 35px;
  }
  .hm-slide ol li:before {
    font-size: 3rem;
    height: 38px;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    left: 11px;
    line-height: 1;
  }
  .hm-slide .more a {
    padding: 10px 5px;
    text-align: center;
  }
}

/* パンくず */
.breadcrumbs { font-size: 1.3rem; padding: 10px; }
@media screen and (max-width: 767px) {
  .breadcrumbs { display: none; }
}
/*hm-briefing */
.hm-briefing {
  width: 900px;
  max-width: 94%;
  margin: 0 auto;
}
section {
  margin: 60px 0;
}
section h2 {
  text-align: center;
  color: #A30B30;
  font-weight: 600!important;
  font-size: 3rem;
  line-height: 1.6;
}
.hm-briefing .pure-g {
  margin-left: -30px;
}
.hm-briefing .pure-u-1-3 > div {
  min-height: 345px;
  margin-left: 30px;
  height: 100%;
  background: #FCEDF4;
  border: 1px solid #F5D6E5;
  padding: 27px;
  position: relative;
}
.hm-briefing .pure-u-1-3 > div a {
  display: block;
}
.hm-briefing .pure-u-1-3 > div a:hover {
  opacity: 0.7;
}
.hm-briefing .important {
  background: #a30b30;
  display: inline-block;
  color: #fff;
  padding: 3px 14px;
  position: absolute;
  top: 0;
  left: 0;
}
.hm-briefing .img {
  text-align: center;
  height: 100px;
}
.hm-briefing .img img {
  width: 153px;
}
.hm-briefing h3 {
  color: #A30B30;
  text-align: center;
  line-height: 1.4;
  font-weight: 600!important;
}
@media screen and (max-width: 767px) {
  .hm-briefing {
    margin: 0 3%;
  }
  .hm-briefing .pure-u-1-3 {
    width: 100%;
    margin-bottom: 10px;
  }
  .hm-briefing .pure-u-1-3 > div {
    display: flex;
    min-height: auto;
    margin-bottom: 10px;
  }
  .hm-briefing .pure-u-1-3 * {
    text-align: left;
  }
  .hm-briefing .pure-u-1-3 .img {
    width: 27%;
    height: 140px;
    position: relative;
  }
  .hm-briefing .pure-u-1-3 .img img {
    width: auto;
    height: auto;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
  }
  .hm-briefing .pure-u-1-3 .img + div {
    width: 80%;
    padding: 0 0 0 25px;
  }
  .hm-briefing h3 {
    margin-top: 0;
  }
  .hm-briefing .pure-u-1-3 p {
    margin-bottom: 0;
  }
}

.hm-document {
  background: #F8F9F4;
  padding: 20px 0 60px;
}
.hm-document .content {
  max-width: 94%;
  width: 900px;
  margin: 0 auto;
  text-align: center;
}
.hm-document .pure-g {
  margin-left: -30px;
}
.hm-document .pure-u-1-4 div {
  margin-left: 30px;
}
.hm-document .pure-u-1-4 div a:hover {
  opacity: 0.7;
}
.hm-document .mail {
  margin: 30px 0 0 0;
  text-align: center;
  font-size: 2rem;
}
.hm-document .mail a {
  display: inline-block;
  background: #A30B30;
  color: #fff;
  padding: 10px 50px 10px 70px;
  vertical-align: middle;
  position: relative;
}
.hm-document .mail a:hover {
  opacity: 0.8;
}
.hm-document .mail a:before {
  content: "";
  display: inline-block;
  position: relative;
  left: -10px;
  top: 6px;
  width: 26px;
  height: 26px;
  background: url(/web_oc/2020/images/telemail.png) no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 767px) {
  .hm-document {
    padding: 30px 3%;
  }
  .hm-document .pure-u-1-4 {
    width: 50%;
  }
  .hm-document .pure-u-1-4 div {
    margin-bottom: 30px;
  }
  .hm-document .mail {
    margin: 0 0 40px;
  }
  .hm-document .mail a {
    width: 100%;
    padding: 10px;
  }
  .hm-document .mail a:before {
    width: 40px;
    height: 40px;
  }
  .hm-document .mail a span {
    position: relative;
    top: -6px;
  }
}
.hm-information {
  overflow: hidden;
}
.hm-information .content1 {
  width: 900px;
  margin: 0 auto;
  border: 7px solid #E3E3E3;
  padding: 60px;
  position: relative;
}
.hm-information .content1:before {
  content: "";
  position: absolute;
  display: block;
  width: 260px;
  height: 35px;
  background: url(/web_oc/2020/images/information_bk1.png) no-repeat;
  background-size: auto 100%;
  margin: auto;
  bottom: -35px;
  right: 0;
  left: 0;
}
.hm-information .content1:after {
  content: "";
  position: absolute;
  display: block;
  width: 300px;
  height: 300px;
  background: url(/web_oc/2020/images/information_bk2.png) no-repeat;
  background-size: 100% auto;
  margin: auto;
  bottom: -200px;
  right: -150px;
}
.hm-information .noicon {
  padding-left: 0!important;
}
.hm-information h2 {
  margin: 0 0 30px;
}
.hm-information dl {
  display:flex;
  flex-wrap: wrap;
  border: 1px solid #fff;
  border-top: none;
  font-size: 1.6rem;
}
.hm-information dt {
  background: #F8F8F4;
  width: 30%;
  padding: 10px;
  box-sizing: border-box;
  border-top: 1px solid #fff;
  color: #A30B30;
  font-weight: 600;
}
.hm-information dd {
  padding: 10px;
  margin: 0;
  border-top: 1px solid #fff; 
  width: 70%;
  background: #F8F8F4;
  box-sizing: border-box;
}
.hm-information .font-l {
  font-size: 3rem;
  font-weight: 600;
}
.hm-information .font-m {
  font-weight: 600;
  font-size: 1.8rem;
}
.hm-information .sp a {
  color: #c70101;
  text-decoration: underline;
  position: relative;
  padding-left: 35px;
}
.hm-information .sp a:hover {
  text-decoration: none;
  color: #7d7c7c;
}
.hm-information .sp a[href$=".pdf"]:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 25px;
  left: 10px;
}
.hm-information ul {
  list-style: none;
}
.hm-information ul li {
  margin-top: 15px;
}
.hm-information ul li a {
  display: block;
  position: relative;
  color: #c70101;
  text-decoration: underline;
}
.hm-information ul li a:hover {
  color: #7d7c7c;
  text-decoration: none;
}
.hm-information a[href$=".pdf"]:before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 40px;
  background: url(/web_oc/2020/images/icon-pdf.png) no-repeat center center;
  background-size: 100% auto;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
}
.hm-information .content2 {
  margin: 60px 0;
}
.hm-information .more {
  text-align: center;
}
.hm-information .more a {
  display: inline-block;
  padding: 5px 30px;
  color: #fff;
  background: #A30B30;
  font-size: 1.8rem;
  font-weight: 600;
}
.hm-information .more a:hover {
  opacity: 0.8;
}
@media screen and (max-width: 767px) {
  .hm-information .content1 {
    max-width: 94%;
    margin: 0 3%;
    padding: 30px 3%;
  }
  .hm-information p {
    display: none;
  }
  .hm-information dl {
    display: block;
  }
  .hm-information dt,
  .hm-information dd {
    width: 100%;
    border: none;
    display: block;
    text-align: center;
    padding: 20px;
  }
  .hm-information dd {
    margin-bottom: 20px;
    padding: 0 20px 20px;
  }
  .hm-information .content1:before,
  .hm-information .content1:after {
    background: none;
  }
  .hm-information dt {
    padding-bottom: 0;
    font-size: 1.8rem;
  }
  .hm-information .font-m {
    display: block;
  }
  .hm-information dd br {
    display: none;
  }
  .hm-information .left {
    text-align: left;
  }
  .hm-information .sp {
    display: block;
  }
  .hm-information ul li {
    margin-top: 0;
    padding-top: 15px;
  }
  .hm-information .more {
    display: block;
  }
}
.hm-video {
  background: #F7DCE9;
  padding: 60px 0;
  margin: 120px 0 60px;
  text-align: center;
}
.hm-video .content {
  width: 900px;
  margin: 0 auto;
  text-align: center;
}
.hm-video h2 {
  margin-top: 0;
}
.hm-video .cat {
  margin: 50px 0 30px;
  font-weight: 600;
  color: #A30B30;
}
.hm-video .list.pure-g {
  margin: 60px 0 60px 0;
}
.hm-video .pure-g ol {
  margin: 0 30px 0 0;
}
.hm-video .pure-g {
  margin-left: -30px;
}
.hm-video .pure-u-1-3 > div {
  margin-left: 30px;
}
.hm-video .pure-u-1-3 a p {
  text-decoration: underline;
}
.hm-video .pure-u-1-3 a:hover img {
  opacity: 0.8;
}
.hm-video .pure-u-1-3 a:hover p {
  color: #7d7c7c;
}
.hm-video .pure-g {
  margin-right: -20px;
}
.hm-video .pure-g ol {
  margin-right: 20px;
}
.hm-video li {
  display: table;
  width: 100%;
}
.hm-video li span {
  display: table-cell;
  vertical-align: middle;
}
.hm-video .number {
  width: 60px;
}
.hm-video .name {
  width: 225px;
  padding: 0 20px;
  text-align: left;
}
.hm-video .img {
  text-align: right;
}
@media screen and (max-width: 767px) {
  .hm-video {
    margin: 30px 0;
  }
  .hm-video .content {
    width: 94%;
    margin: 0 3%;
  }
  .hm-video .pure-g ol {
    margin-right: 0;
  }
  .hm-video .content .pure-u-1-3 {
    width: 70%;
    margin: 0 auto 10px;
  }
  .hm-video .list.pure-g .pure-u-1-2 {
    width: 100%;
  }
  .hm-video .list.pure-g {
    margin: 20px 0;
  }
  .hm-video li {
    margin-bottom: 15px;
  }
  .hm-video .name {
    width: 220px;
  }
  .hm-video li span.img img {
    width: 100%;
  }
}
@media screen and (max-width: 500px) {
  .hm-video .name {
      width: 180px;
  }
  .hm-video .number {
      width: 35px;
  }
}
.hm-qa {
  width: 900px;
  margin: 60px auto;
}
.hm-qa .pure-g {
  margin-left: -30px;
}
.hm-qa .pure-u-1-3 a {
  height: 70px;
  display: block;
  padding: 10px 20px;
  background: #A30B30;
  color: #fff;
  text-align: center;
  margin-left: 30px;
  position: relative;
}
.hm-qa .pure-u-1-3 a:hover {
  opacity: 0.8;
}
.hm-qa .pure-u-1-3 a span {
  display: block;
  height: 20px;
  width: 100%;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .hm-qa {
    max-width: 94%;
    margin: 30px 3%;
  }
  .hm-qa .pure-u-1-3 {
    width: 50%;
  }
}
.hm-contact {
  width: 900px;
  margin: 60px auto;
}
.hm-contact dl {
  display:flex;
  flex-wrap: wrap;
  border-top: none;
  font-size: 1.6rem;
}
.hm-contact dt {
  width: 22%;
  padding: 10px 2% 10px 0;
  box-sizing: border-box;
}
.hm-contact dd {
  padding: 10px 0;
  margin: 0;
  width: 26%;
  box-sizing: border-box;
}
.hm-contact a {
  text-decoration: underline;
  color: #A30B30;
}
.hm-contact a:hover {
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .hm-contact {
    width: 94%;
    margin: 0 3% 30px;
  }
  .hm-contact .pure-u-1-2 {
    width: 100%;
  }
  .hm-contact dl {
    font-size: 1.4rem;
  }
  .hm-contact dt {
    width: 54%;
  }
  .hm-contact dd {
    width: 44%;
    margin: 0 0 0 2%;
  }
}
/* フッター */
.site-footer {
  width: 100%;
  padding: 30px 3%;
  background: url(/web_oc/2020/images/footer-bk.png) no-repeat;
  background-size: cover;
}
.site-footer .information * {
  color: #fff;
}
.copyright {
  color: #fff;
}
.ft-pagetop {
  display: block;
  position: fixed;
  bottom: 100px;
  right: 3%;
}
@media screen and (max-width: 767px) {
  .ft-pagetop a img {
    display: none;
  }
  .ft-pagetop a img {
    background: #a30b30;
  }
  .ft-pagetop a {
    width: 50px;
    height: 50px;
    display: block;
    position: relative;
    background: #a30b30;
  }
  .ft-pagetop a:before {
    content: "";
    display: block;
    width: 10px;
    height: 5px;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #ffffff;
    border-left: 10px solid transparent;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .site-header .pure-u-md-3-5 {
    text-align: center;
  }
  .site-header .pure-u-md-3-5 nav {
    display: block;
    margin: 20px 0;
  }
  .pure-menu-list {
    letter-spacing: -.5em!important;
  }
  .pure-menu-item {
    display: inline-block;
    width: 25%;
  }
  .g-nav li {
    display: block;
    text-align: left;
  }
  .g-nav li a {
    padding: 10px 30px;
  }
  section h2 {
    font-size: 2.3rem;
  }
}
@media screen and (max-width: 900px) {
  .hm-information .content1,
  .hm-video .content,
  .hm-qa,
  .hm-contact {
    max-width: 94%;
    margin-left: 3%;
    margin-right: 3%;
  }
  .hm-information {
    overflow: hidden;
  }
}

.mb0 {
  margin-bottom: 0!important;
}
.mt0 {
  margin-top: 0!important;
}