
body {
 background: #fff;
}
.frame_style{
 overflow: hidden;
}
.frame_style .scroll_area {
 height: 420px;
 overflow-y: scroll;
}
.frame_style .btn_search a {
 margin-top: 20px;
}
.frame_style .scroll_area::-webkit-scrollbar {
 width: 5px;
 height: 5px;
}
.frame_style .scroll_area::-webkit-scrollbar-track {
 border-radius: 5px;
 box-shadow: 0 0 4px #aaa inset;
}
.frame_style .scroll_area::-webkit-scrollbar-thumb {
 background: #2962ff;
}
.close_list {
 margin-top: 20px;
}
.close_list li {
 position: relative;
 display: inline-block;
}
.close_list li span {
 display: block;
 font-size: 1.4rem;
 line-height: 1.4rem;
 font-weight: bold;
 color: #fff;
 margin: 0 20px 10px 0;
 padding: 5px 30px 5px 10px;
 background: #666666;
 border-radius: 5px;
 cursor: pointer;
}
.close_list li span:before {
 content:"";
 position:absolute;
 display:inline-block;
 top: 5px;
 right: 30px;
 width:3px;
 height:15px;
 border:0;
 margin:0;
 padding:0;
 background-color: #fff;
 -moz-transform:rotate(45deg);
 -webkit-transform:rotate(45deg);
 transform:rotate(45deg);
}
.close_list li span:after {
 content:"";
 position:absolute;
 display:inline-block;
 top: 5px;
 right: 30px;
 width:3px;
 height:15px;
 border:0;
 margin:0;
 padding:0;
 background-color: #fff;
 -moz-transform:rotate(-45deg);
 -webkit-transform:rotate(-45deg);
 transform:rotate(-45deg);
}
footer {
 width: 100%;
 margin-top: 160px;
 padding: 40px 0;
 background: #2962ff;
}
footer .footer_wrap {
 position: relative;
 width: 1200px;
 margin: 0 auto;
}
footer .footer_wrap ul {
 position: absolute;
 right: 0;
 top: 40px;
}
footer .footer_wrap li {
 display: inline-block;
}
footer .footer_wrap li a {
 color: #fff;
 font-size: 1.4rem;
}
footer .footer_wrap li a:hover {
 text-decoration: underline;
}
footer .footer_wrap li a.on {
 pointer-events:none; 
 text-decoration: underline;
}
footer .footer_wrap li:after {
 content: "｜";
 font-size: 1.4rem;
 padding: 0 10px;
 color: #fff;
}
footer .footer_wrap li.last:after {
 content: "";
 padding: 0 0 0 15px;
}
.pagetop {
 bottom: 15%;
}

/************

フロントトップ

************/
header {
 width: 1400px;
 height: 780px;
 margin: 0 auto;
 text-align: center;
 background: url(../img/top_bg.jpg) no-repeat;
}
header h1 {
 padding-top: 70px;
}
header p.catch {
 width: 1100px;
 font-size: 3rem;
 line-height: 4.8rem;
 color: #fff;
 text-align: left;
 margin: 40px auto 0;
}
header nav.top_nav {
 position: relative;
 top: auto;
 right: auto;
 width: 1100px;
 margin: 120px auto 0;
}
header nav.top_nav li {
 display: inline-block;
 width: 240px;
 height: 180px;
 margin-right: 43px;
 border-radius: 5px;
}
header nav.top_nav li:last-child {
 margin-right: 0;
}
header nav.top_nav li a {
 display: table-cell;
 width: 240px;
 height: 180px;
 font-size: 3rem;
 line-height: 3rem;
 color: #fff;
 text-align: center;
 vertical-align: middle;
 border: 4px solid #fff;
 background: #2962ff;
 border-radius: 5px;
}
header nav.top_nav li a span {
 display: block;
}
header nav.top_nav li a:hover {
 opacity: 0.8;
}

