@charset "utf-8";

:root {
	
	/* サイズ */
	--Size_02: 0.2rem;	--Size_04: 0.4rem;	--Size_06: 0.6rem;	--Size_08: 0.8rem;	--Size_10: 1.0rem;
	--Size_12: 1.2rem;	--Size_14: 1.4rem;	--Size_16: 1.6rem;	--Size_18: 1.8rem;	--Size_20: 2.0rem;
	--Size_22: 2.2rem;	--Size_24: 2.4rem;	--Size_26: 2.6rem;	--Size_28: 2.8rem;	--Size_30: 3.0rem;
	--Size_32: 3.2rem;	--Size_34: 3.4rem;	--Size_36: 3.6rem;	--Size_38: 3.8rem;	--Size_40: 4.0rem;
	--Size_42: 4.2rem;	--Size_44: 4.4rem;	--Size_46: 4.6rem;	--Size_48: 4.8rem;	--Size_50: 5.0rem;
	--Size_52: 5.2rem;	--Size_54: 5.4rem;	--Size_56: 5.6rem;	--Size_58: 5.8rem;	--Size_60: 6.0rem;
	--Size_62: 6.2rem;	--Size_64: 6.4rem;	--Size_66: 6.6rem;	--Size_68: 6.8rem;	--Size_70: 7.0rem;
	--Size_72: 7.2rem;	--Size_74: 7.4rem;	--Size_76: 7.6rem;	--Size_78: 7.8rem;	--Size_80: 8.0rem;
	--Size_82: 8.2rem;	--Size_84: 8.4rem;	--Size_86: 8.6rem;	--Size_88: 8.8rem;	--Size_90: 9.0rem;
	--Size_100: 10.0rem;
	--Size_110: 11.0rem;
	--Size_120: 12.0rem;
	--Size_130: 13.0rem;
	--Size_140: 14.0rem;
	--Size_150: 15.0rem;
	--Size_160: 16.0rem;
	--Size_170: 17.0rem;
	--Size_180: 18.0rem;
	--Size_190: 19.0rem;
	--Size_200: 20.0rem;	--Size_220: 22.0rem;	--Size_240: 24.0rem;	--Size_260: 26.0rem;	--Size_280: 28.0rem;
	--Size_300: 30.0rem;	--Size_320: 32.0rem;	--Size_340: 34.0rem;	--Size_360: 36.0rem;	--Size_380: 38.0rem;
	--Size_400: 40.0rem;	--Size_420: 42.0rem;	--Size_440: 44.0rem;	--Size_460: 46.0rem;	--Size_480: 48.0rem;
	
	/* グレー #1D1D1D*/
	--Color_1D100: rgba(29,29,29,1.0);
	--Color_1D080: rgba(29,29,29,0.8);
	--Color_1D060: rgba(29,29,29,0.6);
	--Color_1D040: rgba(29,29,29,0.4);
	--Color_1D020: rgba(29,29,29,0.2);
	--Color_1D000: rgba(29,29,29,0.0);
	
	/* グレー #707070 */
	--Color_70100: rgba(112,112,112,1.0);
	--Color_70080: rgba(112,112,112,0.8);
	--Color_70060: rgba(112,112,112,0.6);
	--Color_70040: rgba(112,112,112,0.4);
	--Color_70020: rgba(112,112,112,0.2);
	--Color_70000: rgba(112,112,112,0.0);
	
	/* オレンジ #DC6A0B */
	--Color_A100: rgba(220,106,11,1.0);
	--Color_A080: rgba(220,106,11,0.8);
	--Color_A060: rgba(220,106,11,0.6);
	--Color_A040: rgba(220,106,11,0.4);
	--Color_A020: rgba(220,106,11,0.2);
	--Color_A000: rgba(220,106,11,0.0);

	/* 青 #006bb9*/
	--Color_B100: rgba(0,107,185,1.0);
	--Color_B080: rgba(0,107,185,0.8);
	--Color_B060: rgba(0,107,185,0.6);
	--Color_B040: rgba(0,107,185,0.4);
	--Color_B020: rgba(0,107,185,0.2);
	--Color_B000: rgba(0,107,185,0.0);

	/* 緑 #009944*/
	--Color_C100: rgba(0,153,68,1.0);
	--Color_C080: rgba(0,153,68,0.8);
	--Color_C060: rgba(0,153,68,0.6);
	--Color_C040: rgba(0,153,68,0.4);
	--Color_C020: rgba(0,153,68,0.2);
	--Color_C000: rgba(0,153,68,0.0);
	
	/* オレンジ #fabe00*/
	--Color_D100: rgba(250,190,0,1.0);
	--Color_D080: rgba(250,190,0,0.8);
	--Color_D060: rgba(250,190,0,0.6);
	--Color_D040: rgba(250,190,0,0.4);
	--Color_D020: rgba(250,190,0,0.2);
	--Color_D000: rgba(250,190,0,0.0);
	
	/* 黄 #fff100*/
	--Color_E100: rgba(255,241,0,1.0);
	--Color_E080: rgba(255,241,0,0.8);
	--Color_E060: rgba(255,241,0,0.6);
	--Color_E040: rgba(255,241,0,0.4);
	--Color_E020: rgba(255,241,0,0.2);
	--Color_E000: rgba(255,241,0,0.0);
	
	/* グレー #494B4D*/
	--Color_G100: rgba(73, 75, 77,1.0);
	--Color_G080: rgba(73, 75, 77,0.8);
	--Color_G060: rgba(73, 75, 77,0.6);
	--Color_G040: rgba(73, 75, 77,0.4);
	--Color_G020: rgba(73, 75, 77,0.2);
	--Color_G000: rgba(73, 75, 77,0.0);
	
	/*　白　#FFFFFF　*/
	--Color_FF100: rgba(255, 255, 255, 1.0);
	--Color_FF080: rgba(255, 255, 255, 0.8);
	--Color_FF060: rgba(255, 255, 255, 0.6);
	--Color_FF040: rgba(255, 255, 255, 0.4);
	--Color_FF020: rgba(255, 255, 255, 0.2);
	--Color_FF000: rgba(255, 255, 255, 0.0);
	
	/*　黒　#23232C　*/
	--Color_BK100: rgba(35, 35, 44, 1.0);
	--Color_BK080: rgba(35, 35, 44, 0.8);
	--Color_BK000: rgba(35, 35, 44, 0.0);
	
	/* ボタンカラー */
	--ButtonA : #FF7C0D;
	--ButtonB : #FFBB0D;
	--ButtonC : #FF730E;
	--ButtonD : #25B6B6;

	
	/* ボーダー */
	--Border-radius_S2: var(--Size_06) 0 var(--Size_06) 0;
	--Border-radius_S4: var(--Size_06);
	
 	--Border-radius_M2: var(--Size_12) 0 var(--Size_12) 0;
 	--Border-radius_M4: var(--Size_12);
	
	--Border-radius_L4: var(--Size_400);
	
	/*　シャドウ　*/
	--ShadowR: -3px -1px 0px #FF730E;
	--ShadowG: 2px 1px 0px #25B6B6;

	/* ボタングラデーション　*/
	--Gradation: linear-gradient(to right, var(--ButtonA),var(--ButtonB));
	--Button: linear-gradient(to right, var(--ButtonA),var(--ButtonB));

	/* ギミック */
	--Transition_04: all .4s ease 0s;
	--Transition_06: all .6s ease 0s;

}

