/* ================================================= 
 top setting
================================================= */
#top-indexcontents .sect {
  padding: 6em 0;
}
#top-indexcontents .sect .row {
  position: relative;
}
#top-indexcontents .sect h2 {
  font-weight: 400;
  font-size: 26px;
  font-size: 2.6rem;
  margin-bottom: 1em;
}
#top-indexcontents .sect h2 span {
  display: block;
  color: #0066cc;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 500;
  margin-bottom: 10px;
  position: relative;
}
#top-indexcontents .sect h2 span:after {
  content: "";
  width: 200px;
  height: 1px;
  background-color: #0066cc;
  position: absolute;
  top: 50%;
  left: 100px;
}
#top-indexcontents .sect .bg-image {
  width: 44%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  position: absolute;
}
#top-indexcontents #top-company {
  position: relative;
}
#top-indexcontents #top-company:after {
  content: "";
  width: 50%;
  height: 65%;
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: #f6f6f6;
  z-index: -1;
}
#top-indexcontents #top-company .bg-image {
  right: 0;
}
#top-indexcontents #top-company .inner {
  width: 53%;
  padding: 4em 0;
}
#top-indexcontents #top-recruit {
  padding-bottom: 8em;
  background: url(../images/top/bg.jpg) no-repeat center top;
}
#top-indexcontents #top-recruit .bg-image {
  left: 0;
}
#top-indexcontents #top-recruit .inner {
  width: 53%;
  margin-left: auto;
  padding: 4em 0;
}
#top-indexcontents #top-contents .img-link {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
#top-indexcontents #top-contents .img-link a {
  height: 340px;
  display: block;
  color: white;
}
#top-indexcontents #top-contents .img-link a:before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  position: absolute;
}
#top-indexcontents #top-contents .img-link a:hover .bg {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -o-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
  opacity: 1;
}
#top-indexcontents #top-contents .img-link .bg {
  -moz-transition: -moz-transform 0.3s linear;
  -webkit-transition: -webkit-transform 0.3s linear;
  -o-transition: -o-transform 0.3s linear;
  -ms-transition: -ms-transform 0.3s linear;
  transition: transform 0.3s linear;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-size: cover;
  position: absolute;
  z-index: -1;
}
#top-indexcontents #top-contents .img-link .inner {
  width: 100%;
  height: 80px;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 1;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.75);
}
#top-indexcontents #top-contents .img-link .inner h3 {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 500;
}
#top-indexcontents #top-contents .col-md-2 .img-link {
  width: 50%;
}
#top-indexcontents #top-contents .col-md-3 .img-link {
  width: 33.333%;
}

/* ================================================= 
 sub common setting
================================================= */
.contents_tel {
  text-align: center;
  margin: 1em 0 0;
  font-size: 1.25em;
  font-weight: 700;
}
.contents_tel > a {
  display: inline-block;
  margin-left: 20px;
  padding-left: 30px;
  font-size: 40px;
  font-size: 4rem;
  background: url(../images/common/tel.svg) no-repeat left center;
  background-size: 26px auto;
}
@media screen and (max-width: 992px) {
  .contents_tel {
    margin: 2em 0 1em;
    line-height: 1.4;
  }
  .contents_tel > a {
    margin-left: 0;
    padding-left: 25px;
    font-size: 34px;
    font-size: 3.4rem;
    background-size: 20px auto;
  }
}

#page-nav {
  max-width: 1180px;
  width: 94%;
  margin: 40px auto;
}
#page-nav .flex.md-5 li {
  width: 18%;
}
#page-nav .flex li {
  width: 14.666%;
}
#page-nav .flex li a {
  display: block;
  padding: 8px 0;
  border: 1px solid #0066cc;
  color: #0066cc;
  line-height: 1.2;
  text-align: center;
  border-radius: 50px;
  box-sizing: border-box;
}
#page-nav .flex li a:hover, #page-nav .flex li a.active {
  text-decoration: none !important;
  background: linear-gradient(90deg, #0066cc 0%, #3e9fff 100%);
  color: white !important;
  border-color: #3e9fff;
}

