@charset "UTF-8";
/*
Theme Name: Custom Theme
Template: basic
Author: Trendmake
Copyright: (c) 2023 Trendmake
Version: 20231228
*/



/* custom icon */
@font-face {
	font-family: 'icomoon';
	src:  url('fonts/icomoon.eot?klagb8');
	src:  url('fonts/icomoon.eot?klagb8#iefix') format('embedded-opentype'),
	  url('fonts/icomoon.ttf?klagb8') format('truetype'),
	  url('fonts/icomoon.woff?klagb8') format('woff'),
	  url('fonts/icomoon.svg?klagb8#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
  }
  
  [class^="icon-"], [class*=" icon-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'icomoon' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
  
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
  }
  
  .icon-chevron-up:before {
	content: "\e900";
  }
  .icon-phone:before {
	content: "\e901";
  }
  .icon-mail:before {
	content: "\e902";
  }
  .icon-paperplane:before {
	content: "\e903";
  }
  .icon-mail-envelope-closed:before {
	content: "\e904";
  }
  .icon-envelope:before {
	content: "\e905";
  }
  .icon-location:before {
	content: "\e906";
  }
  .icon-phone1:before {
	content: "\e907";
  }
  .icon-home:before {
	content: "\e908";
  }
  .icon-phone2:before {
	content: "\e942";
  }
  .icon-envelop:before {
	content: "\e945";
  }
  .icon-location1:before {
	content: "\e947";
  }
  .icon-amazon:before {
	content: "\ea87";
  }
  .icon-facebook2:before {
	content: "\ea91";
  }
  .icon-instagram:before {
	content: "\ea92";
  }
  

/*******************************
Common Setting
*******************************/
body .site{
	font-size: 15px;
	line-height: 2;
	font-family: "Noto Sans JP", serif;
  font-weight: 500;
  font-style: normal;
	color: #0a376e;
}
body #content {
	padding: 0;
}
body .pagewidth{
	max-width: 1200px;
	width: 100%;
}
body .row_inner{
	width :100%;
}
body .site a{
	color: #0a376e;
	text-decoration: underline;
}
/* Those Classes change row_inner width,
   when you set the Themify Builder > Row Options > Row Width to Default and Boxed. */
/*.module_row > .row_inner,
.module-layout-part .module_row.fullwidth_row_container > .row_inner {
	width: 100%;
}*/

/* table setting */
body table{
	width: 100%;
    border-collapse: collapse;
    box-sizing: border-box;
}

/*******************************
Header Fix
*******************************/
body #header.header {
	height: auto;
	border-bottom: none;
}

#headerwrap #header{
	padding: 30px 50px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Header Site Branding */
body #site-logo,
body #site-description {
	position: static;
}
body #site-logo {
	line-height: 1;
}
body #site-logo a,
body #site-logo a img {
	display: block;
}
/* Search Form in Header */
body #headerwrap #header #searchform {
	position: static;
}
body #headerwrap #header #searchform #s {
	float: none;
}

.h1{
	position: fixed;
	right: 0;
	top: auto;
	bottom: 30px;
	z-index: 22;
}
.h1 ul{
	display: block;
	margin: 0;
}
.h1 ul li{
	display: block;
	margin: 10px 0 0 0;
	writing-mode: tb;
}
.h1 ul li a{
	display: block;
    line-height: 1;
    border: 2px solid #0a376e;
    border-right: 0;
    background: white;
    color: #0a376e;
    font-weight: bold;
    padding: 30px 20px;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    height: 230px;
    text-align: center;
    box-sizing: border-box;
	text-decoration: none;
	letter-spacing: 2px;
}
/* .h1 ul li:first-child a{
	background: #0a376e;
	color: white;
} */

/*******************************
Footer Fix
*******************************/
body #footer {
	border-top: none;
	clear: none;
	padding: 0;
}
body #pc-backtop {
	display: block;
	position: fixed;
	z-index: 500;
	bottom: 50px;
	right: 50px;
	opacity: 0;
	transition: opacity .3s;
	width: 32px;
	height: 32px;
	font-size: 30px;
}
body #pc-backtop.is-visible {
	opacity: 1;
}
body #pc-backtop.is-visible:hover {
	opacity: .7;
}
body #pc-backtop a,
body #pc-backtop a img {
	display: block;
}
body .sp-footer-icons-container {
	display: none;
	justify-content: space-around;
	align-items: center;
	position: fixed;
	z-index: 600;
	right: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	padding-bottom: calc( env(safe-area-inset-bottom) / 2 );
	background: #4f4f4f;
}

body #footer .sp-footer-icons-container a span{
	display: block;
	font-size: 20px;
	margin-bottom: 8px;
}
body #footer .sp-footer-icons-container a {
	display: block;
	width: 100%;
	line-height: 1;
	text-align: center;
	background-color: #0A376E;
	text-decoration: none;
	font-size:10px;
	padding: 10px 0 6px;
	border-left:1px solid #fff;
	color: white;
}
body #footer .sp-footer-icons-container a:first-child{
	border-left:0;
}


