/* 全体のボックスモデルをリセット */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
}

/* olとulのリストスタイルをリセット */
ol, ul {
  list-style: none;
}

/* リンクのデフォルトスタイルをリセット */
a {
  text-decoration: none;
}

/* 見出しのフォントサイズをリセット */
h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

/* インライン要素のデフォルトフォントサイズをリセット */
input, select, textarea {
  font-size: 100%;
  margin: 0;
}

/* ボタンのデフォルトスタイルをリセット */
button {
  border: none;
  padding: 0;
}

/* ページ全体に対する余白をリセット */
body {
  line-height: 1;
}

/* クリアフィックスを適用 */
.clearfix::before,
.clearfix::after {
  content: "";
  display: table;
}

.clearfix::after {
  clear: both;
}

/* コンテナの最大幅を指定 */
.container {
  max-width: 1200px;
  margin: 0 auto;
}

/* いろいろ */

body{
    margin: 0 auto;
    padding: 0;
    text-align: center;
    width: 700px;
	font-family: 'Noto Sans Japanese', sans-serif;

}

section{
    width: 100%;
    margin: 0 auto;
    background-color: #fff;
}

header{
    width: 100%;
    margin: 0 auto;
    background: #fff;
    margin-bottom: 35px;
}

p{
    font-size: 22px;
    line-height: 2rem;
}

/* header */
.comedical-header{
    text-align: center;
}

.comedical-header img{
    width: 100%;
}

/* sub-title */
.sub-title{
    margin: 0 auto;
    margin-bottom: 35px;
}

h2{
    font-size: 28px;
    font-weight: 600;
    margin: 20px 0;

}

.big{
    font-size: 33px;
    font-weight: 600;

}

.small{
    font-size: 20px;
}

.p-box{
    background-color: #FDFDA4;
    width: 500px;
    margin: 0 auto;
    padding: 20px 0;

}

ul{
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    margin: 0 auto;
    padding: 0;
}


.p-box li{
    margin-bottom: 10px;
    font-size: 24px;
    font-weight: 600;
    width: 50%;
    box-sizing: border-box;

}


ul li{
    list-style-position: inside;
    }

/* question */

h3{
    background-color: #B0D2F0;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 24px;
    font-weight: 600;
    padding: 20px 0;
}

.q-box{
    border: solid 1px #000;
    border-radius: 25px;
    background-color: #fff;
    padding: 0 35px;
    margin-right: 20px;
    font-weight: 600;
}

.question-corner{
    margin: 0 auto;

}

.question{
    border: solid 1px #000;
    margin-bottom: 35px;
    width: 640px;
    margin: 0 auto;
    margin-bottom: 35px;

}

.q-content{
    font-size: 22px;
    font-weight: 600;
    margin: 0 auto;
    text-align: left;
    width: 40%;
    margin-bottom: 20px;
    margin-top: 15px;

}

.q-content2{
    font-size: 20px;
    font-weight: 600;
    margin: 0 auto;
    text-align: left;
    width: 47%;
    margin-bottom: 20px;
    margin-top: 20px;
    display: flex;

}

.q-content3{
    font-size: 20px;
    font-weight: 600;
    margin: 0 auto;
    text-align: left;
    width: 50%;
    margin-bottom: 20px;
	 margin-top: 15px;

}

.checkstyle1,.checkstyle3{
    accent-color:#97B6D1;
    inline-size: 1.2rem;
    block-size: 1.2rem;
    margin: 15px 5px 10px 0;

}


.checkbtn{
    padding:0px;
    font-size: 22px;
    text-align: left;
    font-weight: 600;
}


.answer-box{
    display: none;
}

