@charset "utf-8";

/*
Theme Name: 3club-medaka
*/

/*===================================
 *  CSSリセット
 ====================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;color: currentColor;}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}


/* 全部にborder-boxを適用 */
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-boxu
}

/*===================================
 *  ボディ・ラッパー＆コンテンツエリア
 ====================================*/

body {
    margin: 0;
    padding: 0;
    color: #604b0e;
    font-size: 18px;
    line-height: 1.4em;
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	font-style: normal;
    background:
		url(images/bg_body_02.png) ,
        url(images/bg_body_03.png) ,
        url(images/bg_body.jpg);
	background-repeat:
		repeat-y,
		repeat-y,
		repeat-y;
	background-size:
		auto,
		auto,
		cover;
	background-position:
		right,
		left,
		center;
}

#wrapper_100vw {
	width: 100vw;
    height: 700px;
	margin: 0 auto;
}

#wrapper {
	width: 1300px;
    max-width: 100%;
	margin: 80px auto;
}

.contents_1300 {
    width: 1300px;
    margin: 0 auto;
	padding:0px 10px 20px 10px;
}

.contents {
    width: 780px;
    margin: 0 auto;
	padding:0px 10px 20px 10px;
}

.margin10px {
	margin: 10px;
	}

.mobile-contents_mid {
        display: none;
    }


/*===================================
 *  ヘッダー
 ====================================*/

header {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 10000;
}

.header-line{
	width: 100%;
	background: rgba(113, 101, 56, 0.8);
}

.header-contents {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
    margin: 0 auto;
	padding: 5px;
}

.header-link {
	display: flex;
}

.header-contact {
	color: #ffffff;
	padding: 5px 20px 5px 20px;
	margin: 0;
}

.header_tel {
	font-size: 1.2em;
}

.header-contact a{
	color: #ffffff;
	}

.header-contact a:hover{
	text-decoration: none;
	}

.header-logo {
	padding: 6px 6px 3px 6px;;
    width: 150px;
    height: auto;
}

.header-logo a:hover{
	text-decoration: none;
}

.logo-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 10px 0px 0px 0px;
}

/*===================================
 *  グローバルナビゲーション
 ====================================*/

#global-nav ul {
	display: flex;
	justify-content: center;
}

#global-nav li a {
    margin: 10px 20px;
	transition:all 0.0s;
    color: #ffffff;
}

#global-nav li a:hover {
	color: #ffffff;
  text-decoration: none;
}

/*2階層目以降は横並びにしない*/
#global-nav ul ul{
	display: block;
}

/*下の階層のulや矢印の基点にするためliにrelativeを指定*/
#global-nav ul li{
	position: relative;
}

#global-nav ul li.has-child::before {
	content: '\e5cf';
	font-family: 'Material Icons';
	font-size: 24px;
	color: #fff;
	padding: 0px 3px 0px 0px;
	position: absolute;
	left: -2px;
	top: 4px;
	}


/*== 2階層目の設定 */

/*下の階層を持っているulの指定*/
#global-nav li.has-child ul{
    /*絶対配置で位置を指定*/
	position: absolute;
	left: 20px;
	top: 40px;
	z-index: 4;
    /*形状を指定*/
	width:200px;
    /*はじめは非表示*/
	visibility: hidden;
	opacity: 0;
    /*アニメーション設定*/
	transition: all .3s;
	box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.3);
}

/*hoverしたら表示*/
#global-nav li.has-child:hover > ul,
#global-nav li.has-child ul li:hover > ul,
#global-nav li.has-child:active > ul,
#global-nav li.has-child ul li:active > ul{
  visibility: visible;
  opacity: 1;
}

/* 2階層目*/
#global-nav li.has-child ul li{
	text-align: left;
	background: rgba(255,255,255,0.9);
	padding: 5px;
	border-bottom: 1px dashed #604b0e;
}

#global-nav li.has-child ul li:last-child{
	border-bottom: none;
}

