@charset "utf-8";
/*
Theme Name:Precious
Theme URI:https://tcd-theme.com/tcd019
Description: WordPress theme "Precious" can promotes your products as if it were an e-commerce site. Take advantage of the widgets to promote your products efficiently and the ads space to announce your best-selling products.
Author:TCD
Author URI:https://tcd-theme.com/
Text Domain:tcd-precious
Version:4.1.2
*/

/* --------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
-------------------------------------------------------------------------------- */



/* ----------------------------------------------------------------------
 basic setting
---------------------------------------------------------------------- */

a img { border:none; verticle-align:top; }
a, a:visited { outline:none; color:#333; }
a:hover { color:#00a2d9; }

ul { list-style-type:none; margin:0 0 2em 0; padding:0; line-height:0%; }
ul li { margin:0; padding:0; line-height:normal; zoom:1; }
ol { margin:0 0 2em 19px; padding:0; }
ol li { padding:0 0 5px 0; line-height:normal; }
dl { list-style-type:none; margin:0 0 1em 0; padding:0; line-height:0%; }
dl dt, dl dd { margin:0; padding:0; line-height:normal; zoom:1; }
dl dt { font-weight:bold; }
form,table,input,textarea,dl,dt,dd { margin:0; padding:0; }
table { border-collapse:collapse; width:100%; border:0; }
cite { text-align:right; display:block; }
object { display:block; margin:0 auto; height:auto; }
del { color:#333; }
hr { border:1px solid #ccc; margin:40px 0; }
.wp-caption-text { text-align:center; }
.alignright { float:right; }
.alignleft { float:left; }
.aligncenter { margin-left:auto; margin-right:auto; }
.centered { margin-left:auto; margin-right:auto; }
.clear { clear:both; }
input[type="text"], input[type="password"], textarea, select { outline: none; }

.hide { display:none; }


/* --- WordPress preset CSS ----------------------------------------------------------------------------------------- */

.post p { line-height:2; margin:0 0 2em 0; }

/* headline */
.post h1, .post h2, .post h3, .post h4, .post h5, .post h6 { clear:both; line-height:1.2; font-weight:600; margin:0 0 24px 0; }
.post h1 { font-size:150%; }
.post h2 { font-size:140%; }
.post h3 { font-size:130%; }
.post h4 { font-size:120%; }
.post h5 { font-size:110%; }
.post h6 { font-size:100%; }

/* image */
.post img { height:auto; max-width:100%; }
.post img.centered,div.centered { display:block; margin:15px auto; }
.post img.aligncenter,div.aligncenter { display:block; margin:15px auto; }
.post img.alignright,div.alignright { margin:10px 0 30px 30px; display:inline; }
.post img.alignleft,div.alignleft { margin:10px 30px 30px 0; display:inline; }
.post .wp-caption { background:#fff; border:1px solid #ccc; max-width:96%; padding:14px 3px 1px; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; }
.post .wp-caption img { display:block; margin:0 auto; max-width:100%; }
.post .wp-caption .wp-caption-text { padding:10px 0 0; }

/* table */
.post table { margin:0 0 24px 0; }
.post td, .post th { border:1px solid #ccc; padding:10px 15px 7px; line-height:2; }
.post th { background:#f2f2f2; font-weight:normal; }

/* block quote */
.post blockquote { margin:0 0 24px 0; padding:27px 30px 1px; background:#f2f2f2; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; position:relative; }
.post blockquote:before { content: '"'; font-style:italic; font-size:30px; font-weight:normal; line-height:40px; width:30px; height:30px; position:absolute; top:5px; left:10px; color:#999; }
.post blockquote:after { content: '"'; font-style:italic; font-size:30px; font-weight:normal; text-align:left; line-height:60px; width:30px; height:30px; position:absolute; bottom:7px; right:-2px; color:#999; }

/* list */
.post li, .post dt, .post dd { line-height:2; }
.post ul, .post ol, .post dl { margin-bottom:24px; }
.post ol { list-style:decimal outside none; margin-left:1.5em; }
.post ul { list-style:disc outside none; margin-left:1.3em; }
.post li > ul, .post li > ol { margin-bottom:0; }
.post dt { font-weight:bold; }
.post dd { margin-bottom:1em; }

/* captions */
.post .wp-caption { margin-bottom:24px; background:#fff; border:1px solid #ccc; padding:5px; max-width:100%; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; }
.post .wp-caption-text { text-align:center; font-size:12px; font-style:italic; line-height:2; margin:9px auto; }
.post .wp-caption img[class*="wp-image-"] { display:block; margin:0 auto; }

/* etc */
.post pre { margin:0 0 24px 0; line-height:1.5; background:#f2f2f2; padding:15px; overflow:auto; white-space:pre-wrap; word-wrap:break-word; }

/* next page */
#post_pagination { margin:0 0 30px 0; clear:both; }
#post_pagination h5 { margin:0 10px 0 0; float:left; line-height:30px; font-size:12px; }
#post_pagination a, #post_pagination p { float:left; display:inline-block; background:#eee; margin:0 5px 0 0; width:30px; height:30px; line-height:30px; text-align:center; text-decoration:none; color:#333; -moz-border-radius:3px; -khtml-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; font-size:12px; }
#post_pagination p { background:#999; color:#fff; }
#post_pagination a:hover { background:#333; color:#fff; }



/* ----------------------------------------------------------------------
 side content
---------------------------------------------------------------------- */
.side_widget { margin:0 0 40px 0; font-size:11px; overflow:hidden; }
.side_widget ul { margin:0; }
.side_widget li ul { margin:10px 0 0 0; }
.side_widget li { line-height:170%; margin:0 0 10px 0; padding:0 0 0 9px; background:url(img/common/bullet1.gif) no-repeat left 8px; }
.side_widget a { text-decoration: none; }
.side_widget img { height:auto; max-width:100%; width:auto; }
.side_headline { border-bottom:1px solid #ddd; padding:0; margin:0 0 25px 0; font-size:18px; }
.side_headline span { border-bottom:4px solid #ccc; padding:0 0 10px 0; margin:0; display:inline-block; }


/* banner */
#side_col .ad_widget, #side_col .ad_widget2 { background:none; border:none; padding:0; text-align:center; }


/* calendar */
#wp-calendar { margin:0 auto; width:100%; font-size:11px; border-collapse:separate; table-layout:fixed; }
#wp-calendar th, #wp-calendar td { color:#333; padding:0; line-height:340%; text-align:center; }
#wp-calendar td a { display:block; margin:0; padding:0; text-decoration:none; color:#333; background-color:#eee; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; -webkit-transition-property:background; -webkit-transition-duration:0.4s; -webkit-transition-timing-function:ease; -moz-transition-property:background; -moz-transition-duration:0.4s; -moz-transition-timing-function:ease; -o-transition-property:background; -o-transition-duration:0.4s; -o-transition-timing-function:ease; }
#wp-calendar td a:hover { text-decoration:none; color:#fff; background:#00a2d9; }
#wp-calendar caption { padding:7px 0; }
#wp-calendar thead th, #wp-calendar tfoot td { border:none; padding:0; line-height:200%; }
#wp-calendar #prev, #wp-calendar #next { line-height:200%; }
#wp-calendar #prev a, #wp-calendar #next a { text-decoration:none; background:none; color:#333; }
#wp-calendar #prev a:hover, #wp-calendar #next a:hover { -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; color:#fff; background:#00a2d9; }
#wp-calendar td#today { color:#fff; background:#c1c1c1; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; }
#footer #wp-calendar td a { background-color:#ddd; }
#footer #wp-calendar td a:hover { background-color:#00a2d9; }


/* search */
.widget_search label { display:none; }
.widget_search #search-box, .widget_search #s, .google_search #search_input
 { width:238px; height:33px; margin:0 0 10px 0; border:1px solid #ccc; background:#fff; padding:0 10px; box-shadow:2px 2px 3px 0px #ddd inset; }
.widget_search #search-btn input, .widget_search #searchsubmit, .google_search #search_button
 { border:none; text-indent:-9999px; width:33px; height:33px; background:#222 url(img/common/search.png) no-repeat center; cursor:pointer; display:block; float:right; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; }
.widget_search #search-btn input:hover, .widget_search #searchsubmit:hover, .google_search #search_button:hover
 { background-color:#00a2d9; }


/* archive category dropdown */
.widget_archive select, .widget_categories select { border:1px solid #ddd; padding:6px 10px; width:100%; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; margin:0 0 20px 0; }


/* recent post */
.tcd_recent_post_widget ol { margin:0; padding:0; list-style-type:none; }
.tcd_recent_post_widget li { padding:0 0 14px 0; margin:0 0 14px 0; line-height:100%; border-bottom:1px dotted #aaa; background:none; }
.tcd_recent_post_widget li:last-child { border:none; margin:0; padding:0; }
.tcd_recent_post_widget a.image { display:block; float:left; width:65px; height:65px; margin:0 15px 0 0; background:#fff; border:1px solid #ccc; }
.tcd_recent_post_widget a.image img { display:block; margin:0; -webkit-transition-property:opacity; -webkit-transition-duration:0.5s; -webkit-transition-timing-function:ease; -moz-transition-property:opacity; -moz-transition-duration:0.5s; -moz-transition-timing-function:ease; -o-transition-property:opacity; -o-transition-duration:0.5s; -o-transition-timing-function:ease; }
.tcd_recent_post_widget a.image:hover img { opacity:0.5; }
.tcd_recent_post_widget .date { margin:0 0 10px 0; padding:0; line-height:100%; font-size:11px; }
.tcd_recent_post_widget a.title { margin:0; text-decoration:none; font-size:14px; line-height:160%; font-weight:bold; }
.tcd_recent_post_widget a.title:hover { }


/* product list */
.tcdw_product_list_widget ol { margin:0; padding:0; list-style-type:none; }
.tcdw_product_list_widget li { padding:0 0 14px 0; margin:0 0 14px 0; line-height:100%; border-bottom:1px dotted #aaa; background:none; }
.tcdw_product_list_widget li:last-child { border:none; margin:0; padding:0; }
.tcdw_product_list_widget a.image { display:block; float:right; width:65px; height:65px; margin:0 0 0 15px; background:#fff; border:1px solid #ccc; }
.tcdw_product_list_widget a.image img { display:block; margin:0; -webkit-transition-property:opacity; -webkit-transition-duration:0.5s; -webkit-transition-timing-function:ease; -moz-transition-property:opacity; -moz-transition-duration:0.5s; -moz-transition-timing-function:ease; -o-transition-property:opacity; -o-transition-duration:0.5s; -o-transition-timing-function:ease; }
.tcdw_product_list_widget a.image:hover img { opacity:0.5; }
.tcdw_product_list_widget a.title { margin:0; text-decoration:none; font-size:14px; line-height:160%; font-weight:bold; }
.tcdw_product_list_widget a.title:hover { }
.tcdw_product_list_widget .category { margin:0 0 5px 0; color:#aaa; }
.tcdw_product_list_widget .category a { color:#aaa; text-decoration:none; }
.tcdw_product_list_widget .category a:hover { text-decoration:underline; color:#333; }
#footer .tcdw_product_list_widget li { padding:0 0 14px 0; margin:0 0 14px 0; line-height:100%;  }


/* product list2 */
.tcdw_product_list_widget2 ol { margin:0; padding:0; list-style-type:none; }
.tcdw_product_list_widget2 li { padding:8px; margin:0 0 14px 0; line-height:100%; background:#fff; border:1px solid #ccc; }
.tcdw_product_list_widget2 li:last-child { margin-bottom:0; }
.tcdw_product_list_widget2 a.image { display:block; float:left; width:65px; height:65px; margin:0 15px 0 0; background:#fff; }
.tcdw_product_list_widget2 a.image img { display:block; margin:0; -webkit-transition-property:opacity; -webkit-transition-duration:0.5s; -webkit-transition-timing-function:ease; -moz-transition-property:opacity; -moz-transition-duration:0.5s; -moz-transition-timing-function:ease; -o-transition-property:opacity; -o-transition-duration:0.5s; -o-transition-timing-function:ease; }
.tcdw_product_list_widget2 a.image:hover img { opacity:0.5; }
.tcdw_product_list_widget2 a.title { margin:0; text-decoration:none; font-size:14px; line-height:160%; font-weight:bold; }
.tcdw_product_list_widget2 a.title:hover { }
.tcdw_product_list_widget2 .category { margin:0 0 5px 0; color:#aaa; }
.tcdw_product_list_widget2 .category a { color:#aaa; text-decoration:none; }
.tcdw_product_list_widget2 .category a:hover { text-decoration:underline; color:#333; }
#footer .tcdw_product_list_widget2 li { padding:8px; margin:0 0 15px 0; line-height:100%; border:none;  }
#footer .tcdw_product_list_widget2 li:last-child{ margin: 0; }


/* recommend product list */
.tcdw_recommend_product_list_widget ol { margin:0 -10px 0 0; position:relative; padding:0; }
.tcdw_recommend_product_list_widget li { margin:0 6px 15px 0; padding:0; background:none; float:left; list-style-type:none; }
.tcdw_recommend_product_list_widget li a { display:block; text-decoration:none; position:relative; background:#fff; }
.tcdw_recommend_product_list_widget li img { display:block; width:70px; height:70px; -webkit-transition-property:opacity; -webkit-transition-duration:0.5s; -webkit-transition-timing-function:ease; -moz-transition-property:opacity; -moz-transition-duration:0.5s; -moz-transition-timing-function:ease; -o-transition-property:opacity; -o-transition-duration:0.5s; -o-transition-timing-function:ease; }
.tcdw_recommend_product_list_widget li a:hover img { opacity:0.5; }
#footer .tcdw_recommend_product_list_widget li { margin:0 10px 15px 0; padding:0; }
#footer .tcdw_recommend_product_list_widget li img { width:80px; height:80px; }


/* news list */
.tcdw_news_list_widget ol { margin:0; padding:0; list-style-type:none; }
.tcdw_news_list_widget li { background:none; margin:0 0 8px 0; padding:0 0 12px 0; border-bottom:1px dotted #aaa; }
.tcdw_news_list_widget li:last-child { border:none; margin:0; padding:0; }
.tcdw_news_list_widget .date { display:block; margin:0 0 5px 0; line-height:100%; }
.tcdw_news_list_widget .title { margin:0 0 5px 0; padding:0; line-height:160%; font-size:13px; }
.tcdw_news_list_widget .title a { text-decoration:none; display:block; }
.tcdw_news_list_widget .title a:hover { }


/* AdSense */
.ml_ad_widget { text-align:center; }



/* ----------------------------------------------------------------------
 archive
---------------------------------------------------------------------- */
/* page nav */
.page_navi { margin:0 0 40px 0; }
.page_navi h4 { font-size:10px; font-weight:normal; margin:0 0 10px 0; color:#888; }
.page_navi ul { margin:0; }
.page_navi li { float:left; }
.page_navi a, .page_navi a:hover, .page_navi span
 { text-decoration:none; color:#fff; font-size:11px; padding:13px 15px; line-height:100%; margin:0 4px 4px 0; background:#bbb; display:block; -moz-border-radius:2px; -khtml-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;   -webkit-transition-property:background; -webkit-transition-duration:0.4s; -webkit-transition-timing-function:ease; -moz-transition-property:background; -moz-transition-duration:0.4s; -moz-transition-timing-function:ease; -o-transition-property:background; -o-transition-duration:0.4s; -o-transition-timing-function:ease; }
.page_navi a:hover { color:#fff; background:#00a2d9; text-decoration:none; }
.page_navi span.dots { background:none; }
.page_navi span.current { color:#fff; background:#333; }
.page_navi p.back { margin:0; }
.page_navi p.back a, .page_navi p.back a:hover { display:inline-block; padding: 10px 15px; }



/* ---------- clearfix hack ---------- */
.clearfix:after { content: "."; display:block; clear:both; height:0; font-size:0.1em; line-height:0; visibility:hidden; overflow:hidden; }
.clearfix { display:inline-block; }
/* exlude MacIE5 \*/
* html .clearfix { height:1% }
.clearfix { display:block;}
/* end MacIE5 */


/* パンくずリンクのスタイル調整 */
#bread_crumb {
    padding: 20px 0 0px;
    margin: 0px auto 0;
    list-style: none; /* デフォルトのリストスタイルを削除 */
    display: flex; /* リストを水平に並べる */
    align-items: center; /* リストアイテムを垂直方向に中央揃え */
}

/* Homeリンクのスタイル調整 */
#bread_crumb li.home a {
    float: none; /* floatを解除 */
    height: auto; /* 高さを自動調整 */
    width: auto; /* 幅を自動調整 */
    line-height: normal; /* 行の高さを通常に戻す */
    display: inline-block; /* インラインブロックに変更 */
    position: relative; /* 相対配置 */
    text-decoration: none; /* 下線を削除 */
    color: #888; /* テキストの色 */
    box-sizing: border-box; /* ボックスのサイズをボーダーを含む */
}

/* Homeリンク内の span 要素を通常表示に */
#bread_crumb li.home a span {
    text-indent: 0; /* インデントをリセット */
    white-space: normal; /* 通常のホワイトスペース */
    overflow: visible; /* オーバーフローを可視化 */
    display: inline; /* インラインに変更 */
}

/* Homeリンクのアイコン疑似要素を削除 */
#bread_crumb li.home a:before {
    content: ''; /* コンテンツを削除 */
}

/* パンくずリストの各アイテムのスタイル */
#bread_crumb li {
    color: #aaa;
    font-size: 12px;
    display: inline;
    padding: 0 15px 0 0;
    margin: 0 0 0 15px;
    line-height: 160%;
    position: relative;
}

/* 区切りアイコンの疑似要素を削除 */
#bread_crumb li:after {
    content: ''; /* コンテンツを削除 */
}

/* パンくずリスト内のリンクのスタイル調整 */
#bread_crumb li a {
    color: #888; /* リンクの色を設定 */
    text-decoration: none; /* 下線を削除 */
}
#bread_crumb li.home a:before,
#bread_crumb li:after {
    content: none; /* コンテンツを削除して通常の表示に */
}



/* ----------------------------------------------------------------------
 ソーシャルボタン
---------------------------------------------------------------------- */

[class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon-feedly:before { content: "\e907"; }
.icon-hatebu:before { content: "\e908"; }
.icon-line:before { content: "\e909"; }
.icon-pocket:before { content: "\e90a"; }
.icon-google-plus:before { content: "\e900"; }
.icon-google-plus2:before { content: "\e901"; }
.icon-facebook:before { content: "\e902"; }
.icon-facebook2:before { content: "\e903"; }
.icon-twitter:before { font-family: 'tiktok_x_icon'; content: "\e901"; }
.icon-rss:before { content: "\e90b"; }
.icon-rss2:before { content: "\e906"; }
.icon-pinterest:before { content: "\e905"; }
#share_top1 ul li a, #share_top2 ul li a, #share_btm1 ul li a, #share_btm2 ul li a { -webkit-transition:all 0.3s; -moz-transition:all 0.3s; -o-transition:all 0.3s; transition:all 0.3s; }

/*--------------------------------
share_top1（Style1）
---------------------------------*/
#share_top1 { width:100%; margin:0 0 15px; }
#share_top1 h2 { color:#666666; font-weight:400; }
#share_top1 ul { margin:0; padding:0; list-style:none; }
#share_top1 ul li { display:inline-block; padding:0; text-align:center; }
#share_top1 ul li a { min-width:27px; text-decoration:none; display:inline-block; margin:0 5px 5px 0; font-size:12px; font-weight:400; color: #fff!important; background:#fafafa; border-radius:2px; box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; text-align:center; line-height:25px; padding:1px 5px 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top1 ul li a i { position:relative; top:3px; color:#fff; font-size:1.3em; text-shadow:1px 1px 0 rgba(255, 255, 255, .1); }
#share_top1 ul li a .ttl { margin:0 3px 0 2px; text-align:center; line-height:20px; }
#share_top1 ul li a .share-count { display:inline; font-size:9px; color:#fff; padding:0; line-height:25px; margin:0; border-radius:0 1px 1px 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top1 ul li > a:hover { -webkit-transform:translate3d(0, 1px, 0); transform:translate3d(0, 1px, 0) }
@media screen and (max-width:480px) {
	#share_top1 { width:100%; margin:20px 0 5px; }
	#share_top1 ul {}
	#share_top1 ul li a { margin-right:2px; }
	#share_top1 ul li a i { left:1px; }
	#share_top1 ul li>a span { display:none; }
	#share_top1 ul li a .share-count { margin-left:3px; }
}

/*--------------------------------
share_btm1（Style3）
---------------------------------*/
#share_btm1 { margin:15px 0 15px; }
#share_btm1 .sns { text-align:center; }
#share_btm1 ul { margin:0 0 2%; list-style:none; }
#share_btm1 li { float:left; width:48%; margin:0 1% 1.5%; cursor:pointer; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
.post #share_btm1 ul li { list-style:none; background-image:none; padding:0; }
#share_btm1 ul li a { position:relative; display:block; top:3px; font-size:13px; padding:10px 2px; color:#fff; border-radius:2px; text-align:center; text-decoration:none; vertical-align:middle; }
#share_btm1 ul li a i { position:relative; top:3px; font-size:140%; }
#share_btm1 ul li a .ttl { margin:0 3px 0 4px; display:inline-block; text-align:center; font-size:12px; }
#share_btm1 ul li a .share-count { position:absolute; bottom:-2px; right:8px; font-size:10px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_btm1 ul li a:hover { -webkit-transform: translate3d(0px, 2px, 1px); -moz-transform: translate3d(0px, 2px, 1px); transform: translate3d(0px, 2px, 1px); }
@media only screen and (min-width:480px) {
	#share_btm1 { width:100%; margin:-15px 0 15px; }
	#share_btm1 ul { margin-right:-1%; list-style:none; overflow:hidden; }
	#share_btm1 li { width:24%; margin:0 1% 1% 0; }
	#share_btm1 li a { font-size:12px; padding:10px 2px; }
	#share_btm1 li:nth-child(4n) { margin-right:0; }
}

/*------------- share_top1 & share_btm1 button_color -------------*/
/* Twitter */
#share_top1 ul li.twitter a, #share_btm1 ul li.twitter a { color:#fff; background-color:#000; }
#share_top1 ul li.twitter a:hover, #share_btm1 ul li.twitter a:hover { background-color:#000; }
/* Facebook */
#share_top1 ul li.facebook a, #share_btm1 ul li.facebook a { background-color:#35629a; }
#share_top1 ul li.facebook a:hover, #share_btm1 ul li.facebook a:hover { background-color:#1f3669; }
/* Google+ */
#share_top1 ul li.googleplus a, #share_btm1 ul li.googleplus a { background-color:#dd4b39;}
#share_top1 ul li.googleplus a:hover, #share_btm1 ul li.googleplus a:hover { background-color:#b94031;}
#share_top1 ul li.googleplus a i { top:4px; }
/* Hatena */
#share_top1 ul li.hatebu>a, #share_btm1 ul li.hatebu a { background-color:#3c7dd1;}
#share_top1 ul li.hatebu>a:hover, #share_btm1 ul li.hatebu a:hover { background-color:#0270ac;}
/* Pocket */
#share_top1 ul li.pocket a, #share_btm1 ul li.pocket a { background-color:#ee4056; }
#share_top1 ul li.pocket a:hover, #share_btm1 ul li.pocket a:hover { background-color:#c53648; }
/* rss */
#share_top1 ul li.rss a, #share_btm1 ul li.rss a { background-color:#ffb53c; }
#share_top1 ul li.rss a:hover, #share_btm1 ul li.rss a:hover { background-color:#e09900; }
/* Feedly */
#share_top1 ul li.feedly a, #share_btm1 ul li.feedly a { background-color:#6cc655; }
#share_top1 ul li.feedly>a:hover, #share_btm1 ul li.feedly>a:hover { background-color:#5ca449; }
/* Pinterest */
#share_top1 ul li.pinterest a, #share_btm1 ul li.pinterest a { background-color:#d4121c; }
#share_top1 ul li.pinterest a:hover, #share_btm1 ul li.pinterest a:hover { background-color:#a42f35; }


/*--------------------------------
share_top2（Style2）
---------------------------------*/
#share_top2 { width:100%; margin:0 0 15px; }
#share_top2 h2 { color:#444; font-weight:400; }
#share_top2 ul.type2 { margin:0; padding:0; list-style:none; }
#share_top2 ul.type2 li { display:inline-block; padding:0; text-align:center; }
#share_top2 ul.type2 li a { text-decoration:none; display:inline-block; margin:0 5px 5px 0; font-size:12px; font-weight:400; border-radius:2px; color:#222 !important; text-align:center; background:#fafafa !important; border:1px solid rgba(0,0,0,.1); box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; line-height:25px; padding:1px 5px 0; }
#share_top2 ul.type2 li a i { position:relative; top:3px; color:#222; font-size:1.3em; text-shadow:1px 1px 0 rgba(255, 255, 255, .1); }
#share_top2 ul.type2 li a .ttl { margin:0 3px 0 2px; text-align:center; line-height:20px; }
#share_top2 ul.type2 li a .share-count { color:#444; font-size:9px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top2 ul.type2 li a:hover, #share_top2 ul.type2 li a:hover i, #share_top2 ul.type2 li a:hover .share-count  { color:#fff !important; }
#share_top2 ul.type2 li a:hover { border-color:rgba(255,255,255,.1); }
@media screen and (max-width:480px) {
	#share_top2 { width:100%; margin:20px 0 5px; }
	#share_top2 ul.type2 {}
	#share_top2 ul.type2 li a { margin-right:2px; }
	#share_top2 ul.type2 li a i { left:1px; }
	#share_top2 ul.type2 li>a span.ttl { display:none; }
	#share_top2 ul.type2 li a .share-count { margin-left:3px; }
}

/*--------------------------------
share_btm2（Style4）
---------------------------------*/
#share_btm2 { margin:15px 0 15px; text-align:center; }
#share_btm2 .sns {}
#share_btm2 ul.type4 { margin:0 0 2%; list-style:none; }
#share_btm2 ul.type4 li { float:left; width:48%; margin:0 1% 1.5%; cursor:pointer; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
.post #share_btm2 ul li { list-style:none; background-image:none; padding:0; }
#share_btm2 ul.type4 li a { position:relative; display:block; top:5px; font-size:13px; padding:10px 2px; text-decoration:none; border-radius:2px; color:#222 !important; text-align:center; background:#fafafa !important; border:1px solid rgba(0,0,0,.1); box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; }
#share_btm2 ul.type4 li a i { position:relative; top:3px; font-size:140%; color:#222 !important; }
#share_btm2 ul.type4 li a .ttl { margin:0 3px 0 4px; display:inline-block; text-align:center; font-size:12px; }
#share_btm2 ul.type4 li a .share-count { position:absolute; bottom:-2px; right:8px; font-size:10px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; color:#222 !important; }
#share_btm2 ul.type4 li a:hover, #share_btm2 ul.type4 li a:hover i, #share_btm2 ul.type4 li a:hover .share-count  { color:#fff !important; }
@media only screen and (min-width:480px) {
	#share_btm2 { width:100%; margin:-15px 0 15px; }
	#share_btm2 ul.type4 { margin-right:-1%; list-style:none; overflow:hidden; }
	#share_btm2 ul.type4 li { width:24%; margin:0 1% 1% 0; }
	#share_btm2 ul.type4 li a { font-size:12px; padding:10px 2px; }
	#share_btm2 ul.type4 li:nth-child(4n) { margin-right:0; }
}
/*------------- share_top2 & share_btm4 button_color -------------*/
/* Twitter */
#share_top2 ul.type2 li.twitter a, #share_btm2 ul.type4 li.twitter a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.twitter a:hover, #share_btm2 ul.type4 li.twitter a:hover { color:#fff !important; background-color:#000 !important; }
/* Facebook */
#share_top2 ul.type2 li.facebook a, #share_btm2 ul.type4 li.facebook a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.facebook a:hover, #share_btm2 ul.type4 li.facebook a:hover { color:#fff !important; background-color:#35629a !important; }
/* Google+ */
#share_top2 ul.type2 li.googleplus a, #share_btm2 ul.type4 li.googleplus a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.googleplus a:hover, #share_btm2 ul.type4 li.googleplus a:hover { color:#fff !important; background-color:#dd4b39 !important;}
#share_top2 ul.type2 li.googleplus a i, #share_btm2 ul.type4 li.googleplus a i { top:4px; }
/* Hatena */
#share_top2 ul.type2 li.hatebu a, #share_btm2 ul.type4 li.hatebu a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.hatebu a:hover, #share_btm2 ul.type4 li.hatebu a:hover { color:#fff !important; background-color:#3c7dd1 !important;}
/* Pocket */
#share_top2 ul.type2 li.pocket a, #share_btm2 ul.type4 li.pocket a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.pocket a:hover, #share_btm2 ul.type4 li.pocket a:hover { color:#fff !important; background-color:#ee4056 !important; }
/* rss */
#share_top2 ul.type2 li.rss a, #share_btm2 ul.type4 li.rss a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.rss a:hover, #share_btm2 ul.type4 li.rss a:hover { color:#fff !important; background-color:#ff8c00 !important; }
/* Feedly */
#share_top2 ul.type2 li.feedly a, #share_btm2 ul.type4 li.feedly a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.feedly a:hover, #share_btm2 ul.type4 li.feedly a:hover { color:#fff !important; background-color:#6cc655 !important; }
/* Pinterest */
#share_top2 ul.type2 li.pinterest a, #share_btm2 ul.type4 li.pinterest a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.pinterest a:hover, #share_btm2 ul.type4 li.pinterest a:hover { color:#fff !important; background-color:#d4121c !important; }

/*--------------------------------
share_top5（公式ボタン）
---------------------------------*/
#share5_top { margin:5px 0 -10px;; }
#share5_btm { margin:20px 0 -30px; }
.sns_default_top { margin:0; padding:0; overflow:hidden; list-style:none; }
.sns_default_top ul li { display:inline-block; margin:0 5px 3px 0; line-height:1!important; overflow:hidden; vertical-align:top; }
.sns_default_top ul li.twitter_button { width:73px; }
.sns_default_top ul li.fbshare_button:hover { text-decoration:none; }
.sns_default_top ul li.google_button { width:58px; }
.sns_default_top ul li.pocket_button { width:88px; }
@media only screen and (max-width: 480px) {
	#share5_top { margin:0 0 -30px; }
	#share5_btm { margin:30px 0 -30px; }
	.sns_default_top { margin:0; }
	.sns_default_top ul li { margin-bottom:6px; }
	.sns_default_top ul li.twitter_button { margin-left:0; }
}

/* ----------------------- TCD Advanced Style ------------------------ */

/* ----------------------------------------------------------------------
 Column layout - カラムレイアウト
---------------------------------------------------------------------- */
.post .post_row { margin-left:-15px; margin-right:-15px; line-height:2; }
.post .post_col, .post .post_col-2, .post .post_col-3 { position:relative; min-height:1px; width:100%; padding-right:15px; padding-left:15px; float:left; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; margin-bottom:2em; }
@media screen and (min-width:768px){
	.post .post_col-2 { width:50%; /* 2カラム */ }
	.post .post_col-3 { width:33.33333%; }
}
@media screen and (min-width:1024px){
	.post .post_col-2 { width:50%; /* 2カラム */ }
	.post .post_col-3 { width:33.33333%; }
}
.post .post_row:before, .post .post_row:after {
    content: " ";
    display: table;
}
.post .post_row:after {
    clear: both;
}

/* ----------------------------------------------------------------------
 headline - 見出しのスタイル
---------------------------------------------------------------------- */
.post h3, .post h4, .post h5, .post h6 { line-height:1.6; }
/* h3 */
.post .style3a { margin:3em 0 1.5em; padding:1.1em .2em 1em; font-size:22px; font-weight:400; border-top:1px solid #222; border-bottom:1px solid #222; }
.post .style3b { margin:3em 0 1.5em; padding:1.1em .9em 1em; font-size:22px; font-weight:400; border-top:2px solid #222; border-bottom:1px solid #ddd; background:#fafafa; box-shadow:0px 1px 2px #f7f7f7; }
/* h4 */
.post .style4a { margin:2.5em 2px 1.2em; padding:.3em 0 .3em .8em; font-size:20px; font-weight:400; border-bottom:none; border-left:2px solid #222; }
.post .style4b { margin:2.5em 0 1.2em; padding:.9em 0 .8em; font-size:20px; font-weight:400; border-bottom:1px dotted #aaa; }
/* h5 */
.post .style5a { margin:2em 0 1em; padding:.5em .8em .3em 1em; font-weight:700; font-size:18px; background:#f5f5f5; box-shadow:0px 2px 0px 0px #f2f2f2; }
.post .style5b { margin:2em 0 1em; padding:.5em .8em .4em 1em; font-weight:400; font-size:18px; color:#fff; background:#222; border-radius:4px; box-shadow:0px 2px 0px 0px #f2f2f2; }
/* h6 */
.post .style6 { position:relative; margin:2em 0 1em; padding:.5em .8em .8em 1.3em; color:#222; font-weight:bold; font-size:16px; }
.post .style6:before { position:absolute; width:12px; height:12px; top:.5em; left:.2em; background:#222; content:""; }
.post .news_headline1{ position:relative; margin:80px 0 25px 0; padding:.5em; border-left:8px solid #444; line-height:1.2; font-size:1.2em; }
.post .news_headline1:after { content:""; position:absolute; bottom:0px; left:0; height:0; width:100%; border-bottom:1px dotted #ddd; }
.post .news_headline2{ margin:40px 0 20px 0; padding:0 .5em; border-left:6px solid #545454; line-height:26px; font-size:1.1em;}
.post .balloon { clear:both; display:block; position:relative; margin:50px 0 22px; padding:.5em 18px .5em; width:auto; min-width:115px; color:#fff; text-align:left; font-size:20px; font-weight:400; background:#222; z-index:0; border-bottom:0; }
.post .balloon:after { content:""; position:absolute; bottom:-10px; left:30px; margin-left:-10px; display:block; width:0px; height:0px; border-style:solid; border-width:10px 10px 0 10px; border-color:#222 transparent transparent transparent; }

/* ----------------------------------------------------------------------
 flame - 囲み枠
---------------------------------------------------------------------- */
.well { min-height:20px; padding:19px; margin-bottom:20px; background-color:#f5f5f5; border:1px solid #e3e3e3; border-radius:4px; -webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05); box-shadow:inset 0 1px 1px rgba(0,0,0,0.05); }
.well2 { margin:1em 0 30px; padding:1em 1.5em; line-height:2; border:1px solid #cdcdcd; background:#fcfcfc; box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3); }
.well3 { margin:2em 0 2.5em; padding:1em 1.5em;line-height:2.0; border:1px dashed #cdcdcd; background:#fcfcfc;  box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3); }
.wl_red { background-color: #f2dede; border-color: #ebccd1; color: #a94442; }
.wl_yellow { background-color: #fcf8e3; border-color: #faebcc; color: #8a6d3b; }
.wl_blue { background-color: #d9edf7; border-color: #bce8f1; color: #31708f; }
.wl_green { background-color: #dff0d8; border-color: #d6e9c6; color: #3c763d; }

/* ----------------------------------------------------------------------
 button - CSSボタンのスタイル
---------------------------------------------------------------------- */
.q_button { min-width:200px; max-width:90%; background-color:#535353; display:inline-block; vertical-align:middle; padding:.6em 1.3em .5em; font-weight:400; font-size:100%; color:#fff; margin:0; text-decoration:none; text-align:center; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; transition:all 0.3s ease-in-out 0s; box-shadow:0 1px 3px rgba(0,0,0,.15); }
.q_button:hover, .q_button:focus { text-decoration:none; color:#fff; background-color:#7d7d7d; box-shadow:0 2px 2px rgba(0,0,0,.15) inset; }
/* Button option */
.rounded { border-radius:6px; }
.pill { border-radius:50px; }
.sz_full { min-width:100px; max-width:100%; display:block; font-size:110%; padding:1em 1.5em .9em; }
.sz_l { min-width:350px; max-width:90%; font-size:110%; padding:.8em 1.5em .7em; }
@media screen and (max-width: 479px) {
  .sz_l { min-width:320px; max-width:95%; }
}
.sz_s { min-width:100px; max-width:90%; font-size:85%; padding:.4em 1em .3em; }
.bt_red{ background:#c01f0e; color:#fff; }
.bt_red:hover, .bt_red:focus { background-color:#d33929; color:#fff; }
.bt_yellow{ background:#f1c40f; color:#fff; }
.bt_yellow:hover, .bt_yellow:focus { background-color:#f9d441; color:#fff; }
.bt_blue{ background:#2980b9; color:#fff; }
.bt_blue:hover, .bt_blue:focus { background-color:#3a91c9; color:#fff; }
.bt_green{ background:#27ae60; color:#fff; }
.bt_green:hover, .bt_green:focus { background-color:#39c574; color:#fff; }

/* ----------------------------------------------------------------------
Youtube responsive - Youtube動画のレスポンシブ表示
---------------------------------------------------------------------- */
.ytube { position:relative; height:0; margin-top:20px; margin-bottom:20px; padding-bottom:56.25%; padding-top:30px; overflow:hidden; }
.ytube iframe { position:absolute; top:0; right:0; width:100% !important; height:100% !important; }

/* ----------------------------------------------------------------------
Table responsive - テーブルのレスポンシブ表示
---------------------------------------------------------------------- */
.rps_table { line-height:2.0; }
@media only screen and (max-width:480px) {
    .rps_table tr { display:block; margin-bottom:1.5em; }
    .rps_table th, .rps_table td{ display:list-item; list-style-type:none; border:none; }
}

/* ----------------------------------------------------------------------
 Cardlink style - カードリンクのスタイル
---------------------------------------------------------------------- */
.cardlink { padding:12px 12px 8px; margin:10px 0; border:1px solid #ddd; word-wrap:break-word; max-width:100%; background:#fafafa; }
.cardlink_thumbnail { float:left; margin:0 20px 0 0; }
.cardlink_content { margin-top:5px; line-height:1.6; }
.cardlink .timestamp { margin:0; padding:0; font-size:12px; font-weight:400; line-height:100%; color:#333; }
.cardlink_title { font-size:14px; margin:4px 0 4px; }
.cardlink_title a { font-weight:bold; color:#000; text-decoration:none; }
.cardlink_title a:hover { text-decoration:underline; }
.cardlink_excerpt { color:#333; font-size:12px; overflow:hidden; line-height:1.8; }
.cardlink_footer { clear:both; }
.clear { clear:both; }
@media screen and (max-width: 767px) {
  .cardlink_thumbnail { float:none; }
}
@media screen and (max-width: 479px) {
  .cardlink_excerpt { float:none; }
}

/* ----------------------------------------------------------------------
 Contactform - お問い合わせフォーム
---------------------------------------------------------------------- */
.wpcf7 { width:100%; border:1px solid #ddd; background:#fafafa; padding:0; margin:0 0 2.5em !important; font-size:14px;}
.wpcf7 form{ margin:1.5em 1.5em 0;}
.wpcf7 p { margin-bottom:1em; font-size:12px; }
.wpcf7 input, .wpcf7 textarea { width:auto; -moz-box-sizing: border-box; box-sizing: border-box; width:100%; border:1px solid #ccc; line-height:1.2; padding:8px;  }
.wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input[type=radio] { width:auto; max-width:97%; border:1px solid #ccc; padding:8px; }
.wpcf7 select, .wpcf7 .wpcf7-list-item-label { line-height:1.2; font-size:14px; }
.wpcf7-list-item { display:block; }
.wpcf7 textarea { height:300px; }
.wpcf7 input:focus, .wpcf7 textarea:focus { outline:none; border:1px solid #bbb; -webkit-box-shadow:inset 0 0 5px rgba(0, 0, 0, 0.2); box-shadow:inner 0 0 5px rgba(0, 0, 0, 0.5); }
.wpcf7 input.wpcf7-submit, .wpcf7 .wpcf7-previous { position:relative; display:block; width:225px; height:48px; margin:30px auto 0; background-color:#333333; cursor:pointer; border:none !important; color:#fff; text-align:center; text-decoration:none; font-size:14px; line-height:1.5; outline:none; -webkit-transition: all .3s; transition: all .3s; }
.wpcf7 input.wpcf7-submit, .wpcf7 input.wpcf7-submit::before, .wpcf7 input.wpcf7-submit::after { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }
.wpcf7 input.wpcf7-submit:hover, .wpcf7 .wpcf7-previous:hover { background-color:#666666; }
.wpcf7 .wpcf7-not-valid { background:pink; }
.wpcf7 .wpcf7-response-output { margin:10px 0 0; padding:8px 35px 8px 14px; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
.wpcf7 .wpcf7-validation-errors { color:#B94A48; background-color:#F2DEDE; border:1px solid #EED3D7; }
.wpcf7 .wpcf7-mail-sent-ok { color:#3A87AD; background-color:#D9EDF7; border:1px solid #BCE8F1; }
.wpcf7 .wpcf7-previous + br { display: none; }
.wpcf7 form .wpcf7-response-output{ margin: 2em 0.5em 2em!important; padding:0!important; border: none!important; text-align:center; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output{ color:#dc3232; font-size: 1em; }

/* ----------------------------------------------------------------------
 font-size - フォントサイズ
---------------------------------------------------------------------- */
.text70{font-size:70%}      /* フォントサイズ70% */
.text80{font-size:80%}
.text90{font-size:90%}
.text100{font-size:100%}
.text110{font-size:110%}
.text120{font-size:120%}
.text130{font-size:130%}
.text140{font-size:140%}
.text150{font-size:150%}
.text160{font-size:160%}
.text170{font-size:170%}
.text180{font-size:180%}
.text190{font-size:190%}
.text200{font-size:200%}
.text210{font-size:210%}
.text220{font-size:220%}
.b{font-weight:700}     /* 太字 */
.u{text-decoration:underline}     /* 下線 */
.del{text-decoration:line-through} /* 打ち消し線 */

/* ----------------------------------------------------------------------
 font-color - フォントカラー
---------------------------------------------------------------------- */
.red{color:red}     /* 赤色 */
.blue{color:#2ca9e1}    /* 青色 */
.green{color:#82ae46}   /* 緑色 */
.orange{color:#ff7d00}    /* 橙色 */
.yellow{color:#fff000}    /* 黄色 */
.pink{color:#ff0084}    /* ピンク */
.gray{color:#999999}    /* グレー */

/* ----------------------------------------------------------------------
 background-color - 背景色
---------------------------------------------------------------------- */
.bg-yellow{padding:2px;background-color:#ff0} /* 黄色の文字背景 */
.bg-blue{padding:2px;background-color:#4ab0f5}  /* 青色の文字背景 */
.bg-red{padding:2px;background-color:red} /* 赤色の文字背景 */

/* ----------------------------------------------------------------------
 text-align - 配置
---------------------------------------------------------------------- */
.align1{text-align:center !important} /* 中央寄せ */
.align2{text-align:right !important}  /* 右寄せ */
.align3{text-align:left !important} /* 左寄せ */

/* ----------------------------------------------------------------------
 float - 回り込み
---------------------------------------------------------------------- */
.r-flo{float:right;margin:10px} /* 右に回り込み */
.l-flo{float:left;margin:10px}  /* 左に回り込み */
.f-clear{clear:both}      /* 回り込みの解除 */

/* ----------------------------------------------------------------------
 hover - 画像リンクマウスオーバー時の不透明度
---------------------------------------------------------------------- */
a img.fade { background:none !important; outline:none; -webkit-transition:all .3s; transition:all .3s; }
a:hover img.fade { opacity:0.7; filter:alpha(opacity=70); -ms-filter:"alpha( opacity=70 )"; background:none !important; }
/* ----------------------------------------------------------------------
 text-style - テキストスタイル
---------------------------------------------------------------------- */
.att {padding-left:1em;text-indent:-1em;} /* 注意書き等で二行目以降を字下げ */
.att_box { margin:2em 0 2.5em; padding:1em 1.2em; line-height:2.0; border:1px dotted #cccccc; background:#fcfcfc; box-shadow:0px 4px 0px 0px #f7f7f7; } /* テキストボックス */

/* ----------------------------------------------------------------------
 margin - 要素の外側の余白
---------------------------------------------------------------------- */
.m0{margin:0 !important}    /* margin 0px を指定するクラス */
.mt0{margin-top:0 !important}   /* margin-top0px を指定するクラス */
.mr0{margin-right:0 !important}   /* margin-right0px を指定するクラス*/
.mb0{margin-bottom:0 !important}  /* margin-bottom0px を指定するクラス*/
.ml0{margin-left:0 !important}    /* margin-left0px を指定するクラス*/

.m5{margin:5px !important}
.mt5{margin-top:5px !important}
.mr5{margin-right:5px !important}
.mb5{margin-bottom:5px !important}
.ml5{margin-left:5px !important}

.m10{margin:10px !important}
.mt10{margin-top:10px !important}
.mr10{margin-right:10px !important}
.mb10{margin-bottom:10px !important}
.ml10{margin-left:10px !important}

.m15{margin:15px !important}
.mt15{margin-top:15px !important}
.mr15{margin-right:15px !important}
.mb15{margin-bottom:15px !important}
.ml15{margin-left:15px !important}

.m20{margin:20px !important}
.mt20{margin-top:20px !important}
.mr20{margin-right:20px !important}
.mb20{margin-bottom:20px !important}
.ml20{margin-left:20px !important}

.m25{margin:25px !important}
.mt25{margin-top:25px !important}
.mr25{margin-right:25px !important}
.mb25{margin-bottom:25px !important}
.ml25{margin-left:25px !important}

.m30{margin:30px !important}
.mt30{margin-top:30px !important}
.mr30{margin-right:30px !important}
.mb30{margin-bottom:30px !important}
.ml30{margin-left:30px !important}

.m35{margin:35px !important}
.mt35{margin-top:35px !important}
.mr35{margin-right:35px !important}
.mb35{margin-bottom:35px !important}
.ml35{margin-left:35px !important}

.m40{margin:40px !important}
.mt40{margin-top:40px !important}
.mr40{margin-right:40px !important}
.mb40{margin-bottom:40px !important}
.ml40{margin-left:40px !important}

.m45{margin:45px !important}
.mt45{margin-top:45px !important}
.mr45{margin-right:45px !important}
.mb45{margin-bottom:45px !important}
.ml45{margin-left:45px !important}

.m50{margin:50px !important}
.mt50{margin-top:50px !important}
.mr50{margin-right:50px !important}
.mb50{margin-bottom:50px !important}
.ml50{margin-left:50px !important}

.m55{margin:55px !important}
.mt55{margin-top:55px !important}
.mr55{margin-right:55px !important}
.mb55{margin-bottom:55px !important}
.ml55{margin-left:55px !important}

.m60{margin:60px !important}
.mt60{margin-top:60px !important}
.mr60{margin-right:60px !important}
.mb60{margin-bottom:60px !important}
.ml60{margin-left:60px !important}

.m65{margin:65px !important}
.mt65{margin-top:65px !important}
.mr65{margin-right:65px !important}
.mb65{margin-bottom:65px !important}
.ml65{margin-left:65px !important}

.m70{margin:70px !important}
.mt70{margin-top:70px !important}
.mr70{margin-right:70px !important}
.mb70{margin-bottom:70px !important}
.ml70{margin-left:70px !important}

.m75{margin:75px !important}
.mt75{margin-top:75px !important}
.mr75{margin-right:75px !important}
.mb75{margin-bottom:75px !important}
.ml75{margin-left:75px !important}

.m80{margin:80px !important}
.mt80{margin-top:80px !important}
.mr80{margin-right:80px !important}
.mb80{margin-bottom:80px !important}
.ml80{margin-left:80px !important}

/* ----------------------------------------------------------------------
 padding - 要素の内側の余白
---------------------------------------------------------------------- */
.p0{padding:0 !important}   /* padding-0px を指定するクラス */
.pt0{padding-top:0 !important}    /* padding-top0px を指定するクラス */
.pr0{padding-right:0 !important}  /* padding-right0px を指定するクラス */
.pb0{padding-bottom:0 !important} /* padding-bottom0px を指定するクラス */
.pl0{padding-left:0 !important}   /* padding-left0px を指定するクラス */

.p5{padding:5px !important}
.pt5{padding-top:5px !important}
.pr5{padding-right:5px !important}
.pb5{padding-bottom:5px !important}
.pl5{padding-left:5px !important}

.p10{padding:10px !important}
.pt10{padding-top:10px !important}
.pr10{padding-right:10px !important}
.pb10{padding-bottom:10px !important}
.pl10{padding-left:10px !important}

.p15{padding:15px !important}
.pt15{padding-top:15px !important}
.pr15{padding-right:15px !important}
.pb15{padding-bottom:15px !important}
.pl15{padding-left:15px !important}

.p20{padding:20px !important}
.pt20{padding-top:20px !important}
.pr20{padding-right:20px !important}
.pb20{padding-bottom:20px !important}
.pl20{padding-left:20px !important}

.p25{padding:25px !important}
.pt25{padding-top:25px !important}
.pr25{padding-right:25px !important}
.pb25{padding-bottom:25px !important}
.pl25{padding-left:25px !important}

.p30{padding:30px !important}
.pt30{padding-top:30px !important}
.pr30{padding-right:30px !important}
.pb30{padding-bottom:30px !important}
.pl30{padding-left:30px !important}

.p35{padding:35px !important}
.pt35{padding-top:35px !important}
.pr35{padding-right:35px !important}
.pb35{padding-bottom:35px !important}
.pl35{padding-left:35px !important}

.p40{padding:40px !important}
.pt40{padding-top:40px !important}
.pr40{padding-right:40px !important}
.pb40{padding-bottom:40px !important}
.pl40{padding-left:40px !important}

.p45{padding:45px !important}
.pt45{padding-top:45px !important}
.pr45{padding-right:45px !important}
.pb45{padding-bottom:45px !important}
.pl45{padding-left:45px !important}

.p50{padding:50px !important}
.pt50{padding-top:50px !important}
.pr50{padding-right:50px !important}
.pb50{padding-bottom:50px !important}
.pl50{padding-left:50px !important}

.p55{padding:55px !important}
.pt55{padding-top:55px !important}
.pr55{padding-right:55px !important}
.pb55{padding-bottom:55px !important}
.pl55{padding-left:55px !important}

.p60{padding:60px !important}
.pt60{padding-top:60px !important}
.pr60{padding-right:60px !important}
.pb60{padding-bottom:60px !important}
.pl60{padding-left:60px !important}

.p65{padding:65px !important}
.pt65{padding-top:65px !important}
.pr65{padding-right:65px !important}
.pb65{padding-bottom:65px !important}
.pl65{padding-left:65px !important}

.p70{padding:70px !important}
.pt70{padding-top:70px !important}
.pr70{padding-right:70px !important}
.pb70{padding-bottom:70px !important}
.pl70{padding-left:70px !important}

.p75{padding:75px !important}
.pt75{padding-top:75px !important}
.pr75{padding-right:75px !important}
.pb75{padding-bottom:75px !important}
.pl75{padding-left:75px !important}

.p80{padding:80px !important}
.pt80{padding-top:80px !important}
.pr80{padding-right:80px !important}
.pb80{padding-bottom:80px !important}
.pl80{padding-left:80px !important}

/* ----------------------------------------------------------------------
 汎用スタイルの追加
 https://tcd-theme.com/2023/09/utility-classes.html
---------------------------------------------------------------------- */
.post .a_break { display: inline-block; }
@media (max-width: 767px) {
  .post .is-pc { display:none!important; }
}
@media not all and (max-width: 767px) {
  .post .is-sp { display:none!important; }
}
.post .e_link {
  display: inline-block; position: relative; padding-right:1em;
}
.post .e_link:after {
  font-family: 'design_plus'; content: '\e92a'; font-size: 100%; display: block;
  position: absolute; transition:none; margin-top:-0.1em;
  right:0; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
.post img.frame {
  border: 1px solid #d2d2d2;
  -webkit-box-shadow: 0 6px 6px -6px #cccccc;
  -moz-box-shadow: 0 6px 6px -6px #cccccc;
  box-shadow: 0 6px 6px -6px #cccccc;
}

*,*::before,*::after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -ms-overflow-style: scrollbar;
    -webkit-tap-highlight-color: rgba(0,0,0,0)
}

@-ms-viewport {
    width: device-width
}

aside,footer,header,nav {
    display: block
}

footer {
    margin-top: 100px
}

[tabindex="-1"]:focus {
    outline: 0 !important
}

header h1,footer h3 {
    margin-top: 0;
    margin-bottom: 0
}

header p,footer p {
    margin: 0
}

abbr[title],abbr[data-original-title] {
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
    border-bottom: 0
}

header ul,footer ul,aside ul,footer dl,h1,dl,dd,dt,ul {
    margin: 0;
    padding: 0
}

header li,footer li,aside li {
    list-style: none
}

header ul ul,footer ul ul {
    margin-bottom: 0
}

footer dt {
    font-weight: 700
}

footer dd {
    margin-bottom: 0;
    margin-left: 0
}



html {
    font-size: 62.5%
}

header p,header span,footer a,footer li::before,footer h3,.side_nav a {
    font-family: 'nsjpr','Noto Sans JP','Noto Sans CJK JP',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif !important;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: .05em
}

header .tel {
    letter-spacing: .03em
}

header h1 {
    font-size: 100%;
    font-weight: normal
}

header img,footer img,aside img {
    max-width: 100%;
    height: auto;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

body {
    min-width: 100%;
    overflow-x: hidden
}

body.fixed {
    position: fixed;
    left: 0;
    width: 100%;
    height: 100%
}

@media screen and (min-width: 1024px) {
    body {
        min-width:960px
    }
}

@media screen and (max-width: 767px) {
    body {
        max-width:100%;
        position: static;
        padding-top: 0
    }

    body.menu_open {
        position: fixed;
        top: auto
    }
}

#siteWrap {
    position: relative
}

br.pc {
    display: none
}

br.sp {
    display: block
}

@media screen and (min-width: 768px) {
    br.pc {
        display:block
    }

    br.sp {
        display: none
    }
}

header#header .header_important .header_inner {
    justify-content: left
}

header .header_important {
    background: #353535;
    color: #FFF;
    padding: 5px 0;
    font-size: 14px;
    line-height: 1.42857143;
    font-family: "Hiragino Kaku Gothic ProN","メイリオ",sans-serif
}

header .header_important p {
    display: inline-block
}

header .header_important .important_mark {
    font-size: 12px;
    padding: 5px;
    border-radius: 5px;
    line-height: 1;
    background: #ff7e7e;
    font-weight: 600;
    margin: auto 0 auto 5px
}

header .header_important .important_text {
    padding-left: 5px;
    max-width: 88%
}

@media screen and (min-width: 768px) {
    header .header_important .important_text {
        max-width:94%
    }
}

header .header_important .important_text a {
    color: #FFF
}

#header {
    -webkit-transition: .4s;
    transition: .4s;
    background: #fff;
    width: 100%
}

#header.clone-header {
    top: -5px;
    left: 0;
    position: fixed;
    -webkit-box-shadow: 0 0 6px rgba(0,0,0,0.1);
    box-shadow: 0 0 6px rgba(0,0,0,0.1);
    z-index: 20;
    -webkit-transition: .4s;
    transition: .4s;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%)
}

#header.clone-header .header_inner .header_menu_wrap .header_menu {
    top: 52px
}

@media screen and (min-width: 768px) {
    #header.clone-header .header_inner .header_menu_wrap .header_menu {
        top:0
    }
}

#header.clone-header.is-scroll {
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

#header .header_inner {
    max-width: 100%;
    padding: 0;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative
}

@media screen and (min-width: 768px) {
    #header .header_inner {
        padding-right:10px
    }
}

@media screen and (min-width: 1024px) {
    #header .header_inner {
        max-width:1200px;
        padding-right: 15px
    }
}

#header .header_inner .logo a {
    display: block
}

#header .header_inner .logo a img {
    width: 120px
}

@media screen and (min-width: 768px) {
    #header .header_inner .logo a img {
        width:17vw;
        max-width: 174px
    }
}

@media screen and (min-width: 1024px) {
    #header .header_inner .logo a img {
        width:170px
    }
}

#header .header_inner .header_menu_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: auto
}

#header .header_inner .header_menu_wrap .sp_tel {
    display: block;
    margin: 4px 8px 4px 0;
    line-height: 1.5em
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .sp_tel {
        display:none
    }
}

#header .header_inner .header_menu_wrap .sp_tel .open {
    text-align: center;
    font-size: .8rem;
    font-weight: 500;
    line-height: 1.2
}

#header .header_inner .header_menu_wrap .sp_tel a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.2em;
    font-weight: 600;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #333
}

#header .header_inner .header_menu_wrap .sp_tel a .icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

#header .header_inner .header_menu_wrap .sp_tel a .icon img {
    width: 25px
}

#header .header_inner .header_menu_wrap .header_menu_btn {
    display: block;
    background: #7ec8e9;
    width: 50px;
    height: 100%;
    position: relative
}

#header .header_inner .header_menu_wrap .header_menu_btn span {
    width: 30px;
    height: 2px;
    background: #333;
    display: block;
    position: absolute;
    left: 10px
}

#header .header_inner .header_menu_wrap .header_menu_btn span:nth-child(1) {
    top: 11px
}

#header .header_inner .header_menu_wrap .header_menu_btn span:nth-child(2) {
    top: 21px
}

#header .header_inner .header_menu_wrap .header_menu_btn .txt {
    font-size: 1.1rem;
    font-weight: 500;
    position: absolute;
    top: 28px;
    left: 8px
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu_btn {
        display:none
    }
}

#header .header_inner .header_menu_wrap .header_menu {
    display: none;
    position: absolute;
    width: 100%;
    height: 101vh;
    top: 0;
    left: 0;
    background: #7ec8e9;
    z-index: 20
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        position: relative;
        height: auto;
        background: 0
    }
}

#header .header_inner .header_menu_wrap .header_menu a {
    color: #333
}

#header .header_inner .header_menu_wrap .header_menu .sp_menu_header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu .sp_menu_header {
        display:none
    }
}

#header .header_inner .header_menu_wrap .header_menu .sp_menu_header .sp_header_logo {
    margin: 5px 0
}

#header .header_inner .header_menu_wrap .header_menu .sp_menu_header .sp_header_logo a {
    display: block
}

#header .header_inner .header_menu_wrap .header_menu .sp_menu_header .sp_header_logo a img {
    width: 88px
}

#header .header_inner .header_menu_wrap .header_menu .sp_menu_header .menu_close_btn {
    display: block;
    background: #7ec8e9;
    width: 50px;
    height: 100%;
    position: relative
}

#header .header_inner .header_menu_wrap .header_menu .sp_menu_header .menu_close_btn span {
    width: 30px;
    height: 2px;
    background: #333;
    display: block;
    position: absolute;
    left: 10px;
    top: 18px
}

#header .header_inner .header_menu_wrap .header_menu .sp_menu_header .menu_close_btn span:nth-child(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

#header .header_inner .header_menu_wrap .header_menu .sp_menu_header .menu_close_btn span:nth-child(2) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

#header .header_inner .header_menu_wrap .header_menu .sp_menu_header .menu_close_btn .txt {
    font-size: 1.1rem;
    font-weight: 500;
    position: absolute;
    top: 28px;
    left: 8px
}

#header .header_inner .header_menu_wrap .header_menu nav {
    overflow: scroll;
    margin: auto 0
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav {
        overflow:auto
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-around
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item {
        max-width:760px;
        width: 57vw
    }

    #header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item {
        display: none
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.col2 {
    width: 50%;
    height: 92px
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.col2 a {
    padding: 50px 0 0
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.col3 {
    width: 30%;
    height: 90px;
    border-bottom: 1px solid #fff;
    border-left: 1px solid #fff
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.shop {
    width: 40%
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.col3:nth-of-type(3) {
    border-left: 0
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.col3 a {
    padding: 50px 0 0
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li a {
    display: block;
    color: #333;
    font-size: 1.6rem;
    font-weight: 600;
    text-align: center;
    height: 100%;
    position: relative
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li a img {
    width: 28px;
    position: absolute;
    top: 0;
    left: 0
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.line a {
    background: #51af3e;
    color: #fff
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.line a img {
    width: 28px;
    left: 50%;
    top: 20px;
    margin-left: -14px
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.info {
    border-left: 1px solid #ffd201
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.info a {
    background: #c6b357;
    color: #fff
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.info a img {
    width: 35px;
    left: 50%;
    top: 18px;
    margin-left: -19px
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.shop img {
    width: 28px;
    left: 50%;
    top: 20px;
    margin-left: -14px
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.car img {
    width: 33px;
    left: 50%;
    top: 22px;
    margin-left: -17px
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.box img {
    width: 26px;
    left: 50%;
    top: 20px;
    margin-left: -13px
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.tel {
    width: 100%;
    padding: 20px 0 10px;
    border-bottom: 1px solid #fff
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.tel a {
    background: #fff;
    font-size: 3rem;
    width: 300px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: auto;
    padding: 10px 0
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.tel a:hover {
    text-decoration: none
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.tel a img {
    position: static;
    display: block;
    width: 40px;
    height: 24px;
    margin-right: 3px
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.tel a span {
    line-height: 1
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item .add_sp_item li.tel .open {
    text-align: center;
    margin-top: 5px;
    font-size: 1.4rem;
    font-weight: 500
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li {
    position: relative;
    -ms-flex-item-align: center;
    align-self: center
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li {
        position:static
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li:hover p::before {
    opacity: 1
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li.pop_tr {
    width: 100%;
    border-bottom: 1px solid #fff
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li.pop_tr {
        width:initial
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li p {
    color: #333;
    line-height: 1.4;
    text-align: center;
    display: block;
    cursor: pointer;
    font-size: 1.4rem;
    font-weight: 500;
    padding: 16px 30px
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li p {
        font-size:1.2rem;
        padding: 0;
        position: relative;
        margin: 10px 0
    }
}

@media screen and (min-width: 1024px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li p {
        font-size:1.3rem
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li p br.br-xl {
    display: none
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li p br.br-xl {
        display:inline
    }
}

@media screen and (min-width: 1024px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li p br.br-xl {
        display:none
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li p:hover {
    text-decoration: none
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li p::before {
    display: none
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li p::before {
        display:inline;
        opacity: 0;
        -webkit-transition: .4s;
        transition: .4s;
        content: "";
        position: absolute;
        bottom: -10px;
        left: 50%;
        margin-left: -8px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 7.5px 8px 7.5px;
        border-color: transparent transparent #ffd000 transparent
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li p::after {
    content: "";
    position: absolute;
    right: 25px;
    top: 24px;
    margin-top: 1px;
    width: 12px;
    height: 12px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transition: .4s;
    transition: .4s
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li p::after {
        display:none
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li p.active::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    right: 34px;
    top: 22px
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li p.active::after {
        display:none
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li .pop {
    width: 92%;
    position: static;
    border: 0;
    margin: 0 auto 4%;
    background: 0;
    z-index: 10
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li .pop {
        width:230px;
        display: none;
        position: absolute;
        background: #fffadd;
        border: 2px solid #7ec8e9
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li .pop li a {
    display: block;
    color: #333;
    padding: 10px 15px;
    font-size: 1.5rem;
    font-weight: 400;
    background: #ffe56e;
    position: relative;
    -webkit-transition: .4s;
    transition: .4s
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu nav .all_item>li .pop li a {
        font-size:1.4rem;
        font-weight: 500;
        background: 0
    }
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li .pop li a::after {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -3px;
    width: 9px;
    height: 9px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: top;
    transform-origin: top
}

#header .header_inner .header_menu_wrap .header_menu nav .all_item>li .pop li a:hover {
    text-decoration: none;
    background-color: #7ec8e9
}

#header .header_inner .header_menu_wrap .header_menu .pc_tel {
    display: none
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu .pc_tel {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        background: #7ec8e9;
        line-height: 1;
        align-items: center
    }
}

#header .header_inner .header_menu_wrap .header_menu .pc_tel .pc_tel_block {
    padding-left: 10px;
    margin: auto
}

#header .header_inner .header_menu_wrap .header_menu .pc_tel .tel {
    font-weight: 600;
    font-size: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: baseline;
    align-items: baseline
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu .pc_tel .tel {
        font-size:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    #header .header_inner .header_menu_wrap .header_menu .pc_tel .tel {
        font-size:2.2rem
    }
}

#header .header_inner .header_menu_wrap .header_menu .pc_tel .tel span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-right: 5px
}

#header .header_inner .header_menu_wrap .header_menu .pc_tel .tel span img {
    width: 20px
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu .pc_tel .tel span img {
        width:25px
    }
}

@media screen and (min-width: 1024px) {
    #header .header_inner .header_menu_wrap .header_menu .pc_tel .tel span img {
        width:30px
    }
}

#header .header_inner .header_menu_wrap .header_menu .pc_tel .open {
    text-align: center;
    font-size: 1.2rem;
    font-weight: 500;
    margin-top: 6px
}

@media screen and (min-width: 768px) {
    #header .header_inner .header_menu_wrap .header_menu .pc_tel .open {
        font-size:1rem;
        margin-top: 2px
    }
}

@media screen and (min-width: 1024px) {
    #header .header_inner .header_menu_wrap .header_menu .pc_tel .open {
        font-size:1.2rem
    }
}

.header_menu_bottom {
    display: none
}

@media screen and (min-width: 768px) {
    .header_menu_bottom {
        display:block;
        background: #fed430;
        width: 100%;
        padding: 0
    }
}

.header_menu_bottom ul {
    display: flex;
    justify-content: space-between;
    width: 750px;
    margin: 0 auto
}

.header_menu_bottom ul li {
    width: 25%;
    text-align: center;
    position: relative
}

.header_menu_bottom ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 1px;
    height: 30px;
    margin-top: -15px;
    background: #fee998;
    display: block
}

.header_menu_bottom ul li.shop::before {
    content: none
}

.header_menu_bottom ul li a {
    color: #333;
    font-size: 1.4rem;
    font-weight: 500;
    padding: 10px 0;
    display: block;
    transition: .4s
}

.header_menu_bottom ul li a:hover {
    text-decoration: none;
    background: #ffe04d
}

.header_menu_bottom ul li a span {
    position: relative;
    padding-left: 33px
}

.header_menu_bottom ul li a span img {
    position: absolute;
    left: 0;
    top: 50%
}

.header_menu_bottom ul li.shop img {
    width: 26px;
    margin-top: -11px
}

.header_menu_bottom ul li.car img {
    width: 31px;
    margin-top: -10px
}

.header_menu_bottom ul li.car span {
    padding-left: 37px
}

.header_menu_bottom ul li.box img {
    width: 23px;
    margin-top: -12px
}

.header_menu_bottom ul li.phone img {
    width: 16px;
    margin-top: -13px
}

.header_menu_bottom ul li.phone span {
    padding-left: 25px
}

.header_menu_bottom ul li.yoyaku {
    background: #40aa35
}

.header_menu_bottom ul li.yoyaku img {
    width: 24px;
    margin-top: -10px
}

.header_menu_bottom ul li.yoyaku a {
    color: #fff
}

.header_menu_bottom ul li.yoyaku a:hover {
    background: #56c14a
}

.header_menu_bottom ul li.yoyaku:before {
    display: none
}

#header.underlayer .header_inner .header_menu_wrap .header_menu .pc_tel {
    background: #fff
}

.side_nav {
    -webkit-transition: .4s;
    transition: .4s;
    position: fixed;
    z-index: 10;
    top: 160px;
    right: 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
}

@media screen and (max-width: 768px) {
    .side_nav {
        display:none
    }
}

.side_nav.is-scroll {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    display: block
}

@media screen and (max-width: 768px) {
    .side_nav.is-scroll {
        display:none
    }
}

.side_nav .navlist li {
    width: 50px;
    margin-top: 2px
}

.side_nav .navlist li:first-child {
    margin-top: 0
}

.side_nav .navlist li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.3rem;
    font-weight: 600;
    text-align: center;
    color: #333;
    line-height: 1.3;
    width: 50px;
    height: 70px;
    background: #7ec8e9;
    -webkit-transition: .4s;
    transition: .4s;
    padding: 5px 0
}

.side_nav .navlist li a:hover {
    text-decoration: none;
    opacity: .7
}

.side_nav .navlist li a i {
    width: 100%;
    text-align: center
}

.side_nav .navlist li a i img {
    width: 20px
}

.side_nav .navlist li a.line {
    color: #fff;
    background: #51af3e
}

.side_nav .navlist li a.info {
    color: #fff;
    background: #c6b357;
    height: 65px
}

#container {
    max-width: 100%
}

@media screen and (min-width: 768px) and (max-width:1120px) {
    #container {
        min-width:100%;
        overflow-x: hidden
    }
}

@media screen and (max-width: 768px) {
    #container {
        min-width:100%;
        padding-left: 0;
        overflow: hidden
    }
}

#pagetop {
    bottom: 20px;
    right: 10px;
    position: fixed;
    z-index: 10
}

#pagetop a {
    -webkit-transform: scale(1,1);
    transform: scale(1,1);
    opacity: .8;
    background: #333;
    color: #fff;
    font-weight: 500;
    letter-spacing: 1px;
    width: 46px;
    height: 46px;
    font-size: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 50%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    line-height: 1;
    -webkit-transition: .4s;
    transition: .4s
}

@media screen and (min-width: 768px) {
    #pagetop a {
        width:96px;
        height: 96px;
        font-size: 18px;
        letter-spacing: 3px;
        -webkit-transform: scale(0.6,0.6);
        transform: scale(0.6,0.6)
    }
}

#pagetop a:hover {
    text-decoration: none;
    opacity: .7
}

#pagetop a i {
    width: 25px;
    height: 17px;
    margin-bottom: 3px;
    position: relative
}

@media screen and (min-width: 768px) {
    #pagetop a i {
        width:40px;
        height: 20px;
        margin-bottom: 10px
    }
}

#pagetop a i::after {
    content: "";
    position: absolute;
    right: 11px;
    top: 50%;
    margin-top: -1px;
    width: 16px;
    height: 16px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transition: .4s;
    transition: .4s
}

@media screen and (min-width: 768px) {
    #pagetop a i::after {
        right:17px;
        margin-top: -3px;
        width: 25px;
        height: 25px;
        border-top: 3px solid #fff;
        border-right: 3px solid #fff
    }
}

#footer .footer_inner {
    max-width: 996px;
    margin: 0 auto
}

@media screen and (max-width: 1050px) {
    #footer .footer_inner {
        padding:0 30px
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_inner {
        padding:0
    }
}

#footer .footer_head {
    background: #333
}

#footer .footer_head .footer_menu_wrap {
    padding: 50px 0 60px
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap {
        padding:35px 0 30px
    }
}

#footer .footer_head .footer_menu_wrap .footer_ttl {
    text-align: center;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 600;
    margin-bottom: 60px
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_ttl {
        font-size:2rem;
        margin-bottom: 20px
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box {
    width: 150px
}

@media screen and (max-width: 1050px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box {
        width:20%
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box {
        width:100%;
        border-top: 1px solid #999
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box:last-child {
    width: 380px
}

@media screen and (max-width: 1050px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box:last-child {
        width:37%
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box:last-child {
        width:100%
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box:last-child .item {
    margin-top: 40px
}

@media screen and (max-width: 1050px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box:last-child .item {
        margin-top:30px
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box:last-child .item {
        margin-top:0;
        border-bottom: 1px solid #999;
        border-top: 1px solid #999
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box:last-child .item:first-child {
    margin-top: 0
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box:last-child .item h4 {
    margin-bottom: 20px
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box:last-child .item h4 {
        margin-bottom:0;
        padding: 12px 35px;
        position: relative
    }

    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box:last-child .item h4::after {
        content: "";
        position: absolute;
        right: 30px;
        top: 50%;
        margin-top: 1px;
        width: 12px;
        height: 12px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        -webkit-transition: .4s;
        transition: .4s
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item h4 {
    color: #fff;
    font-size: 1.6rem;
    font-weight: 600;
    margin-bottom: 30px
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item h4 {
        margin-bottom:0;
        padding: 12px 35px;
        position: relative
    }

    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item h4::after {
        content: "";
        position: absolute;
        right: 30px;
        top: 50%;
        margin-top: 1px;
        width: 12px;
        height: 12px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        -webkit-transition: .4s;
        transition: .4s
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item h4.active::after {
        -webkit-transform:rotate(-45deg);
        transform: rotate(-45deg);
        margin-top: 0;
        right: 39px
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item h4 a {
    color: #fff
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item h4 .pc {
        display:none
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item h4 .sp_tr {
    display: none
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item h4 .sp_tr {
        display:block
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .item_menu_wrap {
        padding:0 18px 18px
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu {
        background:#4c4c4c;
        padding: 10px 0
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li {
    color: #fff;
    font-weight: 400;
    font-size: 1.3rem;
    position: relative;
    padding-left: 20px;
    line-height: 1.4;
    margin-top: 20px
}

@media screen and (max-width: 1050px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li {
        font-size:1.2rem
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li {
        margin-top:0;
        padding-left: 0;
        font-size: 1.5rem
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li:nth-of-type(1),#footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box .item .vertical_menu li:nth-of-type(7) {
    margin-top: 0
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li::before {
    content: "-";
    position: absolute;
    top: 0;
    left: 0
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li::before {
        top:12px;
        left: 16px
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li a {
    color: #fff
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li a {
        position:relative;
        display: block;
        padding: 12px 40px
    }

    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li a::after {
        content: "";
        position: absolute;
        right: 25px;
        top: 50%;
        margin-top: -4px;
        width: 9px;
        height: 9px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        -webkit-transition: .4s;
        transition: .4s
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li a br {
        display:none
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li.sp {
    display: none
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .vertical_menu li.sp {
        display:block
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu {
        background:#4c4c4c;
        padding: 10px 0
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu li {
    color: #fff;
    font-size: 1.3rem;
    font-weight: 400;
    position: relative;
    padding: 0 7px;
    line-height: 2.2
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu li {
        width:100%;
        font-size: 1.5rem;
        line-height: 1.4;
        padding: 0
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu li::before {
    content: "";
    background: #fff;
    width: 1px;
    height: 14px;
    position: absolute;
    top: 7px;
    left: -1px
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu li::before {
        content:"-";
        position: absolute;
        top: 12px;
        left: 16px;
        background: 0
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu li::after {
    content: "";
    background: #fff;
    width: 1px;
    height: 14px;
    position: absolute;
    top: 7px;
    right: 0
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu li::after {
        display:none
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu li a {
    color: #fff
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu li a {
        position:relative;
        display: block;
        padding: 12px 40px
    }

    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .horizon_menu li a::after {
        content: "";
        position: absolute;
        right: 25px;
        top: 50%;
        margin-top: -4px;
        width: 9px;
        height: 9px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        -webkit-transition: .4s;
        transition: .4s
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .sns_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 25px
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .sns_list {
        background:#4c4c4c;
        padding: 15px 0;
        margin-top: 10px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .sns_list li {
    width: 30px;
    margin-left: 25px
}

#footer .footer_head .footer_menu_wrap .footer_menu .menu_box .item .sns_list li:first-child {
    margin-left: 0
}

#footer .footer_head .footer_menu_wrap.corporate {
    border-top: 1px solid #fff
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap.corporate {
        border:0;
        padding: 0
    }
}

#footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(1) {
    width: 56%
}

@media screen and (max-width: 1050px) {
    #footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(1) {
        width:78%
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(1) {
        width:100%
    }
}

#footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(1) .vertical_menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-line-pack: justify;
    align-content: space-between
}

#footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(1) .vertical_menu li {
    width: 145px
}

@media screen and (min-width: 1051px) {
    #footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(1) .vertical_menu {
        height:240px
    }
}

@media screen and (min-width: 769px) and (max-width:1050px) {
    #footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(1) .vertical_menu {
        height:200px
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(1) .vertical_menu li {
        width:100%
    }
}

#footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(2) {
    width: 200px
}

@media screen and (max-width: 1050px) {
    #footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(2) {
        width:22%
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(2) {
        width:100%
    }
}

#footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(3) {
    width: 325px
}

@media screen and (max-width: 1050px) {
    #footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(3) {
        width:36%
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_head .footer_menu_wrap.corporate .footer_menu .menu_box:nth-of-type(3) {
        width:100%
    }
}

#footer .footer_other_menu {
    background: #333;
    border-top: 1px solid #fff;
    padding: 20px 0
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu {
        border-top:1px solid #999;
        padding: 0
    }
}

#footer .footer_other_menu ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

#footer .footer_other_menu ul li {
    color: #fff;
    font-weight: 400;
    font-size: 1.3rem;
    margin-right: 28px
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li {
        width:100%;
        margin-right: 0;
        font-size: 1.5rem;
        font-weight: 600;
        padding: 12px 35px;
        position: relative;
        border-top: 1px solid #999
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li:first-child {
        border-top:0
    }
}

#footer .footer_other_menu ul li:last-child {
    margin-right: 0
}

#footer .footer_other_menu ul li a {
    color: #fff
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li a {
        display:block
    }

    #footer .footer_other_menu ul li a::after {
        content: "";
        position: absolute;
        right: 33px;
        top: 50%;
        margin-top: -4px;
        width: 12px;
        height: 12px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        -webkit-transition: .4s;
        transition: .4s
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li .pc {
        display:none
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li.faq {
        padding:0
    }
}

#footer .footer_other_menu ul li.faq dl {
    display: none
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li.faq dl {
        display:block
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li.faq dl dt {
        width:100%;
        margin-right: 0;
        font-size: 1.5rem;
        font-weight: 600;
        padding: 12px 35px;
        position: relative
    }

    #footer .footer_other_menu ul li.faq dl dt::after {
        content: "";
        position: absolute;
        right: 30px;
        top: 50%;
        margin-top: 1px;
        width: 12px;
        height: 12px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        -webkit-transition: .4s;
        transition: .4s
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li.faq dl dt.active::after {
        -webkit-transform:rotate(-45deg);
        transform: rotate(-45deg);
        margin-top: 0;
        right: 39px
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li.faq dl dd {
        padding:0 18px 18px
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li.faq dl dd ul {
        background:#4c4c4c;
        padding: 10px 0
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li.faq dl dd ul li {
        padding:0;
        border-top: 0;
        line-height: 1.4
    }

    #footer .footer_other_menu ul li.faq dl dd ul li::before {
        content: "-";
        position: absolute;
        top: 12px;
        left: 16px
    }
}

@media screen and (max-width: 768px) {
    #footer .footer_other_menu ul li.faq dl dd ul li a {
        position:relative;
        display: block;
        padding: 12px 40px;
        font-weight: 400
    }

    #footer .footer_other_menu ul li.faq dl dd ul li a::after {
        content: "";
        position: absolute;
        right: 25px;
        top: 50%;
        margin-top: -4px;
        width: 9px;
        height: 9px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        -webkit-transition: .4s;
        transition: .4s
    }
}

#footer .copybox .inner {
    max-width: 996px;
    margin: 0 auto;
    position: relative
}

@media screen and (max-width: 1050px) {
    #footer .copybox .inner {
        padding:0 30px
    }
}

@media screen and (max-width: 768px) {
    #footer .copybox .inner {
        padding:25px 20px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}

#footer .copybox .inner .logo {
    position: absolute;
    top: 23px;
    left: 0;
    width: 84px
}

@media screen and (max-width: 1050px) {
    #footer .copybox .inner .logo {
        left:30px
    }
}

@media screen and (max-width: 768px) {
    #footer .copybox .inner .logo {
        position:static;
        width: 60px
    }
}

#footer .copybox .inner .pmark {
    position: absolute;
    top: 13px;
    left: 100px
}

@media screen and (max-width: 1050px) {
    #footer .copybox .inner .pmark {
        position:absolute;
        top: 16px;
        left: 130px;
        width: 45px
    }
}

@media screen and (max-width: 768px) {
    #footer .copybox .inner .pmark {
        position:static;
        width: 30px;
        margin-left: 20px;
        margin-right: 20px
    }
}

#footer .copybox .inner .copy {
    text-align: center;
    font-size: 1.2rem;
    font-weight: 400;
    padding: 30px 0
}

#footer .copybox .inner .copy a {
    color: #333
}

@media screen and (max-width: 768px) {
    #footer .copybox .inner .copy {
        font-size:1rem;
        padding: 0;
        margin-top: 5px
    }
}

.sp_only {
    display: none
}

@media screen and (max-width: 768px) {
    .sp_only {
        display:block
    }
}

@media screen and (max-width: 768px) {
    .pc_only {
        display:none
    }
}

.sprite_class {
    background-color: transparent;
    background: url(https://media.eco-ring.com/wp-content/themes/kaitori/images/common/icon.png);
    background-repeat: no-repeat;
    background-size: 143px 286px
}

footer #sp_footer {
    display: none
}

footer #pc_footer {
    width: 100%;
    margin-top: 100px
}

footer #pc_footer #top_area ul.area_list {
    display: flex;
    justify-content: center;
    border-bottom: solid 1px #353535;
    padding: 0 0 20px 0
}

footer #pc_footer #top_area ul.area_list li {
    display: inline-block;
    padding-left: 10px
}

footer #pc_footer #top_area ul.area_list li:after {
    content: "";
    border-right: solid 1px #353535;
    padding-right: 10px
}

footer #pc_footer #top_area ul.area_list li:last-child:after {
    content: "";
    border-right: 0
}

footer #pc_footer #top_area ul.area_list li a {
    color: #353535
}

footer #pc_footer #top_area ul.other_list {
    display: flex;
    justify-content: center;
    padding: 20px 0 0 0;
    position: relative
}

footer #pc_footer #top_area ul.other_list li {
    display: inline-block;
    padding-left: 10px
}

footer #pc_footer #top_area ul.other_list li:after {
    content: "";
    border-right: solid 1px #353535;
    padding-right: 10px
}

footer #pc_footer #top_area ul.other_list li:last-child:after {
    content: "";
    border: 0
}

footer #pc_footer #top_area ul.other_list li a {
    color: #353535
}

footer #pc_footer #top_area ul.other_list .sns_area {
    position: absolute;
    top: 15px;
    right: 10px
}

footer #pc_footer #top_area ul.other_list .sns_area .sprite_class_facebook:hover {
    opacity: .6
}

footer #pc_footer #top_area ul.other_list .sns_area .sprite_class_twiiter:hover {
    opacity: .6
}

footer #pc_footer #top_area ul.other_list .sns_area .sprite_class_instagram:hover {
    opacity: .6
}

footer #pc_footer #top_area ul.other_list .sns_area .sprite_class_facebook {
    background-position: 0 -60px;
    width: 36px;
    height: 36px;
    display: inline-block;
    vertical-align: middle
}

footer #pc_footer #top_area ul.other_list .sns_area .sprite_class_twiiter {
    width: 30px;
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px
}

footer #pc_footer #top_area ul.other_list .sns_area .sprite_class_instagram {
    background-position: -106px -60px;
    width: 36px;
    height: 36px;
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px
}

footer #pc_footer #center_area {
    margin-top: 20px;
    padding-top: 20px;
    background: #7d7d7d;
    color: #fff
}

footer #pc_footer #center_area a {
    color: #fff
}

footer #pc_footer #center_area .site_list {
    display: flex
}

footer #pc_footer #center_area .site_list ul {
    flex-basis: 25%
}

footer #pc_footer #center_area .site_list ul li {
    list-style: none;
    padding: 10px 0
}

footer #pc_footer #center_area .site_list ul li:first-child {
    font-size: 18px;
    font-weight: 700;
    border-bottom: solid 1px #fff;
    margin-right: 10px
}

footer #pc_footer #center_area .purchase_list {
    border-top: solid 1px #fff;
    border-bottom: solid 1px #fff;
    padding: 20px 0
}

footer #pc_footer #center_area .purchase_list .purchase_flex {
    display: flex;
    margin: 20px 0
}

footer #pc_footer #center_area .purchase_list .purchase_flex p {
    flex-basis: 20%;
    font-size: 18px;
    font-weight: 700
}

footer #pc_footer #center_area .purchase_list .purchase_flex ul {
    flex-basis: 80%
}

footer #pc_footer #center_area .purchase_list .purchase_flex ul li {
    display: inline-block;
    padding-left: 10px
}

footer #pc_footer #center_area .purchase_list .purchase_flex ul li:after {
    content: "";
    border-right: solid 1px #fff;
    padding-right: 10px
}

footer #pc_footer #center_area .purchase_list .purchase_flex ul li:last-child:after {
    border-right: 0;
    padding-right: 0
}

footer #pc_footer #center_area .policy {
    background: #434343
}

footer #pc_footer #center_area .policy ul {
    display: flex;
    justify-content: center;
    padding: 20px 0
}

footer #pc_footer #center_area .policy li {
    display: inline-block;
    padding-left: 10px
}

footer #pc_footer #center_area .policy li:after {
    content: "";
    border-right: solid 1px #fff;
    padding-right: 10px
}

footer #pc_footer #center_area .policy li:last-child:after {
    content: "";
    border-right: 0
}

footer #pc_footer #center_area .policy li a {
    color: #fff
}

footer #pc_footer #bottom_area {
    padding: 20px 0
}

footer #pc_footer #bottom_area .container {
    display: flex
}

footer #pc_footer #bottom_area .container .flex_contents {
    flex-basis: 50%
}

footer #pc_footer #bottom_area .container .footer_logo p {
    display: inline-block;
    padding-left: 10px
}

footer #pc_footer #bottom_area .container .footer_logo .sprite_class_logo {
    background-position: 0 0;
    width: 90px;
    height: 36px;
    display: inline-block;
    vertical-align: middle
}

footer #pc_footer #bottom_area .container .footer_pmark {
    text-align: right
}

footer #pc_footer #bottom_area .container .footer_pmark img {
    display: inline-block
}
}

@media(max-width: 767px) {
    footer #pc_footer {
        display:none
    }

    footer #sp_footer {
        margin: 60px 0 150px 0
    }

    footer #sp_footer #top_area .page_top {
        width: 60%;
        margin: 0 auto;
        background: #434343;
        text-align: center;
        padding: 10px;
        color: #FFF;
        border-radius: 30px;
        font-weight: 700;
        position: relative;
        margin-bottom: 60px
    }

    footer #sp_footer #top_area .page_top:hover {
        opacity: .6
    }

    footer #sp_footer #top_area .page_top a {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }

    footer #sp_footer #top_area .page_top .arrow {
        display: inline-block;
        width: 8px;
        height: 8px;
        border-top: 2px solid #FFF;
        border-left: 2px solid #FFF;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        margin-left: 10px;
        vertical-align: middle
    }

    footer #sp_footer #top_area .area_list {
        width: 90%;
        margin: auto;
        text-align: center
    }

    footer #sp_footer #top_area .area_list li {
        display: inline-block
    }

    footer #sp_footer #top_area .area_list li:after {
        content: "|";
        padding: 0 5px
    }

    footer #sp_footer #top_area .area_list li:last-child:after {
        content: ""
    }

    footer #sp_footer #top_area .area_text {
        text-align: center
    }

    footer #sp_footer #top_area .area_list li a {
        color: #353535
    }

    footer #sp_footer #center_area ul li {
        padding: 20px;
        background: #333;
        color: #FFF;
        position: relative;
        border-bottom: solid 1px #FFF
    }

    footer #sp_footer #center_area ul li a {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        color: #FFF;
        text-decoration: none
    }

    footer #sp_footer #center_area ul li a:hover {
        pacity: .6
    }

    footer #sp_footer #center_area ul.col_1 li:after,footer #sp_footer #center_area ul.col_2 li:after {
        content: "";
        display: block;
        position: absolute;
        top: calc(50% - 4px);
        right: 20px;
        width: 10px;
        height: 10px;
        border-top: 4px solid #FFF;
        border-right: 4px solid #FFF;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    footer #sp_footer #center_area ul.col_2 {
        display: flex
    }

    footer #sp_footer #center_area ul.col_1 li,footer #sp_footer #center_area ul.col_2 li,footer #sp_footer #center_area ul.col_btn ul.nav_sub li {
        flex-basis: 50%;
        list-style: none;
        display: block;
        height: 62px;
        line-height: 62px
    }

    footer #sp_footer #center_area ul.col_1 li a span,footer #sp_footer #center_area ul.col_2 li a span,footer #sp_footer #center_area ul.col_btn ul.nav_sub li a span {
        margin: 10px 0 10px 20px
    }

    footer #sp_footer #center_area ul.col_2 li:nth-child(odd) {
        border-right: solid 1px #FFF
    }

    footer #sp_footer #center_area ul.col_btn ul.nav_sub.display {
        display: block
    }

    footer #sp_footer #center_area ul.col_btn ul.nav_sub.hide {
        display: none
    }

    footer #sp_footer #center_area ul.col_btn ul.nav_sub li {
        background: #f9f0a5;
        color: #353535;
        border-bottom: solid 1px #353535
    }

    footer #sp_footer #center_area ul.col_btn ul.nav_sub li:hover {
        opacity: .6
    }

    footer #sp_footer #center_area ul.col_btn ul.nav_sub li:last-child {
        border: 0
    }

    footer #sp_footer #center_area ul.col_btn li.enable:after {
        content: "";
        position: absolute;
        top: 20px;
        right: 10px;
        background-color: transparent;
        background: url(https://media.eco-ring.com/wp-content/themes/kaitori/images/common/icon.png);
        background-repeat: no-repeat;
        background-position: 0 -97px;
        background-size: 143px 286px;
        width: 31px;
        height: 31px;
        display: block;
        margin-right: 5px
    }

    footer #sp_footer #center_area ul.col_btn li.disable:after {
        content: "";
        position: absolute;
        top: 20px;
        right: 10px;
        background-color: transparent;
        background: url(https://media.eco-ring.com/wp-content/themes/kaitori/images/common/icon.png);
        background-repeat: no-repeat;
        background-position: 0 -130px;
        background-size: 143px 286px;
        width: 31px;
        height: 31px;
        display: block;
        margin-right: 5px
    }

    footer #sp_footer #center_area ul.col_btn ul.nav_sub li a {
        color: #353535
    }

    footer #sp_footer #center_area ul.col_btn ul.nav_sub li:after {
        content: "";
        display: block;
        position: absolute;
        top: calc(50% - 4px);
        right: 20px;
        width: 10px;
        height: 10px;
        border-top: 4px solid #353535;
        border-right: 4px solid #353535;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    footer #sp_footer #bottom_area {
        padding: 20px 20px 0 20px
    }

    footer #sp_footer #bottom_area .footer_logo {
        display: flex
    }

    footer #sp_footer #bottom_area .footer_logo p {
        flex-basis: 50%
    }

    footer #sp_footer #bottom_area .footer_logo p:nth-child(1) {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center
    }

    footer #sp_footer #bottom_area .footer_logo p:nth-child(2) {
        text-align: right
    }

    footer #sp_footer #bottom_area .footer_logo .sprite_class_logo {
        background-position: 0 0;
        width: 90px;
        height: 36px;
        display: inline-block;
        vertical-align: middle
    }

    footer #sp_footer #bottom_area .footer_copyright {
        text-align: center
    }
}

@media(min-width: 768px) {
    footer #fixs_footer .fix_btn_area ul {
        display:none
    }

    footer #fixs_footer .fix_footer_inner {
        width: 380px;
        position: fixed;
        bottom: 0;
        right: 20px;
        z-index: 50
    }

    footer #fixs_footer .fix_campain_area {
        cursor: pointer;
        cursor: hand;
        max-width: 380px;
        filter: drop-shadow(0 2px 5px #444)
    }

    footer #fixs_footer .fix_campain_area .campain_header {
        background: #dc3837;
        color: #FFF;
        text-align: center;
        position: relative;
        padding: 3px 0
    }

    footer #fixs_footer .fix_campain_area .campain_header:before {
        content: "";
        position: absolute;
        bottom: 2px;
        right: 10px;
        width: 24px;
        height: 24px;
        -webkit-border-radius: 50%;
        border-radius: 50%;
        background: #FFF
    }

    footer #fixs_footer .fix_campain_area .campain_header.up:after {
        content: "";
        position: absolute;
        bottom: 8px;
        right: 17px;
        width: 10px;
        height: 10px;
        border-top: 3px solid #dc3837;
        border-left: 3px solid #dc3837;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    footer #fixs_footer .fix_campain_area .campain_header.down:after {
        content: "";
        position: absolute;
        bottom: 10px;
        right: 17px;
        width: 10px;
        height: 10px;
        border-bottom: 3px solid #dc3837;
        border-right: 3px solid #dc3837;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    footer #fixs_footer .fix_campain_area .campain_contents {
        width: 100%;
        height: 18px;
        margin: 0 auto;
        position: relative;
        overflow: hidden;
        border-bottom: 1px solid #dc3837
    }

    footer #fixs_footer .fix_campain_area .campain_contents img {
        width: 100%;
        border: 1px solid #dc3837;
        box-sizing: border-box
    }
}

@media(max-width: 767px) {
    footer #fixs_footer .fix_footer_inner {
        width:100%;
        position: fixed;
        bottom: 0;
        z-index: 50
    }

    footer #fixs_footer .fix_btn_area {
        width: 100%;
        background: rgba(0,0,0,0.2);
        padding: 0;
        position: relative;
        cursor: pointer;
        cursor: hand
    }

    footer #fixs_footer .fix_btn_area ul {
        display: flex;
        justify-content: space-between
    }

    footer #fixs_footer .fix_btn_area ul li {
        list-style: none;
        flex-basis: 100%;
        padding: 10px 5px;
        text-align: center;
        font-weight: 400;
        font-size: 16px;
        position: relative;
        line-height: 1;
        border-radius: 5px;
        color: #FFF
    }

    footer #fixs_footer .fix_btn_area a {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }

    footer #fixs_footer .fix_btn_area .small_text {
        font-weight: 100;
        font-size: 14px
    }

    footer #fixs_footer .fix_btn_area .small_text_time {
        font-weight: 100;
        font-size: 14px;
        padding-left: 5px
    }

    footer #fixs_footer .fix_btn_area .fix_btn_text {
        vertical-align: middle
    }

    footer #fixs_footer .fix_btn_area .fix_btn_tel {
        background: #10af9e;
        display: flex;
        justify-content: center
    }

    footer #fixs_footer .fix_btn_area .fix_btn_tel:hover {
        opacity: .6
    }

    footer #fixs_footer .fix_btn_area .fix_btn_tel p {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        margin: 0
    }

    footer #fixs_footer .fix_btn_area .fix_btn_tel p:nth-child(2) {
        padding-right: 10px
    }

    footer #fixs_footer .fix_btn_area .fix_btn_tel .sprite_class_free_tel {
        background-position: 0 -210px;
        width: 32px;
        height: 23px;
        display: inline-block;
        margin-left: 10px;
        vertical-align: center
    }

    footer #fixs_footer .fix_campain_area {
        width: 100%;
        max-width: 375px;
        position: absolute;
        top: -45px;
        left: 0;
        right: 0;
        margin: 0 auto;
        z-index: 50;
        filter: drop-shadow(0 2px 5px #444)
    }

    footer #fixs_footer .fix_campain_area .campain_header {
        width: 90%;
        margin: 0 auto;
        background: #dc3837;
        color: #FFF;
        text-align: center;
        position: relative;
        padding: 3px 0
    }

    footer #fixs_footer .fix_campain_area .campain_header:before {
        content: "";
        position: absolute;
        bottom: 2px;
        right: 10px;
        width: 24px;
        height: 24px;
        -webkit-border-radius: 50%;
        border-radius: 50%;
        background: #FFF
    }

    footer #fixs_footer .fix_campain_area .campain_header.up:after {
        content: "";
        position: absolute;
        bottom: 8px;
        right: 17px;
        width: 10px;
        height: 10px;
        border-top: 3px solid #dc3837;
        border-left: 3px solid #dc3837;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    footer #fixs_footer .fix_campain_area .campain_header.down:after {
        content: "";
        position: absolute;
        bottom: 10px;
        right: 17px;
        width: 10px;
        height: 10px;
        border-bottom: 3px solid #dc3837;
        border-right: 3px solid #dc3837;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    footer #fixs_footer .fix_campain_area .campain_contents {
        width: 90%;
        height: 18px;
        margin: 0 auto;
        position: relative;
        overflow: hidden;
        border-bottom: 1px solid #dc3837
    }

    footer #fixs_footer .fix_campain_area .campain_contents img {
        width: 100%;
        border: 1px solid #dc3837;
        box-sizing: border-box
    }
}

