/*
Theme Name: Twenty Twenty-Five Child
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Template: twentytwentyfive
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Tags: one-column,custom-colors,custom-menu,custom-logo,editor-style,featured-images,full-site-editing,block-patterns,rtl-language-support,sticky-post,threaded-comments,translation-ready,wide-blocks,block-styles,style-variations,accessibility-ready,blog,portfolio,news
Version: 1.2.1750740584
Updated: 2025-06-24 13:49:44

*/
html {scroll-behavior: smooth;}
a.anchor{margin-top: -2.5rem;}
h1.wp-block-heading.has-text-align-left {
  display: none;
}
h1{padding: 20px!important;font-size: 30px!important;}
.shop-closed{
	text-align:center;
	background-color: #ddd;
    font-size: 2rem;
    font-weight: bold;
}
  .text-container {
    position: relative;
    max-height: 6em; /* 表示する高さ（約3行分） */
    overflow: hidden;
    transition: max-height 0.5s ease;
  }

  .text-container.expanded {
    max-height: none;
  }

  .more-button {
    display: inline-block;
    margin-top: 0.5em;
    color: #007bff;
    cursor: pointer;
    text-decoration: underline;
  }
.heading-21 {
    position: relative;
    padding: .5em .7em .4em;
    border-bottom: 3px solid #2589d0;
    color: #333333;
}

.heading-21::before,
.heading-21::after {
    position: absolute;
    left: 30px;
    bottom: -15px;
    width: 30px;
    height: 15px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
}

.heading-21::before {
    background-color: #2589d0;
}

.heading-21::after {
    bottom: -11px;
    background-color: #fff;
}
/*検索フォーム*/
.search-form-1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
    border: 2px solid #2589d0;
    border-radius: 3px;
}

.search-form-1 input {
    width: 250px;
    height: 45px;
    padding: 5px 15px;
    border: none;
    box-sizing: border-box;
    font-size: 1em;
    outline: none;
}

.search-form-1 input::placeholder{
    color: #777777;
}

.search-form-1 button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 45px;
    border: none;
    background-color: #2589d0;
    cursor: pointer;
}

.search-form-1 button::after {
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.031 16.6168L22.3137 20.8995L20.8995 22.3137L16.6168 18.031C15.0769 19.263 13.124 20 11 20C6.032 20 2 15.968 2 11C2 6.032 6.032 2 11 2C15.968 2 20 6.032 20 11C20 13.124 19.263 15.0769 18.031 16.6168ZM16.0247 15.8748C17.2475 14.6146 18 12.8956 18 11C18 7.1325 14.8675 4 11 4C7.1325 4 4 7.1325 4 11C4 14.8675 7.1325 18 11 18C12.8956 18 14.6146 17.2475 15.8748 16.0247L16.0247 15.8748Z' fill='%23fff'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    content: '';
}

/* 作品見出し */
.heading-41 {
    display: flex;
    align-items: center;
    padding: .5em .7em;
    background-color: #f2f2f2;
    color: #333333;
}
.works-image{
	margin: 0; padding: 5px; font-size: 12px; word-break: break-all;
}
.works-image a{
    display: grid;
    text-align: center;
    font-size: 12px;
}
.works-image img{
	margin: auto;
}


.heading-41::before {
    display: inline-block;
    width: 5px;
    height: 1.5em;
    margin-right: .5em;
    background-color: #2589d0;
    content: '';
}
.heading-41-p{font-size: 18px;padding: 0 38px;}
 
/* プロフィール */
.profile-area {
    margin: 0.5rem;
    padding: 1rem;
    border: 2px dashed #aaa;
    background-color: #f8f9fa;
	font-size: 15px;
}
.profile-box-margin{
	margin-right: -55px!important;
    margin-bottom: -20px!important;
}
table.profile {
    width: 100%;
}
img.profile-img{width: 147px;}

/* 引用 */
.cp_quote {
    margin: 0.5rem;
    padding: 1rem;
    border: 2px dashed #aaa;
    background-color: #faebd7;
	font-size: 15px;
}

.cp_quote p {
    line-height: 1.5;
}
.cp_quote_sns {
    margin: 0.5rem;
    padding: 1rem;
    border: 2px dashed #aaa;
	background-color: #ccffef;
	font-size: 18px;
}
.cp_quote_type {
    margin: 0.5rem;
    padding: 1rem;
    border: 2px dashed #aaa;
    background-color: #CDE7F3;
}