#global-nav li.has-child ul li a{
	font-size: 16px;
	line-height: 1.5em;
	text-align: left;
	font-weight: normal;
	color: #604b0e;
}

#global-nav li.has-child ul li a:hover,
#global-nav li.has-child ul li a:active{
	font-weight: bolder;
}

/* ハンバーガーメニューのためのスタイル */
.mobile-contents {
	display: none;
}

/* nav-toggle */
#nav-toggle {
	display: none;
	position: absolute;
	right: 20px;
    top: 12px;
	height: 27px;
	cursor: pointer;
}

#nav-toggle > div {
	position: relative;
	width: 30px;
}

#nav-toggle span {
	width: 100%;
	height: 3px;
	left: 0;
	display: block;
	background: #ffffff;
	position: absolute;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}

#nav-toggle span:nth-child(1) {
	top: 2px;
}
#nav-toggle span:nth-child(2) {
	top: 13px;
}
#nav-toggle span:nth-child(3) {
	top: 23px;
}

#overlay {
	display: none;
	position: fixed;
	background: rgba(0,0,0,0.6);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

/*===================================
 *  indexページ用のスタイル
 ====================================*/

/*===================================

#hero-index {
	position: relative;
	display: flex;
	align-items: stretch;
	color: #ffffff;
    background-image: url(images/bg_home.jpg);
    background-size: cover;
    background-position: bottom;
    width: 100%;
    height: 60vh;
	border-bottom-left-radius: 50% 20%;
	border-bottom-right-radius: 50% 20%;
	box-shadow: 0px 15px 35px 10px #777777;
	}

 ====================================*/

#hero-index {
	position: relative;
    width: 100%;
    height: auto;
	padding: 8vh 0 3vh 0;
	background-image: url(images/bg_home_top.png);
	background-position: bottom;
	background-repeat: repeat-x;
	background-size: cover;
	}

.hero-contents {
	width:1300px;
	margin: 0 auto;
	padding: 0 1vw;
}

.bg-filter {
	backdrop-filter: blur(2px);
}

img.max-width500 {
    max-width: 500px;
    height: 100%;
	object-fit: contain;
}

.animation-box_fadein {
    animation-name: fadein;
    animation-duration: 1.0s;
    animation-timing-function: ease;
    animation-delay: 1.0s;
    animation-iteration-count: 1;
    animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
    animation-fill-mode: forwards;
    opacity: 0;
}
 
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.hero-text {
	color: #604b0e;
	font-size: 1.2em;
}

/* .hero-text {
	width: 50%;
    top: 10vh;
    left: 10vw;
    position: absolute;
    text-shadow: 1px 1px 20px rgba(0, 0, 0, 1.0);
    padding: 5px;
	color: #ffffff;
	z-index: 1;
}*/

.hero-text_title-box {
	background:
		url(images/flame_line.png),
        url(images/flame_line_bottom.png);
	background-repeat:
		no-repeat,
		no-repeat;
	background-size:
		contain,
		contain;
	background-position:
		top,
		bottom;
	padding: 2em 0em;
	margin: 2em 0em;
}

.hero-text_title {
	font-family: "MonteCarlo", cursive;
	font-weight: 400;
	font-style: normal;
	font-size: 4em;
	color: #604b0e;
	text-shadow: 0px 0px 10px rgba(255, 255, 255, 1.0);
	padding: 0.2em 0em;
    margin: 0;
}

body.home h1 {
    color: #604b0e;
    font-size: 1em;
    padding: 10px 0px;
    line-height: 1.5em;
}

/* ニュース一覧 */

.news-list {
	margin-bottom: 1.2em;
}

.news-list_item {
    border-top: dotted 1px #aea9a1;
    padding: 20px 0px 20px 0px;
}

.news-list_item:last-child {
    border-top: dotted 1px #aea9a1;
    border-bottom: dotted 1px #aea9a1;
}

.news-list_title {
	display :inline-block;
	font-size :1.1em;
	line-height :1.3em;
	margin-bottom :10px;
}