/*******************************
Contact form
*******************************/
.wpcf7 table tr th{
	width:30%;
	text-align: left;
}
.wpcf7 table tr th,
.wpcf7 table tr td{
	padding:10px 15px
}
.wpcf7 table tr td input,
.wpcf7 table tr td select,
.wpcf7 table tr td textarea{
	background-color: #f3f3f3;
    border: solid 1px #ddd;
    padding: 6px 10px;
    border-radius: 5px;
	width:100%;
	max-width:100%;
	box-sizing:border-box;
}
.wpcf7 table tr td span input{
	margin-top:10px;
}
.wpcf7 table tr td span:first-child input{
	margin-top:0px;
}
.wpcf7 table tr td input[type="radio"],
.wpcf7 table tr td input[type="checkbox"]{
	width:auto;
}
.wpcf7 .submit_btn{
	display:block;
}
.wpcf7 .submit_btn input[type="submit"]{
	display:block;
	width:250px;
	margin:0 auto;
}

/* =============================================
	menu settings
=============================================　*/
#main-menu{
	display: flex;
	align-items: center;
	margin: 0;
}
#main-menu li{
	display: block;
	margin: 0 0 0 35px;
}
#main-menu li a{
	color: #0a376e;
	font-size: 15px;
	line-height: 1;
	text-decoration: none;
	font-weight: bold;
	display: block;
}
#main-menu li:not(li:last-child) a {
    letter-spacing: 0.1em;
}
#main-menu li.tel a{
	font-size: 24px;
	background: #f1dc65;
	padding: 17px 30px;
	border-radius: 100px;
}
#main-menu li.tel a:before{
	content: "TEL";
	display: inline-block;
	vertical-align: bottom;
	margin-right: 10px;
	font-size: 15px;
}
/* =============================================
	mobile menu settings
=============================================　*/
/* Mobile Menu Button */
#menu-button{
	visibility:hidden;
	opacity:0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 900;
	top: 0;
	right: 0;
	width: 48px;
	height: 48px;
	background-color: #0A376E;
	color: white;
}
#menu-button.nav-on {
	visibility:visible;
	opacity:1;
}
#menu-button .ham-lines {
	position: relative;
	margin: 0 auto;
	width: 32px;
	height: 32px;
}
#menu-button .ham-lines span,
#menu-button .ham-lines::before,
#menu-button .ham-lines::after {
	position: absolute;
	display: block;
	right: 0;
	left: 0;
	margin: 0 auto;
	width: 28px;
	height: 2px;
	background-color: #fff;
	border-radius: 1px;
}
#menu-button .ham-lines span {
	bottom: 15px;
	transition: all .25s .25s;
	opacity: 1;
}
#menu-button .ham-lines::before,
#menu-button .ham-lines::after {
	content: "";
}
#menu-button .ham-lines::before{
	bottom: 24px;
	animation: menu-bar01 .75s forwards;
}
#menu-button .ham-lines::after {
	bottom: 6px;
	animation: menu-bar03 .75s forwards;
}
#menu-button .ham-text {
	font-size: 12px;
	line-height: 1;
}
#menu-button.is-active .ham-lines span {
	opacity: 0;
}
#menu-button.is-active .ham-lines::before {
	animation: active-menu-bar01 .5s forwards;
}
#menu-button.is-active .ham-lines::after {
	animation: active-menu-bar03 .5s forwards;
}
@keyframes menu-bar01 {
	0% {
		transform: translateY(9px) rotate(45deg);
	}
	50% {
		transform: translateY(9px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
@keyframes menu-bar03 {
	0% {
		transform: translateY(-9px) rotate(-45deg);
	}
	50% {
		transform: translateY(-9px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
@keyframes active-menu-bar01 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(9px) rotate(0);
	}
	100% {
		transform: translateY(9px) rotate(45deg);
	}
}
@keyframes active-menu-bar03 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(-9px) rotate(0);
	}
	100% {
		transform: translateY(-9px) rotate(-45deg);
	}
}
/* Mobile Menu Button end */

/* =============================================

	Common settings

============================================= */
/* table border and paddings */
table th,
table td{
	border: 1px solid #424242;
	padding: 10px;
}
img,
iframe{
	vertical-align: top;
}
.top_row1 .module-image{
	text-align: right;
}
/* body .top1.module{
	position: absolute;
	bottom: 120px;
	left: 5.7vw;
}
.top1.module ul{
	display: block;
	margin: 0;
}
.top1.module ul li{
	float: left;
	clear: both;
	display: block;
	padding: 13px 50px;
	font-weight: 500;
	font-size: 60px;
	line-height: 1.5;
	letter-spacing: 0.1em;
	color: #0a376e;
	background: white;
	margin: 30px 0 0 0;
} 
body .top2.module{
	position: absolute;
	bottom: 50px;
	left: 5.9vw;
	color: #0a376e;
	font-size: 22px;
	padding: 0 50px;
	letter-spacing: 0.12em;
}*/
.module.top1 {
    font-size: 27px;
/*     font-family: "Zen Maru Gothic", serif; */
    font-weight: bold;
	letter-spacing: 0.1em;
    margin-bottom: 15px;
}
#pagewrap .module.font-zen{
	font-family: "Zen Maru Gothic", serif;
	font-weight: 600;
	font-size: 34px;
}
.module.top2 {
    font-size: 13px;
    letter-spacing: 0.12em;
}
p:last-of-type{
	margin-bottom: 0;
}

.top3.module{
	text-align: center;
	background: white;
	border: 4px solid #0a376e;
	border-radius: 20px;
	padding: 40px 10px;
	margin-bottom: 40px;
}
.top3.module.module-image .image-wrap{
	height: 164px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.top3.module.module-image .image-content{
	margin: 0;
}
.top3.module.module-image .image-title{
	font-size: 18px;
	line-height: 30px;
	letter-spacing: 0.1em;
	margin: 20px 0 0 0;
}
#pagewrap .btn1 a{
	display: inline-block;
	width: 260px;
	box-sizing: border-box;
	line-height: 54px;
	border-radius: 50px;
	padding: 0 40px;
	color: white;
	background: url(../../uploads/top9.png) right 35px center no-repeat #0a376e;
	text-align: left;
	border: 2px solid #0a376e;
	text-decoration: none;
	font-size: 13px;
}
#pagewrap .btn1 a:hover{
	color: #0a376e;
	background-color: white;
	text-decoration: none;
}
.post1.module .post{
	border: 4px solid #0a376e;
	margin-bottom: 40px;
	border-radius: 20px;
	overflow: hidden;
}
.post1.module .post .post-image{
	text-align: center;
	margin: 0 0 30px 0;
	border-bottom: 4px solid #0a376e;
}
.post1.module .post .post-content{
	padding: 40px 30px 30px 30px;
	position: relative;
}
.post1.module .post .post-meta{
	display: block;
	position: absolute;
	top: 0;
	left: 30px;
}
.post1.module .post .post-category{
	margin: 0;
	line-height: 25px;
	text-align: center;
	display: block;
	padding: 0;
	text-align: center;
	width: 75px;
	font-size: 13px;
}
.post1.module .post .post-category a{
	color: white;
	background: #f2635f;
	display: block;
	border-radius: 100px;
	font-size: 13px;
}
.post1.module .post.cat-4 .post-category a{
	background: #74c66d;
}
.post1.module .post .post-date{
	position: absolute;
	line-height: 1;
	top: 0;
	left: 120px;
	line-height: 25px;
	color: #0a376e;
	font-size: 15px;
}
.post1.module .post .post-title{
	margin: 0;
	font-size: 13px;
	line-height: 2;
	letter-spacing: 0.1em;
}
.post1.module .post .post-title a{
	color: #0a376e;
	text-decoration: underline;
}
.post-meta .post-author:after, .post-meta .post-category:after, .post-meta .post-tag:after{
	display: none !important;
}

