/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

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

body {
  line-height:1;
  color: #3E3A39;
}

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

nav ul {
  list-style:none;
}

blockquote, q {
  quotes:none;
}

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

a {
  margin:0;
  padding:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}

/* change colours to suit your needs */
ins {
  background-color:#ff9;
  color:#000;
  text-decoration:none;
}

/* change colours to suit your needs */
mark {
  background-color:#ff9;
  color:#000; 
  font-style:italic;
   font-weight:bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom:1px dotted;
  cursor:help;
}

table {
  border-collapse:collapse;
  border-spacing:0;
}

/* change border colour to suit your needs */
hr {
  display:block;
  height:1px;
  border:0;   
  border-top:1px solid #cccccc;
  margin:1em 0;
  padding:0;
}

input, select {
  vertical-align:middle;
}

@media screen and (min-width : 480px ){ /*ウィンドウ幅が480px以上の場合に適用*/
	
	body{
	font-family: 'M PLUS 1p', sans-serif;
	margin: 0;
	padding: 0;
	padding-top: -40PX;
}

p{
	margin: 0;
	padding: 0;
}

h1{
	margin: 0;
	padding: 0;
}
	
h2{
	margin: 0;
	padding: 0;
}
	

img {
	width:100%;
    max-width: 100%;
    height: auto;
}
	
.header{
	text-align: center;
	background-image: url("../images/pc_headbg.png");
	background-repeat: repeat-x;
}

.header_box{
	background-image: url("../images/pc_topimg.png");
	background-repeat: no-repeat;
	background-size: 24%;
	background-position: 94% 100%;
	width: 1080px;
	height: 545px;
	margin-left: auto;
	margin-right: auto;
}
	
.pc_top_logo{
	padding-top: 14px;
	width: 46%;
		
}

.maintext{
	font-family: fot-chiaro-std, sans-serif;
    font-weight: 700;
    font-style: normal;
	font-size: 40px;
	padding-top: 160px;
}
	
.logo{
	padding-top: 8px;
}

.header_text{
	color: white;
	padding-top: 134px;
	font-weight: 700;
	font-size: 20px;
	padding-bottom: 50px;
}
	
.header_text2{
	color: white;
	padding-top: 200px;
	font-weight: 700;
	font-size: 20px;
	display: inline;
}
	
.header_text3{
	color: white;
	font-weight: 700;
	font-size: 20px;
	padding-right: 168px;
	display: inline;
}

.friendlink{
	padding: 4rem 0;
}

friendlink.inner{
    max-width: 113.2rem;    
	padding-left: 1.6rem;
    padding-right: 1.6rem;
	margin: auto;
    width: 100%;
	display: flex;
}

.frilink{
	background-color: #d12727;	
	margin: 0 1.2rem;
	font-size: 26px;
    max-width: 50.6rem;
	border-radius: 0.6rem;
    -webkit-box-shadow: 6px 6px 1px #dbdbdb;
    -ms-box-shadow: 6px 6px 1px #dbdbdb;
    box-shadow: 6px 6px 1px #dbdbdb;
    color: #fff;
    display: block;
	font-family: 'M PLUS 1p', sans-serif;
    font-weight: 700;
    margin: 0 auto 0.8rem;
    position: relative;
    padding: 1.8rem 6rem;
    text-align: center;
    width: 100%;
}

.frilink::before,
.frilink::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.frilink,
.frilink::before,
.frilink::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.frilink {
  background-color: #d12727;
  color: #fff;
}
.frilink:hover {
  background-color: #FF494C;
}



.floating {
    display: none;
}
	
.floating a {
    display: none;
}

.sec1box {
	padding-top: 10px;
	padding-bottom: 100px;
}
	
.sec1 {
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
}

.sec1title{	
	font-weight: 700;
	font-size: 24px;
	text-align: center;
	padding: 60px 0px 40px 0px;
}
		
.sec1 li {
	text-align: center;
    list-style: none;
}

.sec1 li a {
	text-decoration: none;
    color: #3E3A39;
}
	
.sec101{
	background-image: url("../images/sec1banner1.png");
	background-size: 40%;
	background-repeat: no-repeat;
	background-position: center;
	font-size: 14px;
	padding: 56px 0px 60px 0px ;
	font-weight: 700;
}

.sec102{
	background-image: url("../images/sec1banner2.png");
	background-size: 40%;
	background-repeat: no-repeat;
	background-position: center;
	font-size: 14px;
	padding: 56px 0px 60px 0px ;
	font-weight: 700;
}

.sec103{
	background-image: url("../images/sec1banner3.png");
	background-size: 40%;
	background-repeat: no-repeat;
	background-position: center;
	font-size: 14px;
	padding: 56px 0px 60px 0px ;
	font-weight: 700;
}


.sec2 {
	padding-top: 60px;
	padding-bottom: 100px;
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
}
	
.sec2 li {
	padding: 20px 0 20px 40px; 
    list-style: none;
}

#sec2title01{
	border-left: thick solid #E83828;
    border-width: medium thin;
    padding-left: 20px;
	padding-bottom: 30px;
}

