/*
Theme Name: Amanohashidate2026
Author: burea
Version: 1.00
*/

/* 必要に応じてここにカスタムCSSを記述 */
html {
  overflow-y: scroll; /* 常にスクロールバーを表示しておく */
}

body {
	font-size: 16px;
	line-height:1.6;
	font-family:Noto Serif JP,serif;
	background-color:#f5f5f5;
	color:#000;
	padding:0;
	margin:0;
}


h1, h2, h3, h4, h5, h6 {
	font-family: inherit;
}

a {
	color:#16627E;
}

a:hover,
a:focus {
	color: #443f3f;
}

.text-center {
	text-align:center;
}

.text-right {
	text-align:right;
}

.text-left {
	text-align:left;
}

.d-flex {	
	display:flex;
}	
	
.flex-wrap {	
	flex-wrap:wrap;
}

.page-wrap {
 padding-bottom:100px !important;
 padding-top:20px !important;
}

#secondary, #primary {
    padding: 15px;
}

.llms-student-dashboard .llms-button-secondary, .llms-student-dashboard .llms-button-secondary:hover, .llms-button-action, .llms-button-action:hover, .roll-socials li a:hover, .roll-socials li a, .roll-button.light:hover, .roll-button.border, .roll-button, .roll-icon-list .icon, .roll-icon-box .icon, .owl-theme .owl-controls .owl-page span, .comment .comment-detail, .widget-tags .tag-list a:hover, .blog-pagination ul li, .error-wrap #search-submit:hover, textarea:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, input[type="tel"]:focus, button, input[type="button"], input[type="reset"], input[type="submit"], .archive .team-social li a {
	border-color:#16627E;
}

.llms-student-dashboard .llms-button-secondary, .llms-button-action, .woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .project-filter li a.active, .project-filter li a:hover, .preloader .pre-bounce1, .preloader .pre-bounce2, .roll-team .team-item .team-pop, .roll-progress .progress-animate, .roll-socials li a:hover, .roll-project .project-item .project-pop, .roll-project .project-filter li.active, .roll-project .project-filter li:hover, .roll-button.light:hover, .roll-button.border:hover, .roll-button, .roll-icon-box.white .icon, .owl-theme .owl-controls .owl-page.active span, .owl-theme .owl-controls.clickable .owl-page:hover span, .go-top, .bottom .socials li:hover a, .sidebar .widget:before, .blog-pagination ul li.active, .blog-pagination ul li:hover a, .content-area .hentry:after, .text-slider .maintitle:after, .error-wrap #search-submit:hover, #mainnav .sub-menu li:hover > a, #mainnav ul li ul:after, button, input[type="button"], input[type="reset"], input[type="submit"], .panel-grid-cell .widget-title:after, .cart-amount {
	background-color:#16627E;
}

button, div.wpforms-container-full:not(.wpforms-block) .wpforms-form .wpforms-page-button, div.wpforms-container-full:not(.wpforms-block) .wpforms-form button[type=submit], div.wpforms-container-full:not(.wpforms-block) .wpforms-form input[type=submit], input[type=button], input[type=reset], input[type=submit] {
    border: 1px solid #16627E;
}

.llms-student-dashboard .llms-button-secondary:hover, .llms-button-action:hover, .read-more-gt, .widget-area .widget_fp_social a, #mainnav ul li a:hover, .sydney_contact_info_widget span, .roll-team .team-content .name, .roll-team .team-item .team-pop .team-social li:hover a, .roll-infomation li.address:before, .roll-infomation li.phone:before, .roll-infomation li.email:before, .roll-testimonials .name, .roll-button.border, .roll-button:hover, .roll-icon-list .icon i, .roll-icon-list .content h3 a:hover, .roll-icon-box.white .content h3 a, .roll-icon-box .icon i, .roll-icon-box .content h3 a:hover, .switcher-container .switcher-icon a:focus, .go-top:hover, .hentry .meta-post a:hover, #mainnav > ul > li > a.active, #mainnav > ul > li > a:hover, button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover, .text-color, .social-menu-widget a, .social-menu-widget a:hover, .archive .team-social li a, a, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, .classic-alt .meta-post a, .single .hentry .meta-post a, .content-area.modern .hentry .meta-post span:before, .content-area.modern .post-cat {
    color: #16627E;
}


