@charset "utf-8"; @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700&display=swap');
@font-face {
    font-family: "hiraginokakugo_w7";
    src: url('../font/hiraginokakugo_w7.woff') format('woff');
    font-display: swap;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用スタイル　＞　サイトのテーマ色を一括指定する
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* 文字色 */
body.sp[class*="voice"] ul.child_navi a[href*="voice"], body.sp dl.type01 [class*="current"] > a, body.sp dl.type01 dt, a.basic_btn02, .basic_list01 li:before, ol.basic_list02 > li:after, a.basic_color_font, [class*="current"] .basic_color_font_cur, [class*="current"] .basic_color_font_cur:hover, .basic_color_font_bf:before, .basic_color_font_af:after, .cmn_kadomaru {
    color: #ff7c08;
}

/* ボーダー色 */
body.sp dl.type01 > dt .arrow, h3[class*="h3a"], h2[class*="h2a"], .basic_box02, .basic_list02 > li, .basic_color_border, .basic_color_border_bg:before, .basic_color_border_af:after, .cmn_kadomaru {
    border-color: #ff7c08;
}

/* 背景色 */
a.basic_btn01, h3[class*="h3b"], ol.basic_list02 > li:before, .basic_color_bg, .basic_color_bg_bf:before, .basic_color_bg_af:after, #h_navi_main ul:not(.sub-menu) > li > a:after {
    background-color: #ff7c08;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
電話番号のフォントファミリーを指定
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
div#tel_lb .num,a[href*="tel:"]:not(.ja) {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
下層ページ　＞　ヘッダー画像
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.page_promo .txt_box {
    padding-bottom: 20px;
}

.page_promo .sub_ttl {
    display: none;
}

.page_promo .slug {
    display: block;
    font-family: 'Poppins', sans-serif;
    font-size: 1.8rem;
    font-weight: bold;
    text-transform: uppercase;
    color: #fdd000; 
    margin: 0 0 8px;
}

.page_promo .ttl {
    color: #fff;
}

.page_promo .img_wrap {
    height: 350px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用スタイル　＞　画像がない場合の汎用スタイル
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.noimage {
    background-color: #fff2cb;
    background-size: 26% auto;
    background-position: center center;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ビジュアルエディタ　＞　汎用見出し
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* [.h2a][.h2b]共通のスタイル */
h2[class*="h2"] {
    font-weight: bold;
}

/* [.h2a]のスタイル */
h2[class*="h2a"] {
    color: #4b2f00;
    background-color: #fff4c0;
    border: none;
    padding: 15px 40px;
}

h2[class*="h2a"]::before {
    content: '';
    display: block;
    width: 8px;
    height: calc(100% - 24px);
    background-color: #ffa000;
    position: absolute;
    top: 12px;
    left: 15px;
    border-radius: 8px;
}

/* [.h2b]のスタイル */
h2[class*="h2b"] {
    padding: 65px 0 0;
}

h2[class*="h2b"]:before {
    width: 46px;
    height: 41px;
    background: url(../images/chara.svg) no-repeat center center / contain;
    right: calc(50% - 23px);
}

/* [.h3a][.h3b]共通のスタイル */
h3[class*="h3"] {
    font-weight: bold;
    border: none;
    padding: 15px 20px;
}

/* [.h3a]のスタイル */
h3[class*="h3a"] {
    color: #fff;
    background-color: #90c31f;
}

/* [.h3b]のスタイル */
h3[class*="h3b"] {
    color: inherit;
    background: none;
    border-top: 2px solid #ffa000;
    border-bottom: 2px solid #ffa000;
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ビジュアルエディタ　＞　汎用ボタン01
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
a.basic_btn01 {
	font-weight: bold;
	background-color: #90c31f;
	border-radius: 2em;
    padding: 22px 30px;
}

a.basic_btn01::after {
    right: 10px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ビジュアルエディタ　＞　テーブル01
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.basic_table01 th, .basic_table01 td {
    border-color: #bac998;
}

.basic_table01 th {
    background-color: #f0f8df;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ビジュアルエディタ　＞　汎用ボックス
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.basic_box01 {
    background-color: #fff1d9;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
JQプラグイン　＞　「Slick」（スライダー）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.slick-prev, 
.slick-next {
    width: 50px;
    height: 50px;
    border: 3px solid #f39800;
}

.slick-prev {
    left: -10px;
}

.slick-next {
    right: -10px;
}

.slick-prev:before, 
.slick-next:before {
    width: 10px;
    height: 10px;
    border-color: #f39800;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
献立一覧　＞　アーカイブ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
ul.cmn_menu_list li {
    border-bottom: 1px dashed #dddddd;
    padding-bottom: 30px;
    align-items: center;
    justify-content: space-between;
}

ul.cmn_menu_list li~li {
    padding-top: 30px;
}

ul.cmn_menu_list p.ttl {
    max-width: calc(100% - 300px);
}

ul.cmn_menu_list p.ttl a {
    font-size: 2rem;
    font-weight: bold;
}

ul.cmn_menu_list p.btn a {
    font-weight: bold;
    color: #ffa000;
    border: 2px solid;
    border-radius: 4px;
    padding: 18px 80px;
    position: relative;
}

ul.cmn_menu_list p.btn a::before,
ul.cmn_menu_list p.btn a::after {
    font-family: "icomoon";
    font-weight: normal;
    position: absolute;
} 

ul.cmn_menu_list p.btn a::before {
    content: '\e90c';
    font-size: 25px;
    color: #ffa000;
    top: calc(50% - 22px);
    left: 25px;
}

ul.cmn_menu_list p.btn a::after {
    content: '\e91b';
    font-size: 10px;
    color: #fff;
    background: #ffa000;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    top: calc(50% - 12px);
    right: 20px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
お客様の声　＞　一覧・詳細共通
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
body[class*="voice"] div#contents_area {
    padding-top: 0px;
}

body[class*="voice"] .child_navi_wrap {
    margin-bottom: 65px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
お客様の声　＞　一覧ページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
ul.cmn_voice_list li.box {
    justify-content: space-between;
    align-items: center;
    border: 1px solid #aaaaaa;
    border-radius: 5px;
    padding: 26px;
    margin: 0 20px;
	/*下線が消えるバグを防ぐため、min-heightを指定*/
    min-height: 250px;
}

body.archive ul.cmn_voice_list li.box {
    padding: 40px 90px 40px 40px;
	margin: 0;
}

body.archive ul.cmn_voice_list li.box:not(:last-child) {
    margin-bottom: 28px;
}

ul.cmn_voice_list .area_a {
    width: 230px;
}

body.archive ul.cmn_voice_list .area_a {
    width: 245px;
}

ul.cmn_voice_list .img {
    padding-top: 85%;
}

ul.cmn_voice_list .area_b {
    flex: 1;
    margin: 0 0 0 20px;
}

body.archive ul.cmn_voice_list .area_b {
    margin: 0 0 0 50px;
}

ul.cmn_voice_list p.cat_wrap {
    margin-bottom: 15px;
}

ul.cmn_voice_list p.cat_wrap span {
    font-weight: bold;
    color: #fff;
    background-color: #90c31f;
    display: inline-block;
    padding: 5px 15px;
    min-width: 130px;
    text-align: center;
    border-radius: 5px;
}

ul.cmn_voice_list h3.ttl {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.7;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-bottom: 10px;
}

ul.cmn_voice_list p.name {
    font-size: 1.6rem;
    font-weight: bold;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
お客様の声　＞　詳細ページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
body.single-voice .voice_wrap {
    border: 1px solid #aaaaaa;
    border-radius: 5px;
    padding: 50px 60px;
}

body.single-voice .voice_wrap p.cat_wrap span {
    font-weight: bold;
    color: #fff;
    background-color: #90c31f;
    display: inline-block;
    padding: 5px 15px;
    min-width: 130px;
    text-align: center;
    border-radius: 5px;
}

body.single-voice #main_area .voice_wrap h1 {
    font-size: 2.2rem;
    margin-bottom: 15px;
}

body.single-voice .voice_wrap p.name {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: right;
}

body.single-voice .voice_wrap p.eye_img {
    text-align: center;
    margin: 45px 0 30px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　ご契約の流れ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
ol.cmn_flow_list {
    justify-content: space-between;
    padding: 30px 0 0;
}

ol.cmn_flow_list li {  
    width: calc(25% - 25px);
    border-radius: 5px;
    padding: 235px 20px 30px;
    background: no-repeat 50% 40px / 91% auto #ffffff;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    position: relative;
}

ol.cmn_flow_list li:nth-child(1) {
    background-image: url(../images/flow1.jpg);
}

ol.cmn_flow_list li:nth-child(2) {
    background-image: url(../images/flow2.jpg);
}

ol.cmn_flow_list li:nth-child(3) {
    background-image: url(../images/flow3.jpg);
}

ol.cmn_flow_list li:nth-child(4) {
    background-image: url(../images/flow4.jpg);
}

ol.cmn_flow_list li::before {
    content: '' counters(ol_cnt, "");
    font-family: 'Poppins', sans-serif;
    font-size: 3rem;
    font-weight: 600;
    color: #fff;
    position: absolute;
    top: -20px;
    left: calc(50% - 30px);
    border-radius: 50%;
    background: linear-gradient(-45deg, #90c31f 0%, #90c31f 50%, #77b114 50%, #77b114 100%);
    width: 60px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
}

ol.cmn_flow_list li h3.ttl {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　対応エリア
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.cmn_subarea {
	border: 3px solid #fdd000;
	border-radius: 5px;
	padding: 60px 660px 70px 80px;
	background: url(../images/sub_area.jpg) no-repeat 76% 0% / auto 100% #fff;
    position: relative;
}

.cmn_subarea h3.ttl {
    font-family: "hiraginokakugo_w7";
	text-align: center;
	margin: 0 0 25px;
}

.cmn_subarea h3.ttl span.en {
	font-size: 1.8rem;
	color: #fdd000;
	display: block;
	margin: 0 0 10px;
}

.cmn_subarea h3.ttl span.ja {
	font-size: 3.2rem;
}

.cmn_subarea table.main_txt {
    margin: 0 0 15px;
}

.cmn_subarea table.main_txt tr {
    display: inline-block;
}

.cmn_subarea table.main_txt th {
    font-weight: bold;
	vertical-align: top;
}

.cmn_subarea table.main_txt td {
    font-weight: bold;
}

.cmn_subarea p.btn {
	text-align: center;
}

.cmn_subarea::after {
    content: '';
    display: block;
    background: url(../images/deli_man.png) no-repeat center top / contain;
    width: 175px;
    height: 181px;
    position: absolute;
    right: 60px;
    bottom: -3px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　汎用クラス
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
h2.cmn_ttl {
    font-weight: bold;
    text-align: center;
    background-color: #ffa000;
    padding: 38px 0;
}

h2.cmn_ttl span.en {
    font-size: 1.8rem;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    color: #fdd000;
    display: block;
    margin-bottom: 5px;
}

h2.cmn_ttl span.ja {
    font-family: "hiraginokakugo_w7";
    font-size: 3.2rem;
    color: #fff;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　プロモ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
div#promo_frame {
    padding: 2% 0 10px;
}

div#promo_frame p.txt_wrap {
    width: 100%;
    height: 100%;
    text-align: center;
}

div#promo_frame p.txt_wrap img {
    width: auto;
    height: 100%;
    max-height: 473px;
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　ツイートエリア
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*.tweet_area {
    border-bottom: 1px solid #dfe2e9;
    margin-top: -70px;
}*/

.tweet_area .f_wrap {
    align-items: center;
    background-color: #fff;
    /*border-radius: 10px 10px 0 0;*/
    overflow: hidden;
	height: 70px;
}

.tweet_area .f_wrap > * {
	padding: 15px;
}

.tweet_area p.icon {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.2rem;
    color: #fff;
    background-color: #ffa000;
    width: 150px;
    align-self: stretch;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.tweet_area ul.items {
    width: calc(100% - 150px - 140px);
    padding: 0 0 0 40px;
}

.tweet_area span.date {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    margin-right: 20px;
}

.tweet_area span.cat {
    font-size: 1.4rem;
    font-weight: bold;
    color: #fff;
    padding: 3px 15px;
    margin-right: 20px;
    border-radius: 2em;
    display: inline-block;
}

.tweet_area span.ttl {
    font-weight: bold;
}

.tweet_area .more {
    width: 140px;
    padding-right: 50px;
}

.tweet_area span.more a {
    font-size: 1.5rem;
    font-weight: bold;
    text-decoration: underline;
    position: relative;
}

.tweet_area span.more a:hover {
    text-decoration: none;
}

.tweet_area span.more a::after {
    font-family: "icomoon";
    content: '\e91b';
    position: absolute;
    top: calc(50% - .7em);
    right: -30px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　バナー
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#home_bnr ul.items {
    justify-content: space-between;
}

#home_bnr ul.items li {
    width: 380px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　WORK
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#home_work .kugiri_m {
    background: url(../images/work_bg.jpg) no-repeat #fffaeb;
    background-position: calc(50% - 480px) top;
}

#home_work p.main_lead {
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px;
}

#home_work ul.items {
    justify-content: space-between;
	gap: 30px;
}

#home_work ul.items li {
    text-align: center;
    width: calc(50% - 15px);
    border-radius: 5px;
    padding: 220px 25px 40px;
    background: no-repeat 50% 35px / 162px 162px #fff;
    overflow: hidden;
}

#home_work ul.items li.bento {
    background-image: url(../images/bill.png);
}

#home_work ul.items li.icontract {
    background-image: url(../images/gohan.png);
}

#home_work ul.items li.cater {
    background-image: url(../images/truck.png);
}

#home_work ul.items li.kids {
    background-image: url(../images/youchien.png);
}

#home_work ul.items li.pack {
    background-image: url(../images/pack.png);
}


#home_work ul.items li:hover {
    opacity: 1;
}

#home_work ul.items li::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    box-shadow: 0px 0px 0px 14px #ccc inset;
    transform: scale(1.1);
    transition: .3s;
}

#home_work ul.items li.bento::before {
    box-shadow: 0px 0px 0px 14px #ffdb79 inset;
}

#home_work ul.items li.icontract::before {
    box-shadow: 0px 0px 0px 14px #e7f2d0 inset;
}

