@charset "utf-8";

.cf:after {
content:" ";
display: block;
clear: both;
}

.view-pc {
display: block;
}
.view-sp {
display: none;
}

@media only screen and (max-width: 850px) {
.view-pc { display: none;}
.view-sp { display: block;}
}

.stretched-link::after{
position:absolute;
top:0;
right:0;
bottom:0;
left:0;
z-index:1
;pointer-events:auto;
content:"";
background-color:rgba(0,0,0,0)
}

.imgresize {
max-width: 100%;
width: 100%;
}

.titleanime {
animation: titleanime 1.35s ease forwards;
}

@keyframes titleanime {
from{
opacity: 0;
transform: translateY(45px);
}

to{
opacity: 1;
transform: translateY(0);
}
}

.titleanime_s {
animation: titleanime 3.0s ease forwards;
}

@keyframes titleanime_s {
from{
opacity: 0;
transform: translateY(33px);
}

to{
opacity: 1;
transform: translateY(0);
}
}

.cntinnerbox {
width: 100%;
max-width: 75%;
margin: 0 auto ;
box-sizing: border-box;
}

@media only screen and (max-width: 1200px) {
.cntinnerbox {
width: 100%;
max-width: 100%;
padding: 0 3%;
}
}

.zoomIn img {
transform: scale(1);
transition: .3s ease-in-out;
}

.zoomIn img:hover{
transform: scale(1.1);
}

.mask{
display: block;
line-height: 0;
overflow: hidden;
}

.fixed {
position: fixed;
top: 0;
width: 100%;
z-index: 9999999;
}

.bgc-w {
background: #fff;
}

.detailbt {
width: 100%;
margin: 0 auto;
background: #2e7045;
border-radius: 2px;
display: block;
margin-top:  30px;
}

.detailbt a {
opacity: 1.0;
color: #fff;
display: block;
text-align: center;
letter-spacing: 0.04em;
text-decoration: none;
padding: 4%;
}

.detailbt a:hover {
background: #387C50;
border-radius: 2px;
color: #fff;
}

.detailbt_arrow {
text-align: center;
}

.detailbt_arrow a {
text-decoration: none;
}

.detailbt_arrow p {
font-size: 17px;
font-weight: 600;
}

.detailbt_arrow p:after {
font-family: "Font Awesome 6 Free";
content: "\f138";
font-weight: 900;
margin: 0 0 0 10px;
color: #363425;
}

.bt-100 {
width: 100%;
margin: 0 auto;
}

.bt-50 {
width: 50%;
margin: 0 auto;
}

.bt-40 {
width: 40%;
margin: 0 auto;
}

.bt-30 {
width: 30%;
margin: 0 auto;
}

@media only screen and ( max-width : 850px ) {
.detailbt a {
padding: 3%;
font-size: 14px;
}

.detailbt_top {
width: 90%;
margin: 0 auto;
}

.detailbt_top a {
padding: 3%;
font-size: 15px;
}

.bt-100 {
width: 80%;
}

.bt-50 {
width: 80%;
}

.bt-40 {
width: 80%;
}

.bt-30 {
width: 80%;
}
}

.sec_s {
margin-bottom: 55px;
}

.sec_m {
margin-bottom: 75px;
}

.sec_l {
margin-bottom: 100px;
}

.mt20 {
margin-top: 20px
}

.mt30 {
margin-top: 30px
}

.mb20 {
margin-bottom: 20px
}

.mb30 {
margin-bottom: 30px
}

ul.caption {
padding-bottom: 30px;
}

ul.caption li.txt {
max-width: 90%;
margin: 0 auto;
}

ul.caption li.txt p {
line-height: 180%;
text-align: center;
}

ul.box-align_2 {
width: 100%;
margin: 0 auto;
}

ul.box-align_2 li {
display: inline-block;
vertical-align: top;
width: 49%;
margin: 0 2% 2% 0;
}

ul.box-align_2 li:nth-child(2n) {
display: inline-block;
vertical-align: top;
width: 49%;
margin: 0 0 2% 0;
}

ul.box-align_2 li p.tit {
font-weight: 600;
padding: 8px 0 0 0;
}

