@charset "UTF-8";
html {
  font-size: 62.5% !important;
  scroll-behavior: smooth;
}

body {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif !important;
  background: #fff !important;
  -webkit-text-size-adjust: 100% !important;
  width: 100% !important;
  font-size: 1.4rem !important;
  margin: 0 auto !important;
  line-height: normal;
}

html,
body {
  height: 100%;
  overflow: scroll;
}

a,
.link_text {
  text-decoration: none;
  color: #3f6ec2;
  cursor: pointer;
}

p {
  margin: 0;
  font-size: 1.5rem;
  line-height: 2.4rem;
}

h1,
h2,
h3,
h4,
h5,
h6,
li,
ul {
  margin: 0;
  padding: 0;
}

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

ul {
  list-style: none;
}

table {
  width: 100%;
  height: 100%;
}

td,
th {
  vertical-align: middle;
}

.sp-only {
  display: none;
}

.wrapper {
  margin: 0 auto;
  width: 1250px;
}

span.small {
  font-size: 10px;
}

.btn {
  border-width: 0;
}
.btn a {
  text-decoration: none;
  color: inherit;
  display: block;
}

.footer {
  display: block !important;
}

/***********************************************************/
/******  フォントサイズ・色・マージン・パディング  ***********/
/***********************************************************/
:root {
  --main-color: #aed9ff;
  --border-gray: gray;
  --font-main: #587187;
  --font-red: #ff2d55;
  --font-yellow: #fffc02;
  --font-blue: #3f6ec2;
}

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

.font-red {
  color: rgb(255, 45, 85);
}

.font-yellow {
  color: #fffc02;
}

.bold {
  font-weight: 600;
}

.small {
  font-size: 1rem;
  line-height: 1.5rem;
  display: inline-block;
}

.middle {
  font-size: 1.3rem;
  font-weight: normal;
  margin-left: 2px;
}

.font-m {
  font-size: 1.3rem;
}

.font2 {
  font-size: 1.9rem !important;
  font-weight: 600;
}

.mt10 {
  margin-top: 10px;
}

.mt20 {
  margin-top: 20px;
}

.mt30 {
  margin-top: 30px;
}

.mt50 {
  margin-top: 50px;
}

.mt80 {
  margin-top: 80px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb50 {
  margin-bottom: 50px;
}

.mr10 {
  margin-right: 10px;
}

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

.ml10 {
  margin-left: 10px;
}

.ml20 {
  margin-left: 20px;
}

.mr20 {
  margin-right: 20px;
}

.img_centerbox {
  display: block;
  text-align: center;
}

p.bg {
  background-color: #fafaff;
  padding: 20px;
}

p.p-orange {
  background-color: #fff3e1;
  padding: 20px 50px;
}

.nopadding {
  padding: 0 !important;
}

/***********************************************/
/*************** CSSアニメーション　****************/
/***********************************************/
.fluffy {
  animation: fluffy 2.5s ease infinite;
}

@keyframes fluffy {
  0% {
    transform: translateY(0);
  }
  5% {
    transform: translateY(0);
  }
  10% {
    transform: translateY(0);
  }
  20% {
    transform: translateY(-5px);
  }
  25% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(-5px);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}
.shake {
  animation: swing 3s infinite;
}

@keyframes swing {
  0%, 100% {
    transform: rotate(0deg);
  }
  4%, 12% {
    transform: rotate(-4deg);
  }
  8%, 16% {
    transform: rotate(4deg);
  }
  20%, 100% {
    transform: rotate(0deg);
  }
}
/***********************************************/
/*****************  sidebar  ******************/
/***********************************************/
#sidebar {
  margin-bottom: 30px;
  position: sticky;
  top: 80px;
}
#sidebar a {
  position: relative;
  display: block;
  text-decoration: none;
}

/***********************************************/
/*****************  gototop  ******************/
/***********************************************/
#page_top {
  width: 34px;
  height: 34px;
  position: fixed;
  right: 24px;
  bottom: 12%;
  background: #3f6ec2;
  opacity: 0.4;
  z-index: 2;
  border-radius: 5px;
}
#page_top a {
  position: relative;
  display: block;
  text-decoration: none;
  cursor: pointer;
  transition: 0.4s;
}
#page_top a:hover {
  transition: 0.4s;
}
#page_top a::before {
  position: absolute;
  top: 7px;
  content: url("");
  background-image: url("../img/icon/top.png");
  background-size: cover;
  right: 0;
  width: 19px;
  height: 19px;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top:hover {
  opacity: 0.2;
}