.f_row1{
	color: white;
	background: #0a376e;
	padding-top: 150px;
	padding-bottom: 110px;
}
#pagewrap .f_row1 .row_inner{
	display: flex;
	max-width: 1600px;
	justify-content: space-between;
}
.f_row1 .col3-1.first{
	width: 16.25%;
}
.f_row1 .col3-1{
	width: 33.8%;
}
.f_row1 .col3-1.last{
	width: 40.6%;
}
.f1.module ul{
	display: flex;
	margin: 0;
	align-items: center;
	justify-content: center;
	flex-direction: column-reverse;
}
.f1.module ul li{
	display: block;
	margin: 0 10px;
}

.f2.module{
	display: flex;
	align-items: flex-end;
}
.f2.module .module-title{
	margin: 0;
	padding: 0 10px 0 0;
	font-size: 15px;
	line-height: 1;
	padding-bottom: 10px;
	border-bottom: 2px solid #f1dc65;
}
.f2.module .tb_text_wrap{
	font-size: 26px;
	line-height: 1;
	padding-bottom: 10px;
	border-bottom: 2px solid #f1dc65;
}
.f3.module ul{
	display:flex;
	justify-content: space-between;
	margin: 30px 0 40px 0;
}
.f3.module ul li{
	display: block;
	margin: 0 ;
}
.footer_map iframe{
	border-radius: 30px;
}
/* #pagewrap .f3.module ul li:nth-child(1) a{
	border-color: white;
	background-color: #0a376e;
}
#pagewrap .f3.module ul li:nth-child(1) a:hover{
	color: white;
} */
#pagewrap .f3.module ul li a{
	border-color: white;
	background-color: white;
	color: #0a376e;
	background-image: url(../../uploads/top18.png);
}
.f4.module ul{
	display: block;
	margin: 0;
}
.f4.module ul li{
	display: block;
	margin-bottom: 25px;
	line-height: 1;
}
.f4.module ul li a{
	color: white;
	text-decoration: none;
}

