@charset "UTF-8";
@import url("./contact.css");

/* 
■ 濃い色、 メインカラー
#FFEEBA

■ 薄い色、 サブカラー
#FDEED7
*/

body {
	margin: 0 auto;
	color: #65460a;
	font-size: 14px;
	line-height: 150%;
	letter-spacing: 1px;
	font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
	font-family: 'メイリオ', Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background: url(../images/common/body_bg.jpg);
	position: relative;
}


/*==================================================
共通
================================================== */
/* 汎用クラス
-------------------------------------------------- */
.clear {
	clear: both;
}

/* タグ
-------------------------------------------------- */
img {
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
}


/* リンク
-------------------------------------------------- */
a {
	color: #65460a;
	text-decoration: none;
	transition: All 0.4s ease;
}

a:hover {
	color: #85662a;
	text-decoration: underline;
}

a img {
	transition: All 0.4s ease;
}

a:hover img {
	opacity: .8;
}


/* テーブル
-------------------------------------------------- */
table.def {
	width: 100%;
	line-height: 1.3;
	font-size: 12px;
	letter-spacing: 0;
	border-collapse: separate;
	border-spacing: 3px;
}

table.def th {
	width: 40%;
	padding: 7px;
	vertical-align: middle;
	color: #fff;
	background: #663333;
}

table.def td {
	padding: 7px;
	vertical-align: middle;
	background: #FFFFF2;
}


/* カラムの横幅を統一 */
table.fix {
	table-layout: fixed;
}

/* カラムの横幅を指定しない */
table.fazzy th,
table.fazzy td {
	width: auto;
}


/* リスト
-------------------------------------------------- */
ul.def {
	margin: 0 0 15px;
}

ul.def li {
	padding: 5px 0 5px 12px;
	border-bottom: 1px dotted #cfcfcf;
	background: url(../images/common/ico_arrow01.png) left center no-repeat;
}


/* 定義リスト
-------------------------------------------------- */
dl.def dt {
	margin: 0 0 5px;
	font-weight: bold;
}

dl.def dt:before {
	content: '■';
	margin: 0 5px 0 0;
}

dl.def dd {
	margin: 0 0 8px;
	padding: 0 0 0 20px;
}


/* バナー・ボタン
-------------------------------------------------- */
p.text-more {
	padding: 12px 0 0;
	text-align: right;
}

p.text-more a {
	padding: 0 0 0 12px;
	background: url(../images/common/ico_arrow02.png) left center no-repeat;
}


/* ==================================================
ページネーション
================================================== */
.pagenation {
	margin: 0 0 20px;
	display: flex;
	justify-content: center;
}

.pagenation li {
	width: 26px;
	margin: 0 2px;
	line-height: 30px;
	text-align: center;
	background: #aaa;
}

.pagenation li > * {
	color: #fff;
	font-size: 13px;
	text-decoration: none;
	display: block;
}

.pagenation li:hover,
.pagenation li.current {
	background: #634f40;
}



/* パンくずリスト
-------------------------------------------------- */
.breadcrumbs {
	height: 25px;
	line-height: 25px;
	margin: 0 0 15px;
	font-size: 0;
	letter-spacing: 0;
	overflow: hidden;
	white-space: nowrap;
}

.breadcrumbs li {
	font-size: 13px;
	display: inline;
}

.breadcrumbs a {
	background: url(../images/common/ico_arrow01.png) right center no-repeat;
	margin: 0 5px 0 0;
	padding: 0 8px 0 0;
}


/* ページ内リンク
-------------------------------------------------- */
.anchor-links {
	margin: 0 0 15px;
	text-align: center;
	font-size: 0;
	letter-spacing: 0;
}

