@charset "utf-8";
/* 初期スタイル調整 */
* {
  box-sizing: border-box;
    margin:0;
    padding:0;
} 


/* body全体の初期スタイル調整 */
body {
  font-size: 14px;
  line-height: 1.5;
  font-family: YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
  color: #806060;
  background-color: #FEF4E8;

}
/* CSS Grid */
header,main,nav,footer {
    box-sizing: border-box;
    padding: 0px;
}
.container {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 15px 40px 40px 80px 20px 30px 200px 30px 780px 60px 2px 43px;
    -ms-grid-columns: 50px 75px 80px 850px 75px 50px;
        
    grid-template-rows: 15px 40px 40px 80px 20px 30px 200px 30px 780px 60px 2px 43px;
    grid-template-columns: 50px 75px 80px 850px 75px 50px;
}
.header1 {
  -ms-grid-column:  1;
  -ms-grid-column-span: 6;
  -ms-grid-row: 1;

    grid-column: 1/7;
    grid-row: 1/2;
    background-color: #FF8000;
}
.header2 {
  -ms-grid-column:  1;
  -ms-grid-column-span: 6;
  -ms-grid-row: 2;

    grid-column: 1/7;
    grid-row: 2/3;
    background-color: #FEF4E8;
    vertical-align: middle;
    margin: 8px 8px 8px 50px;
    padding: 1px;
}
.cp_breadcrumb *, .cp_breadcrumb *:after, .cp_breadcrumb *:before {

	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_breadcrumb {
  -ms-grid-column:  1;
  -ms-grid-column-span: 6;
  -ms-grid-row: 3;

    grid-column: 1/7;
    grid-row: 3/4;
	margin: 10px 0 10px 50px;
    text-align: left;
	padding: 0em;
	background-color: #FEF4E8;
	color: #806060;
}
.cp_breadcrumb a {
	text-decoration: underline;
	color: #806060;
}
.cp_breadcrumb .breadcrumbs {
	padding-left: 0;
	margin-top: 0;
	margin-bottom: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
.cp_breadcrumb li {
	display: inline-block;
	position: relative;
	padding-right: calc(16px + 8px);
	margin-right: 8px;
	color: #806060;
}
.cp_breadcrumb li::before {
	content: '›';
	width: 1em;
	height: 1em;
	line-height: 1;
	text-align: center;
	font-size: 1em;
	color: inherit;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.cp_breadcrumb li:last-child {
	margin-right: 0;
	padding-right: 0;
	color: #806060;
}
.cp_breadcrumb li:last-child::before {
	content: normal;
}

.mainblank1 {
  -ms-grid-column:  1;
  -ms-grid-column-span: 2;
  -ms-grid-row: 4;
  -ms-grid-row-span: 6;

    grid-column: 1/3;
    grid-row: 4/10;
    background-color: #FEF4E8;
}
.mainband_pict {
  -ms-grid-column:  3;
  -ms-grid-row: 4;

    grid-column: 3/4;
    grid-row: 4/5;
    width: 80px;
    padding: 5px;
    background-color: #FFE1C6;
}
.mainband_title {
  -ms-grid-column:  4;
  -ms-grid-row: 4;

    grid-column: 4/5;
    grid-row: 4/5;
    background-color: #FFE1C6;
    color: #FF8000;
    line-height: 80px;
    padding: 0 0 0 10px;
    font-size: 2em;
    font-weight: 500;
}
.mainband_sentence p {
    display: table-cell;
    vertical-align: middle;
}
.mainblank2 {
  -ms-grid-column:  5;
  -ms-grid-column-span: 2;
  -ms-grid-row: 4;
  -ms-grid-row-span: 6;

    grid-column: 5/7;
    grid-row: 4/10;
    background-color: #FEF4E8;
}
.mainblank3 {
  -ms-grid-column:  3;
  -ms-grid-column-span: 2;
  -ms-grid-row: 5;

    grid-column: 3/5;
    grid-row: 5/6;
    background-color: #FEF4E8;
}
.main_title {
  -ms-grid-column:  3;
  -ms-grid-column-span: 2;
  -ms-grid-row: 6;

    grid-column: 3/5;
    grid-row: 6/7;
    background-color: #FF8000;
    color: #fff;
    padding: 0 0 0 10px;
    font-size: 1.5em;
    font-weight: 500;
}
.main_title_text {
	margin-bottom: 2px;

  -ms-grid-column:  3;
  -ms-grid-column-span: 2;
  -ms-grid-row: 7;

    grid-column: 3/5;
    grid-row:7/8;
    background-color: #FEF4E8;
}
.main_title_text p {
    background: url(../img/ic-01.png) no-repeat left center;
    padding-left: 18px;
    line-height: 0.9;
}
.main_title_text table {
    border-spacing: 0;
    border-collapse: collapse;
    table-layout: fixed;
    width: 920px;
}
.main_title_text th, td {
    border: 1px solid #FEF4E8;
    padding: 5px 10px;
    line-height: 1.25em;
    font-size: 9pt;
    vertical-align: top;
    text-align: center;
}
.main_title_text ul {
    padding-left: 18px;
}

.main_title2 {
  -ms-grid-column:  3;
  -ms-grid-column-span: 2;
  -ms-grid-row: 8;

    grid-column: 3/5;
    grid-row: 8/9;
    background-color: #FF8000;
    color: #fff;
    padding: 0 0 0 10px;
    font-size: 1.5em;
    font-weight: 500;
}
.main_title_text2 {
	margin-bottom: 2px;

  -ms-grid-column:  3;
  -ms-grid-column-span: 2;
  -ms-grid-row: 9;

    grid-column: 3/5;
    grid-row:9/10;
    background-color: #FEF4E8;
}
.main_title_text2 p {
    background: url(../img/ic-01.png) no-repeat left center;
    padding-left: 18px;
    line-height: 0.9;
}
.main_title_text2 table {
    border-spacing: 0;
    border-collapse: collapse;
    table-layout: fixed;
    width: 920px;
}
.main_title_text2 th, td {
    border: 1px solid #FEF4E8;
    padding: 5px 10px;
    line-height: 1.25em;
    font-size: 8pt;
    vertical-align: top;
    text-align: center;
}
.main_title_text2 ul {
    padding-left: 18px;
}

.footerblank1 {
  -ms-grid-column:  1;
  -ms-grid-row: 10;

    grid-column: 1/2;
    grid-row: 10/11;
    background-color: #FEF4E8;
}
.footer2 {
    display: flex;
    justify-content: space-between;
    margin: 3px;
    vertical-align: middle;

    -ms-grid-column:  2;
    -ms-grid-column-span: 4;
    -ms-grid-row: 10;
    
    grid-column: 2/6;
    grid-row: 10/11;
    background-color: #FEF4E8;
}
.footer2 img {
    margin: 3.75px 10px 7.5px 0;
    width: 144px;
    height: 40.5 px;
}
.footerblank2 {
  -ms-grid-column:  6;
  -ms-grid-row: 10;

    grid-column:6/7;
    grid-row: 10/11;
    background-color: #FEF4E8;
}
.footer-line {
  -ms-grid-column:  1;
  -ms-grid-column-span: 6;
  -ms-grid-row: 11;

    grid-column: 1/7;
    grid-row: 11/12;
    background-color: #FF8000;
}
.footer-credit {
    display: flex;
    align-items: center;
    justify-content: center;

    -ms-grid-column:  1;
    -ms-grid-column-span: 6;
    -ms-grid-row: 12;
  
    grid-column: 1/7;
    grid-row: 12/13;
    font-size: 12px;
    margin: 20px;
    text-align: center;
    background-color: #FEF4E8;
}
.main3 dl {
	overflow: auto;
}
.main3 dt {
	background: url(../img/ic-01.png) no-repeat left center;
	padding-left: 18px;
	margin-bottom: 2px;
}
.main3 dd {
	background: url(../img/bg-01.png) repeat-x left bottom;
	padding-bottom: 7px;
	margin-bottom: 7px;
    margin-inline-start: 18px;
    color: #806060;
}

/* 各要素の初期スタイル調整 */

h1, h2 {
  margin-top: 0;
  margin-bottom: 30px;
  line-height: 1.2;
}

.footer2 a {
  font-weight: bold;
  text-decoration: none;
}
.footer2 a:link {
    color:#fff;
}

.footer2 a:visited {
    color:#fff;
}

.footer2 a:hover {
    color:#fff;
}
.main_soshikishokai_text a {
  font-weight: bold;
  text-decoration: none;
}
.main_soshikishokai_text a:link {
    color:#C71528;
}

.main_soshikishokai_text a:visited {
    color:#0000FF;
}

.main_soshikishokai_text a:hover {
    color:#0000FF;
    text-decoration:underline;
}
a:active {
color:#33CC00;
}
/* a:hover {
  text-decoration: underline;
} */
a.category {
  border: 8px double #0090bb;
}
.button2 {
  display: flex;
  font-size: 12px;
  justify-content: center;
  line-height: 1em;
  border: 1px solid #FBC98E;
  border-radius: 4px;
  text-align: center;
  margin: 1px;
  padding:6px;
  color: #806060;

  background: #f1e767;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#FFC48E));
  background: -webkit-linear-gradient(top, #fff 0%, #FFC48E 100%);
  background: linear-gradient(to bottom, #fff 0%, #FFC48E 100%);
}

a.button2:hover {
  background: -webkit-gradient(linear, left bottom, left top, from(#fff), to(#FFC48E));
  background: -webkit-linear-gradient(bottom, #fff 0%, #FFC48E 100%);
  background: linear-gradient(to top, #fff 0%, #FFC48E 100%);
}
.button3 {
  display: flex;
  font-size: 12px;
  justify-content: center;
  line-height: 1em;
  border: 2px solid #FEF4E8;
  border-radius: 4px;
  text-align: center;
  padding:6px;
  color: #806060;
  background: #FEF4E8;
}
.button4 {
  display: flex;
  flex: 1 1 20px;
  font-size: 15px;
  justify-content: center;
  line-height: 1.25em;
  border-radius: 6px;
  text-align: center;
  font-weight: bold; 
  margin: 2px;
  padding: 6px;
  color: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(#E38B94), to(#C71528));
  background: -webkit-linear-gradient(top, #E38B94 0%, #C71528 100%);
  background: linear-gradient(to bottom, #E38B94 0%, #C71528 100%);
}
a.button4:hover {
  background: -webkit-gradient(linear, left bottom, left top, from(#E38B94), to(#C71528));
  background: -webkit-linear-gradient(bottom, #E38B94 0%, #C71528 100%);
  background: linear-gradient(to top, #E38B94 0%, #C71528 100%);
}
.button5 {
  display: flex;
  flex: 1 1 10px;
  font-size: 12.5px;
  justify-content: center;
  line-height: 1.25em;
  border-radius: 6px;
  text-align: center;
  align-items: center;
  font-weight: bold; 
  margin: 2px;
  padding: auto;
  color: #fff;
  background: -webkit-gradient(linear, left bottom, left top, from(#F7931E), to(#FFC48E));
  background: -webkit-linear-gradient(bottom, #F7931E 0%, #FFC48E 100%);
  background: linear-gradient(to top, #F7931E 0%, #FFC48E 100%);
}

a.button5:hover {
  background: -webkit-gradient(linear, left top, left bottom, from(#F7931E), to(#FFC48E));
  background: -webkit-linear-gradient(top, #F7931E 0%, #FFC48E 100%);
  background: linear-gradient(to bottom, #F7931E 0%, #FFC48E 100%);
}

.button6 {
  display: flex;
  flex: 1 1 10px;
  font-size: 13px;
  justify-content: center;
  line-height: 3.875em;
  border-radius: 6px;
  text-align: center;
  font-weight: bold; 
  margin: 2px;
  padding: auto;
  color: #fff;
  background: -webkit-gradient(linear, left bottom, left top, from(#F7931E), to(#FFC48E));
  background: -webkit-linear-gradient(bottom, #F7931E 0%, #FFC48E 100%);
  background: linear-gradient(to top, #F7931E 0%, #FFC48E 100%);
}

a.button6:hover {
  background: -webkit-gradient(linear, left top, left bottom, from(#F7931E), to(#FFC48E));
  background: -webkit-linear-gradient(top, #F7931E 0%, #FFC48E 100%);
  background: linear-gradient(to bottom, #F7931E 0%, #FFC48E 100%);
}
p {
  margin-top: 0;
  margin-bottom: 1em;
}
ul {
  margin: 1em 0;
  padding: 0;
}
figure {
  margin: 0;
}
img {
  max-width: 100%;
  height: auto;
}
address {
  font-style: normal;
}
/* 初期スタイル調整ここまで */


/* --------------------------------------------------
  細部のスタイル指定ここから
-------------------------------------------------- */

/* ヘッダー */
.header {
  width: 1000px; /* 横幅の指定 */
  margin: 0 auto; /* 左右中央揃え */
  padding: 20px 0; /* 上下・左右の内余白 */
  height: auto;
}

/* ロゴ */
.logo {
  margin: 0; /* 上下左右の外余白 */
  text-align: center; /* テキスト中央揃え */
}

/* メイン */
.main {
  width: 480px;
  margin: 0 auto;
}

/* トップ（メインイメージ） */
.top {
  margin-bottom: 20px;
  text-align: center;
}

/* ナビゲーション */
.nav {
  margin-bottom: 50px;
  text-align: center;
}

/* ナビリスト */
.nav-list li {
  display: inline-block; /* インラインの性質を保ちながら、ブロックレベルの性質を加えている */
  margin: 0;
  border-left: 1px solid #806342; /* 左の境界線 */
}
.nav-list li:first-child {
  border-left: none; /* 最初のliから左の境界線を消す */
}
.nav-list a {
  display: inline-block; /* インラインの性質を保ちながら、ブロックレベルの性質を加えている */
  padding: 0 15px;
  line-height: 1.2; /* 行の高さ */
  text-transform: uppercase; /* 英字を大文字で表示 */
}

/* セクション */
.section {
  margin: 0 auto 80px;
}

/* 見出し */
.heading {
  margin-bottom: 40px;
  text-align: center;
}

/* アバウト */
.about {
  text-align: center;
}

/* メニュー */
.menu {
  text-align: center;
}

/* メニューリスト */
.menu-list {
  display: inline-block; /* ul要素の横幅を自動的に定めている */
  margin-left: 30px; /* 左のマージン */
  list-style: disc; /* リストの先頭にリストマーク（・）をつける */
  text-align: left; /* テキスト左揃え */
}
.menu-list li {
  margin-bottom: 10px; /* 下のマージン */
}

/* フォト */
.photos {
  width: auto;
}

/* フォトリスト */
.photos-list li {
  margin-bottom: 30px;
}
.photos figcaption {
  font-size: 12px; /* 文字サイズ */
  text-align: left; /* テキスト左揃え */
}

/* アクセス */
.access {
  width: 600px; /* アクセス全体の横幅 */
}

/* アクセス 左右横並び */
.access-row {
  /* flexbox（横並びにする要素の親に指定） */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /* flexboxの中身を左右均等に配置する */
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  /* flexboxの中身の上下を中央揃えにする */
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto;
}

/* 左側（フレックスアイテム） */
.access-address {
  font-size: 14px;
}
.access-address strong {
  display: block; /* ブロックレベルとして扱う */
  margin: 10px 0;
  font-size: 22px;
}

/* 右側（フレックスアイテム） */
.access-map {
  /* フレックスアイテムへの指定 */
  -webkit-box-flex: 0;
  -ms-flex: 0 1 295px;
  flex: 0 1 295px;
  max-width: 295px; /* IE向けの対策。基本幅と同じ数値を設定 */
}

/* フッター */
.footer {
  min-width: 1000px; /* 最小幅の指定 */
  margin: 0 auto;
  padding: 20px 0;
  background-color: #806342; /* 背景色の指定 */
}

/* フッターの中身 */
.footer-container {
  /* flexbox（横並びにする要素の親に指定） */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 660px;
  margin: 0 auto;
}

/* フッターロゴ（左側） */
.footer-logo {
  /* フレックスアイテムへの指定 */
  -webkit-box-flex: 0;
  -ms-flex: 0 1 200px;
  flex: 0 1 200px;
  max-width: 200px;
  margin: 0;
}

/* フッター その他要素（右側） */
.footer-body {
  /* フレックスアイテムへの指定 */
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto; /* 基本幅がautoの場合、IEブラウザの対策は不要 */
  padding-top: 20px;
}

/* フッターナビ */
.footer-nav {
  margin-bottom: 20px;
}

/* フッターナビリスト */
.footer-nav-list li {
  display: inline-block;
  margin: 0;
  border-left: 1px solid #fff;
}
.footer-nav-list li:first-child {
  border-left: none; /* 最初のliから左の境界線を消す */
}
.footer-nav-list a {
  display: inline-block;
  padding: 0 15px;
  line-height: 1.2;
  color: #fff;
  text-transform: uppercase;
}

/* コピーライト */
.copyright {
  margin: 0;
  padding-left: 15px;
  color: #fff;
}
.copyright small {
  font-size: 11px;
}