@media (prefers-color-scheme: dark) {
	:root {
	}
}

@media screen and (max-width:480px) {
	:root {
		--Logo_size: 160px;
		--A_Button_width: 240px;
		--A_Button_height: 60px;
		--A_Button_border-radius: 10px 0 10px 0;

		--Header_fixAlpha_display: none;
		--Header_height: 60px;
		--Header_Logo_width: 153.42px;
		--Header_gap: 34px;
		--Header_Link_font-size: 20px;
		--Header_sp_display: flex;
		--Header_sp_Menu-btn_display: flex;
		
		--H2: 48px;

		--Padding_W: 16px;
		--Padding_W2: 16px;

		--Footer_P_padding: 30px 0 0;

		--Flex-direction_CRRR: column;
		--Flex-direction_CRCC: column;
		--Flex-direction_CCRR: column;
		--Flex-direction_RCCC: row;
	}
}

@media screen and (min-width:481px) and (max-width: 768px) {
	:root {
		--Logo_size: 209px;
		--A_Button_width: 280px;
		--A_Button_height: 70px;
		--A_Button_border-radius: 14px 0 14px 0;

		--Header_fixAlpha_display: none;
		--Header_height: 94px;
		--Header_Logo_width: 201.36px;
		--Header_gap: 34px;
		--Header_Link_font-size: 16px;
		--Header_sp_display: flex;
		--Header_sp_Menu-btn_display: flex;
		
		--H2: var(--Size_36);

		--Padding_W: 6vw;
		--Padding_W2: 2vw;

		--Footer_P_padding: 0;

		--Flex-direction_CRRR: row;
		--Flex-direction_CRCC: row;
		--Flex-direction_CCRR: column;
		--Flex-direction_RRCC: row;
		--Flex-direction_RCCC: column;
	}
}