.f_row2{
	max-width: 400px;
}

body .f5.module{
	position: absolute;
	bottom: 0;
	left: 0;
	margin-bottom: 40px;
	letter-spacing: 0.05em;
	font-size: 13px;
}
.submain.module.module-image{
	float: right;
}
.submain.module.module-image .image-wrap{
	text-align: right;
}
.submain.module.module-image .image-content{
	margin: 0;
	padding: 0;
	position: absolute;
	bottom: 40px;
	left: 40px;
}
.submain.module.module-image .image-title{
	margin: 0;
	padding: 0;
	line-height: 90px;
	font-weight: 500;
    letter-spacing: 0.1em;
	color: white;
	font-size: 32px;
	background: #0a376e;
	border-radius: 20px;
	min-width: 470px;
    width: 100%;
    text-align: center;
}
.title01.module .module-title{
	margin: 0;
	padding: 0 0 0 50px;
	font-size: 28px;
	background: url(../../uploads/about3.png) left no-repeat;
	letter-spacing: 0.08em;
	font-weight: 500;
}
.about1.module p{
	margin-bottom: 30px;
}
.about_row1 .col3-1{
	    border: 4px solid #0a376e;
	background: white;
	    border-radius: 20px;
	margin-bottom: 50px;
}
.about_row1 .module-image{
	border: 0;
	margin-bottom: 0;
	padding: 40px 26px;
}
.about_row1 .top3.module.module-image .image-title{
	margin-bottom: 10px;
}
.about_row1 .module-image .image-caption{
	text-align: left;
}

.begin_row1{
	padding-top: 50px;
}
.begin_row1 .row_inner{
	display: flex;
}
#content .begin_row1 .col4-1{
	width: 12.7%;
}
#content .begin_row1 .col4-3{
	width: 84.8%;
}
.begin_row1 .col4-1 .module-image{
	text-align: center;
}

#content .begin1 .accordion-title{
	margin-bottom: 25px;
}
#content .begin1 li .accordion-title a{
	color: #0a376e;
	font-size: 18px;
	line-height: 30px;
	padding: 22px 30px;
	border: 2px solid #0a376e;
	border-radius: 20px;
	background: url(../../uploads/begin7.png) right 30px center no-repeat #fff;
}
#content .begin1 .builder-accordion-active .accordion-title a{
	background: url(../../uploads/begin7-1.png) right 30px center no-repeat #fff;
}
.begin1 .accordion-title a:before{
	content: "Q.";
	display: inline;
}
#content .begin1 .accordion-content{
	padding: 0 30px 40px 30px;
/* 	display: block; */
	line-height: 30px;
}
.access1 table tr td{
	border: 0;
	vertical-align: top;
	border-bottom: 2px solid #d6d6d6;
	padding: 15px 0;
}
.access1 table tr td:first-child{
	width: 170px;
}

body .access2.module{
	display: inline-flex;
	vertical-align: top;
	align-items: center;
	justify-content: center;
	padding: 0 50px;
	margin-bottom: 30px;
	background: 
		url(../../uploads/access2.png) left no-repeat,
		url(../../uploads/access3.png) right no-repeat;
}
.access2.module .image-wrap{
	margin: 0;
	min-width: 35px;
}
.access2.module .image-content{
	margin: 0;
	padding: 0;
}
.access2.module .image-title{
	font-size: 20px;
	margin: 0 0 0 20px;
}
.music1.module ul{
	display: flex;
	margin: 0;
	justify-content: center;
	align-items: center;
}
.music1.module ul li{
	display: block;
	margin: 0 10px 20px 10px;
}
.music1.module img{
	margin: 0;
}
.music_row1{
	border-radius: 30px;
	border: 4px solid #0a376e;
	padding: 50px 10px;
	margin-bottom: 150px;
}

