@charset "utf-8";
.pcOnly {
  display: none;
}
.tabOnly {
  display: block;
}
.spOnly {
  display: none;
}
.tabspOnly {
  display: block;
}
.pctabOnly {
  display: block;
}
.hdBtm {
  width: 100%;
  padding: 20px 0%;
}
.hdBtm .logo {
  width: 100%;
  max-width: none;
}
.hdBtm .logo a {
    display: flex;
    align-items: center;
}
.hdBtm .logo a img {
  width: 100%;
  max-width: 278px;
  margin-right: 30px;
}
.hdBtm .logo p {
	font-size: 16px;
	text-align: left;
	color: #333;
	font-weight: bold;
	display: inline-block;
}
.hdBtm .navHead {
  display: none;
}
.hdBtm .btnCon {
  display: none;
}
/*============================
#nav-toggle
============================*/
.btnMenu {
  cursor: pointer;
}
.btnMenu {
  height: 56px;
  width: 60px;
  top: 30px;
}
.btnMenu span {
  position: absolute;
  display: block;
  top: 10px;
  left: 30%;
  width: 40%;
  height: 3px;
  background-color: #fff;
  transition: all 0.3s ease-out;
  z-index: 100000;
}
.btnMenu span:nth-of-type(2) {
  top: 18px;
}
.btnMenu span:nth-of-type(3) {
  top: 26px;
}
.btnMenu em {
  position: absolute;
  top: 40px;
  left: 0;
  width: 100%;
  color: #fff;
  font-size: 10px;
  font-weight: bold;
  font-style: normal;
  text-transform: uppercase;
  line-height: 0;
  text-align: center;
}
.btnMenu.vew {
  background-color: #ffffff;
}
.btnMenu.vew span:nth-of-type(1) {
  top: 20px;
}
.btnMenu.vew span:nth-of-type(2) {
  display: none;
}
.btnMenu.vew span:nth-of-type(3) {
  top: 20px;
}
.hdBtm .navSrch .btnCon {
  margin: 1vh auto;
  display: flex;
  flex-wrap: wrap;
}
.hdBtm .navSrch .btnCon a {
  width: 18%;
  display: block;
  font-size: 12px;
  padding: 1.5vh 0;
  float: left;
}
.hdBtm .navSrch .btnCon a i {
  display: block;
  font-size: 40px;
  margin-bottom: 5px;
}
.hdBtm .navSrch .btnCon .tel {
  width: 22em;
}
.hdBtm .navSrch .btnCon .tel span {
  font-size: 10px;
  display: block;
}
.hdBtm .navSrch .btnCon .tel a {
  font-size: 34px;
  width: 11em;
  text-align: left;
  padding: 0;
  border: none;
  font-weight: bold;
  float: none;
}
.hdBtm .navSrch .btnCon .tel a i {
  /* font-size: 18px; */
  display: inline-block;
  margin-bottom: 0px;
}

.hdBtm .navSrch ul li {
  width: 32%;
  margin: 0.5vh 0.5%;
  float: left;
}