@keyframes fadein{
    from{
    opacity: 0;
    transform: translatey(-10px);
    }
    to{
    opacity: 1;
    transform: translatey(0);
    }
}
.answer-box,.answer-box1,.answer-box3 {
    margin: 5px auto;
    padding: 5px;
    border: 1px solid #5783A8; 
    background-color: #fff;
    animation-name: fadein;
    animation-duration: 1s;
    width: 580px;
    box-shadow: 4px 4px #5783A8;
    margin-bottom: 20px;

}

.question p{
    font-size: 20px;
    margin-bottom: 20px;
    line-height: 2rem;
}

.note{
    font-size: 12px;
    color: #7E7E7E;
    margin-left: 55px;
}

.note1{
    font-size: 12px;
    color: #7E7E7E;
    text-align: right;
}

.answer-box1 img{
    width: 100%;
}

#answer-content2 img{
    width: 10%;
    margin: 20px;

}

.answer{
    margin: 10px 20px;
   
}

.red{
    font-weight: 600;
    color: rgb(255, 0, 0);
    font-size: 19px;
}

.red2{
    font-weight: 600;
    color: rgb(255, 0, 0);
    font-size: 22px;
}

.radiostyle{
    display: none;
}

.radiobtn{
    background-color: #82BEF2;
    width: 130px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    margin: 10px;
    font-weight: 600;
}

.radiostyle:checked + label{
    background-color: #5783A8;
}

.answer-box1{
    display: none;
}

#answer-content3 p{
    font-size: 20px;
    margin: 10px;
    line-height: 2rem;
}
#answer-content3 ul{
    display: block;
    background-color: #FCFFA5;
    width: 35%;
    padding: 10px;
    padding-left: 60px;
    text-align: left;
}

#answer-content3 li{
    font-size: 18px;
    font-weight: 600;
    list-style: none;
    margin: 10px;

}

/* thanks */

.thanks p{
    font-size: 24px;
    font-weight: 600;
    margin: 35px 0;
}

/* point */

.point h2{
    font-size: 21px;
    font-weight: 600;
    line-height: 2rem;

}

.point p{
    font-size: 20px;
    line-height: 2.5rem;
}

.big-b{
    font-size: 24px;
    font-weight: 600;
    color: #2C6698;

}

.pointimg{
    width: 70%;
    margin: 35px;
}

.boder{
    border-bottom:double 9px #B0D2F0;
    font-size: 22px;
    font-weight: 600;
    line-height: 2rem;
}

.mov{
    width: 60%;
    margin: 20px;
}


.big2{
    font-weight: 600;
    font-size: 22px;
}

.offer-btn{
    margin: 35px;
}

.reviewimg{
    border: solid 1px #2C6698;
    box-shadow: 4px 4px #5783A8;
    width: 90%;
    margin: 35px;
}

.reviewimg img{
    width: 85%;
}


.area-title{
    text-align: left;
    font-weight: 600;
    margin: 10px;
    margin-bottom: 0;
    font-size: 18px;

}

.map-h img{
    margin: 35px;

}


a:hover img {
	opacity: 0.7;
		-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 60);
		filter: alpha(opacity = 60);
	transition: all 0.4s;
}
a {
	text-decoration: none;
	color: #435ea9;
}
a:hover {
	text-decoration: none;
	color: #0E2D96;
	transition: 0.3s all;
}
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix{
    width: 80%;
}
/******* 地図成形 *******/
#japan-map div div.area div {
	border: 1px #ffffff solid;
	text-align: center;
	font-size: 14px;
 	display: flex;
		display: -webkit-flex;
 	align-items: center; /* 縦方向中央揃え */
 		-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 	justify-content: center; /* 横方向中央揃え */
 		-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
	border-radius: 6px;
		-webkit-border-radius: 6px;
	position: absolute;
	box-sizing: border-box;
	transition: 0.2s;
}
#japan-map div div.area div:hover {
	opacity: 0.5;
	transition: 0.2s;
}


/* 北海道・東北 */


#hokkaido-touhoku div.area div {
	background-color: #9d9fd6;
	color: #ffffff;
}

