@charset "UTF-8";

/* CSS Document */

/* Font
---------------------------------------- */
* {
	/*ゴシック*/
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', メイリオ, Meiryo, "ＭＳ Ｐゴシック", Helvetica, Arial, sans-serif;
}


.header-02{
	background:url("../images/header_bg_02.jpg") no-repeat center;
	background-size:cover;
}


.header-03 {
	background:#F1FAFF;
}

h2{
	margin-bottom:1.5em;
	margin-top:2em;
}

h3{
	margin-bottom:1.2em;
}

p{
	margin-bottom:1.8em;
}

html{
    font-size: 62.5%;
}
body{
    font-size:2.2rem;/* 20px*/
    line-height: 2;
}

@media (min-width: 1200px) {
  .container {
    max-width: 960px;
  }
}
h1 {
    font-size: 36px;/* IE8以下とAndroid4.3以下用フォールバック */
    font-size: calc(2.4rem + ((1vw - 0.64rem) * 2.1429));/* 24px~36pxで可変*/
    line-height: 1.3;
}
h2 {
    font-size: 24px;/* IE8以下とAndroid4.3以下用フォールバック */
    font-size: calc(2rem + ((1vw - 0.64rem) * 0.7143));/* 20px~24pxで可変*/
    line-height: 1.3;
}
@media (min-width: 1200px) {/* 1200px以上*/
    h1 {
        font-size: 3.6rem;/* 36px*/
    }
    h2 {
        font-size: 2.4rem;/* 24px*/
    }
}
@media screen and (max-width: 640px) {/* 640px以下*/
    body{
    line-height: 2;
		font-size:1.6rem;
    }
    h1{
        font-size: 2.4rem;/* 24px*/
    }
    h2 {
        font-size: 2rem;/* 20px*/
    }
}

.txt_big{
	font-weight:bold;
	font-size:150%;
}

.txt_red{
	font-weight:bold;
	color:#FF4141;
}

.txt_marker_yellow {
background: linear-gradient(transparent 40%, #FFFF2C 40%);
}


.border-left-blue {
	border-left:1px solid #3DB8FF;
	padding-left:1em;
}

footer {
	font-size:80%;
}

footer a, footer a:hover, footer a:visited, footer a:active{
	color:#333333;
}
.txt_s {
	font-size:80%;
	line-height: 1.5em;
}
.img-shadow {
	filter: drop-shadow(0px 5px 5px rgba(0,0,0,0.4));
}


/* 
ボタンエフェクト
---------------------------------------- */


.animated { 
    animation-duration: 1s; 
    animation-fill-mode: both; 
    animation-iteration-count:infinite; 
} 

@keyframes pulse { 
    0% { transform: scale(1); } 
    50% { transform: scale(1.03); } 
    100% { transform: scale(1); } 
} 
.pulse { 
    animation-name: pulse; 
}


.require{
	color:#ED686A;
	font-size:70%;
	font-weight:800;
}

form{
	font-size:90%;
}

.btn-lg{
 font-size:2rem;	
	font-weight: bold;
}

.box-letter {
	font-size:80%;
	color:#555;
}

.h2-form {
	color:#3DB8FF;
	font-weight:800;
}

.box-border {
	border:6px double #999;
	padding:1.5em;
}

.txt_bg_blue p{
	background:#3DB8FF;
	color:#fff;
	font-weight:600;
	padding:0 0.5em;
	margin-bottom:0.8em;
}

.txt_frame_big{
	    position: relative;
    padding: 0.25em 1em;
    margin: 2em 0;
    top: 0;
    background: transparent;
	color:#3DB8FF;
	font-weight:800;
	font-size:110%;
}

.txt_frame_big:before, .txt_frame_big:after{ 
    position: absolute;
    top: 0;
    content:'';
    width: 10px;
    height: 100%;
    display: inline-block;
    box-sizing: border-box;
}
.txt_frame_big:before{
    border-left: solid 2px #3DB8FF;
    border-top: solid 2px #3DB8FF;
    border-bottom: solid 2px #3DB8FF;
    left: 0;
}
.txt_frame_big:after{
    border-top: solid 2px #3DB8FF;
    border-right: solid 2px #3DB8FF;
    border-bottom: solid 2px #3DB8FF;
    right: 0;
}
.txt_frame_big p {
    margin: 0; 
    padding: 0;
}


.txt_inner {
	
}

.map-container{
overflow:hidden;
padding-bottom:56.25%;
position:relative;
height:0;
}

.map-container iframe{
left:0;
top:0;
height:80%;
width:100%;
position:absolute;
}
.txt_blue {
	color:#3DB8FF;
}