.hdBtm .navSrch ul li a {
  font-size: 1.5vw;
}
.ftMem {
  border-top: solid 1px #cccccc;
  padding: 30px 0;
}
.ftMem .bnrMem {
  position: relative;
}
.ftMem .bnrMem .inner {
  padding: 2% 2%;
  z-index: 2;
  color: #ffffff;
}
.ftMem .bnrMem h3 {
  font-size: 24px;
  margin-bottom: 5px;
}
.ftMem .bnrMem p {
  font-size: 14px;
  margin-bottom: 5px;
}
.ftMem .bnrMem ul {
  padding: 1% 2%;
  width: 80%;
  margin: 0 auto 5px;
}
.ftMem .bnrMem ul li {
  font-size: 14px;
  width: 100%;
  margin-bottom: 0px;
}
.ftMem .bnrMem ul li strong {
  font-size: 130%;
}
.ftMem .bnrMem .btn {
  width: 94%;
  padding: 10px 2%;
}
.ftMem .bnrMem:hover img {
  filter: brightness(80%);
}
.ftMem .boxLogin {
  text-align: center;
}
.ftMem .boxLogin dt {
  font-size: 20px;
  margin-bottom: 20px;
}
.ftMem .boxLogin dd {
  width: 47%;
  display: inline-block;
  margin: 0 1% 10px;
}
.ftMem .boxLogin dd a {
  display: block;
  text-decoration: none;
  position: relative;
  box-shadow: none;
  font-size: 13px;
}
/***********ttl***********/
h2.ttl span {
  position: absolute;
  bottom: 0px;
  right: 10px;
  font-size: 30px;
  opacity: 0.5;
}
a.btn::after {
  font-family: 'Material Icons';
  position: absolute;
  top: 50%;
  margin-top: -9px;
  font-size: 18px;
  color: #fff;
  transition: all 0.3s linear;
}
a.btn:hover::after {
  right: 20px;
}
a.listBtn {
  width: auto;
  border-radius: 5px;
  text-align: right;
  font-size: 14px;
  padding: 3px 10px 0px;
  display: inline-block;
  text-decoration: none;
  float: right;
  position: absolute;
  top: 6px;
  right: 6px;
}
a.listBtn i {
  vertical-align: middle;
  margin-bottom: 3px;
  margin-left: 5px;
}
.pan {
  font-size: 11px;
  line-height: 14px;
}
.conw {
  width: 100%;
}
.con {
  margin: 0 auto;
}
.block {
  max-width: 1100px;
  width: 98%;
}
.sec {
  padding: 1em 0;
}
.secWhite {
  padding: 2vh 2% 10px;
  margin-bottom: 10vh;
  width: 94%;
}
.left {
  float: left;
}
.right {
  float: right;
}
.txt {
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 20px;
}
.note {
  font-size: 12px;
  color: #ff0000;
  font-weight: bold;
}
.topmain {
  width: 72%;
}
.topmain img {
  width: 100%;
  min-width: auto;
}
.topmain #top_slider_prev,
.topmain #top_slider_next {
  display: none;
}
/***********topNavi***********/
.topmainbg .topNavi {
  width: 28%;
}
.topmainbg .topNavi a {
  padding: 0 15px;
  font-size: 16px;
}
.topmainbg .topNavi a.last {
  font-size: 18px;
}
.topmainbg .topNavi a span {
  font-size: 22px;
}
.top_tit h1{
  font-size: 30px;
  padding: 3vh 0;
}

/***********secSpe***********/
.secSpe ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.secSpe li {
  width: 30%;
  margin: 0 1% 15px;
}
/*********areamap***************/
.map img {
  width: 100%;
}
.map a {
  width: auto;
  min-width: 90px;
  padding: 10px 10px;
  font-size: 14px;
}
.map .btn_lst_sold {
	 bottom: 3%;
	 right: 1.5%;
	 padding: 0em;
	 margin: 0;
	 border: none;
	 display: flex;
	 align-items: center;
	 width: 28%;
	 justify-content: space-between;
	 background-color: #d14444;
	 flex-direction: column;
	 border-radius: 5px;
	 overflow: hidden;
	 border: solid 2px #af142f;
}
.map .btn_lst_sold:hover {
    background-color: #d14444;
    color:#fff;
    border: solid 2px #af142f;
}

.map .btn_lst_sold dl{
    width: 100%;
}

.map .btn_lst_sold dl dt{font-size: 16px;}

.map .btn_lst_sold dl dt::before{
}
.map .btn_lst_sold dl dt::after{
        top: 50%;
        margin-top: -9px;
        font-size: 18px;
        right: 7%;
        color: #ffffff;
        transition: all 0.3s linear;
}

.map .btn_lst_sold:hover dl dt::after {
    right: 4%;
}
.map .btn_lst_sold dl dd{font-size: 12px;padding: 0.5em;}
.map .btn_lst_sold dl dd strong{font-size: 120%;}


