@charset "utf-8";
/* CSS Document */

/*** -----------------------------------------------------------------------------

reset

-----------------------------------------------------------------------------  ***/
.clearfix:after {
  content: ".";
  display: block;
  visibility: hidden;
  clear: both;
  height: 0.1px;
  font-size: 0.1em;
  line-height: 0;
}
.clearfix {
  display: inline-table;
  zoom: 1;
}
/*Hides from IE-mac \*/
* html .clearfix {
  height: 1%;
}
.clearfix {
  display: block;
}
/* End hide from IE-mac */

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0px;
  padding: 0px;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
fieldset,
img {
  border: 0;
}
address,
caption,
cite,
code,
dfn,
em,
th,
var {
  font-style: normal;
  font-weight: 300;
}
li {
  list-style: none;
}
caption,
th {
  text-align: left;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: 300;
}
q:before,
q:after {
  content: "";
}
abbr,
acronym {
  border: 0;
  font-variant: normal;
}
sup {
  vertical-align: top;
}
sub {
  vertical-align: text-bottom;
}
input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}
input,
textarea,
select {
  *font-size: 100%;
}
legend {
  color: #000000;
}
img {
  vertical-align: bottom;
}
@media (max-width: 760px) {
  img {
    width: 100%;
  }
}

/*** ------------------------------------------------------------------------------

common

-----------------------------------------------------------------------------  ***/
html {
  overflow-y: scroll;
}
body {
  background-color: #fff;
  color: #222;
  line-height: 2;
  font-size: 15px;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体",
    "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-style: normal;
  font-weight: 400;
  overflow: hidden;
  margin: 0;
  padding: 0;
  height: 100%;
  width: 100%;
}
/*** ------------------------------------------------------------------------------

リンク

-----------------------------------------------------------------------------  ***/
/* 基本 */
a {
  outline: none;
  color: #333;
}
a:link {
  text-decoration: none;
  transition: 0.3s;
}
a:link:hover {
  text-decoration: none;
}
a:visited {
}
a:hover {
  text-decoration: none;
}
a:active {
  text-decoration: none;
}
/*** ------------------------------------------------------------------------------

input

-----------------------------------------------------------------------------  ***/
input[type="text"] {
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}
input[type="radio"]:checked + label {
  background: #ff0000;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}
textarea {
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  resize: none;
  padding: 0;
  border: 0;
  outline: none;
  background: transparent;
}
button,
input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ",
    sans-serif;
}

.pc {
  display: block;
}
.sp {
  display: none;
}
@media (max-width: 760px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}

/*** ------------------------------------------------------------------------------

フェードイン

-----------------------------------------------------------------------------  ***/
.show-cnt {
  opacity: 0;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -o-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s;
  transform: translateY(30px);
  transition-duration: ease-in;
}
.show-cnt.on {
  opacity: 1;
  transform: translateY(0vw);
}
.show-cnt2 {
  opacity: 0;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -o-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s;
  transform: translateX(-5vw);
  transition-duration: ease-in;
}
.show-cnt2.on {
  opacity: 1;
  transform: translateX(0vw);
}
.show-cnt3 {
  opacity: 0;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -o-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s;
  transform: translateX(5vw);
  transition-duration: ease-in;
}
.show-cnt3.on {
  opacity: 1;
  transform: translateX(0vw);
}

/*** ------------------------------------------------------------------------------

header

-----------------------------------------------------------------------------  ***/
header {
  background-color: #fff;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
  padding: 20px 0 10px;
  position: relative;
  z-index: 10;
}
header .inner {
  max-width: 1000px;
  width: 96%;
  margin: 0 auto;
}
header .inner .head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 20px;
}
header .inner .head .logo {
  margin: 0 -50px 0 0;
}
header .inner .head h1 {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
}
header .inner .head h1 span {
  font-size: 30px;
}
header .inner .head h1 img {
  margin-right: 10px;
}
header .inner .head .pc-head-nav {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
header .inner .head .pc-head-nav .tel {
  font-size: 28px;
  line-height: 1.2;
  font-weight: bold;
  text-align: right;
  margin-right: 20px;
}
header .inner .head .pc-head-nav .tel a {
  color: #222;
}
header .inner .head .pc-head-nav .tel span {
  font-size: 12px;
  font-weight: normal;
  display: block;
}
header .inner .head .pc-head-nav .btn a {
  display: block;
  background-color: #cf111b;
  color: #fff;
  font-size: 14px;
  line-height: 1.2;
  font-weight: bold;
  padding: 15px 30px;
  border-radius: 5px;
  border-bottom: solid 4px #a4010a;
  transition: 0.3s;
}
header .inner .head .pc-head-nav .btn a:hover {
  border-bottom: solid 4px #cf111b;
  transform: translateY(2px);
}
header .inner .menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  border-left: solid 1px #ccc;
}
header .inner .menu li {
  width: calc(100% / 7);
  box-sizing: border-box;
  text-align: center;
  border-right: solid 1px #ccc;
}
header .inner .menu li a {
  color: #222;
  font-size: 14px;
  line-height: 1.2;
  font-weight: bold;
  display: block;
  padding: 10px 0;
  transition: 0.3s;
}
header .inner .menu li a:hover {
  color: #3673aa;
}
header .inner .menu .tab {
  display: none;
}
header #nav-toggle {
  display: none;
}
#fixnav {
  opacity: 0;
  position: fixed;
  top: -20px;
  left: 0;
  transition: 0.3s;
  width: 100%;
  background-color: #fff;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
  z-index: 10000;
}
#fixnav .logo {
  margin: 0 -70px 0 0;
}
#fixnav.act {
  opacity: 1;
  top: 0;
}
#fixnav .inner {
  max-width: 1000px;
  width: 96%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#fixnav .inner h1 {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4;
}
#fixnav .inner img {
  margin-right: 10px;
  width: 30px;
}
#fixnav .inner .menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#fixnav .inner .menu li {
  box-sizing: border-box;
  text-align: center;
}
#fixnav .inner .menu li a {
  color: #222;
  font-size: 12px;
  line-height: 1.2;
  font-weight: bold;
  display: block;
  padding: 0 5px;
  transition: 0.3s;
}
#fixnav .inner .menu li a:hover {
  color: #3673aa;
}
#fixnav .inner .menu li.mail a {
  background-color: #cf111b;
  color: #fff;
  font-size: 13px;
  line-height: 1.2;
  font-weight: bold;
  padding: 18px 15px;
}
header .inner .menu .tab {
  display: none;
}
#sp-btm {
  display: none;
}
@media screen and (max-width: 1000px) {
  header {
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);
    padding: 10px 0 10px;
    position: fixed;
    width: 100%;
  }
  header .inner .head {
    padding-bottom: 0;
    justify-content: left;
  }
  header .inner .head h1 {
    margin: 0 0 0 60px;
  }
  header .inner .head h1,
  header .inner .head h1 span {
    font-size: 14px;
  }
  header .inner .head h1 img {
    margin-right: 10px;
    width: 30px;
  }
  header .inner .head .pc-head-nav {
    display: none;
  }
  header nav {
    right: -100%;
    top: 50px;
    background: none;
    width: 100%;
    height: 100vh;
    position: fixed;
    text-align: center;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    overflow-y: auto;
    background-color: rgba(255, 255, 255, 0.9);
    opacity: 0;
  }
  header #nav-toggle {
    position: fixed;
    right: 0;
    top: 0;
    width: 30px;
    height: 30px;
    cursor: pointer;
    z-index: 10000;
    padding: 10px;
    display: block;
    transition: 0.5s;
  }
  header #nav-toggle div {
    position: relative;
  }
  header #nav-toggle span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    background-color: #cf111b;
    left: 0;
    -webkit-transition: 0.35s ease-in-out;
    -moz-transition: 0.35s ease-in-out;
    transition: 0.35s ease-in-out;
  }
  header #nav-toggle span:nth-child(1) {
    top: 4px;
  }
  header #nav-toggle span:nth-child(2) {
    top: 14px;
  }
  header #nav-toggle span:nth-child(3) {
    top: 24px;
  }
  header .open #nav-toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  header .open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%;
  }
  header .open #nav-toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .open nav {
    -moz-transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    opacity: 1;
  }
  header #navi nav .menu {
    font-size: 14px;
    display: block;
    border-top: solid 1px rgba(0, 0, 0, 0.2);
    border-left: none;
  }
  header #navi nav .menu li {
    margin: 0;
    width: 100%;
    border-bottom: solid 1px rgba(0, 0, 0, 0.2);
    border-right: none;
  }
  header #navi nav .menu li a {
    padding: 15px 0;
    display: block;
  }
  header .inner .menu .tab {
    display: block;
  }
  header .inner .menu .tab a {
    color: #fff;
    font-size: 18px;
  }
  header .inner .menu .tab a i {
    margin-right: 5px;
  }
  header #navi nav .menu li.tel a {
    background-color: #3673aa;
  }
  header #navi nav .menu li.mail a {
    background-color: #cf111b;
  }
  header .inner .head .logo {
    width: 30px;
  }
  header .inner .head .logo img{
    width: 100%;
  }
  #fixnav {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  #sp-btm {
    display: block;
    opacity: 0;
    position: fixed;
    bottom: 0;
    left: 0;
    transition: 0.3s;
    width: 100%;
    z-index: 10000;
  }
  #sp-btm.act {
    opacity: 1;
  }
  #sp-btm ul {
    display: flex;
    justify-content: space-between;
    font-size: 16px;
    font-weight: bold;
    align-items: center;
  }
  #sp-btm ul a {
    display: block;
    color: #fff;
    padding: 5px 0;
    text-align: center;
  }
  #sp-btm ul .tel {
    width: calc(100% / 2);
    background-color: #3673aa;
  }
  #sp-btm ul .mail {
    width: calc(100% / 2);
    background-color: #cf111b;
  }
  #sp-btm ul .tel i,
  #sp-btm ul .mail i {
    margin-right: 5px;
  }
  #sp-btm ul .top {
    width: 50px;
    background-color: #ccc;
    font-size: 22px;
    line-height: 1;
    padding: 5px 0;
  }
}

