@charset "utf-8";

/*=================================

tb_common

=================================*/

/*=================================

tb_common_max-1180

=================================*/
@media screen and (max-width: 1180px) {

.h3_title.full {
 width: 100%;
 margin: 0 auto;
}

#flow {
margin: 0;
}

#flow > img {
 display:flex;
}

#flow #flow_cont {
 display:none;
}

#flow:before,
#flow:after,
#flow #flow_cont:before,
#flow #flow_cont:after {
 display:none;
}

}

/*=================================

tb_common_max-1080

=================================*/
@media screen and (max-width: 1080px) {
#header #header_cont {
 padding:15px 90px 15px 15px;
}

#header .open_hour {
 display:none;
}

}

/*=================================

tb_common_max-1024

=================================*/
@media screen and (max-width: 1024px) {

/*------------------------------------------------------------
main
------------------------------------------------------------*/
#main {
 padding:0 70px 50px;
}

/*------------------------------------------------------------
header
------------------------------------------------------------*/
#header.fixed {
 position:fixed;
}

#header #header_cont #menuBtn {
 align-items:center;
 display:flex;
 flex-direction:column;
 justify-content:center;
 position:fixed;
 top:15px;
 right:15px;
}

#header #header_cont #menuBtn label {
 align-items:center;
 background-color:var(--white);
 border:1px solid var(--gray_cc);
 border-radius:3px;
 flex-direction:column;
 left:auto;
 height: 52px;
 justify-content: center;
 padding:0;
 position:relative;
 width: 52px;
}

#header #header_cont #menuBtn label:hover {
 cursor:pointer;
}

#header #header_cont #menuBtn label span {
 background-color:var(--gray_66);
 margin-left:-15px;
 position: absolute;
 background-color: var(--gray_66);
 width: 18px;
 height: 2px;
 left: 50%;
 margin-left: -10px;
 right: auto;
 border-radius: 6px;
}

#header #header_cont #menuBtn label span:nth-of-type(1) {
 top:12px;
}

#header #header_cont #menuBtn label span:nth-of-type(2) {
 top:17px;
}

#header #header_cont #menuBtn label span:nth-of-type(3) {
 top:22px;
}

#header #header_cont #menuBtn dl {
 align-items:center;
 display: flex;
 flex-direction:column;
 justify-content: center;
 position: relative;
 row-gap:0;
 width:100%;
}

#header #header_cont #menuBtn dl dt {
 align-items:center;
 display: flex;
 height:30px;
 justify-content: center;
 /*width: 63px;*/
 width:100%;
}

#header #header_cont #menuBtn dl dd {
 letter-spacing: -0.05rem;
 text-align:center;
}

#header #header_cont #menuBtn:hover dl dt span,
#header #header_cont #menuBtn.active dl dt span {
 background-color:var(--orange);
}

#header #header_cont #menuBtn:hover dl dd {
 color:var(--orange);
}

/*------------------------------------------------------------
conversion
------------------------------------------------------------*/
.conversion .conversion_wrap {
 background-position: -8% bottom;
 padding: 10px 0 0;
}

.conversion .conversion_wrap .conversion_cont {
 padding: 0 20px 120px;
}

.conversion .conversion_wrap .conversion_cont:after {
 right: 25px;
}

/*------------------------------------------------------------
banner_area
------------------------------------------------------------*/
.banner_area .banner_area_cont {
 padding: 30px 30px;
}

.banner_area .banner_area_cont ul {
 row-gap:40px;
}

/*------------------------------------------------------------
license_info_area
------------------------------------------------------------*/
#license_info_area #license_info_area_cont ul {
 row-gap:40px;
}

/*------------------------------------------------------------
footer
------------------------------------------------------------*/
#footer #footer_cont {
 padding: 35px 50px 15px 50px;
}

#footer #footer_cont #footer_cont_left {
 flex:1 0 auto;
 flex-wrap:nowrap;
 justify-content:space-between;
 gap: 80px;
 width:100%;
}

#footer #footer_cont #footer_cont_left .pic:after {
 left:225px;
 top:50px;
}

#footer #footer_cont #footer_cont_left .address {
 max-width:300px;
}

#footer #footer_cont #footer_cont_left .address p span {
 font-size:1.4rem;
}

.footer-widgets .footer-widget > ul.list_type_a {
 flex-wrap:wrap;
 gap:10px;
 flex-direction:unset;
}

.footer-widgets .footer-widget > ul.list_type_a > li {
 width:calc(100% / 3 - 10px);
}

.footer-widgets .footer-widget > ul.list_type_b {
 column-gap:20px;
}

.footer-widgets .footer-widget > ul.list_type_b > li {
 width:calc(100% / 3 - 10px);
}

.footer-widgets {
 column-gap:20px;
}

.footer-widgets .footer-widget {
 flex:1 1 100%;
}

.footer-widgets .footer-widget:nth-child(2) {
 width:100%;
}

#footer #footer_bottom #footer_bottom_cont {
 row-gap:20px;
}

#footer #footer_bottom #footer_bottom_cont #footer_bottom_right {
 align-items:center;
 column-gap:10px;
 display:flex;
 flex-wrap:wrap;
 flex:1 1 100%;
 justify-content:start;
 row-gap:10px;
}

/*------------------------------------------------------------
page_top 
------------------------------------------------------------*/
#page_top #page_top_cont {
 padding:0 120px 0 30px;
}

/*------------------------------------------------------------
post-list
------------------------------------------------------------*/
.post-list li a .pic {
 height:200px;
}

.post-list li a .pic img {
 height:100%;
 width:auto;
}

/*=================================

2nd_page_template

=================================*/
#contents {
 padding:50px 50px 20px;
 row-gap: 30px;
}

/*------------------------------------------------------------
grid_list
------------------------------------------------------------*/
.grid-list > ul li .btn {
 min-width:100%;
 width:100%;
}

/*--- 3column ---*/
.grid-list > .col-3 {
 grid-template-columns: repeat(auto-fit, minmax(45%, 1fr));
}

/*--- 4column ---*/
.grid-list > .col-4 {
 grid-template-columns: repeat(auto-fit, minmax(45%, 1fr));
}

/*--- 5column ---*/
.grid-list > .col-5 {
 grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

/*--- 1-3 column ---*/
.grid-list.col-1-3 {
 grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

/*------------------------------------------------------------
information_box
------------------------------------------------------------*/
.info_box .info_box_cont > dl > dt {
 flex:1;
 min-width:300px;
}



}

/*=================================

tb_common_max-960

=================================*/
@media screen and (max-width: 960px) {
#header #header_cont #header_right_area > dl {
 display:none;
}


}