/* ================================================= 
 company setting
================================================= */
#company #intoro {
  position: relative;
}
#company #intoro .row {
  position: relative;
}
#company #intoro h2 {
  font-weight: 400;
  font-size: 26px;
  font-size: 2.6rem;
  margin-bottom: 1em;
}
#company #intoro h2 span {
  display: block;
  color: #0066cc;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 500;
  margin-bottom: 10px;
  position: relative;
}
#company #intoro h2 span:after {
  content: "";
  width: 200px;
  height: 1px;
  background-color: #0066cc;
  position: absolute;
  top: 50%;
  left: 100px;
}
#company #intoro .bg-image {
  width: 44%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  position: absolute;
  right: 0;
}
#company #intoro:after {
  content: "";
  width: 50%;
  height: 65%;
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: #f6f6f6;
  z-index: -1;
}
#company #intoro .inner {
  width: 53%;
  padding: 4em 0;
}
#company #philosophy .container {
  max-width: 960px;
  padding: 2.5%;
  border: 2px solid #0066cc;
}
#company #philosophy .container h2 {
  font-size: 30px;
  font-size: 3rem;
  color: #0066cc;
  text-align: center;
  margin-bottom: 1em;
}
#company #philosophy .container ul li {
  padding-left: 20px;
  margin-bottom: 1em;
  font-size: 1.35em;
  font-weight: 500;
  line-height: 1.6;
  position: relative;
}
#company #philosophy .container ul li span {
  border-bottom: 1px dashed #ddd;
}
#company #philosophy .container ul li:last-child {
  margin-bottom: 0;
}
#company #philosophy .container ul li:before {
  content: "";
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background-color: #0066cc;
  position: absolute;
  top: 8px;
  left: 0;
}
#company #outline .flex .left {
  width: 48%;
  margin-right: 4%;
}
#company #outline .flex .right {
  width: 48%;
}
#company #outline .whitebox {
  margin-top: 2em;
}
#company #outline .whitebox .m_ttl .small {
  font-size: 16px;
  font-size: 1.6rem;
}
#company #outline .whitebox ul li {
  width: 25%;
}
#company #outline .whitebox ul li a {
  text-decoration: underline;
}
#company #outline .whitebox ul.list-n2 li {
  width: 23%;
}
#company #outline .whitebox ul.list-n2 li:nth-child(4n+2) {
  width: 31%;
}
#company #map .blc {
  width: 48%;
  margin-top: 2em;
  padding: 10px;
  background-color: white;
}
#company #map .blc:nth-child(odd) {
  margin-right: 4%;
}
#company #map .blc .inner {
  padding: 0 10px;
  margin-top: 1em;
}
#company #map .blc .inner h2 {
  font-size: 20px;
  font-size: 2rem;
}
#company #map .blc .inner p {
  line-height: 1.6;
}
#company #oraganization .img-wrap {
  max-width: 867px;
  margin: auto;
}
#company #iso .whitebox {
  max-width: 980px;
  margin: 2em auto;
}
#company #iso .whitebox .img-wrap {
  max-width: 300px;
  margin: 0 20px;
}
#company #iso .whitebox .inner {
  flex: 1;
  padding-left: 5%;
}
#company #iso .whitebox .inner .s_ttl {
  margin-bottom: 0.25em;
}
#company #iso .whitebox .inner p {
  margin-bottom: 1em;
}
#company #iso .whitebox .inner p:last-child {
  margin-bottom: 0;
}
#company #iso .link-image .img-wrap {
  max-width: 240px;
  margin: 1em 20px;
}
#company #iso .exp {
  padding-left: 24px;
  background: url(../images/common/exp_ico.png) no-repeat left center;
  background-size: 16px auto;
}
#company #history .m_ttl {
  margin-top: 2.5em;
}