#mv {
  width: 100%;
  background: url(../img/mv.jpg) no-repeat top center / cover;
  position: relative;
  z-index: 1;
  padding-top: 80px;
}
#mv .inner {
  max-width: 1120px;
  width: 96%;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
#mv .inner h2 {
  font-size: 58px;
  line-height: 1.4;
  font-weight: bold;
  margin-bottom: 20px;
}
#mv .inner h2 strong {
  font-size: 70px;
}
#mv .inner h2 strong.red {
  color: #cf111b;
}
#mv .inner .txt {
  font-size: 30px;
  line-height: 1.4;
  font-weight: bold;
  background-color: #fff;
  padding: 5px;
  display: table;
  margin-bottom: 15px;
}
#mv .inner .txt strong {
  font-size: 50px;
  line-height: 1;
  color: #3673aa;
}
#mv .truck {
  text-align: right;
  margin-top: -240px;
  transform: translateY(30px);
}
@media screen and (max-width: 1300px) {
  #mv .inner h2 {
    font-size: 4.5vw;
  }
  #mv .inner h2 strong {
    font-size: 5.5vw;
  }
  #mv .inner .txt {
    font-size: 2.5vw;
  }
  #mv .inner .txt strong {
    font-size: 3.5vw;
  }
  #mv .truck {
    width: 80%;
    margin-left: auto;
  }
  #mv .truck img {
    width: 100%;
  }
}
#mv .achieve {
  margin-top: -300px;
  transform: translateX(50px);
}
@media screen and (max-width: 1300px) {
  #mv .achieve {
    width: 50%;
  }
  #mv .achieve img {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #mv {
    padding: 70px 0 20px;
  }
  #mv .inner h2 {
    font-size: 6vw;
    margin-bottom: 10px;
  }
  #mv .inner h2 strong {
    font-size: 7vw;
  }
  #mv .inner .txt {
    font-size: 3.4vw;
    margin-bottom: 5px;
  }
  #mv .inner .txt strong {
    font-size: 4.8vw;
  }
  #mv .truck {
    width: 80%;
    margin: -50px 0 0 auto;
    padding: 0 0 75px;
  }
  #mv .truck img {
    width: 100%;
  }
  #mv .achieve {
    margin: -170px 0 0 0;
    width: 40%;
    transform: translateY(20px);
  }
}