@media screen and (min-width:769px) and ( max-width:1024px) {
	:root {
		--Logo_size: 209px;
		--A_Button_width: 280px;
		--A_Button_height: 70px;
		--A_Button_border-radius: 14px 0 14px 0;

		--Header_fixAlpha_display: flex;
		--Header_height: 94px;
		--Header_Logo_width: 201.36px;
		--Header_gap: 34px;
		--Header_Link_font-size: 16px;
		--Header_sp_display: none;
		--Header_sp_Menu-btn_display: none;
		
		--H2: var(--Size_44);

		--Padding_W: 12vw;
		--Padding_W2: 6vw;

		--Footer_P_padding: 0;

		--Flex-direction_CRRR: row;
		--Flex-direction_CRCC: column;
		--Flex-direction_CCRR: row;
		--Flex-direction_RRCC: column;
		--Flex-direction_RCCC: column;
	}
}

@media screen and (min-width:1025px) and ( max-width:1920px) {
	:root {
		--Logo_size: 209px;
		--A_Button_width: 280px;
		--A_Button_height: 70px;
		--A_Button_border-radius: 14px 0 14px 0;

		--Header_fixAlpha_display: flex;
		--Header_height: 94px;
		--Header_Logo_width: 201.36px;
		--Header_gap: 34px;
		--Header_Link_font-size: 16px;
		--Header_sp_display: none;
		--Header_sp_Menu-btn_display: none;
		
		--H2: var(--Size_44);

		--Padding_W: 12vw;
		--Padding_W2: 6vw;

		--Footer_P_padding: 0;

		--Flex-direction_CRRR: row;
		--Flex-direction_CRCC: column;
		--Flex-direction_CCRR: row;
		--Flex-direction_RRCC: column;
		--Flex-direction_RCCC: column;
	}
}

@media screen and (min-width:1921px) {
	:root {
		--Logo_size: 209px;
		--A_Button_width: 280px;
		--A_Button_height: 70px;
		--A_Button_border-radius: 14px 0 14px 0;

		--Header_fixAlpha_display: flex;
		--Header_height: 94px;
		--Header_Logo_width: 201.36px;
		--Header_gap: 34px;
		--Header_Link_font-size: 16px;
		--Header_sp_display: none;
		--Header_sp_Menu-btn_display: none;
		
		--H2: var(--Size_44);
		
		--Padding_W: 12vw;
		--Padding_W2: 6vw;

		--Footer_P_padding: 0;

		--Flex-direction_CRRR: row;
		--Flex-direction_CRCC: column;
		--Flex-direction_CCRR: row;
		--Flex-direction_RRCC: column;
		--Flex-direction_RCCC: column;
	}
}








/* Reset */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 62.5%;
	font: inherit;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

