@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/
:root {
  --font-optima: Optima, Segoe, Segoe UI, Candara, Calibri, Arial, sans-serif;
  --font-tahoma: Tahoma, Verdana, Segoe, sans-serif;
}
:root:lang(ar) {
  --font-optima: "SF Pro AR", "SF Pro Gulf", "SF Pro Text", "SF Pro Icons", 'Simplified Arabic', "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-tahoma: "SF Pro AR", "SF Pro Gulf", "SF Pro Text", "SF Pro Icons", 'Simplified Arabic', "Helvetica Neue", Helvetica, Arial, sans-serif;
}

img {
    vertical-align: bottom;
}
html
{
	font-size: 62.5%;
}
body
{
	font-family: var(--font-tahoma);
	background-image: url("assets/images/common/cherry_blossoms_L.png"), url("assets/images/common/cherry_blossoms_R.png"), url("assets/images/common/bg_footer.png"), url(https://paulonia.tokyo/cms/wp-content/uploads/2022/12/bg.jpg) !important;
	background-position: left -100px bottom +250px, right -100px bottom +300px, center bottom, left top !important;
	background-repeat: no-repeat, no-repeat, no-repeat, repeat !important;
	background-size: 400px auto, 500px auto, 100%, 100% !important;
	background-attachment: fixed, fixed, scroll, scroll !important;
}

.header-container-in.hlt-top-menu .logo-header img {
    max-height: 90px;
}
.header-container-in.hlt-top-menu .logo-header {
    max-height: 90px;
}
.header-container-in.hlt-top-menu {
    padding: 10px 0;
}
.navi-in>ul {
	font-family: var(--font-optima);
	justify-content:flex-start;
	text-align: left;
}
.navi-in>ul li {
    height: auto;
    line-height: 1.5;
}
.navi-in a {
	font-size: 2.2rem;
	font-weight: 700;
}
.breadcrumb.sbp-main-before, .breadcrumb.sbp-footer-before, .breadcrumb.pbp-main-before, .breadcrumb.pbp-footer-before {
    background-color: transparent;
}
.main
{
	border-radius: 10px;
	overflow: hidden;
	padding: 40px 30px 20px;
}
.home .content
{
	margin-top: 0;
}



.sidebar
{
	background-color: transparent;
	padding: 0;
}
#footer
{
    background-color: rgba(255, 255,255,.65);
    padding: 50px 0 0 0;
    margin-top: 200px;
}
.footer-bottom {
    margin: 0;
	padding: 10px 15px;
    font-size: 1.5rem;
}
.navi-footer-in {
    display: flex;
    text-align: left;
}
.navi-footer-in > div {
    width: 20%;
    max-width: 150px;
}
.menu-footer {
    list-style: none;
	padding: 0;
}
.menu-footer a {
	color: #000;
    margin-bottom: 6px;
    line-height: 1.5;
}

.navi-in>ul .sub-menu {
	background-color: rgba(255,255,255,.9) !important;
    padding: 10px 0;
}
.navi-in>ul .sub-menu a {
    font-size: 1.8rem;
    padding: 4px 15px;
}
.navi-in>ul .sub-menu a:hover {
	background-color: #ede85c !important;
}

/* ----------------------------------
  Front Page
---------------------------------- */
.front-header
{
	background-image: url("assets/images/kv/front.webp");
	background-repeat: no-repeat;
	background-position:center;
	background-size: cover;
	height: 650px;
	width: 100%;
	position: relative;
	margin-bottom: 50px;
}
.front-header > div
{
	content: "";
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.4);
	position: absolute;
	left: 0;
	top: 0;
    display: flex;
    align-items: center;
	padding: 15px;
}
.front-header-mission
{
	color: #fff;
	font-family: var(--font-optima);
}
.front-header-title
{
	color: #fff;
    font-size: 3.4rem;
    line-height: 1.5;
    margin-bottom: 60px;
}