/* cuntom post type archives */
[id^="custom-post-type"] {
    background-color: #fff;
    padding: 20px;
}


[id^="custom-post-type"] .widget-title {
	font-size:32px;
}

.grecaptcha-badge {
  visibility: hidden;
}

.recaptcha-note {
	margin-top:20px;
}

/* -------------------- メインヘッダー&ナビゲーション ---------------------- */

#masthead,
#masthead-mobile,
.shfb-header {
    transition: transform 0.3s ease;
	display:none !important;
}



#org-header {
	display:flex;
	justify-content:space-around;
	align-items:center;
	background-color:#005A7D;
	color:#ffffff;
	flex-wrap:wrap;
	padding:10px;
	/* position:relative; */
	position:fixed;
	top:0;
	width:100%;
	z-index:11;
	transition: transform 0.8s ease;
}

#org-header .site-logo {
	max-height:76px;
    width: auto;
    vertical-align: middle;
}

#org-header ul {
	padding-left:0;
	gap:20px;
}

#org-header li {
	list-style:none;
}

#org-header .navigation-icon {
	fill:#ffffff;
	width:20px;
}

#org-header .nav-main-contents {
	margin-bottom:0;
}

#org-header .nav-main-contents  li {
	font-size:0.9em;
/*	padding:0 12px; */
}

#org-header .nav-main-contents li a {
	color:#ffffff;
	display:block;
}

#org-header .dropdown-symbol svg {
/*
	fill:#ffffff;
	width:20px;
*/
	vertical-align:text-bottom;
}

#org-header .menu-item-has-children {
	position:relative;
	cursor:pointer;
}


#org-header .menu-item-has-children ul {
	z-index:999;
	width:0;
  max-height: 0;      /* 高さも0にして閉じる */
    visibility: hidden;
    opacity: 0;
  transition:
    opacity 0.3s ease-in,    /* フェードアニメーション */
    visibility 0.3s ease-in; /* visibility も同時 */

}


#org-header .menu-item-has-children.open ul {
	width:200px;
  max-height: 500px; /* コンテンツの最大高さ */

    visibility: visible;
    opacity: 1;
	background-color:#172C35;
	position:absolute;
	right:0;
}

#org-header .menu-item-has-children ul li {
	display:none;
}

#org-header .menu-item-has-children.open ul li {
	display:block;
	width:auto;
	padding:5px 10px;
}

#org-header .menu-item-has-children.open ul li:hover {
	background-color:rgba(255,255,255,0.2);
}

#org-header .nav-sub-contents {
	display:flex;
}

#org-header .menu-button {
  display: inline-flex;
  flex-direction: column;
  justify-content: space-between;
  width: 20px;
  height: 16px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;

position:relative;
}

#org-header .bar {
  display: block;
  height: 2px;
  width: 100%;
  background-color: #fff;
  border-radius: 3px;
  transition: transform 0.3s ease, opacity 0.3s ease;
}

/* アニメーションの状態を切り替えるクラス */
#org-header .menu-button.active .top {
  transform: translateY(7px) rotate(45deg);
}

#org-header .menu-button.active .middle {
  opacity: 0;
}

#org-header .menu-button.active .bottom {
  transform: translateY(-7px) rotate(-45deg);
}

.nav-sub-contents-wrap {
	/* position:absolute; */
	position:fixed;
	left:0;
	width:100%;
	z-index: 99999;
	margin:0;

	/* アニメーションのための初期状態 */
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	transition: max-height 0.4s ease, opacity 0.4s ease;
	text-align:center;
}