#trouble {
  background-color: #3673aa;
  padding: 60px 0;
  position: relative;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
}
#trouble:before {
  content: "";
  position: absolute;
  bottom: -50px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 80px 0 80px;
  border-color: #3673aa transparent transparent transparent;
  z-index: 10;
}
#trouble:after {
  content: "";
  position: absolute;
  bottom: -55px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 80px 0 80px;
  border-color: rgba(0, 0, 0, 0.15) transparent transparent transparent;
  -webkit-filter: blur(3px);
  -moz-filter: blur(3px);
  -o-filter: blur(3px);
  -ms-filter: blur(3px);
  filter: blur(3px);
}
#trouble .inner {
  max-width: 1000px;
  width: 96%;
  margin: 0 auto;
  background-color: #fff;
  box-sizing: border-box;
  padding: 40px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#trouble .inner .midashi {
  font-size: 36px;
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1em;
  margin-bottom: 30px;
  width: 100%;
}
#trouble .inner .midashi strong {
  font-size: 48px;
  color: #3673aa;
  position: relative;
}
#trouble .inner .midashi strong:after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #3673aa;
}
#trouble .inner ul {
  width: 75%;
}
#trouble .inner ul li {
  position: relative;
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  margin: 0 0 20px 30px;
}
#trouble .inner ul li:last-child {
  margin-bottom: 0;
}
#trouble .inner ul li:before {
  content: "";
  position: absolute;
  top: 0;
  left: -30px;
  background: url(../img/check.png) no-repeat top center / cover;
  width: 25px;
  height: 22px;
}
#trouble .inner ul li strong {
  font-size: 20px;
  position: relative;
  background: linear-gradient(transparent 60%, #fce54d 0%);
}
#trouble .inner .ill {
  width: 25%;
  margin-bottom: -70px;
}
@media screen and (max-width: 768px) {
  #trouble {
    padding: 30px 0;
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);
  }
  #trouble:before {
    bottom: -30px;
    border-width: 30px 50px 0 50px;
  }
  #trouble:after {
    bottom: -33px;
    border-width: 30px 50px 0 50px;
  }
  #trouble .inner {
    padding: 20px;
    position: relative;
    display: block;
  }
  #trouble .inner .midashi {
    font-size: 20px;
    margin-bottom: 20px;
  }
  #trouble .inner .midashi strong {
    font-size: 30px;
  }
  #trouble .inner .midashi strong:after {
    bottom: -5px;
    height: 2px;
  }
  #trouble .inner ul {
    width: 100%;
  }
  #trouble .inner ul li {
    font-size: 16px;
    margin: 0 0 10px 25px;
  }
  #trouble .inner ul li:before {
    top: 6px;
    left: -25px;
    width: 20px;
    height: 18px;
  }
  #trouble .inner ul li strong {
    font-size: 18px;
  }
  #trouble .inner .ill {
    width: 40%;
    margin: 10px auto -30px;
  }
}
@media screen and (max-width: 1000px) {
  #trouble .inner .midashi {
    font-size: 24px;
  }
  #trouble .inner .midashi strong {
    font-size: 40px;
  }
}
@media screen and (max-width: 420px) {
  #trouble .inner .midashi {
    font-size: 16px;
  }
  #trouble .inner .midashi strong {
    font-size: 20px;
  }
  #trouble .inner ul li {
    font-size: 16px;
  }
  #trouble .inner ul li strong {
    font-size: 18px;
  }
}

#solution {
  background-color: #fce54d;
  padding: 60px 0 0;
  position: relative;
}
#solution .inner {
  max-width: 1000px;
  width: 96%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-flow: row-reverse;
  align-items: center;
}
#solution .inner .txtBox {
  text-align: center;
  letter-spacing: 0.1em;
}
#solution .inner .txtBox .txt1 {
  font-size: 30px;
  line-height: 1.4;
  font-weight: bold;
}
#solution .inner .txtBox .txt2 {
  font-size: 48px;
  line-height: 1.4;
  font-weight: bold;
  color: #cf111b;
  position: relative;
  margin: 5px 0 10px;
}
#solution .inner .txtBox .txt2 strong {
  font-size: 58px;
}
#solution .inner .txtBox .txt2:before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  background: url(../img/cheer_l.png) no-repeat top center / cover;
  width: 40px;
  height: 60px;
}
#solution .inner .txtBox .txt2:after {
  content: "";
  position: absolute;
  top: 10px;
  right: 0;
  background: url(../img/cheer_r.png) no-repeat top center / cover;
  width: 40px;
  height: 60px;
}
@media screen and (max-width: 1000px) {
  #solution .inner .txtBox .txt1 {
    font-size: 3vw;
  }
  #solution .inner .txtBox .txt2 {
    font-size: 4.8vw;
  }
  #solution .inner .txtBox .txt2 strong {
    font-size: 5.8vw;
  }
  #solution .inner .ill {
    width: 30%;
  }
  #solution .inner .ill img {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #solution {
    padding: 50px 0 0;
  }
  #solution .inner {
    display: block;
  }
  #solution .inner .txtBox .txt1 {
    font-size: 4vw;
  }
  #solution .inner .txtBox .txt2 {
    font-size: 5.8vw;
    display: inline-block;
  }
  #solution .inner .txtBox .txt2:before,
  #solution .inner .txtBox .txt2:after {
    background-size: contain;
    width: 8%;
    height: 0;
    top: 5px;
    padding-top: 10%;
  }
  #solution .inner .txtBox .txt2:before {
    left: -10%;
  }
  #solution .inner .txtBox .txt2:after {
    right: -10%;
  }
  #solution .inner .txtBox .txt2 strong {
    font-size: 6.8vw;
  }
  #solution .inner .ill {
    width: 40%;
    margin: 10px auto 0;
  }
}

#point {
  padding-bottom: 100px;
}
#point .titBox {
  padding: 100px 0;
  position: relative;
  text-align: center;
  margin-bottom: -20px;
}
#point .titBox:after {
  content: "";
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  background: url(../img/speech.png) no-repeat top center / cover;
  width: 533px;
  height: 36px;
}
#point .titBox .txt1 {
  font-size: 32px;
  line-height: 1.4;
  font-weight: bold;
}
#point .titBox .txt2 {
  font-size: 70px;
  line-height: 1.2;
  font-weight: bold;
}
#point .titBox .txt2 strong {
  font-size: 100px;
  color: #3673aa;
}
#point > ul li {
  padding-top: 100px;
}
#point ul li .midashiBox {
  margin-bottom: 40px;
}
#point ul li .midashiBox .in {
  max-width: 1000px;
  width: 96%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  background-color: #3673aa;
  position: relative;
}
#point ul li .midashiBox .in:before {
  content: "";
  position: absolute;
  top: 0;
  background-color: #3673aa;
  width: 100%;
  height: 102px;
}
#point ul li:nth-child(odd) .midashiBox .in:before {
  left: -50%;
}
#point ul li:nth-child(even) .midashiBox .in:before {
  right: -50%;
}
#point ul li .midashiBox .in:after {
  content: "";
  position: absolute;
  top: 0;
  width: 156px;
  height: 102px;
}
#point ul li:nth-child(odd) .midashiBox .in:after {
  right: -156px;
  background: url(../img/point-obi1.png) no-repeat top center / cover;
}
#point ul li:nth-child(even) .midashiBox .in:after {
  left: -156px;
  background: url(../img/point-obi2.png) no-repeat top center / cover;
}
#point ul li .midashiBox .in .num {
  background-color: #cf111b;
  color: #fff;
  padding: 15px 0;
  border-radius: 100px;
  width: 120px;
  line-height: 1;
  font-size: 22px;
  text-align: center;
  margin: -10px 30px -10px 0;
  z-index: 10;
  position: relative;
}
#point ul li .midashiBox .in .num strong {
  font-size: 70px;
  display: block;
}
#point ul li .midashiBox .in .txt {
  font-size: 28px;
  line-height: 1.4;
  font-weight: bold;
  color: #fff;
  z-index: 10;
  position: relative;
}
#point ul li .midashiBox .in .txt strong {
  font-size: 34px;
  color: #fce54d;
}
#point ul li .inner {
  max-width: 1000px;
  width: 96%;
  margin: 0 auto;
}
#point ul li .inner .contsTxt {
  font-size: 20px;
  margin: 0 0 50px 150px;
  font-weight: bold;
}
#point ul li#item .inner .contsTxt:last-child {
  margin: 0 0 0 150px;
}
#point #leadtime {
  padding-top: 50px;
}