#sec2title02{
	border-left: thick solid #E83828;
    border-width: medium thin;
    padding-left: 20px;
	padding-bottom: 30px;
}

#sec2title03{
	border-left: thick solid #E83828;
    border-width: medium thin;
    padding-left: 20px;
	padding-bottom: 30px;
}
	
.sec2title_e{
	color: #E83828;
	font-size: 22px;
	font-weight: 700;
	padding: 4px 0 6px 0;
}

.sec2title_j{
	color: #E83828;
	font-size: 14px;
	font-weight: 600;
}

.sec2_a{
	width: 80%;
	font-size: 16px;
	font-weight: 600;
	padding: 20px 0 0 20px;
	line-height: 26px;
		
}

.sec2_text{
	width: 80%;
	font-size: 14px;
	line-height: 24px;
	padding: 20px 0 0 20px;

		
}

.sec2image{
	text-align: right;
	padding-right: 80px;
	padding-top: 30px;
	
}

.sec2image_size01{
	width: 40%;
}

.sec2image_size02{
	width: 30%;
}

.sec2image_size03{
	width: 40%;
}
	
.sec3_menu{
	background-color: #EFEFEF;
	
}
	
.sec3title{
	color: #4FC1F0;
	font-weight: 700;
	font-size: 22px;
	padding: 80px 0px 10px 28px;
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
}

.sec3text{
	padding: 6px 0px 30px 28px;
	font-weight: 700;
	font-size: 12px;
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
	
}
	
.sec3_menu ul{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 1fr;
  grid-row-gap: 40px;
  grid-column-gap: 40px;
  padding: 30px;
  margin: 0;
  list-style-type: none;
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
	
}

.sec3_menu li{
	text-align: center;
    list-style: none;
	
}
	
.sec3_menuimage{

}

.sec3_menutitle{
	font-weight: 700;
	font-size: 14px;
	padding-top: 20px;
	padding-bottom: 16px;
	border-bottom: solid #4FC1F0 1px;
}

.sec3_menuyazi{
	margin-left: auto;
	margin-right: auto;
}

.sec3_menusirushi{
	width: 10px;
	padding-top: 10px;
}
	
.sec4box{
	background-color: #EFEFEF;
}
	
.sec4{
	padding-top: 80px;
	padding-bottom: 100px;
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
}

.sec4 li {
	padding: 20px 40px 120px 40px;
    list-style: none;
}

.sec41{
	background-image: url("../images/sec41.png");
	background-position: 90% 96%;
	background-repeat: no-repeat;
}

.sec42{
	background-image: url("../images/sec42.png");
	background-position: 90% 96%;
	background-repeat: no-repeat;
}

.sec43{
	background-image: url("../images/sec43.png");
	background-position: 90% 96%;
	background-repeat: no-repeat;
}

.sec44{
	background-image: url("../images/sec44.png");
	background-position: 90% 96%;
	background-repeat: no-repeat;
}

#sec4_1{
	font-weight: 700;
	font-size: 18px;
	padding: 0 0 12px 0;
}

#sec4_2{
	font-weight: 700;
	font-size: 18px;
	padding: 0 0 12px 0;
}

#sec4_3{
	font-weight: 700;
	font-size: 18px;
	padding: 0 0 12px 0;
}

#sec4_4{
	font-weight: 700;
	font-size: 18px;
	padding: 0 0 12px 0;
}

.sec4p{
	color: #4FC1F0;
	font-weight: 500;
	font-size: 16px;
	padding: 0 0 10px 0;
}

.sec4t{
	font-weight: 500;
	font-size: 14px;
	padding: 0 0 6px 0;
	line-height: 24px;
}

.footerbox{
	background-image:url("../images/footer_bg.png");
}

	
.footer{
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
}

.footer_logo{
	width: 20%;
	padding: 120px 20px 0px 20px ;

}

.footer_text{
	padding: 0px 50px 120px 24px ;
	font-size: 11px;
	line-height: 18px;
		
}


}