#content .wpcf7 th,
#content .wpcf7 td{
	border: 0;
	padding: 15px 0;
	vertical-align: top;
}
#content .wpcf7 th{
	width: 250px;
}
#content .wpcf7 th span{
	display: inline-block;
	width: 40px;
	line-height: 20px;
	border: 1px solid #0a376e;
	text-align: center;
	box-sizing: border-box;
	margin-right: 15px;
	font-size: 13px;
}
#content .wpcf7 th span.require{
	background: #0a376e;
	color: white;
}
#content .wpcf7 input,
#content .wpcf7 select,
#content .wpcf7 textarea{
	border: 0;
	border-radius: 0;
	background: #ededed;
	display: block;
	box-sizing: border-box;
	margin: 0;
}
#content .wpcf7 input.wpcf7-date,
#content .wpcf7 select{
	max-width: 300px;
}
#content .wpcf7 td.twoinput p {
	display: flex;
	align-items: center;
}
#content .wpcf7 td.twoinput .wpcf7-form-control-wrap{
	display: block;
	max-width: 300px;
}
#content .wpcf7 td.twoinput .wpcf7-form-control-wrap + .wpcf7-form-control-wrap{
	margin-left: 40px;
}
#content .wpcf7 .wpcf7-submit{
	display: block;
	width: 256px;
	box-sizing: border-box;
	line-height: 54px;
	border-radius: 50px;
	padding: 0 40px;
	color: white;
	background: url(../../uploads/top9.png) right 35px center no-repeat #0a376e;
	text-align: left;
	border: 2px solid #0a376e;
	text-decoration: none;
	margin: 35px auto 0 auto;
}
#content .wpcf7 .wpcf7-submit:hover{
	color: #0a376e;
	background-color: white;
	text-decoration: none;
}

.reverse_row1{
	border-radius: 30px;
	border: 4px solid #0a376e;
	padding: 70px 100px 20px 100px;
	margin-bottom: 100px;
}

.revese1{
	height: 350px;
	overflow-y: scroll;
	padding-right: 20px;
}

.uo_row1 .row_inner{
	border-radius: 30px;
	background: white;
	border: 2px solid #0a376e;
	padding: 60px 0 0 0;
}
.uo_row1 .subrow_inner{
	max-width: 850px;
	margin: 0 auto;
}
body .uo1.module{
	position: absolute;
    top: -60px;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 0 60px;
    background: white;
	font-size: 22px;
	line-height: 1;
}
body .uo1_1.module{
	background: linear-gradient( to bottom, #f7f7f7 0 , #f7f7f7 50%, white 0);
}
.uo2.module{
	height: 80px;
	text-align: center;
	border-radius: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: white;
	font-size: 12px;
}
.uo3.module{
	text-align: center;
	margin: 10px 0 40px 0;
}
.uo_row2 .subrow_inner{
	max-width: 100%;
	display: flex;
}
.uo_row2 .subrow_inner .col5-1{
	width: 31.8%;
	padding-bottom: 40px;
}
.uo_row2 .subrow_inner .col5-1:nth-child(even){
	width: 2.3%;
}
.uo4.module{
	height: 125px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 30px;
}
.uo5.module{
	padding: 0 40px;
}
.uo5.module .module-title{
	text-align: center;
	font-size: 18px;
	font-weight: 500;
	margin: 0 0 15px 0;
}

.post2.module .post{
	margin-bottom: 40px;
}
.post2.module .post .module_row{
	display: none;
}
.post2.module .post .module_row.excerpt_row{
	display: block;
}
.post2.module .post{
	border: 4px solid #0a376e;
	border-radius: 20px;
}
.post2.module .post .post-image{
	margin: 0;
	border-bottom: 4px solid #0a376e;
}
.post2.module .post .post-image img{
	display: block;
}
.post2.module .post .post-content{
	padding: 25px 30px 40px 30px;
}
.post2.module .post .post-title{
	margin: 0 0 10px 0;
	font-size: 18px;
}


.list1.module{
	display: flex;
	align-items: center;
}
.list1.module.module-image .image-wrap{
	margin: 0 13px 0 0;
	font-size: 0;
}
.list1.module.module-image .image-content{
	margin: 0;
	padding: 0;
}
.list1.module.module-image .image-title{
	font-weight: normal;
	font-size: 15px;
	margin: 0;
}


body.single .post.cat-6 .post-image,
body.single .post.cat-6 .post-title,
body.single .post.cat-6 .post-date,
body.single .post.cat-6 .post-meta,
body.single .excerpt_row{
	display: none !important;
}


.list2.module table tr td{
	vertical-align: top;
	border: 0;
	border-bottom: 2px solid #d6d6d6;
	padding: 20px 0;
}
.list2.module table tr td:first-child{
	width: 175px;
}

.list3.module .gallery-showcase-image{
	margin: 0 0 20px 0;
	text-align: center;
}
.list3.module .gallery-showcase-image img{
	width: 100%;
	min-height: 435px;
	border-radius: 50px;
}
.list3.module.layout-showcase .gallery-images{
	display: flex;
	overflow-x: scroll;
	padding-bottom: 15px;
}
.list3.module.layout-showcase .gallery-images img{
	max-width: 170px;
	min-height: 130px;
	object-fit: cover;
	border-radius: 30px;
	margin: 0 25px 0 0;
}

body .list4.module{
	position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
	margin-bottom: 40px;
}
body.archive .page-title{
	display: none;
}

.blog1.module ul{
	display: flex;
	margin: 150px 0 50px 0;
}
.blog1.module ul li{
	display: block;
	margin: 0 20px 0 0;
}
.blog1.module ul li a{
	display: block;
	color: white;
	line-height: 30px;
	text-align: center;
	width: 95px;
	background: #74c66d;
	border-radius: 50px;
	text-decoration: none;
}
body.archive .post{
	border: 4px solid #0a376e;
	border-radius: 20px;
	    margin-bottom: 50px;
}
body.archive .post .post-image{
	border-bottom: 4px solid #0a376e;
	margin: 0;
}
body.archive .post .post-image img{
	display: block;
	width: 100%;
}
body.archive .post .post-content{
	padding: 30px;
	position: relative;
}
body.archive .post .post-title{
	font-size: 15px;
	line-height: 2;
	margin: 15px 0 0 0;
}
body.archive .post .post-author,
body.single .post .post-author{
	display: none;
}
body.archive .post .post-meta{
	position: absolute;
	top: 30px;
	left: 30px;
}
body.archive .post .post-date{
	line-height: 25px;
	font-size: 15px;
	display: block;
	padding: 0 0 0 95px;
	margin: 0;
}
body.archive .post .post-category a,
body.single .post .post-category a{
	display: block;
    color: white;
    line-height: 25px;
    text-align: center;
    width: 95px;
    background: #74c66d;
    border-radius: 50px;
    text-decoration: none;
	width: 75px;
}
body.archive .post.cat-5 .post-category a,
body.single .post.cat-5 .post-category a{
	background: #f2635f;
}
body .pagenav a:hover {
    background: #fff;
    color: #0a376e;
}
body .pagenav{
	text-align: center;
	padding: 20px 0 50px 0;
}
body .pagenav a,
body .pagenav span{
	line-height: 50px;
	border-radius: 18px;
	padding: 0;
	min-width: 40px;
	min-height: auto;
	border: 2px solid #0a376e;
	text-align: center;
	background: #0a376e;
	text-decoration: none !important;
	color: white;
}
body .pagenav span{
	background: white;
	color: #0a376e;
}
body.archive #content{
	padding-bottom: 100px;
}
body.single .post .post-content{
	position: relative;
	margin: 150px 0 0 0;
}
body.single .post .post-meta{
	position: absolute;
	top: 0;
	left: 0;
}
body.single .post .post-date{
	margin: 0 0 0 100px;
	line-height: 25px;
	font-size: 15px;
	display: block;
}
body.single .post .post-title{
	font-size: 22px;
	padding: 15px 0;
	border-bottom: 2px solid #0a376e;
	margin-bottom: 40px;
}
body.single .post{
	margin-bottom: 0;
}
body.single .backbtn{
	display: block;
	max-width: 257px;
	width: 100%;
	margin: 50px auto 150px auto;
}