.brcb {
    margin: 30px 0 10px 0
}

.syncer-brcb {
    overflow: hidden;
    list-style-type: none;
    padding: 5px 0 0 0;
    margin-bottom: 5px
}

.syncer-brcb li {
    float: left;
    font-weight: 100;
    font-size: 10px
}

.syncer-brcb li:after {
    content: ">";
    padding: 0 8px;
    font-weight: 100
}

.syncer-brcb li:last-child:after {
    content: none
}

@media(max-width: 767px) {
    .brcb {
        display:none
    }
}

#event h2 {
    font-size: 18px;
    text-align: left;
    line-height: 1.5em
}

#event h2 span {
    font-size: 18px;
    font-weight: bold
}

#event .wrap {
    padding: 30px 0;
    background: #e0dedf
}

#event .h2_sup {
    font-size: 14px;
    padding-top: 20px;
    text-align: center
}

#event ul.event_list {
    margin: 30px 0
}

#event ul.event_list li {
    position: relative;
    list-style: none
}

#event ul.event_list li:hover {
    opacity: .6
}

#event ul.event_list li a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

#event ul.event_list dl dt img {
    max-width: 100%
}

#event ul.event_list dl ._day {
    text-align: center;
    background: #FFF;
    padding: 2px 0;
    font-weight: 700;
    margin: 20px auto;
    max-width: 350px
}