.acf-tax-button {
    display: inline-block;
    margin: 0 5px 5px 0;
    padding: 6px 12px;
    background-color: #0073aa;
    color: white;
    border-radius: 4px;
    text-decoration: none;
    font-size: 14px;
    transition: background-color 0.2s ease-in-out;
}
.acf-tax-button:hover {
    background-color: #005177;
}
.works-name-link-box{
	text-align:center;
    margin-top: 10px;
}
.works-name-link {
    display: inline-block;
    margin: 0 5px 5px 0;
    padding: 6px 12px;
    background-color: #e91e63;
    color: white;
    border-radius: 4px;
    text-decoration: none;
    font-size: 1rem;
	font-weight:bold;
    transition: background-color 0.2s ease-in-out;
}
.works-name-link:hover {
    background-color: #005177;
}

.person-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.person-item {
    width: 150px;
    text-align: center;
}
.person-item img {
    border-radius: 8px;
    margin-bottom: 8px;
}
p.person-item-name{
	font-size:15px;
	margin-top: -13px;
}
/*人物ページ在籍リスト*/
.zaiseki-box{
	display: grid;
	padding: 0 0.5rem;
	grid-template-columns:repeat(auto-fit, minmax(280px, 1fr)); gap: 20px;
}
.zaiseki-list{
	border:1px solid #ddd;
	border-radius:10px;
	padding:15px;
	background-color: #f8f9fa;
}
.zaiseki-list img{
	width: 7rem;
	height:auto;
	border-radius:8px;
}
.zaiseki-taiten{
	width:20%;
	height:7em; 
	display:flex;
	align-items:center;
	justify-content:center;
	color:#ed4242;
	background:#f2f2f2;
	font-weight:bold;
	border-radius:10px;
	margin-bottom: 0.5em;
}
.zaiseki-comment{font-size:12px;}
.zaiseki-genjina{font-weight:bold;}
.zaiseki-area{font-size:12px;display: block;}
.zaiseki-comment{background-color:#e6e6fa;padding: 5px;border: 1px dashed #aaa;}

/*お店ページ*/
.shop-desc{font-size:13px;}

/*お店ページ在籍リスト*/
.zaiseki-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	padding: 0 5rem;
}
.zaiseki-card {
	box-sizing: border-box;
	padding: 10px;
	border: 1px solid #ddd;
	border-radius: 8px;
	background-color: #f8f9fa;
}
.zaiseki-img-box {
   display: flex;
   flex-wrap: wrap;
}

.zaiseki-card-inner {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}
.zaiseki-current-img {
	border-radius: 8px;
	width:147px;
}
.zaiseki-images {
    margin-left: 0.5rem;
}
.zaiseki-zaiseki-img {
	width: 111px;
	height: auto;
	border-radius: 8px;
	margin-left:3px;
}
.zaiseki-zaiseki-name {
	font-size: 12px;
	color: #555;
	margin-top: 4px;
	overflow-wrap: break-word;
    width: 170px;
}
.zaiseki-current-name{text-align:center;}
.zaiseki-current-name a {
	text-decoration: none;
    display: block;
    position: relative;
    margin: 0 auto;
    padding: 5px;
    border: none;
    border-radius: 5px;
    box-shadow: 0 7px 10px rgb(0 0 0 / 10%);
    background-color: #673ab71f;
    color: #333;
    font-size: 0.7em;
    transition: transform .3s, box-shadow .3s;
}

.zaiseki-quit-badge {
	display: inline-block;
	background: #e74c3c;
	color: white;
	padding: 2px 6px;
	font-size: 15px;
	border-radius: 4px;
	margin-bottom: 5px;
    margin-top: 5rem;
}
@media (max-width: 1700px) {
	.zaiseki-card {width: 40%;}
	.zaiseki-grid {padding: 0 1rem;}
}
@media (max-width: 1024px) {
	.zaiseki-card {width: 47%;}
	.zaiseki-grid {padding: 0 1rem;}
}
@media (max-width: 855px) {
	.zaiseki-card {width: 48%;}
	.zaiseki-grid {padding: 0 0.5rem;}
}
@media (max-width: 822px) {
	.zaiseki-card {width: 100%;}
	.zaiseki-grid {padding: 0 0.5rem;}
}
@media (max-width: 480px) {
	.zaiseki-card {width: 100%;}
	.zaiseki-grid {padding: 0 0.5rem;}
	.zaiseki-zaiseki-img {width: 90px;}
}


