/*Jimdo修正　Stockholm*/
:root{
	--color1:#ff679b;
	--color1-sub:#ffe1eb;
	--color2:#fff1f4;
	--color3:#ccc;
	--color4:#A5A06D;
	--color5:#f5f5f5;
	--color6:#FFF266;
	--color-link:#00a0ea;
	--color-link-hover:#e26563;}

html,
.body{
	font-size: 62.5%!important;
	overflow-x: hidden!important;
    position: relative;}
#content_area{ 
	margin-bottom: 50px!important;
	margin-top: 30px!important;
	padding-left: 10px!important;
	padding-right: 10px!important}
.j-hr hr{
	border: none!important;
	margin: 2rem auto;
	height: 3px;
	background-image: -webkit-repeating-linear-gradient(135deg, var(--color1),  var(--color1), 1px, transparent 2px, transparent 5px);
	background-image: repeating-linear-gradient(-45deg, var(--color1), var(--color1) 1px, transparent 2px, transparent 5px);
	background-size: 7px 7px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;}
/*table*/
table {
	width: 100%;
	border-collapse : collapse;}
table th,
table td{
	border: 1px solid var(--color3);
	padding: 1.2rem 1.8rem;}
table th {
    background-color:var(--color2);
    color:var(--color1)!important;
    font-weight: normal!important;}
td p{
    margin-bottom: auto!important}
/*table 2段組*/
@media (max-width:768px){
	.steps table th,
	.steps table td {
		border-bottom: 0;
		box-sizing: border-box;
		display: block;
		width: 100%;}
	.steps table tr:last-child{
		border-bottom: 1px solid var(--color3);}
}
div.j-text + div.j-table{
    margin-top: auto!important;}
/*画像*/
img{ 
    max-width: 100%!important;
}
/*カラムの画像を横幅100％*/
.j-module.n.j-hgrid .cc-imagewrapper img {
	width: 100% !important;
}
#content_area img{
    border-radius: 6px;}
/*テキスト*/
.j-module.n.j-header,
.j-module.n.j-text{
    margin: 0 auto;
	padding: 0 5px;}
.j-header h2,
.j-text h2{
	text-align: center;
	position: relative;
	margin-bottom: 3rem;
	/*font-family: Meiryo, メイリオ, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Osaka, "MS P Gothic", "ＭＳ Ｐゴシック", sans-serif;*/
}
.j-header h3,
.j-text h3{
	margin-bottom: 1rem;
}
.j-text h2::before,
.j-header h2::before{
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
	width: 50px;
	height: 5px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: var(--color1);
	border-radius: 100px;
}
.jtpl-section-aside h2{
	margin-bottom: 1rem;
}
.jtpl-section-aside h2::before{
		content: none;
}
p{  
	font-feature-settings: "palt";
	margin-bottom: 1.6rem;
    text-align: justify;}
.j-text p:last-of-type{ 
    margin-bottom: 0;}
#content_area strong {
	font-weight: bold;
}
.j-text ul,
.j-text ol  { 
    margin: 0 auto 0!important;}
.j-text p + ul,
.j-text ul + p,
.j-text ol + p  { 
    margin-top: 1.6rem!important;}
.j-text li {
    margin: 0 5px 5px -15px!important;
    padding: auto;}
.j-text li:last-child {  
	margin-bottom: 0!important;}

ol,
.outline ol{
	counter-reset:number; /*数字をリセット*/
	list-style-type: none!important; /*数字を一旦消す*/}
ol li,
.outline ol li {
	position: relative;
	line-height: 1.75;
	padding: 0.5rem 0 0.5rem 3.3rem;
}
ol.adjust li{
	margin-left: -35px !important;
}
ol li::before{
	position: absolute;
	font-size: 14px;
	font-weight: normal !important;
	line-height: 25px;
	counter-increment: number;
	content: counter(number);
	display:inline-block;
	background: var(--color1);
	color: #fff;
	border-radius: 50%;
	width: 25px;
	height: 25px;
	left: 0;
	top: 9px;
	text-align: center;
	margin-top: 0;
}
#content_area .j-module.n.j-text a{
    text-decoration: underline;}
.mceEditable a{ 
    text-decoration: underline!important;}