/***********************************************/
/*****************  header  ******************/
/***********************************************/
.header_wrapper {
  width: 100%;
  height: 50px;
  margin: 0 auto;
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  position: fixed;
  z-index: 999;
}
.header_wrapper header {
  width: 1250px;
  max-width: 100%;
  height: 60px;
  padding: 0 30px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.header_wrapper header h1 {
  font-size: 1.8rem;
  color: #fff;
}
.header_wrapper header h1:hover {
  opacity: 0.6;
}
.header_wrapper header h1 img {
  max-width: 350px;
  height: 30px;
}
.header_wrapper header div p {
  color: #707070;
  font-size: 1.1rem;
}

.wrapper {
  width: 100%;
  margin: 0 auto;
  padding-top: 50px;
}

/***********************************************/
/***************  main contents  ****************/
/***********************************************/
.main_section {
  display: flex;
  justify-content: space-around;
  width: 1100px;
  margin: 30px auto;
  /*********  左コンテンツ *********/
  /*********  右コンテンツ *********/
}
.main_section .main_section_left {
  width: 800px;
}
.main_section .main_section_right {
  display: flex;
  flex-direction: column;
  width: 240px;
  position: relative;
}

/***********************************************/
/******************  footer  *******************/
/***********************************************/
.footer_wrapper {
  background-color: #222;
  margin-top: 70px;
}
.footer_wrapper footer {
  width: 850px;
  max-width: 100%;
  margin: 0 auto;
  padding-top: 30px;
}
.footer_wrapper footer .footer_box {
  display: flex;
  justify-content: space-between;
  font-size: 1.3rem;
}
.footer_wrapper footer .footer_box ul li {
  margin-bottom: 2px;
  color: #57576c;
}
.footer_wrapper footer .footer_box ul li a {
  color: #fff;
}
.footer_wrapper footer .footer_box ul li a:hover {
  color: #fff;
  text-decoration: underline;
}
.footer_wrapper footer ul.footer-info {
  display: flex;
  margin: 15px auto;
  width: 440px;
  justify-content: space-around;
}
.footer_wrapper footer ul.footer-info li a {
  color: #8d8d8d;
  font-size: 1.2rem;
}
.footer_wrapper footer ul.footer-info li a:hover {
  text-decoration: underline;
}
.footer_wrapper footer p {
  font-size: 1.2rem;
  text-align: center;
  color: #939393;
  padding: 10px;
}

/***********************************************/
/*****************  お問い合わせ  ****************/
/***********************************************/
.page-template-page-contact {
  background-color: #f4f5f7 !important;
}
.page-template-page-contact .header-container {
  display: none !important;
}
.page-template-page-contact footer {
  display: none !important;
}
.page-template-page-contact .content {
  margin-top: 24px;
}
.page-template-page-contact .content .content-in {
  width: 100%;
  max-width: 768px;
}
.page-template-page-contact .content .content-in .main {
  padding: 20px 29px !important;
}
.page-template-page-contact .content .content-in .main h1 {
  color: #333333;
}
.page-template-page-contact .content .content-in .main input[type=submit] {
  text-align: center;
}

/***********************************************/
/******************   調査結果  *****************/
/***********************************************/
.research {
  padding: 0px 20px;
}
.research h2 {
  font-size: 20px;
  margin: 30px 0px;
  border-bottom: 1px solid #222;
}
.research h3 {
  font-size: 16px;
}
.research p {
  font-size: 14px;
  line-height: 150%;
  margin-bottom: 40px;
}
.research dl {
  line-height: 19px;
  font-size: 14px;
  margin-bottom: 40px;
}
.research dt {
  font-weight: 400;
  float: left;
}
.research dd {
  margin-left: 125px;
}

/***********************************************/
/*******************  運営情報  *****************/
/***********************************************/
.about {
  display: block;
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
  background-color: #fff;
  padding: 0px 20px;
}
.about h2 {
  font-size: 20px;
  margin: 30px 0px;
  border-bottom: 1px solid #222;
}
.about dt {
  width: 100%;
  font-weight: 400;
  padding: 5px 0 5px 10px;
  background-color: #efefef;
}
.about dd {
  width: 100%;
  padding: 5px 0 5px 10px;
  margin: 0px;
}

.footer-info {
  margin-top: 40px;
}
.footer-info h3 {
  font-size: 15px;
}
.footer-info-wrapper {
  color: #797979;
}
.footer-info-box {
  margin: 10px 0;
}
.footer-info-box p {
  color: #797979;
  font-size: 11px;
  line-height: 150%;
}

/***********************************************/
/*******************  利用規約  *****************/
/***********************************************/
.terms {
  width: 100%;
  max-width: 960px;
  padding: 0px 20px;
}
.terms h2 {
  font-size: 20px;
  margin: 30px 0px;
  border-bottom: 1px solid #222;
}
.terms h3 {
  font-size: 18px;
}
.terms p {
  font-size: 14px;
  margin-bottom: 30px;
}/*# sourceMappingURL=style.css.map */