@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
*/
#header #gnav .menu-item .ttl {
	font-size : 16px;
	font-family :;
}

.t-logo{
	width:28%;
}
.t-tex{
	font-size:1.5em;
}

@media screen and (max-width:768px){
  .t-logo{
	width:40%;
}
.t-tex{
	font-size:1em;
}
	.p-mainVisual__slideTitle{
			text-align:center!important;
	  top:0!important;
	}
}



/* =========================================================
// ↓ ループアニメーション
// ========================================================= */
/* 無限ループアニメーション */
@keyframes infinite-loop {
  to {
    transform: translateX(-100%);
  }
}
/* メインスタイル */
.infiniteLoop {
  --item-max-width: 400px; /* 各アイテムの最大幅 */
  --item-mobile-width: 50vw; /* スマホでのアイテムの幅 */
  --duration: 25s; /* アニメーションスピード */
  --gap: 1rem; /* 各アイテム同士の間隔 */
  --play-state: running;
  --direction: normal;
  --flex-direction: row;
}
.infiniteLoop.-reverse{--direction: reverse;--flex-direction: row-reverse}.infiniteLoop:hover{--play-state: paused}.infiniteLoop>*{display:flex}.infiniteLoop>*>*>*{overflow:hidden;transform:translateX(0);flex-wrap:nowrap !important;flex-direction:var(--flex-direction, row);margin:0 !important;padding-left:var(--gap) !important;gap:var(--gap);width:calc(var(--infinite-loop_width, 100vw)*1)}.infiniteLoop>*>*>*>*{padding:0 !important}.infiniteLoop>*>*>*>*>*{max-width:var(--item-max-width, 0px);margin-inline:auto}@media(min-width: 600px){.infiniteLoop>*>*>*{animation:infinite-loop var(--duration) linear infinite both var(--play-state) var(--direction);will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}}@media not all and (min-width: 600px){.infiniteLoop>*>*:nth-child(n+2){display:none}.infiniteLoop>*>*>*{-webkit-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;overflow-x:scroll;padding:0 calc((100vw - var(--item-mobile-width, 80vw)) / 2) !important;-webkit-overflow-scrolling:touch;-ms-overflow-style:none;scrollbar-width:none}.infiniteLoop>*>*>*::-webkit-scrollbar{display:none}.infiniteLoop>*>*>*>*{flex-shrink:0;width:var(--item-mobile-width, 80vw) !important;scroll-snap-align:center}}
/* =========================================================
//  ↑ループアニメーション
// ========================================================= */

 /* --- お問い合わせ --------------------------------------------*/
.form_kome-text{
 color:#008080	;
 text-align:center;
 font-size:0.8em;
margin-top:2em;
}

.cf-area {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 2em 0;
	border-bottom: 1px dashed #ccc;
	transition: all .3s;
	vertical-align:middle;
}

.cf-area:last-child {
	border-bottom: none;
}

.cf-area dt {
  width: 200px;
  padding: 0.7em 1.5em 0.7em 0.7em;
  text-align: right;
}

.cf-area dd {
    flex: 1;

}

.cf-area input, .cf-area textarea {
  width: 100%;
  padding: 0.7em;
  border: none;
  background-color: #EEE;
	border-radius:5px;
  font-size: 16px;
	resize: vertical;
	transition: all .3s;
}

.cf-area input:focus,.cf-area textarea:focus {
	outline: none;
	background: #dde2e9;
}

.cf-required {
	background: #F46764;
	color: #fff;
	font-size: 0.8em;
	padding: 5px;
	border-radius: 5px
}
.cf-optional {
	background: #6599b7;
	color: #fff;
	font-size: 0.8em;
	padding: 5px;
	border-radius: 5px
}

.cf-send input {
	display: block;
	background: linear-gradient(135deg, #6b7a8e 0%, #3b4a5e 100%);
	width: 300px;
	height: 60px;
	margin: 30px auto 0;
	border: none;
	border-radius: 10px;
	color: #fff;
	box-shadow: 2px 5px 15px 0 rgba(0, 0, 0, .2);
	font-size: 1.3em;
	font-weight: bold;
	transition: all .3s;
}

.cf-send input:hover {
	filter: brightness(1.25);
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	background-color: #fce3e3;
	border: none;
	text-align: center;
}

@media screen and (max-width:768px){
		.p-mainVisual__slideTitle{
			position:relative;
			top: 50px;
	    text-align:left;
			align-items: flex-end;
      font-size:1.8em;
			color:#FFF;
			text-shadow:1px 1px 0px rgba(0, 0, 0, 0.3);;
}
	.cf-area {
		display: block;
	}

	.cf-area dt {
    width: 100%;
		margin-bottom: 5px;
    padding-right: 0;
    text-align: left;
		line-height:1.5em;
	}

}