html {
	max-width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	position: relative;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	min-height: 100vh;
	
	font-family: 'Noto Sans JP';
	font-style: normal;
	line-height: 1.6;
	
	background-image: url('http://lp02.nishimuta-lab.com/wp-content/themes/JugarSun/image/bg_gray.png');
	background-size: 50%;
	background-attachment: fixed:
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

a {
	text-decoration: none;
	border: 0;
	-webkit-transition: var(--Transition_06);
	-moz-transition: var(--Transition_06);
	-o-transition: var(--Transition_06);
	transition: var(--Transition_06);
}

a.button {
	position: relative;
	display: inline-block;
	padding: 0;
	width: var(--A_Button_width);
	height: var(--A_Button_height);
	font-size: var(--Size_12);
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900;
	color: var(--Color_FF100);
	background: var(--Button);
	border-radius: var(--A_Button_border-radius); 
}

a.button span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}

a.button:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: -24px;
	margin: auto 0;
	width: var(--Size_30);
	background: url('http://lp02.nishimuta-lab.com/wp-content/themes/JugarSun/svg/button_arrow.svg');
	background-repeat: no-repeat;
	background-size: contain;
	aspect-ratio: 300 / 71;
	-webkit-transition: var(--Transition_06);
	-moz-transition: var(--Transition_06);
	-o-transition: var(--Transition_06);
	transition: var(--Transition_06);
}

a.button:hover:after {
	right: -44px;
}

figure {
	margin: 0;
}

img {
	max-width: 100%;
	vertical-align: bottom;
	object-fit: cover;
}

h2 {
	padding: var(--Size_24) 0 0;
	text-align: center;
	font-family: 'Lato', sans-serif;
	color: var(--Color_BK100);
	font-style: normal;
	font-weight: 700;
	font-size: var(--H2);
	line-height: 110%;
	letter-spacing: 6px;
	text-shadow: var(--ShadowR), var(--ShadowG);
}

h3 {
	font-weight: 500;
	letter-spacing: 2px;
	color: var(--Color_BK100);
}

h4 {
	position: relative;
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 500;
	font-size: var(--Size_18);
	line-height: 1.6;
	letter-spacing: 1px;
	color: var(--Color_BK100);
}

p {
	font-family: 'Noto Sans JP';
	font-style: normal;
	line-height: 1.6;
	color: var(--Color_BK100);
}

p > em {
	display: inline-block;
	padding: 0 6px;
	color: #DC6A0A;
}








/*　ヘッダー　*/
/*　ナビ　*/

header.fixAlpha,
header.page {
	display: var(--Header_fixAlpha_display);
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	
	padding: var(--Size_12) var(--Padding_W2);
	width: 100vw;
	height: var(--Header_height);
	overflow: hidden;
	background: url('http://lp02.nishimuta-lab.com/wp-content/themes/JugarSun/image/bg_gray.png');
	background-size: 50%;
	z-index: 9999;
	-webkit-transition: var(--Transition_04);
	-moz-transition: var(--Transition_04);
	-o-transition: var(--Transition_04);
	transition: var(--Transition_04);
}

header.fixAlpha {
	position: absolute;
	top: -200px;
}

header.page {
	position: sticky;
	top: 0px;
}

header.fixAlpha div,
header.page div {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
}

header.fixAlpha div:first-child a img,
header.sp div:first-child a img {
	width: var(--Logo_size);
}

header.fixAlpha div:last-child,
header.page div:last-child {
	gap: var(--Header_gap);
}

header.fixAlpha div a,
header.page div a {
	display: flex;
	justify-content: center;
	align-items: center;
	
	font-size: var(--Header_Link_font-size);
	font-weight: 900;
	letter-spacing: 1.5px;
	color: var(--Color_1D100);
}

header.fixAlpha div:last-child a:first-child img,
header.page div:last-child a:first-child img {
	width: var(--Header_Logo_width);
	aspect-ratio: 5 / 1;
}

header.fixAlpha div:last-child a:last-child,
header.page div:last-child a:last-child {
	padding: 0 24px;
	height: 46px;
	color: var(--Color_FF100);
	background: var(--Button);
	border-radius: 10px 0 10px 0; 
}

