@charset "utf-8";
/* CSS Document */

html{
	font-size:62.5%;/*16px×62.5%=10px*/
}

body{
	color:#000000;
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	font-weight:nomal;
	margin: 0;
}

img{
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}


a:hover,
.privacy_b:hover{
	opacity: 0.5;
	transition: 0.2s;
}

/*---------------------------
	header
----------------------------*/

#header {
	position: fixed;
	top: 0;
	z-index: 10;
	width: 100%;
	background: #ffffff;
}

h1{
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	font-weight: bold;
}



/*---------------------------
	nav
----------------------------*/


#navigation, #navigation_pc{
	color:#ffffff;
	background: #0074eb;
}



/*---------------------------
	fv
----------------------------*/

.fv_img{
	position: relative;
}

.fv_text{
	position: absolute;
	top:50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	width: 100%;
}

/*---------------------------
	section
----------------------------*/


.title{
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	font-weight: bold;
	text-align: center;
}

.title>p{
		display: flex;
		align-items:center;
		justify-content: center;
		padding-top: 5px;
}

.title>p:before,
.title>p:after {
border-top: 1px solid #000000;
content: "";
flex-grow: 0;
}


/*----------------------
	news
-----------------------*/


.title_news:before,
.title_news:after {
	width:3.5em; 
}

.news{
	width: 100%;
	text-align: left;
	
}

.news_item{
	width: 10%;
}

.news_list>a>img{
	height: 16px;
	width: auto;
}

.news_list>a{
	vertical-align: middle;
}

.news tr{
	border-bottom: solid 1px #d8d8d8;
}


/*----------------------
	greeting
-----------------------*/

#greeting{
	background-color: #f5f5f5;
	background-image: url("../img/bg_greeting.png");
	background-repeat: no-repeat;
}

.title_greeting:before,
.title_greeting:after {
	width:2.2em; 
}

.message_text>h3>span{
	font-weight: normal;
}

/*--------------------------greeting over table共通-----------------------------*/

.greet_table , .over_table{
	background-color: #ffffff;
	text-align: left;
	width: 100%;
}

.table_item{
	background-color: #d8d8d8;
}

.table_item , .table_list{
	border: solid 1px #000000;
	line-height: 1.5em;
	 vertical-align: middle;
}

/*------------------------------------------------------------------------------*/


/*----------------------
	prin
-----------------------*/

.prin>.title{
	color: #ffffff;
}

.prin>.title>p:before, .prin>.title>p:after{
	border-top: 1px solid #ffffff;
	content: "";
	flex-grow: 0;
}

.title_prin:before,
.title_prin:after {
	width:2.0em;
}

#prin{
	background: url("../img/bg_principle.jpg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.prin_item{
	box-sizing: border-box;
	background-color: #ffffff;
	filter: drop-shadow(5px 5px 5px rgba(0,0,0,0.6));
}

.prin_text>p{
	line-height: 1.5em;
}

.prin_text>hr{
    border-top:1px solid #e6651a;
}


/*----------------------
	over
-----------------------*/

.title_over:before,
.title_over:after {
	width:3.5em; 
}

/*----------------------
	access
-----------------------*/

.title_access:before,
.title_access:after {
	width:2.0em; 
}

#access{
	background-color: #f5f5f5;
	background-image: url("../img/bg_access.png");
	background-repeat: no-repeat;
}


/*----------------------
	contact
-----------------------*/

#contact{
	background: url("../img/pc_bg_contact.jpg");
	background-repeat: no-repeat;
	background-position: bottom;
	background-size: cover;
}

.title_contact:before,
.title_contact:after {
	width:2.2em; 
}

input, select, textarea{
	border: solid 1px #000000;
	background-color: #ffffff;
}

td p{
	color: #706f6f;
}

.emp_form>div{
	display: flex;
	align-items: center;
}

.privacy{
	display: flex;
	justify-content: center;
	-webkit-justify-content: center;
	align-items: center;
}

.privacy>a{
	border-bottom: solid 1px #000000;
}

.btns{
	text-align: center;
}

button{
	color: #ffffff;
}

.policy_check{
	text-align:center;
	margin-top:60px;
}