.f_bnner {
 width:1100px;
 margin: 40px auto;
}
.f_bnner li {
 display: inline-block;
 margin-right: 15px;
}
.f_bnner li.last {
 margin-right: 0;
}
.f_bnner li a {
 display: table-cell;
}
.f_news {
 width: 100%;
 background: #f3f3f3;
 padding-bottom: 40px;
}
.f_news h2 {
 width: 1100px;
 font-size: 3.2rem;
 line-height: 3.2rem;
 margin: 0 auto;
 padding-top: 40px;
}
.f_news .news_area {
 overflow: hidden;
 width: 1100px;
 height: 450px;
 margin: 40px auto;
 background: #fff;
 border-radius: 10px;
 padding: 75px 15px 75px 75px;
}
.f_news .news_area ul {
 overflow-y: scroll;
 width: 1010px;
 height: 300px;
}
.f_news .news_area ul::-webkit-scrollbar {
 width: 5px;
 height: 5px;
}
.f_news .news_area ul::-webkit-scrollbar-track {
 border-radius: 5px;
 box-shadow: 0 0 4px #aaa inset;
}
.f_news .news_area ul::-webkit-scrollbar-thumb {
 background: #2962ff;
}
.f_news .news_area li {
 position: relative;
 margin-bottom: 40px;
}
.f_news .news_area li span.day {
 position: absolute;
 left: 0;
 top: 0;
 font-size: 1.6rem;
 line-height: 1.8rem;
 color: #666;
}
.f_news .news_area li p {
 display: inline-block;
 padding-left: 150px;
}
.f_news .news_area li a {
 font-size: 1.8rem;
 line-height: 2.4rem;
 color: #666;
 text-decoration: underline;
}
.f_news .news_area li.last {
 margin-bottom: 0;
}
.f_contact h2 {
 width: 1100px;
 font-size: 3.2rem;
 line-height: 3.2rem;
 margin: 0 auto;
 padding-top: 55px;
}
.f_contact .contact_wrap {
 width: 1100px;
 margin: 40px auto;
 padding-top: 40px;
 text-align: center;
 border-radius: 10px;
 border: 2px solid #ccc;
}
.f_contact .contact_wrap table {
 margin: 0 auto;
}
.f_contact .contact_wrap table th {
 width: 230px;
}
.no_breadcrumbs .contact_wrap td textarea,
.f_contact .contact_wrap td textarea {
 box-sizing:border-box;
 width: 100%;
 height: 130px;
 font-size: 1.8rem;
 line-height: 2.2rem;
 border: 1px solid #ccc;
 border-radius: 5px;
 padding: 7px 10px;
 margin: 0;
}


/************

フロント2階層

************/
body.front {
 background: #eee;
}
body.front header {
 position: relative;
 width: 1200px;
 height: 80px;
 margin: 0 auto;
 text-align: left;
 background: #2962ff;
 border-radius: 0 0 10px 10px;
}
body.front header h1 {
 display: inline-block;
 margin-left: 20px;
 padding-top: 15px;
 text-align: center;
}
body.front header h1 a {
 display: inline-block;
 font-size: 2.4rem;
 line-height: 2.4rem;
 font-weight: normal;
 padding-top: 0;
 color: #fff;
}
body.front header h1 span {
 display: block;
 font-size: 1.2rem;
 line-height: 3rem;
}
body.front header nav {
 position: absolute;
 top: 32px;
 right: 10px;
}
body.front header nav li {
 display: inline;
}
body.front header nav li a {
 color: #fff;
 font-size: 1.4rem;
}
body.front header nav li a:hover {
 text-decoration: underline;
}
body.front header nav li a.on {
 pointer-events:none; 
 text-decoration: underline;
}
body.front header nav li:after {
 content: "｜";
 font-size: 1.4rem;
 padding: 0 10px;
 color: #fff;
}
body.front header nav li.last:after {
 content: "";
 padding: 0 0 0 15px;
}
body.front .contents_wrap {
 position: relative;
 width: 1200px;
 margin: 0 auto 80px;
// padding: 50px;
 background: #fff;
 border-radius: 10px;
}
body.front .contents_wrap .result_list ul.info li .address {
 margin-top: 15px;
}
body.front ul.top_search {
 position: relative;
 margin-top: 40px;
}
body.front ul.top_search li {
 position: relative;
 display: inline-block;
 margin-right: 40px;
}
body.front ul.top_search li.start a {
 display:block;
}
body.front ul.top_search li.start a input {
 cursor: pointer
}
body.front ul.top_search li.start a:after {
 position: absolute;
 content: "";
 width: 20px;
 height: 20px;
 top: 15px;
 right: 15px;
 background:url(../img/btn_open_blue.png) no-repeat;
 z-index: 1000;
}
body.front ul.top_search li.last {
 position: absolute;
 top: 0;
 right: 0;
 margin-right: 0;
 width: 120px;
 border-radius: 10px;
 background: #2962ff;
 text-align: center;
}
body.front ul.top_search li.last a {
 display: block;
 font-size: 2.6rem;
 line-height: 5.6rem;
 color: #fff;
}
body.front ul.top_search li.last a:hover {
 opacity: 0.8;
}
body.front ul.top_search input[type=text] {
 width: 270px;
 font-size: 1.8rem;
 line-height: 1.8rem;
 border: 2px solid #828282;
 border-radius: 5px;
 padding: 15px;
}
body.front ul.top_search input[type=text].free {
 width: 630px;
}
body.front .inquiry_form table th {
 font-size: 1.7rem;
 line-height: 3.4rem;
}
body.front .inquiry_form td textarea {
 box-sizing:border-box;
 width: 100%;
 height: 130px;
 font-size: 1.8rem;
 line-height: 2.2rem;
 border: 1px solid #ccc;
 border-radius: 5px;
 padding: 7px 10px;
 margin: 0;
}