footer a{
    color: #fff!important;}
/*ナビゲーション*/
.jtpl-navigation{ 
    position: relative;}
.jtpl-content__inner{
	padding-top: 0!important;
	padding-bottom:0!important;
	width: 900px;
}
@media (max-width:768px){
	.jtpl-content__inner{
		width: 100%;
	}
}
.jtpl-breadcrumbs{
    display: none}
.breadcrumb {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	justify-content: flex-end;
}
ol.breadcrumb{
	margin-bottom: 2rem!important;
}
.breadcrumb li:not(:last-of-type)::after {
	content: "›";
	margin: 0 .6em;
	color: #777; 
}
ol.breadcrumb li{
	font-size: 1.4rem;
	padding: 0.5rem;
}
ol.breadcrumb li::before{
	display: none!important;
}
@media (min-width:768px){
	/*	.j-nav-variant-nested li a{
		width: calc(1000px / 8)!important;}*/
	.j-nav-variant-nested li a{
		padding: 10px 30px!important;
		margin: 10px 1px 0;
		border-radius:12px 12px 0 0 ;
	}
	ul.j-nav-level-1,
	ul.j-nav-level-2{
		background-color:rgba(0,0,0,0)!important;
		padding: 0!important;}
	li.jmd-nav__list-item-1 a{
		text-align: left!important;
		width: calc(1000px / 7)!important;}
	li.jmd-nav__list-item-2 a{
		margin-left: -28px;}
}
/*リンクボタン*/
.j-calltoaction-link-style-1{
    margin: 0 auto!important;
    min-width: 100%!important;}
.j-calltoaction-link-style-2,
.j-calltoaction-link-style-3{
    margin: 0 auto!important;
	padding-left: 3rem!important;/*矢印アイコンの空*/
	padding-right: 3rem!important;/*矢印アイコンの空*/
    min-width: 250px!important;}
.j-calltoaction-link-style-1,
.j-calltoaction-link-style-2,
.j-calltoaction-link-style-3{
	position: relative;}
/*矢印アイコン*/
.j-calltoaction-link-style-1::after,
.j-calltoaction-link-style-2::after,
.j-calltoaction-link-style-3::after{
	position: absolute;
	top: 50%;
	right: 1.5rem;
	width: 0.5rem;
	height: 0.5rem;
	transform: translateY(-50%) rotate(45deg);
	border-right: 2px solid currentColor;
	border-top: 2px solid currentColor;
	content: "";}
/*コードでリンクボタンを追加する場合の調整*/
.cc-m-hgrid-column .j-module.n.j-htmlCode{
    padding: 0 3px!important;}
.j-htmlCode .j-callToAction{
    margin: 0!important;
    padding: 0!important;}
@media (max-width:768px){
	.j-callToAction{
        text-align: center!important;}
	.j-calltoaction-link-style-1,
    .j-calltoaction-link-style-2,
    .j-calltoaction-link-style-3{
		margin: 0 auto!important;
		width: auto!important;}
	.j-calltoaction-link-style-1{
		min-width: 100%!important;}
	.j-calltoaction-link-style-2,
	.j-calltoaction-link-style-3{
		min-width: 250px!important;}
}
.material-icons {
    display: inline-flex;
    vertical-align: middle;
    margin-bottom: 4px!important;}
.widthMax{
	width: 100vw;
	margin-inline: calc(50% - 50vw);
}
.widthMaxCar{
	width: 100vw;
	margin-inline: calc(50% - 50vw);
	/*background-color: #000;*/
	padding-top: 50px;
	padding-bottom: 50px;
	margin-top: -16px;}
.mtop1{
	margin-top: 1.6rem!important;}
.center{
	max-inline-size: max-content;
	margin-inline: auto;}
div.title-center{
	display: block;
	text-align: center;}
/*Youtube*/
.youtube-wrap {
	width: 100%;
	aspect-ratio: 529 / 940;}
.youtube-wrap iframe {
	width: 100%;
	height: 100%;}
.cc-m-spacer{
	max-height:100px!important;
	min-height:auto!important;}
/*フッター*/
.jtpl-section-aside__inner span.tel{
	color: var(--color6);
	font-size: 4rem;
	font-family: "PT Sans", sans-serif!important;
	font-weight: 700;
	line-height: 1.5;
}
.jtpl-section-aside__inner span.tel a{
	color: var(--color6)!important;
	text-decoration: none!important;
}
.jtpl-section-aside__inner .contact{
	text-align: center;
}
.jtpl-section-aside__inner .contact img{
	width: 450px;
}
@media (max-width:768px){
	.jtpl-section-aside__inner .contact img{
		width: 100%;
	}
}
.gmap{
	margin-bottom: 0;}
/* -------------------------------------------------------
デコレーション
------------------------------------------------------- */
/*ショルダー*/
.j-text p.shoulder,
p.shoulder{
	position: relative;
	display: inline-block;
	padding: 0 40px;
	margin-top: 0.5rem;
	text-align: center;
	color: #000;
	font-size: 1.6rem;
	font-family: "Poetsen One", sans-serif;
}
p.shoulder::before,
p.shoulder::after {
	position: absolute;
	display: inline-block;
	content: '';
	top: calc(50% - 1px);
	width: 30px;
	height: 1px;	
	background: #000;
}
p.shoulder::before{
	left: 0;
}
p.shoulder::after{
	right: 0;
}
/*目次*/
.outline{
	display: block;
	background: #fff;
	border: double 4px var(--color4);
	margin: auto auto 5rem;
	padding: 2rem 2rem 2rem;
	box-sizing: border-box;
	width: 400px;
}
.outline h2{
	font-size: 1.8rem !important;
	text-align: left!important;
	color: var(--color4)!important;
	margin-bottom: 1.5rem!important;
}
.outline h2::before{
	content: none;
}
.outline p,
.j-text .outline p:last-of-type{
	margin-top: 2rem!important;
	margin-bottom: 1.5rem!important;
}
.outline ol li::before{
	border-radius: 6px;
	background: var(--color4);
}
@media (max-width:768px){
	.outline {
		width: 100%;}
}
/*特徴*/
.feature-box{
	display: block;
	padding: 30px;
	border: solid 1px var(--color1);
	border-radius: 6px;
	box-sizing: border-box;
}
.feature-box-2{
	display: block;
	padding: 30px;
	background-color: #ffff00;
	border: double 4px var(--color1);
	border-radius: 6px;
	box-sizing: border-box;}
/*備考*/
.comments-box{
	background-color: var(--color5);
	border-radius: 6px;
	display: block;
	font-size: 1.4rem;
	padding: 15px;}
.comments-box li:last-child { 
	margin-bottom: 0!important;}
/*CTAバナー*/
.contact-bnr{
	text-align: center;}
.contact-bnr img {
    height: auto;
    transition:all 0.5s ease-in-out;
    width: 950px;
    vertical-align: bottom;}
.contact-bnr a:hover img {
	transform: scale(1.05,1.05);}
@media (max-width:768px){
	.contact-bnr img {
		max-width: 100%;}
}
/* -------------------------------------------------------
HOME
------------------------------------------------------- */
/*JimdoのKVエリア非表示*/
.jtpl-header{ 
    display: none;}
/*KV*/
.kv{
		position: relative;
	}
@media (min-width:768px){
	.kv-wrap{
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 1ch;
		width: 100vw;
		margin-inline: calc(50% - 50vw);
		background-image: url(https://u.jimcdn.com/cms/o/s2346d102b66418c9/userlayout/img/kv-bk.png?t=1766129645) ;
		background-repeat: repeat-x;
		/*background-color: var(--color1);*/
		margin-top: -35px!important;
	}
	.kv{
		width: 1050px;
	}
}
@media (max-width:768px){
	.kv{
		width: 100vw;
		margin-inline: calc(50% - 50vw);
		margin-top: -35px!important;
	}
}
/*swiper*/
.swiper-slide {
  height: 400px;
  width: 100%;/
  overflow: hidden;
}
.swiper-slide img {
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
@media (max-width:768px){
  .swiper-slide {
    height: 60vh !important;
  }
}
.swiper-pagination-bullet {
	border-radius: 0%!important;
	height: 3px !important;
	width: 30px !important;
}
.swiper-pagination-bullet{
	background: #000!important;
	opacity:0.8!important;
}
.swiper-pagination-bullet-active {	
    background-color: var(--color1)!important;
}
.swiper-button-prev {  
    background: url(#) no-repeat center center / contain!important;
}
.swiper-button-next {  
    background: url(#) no-repeat center center / contain!important;
}
@media (min-width:768px){
	.swiper-container{
		border-radius:16px;
	}
}
/*zoomアニメーション*/
.swiper-slide-active img,
.swiper-slide-duplicate-active img,
.swiper-slide-prev img,
.swiper-slide-duplicate-prev img{
    animation: zoomUp 8s linear 0s normal both;
}
@keyframes zoomUp {
	0% {
		transform: scale(1.2); }
	100% {
		transform: scale(1);}
}
/*KV下CTA*/
.kv-line-wrap{
	position: absolute;
    bottom: -1px;
    left: 0; 
    width: 100%;
    z-index: 10;
    pointer-events: none;
}
.kv-line{
	position: relative;
	z-index: 5;
	width: 100%;
}
.kv-line img{
	width: 100%	;
    height: auto; 
    display: block;
	border-radius: 0 !important;
	animation: none !important; 
    transform: none !important;
}
.kv-contact{
	width: 100vw;
	margin-inline: calc(50% - 50vw);
	background-color: var(--color1);
	margin-top: -28px;
	padding: 5rem 1rem;
	box-sizing: border-box;
}
.kv-contact img{
	max-width: 250px!important;
	margin: 1rem auto 2rem;
}
.kv-contact p{
	color: #fff;
}
.kv-contact span.tel{
	color: var(--color6);
	font-size: 4.5rem;
	font-family: "PT Sans", sans-serif!important;
	font-weight: 700;
	line-height: 1.5;
	text-align: left;
}
.kv-contact span.tel a{
	color: var(--color6)!important;
	text-decoration: none!important;
}
/*News（ブログ）表示*/
.news{
	background-color: var(--color6);
}
.news-box{
	width: 940px;
	margin: -10px auto 0;
	box-sizing: border-box;
	padding: 2.5rem 0.5rem 1.4rem;
}
@media (max-width:768px){
	.news-box{
		width: 100%;
		padding: 2rem;
	}
}
.news-box.flex-wrap{
    display: flex;
	justify-content: flex-start;
}
.news-box.flex-wrap .flex2{
	font-size: 2rem;
	margin-right: 3rem;
	padding-right: 5rem;
	border-right: solid 1px #000;
}
@media (max-width:768px){
	.news-box.flex-wrap .flex2{
		margin-right: 1rem;
		padding-right: 1.5rem;
	}
}
p.day{
    margin-bottom: 5px!important;}
p.feed a{
    color: var(--color-link)!important;
    text-decoration: underline!important;}
p.feed a:hover{
	color: var(--color-link-hover)!important;}
#feedtop ul,
.j-text ol  {
	list-style: none;
	margin: 0 auto 0!important;}
#feedtop li {
	margin: 0 5px 5px -35px!important;
	padding: auto;}

/*理念*/
.philosophy-wrap{
	width: fit-content;
	margin: 0 auto;
	padding: 0;
}
.philosophy{
	width: auto;
}
/*サービス概要*/
.servie-info-wrap{
	position: relative;
	width: fit-content;
	margin: 0 auto;
	padding: 0;
	text-align: center;
}
.servie-info-wrap img{
	width: 50px;
	position: absolute;
	top: -32px;
	left: 50%;
	transform:translateX(-50%);
}
.servie-info{
	display: block;
	background-color: var(--color1-sub);
	padding: 30px;
	border-radius: 12px;
	box-sizing: border-box;
	text-align: center;
	width: auto;
}
.servie-info h3,
.servie-info p{
	text-align: center;
}
/* -------------------------------------------------------
下層ページ
------------------------------------------------------- */
/*ヘッダー画像*/
.widthMax.headimg{
	margin-top: -35px;
}
.headimg img{
	border-radius: 12px 12px 0 0!important;
}
/* -------------------------------------------------------
サービス
------------------------------------------------------- */
/*流れ*/
.j-header h3.flow,
.j-text h3.flow {
    display: flex;
    align-items: baseline;
}
.j-header h3.flow span,
.j-text h3.flow span{
	flex-shrink: 0;
	color: #fff;
	background-color: var(--color1);
	padding: 0.3rem 1.5rem 0.5rem;
	margin-right: 1rem;
	border-radius: 6px;
}
p.flow{
	display: block;
	margin-left: 20px;
	padding: 0 0 30px 30px;
}
span.tel{
	color: var(--color-link);
	font-size: 2.4rem;
	font-family: "PT Sans", sans-serif!important;
	font-weight: 700;
	line-height: 1.5;
}
span.tel a{
	color: var(--color-link)!important;
	text-decoration: none!important;
}
/*料金*/
.scroll-note {
    text-align: center;
    font-size: 1.4rem;
    color: #666;
    margin-bottom: 5px;
    display: none;
}
@media (max-width:768px){
	.table-wrap {
		overflow-x: auto;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}
	.table-wrap table {
		width: 100%;
	}
	.table-wrap {
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    background:
        linear-gradient(to right, #fff 30%, rgba(255,255,255,0)),
        linear-gradient(to left, #fff 30%, rgba(255,255,255,0)),
        radial-gradient(farthest-side at 0 50%, rgba(0,0,0,0.2), rgba(0,0,0,0)),
		radial-gradient(farthest-side at 100% 50%, rgba(0,0,0,0.2), rgba(0,0,0,0)) 0 100%;
    background-repeat: no-repeat;
    background-color: #fff;
    background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
    background-position: 0 0, 100% 0, 0 0, 100% 0;
    background-attachment: local, local, scroll, scroll;
	}
	.scroll-note {
        display: block;
    }
}
/* -------------------------------------------------------
ブログ
------------------------------------------------------- */
h1.j-blog-header{
	box-sizing: border-box;
	margin-top: 18px;}
h1.j-blog-header.j-blog-post--headline.j-blog-post--headline{
	margin-top: 0;
	margin-bottom: 15px;}
h2.j-blog-headline.j-blog-post--headline{
	padding: 0!important;
	margin: 1rem 0 1.5rem!important;}
/*一覧ページ タイトル*/
h2.j-blog-headline.j-blog-post--headline::before{
	content:none;}
.n.j-blog-meta.j-blog-post--header{
	margin-top: -10px;}
.j-blog-meta a{
	text-decoration: none!important;}
/*一覧ページ 日付ラベル*/
.j-blog.n.clearover.j-blogarticle .j-module.n.j-text:first-child {
	background-color: var(--color2);
	box-sizing: border-box;
	color: var(--color1);
	display: inline-block;
	font-size: 1.2rem;
	padding: 1px 10px;}
/*詳細ページ 日付ラベル*/
.j-text.j-blog-post--date{
	background-color: var(--color2);
	box-sizing: border-box;
	color: var(--color1);
	display: inline-block;
	font-size: 1.2rem;
	margin-left: -5px;
	padding: 1px 10px;}
/*詳細ページ　カテゴリラベル*/
.j-blog-post--category{
	display: none!important;}
/*カテゴリー　一覧ページ　タイトル*/
.j-blog.n.clearover.j-blogarticle h1{
	color: var(--color1)!important;
	font-size: 2rem!important;}
/*カテゴリー　一覧ページ　ラベル*/
a.j-blog-page--tag,
a:link.j-blog-page--tag,
a:visited.j-blog-page--tag{
	color: var(--color1)!important;}
/*カテゴリー　ソート　一覧ページ　すべての記事を表示ラベル*/
#cc-matrix-2 a,
#cc-matrix-2 a:visited{
	color: var(--color1)!important;}
/*ブログページ内の写真*/
.cc-page-blog img{
	margin-bottom: 1.6rem;}
/*ブログページのテキスト*/
.cc-page-blog .j-text p:last-of-type{ 
    margin-bottom: 1.6rem;}
.cc-page-blog h2 {
	text-align: left!important;}
.cc-page-blog h2::before {
	left: 0;
    transform: translateX(0) ;}

/* -------------------------------------------------------
PC/sp
------------------------------------------------------- */
@media (min-width:768px){
	.sp,
    .spNote{display: none;}
}
@media (max-width:768px){
	.j-header h3,
	.j-text h3 {
		font-size: 1.9rem !important;
		font-weight: 900;
	}
	/*ハンバーガーメニュー*/
	.navigation-colors--transparency {
		background-color: #fff;}
	.navigation-colors .navigation-colors__menu-icon,
	.navigation-colors .navigation-colors__menu-icon:before,
	.navigation-colors .navigation-colors__menu-icon:after{border-color:var(--color1)}
	.jtpl-navigation__label:after{
		content: "MENU｜花花";
		color: var(--color1);
		margin-left: 0;
		margin-top: -3px;
		position: absolute;
		top: 0;
		z-index: -10;
		width: 200px;}
	.jtpl-mobile-navigation__inner ul {
		margin: 0 0 -10px !important;
	}
	.jtpl-mobile-navigation__inner .j-nav-level-0 li:first-child a:first-child {
		padding-top: 12px !important;
	}
	.jtpl-mobile-navigation__inner .j-nav-level-0 li:last-child a:last-child {
		padding-bottom: 13px !important;
	}
    /*PC表示のみ*/
	.pc{
        display: none;}
     /*SPのみ注釈*/
	.spNote{
		font-size: 14px;
		color: #9e9e9e;}
}