.popupModal1{
	display: inline-block;
}
.popupModal1 > input { /* ラジオボックス非表示 */
display: none;
}
.popupModal1 > input:nth-child(1) + label { 
cursor: pointer;
}
.modalPopup2 { /* 初期設定 ポップアップ非表示 */
display: none;
}

.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 {/* ラジオ１ チェックでポップアップ表示 */
display: block;
z-index: 9999;
position: fixed;
width: 90%;
height: 80%;
/*border-radius: 20px;*/
left: 50%;
top: 50%;
margin-top: 30px;
-webkit-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
background: #fff;
padding: 10px 20px;
overflow: hidden;
}

.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div {/* */
overflow:auto;
-webkit-overflow-scrolling:touch;
display: inline-block;
width: 100%;
height: 100%;
}
.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div > iframe {
width: 100%;
  height:100%;
  border:none;
  display:block;
}

.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div > img {/* ポップアップの中の要素 */
max-width: 100%;
}
.popupModal1 > input:nth-child(1) + label ~ label {
display: none;/* ラジオ１ 以外のラベルを初期は非表示 */

}
.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label {
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.70);
display: block;
position: fixed;
left: 0;
top: 0;
z-index: 9998;
text-indent: -999999px;
overflow: hidden;
}
.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label {
background: rgba(255, 255, 255, 1);
display: inline-block;
position: fixed;
right: 20px;
top: 20px;
z-index: 10000;
width: 44pt;
height: 44pt;
font-size: 40px;
line-height: 44pt;
text-align: center;
box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.2);
}

.popupModal1 > input:nth-child(1) + label + input:nth-child(3):checked + label + input:nth-child(5) + label + .modalPopup2,
.popupModal1 > input:nth-child(1) + label + input:nth-child(3) + label + input:nth-child(5):checked + label + .modalPopup2 { /* ラジオ２と３ どっちかチェックでポップアップ非表示 */
display: none;
}