ul.box-align_2 li p.cnt {
padding: 1.3% 0;
}

ul.box-align_2 li p.tit_top {
font-weight: 600;
font-size: 20px;
padding: 8px 0 0 0;
}

ul.box-align_2 li p.cnt_top {
padding: 1.3% 0;
font-size: 16px;
}

ul.box-align_2 p.bt {
background: #0E0101;
border-radius: 4px;
width: 100%;
margin: 10px auto 20px auto;
border:transparent 3px solid;
box-sizing:border-box;
}

ul.box-align_2 p.bt a {
font-size: 15px;
text-align: center;
display: block;
padding: 10px 0;
letter-spacing: 1px;
color: #fff;
font-weight: 600;
text-decoration: none;
}

ul.box-align_2 p.bt:hover {
border-radius: 4px;
background: #fff;
border: 3px solid #526276;
}

ul.box-align_2 p.bt:hover a {
color: #252525;
font-weight: bold;
opacity: 1.0;
}

ul.box-align_2 li img {
max-width: 100%;
width: 100%;
}

ul.box-align_3 {
width: 100%;
margin: 0 auto;
}

ul.box-align_3 li {
position: relative;
display: inline-block;
vertical-align: top;
width: 32%;
margin: 0 2% 2% 0;
}

ul.box-align_3 li:nth-child(3n) {
display: inline-block;
vertical-align: top;
width: 32%;
margin: 0 0 2% 0;
}

ul.box-align_3 li p.tit {
font-weight: 700;
padding-top: 8px;
font-size: 16px;
}

ul.box-align_3 li p.tit_2 {
font-weight: 600;
font-size: 14px;
padding-top: 8px;
}

ul.box-align_3 li p.cnt {
padding: 1.3% 0;
font-size: 14px;
}

ul.box-align_3 li p.link {
font-size: 14px;
}

ul.box-align_3 li p.link a {
font-size: 14px;
}

ul.box-align_3 p.bt {
background: #545454;
border-radius: 4px;
width: 100%;
margin: 10px auto 20px auto;
}

ul.box-align_3 p.bt a {
font-size: 15px;
text-align: center;
display: block;
padding: 10px 0;
letter-spacing: 1px;
color: #fff;
text-decoration: none;
}

ul.box-align_3 p.bt a:hover {
border-radius: 4px;
opacity: 0.6;
}

ul.box-align_3 li img {
max-width: 100%;
width: 100%;
}

ul.box-align_4 {
width: 100%;
margin: 0 auto;
}

ul.box-align_4 li {
display: inline-block;
vertical-align: top;
width: 23%;
margin: 0 2% 2% 0;
}

ul.box-align_4 li:nth-child(4n) {
display: inline-block;
vertical-align: top;
width: 23%;
margin: 0 0 2% 0;
}

ul.box-align_4 li p.tit {
font-weight: 600;
padding-top: 8px;
font-size: 14px;
}

ul.box-align_4 li p.cnt {
padding: 1.3% 0;
font-size: 14px;
}

ul.box-align_4 p.bt {
background: #313131;
border-radius: 4px;
width: 100%;
margin: 10px auto 20px auto;
}

ul.box-align_4 p.bt a {
font-size: 15px;
text-align: center;
display: block;
padding: 10px 0;
letter-spacing: 1px;
color: #fff;
text-decoration: none;
}

ul.box-align_4 p.bt a:hover {
border-radius: 4px;
opacity: 0.6;
}

ul.box-align_4 li img {
max-width: 100%;
width: 100%;
}

ul.box_flex_3 {
display: flex;
flex-wrap: wrap;
}

ul.box_flex_3 li {
width: calc(33.3% - 15px);
margin: 0 15px 20px 0;
}

ul.box_flex_3 li a {
text-decoration: none;
}

ul.box_flex_3 li p.tit {
font-weight: 700;
font-size: 16px;
padding: 3px 0 5px 0;
}

ul.box_flex_3 li p.tit2 {
font-weight: 700;
color: #2e7045;
text-align: center;
font-size: 20px;
padding: 3px 0 5px 0;
}