@media screen and (max-width: 479px) { /*ウィンドウ幅が最大375pxまでの場合に適用*/
body{
	font-family: 'M PLUS 1p', sans-serif;
	margin: -16px 0 0 0;
	padding: 0;
	width: auto;
	float: none;
}

p{
	margin: 0;
	padding: 0;
}

h1{
	margin: 0;
	padding: 0;
	
}

h2{
	margin: 0;
	padding: 0;
}
	
img {
	width:100%;
    max-width: 100%;
    height: auto;
}
	
.header{
	margin-left: auto;
	margin-right: auto;
	background-image: url("../images/main_bg.png");
	background-repeat: no-repeat;
	background-size: 479px;
}

.header_box{
	padding-left: 40px;
	padding-right: 40px;
	text-align: center;
}

.maintext{
	font-family: fot-chiaro-std, sans-serif;
    font-weight: 700;
    font-style: normal;
	font-size: 22px;
	padding-top: 160px;
}
	
.logo{
	padding-top: 8px;
}

.header_text{
	color: white;
	padding-top: 110px;
	line-height: 28px;
	text-align: right;
	margin-right: -32px;
	font-weight: 500;
	font-size: 16px;
	
}
	
.header_text2{
	color: white;
	text-align: right;
	line-height: 28px;
	margin-right: -32px;
	font-weight: 500;
	font-size: 16px;
}
	
.header_text3{
	color: white;
	text-align: right;
	line-height: 28px;
	margin-right: -32px;
	padding-bottom: 6px;
	font-weight: 500;
	font-size: 16px;
}
	
.link{
	display: none;
}

.floating {
    display: block;
    bottom: 0;
    background-color: #E33300;
    position: fixed;
    z-index: 99999;
    margin: auto;
    width: 80%;
    text-align: center;
    left: 50%;
    transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-30%);
    -ms-transform: translate(-50%,-50%);
    border-radius: 6px;
    box-shadow: 6px 6px 1px rgb(0 0 0 / 40%);
}
	
.floating a {
    color: #fff;
    display: block;
    padding: 8%;
    background-position: 95% 50%;
    background-size: 10px;
	font-weight: 700;
	font-size: 18px;
}

.sec1 {
	background-color: #EFEFEF;
	padding-top: 10px;
	padding-bottom: 60px;
}

.sec1title{	
	font-weight: 700;
	font-size: 18px;
	text-align: center;
	padding: 40px 0px 40px 0px;
}
	
.sec1 li {
	text-align: center;
}

.sec1 li a {
	text-decoration: none;
    color: #3E3A39;
}

	
.sec101{
	background-image: url("../images/sec1banner1.png");
	background-size: 100%;
	width: auto;
	height: auto;
	padding: 13% 0% 14% 0%;
	font-weight: 700;
}

.sec102{
	background-image: url("../images/sec1banner2.png");
	background-size: 100%;
	width: auto;
	height: auto;
	padding: 13% 0% 14% 0%;
	font-weight: 700;
}

.sec103{
	background-image: url("../images/sec1banner3.png");
	background-size: 100%;
	width: auto;
	height: auto;
	padding: 13% 0% 14% 0%;
	font-weight: 700;
}


.sec2 {
	padding-top: 10px;
	padding-bottom: 60px;
}
	
.sec2 li {
	padding: 20px 0 20px 40px; 
}

#sec2title01{
	border-left: thick solid #E83828;
    border-width: medium thin;
    padding-left: 20px;
	padding-bottom: 30px;
}

#sec2title02{
	border-left: thick solid #E83828;
    border-width: medium thin;
    padding-left: 20px;
	padding-bottom: 30px;
}

#sec2title03{
	border-left: thick solid #E83828;
    border-width: medium thin;
    padding-left: 20px;
	padding-bottom: 30px;
}
	
.sec2title_e{
	color: #E83828;
	font-size: 22px;
	font-weight: 700;
	padding: 4px 0 6px 0;
}

.sec2title_j{
	color: #E83828;
	font-size: 14px;
	font-weight: 600;
}

.sec2_a{
	width: 80%;
	font-size: 16px;
	font-weight: 600;
	padding: 20px 0 0 20px;
	line-height: 26px;
		
}

.sec2_text{
	width: 80%;
	font-size: 14px;
	line-height: 24px;
	padding: 20px 0 0 20px;

		
}

.sec2image{
	text-align: right;
	padding-right: 20px;
	padding-top: 30px;
	
}

.sec2image_size01{
	width: 60%;
}