.modalPopup2 {
    animation: fadeIn 1s ease 0s 1 normal;
    -webkit-animation: fadeIn 1s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

.popupModal1 .modalTitle {
     padding-bottom: .5em;
     margin: .5em 0;
     border-bottom:
     1px solid #ccc;
     font-weight: bold;
}
.popupModal1 .modalMain {
     color:#000000;
     text-align: left;
     font-size: 1.6rem;
     line-height: 1.8em;
}

.privacy_b{
	border-bottom: solid 1px #000;
}


/*----------------------
	footer
-----------------------*/

footer{
	box-sizing: border-box;
	background-color: #13304e;
	text-align: center;
}
small{
	color: #ffffff;
	font-size: 1.2rem;
	word-break: break-all;
}





@media screen and (min-width:769px){

	.sp{
		display:none;
	}

	
#PageTopBtn {
    position: fixed; /*ボタンの配置場所を固定*/
	z-index: 1000;
    bottom: 30px; /*下からのボタンの配置場所を指定*/
    right: 30px; /*右からのボタンの配置場所を指定*/
}
#PageTopBtn a {
    display: block; /*配置の調整*/
}
#PageTopBtn a {
    width: 50px; /*ボタンの幅*/
    height: auto; /*ボタンの高さ*/
    padding: 24px 0; /*文字の配置場所の調整*/
}


	/*----------------------
		header
	-----------------------*/
	
	.header{
		max-width: 1000px;
		margin: 20px auto;
		display: flex;
		justify-content: space-between;
		-webkit-justify-content: space-between;
		align-items: center;
		
	}
	
	.header>h1{
		font-size: 3.6rem;
	}
	.telephone{
		text-align: right;
	}
	
	.tel{
		color: #E6651A;
		font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
		font-size: 3.6rem;
		font-weight: bold;
	}
	
	.tel>img{
		width:16px;
/*		vertical-align: baseline;*/
		padding-bottom: 4px;
		margin-right: -6px;
	}
	
	.telephone>p{
		font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
		font-size: 1.4rem;
		font-weight: bold;
		padding-top: 5px;
	}
	
	
	/*----------------------
		navigation
	-----------------------*/

	
	a.anchor{
		display: block;
	}
	
	#navigation_pc>ul{
		max-width: 1000px;
		display: flex;
		justify-content: space-between;
		-webkit-justify-content: space-between;
		margin: 0 auto;
		border: 1px solid #0074eb
		
	}
	
	#navigation_pc >ul>li{
		width: 16.6%;
		text-align: center;
	}
	#navigation_pc >ul>li>a{
		display: block;
		padding: 15px 0;
	}
	#navigation_pc >ul>li>a:hover{
		color: #0074eb;
		background-color: #ffffff;
		transition: 0.2s;
		
	}

	#navigation_pc>ul>li>a:hover{
		opacity: 1;
	}
	
	/*----------------------
		fv
	-----------------------*/
	
	.fv_img{
		margin-top: 143px;
		overflow: hidden;
	}
	.fv_text{
		max-width: 1000px;
	}
	
	/*----------------------
		section
	-----------------------*/

	.inner{
		margin: 0px auto ;
		padding:100px 0 120px;
	}
	
	.title{
		padding-bottom: 60px;
	}
	
	.title>h2{
		font-size: 4.0rem;
	}
	
	.title>p{
		font-size: 1.4rem;
	}
	
	.title>p:before{
	margin-right: 12px
	}

	.title>p:after{
		margin-left: 12px
	}
	
	.news , .prin , .over , .contact{
		max-width: 700px;
	}
	
	.greeting , .access{
		max-width: 960px;
	}
	
	/*----------------------
		news
	-----------------------*/
	
	.news >.title{
		padding-bottom: 40px;
	}
	
	.news_item{
		padding: 20px 36px 8px 0;
	}
	
	.news_list>a>img{
			padding-right:12px; 
	}

	
	/*----------------------
		greeting over
	-----------------------*/
	
	#greeting{
		background-size: contain;
		background-position: left;
	}

	.message{
		display: flex;
		align-items: flex-end;
		padding-bottom: 60px;
	}

	
	.message_img{
		display: inline-block;
		width: 480px;
		height: auto;
		min-width: 480px;
	}
	
	.message_text{
		display: inline-block;
		padding-left: 20px; 
	}
	
	
	.message_text>h3{
		font-size: 2.8rem;
		border-bottom: solid 2px #0074eb;
		width: 128px;
	
	}
	
	.message_text>h3>span{
		display: block;
		font-size: 1.6rem;
		padding-bottom: 10px;
	}

	.message_text>p ,.news_list{
		line-height: 1.5em;
        padding-bottom: 10px;
	}
	.message_text>p:first-of-type{
		padding:54px 0 20px;
	}
	
	
	/*-------------------------------greeting over table共通-------------------------------*/
	
	.table_item , .table_list{
		padding: 20px;
	}
	/*----------------------------------------------------------------------------------*/
	
	.greet_item{
		width: 140px;
	}
	
	.over_item{
		width: 230px;
	}
	
    .over_item::after,
    .news_item::after,
    .greet_item::after{
        background-image: none;
    }
	
	/*----------------------
		prin
	-----------------------*/
	
	.prin_item{
		padding: 30px;
		margin-bottom: 60px;
		display: flex;
		align-items: center;
	}
	
	.prin_item:last-of-type{
		margin-bottom: 0;
	}
	
	.prin_item>img{
		width: 178px;
		padding-right: 30px;
	}
	
	.prin_text{
		width: 450px;
	}
	
	.prin_text>h3{
		font-size: 2.8rem;
		line-height: 1.2em;
		padding-bottom: 12px;
	}
	
	.prin_text>p{
		padding-top: 20px;
	}
	

	/*----------------------
		access
	-----------------------*/	
	
	#access{
		background-size: contain;
		background-position: right;
	}
	
	.access_m{
		display: flex;
		align-items: center;
	}
	
	.access_map iframe{
		display: inline-block;
		width: 480px;
		min-width: 480px;
		height: 358px;
		padding-right: 40px;
	}

	.access_text{
		display: inline-block;
	}
	
	.access_text>h4{
		font-size: 3.2rem;
		border-bottom: solid 1px #0074eb;
	}
	
	.access_text>ul{
		padding-top: 70px;
	}
	
	.access_text>ul>li{
		padding-bottom: 6px;
		line-height: 1.5em;
	}
	
	
	/*----------------------
	contact
	-----------------------*/

	
	input{
		height: 30px;
		width: 470px;
		padding: 0px 10px;
	}
	
	select{
		height: 30px;
		width: 470px;
		padding: 0px 10px;
	}
		
	textarea{
		height: 160px;
		width: 470px;
		line-height: 1.5em;
		padding: 10px 10px;
	}
	

	.form{
		display: flex;
		padding-top: 20px;
	}
	
	.form>p{
		min-width: 230px;
	}
	
	.form>p>img{
		padding-left: 12px;
		height: 16px;
		width: auto;
	}
	td p{
		padding-top: 8px;
		font-size: 1.4rem;
	}
	
	.pb{
		padding-bottom: 8px;
	}
	
	.yuubin input{
		width: 180px;
		margin-left: 10px;
	}
	
	.emp input{
		margin-right: 10px;
        width: 130px;
	}
	
	.emp_mei{
		padding-top: 7px;
	}
	
	.privacy{
		margin-top: 60px;
	}
	
	.policy_check label input{
		width: 16px;
		margin-right: 12px;
	}	
	
	button{
		font-size: 2.4rem;
		width: 700px;
		height: 80px;
		background-color: #0074EB;
	}
	button.return{
		width: 200px;
		height: 60px;
		background-color: gray;
		margin-bottom:40px;
	}
	

	button:hover{
		border: solid 1px #0074eb;
		background-color: #ffffff;
		color: #0074eb;
		transition: 0.2s;
	}
	button.return:hover{
		border: solid 1px gray;
		background-color: #ffffff;
		color: gray;
	}
	
	.btns{
		margin-top: 60px;
	}
	
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2{
         width: 600px;
         height: 600px;
         padding: 30px;

    }
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label {
     left: 50% !important;
     top: 50% !important;
     margin-left: 270px !important;
     margin-top: -310px !important;
	}
    
    
    
	/*----------------------
	footer
	-----------------------*/

	footer{
		padding: 40px 0;
	}
	
}





