@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;}
}

.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;
}

.hvr-sink {
display: inline-block;
vertical-align: middle;
-webkit-transform: perspective(1px) translateZ(0);
transform: perspective(1px) translateZ(0);
box-shadow: 0 0 1px rgba(0, 0, 0, 0);
-webkit-transition-duration: 0.25s;
transition-duration: 0.25s;
-webkit-transition-property: transform;
transition-property: transform;
-webkit-transition-timing-function: ease-out;
transition-timing-function: ease-out;
}

.hvr-sink:hover,
.hvr-sink:focus,
.hvr-sink:active {
-webkit-transform: translateY(5px);
transform: translateY(5px);
}

.hvr-underline-reveal {
display: inline-block;
vertical-align: middle;
-webkit-transform: perspective(1px) translateZ(0);
transform: perspective(1px) translateZ(0);
box-shadow: 0 0 1px rgba(0, 0, 0, 0);
position: relative;
overflow: hidden;
}

.hvr-underline-reveal:before {
content: "";
position: absolute;
z-index: -1;
left: 0;
right: 0;
bottom: 0;
background: #fff;
height: 1px;
-webkit-transform: translateY(2px);
transform: translateY(2px);
-webkit-transition-property: transform;
transition-property: transform;
-webkit-transition-duration: 0.3s;
transition-duration: 0.3s;
-webkit-transition-timing-function: ease-out;
transition-timing-function: ease-out;
}

.hvr-underline-reveal:hover:before,
.hvr-underline-reveal:focus:before,
.hvr-underline-reveal:active:before {
-webkit-transform: translateY(0);
transform: translateY(0);
}

.detailbt {
width: 100%;
margin: 0 auto;
background: #1a669a;
border-radius: 4px;
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: #2581C0;
border-radius: 4px;
color: #fff;
}

.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;
}

.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;
}

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

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

ul.caption li.txt p {
line-height: 180%;
font-size: 17px;
}

@media only screen and ( max-width : 850px ) {
ul.caption li.txt p {
line-height: 170%;
font-size: 16px;
}
}

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: 500;
padding: 12px 0 12px 0;
}

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

ul.box-align_2 p.bt {
background: #E35F7D;
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: 500;
text-decoration: none;
}

ul.box-align_2 p.bt:hover {
border-radius: 4px;
background: #0075FD;
}

ul.box-align_2 p.bt:hover a {
color: #252525;
font-weight: 500;
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 {
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: 5px;
font-size: 17px;
}

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

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

ul.box-align_3 p.bt {
background: #313131;
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: 500;
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% - 10px);
margin: 5px;
}

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

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

ul.box_flex_4 li {
width: calc(25% - 10px);
margin: 5px;
}

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

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

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

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

ul.layout_hr01 li.img_small {
float: right;
width: 30%;
}

ul.layout_hr01 li.img_small 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: 20px;
padding-bottom: 5px;
color: #1a669a;
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 {
line-height: 170%;
}

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

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.cnt {
line-height: 170%;
}

ul.layout_hr03 {
width: 80%;
margin: 0 auto;
display: flex;
align-items: center;
flex-wrap: wrap;
padding-bottom: 70px;
}

ul.layout_hr03 li.img {
flex-basis: 15%;
margin-right: 2%;
}

ul.layout_hr03 li.txt {
flex-basis: 80%;
}

ul.layout_hr03 li.txt p {
line-height: 170%;
font-size: 17px;
}

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.txt {
max-width: 90%;
margin: 0 auto;
text-align: center;
display: block;
}

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

ul.layout_vr li.txt p {
text-align: left;
display: inline-block;
line-height: 160%;
}

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

ul.layout_vr_2 li.img {
max-width: 65%;
margin: 0 auto;
padding-bottom: 40px;
}

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

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

ul.layout_vr_2 li.txt p.tit {
font-size: 18px;
font-weight: 600;
color: #267FBC;
padding-bottom: 4px;
}

ul.layout_vr_2 li.txt p.cnt {
line-height: 160%;
padding-bottom: 15px;
}

ul.layout_vr_2 li.txtblock {
max-width: 80%;
margin: 0 auto 20px auto;
}

ul.layout_vr_2 li.txtblock li.tit p {
font-size: 18px;
font-weight: 600;
color: #267FBC;
}

ul.layout_vr_2 li.txtblock li.cnt p {
line-height: 160%;
padding-bottom: 15px;
}

ul.layout_vr_2 li.txt_mid {
max-width: 90%;
margin: 30px auto 30px auto;
}

ul.layout_vr_2 li.txt_mid p.cnt {
line-height: 160%;
text-align: center;
}

@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: 14px;
}

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

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

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

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

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

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

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

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

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

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

ul.box_flex_3 li {
width: calc(100% - 10px);
margin: 5px;
}

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

ul.box_flex_4 li {
width: calc(50% - 10px);
margin: 5px;
}

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

ul.layout_hr01 li.img_small {
width: 60%;
float: none;
margin: 0 auto;
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: 18px;
}

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.cnt {
line-height: 160%;
}

ul.layout_hr03 {
width: 100%;
flex-direction: column;
}

ul.layout_hr03 li.img {
padding-bottom: 15px;
}

ul.layout_hr03 li.txt p {
line-height: 170%;
font-size: 16px;
}

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

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

ul.layout_vr_2 li.img {
max-width: 90%;
}

ul.layout_vr_2 li.txtblock {
max-width: 100%;
}

ul.layout_vr_2 li.txtblock ul li.tit {
width: 100%;
float: none;
margin-bottom: 7px;
}

ul.layout_vr_2 li.txtblock ul li.tit p {
font-size: 15px;
}

ul.layout_vr_2 li.txtblock ul li.detail {
width: 100%;
float: none;
}
}

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;
}
}