ul.box_flex_3 li p.cnt {
line-height: 148%;
font-weight: 500;
font-size: 14px;
}

ul.box_flex_3 li p.tit_top_feature {
font-weight: 700;
font-size: 19px;
color: #2e7045;
text-align: center;
padding: 3px 0 1px 0;
}

ul.box_flex_3 li p.cnt_top_feature {
line-height: 148%;
font-weight: 500;
font-size: 16px;
}

ul.box_flex_3 li p.bt {
background: #0F0F0F;
border-radius: 4px;
width: 100%;
margin: 10px auto 20px auto;
}

ul.box_flex_3 li p.bt a {
font-size: 15px;
text-align: center;
display: block;
padding: 10px 0;
letter-spacing: 1px;
color: #fff;
text-decoration: none;
}

ul.box_flex_3 li p.bt a:hover {
background: #373737;
border-radius: 4px;
opacity: 0.6;
}

ul.box_flex_3 li img {
max-width: 100%;
width: 100%;
}

ul.box_flex_2 {
display: flex;
flex-wrap: wrap;
}

ul.box_flex_2 li {
width: calc(50% - 15px);
margin: 0 15px 55px 0;
}

ul.box_flex_2 li p.tit {
font-weight: 700;
font-size: 16px;
padding: 3px 0 1px 0;
}

ul.box_flex_2 li p.cnt {
line-height: 148%;
font-weight: 600;
font-size: 14px;
}

ul.box_flex_2 li p.tit_top_about {
font-weight: 700;
font-size: 19px;
color: #fff;
text-align: center;
padding: 3px 0 1px 0;
}

ul.box_flex_2 li img {
max-width: 100%;
width: 100%;
}

ul.layout_hr01 {
width: 100%;
padding-bottom: 120px;
}

ul.layout_hr01 li.img {
float: right;
width: 40%;
}

ul.layout_hr01 li.img img {
width: 100%;
max-width: 100%;
}

ul.layout_hr01 li.movie {
float: left;
width: 40%;
}

ul.layout_hr01 li.movie .morsp {
position: relative;
padding-top: 56.25%;
}

ul.layout_hr01 li.movie .morsp iframe {
position: absolute;
top: 0;
right: 0;
width: 100%;
height: 100%;
}

ul.layout_hr01 li.txt {
float: left;
width: 57%;
}

ul.layout_hr01 li.txt p.tit {
font-weight: 600;
font-size: 24px;
padding-bottom: 5px;
letter-spacing: 0.07em;
}

ul.layout_hr01 li.txt p.tit2 {
font-weight: 600;
font-size: 24px;
padding-bottom: 5px;
letter-spacing: 0.07em;
}

ul.layout_hr01 li.txt p.stit {
font-weight: 600;
font-size: 16px;
padding-bottom: 5px;
letter-spacing: 0.07em;
}

ul.layout_hr01 li.txt p.cnt {
line-height: 170%;
}

ul.layout_hr02 {
width: 100%;
padding-bottom: 120px;
}

ul.layout_hr02 li.img {
float: left;
width: 40%;
}

ul.layout_hr02 li.img img {
width: 100%;
max-width: 100%;
}

ul.layout_hr02 li.movie {
float: left;
width: 40%;
}

ul.layout_hr02 li.movie .morsp {
position: relative;
padding-top: 56.25%;
}

ul.layout_hr02 li.movie .morsp iframe {
position: absolute;
top: 0;
right: 0;
width: 100%;
height: 100%;
}

ul.layout_hr02 li.txt {
float: right;
width: 57%;
}

ul.layout_hr02 li.txt p.tit {
font-weight: 600;
font-size: 24px;
padding-bottom: 5px;
letter-spacing: 0.07em;
}

ul.layout_hr02 li.txt p.tit2 {
font-weight: 600;
font-size: 24px;
padding-bottom: 5px;
letter-spacing: 0.07em;
}

ul.layout_hr02 li.txt p.stit {
font-weight: bold;
font-size: 16px;
padding-bottom: 5px;
letter-spacing: 0.07em;
}

