@charset "UTF-8";

* {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, object, iframe, pre, code, p, blockquote, form, fieldset, legend, table, th, td, caption, tbody, tfoot, thead, article, aside, figure, footer, header, hgroup, menu, nav, section, audio, video, canvas {
	margin:0;
	padding:0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, menu { display:block; }
audio:not([controls]) {
	display:none;
	height:0;
}
[hidden] { display:none; }
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset, img { border:none; }
address, caption, cite, code, dfn, em, strong, th, var {
	font-style:normal;
	font-weight:normal;
}
ul, ol, menu { list-style:none; }
caption, th { text-align:left; }
h1, h2, h3, h4, h5, h6 {
	font-size:100%;
	font-weight:normal;
}
q:before, q:after { content:''; }
abbr, acronym {
	border:none;
	font-variant:normal;
}
sup { vertical-align:text-top; }
sub { vertical-align:text-bottom; }
input, textarea, select {
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit;
}
legend { color:#000; }
a img, map a { border:none; }
a:hover, a:active, a:focus { outline:0; }
embed { width:100%; }
audio, canvas, video { display:inline-block; }
audio:not([controls]) {
	display:none;
	height:0;
}
img, object, embed {
	max-width:100%;
	height:auto;
}
object, embed { height:100%; }
img {
	-ms-interpolation-mode:bicubic;
	vertical-align: middle;
}
form img, input, select { vertical-align:middle; }
.leftBox { float:left; }
.rightBox { float:right; }
.clearfix { zoom:1; }
.clearfix:after {
	display:block;
	clear:both;
	content:"";
}
.clear { clear:both !important; }
.hover:hover {
	filter:alpha(opacity=70);
	-moz-opacity:0.7;
	-khtml-opacity: 0.7;
	opacity: 0.7;
}
.mt0, .mv0, .ma0 { margin-top:    0 !important; }
.mr0, .mh0, .ma0 { margin-right:  0 !important; }
.mb0, .mv0, .ma0 { margin-bottom: 0 !important; }
.ml0, .mh0, .ma0 { margin-left:   0 !important; }
.pt0, .pv0, .pa0 { padding-top:   0 !important; }
.pr0, .ph0, .pa0 { padding-right: 0 !important; }
.pb0, .pv0, .pa0 { padding-bottom:0 !important; }
.pl0, .ph0, .pa0 { padding-left:  0 !important; }
.mt5, .mv5, .ma5 { margin-top:    5px !important; }
.mr5, .mh5, .ma5 { margin-right:  5px !important; }
.mb5, .mv5, .ma5 { margin-bottom: 5px !important; }
.ml5, .mh5, .ma5 { margin-left:   5px !important; }
.pt5, .pv5, .pa5 { padding-top:   5px !important; }
.pr5, .ph5, .pa5 { padding-right: 5px !important; }
.pb5, .pv5, .pa5 { padding-bottom:5px !important; }
.pl5, .ph5, .pa5 { padding-left:  5px !important; }
.mt10, .mv10, .ma10 { margin-top:    10px !important; }
.mr10, .mh10, .ma10 { margin-right:  10px !important; }
.mb10, .mv10, .ma10 { margin-bottom: 10px !important; }
.ml10, .mh10, .ma10 { margin-left:   10px !important; }
.pt10, .pv10, .pa10 { padding-top:   10px !important; }
.pr10, .ph10, .pa10 { padding-right: 10px !important; }
.pb10, .pv10, .pa10 { padding-bottom:10px !important; }
.pl10, .ph10, .pa10 { padding-left:  10px !important; }
.mt20, .mv20, .ma20 { margin-top:    20px !important; }
.mr20, .mh20, .ma20 { margin-right:  20px !important; }
.mb20, .mv20, .ma20 { margin-bottom: 20px !important; }
.ml20, .mh20, .ma20 { margin-left:   20px !important; }
.pt20, .pv20, .pa20 { padding-top:   20px !important; }
.pr20, .ph20, .pa20 { padding-right: 20px !important; }
.pb20, .pv20, .pa20 { padding-bottom:20px !important; }
.pl20, .ph20, .pa20 { padding-left:  20px !important; }
.mt30, .mv30, .ma30 { margin-top:    30px !important; }
.mr30, .mh30, .ma30 { margin-right:  30px !important; }
.mb30, .mv30, .ma30 { margin-bottom: 30px !important; }
.ml30, .mh30, .ma30 { margin-left:   30px !important; }
.pt30, .pv30, .pa30 { padding-top:   30px !important; }
.pr30, .ph30, .pa30 { padding-right: 30px !important; }
.pb30, .pv30, .pa30 { padding-bottom:30px !important; }
.pl30, .ph30, .pa30 { padding-left:  30px !important; }
.mt40, .mv40, .ma40 { margin-top:    40px !important; }
.mr40, .mh40, .ma40 { margin-right:  40px !important; }
.mb40, .mv40, .ma40 { margin-bottom: 40px !important; }
.ml40, .mh40, .ma40 { margin-left:   40px !important; }
.pt40, .pv40, .pa40 { padding-top:   40px !important; }
.pr40, .ph40, .pa40 { padding-right: 40px !important; }
.pb40, .pv40, .pa40 { padding-bottom:40px !important; }
.pl40, .ph40, .pa40 { padding-left:  40px !important; }
.strong, .bold { font-weight:bold; }
.italic { font-style:italic; }
.f10 { font-size:10px; }
.f11 { font-size:11px; }
.f12 { font-size:12px; }
.f14 { font-size:14px; }
.f15 { font-size:15px; }
.f16 { font-size:16px; }
.f17 { font-size:17px; }
.f18 { font-size:18px; }
.f19 { font-size:19px; }
.f20 { font-size:20px; }
.f21 { font-size:21px; }
.f22 { font-size:22px; }
.f23 { font-size:23px; }
.f24 { font-size:24px; }
.f25 { font-size:25px; }
.f26 { font-size:26px; }
.center { text-align:center !important; }
.left { text-align:left !important; }
.right { text-align:right !important; }
/****************** end common ********************/

/*==================================================================
	Style setting
===================================================================*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
html {
	font-size: 62.5%;
	overflow-x:hidden;
}
body {
	color: #000000;
	font-family: "Noto Sans JP", sans-serif;
	font-family: "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
	font-size: 1.4rem;
	line-height: 1.7;
	overflow-x:hidden;
	-webkit-text-size-adjust:none;
	-ms-text-size-adjust:none;
	word-wrap:break-word;
}
.inner { padding: 0 15px; }
#layout {
	background-color: #d1eeff;
	color: #000000;
	max-width: 600px;
	margin: auto;
	padding-bottom: 30px;
}
.pos_rel { position: relative;}
.pic_cap {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 20;
	color: #000!important;
	font-size: 1rem;
	line-height: 1.2!important;
	padding: 10px;
}
.pic_cap.w {
	color: #ffffff!important;
}
/* header
------------------------------------------------ */
#header {
	padding: 20px 0 20px;
	background-color: #fff;
}
#header .logo {
	max-width: calc(255 / 600 * 100%);
	width: 25%;
	margin: auto;
}
@media only screen and (max-width: 599px) {
	#header { padding: 20px 0;}
}

/* mv
------------------------------------------------ */
.mv { position: relative; }

/* content
------------------------------------------------ */
sup { font-size: 1rem;}
.list_attent {
	font-size: 1.5rem;
	letter-spacing: 0.05em;
	line-height: 1.4;
	padding-left: 15px;
	text-indent: -15px;
	margin-bottom: 15px;
}
.list_num {
	font-size: 1.5rem;
	letter-spacing: 0;
	line-height: 1.4;
	padding-left: 15px;
	text-indent: -15px;
	margin-bottom: 15px;
}
.list_dot {
	font-size: 1.5rem;
	letter-spacing: 0;
	line-height: 1.4;
	padding-left: 15px;
	text-indent: -15px;
	margin-bottom: 15px;
}
.notes {
	font-size: 1.5rem;
	letter-spacing: 0;
	line-height: 1.4;
}
.notes + .notes { margin-top: 20px;}
.photo { margin-bottom: 10px;}
.img_radius_top {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.img_radius_bottom {
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}
.intro_box {
	margin: 30px 0 30px;
	border-radius: 10px;
	overflow: hidden;
}
.intro_box .box_wrap {
	background-color: #fff;
	padding: 20px 25px 20px;
}
.intro_box .bnr {
	/*max-width: 392px;*/
	margin: 0 auto 25px;
}
.intro_box .ttl {
	font-size: 1.6rem;
	letter-spacing: 0.04em;
	line-height: 1.6;
	font-weight: 500;
	background-color: #37b6a5;
	color: #fff;
	text-align: center;
	padding: 11px 0;
}
.intro_box .ttl .lg {
	font-size: 132%;
	font-weight: bold;
}
.intro_box .txt_box {
	border: 1px solid #231815;
    padding: 5px;
    color: #231815;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    line-height: 1.4;
    margin: 30px 0 30px;
    text-align: center;
}
.intro_list  {
	display: flex;
	flex-wrap: wrap;
	column-gap: 20px;
	row-gap: 40px;
	margin: 0 10px
}
.intro_list .cont {
	position: relative;
	display: flex;
	flex-direction: column;
    justify-content: flex-end;
    height: 100%;
}
.intro_list .img { margin-bottom: 10px;}
.intro_list .txt {
	font-size: 1.7rem;
	letter-spacing: 0;
	line-height: 1.5;
	color: #231815;
	text-align: center;
}
.intro_list .circle {
	width: 90px;
	height: 90px;
	min-width: 90px;
	border-radius: 50%;
	background-color: #0d3387;
	font-size: 1.9rem;
	letter-spacing: 0.05em;
	line-height: 1.2;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 0 15px 10px;
}
.intro_list .item { width: calc(100%/2 - 10px);}
.intro_list .item:nth-child(2) .img { max-width: 205px;}
.intro_list .item.item_full { width: 100%;}
.intro_list .item.item_full .cont {
	flex-direction: row;
	justify-content: flex-start;
}
.intro_list .item.item_full .cont::before {
	content: ".......................................................................................................................................................................................................";
    color: #003d82;
    font-size: 1.2rem;
    overflow: hidden;
    white-space: normal;
    height: 30px;
    line-height: 22px;
    width: calc(100% + 20px);
    display: block;
	position: absolute;
	top: -40px;
	left: -10px;
}
.intro_list .item.item_full .circle {
	background-color: #00937d;
	margin-right: 14%;
}
.intro_list .item.item_full .info {
	margin-top: 10px;
	max-width: 235px;
}
.ttl_sub {
	font-weight: bold;
	letter-spacing: 0.05em;
	margin-bottom: 10px;
	font-size: 1.5rem;
}
.btn {
	border-radius: 5px;
	font-size: 1.9rem;
	letter-spacing: 0.05em;
	line-height: 1.7;
	font-weight: bold;
	color: #fff;
	background-color: #8c7338;
	display: block;
	max-width: 204px;
	text-align: center;
	padding: 10px 5px;
	margin: auto;
	text-decoration: none;
	transition: all .3s;
}
.btn:hover { opacity: .7;}
.btn + .btn { margin-top: 25px;}
.btn.btn_brown { background-color: #724b55;}
.btn.btn_blue { background-color: #37b6a5;}
@media only screen and (max-width: 599px) {
	.list_attent { font-size: 1.2rem;}
	.list_num {
		font-size: 1.2rem;
		padding-left: 12px;
		text-indent: -12px;
	}
	.list_dot {
		font-size: 1.2rem;
		padding-left: 12px;
		text-indent: -12px;
	}
	.notes { font-size: 1.2rem;}
	.ttl_sub { font-size: 1.2rem;}
	.btn { font-size: 1.6rem;}
	.btn + .btn { margin-top: 20px;}
	.intro_box { 
		margin: 30px 0 30px;
		border-radius: 5px;
	}
	.intro_box .box_wrap { padding: 20px 15px;}
	.intro_box .txt_box { font-size: 1.4rem;}
	.intro_box .ttl {
		font-size: 1.2rem;
		letter-spacing: 0;
	}
	.intro_list {
		column-gap: 15px;
		margin: 0;
	}
	.intro_list .circle {
		font-size: 1.4rem;
		width: 80px;
		min-width: 80px;
		height: 80px;
	}
	.intro_list .item { width: calc(100% / 2 - 7.5px);}
	.intro_list .txt { font-size: 1.1rem;}
	.intro_list .item.item_full .circle { margin-right: 15px;}
	.intro_list .item.item_full .cont::before {
		left: 0;
		width: 100%;
		top: -35px;
	}
}