#point ul li#leadtime .inner .map {
  margin: -180px 0 40px;
  position: relative;
}
#point ul li#leadtime .inner .map img {
  width: 100%;
}
#point ul li#leadtime .inner .read-time {
  position: absolute;
  right: 0;
  bottom: 770px;
}
#point ul li#leadtime .inner .notes {
  background-color: #f6f6f6;
  padding: 20px 30px;
  margin:0 0 40px;
}
#point ul li#leadtime .inner .notes li {
  padding: 0;
  font-size: 16px;
  margin: 0 0 2px 1em;
  text-indent: -1em;
}
#point ul li#case .list .oneBox {
  position: relative;
  padding: 30px 0 100px;
}
#point ul li#case .list .oneBox:last-child {
  padding-bottom: 20px;
}
#point ul li#case .list .oneBox:before {
  content: "";
  width: 100%;
  height: 150px;
  background-color: #e7edf6;
  position: absolute;
  top: 0;
  left: 0;
}
#point ul li#case .list .oneBox:nth-child(3):before {
  height: 180px;
}
#point ul li#case .list .oneBox .inner {
  position: relative;
  z-index: 1;
  display: flex;
}
#point ul li#case .list .oneBox .inner .txtBox {
  margin-left: 30px;
}
#point ul li#case .list .oneBox .inner .txtBox .midashi {
  font-size: 20px;
  line-height: 1.6;
  font-weight: bold;
  color: #3673aa;
  margin-bottom: 15px;
}
#point ul li#case .list .oneBox .inner .txtBox .name {
  font-size: 18px;
  line-height: 1.4;
  text-align: right;
  font-weight: bold;
}
#point ul li#case .list .oneBox .inner .txtBox .txt {
  font-size: 16px;
  line-height: 2;
  margin-top: 40px;
}
#point .syuka-area {
  display: flex;
  margin: 0 0 30px;
}
#point .syuka-area .img {
  width: 50%;
}
#point .syuka-area p.img img {
  width: 100%;
}
#point .syuka-area .syuka-txt {
  width: 48%;
  background-color: #f6f6f6;
  padding: 10px 20px;
  max-height: 120px;
}
#point .syuka-area .syuka-txt span{
  font-weight: bold;
}
#point .syuka-area .syuka-txt .sp-dis {
  display: none;
}
#point .syuka-area .syuka-txt .pc-dis {
  display: inline-block;
}
#point ul li#case .list .morelink {
  display: block;
  background-color: #3673aa;
  color: #fff;
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  padding: 20px 0;
  border-radius: 5px;
  border-bottom: solid 4px #2a5a85;
  transition: 0.3s;
  margin-top: 10px;
  position: relative;
  width: 300px;
  margin: 0 auto;
  text-align: center;
  cursor: pointer;
}
#point ul li#case .list .morelink:after {
  content: "\02228";
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%) scale(1, 0.8);
}
#point ul li#case .list .morelink:hover {
  border-bottom: solid 4px #3673aa;
  transform: translateY(2px);
}
#point ul li#lot .box1 {
  display: flex;
  justify-content: center;
  flex-flow: row-reverse;
  align-items: center;
  margin-bottom: 80px;
}
#point ul li#lot .box1 .txt1 {
  font-size: 24px;
  line-height: 1.2;
  font-weight: bold;
  color: #3673aa;
  margin-bottom: 20px;
}
#point ul li#lot .box1 .txt2 {
  font-size: 16px;
  line-height: 2;
}
#point ul li#lot .box1 .txt1 strong {
  font-size: 34px;
  position: relative;
  background: linear-gradient(transparent 60%, #fce54d 0%);
}
#point ul li#lot .box1 .ill {
  margin-right: 30px;
}
#point ul li#item .list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#point ul li#item .list .box {
  width: 32%;
  margin-bottom: 2%;
  box-sizing: border-box;
  padding: 20px;
  text-align: center;
  border: solid 1px #ccc;
}
#point ul li#item .list .box .name {
  font-size: 20px;
  line-height: 1.2;
  font-weight: bold;
  margin-top: 20px;
}
#point ul li#alliance .list {
  max-width: 790px;
  width: 96%;
  margin: 0 auto;
  background-color: #e7edf6;
  padding: 40px;
  box-sizing: border-box;
  border-radius: 10px;
  position: relative;
}
#point ul li#alliance .list .midashi {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #3673aa;
  font-size: 22px;
  line-height: 1.6;
  font-weight: bold;
  margin: 0 -1em 40px;
}
#point ul li#alliance .list .midashi strong {
  display: block;
}
#point ul li#alliance .list .midashi:before,
#point ul li#alliance .list .midashi:after {
  content: "";
  height: 1px;
  background: #3673aa;
  margin: 0 1em;
  width: 100px;
}
#point ul li#alliance .list ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#point ul li#alliance .list ul li {
  width: 32%;
  margin-bottom: 30px;
  padding: 0;
  font-size: 20px;
  line-height: 1.2;
  font-weight: bold;
}
#point ul li#alliance .list .ill1 {
  position: absolute;
  bottom: -30px;
  left: -100px;
}
#point ul li#alliance .list .ill2 {
  position: absolute;
  bottom: -30px;
  right: -80px;
}
#point ul li .contactBn {
  background-color: #3673aa;
  padding: 0 20px 20px;
  position: relative;
}
#point ul li .contactBn .inner {
  text-align: center;
  width: 70%;
  margin: 0;
}
#point ul li .contactBn .inner .balloon {
  background-color: #fddf33;
  padding: 10px 60px 5px;
  color: #3673aa;
  position: relative;
  display: inline-block;
  margin: 0 auto;
  transform: translateY(-50%);
}
#point ul li .contactBn .inner .balloon:after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 11px 15px 0 15px;
  border-color: #fddf33 transparent transparent transparent;
  z-index: 10;
}
#point ul li .contactBn .inner .balloon strong {
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
  position: relative;
}
#point ul li .contactBn .inner .balloon strong:before {
  content: "＼";
  font-size: 16px;
  margin-right: 10px;
}
#point ul li .contactBn .inner .balloon strong:after {
  content: "／";
  font-size: 16px;
  margin-left: 10px;
}
#point ul li .contactBn .inner .txt1 {
  font-size: 26px;
  line-height: 1.4;
  font-weight: bold;
  color: #fff;
  margin-bottom: 10px;
}
#point ul li .contactBn .inner .in {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#point ul li .contactBn .inner .in .box2 {
  background-color: #fff;
  padding: 15px;
  box-sizing: border-box;
  width: 49%;
}
#point ul li .contactBn .inner .in .box2 .txt2 {
  text-align: left;
}
#point ul li .contactBn .inner .in .box2 .num a {
  color: #3673aa;
  font-size: 36px;
  line-height: 1.4;
  font-weight: bold;
}
#point ul li .contactBn .inner .in .box2 .data {
  background-color: #eee;
  font-size: 12px;
  padding: 5px 0;
}
#point ul li .contactBn .inner .in .box2 .btn a {
  display: block;
  background-color: #cf111b;
  color: #fff;
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  padding: 20px 0;
  border-radius: 5px;
  border-bottom: solid 4px #a4010a;
  transition: 0.3s;
  margin-top: 10px;
  position: relative;
}
#point ul li .contactBn .inner .in .box2 .btn a:after {
  content: "\03e";
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%) scale(0.75, 1);
}
#point ul li .contactBn .inner .in .box2 .btn a:hover {
  border-bottom: solid 4px #cf111b;
  transform: translateY(2px);
}
#point ul li .contactBn .img {
  width: 29%;
  position: absolute;
  bottom: 0;
  right: 10px;
}
#point ul li#storage .box1 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-flow: row-reverse;
  align-items: flex-start;
}
#point ul li#storage .box1 .txt {
  width: calc(100% - 500px);
  font-size: 20px;
  font-weight: bold;
}
#point ul li#storage .box1 .img {
  max-width: 470px;
  width: 470px;
}
#point ul li#storage .box1 .img img{
  width: 100%;
}
@media screen and (max-width: 1160px) {
  #point ul li:nth-child(odd) .midashiBox .in:after {
    right: -78px;
  }
  #point ul li:nth-child(even) .midashiBox .in:after {
    left: -78px;
  }
}
@media screen and (max-width: 980px) {
  #point ul li .contactBn .inner {
    display: block;
    width: 100%;
  }
  #point ul li .contactBn .inner .in {
    display: block;
    width: 70%;
  }
  #point ul li .contactBn .inner .in .box2 {
    width: 100%;
    margin-bottom: 10px;
  }
  #point ul li .contactBn .img {
    width: 32%;
  }
}
@media screen and (max-width: 768px) {
  #point .titBox {
    padding: 60px 0 0;
    margin-bottom: 0;
  }
  #point .titBox:after {
    background: url(../img/speech.png) no-repeat top center / contain;
    width: 80%;
    height: 0;
    padding-top: 6%;
    bottom: -30px;
  }
  #point .titBox .txt1 {
    font-size: 5vw;
  }
  #point .titBox .txt2 {
    font-size: 10vw;
  }
  #point .titBox .txt2 strong {
    font-size: 14vw;
  }
  #point ul li {
    padding-top: 60px;
  }
  #point ul li .midashiBox {
    margin-bottom: 20px;
  }
  #point ul li .midashiBox .in {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 20px;
  }
  #point ul li .midashiBox .in:before {
    display: none;
  }
  #point ul li .midashiBox .in:after {
    display: none;
  }
  #point ul li .midashiBox .in .num {
    padding: 10px 0;
    max-width: 54px;
    font-size: 16px;
    margin: 0 10px 0 0;
  }
  #point ul li .midashiBox .in .num strong {
    font-size: 20px;
  }
  #point ul li .midashiBox .in .txt {
    font-size: 16px;
  }
  #point ul li .midashiBox .in .txt strong {
    font-size: 22px;
  }
  #point ul li .inner .contsTxt {
    font-size: 16px;
    margin: 0 0 30px;
  }
  #point ul li#item .inner .contsTxt:last-child {
    margin: 0;
  }
  #point ul li#leadtime .inner .area {
    width: 40%;
    margin: 0;
  }
  #point ul li#leadtime .inner .read-time {
    position: static;
    width: 50%;
    margin: 10px 0 20px 180px;
  }
  #point ul li#leadtime .inner .map {
    margin: -110px 0 -80px;
  }
  #point ul li#leadtime .inner .notes {
    background-color: #f6f6f6;
    padding: 10px 20px;
  }
  #point .syuka-area {
    display: block;
    margin: 0 0 30px;
  }
  #point .syuka-area .img {
    width: 100%;
  }
  #point .syuka-area p.img img {
    width: 100%;
    margin: 0 auto 10px;
  }
  #point .syuka-area .syuka-txt {
    width: 100%;
    padding: 10px 2px;
    height: auto;
  }
  #point .syuka-area .syuka-txt .pc-dis {
    display: none;
  }
  #point .syuka-area .syuka-txt .sp-dis {
    display: inline-block;
  }
  #point ul li#case .list .oneBox {
    position: relative;
    padding: 10px 0 30px;
  }
  #point ul li#case .list .oneBox:last-child {
    padding-bottom: 10px;
  }
  #point ul li#case .list .oneBox:before {
    display: none;
  }
  #point ul li#case .list .oneBox .inner {
    display: block;
    width: 100%;
  }
  #point ul li#case .list .oneBox .inner .img {
    padding: 20px 20px 0;
    background-color: #e7edf6;
  }
  #point ul li#case .list .oneBox .inner .img img {
    width: 100%;
  }
  #point ul li#case .list .oneBox .inner .txtBox {
    margin-left: 0;
  }
  #point ul li#case .list .oneBox .inner .txtBox .obi {
    padding: 20px;
    background-color: #e7edf6;
  }
  #point ul li#case .list .oneBox .inner .txtBox .midashi {
    font-size: 16px;
    margin-bottom: 10px;
  }
  #point ul li#case .list .oneBox .inner .txtBox .name {
    font-size: 16px;
  }
  #point ul li#case .list .oneBox .inner .txtBox .txt {
    font-size: 16px;
    line-height: 2;
    padding: 20px;
    margin: 0;
  }
  #point ul li#case .list .morelink {
    font-size: 16px;
    line-height: 1.2;
    width: 280px;
  }
  #point ul li#lot .box1 {
    display: block;
    margin-bottom: 40px;
  }
  #point ul li#lot .box1 .txt1 {
    font-size: 16px;
    margin-bottom: 20px;
  }
  #point ul li#lot .box1 .txt2 {
    font-size: 13px;
  }
  #point ul li#lot .box1 .txt1 strong {
    font-size: 30px;
    position: relative;
    background: linear-gradient(transparent 60%, #fce54d 0%);
  }
  #point ul li#lot .box1 .ill {
    width: 40%;
    margin: 10px auto 0;
  }
  #point ul li#lot .box1 .ill img {
    width: 100%;
  }
  #point ul li#item .list .box {
    width: 49%;
    padding: 20px;
  }
  #point ul li#item .list .box .name {
    font-size: 16px;
  }
  #point ul li#alliance .list {
    width: 96%;
    padding: 20px 20px 0;
  }
  #point ul li#alliance .list .midashi {
    font-size: 18px;
    margin: 0 -1.5em 30px;
  }
  #point ul li#alliance .list .midashi:before,
  #point ul li#alliance .list .midashi:after {
    width: 30px;
  }
  #point ul li#alliance .list ul {
    display: block;
  }
  #point ul li#alliance .list ul li {
    width: 100%;
    margin-bottom: 20px;
    font-size: 16px;
    text-align: center;
  }
  #point ul li#alliance .list .illBox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  #point ul li#alliance .list .ill1 {
    position: initial;
    bottom: initial;
    left: initial;
    width: 50%;
  }
  #point ul li#alliance .list .ill2 {
    position: initial;
    bottom: initial;
    right: initial;
    width: 40%;
  }
  #point ul li .contactBn {
    padding: 0 10px;
  }
  #point ul li .contactBn .inner .balloon {
    padding: 10px 20px 5px;
  }
  #point ul li .contactBn .inner .balloon strong {
    font-size: 16px;
  }
  #point ul li .contactBn .inner .balloon strong:before {
    font-size: 12px;
  }
  #point ul li .contactBn .inner .balloon strong:after {
    font-size: 12px;
  }
  #point ul li .contactBn .inner .txt1 {
    font-size: 18px;
  }
  #point ul li .contactBn .inner .in .box2 .num a {
    font-size: 26px;
  }
  #point ul li .contactBn .inner .in .box2 .btn a {
    font-size: 16px;
  }
  #point ul li .contactBn .inner {
    display: block;
    width: 100%;
  }
  #point ul li .contactBn .inner .in {
    display: block;
    width: 100%;
  }
  #point ul li .contactBn .inner .in .box2 {
    width: 100%;
    margin-bottom: 10px;
  }
  #point ul li .contactBn .img {
    width: 40%;
    margin: -30px auto 0;
    position: initial;
    bottom: initial;
    right: initial;
  }
  #point ul li#storage .box1 {
    display: block;
  }
  #point ul li#storage .box1 .txt {
    width: 100%;
    font-size: 16px;
    margin: 0 0 20px;
  }
  #point ul li#storage .box1 .img {
    max-width: 470px;
    width: 100%;
    margin: 0 auto;
  }
}