/* 開いた状態 */
 .nav-sub-contents-wrap.show {
  max-height: 100%; /* ← メニューの高さに合わせて調整 */
	height:100%;
/* overflow:scroll; */
	overflow:auto;
  opacity: 1;
	background-color:rgba(114, 114, 114, 0.4);

}

 .nav-sub-contents-wrap ul {
	width:100%;
	margin:0 0 0 auto;
	background-color:#fff;
	padding:0;
	/* height:calc(100% + 80px); /* iOSで下部が隠れない対策 */
	height:100%;
}

 .nav-sub-contents-wrap ul li {
	font-size:1.2em;
	color:#000;
	width:100%;
	margin:auto;
	list-style:none;

	/* background-color:#fff; */
	border-top:1px dashed #ccc;
}

 .nav-sub-contents-wrap ul li a{
	display:block;
	padding:10px;
	color:
}

 .nav-sub-contents-wrap ul li:last-of-type {
	border-bottom:1px dashed #ccc;
}
 .nav-sub-contents-wrap ul li:hover {
	background-color: rgba(240, 240, 240, 0.5);
}



/* 検索フォーム */
 .nav-sub-contents-wrap .search-wrap {
	padding:20px 0;
	background-color:#fff;
}

 .nav-sub-contents-wrap .search-form {
	display:flex;
	gap:0;
	justify-content:center;
}

 .nav-sub-contents-wrap label {
	margin-bottom:0;
}

 .nav-sub-contents-wrap .search-field {
	border-radius: 5px 0 0 5px;
	outline:none;
}

 .nav-sub-contents-wrap .search-submit {
	border-radius: 0 5px 5px 0;
}

.mo-hide {
	display:none;
}

/* ---------- サブサイトヘッダー --------- */
.sub-header .subsite-title-wrapper {
	margin:0 0 30px;
	width:100%;
/*
	background-image: url(./images/bg-sitetitle.webp);
	background-position:center;
	background-size:cover;
	position:relative;
*/

	background-image: url(./images/bg-subtitle.jpg);
	background-size:300px;
	position:relative;
}

.sub-header .subsite-title-wrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.6); /* 単色オーバーレイ */
  z-index: 1;
}


.sub-header .subsite-title {
	/* background-color:#999; */
	margin:0;
	width:100%;
	/* height:150px;
	overflow:hidden;
	position:relative;
	*/
font-weight:bold;
position:relative;
z-index:2;
color:#005A7D;
text-align:center;
font-size:36px;
padding:20px 10px;
}



.sub-header .subsite-title img {
	width:100%;
	height:100%;
	display:block;
    object-fit: cover;
    object-position: center center;
}

.sub-header .subsite-title span {
	display:block;
	font-size:16px;
	z-index:2;
}

.sub-header .subsite-title span::after {
	content:"";
	display:block;
	width:100px;
	border-bottom:3px dotted #005A7D;
	margin:10px auto;
}

/* ---------- サブヘッダーサーチフォーム --------- */
.sub-header .search-area{
	margin:30px auto;
}

.sub-header .search-area form {
	display:flex;
	flex-direction:column;
	gap:20px;
}

.sub-header .search-area form > input, 
.sub-header .search-area form > select {
	flex-grow:1;
	color:#00102e;
	border:1px solid #000;
}

.sub-header .search-area label {
	display:block;
}


.archive-controls__sort select {
	height:24px;
	padding:5px 10px;
	box-sizing:content-box;
	font-size:14px;
}

/* -------------------- 固定要素 ---------------------- */

#fixed-element {
	position:fixed;
	top:30vh;
	right:0;
	z-index:9999;
	transition: transform 0.8s ease;
	display:flex;
	flex-direction:column;
	align-items:flex-end;
}

.sticky-pamphlet {	
	background-color:rgba(135,25,25,0.8);
	color:#fff;
	border-radius:10px 0 0 10px;
	width:30px;
	padding:15px 5px;
	font-size:0.9rem;
	margin-left:auto;
	margin-bottom:20px;
}

