/* common
--------------------------------------------*/
body{margin:0px;padding:0px 0px 0px 0px;text-align:left;letter-spacing:0;}
form,input,p,a,table,img,ul,ol,li,dt,dd,dl,input,h1,h2,h3,h4,h5,h6,q{margin:0;padding:0;}
form{background:none;border:none;}
.mg20l {margin-left:20px;}
img{border:0;}
hr{display:none;}
li {list-style:none;}
p {text-align:left;}
strong {font-weight:400;}
a {
color:#333333;
text-decoration:none;
transition:0.3s;
}
.clear {
clear:both;
}


a:hover {
text-decoration:underline;
}


/* margin
--------------------------------------------*/
.mg0a {margin:0px;}.mg3a{margin:3px;}.mg5a{margin:5px;}.mg7a{margin:7px;}.mg10a{margin:10px;}
.mg15a{margin:15px;}.mg20a{margin:20px;}.mg30a{margin:30px;}
.mg50a{margin:50px;}

.mg0v {margin-top:0px; margin-bottom:0px;}.mg3v {margin-top:3px; margin-bottom:3px;}.mg5v {margin-top:5px; margin-bottom:5px;}
.mg7v{margin-top:7px; margin-bottom:7px;}.mg10v{margin-top:10px; margin-bottom:10px;}.mg15v{margin-top:15px; margin-bottom:15px;}
.mg20v{margin-top:20px; margin-bottom:20px;}.mg30v{margin-top:30px; margin-bottom:30px;}
.mg50v{margin-top:50px; margin-bottom:50px;}

.mg0h {margin-right:0px; margin-left:0px;}.mg3h {margin-right:3px; margin-left:3px;}.mg5h {margin-right:5px; margin-left:5px;}
.mg7h{margin-right:7px; margin-left:7px;}.mg10h{margin-right:10px; margin-left:10px;}.mg15h{margin-right:15px; margin-left:15px;}
.mg20h{margin-right:20px; margin-left:20px;}.mg30h{margin-right:30px; margin-left:30px;}
.mg50h{margin-right:50px; margin-left:50px;}

.mg0t {margin-top:0px;}.mg3t {margin-top:3px;}.mg5t {margin-top:5px;}.mg7t{margin-top:7px;}.mg10t{margin-top:10px;}
.mg15t{margin-top:15px;}.mg20t{margin-top:20px;}.mg30t{margin-top:30px;}
.mg50t{margin-top:50px;}

.mg0r {margin-right:0px;}.mg3r {margin-right:3px;}.mg5r {margin-right:5px;}.mg7r{margin-right:7px;}.mg10r{margin-right:10px;}
.mg15r{margin-right:15px;}.mg20r{margin-right:20px;}.mg30r{margin-right:30px;}
.mg50r{margin-right:50px;}

.mg0b {margin-bottom:0px;}.mg3b {margin-bottom:3px;}.mg5b {margin-bottom:5px;}.mg7b{margin-bottom:7px;}.mg10b{margin-bottom:10px;}
.mg15b{margin-bottom:15px;}.mg20b{margin-bottom:20px;}.mg30b{margin-bottom:30px;}
.mg50b{margin-bottom:50px;}

.mg0l {margin-left:0px;}.mg3l{margin-left:3px;}.mg5l {margin-left:5px;}.mg7l{margin-left:7px;}.mg10l{margin-left:10px;}
.mg15l{margin-left:15px;}.mg20l{margin-left:20px;}.mg30l{margin-left:30px;}
.mg50l{margin-left:50px;}

/* padding
--------------------------------------------*/
.pd0a {padding:0px;}.pd3a{padding:3px;}.pd5a {padding:5px;}.pd7a{padding:7px;}.pd10a{padding:10px;}
.pd15a{padding:15px;}.pd30a{padding:20px;}.pd30a{padding:30px;}
.pd50a{padding:50px;}