/***********secRcmd***********/
.secRcmd .boxRcmd {
  text-align: center;
}
.secRcmd .boxRcmd .boxShu {
  width: 32%;
  display: inline-block;
  vertical-align: text-top;
  padding-bottom: 20px;
}
/***********検索条件***********/
.srchFrm {
  margin-bottom: 30px;
  padding-bottom: 20px;
}
.srchFrm .tab {
  font-size: 0;
}
.srchFrm .tab + div {
  padding: 20px 1% 0;
}
.tabKind {
  font-size: 0;
  margin-bottom: 0px;
}
.tabKind li {
  width: 49%;
	float: left;
  vertical-align: text-top;
  cursor: pointer;
}
.tabKind li:nth-child(2) {
  float: right;
}
.tabKind li a {
  padding: 15px 0;
  line-height: 60px;
  font-size: 23px;
}
.tabKind li a:hover {
  opacity: 1;
  -moz-transform: translate(0px, -10px);
  -o-transform: translate(0px, -10px);
  -ms-transform: translate(0px, -10px);
}
.tabKind li a i {
  font-size: 60px;
  margin-right: 10px;
}
.tabKind li a p {
  margin: 15px auto 0;
	padding: 5px 1%;
  color: #ffffff;
  font-size: 20px;
  width: 98%;
  position: relative;
  font-weight: bold;
}
.tabKind li a p strong {
  font-size: 130%;
  font-weight: bold;
}
.tabKind li a p small {
  font-size: 16px;
}
.tabKind li a p::after {
  font-family: 'Material Icons';
  position: absolute;
  top: 50%;
  margin-top: -11px;
  font-size: 22px;
  right: 3%;
  color: #1b589b;
  transition: all 0.3s linear;
}
#other_dialog.srchFrm {
  box-shadow: none;
  margin-bottom: 0px;
}
#other_dialog.srchFrm .srchFrmFt {
  margin-bottom: 20px;
}
.boxCond {
  margin-bottom: 20px;
}
/*============================
#train
============================*/
.srchFrm .tab li a {
  font-size: 24px;
  padding: 10px 0;
}
.srchFrm .tab li a i {
  font-size: 35px;
}
.srchFrm .tab li#train.lineBtn {
  background-color: #195093;
  color: #ffffff;
  text-align: center;
  font-size: 30px;
  font-weight: bold;
}
.srchFrm dl.left {
  width: 49%;
}
.srchFrm dl.right {
  width: 49%;
}
.srchFrm dl dt, .srchFrm dl dd {
  display: inline-block;
  margin-bottom: 10px;
}
.srchFrm dl dt {
  width: 100%;
}
.srchFrm dl dd {
  width: 100%;
}
.srchFrmFt {
  padding: 0px 1% 0;
}
.srchFrmFt li {
  display: inline-block;
  width: 24%;
}
/***********secAbout***********/
.secAbout .left {
  width: 50%;
}
.secAbout .left .img img {
  width: 100%;
  max-width: 560px;
}
.secAbout .right {
  width: 48%;
  padding: 0 1%;
}
.secAbout .right .add {
  font-size: 21px;
  margin-bottom: 10px;
}
.secAbout .right .add span {
  display: block;
  font-size: 80%;
}
.secAbout .right .tel {
  border: solid 1px #cccccc;
  padding: 10px 2%;
  margin-bottom: 10px;
}
.secAbout .right .tel .free {
  border-bottom: solid 1px #cccccc;
  text-align: center;
  padding-bottom: 10px;
}
.secAbout .right .tel .free a {
  font-size: 27px;
}
.secAbout .right .tel .free span {
  font-size: 12px;
}
.secAbout .right .tel ul {
  text-align: center;
  padding-top: 10px;
}
.secAbout .right .tel ul li {
  display: inline-block;
  margin: 0 5px;
  font-weight: bold;
  font-size: 15px;
}
.secAbout .right .tel ul li span {
  padding: 1px 5px;
  font-size: 12px;
}
.secAbout .right .point {
  text-align: center;
}
.secAbout .right .point li {
  display: inline-block;
  vertical-align: text-top;
  background-color: #195093;
	color: #ffffff;
  padding: 15px 2%;
  width: 96%;
  font-weight: bold;
  text-align: center;
  font-size: 30px;
}
.secAbout .right .point li:first-child {
  width: 96%;
}
.info {
  margin-bottom: 40px;
  position: relative;
}
.info .infoBox {
  width: 98%;
  padding: 6px 0%;
  max-height: 200px;
  overflow-y: scroll;
  margin-bottom: 20px;
}
.info .infoBox li {
  margin-bottom: 3px;
}
.info .infoBox li a {
  text-decoration: none;
  background-color: #ffffff;
  color: #000000;
  display: block;
  padding: 10px 2%;
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
}
.info .infoBox li a:hover {
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
}
.info .infoBox li p {
  display: inline-block;
}
.info .infoBox li .date {
  margin-right: 10px;
  font-size: 14px;
  width: 120px;
}
.info .infoBox li .title {
  font-size: 14px;
}
/*************************
一覧　検索条件表示
**********************/
.list {
  margin: 0 auto 120px;
}
.lst .slick-slide {
  margin: 0 5px;
}
.lst .itmBox .txtArea {
  min-height: 180px;
}
/* 一覧　ページャー
========================================== */

.srch_fw {}
.srch_fw form{
	width:75%
}
.srch_fw input[type=text]{
}
.srch_fw button {}
.srch_fw button i {}