.sticky-pamphlet a {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;	
	line-height:1.6;
}


.sticky-news {	
	/* background-color:rgba(47,116,98,0.8); */
	background-color:rgba(14, 65, 52, 0.8);
	color:#fff;
	border-radius:10px 0 0 10px;
	width:30px;
	padding:20px 5px;
	cursor:pointer;
	font-size:0.9rem;
	transition: width 0.4s cubic-bezier(.22,1,.36,1);
}

.sticky-title {
	font-size:0.9rem;
	color:#fff;
	font-weight:normal;
	margin:0;
	-ms-writing-mode: tb-rl;
	 writing-mode: vertical-rl;
	line-height:1.6;
}

.sticky-news .news-archive-link {
	display:none;
}

.sticky-news.is-open {
	width:320px;
	transition: width 0.4s cubic-bezier(.22,1,.36,1);
	padding-left:10px;
	position:relative;
}

.sticky-news.is-open .sticky-title {
	font-size:1rem;
	-ms-writing-mode: lr-tb;
	writing-mode: horizontal-tb;
}

.sticky-news.is-open .news-archive-link {
	display:block;
	position:absolute;
	right:10px;
	top:20px;
	border:1px solid #fff;
	padding:2px 10px;
	border-radius:20px;
	font-size:0.8rem;
}

.sticky-news-list {
	display: none;
	font-size:0.8rem;
}

.sticky-news-list ul {
	list-style: none;
	padding-left:0;
}

.sticky-news-list ul li {
	margin-bottom:10px;
	border-bottom:1px dotted #a3beb8;
	padding-bottom:10px;
}

.sticky-news-list .date {
	display:block;
}

.sticky-news.is-open .sticky-news-list {
	display:block;
}




/* -------------------- パンくずリスト ---------------------- */
.breadcrumbs {
	font-size:0.7em;
	background-color:#f7f7f7;
	padding:10px;
}

.breadcrumbs > * {
	margin-top:10px;
}

/* -------------------- 一覧ページ ---------------------- */
.posts-layout .hentry {
	margin-bottom:30px;
}

h1.archive-title {
  display: flex;
  align-items: center; /* 垂直中央揃え */
  font-size: 24px;
  font-weight: bold;
  gap: 1em; /* 文字と線の間隔 */
}

h1.archive-title::after {
  content: "";
  flex-grow: 1; /* 残り幅を線で埋める */
  height: 1px;
  background-color: #ccc;
}

.thumb4-3 {
	width:100%;
	margin-bottom:10px;
}


.thumb4-3 a {
	display:block;
	aspect-ratio:4 / 3;
	overflow:hidden;
}

.thumb4-3 img {
	width:100%;
	height:100%;
    object-fit: cover;
    display: block;  
}

.posted-on {
	color:#233452;
}

.cat-links a{
	display:inline-block;
	line-height:1.4rem;
	padding:0 6px;
	white-space:nowrap;
/*
	background-color:#000;
	color:#fff !important;
*/
color:#233452 !important;
border:1px solid #233452;
	border-radius:3px;
	/* font-family:sans-serif; */
}

.cat-links a:hover {
	opacity:0.6;
}

.content-inner {
	background-color:#fff;
	padding:15px;
}

.home .content-inner,
.blog .content-inner,
.search .content-inner,
.archive .content-inner{
	height:100%;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
}

.home .content-inner .entry-header,
.blog .content-inner .entry-header,
.search .content-inner .entry-header,
.archive .content-inner .entry-header {
/* check */
	flex-grow:0;
	margin-bottom:0;
}


.home .content-inner .entry-header .entry-meta,
.blog .content-inner .entry-header .entry-meta,
.search .content-inner .entry-header .entry-meta,
.archive .content-inner .entry-header .entry-meta {
/*	justify-content:space-between; */
	gap:5px;
}