.post_date {
	margin: 0px 0px 0px 0px;
	line-height: 1em;
}

.release_date {
	font-size: 0.7em;
	color: #4f4f4f;
}

/* メニュー一覧 */

.top-menu {
	margin: 20px 0px;
	padding: 10px;
}

/*===================================
 *  一般・共通設定
 ====================================*/

h1 {
	font-size: 40px;
	color: #604b0e;
	line-height: 1.6em;
	margin: 40px 0px 30px 0px;
}

h2 {
	position:relative;
	font-size: 25px;
	color: #604b0e;
	line-height: 1.3;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	margin: 10px 0px 30px 0px;
	padding: 0.2em 0.5em;
	border-bottom: 1px solid #604b0e;
}

.home h2 {
	color: #604b0e;
	text-align: center;
	border-bottom: none;
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	font-style: normal;
}

h3 {
	font-size: 20px;
	line-height: 1.5em;
    padding-bottom: 0.5em;
}

h4 {
	font-size: 20px;
	padding: 15px 0px 15px 5px;
	line-height: 1.2em;
}

h5 {
	font-weight: bolder;
	margin: 10px 0px;
	line-height: 1.5em;
}

section {
	margin-bottom: 5em;
}

section:before {
    content: "";
    display: block;
	height: 120px;/* 調整したい高さ（固定ヘッダーの高さ） */
  	margin-top: -120px;/* heightと同じ分のネガティブマージン */
    visibility: hidden;
}

article.flame-gold {
	padding: 10% 10% 12% 10%;
	box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
	background:
		url(images/flame_article_top.png),
        url(images/flame_article_bottom.png);
	background-repeat:
		no-repeat,
		no-repeat;
	background-size:
		contain,
		contain;
	background-position:
		top,
		bottom;
	background-color: rgba(255,255,255,0.6);
}


/* 背景白のボックス */
.white-box {
	background: rgba(255,255,255,0.5);
	border: #ffffff solid 1px;
	/*box-shadow: 0 5px 6px rgba(0, 0, 0, 0.2);影*/
    padding: 10px;
}

p {
	margin: 0px 0px 10px 0px;
	line-height: 1.5;
}

img {
    image-rendering:auto;
}

.w100 {
	max-width: 100%;/* 幅100％で伸縮する画像 */
}

.red-text {
	color: #ff0000;
}

.right-text {
	text-align: right;
	margin: 20px 0px;
}

.mini-text {
	font-size: 13px;
	line-height: 1em;
}

.small-text {
	font-size: 0.85em;
	}

.big-text {
	font-size: 1.5em;
}

.big-text40 {
	font-size: 40px;
}

.bold {
	font-weight: bolder;
}

rt {
	font-size: 0.4em;
	letter-spacing: -1px;
	position: relative;
  	top: -2px;
}

/* リンク関連 */