#home_work ul.items li.cater::before {
    box-shadow: 0px 0px 0px 14px #ffece5 inset;
}

#home_work ul.items li.kids::before {
    box-shadow: 0px 0px 0px 14px #daf1ff inset;
}

#home_work ul.items li.pack::before {
    box-shadow: 0px 0px 0px 14px #c1cbff inset;
}

#home_work ul.items li:hover::before {
    transform: scale(1);
    opacity: 1;
}

#home_work ul.items h3.ttl {
    font-family: "hiraginokakugo_w7";
    font-size: 2.8rem;
    margin-bottom: 12px;
}

#home_work ul.items li.bento h3.ttl{
    color: #ffbb00;
}

#home_work ul.items li.icontract h3.ttl{
    color: #90c31f;
}

#home_work ul.items li.cater h3.ttl{
    color: #e95e00;
}

#home_work ul.items li.kids h3.ttl{
    color: #53aee7;
}

#home_work ul.items li.pack h3.ttl{
    color: #3443b3;
}

#home_work ul.items h3.ttl a {
    display: inline-block;
    position: relative;
    padding: 0 40px;
}

#home_work ul.items h3.ttl a::after {
    content: '\e91b';
    font-family: "icomoon";
    font-size: 12px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 12px);
    right: 0px;
}

