@charset "utf-8";
/* Common */
.txt--large {font-size: 1.1em;}
.txt--small {font-size: 0.9em;}
.txt--r {text-align: right !important;}
.txt--c {text-align: center !important;}
.txt--ul {text-decoration: underline !important;}
.txt--red {color: #ff2222;}
.is--pc {display: block !important;}
.is--sp {display: none !important;}
.invisible {visibility: hidden;}
.m0 {margin: 0 auto !important;}
.p0 {padding: 0 !important;}
.disc li {list-style-type: disc;}
.decimal li {list-style-type: decimal;}
*[animation]{visibility: hidden;}
/* Links */
a.icn[href^="http"][target="_blank"]:after {
   content: "";
   display: inline-block;
   width: 14px;
   height: 14px;
   line-height: 20px;
   margin: 0 10px 2px 6px;
   background: url("/img/common/icn_link.png") center no-repeat;
   background-size: contain;
   vertical-align: middle;
}
a.icn[href^="/"][target="_blank"]:after {
   content: "";
   display: inline-block;
   margin: 0 10px 0 8px;
   padding: 0 5px;
   font-size: 1.2rem;
   line-height: 20px;
   color: #ff7f7f;
   border: 1px solid #ff7f7f;
   font-weight: bold;
}
a.icn[href^="/"][href$=".pdf"]:after {
   content: "PDF";
   background-color: #fff;
}
a.icn[href^="/"][href$=".xls"]:after {
   content: "XLS";
   background-color: #fff;
}
a.icn[href^="/"][href$=".xlsx"]:after {
   content: "XLSX";
   background-color: #fff;
}
a.icn[href^="/"][href$=".xlsm"]:after {
   content: "XLSM";
   background-color: #fff;
}
a.icn[href^="/"][href$=".doc"]:after {
   content: "DOC";
   background-color: #fff;
}
a.icn[href^="/"][href$=".docx"]:after {
   content: "DOCX";
   background-color: #fff;
}
a.icn[href^="/"][href$=".zip"]:after {
   content: "ZIP";
   background-color: #fff;
}
a.icn_up:after {
   content: "UP";
   display: inline-block;
   margin: 0 10px 0 8px;
   padding: 0 5px;
   font-size: 1.1rem;
   color: #fff;
   font-weight: bold;
   background-color: #ef3200;
}
.link--html {
   display: inline-block !important;
   margin: 0 4px !important;
   padding: 0 5px !important;
   background-color: #335c80 !important;
   font-size: 1.1rem !important;
   color: #fff !important;
   font-weight: bold !important;
   text-decoration: none !important;
}
.link--pdf {
   display: inline-block !important;
   margin: 0 4px !important;
   padding: 0 5px !important;
   background-color: #b11010 !important;
   font-size: 1.1rem !important;
   color: #fff !important;
   font-weight: bold !important;
   text-decoration: none !important;
}
.icn__new {
   font-size: 1.1rem;
   line-height: 20px;
   padding: 0 5px;
   border: 1px solid #ff7f7f;
   color: #ff7f7f;
}
/* All */
html{
   font-size: 62.5%;
}
body {
   font-family: "Noto Sans JP",'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, arial, helvetica, sans-serif;
   font-size: 1.4rem;
}
main{
   position: relative;
   padding-bottom: 60px;
}
.header{
   position: relative;
   z-index: 3;
}
.header_wrap{
   display: flex;
   justify-content: flex-start;
   align-items: flex-start;
   width: 100%;
   height: 103px;
   padding: 0 40px;
   background-color: #fff;
   border-bottom: 3px solid #B88914;
}
.lower .header_wrap{
   border-bottom: none;
}
.header_wrap-sp{
   display: none;
}
.header_logo{
   position: relative;
   display: block;
   width: 320px;
   height: 320px;
   margin-top: -160px;
   border-radius: 50%;
   background-image: linear-gradient(90deg, #ffaf1d 0%, #ff9c5d 100%);
   flex: 0 0 auto;
}
.lower .header_logo{
   border: 3px solid #fff;
}
.header_logo.hover{
   opacity: 1;
}
.header_logo img{
   position: absolute;
   bottom: 70px;
   left: 0;
   right: 0;
   margin: 0 auto;
}
.header_subttl{
   display: flex;
   justify-content: center;
   align-items: center;
   height: 100px;
   padding: 0 30px;
}
.header_info{
   flex: 0 0 auto;
   margin-left: auto;
}
.header_tel{
   height: 40px;
   line-height: 50px;
   text-align: right;
   font-size: 1.4rem;
   color: #000;
}
.header_tel span{
   color: #2d2d2d;
   font-size: 2.4rem;
   font-weight: bold;
}
.header_controls{
   display: flex;
   justify-content: center;
   align-items: center;
   height: 50px;
}
.header_fontsize{
   display: flex;
   justify-content: center;
   align-items: center;
   margin-right: 15px;
   font-size: 1.6rem;
}
.header_fontsize p {
   margin-right: 10px;
}
.header_fontsize div{
   display: flex;
   justify-content: center;
   align-items: center;
}
.header_fontsize div button{
   display: block;
   width: 60px;
   height: 40px;
   line-height: 40px;
   color: #000;
   background-color: #ebebeb;
}
.header_fontsize div button.active{
   color: #fff;
   background-color: #ff9c5d;
}
.header_fontsize div button.is--active{
   color: #fff;
   background-color: #ff9c5d;
}
.header_access a{
   display: block;
   height: 40px;
   line-height: 40px;
   padding: 0 20px;
   font-size: 1.6rem;
   text-decoration: none;
   background-color: #ff9c5d;
   color: #fff;
}
.top_kv{
   width: 100%;
   height: 600px;
   max-height: 50vw;
   background: linear-gradient(to bottom, #ffe6dd, #ffffd6);
}
.top_kv__imgwrap{
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   height: 100%;
   padding-top: 60px;
   background: url(/img/top/top_kv.png) center right no-repeat;
   background-size: auto;
}
.top_kv__catch{
   width: 100%;
   max-width: 1400px;
   padding: 0 20px;
}
.top_kv__catch h1{
font-size: 4.0rem;
font-weight: normal;
margin-bottom: 20px;
}
.top_kv__catch p{
font-size: 1.6rem;
line-height: 2em;
}
.subnavi{
   position: relative;
   display: flex;
   justify-content: center;
   width: 100%;
   height: 80px;
   background: #997766;
   z-index: 2;
}
.subnavi>a{
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   width: calc(100% / 3);
   max-width: 400px;
   padding: 0 60px;
   border-left: 1px solid #fff;
   text-align: center;
   text-decoration: none;
   font-size: 1.8rem;
   color: #fff;
   cursor: pointer;
}
.subnavi>a:last-of-type{
   border-right: 1px solid #fff;
}
.subnavi>a.hover{
   opacity: 1;
}
.subnavi>a.is--show{
   background-color: #ff7f7f;
}
.subnavi>a:before{
   content: "";
   position: absolute;
   top: calc(50% - 15px);
   left: 20px;
   display: block;
   width: 30px;
   height: 30px;
   background-position:  center;
   background-repeat: no-repeat;
   background-size: contain;
}
.subnavi>a.subnavi--01:before{
   background-image: url(/img/common/icn_01.png);
}
.subnavi>a.subnavi--02:before{
   background-image: url(/img/common/icn_02.png);
}
.subnavi>a.subnavi--03:before{
   background-image: url(/img/common/icn_03.png);
}
.subnavi>a:after{
   content: "";
   position: absolute;
   bottom: calc(50% - 6px);
   right: 20px;
   display: block;
   border-top: 12px solid #fff;
   border-right: 6px solid transparent;
   border-left: 6px solid transparent;
   transition: all 0.3s;
}
.head_contents .subnavi{
   height: 54px;
   padding-left: 340px;
}
.head_contents .subnavi>a{
   font-size: 1.6rem;
   max-width: inherit;
}
.head_contents .subnavi>a:last-of-type{
   border-right: none;
}
.head_contents .subnavi ul{
   top: 54px;
}
.subnavi>a.is--show:after{
   bottom: 0;
}
.subnavi>ul{
   position: absolute;
   top: 80px;
   left: 0;
   display: flex;
   justify-content: center;
   align-items: flex-start;
   flex-wrap: wrap;
   width: 100%;
   margin: 0;
   padding: 20px 0;
   background-color: #fff;
   box-shadow: 0 5px 5px #c8d0dd;
   border-top: 10px solid #ff7f7f;
   transform: scaleY(0);
   transition: all 0.3s;
   transform-origin: center top;
   z-index: 2;
}
.subnavi>ul.is--show{
   transform: scaleY(1);
}
.subnavi>ul>li{
   padding: 10px 20px;
   line-height: 30px;
   text-align: left;
}
.subnavi>ul>li>a{
   position: relative;
   display: block;
   margin: 0;
   min-width: 240px;
   padding: 5px 25px;
   margin-bottom: 15px;
   color: #333;
   font-size: 1.8rem;
   line-height: 25px;
   text-decoration: none;
   background-color: #fff4ed;
   color: #000000;
}
.subnavi>ul>li>a:before{
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   display: block;
   width: 4px;
   height: 100%;
   background-color: #ff9c5d;
}
.subnavi>ul>li>a:after{
   content: "";
   position: absolute;
   top: 50%;
   right: 8px;
   display: block;
   border-top: 6px solid transparent;
   border-bottom: 6px solid transparent;
   border-left: 6px solid #ff9c5d;
   transform: translateY(-50%);
}
.subnavi_lower{
   border-radius: 10px;
   padding: 5px 10px;
   margin-left: 10px;
   margin-top: -15px;
   margin-bottom: 15px;
}
.subnavi_lower li{
   position: relative;
}
.subnavi_lower li:before{
   content: "";
}
.subnavi_lower li a{
   position: relative;
   display: block;
   margin: 0;
   padding: 0 0 0 15px;
   color: #333;
   font-size: 1.4rem;
   text-decoration: none;
}
.subnavi_lower li a:before{
   content: "";
   position: absolute;
   top: 50%;
   left: 0;
   display: block;
   width: 4px;
   height: 4px;
   border-radius: 2px;
   background-color: #ff7f7f;
   transform: translateY(-50%);
}
.top_tiles{
   display: flex;
   justify-content: center;
   align-items: center;
   flex-wrap: wrap;
   width: 100%;
   max-width: 1000px;
   margin: auto;
   padding: 60px 0;
}
.top_tiles a{
   position: relative;
   display: flex;
   justify-content: flex-start;
   align-items: center;
   flex-direction: column;
   width: calc(25% - 6px);
   height: 200px;
   margin: 3px;
   padding-top: 40px;
   background-color: #ffe7dd;
   transition: background-color 0.3s;
   color: #000;
   font-size: 1.8rem;
   text-decoration: none;
}
.top_tiles a.hover{
   opacity: 1;
   background-color: #ffb390;
}
.top_tiles a:after{
   content: "";
   position: absolute;
   top: 0;
   right: 0;
   bottom: 55px;
   left: 0;
   margin: auto;
   display: block;
   width: 90px;
   height: 90px;
   background-color: #fff;
   border-radius: 50%;
   z-index: 1;
}
.top_tiles a img{
   width: 65px;
   margin-bottom: 22px;
   transition: transform 0.3s;
   z-index: 2;
}
.top_tiles a.hover img{
   transform: scale(1.1);
}
.top_tiles a p{
   text-align: center;
   z-index: 2;
}
.top_tiles--lower_wrap{
   margin-bottom: -60px;
   padding-bottom: 65px;
   border-top: 2px solid #8e6f5c;
   background-color: #f9f9f9;
}
.top_tiles--lower_wrap .top_tiles{
   padding: 40px 0 10px;
}
.top_tiles--lower_wrap .top_tiles a{
   width: calc((100% / 6) - 7px);
   min-width: 110px;
   height: 160px;
   padding-top: 28px;
   border-radius: 16px;
   background-image: linear-gradient(to bottom, #ffdcc6 0%,#ffd1b4 100%);
}
.top_tiles--lower_wrap .top_tiles a:after{
   top: 15px;
}
.top_tiles--lower_wrap .top_tiles a.hover{
   background-color: #ff7f7f;
}
.top_tiles--lower_wrap .top_tiles a:nth-child(n + 7){
   display: none;
}
.top_tiles--lower_wrap .top_tiles p{
   font-size: 1.4rem;
}
.top_banner_wrap{
   position: absolute;
   top: 10px;
   right: 10px;
   display: flex;
   justify-content: flex-end;
   align-items: center;
   flex-wrap: wrap;
   width: 500px;
   margin: auto;
   padding: 0;
   margin-bottom: 60px;
   z-index: 1;
}
.top_banner{
   position: relative;
   padding: 36px 36px 36px 60px;
   font-size: 2.0rem;
   line-height: 20px;
   background-image: linear-gradient(to right, #f78ca0 0%, #f9748f 19%, #fd868c 60%, #fe9a8b 100%);
   color: #fff;
   box-shadow: 5px 5px 10px #00000066;
   text-decoration: none;
   text-align: center;
}
.top_banner:after{
   content: "";
   position: absolute;
   top: 50%;
   left: 15px;
   display: block;
   width: 36px;
   height: 36px;
   background-image: url(/img/common/reserve.png);
   background-position: center;
   background-repeat: no-repeat;
   background-size: contain;
   transform: translateY(-50%);
}
.contents_wrap{
   width: 100%;
   padding: 50px 5px 80px;
}
.contents_ttl01{
   position: relative;
   width: 200px;
   height: 140px;
   margin: -50px auto 40px;
   padding-top: 30px;
   overflow: hidden;
   color: #fff;
}
.contents_ttl01:before{
   content: "";
   position: absolute;
   top: -100px;
   left: 0;
   width: 200px;
   height: 200px;
   border-radius: 50%;
   background-image: linear-gradient(90deg, #ffaf1d 0%, #ff9c5d 100%);
   z-index: 1;
}
.contents_ttl01 h2{
   position: relative;
   max-width: 75%;
   margin: auto;
   text-align: center;
   font-size: 2.2rem;
   color: #fff;
   z-index: 2;
   font-family: "Varela Round","Kosugi Maru";
   font-weight: normal;
}
.contents_ttl01 p{
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   margin: auto;
   color: #ff9c5d;
   text-align: center;
   font-size: 2.2rem;
}
.contents_bg01{
   background-image: url(/img/top/top_bg1.png);
   background-position: center;
   background-repeat: no-repeat;
   background-size: cover;
}
.top_news{
   width: 100%;
   max-width: 1000px;
   margin: 0 auto;
}
.top_news__navi{
   display: flex;
   justify-content: flex-start;
   align-items: flex-end;
   padding: 0 20px;
}
.top_news__navi a{
   position: relative;
   width: 300px;
   max-width: 50%;
   padding: 20px 30px;
   margin: 0 10px;
   border-radius: 10px 10px 0 0;
   background-color: #f4f4f4;
   text-decoration: none;
   color: #000;
   font-size: 1.8rem;
   text-align: center;
   cursor: pointer;
}
.top_news__navi a.is--active{
   background-color: #ffe1dd;
}
.top_news__navi a.hover{
   opacity: 1;
   background-color: #ffe1dd;
}
.top_news__navi a:after{
   content: "";
   position: absolute;
   bottom: 5px;
   left: 0;
   right: 0;
   display: block;
   width: 0;
   margin: auto;
   border-bottom: 2px solid #ff7f7f;
   transition: all 0.3s;
}
.top_news__navi a.is--active:after{
   width: 80px;
}
.top_news__body{
   background-color: #fff5dc;
   border-radius: 10px;
   height: 310px;
   padding: 20px;
   overflow-y: hidden;
}
.top_news__body dl{
   display: block;
   width: 100%;
   height: 220px;
   overflow-y: scroll;
   padding: 20px;
   margin: 0;
   border-radius: 10px;
   background-color: #fff;
   font-size: 1.6rem;
}
.top_news__body dl dt{
   line-height: 25px;
   margin: 0;
   padding: 5px 0;
   font-family: "Varela Round";
   font-size: 1.8rem;
}
.top_news__body dl dd{
   line-height: 25px;
   margin: 0;
   padding: 5px 0 15px;
   border-bottom: 2px dashed #d4ae90;
}
.top_news__body dl dd a{
   color: #b25555;
}
.top_news__body .btn_wrap{
   background: none;
   padding: 15px 0;
}
.top_info{
   display: flex;
   justify-content: space-between;
   align-items: center;
   width: 1000px;
   max-width: calc(100% - 20px);
   margin: auto;
   padding: 30px;
   border-radius: 10px;
   background-color: #fffcf3;
   box-shadow: 0 5px 15px #c8d0dd;
   font-family: "Varela Round","Kosugi Maru";
   font-size: 1.6rem;
}
.top_info__text{
   width: 50%;
   margin-right: 25px;
   text-align: center;
   color: #333;
}
.top_info__text p{
   margin-bottom: 10px;
}
.top_info__text h2{
   font-size: 2.4rem;
   margin-bottom: 20px;
   color: #ff9c5d;
}
.top_info__tel{
   position: relative;
   color: #e68824;
   font-size: 2.6rem;
   font-weight: bold;
}
.top_info__tel:before{
   content: "";
   display: inline-block;
   width: 23px;
   height: 23px;
   margin-right: 10px;
   vertical-align: middle;
   background-position:  center;
   background-repeat: no-repeat;
   background-size: contain;
   background-image: url(/img/common/icn_tel.png);
}
.top_info__subtxt{
   color: #666;
}
.top_info__table{
   width: 100%;
   table-layout: fixed;
}
.top_info__table tr{
   border-bottom: 1px solid #ffd3b7;
}
.top_info__table tr th{
   padding: 5px;
   background-color: #ffd3b7;
   font-weight: normal;
}
.top_info__table tr th:nth-child(1){
   width: 70px;
}
.top_info__table tr th:nth-child(n + 3){
   width: 35px;
}
.top_info__table tr td{
   padding: 12px 8px;
   background-color: #fff;
}
.top_info__table tr td.blue{
   color: #0084c8;
}
.top_info__table tr td.orange{
   color: #e68824;
}
.top_info__notice{
   padding: 10px 0;
   text-align: right;
}
.top_info__notice span{
   margin-right: 10px;
   padding: 5px;
   border-radius: 5px;
   color: #fff;
   background-color: #f15aaf;
}
.top_info__img{
   width: 50%;
}
.top_info__exp{
   width: 50%;
}
.top_info__exp h4{
   font-size: 1.8rem;
   margin-bottom: 10px;
}
.top_info__exp p{
   font-size: 1.6rem;
   margin-bottom: 15px;
}
.top_info__exp hr{
   height: 0;
   margin: 15px 0;
   padding: 0;
   border: 0;
   border-top: 1px solid #cccccc;
}
.pagetop_wrap {
   position: fixed;
   bottom: 0;
   right: 0;
   display: block;
   width: 110px;
   height: 55px;
   margin-left: auto;
   margin-right: 10px;
   overflow: hidden;
   z-index: 6;
}
.pagetop_wrap.pagetop_wrap--fixed {
   position: absolute;
}
.btn__pagetop {
   position: absolute;
   bottom: -110px;
   left: 0;
   display: block;
   width: 110px;
   height: 110px;
   line-height: 70px;
   color: #fff;
   background-image: linear-gradient(90deg, #ffaf1d 0%, #ff9c5d 100%);
   border-radius: 55px;
   text-align: center;
   font-size: 1.8rem;
   text-decoration: none;
   transition: all 0.3s;
}
.btn__pagetop:after {
   content: "";
   position: absolute;
   top: 17px;
   left: 50%;
   margin: auto;
   display: block;
   border-top: 4px solid #fff;
   border-right: 4px solid #fff;
   border-bottom: 4px solid transparent;
   border-left: 4px solid transparent;
   transform: translateX(-50%) rotate(-45deg);
}
.btn__pagetop.btn__pagetop--show {
   bottom: -55px;
}
.footer{
   padding: 40px 10px;
   background-color: #91796a;
}
.footer_wrap{
   display: flex;
   justify-content: space-between;
   align-items: center;
}
.footer_logo{
   padding: 30px;
}
.footer_navi{
   text-align: right;
}
.footer_navi .blog{
   display: block;
   width: 148px;
   margin: 20px 0 20px auto;
   text-decoration: none;
}
.footer_navi .blog p{
   text-align: center;
   font-size: 20px;
   font-family: "Varela Round","Kosugi Maru";
   font-weight: normal;
}
.footer_navi nav ul{
   display: flex;
   justify-content: flex-end;
   align-items: center;
}
.footer_navi nav ul li{
   padding: 5px 20px;
   border-left: 1px solid #fff;
}
.footer_navi nav a{
   text-decoration: none;
   color: #fff;
   font-size: 1.6rem;
}
.footer_navi p{
   color: #fff;
}
.breadcrumbs{
   margin-bottom: 10px;
   background-color: #f6f4f5;
   box-shadow: 0 0 5px 5px rgb(0,0,0,0.2);
   overflow: hidden;
}
.breadcrumbs ul{
   display: flex;
   justify-content: flex-start;
   align-items: center;
   flex-wrap: wrap;
   width: 100%;
   margin: 0 auto;
   padding: 10px 0 10px 340px;
}
.breadcrumbs ul li{
   position: relative;
   list-style-type: none;
   display: block;
   padding-left: 40px;
   line-height: 36px;
}
.breadcrumbs ul li.home{
   padding-left: 21px;
   border-left: 1px solid #b3b3b3;
}
.breadcrumbs ul li.home a:before{
   content: "";
   position: absolute;
   left: 0;
   top: 50%;
   width: 30px;
   height: 30px;
   background: url(/img/common/home.png) center no-repeat;
   background-color: #ff7f7f;
   transform: translateY(-50%);
   border-radius: 50%;
}
.breadcrumbs ul li:nth-child(n + 2):before{
   content: "";
   position: absolute;
   left: 10px;
   top: 50%;
   width: 6px;
   height: 6px;
   border-top: 1px solid #888;
   border-right: 1px solid #888;
   transform: rotate(45deg) translateY(-50%);
}
.breadcrumbs ul li.home a{
   position: relative;
   padding-left: 50px;
}
.breadcrumbs ul li a{
   display: block;
   line-height: 36px;
   color: #333;
}
.breadcrumbs ul li a.hover{
   color: #ff7f7f;
}
.lower_kv{
   width: 100%;
   padding: 50px 10px;
   background-image: linear-gradient(to bottom, #fff, #fff8ed);
   overflow: hidden;
   border-bottom: 2px solid #8e6f5c;
}
.lower_ttl{
   display: flex;
   justify-content: center;
   align-items: center;
   flex-direction: column;
   width: 100%;
}
.lower_ttl h1{
   color: #6f5041;
   font-size: 3.6rem;
   font-family: "Varela Round","Kosugi Maru";
   font-weight: normal;
}
.lower_ttl p{
   margin-top: 20px;
   color: #6f5041;
   font-size: 1.5rem;
}
.exp_notice{
   width: 100%;
   padding: 50px 10px;
   background-color: #fff1dd;
   text-align: center;
}
.exp_notice div{
   width: 100%;
   max-width: 1200px;
   margin: 0 auto;
   font-size: 1.6rem;
   width: 100%;
   max-width: 1200px;
   margin: 0 auto;
   font-size: 1.6rem;
   padding: 20px;
   background-color: #fcfae2;
   border-radius: 15px;
}
.exp_notice h2{
   margin-bottom: 15px;
   color: #f22;
   font-size: 1.8rem;
   
}
.exp_notice p{
   line-height: 3.2rem;
   margin-left: 20px;
   
}
.exp_wrap{
   width: 100%;
   max-width: 1200px;
   margin: 0 auto;
   padding-bottom: 30px;
   font-size: 1.6rem;
}
.exp_wrap>h2{
   font-weight: normal;
   font-size: 2.4rem;
   margin-bottom: 30px;
   padding-left: 15px;
   border-left: 4px solid #6f5041;
   color: #6f5041;
}
.exp_wrap>h3{
   font-size: 1.8rem;
   line-height: 3.2rem;
   margin-left: 10px;
   margin-bottom: 10px;
   color: #333;

}
.exp_wrap>p{
   line-height: 3.2rem;
   margin-bottom: 25px;
   margin-left: 20px;
}

.exp_wrap>table{
   max-width: 100%;
   margin: 15px auto;
}
.exp_wrap>table th{
   padding: 12px;
   background-color: #ffd3b7;
   font-weight: normal;
   border-bottom: 1px solid #fff;
}
.exp_wrap>table td{
   padding: 8px;
   border: 1px solid #ffc8a6;

}
.exp_img{
   text-align: center;
}
.btn_wrap{
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   padding: 30px 10px;
   margin-bottom: 30px;
   background-color: #fff1dd;
}
.btn{
   position: relative;
   display: block;
   max-width: 320px;
   min-width: 180px;
   padding: 8px 40px;
   margin: 0 10px;
   line-height: 24px;
   border-radius: 5px;
   font-size: 1.6rem;
   text-decoration: none;
   color: #fff !important;
   background-color: #ff7f7f;
   box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.2);
   text-align: center;
   transition: all 0.3s;
}
.btn:before {
   content: "";
   position: absolute;
   top: 50%;
   right: 15px;
   display: block;
   border-top: 6px solid transparent;
   border-bottom: 6px solid transparent;
   border-left: 6px solid #fff;
   transform: translateY(-50%);
   transition: all 0.3s;
}
.news_btn_wrap{
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   padding: 15px 5px;
   margin-bottom: 0;
}
a.news_btn{
   display: block;
   position: relative;
   width: 300px;
   max-width: 50%;
   padding: 20px 30px;
   margin: 0 10px;
   border-radius: 10px;
   background-color: #f4f4f4;
   text-decoration: none;
   color: #000;
   font-size: 1.8rem;
   text-align: center;
   cursor: pointer;
   border: 2px solid #aaa;
}
a.news_btn.hover:after {
   content: "";
   position: absolute;
   bottom: 5px;
   left: 0;
   right: 0;
   display: block;
   width: 0;
   margin: auto;
   border-bottom: 2px solid #ff7f7f;
   transition: all 0.3s;
}
a.news_btn.hover:after {
   width: 80px;
}
div.news_btn{
   position: relative;
   width: 300px;
   max-width: 50%;
   padding: 20px 30px;
   margin: 0 10px;
   border-radius: 10px;
   background-color: #ffe1dd;
   text-decoration: none;
   color: #000;
   font-size: 1.8rem;
   text-align: center;
   cursor: pointer;
   border: 2px solid #aaa;
}
div.news_btn:after {
   content: "";
   position: absolute;
   bottom: 5px;
   left: 0;
   right: 0;
   display: block;
   width: 80px;
   margin: auto;
   border-bottom: 2px solid #ff7f7f;
   transition: all 0.3s;
}
.txtlink{
   position: relative;
   padding-left: 30px;
   text-decoration: none;
   color: #000000;
}
.txtlink:before{
   content: "";
   position: absolute;
   top: 50%;
   left: 0;
   display: block;
   width: 20px;
   height: 20px;
   border-radius: 10px;
   transform: translateY(-50%);
   background-color: #ff7f7f;
}
.txtlink:after{
   content: "";
   position: absolute;
   top: 50%;
   left: 7px;
   display: block;
   border-top: 6px solid transparent;
   border-right: 8px solid transparent;
   border-bottom: 6px solid transparent;
   border-left: 8px solid #fff;
   transform: translateY(-50%);
}
.sub_contents_wrap{
   padding: 40px 0;
}
.news_wrap{
   display: flex;
   width: 100%;
   max-width: 1200px;
   margin: 0 auto 30px;
   padding-bottom: 30px;
   font-size: 1.6rem;
   border-bottom: 2px dashed #d4ae90;
}
.news_date{
   width: 135px;
   margin-left: 0;
   color: #000;
   font-family: "Varela Round";
   font-size: 1.9rem;
}
.news_text{
   display: block;
   width: calc(100% - 135px);
}
.news_text>h2{
   font-weight: normal;
   font-size: 2.0rem;
   padding-left: 15px;
   color: #000;
   border-left: 2px solid #ff9c5d;
}
.news_text>h3{
   font-size: 1.8rem;
   line-height: 3.2rem;
   margin-left: 10px;
   margin-bottom: 10px;

}
.news_text>p{
   line-height: 3.2rem;
   margin-top: 25px;
   padding: 20px;
}
.sitemap{
   display: flex;
   justify-content: center;
   align-items: flex-start;
   padding: 0;
}
.sitemap>li{
   width: calc(100% / 3);
   padding: 10px 20px;
   line-height: 30px;
   text-align: left;
}
.sitemap>li h2{
   font-weight: normal;
    font-size: 2.4rem;
    margin-bottom: 30px;
    padding-left: 15px;
    padding-bottom: 12px;
    border-bottom: 4px solid #6d452a;
    color: #6d452a;
}
.sitemap>li>a{
   position: relative;
    display: block;
    margin: 0;
    min-width: 240px;
    padding: 5px 25px;
    margin-bottom: 15px;
    color: #333;
    font-size: 1.8rem;
    line-height: 25px;
    text-decoration: none;
    background-color: #fff4ed;
    color: #000000;
}
.sitemap>li>a:before{
   content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 4px;
    height: 100%;
    background-color: #ff9c5d;
}
.sitemap>li>a:after{
   content: "";
   position: absolute;
   top: 50%;
   right: 8px;
   display: block;
   border-top: 6px solid transparent;
   border-bottom: 6px solid transparent;
   border-left: 6px solid #ff9c5d;
   transform: translateY(-50%);
}
.sitemap_lower{
   margin-bottom: 20px;
}
.sitemap_lower li a{
   position: relative;
   display: block;
   margin: 0;
   padding: 0 0 0 15px;
   color: #333;
   font-size: 1.4rem;
   text-decoration: none;
}
.sitemap_lower li a:before{
   content: "";
   position: absolute;
   top: 50%;
   left: 0;
   display: block;
   width: 4px;
   height: 4px;
   border-radius: 2px;
   background-color: #ff7f7f;
   transform: translateY(-50%);
}
.img_kenshin{
   margin:20px auto 40px;
}
.img_kenshin img{
   width: 800px;
   border-left: 1px solid #ccc;
   border-right: 1px solid #ccc;
   vertical-align: middle;
}
.img_kenshin img:first-child{
   border-top: 1px solid #ccc;
}
.img_kenshin img:last-child{
   border-bottom: 1px solid #ccc;
}


@media screen and (max-width: 1024px) {
.is--pc {display: none !important;}
.is--sp {display: block !important;}
   .header{
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 90;
   }
   .header_wrap{
      display: none;
   }
   .header_wrap-sp{
      position: relative;
      display: flex;
      justify-content: center;
      align-items: flex-start;
      width: 100%;
      height: 60px;
      padding: 0 60px;
      background-color: #fff;
      border-bottom: 2px solid #d7b560;
   }
   .header--resize .header_wrap-sp:before{
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      display: block;
      width: 160px;
      height: 44px;
      margin: auto;
      background-image: url(/img/common/hd_logo2.png);
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
   }
   .header_logo-sp{
      display: block;
      position: relative;
      margin-top: -100px;
      width: 200px;
      height: 200px;
      border-radius: 50%;
      background-image: linear-gradient(90deg, #ffaf1d 0%, #ff9c5d 100%);
      flex: 0 0 auto;
      transition: all 0.3s;
      z-index: 101;
   }
   .header_logo-sp.hover{
      opacity: 1;
   }
   .header_logo-sp img{
      position: absolute;
      bottom: 50px;
      left: 0;
      right: 0;
      width: 160px;
      margin: auto;
   }
   .header--resize .header_logo-sp{
      margin-top: -220px;
   }
   .sp_header_controls{
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      height:110px;
   }
   .header_fontsize{
      margin-bottom: 5px;
   }
   .header_access{
      margin-bottom: 5px;
   }
   .header_access a{
      font-size: 1.4rem;
   }
   .button-toggle-sp{
      position: absolute;
      top: 10px;
      right: 10px;
      display: block;
      width: 40px;
      height: 40px;
      overflow: hidden;
   }
   .button-toggle-sp:before{
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      display: block;
      width: 30px;
      height: 2px;
      margin: auto;
      transform: translateY(10px);
      background-color: #000;
      transition: all 0.3s;
   }
   .button-toggle-sp:after{
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      display: block;
      width: 30px;
      height: 2px;
      margin: auto;
      transform: translateY(-10px);
      background-color: #000;
      transition: all 0.3s;
   }
   .button-toggle-sp span{
      position: absolute;
      top: calc(50% - 1px);
      right: 0;
      left: 0;
      width: 30px;
      height: 2px;
      margin: auto;
      background-color: #000;
      transition: all 0.3s;
   }
   .button-toggle-sp.is-open:before{
      transform: rotate(45deg);
   }
   .button-toggle-sp.is-open:after{
      transform: rotate(-45deg);
   }
   .button-toggle-sp.is-open span{
      left: inherit;
      right: -30px;
   }
   .sp_header_menu{
      position: absolute;
      top: 60px;
      display: none;
      width: 100%;
      background-color: #fff;
      box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
      overflow-y: scroll;
      z-index: 100;
   }
   .sp_header_menu>ul{
      margin: 0;
      padding: 56px 0 0;
   }
   .header--resize .sp_header_menu>ul{
      padding: 0;
   }
   .sp_header_menu>ul>li>a{
      position: relative;
      display: block;
      padding: 24px 20px;
      border-bottom: 1px solid #fff;
      background: #997766;
      color: #fff;
      text-align: center;
      text-decoration: none;
      font-size: 1.8rem;
   }
   .sp_header_menu>ul>li>a:after{
      content: "";
      position: absolute;
      right: 10px;
      top: 50%;
      display: block;
      width: 12px;
      height: 12px;
      border-top: 2px solid #fff;
      border-right: 2px solid #fff;
      transform: translateY(-70%) rotate(135deg);
      transition: all 0.3s;
   }
   .sp_header_menu>ul>li>a.is-open:after{
      transform: translateY(-30%) rotate(-45deg);
   }
   .subnavi_lower li a{
      margin: 5px 0;
      font-size: 1.6rem;
   }
   ul.sp_header_menu2{
      padding: 0 20px;
   }
   ul.sp_header_menu2>li{
      padding: 15px 0;
   }
   ul.sp_header_menu2>li>a{
      position: relative;
      display: block;
      margin: 0;
      min-width: 240px;
      padding: 10px 25px;
      margin-bottom: 15px;
      color: #000;
      font-size: 1.6rem;
      line-height: 25px;
      text-decoration: none;
      background-color: #fff4ed;
   }

   main{
      padding-top: 60px;
   }

   .top_kv{
      height: auto;
      max-height: inherit;
   }
   .top_kv__imgwrap{
      position: relative;
      display: block;
      padding: 0;
      background: none;
      padding-bottom: 60px;
   }
   
   .top_kv__imgwrap:before{
      content: "";
      display: block;
      width: 100%;
      height: 60vw;
      background: url(/img/top/top_kv_sp.png) center bottom no-repeat;
      background-size: cover;
   }
   .top_kv__catch{
      width: auto;
      padding: 0 5px 20px;
   }
   .top_kv__catch h1{
      font-size: 2.4rem;
   }
   .top_kv__catch p{
      font-size: 1.3rem;
   }
   .subnavi{
      display: none;
   }
   .top_tiles{
      padding: 10px 3px;
   }
   .top_tiles a{
      width: calc(50% - 6px);
      max-width: 240px;
      font-size: 1.5rem;
      text-align: center;
   }
   .top_banner_wrap{
      top: inherit;
      right: 0;
      bottom: 0;
      width: 100%;
      padding: 0 15px;
      margin-bottom: 20px;
   }
   .top_banner{
      font-size: 1.5rem;
      padding: 10px 15px 10px 35px;
   }
   .top_banner:after{
      left: 5px;
      width: 24px;
      height: 24px;
   }
   .top_news__navi a{
      font-size: 1.5rem;
      padding: 15px 5px;
   }
   .top_news__body{
      padding: 16px;
      height: auto;
   }
   .top_news__body dl{
      height: 260px;
      padding: 12px;
      font-size: 1.4rem;
   }
   .top_news__body dl dt{
      font-size: 1.6rem;
   }
   .top_info{
      flex-direction: column;
      padding: 30px 15px;
   }
   .top_info__text{
      width: 100%;
      margin: 0;
   }

   .top_info__text p{
      font-size: 1.4rem;
   }
   .top_info__text p.top_info__tel{
      font-size: 2.4rem;
   }
   .top_info__text p.top_info__tel a{
      color: #e68824;

   }
   .top_info__img{
      width: 100%;
   }
   .top_info__exp{
      width: 100%;
   }
   .top_info__table{
      font-size: 1.2rem;
   }
   .top_info__table tr th:nth-child(1){
      width: 10%;
   }
   .top_info__table tr th:nth-child(n + 3){
      width: 8%;
   }
   .footer{
      padding: 20px 10px;
   }
   .footer_wrap{
      flex-direction: column;
   }
   .footer_navi .blog{
      margin: 20px auto;
   }
   .footer_navi h3{
      text-align: center;
   }
   .footer_navi nav ul{
      flex-direction: column;
      align-items: center;
      padding: 0;
   }
   .footer_navi nav ul li{
      border: none;
   }
   .footer_navi nav a{
      font-size: 1.3rem;
   }
   .footer_navi p{
      text-align: center;
      font-size: 1.1rem;
   }
   .breadcrumbs ul{
      padding: 50px 0 10px;
   }
   .breadcrumbs ul li.home{
      border-left: none;
      padding-left: 5px;
   }
   .lower_ttl h1{
      font-size: 2.4rem;
   }
   .exp_notice div{
      padding: 20px 10px;
   }
   .exp_notice h2{
      font-size: 1.6rem;
   }
   .exp_notice p{
      font-size: 1.4rem;
   }
   .exp_wrap>h2{
      font-size: 2rem;
   }
   .exp_wrap>h3{
      font-size: 1.6rem;
   }
   .exp_wrap>p{
      font-size: 1.4rem;
   }
   .btn_wrap{
      flex-direction: column;
   }
   .btn{
      margin: 10px 5px;
   }
   .top_info__exp h4{
      font-size: 1.6rem;
   }
   .top_info__exp p{
      font-size: 1.4rem;
   }
   .lower_kv{
      border-bottom: none;
   }
   .news_btn_wrap{
      margin: 0 auto;
   }
   div.news_btn{
      max-width: 100%;
      padding: 15px 5px;
      font-size: 1.4rem;
   }
   a.news_btn{
      max-width: 100%;
      padding: 15px 5px;
      font-size: 1.4rem;
   }
   .news_wrap{
      display: block;
   }
   .news_date{
      margin-bottom: 10px;
   }
   .news_text{
      width: 100%;
   }
   .sitemap{
      display: block;
   }
   .sitemap>li{
      width: 100%;
   }

   
}
@media screen and (max-width: 599px) {

}