/*************************
物件詳細
**********************/
.detail .infoHd {
  position: relative;
  margin-bottom: 20px;
  background-size: cover;
}
.main.detail .infoHd h1 {
  background: none;
  padding: 30px 1% 30px 5%;
  text-align: left;
  letter-spacing: 5px;
  position: relative;
  overflow: hidden;
  width: 72%;
  margin-bottom: 0px;
  border: none;
}
.main.detail .infoHd h1.newly::before {
  top: 20px;
  left: -32px;
  width: 130px;
  font-size: 16px;
  line-height: 1.78;
}
.infoHd .btnArea {
  right: 1%;
  width: 20%;
}
.infoHd .btnArea li a.btn {
  width: 100%;
}
.infoHd .btnArea li a.btn::after {
  content: none;
}
.infoHd .btnArea li span.fav {
  height: 45px;
}
.infoHd .btnArea li span.fav::before {
  font-size: 45px;
}
.infoHd .btnArea li span.fav.added::before {
  content: "\e87d";
}
.infoHd .btnArea li a i {
  font-size: 30px;
  vertical-align: middle;
}
.infoMain {
  margin-bottom: 30px;
}
.infoMain .left {
  width: 60%;
}
.infoMain .left dl {
  border-top: dotted 1px #000000;
  padding: 10px 2%;
}
.infoMain .left dl dt, .infoMain .left dl dd {
  display: inline-block;
  vertical-align: middle;
}
.infoMain .left dl dt {
  font-size: 14px;
  width: 20%;
}
.infoMain .left dl dd {
  width: 78%;
}
.infoMain .left dl.price {
  border-top: none;
}
.infoMain .left dl.price dd {
  font-size: 36px;
}
.infoMain .left dl.price dd small {
  font-size: 18px;
}
.infoMain .left dl.price dd a.btnSimu {
  width: auto;
  font-size: 14px;
  padding: 3px 10px 3px;
}
.infoMain .left dl.price dd a.btnSimu i {
  vertical-align: middle;
}
.infoMain .left .contactArea {
  padding: 10px 0;
  text-align: center;
  margin-bottom: 20px;
}
.infoMain .left .contactArea a {
  display: inline-block;
}
.infoMain .left .contactArea a i {
  font-size: 30px;
  vertical-align: middle;
}
.infoMain .left .contactArea a.btn::after {
  content: none;
}
.infoMain .left .contactArea a.tel {
  padding: 5px 2%;
  font-size: 21px;
}
.infoMain .left .contactArea a.tel i {
  font-size: 20px;
  margin-bottom: 7px;
}
.infoMain .left .contactArea p.bms_code {
	padding: 18px 0;
  font-size: 15px;
}
.infoMain .right {
  width: 35%;
}
.infoMain .right img {
  width: 100%;
  width: auto;
  display: block;
  max-width: 100%;
  max-height: 100%;
  margin: 0 auto;
}
.infoMain .right .imgInfo {
  margin-bottom: 10px;
}
.infoMain .right .imgInfo .img {
  background-color: #ffffff;
  margin-bottom: 5px;
  height: auto;
}
.infoMain .right .imgInfo .txt {
  text-align: left;
}
.detail .tabHd {
  margin-bottom: 30px;
}
.detail .tabFt {
  margin-bottom: 50px;
  margin-top: 50px;
}
.detail .tab {
  font-size: 0;
}
.detail .tab li {
  width: 50%;
}
.detail .tab li a {
  font-size: 18px;
  padding: 10px 0;
}
.pointBox {padding: 5vh 0 0;}
.secMovie {padding: 0 0 5vh;}
.secD360 {padding: 0 0 5vh;}
.gallery {
  flex-wrap: wrap;
  display: flex;
}
.gallery li {
  cursor: pointer;
  width: 24%;
  margin: 0 0.5% 20px;
  position: relative;
}
.gallery li .img {
  background-color: #ffffff;
}
.gallery li .img img {
  width: auto;
  display: block;
  max-width: 100%;
  max-height: 100%;
  margin: 0 auto;
}
.gallery li .txt {
  position: absolute;
  bottom: 0px;
  left: 0px;
  background-color: rgba(0, 0, 0, 0.60);
  padding: 1px 2%;
  width: 96%;
  color: #ffffff;
}
/*************************
会社案内　
**********************/
.sec_greeting .left {
  width: 100%;
}
.sec_greeting .right {
  width: 100%;
}
.staffList ul li {
	width: 44%;
	padding: 15px 2%;
}
.staffList ul li:nth-child(2n) {
  margin-right: 0;
}
.staffList ul li .thum img {
  width: 100%;
}
.staffList ul li table.staffTable {
  float: left;
}
.blogW {
  padding: 10px 0 0 0;
}
.blogW .blogMain {
  width: 100%;
  float: left;
  margin-bottom: 10px;
}
.blogW .side {
  width: 100%;
  float: right;
}
.blogW .side .sideBlock ul {
  margin-bottom: 30px;
}
.blogW .side .sideBlock ul li {
  margin-bottom: 5px;
}
.blogW .side .sideBlock ul li a {
  position: relative;
  background-color: #ffffff;
  text-decoration: none;
  padding: 10px 10px 10px 30px;
  display: block;
  box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, 0.18);
}
.blogW .side .sideBlock ul li a:hover {
  box-shadow: 11px 15px 28px 0 rgba(0, 0, 0, .18);
}
.blogW .side .sideBlock ul li a::before {
  font-family: 'Material Icons';
  content: "\E315";
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -8px;
  font-size: 16px;
  color: #1c5396;
  display: inline-block;
}
.blogW .side .sideBlock ul li a span {
  padding: 2px 10px;
  border-radius: 5px;
}
article.blog {
  box-shadow: 11px 15px 28px 0 rgba(0, 0, 0, .18);
  padding: 20px 3%;
  border: solid 1px #f1f1f1;
  background-color: #ffffff;
  margin-bottom: 30px;
}
article.blog p.date {
  font-size: 16px;
  text-align: right;
}
article.blog p.date i {
  font-size: 24px;
  vertical-align: bottom;
  margin-right: 5px;
  color: #1c5396;
}
article.blog h2.ttl {
  text-align: left;
}
article.blog h2.ttl a:hover {
  opacity: 1;
}
article.blog section {
  min-height: 300px;
  margin-bottom: 30px;
}
article.blog ul.cate {
  text-align: right;
}
article.blog ul.cate li {
  display: inline-block;
}
article.blog ul.cate li a {
  display: inline-block;
  text-decoration: none;
  font-size: 14px;
}
article.blog ul.cate li a span {
  padding: 2px 10px;
  border-radius: 5px;
}
.sitemap dl {
  float: left;
  width: 46%;
  margin-right: 4%;
  margin-bottom: 30px;
}
.sitemap dl dt {
  font-weight: bold;
  margin-bottom: 10px;
  border-bottom: dotted 1px #004898;
}
.sitemap dl dd {
  text-indent: 10px;
  margin-bottom: 5px;
  font-size: 14px;
}
.sitemap dl dd:before {
  /* content:"▶ "; */
  color: #999999;
}
.static .block {
  max-width: 1000px;
}
.static .sec {
  background-color: #ffffff;
  padding: 30px 2%;
  box-shadow: 7px 7px 0px 0px rgba(0, 0, 0, 0.1);
}
.btnCvLst {
  text-align: center;
}
.btnCvLst li {
  width: 44%;
  margin: 0 0.5% 10px;
  padding: 10px 1%;
}
.btnCvLst li .ttl {
  padding: 10px 2%;
}
.btnCvLst li .inner {
  margin-bottom: 10px;
  min-height: 80px;
}
.btnCvLst li .inner span {
  font-size: 14px;
}
.btnCvLst li .inner a {
  font-size: 30px;
  width: 100%;
  padding: 0;
  display: block;
}
.btnCvLst li .inner a i.material-icons {
  font-size: 24px;
  vertical-align: middle;
}
.souzoku h2.ttl {
  text-align: left;
}
.souzoku h2.ttl strong {
  font-size: 150%;
  color: #ff7300;
  margin-right: 10px;
}
.souzoku .secWhite .txt {
  line-height: 1.8;
}
.souzoku .inner {
  margin-bottom: 3vh;
}
.souzoku .inner .left {
  width: 60%;
}
.souzoku .inner .right {
  width: 38%;
}
.souzoku table.tableQa {
  width: 100%;
  margin-bottom: 20px;
}
.souzoku table.tableQa tr th, .souzoku table.tableQa tr td {
  border: solid 1px #cccccc;
  padding: 5px 5px;
}
.souzoku table.tableQa tbody tr th {
  text-align: center;
}
.souzoku table.tableQa tbody tr td {
  text-align: left;
}
.lstQa {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0px 2px;
}
.lstQa tr {
  background-color: #ffffff;
  border-radius: 10px;
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
}
.lstQa tr th, .lstQa tr td {
  padding: 5px 1%;
  font-size: 16px;
  border-collapse: separate;
  border-spacing: 10px;
}
.lstQa tr th {
  width: 20%;
  font-size: 20px;
}
.lstQa tr td {
  width: 74%;
}
.lstCase {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0px 2px;
}
.lstCase tr {
  background-color: #ffffff;
  border-radius: 10px;
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
}
.lstCase tr th, .lstCase tr td {
  padding: 15px 1%;
  font-size: 16px;
  border-collapse: separate;
  border-spacing: 10px;
}
.lstCase tr th {
  width: 25%;
  font-size: 20px;
}
.lstCase tr td {
  width: 84%;
}
.lstCase tr td a {
  float: right;
  margin-top: 20px;
}
.boxFlow {
  padding: 10px 1%;
}
.boxFlow.left {
  width: 47%;
}
.boxFlow.right {
  width: 47%;
}
.boxFlow.no::after {
  content: none;
}
.boxPoint {
  padding: 10px 1%;
  background-color: #e9f7f5;
  margin-bottom: 3vh;
  border: solid 1px #007563;
}
.boxPoint ul li {
  font-weight: bold;
  color: #007563;
}
/*************************
物件詳細印刷用CSS
**********************/
@media print {
  .sidebar, #hdwrap, #gnwrap, .pan, .tab, .pagetop, .pagetop img, #ftwrap, .srchBtn, .btnContact, #similar, .detailBox .btnAreaBottom, .detailBox .gallery, .detailBox .detailContact .detailContact_tel li:first-child, .detailBox .detailContact .detailContact_btn li:nth-child(1), .detailBox .detailContact .detailContact_btn li:nth-child(2), .copyWrap .ftrsubnavi {
    display: none !important;
  }
}