/* ================================================= 
 csr setting
================================================= */
/* csr */
#csr .sect:first-child {
  padding-bottom: 1em;
}
#csr ul.flex li {
  max-width: 280px;
  width: 30.333%;
  height: 160px;
  padding: 2.5%;
  margin-top: 1em;
  background-color: #0066cc;
  text-align: center;
  font-size: 1.2em;
  color: white;
  position: relative;
}
#csr ul.flex li:nth-child(3n+2) {
  margin: 1em 4.5% 0;
}
#csr ul.flex li span {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/* ================================================= 
 business setting
================================================= */
/* business */
#business {
  padding-top: 2em;
}
#business section {
  padding: 1.5em 0;
}
#business .flex .inner {
  flex: 1;
  background: #0066cc;
  background: linear-gradient(90deg, #0066cc 0%, #3e9fff 100%);
  color: white;
  position: relative;
}
#business .flex .inner .intxt {
  width: 82%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#business .flex .inner .intxt h2 {
  font-size: 32px;
  font-size: 3.2rem;
}
#business .flex .inner .intxt p {
  font-size: 0.95em;
}
#business .flex .inner .intxt p.en {
  font-size: 1.2em;
  font-weight: 500;
  text-transform: none;
}
#business .flex .inner .intxt p.subttl {
  font-size: 1.4em;
  line-height: 1.5;
  margin: 0.5em 0 1em;
}

/* detail */
.business-detail #detail-hero-wrap {
  max-width: 1400px;
  width: 100%;
  height: 460px;
  margin: 0 auto 5em;
  position: relative;
  z-index: 0;
}
.business-detail #detail-hero-wrap .bg-image {
  width: 100%;
  height: 100%;
  background-position: center center;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.business-detail #detail-hero-wrap #hero-inner {
  max-width: 1100px;
  width: 90%;
  margin: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.business-detail #detail-hero-wrap #hero-inner .inner {
  width: 45%;
  padding: 2.5%;
  margin-left: auto;
  color: white;
  background-color: rgba(0, 0, 0, 0.5);
}
.business-detail #detail-hero-wrap #hero-inner .inner span {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 500;
}
.business-detail #detail-hero-wrap #hero-inner .inner span:first-letter {
  text-transform: uppercase;
}
.business-detail #detail-hero-wrap #hero-inner .inner h1 {
  font-size: 36px;
  font-size: 3.6rem;
  margin-bottom: 0.25em;
}
.business-detail #detail-hero-wrap #hero-inner .inner p.subttl {
  font-size: 1.35em;
  padding: 14px 0 8px;
  border-top: 1px solid white;
}
.business-detail .blc {
  margin-top: 2em;
}
.business-detail .blc .container {
  padding: 25px 25px 25px 0;
  border: 1px solid #0066cc;
}
.business-detail .blc .container .left {
  width: 270px;
  text-align: center;
}
.business-detail .blc .container .left .img-wrap {
  display: block;
  width: 100px;
  margin: 0 auto 1em;
}
.business-detail .blc .container .left h2 {
  font-size: 18px;
  font-size: 1.8rem;
  color: #0066cc;
}
.business-detail .blc .container .right {
  flex: 1;
  padding: 0 0 0 35px;
  border-left: 1px solid #0066cc;
  font-size: 0.95em;
}
.business-detail .blc .container .right p {
  margin: 1em 0;
}
.business-detail .blc .container .right .disclist li {
  margin: 1em 0 1em 10px;
}
.business-detail .blc .container .right .s_ttl {
  font-size: 18px;
  font-size: 1.8rem;
  margin: 1.5em 0 0;
}

/* ================================================= 
 recruit setting
================================================= */
/* recruit */
#recruit .recruit-video {
  background-color: #f7f7f7;
}
#recruit section {
  max-width: 1400px;
  width: 94%;
  background-position: center center;
  background-size: cover;
  margin: 2em auto 0;
}
#recruit section:first-child {
  margin-top: 4em;
}
#recruit .bg-image {
  background-size: 100% auto;
  background-position: center top;
  height: 480px;
}
#recruit .inner {
  max-width: 800px;
  width: 90%;
  margin: -100px auto 0;
  text-align: center;
}
#recruit .inner a {
  cursor: pointer;
  display: block;
  padding: 4% 5% 50px;
  margin-top: 10px;
  background-color: white;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
