<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";
/* CSS Document */
/*===共通部分==============
====================================================================*/
html{
	font-size: 100%;
}
body{
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-weight: 400;
	color: #333;
	font-size: clamp(16px,2vw,18px);
	background: #fff;
	-webkit-font-smoothing: antialiased;/*アンチエイリアスを滑らかに*/
	-moz-osx-font-smoothing: grayscale;
	line-height: 1.7;
}
p{
	letter-spacing: 0.1em;
}
h1,h2,h3,h4,h5,h6{
	font-weight: 600;
	line-height: 1.7;
}
a{
	text-decoration: none;
	color: #333;
	transition: .4s;
}
ul,ol{
	list-style: none;
	padding: 0;
}
main{
	width: 100%;
	height: 100%;
	overflow: hidden;
}

section {
	padding: 80px 0 ;
	position: relative
}
table{
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;/*隙間なし*/
}

/*改行　-------*/
@media (min-width: 451px){
	br.only450{
		display: none;
	}
}

@media (max-width: 450px){
	br.not450{
		display: none;
	}
}

span.ib{
	display: inline-block !important;
}

/*PC・SP表示-----------------------*/
.sp{
	display: none;
}
.pc{
	display: block;
}

@media (max-width: 768px) {
	.sp{
		display: block;
	}
	.pc{
		display: none;
	}
}

/*幅・高さ調整-------*/
.inner{
	width: 96%;
	max-width: 1200px;
	margin: 0 auto;
}
.inner.wide{
	max-width: 1400px;
}
.inner.max{
	max-width: none;
}
/*高さ*/
.h30{
	height: 30px;
}
.h50{
	height: 50px;	
}

.mg100{
	margin-bottom: 100px !important;
}
.mg80{
	margin-bottom: 80px !important;
}
.mg60{
	margin-bottom: 60px !important;
}
.mg50{
	margin-bottom: 50px !important;
}
.mg40{
	margin-bottom: 40px !important;
}
.mg30{
	margin-bottom: 30px !important;
}
.mg20{
	margin-bottom: 20px !important;
}
.mg10{
	margin-bottom: 10px !important;
}
.mg0{
	margin-bottom: 0 !important;
}

.pmg5 p{
	margin-bottom: 5px;
}
.pmg p{
	margin-bottom: 10px;
}
.pmg15 p{
	margin-bottom: 15px;
}
.pmg20 p{
	margin-bottom: 20px;
}
.pmg5 p:last-child,
.pmg p:last-child,
.pmg15 p:last-child,
.pmg20 p:last-child{
	margin-bottom: 0;
}

.t_center{
	text-align: center;
}
.t_left{
	text-align: left;
}
/* 画像　-------------------------- */
.obj-in{
	width: 100%;
	height: 100%;
	object-fit: contain
}
.obj-cov{
	width: 100%;
	height: 100%;
	object-fit: cover;	
}
.img_4-3{
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.img_16-9{
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}
.c-img {
}

.c-img img {
    display: block;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}
/*flexbox------------------------*/
.flexbox{
	display: flex;
	flex-wrap: wrap;
}
.f_jsb{
	justify-content: space-between;
}
.f_cent{
	justify-content: center;
}
.fac{
	align-items: center;
}

.comn2{
	width: 48%;
}
.comn3{
	width: calc( 100% / 3 - 20px);
}
.comn4{
	width: 35%;
}
.comn5{
	width: 62%;
}

.f_center{
	align-items: center;
}
@media (max-width: 767px){
	.flexbox{
		flex-direction: column;
	}
	.flexbox.rever{
		flex-direction: column-reverse;
	}
	.comn2, .comn3, .comn4, .comn5 {
		width: 100%;
		margin-bottom: 30px
	}
}

/*==背景=============================================*/

.nya-rotating-animation{
	position: absolute;

	aspect-ratio: 1 / 1;
	content: '';
	z-index: -1;
	opacity: 0.1;
	
}
.nya-rotating-animation.tr40{	
	width: 200px;	
	top: 40%;
	right: 15px;
}
.nya-rotating-animation.tr60{
	width: 250px;
	top: calc(40% + 190px);
    right: -49px;
}
.nya-rotating-animation img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	animation: nya-gear 10s linear infinite;
}
.nya-rotating-animation.tr40 img {
		animation: nya-gear 10s linear infinite;
}
.nya-rotating-animation.tr60 img {
		animation: rotate-counterclockwise 10s linear infinite;
}
@keyframes nya-gear {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}

@keyframes rotate-counterclockwise {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(-360deg);
  }
}
@media (max-width: 600px){
	.nya-rotating-animation.tr40{	
		width: 150px;	
		top: 35%;
		right: 15px;
	}
	.nya-rotating-animation.tr60{
		width: 200px;
		top: calc(35% + 145px);
		right: -40px;
	}
}
.container{
	position: relative;
	height: 30vh
}
.line_img {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   clip-path: inset(0);
}
.bg{
   position: fixed;
   top: 0;
   left: 0;
   width: 100vw;
   height: 100vh;
   background-image: url("../img/link01.jpg");
   background-size: cover;
   background-position: center;
   z-index: -1;
}

.bg_light{
	background: #EBFCFF;
}
/*==見出し=============================================*/
.c-ttl01 .ttl-en {
    position: relative;
    font-family: "Montserrat",sans-serif;
    font-weight: bold;
    color: #F7931E;
    font-size: clamp(1rem, 0.907rem + 0.39vw, 1.2rem);
    line-height: 1.6em;
    letter-spacing: .08em;
    font-weight: bold;
}

