@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;600&display=swap');

/*	RESETS
============================== */
html, body, main, div, p, span, applet, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, section, summary, time, mark, audio, ruby { margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; }
ol, ul, li { list-style: none; }
a img, form, fieldset { border: none; }
input, button, select { vertical-align: middle; }
textarea { vertical-align: top; overflow: auto; }
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary, .dpb { display: block; }
audio, canvas, progress { display: inline-block; }
progress { vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
[hidden], template, .nt, .alt { display: none; }
a { background-color: transparent; }
a:active, a:hover { outline-width: 0; }
a:hover { text-decoration: none; }
abbr { cursor: help; border-bottom: 1px dotted #bbb; }
abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted; }
b, strong, .bt { font-weight: 600; }
dfn { font-style: italic; }
mark { background: yellow; color: black; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
img { border-style: none; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }
figure { margin: 1em 40px; }
hr { box-sizing: content-box; height: 0; overflow: visible; }
optgroup { font-weight: bold; }
button, input, select { overflow: visible; } /*Edge, IE*/
button, input, select, textarea { margin: 0; } /*Firefox and Safari*/
button, select { text-transform: none; } /*Edge, Firefox, and IE*/
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer; }
[disabled] { cursor: default; }
button, html [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; } /*Android 4, iOS*/
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } /*Firefox*/
button:-moz-focusring, input:-moz-focusring { outline: 1px dotted ButtonText; }
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; } /*Edge and IE ...etc*/
textarea { overflow: auto; } /*IE*/
[type="checkbox"], [type="radio"] { box-sizing: border-box; padding: 0; } /*IE10-*/
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } /*Chrome*/
[type="search"] { -webkit-appearance: textfield; } /*Chrome and Safari*/
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /*Chrome and Safari on OS X*/
pre { overflow: auto; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }
q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; display: table;}
q:after, blockquote:after { clear: both; }
q::after, blockquote::after { content: ""; display: block; clear: both;}
.clearfix:before, .clearfix:after { content: ""; content: none; display: table;}
.clearfix:after { clear: both; }
.clearfix::after { content: ""; display: block; clear: both;}
.tCenter, .ct, .center { text-align: center;}
.tLeft, .lt { text-align: left;}
.tRight, .rt { text-align: right;}
*, *::before, *::after { box-sizing: border-box;}
/*txt*/
.bt { font-weight: bold; font-weight: 700;}
.ut { font-weight: lighter;}
br { letter-spacing: 0; }
.nt { font-size: 0; width: 0; height: 0; overflow: hidden; opacity: 0; display: none;}
/*_br-breakpoints*/
.br_rsmp, .br_wsmp, .br_tablet, .br_pc, .br_wpc, .br_bwpc, .br_rsmpi, .br_wsmpi, .br_tableti, .br_pci, .br_wpci, .br_pci, .br_bwpci { display: none; }
.br_xs, .br_sm, .br_md, .br_lg, .br_xl, .br_xxl, .br_xsi, .br_smi, .br_mdi, .br_lgi, .br_xli, .br_xxli { display: none; }
.br_smp, .br_xxs { display: -webkit-block; display: block; }
.br_smpi, .br_xxsi { display: -webkit-inline; display: inline; }
/*for_W480-*/
@media all and (min-width: 480px) { 
.br_smp, .br_smpi, .br_xxs, .br_xxsi { display: none; } 
.br_rsmp, .br_xs { display: -webkit-block; display: block; } 
.br_rsmpi, .br_xsi { display: -webkit-inline; display: inline; } 
}
/*for_W576-*/
@media all and (min-width: 576px) { 
.br_rsmp, .br_rsmpi, .br_xs, .br_xsi { display: none; } 
.br_wsmp, .br_sm { display: -webkit-block; display: block; } 
.br_wsmpi, .br_smi { display: -webkit-inline; display: inline; } 
}
/*for_W768-*/
@media all and (min-width: 768px) { 
.br_wsmp, .br_wsmpi, .br_sm, .br_smi { display: none; } 
.br_tablet, .br_md { display: -webkit-block; display: block; } 
.br_tableti, .br_mdi { display: -webkit-inline; display: inline; } 
}
/*for_W992-*/
@media all and (min-width: 992px) { 
.br_tablet, .br_tableti, .br_md, .br_mdi { display: none; } 
.br_pc, .br_lg { display: -webkit-block; display: block; } 
.br_pci, .br_lgi { display: -webkit-inline; display: inline; } 
}
/*for_W1200-*/
@media all and (min-width: 1200px) { 
.br_pc, .br_pci, .br_lg, .br_lgi { display: none; } 
.br_wpc, .br_xl { display: -webkit-block; display: block; } 
.br_wpci, .br_xli { display: -webkit-inline; display: inline; } 
}
/*for_W1400-*/
@media all and (min-width: 1400px) { 
.br_wpc, .br_wpci, .br_xl, .br_xli { display: none; } 
.br_bwpc, .br_xxl { display: -webkit-block; display: block; } 
.br_bwpci, .br_xxli { display: -webkit-inline; display: inline; } 
}
/*_size*/
.f300 { font-size: 300%;}
.f240 { font-size: 240%;}
.f220 { font-size: 220%;}
.f200 { font-size: 200%;}
.f180 { font-size: 180%;}
.f170 { font-size: 180%;}
.f160 { font-size: 160%;}
.f150 { font-size: 150%;}
.f140 { font-size: 140%;}
.f130 { font-size: 130%;}
.f125 { font-size: 125%;}
.f120, .big { font-size: 120%;}
.f110 { font-size: 110%;}
.f105 { font-size: 105%;}
.f100 { font-size: 100%;}
.f95 { font-size: 95%;}
.f90, .small { font-size: 90%;}
.f85 { line-height: normal; font-size: 85% !important;}
.f75 { line-height: normal; font-size: 75% !important;}
.f65 { line-height: normal; font-size: 65% !important;}
.f64 { line-height: normal; font-size: 64% !important;}
.f60 { line-height: normal; font-size: 60% !important;}
/*_height*/
.lh100 { line-height: 100%;}
.lh110 { line-height: 110%;}
.lh120 { line-height: 120%;}
.lh130 { line-height: 130%;}
.lh140 { line-height: 140%;}
.lh150 { line-height: 150%;}
.lh160 { line-height: 160%;}
.lh170 { line-height: 170%;}
.lh180 { line-height: 180%;}
.lh200 { line-height: 200%;}
.lh230 { line-height: 230%;}
/*space*/
.pd0 { padding: 0;}
.pd1 { padding: 1em;}
.pdt1 { padding-top: 1em;}
.pdt3 { padding-top: 3em;}
.pdt0 { padding-top: 0;}
.pdt05 { padding-top: .5em;}
.pdb05 { padding-bottom: .5em;}
.pdb0 { padding-bottom: 0;}
.pdb1 { padding-bottom: 1em;}
.pdl1 { padding-left: 1em;}
.pd05 { padding: .5em;}
.mgat { margin: auto;}
.mgtb1 { margin: 1em auto;}
.ls-1 { letter-spacing: -.1em;}
.ls-05 { letter-spacing: -0.05em;}
.ls-075 { letter-spacing: -0.075em;}
.ls0 { letter-spacing: 0;}
.ls1 { letter-spacing: .1em;}
.ls2 { letter-spacing: .2em;}
/*color*/
.black { color: rgba(0, 0, 0, 1);}
.lamp { color: rgba(42, 43, 46, 1);}
.chacoal { color: rgba(59, 63, 74, 1);}
.steel { color: rgba(129, 137, 157, 1);}
.silver { color: rgba(192, 196, 206, 1);}
.pearl { color: rgba(236, 237, 240, 1);}
.snow { color: rgba(246, 247, 250, 1);}
.white { color: rgba(255, 255, 255, 1);}
.blue { color: rgba(0, 80, 255, 1);}
.water { color: rgba(120, 180, 255, 1);}
.sky { color: rgba(160, 200, 250, 1);}
.green { color: rgba(50, 200, 60, 1);}
.yellow { color: rgba(255, 240, 0, 1);}
.orange { color: rgba(255, 170, 30, 1);}
.pink { color: rgba(255, 145, 160, 1);}
.red { color: rgba(255, 60, 30, 1);}
.navy { color: rgba(28, 37, 80, 1);}
.col { color: rgba(122, 30, 37, 1);}
.col1 { color: rgba(179, 11, 23, 1);}
.col2 { color: rgba(122, 58, 30, 1);}
a { text-decoration: none;}
a:link { color: rgba(59, 63, 74, 1);}
a:visited { color: rgba(59, 63, 74, 1);}
a:active { color: rgba(0, 0, 0, 1);}
a:hover { color: rgba(0, 0, 0, .8);}
.bktotop a { color: rgba(255, 255, 255, 1);}
.nolnk { opacity: .35;}
.sdt { text-shadow: 1px 1px 3px rgba(0, 0, 0, .2);}
.sdt2 { text-shadow: 1px 1px 4px rgba(0, 0, 0, .1);}
.kome li { padding-left: 1rem;}
.kome li::before { content: '※ '; margin-left: -1.25rem;}
.lst_disc li { padding-left: .25rem; padding-bottom: .35rem; list-style-type: disc; line-height: 140%; margin-left: 1.75rem;}
.lst_circle li { padding-left: .25rem; padding-bottom: .35rem; list-style-type: circle; line-height: 140%; margin-left: 1.75rem;}
.lst_square li { padding-left: .25rem; padding-bottom: .35rem; list-style-type: square; line-height: 140%; margin-left: 1.75rem;}
/*etc*/
@media print { .noprint { display: none;} }
.cover { width: 100%; height: 100%; background: url(/um/img/cover.png) repeat; display: block; position: absolute; top: 0; left: 0; }
.cover img { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
.nt_txt { font-size: 0; width: 0; height: 0; overflow: hidden; opacity: 0;}
/*lazyload*/
.lazyload, .lazyloading { opacity: 0;}
.lazyloaded { opacity: 1; transition: all 2500ms;}
/*TBS reset*/
html { font-size: 62.5%;}
div.tbs-v9-gheader-menu div.tbs-v9-ghmenu-inner div.tbs-v9-ghmenu-lef { font-size:160%;}
div.tbs-v9-gh-close a { font-size:140%;}
/*for_W992-*/
@media all and (min-width: 992px) { 
div.tbs-v9-gheader-menu div.tbs-v9-ghmenu-inner div.tbs-v9-ghmenu-lef { font-size:130%;}
}

#bn_super { display: none;}

/*	COMMON
============================== */
body { width: 100%; position: relative; z-index: 0; font-size: 1rem; background-color: rgba(235, 236, 240, 1); color: rgba(129, 137, 157, 1); font-family: 'Noto Sans JP', sans-serif; font-optical-sizing:auto; font-weight: 300; font-style: normal; background-image: url(../img/bg.jpg); background-repeat: no-repeat; background-repeat: repeat-y; background-size: 100%; background-position: top center;}
body.fixed { position: fixed; width: 100%; height: 100%; left: 0;}
.bt { font-weight: 800;}
body a { text-decoration: none; outline-style: none;}
/*.fix_bg { width: 100%; height: 100%; position: fixed; background-repeat: repeat-y; background-position: top center; background-size: 200%; z-index: -1; background-image: url(../img/bg.jpg);}*/
.fix_bg { width: 100%; height: 100%; position: fixed; background-repeat: repeat-y; background-position: top center; background-size: 200%; z-index: -1;}
#container { width: 100%; overflow: hidden; font-size: 1.2em;}
.wrap { width: 90%; max-width: 1200px; margin: 0 auto;}
div, span, p { word-break: keep-all;}
/*_h*/
h2 { font-size: 210%; font-weight: 700; text-align: center; letter-spacing: .025em;}
/*for_W480-*/
@media all and (min-width: 480px) { 
#container { font-size: 1.4em;}
}
/*for_W576-*/
@media all and (min-width: 576px) { 
#container { font-size: 1.5em;}
}
/*for_W768-*/
@media all and (min-width: 768px) { 
#container { font-size: 1.6em;}
}
/*for_W992-*/
@media all and (min-width: 992px) { 
#container { font-size: 1.8em;}
}
/*for_W1200-*/
@media all and (min-width: 1200px) { 
#container { font-size: 2.2em;}
}
/*for_W1400-*/
@media all and (min-width: 1400px) { 
#container { font-size: 2.6em;}
}

/*	button
============================== */
.btn_sp:before, .btn_sp:after { content: ""; content: none; display: table;}
.btn_sp:after { clear: both; }
.btn_sp::after { content: ""; display: block; clear: both;}
.btn a { display: inline-block; padding: .75em 1.25em .85em 2.25em; border: 1px solid rgba(150, 157, 173, .85); border-radius: 30px; position: relative; z-index: 1000; font-size: 110%;}
.btn a:hover { background-color: rgba(255, 255, 255,.35);}
.btn a span { color: rgba(150, 157, 173, 1); padding-right: 1.5em;}
.btn a span:after { content: ''; width: 10px; height: 10px; background: url(../img/ya.png) no-repeat; background-size: contain; position: absolute; top: calc(50% - 5px); right: 1.25em;}
/*_more*/
.mr_btn-sp { width: 100%; max-width: 500px; margin: 0 auto;}
.mr_btn a { width: 100%; display: block; padding: .6em 0 .9em 0; background-color: rgba(192, 196, 206, 1); border-radius: 50px; position: relative; z-index: 1000; font-size: 180%; text-align: center;}
.mr_btn a:hover { opacity: .8;}
.mr_btn a span { color: rgba(255, 255, 255, 1); position: relative;}
.mr_btn a span:after { content: ''; width: 12px; height: 12px; background: url(../img/ya.png) no-repeat; background-size: contain; position: absolute; top: calc(50% - 2px); left: 3.5em; filter: brightness(200%);}
/*_s-more*/
.s_btn a { display: inline-block; padding: .2em .75em .35em 1.25em; border: 1px solid rgba(150, 157, 173, .85); border-radius: 30px; position: relative; z-index: 1000; font-size: 110%;}
.s_btn a:hover { background-color: rgba(255, 255, 255,.35);}
.s_btn a span { color: rgba(150, 157, 173, 1); padding-right: 1.5em;}
.s_btn a span:after { content: ''; width: 8px; height: 8px; background: url(../img/ya.png) no-repeat; background-size: contain; position: absolute; top: calc(50% - 4px); right: 1.25em;}
/*_contact*/
.ct_btn-sp { width: 100%; max-width: 500px; margin: 2em auto 0 auto;}
.ct_btn a { width: 100%; display: block; padding: .9em 0; border: 1px solid rgba(150, 157, 173, 1); border-radius: 50px; position: relative; z-index: 1000; font-size: 140%; text-align: center;}
.ct_btn a:hover { background-color: rgba(255, 255, 255,.35);}
.ct_btn a span { color: rgba(150, 157, 173, 1); font-weight: 700; position: relative;}
.ct_btn a span:after { content: ''; width: 12px; height: 12px; background: url(../img/ya.png) no-repeat; background-size: contain; position: absolute; top: calc(50% - 6px); left: 5.5em;}
/*_contact-con*/
.ctc_btn-sp { width: 80%; max-width: 360px; margin: 3em auto 0 auto;}
.ctc_btn a { width: 100%; display: block; padding: .9em 0; border: 1px solid rgba(150, 157, 173, 1); border-radius: 50px; position: relative; z-index: 1000; font-size: 140%; text-align: center;}
.ctc_btn a:hover { background-color: rgba(255, 255, 255,.35);}
.ctc_btn a span { color: rgba(150, 157, 173, 1); font-weight: 700; position: relative;}
.ctc_btn a span:after { content: ''; width: 12px; height: 12px; background: url(../img/ya.png) no-repeat; background-size: contain; position: absolute; top: calc(50% - 6px); left: 5.5em;}
/*_contact-s*/
.cts_btn-sp { width: 18%; max-width: 200px; margin: 0;}
.cts_btn a { display: block; width: 100%; height: 0; padding-top: 56.25%; padding-top: -webkit-calc(1350 / 2400 * 100%); padding-top: calc(1350 / 2400 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; background-image: url(../img/contact_new.png);}
.cts_btn a span { display: none;}
.cts_btn a:hover { opacity: .8;}
/*
.cts_btn a { width: 100%; display: block; padding: .5em 0 .75em 0; border: 1px solid rgba(192, 196, 206, 1); border-radius: 50px; position: relative; z-index: 1000; font-size: 80%; text-align: center;}
.cts_btn a:hover { border: 1px solid rgba(142, 146, 156, 1);}
.cts_btn a span { color: rgba(192, 196, 206, 1); position: relative;}
.cts_btn a span:after { content: ''; width: 8px; height: 8px; background: url(../img/ya.png) no-repeat; background-size: contain; position: absolute; top: calc(50% - 2.5px); left: 5em; opacity: .6;}
.cts_btn a:hover span { color: rgba(142, 146, 156, 1);}
.cts_btn a:hover span:after { opacity: 1;}
*/
/*_detail*/
.dt_btn-sp { width: 100%; max-width: 480px; margin: 1em auto;}
.dt_btn a { width: 100%; display: block; padding: 1.2em 0; background-color: rgba(150, 157, 173, 1); border-radius: 50px; position: relative; z-index: 1000; font-size: 130%; font-weight: 700; text-align: center;}
.dt_btn a:hover { opacity: .8;}
.dt_btn a span { color: rgba(255, 255, 255, 1); position: relative;}
.dt_btn a span:after { content: ''; width: 12px; height: 12px; background: url(../img/ya.png) no-repeat; background-size: contain; position: absolute; top: calc(50% - 6px); left: 9em; filter: brightness(200%);}
/*for_W768-*/
@media all and (min-width: 768px) { 
.mr_btn-sp { margin: 2em auto 0 auto;}
.mr_btn a { padding: .2em 0 .5em 0; font-size: 160%;}
.ct_btn a { width: auto; display: inline-block; padding: .8em 6em; font-size: 110%;}
.ctc_btn a { padding: .75em 0; font-size: 120%;}
.dt_btn a { padding: 1em 0; font-size: 120%;}
}
/*for_W992-*/
@media all and (min-width: 992px) { 
.mr_btn a { padding: .2em 0 .5em 0;}
.mr_btn a { padding: .2em 0 .5em 0; font-size: 140%;}
.ct_btn a span:after { content: ''; width: 14px; height: 14px; top: calc(50% - 7px); left: 6.5em;}
}
/*for_W1200-*/
@media all and (min-width: 1200px) { 
.cts_btn a span:after { width: 10px; height: 10px; top: calc(50% - 3px); left: 5.5em;}
}
/*for_W1400-*/
@media all and (min-width: 992px) { 
.ct_btn a { width: auto; display: inline-block; padding: .8em 6em; font-size: 100%;}
.ct_btn a span:after { content: ''; width: 16px; height: 16px; top: calc(50% - 8px); left: 6.5em;}
.btn a { font-size: 100%;}
}

/*	header
============================== */
#header_sp { width: 100%; padding-bottom: 2em;}
#header { width: 100%; background-repeat: no-repeat; background-image: url(../img/head_bg.png); background-position: top center; background-size: 200%; padding-top: 1em;}
#hd_set { width: 100%; position: fixed; z-index: 10000;}
#logo_all { width: 92%; margin: 1em auto; display: flex; flex-flow: row nowrap; justify-content: space-between; align-items: center;}
#logo_all #logo_sp { width: 47%; flex-basis: 47%;}
#logo_all #logo_sp a { display: block; position: relative; z-index: 1000;}
#logo_all #logo_img { display: block; width: 100%; height: 0; padding-top: 11.25%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
#icon_sp { width: 100%; padding: 8em 0 4em 0;}
#icon_sp #icon_img { width: 100%; height: 0; padding-top: 51.612903225806452%; padding-top: -webkit-calc(960 / 1860 * 100%); padding-top: calc(960 / 1860 * 100%); background-repeat: no-repeat; background-size: 160%; background-position: top center; margin: 0 auto;}
#logo_all .cts_btn-sp { display: none;}
#wtt h2 { display: block; width: 50%; max-width: 572px; margin: 0 auto;}
#wtt h2 .wtt_h2 { display: block; width: 100%; height: 0; padding-top: 9.823008849557523%; padding-top: -webkit-calc(111 / 1130 * 100%); padding-top: calc(111 / 1130 * 100%); background-repeat: no-repeat; background-size: contain;}

/*_jp-en*/
#header .mn_jp-en { display: block; width: 16%; max-width: 70px; min-height: 34px; position: absolute; top: 1em; right: 1.5em; z-index: 1000; z-index: 5000;}
#header .mn_jp-en .mn_jp0 { display: block; width: 48%; height: 0; padding-top: 48%; position: absolute; top: 0; left: 0;}
#header .mn_jp-en .mn_jp0 a { display: block; width: 100%; height: 0; padding-top: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/jp_new0.png); position: absolute; top: 0; left: 0;}
#header .mn_jp-en .mn_en0 { display: block; width: 48%; height: 0; padding-top: 48%; position: absolute; top: 0; right: 0;}
#header .mn_jp-en .mn_en0 a { display: block; width: 100%; height: 0; padding-top: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/en_new0.png); position: absolute; top: 0; left: 0;}
#header .mn_jp-en .mn_jp0 a:hover, #header .mn_jp-en .mn_en0 a:hover { opacity: .75;}
#header .mn_jp-en .mn_jp { display: block; width: 48%; height: 0; padding-top: 48%; position: absolute; top: 0; left: 0; background-repeat: no-repeat; background-size: contain; background-image: url(../img/jp_new.png);}
#header .mn_jp-en .mn_en { display: block; width: 48%; height: 0; padding-top: 48%; position: absolute; top: 0; right: 0; background-repeat: no-repeat; background-size: contain; background-image: url(../img/en_new.png);}
/*for_W700-*/
@media all and (min-width: 700px) { 
#logo_all #logo_sp { width: 334px; flex-basis: 334px;}
}
/*for_W768-*/
@media all and (min-width: 768px) { 
#header { background-position: top center; background-size: 120%;}
#logo_all #logo_sp { margin-top: -3em;}
#logo_all .cts_btn-sp { display: block; margin-right: 100px;}
#icon_sp #icon_img { padding-top: 41.935483870967742%; padding-top: -webkit-calc(780 / 1860 * 100%); padding-top: calc(780 / 1860 * 100%); background-size: 130%;}
}
/*for_W1200-*/
@media all and (min-width: 1200px) { 
#header .mn_jp-en { top: 1.5em;}
#icon_sp #icon_img { padding-top: 32.258064516129032%; padding-top: -webkit-calc(600 / 1860 * 100%); padding-top: calc(600 / 1860 * 100%); background-size: 100%;}
}

/*	footer
============================== */
#footer { width: 100%; padding: 3em 0; margin: 0 auto; text-align: center; position: relative; z-index: 1000;}
#footer #cr { padding: 0 5%;}
#footer #pp { padding: 0 0 3em 0; text-align: center; font-weight: 300;}
#footer #pp a { text-align: center; color: rgba(124, 124, 124, 1); border-bottom: 1px solid rgba(124, 124, 124, .7); position: relative; z-index: 1000;}
#footer #pp a:hover { color: rgba(130, 130, 130, 1); border-bottom: 1px solid rgba(130, 130, 130, .7);}

/*	contents
============================== */
.contents { max-width: 1200px; margin: 0 auto;}
.con_txt { width: 80%; margin: 0 auto; padding: 1em 0 1.5em 0; text-align: left; line-height: 240%;}
.line_on { width: 100%; margin: 0 auto; padding: 1em 0;}
.line_on dt { width: 100%; display: flex; font-size: 130%; font-weight: 700; letter-spacing: .025em;align-items: center;}
.line_on dt::before, .line_on dt::after { content: ''; background-color: rgba(129, 137, 157, 1); flex-grow: 1; height: 1px;}
.line_on dt::before { margin-right: 1.2em;}
.line_on dt::after { margin-left: 1.2em;}
/*for_W480-*/
@media all and (min-width: 480px) { 
.con_txt { line-height: 200%;}
}

/*	products
============================== */
.products { width: 94%; max-width: 1200px; margin: 0 auto; padding-bottom: 5em;}
.products h2 { font-size: 260%;}
.products h2 { display: block; width: 46%; max-width: 352px; margin: 0 auto;}
.products h2 .products_h2 { display: block; width: 100%; height: 0; padding-top: 9.823008849557523%; padding-top: -webkit-calc(105 / 687 * 100%); padding-top: calc(105 / 687 * 100%); background-repeat: no-repeat; background-size: contain;}
.products ul { width: 90%; margin: 1em auto;}
.products li { width: 100%; text-align: left; padding: 1.5em 0 4em 0; position: relative;}
.products li a { width: 100%; height: 100%; display: block; padding: 1.5em 0 4em 0; position: relative; z-index: 1000;}
.products li a:hover { opacity: .8;}
.products li .p_title { font-size: 160%; font-weight: 700;}
.products li .p_stitle { font-size: 120%; font-weight: 700;}
.products li .p_img { width: 100%; height: 0; padding-top: 66.666666666666667%; padding-top: -webkit-calc(400 / 600 * 100%); padding-top: calc(400 / 600 * 100%); background-repeat: no-repeat; background-size: contain; margin: .75em 0;}
.products li .con_txt { width: 100%; font-size: 110%; line-height: 200%; padding: .75em 0 1em 0;}
.products li .btn_sp { position: absolute; bottom: 1em; right: .5em;}
.products li .btn { float: right; display: inline-block; padding: .75em 1.25em .85em 2.25em; border: 1px solid rgba(150, 157, 173, .85); border-radius: 30px; position: relative; z-index: 1000; font-size: 110%;}
.products li .btn:hover { background-color: rgba(255, 255, 255,.35);}
.products li .btn span { color: rgba(150, 157, 173, 1); padding-right: 1.5em;}
.products li .btn span:after { content: ''; width: 10px; height: 10px; background: url(../img/ya.png) no-repeat; background-size: contain; position: absolute; top: calc(50% - 5px); right: 1.25em;}

.products li a:hover .btn { background-color: rgba(255, 255, 255,.35);}

.products .li_lnkoff { opacity: .5;}
.products .li_lnkoff a { cursor: default; pointer-events: none;}
/*for_W768-*/
@media all and (min-width: 768px) { 
.products { padding-top: 4em;}
.products ul { width: 100%; display: flex; flex-flow: row wrap; justify-content: center;}
.products li { width: 47%; flex-basis: 47%; margin: 0 2.8% 0 0;}
.products li:nth-child(even) { margin: 0 0 0 2.8%;}
}
/*for_W992-*/
@media all and (min-width: 992px) { 
.products li, .products li:nth-child(even) { width: 29%; flex-basis: 29%; margin: 0 1.8%; font-size: .9em;}
}