body.archive .entry-content{
	display: none;
}
.sp-br{
	display: none;
}




/* 20250313 */
/* module menu button visible */
		#menu-button{
			visibility:visible;
			opacity:1;
		}
		
		/* Mobile Menu Container ここを調整すると、メニューボタンクリック後の動作を調整できる */
		#main-menu-container {
	position: fixed;
		z-index: 700;
		top: 0;
		left: -100vw;
		right: auto;
		bottom: auto;
		overflow-y: auto;
		background-color: #f1f1f1;
		display: block;
		width: 100vw;
		height: 100vh;
		transition: .3s linear;
		max-width: 100vw;
		padding: 2%;
		height: 100vh;
		box-sizing: border-box;
		}
		#main-menu-container.is-active{
			left: 0;	
		}
		/* Mobile Menu Container ここを調整すると、メニューボタンクリック後の動作を調整できる */
	
	}
	
	#main-menu{
		display: block;
		margin: 50px 0 0 0;
	}
	#main-menu li{
		margin: 0 0 10px;
		text-align: center;
	}
	#main-menu li a{
		line-height: 1.5;
		padding: 15px 0;
		border-bottom: 1px solid #0a376e;
	}
	#main-menu li.tel a{
		margin-top: 20px;
		display: inline-block;
		vertical-align :top;
	}
/* #menu-button {
    background: none;
    right: 45px;
    top: 45px;
} */
.header-right {
    display: flex;
}
#menu-button {
	background: transparent;
	top: 45px;
    right: 45px;
}
#menu-button .ham-lines span, #menu-button .ham-lines::before, #menu-button .ham-lines::after {
    background: #0A376E;
}
#menu-button.is-active .ham-lines span, #menu-button.is-active  .ham-lines::before, #menu-button.is-active  .ham-lines::after{
	background: #fff;
}
#main-menu-container {
    background: #0A376E;
    padding-top: 10%;
}
#main-menu li a {
    color: #fff;
}
#main-menu {
    flex-direction: column;
}
#main-menu li a {
    font-weight: 500;
    padding: 20px 0;
}
body .header-tel a {
    background: #f1dc65;
    border-radius: 50px;
    font-size: 18px;
    letter-spacing: 0.05em;
    line-height: 30px;
	margin-right: 55px;
    padding: 8px 20px;
    text-decoration: none;
}
body .header-tel a span {
    font-size: 13px;
    margin-right: 10px;
}
#main-menu li.nav-logo a {
    background: url(../../uploads/nav-logo.png)no-repeat;
    background-size: contain;
    color: transparent;
}