#event ul.event_list dl ._text {
    color: #005982
}

#event .swiper-wrap {
    position: relative;
    text-align: center
}

#event .swiper-container .swiper-slide img {
    max-width: 100%;
    height: auto
}

#event .prettyprint {
    border: 0;
    background: #fafafa;
    color: #697d86
}

#event .swiper_button_prev_style {
    left: -5%
}

#event .swiper_button_next_style {
    right: -5%
}

@media(min-width: 768px) {
    #event h2 {
        display:flex;
        justify-content: center
    }

    #event h2 span {
        display: inline-block;
        position: relative;
        height: 50px;
        line-height: 50px;
        vertical-align: middle;
        text-align: center;
        padding: 0 60px;
        background: #dc3837;
        color: #FFF;
        box-sizing: border-box
    }

    #event h2 span:before,#event h2 span:after {
        position: absolute;
        content: '';
        width: 0;
        height: 0;
        z-index: 0
    }

    #event h2 span:before {
        top: 0;
        left: 0;
        border-width: 25px 0 25px 15px;
        border-color: transparent transparent transparent #e0dedf;
        border-style: solid
    }

    #event h2 span:after {
        top: 0;
        right: 0;
        border-width: 25px 15px 25px 0;
        border-color: transparent #e0dedf transparent transparent;
        border-style: solid
    }
}

