@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
*/


/* 共通 */
.section_titleBlock {
	margin-bottom: 0 !important;
}

.post_content h2 {
	background: none !important;
	color: #013a50 !important;
	font-size: 1.75em !important;
	padding: 0 !important;
	margin-top: 0 !important;
}

.post_content h2:before {
	display: none !important;
}

.section_titleEn {
	color: #70BEF4 !important;
	font-size: 0.85em !important;
	margin-bottom: 0.2em !important;
}

.section_titleBlock + p {
	margin-top: 1.8em !important;
}

/* 背景の青色ライン */
.bg_blue {
	position: relative;
}

.bg_blue::before {
	position: absolute;
	content: "";
	background: url(https://toubiyanmar.com/wp-content/uploads/2024/06/bg_blueLine.png) no-repeat;
	background-size: contain;
	bottom: -6em;
	right: 0;
	width: 34.6em;
	height: 35em;
}

/* 2カラムテーブル */
.column2_table {
	margin-top: 4.5em;
}

.column2_table.swell-block-columns .swell-block-column {
	border-bottom: 1px solid #B0D0E4;
}

.column2_table.swell-block-columns .swell-block-column:nth-child(odd) {
	color: #1C89CD;
	padding-left: 1.25em !important;
	width: 12.5em !important;
}

.column2_table.swell-block-columns .swell-block-column:nth-child(even) {
	width: calc(100% - 12.5em - 1.5em) !important;
	margin-left: 0 !important;
}

.column2_table.swell-block-columns .swell-block-column:nth-last-child(2),
.column2_table.swell-block-columns .swell-block-column:last-child {
	border-bottom: none !important;
}

/* リンクボタン */
.wp-block-button__link {
	position: relative;
	background-color: #1C89CD !important;
	padding: 0.85em 3.2em !important;
	transition: opacity .3s ease;
}

.wp-block-button__link::after {
	position: absolute;
	content: "";
	background: url(https://toubiyanmar.com/wp-content/uploads/2024/06/icon_arrow.png) no-repeat;
	background-size: contain;
	top: 50%;
	right: 1.2em;
	transform: translatey(-50%);
	width: 0.8em;
	height: 0.5em;
}

.wp-block-button__link:hover {
	opacity: .7;
}




@media (max-width: 959px) {
	.post_content h2 {
		font-size: 1.4em !important;
	}
	
	.bg_blue::before {
		bottom: -6.5em;
		width: 19.6em;
		height: 21em;
	}
	
	.column2_table {
		margin-top: 2.8em;
	}
	.column2_table .swell-block-columns__inner {
		justify-content: center !important;
		row-gap: 1em !important;
	}
	.column2_table.swell-block-columns .swell-block-column p {
		font-size: 0.9em !important;
	}
	.column2_table.swell-block-columns .swell-block-column:nth-child(odd) {
		padding-left: 0.6em !important;
		width: 7em !important;
	}
	.column2_table.swell-block-columns .swell-block-column:nth-child(even) {
		width: calc(100% - 9em) !important;
	}
	
	.wp-block-button__link {
		font-size: 1em;
	}
}


/* ヘッダー */
.l-header {
	max-width: 1006px !important;
	padding: 12px !important;
	left: 50% !important;
	transform: translatex(-50%);
	background: none !important;
	box-shadow: none !important;
}

.page .l-header {
	position: absolute !important;
}

.l-header .l-header__inner {
	background: rgba(255,255,255,0.66) !important;
	padding-left: 1em !important;
	padding-right: 1em !important;
}

.-txt .c-headLogo__link,
.c-iconBtn,
.c-gnav .ttl {
	color: #646464 !important;
}

.l-header .c-gnav>li>a {
	transition: color .3s ease;
}
.c-gnav>.menu-item>a:hover .ttl {
	color: #1971A9 !important;
}

.l-header .c-gnav>li>a:after {
	display: none !important;
}

.l-header .c-gnav>li:last-child {
	margin-left: 1em !important;
	padding: 1em 0 !important;
}

.l-header .c-gnav>li:last-child>a {
	background-color: #6DA7CC !important;
	border-radius: 5px !important;
	padding: 4px 8px !important;
}

.l-header .c-gnav>li:last-child>a .ttl {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff !important;
}

.l-header .c-gnav>li:last-child>a .ttl img {
	width: 1.3em;
	margin-right: 0.5em;
}

.c-listMenu.c-listMenu li:last-child a img {
	display: none;
}

.c-widget__title.-spmenu {
	background: #1971A9 !important;
}

@media (max-width: 959px) {
	.l-header .l-header__inner {
		background: rgba(255,255,255,0.66) !important;
	}
}


/* 下層ヘッダー */
.l-topTitleArea {
	min-height: 22em !important;
}

.l-topTitleArea.c-filterLayer::before {
	background-color: transparent !important;
	background-image: url(https://toubiyanmar.com/wp-content/uploads/2024/06/bg_lowerHeader-scaled.jpg) !important;
	background-repeat: no-repeat;
	background-size: cover !important;
	opacity: 1 !important;
}

.c-filterLayer.-texture-dot:after {
	opacity: 0 !important;
}

.l-topTitleArea__body .c-pageTitle {
	text-align: center !important;
	font-size: 2em !important;
}

@media (max-width: 959px) {
	.l-topTitleArea.c-filterLayer::before {
		background-position: bottom right 33% !important;
	}
}


/* フッター */
.l-footer {
	z-index: 10 !important;
}

.l-footer__foot {
	background-color: #fff !important;
}

.l-footer__widgetArea {
	padding-top: 3em !important;
	padding-bottom: 2.6em !important;
}

.footer_wrap {
	max-width: 640px;
	margin: 0 auto;
}

.footer_content {
	display: flex;
	justify-content: space-between;
}

.footer_nav,
.footer_info {
	width: 40%;
}

.footer_nav a {
	display: block;
	padding: 0.4em 0;
	transition: color .3s ease;
}
.footer_nav a:hover {
	color: #09568E;
}

.footer_fixedTel {
	text-align: center;
}

.fixedTel_body a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8em;
}

.fixedTel_body a img {
	width: 1.4em;
	margin-right: 0.7em;
}

.footer_fixedTel p {
	font-size: 0.84em;
	margin-top: 0.5em;
}

.fixedTel_body p {
	font-size: 1em;
	border-bottom: 1px solid;
	padding-bottom: 4px;
	margin-top: 0;
	margin-bottom: 4px;
}

.footer_tel {
	margin-top: 1.5em;
}

.footer_tel a {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #6DA7CC;
	border-radius: 4px;
	color: #fff;
	width: 100%;
	padding: 0.5em 0;
}

.footer_tel img {
	width: 1.2em;
	margin-right: 0.4em;
}

.footer_logoBlock {
	margin-top: 2.4em;
}

.footer_logoBlock ul {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.8em 3em;
}

.footer_logoBlock a {
	transition: opacity .3s ease;
}
.footer_logoBlock a:hover {
	opacity: .7;
}

@media (max-width: 959px) {
	.l-footer__widgetArea {
		padding-top: 2em !important;
    padding-bottom: 1.4em !important;
	}
	.footer_content {
		display: block;
	}
	.footer_nav, .footer_info {
		width: 66%;
		margin-left: auto;
		margin-right: auto;
	}
	.footer_nav a {
		text-align: center;
		font-size: 1.1em;
	}
	.fixedTel_body a {
		font-size: 1.5em;
	}
	.footer_info {
		margin-top: 2.2em;
	}
	.footer_tel a {
		padding: 0.9em 0;
	}
	.footer_logoBlock {
		width: 88%;
		max-width: 350px;
		margin-left: auto;
		margin-right: auto;
		margin-top: 3.6em;
	}
	.footer_logoBlock ul {
		grid-template-columns: repeat(2, 1fr);
		gap: 0.8em 1.6em;
	}
}


/* TOPページ */
.p-mainVisual__textLayer {
	flex-direction: column-reverse !important;
	justify-content: flex-start !important;
	height: 92% !important;
	text-align: left !important;
}

.p-mainVisual__slideText {
	width: fit-content !important;
	font-size: 1.15em !important;
	border-bottom: 2px solid #A8D7F6;
	margin-top: 0 !important;
	padding-bottom: 0.5em;
}

.p-mainVisual__slideTitle {
	font-size: 1.8em !important;
}

.l-parent>:first-child.p-mainVisual__slideTitle {
	margin-top: 0.5em !important;
}

.top #content {
	padding-top: 0 !important;
}

.bg_aboutImage {
	position: relative;
}

.bg_aboutImage::before {
	position: absolute;
	content: "";
	background: url(https://toubiyanmar.com/wp-content/uploads/2024/06/bg_message.png) no-repeat;
	background-size: cover;
	top: 0;
	right: 0;
	width: 45em;
	height: 37em;
}

.about_content .wp-block-column:first-child {
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
}

.about_content .wp-block-column:first-child p {
	writing-mode: vertical-rl;
	font-size: 0.85em !important;
	color: #70BEF4 !important;
}

.about_content .wp-block-column:first-child h2 {
	writing-mode: vertical-rl;
	font-size: 1.75em !important;
	letter-spacing: 0.3em;
}

.home_about h3 {
	color: #013a50 !important;
	font-size: 1.5em !important;
	line-height: 1.8 !important;
	letter-spacing: 0.16em !important;
	padding: 0 !important;
	padding-top: 1.5em !important;
	margin-bottom: 1.5em !important;
}

.home_about h3::before {
	display: none !important;
}

.home_about h3 + p {
	line-height: 1.7 !important;
	margin-bottom: 2.2em !important;
}


.boatListSec .l-article {
	max-width: 1006px !important;
}

.boat_content {
	margin-top: 4.6em;
	margin-bottom: 3.6em;
}

.boat_item {
	border: 1px solid #74A1C2;
	padding: 1em !important;
	box-shadow: 0 2px 10px rgba(219,208,197,0.6);
}

.boat_item .wp-block-image {
	position: relative;
	display: block;
	padding-top: 61.8%;
}

.boat_item .wp-block-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.boat_item .boat_list {
	border-bottom: 1px dotted #DCDCDC;
}


.home_features .l-article {
	max-width: 1006px !important;
}

.features_content {
	margin-top: 3em;
}

.features_item p {
	color: rgba(46,52,55,.42) !important;
	font-size: 2.3em !important;
	margin-bottom: 0 !important;
}

.features_detail {
	border: 2px solid #2487CE !important;
	padding: 1.25em 1.6em !important;
	box-shadow: 0 2px 10px rgba(219,208,197,0.6);
}

.features_detail .wp-block-image {
	position: relative;
	display: block;
	padding-top: 61.8%;
}

.features_detail .wp-block-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.features_detail h3 {
	font-size: 1.1em !important;
	padding: 0 !important;
	margin-top: 1.5em !important;
}

.features_detail h3::before {
	display: none !important;	
}

@media (max-width: 959px) {
	.bg_aboutImage::before {
		top: auto;
		bottom: 0;
		width: 23em;
      height: 22em;
	}
	.home_about h3 {
		font-size: 1.3em !important;
      line-height: 1.7 !important;
		padding-top: 1.8em !important;
      margin-bottom: 1em !important;
	}
	
	.about_content .wp-block-column:first-child {
		display: block;
	}
	.about_content .wp-block-column:first-child p {
		writing-mode: horizontal-tb;
		text-align: center;
		margin-bottom: 0.2em !important;
	}
	.about_content .wp-block-column:first-child h2 {
		writing-mode: horizontal-tb;
		font-size: 1.4em !important;
		text-align: center;
	}
	
	.boat_content {
		margin-top: 3em;
    margin-bottom: 2.2em;
	}
	.boat_item .wp-block-image + p {
		border-bottom: 1px solid #cbdeec;
		padding-bottom: 0.4em;
	}
	.boat_item .boat_list {
		gap: 0.3em !important;
	}
	
	.features_content {
		max-width: 300px;
		margin: 2.4em auto 0;
		gap: 0.6em !important;
	}
}


/* サービスページ */
.service_boatList {
	padding-bottom: 4em !important;
}

.service_boatList .boat_content {
	margin-top: 0;
}

.service_flow .section_titleBlock + p {
	margin-bottom: 3.8em !important;
}

.flow_content {
	padding-bottom: 2em;
	border-bottom: 1px solid #1971A9;
}

.flow_head {
	gap: 0 !important;
}

.flow_content .wp-block-column:first-child {
	flex-basis: 60% !important;
}
.flow_content .wp-block-column:last-child {
	flex-basis: 40% !important;
}

.flow_head .wp-block-column:first-child {
	flex-basis: 20% !important;
}

.flow_head .wp-block-column:last-child {
	flex-basis: 80% !important;
}

.flow_head .wp-block-image {
	text-align: left !important;
}

.flow_head img {
	width: 4.875em !important;
}

.flow_head h3 {
	color: #09568E !important;
	font-size: 1.4em !important;
	padding: 0 !important;
}

.flow_head h3::before {
	display: none !important;
}

.flow_content .wp-block-column p {
	max-width: 480px !important;
}

@media (max-width: 959px) {
	.flow_head img {
		width: 4em !important;
	}
	.flow_head h3 {
		font-size: 1em !important;
		margin-left: 0.6em !important;
	}
}


/* 会社案内ページ */
.company_greeting {
	padding-bottom: 4em !important;
}

.greeting_content {
	margin-top: 3em !important;
}

.greeting_content h3 {
	padding: 0 !important;
	margin-bottom: 2em !important;
}

.greeting_content h3::before {
	display: none !important;
}


/* お問い合わせページ */
.section_contact .contact_contents {
	margin-top: 2.8em;
}

.section_contact .wp-block-image.contact-telImage {
	max-width: 28em;
	margin-bottom: 3em !important;
	margin-inline: auto;
}

.section_contact .wp-block-image.contact-telImage a {
	transition: opacity .3s ease;
}
.section_contact .wp-block-image.contact-telImage a:hover {
	opacity: .7;
}

.section_contact .contact_form {
	text-align: left;
	margin-top: 1.7em;
}

.section_contact .form dl {
	display: flex;
	margin-bottom: 1em;
}

.section_contact .form dt {
	min-width: 200px;
	padding-top: 0.4em;
}

.section_contact .form dt p {
	font-weight: normal !important;
}

.section_contact .form dt span {
    display: inline-block;
    background: #E68742;
    border-radius: 5px;
    color: #fff;
    font-size: 0.7em;
	margin-right: 0.6em;
    padding: 0.3em 0.7em;
}

/* 任意 */
.section_contact .form dt span.arbitrary {
	background: #CCC;
}

.section_contact .form dd {
	box-sizing: border-box;
	width: calc(100% - 200px);
}

input, select {
  -webkit-appearance: none;
  appearance: none;
}

.section_contact .form input,
.section_contact .form select,
.section_contact .form textarea {
	background-color: #FFFDFA !important;
	width: 100% !important;
	box-shadow: 0 3px 6px rgb(200 185 159 / 12%) !important;
	padding: 0.5em 1em !important;
}

.section_contact .form dd.input_pulldown {
	position: relative;
	width: fit-content !important;
}

.section_contact .form select {
	width: fit-content !important;
	padding-right: 3em !important;
}

.form_input.input_pulldown:after {
	content: '';
  width: 0.5em;
  height: 0.5em;
  border: 0;
  border-bottom: solid 2px #969696;
  border-right: solid 2px #969696;
  transform: rotate(45deg);
  position: absolute;
  top: 0.95em;
  right: 1em;
  margin: auto;
}

::placeholder {
	color: #ccc;
}

.section_contact .form .wpcf7-list-item.first {
	margin: 0 !important;
}

.section_contact .form .wpcf7-list-item label {
	display: flex;
	align-items: center;
}

.section_contact .form input[type="checkbox"] {
	width: auto !important;
	margin-right: 6px !important;
}

input[type="checkbox"] {
  display: none;
}

input[type="checkbox"] + span {
  padding-left: 28px;
  display: inline-block;
  position: relative;
}

input[type="checkbox"] + span::after,
input[type="checkbox"] + span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
}

input[type="checkbox"] + span::before {
  border:1px solid hsla(0,0%,78%,.5);
  background-color: #ffffff;
  height: 20px;
  width: 20px;
  border-radius: 0.2em;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

input[type="checkbox"]+ span::after {
	position: absolute;
	content: "";
	display: block;
	border-bottom: 3px solid #6cb3e3;
    border-left: 3px solid #6cb3e3;
    opacity: 0;
    height: 8px;
    width: 14px;
    transform: translateY(-40%) rotate(-45deg);
    top: 40%;
    left: 3px;
}

input[type="checkbox"]:checked + span::after {
  opacity: 1;
}

.section_contact .form .btn_submit {
	max-width: 18em;
	margin-inline: auto;
	margin-top: 2.3em !important;
}

.section_contact .form input[type="submit"] {
	background-color: #6DA7CC !important;
	border: 1px solid #6DA7CC !important;
	border-radius: 3.5em !important;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif !important;
	font-size: 1.1em;
	padding: 0.85em 0 !important;
	transition: all .3s ease;
}
.section_contact .form input[type="submit"]:hover {
	background-color: #fff !important;
	color: #6DA7CC !important;
}

@media (max-width: 959px) {
	.section_contact.page-contact {
		padding-top: 0em !important;
	}
	.section_contact .contact_contents {
		margin-top: 1.6em;
	}
	.section_contact .wp-block-image.contact-telImage {
		max-width: 18em;
		margin-bottom: 2em !important;
	}
	.section_contact .contact_contents p {
		margin-bottom: 0.7em !important;
	}
	.section_contact .contact_form {
		margin-top: 1.3em;
	}
	.section_contact .form dl {
		display: block;
		margin-top: 1.1em;
	}
	.section_contact .form dd {
		width: 100%;
		margin-top: 0.5em;
	}
	.section_contact .form dd.input_pulldown {
		width: 100% !important;
	}
	.section_contact .form select {
		width: 100% !important;
	}
	.section_contact .form textarea {
		height: 10em;
	}
	.section_contact .form .btn_submit {
		max-width: 14em;
		margin-top: 1.1em !important;
	}
	.section_contact .form input[type="submit"] {
		padding: 0.55em 0 !important;
	}
	.wpcf7-list-item {
		min-width: 152px;
	}
	.wpcf7-list-item:nth-of-type(3) {
		margin-left: 0 !important;
	}
}