.home .content-inner .entry-header .entry-meta>*,
.blog .content-inner .entry-header .entry-meta>*,
.search .content-inner .entry-header .entry-meta>*,
.archive .content-inner .entry-header .entry-meta>*  {
	/* styles.min.css上書き */
	margin-right:0;
}

.home .content-inner .entry-header .entry-meta .cat-links,
.blog .content-inner .entry-header .entry-meta .cat-links,
.search .content-inner .entry-header .entry-meta .cat-links,
.archive .content-inner .entry-header .entry-meta .cat-links  {
	display:flex;
	gap:5px;
}


.home .content-inner .entry-post,
.blog .content-inner .entry-post,
.search .content-inner .entry-post,
.archive .content-inner .entry-post {
	flex-grow:1;
}


.home .content-inner h2,
.blog .content-inner h2,
.search .content-inner h2,
.archive .content-inner h2 {
	font-size:16px !important;
}

.home .content-inner h3,
.blog .content-inner h3,
.search .content-inner h3,
.archive .content-inner h3{
	font-size:16px;
	margin-bottom:0;
}


.home .content-inner .entry-post p,
.blog .content-inner .entry-post p,
.search .content-inner .entry-post p,
.archive .content-inner .entry-post p{
	font-size:14px;
}

.home .content-inner dl,
.archive .content-inner dl{
	display:flex;
	flex-wrap:wrap;
	font-size:14px;
}

.home .content-inner dt,
.archive .content-inner dt {
/*	flex-basis:40px; */
}


.home .content-inner dt:after,
.archive .content-inner dt:after {
	content:" : ";
}


.home .content-inner dd,
.archive .content-inner dd {
/*	flex-basis: calc(100% - 40px); */
}

.home .content-inner .entry-footer,
.blog .content-inner .entry-footer,
.search .content-inner .entry-footer,
.archive .content-inner .entry-footer {
	display:flex;
	justify-content:end;
	align-items:end;
	margin-top:10px;
}

.home .content-inner .tag-links,
.blog .content-inner .tag-links,
.search .content-inner .tag-links,
.archive .content-inner .tag-links {
	font-size:13px;
	font-weight:normal;
}

.home .content-inner .tag-links a,
.blog .content-inner .tag-links a,
.search .content-inner .tag-links a,
.archive .content-inner .tag-links a {
	color:#000;
	text-decoration:underline !important;
}

.home .content-inner .tag-links a:hover,
.blog .content-inner .tag-links a:hover,
.search .content-inner .tag-links a:hover,
.archive .content-inner .tag-links a:hover {
	text-decoration:none !important;
}


.home .content-inner .btn-area,
.blog .content-inner .btn-area,
.search .content-inner .btn-area,
.archive .content-inner .btn-area {
	text-align:right;
}

.home .content-inner a.btn,
.blog .content-inner a.btn,
.search .content-inner a.btn,
.archive .content-inner a.btn {
 color:#000;
font-family:sans-serif;
font-size:13px;
	border-bottom:1px solid #000;
}

.home .content-inner a.btn:hover,
.blog .content-inner a.btn:hover,
.search .content-inner a.btn:hover,
.archive .content-inner a.btn:hover {
	border-bottom:none;
}

/* -------------------- アーカイブページ ---------------------- */

/* -------------------- 検索結果ページ ---------------------- */
h3.search-title{
    display: flex;
	flex-direction:column;
    align-items: center;
    font-size: 20px;
    font-weight: bold;
    gap: 10px;
}

h3.search-title::after {
    content: "";
    flex-grow: 1;
    height: 1px;
    background-color: #ccc;
}

h3.search-title span {
	display:block;
	font-size:14px;
	flex-shrink:0;
}

/* -------------------- コンテンツ ---------------------- */

/* -- 見出し -- */
h1.entry-title.title-post,
.page-title {
	text-align:center;
	margin-top:20px;
	font-size:28px;
}