#hokkaido {	
	width: 133px;
	height: 70px;
}
#aomori {
	width: 93px;
	height: 43px;
	left: 21px;
	top: 96px;
}
#akita {
	width: 67px;
	height: 42px;
	left: 3px;
	top: 139px;

}
#iwate {
	width: 67px;
	height: 42px;
	left: 70px;
	top: 139px;
}
#yamagata {
	width: 67px;
	height: 42px;
	top: 181px;
	left: 3px;
}
#miyagi {
	width: 67px;
	height: 42px;
	top: 181px;
	left: 70px;
}
#fukushima {
	width: 67px;
	height: 42px;
	top: 223px;
	left: 70px;
}

/* 関東 */

#kantou {
	width: 158px;
	display: block;
	height: 174px;
	position: absolute;
	top: 265px;
	left: 623px;
	z-index: 2;
}
#kantou div.area div {
	background-color: #6eb0b5;
	color: #ffffff;
}
#ibaraki {
	width: 52px;
	height: 85px;
	top: 0px;
	left: 100px;
}
#tochigi {
	width: 50px;
	height: 42px;
	top: 0px;
	left: 50px;
}
#gunma {
	width: 50px;
	height: 42px;
	top: 0px;
	left: 0px;
}
#saitama {
	width: 100px;
	height: 43px;
	top: 42px;
	left: 0px;
}
#chiba {
	width: 52px;
	height: 84px;
	top: 85px;
	left: 100px;
}
#tokyo {
	width: 100px;
	height: 42px;
	top: 85px;
	left: 0px;
}
#kanagawa {
	width: 67px;
	height: 42px;
	top: 127px;
	left: 0px;
}

/* 中部 */

#tyubu {
	width: 270px;
	height: 211px;
	position: absolute;
	left: 438px;
	top: 223px;
}
#tyubu div.area div {
	background-color: #87ba95;
	color: #ffffff;
}

#nigata {
	width: 85px;
	height: 42px;
	left: 185px;
}
#toyama {
	width: 67px;
	height: 42px;
	left: 118px;
}
#ishikawa {
	width: 50px;
	height: 57px;
	left: 68px;
}
#fukui {
	width: 68px;
	height: 42px;
	left: 0px;
	z-index: 2;
}
#nagano {
	width: 67px;
	height: 85px;
	left: 118px;
	top: 42px
}
#yamanashi {
	width: 67px;
	height: 42px;
	left: 118px;
	top: 127px;
}
#gifu {
	width: 50px;
	height: 55px;
	left: 68px;
	top: 57px
}
#shizuoka {
	width: 67px;
	height: 42px;
	left: 118px;
	top: 169px;
}
#aichi {
	width: 50px;
	height: 57px;
	top: 112px;
	left: 68px;
}

/* 近畿 */

#kinki {
	width: 186px;
	height: 211px;
	position: absolute;
	left: 320px;
	top: 223px;
}
#kinki div.area div {
	background-color: #c2c57c;
	color: #ffffff;
}

#kyoto {
	width: 67px;
	height: 84px;
	left: 51px;
}
#shiga {
	width: 68px;
	height: 42px;
	top: 42px;
	left: 118px;
}
#osaka {
	width: 67px;
	height: 85px;
	top: 84px;
	left: 51px;
}
#nara {
	width: 34px;
	height: 85px;
	top: 84px;
	left: 118px;
}
#mie {
	width: 34px;
	height: 85px;
	top: 84px;
	left: 152px;
}
#wakayama {
	width: 113px;
	height: 42px;
	top: 169px;
	left: 61px;
}
#hyougo {
	width: 51px;
	height: 98px;
	left: 0px;
}

/* 中国 */