#home_work ul.items li.bento h3.ttl a::after {
    background-color: #ffbb00;
}

#home_work ul.items li.icontract h3.ttl a::after {
    background-color: #90c31f;
}

#home_work ul.items li.cater h3.ttl a::after {
    background-color: #e95e00;
}

#home_work ul.items li.kids h3.ttl a::after {
    background-color: #53aee7;
}

#home_work ul.items li.pack h3.ttl a::after {
    background-color: #3443b3;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　menu
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#home_menu .menu_box {
    border: 4px solid #fdd000;
	border-radius: 8px;
}

#home_menu .h2_wrap {
	background-color: #fdd000;
    padding: 35px 0;
}

#home_menu h2.main_ttl {
    font-family: "hiraginokakugo_w7";
	font-size: 3.4rem;
	text-align: center;
	color: #fff;
	position: relative;
	display: table;
    margin: 0 auto;
}

#home_menu h2.main_ttl::before,
#home_menu h2.main_ttl::after {
	content: '';
	display: block;
	position: absolute;
    background: no-repeat center top / contain;
}

#home_menu h2.main_ttl::before {
	content:'PICK UP';
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	font-size: 2.3rem;
	color: #fdd000;
	background-image: url(../images/pickup.png);
	width: 133px;
	height: 104px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	top: -70px;
    left: -125px;
}