h1.entry-title::after,
.page-title::after{
  content: "";
  display: block; /* または inline-block にしてもOK */
  width: 80px;
  height: 16px;
  background-image: url('./images/h1-line.svg');
  background-repeat: no-repeat;
  background-size: contain; /* または cover / auto */
  margin: 10px auto 0; /* 中央寄せなども可能 */
  opacity:0.4;
}

.single .entry-meta {
	justify-content:center;
}

.entry-content .alignfull {
    margin: 20px calc(50% - 50vw);
    max-width: 100vw;
    width: 100vw;
}

.wp-block-list {
	padding-left:20px;
}

/* ギャラリー機能 */

/* コンテンツフッター */
.page-numbers.dots {
	background-color:#c7c7c7;
}

.geo-mashup-nearby-posts {
	padding-left:30px;
}

/* 固定ページ */
.page-template-page_fullwidth .entry-content {
	max-width:1000px;
	margin: 1.2em auto;
}


/* 投稿singleページ */

body:not(.single-tribe_events) .details {
	margin:50px auto;
}

.details h2 {
	text-align:center;
}

.details h2::before,
.details h2::after {
	content:"";
	display:inline-block;
	width:30px;
	border-bottom:1px solid #ccc;
	margin:10px;
}

.details.access iframe {
	aspect-ratio: 1 / 1;
	height: auto;
}



.details-wrapper {
	display:flex;
	flex-direction:column;
	gap:30px;
	margin-bottom:30px;
}

.details-wrapper h3:not(.name) {
	font-size:16px;
    border: 1px solid #ccc;
    padding: 5px 10px;
    background-color: #f4eee2;
    color: #452717;
	margin-bottom:10px;
}

.detail h3.name {
	margin:0 !important;
	text-align:center;
	font-size:24px;
}

.detail dl {
display:grid;
grid-template-columns: 70px 1fr;
font-size:14px;
  row-gap: 0.5em;
line-height:1.4;
}

.detail dt {
	position:relative;
	padding-right:5px;
	padding-bottom:5px;
	border-bottom:1px dashed #ccc;
}

.detail dt:before {
	content:"：";
	position:absolute;
	right:0;
	
}

.detail dd {
  margin: 0;
	padding-bottom:5px;
  word-break: break-all;
  overflow-wrap: anywhere;
	border-bottom:1px dashed #ccc;
}


.detail .map-link {
	text-align:center;
}

.detail .map-link a{
	display:inline-block;
	background-color:#000;
	color:#fff;
	border-radius:20px;
	padding:5px 20px;
	margin-bottom:10px;
}

.detail.overview p.kana {
	text-align:center;
}



.nearby-spot h1{
	display:none;
}

.nearby-spot h3 {
	font-size: 16px;
    border: 1px solid #ccc;
    padding: 5px 10px;
    background-color: #f4eee2;
    color: #452717;
    margin-bottom: 10px;
}

.post-wrap img,
.post-wrap figure:not(.gallery-item),
.post-wrap iframe,
.post-wrap video {
  max-width: 100% !important;
}

/* -------------------ページナビゲーション / ページネーション ------------ */

.nav-links .page-numbers{
	width:40px;
	height:40px;
	line-height:40px;
}

.post-navigation .nav-links {
	margin-bottom:0;
}

.pagination-wrapper {
}

.pagination-wrapper form {
	display:inline-block;
	margin-right:20px;
}

.pagination-wrapper .result-count{
	display:inline-block;
}

.pagination .nav-links {
	text-align:right;
}
/* -------------------- サイドバーsidebar ---------------------- */

.sidebar h2{
	font-size:18px;
}

#secondary .inner > div {
	background-color:#fff;
	padding:15px;
}

#secondary .inner .btn-area {
	text-align:right;
}

#secondary .inner a.btn {
font-family:sans-serif;
font-size:13px;
	border-bottom:1px solid #000;
}