#tyugoku {
	width: 151px;
	height: 98px;
	position: absolute;
	left: 169px;
	top: 223px;
}
#tyugoku div.area div {
	background-color: #cfb184;
	color: #ffffff;
}
#tottori {
	width: 50px;
	height: 49px;
	left: 101px;
}
#okayama {
	width: 50px;
	height: 49px;
	top: 49px;
	left: 101px;
}
#shimane {
	width: 51px;
	height: 49px;
	left: 50px;
}
#hiroshima {
	width: 51px;
	height: 49px;
	top: 49px;
	left: 50px;
}
#yamaguchi {
	width: 50px;
	height: 98px;
	left: 0px;
}

/* 四国 */

#shikoku {
	width: 184px;
	height: 84px;
	position: absolute;
	left: 169px;
	top: 350px;
}
#shikoku div.area div {
	background-color: #c69f89;
	color: #ffffff;
}
#kagawa {
	width: 92px;
	height: 42px;
	right: 0px;
}
#ehime {
	width: 92px;
	height: 42px;
	left: 0px;
}
#tokushima {
	width: 92px;
	height: 42px;
	right: 0px;
	top: 42px;
}
#kouchi {
	width: 92px;
	height: 42px;
	left: 0px;
	top: 42px;
}

/* 九州・沖縄 */

#kyusyu {
	width: 152px;
	height: 247px;
	position: absolute;
	left: 0px;
	top: 235px;
}
#kyusyu div.area div {
	background-color: #d09e9e;
	color: #ffffff;
}
#fukuoka {
	width: 50px;
	height: 50px;
	left: 101px;
	top: 0px;
}
#saga {
	width: 50px;
	height: 50px;
	left: 51px;
	top: 0px;
}
#nagasaki {
	width: 50px;
	height: 50px;
	left: 1px;
	top: 0px;
}
#oita {
	width: 50px;
	height: 50px;
	left: 101px;
	top: 50px;
}
#kumamoto {
	width: 50px;
	height: 100px;
	left: 51px;
	top: 50px;
}
#miyazaki {
	width: 50px;
	height: 50px;
	left: 101px;
	top: 100px;
}
#kagoshima {
	width: 68px;
	height: 49px;
	left: 83px;
	top: 150px;
}
#okinawa {
	width: 50px;
	height: 50px;
	left: 1px;
	top: 197px;
}


#japan-map {
	display: block;
	width: 100%;
	height: auto;
}
#hokkaido-touhoku, #kantou, #tyubu, #kinki, #tyugoku, #shikoku, #kyusyu {
	display: flex;
	flex-wrap: wrap;
	width: 80%;
	height: auto;
	position: static;
    margin: 0 auto;
}
#japan-map div div.area {
	font-size: 14px;
 	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
#japan-map div div.area a {
	height: auto;
	width: 25%;
}
#japan-map div div.area div {
 	display: block;
	border-radius: 0px;
	position: static;
	height: auto;
	font-size: 16px;
	width: 100%;
	padding: 0.5em 0.3em 0.5em 0.3em;
}

.text{
    margin: 35px;
}

.text p{
    line-height: 2.5rem;
}

footer{
	width: 100%;
	text-align: center;
	margin-top: 50px;
	padding: 25px 0;
   background-color: #B0D2F0;

}

.footer-item{
	font-size:12px;
	
}


.pointill{
    margin: 35px;
    margin-right: 10px;
}

	.sp-br{
		display:none;
	}

	.pc-br{
		display:inline;

	}
	.sp{
		display:none;
	}

	.pc{
		display:inline;
		width:100%;
	}