.front-header-form-search
{
	color: #fff;
	font-family: Helvetica, "sans-serif";
	font-size: 1.5rem;
	font-weight: 300;
	margin: 0;
}
form.search-form {
    display: flex;
    width: 100%;
    max-width: 700px;
    position: relative;
}
.search form.search-form {
	margin-bottom: 60px;
}
.search-form-select {
	background-color: #ebebeb;
	border-radius: 0;
    border-right: none;
	font-size: 1.6rem;
    width: 22%;
}
#search-form-category {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}


.search-form-select-wrap {
    position: relative;
	width: 22%;
	border: none!important;
	padding: 0!important;
	margin-left: 0!important;
}

.search-form-select-wrap:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 12px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    transform: rotate(135deg);
    pointer-events: none;
}

.search-form-select-wrap select {
    height: 42px;
    width: 100%;
    padding: 0 8px;
    border: none;
    box-shadow: 0 0 0 1px #ccc inset;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
}

.search-form-select-wrap select::-ms-expand {
    display: none;
}

.search-form-select-wrap select:focus {
    outline: 0;
    box-shadow: 0 0 0 2px rgb(33, 150, 243) inset;
}

input.search-form-keyword {
    width: 56%;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	font-size: 1.6rem;
}
.search-form-submit {
    position: absolute;
    right: 10px;
    border: none;
    background-color: transparent;
    font-size: 1.3em;
    color: #999;
    transform: translateY(50%);
}

.category-articles-title,
.home .article h2.front-about-title
{
	background-color: transparent !important;
	margin: 0 0 15px !important;
    padding: 0 !important;
    color: #E35A04;
	font-family: var(--font-optima);
    font-size: 2.8rem !important;
    font-weight: 700;
}
.home .article h2.front-about-title
{
    color: #028760;
}
.front-category-list {
    margin-bottom: 60px;
}
.front-category-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}
.front-category-list li {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: calc(33.3333% - 10px);
    margin: 5px !important;
	box-shadow: 0px 2px 3px rgb(0 0 0 / 15%);
	border-radius: 8px;
	overflow: hidden;
}
.front-category-list a {
	background-color: rgba(0,0,0,.35);
    color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: var(--font-optima);
	font-size: 2.2rem;
	transition-duration: .4s;
    text-decoration: none;
    text-align: center;
    width: 100%;
    aspect-ratio: 10/3.4;
	padding: 10px;
	height: 100%;
}

.front-category-list a:hover {
	background-color: rgba(0,0,0,0);
}





/* パンくずアイコン非表示 */
.breadcrumb .fa-home,
.breadcrumb .fa-folder,
.breadcrumb .fa-file-o,
.breadcrumb .fa-file {
	display: none;
}



/* ----------------------------------
  Pages
---------------------------------- */
.col1-page-wrap {
    width: 1080px;
    margin: 0 auto;
    padding: 0 15px;
}
.no-sidebar .main {
    margin: 0 auto;
    background-color: transparent;
    width: 1080px;
}

.page .wp-block-media-text .wp-block-media-text__content {
    padding: 0 0 0 8%;

}
.page .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding: 0 8% 0 0;
}

/*834px以下*/
@media screen and (max-width: 834px){
	.col1-page-wrap {
		width: 100%;
		margin: auto;
	}
}