#home_menu h2.main_ttl::after {
    background-image: url(../images/menu_h2_after.png);
    width: 143px;
    height: 144px;
    bottom: -36px;
    right: -155px;
}

#home_menu .menu_box .txt_wrap {
    padding: 30px 60px 60px;
}

#home_menu p.main_lead {
	font-weight: bold;
	text-align: center;
	margin: 0 0 30px;
}

#home_menu ul.items {
	justify-content: center;
	margin: 0 0 20px;
}

#home_menu ul.items li {
	flex: 1;
	padding: 25px 15px 40px;
	text-align: center;
}

#home_menu ul.items li~li {
	border-left: 1px solid  #d2d2d2;
}

#home_menu ul.items p.img {
	width: 305px;
	margin: 0 auto 20px;
}

#home_menu ul.items h3.ttl {
	font-size: 2.4rem;
	font-weight: bold;
	margin: 0 0 15px;
}

#home_menu .menu_box p.btn {
    text-align: center;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　reason
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#home_reason h2.cmn_ttl {
    padding: 35px 0 25px;
}

#home_reason h2.cmn_ttl span.en {
    margin: 0;
}

#home_reason h2.cmn_ttl span.ja {
    position: relative;
    display: inline-table;
}

#home_reason h2.cmn_ttl span.ja img {
    width: 215px;
    vertical-align: -7px;
    margin: 0 5px 0 0;
}