ul.layout_hr02 li.txt p.cnt {
line-height: 170%;
}

ul.layout_hr_flex {
width: 100%;
display:flex;
flex-direction: row;
justify-content: space-between;
padding-bottom: 120px;
}

ul.layout_hr_flex:nth-child(even) {
flex-direction: row-reverse;
}

ul.layout_hr_flex li.img {
width: 40%;
}

ul.layout_hr_flex li.img img {
width: 100%;
height:auto;
}

ul.layout_hr_flex li.txt {
width: 57%;
}

ul.layout_hr_flex li.txt p.tit {
font-weight: 600;
font-size: 24px;
padding-bottom: 5px;
letter-spacing: 0.07em;
}

ul.layout_hr_flex li.txt p.tit2 {
font-weight: 600;
font-size: 24px;
padding-bottom: 5px;
letter-spacing: 0.07em;
}

ul.layout_hr_flex li.txt p.stit {
font-weight: 600;
font-size: 16px;
padding-bottom: 5px;
letter-spacing: 0.07em;
}

ul.layout_hr_flex li.txt p.cnt {
line-height: 170%;
}

ul.layout_vr {
width: 100%;
padding-bottom: 70px;
}

ul.layout_vr li.img {
max-width: 80%;
margin: 0 auto;
padding-bottom: 30px;
}

ul.layout_vr li.img img {
width: 100%;
max-width: 100%;
}

ul.layout_vr li.img_un {
max-width: 80%;
margin: 0 auto;
padding-top: 30px;
}

ul.layout_vr li.img_un img {
width: 100%;
max-width: 100%;
}

ul.layout_vr li.txt {
max-width: 90%;
margin: 0 auto;
text-align: left;
}

ul.layout_vr li.txt p.tit {
text-align: center;
font-size: 26px;
padding-bottom: 8px;
}

ul.layout_vr li.txt p.cnt {
line-height: 170%;
}

ul.layout_vr li.txt p.tit_greeting {
text-align: center;
font-size: 26px;
font-weight: 600;
padding-bottom: 8px;
}

ul.layout_vr li.txt p.cnt_greeting {
line-height: 170%;
font-size: 15px;
}

ul.layout_vr li.txt p.greeting_point {
text-align: center;
line-height: 170%;
font-size: 15px;
}

ul.layout_vr li.txt p.name {
text-align: right;
font-size: 16px;
}

ul.intro {
width: 100%;
padding-bottom: 20px;
}

ul.intro li.tit_intro {
max-width: 90%;
margin: 0 auto;
text-align: center;
margin-bottom: 15px;
}
 
ul.intro li.tit_intro p {
text-align: center;
font-size: 26px;
padding-bottom: 8px;
}

ul.intro li.txt {
max-width: 90%;
margin: 0 auto;
text-align: center;
display: block;
}

ul.intro li.txt p {
text-align: left;
display: inline-block;
line-height: 170%;
font-size: 17px;
}