.pd0v {padding-top:0px; padding-bottom:0px;}.pd3v {padding-top:3px; padding-bottom:3px;}.pd5v {padding-top:5px; padding-bottom:5px;}
.pd7v{padding-top:7px; padding-bottom:7px;}.pd10v{padding-top:10px; padding-bottom:10px;}.pd15v{padding-top:15px; padding-bottom:15px;}
.pd20v{padding-top:20px; padding-bottom:20px;}.pd30v{padding-top:30px; padding-bottom:30px;}
.pd50v{padding-top:50px; padding-bottom:50px;}

.pd0h {padding-right:0px; padding-left:0px;}.pd3h {padding-right:3px; padding-left:3px;}.pd5h {padding-right:5px; padding-left:5px;}
.pd7h{padding-right:7px; padding-left:7px;}.pd10h{padding-right:10px; padding-left:10px;}.pd15h{padding-right:15px; padding-left:15px;}
.pd20h{padding-right:20px; padding-left:20px;}.pd30h{padding-right:30px; padding-left:30px;}
.pd50h{padding-right:50px; padding-left:50px;}

.pd0t {padding-top:0px;}.pd3t {padding-top:3px;}.pd5t {padding-top:5px;}.pd7t{padding-top:7px;}.pd10t{padding-top:10px;}
.pd15t{padding-top:15px;}.pd20t{padding-top:20px;}.pd30t{padding-top:30px;}
.pd50t{padding-top:50px;}

.pd0r {padding-right:0px;}.pd3r {padding-right:3px;}.pd5r {padding-right:5px;}.pd7r{padding-right:7px;}.pd10r{padding-right:10px;}
.pd15r{padding-right:15px;}.pd20r{padding-right:20px;}.pd30r{padding-right:30px;}
.pd50r{padding-right:50px;}

.pd0b {padding-bottom:0px;}.pd3b {padding-bottom:3px;}.pd5b {padding-bottom:5px;}.pd7b{padding-bottom:7px;}.pd10b{padding-bottom:10px;}
.pd15b{padding-bottom:15px;}.pd20b{padding-bottom:20px;}.pd30b{padding-bottom:30px;}
.pd50b{padding-bottom:50px;}

.pd0l {padding-left:0px;}.pd3l {padding-left:3px;}.pd5l {padding-left:5px;}.pd7l{padding-left:7px;}.pd10l{padding-left:10px;}
.pd15l{padding-left:15px;}.pd20l{padding-left:20px;}.pd30l{padding-left:30px;}
.pd50l{padding-left:50px;}


:root {
  --font-gothic:
    "Noto Sans JP",
    "Yu Gothic",
    "YuGothic",
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    "Meiryo",
    sans-serif;

  --font-mincho:
    "Noto Serif JP",
    "Yu Mincho",
    "YuMincho",
    "Hiragino Mincho ProN",
    "Hiragino Mincho Pro",
    serif;

  --font-en:
    "Cormorant Garamond",
    "Times New Roman",
    serif;
}


body {
font-family: var(--font-gothic);
line-height:150%;
margin: 0px;
color: #102a47;
background-color:#fef8f2;
letter-spacing: 0.04em;
}


.wrap {
	width:1080px;
	margin:0 auto;
}

/*
.main {
	background-color:#f9f9f9;
}
*/
.main{
	background-color:#fafafa;
}

.right {
text-align:right;
}
.left {
text-align:left;
}


.f-left {
float:left;
}
.f-right {
float:right;
}

.center {
text-align:center;
}
.r20{-webkit-border-radius:20px 20px 20px 20px;
-moz-border-radius:20px 20px 20px 20px;  
border-radius:20px 20px 20px 20px;
}

.r15{-webkit-border-radius:15px 15px 15px 15px;
-moz-border-radius:15px 15px 15px 15px;  
border-radius:15px 15px 15px 15px;
}

.r10{-webkit-border-radius:10px 10px 10px 10px;
-moz-border-radius:10px 10px 10px 10px;  
border-radius:10px 10px 10px 10px;
}

