@charset "UTF-8";
/* reset ---------------------------------------*/

div,dl,dt,dd,ul,ol,
li,h1,h2,h3,h4,h5,
h6,pre,code,form,fieldset,legend,
input,textarea,p,blockquote,
th,td{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;word-break: break-all;font-size:inherit;width:100%;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q::before,q::after{content:'';}
abbr{border:0;font-variant:normal;}
sup{vertical-align:text-top;}
sub{vertical-align:text-bottom;}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{font-size:100%;}
legend{color:#000;}
select,input,button,textarea{font-size:inherit;font-family:inherit;box-sizing: border-box;}
pre,code,kbd,samp{font-family:monospace;font-size:108%;line-height:100%;}
figure{padding:0;margin:0;}
input[type="submit"],
input[type="button"],
button {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration,
button::-webkit-search-decoration {display: none;}
input[type="submit"]::focus,
input[type="button"]::focus,
button::focus {outline-offset: -2px;}


/* base ---------------------------------------*/

*{box-sizing:border-box;}

html,body{height:100%;}

body{
	-webkit-text-size-adjust: 100%;
	padding:0;
	margin: 0;
	font-family: "Figtree", "Noto Sans JP", sans-serif;
	font-weight: 500;
	font-feature-settings: "palt" 1;
	-webkit-font-feature-settings: "palt" 1;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #161616;
}

a{
	text-decoration: none;
	color:inherit;
	transition: all .25s ease;
	-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
}

a:hover{opacity: 0.5;}

img{
	vertical-align: top;
	line-height: 1;
	max-width:100%;
	height:auto;
}


/* common item ---------------------------------------*/

.clearfix::after,
.inner::after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.ov-h{overflow: hidden;}

.font-en {
	font-family: "Figtree", sans-serif;
	font-style: italic;
}
.fc-orange {color: #f45b26;}
.fc-blue {color: #03aed2;}
.fc-lightgray {color: #fbfbfb;}
.fc-yellow {color: #eec800;}

.font-border-black {
	text-shadow: -1px -1px 0 #161616, 0 -1px 0 #161616, 1px -1px 0 #161616, -1px 0 0 #161616, 1px 0 0 #161616, -1px 1px 0 #161616, 0 1px 0 #161616, 1px 1px 0 #161616;
	color: #fff;
}
.font-border-orange {
	text-shadow: -1px -1px 0 #f45b26, 0 -1px 0 #f45b26, 1px -1px 0 #f45b26, -1px 0 0 #f45b26, 1px 0 0 #f45b26, -1px 1px 0 #f45b26, 0 1px 0 #f45b26, 1px 1px 0 #f45b26;
	color: #fff;
}
.font-border-blue {
	text-shadow: -1px -1px 0 #03aed2, 0 -1px 0 #03aed2, 1px -1px 0 #03aed2, -1px 0 0 #03aed2, 1px 0 0 #03aed2, -1px 1px 0 #03aed2, 0 1px 0 #03aed2, 1px 1px 0 #03aed2;
	color: #fff;
}
.font-border-yellow {
	text-shadow: -1px -1px 0 #eec800, 0 -1px 0 #eec800, 1px -1px 0 #eec800, -1px 0 0 #eec800, 1px 0 0 #eec800, -1px 1px 0 #eec800, 0 1px 0 #eec800, 1px 1px 0 #eec800;
	color: #fff;
}

.bg-lightblue {background: #b3ecff;}
.bg-blue {background: #03aed2;}
.bg-orange {background: #f45b26;}
.bg-yellow {background: #f8de22;}


/* layout ---------------------------------------*/
.bodywrapper {
	overflow: clip;
}
.wrapper {

}

.inner{
	max-width:1200px;
	margin:0 auto;
}

.overlay{display: none;}

.d-block {display: block;}
.d-none {display: none;}

.text-center {text-align: center;}
.text-link {text-decoration: underline;}
.text-link:hover {text-decoration: none;}

.marker-large {
	position: relative;
	padding-bottom: 20px;
	background-image: linear-gradient(90deg, #03aed2, #03aed2);
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: 100% 18px;
}

.marker-large::after {
	position: absolute;
	top: 0;
	left: calc(100% + 10px);
	z-index: 1;
	width: 55px;
	height: 55px;
	background: url('../img/common/icon_pencil.webp') no-repeat;
	background-size: contain;
	content: '';
}

.animation .marker-large.animation-marker {
	background-size: 0 18px;
	transition: all .8s ease;
}
.animation.on .marker-large.animation-marker {
	background-size: 100% 18px;
}
.animation.on .marker-large.animation-marker.animation-indexintro {
	transition-delay: 0.8s;
}

.animation .marker-large.animation-marker::after {
	opacity: 0;
	left: 10px;
}

.animation.on .marker-large.animation-marker::after {
	animation: marker-large-after .8s ease forwards;
}

@keyframes marker-large-after {
	0% {
		opacity: 0;
		left: 10px;
	}
	10% {
		opacity: 1;
	}
	100% {
		opacity: 1;
		left: calc(100% + 10px);
	}
}

.animation.on .marker-large.animation-marker.animation-indexintro::after {
	animation-delay: 0.8s;
}



/* common ---------------------------------------*/
.section-title-en {
	margin-bottom: 24px;
	font-size: 84px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0;
}

.section-title-wrapper {
	position: relative;
	width: fit-content;
}

.section-title {
	margin-bottom: 10px;
	font-size: 48px;
	font-weight: 900;
	line-height: 1.5;
	letter-spacing: 0.08em;
}

.section-titleline {
	position: absolute;
	top: -20px;
	left: -24px;
	width: 46px;
	height: 40px;
}

.section-titleline #line_01 {
	stroke-dasharray: 14;
	stroke-dashoffset: 14;
	transition: stroke-dashoffset 0.4s ease;
}
.section-titleline #line_02 {
	stroke-dasharray: 11;
	stroke-dashoffset: 11;
	transition: stroke-dashoffset 0.4s ease;
}
.section-titleline #line_03 {
	stroke-dasharray: 21;
	stroke-dashoffset: 21;
	transition: stroke-dashoffset 0.4s ease;
}

/* .on付与で順番に表示 */
.animation.on .section-titleline #line_01 {
	stroke-dashoffset: 0;
	transition-delay: 0.5s;
}
.animation.on .section-titleline #line_02 {
	stroke-dashoffset: 0;
	transition-delay: 0.8s;
}
.animation.on .section-titleline #line_03 {
	stroke-dashoffset: 0;
	transition-delay: 1.1s;
}

.section-titleline-orange path{stroke: #f45b26;}
.section-titleline-blue path{stroke: #03aed2;}

.section-title b {
	font-size: 40px;
	font-weight: 900;
}

.section-lead {
	margin-bottom: 20px;
	font-size: 30px;
	font-weight: 900;
	line-height: calc(42 / 30);
	letter-spacing: 0.08em;
}

.section-text {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 0.14em;
}

.section-text b {
	font-size: 19px;
	font-weight: 900;
}


/* deco ---------------------------------------*/
.deco-geometry-01 {
	position: absolute;
	z-index: -2;
	width: min(calc(591 / 1440 * 100vw), 591px);
	aspect-ratio: 591 / 545;
	transform: translateX(-50%);
	background: url(../img/common/deco_geometry_01.webp) no-repeat center center / contain;
}
.deco-geometry-02 {
	position: absolute;
	z-index: -2;
	width: min(calc(406 / 1440 * 100vw), 406px);
	aspect-ratio: 406 / 462;
	transform: translateX(-50%);
	background: url(../img/common/deco_geometry_02.webp) no-repeat center center / contain;
}
.deco-geometry-03 {
	position: absolute;
	z-index: -2;
	width: min(calc(406 / 1440 * 100vw), 406px);
	aspect-ratio: 406 / 462;
	transform: translateX(-50%);
	background: url(../img/common/deco_geometry_03.webp) no-repeat center center / contain;
}
.deco-geometry-04 {
	position: absolute;
	z-index: -2;
	width: min(calc(406 / 1440 * 100vw), 406px);
	aspect-ratio: 406 / 462;
	transform: translateX(-50%);
	background: url(../img/common/deco_geometry_04.webp) no-repeat center center / contain;
}
.deco-shape-01 {
	position: absolute;
	z-index: -2;
	width: min(calc(429 / 1440 * 100vw), 429px);
	aspect-ratio: 429 / 374;
	transform: translateX(-50%);
	background: url(../img/common/deco_shape_01.webp) no-repeat center center / contain;
}
.deco-shape-02 {
	position: absolute;
	z-index: -2;
	width: min(calc(376 / 1440 * 100vw), 376px);
	aspect-ratio: 376 / 273;
	transform: translateX(-50%);
	background: url(../img/common/deco_shape_02.webp) no-repeat center center / contain;
}
.deco-shape-03 {
	position: absolute;
	z-index: -2;
	width: min(calc(296 / 1440 * 100vw), 296px);
	aspect-ratio: 296 / 219;
	transform: translateX(-50%);
	background: url(../img/common/deco_shape_04.webp) no-repeat center center / contain;
}
.deco-shape-04 {
	position: absolute;
	z-index: -2;
	width: min(calc(221 / 1440 * 100vw), 221px);
	aspect-ratio: 221 / 233;
	transform: translateX(-50%);
	background: url(../img/common/deco_shape_03.webp) no-repeat center center / contain;
}
.deco-shape-05 {
	position: absolute;
	z-index: -2;
	width: min(calc(268 / 1440 * 100vw), 268px);
	aspect-ratio: 268 / 243;
	transform: translateX(-50%);
	background: url(../img/common/deco_shape_05.webp) no-repeat center center / contain;
}
.deco-shape-06 {
	position: absolute;
	z-index: -2;
	width: min(calc(196 / 1440 * 100vw), 196px);
	aspect-ratio: 196 / 130;
	transform: translateX(-50%);
	background: url(../img/common/deco_shape_06.webp) no-repeat center center / contain;
}
.deco-dots-01 {
	position: absolute;
	z-index: -2;
	width: min(calc(268 / 1440 * 100vw), 268px);
	aspect-ratio: 268 / 269;
	transform: translateX(-50%);
	background: url(../img/common/deco_dots_01.webp) no-repeat center center / contain;
}
.deco-dots-02 {
	position: absolute;
	z-index: -2;
	width: min(calc(150 / 1440 * 100vw), 150px);
	aspect-ratio: 150 / 151;
	transform: translateX(-50%);
	background: url(../img/common/deco_dots_02.webp) no-repeat center center / contain;
	opacity: 0.2;
}
.deco-dots-03 {
	position: absolute;
	z-index: -2;
	width: min(calc(288 / 1440 * 100vw), 288px);
	aspect-ratio: 288 / 290;
	transform: translateX(-50%);
	background: url(../img/common/deco_dots_02.webp) no-repeat center center / contain;
}
.deco-dots-04 {
	position: absolute;
	z-index: -2;
	width: min(calc(168 / 1440 * 100vw), 168px);
	aspect-ratio: 168 / 169;
	transform: translateX(-50%);
	background: url(../img/common/deco_dots_01.webp) no-repeat center center / contain;
}
.deco-dots-05 {
	position: absolute;
	z-index: -2;
	width: min(calc(150 / 1440 * 100vw), 150px);
	aspect-ratio: 150 / 151;
	transform: translateX(-50%);
	background: url(../img/common/deco_dots_01.webp) no-repeat center center / contain;
	opacity: 0.2;
}
.floating-pages-head {animation: floating-pages-head 2.3s -1.2s infinite alternate ease-in-out;}
.floating-dots-01 {animation: floating-dots 2.8s infinite -0.7s alternate ease-in-out;}
.floating-dots-02 {animation: floating-dots 2.5s infinite -1.7s alternate ease-in-out;}
.floating-dots-03 {animation: floating-dots 2.4s infinite -1.9s alternate ease-in-out;}
.floating-dots-04 {animation: floating-dots 2.9s infinite -0.8s alternate ease-in-out;}
.floating-dots-05 {animation: floating-dots 2.7s infinite -1.5s alternate ease-in-out;}
@keyframes floating-dots {
	0% {transform: translate(-50%, 12px);}
	100% {transform: translate(-50%, -12px);}
}
@keyframes floating-pages-head {
	0% {transform: translateY(calc(-50% + 12px));}
	100% {transform: translateY(calc(-50% - 12px));}
}

.deco-dot {
	position: absolute;
	z-index: -1;
	transform: translateX(-50%);
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	content: '';
	animation: dot-twinkle ease-in-out infinite;
}
@keyframes dot-twinkle {
	0%, 100% {opacity: 1;}
	50% {opacity: 0.1;}
}
.deco-dot.twinkle-01 {
	animation-duration: 2.8s;
	animation-delay: -0.4s;
}
.deco-dot.twinkle-02 {
	animation-duration: 3.5s;
	animation-delay: -1.7s;
}
.deco-dot.twinkle-03 {
	animation-duration: 2.4s;
	animation-delay: -2.9s;
}
.deco-dot.twinkle-04 {
	animation-duration: 3.9s;
	animation-delay: -0.8s;
}
.deco-dot.twinkle-05 {
	animation-duration: 2.1s;
	animation-delay: -1.4s;
}
.deco-dot.twinkle-06 {
	animation-duration: 3.7s;
	animation-delay: -4.5s;
}


/* icon ---------------------------------------*/
.icon-arrow-left,
.icon-arrow-right {
	display: inline-block;
	width: 26px;
	height: 18px;
	background: #fff;
	transition: all 0.25s ease;
}
.icon-arrow-left {
	-webkit-mask: url(../img/common/icon_arrow_left.svg) no-repeat center center / contain;
	mask: url(../img/common/icon_arrow_left.svg) no-repeat center center / contain;
}
.icon-arrow-right {
	-webkit-mask: url(../img/common/icon_arrow_right.svg) no-repeat center center / contain;
	mask: url(../img/common/icon_arrow_right.svg) no-repeat center center / contain;
}
.icon-arrow-right-circle {
	display: inline-block;
	position: relative;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: #03aed2;
	transition: all 0.25s ease;
}
.icon-arrow-right-circle::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
	width: 17px;
	height: 12px;
	-webkit-mask: url(../img/common/icon_arrow_right.svg) no-repeat center center / contain;
	mask: url(../img/common/icon_arrow_right.svg) no-repeat center center / contain;
	background: #fff;
	content: '';
	transition: all 0.25s ease;
}


/* header ---------------------------------------*/
header {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 102;
	width: 100%;
}

.header-inner {
	position: relative;
}

.header-logo {
	position: absolute;
	top: 20px;
	left: 24px;
	z-index: 110;
	width: 180px;
}

.header-logo img {
	width: 100%;
}

#openmenu {display:none;}


/* gnav ---------------------------------------*/
.gnav {
	position:absolute;
	top: 15px;
	right: 0;
	padding-left: min(calc(60 / 1440 * 100vw), 60px);
	width: fit-content;
	height: 60px;
	background: color-mix(in srgb, rgba(178, 235, 255, 0.7), #fff);
	border-radius: 60px 0 0 60px;
}

.gnav-list {
	display: flex;
	gap: min(calc(60 / 1440 * 100vw), 60px);
	font-size: 0px;
	height: 100%;
}

.gnav-list > li {
	display: flex;
	align-items: center;
	position: relative;
	height: 100%;
}

.gnav-list > li > a,
.gnav-list > li > span {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	font-size: 14px;
	line-height: 1.1;
	letter-spacing: 0.05em;
	color: #143f87;
}

.gnav-list > li > a.gnav-list-contact {
	padding: 0 30px;
	background: #143f87;
	color: #fff;
}

.gnav-list > li > a.icon-arrow-gnav,
.gnav-list > li > span.icon-arrow-gnav {
	position: relative;
}

.gnav-list > li > a.icon-arrow-gnav::after,
.gnav-list > li > span.icon-arrow-gnav::after {
	position: absolute;
  top: calc(100% + 4px);
  left: 50%;
  width: 6px;
  height: 6px;
  transform: translate(-50%, -50%) rotate(45deg);
  border: 0;
  border-bottom: solid 1px #143f87;
  border-right: solid 1px #143f87;
  content: '';
}

.gnav-list > li:hover .gnav-list-sub {
	opacity: 1;
	visibility: visible;
}

.gnav-list-sub {
	position: absolute;
	top: 100%;
	left: 50%;
	z-index: 10;
	transform: translateX(-50%);
	padding-top: 2px;
	padding-bottom: 10px;
	min-width: 100%;
	width: fit-content;
	background: #044e46;
	border-radius: 0 0 8px 8px;
	opacity: 0;
	visibility: hidden;
	overflow: hidden;
	transition: all .25s ease;
}

.gnav-list-sub > li + li {
	margin-top: 1px;
}

.gnav-list-sub > li > a {
	display: block;
	padding: 10px 16px;
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 1;
	color: #143f87;
	white-space: nowrap;
}


/* footer ---------------------------------------*/
.footer { 
}

.footer-inner { 
	display: flex;
}

.footer-nav { 
	flex: 1;
	position: relative;
	z-index: 1;
	padding: 60px calc(60 / 1440 * 100%);
	background: #03aed2;
	border-radius: 0 74px 0 0;
	order: 2;
}

.footer-nav-wrapper { 
	display: flex;
	gap: 40px;
}

.footer-nav-block { 

}

.footer-nav-block-parent + .footer-nav-block-list,
.footer-nav-block-parent + .footer-nav-block-parent { 
	margin-top: 12px;
}

.footer-nav-block-list + .footer-nav-block-parent { 
	margin-top: 24px;
}

.footer-nav-block-parent {
	position: relative;
	padding-left: 24px;
}

.footer-nav-block-parent::before {
	position: absolute;
	top: 6px;
	left: 0;
	z-index: 1;
	width: 15px;
	height: 11px;
	background: url('../img/common/icon_arrow_right.svg') no-repeat;
	background-size: contain;
	content: '';
}

.footer-nav-block-parent > a { 
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #fff;
}

.footer-nav-block-list { 

}

.footer-nav-block-list > li { 
	padding-left: 24px;
}

.footer-nav-block-list > li + li { 
	margin-top: 12px;
}

.footer-nav-block-list > li > a { 
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #fff;
}

.footer-image {
	position: absolute;
	bottom: calc(100% - 40px);
	left: 37%;
	z-index: 1;
	width: min(calc(424 / 1440 * 100vw), 424px);
}

.footer-image img {
	width: 100%;
}

.footer-info { 
	position: relative;
	width: calc(480 / 1440 * 100vw);
	background: #f7f7f7;
	padding: 40px 20px 40px 40px;
	order: 1;
}

.footer-logo { 
	display: block;
	margin: 0 auto 40px;
	width: min(calc(317 / 440 * 100%), 317px);
}

.footer-logo img { 
	width: 100%;
}

.footer-btn .btn { 
	max-width: 250px;
	margin: 0 auto;
}

.footer-link { 
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 14px;
	letter-spacing: 0.14em;
	line-height: 1.5;
	color: #03aed2;
}

.footer-link .icon-arrow-right { 
	margin: 0 10px 0 0;
	width: 15px;
	height: 11px;
	background: #143f87;
}

.footer-copy { 
	position: absolute;
	bottom: 20px;
	left: 20px;
	font-size: 12px;
	letter-spacing: 0.14em;
	line-height: 1;
	color: #03aed2;
	transform: rotate(270deg);
	transform-origin: left top;
}


/* btn ---------------------------------------*/
.btn {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	padding: 10px 20px;
	max-width: 215px;
	width: 100%;
	height: 52px;
	background: #03aed2;
	border-radius: 50px;
}
.btn .btn-text {
	flex: 1;
	font-size: 15px;
	text-align: center;
	letter-spacing: 0.18em;
	color: #fff;
}
.btn .btn-arrowblock {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 4px;
	width: 46px;
	background: #fff;
	border-radius: 4px;
	transition: all 0.25s ease;
}
.btn .icon-arrow-right {
	width: 17px;
	height: 12px;
	background: #03aed2;
}
.btn.btn-white {
	background: #fff;
	color: #03aed2;
	box-shadow: 0 0 20px rgba(4, 0, 0, 0.1);
}
.btn.btn-white .btn-text {
	color: #03aed2;
}
.btn.btn-white .btn-arrowblock {
	background: #03aed2;
}
.btn.btn-white .icon-arrow-right {
	background: #fff;
}
.btn:hover {
	opacity: 1;
}
.btn:hover .btn-arrowblock {
	transform: translateX(8px);
}

/* .btn.is-disable {
	background: #aaa;
	border: 1px solid #aaa;
	cursor: auto;
	pointer-events: none;
}

.btn .icon-arrow.icon-arrow-next {right: 12px;}
.btn .icon-arrow.icon-arrow-prev {left: 12px;}
.btn .icon-arrow.icon-arrow-down {
	right: 24px;
	transform: translateY(-50%) rotate(90deg);
}

.btn-text {
	padding-bottom: 4px;
	font-size: 15px;
	letter-spacing: 0.18em;
	border-bottom: 1px solid #000;
}
.btn-text .icon-arrow {background: #000;}
.btn-text .icon-arrow.icon-arrow-next {margin: 0 0 -3px 10px;}
.btn-text .icon-arrow.icon-arrow-prev {margin: 0 10px -3px 0;}

.btn:hover {
	background: #fff;
	color: #ff9149;
	opacity: 1;
}

.btn.btn-white:hover {
	background: #ff9149;
	color: #fff;
}

.btn:hover .icon-arrow {background: #ff9149;}
.btn.btn-white:hover .icon-arrow {background: #fff;}

.btn-text:hover {
	border-bottom: 1px solid #ff9149;
	color: #ff9149;
	opacity: 1;
}

.btn-text:hover .icon-arrow {background: #ff9149;}

.btn-text.is-disabled {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
} */


/* sectionnews ---------------------------------------*/
.sectionnews {
	position: relative;
	z-index: 1;
	padding: 130px 20px;
}
.sectionnews-title {
	position: absolute;
	top: 0;
	left: calc(50% - 720px);
	transform: translateX(-50%);
	font-size: min(calc(196 / 1440 * 100vw), 196px);
	font-weight: 700;
	line-height: 1;
	text-align: center;
	letter-spacing: 0.05em;
}
.sectionnews-slider-container {
	position: relative;
	margin-top: 30px;
}
.sectionnews-slider { 
	overflow: visible;
}
.sectionnews-slider-list { 

}
.sectionnews-slider-list > li { 
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 0 20px rgba(4, 0, 0, 0.1);
	height: auto;
}
.sectionnews-slider-list > li > a {
	display: flex;
	flex-direction: column;
	height: 100%;
}
.sectionnews-slider-image {
	width: 100%;
	aspect-ratio: 208 / 180;
}
.sectionnews-slider-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.sectionnews-slider-content {
	background: #fff;
	padding: 10px 16px 10px;
}
.sectionnews-slider-info {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
}
.sectionnews-slider-info time {
	font-size: 12px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 0.05em;
}
.sectionnews-category {
	display: block;
	font-size: 11px;
	line-height: 1;
	text-align: center;
	letter-spacing: 0.05em;
	color: #fff;
	background: #03aed2;
	padding: 2px 4px;
}
.sectionnews-slider-title {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.15em;
}
.sectionnews-nopost {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.14em;
}
.sectionnews-slider-container .swiper-button-prev,
.sectionnews-slider-container .swiper-button-next {
	top: -40px;
	left: unset;
	width: 42px;
	height: 42px;
	background: #03aed2;
	border-radius: 50%;
	transition: all 0.25s ease;
}
.sectionnews-slider-container .swiper-button-prev {right: calc(1% + 56px);}
.sectionnews-slider-container .swiper-button-next {right: 1%;}
.sectionnews-slider-container .swiper-button-prev::after,
.sectionnews-slider-container .swiper-button-next::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	content: "";
	height: 17px;
	margin: auto;
	width: 12px;
	background: #fff;
	transition: all 0.25s ease;
}
/* 前への矢印カスタマイズ */
.sectionnews-slider-container .swiper-button-prev::after {
	-webkit-mask: url("../img/common/icon_arrow_left.svg") no-repeat center center / contain;
	mask: url("../img/common/icon_arrow_left.svg") no-repeat center center / contain;
}
/* 次への矢印カスタマイズ */
.sectionnews-slider-container .swiper-button-next::after {
	-webkit-mask: url("../img/common/icon_arrow_right.svg") no-repeat center center / contain;
	mask: url("../img/common/icon_arrow_right.svg") no-repeat center center / contain;
}
.sectionnews-slider-container .swiper-button-prev:hover,
.sectionnews-slider-container .swiper-button-next:hover {
	background: #f2f2f2;
	opacity: 1;
}
.sectionnews-slider-container .swiper-button-prev:hover::after,
.sectionnews-slider-container .swiper-button-next:hover::after {
	background: #03aed2;
}
.swiper-button-disabled {
	opacity: 0.2!important;
	cursor: pointer!important;
}
/* スライドが5枚以下の時の中央揃え */
.sectioninterview-slider.no-slide {
	display: flex;
	justify-content: center;
	gap: calc(30 / 1200 * 100%);
}
.sectioninterview-slider.no-slide .swiper-wrapper {
	transform: none !important;
	display: flex;
	justify-content: center;
}
.sectioninterview-slider.no-slide .swiper-slide {
	width: calc(208 / 1200 * 100%);
}
.sectionnews-btn {
	margin-top: 40px;
}
.sectionnews-btn .btn {
	margin-left: auto;
}
.deco-shape-sectionnews-01 {
	bottom: 0;
	left: calc(50% - 720px);
}
.deco-dot-sectionnews-01 {
	top: 90px;
	left: calc(50% + 80px);
	width: 22px;
}


/* sectionmessage ---------------------------------------*/
.sectionmessage {
	position: relative;
	z-index: 1;
	padding: 0 20px 90px;
}
.sectionmessage .inner {
	position: relative;
}
.sectionmessage-block {
	position: relative;
	width: calc(480 / 1200 * 100%);
	margin-bottom: 40px;
}
.sectionmessage-block-title {
	font-size: 42px;
	white-space: nowrap;
}
.sectionmessage-block-image {
	position: absolute;
	top: 140px;
	left: calc(100% + 20px);
	width: min(calc(166 / 1240 * 100vw), 166px);
}
.sectionmessage-block-image img {
	width: 100%;
}
.sectionmessage-link a {
	display: block;
	position: relative;
	width: calc(600 / 1200 * 100%);
	min-width: 480px;
	padding: 40px calc(70 / 1200 * 100%) 40px calc(36 / 1200 * 100%);
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 0 6px rgba(73, 73, 73, 0.2);
	transition: all 0.25s ease;
}
.sectionmessage-link a:hover {
	box-shadow: 0 0 12px rgba(73, 73, 73, 0.3);
	opacity: 1;
}
.sectionmessage-link-title {
	margin-bottom: 20px;
}
.sectionmessage-link-title span {
	display: block;
	margin-bottom: 10px;
	font-size: 18px;
	font-weight: 600;
}
.sectionmessage-link-title b {
	font-size: 28px;
	font-weight: 900;
	line-height: 1.5;
	letter-spacing: 0.05em;
}
.sectionmessage-link-text {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.1em;
	color: #9b9b9b;
}
.sectionmessage-link a .icon-arrow-right-circle {
	position: absolute;
	bottom: 20px;
	right: 20px;
}
.sectionmessage-link a:hover .icon-arrow-right-circle {
	background: #f2f2f2;
}
.sectionmessage-link a:hover .icon-arrow-right-circle::after {
	background: #03aed2;
}
.sectionmessage-image {
	position: absolute;
}
.sectionmessage-image-01 {
	top: 0;
	right: 0;
	width: calc(428 / 1200 * 100%);
	height: 266px;
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 0 6px rgba(73, 73, 73, 0.2);
}
.sectionmessage-image-01 img {
	width: 100%;
}
.sectionmessage-image-02 {
	top: -70px;
	left: 57%;
	width: calc(81 / 1200 * 100%);
}
.sectionmessage-image-02 img {
	width: 100%;
}
.sectionmessage-image-03 {
	top: 320px;
	right: 0;
	width: calc(143 / 1200 * 100%);
}
.sectionmessage-image-03 img {
	width: 100%;
}
.deco-geometry-sectionmessage-01 {
	bottom: -60px;
	left: calc(50% - 800px);
}


/* pages ---------------------------------------*/
.pagebg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}


/* form ---------------------------------------*/
.form-text,
.form-date{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	padding: 8px 10px;
	border: 1px solid #d8d8d8;
	border-radius: 8px!important;
	width: 100%;
	line-height: 1;
	height: 42px;
	background: #fff;
}

::placeholder {color:#A6A6A6;}

.form-textarea{
	-webkit-appearance: none;
	outline: none;
	padding: 13px 15px;
	border: 1px solid #d8d8d8;
	border-radius: 8px!important;
	width: 100%!important;
	height: 150px;
	box-sizing: border-box;
	resize: vertical;
}

input[type="submit"].btn-submit,
button[type="submit"].btn-submit {
	display: inline-block;
	position: relative;
	max-width: 265px;
	width: 100%;
	height: 46px;
	border-radius: 50px;
	padding: 0 20px 2px;
	font-size: 15px;
	text-align: center;
	letter-spacing: 0.18em;
	background: #ff9149;
	border: 1px solid #ff9149;
	color: #fff;
	transition: all .25s ease;
}

input[type="submit"].btn-submit:hover,
button[type="submit"].btn-submit:hover {
	background: #fff;
	color: #ff9149;
}

/* Not Found ---------------------------------------*/
.wrapper-notfound {
	min-height: calc(100vh - 369px);
}

.notfound {
	padding: 160px 20px 260px;
}

.notfound-title {
	font-size: 28px;
	line-height: 1.75;
	text-align: center;
	letter-spacing: 0.1em;
	color: #03aed2;
	margin-bottom: 40px;
}

.notfound-text {
	font-size: 15px;
	line-height: 1.75;
	text-align: center;
	letter-spacing: 0.18em;
}

.notfound-btn {
	margin-top: 70px;
}

.notfound-btn .btn {
	max-width: 280px;
	margin: 0 auto;
}


/* animation ---------------------------------------*/
.animation,
.animation-bottom {
	transition: all 1.2s ease;
	transform:translate(0, 20px);
	opacity:0;
}

.animation.on,
.animation-bottom.on {
	transform:translate(0, 0);
	opacity:1;
}

/* animation-left, animation-right */
.animation.animation-left {transform:translate(50px,0);}
.animation.animation-right {transform:translate(-50px,0);}
.animation.animation-left.on,
.animation.animation-right.on {transform:translate(0, 0);}


/* animation-slide-left, animation-slide-right */
.animation.animation-slide-leftangle,
.animation.animation-slide-rightangle {
	transform:translate(-50%,0);
	transition: all 1.8s ease;
}
.animation.animation-slide-leftangle {clip-path:polygon(50% -50%, 150% 50%, 150% 50%, 50% -50%);}
.animation.animation-slide-rightangle {clip-path:polygon(50% 150%, -50% 50%, -50% 50%, 50% 150%);}

.animation.animation-slide-leftangle.on,
.animation.animation-slide-rightangle.on {transform:translate(-50%, 0);}
.animation.animation-slide-leftangle.on {clip-path:polygon(50% -50%, 150% 50%, 50% 150%, -50% 50%);}
.animation.animation-slide-rightangle.on {clip-path:polygon(50% 150%, -50% 50%, 50% -50%, 150% 50%);}


/* animation-image */
.animation.animation-image {transform:translate(-50%, 20px)}
.animation.animation-image.animation-left {transform:translate(calc(-50% + 50px),0);}
.animation.animation-image.animation-right {transform:translate(calc(-50% - 50px),0);}
.animation.animation-image.on,
.animation.animation-image.animation-left.on,
.animation.animation-image.animation-right.on {transform:translate(-50%, 0);}
.animation.animation-image.animation-slide-left,
.animation.animation-image.animation-slide-right {transform:translate(-50%,0);}

.animation.animation-center {transform:translate(-50%, calc(-50% + 20px))}
.animation.animation-center.animation-left {transform:translate(calc(-50% + 50px),-50%);}
.animation.animation-center.animation-right {transform:translate(calc(-50% - 50px),-50%);}
.animation.animation-center.on,
.animation.animation-center.animation-left.on,
.animation.animation-center.animation-right.on {transform:translate(-50%, -50%);}




/* animation-title */
.animation.animation-title {
	transition: unset;
	transform:unset;
}
.animation-title .series-text {
	display: inline-block;
}
.animation-title.on .series-text {
	animation: animation-title 0.2s cubic-bezier(0.18, 0.89, 0.32, 1.28) forwards;
	opacity: 0;
}

@keyframes animation-title {
	0% {
		opacity: 0;
		transform: scale(0) translateX(-8px);
	}
	50% {
		opacity: 1;
		transform: scale(1.25) translateX(4px);
	}
	100% {
		opacity: 1;
		transform: scale(1) translateX(0);
	}
}
.animation-title.on .series-text:nth-of-type(1){animation-delay:0.05s;}
.animation-title.on .series-text:nth-of-type(2){animation-delay:0.1s;}
.animation-title.on .series-text:nth-of-type(3){animation-delay:0.15s;}
.animation-title.on .series-text:nth-of-type(4){animation-delay:0.2s;}
.animation-title.on .series-text:nth-of-type(5){animation-delay:0.25s;}
.animation-title.on .series-text:nth-of-type(6){animation-delay:0.3s;}
.animation-title.on .series-text:nth-of-type(7){animation-delay:0.35s;}
.animation-title.on .series-text:nth-of-type(8){animation-delay:0.4s;}
.animation-title.on .series-text:nth-of-type(9){animation-delay:0.45s;}
.animation-title.on .series-text:nth-of-type(10){animation-delay:0.5s;}
.animation-title.on .series-text:nth-of-type(11){animation-delay:0.55s;}
.animation-title.on .series-text:nth-of-type(12){animation-delay:0.6s;}
.animation-title.on .series-text:nth-of-type(13){animation-delay:0.65s;}
.animation-title.on .series-text:nth-of-type(14){animation-delay:0.7s;}
.animation-title.on .series-text:nth-of-type(15){animation-delay:0.75s;}
.animation-title.on .series-text:nth-of-type(16){animation-delay:0.8s;}
.animation-title.on .series-text:nth-of-type(17){animation-delay:0.85s;}
.animation-title.on .series-text:nth-of-type(18){animation-delay:0.9s;}
.animation-title.on .series-text:nth-of-type(19){animation-delay:0.95s;}
.animation-title.on .series-text:nth-of-type(20){animation-delay:1s;}
.animation-title.on .series-text:nth-of-type(21){animation-delay:1.05s;}
.animation-title.on .series-text:nth-of-type(22){animation-delay:1.1s;}
.animation-title.on .series-text:nth-of-type(23){animation-delay:1.15s;}
.animation-title.on .series-text:nth-of-type(24){animation-delay:1.2s;}
.animation-title.on .series-text:nth-of-type(25){animation-delay:1.25s;}
.animation-title.on .series-text:nth-of-type(26){animation-delay:1.3s;}
.animation-title.on .series-text:nth-of-type(27){animation-delay:1.35s;}
.animation-title.on .series-text:nth-of-type(28){animation-delay:1.4s;}
.animation-title.on .series-text:nth-of-type(29){animation-delay:1.45s;}
.animation-title.on .series-text:nth-of-type(30){animation-delay:1.5s;}
.animation-title.on .series-text:nth-of-type(31){animation-delay:1.55s;}



/* animation-other */
.animation.animation-marker,
.animation.animation-band {
	opacity: 1;
	transform: translate(0, 0);
}

.animation.animation-marker {background-size: 0 5px;}
.animation.animation-band {background-size: 0 100%;}

.animation.on.animation-marker {
	background-size: 100% 5px;
	transition: all .8s ease;
}

.animation.on.animation-band {
	background-size: 100% 100%;
	transition: all .8s ease;
}

.animation-image-marker::after {
	clip-path: inset(0 100% 0 0);
	transition: all 0.4s 0.9s ease;
}

.animation.on .animation-image-marker::after {
	clip-path: inset(0 0 0 0);
}

.animation-floating {
	animation: floating 2.2s infinite alternate ease-in-out;
}
@keyframes floating {
	0% {transform: translate(0, 8px);}
	100% {transform: translate(0, -8px);}
}




/* pc only */
@media screen and (min-width: 768px){
	.sp{display: none !important;}
	.spbr{display: none;}

	.sectionnews-slider-list > li { 
		width: 208px !important;
	}
}

/* large pc */
@media screen and (min-width: 1440px){

}

/* small pc */
@media screen and (min-width: 768px) and (max-width: 1439px) {
	.sectionnews-title {left: 0;}
	.deco-geometry-sectionmessage-01 {left: -5.6%;}

}



/* sp only */
@media screen and (max-width: 767px){
	/* common item ---------------------------------------*/

	.pc{display: none !important;}
	.pcbr{display: none;}

	/* icon ---------------------------------------*/
	.icon-arrow {
		width: 16px;
		height: 11px;
	}

	/* layout ---------------------------------------*/
	.inner,
	.wrapper{
		min-width: 0;
		width: 100%;
	}

	.inner {
		max-width: 500px;
	}

	.marker-large {
		padding-bottom: 10px;
		background-size: 100% 10px;
	}
	.marker-large::after {
		left: calc(100% + 6px);
		width: 30px;
		height: 30px;
	}
	.animation .marker-large.animation-marker {
		background-size: 0 10px;
	}
	.animation.on .marker-large.animation-marker {
		background-size: 100% 10px;
	}
	.animation .marker-large.animation-marker::after {
		opacity: 0;
		left: 6px;
	}
	@keyframes marker-large-after {
		0% {
			opacity: 0;
			left: 10px;
		}
		10% {
			opacity: 1;
		}
		100% {
			opacity: 1;
			left: calc(100% + 6px);
		}
	}


	/* common ---------------------------------------*/
	.section-title-en {
		margin-bottom: 16px;
		font-size: 44px;
	}
	.section-title {
		font-size: 28px;
	}
	.section-titleline {
		top: -14px;
		left: -14px;
		width: 26px;
		height: 22px;
	}
	.section-lead {
		margin-bottom: 16px;
		font-size: 20px;
		line-height: 1.5;
	}
	.section-text b {
		font-size: 18px;
	}


	/* deco ---------------------------------------*/
	.deco-geometry-01 {width: min(calc(200 / 375 * 100vw), 288px);}
	.deco-geometry-02 {width: min(calc(160 / 375 * 100vw), 230px);}
	.deco-geometry-03 {width: min(calc(160 / 375 * 100vw), 230px);}
	.deco-geometry-04 {width: min(calc(160 / 375 * 100vw), 230px);}
	.deco-shape-01 {width: min(calc(200 / 375 * 100vw), 288px);}
	.deco-shape-02 {width: min(calc(170 / 375 * 100vw), 244px);}
	.deco-shape-03 {width: min(calc(150 / 375 * 100vw), 216px);}
	.deco-shape-04 {width: min(calc(110 / 375 * 100vw), 158px);}
	.deco-shape-05 {width: min(calc(130 / 375 * 100vw), 187px);}
	.deco-shape-06 {width: min(calc(100 / 375 * 100vw), 144px);}
	.deco-dots-01 {width: min(calc(130 / 375 * 100vw), 187px);}
	.deco-dots-02 {width: min(calc(80 / 375 * 100vw), 112px);}
	.deco-dots-03 {width: min(calc(140 / 375 * 100vw), 201px);}
	.deco-dots-04 {width: min(calc(80 / 375 * 100vw), 115px);}
	.deco-dots-05 {width: min(calc(80 / 375 * 100vw), 112px);}


	/* icon ---------------------------------------*/
	.icon-arrow-left,
	.icon-arrow-right {
		width: 20px;
		height: 14px;
	}
	.icon-arrow-right-circle {
		width: 30px;
		height: 30px;
	}
	.icon-arrow-right-circle::after {
		width: 14px;
		height: 10px;
	}



	/* header ---------------------------------------*/
	header {
		position: fixed;
		transition: all .25s ease;
	}

	.header-inner {
		height:50px;
	}

	.header-logo {
		top: 9px;
		left: 16px;
		width: 120px;
	}

	.header-logo:after {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 120px;
		aspect-ratio: 191 / 53;
		background: url('../img/common/logo_white.svg') no-repeat;
		background-size: contain;
		content: '';
		transition: all .25s ease;
		opacity: 0;
	}

	.header-logo img {transition: all .25s ease;}

	#openmenu {
		display:block;
		width:60px;
		height:50px;
		text-indent: -99em;
		overflow: hidden;
		position:absolute;
		right: 0;
		top: 0;
		z-index: 110;
		transition: all .25s ease;
	}

	#openmenu span {
		content:'';
		display: block;
		width:30px;
		height:2px;
		background: #03aed2;
		border-radius: 2px;
		position: absolute;
		left:16px;
		transition: all .25s ease;
	}
	#openmenu span:nth-child(1) {top:18px;}
	#openmenu span:nth-child(2) {top:27px;}

	#openmenu.is-open span {
		top: 24px;
		left: 16px;
		background: #fff;
	}
	#openmenu.is-open span:nth-child(1) {transform:rotate(45deg);}
	#openmenu.is-open span:nth-child(2) {transform:rotate(-45deg);}

	.header-inner.is-open .header-logo::after {opacity: 1;}
	.header-inner.is-open .header-logo img {opacity: 0;}
	header.is-active,
	header.is-notfound {
		display: block;
		background: rgba(255, 255, 255, 0.8);
	}
	header.is-active #openmenu.is-open span,
	header.is-notfound #openmenu.is-open span {background: #fff;}



	/* gnav ---------------------------------------*/
	.gnav {
		background: #03aed2;
		padding-bottom: 65px;
		overflow:auto;
		z-index:100;
		right:0;
		top:0;
		width:100%;
		min-width: 151px;
		max-width: unset;
		height: 100vh;
		transition: all .25s ease;
		transform:translate3d(100%,0,0);
		padding: 90px 20px;
		border-radius: 0;
	}

	.gnav.is-active {
		position: fixed;
		transform:translate3d(0,0,0);
		opacity:1;
	}

	.gnav-list {
		display: block;
		height: unset;
	}

	.gnav-list > li {
		display: block;
		height: unset;
	}

	.gnav-list > li + li {
		margin-top: 30px;
	}

	.gnav-list > li > a,
	.gnav-list > li > span {
		display: inline-block;
		font-size: 18px;
		color: #fff;
	}

	.gnav-list > li > a.gnav-list-contact {
		padding: 12px 40px;
		background: #143f87;
		color: #fff;
		border-radius: 50px;
	}

	.gnav-list > li a:hover {
		opacity: 1;
		color: #fff;
	}

	.bodyfixed {
		position: fixed;
		width: 100%;
		height: 100%;
	}


	/* footer ---------------------------------------*/
	.footer-inner { 
		display: block;
	}

	.footer-nav { 
		padding: 120px 20px 60px;
		border-radius: 0 52px 0 0;
	}

	.footer-nav-wrapper { 
		flex-wrap: wrap;
		gap: 30px 60px;
	}

	.footer-nav-block-parent + .footer-nav-block-list { 
		margin-top: 12px;
	}

	.footer-nav-block-list + .footer-nav-block-parent,
	.footer-nav-block-parent + .footer-nav-block-parent { 
		margin-top: 24px;
	}

	.footer-nav-block-parent {
		padding-left: 20px;
	}

	.footer-nav-block-parent::before {
		top: 4px;
		width: 13px;
		height: 9px;
	}

	.footer-nav-block-list > li { 
		padding-left: 20px;
	}

	.footer-nav-block-list > li + li { 
		margin-top: 12px;
	}

	.footer-image {
		bottom: calc(100% - 100px);
		left: 44%;
		width: 174px;
	}

	.footer-info { 
		width: 100%;
		padding: 40px 20px 20px;
	}

	.footer-logo { 
		display: block;
		margin: 0 auto 40px;
		max-width: 220px;
		width: 100%;
	}

	.footer-btn .btn { 
		max-width: 250px;
	}

	.footer-link { 
		display: block;
		position: unset;
		width: fit-content;
		margin: 24px auto 0;
		transform: unset;
		font-size: 12px;
	}

	.footer-link .icon-arrow-right { 
		width: 12px;
		height: 9px;
	}

	.footer-copy { 
		position: unset;
		margin: 40px auto 0;
		transform: unset;
		text-align: center;
	}


	/* btn ---------------------------------------*/
	.btn {
		gap: 10px;
		max-width: 200px;
		height: 46px;
		padding: 8px 16px;
	}
	.btn .btn-text {
    font-size: 14px;
	}
	.btn .btn-arrowblock {
		padding: 3px;
		width: 32px;
	}
	.btn .icon-arrow-right {
		width: 14px;
		height: 10px;
	}


	/* .btn .icon-arrow.icon-arrow-next {right: 10px;}
	.btn .icon-arrow.icon-arrow-prev {left: 10px;}

	.btn-text .icon-arrow.icon-arrow-next {margin: 0 0 0 4px;}
	.btn-text .icon-arrow.icon-arrow-prev {margin: 0 4px 0 0;} */


	/* sectionnews ---------------------------------------*/
	.sectionnews {
		padding: 42px 16px 80px;
	}
	.sectionnews .inner {
		position: relative;
	}
	.sectionnews-title {
		top: -42px;
    left: -16px;
		font-size: 64px;
	}
	.sectionnews-slider-container {
		margin-top: 50px;
	}
	.sectionnews-slider-content {
		padding: 10px 12px;
	}
	.sectionnews-nopost {
		font-size: 15px;
	}
	.sectionnews-slider-container .swiper-button-prev,
	.sectionnews-slider-container .swiper-button-next {
		top: -30px;
		width: 36px;
		height: 36px;
	}
	.sectionnews-slider-container .swiper-button-prev:hover,
	.sectionnews-slider-container .swiper-button-next:hover {
		background: #03aed2;
	}
	.sectionnews-slider-container .swiper-button-prev:hover::after,
	.sectionnews-slider-container .swiper-button-next:hover::after {
		background: #fff;
	}
	/* スライドが5枚以下の時の中央揃え */
	.sectioninterview-slider.no-slide {
		gap: 15px;
	}
	.sectioninterview-slider.no-slide .swiper-slide {
		width: calc(216 / 1200 * 100%);
	}
	.sectionnews-btn {
		margin-top: 40px;
	}
	.deco-shape-sectionnews-01 {
		bottom: 40px;
		left: 10%;
	}
	.deco-dot-sectionnews-01 {
		top: 0px;
		left: 61%;
		width: 14px;
	}


	/* sectionmessage ---------------------------------------*/
	.sectionmessage {
		padding: 20px 16px 140px;
	}
	.sectionmessage-block {
		width: 100%;
		margin-bottom: 24px;
	}
	.sectionmessage-block-title {
		font-size: 28px;
		white-space: unset;
	}
	.sectionmessage-block-image {
		top: calc(100% + 20px);
		left: unset;
		right: 0;
		width: 70px;
	}
	.sectionmessage-link a {
		margin-top: 32px;
		padding: 24px 16px 40px;
		width: 100%;
		min-width: 0;
	}
	.sectionmessage-link-title {
		margin-bottom: 12px;
	}
	.sectionmessage-link-title span {
		margin-bottom: 6px;
		font-size: 20px;
	}
	.sectionmessage-link-title b {
		font-size: 24px;
	}
	.sectionmessage-link a .icon-arrow-right-circle {
		bottom: 10px;
		right: 10px;
	}
	.sectionmessage-image-01 {
		position: unset;
		width: calc(100% - 80px);
		height: auto;
		aspect-ratio: 428 / 266;
		margin: 24px auto 0 0;
	}
	.sectionmessage-image-02 {
		top: -30px;
		left: 87%;
		width: 44px;
	}
	.sectionmessage-image-03 {
		top: calc(100% + 10px);
		width: 80px;
	}
	.deco-geometry-sectionmessage-01 {
		bottom: -40px;
		left: 8%;
	}


	/* form ---------------------------------------*/
	.form-text,
	.form-date{
		padding: 8px 12px;
		height: 38px;
	}

	.form-textarea{
		padding: 8px 12px;
	}


	/* Not Found ---------------------------------------*/
	.wrapper-notfound {
		margin-top: 80px;
		min-height: unset;
	}

	.notfound {
		padding: 74px 16px 70px;
	}

	.notfound-title {
		font-size: 24px;
		margin-bottom: 40px;
	}

	.notfound-text {
		font-size: 14px;
	}

	.notfound-btn {
		margin-top: 60px;
	}

	.notfound-btn .btn {
		max-width: 240px;
	}

}




/* iphone5 iphoneSE用 */
@media screen and (max-width: 370px){

}