/* ----------------------------------
  Categories
---------------------------------- */
.cat-header {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 350px;
	position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.cat-header::after {
	content: '';
	background-color: rgba(0,0,0,.3);
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}
.cat-header p
{
	color: #FFF;
	font-family: var(--font-optima);
	font-size: 5.5rem;
	font-weight: 700;
	margin: 0;
	position: relative;
	z-index: 1;
}
.category-header h1 {
	font-family: var(--font-optima);
    font-size: 3.4rem;
    text-align: center;
    margin-bottom: 30px;
}
.region-contents-title
{
	background: none !important;
	font-family: var(--font-optima);
	font-size: 3rem !important;
	text-align: center;
	margin: 70px 0 40px !important;
	padding: 0 !important;
}
.btn-detailed_info {
	margin-bottom: 70px;
}
.btn-detailed_info a {
    background-color: #fff;
    border: 2px solid #333;
    border-radius: 100vh;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    line-height: 1;
    margin: 0 auto 40px;
    padding: 15px 10px;
    width: 90%;
    max-width: 350px;
    text-align: center;
    text-decoration: none;
	position: relative;
	transition: 0.5s;
}

.btn-detailed_info a::before {
	content: '';
	width: 7px;
	height: 7px;
	border-top: 2px solid #333;
	border-right: 2px solid #333;
	transform: rotate(45deg);
	margin-right: 1em;
}
.btn-detailed_info a:hover {
	background: #eee;
	color: #333;
}
.category-content-hr
{
    border: 1px solid #bbb;
    border-bottom: none;
}
.category-articles
{
	margin-bottom: 60px;
}


.region-low_categoies
{
	margin: 0 0 70px;
}
.region-low_categoies .splide__list
{
	list-style: none;
	padding: 0;
	margin: 0 -15px 0 0 !important;
}
.region-low_categoies .splide__list li
{
	margin-left: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.region-low_categoies a
{
	text-decoration: none;
	display: block;
	text-align: center;
	color: #222;
}
.region-low_categoies img
{
	width: 100%;
	height: auto;
	aspect-ratio: 4/3;
	object-fit: cover;
}
.region-low_categoies figcaption
{
	font-size: 1.4rem;
}
.splide__pagination {
    margin: 15px 0 0 !important;
    padding: 0;
}
.splide__pagination__page {
    border-radius: 50%;
    background-color: #aaa;
    border: 1px solid #aaa;
    width: 8px;
    height: 8px;
	cursor: pointer;
}
.splide__pagination__page.is-active
{
    background-color: #666;
    border: 1px solid #666;
}



.list,
.related-entries .related-list
{
	display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.list a,
.related-entries .related-list a
{
	background-color: #fff;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0px 2px 3px rgb(0 0 0 / 15%);
	width: auto !important;
	margin: 0 !important;
}
.ect-vertical-card .entry-card-wrap .entry-card-thumb,
.rect-vertical-card .related-entry-card-thumb
{
	margin: -7px -7px 0 -7px;
    width: calc(100% + 14px);
	margin-bottom: 10px;
}
.list figure,
.rect-vertical-card .related-entry-card-thumb
{
	overflow: hidden;
}

.list img,
.rect-vertical-card .related-entry-card-thumb img
{
    aspect-ratio: 4/3;
	object-fit: cover;
	vertical-align: bottom;
	transition-duration: .4s;
}
.list figure:hover img,
.rect-vertical-card .related-entry-card-thumb:hover img
{
	transform: scale(1.12);
}

.list .entry-card-title,
.rect-vertical-card .related-entry-card-title
{
	background-color: transparent;
	border: none;
	font-family: var(--font-optima);
	margin: 0 0 10px;
	padding: 0;
	font-size: 1.7rem;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	line-height: 1.25;
}
.list .entry-card-content,
.rect-vertical-card .related-entry-card-content
{
    position: relative;
	padding: 25px 0 0 !important;
}
/*
.category-content+.list {
    display: none;
}
*/
.entry-halal-icons
{
	list-style: none;
	padding: 0 !important;
	margin: 0 -5px !important;
	flex-wrap: wrap;
	display: flex;
	align-items: center;
}
.entry-halal-icons li
{
	line-height: 1;
	padding: 5px;
	margin: 0 !important;
	width: calc(100% / 6);
}
.entry-halal-icons img
{
	aspect-ratio: 1/1;
	vertical-align: bottom;
}

.entry-card-meta,
.related-entry-card-meta
{
    top: 0;
	left: 0;
	bottom: inherit;
	right: inherit;
}
.entry-card-categorys,
.related-entry-card-categorys
{
	text-align: left;
}
.entry-card-meta .entry-category,
.related-entry-card-meta .entry-category
{
	color: #3E3E3E;
}



.faq-list dt,
.faq-list dd {
    position: relative;
    margin: 0;
    padding: 1em 2em 1em 3.3em;
}

.faq-list dt {
    font-weight: 600;
    display: grid;
    align-content: center;
}

.faq-list dd + dt {
    margin-top: 1em;
}

.faq-list dt::before,
.faq-list dd::before {
    display: inline-block;
    position: absolute;
    width: 40px;
    height: 40px;
    left: 0;
    border-radius: 50%;
    font-weight: 600;
    font-size: 1.1em;
    line-height: 40px;
    text-align: center;
	top: .5em;
}

.faq-list dt::before {
    border: 2px solid #75bbff;
    color: #75bbff;
    content: 'Q';
}

.faq-list dd::before {
    border: 2px solid #ff8d8d;
    color: #ff8d8d;
    content: 'A';
}

@media screen and (max-width: 834px){
	.cat-header p
	{
		font-size: 3.5rem;
	}
	.region-low_categoies
	{
		margin: 0 0 50px;
	}
}
/* ----------------------------------
  Articles
---------------------------------- */
.eye-catch-wrap {
    margin: -40px -30px 0;
}
.eye-catch-image
{
	aspect-ratio: 3/2;
    object-fit: cover;
}
.eye-catch {
    margin-bottom: 50px;
}

.cat-link
{
	border-radius: calc((1em + 15px) / 2);
	line-height: 1;
	padding: 7px 15px;
	transition-duration: .3s;
	font-size: 1.5rem;
	border: none;
}
.cat-area
{
	background-color: #028760;
}
.cat-genre
{
	background-color: #E36B04;
}


.entry-title
{
	font-family: var(--font-optima);
	font-weight: 700;
	font-size: 3.4rem;
	padding: 0;
	margin: 0 0 50px;
}
.entry-content h2 {
    position: relative;
    padding: 0 0 20px;
    margin: 60px 0;
    font-size: 3rem;
    text-align: center;
    background-color: transparent;
}
.entry-content h2::after {
  content: '';
  position: absolute;
  bottom: -5px;
  display: inline-block;
  width: 60px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #B44C97;
  border-radius: 2px;
}
.entry-content h3 {
    padding: 0 0 10px;
    font-size: 2.6rem;
    background-image: repeating-linear-gradient(90deg, #B44C97 0, #B44C97 2px, rgba(0,0,0,0) 2px, rgba(0,0,0,0) 4px);
    background-size: 4px 4px;
    background-repeat: repeat-x;
    background-position: center bottom;
    border: none;
    line-height: 1.5;
    margin: 50px 0 30px;
}

.entry-content h4
{
	border: none;
    padding: 10px 20px;
    border-left: 4px solid #B44C97;
    font-size: 2.1rem;
}
.wp-element-caption
{
	color: #555;
	font-size: 1.5rem;
}



.related-entry-heading
{
	font-family: var(--font-optima);
}

@media screen and (max-width: 834px){
	/* ----------------------------------
	  Articles
	---------------------------------- */
	.eye-catch {
		margin-bottom: 40px;
	}
	.entry-title
	{
		font-size: 2.7rem;
		margin: 0 0 40px;
	}
	.entry-content h2 {
		margin: 50px 0 30px;
		font-size: 2.3rem;
	}
	.entry-content h3 {
		padding: 0 0 10px;
		font-size: 2rem;
		margin: 40px 0 20px;
	}

	.single .article h4
	{
		padding: 5px 15px;
		font-size: 1.7rem;
	}
	.rect-vertical-card .related-list {
		margin: 30px -7px;
	}
	.rect-vertical-card-4 .related-entry-card-wrap {
		width: calc(50% - 14px);
		margin: 0 7px;
	}

}

.tour-details
{
	margin-bottom: 50px;
}
.plan-list
{
	display: flex;
	flex-wrap: wrap;
}
.plan-list dt,
.plan-list dd
{
	line-height: 1.4;
	padding: 6px 10px;
}
.plan-list dt
{
	width: 30%;
	font-weight: 600;
}
.plan-list dd
{
	width: 70%;
	margin: 0;
}


/* ----------------------------------
  About Page
---------------------------------- */
.about .content-in.wrap {
    width: 100%;
}
.about .main {
    width: 100%;
    padding: 0 !important;
    border-radius: inherit;
}
.about .article-header {
    height: calc(100vh - 110px);
    height: calc(100dvh - 110px);
    display: flex;
    justify-content: center;
    align-items: center;
	padding: 15px;
}
.about-catch {
    color: #fff;
    text-align: center;
    font-size: 3rem;
    font-weight: 600;
}
.about .entry-title {
    font-size: 5rem;
    letter-spacing: .07em;
    line-height: 1;
    margin: 0 0 15px;
}
.about-business-subtitle
{
    line-height: 1;
    margin: 0 0 10px !important;
    color: #666666;
    font-weight: 600;
}
.about-business-title {
	margin-bottom: 60px !important;
}
.about .about-h3-business
{
    border: none;
    background: none;
    line-height: 1.4;
    font-size: 2.4rem;
    margin: 0 0 20px;
    padding: 0;
}
.about .about-h3-business+p,
.about .about-h3-business+p+p
{
	line-height: 1.5;
	font-size: 1.5rem;
}

@media screen and (min-width: 835px){

	.sec-about-strength-wrap {
		position: relative;
	}
	.about-strength-title {
		background: none;
		color: #fff !important;
		font-size: 4rem !important;
		font-family: var(--font-optima);
		position: absolute!important;
		left: 50px;
		top: 50px;
		margin: 0 !important;
		padding: 0 !important;
	}
	.rtl .about-strength-title {
		left:auto;
		top: 50px;
		right: 50px;
	}
	.about-strength-title::after {
		background: none !important;
	}
}
.about-strength-contents
{
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
    color: #fff;
    height: 50dvh;
    min-height: 400px;
    max-height: 550px;
    margin-bottom: 1px;
}
.about-strength-01
{
	background-image: url("assets/images/about/strength_01.webp");
}
.about-strength-02
{
	background-image: url("assets/images/about/strength_02.webp");
}
.about-strength-03
{
	background-image: url("assets/images/about/strength_03.webp");
}
.about-strength-contents-inner
{
	background-color: rgba(0,0,0,.3);
	height: 100%;
    display: flex;
    align-items: center;
}
.about-strength-contents-inner > div {
    width: 40%;
    max-width: 600px;
    margin-left: 50%;
}
.rtl .about-strength-contents-inner > div {
    margin-left: 0;
	margin-right: 50%;
}
.about-strength-contents h3
{
	background: none;
	margin: 0 0 30px;
	padding: 0;
}

@media screen and (max-width: 834px){

	.about-strength-contents
	{
			background-attachment: scroll;

		background-size: cover;
		height: 70vh;
		min-height: inherit;
		max-height: inherit;
	}
	.about-strength-contents-inner > div {
		width: 85%;
		max-width: auto;
		margin: 0 auto;
	}
}




.select_region-title
{
	background-color: transparent !important;
	margin: 70px 0 15px !important;
    padding: 0 !important;
    color: #E35A04;
	font-family: var(--font-optima);
    font-size: 2.8rem !important;
    font-weight: 700;
	text-align: center;
	border-bottom: 2px solid #E35A04;
}





/* Profile */
.profile-container
{
	margin-bottom: 30px;
}

.profile-container,
.profile-detail{
    background-color: #fff;
	border-radius: 8px;
	box-shadow: 0px 2px 3px rgb(0 0 0 / 15%);
	overflow: hidden;
    padding: 30px;
}

.profile-container-col2
{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 30px;
	row-gap: 30px;
}
.profile-ceo-detail {
    display: flex;
    justify-content: space-between;
}
.profile-ceo-detail > div:first-of-type {
	width: 150px;
}
.profile-ceo-detail > div:last-of-type {
	width: calc(100% - 180px);
}
.profile-ceo-detail,
.profile-detail ,
.profile-ceo-message{
	font-size: 1.6rem;
	line-height: 1.6;
}
.profile-ceo hr
{
	margin: 25px 0;
}
.profile-face {
    text-align: center;
}
.profile-face img {
    border-radius: 50%;
    border: 1px solid #ddd;
    width: 150px;
}
.account_name {
    background: none !important;
	font-family: var(--font-optima);
    font-size: 1.8rem !important;
    line-height: 1 !important;
    text-align: center;
    padding: 0 !important;
    margin: 20px 0 30px !important;
}
.profile-ceo-detail .account_name {
	text-align: left;
	margin: 0 0 10px !important;
}
.rtl .profile-ceo-detail .account_name {
	text-align: right;
}
.account_title {
    margin: 0 0 5px !important;
    font-size: 1.5rem;
}
.profile-ceo-message h4 {
    font-size: 1.6rem;
    border: none;
    padding: 0;
    line-height: 1;
    margin: 0 0 15px;
}
/*834px以下*/
@media screen and (max-width: 834px){
	.about .col1-page-wrap {
		width: 100%;
		margin: auto;
	}
	.about .article-header {
		height: calc(100vh - 80px);
		height: calc(100dvh - 80px);
	}
	.about-catch {
		font-size: 2.2rem;
	}
	.about .entry-title {
		font-size: 3.6rem;
	}
	.page .wp-block-media-text .wp-block-media-text__content {
		padding: 0;

	}
	.page .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
		padding: 0;
	}

	.about-business-subtitle {
		margin: 15px 0 10px !important;
	}

	
	
	.profile-container,
	.profile-detail {
		padding: 15px;
	}
	.profile-ceo-detail {
		display: block;
	}
	.profile-ceo-detail > div:first-of-type {
		width: auto;
	}
	.profile-ceo-detail > div:last-of-type {
		width: auto;
	}
	.profile-ceo-detail .account_name {
		text-align: center;
		margin: 0 0 30px !important;
	}
	.account_title {
		text-align: center;
		margin: 20px 0 5px !important;
	}

	.profile-container-col2
	{
		grid-template-columns: repeat(1, 1fr);
	}
}



/* ----------------------------------
  Travel Plan Page
---------------------------------- */
.travel-plan .main {
    width: 100%;
    padding: 0 !important;
    border-radius: inherit;
}
.travel-plan .content-in.wrap {
    width: 100%;
}
.travel-plan .main {
    width: 100%;
    padding: 0;
    border-radius: inherit;
}
.travel-plan .article-header {
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
    height: calc(100vh - 110px);
    height: calc(100dvh - 110px);
    display: flex;
    justify-content: center;
    align-items: center;
	padding: 15px 0;
}
.travelplan-list-catch {
    width: 100%;
    text-align: center;
    background-color: rgba(255,255,255,.4);
    padding: 15px 0;
}
.travel-plan .entry-title {
    font-size: 5rem;
    letter-spacing: .07em;
    line-height: 1;
    margin: 0;
}
.travelplan-list-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 30px;
    row-gap: 30px;
}
.travelplan-list-container a {
	background-color: #fff;
	color: #222;
	text-decoration: none;
}
.travelplan-list-img
{
	overflow: hidden;
}
.travelplan-list-img img
{
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: 4/3;
	transition-duration: .4s;
}
.travelplan-list-container a:hover img {
	transform: scale(1.15);
}

.travelplan-list-data
{
	background-color: #fff;
	padding: 15px;
}
.travelplan-list-location
{
    color: #E35A20;
	font-family: var(--font-optima);
	font-weight: 600;
	margin: 0 0 5px !important;
}
.travelplan-list-title h3
{
	font-family: var(--font-optima);
	font-size: 2rem;
	margin: 0;
	padding: 0;
	background: none;
}
.travel_plan-title {
    margin: 0 0 10px !important;
    line-height: 1;
    padding: 5px 10px;
    background-color: #E35A20;
    display: inline-block;
    color: #fff;
}
@media screen and (max-width: 834px){
	.travel-plan .article-header {
		background-attachment: scroll;

		height: calc(100vh - 80px);
		height: calc(100dvh - 80px);
	}
	.travel-plan .entry-title {
		font-size: 3.4rem;
	}
	.travelplan-list-container {
		grid-template-columns: repeat(1, 1fr);
	}
}



/* ----------------------------------
  Side Contents
---------------------------------- */
.side-banner > *
{
	margin-bottom: 20px;
}
.side-banner > a
{
	display: block;
}
.side-banner > a img
{
	border-radius: 5px;
	box-shadow: 0px 1px 2px rgb(0 0 0 / 20%);
}
.side-ranking {
    margin-bottom: 40px;
	background-color: #FCFCFC;
}
.side-ranking:last-of-type {
    margin-bottom: 30px;
}
.side-ranking-title
{
	background-image: url("assets/images/common/hanabisi4.gif");
	background-position: center;
	background-repeat: repeat;
	background-size: 40px auto;
	position: relative;
    margin-bottom: 0px;
}
.side-ranking-subtitle
{
	background-color: #E6B422;
	border-radius: calc(1.4rem / 2 + 5px);
	color: #fff;
	font-family: var(--font-optima);
	font-size: 1.4rem;
	font-weight: 700;
	position: absolute;
	top: calc((1.4rem / 2 + 5px + 2px) * -1);
	left: 50%;
	transform: translateX(-50%);
	line-height: 1;
	padding: 5px 15px;
    white-space: nowrap;
}
.side-ranking-title h2 {
    background-color: transparent !important;
	font-family: var(--font-optima);
	font-size: 2rem;
    padding: 0;
    margin: 0;
    text-align: center;
    line-height: 50px;
}
.side-ranking-list {
    padding: 10px;
}
.side-ranking-article {
    margin-bottom: 10px;
}
.side-ranking-article:last-of-type {
    margin-bottom: 0px;
}
.side-ranking-article a {
    display: flex;
    justify-content: space-between;
    text-decoration: none;
}
.side-ranking-article-img {
    width: 25%;
	overflow: hidden;
}
.side-ranking-article-img img {
    width: 100%;
    object-fit: cover;
	aspect-ratio: 1/1;
	transition-duration: .4s;
}
.side-ranking-article a:hover img
{
	transform: scale(1.2);
}
.side-ranking-article-data {
    width: 70%;
}
.side-rank {
    color: #000;
	background-color: #EDD285;
	display: inline-block;
	padding: 4px 10px;
	line-height: 1;
	margin-bottom: 5px;
	font-size: 1.4rem;
	vertical-align: bottom;
}
.side-ranking-article-title h3 {
	background-color: transparent;
	color: #222;
	font-family: var(--font-optima);
	font-size: 1.5rem;
	margin: 0;
	padding: 0;
	line-height: 1.4;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}


.side-travel-plan {
    margin-bottom: 40px;
}
.side-travel-plan-title
{
	background-image: url("assets/images/common/arare2_w.gif");
	background-position: center;
	background-repeat: repeat;
	background-size: 40px auto;
    margin-bottom: 0px;
}
.side-travel-plan-title h2 {
    background-color: transparent !important;
	font-family: var(--font-optima);
	font-size: 2rem;
    padding: 0;
    margin: 0;
    text-align: center;
    line-height: 50px;
}
.side-travel-plan-article a {
    display: flex;
    justify-content: space-between;
    text-decoration: none;
    padding: 10px;
    background-color: #fff;
    border-radius: 5px;
    margin: 10px 0;
}
.side-travel-plan-article-img {
    width: 25%;
	overflow: hidden;
}
.side-travel-plan-article-img img {
    width: 100%;
    object-fit: cover;
	aspect-ratio: 1/1;
	transition-duration: .4s;
}
.side-travel-plan-article a:hover img
{
	transform: scale(1.2);
}
.side-travel-plan-article-data {
    width: 70%;
}
.side-travel-plan-article-title h3 {
	background-color: transparent;
	color: #222;
	font-family: var(--font-optima);
	font-size: 1.5rem;
	margin: 0;
	padding: 0;
	line-height: 1.4;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}
.side-travel-plan-article-location {
	font-family: var(--font-optima);
    font-size: 1.5rem;
	font-weight: 600;
    color: #E35A20;
    margin-bottom: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}




.mb-0
{
	margin-bottom: 0 !important;
}
.btn-default
{
	text-align: center;
}
.btn-default a
{
	display: flex;
    justify-content: center;
    align-items: center;
	text-align: center;
	text-decoration: none;
	width: 90%;
	max-width: 400px;
	margin: auto;
	padding: 1rem 4rem 1rem 3rem;
	font-weight: bold;
	background: #27acd9;
	color: #fff;
	border-radius: 100vh;
	position: relative;
	transition: 0.5s;
}
.btn-default a::before {
	content: '';
	margin-right: 1rem;
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}
.btn-default a:hover {
	background: #44c6f2;
	color: #fff;
}


input:read-only
{
	background-color: #ddd;
}




/* Map */
#map_japan .prefecture-name {
	fill: #444;
}
#map_japan .bg-prefecture-name {
	fill: #fff;
}
#map_japan .link-prefecture-name:hover .prefecture-name {
    fill: #e60033;
}
#map_japan .area-tohoku{
	fill: #f8d939;
}