@media(max-width: 767px) {
    #event {
        margin:20px 0
    }

    #event h2 {
        vertical-align: middle;
        text-align: center;
        padding: 10px 0;
        background: #dc3837;
        color: #FFF;
        margin: 0
    }

    #event h2 span {
        font-weight: bold
    }

    #event .wrap {
        padding: 0 0 20px 0
    }

    #event .btn_link {
        margin-top: 50px
    }

    #event ul.event_list {
        margin: 30px 0 0 0
    }
}

#fix_footer_type_2 {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 1000;
    padding-top: 5px;
    padding-bottom: 5px;
    background: #ea4132;
    border-radius: 50%;
    text-align: center;
    font-size: 16px
}

#fix_footer_type_2:active {
    opacity: .5
}

#fix_footer_type_2 a.circle-btn {
    color: #FFF;
    display: block;
    padding: 30px 25px 20px 25px
}

#fix_footer_type_2 a.circle-btn:hover {
    color: #FFF;
    text-decoration: none
}

@media(max-width: 767px) {
    #fix_footer_type_2 {
        font-size:14px
    }

    #fix_footer_type_2 a.circle-btn {
        padding: 10px 15px 5px 15px
    }
}

#purchase_method {
    margin: 60px 0;
    display: block
}

#purchase_method h2 {
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    position: relative;
    color: #333
}