.comTit {
  text-align: center;
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  color: #3673aa;
  margin-bottom: 50px;
}
.comTit strong {
  display: block;
  font-size: 50px;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .comTit {
    font-size: 18px;
    margin-bottom: 30px;
  }
  .comTit strong {
    font-size: 30px;
  }
}

#price {
  padding: 100px 0;
  background-color: #f6f6f6;
}
#price .contsTxt {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin: -40px 0 40px;
}
#price .contsTxtSub {
  text-align: center;
  font-size: 18px;
  margin: -40px auto 40px;
  font-weight: bold;
}
#price .contsTxtSub p {
  display: inline-block;
  position: relative;
  background: linear-gradient(transparent 60%, #fce54d 0%);
}
#price .inner {
  max-width: 1000px;
  width: 96%;
  margin: 0 auto 40px;
  background-color: #fff;
  box-sizing: border-box;
  padding: 40px;
  position: relative;
  text-align: center;
  //overflow-x: auto;
  //white-space: nowrap;
}
#price .inner:last-of-type{
  margin-bottom: 0;
}
#price .inner .box {
  max-width: 920px;
  margin: 0 auto;
  position: relative;
  overflow-x: auto;
  white-space: nowrap;
}
#price .inner table {
  border: 3px solid #ccc;
}
#price .inner .t2 table {
  border: 3px solid #ccc;
  box-sizing: border-box;
  width: 100%;
}
#price .inner .t2 table th {
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
  background-color: #eee;
  padding: 5px 10px;
}
#price .inner .t2 .midashi{
  text-align: center;
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  color: #3673aa;
  margin: 0 0 20px;
}
#price .inner table td {
  border: 1px solid #ccc;
  border-left: 3px solid #ccc;
  padding: 5px;
  box-sizing: border-box;
}
#price .inner .t2 table td{
  text-align: left;
  padding: 5px 10px;
}
#price .inner table .kgkm td {
  background-color: #eee;
  border-top: 3px solid #ccc;
  border-bottom: 3px solid #ccc;
}
#price .inner table .bordernone {
  border-right-style: hidden;
  border-left-style: hidden;
}
#price .inner table td {
  border: 1px solid #ccc;
  border-left: 3px solid #ccc;
  padding: 5px;
}
#price .inner table td.fixed01 {
  position: sticky;
  left: 0;
  background: #fff;
}