#recruit .inner a h2 {
  font-size: 28px;
  font-size: 2.8rem;
  color: #333;
  margin-bottom: 1em;
}
#recruit .inner a p {
  color: #333;
  font-size: 1.1em;
}
#recruit .inner a p.en {
  font-size: 28px;
  font-size: 2.8rem;
  color: #0066cc;
  font-style: italic;
  font-weight: 500;
  text-transform: none;
}
#recruit .inner a .btn {
  margin: 2em auto 0;
}
#recruit .inner a:hover {
  margin-top: 0;
  padding-bottom: 60px;
}
#recruit .flex section {
  width: 50%;
  padding: 4em 0;
}
#recruit .flex section#environment-blc {
  background-image: url(../images/recruit/environment_bg.jpg);
}
#recruit .flex section#faq-blc {
  background-image: url(../images/recruit/faq_bg.jpg);
}
#recruit .flex section .inner {
  padding: 10% 5% 5%;
}
#recruit .flex section .inner h2 {
  font-size: 30px;
  font-size: 3rem;
}
@media screen and (max-width: 1240px) {
  #recruit .bg-image {
    height: 400px;
  }
}
@media screen and (max-width: 992px) {
  #recruit .recruit-video .inner-left, #recruit .recruit-video .inner-right {
    padding: 0 10px;
  }
}
@media screen and (max-width: 767px) {
  #recruit .recruit-video .inner-left, #recruit .recruit-video .inner-right {
    padding: 0;
  }
  #recruit .recruit-video .inner-right {
    margin-top: 1em;
  }
}

/* message */
#message {
  padding-top: 2em;
}
#message .container .img-wrap {
  margin-bottom: 4em;
}
#message .container > div:not(.img-wrap) {
  width: 94%;
  margin: 0 auto;
}
#message .container > div:not(.img-wrap) h2 {
  font-size: 24px;
  font-size: 2.4rem;
  margin-bottom: 0.5em;
}
#message .container > div:not(.img-wrap) p {
  font-size: 1.05em;
  margin: 0 0 1.5em;
}

/* interview */
#interview .flex .item {
  width: 30.333%;
  margin-top: 2em;
  margin-right: 4.5%;
}
#interview .flex .item:nth-child(3n+3) {
  margin-right: 0;
}
#interview .flex .item .img-wrap {
  margin-bottom: 1em;
  position: relative;
}
#interview .flex .item .img-wrap span {
  display: inline-block;
  line-height: 1.1;
  padding: 8px 15px;
  background-color: #0066cc;
  color: white;
  font-size: 14px;
  font-size: 1.4rem;
  position: absolute;
  left: 0;
  bottom: 0;
}
#interview .flex .item .inner h2 {
  font-size: 26px;
  font-size: 2.6rem;
  margin-bottom: 0;
  line-height: 1.2;
  color: #333;
}
#interview .flex .item .inner span {
  font-size: 0.9em;
  color: #aaa;
}

/* interview-detail */
#interview-detail #interview-hero-wrap {
  max-width: 1100px;
  width: 100%;
  height: 440px;
  margin: 0 auto 5em;
  position: relative;
  z-index: 0;
}
#interview-detail #interview-hero-wrap .bg-image {
  width: 100%;
  height: 100%;
  background-position: center top;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
