@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
/*-----comon-----*/
body {
  font-family: YakuHanJPs, -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
p {
	text-align: justify;
}
.kaigyo {
	display: inline-block;
}
.fwn {
	font-weight: normal;
}
.tac {
	text-align: center;
}
.tal {
	text-align: left;
}
.fs16 {
	font-size: 16px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mr20 {
	margin-right: 20px !important; 
}
.mr1em {
	margin-right: 1em !important;
}
.mb-40 {
	margin-bottom: -40px !important;
}
.p1em {
	padding: 1em !important;
}
.pt20 {
	padding-top: 20px !important;
}
.pb10 {
	padding-bottom: 10px !important;
}
.p1-2 {
	padding: 1.2em !important;
}
.pl-06 {
	padding-left: 0.6em !important;
}
.pl-2_2em {
	padding-left: 2.2em !important;
}
.bo-r14 {
	border-radius: 14px !important;
}
.mw250c {
	max-width: 250px;
	margin: 0 auto;
}
.mw500c {
	max-width: 500px;
	margin: 0 auto;
}
.mw800c {
	max-width: 800px;
	margin: 0 auto;
}
.lst-none {
	list-style-type: none !important;
	padding-left: 0 !important;
}
.vatb {
	vertical-align: text-bottom;
}
[class*=is-style-btn_] a {
	border: 2px solid;
	border-radius: 15px;
}
@media (max-width: 959px) {
	.sp-none {
		display: none;
	}
}
/*--フルワイドの幅調整--*/
@media (min-width: 1200px){
	.prl-2em {
		padding-right: 2.0em;
		padding-left: 2.0em;
	}
	.ml-40 {
		margin-left: -40px;
	}
}
/*--画像重なりの表示順調整--*/
.img-x {
    z-index: 10;
    position: relative;
}
/*--follow-banner--*/
/*pc*/
.follow-banner {
  position: fixed;
  top: 60%;
  right: 0;
  transform: translateY(-40%);
  z-index: 20;
}
.follow-banner a {
  display: flex;
  padding: 1em;
  transition: opacity 0.25s;
}
.follow-banner a:hover {
  filter: brightness(1.1);
}
/*sp*/
.follow-banner2 {
	position: fixed;
	bottom: 6px;
	left: 12px;
	z-index: 99;
}
.follow-banner2 a {
	display: flex;
	transition: opacity 0.25s;
}
.follow-banner2 a:hover {
	filter: brightness(1.1);
}
/*--page title--*/
.c-pageTitle {
    font-size: 2.0em;
}
@media (min-width: 600px) {
    .c-pageTitle {
        font-size: 2.0em;
    }
}
/*--post title--*/
.c-postTitle__ttl {
    font-size: 6vw;
}
@media (min-width: 600px) {
    .c-postTitle__ttl {
        font-size: 30px;
    }
}
@media (min-width: 600px){
.l-topTitleArea {
min-height: 10em;
}
}

/*-----header-----*/
/*--g-nav--*/
.c-gnav>.menu-item>a {
    padding: 0 12px;
}
.c-gnav>.menu-item>a .ttl {
    display: block;
    font-size: 18px;
}
.c-gnav > li:hover > a, .c-gnav > .-current > a {
    background-image: url("http://caretaxi-mikke.jp/wp/wp-content/uploads/2025/11/cat-foot2.png");
	background-color: inherit;
	background-size: 54px;
    background-position: center;
    background-repeat: no-repeat;
}
.c-gnav>.menu-item>.sub-menu {
    left: 5%;
}
.c-gnav .sub-menu a {
    background-color: #63a84d;
    color: #ffffff;
	padding: .9em .75em .9em 2em;
}
@media (min-width: 960px) {
    .-parallel .l-header__gnav .c-gnav>li>a {
        padding: 16px 18px;
    }
}

/*-----無限スライダー-----*/
.loop-slider {
    display: flex;
    overflow: hidden;
    gap: 0.5rem; /* 画像間の余白を指定 */
}
.loop-slider .wp-block-group__inner-container,
.loop-slider .swell-block-columns {
    display: contents;
}
.loop-slider .swell-block-columns__inner {
    flex-wrap: nowrap;
    animation: infinity-scroll-left 26s infinite linear; /* アニメーションの時間を指定 */
}
.loop-slider .swell-block-column figure {
    width: 300px; /* 画像の横幅を指定（パソコン） */
    position: relative;
}
.loop-slider .swell-block-column figure::before {
    padding-top: 65%; /* 画像の縦横比を指定 */
    display: block;
    content: "";
}
.loop-slider .swell-block-column figure img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center;
}
@media screen and (max-width: 959px) {
    .loop-slider .swell-block-column figure {
        width: 160px; /* 画像の横幅を指定（スマホ） */
    }
}
@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}