#purchase_method h2 span {
    font-size: 22px;
    font-weight: 100
}

#purchase_method .h2_sup {
    font-size: 14px;
    padding-top: 20px;
    text-align: center
}

#purchase_method .method_list .text {
    display: block
}

@media(min-width: 768px) {
    #purchase_method .method_list {
        display:flex;
        flex-wrap: wrap;
        margin-top: 40px
    }

    #purchase_method dl {
        width: 25%;
        background: #f9ce2a;
        border-right: solid 1px #FFF;
        padding: 0 10px;
        text-align: center;
        position: relative
    }

    #purchase_method dl:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 30px 30px 0 0;
        border-color: #f49a12 transparent transparent transparent
    }

    #purchase_method dl:last-child {
        border: 0
    }

    #purchase_method dl dd .shop_img {
        width: 100%;
        max-width: 200px;
        height: 100%;
        max-height: 200px;
        margin: 0 auto
    }

    #purchase_method dl dd .trip_img {
        width: 200px;
        height: 200px;
        background: #FFF;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%
    }

    #purchase_method dl dd .delivery_img {
        width: 200px;
        height: 200px;
        background: #FFF;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        overflow: hidden
    }

    #purchase_method dl dd .line_img {
        width: 200px;
        height: 200px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center
    }

    #purchase_method dl dd .method_img {
        margin-bottom: 20px
    }

    #purchase_method dl dd .shop_img img {
        border-radius: 50%;
        width: 100%;
        height: 200px
    }

    #purchase_method dl dd .trip_img img {
        width: 100%
    }

    #purchase_method dl dd .delivery_img img {
        width: 100%
    }
}