#map_japan .area {
	stroke: #fff;
	stroke-width: .6px;
}
#map_japan .area:hover {
	opacity: .7;
}

#map_japan a.rea, .area-border {
	fill-rule: evenodd;
}

#map_japan .area-kanto {
	fill: #00caff;
}

#map_japan .area-hokkaido {
	fill: #3eb370;
}

#map_japan .area-chubu {
	fill: #c067d6;
}

#map_japan .area-kyushu {
	fill: #d6e20e;
}

#map_japan .area-kansai {
	fill: #ff9fd4;
}

#map_japan .area-shikoku {
	fill: #e95711;
}

#map_japan .area-okinawa {
	fill: #f29600;
}

#map_japan .area-chugoku {
	fill: #97c932;
}

#map_japan .line {
	stroke: #333;
	stroke-width: .5px;
}

#map_japan .line, .area-border {
	fill: none;
}

#map_japan .area-border {
	stroke: #040000;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: .48px;
}


.btn-seemore
{
	text-align: center;
	margin-top: 20px;
}
.btn-seemore a {
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    padding: 0.7rem 2rem;
    font-weight: 500;
    border: 1px solid #27acd9;
    color: #27acd9;
    border-radius: 100vh;
    transition: 0.5s;
    line-height: 1;
}
.btn-seemore a:hover {
	color: #fff;
	background: #27acd9;
}