@media screen and (max-width: 767px) {
	
	body{
    margin: 0 auto;
    padding: 0;
    text-align: center;
    width: 100%;
	 font-family: 'Noto Sans Japanese', sans-serif;
}
	
	header {
    margin-bottom: 20px;
}
	
	section{
		width:96%;
	}
	
	.note1{
		margin-right:10px;
	}
	
	h2 {
    font-size: 22px;
    font-weight: 600;
    margin: 20px 0;
    line-height: 2rem;
}
	
	h3 {
    font-size: 20px;
    line-height: 2rem;
		padding: 10px 0;
}
	
	.big {
    font-size: 24px;
    font-weight: 600;
}
	
	.small {
    font-size: 16px;
}
	
	.point h2 {
    font-size: 18px;
    font-weight: 500;
    line-height: 2rem;
}
	
	.p-box {
    background-color: #FDFDA4;
    margin: 0 auto;
    padding: 15px 0;
		width: 90%;
}
	ul {
    width: 60%;
    margin: 0 auto;
    padding: 0;
		display: block;
}
	
	.p-box li {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 600;
    box-sizing: border-box;
    text-align: left;
    width: 100%;
}
	
	.sp-br{
		display:inline;
	}
	
	.pc-br{
		display:none;
	}
	
		.sp{
		display:inline;
			width:100%;
	}
	
	.pc{
		display:none;
	}
	
	
	.question {
    width: 96%;
}
	
	.q-box {
    border: solid 1px #000;
    border-radius: 25px;
    background-color: #fff;
    padding: 0 15px;
    margin-right: 10px;
    font-weight: 600;
}
	
	.q-box {
    padding: 0 15px;
    margin-right: 10px;
}
	
	.q-content{
		width:55%;
		margin-top: 15px;
	}
	
	.checkbtn {
    padding: 0px;
    font-size: 20px;
    text-align: left;
    font-weight: 500;
}
	.radiobtn {
    background-color: #82BEF2;
    width: 130px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    margin: 10px;
    font-size: 20px;
    font-weight: 500;
}
	
	.checkstyle1, .checkstyle3 {
    accent-color: #97B6D1;
    inline-size: 1rem;
    block-size: 1rem;
    margin: 10px 5px 5px 0;
}
	
.answer-box, .answer-box1, .answer-box3{
		width:90%;
		padding:0;
		
	}
	
	.answer {
    margin: 6px 15px;
}
	
	.question p {
    font-size: 18px;
    margin-bottom: 15px;
    line-height: 1.8rem;
}
.q-content2 {
    width: 70%;

}
	
	.q-content3 {
    width: 80%;
		margin-top: 15px;
    }
	
	#answer-content3 ul {
		width: 80%;
		padding-left: 0;
		text-align: center;
	}
	#answer-content3 li {
    text-align: left;
    display: inline-block;
}
		.text p {
    line-height: 1.8rem;
    font-size: 18px;
}
	.point2{
		width:100%;
		margin-top: 20px;
	}
	
		.point2 img{
		width:100%;
	}
	
	.pointill {
    margin: 20px 0 0 0;

}
	
	.text img{
		width:100%;
	}
	.offer-btn {
    margin: 0;
}
	
		.offer-btn img {
    width:100%;
}
	
	p {
    font-size: 18px;
    line-height: 1.8rem;
}
	
	.reviewimg {
    width: 98%;
    margin: 20px 0 0 0;
}
	
	.map-h img {
    margin: 25px 0;
    width: 100%;
}
	
.red2 {
    font-size: 20px;
}
	
	.review p{
		margin:25px 0;
	}
	
	.big2 {
    font-weight: 600;
    font-size: 20px;
}
	.boder {
    border-bottom: double 6px #B0D2F0;
    font-size: 19px;
    font-weight: 600;
    line-height: 2rem;
}
	
.big-b {
    font-size: 22px;
    font-weight: 600;
    color: #2C6698;
}
	
.pointimg {
    width: 70%;
    margin: 0;
}

	#answer-content3 p{
    font-size: 18px;
    margin: 10px;
    line-height: 2rem;
}
	
	.thanks p {
    font-size: 22px;
    font-weight: 600;
    margin: 35px 0;
}
	#hokkaido-touhoku, #kantou, #tyubu, #kinki, #tyugoku, #shikoku, #kyusyu {
    width: 100%;
}
}