#price .inner table td.fixed01:before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: 100%;
  border-top: 1px solid #ccc;
  border-right: 2px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-left: 2px solid #ccc;
  outline: none;
}
p.caution {
  margin: 20px 0 0;
  text-align: left;
}

@media screen and (max-width: 768px) {
  #price {
    padding: 60px 0;
    background-color: #f6f6f6;
  }
  #price .contsTxt {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    margin: -20px 0 40px;
  }
  #price .contsTxtSub {
    text-align: center;
    font-size: 14px;
    margin: -40px 0 40px;
    font-weight: bold;
  }
  #price .contsTxtSub p {
    background: linear-gradient(transparent 50%, #fce54d 0%);
  }
}

#flow {
  padding: 100px 0;
}
#flow .inner {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
}
#flow .inner ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#flow .inner ul li {
  width: 30%;
  font-size: 16px;
  line-height: 1.8;
}
#flow .inner ul li .img {
  position: relative;
}
#flow .inner ul li .img img {
  width: 100%;
}
#flow .inner ul li .img:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -13%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 0 20px 20px;
  border-color: transparent transparent transparent #3673aa;
  z-index: 10;
}
#flow .inner ul li:last-child .img:after {
  display: none;
}
#flow .inner ul li .midashi {
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  margin: 10px 0;
}
#flow .inner ul li .midashi strong {
  background-color: #222;
  color: #fff;
  display: inline-block;
  padding: 0 10px;
  margin-right: 10px;
}
@media screen and (max-width: 768px) {
  #flow {
    padding: 60px 0;
    background-color: #f6f6f6;
  }
  #flow .inner ul li .img:after {
    display: none;
  }
  #flow .inner ul {
    display: block;
  }
  #flow .inner ul li {
    width: 100%;
    position: relative;
    margin-bottom: 60px;
  }
  #flow .inner ul li:after {
    content: "";
    position: absolute;
    bottom: -40px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 20px 0 20px;
    border-color: #3673aa transparent transparent transparent;
    z-index: 10;
  }
  #flow .inner ul li:last-child {
    margin-bottom: 0;
  }
  #flow .inner ul li:last-child:after {
    display: none;
  }
}

#contact-obi {
  background-color: #3673aa;
}
#contact-obi .inner {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
  padding: 30px 0;
  position: relative;
}
#contact-obi .inner .txtBox {
  width: 70%;
  color: #fff;
  font-size: 18px;
  line-height: 2;
}
#contact-obi .inner .txtBox .txt1 {
  font-size: 46px;
  line-height: 1.4;
  font-weight: bold;
  margin-bottom: 10px;
}
#contact-obi .inner .img {
  width: 29%;
  position: absolute;
  bottom: 0;
  right: 10px;
}
@media screen and (max-width: 768px) {
  #contact-obi .inner {
    padding: 20px 0 0;
  }
  #contact-obi .inner .txtBox {
    width: 100%;
    font-size: 16px;
  }
  #contact-obi .inner .txtBox .txt1 {
    font-size: 26px;
  }
  #contact-obi .inner .img {
    width: 40%;
    margin: -10px auto 0;
    position: initial;
    bottom: initial;
    right: initial;
  }
}