@media screen and (min-width: 768px) and (max-width:992px) {
    #purchase_method dl {
        width:50%;
        border-top: solid 1px #FFF
    }

    #purchase_method dl:last-child {
        border-top: solid 1px #FFF
    }
}

@media(max-width: 767px) {
    #purchase_method h2 {
        font-size:18px;
        text-align: left;
        line-height: 1.5em
    }

    #purchase_method h2 span {
        font-size: 18px;
        font-weight: bold
    }

    #purchase_method .h2_sup {
        text-align: left;
        padding: 20px 10px 0 10px;
        margin: 0
    }

    #purchase_method {
        margin: 0
    }

    #purchase_method .container {
        padding: 0
    }

    #purchase_method h2 {
        padding: 0 15px;
        text-align: center
    }

    #purchase_method .h2_sup {
        padding: 10px 40px;
        text-align: center
    }

    #purchase_method .method_list {
        display: flex;
        flex-wrap: wrap;
        margin-top: 40px
    }

    #purchase_method .method_list .text {
        display: none
    }

    #purchase_method .method_list .btn_link {
        display: none
    }

    #purchase_method dl {
        width: 100%;
        background: #fbdc68;
        border: 0;
        border-bottom: solid 1px #FFF;
        padding: 0;
        text-align: left;
        position: relative;
        display: flex;
        align-items: center
    }

    #purchase_method dl:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: -30px;
        bottom: 0;
        margin: auto 0;
        width: 20px;
        height: 20px;
        border-top: 2px solid #FFF;
        border-right: 2px solid #FFF;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    #purchase_method dl a {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }

    #purchase_method dl dt {
        padding-left: 10px;
        flex-basis: 60%
    }

    #purchase_method dl.shop {
        border-left: solid 30px #f49a12
    }

    #purchase_method dl.trip {
        border-left: solid 30px #fc715a
    }

    #purchase_method dl.delivery {
        border-left: solid 30px #3398cc
    }

    #purchase_method dl.line {
        border-left: solid 30px #40a629
    }

    #purchase_method .line_img img {
        width: 80%
    }

    #purchase_method dl dd {
        flex-basis: 40%;
        text-align: center
    }

    #purchase_method dl dd img {
        max-width: 100%;
        padding: 10px
    }
}