/*-----footer-----*/
/*--ウィジェットエリア--*/
.l-footer__widgetArea {
	padding-bottom: 2em;
    padding-top: 2em;
}
.widget-bana {
	max-width: 300px !important;
    min-width: 270px !important;
    width: 100%;
}
.w-beforeFooter {
	margin: 6em auto 0;
}
#media_image-6 {
	margin-top: 10px;
}
#media_image-5,#media_image-6 {
	text-align: center;
}
.c-listMenu a {
	font-size: 16px;
}
.c-listMenu a:hover {
    background-color: transparent;
	padding-left: 1.5em;
    padding-right: .5em;
	opacity: 0.7; 
	transition: .25s;
}
@media (max-width: 959px){
	#menu-footer-menw2 {
		margin-top: -3em;
	}
}
/*--SPコピーライト位置調整--*/
@media (max-width: 959px) {
.l-footer .copyright {
    padding-bottom: 50px;
	}
}
/*--TOPへ戻るボタン画像化--*/
#pagetop {
    border-radius: 0;
    position: relative;
    transition: all 0.3s;
}
#pagetop:hover {
    background-color: transparent !important;
    color: inherit !important;
    opacity: 0.7;
}
.c-fixBtn {
    background: url("http://caretaxi-mikke.jp/wp/wp-content/uploads/2025/11/topbtn.png") no-repeat center;
    background-size: contain;
    border: none;
    box-shadow: none;
    height: 100px;
    opacity: 1;
    width: 100px;
}
.icon-chevron-up {
    display: none;
}
.c-fixBtn__label {
    bottom: 0;
    left: 0;
    margin-top: 0 !important;
    position: absolute;
    right: 0;
}
@media (min-width: 960px) {
    .p-fixBtnWrap {
        bottom: 0;
        right: 1.6em;
    }
}
@media (max-width: 959px) {
	.c-fixBtn {
    height: 80px;
    width: 80px;
}
    .p-fixBtnWrap {
        bottom: 0;
        right: 0.4em;
    }
}

/*-----tel link-----*/
@media (min-width: 600px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
	}
}

/*-----SPメニュ*-----/
/*メニューの内容を消す*/
.p-spMenu__nav{
	display:none;
}
/*メニューのタイトルを消す*/
.c-widget__title.-spmenu{
  display:none;
}
/*マージン調整*/
.p-spMenu__bottom {
    margin-top: 0;
}
/*背景透過調整*/
.p-spMenu__inner::before {
    opacity: 0.9;
}

/*-----投稿記事 カテゴリー-----*/
.icon-folder:before,.c-categoryList:before {
	display:none;
}
.p-articleMetas.-bottom {
	display:none;
}
.c-pageTitle__inner,.l-articleBottom__title {
	font-family: "Zen Maru Gothic", sans-serif;
}
.c-pageTitle__subTitle {
	display: none;
}
.c-shareBtns__btn {
	padding: 10px 10px;
    border-radius: 20px !important;
}
.p-termHead {
    border: 1px solid var(--color_border);
    margin-top: 3rem;
    position: relative;
}
.p-termHead {
    border: 2px solid #FFEB3B;
	border-radius: 14px;
    background-color: #fffbe4;
    margin-top: 3rem;
    position: relative;
}

/*-----search-box-----*/
.wp-block-search__input:focus-visible {
    outline: none !important; /* focus-visible の黒い線を完全に消す */
    border-radius: 0px !important; /* 角丸をなくす */
    box-shadow: none !important; /* 外側の白い線が box-shadow によるものだった場合 */
}

.wp-block-search__input {
    border-radius: 0px !important; /* 通常時の角丸をなくす（もしあれば） */
}

.wp-block-search__inside-wrapper {
    border-radius: 0px !important; /* 内側のラッパーの角丸をなくす可能性 */
}

/*sp-menu*/
.p-spMenu__body {
    font-size: 16px;
}

/*-----infomation-----*/
/*--左カラムの要素を追尾（スティッキー）にするCSS--*/
.sticky-column {
    position: sticky;/* スティッキーを適用し、親要素内で固定する */
    top: 180px;/* 画面上端からどれだけの距離で固定を開始するか指定 */
    z-index: 10; /* 他の要素より手前に表示する場合に調整 */
}
/*--stepカスタマイズ--*/
.swell-block-step__item:before {
    border-left: 1px dashed #ea00bf69;
}
.swell-block-step__number:after {
    font-size: 24px;
    font-weight: bold;
}
@media not all and (min-width: 600px) {
    .swell-block-step:not(.is-style-big):not(.is-style-small)>.swell-block-step__item>.swell-block-step__body {
        margin-left: -60px;
    }
}