@media screen and (max-width:768px){
	
	.pc{
		display:none;
	}
		
	
#PageTopBtn {
    position: fixed; /*ボタンの配置場所を固定*/
	z-index: 1000;
    bottom: 20px; /*下からのボタンの配置場所を指定*/
    right: 20px; /*右からのボタンの配置場所を指定*/
}
#PageTopBtn a {
    display: block; /*配置の調整*/
}
#PageTopBtn a {
    width: 50px; /*ボタンの幅*/
    height: auto; /*ボタンの高さ*/
    padding: 10px 0; /*文字の配置場所の調整*/
}

	
	/*----------------------
		header
	-----------------------*/
	
	#header{
		display: flex;
		justify-content: space-between;
		-webkit-justify-content: space-between;
		align-items: center;

	}
	
	.header{
		padding: 20px;
			margin-right:auto;
	}
	.header>h1{
		font-size: 2.0rem;
	}
	
	
	/*----------------------
		navigation
	-----------------------*/
	
/*メニュー部分*/
	#navigation{
		display:none;
		position: absolute;
		top:60px;
/*		padding-top: 70px;*/
		width: 100%;
/*		height: 100vh;*/
		background:#0074eb;
		left: 0;
		
	}
/*
	#navigation>ul{
		display: block;
		top: 0px;
		right: 0px;
		bottom: 0px;
		left: 0px;
		margin: auto;
	}
*/
	#navigation>ul>li{
		font-size: 1.8rem;
		margin: 0 20px;
		text-align: center;
		border-bottom: solid 1px #ffffff;		
	}

	#navigation>ul>li:last-of-type{
		border-bottom: none;
	}

	
	#navigation>ul>li>a{
		display: block;
		padding: 23px 0 20px;
	}
	
	.tel_sp>a>img{
		height: 20px;
		width: auto;
		padding-right: 10px;
	}
	
	.tel_sp>a>span{
		display: block;
		padding-top: 10px;
		font-size: 1.2rem;
	}
	
	

	/*開閉ボタン*/
	#nav_toggle{
		display: block;
		width: 65px;
		height: 60px;
		position: relative;
		top: 0px;
		background-color: #0074eb;
		padding-top: 22px;
		padding-left: 20px;
		z-index: 100;
	}
	#nav_toggle div {
		position: relative;
	}
	#nav_toggle span{
		display: block;
		height: 2px;
		background: #ffffff;
		position:absolute;
		width: 25px;
		left: 0;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;	
	}
	#nav_toggle span:nth-child(1){
		top:0px;
	}
	#nav_toggle span:nth-child(2){
		top:8px;
	}
	#nav_toggle span:nth-child(3){
		top:16px;
	}
	
	/*開閉ボタンopen時*/
	.open #nav_toggle span{
		background: #ffffff;
	}
	 #nav_toggle .open:nth-child(1) {
			top: 8px;
		   -webkit-transform: rotate(135deg);
			-moz-transform: rotate(135deg);
			transform: rotate(135deg);
		}
		#nav_toggle .open:nth-child(2) {
			width: 0;
			left: 50%;
		}
		#nav_toggle .open:nth-child(3) {
			top: 8px;
			-webkit-transform: rotate(-135deg);
			-moz-transform: rotate(-135deg);
			transform: rotate(-135deg);
		}	

	
	

	/*--------------------------
		fv
	---------------------------*/

	.fv_img{
		margin-top: 60px;
	}
	
	/*--------------------------
		fv
	---------------------------*/
	
	.fv_text{
		padding: 0 20px;
	}
	
	/*----------------------
		section
	-----------------------*/

	.inner{
	box-sizing: border-box;
	padding: 60px 20px 70px;
	}
	
	.title{
		padding-bottom: 40px;
	}
	
	.title>h2{
		font-size: 3.2rem;

	}
	
	.title>p{
		font-size: 1.2rem;
	}
	
	.title>p:before{
		margin-right: 5px
	}

	.title>p:after{
		margin-left: 5px
	}
	
	/*----------------------
		news
	-----------------------*/

	.news .title{
		padding-bottom: 32px;
		
	}
	
	.news_m tr{
		border-bottom: solid 1px #d8d8d8;
	}
	
	.news_item{
		padding: 18px 25px 5px 0;
	}
	
	.news_list{
		line-height: 1.5em;
		padding: 18px 0px 5px 0;
	}
	
	.news_list>a>img{
		padding-right:5px; 
		vertical-align: middle;
	}
	
	/*----------------------
		greeting
	-----------------------*/
	
	#greeting{
		background-position: center;
		background-size: 90%;
	}
	
	.message_text>h3{
		font-size: 2.4rem;
		border-bottom: solid 2px #0074eb;
		width: 244px;
		margin: 30px auto;
		
	}
	
	.message_text>h3>span{
		font-size: 1.6rem;
		padding-right: 18px;
	}
	
	.message_text>p{
		line-height: 1.5em;
		padding-bottom: 14px;
	}

	.message_text>p:last-of-type{
		padding-bottom: 30px;
	}
	
	/*----------------------------------greeting over table共通----------------------------------------*/
	
	.table_item , .table_list{
		padding: 20px 15px;
		line-height: 1.5em;
	}
	.table_item{
		width: 100px;
	}
	
	
	/*------------------------------------------------------------------------------------------------*/
	
	/*----------------------
		prin
	-----------------------*/
	
	
	.prin_item{
		padding: 20px;
		margin-bottom: 30px;
		text-align: center;
	}
	
	.prin_item:last-of-type{
		margin-bottom: 0;
	}
	
	.prin01>img{
		max-height: 240px;
		width: auto;
	}
	
	.prin02>img , .prin03>img{
		max-height: 180px;
		width: auto;
	}
	
	.prin_text>h3{
		font-size: 2.4rem;
		padding: 24px 0 5px;
		letter-spacing: 0em;
		line-height: 1.2em;
	}
	
	.prin_text>p{
		padding-top: 20px;
		text-align: left;
	}

	
	/*----------------------
		access
	-----------------------*/
	
	#access{
		background-position: center;
		background-size: 90%;
	}
	
	.access_m{
		display: flex;
		flex-direction: column-reverse;
	}
	.access_map iframe{
		height:240px; 
		width: 100%;
	}
	
	.access_text>h4{
		font-size: 1.8rem;
		border-bottom: solid 1px #0074eb;
		max-width: 245px;
		margin: 0 auto;
		text-align: center;
	}
	
	.access_text>ul{
		padding: 20px 0 25px;
	}
	
	.access_text>ul>li{
		line-height: 1.5em;
		padding-bottom: 5px;
	}
	

	
	
	
	/*----------------------
		contact
	-----------------------*/
	
	input{
		width: 100%;
		height: 30px;
		padding: 10px;
	}
	
	select{
		width: 100%;
		height: 30px;
		padding: 2px 10px;
	}
	
	textarea{
		width: 100%;
		height: 150px;
		padding: 10px;
		line-height: 1.5em;
	}
	
	.form{
		padding-bottom: 30px;
	}
	
	.form>p{
		padding-bottom: 6px;
	}
	
	.form>p>img{
		height: 16px;
		width: auto;
		margin-left: 10px;
	}
	td p{
		padding-top: 6px;
		font-size: 1.4rem;
	}
	
	.yuubin input{
		max-width: 190px;
		margin-left: 10px;
	}
	
	.pb{
		padding-bottom: 10px;
	}
	
	.emp_form{
		max-width: 190px;
	}
	
	.emp_mei{
		margin-left: 10px;
	}
    
    .emp input{
		max-width: 163px;
	}
	
	.policy_check input{
		width: 20px;
		margin-right: 15px;
	}
	
	button{
		font-size: 2.0rem;
		width: 100%;
		height: 60px;
		background-color: #0074EB;
	}
	button.return{
		font-size: 1.5rem;
		width: 25%;
		height: 40px;
		margin-bottom:20px;
		background-color: gray;
	}
	
	.policy_check{
	}
	.btns{
		margin: 25px 0 30px;
	}
	

	
	/*----------------------
	footer
	-----------------------*/
	
	footer{
		padding: 30px 20px;
	}
	
	
	

	
}