@media only screen and ( max-width : 850px ) {
ul.box-align_2 li {
margin: 0 2% 3.5% 0;
}

ul.box-align_2 li:nth-child(2n) {
margin: 0 0 3.5% 0;
}
	
ul.box-align_2 li p.tit {
font-size: 15px;
}

ul.box-align_2 li p.cnt {
font-size: 13px;
}

ul.box-align_2 li p.tit_top {
font-size: 17px;
}

ul.box-align_2 li p.cnt_top {
font-size: 15px;
}
	
ul.box-align_3 li {
width: 49%;
margin: 0 2% 7% 0;
}

ul.box-align_3 li:nth-child(3n) {
width: 49%;
margin: 0 2% 7% 0;
}

ul.box-align_3 li:nth-child(2n) {
width: 49%;
margin: 0 0 7% 0;
}

ul.box-align_3 li p.tit {
font-size: 14px;
}

ul.box-align_3 li p.cnt {
font-size: 13px;
}

ul.box-align_4 li {
width: 49%;
margin: 0 2% 7% 0;
}

ul.box-align_4 li:nth-child(4n) {
width: 49%;
margin: 0 0 7% 0;
}

ul.box-align_4 li:nth-child(2n) {
width: 49%;
margin: 0 0 7% 0;
}

ul.box-align_4 li p.tit {
font-size: 14px;
}

ul.box-align_4 li p.cnt {
font-size: 13px;
}

ul.box_flex_2 li {
width: 49%;
margin: 0 2% 25px 0;
}

ul.box_flex_2 li:nth-child(2n) {
width: 49%;
margin: 0 0 25px 0;
}

ul.box_flex_2 li p.tit {
font-size: 15px;
padding-top: 4px;
}

ul.box_flex_2 li p.price {
font-size: 14px;
}

ul.box_flex_2 li p.cnt {
line-height: 160%;
font-size: 13px;
}

ul.box_flex_3 li {
width: 49%;
margin: 0 2% 25px 0;
}

ul.box_flex_3 li:nth-child(2n) {
width: 49%;
margin: 0 0 25px 0;
}

ul.box_flex_3 li p.tit {
font-size: 15px;
padding-top: 4px;
}

ul.box_flex_3 li p.tit2 {
padding-top: 4px;
font-size: 16px;
}

ul.box_flex_3 li p.cnt {
font-size: 14px;
}

ul.box_flex_3 li p.tit_top_feature {
font-size: 17px;
}

ul.box_flex_3 li p.cnt_top_feature {
font-size: 15px;
}

ul.box_flex_2 li p.tit_top_about {
font-size: 17px;
}

ul.layout_hr01 {
padding-bottom: 75px;
}

ul.layout_hr01 li.img {
width: 100%;
padding-bottom: 10px;
}

ul.layout_hr01 li.movie {
width: 100%;
padding-bottom: 10px;
}

ul.layout_hr01 li.txt {
width: 100%;
}

ul.layout_hr01 li.txt p.cnt {
line-height: 160%;
}

ul.layout_hr01 li.txt p.tit {
font-size: 20px;
}

ul.layout_hr01 li.txt p.tit2 {
font-size: 20px;
}

ul.layout_hr02 {
padding-bottom: 75px;
}

ul.layout_hr02 li.img {
width: 100%;
padding-bottom: 10px;
}

ul.layout_hr02 li.movie {
width: 100%;
padding-bottom: 10px;
}

ul.layout_hr02 li.txt {
width: 100%;
}

ul.layout_hr02 li.txt p.tit {
font-size: 20px;
}

ul.layout_hr02 li.txt p.cnt {
line-height: 160%;
}

ul.layout_hr_flex {
flex-flow: column;
padding-bottom: 75px;
}

ul.layout_hr_flex:nth-child(even) {
flex-flow: column;
}

ul.layout_hr_flex li.img {
width: 100%;
padding-bottom: 10px;
}

ul.layout_hr_flex li.txt {
width: 100%;
}

ul.layout_hr_flex li.txt p.cnt {
line-height: 160%;
}

ul.layout_hr_flex li.txt p.tit {
font-size: 20px;
}

ul.layout_hr_flex li.txt p.tit2 {
font-size: 20px;
}

ul.layout_vr li.img {
max-width: 100%;
}

ul.layout_vr li.img_un {
max-width: 100%;
}

ul.layout_vr li.txt {
max-width: 100%;
}

ul.layout_vr li.txt p.tit {
font-size: 20px;
}

ul.layout_vr li.txt p.tit_greeting {
font-size: 22px;
}
}

input {
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Verdana, Arial, Helvetica,"ＭＳ Ｐゴシック", "MS PGothic";
padding-top: 2px;
letter-spacing: 0.08em;
font-size: 15px;
}

select {
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Verdana, Arial, Helvetica,"ＭＳ Ｐゴシック", "MS PGothic";
letter-spacing: 0.08em;
font-size: 15px;
}

textarea {
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Verdana, Arial, Helvetica,"ＭＳ Ｐゴシック", "MS PGothic";
letter-spacing: 0.08em;
font-size: 15px;
}

@media only screen and ( max-width : 850px ) {
input {
font-size: 16px;
}

select {
font-size: 16px;
}

textarea {
font-size: 16px;
}
}