/*20240620 追加*/

.our_works .work_box {
    padding: 10% 0 9%;
    margin-bottom: 50px;
}
.our_works .work_box .inner {
    max-width: 80%;
    padding: 7%;
}
.simulation {
    padding: 0 0 50px;
	width: 90%;
}
.for_reason .read,
.for_reason h3{
    font-size: 30px;
}
.for_reason .reason_box {
  width: 30%;
}
.for_reason .reason_box dt {
  background-size: 100% 100%;
  text-align: center;
  color: #ffffff;
  padding: 43px 0 50px;
  box-sizing: border-box;
}
.for_reason .support_grid {
    gap: 20px;
}
.for_reason .support_box h4 {
    font-size: 30px;
}
.for_reason .support_grid .inner_grid {
    grid-template-columns: 100px 1fr;
}
.for_reason .support_grid .inner_grid2 {
    grid-template-columns: 100px 1fr;
}
.for_reason .inner_grid3 .row {
    grid-template-columns: 100px 1fr;
}
.for_reason .inner_grid3 dt {
    margin: 0;
}
.about_us .message {
    font-size: 23px;
}
.about_us .comment {
    top: 500px;
    font-size: 16px;
    width: 290px;
}
.about_us .button {
    bottom: -10px;
    left: 0;
    width: 290px;
    height: 40px;
    font-size: 18px;
}
.about_us .inner {
    margin: 0 auto 50px;
}
.secAbout {
    padding: 4vh 0;
    margin: 4vh 0 0;
}
footer .ft {
    padding: 30px 0;
}
footer .ft dl dt {
    width: 15%;
}
footer .ft dl dd {
    width: 83%;
}

.top_menu ul {
  width: 96%;
}
.top_menu ul li.tel {
  width: 28%;
}
.top_menu ul li.tel .tel_no {
  font-size: 20px;
}
.top_menu ul li.tel .tel_no span {
  font-size: 70%;
}
.top_menu ul li.sns {
  width: 21%;
}
.top_menu ul li.sns img {
  margin-right: 10px;
}
.top_menu ul li.float {
  width: 24%;
  text-align: right;
}
.top_menu ul li.float span {
  font-weight: bold;
  margin-left: 15px;
}
.top_menu ul li.float .member {
  color: #DF0003;
  font-size: 18px;
}
.top_menu ul li.regist {
  width: 13%;
}
.top_menu ul li.regist a {
  width: 100%;
  display: block;
  background: #160083;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  box-sizing: border-box;
}
.top_menu ul li.login {
  width: 13%;
}
.top_menu ul li.login a {
  width: 100%;
  display: block;
  border: 2px solid #160083;
  color: #160083;
  text-align: center;
  padding: 10px 0;
  box-sizing: border-box;
}
