@charset "UTF-8";
/*
デスクトップ用CSS
*/
/* reset CSS
******************/
.telfont { font-family: 'Oswald', sans-serif; white-space: nowrap; letter-spacing: 0; }

* { margin: 0; padding: 0; border: 0; outline: 0; box-sizing: border-box; font-size: inherit; background-repeat: no-repeat; background-position: top center; }

*::after, *::before { box-sizing: border-box; background-repeat: no-repeat; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

li, ol, ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:after, blockquote:before, q:after, q:before { content: ''; content: none; }

a { margin: 0; padding: 0; background: transparent; text-decoration: none; color: inherit; cursor: pointer; -webkit-font-smoothing: antialiased; }

address, i { font-style: normal; }

ins { background-color: #ff9; color: #000; text-decoration: none; }

mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

table { border-collapse: collapse; border-spacing: 0; width: 100%; text-align: left; }

hr { display: block; height: 0; border: 0; border-top: 1px solid #cccccc; margin: 1rem 0; padding: 0; }

input, select { vertical-align: middle; }

img, svg { max-width: 100%; height: auto; /***/ width: auto; vertical-align: top; line-height: 0; backface-visibility: hidden; -webkit-backface-visibility: hidden; }

ins[style] { background-color: transparent; }

span { vertical-align: baseline; }

em { font-weight: bold; font-style: normal; }

h1, h2, h3, h4, h5, h6 { font-weight: bold; line-height: 1.38; }

body { font-family: 'メイリオ' , Meiryo , "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro",Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #333; line-height: 1; -webkit-font-size-adjust: 100%; font-size-adjust: 100%; font-weight: normal; letter-spacing: 0.08em; }

a { -webkit-transition: opacity 0.2s linear; transition: opacity 0.2s linear; }
a:hover { cursor: pointer; opacity: 0.9; }

.bold { font-weight: bold; }

.red { color: #F03535; font-weight: bold; }

.blue { color: #0789D2; font-weight: bold; }

strong { color: #1b3f67; font-weight: bold; }

.line { background: -webkit-linear-gradient(transparent 60%, #fdf296 60%, #fdf296 90%, transparent 90%); background: linear-gradient(transparent 60%, #fdf296 60%, #fdf296 90%, transparent 90%); font-weight: bold; }

.gmap { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }

.gmap embed, .gmap iframe, .gmap object { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.click:hover { cursor: pointer; opacity: 0.8; }

.tel { position: relative; }

.phone { position: absolute; font-family: 'Oswald', sans-serif; white-space: nowrap; letter-spacing: 0; line-height: 1; }

.maximg img { width: 100%; }

.flex { display: -webkit-flex; display: flex; }

.flex-between { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }

.flex-around { display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; }

.flex-grow-1 { -webkit-flex-grow: 1; flex-grow: 1; }

.flex-align { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }

.flex-center { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; }

.flex-wrap { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

.flex-grid { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

.flex-grow { -webkit-flex-grow: 1; flex-grow: 1; }

.clearfix::after { content: ''; display: block; clear: both; }

.margin-auto { margin: auto; }

.auto { margin-left: auto; margin-right: auto; }

.bold { font-weight: bold; }

.normal { font-weight: normal; }

.text-center { text-align: center; }

.text-left { text-align: left; }

.text-right { text-align: right; }

.table { display: table; width: 100%; }

.table-cell { display: table-cell; vertical-align: top; }

.vertical-middle { vertical-align: middle; }

.vertical-bottom { vertical-align: bottom; }

.block { display: block; }

.inline { display: inline; }

.inline-block { display: inline-block; }

.relative { position: relative; }

.absolute { position: absolute; }

.fixed { position: fixed; }

.no-repeat { background-repeat: no-repeat; }

.cover { background-size: cover; }

.contain { background-size: contain; }

.hidden { overflow: hidden; }

.scroll { overflow: scroll; }

.float-left { float: left; }

.float-right { float: right; }

.clear { clear: both; }

.mincho { font-family: "ＭＳ Ｐ明朝","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HGS明朝E",serif; }

.text { line-height: 1.8; }
.text p { margin-bottom: 1.5em; }
.text p:last-child { margin-bottom: 0; }

.img-cover { position: relative; overflow: hidden; }
.img-cover img { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; width: 100%; }

.border-box { box-sizing: border-box; }

.content-box { box-sizing: content-box; }

.font-bold { font-weight: bold; }

.font-normal { font-weight: normal; }

.clearfix::after { content: ''; display: block; clear: both; }

body { font-family: 'メイリオ' , Meiryo , "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro",Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #333; line-height: 1; -webkit-font-size-adjust: 100%; font-size-adjust: 100%; font-weight: normal; letter-spacing: 0.08em; }

html { font-size: 10px; }

body { font-size: 16px; min-width: 1200px; margin: auto; }

a { -webkit-transition: opacity 0.2s linear; transition: opacity 0.2s linear; }
a:hover { cursor: pointer; opacity: 0.9; }

.bold { font-weight: bold; }

.red { color: #F03535; font-weight: bold; }

.blue { color: #0789D2; font-weight: bold; }

strong { color: #1b3f67; font-weight: bold; }

.line { background: -webkit-linear-gradient(transparent 60%, #fdf296 60%, #fdf296 90%, transparent 90%); background: linear-gradient(transparent 60%, #fdf296 60%, #fdf296 90%, transparent 90%); font-weight: bold; }

.gmap { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }

.gmap embed, .gmap iframe, .gmap object { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.click:hover { cursor: pointer; opacity: 0.8; }

.sp { display: none; }

.tel { position: relative; }

.phone { position: absolute; font-family: 'Oswald', sans-serif; white-space: nowrap; letter-spacing: 0; line-height: 1; }

.maximg img { width: 100%; }

.flex-pc { display: -webkit-flex; display: flex; }

.flex-between-pc { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }

.flex-around-pc { display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; }

.flex-grow-1-pc { -webkit-flex-grow: 1; flex-grow: 1; }

.flex-align-pc { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }

.flex-center-pc { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; }

.flex-wrap-pc { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

.flex-grid-pc { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

.flex-grow-pc { -webkit-flex-grow: 1; flex-grow: 1; }

.clearfix-pc::after { content: ''; display: block; clear: both; }

.margin-auto-pc { margin: auto; }

.auto-pc { margin-left: auto; margin-right: auto; }

.bold-pc { font-weight: bold; }

.normal-pc { font-weight: normal; }

.text-center-pc { text-align: center; }

.text-left-pc { text-align: left; }

.text-right-pc { text-align: right; }

.table-pc { display: table; width: 100%; }

.table-cell-pc { display: table-cell; vertical-align: top; }

.vertical-middle-pc { vertical-align: middle; }

.vertical-bottom-pc { vertical-align: bottom; }

.block-pc { display: block; }

.inline-pc { display: inline; }

.inline-block-pc { display: inline-block; }

.relative-pc { position: relative; }

.absolute-pc { position: absolute; }

.fixed-pc { position: fixed; }

.no-repeat-pc { background-repeat: no-repeat; }

.cover-pc { background-size: cover; }

.contain-pc { background-size: contain; }

.hidden-pc { overflow: hidden; }

.scroll-pc { overflow: scroll; }

.float-left-pc { float: left; }

.float-right-pc { float: right; }

.clear-pc { clear: both; }

.mincho-pc { font-family: "ＭＳ Ｐ明朝","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HGS明朝E",serif; }

.text-pc { line-height: 1.8; }
.text-pc p { margin-bottom: 1.5em; }
.text-pc p:last-child { margin-bottom: 0; }

.img-cover-pc { position: relative; overflow: hidden; }
.img-cover-pc img { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; width: 100%; }

.border-box-pc { box-sizing: border-box; }

.content-box-pc { box-sizing: content-box; }

.font-bold-pc { font-weight: bold; }

.font-normal-pc { font-weight: normal; }

.clearfix-pc::after { content: ''; display: block; clear: both; }

/* common CSS
******************/
/* Post
******************/
.post-content { line-height: 1.8; position: relative; z-index: 1; margin: 0 0 3rem; }
.post-content::after { content: ''; display: block; clear: both; }
.post-content > a { color: #117ee4; }
.post-content > p { margin-bottom: 1.62em; }
.post-content > blockquote { background-color: #f1f1f1; position: relative; margin: 3em 0; color: #6d6d6d; background-color: #f3f3f3; color: #696969; border-radius: 1rem; padding: 5.5rem 5rem 3rem; font-size: 1.3rem; }
.post-content > blockquote::after, .post-content > blockquote::before { content: url("../imgco/quote.svg"); position: absolute; width: 2.6rem; height: 2.6rem; opacity: 0.2; }
.post-content > blockquote::before { top: 0.4rem; left: 0.8rem; -webkit-transform: rotate(180deg); transform: rotate(180deg); }
.post-content > blockquote::after { bottom: 0.4rem; right: 0.8rem; }
.post-content > blockquote cite { font-size: 0.8em; color: #b3b3b3; display: block; text-align: right; position: relative; bottom: -1rem; }
.post-content > blockquote a { color: #9dc6da; }

.post-thumbnail { text-align: center; margin: 0 0 1em; overflow: hidden; position: relative; height: 38rem; }
.post-thumbnail img { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; }

/* post headline */
.post-banner__inner { display: table; min-height: 300px; padding: 30px 0; padding-right: 440px; }
.post-banner__box { display: table-cell; vertical-align: middle; line-height: 1.6; position: relative; z-index: 1; color: #fff; padding: 35px; }
.post-banner__box-head { font-weight: bold; position: relative; font-size: 28px; padding-bottom: 10px; margin-bottom: 20px; }
.post-banner__box-head::after { content: ''; display: block; position: absolute; background-color: #fff; bottom: 0; left: 0; height: 2px; width: 100px; }
.post-banner__box-desc { margin-top: 10px; font-size: 14px; }

.post-header h1 { color: #fff; position: relative; background-color: #1b3f67; background-image: url("../img/gd__post-h1__bg.png"), -moz-linear-gradient(-45deg, #1b3f67 0%, #1b3f67 50%, #1f4a79 50%, #1f4a79 100%); background-image: url("../img/gd__post-h1__bg.png"), -webkit-linear-gradient(-45deg, #1b3f67 0%, #1b3f67 50%, #1f4a79 50%, #1f4a79 100%); background-image: url("../img/gd__post-h1__bg.png"), linear-gradient(135deg, #1b3f67 0%, #1b3f67 50%, #1f4a79 50%, #1f4a79 100%); z-index: 2; font-size: 2.8rem; padding: 1.5rem 1rem 1.3rem 4rem; margin-bottom: 3rem; background-position: center right 2rem, top left; }
.post-header h1::before { content: ''; display: block; width: .8rem; height: calc(100% - 4rem); background: #0c71a8; background: -moz-linear-gradient(top, #0c71a8 0%, #0c71a8 50%, #1982bb 50%, #1982bb 100%); background: -webkit-linear-gradient(top, #0c71a8 0%, #0c71a8 50%, #1982bb 50%, #1982bb 100%); background: linear-gradient(to bottom, #0c71a8 0%, #0c71a8 50%, #1982bb 50%, #1982bb 100%); position: absolute; top: 0; bottom: 0; left: 1.5rem; margin: auto; }
.post-header h1::after { content: ''; display: block; position: absolute; left: 0; width: 100%; height: 0.2rem; background-color: #1b3f67; top: -0.5rem; }

.post-content > h2, .post-content > h3, .post-content > h4, .post-content > h5, .post-content > h6 { font-weight: bold; line-height: 1.4; clear: both; }
.post-content > h2 { background-color: #e1eaf3; color: #1f4a79; position: relative; border-top: .3rem solid #1982bb; font-size: 2.4rem; margin-top: 4rem; margin-bottom: 2rem; padding: 1.2rem 1rem .8rem 4rem; }
.post-content > h2::before { content: ''; display: block; background-color: #1982bb; top: 0; bottom: 0; margin: auto; position: absolute; width: 1rem; height: 1rem; left: 1.5rem; }
.post-content > h3 { background-color: #f1f7f7; position: relative; z-index: 1; overflow: hidden; font-size: 2rem; margin-top: 4rem; margin-bottom: 2rem; padding: 1rem 1rem .8rem 4rem; }
.post-content > h3::before { content: ''; display: block; position: absolute; background-color: #1f4a79; border-radius: 100%; top: 1.8rem; left: 1.5rem; width: 1rem; height: 1rem; }
.post-content > h4 { line-height: 1.4; border-bottom: 0.1rem solid #333; font-size: 1.8rem; margin-top: 4rem; margin-bottom: 2rem; }

/* post Table */
.post-content > table { margin: 3em 0; width: 100%; border-top: 1px solid #969696; font-size: 0.86em; }
.post-content > table td, .post-content > table th { vertical-align: top; text-align: left; border: 1px solid #ccc; padding: 1rem 3rem; }
.post-content > table thead th { background: #e1eaf3; color: #1f4a79; }
.post-content > table thead th:not(:last-child) { border-right: .1rem dashed #fff; }
.post-content > table tbody th { background: #f1f7f7; width: 30%; }
.post-content > table tbody td { background-color: #fff; }
.post-content > table tfoot { font-size: .82em; }
.post-content > table tfoot th, .post-content > table tfoot td { border: none; }
.post-content > table tfoot td { text-align: right; padding: .5rem; }
.post-content > table caption { text-align: center; font-size: .82em; color: #848484; margin: 0 0 0.8em; }

.post-content > ol, .post-content > ul { position: relative; background-color: #e1eaf3; z-index: 1; border: 1rem solid #e1eaf3; padding: 2rem; margin: 4rem 0; }
.post-content > ol > li, .post-content > ul > li { position: relative; border-bottom: .1rem dotted #ccc; padding: 1rem 0 .8rem 3rem; }
.post-content > ul > li { background-image: url("../img/gd__post-list__icn.png"); background-position: top 1rem left; }
.post-content > ol > li { counter-increment: li; }
.post-content > ol > li::before { content: counter(li); position: absolute; display: inline-block; text-align: center; font-size: 0.8em; font-weight: bold; line-height: 0; background-color: #1b3f67; color: #fff; border-radius: .2rem; left: 0; top: 2rem; width: 1.6em; padding: 0.8em 0; }

.post-content .box { margin: 3em 0; padding: 4rem 5rem 3rem; }
.post-content .box.is-yellow { background-color: #f7f3cf; border: 0.4rem dashed #f3e3b2; }
.post-content .box.is-red { background-color: #f7cfcf; border: 0.4rem dashed #f3b2b2; }
.post-content .box.is-gray { background-color: #f1f1f1; border: 0.4rem dashed #c3c3c3; }

.post__box__tyui { border: 0.1rem solid #f7cf6a; margin: 4rem 0; width: 90%; margin-left: auto; margin-right: auto; padding: 2.6rem 2.5rem 1.3rem; position: relative; }
.post__box__tyui::before { content: "注意点"; color: #f7cf6a; font-size: 2.2rem; top: -2.1rem; padding: 2rem 0.8rem 2rem 6rem; position: absolute; font-weight: bold; background: #fff; line-height: 0; }
.post__box__tyui::after { content: "\f071"; position: absolute; background: #f7cf69; color: #fff; font-family: "Font Awesome\ 5 Free"; font-weight: 900; font-size: 2.2rem; border: 0.5rem solid #fff; text-align: center; width: 5.4rem; height: 5.4rem; line-height: 4.5rem; left: 2.5rem; top: -3.1rem; border-radius: 50%; }
.post__box__point { border: 0.1rem solid #85db8f; margin: 4rem 0; width: 90%; margin-left: auto; margin-right: auto; padding: 2.6rem 2.5rem 1.3rem; position: relative; }
.post__box__point::before { content: "ポイント"; color: #85db8f; font-size: 2.2rem; top: -2.1rem; padding: 2rem 0.8rem 2rem 6rem; position: absolute; font-weight: bold; background: #fff; line-height: 0; }
.post__box__point::after { content: "\f00c"; position: absolute; background: #85db8f; color: #fff; font-family: "Font Awesome\ 5 Free"; font-weight: 900; font-size: 2.2rem; border: 0.5rem solid #fff; text-align: center; width: 5.4rem; height: 5.4rem; line-height: 4.5rem; left: 2.5rem; top: -2.9rem; border-radius: 50%; }
.post__box__midashi { border: 0.1rem solid #ea91a9; margin-bottom: 4rem; width: 90%; margin-left: auto; margin-right: auto; padding: 1.5rem 2.5rem 1.6rem; position: relative; }
.post__box__midashi-title { background-color: #ea91a9; position: absolute; line-height: 0; font-size: 1.8rem; left: -.1rem; top: -3.2rem; color: #fff; padding: 1.6rem 1.5rem; border-top-left-radius: 4px; border-top-right-radius: 4px; letter-spacing: 0; }

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

.alignleft { display: block; margin: 0 0 1em; float: left; margin: 0 1em 1em 0; }

.aligncenter { display: block; text-align: center; margin: 0 auto 1rem; }

.kanren { border: 0.2rem solid #1b3f67; border-radius: 0.5rem; position: relative; }
.kanren__label { background-color: #fff; color: #1b3f67; border: 0.1rem solid #1b3f67; position: absolute; font-size: 0.6em; font-weight: bold; line-height: 0; border-radius: 0.5rem; top: -1.3rem; left: 2rem; padding: 1.2rem 2.8rem; }
.kanren__box { clear: both; display: block; color: inherit !important; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; padding: 2rem; }
.kanren__img { padding-top: 0.7rem; width: 10rem; }
.kanren__content { width: calc(100% - 12rem); }
.kanren__title { font-weight: bold; margin: 0 0 1rem; font-size: 2rem; }
.kanren__title a { color: #1b3f67 !important; }
.kanren__text { font-size: 0.7em; color: #797979; }

.post-relation__title { padding: 2rem; background-color: #1b3f67; color: #fff; padding: 2rem; font-size: 2rem; }
.post-relation__title.is-case { margin-bottom: 3rem; }
.post-relation__item { background-color: #fff; }
.post-relation__item:not(:last-child) { border-bottom: 0.1rem dashed #d7d7d7; }
.post-relation__item a { color: inherit; position: relative; display: block; font-weight: normal; padding: 1.9rem 0 1.6rem 3rem; transition: all 0.3s ease; }
.post-relation__item a::before { content: ""; position: absolute; width: 0; height: 0; left: 1.2rem; top: 2.5rem; border: 0.5rem solid transparent; border-left: 0.5rem solid #1b3f67; transition: all 0.3s ease; }
.post-relation__item a:hover { color: #1b3474; }
.post-relation__item a:hover::before { left: 1.6rem; }

/* Layout
******************/
.bg-color1 { background-color: #1b3f67; }

.bg-color2 { background-color: #e1eaf3; }

.bg-color3 { background-color: #f1f7f7; }

.bg-color4 { background-color: #1f4a79; }

.pattern1 { background-image: url("../img/gd__pattern1.png"); background-repeat: repeat; }

.pattern2 { background-image: url("../img/gd__pattern2.png"); background-repeat: repeat; }

.pattern3 { background-image: url("../img/gd__pattern3.png"); background-repeat: repeat; }

.bg-image1 { background-image: url("1bg-image1.png"); }
.bg-image1-pc { background-image: url("1bg-image1_pc.png"); }

.bg-image2 { background-image: url("2bg-image2.png"); }
.bg-image2-pc { background-image: url("2bg-image2_pc.png"); }

.bg-image3 { background-image: url("3bg-image3.png"); }
.bg-image3-pc { background-image: url("3bg-image3_pc.png"); }

.bg-image4 { background-image: url("4bg-image4.png"); }
.bg-image4-pc { background-image: url("4bg-image4_pc.png"); }

.bg-image5 { background-image: url("5bg-image5.png"); }
.bg-image5-pc { background-image: url("5bg-image5_pc.png"); }

.c-list { font-weight: bold; margin: 2rem 0 2rem; }
.c-list-item { position: relative; padding-left: 3rem; }
.c-list-item::before { content: ''; display: block; position: absolute; border-radius: 100%; background-color: #1b3f67; left: 0; width: 1rem; height: 1rem; left: .6rem; top: .8rem; }

.c-body { line-height: 1.8; }
.c-body::after { content: ''; display: block; clear: both; }
.c-body p { margin-bottom: 1.25em; }
.c-body p:last-child { margin-bottom: 0; }
.c-body h2 { background-color: #e1eaf3; color: #1f4a79; position: relative; border-top: .3rem solid #1982bb; font-size: 2.4rem; margin-top: 4rem; margin-bottom: 2rem; padding: 1.2rem 1rem .8rem 4rem; }
.c-body h2::before { content: ''; display: block; background-color: #1982bb; top: 0; bottom: 0; margin: auto; position: absolute; width: 1rem; height: 1rem; left: 1.5rem; }
.c-body h3 { background-color: #e1eaf3; color: #1f4a79; position: relative; border-top: .3rem solid #1982bb; font-size: 2.4rem; margin-top: 4rem; margin-bottom: 2rem; padding: 1.2rem 1rem .8rem 4rem; }
.c-body h3::before { content: ''; display: block; background-color: #1982bb; top: 0; bottom: 0; margin: auto; position: absolute; width: 1rem; height: 1rem; left: 1.5rem; }
.c-body h4 { background-color: #f1f7f7; position: relative; z-index: 1; overflow: hidden; font-size: 2rem; margin-top: 4rem; margin-bottom: 2rem; padding: 1rem 1rem .8rem 4rem; }
.c-body h4::before { content: ''; display: block; position: absolute; background-color: #1f4a79; border-radius: 100%; top: 1.8rem; left: 1.5rem; width: 1rem; height: 1rem; }
.c-body a { color: #167bcc; }
.c-body > ol, .c-body > ul { position: relative; background-color: #e1eaf3; z-index: 1; border: 1rem solid #e1eaf3; padding: 2rem; margin: 4rem 0; }
.c-body > ol > li, .c-body > ul > li { position: relative; border-bottom: .1rem dotted #ccc; padding: 1rem 0 .8rem 3rem; }
.c-body > ul > li { background-image: url("../img/gd__post-list__icn.png"); background-position: top 1rem left; }
.c-body > ol > li { counter-increment: li; }
.c-body > ol > li::before { content: counter(li); position: absolute; display: inline-block; text-align: center; font-size: 0.8em; font-weight: bold; line-height: 0; background-color: #1b3f67; color: #fff; border-radius: .2rem; left: 0; top: 2rem; width: 1.6em; padding: 0.8em 0; }
.c-body > table { margin: 3em 0; width: 100%; border-top: 1px solid #969696; font-size: 0.86em; }
.c-body > table td, .c-body > table th { vertical-align: top; text-align: left; border: 1px solid #ccc; padding: 1rem 3rem; }
.c-body > table thead th { background: #e1eaf3; color: #1f4a79; }
.c-body > table thead th:not(:last-child) { border-right: .1rem dashed #fff; }
.c-body > table tbody th { background: #f1f7f7; width: 30%; }
.c-body > table tbody td { background-color: #fff; }
.c-body > table tfoot { font-size: .82em; }
.c-body > table tfoot th, .c-body > table tfoot td { border: none; }
.c-body > table tfoot td { text-align: right; padding: .5rem; }
.c-body > table caption { text-align: center; font-size: .82em; color: #848484; margin: 0 0 0.8em; }

.c-title { color: #fff; position: relative; background-color: #1b3f67; overflow: hidden; z-index: 2; font-size: 2.8rem; padding: 1.5rem 1rem 1.3rem 2rem; margin-bottom: 3rem; background-position: center right 2rem; }
.c-title::before { content: ''; display: block; width: 10rem; height: 10rem; background-color: #06366b; position: absolute; top: 0; bottom: 0; left: -5rem; margin: auto; transform: rotate(45deg); z-index: -1; }
.c-title::after { content: ''; display: block; position: absolute; top: 0.2rem; left: 0; width: 100%; height: 0.1rem; background-color: #fff; }

.c-headline { border-top: 2px solid #1b3f67; position: relative; border-bottom: 1px solid #eee; margin: 1.6em 0 0.8em; background-image: url("../img/gd__postH1__bg_pc.jpg"); background-position: top center; box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.2); font-size: 2.2rem; padding: 1.3rem 1rem 1rem 3rem; border-radius: .8rem; }
.c-headline::before { content: ''; display: block; position: absolute; top: 0; left: 0; bottom: 0; background-color: #1b3f67; margin: auto; width: 0.6rem; height: 90%; height: calc(100% - 3rem); }

.b-p1 { background-image: url("../img/gd__grid__pattern_bg.jpg"); }

.b-p2 { background-image: url("../img/gd__note__pattern_bg.jpg"); }

.b-p3 { background-image: url("../img/gd__board__pattern_bg.jpg"); }

.c-more { text-align: center; }
.c-more a { color: #333; font-weight: bold; background-color: #fff; border-radius: 10rem; background-image: url("../img/gd__c-more__arrow_pc.png"); background-repeat: no-repeat; display: inline-block; border: 0.2rem solid #1b3f67; padding: 2.2rem 10rem 2rem 8rem; font-size: 1.8rem; background-position: right 2.2rem center; }

.unit { width: 1040px; margin: 0 auto; }

.sec { margin-bottom: 6rem; }
.sec:last-of-type { margin-bottom: 0; }

.m-mb-head { margin-bottom: 2rem; }

.m-mb-body { margin-bottom: 4rem; }

.mb-head { margin-bottom: 1.5rem; }

.mb-body { margin-bottom: 3rem; }

.sec-side { margin: 0 0 3rem; }
.sec-side:last-of-type { margin-bottom: 0; }

.container { position: relative; z-index: 1; overflow: hidden; background-repeat: repeat; transition: opacity .2s linear; min-width: 1200px; margin: auto; }
.container-header { background-color: #fff; }
.container-center { width: 1040px; margin-bottom: 4rem; }
.container-center::after { content: ''; display: block; clear: both; }
.container-main { float: left; width: 760px; }
.container-side { float: right; width: 240px; z-index: 100; position: relative; }
.container-side__inner { width: inherit; }
.container-side__inner.on { bottom: 0; }

.pagetop { position: fixed; z-index: 9995; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; overflow: hidden; opacity: 0.8; bottom: 27rem; right: -8rem; }
.pagetop.in { right: 2rem; }

.ribonbox { border: 0.4rem solid #1b3f67; border-radius: 1rem; background-color: #fff; position: relative; margin-bottom: 3rem; }
.ribonbox__head { border-bottom: 0.1rem solid #1b3f67; color: #493f30; line-height: 1.4; padding: 2rem 0 1.8rem 8rem; font-size: 2.8rem; }
.ribonbox__head .icn { position: absolute; top: -.4rem; left: 3rem; }
.ribonbox__body { padding: 2.5rem 4rem; }

.tetsuduki { padding-top: 2rem; }
.tetsuduki__title { margin-bottom: 2rem; }
.tetsuduki__title2 { text-align: center; color: #1b3f67; background-image: url("../img/gd__tetsuduki__title2_pc.png"); background-position: bottom center; background-size: contain; font-size: 3.5rem; padding: 0 8rem 0.3rem; }
.tetsuduki__text { margin: 0 0 3rem; }
.tetsuduki__pics { margin-bottom: 7rem; }
.tetsuduki__box { background-image: url("../img/gd__tetsuduki__nayami-box_bg_pc.jpg"); padding: 2rem; }
.tetsuduki__box-headline { padding-top: 6rem; margin-bottom: 4rem; }
.tetsuduki__box-list { background-color: #fff; border-radius: 1rem; padding: 3rem 4rem; }
.tetsuduki__box-list li { background-color: #fff; position: relative; font-weight: bold; padding: 1.5rem 0 1.5rem 7rem; font-size: 2.5rem; }
.tetsuduki__box-list li:nth-child(2n + 1) { background-color: #eff9fd; }
.tetsuduki__box-list li .icn { position: absolute; top: 1rem; left: 2.4rem; }

.souzoku-strong { position: relative; }
.souzoku-strong__inner { padding: 4rem 0; }
.souzoku-strong__title { margin-bottom: 4rem; }

.strong__list { background-color: #bff1ff; padding: 5rem 0 0; overflow: hidden; margin-bottom: 3rem; }
.strong__list-item { position: relative; background-image: url("../img/gd__strong__list-item-center_pc.png"); background-repeat: repeat-y; padding: 0 6rem; margin-bottom: 10rem; }
.strong__list-item::before { content: ''; display: block; position: absolute; background-image: url("../img/gd__strong__list-item-top_pc.png"); width: 100%; left: 0; right: 0; margin: auto; height: 4rem; top: -4rem; }
.strong__list-item::after { content: ''; display: block; position: absolute; background-image: url("../img/gd__strong__list-item-bottom_pc.png"); width: 100%; left: 0; right: 0; margin: auto; height: 4rem; bottom: -4rem; }
.strong__list-item:last-child { margin-bottom: 6rem; }
.strong__list-head { position: relative; font-size: 2.6rem; min-height: 6rem; margin-bottom: 1.5rem; padding: 1rem 0 1rem 7rem; }
.strong__list-head .icn { position: absolute; top: 0; left: 0; }
.strong__list-pic { float: right; margin-left: 1.5rem; }
.strong__boxA { padding: 5rem 3rem; }
.strong__boxA-body { width: 41rem; margin-top: -11rem; margin-left: 1rem; margin-bottom: 4rem; }
.strong__boxA-body.n2 { margin-left: 28rem; margin-bottom: 0; }
.strong__boxB { border: 0.7rem solid #1b3f67; padding: 1.5rem; }
.strong__boxB-inner { padding: 4rem 0; }
.strong__boxB-head { margin: auto; }
.strong__boxB-body { color: #1b3f67; padding: 2rem 5rem 0; }

.price__title { margin: auto; margin-bottom: 3rem; }
.price__desc { font-weight: bold; text-align: center; line-height: 1.6; font-size: 2.5rem; }

.flow__title { margin: auto; margin-bottom: 3rem; }
.flow__step { position: relative; overflow: hidden; }
.flow__step-item { position: relative; border: 0.4rem solid #61d9fc; border-radius: 1rem; margin-bottom: 2.5rem; }
.flow__step-head { border-bottom: 0.1rem solid #1b3f67; font-size: 2.6rem; padding: 2rem 0 2rem 11rem; }
.flow__step-head .icn { margin-right: 1rem; position: absolute; top: -.4rem; left: 3rem; }
.flow__step-pic { position: absolute; top: 2.5rem; right: 2rem; }
.flow__step-body { padding: 2.5rem 26rem 2.5rem 2.5rem; }
.flow__step-arrow { margin: auto; margin-bottom: -2.2rem; }

.toraburu__list { background-color: #caf0fe; border-radius: 1rem; padding: 2rem 2.5rem; margin-bottom: 4rem; }
.toraburu__list-item { margin: 0 0 0rem; }
.toraburu__list-item:last-child { margin: 0; }
.toraburu__comment { margin-bottom: 3rem; }
.toraburu__comment-item { padding: 4.5rem 0 3rem; }
.toraburu__comment-item:not(:last-child) { border-bottom: 0.2rem dashed #1b3f67; }
.toraburu__comment-head { color: #1b3f67; position: relative; background-color: #fff; border-top: 0.2rem solid #1b3f67; border-radius: 0.5rem; box-shadow: 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1); font-size: 3.2rem; margin-bottom: 3rem; padding-left: 9rem; height: 7rem; line-height: 7rem; }
.toraburu__comment-head .icn { position: absolute; top: -.2rem; left: 0; margin-right: 1.5rem; }
.toraburu__comment-fuki { position: relative; padding-right: 12.5rem; margin-bottom: 3rem; }
.toraburu__comment-fuki-text { background-color: #fff9d0; border-radius: 1.5rem; border: 0.2rem solid #493f30; background-image: url("../img/gd__fuki__sankaku_pc.png"); background-position: bottom left; font-weight: bold; line-height: 1.4; position: relative; z-index: 2; padding: 3.4rem 3rem 3.2rem 6rem; font-size: 2.5rem; }
.toraburu__comment-fuki-text i { color: #1b3f67; }
.toraburu__comment-fuki-text::after { content: ''; display: block; position: absolute; background-image: url("../img/gd__fuki-right_pc.png"); width: 1.7rem; height: 1.7rem; top: 4rem; right: -1.7rem; }
.toraburu__comment-fuki-hito { position: absolute; top: 0; right: 0; }

.jirei__block { background-image: url("../img/gd__case-sozoku__bg_pc.jpg"); padding: 2rem; }
.jirei__more { text-align: center; margin: 2rem 0 0; }

.faq__list-item { position: relative; border: 0.1rem solid #e6e6e6; border-radius: 0.8rem; background-color: #fff; margin: 0 0 2rem; }
.faq__list-item:last-child { margin: 0; }
.faq__list-head { background-image: url("../img/gd__faq__list-head_icn_pc.png"); border-bottom: 0.1rem solid #e6e6e6; line-height: 1.4; padding: 2rem 2rem 2rem 9rem; background-position: top 2rem left 2.8rem; font-size: 2rem; }
.faq__list-body { background-image: url("../img/gd__faq__list-body_icn_pc.png"); background-position: top 2.5rem left 3rem; padding: 2rem 2rem 2rem 9rem; font-size: 1.4rem; }

.sozoku-menu__list-item { background-color: #fff; border: 0.2rem solid #6e6e6e; width: 25.2rem; margin: 0 0 2rem; padding: 0.8rem; }
.sozoku-menu__list-item::before { content: ''; display: block; margin: -.2rem -.2rem 0; height: .2rem; background-color: #1b3f67; }
.sozoku-menu__list-head { display: inline-block; color: #1b3f67; background-color: #fff; text-align: center; border-radius: 0.5rem; position: relative; padding: 0.2rem 1rem; font-size: 1.8rem; letter-spacing: 0; white-space: nowrap; top: -1.9rem; margin-bottom: -1rem; }
.sozoku-menu__list__body { text-align: left; }
.sozoku-menu__list li { background-image: url("../img/gd__sozoku-menu__list_icn_pc.png"); background-repeat: no-repeat; text-align: left; line-height: 1.4; padding: 1.1rem 0 1rem 2.1rem; margin: 0 1rem; font-size: 1.26rem; background-position: left top 1.1rem; }
.sozoku-menu__list li:not(:last-child) { border-bottom: 1px solid #eee; }

/* Layout/header */
.header { position: relative; box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.1); }
.header__inner { padding: 1.5rem 0 1rem; }
.header__title { font-size: 1.2rem; margin: 0.2rem 0 0.5rem; }

.sideMenu__nav { border: 1px solid #e6e6e6; border-top: none; }
.sideMenu__nav-head { background-color: #e1eaf3; text-align: center; padding: 1.5rem 0; }
.sideMenu__nav-list { background-color: #fff; }
.sideMenu__nav-item { background-image: url("../img/gd__sideMenu__arror_pc.png"); font-size: 0.8em; background-position: center right 1rem; }
.sideMenu__nav-item:not(:last-child) { border-bottom: 1px dotted #ccc; }
.sideMenu__nav-item a { display: block; line-height: 1.4; padding: 1.5rem 3rem 1.3rem 1.5rem; }

.sideOffice__title { margin-bottom: -5rem; }
.sideOffice__body { background-color: #4facfe; padding: 0 1rem 1rem; position: relative; z-index: 2; }
.sideOffice__body-inner { background-color: #fff; padding: 1rem 2rem; }
.sideOffice__item { border-top: 0.1rem solid #ddd; padding: 1rem 0; background-image: url("../img/al__sideOffice__arrow_pc.png"); background-repeat: no-repeat; background-position: top 1rem left; font-size: 1.2rem; padding-left: 2rem; }
.sideOffice__item:last-of-type { border-bottom: 0.1rem solid #ddd; }

.sideBanner__simu { margin: 0 0 1.5rem; }

.sideCta__body { background: #dae8ef; text-align: center; padding: 1.5rem 0; }
.sideCta__phone { margin: 0 0 2rem; background-image: url("../img/gd__sideCta__phone_pc.png"); background-repeat: no-repeat; height: 6rem; background-position: top center; color: #00479d; font-size: 3.1rem; padding: 3.4rem 0 0 2.9rem; }

.sideAccess { background-color: #fff; border: 0.3rem solid #e6e6e6; padding: 0 0 2rem; }
.sideAccess::before { content: ''; display: block; height: 0.4rem; background-color: #1b3f67; margin: -.4rem -.3rem 0; }
.sideAccess__inner { padding: 0 2rem; }
.sideAccess__pic { margin-bottom: 1.5rem; }
.sideAccess__station { background-color: #f3f3f3; color: #333; font-weight: bold; font-size: 1.4rem; padding: 0.8rem 1rem 0.5rem; margin-bottom: 1rem; }
.sideAccess__address { display: block; font-size: 1.3rem; line-height: 1.5; margin: 1rem 0; }
.sideAccess__btn { margin-top: 2rem; text-align: center; }

.footer { background-color: #fff; border-top: 0.1rem solid #cfcfcf; }
.footer__inner { padding: 20px 0; }
.footer__logo { margin: 0 0 15px; }
.footer__address { line-height: 1.6; font-size: 11px; margin: 0 0 15px; }
.footer__address .office-address:not(:last-child) { margin-bottom: 1rem; }
.footer__address .office-address .bold { border: 1px solid #1f4a79; color: #1f4a79; font-weight: bold; font-size: .8em; border-radius: 3px; padding: 1px 8px; margin-right: 8px; }
.footer__map { width: 630px; }
.footer__block { padding: 30px 0; }
.footer__banner { margin-bottom: 20px; }
.footer__banner a { display: inline-block; margin: 0 8px 10px 0; }
.footer__copyright { display: block; text-align: center; background-color: #1b3f67; border-top: 1px solid #1f4a7a; color: #fff; padding: 10px; font-size: 10px; }

.fvMain__items { text-align: center; }
.fvMain__item { position: absolute; }
.fvMain__item.n1 { top: 0; left: 0; }
.fvMain__item.n2 { left: 0; top: 9rem; }
.fvMain__item.n3 { left: 0; top: 43.9rem; }

/* Layout/nav */
.gnav { font-size: 14px; background-color: #e8edf1; }
.gnav.is-footer { background-color: #fff; width: 530px; }
.gnav__nav.is-footer { padding: 18px 0; }
.gnav__nav-item { background-repeat: no-repeat; -webkit-flex-grow: 1; flex-grow: 1; position: relative; position: relative; transition: all 0.3s ease; }
.gnav__nav-item::after, .gnav__nav-item::before { content: ''; display: block; position: absolute; top: 0; bottom: 0; margin: auto; height: 80%; background-color: #e0e0e0; width: 0.1rem; }
.gnav__nav-item::before { left: 0; }
.gnav__nav-item:last-of-type::after { right: 0; }
.gnav__nav-item:hover { cursor: pointer; opacity: 0.8; background-color: #dde3e7; }
.gnav__nav-item.is-footer { float: left; width: 154px; }
.gnav__nav-item.is-footer:hover { background-color: #fff; }
.gnav__nav-item.is-footer::after, .gnav__nav-item.is-footer::before { display: none; }
.gnav__nav-item.is-footer .icn { top: 0; bottom: 0; left: 0; right: auto; margin: auto; }
.gnav__nav-item.is-footer a { padding: 10px 0 8px 30px; white-space: nowrap; }
.gnav__nav-item .icn { left: 0; right: 0; top: 15px; margin: auto; }
.gnav__nav-item a { display: block; padding: 45px 0 4px; line-height: 24px; }
.gnav__nav-item a::after { content: ''; display: block; width: 0; height: 3px; position: absolute; bottom: 0; left: 0; right: 0; margin: auto; border-radius: 10px; background-color: #1b3f67; transition: all 0.3s ease; }
.gnav__close { padding: 1.5rem 0; }

.archive__post { position: relative; border: 1px solid #ccc; background-color: #fff; padding: 3rem; margin: 0 0 3rem; transition: all 0.3s ease; cursor: pointer; }
.archive__post:hover { opacity: 0.8; }
.archive__post::after { content: ''; display: block; position: absolute; transform: rotate(45deg); right: 0; bottom: 0; border: 0.5rem solid transparent; border-left: 0.5rem solid #1b3f67; }
.archive__headline { color: #1b3f67; line-height: 1.4; font-size: 2.2rem; margin: 0 0 1.4rem; }
.archive__excerpt { font-size: 0.8em; color: #5a5a5a; line-height: 1.5; }

.ctaHeader__banner { margin-top: 10px; margin-right: 15px; }
.ctaHeader__tel { margin-right: 20px; }
.ctaHeader__tel-phone { top: 17px; left: 50px; font-size: 31px; }

.ctaHome { padding-top: 40px; }
.ctaHome__copy { text-align: center; margin-bottom: 30px; }
.ctaHome__cta { padding: 150px 43px 0 287px; background-image: url("../img/gd__ctaHome__cta_bg_pc.png"); width: 1162px; height: 337px; }
.ctaHome__tel { margin-top: -52px; }
.ctaHome__tel-phone { top: 76px; left: 100px; font-size: 56px; }

.ctaMain { background-image: url("../img/gd__ctaMain__bg_pc.png"); padding: 10px; margin: 50px 0; width: 760px; height: 435px; }
.ctaMain:last-child { margin-bottom: 0; }
.ctaMain__copy { margin: 30px 0 93px 10px; }
.ctaMain__cta { padding: 0 37px; }
.ctaMain__tel { margin-top: 8px; }
.ctaMain__tel-phone { top: 20px; left: 74px; font-size: 40px; }

.ctaLaptop { background-image: url("../img/gd__ctaLaptop__bg_pc.png"); position: fixed; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; right: 2rem; z-index: 9999; bottom: -25rem; padding: 10.5rem 0 0 2.8rem; }
.ctaLaptop.in { bottom: 0 !important; }
@media only screen and (max-width: 1400px) { .ctaLaptop { display: none; } }
.ctaLaptop__tel { position: relative; margin-bottom: 1rem; }
.ctaLaptop__tel-phone { font-size: 3.2rem; position: absolute; top: -1rem; left: 3.9rem; }

/* Object
******************/
.breadcrumb { font-size: 0.8em; line-height: 1.3; margin: auto; height: 6rem; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; margin: 0 -100rem; padding: 0 100rem; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }
.breadcrumb-wrap { height: 6rem; }
.breadcrumb li { display: inline-block; }
.breadcrumb li:not(:last-child)::after { content: ''; margin: 0 1rem; display: inline-block; font-size: 0.8em; position: relative; background-image: url("../img/gd__breadcrumb__arrow.png"); background-repeat: no-repeat; background-size: contain; width: 0.8rem; height: 1.2rem; top: .1rem; }
.breadcrumb li:first-child::before { margin-right: 0.5em; content: ''; display: inline-block; display: none; background-repeat: no-repeat; background-size: contain; width: 2.2rem; height: 1.8rem; }
.breadcrumb a { text-decoration: underline; color: #1b3f67; }

.contact-form__wrap { border-top: 1px dotted #ccc; }
.contact-form__item { border-bottom: 1px dotted #ccc; display: table; width: 100%; }
.contact-form__item-head { display: table-cell; width: 35%; padding: 2rem 1rem; vertical-align: top; }
.contact-form__item-body { padding: 2rem 1rem; display: table-cell; }
.contact-form input[type="text"], .contact-form input[type='tel'], .contact-form input[type="email"], .contact-form textarea { border: 1px solid #ddd; width: 100%; box-sizing: border-box; padding: 1rem; box-shadow: 0 0 0.2rem rgba(0, 0, 0, 0.1) inset; margin-right: .5em; }
.contact-form input[type="radio"] { display: none; }
.contact-form input[type="text"], .contact-form input[type='tel'], .contact-form input[type="email"] { width: 30rem; }
.contact-form .is_grade input[type="text"] { width: 10rem; }
.contact-form__asterisk { color: #F44336; }
.contact-form__example { font-size: .7em; color: #999; padding-top: .5em; }
.contact-form__btn { text-align: center; margin-top: 3rem; }
.contact-form input[type="submit"] { background-color: #198c91; color: #fff; padding: 1rem 6rem; border-radius: .5rem; font-weight: bold; }

.office-map { position: relative; margin-bottom: 1.5em; }
.office-map__card { background-color: #fff; box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); display: inline-block; z-index: 1; padding: 0.7em 1.4em; border-radius: 5px; font-size: 0.8em; line-height: 1.5; position: absolute; transition: all 0.25s ease; top: 70px; right: 146px; width: 450px; }
.office-map__card::before { content: ""; display: block; width: 1.8em; height: 1.8em; box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); transform: rotate(45deg); position: absolute; background: #fff; bottom: -.8em; left: 0; right: 0; margin: auto; }
.office-map__card::after { content: ""; display: block; width: 4em; height: 2em; position: absolute; bottom: 0; left: 0; right: 0; margin: auto; background: #fff; }
.office-map__card.on { top: 10px; right: 10px; }
.office-map__card.on::after, .office-map__card.on::before { display: none; }
.office-map__card__btn-toggle { display: flex; justify-content: center; align-items: center; position: absolute; top: 4px; right: 4px; width: 1em; height: 1em; font-size: 1.5em; }
.office-map__card__btn-toggle::before { content: "\f00d"; font-family: fontawesome; color: #555; }
.office-map__card__btn-toggle.on::before { content: "\f041"; }
.office-map__card__name { font-size: 1.4em; margin-bottom: 0.1em; }
.office-map__card__name.tokyo { font-size: 1.2em; }
.office-map__card__name.tokyo span { font-size: .8em; }
.office-map__card__name::before { content: ""; display: inline-block; width: 1em; height: 1em; background: url("images/icon-map-logo.png") no-repeat center bottom; background-size: contain; margin-right: 0.4em; }
.office-map__card__address { margin-bottom: 0.5em; }
.office-map__card__btn { color: #3b7c1c; font-weight: bold; }
.office-map__card__btn a::before { content: "\f08e"; font-family: fontawesome; margin-right: 0.5em; }

.info__pic { margin: 3.7rem auto 3.2rem; width: 75.2rem; }
.info__table { width: 100%; line-height: 1.4; margin: 0 0 3rem; }
.info__dl { display: table; width: 100%; font-size: .92em; }
.info__dl:nth-child(2n + 1) { background-color: #f2f4f6; }
.info__dt { display: table-cell; text-align: left; width: 16rem; padding: 1rem 2rem; }
.info__dd { display: table-cell; padding: 1rem 3rem; }
.info__dd p { margin-bottom: 0; }

.category__list { overflow: hidden; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.category__item { width: 26rem; margin: 0 1.5rem 2rem 0; }
.category__item:nth-of-type(3n) { margin-right: 0; }
.category__thumbnail { margin: 0 0 1rem; position: relative; overflow: hidden; width: 26rem; height: 18rem; }
.category__thumbnail img { width: 100%; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; min-height: 18rem; }
.category__time { color: #0f9c2d; font-weight: bold; display: block; margin: 0 0 0.5rem; }
.category__headline { line-height: 1.28; }

.mokuji { font-size: .9em; border: 1px solid #e6e6e6; }
.mokuji__title { background: #0f9c2d; color: #fff; padding: 1rem; position: relative; font-weight: bold; font-size: 1.8rem; }
.mokuji__body { padding: 1rem 3rem; }
.mokuji__button { position: absolute; width: 4rem; height: 100%; top: 0; bottom: 0; right: 0; margin: auto; background: #63cc34; }
.mokuji__button::before, .mokuji__button::after { content: ''; display: block; width: calc(100% - 1rem); height: .2rem; background: #fff; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; }
.mokuji__button::before { transition: all .3s ease; transform: rotate(-90deg); }
.mokuji__button.on::before { transform: rotate(0); }
.mokuji__list { border-bottom: 1px solid #dcdcdc; }
.mokuji__list:last-child { border-bottom: 0; }
.mokuji__list.tagH2 { font-weight: bold; }
.mokuji__list.tagH3 { margin-left: 2rem; }
.mokuji a { background-image: url(../img/ec__sideAbout__arrow_pc.png); background-repeat: no-repeat; color: inherit !important; display: block; background-position: top 1.6rem left 0; transition: all .3s ease; padding: 1.4rem 1rem 1.2rem 3rem; }
.mokuji a:hover { color: #0f9c2d !important; }

.simulation__box { background: #f9f6f0; border-radius: 1rem 1rem 0 0; padding: 4rem 4rem 0; }
.simulation__main { margin: 0 0 2rem; position: relative; width: 100%; line-height: 1.4; height: 58rem; }
.simulation__load { position: absolute; width: 100%; height: 100%; text-align: center; background: #fff; z-index: 10; display: none; top: 0; right: 0; bottom: 0; left: 0; opacity: 0.5; left: -4rem; top: -4rem; width: calc(100% + 8rem); height: calc(100% + 4rem); }
.simulation__load-box { width: 12.8rem; height: 12.8rem; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; }
.simulation__before { top: 0; left: 0; position: absolute; height: 50rem; width: 100%; }
.simulation__line { border-top: 1px solid rgba(87, 58, 52, 0.1); margin: 2rem 0 3.3rem; }
.simulation__after { display: none; top: 0; left: 0; height: 50rem; width: 100%; position: absolute; }
.simulation__headline { color: #1b3f67; font-weight: bold; background-repeat: no-repeat; border-bottom: .2rem solid #d7d7d7; font-size: 2.8rem; padding: .7rem 0 .8rem 5.5rem; margin: 0 0 2rem; }
.simulation__headline.n1 { background-image: url("../img/gd__simulation__kazoku.png"); }
.simulation__headline.n2 { background-image: url("../img/gd__simulation__zaisan.png"); }
.simulation__input { padding: 1rem; overflow: hidden; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }
.simulation__input label { display: inline-block; padding-left: 2.5rem; margin-right: 2rem; position: relative; }
.simulation__input label::before { content: ''; display: block; background: #fff; border-radius: 50%; position: absolute; top: 0; bottom: 0; left: 0; margin: auto; box-shadow: -0.1rem -0.1rem 0.3rem rgba(0, 0, 0, 0.2); width: 1.8rem; height: 1.8rem; }
.simulation__input label.on::after { content: ''; display: block; background: #1b3f67; border-radius: 50%; position: absolute; top: 0; bottom: 0; left: 0.3rem; margin: auto; width: 1.2rem; height: 1.2rem; }
.simulation__input select { background: #fff; border-radius: 0.4rem; border: 1px solid #e5e5e5; width: 8rem; height: 4rem; }
.simulation__input input[type="number"] { background: #fff; border-radius: 0.4rem; margin-right: 1rem; border: 1px solid #e5e5e5; padding: 0.5rem; width: 18rem; font-size: 2.2rem; }
.simulation__input dt { width: 8rem; font-weight: bold; }
.simulation__btnbox { background-color: #ffeed6; padding: 3rem 5rem; margin: 0 -4rem; }
.simulation__btnbox.start { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; }
.simulation__btn-s { background-image: url("../img/gd__simulation__btn-s.png"); background-size: contain; color: transparent; background-color: transparent; width: 40rem; height: 7.3rem; }
.simulation__btn-r { background-image: url("../img/gd__simulation__btn-r.png"); background-size: contain; color: transparent; background-color: transparent; display: block; width: 34.5rem; height: 7.3rem; }
.simulation__btn-c { background-image: url("../img/gd__simulation__btn-c.png"); background-size: contain; color: transparent; background-color: transparent; display: block; width: 31.2rem; height: 7.4rem; }
.simulation__radio { display: none; }
.simulation__result { position: relative; background: #fff; text-align: center; font-weight: bold; color: #4f4231; padding: 4.5rem 0 0; height: 32rem; border: 0.5rem solid #1b3f67; }
.simulation__result-gaku { position: relative; color: #1b3f67; font-size: 4.2rem; }
.simulation__result-en { font-size: 4.9rem; }
.simulation__result-color { color: #f58d4a; font-size: 7.2rem; }
.simulation__result-text { color: #4c4c4c; font-size: 2.3rem; }
.simulation__message { font-weight: bold; text-align: center; color: #4c4c4c; font-size: 2.3rem; height: 14rem; padding-top: 2rem; }
.simulation__cta { padding: 2rem 0; }
.simulation__menseki { font-size: 1rem; margin-top: 4rem; }
.simulation__menseki-title { color: #1f4a79; font-size: 1.2em; font-weight: bold; }
.simulation__error { color: #D22F2F; font-size: 0.8em; opacity: 0; transition: all 0.3s ease; }

.post-intro { background-image: url("../img/gd__pattern2.png"); background-repeat: repeat; border: 0.2rem solid #1b3f67; position: relative; margin: 0 0 20px; padding: 30px; }
.post-intro::after { content: ''; display: block; position: absolute; bottom: -2px; right: -2px; border: 10px solid #fff; border-top: 10px solid #1b3f67; border-left: 10px solid #1b3f67; }
.post-intro__title { color: #fff; position: relative; background-color: #1b3f67; background-image: url("../img/gd__post-h1__bg.png"), -moz-linear-gradient(-45deg, #1b3f67 0%, #1b3f67 50%, #1f4a79 50%, #1f4a79 100%); background-image: url("../img/gd__post-h1__bg.png"), -webkit-linear-gradient(-45deg, #1b3f67 0%, #1b3f67 50%, #1f4a79 50%, #1f4a79 100%); background-image: url("../img/gd__post-h1__bg.png"), linear-gradient(135deg, #1b3f67 0%, #1b3f67 50%, #1f4a79 50%, #1f4a79 100%); z-index: 2; font-size: 2.8rem; padding: 1.5rem 1rem 1.3rem 4rem; margin-bottom: 3rem; background-position: center right 2rem, top left; padding-top: 10px; padding-left: 20px; }
.post-intro__title::before { content: ''; display: block; width: .8rem; height: calc(100% - 4rem); background: #0c71a8; background: -moz-linear-gradient(top, #0c71a8 0%, #0c71a8 50%, #1982bb 50%, #1982bb 100%); background: -webkit-linear-gradient(top, #0c71a8 0%, #0c71a8 50%, #1982bb 50%, #1982bb 100%); background: linear-gradient(to bottom, #0c71a8 0%, #0c71a8 50%, #1982bb 50%, #1982bb 100%); position: absolute; top: 0; bottom: 0; left: 1.5rem; margin: auto; }
.post-intro__title::after { content: ''; display: block; position: absolute; left: 0; width: 100%; height: 0.2rem; background-color: #1b3f67; top: -0.5rem; }
.post-intro__title::before { display: none; }
.post-intro__label { font-size: 0.4em; color: #fff; background-color: #1982bb; text-align: center; font-weight: bold; display: inline-block; padding: 5px 30px 5px; margin-right: 10px; font-size: 16px; }
.post-intro__name { font-weight: bold; display: inline-block; position: relative; font-size: 25px; top: 5px; }
.post-intro__ruby { display: inline-block; position: relative; font-size: 15px; top: 2px; }
.post-intro__intro-box { margin-bottom: 30px; }
.post-intro__intro-career { width: 490px; }
.post-intro__intro-career-head { border-bottom: 0.2rem solid #1b3f67; position: relative; font-weight: bold; font-size: 18px; padding: 0 0 4px 40px; }
.post-intro__intro-career-head .icn { top: 0; left: 0; }
.post-intro__intro-career-body { position: relative; border-bottom: 0.1rem dotted #e8e8e8; font-size: 1.4rem; }
.post-intro__intro-career-body .career-item { border-bottom: .1rem solid #ccc; padding: 12px 10px 10px; }
.post-intro__intro-body { border-radius: 5px; border: 3px solid #1b3f67; padding: 10px; }
.post-intro__intro-text { background-color: #f1f7f7; padding: 20px 30px; }

.pagenation { display: flex; align-items: center; flex-wrap: wrap; justify-content: center; gap: .8rem; margin-top: 3rem; line-height: 1; }

.page-numbers { align-items: center; background-color: #fff; border: 0.1rem solid #1b3f67; box-sizing: border-box; color: #1b3f67; display: inline-flex; font-weight: bold; justify-content: center; letter-spacing: 0; line-height: 1; min-width: 3.6rem; height: 3.6rem; padding: 0 .9rem; text-align: center; text-decoration: none; transition: background-color .2s ease, border-color .2s ease, color .2s ease; }
.page-numbers:hover { background-color: #e1eaf3; color: #1b3f67; opacity: 1; }
.page-numbers.current { background-color: #1b3f67; border-color: #1b3f67; color: #fff; }
.page-numbers.dots { background-color: transparent; border-color: transparent; color: #777; min-width: 2rem; padding: 0 .2rem; }
.page-numbers.prev, .page-numbers.next { background-color: #1f4a79; border-color: #1f4a79; color: #fff; min-width: 5.8rem; }
.page-numbers.prev:hover, .page-numbers.next:hover { background-color: #1982bb; border-color: #1982bb; color: #fff; }

.case-jiko__item { border: .1rem solid #c9caca; box-shadow: 0 0.1rem 0.1rem 0.1rem rgba(0, 0, 0, 0.1); position: relative; margin-bottom: 3rem; padding: 3rem 3rem 2.8rem; }
.case-jiko__item::after { content: ''; display: block; position: absolute; bottom: 0; right: 0; -webkit-transform: rotate(45deg); transform: rotate(45deg); border: .8rem solid transparent; border-left: 0.8rem solid #1b3f67; }
.case-jiko__header { position: relative; border-bottom: .1rem solid #efefef; padding-left: 9.5rem; padding-bottom: 2rem; margin-bottom: 2rem; }
.case-jiko__header-label { display: inline-block; text-align: center; color: #fff; font-weight: bold; font-size: 1.2rem; padding: .5rem 1rem; min-width: 8rem; }
.case-jiko__header-label.is-parts { background-color: #1982bb; }
.case-jiko__header-label.is-grade { background-color: #1f4a79; }
.case-jiko__header-title { margin-bottom: 1rem; font-size: 2rem; }
.case-jiko__header-pic { position: absolute; top: 0; left: 0; }
.case-jiko__body { margin: 2rem 0 0; }
.case-jiko__table { border: .1rem solid #dedede; display: table; width: 100%; font-weight: bold; text-align: center; font-family: 'Oswald','メイリオ' , Meiryo , "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro",Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
.case-jiko__table-before { display: table-cell; background-color: #dedede; color: #1b3f67; position: relative; vertical-align: middle; width: 50%; padding: 3rem; }
.case-jiko__table-before::after { content: ''; display: block; position: absolute; top: 0; bottom: 0; height: 0; width: 0; margin: auto; right: -1rem; border: 1rem solid transparent; border-left: 1rem solid #dedede; border-right: 0; }
.case-jiko__table-after { display: table-cell; vertical-align: middle; padding: 3rem; }
.case-jiko__table-label { color: #1b3f67; }
.case-jiko__table-label.is-before { margin-bottom: 1rem; }
.case-jiko__table-label.is-after { position: relative; top: -.8rem; margin-right: .8rem; display: inline-block; }
.case-jiko__table .hoken { font-size: 3.8rem; }
.case-jiko__table .bengo { color: #cb1919; display: inline-block; font-size: 5.2rem; }
.case-jiko__table small { margin-left: .5rem; font-size: 1.8rem; }

.case-sozoku { position: relative; background-image: url("../img/gd__pattern2.png"), url("../img/gd__case-sozoku__mark_pc.png"); background-repeat: repeat, no-repeat; background-position: left top, top -1rem right -1rem; border: 0.2rem solid #1b3f67; margin: 0 0 2rem; padding: 3rem; }
.case-sozoku::after .case-sozoku:last-child { margin-bottom: 0; }
.case-sozoku::before { display: block; background-image: url("../img/gd__case-sozoku__mark_pc.png"); position: absolute; background-size: contain; width: 11.5rem; height: 11.5rem; top: -1rem; right: -1rem; }
.case-sozoku::after { content: ""; display: block; height: 0; width: 0; bottom: -.2rem; right: -.2rem; position: absolute; border: 1rem solid #fff; border-top: 1rem solid #1b3f67; border-left: 1rem solid #1b3f67; }
.case-sozoku__header { padding-left: 12rem; min-height: 11rem; margin: 0 0 2rem; }
.case-sozoku__headline { font-size: 2.2rem; }
.case-sozoku__category { background-color: #e1eaf3; color: #fff; display: inline-block; line-height: 1; text-align: center; padding: 0.5rem 1rem; min-width: 10rem; margin: 0 0 1rem; }
.case-sozoku__chara { top: 0; left: 0; }
.case-sozoku__chara-text { text-align: center; padding-top: 1rem; font-size: 1.2rem; }
.case-sozoku__table { border: 1px solid #dce1e6; line-height: 1.4; font-size: 1.5rem; }
.case-sozoku td, .case-sozoku th { padding: 1rem 2rem; }
.case-sozoku__tr { border-bottom: 1px solid #dce1e6; }
.case-sozoku__th { background-color: #f3eeda; width: 21.5rem; }
.case-sozoku__td { background-color: #fff; }

/* Cta
******************/
.info__time { line-height: 1.5rem; }
.info__time i { margin-right: 0.5rem; }
.info__time small { font-size: 0.8em; margin-left: 0.5rem; }

.ctaHeader__banner { margin-top: 10px; margin-right: 15px; }
.ctaHeader__tel { margin-right: 20px; }
.ctaHeader__tel-phone { top: 17px; left: 50px; font-size: 31px; }

.ctaLaptop { background-image: url("../img/gd__ctaLaptop__bg_pc.png"); position: fixed; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; right: 2rem; z-index: 9999; bottom: -25rem; padding: 10.5rem 0 0 2.8rem; }
.ctaLaptop.in { bottom: 0 !important; }
@media only screen and (max-width: 1400px) { .ctaLaptop { display: none; } }
.ctaLaptop__tel { position: relative; margin-bottom: 1rem; }
.ctaLaptop__tel-phone { font-size: 3.2rem; position: absolute; top: -1rem; left: 3.9rem; }

.ctaSide { padding: 10px; margin-left: -10px; padding-left: 32px; background-image: url("../img/gd__ctaSide__bg_pc.png"); width: 251px; height: 322px; }
.ctaSide__tel { margin-top: 180px; margin-bottom: 12px; }
.ctaSide__tel-phone { font-size: 26px; top: -5px; left: 38px; }

.ctaMain { background-image: url("../img/gd__ctaMain__bg_pc.png"); padding: 10px; margin: 50px 0; width: 760px; height: 435px; }
.ctaMain:last-child { margin-bottom: 0; }
.ctaMain__copy { margin: 30px 0 93px 10px; }
.ctaMain__cta { padding: 0 37px; }
.ctaMain__tel { margin-top: 8px; }
.ctaMain__tel-phone { top: 20px; left: 74px; font-size: 40px; }

.sodan { background-color: #f1f7f7; margin-top: 3rem; padding: 1rem; }
.sodan__title { margin: -3rem -1rem 0; }
.sodan__body { border-radius: 0.5rem; position: relative; margin-top: -14rem; padding: 3rem; }

.points__title { color: #fff; position: relative; background-color: #1b3f67; z-index: 2; font-size: 2.8rem; padding: 1.1rem 1rem 1rem 8rem; margin-bottom: 3rem; }
.points__title::after { content: ''; display: block; position: absolute; top: -.5rem; left: 0; width: 100%; height: 0.2rem; background-color: #1b3f67; }
.points__title .icn { position: absolute; top: -.2rem; left: 1.5rem; }

.atbarai-jiko { background-color: #11447b; padding: 10px 3px 3px; }
.atbarai-jiko__title { margin: -20px -3px -10px; }
.atbarai-jiko__inner { padding: 30px 28px 0; }
.atbarai-jiko__text:nth-child(1) { margin-bottom: 20px; }
.atbarai-jiko__box { padding: 40px; margin: 0 -28px; }
.atbarai-jiko__box-head { text-align: center; margin-bottom: 30px; }

.tsuyomi-jiko { padding: 10px 30px 30px; }
.tsuyomi-jiko__title { margin-top: 20px; margin-bottom: 20px; }
.tsuyomi-jiko__desc { position: relative; padding: 30px; margin: 0 0 30px; }
.tsuyomi-jiko__list-item { border-radius: 5px; box-shadow: 0 2px 0 #d9d9d9; border: 1px solid #f2f2f2; padding: 30px; margin: 0 0 30px; }
.tsuyomi-jiko__list-head { position: relative; border-top: 1px solid #d9dcdb; border-bottom: 1px solid #d9dcdb; color: #1f4a79; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; font-size: 21px; height: 83px; padding-left: 80px; margin: 0 0 20px; }
.tsuyomi-jiko__list-head .icn { top: 0; left: 0; }
.tsuyomi-jiko__list-pic { float: right; margin: 0 0 10px 10px; }

.icn { position: absolute; }

.small-box-jiko { border: 0.4rem solid #1b3f67; border-radius: 5px; }
.small-box-jiko__head { background-color: #fff; }
.small-box-jiko__body { background-color: #f1f7f7; padding: 30px; }

.flow-jiko__step { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
.flow-jiko__step-item { position: relative; border: 0.1rem solid #c9caca; width: 23.7rem; }
.flow-jiko__step-item:not(:last-child)::after { content: ''; display: block; position: absolute; top: 200px; right: -30px; border: 10px solid transparent; border-left: 10px solid #1b3f67; }
.flow-jiko__step-head { text-align: center; margin: 20px 20px 10px; }
.flow-jiko__step-body { font-size: 0.9em; margin: 0 20px 20px; }

.support-jiko__step-item { position: relative; }
.support-jiko__step-item:not(:last-child) { margin: 0 0 20px; }
.support-jiko__step-item-inner { overflow: hidden; position: relative; padding-left: 320px; }
.support-jiko__step-head { border-bottom: 1px solid #ccc; font-size: 2rem; padding: 10px 0 12px 50px; margin: 0 0 20px; }
.support-jiko__step-head .icn { top: 0; left: 0; z-index: 100; }
.support-jiko__step-pic { position: absolute; top: 0; left: 0; z-index: 20; }
.support-jiko__step-point { line-height: 1.4; font-weight: bold; position: relative; padding-top: 30px; padding-left: 93px; margin: 0 0 15px; }
.support-jiko__step-point .icn { top: 0; left: 0; }
.support-jiko__arrow { margin-top: 20px; margin-bottom: 20px; }

.office__pic { margin: 0 0 20px; }
.office__map-head { background-color: #f1f7f7; position: relative; z-index: 1; overflow: hidden; font-size: 2rem; margin-top: 4rem; margin-bottom: 2rem; padding: 1rem 1rem .8rem 4rem; line-height: 1.4; }
.office__map-head::before { content: ''; display: block; position: absolute; background-color: #1f4a79; border-radius: 100%; top: 1.8rem; left: 1.5rem; width: 1rem; height: 1rem; }
.office__map-body { margin: 0 0 20px; }
.office__table { width: 100%; line-height: 1.6; font-size: 0.92em; }
.office__table dd, .office__table dt { display: table-cell; padding: 12px 20px 10px; }
.office__table dl { display: table; width: 100%; border-bottom: 1px dotted #ccc; }
.office__table dl:first-child { border-top: 1px dotted #ccc; }
.office__table dt { background-color: #d0d0d05e; width: 30%; }
.office__table dd { background-color: #fff; }

.sideBtn-jiko { background-color: #f0f5f2; padding: 10px 6px; }

.sideAccess-jiko { border: 1px solid #e6e6e6; padding: 10px; }
.sideAccess-jiko__inner { padding-top: 15px; width: 200px; }
.sideAccess-jiko__pic { margin-bottom: 15px; }
.sideAccess-jiko__tel { position: relative; margin: 0 0 15px; }
.sideAccess-jiko__tel-phone { top: 21px; left: 37px; font-size: 28px; }
.sideAccess-jiko__station { line-height: 1.4; font-size: 14px; }
.sideAccess-jiko__station-head { border: 2px solid #1f4a79; color: #1f4a79; font-weight: bold; font-size: .8em; border-radius: 3px; padding: 1px 8px; display: inline-block; margin-bottom: 6px; }
.sideAccess-jiko__station-body { font-size: .92em; margin: 0 0 10px; }
.sideAccess-jiko__address { font-size: 0.9em; line-height: 1.4; margin: 0 0 10px; }

.fvReasonJiko { padding: 2.7rem 0 4rem; }
.fvReasonJiko__copy { text-align: center; margin-bottom: 2rem; }
.fvReasonJiko__list { width: 1040px; margin: auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }

.fvTroubleJiko { padding: 3rem 0 3rem; }
.fvTroubleJiko__inner { padding: 1rem 0 3.6rem; }
.fvTroubleJiko__copy { text-align: center; margin-bottom: 3rem; position: relative; }
.fvTroubleJiko__list { margin: 0 0 3rem; padding: 3rem 0; }
.fvTroubleJiko__list-item { position: relative; }
.fvTroubleJiko__list-item:not(:nth-child(3n))::after { content: ''; display: block; position: absolute; top: 0; bottom: 0; margin: auto; right: 0; width: .1rem; height: 100%; background-color: #e2e2e2; }
.fvTroubleJiko__banner { text-align: center; }

/*# sourceMappingURL=laptop.css.map */