.sec2image_size02{
	width: 50%;
}

.sec2image_size03{
	width: 60%;
}
	
.sec3_menu{
	background-color: #EFEFEF;
	
}
	
.sec3title{
	color: #4FC1F0;
	font-weight: 700;
	font-size: 22px;
	padding: 80px 0px 10px 28px;
}

.sec3text{
	padding: 6px 0px 30px 28px;
	font-weight: 700;
	font-size: 12px;
	
}
	
.sec3_menu ul{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: 1fr;
  grid-row-gap: 40px;
  grid-column-gap: 40px;
  padding: 30px;
  margin: 0;
  list-style-type: none;
	
}

.sec3_menu li{
	text-align: center;
	
}
	
.sec3_menuimage{

}

.sec3_menutitle{
	font-weight: 700;
	font-size: 14px;
	padding-top: 20px;
	padding-bottom: 16px;
	border-bottom: solid #4FC1F0 1px;
}

.sec3_menuyazi{
	margin-left: auto;
	margin-right: auto;
}

.sec3_menusirushi{
	width: 10px;
	padding-top: 10px;
}
	
.sec4{
	padding-top: 40px;
	padding-bottom: 60px;
	background-color: #EFEFEF;
}

.sec4 li {
	padding: 20px 22px 54px 22px; 
}

.sec41{
	background-image: url("../images/sec41.png");
	background-position: 96% 94%;
	background-repeat: no-repeat;
	background-size: 26%;
}

.sec42{
	background-image: url("../images/sec42.png");
	background-position: 96% 94%;
	background-repeat: no-repeat;
	background-size: 26%;
}

.sec43{
	background-image: url("../images/sec43.png");
	background-position: 96% 94%;
	background-repeat: no-repeat;
	background-size: 26%;
}

.sec44{
	background-image: url("../images/sec44.png");
	background-position: 96% 94%;
	background-repeat: no-repeat;
	background-size: 26%;
}

#sec4_1{
	font-weight: 700;
	font-size: 18px;
	padding: 0 0 12px 0;
}

#sec4_2{
	font-weight: 700;
	font-size: 18px;
	padding: 0 0 12px 0;
}

#sec4_3{
	font-weight: 700;
	font-size: 18px;
	padding: 0 0 12px 0;
}

#sec4_4{
	font-weight: 700;
	font-size: 18px;
	padding: 0 0 12px 0;
}

.sec4p{
	color: #4FC1F0;
	font-weight: 500;
	font-size: 16px;
	padding: 0 0 10px 0;
}

.sec4t{
	font-weight: 500;
	font-size: 14px;
	padding: 0 0 6px 0;
	line-height: 24px;
}
	
.footer{
	background-image:url("../images/footer_bg.png");
		
}

.footer_logo{
	width: 40%;
	padding: 120px 20px 0px 20px ;

}

.footer_text{
	padding: 0px 50px 120px 24px ;
	font-size: 11px;
	line-height: 18px;
		
}


}

/* Contact Form7 */
 
.contact7 {
	max-width: 100%;
	box-sizing: border-box;
}
.contact7 dd {
	margin: 0 0 30px 0;
	background-color:
}
.contact7 dt {
	font-weight: normal;
}
 
/* 必須マーク */
.contact7 .must {
	background: #FF1A00;
}
 
/* 任意マーク */
.contact7 .optional {
	background: #999;
}
 
.contact7 .must,
.contact7 .optional {
	color: #FFF;
	border-radius: 3px;
	font-size: 10px;
	margin-left: 10px;
	padding: 5px 10px;
	letter-spacing: 2px;
}
.btn_contact7 {
	text-align: center;
}
.btn_contact7 input {
	width: 70%;
	background-color: #005513;
	color: #FFF;
	font-size: 1.1em;
	font-weight: bold;
	letter-spacing: 0.2em;
	border: 1px solid #005513;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;	
}
.btn_contact7 input:hover {
	background-color: #FFF;
	color: #005513; 
}
@media screen and (min-width: 768px) {
.contact7 dt {
	float: left;
	clear: left;
	width: 35%;
	padding: 5px 10px 5px 0;
	}
.contact7 dd {
	margin-left: 35%;
	}
 
.btn_contact7 input {
	width: 70%;
	background-color: #005513;
	color: #FFF;
	font-size: 1.1em;
	font-weight: bold;
	letter-spacing: 0.2em;
	border: 1px solid #005513;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;	
}
.btn_contact7 input:hover {
	background-color: #FFF;
	color: #005513; 
}
}