#secondary .entry-title {
	margin:10px 0 24px;
	font-size:16px;
}

#secondary .entry-title a {
	color:#00102e;
}

#secondary .entry-meta {
	justify-content:space-between;
}

#secondary p {
	font-size:14px;
}

#secondary .recently-viewed-wrap {
	background-color:#fff;
	padding:15px;
	margin:20px auto;
}

#secondary .recently-viewed-wrap h2 {
	font-size:16px;
	text-align:center;
}

#secondary .recently-viewed-wrap ul {
	padding-left:0;
	list-style:none;
}

#secondary .recently-viewed-wrap ul li {
	margin-bottom:20px;
}

#secondary aside {
	background-color:#fff;
	padding:20px;
}

/* -------------------- footer ---------------------- */
#org-footer {
	background-color:#084468;
	color:#fff;
	padding-top:50px;
	padding-bottom:20px;
}
.org-name-sub {
	font-size:1rem;
}

.org-name {
	font-size:2rem;
	margin-top:0;
	font-weight:bold;
}

#org-footer .sns-icons {
	margin-bottom:30px;
}

#org-footer .sns-icons ul {
	display:flex;
	gap:40px;
	justify-content:center;
	list-style:none;
	padding:0;
}

#org-footer .sns-icons ul li {
	transition: transform 0.1s ease;
	font-size:20px;
}

#org-footer .sns-icons ul li:hover {
	transform:scale(1.1);
}

#org-footer .sns-icons a {
	color:#fff;
}

#org-footer .footer-links {
	font-size:0.9em;
}

#org-footer .footer-links ul {
	display:flex;
	flex-direction:column;
	padding:0;
	list-style:none;
}

#org-footer .footer-links ul li {
	text-align:center;
}


#org-footer .credits {
	font-size:12px;
	text-align:center;
	padding:20px;
}
.footer-widgets-grid {
	padding-bottom:0;
}

.footer-info {
	justify-content:center;
	margin-bottom:0;
}

.footer-info > div {
	flex-grow:0 !important;
}

.footer-links a {
	color:rgba(255,255,255,0.8) !important;
}

.footer-links a:hover,
.footer-links a:active {
	color:rgba(255,255,255,1) !important;
}

.org-name-wrapper a {
	color:#fff;
}

.bn-footer a img {
	border:1px solid #ccc !important;
}
@media (min-width: 1024px) {
/* scroll-x 対策 */
	.no-sidebar .entry-content .alignfull {
		margin: 20px calc(49.2% - 50vw) !important;
	}
}



/* ================================
固定エリア
================================== */
#fixed-element a {
	display:block;
	color:#fff;
}

/* ================================
お問い合わせ
================================== */
form label {
	display:block;
}

.wpcf7 ::file-selector-button {
	font-family:sans-serif;
	color: #337ab7;
	background: #f7f7f7;
	border:1px solid #337ab7;
	padding:5px 10px;
	border-radius:5px;
	margin-right:10px;
}



.form-row {
	display:flex;
	flex-wrap:wrap;
	margin-bottom:20px;
}

.form-row label {
	flex-basis:150px;
}

.form-row .ns {
	color:#cc0000;
}

.form-row input,
.form-row textarea {
	width:100%;
	max-width:400px;
}

.wpcf7-not-valid-tip {
	display:inline-block;
	background-color:#fff6f6;
	padding:2px 5px;
	font-size:0.9em;
	margin:10px;
}

.form-row h3 {
	width:100%;
}

.form-row div {
	width:100%;
	margin-bottom:20px;
}

/* ================================
プラグイン上書き
================================== */


/* ================================
ブレイクポイント
================================== */
@media (min-width: 480px) {

}

