@charset "utf-8";
/*
Site URL	https://plaza.umin.ac.jp/pemat/
Created		2023/03/22
Last update	2023/03/31 by Ryosuke Hayashi
Author		Ryosuke Hayashi
*/
:root{
	--theme-color:	rgb(64,143,176);
	--menu-color:	rgb(29,120,141);
	--logo-color:	rgb(85, 85, 85);
	--headline-color-1:	rgb(60,169,214);
	--headline-color-2:	rgb(117,192,223);
	--sideber-color-1:	rgb(183,220,236);
	--sideber-color-2:	rgb(230,243,249);
}
*{
	color: rgb(30, 30, 30);
}
html{
	font-size: 10px;
	scroll-behavior: smooth;
}
body{
	margin: 0;
	font-size: 1rem;
	background-color: rgb(255, 255, 255);
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}
p{
	font-size: 1.6rem ;
}
h1{
	margin: 0;
	padding: 1rem;
	font-size: 3rem;
	font-weight: 600;
	color:var(--logo-color);
}
h1 > a{
	text-decoration: none;
	font-weight: 600;
	color:var(--logo-color);
}
h2{
	font-size: 2.4rem ;
	font-weight: 600;
}
h3{
	font-size: 2rem;
	font-weight: 600;
}
h4{
	font-size: 1.6rem;
	font-weight: 600;
}
ul li,
ol li{
	font-size: 1.6rem;
}
strong{
	font-weight: 600;
}
table{
	border-collapse: collapse;
	margin: 0 1em;
}
table th,
table td{
	border: 1px solid rgb(50, 50, 50);
	padding: .3em;
}
table th{
	text-align: center;
	background-color: var(--sideber-color-1);
}
.top-arr{
	font-size: 1rem;
	position: fixed;
	bottom: 1rem;
	right: 2rem ;
	text-align: center;
	width: 6em;
	height: 5em;
	background-color: rgba(230,243,249,0.8);
	border-radius: 1rem;
}
.top-arr a{
	text-decoration: none;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	display: block;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.sec-tmp{
	max-width: 1080px;
	margin: 0 auto;
	display: block;
}

.sec-body-tmp{
	padding: 0 1rem;
}
.sec-body-tmp h2{
	margin-top: 4rem;
	position: relative;
	border-top:2px solid var(--theme-color);
	border-bottom:2px solid var(--theme-color);
	padding: 2rem ;
}
.sec-body-tmp h2::before{
	position: absolute;
	content: "　";
	border-left: 0.5em solid var(--theme-color);
	display: block;
	width: 1em;
	height: 1em;
	left: 0;
	top: 50%;
	transform: translate(0, -50%);
}
.sec-body-tmp h3{
	margin-top: 2rem;
	position: relative;
	padding-left: 2rem;
}
.sec-body-tmp h3::before{
	position: absolute;
	content: "　";
	border-left: 0.5em solid var(--theme-color);
	display: block;
	width: 1em;
	height: 1em;
	left: 0;
	top: 50%;
	transform: translate(0, -50%);
}
.sec-body-tmp h4{
	margin-top: 2rem;
	position: relative;
	padding-left: 2em;
}
.sec-body-tmp h4::before{
	position: absolute;
	content: "　";
	border-left: 0.5em solid var(--theme-color);
	display: block;
	width: .5em;
	height: .5em;
	left: 1em;
	top: 50%;
	transform: translate(0, -50%);
}
.sec-body-tmp p{
	padding: 0 1em;
	margin-bottom: 1em;
	line-height: 1.3em;
}
.sec-body-tmp img{
	max-width: 100%;
}
.sec-body-tmp iframe{
	width:500px;
	height:500px;
}

.head-line{
	position: relative;
}
.menu{
	padding: 1rem;
}
.menu-flex{
	display: flex;
	justify-content: flex-start;
	list-style: none;
	margin: 0.5rem;
	padding: 0;
}
.menu-flex li{
	border:solid 1px var(--menu-color);
	width: 50%;
	background-color: var(--sideber-color-2);
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.menu-flex li a{
	text-decoration: none;
	margin: 0;
	padding: 0;
	width: calc(100% - 2rem);
	height: calc(100% - 1rem);
	font-size: 1.2rem;
	padding: .5rem 1rem;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.tilt-img img{
	width: 100%;
}


.list-ul-div{
	position: relative;
	padding: 0 2rem  ;
}
.list-ul-div::before{
	position: absolute;
	content: "　";
	width: .5em;
	height: .5em;
	border: 5px solid  var(--theme-color);
	border-radius: 50%;
}
input[type="radio"] {
	position: absolute;
	white-space: nowrap;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%); 
	bottom: 0;

}
input[type="radio"]:checked + label{
	background-color: var(--headline-color-2);

}
.radio-qa{
	margin: 2rem 1rem ;
	position: relative;
}
.radio-qa label{
	border: 1px solid rgb(50, 50, 50);
	border-radius: 5px ;
	font-size: 2rem;
	padding: 1rem 2rem ;
	margin: 0 1rem 2rem 1rem  ;
	cursor: pointer;
	width: 5em;
	text-align: center;
	display: inline-block;
	background-color: rgb(255, 255, 255);
	z-index: 2;
}
.radio-qa h5{
	font-weight: 600;
	font-size: 1.6rem;
	padding: 0;
	margin: 0;
}
input[type="email"]{
	width: 100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
input[type="text"]{
	width: 100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
textarea{
	width: 100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
input[type="submit"] {
	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{
	display: none;
}
input[type="submit"]::focus{
	outline-offset: -2px;
}
input[type="submit"].submit-otoiawase {
	width: 300px ;
	padding: 1rem 2rem ;
	margin-top: 2rem  ;
	border-radius: 5px;
	border: 1px solid rgb(50, 50, 50);
	background-color: rgb(230, 230, 230);
}
.otoiawase-sec{
	padding: 0 2rem ;
}
.sec-body-tmp .otoiawase-sec p{
	color: rgb(200, 100, 100);
	font-weight: 600;
	padding: 0;
}
.sec-body-tmp .otoiawase-sec label{
	font-weight: 600;
	display: block;
	font-size: 1.6rem;
}
.otoiawase-frombox{
	margin-bottom: 2rem ;
	max-width: 600px;
}
.auto-form{
	display: flex;
	justify-content: flex-start;
  column-gap: 2rem;
}
.form-button{
	width: 250px ;
	height: 200px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	margin: 0 0 4rem 0;
	border:2px solid var(--theme-color);
	box-shadow: 2px 2px 1px var(--menu-color);
	border-radius: 5px;
	background-color: var(--sideber-color-2);
}
.form-button a{
	text-decoration: none;
	margin: 0;
	padding: .5rem 1rem;
	width: 100%;
	height: 100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 1.2rem;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 2.5rem;
}

.link-list ul{
	margin-bottom: 2rem;
	padding-bottom: 2rem;
}
.link-list ul li{
	line-height: 1.3em;
	margin-bottom: 1em;
}

#pemat-frpm{}
#pemat-frpm .pemat_type_text{
	padding-left: 1em;
}
#pemat-frpm .pemat_type_text label{
	font-size: 1.6rem;
	font-weight: 600;
	display: block;
}
#pemat-frpm .pemat_type_text input[type="text"]{
	width: 350px ;
	margin-bottom: 1em;
}
@media screen and (max-width: 480px) {
	#pemat-frpm .pemat_type_text input[type="text"]{
		width: 100% ;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
}
#result_info{
	border: 2px solid var(--menu-color);
	padding: 1em;
	margin: 2em;
}


footer{
	margin-top: 2rem;
	padding-top:4rem ;
	
}
.footer_text{
	background-color: var(--theme-color);
	color:rgb(255,255,255);
	padding: .5em ;
}


.dshi{
	display: none;
}

/*レスポンシブ対応設定*/
.sp_menu{
	display: none;
}
@media screen and (max-width: 480px) {
	.sp_menu{
		display: inline-block;
	}
	.menu{
		display: none;
	}
	.sec-body-tmp iframe{
		width:100%;
	}
}
.menu-btn {
	position: fixed;
	top: 1rem;
	right: 1rem;
	display: flex;
	height: 40px;
	width: 40px;
	justify-content: center;
	align-items: center;
	z-index: 90;
	background-color: var(--sideber-color-1);
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
	content: '';
	display: block;
	height: 3px;
	width: 20px;
	border-radius: 3px;
	background-color: var(--logo-color);
	position: absolute;
}
.menu-btn span:before {
	bottom: 8px;
}
.menu-btn span:after {
	top: 8px;
}
#menu-btn-check {
	display: none;
}
#menu-btn-check:checked ~ .menu-btn span {
	background-color: rgba(255, 255, 255, 0);
}
#menu-btn-check:checked ~ .menu-btn span::before {
	bottom: 0;
	transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
	top: 0;
	transform: rotate(-45deg);
}
.menu-content {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 80;
	background-color: var(--sideber-color-2);
}
.menu-content ul {
	padding: 40px 10px 0;
}
.menu-content ul li {
	border-bottom: solid 1px var(--logo-color);
	list-style: none;
}
.menu-content ul li a {
	display: block;
	width: 100%;
	font-size: 15px;
	box-sizing: border-box;
	color:var(--logo-color);
	text-decoration: none;
	padding: 9px 15px 10px 0;
	position: relative;
}
.menu-content ul li a::before {
	content: "";
	width: 7px;
	height: 7px;
	border-top: solid 2px var(--logo-color);
	border-right: solid 2px var(--logo-color);
	transform: rotate(45deg);
	position: absolute;
	right: 11px;
	top: 16px;
}
.menu-content {
	width: 100%;
	height: calc(100% - 50px );
	position: fixed;
	top: 50px;
	left: 100%;
	z-index: 80;
	background-color: var(--sideber-color-2);
	transition: all 0.5s;
}
#menu-btn-check:checked ~ .menu-content {
	left: 0;
}