#interview-detail #interview-hero-wrap #hero-inner {
  width: 340px;
  background-color: white;
  position: absolute;
  left: 3%;
  bottom: -50px;
  box-shadow: 0 6px 8px rgba(25, 25, 25, 0.05);
}
#interview-detail #interview-hero-wrap #hero-inner .inner {
  padding: 35px 30px 25px;
  position: relative;
}
#interview-detail #interview-hero-wrap #hero-inner .inner span {
  display: inline-block;
  line-height: 1.2;
  padding: 10px 15px;
  background-color: #0066cc;
  color: white;
  font-size: 14px;
  font-size: 1.4rem;
  position: absolute;
  top: -15px;
  left: 0;
}
#interview-detail #interview-hero-wrap #hero-inner .inner h1 {
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: 400;
  margin-bottom: 0;
}
#interview-detail #interview-hero-wrap #hero-inner .inner p.small {
  color: #888;
  font-size: 0.95em;
  margin: 0 0 0.25em;
}
#interview-detail .container .sect {
  padding: 1em 0;
}
#interview-detail .container .i-section .img-wrap {
  max-width: 450px;
}
#interview-detail .container .i-section .inner {
  flex: 1;
  padding-left: 5%;
}
#interview-detail .container .i-section .inner h2 {
  font-size: 22px;
  font-size: 2.2rem;
}
#interview-detail .container .i-section .inner .txt {
  font-size: 1.1em;
}
#interview-detail .container .i-section .inner p.interview-txt {
  font-size: 1.3em;
  font-weight: 500;
  color: #0066cc;
  margin-bottom: 0.5em;
  padding-left: 30px;
  position: relative;
}
#interview-detail .container .i-section .inner p.interview-txt:before {
  content: "Q.";
  font-size: 1.3em;
  line-height: 1;
  position: absolute;
  top: 3px;
  left: 0;
}
#interview-detail .container .i-section.fl-row .inner {
  padding: 0 5% 0 0;
}
#interview-detail .container .btn {
  max-width: 500px;
  margin: 4em auto 0;
}
#interview-detail .container .btn a {
  font-size: 1.2em;
}

/* environment */
#environment .sect {
  padding-bottom: 0;
}
#environment .sect .flex .blc {
  max-width: 510px;
}
#environment .sect .flex .blc .img-wrap {
  margin-bottom: 1em;
}
#environment .sect .flex .blc .inner h3 {
  font-size: 24px;
  font-size: 2.4rem;
  color: #0066cc;
}
#environment .sect .flex .blc .inner p {
  margin-top: 0.75em;
}

/* faq */
#faq .faq-wrap {
  border: 1px solid #ddd;
  padding: 7px 10px;
  margin: 1.5em auto;
}
#faq .faq-wrap.active .faq-title {
  color: #0066cc;
}
#faq .faq-wrap.active .faq-title .faq_ico::before {
  opacity: 0;
}
#faq .faq-wrap.active .faq-title .faq_ico::after {
  transform: rotate(180deg);
}
#faq .faq-wrap .faq-title {
  cursor: pointer;
  padding: 10px 50px 5px 40px;
  position: relative;
}
#faq .faq-wrap .faq-title:before {
  content: "Q";
  color: #0066cc;
  font-size: 1.8em;
  line-height: 1;
  font-weight: 500;
  position: absolute;
  top: 7px;
  left: 10px;
}
#faq .faq-wrap .faq-title .faq_ico {
  width: 24px;
  height: 24px;
  background-color: #ccc;
  position: absolute;
  top: 12px;
  right: 15px;
  cursor: pointer;
}
#faq .faq-wrap .faq-title .faq_ico::before, #faq .faq-wrap .faq-title .faq_ico::after {
  content: "";
  width: 15px;
  height: 1px;
  background: white;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin: auto;
  transition: all 0.3s;
}
#faq .faq-wrap .faq-title .faq_ico::after {
  transform: rotate(90deg);
}
#faq .faq-wrap .faq-text {
  display: none;
  margin-top: 5px;
  padding: 15px 15px 5px 40px;
  border-top: 1px solid #ddd;
  position: relative;
}
#faq .faq-wrap .faq-text:before {
  content: "A";
  color: #d23d3d;
  font-size: 1.8em;
  line-height: 1;
  font-weight: 500;
  position: absolute;
  top: 15px;
  left: 10px;
}

