@charset "utf-8";
/* Simple fluid media
   Note: Fluid media requires that you remove the media's height and width attributes from the HTML
   http://www.alistapart.com/articles/fluid-images/ 
*/

/* IE 6 does not support max-width so default to width 100% */

img, object, embed, video {
width: 100%;
margin: auto;
}

input, textarea, select {
    font-size: 16px !important; /* フォントサイズを調整してズームを抑える */
    max-width: 100%; /* 幅を最大まで設定 */
    width: 100%; /* 幅を100%に設定 */
    zoom: 1; /* IEブラウザ向けのズームを無効化 */
}

/* Mobile Layout: 480px and below. */


@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}





/*PC*/
@media print, screen and (min-width: 769px) {

/*--スクロールトップ---------*/
.totop { position: fixed; bottom: 100px; right: 20px; z-index: 2000; }
.totop .img { width: 40px; }




/*com*/
/*----------------------------*/
main { width: 100%; min-width: 1200px; margin: auto; overflow: hidden; }

.pc { display: block; }
.pcBr { display: inline-block; }
.sp { display: none!important; }
.spBr { display: none; }

.comPd_80 { padding: 80px 0; }
.comPd_100 { padding: 100px 0; }
.comPd_150 { padding: 150px 0; }
.comPd_200 { padding: 200px 0; }

.w1400 { max-width: 1400px; margin: auto;}
.w1200 { max-width: 1200px; margin: auto;}
.w1000 { max-width: 1000px; margin: auto;}
.w960 { max-width: 960px; margin: auto;}

.w100 { width: 100%; margin: auto;}
.w90 { width: 90%; margin: auto;}
.w80 { width: 80%; margin: auto;}
.w70 { width: 70%; margin: auto;}







/* header
--------------------------------------------*/
header { min-width: 1200px; position: relative; }

header {
width: 100%;
margin: 0 auto;
padding: 15px 5%;
box-sizing: border-box;
background: #fff;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}
header .logo_img { width: 280px; }
header .hed_wrap { width: calc(100% - 400px); display: flex; flex-wrap: wrap; align-items: center; justify-content: end; }
header .hed_wrap ul.menu_list { display: flex; flex-wrap: wrap; justify-content: end; }
header .hed_wrap ul.menu_list li { margin: 0 30px 0 0; font-size: 1.4rem; }
header .hed_wrap ul.menu_list li a { color: #4873BA; }
header .hed_wrap ul.hed_button {  }
header .hed_wrap ul.hed_button li a:hover { opacity: 0.8; }
header .hed_wrap ul.hed_button li .img { display: block; background: #F08300; width: 16px; height: 16px; padding: 6px 12px 18px; border-radius: 50%; margin: auto; }
header .hed_wrap ul.hed_button li .txt { color: #5D5D5D; font-size: 1.2rem; line-height: 1.4; display: block; text-align: center; margin-top: 3px; }


.burger-btn{ display: none; }


/* 「scroll-navクラス」がヘッダーについたとき */
header.scroll-nav {
position: fixed;
top: 0; bottom: auto;
box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
transition: 0.5s;
z-index: 50;
}
header.scroll-nav ul.hed_nav_list li { font-size: 0.9em; font-weight: 500; }




/* footer
--------------------------------------------*/
footer .banner { position: relative; background: #F7F7F7; }
footer .banner ul { width: 80%; margin: auto; padding: 50px 0; display: flex; flex-wrap: wrap; justify-content: center; }
footer .banner ul li { width: 250px; margin: 0 30px; }


footer { position: relative; min-width: 1200px; }

footer .footer_menu { background: #464646; padding: 50px 0; }
footer .footer_menu .logo_img { width: 200px; margin-bottom: 50px; }
footer .footer_menu .logo_img span { display: block; font-size: 1.1rem; color: #fff; margin: 10px 0; }

footer .footer_menu .flex_box { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
footer .footer_menu .flex_box ul.menu { width: 48%; display: flex; flex-wrap: wrap; justify-content: space-between; }
footer .footer_menu .flex_box ul.menu::after { content: ''; display: block; width: 30%; }
footer .footer_menu .flex_box ul.menu li { width: 30%; margin-bottom: 30px; font-size: 1.4rem; }
footer .footer_menu .flex_box ul.menu li a { color: #ccc; }
footer .footer_menu .flex_box ul.menu li a:hover { color: #fff; }
footer .footer_menu .flex_box ul.menu li a img { width: 90%; }

footer .footer_menu .flex_box .foot_brand { width: 48%; }
footer .footer_menu .flex_box .foot_brand p { font-size: 1.8rem; margin-bottom: 40px; color: #ccc; }
footer .footer_menu .flex_box .foot_brand ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
footer .footer_menu .flex_box .foot_brand ul::after { content: ''; display: block; width: 23%; }
footer .footer_menu .flex_box .foot_brand ul li { width: 23%; margin-bottom: 30px; }
footer .footer_menu .flex_box .foot_brand ul li a:hover { opacity: 0.7; }


footer .copy { background: #F7F7F7; padding: 50px; box-sizing: border-box; margin-top: 50px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
footer .copy ul { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
footer .copy ul li { margin-right: 30px; }
footer .copy ul li a  { font-size: 1.4rem; }
footer .copy ul li a span { width: 12px; display: inline-block; margin-left: 5px; }
footer .copy p { font-size: 1.2rem; }




/* hed_img
--------------------------------------------*/
.hed { position: relative; box-sizing: border-box; margin-bottom: 150px; overflow: hidden; background: #f7f7f7; }

.hed .pankuzu { display: flex; justify-content: flex-end; background: #8EACDD; padding: 10px 5%; text-align: right; }
.hed .pankuzu li { font-size: 0.9em; font-weight: 400; color: #fff; }
.hed .pankuzu li::after { content: ">"; padding: 0 10px; text-decoration: nonep;}
.hed .pankuzu li:nth-last-of-type(1)::after { content: none;}
.hed .pankuzu li a { border-bottom: 1px solid #4873BA; color: #fff; }

.hed .hedimg {  }
.hed .hedimg img { object-fit: cover; height: 600px; }
.hed .hedimg.taxonomy_img img { height: auto; }
.hed h1 { position: relative; font-size: 4rem; z-index: 1; padding: 80px 10%; background: #f7f7f7; overflow: hidden; }
.hed h1 span { display: block; font-size: 1.8rem; color: #F08300; }
.hed h1 img { width: 300px; position: absolute; top: -20px; right: 30px; opacity: 0.4; }




/*more
----------------------------*/
.more { margin: 80px auto 0; width: 280px; }
.more a { position: relative; display: block; color: #fff; padding: 15px 0; background: #4873BA; text-align: center; z-index: 1; }
.more a:hover { color: #4873BA; }
.more a::before {
content: '';
background: #fff;
clip-path: polygon(100% 0%, 100% 100%, 0% 100% );
position: absolute;
width: 20%; height: 50%;
bottom: 2px; right: 2px;
z-index: -1;
transition: all 0.3s ease;
}
.more a:hover::before {
width: 100%; height: 100%;
border: 2px solid #4873BA;
clip-path: none;
bottom: -2px; right: -2px;
}


.more_w a { color: #4873BA; background: #fff; border: 2px solid #4873BA; }
.more_w a::before { background: #4873BA; bottom: 0px; right: 0px; }
.more_w a:hover { color: #fff; border: 2px solid #fff; }
.more_w a:hover::before {
width: calc(100% - 4px); height: calc(100% - 4px);
clip-path: none;
bottom: 0px; right: 0px;
}



.more02 { position: relative; padding-top: 20px; text-align: right; color: #999; padding-right: 17px; }
.more02::before {
content: '>';
position: absolute;
bottom: 4px; right: 0px;
line-height: 1.2;
transition: all 0.3s ease;
}
a:hover .more02::before { right: -5px; }



.bt_searchform #submit {
position: relative;
display: block;
width: 260px;
margin: 5px auto 0;
padding: 10px 0;
background: #4873BA;
font-weight: 500;
color: #fff;
text-align: center;
border: none;
font-size: 1.6rem;
}
.bt_searchform #submit .icon { display: inline-block; width: 18px; padding-left: 5px; }



.pamphlet_btn a {
position: relative;
display: block;
margin: 15px 0px 0;
padding: 8px 0;
background: #4873BA;
border: 3px solid #fff;
color: #fff;
text-align: center;
}
.pamphlet_btn a:hover {
margin: 15px 0px 0;
}

.pamphlet_btn a span { display: block; width: 40px; margin: 0 auto 3px; }




/* btnBk
--------------------------------------------*/
.more.btnBk { margin: 150px auto 0; width: 280px; }




/* contents（トップ）
--------------------------------------------*/
#contents .tit { position: relative; text-align: center; }
#contents .tit p { width: 60px; margin: 0 auto 10px; }
#contents .tit h2 { font-size: 6rem; line-height: 1; margin-bottom: 80px; }
#contents .tit h2 span { display: block; padding-top: 10px; color: #F08300; font-size: 2.2rem; }



/* ▼mv */
#contents .mv { position: relative; display: flex; flex-wrap: wrap; justify-content: space-between; overflow: hidden; height: 520px; }

#contents .mv .search { width: 35%; margin: 0 auto; }
/* ▼タブ */
#contents .mv .search .btn_area { display: flex; flex-wrap: wrap; align-items: end; }
#contents .mv .search .btn_area li {
width: calc(100%/3);
background: #767677;
border-radius: 0 15px 0 0;
font-size: 1.4rem;
text-align: center;
color: #fff;
padding: 5px;
box-sizing: border-box;
cursor: pointer;
}
#contents .mv .search .btn_area li.active {
background: #fff;
color: #4873BA;
padding: 10px 5px 6px;
overflow: hidden;
position: relative;
}
#contents .mv .search .btn_area li.active::after {
content: '';
position: absolute;
top: 0; left: 0;
width: 100%;
border-top: 5px solid #4873BA;
}

#contents .mv .search .panel_area { background: #fff; padding: 15px 15px; box-sizing: border-box; box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.3); }
#contents .mv .search .panel_area .tab_panel { display:none; }
#contents .mv .search .panel_area .tab_panel.active { display:block; }

/* ▼検索フォーム */
#contents .mv .search table { width: 100%; }
#contents .mv .search table tr { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; margin-bottom: 15px; padding-bottom: 10px; border-bottom: 0.5px dashed #ccc; }
#contents .mv .search table tr th { width: 30%; text-align: left; color: #F08300; font-size: 1.4rem; }
#contents .mv .search table tr td { width: 68%; position: relative; }
#contents .mv .search table tr td select { width: 100%; padding: 5px 10px; box-sizing: border-box; font-size: 1.4rem; border: 1px solid #999; }
#contents .mv .search table tr td select[name="tf"],
#contents .mv .search table tr td select[name="tt"] { width: calc(100% / 2 - 15px); }
#contents .mv .search table tr td input { width: 100%; padding: 5px 10px; box-sizing: border-box; font-size: 1.4rem; border: 1px solid #999; }
#contents .mv .search table tr td .btn_reset { position: absolute; right: 2%; line-height: 1.7; }

#contents .mv .search table tr td p.radio input { display: none; }
#contents .mv .search table tr td p.radio label { position: relative; padding-left: 20px; margin-right: 10px; font-size: 1.4rem; font-weight: 500; }
#contents .mv .search table tr td p.radio label::before {
content: "";
background: #fff;
border: 2px solid #707070;
border-radius: 50%;
width: 13px; height: 13px;
position: absolute;
top: 0; bottom: 0; left: 0;
margin: auto;
transition: background-color .1s ease-out,border-color .1s ease-out;
}
#contents .mv .search table tr td p.radio input:checked + label::before { background: #F08300; }


/* ▼slider */
#contents .mv .sliderArea { width: 60%; margin: auto; }
#contents .mv .sliderArea img { height: 550px; object-fit: cover; }

#contents .mv .sliderArea .slider .slick-prev,
#contents .mv .sliderArea .slider .slick-next {
width: 50px; height: 50px;
background: rgba(255, 255, 255, 0.8);
z-index: 1;
}
#contents .mv .sliderArea .slider .slick-prev { right: auto; left: 0; }
#contents .mv .sliderArea .slider .slick-next { right: 0; left: auto; }
#contents .mv .sliderArea .slider .slick-prev::before,
#contents .mv .sliderArea .slider .slick-next::before { opacity: 1; color: #F08300; font-size: 40px; }



/* emergency */
#contents .emergency { position: relative; margin: 100px auto; }

#contents .emergency ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
#contents .emergency ul li { width: 48%; margin-bottom: 50px; }
#contents .emergency ul li a { position: relative; display: block; }



/* ▼pickup */
#contents .pickup { position: relative; background: #F7F7F7; padding: 150px 0; overflow: hidden; }
#contents .pickup .illust { position: absolute; top: 0; right: 3%; width: 500px; }


#contents .pickup .pickup_slick .slick-list { padding: 0 12% 50px 0 !important; }
#contents .pickup .pickup_slick li { margin: 0 1% 0 0; position: relative; }

#contents .pickup .pickup_slick li a .hover_wrap { overflow: hidden; }
#contents .pickup .pickup_slick li a .hover_wrap .position { opacity: 0; }
#contents .pickup .pickup_slick li a .hover_wrap .img { position: relative; text-align: center; background: #fff; }
#contents .pickup .pickup_slick li a .hover_wrap .img span { position: absolute; bottom: 0; left: 0; width: 100%; display: block; z-index: 1; text-align: left; padding: 2px 8px; box-sizing: border-box; color: #fff; font-size: 1.4rem; }
#contents .pickup .pickup_slick li a .hover_wrap .img span.yuttarina { background: rgba(238, 38, 45, 0.8); }
#contents .pickup .pickup_slick li a .hover_wrap .img span.toilet_yuttarina { background: rgba(113, 191, 71, 0.8); }
#contents .pickup .pickup_slick li a .hover_wrap .img span.tyu_yuttarina { background: rgba(150, 103, 49, 0.8); }
#contents .pickup .pickup_slick li a .hover_wrap .img img.abso { position: absolute; margin: auto; left: 0; top: 0; bottom: 0; right: 0; transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }
#contents .pickup .pickup_slick li a:hover .hover_wrap .img img { transform: scale(1.1); transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }

#contents .pickup .pickup_slick li .txt { padding: 20px 10px; }
#contents .pickup .pickup_slick li .txt .tag { background: #F08300; padding: 5px 10px; font-size: 1.4rem; color: #fff; display: inline-block; position: absolute; top: 0; left: 0; }
#contents .pickup .pickup_slick li .txt h3 { font-size: 2rem; padding: 0 0 20px; }
#contents .pickup .pickup_slick li .txt h3 span { color: #4873BA; display: block; }
#contents .pickup .pickup_slick li .txt p { font-size: 1.4rem; font-weight: 500; margin-bottom: 10px; }
#contents .pickup .pickup_slick li .txt p span { width: 15%; display: inline-block; background: #8EACDD; color: #fff; padding: 3px 5px; margin-right: 15px; text-align: center; }

#contents .pickup .pickup_slick .slick-prev { left: -60px; }
#contents .pickup .pickup_slick .slick-next { right: -30px; }
#contents .pickup .pickup_slick .slick-prev::before,
#contents .pickup .pickup_slick .slick-next::before { opacity: 1; color: #999; font-size: 60px; }



/* ▼news */
#contents .news { position: relative; background: #8EACDD; padding: 30px 0; }
#contents .news .flex_wrap { display: flex; flex-wrap: wrap; justify-content: space-between; width: 60%; margin: auto; }

#contents .news .tit h2 { margin-bottom: 0; color: #fff; }

#contents .news dl { width: 65%; }
#contents .news dl .news_list { display: flex; flex-wrap: wrap; justify-content: space-between; border-bottom: 1px solid #ccc; padding: 0 10px 5px; margin-bottom: 15px; }
#contents .news dl .news_list dt { width: 22%; color: #fff; }
#contents .news dl .news_list dd { width: 75%; color: #fff; }
#contents .news dl .news_list dd span { padding: 3px 10px; margin-right: 10px; font-size: 1.4rem; }
#contents .news dl .news_list dd span.important { background: #b62736; }
#contents .news dl .news_list dd span.info { background: #F08300; }
#contents .news dl .news_list dd span.recommendation { background: #b554d3; }
#contents .news dl .news_list dd span.maintenance { background: #4873BA; }
#contents .news dl .news_list dd span.branch { background: #464646; }
#contents .news dl .news_list dd span.release { background: #10c716; }
#contents .news dl .news_list dd a { color: #fff; }

#contents .news .more { margin: 50px auto 0; }



/* ▼brand */
#contents .brand { position: relative; background: #F7F7F7; margin-top: 150px; padding: 100px 5%; box-sizing: border-box; }
#contents .brand::before {
content: '';
background: #4873BA;
clip-path: polygon(0% 0%, 0% 100%, 100% 0% );
position: absolute;
width: 150px; height: 150px;
top: 0; left: 0px;
transition: all 0.3s ease; }

#contents .brand .illust { position: absolute; bottom: 50px; right: 3%; width: 400px; }


#contents .brand ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
#contents .brand ul::after { content: ''; display: block; width: 30%; }
#contents .brand ul li { width: 30%; margin-bottom: 50px; background: #fff; }

#contents .brand ul li a .hover_wrap { overflow: hidden; }
#contents .brand ul li a .hover_wrap .img { transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }
#contents .brand ul li a:hover .hover_wrap .img { transform: scale(1.1);}

#contents .brand ul li .txt { padding: 20px }
#contents .brand ul li .txt h3 {
font-size: 1.8rem;
color: #4873BA;
margin-bottom: 20px;
padding-bottom: 10px;
background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom;
background-size: 20px 0.5px;
}
#contents .brand ul li .txt p { font-weight: 500; }



/* focus */
#contents .focus { position: relative; margin: 100px auto; }

#contents .focus .tit h2 { font-size: 5rem; text-align: left; margin-bottom: 50px; }
#contents .focus .tit h2 span { display: inline-block; padding-left: 10px; font-size: 1.8rem; }

#contents .focus ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
#contents .focus ul::after { content: ''; display: block; width: 30%; }
#contents .focus ul li { width: 30%; margin-bottom: 50px; }
#contents .focus ul li:first-child { display: none; }
#contents .focus ul li a { position: relative; display: block; }
#contents .focus ul li a::after {
content: '';
border: 2px solid #F08300;
width: calc(100% - 14px); height: calc(100% - 14px);
position: absolute;
top: 5px; right: 5px;
opacity: 0.5;
}
#contents .focus ul li a .hover_wrap { overflow: hidden; }
#contents .focus ul li a .hover_wrap .img { transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }
#contents .focus ul li a:hover .hover_wrap .img { transform: scale(1.1);}




/* pamphlet
--------------------------------------------*/
#pamphlet a.claim { position: fixed; top: 40%; right: 0px; z-index: 50; text-align: right; font-size: 1.8rem; background: #4873BA; color: #fff; padding: 20px; writing-mode: vertical-rl; display: inline-block; }

#pamphlet h2 { position: relative; margin-bottom: 50px; text-align: center; font-size: 2.6rem; padding-top: 20px; }
#pamphlet h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}

#pamphlet .pamphlet { margin-bottom: 150px; }
#pamphlet .pamphlet ul.list  { display: flex; flex-wrap: wrap; justify-content: center; }
#pamphlet .pamphlet ul.list li { width: 23%; margin: 0 1%; }
#pamphlet .pamphlet ul.list li h3 { margin-top: 10px; }
#pamphlet .pamphlet ul.list li h3 span { display: block; font-size: 1.6rem; color: #F08300; margin-bottom: 5px; border-bottom: 1px dashed #8EACDD; }

#pamphlet .pamphlet .pamphlet_slick .slick-list { padding: 0 12% 50px 0 !important; }
#pamphlet .pamphlet .pamphlet_slick li { margin: 0 1% 0 0; }

#pamphlet .pamphlet .pamphlet_slick li h3 { margin-top: 10px; }
#pamphlet .pamphlet .pamphlet_slick li h3 span { display: block; font-size: 1.6rem; color: #F08300; margin-bottom: 5px; border-bottom: 1px dashed #8EACDD; }

#pamphlet .pamphlet .pamphlet_slick .slick-prev { left: -60px; }
#pamphlet .pamphlet .pamphlet_slick .slick-next { right: -30px; }
#pamphlet .pamphlet .pamphlet_slick .slick-prev::before,
#pamphlet .pamphlet .pamphlet_slick .slick-next::before { opacity: 1; color: #999; font-size: 60px; }

#pamphlet .pamphlet ul li .img { border: 2px solid #4873BA; }
#pamphlet .pamphlet ul li .more { width: 240px; margin-top: 30px; }




/* brand
--------------------------------------------*/
#brand h2 { position: relative; margin-bottom: 50px; text-align: center; font-size: 2.6rem; padding-top: 20px; }
#brand h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}


#brand .search { width: 80%; margin: 80px auto; padding: 5px 0; box-sizing: border-box; position: relative; z-index: 1; }
#brand .search .panel_area { background: #fff; padding: 20px 100px; border-top: 5px solid #8EACDD; border-bottom: 5px solid #8EACDD; }
#brand .search table { width: 100%; }
#brand .search table tr { display: flex; justify-content: space-between; align-items: center; padding: 20px; border-bottom: 1px dashed #ccc; }

#brand .search table tr th { width: 30%; text-align: left; margin-bottom: 5px; color: #F08300; }
#brand .search table tr td { width: 68%; position: relative; }
#brand .search table tr td select { width: 100%; padding: 8px 10px; box-sizing: border-box; font-size: 1.4rem; border: 1px solid #999; }
#brand .search table tr td select[name="tf"],
#brand .search table tr td select[name="tt"] { width: calc(100% / 2 - 15px); }
#brand .search table tr td input { width: 100%; padding: 8px 10px; box-sizing: border-box; font-size: 1.4rem; border: 1px solid #999; }
#brand .search table tr td .btn_reset { position: absolute; right: 1%; line-height: 2.2; }

#brand .search table tr td p.radio input { display: none; }
#brand .search table tr td p.radio label { position: relative; padding-left: 25px; margin-right: 20px; font-size: 1.4rem; font-weight: 500; }
#brand .search table tr td p.radio label::before {
content: "";
background: #fff;
border: 2px solid #707070;
border-radius: 50%;
width: 13px; height: 13px;
position: absolute;
top: 0; bottom: 0; left: 0;
margin: auto;
transition: background-color .1s ease-out,border-color .1s ease-out;
}
#brand .search table tr td p.radio input:checked + label::before { background: #F08300; }
#brand .search table tr td input[name="input_plan"] { width: 50%; }
#brand .search table tr td input[name="keyword_course"] { width: 100%; }

#brand .search .search_btn { margin: 40px auto 0; }


#brand .pamphlet { margin-bottom: 150px; }
#brand .pamphlet .pamphlet_slick .slick-list { padding: 0 12% 50px 0 !important; }
#brand .pamphlet .pamphlet_slick li { margin: 0 1% 0 0; }

#brand .pamphlet .pamphlet_slick li a .hover_wrap { overflow: hidden; border: 2px solid #4873BA; }
#brand .pamphlet .pamphlet_slick li a .hover_wrap .img { transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }
#brand .pamphlet .pamphlet_slick li a:hover .hover_wrap .img { transform: scale(1.1);}

#brand .pamphlet .pamphlet_slick li h3 { margin-top: 10px; }
#brand .pamphlet .pamphlet_slick li h3 span { display: block; font-size: 1.6rem; color: #F08300; margin-bottom: 5px; border-bottom: 1px dashed #8EACDD; }

#brand .pamphlet .pamphlet_slick .slick-prev { left: -60px; }
#brand .pamphlet .pamphlet_slick .slick-next { right: -30px; }
#brand .pamphlet .pamphlet_slick .slick-prev::before,
#brand .pamphlet .pamphlet_slick .slick-next::before { opacity: 1; color: #999; font-size: 60px; }


#brand .tokusyu { position: relative; margin-bottom: 100px; }
#brand .tokusyu .illust { position: absolute; top: -100px; right: -10%; width: 300px; opacity: 0.4; z-index: -1; }
#brand .tokusyu ul { margin: auto; display: flex; flex-wrap: wrap; }
#brand .tokusyu ul li { width: 24%; margin: 0 0.5% 10px; }
#brand .tokusyu ul li:first-child { width: 100%; }
#brand .tokusyu ul li a { position: relative; display: block; }
#brand .tokusyu ul li a::after {
content: '';
border: 2px solid #F08300;
width: calc(100% - 14px); height: calc(100% - 14px);
position: absolute;
top: 5px; right: 5px;
opacity: 0.5;
}
#brand .tokusyu ul li a .hover_wrap { overflow: hidden; }
#brand .tokusyu ul li a .hover_wrap .img { transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }
#brand .tokusyu ul li a:hover .hover_wrap .img { transform: scale(1.1);}


#brand .tour { position: relative; margin-bottom: 150px; }
#brand .tour .illust { position: absolute; top: -70px; left: 2%; width: 350px; opacity: 0.4; z-index: -1; }

#brand .tour ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
#brand .tour ul::after { content: ''; display: block; width: 32%; }
#brand .tour ul li { width: 32%; margin: 0 0 30px; position: relative; }
#brand .tour ul li.no-results { width: 100%; text-align: center; }
#brand .tour ul li a .hover_wrap { overflow: hidden; }
#brand .tour ul li a .hover_wrap .position { opacity: 0; }
#brand .tour ul li a .hover_wrap .img { position: relative; text-align: center; background: #fff; }
#brand .tour ul li a .hover_wrap .img span { position: absolute; bottom: 0; left: 0; width: 100%; display: block; z-index: 1; text-align: left; padding: 2px 8px; box-sizing: border-box; color: #fff; font-size: 1.4rem; }
#brand .tour ul li a .hover_wrap .img span.yuttarina { background: rgba(238, 38, 45, 0.8); }
#brand .tour ul li a .hover_wrap .img span.toilet_yuttarina { background: rgba(113, 191, 71, 0.8); }
#brand .tour ul li a .hover_wrap .img span.tyu_yuttarina { background: rgba(150, 103, 49, 0.8); }
#brand .tour ul li a .hover_wrap .img img.abso { position: absolute; margin: auto; left: 0; top: 0; bottom: 0; right: 0; transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }
#brand .tour ul li a .hover_wrap .img img { transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }
#brand .tour ul li a:hover .hover_wrap .img img { transform: scale(1.1); transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }

#brand .tour ul li .txt { padding: 10px; background: #F7F7F7; }
#brand .tour ul li .txt h3 { font-size: 1.8rem; padding-bottom: 10px; }
#brand .tour ul li .txt h3 span { padding: 5px 10px; color: #fff; position: absolute; top: 0; left: 0; background: #F08300; font-size: 1.6rem; }
#brand .tour ul li .txt p { font-size: 1.4rem; font-weight: 500; }
#brand .tour ul li .txt p { font-size: 1.4rem; font-weight: 500; margin-bottom: 10px; }
#brand .tour ul li .txt p span { width: 30%; display: inline-block; background: #8EACDD; color: #fff; padding: 3px 5px; margin-right: 10px; text-align: center; }



/* bustravel */
#brand.basutabi .tour ul { justify-content: inherit; }
#brand.basutabi .tour ul li { width: 23%; margin: 0 1% 30px; position: relative; }



/* hiking */
#brand.hiking .banner { position: relative; margin-bottom: 150px; }
#brand.hiking .banner .illust { position: absolute; top: -70px; left: 2%; width: 350px; opacity: 0.4; z-index: -1; }
#brand.hiking .banner ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
#brand.hiking .banner ul::after { content: ''; display: block; width: 31%; }
#brand.hiking .banner ul li { position: relative; width: 31%; margin: 0 0 50px; }
#brand.hiking .banner ul li a .hover_wrap { overflow: hidden; }
#brand.hiking .banner ul li a .hover_wrap .img { transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }
#brand.hiking .banner ul li a:hover .hover_wrap .img { transform: scale(1.1);}

#brand.hiking .banner ul li .txt { padding: 40px 20px 10px; box-sizing: border-box; position: absolute; width: 100%; bottom: 0; background: linear-gradient(0deg,rgba(0,0,0,.7),transparent); }
#brand.hiking .banner ul li .txt p { font-size: 1.3rem; font-weight: 500; color: #fff; background: #F08300; padding: 2px 5px; display: inline-block; margin-bottom: 5px; }
#brand.hiking .banner ul li .txt h3 { font-size: 1.8rem; color: #fff; }



/* junrei */
#brand.junrei .hed { margin-bottom: 0px; }

#brand.junrei .kokoroe { position: relative; margin-bottom: 150px; background: #8EACDD; padding: 50px 0; }
#brand.junrei .kokoroe h2 { color: #fff; }
#brand.junrei .kokoroe .txtbox { width: 60%; margin: 0 auto 50px; border: 3px solid #F08300; background: #fff; }
#brand.junrei .kokoroe .txtbox h3 { background: #F08300; color: #fff; font-size: 2rem; padding: 20px 30px; }
#brand.junrei .kokoroe .txtbox p { padding: 40px 30px; }
#brand.junrei .btnbox { margin: 0 auto 40px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
#brand.junrei .btnbox .more { margin: 0 30px; }


#brand.junrei .banner { position: relative; margin-bottom: 150px; }
#brand.junrei .banner .illust { position: absolute; top: -70px; left: 2%; width: 350px; opacity: 0.4; z-index: -1; }
#brand.junrei .banner ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
#brand.junrei .banner ul::after { content: ''; display: block; width: 31%; }
#brand.junrei .banner ul li { position: relative; width: 31%; margin: 0 0 50px; }
#brand.junrei .banner ul li a .hover_wrap { overflow: hidden; }
#brand.junrei .banner ul li a .hover_wrap .img { transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }
#brand.junrei .banner ul li a:hover .hover_wrap .img { transform: scale(1.1);}

#brand.junrei .banner ul li .txt { padding: 40px 20px 10px; box-sizing: border-box; position: absolute; width: 100%; bottom: 0; background: linear-gradient(0deg,rgba(0,0,0,.7),transparent); }
#brand.junrei .banner ul li .txt p { font-size: 1.3rem; font-weight: 500; color: #fff; background: #F08300; padding: 2px 5px; display: inline-block; margin-bottom: 5px; }
#brand.junrei .banner ul li .txt h3 { font-size: 1.8rem; color: #fff; }


#brand.junrei .tour { margin-top: 150px; }


#junrei_saigoku h2 { position: relative; margin-bottom: 50px; text-align: center; font-size: 2.6rem; padding-top: 20px; }
#junrei_saigoku h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}
#junrei_saigoku .cont01 { position: relative; width: 60%; margin: 0 auto 150px; border: 3px solid #F08300; background: #fff; }
#junrei_saigoku .cont01 h3 { background: #F08300; color: #fff; font-size: 2rem; padding: 20px 30px; }
#junrei_saigoku .cont01 p { padding: 40px 30px; }

#junrei_saigoku .cont02 { position: relative; margin-bottom: 150px; }
#junrei_saigoku .cont02 .is-layout-flex { background: #f7f7f7; padding: 50px; margin-top: 30px; }
#junrei_saigoku .cont02 .box { width: 23%; margin: 0 1%; position: relative; }
#junrei_saigoku .cont02 .box figure { border: 2px solid #F08300; box-sizing: border-box; }
#junrei_saigoku .cont02 .box h3 {
font-size: 1.8rem;
margin: 20px 0 10px;
padding-bottom: 10px;
background: linear-gradient(to right, #4873BA 10px, transparent 10px) repeat-x left bottom;
background-size: auto;
background-size: 20px 1px; }
#junrei_saigoku .cont02 .box h3 code { position: absolute; top: 0; left: 0; background: #F08300; padding: 5px 10px; color: #fff; font-family: 'Zen Kaku Gothic New', sans-serif; }

#junrei_saigoku .cont03 { position: relative; width: 60%; margin: 0 auto 50px; padding: 20px 30px; background: #8EACDD; }
#junrei_saigoku .cont03 h3 {
color: #fff;
font-size: 1.8rem;
margin: 20px 0 10px;
padding-bottom: 20px;
background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom;
background-size: auto;
background-size: 20px 2px; }
#junrei_saigoku .cont03 ul { list-style: disc; padding: 20px 20px; color: #fff; }

#junrei_saigoku .more { position: relative; margin-bottom: 150px; }


#junrei_shikoku h2 { position: relative; margin-bottom: 50px; text-align: center; font-size: 2.6rem; padding-top: 20px; }
#junrei_shikoku h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}
#junrei_shikoku .cont01 { position: relative; width: 60%; margin: 0 auto 150px; border: 3px solid #F08300; background: #fff; }
#junrei_shikoku .cont01 h3 { background: #F08300; color: #fff; font-size: 2rem; padding: 20px 30px; }
#junrei_shikoku .cont01 p { padding: 40px 30px; }

#junrei_shikoku .cont02 { position: relative; margin-bottom: 150px; }
#junrei_shikoku .cont02 .is-layout-flex { background: #f7f7f7; padding: 50px; margin-top: 30px; }
#junrei_shikoku .cont02 .box { width: 23%; margin: 0 1%; position: relative; }
#junrei_shikoku .cont02 .box figure { border: 2px solid #F08300; box-sizing: border-box; }
#junrei_shikoku .cont02 .box h3 {
font-size: 1.8rem;
margin: 20px 0 10px;
padding-bottom: 10px;
background: linear-gradient(to right, #4873BA 10px, transparent 10px) repeat-x left bottom;
background-size: auto;
background-size: 20px 1px; }
#junrei_shikoku .cont02 .box h3 code { position: absolute; top: 0; left: 0; background: #F08300; padding: 5px 10px; color: #fff; font-family: 'Zen Kaku Gothic New', sans-serif; }

#junrei_shikoku .cont03 { position: relative; width: 60%; margin: 0 auto 50px; padding: 20px 30px; background: #8EACDD; }
#junrei_shikoku .cont03 h3 {
color: #fff;
font-size: 1.8rem;
margin: 20px 0 10px;
padding-bottom: 20px;
background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom;
background-size: auto;
background-size: 20px 2px; }
#junrei_shikoku .cont03 ul { list-style: disc; padding: 20px 20px; color: #fff; }

#junrei_shikoku .more { position: relative; margin-bottom: 150px; }



/* kobe */
#brand.kobe .title { width: 70%; margin: 0 auto 50px; }
#brand.kobe .title .tag { margin-bottom: 10px; }
#brand.kobe .title .tag span { background: #F08300; padding: 3px 10px; margin-right: 10px; font-size: 1.4rem; color: #fff; display: inline-block; }
#brand.kobe .title h2 { font-size: 3.4rem; margin-bottom: 0; text-align: left; }
#brand.kobe .title h2 strong { font-size: 4rem; }
#brand.kobe .title h2 span { color: #4873BA; }
#brand.kobe .main_img { width: 70%; margin: auto; }


#brand.kobe .point {position: relative; width: 60%; margin: -50px auto 100px; background: #8EACDD; padding: 30px; box-sizing: border-box; z-index: 1; color: #fff; }
#brand.kobe .point h4 { position: relative; font-size: 2rem; margin-bottom: 10px; padding-right: 60px; display: inline-block; }
#brand.kobe .point h4::after {
content: '';
border-top: 3px solid #F08300;
width: 50px;
position: absolute;
top: 45%; right: 0;
}
#brand.kobe .point p { border-top: 1px dashed #fff; font-weight: 500; padding-top: 20px; }


#brand.kobe h3 { margin-bottom: 50px; text-align: center; font-size: 2.6rem; }
#brand.kobe h3 span img { width: 50px; margin: auto; line-height: 1; display: block; }

#brand.kobe .box { width: 70%; margin: 0 auto 100px; background: #f7f7f7; padding: 50px; box-sizing: border-box; }
#brand.kobe .box h4 { margin-bottom: 30px; font-size: 3rem; color: #F08300; }
#brand.kobe .box h4 span { color: #333; font-size: 2.2rem; }

#brand.kobe .box dl { border: 3px solid #8EACDD; }
#brand.kobe .box dl dt { background: #8EACDD; padding: 10px 15px; box-sizing: border-box; color: #fff; }
#brand.kobe .box dl dd { background: #fff; padding: 20px; box-sizing: border-box; font-size: 1.4rem; }

#brand.kobe .box .flexwrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
#brand.kobe .box .flexwrap .txtbox { width: 55%; }
#brand.kobe .box .flexwrap .txtbox table { width: 100%; margin-bottom: 30px; }
#brand.kobe .box .flexwrap .txtbox table th { width: 25%; background: #8EACDD; padding: 10px 5px; text-align: center; border: 1px solid #8EACDD; color: #fff; }
#brand.kobe .box .flexwrap .txtbox table td { background: #fff; padding: 10px 5px; text-align: center; border: 1px solid #8EACDD; }
#brand.kobe .box .flexwrap .imgbox { width: 40%; }
#brand.kobe .box .flexwrap .imgbox p { margin-top: 10px; color: #F08300; font-size: 1.4rem; }

#brand.kobe .box.kotei table { width: 100%; }
#brand.kobe .box.kotei table th { width: 5%; background: #8EACDD; padding: 10px 5px; text-align: center; border: 1px solid #8EACDD; color: #fff; }
#brand.kobe .box.kotei table td { background: #fff; padding: 10px 5px; border: 1px solid #8EACDD; }
#brand.kobe .box.kotei table td span { color: #F08300; }

#brand.kobe .box.kotei p { margin-top: 10px; color: #F08300; font-size: 1.4rem; }



/* cruise */
#brand.cruise .tour { text-align: center; }
#brand.cruise h3 { margin-bottom: 50px; font-size: 2.8rem; background: #c9deff; display: inline-block; padding: 15px 110px; color: #d90000; }
#brand.cruise .main_img { width: 80%; margin: auto; display: flex; flex-wrap: wrap; }
#brand.cruise .main_img img { width: 50%; }
#brand.cruise .main_img img.w100 { width: 100%; }
#brand.cruise .flexbox { width: 50%; margin: auto; display: flex; flex-wrap: wrap; justify-content: space-around; }
#brand.cruise p { text-align: center; font-size: 1.4rem; margin-top: 10px; }




/* fixed
--------------------------------------------*/
#fixed h2 { position: relative; margin-bottom: 50px; text-align: center; font-size: 2.6rem; padding-top: 20px; }
#fixed h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}


#fixed .cont01 { position: relative; margin-bottom: 150px; }
#fixed .cont01 figure { margin-bottom: 30px; }
#fixed .cont01 p { margin-bottom: 30px; }
#fixed .cont01 p a { color: #F08300; border-bottom: 1px solid #F08300; }


#fixed .tour { position: relative; margin-bottom: 150px; }
#fixed .tour .illust { position: absolute; top: -70px; left: 2%; width: 350px; opacity: 0.4; z-index: -1; }

#fixed .tour ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
#fixed .tour ul::after { content: ''; display: block; width: 32%; }
#fixed .tour ul li { width: 32%; margin: 0 0 30px; position: relative; }
#fixed .tour ul li.no-results { width: 100%; text-align: center; }
#fixed .tour ul li a .hover_wrap { overflow: hidden; }
#fixed .tour ul li a .hover_wrap .img { text-align: center; background: #ccc; transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s; }
#fixed .tour ul li a:hover .hover_wrap .img { transform: scale(1.1);}

#fixed .tour ul li .txt { padding: 10px; background: #F7F7F7; }
#fixed .tour ul li .txt h3 { font-size: 1.8rem; padding-bottom: 10px; }
#fixed .tour ul li .txt h3 span { padding: 5px 10px; color: #fff; position: absolute; top: 0; left: 0; background: #F08300; font-size: 1.6rem; }
#fixed .tour ul li .txt p { font-size: 1.4rem; font-weight: 500; }
#fixed .tour ul li .txt p { font-size: 1.4rem; font-weight: 500; margin-bottom: 10px; }
#fixed .tour ul li .txt p span { width: 30%; display: inline-block; background: #8EACDD; color: #fff; padding: 3px 5px; margin-right: 10px; text-align: center; }




/* news
--------------------------------------------*/
#news h2 { position: relative; margin-bottom: 50px; text-align: center; font-size: 2.6rem; padding: 20px 0; background: linear-gradient(to right, #8EACDD 10px, transparent 10px) repeat-x left bottom;
background-size: 20px 0.5px; }
#news h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}


#news .cont01 dl {  }
#news .cont01 dl .news_list { display: flex; flex-wrap: wrap; padding: 0 30px 15px; margin-bottom: 30px; border-bottom: 1px solid #8EACDD; }
#news .cont01 dl .news_list dt { width: 20%; }
#news .cont01 dl .news_list dd span { padding: 3px 10px; margin-right: 10px; font-size: 1.4rem; color: #fff; }
#news .cont01 dl .news_list dd span.important { background: #b62736; }
#news .cont01 dl .news_list dd span.info { background: #F08300; }
#news .cont01 dl .news_list dd span.recommendation { background: #b554d3; }
#news .cont01 dl .news_list dd span.maintenance { background: #4873BA; }
#news .cont01 dl .news_list dd span.branch { background: #464646; }
#news .cont01 dl .news_list dd span.release { background: #10c716; }
#news .cont01 dl .news_list dd { margin-left: 50px; font-weight: 400; }
#news .cont01 dl .news_list dd a { }
#news .cont01 dl .news_list dd a:hover { color: #4873BA; }


#news .cont01 { position: relative; margin-bottom: 150px; }
#news .cont01 #update { position: relative; text-align: right; margin-bottom: 50px; box-sizing: border-box; position: relative; }
#news .cont01 #update span { color: #4873BA; }
#news .cont01 p { margin-top: 30px; }
#news .cont01 p a { color: #F08300; border-bottom: 1px solid #F08300; }
#news .cont01 .wp-block-file a { color: #F08300; border-bottom: 1px solid #F08300; }
#news .cont01 .wp-block-file a.wp-block-file__button { color: #fff; border-bottom: none; }




/* boarding
--------------------------------------------*/
#boarding h2 { position: relative; margin-bottom: 50px; text-align: center; font-size: 2.6rem; padding-top: 20px; }
#boarding h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}

#boarding .cont01 { position: relative; margin-bottom: 150px; }
#boarding .cont01 .txt { width: 80%; margin: 0 auto 100px; font-size: 1.4rem; text-align: center; }
#boarding .cont01 .txt strong { font-size: 1.8rem; }
#boarding .cont01 .txt code { display: block; padding: 3px 0; color: #F08300; font-family: YakuHanJPs, '游ゴシック体', 'Yu Gothic', YuGothic, sans-serif; }

#boarding .cont01 .is-layout-flex::after { content: ''; width: 30%; display: block; }
#boarding .cont01 .box {width: 30%; margin-bottom: 50px; background: #F7F7F7; }
#boarding .cont01 .box h3 { background: #8EACDD; color: #fff; padding: 5px 10px; }
#boarding .cont01 .box .img { padding: 20px 8% 0; }
#boarding .cont01 .box h4 { margin-top: 5px; font-size: 1.4rem; padding: 0 30px; }
#boarding .cont01 .box p { font-size: 1.4rem; }
#boarding .cont01 .box .more { width: 84%; margin: 10px 8% 20px; }

#boarding .cont02 { position: relative; margin-bottom: 150px; }
#boarding .cont02 .map_img { width: 60%; margin: auto; }




/* faq
--------------------------------------------*/
#faq .txt { width: 80%; margin: 0 auto 100px; font-size: 1.4rem; text-align: center; }

#faq .mokuji { background: #f7f7f7; padding: 50px 5%; box-sizing: border-box; margin-bottom: 150px; }
#faq .mokuji h3 { font-size: 2.4rem; margin-bottom: 30px; padding: 0 10px 10px; background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom; background-size: 20px 1px; }

#faq .mokuji ul { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 0 50px; }
#faq .mokuji ul li { width: 45%; position: relative; padding-left: 1.4em; font-size: 1.4rem; margin-bottom: 15px; }
#faq .mokuji ul li::before {
content: '▼';
color: #F08300;
position: absolute;
top: 0; left: 0;
}

#faq .cont01 { position: relative; margin-bottom: 150px; }
#faq .cont01 h2 { position: relative; margin-bottom: 50px; text-align: center; font-size: 2.6rem; padding-top: 20px; }
#faq .cont01 h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}

#faq .cont01 dl { background: #f7f7f7; padding: 100px 5%; box-sizing: border-box; }
#faq .cont01 dl .items { margin-bottom: 30px; }
#faq .cont01 dl .items:last-child { margin-bottom: 0; }
#faq .cont01 dl .items dt { font-size: 1.8rem; margin-bottom: 20px; padding: 0 10px 10px; background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom; background-size: 20px 1px; padding-top: 150px; margin-top: -150px; box-sizing: border-box; }
#faq .cont01 dl .items dd { width: 90%; margin: 0 auto; background: #fff; padding: 30px 40px; }
#faq .cont01 dl .items dd a { color: #8EACDD; border-bottom: 1px solid #8EACDD; }
#faq .cont01 dl .items dd figure { width: 70%; margin: 20px auto 0; }




/* contact
--------------------------------------------*/
#contact .index { position: relative; margin-bottom: 50px; }
#contact .index .flexwrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
#contact .index .flexwrap .box { width: 48%; position: relative; margin-bottom: 100px; background: #F7F7F7; padding: 30px; box-sizing: border-box; }
#contact .index .flexwrap .box h2 { position: relative; margin-bottom: 30px; padding-bottom: 30px; text-align: center; font-size: 2.6rem; padding-top: 20px; background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom; background-size: 20px 1px; }
#contact .index .flexwrap .box h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}

#contact .index .flexwrap .box p {  }

#contact .index .flexwrap .more_box { margin-top: 20px; }
#contact .index .flexwrap .more_box h4 { background: #8EACDD; color: #fff; padding: 5px 10px; font-size: 1.8rem; }
#contact .index .flexwrap .more_box p { text-align: center; padding: 20px; box-sizing: border-box; background: #fff; }
#contact .index .flexwrap .more_box .more { width: 220px; margin: 20px auto; }



#request .cont01 { position: relative; margin-bottom: 150px; }
#request .cont01 h2 { position: relative; margin-bottom: 50px; text-align: center; font-size: 2.6rem; padding-top: 20px; }
#request .cont01 h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}
#request .cont01 p.txt { margin-bottom: 30px; }
#request .cont01 p.bg_txt { width: 70%; margin: 30px auto 0; border: 3px solid #F08300; padding: 30px 20px; box-sizing: border-box; font-size: 1.4rem; }

#request .cont01 table { display: block; background: #8EACDD; padding: 50px; box-sizing: border-box; }
#request .cont01 table tbody { width: 100%; display: block; background: linear-gradient(to right, #f7f7f7 10px, transparent 10px) repeat-x left top; background-size: 20px 1px; }
#request .cont01 table tr { margin-bottom: 0px; padding: 30px 40px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; background: linear-gradient(to right, #f7f7f7 10px, transparent 10px) repeat-x left bottom; background-size: 20px 1px; }
#request .cont01 table tr th { width: 30%; text-align: left; color: #fff; }
#request .cont01 table tr td { width: 60%; font-weight: 400; color: #fff; }
#request .cont01 table tr td p { font-size: 1.4rem; }
#request .cont01 table tr td span.error { display: block; color: #ed2717; }
#request .cont01 table tr td input { padding: 10px 20px; box-sizing: border-box; background: #fff; border: 1px solid transparent; }

/* チェックボックス */
#request .cont01 table tr td .checkbox__item { display: none; }
/* spanの左側にボタンを配置するスペースを作る */
#request .cont01 table tr td .checkbox__item + span { margin-right: 10px; padding-left: 1.5em; display: inline-block; position: relative; }
/* 各パーツを作成 */
#request .cont01 table tr td .checkbox__item + span::after,
#request .cont01 table tr td .checkbox__item + span::before {
content: '';
display: block;
border: 3px solid #8EACDD;
background: #fff;
width: 15px; height: 15px;
position: absolute;
top: 15%; left: 0;
}
/* after上書き */
#request .cont01 table tr td .checkbox__item + span::after{
content: "✔";
opacity: 0;
color: #F08300;
font-size: 1.4rem;
line-height: 1;
text-align: center;
}
/* checked状態 ボタンのopacityを変更 */
#request .cont01 table tr td .checkbox__item:checked + span::after { opacity: 1; }

#request .cont01 table tr td input[type=text],
#request .cont01 table tr td input[name="input_mail"] { width: 100%; }

#request .cont01 table tr td input[name="input_tel1"],
#request .cont01 table tr td input[name="input_tel2"],
#request .cont01 table tr td input[name="input_tel3"],
#request .cont01 table tr td input[name="input_zip1"],
#request .cont01 table tr td input[name="input_zip2"] { width: 30%; }

#request .cont01 .more input[type=submit] { width: 100%; color: #fff; background: #4873BA; border: 2px solid #4873BA; padding: 20px 0; text-align: center; transition: all 0.3s ease; }
#request .cont01 .more input[type=submit]:hover { color: #4873BA; background: #fff; }



#tours .cont01 { position: relative; margin-bottom: 150px; }
#tours .cont01 h2 { position: relative; margin-bottom: 50px; text-align: center; font-size: 2.6rem; padding-top: 20px; }
#tours .cont01 h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}
#tours .cont01 h3 { margin-top: 50px; padding-bottom: 10px; margin-bottom: 20px; border-bottom: 2px dashed #8EACDD; }
#tours .cont01 p.txt { margin-bottom: 30px; }
#tours .cont01 p.bg_txt { width: 70%; margin: 30px auto 0; border: 3px solid #F08300; padding: 30px 20px; box-sizing: border-box; font-size: 1.4rem; }

#tours .cont01 table { display: block; background: #8EACDD; padding: 50px; box-sizing: border-box; }
#tours .cont01 table tbody { width: 100%; display: block; background: linear-gradient(to right, #f7f7f7 10px, transparent 10px) repeat-x left top; background-size: 20px 1px; }
#tours .cont01 table tr { margin-bottom: 0px; padding: 30px 40px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; background: linear-gradient(to right, #f7f7f7 10px, transparent 10px) repeat-x left bottom; background-size: 20px 1px; }
#tours .cont01 table tr th { width: 30%; text-align: left; color: #fff; }
#tours .cont01 table tr td { width: 60%; font-weight: 400; color: #fff; }
#tours .cont01 table tr td p { font-size: 1.4rem; }
#tours .cont01 table tr td span.error { display: block; color: #ed2717; }
#tours .cont01 table tr td input { padding: 10px 20px; box-sizing: border-box; background: #fff; border: 1px solid transparent; }

/* チェックボックス */
#tours .cont01 table tr td .radio__item { display: none; }
/* spanの左側にボタンを配置するスペースを作る */
#tours .cont01 table tr td .radio__item + span { margin-right: 10px; padding-left: 1.5em; display: inline-block; position: relative; }
/* 各パーツを作成 */
#tours .cont01 table tr td .radio__item + span::after,
#tours .cont01 table tr td .radio__item + span::before {
content: '';
display: block;
border: 3px solid #8EACDD;
background: #fff;
width: 15px; height: 15px;
position: absolute;
top: 15%; left: 0;
}
/* after上書き */
#tours .cont01 table tr td .radio__item + span::after{
content: "✔";
opacity: 0;
color: #F08300;
font-size: 1.4rem;
line-height: 1;
text-align: center;
}
/* checked状態 ボタンのopacityを変更 */
#tours .cont01 table tr td .radio__item:checked + span::after { opacity: 1; }

#tours .cont01 table tr td input[type=text],
#tours .cont01 table tr td input[name="input_mail"],
#tours .cont01 table tr td input[name="confirm_system_mail"],
#tours .cont01 table tr td textarea[name="input_message"] { width: 100%; }

#tours .cont01 .more input[type=submit] { width: 100%; color: #fff; background: #4873BA; border: 2px solid #4873BA; padding: 20px 0; text-align: center; transition: all 0.3s ease; }
#tours .cont01 .more input[type=submit]:hover { color: #4873BA; background: #fff; }


}
















/*sp*/
@media only screen and (max-width: 768px) {

/*--スクロールトップ---------*/
.totop { position: fixed; bottom: 50px; right: 20px; z-index: 2000; }
.totop .img { width: 40px; }



	
/*com*/
/*----------------------------*/
main { width: 100%; margin: auto; overflow: hidden; }

.pc { display: none;}
.pcBr { display: none;}
.sp { display: block;}
.spBr { display: inline-block;}

.comPd_80 { padding: 50px 0; }
.comPd_100 { padding: 80px 0; }
.comPd_150 { padding: 100px 0; }
.comPd_200 { padding: 150px 0; }

.w1400 { width: 100%; margin: auto;}
.w1200 { width: 90%; margin: auto;}
.w1000 { width: 80%; margin: auto;}
.w960 { width: 70%; margin: auto;}

.w100 { width: 100%; margin: auto;}
.w90 { width: 95%; margin: auto;}
.w80 { width: 90%; margin: auto;}
.w70 { width: 70%; margin: auto;}




/* header
--------------------------------------------*/
header { width: 100%; position: relative; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
header .logo_img { width: 180px; margin: 10px 0 10px 10px; }
header .hed_wrap {  }

header .hed_wrap ul.hed_button { display: flex; flex-wrap: wrap; position: relative; z-index: 1000; }
header .hed_wrap ul.hed_button li { width: 70px; box-sizing: border-box; }
header .hed_wrap ul.hed_button li a { display: block; height: 70px; padding: 10px 5px; box-sizing: border-box; text-align: center; }
header .hed_wrap ul.hed_button li:nth-child(1) a { background: #F08300; }
header .hed_wrap ul.hed_button li .img { display: block; width: 12px; margin: 0 auto; }
header .hed_wrap ul.hed_button li .txt { color: #fff; font-size: 1rem; display: block; line-height: 1.3; }


/* 以下、ハンバーガーボタン */
header .hed_wrap ul.hed_button li .burger-btn {
width: 100%;
height: 100%;
background: #8EACDD;
position: relative;
z-index: 3;
border:none;
}    
header .hed_wrap ul.hed_button li .burger-btn .bar {
width: 45%; height: 2px;
display: block;
position: absolute;
left: 50%;
transform: translateX(-50%);
background-color: #fff;
}

header .hed_wrap ul.hed_button li .burger-btn .bar_top { top: 25px; transition: transform .3s; }
header .hed_wrap ul.hed_button li .burger-btn .bar_mid { top: 50%; transform: translate(-50%,-50%); transition: transform .3s; }
header .hed_wrap ul.hed_button li .burger-btn .bar_bottom { bottom: 25px; transition: transform .3s; }
header .hed_wrap ul.hed_button li .burger-btn.close .bar_top{ transform: translate(-50%,9px) rotate(45deg); transition: transform .3s; }
header .hed_wrap ul.hed_button li .burger-btn.close .bar_mid{ opacity: 0; transition: opacity .3s; }
header .hed_wrap ul.hed_button li .burger-btn.close .bar_bottom{ transform: translate(-50%,-9px) rotate(-45deg); transition: transform .3s; }


/* 以下、メニュー */
.noscroll{ overflow: hidden; }

header .menu_wrap { position: fixed; top: 0; right: 0; transition: all .5s; z-index: 100; }
header .menu_wrap.fade { width: 100%; height: 100vh; background-color: rgba(0,0,0,0.7); transition: all .5s; }

header .menu_wrap .menu { width: 85%; height: 100%; position: absolute; top: 0; right: -100%; }
header .menu_wrap.fade .menu { right: 0; background: #fff; transition: all .5s; border-left: 2px solid #F08300; }

header .menu_wrap .menu .menu_list { height: 70vh; margin: 15vh 5%; overflow-y: auto; }
header .menu_wrap .menu .menu_list li { margin-bottom: 30px; border-bottom: 1px solid #999; padding-bottom: 5px; color: #8EACDD; }
header .menu_wrap .menu .menu_list li:last-child { margin-bottom: 0px; }
header .menu_wrap .menu .menu_list li a { color: #8EACDD; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }

/* クリック領域 */
header .menu_wrap .menu .menu_list li p.ac-parent { cursor: pointer; position: relative; }
/* 擬似要素で下三角形を作成 */
header .menu_wrap .menu .menu_list li p.ac-parent:after {
content: "";
display: inline-block;
position: absolute;
top: 45%; right: 10px;
width: 8px; height: 8px;
border-right: 3px solid #F08300;
border-bottom: 3px solid #F08300;
transform: translateY(-50%) rotate(45deg);
transition: .3s;
}
header .menu_wrap .menu .menu_list li p.ac-parent.open:after {
transform: rotate(225deg);
}

/* クリックしたら表示される領域 */
header .menu_wrap .menu .menu_list li p.ac-child { display: none; }

header .menu_wrap .menu .menu_list li p a { position: relative; color: #333; margin-top: 15px; padding-left: 30px; }
header .menu_wrap .menu .menu_list li p a::before {
content: '';
border-bottom: 2px solid #F08300;
width: 10px;
height: 1px;
position: absolute;
top: 40%;
left: 15px;
}


header .menu_wrap .menu .menu_list_sub { height: 35vh; margin: 0 auto 35vh; padding: 0 5%; }
header .menu_wrap .menu .menu_list_sub li a { position: relative; display: block; color: #999; font-size: 1.4rem; margin-bottom: 10px; padding-left: 20px; }
header .menu_wrap .menu .menu_list_sub li a::before { content: '▶'; font-size: 1.2rem; position: absolute; left: 0; margin: auto; color: #333; line-height: 2; }


header.scroll-nav { background: #fff; box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1); transition: 0.5s; position: fixed; top: 0; right: 0; z-index: 50; }




/* footer
--------------------------------------------*/
footer .banner { position: relative; background: #F7F7F7; }
footer .banner ul { width: 95%; margin: auto; padding: 20px 0; display: flex; flex-wrap: wrap; justify-content: space-between; }
footer .banner ul li { width: 31%; }


footer { position: relative; }

footer .footer_menu { background: #464646; padding: 30px 0; }
footer .footer_menu .logo_img { width: 220px; margin: 0 auto 40px; }
footer .footer_menu .logo_img span { display: block; font-size: 1.1rem; color: #fff; margin: 10px 0; }

footer .footer_menu .flex_box {  }
footer .footer_menu .flex_box ul.menu { width: 95%; margin: auto; display: flex; flex-wrap: wrap; justify-content: space-between; }
footer .footer_menu .flex_box ul.menu li { width: 48%; margin-bottom: 30px; font-size: 1.2rem; }
footer .footer_menu .flex_box ul.menu li a { color: #ccc; }
footer .footer_menu .flex_box ul.menu li a img { width: 80%; }

footer .footer_menu .flex_box .foot_brand { width: 95%; margin: auto; }
footer .footer_menu .flex_box .foot_brand p { font-size: 1.6rem; margin-bottom: 15px; color: #ccc; }
footer .footer_menu .flex_box .foot_brand ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
footer .footer_menu .flex_box .foot_brand ul li { width: 48%; margin-bottom: 30px; }
footer .footer_menu .flex_box .foot_brand ul li a:hover { opacity: 0.7; }


footer .copy { background: #F7F7F7; padding: 30px 10px; box-sizing: border-box; margin-top: 30px; }
footer .copy ul { display: none; }
footer .copy p { font-size: 1rem; text-align: center; }
footer .copy a { width: 30%; margin: 0 auto 15px; }




/* hed_img
--------------------------------------------*/
.hed { position: relative; box-sizing: border-box; margin-bottom: 50px; overflow: hidden; background: #f7f7f7; }

.hed .pankuzu { display: flex; justify-content: flex-end; background: #8EACDD; padding: 10px 5%; text-align: right; }
.hed .pankuzu li { font-size: 0.9em; font-weight: 400; color: #fff; }
.hed .pankuzu li::after { content: ">"; padding: 0 10px; text-decoration: nonep;}
.hed .pankuzu li:nth-last-of-type(1)::after { content: none;}
.hed .pankuzu li a { border-bottom: 1px solid #4873BA; color: #fff; }

.hed .hedimg {  }
.hed .hedimg img {  }
.hed h1 { position: relative; font-size: 3rem; z-index: 1; padding: 50px 5%; background: #f7f7f7; overflow: hidden; }
.hed h1 span { display: block; font-size: 1.6rem; color: #F08300; }
.hed h1 img { width: 200px; position: absolute; top: -20px; right: 0px; opacity: 0.4; z-index: -1; }




/*more
----------------------------*/
.more { margin: 40px auto 0; width: 60%; }
.more a { position: relative; display: block; font-size: 1.4rem; color: #fff; padding: 15px 0; background: #4873BA; text-align: center; z-index: 1; }
.more a::before {
content: '';
background: #fff;
clip-path: polygon(100% 0%, 100% 100%, 0% 100% );
position: absolute;
width: 20%; height: 50%;
bottom: 2px; right: 2px;
z-index: -1;
transition: all 0.3s ease;
}


.more_w a { color: #4873BA; background: #fff; border: 2px solid #4873BA; }
.more_w a::before { background: #4873BA; }



.more02 { position: relative; padding-top: 10px; font-size: 1.4rem; text-align: right; color: #999; padding-right: 15px; }
.more02::before {
content: '>';
position: absolute;
bottom: 4px; right: 0px;
line-height: 1.2;
transition: all 0.3s ease;
}



.bt_searchform #submit {
position: relative;
display: block;
width: 240px;
margin: 10px auto 0;
padding: 8px 0;
background: #4873BA;
font-weight: 500;
color: #fff;
text-align: center;
border: none;
font-size: 1.4rem;
}



.pamphlet_btn a {
position: relative;
display: block;
margin: 15px 50px 0;
padding: 6px 0;
background: #4873BA;
border: 2px solid #fff;
color: #fff;
text-align: center;
}
.pamphlet_btn a span { display: block; width: 40px; margin: 0 auto 3px; }




/* btnBk
--------------------------------------------*/
.more.btnBk { margin: 150px auto 0; width: 280px; }




/* contents（トップ）
--------------------------------------------*/
#contents .tit { position: relative; text-align: center; }
#contents .tit p { width: 60px; margin: 0 auto 10px; }
#contents .tit h2 { font-size: 4rem; line-height: 1; margin-bottom: 40px; }
#contents .tit h2 span { display: block; padding-top: 10px; color: #F08300; font-size: 1.8rem; }



/* ▼mv */
#contents .mv { position: relative; display: flex; flex-wrap: wrap; flex-direction: column-reverse; overflow: hidden; }

#contents .mv .search { width: 90%; margin: 20px auto; }
/* ▼タブ */
#contents .mv .search .btn_area { display: flex; flex-wrap: wrap; align-items: end; }
#contents .mv .search .btn_area li {
width: calc(100%/3);
background: #767677;
border-radius: 0 15px 0 0;
font-size: 1.4rem;
text-align: center;
color: #fff;
padding: 5px 2px;
box-sizing: border-box;
cursor: pointer;
}
#contents .mv .search .btn_area li.active {
background: #fff;
color: #4873BA;
font-size: 1.6rem;
padding: 10px 2px 8px;
overflow: hidden;
position: relative;
}
#contents .mv .search .btn_area li.active::after {
content: '';
position: absolute;
top: 0; left: 0;
width: 100%;
border-top: 5px solid #4873BA;
}

#contents .mv .search .panel_area { background: #fff; padding: 15px; box-sizing: border-box; box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1); }
#contents .mv .search .panel_area .tab_panel { display:none; }
#contents .mv .search .panel_area .tab_panel.active { display:block; }

/* ▼検索フォーム */
#contents .mv .search table { width: 100%; }
#contents .mv .search table tr { display: block; margin-bottom: 5px; padding-bottom: 15px; border-bottom: 0.5px dashed #ccc; }
#contents .mv .search table tr th { display: block; text-align: left; margin-bottom: 5px; color: #F08300; font-size: 1.4rem; }
#contents .mv .search table tr td { display: block; width: 100%; position: relative; }
#contents .mv .search table tr td.selectbox { position: relative; }
#contents .mv .search table tr td.selectbox::after{
position: absolute;
top: 35%;
right: 3%;
margin-top: -8px;
content: "▼";
color: #333;
}
#contents .mv .search table tr td.selectbox::after{
pointer-events: none;
}
#contents .mv .search table tr td select { width: 100%; padding: 5px 10px; box-sizing: border-box; font-size: 1.4rem; border: 1px solid #999; -webkit-appearance:none; color: #333; }
#contents .mv .search table tr td select[name="tf"],
#contents .mv .search table tr td select[name="tt"] { width: calc(100% / 2 - 15px); }
#contents .mv .search table tr td input { width: 100%; padding: 5px 10px; box-sizing: border-box; font-size: 1.4rem; border: 1px solid #999; background: #fff; border-radius: 0; display: block; }
#contents .mv .search table tr td .btn_reset { position: absolute; right: 3%; top: 8%; }

#contents .mv .search table tr td p.radio input { display: none; }
#contents .mv .search table tr td p.radio label { position: relative; padding-left: 20px; margin-right: 15px; font-size: 1.4rem; font-weight: 500; }
#contents .mv .search table tr td p.radio label::before {
content: "";
background: #fff;
border: 2px solid #707070;
border-radius: 50%;
width: 11px; height: 11px;
position: absolute;
top: 0; bottom: 0; left: 0;
margin: auto;
transition: background-color .1s ease-out,border-color .1s ease-out;
}
#contents .mv .search table tr td p.radio input:checked + label::before { background: #F08300; }


/* ▼slider */
#contents .mv .sliderArea { width: 100%; }
#contents .mv .sliderArea .slider_bg { width: 300%; position: absolute; bottom: 0; right: 0; left: 0; margin: auto; z-index: -1; }
#contents .mv .sliderArea .slider_bg li { filter: blur(15px); }

#contents .mv .sliderArea .slider .slick-prev,
#contents .mv .sliderArea .slider .slick-next {
width: 50px; height: 50px;
background: rgba(255, 255, 255, 0.8);
z-index: 1;
}
#contents .mv .sliderArea .slider .slick-prev { right: auto; left: 0; }
#contents .mv .sliderArea .slider .slick-next { right: 0; left: auto; }
#contents .mv .sliderArea .slider .slick-prev::before,
#contents .mv .sliderArea .slider .slick-next::before { opacity: 1; color: #F08300; font-size: 40px; }



/* emergency */
#contents .emergency { position: relative; margin: 50px auto; }

#contents .emergency ul {  }
#contents .emergency ul li { margin-bottom: 20px; }
#contents .emergency ul li a { position: relative; display: block; }



/* ▼pickup */
#contents .pickup { position: relative; background: #F7F7F7; padding: 80px 0; overflow: hidden; }
#contents .pickup .illust { position: absolute; top: 2%; right: 3%; width: 35%; }


#contents .pickup .pickup_slick .slick-list { padding: 0 35% 30px 0 !important; }
#contents .pickup .pickup_slick li { margin: 0 0.6% 0 0; position: relative; }
#contents .pickup .pickup_slick li a .hover_wrap { overflow: hidden; }
#contents .pickup .pickup_slick li a .hover_wrap .position { opacity: 0; }
#contents .pickup .pickup_slick li a .hover_wrap .img { position: relative; text-align: center; background: #fff; }
#contents .pickup .pickup_slick li a .hover_wrap .img span { position: absolute; bottom: 0; left: 0; width: 100%; display: block; z-index: 1; text-align: left; padding: 2px 8px; box-sizing: border-box; color: #fff; font-size: 1.4rem; }
#contents .pickup .pickup_slick li a .hover_wrap .img span.yuttarina { background: rgba(238, 38, 45, 0.8); }
#contents .pickup .pickup_slick li a .hover_wrap .img span.toilet_yuttarina { background: rgba(113, 191, 71, 0.8); }
#contents .pickup .pickup_slick li a .hover_wrap .img span.tyu_yuttarina { background: rgba(150, 103, 49, 0.8); }
#contents .pickup .pickup_slick li a .hover_wrap .img img.abso { position: absolute; margin: auto; left: 0; top: 0; bottom: 0; right: 0; }

#contents .pickup .pickup_slick li .txt { padding: 10px; }
#contents .pickup .pickup_slick li .txt .tag { background: #F08300; padding: 2px 5px; font-size: 1.2rem; color: #fff; display: inline-block; position: absolute; top: 0; left: 0; }
#contents .pickup .pickup_slick li .txt h3 { padding: 0 0 10px; }
#contents .pickup .pickup_slick li .txt h3 span { display: block; color: #4873BA; }
#contents .pickup .pickup_slick li .txt p { font-size: 1.4rem; font-weight: 500; margin-bottom: 10px; }
#contents .pickup .pickup_slick li .txt p span { width: 30%; display: inline-block; background: #8EACDD; color: #fff; padding: 3px 5px; margin-right: 10px; text-align: center; }

#contents .pickup .pickup_slick .slick-prev { left: -60px; }
#contents .pickup .pickup_slick .slick-next { right: -30px; }
#contents .pickup .pickup_slick .slick-prev::before,
#contents .pickup .pickup_slick .slick-next::before { opacity: 1; color: #999; font-size: 30px; }

#contents .pickup .pickup_slick .slick-dots li {
width: 8px; height: 8px;
margin: 0 8px !important;
}
#contents .pickup .pickup_slick .slick-dots li button::before {
width: 8px; height: 8px;
border: 2px solid #707070;
}
#contents .pickup .pickup_slick .slick-dots li.slick-active button::before {
border: 2px solid #333;
}



/* ▼news */
#contents .news { position: relative; background: #8EACDD; padding: 30px 0; }
#contents .news .flex_wrap { width: 90%; margin: auto; }

#contents .news .tit h2 { color: #fff; }

#contents .news dl {  }
#contents .news dl .news_list { border-bottom: 1px solid #ccc; padding: 0 10px 5px; margin-bottom: 15px; }
#contents .news dl .news_list dt { font-size: 1.4rem; color: #fff; padding-bottom: 2px; }
#contents .news dl .news_list dd { font-size: 1.4rem; color: #fff; }
#contents .news dl .news_list dd span { padding: 3px 10px; margin-right: 10px; font-size: 1.4rem; }
#contents .news dl .news_list dd span.important { background: #b62736; }
#contents .news dl .news_list dd span.info { background: #F08300; }
#contents .news dl .news_list dd span.recommendation { background: #b554d3; }
#contents .news dl .news_list dd span.maintenance { background: #4873BA; }
#contents .news dl .news_list dd span.branch { background: #464646; }
#contents .news dl .news_list dd span.release { background: #10c716; }
#contents .news dl .news_list dd a { color: #fff; }



/* ▼brand */
#contents .brand { position: relative; background: #F7F7F7; margin-top: 80px; padding: 50px 1% 20px; box-sizing: border-box; }
#contents .brand::before {
content: '';
background: #4873BA;
clip-path: polygon(0% 0%, 0% 100%, 100% 0% );
position: absolute;
width: 100px; height: 100px;
top: 0; left: 0px;
transition: all 0.3s ease; }

#contents .brand .illust { position: absolute; top: 20px; right: 3%; width: 35%; }


#contents .brand ul { display: flex; flex-wrap: wrap; justify-content: space-between; position: relative; z-index: 1; }
#contents .brand ul::after { content: ''; display: block; width: 48%; }
#contents .brand ul li { width: 48%; margin-bottom: 30px; background: #fff; }

#contents .brand ul li .txt { padding: 10px }
#contents .brand ul li .txt h3 {
color: #4873BA;
margin-bottom: 15px;
padding-bottom: 5px;
background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom;
background-size: 20px 1px;
}
#contents .brand ul li .txt p { font-size: 1.4rem; font-weight: 500; }



/* focus */
#contents .focus { position: relative; margin: 50px auto; }

#contents .focus .tit h2 { font-size: 3rem; text-align: left; margin-bottom: 20px; }
#contents .focus .tit h2 span { display: inline-block; padding-left: 10px; font-size: 1.4rem; }

#contents .focus ul { display: flex; flex-wrap: wrap; justify-content: space-between; }
#contents .focus ul::after { content: ''; display: block; width: 48%; }
#contents .focus ul li { width: 48%; margin-bottom: 20px; }
#contents .focus ul li:first-child { display: none; }
#contents .focus ul li a { position: relative; display: block; }
#contents .focus ul li a::after {
content: '';
border: 2px solid #F08300;
width: calc(100% - 14px); height: calc(100% - 14px);
position: absolute;
top: 5px; right: 5px;
opacity: 0.5;
}




/* pamphlet
--------------------------------------------*/
#pamphlet a.claim { position: fixed; bottom: 10%; right: 0px; z-index: 50; text-align: right; font-size: 1.4rem; background: #4873BA; color: #fff; padding: 15px; writing-mode: vertical-rl; display: inline-block; }

#pamphlet h2 { position: relative; margin-bottom: 30px; text-align: center; font-size: 2.2rem; padding-top: 15px; }
#pamphlet h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 40px; height: 13px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}

#pamphlet .pamphlet { margin-bottom: 100px; }
#pamphlet .pamphlet ul.list li { margin-bottom: 50px; }
#pamphlet .pamphlet ul.list li h3 { margin-top: 10px; }
#pamphlet .pamphlet ul.list li h3 span { display: block; font-size: 1.6rem; color: #F08300; margin-bottom: 5px; border-bottom: 1px dashed #8EACDD; }

#pamphlet .pamphlet .pamphlet_slick .slick-list { padding: 0 35% 30px 0 !important; }
#pamphlet .pamphlet .pamphlet_slick li { margin: 0 0.6% 0 0; }

#pamphlet .pamphlet .pamphlet_slick li h3 { margin-top: 10px; }
#pamphlet .pamphlet .pamphlet_slick li h3 span { display: block; font-size: 1.6rem; color: #F08300; margin-bottom: 5px; border-bottom: 1px dashed #8EACDD; }

#pamphlet .pamphlet .pamphlet_slick .slick-prev { left: -60px; }
#pamphlet .pamphlet .pamphlet_slick .slick-next { right: -30px; }
#pamphlet .pamphlet .pamphlet_slick .slick-prev::before,
#pamphlet .pamphlet .pamphlet_slick .slick-next::before { opacity: 1; color: #999; font-size: 30px; }

#pamphlet .pamphlet ul li .img { border: 2px solid #4873BA; }
#pamphlet .pamphlet ul li .more { margin-top: 20px; }




/* brand
--------------------------------------------*/
#brand .search { width: 90%; margin:  50px auto; position: relative; z-index: 1; }
#brand .search .panel_area { background: #fff; padding: 20px; border-top: 5px solid #8EACDD; border-bottom: 5px solid #8EACDD; }
#brand .search table { width: 100%; }
#brand .search table tr { display: block; padding-bottom: 15px; margin-bottom: 15px; border-bottom: 1px dashed #ccc; }
#brand .search table tr th { display: block; text-align: left; color: #F08300; padding-bottom: 5px; }
#brand .search table tr td { display: block; width: 90%; position: relative; }
#brand .search table tr td.selectbox { position: relative; }
#brand .search table tr td.selectbox::after{
position: absolute;
top: 35%;
right: 3%;
margin-top: -8px;
content: "▼";
color: #333;
}
#brand .search table tr td.selectbox::after{
pointer-events: none;
}
#brand .search table tr td select { width: 100%; padding: 10px; box-sizing: border-box; font-size: 1.4rem; border: 1px solid #999; -webkit-appearance:none; color: #333; }
#brand .search table tr td select[name="tf"],
#brand .search table tr td select[name="tt"] { width: calc(100% / 2 - 15px); }
#brand .search table tr td input { width: 100%; padding: 10px; box-sizing: border-box; font-size: 1.4rem; border: 1px solid #999; background: #fff; border-radius: 0; display: block; }
#brand .search table tr td .btn_reset { position: absolute; right: 3%; top: 18%; }

#brand .search table tr td p.radio input { display: none; }
#brand .search table tr td p.radio label { position: relative; padding-left: 25px; margin-right: 20px; font-size: 1.4rem; font-weight: 500; }
#brand .search table tr td p.radio label::before {
content: "";
background: #fff;
border: 2px solid #707070;
border-radius: 50%;
width: 13px; height: 13px;
position: absolute;
top: 0; bottom: 0; left: 0;
margin: auto;
transition: background-color .1s ease-out,border-color .1s ease-out;
}
#brand .search table tr td p.radio input:checked + label::before { background: #F08300; }

#brand .search table tr td input[name="input_plan"] { width: 50%; }
#brand .search table tr td input[name="input_keyword"] { width: 100%; }


#brand .search .search_btn { margin: 20px auto 0; }


#brand h2 { position: relative; margin-bottom: 30px; text-align: center; font-size: 2.2rem; padding-top: 15px; }
#brand h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 40px; height: 13px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}



#brand .pamphlet { margin-bottom: 100px; }
#brand .pamphlet .pamphlet_slick .slick-list { padding: 0 35% 30px 0 !important; }
#brand .pamphlet .pamphlet_slick li { margin: 0 0.6% 0 0; }

#brand .pamphlet .pamphlet_slick li h3 { margin-top: 10px; }
#brand .pamphlet .pamphlet_slick li h3 span { display: block; font-size: 1.6rem; color: #F08300; margin-bottom: 5px; border-bottom: 1px dashed #8EACDD; }

#brand .pamphlet .pamphlet_slick .slick-prev { left: -60px; }
#brand .pamphlet .pamphlet_slick .slick-next { right: -30px; }
#brand .pamphlet .pamphlet_slick .slick-prev::before,
#brand .pamphlet .pamphlet_slick .slick-next::before { opacity: 1; color: #999; font-size: 30px; }



#brand .tokusyu { position: relative; margin-bottom: 80px; }
#brand .tokusyu .illust { position: absolute; top: -50px; right: 2%; width: 35%; opacity: 0.4; z-index: -1; }
#brand .tokusyu ul { display: flex; flex-wrap: wrap; justify-content: space-between; background: #fff; }
#brand .tokusyu ul::after { content: ''; width: 32%; display: block; }
#brand .tokusyu ul li { width: 32%; margin-bottom: 5px; }
#brand .tokusyu ul li:first-child { width: 100%; }
#brand .tokusyu ul li a { position: relative; display: block; }
#brand .tokusyu ul li a::after {
content: '';
border: 2px solid #F08300;
width: calc(100% - 14px); height: calc(100% - 14px);
position: absolute;
top: 5px; right: 5px;
opacity: 0.5;
}



#brand .tour { position: relative; margin-bottom: 50px; }
#brand .tour .illust { position: absolute; top: -50px; left: 1%; width: 200px; opacity: 0.4; z-index: -1; }

#brand .tour ul { position: relative; }
#brand .tour ul li { margin-bottom: 30px; position: relative; }
#brand .tour ul li.no-results { width: 100%; text-align: center; }
#brand .tour ul li a .hover_wrap { overflow: hidden; }
#brand .tour ul li a .hover_wrap .position { opacity: 0; }
#brand .tour ul li a .hover_wrap .img { position: relative; text-align: center; background: #fff; }
#brand .tour ul li a .hover_wrap .img span { position: absolute; bottom: 0; left: 0; width: 100%; display: block; z-index: 1; text-align: left; padding: 2px 8px; box-sizing: border-box; color: #fff; font-size: 1.4rem; }
#brand .tour ul li a .hover_wrap .img span.yuttarina { background: rgba(238, 38, 45, 0.8); }
#brand .tour ul li a .hover_wrap .img span.toilet_yuttarina { background: rgba(113, 191, 71, 0.8); }
#brand .tour ul li a .hover_wrap .img span.tyu_yuttarina { background: rgba(150, 103, 49, 0.8); }
#brand .tour ul li a .hover_wrap .img img.abso { position: absolute; margin: auto; left: 0; top: 0; bottom: 0; right: 0; }

#brand .tour ul li .txt { padding: 10px; background: #F7F7F7; }
#brand .tour ul li .txt h3 { padding: 10px 0; }
#brand .tour ul li .txt h3 span { padding: 5px 10px; color: #fff; position: absolute; top: 0; left: 0; background: #F08300; font-size: 1.6rem; }
#brand .tour ul li .txt p { font-size: 1.4rem; font-weight: 500; margin-bottom: 10px; }
#brand .tour ul li .txt p span { width: 30%; display: inline-block; background: #8EACDD; color: #fff; padding: 3px 5px; margin-right: 10px; text-align: center; }



/* hiking */
#brand.hiking .banner { position: relative; margin-bottom: 50px; }
#brand.hiking .banner .illust { position: absolute; top: -50px; left: 1%; width: 200px; opacity: 0.4; z-index: -1; }
#brand.hiking .banner ul li { position: relative; margin: 0 0 30px; }
#brand.hiking .banner ul li .txt { padding: 30px 15px 10px; box-sizing: border-box; position: absolute; width: 100%; bottom: 0; background: linear-gradient(0deg,rgba(0,0,0,.7),transparent); }
#brand.hiking .banner ul li .txt p { font-size: 1.3rem; font-weight: 500; color: #fff; background: #F08300; padding: 2px 5px; display: inline-block; margin-bottom: 5px; }
#brand.hiking .banner ul li .txt h3 { font-size: 1.8rem; color: #fff; }



/* junrei */
#brand.junrei .kokoroe { position: relative; margin-bottom: 100px; }
#brand.junrei .kokoroe .txtbox { width: 90%; margin: 0 auto 30px; border: 3px solid #F08300; background: #fff; }
#brand.junrei .kokoroe .txtbox h3 { background: #F08300; color: #fff; font-size: 1.8rem; padding: 10px 20px; }
#brand.junrei .kokoroe .txtbox p { padding: 30px 20px; }
#brand.junrei .btnbox { margin: 0 auto 30px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
#brand.junrei .btnbox { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
#brand.junrei .more { width: 48%; margin: 20px auto 0; }

#brand.junrei .banner { position: relative; margin-bottom: 50px; }
#brand.junrei .banner .illust { position: absolute; top: -50px; left: 1%; width: 200px; opacity: 0.4; z-index: -1; }
#brand.junrei .banner ul li { position: relative; margin: 0 0 30px; }
#brand.junrei .banner ul li .txt { padding: 30px 15px 10px; box-sizing: border-box; position: absolute; width: 100%; bottom: 0; background: linear-gradient(0deg,rgba(0,0,0,.7),transparent); }
#brand.junrei .banner ul li .txt p { font-size: 1.3rem; font-weight: 500; color: #fff; background: #F08300; padding: 2px 5px; display: inline-block; margin-bottom: 5px; }
#brand.junrei .banner ul li .txt h3 { font-size: 1.8rem; color: #fff; }


#junrei_saigoku h2 { position: relative; margin-bottom: 30px; text-align: center; font-size: 2.2rem; padding-top: 15px; }
#junrei_saigoku h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 40px; height: 13px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}
#junrei_saigoku .cont01 { position: relative; width: 90%; margin: 0 auto 50px; border: 3px solid #F08300; background: #fff; }
#junrei_saigoku .cont01 h3 { background: #F08300; color: #fff; font-size: 1.8rem; padding: 10px 20px; }
#junrei_saigoku .cont01 p { padding: 30px 20px; }

#junrei_saigoku .cont02 { position: relative; margin-bottom: 50px; }
#junrei_saigoku .cont02 .is-layout-flex { display: block; background: #f7f7f7; padding: 30px; margin-top: 20px; }
#junrei_saigoku .cont02 .box { width: 100%; position: relative; margin-bottom: 20px; }
#junrei_saigoku .cont02 .box figure { border: 2px solid #F08300; box-sizing: border-box; }
#junrei_saigoku .cont02 .box h3 {
font-size: 1.8rem;
margin: 20px 0 10px;
padding-bottom: 10px;
background: linear-gradient(to right, #4873BA 10px, transparent 10px) repeat-x left bottom;
background-size: auto;
background-size: 20px 1px; }
#junrei_saigoku .cont02 .box h3 code { position: absolute; top: 0; left: 0; background: #F08300; padding: 5px 10px; color: #fff; font-family: 'Zen Kaku Gothic New', sans-serif; }

#junrei_saigoku .cont03 { position: relative; width: 80%; margin: 0 auto 30px; padding: 10px 20px; background: #8EACDD; }
#junrei_saigoku .cont03 h3 {
color: #fff;
font-size: 1.8rem;
margin: 20px 0 10px;
padding-bottom: 20px;
background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom;
background-size: auto;
background-size: 20px 2px; }
#junrei_saigoku .cont03 ul { list-style: disc; padding: 10px; color: #fff; }

#junrei_saigoku .more { position: relative; margin-bottom: 50px; }


#junrei_shikoku h2 { position: relative; margin-bottom: 30px; text-align: center; font-size: 2.2rem; padding-top: 15px; }
#junrei_shikoku h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 40px; height: 13px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}
#junrei_shikoku .cont01 { position: relative; width: 90%; margin: 0 auto 50px; border: 3px solid #F08300; background: #fff; }
#junrei_shikoku .cont01 h3 { background: #F08300; color: #fff; font-size: 1.8rem; padding: 10px 20px; }
#junrei_shikoku .cont01 p { padding: 30px 20px; }

#junrei_shikoku .cont02 { position: relative; margin-bottom: 50px; }
#junrei_shikoku .cont02 .is-layout-flex { display: block; background: #f7f7f7; padding: 30px; margin-top: 20px; }
#junrei_shikoku .cont02 .box { width: 100%; position: relative; margin-bottom: 20px; }
#junrei_shikoku .cont02 .box figure { border: 2px solid #F08300; box-sizing: border-box; }
#junrei_shikoku .cont02 .box h3 {
font-size: 1.8rem;
margin: 20px 0 10px;
padding-bottom: 10px;
background: linear-gradient(to right, #4873BA 10px, transparent 10px) repeat-x left bottom;
background-size: auto;
background-size: 20px 1px; }
#junrei_shikoku .cont02 .box h3 code { position: absolute; top: 0; left: 0; background: #F08300; padding: 5px 10px; color: #fff; font-family: 'Zen Kaku Gothic New', sans-serif; }

#junrei_shikoku .cont03 { position: relative; width: 80%; margin: 0 auto 30px; padding: 10px 20px; background: #8EACDD; }
#junrei_shikoku .cont03 h3 {
color: #fff;
font-size: 1.8rem;
margin: 20px 0 10px;
padding-bottom: 20px;
background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom;
background-size: auto;
background-size: 20px 2px; }
#junrei_shikoku .cont03 ul { list-style: disc; padding: 10px; color: #fff; }

#junrei_shikoku .more { position: relative; margin-bottom: 50px; }



/* kobe */
#brand.kobe .title { width: 90%; margin: 0 auto 50px; }
#brand.kobe .title .tag { margin-bottom: 10px; }
#brand.kobe .title .tag span { background: #F08300; padding: 3px 10px; margin-right: 10px; font-size: 1.4rem; color: #fff; display: inline-block; }
#brand.kobe .title h2 { font-size: 2.2rem; margin-bottom: 0; text-align: left; }
#brand.kobe .title h2 strong { font-size: 3rem; }
#brand.kobe .title h2 span { color: #4873BA; width: 100%; }
#brand.kobe .main_img { width: 90%; margin: auto; }


#brand.kobe .point {position: relative; width: 80%; margin: -50px auto 100px; background: #8EACDD; padding: 30px; box-sizing: border-box; z-index: 1; color: #fff; }
#brand.kobe .point h4 { position: relative; font-size: 2rem; margin-bottom: 10px; padding-right: 60px; display: inline-block; }
#brand.kobe .point h4::after {
content: '';
border-top: 3px solid #F08300;
width: 50px;
position: absolute;
top: 45%; right: 0;
}
#brand.kobe .point p { border-top: 1px dashed #fff; font-weight: 500; padding-top: 20px; }


#brand.kobe h3 { margin-bottom: 30px; text-align: center; font-size: 2.2rem; }
#brand.kobe h3 span img { width: 40px; margin: auto; line-height: 1; display: block; }

#brand.kobe .box { width: 90%; margin: 0 auto 100px; background: #f7f7f7; padding: 50px; box-sizing: border-box; }
#brand.kobe .box h4 { margin-bottom: 30px; font-size: 3rem; color: #F08300; }
#brand.kobe .box h4 span { color: #333; font-size: 2.2rem; }

#brand.kobe .box dl { border: 3px solid #8EACDD; }
#brand.kobe .box dl dt { background: #8EACDD; padding: 10px 15px; box-sizing: border-box; color: #fff; }
#brand.kobe .box dl dd { background: #fff; padding: 20px; box-sizing: border-box; font-size: 1.4rem; }

#brand.kobe .box .flexwrap {  }
#brand.kobe .box .flexwrap .txtbox { width: 100%; }
#brand.kobe .box .flexwrap .txtbox table { width: 100%; margin-bottom: 30px; }
#brand.kobe .box .flexwrap .txtbox table th { width: 25%; background: #8EACDD; padding: 10px 5px; text-align: center; border: 1px solid #8EACDD; color: #fff; }
#brand.kobe .box .flexwrap .txtbox table td { background: #fff; padding: 10px 5px; text-align: center; border: 1px solid #8EACDD; }
#brand.kobe .box .flexwrap .imgbox { width: 100%; }
#brand.kobe .box .flexwrap .imgbox p { margin-top: 10px; color: #F08300; font-size: 1.4rem; }

#brand.kobe .box.kotei table { width: 100%; }
#brand.kobe .box.kotei table th { width: 5%; background: #8EACDD; padding: 10px 5px; text-align: center; border: 1px solid #8EACDD; color: #fff; }
#brand.kobe .box.kotei table td { background: #fff; padding: 10px 5px; border: 1px solid #8EACDD; }
#brand.kobe .box.kotei table td span { color: #F08300; }

#brand.kobe .box.kotei p { margin-top: 10px; color: #F08300; font-size: 1.4rem; }



/* cruise */
#brand.cruise .tour { text-align: center; }
#brand.cruise h3 { margin-bottom: 30px; font-size: 2rem; background: #c9deff; display: inline-block; padding: 10px 80px; color: #d90000; }
#brand.cruise .main_img { width: 90%; margin: auto; display: flex; flex-wrap: wrap; }
#brand.cruise .main_img img { width: 100%; }
#brand.cruise p { text-align: center; font-size: 1.4rem; margin-top: 10px; }




/* fixed
--------------------------------------------*/
#fixed h2 { position: relative; margin-bottom: 30px; text-align: center; font-size: 2.2rem; padding-top: 15px; }
#fixed h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 40px; height: 13px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}


#fixed .cont01 { position: relative; margin-bottom: 50px; }
#fixed .cont01 figure { margin-bottom: 30px; }
#fixed .cont01 p { margin-top: 30px; }
#fixed .cont01 p a { color: #F08300; border-bottom: 1px solid #F08300; }


#fixed .tour { position: relative; margin-bottom: 50px; }
#fixed .tour .illust { position: absolute; top: -50px; left: 1%; width: 200px; opacity: 0.4; z-index: -1; }

#fixed .tour ul { position: relative; }
#fixed .tour ul li { margin-bottom: 30px; position: relative; }
#fixed .tour ul li.no-results { width: 100%; text-align: center; }
#fixed .tour ul li a .hover_wrap { overflow: hidden; }
#fixed .tour ul li a .hover_wrap .img { text-align: center; background: #ccc; }

#fixed .tour ul li .txt { padding: 10px; background: #F7F7F7; }
#fixed .tour ul li .txt h3 { padding: 10px 0; }
#fixed .tour ul li .txt h3 span { padding: 5px 10px; color: #fff; position: absolute; top: 0; left: 0; background: #F08300; font-size: 1.6rem; }
#fixed .tour ul li .txt p { font-size: 1.4rem; font-weight: 500; margin-bottom: 10px; }
#fixed .tour ul li .txt p span { width: 30%; display: inline-block; background: #8EACDD; color: #fff; padding: 3px 5px; margin-right: 10px; text-align: center; }




/* news
--------------------------------------------*/
#news h2 { position: relative; margin-bottom: 30px; text-align: center; font-size: 2.2rem; padding: 15px 0; background: linear-gradient(to right, #8EACDD 10px, transparent 10px) repeat-x left bottom;
background-size: 20px 0.5px; }
#news h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 40px; height: 13px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}

#news .cont01 { position: relative; margin-bottom: 50px; }

#news .cont01 dl {  }
#news .cont01 dl .news_list { padding: 0 20px 10px; margin-bottom: 20px; border-bottom: 1px solid #8EACDD; }
#news .cont01 dl .news_list dt { margin-bottom: 5px; color: #8EACDD; font-size: 1.4rem; }
#news .cont01 dl .news_list dd { font-weight: 400; font-size: 1.4rem; }
#news .cont01 dl .news_list dd span { padding: 3px 10px; margin-right: 10px; color: #fff; }
#news .cont01 dl .news_list dd span.important { background: #b62736; }
#news .cont01 dl .news_list dd span.info { background: #F08300; }
#news .cont01 dl .news_list dd span.recommendation { background: #b554d3; }
#news .cont01 dl .news_list dd span.maintenance { background: #4873BA; }
#news .cont01 dl .news_list dd span.branch { background: #464646; }
#news .cont01 dl .news_list dd span.release { background: #10c716; }


#news .cont01 #update { position: relative; text-align: right; margin-bottom: 50px; box-sizing: border-box; position: relative; }
#news .cont01 #update span { color: #4873BA; }
#news .cont01 p { margin-top: 30px; }
#news .cont01 p a { color: #F08300; border-bottom: 1px solid #F08300; }
#news .cont01 .wp-block-file a { color: #F08300; border-bottom: 1px solid #F08300; }
#news .cont01 .wp-block-file a.wp-block-file__button { color: #fff; border-bottom: none; }




/* boarding
--------------------------------------------*/
#boarding h2 { position: relative; margin-bottom: 30px; text-align: center; font-size: 2.2rem; padding-top: 15px; }
#boarding h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 40px; height: 13px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}

#boarding .cont01 { position: relative; margin-bottom: 50px; }
#boarding .cont01 .txt { width: 90%; margin: 0 auto 50px; font-size: 1.4rem; text-align: center; }
#boarding .cont01 .txt strong { font-size: 1.8rem; }
#boarding .cont01 .txt code { display: block; padding: 3px 0; color: #F08300; font-family: YakuHanJPs, '游ゴシック体', 'Yu Gothic', YuGothic, sans-serif; }

#boarding .cont01 .box {width: 48%; margin-bottom: 50px; background: #F7F7F7; }
#boarding .cont01 .box h3 { background: #8EACDD; color: #fff; padding: 5px 10px; }
#boarding .cont01 .box .img { padding: 20px 10px 0; }
#boarding .cont01 .box h4 { margin-top: 5px; font-size: 1.4rem; padding: 0 10px; }
#boarding .cont01 .box p { font-size: 1.4rem; }
#boarding .cont01 .box .more { width: 85%; margin: 10px 10px 20px; }

#boarding .cont02 { position: relative; margin-bottom: 50px; }
#boarding .cont02 .map_img { width: 80%; margin: auto; }




/* faq
--------------------------------------------*/
#faq .txt { width: 90%; margin: 0 auto 50px; font-size: 1.4rem; text-align: center; }

#faq .mokuji { background: #f7f7f7; padding: 20px 3%; box-sizing: border-box; margin-bottom: 50px; }
#faq .mokuji h3 { font-size: 1.8rem; margin-bottom: 30px; padding: 0 10px 10px; background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom; background-size: 20px 1px; }

#faq .mokuji ul { padding: 0 10px; }
#faq .mokuji ul li { position: relative; padding-left: 1.4em; font-size: 1.4rem; margin-bottom: 15px; }
#faq .mokuji ul li::before {
content: '▼';
color: #F08300;
position: absolute;
top: 0; left: 0;
}

#faq .cont01 { position: relative; margin-bottom: 50px; }

#faq .cont01 h2 { position: relative; margin-bottom: 30px; text-align: center; font-size: 2.2rem; padding-top: 15px; }
#faq .cont01 h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 40px; height: 13px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}

#faq .cont01 dl { background: #f7f7f7; padding: 30px 5%; box-sizing: border-box; }
#faq .cont01 dl .items { margin-bottom: 30px; }
#faq .cont01 dl .items:last-child { margin-bottom: 0; }
#faq .cont01 dl .items dt { font-size: 1.6rem; margin-bottom: 20px; padding: 0 10px 10px; background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom; background-size: 20px 1px; padding-top: 100px; margin-top: -100px; box-sizing: border-box; }
#faq .cont01 dl .items dd { background: #fff; padding: 20px; box-sizing: border-box; font-size: 1.4rem; }
#faq .cont01 dl .items dd a { color: #8EACDD; border-bottom: 1px solid #8EACDD; }




/* contact
--------------------------------------------*/
#contact .index { position: relative; margin-bottom: 50px; }
#contact .index .flexwrap {  }
#contact .index .flexwrap .box { position: relative; margin-bottom: 100px; background: #F7F7F7; padding: 30px; box-sizing: border-box; }
#contact .index .flexwrap .box h2 { position: relative; margin-bottom: 30px; padding-bottom: 30px; text-align: center; font-size: 2.6rem; padding-top: 20px; background: linear-gradient(to right, #F08300 10px, transparent 10px) repeat-x left bottom; background-size: 20px 1px; }
#contact .index .flexwrap .box h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 50px; height: 17px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}

#contact .index .flexwrap .box p {  }
#contact .index .flexwrap .more { width: 80%; }

#contact .index .flexwrap .more_box { margin-top: 20px; }
#contact .index .flexwrap .more_box h4 { background: #8EACDD; color: #fff; padding: 5px 10px; font-size: 1.8rem; }
#contact .index .flexwrap .more_box p { text-align: center; padding: 20px; box-sizing: border-box; background: #fff; }
#contact .index .flexwrap .more_box .more { margin: 20px auto; }



#request .cont01 { position: relative; margin-bottom: 50px; }
#request .cont01 h2 { position: relative; margin-bottom: 30px; text-align: center; font-size: 2.2rem; padding-top: 15px; }
#request .cont01 h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 40px; height: 13px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}
#request .cont01 p.txt { margin-bottom: 20px; }
#request .cont01 p.bg_txt { width: 90%; margin: 20px auto 0; border: 3px solid #F08300; padding: 20px 10px; box-sizing: border-box; font-size: 1.4rem; }

#request .cont01 table { display: block; background: #8EACDD; padding: 30px; box-sizing: border-box; }
#request .cont01 table tbody { width: 100%; display: block; background: linear-gradient(to right, #f7f7f7 10px, transparent 10px) repeat-x left top; background-size: 20px 1px; }
#request .cont01 table tr { display: block; padding: 20px 10px; background: linear-gradient(to right, #f7f7f7 10px, transparent 10px) repeat-x left bottom; background-size: 20px 1px; }
#request .cont01 table tr th { display: block; text-align: left; color: #fff; margin-bottom: 10px; }
#request .cont01 table tr td { display: block; font-weight: 400; color: #fff; }
#request .cont01 table tr td p { font-size: 1.4rem; }
#request .cont01 table tr td span.error { display: block; color: #ed2717; }
#request .cont01 table tr td input { padding: 10px 20px; box-sizing: border-box; background: #fff; border: 1px solid transparent; }

/* チェックボックス */
#request .cont01 table tr td .checkbox__item { display: none; }
/* spanの左側にボタンを配置するスペースを作る */
#request .cont01 table tr td .checkbox__item + span { margin-right: 10px; padding-left: 1.5em; display: inline-block; position: relative; }
/* 各パーツを作成 */
#request .cont01 table tr td .checkbox__item + span::after,
#request .cont01 table tr td .checkbox__item + span::before {
content: '';
display: block;
border: 3px solid #8EACDD;
background: #fff;
width: 15px; height: 15px;
position: absolute;
top: 15%; left: 0;
}
/* after上書き */
#request .cont01 table tr td .checkbox__item + span::after{
content: "✔";
opacity: 0;
color: #F08300;
font-size: 1.4rem;
line-height: 1;
text-align: center;
}
/* checked状態 ボタンのopacityを変更 */
#request .cont01 table tr td .checkbox__item:checked + span::after { opacity: 1; }

#request .cont01 table tr td input[type=text],
#request .cont01 table tr td input[name="input_mail"] { width: 100%; }

#request .cont01 table tr td input[name="input_tel1"],
#request .cont01 table tr td input[name="input_tel2"],
#request .cont01 table tr td input[name="input_tel3"],
#request .cont01 table tr td input[name="input_zip1"],
#request .cont01 table tr td input[name="input_zip2"] { width: 27%; }

#request .cont01 .more input[type=submit] { width: 100%; color: #fff; background: #4873BA; border: 2px solid #4873BA; padding: 20px 0; text-align: center; transition: all 0.3s ease; }



#tours .cont01 { position: relative; margin-bottom: 50px; }
#tours .cont01 h2 { position: relative; margin-bottom: 30px; text-align: center; font-size: 2.2rem; padding-top: 15px; }
#tours .cont01 h2::before {
content: '';
background: url("../images/com/title_ashirai.svg") no-repeat center;
background-size: cover;
width: 40px; height: 13px;
position: absolute;
top: 0; right: 0; left: 0;
margin: auto;
}
#tours .cont01 h3 { margin-top: 40px; padding-bottom: 10px; margin-bottom: 20px; border-bottom: 2px dashed #8EACDD; }
#tours .cont01 p.txt { margin-bottom: 20px; }
#tours .cont01 p.bg_txt { width: 90%; margin: 20px auto 0; border: 3px solid #F08300; padding: 20px 10px; box-sizing: border-box; font-size: 1.4rem; }

#tours .cont01 table { display: block; background: #8EACDD; padding: 30px; box-sizing: border-box; }
#tours .cont01 table tbody { width: 100%; display: block; background: linear-gradient(to right, #f7f7f7 10px, transparent 10px) repeat-x left top; background-size: 20px 1px; }
#tours .cont01 table tr { display: block; padding: 20px 10px; background: linear-gradient(to right, #f7f7f7 10px, transparent 10px) repeat-x left bottom; background-size: 20px 1px; }
#tours .cont01 table tr th { display: block; text-align: left; color: #fff; margin-bottom: 10px; }
#tours .cont01 table tr td { display: block; font-weight: 400; color: #fff; }
#tours .cont01 table tr td p { font-size: 1.4rem; }
#tours .cont01 table tr td span.error { display: block; color: #ed2717; }
#tours .cont01 table tr td input { padding: 10px 20px; box-sizing: border-box; background: #fff; border: 1px solid transparent; }

/* チェックボックス */
#tours .cont01 table tr td .radio__item { display: none; }
/* spanの左側にボタンを配置するスペースを作る */
#tours .cont01 table tr td .radio__item + span { margin-right: 10px; padding-left: 1.5em; display: inline-block; position: relative; }
/* 各パーツを作成 */
#tours .cont01 table tr td .radio__item + span::after,
#tours .cont01 table tr td .radio__item + span::before {
content: '';
display: block;
border: 3px solid #8EACDD;
background: #fff;
width: 15px; height: 15px;
position: absolute;
top: 15%; left: 0;
}
/* after上書き */
#tours .cont01 table tr td .radio__item + span::after{
content: "✔";
opacity: 0;
color: #F08300;
font-size: 1.4rem;
line-height: 1;
text-align: center;
}
/* checked状態 ボタンのopacityを変更 */
#tours .cont01 table tr td .radio__item:checked + span::after { opacity: 1; }

#tours .cont01 table tr td input[type=text],
#tours .cont01 table tr td input[name="input_mail"] ,
#tours .cont01 table tr td input[name="confirm_system_mail"],
#tours .cont01 table tr td textarea[name="input_message"] { width: 100%; }

#tours .cont01 .more input[type=submit] { width: 100%; color: #fff; background: #4873BA; border: 2px solid #4873BA; padding: 20px 0; text-align: center; transition: all 0.3s ease; }





}