#home_reason h2.cmn_ttl span.ja span.big {
    font-size: 4.5rem;
}

#home_reason h2.cmn_ttl span.ja::after {
	content: '';
	display: block;
	background: url(../images/about_h2_after.png) no-repeat center top / contain;
	width: 155px;
	height: 144px;
	position: absolute;
    bottom: -25px;
    right: -180px;
}

#home_reason p.main_lead {
	font-weight: bold;
	text-align: center;
	margin: 0 0 30px;
}

#home_reason ol.items {
	justify-content: center;
    margin: 0 -20px -40px;
}

#home_reason ol.items li {
    width: 373px;
    margin: 0 20px 40px;
}

#home_reason ol.items li:hover {
    opacity: 1;
}

#home_reason ol.items li h3.ttl {
    font-family: "hiraginokakugo_w7";
    font-size: 2.8rem;
    color: #fff;
    text-align: center;
    background: no-repeat  50% 50% / cover;
    position: relative;
    border-radius: 8px;
    overflow: hidden;
	margin: 0 0 15px;
}

#home_reason ol.items li:nth-child(1) h3.ttl {
    background-image: url(../images/reason1.jpg);
}

#home_reason ol.items li:nth-child(2) h3.ttl {
    background-image: url(../images/reason2.jpg);
}

#home_reason ol.items li:nth-child(3) h3.ttl {
    background-image: url(../images/reason3.jpg);
}

#home_reason ol.items li:nth-child(4) h3.ttl {
    background-image: url(../images/reason4.jpg);
}

#home_reason ol.items li:nth-child(5) h3.ttl {
    background-image: url(../images/reason5.jpg);
}

#home_reason ol.items li h3.ttl::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: #000;
    position: absolute;
    top: 0px;
    left: 0px;
    opacity: .45;
    transition:.4s;
}

#home_reason ol.items li:hover h3.ttl::before {
    opacity: .1;
}

#home_reason ol.items li h3.ttl a {
    height: 200px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    position: relative;
    padding: 85px 10px 25px;
}

#home_reason ol.items li h3.ttl a::before { 
    content: '' counters(ol_cnt, "");
    font-size: 2.5rem;
    color: #fff;
    position: absolute;
    top: 40px;
    left: calc(50% - 45px);
    border: 3px solid #fff;
    border-radius: 2em;
    width: 92px;
    text-align: right;
    padding: 0 16px;
    box-sizing: border-box;
}

#home_reason ol.items li h3.ttl a::after {
    content: '理由';
    font-size: 1.5rem;
    position: absolute;
    top: 52px;
    left: 44%;
}

#home_reason ol.items li p.txt {
    padding: 0 25px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　flow
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#home_flow {
	background-color: #eff5e3;
}

#home_flow h2.main_ttl {
    font-family: "hiraginokakugo_w7";
	font-size: 3.2rem;
	color: #517500;
	text-align: center;
	margin: 0 0 35px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　voice
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#home_voice p.main_lead {
	font-weight: bold;
	text-align: center;
	margin: 0 0 40px;
}

#home_voice .voice_wrap {
    position: relative;
	margin: 0 0 40px;
}

#home_voice .voice_wrap::before {
    content: '';
    display: block;
    background: url(../images/voice_slide_before.png) no-repeat center top / cover;
    width: 208px;
    height: 162px;
    position: absolute;
    left: 145px;
    bottom: 100%;
}

#home_voice p.btn {
    text-align: center;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　info
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#home_info {
    background-color: #f5f5f5;
    position: relative;
	padding-top: 90px;
    margin-top: 22px;
}