a {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

a.underline {
	text-decoration: underline;
}

a.underline:hover {
	color: #716256;
}

.nounderline a:hover{
  text-decoration: none;
}

.icn_tel {
	text-decoration: none;
	line-height: 1.5em;
}

.icn_tel::before {
  content: '\e0b0';
  font-family: 'Material Icons';
  padding: 0px 5px 0px 0px;
  position: relative;
  top: 4px;
}

.icn_insta {
  padding: 0.5em 0.5em;
  text-decoration: none;
  display: inline-block;
}

.icn_insta::before {
	content: url(images/insta.png);
	position: relative;
	top:11px;
	right: 5px;
	}
	
.icn_line {
  padding: 0.5em 0.5em;
  text-decoration: none;
  display: inline-block;
}

.icn_line::before {
	content: url(images/line.png);
	position: relative;
	top:11px;
	right: 5px;
	}

.icn_tiktok {
  padding: 0.5em 0.5em;
  text-decoration: none;
  display: inline-block;
}

.icn_tiktok::before {
	content: url(images/tiktok.png);
	position: relative;
	top:11px;
	right: 5px;
	}
	

a.arrow {
	color: #604b0e;
    text-decoration: none;
    position: relative;
}

a.arrow::before {
    font-size:20px;
    content: '\e5c8';
    font-family: 'Material Icons';
    padding: 0px 5px 0px 0px;
    position: relative;
    top: 2px;
    display:inline-block;
}

a.arrow:hover {
}

a.arrow-back {
	color: #604b0e;
}

a.arrow-back::before {
  font-size:20px;
  content: '\e5c4';
  font-family: 'Material Icons';
  padding: 0px 5px 0px 0px;
  position: relative;
  top: 4px;
	color: #604b0e;
	display:inline-block;
}

a.link-pdf {
	color: #604b0e;
    text-decoration: none;
    position: relative;
}

a.link-pdf::before {
    font-size:20px;
    content: url('images/icn_pdf.png');
    padding: 0px 5px 0px 0px;
    position: relative;
    top: 4px;
    display:inline-block
}

a.link-pdf:hover {
    text-decoration: underline;
}

.center {
	text-align: center;
}

/* ななめの注釈文字 */
.blockquote {
	font-style: oblique;
}

/* flexレイアウト */

.flex-box {
	display: flex;
	width: 100%;
}

.flex-item {
	margin: 10px;
	width: 50%;
}

.flex-item30 {
	margin: 10px;
	width: 30%;
}

.flex-item70 {
	margin: 10px;
	width: 70%;
}

/* リスト */

ul.bulletlist {
	padding: 10px 0px 10px 20px;
}

ul.bulletlist li {
	list-style: disc;
}

ul.iconlinklist {
	padding: 10px 0px 10px 20px;
}

ul.iconlinklist li {
	margin: 20px 0px ;
}

ul.iconlinklist li a {
	color: #0080b6;
}

.iconlinklist li::before {
  font-size:20px;
  content: '\e5c8';
  font-family: 'Material Icons';
  padding: 0px 5px 0px 0px;
  position: relative;
  top: 4px;
	color: #0080b6;
}

ol.numberlist {
	padding: 10px 0px 10px 20px;
}

ol.numberlist li {
	line-height: 1.5em;
	padding: 5px 0px;
}

ol.kakkolist {
  padding: 10px 0px 10px 40px;
  margin:0;
}

ol.kakkolist li{
  list-style-type:none;
  list-style-position:inside;
  counter-increment: cnt;
	line-height: 1.5em;
	padding: 5px 0px;
	text-indent: -1.8em
}

ol.kakkolist li::before{
  display: marker;
  content: "(" counter(cnt) ") ";
}

.asterisk li {
	list-style: none;
	padding-left: 1.5em;
  text-indent: -1.5em;
	line-height: 1.5em;
}

.asterisk li:before {
	content: "＊ ";
}

span.img-right {
	float: right;
	margin: 8px;
}

figure {
	margin: 8px;
}

figcaption {
	font-size: 0.8em;
	line-height:1.2em;
}

.border-gold{
	border: 2px solid #333333;
	border-image: linear-gradient(45deg, rgba(248, 214, 57, 1), rgba(255, 237, 125, 1) 50%, rgba(190, 137, 81, 1));
	border-image-slice: 1;	
	box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.3);
}

/* 画像を横に並べる */

ul.image-list04,
ul.image-list03,
ul.image-list02,
ul.image-list {
	display: flex;
	flex-wrap: wrap;
}

ul.image-list li {
	list-style: none;
	padding: 10px;
}

ul.image-list02 li {
	list-style: none;
	padding: 10px;
	width: 50%;
}

ul.image-list03 li {
	list-style: none;
	padding: 10px;
	width: 33%;
}

ul.image-list04 li {
	list-style: none;
	padding: 10px;
	width: 25%;
}

/* 拡大マーク */

 li.kakudai::before {
  font-size: 30px;
  content: '\e8ff';
  font-family: 'Material Icons';
  padding: 0px 5px 0px 0px;
  position: relative;
  top: 50px;
	left: 8px;
	color: #FFFFFF;
}