.c-ttl01 .ttl-en span {
    display: inline-block;
    vertical-align: top;
    position: relative;
    padding-left: 25px;
    padding-right: 10px
}

.c-ttl01 .ttl-en span:before {
    position: absolute;
    content: "";
    top: 7px;
    left: 0;
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 15px 0 0;
    border-color: #1b56b5 transparent transparent transparent
}

@media (max-width: 767px) {
    .c-ttl01 .ttl-en span:before {
        top:5px
    }
}

.c-ttl01 .ttl-ja {
    font-weight: bold
}

@media (min-width: 768px) {
    .c-ttl01 .ttl-ja {
        font-size: 2.3rem;
        line-height: 1.68421em;
        letter-spacing: .1em
    }

    .c-ttl01 .ttl-ja .let01 {
        margin-left: -19px
    }

    .c-ttl01 .ttl-ja.size02 {
        font-size: 42px;
        font-size: 2.3rem;
        line-height: 1.66667em;
        letter-spacing: .1em
    }
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    .c-ttl01 .ttl-ja {
        font-size:36px;
        font-size: 1.8rem;
        line-height: 1.72222em
    }

    .c-ttl01 .ttl-ja.size02 {
        font-size: 40px;
        font-size: 2rem;
        line-height: 1.7em
    }
}

@media only screen and (min-width: 768px) and (max-width: 1080px) {
    .c-ttl01 .ttl-ja {
        font-size:34px;
        font-size: 3.4rem;
        line-height: 1.76471em
    }

    .c-ttl01 .ttl-ja.size02 {
        font-size: 38px;
        font-size:1.8rem;
        line-height: 1.71053em
    }
}

@media only screen and (min-width: 768px) and (max-width: 980px) {
    .c-ttl01 .ttl-ja {
        font-size:30px;
        font-size: 3rem;
        line-height: 1.83333em
    }

    .c-ttl01 .ttl-ja.size02 {
        font-size: 33px;
        font-size: 1.5rem;
        line-height: 1.66667em
    }
}

@media only screen and (min-width: 768px) and (max-width: 880px) {
    .c-ttl01 .ttl-ja {
        font-size:  clamp(1.8rem, 1.337rem + 1.95vw, 2.8rem);
        line-height: 1.78571em;
        letter-spacing: .04em
    }

    .c-ttl01 .ttl-ja.size02 {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.83333em;
        letter-spacing: .04em
    }
}

@media (max-width: 767px) {
    .c-ttl01 .ttl-ja {
        font-size:28px;
        font-size: clamp(1.8rem, 1.337rem + 1.95vw, 2.8rem);
        line-height: 1.5em;
        letter-spacing: .05em
    }

    .c-ttl01 .ttl-ja .let01 {
        margin-left: -12px
    }
}

.c-ttl01.is-center {
    text-align: center
}

.c-ttl01.is-wh .ttl-en {
    color: #fff
}

.c-ttl01.is-wh .ttl-en span:before {
    border-color: #fff transparent transparent transparent
}

.c-ttl01.is-wh .ttl-ja {
    color: #fff
}
.etitle {
    font-size: 1.2rem;
    padding-left: 15px;
    border-left: 4px solid #1b56b5;
    font-weight: 700;
    letter-spacing: 0.08em;
    margin-bottom: 20px;
}

.stitle{
	margin: 20px 0;
	border-bottom: 1px solid #1b56b5;
	border-left: 5px solid #1b56b5;
	padding-left: 1rem;
	font-size: clamp(1.3rem, 1.068rem + 0.98vw, 1.8rem);
}
/*==btn=============================================*/
.c-arr01 {
    display: inline-block;
    width: 50px;
    height: 50px;
    transition: 0.3s cubic-bezier(0.33, 1, 0.68, 1);
    border: 1px solid #1b56b5;
    border-radius: 100%;
    position: relative;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0)
}

.c-arr01::after {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    background-image: url("../img/arrow_b.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 15px 12px;
    z-index: 11;
    width: 100%;
    height: 100%;
    transition: 0.3s ease all
}

@media (min-width: 768px) {
    .is-safari .c-arr01::after {
        transition:none
    }
}

@media (min-width: 768px) {
    .c-arr01::before {
        position:absolute;
        content: "";
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        background: #e3c000;
        margin: auto;
        border-radius: 100%;
        opacity: 0;
        transform: scale(0);
        -webkit-transition: opacity 0.3s,-webkit-transform 0.3s cubic-bezier(0.1, 0, 0.3, 1);
        transition: opacity 0.3s,-webkit-transform 0.3s cubic-bezier(0.1, 0, 0.3, 1);
        transition: transform 0.3s cubic-bezier(0.1, 0, 0.3, 1),opacity 0.3s;
        transition: transform 0.3s cubic-bezier(0.1, 0, 0.3, 1),opacity 0.3s,-webkit-transform 0.3s cubic-bezier(0.1, 0, 0.3, 1)
    }
}

.c-arr01.is-wh {
    border: 1px solid #fff
}

.c-arr01.is-wh::before {
    background: #fff
}

.c-arr01.is-wh::after {
    background-image: url("../img/arrow.svg")
}


/*リスト*/
.check li{
	position: relative;
	padding-left: 1.5rem;
}
.check li::before{
	position: absolute;
	content: '\f013';
	font-family: "Font Awesome 6 Free";
	font-size: 14px;
	font-weight: 600;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	color: #1b56b5; 
}

</pre></body></html>