@charset "UTF-8";
/*webフォント読み込み*/
@font-face { /*notosansミディアム*/
font-family: 'Noto Sans JP'; src: url("../fonts/NotoSansJP-Medium.otf"); src: url("../fonts/NotoSansJP-Medium.woff2") format("woff2"), url("../fonts/NotoSansJP-Medium.woff") format("woff"), url("../fonts/NotoSansJP-Medium.otf") format("truetype"); font-weight: 500; }
@font-face { /*notosansボールド*/
font-family: 'Noto Sans JP'; src: url("../fonts/NotoSansJP-Bold.otf"); src: url("../fonts/NotoSansJP-Bold.woff2") format("woff2"), url("../fonts/NotoSansJP-Bold.woff") format("woff"), url("../fonts/NotoSansJP-Bold.otf") format("truetype"); font-weight: 700; }
@font-face { /*NotoSansJP-Black*/
font-family: 'Noto Sans JP'; src: url("../fonts/NotoSansJP-Black.otf"); src: url("../fonts/NotoSansJP-Black.woff2") format("woff2"), url("../fonts/NotoSansJP-Black.woff") format("woff"), url("../fonts/NotoSansJP-Black.otf") format("truetype"); font-weight: 900; }
/* Link
=========================================== */
a:link, a:visited { color: #000; text-decoration: none; }

a { outline: none; transition: 0.3s; color: #000; text-decoration: none; }

a img { transition: 0.3s; }

:focus { outline: none; }

/* 共通設定
=========================================== */
.pc { display: none !important; }

body { overflow: hidden; background: #fff; color: #000000; font-size: 16px; line-height: 1.9375; font-family: YakuHanJP,'Noto Sans JP',"メイリオ","Mayryo ","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","MS PGothic",sans-serif; font-style: normal; font-weight: 500; overflow-wrap: anywhere; /* 収まらない場合に折り返す */ word-break: normal; /* 単語の分割はデフォルトに依存 */ line-break: strict; /* 禁則処理を厳格に適用 */ }

h1, h2, h3, h4, h5, h6 { line-height: 1.5; font-weight: 700; }

body#tinymce { min-width: inherit !important; }

input, select, textarea { font-family: YakuHanJP,'Noto Sans JP',"メイリオ","Mayryo ","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","MS PGothic",sans-serif; color: #141414; }

table { width: 100%; }

img { max-width: 100%; height: auto; width: 100%; }

.no-pc { display: inline-block; text-decoration: none !important; }

.inb { display: inline-block; }

.block { display: block; }

.wrap { position: relative; }

/*共通見出し設定*/
.titles01 { margin-bottom: 50px; line-height: 1.1; font-size: 32px; font-weight: 700; position: relative; }

.titles01 .en { display: block; font-size: 13px; line-height: 1; margin-bottom: 15px; }

.titles01 .jp { display: block; line-height: 1.4; }

.titles02 { font-size: 16px; font-weight: 700; color: #8D000D; position: relative; padding-left: 10px; line-height: 38px; margin-bottom: 15px; }

.titles02:before { content: ""; width: 25px; height: 1px; background: #8D000D; position: absolute; left: -25px; top: 19px; }

.titles03 { margin-bottom: 40px; color: #fff; font-size: 26px; font-weight: 700; }
.titles03 > span { display: inline-block; padding: 0 23px; background: url("../img/common/tit-ico01l.svg") no-repeat left center, url("../img/common/tit-ico01r.svg") no-repeat right center; }

.titles04 { margin-bottom: 40px; font-size: 26px; font-weight: 700; }
.titles04 > span { display: inline-block; padding: 0 23px; background: url("../img/common/tit-ico02l.svg") no-repeat left center, url("../img/common/tit-ico02r.svg") no-repeat right center; }

/*共通ボタン設定*/
.btn01 { width: 100%; transition: 0.3s; height: 70px; margin: 0 auto; display: table; }

.btn01 a { display: table-cell; text-align: center; vertical-align: middle; position: relative; text-decoration: none; color: #fff; font-size: 14px; line-height: 22px; text-align: center; border-radius: 5px; font-weight: 500; background: #292929; box-sizing: border-box; }

.btn01 a .arrow { position: absolute; right: 20px; top: 50%; z-index: 2; transform: translateY(-50%); width: 9px; }

.btn01 a .arrow img { display: block; opacity: 1; }

.link-btn01 a { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; line-height: 40px; font-size: 14px; text-decoration: none; }
.link-btn01 a .arrow { z-index: 2; width: 40px; height: 40px; margin-left: 15px; border-radius: 100%; transition: 0.3s; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; position: relative; border: solid 1px #292929; box-sizing: border-box; }
.link-btn01 a .arrow img { display: block; transition: 0.3s; opacity: 1 !important; }

/*グラデーション*/
.gra-bg { display: inline-block; padding: 5px 12px; background: linear-gradient(120deg, #D80000 0%, #D80000 20%, #D85E00 100%); color: #fff; border-radius: 10px; }

.gra-text { background: linear-gradient(180deg, #D80000 0%, #D85E00 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; display: inline-block; }

/*スライダー　ふわっ*/
div#mv-slider, div.slider01, div.gallery-main, div.gallery-thumb, div.belt-slider { opacity: 0; transition: opacity .3s linear; }

div#mv-slider.slick-initialized, div.slider01.slick-initialized, div.gallery-main.slick-initialized, div.gallery-thumb.flex.slick-initialized, div.belt-slider.slick-initialized { opacity: 1; }

/*font*/
.robo { font-family: 'roboto'; }

.pop, .num { font-family: 'pop'; }

.tright { text-align: right; }

.tleft { text-align: left; }

.tcenter { text-align: center; }

.flL { float: left; }

.flR { float: right; }

.bold { font-weight: bold; }

.inb { display: inline-block; }

.block { display: block; }

.red { color: #E30606; }

.blue { color: #0075A4; }

.blue02 { color: #0093D6; }

.yellow { color: #FFD400; }

.orange { color: #EE5A35; }

.green { color: #087F82; }

.d-green { color: #005E4B; }

.green02 { color: #01A9AE; }

.navy { color: #374b8e; }

.pink { color: #ff7373; }

.gray { color: #818181; }

/*header
---------------------------------------------------------------*/
div#header { width: 100%; position: absolute; z-index: 200; height: 80px; display: flex; flex-wrap: wrap; align-items: center; box-sizing: border-box; padding: 20px 5.33vw 0; }
div#header .logo { width: 246px; }

.tel-num a { color: #fff; font-weight: 700; font-size: 22px; }
.tel-num a > span { display: inline-block; padding-left: 20px; background: url("../img/common/ico-tel.svg") no-repeat left center; }

.tel-bh { font-size: 14px; font-weight: 700; }

.k-tel { font-size: 14px; font-weight: 700; line-height: 1; }

div.head-inner.flex .center, div.head-inner.flex .contact-btn { display: none; }

/* nav
=========================================== */
html.huopen { overflow: hidden; }

.sp-nav-btn { width: 40px; height: 40px; position: fixed; top: 30px; right: 5.33vw; z-index: 202; box-sizing: content-box; background: #886A2D; border-radius: 5px; box-shadow: 0 0 5px rgba(0, 0, 0, 0.4); }

.sp-nav-btn span.bar01 { content: ""; width: 50%; height: 2px; position: absolute; top: 12px; right: 25%; transition: 0.3s; }

.sp-nav-btn span.bar03 { content: ""; width: 50%; height: 2px; position: absolute; bottom: 12px; right: 25%; transition: 0.3s; }

.sp-nav-btn span.bar02 { position: absolute; width: 50%; height: 2px; top: 19px; right: 25%; transition: 0.3s; }

.sp-nav-btn > span { overflow: hidden; }

.sp-nav-btn > span > span { width: 120px; height: 2px; background: #FFFFFF; display: block; position: absolute; left: -80px; top: 0; border-radius: 4px; }

.sp-nav-btn.opon { background: #000000; }

.sp-nav-btn.opon span.bar02 { opacity: 0; }

.sp-nav-btn.opon span.bar01 { box-shadow: none; transform: rotateZ(45deg); top: 19px; }

.sp-nav-btn.opon span.bar03 { transform: rotateZ(-45deg); bottom: 19px; width: 50%; right: 25%; }

.overlay-nav { height: 100%; opacity: 0; background: rgba(0, 0, 0, 0.75); width: 100%; position: fixed; z-index: -20; pointer-events: none; }

.overlay-nav.opon { z-index: 100; opacity: 1; pointer-events: auto; }

div.navs-list-wrap { position: fixed; width: calc(100% - 75px); height: 100%; z-index: 200; top: 0; box-sizing: border-box; background: linear-gradient(170deg, #c3a65c 1%, #886a2d 100%); right: calc(-100% - 60px); transition: 0.3s; padding: 30px 5.33vw 50px; }

div.navs-list-wrap.opon { right: 0; }

div.navs-list-wrap span.dr-arrow img { display: none; }

ul.navs-list { height: calc(100vh - 70px); overflow: auto; box-sizing: border-box; padding: 0 0 95px; width: 100%; display: flex; flex-wrap: wrap; justify-content: space-between; }

.navs-list > li { width: 100%; }

.navs-list > li { border-bottom: solid 1px #886A2D; }

.navs-list > li .drop-wrap { display: none; }

.navs-list > li:last-child { border-top: none; border-bottom: none; }

.navs-list > li > a { display: block; padding: 23px 0 23px 30px; text-decoration: none; font-weight: 500; background: url("../img/common/arrow02.svg") no-repeat left 10px center; color: #fff; font-weight: 500; }

.navs-list > li > .dr-tit { font-weight: 700; padding: 23px 0 23px 30px; background: url("../img/common/sp-arrow02.svg") no-repeat center left 10px; color: #fff; font-weight: 500; }

.navs-list > li > .dr-tit.on { background-image: url("../img/common/sp-arrow03.svg"); }

.navs-list > li.honyaku { height: 40px; margin-bottom: 30px; border-bottom: none; }

.navs-list > li.sp-nav-contact { padding: 20px 5%; border-bottom: none; }

ul.nav-sub { border-top: solid 1px #886A2D; padding: 28px 0 28px 0; }
ul.nav-sub > li { border-bottom: dashed 1px #886A2D; padding: 0 0 28px 30px; margin-bottom: 28px; }
ul.nav-sub > li a { color: #fff; display: block; line-height: 1.875; padding-left: 22px; background: url("../img/common/arrow02.svg") no-repeat left top 10px; }
ul.nav-sub > li:last-child { border-bottom: none; padding-bottom: 0; margin-bottom: 0; }

.btns-nav.flex { justify-content: space-between; }
.btns-nav.flex > div { width: 100%; height: 70px; display: table; margin-bottom: 15px; }
.btns-nav.flex > div a { display: table-cell; background: #886A2D; border-radius: 5px; color: #fff; font-size: 16px; font-weight: 500; text-align: center; vertical-align: middle; line-height: 20px; }
.btns-nav.flex > div.tel-set { height: 85px; }
.btns-nav.flex > div:last-child { margin-bottom: 0; }
.btns-nav.flex .nav-btn01 a > span { display: inline-block; padding-left: 32px; background: url("../img/common/ico-mail.svg") no-repeat left center; }
.btns-nav.flex .tel-set { display: block; background: #8D000D; border-radius: 5px; color: #fff; text-align: center; box-sizing: border-box; padding-top: 7px; }
.btns-nav.flex .tel-bh { text-align: center; font-size: 13px; color: #fff; }
.btns-nav.flex .tel-num a { font-size: 22px; font-weight: 700; line-height: 32px; display: block; border-radius: 0; background: none; }
.btns-nav.flex .tel-num a span { display: inline-block; padding-left: 23px; background: url("../img/common/ico-tel.svg") no-repeat left top 7px; }

.sp-bh { text-align: right; font-size: 12px; line-height: 20px; color: #fff; margin-top: 10px; }

.navs-list > li.nav-contact { border-bottom: none; }

li.honyaku { height: 29px; }
li.honyaku .gtranslate_wrapper .gt_switcher { width: 210px; }
li.honyaku .gtranslate_wrapper .gt_switcher .gt_option { width: auto; }
li.honyaku .gtranslate_wrapper .gt_switcher .gt_selected { height: 29px; border: solid 1px #A17474; box-sizing: border-box; }
li.honyaku .gtranslate_wrapper .gt_switcher .gt_selected a { color: #A17474; box-sizing: border-box; height: 29px; border: none; width: 100%; }

/* contents */
/*-------------------------------------------*/
.bg-blue { background: #F5F9FF; }

/*パンくず
---------------------------------------------------------------*/
div#bread { z-index: 2; position: relative; text-align: right; padding: 30px 5.33vw 0; }

#bread ul li { display: inline-block; font-size: 14px; font-weight: 500; color: #fff; }

ul.bread-list li a { font-size: 14px; color: #fff; }

ul.bread-list li:after { content: "−"; margin-left: 10px; margin-right: 5px; display: inline-block; position: relative; color: #A17474; }

ul.bread-list li:last-child:after { content: none; }

/* メインビジュアル */
/*-------------------------------------------*/
/*TOPページ*/
div#mv { position: relative; z-index: 3; letter-spacing: 0; }

/* footer */
/*-------------------------------------------*/
div#footer { background: url("../img/common/ft-bg01.jpg"); padding-top: 80px; overflow: hidden; }

div#ftBox01 { padding: 60px 5.33vw 80px; color: #fff; position: relative; }

div#ftBox01 .wrap > div.ft-contact h2.titles01 { margin-bottom: 30px; }
div#ftBox01 .wrap > div.ft-contact h2.titles01 .jp { font-size: 30px; }

.ft-telBox { margin-top: 40px; border-radius: 5px; border: solid 1px #542622; background: #240605; text-align: center; padding: 14px; }

.ft-contact-btn { margin-top: 20px; width: 100%; height: 100px; display: table; }
.ft-contact-btn a { text-decoration: none; display: table-cell; text-align: center; vertical-align: middle; color: #fff; font-weight: 700; line-height: 1.4; border: solid 1px #542622; background: #240605; border-radius: 5px; }
.ft-contact-btn a .tit { font-size: 20px; }
.ft-contact-btn a .tit > span { display: inline-block; padding-left: 27px; background: url("../img/common/ico-mail.svg") no-repeat left center; }
.ft-contact-btn a .co-bh { font-size: 14px; margin-top: 5px; }

div.fnav { display: flex; flex-wrap: wrap; width: 100%; }
div.fnav > div { margin-right: 60px; max-width: calc(50% - 30px); }
div.fnav > div ul > li { line-height: 20px; margin-bottom: 15px; }
div.fnav > div ul > li a { display: inline-block; padding-left: 17px; background: url("../img/common/arrow02.svg") no-repeat left center; background-size: 7px; }
div.fnav > div ul > li:last-child { margin-bottom: 0; }
div.fnav > div a { color: #fff; }
div.fnav > div:last-child { margin-right: 0; }

div.ft-info.flex { margin-top: 40px; display: block; }

h2.ft-logo { width: 246px; margin: 0 auto 40px; }
h2.ft-logo img { filter: brightness(0) saturate(100%) invert(95%) sepia(0%) saturate(7500%) hue-rotate(69deg) brightness(106%) contrast(106%); }

.iso-mark { width: 185px; margin: 0 auto; }

.ft-text02.flex { margin-top: 40px; font-size: 13px; display: block; }

.copyright { font-size: 10px; color: #A17474; text-align: center; margin-top: 60px; }

/* TOPへ戻る */
/*-------------------------------------------*/
div#top-link { position: absolute; left: 0; top: 0; opacity: 0; z-index: -20; }

div#page-top { width: 89.34vw; margin: 0 auto; position: relative; text-align: right; }
div#page-top a { display: inline-block; }
div#page-top a img { display: block; }

div#page-top:before { content: ""; width: calc(100% - 96px); height: 1px; background: #A17474; position: absolute; left: 0; top: 50%; }

div#scr { position: fixed; z-index: 110; left: 0; bottom: 0; width: 100%; display: flex; flex-wrap: wrap; }
div#scr > div { width: 50%; height: 60px; box-sizing: border-box; padding: 0; }
div#scr > div.btn01 { border-radius: 0; background: #2F719D; box-shadow: none; }
div#scr > div.btn01 a { border-radius: 0; font-weight: 500; }
div#scr > div.btn01 a > span:first-child { display: inline-block; padding-left: 35px; background: url("../img/common/scr-ico01.svg") no-repeat left center; background-size: 24px; padding-top: 5px; padding-bottom: 5px; }
div#scr > div.btn01.rec-btn { background: #589FCE; }
div#scr > div.btn01.rec-btn a > span:first-child { background-image: url("../img/common/scr-ico02.svg"); }

/* iOSでのデフォルトスタイルをリセット */
input[type="password"], textarea, input[type="text"], input[type="submit"], input[type="button"] { border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; appearance: button; box-sizing: border-box; cursor: pointer; }

input[type="password"]::-webkit-search-decoration, textarea::-webkit-search-decoration, select::-webkit-search-decoration, input[type="text"]::-webkit-search-decoration, input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration { display: none; }

input[type="password"]::focus, textarea::focus, select::focus, input[type="text"]::focus, input[type="submit"]::focus, input[type="button"]::focus { outline-offset: -2px; }

select { color: #222; padding: 5px; box-sizing: border-box; }

/* TOP
------------------------------------------*/
div#mv { background: url("../img/main/mv-bg-hex-sp.png") no-repeat center top, url("../img/common/bg01.jpg"); padding-top: 120px; background-size: 100%, auto; overflow: hidden; }

div#mv-slider { margin-bottom: 0; }
div#mv-slider .slick-list { overflow: visible; }

.m-slider { position: relative; }
.m-slider .slide-img { height: 138.13vw; }

.m-slider01-text01 { position: absolute; z-index: 2; top: 10.66vw; left: 0; right: 0; display: flex; flex-wrap: wrap; align-items: center; width: 89.34vw; justify-content: flex-end; margin: 0 auto; }
.m-slider01-text01 span.line01 { width: 100%; margin-bottom: 2vw; }
.m-slider01-text01 span.line02 { filter: drop-shadow(0 0 5.33vw #000); margin-right: 1.06vw; width: 20.26vw; }
.m-slider01-text01 span.line03 { width: 21.86vw; }

.m-slider01-text02 { position: absolute; z-index: 2; top: 63.16vw; left: 0; right: 0; font-weight: 900; font-size: 6.93vw; text-shadow: 0 0 2.66vw #404040; color: #fff; width: 89.34vw; margin: 0 auto; }
.m-slider01-text02 p.line02 { font-size: 7.46vw; display: flex; flex-wrap: wrap; align-items: center; line-height: 12.26vw; }
.m-slider01-text02 p.line02 .big { font-size: 8.53vw; }
.m-slider01-text02 p.line02 span.text-img { width: 76.8vw; }
.m-slider01-text02 .img { margin-top: 10.66vw; }

.m-slider-text { font-size: 6.93vw; font-weight: 900; text-shadow: 0 0 2.66vw #404040; line-height: 1.61; position: absolute; z-index: 2; bottom: 8vw; left: 5.33vw; color: #fff; }

.m-slider01 .slide-img { background: url("../img/main/slide01-sp.jpg") no-repeat center; background-size: cover; }

.m-slider02 .slide-img { background: url("../img/main/slide02-sp.png") no-repeat center; background-size: cover; }

.m-slider03 .slide-img { background: url("../img/main/slide03-sp.png") no-repeat center; background-size: cover; }
.m-slider03 .m-slider-text { text-align: right; left: auto; right: 5.33vw; }

.mv-textBox03 { background: url("../img/main/mv-belt-sp.svg") no-repeat right top; display: flex; flex-wrap: wrap; align-items: center; color: #fff; box-sizing: border-box; z-index: 6; color: #fff; text-align: right; margin-top: 37.06vw; background-size: 105.33%; padding-right: 5.33vw; height: 39.2vw; justify-content: flex-end; }
.mv-textBox03 p.line01 { font-weight: 700; font-size: 4.26vw; }
.mv-textBox03 p.line02 { font-weight: 500; font-size: 3.46vw; width: 86.4vw; }

div.mv-bottom { padding: 16vw 5.33vw 21.33vw; color: #fff; }

.mv-textBox04 { text-align: center; font-size: 5.33vw; font-weight: 900; line-height: 1.4; }
.mv-textBox04 p.line01 { margin-bottom: 2.66vw; }
.mv-textBox04 p.line02 { font-size: 8vw; margin-bottom: 5px; }
.mv-textBox04 p.line02 span.big { font-size: 10.66vw; }
.mv-textBox04 p.line02 span.big .big01 { letter-spacing: -0.08em; }
.mv-textBox04 p.line02 span.big .big02 { letter-spacing: -0.1em; }

.mv-textBox05 { margin-top: 8vw; text-align: center; color: #fff; position: relative; margin-bottom: 32vw; }
.mv-textBox05 > div.flex { display: block; position: relative; }
.mv-textBox05 > div.flex .box { margin-bottom: 1.33vw; background: #886A2D; text-align: center; line-height: 7.2vw; font-size: 4.26vw; padding: 5.33vw; font-weight: 700; }
.mv-textBox05 > div.flex .box:last-child { margin-bottom: 0; }
.mv-textBox05 > .img { width: 80vw; margin: 8vw auto 0; }

.mv-textBox05:after { content: ""; background: url("../img/main/mv-arrow.svg") no-repeat center bottom; width: 37.33vw; height: 10.66vw; position: absolute; left: 0; right: 0; top: calc(100% + 10.66vw); margin: 0 auto; background-size: contain; }

.mv-textBox06 { display: flex; flex-wrap: wrap; justify-content: center; font-weight: 900; font-size: 26px; align-items: center; }
.mv-textBox06 .line01 { text-align: center; line-height: 1.7; width: 100%; font-size: 5.33vw; }
.mv-textBox06 .line02 { font-size: 10.66vw; text-align: center; line-height: 1.4; }
.mv-textBox06 .line02 .small { font-size: 5.33vw; position: relative; top: -1vw; }

section#tech-sec { padding: 60px 5.33vw 1px; background: url("../img/top/bg04.jpg"); }
section#tech-sec .btn01 { margin-top: 60px; }

.scr-wrap { width: 94.67vw; overflow: auto; }
.scr-wrap .TBL02 { width: 1100px; }

.TBL02 .ico-th { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
.TBL02 .ico-th span.ico { width: 35px; margin-right: 10px; }
.TBL02 .ico-th span.ico img { display: block; }
.TBL02 .ico-th span.tit { font-size: 18px; text-align: left; }
.TBL02 .ico-ths.flex { align-items: center; justify-content: center; }
.TBL02 .ico-ths.flex span.plus { margin: 0 10px; }
.TBL02 th, .TBL02 td { box-sizing: border-box; }
.TBL02 .col01 { width: 172px; }
.TBL02 .col02 { width: 160px; }
.TBL02 .col02 .ico-th { width: 100%; }
.TBL02 .col03 { width: 286px; }
.TBL02 .col04 { width: 170px; }
.TBL02 .col04 .ico-th { width: 100%; }
.TBL02 .col05 { width: 170px; }
.TBL02 .col06 { width: 122px; }
.TBL02 table { border-collapse: separate; border-spacing: 4px; }
.TBL02 thead th { color: #fff; font-weight: 700; font-size: 14px; line-height: 24px; text-align: center; vertical-align: middle; background: #886A2D; height: 80px; }
.TBL02 thead th.col06 { background: #8D000D; }
.TBL02 tbody td.col03 .bt-inbox .bt .text { margin: 0 auto; }
.TBL02 tbody tr:first-child td.col02, .TBL02 tbody tr:first-child td.col03, .TBL02 tbody tr:first-child td.col04, .TBL02 tbody tr:first-child td.col05 { vertical-align: top; }
.TBL02 tbody th, .TBL02 tbody td { background: #fff; line-height: 22px; padding: 15px; font-size: 14px; vertical-align: middle; text-align: center; }
.TBL02 tbody th { font-weight: 700; color: #886A2D; padding-right: 5px; padding-left: 5px; }
.TBL02 tbody td { font-weight: 500; }
.TBL02 tbody td.col06 { color: #8D000D; border: solid 1px #A17474; }

.bt-inbox .bt a { line-height: 20px; text-align: center; font-weight: 700; height: 20px; position: relative; display: flex; flex-wrap: wrap; justify-content: space-between; }
.bt-inbox .bt a .arrow { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; border-radius: 3px; background: #E1D4BD; text-decoration: underline; width: 20px; height: 20px; }
.bt-inbox .bt a .arrow img { transition: 0.3s; opacity: 1; width: 6px; }
.bt-inbox .bt-text { text-align: left; padding-top: 15px; border-top: solid 1px #DEDEDE; margin-top: 15px; }

div.size-box.flex { margin-top: 80px; box-sizing: border-box; background: #E1D4BD; padding: 25px; margin-bottom: -158px; min-height: 170px; align-items: center; justify-content: space-between; }
div.size-box.flex > h3.tit { width: 100%; border-bottom: solid 1px #44310C; font-size: 22px; font-weight: 700; line-height: 38px; color: #44310C; padding-bottom: 20px; margin-bottom: 20px; }
div.size-box.flex > .cont { width: 100%; }
div.size-box.flex > .cont .in-cont { margin-bottom: 20px; line-height: 27px; }
div.size-box.flex > .cont .in-cont .cap { font-size: 18px; font-weight: 700; margin-bottom: 10px; }
div.size-box.flex > .cont .in-cont:last-child { margin-bottom: 0; }

section#feature-sec { padding: 238px 5.33vw 80px; background: url("../img/top/bg02-sp.jpg") repeat-y center; background-size: cover; background-attachment: fixed; }
section#feature-sec .btn01 { margin-top: 60px; }
section#feature-sec .btn01 a { background: none; border: solid 1px #fff; }

div.top-twin.flex { display: block; }

div.top-twin-side .titles01 { color: #fff; }

div.t-sideBox01 { width: 100%; height: 90px; display: none; }
div.t-sideBox01 a { display: table-cell; text-decoration: none; color: #5A5A5A; font-weight: 700; font-size: 18px; padding: 10px 30px 10px 20px; line-height: 1.5; vertical-align: middle; text-align: left; border-top: solid 1px #5A5A5A; position: relative; }
div.t-sideBox01 a .arrow { position: absolute; z-index: 2; right: 20px; top: 50%; transform: translateY(-50%); }
div.t-sideBox01 a .arrow img { display: block; filter: brightness(0) saturate(100%) invert(34%) sepia(0%) saturate(1145%) hue-rotate(155deg) brightness(94%) contrast(82%); opacity: 1; }

div.t-sideBox01:first-child a { border-top: none; }

div.t-sideBox01.current + div.t-sideBox01 a { border-top: none; }

div.t-sideBox01.current a { background: #8D000D; color: #fff; border-top: none; }
div.t-sideBox01.current a .arrow { position: absolute; z-index: 2; right: 20px; top: 50%; transform: translateY(-50%); }
div.t-sideBox01.current a .arrow img { display: block; filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(112%) contrast(101%); }

div.top-featureBox { margin-bottom: 30px; padding: 25px; background: #F5F5F5; backdrop-filter: brightness(340%) blur(5px); }
div.top-featureBox .copy01 { font-size: 22px; line-height: 34px; margin-bottom: 15px; }
div.top-featureBox > .img { margin-top: 20px; }

div.top-featureBox:last-child { margin-bottom: 0; }

div.features-in01.flex { margin-top: 15px; display: block; }
div.features-in01.flex .img { margin-top: 15px; }

section#works-sec { padding: 60px 0 1px; background: url("../img/top/bg03-sp.jpg") repeat-x center top; background-size: 100%; }
section#works-sec .ovh { padding: 0 5.33vw; }
section#works-sec .btn01 { margin: 60px auto 0; }

.w-cate { background: #8D000D; color: #fff; line-height: 40px; font-size: 14px; padding: 0 10px; }

.slider02.works-list01 { display: flex; flex-wrap: wrap; }

article.works-art01 { margin: 0 10px; }
article.works-art01 a { display: block; text-decoration: none; }
article.works-art01 .img { position: relative; margin-bottom: 20px; }
article.works-art01 .img .in-img { padding-top: 75%; }
article.works-art01 .img .w-cate { position: absolute; z-index: 2; left: 0; bottom: 0; }
article.works-art01 .TBL01 th { width: 60px; }

/*タブ*/
div#tabArea01 input[type="radio"] { display: none; }

/*選択されていないタブのコンテンツ非表示*/
.tabBox { box-sizing: border-box; height: 0; opacity: 0; -webkit-transition: opacity 600ms; transition: opacity 600ms; overflow-y: hidden; }

/*選択されたタブのコンテンツ表示*/
#tab1:checked ~ .tabBox01 { height: auto; opacity: 1; overflow: initial; }

#tab2:checked ~ .tabBox02 { height: auto; opacity: 1; overflow: initial; }

#tab3:checked ~ .tabBox03 { height: auto; opacity: 1; overflow: initial; }

#tab4:checked ~ .tabBox04 { height: auto; opacity: 1; overflow: initial; }

#tab5:checked ~ .tabBox05 { height: auto; opacity: 1; overflow: initial; }

#tab6:checked ~ .tabBox06 { height: auto; opacity: 1; overflow: initial; }

#tab7:checked ~ .tabBox07 { height: auto; opacity: 1; overflow: initial; }

#tab8:checked ~ .tabBox08 { height: auto; opacity: 1; overflow: initial; }

#tab9:checked ~ .tabBox09 { height: auto; opacity: 1; overflow: initial; }

#tab10:checked ~ .tabBox10 { height: auto; opacity: 1; overflow: initial; }

#tab11:checked ~ .tabBox11 { height: auto; opacity: 1; overflow: initial; }

#tab12:checked ~ .tabBox12 { height: auto; opacity: 1; overflow: initial; }

#tab13:checked ~ .tabBox13 { height: auto; opacity: 1; overflow: initial; }

#tab14:checked ~ .tabBox14 { height: auto; opacity: 1; overflow: initial; }

#tab15:checked ~ .tabBox15 { height: auto; opacity: 1; overflow: initial; }

#tab16:checked ~ .tabBox16 { height: auto; opacity: 1; overflow: initial; }

.tab-head.flex { justify-content: space-between; width: 100%; border-bottom: solid 1px #000000; box-sizing: border-box; padding: 0 10px; margin-bottom: 30px; }

.tab-btn { height: 47px; display: table; margin-right: 40px; }

.tab-btn:last-child { margin-right: 0; }

.tab-btn > label { color: #AEAEAE; display: table-cell; text-align: center; vertical-align: top; font-size: 18px; font-weight: 700; transition: 0.3s; cursor: pointer; line-height: 1; border-bottom: solid transparent 5px; }

div#tabArea01 input#tab1:checked ~ .tab-head.flex .tab-btn1 label, div#tabArea01 input#tab2:checked ~ .tab-head.flex .tab-btn2 label, div#tabArea01 input#tab3:checked ~ .tab-head.flex .tab-btn3 label, div#tabArea01 input#tab4:checked ~ .tab-head.flex .tab-btn4 label, div#tabArea01 input#tab5:checked ~ .tab-head.flex .tab-btn5 label, div#tabArea01 input#tab6:checked ~ .tab-head.flex .tab-btn6 label, div#tabArea01 input#tab7:checked ~ .tab-head.flex .tab-btn7 label, div#tabArea01 input#tab8:checked ~ .tab-head.flex .tab-btn8 label, div#tabArea01 input#tab9:checked ~ .tab-head.flex .tab-btn9 label, div#tabArea01 input#tab10:checked ~ .tab-head.flex .tab-btn10 label, div#tabArea01 input#tab11:checked ~ .tab-head.flex .tab-btn11 label, div#tabArea01 input#tab12:checked ~ .tab-head.flex .tab-btn12 label, div#tabArea01 input#tab13:checked ~ .tab-head.flex .tab-btn13 label, div#tabArea01 input#tab14:checked ~ .tab-head.flex .tab-btn14 label, div#tabArea01 input#tab15:checked ~ .tab-head.flex .tab-btn15 label, div#tabArea01 input#tab16:checked ~ .tab-head.flex .tab-btn16 label { border-color: #8D000D; color: #8D000D; }

/*タブ終わり*/
.slider01 button.slick-arrow, .slider02 button.slick-arrow, div.news-list01.flex button.slick-arrow { width: 10.66vw; height: 16vw; top: 33.33vw; transform: translateY(-50%); }
.slider01 button.slick-prev.slick-arrow, .slider02 button.slick-prev.slick-arrow, div.news-list01.flex button.slick-prev.slick-arrow { background: url("../img/common/slide-arrow01.svg") no-repeat center #292929; left: -5.33vw; background-size: 2.93vw; border-radius: 0 1.33vw 1.33vw 0; }
.slider01 button.slick-next.slick-arrow, .slider02 button.slick-next.slick-arrow, div.news-list01.flex button.slick-next.slick-arrow { background: url("../img/common/slide-arrow02.svg") no-repeat center #292929; right: -5.33vw; background-size: 2.93vw; border-radius: 1.33vw 0 0 1.33vw; }

button.slick-arrow { opacity: 1; z-index: 2; transition: 0s; width: 60px; height: 60px; box-sizing: border-box; border: none; border-radius: 5px; transition: 0.3s; }

button.slick-prev.slick-arrow { background: url("../img/common/slide-arrow01.svg") no-repeat center #292929; left: 0; }

button.slick-next.slick-arrow { background: url("../img/common/slide-arrow02.svg") no-repeat center #292929; right: 0; }

button.slick-arrow:before { content: none; }

.slider01.eq-list01.flex { position: relative; margin-bottom: 0 !important; padding-bottom: 82px; }
.slider01.eq-list01.flex ul.slick-dots { text-align: left; bottom: 20px; display: flex; width: 100%; justify-content: center; }
.slider01.eq-list01.flex ul.slick-dots li { width: calc(100% / 10); height: 6px; margin: 0; }
.slider01.eq-list01.flex ul.slick-dots li.slick-active { padding: 0; }
.slider01.eq-list01.flex ul.slick-dots li.slick-active button { background: #886A2D; }
.slider01.eq-list01.flex ul.slick-dots button { width: 100%; height: 6px; background: #FFFFFF; padding: 0; }
.slider01.eq-list01.flex ul.slick-dots button:before { content: none; }

article.eq-art01 { width: 100%; margin: 0 10px; }
article.eq-art01 a { display: block; text-decoration: none; }
article.eq-art01 a > .left { margin-bottom: 30px; }
article.eq-art01 a > .left > p { margin-top: 15px; line-height: 27px; font-weight: 700; }
article.eq-art01 a .img .in-img { padding-top: 75.12%; }

.TBL01 tr { border-top: solid 1px #AEAEAE; }
.TBL01 tr:first-child { border-top: none; }
.TBL01 tr:first-child th { padding-top: 0; }
.TBL01 tr:first-child td { padding-top: 3px; }
.TBL01 tr:last-child th, .TBL01 tr:last-child td { padding-bottom: 0; }
.TBL01 th, .TBL01 td { box-sizing: border-box; vertical-align: top; padding: 20px 0; }
.TBL01 th { line-height: 32px; font-size: 16px; width: 130px; }
.TBL01 td { line-height: 26px; font-size: 14px; padding-top: 23px; }

section#eq-sec { margin: 80px 0; position: relative; padding: 60px 0; }
section#eq-sec .ovh { padding: 0 5.33vw; }
section#eq-sec .wrap { z-index: 2; }
section#eq-sec .wrap .titles01 { margin-bottom: 40px; padding-bottom: 30px; border-bottom: solid 1px #707070; }
section#eq-sec .wrap .link-btn01 { margin-top: 40px; justify-content: center; }

.ovh { overflow: hidden; }

section#eq-sec:before { content: ""; height: 100%; width: 100%; position: absolute; right: 0; top: 0; background: url("../img/top/bg04.jpg"); }

div#menu-btnBox { padding: 60px 5.33vw; background: url("../img/common/aside-bg.jpg") no-repeat center top; background-size: cover; }
div#menu-btnBox .wrap { display: flex; flex-wrap: wrap; }

div.b-btn { width: 100%; margin-bottom: 5.3vw; }
div.b-btn a { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; height: 53.33vw; border-radius: 1.33vw; border: solid 1px #5A5A5A; text-decoration: none; background: rgba(0, 0, 0, 0.6); text-align: center; }
div.b-btn a .titles01 { margin-bottom: 0; color: #fff; }
div.b-btn a .titles01 .en { font-size: 3.46vw; }
div.b-btn a .titles01 .jp { font-size: 6.93vw; }

div.b-btn:last-child { margin-bottom: 0; }

section#news-sec .ovh { padding: 80px 5.33vw; }
section#news-sec h2.titles01 { margin-bottom: 30px; }
section#news-sec .link-btn01 { margin-top: 60px; justify-content: center; }

div.news-list01.flex { border-top: solid 1px #707070; padding-top: 40px; }

article.news-art01 { margin: 0 30px; }
article.news-art01 a { display: block; text-decoration: none; position: relative; }
article.news-art01 a .cates { margin-bottom: 20px; }
article.news-art01 a .tit { width: 100%; line-height: 31px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
article.news-art01 a .dates { line-height: 40px; margin-top: 20px; font-size: 14px; }
article.news-art01 a .arrow { z-index: 2; width: 40px; height: 40px; margin-left: 15px; border-radius: 100%; transition: 0.3s; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; position: relative; border: solid 1px #D5D5D5; box-sizing: border-box; position: absolute; right: 0; bottom: 0; }
article.news-art01 a .arrow img { display: block; transition: 0.3s; opacity: 1 !important; width: 9px; }

.cates { line-height: 30px; }
.cates > span { display: inline-block; color: #fff; font-size: 14px; padding: 0 15px; background: #5A5A5A; }

/*　02　私たちについて
----------------------------------*/
body:not(.home) { background: url("../img/main/ubg01-p-sp.png") no-repeat center top, url(../img/common/bg01.jpg); background-size: 100%,auto; }

div#mv.umv { background: url("../img/main/umv-bg-sp.svg") no-repeat left top 120px; position: relative; padding-top: 120px; background-size: 94.66vw; }
div#mv.umv .mv-tit { font-size: 6.93vw; padding: 0 25.33vw 0 10.66vw; color: #fff; font-weight: 700; height: 42.66vw; width: 100%; box-sizing: border-box; align-items: center; display: flex; flex-wrap: wrap; text-align: center; }
div#mv.umv .mv-tit > span { min-width: 58.66vw; }

section#p02Box01 { padding: 80px 5.33vw; color: #fff; }

div.p02-cont01.flex { display: block; }
div.p02-cont01.flex > .cont { margin-bottom: 50px; }
div.p02-cont01.flex > .cont .text { line-height: 2.1875; }
div.p02-cont01.flex > .img .img01 { position: relative; }
div.p02-cont01.flex > .img .img01 .nameBox { position: absolute; width: 100%; background: rgba(36, 6, 5, 0.45); left: 0; bottom: 0; text-align: center; line-height: 10.66vw; font-size: 3.46vw; font-weight: 500; }

.names.flex { margin-top: 20px; justify-content: center; align-items: center; }
.names.flex .line01 { font-size: 14px; margin-right: 20px; }

.sub { font-weight: 700; font-size: 22px; line-height: 1.9; margin-bottom: 30px; }

div.p02-cont01-2 { margin-top: 100px; padding: 50px 10px; background: #240605; }
div.p02-cont01-2 h3.tit { font-size: 22px; text-align: center; margin-bottom: 30px; }
div.p02-cont01-2 .inBoxs { line-height: 2.1875; padding: 0 15px; }
div.p02-cont01-2 .inBoxs > .box { margin-bottom: 50px; }
div.p02-cont01-2 .inBoxs > .box:last-child { margin-bottom: 0; }

div#p02Box02 { padding: 60px 5.33vw 100px; background: url("../img/top/bg04.jpg"); }
div#p02Box02 .titles04 { text-align: center; }
div#p02Box02 .TBL01 tr:first-child th, div#p02Box02 .TBL01 tr:first-child td { padding-top: 0; }
div#p02Box02 .TBL01 th, div#p02Box02 .TBL01 td { padding: 30px 20px; line-height: 35px; display: block; }
div#p02Box02 .TBL01 th { padding-bottom: 5px; width: auto; }
div#p02Box02 .TBL01 td { padding-top: 0; }

section.overview { margin: 0 auto 80px; }
section.overview .imgs.flex { margin-top: 10px; }
section.overview .imgs.flex > .img { width: calc(50% - 9px); margin-right: 18px; margin-top: 10px; }
section.overview .imgs.flex > .img:nth-child(2n) { margin-right: 0; }

.gmap { height: 106.6vw; margin-top: 10px; }
.gmap iframe { width: 100%; height: 100%; }

.tab-head.flex { width: calc(100% + 25px); overflow: auto; display: block; }

.scrflex.flex { width: 940px; padding: 0 20px; }

section.history { padding: 50px 25px; background: #fff; overflow: hidden; }

.history-list { width: 100%; }

.history-list:first-child div.history-cont:last-child:before { height: calc(100% - 22px); }

.history-list:last-child div.history-cont:first-child:before { height: calc(100% + 22px); top: 0; }
.history-list:last-child div.history-cont:last-child:before { content: none; }

div.history-cont { padding-bottom: 30px; position: relative; display: flex; flex-wrap: wrap; }
div.history-cont .age { text-align: center; line-height: 22px; width: 68px; padding-right: 40px; position: relative; }
div.history-cont .age:before { content: ""; width: 13px; height: 13px; background: #886A2D; border-radius: 100%; position: absolute; right: 14px; top: 15px; z-index: 3; }
div.history-cont .cont { width: calc(100% - 108px); padding-top: 5px; }

div.history-cont:before { content: ""; width: 1px; height: 100%; background: #AEAEAE; top: 22px; left: 87px; position: absolute; }

div.history-cont:last-child { padding-bottom: 0; }

.history-img { margin-top: 50px; }

/*　03　アルマイト加工について
----------------------------------*/
section#p03Box01 { padding: 80px 5.33vw; color: #fff; }

div.p03-cont01.flex { display: block; }
div.p03-cont01.flex > .cont { margin-bottom: 50px; }

section#p03Box02 { padding: 0 5.33vw 1px; }
section#p03Box02 .titles03 { text-align: center; }

div.kakou-box01 { width: 100%; background: #fff; margin-bottom: 30px; padding-bottom: 70px; position: relative; }
div.kakou-box01 .inner { padding: 25px; }
div.kakou-box01 .inner .tit-box { border-bottom: solid 1px #AEAEAE; padding-bottom: 25px; margin-bottom: 25px; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; color: #8D000D; text-align: center; font-weight: 700; }
div.kakou-box01 .inner .tit-box > div { width: 100%; }
div.kakou-box01 .inner .tit-box .line01 { font-size: 18px; }
div.kakou-box01 .inner .tit-box .line01 .big { font-size: 26px; }
div.kakou-box01 .inner .tit-box h3 { font-size: 30px; line-height: 1.1; }
div.kakou-box01 .inner .tit-box .red-bg { margin-top: 15px; color: #fff; line-height: 30px; background: #8D000D; font-size: 14px; font-weight: 500; }
div.kakou-box01 .btn01 { width: 100%; position: absolute; left: 0; bottom: 0; }
div.kakou-box01 .btn01 a { border-radius: 0; }

div.kakou-box01:last-child { margin-bottom: 0; }

div.kakou-box02 { margin-top: 50px; background: #240605; color: #fff; }
div.kakou-box02 .inner { padding: 40px 25px; justify-content: space-between; }
div.kakou-box02 .inner .tit-box { text-align: center; font-weight: 700; }
div.kakou-box02 .inner .tit-box > h3 { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; margin-top: 5px; margin-bottom: 20px; }
div.kakou-box02 .inner .tit-box > h3 span.red-bg { margin-right: 10px; color: #fff; line-height: 26px; background: #8D000D; font-size: 14px; font-weight: 500; padding: 0 7px; }
div.kakou-box02 .inner .tit-box > h3 span.text { font-size: 22px; line-height: 31px; }
div.kakou-box02 .inner .link-btn01 { margin: 30px auto 0; text-align: center; }
div.kakou-box02 .inner .link-btn01 a { color: #fff; }
div.kakou-box02 .inner .link-btn01 a span.arrow { border-color: #fff; }
div.kakou-box02 .inner .link-btn01 a span.arrow img { filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(2%) hue-rotate(172deg) brightness(105%) contrast(101%); }

div.hikaku-cont { margin-top: 100px; }
div.hikaku-cont > h3 { color: #fff; font-weight: 700; font-size: 18px; line-height: 1.45; padding: 17px 20px; background: #886A2D; margin-bottom: 30px; }

.TBL02.TBL02-2 .col01 { width: 194px; }
.TBL02.TBL02-2 thead th { background: #E1D4BD; color: #886A2D; }
.TBL02.TBL02-2 thead th.col06 { background: #A17474; line-height: 20px; color: #fff; }
.TBL02.TBL02-2 tbody tr:first-child td.col02, .TBL02.TBL02-2 tbody tr:first-child td.col03, .TBL02.TBL02-2 tbody tr:first-child td.col04, .TBL02.TBL02-2 tbody tr:first-child td.col05 { vertical-align: middle; }
.TBL02.TBL02-2 tbody td.col06 { border: none; background: #F3E5E6; color: #A17474; }

section#p03Box03 { padding: 185px 5.33vw 100px; background: url("../img/top/bg04.jpg"); }
section#p03Box03 .titles04 { text-align: center; }
section#p03Box03 div.kakou-box01 .inner .tit-box { height: auto; }
section#p03Box03 div.kakou-box01 .inner .tit-box h3 { font-size: 22px; color: #886A2D; }
section#p03Box03 div.hikaku-cont > h3 { background: #542622; }

section#works-sec.pro-page { background: #fff; padding-top: 60px; padding-bottom: 100px; }

.TBL02.TBL02-2.TBL02-3 .col02, .TBL02.TBL02-2.TBL02-3 .col03, .TBL02.TBL02-2.TBL02-3 .col04 { width: 298px; }
.TBL02.TBL02-2.TBL02-3 thead th { height: 50px; }

/* 04お知らせ
--------------------------------------------------*/
div#p04Box01 { padding: 80px 5.33vw 100px; }

.cate-lisBox { margin-bottom: 60px; width: 94.67vw; overflow: scroll; }

ul.cate-list.flex { border-bottom: solid 1px #C3A65C; padding: 0 40px; width: 1100px; box-sizing: border-box; }
ul.cate-list.flex > li { height: 47px; display: table; margin-right: 40px; }
ul.cate-list.flex > li a { text-decoration: none; color: #60440D; display: table-cell; text-align: center; vertical-align: top; font-size: 18px; font-weight: 700; transition: 0.3s; cursor: pointer; line-height: 1; border-bottom: solid transparent 5px; }
ul.cate-list.flex > li.r_current a { border-color: #C3A65C; color: #C3A65C; }

div.news-list-all { margin: 0 auto; color: #fff; }

article.news-art02 { padding-bottom: 50px; border-bottom: solid 1px #5A5A5A; margin-bottom: 50px; }
article.news-art02 a { display: flex; flex-wrap: wrap; align-items: center; color: #fff; box-sizing: border-box; position: relative; text-decoration: none; }
article.news-art02 a .cates { padding: 0 10px; line-height: 30px; color: #fff; background: #5A5A5A; font-size: 14px; margin-right: 14px; }
article.news-art02 a .dates { font-size: 14px; margin-right: 30px; }
article.news-art02 a h2.tit { width: calc(100% - 60px); box-sizing: border-box; margin-top: 20px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
article.news-art02 a .arrow { z-index: 2; width: 40px; height: 40px; margin-left: 15px; border-radius: 100%; transition: 0.3s; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; position: relative; border: solid 1px #fff; box-sizing: border-box; z-index: 2; margin-left: auto; }
article.news-art02 a .arrow img { filter: brightness(0) saturate(100%) invert(98%) sepia(0%) saturate(7493%) hue-rotate(98deg) brightness(102%) contrast(106%); opacity: 1; width: 9px; }

article.news-art02:last-child { padding-bottom: 0; border-bottom: none; margin-bottom: 0; }

/*詳細*/
div#blog-bread { padding-top: 70px; }
div#blog-bread div#bread { text-align: left; }

div#p04sBox01 { padding: 80px 5.33vw 100px; color: #fff; }

.infos { margin-bottom: 30px; }
.infos .cates { padding: 0 10px; line-height: 30px; color: #fff; background: #5A5A5A; font-size: 14px; margin-right: 14px; }
.infos .dates { font-size: 14px; margin-right: 30px; }

h1.blog-tit { margin-bottom: 40px; font-size: 20px; font-weight: 700; }

.blog-text a { color: #fff; }
.blog-text img[class*="wp-image-"] { margin-bottom: 35px; }
.blog-text iframe { max-width: 100%; }
.blog-text div { max-width: 100%; }
.blog-text a { max-width: 100%; }

/*ページャー*/
div#pager00 { text-align: center; }

div#pager00 .wp-pagenavi { margin-top: 80px; }

.wp-pagenavi > span, .wp-pagenavi > a { display: inline-block; margin: 5px; text-decoration: none; width: 32px; height: 32px; text-align: center; line-height: 32px; font-size: 16px; font-weight: 500; color: #AEAEAE; border: solid 1px #AEAEAE; border-radius: 5px; }

.wp-pagenavi a.page { position: relative; }

.wp-pagenavi span.extend { background: none; color: #AEAEAE; border: none; }

.wp-pagenavi a.previouspostslink { color: transparent; background: url("../img/p04/arrow02.svg") no-repeat center; margin-right: 20px; margin-left: 0; border: none; }

.wp-pagenavi a.nextpostslink { color: transparent; background: url("../img/p04/arrow03.svg") no-repeat center; margin-left: 20px; margin-right: 0; border: none; }

.wp-pagenavi span.current { color: #fff; background: #292929; border-color: #292929; }

.wp-pagenavi a.first { color: transparent; background: url("../img/p04/arrow01.svg") no-repeat center; border: none; }

.wp-pagenavi a.last { color: transparent; background: url("../img/p04/arrow04.svg") no-repeat center; border: none; }

.wp-pagenavi span.pages { display: none; }

.post-navigation ul { justify-content: space-between; align-items: center; margin-top: 60px; }

.post-navigation ul > li { margin-right: 0; }

.post-navigation ul > li a { text-decoration: none; font-weight: 500; color: #fff; }

.post-navigation ul > li.prev a { font-weight: 500; display: block; position: relative; font-size: 13px; }

.post-navigation ul > li.next a { font-weight: 500; display: block; position: relative; font-size: 13px; }

.post-navigation ul > li.prev a span { display: inline-block; }

.post-navigation ul > li.next a span { display: inline-block; }

.post-navigation ul > li.blog-back { margin: 0; width: 110px; height: 50px; }

.post-navigation ul > li.blog-back a .arrow { display: none; }

.post-navigation ul > li.kara { z-index: -2; pointer-events: none; opacity: 0; }

.post-navigation ul > li:last-child { margin-right: 0; }

/*　05　お問い合わせ
----------------------------------*/
div#p05Box01 { padding: 80px 5.33vw 100px; }

.tel-contact { border: solid 1px #5A5A5A; margin-bottom: 100px; padding: 39px 24px; color: #fff; text-align: center; }
.tel-contact .tit { font-size: 22px; font-weight: 700; line-height: 1.5; border-bottom: solid 1px #5A5A5A; margin-bottom: 30px; padding-bottom: 30px; }
.tel-contact .tel-set .tel-num a { font-size: 30px; }
.tel-contact .tel-set .tel-num a > span { padding-left: 28px; background-size: 18px; }

/*フォーム*/
ul.contact-state { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 0 0 30px; }

ul.contact-state > li { display: table; width: 34.6%; height: 62px; position: relative; margin-left: -2%; }

ul.contact-state > li > span { display: table-cell; text-align: center; vertical-align: middle; background: #C3A65C; color: #fff; font-size: 18px; font-weight: 500; }

ul.contact-state > li.state01 { margin-left: 0; clip-path: polygon(0 0, calc(100% - 8.6%) 0%, 100% 50%, calc(100% - 8.6%) 100%, 0 100%, 0% 50%); }

ul.contact-state > li.state02 { clip-path: polygon(0 0, calc(100% - 8.6%) 0%, 100% 50%, calc(100% - 8.6%) 100%, 0 100%, 8.6% 50%); opacity: 0.5; }

ul.contact-state > li.state03 { clip-path: polygon(0 0, 100% 0, 100% 50%, 100% 100%, 0 100%, 8.6% 50%); opacity: 0.5; }

ul.contact-state > li.state01 > span { background: #60440D; color: #fff; }

ul.contact-state > li > span span.num { font-family: "pop"; margin-right: 10px; }

ul.contact-state > li.state02 > span { background: #886A2D; color: #fff; }

ul.contact-state > li:after { content: ""; width: 0; height: 0; border-left: solid 8px #9A9A9A; border-top: solid 8px transparent; border-bottom: solid 8px transparent; position: absolute; top: 0; bottom: 0; left: calc(100% + 16px); margin: auto 0; }

ul.contact-state > li:last-child:after { content: none; }

ul.contact-state.contact-state02 { display: flex; flex-wrap: wrap; justify-content: space-between; }

ul.contact-state.contact-state02 > li.state01 { opacity: 0.5; }

ul.contact-state.contact-state02 > li.state02 { opacity: 1; }

.contactTBL th, .contactTBL td { display: block; box-sizing: border-box; font-size: 18px; padding: 20px 0; color: #000000; line-height: 1.66; color: #fff; }
.contactTBL th { padding-bottom: 15px; }
.contactTBL td { padding-top: 0; }
.contactTBL .wpcf7-list-item { margin-left: 0; display: inline-block; margin-right: 30px; margin-bottom: 10px; }
.contactTBL input[type="checkbox"], .contactTBL input[type="radio"] { transform-origin: left center; transform: scale(1.5); margin-right: 8px; }

span.hissu { display: inline-block; color: #fff; padding: 2px 7px; background: #8D000D; margin-right: 15px; box-sizing: border-box; font-size: 14px; font-weight: 700; line-height: 27px; }

span.nini { display: inline-block; color: #fff; padding: 1px 6px; border: solid 1px #DEDEDE; margin-right: 15px; font-size: 14px; font-weight: 700; line-height: 25px; }

input.wpcf7-number, input.wpcf7-date, input.wpcf7-text { box-sizing: border-box; height: 60px; border: solid 1px #FFFFFF; padding: 5px 10px; font-size: 16px; background: #fff; width: 100%; }

input.wpcf7-date { padding: 5px 10px; }

select.wpcf7-select { box-sizing: border-box; height: 60px; border: solid 1px #FFFFFF; padding: 5px 10px; font-size: 16px; background: #fff; width: auto; }

select { background: #fff; border-radius: 0; }

textarea.wpcf7-textarea { box-sizing: border-box; height: 300px; border: solid 1px #FFFFFF; padding: 5px 10px; font-size: 16px; background: #fff; width: 100%; }

.contactTBL .select-con .wpcf7-list-item { display: inline-block; margin-right: 10px !important; }

.select-con { margin-bottom: 15px; }

.cours-area { margin-top: 5px; }

input.wpcf7-text.tel01, input#zip01 { width: 150px; }

select#pref3 { width: auto; }

span.form-bikou { display: block; }

div.zip_list > div { margin-bottom: 20px; }
div.zip_list > div:last-child { margin-bottom: 0; }

p.juusho-text { margin-bottom: 5px; }

ul.address-list > li { margin-bottom: 30px; }
ul.address-list > li:last-child { margin-bottom: 0; }
ul.address-list .th { font-size: 14px; margin-bottom: 5px; }

.contactArea .codedropz-upload-handler { border: solid 1px #E1E1E1; border-radius: 8px; background: url("../img/p10/upload-mark.svg") no-repeat center top 40px #fff; padding: 50px 30px 30px; }

.contactArea .codedropz-upload-inner { color: #9A9A9A; line-height: 1.5; font-size: 16px; font-weight: 500; }

.contactArea .codedropz-upload-inner h3 { font-size: 16px; font-weight: 500; margin: 0; }

a.cd-upload-btn { width: 130px; height: 40px; display: inline-block; line-height: 35px; background: #000000; border: solid 1px #000000; border-radius: 4px; padding-top: 3px; font-size: 16px; margin-top: 8px; color: #fff; }

.contact-submit.flex { margin-top: 60px; justify-content: center; flex-direction: row-reverse; position: relative; }

.contact-submit.flex > p { width: 100%; text-align: center; margin-top: 30px; }

.inb { display: inline-block; }

.form-btn { width: 335px; position: relative; }

.form-btn input[type="submit"], .form-btn input[type="button"] { transition: 0.3s; border: solid 1px #292929; color: #fff; width: 100%; height: 70px; font-size: 14px; font-weight: 500; position: relative; z-index: 3; background: url("../img/common/arrow02.svg") no-repeat center right 20px #292929; border-radius: 5px; }

.form-btn.form-btn02 { margin-right: 10px; }

.form-btn.form-btn02 input[type="submit"], .form-btn.form-btn02 input[type="button"] { background: #fff; color: #292929; }

.form-btn input { transition: 0.3s; cursor: pointer; }

input.wpcf7-form-control.wpcf7-file.file01 { display: block; color: #fff; width: 100%; margin-bottom: 20px; }

input[type="file" i]::-webkit-file-upload-button { width: 200px; height: 60px; box-sizing: border-box; font-size: 16px; font-weight: 500; color: #fff; background: #5A5A5A; border: none; border-radius: 5px; }

.wpcf7-spinner { position: absolute !important; top: -10px !important; }

/*入力内容確認時にフォーム上部へスクロールするがナビゲーションが追従の場合フォームとナビゲーションが重なるのでそのためのオフセット設定*/
form.wpcf7-form { padding-top: 90px; margin-top: -90px; }

.wpcf7c-conf { background-color: #e8f0fe !important; }

input:-webkit-autofill, input:-internal-autofill-selected { -webkit-appearance: none; -webkit-box-shadow: 0 0 0px 1000px #e8f0fe inset !important; box-shadow: 0 0 0px 1000px #e8f0fe inset !important; }

::placeholder { font-size: 13px; color: #9A9A9A; line-height: 40px; }

a.green { color: #fff; text-decoration: underline; }

.contactArea.che .contactTBL th, .contactArea.che .contactTBL td { color: #292929; }
.contactArea.che span.nini { color: #292929; border-color: #292929; }
.contactArea.che .che-hide { display: none; }

.contactArea.che { background: #eee; padding: 30px; }

.contactArea.che .contactTBL tr { border-bottom: solid 1px #000; }

.contactArea.che .contactTBL th, .contactArea.che .contactTBL td { padding-top: 5px; padding-bottom: 5px; vertical-align: middle; }

.contactArea.che .dnd-upload-status .dnd-upload-details .remove-file, .contactArea.che .codedropz-upload-handler, .contactArea.che .bikou-text01, .contactArea.che span.dnd-progress-bar, .contactArea.che input[type=checkbox] { display: none; }

.contactArea.che input[type=checkbox]:checked { display: inline-block; }

.contactArea.che input[type=checkbox] ~ span.wpcf7-list-item-label { display: none; }

.contactArea.che input[type=checkbox]:checked ~ span.wpcf7-list-item-label { display: inline-block; font-weight: 700; }

.contactArea.che input[type=radio] { display: none; }

.contactArea.che input[type=radio]:checked { display: inline-block; }

.contactArea.che input[type=radio] ~ span.wpcf7-list-item-label { display: none; }

.contactArea.che input[type=radio]:checked ~ span.wpcf7-list-item-label { display: inline-block; font-weight: 700; }

.contactArea.che textarea.wpcf7-textarea, .contactArea.che input.wpcf7-number, .contactArea.che input.wpcf7-date, .contactArea.che input.wpcf7-text, .contactArea.che select { font-weight: 700; }

/*　thanksページ等
----------------------------------*/
div#p100Box01 { color: #fff; padding: 80px 5.33vw 100px; }
div#p100Box01 .btn01 { margin: 50px auto 0; }

.pp-title01 { font-size: 22px; border-bottom: solid 2px; margin-bottom: 25px; padding-bottom: 10px; }

.pp-title02:first-child { margin-top: 0; }

.pp-title02 { font-size: 18px; padding-left: 15px; position: relative; color: #fff; margin-top: 50px; }

.pp-title02:before { content: ""; width: 5px; height: 65%; background: #fff; position: absolute; left: 0; top: 0; bottom: 0; margin: auto 0; }

.pp-textBox > div.text { margin-bottom: 60px; }
.pp-textBox > div.text:last-child { margin-bottom: 0; }

/*翻訳時
----------------------------------*/
.translated-ltr .m-slider01-text02 { font-size: 4.93vw; }

.translated-ltr .m-slider01-text02 p.line02 .big { font-size: 6.53vw; }

.translated-ltr .TBL02 th.col02 .ico-th span.tit { max-width: calc(100% - 50px); }

.translated-ltr .TBL02 th.col04 .ico-th span.tit { max-width: calc(100% - 100px); }

.translated-ltr .bt-inbox .bt a { align-items: center; height: auto; }

.translated-ltr .bt-inbox .bt a .text { max-width: calc(100% - 35px); }

.translated-ltr .btns-nav.flex .tel-set { height: auto; }

.translated-ltr ul.contact-state > li { line-height: 1.2; }

.translated-ltr ul.contact-state > li > span { font-size: 13px; }

.njpt { display: none; }

.translated-ltr .njpt { display: inline; }

.jpt { display: inline; }

.translated-ltr .jpt { display: none; }

/*デバイス幅ごとの調整（必要な幅があれば追加して調整）*/