.module_subrow.main_text {
    position: absolute;
    right: 100px;
    top: 50%;
    transform: translateY(-50%);
    width: fit-content;
    z-index: 1;
}
.module.top1{
	font-size: max(3.125vw, 20px);
	line-height: 1.4;
	margin-bottom: 30px;
}
.module.top2{
	font-size: max(1.146vw, 10px);
}

/* =============================================

	Media Query

============================================= */
@media screen and (max-width: 1400px) { /* for iPad pro landscapes */

}

@media screen and (max-width: 1200px) { /* for tablet landscapes */

	#pagewrap {
		position: relative;
		padding-bottom: 51px;
	}

	#header.header {
		padding-top: 0;
	}

	/* mobile menu visibility */
	body #header #main-nav{
		display: block;
	}

	/* module menu button visible */
	#menu-button{
		visibility:visible;
		opacity:1;
	}
	
	@media screen and (max-width: 1200px) { /* for tablet landscapes big */

		#pagewrap {
			position: relative;
			padding-bottom: 51px;
		}
	
		#header.header {
			padding-top: 0;
		}
	
		
	
	body .pagewidth{
		width: 94%;
	}
	.top_row1 .module-image{
		padding-left: 3vw;
	}
/* 	body .top2.module{
		left: 5.7vw;
		padding-left: 0;
	} */
	#pagewrap .f_row1 .row_inner{
		max-width: 94%;
		flex-wrap:wrap;
	}
	#pagewrap .f_row1 .col3-1{
		width: 100%;
	}
	#pagewrap .f_row1 .col3-1.module_column:nth-of-type(2){
		text-align: center;
	}
	.f2.module{
		justify-content: center;
	}
	.f3.module ul{
		display: block;
	}
	.f3.module ul li + li{
		margin-top: 20px;
	}
	.f_row2{
		max-width: 100%;
	}
	body .f5.module{
		position: static;
		padding-top: 20px;
	}
	#headerwrap #header{
		justify-content: center;
	}
	.top1.module ul li{
		font-size: 40px;
	}
}

@media screen and (max-width: 1024px) { /* for tablet landscape */

	/* style for contact forms, if do not use to delete please
	コンタクフォームのテーブル調整　不要なら消す*/
	.wpcf7 table tr th,
	.wpcf7 table tr td{
		width:100%;
		display:block;
		padding: 10px 0px;
	}
	.wpcf7 table tr th{
		padding-bottom:0;
	}
	/* style for contact forms, if do not use to delete please
	コンタクフォームのテーブル調整　不要なら消す*/
	body .sp-footer-icons-container{
		display: flex;
	}
	#pc-backtop{
		display: none;
	}
}

@media screen and (max-width: 768px) { /* for tablet portrate */
	.h1{
		display: none;
	}
	.top_row1 .module-image{
		padding-left: 0;
		margin: 0 0 0 3vw;
        border-radius: 20px 0 0 20px;
        overflow: hidden;
	}
	.top1.module ul li{
		font-size: 30px;
		padding: 10px 20px;
	}
	body .top1.module,
	body .top2.module{
/* 		position: static;
		padding: 0 3%; */
	}
	.top1.module ul li{
		padding: 0;
		margin: 10px 0 0 0;
		text-align: center;
	}
	.f_row1{
		padding-bottom: 60px;
	}
	.submain.module.module-image{
		float: none;
		text-align: center;
		margin:0 3vw;
	}
	.submain.module.module-image img{
		border-radius: 20px;
		height: 170px;
        object-fit: cover;
	}
/* 	.submain.module.module-image .image-content{
		position: static;
		padding: 30px 0 0 0;
		text-align: left;
	} */
	.submain.module.module-image .image-title{
		font-size: 30px;
		line-height: 2;
		padding: 0 20px;
		display: inline-block;
		vertical-align: top;
		border-radius: 10px;
	}
	.begin_row1 .row_inner{
		display: block;
	}
	#content .begin_row1 .col4-1,
	#content .begin_row1 .col4-3{
		width: 100%;
	}
	#content .begin1 .accordion-content{
		display: none;
	}
	.revese1{
		padding-right: 0;
	}
	.reverse_row1{
		padding: 70px 15px 20px 15px;
	}
	#content .wpcf7 th,
	#content .wpcf7 td{
		display: block;
		width: 100%;
	}
	#content .wpcf7 th{
		padding-bottom: 0;
	}
	#content .wpcf7 td.twoinput p{
		display: block;
	}
	#content .wpcf7 input.wpcf7-date,
	#content .wpcf7 td.twoinput .wpcf7-form-control-wrap,
	#content .wpcf7 select{
		max-width: 100%;
	}
	#content .wpcf7 td.twoinput .wpcf7-form-control-wrap + .wpcf7-form-control-wrap{
		margin-left: 0;
		margin-top: 10px;
	}
	.uo2.module{
		max-width: 160px;
		margin: 0 auto;
	}
	.uo_row2 .subrow_inner{
		display: block;
	}
	#content .uo_row2 .subrow_inner .col5-1{
		width: 100%;
		text-align: center;
	}
	.uo_row2 .subrow_inner .col5-1:nth-child(even) .module-image img{
		transform: rotate(90deg);
	}
	body .uo1.module{
/* 		position: static;
		transform: none;*/
		text-align: center;
		padding: 0 10px;
/* 		margin-bottom: 40px; */
	}
	body .list4.module{
		position: static;
		margin-top: 40px;
	}
	.list3.module .gallery-showcase-image img{
		min-height: auto;
	}
	.list3.module.layout-showcase .gallery-images img{
		max-width: 100px;
		min-height: auto;
        max-height: 75px;
        margin: 0 15px 0 0;
        border-radius: 10px;
	}
	.submain.module.module-image .image-content {
		bottom: 20px;
		left: 10px;
	}
	#menu-button {
    right: 10px;
}
	
	
	
}