#materialIndex .header_menu_bottom {
    display: none
}

#materialIndex .clone-header .header_menu_bottom {
    display: none
}

@media screen and (min-width: 768px) {
    #materialIndex .clone-header .header_menu_bottom {
        display:block;
        line-height: 1.5em
    }
}

.brcb {
    margin: 10px 0 10px 0
}

.footer-bnr {
    display: none
}

@media screen and (max-width: 768px) {
    .footer-bnr {
        display:block;
        position: fixed;
        bottom: 0;
        padding: 0 10px;
        z-index: 19
    }

    #footer {
        padding-bottom: 100px
    }

    .footer-bnr a:hover img {
        opacity: 1
    }
}

/*! footer video area */
.footer-video {
    position: fixed;
    bottom: -10px;
    left: 5px;
    width: 250px;
    z-index: 100;
    transition: .5s ease-out
}

.footer-video img {
    width: 100%;
    image-rendering: -webkit-optimize-contrast
}

.video-toggle-btn {
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 10px;
    right: 12px;
    cursor: pointer
}

.footer-video.off {
    transform: translateY(73%)
}

.video-toggle-btn::before {
    display: block;
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 10px;
    height: 10px;
    margin: 0;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    transition: .5s ease-out
}

.off .video-toggle-btn::before {
    top: 8px;
    -webkit-transform: rotate(315deg);
    transform: rotate(315deg)
}