#home_info::before {
	content: '';
	display: block;
	width: 100%;
	height: 22px;
    background: url("../images/wave.png") repeat-x left center / contain;
    position: absolute;
    top: -22px;
    left: 0px;
	
}

#home_info .info_wrap{
    position: relative;
    padding: 0 0 0 680px;
    height: 380px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    margin: 0 0 55px;
}

#home_info .info_wrap h2.main_ttl {
    font-family: "hiraginokakugo_w7";
	font-size: 3.2rem;
	color: #6b2800;
	margin: 0 0 25px;
}

#home_info .info_wrap p.txt {
	font-weight: bold;
	margin: 0 0 40px;
}

#home_info .info_wrap p.img {
	position: absolute;
	top: calc(50% - 190px);
	left: 0px;
}

#home_info .info_wrap p.btn a{
	background-color: #f39800;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
コンタクトエリア
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#contact_area {
	background: url(../images/contact_bg.jpg?date=20220307) no-repeat center top / cover;
    padding: 65px 0;
}

#contact_area h2.main_ttl {
    font-family: "hiraginokakugo_w7";
	text-align: center;
	margin: 0 0 40px;
}

#contact_area h2.main_ttl span.en {
	font-size: 1.8rem;
	color: #fdd000;
	display: block;
	margin: 0 0 10px;
}

#contact_area h2.main_ttl span.ja {
	font-size: 3rem;
	color: #fff;
}

#contact_area .contact_wrap {
	justify-content: space-between;
}

#contact_area .service {
	width: 390px;
}

#contact_area .service h3.ttl {
	font-size: 2rem;
	font-weight: bold;
	color: #fff;
	text-align: center;
	background: url(../images/service_ttl.svg) no-repeat center center / 100% auto;
	padding: 15px;
	margin: 0 0 15px;
}

#contact_area .service p.txt {
	font-weight: bold;
	color: #fff;
	position: relative;
    padding: 0 0 0 55px;
}

#contact_area .service p.txt::before {
	content: '';
    display: block;
    background: url("../images/spoon.svg") no-repeat center center / contain;
    width: 41px;
    height: 45px;
    position: absolute;
    left: 0px;
    top: calc(50% - 22px);
}

#contact_area .tel_wrap{
	width: 390px;
	color:#fff;
}

#contact_area .tel_wrap p.tel {
	border:2px solid;
	border-radius:4px;
	padding: 10px 20px 10px 55px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
    position: relative;
}

#contact_area .tel_wrap p.tel:not(:last-child) {
    margin-bottom: 10px;
}

#contact_area .tel_wrap p.tel::before {
    content: '\f095';
    font-family: "icomoon";
    font-weight: normal;
    line-height: 1;
    color: #f39800;
    position: absolute;
    left: 25px;
    top:calc(50% - 0.5em);
    font-size: 1.8em;
}

#contact_area .tel_wrap p.tel:hover {
    opacity: 1;
}

#contact_area .tel_wrap p.tel .ttl{
    font-weight:bold;
    width: 110px;
    padding: 0 5px;
    text-align: center;
}

#contact_area .tel_wrap p.tel a{
    font-size:2.2rem;
}

#contact_area .tel_wrap p.txt{
	font-size:1.3rem;
	font-weight: bold;
	text-align: center;
}

#contact_area p.mail a {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.6;
    text-decoration: none;
    color: #fff;
    width: 390px;
    height: 140px;
    background-color: #e95e00;
    padding: 10px 55px 10px 105px;
    position: relative;
    border-radius: 4px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
}

#contact_area p.mail a:hover {
    background-color: #f37118;
}

#contact_area p.mail a::before {
	content: '';
    display: block;
    background: url("../images/mail_icon.png") no-repeat center center / contain;
    width: 42px;
    height: 28px;
    position: absolute;
    left: 40px;
    top: calc(50% - 14px);
}

#contact_area p.mail a::after {
    font-family: "icomoon";
    content: '\e91b';
    font-size: 15px;
    position: absolute;
    top: calc(50% - .8em);
    right: 25px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
フッター(ナビ)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
div#footer {
    background-color: #4e3f36;
}

div#f_navi_wrap a {
    color: #fff;
}

div#f_navi_other ul li:not(:last-child) {
    border-color: #fff;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
フッター　＞　コピーライトのエリア
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
div#copy_frame {
    background: transparent;
}