header.fixAlpha.fixed {
	position: sticky;
	top: 0;
	-webkit-transition: var(--Transition_04);
	-moz-transition: var(--Transition_04);
	-o-transition: var(--Transition_04);
	transition: var(--Transition_04);
}






header.sp {
	position: sticky;
	top: 0;
	
	display: var(--Header_sp_display);
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	
	padding: var(--Size_06) var(--Padding_W2);
	width: 100vw;
	background: url('http://lp02.nishimuta-lab.com/wp-content/themes/JugarSun/image/bg_gray.png');
	background-size: 50%;
	overflow: hidden;
	z-index: 9999;
	-webkit-transition: var(--Transition_04);
	-moz-transition: var(--Transition_04);
	-o-transition: var(--Transition_04);
	transition: var(--Transition_04);
}

header.sp .menu-btn {
	position: fixed;
	top: 0;
	right: var(--Size_04);
	display: var(--Header_sp_Menu-btn_display);
	height: 51px;
	width: 51px;
	justify-content: center;
	align-items: center;
	z-index: 90;
}

header.sp .menu-btn span,
header.sp .menu-btn span:before,
header.sp .menu-btn span:after {
	content: '';
	position: absolute;
	display: block;
	height: 3px;
	width: 25px;
	background-color: var(--Color_1D100);
	border-radius: var(--Size_02);
	-webkit-transition: var(--Transition_04);
	-moz-transition: var(--Transition_04);
	-o-transition: var(--Transition_04);
	transition: var(--Transition_04);
}

header.sp .menu-btn span:before {
	bottom: 8px;
}

header.sp .menu-btn span:after {
	top: 8px;
}

header.sp #menu-btn-check:checked ~ .menu-btn span {
	background-color: var(--Color_1D000);
}

header.sp #menu-btn-check:checked ~ .menu-btn span::before {
	bottom: 0;
	background-color: var(--Color_FF100);
	transform: rotate(45deg);
}

header.sp #menu-btn-check:checked ~ .menu-btn span::after {
	top: 0;
	background-color: var(--Color_FF100);
	transform: rotate(-45deg);
}

header.sp #menu-btn-check {
	display: none;
}

header.sp .menu-content {
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: var(--Size_12);
	padding: var(--Size_24) var(--Padding_W2);
	width: 100vw;
	height: 100vh;
	z-index: 80;
	background: url('http://lp02.nishimuta-lab.com/wp-content/themes/JugarSun/image/bg_navy.png');
	background-size: 50%;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: var(--Transition_04);
	-moz-transition: var(--Transition_04);
	-o-transition: var(--Transition_04);
	transition: var(--Transition_04);
}

header.sp #menu-btn-check:checked ~ .menu-content {
	height: 100vh;
	left: 0;
    opacity: 1;
	visibility: visible;
}

header.sp div a {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	
	font-size: 20px;
	font-weight: 900;
	letter-spacing: 2px;
	line-height: 1.6;
	color: var(--Color_FF100);
}

header.sp div:last-child a:first-child img {
	width: var(--Size_120);
	aspect-ratio: 5 / 1;
}

header.sp div:last-child a:last-child {
	display: inline-block;
	padding: var(--Size_06) var(--Size_12);
	height: 52px;
	background: var(--Button);
	border-radius: 10px 0 10px 0; 
}








/*アーティクル*/

article {
	position: relative;
	display: flex;
	flex-direction: column;
}








/* フッター */

footer {
	display: flex;
	flex-direction: var(--Flex-direction_CRRR);
	justify-content: space-between;
	align-items: center;
	padding: var(--Size_12) var(--Padding_W2);
	background: url('http://lp02.nishimuta-lab.com/wp-content/themes/JugarSun/image/bg_navy.png');
	background-size: 50%;
} 

footer img {
	width: var(--Size_120);
} 

footer p {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: var(--Footer_P_padding);

	color: var(--Color_FF100);
	font-style: normal;
	font-weight: 500;
	font-size: var(--Size_10);
	line-height: 1.6;
	text-align: right;
	letter-spacing: 1px;
} 