@media (min-width: 768px) {

	.gallery {
		flex-direction:row;
		flex-wrap:wrap;
	}
	.gallery-item {
		width:50%;
	}

	.sticky-news{
		width:40px;
	}

	.sticky-news .sticky-title {
 		font-size:1.2rem;
	}

	.sticky-pamphlet {	
		width:40px;
		font-size:1.2rem;
	}

	.sub-header h1 {
		/* height:240px; */
		padding:30px 10px;
	}

	/* -- 見出し -- */
	.page .entry-header {
		/* margin-bottom:80px; */
	}

	h1.entry-title.title-post {
		font-size:32px;
	}

	#org-footer .footer-links ul {
		display:block;
		text-align:center;
		line-height:3;
	}

	#org-footer .footer-links ul li{
		display:inline;
		margin:10px 20px;
	}

	#org-footer .footer-links ul li:nth-of-type(3)::after {
  content: " ";
  display: block;
  width: 100%;
}


	.nav-sub-contents-wrap.show {
		/* background-color:transparent; */
		overflow:hidden;
	}

	 .nav-sub-contents-wrap .search-wrap {
		max-width:400px;
		margin-left:auto;
	}

	.nav-sub-contents-wrap ul {
		max-width:400px;
		height:calc(100% - 90px);
	}

	#org-header .nav-main-contents li  {
		padding: 0 14px;
		font-size:18px;
	}
	#org-header .menu-item-has-children.open ul li {
		font-size:16px;
	}

	.pagination-wrapper {
		display:flex;
		justify-content:space-between;
		align-items:flex-end;
		flex-wrap:wrap;
	}

	.posts-layout .hentry {
		flex-basis:50%;
	}

	/* single */
	.details-wrapper {
		flex-direction:row;
	}

	.details-wrapper .overview,
	.details-wrapper .map {
		flex:1;
		flex-basis:calc(50% - 20px);
	}


}

@media (min-width: 1024px) {
	.mo-hide {
		display:block;
	}

	h1.page-title {
	    font-size: 48px;
	}

	h1.entry-title.title-post {
		font-size:40px;
	}


	.sub-header .subsite-title {
		/* height:240px; */
		padding:50px 10px;
	}

	.sub-header .search-area form {
		flex-direction:row;
	}

	h3.search-title{
		flex-direction:row;
	}

	.posts-layout .hentry {
		flex-basis:33.33333333%;
	}
/*
	.single .details-wrapper {
		flex-direction:row;
	}

	.single .detail.overview {
		order:1;
	}

	.single .details .map {
		order:2;
	}
*/

	.gallery-columns-2 .gallery-item {
		max-width: 50%;
	}
	.gallery-columns-3 .gallery-item {
		max-width: 33.33%;
	}
	.gallery-columns-4 .gallery-item {
		max-width: 25%;
	}
	.gallery-columns-5 .gallery-item {
		max-width: 20%;
	}
	.gallery-columns-6 .gallery-item {
		max-width: 16.66%;
	}
	.gallery-columns-7 .gallery-item {
		max-width: 14.28%;
	}
	.gallery-columns-8 .gallery-item {
		max-width: 12.5%;
	}
	.gallery-columns-9 .gallery-item {
		max-width: 11.11%;
	}
	.gallery-caption {
		display: block;
	}

}

/* Center menu vertically */
@media screen and (min-width: 1025px) {
	#mainnav > div > ul,
	.header-wrap .fw-menu-container > .row,
	.header-wrap .container > .row {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-align-items: center;
			-ms-flex-align: center;
				align-items: center;
	}
	.main-header #mainnav > div > ul,
	.bottom-header-row #mainnav > div > ul {
		align-items: initial;
	}		
	#mainnav > div > ul {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.menu-centered #mainnav > div > ul {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center;
	}
	.menu-centered .fw-menu-container > .row {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;			
	}		
}
/* Mobile slider */
.mobile-slide {
	display: none;
}
.amahashi-hero-area {
	overflow: hidden;
}

@media (min-width: 1320px) {
	.sub-header subsite-title {
		/* height:300px; */
	}
}

@media (min-width: 1920px) {
	.sub-header h1 img {
		object-fit:contain;
	}
}