@media screen and (max-width: 480px) {
    .footer-video {
        display:none
    }
}


/* --------------------------------------------------------------------------------
追加CSS
-------------------------------------------------------------------------------- */


.heading012 {
	font-size: 28px;
	font-weight: bold;
	text-align: center !important;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Verdana, sans-serif;
}



.mi06 {
  position: relative;
  padding: 0.25em 0.8em;
  font-size: 22px;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Verdana, sans-serif;
}

.mi06::before {
  content: '';
  position: absolute;
  top: 6;
  left: -3px; /* 線の位置を調整するために必要な量を指定します */
  width: 4px; /* 線の太さ */
  height: 75%; /* 要素の高さに合わせる */
  background: linear-gradient(to bottom, #004db1, #33abe7); /* グラデーション */
  border-radius: 10px; /* 角丸にするための値を指定します */
}

.heading-6 {
    display: inline-block;
    position: relative;
	font-size:20px;
    padding: 0 30px;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Verdana, sans-serif;
}

.heading-6::before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 40%;
    width: 20px;
    height: 3px;
    background-color: #004db1;
}

.heading-6::before {
    left: 0;
}

.heading-6::after {
    right: 0;
}



.list-9 {
    list-style-type: disc !important;
    list-style-position: inside !important;
    padding: 1em !important;
    border: 2px solid #004db1 !important;
    width: 100% !important; /* 幅を100%に設定 */
    margin: 0 auto !important; /* リスト全体を中央に配置 */
    box-sizing: border-box !important; /* パディングとボーダーを含む幅を設定 */
			margin-bottom:30px !important;
}

.list-9 li {
    padding: .5em !important;
    margin-left: 0 !important; /* マーカーとテキストの間のスペースをリセット */
}

.list-9 li:not(:last-child) {
    border-bottom: 1px dashed #004db1 !important;
}

.list-9 li::marker {
    color: #004db1 !important;
    font-size: 1.1em !important;
}
.img {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    text-align: center;
    margin-bottom: 10px;
}

.img img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
}

li {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: auto;
    padding: 10px;
}
.headline1 {
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	margin-top: 20px;
	margin-bottom: 20px;
}

.textwidget p {
	font-size: 16px;
	line-height: 1.5;
	font-family:
	"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#535353:
}




/* パソコン表示（PC用）：幅769px以上のデバイス */
@media (min-width: 769px) {
    .sect_merit #merit_sect01 .inner h3 {
	font-size: 54px !important;
	    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 900; /* Blackのウェイトを指定 */
			margin-bottom:-30px !important;
			padding-bottom:0px !important;
    }
}

/* スマホ表示（SP用）：幅768px以下のデバイス */
@media (max-width: 768px) {
    .sect_merit #merit_sect01 .inner h3{
        font-size: 22px;
    }
}


/* パソコン表示（PC用）：幅769px以上のデバイス */
@media (min-width: 769px) {
.wrapper-h h4 {
	font-size: 36px !important;
	    font-family: 'Noto Sans JP', sans-serif !important;
    font-weight: 900 !important; /* Blackのウェイトを指定 */
    }
}
/* スマホ表示（SP用）：幅768px以下のデバイス */
@media (max-width: 768px) {
.wrapper-h h4 {
        font-size: 22px !important;
    }
}



/* パソコン表示（PC用）：幅769px以上のデバイス */
@media (min-width: 769px) {
    .inner .ttl_type01 {
	font-size: 54px !important;
	    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 900; /* Blackのウェイトを指定 */
    }
}

/* スマホ表示（SP用）：幅768px以下のデバイス */
@media (max-width: 768px) {
    .inner .ttl_type01{
        font-size: 22px;
    }
}


.sect_merit .merit_sect_common .inner h3 {
}



/* パソコン表示（PC用）：幅769px以上のデバイス */
@media (min-width: 769px) {
.sect_merit .merit_sect_common .inner h3 {
	font-size: 54px !important;
	    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 900; /* Blackのウェイトを指定 */
    }
}

/* スマホ表示（SP用）：幅768px以下のデバイス */
@media (max-width: 768px) {
.sect_merit .merit_sect_common .inner h3{
        font-size: 22px;
    }
}
.big {
	font-size: 24px !important;
	text-align: center !important;
	font-weight:bold !important;
}


.box-019 {
    position: relative;
    margin-top: 1em; /* 上部余白の調整 */
    padding: 0.5em 1.5em 1em 1.5em; /* 上部のpaddingを調整 */
    border: 2px solid #0068b7;
    margin-bottom: 30px !important;
    text-align: center;
}
.box-019 .tex {
	text-align: left;
}

.box-019 > div {
    position: relative; /* relativeに変更 */
    display: inline-block; /* インライン要素として中央揃え */
    padding: .4em 1.8em;
    border-radius: 5px;
    background-color: #0068b7;
    color: #fff;
    font-size: .9em;
    margin-top: 15px; /* 青枠の上に15pxの余白 */
    margin-bottom: 15px; /* 青枠の下に15pxの余白 */
}

.box-019 p {
    margin: 0;
}

.box-019 div p {
    font-size: 18px;
    font-weight: bold;
    margin: 0; /* タイトルの段落の余白を無くす */
}



/* コンテナ全体のスタイル */
.recommendation-container {
    font-family: Arial, sans-serif; /* フォントを設定 */
    max-width: 100%; /* 最大幅を設定 */
    margin: 20px auto; /* 上下左右の余白を設定 */
    padding: 20px; /* コンテナ内の余白を設定 */
    border: 1px solid #e0e0e0; /* 枠線を設定 */
    background-color: #f9f9f9; /* 背景色を設定 */
    border-radius: 8px; /* 角を丸くする */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* ボックスシャドウを追加 */
}

/* セクションタイトルのスタイル */
.recommendation-container h2 {
    font-size: 24px; /* フォントサイズを設定 */
    color: #004db1; /* テキストカラーを設定 */
    margin-bottom: 15px; /* 下部の余白を設定 */
    text-align: center; /* 中央揃え */
}

/* 各項目のボックススタイル */
.recommendation-item {
    display: flex; /* フレックスボックスを使用 */
    align-items: flex-start; /* アイテムを上揃え */
    background-color: #ffffff; /* 背景色を白に設定 */
    border: 1px solid #ddd; /* 枠線を設定 */
    border-radius: 5px; /* 角を丸くする */
    padding: 15px; /* ボックス内の余白を設定 */
    margin-bottom: 15px; /* 下部の余白を設定 */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* ボックスシャドウを追加 */
}

/* 各項目の番号スタイル */
.recommendation-item .number {
    flex-shrink: 0; /* フレックスサイズを固定 */
    font-size: 20px; /* フォントサイズを設定 */
    font-weight: bold; /* 太字に設定 */
    color: #ffffff; /* テキストカラーを白に設定 */
    background-color: #004db1; /* 番号の背景色を設定 */
    border-radius: 50%; /* 番号の背景を丸くする */
    width: 40px; /* 番号の幅を設定 */
    height: 40px; /* 番号の高さを設定 */
    display: flex; /* フレックスボックスを使用 */
    align-items: center; /* 縦中央揃え */
    justify-content: center; /* 横中央揃え */
    margin-right: 15px; /* 右側の余白を設定 */
}

/* 各項目の内容スタイル */
.recommendation-item .content {
    flex-grow: 1; /* 残りの幅を占有 */
}

/* 各項目のタイトルスタイル */
.recommendation-item .content h3 {
    font-size: 18px; /* フォントサイズを設定 */
    color: #333; /* テキストカラーを設定 */
    margin: 0 0 10px 0; /* 上と下の余白を設定 */
}

/* 各項目の説明スタイル */
.recommendation-item .content p {
    font-size: 14px; /* フォントサイズを設定 */
    line-height: 1.6; /* 行間を設定 */
    color: #666; /* テキストカラーを設定 */
    margin: 0; /* 余白をリセット */
}

/* 全体のコンテナスタイル */
.step-container {
    font-family: Arial, sans-serif; /* ベースのフォントを設定 */
    max-width: 100%; /* コンテナの最大幅を設定 */
    margin: 0 auto; /* コンテナを中央揃え */
    padding: 20px; /* コンテナ内の余白を設定 */
    border: 1px solid #e0e0e0; /* コンテナの枠線を設定 */
    background-color: #f9f9f9; /* 背景色を設定 */
}

/* タイトルのスタイル */
.intro h2 {
    font-size: 24px; /* タイトルのフォントサイズを設定 */
    color: #004db1; /* タイトルの文字色を設定 */
    margin-bottom: 10px; /* 下部の余白を設定 */
}

/* 段落のスタイル */
.intro p {
    font-size: 16px; /* 段落のフォントサイズを設定 */
    line-height: 1.5; /* 行間を設定 */
    margin-bottom: 20px; /* 下部の余白を設定 */
}

/* ポイントとステップのセクションタイトル */
.points h3,
.steps h3 {
    font-size: 20px; /* サブタイトルのフォントサイズを設定 */
    color: #333; /* サブタイトルの文字色を設定 */
    margin-bottom: 15px; /* 下部の余白を設定 */
    border-bottom: 2px solid #004db1; /* 下線を追加 */
    padding-bottom: 5px; /* 下線との距離を調整 */
}

/* ポイントとステップのボックス */
.point, .step {
    background-color: #fff; /* ボックスの背景色を設定 */
    border: 1px solid #ddd; /* ボックスの枠線を設定 */
    border-radius: 5px; /* ボックスの角を丸める */
    padding: 15px; /* ボックス内の余白を設定 */
    margin-bottom: 15px; /* ボックス間の余白を設定 */
}

/* ポイントとステップのタイトル */
.point h4, .step h4 {
    font-size: 18px; /* ポイントのタイトルフォントサイズを設定 */
    color: #004db1; /* タイトルの文字色を設定 */
    margin-bottom: 10px; /* 下部の余白を設定 */
}

/* ポイントとステップの段落 */
.point p, .step p {
    font-size: 14px; /* 段落のフォントサイズを設定 */
    line-height: 1.6; /* 行間を設定 */
    margin-bottom: 10px; /* 下部の余白を設定 */
}

/* step 内のリスト全体を左揃えにする */
.step {
    text-align: left; /* step 内の全体を左揃えにする */
}

/* リストのスタイルをリセットし、左揃えに設定 */
.step ul {
    list-style-type: disc !important; /* ディスク型のマーカーを確実に表示 */
    list-style-position: inside; /* マーカーをリスト項目の内側に配置 */
    padding-left: 20px; /* 左側にインデントを設定 */
    margin: 0; /* リストの上下余白をリセット */
}

/* 各リスト項目のスタイル */
.step ul li {
    text-align: left; /* 各リスト項目も左揃えにする */
    margin-bottom: 5px; /* 各リスト項目の下部の余白を設定 */
    display: list-item; /* リストアイテムとして表示 */
}

/* マーカーの強制表示 */
.step ul li::marker {
    content: "•"; /* ディスク型マーカーを強制表示 */
    color: #000; /* マーカーの色を設定 */
    font-size: 1em; /* マーカーのサイズを設定 */
}