ul.kakudai a {
	text-decoration: none;
}

/* 囲み線リンク */

 p.link-border {
}

.link-border a {
	display: inline-block;
	margin: 20px 0px;
	padding: 5px 20px;
	border: 1px solid #ffffff;
	border-radius: 5px;
	position: relative;
	color: #0080b6;
}

.link-border a:hover {
	text-decoration: none;
	background-color: #c4ac92;
	transition: all 0.5s ease-out;
}

/*===================================
 *  パンくずリスト
 ====================================*/

#breadcrumblist {
	margin: 30px 0px 10px 5px;
}

.breadcrumb {
  margin: 0;
  padding: 0;
  list-style: none;
}

.breadcrumb li {
  display: inline;/*横に並ぶように*/
  list-style: none;
  font-size: 14px;
}

.breadcrumb li:after {/* >を表示*/
  content: '>';
  padding: 0 0.2em;
  color: #604b0e;
}

.breadcrumb li:last-child:after {
  content: '';
}

.breadcrumb li a {
  text-decoration: none;
  color: #604b0e;
}

.breadcrumb li a:hover {
  text-decoration: underline;
}

/*=================================
　投稿一覧（archive.php）
===================================*/

.post-list {
}

.post-list_item {
	display: flex;
    border-bottom: dotted 1px #aea9a1;
	padding: 10px;
	margin: 10px 0px;
}

.post-list_eyecatch{
	width: 130px;
	height: 130px;
	margin: 10px;
}

.post-list_eyecatch img{
	width: 130px;
	height: 130px;
	object-fit: cover;
	border: 1px solid #cccccc;
}

a.blog-title {
	color: #604b0e;
}

.post-list_item:last-child {
}

.post-categories,
.post-tags {
	margin: 0.8em 0em;
	display: flex;
	flex-wrap: wrap;
}

.post-categories li,
.post-tags li {
	font-size: 0.7em;
	color: #666666;
	margin-right: 10px;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}

.post-categories li a,
.post-tags li a {
	color: #666666;
}

.post-categories li::before {
	content: '\e2c7';
	font-family: 'Material Icons Outlined';
	font-size: 1.5em;
	padding: 0px 2px 0px 0px;
	position: relative;
	top: 4px;
	color: #666666;
}

.post-tags li::before {
	content: '\e9ef';
	font-family: 'Material Icons Outlined';
	font-size: 1.5em;
	padding: 0px 2px 0px 0px;
	position: relative;
	top: 4px;
	color: #666666;
}

ul.cat-list {
	display: block;
	list-style-type: disc;
	margin-block-start: 0.5em;
	padding-inline-start: 1.5em;
}

ul.cat-list li {
	
}

ul.cat-list li a{
	color: #604b0e;
}


/*=================================
　ページネーション
===================================*/
.pagination {
    display: flex;
    justify-content: center;
}

.pnavi {
    
}
.page-numbers{
    border: 1px solid #604b0e;
    border-radius: 0px;
    background-color: #ffffff;
    color: #604b0e;
    padding: 5px 10px;
}

.current {
    border: 1px solid #604b0e;
    border-radius: 0px;
    background-color: #604b0e;
    color: #ffffff;
    font-weight: bolder;
    padding: 5px 10px;
}

.dots {
	border: none;
	background: none;
}

.page-numbers.prev,
.page-numbers.next{
    background-color: transparent;
    border:none;
    color:#604b0e; 
}


/*=================================
　ページ内リンク
===================================*/

ul.anchor-link {
	list-style-type:none;
	margin: 0;
	padding: 0;
}

ul.anchor-link li {
	display: inline-block;
	margin: 10px;
}

ul.anchor-link li a {
	font-size: 1em;
	color: #604b0e;
}

ul.anchor-link li::before {
	font-size: 22px;
	color: #604b0e;
	content: '\e5db';
	font-family: 'Material Icons';
	padding: 0px;
	position: relative;
	top: 4px;
    left: 0px;
	}


