/* flect renewal 2024
---------------------------------------------------------- */
@charset "Shift_JIS";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap');

body {
 color: #323232;
}
a,
a:link {
 text-decoration: none;
}
div[class^=cms_title] p,
div[class^=cms_title] h2 {
 color: #162E58;
 text-align: left;
}
.cms_btn1 a {
 background: #498EB7;
 text-decoration: none;
}
.cms_btn1 a:hover {
 background: #498EB7 !important;
 text-decoration: none;
 opacity: .7;
 text-decoration: none !important;
}
.cms_wp {
 font-family: "Noto Sans JP", sans-serif;
 font-optical-sizing: auto;
 font-weight: 400;
 font-style: normal;
}
@media screen and (max-width: 767px) {
 .cms_wp {
  padding: 0 6.4vw 24vw;
 }
 .cms_title1 {
  font-size: 4.8vw;
 }
 #top_areamap {
  padding-top: 0;
  padding-bottom: 22.933vw;
 }
 #top_voice_btn {
  padding-top: 0;
  padding-bottom: 25.6vw;
 }
 .cms_btn1 a {
  font-size: 3.7vw;
  width: 66.666vw;
  padding: 1.1em 1.4em;
 }
}
/*メインビジュアル*/
#mainvisual .cms_dataexp p {
 font-weight: bold;
}
@media screen and (min-width: 768px) {
 #mainvisual .cms_databox ul li dl dd {
  text-align: center;
 }
 #mainvisual .cms_dataexp p {
  font-size: 28px;
 }
 #mainvisual .cms_dataexp2 p {
  font-size: 18px;
  line-height: 2;
 }
}
@media screen and (max-width: 767px) {
 #mainvisual {
  padding-bottom: 6.4vw;
 }
 #mainvisual .cms_databox ul {
  margin-top: 0;
 }
 #mainvisual .cms_dataexp p {
  font-size: 5.333vw;
 }
 #mainvisual .cms_dataexp2 p {
  font-size: 3.733vw;
  padding-top: 0;
  margin-top: 5.333vw;
 }
}
/*目次*/
#mokuji .cms_title1,
#mokuji .cms_title1 + div {
 background: #F3F7FC;
}
#mokuji .cms_databox ul {
 margin-top: 0;
}
#mokuji .cms_databox ul li dl dd {
 display: flex;
 align-items: center;
}
#mokuji .cms_databox ul li dl dd .cms_datatitle p,
#mokuji .cms_databox ul li dl dd .cms_dataexp p {
 color: #498EB7;
}
#mokuji .cms_databox ul li dl dd .cms_dataexp p {
 text-decoration: underline;
 font-weight: bold;
}
@media screen and (min-width: 768px) {
 #mokuji .cms_title1 {
  padding: 32px 32px 0;
 }
 #mokuji .cms_title1 + div {
  padding: 0 32px 32px;
 }
 #mokuji .cms_databox {
  padding-top: 0;
 }
 #mokuji .cms_databox ul li {
  width: calc(100% / 2);
  margin-top: 24px;
 }
 #mokuji .cms_databox ul li dl dd .cms_datatitle p,
 #mokuji .cms_databox ul li dl dd .cms_dataexp p {
  padding-top: 0;
 }
}
@media screen and (max-width: 767px) {
 #mokuji .cms_title1 {
  padding: 6.4vw 6.4vw 0;
 }
 #mokuji .cms_title1 + div {
  padding: 0 6.4vw 6.4vw;
 }
 #mokuji .cms_databox ul li dl dd .cms_datatitle p,
 #mokuji .cms_databox ul li dl dd .cms_dataexp p {
  font-size: 3.733vw;
 }
 #mokuji .cms_databox ul li:nth-child(1) {
  order: 1;
 }
 #mokuji .cms_databox ul li:nth-child(2) {
  order: 4;
 }
 #mokuji .cms_databox ul li:nth-child(3) {
  order: 2;
 }
 #mokuji .cms_databox ul li:nth-child(4) {
  order: 5;
 }
 #mokuji .cms_databox ul li:nth-child(5) {
  order: 3;
 }
 #mokuji .cms_databox ul li:nth-child(6) {
  order: 6;
 }
}
/*flect3points*/
#flect3points.cms_layout_2 .cms_databox ul li dl {
 background: #f5f5f5;
}
#flect3points .cms_dataexp2 p {
 color: #8C8C8C;
}
#flect3points .cms_datatitle,
#flect3points .cms_dataexp2 p a {
 color: #498EB7;
}
#flect3points .cms_dataexp2 p a {
 text-decoration: underline;
}
@media screen and (min-width: 768px) {
 #flect3points.cms_layout_2 .cms_databox {
  margin-top: 26px;
  padding-top: 0;
 }
 #flect3points.cms_layout_2 .cms_databox ul li dl {
  border-radius: 7px;
  padding: 24px;
 }
 #flect3points .cms_datatitle p {
  font-size: 18px;
  padding-top: 20px;
 }
 #flect3points .cms_dataexp p {
  font-size: 14px;
  padding-top: 18px;
 }
 #flect3points .cms_dataexp2 p {
  font-size: 10px;
  padding-top: 20px;
 }
}
@media screen and (max-width: 767px) {
 #flect3points.cms_layout_2 .cms_databox ul li {
  padding-top: 0;
  margin-top: 3.733vw;
 }
 #flect3points.cms_layout_2 .cms_databox ul li dl {
  padding: 6.4vw;
  border-radius: 1.866vw;
 }
 #flect3points.cms_layout_2 .cms_databox .cms_datatitle {
  font-size: 4.266vw;
 }
 #flect3points.cms_layout_2 .cms_databox .cms_datatitle p {
  padding-top: 5.333vw;
 }
 #flect3points.cms_layout_2 .cms_databox .cms_dataexp {
  font-size: 3.733vw;
 }
 #flect3points.cms_layout_2 .cms_databox .cms_dataexp p {
  padding-top: 4.266vw;
 }
}
/*ご利用の流れ*/
#serviceflow .cms_databox ul li:not(:first-child) {
 background: #F5F5F5;
}
#serviceflow .cms_databox .cms_dataexp2 p {
 color: #8C8C8C;
}
@media screen and (min-width: 768px) {
 #serviceflow .cms_databox {
  padding-top: 27px;
 }
 #serviceflow .cms_databox ul li:not(:first-child) {
  border-radius: 7px; 
 }
 #serviceflow .cms_databox ul li dl dd {
  padding: 24px;
 }
 #serviceflow .cms_datatitle p {
  padding-top: 0;
 }
 #serviceflow .cms_dataexp p {
  font-size: 14px;
  padding-top: 18px;
 }
 #serviceflow .cms_dataexp2 p {
  font-size: 12px;
  padding-top: 18px;
 }
}
@media screen and (max-width: 767px) {
 #serviceflow {
  padding-top: 6.4vw;
  padding-bottom: 6.4vw;
 }
 #serviceflow .cms_databox ul {
  margin-left: 0;
 }
 #serviceflow .cms_databox ul li {
  padding-left: 0;
  padding-top: 0;
  margin-top: 3.733vw;
 }
 #serviceflow .cms_databox ul li dl {
  padding-top: 0;
  padding-bottom: 5.866vw;;
 }
 #serviceflow .cms_databox ul li:not(:first-child) dl {
  padding-left: 5.866vw;
  padding-right: 5.866vw;
 }
 #serviceflow .cms_datatitle p {
  font-size: 4.266vw;
  padding-top: 5.066vw;
 }
 #serviceflow .cms_dataexp p {
  font-size: 3.733vw;
  padding-top: 4.8vw;
 }
 #serviceflow .cms_dataexp2 p {
  font-size: 3.2vw;
  padding-top: 4.8vw;
 }
}
/*ご利用例*/
#exofuse {
 
}
#exofuse ul li .box {
 background: #F3F7FC;
}
#exofuse_bottom ul li .box {
 background: #F5F5F5;
}
#exofuse .cms_dataexp p,
#exofuse_bottom .cms_dataexp p {
 color: #498EB7;
}
#exofuse .cms_dataexp2 p,
#exofuse_bottom .cms_dataexp2 p span {
 color: #8C8C8C;
}
#exofuse_bottom .cms_dataexp2 p span {
 display: block;
}
#exofuse_bottom ul li dl dd .cms_datatitle {
 position: relative;
}
#exofuse_bottom ul li dl dd .cms_datatitle::before {
 display: block;
 color: #8c8c8c;
 font-weight: bold;
}
#exofuse_bottom ul li:nth-child(1) dl dd .cms_datatitle::before {
 content: "case01";
}
#exofuse_bottom ul li:nth-child(2) dl dd .cms_datatitle::before {
 content: "case02";
}
#exofuse_bottom ul li:nth-child(3) dl dd .cms_datatitle::before {
 content: "case03";
}
#exofuse_bottom ul li:nth-child(4) dl dd .cms_datatitle::before {
 content: "case04";
}
@media screen and (min-width: 768px) {
 #exofuse {
  padding-bottom: 32px;
 }
 #exofuse .cms_subtitle1 p {
  text-align: left;
 }
 #exofuse ul li .box {
  border-radius: 7px;
 }
 #exofuse_bottom ul li .box {
  border-radius: 7px;
 }
 #exofuse .cms_dataexp2 p,
 #exofuse_bottom .cms_dataexp2 p {
  font-size: 12px;
 }
 #exofuse_bottom ul {
  margin-left: -25px;;
 }
 #exofuse_bottom ul li {
  margin-top: 25px;
  padding-left: 25px;
 }
 #exofuse_bottom ul li dl dd .cms_datatitle::before {
  font-size: 12px;
 }
}
@media screen and (max-width: 767px) {
 #exofuse {
  padding-bottom: 8.533vw;
 }
 #exofuse .cms_subtitle1 p {
  padding-top: 3.733vw;
  padding-bottom: 3.733vw;
 }
 #exofuse_bottom ul li {
  padding-top: 3.733vw;
 }
 #exofuse_bottom ul li dl dd .cms_datatitle p,
 #exofuse_bottom ul li dl dd .cms_datatitle::before {
  font-size: 3.733vw;
 }
}
/*お客様の声 Q&A*/
@media screen and (max-width: 767px) {
 #top_voice {
  padding-bottom: 8.533vw;
 }
 #top_qanda,
 #top_qanda_btn {
  padding-bottom: 7%;
 }
}