/* recruit-list */
#list-panel .flex .item {
  width: 48%;
  padding: 30px 4% 50px;
  margin: 1.5em 0;
  background-color: white;
  box-shadow: 0 8px 12px rgba(50, 50, 50, 0.1);
}
#list-panel .flex .item:nth-child(odd) {
  margin-right: 4%;
}
#list-panel .flex .item h3 {
  padding-top: 90px;
  font-size: 26px;
  font-size: 2.6rem;
  text-align: center;
  margin-bottom: 0.75em;
  position: relative;
}
#list-panel .flex .item h3:before {
  content: "";
  width: 1px;
  height: 60px;
  background-color: #0066cc;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  top: 30px;
}
#list-panel .flex .item .btn {
  margin: 2em auto 0;
}

/* recruit-detail */
#recruit-detail .btn {
  max-width: 360px;
  margin: 4em auto 0;
}
#recruit-detail .btn a {
  font-size: 1.1em;
}

/* entry */
#entry p {
  font-size: 1.2em;
}
#entry .btn {
  margin: 1em auto 0;
}

/* ================================================= 
 contact setting
================================================= */
#contact .dlbox {
  padding: 4% 0 3%;
  margin-bottom: 4em;
  border-top: 1px dashed #ddd;
  border-bottom: 1px dashed #ddd;
}
#contact .dlbox h2 {
  font-size: 28px;
  font-size: 2.8rem;
  text-align: center;
}
#contact .dlbox .flex li {
  max-width: 340px;
  width: 44%;
  margin: 2em 10px 0;
}
#contact .dlbox .flex li a {
  display: block;
  width: 100%;
  padding: 10px 0;
  margin: auto;
  text-align: center;
  font-size: 1.15em;
  line-height: 1.4;
  border-radius: 50px;
  background-color: #333;
  color: white;
}
#contact .dlbox .flex li a span {
  font-size: 0.85em;
}
#contact .dlbox .flex li a:hover {
  background-color: #ed7700;
}
#contact .dlbox .ent-text {
  font-size: 0.95em;
  margin-top: 2em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #contact .dlbox .ent-text {
    text-align: left;
  }
}

/* thanks */
.thanks-blc {
  max-width: 620px;
  margin: auto;
  text-align: center;
}
.thanks-blc .btn {
  max-width: 300px;
  margin: 2em auto 4em;
}
.thanks-blc .graybox {
  padding: 3%;
}
.thanks-blc .graybox p {
  font-size: 0.9em;
}
.thanks-blc .graybox p.thanks_tel {
  margin-top: 0.5em;
  font-size: 16px;
  font-size: 1.6rem;
  text-transform: uppercase;
  line-height: 1.4;
}
.thanks-blc .graybox p.thanks_tel em {
  font-style: normal;
  font-size: 1.5em;
  margin: 0 0 0 5px;
}
.thanks-blc .graybox p.thanks_tel span {
  display: block;
  font-size: 0.85em;
}
@media screen and (max-width: 992px) {
  .thanks-blc .large {
    font-size: 1.2em;
  }
  .thanks-blc .btn {
    max-width: 240px;
    margin: 2em auto 3em;
  }
  .thanks-blc .graybox {
    max-width: 90%;
    margin: auto;
  }
  .thanks-blc .graybox p {
    text-align: left;
  }
  .thanks-blc .graybox p.thanks_tel {
    text-align: center;
  }
}

/* ================================================= 
 policy setting
================================================= */
#policy h2 {
  margin-top: 2em;
}

/* ================================================= 
 invoice setting
================================================= */
#invoice section {
  margin-top: 3em;
}
#invoice section div {
  padding: 10px 22px;
  background-color: #f8f8f8;
}
#invoice section div ul li {
  font-size: 1.1em;
  margin: 15px 0 15px 20px;
  list-style: disc outside;
  line-height: 1.4;
}
#invoice section div ul li a {
  text-decoration: none;
}

/* ================================================= 
 wordpress setting
================================================= */
.editor-block {
  overflow: hidden;
}