/*===================================
 *  テーブル
 ====================================*/

table {
	border-spacing: 0; /*セル同士の隙間なし*/
	border-collapse: collapse; /*隣接ボーダーを重ねる*/
}

.bg_white {
	background: rgba(255,255,255,0.5);
	}

/* type01_レスポンシブで縦並び */

.type01 {
	margin: 10px 0px 20px 0px;
}

.type01 th {
	width: 260px;
	text-align: left;
	padding: 20px 15px;
	border-top: 1px solid #c4ac92;
	border-bottom: 1px solid #c4ac92;
}

.type01 td {
	width: 740px;
	padding: 20px 15px;
	border-top: 1px solid #c4ac92;
	border-bottom: 1px solid #c4ac92;
	line-height: 2.0;
}

/* table_会社概要 */

.company {
	margin: 10px 0px 20px 0px;
	width: 100%;
}

.company th {
	width: 30%;
	text-align: left;
    vertical-align: top;
	padding: 12px 6px;
	border-top: 1px solid #c4ac92;
	border-bottom: 1px solid #c4ac92;
}

.company td {
	width: 70%;
	padding: 12px 6px;
    vertical-align: top;
	border-top: 1px solid #c4ac92;
	border-bottom: 1px solid #c4ac92;
}

/*=================================
　よくある質問
===================================*/

.faq-box {
	background: rgba(255,255,255,0.5);
	border: #ffffff solid 1px;
    padding: 15px;
	margin-bottom: 2em;
}

.faq-question {
	background-color: #999281;
	color: #fff;
	padding: 10px;
	border-radius: 5px;
}

.faq-question p {
	padding: 0;
	margin: 0;
	font-size: 1.1em;
}

.faq-answer {
	padding: 10px 1em 10px 1em;
}

.faq-answer p {
	padding: 0;
	margin: 0 0 0.6em 0;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 0.9em;

}
 
/*===================================
 *  フッターナビ
 ====================================*/

.footer-nav {
	display: flex;
	flex-wrap: wrap;
	padding: 10px 0px;
}

.footer-nav ul {
	padding: 5px 10px;
	margin-right: 15px;
}

.footer-nav ul li {
	margin: 2px 0px 2px 20px;
	font-size: 0.9em;
	list-style: disc;
}

.footer-nav ul li a {
	color: #ffffff;
}

/*===================================
 *  フッターとコピーライト 
 ====================================*/

footer {
	margin: 0px 0px 50px 0px ;
	color: #ffffff;
	background: rgba(113, 101, 56, 1.0);
	border-radius: 0px;
}

.footer-contents{
	width: 1300px;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-around;
	padding: 10px 5px;
}

.footer-item {
	width: 33%;
	padding: 15px;
}

.footer-item p {
	margin: 0;
	padding: 0;
	color: #ffffff;
}

.footer-item p a {
	color: #ffffff;
}

.footer_iconlist {
	margin: 0.8em 0em;
}

.footer_iconlist ul {
	margin: 0px;
    display: flex;
}

.footer_iconlist ul li {
    margin: 5px 30px 5px 0px;
}

.copylight {
	width: 100%;
  	text-align: center;
	margin: 30px auto;
	padding: 0px 5px 60px 5px;
}

small {
	font-size: 0.8em;
}

/* ==============================
上に戻るボタン
=============================== */

#topbutton {
	/* ▼ボタンの表示位置を画面の右下に固定 */
	position: fixed; /* ←表示場所を固定 */
	bottom: 10px;   /* ←下端からの距離 */
	right: 25px;    /* ←右端からの距離 */
	display: none;/* ▼最初は非表示にしておく */
	text-align: center;
	opacity: 0.4;
}

#topbutton:hover {
	opacity: 1.0;
}

#topbutton a {
	position: relative;
  display: block;
  text-decoration: none;
	border: 1px solid #ea2c2e;
	border-radius: 30px;
	background-color: #ea2c2e;
	padding: 20px;
}