#contact {
  padding: 100px 0;
  background-color: #f6f6f6;
}
#contact .inner {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
}
#contact .inner .form {
  padding: 30px 40px;
  box-sizing: border-box;
  background-color: #fff;
}
#contact .inner table {
  border-collapse: collapse;
  width: 100%;
  text-align: left;
}
#contact .inner table th,
#contact .inner table td {
  padding: 15px 20px;
  vertical-align: top;
  box-sizing: border-box;
  border-bottom: dotted 1px #ccc;
}
#contact .inner table tr {
}
#contact .inner table tr:last-child th,
#contact .inner table tr:last-child td,
#contact .inner table tr.haisosaki th {
  border-bottom: none;
}
#contact .inner table th {
  width: 30%;
  min-width: 210px;
  position: relative;
  font-size: 20px;
  font-weight: bold;
  color: #004386;
}
#contact .inner table td .addNum {
  margin-bottom: 10px;
}
#contact .inner input,
#contact .inner textarea,
#contact .inner select {
  width: 80%;
  padding: 10px;
  border: none;
  background: #f1f1f1;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-shadow: none;
}
#contact .inner input.problem {
  background-color: #fcc;
}
#contact .inner input.add1 {
  width: 130px;
}
#contact .inner input[type="radio"] {
  width: auto;
}
#contact .inner label {
  margin-right: 10px;
  padding: 0;
  border: none;
}
form#mailformpro label.mfp_not_checked,
form#mailformpro label.mfp_checked {
  padding: 0;
  border: none;
  background: none;
  box-shadow: none;
}
#contact .inner input[type="submit"] {
  display: block;
  background-color: #3673aa;
  color: #fff;
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  padding: 20px 0;
  border-radius: 5px;
  border-bottom: solid 4px #2a5a85;
  transition: 0.3s;
  margin-top: 10px;
  position: relative;
  width: 300px;
  margin: 0 10px;
  text-align: center;
  cursor: pointer;
}
#contact .inner .entry-btn{
  display: flex;
  justify-content: center;
  margin-top: 50px;
}
.mfp_element_submit,
.mfp_element_reset,
.mfp_element_button,
button.mfp_next,
button.mfp_prev {
  border-radius: 0;
}
.mfp_element_all {
  max-width: 100%;
}
#contact .inner .hiss {
  background: #cf111b;
  font-size: 12px;
  font-weight: 600;
  color: #fff;
  padding: 0 5px;
  margin-left: 10px;
  white-space: nowrap;
  position: absolute;
  height: 25px;
  letter-spacing: 0.1em;
  right: 0;
  top: 20px;
  margin: auto;
}
#contact .inner .addTxt {
  position: absolute;
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  right: 0;
  top: 20px;
  color: #222;
}
#contact .inner .notes {
  margin-bottom: 10px;
}
#contact .inner .notes .hiss {
  position: initial;
  padding: 5px;
  margin-right: 5px;
}
.thanks main {
  min-height: calc(100vh - 132px);
}
.thanks #contact .inner {
  border: none;
  padding: 30px 40px;
  text-align: center;
}
.thanks #contact .inner .midashi {
  font-size: 24px;
  line-height: 1;
  font-weight: 600;
  margin-bottom: 40px;
}
.thanks #contact .inner .txt {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 40px;
}
.thanks #contact .inner .btn {
  display: block;
  background-color: #3673aa;
  color: #fff;
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  padding: 20px 0;
  border-radius: 5px;
  border-bottom: solid 4px #2a5a85;
  transition: 0.3s;
  margin-top: 10px;
  position: relative;
  width: 300px;
  margin: 50px auto 0;
  text-align: center;
  cursor: pointer;
}
@media (min-width: 761px) {
  #contact .inner input[type="submit"]:hover,
  .thanks #contact .inner .btn:hover {
    border-bottom: solid 4px #3673aa;
    transform: translateY(2px);
  }
}
@media (max-width: 768px) {
  #contact {
    padding: 60px 0;
  }
  #contact .inner {
  }
  #contact .inner .form {
    padding: 20px 10px;
  }
  #contact .inner table th,
  #contact .inner table td {
    display: block;
    width: 100%;
    padding: 10px 0 0;
  }
  #contact .inner table tr.haisosaki td {
    border-bottom: none;
  }
  #contact .inner table th {
    min-width: 180px;
    font-size: 16px;
  }
  #contact .inner table td {
    padding: 5px 0;
    border-bottom: 1px solid #ccc;
  }
  #contact .inner input,
  #contact .inner textarea,
  #contact .inner select {
    width: 100%;
  }
  .mfp_element_textarea {
    width: 100%;
  }
  #contact .inner input[type="submit"] {
    margin: 0 5px;
    width: 290px;
  }
  #contact .inner .addTxt {
    position: initial;
    font-size: 16px;
    line-height: 1.2;
    font-weight: bold;
    color: #222;
    display: block;
    border-bottom: 1px dotted #ccc;
  }
  .hiss {
    height: 20px;
    top: 12px;
    right: 0;
    line-height: 20px;
  }
  #contact .inner .notes {
    margin-bottom: 10px;
    font-size: 12px;
  }
  .thanks #contact .inner .btn {
    width: 300px;
    margin: 30px auto 0;
  }
  #contact .inner .entry-btn{
    margin: 30px 0 0;
  }
  .thanks main {
    min-height: calc(100vh - 106px);
  }
}

footer {
  background-color: #3673aa;
}
footer .info {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
  text-align: right;
  color: #fff;
  padding: 30px 0;
}
footer .info .company {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}
footer .info .company img {
  margin-right: 10px;
}
footer address {
  font-size: 12px;
  text-align: center;
  padding: 10px 0;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  footer .info {
    text-align: center;
    padding: 20px 0;
  }
  footer .info .company {
    font-size: 16px;
    margin-bottom: 10px;
  }
  footer .info .company img {
    margin-right: 10px;
    width: 30px;
  }
  footer address {
    font-size: 10px;
    padding: 10px 0 60px;
  }
}