.anchor-links li {
	width: 30%;
	height: 35px;
	margin: 0 1% 10px;
	line-height: 35px;
	font-size: 13px;
	border: 1px solid #afafaf;
	background: linear-gradient(#fff, #e3e3e3);
	display: inline-block;
	vertical-align: top;
	overflow: hidden;
}

.anchor-links a {
	display: block;
}


/* クリアフィックス
-------------------------------------------------- */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

.cf {
    *zoom: 1;
}


/*==================================================
ヘッダー
================================================== */
.site-header {
	margin: 0 0 11%;
}

.header-inner {
	width: 100%;
	max-width: 640px;
	padding: 13px 2% 12px;
	background: #ffeebb;
	overflow: hidden;
	box-sizing: border-box;
	position: fixed;
	z-index: 500;
}

/* ロゴ
-------------------------------------------------- */
.header-logo {
	width: 55%;
	float: left;
}

/* ユーティリティ
-------------------------------------------------- */
.header-right {
	width: 36.5%;
	max-width: 234px;
	float: right;
}

.header-right p {
	width: 47.8%;
	float: left;
}

.header-right p:first-child {
	margin-right: 4.2%;
}

/* メインビジュアル
-------------------------------------------------- */
.header-main-visual img {
	width: 100%;
}

/* サブビジュアル
-------------------------------------------------- */
.header-sub-visual {
	text-align: center;
	background: url(../images/common/header_sub_visual_bg.jpg) center / cover;
}

/*==================================================
フッター
================================================== */
.site-footer {
}

.footer-inner {
	padding: 25px 0 11px;
	text-align: center;
	color: #fff;
	background: #613404;
}

.footer-inner a {
	color: inherit;
}

/* ロゴ */
.footer-site-name {
	margin: 0 0 20px;
	font-size: 22px;
}

/* 所在地 */
.footer-address {
	margin: 0 0 17px;
}

/* 電話 */
.footer-tel-wrap {
	margin: 0 0 20px;
}

/* リンク */
.footer-link {
	font-size: 0;
	letter-spacing: 0;
}

.footer-link li {
	line-height: 14px;
	font-size: 14px;
	display: inline-block;
	vertical-align: top;
}

.footer-link li:first-child {
	margin: 0 8px 0 0;
	padding: 0 8px 0 0;
	border-right: 1px solid #fff;
}

/* コピーライト */
.footer-copyright {
	line-height: 35px;
	text-align: center;
	color: #fff;
	font-size: 13px;
	letter-spacing: 0;
	background: #462605;
	display: block;
}

.footer-copyright a {
	color: inherit;
}



/*==================================================
コンテンツ
================================================== */
.all-wrap {
	max-width: 640px;
	margin: 0 auto;
}

.lower .site-body {
	margin: 0 5px;
}



/* 記事骨格
-------------------------------------------------- */
.item-box {
	margin: 0 0 40px;
}

.item-text {
	overflow: hidden;
}


/* 見出し
-------------------------------------------------- */
.item-title-h3 {
	margin: 0 0 15px;
	padding: 8px 8px 8px 30px;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	background: url(../images/common/h3_icon.jpg) left 8px center / 14px auto no-repeat #65460a;
}

.item-title-h3 a {
	color: inherit;
}

.item-title-h4 {
	margin: 0 0 15px;
	padding: 6px 8px;
	line-height: 1.4;
	color: #65503F;
	font-size: 15px;
	font-weight: bold;
	border-bottom: 2px dotted #65503F;
}

* ~ .item-title-h4 {
	margin-top: 20px;
}

.item-title-h5 {
	margin: 0 0 10px;
	color: #65503F;
	font-weight: bold;
}

* ~ .item-title-h5 {
	margin-top: 15px;
}


/* 記事サムネイル
-------------------------------------------------- */
img.thumb-left {
	max-width: 35%;
	height: auto;
	margin: 0 10px 10px 0;
	float: left;
}

img.thumb-right {
	max-width: 35%;
	height: auto;
	margin: 0 0 10px 10px;
	float: right;
}

img.thumb-center {
	max-width: 95%;
	margin: 0 auto 10px;
	display: block;
}

img.photo {
	padding: 2px;
	background: #fff;
	box-shadow: 0 2px 2px rgba(0,0,0,.2);
	box-sizing: border-box;
}


/* 記事情報
-------------------------------------------------- */
.post-data {
	height: 21px;
	margin: 0 0 15px;
	line-height: 21px;
	font-size: 0;
	letter-spacing: 0;
	overflow: hidden;
}

.post-data li {
	margin: 0 8px 0 0;
	padding: 0 8px 0 0;
	font-size: 12px;
	border-right: 1px dotted #aaa;
	display: inline-block;
}

.post-data .item-date {
	margin: 0;
	display: inline;
}

.item-date {
	margin: 0 0 8px;
	padding: 0 0 0 10px;
	font-size: 13px;
	background: url(../images/common/ico_arrow01.png) left center no-repeat;
	display: block;
}


/* 詳細ページ SNSシェアボタン
-------------------------------------------------- */
.sns-sharerbtn-list {
	margin: 8px 0;
	padding: 8px 0;
	text-align: center;
	border-top: 1px solid #afafaf;
	border-bottom: 1px solid #afafaf;
	background: #f0f0f0;
	overflow: hidden;
	clear: both;
}

.sns-sharerbtn-list li {
	margin: 0 4px;
	vertical-align: top;
	display: inline-block;
}


/* 詳細ページ 前後の記事へのリンク
-------------------------------------------------- */
.paginated-link {
	margin: 0 5px;
	overflow: hidden;
}

.paginated-link li {
	width: 48%;
	padding: 0 5px;
	text-align: center;
	font-size: 13px;
	border: 1px solid #afafaf;
	border-radius: 4px;
	background: #f0f0f0;
	box-sizing: border-box;
}

.paginated-link li.prev-link {
	float: left;
}

.paginated-link li.next-link {
	float: right;
}

.paginated-link li a {
	height: 35px;
	line-height: 35px;
	display: block;
	overflow: hidden;
}


/*==================================================
トップページ
================================================== */
/* 
-------------------------------------------------- */
.top-section {
	margin: 0 0 12%;
	padding: 1px 0;
	background: #fff;
	box-shadow: 0 0 2px rgba(0,0,0,.2);
}

/* 見出し */
.top-section-title {
	margin: -7% 20px 0;
	text-align: center;
}

/* リードテキスト */
.top-section-text {
	padding: 20px 0;
	line-height: 22px;
	text-align: center;
	background: right 30px center / 53px auto no-repeat;
}

.top-good-section .top-section-text {
	background-image: url(../images/top/good_bg.jpg);
}

.top-handle-section .top-section-text {
	line-height: 44px;
	background-image: url(../images/top/handle_bg.png);
}

.top-news-section .top-section-text {
	background-image: url(../images/top/news_bg.jpg);
}

/* バナー */
.top-section-bnr-list li {
	margin: 0 2% 10px;
	text-align: center;
}

/* 全国対応可能
-------------------------------------------------- */
.top-contact-section {
	margin: 0 0 28px;
	padding: 8.2% 8.5%;
	text-align: center;
	border-top: 4px solid #6a3906;
	border-bottom: 4px solid #6a3906;
	background: url(../images/top/contact_bg.jpg) center / cover;
}

/* バナー
-------------------------------------------------- */
.top-bnr-list {
	margin: 0 2% 10%;
	padding: 0 0 1px;
	text-align: center;
}

.top-bnr-list li {
	margin: 0 0 10px;
}

/* アレルギー表示
-------------------------------------------------- */
.top-allergies-section {
	margin: 0 2% 33px;
	padding: 0 10px 15px;
	text-align: center;
	border: 2px dashed #ff76fd;
	border-radius: 10px;
	background: rgba(255,255,255,.54);
}

.allergies-title {
	margin: -9% 0 16px;
}

/*==================================================
サイトマップ
================================================== */
.sitemap-list li {
	padding: 0 0 0 15px;
	line-height: 40px;
	border-bottom: 1px dotted #ccc;
	background: url(../images/common/ico_arrow01.png) 5px center no-repeat;
}

.sitemap-list a {
	display: block;
}

/*==================================================
ギャラリー
================================================== */
ul.gallery {
	font-size: 0;
	letter-spacing: 0;
}

ul.gallery > li {
	width: 48%;
	margin: 0 1% 8px;
	font-size: 13px;
	vertical-align: top;
	display: inline-block;
}

ul.gallery.column2 > li {
	width: 48%;
}

ul.gallery.column3 > li {
	width: 31%;
}

ul.gallery .comment {
	padding: 5px 0 0;
	font-size: 13px;
	letter-spacing: 0;
	line-height: 1.4;
}



/*==================================================
お問い合わせ
================================================== */
/* table設定
-------------------------------------------------- */
table.contact-form,
table.contact-form tbody,
table.contact-form tr,
table.contact-form th,
table.contact-form td {
	width: auto;
	text-align: left;
	font-size: 14px;
	display: block;
}

table.contact-form td {
	margin: 0 0 5px;
}



/* input設定
-------------------------------------------------- */
.input-big,
.input-mid,
.input-min {
	padding: 5px;
	box-sizing: border-box;
}

.input-big {
	width: 100%;
}

.input-mid {
	width: 60%;
}

.input-min {
	width: 60px;
}


/* 必須マーク
-------------------------------------------------- */
.required-mark {
	padding: 1px 3px;
	color: #fff;
	font-size: 12px;
	font-weight: normal;
	border-radius: 5px;
	background: #f00;
	float: right;
}


/* 未記入エラー文
-------------------------------------------------- */
.error-text {
	margin: 0 0 5px;
	color: #f00;
}


/* 確認、バック、送信ボタン
-------------------------------------------------- */
.contact-submits {
	padding: 15px 0 0;
	text-align: center;
}

.contact-submits input {
	margin: 0 5px;
	padding: 5px;
}


/* セキュリティエラー
-------------------------------------------------- */
.sec-error-text {
	line-height: 50px;
	text-align: center;
	color: #f00;
	font-size: 16px;
	border: 2px solid #f00;
}



/*==================================================
吉野製麺のこだわり
================================================== */
/* 流れ
-------------------------------------------------- */
.flow-list-wrap {
	margin: 0 auto;
}

.flow-list-wrap .flow-card {
	padding: 10px;
	border: 2px dotted #ffb82f;
	background: #FFFFE8;
}

.flow-list-wrap .flow-card:nth-of-type(2n) {
	background: #fff;
}

.flow-list-wrap .flow-card dt {
	margin: 0 0 15px;
	padding: 6px 0 6px 23px;
	font-size: 18px;
	border-bottom: 2px solid #f1a941;
	background: url(../images/activities/flow_card_title_icon.png) left center no-repeat;
}

.flow-list-wrap .flow-card dd {
	overflow: hidden;
}

.flow-arrow-icon {
	width: 30px;
	margin: 0 auto;
	padding: 8px 0;
	display: block;
}


/*==================================================
生パスタ
================================================== */
/* 商品紹介
-------------------------------------------------- */
.pasta-toggle-content {
	margin: 0 0 20px;
}

/* トグルボタン */
.pasta-toggle-title {
	margin: 0 0 10px;
	padding: 10px 15px 10px 20px;
	border-radius: 10px;
	background: url(../images/common/ico_arrow01.png) left 10px center no-repeat #ffde78;
	cursor: pointer;
}

/* テーブル */
.pasta-table th {
	width: 40%;
	text-align: left;
}


/*==================================================
業務用商品
================================================== */
/* リスト
-------------------------------------------------- */
.product-list {
	font-size: 0;
	letter-spacing: 0;
}

.product-list li {
	width: 48%;
	margin: 0 1% 15px;
	padding: 5px;
	line-height: 1.4;
	font-size: 12px;
	background: #fff;
	box-shadow: 2px 2px 2px rgba(0,0,0,.2);
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
}

.product-list li .product-item-thumb {
	margin: 0 0 5px;
}

.product-list li .product-item-title {
	margin: 0 0 5px;
	text-align: center;
	font-size: 15px;
}



/* ==================================================
セクション
================================================== */
.section {
	margin: 0 0 80px;
}

.section-content:after {
	content: " ";
	display: block;
	clear: both;
}

.section-footer {
	padding: 24px 0 0;
	clear: both;
}

/* 見出し
------------------------- */
.styled-title01 {
	margin: 0 0 1.3em;
	padding: 1.1em 0.9em 1em;
	font-size: 22px;
	border-top: 2px solid #222;
	border-bottom: 1px solid #ddd;
	background: #fafafa;
	box-shadow: 0 1px 2px #f7f7f7;
}

.styled-title02 {
	margin: 0 0 1.3em;
	padding: .8em 0.9em .7em;
	font-size: 22px;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}

/* 記事アイキャッチ
------------------------- */
.section-eyecatch-right {
	max-width: 40%;
	margin: 0 0 16px 16px;
	float: right;
}

.section-eyecatch-left {
	max-width: 40%;
	margin: 0 16px 16px 0;
	float: left;
}

.section-eyecatch-center {
	margin: 0 auto 16px;
	display: block;
}

/* 記事情報
------------------------- */
.post-info-wrap {
	margin: 0 0 16px;
	overflow: hidden;
}

.post-info-wrap .post-info-item {
	margin: 0 15px 0 0;
	padding: 0 0 0 20px;
	background: left top 4px no-repeat;
	float: left;
}

.post-info-wrap .post-info-item-date {
	background-image: url(../images/common/icon_calendar.png);
}

.post-info-wrap .post-info-item-tag {
	background-image: url(../images/common/icon_tag.png);
}

/* タグリスト */
.post-tag-list {
	overflow: hidden;
}

.post-tag-list li {
	margin: 0 5px 0 0;
	float: left;
}

.post-tag-list li:not(:last-child):after {
	content: ',';
}

/* SNSシェアボタン
------------------------- */
.share-btn-list {
	margin: 0 0 16px;
	text-align: right;
	font-size: 0;
	letter-spacing: 0;
	overflow: hidden;
}

.share-btn-list li {
	margin: 0 0 0 8px;
	vertical-align: top;
	display: inline-block;
}

/* 詳細ページ用　前後の記事
------------------------- */
.prev-next-post {
	display: flex;
	justify-content: space-between;
}

.prev-next-post div {
	width: calc(50% - 4px);
}

.prev-next-post a {
	padding: 0 20px;
	line-height: 50px;
	border: 1px solid #e0c3a7;
	border-radius: 8px;
	text-overflow: ellipsis;
	white-space: nowrap;
	display: block;
	overflow: hidden;
}

.prev-next-post .prev-post a {
	padding-left: 47px;
	background: url(../images/common/icon_arrow02.png) left 20px center no-repeat #fff;
}

.prev-next-post .next-post a {
	padding-right: 47px;
	background: url(../images/common/icon_arrow01.png) right 20px center no-repeat #fff;
}

.prev-next-post a:hover {
	text-decoration: none;
	background-color: #fafafa;
}

/* その他
-------------------------------------------------- */
/* 投稿日 */
.post-date {
	margin: 0 0 15px;
	padding: 1px 0 0 12px;
	font-size: 13px;
	background: url(../images/common/icon_arrow03.png) left center no-repeat;
	display: block;
}

/* テキストボタン */
.text-btn {
	margin-top: 16px;
	text-align: right;
}
.text-btn a {
	width: 200px;
	line-height: 50px;
	text-align: center;
	color: #fff;
	background: url(../images/common/icon_arrow01_white.png) right 16px center no-repeat #54a2dc;
	display: inline-block;
}

.text-btn a:hover {
	color: #fff;
	text-decoration: none;
	background-color: #26b99a;
}

/* おすすめ記事
-------------------------------------------------- */
.post-list-row li {
	margin: 0 0 15px;
}

.post-list-row a {
	background: #fff;
	display: flex;
	justify-content: space-between;
}

.post-list-row .thumb {
	width: 35%;
}

.post-list-row .trim {
	padding: 70% 0 0;
	background: #efefef;
	position: relative;
	overflow: hidden;
	display: block;
}

.post-list-row .trim img {
	height: 100%;

	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}

.post-list-row .texts {
	width: 65%;
	padding: 0 16px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.post-list-row .texts .date {
	margin: 0 0 .5em;
}

.post-list-row .texts .title {
	font-size: 18px;
	line-height: 1.2;
}

/* 
-------------------------------------------------- */
.top-post-list {
	padding: 8px;
}

.top-post-list li {
	width: 100%;
	line-height: 40px;
	text-align: left;
	white-space: nowrap;
	text-overflow: ellipsis;
	border-bottom: 1px solid #e6e6e6;
	overflow: hidden;
}

.top-post-list span {
	margin-right: 8px;
}