#topbutton a::before{
	font-size: 24px;
	content: '\e5d8';
	font-family: 'Material Icons';
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}


/*===================================
 * 490px以下の時だけ電話リンク
 ====================================*/ 
@media(min-width: 490px){
	
  a[href^="tel:"]{
    pointer-events: none;
  }
	
}

/*===================================
 * 1300px以上用メディアクエリ
 ====================================*/ 
@media screen and (min-width:1300px) {

	#wrapper {
		width: 1300px;
	}
    
    #wrapper_100vw,
	.footer-nav {
		width: 100%;
	}
	
	.slide {
		height: 35vw;
	}
	
	#hero-index {
	}

}/* 画面サイズ1300pxここまで*/


/*===================================
 * 1300px以下用メディアクエリ
 ====================================*/ 
@media screen and (max-width:1300px) {
    #wrapper,
    #wrapper_100vw,
	.hero-contents,
	.header-contents,
	.contents_1300,
	.logo-nav {
		width: 100%;
	}
	
	.footer-nav,
	.footer-contents {
		width: 450px;
	}
    
	.hero-text_title {
	font-size: 3em;
	line-height:1.2em;
	}
    
	.footer-contents{
	flex-wrap: wrap;
		
	}
	
	.footer-logo, 
	.footer-adress {
		margin: 8px;
	}
	
	.footer-item{
		width: 100%;
		border-bottom: 1px solid #ffffff;
	}

	.footer-item:last-child {
		border-bottom: none;
	}
	
	.footer-text {
		
	}

	.pc-contents {
		display: none;
	}
	
	.mobile-contents_mid {
        display: block;
    }
	
	.header-contents {
		justify-content: space-between;
        padding: 3px 75px 7px 10px;
	}
	
	.header-text {
		width: 0;
	}
	
	.slide {
		height: 35vw;
	}
	
	/* ハンバーガーメニューのためのスタイル */
	
	#nav-toggle {
		display: block;
		border: solid 2px #ffffff;
		border-radius: 5px;
		padding: 6px;
		background-color: none;
		height: 45px;
	}

	#global-nav {
		position: fixed;
		right: -300px;
		top: 0;
		height: 100%;
		width: 270px;
		padding-top: 60px;
		background: rgba(251,247,230,0.9);
		-webkit-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
		overflow: scroll;
	}

    #global-nav ul{
        display: block;
        top: 100px;
        position: absolute;
        }

    #global-nav li {
        display: block;
        margin: 30px 0px 0px 10px;
		color: #604b0e;
        }
	
	#global-nav li a {
		color: #604b0e;
        }
	
	#global-nav li a:hover {
		color: #604b0e;
		font-weight: bolder;
        }
	
	/* ナビゲーションの開閉 */
	.open {
		overflow: hidden;
	}
	.open #overlay {
		display: block;
	}
	.open #global-nav  {
		-webkit-transform: translate3d(-300px,0,0);
		transform: translate3d(-300px,0,0);
	}

	/* 3本線の動き */
	
	.open #nav-toggle {
		border: solid 2px #604b0e;
	}
			
	.open #nav-toggle span {
		background: #604b0e;
	}
	
	.open #nav-toggle span:nth-child(1) {
		top: 13px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	.open #nav-toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	
	.open #nav-toggle span:nth-child(3) {
		top: 13px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	/* z-index */
	#overlay {
		z-index: 200;
	}
	#global-nav {
		z-index: 300;
	}
	#nav-toggle {
		z-index: 400;
	}
	/* ハンバーガーここまで */

	/*グローバルナビの2階層目*/
	#global-nav li.has-child ul,
	#global-nav li.has-child ul ul{
		position: relative;
		left: 40px;
		top: 0;
		width:100%;
		visibility:visible;
		opacity:1;
		box-shadow: none;
	}
	
	/*hoverしたら表示*/
	#global-nav li.has-child:hover > ul,
	#global-nav li.has-child ul li:hover > ul,
	#global-nav li.has-child:active > ul,
	#global-nav li.has-child ul li:active > ul{
		border: none;
	}
	
	#global-nav li.has-child ul li {
		padding: 10px 0px;
		margin: 5px 0px;
		border: none;
		border-radius: 0px;
		background: none;
	}

	#global-nav ul li.has-child::before {
	color: #604b0e;
	}
	
	#global-nav li.has-child ul li a{
		margin: 0px;
	}
		
	.footer_iconlist ul {
	}
	
	.footer_iconlist ul li {
	margin: 10px;
	}
    