/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
	#navi .navi-in>.menu-mobile li {
		width: auto;
	}
}

/*834px以下*/
@media screen and (max-width: 834px){
	body
	{
		background-image: url("assets/images/common/cherry_blossoms_L.png"), url("assets/images/common/cherry_blossoms_R.png"), url("assets/images/common/bg_footer.png"), url(https://paulonia.tokyo/cms/wp-content/uploads/2022/12/bg.jpg) !important;
		background-position: left -50px bottom +125px, right -50px bottom +150px, center bottom -40px, left top !important;
		background-repeat: no-repeat, no-repeat, no-repeat, repeat !important;
		background-size: 200px auto, 250px auto, 130%, 150% !important;
	}
	#footer
	{
		background-color: rgba(255, 255,255,.3);
		padding: 40px 0 0 0;
		margin-top: 100px;
	}
	
	.wpml-ls-legacy-list-horizontal.wpml-ls-statics-footer {
		background-color: rgba(255,255,255,.8);
		margin-bottom: 0px !important;
	}
	
	#navi .navi-in>ul>li>a {
		padding: 0 1em;
	}
	.navi-footer-in {
		flex-wrap: wrap;
	}

	.navi-footer-in > div {
		width: 50%;
		max-width: none;
		margin-bottom: 2em;
	}

	
	.header-container-in.hlt-top-menu .logo-header img {
		max-height: 60px;
	}
	.header-container-in.hlt-top-menu .logo-header {
		max-height: 60px;
	}
	
	.front-category-list {
		margin: 0 -15px 60px;
	}
	.front-category-list li {
		width: calc(33.333333% - 2px);
		box-sizing: inherit;
		border-radius: inherit;
		margin: 1px !important;
	}
	.front-category-list a {
		font-size: 2rem;
		line-height: 1.2;
	}
	
	#navi .navi-in>.menu-mobile {
		justify-content: center;
	}
	.main
	{
		border-radius: 0;
		padding: 40px 16px !important;
	}
	
	.list,
	.related-entries .related-list
	{
		grid-template-columns: repeat(2, 1fr);
		gap: 15px;
	}

	
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