.r8{-webkit-border-radius:8px 8px 8px 8px;
-moz-border-radius:8px 8px 8px 8px;  
border-radius:8px 8px 8px 8px;
}
.r5{-webkit-border-radius:5px 5px 5px 5px;
-moz-border-radius:5px 5px 5px 5px;  
border-radius:5px 5px 5px 5px;
}
.r3{-webkit-border-radius:3px 3px 3px 3px;
-moz-border-radius:3px 3px 3px 3px;  
border-radius:3px 3px 3px 3px;
}
.r0{-webkit-border-radius:0px 0px 0px 0px;
-moz-border-radius:0px 0px 0px 0px;  
border-radius:0px 0px 0px 0px;
}

.f80 {
	font-size:80%;
}
.f85 {
	font-size:85%;
}
.f90 {
	font-size:90%;
}
.f95 {
	font-size:95%;
}

.f110 {
	font-size:110%;
}
.f120 {
	font-size:120%;
}
.f130 {
	font-size:130%;
}
.f150 {
	font-size:150%;
}
.f170 {
	font-size:170%;
}
.f200 {
	font-size:200%;
}
.f230 {
	font-size:230%;
}
.f250 {
	font-size:250%;
}
.f270 {
	font-size:270%;
}
.c1 {
	color:#ff6363;
}
.c2 {
	color:#444;
}

.bg_01 {
	background-color:#FFF;	
}
.bg_02 {
background-color:#f9f9f9;
}
.bg_03 {
background-color:#f8fdf8;
}
.bg_04 {
background-color:#ffece9;
}

.indent1 {
	text-indent:1em;
	padding-left:-1em;
	
}
.indent {
	text-indent:-1em;
	padding-left:1em;
	
}
i {
	padding-right:3px;
}



.l70{
	line-height:70%;
}
.l80{
	line-height:80%;
}
.l90{
	line-height:90%;
}
.l95{
	line-height:95%;
}
.l100{
	line-height:100%;
}
.l110{
	line-height:110%;
}
.l120{
	line-height:120%;
}
.l130{
	line-height:130%;
}
.l150 {
	line-height:150%;
}
.l170 {
	line-height:170%;
}
.l200 {
	line-height:200%;
}
.l250 {
	line-height:250%;
}



.att {
	color:#ff0000;
	font-weight:700;
	
}
.att2 {
	color:#eb4a66;
	font-weight:700;
	
}
.att3 {
	color:#ff9b0d;
	font-weight:700;
}
.waku {
	background-color:#fff;
	padding:20px;
}
.waku2 {
	border:1px dotted #e8e1d5;
	background-color:#fafafa;
	padding:10px;
}


.f700 {
	font-weight:700;
}




.txt_wrapper {
	margin: 16px auto;
	text-align: center;
	display: block;
}
.txt_wrapper .text {
	text-align: left;
	display: inline-block;
}
.txt_wrapper_760 {
max-width: 760px;
margin: 0 auto;
text-align: center;
}
.txt_wrapper_760 .text {
display: inline-block;
text-align: left;
}


.txt_wrapper_850 {
max-width: 850px;
margin: 0 auto;
text-align: center;
}
.txt_wrapper_850 .text {
display: inline-block;
text-align: left;
}


.table {
	border-collapse: collapse;
	text-align: left;
	line-height: 1.5;
	border-left: 1px solid #e8e1d5;
	border-top: 1px solid #e8e1d5;
}

.table th {
	padding: 10px;
	vertical-align: top;
	border-right: 1px solid #e8e1d5;
	border-bottom: 1px solid #e8e1d5;
	background-color:#f5efe6;

}
.table td {
	background-color:#fefefe;
	padding: 10px;
	vertical-align: top;
	border-right: 1px solid #e8e1d5;
	border-bottom: 1px solid #e8e1d5;
}

table input {
border:0;
padding:5px;
font-size:1.1em;
font-family:Arial, sans-serif;
color:#333;
border:solid 1px #ccc;
margin:0 0 0px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.2);
-webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.2);
box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.2);
}
table select {
border:0;
padding:5px;
font-size:1.1em;
font-family:Arial, sans-serif;
color:#333;
border:solid 1px #ccc;
margin:0 0 0px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.2);
-webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.2);
box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.2);
}
textarea {
border:0;
padding:5px;
font-size:1.1em;
font-family:Arial, sans-serif;
color:#333;
border:solid 1px #ccc;
margin:0 0 0px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.2);
-webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.2);
box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.2);
}