/*===================================
 * 780px用メディアクエリ
 ====================================*/ 
@media screen and (max-width:780px) {
	
	.header-contents {
		flex-wrap: wrap;
	}
	
	.header-contact {
	  padding: 5px 10px;
	}

	#hero-index {
		flex-wrap: wrap;
	}
	
	.animation-box_fadeout {
    padding: 20vw 10vw 10vw 10vw;
	}

    .hero-text {
        }
	
    h1 {
	font-size: 30px;
	line-height: 1.4em;
	margin: 25px 0px 25px 0px;
    }

	.h1-sub {
		font-size: 0.8em;
		line-height: 1.8em;
		display: inline-block;
		margin-top: 10px;
	}

	.flex-box,
    .flex-box_index{
		flex-wrap: wrap;
	}
	
    .contents,
	.flex-item,
	.flex-item30,
	.flex-item70,
    .flex-item60_index,
    .flex-item40_index {
		width: 100%;
	}
	
	figure {
	margin: 10px 10px 30px 10px;
	}
	
	.big-text {
		font-size: 1.2em;
	}
	
	
    /*--トップページ--*/
	
	.flex-item40_index {
	  padding: 10px;
	}

    .order01 {
        order: 1;
    }

    .order02 {
        order: 2;
    }
	
	img.max-width500 {
    max-width: 100%;
    height: auto;
	object-fit: contain;
}

}/* 画面サイズ780pxここまで*/


/*===================================
 * 490px用メディアクエリ
 ====================================*/ 
@media screen and (max-width:490px) {

	.pc-contents02{
		display: none;
	}
    
    .mobile-contents {
        display: block;
    }
	
	.header-logo {
		font-size: 6vw;
		width: 60px;
	}
	
	.animation-box_fadeout {
    padding: 30px;
	}
	
    .hero-text {
        }
	
	section:before {
    content: "";
    display: block;
	height: 60px;/* 調整したい高さ（固定ヘッダーの高さ） */
  	margin-top: -60px;/* heightと同じ分のネガティブマージン */
    visibility: hidden;
}
 
	
	/* ページタイトルのところ */

	.h1-box {
		margin: 0 auto;
	}

	.h1-box h1 {
		font-size: 23px;
		padding: 10px;
	}
	
	.subtitle {
		font-size: 20px;
		padding: 10px;
	}
	
	h2 {
		font-size: 23px;
	}
	
	/*--　投稿一覧　--*/	
	
	.post-list_item {
	margin: 5px 0px;
	}
	
	.post-list_eyecatch{
	width: 90px;
	height: 90px;
	}
	
	.post-list_eyecatch img{
	width: 90px;
	height: 90px;
	}
	
	
    
	/*--テーブル--*/
	
	table.type01 {
		width: 100%
	}
	
	table.type01 th {
		display: block;
		width: 100%;
		border-bottom: none;
		background: rgba(255,255,255,0.3);
	}

	table.type01 td {
		display: block;
		width: 100%;
		border-bottom: none;
		padding: 25px 0px 25px 10px;
	}
	
	/*--画像リスト--*/
	ul.image-list02 li {
			list-style: none;
			padding: 10px;
			width: 100%;
	}
	
	ul.image-list03 li,
	ul.image-list04 li {
			list-style: none;
			padding: 10px;
			width: 50%;
	}
	
	.footer-nav,
	.footer-contents {
		width: 100%;
	}
	

}/* 画面サイズ490pxここまで*/