@media screen and (max-width: 680px) { /* for mobile */
	.f_row1{
		padding-bottom: 20px;
	}
	.submain.module.module-image .image-title{
		font-size: 20px;
		min-width: auto;
        width: auto;
	}
	#content .begin1 .accordion-title a{
		padding: 10px 20px 10px 10px;
		background-position: right 10px center;
	}
	.access1 table tr td:first-child{
		width: 150px;
	}
	.music1.module ul{
		flex-direction: column;
	}
	#footerwrap iframe{
		height: 340px;
	}
	.sp-br{
		display: block;
	}
	.top3.module.module-image .image-wrap {
		height: 70px;
	}
	.top3.module.module-image .image-wrap img {
		max-height: 70px;
		object-fit: contain;
	}
	.top3.module {
		padding: 30px 10px 30px 15px;
	}
	.module-divider.solid {
		margin-top: 20px!important;
		margin-bottom: 10px!important;
	}
	.f_row1 {
		padding-top: 80px;
	}
	.f1.module ul {
		margin-bottom: 10px;
	}
	.title01.module .module-title{
		font-size: 20px;		
	}
	body .uo1.module {
		font-size: 20px;
		white-space: nowrap;
	}
	#content .begin1 .builder-accordion-active .accordion-title a{
		background-position: center right 13px;
	}
	#content .begin1 li .accordion-title a {
		background-position: center right 13px;
		padding: 15px 23px 15px 15px;
	}
	.music_row1{
		margin-bottom: 80px;
	}
	.blog1.module ul {
		margin: 80px 0 30px;
	}
	body.archive #content {
		padding-bottom: 40px;
	}
	body.single .post .post-content {
		margin-top: 80px;
	}
	body.single .post .post-title {
		margin-bottom: 20px;
	}
	body.single .backbtn {
		max-width: 230px;
		margin-bottom: 80px;
	}
	.reverse_row1 {
		padding: 30px 15px;
	}
	.top1.module ul li {
		font-size: 26px;
		padding: 0 10px;
	}
	body .top2.module {
		font-size: 10px;
/* 		left: 20px;
		bottom: 25px; */
	}
/* 	body .top1.module {
		left: 0px;
		bottom: 55px;
	} */
	body #site-logo a{
		max-width: 70%;
		margin: 0 auto;
	}
	.header-tel {
		display: none;
	}
	.header-right {
		position: fixed;
		top: 10px;
		right: 10px;
		z-index: 9999;
	}
	#main-menu li a {
		padding: 10px 0;
	}
	#main-menu li {
		margin-bottom: 20px;
	}
	#main-menu-container {
		padding-top: 80px;
	}
	#pagewrap .f_row1 .row_inner{
		flex-direction: column;
	}
	#pagewrap .module.font-zen {
		font-size: 22px;
		line-height: 1;
	}
	.f1.module ul{
/* 		flex-direction: row-reverse; */
	}
	.module.top1{
		margin-bottom: 5px;
	}
	.module_subrow.main_text {
		right: 10px;
	}
	.module_subrow.main_text img {
		max-width: 125px;
	}
	.module_subrow.main_text .image-wrap {
		float: none;
		margin: 0 auto 5px;
		text-align: center;
	}
	body #pagewrap .module.top1,body .top2.module {
		text-align: center;
	}
	body #pagewrap .module.top1{
		margin-bottom: 15px;
	}
	#pagewrap .f_row1 .ft-icon .row_inner {
		flex-direction: row;
		justify-content: flex-start;
		max-width: 100%;
	}
	.module_subrow.ft-logo-wrap {
		max-width: 230px;
		margin: 0 auto;
	}

}
@media screen and (max-width: 390px) { /* for mobile small */
	
}