@media screen and (max-width:379px){
	
	.header>h1{
		font-size: 1.8rem;
	}
	
	.privacy{
		font-size: 1.4rem;
	}
	.policy_check input{
		margin-right: 6px;
	}
	
	
}



@media screen and (max-width:355px){
	
		.header>h1{
		font-size: 1.5rem;
	}
	
	
}

/*2019/03/28 修正*/
th{
    width: 230px;
    padding-top: 20px;
    text-align: left;
    vertical-align: top;
}

/* th::after{ */
form th.required::after{
    content: '';
    display: inline-block;
    /* width: 47px; */
    /* height: 16px; */
    width: 35px;
    height: 16px;
    background-image: url(../img/icon_hissu.gif);
    background-size: contain;
    vertical-align: middle;
    margin-left: 17px;
    background-repeat: no-repeat;
}


td{
    padding-top: 20px;
    vertical-align: top;
}

.annotation{
    text-align: center;
}

.gotop{
    margin-top: 20px;
}

.gotop a{
    width: 200px;
    display: block;
    margin: 0 auto;
    background-color: #0074eb;
    color: white;
    padding: 10px 0;
}

@media screen and (max-width:768px){
form table{
    width: 100%;    
}

    
form th{
    display: block;
    width: 100%;
}

form td{
    display: block;
    width: 100%;
    padding-top: 6px;
    padding-bottom: 30px;
}
}


.red{
	color:red;
}

	/*----------------------
	addinfo-text
	-----------------------*/
.addinfo-text{
    padding:45px 0;
    background: #377d26;
}
.addinfo-text p{
    font-size:3.2rem;
    line-height: 1.5;
    font-weight: bold;
    color:#FFF;
    text-align: center;
    font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}   
@media screen and (max-width:768px){
    .addinfo-text{
        padding:20px 0;
    }
    .addinfo-text p{
        font-size:1.5rem;
    }
}
@media screen and (max-width: 320px){
.addinfo-text p {
    font-size: 1.3rem;
}