/**********************************
#column
**********************************/
#column .mv{
  background: url(../img/column_bg.jpg) no-repeat top center / cover;
  padding: 40px 0;
  margin-bottom: 60px;
  text-align: center;
}
#column .mv h2{
  text-align: center;
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  color: #000;
}
#column .mv h2 strong{
  display: block;
  font-size: 50px;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
}
#column .wrap{
  max-width: 1000px;
  width: 94%;
  margin: 0 auto;
  padding-bottom: 60px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#column .wrap .article{
  width: calc(100% - 260px);
}
#column .wrap .article .list{
  border-top: solid 1px #ccc;
  margin-bottom: 30px;
}
#column .wrap .article .list li a{
  display: block;
  color: #000;
  padding: 20px 10px;
  border-bottom: solid 1px #ccc;
}
#column .wrap .article .list li a:hover{
  background-color: #e7edf6;
}
#column .wrap .article .list li a .date{
  font-size: 14px;
  line-height: 1;
}
#column .wrap .article .list li a .cat{
  display: inline-block;
  margin-left: 10px;
  background-color: #3673aa;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  padding: 5px 10px;
}
#column .wrap .article .list li a .tit{
  display: block;
  margin-top: 10px;
  line-height: 1.2;
  font-size: 16px;
  color: #3673aa;
}
#column .wrap .sub{
  width: 240px;
  min-width: 240px;
}
#column .wrap .sub .midashi{
  background-color: #3673aa;
  color: #fff;
  font-size: 14px;
  line-height: 1;
  padding: 15px;
}
#column .wrap .sub ul{
  margin-bottom: 20px;
}
#column .wrap .sub ul li a{
  display: block;
  background-color: #eee;
  border-bottom: solid 1px #fff;
  font-size: 14px;
  line-height: 1;
  padding: 15px;
  color: #000;
}
#column .wrap .sub ul li a:hover{
  background-color: #e7edf6;
}
#column.detail .wrap .page-tit{
  border-bottom: solid 1px #3673aa;
  border-top: solid 1px #3673aa;
  color: #3673aa;
  font-size: 24px;
  line-height: 1.2;
  text-align: center;
  padding: 15px 10px;
  margin-bottom: 10px;
}
#column.detail .wrap .article .date{
  font-size: 14px;
  line-height: 1;
}
#column.detail .wrap .article .cat{
  display: inline-block;
  margin-left: 10px;
  background-color: #3673aa;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  padding: 5px 10px;
}
#column.detail .wrap .article .entry{
  font-size: 15px;
  line-height: 2;
  margin: 20px 0;
}
#column.detail .wrap .article .entry p{
  margin: 0px;
  padding: 0px;
  font-size: 16px;
  line-height: 2;
  margin-bottom: 10px;
}
#column.detail .wrap .article .entry a{
  color: #E7772D;
  text-decoration: underline;
}
#column.detail .wrap .article .entry a:hover{
  text-decoration: none;
}
#column.detail .wrap .article .entry p:after{
  content: '';
  display:block;
  visibility:hidden;
  clear:both;
  height:0.1px;
  font-size:0.1em;
  line-height:0;
}
#column.detail .wrap .article .entry h1,
#column.detail .wrap .article .entry h2,
#column.detail .wrap .article .entry h3,
#column.detail .wrap .article .entry h4,
#column.detail .wrap .article .entry h5,
#column.detail .wrap .article .entry h6{
  margin: 0 0 10px;
  line-height: 1.6;
}
#column.detail .wrap .article .entry img{
  vertical-align: top;
}
#column.detail .wrap .article .entry h1{
  font-size: 32px;
  font-weight: bold;
}
#column.detail .wrap .article .entry h2{
  font-size: 28px;
  font-weight: bold;
}
#column.detail .wrap .article .entry h3{
  font-size: 24px;
  font-weight: bold;
}
#column.detail .wrap .article .entry h4{
  font-size: 24px;
}
#column.detail .wrap .article .entry h5{
  font-size: 20px;
}
#column.detail .wrap .article .entry h6{
  font-size: 18px;
}
#column.detail .wrap .article .entry img.alignleft{
  float: left;
  margin-right: 20px;
}
#column.detail .wrap .article .entry img.alignright{
  float: right;
  margin-left: 20px;
}
#column.detail .wrap .article .entry img.aligncenter{
  display: block;
  margin: 0 auto;
}
.pager{
  text-align: center;
}
.pager .page-numbers {
  margin: 0 1px 4px;
  padding: 0;
  display: inline-block;
  background: #fff;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  position: relative;
  font-size: 12px;
  box-sizing: border-box;
  border: solid 1px #3673aa;
  color: #3673aa;;
  transition: .3s;
}
.pager .page-numbers:hover,
.pager span.current{
  color: #fff;
  background: #3673aa;;
}
.pager ul.pagination {
  text-align: center;
  margin: 0;
  padding: 0;
  font-size:0;
}
.pager .pagination li {
  margin: 0 -1px;
  padding: 0;
  display: inline-block;
  background: #fff;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  position: relative;
  font-size: 12px;
  box-sizing: border-box;
  border: solid 1px #3673aa;
  color: #3673aa;
}
.pager .pagination li.back{
  width: 160px;
}
.pager .pagination li a{
  vertical-align: middle;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display:table;
  color: #3673aa;
  text-decoration: none;
}
.pager .pagination li a span{
  display:table-cell;
  vertical-align:middle;
}
.pager .pagination li a:hover,
.pager .pagination li a.active{
  color: #fff;
  background: #3673aa;
}@media screen and (max-width: 768px) {
  #column .mv{
    padding: 90px 0 30px;
    margin-bottom: 30px;
  }
  #column .mv h2{
    font-size: 18px;
  }
  #column .mv h2 strong{
    font-size: 30px;
    margin-bottom: 5px;
  }
  #column .wrap{
    padding-bottom: 30px;
    display: block;
  }
  #column .wrap .article{
    width: 100%;
  }
  #column .wrap .article .list{
    margin-bottom: 20px;
  }
  #column .wrap .article .list li a{
    padding: 10px 5px;
  }
  #column .wrap .article .list li a .date{
    font-size: 12px;
    line-height: 1;
  }
  #column .wrap .article .list li a .cat{
    margin-left: 5px;
    font-size: 11px;
  }
  #column .wrap .article .list li a .tit{
    margin-top: 5px;
    font-size: 14px;
  }
  #column .wrap .sub{
    width: 100%;
    min-width: auto;
    margin: 20px 0 0;
  }
  #column .wrap .sub .midashi{
    font-size: 12px;
    padding: 10px;
  }
  #column .wrap .sub ul{
    margin-bottom: 10px;
  }
  #column .wrap .sub ul li a{
    font-size: 12px;
    padding: 10px;
  }
  .pager .page-numbers {
    width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 11px;
    margin: 0 1px 2px;
  }
}

#point ul #storage .inner:last-child{
    margin:40px auto 0;
}
#point ul #storage .inner:last-child .txt{
    text-align:center;
    font-size: 28px;
    font-weight:700;
    color: #3673aa;
}
#point ul #storage .inner:last-child table{
    width:100%;
}
#point ul #storage .inner:last-child table tr,
#point ul #storage .inner:last-child table th,
#point ul #storage .inner:last-child table td{
    border:3px solid #ccc;
}
#point ul #storage .inner:last-child table th{
    text-align:center;
    font-weight:700;
    background: #eee;
}
#point ul #storage .inner:last-child table td{
    text-align:right;
    padding:4px 8px;
}