/*-----カスタムギャラリー-----*/
/* カスタムギャラリー全体のレイアウト */
.custom-gallery {
    display: flex;
    flex-direction: column; /* 縦に並べる */
    gap: 5px;
    max-width: 600px; /* 必要に応じて調整 */
    margin: 0 auto;
}
/* メイン画像エリアのスタイル */
.main-image-wrapper {
    width: 100%;
    /* メイン画像の高さをアスペクト比で固定したい場合はこちらを利用 */
    /* padding-top: 100%; /* 1:1の場合 */
    /* position: relative; */
}
.main-image {
    width: 100% !important;
    height: auto !important;
    /* position: absolute; top: 0; left: 0; */
}
/* サムネイルリストのスタイル */
.thumb-list {
    display: flex;
    flex-wrap: nowrap; /*サムネイルを絶対に折り返さない */
    gap: 7px;
    overflow-x: auto; /* サムネイルが多い場合は横スクロール */
    padding-bottom: 5px; /* スクロールバーのためのスペース */
}
/* 個々のサムネイルのスタイル */
.thumb-item {
    width: 75px !important; /* サムネイルの幅 */
    height: 75px !important; /* サムネイルの高さ */
    flex-shrink: 0 !important; /* サムネイルが縮小されるのを防ぐ */
	min-width: 75px !important; /* 最小幅を確保し、縮小を強制的に防ぐ */
    object-fit: cover;
    cursor: pointer;
    border: 2px solid transparent;
    transition: border-color 0.2s;
    opacity: 0.7;
}
/* 選択中のサムネイルのスタイル */
.thumb-item.active {
    border-color: #fbd700 !important; /* 選択中であることを示す */
    opacity: 1 !important;
}

/*問い合わせフォーム*/
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
select,
textarea{
	display: block;
	width: 100%;
	height: 45px;
	margin-bottom: 0;
	padding: 0 12px;
	border: 0;
	border-radius: 3px;
	background-color: #f5f5f5;
	box-shadow: none;
	color: #333;
	font-size: 18px;
	vertical-align: middle;
	line-height: 45px;
}
textarea {
	max-width: 100%;
	min-height: 160px;
	line-height: 1.5em;
	padding: 0.8em;
	overflow: auto;
}
.wpcf7 input[type="email"]::placeholder {
	color: #aaa;
	font-size: 16px;
}
.wpcf7 input[type="tel"]::placeholder {
	color: #aaa;
	font-size: 16px;
}
.wpcf7 textarea::placeholder {
	color: #aaa;
	font-size: 16px;
}
.wpcf7 form .wpcf7-response-output {
    border-radius: 10px !important;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
    border-color: #e100c1 !important;
}
.wpcf7 form.sent .wpcf7-response-output {
    border-color: #fbd700 !important;
}
@media(max-width:599px) {
	.inquiry td,
	.inquiry th {
		display: block !important;
		width: 100% !important;
		border-top: none !important;
		-webkit-box-sizing: border-box !important;
		-moz-box-sizing: border-box !important;
		box-sizing: border-box !important;
	}
	.inquiry tr:first-child th {
		border-top: 1px solid #ddd !important;
	}
}
.inquiry th {
	text-align: left;
	font-size: 17px;
	color: #333;
	padding-left: 1.0em;
	width: 30%;
	background: #ffff000d;
	border: solid 1px #ddd;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
}
.inquiry td {
	font-size: 14px;
	border: solid 1px #ddd;
	padding: 0.8em;
}
.req { /* 必須 */
	font-size: 12px;
	padding: 5px;
	background: #e100c1;
	color: #fff;
	border-radius: 2px;
	margin-right: 10px;
	position: relative;
	bottom: 1px;
}
.any { /* 任意 */
	font-size: 12px;
	padding: 5px;
	background: #b59477;
	color: #fff;
	border-radius: 2px;
	margin-right: 10px;
	position: relative;
	bottom: 1px;
}
.verticallist .wpcf7-list-item {
	display: block;
}
.wpcf7-list-item {
	display: block;
	font-size: 16px;
}
.wpcf7-list-item-label {
	margin-left: 5px;
}
th {
	font-weight: normal !important;
	padding: 13px;
}
td {
	border-top: 1px solid #ededed;
	padding: 12px;
}
input,
select,
textarea {
	margin: 0;
	max-width: 100%;
	resize: none;
}
.wpcf7-submit {
	display: block;
	width: 350px;
	margin: 25px auto 0;
	padding: 15px;
	cursor: pointer;
	font-size: 18px;
	background-color: var(--color_main);
	border: 2px solid #ea00bf;
	border-radius: 10px;
	color: #fff;
	font-weight: 700;
	transition: .25s;
}
.wpcf7-submit:hover {
	background-color: #ffffff;
	border: 2px solid #ea00bf;
	color: #ea00bf;
}
/* チェックボックスとラジオボタンの選択時の色を共通で設定 */
input[type="checkbox"]:checked,
input[type="radio"]:checked {
	accent-color: #e100c1;
}
.wpcf7-form-control:focus {
	outline: none;
	border-color: #f2b2e0;
	box-shadow: 0 0 0 3px rgba(225, 0, 193, 0.15);
	transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.wpcf7 form .wpcf7-response-output {
	margin: 2em 0.5em 1em;
	padding: 1em;
	border-radius: 0.25rem;
	border: 2px solid #00a0d2; /* Blue */
}
.wpcf7 form.init .wpcf7-response-output {
	display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
	border-color: #46b450; /* Green */
}
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	border-color: #dc3232; /* Red */
}
.wpcf7 form.spam .wpcf7-response-output {
	border-color: #f56e28; /* Orange */
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	border-color: #ffb900; /* Yellow */
}