#editorBlock .editor_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-bottom: 1em;
  margin-bottom: 1.5em;
  border-bottom: 1px solid #ddd;
}
#editorBlock .editor_head > div.date {
  width: 120px;
  color: #aaa;
  font-size: 1.05em;
}
#editorBlock .editor_head > div.sns-list .item {
  margin-top: 0 !important;
  line-height: 1;
  height: 22px;
}
#editorBlock h2 {
  font-size: 2em;
  margin-bottom: 1em;
}
#editorBlock h3 {
  font-size: 1.8em;
  margin-bottom: 0.75em;
}
#editorBlock p {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 1em;
}
#editorBlock .ggmap {
  padding-top: 46%;
}
#editorBlock .aligncenter {
  display: block;
  margin: 5px auto 20px auto;
}
#editorBlock .alignright {
  float: right;
  margin: 5px 0 20px 5%;
}
#editorBlock .alignleft {
  float: left;
  margin: 5px 5% 20px 0;
}
@media screen and (max-width: 767px) {
  #editorBlock {
    margin: 2.5em 0;
  }
  #editorBlock .editor_head {
    padding-bottom: 1em;
    margin-bottom: 1.5em;
  }
  #editorBlock .editor_head > div.date {
    width: 90px;
  }
  #editorBlock .editor_head > div.cat {
    flex: 1;
  }
  #editorBlock .editor_head > div.cat a {
    padding: 3px 8px;
    font-size: 13px;
    font-size: 1.3rem;
  }
  #editorBlock h3 {
    font-size: 1.4em;
  }
  #editorBlock p {
    font-size: 13px;
    font-size: 1.3rem;
    margin-bottom: 0.5em;
  }
  #editorBlock img {
    width: 100%;
    height: auto;
  }
  #editorBlock .editorbtn {
    margin: 2em 0 0;
  }
  #editorBlock .editorbtn a {
    padding: 5px 8px;
  }
  #editorBlock .editorbtn a:before {
    display: none;
  }
  #editorBlock .editorbtn a:hover {
    padding-right: 8px;
  }
  #editorBlock .alignright {
    float: none;
    margin: 1em 0;
  }
  #editorBlock .alignleft {
    float: none;
    margin: 1em 0;
  }
}

/* wp-pagenavi */
.wp-pagenavi {
  text-align: center;
  margin-top: 5em;
  font-size: 12px;
  display: block;
  clear: both;
  padding: 20px 10px 20px 10px;
}
.wp-pagenavi a, .wp-pagenavi a:link, .wp-pagenavi a:visited, .wp-pagenavi a:active {
  padding: 4px 8px !important;
  margin: 3px !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 1px solid #0066cc !important;
  color: #0066cc !important;
}
.wp-pagenavi a:hover, .wp-pagenavi a:link:hover, .wp-pagenavi a:visited:hover, .wp-pagenavi a:active:hover {
  color: white !important;
}
.wp-pagenavi a:hover {
  background: #e4007f !important;
  border: 1px solid #e4007f !important;
}
.wp-pagenavi span.pages {
  padding: 4px 8px !important;
  margin: 3px !important;
  color: #999 !important;
}
.wp-pagenavi span.current {
  padding: 4px 8px !important;
  margin: 3px !important;
  text-decoration: none !important;
  border: 1px solid #e4007f !important;
  background: #e4007f !important;
  -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.1) !important;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.1) !important;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1) !important;
  font-weight: bold !important;
  color: white !important;
}
.wp-pagenavi span.extend {
  padding: 4px 8px !important;
  margin: 3px !important;
  text-decoration: none !important;
  border: 1px solid #C8C8C2 !important;
  background: #FCFCFC !important;
}

/* page_nav */
.page-nav {
  margin: 5em 0 0;
  padding: 15px 0 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
}
.page-nav p {
  width: 33.333%;
}
.page-nav p a {
  display: block;
  text-align: center;
  line-height: 1.2;
  padding: 20px 0;
  color: #0066cc;
  border-right: 1px solid white;
  text-decoration: none;
  background-color: #f3f3f3;
}
.page-nav p a:hover {
  background-color: #e4007f;
  color: white !important;
  opacity: 1;
  text-decoration: none !important;
}
@media screen and (max-width: 992px) {
  .page-nav {
    margin: 4em 0 0;
  }
  .page-nav p a {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  .page-nav {
    margin-top: 2em;
  }
}/*# sourceMappingURL=style.css.map */