@charset "UTF-8";
/*------------------------------------------------------------
	Wordpress WP Page Navi
------------------------------------------------------------*/
.wp-pagenavi a, .wp-pagenavi span { padding: 0 !important; margin: 0 0 0 -1px !important; border: none !important; }

/*------------------------------------------------------------
	Wordpress MW WP Form
------------------------------------------------------------*/
.view-preview-visible { display: none !important; }

.mw_wp_form_preview .view-preview-visible { display: inline-block !important; }

.mw_wp_form_preview .view-preview-hidden { display: none !important; }

.mw_wp_form_preview dl dd { padding-top: 11px; }

@media screen and (max-width: 767px) { .mw_wp_form_preview dl dd { padding-top: 0; } }

.contact .func-error { display: none; }

/*------------------------------------------------------------
	Wordpress Breadcrumb NavXT
------------------------------------------------------------*/
.c-breadcrumbs li.current-item { display: inline-block; vertical-align: middle; width: 500px; white-space: nowrap; overflow: hidden; -o-text-overflow: ellipsis; text-overflow: ellipsis; margin-top: 0; }

@media screen and (max-width: 767px) { .c-breadcrumbs li.current-item { width: 200px; margin-top: 5px; } }

/*------------------------------------------------------------
	Top page
------------------------------------------------------------*/
.c-mainvisual { height: 600px; text-align: center; position: relative; }

@media screen and (max-width: 767px) { .c-mainvisual { height: 330px; } }

.c-mainvisual .img { width: 100%; height: 600px; position: absolute; top: 0; left: 0; }

@media screen and (max-width: 767px) { .c-mainvisual .img { height: 330px; } }

.c-mainvisual .img img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