/*エリア別在籍リスト*/
.search-menu{margin-left:auto;margin-right:auto;}
.search-memu a{text-decoration:none;}
.seach-memu td{padding-left:5px;}
.shop-select{font-size:18px;width: 50%;}
.area-person-list{display:flex; flex-direction:column; gap:30px;}
.area-person-card{border:1px solid #ccc; padding:10px; border-radius:10px; background-color:#f8f9fa;}
.area-person-card-flex{display:flex; align-items:flex-start; gap:10px;}
.area-zaiseki-row{margin-bottom:-7px;}
.area-zaiseki-img img{width:50px; height:auto; border-radius:5px;}
h3.area-zaiseki-shop-name{margin:0 0 10px;}
h3.area-zaiseki-shop-name a {
	text-decoration: none;
    display: flex;
    align-items: center;
    position: relative;
    margin: 0 auto;
    padding: 5px;
    border: none;
    border-radius: 5px;
    box-shadow: 0 7px 10px rgb(0 0 0 / 10%);
    background-color: #673ab71f;
    color: #333;
    font-size: 1em;
    transition: transform .3s, box-shadow .3s;
}
.area-zaiseki-person{font-size:12px;}
.area-zaiseki-title{font-weight:bold;font-size:15px;}
.area-zaiseki-intro{font-size:11px;}
.area-zaiseki-quit-label{display:inline-block; padding:5px 10px; background:#c0c0c0; color:#dc143c; font-size:12px; border-radius:4px; font-weight:bold;}
.area-quit-shop-name{font-size:12px;}
.area-shop-name{font-weight:bold;font-size:12px;}
.area-zaiseki-name-furigana{display: contents;font-size:10px;}
.area-zaiseki-old-name-pc{font-size: 1rem;padding-left: 0.5rem;}
.area-zaiseki-old-name-sp{display:none;}

/*エリア検索メニュー*/
.area-explanation{font-size:13px;padding:5px;}
.search-menu a{text-decoration: none;}
.search-menu td{padding-left: 5px;}
.search-menu-btn{font-size:20px;}
.selectbox-2 {
    position: relative;
}

.selectbox-2::before,
.selectbox-2::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

.selectbox-2::before {
    right: 0;
    display: inline-block;
    width: 2.8em;
    height: 1.7em;
    border-radius: 0 3px 3px 0;
    background-color: #2589d0;
    content: '';
}

.selectbox-2::after {
    position: absolute;
    top: 50%;
    right: 1.4em;
    transform: translate(50%, -50%) rotate(45deg);
    width: 6px;
    height: 6px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: '';
}

.selectbox-2 select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    min-width: 230px;
    height: 2.5em;
    padding: .4em 3.6em .4em .8em;
    border: 2px solid #2589d0;
    border-radius: 3px;
    color: #333333;
    font-size: 0.7em;
    cursor: pointer;
	margin-bottom: 0.7rem;
}

.selectbox-2 select:focus {
    outline: 1px solid #2589d0;
}

.area-wrapper{
	margin-bottom: 1rem;
    border-bottom: 1px dashed #aaa;
    padding-bottom: 1rem;
	margin-top: 1px;
}
.area-button {
	display: inline-block;
	margin: 4px;
	padding: 6px 10px;
	border: 1px solid #ccc;
	border-radius: 8px;
	background-color:#5f9ea0;
	text-decoration: none;
	color: #fff;
	font-weight: 500;
	font-size: 17px;
	width: 18%;
	position: relative;
}
a.area-button::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 27px;
  width: 9px;
  height: 9px;
  margin: auto;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  box-sizing: border-box;
}
.area-pref{
	display: inline-block;
	margin: 4px;
	padding: 16px;
	border: 1px solid #ccc;
	border-radius: 8px;
	text-decoration: none;
	color: #fff;
	width: 50%;
	position: relative;	
}
.area-pref a{
    text-decoration: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.area-pref a::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 27px;
  width: 9px;
  height: 9px;
  margin: auto;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  box-sizing: border-box;
}
h2.area-tokyo, h2.area-kanagawa, h2.area-saitama, h2.area-chiba{background-color:orange;}
h2.area-hokkaido, h2.area-aomori, h2.area-iwate, h2.area-yamagata, h2.area-miyagi, h2.area-fukushima, h2.area-akita{background-color:#2196f3;}
h2.area-niigata, h2.area-ishikawa, h2.area-fukui, h2.area-toyama{background-color:#9acd32;}
h2.area-ibaraki, h2.area-gunma, h2.area-tochigi{background-color:#8b0000;}
h2.area-aichi, h2.area-nagano, h2.area-mie, h2h2.area-shizuoka, h2.area-yamanashi, h2.area-gifu{background-color:#eb6e9f;}
h2.area-osaka, h2.area-kyoto, h2.area-hyogo, h2.area-wakayama, h2.area-nara, h2.area-shiga{background-color:#483d8b;}
h2.area-hiroshima, h2.area-okayama, h2.area-shimane, h2.area-tottori, h2.area-yamaguchi{background-color:#fa8072;}
h2.area-ehime, h2.area-tokushima, h2.area-kagawa, h2.area-kochi{background-color:#556b2f;}
h2.area-fukuoka, h2.area-oita, h2.area-miyazaki, h2.area-saga, h2.area-nagasaki, h2.area-kumamoto, h2.area-kagoshima, h2.area-okinawa{background-color:#ff4500;}


/*人物画像リスト*/
.person-list-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 16px;
    padding: 10px;
}

@media (max-width: 480px) {
    .person-list-grid {
        grid-template-columns: repeat(2, 1fr); /* スマホ幅では必ず2列 */
    }
}

.person-card {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    text-align: center;
    transition: transform 0.2s;
}

.person-card:hover {
    transform: scale(1.03);
}

.person-card img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

.person-name {
    padding: 8px;
    font-size: 14px;
    font-weight: bold;
}
/*作品タイプ・五十音順メニュー*/
.work-type-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 20px;
}
.work-type-btn {
  padding: 6px 12px;
  border-radius: 6px;
  text-decoration: none;
  font-size: 1rem;
  background-color: #f2f2f2;
  color: #333;
}
.work-type-btn.active {
  background-color: #333;
  color: #fff;
}
.name-menu-main .work-type-buttons{display:block;text-align: center;}
.name-menu-main .work-type-btn{font-size: 24px;}
.no-btn{color:#f2f2f2;}
a.no-btn{pointer-events: none;}
.name-menu-sp .work-type-buttons {
    display: block;
    margin-bottom: 20px;
	text-align: center;
}
.name-menu-sp .work-type-btn{
    font-size: 1.1rem;
    margin-right: 0.5rem;
}

/*新着情報*/
.new-zaiseki-carousel{display: flex; overflow-x: auto; gap: 16px; padding-bottom: 10px;}
.new-zaiseki-card{width: 157px; border: 1px solid #ccc; border-radius: 8px; padding: 10px; background: #f8f9fa;text-align:center;box-shadow: 0 2px 5px rgba(0,0,0,0.1);}
.new-zaiseki-card img{width:147px; height:auto; border-radius:8px;}
.new-zaiseki-card a{display:inline-block; margin-top:8px; color:#0073aa;text-decoration: none;}
.new-zaiseki-oldname{font-size:0.7rem;}
.new-zaiseki-card p{font-size:0.8rem;text-align:left;}
.new-zaiseki-card h3{margin-top:-18px;}

.for-sp{display:none;}
.for-pc{display:block;}

/*スマホ用*/
@media screen and (max-width: 480px) {
	.for-sp{display:block;}
	.for-pc{display:none;}
    img.profile-img{width: 32.7%;}
	h1{padding: 20px;font-size: 20px;}
	h2.heading-41{font-size: 20px;}
	.heading-41-p{font-size: 11px;}
	.profile-box-margin{
	    margin-right: 0px!important;
        margin-bottom: -20px!important;
    }
    .works-image img{width: 100%;}
	.zaiseki-list{margin: 0px 4px;}
	.zaiseki-taiten{height:2em;margin-bottom: 0;}
	.area-button {width: -webkit-fill-available;}
	.shop-select{width: 100%;}
	.search-menu-btn{font-size:16px;}
	.search-menu{width:100%;}
	.area-zaiseki-old-name-sp{font-size: 1rem;padding-left: 0.5rem;display:block;background-color: beige;margin-bottom: 0.5rem;}
	.area-zaiseki-old-name-pc{display:none;}
}
/*文字検索結果*/
.search-results {
  display: grid;
  gap: 20px;
  margin-top: 20px;
}
.search-results article {
  border: 1px solid #ccc;
  padding: 15px;
  background: #fff;
}


/*ベース*/
.toggle {
	display: none;
}
.Label {		/*タイトル*/
	padding: 0.2em;
	display: block;
	color: #fff;
	background:#019ac6;
}
.Label::before{		/*タイトル横の矢印*/
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
}
.Label,
.content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.content {		/*本文*/
	height: 0;
	margin-bottom:10px;
	padding:0 20px;
	overflow: hidden;
}
.toggle:checked + .Label + .content {	/*開閉時*/
	height: auto;
	padding:20px ;
	transition: all .3s;
}
.toggle:checked + .Label::before {
	transform: rotate(-45deg) !important;
}