input:focus {
    border:solid 1px #EEA34A;
}
.button {
border:solid 1px #ccc;
padding:15px 30px;
margin:0 0 20px;
font-family:Arial, sans-serif;
font-size:1.2em;
text-transform:uppercase;
font-weight:bold;
color:#333;
cursor:pointer;
-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0px 1px 2px rgba(0, 0, 0, 0.2);
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0px 1px 2px rgba(0, 0, 0, 0.2);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0px 1px 2px rgba(0, 0, 0, 0.2);
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
text-shadow: 0px -1px 1px rgba(255, 255, 255, 0.8);
}


.main_c {
color:#2b0000;
}


/* page-top */
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	line-height:100%;
}
#page-top a {
	background: #186ace;
	text-decoration: none;
	color: #fff;
	width: 100px;
	padding: 15px 0;
	text-align: center;
	display: block;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
#page-top a:hover {
	text-decoration: none;
	background: #999;
}



.btn_01 {
display: flex;
justify-content: center;
align-items: center;
width: 270px;
margin:0 auto;
padding: .9em 0px;
border: none;
border-radius: 5px;
box-shadow: 0 2px 3px rgb(0 0 0 / 25%), 0 2px 3px -2px rgb(0 0 0 / 15%);
background-color: #1f2b46;
color: #fff;
font-weight: 700;
font-size: 1em;
transition: 0.3s ease;
}

.btn_01:hover {
background-color: #b8873b;
text-decoration:none;
color:#FFF;
}

/* bottom
--------------------------------------------*/
.bottom_title {
background-color:#f6f1ea;
}
.bottom_title .wrap {
padding-top:30px;
padding-bottom:30px;
background-image:url(/images/logo_bg.png);
background-position:right;
background-repeat:no-repeat;
}
.bottom_title_text {
font-family: var(--font-mincho);
color: #021233;
font-size:240%;
line-height:140%;
font-weight:700;
text-shadow:
  0 0 3px #fff,
  0 0 6px #fff,
  0 0 10px rgba(255, 255, 255, 0.9);
}
.bottom_title_sublead {
font-family: var(--font-mincho);
color: #2b2018;
font-size:95%;
line-height:160%;
font-weight:700;
margin-top:10px;
text-shadow:
  0 0 3px #fff,
  0 0 6px #fff,
  0 0 10px rgba(255, 255, 255, 0.9);
}
@media screen and (max-width: 768px) {
.bottom_title {
background-position:center;
}
}

.bottom_main {
padding:20px 0 50px;
}


/* Hタグ
--------------------------------------------*/



h3 {
font-family: var(--font-mincho);
font-size:200%;
font-weight:700;
margin-bottom:15px;
margin-top:0px;
text-align:center;
color:#2b0000;
}


.heading_01 span{
display:inline-block;
padding-bottom:3px;
border-bottom: 5px solid #f1dcba;
font-weight:700;
}

/* ここまで共通CSS
--------------------------------------------*/

@media screen and (min-width: 1025px) {
.sp {
	display:none;
}
}

@media screen and (max-width: 1024px) {
.pc {
	display:none;
}
	

.wrap {
	overflow: hidden;
	width:100%;
	padding-left:10px;
	padding-right:10px;
}
}

@media screen and (max-width: 850px) {
.header {
	display:none;
}


@media screen and (max-width: 640px) {
.table_responsive th,td{
	padding-left:10px;
	padding-right:10px;
	width: 100%;
    display: block;
}
}


@media screen and (max-width: 599px) {
.txt_wrapper {
	overflow: hidden;
	width:100%;
	padding-left:10px;
	padding-right:10px;
}

.txt_wrapper_760 {
	overflow: hidden;
	width:100%;
	padding-left:10px;
	padding-right:10px;
}

.txt_wrapper_850 {
	overflow: hidden;
	width:100%;
	padding-left:10px;
	padding-right:10px;
}

.btn-flat-border3 {
  width:190px;
}
}