.c-mainvisual h2 { text-align: center; font-size: 4.6rem; font-weight: bold; color: #fff; line-height: 72px; z-index: 999; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .c-mainvisual h2 { font-size: 2rem; line-height: 32px; } }

.c-mainvisual .swiper-container { width: 100%; height: 100%; margin-left: auto; margin-right: auto; }

.c-mainvisual .swiper-slide { text-align: center; font-size: 18px; background: #fff; /* Center slide text vertically */ display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center; }

.c-technique { color: #fff; background: #012458 url(../img/top/icon_zyushi01.png) no-repeat top center; background-size: 190px auto; padding: 153px 0 150px; position: relative; margin-top: -1px; }

@media screen and (max-width: 767px) { .c-technique { background: #012458 url(../img/top/icon_zyushi01.png) no-repeat top center; background-size: 95px auto; padding: 65.5px 0 75px; overflow: hidden; } }

.c-technique:before { content: ""; background: url(../img/top/img_chemistry01.png) no-repeat left top; background-size: 307px auto; width: 307px; height: 285px; position: absolute; top: 0; left: 0; }

@media screen and (max-width: 767px) { .c-technique:before { background: url(../img/top/img_chemistry01.png) no-repeat left top; background-size: 138.5px auto; width: 138.5px; height: 128.5px; top: -18px; left: -5px; } }

.c-technique:after { content: ""; background: url(../img/top/img_chemistry02.png) no-repeat right bottom; background-size: 285px auto; width: 285px; height: 304px; position: absolute; right: 0; bottom: 0; }

@media screen and (max-width: 767px) { .c-technique:after { background: url(../img/top/img_chemistry02.png) no-repeat right bottom; background-size: 139px auto; width: 139px; height: 136px; } }

.c-technique .title { text-align: center; margin-bottom: 59.3px; }

@media screen and (max-width: 767px) { .c-technique .title { margin-bottom: 30px; } }

.c-technique .title h3 { font-size: 3rem; line-height: 40px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .c-technique .title h3 { font-size: 1.7rem; line-height: 21px; } }

.c-technique .title p { font-size: 1.5rem; line-height: 20px; margin-top: 19.6px; padding-bottom: 52.2px; position: relative; letter-spacing: 0.25em; }

@media screen and (max-width: 767px) { .c-technique .title p { font-size: 1rem; line-height: 13px; margin-top: 12px; padding-bottom: 28.5px; } }

.c-technique .title p:after { content: ""; width: 60px; border: 1px solid #707070; height: 2px; background: #fff; position: absolute; bottom: 0; left: 0; right: 0; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) { .c-technique .title p:after { width: 30px; border: none; } }

.c-technique ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-wrap: wrap; flex-wrap: wrap; }

@media screen and (max-width: 767px) { .c-technique ul { width: 298px; margin: auto; } }

.c-technique ul li { width: 210px; margin: 0 42.5px; }

@media screen and (max-width: 767px) { .c-technique ul li { width: 125px; margin: 0 12px 45px; }
  .c-technique ul li:last-child { margin-bottom: 0; } }

.c-technique ul li .img { width: 170px; margin: auto; }

@media screen and (max-width: 767px) { .c-technique ul li .img { width: 112px; } }

.c-technique ul li .img img { width: 100%; }

.c-technique ul h4 { font-size: 2.2rem; margin: 25.4px 0 18px; text-align: center; line-height: 30px; }

@media screen and (max-width: 767px) { .c-technique ul h4 { font-size: 1.5rem; margin: 17px 0 16.5px; line-height: 19px; } }

.c-technique ul .txt { font-size: 1.7rem; line-height: 28px; font-weight: 400; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .c-technique ul .txt { font-size: 1.2rem; line-height: 19px; } }

.c-case { overflow: hidden; }

.c-case .list-icon { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-bottom: 64.8px; }

@media screen and (max-width: 767px) { .c-case .list-icon { margin-bottom: 33px; } }

.c-case .list-icon li { margin: 0 72.5px; }

@media screen and (max-width: 767px) { .c-case .list-icon li { margin: 0 27.5px; width: 51.5px; }
  .c-case .list-icon li:nth-child(2) { width: 50px; } }

.c-case .title { text-align: center; margin-bottom: 60px; color: #012458; }

@media screen and (max-width: 767px) { .c-case .title { margin-bottom: 30px; } }

.c-case .title h3 { font-size: 3rem; line-height: 40px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .c-case .title h3 { font-size: 1.7rem; line-height: 21px; } }

.c-case .title p { font-size: 1.5rem; line-height: 20px; margin-top: 19.6px; padding-bottom: 52.2px; position: relative; letter-spacing: 0.25em; }

@media screen and (max-width: 767px) { .c-case .title p { font-size: 1rem; line-height: 13px; margin-top: 12px; padding-bottom: 28.5px; } }

.c-case .title p:after { content: ""; width: 60px; border: 1px solid #012458; height: 2px; background: #012458; position: absolute; bottom: 0; left: 0; right: 0; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) { .c-case .title p:after { width: 30px; border: none; } }

@media screen and (max-width: 767px) { .c-case .list-case { padding: 0 30px; } }

@media screen and (max-width: 320px) { .c-case .list-case { padding: 0 15px; } }

.c-case .list-case li { background: #F2F2F2; display: -webkit-box; display: -ms-flexbox; display: flex; margin: 0 auto 30px; width: 830px; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; position: relative; }

@media screen and (max-width: 767px) { .c-case .list-case li { width: 100%; margin: 0 auto 20px; -webkit-box-align: center; -ms-flex-align: center; align-items: center; } }

.c-case .list-case li a { text-decoration: none; color: #333; }

.c-case .list-case li a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

.c-case .list-case li .img { width: 270px; height: 180px; }

@media screen and (max-width: 767px) { .c-case .list-case li .img { height: 90px; -webkit-box-flex: 0; -ms-flex: 0 0 115px; flex: 0 0 115px; width: 115px; } }

.c-case .list-case li .img img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

.c-case .list-case li .right { padding: 24px; width: 560px; }

@media screen and (max-width: 767px) { .c-case .list-case li .right { padding: 0 14px; -webkit-box-flex: 1; -ms-flex: 1 1 100%; flex: 1 1 100%; width: auto; } }

@media screen and (max-width: 320px) { .c-case .list-case li .right { padding: 0 5px; } }

.c-case .list-case li .category { font-size: 1.2rem; color: #fff; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .c-case .list-case li .category { font-size: 1rem; } }

.c-case .list-case li .category span { display: block; float: left; padding: 3px 12px 0; margin-right: 8px; line-height: 19px; }

@media screen and (max-width: 767px) { .c-case .list-case li .category span { padding: 2px 5px 0; margin-right: 6.5px; line-height: 16px; } }

.c-case .list-case li .category .grey { background: #848484; }

.c-case .list-case li .category .blue { background: #028ABC; }

.c-case .list-case li .category .orange { background: #F39700; }

.c-case .list-case li h4 { font-size: 2.2rem; color: #012458; margin: 13px 0 15px; }

@media screen and (max-width: 767px) { .c-case .list-case li h4 { font-size: 1.2rem; margin: 8px 0 0; line-height: 21px; font-weight: normal; } }

.c-case .list-case li .txt { font-size: 1.7rem; letter-spacing: 0.05em; line-height: 28px; }

@media screen and (max-width: 767px) { .c-case .list-case li .txt { display: none; } }

.c-case .list-case li .txt a { color: #000; text-decoration: none; }

.c-case .bnt { margin-top: 80px; text-align: center; }

@media screen and (max-width: 767px) { .c-case .bnt { margin-top: 50px; } }

.c-case .bnt a { text-decoration: none; margin: auto; color: #fff; font-size: 1.8rem; font-weight: bold; display: block; height: 70px; line-height: 67px; border: 2px solid #012458; width: 400px; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 20px center; background-size: 8.67px auto; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (min-width: 768px) { .c-case .bnt a:hover { background: #fff url(../img/top/icon_arrow_st-b.png) no-repeat right 20px center; background-size: 8.67px auto; color: #012458; } }

@media screen and (max-width: 767px) { .c-case .bnt a { font-size: 1.2rem; height: 40px; line-height: 40px; width: 229px; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 18px center; background-size: 6px auto; } }

.c-strength { background: url(../img/top/bg_tsuyomi.jpg) no-repeat center center; background-size: cover; padding: 94.2px 0 120px; margin-top: 155px; text-align: center; }

@media screen and (max-width: 767px) { .c-strength { margin-top: 75px; padding: 38px 15px 60px; background: url(../img/top/bg_tsuyomi_sp.png) no-repeat center center; background-size: cover; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

@media screen and (max-width: 320px) { .c-strength { padding: 38px 15px 60px; } }

.c-strength .title { text-align: center; margin-bottom: 72.2px; color: #fff; }

@media screen and (max-width: 767px) { .c-strength .title { margin-bottom: 28.5px; } }

.c-strength .title h3 { font-size: 3rem; line-height: 40px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .c-strength .title h3 { font-size: 1.7rem; line-height: 21px; } }

.c-strength .title p { font-size: 1.5rem; line-height: 20px; margin-top: 19.6px; }

@media screen and (max-width: 767px) { .c-strength .title p { font-size: 1rem; line-height: 13px; margin-top: 10.4px; } }

.c-strength ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 767px) { .c-strength ul { width: 315px; margin: 0px auto 0; } }

@media screen and (max-width: 320px) { .c-strength ul { width: 290px; } }

.c-strength ul li { width: 290px; height: 200px; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-bottom: 30px; background: #fff url(../img/top/icon_arrow_st-b.png) no-repeat right 27.8px center; background-size: 12.65px auto; position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (max-width: 767px) { .c-strength ul li { width: 150px; height: 95px; margin-bottom: 15px; background: #fff url(../img/top/icon_arrow_st-b.png) no-repeat right 15px center; background-size: 6px auto; } }

@media screen and (max-width: 320px) { .c-strength ul li { width: 140px; height: 85px; margin-bottom: 10px; } }

.c-strength ul li .img { width: 90px; height: 90px; margin: 0 auto 6px auto; position: relative; top: -7px; }

@media screen and (max-width: 767px) { .c-strength ul li .img { width: 45px; height: 45px; top: 0; } }

.c-strength ul li .img img { display: block; width: 100%; position: absolute; top: 0; left: 0; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.c-strength ul li .img .img_on { opacity: 0; }

.c-strength ul li .img .img_off { opacity: 1; }

.c-strength ul li a { text-decoration: none; color: #012458; line-height: 30px; font-size: 2.2rem; font-weight: bold; }

.c-strength ul li a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

@media screen and (max-width: 767px) { .c-strength ul li a { line-height: 18px; font-size: 1.4rem; } }

@media screen and (min-width: 768px) { .c-strength ul li:hover { background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 27.8px center; background-size: 12.65px auto; }
  .c-strength ul li:hover a { color: #fff; }
  .c-strength ul li:hover .img .img_on { opacity: 1; }
  .c-strength ul li:hover .img .img_off { opacity: 0; } }

.c-box { background: url(../img/top/bg_shisaku_pc.jpg) no-repeat center center; background-size: cover; padding: 80.8px 0 80px; text-align: center; }

@media screen and (max-width: 767px) { .c-box { background: url(../img/top/bg_shisaku_sp.jpg) no-repeat center center; background-size: cover; padding: 40.4px 30px 74px; } }

@media screen and (max-width: 320px) { .c-box { padding: 40.4px 15px 74px; } }

.c-box .title { text-align: center; color: #FFF; margin-bottom: 59.3px; }

@media screen and (max-width: 767px) { .c-box .title { margin-bottom: 30px; } }

.c-box .title h3 { font-size: 3rem; line-height: 40px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .c-box .title h3 { font-size: 1.7rem; line-height: 21px; } }

.c-box .title p { font-size: 1.5rem; line-height: 20px; margin-top: 19.6px; padding-bottom: 52.2px; position: relative; letter-spacing: 0.25em; }

@media screen and (max-width: 767px) { .c-box .title p { font-size: 1rem; line-height: 13px; margin-top: 12px; padding-bottom: 28.5px; } }

.c-box .title p:after { content: ""; width: 60px; border: 1px solid #FFF; height: 2px; background: #fff; position: absolute; bottom: 0; left: 0; right: 0; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) { .c-box .title p:after { width: 30px; border: none; } }

.c-box .txt { width: 670px; margin: auto; font-size: 1.7rem; color: #fff; line-height: 28px; }

@media screen and (max-width: 767px) { .c-box .txt { width: 100%; font-size: 1.2rem; line-height: 20px; } }

.c-box .bnt { width: 400px; margin: 40px auto 0; }

@media screen and (max-width: 767px) { .c-box .bnt { width: 229px; margin: 30px auto 0; } }

.c-box .bnt a { font-size: 1.8rem; text-decoration: none; color: #fff; font-weight: bold; display: block; height: 70px; line-height: 67px; border: 2px solid #fff; background: url(../img/top/icon_arrow_st-w.png) no-repeat right 20.8px center; background-size: 8.67px auto; text-align: center; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (min-width: 768px) { .c-box .bnt a:hover { background: #fff url(../img/top/icon_arrow_st-b.png) no-repeat right 20.8px center; background-size: 8.67px auto; color: #012458; border: 2px solid #fff; } }

@media screen and (max-width: 767px) { .c-box .bnt a { font-size: 1.2rem; height: 40px; line-height: 40px; background: url(../img/top/icon_arrow_st-w.png) no-repeat right 13px center; background-size: 6px auto; } }

.c-information { background: #EDEDED; padding: 90px 0; }

@media screen and (max-width: 767px) { .c-information { padding: 40px 30px; } }

@media screen and (max-width: 320px) { .c-information { padding: 40px 15px; } }

.c-information .inner { background: #fff; padding: 54.2px 140px 80px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .c-information .inner { padding: 28px 33px 40px; } }

.c-information .title { text-align: center; margin-bottom: 41px; color: #012458; }

@media screen and (max-width: 767px) { .c-information .title { margin-bottom: 30px; } }

.c-information .title h3 { font-size: 3rem; line-height: 40px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .c-information .title h3 { font-size: 1.7rem; line-height: 21px; } }

.c-information .title p { font-size: 1.5rem; line-height: 20px; margin-top: 19.6px; padding-bottom: 48.2px; position: relative; letter-spacing: 0.25em; }

@media screen and (max-width: 767px) { .c-information .title p { font-size: 1rem; line-height: 13px; margin-top: 11.4px; padding-bottom: 28.5px; } }

.c-information .title p:after { content: ""; width: 60px; border: 1px solid #012458; height: 2px; background: #012458; position: absolute; bottom: 0; left: 0; right: 0; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) { .c-information .title p:after { width: 30px; border: none; } }

.c-information li { margin-bottom: 50px; position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .c-information li:hover a { opacity: 0.5; }
  .c-information li a { -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }
  .c-information li a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; } }

@media screen and (max-width: 767px) { .c-information li { margin-bottom: 27px; } }

.c-information li a { text-decoration: none; color: #000; font-size: 1.7rem; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .c-information li a { font-size: 1.2rem; line-height: 16px; } }

.c-information .bnt { text-align: center; }

@media screen and (max-width: 767px) { .c-information .bnt { margin-top: 30px; } }

.c-information .bnt a { text-decoration: none; margin: auto; color: #fff; font-size: 1.8rem; font-weight: bold; display: block; height: 70px; line-height: 67px; border: 2px solid #012458; width: 400px; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 20px center; background-size: 8.67px auto; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (min-width: 768px) { .c-information .bnt a:hover { background: #fff url(../img/top/icon_arrow_st-b.png) no-repeat right 20px center; background-size: 8.67px auto; color: #012458; } }

@media screen and (max-width: 767px) { .c-information .bnt a { font-size: 1.2rem; height: 40px; line-height: 40px; width: 229px; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 18px center; background-size: 6px auto; } }

.date-category { margin-bottom: 19.7px; }

@media screen and (max-width: 767px) { .date-category { margin-bottom: 13px; } }

.date-category span { float: left; letter-spacing: 0.05em; }

.date-category .date { font-size: 1.7rem; line-height: 21px; margin-right: 20px; }

@media screen and (max-width: 767px) { .date-category .date { font-size: 1.2rem; line-height: 15px; margin-right: 10px; } }

.date-category .ca { color: #fff; height: 21px; line-height: 19px; font-size: 1.2rem; margin-right: 25px; padding: 1px 4px 0px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; position: relative; top: -1px; }

@media screen and (max-width: 767px) { .date-category .ca { height: 16px; line-height: 15px; font-size: 1rem; margin-right: 18px; padding: 1px 4px 0; } }

.date-category .ca:before, .date-category .ca:after { content: ''; position: absolute; height: 0; width: 0; border-style: solid; border-width: 0; top: 0; border-left-color: inherit; border-right-color: inherit; }

.date-category .ca:before { left: -10px; border-width: 10px 10px 11px 0; }

@media screen and (max-width: 767px) { .date-category .ca:before { left: -5px; border-width: 8px 5px 8px 0; } }

.date-category .ca:after { right: -10px; border-width: 10px 0 11px 10px; }

@media screen and (max-width: 767px) { .date-category .ca:after { right: -5px; border-width: 8px 0px 8px 5px; } }

.date-category .orange { background: #F39700; }

.date-category .orange:before, .date-category .orange:after { border-color: transparent #F39700; }

.date-category .blue { background: #028ABC; }

.date-category .blue:before, .date-category .blue:after { border-color: transparent #028ABC; }

.date-category .red { background: #BC3402; }

.date-category .red:before, .date-category .red:after { border-color: transparent #BC3402; }

.date-category .green { background: #009E96; }

.date-category .green:before, .date-category .green:after { border-color: transparent #009E96; }

.c-company { background: url(../img/top/icon_company.png) no-repeat top center; background-size: 118px auto; padding: 154.2px 0 121px; }

@media screen and (max-width: 767px) { .c-company { background: url(../img/top/icon_company.png) no-repeat top center; background-size: 51.5px auto; padding: 71.5px 45px 75px; } }

@media screen and (max-width: 320px) { .c-company { padding: 71.5px 25px 75px; } }

.c-company .title { text-align: center; margin-bottom: 41px; color: #012458; }

@media screen and (max-width: 767px) { .c-company .title { margin-bottom: 28px; } }

.c-company .title h3 { font-size: 3rem; line-height: 40px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .c-company .title h3 { font-size: 1.7rem; line-height: 21px; } }

.c-company .title p { font-size: 1.5rem; line-height: 20px; margin-top: 19.6px; padding-bottom: 52.2px; position: relative; letter-spacing: 0.25em; }

@media screen and (max-width: 767px) { .c-company .title p { font-size: 1rem; line-height: 13px; margin-top: 12px; padding-bottom: 28.5px; } }

.c-company .title p:after { content: ""; width: 60px; border: 1px solid #012458; height: 2px; background: #012458; position: absolute; bottom: 0; left: 0; right: 0; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) { .c-company .title p:after { width: 30px; border: none; } }

.c-company table { width: 465px; float: left; color: #012458; }

@media screen and (max-width: 767px) { .c-company table { width: 100%; float: none; font-size: 1.2rem; } }

.c-company table .pd26 { padding-bottom: 26px; }

@media screen and (max-width: 767px) { .c-company table .pd26 { padding-bottom: 0; } }

.c-company table.tb-style01 th { padding-left: 16px; letter-spacing: 1em; width: 133px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; font-weight: normal; text-align-last: auto; vertical-align: top; line-height: 40px; }

@media screen and (max-width: 767px) { .c-company table.tb-style01 th { padding-left: 0; width: 100px; line-height: 34px; } }

.c-company table.tb-style01 td { padding-left: 45px; line-height: 40px; }

@media screen and (max-width: 767px) { .c-company table.tb-style01 td { padding-left: 0; line-height: 34px; } }

.c-company table.tb-style02 th { padding-left: 16px; width: 140px; vertical-align: top; line-height: 40px; text-align: left; font-weight: normal; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .c-company table.tb-style02 th { padding-left: 0; width: 100px; line-height: 34px; } }

.c-company table.tb-style02 td { line-height: 40px; }

@media screen and (max-width: 767px) { .c-company table.tb-style02 td { padding-left: 0; line-height: 34px; } }

.c-company table.tb-style02 td li { line-height: 30px; }

@media screen and (max-width: 767px) { .c-company table.tb-style02 td li { line-height: 34px; } }

.c-company table.tb-style02 td li span { float: left; }

.c-company table.tb-style02 td li p { padding-left: 20px; }

.c-company .bnt { text-align: center; margin-top: 98.8px; }

@media screen and (max-width: 767px) { .c-company .bnt { margin-top: 48.4px; } }

.c-company .bnt a { text-decoration: none; margin: auto; color: #fff; font-size: 1.8rem; font-weight: bold; display: block; height: 70px; line-height: 67px; border: 2px solid #012458; width: 400px; background: #012458; position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; position: relative; }

@media screen and (max-width: 767px) { .c-company .bnt a { font-size: 1.2rem; height: 40px; line-height: 36px; width: 229px; background: #012458; } }

.c-company .bnt a:before { content: ""; background: url(../img/common/icon_link.png) no-repeat center center; background-size: 15px auto; width: 15px; height: 15px; position: absolute; right: 37px; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; }

@media screen and (max-width: 767px) { .c-company .bnt a:before { background: url(../img/common/icon_link.png) no-repeat center center; background-size: 11px auto; width: 11px; height: 11px; top: 1px; right: 15px; } }

@media screen and (min-width: 768px) { .c-company .bnt a:hover { background: #fff; color: #012458; }
  .c-company .bnt a:hover:before { content: ""; background: url(../img/top/icon_link-bl.png) no-repeat center center; background-size: 15px auto; } }

.c-img { min-height: 570px; }

@media screen and (max-width: 767px) { .c-img { min-height: 210px; } }

.animated { -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }

.animated.infinite { -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; }

.animated.hinge { -webkit-animation-duration: 2s; animation-duration: 2s; }

/* ================== top ============================= */
.main-content { background: url(../img/information/img_h1.jpg) no-repeat center center; background-size: cover; text-align: center; color: #fff; padding: 96px 0 101px; }

@media screen and (max-width: 767px) { .main-content { padding: 43px 0 43.5px; margin-top: 0px; } }

.main-content h2 { font-size: 3.2rem; line-height: 43px; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .main-content h2 { font-size: 1.7rem; line-height: 23px; } }

.main-content p { font-size: 1.7rem; letter-spacing: 0.25em; line-height: 21px; margin-top: 19px; }

@media screen and (max-width: 767px) { .main-content p { font-size: 1rem; line-height: 17px; margin-top: 9.5px; } }

.c-breadcrumbs { margin: 17px auto 54px; font-size: 1.4rem; }

@media screen and (max-width: 767px) { .c-breadcrumbs { margin: 10px 30px 28.5px; font-size: 1.1rem; } }

.c-breadcrumbs li { float: left; position: relative; margin-right: 10px; padding-left: 20px; }

@media screen and (max-width: 767px) { .c-breadcrumbs li { margin-right: 2px; padding-left: 0; } }

.c-breadcrumbs li:before { content: '＞'; font-size: 1.4rem; color: #000; position: absolute; left: 0; }

@media screen and (max-width: 767px) { .c-breadcrumbs li:before { position: relative; font-size: 1.1rem; } }

.c-breadcrumbs li:first-child { padding-left: 0; }

.c-breadcrumbs li:first-child:before { content: none; }

.c-breadcrumbs a { color: #000; }

@media screen and (min-width: 768px) { .c-breadcrumbs a:hover { text-decoration: none; } }

.l-sidebar { width: 240px; float: left; }

@media screen and (max-width: 767px) { .l-sidebar { width: 100%; float: none; padding: 0 30px; -webkit-box-sizing: border-box; box-sizing: border-box; margin-bottom: 75px; } }

.l-sidebar dt { background: #9E9E9E; font-size: 1.7rem; padding: 14px 30px 11px; color: #fff; }

@media screen and (max-width: 767px) { .l-sidebar dt { font-size: 1.1rem; text-align: center; padding: 11px 10px; line-height: 13px; } }

.l-sidebar dd { padding: 27px 30px 38px; }

@media screen and (max-width: 767px) { .l-sidebar dd { padding: 0; } }

.l-sidebar dd li { margin-bottom: 17px; }

.l-sidebar dd li:last-child { margin-bottom: 0; }

@media screen and (max-width: 767px) { .l-sidebar dd li { margin-bottom: 0; border-bottom: 1px solid #9E9E9E; } }

.l-sidebar dd a { text-decoration: none; color: #000000; letter-spacing: 0.05em; font-size: 1.7rem; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .l-sidebar dd a:hover { opacity: 0.5; } }

@media screen and (max-width: 767px) { .l-sidebar dd a { display: block; padding: 13.5px 16px 14.5px; font-size: 1.1rem; } }

.l-content { width: 640px; float: right; }

@media screen and (max-width: 767px) { .l-content { width: 100%; float: none; padding: 0 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

/* ================== information ============================= */
.information .list-category { display: -webkit-box; display: -ms-flexbox; display: flex; }

@media screen and (max-width: 767px) { .information .list-category { display: none; } }

.information .list-category li { width: 120px; background: #fff; position: relative; text-align: center; margin: 0 16px; }

.information .list-category li a { font-size: 1.4rem; display: block; line-height: 19px; padding: 6px 0 5px; text-decoration: none; position: relative; color: inherit; border-top-width: 1px; border-top-style: solid; border-top-color: inherit; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: inherit; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

.information .list-category li a:before, .information .list-category li a:after { content: ''; position: absolute; height: 0; width: 0; border-style: solid; border-width: 0; top: 0px; border-color: transparent #fff; z-index: 99; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.information .list-category li a:before { left: -11px; border-width: 15px 11px 15px 0; }

.information .list-category li a:after { right: -11px; border-width: 15px 0 15px 11px; }

.information .list-category li:first-child { width: 81px; margin-left: 0; }

.information .list-category li:before, .information .list-category li:after { content: ''; position: absolute; height: 0; width: 0; border-style: solid; border-top-color: #FFF; border-bottom-color: #FFF; border-right-color: inherit; border-left-color: inherit; border-width: 0; top: 0; z-index: 9; }

.information .list-category li:before { left: -12px; border-width: 16px 12px 16px 0; }

.information .list-category li:after { right: -12px; border-width: 16px 0 16px 12px; }

.information .list-category .blue1.active a { background: #012458; color: #fff; }

.information .list-category .blue1.active a:before, .information .list-category .blue1.active a:after { border-color: transparent #012458; }

.information .list-category .blue1 a { border-top: 1px solid #012458; border-bottom: 1px solid #012458; color: #012458; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .information .list-category .blue1 a:hover { background: #012458; color: #fff; }
  .information .list-category .blue1 a:hover:before, .information .list-category .blue1 a:hover:after { border-color: transparent #012458; } }

.information .list-category .blue1:before, .information .list-category .blue1:after { border-color: transparent #012458; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.information .list-category .orange.active a { background: #F39700; color: #fff; }

.information .list-category .orange.active a:before, .information .list-category .orange.active a:after { border-color: transparent #F39700; }

.information .list-category .orange a { border-top: 1px solid #F39700; border-bottom: 1px solid #F39700; color: #F39700; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .information .list-category .orange a:hover { background: #F39700; color: #fff; }
  .information .list-category .orange a:hover:before, .information .list-category .orange a:hover:after { border-color: transparent #F39700; } }

.information .list-category .orange:before, .information .list-category .orange:after { border-color: transparent #F39700; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.information .list-category .blue.active a { background: #028ABC; color: #fff; }

.information .list-category .blue.active a:before, .information .list-category .blue.active a:after { border-color: transparent #028ABC; }

.information .list-category .blue a { border-top: 1px solid #028ABC; border-bottom: 1px solid #028ABC; color: #028ABC; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .information .list-category .blue a:hover { background: #028ABC; color: #fff; }
  .information .list-category .blue a:hover:before, .information .list-category .blue a:hover:after { border-color: transparent #028ABC; } }

.information .list-category .blue:before, .information .list-category .blue:after { border-color: transparent #028ABC; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.information .list-category .red.active a { background: #BC3402; color: #fff; }

.information .list-category .red.active a:before, .information .list-category .red.active a:after { border-color: transparent #BC3402; }

.information .list-category .red a { border-top: 1px solid #BC3402; border-bottom: 1px solid #BC3402; color: #BC3402; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .information .list-category .red a:hover { background: #BC3402; color: #fff; }
  .information .list-category .red a:hover:before, .information .list-category .red a:hover:after { border-color: transparent #BC3402; } }

.information .list-category .red:before, .information .list-category .red:after { border-color: transparent #BC3402; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.information .list-category .green.active a { background: #009E96; color: #fff; }

.information .list-category .green.active a:before, .information .list-category .green.active a:after { border-color: transparent #009E96; }

.information .list-category .green a { border-top: 1px solid #009E96; border-bottom: 1px solid #009E96; color: #009E96; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .information .list-category .green a:hover { background: #009E96; color: #fff; }
  .information .list-category .green a:hover:before, .information .list-category .green a:hover:after { border-color: transparent #009E96; } }

.information .list-category .green:before, .information .list-category .green:after { border-color: transparent #009E96; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (max-width: 767px) { .information .select-box { width: 172px; margin: auto; position: relative; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
  .information .select-box .inner { position: relative; }
  .information .select-box .inner:before, .information .select-box .inner:after { content: ''; position: absolute; height: 0; width: 0; border-style: solid; border-width: 0; top: 0; border-color: transparent #fff; z-index: 9; }
  .information .select-box .inner:before { left: -7px; border-width: 20px 12px 20px 0; }
  .information .select-box .inner:after { right: -7px; border-width: 20px 0px 20px 12px; }
  .information .select-box select { width: 100%; text-align-last: center; height: 40px !important; font-size: 1.2rem; background: #fff; text-align: center; background: none; }
  .information .select-box:before, .information .select-box:after { content: ''; position: absolute; height: 0; width: 0; border-style: solid; border-width: 0; top: 0; border-color: transparent #000; background: #fff; }
  .information .select-box:before { left: -8px; border-width: 20px 12px 20px 0; z-index: 9; }
  .information .select-box:after { right: -8px; border-width: 20px 0px 20px 12px; } }

.information .tt-infor { font-size: 2rem; font-weight: normal; line-height: 27px; margin: 36px 0 0px; text-align: center; border-bottom: 1px solid #9E9E9E; padding-bottom: 36px; }

@media screen and (max-width: 767px) { .information .tt-infor { font-size: 1.3rem; line-height: 16px; margin: 28px auto 0; padding-bottom: 28.4px; } }

.information .inner-info li { border-bottom: 1px solid #9E9E9E; padding: 30px 20px; }

@media screen and (max-width: 767px) { .information .inner-info li { padding: 25px 15px; } }

.information .inner-info .date-category { margin-bottom: 16.7px; }

@media screen and (max-width: 767px) { .information .inner-info .date-category { margin-bottom: 12px; } }

.information .inner-info a { text-decoration: none; font-size: 1.7rem; line-height: 28px; color: #000; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .information .inner-info a:hover { opacity: 0.5; } }

@media screen and (max-width: 767px) { .information .inner-info a { font-size: 1.2rem; line-height: 20px; } }

.information .information-detail { border-top: 1px solid #B7B7B7; border-bottom: 1px solid #B7B7B7; padding: 50px 20px 90px; }

@media screen and (max-width: 767px) { .information .information-detail { padding: 35px 15px 50px; } }

.information .information-detail .txt { font-size: 1.7rem; line-height: 28px; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .information .information-detail .txt { font-size: 1.2rem; line-height: 20px; } }

.information .title-detail { margin-bottom: 40px; }

@media screen and (max-width: 767px) { .information .title-detail { margin-bottom: 26px; } }

.information .title-detail .date-category { margin-bottom: 21.7px; }

@media screen and (max-width: 767px) { .information .title-detail .date-category { margin-bottom: 14px; } }

.information .title-detail h3 { font-size: 2rem; line-height: 28px; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .information .title-detail h3 { font-size: 1.4rem; line-height: 23px; } }

.information .list-bnt { width: 357px; margin: 50px auto 120px; text-align: center; position: relative; }

@media screen and (max-width: 767px) { .information .list-bnt { width: 280px; margin: 31px auto 45px; } }

@media screen and (max-width: 320px) { .information .list-bnt { width: 260px; } }

.information .list-bnt .bnt { display: inline-block; vertical-align: middle; width: 195px; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .information .list-bnt .bnt:hover { background: #9E9E9E; }
  .information .list-bnt .bnt:hover a { color: #fff; }
  .information .list-bnt .bnt:hover span:before, .information .list-bnt .bnt:hover span:after { content: ''; border-color: transparent #9E9E9E; } }

@media screen and (max-width: 767px) { .information .list-bnt .bnt { width: 140px; margin-top: 4px; } }

.information .list-bnt .bnt a { display: block; height: 51px; line-height: 49px; border-top: 1px solid #9E9E9E; border-bottom: 1px solid #9E9E9E; text-decoration: none; color: #9E9E9E; text-decoration: none; position: relative; font-size: 1.7rem; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .information .list-bnt .bnt a { height: 40px; line-height: 38px; font-size: 1.2rem; } }

.information .list-bnt .bnt a span { position: relative; display: block; }

.information .list-bnt .bnt a span:before, .information .list-bnt .bnt a span:after { content: ''; position: absolute; height: 0; width: 0; border-style: solid; border-width: 0; top: 1px; border-color: transparent #fff; z-index: 99; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.information .list-bnt .bnt a span:before { left: -21px; top: 0; border-width: 25px 21px 24px 0; }

@media screen and (max-width: 767px) { .information .list-bnt .bnt a span:before { left: -13px; top: 0px; border-width: 19px 13px 19px 0; } }

.information .list-bnt .bnt a span:after { right: -21px; top: 0; border-width: 25px 0 24px 21px; }

@media screen and (max-width: 767px) { .information .list-bnt .bnt a span:after { right: -13px; top: 0px; border-width: 19px 0 19px 13px; } }

.information .list-bnt .bnt a:before, .information .list-bnt .bnt a:after { content: ''; position: absolute; height: 0; width: 0; border-style: solid; border-width: 0; top: 0; border-color: transparent #9E9E9E; }

.information .list-bnt .bnt a:before { left: -22px; top: -1px; border-width: 26px 22px 25px 0; }

@media screen and (max-width: 767px) { .information .list-bnt .bnt a:before { left: -14px; top: -1px; border-width: 20px 14px 20px 0; } }

.information .list-bnt .bnt a:after { right: -22px; top: -1px; border-width: 26px 0 25px 22px; }

@media screen and (max-width: 767px) { .information .list-bnt .bnt a:after { right: -14px; top: -1px; border-width: 20px 0 20px 14px; } }

.information .list-bnt .in-prev { position: absolute; left: 0; top: 0; }

.information .list-bnt .in-next { position: absolute; right: 0; top: 0; }

.information .list-bnt .prev { position: relative; }

@media screen and (min-width: 768px) { .information .list-bnt .prev:hover:before { background: url(../img/information/prev_on.png) no-repeat center center; background-size: 8px auto; } }

.information .list-bnt .prev:before { content: ""; background: url(../img/information/prev.png) no-repeat center center; background-size: 8px auto; width: 8px; height: 14px; position: absolute; top: 50%; left: 50%; margin-top: -7px; margin-left: -4px; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (max-width: 767px) { .information .list-bnt .prev:before { background: url(../img/information/prev.png) no-repeat center center; background-size: 5px auto; width: 5px; height: 10px; margin-top: -5px; margin-left: -2.5px; } }

.information .list-bnt .next { position: relative; }

@media screen and (min-width: 768px) { .information .list-bnt .next:hover:before { background: url(../img/information/next_on.png) no-repeat center center; background-size: 8px auto; } }

.information .list-bnt .next:before { content: ""; background: url(../img/information/next.png) no-repeat center center; background-size: 8px auto; width: 8px; height: 14px; position: absolute; top: 50%; left: 50%; margin-top: -7px; margin-left: -4px; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (max-width: 767px) { .information .list-bnt .next:before { background: url(../img/information/next.png) no-repeat center center; background-size: 5px auto; width: 5px; height: 10px; margin-top: -5px; margin-left: -2.5px; } }

.information .list-bnt .prev, .information .list-bnt .next { position: relative; background: url(../img/information/line.png) no-repeat center center; background-size: 44px 51px; width: 44px; height: 51px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .information .list-bnt .prev:hover, .information .list-bnt .next:hover { background: url(../img/information/line_on.png) no-repeat center center; background-size: 44px 51px; } }

@media screen and (max-width: 767px) { .information .list-bnt .prev, .information .list-bnt .next { background: url(../img/information/line.png) no-repeat center center; background-size: 41px 48px; width: 41px; height: 48px; } }

.information .list-bnt .prev a, .information .list-bnt .next a { display: block; width: 100%; height: 100%; }

.information span.customSelect { font-size: 1.2rem; color: #000; padding: 10px 0; text-align: center; border-top: 1px solid #000; border-bottom: 1px solid #000; background: url(../img/information/icon.png) no-repeat right 10px center; background-size: 10px auto; }

.wp-pagenavi { margin-top: 63px; margin-bottom: 133px; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

@media screen and (max-width: 767px) { .wp-pagenavi { margin: 50px -15px  40px; } }

.wp-pagenavi a, .wp-pagenavi span { text-decoration: none; color: #9E9E9E; font-size: 1.7rem; background: url(../img/information/line.png) no-repeat center center; background-size: 43px auto; width: 43px; height: 50px; margin-left: -1px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .wp-pagenavi a:hover, .wp-pagenavi span:hover { background: url(../img/information/line_on.png) no-repeat center center; background-size: 43px auto; color: #fff; } }

.wp-pagenavi a.current, .wp-pagenavi span.current { background: url(../img/information/line_on.png) no-repeat center center; background-size: 43px auto; color: #fff; }

@media screen and (max-width: 767px) { .wp-pagenavi a.current, .wp-pagenavi span.current { background: url(../img/information/line_on.png) no-repeat center center; background-size: 39.5px auto; } }

.wp-pagenavi a.current span, .wp-pagenavi span.current span { color: #fff; }

@media screen and (max-width: 767px) { .wp-pagenavi a, .wp-pagenavi span { font-size: 1.2rem; background: url(../img/information/line.png) no-repeat center center; background-size: 39.5px auto; height: 46.5px; width: 39.5px; } }

.wp-pagenavi a.number-sp, .wp-pagenavi span.number-sp { display: none; }

@media screen and (max-width: 767px) { .wp-pagenavi a.number-sp, .wp-pagenavi span.number-sp { display: -webkit-box; display: -ms-flexbox; display: flex; } }

@media screen and (max-width: 767px) { .wp-pagenavi a.nummber-pc, .wp-pagenavi span.nummber-pc { display: none; } }

.wp-pagenavi .previouspostslink { position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.wp-pagenavi .previouspostslink:after { content: ""; background: url(../img/information/prev.png) no-repeat center center; background-size: 7.5px auto; width: 7.5px; height: 14px; position: absolute; top: 50%; left: 50%; margin-top: -7px; margin-left: -4px; }

@media screen and (max-width: 767px) { .wp-pagenavi .previouspostslink:after { content: ""; background: url(../img/information/prev.png) no-repeat center center; background-size: 5px auto; width: 5px; height: 10px; margin-top: -5px; margin-left: -2.5px; } }

@media screen and (min-width: 768px) { .wp-pagenavi .previouspostslink:hover:after { content: ""; background: url(../img/information/prev_on.png) no-repeat center center; background-size: 7.5px auto; } }

.wp-pagenavi .nextpostslink { position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.wp-pagenavi .nextpostslink:after { content: ""; background: url(../img/information/next.png) no-repeat center center; background-size: 7.5px auto; width: 7.5px; height: 14px; position: absolute; top: 50%; left: 50%; margin-top: -7px; margin-left: -4px; }

@media screen and (max-width: 767px) { .wp-pagenavi .nextpostslink:after { content: ""; background: url(../img/information/next.png) no-repeat center center; background-size: 5px auto; width: 5px; height: 10px; margin-top: -5px; margin-left: -2.5px; } }

@media screen and (min-width: 768px) { .wp-pagenavi .nextpostslink:hover:after { content: ""; background: url(../img/information/next_on.png) no-repeat center center; background-size: 7.5px auto; } }

/* ================== solution ============================= */
.solution .s-solution h3 { text-align: center; font-size: 3rem; line-height: 40px; margin-bottom: 36px; color: #012458; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .solution .s-solution h3 { font-size: 1.7rem; line-height: 22px; margin-bottom: 22.5px; } }

.solution .s-solution .txt { width: 764px; line-height: 32px; letter-spacing: 0.05em; margin: auto; }

@media screen and (max-width: 767px) { .solution .s-solution .txt { width: 100%; line-height: 20px; letter-spacing: 0; font-size: 1.2rem; } }

.solution .s-solution ul { margin-top: 30px; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: left; -ms-flex-pack: left; justify-content: left; }

@media screen and (max-width: 767px) { .solution .s-solution ul { margin-top: 5px; } }

.solution .s-solution li { width: 290px; margin-top: 50px; margin-right: 30px; position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.solution .s-solution li:nth-of-type(3n) { margin-right: 0; }

@media screen and (min-width: 768px) { .solution .s-solution li:hover img { opacity: 0.5; } }

@media screen and (max-width: 767px) { .solution .s-solution li { width: calc(50% - 7.5px); margin-top: 30px; margin-right: 15px; }
  .solution .s-solution li:nth-of-type(2n) { margin-right: 0; }
  .solution .s-solution li:nth-of-type(3n) { margin-right: 15px; } }

.solution .s-solution li a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

.solution .s-solution li p { line-height: 28px; letter-spacing: 0.05em; font-size: 1.7rem; }

@media screen and (max-width: 767px) { .solution .s-solution li p { line-height: 20px; letter-spacing: 0; font-size: 1.2rem; } }

.solution .s-solution li img { width: 100%; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.solution .s-solution h4 { font-size: 2.2rem; color: #012458; line-height: 30px; margin: 25px 0 18px; text-align: center; }

@media screen and (max-width: 767px) { .solution .s-solution h4 { font-size: 1.5rem; line-height: 18px; margin: 12px 0 9px; } }

.solution .s-solution-de01 { position: relative; margin-bottom: 180.5px; }

@media screen and (max-width: 767px) { .solution .s-solution-de01 { margin: 30px -30px 40px; } }

.solution .s-solution-de01 div { position: absolute; bottom: -68px; right: 50px; width: 430px; background: #fff; padding: 36px 40px 54px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .solution .s-solution-de01 div { position: inherit; bottom: 0; right: 0; width: calc(100% - 60px); padding: 20px 20px 36.5px; margin: -30px auto 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

.solution .s-solution-de01 div h3, .solution .s-solution-de01 div h1  { color: #012458; font-size: 2.6rem; margin-bottom: 16px; line-height: 35px; }

@media screen and (max-width: 767px) { .solution .s-solution-de01 div h3 { font-size: 1.5rem; margin-bottom: 13px; line-height: 20px; } }

.solution .s-solution-de01 div p { font-size: 1.7rem; line-height: 28px; }

@media screen and (max-width: 767px) { .solution .s-solution-de01 div p { font-size: 1.2rem; line-height: 20px; } }

.solution .s-solution-de01 .wrapp-img { display: block; width: 100%; height: 447px; position: relative; overflow: hidden; padding: 0; margin: 0; top: 0; bottom: 0; right: 0; left: 0; }

.solution .s-solution-de01 .wrapp-img img { width: 100%; height: auto; position: absolute; top: 50%; left: 50%; -webkit-transform: translateY(-50%) translateX(-50%); -ms-transform: translateY(-50%) translateX(-50%); transform: translateY(-50%) translateX(-50%); }

.solution .title-de-solution { text-align: center; color: #012458; margin-bottom: 60px; }

@media screen and (max-width: 767px) { .solution .title-de-solution { margin-bottom: 30px; } }

.solution .title-de-solution h3 { font-size: 3rem; line-height: 40px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .solution .title-de-solution h3 { font-size: 1.7rem; line-height: 21px; } }

.solution .title-de-solution p { font-size: 1.5rem; line-height: 20px; margin-top: 19.6px; padding-bottom: 48.2px; position: relative; letter-spacing: 0.25em; }

@media screen and (max-width: 767px) { .solution .title-de-solution p { font-size: 1rem; line-height: 13px; margin-top: 12px; padding-bottom: 28.5px; } }

.solution .title-de-solution p:after { content: ""; width: 60px; border: 1px solid #012458; height: 2px; background: #012458; position: absolute; bottom: 0; left: 0; right: 0; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) { .solution .title-de-solution p:after { width: 30px; border: none; } }

.solution .s-solution-de02 { background: #EDEDED; padding: 94.2px 0 112px; margin-bottom: 94.2px; }

@media screen and (max-width: 767px) { .solution .s-solution-de02 { padding: 47px 30px 59px; margin-bottom: 47px; margin: 0 -30px 47px; } }

.solution .s-solution-de02 ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 767px) { .solution .s-solution-de02 ul { padding: 0 28px; } }

.solution .s-solution-de02 li { width: 170px; margin-right: 82px; text-align: center; margin-bottom: 40px; position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .solution .s-solution-de02 li:hover { opacity: 0.5; } }

@media screen and (max-width: 767px) { .solution .s-solution-de02 li { width: calc(50% - 18.5px); margin-right: 34px; margin-bottom: 28.5px; }
  .solution .s-solution-de02 li:nth-child(2n) { margin-right: 0; } }

.solution .s-solution-de02 li:nth-child(4n) { margin-right: 0; }

.solution .s-solution-de02 li .txt { margin: 25.4px 0 0; font-size: 2.2rem; font-weight: bold; line-height: 28px; letter-spacing: -1px; }

@media screen and (max-width: 767px) { .solution .s-solution-de02 li .txt { margin: 13px; font-size: 1.5rem; line-height: 21px; font-weight: normal; } }

.solution .s-solution-de02 li .txt a { text-decoration: none; color: #000; }

.solution .s-solution-de02 li .txt a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

.solution .s-solution-de02 .text_link { text-align: right; font-size: 1.4rem; }

.solution .s-solution-de02 .text_link a { color: #000; }

@media screen and (min-width: 768px) { .solution .s-solution-de02 .text_link a:hover { text-decoration: none; } }

@media screen and (max-width: 767px) { .solution .s-solution-de02 .text_link { font-size: 1.1rem; } }

.solution .s-solution-de03 { margin-top: 84px; margin-bottom: 150px; border: 2px solid #012458; padding: 64px 80px 72px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .solution .s-solution-de03 { margin-top: 49px; border: 1px solid #012458; padding: 27px 15px 34px; margin-bottom: 75px; } }

.solution .s-solution-de03 h3 { text-align: center; color: #012458; font-size: 3rem; letter-spacing: 0.05em; line-height: 40px; padding-bottom: 55.8px; border-bottom: 1px solid #9E9E9E; }

@media screen and (max-width: 767px) { .solution .s-solution-de03 h3 { font-size: 1.7rem; line-height: 25px; padding-bottom: 22.5px; } }

.solution .s-solution-de03 dl { border-bottom: 1px solid #9E9E9E; padding: 30px 30px 33px; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; position: relative; }

.solution .s-solution-de03 dl.category-in { padding: 46px 30px 33px; }

@media screen and (max-width: 767px) { .solution .s-solution-de03 dl.category-in { padding: 41px 15px 25px; } }

@media screen and (max-width: 767px) { .solution .s-solution-de03 dl { padding: 25px 15px; } }

.solution .s-solution-de03 dl span { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; height: 32px; width: 27px; font-size: 1.4rem; font-weight: bold; letter-spacing: 0.05em; float: left; }

@media screen and (max-width: 767px) { .solution .s-solution-de03 dl span { height: 21.5px; width: 18.5px; font-size: 1rem; } }

.solution .s-solution-de03 dl p { padding-left: 45px; font-size: 1.7rem; line-height: 28px; padding-top: 5px; }

@media screen and (max-width: 767px) { .solution .s-solution-de03 dl p { padding-left: 28.5px; font-size: 1.2rem; line-height: 20px; padding-top: 0; } }

.solution .s-solution-de03 dl a { color: #000; text-decoration: none; }

.solution .s-solution-de03 dl a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

.solution .s-solution-de03 dt { margin-bottom: 17px; }

.solution .s-solution-de03 dt span { background: url(../img/faq/icon_b.png) no-repeat center center; background-size: 27px auto; color: #fff; position: relative; top: 3px; }

@media screen and (max-width: 767px) { .solution .s-solution-de03 dt span { background: url(../img/faq/icon_b.png) no-repeat center center; background-size: 18.5px auto; } }

@media screen and (max-width: 767px) { .solution .s-solution-de03 dt { margin-bottom: 20px; } }

.solution .s-solution-de03 dt .category { display: block; width: 100%; height: auto; position: absolute; top: -3px; left: 0; font-size: 1.2rem; color: #fff; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .solution .s-solution-de03 dt .category { font-size: 1rem; top: -1px; } }

.solution .s-solution-de03 dt .category span { display: block; width: auto; height: auto; float: left; padding: 3px 24px 0; margin-right: 8px; line-height: 19px; }

@media screen and (max-width: 767px) { .solution .s-solution-de03 dt .category span { padding: 3px 16px 0; margin-right: 6.5px; line-height: 16px; } }

@media screen and (max-width: 320px) { .solution .s-solution-de03 dt .category span { padding: 3px 12px 0; margin-right: 3px; } }

.solution .s-solution-de03 dt .category .grey { background: #848484; }

.solution .s-solution-de03 dt .category .blue { background: #028ABC; }

.solution .s-solution-de03 dt .category .orange { background: #F39700; }

.solution .s-solution-de03 dd span { background: url(../img/faq/icon_w.png) no-repeat center center; background-size: 27px auto; color: #153463; position: relative; top: 3px; }

@media screen and (max-width: 767px) { .solution .s-solution-de03 dd span { background: url(../img/faq/icon_w.png) no-repeat center center; background-size: 18.5px auto; } }

.solution .s-solution-de03 .text-link { text-align: right; margin-top: 27px; color: #000; font-size: 1.4rem; }

@media screen and (max-width: 767px) { .solution .s-solution-de03 .text-link { margin-top: 23.5px; font-size: 1.1rem; } }

.solution .s-solution-de03 .text-link a { color: #000; }

@media screen and (min-width: 768px) { .solution .s-solution-de03 .text-link a:hover { text-decoration: none; } }

.solution .s-solution-de04 { margin-top: 120px; }

@media screen and (max-width: 767px) { .solution .s-solution-de04 { margin-top: 60px; } }

.solution .s-solution-de04 h3 { text-align: center; color: #012458; font-size: 3rem; line-height: 40px; margin-bottom: 36.8px; }

@media screen and (max-width: 767px) { .solution .s-solution-de04 h3 { font-size: 1.7rem; line-height: 23px; margin-bottom: 27px; } }

.solution .s-solution-de04 ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }

@media screen and (max-width: 767px) { .solution .s-solution-de04 ul { display: block; text-align: center; } }

.solution .s-solution-de04 li { width: 290px; position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .solution .s-solution-de04 li:hover { opacity: 0.5; } }

@media screen and (max-width: 767px) { .solution .s-solution-de04 li { width: calc(50% - 7.5px); display: inline-block; vertical-align: middle; }
  .solution .s-solution-de04 li:first-child { float: left; }
  .solution .s-solution-de04 li:nth-child(2) { float: right; }
  .solution .s-solution-de04 li:last-child { margin-top: 23px; } }

.solution .s-solution-de04 li .txt { margin-top: 19px; text-align: center; color: #012458; font-weight: bold; font-size: 2.2rem; }

@media screen and (max-width: 767px) { .solution .s-solution-de04 li .txt { margin-top: 12px; font-weight: normal; font-size: 1.5rem; } }

.solution .s-solution-de04 li img { width: 100%; height: auto; }

.solution .s-solution-de04 li a { text-decoration: none; color: #012458; }

.solution .s-solution-de04 li a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

.inner-ct { margin-bottom: 120px; }

@media screen and (max-width: 767px) { .inner-ct { margin-bottom: 60px; padding: 0 30px; } }

/* ================== faq ============================= */
.faq .list-faq li { width: 303px; float: left; margin-right: 10px; margin-bottom: 10px; }

@media screen and (max-width: 767px) { .faq .list-faq li { width: calc(50% - 5px); margin-right: 10px; }
  .faq .list-faq li:nth-child(2n) { margin-right: 0; } }

.faq .list-faq li:nth-child(3n) { margin-right: 0; }

@media screen and (max-width: 767px) { .faq .list-faq li:nth-child(3n) { margin-right: 10px; } }

.faq .list-faq li a { display: block; height: 60px; line-height: 58px; border: 1px solid #012458; background: url(../img/faq/icon_arrow_b.png) no-repeat right 20px center; background-size: 9px auto; text-align: center; color: #012458; font-size: 1.7rem; letter-spacing: 0.05em; text-decoration: none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (max-width: 767px) { .faq .list-faq li a { height: 40px; line-height: 38px; background: url(../img/faq/icon_arrow_b.png) no-repeat right 11px center; background-size: 6px auto; font-size: 1.2rem; letter-spacing: 0; } }

.faq .list-faq li a.active { background: #012458 url(../img/faq/icon_arrow_w.png) no-repeat right 20px center; background-size: 9px auto; color: #fff; }

@media screen and (max-width: 767px) { .faq .list-faq li a.active { background: #012458 url(../img/faq/icon_arrow_w.png) no-repeat right 11px center; background-size: 6px auto; } }

@media screen and (min-width: 768px) { .faq .list-faq li a:hover { background: #012458 url(../img/faq/icon_arrow_w.png) no-repeat right 20px center; background-size: 9px auto; color: #fff; } }

.faq .s-faq { width: 770px; margin: 80px auto 0; }

.faq .s-faq:first-of-type { margin: 26px auto 0; }

@media screen and (max-width: 767px) { .faq .s-faq { width: 100%; margin: 50px auto 0; }
  .faq .s-faq:first-of-type { margin: 13px auto 0; } }

.faq .s-faq h3 { text-align: center; font-size: 2rem; color: #000; letter-spacing: 0.05em; line-height: 27px; padding-bottom: 37px; border-bottom: 1px solid #9E9E9E; }

@media screen and (max-width: 767px) { .faq .s-faq h3 { font-size: 1.4rem; line-height: 17px; padding-bottom: 23px; } }

.faq .s-faq dl { border-bottom: 1px solid #9E9E9E; padding: 30px 30px 33px; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; position: relative; }

.faq .s-faq dl.category-in { padding: 46px 30px 33px; }

@media screen and (max-width: 767px) { .faq .s-faq dl.category-in { padding: 41px 15px 25px; } }

@media screen and (max-width: 767px) { .faq .s-faq dl { padding: 25px 15px; } }

.faq .s-faq dl span { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; height: 32px; width: 27px; font-size: 1.4rem; font-weight: bold; letter-spacing: 0.05em; float: left; position: relative; top: 3px; }

@media screen and (max-width: 767px) { .faq .s-faq dl span { height: 21.5px; width: 18.5px; font-size: 1rem; top: 1px; } }

.faq .s-faq dl p { padding-left: 45px; font-size: 1.7rem; line-height: 28px; padding-top: 5px; }

.faq .s-faq ul { padding-left: 45px; font-size: 1.7rem; line-height: 28px; padding-top: 5px; list-style: inside; }

@media screen and (max-width: 767px) { .faq .s-faq dl p { padding-left: 28.5px; font-size: 1.2rem; line-height: 20px; padding-top: 0; } }

.faq .s-faq dl a { color: #000; }

.faq .s-faq dl a:hover { text-decoration: none; }

/* .faq .s-faq dl a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; } */

.faq .s-faq dt { margin-bottom: 17px; }

.faq .s-faq dt span { background: url(../img/faq/icon_b.png) no-repeat center center; background-size: 27px auto; color: #fff; }

@media screen and (max-width: 767px) { .faq .s-faq dt span { background: url(../img/faq/icon_b.png) no-repeat center center; background-size: 18.5px auto; } }

@media screen and (max-width: 767px) { .faq .s-faq dt { margin-bottom: 20px; } }

.faq .s-faq dt .category { display: block; width: 100%; height: auto; position: absolute; top: -3px; left: 0; font-size: 1.2rem; color: #fff; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .faq .s-faq dt .category { font-size: 1rem; top: -1px; } }

.faq .s-faq dt .category span { display: block; width: auto; height: auto; float: left; padding: 3px 24px 0; margin-right: 8px; line-height: 19px; }

@media screen and (max-width: 767px) { .faq .s-faq dt .category span { padding: 3px 16px 0; margin-right: 6.5px; line-height: 16px; } }

@media screen and (max-width: 320px) { .faq .s-faq dt .category span { padding: 3px 12px 0; margin-right: 3px; } }

.faq .s-faq dt .category .grey { background: #848484; }

.faq .s-faq dt .category .blue { background: #028ABC; }

.faq .s-faq dt .category .orange { background: #F39700; }

.faq .s-faq dd span { background: url(../img/faq/icon_w.png) no-repeat center center; background-size: 27px auto; color: #153463; }

@media screen and (max-width: 767px) { .faq .s-faq dd span { background: url(../img/faq/icon_w.png) no-repeat center center; background-size: 18.5px auto; } }

.faq .bnt-faq { margin-top: 60px; text-align: center; }

@media screen and (max-width: 767px) { .faq .bnt-faq { margin-top: 50px; } }

.faq .bnt-faq a { width: 540px; margin: auto; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 22px center; background-size: 9px auto; border: 2px solid #012458; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; color: #fff; text-decoration: none; display: block; font-size: 1.8rem; letter-spacing: 0.05em; line-height: 28px; padding: 19px 0; font-weight: bold; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .faq .bnt-faq a:hover { background: #fff url(../img/top/icon_arrow_st-b.png) no-repeat right 22px center; background-size: 9px auto; color: #012458; } }

@media screen and (max-width: 767px) { .faq .bnt-faq a { width: 100%; max-width: 315px; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 13px center; background-size: 6px auto; font-size: 1.2rem; letter-spacing: 0; line-height: 20px; padding: 8px 0; } }

/* ================== faq detail============================= */
.faq-detail .title { text-align: center; margin-bottom: 60px; color: #012458; }

@media screen and (max-width: 767px) { .faq-detail .title { margin-bottom: 30px; } }

.faq-detail .title h3 { font-size: 3rem; line-height: 40px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .faq-detail .title h3 { font-size: 1.7rem; line-height: 25px; } }

.faq-detail .title p { font-size: 1.5rem; line-height: 20px; margin-top: 19.8px; padding-bottom: 48.2px; position: relative; letter-spacing: 0.25em; }

@media screen and (max-width: 767px) { .faq-detail .title p { font-size: 1rem; line-height: 13px; margin-top: 12px; padding-bottom: 28.5px; } }

.faq-detail .title p:after { content: ""; width: 60px; border: 1px solid #012458; height: 2px; background: #012458; position: absolute; bottom: 0; left: 0; right: 0; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) { .faq-detail .title p:after { width: 30px; border: none; } }

.faq-detail .s-faq-detail { width: 770px; margin: auto; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail { width: 100%; padding: 0 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

.faq-detail .s-faq-detail dl span { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; height: 54px; width: 46px; font-size: 2.4rem; font-weight: bold; letter-spacing: 0.05em; float: left; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail dl span { height: 27px; width: 23px; font-size: 1rem; } }

.faq-detail .s-faq-detail dl p { padding-left: 76px; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail dl p { padding-left: 38px; } }

.faq-detail .s-faq-detail dt { border-bottom: 1px solid #012458; padding-bottom: 30px; margin-bottom: 50px; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail dt { padding-bottom: 12px; margin-bottom: 31px; } }

.faq-detail .s-faq-detail dt span { background: url(../img/faq/icon_b.png) no-repeat center center; background-size: 46px auto; color: #fff; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail dt span { background: url(../img/faq/icon_b.png) no-repeat center center; background-size: 23px auto; } }

.faq-detail .s-faq-detail dt p { padding-top: 10px; font-size: 2.6rem; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail dt p { padding-top: 0; font-size: 1.5rem; } }

.faq-detail .s-faq-detail dd span { background: url(../img/faq/icon_w.png) no-repeat center center; background-size: 46px auto; color: #153463; position: relative; top: 10px; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail dd span { background: url(../img/faq/icon_w.png) no-repeat center center; background-size: 23px auto; top: 5px; } }

.faq-detail .s-faq-detail dd p { padding-top: 0px; font-size: 2rem; line-height: 38px; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail dd p { font-size: 1.2rem; line-height: 19px; } }

.faq-detail .sec-faq .img { width: 360px; height: 240px; position: relative; overflow: hidden; }

@media screen and (max-width: 767px) { .faq-detail .sec-faq .img { width: 285px; height: 189.5px; margin: auto; } }

.faq-detail .sec-faq .img img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

.faq-detail .sec-faq .img .txt { font-size: 1.7rem; line-height: 28px; }

@media screen and (max-width: 767px) { .faq-detail .sec-faq .img .txt { font-size: 1.4rem; line-height: 19px; } }

.faq-detail .sec-faq01 { margin-top: 70px; }

@media screen and (max-width: 767px) { .faq-detail .sec-faq01 { margin-top: 35px; } }

.faq-detail .sec-faq01 .img { float: left; }

@media screen and (max-width: 767px) { .faq-detail .sec-faq01 .img { float: none; } }

.faq-detail .sec-faq01 .txt { padding-left: 50px; overflow: hidden; }

@media screen and (max-width: 767px) { .faq-detail .sec-faq01 .txt { padding-left: 0; margin-top: 15px; font-size: 1.2rem; padding: 0 15px; } }

@media screen and (max-width: 767px) { .faq-detail .include-contact { margin: 60px 0 0; } }

.faq-detail .sec-faq02 { margin-top: 65.9px; }

@media screen and (max-width: 767px) { .faq-detail .sec-faq02 { margin-top: 30px; } }

.faq-detail .sec-faq02 .img { float: right; }

@media screen and (max-width: 767px) { .faq-detail .sec-faq02 .img { float: none; } }

.faq-detail .sec-faq02 .txt { padding-right: 50px; overflow: hidden; }

@media screen and (max-width: 767px) { .faq-detail .sec-faq02 .txt { padding-right: 0; margin-top: 15px; font-size: 1.2rem; padding: 0 15px; } }

.faq-detail .s-faq-detail2 { margin-top: 94px; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail2 { margin-top: 47px; padding: 0 30px; } }

.faq-detail .s-faq-detail2 .img { width: 100%; }

.faq-detail .s-faq-detail2 ul { display: -webkit-box; display: -ms-flexbox; display: flex; }

.faq-detail .s-faq-detail2 li { width: 290px; margin-right: 30px; position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .faq-detail .s-faq-detail2 li:hover { opacity: 0.5; } }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail2 li { width: calc(50% - 7px); margin-right: 15px; }
  .faq-detail .s-faq-detail2 li:nth-child(2n) { margin-right: 0; } }

.faq-detail .s-faq-detail2 li:nth-child(3n) { margin-right: 0; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail2 li:nth-child(3n) { margin-right: 15px; } }

.faq-detail .s-faq-detail2 li h4 { font-size: 2.2rem; line-height: 30px; color: #012458; margin: 25px 0 18px; text-align: center; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail2 li h4 { font-size: 1.5rem; line-height: 20px; margin: 11px 0 8px; } }

.faq-detail .s-faq-detail2 li h4 a { text-decoration: none; color: #012458; }

.faq-detail .s-faq-detail2 li h4 a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

.faq-detail .s-faq-detail2 li p { font-size: 16px; line-height: 28px; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail2 li p { font-size: 1.2rem; line-height: 20px; } }

.faq-detail .s-faq-detail2 .text-link { margin-top: 47px; text-align: right; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail2 .text-link { margin-top: 23.5px; } }

.faq-detail .s-faq-detail2 .text-link a { color: #000000; font-size: 1.4rem; }

@media screen and (min-width: 768px) { .faq-detail .s-faq-detail2 .text-link a:hover { text-decoration: none; } }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail2 .text-link a { font-size: 1.1rem; } }

.faq-detail .s-faq-detail3 { margin-top: 78px; margin-bottom: 74px; background: #EDEDED; padding: 74.2px 0 125px; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail3 { margin-top: 49px; margin-bottom: 49px; padding: 49px 30px 30px; } }

.faq-detail .s-faq-detail3 ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

.faq-detail .s-faq-detail3 ul li { width: 176px; text-align: center; position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .faq-detail .s-faq-detail3 ul li:hover { opacity: 0.5; } }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail3 ul li { width: 50%; margin-bottom: 28px; } }

.faq-detail .s-faq-detail3 ul li .text { font-size: 2.2rem; margin-top: 27.5px; }

@media screen and (max-width: 767px) { .faq-detail .s-faq-detail3 ul li .text { font-size: 1.5rem; margin-top: 12px; font-weight: bold; } }

.faq-detail .s-faq-detail3 ul li .text a { color: #000; text-decoration: none; font-weight: bold; }

.faq-detail .s-faq-detail3 ul li .text a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

.faq-detail .include-case { margin-bottom: 84px; }

@media screen and (max-width: 767px) { .faq-detail .include-case { margin-top: 47px; padding: 0 30px; } }

/* ================== strength============================= */
.strength .s-strength { position: relative; }

@media screen and (max-width: 767px) { .strength .s-strength { margin: 0 -30px; padding: 0 30px; } }

.strength .s-strength:after { content: ""; background: #F2F2F2; width: 770px; height: 95%; position: absolute; top: 60px; left: 80px; }

@media screen and (max-width: 767px) { .strength .s-strength:after { width: 100%; height: 88%; top: 67px; left: 0; } }

.strength .ct-strength { position: relative; z-index: 33; }

.strength .ct-strength .img { width: 608px; }

@media screen and (max-width: 767px) { .strength .ct-strength .img { max-width: 300px; width: 100%; } }

.strength .sec01 { margin-bottom: 60px; clear: both; }

@media screen and (max-width: 767px) { .strength .sec01 { margin-bottom: 30px; } }

.strength .sec01 .img { float: left; }

.strength .sec01 .in-sec { position: absolute; right: 0; top: 106px; }

@media screen and (max-width: 767px) { .strength .sec01 .in-sec { position: relative; float: left; margin-top: -35px; top: 0; } }

.strength .sec02 { margin-bottom: 60px; }

@media screen and (max-width: 767px) { .strength .sec02 { margin-bottom: 30px; } }

.strength .sec02.mb0 { margin-bottom: 0; }

.strength .sec02 .img { float: right; }

.strength .sec02 .in-sec { position: absolute; left: 0; top: 106px; }

@media screen and (max-width: 767px) { .strength .sec02 .in-sec { position: relative; float: right; margin-top: -35px; top: 0; } }

.strength .in-sec { width: 430px; padding: 46px 44px 46px 30px; background: #fff; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .strength .in-sec { width: 255px; padding: 18px 18px 34px; } }

.strength .in-sec dl { display: table; width: 100%; position: relative; }

.strength .in-sec dl dt { opacity: 0.2; width: 90px; display: table-cell; vertical-align: middle; }

@media screen and (max-width: 767px) { .strength .in-sec dl dt { width: 45px; } }

.strength .in-sec dl dt img { width: 100%; }

.strength .in-sec dl dd { font-size: 3rem; color: #012458; font-weight: bold; position: absolute; left: 56px; top: 24px; line-height: 40px; }

@media screen and (max-width: 767px) { .strength .in-sec dl dd { font-size: 1.7rem; left: 28px; top: 13px; line-height: 23px; } }

.strength .in-sec p { font-size: 1.7rem; line-height: 28px; margin-top: 10px; }

@media screen and (max-width: 767px) { .strength .in-sec p { font-size: 1.2rem; line-height: 20px; margin-top: 7.5px; } }

/* ================== contact ============================= */
.contact .s-contact { width: 770px; margin: auto; }

@media screen and (max-width: 767px) { .contact .s-contact { width: 100%; margin: auto; } }

.contact .menu-contact { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-bottom: 60px; }

@media screen and (max-width: 767px) { .contact .menu-contact { margin-bottom: 30px; } }

.contact .menu-contact li { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin: 0 18.5px; height: 50px; }

@media screen and (max-width: 767px) { .contact .menu-contact li { height: 26px; margin: 0 9.25px; } }

.contact .menu-contact li.box { background: url(../img/contact/icon_w.png) no-repeat center center; background-size: 113px auto; width: 113px; color: #9E9E9E; font-size: 1.7rem; letter-spacing: 0.05em; margin: 0; }

@media screen and (max-width: 767px) { .contact .menu-contact li.box { background: url(../img/contact/icon_w.png) no-repeat center center; background-size: 60px auto; width: 60px; font-size: 1.2rem; } }

.contact .menu-contact li.active { background: url(../img/contact/icon_b.png) no-repeat center center; background-size: 113px auto; color: #fff; }

@media screen and (max-width: 767px) { .contact .menu-contact li.active { background: url(../img/contact/icon_b.png) no-repeat center center; background-size: 60px auto; } }

.contact .txt { font-size: 1.4rem; line-height: 26px; margin-bottom: 40px; }

.contact .txt span { float: left; margin-right: 5px; }

@media screen and (max-width: 767px) { .contact .txt span { margin-right: 0; padding-top: 1px; } }

@media screen and (max-width: 767px) { .contact .txt p { padding-left: 13px; } }

@media screen and (max-width: 767px) { .contact .txt { font-size: 1.1rem; line-height: 19px; margin-bottom: 20px; } }

.contact .table { border-top: 1px solid #9E9E9E; border-bottom: 1px solid #9E9E9E; padding: 50px 50px 20px; }

@media screen and (max-width: 767px) { .contact .table { padding: 30px 15px 5px; } }

.contact dl { display: table; width: 100%; margin-bottom: 30px; }

@media screen and (max-width: 767px) { .contact dl { width: 100%; display: block; margin-bottom: 25px; } }

.contact dl .hissu { background: #BC3402; border: 1px solid #BC3402; text-align: center; color: #fff; font-size: 1.2rem; width: 39px; line-height: 1; padding: 3px 0; margin-right: 12px; display: block; float: left; position: relative; top: -1px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .contact dl .hissu { width: 30px; padding: 3px 0 1px; margin-right: 6px; font-size: 0.9rem; } }

.contact dl .ninni { background: #fff; border: 1px solid #9E9E9E; text-align: center; font-size: 1.2rem; color: #9E9E9E; width: 39px; line-height: 1; padding: 3px 0; margin-right: 12px; display: block; position: relative; top: -1px; float: left; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .contact dl .ninni { width: 30px; padding: 3px 0 1px; margin-right: 6px; font-size: 0.9rem; } }

.contact dl dt { display: table-cell; vertical-align: top; width: 210px; padding-top: 13px; line-height: 18px; font-size: 1.7rem; letter-spacing: 0.05em; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .contact dl dt { display: block; width: 100%; font-size: 1.2rem; padding-top: 0; line-height: 15px; margin-bottom: 15px; } }

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

@media screen and (max-width: 767px) { .contact dl dd { display: block; width: 100%; } }

.contact dl dd .ime_on { border: 1px solid #9E9E9E; padding: 13px 10px 14px; font-size: 1.7rem; width: 100%; border-radius: 0; -webkit-appearance: none; -moz-appearance: none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .contact dl dd .ime_on { padding: 12px 10px; font-size: 1.3rem; } }

.contact dl dd .inner { display: -webkit-box; display: -ms-flexbox; display: flex; width: 100%; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

@media screen and (max-width: 767px) { .contact dl dd .inner { display: block; } }

.contact dl dd .inner .input { border: 1px solid #9E9E9E; padding: 10px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: 1.7rem; width: 138px; margin-right: 16px; border-radius: 0; -webkit-appearance: none; -moz-appearance: none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .contact dl dd .inner .input { width: 135px; padding: 7px 10px; margin-right: 0; font-size: 1.3rem; } }

.contact dl dd .inner .input input { font-size: 1.7rem; border: none; border-radius: 0; width: 95px; margin-left: 10px; -webkit-appearance: none; -moz-appearance: none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .contact dl dd .inner .input input { font-size: 1.3rem; width: 100px; margin-left: 1px; } }

.contact dl dd .inner p { font-size: 1.4rem; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .contact dl dd .inner p { font-size: 1.1rem; margin: 5px 0 6px; line-height: 15px; } }

.contact dl dd .list { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

.contact dl dd .list li { margin-bottom: 16px; }

.contact dl dd .list li:first-child { width: calc(100% + 45px); position: relative; }

.contact dl dd .list li:first-child p { position: absolute; top: 10px; left: 154px; }

@media screen and (max-width: 767px) { .contact dl dd .list li:first-child p { position: relative; top: 0; left: 0; } }

@media screen and (max-width: 767px) { .contact dl dd .list li:first-child { width: 100%; } }

@media screen and (max-width: 767px) { .contact dl dd .list li { margin-bottom: 15px; max-width: 100%; }
  .contact dl dd .list li:nth-child(1) { margin-bottom: 0; } }

.contact dl dd .list li:last-child { margin-bottom: 0; }

.contact dl dd .txt-mail { font-size: 1.4rem; margin: 13px 0 14px; line-height: 19px; }

@media screen and (max-width: 767px) { .contact dl dd .txt-mail { font-size: 1rem; margin: 6px 0; line-height: 14px; } }

.contact dl dd .txt_area { border: 1px solid #9E9E9E; border-radius: 0; -webkit-appearance: none; -moz-appearance: none; height: 240px; padding: 10px; width: 100%; resize: none; overflow: auto; font-size: 1.7rem; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .contact dl dd .txt_area { height: 152px; font-size: 1.3rem; } }

.contact .contact_step_jump { margin-top: 60px; text-align: center; }

@media screen and (max-width: 767px) { .contact .contact_step_jump { margin-top: 50px; } }

.contact .contact_step_jump li { display: inline-block; vertical-align: middle; margin: 0 15px; }

@media screen and (max-width: 767px) { .contact .contact_step_jump li { margin: 0 0; width: calc(50% - 7.5px); }
  .contact .contact_step_jump li:first-child { float: left; }
  .contact .contact_step_jump li:last-child { float: right; }
  .contact .contact_step_jump li .bnt { width: 100%; } }

.contact .contact_step_jump .prev { width: 320px; height: 70px; line-height: 65px; text-decoration: none; font-size: 1.8rem; letter-spacing: 0.05em; color: #fff; font-weight: bold; border: 2px solid #9E9E9E; background: #9E9E9E url(../img/contact/icon_arrow_w.png) no-repeat left 18px center; background-size: 9px auto; display: block; border-radius: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .contact .contact_step_jump .prev:hover { background: #fff url(../img/contact/icon_arrow_g.png) no-repeat left 18px center; background-size: 9px auto; color: #9E9E9E; } }

@media screen and (max-width: 767px) { .contact .contact_step_jump .prev { width: 100%; height: 40px; line-height: 40px; font-size: 1.2rem; letter-spacing: 0; background: #9E9E9E url(../img/contact/icon_arrow_w.png) no-repeat left 18px center; background-size: 6px auto; } }

.contact .contact_step_jump .bnt { width: 320px; height: 70px; font-size: 1.8rem; letter-spacing: 0.05em; color: #fff; font-weight: bold; border: 2px solid #012458; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 18px center; background-size: 9px auto; border-radius: 0; -webkit-appearance: none; -moz-appearance: none; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .contact .contact_step_jump .bnt { cursor: pointer; }
  .contact .contact_step_jump .bnt:hover { background: #fff url(../img/top/icon_arrow_st-b.png) no-repeat right 18px center; background-size: 9px auto; color: #012458; } }

@media screen and (max-width: 767px) { .contact .contact_step_jump .bnt { width: 229px; height: 40px; font-size: 1.2rem; letter-spacing: 0; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 13px center; background-size: 6px auto; } }

.contact .contact_step_jump .next { width: 320px; height: 70px; display: block; margin: auto; line-height: 66px; border: 2px solid #012458; text-decoration: none; font-size: 1.8rem; letter-spacing: 0.05em; color: #fff; font-weight: bold; background: #012458 url(../img/contact/icon_arrow_w.png) no-repeat left 18px center; background-size: 9px auto; border-radius: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .contact .contact_step_jump .next { cursor: pointer; }
  .contact .contact_step_jump .next:hover { background: #fff url(../img/contact/icon_arrow_b.png) no-repeat left 18px center; background-size: 9px auto; color: #012458; } }

@media screen and (max-width: 767px) { .contact .contact_step_jump .next { width: 229px; height: 40px; line-height: 40px; font-size: 1.2rem; letter-spacing: 0; background: #012458 url(../img/contact/icon_arrow_w.png) no-repeat left 13px center; background-size: 6px auto; } }

.contact .box-eror { background: #FFEBEB; padding: 27px 50px 28px; color: #BC3402; font-size: 1.7rem; letter-spacing: 0.05em; line-height: 28px; margin-bottom: 40px; }

@media screen and (max-width: 767px) { .contact .box-eror { padding: 20px 15px; font-size: 1.2rem; line-height: 19px; margin-bottom: 20px; } }

.contact .iput-error { background: #FFEBEB; }

.contact .box-confirm { background: #EDEDED; padding: 27px 50px 28px; font-size: 1.7rem; letter-spacing: 0.05em; margin-bottom: 40px; }

@media screen and (max-width: 767px) { .contact .box-confirm { padding: 15px 20px; font-size: 1.2rem; line-height: 20px; margin-bottom: 20px; } }

.contact .table-confirm { padding: 47px 80px 50px; border-top: 1px solid #9E9E9E; border-bottom: 1px solid #9E9E9E; }

@media screen and (max-width: 767px) { .contact .table-confirm { padding: 33.5px 30px 35px; } }

.contact .table-confirm dl { display: table; width: 100%; font-size: 1.7rem; line-height: 28px; margin-bottom: 41px; }

@media screen and (max-width: 767px) { .contact .table-confirm dl { display: block; font-size: 1.2rem; line-height: 20px; margin-bottom: 27px; } }

.contact .table-confirm dl:last-child { margin-bottom: 0; }

.contact .table-confirm dl dt { display: table-cell; vertical-align: top; width: 194px; padding-top: 5px; position: relative; }

@media screen and (max-width: 767px) { .contact .table-confirm dl dt { display: block; width: 100%; margin-bottom: 11px; padding-top: 0; }
  .contact .table-confirm dl dt:before { content: '【'; font-size: 1.2rem; color: #000; }
  .contact .table-confirm dl dt:after { content: '】'; font-size: 1.2rem; color: #000; } }

.contact .table-confirm dl dd { display: table-cell; vertical-align: top; }

.contact .table-complete { border-top: 1px solid #9E9E9E; border-bottom: 1px solid #9E9E9E; padding: 67px 0 71px; text-align: center; }

@media screen and (max-width: 767px) { .contact .table-complete { padding: 37px 0 38.5px; } }

.contact .table-complete h3 { font-size: 2.2rem; line-height: 28px; letter-spacing: 0.05px; margin-bottom: 34px; color: #012458; }

@media screen and (max-width: 767px) { .contact .table-complete h3 { font-size: 1.5rem; line-height: 20px; margin-bottom: 12.5px; } }

.contact .table-complete p { font-size: 1.7rem; line-height: 28px; color: #012458; }

@media screen and (max-width: 767px) { .contact .table-complete p { font-size: 1.2rem; line-height: 20px; letter-spacing: 0.05em; } }

/* ================== technology ============================= */
.technology .title h3, .technology .title h1 { text-align: center; color: #012458; font-size: 3rem; letter-spacing: 0.1em; line-height: 40px; margin-bottom: 35.8px; }

@media screen and (max-width: 767px) { .technology .title h3 { font-size: 1.7rem; line-height: 23px; margin-bottom: 23px; } }

.technology .title .txt { width: 764px; margin: auto; font-size: 1.7rem; line-height: 32px; margin-bottom: 80px; }

@media screen and (max-width: 767px) { .technology .title .txt { width: 100%; font-size: 1.2rem; line-height: 20px; margin-bottom: 40px; } }

.technology .s-technology01 { position: relative; margin-bottom: 80px; }

@media screen and (max-width: 767px) { .technology .s-technology01 { margin-bottom: 0; margin: 0 0 20px; } }

.technology .s-technology01 p img { width: 100%; height: auto; }

.technology .s-technology01 div { position: absolute; bottom: 0; right: 50px; width: 430px; background: #fff; padding: 35px 40px 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .technology .s-technology01 div { position: inherit; bottom: 0; right: 0; width: calc(100% - 60px); padding: 20px; margin: -30px auto 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

.technology .s-technology01 div h3, .technology .s-technology01 div h1 { color: #012458; font-size: 2.6rem; line-height: 35px; }

@media screen and (max-width: 767px) { .technology .s-technology01 div h3 { font-size: 1.5rem; line-height: 20px; } }

.technology .s-technology01 div p { font-size: 1.7rem; line-height: 28px; }

@media screen and (max-width: 767px) { .technology .s-technology01 div p { font-size: 1.2rem; line-height: 20px; } }

.technology .s-technology02 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 767px) { .technology .s-technology02 { -ms-flex-wrap: wrap; flex-wrap: wrap; } }

.technology .s-technology02 li { width: 210px; }

@media screen and (max-width: 767px) { .technology .s-technology02 li { width: calc(50% - 7.5px); margin-top: 23px; } }

.technology .s-technology02 li img { width: 100%; }

.technology .s-technology02 li .txt { font-size: 1.7rem; margin-top: 15px; }

@media screen and (max-width: 767px) { .technology .s-technology02 li .txt { font-size: 1.2rem; margin-top: 10.5px; } }

.technology .s-technology03 { margin-top: 58px; margin-bottom: 94px; }

@media screen and (max-width: 767px) { .technology .s-technology03 { margin-top: 38.5px; margin-bottom: 47px; } }

.technology .s-technology03 dl { display: table; width: 100%; margin-bottom: 2px; }

@media screen and (max-width: 767px) { .technology .s-technology03 dl { display: block; margin-bottom: 0; } }

.technology .s-technology03 dl dt { width: 152px; display: table-cell; vertical-align: middle; color: #fff; background: #9E9E9E; text-align: center; font-weight: bold; }

@media screen and (max-width: 767px) { .technology .s-technology03 dl dt { width: 100%; display: block; text-align: center; font-size: 1.2rem; line-height: 16px; padding: 10px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

.technology .s-technology03 dl dd { display: table-cell; padding: 24px 32px; font-size: 1.7rem; line-height: 28px; letter-spacing: 0.05em; background: #EDEDED; }

@media screen and (max-width: 767px) { .technology .s-technology03 dl dd { display: block; padding: 15px 20px; font-size: 1.2rem; line-height: 20px; width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

.technology .s-technology04 { margin-top: 84px; margin-bottom: 150px; border: 2px solid #012458; padding: 64px 80px 72px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .technology .s-technology04 { margin-top: 49px; border: 1px solid #012458; padding: 27px 15px 34px; margin-bottom: 75px; } }

.technology .s-technology04 h3 { text-align: center; color: #012458; font-size: 3rem; letter-spacing: 0.05em; line-height: 40px; padding-bottom: 55.8px; border-bottom: 1px solid #9E9E9E; }

@media screen and (max-width: 767px) { .technology .s-technology04 h3 { font-size: 1.7rem; line-height: 25px; padding-bottom: 22.5px; } }

.technology .s-technology04 dl { border-bottom: 1px solid #9E9E9E; padding: 30px 30px 33px; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; position: relative; }

.technology .s-technology04 dl.category-in { padding: 46px 30px 33px; }

@media screen and (max-width: 767px) { .technology .s-technology04 dl.category-in { padding: 41px 15px 25px; } }

@media screen and (max-width: 767px) { .technology .s-technology04 dl { padding: 25px 15px; } }

.technology .s-technology04 dl span { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; height: 32px; width: 27px; font-size: 1.4rem; font-weight: bold; letter-spacing: 0.05em; float: left; }

@media screen and (max-width: 767px) { .technology .s-technology04 dl span { height: 21.5px; width: 18.5px; font-size: 1rem; } }

.technology .s-technology04 dl p { padding-left: 45px; font-size: 1.7rem; line-height: 28px; padding-top: 5px; }

@media screen and (max-width: 767px) { .technology .s-technology04 dl p { padding-left: 28.5px; font-size: 1.2rem; line-height: 20px; padding-top: 0; } }

.technology .s-technology04 dl a { color: #000; text-decoration: none; }

.technology .s-technology04 dl a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

.technology .s-technology04 dt { margin-bottom: 17px; }

.technology .s-technology04 dt span { background: url(../img/faq/icon_b.png) no-repeat center center; background-size: 27px auto; color: #fff; position: relative; top: 3px; }

@media screen and (max-width: 767px) { .technology .s-technology04 dt span { background: url(../img/faq/icon_b.png) no-repeat center center; background-size: 18.5px auto; } }

@media screen and (max-width: 767px) { .technology .s-technology04 dt { margin-bottom: 20px; } }

.technology .s-technology04 dt .category { display: block; width: 100%; height: auto; position: absolute; top: -3px; left: 0; font-size: 1.2rem; color: #fff; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .technology .s-technology04 dt .category { font-size: 1rem; top: -1px; } }

.technology .s-technology04 dt .category span { display: block; width: auto; height: auto; float: left; padding: 3px 24px 0; margin-right: 8px; line-height: 19px; }

@media screen and (max-width: 767px) { .technology .s-technology04 dt .category span { padding: 3px 16px 0; margin-right: 6.5px; line-height: 16px; } }

@media screen and (max-width: 320px) { .technology .s-technology04 dt .category span { padding: 3px 12px 0; margin-right: 3px; } }

.technology .s-technology04 dt .category .grey { background: #848484; }

.technology .s-technology04 dt .category .blue { background: #028ABC; }

.technology .s-technology04 dt .category .orange { background: #F39700; }

.technology .s-technology04 dd span { background: url(../img/faq/icon_w.png) no-repeat center center; background-size: 27px auto; color: #153463; position: relative; top: 3px; }

@media screen and (max-width: 767px) { .technology .s-technology04 dd span { background: url(../img/faq/icon_w.png) no-repeat center center; background-size: 18.5px auto; } }

.technology .s-technology04 .text-link { text-align: right; margin-top: 27px; color: #000; font-size: 1.4rem; }

@media screen and (max-width: 767px) { .technology .s-technology04 .text-link { margin-top: 23.5px; font-size: 1.1rem; } }

.technology .s-technology04 .text-link a { color: #000; }

@media screen and (min-width: 768px) { .technology .s-technology04 .text-link a:hover { text-decoration: none; } }

.technology .s-technology05 { margin-top: 54.2px; }

@media screen and (max-width: 767px) { .technology .s-technology05 { margin-top: 37px; } }

.technology .s-technology05 h3 { font-size: 3rem; color: #012458; letter-spacing: 0.05em; line-height: 40px; margin-bottom: 36.8px; text-align: center; }

@media screen and (max-width: 767px) { .technology .s-technology05 h3 { font-size: 1.7rem; line-height: 23px; margin-bottom: 26px; } }

.technology .s-technology05 ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }

@media screen and (max-width: 767px) { .technology .s-technology05 ul { max-width: 315px; width: 100%; } }

.technology .s-technology05 ul li { width: 225px; height: 60px; margin-right: 10px; margin-bottom: 10px; border: 1px solid #012458; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

.technology .s-technology05 ul li:nth-child(4n) { margin-right: 0; }

@media screen and (max-width: 767px) { .technology .s-technology05 ul li { width: 50%; height: auto; margin-right: 0; margin-bottom: 12px; border: none; text-align: left; padding-left: 20px; } }

@media screen and (max-width: 320px) { .technology .s-technology05 ul li { padding-left: 10px; } }

.technology .s-technology05 ul li a { width: 100%; height: 100%; color: #012458; text-decoration: none; font-size: 1.7rem; line-height: 22px; -webkit-box-sizing: border-box; box-sizing: border-box; padding-right: 35px; padding-left: 15px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; text-align: center; background: #fff url(../img/top/icon_arrow_st-b.png) no-repeat right 16px center; background-size: 8px auto; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .technology .s-technology05 ul li a:hover { background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 16px center; background-size: 8px auto; color: #fff; } }

@media screen and (max-width: 767px) { .technology .s-technology05 ul li a { font-size: 1.2rem; text-decoration: underline; line-height: 16px; background: url(../img/top/icon_arrow_st-b.png) no-repeat right 20px top 4px; background-size: 6px auto; text-align: left; display: block; padding-right: 40px; padding-left: 0px; } }

@media screen and (max-width: 320px) { .technology .s-technology05 ul li a { background: url(../img/top/icon_arrow_st-b.png) no-repeat right 10px top 2px; background-size: 6px auto; } }

.technology .technology-detail h3 { text-align: center; color: #012458; font-size: 3rem; letter-spacing: 0.1em; line-height: 40px; margin-bottom: 35.8px; }

@media screen and (max-width: 767px) { .technology .technology-detail h3 { font-size: 1.7rem; line-height: 23px; margin-bottom: 23px; } }

.technology .technology-detail .txt { width: 764px; margin: auto; font-size: 1.7rem; line-height: 32px; }

@media screen and (max-width: 767px) { .technology .technology-detail .txt { width: 100%; font-size: 1.2rem; line-height: 20px; } }

.technology .technology-detail ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: 13.3px; }

@media screen and (max-width: 767px) { .technology .technology-detail ul { margin-top: 11.5px; padding: 0 27px; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

@media screen and (max-width: 320px) { .technology .technology-detail ul { padding: 0; } }

.technology .technology-detail li { width: 170px; float: left; margin-right: 82px; margin-top: 67.3px; position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .technology .technology-detail li:hover { opacity: 0.5; } }

@media screen and (max-width: 767px) { .technology .technology-detail li { width: calc(50% - 18.5px); margin-right: 0; float: none; margin-top: 28.5px; } }

.technology .technology-detail li:nth-child(4n) { margin-right: 0; }

.technology .technology-detail li .text { margin-top: 25.4px; font-size: 2.2rem; font-weight: bold; text-align: center; line-height: 30px; letter-spacing: -1px; }

@media screen and (max-width: 767px) { .technology .technology-detail li .text { margin-top: 1.3rem; font-size: 1.5rem; line-height: 19px; font-weight: normal; } }

.technology .technology-detail li .text a { text-decoration: none; color: #000; }

.technology .technology-detail li .text a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

/* ================== resin ============================= */
.resin .s-resin01 ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

.resin .s-resin01 li { width: 303px; height: 60px; border: 1px solid #012458; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .resin .s-resin01 li { width: 100px; height: 60px; } }

.resin .s-resin01 li a { color: #012458; font-size: 1.7rem; letter-spacing: 0.05em; display: block; height: 58px; line-height: 58px; text-decoration: none; text-align: center; background: url(../img/faq/icon_arrow_b.png) no-repeat right 20px center; background-size: 9px auto; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .resin .s-resin01 li a:hover { background: #012458 url(../img/faq/icon_arrow_w.png) no-repeat right 20px center; background-size: 9px auto; color: #fff; } }

.resin .s-resin01 li a.active { background: #012458 url(../img/faq/icon_arrow_w.png) no-repeat right 20px center; background-size: 9px auto; color: #fff; }

@media screen and (max-width: 767px) { .resin .s-resin01 li a.active { background: #012458 url(../img/faq/icon_arrow_w.png) no-repeat bottom 12px center; background-size: 6px auto; } }

@media screen and (max-width: 767px) { .resin .s-resin01 li a { font-size: 1.2rem; letter-spacing: 0; background: url(../img/faq/icon_arrow_b.png) no-repeat bottom 12px center; background-size: 6px auto; padding-bottom: 7px; line-height: 50px; } }

.resin .s-resin02 { position: relative; margin-bottom: 100.5px; margin-top: 60px; }

@media screen and (max-width: 767px) { .resin .s-resin02 { margin: 30px -30px 0; } }

.resin .s-resin02 div { position: absolute; bottom: -68px; right: 50px; width: 430px; background: #fff; padding: 36px 40px 54px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .resin .s-resin02 div { position: inherit; bottom: 0; right: 0; width: calc(100% - 60px); padding: 20px 20px 36.5px; margin: -30px auto 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

.resin .s-resin02 div h3 { color: #012458; font-size: 2.6rem; margin-bottom: 16px; line-height: 35px; }

@media screen and (max-width: 767px) { .resin .s-resin02 div h3 { font-size: 1.5rem; margin-bottom: 13px; line-height: 20px; } }

.resin .s-resin02 div p { font-size: 1.7rem; line-height: 28px; }

@media screen and (max-width: 767px) { .resin .s-resin02 div p { font-size: 1.2rem; line-height: 20px; } }

.resin .title-resin { text-align: center; color: #012458; margin-bottom: 60px; }

@media screen and (max-width: 767px) { .resin .title-resin { margin-bottom: 30px; } }

.resin .title-resin h3 { font-size: 3rem; line-height: 40px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .resin .title-resin h3 { font-size: 1.7rem; line-height: 21px; } }

.resin .title-resin p { font-size: 1.5rem; line-height: 20px; margin-top: 19.6px; padding-bottom: 48.2px; position: relative; letter-spacing: 0.25em; }

@media screen and (max-width: 767px) { .resin .title-resin p { font-size: 1rem; line-height: 13px; margin-top: 12px; padding-bottom: 28.5px; } }

.resin .title-resin p:after { content: ""; width: 60px; border: 1px solid #012458; height: 2px; background: #012458; position: absolute; bottom: 0; left: 0; right: 0; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) { .resin .title-resin p:after { width: 30px; border: none; } }

.resin .s-resin-01, .resin .s-resin-02, .resin .s-resin-03, .resin .s-resin03 { background: #EDEDED; padding: 94.2px 0 112px; }

@media screen and (max-width: 767px) { .resin .s-resin-01, .resin .s-resin-02, .resin .s-resin-03, .resin .s-resin03 { padding: 47px 30px 59px; margin: 30px -30px 0; } }

.resin .s-resin-01 h3, .resin .s-resin-02 h3, .resin .s-resin-03 h3, .resin .s-resin03 h3 { text-align: center; color: #012458; font-size: 3rem; letter-spacing: 0.1em; line-height: 40px; margin-bottom: 35.8px; }

@media screen and (max-width: 767px) { .resin .s-resin-01 h3, .resin .s-resin-02 h3, .resin .s-resin-03 h3, .resin .s-resin03 h3 { font-size: 1.7rem; line-height: 23px; margin-bottom: 23px; } }

.resin .s-resin-01 div > .txt, .resin .s-resin-02 div > .txt, .resin .s-resin-03 div > .txt, .resin .s-resin03 div > .txt { width: 764px; margin: auto; font-size: 1.7rem; line-height: 32px; margin-bottom: 80px; }

@media screen and (max-width: 767px) { .resin .s-resin-01 div > .txt, .resin .s-resin-02 div > .txt, .resin .s-resin-03 div > .txt, .resin .s-resin03 div > .txt { width: 100%; font-size: 1.2rem; line-height: 20px; } }

.resin .s-resin-01 ul, .resin .s-resin-02 ul, .resin .s-resin-03 ul, .resin .s-resin03 ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: left; -ms-flex-pack: left; justify-content: left; }

@media screen and (max-width: 767px) { .resin .s-resin-01 ul, .resin .s-resin-02 ul, .resin .s-resin-03 ul, .resin .s-resin03 ul { padding: 0 28px; } }

.resin .s-resin-01 li, .resin .s-resin-02 li, .resin .s-resin-03 li, .resin .s-resin03 li { width: 170px; margin-right: 82px; text-align: center; margin-bottom: 40px; position: relative; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .resin .s-resin-01 li:hover, .resin .s-resin-02 li:hover, .resin .s-resin-03 li:hover, .resin .s-resin03 li:hover { opacity: 0.5; } }

@media screen and (max-width: 767px) { .resin .s-resin-01 li, .resin .s-resin-02 li, .resin .s-resin-03 li, .resin .s-resin03 li { width: calc(50% - 18.5px); margin-right: 34px; margin-bottom: 28.5px; }
  .resin .s-resin-01 li:nth-child(2n), .resin .s-resin-02 li:nth-child(2n), .resin .s-resin-03 li:nth-child(2n), .resin .s-resin03 li:nth-child(2n) { margin-right: 0; } }

.resin .s-resin-01 li:nth-child(4n), .resin .s-resin-02 li:nth-child(4n), .resin .s-resin-03 li:nth-child(4n), .resin .s-resin03 li:nth-child(4n) { margin-right: 0; }

.resin .s-resin-01 li .txt, .resin .s-resin-02 li .txt, .resin .s-resin-03 li .txt, .resin .s-resin03 li .txt { margin: 25.4px 0 0; font-size: 2.2rem; font-weight: bold; line-height: 28px; letter-spacing: -1px; }

@media screen and (max-width: 767px) { .resin .s-resin-01 li .txt, .resin .s-resin-02 li .txt, .resin .s-resin-03 li .txt, .resin .s-resin03 li .txt { margin: 13px; font-size: 1.5rem; line-height: 21px; font-weight: normal; } }

.resin .s-resin-01 li .txt a, .resin .s-resin-02 li .txt a, .resin .s-resin-03 li .txt a, .resin .s-resin03 li .txt a { text-decoration: none; color: #000; }

.resin .s-resin-01 li .txt a:after, .resin .s-resin-02 li .txt a:after, .resin .s-resin-03 li .txt a:after, .resin .s-resin03 li .txt a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

.resin .s-resin-01 { padding-top: 0; }

.resin .s-resin-01, .resin .s-resin-03 { background-color: #FFF; }

.resin .texty-link { text-align: right; margin-top: 5px; font-size: 1.4rem; }

@media screen and (max-width: 767px) { .resin .texty-link { margin-top: 6px; font-size: 1.1rem; } }

.resin .texty-link a { color: #000; }

@media screen and (min-width: 768px) { .resin .texty-link a:hover { text-decoration: none; } }

.resin .s-resin04 { padding: 94.2px 0 30px; }

@media screen and (max-width: 767px) { .resin .s-resin04 { padding: 57px 30px 0; margin: 0 -30px; } }

.resin .s-resin04 ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

@media screen and (max-width: 767px) { .resin .s-resin04 ul { padding: 0 28px; display: block; text-align: center; } }

.resin .s-resin04 li { width: 210px; margin: 0 40px; }

@media screen and (max-width: 767px) { .resin .s-resin04 li { width: calc(50% - 12px); margin-right: 0; margin-bottom: 28.5px; margin: 0; display: inline-block; vertical-align: middle; text-align: left; }
  .resin .s-resin04 li:first-child { float: left; margin-bottom: 45px; }
  .resin .s-resin04 li:nth-child(2n) { float: right; margin-bottom: 45px; } }

.resin .s-resin04 h4 { color: #012458; font-size: 2.2rem; text-align: center; margin: 25.5px 0 18px; }

@media screen and (max-width: 767px) { .resin .s-resin04 h4 { font-size: 1.5rem; margin: 15px 0 16px; line-height: 20px; } }

.resin .s-resin04 .txt { color: #012458; font-size: 1.7rem; line-height: 28px; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .resin .s-resin04 .txt { font-size: 1.2rem; line-height: 19px; } }

.resin .s-resin04 a { text-decoration: none; color: #012458; }

/* ================== resin ============================= */
.sample .list-samble { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-bottom: 60px; }

@media screen and (max-width: 767px) { .sample .list-samble { margin-bottom: 20px; display: block; } }

.sample .list-samble li { width: 380px; height: 60px; margin: 0 5px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .sample .list-samble li { width: 100%; max-width: 315px; margin: 0 auto 10px; height: 40px; } }

.sample .list-samble li a { display: block; text-decoration: none; color: #012458; font-size: 1.7rem; height: 58px; line-height: 58px; border: 1px solid #012458; background: #fff url(../img/faq/icon_arrow_b.png) no-repeat right 18px center; background-size: 9px auto; text-align: center; font-weight: bold; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .sample .list-samble li a:hover { background: #012458 url(../img/faq/icon_arrow_w.png) no-repeat right 18px center; background-size: 9px auto; color: #fff; } }

@media screen and (max-width: 767px) { .sample .list-samble li a { font-size: 1.2rem; height: 38px; line-height: 38px; background: #fff url(../img/faq/icon_arrow_b.png) no-repeat right 11px center; background-size: 6px auto; } }

.sample .l-sample01 { background: #EDEDED; padding-bottom: 120px; }

@media screen and (max-width: 767px) { .sample .l-sample01 { padding: 0 0px 75px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

.sample .l-sample01 .img { width: 100%; height: 450px; overflow: hidden; }

@media screen and (max-width: 767px) { .sample .l-sample01 .img { height: 225px; } }

.sample .l-sample01 .img img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

.sample .l-sample01 .inner { margin-top: -140px; background: #fff; padding: 64.2px 80px 79px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .sample .l-sample01 .inner { margin: -40px 30px 0; padding: 27px 20px 33px; } }

.sample .l-sample01 .inner h3 { color: #012458; font-size: 3rem; letter-spacing: 0.1em; line-height: 40px; margin-bottom: 38.6px; text-align: center; }

@media screen and (max-width: 767px) { .sample .l-sample01 .inner h3 { font-size: 1.5rem; line-height: 20px; margin-bottom: 18px; } }

.sample .l-sample01 .inner p { font-size: 1.7rem; line-height: 32px; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .sample .l-sample01 .inner p { font-size: 1.2rem; line-height: 20px; letter-spacing: 0; } }

.sample .s-sample01 { margin-top: 75.2px; }

@media screen and (max-width: 767px) { .sample .s-sample01 { margin: 37.5px 30px 0; } }

.sample .s-sample01 h3 { text-align: center; font-size: 2.4rem; color: #012458; font-weight: bold; margin-bottom: 47px; }

@media screen and (max-width: 767px) { .sample .s-sample01 h3 { font-size: 1.4rem; margin-bottom: 22.5px; } }

.sample .s-sample01 .box { width: 25px; height: 25px; color: #fff; font-size: 1.4rem; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; font-family: 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; font-weight: bold; border-radius: 100%; }

@media screen and (max-width: 767px) { .sample .s-sample01 .box { width: 21px; height: 21px; font-size: 1.1rem; } }

.sample .s-sample01 .box.orange { background: #F39700; }

.sample .s-sample01 .box.green { background: #009E96; }

.sample .s-sample01 .note-txt { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-bottom: 36px; }

@media screen and (max-width: 767px) { .sample .s-sample01 .note-txt { display: block; margin-bottom: 21px; } }

.sample .s-sample01 .note-txt li { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 0 25px; font-size: 1.4rem; }

@media screen and (max-width: 767px) { .sample .s-sample01 .note-txt li { width: 191px; margin: auto; font-size: 1.1rem; margin-bottom: 10px; } }

.sample .s-sample01 .note-txt li .box { margin-right: 8px; }

@media screen and (max-width: 767px) { .sample .s-sample01 .note-txt li .box { margin-right: 5px; } }

.sample .s-sample01 .line { width: 639px; height: 2px; background: #9E9E9E; margin: 21px auto 27px; position: relative; }

@media screen and (max-width: 767px) { .sample .s-sample01 .line { width: 2px; height: 20px; margin: auto; } }

.sample .s-sample01 .line:before { content: ""; width: 2px; height: 21px; background: #9E9E9E; position: absolute; top: -21px; right: 0; }

@media screen and (max-width: 767px) { .sample .s-sample01 .line:before { content: none; } }

.sample .s-sample01 .line:after { content: ""; width: 2px; height: 27px; background: #9E9E9E; position: absolute; bottom: -27px; left: 0; }

@media screen and (max-width: 767px) { .sample .s-sample01 .line:after { content: none; } }

.sample .s-sample01 .list-sec { margin-top: 27px; display: -webkit-box; display: -ms-flexbox; display: flex; }

@media screen and (max-width: 767px) { .sample .s-sample01 .list-sec { margin-top: 0px; display: block; } }

.sample .s-sample01 .list-sec .sec { width: 290px; background: #fff; }

@media screen and (max-width: 767px) { .sample .s-sample01 .list-sec .sec { width: 100%; } }

.sample .s-sample01 .list-sec .step { background: #153463; padding: 13px 12px 12px 17px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 767px) { .sample .s-sample01 .list-sec .step { padding: 8px 16px 8px 20px; } }

.sample .s-sample01 .list-sec .step h4 { font-size: 1.8rem; color: #fff; }

@media screen and (max-width: 767px) { .sample .s-sample01 .list-sec .step h4 { font-size: 1.3rem; font-weight: normal; } }

.sample .s-sample01 .list-sec .step h4 span { font-size: 1.4rem; margin-right: 14px; }

@media screen and (max-width: 767px) { .sample .s-sample01 .list-sec .step h4 span { font-size: 1.2rem; margin-right: 7px; } }

.sample .s-sample01 .list-sec .content { background: #fff; padding: 20px 20px 21px; font-size: 1.4rem; line-height: 22px; }

@media screen and (max-width: 767px) { .sample .s-sample01 .list-sec .content { padding: 20px 25px; font-size: 1.1rem; line-height: 20px; } }

.sample .s-sample01 .list-sec .content a { color: #009E96; }

@media screen and (min-width: 768px) { .sample .s-sample01 .list-sec .content a:hover { text-decoration: none; } }

.sample .s-sample01 .list-sec .icon { width: 30px; position: relative; }

@media screen and (max-width: 767px) { .sample .s-sample01 .list-sec .icon { width: 2px; height: 20px; background: #9E9E9E; margin: auto; } }

.sample .s-sample01 .list-sec .icon:after { content: ""; width: 100%; height: 2px; position: absolute; top: 53%; margin-top: -1px; background: #9E9E9E; }

@media screen and (max-width: 767px) { .sample .s-sample01 .list-sec .icon:after { content: none; } }

.sample .l-sample02 { background: #EDEDED; }

.sample .l-sample02 .img { width: 100%; height: 450px; overflow: hidden; }

@media screen and (max-width: 767px) { .sample .l-sample02 .img { height: 225px; } }

.sample .l-sample02 .img img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

.sample .l-sample02 .inner { margin-top: -140px; margin-bottom: 75.2px; background: #fff; padding: 64.2px 80px 80px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .sample .l-sample02 .inner { margin: -40px 30px 42px; padding: 27px 20px 33px; } }

.sample .l-sample02 .inner h3 { color: #012458; font-size: 3rem; letter-spacing: 0.1em; line-height: 40px; margin-bottom: 38.6px; text-align: center; }

@media screen and (max-width: 767px) { .sample .l-sample02 .inner h3 { font-size: 1.5rem; line-height: 20px; margin-bottom: 18px; } }

.sample .l-sample02 .inner p { font-size: 1.7rem; line-height: 32px; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .sample .l-sample02 .inner p { font-size: 1.2rem; line-height: 20px; } }

.sample .l-sample02 .in-inner { border: 2px solid #012458; padding: 47px 60px 23px; margin-top: 80px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .sample .l-sample02 .in-inner { border: 1px solid #012458; padding: 25px 15px 10px; margin-top: 40px; } }

.sample .l-sample02 .in-inner h4 { color: #012458; font-size: 2.4rem; margin-bottom: 37.8px; text-align: center; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .sample .l-sample02 .in-inner h4 { font-size: 1.4rem; margin-bottom: 17.5px; } }

.sample .l-sample02 .in-inner .txt { font-size: 1.7rem; line-height: 32px; letter-spacing: 0.05em; border-bottom: 1px solid #9E9E9E; padding-bottom: 50px; margin-bottom: 37px; }

@media screen and (max-width: 767px) { .sample .l-sample02 .in-inner .txt { font-size: 1.2rem; line-height: 20px; padding-bottom: 25px; margin-bottom: 18px; } }

.sample .l-sample02 .in-inner dl { display: table; width: 100%; margin-bottom: 35px; }

@media screen and (max-width: 767px) { .sample .l-sample02 .in-inner dl { display: block; margin-bottom: 15px; } }

.sample .l-sample02 .in-inner dl dt { display: table-cell; vertical-align: top; font-weight: bold; width: 125px; padding-left: 8px; padding-top: 2px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .sample .l-sample02 .in-inner dl dt { display: block; width: 100%; padding-left: 0; font-size: 1.2rem; margin-bottom: 6.5px; } }

.sample .l-sample02 .in-inner dl dd { font-size: 1.7rem; line-height: 28px; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .sample .l-sample02 .in-inner dl dd { font-size: 1.2rem; line-height: 20px; } }

.sample .s-sample02 { padding-bottom: 150px; }

@media screen and (max-width: 767px) { .sample .s-sample02 { padding-bottom: 75px; margin: 0 30px; } }

.sample .s-sample02 h3 { text-align: center; font-size: 2.4rem; color: #012458; line-height: 32px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .sample .s-sample02 h3 { font-size: 1.4rem; line-height: 19px; margin-bottom: 3px; } }

.sample .s-sample02 .sec { border: 2px solid #012458; padding: 55px 80px 40px; background: #fff; margin-top: 65px; text-align: center; position: relative; }

@media screen and (max-width: 767px) { .sample .s-sample02 .sec { border: 1px solid #012458; padding: 33px 20px 25px; margin-top: 38.5px; } }

.sample .s-sample02 h4 { font-size: 1.8rem; color: #fff; font-weight: bold; letter-spacing: 0.05em; position: absolute; top: -18px; left: 0; width: 100%; }

@media screen and (max-width: 767px) { .sample .s-sample02 h4 { font-size: 1.3rem; top: -12px; } }

.sample .s-sample02 h4 span { display: inline-block; padding: 6.2px 25px 5.2px; line-height: 24px; background: #012458; position: relative; }

@media screen and (max-width: 767px) { .sample .s-sample02 h4 span { padding: 5px 20px; line-height: 16px; } }

.sample .s-sample02 h4 span:before, .sample .s-sample02 h4 span:after { content: ''; position: absolute; height: 0; width: 0; border-style: solid; border-right-color: inherit; border-left-color: inherit; color: #fff; border-color: transparent #012458; border-width: 0; top: 0; z-index: 9; }

.sample .s-sample02 h4 span:before { left: -12px; border-width: 18px 12px 17px 0; }

@media screen and (max-width: 767px) { .sample .s-sample02 h4 span:before { left: -12px; border-width: 13px 12px 13px 0; } }

.sample .s-sample02 h4 span:after { right: -12px; border-width: 18px 0px 17px 12px; }

@media screen and (max-width: 767px) { .sample .s-sample02 h4 span:after { right: -12px; border-width: 13px 0px 13px 12px; } }

.sample .s-sample02 .in-sec { text-align: left; }

@media screen and (max-width: 767px) { .sample .s-sample02 .in-sec { text-align: center; } }

.sample .s-sample02 .in-sec p { font-size: 1.4rem; line-height: 28px; }

@media screen and (max-width: 767px) { .sample .s-sample02 .in-sec p { font-size: 1.2rem; line-height: 20px; text-align: left; } }

.sample .s-sample02 .in-sec .img { width: 370px; float: right; margin-left: 30px; margin-bottom: 30px; }

@media screen and (max-width: 767px) { .sample .s-sample02 .in-sec .img { width: 235px; float: none; margin: auto auto 20px; } }

.sample .s-sample02 .in-sec ul { display: -webkit-box; display: -ms-flexbox; display: flex; }

@media screen and (max-width: 767px) { .sample .s-sample02 .in-sec ul { display: block; text-align: center; } }

.sample .s-sample02 .in-sec ul li { width: 370px; margin: 0 15px; }

@media screen and (max-width: 767px) { .sample .s-sample02 .in-sec ul li { width: 235px; margin: 0 auto 10px; }
  .sample .s-sample02 .in-sec ul li:last-child { margin-bottom: 0; } }

.sample .s-sample02 .in-sec ul li img { width: 100%; }

/* ================== case ============================= */
.case .s-case01 h3 { font-size: 3rem; color: #012458; letter-spacing: 0.1em; text-align: center; margin-bottom: 36px; }

@media screen and (max-width: 767px) { .case .s-case01 h3 { font-size: 17px; margin-bottom: 22.5px; } }

.case .s-case01 .txt { width: 764px; margin: auto; font-size: 1.7rem; line-height: 32px; margin-bottom: 50px; }

@media screen and (max-width: 767px) { .case .s-case01 .txt { width: 100%; font-size: 1.2rem; line-height: 20px; margin-bottom: 30px; } }

.case .s-case01 ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.case .s-case01 li { width: 303px; height: 60px; border: 1px solid #012458; margin-top: 10px; margin-right: 10px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .case .s-case01 li { width: calc(50% - 5px); height: 40px; margin-top: 10px; margin-right: 10px; }
  .case .s-case01 li:nth-child(2n) { margin-right: 0; } }

.case .s-case01 li:nth-child(3n) { margin-right: 0; }

@media screen and (max-width: 767px) { .case .s-case01 li:nth-child(3n) { margin-right: 10px; } }

.case .s-case01 li a { color: #012458; font-size: 1.7rem; letter-spacing: 0.05em; display: block; height: 58px; line-height: 58px; text-decoration: none; text-align: center; background: url(../img/faq/icon_arrow_b.png) no-repeat right 20px center; background-size: 9px auto; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .case .s-case01 li a:hover { background: #012458 url(../img/faq/icon_arrow_w.png) no-repeat right 20px center; background-size: 9px auto; color: #fff; } }

@media screen and (max-width: 767px) { .case .s-case01 li a { font-size: 1.2rem; background: url(../img/faq/icon_arrow_b.png) no-repeat right 12px center; background-size: 6px auto; height: 38px; line-height: 38px; } }

.case .s-case01 li a.active { background: #012458 url(../img/faq/icon_arrow_w.png) no-repeat right 20px center; background-size: 9px auto; color: #fff; }

@media screen and (max-width: 767px) { .case .s-case01 li a.active { background: #012458 url(../img/faq/icon_arrow_w.png) no-repeat right 12px center; background-size: 6px auto; } }

.case .include-case { margin-top: 80px; }

@media screen and (max-width: 767px) { .case .include-case { margin-top: 35px; } }

.case .include-case li { margin-bottom: 50px; }

@media screen and (max-width: 767px) { .case .include-case li { margin-bottom: 20px; } }

.case .include-case .bnt { text-align: center; margin: 50px auto 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .case .include-case .bnt { margin: 40px auto 0; } }

.case .include-case .bnt a { display: block; margin: auto; width: 536px; border: 2px solid #012458; line-height: 28px; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 22px center; background-size: 9px auto; color: #fff; text-decoration: none; font-size: 1.8rem; font-weight: bold; text-align: center; padding: 19px 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .case .include-case .bnt a:hover { background: #fff url(../img/top/icon_arrow_st-b.png) no-repeat right 22px center; background-size: 9px auto; color: #012458; } }

@media screen and (max-width: 767px) { .case .include-case .bnt a { width: 100%; max-width: 315px; border: 2px solid #012458; line-height: 20px; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 13px center; background-size: 6px auto; font-size: 1.2rem; padding: 8px 0; } }

.case .include-case .img { position: relative; }

.case .include-case .img span { position: absolute; background: #153463; padding: 5px 14px 6px 13px; line-height: 19px; color: #fff; font-size: 1.4rem; letter-spacing: 0.05em; top: 0; left: 0; }

@media screen and (max-width: 767px) { .case .include-case .img span { font-size: 1rem; padding: 2px 9px 1px 8px; } }

/* ================== case detail ============================= */
.case-detail .include-case .title-h3 { margin-bottom: 36px; }

@media screen and (max-width: 767px) { .case-detail .include-case .title-h3 { margin-bottom: 27.5px; } }

.case-detail .include-case .text-link { margin-top: 47px; }

@media screen and (max-width: 767px) { .case-detail .include-case .text-link { margin-top: 23.5px; } }

.case-detail .include-case .bnt { width: 540px; text-align: center; margin: 98px auto; }

@media screen and (max-width: 767px) { .case-detail .include-case .bnt { width: 100%; max-width: 315px; margin: 49px auto 0; } }

.case-detail .include-case .bnt a { display: block; line-height: 28px; padding: 19px 0; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 22px center; background-size: 9px auto; color: #fff; text-decoration: none; font-weight: bold; border: 2px solid #012458; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .case-detail .include-case .bnt a:hover { background: #fff url(../img/top/icon_arrow_st-b.png) no-repeat right 22px center; background-size: 9px auto; color: #012458; } }

@media screen and (max-width: 767px) { .case-detail .include-case .bnt a { line-height: 20px; font-size: 1.2rem; font-weight: normal; padding: 10px; background: #012458 url(../img/top/icon_arrow_st-w.png) no-repeat right 13px center; background-size: 6px auto; } }

/* ================== images hexxa ============================= */
.hexa, .hexa div { margin: 0 auto; -webkit-transform-origin: 50% 50%; -ms-transform-origin: 50% 50%; transform-origin: 50% 50%; overflow: hidden; }

.hexa { width: 170px; height: 197px; }

@media screen and (max-width: 767px) { .hexa { height: 130px; width: 112px; } }

.hexa div { width: 100%; height: 100%; }

.hexa { -webkit-transform: rotate(120deg); -ms-transform: rotate(120deg); transform: rotate(120deg); }

.hex1 { -webkit-transform: rotate(-60deg); -ms-transform: rotate(-60deg); transform: rotate(-60deg); }

.hex2 { -webkit-transform: rotate(-60deg); -ms-transform: rotate(-60deg); transform: rotate(-60deg); }

.hexa img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

.compat-object-fit { background-size: cover; background-position: center center; }

.compat-object-fit img { opacity: 0; }

.include-case .title-h3 { text-align: center; margin-bottom: 60px; color: #012458; }

@media screen and (max-width: 767px) { .include-case .title-h3 { margin-bottom: 30px; } }

.include-case .title-h3 h3 { font-size: 3rem; line-height: 40px; letter-spacing: 0.1em; }

@media screen and (max-width: 767px) { .include-case .title-h3 h3 { font-size: 1.7rem; line-height: 21px; } }

.include-case .title-h3 p { font-size: 1.5rem; line-height: 20px; margin-top: 17px; padding-bottom: 50px; position: relative; letter-spacing: 0.25em; }

@media screen and (max-width: 767px) { .include-case .title-h3 p { font-size: 1rem; line-height: 13px; margin-top: 12px; padding-bottom: 28.5px; } }

.include-case .title-h3 p:after { content: ""; width: 60px; border: 1px solid #012458; height: 2px; background: #012458; position: absolute; bottom: 0; left: 0; right: 0; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 767px) { .include-case .title-h3 p:after { width: 30px; border: none; } }

.include-case .category { font-size: 1.2rem; color: #fff; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .include-case .category { font-size: 1rem; } }

.include-case .category span { display: block; float: left; padding: 3px 12px 0; margin-right: 8px; line-height: 19px; }

@media screen and (max-width: 767px) { .include-case .category span { padding: 2px 6px 0; margin-right: 6.5px; line-height: 16px; } }

@media screen and (max-width: 320px) { .include-case .category span { padding: 2px 3px 0; margin-right: 3px; } }

.include-case .category .grey { background: #848484; }

.include-case .category .blue { background: #028ABC; }

.include-case .category .orange { background: #F39700; }

.include-case ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: left; -ms-flex-pack: left; justify-content: left; }

@media screen and (max-width: 767px) { .include-case ul { display: block; } }

.include-case ul li { width: 290px; position: relative; margin-right: 30px; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

.include-case ul li:nth-of-type(3n) { margin-right: 0; }

@media screen and (min-width: 768px) { .include-case ul li:hover { opacity: 0.5; } }

@media screen and (max-width: 767px) { .include-case ul li { width: 100%; margin-bottom: 20px; background: #F2F2F2; margin-right: 0; } }

.include-case ul li a:after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 33; }

.include-case ul .img { margin-bottom: 24px; width: 100%; height: 200px; }

@media screen and (max-width: 767px) { .include-case ul .img { width: 115px; margin-bottom: 0; vertical-align: top; width: 115px; height: 90px; float: left; } }

.include-case ul .img img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

@media screen and (max-width: 767px) { .include-case ul .inner { padding: 10px; float: right; width: calc(100% - 115px); -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

@media screen and (max-width: 320px) { .include-case ul .inner { padding: 10px 5px; } }

.include-case ul h4 { color: #012458; font-size: 2.2rem; margin: 13px 0 18px; line-height: 30px; }

@media screen and (max-width: 767px) { .include-case ul h4 { font-size: 1.2rem; line-height: 21px; margin: 9px 0 0; } }

@media screen and (max-width: 320px) { .include-case ul h4 { margin: 9px 0 0; font-size: 1.1rem; line-height: 18px; } }

.include-case ul h4 a { text-decoration: none; color: #012458; }

.include-case ul .txt { font-size: 1.7rem; line-height: 28px; letter-spacing: 0.05em; }

@media screen and (max-width: 767px) { .include-case ul .txt { display: none; } }

.include-case .text-link { text-align: right; margin-top: 47px; }

@media screen and (max-width: 767px) { .include-case .text-link { margin-top: 23.5px; } }

.include-case .text-link a { color: #000; font-size: 1.4rem; }

@media screen and (min-width: 768px) { .include-case .text-link a:hover { text-decoration: none; } }

@media screen and (max-width: 767px) { .include-case .text-link a { font-size: 1.1rem; } }

.ie .include-contact .inner .tel { background: url(../img/technology/tel.png) no-repeat left top 5px; background-size: 31px auto; font-size: 3.1rem; }

.include-contact { margin-top: 148px; background: url(../img/technology/bg_cta.png) no-repeat center center; background-size: cover; padding: 29px 0 30px; }

@media screen and (max-width: 767px) { .include-contact { margin: 74px -30px 0; background: url(../img/technology/bg_cta_xp.png) no-repeat center center; background-size: cover; padding: 35px 30px; } }

.include-contact .inner { text-align: center; background: #fff; padding: 27.2px 50px 31px 60px; text-align: center; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 767px) { .include-contact .inner { padding: 22.5px 10px 25px; } }

.include-contact .inner h3 { color: #012458; font-size: 2.7rem; letter-spacing: 0.1em; line-height: 36px; margin-bottom: 23.8px; }

@media screen and (max-width: 767px) { .include-contact .inner h3 { font-size: 1.4rem; letter-spacing: 0.05em; line-height: 17px; margin-bottom: 12px; } }

.include-contact .inner dl { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

@media screen and (max-width: 767px) { .include-contact .inner dl { display: block; } }

.include-contact .inner dt { width: 357px; border-right: 1px solid #9E9E9E; text-align: left; color: #012458; }

@media screen and (max-width: 767px) { .include-contact .inner dt { width: 100%; border-right: none; text-align: center; }
  .include-contact .inner dt div { background: #012458; padding: 12px 5px; color: #fff; margin: 9px auto 15px; width: 225px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }

.include-contact .inner dd { padding-left: 42px; }

@media screen and (max-width: 767px) { .include-contact .inner dd { padding-left: 0; } }

.include-contact .inner .txt1 { font-size: 1.7rem; }

@media screen and (max-width: 767px) { .include-contact .inner .txt1 { font-size: 1.1rem; } }

.include-contact .inner .tel { background: url(../img/technology/tel.png) no-repeat left top 8px; background-size: 31px auto; padding-left: 40px; font-size: 3.6rem; letter-spacing: 0.05em; line-height: 48px; font-weight: bold; }

@media screen and (max-width: 767px) { .include-contact .inner .tel { background: url(../img/technology/tel_sp.png) no-repeat left top 3px; background-size: 18px auto; padding-left: 24px; font-size: 1.8rem; line-height: 24px; display: inline-block; }
  .include-contact .inner .tel a { text-decoration: none; color: #fff; } }

.include-contact .inner .txt2 { font-size: 1.2rem; }

@media screen and (max-width: 767px) { .include-contact .inner .txt2 { font-size: 1rem; margin-top: 3px; } }

.include-contact .inner .bnt { width: 420px; height: 80px; border: 2px solid #009E96; background: #009E96 url(../img/top/icon_arrow_st-w.png) no-repeat right 20.8px center; background-size: 8.67px auto; text-align: center; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; }

@media screen and (min-width: 768px) { .include-contact .inner .bnt:hover { background: #fff url(../img/common/icon_arrow_g.png) no-repeat right 20.8px center; background-size: 8.67px auto; }
  .include-contact .inner .bnt:hover a { color: #009E96; }
  .include-contact .inner .bnt:hover a:before { content: ""; background: url(../img/common/icon_mail-gre.png) no-repeat center center; background-size: 32px auto; } }

@media screen and (max-width: 767px) { .include-contact .inner .bnt { width: 225px; height: 45px; background: #009E96 url(../img/top/icon_arrow_st-w.png) no-repeat right 15px top 16px; background-size: 6.075px auto; margin: auto; } }

.include-contact .inner .bnt a { color: #fff; text-decoration: none; font-weight: bold; font-size: 2.2rem; text-align: center; display: block; height: 80px; line-height: 77px; padding-left: 29.3px; position: relative; }

@media screen and (max-width: 767px) { .include-contact .inner .bnt a { height: 45px; line-height: 43px; font-weight: normal; font-size: 1.4rem; padding-left: 10px; } }

.include-contact .inner .bnt a:before { content: ""; background: url(../img/common/icon_mail.png) no-repeat center center; background-size: 32px auto; width: 32px; height: 22px; position: absolute; left: 64.3px; top: 52%; margin-top: -14px; }

@media screen and (max-width: 767px) { .include-contact .inner .bnt a:before { background: url(../img/common/icon_mail.png) no-repeat center center; background-size: 16px auto; width: 16px; height: 11px; position: absolute; left: 19px; top: 46%; margin-top: -5px; } }

@-webkit-keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }

@keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }

.fadeIn { -webkit-animation-name: fadeIn; animation-name: fadeIn; }

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


.jyushipedia .c-content ul {
  margin:1em 0;
  padding-left:40px;
}

.jyushipedia.single .c-content li {
  display:list-item;
  list-style: inside;
}

header .c-gnav li a {
  padding: 0 12px;
}


header .c-gnav li {
  font-size: 1.4rem;
}




















